UNPKG

design-angular-kit

Version:

Un toolkit Angular conforme alle linee guida di design per i servizi web della PA

49 lines 2.18 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.getPackageVersionFromPackageJson = exports.addPackageToPackageJson = exports.toSemVerObject = void 0; const SEMVER_WITH_PREFIX_REGEX = /^[\^~]?(0|[1-9]\d*)\.(0|[1-9]\d*)\.(0|[1-9]\d*)(?:-((?:0|[1-9A-Za-z-][0-9A-Za-z-]*)(?:\.(?:0|[1-9A-Za-z-][0-9A-Za-z-]*))*))?(?:\+([0-9A-Za-z-]+(?:\.[0-9A-Za-z-]+)*))?$/; function sortObjectByKeys(obj) { return Object.keys(obj) .sort() .reduce((result, key) => { result[key] = obj[key]; return result; }, {}); } /** Get a SemVerObject given a semver string */ function toSemVerObject(versionString) { var _a; const [semVer, major, minor, patch, prerelease, buildmetadata] = (_a = versionString.match(SEMVER_WITH_PREFIX_REGEX)) !== null && _a !== void 0 ? _a : []; return { semVer, major, minor, patch, prerelease, buildmetadata }; } exports.toSemVerObject = toSemVerObject; /** Adds a package to the package.json in the given host tree. */ function addPackageToPackageJson(host, pkg, version) { if (host.exists('package.json')) { const sourceText = host.read('package.json').toString('utf-8'); const json = JSON.parse(sourceText); if (!json.dependencies) { json.dependencies = {}; } if (!json.dependencies[pkg]) { json.dependencies[pkg] = version; json.dependencies = sortObjectByKeys(json.dependencies); } host.overwrite('package.json', JSON.stringify(json, null, 2)); } return host; } exports.addPackageToPackageJson = addPackageToPackageJson; /** Gets the version of the specified package by looking at the package.json in the given tree. */ function getPackageVersionFromPackageJson(tree, name) { if (!tree.exists('package.json')) { return null; } const packageJson = JSON.parse(tree.read('package.json').toString('utf8')); if (packageJson.dependencies && packageJson.dependencies[name]) { return packageJson.dependencies[name]; } return null; } exports.getPackageVersionFromPackageJson = getPackageVersionFromPackageJson; //# sourceMappingURL=utils.js.map