Skip to content

Commit f48cd8c

Browse files
committed
refactor: use filename option
1 parent 38d1d4e commit f48cd8c

File tree

3 files changed

+14
-17
lines changed

3 files changed

+14
-17
lines changed

packages/plugin-vue/src/index.ts

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -490,13 +490,12 @@ export default function vuePlugin(rawOptions: Options = {}): Plugin<Api> {
490490
if (query.type === 'template') {
491491
return transformTemplateAsModule(
492492
code,
493+
filename,
493494
descriptor,
494495
options.value,
495496
this,
496497
ssr,
497498
customElementFilter.value(filename),
498-
filename,
499-
!!query.src,
500499
)
501500
} else if (query.type === 'style') {
502501
return transformStyle(

packages/plugin-vue/src/script.ts

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -74,7 +74,12 @@ export function resolveScript(
7474
id: descriptor.id,
7575
isProd: options.isProduction,
7676
inlineTemplate: isUseInlineTemplate(descriptor, options),
77-
templateOptions: resolveTemplateCompilerOptions(descriptor, options, ssr),
77+
templateOptions: resolveTemplateCompilerOptions(
78+
descriptor,
79+
options,
80+
descriptor.filename,
81+
ssr,
82+
),
7883
sourceMap: options.sourceMap,
7984
genDefaultAs: canInlineMain(descriptor, options)
8085
? scriptIdentifier

packages/plugin-vue/src/template.ts

Lines changed: 7 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -13,19 +13,19 @@ import type { ResolvedOptions } from './index'
1313

1414
export async function transformTemplateAsModule(
1515
code: string,
16+
filename: string,
1617
descriptor: SFCDescriptor,
1718
options: ResolvedOptions,
1819
pluginContext: Rollup.TransformPluginContext,
1920
ssr: boolean,
2021
customElement: boolean,
21-
filename: string,
22-
isSrc: boolean,
2322
): Promise<{
2423
code: string
2524
map: any
2625
}> {
2726
const result = compile(
2827
code,
28+
filename,
2929
descriptor,
3030
options,
3131
pluginContext,
@@ -45,15 +45,6 @@ export async function transformTemplateAsModule(
4545
})`
4646
}
4747

48-
if (result.map && isSrc) {
49-
const vueFileIndex = result.map.sources.findIndex(
50-
(source) => source === descriptor.filename,
51-
)
52-
if (vueFileIndex >= 0) {
53-
result.map.sources[vueFileIndex] = filename
54-
}
55-
}
56-
5748
return {
5849
code: returnCode,
5950
map: result.map,
@@ -73,6 +64,7 @@ export function transformTemplateInMain(
7364
): SFCTemplateCompileResults {
7465
const result = compile(
7566
code,
67+
descriptor.filename,
7668
descriptor,
7769
options,
7870
pluginContext,
@@ -91,16 +83,16 @@ export function transformTemplateInMain(
9183
// eslint-disable-next-line @typescript-eslint/explicit-module-boundary-types
9284
export function compile(
9385
code: string,
86+
filename: string,
9487
descriptor: SFCDescriptor,
9588
options: ResolvedOptions,
9689
pluginContext: Rollup.PluginContext,
9790
ssr: boolean,
9891
customElement: boolean,
9992
) {
100-
const filename = descriptor.filename
10193
resolveScript(descriptor, options, ssr, customElement)
10294
const result = options.compiler.compileTemplate({
103-
...resolveTemplateCompilerOptions(descriptor, options, ssr)!,
95+
...resolveTemplateCompilerOptions(descriptor, options, filename, ssr)!,
10496
source: code,
10597
})
10698

@@ -129,6 +121,7 @@ export function compile(
129121
export function resolveTemplateCompilerOptions(
130122
descriptor: SFCDescriptor,
131123
options: ResolvedOptions,
124+
filename: string,
132125
ssr: boolean,
133126
): Omit<SFCTemplateCompileOptions, 'source'> | undefined {
134127
const block = descriptor.template
@@ -137,7 +130,7 @@ export function resolveTemplateCompilerOptions(
137130
}
138131
const resolvedScript = getResolvedScript(descriptor, ssr)
139132
const hasScoped = descriptor.styles.some((s) => s.scoped)
140-
const { id, filename, cssVars } = descriptor
133+
const { id, cssVars } = descriptor
141134

142135
let transformAssetUrls = options.template?.transformAssetUrls
143136
// compiler-sfc should export `AssetURLOptions`

0 commit comments

Comments
 (0)