91 lines
		
	
	
		
			2.4 KiB
		
	
	
	
		
			Markdown
		
	
	
	
	
	
			
		
		
	
	
			91 lines
		
	
	
		
			2.4 KiB
		
	
	
	
		
			Markdown
		
	
	
	
	
	
# source-list-map
 | 
						|
 | 
						|
## API
 | 
						|
 | 
						|
### Example
 | 
						|
 | 
						|
``` js
 | 
						|
var SourceListMap = require("source-list-map").SourceListMap;
 | 
						|
 | 
						|
// Create a new map
 | 
						|
var map = new SourceListMap();
 | 
						|
 | 
						|
// Add generated code that is map line to line to some soure
 | 
						|
map.add("Generated\ncode1\n", "source-code.js", "Orginal\nsource");
 | 
						|
 | 
						|
// Add generated code that isn't mapped
 | 
						|
map.add("Generated\ncode2\n");
 | 
						|
 | 
						|
// Get SourceMap and generated source
 | 
						|
map.toStringWithSourceMap({ file: "generated-code.js" });
 | 
						|
// {
 | 
						|
//   source: 'Generated\ncode1\nGenerated\ncode2\n',
 | 
						|
//   map: {
 | 
						|
//      version: 3,
 | 
						|
//      file: 'generated-code.js',
 | 
						|
//      sources: [ 'source-code.js' ],
 | 
						|
//      sourcesContent: [ 'Orginal\nsource' ],
 | 
						|
//      mappings: 'AAAA;AACA;;;'
 | 
						|
//    }
 | 
						|
// }
 | 
						|
 | 
						|
// Convert existing SourceMap into SourceListMap
 | 
						|
// (Only the first mapping per line is preserved)
 | 
						|
var fromStringWithSourceMap = require("source-list-map").fromStringWithSourceMap;
 | 
						|
var map = fromStringWithSourceMap("Generated\ncode", { version: 3, ... });
 | 
						|
 | 
						|
```
 | 
						|
 | 
						|
### `new SourceListMap()`
 | 
						|
 | 
						|
### `SourceListMap.prototype.add`
 | 
						|
 | 
						|
``` js
 | 
						|
SourceListMap.prototype.add(generatedCode: string)
 | 
						|
SourceListMap.prototype.add(generatedCode: string, source: string, originalSource: string)
 | 
						|
SourceListMap.prototype.add(sourceListMap: SourceListMap)
 | 
						|
```
 | 
						|
 | 
						|
Append some stuff.
 | 
						|
 | 
						|
### `SourceListMap.prototype.prepend`
 | 
						|
 | 
						|
``` js
 | 
						|
SourceListMap.prototype.prepend(generatedCode: string)
 | 
						|
SourceListMap.prototype.prepend(generatedCode: string, source: string, originalSource: string)
 | 
						|
SourceListMap.prototype.prepend(sourceListMap: SourceListMap)
 | 
						|
```
 | 
						|
 | 
						|
Prepend some stuff.
 | 
						|
 | 
						|
### `SourceListMap.prototype.toString()`
 | 
						|
 | 
						|
Get generated code.
 | 
						|
 | 
						|
### `SourceListMap.prototype.toStringWithSourceMap`
 | 
						|
 | 
						|
``` js
 | 
						|
SourceListMap.prototype.toStringWithSourceMap(options: object)
 | 
						|
```
 | 
						|
 | 
						|
Get generated code and SourceMap. `options` can contains `file` property which defines the `file` property of the SourceMap.
 | 
						|
 | 
						|
### `SourceListMap.prototype.mapGeneratedCode`
 | 
						|
 | 
						|
``` js
 | 
						|
SourceListMap.prototype.mapGeneratedCode(fn: function) : SourceListMap
 | 
						|
```
 | 
						|
 | 
						|
Applies `fn` to each generated code block (per line). The returned value is set as new generated code. Returns a new SourceListMap.
 | 
						|
 | 
						|
Removing and adding lines is supported. The SourceMap complexity will increase when doing this.
 | 
						|
 | 
						|
## Test
 | 
						|
 | 
						|
[](https://travis-ci.org/webpack/source-list-map)
 | 
						|
 | 
						|
## License
 | 
						|
 | 
						|
Copyright (c) 2017 JS Foundation
 | 
						|
 | 
						|
MIT (http://www.opensource.org/licenses/mit-license.php) |