@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.
Files changed (170) hide show
  1. package/LICENSE +22 -0
  2. package/README.md +68 -0
  3. package/executors.d.ts +8 -0
  4. package/executors.js +27 -0
  5. package/executors.js.map +1 -0
  6. package/executors.json +46 -0
  7. package/generators.json +25 -0
  8. package/index.d.ts +8 -0
  9. package/index.js +26 -0
  10. package/index.js.map +1 -0
  11. package/migrations.json +253 -0
  12. package/package.json +62 -0
  13. package/plugin.d.ts +1 -0
  14. package/plugin.js +21 -0
  15. package/plugin.js.map +1 -0
  16. package/plugins/nx-tsconfig-paths.plugin.d.ts +24 -0
  17. package/plugins/nx-tsconfig-paths.plugin.js +132 -0
  18. package/plugins/nx-tsconfig-paths.plugin.js.map +1 -0
  19. package/plugins/rollup-replace-files.plugin.d.ts +16 -0
  20. package/plugins/rollup-replace-files.plugin.js +51 -0
  21. package/plugins/rollup-replace-files.plugin.js.map +1 -0
  22. package/src/executors/build/build.impl.d.ts +13 -0
  23. package/src/executors/build/build.impl.js +187 -0
  24. package/src/executors/build/build.impl.js.map +1 -0
  25. package/src/executors/build/compat.d.ts +2 -0
  26. package/src/executors/build/compat.js +12 -0
  27. package/src/executors/build/compat.js.map +1 -0
  28. package/src/executors/build/schema.d.js +3 -0
  29. package/src/executors/build/schema.d.js.map +1 -0
  30. package/src/executors/build/schema.d.ts +10 -0
  31. package/src/executors/build/schema.json +67 -0
  32. package/src/executors/dev-server/compat.d.ts +2 -0
  33. package/src/executors/dev-server/compat.js +12 -0
  34. package/src/executors/dev-server/compat.js.map +1 -0
  35. package/src/executors/dev-server/dev-server.impl.d.ts +7 -0
  36. package/src/executors/dev-server/dev-server.impl.js +136 -0
  37. package/src/executors/dev-server/dev-server.impl.js.map +1 -0
  38. package/src/executors/dev-server/schema.d.js +3 -0
  39. package/src/executors/dev-server/schema.d.js.map +1 -0
  40. package/src/executors/dev-server/schema.d.ts +5 -0
  41. package/src/executors/dev-server/schema.json +38 -0
  42. package/src/executors/preview-server/compat.d.ts +2 -0
  43. package/src/executors/preview-server/compat.js +12 -0
  44. package/src/executors/preview-server/compat.js.map +1 -0
  45. package/src/executors/preview-server/preview-server.impl.d.ts +7 -0
  46. package/src/executors/preview-server/preview-server.impl.js +176 -0
  47. package/src/executors/preview-server/preview-server.impl.js.map +1 -0
  48. package/src/executors/preview-server/schema.d.js +3 -0
  49. package/src/executors/preview-server/schema.d.js.map +1 -0
  50. package/src/executors/preview-server/schema.d.ts +5 -0
  51. package/src/executors/preview-server/schema.json +37 -0
  52. package/src/executors/test/compat.d.ts +2 -0
  53. package/src/executors/test/compat.js +12 -0
  54. package/src/executors/test/compat.js.map +1 -0
  55. package/src/executors/test/lib/nx-reporter.d.ts +14 -0
  56. package/src/executors/test/lib/nx-reporter.js +40 -0
  57. package/src/executors/test/lib/nx-reporter.js.map +1 -0
  58. package/src/executors/test/lib/utils.d.ts +4 -0
  59. package/src/executors/test/lib/utils.js +77 -0
  60. package/src/executors/test/lib/utils.js.map +1 -0
  61. package/src/executors/test/schema.d.js +3 -0
  62. package/src/executors/test/schema.d.js.map +1 -0
  63. package/src/executors/test/schema.d.ts +7 -0
  64. package/src/executors/test/schema.json +36 -0
  65. package/src/executors/test/vitest.impl.d.ts +6 -0
  66. package/src/executors/test/vitest.impl.js +67 -0
  67. package/src/executors/test/vitest.impl.js.map +1 -0
  68. package/src/generators/configuration/configuration.d.ts +5 -0
  69. package/src/generators/configuration/configuration.js +147 -0
  70. package/src/generators/configuration/configuration.js.map +1 -0
  71. package/src/generators/configuration/lib/convert-non-vite.d.ts +5 -0
  72. package/src/generators/configuration/lib/convert-non-vite.js +62 -0
  73. package/src/generators/configuration/lib/convert-non-vite.js.map +1 -0
  74. package/src/generators/configuration/schema.d.js +3 -0
  75. package/src/generators/configuration/schema.d.js.map +1 -0
  76. package/src/generators/configuration/schema.d.ts +12 -0
  77. package/src/generators/configuration/schema.json +61 -0
  78. package/src/generators/init/init.d.ts +6 -0
  79. package/src/generators/init/init.js +82 -0
  80. package/src/generators/init/init.js.map +1 -0
  81. package/src/generators/init/lib/utils.d.ts +6 -0
  82. package/src/generators/init/lib/utils.js +80 -0
  83. package/src/generators/init/lib/utils.js.map +1 -0
  84. package/src/generators/init/schema.d.js +3 -0
  85. package/src/generators/init/schema.d.js.map +1 -0
  86. package/src/generators/init/schema.d.ts +7 -0
  87. package/src/generators/init/schema.json +31 -0
  88. package/src/generators/vitest/files/tsconfig.spec.json__tmpl__ +20 -0
  89. package/src/generators/vitest/schema.d.js +3 -0
  90. package/src/generators/vitest/schema.d.js.map +1 -0
  91. package/src/generators/vitest/schema.d.ts +11 -0
  92. package/src/generators/vitest/schema.json +56 -0
  93. package/src/generators/vitest/vitest-generator.d.ts +5 -0
  94. package/src/generators/vitest/vitest-generator.js +187 -0
  95. package/src/generators/vitest/vitest-generator.js.map +1 -0
  96. package/src/migrations/update-15-3-1/update-vite-tsconfig-paths.d.ts +3 -0
  97. package/src/migrations/update-15-3-1/update-vite-tsconfig-paths.js +67 -0
  98. package/src/migrations/update-15-3-1/update-vite-tsconfig-paths.js.map +1 -0
  99. package/src/migrations/update-15-3-4/set-mode-in-configuration.d.ts +3 -0
  100. package/src/migrations/update-15-3-4/set-mode-in-configuration.js +37 -0
  101. package/src/migrations/update-15-3-4/set-mode-in-configuration.js.map +1 -0
  102. package/src/migrations/update-15-4-3/update-report-directory.d.ts +3 -0
  103. package/src/migrations/update-15-4-3/update-report-directory.js +39 -0
  104. package/src/migrations/update-15-4-3/update-report-directory.js.map +1 -0
  105. package/src/migrations/update-16-0-0-add-nx-packages/update-16-0-0-add-nx-packages.d.ts +2 -0
  106. package/src/migrations/update-16-0-0-add-nx-packages/update-16-0-0-add-nx-packages.js +15 -0
  107. package/src/migrations/update-16-0-0-add-nx-packages/update-16-0-0-add-nx-packages.js.map +1 -0
  108. package/src/migrations/update-16-4-1-update-test-file-config/update-16-4-1-test-file-config.d.ts +2 -0
  109. package/src/migrations/update-16-4-1-update-test-file-config/update-16-4-1-test-file-config.js +35 -0
  110. package/src/migrations/update-16-4-1-update-test-file-config/update-16-4-1-test-file-config.js.map +1 -0
  111. package/src/migrations/update-16-6-0-change-ts-paths-plugin/change-ts-paths-plugin.d.ts +2 -0
  112. package/src/migrations/update-16-6-0-change-ts-paths-plugin/change-ts-paths-plugin.js +39 -0
  113. package/src/migrations/update-16-6-0-change-ts-paths-plugin/change-ts-paths-plugin.js.map +1 -0
  114. package/src/migrations/update-17-1-0/move-target-defaults.d.ts +2 -0
  115. package/src/migrations/update-17-1-0/move-target-defaults.js +77 -0
  116. package/src/migrations/update-17-1-0/move-target-defaults.js.map +1 -0
  117. package/src/migrations/update-17-2-0/lib/add-file-replacements.d.ts +2 -0
  118. package/src/migrations/update-17-2-0/lib/add-file-replacements.js +67 -0
  119. package/src/migrations/update-17-2-0/lib/add-file-replacements.js.map +1 -0
  120. package/src/migrations/update-17-2-0/lib/edit-build-config.d.ts +2 -0
  121. package/src/migrations/update-17-2-0/lib/edit-build-config.js +121 -0
  122. package/src/migrations/update-17-2-0/lib/edit-build-config.js.map +1 -0
  123. package/src/migrations/update-17-2-0/lib/edit-test-config.d.ts +2 -0
  124. package/src/migrations/update-17-2-0/lib/edit-test-config.js +83 -0
  125. package/src/migrations/update-17-2-0/lib/edit-test-config.js.map +1 -0
  126. package/src/migrations/update-17-2-0/update-vite-config.d.ts +5 -0
  127. package/src/migrations/update-17-2-0/update-vite-config.js +68 -0
  128. package/src/migrations/update-17-2-0/update-vite-config.js.map +1 -0
  129. package/src/migrations/update-17-3-0/lib/fix-coverage-and-reporters.d.ts +3 -0
  130. package/src/migrations/update-17-3-0/lib/fix-coverage-and-reporters.js +117 -0
  131. package/src/migrations/update-17-3-0/lib/fix-coverage-and-reporters.js.map +1 -0
  132. package/src/migrations/update-17-3-0/vitest-coverage-and-reporters.d.ts +2 -0
  133. package/src/migrations/update-17-3-0/vitest-coverage-and-reporters.js +45 -0
  134. package/src/migrations/update-17-3-0/vitest-coverage-and-reporters.js.map +1 -0
  135. package/src/plugins/plugin.d.ts +10 -0
  136. package/src/plugins/plugin.js +223 -0
  137. package/src/plugins/plugin.js.map +1 -0
  138. package/src/utils/ensure-dependencies.d.ts +8 -0
  139. package/src/utils/ensure-dependencies.js +34 -0
  140. package/src/utils/ensure-dependencies.js.map +1 -0
  141. package/src/utils/executor-utils.d.ts +11 -0
  142. package/src/utils/executor-utils.js +59 -0
  143. package/src/utils/executor-utils.js.map +1 -0
  144. package/src/utils/find-vite-config.d.ts +3 -0
  145. package/src/utils/find-vite-config.js +46 -0
  146. package/src/utils/find-vite-config.js.map +1 -0
  147. package/src/utils/generator-utils.d.ts +42 -0
  148. package/src/utils/generator-utils.js +527 -0
  149. package/src/utils/generator-utils.js.map +1 -0
  150. package/src/utils/options-utils.d.ts +17 -0
  151. package/src/utils/options-utils.js +100 -0
  152. package/src/utils/options-utils.js.map +1 -0
  153. package/src/utils/test-files/angular-project.config.json +89 -0
  154. package/src/utils/test-files/react-lib-non-buildable-jest.json +22 -0
  155. package/src/utils/test-files/react-lib-non-buildable-vitest.json +22 -0
  156. package/src/utils/test-files/react-mixed-project.config.json +47 -0
  157. package/src/utils/test-files/react-vite-project.config.json +54 -0
  158. package/src/utils/test-files/test-vite-configs.d.ts +31 -0
  159. package/src/utils/test-files/test-vite-configs.js +291 -0
  160. package/src/utils/test-files/test-vite-configs.js.map +1 -0
  161. package/src/utils/test-files/unknown-project.config.json +69 -0
  162. package/src/utils/test-utils.d.ts +9 -0
  163. package/src/utils/test-utils.js +522 -0
  164. package/src/utils/test-utils.js.map +1 -0
  165. package/src/utils/versions.d.ts +11 -0
  166. package/src/utils/versions.js +55 -0
  167. package/src/utils/versions.js.map +1 -0
  168. package/src/utils/vite-config-edit-utils.d.ts +3 -0
  169. package/src/utils/vite-config-edit-utils.js +314 -0
  170. package/src/utils/vite-config-edit-utils.js.map +1 -0
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../../../../packages/vite/src/migrations/update-15-3-1/update-vite-tsconfig-paths.ts"],"sourcesContent":["import {\n applyChangesToString,\n ChangeType,\n formatFiles,\n readProjectConfiguration,\n Tree,\n} from '@nx/devkit';\nimport { forEachExecutorOptions } from '@nx/devkit/src/generators/executor-options-utils';\nimport { tsquery } from '@phenomnomnominal/tsquery';\nimport { findNodes } from '@nx/js';\nimport { normalizeViteConfigFilePathWithTree } from '../../utils/generator-utils';\nimport ts = require('typescript');\n\nexport async function removeProjectsFromViteTsConfigPaths(tree: Tree) {\n findAllProjectsWithViteConfig(tree);\n await formatFiles(tree);\n}\n\nexport default removeProjectsFromViteTsConfigPaths;\n\nfunction findAllProjectsWithViteConfig(tree: Tree): void {\n forEachExecutorOptions(tree, '@nrwl/vite:build', (options, project) => {\n const projectConfiguration = readProjectConfiguration(tree, project);\n const viteConfig = normalizeViteConfigFilePathWithTree(\n tree,\n projectConfiguration.root,\n options?.['configFile']\n );\n if (viteConfig) {\n const appFileContent = tree.read(viteConfig, 'utf-8');\n const file = tsquery.ast(appFileContent);\n let newContents = appFileContent;\n const defineConfig = tsquery.query(\n file,\n 'CallExpression:has(Identifier[name=\"defineConfig\"])'\n );\n let startOfProjects, endOfProjects;\n\n defineConfig?.[0]\n ?.getChildren()\n .forEach((defineConfigContentNode: any) => {\n // Make sure it's the one we are looking for\n // We cannot assume that it's called tsConfigPaths\n // So make sure it includes `projects` and `root`\n if (\n defineConfigContentNode.getText().includes('projects') &&\n defineConfigContentNode.getText().includes('root')\n ) {\n findNodes(defineConfigContentNode, [\n ts.SyntaxKind.PropertyAssignment,\n ]).forEach((nodePA) => {\n if (nodePA.getText().startsWith('projects')) {\n startOfProjects = nodePA.getStart();\n endOfProjects = nodePA.getEnd();\n }\n });\n }\n });\n\n if (startOfProjects && endOfProjects) {\n newContents = applyChangesToString(newContents, [\n {\n type: ChangeType.Delete,\n start: startOfProjects,\n length: endOfProjects - startOfProjects + 1,\n },\n ]);\n tree.write(viteConfig, newContents);\n }\n }\n });\n}\n"],"names":["removeProjectsFromViteTsConfigPaths","ts","tree","findAllProjectsWithViteConfig","formatFiles","forEachExecutorOptions","options","project","projectConfiguration","readProjectConfiguration","viteConfig","normalizeViteConfigFilePathWithTree","root","defineConfig","appFileContent","read","file","tsquery","ast","newContents","query","startOfProjects","endOfProjects","getChildren","forEach","defineConfigContentNode","getText","includes","findNodes","SyntaxKind","PropertyAssignment","nodePA","startsWith","getStart","getEnd","applyChangesToString","type","ChangeType","Delete","start","length","write"],"mappings":";;;;;;;;IAasBA,mCAAmC;eAAnCA;;IAKtB,OAAmD;eAAnD;;;wBAZO;sCACgC;yBACf;oBACE;gCAC0B;AACpD,MAAOC,aAAa;AAEb,eAAeD,oCAAoCE,IAAU;IAClEC,8BAA8BD;IAC9B,MAAME,IAAAA,mBAAW,EAACF;AACpB;MAEA,WAAeF;AAEf,SAASG,8BAA8BD,IAAU;IAC/CG,IAAAA,4CAAsB,EAACH,MAAM,oBAAoB,CAACI,SAASC;QACzD,MAAMC,uBAAuBC,IAAAA,gCAAwB,EAACP,MAAMK;QAC5D,MAAMG,aAAaC,IAAAA,mDAAmC,EACpDT,MACAM,qBAAqBI,IAAI,EACzBN,2BAAAA,OAAS,CAAC,aAAa;QAEzB,IAAII,YAAY;gBAUdG;YATA,MAAMC,iBAAiBZ,KAAKa,IAAI,CAACL,YAAY;YAC7C,MAAMM,OAAOC,gBAAO,CAACC,GAAG,CAACJ;YACzB,IAAIK,cAAcL;YAClB,MAAMD,eAAeI,gBAAO,CAACG,KAAK,CAChCJ,MACA;YAEF,IAAIK,iBAAiBC;YAErBT,iCAAAA,iBAAAA,YAAc,CAAC,EAAE,qBAAjBA,eACIU,WAAW,GACZC,OAAO,CAAC,CAACC;gBACR,4CAA4C;gBAC5C,kDAAkD;gBAClD,iDAAiD;gBACjD,IACEA,wBAAwBC,OAAO,GAAGC,QAAQ,CAAC,eAC3CF,wBAAwBC,OAAO,GAAGC,QAAQ,CAAC,SAC3C;oBACAC,IAAAA,aAAS,EAACH,yBAAyB;wBACjCxB,GAAG4B,UAAU,CAACC,kBAAkB;qBACjC,EAAEN,OAAO,CAAC,CAACO;wBACV,IAAIA,OAAOL,OAAO,GAAGM,UAAU,CAAC,aAAa;4BAC3CX,kBAAkBU,OAAOE,QAAQ;4BACjCX,gBAAgBS,OAAOG,MAAM;wBAC/B;oBACF;gBACF;YACF;YAEF,IAAIb,mBAAmBC,eAAe;gBACpCH,cAAcgB,IAAAA,4BAAoB,EAAChB,aAAa;oBAC9C;wBACEiB,MAAMC,kBAAU,CAACC,MAAM;wBACvBC,OAAOlB;wBACPmB,QAAQlB,gBAAgBD,kBAAkB;oBAC5C;iBACD;gBACDnB,KAAKuC,KAAK,CAAC/B,YAAYS;YACzB;QACF;IACF;AACF"}
@@ -0,0 +1,3 @@
1
+ import { Tree } from '@nx/devkit';
2
+ export declare function setModeInConfiguration(tree: Tree): Promise<void>;
3
+ export default setModeInConfiguration;
@@ -0,0 +1,37 @@
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
+ setModeInConfiguration: function() {
10
+ return setModeInConfiguration;
11
+ },
12
+ default: function() {
13
+ return _default;
14
+ }
15
+ });
16
+ const _extends = require("@swc/helpers/_/_extends");
17
+ const _devkit = require("@nx/devkit");
18
+ const _executoroptionsutils = require("@nx/devkit/src/generators/executor-options-utils");
19
+ async function setModeInConfiguration(tree) {
20
+ forAllProjectsUsingViteAddMode(tree);
21
+ await (0, _devkit.formatFiles)(tree);
22
+ }
23
+ const _default = setModeInConfiguration;
24
+ function forAllProjectsUsingViteAddMode(tree) {
25
+ (0, _executoroptionsutils.forEachExecutorOptions)(tree, '@nrwl/vite:build', (_options, projectName, targetName, configuration)=>{
26
+ var _projectConfiguration_targets_targetName_configurations_configuration;
27
+ if (!configuration) {
28
+ return;
29
+ }
30
+ const projectConfiguration = (0, _devkit.readProjectConfiguration)(tree, projectName);
31
+ var _mode;
32
+ (_mode = (_projectConfiguration_targets_targetName_configurations_configuration = projectConfiguration.targets[targetName].configurations[configuration]).mode) != null ? _mode : _projectConfiguration_targets_targetName_configurations_configuration.mode = configuration;
33
+ (0, _devkit.updateProjectConfiguration)(tree, projectName, _extends._({}, projectConfiguration));
34
+ });
35
+ }
36
+
37
+ //# sourceMappingURL=set-mode-in-configuration.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../../../../packages/vite/src/migrations/update-15-3-4/set-mode-in-configuration.ts"],"sourcesContent":["import {\n formatFiles,\n readProjectConfiguration,\n Tree,\n updateProjectConfiguration,\n} from '@nx/devkit';\nimport { forEachExecutorOptions } from '@nx/devkit/src/generators/executor-options-utils';\n\nexport async function setModeInConfiguration(tree: Tree) {\n forAllProjectsUsingViteAddMode(tree);\n await formatFiles(tree);\n}\n\nexport default setModeInConfiguration;\n\nfunction forAllProjectsUsingViteAddMode(tree: Tree): void {\n forEachExecutorOptions(\n tree,\n '@nrwl/vite:build',\n (_options, projectName, targetName, configuration) => {\n if (!configuration) {\n return;\n }\n\n const projectConfiguration = readProjectConfiguration(tree, projectName);\n projectConfiguration.targets[targetName].configurations[\n configuration\n ].mode ??= configuration;\n\n updateProjectConfiguration(tree, projectName, {\n ...projectConfiguration,\n });\n }\n );\n}\n"],"names":["setModeInConfiguration","tree","forAllProjectsUsingViteAddMode","formatFiles","forEachExecutorOptions","_options","projectName","targetName","configuration","projectConfiguration","readProjectConfiguration","targets","configurations","mode","updateProjectConfiguration"],"mappings":";;;;;;;;IAQsBA,sBAAsB;eAAtBA;;IAKtB,OAAsC;eAAtC;;;;wBARO;sCACgC;AAEhC,eAAeA,uBAAuBC,IAAU;IACrDC,+BAA+BD;IAC/B,MAAME,IAAAA,mBAAW,EAACF;AACpB;MAEA,WAAeD;AAEf,SAASE,+BAA+BD,IAAU;IAChDG,IAAAA,4CAAsB,EACpBH,MACA,oBACA,CAACI,UAAUC,aAAaC,YAAYC;YAMlCC;QALA,IAAI,CAACD,eAAe;YAClB;QACF;QAEA,MAAMC,uBAAuBC,IAAAA,gCAAwB,EAACT,MAAMK;;QAC5DG,UAAAA,wEAAAA,qBAAqBE,OAAO,CAACJ,WAAW,CAACK,cAAc,CACrDJ,cACD,EAACK,wBAFFJ,sEAEEI,OAASL;QAEXM,IAAAA,kCAA0B,EAACb,MAAMK,aAAa,eACzCG;IAEP;AAEJ"}
@@ -0,0 +1,3 @@
1
+ import { Tree } from '@nx/devkit';
2
+ export declare function updateReportDirectoryPlaceholders(tree: Tree): void;
3
+ export default updateReportDirectoryPlaceholders;
@@ -0,0 +1,39 @@
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
+ updateReportDirectoryPlaceholders: function() {
10
+ return updateReportDirectoryPlaceholders;
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
+ function updateReportDirectoryPlaceholders(tree) {
19
+ const projects = (0, _devkit.getProjects)(tree);
20
+ (0, _executoroptionsutils.forEachExecutorOptions)(tree, '@nrwl/vite:test', (options, projectName, targetName, configName)=>{
21
+ const projectConfig = projects.get(projectName);
22
+ const coverageOutput = projectConfig.root === '.' ? projectName : projectConfig.root;
23
+ if (options.reportsDirectory) {
24
+ options.reportsDirectory = options.reportsDirectory.replace('{workspaceRoot}/', projectConfig.root === '.' ? '' : (0, _devkit.offsetFromRoot)(projectConfig.root)).replace('{projectRoot}', coverageOutput);
25
+ if (configName) {
26
+ projectConfig.targets[targetName].configurations[configName] = options;
27
+ } else {
28
+ projectConfig.targets[targetName].options = options;
29
+ }
30
+ if (projectConfig.targets[targetName].outputs) {
31
+ projectConfig.targets[targetName].outputs = projectConfig.targets[targetName].outputs.map((output)=>output.replace('{projectRoot}/coverage', `coverage/${coverageOutput}`));
32
+ }
33
+ (0, _devkit.updateProjectConfiguration)(tree, projectName, projectConfig);
34
+ }
35
+ });
36
+ }
37
+ const _default = updateReportDirectoryPlaceholders;
38
+
39
+ //# sourceMappingURL=update-report-directory.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../../../../packages/vite/src/migrations/update-15-4-3/update-report-directory.ts"],"sourcesContent":["import {\n getProjects,\n offsetFromRoot,\n Tree,\n updateProjectConfiguration,\n} from '@nx/devkit';\nimport { forEachExecutorOptions } from '@nx/devkit/src/generators/executor-options-utils';\nimport { VitestExecutorOptions } from '../../executors/test/schema';\n\nexport function updateReportDirectoryPlaceholders(tree: Tree) {\n const projects = getProjects(tree);\n forEachExecutorOptions<VitestExecutorOptions>(\n tree,\n '@nrwl/vite:test',\n (options, projectName, targetName, configName) => {\n const projectConfig = projects.get(projectName);\n const coverageOutput =\n projectConfig.root === '.' ? projectName : projectConfig.root;\n\n if (options.reportsDirectory) {\n options.reportsDirectory = options.reportsDirectory\n .replace(\n '{workspaceRoot}/',\n projectConfig.root === '.' ? '' : offsetFromRoot(projectConfig.root)\n )\n .replace('{projectRoot}', coverageOutput);\n if (configName) {\n projectConfig.targets[targetName].configurations[configName] =\n options;\n } else {\n projectConfig.targets[targetName].options = options;\n }\n if (projectConfig.targets[targetName].outputs) {\n projectConfig.targets[targetName].outputs = projectConfig.targets[\n targetName\n ].outputs.map((output) =>\n output.replace(\n '{projectRoot}/coverage',\n `coverage/${coverageOutput}`\n )\n );\n }\n updateProjectConfiguration(tree, projectName, projectConfig);\n }\n }\n );\n}\n\nexport default updateReportDirectoryPlaceholders;\n"],"names":["updateReportDirectoryPlaceholders","tree","projects","getProjects","forEachExecutorOptions","options","projectName","targetName","configName","projectConfig","get","coverageOutput","root","reportsDirectory","replace","offsetFromRoot","targets","configurations","outputs","map","output","updateProjectConfiguration"],"mappings":";;;;;;;;IASgBA,iCAAiC;eAAjCA;;IAuChB,OAAiD;eAAjD;;;wBA3CO;sCACgC;AAGhC,SAASA,kCAAkCC,IAAU;IAC1D,MAAMC,WAAWC,IAAAA,mBAAW,EAACF;IAC7BG,IAAAA,4CAAsB,EACpBH,MACA,mBACA,CAACI,SAASC,aAAaC,YAAYC;QACjC,MAAMC,gBAAgBP,SAASQ,GAAG,CAACJ;QACnC,MAAMK,iBACJF,cAAcG,IAAI,KAAK,MAAMN,cAAcG,cAAcG,IAAI;QAE/D,IAAIP,QAAQQ,gBAAgB,EAAE;YAC5BR,QAAQQ,gBAAgB,GAAGR,QAAQQ,gBAAgB,CAChDC,OAAO,CACN,oBACAL,cAAcG,IAAI,KAAK,MAAM,KAAKG,IAAAA,sBAAc,EAACN,cAAcG,IAAI,GAEpEE,OAAO,CAAC,iBAAiBH;YAC5B,IAAIH,YAAY;gBACdC,cAAcO,OAAO,CAACT,WAAW,CAACU,cAAc,CAACT,WAAW,GAC1DH;YACJ,OAAO;gBACLI,cAAcO,OAAO,CAACT,WAAW,CAACF,OAAO,GAAGA;YAC9C;YACA,IAAII,cAAcO,OAAO,CAACT,WAAW,CAACW,OAAO,EAAE;gBAC7CT,cAAcO,OAAO,CAACT,WAAW,CAACW,OAAO,GAAGT,cAAcO,OAAO,CAC/DT,WACD,CAACW,OAAO,CAACC,GAAG,CAAC,CAACC,SACbA,OAAON,OAAO,CACZ,0BACA,CAAC,SAAS,EAAEH,eAAe,CAAC;YAGlC;YACAU,IAAAA,kCAA0B,EAACpB,MAAMK,aAAaG;QAChD;IACF;AAEJ;MAEA,WAAeT"}
@@ -0,0 +1,2 @@
1
+ import { Tree } from '@nx/devkit';
2
+ export default function replacePackage(tree: Tree): Promise<void>;
@@ -0,0 +1,15 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "default", {
3
+ enumerable: true,
4
+ get: function() {
5
+ return replacePackage;
6
+ }
7
+ });
8
+ const _devkit = require("@nx/devkit");
9
+ const _replacepackage = require("@nx/devkit/src/utils/replace-package");
10
+ async function replacePackage(tree) {
11
+ await (0, _replacepackage.replaceNrwlPackageWithNxPackage)(tree, '@nrwl/vite', '@nx/vite');
12
+ await (0, _devkit.formatFiles)(tree);
13
+ }
14
+
15
+ //# sourceMappingURL=update-16-0-0-add-nx-packages.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../../../../packages/vite/src/migrations/update-16-0-0-add-nx-packages/update-16-0-0-add-nx-packages.ts"],"sourcesContent":["import { Tree, formatFiles } from '@nx/devkit';\nimport { replaceNrwlPackageWithNxPackage } from '@nx/devkit/src/utils/replace-package';\n\nexport default async function replacePackage(tree: Tree): Promise<void> {\n await replaceNrwlPackageWithNxPackage(tree, '@nrwl/vite', '@nx/vite');\n\n await formatFiles(tree);\n}\n"],"names":["replacePackage","tree","replaceNrwlPackageWithNxPackage","formatFiles"],"mappings":";+BAGA;;;eAA8BA;;;wBAHI;gCACc;AAEjC,eAAeA,eAAeC,IAAU;IACrD,MAAMC,IAAAA,+CAA+B,EAACD,MAAM,cAAc;IAE1D,MAAME,IAAAA,mBAAW,EAACF;AACpB"}
@@ -0,0 +1,2 @@
1
+ import { Tree } from '@nx/devkit';
2
+ export default function update(tree: Tree): void;
@@ -0,0 +1,35 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "default", {
3
+ enumerable: true,
4
+ get: function() {
5
+ return update;
6
+ }
7
+ });
8
+ const _extends = require("@swc/helpers/_/_extends");
9
+ const _devkit = require("@nx/devkit");
10
+ const _executoroptionsutils = require("@nx/devkit/src/generators/executor-options-utils");
11
+ function update(tree) {
12
+ const projects = (0, _devkit.getProjects)(tree);
13
+ (0, _executoroptionsutils.forEachExecutorOptions)(tree, '@nx/vite:test', (options, projectName, targetName, configuration)=>{
14
+ const projectConfig = projects.get(projectName);
15
+ if (!options.testFile) {
16
+ return;
17
+ }
18
+ const newTestFileArgs = [
19
+ options.testFile
20
+ ];
21
+ delete options.testFile;
22
+ if (configuration) {
23
+ projectConfig.targets[targetName].configurations[configuration] = _extends._({}, options, {
24
+ testFiles: newTestFileArgs
25
+ });
26
+ } else {
27
+ projectConfig.targets[targetName].options = _extends._({}, options, {
28
+ testFiles: newTestFileArgs
29
+ });
30
+ }
31
+ (0, _devkit.updateProjectConfiguration)(tree, projectName, projectConfig);
32
+ });
33
+ }
34
+
35
+ //# sourceMappingURL=update-16-4-1-test-file-config.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../../../../packages/vite/src/migrations/update-16-4-1-update-test-file-config/update-16-4-1-test-file-config.ts"],"sourcesContent":["import { Tree, getProjects, updateProjectConfiguration } from '@nx/devkit';\nimport { forEachExecutorOptions } from '@nx/devkit/src/generators/executor-options-utils';\nimport { VitestExecutorOptions } from '../../executors/test/schema';\n\ntype OldVitestExecutorOptions = Omit<VitestExecutorOptions, 'testFiles'> & {\n testFile: string;\n};\n\nexport default function update(tree: Tree) {\n const projects = getProjects(tree);\n\n forEachExecutorOptions<OldVitestExecutorOptions>(\n tree,\n '@nx/vite:test',\n (options, projectName, targetName, configuration) => {\n const projectConfig = projects.get(projectName);\n\n if (!options.testFile) {\n return;\n }\n\n const newTestFileArgs = [options.testFile];\n\n delete options.testFile;\n\n if (configuration) {\n projectConfig.targets[targetName].configurations[configuration] = {\n ...options,\n testFiles: newTestFileArgs,\n };\n } else {\n projectConfig.targets[targetName].options = {\n ...options,\n testFiles: newTestFileArgs,\n };\n }\n\n updateProjectConfiguration(tree, projectName, projectConfig);\n }\n );\n}\n"],"names":["update","tree","projects","getProjects","forEachExecutorOptions","options","projectName","targetName","configuration","projectConfig","get","testFile","newTestFileArgs","targets","configurations","testFiles","updateProjectConfiguration"],"mappings":";+BAQA;;;eAAwBA;;;;wBARsC;sCACvB;AAOxB,SAASA,OAAOC,IAAU;IACvC,MAAMC,WAAWC,IAAAA,mBAAW,EAACF;IAE7BG,IAAAA,4CAAsB,EACpBH,MACA,iBACA,CAACI,SAASC,aAAaC,YAAYC;QACjC,MAAMC,gBAAgBP,SAASQ,GAAG,CAACJ;QAEnC,IAAI,CAACD,QAAQM,QAAQ,EAAE;YACrB;QACF;QAEA,MAAMC,kBAAkB;YAACP,QAAQM,QAAQ;SAAC;QAE1C,OAAON,QAAQM,QAAQ;QAEvB,IAAIH,eAAe;YACjBC,cAAcI,OAAO,CAACN,WAAW,CAACO,cAAc,CAACN,cAAc,GAAG,eAC7DH;gBACHU,WAAWH;;QAEf,OAAO;YACLH,cAAcI,OAAO,CAACN,WAAW,CAACF,OAAO,GAAG,eACvCA;gBACHU,WAAWH;;QAEf;QAEAI,IAAAA,kCAA0B,EAACf,MAAMK,aAAaG;IAChD;AAEJ"}
@@ -0,0 +1,2 @@
1
+ import { Tree } from '@nx/devkit';
2
+ export default function update(tree: Tree): void;
@@ -0,0 +1,39 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "default", {
3
+ enumerable: true,
4
+ get: function() {
5
+ return update;
6
+ }
7
+ });
8
+ const _devkit = require("@nx/devkit");
9
+ const _executoroptionsutils = require("@nx/devkit/src/generators/executor-options-utils");
10
+ const _tsquery = require("@phenomnomnominal/tsquery");
11
+ const _findviteconfig = require("../../utils/find-vite-config");
12
+ function update(tree) {
13
+ const projects = (0, _devkit.getProjects)(tree);
14
+ (0, _executoroptionsutils.forEachExecutorOptions)(tree, '@nx/vite:build', (options, projectName)=>{
15
+ var _oldTsConfigPathPlugin__importClause_name, _oldTsConfigPathPlugin__importClause, _oldTsConfigPathPlugin_;
16
+ const projectConfig = projects.get(projectName);
17
+ const config = options.configFile || (0, _findviteconfig.findViteConfig)(tree, projectConfig.root);
18
+ if (!config || !tree.exists(config)) {
19
+ return;
20
+ }
21
+ const configContents = tree.read(config, 'utf-8');
22
+ var _tsquery_query;
23
+ const oldTsConfigPathPlugin = (_tsquery_query = _tsquery.tsquery.query(configContents, 'ImportDeclaration:has(StringLiteral[value="vite-tsconfig-paths"])')) != null ? _tsquery_query : [];
24
+ if (oldTsConfigPathPlugin.length === 0) {
25
+ return;
26
+ }
27
+ var _oldTsConfigPathPlugin__importClause_name_text;
28
+ const importName = (_oldTsConfigPathPlugin__importClause_name_text = (_oldTsConfigPathPlugin_ = oldTsConfigPathPlugin[0]) == null ? void 0 : (_oldTsConfigPathPlugin__importClause = _oldTsConfigPathPlugin_['importClause']) == null ? void 0 : (_oldTsConfigPathPlugin__importClause_name = _oldTsConfigPathPlugin__importClause.name) == null ? void 0 : _oldTsConfigPathPlugin__importClause_name.text) != null ? _oldTsConfigPathPlugin__importClause_name_text : 'viteTsConfigPaths';
29
+ const updatedContent = _tsquery.tsquery.replace(configContents, `PropertyAssignment:has(Identifier[name="plugins"]) CallExpression:has(Identifier[name="${importName}"])`, ()=>{
30
+ return `nxViteTsPaths()`;
31
+ });
32
+ const withImportChange = _tsquery.tsquery.replace(updatedContent, 'ImportDeclaration:has(StringLiteral[value="vite-tsconfig-paths"])', ()=>{
33
+ return "import { nxViteTsPaths } from '@nx/vite/plugins/nx-tsconfig-paths.plugin';";
34
+ });
35
+ tree.write(config, withImportChange);
36
+ });
37
+ }
38
+
39
+ //# sourceMappingURL=change-ts-paths-plugin.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../../../../packages/vite/src/migrations/update-16-6-0-change-ts-paths-plugin/change-ts-paths-plugin.ts"],"sourcesContent":["import { Tree, getProjects, joinPathFragments } from '@nx/devkit';\nimport { forEachExecutorOptions } from '@nx/devkit/src/generators/executor-options-utils';\nimport { ViteBuildExecutorOptions } from '../../executors/build/schema';\nimport { tsquery } from '@phenomnomnominal/tsquery';\nimport { findViteConfig } from '../../utils/find-vite-config';\n\nexport default function update(tree: Tree) {\n const projects = getProjects(tree);\n forEachExecutorOptions<ViteBuildExecutorOptions>(\n tree,\n '@nx/vite:build',\n (options, projectName) => {\n const projectConfig = projects.get(projectName);\n const config =\n options.configFile || findViteConfig(tree, projectConfig.root);\n if (!config || !tree.exists(config)) {\n return;\n }\n\n const configContents = tree.read(config, 'utf-8');\n\n const oldTsConfigPathPlugin =\n tsquery.query(\n configContents,\n 'ImportDeclaration:has(StringLiteral[value=\"vite-tsconfig-paths\"])'\n ) ?? [];\n\n if (oldTsConfigPathPlugin.length === 0) {\n return;\n }\n\n const importName =\n oldTsConfigPathPlugin[0]?.['importClause']?.name?.text ??\n 'viteTsConfigPaths';\n const updatedContent = tsquery.replace(\n configContents,\n `PropertyAssignment:has(Identifier[name=\"plugins\"]) CallExpression:has(Identifier[name=\"${importName}\"])`,\n () => {\n return `nxViteTsPaths()`;\n }\n );\n\n const withImportChange = tsquery.replace(\n updatedContent,\n 'ImportDeclaration:has(StringLiteral[value=\"vite-tsconfig-paths\"])',\n () => {\n return \"import { nxViteTsPaths } from '@nx/vite/plugins/nx-tsconfig-paths.plugin';\";\n }\n );\n\n tree.write(config, withImportChange);\n }\n );\n}\n"],"names":["update","tree","projects","getProjects","forEachExecutorOptions","options","projectName","oldTsConfigPathPlugin","projectConfig","get","config","configFile","findViteConfig","root","exists","configContents","read","tsquery","query","length","importName","name","text","updatedContent","replace","withImportChange","write"],"mappings":";+BAMA;;;eAAwBA;;;wBAN6B;sCACd;yBAEf;gCACO;AAEhB,SAASA,OAAOC,IAAU;IACvC,MAAMC,WAAWC,IAAAA,mBAAW,EAACF;IAC7BG,IAAAA,4CAAsB,EACpBH,MACA,kBACA,CAACI,SAASC;YAqBNC,2CAAAA,sCAAAA;QApBF,MAAMC,gBAAgBN,SAASO,GAAG,CAACH;QACnC,MAAMI,SACJL,QAAQM,UAAU,IAAIC,IAAAA,8BAAc,EAACX,MAAMO,cAAcK,IAAI;QAC/D,IAAI,CAACH,UAAU,CAACT,KAAKa,MAAM,CAACJ,SAAS;YACnC;QACF;QAEA,MAAMK,iBAAiBd,KAAKe,IAAI,CAACN,QAAQ;YAGvCO;QADF,MAAMV,wBACJU,CAAAA,iBAAAA,gBAAO,CAACC,KAAK,CACXH,gBACA,gFAFFE,iBAGK,EAAE;QAET,IAAIV,sBAAsBY,MAAM,KAAK,GAAG;YACtC;QACF;YAGEZ;QADF,MAAMa,aACJb,CAAAA,kDAAAA,0BAAAA,qBAAqB,CAAC,EAAE,sBAAxBA,uCAAAA,uBAA0B,CAAC,eAAe,sBAA1CA,4CAAAA,qCAA4Cc,IAAI,qBAAhDd,0CAAkDe,IAAI,YAAtDf,iDACA;QACF,MAAMgB,iBAAiBN,gBAAO,CAACO,OAAO,CACpCT,gBACA,CAAC,uFAAuF,EAAEK,WAAW,GAAG,CAAC,EACzG;YACE,OAAO,CAAC,eAAe,CAAC;QAC1B;QAGF,MAAMK,mBAAmBR,gBAAO,CAACO,OAAO,CACtCD,gBACA,qEACA;YACE,OAAO;QACT;QAGFtB,KAAKyB,KAAK,CAAChB,QAAQe;IACrB;AAEJ"}
@@ -0,0 +1,2 @@
1
+ import { Tree } from '@nx/devkit';
2
+ export default function update(tree: Tree): Promise<void>;
@@ -0,0 +1,77 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "default", {
3
+ enumerable: true,
4
+ get: function() {
5
+ return update;
6
+ }
7
+ });
8
+ const _devkit = require("@nx/devkit");
9
+ const _executoroptionsutils = require("@nx/devkit/src/generators/executor-options-utils");
10
+ const _projectconfigurationutils = require("nx/src/project-graph/utils/project-configuration-utils");
11
+ async function update(tree) {
12
+ var _nxJson_targetDefaults, _nxJson_namedInputs;
13
+ var _nxJson, _vitestDefaults, _vitestDefaults1;
14
+ const nxJson = (0, _devkit.readNxJson)(tree);
15
+ // Don't override anything if there are already target defaults for vitest
16
+ if ((_nxJson_targetDefaults = nxJson.targetDefaults) == null ? void 0 : _nxJson_targetDefaults['@nx/vite:test']) {
17
+ return;
18
+ }
19
+ var _targetDefaults;
20
+ (_targetDefaults = (_nxJson = nxJson).targetDefaults) != null ? _targetDefaults : _nxJson.targetDefaults = {};
21
+ /**
22
+ * A set of targets which does not use any other executors
23
+ */ const vitestTargets = new Set();
24
+ const graph = await (0, _devkit.createProjectGraphAsync)();
25
+ const projectMap = (0, _devkit.getProjects)(tree);
26
+ (0, _executoroptionsutils.forEachExecutorOptionsInGraph)(graph, '@nx/vite:test', (value, proj, targetName)=>{
27
+ vitestTargets.add(targetName);
28
+ });
29
+ // Workspace does not use vitest
30
+ if (vitestTargets.size === 0) {
31
+ return;
32
+ }
33
+ // Use the project graph nodes so that targets which are inferred are considered
34
+ const projects = graph.nodes;
35
+ const vitestDefaults = nxJson.targetDefaults['@nx/vite:test'] = {};
36
+ // All vitest targets have the same name
37
+ if (vitestTargets.size === 1) {
38
+ const targetName = Array.from(vitestTargets)[0];
39
+ if (nxJson.targetDefaults[targetName]) {
40
+ Object.assign(vitestDefaults, nxJson.targetDefaults[targetName]);
41
+ }
42
+ }
43
+ var _cache;
44
+ (_cache = (_vitestDefaults = vitestDefaults).cache) != null ? _cache : _vitestDefaults.cache = true;
45
+ const inputs = [
46
+ 'default'
47
+ ];
48
+ inputs.push(((_nxJson_namedInputs = nxJson.namedInputs) == null ? void 0 : _nxJson_namedInputs.production) ? '^production' : '^default');
49
+ var _inputs;
50
+ (_inputs = (_vitestDefaults1 = vitestDefaults).inputs) != null ? _inputs : _vitestDefaults1.inputs = inputs;
51
+ // Cleanup old target defaults
52
+ for (const [targetDefaultKey, targetDefault] of Object.entries(nxJson.targetDefaults)){
53
+ if (!isTargetDefaultUsed(targetDefault, nxJson.targetDefaults, projects, projectMap)) {
54
+ delete nxJson.targetDefaults[targetDefaultKey];
55
+ }
56
+ }
57
+ (0, _devkit.updateNxJson)(tree, nxJson);
58
+ await (0, _devkit.formatFiles)(tree);
59
+ }
60
+ /**
61
+ * Checks every target on every project to see if one of them uses the target default
62
+ */ function isTargetDefaultUsed(targetDefault, targetDefaults, projects, projectMap) {
63
+ for (const p of Object.values(projects)){
64
+ var _p_data;
65
+ var _p_data_targets;
66
+ for(const targetName in (_p_data_targets = (_p_data = p.data) == null ? void 0 : _p_data.targets) != null ? _p_data_targets : {}){
67
+ var // It might seem like we should use the graph here too but we don't want to pass an executor which was processed in the graph
68
+ _projectMap_get_targets_targetName, _projectMap_get_targets;
69
+ if ((0, _projectconfigurationutils.readTargetDefaultsForTarget)(targetName, targetDefaults, (_projectMap_get_targets = projectMap.get(p.name).targets) == null ? void 0 : (_projectMap_get_targets_targetName = _projectMap_get_targets[targetName]) == null ? void 0 : _projectMap_get_targets_targetName.executor) === targetDefault) {
70
+ return true;
71
+ }
72
+ }
73
+ }
74
+ return false;
75
+ }
76
+
77
+ //# sourceMappingURL=move-target-defaults.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../../../../packages/vite/src/migrations/update-17-1-0/move-target-defaults.ts"],"sourcesContent":["import {\n createProjectGraphAsync,\n formatFiles,\n getProjects,\n ProjectConfiguration,\n ProjectGraphProjectNode,\n readNxJson,\n TargetConfiguration,\n TargetDefaults,\n Tree,\n updateNxJson,\n} from '@nx/devkit';\nimport { forEachExecutorOptionsInGraph } from '@nx/devkit/src/generators/executor-options-utils';\nimport { VitestExecutorOptions } from '../../executors/test/schema';\nimport { readTargetDefaultsForTarget } from 'nx/src/project-graph/utils/project-configuration-utils';\n\nexport default async function update(tree: Tree) {\n const nxJson = readNxJson(tree);\n\n // Don't override anything if there are already target defaults for vitest\n if (nxJson.targetDefaults?.['@nx/vite:test']) {\n return;\n }\n\n nxJson.targetDefaults ??= {};\n\n /**\n * A set of targets which does not use any other executors\n */\n const vitestTargets = new Set<string>();\n const graph = await createProjectGraphAsync();\n const projectMap = getProjects(tree);\n\n forEachExecutorOptionsInGraph(\n graph,\n '@nx/vite:test',\n (value, proj, targetName) => {\n vitestTargets.add(targetName);\n }\n );\n\n // Workspace does not use vitest\n if (vitestTargets.size === 0) {\n return;\n }\n\n // Use the project graph nodes so that targets which are inferred are considered\n const projects = graph.nodes;\n\n const vitestDefaults: TargetConfiguration<Partial<VitestExecutorOptions>> =\n (nxJson.targetDefaults['@nx/vite:test'] = {});\n\n // All vitest targets have the same name\n if (vitestTargets.size === 1) {\n const targetName = Array.from(vitestTargets)[0];\n if (nxJson.targetDefaults[targetName]) {\n Object.assign(vitestDefaults, nxJson.targetDefaults[targetName]);\n }\n }\n\n vitestDefaults.cache ??= true;\n\n const inputs = ['default'];\n inputs.push(nxJson.namedInputs?.production ? '^production' : '^default');\n vitestDefaults.inputs ??= inputs;\n\n // Cleanup old target defaults\n for (const [targetDefaultKey, targetDefault] of Object.entries(\n nxJson.targetDefaults\n )) {\n if (\n !isTargetDefaultUsed(\n targetDefault,\n nxJson.targetDefaults,\n projects,\n projectMap\n )\n ) {\n delete nxJson.targetDefaults[targetDefaultKey];\n }\n }\n\n updateNxJson(tree, nxJson);\n\n await formatFiles(tree);\n}\n\n/**\n * Checks every target on every project to see if one of them uses the target default\n */\nfunction isTargetDefaultUsed(\n targetDefault: Partial<TargetConfiguration>,\n targetDefaults: TargetDefaults,\n projects: Record<string, ProjectGraphProjectNode>,\n projectMap: Map<string, ProjectConfiguration>\n) {\n for (const p of Object.values(projects)) {\n for (const targetName in p.data?.targets ?? {}) {\n if (\n readTargetDefaultsForTarget(\n targetName,\n targetDefaults,\n // It might seem like we should use the graph here too but we don't want to pass an executor which was processed in the graph\n projectMap.get(p.name).targets?.[targetName]?.executor\n ) === targetDefault\n ) {\n return true;\n }\n }\n }\n return false;\n}\n"],"names":["update","tree","nxJson","vitestDefaults","readNxJson","targetDefaults","vitestTargets","Set","graph","createProjectGraphAsync","projectMap","getProjects","forEachExecutorOptionsInGraph","value","proj","targetName","add","size","projects","nodes","Array","from","Object","assign","cache","inputs","push","namedInputs","production","targetDefaultKey","targetDefault","entries","isTargetDefaultUsed","updateNxJson","formatFiles","p","values","data","targets","readTargetDefaultsForTarget","get","name","executor"],"mappings":";+BAgBA;;;eAA8BA;;;wBALvB;sCACuC;2CAEF;AAE7B,eAAeA,OAAOC,IAAU;QAIzCC,wBA2CQA;QAvCZA,SAoCAC,iBAIAA;IA/CA,MAAMD,SAASE,IAAAA,kBAAU,EAACH;IAE1B,0EAA0E;IAC1E,KAAIC,yBAAAA,OAAOG,cAAc,qBAArBH,sBAAuB,CAAC,gBAAgB,EAAE;QAC5C;IACF;;IAEAA,oBAAAA,UAAAA,QAAOG,4CAAPH,QAAOG,iBAAmB,CAAC;IAE3B;;GAEC,GACD,MAAMC,gBAAgB,IAAIC;IAC1B,MAAMC,QAAQ,MAAMC,IAAAA,+BAAuB;IAC3C,MAAMC,aAAaC,IAAAA,mBAAW,EAACV;IAE/BW,IAAAA,mDAA6B,EAC3BJ,OACA,iBACA,CAACK,OAAOC,MAAMC;QACZT,cAAcU,GAAG,CAACD;IACpB;IAGF,gCAAgC;IAChC,IAAIT,cAAcW,IAAI,KAAK,GAAG;QAC5B;IACF;IAEA,gFAAgF;IAChF,MAAMC,WAAWV,MAAMW,KAAK;IAE5B,MAAMhB,iBACHD,OAAOG,cAAc,CAAC,gBAAgB,GAAG,CAAC;IAE7C,wCAAwC;IACxC,IAAIC,cAAcW,IAAI,KAAK,GAAG;QAC5B,MAAMF,aAAaK,MAAMC,IAAI,CAACf,cAAc,CAAC,EAAE;QAC/C,IAAIJ,OAAOG,cAAc,CAACU,WAAW,EAAE;YACrCO,OAAOC,MAAM,CAACpB,gBAAgBD,OAAOG,cAAc,CAACU,WAAW;QACjE;IACF;;IAEAZ,WAAAA,kBAAAA,gBAAeqB,0BAAfrB,gBAAeqB,QAAU;IAEzB,MAAMC,SAAS;QAAC;KAAU;IAC1BA,OAAOC,IAAI,CAACxB,EAAAA,sBAAAA,OAAOyB,WAAW,qBAAlBzB,oBAAoB0B,UAAU,IAAG,gBAAgB;;IAC7DzB,YAAAA,mBAAAA,gBAAesB,4BAAftB,iBAAesB,SAAWA;IAE1B,8BAA8B;IAC9B,KAAK,MAAM,CAACI,kBAAkBC,cAAc,IAAIR,OAAOS,OAAO,CAC5D7B,OAAOG,cAAc,EACpB;QACD,IACE,CAAC2B,oBACCF,eACA5B,OAAOG,cAAc,EACrBa,UACAR,aAEF;YACA,OAAOR,OAAOG,cAAc,CAACwB,iBAAiB;QAChD;IACF;IAEAI,IAAAA,oBAAY,EAAChC,MAAMC;IAEnB,MAAMgC,IAAAA,mBAAW,EAACjC;AACpB;AAEA;;CAEC,GACD,SAAS+B,oBACPF,aAA2C,EAC3CzB,cAA8B,EAC9Ba,QAAiD,EACjDR,UAA6C;IAE7C,KAAK,MAAMyB,KAAKb,OAAOc,MAAM,CAAClB,UAAW;YACdiB;YAAAA;QAAzB,IAAK,MAAMpB,cAAcoB,CAAAA,mBAAAA,UAAAA,EAAEE,IAAI,qBAANF,QAAQG,OAAO,YAAfH,kBAAmB,CAAC,EAAG;gBAK1C,6HAA6H;YAC7HzB,oCAAAA;YALJ,IACE6B,IAAAA,sDAA2B,EACzBxB,YACAV,iBAEAK,0BAAAA,WAAW8B,GAAG,CAACL,EAAEM,IAAI,EAAEH,OAAO,sBAA9B5B,qCAAAA,uBAAgC,CAACK,WAAW,qBAA5CL,mCAA8CgC,QAAQ,MAClDZ,eACN;gBACA,OAAO;YACT;QACF;IACF;IACA,OAAO;AACT"}
@@ -0,0 +1,2 @@
1
+ import { FileReplacement } from '../../../../plugins/rollup-replace-files.plugin';
2
+ export declare function addFileReplacements(configContents: string, fileReplacements: FileReplacement[], configPath: string): string;
@@ -0,0 +1,67 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "addFileReplacements", {
3
+ enumerable: true,
4
+ get: function() {
5
+ return addFileReplacements;
6
+ }
7
+ });
8
+ const _devkit = require("@nx/devkit");
9
+ const _tsquery = require("@phenomnomnominal/tsquery");
10
+ const _updateviteconfig = require("../update-vite-config");
11
+ function addFileReplacements(configContents, fileReplacements, configPath) {
12
+ var _tsquery_query, _tsquery_query1, _tsquery_query2;
13
+ const configNode = (0, _updateviteconfig.getConfigNode)(configContents);
14
+ if (!configNode) {
15
+ (0, _updateviteconfig.notFoundWarning)(configPath);
16
+ return configContents;
17
+ }
18
+ const pluginsObject = (_tsquery_query = _tsquery.tsquery.query(configNode, `PropertyAssignment:has(Identifier[name="plugins"])`)) == null ? void 0 : _tsquery_query[0];
19
+ const replaceFilesPlugin = (_tsquery_query1 = _tsquery.tsquery.query(configNode, `PropertyAssignment:has(Identifier[name="plugins"]) CallExpression:has(Identifier[name="replaceFiles"])`)) == null ? void 0 : _tsquery_query1[0];
20
+ const firstImportDeclaration = (_tsquery_query2 = _tsquery.tsquery.query(configContents, 'ImportDeclaration')) == null ? void 0 : _tsquery_query2[0];
21
+ if (pluginsObject) {
22
+ if (replaceFilesPlugin) {
23
+ return configContents;
24
+ } else {
25
+ return (0, _devkit.applyChangesToString)(configContents, [
26
+ {
27
+ type: _devkit.ChangeType.Insert,
28
+ index: pluginsObject.getStart() + `plugins: [`.length + 1,
29
+ text: `replaceFiles(${JSON.stringify(fileReplacements)}),`
30
+ },
31
+ firstImportDeclaration ? {
32
+ type: _devkit.ChangeType.Insert,
33
+ index: firstImportDeclaration.getStart(),
34
+ text: `import replaceFiles from '@nx/vite/plugins/rollup-replace-files.plugin';\n`
35
+ } : {
36
+ type: _devkit.ChangeType.Insert,
37
+ index: 0,
38
+ text: `import replaceFiles from '@nx/vite/plugins/rollup-replace-files.plugin';\n`
39
+ }
40
+ ]);
41
+ }
42
+ } else {
43
+ var _tsquery_query3;
44
+ const foundDefineConfig = (_tsquery_query3 = _tsquery.tsquery.query(configContents, 'CallExpression:has(Identifier[name="defineConfig"])')) == null ? void 0 : _tsquery_query3[0];
45
+ if (!foundDefineConfig) {
46
+ return;
47
+ }
48
+ return (0, _devkit.applyChangesToString)(configContents, [
49
+ {
50
+ type: _devkit.ChangeType.Insert,
51
+ index: configNode.getStart() + 1,
52
+ text: `plugins: [replaceFiles(${JSON.stringify(fileReplacements)})],`
53
+ },
54
+ firstImportDeclaration ? {
55
+ type: _devkit.ChangeType.Insert,
56
+ index: firstImportDeclaration.getStart(),
57
+ text: `import replaceFiles from '@nx/vite/plugins/rollup-replace-files.plugin';`
58
+ } : {
59
+ type: _devkit.ChangeType.Insert,
60
+ index: 0,
61
+ text: `import replaceFiles from '@nx/vite/plugins/rollup-replace-files.plugin';`
62
+ }
63
+ ]);
64
+ }
65
+ }
66
+
67
+ //# sourceMappingURL=add-file-replacements.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../../../../../packages/vite/src/migrations/update-17-2-0/lib/add-file-replacements.ts"],"sourcesContent":["import { ChangeType, applyChangesToString } from '@nx/devkit';\nimport { FileReplacement } from '../../../../plugins/rollup-replace-files.plugin';\nimport { tsquery } from '@phenomnomnominal/tsquery';\nimport { getConfigNode, notFoundWarning } from '../update-vite-config';\n\nexport function addFileReplacements(\n configContents: string,\n fileReplacements: FileReplacement[],\n configPath: string\n): string {\n const configNode = getConfigNode(configContents);\n if (!configNode) {\n notFoundWarning(configPath);\n return configContents;\n }\n const pluginsObject = tsquery.query(\n configNode,\n `PropertyAssignment:has(Identifier[name=\"plugins\"])`\n )?.[0];\n const replaceFilesPlugin = tsquery.query(\n configNode,\n `PropertyAssignment:has(Identifier[name=\"plugins\"]) CallExpression:has(Identifier[name=\"replaceFiles\"])`\n )?.[0];\n\n const firstImportDeclaration = tsquery.query(\n configContents,\n 'ImportDeclaration'\n )?.[0];\n\n if (pluginsObject) {\n if (replaceFilesPlugin) {\n return configContents;\n } else {\n return applyChangesToString(configContents, [\n {\n type: ChangeType.Insert,\n index: pluginsObject.getStart() + `plugins: [`.length + 1,\n text: `replaceFiles(${JSON.stringify(fileReplacements)}),`,\n },\n firstImportDeclaration\n ? {\n type: ChangeType.Insert,\n index: firstImportDeclaration.getStart(),\n text: `import replaceFiles from '@nx/vite/plugins/rollup-replace-files.plugin';\\n`,\n }\n : {\n type: ChangeType.Insert,\n index: 0,\n text: `import replaceFiles from '@nx/vite/plugins/rollup-replace-files.plugin';\\n`,\n },\n ]);\n }\n } else {\n const foundDefineConfig = tsquery.query(\n configContents,\n 'CallExpression:has(Identifier[name=\"defineConfig\"])'\n )?.[0];\n\n if (!foundDefineConfig) {\n return;\n }\n return applyChangesToString(configContents, [\n {\n type: ChangeType.Insert,\n index: configNode.getStart() + 1,\n text: `plugins: [replaceFiles(${JSON.stringify(fileReplacements)})],`,\n },\n firstImportDeclaration\n ? {\n type: ChangeType.Insert,\n index: firstImportDeclaration.getStart(),\n text: `import replaceFiles from '@nx/vite/plugins/rollup-replace-files.plugin';`,\n }\n : {\n type: ChangeType.Insert,\n index: 0,\n text: `import replaceFiles from '@nx/vite/plugins/rollup-replace-files.plugin';`,\n },\n ]);\n }\n}\n"],"names":["addFileReplacements","configContents","fileReplacements","configPath","tsquery","configNode","getConfigNode","notFoundWarning","pluginsObject","query","replaceFilesPlugin","firstImportDeclaration","applyChangesToString","type","ChangeType","Insert","index","getStart","length","text","JSON","stringify","foundDefineConfig"],"mappings":";+BAKgBA;;;eAAAA;;;wBALiC;yBAEzB;kCACuB;AAExC,SAASA,oBACdC,cAAsB,EACtBC,gBAAmC,EACnCC,UAAkB;QAOIC,gBAIKA,iBAKIA;IAd/B,MAAMC,aAAaC,IAAAA,+BAAa,EAACL;IACjC,IAAI,CAACI,YAAY;QACfE,IAAAA,iCAAe,EAACJ;QAChB,OAAOF;IACT;IACA,MAAMO,iBAAgBJ,iBAAAA,gBAAO,CAACK,KAAK,CACjCJ,YACA,CAAC,kDAAkD,CAAC,sBAFhCD,cAGnB,CAAC,EAAE;IACN,MAAMM,sBAAqBN,kBAAAA,gBAAO,CAACK,KAAK,CACtCJ,YACA,CAAC,sGAAsG,CAAC,sBAF/ED,eAGxB,CAAC,EAAE;IAEN,MAAMO,0BAAyBP,kBAAAA,gBAAO,CAACK,KAAK,CAC1CR,gBACA,yCAF6BG,eAG5B,CAAC,EAAE;IAEN,IAAII,eAAe;QACjB,IAAIE,oBAAoB;YACtB,OAAOT;QACT,OAAO;YACL,OAAOW,IAAAA,4BAAoB,EAACX,gBAAgB;gBAC1C;oBACEY,MAAMC,kBAAU,CAACC,MAAM;oBACvBC,OAAOR,cAAcS,QAAQ,KAAK,CAAC,UAAU,CAAC,CAACC,MAAM,GAAG;oBACxDC,MAAM,CAAC,aAAa,EAAEC,KAAKC,SAAS,CAACnB,kBAAkB,EAAE,CAAC;gBAC5D;gBACAS,yBACI;oBACEE,MAAMC,kBAAU,CAACC,MAAM;oBACvBC,OAAOL,uBAAuBM,QAAQ;oBACtCE,MAAM,CAAC,0EAA0E,CAAC;gBACpF,IACA;oBACEN,MAAMC,kBAAU,CAACC,MAAM;oBACvBC,OAAO;oBACPG,MAAM,CAAC,0EAA0E,CAAC;gBACpF;aACL;QACH;IACF,OAAO;YACqBf;QAA1B,MAAMkB,qBAAoBlB,kBAAAA,gBAAO,CAACK,KAAK,CACrCR,gBACA,2EAFwBG,eAGvB,CAAC,EAAE;QAEN,IAAI,CAACkB,mBAAmB;YACtB;QACF;QACA,OAAOV,IAAAA,4BAAoB,EAACX,gBAAgB;YAC1C;gBACEY,MAAMC,kBAAU,CAACC,MAAM;gBACvBC,OAAOX,WAAWY,QAAQ,KAAK;gBAC/BE,MAAM,CAAC,uBAAuB,EAAEC,KAAKC,SAAS,CAACnB,kBAAkB,GAAG,CAAC;YACvE;YACAS,yBACI;gBACEE,MAAMC,kBAAU,CAACC,MAAM;gBACvBC,OAAOL,uBAAuBM,QAAQ;gBACtCE,MAAM,CAAC,wEAAwE,CAAC;YAClF,IACA;gBACEN,MAAMC,kBAAU,CAACC,MAAM;gBACvBC,OAAO;gBACPG,MAAM,CAAC,wEAAwE,CAAC;YAClF;SACL;IACH;AACF"}
@@ -0,0 +1,2 @@
1
+ import { ProjectConfiguration, Tree } from '@nx/devkit';
2
+ export declare function updateBuildOutDirAndRoot(options: Record<string, any>, configContents: string, projectConfig: ProjectConfiguration, targetName: string, tree: Tree, projectName: string, configPath: string): string;
@@ -0,0 +1,121 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "updateBuildOutDirAndRoot", {
3
+ enumerable: true,
4
+ get: function() {
5
+ return updateBuildOutDirAndRoot;
6
+ }
7
+ });
8
+ const _devkit = require("@nx/devkit");
9
+ const _tsquery = require("@phenomnomnominal/tsquery");
10
+ const _updateviteconfig = require("../update-vite-config");
11
+ const ts = require("typescript");
12
+ function updateBuildOutDirAndRoot(options, configContents, projectConfig, targetName, tree, projectName, configPath) {
13
+ var _tsquery_query;
14
+ const foundDefineConfig = (_tsquery_query = _tsquery.tsquery.query(configContents, 'CallExpression:has(Identifier[name="defineConfig"])')) == null ? void 0 : _tsquery_query[0];
15
+ if (!foundDefineConfig) {
16
+ (0, _updateviteconfig.notFoundWarning)(configPath);
17
+ return;
18
+ }
19
+ configContents = fixBuild(options, configContents, projectConfig, targetName, tree, projectName, configPath);
20
+ configContents = addRoot(configContents, configPath);
21
+ return configContents;
22
+ }
23
+ function fixBuild(options, configContents, projectConfig, targetName, tree, projectName, configPath) {
24
+ var _tsquery_query;
25
+ const configNode = (0, _updateviteconfig.getConfigNode)(configContents);
26
+ if (!configNode) {
27
+ (0, _updateviteconfig.notFoundWarning)(configPath);
28
+ return configContents;
29
+ }
30
+ let outputPath = '';
31
+ // In vite.config.ts, we want to keep the path relative to workspace root
32
+ if (options.outputPath) {
33
+ outputPath = (0, _devkit.joinPathFragments)((0, _devkit.offsetFromRoot)(projectConfig.root), options.outputPath);
34
+ } else {
35
+ outputPath = (0, _devkit.joinPathFragments)((0, _devkit.offsetFromRoot)(projectConfig.root), 'dist', projectConfig.root);
36
+ }
37
+ // In project.json, we want to keep the path starting from workspace root
38
+ projectConfig.targets[targetName].options.outputPath = options.outputPath ? options.outputPath : (0, _devkit.joinPathFragments)('dist', projectConfig.root);
39
+ (0, _devkit.updateProjectConfiguration)(tree, projectName, projectConfig);
40
+ const buildObject = (_tsquery_query = _tsquery.tsquery.query(configNode, `PropertyAssignment:has(Identifier[name="build"])`)) == null ? void 0 : _tsquery_query[0];
41
+ if (buildObject) {
42
+ var _tsquery_query1, _tsquery_query2, _tsquery_query3;
43
+ const reportCompressedSizeExists = ((_tsquery_query1 = _tsquery.tsquery.query(buildObject, `PropertyAssignment:has(Identifier[name="reportCompressedSize"])`)) == null ? void 0 : _tsquery_query1.length) > 0;
44
+ const commonjsOptionsExists = ((_tsquery_query2 = _tsquery.tsquery.query(buildObject, `PropertyAssignment:has(Identifier[name="commonjsOptions"])`)) == null ? void 0 : _tsquery_query2.length) > 0;
45
+ const buildOutDir = (_tsquery_query3 = _tsquery.tsquery.query(buildObject, `PropertyAssignment:has(Identifier[name="outDir"])`)) == null ? void 0 : _tsquery_query3.length;
46
+ // Array to store changes
47
+ let changes = [];
48
+ // Add outDir if not present
49
+ if (!buildOutDir) {
50
+ changes.push({
51
+ type: _devkit.ChangeType.Insert,
52
+ index: buildObject.getStart() + `build: {`.length + 1,
53
+ text: `outDir: '${outputPath}',`
54
+ });
55
+ }
56
+ // Add reportCompressedSize if not present
57
+ if (!reportCompressedSizeExists) {
58
+ changes.push({
59
+ type: _devkit.ChangeType.Insert,
60
+ index: buildObject.getStart() + `build: {`.length + 1,
61
+ text: `reportCompressedSize: true,`
62
+ });
63
+ }
64
+ // Add commonjsOptions if not present
65
+ if (!commonjsOptionsExists) {
66
+ changes.push({
67
+ type: _devkit.ChangeType.Insert,
68
+ index: buildObject.getStart() + `build: {`.length + 1,
69
+ text: `commonjsOptions: { transformMixedEsModules: true },`
70
+ });
71
+ }
72
+ if (changes.length > 0) {
73
+ return (0, _devkit.applyChangesToString)(configContents, changes);
74
+ }
75
+ } else {
76
+ return addBuildProperty(configContents, outputPath, configPath);
77
+ }
78
+ return configContents;
79
+ }
80
+ function addRoot(configFileContents, configPath) {
81
+ var _tsquery_query;
82
+ const configNode = (0, _updateviteconfig.getConfigNode)(configFileContents);
83
+ if (!configNode) {
84
+ (0, _updateviteconfig.notFoundWarning)(configPath);
85
+ return configFileContents;
86
+ }
87
+ const rootOption = (_tsquery_query = _tsquery.tsquery.query(configNode, `PropertyAssignment:has(Identifier[name="root"]) Identifier[name="__dirname"]`)) == null ? void 0 : _tsquery_query[0];
88
+ if (rootOption) {
89
+ return configFileContents;
90
+ } else {
91
+ return (0, _devkit.applyChangesToString)(configFileContents, [
92
+ {
93
+ type: _devkit.ChangeType.Insert,
94
+ index: configNode.getStart() + 1,
95
+ text: `root: __dirname,`
96
+ }
97
+ ]);
98
+ }
99
+ }
100
+ function addBuildProperty(configFileContents, outputPath, configPath) {
101
+ const configNode = (0, _updateviteconfig.getConfigNode)(configFileContents);
102
+ if (!configNode) {
103
+ (0, _updateviteconfig.notFoundWarning)(configPath);
104
+ return configFileContents;
105
+ }
106
+ return (0, _devkit.applyChangesToString)(configFileContents, [
107
+ {
108
+ type: _devkit.ChangeType.Insert,
109
+ index: configNode.getStart() + 1,
110
+ text: `build: {
111
+ outDir: '${outputPath}',
112
+ reportCompressedSize: true,
113
+ commonjsOptions: {
114
+ transformMixedEsModules: true,
115
+ },
116
+ },`
117
+ }
118
+ ]);
119
+ }
120
+
121
+ //# sourceMappingURL=edit-build-config.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../../../../../packages/vite/src/migrations/update-17-2-0/lib/edit-build-config.ts"],"sourcesContent":["import {\n ChangeType,\n ProjectConfiguration,\n Tree,\n applyChangesToString,\n joinPathFragments,\n offsetFromRoot,\n updateProjectConfiguration,\n} from '@nx/devkit';\nimport { tsquery } from '@phenomnomnominal/tsquery';\nimport ts = require('typescript');\nimport { getConfigNode, notFoundWarning } from '../update-vite-config';\n\nexport function updateBuildOutDirAndRoot(\n options: Record<string, any>,\n configContents: string,\n projectConfig: ProjectConfiguration,\n targetName: string,\n tree: Tree,\n projectName: string,\n configPath: string\n): string {\n const foundDefineConfig = tsquery.query(\n configContents,\n 'CallExpression:has(Identifier[name=\"defineConfig\"])'\n )?.[0];\n\n if (!foundDefineConfig) {\n notFoundWarning(configPath);\n return;\n }\n\n configContents = fixBuild(\n options,\n configContents,\n projectConfig,\n targetName,\n tree,\n projectName,\n configPath\n );\n\n configContents = addRoot(configContents, configPath);\n\n return configContents;\n}\n\nfunction fixBuild(\n options: Record<string, any>,\n configContents: string,\n projectConfig: ProjectConfiguration,\n targetName: string,\n tree: Tree,\n projectName: string,\n configPath: string\n) {\n const configNode = getConfigNode(configContents);\n if (!configNode) {\n notFoundWarning(configPath);\n return configContents;\n }\n\n let outputPath = '';\n\n // In vite.config.ts, we want to keep the path relative to workspace root\n if (options.outputPath) {\n outputPath = joinPathFragments(\n offsetFromRoot(projectConfig.root),\n options.outputPath\n );\n } else {\n outputPath = joinPathFragments(\n offsetFromRoot(projectConfig.root),\n 'dist',\n projectConfig.root\n );\n }\n\n // In project.json, we want to keep the path starting from workspace root\n projectConfig.targets[targetName].options.outputPath = options.outputPath\n ? options.outputPath\n : joinPathFragments('dist', projectConfig.root);\n updateProjectConfiguration(tree, projectName, projectConfig);\n\n const buildObject = tsquery.query(\n configNode,\n `PropertyAssignment:has(Identifier[name=\"build\"])`\n )?.[0];\n\n if (buildObject) {\n const reportCompressedSizeExists =\n tsquery.query(\n buildObject,\n `PropertyAssignment:has(Identifier[name=\"reportCompressedSize\"])`\n )?.length > 0;\n\n const commonjsOptionsExists =\n tsquery.query(\n buildObject,\n `PropertyAssignment:has(Identifier[name=\"commonjsOptions\"])`\n )?.length > 0;\n\n const buildOutDir = tsquery.query(\n buildObject,\n `PropertyAssignment:has(Identifier[name=\"outDir\"])`\n )?.length;\n\n // Array to store changes\n let changes = [];\n\n // Add outDir if not present\n if (!buildOutDir) {\n changes.push({\n type: ChangeType.Insert,\n index: buildObject.getStart() + `build: {`.length + 1,\n text: `outDir: '${outputPath}',`,\n });\n }\n\n // Add reportCompressedSize if not present\n if (!reportCompressedSizeExists) {\n changes.push({\n type: ChangeType.Insert,\n index: buildObject.getStart() + `build: {`.length + 1,\n text: `reportCompressedSize: true,`,\n });\n }\n\n // Add commonjsOptions if not present\n if (!commonjsOptionsExists) {\n changes.push({\n type: ChangeType.Insert,\n index: buildObject.getStart() + `build: {`.length + 1,\n text: `commonjsOptions: { transformMixedEsModules: true },`,\n });\n }\n\n if (changes.length > 0) {\n return applyChangesToString(configContents, changes);\n }\n } else {\n return addBuildProperty(configContents, outputPath, configPath);\n }\n\n return configContents;\n}\n\nfunction addRoot(configFileContents: string, configPath: string): string {\n const configNode = getConfigNode(configFileContents);\n\n if (!configNode) {\n notFoundWarning(configPath);\n return configFileContents;\n }\n\n const rootOption = tsquery.query(\n configNode,\n `PropertyAssignment:has(Identifier[name=\"root\"]) Identifier[name=\"__dirname\"]`\n )?.[0];\n\n if (rootOption) {\n return configFileContents;\n } else {\n return applyChangesToString(configFileContents, [\n {\n type: ChangeType.Insert,\n index: configNode.getStart() + 1,\n text: `root: __dirname,`,\n },\n ]);\n }\n}\n\nfunction addBuildProperty(\n configFileContents: string,\n outputPath: string,\n configPath: string\n): string {\n const configNode = getConfigNode(configFileContents);\n if (!configNode) {\n notFoundWarning(configPath);\n return configFileContents;\n }\n\n return applyChangesToString(configFileContents, [\n {\n type: ChangeType.Insert,\n index: configNode.getStart() + 1,\n text: `build: {\n outDir: '${outputPath}',\n reportCompressedSize: true,\n commonjsOptions: {\n transformMixedEsModules: true,\n },\n },`,\n },\n ]);\n}\n"],"names":["updateBuildOutDirAndRoot","ts","options","configContents","projectConfig","targetName","tree","projectName","configPath","tsquery","foundDefineConfig","query","notFoundWarning","fixBuild","addRoot","configNode","getConfigNode","outputPath","joinPathFragments","offsetFromRoot","root","targets","updateProjectConfiguration","buildObject","reportCompressedSizeExists","length","commonjsOptionsExists","buildOutDir","changes","push","type","ChangeType","Insert","index","getStart","text","applyChangesToString","addBuildProperty","configFileContents","rootOption"],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ import { ProjectConfiguration } from '@nx/devkit';
2
+ export declare function updateTestConfig(configContents: string, projectConfig: ProjectConfiguration, configPath: string): string;