| | import { toDecodedMap, toEncodedMap } from '@jridgewell/gen-mapping'; |
| |
|
| | import type { GenMapping } from '@jridgewell/gen-mapping'; |
| | import type { DecodedSourceMap, EncodedSourceMap, Options } from './types'; |
| |
|
| | |
| | |
| | |
| | |
| | export default class SourceMap { |
| | declare file?: string | null; |
| | declare mappings: EncodedSourceMap['mappings'] | DecodedSourceMap['mappings']; |
| | declare sourceRoot?: string; |
| | declare names: string[]; |
| | declare sources: (string | null)[]; |
| | declare sourcesContent?: (string | null)[]; |
| | declare version: 3; |
| | declare ignoreList: number[] | undefined; |
| |
|
| | constructor(map: GenMapping, options: Options) { |
| | const out = options.decodedMappings ? toDecodedMap(map) : toEncodedMap(map); |
| | this.version = out.version; |
| | this.file = out.file; |
| | this.mappings = out.mappings as SourceMap['mappings']; |
| | this.names = out.names as SourceMap['names']; |
| | this.ignoreList = out.ignoreList as SourceMap['ignoreList']; |
| | this.sourceRoot = out.sourceRoot; |
| |
|
| | this.sources = out.sources as SourceMap['sources']; |
| | if (!options.excludeContent) { |
| | this.sourcesContent = out.sourcesContent as SourceMap['sourcesContent']; |
| | } |
| | } |
| |
|
| | toString(): string { |
| | return JSON.stringify(this); |
| | } |
| | } |
| |
|