UNPKG

@mlaursen/release-script

Version:

The release script I normally use for packages I publish to npm

20 lines (19 loc) 705 B
import confirm from "@inquirer/confirm"; import input from "@inquirer/input"; import { getLatestTag } from "./getLatestTag.js"; export function createGetTagName(mainPackage) { return async function getTagName() { const latestTag = getLatestTag(); let tagName = mainPackage && /@\d/.test(latestTag) ? // most likely a monorepo latestTag.replace(/.+(@\d)/, `${mainPackage}$1`) : latestTag; while (!tagName || !(await confirm({ message: `Use "${tagName}" for the next tag name?` }))) { tagName = await input({ message: "Enter the tag name", }); } return tagName; }; }