@nx/vite 17.2.5 → 17.2.7

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 (29) hide show
  1. package/README.md +4 -9
  2. package/migrations.json +3 -24
  3. package/package.json +5 -5
  4. package/src/executors/build/build.impl.d.ts +1 -2
  5. package/src/executors/build/build.impl.js.map +1 -1
  6. package/src/executors/dev-server/dev-server.impl.js +20 -9
  7. package/src/executors/dev-server/dev-server.impl.js.map +1 -1
  8. package/src/executors/preview-server/preview-server.impl.d.ts +1 -1
  9. package/src/executors/preview-server/preview-server.impl.js +13 -7
  10. package/src/executors/preview-server/preview-server.impl.js.map +1 -1
  11. package/src/migrations/update-17-3-0/lib/{fix-coverage.d.ts → fix-coverage-and-reporters.d.ts} +1 -1
  12. package/src/migrations/update-17-3-0/lib/fix-coverage-and-reporters.js +117 -0
  13. package/src/migrations/update-17-3-0/lib/fix-coverage-and-reporters.js.map +1 -0
  14. package/src/migrations/update-17-3-0/{vitest-coverage-threshold.js → vitest-coverage-and-reporters.js} +3 -3
  15. package/src/migrations/update-17-3-0/vitest-coverage-and-reporters.js.map +1 -0
  16. package/src/plugins/plugin.js +16 -11
  17. package/src/plugins/plugin.js.map +1 -1
  18. package/src/utils/generator-utils.js +10 -8
  19. package/src/utils/generator-utils.js.map +1 -1
  20. package/src/utils/options-utils.d.ts +2 -3
  21. package/src/utils/options-utils.js +1 -0
  22. package/src/utils/options-utils.js.map +1 -1
  23. package/src/utils/versions.d.ts +3 -3
  24. package/src/utils/versions.js +3 -3
  25. package/src/utils/versions.js.map +1 -1
  26. package/src/migrations/update-17-3-0/lib/fix-coverage.js +0 -109
  27. package/src/migrations/update-17-3-0/lib/fix-coverage.js.map +0 -1
  28. package/src/migrations/update-17-3-0/vitest-coverage-threshold.js.map +0 -1
  29. /package/src/migrations/update-17-3-0/{vitest-coverage-threshold.d.ts → vitest-coverage-and-reporters.d.ts} +0 -0
@@ -7,7 +7,7 @@ Object.defineProperty(exports, "default", {
7
7
  });
8
8
  const _devkit = require("@nx/devkit");
9
9
  const _executoroptionsutils = require("@nx/devkit/src/generators/executor-options-utils");
