fix(compiler): add `vaporRuntimeModuleName` option
This commit is contained in:
parent
3d10925c53
commit
0c8153eca8
|
@ -87,7 +87,10 @@ export enum NewlineType {
|
||||||
}
|
}
|
||||||
|
|
||||||
export interface CodegenContext
|
export interface CodegenContext
|
||||||
extends Omit<Required<CodegenOptions>, 'bindingMetadata' | 'inline'> {
|
extends Omit<
|
||||||
|
Required<CodegenOptions>,
|
||||||
|
'bindingMetadata' | 'inline' | 'vaporRuntimeModuleName'
|
||||||
|
> {
|
||||||
source: string
|
source: string
|
||||||
code: string
|
code: string
|
||||||
line: number
|
line: number
|
||||||
|
|
|
@ -318,6 +318,11 @@ export interface CodegenOptions extends SharedTransformCodegenOptions {
|
||||||
* @default 'vue'
|
* @default 'vue'
|
||||||
*/
|
*/
|
||||||
runtimeModuleName?: string
|
runtimeModuleName?: string
|
||||||
|
/**
|
||||||
|
* Customize where to import runtime helpers from.
|
||||||
|
* @default 'vue/vapor'
|
||||||
|
*/
|
||||||
|
vaporRuntimeModuleName?: string
|
||||||
/**
|
/**
|
||||||
* Customize where to import ssr runtime helpers from/**
|
* Customize where to import ssr runtime helpers from/**
|
||||||
* @default 'vue/server-renderer'
|
* @default 'vue/server-renderer'
|
||||||
|
|
|
@ -63,7 +63,7 @@ export class CodegenContext {
|
||||||
public ir: RootIRNode,
|
public ir: RootIRNode,
|
||||||
options: CodegenOptions,
|
options: CodegenOptions,
|
||||||
) {
|
) {
|
||||||
const defaultOptions = {
|
const defaultOptions: Required<CodegenOptions> = {
|
||||||
mode: 'function',
|
mode: 'function',
|
||||||
prefixIdentifiers: options.mode === 'module',
|
prefixIdentifiers: options.mode === 'module',
|
||||||
sourceMap: false,
|
sourceMap: false,
|
||||||
|
@ -72,6 +72,7 @@ export class CodegenContext {
|
||||||
optimizeImports: false,
|
optimizeImports: false,
|
||||||
runtimeGlobalName: `Vue`,
|
runtimeGlobalName: `Vue`,
|
||||||
runtimeModuleName: `vue`,
|
runtimeModuleName: `vue`,
|
||||||
|
vaporRuntimeModuleName: 'vue/vapor',
|
||||||
ssrRuntimeModuleName: 'vue/server-renderer',
|
ssrRuntimeModuleName: 'vue/server-renderer',
|
||||||
ssr: false,
|
ssr: false,
|
||||||
isTS: false,
|
isTS: false,
|
||||||
|
@ -156,17 +157,17 @@ export function generate(
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
function genHelperImports({ helpers, vaporHelpers, code }: CodegenContext) {
|
function genHelperImports({ helpers, vaporHelpers, options }: CodegenContext) {
|
||||||
let imports = ''
|
let imports = ''
|
||||||
if (helpers.size) {
|
if (helpers.size) {
|
||||||
imports += `import { ${[...helpers]
|
imports += `import { ${[...helpers]
|
||||||
.map(h => `${h} as _${h}`)
|
.map(h => `${h} as _${h}`)
|
||||||
.join(', ')} } from 'vue';\n`
|
.join(', ')} } from '${options.runtimeModuleName}';\n`
|
||||||
}
|
}
|
||||||
if (vaporHelpers.size) {
|
if (vaporHelpers.size) {
|
||||||
imports += `import { ${[...vaporHelpers]
|
imports += `import { ${[...vaporHelpers]
|
||||||
.map(h => `${h} as _${h}`)
|
.map(h => `${h} as _${h}`)
|
||||||
.join(', ')} } from 'vue/vapor';\n`
|
.join(', ')} } from '${options.vaporRuntimeModuleName}';\n`
|
||||||
}
|
}
|
||||||
return imports
|
return imports
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue