diff --git a/packages/compiler-core/__tests__/__snapshots__/codegen.spec.ts.snap b/packages/compiler-core/__tests__/__snapshots__/codegen.spec.ts.snap index ceb8d41b2..5f40c4eff 100644 --- a/packages/compiler-core/__tests__/__snapshots__/codegen.spec.ts.snap +++ b/packages/compiler-core/__tests__/__snapshots__/codegen.spec.ts.snap @@ -27,9 +27,9 @@ export function render() { const _ctx = this const _cache = _ctx.$cache return _cache[1] || ( - setBlockTracking(-1), + _setBlockTracking(-1), _cache[1] = foo, - setBlockTracking(1), + _setBlockTracking(1), _cache[1] ) }" @@ -126,7 +126,7 @@ return function render() { `; exports[`compiler: codegen function mode preamble w/ prefixIdentifiers: true 1`] = ` -"const { createVNode, resolveDirective } = Vue +"const { createVNode: _createVNode, resolveDirective: _resolveDirective } = Vue return function render() { const _ctx = this @@ -165,8 +165,20 @@ return function render() { `; exports[`compiler: codegen module mode preamble 1`] = ` +"import { createVNode as _createVNode, resolveDirective as _resolveDirective } from \\"vue\\" + +export function render() { + const _ctx = this + return null +}" +`; + +exports[`compiler: codegen module mode preamble w/ optimizeBindings: true 1`] = ` "import { createVNode, resolveDirective } from \\"vue\\" +// Binding optimization for webpack code-split +const _createVNode = createVNode, _resolveDirective = resolveDirective + export function render() { const _ctx = this return null diff --git a/packages/compiler-core/__tests__/__snapshots__/compile.spec.ts.snap b/packages/compiler-core/__tests__/__snapshots__/compile.spec.ts.snap index d28911bd6..7b0b9c35a 100644 --- a/packages/compiler-core/__tests__/__snapshots__/compile.spec.ts.snap +++ b/packages/compiler-core/__tests__/__snapshots__/compile.spec.ts.snap @@ -26,21 +26,21 @@ return function render() { `; exports[`compiler: integration tests function mode w/ prefixIdentifiers: true 1`] = ` -"const { toDisplayString, createVNode, openBlock, createBlock, createCommentVNode, Fragment, renderList, createTextVNode } = Vue +"const { toDisplayString: _toDisplayString, createVNode: _createVNode, openBlock: _openBlock, createBlock: _createBlock, createCommentVNode: _createCommentVNode, Fragment: _Fragment, renderList: _renderList, createTextVNode: _createTextVNode } = Vue return function render() { const _ctx = this - return (openBlock(), createBlock(\\"div\\", { + return (_openBlock(), _createBlock(\\"div\\", { id: \\"foo\\", class: _ctx.bar.baz }, [ - createTextVNode(toDisplayString(_ctx.world.burn()) + \\" \\", 1 /* TEXT */), - (openBlock(), (_ctx.ok) - ? createBlock(\\"div\\", { key: 0 }, \\"yes\\") - : createBlock(Fragment, { key: 1 }, [\\"no\\"])), - (openBlock(false), createBlock(Fragment, null, renderList(_ctx.list, (value, index) => { - return (openBlock(), createBlock(\\"div\\", null, [ - createVNode(\\"span\\", null, toDisplayString(value + index), 1 /* TEXT */) + _createTextVNode(_toDisplayString(_ctx.world.burn()) + \\" \\", 1 /* TEXT */), + (_openBlock(), (_ctx.ok) + ? _createBlock(\\"div\\", { key: 0 }, \\"yes\\") + : _createBlock(_Fragment, { key: 1 }, [\\"no\\"])), + (_openBlock(false), _createBlock(_Fragment, null, _renderList(_ctx.list, (value, index) => { + return (_openBlock(), _createBlock(\\"div\\", null, [ + _createVNode(\\"span\\", null, _toDisplayString(value + index), 1 /* TEXT */) ])) }), 256 /* UNKEYED_FRAGMENT */)) ], 2 /* CLASS */)) @@ -48,21 +48,21 @@ return function render() { `; exports[`compiler: integration tests module mode 1`] = ` -"import { toDisplayString, createVNode, openBlock, createBlock, createCommentVNode, Fragment, renderList, createTextVNode } from \\"vue\\" +"import { toDisplayString as _toDisplayString, createVNode as _createVNode, openBlock as _openBlock, createBlock as _createBlock, createCommentVNode as _createCommentVNode, Fragment as _Fragment, renderList as _renderList, createTextVNode as _createTextVNode } from \\"vue\\" export function render() { const _ctx = this - return (openBlock(), createBlock(\\"div\\", { + return (_openBlock(), _createBlock(\\"div\\", { id: \\"foo\\", class: _ctx.bar.baz }, [ - createTextVNode(toDisplayString(_ctx.world.burn()) + \\" \\", 1 /* TEXT */), - (openBlock(), (_ctx.ok) - ? createBlock(\\"div\\", { key: 0 }, \\"yes\\") - : createBlock(Fragment, { key: 1 }, [\\"no\\"])), - (openBlock(false), createBlock(Fragment, null, renderList(_ctx.list, (value, index) => { - return (openBlock(), createBlock(\\"div\\", null, [ - createVNode(\\"span\\", null, toDisplayString(value + index), 1 /* TEXT */) + _createTextVNode(_toDisplayString(_ctx.world.burn()) + \\" \\", 1 /* TEXT */), + (_openBlock(), (_ctx.ok) + ? _createBlock(\\"div\\", { key: 0 }, \\"yes\\") + : _createBlock(_Fragment, { key: 1 }, [\\"no\\"])), + (_openBlock(false), _createBlock(_Fragment, null, _renderList(_ctx.list, (value, index) => { + return (_openBlock(), _createBlock(\\"div\\", null, [ + _createVNode(\\"span\\", null, _toDisplayString(value + index), 1 /* TEXT */) ])) }), 256 /* UNKEYED_FRAGMENT */)) ], 2 /* CLASS */)) diff --git a/packages/compiler-core/__tests__/__snapshots__/scopeId.spec.ts.snap b/packages/compiler-core/__tests__/__snapshots__/scopeId.spec.ts.snap index 75fec293d..d5e7e571e 100644 --- a/packages/compiler-core/__tests__/__snapshots__/scopeId.spec.ts.snap +++ b/packages/compiler-core/__tests__/__snapshots__/scopeId.spec.ts.snap @@ -1,17 +1,17 @@ // Jest Snapshot v1, https://goo.gl/fbAQLP exports[`scopeId compiler support should push scopeId for hoisted nodes 1`] = ` -"import { createVNode, createBlock, openBlock, withScopeId, pushScopeId, popScopeId } from \\"vue\\" -const withId = withScopeId(\\"test\\") +"import { createVNode as _createVNode, createBlock as _createBlock, openBlock as _openBlock, withScopeId as _withScopeId, pushScopeId as _pushScopeId, popScopeId as _popScopeId } from \\"vue\\" +const _withId = _withScopeId(\\"test\\") -pushScopeId(\\"test\\") -const _hoisted_1 = createVNode(\\"div\\", null, \\"hello\\") -const _hoisted_2 = createVNode(\\"div\\", null, \\"world\\") -popScopeId() +_pushScopeId(\\"test\\") +const _hoisted_1 = _createVNode(\\"div\\", null, \\"hello\\") +const _hoisted_2 = _createVNode(\\"div\\", null, \\"world\\") +_popScopeId() -export const render = withId(function render() { +export const render = _withId(function render() { const _ctx = this - return (openBlock(), createBlock(\\"div\\", null, [ + return (_openBlock(), _createBlock(\\"div\\", null, [ _hoisted_1, _hoisted_2 ])) @@ -19,16 +19,16 @@ export const render = withId(function render() { `; exports[`scopeId compiler support should wrap default slot 1`] = ` -"import { createVNode, resolveComponent, createBlock, openBlock, withScopeId } from \\"vue\\" -const withId = withScopeId(\\"test\\") +"import { createVNode as _createVNode, resolveComponent as _resolveComponent, createBlock as _createBlock, openBlock as _openBlock, withScopeId as _withScopeId } from \\"vue\\" +const _withId = _withScopeId(\\"test\\") -export const render = withId(function render() { +export const render = _withId(function render() { const _ctx = this - const _component_Child = resolveComponent(\\"Child\\") + const _component_Child = _resolveComponent(\\"Child\\") - return (openBlock(), createBlock(_component_Child, null, { - default: withId(() => [ - createVNode(\\"div\\") + return (_openBlock(), _createBlock(_component_Child, null, { + default: _withId(() => [ + _createVNode(\\"div\\") ]), _compiled: true })) @@ -36,27 +36,27 @@ export const render = withId(function render() { `; exports[`scopeId compiler support should wrap dynamic slots 1`] = ` -"import { createVNode, resolveComponent, renderList, createSlots, createBlock, openBlock, withScopeId } from \\"vue\\" -const withId = withScopeId(\\"test\\") +"import { createVNode as _createVNode, resolveComponent as _resolveComponent, renderList as _renderList, createSlots as _createSlots, createBlock as _createBlock, openBlock as _openBlock, withScopeId as _withScopeId } from \\"vue\\" +const _withId = _withScopeId(\\"test\\") -export const render = withId(function render() { +export const render = _withId(function render() { const _ctx = this - const _component_Child = resolveComponent(\\"Child\\") + const _component_Child = _resolveComponent(\\"Child\\") - return (openBlock(), createBlock(_component_Child, null, createSlots({ _compiled: true }, [ + return (_openBlock(), _createBlock(_component_Child, null, _createSlots({ _compiled: true }, [ (_ctx.ok) ? { name: \\"foo\\", - fn: withId(() => [ - createVNode(\\"div\\") + fn: _withId(() => [ + _createVNode(\\"div\\") ]) } : undefined, - renderList(_ctx.list, (i) => { + _renderList(_ctx.list, (i) => { return { name: i, - fn: withId(() => [ - createVNode(\\"div\\") + fn: _withId(() => [ + _createVNode(\\"div\\") ]) } }) @@ -65,19 +65,19 @@ export const render = withId(function render() { `; exports[`scopeId compiler support should wrap named slots 1`] = ` -"import { toDisplayString, createTextVNode, createVNode, resolveComponent, createBlock, openBlock, withScopeId } from \\"vue\\" -const withId = withScopeId(\\"test\\") +"import { toDisplayString as _toDisplayString, createTextVNode as _createTextVNode, createVNode as _createVNode, resolveComponent as _resolveComponent, createBlock as _createBlock, openBlock as _openBlock, withScopeId as _withScopeId } from \\"vue\\" +const _withId = _withScopeId(\\"test\\") -export const render = withId(function render() { +export const render = _withId(function render() { const _ctx = this - const _component_Child = resolveComponent(\\"Child\\") + const _component_Child = _resolveComponent(\\"Child\\") - return (openBlock(), createBlock(_component_Child, null, { - foo: withId(({ msg }) => [ - createTextVNode(toDisplayString(msg), 1 /* TEXT */) + return (_openBlock(), _createBlock(_component_Child, null, { + foo: _withId(({ msg }) => [ + _createTextVNode(_toDisplayString(msg), 1 /* TEXT */) ]), - bar: withId(() => [ - createVNode(\\"div\\") + bar: _withId(() => [ + _createVNode(\\"div\\") ]), _compiled: true })) @@ -85,11 +85,11 @@ export const render = withId(function render() { `; exports[`scopeId compiler support should wrap render function 1`] = ` -"import { createVNode, createBlock, openBlock, withScopeId } from \\"vue\\" -const withId = withScopeId(\\"test\\") +"import { createVNode as _createVNode, createBlock as _createBlock, openBlock as _openBlock, withScopeId as _withScopeId } from \\"vue\\" +const _withId = _withScopeId(\\"test\\") -export const render = withId(function render() { +export const render = _withId(function render() { const _ctx = this - return (openBlock(), createBlock(\\"div\\")) + return (_openBlock(), _createBlock(\\"div\\")) })" `; diff --git a/packages/compiler-core/__tests__/codegen.spec.ts b/packages/compiler-core/__tests__/codegen.spec.ts index b40347936..e322658bb 100644 --- a/packages/compiler-core/__tests__/codegen.spec.ts +++ b/packages/compiler-core/__tests__/codegen.spec.ts @@ -54,11 +54,33 @@ describe('compiler: codegen', () => { helpers: [CREATE_VNODE, RESOLVE_DIRECTIVE] }) const { code } = generate(root, { mode: 'module' }) + expect(code).toMatch( + `import { ${helperNameMap[CREATE_VNODE]} as _${ + helperNameMap[CREATE_VNODE] + }, ${helperNameMap[RESOLVE_DIRECTIVE]} as _${ + helperNameMap[RESOLVE_DIRECTIVE] + } } from "vue"` + ) + expect(code).toMatchSnapshot() + }) + + test('module mode preamble w/ optimizeBindings: true', () => { + const root = createRoot({ + helpers: [CREATE_VNODE, RESOLVE_DIRECTIVE] + }) + const { code } = generate(root, { mode: 'module', optimizeBindings: true }) expect(code).toMatch( `import { ${helperNameMap[CREATE_VNODE]}, ${ helperNameMap[RESOLVE_DIRECTIVE] } } from "vue"` ) + expect(code).toMatch( + `const _${helperNameMap[CREATE_VNODE]} = ${ + helperNameMap[CREATE_VNODE] + }, _${helperNameMap[RESOLVE_DIRECTIVE]} = ${ + helperNameMap[RESOLVE_DIRECTIVE] + }` + ) expect(code).toMatchSnapshot() }) @@ -88,7 +110,9 @@ describe('compiler: codegen', () => { }) expect(code).not.toMatch(`const _Vue = Vue`) expect(code).toMatch( - `const { ${helperNameMap[CREATE_VNODE]}, ${ + `const { ${helperNameMap[CREATE_VNODE]}: _${ + helperNameMap[CREATE_VNODE] + }, ${helperNameMap[RESOLVE_DIRECTIVE]}: _${ helperNameMap[RESOLVE_DIRECTIVE] } } = Vue` ) @@ -415,9 +439,9 @@ describe('compiler: codegen', () => { expect(code).toMatch( ` _cache[1] || ( - setBlockTracking(-1), + _setBlockTracking(-1), _cache[1] = foo, - setBlockTracking(1), + _setBlockTracking(1), _cache[1] ) `.trim() diff --git a/packages/compiler-core/__tests__/scopeId.spec.ts b/packages/compiler-core/__tests__/scopeId.spec.ts index de645d171..4991ab349 100644 --- a/packages/compiler-core/__tests__/scopeId.spec.ts +++ b/packages/compiler-core/__tests__/scopeId.spec.ts @@ -18,8 +18,8 @@ describe('scopeId compiler support', () => { scopeId: 'test' }) expect(ast.helpers).toContain(WITH_SCOPE_ID) - expect(code).toMatch(`const withId = withScopeId("test")`) - expect(code).toMatch(`export const render = withId(function render() {`) + expect(code).toMatch(`const _withId = _withScopeId("test")`) + expect(code).toMatch(`export const render = _withId(function render() {`) expect(code).toMatchSnapshot() }) @@ -28,7 +28,7 @@ describe('scopeId compiler support', () => { mode: 'module', scopeId: 'test' }) - expect(code).toMatch(`default: withId(() => [`) + expect(code).toMatch(`default: _withId(() => [`) expect(code).toMatchSnapshot() }) @@ -44,8 +44,8 @@ describe('scopeId compiler support', () => { scopeId: 'test' } ) - expect(code).toMatch(`foo: withId(({ msg }) => [`) - expect(code).toMatch(`bar: withId(() => [`) + expect(code).toMatch(`foo: _withId(({ msg }) => [`) + expect(code).toMatch(`bar: _withId(() => [`) expect(code).toMatchSnapshot() }) @@ -61,8 +61,8 @@ describe('scopeId compiler support', () => { scopeId: 'test' } ) - expect(code).toMatch(/name: "foo",\s+fn: withId\(/) - expect(code).toMatch(/name: i,\s+fn: withId\(/) + expect(code).toMatch(/name: "foo",\s+fn: _withId\(/) + expect(code).toMatch(/name: i,\s+fn: _withId\(/) expect(code).toMatchSnapshot() }) @@ -80,10 +80,10 @@ describe('scopeId compiler support', () => { expect(ast.hoists.length).toBe(2) expect(code).toMatch( [ - `pushScopeId("test")`, - `const _hoisted_1 = createVNode("div", null, "hello")`, - `const _hoisted_2 = createVNode("div", null, "world")`, - `popScopeId()` + `_pushScopeId("test")`, + `const _hoisted_1 = _createVNode("div", null, "hello")`, + `const _hoisted_2 = _createVNode("div", null, "world")`, + `_popScopeId()` ].join('\n') ) expect(code).toMatchSnapshot() diff --git a/packages/compiler-core/__tests__/transforms/__snapshots__/hoistStatic.spec.ts.snap b/packages/compiler-core/__tests__/transforms/__snapshots__/hoistStatic.spec.ts.snap index 8febc4444..bda31a1c7 100644 --- a/packages/compiler-core/__tests__/transforms/__snapshots__/hoistStatic.spec.ts.snap +++ b/packages/compiler-core/__tests__/transforms/__snapshots__/hoistStatic.spec.ts.snap @@ -208,14 +208,14 @@ return function render() { `; exports[`compiler: hoistStatic transform prefixIdentifiers should NOT hoist elements with cached handlers 1`] = ` -"import { createVNode, createBlock, openBlock } from \\"vue\\" +"import { createVNode as _createVNode, createBlock as _createBlock, openBlock as _openBlock } from \\"vue\\" export function render() { const _ctx = this const _cache = _ctx.$cache - return (openBlock(), createBlock(\\"div\\", null, [ - createVNode(\\"div\\", null, [ - createVNode(\\"div\\", { + return (_openBlock(), _createBlock(\\"div\\", null, [ + _createVNode(\\"div\\", null, [ + _createVNode(\\"div\\", { onClick: _cache[1] || (_cache[1] = $event => (_ctx.foo($event))) }) ]) diff --git a/packages/compiler-core/__tests__/transforms/__snapshots__/transformText.spec.ts.snap b/packages/compiler-core/__tests__/transforms/__snapshots__/transformText.spec.ts.snap index 1576decfb..9c56ed92d 100644 --- a/packages/compiler-core/__tests__/transforms/__snapshots__/transformText.spec.ts.snap +++ b/packages/compiler-core/__tests__/transforms/__snapshots__/transformText.spec.ts.snap @@ -91,10 +91,10 @@ return function render() { `; exports[`compiler: transform text with prefixIdentifiers: true 1`] = ` -"const { toDisplayString } = Vue +"const { toDisplayString: _toDisplayString } = Vue return function render() { const _ctx = this - return toDisplayString(_ctx.foo) + \\" bar \\" + toDisplayString(_ctx.baz + _ctx.qux) + return _toDisplayString(_ctx.foo) + \\" bar \\" + _toDisplayString(_ctx.baz + _ctx.qux) }" `; diff --git a/packages/compiler-core/__tests__/transforms/__snapshots__/vModel.spec.ts.snap b/packages/compiler-core/__tests__/transforms/__snapshots__/vModel.spec.ts.snap index 18f9d54fe..3e90ad927 100644 --- a/packages/compiler-core/__tests__/transforms/__snapshots__/vModel.spec.ts.snap +++ b/packages/compiler-core/__tests__/transforms/__snapshots__/vModel.spec.ts.snap @@ -1,11 +1,11 @@ // Jest Snapshot v1, https://goo.gl/fbAQLP exports[`compiler: transform v-model compound expression (with prefixIdentifiers) 1`] = ` -"import { createVNode, createBlock, openBlock } from \\"vue\\" +"import { createVNode as _createVNode, createBlock as _createBlock, openBlock as _openBlock } from \\"vue\\" export function render() { const _ctx = this - return (openBlock(), createBlock(\\"input\\", { + return (_openBlock(), _createBlock(\\"input\\", { modelValue: _ctx.model[_ctx.index], \\"onUpdate:modelValue\\": $event => (_ctx.model[_ctx.index] = $event) }, null, 8 /* PROPS */, [\\"modelValue\\", \\"onUpdate:modelValue\\"])) @@ -28,11 +28,11 @@ return function render() { `; exports[`compiler: transform v-model simple exprssion (with prefixIdentifiers) 1`] = ` -"import { createVNode, createBlock, openBlock } from \\"vue\\" +"import { createVNode as _createVNode, createBlock as _createBlock, openBlock as _openBlock } from \\"vue\\" export function render() { const _ctx = this - return (openBlock(), createBlock(\\"input\\", { + return (_openBlock(), _createBlock(\\"input\\", { modelValue: _ctx.model, \\"onUpdate:modelValue\\": $event => (_ctx.model = $event) }, null, 8 /* PROPS */, [\\"modelValue\\", \\"onUpdate:modelValue\\"])) @@ -70,11 +70,11 @@ return function render() { `; exports[`compiler: transform v-model with dynamic argument (with prefixIdentifiers) 1`] = ` -"import { createVNode, createBlock, openBlock } from \\"vue\\" +"import { createVNode as _createVNode, createBlock as _createBlock, openBlock as _openBlock } from \\"vue\\" export function render() { const _ctx = this - return (openBlock(), createBlock(\\"input\\", { + return (_openBlock(), _createBlock(\\"input\\", { [_ctx.value]: _ctx.model, [\\"onUpdate:\\" + _ctx.value]: $event => (_ctx.model = $event) }, null, 16 /* FULL_PROPS */)) diff --git a/packages/compiler-core/__tests__/transforms/__snapshots__/vSlot.spec.ts.snap b/packages/compiler-core/__tests__/transforms/__snapshots__/vSlot.spec.ts.snap index 7afd31654..4e01f5ece 100644 --- a/packages/compiler-core/__tests__/transforms/__snapshots__/vSlot.spec.ts.snap +++ b/packages/compiler-core/__tests__/transforms/__snapshots__/vSlot.spec.ts.snap @@ -1,30 +1,30 @@ // Jest Snapshot v1, https://goo.gl/fbAQLP exports[`compiler: transform component slots dynamically named slots 1`] = ` -"const { toDisplayString, resolveComponent, createVNode, createBlock, openBlock } = Vue +"const { toDisplayString: _toDisplayString, resolveComponent: _resolveComponent, createVNode: _createVNode, createBlock: _createBlock, openBlock: _openBlock } = Vue return function render() { const _ctx = this - const _component_Comp = resolveComponent(\\"Comp\\") + const _component_Comp = _resolveComponent(\\"Comp\\") - return (openBlock(), createBlock(_component_Comp, null, { - [_ctx.one]: ({ foo }) => [toDisplayString(foo), toDisplayString(_ctx.bar)], - [_ctx.two]: ({ bar }) => [toDisplayString(_ctx.foo), toDisplayString(bar)], + return (_openBlock(), _createBlock(_component_Comp, null, { + [_ctx.one]: ({ foo }) => [_toDisplayString(foo), _toDisplayString(_ctx.bar)], + [_ctx.two]: ({ bar }) => [_toDisplayString(_ctx.foo), _toDisplayString(bar)], _compiled: true }, 512 /* DYNAMIC_SLOTS */)) }" `; exports[`compiler: transform component slots implicit default slot 1`] = ` -"const { createVNode, resolveComponent, createBlock, openBlock } = Vue +"const { createVNode: _createVNode, resolveComponent: _resolveComponent, createBlock: _createBlock, openBlock: _openBlock } = Vue return function render() { const _ctx = this - const _component_Comp = resolveComponent(\\"Comp\\") + const _component_Comp = _resolveComponent(\\"Comp\\") - return (openBlock(), createBlock(_component_Comp, null, { + return (_openBlock(), _createBlock(_component_Comp, null, { default: () => [ - createVNode(\\"div\\") + _createVNode(\\"div\\") ], _compiled: true })) @@ -32,17 +32,17 @@ return function render() { `; exports[`compiler: transform component slots named slot with v-for w/ prefixIdentifiers: true 1`] = ` -"const { toDisplayString, resolveComponent, renderList, createSlots, createVNode, createBlock, openBlock } = Vue +"const { toDisplayString: _toDisplayString, resolveComponent: _resolveComponent, renderList: _renderList, createSlots: _createSlots, createVNode: _createVNode, createBlock: _createBlock, openBlock: _openBlock } = Vue return function render() { const _ctx = this - const _component_Comp = resolveComponent(\\"Comp\\") + const _component_Comp = _resolveComponent(\\"Comp\\") - return (openBlock(), createBlock(_component_Comp, null, createSlots({ _compiled: true }, [ - renderList(_ctx.list, (name) => { + return (_openBlock(), _createBlock(_component_Comp, null, _createSlots({ _compiled: true }, [ + _renderList(_ctx.list, (name) => { return { name: name, - fn: () => [toDisplayString(name)] + fn: () => [_toDisplayString(name)] } }) ]), 512 /* DYNAMIC_SLOTS */)) @@ -50,17 +50,17 @@ return function render() { `; exports[`compiler: transform component slots named slot with v-if + prefixIdentifiers: true 1`] = ` -"const { toDisplayString, resolveComponent, createSlots, createVNode, createBlock, openBlock } = Vue +"const { toDisplayString: _toDisplayString, resolveComponent: _resolveComponent, createSlots: _createSlots, createVNode: _createVNode, createBlock: _createBlock, openBlock: _openBlock } = Vue return function render() { const _ctx = this - const _component_Comp = resolveComponent(\\"Comp\\") + const _component_Comp = _resolveComponent(\\"Comp\\") - return (openBlock(), createBlock(_component_Comp, null, createSlots({ _compiled: true }, [ + return (_openBlock(), _createBlock(_component_Comp, null, _createSlots({ _compiled: true }, [ (_ctx.ok) ? { name: \\"one\\", - fn: (props) => [toDisplayString(props)] + fn: (props) => [_toDisplayString(props)] } : undefined ]), 512 /* DYNAMIC_SLOTS */)) @@ -118,15 +118,15 @@ return function render() { `; exports[`compiler: transform component slots named slots 1`] = ` -"const { toDisplayString, resolveComponent, createVNode, createBlock, openBlock } = Vue +"const { toDisplayString: _toDisplayString, resolveComponent: _resolveComponent, createVNode: _createVNode, createBlock: _createBlock, openBlock: _openBlock } = Vue return function render() { const _ctx = this - const _component_Comp = resolveComponent(\\"Comp\\") + const _component_Comp = _resolveComponent(\\"Comp\\") - return (openBlock(), createBlock(_component_Comp, null, { - one: ({ foo }) => [toDisplayString(foo), toDisplayString(_ctx.bar)], - two: ({ bar }) => [toDisplayString(_ctx.foo), toDisplayString(bar)], + return (_openBlock(), _createBlock(_component_Comp, null, { + one: ({ foo }) => [_toDisplayString(foo), _toDisplayString(_ctx.bar)], + two: ({ bar }) => [_toDisplayString(_ctx.foo), _toDisplayString(bar)], _compiled: true })) }" @@ -154,23 +154,23 @@ return function render() { `; exports[`compiler: transform component slots nested slots scoping 1`] = ` -"const { toDisplayString, resolveComponent, createVNode, createBlock, openBlock } = Vue +"const { toDisplayString: _toDisplayString, resolveComponent: _resolveComponent, createVNode: _createVNode, createBlock: _createBlock, openBlock: _openBlock } = Vue return function render() { const _ctx = this - const _component_Inner = resolveComponent(\\"Inner\\") - const _component_Comp = resolveComponent(\\"Comp\\") + const _component_Inner = _resolveComponent(\\"Inner\\") + const _component_Comp = _resolveComponent(\\"Comp\\") - return (openBlock(), createBlock(_component_Comp, null, { + return (_openBlock(), _createBlock(_component_Comp, null, { default: ({ foo }) => [ - createVNode(_component_Inner, null, { - default: ({ bar }) => [toDisplayString(foo), toDisplayString(bar), toDisplayString(_ctx.baz)], + _createVNode(_component_Inner, null, { + default: ({ bar }) => [_toDisplayString(foo), _toDisplayString(bar), _toDisplayString(_ctx.baz)], _compiled: true }, 512 /* DYNAMIC_SLOTS */), \\" \\", - toDisplayString(foo), - toDisplayString(_ctx.bar), - toDisplayString(_ctx.baz) + _toDisplayString(foo), + _toDisplayString(_ctx.bar), + _toDisplayString(_ctx.baz) ], _compiled: true })) @@ -178,14 +178,14 @@ return function render() { `; exports[`compiler: transform component slots on-component default slot 1`] = ` -"const { toDisplayString, resolveComponent, createVNode, createBlock, openBlock } = Vue +"const { toDisplayString: _toDisplayString, resolveComponent: _resolveComponent, createVNode: _createVNode, createBlock: _createBlock, openBlock: _openBlock } = Vue return function render() { const _ctx = this - const _component_Comp = resolveComponent(\\"Comp\\") + const _component_Comp = _resolveComponent(\\"Comp\\") - return (openBlock(), createBlock(_component_Comp, null, { - default: ({ foo }) => [toDisplayString(foo), toDisplayString(_ctx.bar)], + return (_openBlock(), _createBlock(_component_Comp, null, { + default: ({ foo }) => [_toDisplayString(foo), _toDisplayString(_ctx.bar)], _compiled: true })) }" diff --git a/packages/compiler-core/src/codegen.ts b/packages/compiler-core/src/codegen.ts index 01e8bfbb8..61b6c0693 100644 --- a/packages/compiler-core/src/codegen.ts +++ b/packages/compiler-core/src/codegen.ts @@ -196,7 +196,7 @@ export function generate( // enter render function if (genScopeId && !ssr) { - push(`const render = withId(`) + push(`const render = _withId(`) } if (!ssr) { push(`function render() {`) @@ -395,7 +395,7 @@ function genModulePreamble( } if (genScopeId) { - push(`const withId = ${helper(WITH_SCOPE_ID)}("${scopeId}")`) + push(`const _withId = ${helper(WITH_SCOPE_ID)}("${scopeId}")`) newline() } @@ -719,7 +719,7 @@ function genFunctionExpression( !__BROWSER__ && isSlot && scopeId != null && mode !== 'function' if (genScopeId) { - push(`withId(`) + push(`_withId(`) } push(`(`, node) if (isArray(params)) { diff --git a/packages/compiler-sfc/__tests__/__snapshots__/compileTemplate.spec.ts.snap b/packages/compiler-sfc/__tests__/__snapshots__/compileTemplate.spec.ts.snap index aba3255df..553fb1f2f 100644 --- a/packages/compiler-sfc/__tests__/__snapshots__/compileTemplate.spec.ts.snap +++ b/packages/compiler-sfc/__tests__/__snapshots__/compileTemplate.spec.ts.snap @@ -2,7 +2,7 @@ exports[`source map 1`] = ` Object { - "mappings": ";;;;UAAA,aACE,YAA8B;IAAzB,YAAmB,2BAAbA,WAAM", + "mappings": ";;;;UAAA,cACE,aAA8B;IAAzB,aAAmB,4BAAbA,WAAM", "names": Array [ "render", ], diff --git a/packages/compiler-sfc/__tests__/__snapshots__/templateTransformAssetUrl.spec.ts.snap b/packages/compiler-sfc/__tests__/__snapshots__/templateTransformAssetUrl.spec.ts.snap index 5fc06681f..57d21a2c0 100644 --- a/packages/compiler-sfc/__tests__/__snapshots__/templateTransformAssetUrl.spec.ts.snap +++ b/packages/compiler-sfc/__tests__/__snapshots__/templateTransformAssetUrl.spec.ts.snap @@ -1,7 +1,7 @@ // Jest Snapshot v1, https://goo.gl/fbAQLP exports[`compiler sfc: transform asset url support uri fragment 1`] = ` -"import { createVNode, createBlock, openBlock } from \\"vue\\" +"import { createVNode as _createVNode, createBlock as _createBlock, openBlock as _openBlock } from \\"vue\\" import _imports_0 from '@svg/file.svg' @@ -9,33 +9,33 @@ const _hoisted_1 = _imports_0 + '#fragment' export function render() { const _ctx = this - return (openBlock(), createBlock(\\"use\\", { href: _hoisted_1 })) + return (_openBlock(), _createBlock(\\"use\\", { href: _hoisted_1 })) }" `; exports[`compiler sfc: transform asset url support uri is empty 1`] = ` -"import { createVNode, createBlock, openBlock } from \\"vue\\" +"import { createVNode as _createVNode, createBlock as _createBlock, openBlock as _openBlock } from \\"vue\\" export function render() { const _ctx = this - return (openBlock(), createBlock(\\"use\\", { href: '' })) + return (_openBlock(), _createBlock(\\"use\\", { href: '' })) }" `; exports[`compiler sfc: transform asset url transform assetUrls 1`] = ` -"import { createVNode, createBlock, Fragment, openBlock } from \\"vue\\" +"import { createVNode as _createVNode, createBlock as _createBlock, Fragment as _Fragment, openBlock as _openBlock } from \\"vue\\" import _imports_0 from './logo.png' import _imports_1 from 'fixtures/logo.png' export function render() { const _ctx = this - return (openBlock(), createBlock(Fragment, null, [ - createVNode(\\"img\\", { src: _imports_0 }), - createVNode(\\"img\\", { src: _imports_1 }), - createVNode(\\"img\\", { src: _imports_1 }), - createVNode(\\"img\\", { src: \\"http://example.com/fixtures/logo.png\\" }), - createVNode(\\"img\\", { src: \\"/fixtures/logo.png\\" }) + return (_openBlock(), _createBlock(_Fragment, null, [ + _createVNode(\\"img\\", { src: _imports_0 }), + _createVNode(\\"img\\", { src: _imports_1 }), + _createVNode(\\"img\\", { src: _imports_1 }), + _createVNode(\\"img\\", { src: \\"http://example.com/fixtures/logo.png\\" }), + _createVNode(\\"img\\", { src: \\"/fixtures/logo.png\\" }) ], 64 /* STABLE_FRAGMENT */)) }" `; diff --git a/packages/compiler-sfc/__tests__/__snapshots__/templateTransformSrcset.spec.ts.snap b/packages/compiler-sfc/__tests__/__snapshots__/templateTransformSrcset.spec.ts.snap index 64801570f..5ccf23e4e 100644 --- a/packages/compiler-sfc/__tests__/__snapshots__/templateTransformSrcset.spec.ts.snap +++ b/packages/compiler-sfc/__tests__/__snapshots__/templateTransformSrcset.spec.ts.snap @@ -1,7 +1,7 @@ // Jest Snapshot v1, https://goo.gl/fbAQLP exports[`compiler sfc: transform srcset transform srcset 1`] = ` -"import { createVNode, createBlock, Fragment, openBlock } from \\"vue\\" +"import { createVNode as _createVNode, createBlock as _createBlock, Fragment as _Fragment, openBlock as _openBlock } from \\"vue\\" import _imports_0 from './logo.png' @@ -16,44 +16,44 @@ const _hoisted_8 = \\"/logo.png\\" + ', ' + _imports_0 + '2x' export function render() { const _ctx = this - return (openBlock(), createBlock(Fragment, null, [ - createVNode(\\"img\\", { + return (_openBlock(), _createBlock(_Fragment, null, [ + _createVNode(\\"img\\", { src: \\"./logo.png\\", srcset: _hoisted_1 }), - createVNode(\\"img\\", { + _createVNode(\\"img\\", { src: \\"./logo.png\\", srcset: _hoisted_2 }), - createVNode(\\"img\\", { + _createVNode(\\"img\\", { src: \\"./logo.png\\", srcset: _hoisted_3 }), - createVNode(\\"img\\", { + _createVNode(\\"img\\", { src: \\"./logo.png\\", srcset: _hoisted_4 }), - createVNode(\\"img\\", { + _createVNode(\\"img\\", { src: \\"./logo.png\\", srcset: _hoisted_5 }), - createVNode(\\"img\\", { + _createVNode(\\"img\\", { src: \\"./logo.png\\", srcset: _hoisted_6 }), - createVNode(\\"img\\", { + _createVNode(\\"img\\", { src: \\"./logo.png\\", srcset: _hoisted_7 }), - createVNode(\\"img\\", { + _createVNode(\\"img\\", { src: \\"/logo.png\\", srcset: \\"/logo.png, /logo.png 2x\\" }), - createVNode(\\"img\\", { + _createVNode(\\"img\\", { src: \\"https://example.com/logo.png\\", srcset: \\"https://example.com/logo.png, https://example.com/logo.png 2x\\" }), - createVNode(\\"img\\", { + _createVNode(\\"img\\", { src: \\"/logo.png\\", srcset: _hoisted_8 }) diff --git a/packages/compiler-ssr/__tests__/ssrComponent.spec.ts b/packages/compiler-ssr/__tests__/ssrComponent.spec.ts index ecc2407c8..26320fca6 100644 --- a/packages/compiler-ssr/__tests__/ssrComponent.spec.ts +++ b/packages/compiler-ssr/__tests__/ssrComponent.spec.ts @@ -3,11 +3,11 @@ import { compile } from '../src' describe('ssr: components', () => { test('basic', () => { expect(compile(``).code).toMatchInlineSnapshot(` - "const { resolveComponent } = require(\\"vue\\") - const { _ssrRenderComponent } = require(\\"@vue/server-renderer\\") + "const { resolveComponent: _resolveComponent } = require(\\"vue\\") + const { ssrRenderComponent: _ssrRenderComponent } = require(\\"@vue/server-renderer\\") return function ssrRender(_ctx, _push, _parent) { - const _component_foo = resolveComponent(\\"foo\\") + const _component_foo = _resolveComponent(\\"foo\\") _push(_ssrRenderComponent(_component_foo, { id: \\"a\\", @@ -20,11 +20,11 @@ describe('ssr: components', () => { test('dynamic component', () => { expect(compile(``).code) .toMatchInlineSnapshot(` - "const { resolveComponent } = require(\\"vue\\") - const { _ssrRenderComponent } = require(\\"@vue/server-renderer\\") + "const { resolveComponent: _resolveComponent } = require(\\"vue\\") + const { ssrRenderComponent: _ssrRenderComponent } = require(\\"@vue/server-renderer\\") return function ssrRender(_ctx, _push, _parent) { - const _component_foo = resolveComponent(\\"foo\\") + const _component_foo = _resolveComponent(\\"foo\\") _push(_ssrRenderComponent(_component_foo, { prop: \\"b\\" }, null, _parent)) }" @@ -32,11 +32,11 @@ describe('ssr: components', () => { expect(compile(``).code) .toMatchInlineSnapshot(` - "const { resolveComponent } = require(\\"vue\\") - const { _ssrRenderComponent } = require(\\"@vue/server-renderer\\") + "const { resolveComponent: _resolveComponent } = require(\\"vue\\") + const { ssrRenderComponent: _ssrRenderComponent } = require(\\"@vue/server-renderer\\") return function ssrRender(_ctx, _push, _parent) { - const _component_compoonent = resolveComponent(\\"compoonent\\") + const _component_compoonent = _resolveComponent(\\"compoonent\\") _push(_ssrRenderComponent(_component_compoonent, { is: _ctx.foo, @@ -49,11 +49,11 @@ describe('ssr: components', () => { describe('slots', () => { test('implicit default slot', () => { expect(compile(`hello
`).code).toMatchInlineSnapshot(` - "const { resolveComponent, createVNode, createTextVNode } = require(\\"vue\\") - const { _ssrRenderComponent } = require(\\"@vue/server-renderer\\") + "const { resolveComponent: _resolveComponent, createVNode: _createVNode, createTextVNode: _createTextVNode } = require(\\"vue\\") + const { ssrRenderComponent: _ssrRenderComponent } = require(\\"@vue/server-renderer\\") return function ssrRender(_ctx, _push, _parent) { - const _component_foo = resolveComponent(\\"foo\\") + const _component_foo = _resolveComponent(\\"foo\\") _push(_ssrRenderComponent(_component_foo, null, { default: (_, _push, _parent, _scopeId) => { @@ -61,8 +61,8 @@ describe('ssr: components', () => { _push(\`hello
\`) } else { return [ - createTextVNode(\\"hello\\"), - createVNode(\\"div\\") + _createTextVNode(\\"hello\\"), + _createVNode(\\"div\\") ] } }, @@ -75,11 +75,11 @@ describe('ssr: components', () => { test('explicit default slot', () => { expect(compile(`{{ msg + outer }}`).code) .toMatchInlineSnapshot(` - "const { resolveComponent, createTextVNode } = require(\\"vue\\") - const { _ssrRenderComponent, _ssrInterpolate } = require(\\"@vue/server-renderer\\") + "const { resolveComponent: _resolveComponent, createTextVNode: _createTextVNode } = require(\\"vue\\") + const { ssrRenderComponent: _ssrRenderComponent, ssrInterpolate: _ssrInterpolate } = require(\\"@vue/server-renderer\\") return function ssrRender(_ctx, _push, _parent) { - const _component_foo = resolveComponent(\\"foo\\") + const _component_foo = _resolveComponent(\\"foo\\") _push(_ssrRenderComponent(_component_foo, null, { default: ({ msg }, _push, _parent, _scopeId) => { @@ -87,7 +87,7 @@ describe('ssr: components', () => { _push(\`\${_ssrInterpolate(msg + _ctx.outer)}\`) } else { return [ - createTextVNode(toDisplayString(msg + _ctx.outer)) + _createTextVNode(_toDisplayString(msg + _ctx.outer)) ] } }, @@ -104,11 +104,11 @@ describe('ssr: components', () => {
`).code ).toMatchInlineSnapshot(` - "const { resolveComponent, createTextVNode } = require(\\"vue\\") - const { _ssrRenderComponent } = require(\\"@vue/server-renderer\\") + "const { resolveComponent: _resolveComponent, createTextVNode: _createTextVNode } = require(\\"vue\\") + const { ssrRenderComponent: _ssrRenderComponent } = require(\\"@vue/server-renderer\\") return function ssrRender(_ctx, _push, _parent) { - const _component_foo = resolveComponent(\\"foo\\") + const _component_foo = _resolveComponent(\\"foo\\") _push(_ssrRenderComponent(_component_foo, null, { default: (_, _push, _parent, _scopeId) => { @@ -116,7 +116,7 @@ describe('ssr: components', () => { _push(\`foo\`) } else { return [ - createTextVNode(\\"foo\\") + _createTextVNode(\\"foo\\") ] } }, @@ -125,7 +125,7 @@ describe('ssr: components', () => { _push(\`bar\`) } else { return [ - createTextVNode(\\"bar\\") + _createTextVNode(\\"bar\\") ] } }, @@ -141,13 +141,13 @@ describe('ssr: components', () => {
`).code ).toMatchInlineSnapshot(` - "const { resolveComponent, createTextVNode, createSlots } = require(\\"vue\\") - const { _ssrRenderComponent } = require(\\"@vue/server-renderer\\") + "const { resolveComponent: _resolveComponent, createTextVNode: _createTextVNode, createSlots: _createSlots } = require(\\"vue\\") + const { ssrRenderComponent: _ssrRenderComponent } = require(\\"@vue/server-renderer\\") return function ssrRender(_ctx, _push, _parent) { - const _component_foo = resolveComponent(\\"foo\\") + const _component_foo = _resolveComponent(\\"foo\\") - _push(_ssrRenderComponent(_component_foo, null, createSlots({ _compiled: true }, [ + _push(_ssrRenderComponent(_component_foo, null, _createSlots({ _compiled: true }, [ (_ctx.ok) ? { name: \\"named\\", @@ -156,7 +156,7 @@ describe('ssr: components', () => { _push(\`foo\`) } else { return [ - createTextVNode(\\"foo\\") + _createTextVNode(\\"foo\\") ] } } @@ -173,14 +173,14 @@ describe('ssr: components', () => { `).code ).toMatchInlineSnapshot(` - "const { resolveComponent, createTextVNode, renderList, createSlots } = require(\\"vue\\") - const { _ssrRenderComponent, _ssrInterpolate } = require(\\"@vue/server-renderer\\") + "const { resolveComponent: _resolveComponent, createTextVNode: _createTextVNode, renderList: _renderList, createSlots: _createSlots } = require(\\"vue\\") + const { ssrRenderComponent: _ssrRenderComponent, ssrInterpolate: _ssrInterpolate } = require(\\"@vue/server-renderer\\") return function ssrRender(_ctx, _push, _parent) { - const _component_foo = resolveComponent(\\"foo\\") + const _component_foo = _resolveComponent(\\"foo\\") - _push(_ssrRenderComponent(_component_foo, null, createSlots({ _compiled: true }, [ - renderList(_ctx.names, (key) => { + _push(_ssrRenderComponent(_component_foo, null, _createSlots({ _compiled: true }, [ + _renderList(_ctx.names, (key) => { return { name: key, fn: ({ msg }, _push, _parent, _scopeId) => { @@ -188,7 +188,7 @@ describe('ssr: components', () => { _push(\`\${_ssrInterpolate(msg + key + _ctx.bar)}\`) } else { return [ - createTextVNode(toDisplayString(msg + _ctx.key + _ctx.bar)) + _createTextVNode(_toDisplayString(msg + _ctx.key + _ctx.bar)) ] } } @@ -214,11 +214,11 @@ describe('ssr: components', () => { `).code ).toMatchInlineSnapshot(` - "const { resolveComponent, renderList, openBlock, createBlock, Fragment, createVNode, createCommentVNode } = require(\\"vue\\") - const { _ssrRenderComponent, _ssrRenderList } = require(\\"@vue/server-renderer\\") + "const { resolveComponent: _resolveComponent, renderList: _renderList, openBlock: _openBlock, createBlock: _createBlock, Fragment: _Fragment, createVNode: _createVNode, createCommentVNode: _createCommentVNode } = require(\\"vue\\") + const { ssrRenderComponent: _ssrRenderComponent, ssrRenderList: _ssrRenderList } = require(\\"@vue/server-renderer\\") return function ssrRender(_ctx, _push, _parent) { - const _component_foo = resolveComponent(\\"foo\\") + const _component_foo = _resolveComponent(\\"foo\\") _push(_ssrRenderComponent(_component_foo, null, { foo: ({ list }, _push, _parent, _scopeId) => { @@ -234,13 +234,13 @@ describe('ssr: components', () => { } } else { return [ - (openBlock(), (_ctx.ok) - ? createBlock(\\"div\\", { key: 0 }, [ - (openBlock(false), createBlock(Fragment, null, renderList(list, (i) => { - return (openBlock(), createBlock(\\"span\\")) + (_openBlock(), (_ctx.ok) + ? _createBlock(\\"div\\", { key: 0 }, [ + (_openBlock(false), _createBlock(_Fragment, null, _renderList(list, (i) => { + return (_openBlock(), _createBlock(\\"span\\")) }), 256 /* UNKEYED_FRAGMENT */)) ]) - : createCommentVNode(\\"v-if\\", true)) + : _createCommentVNode(\\"v-if\\", true)) ] } }, @@ -257,13 +257,13 @@ describe('ssr: components', () => { } } else { return [ - (openBlock(), ok - ? createBlock(\\"div\\", { key: 0 }, [ - (openBlock(false), createBlock(Fragment, null, renderList(_ctx.list, (i) => { - return (openBlock(), createBlock(\\"span\\")) + (_openBlock(), ok + ? _createBlock(\\"div\\", { key: 0 }, [ + (_openBlock(false), _createBlock(_Fragment, null, _renderList(_ctx.list, (i) => { + return (_openBlock(), _createBlock(\\"span\\")) }), 256 /* UNKEYED_FRAGMENT */)) ]) - : createCommentVNode(\\"v-if\\", true)) + : _createCommentVNode(\\"v-if\\", true)) ] } }, @@ -295,11 +295,11 @@ describe('ssr: components', () => { // no fragment expect(compile(``).code) .toMatchInlineSnapshot(` - "const { resolveComponent } = require(\\"vue\\") - const { _ssrRenderComponent } = require(\\"@vue/server-renderer\\") + "const { resolveComponent: _resolveComponent } = require(\\"vue\\") + const { ssrRenderComponent: _ssrRenderComponent } = require(\\"@vue/server-renderer\\") return function ssrRender(_ctx, _push, _parent) { - const _component_foo = resolveComponent(\\"foo\\") + const _component_foo = _resolveComponent(\\"foo\\") _push(_ssrRenderComponent(_component_foo, null, null, _parent)) }" diff --git a/packages/compiler-ssr/__tests__/ssrElement.spec.ts b/packages/compiler-ssr/__tests__/ssrElement.spec.ts index 72280d068..8d38c8292 100644 --- a/packages/compiler-ssr/__tests__/ssrElement.spec.ts +++ b/packages/compiler-ssr/__tests__/ssrElement.spec.ts @@ -51,7 +51,7 @@ describe('ssr: element', () => { test('`).code) .toMatchInlineSnapshot(` - "const { _ssrRenderAttrs, _ssrInterpolate } = require(\\"@vue/server-renderer\\") + "const { ssrRenderAttrs: _ssrRenderAttrs, ssrInterpolate: _ssrInterpolate } = require(\\"@vue/server-renderer\\") return function ssrRender(_ctx, _push, _parent) { let _temp0 @@ -153,26 +153,26 @@ describe('ssr: element', () => { expect( getCompiledString(`
`) ).toMatchInlineSnapshot( - `"\`\`"` + `"\`\`"` ) expect( getCompiledString(`
`) ).toMatchInlineSnapshot( - `"\`\`"` + `"\`\`"` ) // dynamic key + v-bind="object" expect( getCompiledString(`
`) ).toMatchInlineSnapshot( - `"\`\`"` + `"\`\`"` ) // should merge class and :class expect(getCompiledString(`
`)) .toMatchInlineSnapshot(` - "\`\`" `) @@ -183,7 +183,7 @@ describe('ssr: element', () => { `
` ) ).toMatchInlineSnapshot(` - "\`\`" `) diff --git a/packages/compiler-ssr/__tests__/ssrScopeId.spec.ts b/packages/compiler-ssr/__tests__/ssrScopeId.spec.ts index e9e442f79..8aae0ee85 100644 --- a/packages/compiler-ssr/__tests__/ssrScopeId.spec.ts +++ b/packages/compiler-ssr/__tests__/ssrScopeId.spec.ts @@ -23,11 +23,11 @@ describe('ssr: scopeId', () => { scopeId }).code ).toMatchInlineSnapshot(` - "const { resolveComponent, createTextVNode } = require(\\"vue\\") - const { _ssrRenderComponent } = require(\\"@vue/server-renderer\\") + "const { resolveComponent: _resolveComponent, createTextVNode: _createTextVNode } = require(\\"vue\\") + const { ssrRenderComponent: _ssrRenderComponent } = require(\\"@vue/server-renderer\\") return function ssrRender(_ctx, _push, _parent) { - const _component_foo = resolveComponent(\\"foo\\") + const _component_foo = _resolveComponent(\\"foo\\") _push(_ssrRenderComponent(_component_foo, null, { default: (_, _push, _parent, _scopeId) => { @@ -35,7 +35,7 @@ describe('ssr: scopeId', () => { _push(\`foo\`) } else { return [ - createTextVNode(\\"foo\\") + _createTextVNode(\\"foo\\") ] } }, @@ -51,11 +51,11 @@ describe('ssr: scopeId', () => { scopeId }).code ).toMatchInlineSnapshot(` - "const { resolveComponent, createVNode } = require(\\"vue\\") - const { _ssrRenderComponent } = require(\\"@vue/server-renderer\\") + "const { resolveComponent: _resolveComponent, createVNode: _createVNode } = require(\\"vue\\") + const { ssrRenderComponent: _ssrRenderComponent } = require(\\"@vue/server-renderer\\") return function ssrRender(_ctx, _push, _parent) { - const _component_foo = resolveComponent(\\"foo\\") + const _component_foo = _resolveComponent(\\"foo\\") _push(_ssrRenderComponent(_component_foo, null, { default: (_, _push, _parent, _scopeId) => { @@ -63,7 +63,7 @@ describe('ssr: scopeId', () => { _push(\`hello\`) } else { return [ - createVNode(\\"span\\", null, \\"hello\\") + _createVNode(\\"span\\", null, \\"hello\\") ] } }, @@ -79,12 +79,12 @@ describe('ssr: scopeId', () => { scopeId }).code ).toMatchInlineSnapshot(` - "const { resolveComponent, createVNode } = require(\\"vue\\") - const { _ssrRenderComponent } = require(\\"@vue/server-renderer\\") + "const { resolveComponent: _resolveComponent, createVNode: _createVNode } = require(\\"vue\\") + const { ssrRenderComponent: _ssrRenderComponent } = require(\\"@vue/server-renderer\\") return function ssrRender(_ctx, _push, _parent) { - const _component_foo = resolveComponent(\\"foo\\") - const _component_bar = resolveComponent(\\"bar\\") + const _component_foo = _resolveComponent(\\"foo\\") + const _component_bar = _resolveComponent(\\"bar\\") _push(_ssrRenderComponent(_component_foo, null, { default: (_, _push, _parent, _scopeId) => { @@ -96,7 +96,7 @@ describe('ssr: scopeId', () => { _push(\`\`) } else { return [ - createVNode(\\"span\\") + _createVNode(\\"span\\") ] } }, @@ -104,10 +104,10 @@ describe('ssr: scopeId', () => { }, _parent)) } else { return [ - createVNode(\\"span\\", null, \\"hello\\"), - createVNode(_component_bar, null, { + _createVNode(\\"span\\", null, \\"hello\\"), + _createVNode(_component_bar, null, { default: () => [ - createVNode(\\"span\\") + _createVNode(\\"span\\") ], _compiled: true }) diff --git a/packages/compiler-ssr/__tests__/ssrSlotOutlet.spec.ts b/packages/compiler-ssr/__tests__/ssrSlotOutlet.spec.ts index b9855c966..4d6d7e7e3 100644 --- a/packages/compiler-ssr/__tests__/ssrSlotOutlet.spec.ts +++ b/packages/compiler-ssr/__tests__/ssrSlotOutlet.spec.ts @@ -3,7 +3,7 @@ import { compile } from '../src' describe('ssr: ', () => { test('basic', () => { expect(compile(``).code).toMatchInlineSnapshot(` - "const { _ssrRenderSlot } = require(\\"@vue/server-renderer\\") + "const { ssrRenderSlot: _ssrRenderSlot } = require(\\"@vue/server-renderer\\") return function ssrRender(_ctx, _push, _parent) { _ssrRenderSlot(_ctx.$slots, \\"default\\", {}, null, _push, _parent) @@ -13,7 +13,7 @@ describe('ssr: ', () => { test('with name', () => { expect(compile(``).code).toMatchInlineSnapshot(` - "const { _ssrRenderSlot } = require(\\"@vue/server-renderer\\") + "const { ssrRenderSlot: _ssrRenderSlot } = require(\\"@vue/server-renderer\\") return function ssrRender(_ctx, _push, _parent) { _ssrRenderSlot(_ctx.$slots, \\"foo\\", {}, null, _push, _parent) @@ -23,7 +23,7 @@ describe('ssr: ', () => { test('with dynamic name', () => { expect(compile(``).code).toMatchInlineSnapshot(` - "const { _ssrRenderSlot } = require(\\"@vue/server-renderer\\") + "const { ssrRenderSlot: _ssrRenderSlot } = require(\\"@vue/server-renderer\\") return function ssrRender(_ctx, _push, _parent) { _ssrRenderSlot(_ctx.$slots, _ctx.bar.baz, {}, null, _push, _parent) @@ -34,7 +34,7 @@ describe('ssr: ', () => { test('with props', () => { expect(compile(``).code) .toMatchInlineSnapshot(` - "const { _ssrRenderSlot } = require(\\"@vue/server-renderer\\") + "const { ssrRenderSlot: _ssrRenderSlot } = require(\\"@vue/server-renderer\\") return function ssrRender(_ctx, _push, _parent) { _ssrRenderSlot(_ctx.$slots, \\"foo\\", { @@ -48,7 +48,7 @@ describe('ssr: ', () => { test('with fallback', () => { expect(compile(`some {{ fallback }} content`).code) .toMatchInlineSnapshot(` - "const { _ssrRenderSlot, _ssrInterpolate } = require(\\"@vue/server-renderer\\") + "const { ssrRenderSlot: _ssrRenderSlot, ssrInterpolate: _ssrInterpolate } = require(\\"@vue/server-renderer\\") return function ssrRender(_ctx, _push, _parent) { _ssrRenderSlot(_ctx.$slots, \\"default\\", {}, () => { diff --git a/packages/compiler-ssr/__tests__/ssrText.spec.ts b/packages/compiler-ssr/__tests__/ssrText.spec.ts index 300139ab1..21ef5518c 100644 --- a/packages/compiler-ssr/__tests__/ssrText.spec.ts +++ b/packages/compiler-ssr/__tests__/ssrText.spec.ts @@ -22,7 +22,7 @@ describe('ssr: text', () => { test('interpolation', () => { expect(compile(`foo {{ bar }} baz`).code).toMatchInlineSnapshot(` - "const { _ssrInterpolate } = require(\\"@vue/server-renderer\\") + "const { ssrInterpolate: _ssrInterpolate } = require(\\"@vue/server-renderer\\") return function ssrRender(_ctx, _push, _parent) { _push(\`foo \${_ssrInterpolate(_ctx.bar)} baz\`) @@ -35,7 +35,7 @@ describe('ssr: text', () => { compile(`
{{ foo }} barbaz {{ qux }}
`) .code ).toMatchInlineSnapshot(` - "const { _ssrInterpolate } = require(\\"@vue/server-renderer\\") + "const { ssrInterpolate: _ssrInterpolate } = require(\\"@vue/server-renderer\\") return function ssrRender(_ctx, _push, _parent) { _push(\`
\${ diff --git a/packages/compiler-ssr/__tests__/ssrVFor.spec.ts b/packages/compiler-ssr/__tests__/ssrVFor.spec.ts index 6fa8cc8c0..a5b9ebd4c 100644 --- a/packages/compiler-ssr/__tests__/ssrVFor.spec.ts +++ b/packages/compiler-ssr/__tests__/ssrVFor.spec.ts @@ -3,7 +3,7 @@ import { compile } from '../src' describe('ssr: v-for', () => { test('basic', () => { expect(compile(`
`).code).toMatchInlineSnapshot(` - "const { _ssrRenderList } = require(\\"@vue/server-renderer\\") + "const { ssrRenderList: _ssrRenderList } = require(\\"@vue/server-renderer\\") return function ssrRender(_ctx, _push, _parent) { _push(\`\`) @@ -18,7 +18,7 @@ describe('ssr: v-for', () => { test('nested content', () => { expect(compile(`
foobar
`).code) .toMatchInlineSnapshot(` - "const { _ssrRenderList } = require(\\"@vue/server-renderer\\") + "const { ssrRenderList: _ssrRenderList } = require(\\"@vue/server-renderer\\") return function ssrRender(_ctx, _push, _parent) { _push(\`\`) @@ -38,7 +38,7 @@ describe('ssr: v-for', () => { `
` ).code ).toMatchInlineSnapshot(` - "const { _ssrInterpolate, _ssrRenderList } = require(\\"@vue/server-renderer\\") + "const { ssrInterpolate: _ssrInterpolate, ssrRenderList: _ssrRenderList } = require(\\"@vue/server-renderer\\") return function ssrRender(_ctx, _push, _parent) { _push(\`\`) @@ -61,7 +61,7 @@ describe('ssr: v-for', () => { test('template v-for (text)', () => { expect(compile(``).code) .toMatchInlineSnapshot(` - "const { _ssrInterpolate, _ssrRenderList } = require(\\"@vue/server-renderer\\") + "const { ssrInterpolate: _ssrInterpolate, ssrRenderList: _ssrRenderList } = require(\\"@vue/server-renderer\\") return function ssrRender(_ctx, _push, _parent) { _push(\`\`) @@ -78,7 +78,7 @@ describe('ssr: v-for', () => { compile(``) .code ).toMatchInlineSnapshot(` - "const { _ssrInterpolate, _ssrRenderList } = require(\\"@vue/server-renderer\\") + "const { ssrInterpolate: _ssrInterpolate, ssrRenderList: _ssrRenderList } = require(\\"@vue/server-renderer\\") return function ssrRender(_ctx, _push, _parent) { _push(\`\`) @@ -96,7 +96,7 @@ describe('ssr: v-for', () => { `` ).code ).toMatchInlineSnapshot(` - "const { _ssrInterpolate, _ssrRenderList } = require(\\"@vue/server-renderer\\") + "const { ssrInterpolate: _ssrInterpolate, ssrRenderList: _ssrRenderList } = require(\\"@vue/server-renderer\\") return function ssrRender(_ctx, _push, _parent) { _push(\`\`) @@ -120,7 +120,7 @@ describe('ssr: v-for', () => { expect(code).not.toMatch(`_ctx.foo`) expect(code).not.toMatch(`_ctx.index`) expect(code).toMatchInlineSnapshot(` - "const { _ssrInterpolate, _ssrRenderList } = require(\\"@vue/server-renderer\\") + "const { ssrInterpolate: _ssrInterpolate, ssrRenderList: _ssrRenderList } = require(\\"@vue/server-renderer\\") return function ssrRender(_ctx, _push, _parent) { _push(\`\`) diff --git a/packages/compiler-ssr/__tests__/ssrVIf.spec.ts b/packages/compiler-ssr/__tests__/ssrVIf.spec.ts index 15b4fb696..4f9157456 100644 --- a/packages/compiler-ssr/__tests__/ssrVIf.spec.ts +++ b/packages/compiler-ssr/__tests__/ssrVIf.spec.ts @@ -122,7 +122,7 @@ describe('ssr: v-if', () => { expect( compile(``).code ).toMatchInlineSnapshot(` - "const { _ssrRenderList } = require(\\"@vue/server-renderer\\") + "const { ssrRenderList: _ssrRenderList } = require(\\"@vue/server-renderer\\") return function ssrRender(_ctx, _push, _parent) { if (_ctx.foo) { diff --git a/packages/compiler-ssr/__tests__/ssrVModel.spec.ts b/packages/compiler-ssr/__tests__/ssrVModel.spec.ts index d9bbee2bc..f82df8c10 100644 --- a/packages/compiler-ssr/__tests__/ssrVModel.spec.ts +++ b/packages/compiler-ssr/__tests__/ssrVModel.spec.ts @@ -3,7 +3,7 @@ import { compile } from '../src' describe('ssr: v-model', () => { test(' (text types)', () => { expect(compile(``).code).toMatchInlineSnapshot(` - "const { _ssrRenderAttr } = require(\\"@vue/server-renderer\\") + "const { ssrRenderAttr: _ssrRenderAttr } = require(\\"@vue/server-renderer\\") return function ssrRender(_ctx, _push, _parent) { _push(\`\`) @@ -12,7 +12,7 @@ describe('ssr: v-model', () => { expect(compile(``).code) .toMatchInlineSnapshot(` - "const { _ssrRenderAttr } = require(\\"@vue/server-renderer\\") + "const { ssrRenderAttr: _ssrRenderAttr } = require(\\"@vue/server-renderer\\") return function ssrRender(_ctx, _push, _parent) { _push(\`\`) @@ -23,7 +23,7 @@ describe('ssr: v-model', () => { test('', () => { expect(compile(``).code) .toMatchInlineSnapshot(` - "const { _ssrLooseEqual } = require(\\"@vue/server-renderer\\") + "const { ssrLooseEqual: _ssrLooseEqual } = require(\\"@vue/server-renderer\\") return function ssrRender(_ctx, _push, _parent) { _push(\`\`) @@ -34,7 +34,7 @@ describe('ssr: v-model', () => { test(' { expect(compile(``).code) .toMatchInlineSnapshot(` - "const { _ssrLooseContain } = require(\\"@vue/server-renderer\\") + "const { ssrLooseContain: _ssrLooseContain } = require(\\"@vue/server-renderer\\") return function ssrRender(_ctx, _push, _parent) { _push(\` { expect(compile(``).code) .toMatchInlineSnapshot(` - "const { _ssrLooseContain } = require(\\"@vue/server-renderer\\") + "const { ssrLooseContain: _ssrLooseContain } = require(\\"@vue/server-renderer\\") return function ssrRender(_ctx, _push, _parent) { _push(\` { test('`).code) .toMatchInlineSnapshot(` - "const { _ssrInterpolate } = require(\\"@vue/server-renderer\\") + "const { ssrInterpolate: _ssrInterpolate } = require(\\"@vue/server-renderer\\") return function ssrRender(_ctx, _push, _parent) { _push(\`\`) @@ -69,7 +69,7 @@ describe('ssr: v-model', () => { test('', () => { expect(compile(``).code) .toMatchInlineSnapshot(` - "const { _ssrRenderAttr, _ssrRenderDynamicModel } = require(\\"@vue/server-renderer\\") + "const { ssrRenderAttr: _ssrRenderAttr, ssrRenderDynamicModel: _ssrRenderDynamicModel } = require(\\"@vue/server-renderer\\") return function ssrRender(_ctx, _push, _parent) { _push(\` { expect(compile(``).code) .toMatchInlineSnapshot(` - "const { _ssrRenderAttr, _ssrRenderDynamicModel } = require(\\"@vue/server-renderer\\") + "const { ssrRenderAttr: _ssrRenderAttr, ssrRenderDynamicModel: _ssrRenderDynamicModel } = require(\\"@vue/server-renderer\\") return function ssrRender(_ctx, _push, _parent) { _push(\` { expect(compile(``).code) .toMatchInlineSnapshot(` - "const { _ssrRenderAttr, _ssrRenderDynamicModel } = require(\\"@vue/server-renderer\\") + "const { ssrRenderAttr: _ssrRenderAttr, ssrRenderDynamicModel: _ssrRenderDynamicModel } = require(\\"@vue/server-renderer\\") return function ssrRender(_ctx, _push, _parent) { _push(\` { test('', () => { expect(compile(``).code) .toMatchInlineSnapshot(` - "const { mergeProps } = require(\\"vue\\") - const { _ssrRenderAttrs, _ssrGetDynamicModelProps } = require(\\"@vue/server-renderer\\") + "const { mergeProps: _mergeProps } = require(\\"vue\\") + const { ssrRenderAttrs: _ssrRenderAttrs, ssrGetDynamicModelProps: _ssrGetDynamicModelProps } = require(\\"@vue/server-renderer\\") return function ssrRender(_ctx, _push, _parent) { let _temp0 - _push(\`\`) + _push(\`\`) }" `) expect(compile(``).code) .toMatchInlineSnapshot(` - "const { mergeProps } = require(\\"vue\\") - const { _ssrRenderAttrs, _ssrGetDynamicModelProps } = require(\\"@vue/server-renderer\\") + "const { mergeProps: _mergeProps } = require(\\"vue\\") + const { ssrRenderAttrs: _ssrRenderAttrs, ssrGetDynamicModelProps: _ssrGetDynamicModelProps } = require(\\"@vue/server-renderer\\") return function ssrRender(_ctx, _push, _parent) { let _temp0 - _push(\`\`) + _push(\`\`) }" `) }) diff --git a/packages/compiler-ssr/__tests__/ssrVShow.spec.ts b/packages/compiler-ssr/__tests__/ssrVShow.spec.ts index b60da1298..87abd6a45 100644 --- a/packages/compiler-ssr/__tests__/ssrVShow.spec.ts +++ b/packages/compiler-ssr/__tests__/ssrVShow.spec.ts @@ -3,7 +3,7 @@ import { compile } from '../src' describe('ssr: v-show', () => { test('basic', () => { expect(compile(`
`).code).toMatchInlineSnapshot(` - "const { _ssrRenderStyle } = require(\\"@vue/server-renderer\\") + "const { ssrRenderStyle: _ssrRenderStyle } = require(\\"@vue/server-renderer\\") return function ssrRender(_ctx, _push, _parent) { _push(\`
\`) @@ -14,7 +14,7 @@ describe('ssr: v-show', () => { test('with static style', () => { expect(compile(`
`).code) .toMatchInlineSnapshot(` - "const { _ssrRenderStyle } = require(\\"@vue/server-renderer\\") + "const { ssrRenderStyle: _ssrRenderStyle } = require(\\"@vue/server-renderer\\") const _hoisted_1 = {\\"color\\":\\"red\\"} @@ -30,7 +30,7 @@ describe('ssr: v-show', () => { test('with dynamic style', () => { expect(compile(`
`).code) .toMatchInlineSnapshot(` - "const { _ssrRenderStyle } = require(\\"@vue/server-renderer\\") + "const { ssrRenderStyle: _ssrRenderStyle } = require(\\"@vue/server-renderer\\") return function ssrRender(_ctx, _push, _parent) { _push(\` { compile(`
`) .code ).toMatchInlineSnapshot(` - "const { _ssrRenderStyle } = require(\\"@vue/server-renderer\\") + "const { ssrRenderStyle: _ssrRenderStyle } = require(\\"@vue/server-renderer\\") const _hoisted_1 = {\\"color\\":\\"red\\"} @@ -66,13 +66,13 @@ describe('ssr: v-show', () => { `
` ).code ).toMatchInlineSnapshot(` - "const { mergeProps } = require(\\"vue\\") - const { _ssrRenderAttrs } = require(\\"@vue/server-renderer\\") + "const { mergeProps: _mergeProps } = require(\\"vue\\") + const { ssrRenderAttrs: _ssrRenderAttrs } = require(\\"@vue/server-renderer\\") const _hoisted_1 = {\\"color\\":\\"red\\"} return function ssrRender(_ctx, _push, _parent) { - _push(\`