diff --git a/packages/plugin-vue-jsx/src/index.ts b/packages/plugin-vue-jsx/src/index.ts index f1a93360..68cbe9ea 100644 --- a/packages/plugin-vue-jsx/src/index.ts +++ b/packages/plugin-vue-jsx/src/index.ts @@ -56,7 +56,7 @@ function vueJsxPlugin(options: Options = {}): Plugin { return { // only apply esbuild to ts files // since we are handling jsx and tsx now - esbuild: { + oxc: { include: /\.ts$/, }, define: { diff --git a/packages/plugin-vue/src/main.ts b/packages/plugin-vue/src/main.ts index a3244c41..13e1e927 100644 --- a/packages/plugin-vue/src/main.ts +++ b/packages/plugin-vue/src/main.ts @@ -7,7 +7,7 @@ import type { EncodedSourceMap as TraceEncodedSourceMap } from '@jridgewell/trac import { TraceMap, eachMapping } from '@jridgewell/trace-mapping' import type { EncodedSourceMap as GenEncodedSourceMap } from '@jridgewell/gen-mapping' import { addMapping, fromMap, toEncodedMap } from '@jridgewell/gen-mapping' -import { normalizePath, transformWithEsbuild } from 'rolldown-vite' +import { normalizePath, transformWithOxc } from 'rolldown-vite' import { createDescriptor, getDescriptor, @@ -256,15 +256,16 @@ export async function transformMain( /tsx?$/.test(lang) && !descriptor.script?.src // only normal script can have src ) { - const { code, map } = await transformWithEsbuild( + const { code, map } = await transformWithOxc( + pluginContext, resolvedCode, filename, { target: 'esnext', // #430 support decorators in .vue file // target can be overridden by esbuild config target - ...options.devServer?.config.esbuild, - loader: 'ts', + ...options.devServer?.config.oxc, + lang: 'ts', sourcemap: options.sourceMap, }, resolvedMap, diff --git a/playground/vue-sourcemap/__tests__/__snapshots__/vue-sourcemap.spec.ts.snap b/playground/vue-sourcemap/__tests__/__snapshots__/vue-sourcemap.spec.ts.snap index a45da399..edc9c651 100644 --- a/playground/vue-sourcemap/__tests__/__snapshots__/vue-sourcemap.spec.ts.snap +++ b/playground/vue-sourcemap/__tests__/__snapshots__/vue-sourcemap.spec.ts.snap @@ -321,7 +321,7 @@ exports[`serve:vue-sourcemap > src imported sass > serve-src-imported-sass 1`] = exports[`serve:vue-sourcemap > ts > serve-ts 1`] = ` { "ignoreList": [], - "mappings": ";AAKA,QAAQ,IAAI,WAAW;;;;;AAIvB,YAAQ,IAAI,UAAU;;;;;;;;uBARpB,oBAAiB,WAAd,MAAU", + "mappings": ";AAKA,QAAQ,IAAI,YAAW;;;;;AAIvB,UAAQ,IAAI,WAAU;;;;;;;;;;;sBARpB,oBAAiB,WAAd,OAAU", "sources": [ "Ts.vue", ],