UNPKG

ssr

Version:

cli for react/vue2/vue3 ssr deploy on serverless or tradtional web server

29 lines (27 loc) 1.16 kB
import { resolve } from 'path' import axios from 'axios' import { getCwd, logGreen, ssrPackages } from 'ssr-common-utils' export const update = async () => { const cwd = getCwd() const { dependencies, devDependencies } = require(resolve(cwd, './package.json')) const d = Object.assign({}, dependencies, devDependencies) const needCheck = Object.keys(d).filter((item) => ssrPackages.includes(item)) const res: Record<string, { currentVersion: string; lastestVersion: string }> = {} await (await Promise.all(needCheck.map(async (p) => await axios.get(`https://registry.npmjs.org/${p}`)))).forEach((item) => { const currentVersion = require(resolve(cwd, `./node_modules/${item.data.name}/package.json`)).version const lastestVersion = item.data['dist-tags'].latest if (lastestVersion !== currentVersion) { res[item.data.name] = { currentVersion, lastestVersion } } }) if (Object.keys(res).length === 0) { logGreen('All ssr dpendencies is latest!') } else { Object.entries(res).forEach(([key, value]) => { logGreen(`${key} current version is ${value.currentVersion} latest version is ${value.lastestVersion}`) }) } }