diff --git a/.changeset/new-pears-explode.md b/.changeset/new-pears-explode.md new file mode 100644 index 0000000..181be96 --- /dev/null +++ b/.changeset/new-pears-explode.md @@ -0,0 +1,5 @@ +--- +'vite-plugin-solid': patch +--- + +Made it so that the plugin gets executed after "esbuild" diff --git a/src/index.ts b/src/index.ts index 17b71e6..effbcd0 100644 --- a/src/index.ts +++ b/src/index.ts @@ -185,7 +185,6 @@ export default function solidPlugin(options: Partial = {}): Plugin { return { name: 'solid', - enforce: 'pre', async config(userConfig, { command }) { // We inject the dev mode only if the user explicitly wants it or if we are in dev (serve) mode @@ -196,6 +195,11 @@ export default function solidPlugin(options: Partial = {}): Plugin { if (!userConfig.resolve) userConfig.resolve = {}; userConfig.resolve.alias = normalizeAliases(userConfig.resolve && userConfig.resolve.alias); + // Forces "esbuild" to preserve JSX so that we can handle it here + // If "esbuild" is not being used, we don't need to change anything + if (userConfig.esbuild !== false) + userConfig.esbuild = { jsx: 'preserve', ...userConfig.esbuild }; + const solidPkgsConfig = await crawlFrameworkPkgs({ viteUserConfig: userConfig, root: projectRoot || process.cwd(),