UNPKG

unbag

Version:

一个专门用来开发npm工具的包

100 lines (99 loc) 2.44 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.releaseDefaultConfig = exports.release = exports.ReleaseCommand = void 0; var _bump = require("./bump.cjs"); var _changelog = require("./changelog.cjs"); var _commit = require("./commit.cjs"); var _tag = require("./tag.cjs"); var _branch = require("./branch.cjs"); var _command = require("./../../core/command.cjs"); var _common = require("./../../utils/common.cjs"); var _index = require("./../../utils/message/index.cjs"); var _log = require("./../../utils/log.cjs"); var _utils = require("./utils.cjs"); var _push = require("./push.cjs"); const releaseDefaultConfig = exports.releaseDefaultConfig = { preset: { path: (0, _utils.useDefaultReleasePresetPath)(), params: {} }, branch: _branch.ReleaseBranchConfigDefault, bump: _bump.ReleaseBumpConfigDefault, changelog: _changelog.ReleaseChangelogConfigDefault, commit: _commit.ReleaseCommitConfigDefault, tag: _tag.ReleaseTagConfigDefault, push: _push.ReleasePushConfigDefault }; const release = async params => { const { finalUserConfig } = params; const log = (0, _log.useLog)({ finalUserConfig }); const message = (0, _index.useMessage)({ locale: finalUserConfig.locale }); const { release: { dry, scope } } = finalUserConfig; if (dry) { log.warn(message.release.dry.tip()); } if (scope) { const { check, name } = scope; if (!check) { throw new Error(message.release.scope.undefinedCheck()); } const validName = await (0, _common.unSafeFunctionWrapper)(check)({ name, finalUserConfig }); if (!validName) { throw new Error(message.release.scope.unValidScopeName()); } } await (0, _branch.branch)({ finalUserConfig }); const bumpRes = await (0, _bump.bump)({ finalUserConfig }); const changelogRes = await (0, _changelog.changelog)({ finalUserConfig, bumpRes }); await (0, _commit.commit)({ finalUserConfig, bumpRes, changelogRes }); await (0, _tag.tag)({ finalUserConfig, bumpRes, changelogRes }); await (0, _push.push)({ finalUserConfig }); }; exports.release = release; class ReleaseCommand extends _command.Command { async task() { const { finalUserConfig } = this; await release({ finalUserConfig }); } } exports.ReleaseCommand = ReleaseCommand;