UNPKG

@nx/node

Version:

The Node Plugin for Nx contains generators to manage Node applications within an Nx workspace.

128 lines (127 loc) 5.06 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.axiosVersion = exports.fastifyPluginVersion = exports.fastifySensibleVersion = exports.fastifyAutoloadVersion = exports.fastifyVersion = exports.minSupportedFastifyVersion = exports.koaTypingsVersion = exports.koaVersion = exports.minSupportedKoaVersion = exports.expressTypingsVersion = exports.expressVersion = exports.minSupportedExpressVersion = exports.typesNodeVersion = exports.minSupportedNodeTypesVersion = exports.tslibVersion = exports.nxVersion = void 0; exports.nodeTypesVersions = nodeTypesVersions; exports.getInstalledNodeTypesVersion = getInstalledNodeTypesVersion; exports.expressVersions = expressVersions; exports.getInstalledExpressVersion = getInstalledExpressVersion; exports.koaVersions = koaVersions; exports.getInstalledKoaVersion = getInstalledKoaVersion; exports.fastifyVersions = fastifyVersions; exports.getInstalledFastifyVersion = getInstalledFastifyVersion; const internal_1 = require("@nx/devkit/internal"); const semver_1 = require("semver"); const path_1 = require("path"); exports.nxVersion = require((0, path_1.join)('@nx/node', 'package.json')).version; exports.tslibVersion = '^2.3.0'; // `@types/node` — supported window covers the active LTS majors (currently v22 // and v24). Fresh installs default to the active LTS (v22). exports.minSupportedNodeTypesVersion = '22.0.0'; exports.typesNodeVersion = '^22.0.0'; const nodeTypesLatest = { typesNodeVersion: exports.typesNodeVersion }; const nodeTypesVersionMap = { 22: { typesNodeVersion: '^22.0.0' }, 24: { typesNodeVersion: '^24.0.0' }, }; function nodeTypesVersions(tree) { const installed = getInstalledNodeTypesVersion(tree); if (!installed) { return nodeTypesLatest; } const m = (0, semver_1.major)(installed); return nodeTypesVersionMap[m] ?? nodeTypesLatest; } function getInstalledNodeTypesVersion(tree) { if (!tree) { return (0, internal_1.getInstalledPackageVersion)('@types/node'); } return (0, internal_1.getDeclaredPackageVersion)(tree, '@types/node'); } // Express — support window v4 + v5 (v4 in MAINT through 2026-10-01, v5 ACTIVE). exports.minSupportedExpressVersion = '4.0.0'; exports.expressVersion = '^5.1.0'; exports.expressTypingsVersion = '^5.0.0'; const expressLatest = { expressVersion: exports.expressVersion, expressTypingsVersion: exports.expressTypingsVersion, }; const expressVersionMap = { 4: { expressVersion: '^4.21.2', expressTypingsVersion: '^4.17.21', }, }; function expressVersions(tree) { const installed = getInstalledExpressVersion(tree); if (!installed) { return expressLatest; } const m = (0, semver_1.major)(installed); return expressVersionMap[m] ?? expressLatest; } function getInstalledExpressVersion(tree) { if (!tree) { return (0, internal_1.getInstalledPackageVersion)('express'); } return (0, internal_1.getDeclaredPackageVersion)(tree, 'express'); } // Koa — no upstream LTS policy; support window v2 + v3 (Rule 2: N & N-1). exports.minSupportedKoaVersion = '2.0.0'; exports.koaVersion = '^3.1.2'; exports.koaTypingsVersion = '^3.0.0'; const koaLatest = { koaVersion: exports.koaVersion, koaTypingsVersion: exports.koaTypingsVersion }; const koaVersionMap = { 2: { koaVersion: '^2.14.1', koaTypingsVersion: '^2.13.5', }, }; function koaVersions(tree) { const installed = getInstalledKoaVersion(tree); if (!installed) { return koaLatest; } const m = (0, semver_1.major)(installed); return koaVersionMap[m] ?? koaLatest; } function getInstalledKoaVersion(tree) { if (!tree) { return (0, internal_1.getInstalledPackageVersion)('koa'); } return (0, internal_1.getDeclaredPackageVersion)(tree, 'koa'); } // Fastify — upstream "last 2 majors" policy. Support window v4 + v5. exports.minSupportedFastifyVersion = '4.0.0'; exports.fastifyVersion = '~5.2.1'; exports.fastifyAutoloadVersion = '~6.0.3'; exports.fastifySensibleVersion = '~6.0.2'; exports.fastifyPluginVersion = '~5.0.1'; const fastifyLatest = { fastifyVersion: exports.fastifyVersion, fastifyAutoloadVersion: exports.fastifyAutoloadVersion, fastifySensibleVersion: exports.fastifySensibleVersion, fastifyPluginVersion: exports.fastifyPluginVersion, }; const fastifyVersionMap = { 4: { fastifyVersion: '~4.28.1', fastifyAutoloadVersion: '~5.10.0', fastifySensibleVersion: '~5.6.0', fastifyPluginVersion: '~4.5.1', }, }; function fastifyVersions(tree) { const installed = getInstalledFastifyVersion(tree); if (!installed) { return fastifyLatest; } const m = (0, semver_1.major)(installed); return fastifyVersionMap[m] ?? fastifyLatest; } function getInstalledFastifyVersion(tree) { if (!tree) { return (0, internal_1.getInstalledPackageVersion)('fastify'); } return (0, internal_1.getDeclaredPackageVersion)(tree, 'fastify'); } exports.axiosVersion = '^1.6.0';