From f4a27ddd05f68fbb00794d32fd78f6be3ea2aeb2 Mon Sep 17 00:00:00 2001 From: sapphi-red Date: Thu, 15 Jun 2023 17:38:53 +0900 Subject: [PATCH] refactor: esbuild no longer uses its target to set default value of `useDefineForClassFields` --- packages/vite/src/node/plugins/esbuild.ts | 14 -------------- 1 file changed, 14 deletions(-) diff --git a/packages/vite/src/node/plugins/esbuild.ts b/packages/vite/src/node/plugins/esbuild.ts index 5f17121e380db0..f5984ec7660e94 100644 --- a/packages/vite/src/node/plugins/esbuild.ts +++ b/packages/vite/src/node/plugins/esbuild.ts @@ -130,20 +130,6 @@ export async function transformWithEsbuild( ...tsconfigRaw?.compilerOptions, } - // esbuild derives `useDefineForClassFields` from `target` instead of `tsconfig.compilerOptions.target` - // https://github.com/evanw/esbuild/issues/2584 - // but we want `useDefineForClassFields` to be derived from `tsconfig.compilerOptions.target` - if (compilerOptions.useDefineForClassFields === undefined) { - const lowercaseTarget = compilerOptions.target?.toLowerCase() ?? 'es3' - if (lowercaseTarget.startsWith('es')) { - const esVersion = lowercaseTarget.slice(2) - compilerOptions.useDefineForClassFields = - esVersion === 'next' || +esVersion >= 2022 - } else { - compilerOptions.useDefineForClassFields = false - } - } - // esbuild uses tsconfig fields when both the normal options and tsconfig was set // but we want to prioritize the normal options if (options) {