refactor: remove prefixIdentifier and mode usage in compiler-vapor

vapor compilation always assume module mode + prefixIdentifier: true
This commit is contained in:
Evan You 2025-01-30 20:10:40 +08:00
parent fca1aef896
commit 1ff6b136db
No known key found for this signature in database
GPG Key ID: 00E9AB7A6704CE0A
5 changed files with 7 additions and 25 deletions

View File

@ -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,

View File

@ -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,

View File

@ -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,

View File

@ -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 ||

View File

@ -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,