UNPKG

libyear

Version:

A simple measure of software dependency freshness

26 lines (25 loc) 833 B
import { pick } from "lodash-es"; import { execute } from "./execute.js"; export const getReleaseTime = async (packageManager, packageName) => { const cmd = { berry: `yarn npm info ${packageName} --fields time,versions --json`, npm: `npm view ${packageName} time versions --json`, pnpm: `npm view ${packageName} time versions --json`, yarn: `yarn info ${packageName} --json`, }[packageManager]; const stdout = await execute(cmd); if (!stdout) { return {}; } const json = JSON.parse(stdout); switch (packageManager) { case "yarn": { const { time, versions } = json.data; return pick(time, versions); } default: { const { time, versions } = json; return pick(time, versions); } } };