From: Evan You Date: Thu, 30 Jan 2025 12:10:40 +0000 (+0800) Subject: refactor: remove prefixIdentifier and mode usage in compiler-vapor X-Git-Tag: v3.6.0-alpha.1~16^2~122 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=1ff6b136dbebbb17d3c79db937b4790b039cbf9f;p=thirdparty%2Fvuejs%2Fcore.git refactor: remove prefixIdentifier and mode usage in compiler-vapor vapor compilation always assume module mode + prefixIdentifier: true --- diff --git a/packages/compiler-vapor/__tests__/transforms/vOnce.spec.ts b/packages/compiler-vapor/__tests__/transforms/vOnce.spec.ts index 124e336949..1f40424e5f 100644 --- a/packages/compiler-vapor/__tests__/transforms/vOnce.spec.ts +++ b/packages/compiler-vapor/__tests__/transforms/vOnce.spec.ts @@ -3,7 +3,7 @@ import { IRNodeTypes } from '../../src' import { getBaseTransformPreset } from '../../src/compile' import { makeCompile } from './_utils' -const [nodeTransforms, directiveTransforms] = getBaseTransformPreset(true) +const [nodeTransforms, directiveTransforms] = getBaseTransformPreset() const compileWithOnce = makeCompile({ nodeTransforms, directiveTransforms, diff --git a/packages/compiler-vapor/src/compile.ts b/packages/compiler-vapor/src/compile.ts index bc51e5c2c3..f84eafcbe0 100644 --- a/packages/compiler-vapor/src/compile.ts +++ b/packages/compiler-vapor/src/compile.ts @@ -1,9 +1,6 @@ import { type CompilerOptions as BaseCompilerOptions, - ErrorCodes, type RootNode, - createCompilerError, - defaultOnError, parse, } from '@vue/compiler-dom' import { extend, isString } from '@vue/shared' @@ -38,20 +35,9 @@ export function compile( source: string | RootNode, options: CompilerOptions = {}, ): VaporCodegenResult { - const onError = options.onError || defaultOnError - 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 resolvedOptions = extend({}, options) const ast = isString(source) ? parse(source, resolvedOptions) : source - const [nodeTransforms, directiveTransforms] = - getBaseTransformPreset(prefixIdentifiers) + const [nodeTransforms, directiveTransforms] = getBaseTransformPreset() if (options.isTS) { const { expressionPlugins } = options @@ -87,9 +73,7 @@ export type TransformPreset = [ Record, ] -export function getBaseTransformPreset( - prefixIdentifiers?: boolean, -): TransformPreset { +export function getBaseTransformPreset(): TransformPreset { return [ [ transformVOnce, diff --git a/packages/compiler-vapor/src/generate.ts b/packages/compiler-vapor/src/generate.ts index 012ea55d58..319aac9e48 100644 --- a/packages/compiler-vapor/src/generate.ts +++ b/packages/compiler-vapor/src/generate.ts @@ -68,8 +68,8 @@ export class CodegenContext { options: CodegenOptions, ) { const defaultOptions: Required = { - mode: 'function', // TODO - prefixIdentifiers: options.mode === 'module', + mode: 'module', + prefixIdentifiers: true, sourceMap: false, filename: `template.vue.html`, scopeId: null, diff --git a/packages/compiler-vapor/src/generators/expression.ts b/packages/compiler-vapor/src/generators/expression.ts index 8e71458337..6ece58fa80 100644 --- a/packages/compiler-vapor/src/generators/expression.ts +++ b/packages/compiler-vapor/src/generators/expression.ts @@ -22,7 +22,6 @@ export function genExpression( context: CodegenContext, assignment?: string, ): CodeFragment[] { - const { prefixIdentifiers } = context.options const { content, ast, isStatic, loc } = node if (isStatic) { @@ -30,7 +29,6 @@ export function genExpression( } if ( - !prefixIdentifiers || !node.content.trim() || // there was a parsing error ast === false || diff --git a/packages/compiler-vapor/src/transform.ts b/packages/compiler-vapor/src/transform.ts index f8ff395ede..1cace2e47b 100644 --- a/packages/compiler-vapor/src/transform.ts +++ b/packages/compiler-vapor/src/transform.ts @@ -194,7 +194,7 @@ export class TransformContext { const defaultOptions = { filename: '', - prefixIdentifiers: false, + prefixIdentifiers: true, hoistStatic: false, hmr: false, cacheHandlers: false,