From 49cd1753e6146679a18dc952eaca0eb3e3dd6967 Mon Sep 17 00:00:00 2001 From: Sebastian McKenzie Date: Fri, 23 Jan 2015 09:26:27 +1100 Subject: [PATCH] throw on unknown options --- lib/6to5/file.js | 30 ++++++++++++++++++++++++++++++ 1 file changed, 30 insertions(+) diff --git a/lib/6to5/file.js b/lib/6to5/file.js index 9420dfda58..b22bf8220e 100644 --- a/lib/6to5/file.js +++ b/lib/6to5/file.js @@ -46,9 +46,39 @@ File.helpers = [ "get" ]; +File.validOptions = [ + "filename", + "fileNameRelative", + "blacklist", + "whitelist", + "optional", + "modules", + "sourceMap", + "sourceMapName", + "sourceFileName", + "sourceRoot", + "moduleRoot", + "moduleIds", + "runtime", + "comments", + "reactCompat", + "keepModuleIdExtensions", + "code", + "ast", + "format", + "playground", + "experimental" +]; + File.normaliseOptions = function (opts) { opts = _.cloneDeep(opts || {}); + for (var key in opts) { + if (File.validOptions.indexOf(key) < 0) { + throw new ReferenceError("Unknown option: " + key); + } + } + _.defaults(opts, { keepModuleIdExtensions: false, experimental: false,