Skip to content

Commit c3dd1de

Browse files
committed
fix(compiler-sfc): fix rewriteDefault problem when using @babel/parser@^7.20.0
1 parent fe77e2b commit c3dd1de

File tree

7 files changed

+51
-35
lines changed

7 files changed

+51
-35
lines changed

package.json

+1-1
Original file line numberDiff line numberDiff line change
@@ -53,7 +53,7 @@
5353
"node": ">=16.11.0"
5454
},
5555
"devDependencies": {
56-
"@babel/types": "^7.12.0",
56+
"@babel/types": "^7.20.5",
5757
"@esbuild-plugins/node-modules-polyfill": "^0.1.4",
5858
"@microsoft/api-extractor": "~7.20.0",
5959
"@rollup/plugin-commonjs": "^23.0.2",

packages/compiler-core/package.json

+2-2
Original file line numberDiff line numberDiff line change
@@ -33,11 +33,11 @@
3333
"homepage": "https://github.com/vuejs/core/tree/main/packages/compiler-core#readme",
3434
"dependencies": {
3535
"@vue/shared": "3.2.45",
36-
"@babel/parser": "^7.16.4",
36+
"@babel/parser": "^7.20.5",
3737
"estree-walker": "^2.0.2",
3838
"source-map": "^0.6.1"
3939
},
4040
"devDependencies": {
41-
"@babel/types": "^7.16.0"
41+
"@babel/types": "^7.20.5"
4242
}
4343
}

packages/compiler-sfc/package.json

+2-2
Original file line numberDiff line numberDiff line change
@@ -32,7 +32,7 @@
3232
},
3333
"homepage": "https://github.com/vuejs/core/tree/main/packages/compiler-sfc#readme",
3434
"dependencies": {
35-
"@babel/parser": "^7.16.4",
35+
"@babel/parser": "^7.20.5",
3636
"@vue/compiler-core": "3.2.45",
3737
"@vue/compiler-dom": "3.2.45",
3838
"@vue/compiler-ssr": "3.2.45",
@@ -45,7 +45,7 @@
4545
},
4646
"devDependencies": {
4747
"@types/estree": "^0.0.48",
48-
"@babel/types": "^7.16.0",
48+
"@babel/types": "^7.20.5",
4949
"@types/lru-cache": "^5.1.0",
5050
"pug": "^3.0.1",
5151
"sass": "^1.26.9",

packages/compiler-sfc/src/rewriteDefault.ts

+4-1
Original file line numberDiff line numberDiff line change
@@ -43,7 +43,10 @@ export function rewriteDefault(
4343
ast.forEach(node => {
4444
if (node.type === 'ExportDefaultDeclaration') {
4545
if (node.declaration.type === 'ClassDeclaration') {
46-
s.overwrite(node.start!, node.declaration.id.start!, `class `)
46+
const start =
47+
node.declaration.decorators?.[node.declaration.decorators?.length - 1]
48+
?.end ?? node.start
49+
s.overwrite(start!, node.declaration.id.start!, `class `)
4750
s.append(`\nconst ${as} = ${node.declaration.id.name}`)
4851
} else {
4952
s.overwrite(node.start!, node.declaration.start!, `const ${as} = `)

packages/reactivity-transform/package.json

+3-3
Original file line numberDiff line numberDiff line change
@@ -28,14 +28,14 @@
2828
},
2929
"homepage": "https://github.com/vuejs/core/tree/dev/packages/reactivity-transform#readme",
3030
"dependencies": {
31-
"@babel/parser": "^7.16.4",
31+
"@babel/parser": "^7.20.5",
3232
"@vue/compiler-core": "3.2.45",
3333
"@vue/shared": "3.2.45",
3434
"estree-walker": "^2.0.2",
3535
"magic-string": "^0.25.7"
3636
},
3737
"devDependencies": {
38-
"@babel/core": "^7.16.0",
39-
"@babel/types": "^7.16.0"
38+
"@babel/core": "^7.20.5",
39+
"@babel/types": "^7.20.5"
4040
}
4141
}

packages/vue-compat/package.json

+1-1
Original file line numberDiff line numberDiff line change
@@ -38,7 +38,7 @@
3838
},
3939
"homepage": "https://github.com/vuejs/core/tree/main/packages/vue-compat#readme",
4040
"dependencies": {
41-
"@babel/parser": "^7.16.4",
41+
"@babel/parser": "^7.20.5",
4242
"estree-walker": "^2.0.2",
4343
"source-map": "^0.6.1"
4444
},

pnpm-lock.yaml

+38-25
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

0 commit comments

Comments
 (0)