@nx/vite 16.9.0-beta.1 → 16.9.0-beta.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/package.json +5 -5
- package/src/executors/preview-server/preview-server.impl.js +1 -1
- package/src/executors/preview-server/preview-server.impl.js.map +1 -1
- package/src/generators/configuration/configuration.js +22 -1
- package/src/generators/configuration/configuration.js.map +1 -1
- package/src/generators/init/init.js +1 -1
- package/src/generators/init/init.js.map +1 -1
- package/src/generators/vitest/vitest-generator.js +69 -25
- package/src/generators/vitest/vitest-generator.js.map +1 -1
- package/src/utils/generator-utils.d.ts +12 -1
- package/src/utils/generator-utils.js +36 -42
- package/src/utils/generator-utils.js.map +1 -1
- package/src/utils/options-utils.js +1 -1
- package/src/utils/options-utils.js.map +1 -1
- package/src/utils/test-files/test-vite-configs.d.ts +9 -10
- package/src/utils/test-files/test-vite-configs.js +26 -52
- package/src/utils/test-files/test-vite-configs.js.map +1 -1
- package/src/utils/test-utils.js +2 -4
- package/src/utils/test-utils.js.map +1 -1
- package/src/utils/vite-config-edit-utils.d.ts +1 -1
- package/src/utils/vite-config-edit-utils.js +48 -22
- package/src/utils/vite-config-edit-utils.js.map +1 -1
|
@@ -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 coveragePath = joinPathFragments(\n 'coverage',\n project.root === '.' ? options.project : project.root\n );\n const testOptions: VitestExecutorOptions = {\n passWithNoTests: true,\n // vitest runs in the project root so we have to offset to the workspaceRoot\n reportsDirectory: joinPathFragments(\n offsetFromRoot(project.root),\n coveragePath\n ),\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 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 https: project.targets[target].options?.https,\n hmr: project.targets[target].options?.hmr,\n open: project.targets[target].options?.open,\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 function createOrEditViteConfig(\n tree: Tree,\n options: ViteConfigurationGeneratorSchema,\n onlyVitest: boolean,\n projectAlreadyHasViteTargets?: TargetFlags\n) {\n const projectConfig = readProjectConfiguration(tree, options.project);\n\n const viteConfigPath = `${projectConfig.root}/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 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: [${\n options.uiFramework === 'react'\n ? \"'react', 'react-dom', 'react/jsx-runtime'\"\n : ''\n }]\n }\n },`\n : ``;\n\n const dtsPlugin = onlyVitest\n ? ''\n : options.includeLib\n ? `dts({\n entryRoot: 'src',\n tsConfigFilePath: path.join(__dirname, 'tsconfig.lib.json'),\n skipDiagnostics: true,\n }),`\n : '';\n\n const dtsImportLine = onlyVitest\n ? ''\n : options.includeLib\n ? `import dts from 'vite-plugin-dts';\\nimport * as path from 'path';`\n : '';\n\n let viteConfigContent = '';\n\n const testOption = options.includeVitest\n ? `test: {\n globals: true,\n cache: {\n dir: '${offsetFromRoot(projectConfig.root)}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 },`\n : '';\n\n const defineOption = options.inSourceTests\n ? `define: {\n 'import.meta.vitest': undefined\n },`\n : '';\n\n const reactPluginImportLine =\n options.uiFramework === 'react'\n ? options.compiler === 'swc'\n ? `import react from '@vitejs/plugin-react-swc';`\n : `import react from '@vitejs/plugin-react';`\n : '';\n\n const reactPlugin = options.uiFramework === 'react' ? `react(),` : '';\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 pluginOption = `\n plugins: [\n ${dtsPlugin}\n ${reactPlugin}\n nxViteTsPaths(),\n ],\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 projectConfig.root\n )}node_modules/.vite/${options.project}',`;\n\n if (tree.exists(viteConfigPath)) {\n handleViteConfigFileExists(\n tree,\n viteConfigPath,\n options,\n buildOption,\n dtsPlugin,\n dtsImportLine,\n pluginOption,\n testOption,\n cacheDir,\n offsetFromRoot(projectConfig.root),\n projectAlreadyHasViteTargets\n );\n return;\n }\n\n viteConfigContent = `\n /// <reference types=\"vitest\" />\n import { defineConfig } from 'vite';\n ${reactPluginImportLine}\n import { nxViteTsPaths } from '@nx/vite/plugins/nx-tsconfig-paths.plugin';\n ${dtsImportLine}\n \n export default defineConfig({\n ${cacheDir}\n ${devServerOption}\n ${previewServerOption}\n ${pluginOption}\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: ViteConfigurationGeneratorSchema,\n buildOption: string,\n dtsPlugin: string,\n dtsImportLine: string,\n pluginOption: string,\n testOption: string,\n cacheDir: string,\n offsetFromRoot: string,\n projectAlreadyHasViteTargets?: TargetFlags\n) {\n if (projectAlreadyHasViteTargets.build && projectAlreadyHasViteTargets.test) {\n return;\n }\n\n logger.info(`vite.config.ts already exists for project ${options.project}.`);\n const buildOptionObject = {\n lib: {\n entry: 'src/index.ts',\n name: options.project,\n fileName: 'index',\n formats: ['es', 'cjs'],\n },\n rollupOptions: {\n external:\n options.uiFramework === 'react'\n ? ['react', 'react-dom', 'react/jsx-runtime']\n : [],\n },\n };\n\n const testOptionObject = {\n globals: true,\n cache: {\n dir: `${offsetFromRoot}node_modules/.vitest`,\n },\n environment: 'jsdom',\n include: ['src/**/*.{test,spec}.{js,mjs,cjs,ts,mts,cts,jsx,tsx}'],\n };\n\n const changed = ensureViteConfigIsCorrect(\n tree,\n viteConfigPath,\n buildOption,\n buildOptionObject,\n dtsPlugin,\n dtsImportLine,\n pluginOption,\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 } else {\n logger.info(`\n Vite configuration file (${viteConfigPath}) has been updated with the required settings for the new target(s).\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","coveragePath","joinPathFragments","root","testOptions","passWithNoTests","reportsDirectory","offsetFromRoot","jestConfig","outputs","updateProjectConfiguration","buildOptions","outputPath","fileReplacements","base","baseHref","sourcemap","sourcemaps","defaultConfiguration","configurations","development","mode","production","serveTarget","serveOptions","buildTarget","https","hmr","open","proxyConfig","previewOptions","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","viteConfigPath","buildOption","includeLib","dtsPlugin","dtsImportLine","viteConfigContent","testOption","includeVitest","testEnvironment","inSourceTests","defineOption","reactPluginImportLine","compiler","reactPlugin","devServerOption","previewServerOption","pluginOption","workerOption","cacheDir","handleViteConfigFileExists","configFile","undefined","projectName","Object","values","find","userProvidedTargetName","handleUnsupportedUserProvidedTargetsErrors","logger","warn","Confirm","require","prompt","name","message","initial","shouldConvert","run","Error","info","buildOptionObject","entry","fileName","formats","rollupOptions","external","testOptionObject","globals","cache","dir","environment","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 coveragePath = joinPathFragments(\n 'coverage',\n project.root === '.' ? options.project : project.root\n );\n const testOptions: VitestExecutorOptions = {\n passWithNoTests: true,\n // vitest runs in the project root so we have to offset to the workspaceRoot\n reportsDirectory: joinPathFragments(\n offsetFromRoot(project.root),\n coveragePath\n ),\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 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 https: project.targets[target].options?.https,\n hmr: project.targets[target].options?.hmr,\n open: project.targets[target].options?.open,\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 rollupOptionsExternalString?: string;\n rollupOptionsExternal?: string[];\n imports?: string[];\n plugins?: string[];\n}\n\nexport function createOrEditViteConfig(\n tree: Tree,\n options: ViteConfigFileOptions,\n onlyVitest: boolean,\n projectAlreadyHasViteTargets?: TargetFlags\n) {\n const projectConfig = readProjectConfiguration(tree, options.project);\n\n const viteConfigPath = `${projectConfig.root}/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 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\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(projectConfig.root)}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 },`\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 projectConfig.root\n )}node_modules/.vite/${options.project}',`;\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(projectConfig.root),\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 ${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 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 = {\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 };\n\n const testOptionObject = {\n globals: true,\n cache: {\n dir: `${offsetFromRoot}node_modules/.vitest`,\n },\n environment: 'jsdom',\n include: ['src/**/*.{test,spec}.{js,mjs,cjs,ts,mts,cts,jsx,tsx}'],\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","coveragePath","joinPathFragments","root","testOptions","passWithNoTests","reportsDirectory","offsetFromRoot","jestConfig","outputs","updateProjectConfiguration","buildOptions","outputPath","fileReplacements","base","baseHref","sourcemap","sourcemaps","defaultConfiguration","configurations","development","mode","production","serveTarget","serveOptions","buildTarget","https","hmr","open","proxyConfig","previewOptions","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","viteConfigPath","buildOption","includeLib","rollupOptionsExternal","imports","push","viteConfigContent","plugins","testOption","includeVitest","testEnvironment","inSourceTests","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","testOptionObject","globals","cache","dir","environment","changed","ensureViteConfigIsCorrect"],"mappings":"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"}
|
|
@@ -133,7 +133,7 @@ function getVitePreviewOptions(options, context) {
|
|
|
133
133
|
return serverOptions;
|
|
134
134
|
}
|
|
135
135
|
function getNxTargetOptions(target, context) {
|
|
136
|
-
const targetObj = (0, _devkit.parseTargetString)(target, context
|
|
136
|
+
const targetObj = (0, _devkit.parseTargetString)(target, context);
|
|
137
137
|
return (0, _devkit.readTargetOptions)(targetObj, context);
|
|
138
138
|
}
|
|
139
139
|
|
|
@@ -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 { relative } from 'path';\nimport {\n BuildOptions,\n InlineConfig,\n PluginOption,\n PreviewOptions,\n searchForWorkspaceRoot,\n ServerOptions,\n} from 'vite';\nimport { ViteDevServerExecutorOptions } from '../executors/dev-server/schema';\nimport { VitePreviewServerExecutorOptions } from '../executors/preview-server/schema';\nimport replaceFiles from '../../plugins/rollup-replace-files.plugin';\nimport { ViteBuildExecutorOptions } from '../executors/build/schema';\n\n/**\n * Returns the path to the vite config file or undefined when not found.\n */\nexport function normalizeViteConfigFilePath(\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 return existsSync(joinPathFragments(projectRoot, 'vite.config.ts'))\n ? joinPathFragments(projectRoot, 'vite.config.ts')\n : existsSync(joinPathFragments(projectRoot, 'vite.config.js'))\n ? joinPathFragments(projectRoot, 'vite.config.js')\n : undefined;\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 shared options for vite.\n *\n * Most shared options are derived from the build target.\n */\nexport function getViteSharedConfig(\n options: ViteBuildExecutorOptions,\n clearScreen: boolean | undefined,\n context: ExecutorContext\n): InlineConfig {\n const projectRoot =\n context.projectsConfigurations.projects[context.projectName].root;\n\n const root = relative(\n context.cwd,\n joinPathFragments(context.root, projectRoot)\n );\n\n return {\n mode: options.mode,\n root,\n base: options.base,\n configFile: normalizeViteConfigFilePath(projectRoot, options.configFile),\n plugins: [replaceFiles(options.fileReplacements) as PluginOption],\n optimizeDeps: { force: options.force },\n clearScreen: clearScreen,\n logLevel: options.logLevel,\n };\n}\n\n/**\n * Builds the options for the vite dev server.\n */\nexport function getViteServerOptions(\n options: ViteDevServerExecutorOptions,\n context: ExecutorContext\n): ServerOptions {\n const projectRoot =\n context.projectsConfigurations.projects[context.projectName].root;\n const serverOptions: ServerOptions = {\n host: options.host,\n port: options.port,\n https: options.https,\n hmr: options.hmr,\n open: options.open,\n cors: options.cors,\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\n/**\n * Builds the build options for the vite.\n */\nexport function getViteBuildOptions(\n options: ViteBuildExecutorOptions,\n context: ExecutorContext\n): BuildOptions {\n const projectRoot =\n context.projectsConfigurations.projects[context.projectName].root;\n\n return {\n outDir: relative(projectRoot, options.outputPath),\n emptyOutDir: options.emptyOutDir,\n reportCompressedSize: true,\n cssCodeSplit: options.cssCodeSplit,\n target: options.target,\n commonjsOptions: {\n transformMixedEsModules: true,\n },\n sourcemap: options.sourcemap,\n minify: options.minify,\n manifest: options.manifest,\n ssrManifest: options.ssrManifest,\n ssr: options.ssr,\n watch: options.watch as BuildOptions['watch'],\n };\n}\n\n/**\n * Builds the options for the vite preview server.\n */\nexport function getVitePreviewOptions(\n options: VitePreviewServerExecutorOptions,\n context: ExecutorContext\n): PreviewOptions {\n const serverOptions: ServerOptions = {\n host: options.host,\n port: options.port,\n https: options.https,\n open: options.open,\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 getNxTargetOptions(target: string, context: ExecutorContext) {\n const targetObj = parseTargetString(target, context.projectGraph);\n return readTargetOptions(targetObj, context);\n}\n"],"names":["normalizeViteConfigFilePath","getProjectTsConfigPath","getViteServerProxyConfigPath","getViteSharedConfig","getViteServerOptions","getViteBuildOptions","getVitePreviewOptions","getNxTargetOptions","projectRoot","configFile","normalized","joinPathFragments","existsSync","Error","undefined","nxProxyConfig","context","projectsConfigurations","projects","projectName","root","proxyConfigPath","options","clearScreen","relative","cwd","mode","base","plugins","replaceFiles","fileReplacements","optimizeDeps","force","logLevel","serverOptions","host","port","https","hmr","open","cors","fs","allow","searchForWorkspaceRoot","proxyConfig","logger","info","proxy","require","outDir","outputPath","emptyOutDir","reportCompressedSize","cssCodeSplit","target","commonjsOptions","transformMixedEsModules","sourcemap","minify","manifest","ssrManifest","ssr","watch","targetObj","parseTargetString","projectGraph","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 { relative } from 'path';\nimport {\n BuildOptions,\n InlineConfig,\n PluginOption,\n PreviewOptions,\n searchForWorkspaceRoot,\n ServerOptions,\n} from 'vite';\nimport { ViteDevServerExecutorOptions } from '../executors/dev-server/schema';\nimport { VitePreviewServerExecutorOptions } from '../executors/preview-server/schema';\nimport replaceFiles from '../../plugins/rollup-replace-files.plugin';\nimport { ViteBuildExecutorOptions } from '../executors/build/schema';\n\n/**\n * Returns the path to the vite config file or undefined when not found.\n */\nexport function normalizeViteConfigFilePath(\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 return existsSync(joinPathFragments(projectRoot, 'vite.config.ts'))\n ? joinPathFragments(projectRoot, 'vite.config.ts')\n : existsSync(joinPathFragments(projectRoot, 'vite.config.js'))\n ? joinPathFragments(projectRoot, 'vite.config.js')\n : undefined;\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 shared options for vite.\n *\n * Most shared options are derived from the build target.\n */\nexport function getViteSharedConfig(\n options: ViteBuildExecutorOptions,\n clearScreen: boolean | undefined,\n context: ExecutorContext\n): InlineConfig {\n const projectRoot =\n context.projectsConfigurations.projects[context.projectName].root;\n\n const root = relative(\n context.cwd,\n joinPathFragments(context.root, projectRoot)\n );\n\n return {\n mode: options.mode,\n root,\n base: options.base,\n configFile: normalizeViteConfigFilePath(projectRoot, options.configFile),\n plugins: [replaceFiles(options.fileReplacements) as PluginOption],\n optimizeDeps: { force: options.force },\n clearScreen: clearScreen,\n logLevel: options.logLevel,\n };\n}\n\n/**\n * Builds the options for the vite dev server.\n */\nexport function getViteServerOptions(\n options: ViteDevServerExecutorOptions,\n context: ExecutorContext\n): ServerOptions {\n const projectRoot =\n context.projectsConfigurations.projects[context.projectName].root;\n const serverOptions: ServerOptions = {\n host: options.host,\n port: options.port,\n https: options.https,\n hmr: options.hmr,\n open: options.open,\n cors: options.cors,\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\n/**\n * Builds the build options for the vite.\n */\nexport function getViteBuildOptions(\n options: ViteBuildExecutorOptions,\n context: ExecutorContext\n): BuildOptions {\n const projectRoot =\n context.projectsConfigurations.projects[context.projectName].root;\n\n return {\n outDir: relative(projectRoot, options.outputPath),\n emptyOutDir: options.emptyOutDir,\n reportCompressedSize: true,\n cssCodeSplit: options.cssCodeSplit,\n target: options.target,\n commonjsOptions: {\n transformMixedEsModules: true,\n },\n sourcemap: options.sourcemap,\n minify: options.minify,\n manifest: options.manifest,\n ssrManifest: options.ssrManifest,\n ssr: options.ssr,\n watch: options.watch as BuildOptions['watch'],\n };\n}\n\n/**\n * Builds the options for the vite preview server.\n */\nexport function getVitePreviewOptions(\n options: VitePreviewServerExecutorOptions,\n context: ExecutorContext\n): PreviewOptions {\n const serverOptions: ServerOptions = {\n host: options.host,\n port: options.port,\n https: options.https,\n open: options.open,\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 getNxTargetOptions(target: string, context: ExecutorContext) {\n const targetObj = parseTargetString(target, context);\n return readTargetOptions(targetObj, context);\n}\n"],"names":["normalizeViteConfigFilePath","getProjectTsConfigPath","getViteServerProxyConfigPath","getViteSharedConfig","getViteServerOptions","getViteBuildOptions","getVitePreviewOptions","getNxTargetOptions","projectRoot","configFile","normalized","joinPathFragments","existsSync","Error","undefined","nxProxyConfig","context","projectsConfigurations","projects","projectName","root","proxyConfigPath","options","clearScreen","relative","cwd","mode","base","plugins","replaceFiles","fileReplacements","optimizeDeps","force","logLevel","serverOptions","host","port","https","hmr","open","cors","fs","allow","searchForWorkspaceRoot","proxyConfig","logger","info","proxy","require","outDir","outputPath","emptyOutDir","reportCompressedSize","cssCodeSplit","target","commonjsOptions","transformMixedEsModules","sourcemap","minify","manifest","ssrManifest","ssr","watch","targetObj","parseTargetString","readTargetOptions"],"mappings":"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"}
|
|
@@ -1,11 +1,11 @@
|
|
|
1
|
-
export declare const noBuildOptions = "\n /// <reference types=\"vitest\" />\n import { defineConfig } from 'vite';\n import react from '@vitejs/plugin-react';\n import
|
|
2
|
-
export declare const someBuildOptions = "\n /// <reference types=\"vitest\" />\n import { defineConfig } from 'vite';\n import react from '@vitejs/plugin-react';\n import
|
|
3
|
-
export declare const noContentDefineConfig = "\n /// <reference types=\"vitest\" />\n import { defineConfig } from 'vite';\n import react from '@vitejs/plugin-react';\n import
|
|
1
|
+
export declare const noBuildOptions = "\n /// <reference types=\"vitest\" />\n import { defineConfig } from 'vite';\n import react from '@vitejs/plugin-react';\n import { nxViteTsPaths } from '@nx/vite/plugins/nx-tsconfig-paths.plugin';\n\n export default defineConfig({\n plugins: [\n react(),\n nxViteTsPaths(),\n ],\n\n test: {\n globals: true,\n cache: {\n dir: '../../node_modules/.vitest',\n },\n environment: 'jsdom',\n include: ['src/**/*.{test,spec}.{js,mjs,cjs,ts,mts,cts,jsx,tsx}'],\n },\n\n });\n ";
|
|
2
|
+
export declare const someBuildOptions = "\n /// <reference types=\"vitest\" />\n import { defineConfig } from 'vite';\n import react from '@vitejs/plugin-react';\n import { nxViteTsPaths } from '@nx/vite/plugins/nx-tsconfig-paths.plugin';\n\n export default defineConfig({\n plugins: [\n react(),\n nxViteTsPaths(),\n ],\n\n test: {\n globals: true,\n cache: {\n dir: '../../node_modules/.vitest',\n },\n environment: 'jsdom',\n include: ['src/**/*.{test,spec}.{js,mjs,cjs,ts,mts,cts,jsx,tsx}'],\n },\n\n build: {\n my: 'option',\n }\n\n });\n ";
|
|
3
|
+
export declare const noContentDefineConfig = "\n /// <reference types=\"vitest\" />\n import { defineConfig } from 'vite';\n import react from '@vitejs/plugin-react';\n import { nxViteTsPaths } from '@nx/vite/plugins/nx-tsconfig-paths.plugin';\n\n export default defineConfig({});\n ";
|
|
4
4
|
export declare const conditionalConfig = "\n /// <reference types=\"vitest\" />\n import { defineConfig } from 'vite';\n export default defineConfig(({ command, mode, ssrBuild }) => {\n if (command === 'serve') {\n return {\n port: 4200,\n host: 'localhost',\n }\n } else {\n // command === 'build'\n return {\n my: 'option',\n }\n }\n })\n ";
|
|
5
|
-
export declare const configNoDefineConfig = "\n /// <reference types=\"vitest\" />\n import { defineConfig } from 'vite';\n import react from '@vitejs/plugin-react';\n import
|
|
6
|
-
export declare const noBuildOptionsHasTestOption = "\n /// <reference types=\"vitest\" />\n import { defineConfig } from 'vite';\n import react from '@vitejs/plugin-react';\n import
|
|
7
|
-
export declare const someBuildOptionsSomeTestOption = "\n /// <reference types=\"vitest\" />\n import { defineConfig } from 'vite';\n import react from '@vitejs/plugin-react';\n import
|
|
8
|
-
export declare const hasEverything = "\n /// <reference types=\"vitest\" />\n import { defineConfig } from 'vite';\n import react from '@vitejs/plugin-react';\n import
|
|
5
|
+
export declare const configNoDefineConfig = "\n /// <reference types=\"vitest\" />\n import { defineConfig } from 'vite';\n import react from '@vitejs/plugin-react';\n import { nxViteTsPaths } from '@nx/vite/plugins/nx-tsconfig-paths.plugin';\n\n export default {\n plugins: [\n react(),\n nxViteTsPaths(),\n ],\n };\n ";
|
|
6
|
+
export declare const noBuildOptionsHasTestOption = "\n /// <reference types=\"vitest\" />\n import { defineConfig } from 'vite';\n import react from '@vitejs/plugin-react';\n import { nxViteTsPaths } from '@nx/vite/plugins/nx-tsconfig-paths.plugin';\n\n export default defineConfig({\n plugins: [\n react(),\n nxViteTsPaths(),\n ],\n\n test: {\n globals: true,\n cache: {\n dir: '../../node_modules/.vitest',\n },\n environment: 'jsdom',\n include: ['src/**/*.{test,spec}.{js,mjs,cjs,ts,mts,cts,jsx,tsx}'],\n },\n\n });\n ";
|
|
7
|
+
export declare const someBuildOptionsSomeTestOption = "\n /// <reference types=\"vitest\" />\n import { defineConfig } from 'vite';\n import react from '@vitejs/plugin-react';\n import { nxViteTsPaths } from '@nx/vite/plugins/nx-tsconfig-paths.plugin';\n\n export default defineConfig({\n plugins: [\n react(),\n nxViteTsPaths(),\n ],\n\n test: {\n my: 'option',\n },\n\n build: {\n my: 'option',\n }\n\n });\n ";
|
|
8
|
+
export declare const hasEverything = "\n /// <reference types=\"vitest\" />\n import { defineConfig } from 'vite';\n import react from '@vitejs/plugin-react';\n import { nxViteTsPaths } from '@nx/vite/plugins/nx-tsconfig-paths.plugin';\n import dts from 'vite-plugin-dts';\n import { joinPathFragments } from '@nx/devkit';\n\n export default defineConfig({\n plugins: [\n dts({ entryRoot: 'src', tsConfigFilePath: joinPathFragments(__dirname, 'tsconfig.lib.json'), skipDiagnostics: true }),\n react(),\n nxViteTsPaths(),\n ],\n \n // Configuration for building your library.\n // See: https://vitejs.dev/guide/build.html#library-mode\n build: {\n lib: {\n // Could also be a dictionary or array of multiple entry points.\n entry: 'src/index.ts',\n name: 'pure-libs-react-vite',\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: ['react', 'react-dom', 'react/jsx-runtime'],\n },\n },\n \n test: {\n globals: true,\n cache: {\n dir: '../../../node_modules/.vitest',\n },\n environment: 'jsdom',\n include: ['src/**/*.{test,spec}.{js,mjs,cjs,ts,mts,cts,jsx,tsx}'],\n },\n });\n ";
|
|
9
9
|
export declare const buildOption = "\n // Configuration for building your library.\n // See: https://vitejs.dev/guide/build.html#library-mode\n build: {\n lib: {\n // Could also be a dictionary or array of multiple entry points.\n entry: 'src/index.ts',\n name: 'my-app',\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: [\"'react', 'react-dom', 'react/jsx-runtime'\"]\n }\n },";
|
|
10
10
|
export declare const buildOptionObject: {
|
|
11
11
|
lib: {
|
|
@@ -27,6 +27,5 @@ export declare const testOptionObject: {
|
|
|
27
27
|
environment: string;
|
|
28
28
|
include: string[];
|
|
29
29
|
};
|
|
30
|
-
export declare const
|
|
31
|
-
export declare const
|
|
32
|
-
export declare const pluginOption: string;
|
|
30
|
+
export declare const imports: string[];
|
|
31
|
+
export declare const plugins: string[];
|
|
@@ -42,28 +42,23 @@ _export(exports, {
|
|
|
42
42
|
testOptionObject: function() {
|
|
43
43
|
return testOptionObject;
|
|
44
44
|
},
|
|
45
|
-
|
|
46
|
-
return
|
|
45
|
+
imports: function() {
|
|
46
|
+
return imports;
|
|
47
47
|
},
|
|
48
|
-
|
|
49
|
-
return
|
|
50
|
-
},
|
|
51
|
-
pluginOption: function() {
|
|
52
|
-
return pluginOption;
|
|
48
|
+
plugins: function() {
|
|
49
|
+
return plugins;
|
|
53
50
|
}
|
|
54
51
|
});
|
|
55
52
|
const noBuildOptions = `
|
|
56
53
|
/// <reference types="vitest" />
|
|
57
54
|
import { defineConfig } from 'vite';
|
|
58
55
|
import react from '@vitejs/plugin-react';
|
|
59
|
-
import
|
|
56
|
+
import { nxViteTsPaths } from '@nx/vite/plugins/nx-tsconfig-paths.plugin';
|
|
60
57
|
|
|
61
58
|
export default defineConfig({
|
|
62
59
|
plugins: [
|
|
63
60
|
react(),
|
|
64
|
-
|
|
65
|
-
root: '../../',
|
|
66
|
-
}),
|
|
61
|
+
nxViteTsPaths(),
|
|
67
62
|
],
|
|
68
63
|
|
|
69
64
|
test: {
|
|
@@ -81,14 +76,12 @@ const someBuildOptions = `
|
|
|
81
76
|
/// <reference types="vitest" />
|
|
82
77
|
import { defineConfig } from 'vite';
|
|
83
78
|
import react from '@vitejs/plugin-react';
|
|
84
|
-
import
|
|
79
|
+
import { nxViteTsPaths } from '@nx/vite/plugins/nx-tsconfig-paths.plugin';
|
|
85
80
|
|
|
86
81
|
export default defineConfig({
|
|
87
82
|
plugins: [
|
|
88
83
|
react(),
|
|
89
|
-
|
|
90
|
-
root: '../../',
|
|
91
|
-
}),
|
|
84
|
+
nxViteTsPaths(),
|
|
92
85
|
],
|
|
93
86
|
|
|
94
87
|
test: {
|
|
@@ -110,7 +103,7 @@ const noContentDefineConfig = `
|
|
|
110
103
|
/// <reference types="vitest" />
|
|
111
104
|
import { defineConfig } from 'vite';
|
|
112
105
|
import react from '@vitejs/plugin-react';
|
|
113
|
-
import
|
|
106
|
+
import { nxViteTsPaths } from '@nx/vite/plugins/nx-tsconfig-paths.plugin';
|
|
114
107
|
|
|
115
108
|
export default defineConfig({});
|
|
116
109
|
`;
|
|
@@ -135,14 +128,12 @@ const configNoDefineConfig = `
|
|
|
135
128
|
/// <reference types="vitest" />
|
|
136
129
|
import { defineConfig } from 'vite';
|
|
137
130
|
import react from '@vitejs/plugin-react';
|
|
138
|
-
import
|
|
131
|
+
import { nxViteTsPaths } from '@nx/vite/plugins/nx-tsconfig-paths.plugin';
|
|
139
132
|
|
|
140
133
|
export default {
|
|
141
134
|
plugins: [
|
|
142
135
|
react(),
|
|
143
|
-
|
|
144
|
-
root: '../../',
|
|
145
|
-
}),
|
|
136
|
+
nxViteTsPaths(),
|
|
146
137
|
],
|
|
147
138
|
};
|
|
148
139
|
`;
|
|
@@ -150,14 +141,12 @@ const noBuildOptionsHasTestOption = `
|
|
|
150
141
|
/// <reference types="vitest" />
|
|
151
142
|
import { defineConfig } from 'vite';
|
|
152
143
|
import react from '@vitejs/plugin-react';
|
|
153
|
-
import
|
|
144
|
+
import { nxViteTsPaths } from '@nx/vite/plugins/nx-tsconfig-paths.plugin';
|
|
154
145
|
|
|
155
146
|
export default defineConfig({
|
|
156
147
|
plugins: [
|
|
157
148
|
react(),
|
|
158
|
-
|
|
159
|
-
root: '../../',
|
|
160
|
-
}),
|
|
149
|
+
nxViteTsPaths(),
|
|
161
150
|
],
|
|
162
151
|
|
|
163
152
|
test: {
|
|
@@ -175,14 +164,12 @@ const someBuildOptionsSomeTestOption = `
|
|
|
175
164
|
/// <reference types="vitest" />
|
|
176
165
|
import { defineConfig } from 'vite';
|
|
177
166
|
import react from '@vitejs/plugin-react';
|
|
178
|
-
import
|
|
167
|
+
import { nxViteTsPaths } from '@nx/vite/plugins/nx-tsconfig-paths.plugin';
|
|
179
168
|
|
|
180
169
|
export default defineConfig({
|
|
181
170
|
plugins: [
|
|
182
171
|
react(),
|
|
183
|
-
|
|
184
|
-
root: '../../',
|
|
185
|
-
}),
|
|
172
|
+
nxViteTsPaths(),
|
|
186
173
|
],
|
|
187
174
|
|
|
188
175
|
test: {
|
|
@@ -199,21 +186,15 @@ const hasEverything = `
|
|
|
199
186
|
/// <reference types="vitest" />
|
|
200
187
|
import { defineConfig } from 'vite';
|
|
201
188
|
import react from '@vitejs/plugin-react';
|
|
202
|
-
import
|
|
189
|
+
import { nxViteTsPaths } from '@nx/vite/plugins/nx-tsconfig-paths.plugin';
|
|
203
190
|
import dts from 'vite-plugin-dts';
|
|
204
191
|
import { joinPathFragments } from '@nx/devkit';
|
|
205
192
|
|
|
206
193
|
export default defineConfig({
|
|
207
194
|
plugins: [
|
|
208
|
-
dts({
|
|
209
|
-
entryRoot: 'src',
|
|
210
|
-
tsConfigFilePath: joinPathFragments(__dirname, 'tsconfig.lib.json'),
|
|
211
|
-
skipDiagnostics: true,
|
|
212
|
-
}),
|
|
195
|
+
dts({ entryRoot: 'src', tsConfigFilePath: joinPathFragments(__dirname, 'tsconfig.lib.json'), skipDiagnostics: true }),
|
|
213
196
|
react(),
|
|
214
|
-
|
|
215
|
-
root: '../../../',
|
|
216
|
-
}),
|
|
197
|
+
nxViteTsPaths(),
|
|
217
198
|
],
|
|
218
199
|
|
|
219
200
|
// Configuration for building your library.
|
|
@@ -296,20 +277,13 @@ const testOptionObject = {
|
|
|
296
277
|
'src/**/*.{test,spec}.{js,mjs,cjs,ts,mts,cts,jsx,tsx}'
|
|
297
278
|
]
|
|
298
279
|
};
|
|
299
|
-
const
|
|
300
|
-
|
|
301
|
-
|
|
302
|
-
|
|
303
|
-
|
|
304
|
-
|
|
305
|
-
|
|
306
|
-
|
|
307
|
-
${dtsPlugin}
|
|
308
|
-
react(),
|
|
309
|
-
viteTsConfigPaths({
|
|
310
|
-
root: '../../',
|
|
311
|
-
}),
|
|
312
|
-
],
|
|
313
|
-
`;
|
|
280
|
+
const imports = [
|
|
281
|
+
`import dts from 'vite-plugin-dts'`,
|
|
282
|
+
`import { joinPathFragments } from '@nx/devkit'`
|
|
283
|
+
];
|
|
284
|
+
const plugins = [
|
|
285
|
+
`react()`,
|
|
286
|
+
`nxViteTsPaths()`
|
|
287
|
+
];
|
|
314
288
|
|
|
315
289
|
//# sourceMappingURL=test-vite-configs.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../../../../packages/vite/src/utils/test-files/test-vite-configs.ts"],"sourcesContent":["export const noBuildOptions = `\n /// <reference types=\"vitest\" />\n import { defineConfig } from 'vite';\n import react from '@vitejs/plugin-react';\n import
|
|
1
|
+
{"version":3,"sources":["../../../../../../packages/vite/src/utils/test-files/test-vite-configs.ts"],"sourcesContent":["export const noBuildOptions = `\n /// <reference types=\"vitest\" />\n import { defineConfig } from 'vite';\n import react from '@vitejs/plugin-react';\n import { nxViteTsPaths } from '@nx/vite/plugins/nx-tsconfig-paths.plugin';\n\n export default defineConfig({\n plugins: [\n react(),\n nxViteTsPaths(),\n ],\n\n test: {\n globals: true,\n cache: {\n dir: '../../node_modules/.vitest',\n },\n environment: 'jsdom',\n include: ['src/**/*.{test,spec}.{js,mjs,cjs,ts,mts,cts,jsx,tsx}'],\n },\n\n });\n `;\n\nexport const someBuildOptions = `\n /// <reference types=\"vitest\" />\n import { defineConfig } from 'vite';\n import react from '@vitejs/plugin-react';\n import { nxViteTsPaths } from '@nx/vite/plugins/nx-tsconfig-paths.plugin';\n\n export default defineConfig({\n plugins: [\n react(),\n nxViteTsPaths(),\n ],\n\n test: {\n globals: true,\n cache: {\n dir: '../../node_modules/.vitest',\n },\n environment: 'jsdom',\n include: ['src/**/*.{test,spec}.{js,mjs,cjs,ts,mts,cts,jsx,tsx}'],\n },\n\n build: {\n my: 'option',\n }\n\n });\n `;\n\nexport const noContentDefineConfig = `\n /// <reference types=\"vitest\" />\n import { defineConfig } from 'vite';\n import react from '@vitejs/plugin-react';\n import { nxViteTsPaths } from '@nx/vite/plugins/nx-tsconfig-paths.plugin';\n\n export default defineConfig({});\n `;\n\nexport const conditionalConfig = `\n /// <reference types=\"vitest\" />\n import { defineConfig } from 'vite';\n export default defineConfig(({ command, mode, ssrBuild }) => {\n if (command === 'serve') {\n return {\n port: 4200,\n host: 'localhost',\n }\n } else {\n // command === 'build'\n return {\n my: 'option',\n }\n }\n })\n `;\n\nexport const configNoDefineConfig = `\n /// <reference types=\"vitest\" />\n import { defineConfig } from 'vite';\n import react from '@vitejs/plugin-react';\n import { nxViteTsPaths } from '@nx/vite/plugins/nx-tsconfig-paths.plugin';\n\n export default {\n plugins: [\n react(),\n nxViteTsPaths(),\n ],\n };\n `;\n\nexport const noBuildOptionsHasTestOption = `\n /// <reference types=\"vitest\" />\n import { defineConfig } from 'vite';\n import react from '@vitejs/plugin-react';\n import { nxViteTsPaths } from '@nx/vite/plugins/nx-tsconfig-paths.plugin';\n\n export default defineConfig({\n plugins: [\n react(),\n nxViteTsPaths(),\n ],\n\n test: {\n globals: true,\n cache: {\n dir: '../../node_modules/.vitest',\n },\n environment: 'jsdom',\n include: ['src/**/*.{test,spec}.{js,mjs,cjs,ts,mts,cts,jsx,tsx}'],\n },\n\n });\n `;\n\nexport const someBuildOptionsSomeTestOption = `\n /// <reference types=\"vitest\" />\n import { defineConfig } from 'vite';\n import react from '@vitejs/plugin-react';\n import { nxViteTsPaths } from '@nx/vite/plugins/nx-tsconfig-paths.plugin';\n\n export default defineConfig({\n plugins: [\n react(),\n nxViteTsPaths(),\n ],\n\n test: {\n my: 'option',\n },\n\n build: {\n my: 'option',\n }\n\n });\n `;\n\nexport const hasEverything = `\n /// <reference types=\"vitest\" />\n import { defineConfig } from 'vite';\n import react from '@vitejs/plugin-react';\n import { nxViteTsPaths } from '@nx/vite/plugins/nx-tsconfig-paths.plugin';\n import dts from 'vite-plugin-dts';\n import { joinPathFragments } from '@nx/devkit';\n\n export default defineConfig({\n plugins: [\n dts({ entryRoot: 'src', tsConfigFilePath: joinPathFragments(__dirname, 'tsconfig.lib.json'), skipDiagnostics: true }),\n react(),\n nxViteTsPaths(),\n ],\n \n // Configuration for building your library.\n // See: https://vitejs.dev/guide/build.html#library-mode\n build: {\n lib: {\n // Could also be a dictionary or array of multiple entry points.\n entry: 'src/index.ts',\n name: 'pure-libs-react-vite',\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: ['react', 'react-dom', 'react/jsx-runtime'],\n },\n },\n \n test: {\n globals: true,\n cache: {\n dir: '../../../node_modules/.vitest',\n },\n environment: 'jsdom',\n include: ['src/**/*.{test,spec}.{js,mjs,cjs,ts,mts,cts,jsx,tsx}'],\n },\n });\n `;\n\nexport const buildOption = `\n // Configuration for building your library.\n // See: https://vitejs.dev/guide/build.html#library-mode\n build: {\n lib: {\n // Could also be a dictionary or array of multiple entry points.\n entry: 'src/index.ts',\n name: 'my-app',\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: [\"'react', 'react-dom', 'react/jsx-runtime'\"]\n }\n },`;\nexport const buildOptionObject = {\n lib: {\n entry: 'src/index.ts',\n name: 'my-app',\n fileName: 'index',\n formats: ['es', 'cjs'],\n },\n rollupOptions: {\n external: [\"'react', 'react-dom', 'react/jsx-runtime'\"],\n },\n};\n\nexport const testOption = `test: {\n globals: true,\n cache: {\n dir: '../node_modules/.vitest'\n },\n environment: 'jsdom',\n include: ['src/**/*.{test,spec}.{js,mjs,cjs,ts,mts,cts,jsx,tsx}'],\n },`;\n\nexport const testOptionObject = {\n globals: true,\n cache: {\n dir: `../node_modules/.vitest`,\n },\n environment: 'jsdom',\n include: ['src/**/*.{test,spec}.{js,mjs,cjs,ts,mts,cts,jsx,tsx}'],\n};\n\nexport const imports = [\n `import dts from 'vite-plugin-dts'`,\n `import { joinPathFragments } from '@nx/devkit'`,\n];\n\nexport const plugins = [`react()`, `nxViteTsPaths()`];\n"],"names":["noBuildOptions","someBuildOptions","noContentDefineConfig","conditionalConfig","configNoDefineConfig","noBuildOptionsHasTestOption","someBuildOptionsSomeTestOption","hasEverything","buildOption","buildOptionObject","testOption","testOptionObject","imports","plugins","lib","entry","name","fileName","formats","rollupOptions","external","globals","cache","dir","environment","include"],"mappings":";;;;;;;;IAAaA,cAAc;eAAdA;;IAwBAC,gBAAgB;eAAhBA;;IA4BAC,qBAAqB;eAArBA;;IASAC,iBAAiB;eAAjBA;;IAkBAC,oBAAoB;eAApBA;;IAcAC,2BAA2B;eAA3BA;;IAwBAC,8BAA8B;eAA9BA;;IAuBAC,aAAa;eAAbA;;IA4CAC,WAAW;eAAXA;;IAkBAC,iBAAiB;eAAjBA;;IAYAC,UAAU;eAAVA;;IASAC,gBAAgB;eAAhBA;;IASAC,OAAO;eAAPA;;IAKAC,OAAO;eAAPA;;;AA7ON,MAAMb,iBAAiB,CAAC;;;;;;;;;;;;;;;;;;;;;;IAsB3B,CAAC;AAEE,MAAMC,mBAAmB,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;IA0B7B,CAAC;AAEE,MAAMC,wBAAwB,CAAC;;;;;;;IAOlC,CAAC;AAEE,MAAMC,oBAAoB,CAAC;;;;;;;;;;;;;;;;IAgB9B,CAAC;AAEE,MAAMC,uBAAuB,CAAC;;;;;;;;;;;;IAYjC,CAAC;AAEE,MAAMC,8BAA8B,CAAC;;;;;;;;;;;;;;;;;;;;;;IAsBxC,CAAC;AAEE,MAAMC,iCAAiC,CAAC;;;;;;;;;;;;;;;;;;;;;IAqB3C,CAAC;AAEE,MAAMC,gBAAgB,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IA0C1B,CAAC;AAEE,MAAMC,cAAc,CAAC;;;;;;;;;;;;;;;;;MAiBtB,CAAC;AACA,MAAMC,oBAAoB;IAC/BK,KAAK;QACHC,OAAO;QACPC,MAAM;QACNC,UAAU;QACVC,SAAS;YAAC;YAAM;SAAM;IACxB;IACAC,eAAe;QACbC,UAAU;YAAC;SAA4C;IACzD;AACF;AAEO,MAAMV,aAAa,CAAC;;;;;;;MAOrB,CAAC;AAEA,MAAMC,mBAAmB;IAC9BU,SAAS,IAAI;IACbC,OAAO;QACLC,KAAK,CAAC,uBAAuB,CAAC;IAChC;IACAC,aAAa;IACbC,SAAS;QAAC;KAAuD;AACnE;AAEO,MAAMb,UAAU;IACrB,CAAC,iCAAiC,CAAC;IACnC,CAAC,8CAA8C,CAAC;CACjD;AAEM,MAAMC,UAAU;IAAC,CAAC,OAAO,CAAC;IAAE,CAAC,eAAe,CAAC;CAAC"}
|
package/src/utils/test-utils.js
CHANGED
|
@@ -451,15 +451,13 @@ function mockReactLibNonBuildableVitestRunnerGenerator(tree) {
|
|
|
451
451
|
tree.write(`libs/${libName}/vite.config.ts`, `/// <reference types="vitest" />
|
|
452
452
|
import { defineConfig } from 'vite';
|
|
453
453
|
import react from '@vitejs/plugin-react';
|
|
454
|
-
import
|
|
454
|
+
import { nxViteTsPaths } from '@nx/vite/plugins/nx-tsconfig-paths.plugin';
|
|
455
455
|
|
|
456
456
|
export default defineConfig({
|
|
457
457
|
|
|
458
458
|
plugins: [
|
|
459
|
+
nxViteTsPaths(),
|
|
459
460
|
react(),
|
|
460
|
-
viteTsConfigPaths({
|
|
461
|
-
root: '../../',
|
|
462
|
-
}),
|
|
463
461
|
],
|
|
464
462
|
|
|
465
463
|
test: {
|