UNPKG

@nuofe/ndk-lint-tool

Version:
71 lines (46 loc) 1.87 kB
"use strict"; var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault"); Object.defineProperty(exports, "__esModule", { value: true }); exports.default = void 0; var _ndkLogger = _interopRequireDefault(require("@nuofe/ndk-logger")); var _ndkPrettier = _interopRequireDefault(require("@nuofe/ndk-prettier")); var _fsExtra = _interopRequireDefault(require("fs-extra")); var _path = _interopRequireDefault(require("path")); const debug = _ndkLogger.default.debug('ndk-lint-tool:config:prettier-config:init'); var _default = async options => { const { cwd, spinner } = options; const prettierConfigFile = 'prettier.config.js'; const prettierConfigPath = _path.default.resolve(cwd, prettierConfigFile); const rcContent = _ndkPrettier.default.format(`module.exports = ${JSON.stringify(_ndkPrettier.default.getOptions(), undefined, 2)};`); const rcFile = '.prettierrc.js'; const rcPath = _path.default.resolve(cwd, rcFile); if (_fsExtra.default.existsSync(prettierConfigPath)) { _fsExtra.default.removeSync(prettierConfigPath); spinner.succeed(`删除多余的 ${prettierConfigFile} 文件。`); _ndkLogger.default.logEmpty(); spinner.start(); } if (_fsExtra.default.existsSync(rcPath)) { const fileContent = _fsExtra.default.readFileSync(rcPath, 'utf8'); if (fileContent !== rcContent) { _fsExtra.default.writeFileSync(rcPath, rcContent, 'utf8'); delete require.cache[rcPath]; spinner.succeed(`更新 ${rcFile} 文件。`); _ndkLogger.default.logEmpty(); spinner.start(); } else { debug('%s is ok.', rcFile); } } else { _fsExtra.default.writeFileSync(rcPath, rcContent, 'utf8'); spinner.succeed(`新建 ${rcFile} 文件。`); _ndkLogger.default.logEmpty(); spinner.start(); } }; exports.default = _default;