diff --git a/packages/babel-core/src/transformation/normalize-opts.js b/packages/babel-core/src/transformation/normalize-opts.js index 0b5dedffb2d7..4c53b7aa3517 100644 --- a/packages/babel-core/src/transformation/normalize-opts.js +++ b/packages/babel-core/src/transformation/normalize-opts.js @@ -6,7 +6,10 @@ import type { ResolvedConfig } from "../config"; export default function normalizeOptions(config: ResolvedConfig): {} { const { filename, - filenameRelative = filename || "unknown", + cwd, + filenameRelative = typeof filename === "string" + ? path.relative(cwd, filename) + : "unknown", sourceType = "module", inputSourceMap, sourceMaps = !!inputSourceMap, @@ -14,7 +17,7 @@ export default function normalizeOptions(config: ResolvedConfig): {} { moduleRoot, sourceRoot = moduleRoot, - sourceFileName = filenameRelative, + sourceFileName = path.basename(filenameRelative), comments = true, compact = "auto", diff --git a/packages/babel-core/test/api.js b/packages/babel-core/test/api.js index 0977bad100c8..621b170af4eb 100644 --- a/packages/babel-core/test/api.js +++ b/packages/babel-core/test/api.js @@ -394,6 +394,16 @@ describe("api", function() { }); }); + it("default source map filename", function() { + return transformAsync("var a = 10;", { + cwd: "/some/absolute", + filename: "/some/absolute/file/path.js", + sourceMaps: true, + }).then(function(result) { + expect(result.map.sources).toEqual(["path.js"]); + }); + }); + it("code option false", function() { return transformAsync("foo('bar');", { code: false }).then(function( result,