Latest Threat Research:SANDWORM_MODE: Shai-Hulud-Style npm Worm Hijacks CI Workflows and Poisons AI Toolchains.Details
Socket
Book a DemoSign in
Socket

@volar/source-map

Package Overview
Dependencies
Maintainers
1
Versions
414
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

@volar/source-map - npm Package Compare versions

Comparing version
2.4.27
to
2.4.28
+1
-1
lib/sourceMap.d.ts

@@ -18,3 +18,3 @@ type CodeRangeKey = 'sourceOffsets' | 'generatedOffsets';

toGeneratedLocation(sourceOffset: number, filter?: (data: Data) => boolean): Generator<readonly [number, Mapping<Data>], void, unknown>;
findMatchingOffsets(offset: number, fromRange: CodeRangeKey, filter?: (data: Data) => boolean): Generator<readonly [number, Mapping<Data>], void, unknown>;
findMatchingOffsets(offset: number, fromRange: CodeRangeKey, filter?: (data: Data) => boolean, preferEnd?: boolean): Generator<readonly [number, Mapping<Data>], void, unknown>;
findMatchingStartEnd(start: number, end: number, fallbackToAnyMatch: boolean, fromRange: CodeRangeKey, filter?: (data: Data) => boolean): Generator<[mappedStart: number, mappedEnd: number, startMapping: Mapping<Data>, endMapping: Mapping<Data>]>;

@@ -21,0 +21,0 @@ private getMemoBasedOnRange;

@@ -22,3 +22,3 @@ "use strict";

}
*findMatchingOffsets(offset, fromRange, filter) {
*findMatchingOffsets(offset, fromRange, filter, preferEnd = false) {
const memo = this.getMemoBasedOnRange(fromRange);

@@ -40,3 +40,3 @@ if (memo.offsets.length === 0) {

}
const mapped = (0, translateOffset_1.translateOffset)(offset, mapping[fromRange], mapping[toRange], getLengths(mapping, fromRange), getLengths(mapping, toRange));
const mapped = (0, translateOffset_1.translateOffset)(offset, mapping[fromRange], mapping[toRange], getLengths(mapping, fromRange), getLengths(mapping, toRange), preferEnd);
if (mapped !== undefined) {

@@ -50,2 +50,3 @@ yield [mapped, mapping];

const toRange = fromRange === 'sourceOffsets' ? 'generatedOffsets' : 'sourceOffsets';
const preferEnd = toRange === 'sourceOffsets';
const mappedStarts = [];

@@ -58,3 +59,3 @@ let hadMatch = false;

mappedStarts.push([mappedStart, mapping]);
const mappedEnd = (0, translateOffset_1.translateOffset)(end, mapping[fromRange], mapping[toRange], getLengths(mapping, fromRange), getLengths(mapping, toRange));
const mappedEnd = (0, translateOffset_1.translateOffset)(end, mapping[fromRange], mapping[toRange], getLengths(mapping, fromRange), getLengths(mapping, toRange), preferEnd);
if (mappedEnd !== undefined) {

@@ -67,3 +68,3 @@ hadMatch = true;

for (const [mappedStart, mappingStart] of mappedStarts) {
for (const [mappedEnd, mappingEnd] of this.findMatchingOffsets(end, fromRange)) {
for (const [mappedEnd, mappingEnd] of this.findMatchingOffsets(end, fromRange, undefined, preferEnd)) {
if (filter && !filter(mappingEnd.data) || mappedEnd < mappedStart) {

@@ -70,0 +71,0 @@ continue;

@@ -1,1 +0,1 @@

export declare function translateOffset(start: number, fromOffsets: number[], toOffsets: number[], fromLengths: number[], toLengths?: number[]): number | undefined;
export declare function translateOffset(start: number, fromOffsets: number[], toOffsets: number[], fromLengths: number[], toLengths?: number[], preferEnd?: boolean): number | undefined;

@@ -5,3 +5,3 @@ "use strict";

let warned = false;
function translateOffset(start, fromOffsets, toOffsets, fromLengths, toLengths = fromLengths) {
function translateOffset(start, fromOffsets, toOffsets, fromLengths, toLengths = fromLengths, preferEnd = false) {
const isSorted = fromOffsets.every((value, index) => index === 0 || fromOffsets[index - 1] <= value);

@@ -15,3 +15,10 @@ if (!isSorted) {

const toOffset = toOffsets[i];
let rangeOffset = Math.min(start - fromOffset, toLength);
let rangeOffset;
const relativePos = start - fromOffset;
if (preferEnd && toLength > fromLength && relativePos === fromLength) {
rangeOffset = toLength;
}
else {
rangeOffset = Math.min(relativePos, toLength);
}
return toOffset + rangeOffset;

@@ -34,3 +41,10 @@ }

const toOffset = toOffsets[mid];
let rangeOffset = Math.min(start - fromOffset, toLength);
let rangeOffset;
const relativePos = start - fromOffset;
if (preferEnd && toLength > fromLength && relativePos === fromLength) {
rangeOffset = toLength;
}
else {
rangeOffset = Math.min(relativePos, toLength);
}
return toOffset + rangeOffset;

@@ -37,0 +51,0 @@ }

{
"name": "@volar/source-map",
"version": "2.4.27",
"version": "2.4.28",
"license": "MIT",

@@ -13,3 +13,4 @@ "files": [

"directory": "packages/source-map"
}
},
"gitHead": "882cd56d46a13d272f34e451f495d3d62251969a"
}