source-map-url

Tools for working with sourceMappingURL comments.

Overview

Tools for working with sourceMappingURL comments.

var sourceMappingURL = require("source-map-url")
 
var code = [
  "!function(){...}();",
  "/*# sourceMappingURL=foo.js.map */"
].join("\n")
 
sourceMappingURL.existsIn(code)
// true 
 
sourceMappingURL.getFrom(code)
// foo.js.map 
 
code = sourceMappingURL.insertBefore(code, "// License: MIT\n")
// !function(){...}(); 
// // License: MIT 
// /*# sourceMappingURL=foo.js.map */ 
 
code = sourceMappingURL.removeFrom(code)
// !function(){...}(); 
// // License: MIT 
 
sourceMappingURL.existsIn(code)
// false 
 
sourceMappingURL.getFrom(code)
// null 
 
code += "//# sourceMappingURL=/other/file.js.map"
// !function(){...}(); 
// // License: MIT 
// //# sourceMappingURL=/other/file.js.map 

Installation

  • npm install source-map-url
  • bower install source-map-url
  • component install lydell/source-map-url

Works with CommonJS, AMD and browser globals, through UMD.

Usage

Returns the url of the sourceMappingURL comment in code. Returns null if there is no such comment.

Returns true if there is a sourceMappingURL comment in code, or false otherwise.

Removes the sourceMappingURL comment in code. Does nothing if there is no such comment. Returns the updated code.

Inserts string before the sourceMappingURL comment in code. Appends string to code if there is no such comment.

Lets you append something to a file without worrying about breaking the sourceMappingURL comment (which needs to be at the end of the file).

The regex that is used to match sourceMappingURL comments. It matches both // and /**/ comments, thus supporting both JavaScript and CSS.

Tests

Start by running npm test, which lints the code and runs the test suite in Node.js.

To run the tests in a browser, run testling (npm install -g testling) or testling -u.

License

The X11 (“MIT”) License.