10
- const _fixcoverage = require("./lib/fix-coverage");
10
+ const _fixcoverageandreporters = require("./lib/fix-coverage-and-reporters");
11
11
  async function fixCoverageThreshold(tree) {
12
12
  const projects = (0, _devkit.getProjects)(tree);
13
13
  (0, _executoroptionsutils.forEachExecutorOptions)(tree, '@nx/vite:test', (_options, projectName)=>{
@@ -17,7 +17,7 @@ async function fixCoverageThreshold(tree) {
17
17
  return;
18
18
  }
19
19
  const configContents = tree.read(configPath, 'utf-8');
20
- const updatedConfigContents = (0, _fixcoverage.fixCoverage)(configContents);
20
+ const updatedConfigContents = (0, _fixcoverageandreporters.fixCoverageAndRerporters)(configContents);
21
21
  if (updatedConfigContents) {
22
22
  tree.write(configPath, updatedConfigContents);
23
23
  }
@@ -42,4 +42,4 @@ function findViteConfig(tree, searchRoot) {
42
42
  }
43
43
  }
44
44
 
45
- //# sourceMappingURL=vitest-coverage-threshold.js.map
45
+ //# sourceMappingURL=vitest-coverage-and-reporters.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../../../../packages/vite/src/migrations/update-17-3-0/vitest-coverage-and-reporters.ts"],"sourcesContent":["import {\n ProjectConfiguration,\n Tree,\n formatFiles,\n getProjects,\n joinPathFragments,\n} from '@nx/devkit';\nimport { forEachExecutorOptions } from '@nx/devkit/src/generators/executor-options-utils';\nimport { fixCoverageAndRerporters } from './lib/fix-coverage-and-reporters';\n\nexport default async function fixCoverageThreshold(tree: Tree) {\n const projects = getProjects(tree);\n forEachExecutorOptions(tree, '@nx/vite:test', (_options, projectName) => {\n const projectConfig: ProjectConfiguration = projects.get(\n projectName\n ) as ProjectConfiguration;\n const configPath = findViteConfig(tree, projectConfig.root);\n if (!configPath || !tree.exists(configPath)) {\n return;\n }\n const configContents = tree.read(configPath, 'utf-8') as string;\n const updatedConfigContents = fixCoverageAndRerporters(configContents);\n if (updatedConfigContents) {\n tree.write(configPath, updatedConfigContents);\n }\n });\n\n await formatFiles(tree);\n}\n\nfunction findViteConfig(tree: Tree, searchRoot: string) {\n const allowsExt = ['js', 'mjs', 'ts', 'cjs', 'mts', 'cts'];\n\n for (const ext of allowsExt) {\n if (tree.exists(joinPathFragments(searchRoot, `vite.config.${ext}`))) {\n return joinPathFragments(searchRoot, `vite.config.${ext}`);\n } else if (\n tree.exists(joinPathFragments(searchRoot, `vitest.config.${ext}`))\n ) {\n return joinPathFragments(searchRoot, `vitest.config.${ext}`);\n }\n }\n}\n"],"names":["fixCoverageThreshold","tree","projects","getProjects","forEachExecutorOptions","_options","projectName","projectConfig","get","configPath","findViteConfig","root","exists","configContents","read","updatedConfigContents","fixCoverageAndRerporters","write","formatFiles","searchRoot","allowsExt","ext","joinPathFragments"],"mappings":";+BAUA;;;eAA8BA;;;wBAJvB;sCACgC;yCACE;AAE1B,eAAeA,qBAAqBC,IAAU;IAC3D,MAAMC,WAAWC,IAAAA,mBAAW,EAACF;IAC7BG,IAAAA,4CAAsB,EAACH,MAAM,iBAAiB,CAACI,UAAUC;QACvD,MAAMC,gBAAsCL,SAASM,GAAG,CACtDF;QAEF,MAAMG,aAAaC,eAAeT,MAAMM,cAAcI,IAAI;QAC1D,IAAI,CAACF,cAAc,CAACR,KAAKW,MAAM,CAACH,aAAa;YAC3C;QACF;QACA,MAAMI,iBAAiBZ,KAAKa,IAAI,CAACL,YAAY;QAC7C,MAAMM,wBAAwBC,IAAAA,iDAAwB,EAACH;QACvD,IAAIE,uBAAuB;YACzBd,KAAKgB,KAAK,CAACR,YAAYM;QACzB;IACF;IAEA,MAAMG,IAAAA,mBAAW,EAACjB;AACpB;AAEA,SAASS,eAAeT,IAAU,EAAEkB,UAAkB;IACpD,MAAMC,YAAY;QAAC;QAAM;QAAO;QAAM;QAAO;QAAO;KAAM;IAE1D,KAAK,MAAMC,OAAOD,UAAW;QAC3B,IAAInB,KAAKW,MAAM,CAACU,IAAAA,yBAAiB,EAACH,YAAY,CAAC,YAAY,EAAEE,IAAI,CAAC,IAAI;YACpE,OAAOC,IAAAA,yBAAiB,EAACH,YAAY,CAAC,YAAY,EAAEE,IAAI,CAAC;QAC3D,OAAO,IACLpB,KAAKW,MAAM,CAACU,IAAAA,yBAAiB,EAACH,YAAY,CAAC,cAAc,EAAEE,IAAI,CAAC,IAChE;YACA,OAAOC,IAAAA,yBAAiB,EAACH,YAAY,CAAC,cAAc,EAAEE,IAAI,CAAC;QAC7D;IACF;AACF"}
@@ -155,10 +155,8 @@ function serveStaticTarget(options) {
155
155
  function getOutputs(viteConfig, projectRoot) {
156
156
  var _test_coverage;
157
157
  const { build, test } = viteConfig;
158
- var _normalizeOutputPath;
159
- const buildOutputPath = (_normalizeOutputPath = normalizeOutputPath(build == null ? void 0 : build.outDir, projectRoot)) != null ? _normalizeOutputPath : '{workspaceRoot}/dist/{projectRoot}';
160
- var _normalizeOutputPath1;
161
- const reportsDirectoryPath = (_normalizeOutputPath1 = normalizeOutputPath(test == null ? void 0 : (_test_coverage = test.coverage) == null ? void 0 : _test_coverage.reportsDirectory, projectRoot)) != null ? _normalizeOutputPath1 : '{workspaceRoot}/coverage/{projectRoot}';
158
+ const buildOutputPath = normalizeOutputPath(build == null ? void 0 : build.outDir, projectRoot, 'dist');
159
+ const reportsDirectoryPath = normalizeOutputPath(test == null ? void 0 : (_test_coverage = test.coverage) == null ? void 0 : _test_coverage.reportsDirectory, projectRoot, 'coverage');
162
160
  return {
163
161
  buildOutputs: [
164
162
  buildOutputPath
@@ -168,15 +166,22 @@ function getOutputs(viteConfig, projectRoot) {
168
166
  ]
169
167
  };
170
168
  }
171
- function normalizeOutputPath(outputPath, projectRoot) {
172
- if (!outputPath) return undefined;
173
- if ((0, _path.isAbsolute)(outputPath)) {
174
- return `{workspaceRoot}/${(0, _path.relative)(_devkit.workspaceRoot, outputPath)}`;
169
+ function normalizeOutputPath(outputPath, projectRoot, path) {
170
+ if (!outputPath) {
171
+ if (projectRoot === '.') {
172
+ return `{projectRoot}/${path}`;
173
+ } else {
174
+ return `{workspaceRoot}/${path}/{projectRoot}`;
175
+ }
175
176
  } else {
176
- if (outputPath.startsWith('..')) {
177
- return (0, _path.join)('{workspaceRoot}', (0, _path.join)(projectRoot, outputPath));
177
+ if ((0, _path.isAbsolute)(outputPath)) {
178
+ return `{workspaceRoot}/${(0, _path.relative)(_devkit.workspaceRoot, outputPath)}`;
178
179
  } else {
179
- return outputPath;
180
+ if (outputPath.startsWith('..')) {
181
+ return (0, _path.join)('{workspaceRoot}', (0, _path.join)(projectRoot, outputPath));
182
+ } else {
183
+ return (0, _path.join)('{projectRoot}', outputPath);
184
+ }
180
185
  }
181
186
  }
182
187
  }
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../../packages/vite/src/plugins/plugin.ts"],"sourcesContent":["import {\n CreateDependencies,\n CreateNodes,\n CreateNodesContext,\n detectPackageManager,\n joinPathFragments,\n readJsonFile,\n TargetConfiguration,\n workspaceRoot,\n writeJsonFile,\n} from '@nx/devkit';\nimport { dirname, isAbsolute, join, relative } from 'path';\nimport { getNamedInputs } from '@nx/devkit/src/utils/get-named-inputs';\nimport { loadConfigFromFile, UserConfig } from 'vite';\nimport { existsSync, readdirSync } from 'fs';\nimport { calculateHashForCreateNodes } from '@nx/devkit/src/utils/calculate-hash-for-create-nodes';\nimport { projectGraphCacheDirectory } from 'nx/src/utils/cache-directory';\nimport { getLockFileName } from '@nx/js';\n\nexport interface VitePluginOptions {\n buildTargetName?: string;\n testTargetName?: string;\n serveTargetName?: string;\n previewTargetName?: string;\n serveStaticTargetName?: string;\n}\n\nconst cachePath = join(projectGraphCacheDirectory, 'vite.hash');\nconst targetsCache = existsSync(cachePath) ? readTargetsCache() : {};\n\nconst calculatedTargets: Record<\n string,\n Record<string, TargetConfiguration>\n> = {};\n\nfunction readTargetsCache(): Record<\n string,\n Record<string, TargetConfiguration>\n> {\n return readJsonFile(cachePath);\n}\n\nfunction writeTargetsToCache(\n targets: Record<string, Record<string, TargetConfiguration>>\n) {\n writeJsonFile(cachePath, targets);\n}\n\nexport const createDependencies: CreateDependencies = () => {\n writeTargetsToCache(calculatedTargets);\n return [];\n};\n\nexport const createNodes: CreateNodes<VitePluginOptions> = [\n '**/vite.config.{js,ts}',\n async (configFilePath, options, context) => {\n const projectRoot = dirname(configFilePath);\n // Do not create a project if package.json and project.json isn't there.\n const siblingFiles = readdirSync(join(context.workspaceRoot, projectRoot));\n if (\n !siblingFiles.includes('package.json') &&\n !siblingFiles.includes('project.json')\n ) {\n return {};\n }\n\n options = normalizeOptions(options);\n\n const hash = calculateHashForCreateNodes(projectRoot, options, context, [\n getLockFileName(detectPackageManager(context.workspaceRoot)),\n ]);\n const targets = targetsCache[hash]\n ? targetsCache[hash]\n : await buildViteTargets(configFilePath, projectRoot, options, context);\n\n calculatedTargets[hash] = targets;\n\n return {\n projects: {\n [projectRoot]: {\n root: projectRoot,\n targets,\n },\n },\n };\n },\n];\n\nasync function buildViteTargets(\n configFilePath: string,\n projectRoot: string,\n options: VitePluginOptions,\n context: CreateNodesContext\n) {\n const viteConfig = await loadConfigFromFile(\n {\n command: 'build',\n mode: 'production',\n },\n configFilePath\n );\n\n const { buildOutputs, testOutputs } = getOutputs(\n viteConfig?.config,\n projectRoot\n );\n\n const namedInputs = getNamedInputs(projectRoot, context);\n\n const targets: Record<string, TargetConfiguration> = {};\n\n targets[options.buildTargetName] = await buildTarget(\n options.buildTargetName,\n namedInputs,\n buildOutputs,\n projectRoot\n );\n\n targets[options.serveTargetName] = serveTarget(projectRoot);\n\n targets[options.previewTargetName] = previewTarget(projectRoot);\n\n targets[options.testTargetName] = await testTarget(\n namedInputs,\n testOutputs,\n projectRoot\n );\n\n targets[options.serveStaticTargetName] = serveStaticTarget(options) as {};\n\n return targets;\n}\n\nasync function buildTarget(\n buildTargetName: string,\n namedInputs: {\n [inputName: string]: any[];\n },\n outputs: string[],\n projectRoot: string\n) {\n return {\n command: `vite build`,\n options: { cwd: joinPathFragments(projectRoot) },\n cache: true,\n dependsOn: [`^${buildTargetName}`],\n inputs: [\n ...('production' in namedInputs\n ? ['production', '^production']\n : ['default', '^default']),\n {\n externalDependencies: ['vite'],\n },\n ],\n outputs,\n };\n}\n\nfunction serveTarget(projectRoot: string) {\n const targetConfig: TargetConfiguration = {\n command: `vite serve`,\n options: {\n cwd: joinPathFragments(projectRoot),\n },\n };\n\n return targetConfig;\n}\n\nfunction previewTarget(projectRoot: string) {\n const targetConfig: TargetConfiguration = {\n command: `vite preview`,\n options: {\n cwd: joinPathFragments(projectRoot),\n },\n };\n\n return targetConfig;\n}\n\nasync function testTarget(\n namedInputs: {\n [inputName: string]: any[];\n },\n outputs: string[],\n projectRoot: string\n) {\n return {\n command: `vitest run`,\n options: { cwd: joinPathFragments(projectRoot) },\n cache: true,\n inputs: [\n ...('production' in namedInputs\n ? ['default', '^production']\n : ['default', '^default']),\n {\n externalDependencies: ['vitest'],\n },\n ],\n outputs,\n };\n}\n\nfunction serveStaticTarget(options: VitePluginOptions) {\n const targetConfig: TargetConfiguration = {\n executor: '@nx/web:file-server',\n options: {\n buildTarget: `${options.buildTargetName}`,\n },\n };\n\n return targetConfig;\n}\n\nfunction getOutputs(\n viteConfig: UserConfig,\n projectRoot: string\n): {\n buildOutputs: string[];\n testOutputs: string[];\n} {\n const { build, test } = viteConfig;\n\n const buildOutputPath =\n normalizeOutputPath(build?.outDir, projectRoot) ??\n '{workspaceRoot}/dist/{projectRoot}';\n\n const reportsDirectoryPath =\n normalizeOutputPath(test?.coverage?.reportsDirectory, projectRoot) ??\n '{workspaceRoot}/coverage/{projectRoot}';\n\n return {\n buildOutputs: [buildOutputPath],\n testOutputs: [reportsDirectoryPath],\n };\n}\n\nfunction normalizeOutputPath(\n outputPath: string | undefined,\n projectRoot: string\n): string | undefined {\n if (!outputPath) return undefined;\n if (isAbsolute(outputPath)) {\n return `{workspaceRoot}/${relative(workspaceRoot, outputPath)}`;\n } else {\n if (outputPath.startsWith('..')) {\n return join('{workspaceRoot}', join(projectRoot, outputPath));\n } else {\n return outputPath;\n }\n }\n}\n\nfunction normalizeOptions(options: VitePluginOptions): VitePluginOptions {\n options ??= {};\n options.buildTargetName ??= 'build';\n options.serveTargetName ??= 'serve';\n options.previewTargetName ??= 'preview';\n options.testTargetName ??= 'test';\n options.serveStaticTargetName ??= 'serve-static';\n return options;\n}\n"],"names":["createDependencies","createNodes","cachePath","join","projectGraphCacheDirectory","targetsCache","existsSync","readTargetsCache","calculatedTargets","readJsonFile","writeTargetsToCache","targets","writeJsonFile","configFilePath","options","context","projectRoot","dirname","siblingFiles","readdirSync","workspaceRoot","includes","normalizeOptions","hash","calculateHashForCreateNodes","getLockFileName","detectPackageManager","buildViteTargets","projects","root","viteConfig","loadConfigFromFile","command","mode","buildOutputs","testOutputs","getOutputs","config","namedInputs","getNamedInputs","buildTargetName","buildTarget","serveTargetName","serveTarget","previewTargetName","previewTarget","testTargetName","testTarget","serveStaticTargetName","serveStaticTarget","outputs","cwd","joinPathFragments","cache","dependsOn","inputs","externalDependencies","targetConfig","executor","test","build","normalizeOutputPath","buildOutputPath","outDir","reportsDirectoryPath","coverage","reportsDirectory","outputPath","undefined","isAbsolute","relative","startsWith"],"mappings":"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"}
1
+ {"version":3,"sources":["../../../../../packages/vite/src/plugins/plugin.ts"],"sourcesContent":["import {\n CreateDependencies,\n CreateNodes,\n CreateNodesContext,\n detectPackageManager,\n joinPathFragments,\n readJsonFile,\n TargetConfiguration,\n workspaceRoot,\n writeJsonFile,\n} from '@nx/devkit';\nimport { dirname, isAbsolute, join, relative } from 'path';\nimport { getNamedInputs } from '@nx/devkit/src/utils/get-named-inputs';\nimport { loadConfigFromFile, UserConfig } from 'vite';\nimport { existsSync, readdirSync } from 'fs';\nimport { calculateHashForCreateNodes } from '@nx/devkit/src/utils/calculate-hash-for-create-nodes';\nimport { projectGraphCacheDirectory } from 'nx/src/utils/cache-directory';\nimport { getLockFileName } from '@nx/js';\n\nexport interface VitePluginOptions {\n buildTargetName?: string;\n testTargetName?: string;\n serveTargetName?: string;\n previewTargetName?: string;\n serveStaticTargetName?: string;\n}\n\nconst cachePath = join(projectGraphCacheDirectory, 'vite.hash');\nconst targetsCache = existsSync(cachePath) ? readTargetsCache() : {};\n\nconst calculatedTargets: Record<\n string,\n Record<string, TargetConfiguration>\n> = {};\n\nfunction readTargetsCache(): Record<\n string,\n Record<string, TargetConfiguration>\n> {\n return readJsonFile(cachePath);\n}\n\nfunction writeTargetsToCache(\n targets: Record<string, Record<string, TargetConfiguration>>\n) {\n writeJsonFile(cachePath, targets);\n}\n\nexport const createDependencies: CreateDependencies = () => {\n writeTargetsToCache(calculatedTargets);\n return [];\n};\n\nexport const createNodes: CreateNodes<VitePluginOptions> = [\n '**/vite.config.{js,ts}',\n async (configFilePath, options, context) => {\n const projectRoot = dirname(configFilePath);\n // Do not create a project if package.json and project.json isn't there.\n const siblingFiles = readdirSync(join(context.workspaceRoot, projectRoot));\n if (\n !siblingFiles.includes('package.json') &&\n !siblingFiles.includes('project.json')\n ) {\n return {};\n }\n\n options = normalizeOptions(options);\n\n const hash = calculateHashForCreateNodes(projectRoot, options, context, [\n getLockFileName(detectPackageManager(context.workspaceRoot)),\n ]);\n const targets = targetsCache[hash]\n ? targetsCache[hash]\n : await buildViteTargets(configFilePath, projectRoot, options, context);\n\n calculatedTargets[hash] = targets;\n\n return {\n projects: {\n [projectRoot]: {\n root: projectRoot,\n targets,\n },\n },\n };\n },\n];\n\nasync function buildViteTargets(\n configFilePath: string,\n projectRoot: string,\n options: VitePluginOptions,\n context: CreateNodesContext\n) {\n const viteConfig = await loadConfigFromFile(\n {\n command: 'build',\n mode: 'production',\n },\n configFilePath\n );\n\n const { buildOutputs, testOutputs } = getOutputs(\n viteConfig?.config,\n projectRoot\n );\n\n const namedInputs = getNamedInputs(projectRoot, context);\n\n const targets: Record<string, TargetConfiguration> = {};\n\n targets[options.buildTargetName] = await buildTarget(\n options.buildTargetName,\n namedInputs,\n buildOutputs,\n projectRoot\n );\n\n targets[options.serveTargetName] = serveTarget(projectRoot);\n\n targets[options.previewTargetName] = previewTarget(projectRoot);\n\n targets[options.testTargetName] = await testTarget(\n namedInputs,\n testOutputs,\n projectRoot\n );\n\n targets[options.serveStaticTargetName] = serveStaticTarget(options) as {};\n\n return targets;\n}\n\nasync function buildTarget(\n buildTargetName: string,\n namedInputs: {\n [inputName: string]: any[];\n },\n outputs: string[],\n projectRoot: string\n) {\n return {\n command: `vite build`,\n options: { cwd: joinPathFragments(projectRoot) },\n cache: true,\n dependsOn: [`^${buildTargetName}`],\n inputs: [\n ...('production' in namedInputs\n ? ['production', '^production']\n : ['default', '^default']),\n {\n externalDependencies: ['vite'],\n },\n ],\n outputs,\n };\n}\n\nfunction serveTarget(projectRoot: string) {\n const targetConfig: TargetConfiguration = {\n command: `vite serve`,\n options: {\n cwd: joinPathFragments(projectRoot),\n },\n };\n\n return targetConfig;\n}\n\nfunction previewTarget(projectRoot: string) {\n const targetConfig: TargetConfiguration = {\n command: `vite preview`,\n options: {\n cwd: joinPathFragments(projectRoot),\n },\n };\n\n return targetConfig;\n}\n\nasync function testTarget(\n namedInputs: {\n [inputName: string]: any[];\n },\n outputs: string[],\n projectRoot: string\n) {\n return {\n command: `vitest run`,\n options: { cwd: joinPathFragments(projectRoot) },\n cache: true,\n inputs: [\n ...('production' in namedInputs\n ? ['default', '^production']\n : ['default', '^default']),\n {\n externalDependencies: ['vitest'],\n },\n ],\n outputs,\n };\n}\n\nfunction serveStaticTarget(options: VitePluginOptions) {\n const targetConfig: TargetConfiguration = {\n executor: '@nx/web:file-server',\n options: {\n buildTarget: `${options.buildTargetName}`,\n },\n };\n\n return targetConfig;\n}\n\nfunction getOutputs(\n viteConfig: UserConfig,\n projectRoot: string\n): {\n buildOutputs: string[];\n testOutputs: string[];\n} {\n const { build, test } = viteConfig;\n\n const buildOutputPath = normalizeOutputPath(\n build?.outDir,\n projectRoot,\n 'dist'\n );\n\n const reportsDirectoryPath = normalizeOutputPath(\n test?.coverage?.reportsDirectory,\n projectRoot,\n 'coverage'\n );\n\n return {\n buildOutputs: [buildOutputPath],\n testOutputs: [reportsDirectoryPath],\n };\n}\n\nfunction normalizeOutputPath(\n outputPath: string | undefined,\n projectRoot: string,\n path: 'coverage' | 'dist'\n): string | undefined {\n if (!outputPath) {\n if (projectRoot === '.') {\n return `{projectRoot}/${path}`;\n } else {\n return `{workspaceRoot}/${path}/{projectRoot}`;\n }\n } else {\n if (isAbsolute(outputPath)) {\n return `{workspaceRoot}/${relative(workspaceRoot, outputPath)}`;\n } else {\n if (outputPath.startsWith('..')) {\n return join('{workspaceRoot}', join(projectRoot, outputPath));\n } else {\n return join('{projectRoot}', outputPath);\n }\n }\n }\n}\n\nfunction normalizeOptions(options: VitePluginOptions): VitePluginOptions {\n options ??= {};\n options.buildTargetName ??= 'build';\n options.serveTargetName ??= 'serve';\n options.previewTargetName ??= 'preview';\n options.testTargetName ??= 'test';\n options.serveStaticTargetName ??= 'serve-static';\n return options;\n}\n"],"names":["createDependencies","createNodes","cachePath","join","projectGraphCacheDirectory","targetsCache","existsSync","readTargetsCache","calculatedTargets","readJsonFile","writeTargetsToCache","targets","writeJsonFile","configFilePath","options","context","projectRoot","dirname","siblingFiles","readdirSync","workspaceRoot","includes","normalizeOptions","hash","calculateHashForCreateNodes","getLockFileName","detectPackageManager","buildViteTargets","projects","root","viteConfig","loadConfigFromFile","command","mode","buildOutputs","testOutputs","getOutputs","config","namedInputs","getNamedInputs","buildTargetName","buildTarget","serveTargetName","serveTarget","previewTargetName","previewTarget","testTargetName","testTarget","serveStaticTargetName","serveStaticTarget","outputs","cwd","joinPathFragments","cache","dependsOn","inputs","externalDependencies","targetConfig","executor","test","build","buildOutputPath","normalizeOutputPath","outDir","reportsDirectoryPath","coverage","reportsDirectory","outputPath","path","isAbsolute","relative","startsWith"],"mappings":";;;;;;;;IAgDaA,kBAAkB;eAAlBA;;IAKAC,WAAW;eAAXA;;;wBA3CN;sBAC6C;gCACrB;sBACgB;oBACP;6CACI;gCACD;oBACX;AAUhC,MAAMC,YAAYC,IAAAA,UAAI,EAACC,0CAA0B,EAAE;AACnD,MAAMC,eAAeC,IAAAA,cAAU,EAACJ,aAAaK,qBAAqB,CAAC;AAEnE,MAAMC,oBAGF,CAAC;AAEL,SAASD;IAIP,OAAOE,IAAAA,oBAAY,EAACP;AACtB;AAEA,SAASQ,oBACPC,OAA4D;IAE5DC,IAAAA,qBAAa,EAACV,WAAWS;AAC3B;AAEO,MAAMX,qBAAyC;IACpDU,oBAAoBF;IACpB,OAAO,EAAE;AACX;AAEO,MAAMP,cAA8C;IACzD;IACA,OAAOY,gBAAgBC,SAASC;QAC9B,MAAMC,cAAcC,IAAAA,aAAO,EAACJ;QAC5B,wEAAwE;QACxE,MAAMK,eAAeC,IAAAA,eAAW,EAAChB,IAAAA,UAAI,EAACY,QAAQK,aAAa,EAAEJ;QAC7D,IACE,CAACE,aAAaG,QAAQ,CAAC,mBACvB,CAACH,aAAaG,QAAQ,CAAC,iBACvB;YACA,OAAO,CAAC;QACV;QAEAP,UAAUQ,iBAAiBR;QAE3B,MAAMS,OAAOC,IAAAA,wDAA2B,EAACR,aAAaF,SAASC,SAAS;YACtEU,IAAAA,mBAAe,EAACC,IAAAA,4BAAoB,EAACX,QAAQK,aAAa;SAC3D;QACD,MAAMT,UAAUN,YAAY,CAACkB,KAAK,GAC9BlB,YAAY,CAACkB,KAAK,GAClB,MAAMI,iBAAiBd,gBAAgBG,aAAaF,SAASC;QAEjEP,iBAAiB,CAACe,KAAK,GAAGZ;QAE1B,OAAO;YACLiB,UAAU;gBACR,CAACZ,YAAY,EAAE;oBACba,MAAMb;oBACNL;gBACF;YACF;QACF;IACF;CACD;AAED,eAAegB,iBACbd,cAAsB,EACtBG,WAAmB,EACnBF,OAA0B,EAC1BC,OAA2B;IAE3B,MAAMe,aAAa,MAAMC,IAAAA,wBAAkB,EACzC;QACEC,SAAS;QACTC,MAAM;IACR,GACApB;IAGF,MAAM,EAAEqB,YAAY,EAAEC,WAAW,EAAE,GAAGC,WACpCN,8BAAAA,WAAYO,MAAM,EAClBrB;IAGF,MAAMsB,cAAcC,IAAAA,8BAAc,EAACvB,aAAaD;IAEhD,MAAMJ,UAA+C,CAAC;IAEtDA,OAAO,CAACG,QAAQ0B,eAAe,CAAC,GAAG,MAAMC,YACvC3B,QAAQ0B,eAAe,EACvBF,aACAJ,cACAlB;IAGFL,OAAO,CAACG,QAAQ4B,eAAe,CAAC,GAAGC,YAAY3B;IAE/CL,OAAO,CAACG,QAAQ8B,iBAAiB,CAAC,GAAGC,cAAc7B;IAEnDL,OAAO,CAACG,QAAQgC,cAAc,CAAC,GAAG,MAAMC,WACtCT,aACAH,aACAnB;IAGFL,OAAO,CAACG,QAAQkC,qBAAqB,CAAC,GAAGC,kBAAkBnC;IAE3D,OAAOH;AACT;AAEA,eAAe8B,YACbD,eAAuB,EACvBF,WAEC,EACDY,OAAiB,EACjBlC,WAAmB;IAEnB,OAAO;QACLgB,SAAS,CAAC,UAAU,CAAC;QACrBlB,SAAS;YAAEqC,KAAKC,IAAAA,yBAAiB,EAACpC;QAAa;QAC/CqC,OAAO;QACPC,WAAW;YAAC,CAAC,CAAC,EAAEd,gBAAgB,CAAC;SAAC;QAClCe,QAAQ;eACF,gBAAgBjB,cAChB;gBAAC;gBAAc;aAAc,GAC7B;gBAAC;gBAAW;aAAW;YAC3B;gBACEkB,sBAAsB;oBAAC;iBAAO;YAChC;SACD;QACDN;IACF;AACF;AAEA,SAASP,YAAY3B,WAAmB;IACtC,MAAMyC,eAAoC;QACxCzB,SAAS,CAAC,UAAU,CAAC;QACrBlB,SAAS;YACPqC,KAAKC,IAAAA,yBAAiB,EAACpC;QACzB;IACF;IAEA,OAAOyC;AACT;AAEA,SAASZ,cAAc7B,WAAmB;IACxC,MAAMyC,eAAoC;QACxCzB,SAAS,CAAC,YAAY,CAAC;QACvBlB,SAAS;YACPqC,KAAKC,IAAAA,yBAAiB,EAACpC;QACzB;IACF;IAEA,OAAOyC;AACT;AAEA,eAAeV,WACbT,WAEC,EACDY,OAAiB,EACjBlC,WAAmB;IAEnB,OAAO;QACLgB,SAAS,CAAC,UAAU,CAAC;QACrBlB,SAAS;YAAEqC,KAAKC,IAAAA,yBAAiB,EAACpC;QAAa;QAC/CqC,OAAO;QACPE,QAAQ;eACF,gBAAgBjB,cAChB;gBAAC;gBAAW;aAAc,GAC1B;gBAAC;gBAAW;aAAW;YAC3B;gBACEkB,sBAAsB;oBAAC;iBAAS;YAClC;SACD;QACDN;IACF;AACF;AAEA,SAASD,kBAAkBnC,OAA0B;IACnD,MAAM2C,eAAoC;QACxCC,UAAU;QACV5C,SAAS;YACP2B,aAAa,CAAC,EAAE3B,QAAQ0B,eAAe,CAAC,CAAC;QAC3C;IACF;IAEA,OAAOiB;AACT;AAEA,SAASrB,WACPN,UAAsB,EACtBd,WAAmB;QAcjB2C;IATF,MAAM,EAAEC,KAAK,EAAED,IAAI,EAAE,GAAG7B;IAExB,MAAM+B,kBAAkBC,oBACtBF,yBAAAA,MAAOG,MAAM,EACb/C,aACA;IAGF,MAAMgD,uBAAuBF,oBAC3BH,yBAAAA,iBAAAA,KAAMM,QAAQ,qBAAdN,eAAgBO,gBAAgB,EAChClD,aACA;IAGF,OAAO;QACLkB,cAAc;YAAC2B;SAAgB;QAC/B1B,aAAa;YAAC6B;SAAqB;IACrC;AACF;AAEA,SAASF,oBACPK,UAA8B,EAC9BnD,WAAmB,EACnBoD,IAAyB;IAEzB,IAAI,CAACD,YAAY;QACf,IAAInD,gBAAgB,KAAK;YACvB,OAAO,CAAC,cAAc,EAAEoD,KAAK,CAAC;QAChC,OAAO;YACL,OAAO,CAAC,gBAAgB,EAAEA,KAAK,cAAc,CAAC;QAChD;IACF,OAAO;QACL,IAAIC,IAAAA,gBAAU,EAACF,aAAa;YAC1B,OAAO,CAAC,gBAAgB,EAAEG,IAAAA,cAAQ,EAAClD,qBAAa,EAAE+C,YAAY,CAAC;QACjE,OAAO;YACL,IAAIA,WAAWI,UAAU,CAAC,OAAO;gBAC/B,OAAOpE,IAAAA,UAAI,EAAC,mBAAmBA,IAAAA,UAAI,EAACa,aAAamD;YACnD,OAAO;gBACL,OAAOhE,IAAAA,UAAI,EAAC,iBAAiBgE;YAC/B;QACF;IACF;AACF;AAEA,SAAS7C,iBAAiBR,OAA0B;QAElDA,UACAA,WACAA,WACAA,WACAA;IALAA,kBAAAA,UAAAA,UAAY,CAAC;;IACbA,qBAAAA,WAAAA,SAAQ0B,8CAAR1B,SAAQ0B,kBAAoB;;IAC5B1B,qBAAAA,YAAAA,SAAQ4B,8CAAR5B,UAAQ4B,kBAAoB;;IAC5B5B,uBAAAA,YAAAA,SAAQ8B,kDAAR9B,UAAQ8B,oBAAsB;;IAC9B9B,oBAAAA,YAAAA,SAAQgC,4CAARhC,UAAQgC,iBAAmB;;IAC3BhC,2BAAAA,YAAAA,SAAQkC,0DAARlC,UAAQkC,wBAA0B;IAClC,OAAOlC;AACT"}
@@ -392,12 +392,13 @@ function moveAndEditIndexHtml(tree, options, buildTarget) {
392
392
  function createOrEditViteConfig(tree, options, onlyVitest, projectAlreadyHasViteTargets, vitestFileName) {
393
393
  const { root: projectRoot } = (0, _devkit.readProjectConfiguration)(tree, options.project);
394
394
  const viteConfigPath = vitestFileName ? `${projectRoot}/vitest.config.ts` : `${projectRoot}/vite.config.ts`;
395
+ const buildOutDir = projectRoot === '.' ? `./dist/${options.project}` : `${(0, _devkit.offsetFromRoot)(projectRoot)}dist/${projectRoot}`;
395
396
  var _options_rollupOptionsExternal;
396
397
  const buildOption = onlyVitest ? '' : options.includeLib ? `
397
398
  // Configuration for building your library.
398
399
  // See: https://vitejs.dev/guide/build.html#library-mode
399
400
  build: {
400
- outDir: '${(0, _devkit.offsetFromRoot)(projectRoot)}dist/${projectRoot}',
401
+ outDir: '${buildOutDir}',
401
402
  reportCompressedSize: true,
402
403
  commonjsOptions: {
403
404
  transformMixedEsModules: true,
@@ -417,7 +418,7 @@ function createOrEditViteConfig(tree, options, onlyVitest, projectAlreadyHasVite
417
418
  },
418
419
  },` : `
419
420
  build: {
420
- outDir: '${(0, _devkit.offsetFromRoot)(projectRoot)}dist/${projectRoot}',
421
+ outDir: '${buildOutDir}',
421
422
  reportCompressedSize: true,
422
423
  commonjsOptions: {
423
424
  transformMixedEsModules: true,
@@ -438,6 +439,7 @@ function createOrEditViteConfig(tree, options, onlyVitest, projectAlreadyHasVite
438
439
  if (!onlyVitest && options.includeLib) {
439
440
  plugins.push(`dts({ entryRoot: 'src', tsConfigFilePath: path.join(__dirname, 'tsconfig.lib.json'), skipDiagnostics: true })`);
440
441
  }
442
+ const reportsDirectory = projectRoot === '.' ? `./coverage/${options.project}` : `${(0, _devkit.offsetFromRoot)(projectRoot)}coverage/${projectRoot}`;
441
443
  var _options_testEnvironment;
442
444
  const testOption = options.includeVitest ? `test: {
443
445
  globals: true,
@@ -449,7 +451,7 @@ function createOrEditViteConfig(tree, options, onlyVitest, projectAlreadyHasVite
449
451
  ${options.inSourceTests ? `includeSource: ['src/**/*.{js,mjs,cjs,ts,mts,cts,jsx,tsx}'],` : ''}
450
452
  reporters: ['default'],
451
453
  coverage: {
452
- reportsDirectory: '${(0, _devkit.offsetFromRoot)(projectRoot)}coverage/${projectRoot}',
454
+ reportsDirectory: '${reportsDirectory}',
453
455
  provider: ${options.coverageProvider ? `'${options.coverageProvider}'` : `'v8'`},
454
456
  }
455
457
  },` : '';
@@ -473,7 +475,7 @@ function createOrEditViteConfig(tree, options, onlyVitest, projectAlreadyHasVite
473
475
  // },`;
474
476
  const cacheDir = `cacheDir: '${(0, _devkit.offsetFromRoot)(projectRoot)}node_modules/.vite/${projectRoot}',`;
475
477
  if (tree.exists(viteConfigPath)) {
476
- handleViteConfigFileExists(tree, viteConfigPath, options, buildOption, imports, plugins, testOption, cacheDir, (0, _devkit.offsetFromRoot)(projectRoot), projectRoot, projectAlreadyHasViteTargets);
478
+ handleViteConfigFileExists(tree, viteConfigPath, options, buildOption, buildOutDir, imports, plugins, testOption, reportsDirectory, cacheDir, (0, _devkit.offsetFromRoot)(projectRoot), projectAlreadyHasViteTargets);
477
479
  return;
478
480
  }
479
481
  viteConfigContent = `
@@ -573,7 +575,7 @@ async function handleUnknownExecutors(projectName) {
573
575
  `);
574
576
  }
575
577
  }
576
- function handleViteConfigFileExists(tree, viteConfigPath, options, buildOption, imports, plugins, testOption, cacheDir, offsetFromRoot, projectRoot, projectAlreadyHasViteTargets) {
578
+ function handleViteConfigFileExists(tree, viteConfigPath, options, buildOption, buildOutDir, imports, plugins, testOption, reportsDirectory, cacheDir, offsetFromRoot, projectAlreadyHasViteTargets) {
577
579
  if ((projectAlreadyHasViteTargets == null ? void 0 : projectAlreadyHasViteTargets.build) && (projectAlreadyHasViteTargets == null ? void 0 : projectAlreadyHasViteTargets.test)) {
578
580
  return;
579
581
  }
@@ -594,13 +596,13 @@ function handleViteConfigFileExists(tree, viteConfigPath, options, buildOption,
594
596
  rollupOptions: {
595
597
  external: (_options_rollupOptionsExternal = options.rollupOptionsExternal) != null ? _options_rollupOptionsExternal : []
596
598
  },
597
- outDir: `${offsetFromRoot}dist/${projectRoot}`,
599
+ outDir: buildOutDir,
598
600
  reportCompressedSize: true,
599
601
  commonjsOptions: {
600
602
  transformMixedEsModules: true
601
603
  }
602
604
  } : {
603
- outDir: `${offsetFromRoot}dist/${projectRoot}`,
605
+ outDir: buildOutDir,
604
606
  reportCompressedSize: true,
605
607
  commonjsOptions: {
606
608
  transformMixedEsModules: true
@@ -620,7 +622,7 @@ function handleViteConfigFileExists(tree, viteConfigPath, options, buildOption,
620
622
  'default'
621
623
  ],
622
624
  coverage: {
623
- reportsDirectory: `${offsetFromRoot}coverage/${projectRoot}`,
625
+ reportsDirectory: reportsDirectory,
624
626
  provider: `${(_options_coverageProvider = options.coverageProvider) != null ? _options_coverageProvider : 'v8'}`
625
627
  }
626
628
  };
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../../packages/vite/src/utils/generator-utils.ts"],"sourcesContent":["import {\n joinPathFragments,\n logger,\n offsetFromRoot,\n readJson,\n readProjectConfiguration,\n TargetConfiguration,\n Tree,\n updateProjectConfiguration,\n writeJson,\n} from '@nx/devkit';\nimport { ViteBuildExecutorOptions } from '../executors/build/schema';\nimport { ViteDevServerExecutorOptions } from '../executors/dev-server/schema';\nimport { VitePreviewServerExecutorOptions } from '../executors/preview-server/schema';\nimport { VitestExecutorOptions } from '../executors/test/schema';\nimport { ViteConfigurationGeneratorSchema } from '../generators/configuration/schema';\nimport { ensureViteConfigIsCorrect } from './vite-config-edit-utils';\n\nexport type Target = 'build' | 'serve' | 'test' | 'preview';\nexport type TargetFlags = Partial<Record<Target, boolean>>;\nexport type UserProvidedTargetName = Partial<Record<Target, string>>;\nexport type ValidFoundTargetName = Partial<Record<Target, string>>;\n\nexport function findExistingTargetsInProject(\n targets: {\n [targetName: string]: TargetConfiguration;\n },\n userProvidedTargets?: UserProvidedTargetName\n): {\n validFoundTargetName: ValidFoundTargetName;\n projectContainsUnsupportedExecutor: boolean;\n userProvidedTargetIsUnsupported: TargetFlags;\n alreadyHasNxViteTargets: TargetFlags;\n} {\n const output: ReturnType<typeof findExistingTargetsInProject> = {\n validFoundTargetName: {},\n projectContainsUnsupportedExecutor: false,\n userProvidedTargetIsUnsupported: {},\n alreadyHasNxViteTargets: {},\n };\n\n const supportedExecutors = {\n build: [\n '@nxext/vite:build',\n '@nx/js:babel',\n '@nx/js:swc',\n '@nx/webpack:webpack',\n '@nx/rollup:rollup',\n '@nrwl/js:babel',\n '@nrwl/js:swc',\n '@nrwl/webpack:webpack',\n '@nrwl/rollup:rollup',\n '@nrwl/web:rollup',\n ],\n serve: [\n '@nxext/vite:dev',\n '@nx/webpack:dev-server',\n '@nrwl/webpack:dev-server',\n ],\n test: ['@nx/jest:jest', '@nrwl/jest:jest', '@nxext/vitest:vitest'],\n };\n\n const unsupportedExecutors = [\n '@nx/angular:ng-packagr-lite',\n '@nx/angular:package',\n '@nx/angular:webpack-browser',\n '@nx/esbuild:esbuild',\n '@nx/react-native:run-ios',\n '@nx/react-native:start',\n '@nx/react-native:run-android',\n '@nx/react-native:bundle',\n '@nx/react-native:build-android',\n '@nx/react-native:bundle',\n '@nx/next:build',\n '@nx/next:server',\n '@nx/js:tsc',\n '@nrwl/angular:ng-packagr-lite',\n '@nrwl/angular:package',\n '@nrwl/angular:webpack-browser',\n '@nrwl/esbuild:esbuild',\n '@nrwl/react-native:run-ios',\n '@nrwl/react-native:start',\n '@nrwl/react-native:run-android',\n '@nrwl/react-native:bundle',\n '@nrwl/react-native:build-android',\n '@nrwl/react-native:bundle',\n '@nrwl/next:build',\n '@nrwl/next:server',\n '@nrwl/js:tsc',\n '@angular-devkit/build-angular:browser',\n '@angular-devkit/build-angular:dev-server',\n ];\n\n // First, we check if the user has provided a target\n // If they have, we check if the executor the target is using is supported\n // If it's not supported, then we set the unsupported flag to true for that target\n\n function checkUserProvidedTarget(target: Target) {\n if (userProvidedTargets?.[target]) {\n if (\n supportedExecutors[target].includes(\n targets[userProvidedTargets[target]]?.executor\n )\n ) {\n output.validFoundTargetName[target] = userProvidedTargets[target];\n } else {\n output.userProvidedTargetIsUnsupported[target] = true;\n }\n }\n }\n\n checkUserProvidedTarget('build');\n checkUserProvidedTarget('serve');\n checkUserProvidedTarget('test');\n\n // Returns early when we have a build, serve, and test targets.\n if (\n output.validFoundTargetName.build &&\n output.validFoundTargetName.serve &&\n output.validFoundTargetName.test\n ) {\n return output;\n }\n\n // We try to find the targets that are using the supported executors\n // for build, serve and test, since these are the ones we will be converting\n for (const target in targets) {\n const executorName = targets[target].executor;\n\n const hasViteTargets = output.alreadyHasNxViteTargets;\n hasViteTargets.build ||=\n executorName === '@nx/vite:build' || executorName === '@nrwl/vite:build';\n hasViteTargets.serve ||=\n executorName === '@nx/vite:dev-server' ||\n executorName === '@nrwl/vite:dev-server';\n hasViteTargets.test ||=\n executorName === '@nx/vite:test' || executorName === '@nrwl/vite:test';\n hasViteTargets.preview ||=\n executorName === '@nx/vite:preview-server' ||\n executorName === '@nrwl/vite:preview-server';\n\n const foundTargets = output.validFoundTargetName;\n if (\n !foundTargets.build &&\n supportedExecutors.build.includes(executorName)\n ) {\n foundTargets.build = target;\n }\n if (\n !foundTargets.serve &&\n supportedExecutors.serve.includes(executorName)\n ) {\n foundTargets.serve = target;\n }\n if (!foundTargets.test && supportedExecutors.test.includes(executorName)) {\n foundTargets.test = target;\n }\n\n output.projectContainsUnsupportedExecutor ||=\n unsupportedExecutors.includes(executorName);\n }\n\n return output;\n}\n\nexport function addOrChangeTestTarget(\n tree: Tree,\n options: ViteConfigurationGeneratorSchema,\n target: string\n) {\n const project = readProjectConfiguration(tree, options.project);\n\n const reportsDirectory = joinPathFragments(\n offsetFromRoot(project.root),\n 'coverage',\n project.root === '.' ? options.project : project.root\n );\n const testOptions: VitestExecutorOptions = {\n reportsDirectory,\n };\n\n project.targets ??= {};\n\n if (project.targets[target]) {\n project.targets[target].executor = '@nx/vite:test';\n delete project.targets[target].options?.jestConfig;\n } else {\n project.targets[target] = {\n executor: '@nx/vite:test',\n outputs: ['{options.reportsDirectory}'],\n options: testOptions,\n };\n }\n\n updateProjectConfiguration(tree, options.project, project);\n}\n\nexport function addOrChangeBuildTarget(\n tree: Tree,\n options: ViteConfigurationGeneratorSchema,\n target: string\n) {\n const project = readProjectConfiguration(tree, options.project);\n\n const buildOptions: ViteBuildExecutorOptions = {\n outputPath: joinPathFragments(\n 'dist',\n project.root != '.' ? project.root : options.project\n ),\n };\n\n project.targets ??= {};\n\n if (project.targets[target]) {\n buildOptions.fileReplacements =\n project.targets[target].options?.fileReplacements;\n\n if (project.targets[target].executor === '@nxext/vite:build') {\n buildOptions['base'] = project.targets[target].options?.baseHref;\n buildOptions['sourcemap'] = project.targets[target].options?.sourcemaps;\n }\n project.targets[target].options = { ...buildOptions };\n project.targets[target].executor = '@nx/vite:build';\n } else {\n project.targets[target] = {\n executor: '@nx/vite:build',\n outputs: ['{options.outputPath}'],\n defaultConfiguration: 'production',\n options: buildOptions,\n configurations: {\n development: {\n mode: 'development',\n },\n production: {\n mode: 'production',\n },\n },\n };\n }\n\n updateProjectConfiguration(tree, options.project, project);\n}\n\nexport function addOrChangeServeTarget(\n tree: Tree,\n options: ViteConfigurationGeneratorSchema,\n target: string\n) {\n const project = readProjectConfiguration(tree, options.project);\n\n project.targets ??= {};\n\n if (project.targets[target]) {\n const serveTarget = project.targets[target];\n const serveOptions: ViteDevServerExecutorOptions = {\n buildTarget: `${options.project}:build`,\n };\n if (serveTarget.executor === '@nxext/vite:dev') {\n serveOptions.proxyConfig = project.targets[target].options.proxyConfig;\n }\n serveTarget.executor = '@nx/vite:dev-server';\n serveTarget.options = serveOptions;\n } else {\n project.targets[target] = {\n executor: '@nx/vite:dev-server',\n defaultConfiguration: 'development',\n options: {\n buildTarget: `${options.project}:build`,\n },\n configurations: {\n development: {\n buildTarget: `${options.project}:build:development`,\n hmr: true,\n },\n production: {\n buildTarget: `${options.project}:build:production`,\n hmr: false,\n },\n },\n };\n }\n\n updateProjectConfiguration(tree, options.project, project);\n}\n\n/**\n * Adds a target for the preview server.\n *\n * @param tree\n * @param options\n * @param serveTarget An existing serve target.\n * @param previewTarget The preview target to create.\n */\nexport function addPreviewTarget(\n tree: Tree,\n options: ViteConfigurationGeneratorSchema,\n serveTarget: string\n) {\n const project = readProjectConfiguration(tree, options.project);\n\n const previewOptions: VitePreviewServerExecutorOptions = {\n buildTarget: `${options.project}:build`,\n };\n\n project.targets ??= {};\n\n // Update the options from the passed serve target.\n if (project.targets[serveTarget]) {\n const target = project.targets[serveTarget];\n if (target.executor === '@nxext/vite:dev') {\n previewOptions.proxyConfig = target.options.proxyConfig;\n }\n previewOptions['https'] = target.options?.https;\n previewOptions['open'] = target.options?.open;\n }\n\n // Adds a preview target.\n project.targets.preview = {\n executor: '@nx/vite:preview-server',\n defaultConfiguration: 'development',\n options: previewOptions,\n configurations: {\n development: {\n buildTarget: `${options.project}:build:development`,\n },\n production: {\n buildTarget: `${options.project}:build:production`,\n },\n },\n };\n\n updateProjectConfiguration(tree, options.project, project);\n}\n\nexport function editTsConfig(\n tree: Tree,\n options: ViteConfigurationGeneratorSchema\n) {\n const projectConfig = readProjectConfiguration(tree, options.project);\n\n const config = readJson(tree, `${projectConfig.root}/tsconfig.json`);\n\n const commonCompilerOptions = {\n target: 'ESNext',\n useDefineForClassFields: true,\n module: 'ESNext',\n strict: true,\n moduleResolution: 'Node',\n resolveJsonModule: true,\n isolatedModules: true,\n types: ['vite/client'],\n noEmit: true,\n };\n\n switch (options.uiFramework) {\n case 'react':\n config.compilerOptions = {\n ...commonCompilerOptions,\n lib: ['DOM', 'DOM.Iterable', 'ESNext'],\n allowJs: false,\n esModuleInterop: false,\n skipLibCheck: true,\n allowSyntheticDefaultImports: true,\n forceConsistentCasingInFileNames: true,\n jsx: 'react-jsx',\n };\n config.include = [...config.include, 'src'];\n break;\n case 'none':\n config.compilerOptions = {\n ...commonCompilerOptions,\n lib: ['ESNext', 'DOM'],\n skipLibCheck: true,\n esModuleInterop: true,\n strict: true,\n noUnusedLocals: true,\n noUnusedParameters: true,\n noImplicitReturns: true,\n };\n config.include = [...config.include, 'src'];\n break;\n default:\n break;\n }\n\n writeJson(tree, `${projectConfig.root}/tsconfig.json`, config);\n}\n\nexport function deleteWebpackConfig(\n tree: Tree,\n projectRoot: string,\n webpackConfigFilePath?: string\n) {\n const webpackConfigPath =\n webpackConfigFilePath && tree.exists(webpackConfigFilePath)\n ? webpackConfigFilePath\n : tree.exists(`${projectRoot}/webpack.config.js`)\n ? `${projectRoot}/webpack.config.js`\n : tree.exists(`${projectRoot}/webpack.config.ts`)\n ? `${projectRoot}/webpack.config.ts`\n : null;\n if (webpackConfigPath) {\n tree.delete(webpackConfigPath);\n }\n}\n\nexport function moveAndEditIndexHtml(\n tree: Tree,\n options: ViteConfigurationGeneratorSchema,\n buildTarget: string\n) {\n const projectConfig = readProjectConfiguration(tree, options.project);\n\n let indexHtmlPath =\n projectConfig.targets?.[buildTarget]?.options?.index ??\n `${projectConfig.root}/src/index.html`;\n let mainPath =\n projectConfig.targets?.[buildTarget]?.options?.main ??\n `${projectConfig.root}/src/main.ts${\n options.uiFramework === 'react' ? 'x' : ''\n }`;\n\n if (projectConfig.root !== '.') {\n mainPath = mainPath.replace(projectConfig.root, '');\n }\n\n if (\n !tree.exists(indexHtmlPath) &&\n tree.exists(`${projectConfig.root}/index.html`)\n ) {\n indexHtmlPath = `${projectConfig.root}/index.html`;\n }\n\n if (tree.exists(indexHtmlPath)) {\n const indexHtmlContent = tree.read(indexHtmlPath, 'utf8');\n if (\n !indexHtmlContent.includes(\n `<script type='module' src='${mainPath}'></script>`\n )\n ) {\n tree.write(\n `${projectConfig.root}/index.html`,\n indexHtmlContent.replace(\n '</body>',\n `<script type='module' src='${mainPath}'></script>\n </body>`\n )\n );\n\n if (tree.exists(`${projectConfig.root}/src/index.html`)) {\n tree.delete(`${projectConfig.root}/src/index.html`);\n }\n }\n } else {\n tree.write(\n `${projectConfig.root}/index.html`,\n `<!DOCTYPE html>\n <html lang='en'>\n <head>\n <meta charset='UTF-8' />\n <link rel='icon' href='/favicon.ico' />\n <meta name='viewport' content='width=device-width, initial-scale=1.0' />\n <title>Vite</title>\n </head>\n <body>\n <div id='root'></div>\n <script type='module' src='${mainPath}'></script>\n </body>\n </html>`\n );\n }\n}\n\nexport interface ViteConfigFileOptions {\n project: string;\n includeLib?: boolean;\n includeVitest?: boolean;\n inSourceTests?: boolean;\n testEnvironment?: 'node' | 'jsdom' | 'happy-dom' | 'edge-runtime' | string;\n rollupOptionsExternal?: string[];\n imports?: string[];\n plugins?: string[];\n coverageProvider?: 'v8' | 'istanbul' | 'custom';\n}\n\nexport function createOrEditViteConfig(\n tree: Tree,\n options: ViteConfigFileOptions,\n onlyVitest: boolean,\n projectAlreadyHasViteTargets?: TargetFlags,\n vitestFileName?: boolean\n) {\n const { root: projectRoot } = readProjectConfiguration(tree, options.project);\n\n const viteConfigPath = vitestFileName\n ? `${projectRoot}/vitest.config.ts`\n : `${projectRoot}/vite.config.ts`;\n\n const buildOption = onlyVitest\n ? ''\n : options.includeLib\n ? `\n // Configuration for building your library.\n // See: https://vitejs.dev/guide/build.html#library-mode\n build: {\n outDir: '${offsetFromRoot(projectRoot)}dist/${projectRoot}',\n reportCompressedSize: true,\n commonjsOptions: {\n transformMixedEsModules: true,\n },\n lib: {\n // Could also be a dictionary or array of multiple entry points.\n entry: 'src/index.ts',\n name: '${options.project}',\n fileName: 'index',\n // Change this to the formats you want to support.\n // Don't forget to update your package.json as well.\n formats: ['es', 'cjs']\n },\n rollupOptions: {\n // External packages that should not be bundled into your library.\n external: [${options.rollupOptionsExternal ?? ''}]\n },\n },`\n : `\n build: {\n outDir: '${offsetFromRoot(projectRoot)}dist/${projectRoot}',\n reportCompressedSize: true,\n commonjsOptions: {\n transformMixedEsModules: true,\n },\n },\n `;\n\n const imports: string[] = options.imports ? options.imports : [];\n\n if (!onlyVitest && options.includeLib) {\n imports.push(\n `import dts from 'vite-plugin-dts'`,\n `import * as path from 'path'`\n );\n }\n\n let viteConfigContent = '';\n\n const plugins = options.plugins\n ? [...options.plugins, `nxViteTsPaths()`]\n : [`nxViteTsPaths()`];\n\n if (!onlyVitest && options.includeLib) {\n plugins.push(\n `dts({ entryRoot: 'src', tsConfigFilePath: path.join(__dirname, 'tsconfig.lib.json'), skipDiagnostics: true })`\n );\n }\n\n const testOption = options.includeVitest\n ? `test: {\n globals: true,\n cache: {\n dir: '${offsetFromRoot(projectRoot)}node_modules/.vitest'\n },\n environment: '${options.testEnvironment ?? 'jsdom'}',\n include: ['src/**/*.{test,spec}.{js,mjs,cjs,ts,mts,cts,jsx,tsx}'],\n ${\n options.inSourceTests\n ? `includeSource: ['src/**/*.{js,mjs,cjs,ts,mts,cts,jsx,tsx}'],`\n : ''\n }\n reporters: ['default'],\n coverage: {\n reportsDirectory: '${offsetFromRoot(projectRoot)}coverage/${projectRoot}',\n provider: ${\n options.coverageProvider ? `'${options.coverageProvider}'` : `'v8'`\n },\n }\n },`\n : '';\n\n const defineOption = options.inSourceTests\n ? `define: {\n 'import.meta.vitest': undefined\n },`\n : '';\n\n const devServerOption = onlyVitest\n ? ''\n : options.includeLib\n ? ''\n : `\n server:{\n port: 4200,\n host: 'localhost',\n },`;\n\n const previewServerOption = onlyVitest\n ? ''\n : options.includeLib\n ? ''\n : `\n preview:{\n port: 4300,\n host: 'localhost',\n },`;\n\n const workerOption = `\n // Uncomment this if you are using workers. \n // worker: {\n // plugins: [ nxViteTsPaths() ],\n // },`;\n\n const cacheDir = `cacheDir: '${offsetFromRoot(\n projectRoot\n )}node_modules/.vite/${projectRoot}',`;\n\n if (tree.exists(viteConfigPath)) {\n handleViteConfigFileExists(\n tree,\n viteConfigPath,\n options,\n buildOption,\n imports,\n plugins,\n testOption,\n cacheDir,\n offsetFromRoot(projectRoot),\n projectRoot,\n projectAlreadyHasViteTargets\n );\n return;\n }\n\n viteConfigContent = `\n /// <reference types='vitest' />\n import { defineConfig } from 'vite';\n ${imports.join(';\\n')}${imports.length ? ';' : ''}\n import { nxViteTsPaths } from '@nx/vite/plugins/nx-tsconfig-paths.plugin';\n \n export default defineConfig({\n root: __dirname,\n ${cacheDir}\n ${devServerOption}\n ${previewServerOption}\n \n plugins: [${plugins.join(',\\n')}],\n ${workerOption}\n ${buildOption}\n ${defineOption}\n ${testOption}\n });`;\n\n tree.write(viteConfigPath, viteConfigContent);\n}\n\nexport function normalizeViteConfigFilePathWithTree(\n tree: Tree,\n projectRoot: string,\n configFile?: string\n): string {\n return configFile && tree.exists(configFile)\n ? configFile\n : tree.exists(joinPathFragments(`${projectRoot}/vite.config.ts`))\n ? joinPathFragments(`${projectRoot}/vite.config.ts`)\n : tree.exists(joinPathFragments(`${projectRoot}/vite.config.js`))\n ? joinPathFragments(`${projectRoot}/vite.config.js`)\n : undefined;\n}\n\nexport function getViteConfigPathForProject(\n tree: Tree,\n projectName: string,\n target?: string\n) {\n let viteConfigPath: string | undefined;\n const { targets, root } = readProjectConfiguration(tree, projectName);\n if (target) {\n viteConfigPath = targets?.[target]?.options?.configFile;\n } else {\n const config = Object.values(targets).find(\n (config) =>\n config.executor === '@nrwl/nx:build' ||\n config.executor === '@nrwl/vite:build'\n );\n viteConfigPath = config?.options?.configFile;\n }\n\n return normalizeViteConfigFilePathWithTree(tree, root, viteConfigPath);\n}\n\nexport async function handleUnsupportedUserProvidedTargets(\n userProvidedTargetIsUnsupported: TargetFlags,\n userProvidedTargetName: UserProvidedTargetName,\n validFoundTargetName: ValidFoundTargetName\n) {\n if (userProvidedTargetIsUnsupported.build && validFoundTargetName.build) {\n await handleUnsupportedUserProvidedTargetsErrors(\n userProvidedTargetName.build,\n validFoundTargetName.build,\n 'build',\n 'build'\n );\n }\n\n if (userProvidedTargetIsUnsupported.serve && validFoundTargetName.serve) {\n await handleUnsupportedUserProvidedTargetsErrors(\n userProvidedTargetName.serve,\n validFoundTargetName.serve,\n 'serve',\n 'dev-server'\n );\n }\n\n if (userProvidedTargetIsUnsupported.test && validFoundTargetName.test) {\n await handleUnsupportedUserProvidedTargetsErrors(\n userProvidedTargetName.test,\n validFoundTargetName.test,\n 'test',\n 'test'\n );\n }\n}\n\nasync function handleUnsupportedUserProvidedTargetsErrors(\n userProvidedTargetName: string,\n validFoundTargetName: string,\n target: Target,\n executor: 'build' | 'dev-server' | 'test'\n) {\n logger.warn(\n `The custom ${target} target you provided (${userProvidedTargetName}) cannot be converted to use the @nx/vite:${executor} executor.\n However, we found the following ${target} target in your project that can be converted: ${validFoundTargetName}\n\n Please note that converting a potentially non-compatible project to use Vite.js may result in unexpected behavior. Always commit\n your changes before converting a project to use Vite.js, and test the converted project thoroughly before deploying it.\n `\n );\n const { Confirm } = require('enquirer');\n const prompt = new Confirm({\n name: 'question',\n message: `Should we convert the ${validFoundTargetName} target to use the @nx/vite:${executor} executor?`,\n initial: true,\n });\n const shouldConvert = await prompt.run();\n if (!shouldConvert) {\n throw new Error(\n `The ${target} target ${userProvidedTargetName} cannot be converted to use the @nx/vite:${executor} executor.\n Please try again, either by providing a different ${target} target or by not providing a target at all (Nx will\n convert the first one it finds, most probably this one: ${validFoundTargetName})\n\n Please note that converting a potentially non-compatible project to use Vite.js may result in unexpected behavior. Always commit\n your changes before converting a project to use Vite.js, and test the converted project thoroughly before deploying it.\n `\n );\n }\n}\n\nexport async function handleUnknownExecutors(projectName: string) {\n logger.warn(\n `\n We could not find any targets in project ${projectName} that use executors which \n can be converted to the @nx/vite executors.\n\n This either means that your project may not have a target \n for building, serving, or testing at all, or that your targets are \n using executors that are not known to Nx.\n \n If you still want to convert your project to use the @nx/vite executors,\n please make sure to commit your changes before running this generator.\n `\n );\n\n const { Confirm } = require('enquirer');\n const prompt = new Confirm({\n name: 'question',\n message: `Should Nx convert your project to use the @nx/vite executors?`,\n initial: true,\n });\n const shouldConvert = await prompt.run();\n if (!shouldConvert) {\n throw new Error(`\n Nx could not verify that the executors you are using can be converted to the @nx/vite executors.\n Please try again with a different project.\n `);\n }\n}\n\nfunction handleViteConfigFileExists(\n tree: Tree,\n viteConfigPath: string,\n options: ViteConfigFileOptions,\n buildOption: string,\n imports: string[],\n plugins: string[],\n testOption: string,\n cacheDir: string,\n offsetFromRoot: string,\n projectRoot: string,\n projectAlreadyHasViteTargets?: TargetFlags\n) {\n if (\n projectAlreadyHasViteTargets?.build &&\n projectAlreadyHasViteTargets?.test\n ) {\n return;\n }\n\n if (process.env.NX_VERBOSE_LOGGING === 'true') {\n logger.info(\n `vite.config.ts already exists for project ${options.project}.`\n );\n }\n\n const buildOptionObject = options.includeLib\n ? {\n lib: {\n entry: 'src/index.ts',\n name: options.project,\n fileName: 'index',\n formats: ['es', 'cjs'],\n },\n rollupOptions: {\n external: options.rollupOptionsExternal ?? [],\n },\n outDir: `${offsetFromRoot}dist/${projectRoot}`,\n reportCompressedSize: true,\n commonjsOptions: {\n transformMixedEsModules: true,\n },\n }\n : {\n outDir: `${offsetFromRoot}dist/${projectRoot}`,\n reportCompressedSize: true,\n commonjsOptions: {\n transformMixedEsModules: true,\n },\n };\n\n const testOptionObject = {\n globals: true,\n cache: {\n dir: `${offsetFromRoot}node_modules/.vitest`,\n },\n environment: options.testEnvironment ?? 'jsdom',\n include: ['src/**/*.{test,spec}.{js,mjs,cjs,ts,mts,cts,jsx,tsx}'],\n reporters: ['default'],\n coverage: {\n reportsDirectory: `${offsetFromRoot}coverage/${projectRoot}`,\n provider: `${options.coverageProvider ?? 'v8'}`,\n },\n };\n\n const changed = ensureViteConfigIsCorrect(\n tree,\n viteConfigPath,\n buildOption,\n buildOptionObject,\n imports,\n plugins,\n testOption,\n testOptionObject,\n cacheDir,\n projectAlreadyHasViteTargets ?? {}\n );\n\n if (!changed) {\n logger.warn(\n `Make sure the following setting exists in your Vite configuration file (${viteConfigPath}):\n \n ${buildOption}\n \n `\n );\n }\n}\n"],"names":["findExistingTargetsInProject","addOrChangeTestTarget","addOrChangeBuildTarget","addOrChangeServeTarget","addPreviewTarget","editTsConfig","deleteWebpackConfig","moveAndEditIndexHtml","createOrEditViteConfig","normalizeViteConfigFilePathWithTree","getViteConfigPathForProject","handleUnsupportedUserProvidedTargets","handleUnknownExecutors","targets","userProvidedTargets","output","validFoundTargetName","projectContainsUnsupportedExecutor","userProvidedTargetIsUnsupported","alreadyHasNxViteTargets","supportedExecutors","build","serve","test","unsupportedExecutors","checkUserProvidedTarget","target","includes","executor","hasViteTargets","executorName","preview","foundTargets","tree","options","project","readProjectConfiguration","reportsDirectory","joinPathFragments","offsetFromRoot","root","testOptions","jestConfig","outputs","updateProjectConfiguration","buildOptions","outputPath","fileReplacements","baseHref","sourcemaps","defaultConfiguration","configurations","development","mode","production","serveTarget","serveOptions","buildTarget","proxyConfig","hmr","previewOptions","https","open","projectConfig","config","readJson","commonCompilerOptions","useDefineForClassFields","module","strict","moduleResolution","resolveJsonModule","isolatedModules","types","noEmit","uiFramework","compilerOptions","lib","allowJs","esModuleInterop","skipLibCheck","allowSyntheticDefaultImports","forceConsistentCasingInFileNames","jsx","include","noUnusedLocals","noUnusedParameters","noImplicitReturns","writeJson","projectRoot","webpackConfigFilePath","webpackConfigPath","exists","delete","indexHtmlPath","index","mainPath","main","replace","indexHtmlContent","read","write","onlyVitest","projectAlreadyHasViteTargets","vitestFileName","viteConfigPath","buildOption","includeLib","rollupOptionsExternal","imports","push","viteConfigContent","plugins","testOption","includeVitest","testEnvironment","inSourceTests","coverageProvider","defineOption","devServerOption","previewServerOption","workerOption","cacheDir","handleViteConfigFileExists","join","length","configFile","undefined","projectName","Object","values","find","userProvidedTargetName","handleUnsupportedUserProvidedTargetsErrors","logger","warn","Confirm","require","prompt","name","message","initial","shouldConvert","run","Error","process","env","NX_VERBOSE_LOGGING","info","buildOptionObject","entry","fileName","formats","rollupOptions","external","outDir","reportCompressedSize","commonjsOptions","transformMixedEsModules","testOptionObject","globals","cache","dir","environment","reporters","coverage","provider","changed","ensureViteConfigIsCorrect"],"mappings":"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"}
1
+ {"version":3,"sources":["../../../../../packages/vite/src/utils/generator-utils.ts"],"sourcesContent":["import {\n joinPathFragments,\n logger,\n offsetFromRoot,\n readJson,\n readProjectConfiguration,\n TargetConfiguration,\n Tree,\n updateProjectConfiguration,\n writeJson,\n} from '@nx/devkit';\nimport { ViteBuildExecutorOptions } from '../executors/build/schema';\nimport { ViteDevServerExecutorOptions } from '../executors/dev-server/schema';\nimport { VitePreviewServerExecutorOptions } from '../executors/preview-server/schema';\nimport { VitestExecutorOptions } from '../executors/test/schema';\nimport { ViteConfigurationGeneratorSchema } from '../generators/configuration/schema';\nimport { ensureViteConfigIsCorrect } from './vite-config-edit-utils';\n\nexport type Target = 'build' | 'serve' | 'test' | 'preview';\nexport type TargetFlags = Partial<Record<Target, boolean>>;\nexport type UserProvidedTargetName = Partial<Record<Target, string>>;\nexport type ValidFoundTargetName = Partial<Record<Target, string>>;\n\nexport function findExistingTargetsInProject(\n targets: {\n [targetName: string]: TargetConfiguration;\n },\n userProvidedTargets?: UserProvidedTargetName\n): {\n validFoundTargetName: ValidFoundTargetName;\n projectContainsUnsupportedExecutor: boolean;\n userProvidedTargetIsUnsupported: TargetFlags;\n alreadyHasNxViteTargets: TargetFlags;\n} {\n const output: ReturnType<typeof findExistingTargetsInProject> = {\n validFoundTargetName: {},\n projectContainsUnsupportedExecutor: false,\n userProvidedTargetIsUnsupported: {},\n alreadyHasNxViteTargets: {},\n };\n\n const supportedExecutors = {\n build: [\n '@nxext/vite:build',\n '@nx/js:babel',\n '@nx/js:swc',\n '@nx/webpack:webpack',\n '@nx/rollup:rollup',\n '@nrwl/js:babel',\n '@nrwl/js:swc',\n '@nrwl/webpack:webpack',\n '@nrwl/rollup:rollup',\n '@nrwl/web:rollup',\n ],\n serve: [\n '@nxext/vite:dev',\n '@nx/webpack:dev-server',\n '@nrwl/webpack:dev-server',\n ],\n test: ['@nx/jest:jest', '@nrwl/jest:jest', '@nxext/vitest:vitest'],\n };\n\n const unsupportedExecutors = [\n '@nx/angular:ng-packagr-lite',\n '@nx/angular:package',\n '@nx/angular:webpack-browser',\n '@nx/esbuild:esbuild',\n '@nx/react-native:run-ios',\n '@nx/react-native:start',\n '@nx/react-native:run-android',\n '@nx/react-native:bundle',\n '@nx/react-native:build-android',\n '@nx/react-native:bundle',\n '@nx/next:build',\n '@nx/next:server',\n '@nx/js:tsc',\n '@nrwl/angular:ng-packagr-lite',\n '@nrwl/angular:package',\n '@nrwl/angular:webpack-browser',\n '@nrwl/esbuild:esbuild',\n '@nrwl/react-native:run-ios',\n '@nrwl/react-native:start',\n '@nrwl/react-native:run-android',\n '@nrwl/react-native:bundle',\n '@nrwl/react-native:build-android',\n '@nrwl/react-native:bundle',\n '@nrwl/next:build',\n '@nrwl/next:server',\n '@nrwl/js:tsc',\n '@angular-devkit/build-angular:browser',\n '@angular-devkit/build-angular:dev-server',\n ];\n\n // First, we check if the user has provided a target\n // If they have, we check if the executor the target is using is supported\n // If it's not supported, then we set the unsupported flag to true for that target\n\n function checkUserProvidedTarget(target: Target) {\n if (userProvidedTargets?.[target]) {\n if (\n supportedExecutors[target].includes(\n targets[userProvidedTargets[target]]?.executor\n )\n ) {\n output.validFoundTargetName[target] = userProvidedTargets[target];\n } else {\n output.userProvidedTargetIsUnsupported[target] = true;\n }\n }\n }\n\n checkUserProvidedTarget('build');\n checkUserProvidedTarget('serve');\n checkUserProvidedTarget('test');\n\n // Returns early when we have a build, serve, and test targets.\n if (\n output.validFoundTargetName.build &&\n output.validFoundTargetName.serve &&\n output.validFoundTargetName.test\n ) {\n return output;\n }\n\n // We try to find the targets that are using the supported executors\n // for build, serve and test, since these are the ones we will be converting\n for (const target in targets) {\n const executorName = targets[target].executor;\n\n const hasViteTargets = output.alreadyHasNxViteTargets;\n hasViteTargets.build ||=\n executorName === '@nx/vite:build' || executorName === '@nrwl/vite:build';\n hasViteTargets.serve ||=\n executorName === '@nx/vite:dev-server' ||\n executorName === '@nrwl/vite:dev-server';\n hasViteTargets.test ||=\n executorName === '@nx/vite:test' || executorName === '@nrwl/vite:test';\n hasViteTargets.preview ||=\n executorName === '@nx/vite:preview-server' ||\n executorName === '@nrwl/vite:preview-server';\n\n const foundTargets = output.validFoundTargetName;\n if (\n !foundTargets.build &&\n supportedExecutors.build.includes(executorName)\n ) {\n foundTargets.build = target;\n }\n if (\n !foundTargets.serve &&\n supportedExecutors.serve.includes(executorName)\n ) {\n foundTargets.serve = target;\n }\n if (!foundTargets.test && supportedExecutors.test.includes(executorName)) {\n foundTargets.test = target;\n }\n\n output.projectContainsUnsupportedExecutor ||=\n unsupportedExecutors.includes(executorName);\n }\n\n return output;\n}\n\nexport function addOrChangeTestTarget(\n tree: Tree,\n options: ViteConfigurationGeneratorSchema,\n target: string\n) {\n const project = readProjectConfiguration(tree, options.project);\n\n const reportsDirectory = joinPathFragments(\n offsetFromRoot(project.root),\n 'coverage',\n project.root === '.' ? options.project : project.root\n );\n const testOptions: VitestExecutorOptions = {\n reportsDirectory,\n };\n\n project.targets ??= {};\n\n if (project.targets[target]) {\n project.targets[target].executor = '@nx/vite:test';\n delete project.targets[target].options?.jestConfig;\n } else {\n project.targets[target] = {\n executor: '@nx/vite:test',\n outputs: ['{options.reportsDirectory}'],\n options: testOptions,\n };\n }\n\n updateProjectConfiguration(tree, options.project, project);\n}\n\nexport function addOrChangeBuildTarget(\n tree: Tree,\n options: ViteConfigurationGeneratorSchema,\n target: string\n) {\n const project = readProjectConfiguration(tree, options.project);\n\n const buildOptions: ViteBuildExecutorOptions = {\n outputPath: joinPathFragments(\n 'dist',\n project.root != '.' ? project.root : options.project\n ),\n };\n\n project.targets ??= {};\n\n if (project.targets[target]) {\n buildOptions.fileReplacements =\n project.targets[target].options?.fileReplacements;\n\n if (project.targets[target].executor === '@nxext/vite:build') {\n buildOptions['base'] = project.targets[target].options?.baseHref;\n buildOptions['sourcemap'] = project.targets[target].options?.sourcemaps;\n }\n project.targets[target].options = { ...buildOptions };\n project.targets[target].executor = '@nx/vite:build';\n } else {\n project.targets[target] = {\n executor: '@nx/vite:build',\n outputs: ['{options.outputPath}'],\n defaultConfiguration: 'production',\n options: buildOptions,\n configurations: {\n development: {\n mode: 'development',\n },\n production: {\n mode: 'production',\n },\n },\n };\n }\n\n updateProjectConfiguration(tree, options.project, project);\n}\n\nexport function addOrChangeServeTarget(\n tree: Tree,\n options: ViteConfigurationGeneratorSchema,\n target: string\n) {\n const project = readProjectConfiguration(tree, options.project);\n\n project.targets ??= {};\n\n if (project.targets[target]) {\n const serveTarget = project.targets[target];\n const serveOptions: ViteDevServerExecutorOptions = {\n buildTarget: `${options.project}:build`,\n };\n if (serveTarget.executor === '@nxext/vite:dev') {\n serveOptions.proxyConfig = project.targets[target].options.proxyConfig;\n }\n serveTarget.executor = '@nx/vite:dev-server';\n serveTarget.options = serveOptions;\n } else {\n project.targets[target] = {\n executor: '@nx/vite:dev-server',\n defaultConfiguration: 'development',\n options: {\n buildTarget: `${options.project}:build`,\n },\n configurations: {\n development: {\n buildTarget: `${options.project}:build:development`,\n hmr: true,\n },\n production: {\n buildTarget: `${options.project}:build:production`,\n hmr: false,\n },\n },\n };\n }\n\n updateProjectConfiguration(tree, options.project, project);\n}\n\n/**\n * Adds a target for the preview server.\n *\n * @param tree\n * @param options\n * @param serveTarget An existing serve target.\n * @param previewTarget The preview target to create.\n */\nexport function addPreviewTarget(\n tree: Tree,\n options: ViteConfigurationGeneratorSchema,\n serveTarget: string\n) {\n const project = readProjectConfiguration(tree, options.project);\n\n const previewOptions: VitePreviewServerExecutorOptions = {\n buildTarget: `${options.project}:build`,\n };\n\n project.targets ??= {};\n\n // Update the options from the passed serve target.\n if (project.targets[serveTarget]) {\n const target = project.targets[serveTarget];\n if (target.executor === '@nxext/vite:dev') {\n previewOptions.proxyConfig = target.options.proxyConfig;\n }\n previewOptions['https'] = target.options?.https;\n previewOptions['open'] = target.options?.open;\n }\n\n // Adds a preview target.\n project.targets.preview = {\n executor: '@nx/vite:preview-server',\n defaultConfiguration: 'development',\n options: previewOptions,\n configurations: {\n development: {\n buildTarget: `${options.project}:build:development`,\n },\n production: {\n buildTarget: `${options.project}:build:production`,\n },\n },\n };\n\n updateProjectConfiguration(tree, options.project, project);\n}\n\nexport function editTsConfig(\n tree: Tree,\n options: ViteConfigurationGeneratorSchema\n) {\n const projectConfig = readProjectConfiguration(tree, options.project);\n\n const config = readJson(tree, `${projectConfig.root}/tsconfig.json`);\n\n const commonCompilerOptions = {\n target: 'ESNext',\n useDefineForClassFields: true,\n module: 'ESNext',\n strict: true,\n moduleResolution: 'Node',\n resolveJsonModule: true,\n isolatedModules: true,\n types: ['vite/client'],\n noEmit: true,\n };\n\n switch (options.uiFramework) {\n case 'react':\n config.compilerOptions = {\n ...commonCompilerOptions,\n lib: ['DOM', 'DOM.Iterable', 'ESNext'],\n allowJs: false,\n esModuleInterop: false,\n skipLibCheck: true,\n allowSyntheticDefaultImports: true,\n forceConsistentCasingInFileNames: true,\n jsx: 'react-jsx',\n };\n config.include = [...config.include, 'src'];\n break;\n case 'none':\n config.compilerOptions = {\n ...commonCompilerOptions,\n lib: ['ESNext', 'DOM'],\n skipLibCheck: true,\n esModuleInterop: true,\n strict: true,\n noUnusedLocals: true,\n noUnusedParameters: true,\n noImplicitReturns: true,\n };\n config.include = [...config.include, 'src'];\n break;\n default:\n break;\n }\n\n writeJson(tree, `${projectConfig.root}/tsconfig.json`, config);\n}\n\nexport function deleteWebpackConfig(\n tree: Tree,\n projectRoot: string,\n webpackConfigFilePath?: string\n) {\n const webpackConfigPath =\n webpackConfigFilePath && tree.exists(webpackConfigFilePath)\n ? webpackConfigFilePath\n : tree.exists(`${projectRoot}/webpack.config.js`)\n ? `${projectRoot}/webpack.config.js`\n : tree.exists(`${projectRoot}/webpack.config.ts`)\n ? `${projectRoot}/webpack.config.ts`\n : null;\n if (webpackConfigPath) {\n tree.delete(webpackConfigPath);\n }\n}\n\nexport function moveAndEditIndexHtml(\n tree: Tree,\n options: ViteConfigurationGeneratorSchema,\n buildTarget: string\n) {\n const projectConfig = readProjectConfiguration(tree, options.project);\n\n let indexHtmlPath =\n projectConfig.targets?.[buildTarget]?.options?.index ??\n `${projectConfig.root}/src/index.html`;\n let mainPath =\n projectConfig.targets?.[buildTarget]?.options?.main ??\n `${projectConfig.root}/src/main.ts${\n options.uiFramework === 'react' ? 'x' : ''\n }`;\n\n if (projectConfig.root !== '.') {\n mainPath = mainPath.replace(projectConfig.root, '');\n }\n\n if (\n !tree.exists(indexHtmlPath) &&\n tree.exists(`${projectConfig.root}/index.html`)\n ) {\n indexHtmlPath = `${projectConfig.root}/index.html`;\n }\n\n if (tree.exists(indexHtmlPath)) {\n const indexHtmlContent = tree.read(indexHtmlPath, 'utf8');\n if (\n !indexHtmlContent.includes(\n `<script type='module' src='${mainPath}'></script>`\n )\n ) {\n tree.write(\n `${projectConfig.root}/index.html`,\n indexHtmlContent.replace(\n '</body>',\n `<script type='module' src='${mainPath}'></script>\n </body>`\n )\n );\n\n if (tree.exists(`${projectConfig.root}/src/index.html`)) {\n tree.delete(`${projectConfig.root}/src/index.html`);\n }\n }\n } else {\n tree.write(\n `${projectConfig.root}/index.html`,\n `<!DOCTYPE html>\n <html lang='en'>\n <head>\n <meta charset='UTF-8' />\n <link rel='icon' href='/favicon.ico' />\n <meta name='viewport' content='width=device-width, initial-scale=1.0' />\n <title>Vite</title>\n </head>\n <body>\n <div id='root'></div>\n <script type='module' src='${mainPath}'></script>\n </body>\n </html>`\n );\n }\n}\n\nexport interface ViteConfigFileOptions {\n project: string;\n includeLib?: boolean;\n includeVitest?: boolean;\n inSourceTests?: boolean;\n testEnvironment?: 'node' | 'jsdom' | 'happy-dom' | 'edge-runtime' | string;\n rollupOptionsExternal?: string[];\n imports?: string[];\n plugins?: string[];\n coverageProvider?: 'v8' | 'istanbul' | 'custom';\n}\n\nexport function createOrEditViteConfig(\n tree: Tree,\n options: ViteConfigFileOptions,\n onlyVitest: boolean,\n projectAlreadyHasViteTargets?: TargetFlags,\n vitestFileName?: boolean\n) {\n const { root: projectRoot } = readProjectConfiguration(tree, options.project);\n\n const viteConfigPath = vitestFileName\n ? `${projectRoot}/vitest.config.ts`\n : `${projectRoot}/vite.config.ts`;\n\n const buildOutDir =\n projectRoot === '.'\n ? `./dist/${options.project}`\n : `${offsetFromRoot(projectRoot)}dist/${projectRoot}`;\n\n const buildOption = onlyVitest\n ? ''\n : options.includeLib\n ? `\n // Configuration for building your library.\n // See: https://vitejs.dev/guide/build.html#library-mode\n build: {\n outDir: '${buildOutDir}',\n reportCompressedSize: true,\n commonjsOptions: {\n transformMixedEsModules: true,\n },\n lib: {\n // Could also be a dictionary or array of multiple entry points.\n entry: 'src/index.ts',\n name: '${options.project}',\n fileName: 'index',\n // Change this to the formats you want to support.\n // Don't forget to update your package.json as well.\n formats: ['es', 'cjs']\n },\n rollupOptions: {\n // External packages that should not be bundled into your library.\n external: [${options.rollupOptionsExternal ?? ''}]\n },\n },`\n : `\n build: {\n outDir: '${buildOutDir}',\n reportCompressedSize: true,\n commonjsOptions: {\n transformMixedEsModules: true,\n },\n },\n `;\n\n const imports: string[] = options.imports ? options.imports : [];\n\n if (!onlyVitest && options.includeLib) {\n imports.push(\n `import dts from 'vite-plugin-dts'`,\n `import * as path from 'path'`\n );\n }\n\n let viteConfigContent = '';\n\n const plugins = options.plugins\n ? [...options.plugins, `nxViteTsPaths()`]\n : [`nxViteTsPaths()`];\n\n if (!onlyVitest && options.includeLib) {\n plugins.push(\n `dts({ entryRoot: 'src', tsConfigFilePath: path.join(__dirname, 'tsconfig.lib.json'), skipDiagnostics: true })`\n );\n }\n\n const reportsDirectory =\n projectRoot === '.'\n ? `./coverage/${options.project}`\n : `${offsetFromRoot(projectRoot)}coverage/${projectRoot}`;\n\n const testOption = options.includeVitest\n ? `test: {\n globals: true,\n cache: {\n dir: '${offsetFromRoot(projectRoot)}node_modules/.vitest'\n },\n environment: '${options.testEnvironment ?? 'jsdom'}',\n include: ['src/**/*.{test,spec}.{js,mjs,cjs,ts,mts,cts,jsx,tsx}'],\n ${\n options.inSourceTests\n ? `includeSource: ['src/**/*.{js,mjs,cjs,ts,mts,cts,jsx,tsx}'],`\n : ''\n }\n reporters: ['default'],\n coverage: {\n reportsDirectory: '${reportsDirectory}',\n provider: ${\n options.coverageProvider ? `'${options.coverageProvider}'` : `'v8'`\n },\n }\n },`\n : '';\n\n const defineOption = options.inSourceTests\n ? `define: {\n 'import.meta.vitest': undefined\n },`\n : '';\n\n const devServerOption = onlyVitest\n ? ''\n : options.includeLib\n ? ''\n : `\n server:{\n port: 4200,\n host: 'localhost',\n },`;\n\n const previewServerOption = onlyVitest\n ? ''\n : options.includeLib\n ? ''\n : `\n preview:{\n port: 4300,\n host: 'localhost',\n },`;\n\n const workerOption = `\n // Uncomment this if you are using workers. \n // worker: {\n // plugins: [ nxViteTsPaths() ],\n // },`;\n\n const cacheDir = `cacheDir: '${offsetFromRoot(\n projectRoot\n )}node_modules/.vite/${projectRoot}',`;\n\n if (tree.exists(viteConfigPath)) {\n handleViteConfigFileExists(\n tree,\n viteConfigPath,\n options,\n buildOption,\n buildOutDir,\n imports,\n plugins,\n testOption,\n reportsDirectory,\n cacheDir,\n offsetFromRoot(projectRoot),\n projectAlreadyHasViteTargets\n );\n return;\n }\n\n viteConfigContent = `\n /// <reference types='vitest' />\n import { defineConfig } from 'vite';\n ${imports.join(';\\n')}${imports.length ? ';' : ''}\n import { nxViteTsPaths } from '@nx/vite/plugins/nx-tsconfig-paths.plugin';\n \n export default defineConfig({\n root: __dirname,\n ${cacheDir}\n ${devServerOption}\n ${previewServerOption}\n \n plugins: [${plugins.join(',\\n')}],\n ${workerOption}\n ${buildOption}\n ${defineOption}\n ${testOption}\n });`;\n\n tree.write(viteConfigPath, viteConfigContent);\n}\n\nexport function normalizeViteConfigFilePathWithTree(\n tree: Tree,\n projectRoot: string,\n configFile?: string\n): string {\n return configFile && tree.exists(configFile)\n ? configFile\n : tree.exists(joinPathFragments(`${projectRoot}/vite.config.ts`))\n ? joinPathFragments(`${projectRoot}/vite.config.ts`)\n : tree.exists(joinPathFragments(`${projectRoot}/vite.config.js`))\n ? joinPathFragments(`${projectRoot}/vite.config.js`)\n : undefined;\n}\n\nexport function getViteConfigPathForProject(\n tree: Tree,\n projectName: string,\n target?: string\n) {\n let viteConfigPath: string | undefined;\n const { targets, root } = readProjectConfiguration(tree, projectName);\n if (target) {\n viteConfigPath = targets?.[target]?.options?.configFile;\n } else {\n const config = Object.values(targets).find(\n (config) =>\n config.executor === '@nrwl/nx:build' ||\n config.executor === '@nrwl/vite:build'\n );\n viteConfigPath = config?.options?.configFile;\n }\n\n return normalizeViteConfigFilePathWithTree(tree, root, viteConfigPath);\n}\n\nexport async function handleUnsupportedUserProvidedTargets(\n userProvidedTargetIsUnsupported: TargetFlags,\n userProvidedTargetName: UserProvidedTargetName,\n validFoundTargetName: ValidFoundTargetName\n) {\n if (userProvidedTargetIsUnsupported.build && validFoundTargetName.build) {\n await handleUnsupportedUserProvidedTargetsErrors(\n userProvidedTargetName.build,\n validFoundTargetName.build,\n 'build',\n 'build'\n );\n }\n\n if (userProvidedTargetIsUnsupported.serve && validFoundTargetName.serve) {\n await handleUnsupportedUserProvidedTargetsErrors(\n userProvidedTargetName.serve,\n validFoundTargetName.serve,\n 'serve',\n 'dev-server'\n );\n }\n\n if (userProvidedTargetIsUnsupported.test && validFoundTargetName.test) {\n await handleUnsupportedUserProvidedTargetsErrors(\n userProvidedTargetName.test,\n validFoundTargetName.test,\n 'test',\n 'test'\n );\n }\n}\n\nasync function handleUnsupportedUserProvidedTargetsErrors(\n userProvidedTargetName: string,\n validFoundTargetName: string,\n target: Target,\n executor: 'build' | 'dev-server' | 'test'\n) {\n logger.warn(\n `The custom ${target} target you provided (${userProvidedTargetName}) cannot be converted to use the @nx/vite:${executor} executor.\n However, we found the following ${target} target in your project that can be converted: ${validFoundTargetName}\n\n Please note that converting a potentially non-compatible project to use Vite.js may result in unexpected behavior. Always commit\n your changes before converting a project to use Vite.js, and test the converted project thoroughly before deploying it.\n `\n );\n const { Confirm } = require('enquirer');\n const prompt = new Confirm({\n name: 'question',\n message: `Should we convert the ${validFoundTargetName} target to use the @nx/vite:${executor} executor?`,\n initial: true,\n });\n const shouldConvert = await prompt.run();\n if (!shouldConvert) {\n throw new Error(\n `The ${target} target ${userProvidedTargetName} cannot be converted to use the @nx/vite:${executor} executor.\n Please try again, either by providing a different ${target} target or by not providing a target at all (Nx will\n convert the first one it finds, most probably this one: ${validFoundTargetName})\n\n Please note that converting a potentially non-compatible project to use Vite.js may result in unexpected behavior. Always commit\n your changes before converting a project to use Vite.js, and test the converted project thoroughly before deploying it.\n `\n );\n }\n}\n\nexport async function handleUnknownExecutors(projectName: string) {\n logger.warn(\n `\n We could not find any targets in project ${projectName} that use executors which \n can be converted to the @nx/vite executors.\n\n This either means that your project may not have a target \n for building, serving, or testing at all, or that your targets are \n using executors that are not known to Nx.\n \n If you still want to convert your project to use the @nx/vite executors,\n please make sure to commit your changes before running this generator.\n `\n );\n\n const { Confirm } = require('enquirer');\n const prompt = new Confirm({\n name: 'question',\n message: `Should Nx convert your project to use the @nx/vite executors?`,\n initial: true,\n });\n const shouldConvert = await prompt.run();\n if (!shouldConvert) {\n throw new Error(`\n Nx could not verify that the executors you are using can be converted to the @nx/vite executors.\n Please try again with a different project.\n `);\n }\n}\n\nfunction handleViteConfigFileExists(\n tree: Tree,\n viteConfigPath: string,\n options: ViteConfigFileOptions,\n buildOption: string,\n buildOutDir: string,\n imports: string[],\n plugins: string[],\n testOption: string,\n reportsDirectory: string,\n cacheDir: string,\n offsetFromRoot: string,\n projectAlreadyHasViteTargets?: TargetFlags\n) {\n if (\n projectAlreadyHasViteTargets?.build &&\n projectAlreadyHasViteTargets?.test\n ) {\n return;\n }\n\n if (process.env.NX_VERBOSE_LOGGING === 'true') {\n logger.info(\n `vite.config.ts already exists for project ${options.project}.`\n );\n }\n\n const buildOptionObject = options.includeLib\n ? {\n lib: {\n entry: 'src/index.ts',\n name: options.project,\n fileName: 'index',\n formats: ['es', 'cjs'],\n },\n rollupOptions: {\n external: options.rollupOptionsExternal ?? [],\n },\n outDir: buildOutDir,\n reportCompressedSize: true,\n commonjsOptions: {\n transformMixedEsModules: true,\n },\n }\n : {\n outDir: buildOutDir,\n reportCompressedSize: true,\n commonjsOptions: {\n transformMixedEsModules: true,\n },\n };\n\n const testOptionObject = {\n globals: true,\n cache: {\n dir: `${offsetFromRoot}node_modules/.vitest`,\n },\n environment: options.testEnvironment ?? 'jsdom',\n include: ['src/**/*.{test,spec}.{js,mjs,cjs,ts,mts,cts,jsx,tsx}'],\n reporters: ['default'],\n coverage: {\n reportsDirectory: reportsDirectory,\n provider: `${options.coverageProvider ?? 'v8'}`,\n },\n };\n\n const changed = ensureViteConfigIsCorrect(\n tree,\n viteConfigPath,\n buildOption,\n buildOptionObject,\n imports,\n plugins,\n testOption,\n testOptionObject,\n cacheDir,\n projectAlreadyHasViteTargets ?? {}\n );\n\n if (!changed) {\n logger.warn(\n `Make sure the following setting exists in your Vite configuration file (${viteConfigPath}):\n \n ${buildOption}\n \n `\n );\n }\n}\n"],"names":["findExistingTargetsInProject","addOrChangeTestTarget","addOrChangeBuildTarget","addOrChangeServeTarget","addPreviewTarget","editTsConfig","deleteWebpackConfig","moveAndEditIndexHtml","createOrEditViteConfig","normalizeViteConfigFilePathWithTree","getViteConfigPathForProject","handleUnsupportedUserProvidedTargets","handleUnknownExecutors","targets","userProvidedTargets","output","validFoundTargetName","projectContainsUnsupportedExecutor","userProvidedTargetIsUnsupported","alreadyHasNxViteTargets","supportedExecutors","build","serve","test","unsupportedExecutors","checkUserProvidedTarget","target","includes","executor","hasViteTargets","executorName","preview","foundTargets","tree","options","project","readProjectConfiguration","reportsDirectory","joinPathFragments","offsetFromRoot","root","testOptions","jestConfig","outputs","updateProjectConfiguration","buildOptions","outputPath","fileReplacements","baseHref","sourcemaps","defaultConfiguration","configurations","development","mode","production","serveTarget","serveOptions","buildTarget","proxyConfig","hmr","previewOptions","https","open","projectConfig","config","readJson","commonCompilerOptions","useDefineForClassFields","module","strict","moduleResolution","resolveJsonModule","isolatedModules","types","noEmit","uiFramework","compilerOptions","lib","allowJs","esModuleInterop","skipLibCheck","allowSyntheticDefaultImports","forceConsistentCasingInFileNames","jsx","include","noUnusedLocals","noUnusedParameters","noImplicitReturns","writeJson","projectRoot","webpackConfigFilePath","webpackConfigPath","exists","delete","indexHtmlPath","index","mainPath","main","replace","indexHtmlContent","read","write","onlyVitest","projectAlreadyHasViteTargets","vitestFileName","viteConfigPath","buildOutDir","buildOption","includeLib","rollupOptionsExternal","imports","push","viteConfigContent","plugins","testOption","includeVitest","testEnvironment","inSourceTests","coverageProvider","defineOption","devServerOption","previewServerOption","workerOption","cacheDir","handleViteConfigFileExists","join","length","configFile","undefined","projectName","Object","values","find","userProvidedTargetName","handleUnsupportedUserProvidedTargetsErrors","logger","warn","Confirm","require","prompt","name","message","initial","shouldConvert","run","Error","process","env","NX_VERBOSE_LOGGING","info","buildOptionObject","entry","fileName","formats","rollupOptions","external","outDir","reportCompressedSize","commonjsOptions","transformMixedEsModules","testOptionObject","globals","cache","dir","environment","reporters","coverage","provider","changed","ensureViteConfigIsCorrect"],"mappings":";;;;;;;;IAuBgBA,4BAA4B;eAA5BA;;IA8IAC,qBAAqB;eAArBA;;IAgCAC,sBAAsB;eAAtBA;;IA8CAC,sBAAsB;eAAtBA;;IAkDAC,gBAAgB;eAAhBA;;IAyCAC,YAAY;eAAZA;;IAsDAC,mBAAmB;eAAnBA;;IAkBAC,oBAAoB;eAApBA;;IA+EAC,sBAAsB;eAAtBA;;IAmLAC,mCAAmC;eAAnCA;;IAcAC,2BAA2B;eAA3BA;;IAqBMC,oCAAoC;eAApCA;;IAmEAC,sBAAsB;eAAtBA;;;;wBApvBf;qCAMmC;AAOnC,SAASZ,6BACda,OAEC,EACDC,mBAA4C;IAO5C,MAAMC,SAA0D;QAC9DC,sBAAsB,CAAC;QACvBC,oCAAoC;QACpCC,iCAAiC,CAAC;QAClCC,yBAAyB,CAAC;IAC5B;IAEA,MAAMC,qBAAqB;QACzBC,OAAO;YACL;YACA;YACA;YACA;YACA;YACA;YACA;YACA;YACA;YACA;SACD;QACDC,OAAO;YACL;YACA;YACA;SACD;QACDC,MAAM;YAAC;YAAiB;YAAmB;SAAuB;IACpE;IAEA,MAAMC,uBAAuB;QAC3B;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;KACD;IAED,oDAAoD;IACpD,0EAA0E;IAC1E,kFAAkF;IAElF,SAASC,wBAAwBC,MAAc;QAC7C,IAAIZ,uCAAAA,mBAAqB,CAACY,OAAO,EAAE;gBAG7Bb;YAFJ,IACEO,kBAAkB,CAACM,OAAO,CAACC,QAAQ,EACjCd,sCAAAA,OAAO,CAACC,mBAAmB,CAACY,OAAO,CAAC,qBAApCb,oCAAsCe,QAAQ,GAEhD;gBACAb,OAAOC,oBAAoB,CAACU,OAAO,GAAGZ,mBAAmB,CAACY,OAAO;YACnE,OAAO;gBACLX,OAAOG,+BAA+B,CAACQ,OAAO,GAAG;YACnD;QACF;IACF;IAEAD,wBAAwB;IACxBA,wBAAwB;IACxBA,wBAAwB;IAExB,+DAA+D;IAC/D,IACEV,OAAOC,oBAAoB,CAACK,KAAK,IACjCN,OAAOC,oBAAoB,CAACM,KAAK,IACjCP,OAAOC,oBAAoB,CAACO,IAAI,EAChC;QACA,OAAOR;IACT;IAEA,oEAAoE;IACpE,4EAA4E;IAC5E,IAAK,MAAMW,UAAUb,QAAS;YAI5BgB,iBAEAA,kBAGAA,kBAEAA,kBAqBAd;QA/BA,MAAMe,eAAejB,OAAO,CAACa,OAAO,CAACE,QAAQ;QAE7C,MAAMC,iBAAiBd,OAAOI,uBAAuB;QACrDU,CAAAA,kBAAAA,gBAAeR,UAAfQ,gBAAeR,QACbS,iBAAiB,oBAAoBA,iBAAiB;QACxDD,CAAAA,mBAAAA,gBAAeP,UAAfO,iBAAeP,QACbQ,iBAAiB,yBACjBA,iBAAiB;QACnBD,CAAAA,mBAAAA,gBAAeN,SAAfM,iBAAeN,OACbO,iBAAiB,mBAAmBA,iBAAiB;QACvDD,CAAAA,mBAAAA,gBAAeE,YAAfF,iBAAeE,UACbD,iBAAiB,6BACjBA,iBAAiB;QAEnB,MAAME,eAAejB,OAAOC,oBAAoB;QAChD,IACE,CAACgB,aAAaX,KAAK,IACnBD,mBAAmBC,KAAK,CAACM,QAAQ,CAACG,eAClC;YACAE,aAAaX,KAAK,GAAGK;QACvB;QACA,IACE,CAACM,aAAaV,KAAK,IACnBF,mBAAmBE,KAAK,CAACK,QAAQ,CAACG,eAClC;YACAE,aAAaV,KAAK,GAAGI;QACvB;QACA,IAAI,CAACM,aAAaT,IAAI,IAAIH,mBAAmBG,IAAI,CAACI,QAAQ,CAACG,eAAe;YACxEE,aAAaT,IAAI,GAAGG;QACtB;QAEAX,CAAAA,UAAAA,QAAOE,uCAAPF,QAAOE,qCACLO,qBAAqBG,QAAQ,CAACG;IAClC;IAEA,OAAOf;AACT;AAEO,SAASd,sBACdgC,IAAU,EACVC,OAAyC,EACzCR,MAAc;QAadS;IAXA,MAAMA,UAAUC,IAAAA,gCAAwB,EAACH,MAAMC,QAAQC,OAAO;IAE9D,MAAME,mBAAmBC,IAAAA,yBAAiB,EACxCC,IAAAA,sBAAc,EAACJ,QAAQK,IAAI,GAC3B,YACAL,QAAQK,IAAI,KAAK,MAAMN,QAAQC,OAAO,GAAGA,QAAQK,IAAI;IAEvD,MAAMC,cAAqC;QACzCJ;IACF;;IAEAF,aAAAA,WAAAA,SAAQtB,8BAARsB,SAAQtB,UAAY,CAAC;IAErB,IAAIsB,QAAQtB,OAAO,CAACa,OAAO,EAAE;YAEpBS;QADPA,QAAQtB,OAAO,CAACa,OAAO,CAACE,QAAQ,GAAG;SAC5BO,kCAAAA,QAAQtB,OAAO,CAACa,OAAO,CAACQ,OAAO,0BAA/BC,gCAAiCO,UAAU;IACpD,OAAO;QACLP,QAAQtB,OAAO,CAACa,OAAO,GAAG;YACxBE,UAAU;YACVe,SAAS;gBAAC;aAA6B;YACvCT,SAASO;QACX;IACF;IAEAG,IAAAA,kCAA0B,EAACX,MAAMC,QAAQC,OAAO,EAAEA;AACpD;AAEO,SAASjC,uBACd+B,IAAU,EACVC,OAAyC,EACzCR,MAAc;QAWdS;IATA,MAAMA,UAAUC,IAAAA,gCAAwB,EAACH,MAAMC,QAAQC,OAAO;IAE9D,MAAMU,eAAyC;QAC7CC,YAAYR,IAAAA,yBAAiB,EAC3B,QACAH,QAAQK,IAAI,IAAI,MAAML,QAAQK,IAAI,GAAGN,QAAQC,OAAO;IAExD;;IAEAA,aAAAA,WAAAA,SAAQtB,8BAARsB,SAAQtB,UAAY,CAAC;IAErB,IAAIsB,QAAQtB,OAAO,CAACa,OAAO,EAAE;YAEzBS;QADFU,aAAaE,gBAAgB,IAC3BZ,kCAAAA,QAAQtB,OAAO,CAACa,OAAO,CAACQ,OAAO,qBAA/BC,gCAAiCY,gBAAgB;QAEnD,IAAIZ,QAAQtB,OAAO,CAACa,OAAO,CAACE,QAAQ,KAAK,qBAAqB;gBACrCO,kCACKA;YAD5BU,YAAY,CAAC,OAAO,IAAGV,mCAAAA,QAAQtB,OAAO,CAACa,OAAO,CAACQ,OAAO,qBAA/BC,iCAAiCa,QAAQ;YAChEH,YAAY,CAAC,YAAY,IAAGV,mCAAAA,QAAQtB,OAAO,CAACa,OAAO,CAACQ,OAAO,qBAA/BC,iCAAiCc,UAAU;QACzE;QACAd,QAAQtB,OAAO,CAACa,OAAO,CAACQ,OAAO,GAAG,eAAKW;QACvCV,QAAQtB,OAAO,CAACa,OAAO,CAACE,QAAQ,GAAG;IACrC,OAAO;QACLO,QAAQtB,OAAO,CAACa,OAAO,GAAG;YACxBE,UAAU;YACVe,SAAS;gBAAC;aAAuB;YACjCO,sBAAsB;YACtBhB,SAASW;YACTM,gBAAgB;gBACdC,aAAa;oBACXC,MAAM;gBACR;gBACAC,YAAY;oBACVD,MAAM;gBACR;YACF;QACF;IACF;IAEAT,IAAAA,kCAA0B,EAACX,MAAMC,QAAQC,OAAO,EAAEA;AACpD;AAEO,SAAShC,uBACd8B,IAAU,EACVC,OAAyC,EACzCR,MAAc;QAIdS;IAFA,MAAMA,UAAUC,IAAAA,gCAAwB,EAACH,MAAMC,QAAQC,OAAO;;IAE9DA,aAAAA,WAAAA,SAAQtB,8BAARsB,SAAQtB,UAAY,CAAC;IAErB,IAAIsB,QAAQtB,OAAO,CAACa,OAAO,EAAE;QAC3B,MAAM6B,cAAcpB,QAAQtB,OAAO,CAACa,OAAO;QAC3C,MAAM8B,eAA6C;YACjDC,aAAa,CAAC,EAAEvB,QAAQC,OAAO,CAAC,MAAM,CAAC;QACzC;QACA,IAAIoB,YAAY3B,QAAQ,KAAK,mBAAmB;YAC9C4B,aAAaE,WAAW,GAAGvB,QAAQtB,OAAO,CAACa,OAAO,CAACQ,OAAO,CAACwB,WAAW;QACxE;QACAH,YAAY3B,QAAQ,GAAG;QACvB2B,YAAYrB,OAAO,GAAGsB;IACxB,OAAO;QACLrB,QAAQtB,OAAO,CAACa,OAAO,GAAG;YACxBE,UAAU;YACVsB,sBAAsB;YACtBhB,SAAS;gBACPuB,aAAa,CAAC,EAAEvB,QAAQC,OAAO,CAAC,MAAM,CAAC;YACzC;YACAgB,gBAAgB;gBACdC,aAAa;oBACXK,aAAa,CAAC,EAAEvB,QAAQC,OAAO,CAAC,kBAAkB,CAAC;oBACnDwB,KAAK;gBACP;gBACAL,YAAY;oBACVG,aAAa,CAAC,EAAEvB,QAAQC,OAAO,CAAC,iBAAiB,CAAC;oBAClDwB,KAAK;gBACP;YACF;QACF;IACF;IAEAf,IAAAA,kCAA0B,EAACX,MAAMC,QAAQC,OAAO,EAAEA;AACpD;AAUO,SAAS/B,iBACd6B,IAAU,EACVC,OAAyC,EACzCqB,WAAmB;QAQnBpB;IANA,MAAMA,UAAUC,IAAAA,gCAAwB,EAACH,MAAMC,QAAQC,OAAO;IAE9D,MAAMyB,iBAAmD;QACvDH,aAAa,CAAC,EAAEvB,QAAQC,OAAO,CAAC,MAAM,CAAC;IACzC;;IAEAA,aAAAA,WAAAA,SAAQtB,8BAARsB,SAAQtB,UAAY,CAAC;IAErB,mDAAmD;IACnD,IAAIsB,QAAQtB,OAAO,CAAC0C,YAAY,EAAE;YAKN7B,iBACDA;QALzB,MAAMA,SAASS,QAAQtB,OAAO,CAAC0C,YAAY;QAC3C,IAAI7B,OAAOE,QAAQ,KAAK,mBAAmB;YACzCgC,eAAeF,WAAW,GAAGhC,OAAOQ,OAAO,CAACwB,WAAW;QACzD;QACAE,cAAc,CAAC,QAAQ,IAAGlC,kBAAAA,OAAOQ,OAAO,qBAAdR,gBAAgBmC,KAAK;QAC/CD,cAAc,CAAC,OAAO,IAAGlC,mBAAAA,OAAOQ,OAAO,qBAAdR,iBAAgBoC,IAAI;IAC/C;IAEA,yBAAyB;IACzB3B,QAAQtB,OAAO,CAACkB,OAAO,GAAG;QACxBH,UAAU;QACVsB,sBAAsB;QACtBhB,SAAS0B;QACTT,gBAAgB;YACdC,aAAa;gBACXK,aAAa,CAAC,EAAEvB,QAAQC,OAAO,CAAC,kBAAkB,CAAC;YACrD;YACAmB,YAAY;gBACVG,aAAa,CAAC,EAAEvB,QAAQC,OAAO,CAAC,iBAAiB,CAAC;YACpD;QACF;IACF;IAEAS,IAAAA,kCAA0B,EAACX,MAAMC,QAAQC,OAAO,EAAEA;AACpD;AAEO,SAAS9B,aACd4B,IAAU,EACVC,OAAyC;IAEzC,MAAM6B,gBAAgB3B,IAAAA,gCAAwB,EAACH,MAAMC,QAAQC,OAAO;IAEpE,MAAM6B,SAASC,IAAAA,gBAAQ,EAAChC,MAAM,CAAC,EAAE8B,cAAcvB,IAAI,CAAC,cAAc,CAAC;IAEnE,MAAM0B,wBAAwB;QAC5BxC,QAAQ;QACRyC,yBAAyB;QACzBC,QAAQ;QACRC,QAAQ;QACRC,kBAAkB;QAClBC,mBAAmB;QACnBC,iBAAiB;QACjBC,OAAO;YAAC;SAAc;QACtBC,QAAQ;IACV;IAEA,OAAQxC,QAAQyC,WAAW;QACzB,KAAK;YACHX,OAAOY,eAAe,GAAG,eACpBV;gBACHW,KAAK;oBAAC;oBAAO;oBAAgB;iBAAS;gBACtCC,SAAS;gBACTC,iBAAiB;gBACjBC,cAAc;gBACdC,8BAA8B;gBAC9BC,kCAAkC;gBAClCC,KAAK;;YAEPnB,OAAOoB,OAAO,GAAG;mBAAIpB,OAAOoB,OAAO;gBAAE;aAAM;YAC3C;QACF,KAAK;YACHpB,OAAOY,eAAe,GAAG,eACpBV;gBACHW,KAAK;oBAAC;oBAAU;iBAAM;gBACtBG,cAAc;gBACdD,iBAAiB;gBACjBV,QAAQ;gBACRgB,gBAAgB;gBAChBC,oBAAoB;gBACpBC,mBAAmB;;YAErBvB,OAAOoB,OAAO,GAAG;mBAAIpB,OAAOoB,OAAO;gBAAE;aAAM;YAC3C;QACF;YACE;IACJ;IAEAI,IAAAA,iBAAS,EAACvD,MAAM,CAAC,EAAE8B,cAAcvB,IAAI,CAAC,cAAc,CAAC,EAAEwB;AACzD;AAEO,SAAS1D,oBACd2B,IAAU,EACVwD,WAAmB,EACnBC,qBAA8B;IAE9B,MAAMC,oBACJD,yBAAyBzD,KAAK2D,MAAM,CAACF,yBACjCA,wBACAzD,KAAK2D,MAAM,CAAC,CAAC,EAAEH,YAAY,kBAAkB,CAAC,IAC9C,CAAC,EAAEA,YAAY,kBAAkB,CAAC,GAClCxD,KAAK2D,MAAM,CAAC,CAAC,EAAEH,YAAY,kBAAkB,CAAC,IAC9C,CAAC,EAAEA,YAAY,kBAAkB,CAAC,GAClC;IACN,IAAIE,mBAAmB;QACrB1D,KAAK4D,MAAM,CAACF;IACd;AACF;AAEO,SAASpF,qBACd0B,IAAU,EACVC,OAAyC,EACzCuB,WAAmB;QAKjBM,4CAAAA,oCAAAA,wBAGAA,6CAAAA,qCAAAA;IANF,MAAMA,gBAAgB3B,IAAAA,gCAAwB,EAACH,MAAMC,QAAQC,OAAO;QAGlE4B;IADF,IAAI+B,gBACF/B,CAAAA,oDAAAA,yBAAAA,cAAclD,OAAO,sBAArBkD,qCAAAA,sBAAuB,CAACN,YAAY,sBAApCM,6CAAAA,mCAAsC7B,OAAO,qBAA7C6B,2CAA+CgC,KAAK,YAApDhC,mDACA,CAAC,EAAEA,cAAcvB,IAAI,CAAC,eAAe,CAAC;QAEtCuB;IADF,IAAIiC,WACFjC,CAAAA,mDAAAA,0BAAAA,cAAclD,OAAO,sBAArBkD,sCAAAA,uBAAuB,CAACN,YAAY,sBAApCM,8CAAAA,oCAAsC7B,OAAO,qBAA7C6B,4CAA+CkC,IAAI,YAAnDlC,kDACA,CAAC,EAAEA,cAAcvB,IAAI,CAAC,YAAY,EAChCN,QAAQyC,WAAW,KAAK,UAAU,MAAM,GACzC,CAAC;IAEJ,IAAIZ,cAAcvB,IAAI,KAAK,KAAK;QAC9BwD,WAAWA,SAASE,OAAO,CAACnC,cAAcvB,IAAI,EAAE;IAClD;IAEA,IACE,CAACP,KAAK2D,MAAM,CAACE,kBACb7D,KAAK2D,MAAM,CAAC,CAAC,EAAE7B,cAAcvB,IAAI,CAAC,WAAW,CAAC,GAC9C;QACAsD,gBAAgB,CAAC,EAAE/B,cAAcvB,IAAI,CAAC,WAAW,CAAC;IACpD;IAEA,IAAIP,KAAK2D,MAAM,CAACE,gBAAgB;QAC9B,MAAMK,mBAAmBlE,KAAKmE,IAAI,CAACN,eAAe;QAClD,IACE,CAACK,iBAAiBxE,QAAQ,CACxB,CAAC,2BAA2B,EAAEqE,SAAS,WAAW,CAAC,GAErD;YACA/D,KAAKoE,KAAK,CACR,CAAC,EAAEtC,cAAcvB,IAAI,CAAC,WAAW,CAAC,EAClC2D,iBAAiBD,OAAO,CACtB,WACA,CAAC,2BAA2B,EAAEF,SAAS;iBAChC,CAAC;YAIZ,IAAI/D,KAAK2D,MAAM,CAAC,CAAC,EAAE7B,cAAcvB,IAAI,CAAC,eAAe,CAAC,GAAG;gBACvDP,KAAK4D,MAAM,CAAC,CAAC,EAAE9B,cAAcvB,IAAI,CAAC,eAAe,CAAC;YACpD;QACF;IACF,OAAO;QACLP,KAAKoE,KAAK,CACR,CAAC,EAAEtC,cAAcvB,IAAI,CAAC,WAAW,CAAC,EAClC,CAAC;;;;;;;;;;qCAU8B,EAAEwD,SAAS;;aAEnC,CAAC;IAEZ;AACF;AAcO,SAASxF,uBACdyB,IAAU,EACVC,OAA8B,EAC9BoE,UAAmB,EACnBC,4BAA0C,EAC1CC,cAAwB;IAExB,MAAM,EAAEhE,MAAMiD,WAAW,EAAE,GAAGrD,IAAAA,gCAAwB,EAACH,MAAMC,QAAQC,OAAO;IAE5E,MAAMsE,iBAAiBD,iBACnB,CAAC,EAAEf,YAAY,iBAAiB,CAAC,GACjC,CAAC,EAAEA,YAAY,eAAe,CAAC;IAEnC,MAAMiB,cACJjB,gBAAgB,MACZ,CAAC,OAAO,EAAEvD,QAAQC,OAAO,CAAC,CAAC,GAC3B,CAAC,EAAEI,IAAAA,sBAAc,EAACkD,aAAa,KAAK,EAAEA,YAAY,CAAC;QAyBpCvD;IAvBrB,MAAMyE,cAAcL,aAChB,KACApE,QAAQ0E,UAAU,GAClB,CAAC;;;;iBAIU,EAAEF,YAAY;;;;;;;;iBAQd,EAAExE,QAAQC,OAAO,CAAC;;;;;;;;qBAQd,EAAED,CAAAA,iCAAAA,QAAQ2E,qBAAqB,YAA7B3E,iCAAiC,GAAG;;QAEnD,CAAC,GACH,CAAC;;eAEQ,EAAEwE,YAAY;;;;;;IAMzB,CAAC;IAEH,MAAMI,UAAoB5E,QAAQ4E,OAAO,GAAG5E,QAAQ4E,OAAO,GAAG,EAAE;IAEhE,IAAI,CAACR,cAAcpE,QAAQ0E,UAAU,EAAE;QACrCE,QAAQC,IAAI,CACV,CAAC,iCAAiC,CAAC,EACnC,CAAC,4BAA4B,CAAC;IAElC;IAEA,IAAIC,oBAAoB;IAExB,MAAMC,UAAU/E,QAAQ+E,OAAO,GAC3B;WAAI/E,QAAQ+E,OAAO;QAAE,CAAC,eAAe,CAAC;KAAC,GACvC;QAAC,CAAC,eAAe,CAAC;KAAC;IAEvB,IAAI,CAACX,cAAcpE,QAAQ0E,UAAU,EAAE;QACrCK,QAAQF,IAAI,CACV,CAAC,6GAA6G,CAAC;IAEnH;IAEA,MAAM1E,mBACJoD,gBAAgB,MACZ,CAAC,WAAW,EAAEvD,QAAQC,OAAO,CAAC,CAAC,GAC/B,CAAC,EAAEI,IAAAA,sBAAc,EAACkD,aAAa,SAAS,EAAEA,YAAY,CAAC;QAQ3CvD;IANlB,MAAMgF,aAAahF,QAAQiF,aAAa,GACpC,CAAC;;;YAGK,EAAE5E,IAAAA,sBAAc,EAACkD,aAAa;;kBAExB,EAAEvD,CAAAA,2BAAAA,QAAQkF,eAAe,YAAvBlF,2BAA2B,QAAQ;;IAEnD,EACEA,QAAQmF,aAAa,GACjB,CAAC,4DAA4D,CAAC,GAC9D,GACL;;;yBAGoB,EAAEhF,iBAAiB;gBAC5B,EACRH,QAAQoF,gBAAgB,GAAG,CAAC,CAAC,EAAEpF,QAAQoF,gBAAgB,CAAC,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,CACpE;;IAEH,CAAC,GACC;IAEJ,MAAMC,eAAerF,QAAQmF,aAAa,GACtC,CAAC;;IAEH,CAAC,GACC;IAEJ,MAAMG,kBAAkBlB,aACpB,KACApE,QAAQ0E,UAAU,GAClB,KACA,CAAC;;;;MAID,CAAC;IAEL,MAAMa,sBAAsBnB,aACxB,KACApE,QAAQ0E,UAAU,GAClB,KACA,CAAC;;;;MAID,CAAC;IAEL,MAAMc,eAAe,CAAC;;;;SAIf,CAAC;IAER,MAAMC,WAAW,CAAC,WAAW,EAAEpF,IAAAA,sBAAc,EAC3CkD,aACA,mBAAmB,EAAEA,YAAY,EAAE,CAAC;IAEtC,IAAIxD,KAAK2D,MAAM,CAACa,iBAAiB;QAC/BmB,2BACE3F,MACAwE,gBACAvE,SACAyE,aACAD,aACAI,SACAG,SACAC,YACA7E,kBACAsF,UACApF,IAAAA,sBAAc,EAACkD,cACfc;QAEF;IACF;IAEAS,oBAAoB,CAAC;;;MAGjB,EAAEF,QAAQe,IAAI,CAAC,OAAO,EAAEf,QAAQgB,MAAM,GAAG,MAAM,GAAG;;;;;QAKhD,EAAEH,SAAS;QACX,EAAEH,gBAAgB;QAClB,EAAEC,oBAAoB;;kBAEZ,EAAER,QAAQY,IAAI,CAAC,OAAO;QAChC,EAAEH,aAAa;QACf,EAAEf,YAAY;QACd,EAAEY,aAAa;QACf,EAAEL,WAAW;SACZ,CAAC;IAERjF,KAAKoE,KAAK,CAACI,gBAAgBO;AAC7B;AAEO,SAASvG,oCACdwB,IAAU,EACVwD,WAAmB,EACnBsC,UAAmB;IAEnB,OAAOA,cAAc9F,KAAK2D,MAAM,CAACmC,cAC7BA,aACA9F,KAAK2D,MAAM,CAACtD,IAAAA,yBAAiB,EAAC,CAAC,EAAEmD,YAAY,eAAe,CAAC,KAC7DnD,IAAAA,yBAAiB,EAAC,CAAC,EAAEmD,YAAY,eAAe,CAAC,IACjDxD,KAAK2D,MAAM,CAACtD,IAAAA,yBAAiB,EAAC,CAAC,EAAEmD,YAAY,eAAe,CAAC,KAC7DnD,IAAAA,yBAAiB,EAAC,CAAC,EAAEmD,YAAY,eAAe,CAAC,IACjDuC;AACN;AAEO,SAAStH,4BACduB,IAAU,EACVgG,WAAmB,EACnBvG,MAAe;IAEf,IAAI+E;IACJ,MAAM,EAAE5F,OAAO,EAAE2B,IAAI,EAAE,GAAGJ,IAAAA,gCAAwB,EAACH,MAAMgG;IACzD,IAAIvG,QAAQ;YACOb,yBAAAA;QAAjB4F,iBAAiB5F,4BAAAA,kBAAAA,OAAS,CAACa,OAAO,sBAAjBb,0BAAAA,gBAAmBqB,OAAO,qBAA1BrB,wBAA4BkH,UAAU;IACzD,OAAO;YAMY/D;QALjB,MAAMA,SAASkE,OAAOC,MAAM,CAACtH,SAASuH,IAAI,CACxC,CAACpE,SACCA,OAAOpC,QAAQ,KAAK,oBACpBoC,OAAOpC,QAAQ,KAAK;QAExB6E,iBAAiBzC,2BAAAA,kBAAAA,OAAQ9B,OAAO,qBAAf8B,gBAAiB+D,UAAU;IAC9C;IAEA,OAAOtH,oCAAoCwB,MAAMO,MAAMiE;AACzD;AAEO,eAAe9F,qCACpBO,+BAA4C,EAC5CmH,sBAA8C,EAC9CrH,oBAA0C;IAE1C,IAAIE,gCAAgCG,KAAK,IAAIL,qBAAqBK,KAAK,EAAE;QACvE,MAAMiH,2CACJD,uBAAuBhH,KAAK,EAC5BL,qBAAqBK,KAAK,EAC1B,SACA;IAEJ;IAEA,IAAIH,gCAAgCI,KAAK,IAAIN,qBAAqBM,KAAK,EAAE;QACvE,MAAMgH,2CACJD,uBAAuB/G,KAAK,EAC5BN,qBAAqBM,KAAK,EAC1B,SACA;IAEJ;IAEA,IAAIJ,gCAAgCK,IAAI,IAAIP,qBAAqBO,IAAI,EAAE;QACrE,MAAM+G,2CACJD,uBAAuB9G,IAAI,EAC3BP,qBAAqBO,IAAI,EACzB,QACA;IAEJ;AACF;AAEA,eAAe+G,2CACbD,sBAA8B,EAC9BrH,oBAA4B,EAC5BU,MAAc,EACdE,QAAyC;IAEzC2G,cAAM,CAACC,IAAI,CACT,CAAC,WAAW,EAAE9G,OAAO,sBAAsB,EAAE2G,uBAAuB,0CAA0C,EAAEzG,SAAS;qCACxF,EAAEF,OAAO,+CAA+C,EAAEV,qBAAqB;;;;IAIhH,CAAC;IAEH,MAAM,EAAEyH,OAAO,EAAE,GAAGC,QAAQ;IAC5B,MAAMC,SAAS,IAAIF,QAAQ;QACzBG,MAAM;QACNC,SAAS,CAAC,sBAAsB,EAAE7H,qBAAqB,4BAA4B,EAAEY,SAAS,UAAU,CAAC;QACzGkH,SAAS;IACX;IACA,MAAMC,gBAAgB,MAAMJ,OAAOK,GAAG;IACtC,IAAI,CAACD,eAAe;QAClB,MAAM,IAAIE,MACR,CAAC,IAAI,EAAEvH,OAAO,QAAQ,EAAE2G,uBAAuB,yCAAyC,EAAEzG,SAAS;wDACjD,EAAEF,OAAO;gEACD,EAAEV,qBAAqB;;;;MAIjF,CAAC;IAEL;AACF;AAEO,eAAeJ,uBAAuBqH,WAAmB;IAC9DM,cAAM,CAACC,IAAI,CACT,CAAC;+CAC0C,EAAEP,YAAY;;;;;;;;;MASvD,CAAC;IAGL,MAAM,EAAEQ,OAAO,EAAE,GAAGC,QAAQ;IAC5B,MAAMC,SAAS,IAAIF,QAAQ;QACzBG,MAAM;QACNC,SAAS,CAAC,6DAA6D,CAAC;QACxEC,SAAS;IACX;IACA,MAAMC,gBAAgB,MAAMJ,OAAOK,GAAG;IACtC,IAAI,CAACD,eAAe;QAClB,MAAM,IAAIE,MAAM,CAAC;;;IAGjB,CAAC;IACH;AACF;AAEA,SAASrB,2BACP3F,IAAU,EACVwE,cAAsB,EACtBvE,OAA8B,EAC9ByE,WAAmB,EACnBD,WAAmB,EACnBI,OAAiB,EACjBG,OAAiB,EACjBC,UAAkB,EAClB7E,gBAAwB,EACxBsF,QAAgB,EAChBpF,cAAsB,EACtBgE,4BAA0C;IAE1C,IACEA,CAAAA,gDAAAA,6BAA8BlF,KAAK,MACnCkF,gDAAAA,6BAA8BhF,IAAI,GAClC;QACA;IACF;IAEA,IAAI2H,QAAQC,GAAG,CAACC,kBAAkB,KAAK,QAAQ;QAC7Cb,cAAM,CAACc,IAAI,CACT,CAAC,0CAA0C,EAAEnH,QAAQC,OAAO,CAAC,CAAC,CAAC;IAEnE;QAWkBD;IATlB,MAAMoH,oBAAoBpH,QAAQ0E,UAAU,GACxC;QACE/B,KAAK;YACH0E,OAAO;YACPX,MAAM1G,QAAQC,OAAO;YACrBqH,UAAU;YACVC,SAAS;gBAAC;gBAAM;aAAM;QACxB;QACAC,eAAe;YACbC,UAAUzH,CAAAA,iCAAAA,QAAQ2E,qBAAqB,YAA7B3E,iCAAiC,EAAE;QAC/C;QACA0H,QAAQlD;QACRmD,sBAAsB;QACtBC,iBAAiB;YACfC,yBAAyB;QAC3B;IACF,IACA;QACEH,QAAQlD;QACRmD,sBAAsB;QACtBC,iBAAiB;YACfC,yBAAyB;QAC3B;IACF;QAOW7H,0BAKEA;IAVjB,MAAM8H,mBAAmB;QACvBC,SAAS;QACTC,OAAO;YACLC,KAAK,CAAC,EAAE5H,eAAe,oBAAoB,CAAC;QAC9C;QACA6H,aAAalI,CAAAA,2BAAAA,QAAQkF,eAAe,YAAvBlF,2BAA2B;QACxCkD,SAAS;YAAC;SAAuD;QACjEiF,WAAW;YAAC;SAAU;QACtBC,UAAU;YACRjI,kBAAkBA;YAClBkI,UAAU,CAAC,EAAErI,CAAAA,4BAAAA,QAAQoF,gBAAgB,YAAxBpF,4BAA4B,KAAK,CAAC;QACjD;IACF;IAEA,MAAMsI,UAAUC,IAAAA,8CAAyB,EACvCxI,MACAwE,gBACAE,aACA2C,mBACAxC,SACAG,SACAC,YACA8C,kBACArC,UACApB,uCAAAA,+BAAgC,CAAC;IAGnC,IAAI,CAACiE,SAAS;QACZjC,cAAM,CAACC,IAAI,CACT,CAAC,wEAAwE,EAAE/B,eAAe;;QAExF,EAAEE,YAAY;;QAEd,CAAC;IAEP;AACF"}
@@ -1,5 +1,4 @@
1
1
  import { ExecutorContext } from '@nx/devkit';
2
- import { ProxyOptions, ServerOptions } from 'vite';
3
2
  import { ViteDevServerExecutorOptions } from '../executors/dev-server/schema';
4
3
  /**
5
4
  * Returns the path to the vite config file or undefined when not found.
@@ -13,6 +12,6 @@ export declare function getViteServerProxyConfigPath(nxProxyConfig: string | und
13
12
  /**
14
13
  * Builds the options for the vite dev server.
15
14
  */
16
- export declare function getViteServerOptions(options: ViteDevServerExecutorOptions, context: ExecutorContext): Promise<ServerOptions>;
17
- export declare function getProxyConfig(context: ExecutorContext, proxyConfig?: string): Record<string, string | ProxyOptions> | undefined;
15
+ export declare function getViteServerOptions(options: ViteDevServerExecutorOptions, context: ExecutorContext): Promise<Record<string, unknown>>;
16
+ export declare function getProxyConfig(context: ExecutorContext, proxyConfig?: string): Record<string, string | unknown> | undefined;
18
17
  export declare function getNxTargetOptions(target: string, context: ExecutorContext): any;
@@ -64,6 +64,7 @@ function getViteServerProxyConfigPath(nxProxyConfig, context) {
64
64
  }
65
65
  }
66
66
  async function getViteServerOptions(options, context) {
67
+ // returns vite ServerOptions
67
68
  // Allows ESM to be required in CJS modules. Vite will be published as ESM in the future.
68
69
  const { searchForWorkspaceRoot } = await Function('return import("vite")')();
69
70
  const projectRoot = context.projectsConfigurations.projects[context.projectName].root;
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../../packages/vite/src/utils/options-utils.ts"],"sourcesContent":["import {\n ExecutorContext,\n joinPathFragments,\n logger,\n parseTargetString,\n readTargetOptions,\n} from '@nx/devkit';\nimport { existsSync } from 'fs';\nimport { ProxyOptions, ServerOptions } from 'vite';\nimport { ViteDevServerExecutorOptions } from '../executors/dev-server/schema';\n\n/**\n * Returns the path to the vite config file or undefined when not found.\n */\nexport function normalizeViteConfigFilePath(\n contextRoot: string,\n projectRoot: string,\n configFile?: string\n): string | undefined {\n if (configFile) {\n const normalized = joinPathFragments(configFile);\n if (!existsSync(normalized)) {\n throw new Error(\n `Could not find vite config at provided path \"${normalized}\".`\n );\n }\n return normalized;\n }\n\n const allowsExt = ['js', 'mjs', 'ts', 'cjs', 'mts', 'cts'];\n\n for (const ext of allowsExt) {\n if (\n existsSync(\n joinPathFragments(contextRoot, projectRoot, `vite.config.${ext}`)\n )\n ) {\n return joinPathFragments(contextRoot, projectRoot, `vite.config.${ext}`);\n } else if (\n existsSync(\n joinPathFragments(contextRoot, projectRoot, `vitest.config.${ext}`)\n )\n ) {\n return joinPathFragments(\n contextRoot,\n projectRoot,\n `vitest.config.${ext}`\n );\n }\n }\n}\n\nexport function getProjectTsConfigPath(\n projectRoot: string\n): string | undefined {\n return existsSync(joinPathFragments(projectRoot, 'tsconfig.app.json'))\n ? joinPathFragments(projectRoot, 'tsconfig.app.json')\n : existsSync(joinPathFragments(projectRoot, 'tsconfig.lib.json'))\n ? joinPathFragments(projectRoot, 'tsconfig.lib.json')\n : existsSync(joinPathFragments(projectRoot, 'tsconfig.json'))\n ? joinPathFragments(projectRoot, 'tsconfig.json')\n : undefined;\n}\n\n/**\n * Returns the path to the proxy configuration file or undefined when not found.\n */\nexport function getViteServerProxyConfigPath(\n nxProxyConfig: string | undefined,\n context: ExecutorContext\n): string | undefined {\n if (nxProxyConfig) {\n const projectRoot =\n context.projectsConfigurations.projects[context.projectName].root;\n\n const proxyConfigPath = nxProxyConfig\n ? joinPathFragments(context.root, nxProxyConfig)\n : joinPathFragments(projectRoot, 'proxy.conf.json');\n\n if (existsSync(proxyConfigPath)) {\n return proxyConfigPath;\n }\n }\n}\n\n/**\n * Builds the options for the vite dev server.\n */\nexport async function getViteServerOptions(\n options: ViteDevServerExecutorOptions,\n context: ExecutorContext\n): Promise<ServerOptions> {\n // Allows ESM to be required in CJS modules. Vite will be published as ESM in the future.\n const { searchForWorkspaceRoot } = await (Function(\n 'return import(\"vite\")'\n )() as Promise<typeof import('vite')>);\n const projectRoot =\n context.projectsConfigurations.projects[context.projectName].root;\n const serverOptions: ServerOptions = {\n fs: {\n allow: [\n searchForWorkspaceRoot(joinPathFragments(projectRoot)),\n joinPathFragments(context.root, 'node_modules/vite'),\n ],\n },\n };\n\n const proxyConfigPath = getViteServerProxyConfigPath(\n options.proxyConfig,\n context\n );\n if (proxyConfigPath) {\n logger.info(`Loading proxy configuration from: ${proxyConfigPath}`);\n serverOptions.proxy = require(proxyConfigPath);\n }\n\n return serverOptions;\n}\n\nexport function getProxyConfig(\n context: ExecutorContext,\n proxyConfig?: string\n): Record<string, string | ProxyOptions> | undefined {\n const proxyConfigPath = getViteServerProxyConfigPath(proxyConfig, context);\n if (proxyConfigPath) {\n logger.info(`Loading proxy configuration from: ${proxyConfigPath}`);\n return require(proxyConfigPath);\n }\n return;\n}\n\nexport function getNxTargetOptions(target: string, context: ExecutorContext) {\n const targetObj = parseTargetString(target, context);\n return readTargetOptions(targetObj, context);\n}\n"],"names":["normalizeViteConfigFilePath","getProjectTsConfigPath","getViteServerProxyConfigPath","getViteServerOptions","getProxyConfig","getNxTargetOptions","contextRoot","projectRoot","configFile","normalized","joinPathFragments","existsSync","Error","allowsExt","ext","undefined","nxProxyConfig","context","projectsConfigurations","projects","projectName","root","proxyConfigPath","options","searchForWorkspaceRoot","Function","serverOptions","fs","allow","proxyConfig","logger","info","proxy","require","target","targetObj","parseTargetString","readTargetOptions"],"mappings":"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"}
1
+ {"version":3,"sources":["../../../../../packages/vite/src/utils/options-utils.ts"],"sourcesContent":["import {\n ExecutorContext,\n joinPathFragments,\n logger,\n parseTargetString,\n readTargetOptions,\n} from '@nx/devkit';\nimport { existsSync } from 'fs';\nimport { ViteDevServerExecutorOptions } from '../executors/dev-server/schema';\n\n/**\n * Returns the path to the vite config file or undefined when not found.\n */\nexport function normalizeViteConfigFilePath(\n contextRoot: string,\n projectRoot: string,\n configFile?: string\n): string | undefined {\n if (configFile) {\n const normalized = joinPathFragments(configFile);\n if (!existsSync(normalized)) {\n throw new Error(\n `Could not find vite config at provided path \"${normalized}\".`\n );\n }\n return normalized;\n }\n\n const allowsExt = ['js', 'mjs', 'ts', 'cjs', 'mts', 'cts'];\n\n for (const ext of allowsExt) {\n if (\n existsSync(\n joinPathFragments(contextRoot, projectRoot, `vite.config.${ext}`)\n )\n ) {\n return joinPathFragments(contextRoot, projectRoot, `vite.config.${ext}`);\n } else if (\n existsSync(\n joinPathFragments(contextRoot, projectRoot, `vitest.config.${ext}`)\n )\n ) {\n return joinPathFragments(\n contextRoot,\n projectRoot,\n `vitest.config.${ext}`\n );\n }\n }\n}\n\nexport function getProjectTsConfigPath(\n projectRoot: string\n): string | undefined {\n return existsSync(joinPathFragments(projectRoot, 'tsconfig.app.json'))\n ? joinPathFragments(projectRoot, 'tsconfig.app.json')\n : existsSync(joinPathFragments(projectRoot, 'tsconfig.lib.json'))\n ? joinPathFragments(projectRoot, 'tsconfig.lib.json')\n : existsSync(joinPathFragments(projectRoot, 'tsconfig.json'))\n ? joinPathFragments(projectRoot, 'tsconfig.json')\n : undefined;\n}\n\n/**\n * Returns the path to the proxy configuration file or undefined when not found.\n */\nexport function getViteServerProxyConfigPath(\n nxProxyConfig: string | undefined,\n context: ExecutorContext\n): string | undefined {\n if (nxProxyConfig) {\n const projectRoot =\n context.projectsConfigurations.projects[context.projectName].root;\n\n const proxyConfigPath = nxProxyConfig\n ? joinPathFragments(context.root, nxProxyConfig)\n : joinPathFragments(projectRoot, 'proxy.conf.json');\n\n if (existsSync(proxyConfigPath)) {\n return proxyConfigPath;\n }\n }\n}\n\n/**\n * Builds the options for the vite dev server.\n */\nexport async function getViteServerOptions(\n options: ViteDevServerExecutorOptions,\n context: ExecutorContext\n): Promise<Record<string, unknown>> {\n // returns vite ServerOptions\n // Allows ESM to be required in CJS modules. Vite will be published as ESM in the future.\n const { searchForWorkspaceRoot } = await (Function(\n 'return import(\"vite\")'\n )() as Promise<typeof import('vite')>);\n const projectRoot =\n context.projectsConfigurations.projects[context.projectName].root;\n const serverOptions: Record<string, unknown> = {\n fs: {\n allow: [\n searchForWorkspaceRoot(joinPathFragments(projectRoot)),\n joinPathFragments(context.root, 'node_modules/vite'),\n ],\n },\n };\n\n const proxyConfigPath = getViteServerProxyConfigPath(\n options.proxyConfig,\n context\n );\n if (proxyConfigPath) {\n logger.info(`Loading proxy configuration from: ${proxyConfigPath}`);\n serverOptions.proxy = require(proxyConfigPath);\n }\n\n return serverOptions;\n}\n\nexport function getProxyConfig(\n context: ExecutorContext,\n proxyConfig?: string\n): Record<string, string | unknown> | undefined {\n const proxyConfigPath = getViteServerProxyConfigPath(proxyConfig, context);\n if (proxyConfigPath) {\n logger.info(`Loading proxy configuration from: ${proxyConfigPath}`);\n return require(proxyConfigPath);\n }\n return;\n}\n\nexport function getNxTargetOptions(target: string, context: ExecutorContext) {\n const targetObj = parseTargetString(target, context);\n return readTargetOptions(targetObj, context);\n}\n"],"names":["normalizeViteConfigFilePath","getProjectTsConfigPath","getViteServerProxyConfigPath","getViteServerOptions","getProxyConfig","getNxTargetOptions","contextRoot","projectRoot","configFile","normalized","joinPathFragments","existsSync","Error","allowsExt","ext","undefined","nxProxyConfig","context","projectsConfigurations","projects","projectName","root","proxyConfigPath","options","searchForWorkspaceRoot","Function","serverOptions","fs","allow","proxyConfig","logger","info","proxy","require","target","targetObj","parseTargetString","readTargetOptions"],"mappings":"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"}
@@ -1,11 +1,11 @@
1
1
  export declare const nxVersion: any;
2
2
  export declare const viteVersion = "^5.0.0";
3
- export declare const vitestVersion = "^1.0.4";
3
+ export declare const vitestVersion = "~0.34.6";
4
4
  export declare const vitePluginReactVersion = "^4.2.0";
5
5
  export declare const vitePluginReactSwcVersion = "^3.5.0";
6
6
  export declare const jsdomVersion = "~22.1.0";
7
7
  export declare const vitePluginDtsVersion = "~2.3.0";
8
8
  export declare const happyDomVersion = "~9.20.3";
9
9
  export declare const edgeRuntimeVmVersion = "~3.0.2";
10
- export declare const vitestCoverageV8Version = "^1.0.4";
11
- export declare const vitestCoverageIstanbulVersion = "^1.0.4";
10
+ export declare const vitestCoverageV8Version = "~0.34.6";
11
+ export declare const vitestCoverageIstanbulVersion = "~0.34.6";
@@ -42,14 +42,14 @@ _export(exports, {
42
42
  });
43
43
  const nxVersion = require('../../package.json').version;
44
44
  const viteVersion = '^5.0.0';
45
- const vitestVersion = '^1.0.4';
45
+ const vitestVersion = '~0.34.6';
46
46
  const vitePluginReactVersion = '^4.2.0';
47
47
  const vitePluginReactSwcVersion = '^3.5.0';
48
48
  const jsdomVersion = '~22.1.0';
49
49
  const vitePluginDtsVersion = '~2.3.0';
50
50
  const happyDomVersion = '~9.20.3';
51
51
  const edgeRuntimeVmVersion = '~3.0.2';
52
- const vitestCoverageV8Version = '^1.0.4';
53
- const vitestCoverageIstanbulVersion = '^1.0.4';
52
+ const vitestCoverageV8Version = '~0.34.6';
53
+ const vitestCoverageIstanbulVersion = '~0.34.6';
54
54
 
55
55
  //# sourceMappingURL=versions.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../../packages/vite/src/utils/versions.ts"],"sourcesContent":["export const nxVersion = require('../../package.json').version;\nexport const viteVersion = '^5.0.0';\nexport const vitestVersion = '^1.0.4';\nexport const vitePluginReactVersion = '^4.2.0';\nexport const vitePluginReactSwcVersion = '^3.5.0';\nexport const jsdomVersion = '~22.1.0';\nexport const vitePluginDtsVersion = '~2.3.0';\nexport const happyDomVersion = '~9.20.3';\nexport const edgeRuntimeVmVersion = '~3.0.2';\n\n// Coverage providers\nexport const vitestCoverageV8Version = '^1.0.4';\nexport const vitestCoverageIstanbulVersion = '^1.0.4';\n"],"names":["nxVersion","viteVersion","vitestVersion","vitePluginReactVersion","vitePluginReactSwcVersion","jsdomVersion","vitePluginDtsVersion","happyDomVersion","edgeRuntimeVmVersion","vitestCoverageV8Version","vitestCoverageIstanbulVersion","require","version"],"mappings":";;;;;;;;IAAaA,SAAS;eAATA;;IACAC,WAAW;eAAXA;;IACAC,aAAa;eAAbA;;IACAC,sBAAsB;eAAtBA;;IACAC,yBAAyB;eAAzBA;;IACAC,YAAY;eAAZA;;IACAC,oBAAoB;eAApBA;;IACAC,eAAe;eAAfA;;IACAC,oBAAoB;eAApBA;;IAGAC,uBAAuB;eAAvBA;;IACAC,6BAA6B;eAA7BA;;;AAZN,MAAMV,YAAYW,QAAQ,sBAAsBC,OAAO;AACvD,MAAMX,cAAc;AACpB,MAAMC,gBAAgB;AACtB,MAAMC,yBAAyB;AAC/B,MAAMC,4BAA4B;AAClC,MAAMC,eAAe;AACrB,MAAMC,uBAAuB;AAC7B,MAAMC,kBAAkB;AACxB,MAAMC,uBAAuB;AAG7B,MAAMC,0BAA0B;AAChC,MAAMC,gCAAgC"}
1
+ {"version":3,"sources":["../../../../../packages/vite/src/utils/versions.ts"],"sourcesContent":["export const nxVersion = require('../../package.json').version;\nexport const viteVersion = '^5.0.0';\nexport const vitestVersion = '~0.34.6';\nexport const vitePluginReactVersion = '^4.2.0';\nexport const vitePluginReactSwcVersion = '^3.5.0';\nexport const jsdomVersion = '~22.1.0';\nexport const vitePluginDtsVersion = '~2.3.0';\nexport const happyDomVersion = '~9.20.3';\nexport const edgeRuntimeVmVersion = '~3.0.2';\n\n// Coverage providers\nexport const vitestCoverageV8Version = '~0.34.6';\nexport const vitestCoverageIstanbulVersion = '~0.34.6';\n"],"names":["nxVersion","viteVersion","vitestVersion","vitePluginReactVersion","vitePluginReactSwcVersion","jsdomVersion","vitePluginDtsVersion","happyDomVersion","edgeRuntimeVmVersion","vitestCoverageV8Version","vitestCoverageIstanbulVersion","require","version"],"mappings":";;;;;;;;IAAaA,SAAS;eAATA;;IACAC,WAAW;eAAXA;;IACAC,aAAa;eAAbA;;IACAC,sBAAsB;eAAtBA;;IACAC,yBAAyB;eAAzBA;;IACAC,YAAY;eAAZA;;IACAC,oBAAoB;eAApBA;;IACAC,eAAe;eAAfA;;IACAC,oBAAoB;eAApBA;;IAGAC,uBAAuB;eAAvBA;;IACAC,6BAA6B;eAA7BA;;;AAZN,MAAMV,YAAYW,QAAQ,sBAAsBC,OAAO;AACvD,MAAMX,cAAc;AACpB,MAAMC,gBAAgB;AACtB,MAAMC,yBAAyB;AAC/B,MAAMC,4BAA4B;AAClC,MAAMC,eAAe;AACrB,MAAMC,uBAAuB;AAC7B,MAAMC,kBAAkB;AACxB,MAAMC,uBAAuB;AAG7B,MAAMC,0BAA0B;AAChC,MAAMC,gCAAgC"}