@nuofe/ndk-publish-tool
Version:
Publish tool for Nuo FE.
68 lines (47 loc) • 1.81 kB
JavaScript
;
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.default = void 0;
var _ndkCommitTool = _interopRequireDefault(require("@nuofe/ndk-commit-tool"));
var _ndkLogger = _interopRequireDefault(require("@nuofe/ndk-logger"));
var _ndkPackage = _interopRequireDefault(require("@nuofe/ndk-package"));
var _ndkRuntimeEnv = _interopRequireDefault(require("@nuofe/ndk-runtime-env"));
var _npm = _interopRequireDefault(require("../npm"));
var _version = _interopRequireDefault(require("../version"));
const debug = _ndkLogger.default.debug('ndk-publish-tool:commands:publish');
var _default = async (options, registry = 'https://registry.npmjs.org/') => {
const packageOptions = await _ndkPackage.default.initOptions(options, true);
const {
package: pkg,
spinner
} = packageOptions;
const {
name = ''
} = pkg;
if (!name) {
spinner.stop();
_ndkLogger.default.logWarning('[i] 请为包起个名字。');
_ndkLogger.default.logEmpty();
process.exit();
}
debug('ensure status.');
if (await _ndkCommitTool.default.hasDiff(packageOptions)) {
spinner.stop();
_ndkLogger.default.logWarning('[i] 检测到未提交的变更。');
_ndkLogger.default.logEmpty();
spinner.start();
debug('commit.');
await _ndkCommitTool.default.commit(packageOptions);
}
debug('ensure npm registry.');
await _ndkRuntimeEnv.default.ensureNpmConfig(packageOptions, 'registry', registry);
debug('ensure version.');
await _version.default.ensure(packageOptions);
debug('publish npm.');
await _npm.default.publish(packageOptions);
debug('add tag.');
await _ndkCommitTool.default.tag(packageOptions);
};
exports.default = _default;