UNPKG

semantic-release-yarn

Version:

semantic-release plugin to publish a npm package with yarn

25 lines (24 loc) 746 B
const modules = {}; async function getDefaultImplementation(name) { switch (name) { case "execa": return (await import("execa")).execa; case "readPackage": return (await import("read-pkg")).readPackage; case "AggregateError": return (await import("aggregate-error")).default; } throw new Error("Unknown module"); } export async function getImplementation(name) { if (!(name in modules)) { await resetImplementation(name); } return modules[name]; } export function setImplementation(name, implementation) { modules[name] = implementation; } export async function resetImplementation(name) { modules[name] = await getDefaultImplementation(name); }