24 lines
699 B
TypeScript
24 lines
699 B
TypeScript
export interface WrnSourceMapEntry {
|
|
generatedLine: number;
|
|
sourceLine: number;
|
|
sourceColumn: number;
|
|
kind: string;
|
|
}
|
|
export interface WrnSourceMap {
|
|
version: 1;
|
|
source: string;
|
|
generated: string;
|
|
mappings: WrnSourceMapEntry[];
|
|
}
|
|
export function createWrnSourceMap(source: string, generated: string): WrnSourceMap {
|
|
const sourceLines = source.split(/\r?\n/).length;
|
|
const generatedLines = generated.split(/\r?\n/).length;
|
|
const mappings = Array.from({ length: Math.min(sourceLines, generatedLines) }, (_, index) => ({
|
|
generatedLine: index + 1,
|
|
sourceLine: index + 1,
|
|
sourceColumn: 1,
|
|
kind: "line",
|
|
}));
|
|
return { version: 1, source, generated, mappings };
|
|
}
|