add extra transform option
This commit is contained in:
parent
b483c16fe2
commit
bb30a64f8d
@ -16,6 +16,7 @@ import Logger from "./logger";
|
||||
import parse from "../../helpers/parse";
|
||||
import Scope from "../../traversal/scope";
|
||||
import slash from "slash";
|
||||
import clone from "lodash/lang/clone";
|
||||
import * as util from "../../util";
|
||||
import path from "path";
|
||||
import each from "lodash/collection/each";
|
||||
@ -120,7 +121,9 @@ export default class File {
|
||||
throw new Error("Deprecated option " + key + ": " + option.deprecated);
|
||||
}
|
||||
|
||||
if (val == null) val = option.default || val;
|
||||
if (val == null) {
|
||||
val = clone(option.default);
|
||||
}
|
||||
|
||||
var optionParser = optionParsers[option.type];
|
||||
if (optionParser) val = optionParser(key, val);
|
||||
|
||||
@ -15,8 +15,9 @@
|
||||
"hidden": true
|
||||
},
|
||||
|
||||
"pluginOptions": {
|
||||
"hidden": true
|
||||
"extra": {
|
||||
"hidden": true,
|
||||
"default": {}
|
||||
},
|
||||
|
||||
"moduleId": {
|
||||
|
||||
@ -1,3 +1,5 @@
|
||||
require("../../lib/babel/api/node");
|
||||
|
||||
var buildExternalHelpers = require("../../lib/babel/tools/build-external-helpers");
|
||||
var transform = require("../../lib/babel/transformation");
|
||||
var assert = require("assert");
|
||||
@ -21,6 +23,15 @@ suite("api", function () {
|
||||
}, /Unknown helper foob/);
|
||||
});
|
||||
|
||||
test("extra options", function () {
|
||||
var file1 = new File({ extra: { foo: "bar" } });
|
||||
assert.equal(file1.opts.extra.foo, "bar");
|
||||
|
||||
var file2 = new File;
|
||||
var file3 = new File;
|
||||
assert.ok(file2.opts.extra !== file3.opts.extra);
|
||||
});
|
||||
|
||||
suite("buildExternalHelpers", function () {
|
||||
test("all", function () {
|
||||
var script = buildExternalHelpers();
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user