UNPKG

@quasar/app-webpack

Version:

Quasar Framework App CLI with Webpack

29 lines (22 loc) 799 B
const { getPackageJson } = require('./get-package-json.js') const urlRangePattern = /^[a-zA-Z]/ /** * @param {{ [key: string]: string }} deps package.json > dependencies * @returns {{ [key: string]: string }} deps with their name mapped to exact versions * * @example * ``` * getFixedDeps({ 'quasar': '^2.0.0', 'whatever': 'https://some.url' }) * // { 'quasar': '2.7.1', 'whatever': 'https://some.url' } * ``` */ module.exports.getFixedDeps = function getFixedDeps (deps, rootDir) { if (!deps) return {} const appDeps = { ...deps } Object.entries(deps).forEach(([ name, versionRange ]) => { if (urlRangePattern.test(versionRange)) return const pkg = getPackageJson(name, rootDir) appDeps[ name ] = pkg !== void 0 ? pkg.version : versionRange }) return appDeps }