@nx/vite 0.0.0-pr-30457-0ed97e4 → 0.0.0-pr-30516-4c8bfff

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/migrations.json CHANGED
@@ -52,19 +52,6 @@
52
52
  }
53
53
  },
54
54
  "packageJsonUpdates": {
55
- "20.7.1": {
56
- "version": "20.7.1-beta.0",
57
- "packages": {
58
- "@analogjs/vite-plugin-angular": {
59
- "version": "~1.14.1",
60
- "alwaysAddToPackageJson": false
61
- },
62
- "@analogjs/vitest-angular": {
63
- "version": "~1.14.1",
64
- "alwaysAddToPackageJson": false
65
- }
66
- }
67
- },
68
55
  "20.5.0": {
69
56
  "version": "20.5.0-beta.3",
70
57
  "packages": {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@nx/vite",
3
- "version": "0.0.0-pr-30457-0ed97e4",
3
+ "version": "0.0.0-pr-30516-4c8bfff",
4
4
  "private": false,
5
5
  "description": "The Nx Plugin for building and testing applications using Vite",
6
6
  "repository": {
@@ -30,11 +30,11 @@
30
30
  "migrations": "./migrations.json"
31
31
  },
32
32
  "dependencies": {
33
- "@nx/devkit": "0.0.0-pr-30457-0ed97e4",
33
+ "@nx/devkit": "0.0.0-pr-30516-4c8bfff",
34
34
  "@phenomnomnominal/tsquery": "~5.0.1",
35
35
  "@swc/helpers": "~0.5.0",
36
36
  "enquirer": "~2.3.6",
37
- "@nx/js": "0.0.0-pr-30457-0ed97e4",
37
+ "@nx/js": "0.0.0-pr-30516-4c8bfff",
38
38
  "tsconfig-paths": "^4.1.2",
39
39
  "minimatch": "9.0.3",
40
40
  "semver": "^7.6.3"
@@ -33,7 +33,7 @@ function nxCopyAssetsPlugin(_assets) {
33
33
  handler = new _copyassetshandler.CopyAssetsHandler({
34
34
  rootDir: _devkit.workspaceRoot,
35
35
  projectDir: config.root,
36
- outputDir: config.build.outDir.startsWith(config.root) ? config.build.outDir : (0, _nodepath.join)(config.root, config.build.outDir),
36
+ outputDir: (0, _nodepath.join)(config.root, config.build.outDir),
37
37
  assets
38
38
  });
39
39
  if (this.meta.watchMode && (0, _devkit.isDaemonEnabled)()) {
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../packages/vite/plugins/nx-copy-assets.plugin.ts"],"sourcesContent":["import { join, relative } from 'node:path';\nimport type { Plugin, ResolvedConfig } from 'vite';\nimport { isDaemonEnabled, joinPathFragments, workspaceRoot } from '@nx/devkit';\nimport { AssetGlob } from '@nx/js/src/utils/assets/assets';\nimport { CopyAssetsHandler } from '@nx/js/src/utils/assets/copy-assets-handler';\n\nexport function nxCopyAssetsPlugin(_assets: (string | AssetGlob)[]): Plugin {\n let config: ResolvedConfig;\n let handler: CopyAssetsHandler;\n let dispose: () => void;\n\n if (global.NX_GRAPH_CREATION) return;\n\n return {\n name: 'nx-copy-assets-plugin',\n configResolved(_config) {\n config = _config;\n },\n async buildStart() {\n const relativeProjectRoot = relative(workspaceRoot, config.root);\n const assets = _assets.map((a) => {\n if (typeof a === 'string') {\n return joinPathFragments(relativeProjectRoot, a);\n } else {\n return {\n ...a,\n input: joinPathFragments(relativeProjectRoot, a.input),\n };\n }\n });\n handler = new CopyAssetsHandler({\n rootDir: workspaceRoot,\n projectDir: config.root,\n outputDir: config.build.outDir.startsWith(config.root)\n ? config.build.outDir\n : join(config.root, config.build.outDir),\n assets,\n });\n if (this.meta.watchMode && isDaemonEnabled()) {\n dispose = await handler.watchAndProcessOnAssetChange();\n }\n },\n async writeBundle() {\n await handler.processAllAssetsOnce();\n },\n async closeWatcher() {\n dispose == null ? void 0 : dispose();\n },\n };\n}\n"],"names":["nxCopyAssetsPlugin","_assets","config","handler","dispose","global","NX_GRAPH_CREATION","name","configResolved","_config","buildStart","relativeProjectRoot","relative","workspaceRoot","root","assets","map","a","joinPathFragments","input","CopyAssetsHandler","rootDir","projectDir","outputDir","build","outDir","startsWith","join","meta","watchMode","isDaemonEnabled","watchAndProcessOnAssetChange","writeBundle","processAllAssetsOnce","closeWatcher"],"rangeMappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","mappings":";+BAMgBA;;;eAAAA;;;;0BANe;wBAEmC;mCAEhC;AAE3B,SAASA,mBAAmBC,OAA+B;IAChE,IAAIC;IACJ,IAAIC;IACJ,IAAIC;IAEJ,IAAIC,OAAOC,iBAAiB,EAAE;IAE9B,OAAO;QACLC,MAAM;QACNC,gBAAeC,OAAO;YACpBP,SAASO;QACX;QACA,MAAMC;YACJ,MAAMC,sBAAsBC,IAAAA,kBAAQ,EAACC,qBAAa,EAAEX,OAAOY,IAAI;YAC/D,MAAMC,SAASd,QAAQe,GAAG,CAAC,CAACC;gBAC1B,IAAI,OAAOA,MAAM,UAAU;oBACzB,OAAOC,IAAAA,yBAAiB,EAACP,qBAAqBM;gBAChD,OAAO;oBACL,OAAO,eACFA;wBACHE,OAAOD,IAAAA,yBAAiB,EAACP,qBAAqBM,EAAEE,KAAK;;gBAEzD;YACF;YACAhB,UAAU,IAAIiB,oCAAiB,CAAC;gBAC9BC,SAASR,qBAAa;gBACtBS,YAAYpB,OAAOY,IAAI;gBACvBS,WAAWrB,OAAOsB,KAAK,CAACC,MAAM,CAACC,UAAU,CAACxB,OAAOY,IAAI,IACjDZ,OAAOsB,KAAK,CAACC,MAAM,GACnBE,IAAAA,cAAI,EAACzB,OAAOY,IAAI,EAAEZ,OAAOsB,KAAK,CAACC,MAAM;gBACzCV;YACF;YACA,IAAI,IAAI,CAACa,IAAI,CAACC,SAAS,IAAIC,IAAAA,uBAAe,KAAI;gBAC5C1B,UAAU,MAAMD,QAAQ4B,4BAA4B;YACtD;QACF;QACA,MAAMC;YACJ,MAAM7B,QAAQ8B,oBAAoB;QACpC;QACA,MAAMC;YACJ9B,WAAW,OAAO,KAAK,IAAIA;QAC7B;IACF;AACF"}
1
+ {"version":3,"sources":["../../../../packages/vite/plugins/nx-copy-assets.plugin.ts"],"sourcesContent":["import { join, relative } from 'node:path';\nimport type { Plugin, ResolvedConfig } from 'vite';\nimport { isDaemonEnabled, joinPathFragments, workspaceRoot } from '@nx/devkit';\nimport { AssetGlob } from '@nx/js/src/utils/assets/assets';\nimport { CopyAssetsHandler } from '@nx/js/src/utils/assets/copy-assets-handler';\n\nexport function nxCopyAssetsPlugin(_assets: (string | AssetGlob)[]): Plugin {\n let config: ResolvedConfig;\n let handler: CopyAssetsHandler;\n let dispose: () => void;\n\n if (global.NX_GRAPH_CREATION) return;\n\n return {\n name: 'nx-copy-assets-plugin',\n configResolved(_config) {\n config = _config;\n },\n async buildStart() {\n const relativeProjectRoot = relative(workspaceRoot, config.root);\n const assets = _assets.map((a) => {\n if (typeof a === 'string') {\n return joinPathFragments(relativeProjectRoot, a);\n } else {\n return {\n ...a,\n input: joinPathFragments(relativeProjectRoot, a.input),\n };\n }\n });\n handler = new CopyAssetsHandler({\n rootDir: workspaceRoot,\n projectDir: config.root,\n outputDir: join(config.root, config.build.outDir),\n assets,\n });\n if (this.meta.watchMode && isDaemonEnabled()) {\n dispose = await handler.watchAndProcessOnAssetChange();\n }\n },\n async writeBundle() {\n await handler.processAllAssetsOnce();\n },\n async closeWatcher() {\n dispose == null ? void 0 : dispose();\n },\n };\n}\n"],"names":["nxCopyAssetsPlugin","_assets","config","handler","dispose","global","NX_GRAPH_CREATION","name","configResolved","_config","buildStart","relativeProjectRoot","relative","workspaceRoot","root","assets","map","a","joinPathFragments","input","CopyAssetsHandler","rootDir","projectDir","outputDir","join","build","outDir","meta","watchMode","isDaemonEnabled","watchAndProcessOnAssetChange","writeBundle","processAllAssetsOnce","closeWatcher"],"rangeMappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","mappings":";+BAMgBA;;;eAAAA;;;;0BANe;wBAEmC;mCAEhC;AAE3B,SAASA,mBAAmBC,OAA+B;IAChE,IAAIC;IACJ,IAAIC;IACJ,IAAIC;IAEJ,IAAIC,OAAOC,iBAAiB,EAAE;IAE9B,OAAO;QACLC,MAAM;QACNC,gBAAeC,OAAO;YACpBP,SAASO;QACX;QACA,MAAMC;YACJ,MAAMC,sBAAsBC,IAAAA,kBAAQ,EAACC,qBAAa,EAAEX,OAAOY,IAAI;YAC/D,MAAMC,SAASd,QAAQe,GAAG,CAAC,CAACC;gBAC1B,IAAI,OAAOA,MAAM,UAAU;oBACzB,OAAOC,IAAAA,yBAAiB,EAACP,qBAAqBM;gBAChD,OAAO;oBACL,OAAO,eACFA;wBACHE,OAAOD,IAAAA,yBAAiB,EAACP,qBAAqBM,EAAEE,KAAK;;gBAEzD;YACF;YACAhB,UAAU,IAAIiB,oCAAiB,CAAC;gBAC9BC,SAASR,qBAAa;gBACtBS,YAAYpB,OAAOY,IAAI;gBACvBS,WAAWC,IAAAA,cAAI,EAACtB,OAAOY,IAAI,EAAEZ,OAAOuB,KAAK,CAACC,MAAM;gBAChDX;YACF;YACA,IAAI,IAAI,CAACY,IAAI,CAACC,SAAS,IAAIC,IAAAA,uBAAe,KAAI;gBAC5CzB,UAAU,MAAMD,QAAQ2B,4BAA4B;YACtD;QACF;QACA,MAAMC;YACJ,MAAM5B,QAAQ6B,oBAAoB;QACpC;QACA,MAAMC;YACJ7B,WAAW,OAAO,KAAK,IAAIA;QAC7B;IACF;AACF"}
@@ -138,10 +138,7 @@ getTestBed().initTestEnvironment(
138
138
  (_ = (_nxJson_targetDefaults = nxJson.targetDefaults)[_testTarget = testTarget]) != null ? _ : _nxJson_targetDefaults[_testTarget] = {};
139
139
  var _dependsOn;
140
140
  (_dependsOn = (_nxJson_targetDefaults_testTarget = nxJson.targetDefaults[testTarget]).dependsOn) != null ? _dependsOn : _nxJson_targetDefaults_testTarget.dependsOn = [];
141
- nxJson.targetDefaults[testTarget].dependsOn = Array.from(new Set([
142
- ...nxJson.targetDefaults[testTarget].dependsOn,
143
- '^build'
144
- ]));
141
+ nxJson.targetDefaults[testTarget].dependsOn.push('^build');
145
142
  (0, _devkit.updateNxJson)(tree, nxJson);
146
143
  }
147
144
  const devDependencies = await getCoverageProviderDependency(tree, schema.coverageProvider);
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../../../packages/vite/src/generators/vitest/vitest-generator.ts"],"sourcesContent":["import {\n addDependenciesToPackageJson,\n formatFiles,\n generateFiles,\n GeneratorCallback,\n joinPathFragments,\n logger,\n offsetFromRoot,\n ProjectType,\n readJson,\n readNxJson,\n readProjectConfiguration,\n runTasksInSerial,\n Tree,\n updateJson,\n updateNxJson,\n} from '@nx/devkit';\nimport { initGenerator as jsInitGenerator } from '@nx/js';\nimport {\n getProjectType,\n isUsingTsSolutionSetup,\n} from '@nx/js/src/utils/typescript/ts-solution-setup';\nimport { typesNodeVersion } from '@nx/js/src/utils/versions';\nimport { join } from 'path';\nimport { ensureDependencies } from '../../utils/ensure-dependencies';\nimport {\n addOrChangeTestTarget,\n createOrEditViteConfig,\n} from '../../utils/generator-utils';\nimport initGenerator from '../init/init';\nimport { VitestGeneratorSchema } from './schema';\nimport { detectUiFramework } from '../../utils/detect-ui-framework';\nimport { getVitestDependenciesVersionsToInstall } from '../../utils/version-utils';\nimport { coerce, major } from 'semver';\n\n/**\n * @param hasPlugin some frameworks (e.g. Nuxt) provide their own plugin. Their generators handle the plugin detection.\n */\nexport function vitestGenerator(\n tree: Tree,\n schema: VitestGeneratorSchema,\n hasPlugin = false\n) {\n return vitestGeneratorInternal(\n tree,\n { addPlugin: false, ...schema },\n hasPlugin\n );\n}\n\nexport async function vitestGeneratorInternal(\n tree: Tree,\n schema: VitestGeneratorSchema,\n hasPlugin = false\n) {\n // Setting default to jsdom since it is the most common use case (React, Web).\n // The @nx/js:lib generator specifically sets this to node to be more generic.\n schema.testEnvironment ??= 'jsdom';\n\n const tasks: GeneratorCallback[] = [];\n\n const { root, projectType: _projectType } = readProjectConfiguration(\n tree,\n schema.project\n );\n const projectType = schema.projectType ?? _projectType;\n const uiFramework =\n schema.uiFramework ?? (await detectUiFramework(schema.project));\n const isRootProject = root === '.';\n\n tasks.push(await jsInitGenerator(tree, { ...schema, skipFormat: true }));\n\n const pkgJson = readJson(tree, 'package.json');\n const useVite5 =\n major(coerce(pkgJson.devDependencies['vite']) ?? '6.0.0') === 5;\n const initTask = await initGenerator(tree, {\n projectRoot: root,\n skipFormat: true,\n addPlugin: schema.addPlugin,\n useViteV5: useVite5,\n });\n tasks.push(initTask);\n tasks.push(ensureDependencies(tree, { ...schema, uiFramework }));\n\n addOrChangeTestTarget(tree, schema, hasPlugin);\n\n if (!schema.skipViteConfig) {\n if (uiFramework === 'angular') {\n const relativeTestSetupPath = joinPathFragments('src', 'test-setup.ts');\n\n const setupFile = joinPathFragments(root, relativeTestSetupPath);\n if (!tree.exists(setupFile)) {\n tree.write(\n setupFile,\n `import '@analogjs/vitest-angular/setup-zone';\n\nimport {\n BrowserDynamicTestingModule,\n platformBrowserDynamicTesting,\n} from '@angular/platform-browser-dynamic/testing';\nimport { getTestBed } from '@angular/core/testing';\n\ngetTestBed().initTestEnvironment(\n BrowserDynamicTestingModule,\n platformBrowserDynamicTesting()\n);\n`\n );\n }\n\n createOrEditViteConfig(\n tree,\n {\n project: schema.project,\n includeLib: false,\n includeVitest: true,\n inSourceTests: false,\n imports: [`import angular from '@analogjs/vite-plugin-angular'`],\n plugins: ['angular()'],\n setupFile: relativeTestSetupPath,\n useEsmExtension: true,\n },\n true\n );\n } else if (uiFramework === 'react') {\n createOrEditViteConfig(\n tree,\n {\n project: schema.project,\n includeLib: getProjectType(tree, root, projectType) === 'library',\n includeVitest: true,\n inSourceTests: schema.inSourceTests,\n rollupOptionsExternal: [\n \"'react'\",\n \"'react-dom'\",\n \"'react/jsx-runtime'\",\n ],\n imports: [\n schema.compiler === 'swc'\n ? `import react from '@vitejs/plugin-react-swc'`\n : `import react from '@vitejs/plugin-react'`,\n ],\n plugins: ['react()'],\n coverageProvider: schema.coverageProvider,\n },\n true\n );\n } else {\n createOrEditViteConfig(\n tree,\n {\n ...schema,\n includeVitest: true,\n includeLib: getProjectType(tree, root, projectType) === 'library',\n },\n true\n );\n }\n }\n\n const isTsSolutionSetup = isUsingTsSolutionSetup(tree);\n\n createFiles(tree, schema, root, isTsSolutionSetup);\n updateTsConfig(tree, schema, root, projectType);\n\n if (isTsSolutionSetup) {\n // in the TS solution setup, the test target depends on the build outputs\n // so we need to setup the task pipeline accordingly\n const nxJson = readNxJson(tree);\n const testTarget = schema.testTarget ?? 'test';\n nxJson.targetDefaults ??= {};\n nxJson.targetDefaults[testTarget] ??= {};\n nxJson.targetDefaults[testTarget].dependsOn ??= [];\n nxJson.targetDefaults[testTarget].dependsOn = Array.from(\n new Set([...nxJson.targetDefaults[testTarget].dependsOn, '^build'])\n );\n updateNxJson(tree, nxJson);\n }\n\n const devDependencies = await getCoverageProviderDependency(\n tree,\n schema.coverageProvider\n );\n devDependencies['@types/node'] = typesNodeVersion;\n\n const installDependenciesTask = addDependenciesToPackageJson(\n tree,\n {},\n devDependencies\n );\n tasks.push(installDependenciesTask);\n\n // Setup workspace config file (https://vitest.dev/guide/workspace.html)\n if (\n !isRootProject &&\n !tree.exists(`vitest.workspace.ts`) &&\n !tree.exists(`vitest.workspace.js`) &&\n !tree.exists(`vitest.workspace.json`) &&\n !tree.exists(`vitest.projects.ts`) &&\n !tree.exists(`vitest.projects.js`) &&\n !tree.exists(`vitest.projects.json`)\n ) {\n tree.write(\n 'vitest.workspace.ts',\n `export default ['**/vite.config.{mjs,js,ts,mts}', '**/vitest.config.{mjs,js,ts,mts}'];`\n );\n }\n\n if (!schema.skipFormat) {\n await formatFiles(tree);\n }\n\n return runTasksInSerial(...tasks);\n}\n\nfunction updateTsConfig(\n tree: Tree,\n options: VitestGeneratorSchema,\n projectRoot: string,\n projectType: ProjectType\n) {\n const setupFile = tryFindSetupFile(tree, projectRoot);\n\n if (tree.exists(joinPathFragments(projectRoot, 'tsconfig.spec.json'))) {\n updateJson(\n tree,\n joinPathFragments(projectRoot, 'tsconfig.spec.json'),\n (json) => {\n if (!json.compilerOptions?.types?.includes('vitest')) {\n if (json.compilerOptions?.types) {\n json.compilerOptions.types.push('vitest');\n } else {\n json.compilerOptions ??= {};\n json.compilerOptions.types = ['vitest'];\n }\n }\n\n if (setupFile) {\n json.files = [...(json.files ?? []), setupFile];\n }\n\n return json;\n }\n );\n\n updateJson(\n tree,\n joinPathFragments(projectRoot, 'tsconfig.json'),\n (json) => {\n if (\n json.references &&\n !json.references.some((r) => r.path === './tsconfig.spec.json')\n ) {\n json.references.push({\n path: './tsconfig.spec.json',\n });\n }\n return json;\n }\n );\n } else {\n updateJson(\n tree,\n joinPathFragments(projectRoot, 'tsconfig.json'),\n (json) => {\n if (!json.compilerOptions?.types?.includes('vitest')) {\n if (json.compilerOptions?.types) {\n json.compilerOptions.types.push('vitest');\n } else {\n json.compilerOptions ??= {};\n json.compilerOptions.types = ['vitest'];\n }\n }\n return json;\n }\n );\n }\n\n let runtimeTsconfigPath = joinPathFragments(\n projectRoot,\n getProjectType(tree, projectRoot, projectType) === 'application'\n ? 'tsconfig.app.json'\n : 'tsconfig.lib.json'\n );\n if (options.runtimeTsconfigFileName) {\n runtimeTsconfigPath = joinPathFragments(\n projectRoot,\n options.runtimeTsconfigFileName\n );\n if (!tree.exists(runtimeTsconfigPath)) {\n throw new Error(\n `Cannot find the specified runtimeTsConfigFileName (\"${options.runtimeTsconfigFileName}\") at the project root \"${projectRoot}\".`\n );\n }\n }\n\n if (tree.exists(runtimeTsconfigPath)) {\n updateJson(tree, runtimeTsconfigPath, (json) => {\n if (options.inSourceTests) {\n (json.compilerOptions.types ??= []).push('vitest/importMeta');\n } else {\n const uniqueExclude = new Set([\n ...(json.exclude || []),\n 'vite.config.ts',\n 'vite.config.mts',\n 'vitest.config.ts',\n 'vitest.config.mts',\n 'src/**/*.test.ts',\n 'src/**/*.spec.ts',\n 'src/**/*.test.tsx',\n 'src/**/*.spec.tsx',\n 'src/**/*.test.js',\n 'src/**/*.spec.js',\n 'src/**/*.test.jsx',\n 'src/**/*.spec.jsx',\n ]);\n json.exclude = [...uniqueExclude];\n }\n\n if (setupFile) {\n json.exclude = [...(json.exclude ?? []), setupFile];\n }\n\n return json;\n });\n } else {\n logger.warn(\n `Couldn't find a runtime tsconfig file at ${runtimeTsconfigPath} to exclude the test files from. ` +\n `If you're using a different filename for your runtime tsconfig, please provide it with the '--runtimeTsconfigFileName' flag.`\n );\n }\n}\n\nfunction createFiles(\n tree: Tree,\n options: VitestGeneratorSchema,\n projectRoot: string,\n isTsSolutionSetup: boolean\n) {\n const rootOffset = offsetFromRoot(projectRoot);\n\n generateFiles(tree, join(__dirname, 'files'), projectRoot, {\n tmpl: '',\n ...options,\n projectRoot,\n extendedConfig: isTsSolutionSetup\n ? `${rootOffset}tsconfig.base.json`\n : './tsconfig.json',\n outDir: isTsSolutionSetup\n ? `./out-tsc/vitest`\n : `${rootOffset}dist/out-tsc`,\n });\n}\n\nasync function getCoverageProviderDependency(\n tree: Tree,\n coverageProvider: VitestGeneratorSchema['coverageProvider']\n): Promise<Record<string, string>> {\n const { vitestCoverageV8, vitestCoverageIstanbul } =\n await getVitestDependenciesVersionsToInstall(tree);\n switch (coverageProvider) {\n case 'v8':\n return {\n '@vitest/coverage-v8': vitestCoverageV8,\n };\n case 'istanbul':\n return {\n '@vitest/coverage-istanbul': vitestCoverageIstanbul,\n };\n default:\n return {\n '@vitest/coverage-v8': vitestCoverageV8,\n };\n }\n}\n\nfunction tryFindSetupFile(tree: Tree, projectRoot: string) {\n const setupFile = joinPathFragments('src', 'test-setup.ts');\n if (tree.exists(joinPathFragments(projectRoot, setupFile))) {\n return setupFile;\n }\n}\n\nexport default vitestGenerator;\n"],"names":["vitestGenerator","vitestGeneratorInternal","tree","schema","hasPlugin","addPlugin","testEnvironment","tasks","root","projectType","_projectType","readProjectConfiguration","project","uiFramework","detectUiFramework","isRootProject","push","jsInitGenerator","skipFormat","pkgJson","readJson","coerce","useVite5","major","devDependencies","initTask","initGenerator","projectRoot","useViteV5","ensureDependencies","addOrChangeTestTarget","skipViteConfig","relativeTestSetupPath","joinPathFragments","setupFile","exists","write","createOrEditViteConfig","includeLib","includeVitest","inSourceTests","imports","plugins","useEsmExtension","getProjectType","rollupOptionsExternal","compiler","coverageProvider","isTsSolutionSetup","isUsingTsSolutionSetup","createFiles","updateTsConfig","nxJson","testTarget","readNxJson","targetDefaults","dependsOn","Array","from","Set","updateNxJson","getCoverageProviderDependency","typesNodeVersion","installDependenciesTask","addDependenciesToPackageJson","formatFiles","runTasksInSerial","options","tryFindSetupFile","updateJson","json","compilerOptions","types","includes","files","references","some","r","path","runtimeTsconfigPath","runtimeTsconfigFileName","Error","uniqueExclude","exclude","logger","warn","rootOffset","offsetFromRoot","generateFiles","join","__dirname","tmpl","extendedConfig","outDir","vitestCoverageV8","vitestCoverageIstanbul","getVitestDependenciesVersionsToInstall"],"rangeMappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","mappings":"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"}
1
+ {"version":3,"sources":["../../../../../../packages/vite/src/generators/vitest/vitest-generator.ts"],"sourcesContent":["import {\n addDependenciesToPackageJson,\n formatFiles,\n generateFiles,\n GeneratorCallback,\n joinPathFragments,\n logger,\n offsetFromRoot,\n ProjectType,\n readJson,\n readNxJson,\n readProjectConfiguration,\n runTasksInSerial,\n Tree,\n updateJson,\n updateNxJson,\n} from '@nx/devkit';\nimport { initGenerator as jsInitGenerator } from '@nx/js';\nimport {\n getProjectType,\n isUsingTsSolutionSetup,\n} from '@nx/js/src/utils/typescript/ts-solution-setup';\nimport { typesNodeVersion } from '@nx/js/src/utils/versions';\nimport { join } from 'path';\nimport { ensureDependencies } from '../../utils/ensure-dependencies';\nimport {\n addOrChangeTestTarget,\n createOrEditViteConfig,\n} from '../../utils/generator-utils';\nimport initGenerator from '../init/init';\nimport { VitestGeneratorSchema } from './schema';\nimport { detectUiFramework } from '../../utils/detect-ui-framework';\nimport { getVitestDependenciesVersionsToInstall } from '../../utils/version-utils';\nimport { coerce, major } from 'semver';\n\n/**\n * @param hasPlugin some frameworks (e.g. Nuxt) provide their own plugin. Their generators handle the plugin detection.\n */\nexport function vitestGenerator(\n tree: Tree,\n schema: VitestGeneratorSchema,\n hasPlugin = false\n) {\n return vitestGeneratorInternal(\n tree,\n { addPlugin: false, ...schema },\n hasPlugin\n );\n}\n\nexport async function vitestGeneratorInternal(\n tree: Tree,\n schema: VitestGeneratorSchema,\n hasPlugin = false\n) {\n // Setting default to jsdom since it is the most common use case (React, Web).\n // The @nx/js:lib generator specifically sets this to node to be more generic.\n schema.testEnvironment ??= 'jsdom';\n\n const tasks: GeneratorCallback[] = [];\n\n const { root, projectType: _projectType } = readProjectConfiguration(\n tree,\n schema.project\n );\n const projectType = schema.projectType ?? _projectType;\n const uiFramework =\n schema.uiFramework ?? (await detectUiFramework(schema.project));\n const isRootProject = root === '.';\n\n tasks.push(await jsInitGenerator(tree, { ...schema, skipFormat: true }));\n\n const pkgJson = readJson(tree, 'package.json');\n const useVite5 =\n major(coerce(pkgJson.devDependencies['vite']) ?? '6.0.0') === 5;\n const initTask = await initGenerator(tree, {\n projectRoot: root,\n skipFormat: true,\n addPlugin: schema.addPlugin,\n useViteV5: useVite5,\n });\n tasks.push(initTask);\n tasks.push(ensureDependencies(tree, { ...schema, uiFramework }));\n\n addOrChangeTestTarget(tree, schema, hasPlugin);\n\n if (!schema.skipViteConfig) {\n if (uiFramework === 'angular') {\n const relativeTestSetupPath = joinPathFragments('src', 'test-setup.ts');\n\n const setupFile = joinPathFragments(root, relativeTestSetupPath);\n if (!tree.exists(setupFile)) {\n tree.write(\n setupFile,\n `import '@analogjs/vitest-angular/setup-zone';\n\nimport {\n BrowserDynamicTestingModule,\n platformBrowserDynamicTesting,\n} from '@angular/platform-browser-dynamic/testing';\nimport { getTestBed } from '@angular/core/testing';\n\ngetTestBed().initTestEnvironment(\n BrowserDynamicTestingModule,\n platformBrowserDynamicTesting()\n);\n`\n );\n }\n\n createOrEditViteConfig(\n tree,\n {\n project: schema.project,\n includeLib: false,\n includeVitest: true,\n inSourceTests: false,\n imports: [`import angular from '@analogjs/vite-plugin-angular'`],\n plugins: ['angular()'],\n setupFile: relativeTestSetupPath,\n useEsmExtension: true,\n },\n true\n );\n } else if (uiFramework === 'react') {\n createOrEditViteConfig(\n tree,\n {\n project: schema.project,\n includeLib: getProjectType(tree, root, projectType) === 'library',\n includeVitest: true,\n inSourceTests: schema.inSourceTests,\n rollupOptionsExternal: [\n \"'react'\",\n \"'react-dom'\",\n \"'react/jsx-runtime'\",\n ],\n imports: [\n schema.compiler === 'swc'\n ? `import react from '@vitejs/plugin-react-swc'`\n : `import react from '@vitejs/plugin-react'`,\n ],\n plugins: ['react()'],\n coverageProvider: schema.coverageProvider,\n },\n true\n );\n } else {\n createOrEditViteConfig(\n tree,\n {\n ...schema,\n includeVitest: true,\n includeLib: getProjectType(tree, root, projectType) === 'library',\n },\n true\n );\n }\n }\n\n const isTsSolutionSetup = isUsingTsSolutionSetup(tree);\n\n createFiles(tree, schema, root, isTsSolutionSetup);\n updateTsConfig(tree, schema, root, projectType);\n\n if (isTsSolutionSetup) {\n // in the TS solution setup, the test target depends on the build outputs\n // so we need to setup the task pipeline accordingly\n const nxJson = readNxJson(tree);\n const testTarget = schema.testTarget ?? 'test';\n nxJson.targetDefaults ??= {};\n nxJson.targetDefaults[testTarget] ??= {};\n nxJson.targetDefaults[testTarget].dependsOn ??= [];\n nxJson.targetDefaults[testTarget].dependsOn.push('^build');\n updateNxJson(tree, nxJson);\n }\n\n const devDependencies = await getCoverageProviderDependency(\n tree,\n schema.coverageProvider\n );\n devDependencies['@types/node'] = typesNodeVersion;\n\n const installDependenciesTask = addDependenciesToPackageJson(\n tree,\n {},\n devDependencies\n );\n tasks.push(installDependenciesTask);\n\n // Setup workspace config file (https://vitest.dev/guide/workspace.html)\n if (\n !isRootProject &&\n !tree.exists(`vitest.workspace.ts`) &&\n !tree.exists(`vitest.workspace.js`) &&\n !tree.exists(`vitest.workspace.json`) &&\n !tree.exists(`vitest.projects.ts`) &&\n !tree.exists(`vitest.projects.js`) &&\n !tree.exists(`vitest.projects.json`)\n ) {\n tree.write(\n 'vitest.workspace.ts',\n `export default ['**/vite.config.{mjs,js,ts,mts}', '**/vitest.config.{mjs,js,ts,mts}'];`\n );\n }\n\n if (!schema.skipFormat) {\n await formatFiles(tree);\n }\n\n return runTasksInSerial(...tasks);\n}\n\nfunction updateTsConfig(\n tree: Tree,\n options: VitestGeneratorSchema,\n projectRoot: string,\n projectType: ProjectType\n) {\n const setupFile = tryFindSetupFile(tree, projectRoot);\n\n if (tree.exists(joinPathFragments(projectRoot, 'tsconfig.spec.json'))) {\n updateJson(\n tree,\n joinPathFragments(projectRoot, 'tsconfig.spec.json'),\n (json) => {\n if (!json.compilerOptions?.types?.includes('vitest')) {\n if (json.compilerOptions?.types) {\n json.compilerOptions.types.push('vitest');\n } else {\n json.compilerOptions ??= {};\n json.compilerOptions.types = ['vitest'];\n }\n }\n\n if (setupFile) {\n json.files = [...(json.files ?? []), setupFile];\n }\n\n return json;\n }\n );\n\n updateJson(\n tree,\n joinPathFragments(projectRoot, 'tsconfig.json'),\n (json) => {\n if (\n json.references &&\n !json.references.some((r) => r.path === './tsconfig.spec.json')\n ) {\n json.references.push({\n path: './tsconfig.spec.json',\n });\n }\n return json;\n }\n );\n } else {\n updateJson(\n tree,\n joinPathFragments(projectRoot, 'tsconfig.json'),\n (json) => {\n if (!json.compilerOptions?.types?.includes('vitest')) {\n if (json.compilerOptions?.types) {\n json.compilerOptions.types.push('vitest');\n } else {\n json.compilerOptions ??= {};\n json.compilerOptions.types = ['vitest'];\n }\n }\n return json;\n }\n );\n }\n\n let runtimeTsconfigPath = joinPathFragments(\n projectRoot,\n getProjectType(tree, projectRoot, projectType) === 'application'\n ? 'tsconfig.app.json'\n : 'tsconfig.lib.json'\n );\n if (options.runtimeTsconfigFileName) {\n runtimeTsconfigPath = joinPathFragments(\n projectRoot,\n options.runtimeTsconfigFileName\n );\n if (!tree.exists(runtimeTsconfigPath)) {\n throw new Error(\n `Cannot find the specified runtimeTsConfigFileName (\"${options.runtimeTsconfigFileName}\") at the project root \"${projectRoot}\".`\n );\n }\n }\n\n if (tree.exists(runtimeTsconfigPath)) {\n updateJson(tree, runtimeTsconfigPath, (json) => {\n if (options.inSourceTests) {\n (json.compilerOptions.types ??= []).push('vitest/importMeta');\n } else {\n const uniqueExclude = new Set([\n ...(json.exclude || []),\n 'vite.config.ts',\n 'vite.config.mts',\n 'vitest.config.ts',\n 'vitest.config.mts',\n 'src/**/*.test.ts',\n 'src/**/*.spec.ts',\n 'src/**/*.test.tsx',\n 'src/**/*.spec.tsx',\n 'src/**/*.test.js',\n 'src/**/*.spec.js',\n 'src/**/*.test.jsx',\n 'src/**/*.spec.jsx',\n ]);\n json.exclude = [...uniqueExclude];\n }\n\n if (setupFile) {\n json.exclude = [...(json.exclude ?? []), setupFile];\n }\n\n return json;\n });\n } else {\n logger.warn(\n `Couldn't find a runtime tsconfig file at ${runtimeTsconfigPath} to exclude the test files from. ` +\n `If you're using a different filename for your runtime tsconfig, please provide it with the '--runtimeTsconfigFileName' flag.`\n );\n }\n}\n\nfunction createFiles(\n tree: Tree,\n options: VitestGeneratorSchema,\n projectRoot: string,\n isTsSolutionSetup: boolean\n) {\n const rootOffset = offsetFromRoot(projectRoot);\n\n generateFiles(tree, join(__dirname, 'files'), projectRoot, {\n tmpl: '',\n ...options,\n projectRoot,\n extendedConfig: isTsSolutionSetup\n ? `${rootOffset}tsconfig.base.json`\n : './tsconfig.json',\n outDir: isTsSolutionSetup\n ? `./out-tsc/vitest`\n : `${rootOffset}dist/out-tsc`,\n });\n}\n\nasync function getCoverageProviderDependency(\n tree: Tree,\n coverageProvider: VitestGeneratorSchema['coverageProvider']\n): Promise<Record<string, string>> {\n const { vitestCoverageV8, vitestCoverageIstanbul } =\n await getVitestDependenciesVersionsToInstall(tree);\n switch (coverageProvider) {\n case 'v8':\n return {\n '@vitest/coverage-v8': vitestCoverageV8,\n };\n case 'istanbul':\n return {\n '@vitest/coverage-istanbul': vitestCoverageIstanbul,\n };\n default:\n return {\n '@vitest/coverage-v8': vitestCoverageV8,\n };\n }\n}\n\nfunction tryFindSetupFile(tree: Tree, projectRoot: string) {\n const setupFile = joinPathFragments('src', 'test-setup.ts');\n if (tree.exists(joinPathFragments(projectRoot, setupFile))) {\n return setupFile;\n }\n}\n\nexport default vitestGenerator;\n"],"names":["vitestGenerator","vitestGeneratorInternal","tree","schema","hasPlugin","addPlugin","testEnvironment","tasks","root","projectType","_projectType","readProjectConfiguration","project","uiFramework","detectUiFramework","isRootProject","push","jsInitGenerator","skipFormat","pkgJson","readJson","coerce","useVite5","major","devDependencies","initTask","initGenerator","projectRoot","useViteV5","ensureDependencies","addOrChangeTestTarget","skipViteConfig","relativeTestSetupPath","joinPathFragments","setupFile","exists","write","createOrEditViteConfig","includeLib","includeVitest","inSourceTests","imports","plugins","useEsmExtension","getProjectType","rollupOptionsExternal","compiler","coverageProvider","isTsSolutionSetup","isUsingTsSolutionSetup","createFiles","updateTsConfig","nxJson","testTarget","readNxJson","targetDefaults","dependsOn","updateNxJson","getCoverageProviderDependency","typesNodeVersion","installDependenciesTask","addDependenciesToPackageJson","formatFiles","runTasksInSerial","options","tryFindSetupFile","updateJson","json","compilerOptions","types","includes","files","references","some","r","path","runtimeTsconfigPath","runtimeTsconfigFileName","Error","uniqueExclude","Set","exclude","logger","warn","rootOffset","offsetFromRoot","generateFiles","join","__dirname","tmpl","extendedConfig","outDir","vitestCoverageV8","vitestCoverageIstanbul","getVitestDependenciesVersionsToInstall"],"rangeMappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","mappings":"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"}
@@ -10,7 +10,7 @@ export declare const vitePluginDtsVersion = "~4.5.0";
10
10
  export declare const happyDomVersion = "~9.20.3";
11
11
  export declare const edgeRuntimeVmVersion = "~3.0.2";
12
12
  export declare const jitiVersion = "2.4.2";
13
- export declare const analogVitestAngular = "~1.14.1";
13
+ export declare const analogVitestAngular = "~1.10.0";
14
14
  export declare const vitestCoverageV8Version = "^3.0.5";
15
15
  export declare const vitestV1CoverageV8Version = "^1.0.4";
16
16
  export declare const vitestCoverageIstanbulVersion = "^3.0.5";
@@ -70,7 +70,7 @@ const vitePluginDtsVersion = '~4.5.0';
70
70
  const happyDomVersion = '~9.20.3';
71
71
  const edgeRuntimeVmVersion = '~3.0.2';
72
72
  const jitiVersion = '2.4.2';
73
- const analogVitestAngular = '~1.14.1';
73
+ const analogVitestAngular = '~1.10.0';
74
74
  const vitestCoverageV8Version = '^3.0.5';
75
75
  const vitestV1CoverageV8Version = '^1.0.4';
76
76
  const vitestCoverageIstanbulVersion = '^3.0.5';
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../../packages/vite/src/utils/versions.ts"],"sourcesContent":["export const nxVersion = require('../../package.json').version;\n// Also update @nx/remix/utils/versions when changing vite version\nexport const viteVersion = '^6.0.0';\nexport const viteV5Version = '^5.0.0';\nexport const vitestVersion = '^3.0.0';\nexport const vitestV1Version = '^1.3.1';\nexport const vitePluginReactVersion = '^4.2.0';\nexport const vitePluginReactSwcVersion = '^3.5.0';\nexport const jsdomVersion = '~22.1.0';\nexport const vitePluginDtsVersion = '~4.5.0';\nexport const happyDomVersion = '~9.20.3';\nexport const edgeRuntimeVmVersion = '~3.0.2';\nexport const jitiVersion = '2.4.2';\n\nexport const analogVitestAngular = '~1.14.1';\n\n// Coverage providers\nexport const vitestCoverageV8Version = '^3.0.5';\nexport const vitestV1CoverageV8Version = '^1.0.4';\nexport const vitestCoverageIstanbulVersion = '^3.0.5';\nexport const vitestV1CoverageIstanbulVersion = '^1.0.4';\n"],"names":["analogVitestAngular","edgeRuntimeVmVersion","happyDomVersion","jitiVersion","jsdomVersion","nxVersion","vitePluginDtsVersion","vitePluginReactSwcVersion","vitePluginReactVersion","viteV5Version","viteVersion","vitestCoverageIstanbulVersion","vitestCoverageV8Version","vitestV1CoverageIstanbulVersion","vitestV1CoverageV8Version","vitestV1Version","vitestVersion","require","version"],"rangeMappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","mappings":";;;;;;;;IAcaA,mBAAmB;eAAnBA;;IAHAC,oBAAoB;eAApBA;;IADAC,eAAe;eAAfA;;IAEAC,WAAW;eAAXA;;IAJAC,YAAY;eAAZA;;IARAC,SAAS;eAATA;;IASAC,oBAAoB;eAApBA;;IAFAC,yBAAyB;eAAzBA;;IADAC,sBAAsB;eAAtBA;;IAHAC,aAAa;eAAbA;;IADAC,WAAW;eAAXA;;IAiBAC,6BAA6B;eAA7BA;;IAFAC,uBAAuB;eAAvBA;;IAGAC,+BAA+B;eAA/BA;;IAFAC,yBAAyB;eAAzBA;;IAbAC,eAAe;eAAfA;;IADAC,aAAa;eAAbA;;;AAJN,MAAMX,YAAYY,QAAQ,sBAAsBC,OAAO;AAEvD,MAAMR,cAAc;AACpB,MAAMD,gBAAgB;AACtB,MAAMO,gBAAgB;AACtB,MAAMD,kBAAkB;AACxB,MAAMP,yBAAyB;AAC/B,MAAMD,4BAA4B;AAClC,MAAMH,eAAe;AACrB,MAAME,uBAAuB;AAC7B,MAAMJ,kBAAkB;AACxB,MAAMD,uBAAuB;AAC7B,MAAME,cAAc;AAEpB,MAAMH,sBAAsB;AAG5B,MAAMY,0BAA0B;AAChC,MAAME,4BAA4B;AAClC,MAAMH,gCAAgC;AACtC,MAAME,kCAAkC"}
1
+ {"version":3,"sources":["../../../../../packages/vite/src/utils/versions.ts"],"sourcesContent":["export const nxVersion = require('../../package.json').version;\n// Also update @nx/remix/utils/versions when changing vite version\nexport const viteVersion = '^6.0.0';\nexport const viteV5Version = '^5.0.0';\nexport const vitestVersion = '^3.0.0';\nexport const vitestV1Version = '^1.3.1';\nexport const vitePluginReactVersion = '^4.2.0';\nexport const vitePluginReactSwcVersion = '^3.5.0';\nexport const jsdomVersion = '~22.1.0';\nexport const vitePluginDtsVersion = '~4.5.0';\nexport const happyDomVersion = '~9.20.3';\nexport const edgeRuntimeVmVersion = '~3.0.2';\nexport const jitiVersion = '2.4.2';\n\nexport const analogVitestAngular = '~1.10.0';\n\n// Coverage providers\nexport const vitestCoverageV8Version = '^3.0.5';\nexport const vitestV1CoverageV8Version = '^1.0.4';\nexport const vitestCoverageIstanbulVersion = '^3.0.5';\nexport const vitestV1CoverageIstanbulVersion = '^1.0.4';\n"],"names":["analogVitestAngular","edgeRuntimeVmVersion","happyDomVersion","jitiVersion","jsdomVersion","nxVersion","vitePluginDtsVersion","vitePluginReactSwcVersion","vitePluginReactVersion","viteV5Version","viteVersion","vitestCoverageIstanbulVersion","vitestCoverageV8Version","vitestV1CoverageIstanbulVersion","vitestV1CoverageV8Version","vitestV1Version","vitestVersion","require","version"],"rangeMappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","mappings":";;;;;;;;IAcaA,mBAAmB;eAAnBA;;IAHAC,oBAAoB;eAApBA;;IADAC,eAAe;eAAfA;;IAEAC,WAAW;eAAXA;;IAJAC,YAAY;eAAZA;;IARAC,SAAS;eAATA;;IASAC,oBAAoB;eAApBA;;IAFAC,yBAAyB;eAAzBA;;IADAC,sBAAsB;eAAtBA;;IAHAC,aAAa;eAAbA;;IADAC,WAAW;eAAXA;;IAiBAC,6BAA6B;eAA7BA;;IAFAC,uBAAuB;eAAvBA;;IAGAC,+BAA+B;eAA/BA;;IAFAC,yBAAyB;eAAzBA;;IAbAC,eAAe;eAAfA;;IADAC,aAAa;eAAbA;;;AAJN,MAAMX,YAAYY,QAAQ,sBAAsBC,OAAO;AAEvD,MAAMR,cAAc;AACpB,MAAMD,gBAAgB;AACtB,MAAMO,gBAAgB;AACtB,MAAMD,kBAAkB;AACxB,MAAMP,yBAAyB;AAC/B,MAAMD,4BAA4B;AAClC,MAAMH,eAAe;AACrB,MAAME,uBAAuB;AAC7B,MAAMJ,kBAAkB;AACxB,MAAMD,uBAAuB;AAC7B,MAAME,cAAc;AAEpB,MAAMH,sBAAsB;AAG5B,MAAMY,0BAA0B;AAChC,MAAME,4BAA4B;AAClC,MAAMH,gCAAgC;AACtC,MAAME,kCAAkC"}