UNPKG

@nx/vite

Version:

The Nx Plugin for building and testing applications using Vite

44 lines (43 loc) 2.03 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.checkDependenciesInstalled = checkDependenciesInstalled; exports.moveToDevDependencies = moveToDevDependencies; exports.createVitestConfig = createVitestConfig; const devkit_1 = require("@nx/devkit"); const versions_1 = require("../../../utils/versions"); const version_utils_1 = require("../../../utils/version-utils"); async function checkDependenciesInstalled(host, schema) { const { vitest } = await (0, version_utils_1.getVitestDependenciesVersionsToInstall)(host); return (0, devkit_1.addDependenciesToPackageJson)(host, {}, { '@nx/vite': versions_1.nxVersion, '@nx/web': versions_1.nxVersion, vite: schema.useViteV5 ? versions_1.viteV5Version : versions_1.viteVersion, vitest: vitest, '@vitest/ui': vitest, jiti: versions_1.jitiVersion, }, undefined, schema.keepExistingVersions); } function moveToDevDependencies(tree) { let wasUpdated = false; (0, devkit_1.updateJson)(tree, 'package.json', (packageJson) => { packageJson.dependencies = packageJson.dependencies || {}; packageJson.devDependencies = packageJson.devDependencies || {}; if (packageJson.dependencies['@nx/vite']) { packageJson.devDependencies['@nx/vite'] = packageJson.dependencies['@nx/vite']; delete packageJson.dependencies['@nx/vite']; wasUpdated = true; } return packageJson; }); return wasUpdated ? () => (0, devkit_1.installPackagesTask)(tree) : () => { }; } function createVitestConfig(tree) { const nxJson = (0, devkit_1.readNxJson)(tree); const productionFileSet = nxJson.namedInputs?.production; if (productionFileSet) { productionFileSet.push('!{projectRoot}/**/?(*.)+(spec|test).[jt]s?(x)?(.snap)', '!{projectRoot}/tsconfig.spec.json'); nxJson.namedInputs.production = Array.from(new Set(productionFileSet)); } (0, devkit_1.updateNxJson)(tree, nxJson); }