perf(compiler-sfc): use faster source map addMapping
This commit is contained in:
parent
d193666fdc
commit
50cde7cfbc
|
@ -227,7 +227,6 @@ function createCodegenContext(
|
|||
// lazy require source-map implementation, only in non-browser builds
|
||||
context.map = new SourceMapGenerator()
|
||||
context.map.setSourceContent(filename, context.source)
|
||||
// @ts-ignore
|
||||
context.map._sources.add(filename)
|
||||
}
|
||||
|
||||
|
|
|
@ -339,22 +339,21 @@ function generateSourceMap(
|
|||
sourceRoot: sourceRoot.replace(/\\/g, '/')
|
||||
})
|
||||
map.setSourceContent(filename, source)
|
||||
map._sources.add(filename)
|
||||
generated.split(splitRE).forEach((line, index) => {
|
||||
if (!emptyRE.test(line)) {
|
||||
const originalLine = index + 1 + lineOffset
|
||||
const generatedLine = index + 1
|
||||
for (let i = 0; i < line.length; i++) {
|
||||
if (!/\s/.test(line[i])) {
|
||||
map.addMapping({
|
||||
map._mappings.add({
|
||||
originalLine,
|
||||
originalColumn: i,
|
||||
generatedLine,
|
||||
generatedColumn: i,
|
||||
source: filename,
|
||||
original: {
|
||||
line: originalLine,
|
||||
column: i
|
||||
},
|
||||
generated: {
|
||||
line: generatedLine,
|
||||
column: i
|
||||
}
|
||||
// @ts-ignore
|
||||
name: null
|
||||
})
|
||||
}
|
||||
}
|
||||
|
|
|
@ -48,6 +48,7 @@ declare module 'source-map-js' {
|
|||
export interface SourceMapGenerator {
|
||||
// SourceMapGenerator has this method but the types do not include it
|
||||
toJSON(): RawSourceMap
|
||||
_sources: Set<string>
|
||||
_names: Set<string>
|
||||
_mappings: {
|
||||
add(mapping: MappingItem): void
|
||||
|
|
Loading…
Reference in New Issue