mirror of https://github.com/vuejs/core.git
refactor: remove prefixIdentifier and mode usage in compiler-vapor
vapor compilation always assume module mode + prefixIdentifier: true
This commit is contained in:
parent
fca1aef896
commit
1ff6b136db
|
@ -3,7 +3,7 @@ import { IRNodeTypes } from '../../src'
|
||||||
import { getBaseTransformPreset } from '../../src/compile'
|
import { getBaseTransformPreset } from '../../src/compile'
|
||||||
import { makeCompile } from './_utils'
|
import { makeCompile } from './_utils'
|
||||||
|
|
||||||
const [nodeTransforms, directiveTransforms] = getBaseTransformPreset(true)
|
const [nodeTransforms, directiveTransforms] = getBaseTransformPreset()
|
||||||
const compileWithOnce = makeCompile({
|
const compileWithOnce = makeCompile({
|
||||||
nodeTransforms,
|
nodeTransforms,
|
||||||
directiveTransforms,
|
directiveTransforms,
|
||||||
|
|
|
@ -1,9 +1,6 @@
|
||||||
import {
|
import {
|
||||||
type CompilerOptions as BaseCompilerOptions,
|
type CompilerOptions as BaseCompilerOptions,
|
||||||
ErrorCodes,
|
|
||||||
type RootNode,
|
type RootNode,
|
||||||
createCompilerError,
|
|
||||||
defaultOnError,
|
|
||||||
parse,
|
parse,
|
||||||
} from '@vue/compiler-dom'
|
} from '@vue/compiler-dom'
|
||||||
import { extend, isString } from '@vue/shared'
|
import { extend, isString } from '@vue/shared'
|
||||||
|
@ -38,20 +35,9 @@ export function compile(
|
||||||
source: string | RootNode,
|
source: string | RootNode,
|
||||||
options: CompilerOptions = {},
|
options: CompilerOptions = {},
|
||||||
): VaporCodegenResult {
|
): VaporCodegenResult {
|
||||||
const onError = options.onError || defaultOnError
|
const resolvedOptions = extend({}, options)
|
||||||
const isModuleMode = options.mode === 'module'
|
|
||||||
const prefixIdentifiers = options.prefixIdentifiers === true || isModuleMode
|
|
||||||
|
|
||||||
if (options.scopeId && !isModuleMode) {
|
|
||||||
onError(createCompilerError(ErrorCodes.X_SCOPE_ID_NOT_SUPPORTED))
|
|
||||||
}
|
|
||||||
|
|
||||||
const resolvedOptions = extend({}, options, {
|
|
||||||
prefixIdentifiers,
|
|
||||||
})
|
|
||||||
const ast = isString(source) ? parse(source, resolvedOptions) : source
|
const ast = isString(source) ? parse(source, resolvedOptions) : source
|
||||||
const [nodeTransforms, directiveTransforms] =
|
const [nodeTransforms, directiveTransforms] = getBaseTransformPreset()
|
||||||
getBaseTransformPreset(prefixIdentifiers)
|
|
||||||
|
|
||||||
if (options.isTS) {
|
if (options.isTS) {
|
||||||
const { expressionPlugins } = options
|
const { expressionPlugins } = options
|
||||||
|
@ -87,9 +73,7 @@ export type TransformPreset = [
|
||||||
Record<string, DirectiveTransform>,
|
Record<string, DirectiveTransform>,
|
||||||
]
|
]
|
||||||
|
|
||||||
export function getBaseTransformPreset(
|
export function getBaseTransformPreset(): TransformPreset {
|
||||||
prefixIdentifiers?: boolean,
|
|
||||||
): TransformPreset {
|
|
||||||
return [
|
return [
|
||||||
[
|
[
|
||||||
transformVOnce,
|
transformVOnce,
|
||||||
|
|
|
@ -68,8 +68,8 @@ export class CodegenContext {
|
||||||
options: CodegenOptions,
|
options: CodegenOptions,
|
||||||
) {
|
) {
|
||||||
const defaultOptions: Required<CodegenOptions> = {
|
const defaultOptions: Required<CodegenOptions> = {
|
||||||
mode: 'function', // TODO
|
mode: 'module',
|
||||||
prefixIdentifiers: options.mode === 'module',
|
prefixIdentifiers: true,
|
||||||
sourceMap: false,
|
sourceMap: false,
|
||||||
filename: `template.vue.html`,
|
filename: `template.vue.html`,
|
||||||
scopeId: null,
|
scopeId: null,
|
||||||
|
|
|
@ -22,7 +22,6 @@ export function genExpression(
|
||||||
context: CodegenContext,
|
context: CodegenContext,
|
||||||
assignment?: string,
|
assignment?: string,
|
||||||
): CodeFragment[] {
|
): CodeFragment[] {
|
||||||
const { prefixIdentifiers } = context.options
|
|
||||||
const { content, ast, isStatic, loc } = node
|
const { content, ast, isStatic, loc } = node
|
||||||
|
|
||||||
if (isStatic) {
|
if (isStatic) {
|
||||||
|
@ -30,7 +29,6 @@ export function genExpression(
|
||||||
}
|
}
|
||||||
|
|
||||||
if (
|
if (
|
||||||
!prefixIdentifiers ||
|
|
||||||
!node.content.trim() ||
|
!node.content.trim() ||
|
||||||
// there was a parsing error
|
// there was a parsing error
|
||||||
ast === false ||
|
ast === false ||
|
||||||
|
|
|
@ -194,7 +194,7 @@ export class TransformContext<T extends AllNode = AllNode> {
|
||||||
|
|
||||||
const defaultOptions = {
|
const defaultOptions = {
|
||||||
filename: '',
|
filename: '',
|
||||||
prefixIdentifiers: false,
|
prefixIdentifiers: true,
|
||||||
hoistStatic: false,
|
hoistStatic: false,
|
||||||
hmr: false,
|
hmr: false,
|
||||||
cacheHandlers: false,
|
cacheHandlers: false,
|
||||||
|
|
Loading…
Reference in New Issue