diff --git a/packages/vite-plugin-checker/package.json b/packages/vite-plugin-checker/package.json
index 1c652bca..5d828c3f 100644
--- a/packages/vite-plugin-checker/package.json
+++ b/packages/vite-plugin-checker/package.json
@@ -104,6 +104,6 @@
"typescript": "~4.5.5",
"vls": "^0.7.6",
"vti": "^0.1.7",
- "vue-tsc": "0.38.9"
+ "vue-tsc": "1.0.14"
}
}
diff --git a/packages/vite-plugin-checker/src/checkers/vueTsc/prepareVueTsc.ts b/packages/vite-plugin-checker/src/checkers/vueTsc/prepareVueTsc.ts
index 444d76eb..063aff7f 100644
--- a/packages/vite-plugin-checker/src/checkers/vueTsc/prepareVueTsc.ts
+++ b/packages/vite-plugin-checker/src/checkers/vueTsc/prepareVueTsc.ts
@@ -8,7 +8,17 @@ const _require = createRequire(import.meta.url)
const _filename = fileURLToPath(import.meta.url)
const _dirname = dirname(_filename)
-const proxyPath = _require.resolve('vue-tsc/out/proxy')
+let proxyPath: string
+let createProgramFunction: string
+try {
+ // vue-tsc exposes the proxy in vue-tsc/out/index after v1.0.14
+ proxyPath = _require.resolve('vue-tsc/out/index')
+ createProgramFunction = 'createProgram'
+} catch (e) {
+ // vue-tsc exposes the proxy in vue-tsc/out/proxy before v1.0.14
+ proxyPath = _require.resolve('vue-tsc/out/proxy')
+ createProgramFunction = 'createProgramProxy'
+}
const textToReplace: { target: string; replacement: string }[] = [
{
@@ -34,7 +44,7 @@ const textToReplace: { target: string; replacement: string }[] = [
target: `function createProgram(rootNamesOrOptions, _options, _host, _oldProgram, _configFileParsingDiagnostics) {`,
replacement: `function createProgram(rootNamesOrOptions, _options, _host, _oldProgram, _configFileParsingDiagnostics) { return require(${JSON.stringify(
proxyPath
- )}).createProgramProxy(...arguments);`,
+ )}).${createProgramFunction}(...arguments);`,
},
{
target: `ts.executeCommandLine(ts.sys, ts.noop, ts.sys.args);`,
diff --git a/playground/vue-tsc-vue3/__tests__/__snapshots__/test.spec.ts.snap b/playground/vue-tsc-vue3/__tests__/__snapshots__/test.spec.ts.snap
index 643db12c..6fbae3d0 100644
--- a/playground/vue-tsc-vue3/__tests__/__snapshots__/test.spec.ts.snap
+++ b/playground/vue-tsc-vue3/__tests__/__snapshots__/test.spec.ts.snap
@@ -1,10 +1,10 @@
// Vitest Snapshot v1
-exports[`vue-tsc-vue3 > serve > get initial error and subsequent error 1`] = `"[{\\"checkerId\\":\\"vue-tsc\\",\\"frame\\":\\" 1 | /n 2 | /n > 3 | /n | ^^^^^^^^^^/n 4 | /n 5 |/n 6 |