@nx/angular
Version:
60 lines (59 loc) • 2.85 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.getInstalledAngularDevkitVersion = getInstalledAngularDevkitVersion;
exports.getInstalledAngularVersion = getInstalledAngularVersion;
exports.getInstalledAngularMajorVersion = getInstalledAngularMajorVersion;
exports.getInstalledAngularVersionInfo = getInstalledAngularVersionInfo;
exports.getInstalledPackageVersion = getInstalledPackageVersion;
exports.getInstalledPackageVersionInfo = getInstalledPackageVersionInfo;
exports.versions = versions;
const tslib_1 = require("tslib");
const devkit_1 = require("@nx/devkit");
const semver_1 = require("semver");
const backward_compatible_versions_1 = require("../../utils/backward-compatible-versions");
const latestVersions = tslib_1.__importStar(require("../../utils/versions"));
const versions_1 = require("../../utils/versions");
function getInstalledAngularDevkitVersion(tree) {
return (getInstalledPackageVersion(tree, '@angular-devkit/build-angular') ??
getInstalledPackageVersion(tree, '@angular/build'));
}
function getInstalledAngularVersion(tree) {
const pkgJson = (0, devkit_1.readJson)(tree, 'package.json');
const installedAngularVersion = pkgJson.dependencies && pkgJson.dependencies['@angular/core'];
if (!installedAngularVersion ||
installedAngularVersion === 'latest' ||
installedAngularVersion === 'next') {
return (0, semver_1.clean)(versions_1.angularVersion) ?? (0, semver_1.coerce)(versions_1.angularVersion).version;
}
return ((0, semver_1.clean)(installedAngularVersion) ?? (0, semver_1.coerce)(installedAngularVersion).version);
}
function getInstalledAngularMajorVersion(tree) {
return (0, semver_1.major)(getInstalledAngularVersion(tree));
}
function getInstalledAngularVersionInfo(tree) {
const installedVersion = getInstalledAngularVersion(tree);
return {
version: installedVersion,
major: (0, semver_1.major)(installedVersion),
};
}
function getInstalledPackageVersion(tree, pkgName) {
const { dependencies, devDependencies } = (0, devkit_1.readJson)(tree, 'package.json');
const version = dependencies?.[pkgName] ?? devDependencies?.[pkgName];
return version;
}
function getInstalledPackageVersionInfo(tree, pkgName) {
const version = getInstalledPackageVersion(tree, pkgName);
return version ? { major: (0, semver_1.major)((0, semver_1.coerce)(version)), version } : null;
}
function versions(tree) {
const majorAngularVersion = getInstalledAngularMajorVersion(tree);
switch (majorAngularVersion) {
case 18:
return backward_compatible_versions_1.backwardCompatibleVersions.angularV18;
case 19:
return backward_compatible_versions_1.backwardCompatibleVersions.angularV19;
default:
return latestVersions;
}
}