exorcist
v2.0.0
Published
Externalizes the source map found inside a stream to an external `.js.map` file
Downloads
143,866
Readme
exorcist
Externalizes the source map found inside a stream to an external .map
file or stream.
Works with both JavaScript and CSS input streams.
var browserify = require('browserify')
, path = require('path')
, fs = require('fs')
, exorcist = require('exorcist')
, mapfile = path.join(__dirname, 'bundle.js.map')
// from a file, to a file, and send source map to its own file
browserify({debug: true})
.require(require.resolve('./main'), { entry: true })
.bundle()
.pipe(exorcist(mapfile))
.pipe(fs.createWriteStream(path.join(__dirname, 'bundle.js'), 'utf8'))
// from a stream, to a stream, and send source map to a stream
browserify([readableSourceStream], browserifyOptions)
.bundle()
.pipe(exorcist(targetSourceMapStream, '/url/path/to/replace/source/comment/with/bundle.js'))
.pipe(writableTargetStream)
command line example
browserify main.js --debug | exorcist bundle.js.map > bundle.js
Table of Contents generated with DocToc
Usage
exorcist map_file [options]
Externalizes the source map of the file streamed in.
The source map is written as JSON to map_file, and the original file is streamed out with its
sourceMappingURL set to the path of map_file (or to the value of the --url option).
OPTIONS:
--base -b Base path for calculating relative source paths.
(default: use absolute paths)
--root -r Root URL for loading relative source paths.
Set as sourceRoot in the source map.
(default: '')
--url -u Full URL to source map.
Set as sourceMappingURL in the output stream.
(default: map_file)
--error-on-missing -e Abort with error if no map is found in the stream.
(default: warn but still pipe through source)
EXAMPLE:
Bundle main.js with browserify into bundle.js and externalize the map to bundle.js.map.
browserify main.js --debug | exorcist bundle.js.map > bundle.js
Installation
npm install exorcist
API
generated with docme
Integration with other tools
License
MIT