Inherit child segments when parent contains only a line marker #120
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Imagine you edit a file and generate only a source map for the lines you've edited. Currently, this causes the remapped sourcemap to largely be blank. From the parent-most sourcemap, we find every segment, then find the associated segment in the child map, so on. Because you didn't record the segments for this edited map, we couldn't find the locations in the child map.
The new behavior is to detect "line markers", eg those created by
magic-string
by default. Line markers are the only segment on a line, and match[0, SOURCE, LINE, 0]
(with the first 0 being the "output column", and the last 0 being the "source column"). BothSOURCE
andLINE
can be any number,SOURCE
being the child sourcemap that this line was created from, andLINE
being the line in that source.So our hypothetical edit map can now inherit a full sourcemap, even though they're only including segments for the edited lines.
More context available at #116.
Fixes #116.