Source map URL override from programmatic API
This commit is contained in:
committed by
Richard van Velzen
parent
41a9329409
commit
af37ecafe1
19
README.md
19
README.md
@@ -628,6 +628,14 @@ console.log(result.code); // minified output
|
|||||||
console.log(result.map);
|
console.log(result.map);
|
||||||
```
|
```
|
||||||
|
|
||||||
|
To generate a source map with the fromString option, you can also use an object:
|
||||||
|
```javascript
|
||||||
|
var result = UglifyJS.minify({"file1.js": "var a = function () {};"}, {
|
||||||
|
outSourceMap: "out.js.map",
|
||||||
|
fromString: true
|
||||||
|
});
|
||||||
|
```
|
||||||
|
|
||||||
Note that the source map is not saved in a file, it's just returned in
|
Note that the source map is not saved in a file, it's just returned in
|
||||||
`result.map`. The value passed for `outSourceMap` is only used to set the
|
`result.map`. The value passed for `outSourceMap` is only used to set the
|
||||||
`file` attribute in the source map (see [the spec][sm-spec]).
|
`file` attribute in the source map (see [the spec][sm-spec]).
|
||||||
@@ -663,6 +671,17 @@ var result = UglifyJS.minify("compiled.js", {
|
|||||||
The `inSourceMap` is only used if you also request `outSourceMap` (it makes
|
The `inSourceMap` is only used if you also request `outSourceMap` (it makes
|
||||||
no sense otherwise).
|
no sense otherwise).
|
||||||
|
|
||||||
|
To set the source map url, use the `sourceMapUrl` option.
|
||||||
|
If you're using the X-SourceMap header instead, you can just set the `sourceMapUrl` option to false.
|
||||||
|
Defaults to outSourceMap:
|
||||||
|
|
||||||
|
```javascript
|
||||||
|
var result = UglifyJS.minify([ "file1.js" ], {
|
||||||
|
outSourceMap: "out.js.map",
|
||||||
|
sourceMapUrl: "localhost/out.js.map"
|
||||||
|
});
|
||||||
|
```
|
||||||
|
|
||||||
Other options:
|
Other options:
|
||||||
|
|
||||||
- `warnings` (default `false`) — pass `true` to display compressor warnings.
|
- `warnings` (default `false`) — pass `true` to display compressor warnings.
|
||||||
|
|||||||
@@ -43,6 +43,7 @@ exports.minify = function(files, options) {
|
|||||||
outSourceMap : null,
|
outSourceMap : null,
|
||||||
sourceRoot : null,
|
sourceRoot : null,
|
||||||
inSourceMap : null,
|
inSourceMap : null,
|
||||||
|
sourceMapUrl : null,
|
||||||
fromString : false,
|
fromString : false,
|
||||||
warnings : false,
|
warnings : false,
|
||||||
mangle : {},
|
mangle : {},
|
||||||
@@ -136,8 +137,9 @@ exports.minify = function(files, options) {
|
|||||||
var stream = UglifyJS.OutputStream(output);
|
var stream = UglifyJS.OutputStream(output);
|
||||||
toplevel.print(stream);
|
toplevel.print(stream);
|
||||||
|
|
||||||
if (options.outSourceMap && "string" === typeof options.outSourceMap) {
|
var mappingUrlPrefix = "\n//# sourceMappingURL=";
|
||||||
stream += "\n//# sourceMappingURL=" + options.outSourceMap;
|
if (options.outSourceMap && typeof options.outSourceMap === "string" && options.sourceMapUrl !== false) {
|
||||||
|
stream += mappingUrlPrefix + (typeof options.sourceMapUrl === "string" ? options.sourceMapUrl : options.outSourceMap);
|
||||||
}
|
}
|
||||||
|
|
||||||
var source_map = output.source_map;
|
var source_map = output.source_map;
|
||||||
|
|||||||
Reference in New Issue
Block a user