UNPKG

@nuofe/ndk-lint-tool

Version:
74 lines (54 loc) 2.26 kB
"use strict"; var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault"); Object.defineProperty(exports, "__esModule", { value: true }); exports.default = void 0; var _ndkCli = _interopRequireDefault(require("@nuofe/ndk-cli")); var _ndkConfig = _interopRequireDefault(require("@nuofe/ndk-config")); var _ndkLogger = _interopRequireDefault(require("@nuofe/ndk-logger")); var _ndkPackage = _interopRequireDefault(require("@nuofe/ndk-package")); var _init = _interopRequireDefault(require("../init")); const debug = _ndkLogger.default.debug('ndk-lint-tool:commands:lint'); var _default = async options => { const { args, cwd, spinner } = options; const packageOptions = await _ndkPackage.default.initOptions(options, true); const configOptions = await _ndkConfig.default.initOptions(options); const { devDependencies = {} } = packageOptions.package; const { type } = configOptions.config; let status = 0; debug('init.'); await (0, _init.default)({ ...packageOptions, ...configOptions }, true); spinner.stop(); debug('lint.'); status = (await _ndkCli.default.spawn('yarn', ['lint', ...args], { cwd, stdio: 'inherit' })).status; debug('status: %s', status); if (status !== 0) { _ndkLogger.default.logEmpty(); _ndkLogger.default.logError('[i] 检测未通过,请根据提示修复代码!'); if (!devDependencies['@nuofe/ndk-builder'] && ['app', 'web'].includes(type)) { _ndkLogger.default.logEmpty(); _ndkLogger.default.logWarning(['[i] 如果报 import/no-unresolved 错误,可尝试以下方式解决。', '', '1、安装依赖包:', 'yarn add eslint-import-resolver-webpack --dev', '', '2、在 .eslintrc.js 文件中增加 webpack config 配置:', 'module.exports = {', ' // ...', ' settings: {', " 'import/resolver': {", ' node: {},', ' webpack: {', " config: './path/of/webpack.config.js',", ' },', ' },', ' },', ' // ...', '};'].join('\n')); } _ndkLogger.default.logEmpty(); process.exit(1); } _ndkLogger.default.logEmpty(); spinner.succeed('检测通过,请继续保持。'); _ndkLogger.default.logEmpty(); spinner.start(); }; exports.default = _default;