feat(compiler-core): switch to @babel/parser for expression parsing
This enables default support for parsing bigInt, optional chaining
and nullish coalescing, and also adds the `expressionPlugins`
compiler option for enabling additional parsing plugins listed at
https://babeljs.io/docs/en/next/babel-parser#plugins.
This commit is contained in:
@@ -6,14 +6,11 @@
|
||||
<div id="source" class="editor"></div>
|
||||
<div id="output" class="editor"></div>
|
||||
|
||||
<script src="https://unpkg.com/acorn@7.1.0/dist/acorn.js"></script>
|
||||
<script src="https://unpkg.com/estree-walker@0.8.1/dist/estree-walker.umd.js"></script>
|
||||
<script src="https://unpkg.com/source-map@0.6.1/dist/source-map.js"></script>
|
||||
<script src="https://unpkg.com/monaco-editor@0.18.1/min/vs/loader.js"></script>
|
||||
<script src="./dist/template-explorer.global.js"></script>
|
||||
<script>
|
||||
window._deps = {
|
||||
acorn,
|
||||
'estree-walker': estreeWalker,
|
||||
'source-map': sourceMap
|
||||
}
|
||||
@@ -24,6 +21,7 @@ require.config({
|
||||
}
|
||||
})
|
||||
</script>
|
||||
<script src="./dist/template-explorer.global.js"></script>
|
||||
<script>
|
||||
require(['vs/editor/editor.main'], init /* injected by build */)
|
||||
</script>
|
||||
|
||||
@@ -6,14 +6,12 @@
|
||||
<div id="source" class="editor"></div>
|
||||
<div id="output" class="editor"></div>
|
||||
|
||||
<script src="../../node_modules/acorn/dist/acorn.js"></script>
|
||||
<script src="../../node_modules/estree-walker/dist/estree-walker.umd.js"></script>
|
||||
<script src="../../node_modules/source-map/dist/source-map.js"></script>
|
||||
<script src="../../node_modules/monaco-editor/min/vs/loader.js"></script>
|
||||
<script src="./dist/template-explorer.global.js"></script>
|
||||
<script>
|
||||
window._deps = {
|
||||
acorn,
|
||||
// @babel/parser is injected by the bundle
|
||||
'estree-walker': estreeWalker,
|
||||
'source-map': sourceMap
|
||||
}
|
||||
@@ -24,6 +22,7 @@ require.config({
|
||||
}
|
||||
})
|
||||
</script>
|
||||
<script src="./dist/template-explorer.global.js"></script>
|
||||
<script>
|
||||
require(['vs/editor/editor.main'], init /* injected by build */)
|
||||
</script>
|
||||
|
||||
@@ -4,6 +4,9 @@ import { compile as ssrCompile } from '@vue/compiler-ssr'
|
||||
import { compilerOptions, initOptions, ssrMode } from './options'
|
||||
import { watchEffect } from '@vue/runtime-dom'
|
||||
import { SourceMapConsumer } from 'source-map'
|
||||
import { parse } from '@babel/parser'
|
||||
|
||||
window._deps['@babel/parser'] = { parse }
|
||||
|
||||
declare global {
|
||||
interface Window {
|
||||
|
||||
Reference in New Issue
Block a user