@nx/vite 0.0.0-pr-22179-271588f
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/LICENSE +22 -0
- package/README.md +68 -0
- package/executors.d.ts +8 -0
- package/executors.js +27 -0
- package/executors.js.map +1 -0
- package/executors.json +46 -0
- package/generators.json +25 -0
- package/index.d.ts +8 -0
- package/index.js +26 -0
- package/index.js.map +1 -0
- package/migrations.json +253 -0
- package/package.json +62 -0
- package/plugin.d.ts +1 -0
- package/plugin.js +21 -0
- package/plugin.js.map +1 -0
- package/plugins/nx-tsconfig-paths.plugin.d.ts +24 -0
- package/plugins/nx-tsconfig-paths.plugin.js +132 -0
- package/plugins/nx-tsconfig-paths.plugin.js.map +1 -0
- package/plugins/rollup-replace-files.plugin.d.ts +16 -0
- package/plugins/rollup-replace-files.plugin.js +51 -0
- package/plugins/rollup-replace-files.plugin.js.map +1 -0
- package/src/executors/build/build.impl.d.ts +13 -0
- package/src/executors/build/build.impl.js +187 -0
- package/src/executors/build/build.impl.js.map +1 -0
- package/src/executors/build/compat.d.ts +2 -0
- package/src/executors/build/compat.js +12 -0
- package/src/executors/build/compat.js.map +1 -0
- package/src/executors/build/schema.d.js +3 -0
- package/src/executors/build/schema.d.js.map +1 -0
- package/src/executors/build/schema.d.ts +10 -0
- package/src/executors/build/schema.json +67 -0
- package/src/executors/dev-server/compat.d.ts +2 -0
- package/src/executors/dev-server/compat.js +12 -0
- package/src/executors/dev-server/compat.js.map +1 -0
- package/src/executors/dev-server/dev-server.impl.d.ts +7 -0
- package/src/executors/dev-server/dev-server.impl.js +136 -0
- package/src/executors/dev-server/dev-server.impl.js.map +1 -0
- package/src/executors/dev-server/schema.d.js +3 -0
- package/src/executors/dev-server/schema.d.js.map +1 -0
- package/src/executors/dev-server/schema.d.ts +5 -0
- package/src/executors/dev-server/schema.json +38 -0
- package/src/executors/preview-server/compat.d.ts +2 -0
- package/src/executors/preview-server/compat.js +12 -0
- package/src/executors/preview-server/compat.js.map +1 -0
- package/src/executors/preview-server/preview-server.impl.d.ts +7 -0
- package/src/executors/preview-server/preview-server.impl.js +176 -0
- package/src/executors/preview-server/preview-server.impl.js.map +1 -0
- package/src/executors/preview-server/schema.d.js +3 -0
- package/src/executors/preview-server/schema.d.js.map +1 -0
- package/src/executors/preview-server/schema.d.ts +5 -0
- package/src/executors/preview-server/schema.json +37 -0
- package/src/executors/test/compat.d.ts +2 -0
- package/src/executors/test/compat.js +12 -0
- package/src/executors/test/compat.js.map +1 -0
- package/src/executors/test/lib/nx-reporter.d.ts +14 -0
- package/src/executors/test/lib/nx-reporter.js +40 -0
- package/src/executors/test/lib/nx-reporter.js.map +1 -0
- package/src/executors/test/lib/utils.d.ts +4 -0
- package/src/executors/test/lib/utils.js +77 -0
- package/src/executors/test/lib/utils.js.map +1 -0
- package/src/executors/test/schema.d.js +3 -0
- package/src/executors/test/schema.d.js.map +1 -0
- package/src/executors/test/schema.d.ts +7 -0
- package/src/executors/test/schema.json +36 -0
- package/src/executors/test/vitest.impl.d.ts +6 -0
- package/src/executors/test/vitest.impl.js +67 -0
- package/src/executors/test/vitest.impl.js.map +1 -0
- package/src/generators/configuration/configuration.d.ts +5 -0
- package/src/generators/configuration/configuration.js +147 -0
- package/src/generators/configuration/configuration.js.map +1 -0
- package/src/generators/configuration/lib/convert-non-vite.d.ts +5 -0
- package/src/generators/configuration/lib/convert-non-vite.js +62 -0
- package/src/generators/configuration/lib/convert-non-vite.js.map +1 -0
- package/src/generators/configuration/schema.d.js +3 -0
- package/src/generators/configuration/schema.d.js.map +1 -0
- package/src/generators/configuration/schema.d.ts +12 -0
- package/src/generators/configuration/schema.json +61 -0
- package/src/generators/init/init.d.ts +6 -0
- package/src/generators/init/init.js +82 -0
- package/src/generators/init/init.js.map +1 -0
- package/src/generators/init/lib/utils.d.ts +6 -0
- package/src/generators/init/lib/utils.js +80 -0
- package/src/generators/init/lib/utils.js.map +1 -0
- package/src/generators/init/schema.d.js +3 -0
- package/src/generators/init/schema.d.js.map +1 -0
- package/src/generators/init/schema.d.ts +7 -0
- package/src/generators/init/schema.json +31 -0
- package/src/generators/vitest/files/tsconfig.spec.json__tmpl__ +20 -0
- package/src/generators/vitest/schema.d.js +3 -0
- package/src/generators/vitest/schema.d.js.map +1 -0
- package/src/generators/vitest/schema.d.ts +11 -0
- package/src/generators/vitest/schema.json +56 -0
- package/src/generators/vitest/vitest-generator.d.ts +5 -0
- package/src/generators/vitest/vitest-generator.js +187 -0
- package/src/generators/vitest/vitest-generator.js.map +1 -0
- package/src/migrations/update-15-3-1/update-vite-tsconfig-paths.d.ts +3 -0
- package/src/migrations/update-15-3-1/update-vite-tsconfig-paths.js +67 -0
- package/src/migrations/update-15-3-1/update-vite-tsconfig-paths.js.map +1 -0
- package/src/migrations/update-15-3-4/set-mode-in-configuration.d.ts +3 -0
- package/src/migrations/update-15-3-4/set-mode-in-configuration.js +37 -0
- package/src/migrations/update-15-3-4/set-mode-in-configuration.js.map +1 -0
- package/src/migrations/update-15-4-3/update-report-directory.d.ts +3 -0
- package/src/migrations/update-15-4-3/update-report-directory.js +39 -0
- package/src/migrations/update-15-4-3/update-report-directory.js.map +1 -0
- package/src/migrations/update-16-0-0-add-nx-packages/update-16-0-0-add-nx-packages.d.ts +2 -0
- package/src/migrations/update-16-0-0-add-nx-packages/update-16-0-0-add-nx-packages.js +15 -0
- package/src/migrations/update-16-0-0-add-nx-packages/update-16-0-0-add-nx-packages.js.map +1 -0
- package/src/migrations/update-16-4-1-update-test-file-config/update-16-4-1-test-file-config.d.ts +2 -0
- package/src/migrations/update-16-4-1-update-test-file-config/update-16-4-1-test-file-config.js +35 -0
- package/src/migrations/update-16-4-1-update-test-file-config/update-16-4-1-test-file-config.js.map +1 -0
- package/src/migrations/update-16-6-0-change-ts-paths-plugin/change-ts-paths-plugin.d.ts +2 -0
- package/src/migrations/update-16-6-0-change-ts-paths-plugin/change-ts-paths-plugin.js +39 -0
- package/src/migrations/update-16-6-0-change-ts-paths-plugin/change-ts-paths-plugin.js.map +1 -0
- package/src/migrations/update-17-1-0/move-target-defaults.d.ts +2 -0
- package/src/migrations/update-17-1-0/move-target-defaults.js +77 -0
- package/src/migrations/update-17-1-0/move-target-defaults.js.map +1 -0
- package/src/migrations/update-17-2-0/lib/add-file-replacements.d.ts +2 -0
- package/src/migrations/update-17-2-0/lib/add-file-replacements.js +67 -0
- package/src/migrations/update-17-2-0/lib/add-file-replacements.js.map +1 -0
- package/src/migrations/update-17-2-0/lib/edit-build-config.d.ts +2 -0
- package/src/migrations/update-17-2-0/lib/edit-build-config.js +121 -0
- package/src/migrations/update-17-2-0/lib/edit-build-config.js.map +1 -0
- package/src/migrations/update-17-2-0/lib/edit-test-config.d.ts +2 -0
- package/src/migrations/update-17-2-0/lib/edit-test-config.js +83 -0
- package/src/migrations/update-17-2-0/lib/edit-test-config.js.map +1 -0
- package/src/migrations/update-17-2-0/update-vite-config.d.ts +5 -0
- package/src/migrations/update-17-2-0/update-vite-config.js +68 -0
- package/src/migrations/update-17-2-0/update-vite-config.js.map +1 -0
- package/src/migrations/update-17-3-0/lib/fix-coverage-and-reporters.d.ts +3 -0
- package/src/migrations/update-17-3-0/lib/fix-coverage-and-reporters.js +117 -0
- package/src/migrations/update-17-3-0/lib/fix-coverage-and-reporters.js.map +1 -0
- package/src/migrations/update-17-3-0/vitest-coverage-and-reporters.d.ts +2 -0
- package/src/migrations/update-17-3-0/vitest-coverage-and-reporters.js +45 -0
- package/src/migrations/update-17-3-0/vitest-coverage-and-reporters.js.map +1 -0
- package/src/plugins/plugin.d.ts +10 -0
- package/src/plugins/plugin.js +223 -0
- package/src/plugins/plugin.js.map +1 -0
- package/src/utils/ensure-dependencies.d.ts +8 -0
- package/src/utils/ensure-dependencies.js +34 -0
- package/src/utils/ensure-dependencies.js.map +1 -0
- package/src/utils/executor-utils.d.ts +11 -0
- package/src/utils/executor-utils.js +59 -0
- package/src/utils/executor-utils.js.map +1 -0
- package/src/utils/find-vite-config.d.ts +3 -0
- package/src/utils/find-vite-config.js +46 -0
- package/src/utils/find-vite-config.js.map +1 -0
- package/src/utils/generator-utils.d.ts +42 -0
- package/src/utils/generator-utils.js +527 -0
- package/src/utils/generator-utils.js.map +1 -0
- package/src/utils/options-utils.d.ts +17 -0
- package/src/utils/options-utils.js +100 -0
- package/src/utils/options-utils.js.map +1 -0
- package/src/utils/test-files/angular-project.config.json +89 -0
- package/src/utils/test-files/react-lib-non-buildable-jest.json +22 -0
- package/src/utils/test-files/react-lib-non-buildable-vitest.json +22 -0
- package/src/utils/test-files/react-mixed-project.config.json +47 -0
- package/src/utils/test-files/react-vite-project.config.json +54 -0
- package/src/utils/test-files/test-vite-configs.d.ts +31 -0
- package/src/utils/test-files/test-vite-configs.js +291 -0
- package/src/utils/test-files/test-vite-configs.js.map +1 -0
- package/src/utils/test-files/unknown-project.config.json +69 -0
- package/src/utils/test-utils.d.ts +9 -0
- package/src/utils/test-utils.js +522 -0
- package/src/utils/test-utils.js.map +1 -0
- package/src/utils/versions.d.ts +11 -0
- package/src/utils/versions.js +55 -0
- package/src/utils/versions.js.map +1 -0
- package/src/utils/vite-config-edit-utils.d.ts +3 -0
- package/src/utils/vite-config-edit-utils.js +314 -0
- package/src/utils/vite-config-edit-utils.js.map +1 -0
|
@@ -0,0 +1,82 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
function _export(target, all) {
|
|
3
|
+
for(var name in all)Object.defineProperty(target, name, {
|
|
4
|
+
enumerable: true,
|
|
5
|
+
get: all[name]
|
|
6
|
+
});
|
|
7
|
+
}
|
|
8
|
+
_export(exports, {
|
|
9
|
+
updateNxJsonSettings: function() {
|
|
10
|
+
return updateNxJsonSettings;
|
|
11
|
+
},
|
|
12
|
+
initGenerator: function() {
|
|
13
|
+
return initGenerator;
|
|
14
|
+
},
|
|
15
|
+
initGeneratorInternal: function() {
|
|
16
|
+
return initGeneratorInternal;
|
|
17
|
+
},
|
|
18
|
+
default: function() {
|
|
19
|
+
return _default;
|
|
20
|
+
}
|
|
21
|
+
});
|
|
22
|
+
const _extends = require("@swc/helpers/_/_extends");
|
|
23
|
+
const _devkit = require("@nx/devkit");
|
|
24
|
+
const _updatepackagescripts = require("@nx/devkit/src/utils/update-package-scripts");
|
|
25
|
+
const _plugin = require("../../plugins/plugin");
|
|
26
|
+
const _utils = require("./lib/utils");
|
|
27
|
+
function updateNxJsonSettings(tree) {
|
|
28
|
+
var _nxJson_namedInputs, _nxJson_plugins;
|
|
29
|
+
const nxJson = (0, _devkit.readNxJson)(tree);
|
|
30
|
+
const productionFileSet = (_nxJson_namedInputs = nxJson.namedInputs) == null ? void 0 : _nxJson_namedInputs.production;
|
|
31
|
+
if (productionFileSet) {
|
|
32
|
+
productionFileSet.push('!{projectRoot}/**/?(*.)+(spec|test).[jt]s?(x)?(.snap)', '!{projectRoot}/tsconfig.spec.json');
|
|
33
|
+
nxJson.namedInputs.production = Array.from(new Set(productionFileSet));
|
|
34
|
+
}
|
|
35
|
+
const hasPlugin = (_nxJson_plugins = nxJson.plugins) == null ? void 0 : _nxJson_plugins.some((p)=>typeof p === 'string' ? p === '@nx/vite/plugin' : p.plugin === '@nx/vite/plugin');
|
|
36
|
+
if (!hasPlugin) {
|
|
37
|
+
var _nxJson, _nxJson_targetDefaults, _nxvitetest, _nxJson_targetDefaults_nxvitetest, _nxJson_targetDefaults_nxvitetest1;
|
|
38
|
+
var _targetDefaults;
|
|
39
|
+
(_targetDefaults = (_nxJson = nxJson).targetDefaults) != null ? _targetDefaults : _nxJson.targetDefaults = {};
|
|
40
|
+
var _;
|
|
41
|
+
(_ = (_nxJson_targetDefaults = nxJson.targetDefaults)[_nxvitetest = '@nx/vite:test']) != null ? _ : _nxJson_targetDefaults[_nxvitetest] = {};
|
|
42
|
+
var _cache;
|
|
43
|
+
(_cache = (_nxJson_targetDefaults_nxvitetest = nxJson.targetDefaults['@nx/vite:test']).cache) != null ? _cache : _nxJson_targetDefaults_nxvitetest.cache = true;
|
|
44
|
+
var _inputs;
|
|
45
|
+
(_inputs = (_nxJson_targetDefaults_nxvitetest1 = nxJson.targetDefaults['@nx/vite:test']).inputs) != null ? _inputs : _nxJson_targetDefaults_nxvitetest1.inputs = [
|
|
46
|
+
'default',
|
|
47
|
+
productionFileSet ? '^production' : '^default'
|
|
48
|
+
];
|
|
49
|
+
}
|
|
50
|
+
(0, _devkit.updateNxJson)(tree, nxJson);
|
|
51
|
+
}
|
|
52
|
+
function initGenerator(tree, schema) {
|
|
53
|
+
return initGeneratorInternal(tree, _extends._({
|
|
54
|
+
addPlugin: false
|
|
55
|
+
}, schema));
|
|
56
|
+
}
|
|
57
|
+
async function initGeneratorInternal(tree, schema) {
|
|
58
|
+
var _schema;
|
|
59
|
+
const nxJson = (0, _devkit.readNxJson)(tree);
|
|
60
|
+
const addPluginDefault = process.env.NX_ADD_PLUGINS !== 'false' && nxJson.useInferencePlugins !== false;
|
|
61
|
+
var _addPlugin;
|
|
62
|
+
(_addPlugin = (_schema = schema).addPlugin) != null ? _addPlugin : _schema.addPlugin = addPluginDefault;
|
|
63
|
+
if (schema.addPlugin) {
|
|
64
|
+
(0, _utils.addPlugin)(tree);
|
|
65
|
+
}
|
|
66
|
+
updateNxJsonSettings(tree);
|
|
67
|
+
const tasks = [];
|
|
68
|
+
if (!schema.skipPackageJson) {
|
|
69
|
+
tasks.push((0, _utils.moveToDevDependencies)(tree));
|
|
70
|
+
tasks.push((0, _utils.checkDependenciesInstalled)(tree, schema));
|
|
71
|
+
}
|
|
72
|
+
if (schema.updatePackageScripts) {
|
|
73
|
+
await (0, _updatepackagescripts.updatePackageScripts)(tree, _plugin.createNodes);
|
|
74
|
+
}
|
|
75
|
+
if (!schema.skipFormat) {
|
|
76
|
+
await (0, _devkit.formatFiles)(tree);
|
|
77
|
+
}
|
|
78
|
+
return (0, _devkit.runTasksInSerial)(...tasks);
|
|
79
|
+
}
|
|
80
|
+
const _default = initGenerator;
|
|
81
|
+
|
|
82
|
+
//# sourceMappingURL=init.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../../../../../packages/vite/src/generators/init/init.ts"],"sourcesContent":["import {\n formatFiles,\n GeneratorCallback,\n readNxJson,\n runTasksInSerial,\n Tree,\n updateNxJson,\n} from '@nx/devkit';\nimport { updatePackageScripts } from '@nx/devkit/src/utils/update-package-scripts';\n\nimport { createNodes } from '../../plugins/plugin';\nimport { InitGeneratorSchema } from './schema';\nimport {\n addPlugin,\n checkDependenciesInstalled,\n moveToDevDependencies,\n} from './lib/utils';\n\nexport function updateNxJsonSettings(tree: Tree) {\n const nxJson = readNxJson(tree);\n\n const productionFileSet = nxJson.namedInputs?.production;\n if (productionFileSet) {\n productionFileSet.push(\n '!{projectRoot}/**/?(*.)+(spec|test).[jt]s?(x)?(.snap)',\n '!{projectRoot}/tsconfig.spec.json'\n );\n\n nxJson.namedInputs.production = Array.from(new Set(productionFileSet));\n }\n\n const hasPlugin = nxJson.plugins?.some((p) =>\n typeof p === 'string'\n ? p === '@nx/vite/plugin'\n : p.plugin === '@nx/vite/plugin'\n );\n\n if (!hasPlugin) {\n nxJson.targetDefaults ??= {};\n nxJson.targetDefaults['@nx/vite:test'] ??= {};\n nxJson.targetDefaults['@nx/vite:test'].cache ??= true;\n nxJson.targetDefaults['@nx/vite:test'].inputs ??= [\n 'default',\n productionFileSet ? '^production' : '^default',\n ];\n }\n\n updateNxJson(tree, nxJson);\n}\n\nexport function initGenerator(tree: Tree, schema: InitGeneratorSchema) {\n return initGeneratorInternal(tree, { addPlugin: false, ...schema });\n}\n\nexport async function initGeneratorInternal(\n tree: Tree,\n schema: InitGeneratorSchema\n) {\n const nxJson = readNxJson(tree);\n const addPluginDefault =\n process.env.NX_ADD_PLUGINS !== 'false' &&\n nxJson.useInferencePlugins !== false;\n schema.addPlugin ??= addPluginDefault;\n if (schema.addPlugin) {\n addPlugin(tree);\n }\n\n updateNxJsonSettings(tree);\n\n const tasks: GeneratorCallback[] = [];\n if (!schema.skipPackageJson) {\n tasks.push(moveToDevDependencies(tree));\n tasks.push(checkDependenciesInstalled(tree, schema));\n }\n\n if (schema.updatePackageScripts) {\n await updatePackageScripts(tree, createNodes);\n }\n\n if (!schema.skipFormat) {\n await formatFiles(tree);\n }\n\n return runTasksInSerial(...tasks);\n}\n\nexport default initGenerator;\n"],"names":["updateNxJsonSettings","initGenerator","initGeneratorInternal","tree","nxJson","readNxJson","productionFileSet","namedInputs","production","push","Array","from","Set","hasPlugin","plugins","some","p","plugin","targetDefaults","cache","inputs","updateNxJson","schema","addPlugin","addPluginDefault","process","env","NX_ADD_PLUGINS","useInferencePlugins","tasks","skipPackageJson","moveToDevDependencies","checkDependenciesInstalled","updatePackageScripts","createNodes","skipFormat","formatFiles","runTasksInSerial"],"mappings":";;;;;;;;IAkBgBA,oBAAoB;eAApBA;;IAgCAC,aAAa;eAAbA;;IAIMC,qBAAqB;eAArBA;;IAgCtB,OAA6B;eAA7B;;;;wBA/EO;sCAC8B;wBAET;uBAMrB;AAEA,SAASF,qBAAqBG,IAAU;QAGnBC,qBAURA;IAZlB,MAAMA,SAASC,IAAAA,kBAAU,EAACF;IAE1B,MAAMG,qBAAoBF,sBAAAA,OAAOG,WAAW,qBAAlBH,oBAAoBI,UAAU;IACxD,IAAIF,mBAAmB;QACrBA,kBAAkBG,IAAI,CACpB,yDACA;QAGFL,OAAOG,WAAW,CAACC,UAAU,GAAGE,MAAMC,IAAI,CAAC,IAAIC,IAAIN;IACrD;IAEA,MAAMO,aAAYT,kBAAAA,OAAOU,OAAO,qBAAdV,gBAAgBW,IAAI,CAAC,CAACC,IACtC,OAAOA,MAAM,WACTA,MAAM,oBACNA,EAAEC,MAAM,KAAK;IAGnB,IAAI,CAACJ,WAAW;YACdT,SACAA,wBAAsB,aACtBA,mCACAA;;QAHAA,oBAAAA,UAAAA,QAAOc,4CAAPd,QAAOc,iBAAmB,CAAC;;QAC3Bd,MAAAA,yBAAAA,OAAOc,cAAc,CAAA,CAAC,cAAA,gBAAgB,gBAAtCd,sBAAqB,CAAC,YAAgB,GAAK,CAAC;;QAC5CA,WAAAA,oCAAAA,OAAOc,cAAc,CAAC,gBAAgB,EAACC,0BAAvCf,kCAAuCe,QAAU;;QACjDf,YAAAA,qCAAAA,OAAOc,cAAc,CAAC,gBAAgB,EAACE,4BAAvChB,mCAAuCgB,SAAW;YAChD;YACAd,oBAAoB,gBAAgB;SACrC;IACH;IAEAe,IAAAA,oBAAY,EAAClB,MAAMC;AACrB;AAEO,SAASH,cAAcE,IAAU,EAAEmB,MAA2B;IACnE,OAAOpB,sBAAsBC,MAAM;QAAEoB,WAAW;OAAUD;AAC5D;AAEO,eAAepB,sBACpBC,IAAU,EACVmB,MAA2B;QAM3BA;IAJA,MAAMlB,SAASC,IAAAA,kBAAU,EAACF;IAC1B,MAAMqB,mBACJC,QAAQC,GAAG,CAACC,cAAc,KAAK,WAC/BvB,OAAOwB,mBAAmB,KAAK;;IACjCN,eAAAA,UAAAA,QAAOC,kCAAPD,QAAOC,YAAcC;IACrB,IAAIF,OAAOC,SAAS,EAAE;QACpBA,IAAAA,gBAAS,EAACpB;IACZ;IAEAH,qBAAqBG;IAErB,MAAM0B,QAA6B,EAAE;IACrC,IAAI,CAACP,OAAOQ,eAAe,EAAE;QAC3BD,MAAMpB,IAAI,CAACsB,IAAAA,4BAAqB,EAAC5B;QACjC0B,MAAMpB,IAAI,CAACuB,IAAAA,iCAA0B,EAAC7B,MAAMmB;IAC9C;IAEA,IAAIA,OAAOW,oBAAoB,EAAE;QAC/B,MAAMA,IAAAA,0CAAoB,EAAC9B,MAAM+B,mBAAW;IAC9C;IAEA,IAAI,CAACZ,OAAOa,UAAU,EAAE;QACtB,MAAMC,IAAAA,mBAAW,EAACjC;IACpB;IAEA,OAAOkC,IAAAA,wBAAgB,KAAIR;AAC7B;MAEA,WAAe5B"}
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
import { Tree } from '@nx/devkit';
|
|
2
|
+
import { InitGeneratorSchema } from '../schema';
|
|
3
|
+
export declare function checkDependenciesInstalled(host: Tree, schema: InitGeneratorSchema): import("@nx/devkit").GeneratorCallback;
|
|
4
|
+
export declare function moveToDevDependencies(tree: Tree): () => void;
|
|
5
|
+
export declare function createVitestConfig(tree: Tree): void;
|
|
6
|
+
export declare function addPlugin(tree: Tree): void;
|
|
@@ -0,0 +1,80 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
function _export(target, all) {
|
|
3
|
+
for(var name in all)Object.defineProperty(target, name, {
|
|
4
|
+
enumerable: true,
|
|
5
|
+
get: all[name]
|
|
6
|
+
});
|
|
7
|
+
}
|
|
8
|
+
_export(exports, {
|
|
9
|
+
checkDependenciesInstalled: function() {
|
|
10
|
+
return checkDependenciesInstalled;
|
|
11
|
+
},
|
|
12
|
+
moveToDevDependencies: function() {
|
|
13
|
+
return moveToDevDependencies;
|
|
14
|
+
},
|
|
15
|
+
createVitestConfig: function() {
|
|
16
|
+
return createVitestConfig;
|
|
17
|
+
},
|
|
18
|
+
addPlugin: function() {
|
|
19
|
+
return addPlugin;
|
|
20
|
+
}
|
|
21
|
+
});
|
|
22
|
+
const _devkit = require("@nx/devkit");
|
|
23
|
+
const _versions = require("../../../utils/versions");
|
|
24
|
+
function checkDependenciesInstalled(host, schema) {
|
|
25
|
+
return (0, _devkit.addDependenciesToPackageJson)(host, {}, {
|
|
26
|
+
'@nx/vite': _versions.nxVersion,
|
|
27
|
+
'@nx/web': _versions.nxVersion,
|
|
28
|
+
vite: _versions.viteVersion,
|
|
29
|
+
vitest: _versions.vitestVersion,
|
|
30
|
+
'@vitest/ui': _versions.vitestVersion
|
|
31
|
+
}, undefined, schema.keepExistingVersions);
|
|
32
|
+
}
|
|
33
|
+
function moveToDevDependencies(tree) {
|
|
34
|
+
let wasUpdated = false;
|
|
35
|
+
(0, _devkit.updateJson)(tree, 'package.json', (packageJson)=>{
|
|
36
|
+
packageJson.dependencies = packageJson.dependencies || {};
|
|
37
|
+
packageJson.devDependencies = packageJson.devDependencies || {};
|
|
38
|
+
if (packageJson.dependencies['@nx/vite']) {
|
|
39
|
+
packageJson.devDependencies['@nx/vite'] = packageJson.dependencies['@nx/vite'];
|
|
40
|
+
delete packageJson.dependencies['@nx/vite'];
|
|
41
|
+
wasUpdated = true;
|
|
42
|
+
}
|
|
43
|
+
return packageJson;
|
|
44
|
+
});
|
|
45
|
+
return wasUpdated ? ()=>(0, _devkit.installPackagesTask)(tree) : ()=>{};
|
|
46
|
+
}
|
|
47
|
+
function createVitestConfig(tree) {
|
|
48
|
+
var _nxJson_namedInputs;
|
|
49
|
+
const nxJson = (0, _devkit.readNxJson)(tree);
|
|
50
|
+
const productionFileSet = (_nxJson_namedInputs = nxJson.namedInputs) == null ? void 0 : _nxJson_namedInputs.production;
|
|
51
|
+
if (productionFileSet) {
|
|
52
|
+
productionFileSet.push('!{projectRoot}/**/?(*.)+(spec|test).[jt]s?(x)?(.snap)', '!{projectRoot}/tsconfig.spec.json');
|
|
53
|
+
nxJson.namedInputs.production = Array.from(new Set(productionFileSet));
|
|
54
|
+
}
|
|
55
|
+
(0, _devkit.updateNxJson)(tree, nxJson);
|
|
56
|
+
}
|
|
57
|
+
function addPlugin(tree) {
|
|
58
|
+
var _nxJson;
|
|
59
|
+
const nxJson = (0, _devkit.readNxJson)(tree);
|
|
60
|
+
var _plugins;
|
|
61
|
+
(_plugins = (_nxJson = nxJson).plugins) != null ? _plugins : _nxJson.plugins = [];
|
|
62
|
+
for (const plugin of nxJson.plugins){
|
|
63
|
+
if (typeof plugin === 'string' ? plugin === '@nx/vite/plugin' : plugin.plugin === '@nx/vite/plugin') {
|
|
64
|
+
return;
|
|
65
|
+
}
|
|
66
|
+
}
|
|
67
|
+
nxJson.plugins.push({
|
|
68
|
+
plugin: '@nx/vite/plugin',
|
|
69
|
+
options: {
|
|
70
|
+
buildTargetName: 'build',
|
|
71
|
+
previewTargetName: 'preview',
|
|
72
|
+
testTargetName: 'test',
|
|
73
|
+
serveTargetName: 'serve',
|
|
74
|
+
serveStaticTargetName: 'serve-static'
|
|
75
|
+
}
|
|
76
|
+
});
|
|
77
|
+
(0, _devkit.updateNxJson)(tree, nxJson);
|
|
78
|
+
}
|
|
79
|
+
|
|
80
|
+
//# sourceMappingURL=utils.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../../../../../../packages/vite/src/generators/init/lib/utils.ts"],"sourcesContent":["import {\n addDependenciesToPackageJson,\n installPackagesTask,\n readNxJson,\n Tree,\n updateJson,\n updateNxJson,\n} from '@nx/devkit';\nimport { nxVersion, vitestVersion, viteVersion } from '../../../utils/versions';\nimport { InitGeneratorSchema } from '../schema';\n\nexport function checkDependenciesInstalled(\n host: Tree,\n schema: InitGeneratorSchema\n) {\n return addDependenciesToPackageJson(\n host,\n {},\n {\n '@nx/vite': nxVersion,\n '@nx/web': nxVersion,\n vite: viteVersion,\n vitest: vitestVersion,\n '@vitest/ui': vitestVersion,\n },\n undefined,\n schema.keepExistingVersions\n );\n}\n\nexport function moveToDevDependencies(tree: Tree) {\n let wasUpdated = false;\n updateJson(tree, 'package.json', (packageJson) => {\n packageJson.dependencies = packageJson.dependencies || {};\n packageJson.devDependencies = packageJson.devDependencies || {};\n\n if (packageJson.dependencies['@nx/vite']) {\n packageJson.devDependencies['@nx/vite'] =\n packageJson.dependencies['@nx/vite'];\n delete packageJson.dependencies['@nx/vite'];\n wasUpdated = true;\n }\n return packageJson;\n });\n\n return wasUpdated ? () => installPackagesTask(tree) : () => {};\n}\n\nexport function createVitestConfig(tree: Tree) {\n const nxJson = readNxJson(tree);\n\n const productionFileSet = nxJson.namedInputs?.production;\n if (productionFileSet) {\n productionFileSet.push(\n '!{projectRoot}/**/?(*.)+(spec|test).[jt]s?(x)?(.snap)',\n '!{projectRoot}/tsconfig.spec.json'\n );\n\n nxJson.namedInputs.production = Array.from(new Set(productionFileSet));\n }\n\n updateNxJson(tree, nxJson);\n}\n\nexport function addPlugin(tree: Tree) {\n const nxJson = readNxJson(tree);\n nxJson.plugins ??= [];\n\n for (const plugin of nxJson.plugins) {\n if (\n typeof plugin === 'string'\n ? plugin === '@nx/vite/plugin'\n : plugin.plugin === '@nx/vite/plugin'\n ) {\n return;\n }\n }\n\n nxJson.plugins.push({\n plugin: '@nx/vite/plugin',\n options: {\n buildTargetName: 'build',\n previewTargetName: 'preview',\n testTargetName: 'test',\n serveTargetName: 'serve',\n serveStaticTargetName: 'serve-static',\n },\n });\n updateNxJson(tree, nxJson);\n}\n"],"names":["checkDependenciesInstalled","moveToDevDependencies","createVitestConfig","addPlugin","host","schema","addDependenciesToPackageJson","nxVersion","vite","viteVersion","vitest","vitestVersion","undefined","keepExistingVersions","tree","wasUpdated","updateJson","packageJson","dependencies","devDependencies","installPackagesTask","nxJson","readNxJson","productionFileSet","namedInputs","production","push","Array","from","Set","updateNxJson","plugins","plugin","options","buildTargetName","previewTargetName","testTargetName","serveTargetName","serveStaticTargetName"],"mappings":";;;;;;;;IAWgBA,0BAA0B;eAA1BA;;IAmBAC,qBAAqB;eAArBA;;IAkBAC,kBAAkB;eAAlBA;;IAgBAC,SAAS;eAATA;;;wBAzDT;0BAC+C;AAG/C,SAASH,2BACdI,IAAU,EACVC,MAA2B;IAE3B,OAAOC,IAAAA,oCAA4B,EACjCF,MACA,CAAC,GACD;QACE,YAAYG,mBAAS;QACrB,WAAWA,mBAAS;QACpBC,MAAMC,qBAAW;QACjBC,QAAQC,uBAAa;QACrB,cAAcA,uBAAa;IAC7B,GACAC,WACAP,OAAOQ,oBAAoB;AAE/B;AAEO,SAASZ,sBAAsBa,IAAU;IAC9C,IAAIC,aAAa;IACjBC,IAAAA,kBAAU,EAACF,MAAM,gBAAgB,CAACG;QAChCA,YAAYC,YAAY,GAAGD,YAAYC,YAAY,IAAI,CAAC;QACxDD,YAAYE,eAAe,GAAGF,YAAYE,eAAe,IAAI,CAAC;QAE9D,IAAIF,YAAYC,YAAY,CAAC,WAAW,EAAE;YACxCD,YAAYE,eAAe,CAAC,WAAW,GACrCF,YAAYC,YAAY,CAAC,WAAW;YACtC,OAAOD,YAAYC,YAAY,CAAC,WAAW;YAC3CH,aAAa;QACf;QACA,OAAOE;IACT;IAEA,OAAOF,aAAa,IAAMK,IAAAA,2BAAmB,EAACN,QAAQ,KAAO;AAC/D;AAEO,SAASZ,mBAAmBY,IAAU;QAGjBO;IAF1B,MAAMA,SAASC,IAAAA,kBAAU,EAACR;IAE1B,MAAMS,qBAAoBF,sBAAAA,OAAOG,WAAW,qBAAlBH,oBAAoBI,UAAU;IACxD,IAAIF,mBAAmB;QACrBA,kBAAkBG,IAAI,CACpB,yDACA;QAGFL,OAAOG,WAAW,CAACC,UAAU,GAAGE,MAAMC,IAAI,CAAC,IAAIC,IAAIN;IACrD;IAEAO,IAAAA,oBAAY,EAAChB,MAAMO;AACrB;AAEO,SAASlB,UAAUW,IAAU;QAElCO;IADA,MAAMA,SAASC,IAAAA,kBAAU,EAACR;;IAC1BO,aAAAA,UAAAA,QAAOU,8BAAPV,QAAOU,UAAY,EAAE;IAErB,KAAK,MAAMC,UAAUX,OAAOU,OAAO,CAAE;QACnC,IACE,OAAOC,WAAW,WACdA,WAAW,oBACXA,OAAOA,MAAM,KAAK,mBACtB;YACA;QACF;IACF;IAEAX,OAAOU,OAAO,CAACL,IAAI,CAAC;QAClBM,QAAQ;QACRC,SAAS;YACPC,iBAAiB;YACjBC,mBAAmB;YACnBC,gBAAgB;YAChBC,iBAAiB;YACjBC,uBAAuB;QACzB;IACF;IACAR,IAAAA,oBAAY,EAAChB,MAAMO;AACrB"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../../../../../packages/vite/src/generators/init/schema.d.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
{
|
|
2
|
+
"cli": "nx",
|
|
3
|
+
"title": "Initialize Vite in the workspace.",
|
|
4
|
+
"description": "Initialize Vite in the workspace.",
|
|
5
|
+
"$id": "init-vite-plugin",
|
|
6
|
+
"type": "object",
|
|
7
|
+
"properties": {
|
|
8
|
+
"skipFormat": {
|
|
9
|
+
"description": "Skip formatting files.",
|
|
10
|
+
"type": "boolean",
|
|
11
|
+
"default": false
|
|
12
|
+
},
|
|
13
|
+
"skipPackageJson": {
|
|
14
|
+
"description": "Do not add dependencies to `package.json`.",
|
|
15
|
+
"type": "boolean",
|
|
16
|
+
"default": false
|
|
17
|
+
},
|
|
18
|
+
"keepExistingVersions": {
|
|
19
|
+
"type": "boolean",
|
|
20
|
+
"x-priority": "internal",
|
|
21
|
+
"description": "Keep existing dependencies versions",
|
|
22
|
+
"default": false
|
|
23
|
+
},
|
|
24
|
+
"updatePackageScripts": {
|
|
25
|
+
"type": "boolean",
|
|
26
|
+
"x-priority": "internal",
|
|
27
|
+
"description": "Update `package.json` scripts with inferred targets",
|
|
28
|
+
"default": false
|
|
29
|
+
}
|
|
30
|
+
}
|
|
31
|
+
}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
{
|
|
2
|
+
"extends": "./tsconfig.json",
|
|
3
|
+
"compilerOptions": {
|
|
4
|
+
"outDir": "<%= offsetFromRoot %>dist/out-tsc",
|
|
5
|
+
"types": ["vitest/globals", "vitest/importMeta", "vite/client", "node"]
|
|
6
|
+
},
|
|
7
|
+
"include": [
|
|
8
|
+
"vite.config.ts",
|
|
9
|
+
"vitest.config.ts",
|
|
10
|
+
"src/**/*.test.ts",
|
|
11
|
+
"src/**/*.spec.ts",
|
|
12
|
+
"src/**/*.test.tsx",
|
|
13
|
+
"src/**/*.spec.tsx",
|
|
14
|
+
"src/**/*.test.js",
|
|
15
|
+
"src/**/*.spec.js",
|
|
16
|
+
"src/**/*.test.jsx",
|
|
17
|
+
"src/**/*.spec.jsx",
|
|
18
|
+
"src/**/*.d.ts"
|
|
19
|
+
]
|
|
20
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../../../../../packages/vite/src/generators/vitest/schema.d.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
export interface VitestGeneratorSchema {
|
|
2
|
+
project: string;
|
|
3
|
+
uiFramework: 'react' | 'none';
|
|
4
|
+
coverageProvider: 'v8' | 'istanbul' | 'custom';
|
|
5
|
+
inSourceTests?: boolean;
|
|
6
|
+
skipViteConfig?: boolean;
|
|
7
|
+
testTarget?: string;
|
|
8
|
+
skipFormat?: boolean;
|
|
9
|
+
testEnvironment?: 'node' | 'jsdom' | 'happy-dom' | 'edge-runtime' | string;
|
|
10
|
+
addPlugin?: boolean;
|
|
11
|
+
}
|
|
@@ -0,0 +1,56 @@
|
|
|
1
|
+
{
|
|
2
|
+
"$schema": "https://json-schema.org/schema",
|
|
3
|
+
"cli": "nx",
|
|
4
|
+
"$id": "Vitest",
|
|
5
|
+
"title": "Vitest",
|
|
6
|
+
"type": "object",
|
|
7
|
+
"description": "Generate a Vitest setup for a project.",
|
|
8
|
+
"properties": {
|
|
9
|
+
"project": {
|
|
10
|
+
"type": "string",
|
|
11
|
+
"description": "The name of the project to test.",
|
|
12
|
+
"$default": {
|
|
13
|
+
"$source": "projectName"
|
|
14
|
+
}
|
|
15
|
+
},
|
|
16
|
+
"uiFramework": {
|
|
17
|
+
"type": "string",
|
|
18
|
+
"enum": ["react", "none"],
|
|
19
|
+
"default": "none",
|
|
20
|
+
"description": "UI framework to use with vitest."
|
|
21
|
+
},
|
|
22
|
+
"inSourceTests": {
|
|
23
|
+
"type": "boolean",
|
|
24
|
+
"default": false,
|
|
25
|
+
"description": "Do not generate separate spec files and set up in-source testing."
|
|
26
|
+
},
|
|
27
|
+
"skipViteConfig": {
|
|
28
|
+
"type": "boolean",
|
|
29
|
+
"default": false,
|
|
30
|
+
"description": "Skip generating a vite config file."
|
|
31
|
+
},
|
|
32
|
+
"coverageProvider": {
|
|
33
|
+
"type": "string",
|
|
34
|
+
"enum": ["v8", "istanbul", "custom"],
|
|
35
|
+
"default": "v8",
|
|
36
|
+
"description": "Coverage provider to use."
|
|
37
|
+
},
|
|
38
|
+
"testTarget": {
|
|
39
|
+
"type": "string",
|
|
40
|
+
"description": "The test target of the project to be transformed to use the @nx/vite:test executor.",
|
|
41
|
+
"hidden": true
|
|
42
|
+
},
|
|
43
|
+
"skipFormat": {
|
|
44
|
+
"description": "Skip formatting files.",
|
|
45
|
+
"type": "boolean",
|
|
46
|
+
"default": false,
|
|
47
|
+
"x-priority": "internal"
|
|
48
|
+
},
|
|
49
|
+
"testEnvironment": {
|
|
50
|
+
"description": "The vitest environment to use. See https://vitest.dev/config/#environment.",
|
|
51
|
+
"type": "string",
|
|
52
|
+
"enum": ["node", "jsdom", "happy-dom", "edge-runtime"]
|
|
53
|
+
}
|
|
54
|
+
},
|
|
55
|
+
"required": ["project"]
|
|
56
|
+
}
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
import { GeneratorCallback, Tree } from '@nx/devkit';
|
|
2
|
+
import { VitestGeneratorSchema } from './schema';
|
|
3
|
+
export declare function vitestGenerator(tree: Tree, schema: VitestGeneratorSchema, hasPlugin?: boolean): Promise<GeneratorCallback>;
|
|
4
|
+
export declare function vitestGeneratorInternal(tree: Tree, schema: VitestGeneratorSchema, hasPlugin?: boolean): Promise<GeneratorCallback>;
|
|
5
|
+
export default vitestGenerator;
|
|
@@ -0,0 +1,187 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
function _export(target, all) {
|
|
3
|
+
for(var name in all)Object.defineProperty(target, name, {
|
|
4
|
+
enumerable: true,
|
|
5
|
+
get: all[name]
|
|
6
|
+
});
|
|
7
|
+
}
|
|
8
|
+
_export(exports, {
|
|
9
|
+
vitestGenerator: function() {
|
|
10
|
+
return vitestGenerator;
|
|
11
|
+
},
|
|
12
|
+
vitestGeneratorInternal: function() {
|
|
13
|
+
return vitestGeneratorInternal;
|
|
14
|
+
},
|
|
15
|
+
default: function() {
|
|
16
|
+
return _default;
|
|
17
|
+
}
|
|
18
|
+
});
|
|
19
|
+
const _extends = require("@swc/helpers/_/_extends");
|
|
20
|
+
const _devkit = require("@nx/devkit");
|
|
21
|
+
const _generatorutils = require("../../utils/generator-utils");
|
|
22
|
+
const _init = require("../init/init");
|
|
23
|
+
const _versions = require("../../utils/versions");
|
|
24
|
+
const _js = require("@nx/js");
|
|
25
|
+
const _path = require("path");
|
|
26
|
+
const _ensuredependencies = require("../../utils/ensure-dependencies");
|
|
27
|
+
function vitestGenerator(tree, schema, hasPlugin = false) {
|
|
28
|
+
return vitestGeneratorInternal(tree, _extends._({
|
|
29
|
+
addPlugin: false
|
|
30
|
+
}, schema), hasPlugin);
|
|
31
|
+
}
|
|
32
|
+
async function vitestGeneratorInternal(tree, schema, hasPlugin = false) {
|
|
33
|
+
var _nxJson_plugins;
|
|
34
|
+
const tasks = [];
|
|
35
|
+
const { root, projectType } = (0, _devkit.readProjectConfiguration)(tree, schema.project);
|
|
36
|
+
const isRootProject = root === '.';
|
|
37
|
+
tasks.push(await (0, _js.initGenerator)(tree, _extends._({}, schema, {
|
|
38
|
+
skipFormat: true
|
|
39
|
+
})));
|
|
40
|
+
const initTask = await (0, _init.default)(tree, {
|
|
41
|
+
skipFormat: true,
|
|
42
|
+
addPlugin: schema.addPlugin
|
|
43
|
+
});
|
|
44
|
+
tasks.push(initTask);
|
|
45
|
+
tasks.push((0, _ensuredependencies.ensureDependencies)(tree, schema));
|
|
46
|
+
const nxJson = (0, _devkit.readNxJson)(tree);
|
|
47
|
+
const hasPluginCheck = (_nxJson_plugins = nxJson.plugins) == null ? void 0 : _nxJson_plugins.some((p)=>(typeof p === 'string' ? p === '@nx/vite/plugin' : p.plugin === '@nx/vite/plugin') || hasPlugin);
|
|
48
|
+
if (!hasPluginCheck) {
|
|
49
|
+
var _schema_testTarget;
|
|
50
|
+
const testTarget = (_schema_testTarget = schema.testTarget) != null ? _schema_testTarget : 'test';
|
|
51
|
+
(0, _generatorutils.addOrChangeTestTarget)(tree, schema, testTarget);
|
|
52
|
+
}
|
|
53
|
+
if (!schema.skipViteConfig) {
|
|
54
|
+
if (schema.uiFramework === 'react') {
|
|
55
|
+
(0, _generatorutils.createOrEditViteConfig)(tree, {
|
|
56
|
+
project: schema.project,
|
|
57
|
+
includeLib: projectType === 'library',
|
|
58
|
+
includeVitest: true,
|
|
59
|
+
inSourceTests: schema.inSourceTests,
|
|
60
|
+
rollupOptionsExternal: [
|
|
61
|
+
"'react'",
|
|
62
|
+
"'react-dom'",
|
|
63
|
+
"'react/jsx-runtime'"
|
|
64
|
+
],
|
|
65
|
+
imports: [
|
|
66
|
+
`import react from '@vitejs/plugin-react'`
|
|
67
|
+
],
|
|
68
|
+
plugins: [
|
|
69
|
+
'react()'
|
|
70
|
+
],
|
|
71
|
+
coverageProvider: schema.coverageProvider
|
|
72
|
+
}, true);
|
|
73
|
+
} else {
|
|
74
|
+
(0, _generatorutils.createOrEditViteConfig)(tree, _extends._({}, schema, {
|
|
75
|
+
includeVitest: true,
|
|
76
|
+
includeLib: projectType === 'library'
|
|
77
|
+
}), true);
|
|
78
|
+
}
|
|
79
|
+
}
|
|
80
|
+
createFiles(tree, schema, root);
|
|
81
|
+
updateTsConfig(tree, schema, root);
|
|
82
|
+
const coverageProviderDependency = getCoverageProviderDependency(schema.coverageProvider);
|
|
83
|
+
const installCoverageProviderTask = (0, _devkit.addDependenciesToPackageJson)(tree, {}, coverageProviderDependency);
|
|
84
|
+
tasks.push(installCoverageProviderTask);
|
|
85
|
+
// Setup workspace config file (https://vitest.dev/guide/workspace.html)
|
|
86
|
+
if (!isRootProject && !tree.exists(`vitest.workspace.ts`) && !tree.exists(`vitest.workspace.js`) && !tree.exists(`vitest.workspace.json`) && !tree.exists(`vitest.projects.ts`) && !tree.exists(`vitest.projects.js`) && !tree.exists(`vitest.projects.json`)) {
|
|
87
|
+
tree.write('vitest.workspace.ts', `export default ['**/*/vite.config.ts', '**/*/vitest.config.ts'];`);
|
|
88
|
+
}
|
|
89
|
+
if (!schema.skipFormat) {
|
|
90
|
+
await (0, _devkit.formatFiles)(tree);
|
|
91
|
+
}
|
|
92
|
+
return (0, _devkit.runTasksInSerial)(...tasks);
|
|
93
|
+
}
|
|
94
|
+
function updateTsConfig(tree, options, projectRoot) {
|
|
95
|
+
if (tree.exists((0, _devkit.joinPathFragments)(projectRoot, 'tsconfig.spec.json'))) {
|
|
96
|
+
(0, _devkit.updateJson)(tree, (0, _devkit.joinPathFragments)(projectRoot, 'tsconfig.spec.json'), (json)=>{
|
|
97
|
+
var _json_compilerOptions_types, _json_compilerOptions;
|
|
98
|
+
if (!((_json_compilerOptions = json.compilerOptions) == null ? void 0 : (_json_compilerOptions_types = _json_compilerOptions.types) == null ? void 0 : _json_compilerOptions_types.includes('vitest'))) {
|
|
99
|
+
var _json_compilerOptions1;
|
|
100
|
+
if ((_json_compilerOptions1 = json.compilerOptions) == null ? void 0 : _json_compilerOptions1.types) {
|
|
101
|
+
json.compilerOptions.types.push('vitest');
|
|
102
|
+
} else {
|
|
103
|
+
var _json;
|
|
104
|
+
var _compilerOptions;
|
|
105
|
+
(_compilerOptions = (_json = json).compilerOptions) != null ? _compilerOptions : _json.compilerOptions = {};
|
|
106
|
+
json.compilerOptions.types = [
|
|
107
|
+
'vitest'
|
|
108
|
+
];
|
|
109
|
+
}
|
|
110
|
+
}
|
|
111
|
+
return json;
|
|
112
|
+
});
|
|
113
|
+
(0, _devkit.updateJson)(tree, (0, _devkit.joinPathFragments)(projectRoot, 'tsconfig.json'), (json)=>{
|
|
114
|
+
if (json.references && !json.references.some((r)=>r.path === './tsconfig.spec.json')) {
|
|
115
|
+
json.references.push({
|
|
116
|
+
path: './tsconfig.spec.json'
|
|
117
|
+
});
|
|
118
|
+
}
|
|
119
|
+
return json;
|
|
120
|
+
});
|
|
121
|
+
} else {
|
|
122
|
+
(0, _devkit.updateJson)(tree, (0, _devkit.joinPathFragments)(projectRoot, 'tsconfig.json'), (json)=>{
|
|
123
|
+
var _json_compilerOptions_types, _json_compilerOptions;
|
|
124
|
+
if (!((_json_compilerOptions = json.compilerOptions) == null ? void 0 : (_json_compilerOptions_types = _json_compilerOptions.types) == null ? void 0 : _json_compilerOptions_types.includes('vitest'))) {
|
|
125
|
+
var _json_compilerOptions1;
|
|
126
|
+
if ((_json_compilerOptions1 = json.compilerOptions) == null ? void 0 : _json_compilerOptions1.types) {
|
|
127
|
+
json.compilerOptions.types.push('vitest');
|
|
128
|
+
} else {
|
|
129
|
+
var _json;
|
|
130
|
+
var _compilerOptions;
|
|
131
|
+
(_compilerOptions = (_json = json).compilerOptions) != null ? _compilerOptions : _json.compilerOptions = {};
|
|
132
|
+
json.compilerOptions.types = [
|
|
133
|
+
'vitest'
|
|
134
|
+
];
|
|
135
|
+
}
|
|
136
|
+
}
|
|
137
|
+
return json;
|
|
138
|
+
});
|
|
139
|
+
}
|
|
140
|
+
if (options.inSourceTests) {
|
|
141
|
+
const tsconfigLibPath = (0, _devkit.joinPathFragments)(projectRoot, 'tsconfig.lib.json');
|
|
142
|
+
const tsconfigAppPath = (0, _devkit.joinPathFragments)(projectRoot, 'tsconfig.app.json');
|
|
143
|
+
if (tree.exists(tsconfigLibPath)) {
|
|
144
|
+
(0, _devkit.updateJson)(tree, (0, _devkit.joinPathFragments)(projectRoot, 'tsconfig.lib.json'), (json)=>{
|
|
145
|
+
var _json_compilerOptions;
|
|
146
|
+
var _types;
|
|
147
|
+
((_types = (_json_compilerOptions = json.compilerOptions).types) != null ? _types : _json_compilerOptions.types = []).push('vitest/importMeta');
|
|
148
|
+
return json;
|
|
149
|
+
});
|
|
150
|
+
} else if (tree.exists(tsconfigAppPath)) {
|
|
151
|
+
(0, _devkit.updateJson)(tree, (0, _devkit.joinPathFragments)(projectRoot, 'tsconfig.app.json'), (json)=>{
|
|
152
|
+
var _json_compilerOptions;
|
|
153
|
+
var _types;
|
|
154
|
+
((_types = (_json_compilerOptions = json.compilerOptions).types) != null ? _types : _json_compilerOptions.types = []).push('vitest/importMeta');
|
|
155
|
+
return json;
|
|
156
|
+
});
|
|
157
|
+
}
|
|
158
|
+
(0, _js.addTsLibDependencies)(tree);
|
|
159
|
+
}
|
|
160
|
+
}
|
|
161
|
+
function createFiles(tree, options, projectRoot) {
|
|
162
|
+
(0, _devkit.generateFiles)(tree, (0, _path.join)(__dirname, 'files'), projectRoot, _extends._({
|
|
163
|
+
tmpl: ''
|
|
164
|
+
}, options, {
|
|
165
|
+
projectRoot,
|
|
166
|
+
offsetFromRoot: (0, _devkit.offsetFromRoot)(projectRoot)
|
|
167
|
+
}));
|
|
168
|
+
}
|
|
169
|
+
function getCoverageProviderDependency(coverageProvider) {
|
|
170
|
+
switch(coverageProvider){
|
|
171
|
+
case 'v8':
|
|
172
|
+
return {
|
|
173
|
+
'@vitest/coverage-v8': _versions.vitestCoverageV8Version
|
|
174
|
+
};
|
|
175
|
+
case 'istanbul':
|
|
176
|
+
return {
|
|
177
|
+
'@vitest/coverage-istanbul': _versions.vitestCoverageIstanbulVersion
|
|
178
|
+
};
|
|
179
|
+
default:
|
|
180
|
+
return {
|
|
181
|
+
'@vitest/coverage-v8': _versions.vitestCoverageV8Version
|
|
182
|
+
};
|
|
183
|
+
}
|
|
184
|
+
}
|
|
185
|
+
const _default = vitestGenerator;
|
|
186
|
+
|
|
187
|
+
//# sourceMappingURL=vitest-generator.js.map
|
|
@@ -0,0 +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 offsetFromRoot,\n readNxJson,\n readProjectConfiguration,\n runTasksInSerial,\n Tree,\n updateJson,\n} from '@nx/devkit';\nimport {\n addOrChangeTestTarget,\n createOrEditViteConfig,\n} from '../../utils/generator-utils';\nimport { VitestGeneratorSchema } from './schema';\n\nimport initGenerator from '../init/init';\nimport {\n vitestCoverageIstanbulVersion,\n vitestCoverageV8Version,\n} from '../../utils/versions';\n\nimport { addTsLibDependencies, initGenerator as jsInitGenerator } from '@nx/js';\nimport { join } from 'path';\nimport { ensureDependencies } from '../../utils/ensure-dependencies';\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 const tasks: GeneratorCallback[] = [];\n\n const { root, projectType } = readProjectConfiguration(tree, schema.project);\n const isRootProject = root === '.';\n\n tasks.push(await jsInitGenerator(tree, { ...schema, skipFormat: true }));\n const initTask = await initGenerator(tree, {\n skipFormat: true,\n addPlugin: schema.addPlugin,\n });\n tasks.push(initTask);\n tasks.push(ensureDependencies(tree, schema));\n\n const nxJson = readNxJson(tree);\n const hasPluginCheck = nxJson.plugins?.some(\n (p) =>\n (typeof p === 'string'\n ? p === '@nx/vite/plugin'\n : p.plugin === '@nx/vite/plugin') || hasPlugin\n );\n if (!hasPluginCheck) {\n const testTarget = schema.testTarget ?? 'test';\n addOrChangeTestTarget(tree, schema, testTarget);\n }\n\n if (!schema.skipViteConfig) {\n if (schema.uiFramework === 'react') {\n createOrEditViteConfig(\n tree,\n {\n project: schema.project,\n includeLib: projectType === 'library',\n includeVitest: true,\n inSourceTests: schema.inSourceTests,\n rollupOptionsExternal: [\n \"'react'\",\n \"'react-dom'\",\n \"'react/jsx-runtime'\",\n ],\n imports: [`import react from '@vitejs/plugin-react'`],\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: projectType === 'library',\n },\n true\n );\n }\n }\n\n createFiles(tree, schema, root);\n updateTsConfig(tree, schema, root);\n\n const coverageProviderDependency = getCoverageProviderDependency(\n schema.coverageProvider\n );\n\n const installCoverageProviderTask = addDependenciesToPackageJson(\n tree,\n {},\n coverageProviderDependency\n );\n tasks.push(installCoverageProviderTask);\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.ts', '**/*/vitest.config.ts'];`\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) {\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 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 if (options.inSourceTests) {\n const tsconfigLibPath = joinPathFragments(projectRoot, 'tsconfig.lib.json');\n const tsconfigAppPath = joinPathFragments(projectRoot, 'tsconfig.app.json');\n if (tree.exists(tsconfigLibPath)) {\n updateJson(\n tree,\n joinPathFragments(projectRoot, 'tsconfig.lib.json'),\n (json) => {\n (json.compilerOptions.types ??= []).push('vitest/importMeta');\n return json;\n }\n );\n } else if (tree.exists(tsconfigAppPath)) {\n updateJson(\n tree,\n joinPathFragments(projectRoot, 'tsconfig.app.json'),\n (json) => {\n (json.compilerOptions.types ??= []).push('vitest/importMeta');\n return json;\n }\n );\n }\n\n addTsLibDependencies(tree);\n }\n}\n\nfunction createFiles(\n tree: Tree,\n options: VitestGeneratorSchema,\n projectRoot: string\n) {\n generateFiles(tree, join(__dirname, 'files'), projectRoot, {\n tmpl: '',\n ...options,\n projectRoot,\n offsetFromRoot: offsetFromRoot(projectRoot),\n });\n}\n\nfunction getCoverageProviderDependency(\n coverageProvider: VitestGeneratorSchema['coverageProvider']\n) {\n switch (coverageProvider) {\n case 'v8':\n return {\n '@vitest/coverage-v8': vitestCoverageV8Version,\n };\n case 'istanbul':\n return {\n '@vitest/coverage-istanbul': vitestCoverageIstanbulVersion,\n };\n default:\n return {\n '@vitest/coverage-v8': vitestCoverageV8Version,\n };\n }\n}\n\nexport default vitestGenerator;\n"],"names":["vitestGenerator","vitestGeneratorInternal","tree","schema","hasPlugin","addPlugin","nxJson","tasks","root","projectType","readProjectConfiguration","project","isRootProject","push","jsInitGenerator","skipFormat","initTask","initGenerator","ensureDependencies","readNxJson","hasPluginCheck","plugins","some","p","plugin","testTarget","addOrChangeTestTarget","skipViteConfig","uiFramework","createOrEditViteConfig","includeLib","includeVitest","inSourceTests","rollupOptionsExternal","imports","coverageProvider","createFiles","updateTsConfig","coverageProviderDependency","getCoverageProviderDependency","installCoverageProviderTask","addDependenciesToPackageJson","exists","write","formatFiles","runTasksInSerial","options","projectRoot","joinPathFragments","updateJson","json","compilerOptions","types","includes","references","r","path","tsconfigLibPath","tsconfigAppPath","addTsLibDependencies","generateFiles","join","__dirname","tmpl","offsetFromRoot","vitestCoverageV8Version","vitestCoverageIstanbulVersion"],"mappings":"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"}
|
|
@@ -0,0 +1,67 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
function _export(target, all) {
|
|
3
|
+
for(var name in all)Object.defineProperty(target, name, {
|
|
4
|
+
enumerable: true,
|
|
5
|
+
get: all[name]
|
|
6
|
+
});
|
|
7
|
+
}
|
|
8
|
+
_export(exports, {
|
|
9
|
+
removeProjectsFromViteTsConfigPaths: function() {
|
|
10
|
+
return removeProjectsFromViteTsConfigPaths;
|
|
11
|
+
},
|
|
12
|
+
default: function() {
|
|
13
|
+
return _default;
|
|
14
|
+
}
|
|
15
|
+
});
|
|
16
|
+
const _devkit = require("@nx/devkit");
|
|
17
|
+
const _executoroptionsutils = require("@nx/devkit/src/generators/executor-options-utils");
|
|
18
|
+
const _tsquery = require("@phenomnomnominal/tsquery");
|
|
19
|
+
const _js = require("@nx/js");
|
|
20
|
+
const _generatorutils = require("../../utils/generator-utils");
|
|
21
|
+
const ts = require("typescript");
|
|
22
|
+
async function removeProjectsFromViteTsConfigPaths(tree) {
|
|
23
|
+
findAllProjectsWithViteConfig(tree);
|
|
24
|
+
await (0, _devkit.formatFiles)(tree);
|
|
25
|
+
}
|
|
26
|
+
const _default = removeProjectsFromViteTsConfigPaths;
|
|
27
|
+
function findAllProjectsWithViteConfig(tree) {
|
|
28
|
+
(0, _executoroptionsutils.forEachExecutorOptions)(tree, '@nrwl/vite:build', (options, project)=>{
|
|
29
|
+
const projectConfiguration = (0, _devkit.readProjectConfiguration)(tree, project);
|
|
30
|
+
const viteConfig = (0, _generatorutils.normalizeViteConfigFilePathWithTree)(tree, projectConfiguration.root, options == null ? void 0 : options['configFile']);
|
|
31
|
+
if (viteConfig) {
|
|
32
|
+
var _defineConfig_;
|
|
33
|
+
const appFileContent = tree.read(viteConfig, 'utf-8');
|
|
34
|
+
const file = _tsquery.tsquery.ast(appFileContent);
|
|
35
|
+
let newContents = appFileContent;
|
|
36
|
+
const defineConfig = _tsquery.tsquery.query(file, 'CallExpression:has(Identifier[name="defineConfig"])');
|
|
37
|
+
let startOfProjects, endOfProjects;
|
|
38
|
+
defineConfig == null ? void 0 : (_defineConfig_ = defineConfig[0]) == null ? void 0 : _defineConfig_.getChildren().forEach((defineConfigContentNode)=>{
|
|
39
|
+
// Make sure it's the one we are looking for
|
|
40
|
+
// We cannot assume that it's called tsConfigPaths
|
|
41
|
+
// So make sure it includes `projects` and `root`
|
|
42
|
+
if (defineConfigContentNode.getText().includes('projects') && defineConfigContentNode.getText().includes('root')) {
|
|
43
|
+
(0, _js.findNodes)(defineConfigContentNode, [
|
|
44
|
+
ts.SyntaxKind.PropertyAssignment
|
|
45
|
+
]).forEach((nodePA)=>{
|
|
46
|
+
if (nodePA.getText().startsWith('projects')) {
|
|
47
|
+
startOfProjects = nodePA.getStart();
|
|
48
|
+
endOfProjects = nodePA.getEnd();
|
|
49
|
+
}
|
|
50
|
+
});
|
|
51
|
+
}
|
|
52
|
+
});
|
|
53
|
+
if (startOfProjects && endOfProjects) {
|
|
54
|
+
newContents = (0, _devkit.applyChangesToString)(newContents, [
|
|
55
|
+
{
|
|
56
|
+
type: _devkit.ChangeType.Delete,
|
|
57
|
+
start: startOfProjects,
|
|
58
|
+
length: endOfProjects - startOfProjects + 1
|
|
59
|
+
}
|
|
60
|
+
]);
|
|
61
|
+
tree.write(viteConfig, newContents);
|
|
62
|
+
}
|
|
63
|
+
}
|
|
64
|
+
});
|
|
65
|
+
}
|
|
66
|
+
|
|
67
|
+
//# sourceMappingURL=update-vite-tsconfig-paths.js.map
|