prettier 1.11.0 → 1.11.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/bin-prettier.js +332 -259
- package/index.js +50 -15
- package/package.json +2 -2
- package/parser-typescript.js +1 -1
- package/prettier-1.11.1.tgz +0 -0
- package/prettier-1.11.0.tgz +0 -0
package/bin-prettier.js
CHANGED
|
@@ -190,7 +190,7 @@ function printKeyValues(key, valueOrArray) {
|
|
|
190
190
|
unwrapExports(build);
|
|
191
191
|
|
|
192
192
|
var name = "prettier";
|
|
193
|
-
var version$1 = "1.11.
|
|
193
|
+
var version$1 = "1.11.1";
|
|
194
194
|
var description = "Prettier is an opinionated code formatter";
|
|
195
195
|
var bin = {"prettier":"./bin/prettier.js"};
|
|
196
196
|
var repository = "prettier/prettier";
|
|
@@ -200,7 +200,7 @@ var license = "MIT";
|
|
|
200
200
|
var main = "./index.js";
|
|
201
201
|
var engines = {"node":">=4"};
|
|
202
202
|
var dependencies = {"@babel/code-frame":"7.0.0-beta.35","@glimmer/syntax":"0.30.3","babylon":"7.0.0-beta.34","camelcase":"4.1.0","chalk":"2.1.0","cjk-regex":"1.0.2","cosmiconfig":"3.1.0","dashify":"0.2.2","dedent":"0.7.0","diff":"3.2.0","editorconfig":"0.14.2","editorconfig-to-prettier":"0.0.6","emoji-regex":"6.5.1","escape-string-regexp":"1.0.5","esutils":"2.0.2","find-project-root":"1.1.1","flow-parser":"0.64.0","get-stream":"3.0.0","globby":"6.1.0","graphql":"0.12.3","gray-matter":"3.1.1","html-tag-names":"1.1.1","ignore":"3.3.7","jest-docblock":"22.2.2","json-stable-stringify":"1.0.1","leven":"2.1.0","mem":"1.1.0","minimatch":"3.0.4","minimist":"1.2.0","parse5":"3.0.3","postcss-less":"1.1.3","postcss-media-query-parser":"0.2.3","postcss-scss":"1.0.2","postcss-selector-parser":"2.2.3","postcss-values-parser":"1.3.2","read-pkg-up":"3.0.0","remark-frontmatter":"1.1.0","remark-parse":"5.0.0","resolve":"1.5.0","semver":"5.4.1","string-width":"2.1.1","typescript":"2.8.0-dev.20180222","typescript-eslint-parser":"14.0.0","unicode-regex":"1.0.1","unified":"6.1.6"};
|
|
203
|
-
var devDependencies = {"babel-cli":"6.24.1","babel-preset-es2015":"6.24.1","codecov":"2.2.0","cross-env":"5.0.5","eslint":"4.1.1","eslint-config-prettier":"2.9.0","eslint-friendly-formatter":"3.0.0","eslint-plugin-import":"2.6.1","eslint-plugin-prettier":"2.4.0","eslint-plugin-react":"7.1.0","jest":"21.1.0","mkdirp":"0.5.1","prettier":"1.
|
|
203
|
+
var devDependencies = {"babel-cli":"6.24.1","babel-preset-es2015":"6.24.1","codecov":"2.2.0","cross-env":"5.0.5","eslint":"4.1.1","eslint-config-prettier":"2.9.0","eslint-friendly-formatter":"3.0.0","eslint-plugin-import":"2.6.1","eslint-plugin-prettier":"2.4.0","eslint-plugin-react":"7.1.0","jest":"21.1.0","mkdirp":"0.5.1","prettier":"1.11.0","prettylint":"1.0.0","rimraf":"2.6.2","rollup":"0.47.6","rollup-plugin-commonjs":"8.2.6","rollup-plugin-json":"2.1.1","rollup-plugin-node-builtins":"2.0.0","rollup-plugin-node-globals":"1.1.0","rollup-plugin-node-resolve":"2.0.0","rollup-plugin-replace":"1.2.1","shelljs":"0.8.1","snapshot-diff":"0.2.2","strip-ansi":"4.0.0","sw-toolbox":"3.6.0","tempy":"0.2.1","uglify-es":"3.0.28","webpack":"2.6.1"};
|
|
204
204
|
var scripts = {"prepublishOnly":"echo \"Error: must publish from dist/\" && exit 1","prepare-release":"yarn && yarn build && yarn test:dist","test":"jest","test:dist":"node ./scripts/test-dist.js","test-integration":"jest tests_integration","lint":"cross-env EFF_NO_LINK_RULES=true eslint . --format node_modules/eslint-friendly-formatter","lint-docs":"prettylint {.,docs,website,website/blog}/*.md","build":"node ./scripts/build/build.js","build-docs":"node ./scripts/build/build-docs.js","check-deps":"node ./scripts/check-deps.js"};
|
|
205
205
|
var _package = {
|
|
206
206
|
name: name,
|
|
@@ -19429,7 +19429,7 @@ function loadPlugins(plugins) {
|
|
|
19429
19429
|
}
|
|
19430
19430
|
|
|
19431
19431
|
const pluginPath = resolve.sync(plugin, { basedir: process.cwd() });
|
|
19432
|
-
return require(pluginPath);
|
|
19432
|
+
return Object.assign({ name: plugin }, require(pluginPath));
|
|
19433
19433
|
});
|
|
19434
19434
|
|
|
19435
19435
|
return deduplicate(internalPlugins.concat(externalPlugins));
|
|
@@ -19910,6 +19910,16 @@ function getSupportInfo$1(version, opts) {
|
|
|
19910
19910
|
}
|
|
19911
19911
|
|
|
19912
19912
|
return newOption;
|
|
19913
|
+
})
|
|
19914
|
+
.map(option => {
|
|
19915
|
+
const filteredPlugins = plugins.filter(
|
|
19916
|
+
plugin => plugin.defaultOptions && plugin.defaultOptions[option.name]
|
|
19917
|
+
);
|
|
19918
|
+
const pluginDefaults = filteredPlugins.reduce((reduced, plugin) => {
|
|
19919
|
+
reduced[plugin.name] = plugin.defaultOptions[option.name];
|
|
19920
|
+
return reduced;
|
|
19921
|
+
}, {});
|
|
19922
|
+
return Object.assign(option, { pluginDefaults });
|
|
19913
19923
|
});
|
|
19914
19924
|
|
|
19915
19925
|
const usePostCssParser = semver.lt(version, "1.7.1");
|
|
@@ -23184,25 +23194,23 @@ function parse$4(text, opts) {
|
|
|
23184
23194
|
|
|
23185
23195
|
var parser$3 = { parse: parse$4, resolveParser: resolveParser$1 };
|
|
23186
23196
|
|
|
23187
|
-
function
|
|
23197
|
+
function getPlugin(options) {
|
|
23188
23198
|
const astFormat = options.astFormat;
|
|
23189
23199
|
|
|
23190
23200
|
if (!astFormat) {
|
|
23191
|
-
throw new Error("
|
|
23201
|
+
throw new Error("getPlugin() requires astFormat to be set");
|
|
23192
23202
|
}
|
|
23193
23203
|
const printerPlugin = options.plugins.find(
|
|
23194
23204
|
plugin => plugin.printers[astFormat]
|
|
23195
23205
|
);
|
|
23196
23206
|
if (!printerPlugin) {
|
|
23197
|
-
throw new Error(
|
|
23198
|
-
`Couldn't find printer plugin for AST format "${astFormat}"`
|
|
23199
|
-
);
|
|
23207
|
+
throw new Error(`Couldn't find plugin for AST format "${astFormat}"`);
|
|
23200
23208
|
}
|
|
23201
23209
|
|
|
23202
|
-
return printerPlugin
|
|
23210
|
+
return printerPlugin;
|
|
23203
23211
|
}
|
|
23204
23212
|
|
|
23205
|
-
var
|
|
23213
|
+
var getPlugin_1 = getPlugin;
|
|
23206
23214
|
|
|
23207
23215
|
const getSupportInfo$2 = support.getSupportInfo;
|
|
23208
23216
|
|
|
@@ -23229,7 +23237,8 @@ function normalize$2(options, opts) {
|
|
|
23229
23237
|
const supportOptions = getSupportInfo$2(null, {
|
|
23230
23238
|
plugins,
|
|
23231
23239
|
pluginsLoaded: true,
|
|
23232
|
-
showUnreleased: true
|
|
23240
|
+
showUnreleased: true,
|
|
23241
|
+
showDeprecated: true
|
|
23233
23242
|
}).options;
|
|
23234
23243
|
const defaults = supportOptions.reduce(
|
|
23235
23244
|
(reduced, optionInfo) =>
|
|
@@ -23252,15 +23261,41 @@ function normalize$2(options, opts) {
|
|
|
23252
23261
|
}
|
|
23253
23262
|
}
|
|
23254
23263
|
|
|
23255
|
-
const parser = resolveParser(
|
|
23264
|
+
const parser = resolveParser(
|
|
23265
|
+
!rawOptions.parser
|
|
23266
|
+
? rawOptions
|
|
23267
|
+
: // handle deprecated parsers
|
|
23268
|
+
optionsNormalizer.normalizeApiOptions(
|
|
23269
|
+
rawOptions,
|
|
23270
|
+
[supportOptions.find(x => x.name === "parser")],
|
|
23271
|
+
{ passThrough: true, logger: false }
|
|
23272
|
+
)
|
|
23273
|
+
);
|
|
23256
23274
|
rawOptions.astFormat = parser.astFormat;
|
|
23257
23275
|
rawOptions.locEnd = parser.locEnd;
|
|
23258
23276
|
rawOptions.locStart = parser.locStart;
|
|
23259
|
-
rawOptions.printer = getPrinter_1(rawOptions);
|
|
23260
23277
|
|
|
23261
|
-
|
|
23278
|
+
const plugin = getPlugin_1(rawOptions);
|
|
23279
|
+
rawOptions.printer = plugin.printers[rawOptions.astFormat];
|
|
23280
|
+
|
|
23281
|
+
const pluginDefaults = supportOptions
|
|
23282
|
+
.filter(
|
|
23283
|
+
optionInfo =>
|
|
23284
|
+
optionInfo.pluginDefaults && optionInfo.pluginDefaults[plugin.name]
|
|
23285
|
+
)
|
|
23286
|
+
.reduce(
|
|
23287
|
+
(reduced, optionInfo) =>
|
|
23288
|
+
Object.assign(reduced, {
|
|
23289
|
+
[optionInfo.name]: optionInfo.pluginDefaults[plugin.name]
|
|
23290
|
+
}),
|
|
23291
|
+
{}
|
|
23292
|
+
);
|
|
23293
|
+
|
|
23294
|
+
const mixedDefaults = Object.assign({}, defaults, pluginDefaults);
|
|
23295
|
+
|
|
23296
|
+
Object.keys(mixedDefaults).forEach(k => {
|
|
23262
23297
|
if (rawOptions[k] == null) {
|
|
23263
|
-
rawOptions[k] =
|
|
23298
|
+
rawOptions[k] = mixedDefaults[k];
|
|
23264
23299
|
}
|
|
23265
23300
|
});
|
|
23266
23301
|
|
|
@@ -33452,241 +33487,6 @@ var dashify = function dashify(str) {
|
|
|
33452
33487
|
return str.toLowerCase();
|
|
33453
33488
|
};
|
|
33454
33489
|
|
|
33455
|
-
var minimist = function (args, opts) {
|
|
33456
|
-
if (!opts) opts = {};
|
|
33457
|
-
|
|
33458
|
-
var flags = { bools : {}, strings : {}, unknownFn: null };
|
|
33459
|
-
|
|
33460
|
-
if (typeof opts['unknown'] === 'function') {
|
|
33461
|
-
flags.unknownFn = opts['unknown'];
|
|
33462
|
-
}
|
|
33463
|
-
|
|
33464
|
-
if (typeof opts['boolean'] === 'boolean' && opts['boolean']) {
|
|
33465
|
-
flags.allBools = true;
|
|
33466
|
-
} else {
|
|
33467
|
-
[].concat(opts['boolean']).filter(Boolean).forEach(function (key) {
|
|
33468
|
-
flags.bools[key] = true;
|
|
33469
|
-
});
|
|
33470
|
-
}
|
|
33471
|
-
|
|
33472
|
-
var aliases = {};
|
|
33473
|
-
Object.keys(opts.alias || {}).forEach(function (key) {
|
|
33474
|
-
aliases[key] = [].concat(opts.alias[key]);
|
|
33475
|
-
aliases[key].forEach(function (x) {
|
|
33476
|
-
aliases[x] = [key].concat(aliases[key].filter(function (y) {
|
|
33477
|
-
return x !== y;
|
|
33478
|
-
}));
|
|
33479
|
-
});
|
|
33480
|
-
});
|
|
33481
|
-
|
|
33482
|
-
[].concat(opts.string).filter(Boolean).forEach(function (key) {
|
|
33483
|
-
flags.strings[key] = true;
|
|
33484
|
-
if (aliases[key]) {
|
|
33485
|
-
flags.strings[aliases[key]] = true;
|
|
33486
|
-
}
|
|
33487
|
-
});
|
|
33488
|
-
|
|
33489
|
-
var defaults = opts['default'] || {};
|
|
33490
|
-
|
|
33491
|
-
var argv = { _ : [] };
|
|
33492
|
-
Object.keys(flags.bools).forEach(function (key) {
|
|
33493
|
-
setArg(key, defaults[key] === undefined ? false : defaults[key]);
|
|
33494
|
-
});
|
|
33495
|
-
|
|
33496
|
-
var notFlags = [];
|
|
33497
|
-
|
|
33498
|
-
if (args.indexOf('--') !== -1) {
|
|
33499
|
-
notFlags = args.slice(args.indexOf('--')+1);
|
|
33500
|
-
args = args.slice(0, args.indexOf('--'));
|
|
33501
|
-
}
|
|
33502
|
-
|
|
33503
|
-
function argDefined(key, arg) {
|
|
33504
|
-
return (flags.allBools && /^--[^=]+$/.test(arg)) ||
|
|
33505
|
-
flags.strings[key] || flags.bools[key] || aliases[key];
|
|
33506
|
-
}
|
|
33507
|
-
|
|
33508
|
-
function setArg (key, val, arg) {
|
|
33509
|
-
if (arg && flags.unknownFn && !argDefined(key, arg)) {
|
|
33510
|
-
if (flags.unknownFn(arg) === false) return;
|
|
33511
|
-
}
|
|
33512
|
-
|
|
33513
|
-
var value = !flags.strings[key] && isNumber(val)
|
|
33514
|
-
? Number(val) : val;
|
|
33515
|
-
setKey(argv, key.split('.'), value);
|
|
33516
|
-
|
|
33517
|
-
(aliases[key] || []).forEach(function (x) {
|
|
33518
|
-
setKey(argv, x.split('.'), value);
|
|
33519
|
-
});
|
|
33520
|
-
}
|
|
33521
|
-
|
|
33522
|
-
function setKey (obj, keys, value) {
|
|
33523
|
-
var o = obj;
|
|
33524
|
-
keys.slice(0,-1).forEach(function (key) {
|
|
33525
|
-
if (o[key] === undefined) o[key] = {};
|
|
33526
|
-
o = o[key];
|
|
33527
|
-
});
|
|
33528
|
-
|
|
33529
|
-
var key = keys[keys.length - 1];
|
|
33530
|
-
if (o[key] === undefined || flags.bools[key] || typeof o[key] === 'boolean') {
|
|
33531
|
-
o[key] = value;
|
|
33532
|
-
}
|
|
33533
|
-
else if (Array.isArray(o[key])) {
|
|
33534
|
-
o[key].push(value);
|
|
33535
|
-
}
|
|
33536
|
-
else {
|
|
33537
|
-
o[key] = [ o[key], value ];
|
|
33538
|
-
}
|
|
33539
|
-
}
|
|
33540
|
-
|
|
33541
|
-
function aliasIsBoolean(key) {
|
|
33542
|
-
return aliases[key].some(function (x) {
|
|
33543
|
-
return flags.bools[x];
|
|
33544
|
-
});
|
|
33545
|
-
}
|
|
33546
|
-
|
|
33547
|
-
for (var i = 0; i < args.length; i++) {
|
|
33548
|
-
var arg = args[i];
|
|
33549
|
-
|
|
33550
|
-
if (/^--.+=/.test(arg)) {
|
|
33551
|
-
// Using [\s\S] instead of . because js doesn't support the
|
|
33552
|
-
// 'dotall' regex modifier. See:
|
|
33553
|
-
// http://stackoverflow.com/a/1068308/13216
|
|
33554
|
-
var m = arg.match(/^--([^=]+)=([\s\S]*)$/);
|
|
33555
|
-
var key = m[1];
|
|
33556
|
-
var value = m[2];
|
|
33557
|
-
if (flags.bools[key]) {
|
|
33558
|
-
value = value !== 'false';
|
|
33559
|
-
}
|
|
33560
|
-
setArg(key, value, arg);
|
|
33561
|
-
}
|
|
33562
|
-
else if (/^--no-.+/.test(arg)) {
|
|
33563
|
-
var key = arg.match(/^--no-(.+)/)[1];
|
|
33564
|
-
setArg(key, false, arg);
|
|
33565
|
-
}
|
|
33566
|
-
else if (/^--.+/.test(arg)) {
|
|
33567
|
-
var key = arg.match(/^--(.+)/)[1];
|
|
33568
|
-
var next = args[i + 1];
|
|
33569
|
-
if (next !== undefined && !/^-/.test(next)
|
|
33570
|
-
&& !flags.bools[key]
|
|
33571
|
-
&& !flags.allBools
|
|
33572
|
-
&& (aliases[key] ? !aliasIsBoolean(key) : true)) {
|
|
33573
|
-
setArg(key, next, arg);
|
|
33574
|
-
i++;
|
|
33575
|
-
}
|
|
33576
|
-
else if (/^(true|false)$/.test(next)) {
|
|
33577
|
-
setArg(key, next === 'true', arg);
|
|
33578
|
-
i++;
|
|
33579
|
-
}
|
|
33580
|
-
else {
|
|
33581
|
-
setArg(key, flags.strings[key] ? '' : true, arg);
|
|
33582
|
-
}
|
|
33583
|
-
}
|
|
33584
|
-
else if (/^-[^-]+/.test(arg)) {
|
|
33585
|
-
var letters = arg.slice(1,-1).split('');
|
|
33586
|
-
|
|
33587
|
-
var broken = false;
|
|
33588
|
-
for (var j = 0; j < letters.length; j++) {
|
|
33589
|
-
var next = arg.slice(j+2);
|
|
33590
|
-
|
|
33591
|
-
if (next === '-') {
|
|
33592
|
-
setArg(letters[j], next, arg);
|
|
33593
|
-
continue;
|
|
33594
|
-
}
|
|
33595
|
-
|
|
33596
|
-
if (/[A-Za-z]/.test(letters[j]) && /=/.test(next)) {
|
|
33597
|
-
setArg(letters[j], next.split('=')[1], arg);
|
|
33598
|
-
broken = true;
|
|
33599
|
-
break;
|
|
33600
|
-
}
|
|
33601
|
-
|
|
33602
|
-
if (/[A-Za-z]/.test(letters[j])
|
|
33603
|
-
&& /-?\d+(\.\d*)?(e-?\d+)?$/.test(next)) {
|
|
33604
|
-
setArg(letters[j], next, arg);
|
|
33605
|
-
broken = true;
|
|
33606
|
-
break;
|
|
33607
|
-
}
|
|
33608
|
-
|
|
33609
|
-
if (letters[j+1] && letters[j+1].match(/\W/)) {
|
|
33610
|
-
setArg(letters[j], arg.slice(j+2), arg);
|
|
33611
|
-
broken = true;
|
|
33612
|
-
break;
|
|
33613
|
-
}
|
|
33614
|
-
else {
|
|
33615
|
-
setArg(letters[j], flags.strings[letters[j]] ? '' : true, arg);
|
|
33616
|
-
}
|
|
33617
|
-
}
|
|
33618
|
-
|
|
33619
|
-
var key = arg.slice(-1)[0];
|
|
33620
|
-
if (!broken && key !== '-') {
|
|
33621
|
-
if (args[i+1] && !/^(-|--)[^-]/.test(args[i+1])
|
|
33622
|
-
&& !flags.bools[key]
|
|
33623
|
-
&& (aliases[key] ? !aliasIsBoolean(key) : true)) {
|
|
33624
|
-
setArg(key, args[i+1], arg);
|
|
33625
|
-
i++;
|
|
33626
|
-
}
|
|
33627
|
-
else if (args[i+1] && /true|false/.test(args[i+1])) {
|
|
33628
|
-
setArg(key, args[i+1] === 'true', arg);
|
|
33629
|
-
i++;
|
|
33630
|
-
}
|
|
33631
|
-
else {
|
|
33632
|
-
setArg(key, flags.strings[key] ? '' : true, arg);
|
|
33633
|
-
}
|
|
33634
|
-
}
|
|
33635
|
-
}
|
|
33636
|
-
else {
|
|
33637
|
-
if (!flags.unknownFn || flags.unknownFn(arg) !== false) {
|
|
33638
|
-
argv._.push(
|
|
33639
|
-
flags.strings['_'] || !isNumber(arg) ? arg : Number(arg)
|
|
33640
|
-
);
|
|
33641
|
-
}
|
|
33642
|
-
if (opts.stopEarly) {
|
|
33643
|
-
argv._.push.apply(argv._, args.slice(i + 1));
|
|
33644
|
-
break;
|
|
33645
|
-
}
|
|
33646
|
-
}
|
|
33647
|
-
}
|
|
33648
|
-
|
|
33649
|
-
Object.keys(defaults).forEach(function (key) {
|
|
33650
|
-
if (!hasKey(argv, key.split('.'))) {
|
|
33651
|
-
setKey(argv, key.split('.'), defaults[key]);
|
|
33652
|
-
|
|
33653
|
-
(aliases[key] || []).forEach(function (x) {
|
|
33654
|
-
setKey(argv, x.split('.'), defaults[key]);
|
|
33655
|
-
});
|
|
33656
|
-
}
|
|
33657
|
-
});
|
|
33658
|
-
|
|
33659
|
-
if (opts['--']) {
|
|
33660
|
-
argv['--'] = new Array();
|
|
33661
|
-
notFlags.forEach(function(key) {
|
|
33662
|
-
argv['--'].push(key);
|
|
33663
|
-
});
|
|
33664
|
-
}
|
|
33665
|
-
else {
|
|
33666
|
-
notFlags.forEach(function(key) {
|
|
33667
|
-
argv._.push(key);
|
|
33668
|
-
});
|
|
33669
|
-
}
|
|
33670
|
-
|
|
33671
|
-
return argv;
|
|
33672
|
-
};
|
|
33673
|
-
|
|
33674
|
-
function hasKey (obj, keys) {
|
|
33675
|
-
var o = obj;
|
|
33676
|
-
keys.slice(0,-1).forEach(function (key) {
|
|
33677
|
-
o = (o[key] || {});
|
|
33678
|
-
});
|
|
33679
|
-
|
|
33680
|
-
var key = keys[keys.length - 1];
|
|
33681
|
-
return key in o;
|
|
33682
|
-
}
|
|
33683
|
-
|
|
33684
|
-
function isNumber (x) {
|
|
33685
|
-
if (typeof x === 'number') return true;
|
|
33686
|
-
if (/^0x[0-9a-f]+$/i.test(x)) return true;
|
|
33687
|
-
return /^[-+]?(?:\d+(?:\.\d*)?|\.\d+)(e[-+]?\d+)?$/.test(x);
|
|
33688
|
-
}
|
|
33689
|
-
|
|
33690
33490
|
var PENDING = 'pending';
|
|
33691
33491
|
var SETTLED = 'settled';
|
|
33692
33492
|
var FULFILLED = 'fulfilled';
|
|
@@ -37413,6 +37213,273 @@ var supportsColor_1 = supportsColor$3;
|
|
|
37413
37213
|
|
|
37414
37214
|
chalk$2.supportsColor = supportsColor_1;
|
|
37415
37215
|
|
|
37216
|
+
var minimist = function (args, opts) {
|
|
37217
|
+
if (!opts) opts = {};
|
|
37218
|
+
|
|
37219
|
+
var flags = { bools : {}, strings : {}, unknownFn: null };
|
|
37220
|
+
|
|
37221
|
+
if (typeof opts['unknown'] === 'function') {
|
|
37222
|
+
flags.unknownFn = opts['unknown'];
|
|
37223
|
+
}
|
|
37224
|
+
|
|
37225
|
+
if (typeof opts['boolean'] === 'boolean' && opts['boolean']) {
|
|
37226
|
+
flags.allBools = true;
|
|
37227
|
+
} else {
|
|
37228
|
+
[].concat(opts['boolean']).filter(Boolean).forEach(function (key) {
|
|
37229
|
+
flags.bools[key] = true;
|
|
37230
|
+
});
|
|
37231
|
+
}
|
|
37232
|
+
|
|
37233
|
+
var aliases = {};
|
|
37234
|
+
Object.keys(opts.alias || {}).forEach(function (key) {
|
|
37235
|
+
aliases[key] = [].concat(opts.alias[key]);
|
|
37236
|
+
aliases[key].forEach(function (x) {
|
|
37237
|
+
aliases[x] = [key].concat(aliases[key].filter(function (y) {
|
|
37238
|
+
return x !== y;
|
|
37239
|
+
}));
|
|
37240
|
+
});
|
|
37241
|
+
});
|
|
37242
|
+
|
|
37243
|
+
[].concat(opts.string).filter(Boolean).forEach(function (key) {
|
|
37244
|
+
flags.strings[key] = true;
|
|
37245
|
+
if (aliases[key]) {
|
|
37246
|
+
flags.strings[aliases[key]] = true;
|
|
37247
|
+
}
|
|
37248
|
+
});
|
|
37249
|
+
|
|
37250
|
+
var defaults = opts['default'] || {};
|
|
37251
|
+
|
|
37252
|
+
var argv = { _ : [] };
|
|
37253
|
+
Object.keys(flags.bools).forEach(function (key) {
|
|
37254
|
+
setArg(key, defaults[key] === undefined ? false : defaults[key]);
|
|
37255
|
+
});
|
|
37256
|
+
|
|
37257
|
+
var notFlags = [];
|
|
37258
|
+
|
|
37259
|
+
if (args.indexOf('--') !== -1) {
|
|
37260
|
+
notFlags = args.slice(args.indexOf('--')+1);
|
|
37261
|
+
args = args.slice(0, args.indexOf('--'));
|
|
37262
|
+
}
|
|
37263
|
+
|
|
37264
|
+
function argDefined(key, arg) {
|
|
37265
|
+
return (flags.allBools && /^--[^=]+$/.test(arg)) ||
|
|
37266
|
+
flags.strings[key] || flags.bools[key] || aliases[key];
|
|
37267
|
+
}
|
|
37268
|
+
|
|
37269
|
+
function setArg (key, val, arg) {
|
|
37270
|
+
if (arg && flags.unknownFn && !argDefined(key, arg)) {
|
|
37271
|
+
if (flags.unknownFn(arg) === false) return;
|
|
37272
|
+
}
|
|
37273
|
+
|
|
37274
|
+
var value = !flags.strings[key] && isNumber(val)
|
|
37275
|
+
? Number(val) : val;
|
|
37276
|
+
setKey(argv, key.split('.'), value);
|
|
37277
|
+
|
|
37278
|
+
(aliases[key] || []).forEach(function (x) {
|
|
37279
|
+
setKey(argv, x.split('.'), value);
|
|
37280
|
+
});
|
|
37281
|
+
}
|
|
37282
|
+
|
|
37283
|
+
function setKey (obj, keys, value) {
|
|
37284
|
+
var o = obj;
|
|
37285
|
+
keys.slice(0,-1).forEach(function (key) {
|
|
37286
|
+
if (o[key] === undefined) o[key] = {};
|
|
37287
|
+
o = o[key];
|
|
37288
|
+
});
|
|
37289
|
+
|
|
37290
|
+
var key = keys[keys.length - 1];
|
|
37291
|
+
if (o[key] === undefined || flags.bools[key] || typeof o[key] === 'boolean') {
|
|
37292
|
+
o[key] = value;
|
|
37293
|
+
}
|
|
37294
|
+
else if (Array.isArray(o[key])) {
|
|
37295
|
+
o[key].push(value);
|
|
37296
|
+
}
|
|
37297
|
+
else {
|
|
37298
|
+
o[key] = [ o[key], value ];
|
|
37299
|
+
}
|
|
37300
|
+
}
|
|
37301
|
+
|
|
37302
|
+
function aliasIsBoolean(key) {
|
|
37303
|
+
return aliases[key].some(function (x) {
|
|
37304
|
+
return flags.bools[x];
|
|
37305
|
+
});
|
|
37306
|
+
}
|
|
37307
|
+
|
|
37308
|
+
for (var i = 0; i < args.length; i++) {
|
|
37309
|
+
var arg = args[i];
|
|
37310
|
+
|
|
37311
|
+
if (/^--.+=/.test(arg)) {
|
|
37312
|
+
// Using [\s\S] instead of . because js doesn't support the
|
|
37313
|
+
// 'dotall' regex modifier. See:
|
|
37314
|
+
// http://stackoverflow.com/a/1068308/13216
|
|
37315
|
+
var m = arg.match(/^--([^=]+)=([\s\S]*)$/);
|
|
37316
|
+
var key = m[1];
|
|
37317
|
+
var value = m[2];
|
|
37318
|
+
if (flags.bools[key]) {
|
|
37319
|
+
value = value !== 'false';
|
|
37320
|
+
}
|
|
37321
|
+
setArg(key, value, arg);
|
|
37322
|
+
}
|
|
37323
|
+
else if (/^--no-.+/.test(arg)) {
|
|
37324
|
+
var key = arg.match(/^--no-(.+)/)[1];
|
|
37325
|
+
setArg(key, false, arg);
|
|
37326
|
+
}
|
|
37327
|
+
else if (/^--.+/.test(arg)) {
|
|
37328
|
+
var key = arg.match(/^--(.+)/)[1];
|
|
37329
|
+
var next = args[i + 1];
|
|
37330
|
+
if (next !== undefined && !/^-/.test(next)
|
|
37331
|
+
&& !flags.bools[key]
|
|
37332
|
+
&& !flags.allBools
|
|
37333
|
+
&& (aliases[key] ? !aliasIsBoolean(key) : true)) {
|
|
37334
|
+
setArg(key, next, arg);
|
|
37335
|
+
i++;
|
|
37336
|
+
}
|
|
37337
|
+
else if (/^(true|false)$/.test(next)) {
|
|
37338
|
+
setArg(key, next === 'true', arg);
|
|
37339
|
+
i++;
|
|
37340
|
+
}
|
|
37341
|
+
else {
|
|
37342
|
+
setArg(key, flags.strings[key] ? '' : true, arg);
|
|
37343
|
+
}
|
|
37344
|
+
}
|
|
37345
|
+
else if (/^-[^-]+/.test(arg)) {
|
|
37346
|
+
var letters = arg.slice(1,-1).split('');
|
|
37347
|
+
|
|
37348
|
+
var broken = false;
|
|
37349
|
+
for (var j = 0; j < letters.length; j++) {
|
|
37350
|
+
var next = arg.slice(j+2);
|
|
37351
|
+
|
|
37352
|
+
if (next === '-') {
|
|
37353
|
+
setArg(letters[j], next, arg);
|
|
37354
|
+
continue;
|
|
37355
|
+
}
|
|
37356
|
+
|
|
37357
|
+
if (/[A-Za-z]/.test(letters[j]) && /=/.test(next)) {
|
|
37358
|
+
setArg(letters[j], next.split('=')[1], arg);
|
|
37359
|
+
broken = true;
|
|
37360
|
+
break;
|
|
37361
|
+
}
|
|
37362
|
+
|
|
37363
|
+
if (/[A-Za-z]/.test(letters[j])
|
|
37364
|
+
&& /-?\d+(\.\d*)?(e-?\d+)?$/.test(next)) {
|
|
37365
|
+
setArg(letters[j], next, arg);
|
|
37366
|
+
broken = true;
|
|
37367
|
+
break;
|
|
37368
|
+
}
|
|
37369
|
+
|
|
37370
|
+
if (letters[j+1] && letters[j+1].match(/\W/)) {
|
|
37371
|
+
setArg(letters[j], arg.slice(j+2), arg);
|
|
37372
|
+
broken = true;
|
|
37373
|
+
break;
|
|
37374
|
+
}
|
|
37375
|
+
else {
|
|
37376
|
+
setArg(letters[j], flags.strings[letters[j]] ? '' : true, arg);
|
|
37377
|
+
}
|
|
37378
|
+
}
|
|
37379
|
+
|
|
37380
|
+
var key = arg.slice(-1)[0];
|
|
37381
|
+
if (!broken && key !== '-') {
|
|
37382
|
+
if (args[i+1] && !/^(-|--)[^-]/.test(args[i+1])
|
|
37383
|
+
&& !flags.bools[key]
|
|
37384
|
+
&& (aliases[key] ? !aliasIsBoolean(key) : true)) {
|
|
37385
|
+
setArg(key, args[i+1], arg);
|
|
37386
|
+
i++;
|
|
37387
|
+
}
|
|
37388
|
+
else if (args[i+1] && /true|false/.test(args[i+1])) {
|
|
37389
|
+
setArg(key, args[i+1] === 'true', arg);
|
|
37390
|
+
i++;
|
|
37391
|
+
}
|
|
37392
|
+
else {
|
|
37393
|
+
setArg(key, flags.strings[key] ? '' : true, arg);
|
|
37394
|
+
}
|
|
37395
|
+
}
|
|
37396
|
+
}
|
|
37397
|
+
else {
|
|
37398
|
+
if (!flags.unknownFn || flags.unknownFn(arg) !== false) {
|
|
37399
|
+
argv._.push(
|
|
37400
|
+
flags.strings['_'] || !isNumber(arg) ? arg : Number(arg)
|
|
37401
|
+
);
|
|
37402
|
+
}
|
|
37403
|
+
if (opts.stopEarly) {
|
|
37404
|
+
argv._.push.apply(argv._, args.slice(i + 1));
|
|
37405
|
+
break;
|
|
37406
|
+
}
|
|
37407
|
+
}
|
|
37408
|
+
}
|
|
37409
|
+
|
|
37410
|
+
Object.keys(defaults).forEach(function (key) {
|
|
37411
|
+
if (!hasKey(argv, key.split('.'))) {
|
|
37412
|
+
setKey(argv, key.split('.'), defaults[key]);
|
|
37413
|
+
|
|
37414
|
+
(aliases[key] || []).forEach(function (x) {
|
|
37415
|
+
setKey(argv, x.split('.'), defaults[key]);
|
|
37416
|
+
});
|
|
37417
|
+
}
|
|
37418
|
+
});
|
|
37419
|
+
|
|
37420
|
+
if (opts['--']) {
|
|
37421
|
+
argv['--'] = new Array();
|
|
37422
|
+
notFlags.forEach(function(key) {
|
|
37423
|
+
argv['--'].push(key);
|
|
37424
|
+
});
|
|
37425
|
+
}
|
|
37426
|
+
else {
|
|
37427
|
+
notFlags.forEach(function(key) {
|
|
37428
|
+
argv._.push(key);
|
|
37429
|
+
});
|
|
37430
|
+
}
|
|
37431
|
+
|
|
37432
|
+
return argv;
|
|
37433
|
+
};
|
|
37434
|
+
|
|
37435
|
+
function hasKey (obj, keys) {
|
|
37436
|
+
var o = obj;
|
|
37437
|
+
keys.slice(0,-1).forEach(function (key) {
|
|
37438
|
+
o = (o[key] || {});
|
|
37439
|
+
});
|
|
37440
|
+
|
|
37441
|
+
var key = keys[keys.length - 1];
|
|
37442
|
+
return key in o;
|
|
37443
|
+
}
|
|
37444
|
+
|
|
37445
|
+
function isNumber (x) {
|
|
37446
|
+
if (typeof x === 'number') return true;
|
|
37447
|
+
if (/^0x[0-9a-f]+$/i.test(x)) return true;
|
|
37448
|
+
return /^[-+]?(?:\d+(?:\.\d*)?|\.\d+)(e[-+]?\d+)?$/.test(x);
|
|
37449
|
+
}
|
|
37450
|
+
|
|
37451
|
+
const PLACEHOLDER = null;
|
|
37452
|
+
|
|
37453
|
+
/**
|
|
37454
|
+
* unspecified boolean flag without default value is parsed as `undefined` instead of `false`
|
|
37455
|
+
*/
|
|
37456
|
+
var minimist_1 = function(args, options) {
|
|
37457
|
+
const boolean = options.boolean || [];
|
|
37458
|
+
const defaults = options.default || {};
|
|
37459
|
+
|
|
37460
|
+
const booleanWithoutDefault = boolean.filter(key => !(key in defaults));
|
|
37461
|
+
const newDefaults = Object.assign(
|
|
37462
|
+
{},
|
|
37463
|
+
defaults,
|
|
37464
|
+
booleanWithoutDefault.reduce(
|
|
37465
|
+
(reduced, key) => Object.assign(reduced, { [key]: PLACEHOLDER }),
|
|
37466
|
+
{}
|
|
37467
|
+
)
|
|
37468
|
+
);
|
|
37469
|
+
|
|
37470
|
+
const parsed = minimist(
|
|
37471
|
+
args,
|
|
37472
|
+
Object.assign({}, options, { default: newDefaults })
|
|
37473
|
+
);
|
|
37474
|
+
|
|
37475
|
+
return Object.keys(parsed).reduce((reduced, key) => {
|
|
37476
|
+
if (parsed[key] !== PLACEHOLDER) {
|
|
37477
|
+
reduced[key] = parsed[key];
|
|
37478
|
+
}
|
|
37479
|
+
return reduced;
|
|
37480
|
+
}, {});
|
|
37481
|
+
};
|
|
37482
|
+
|
|
37416
37483
|
function cleanAST$1(ast, options) {
|
|
37417
37484
|
return JSON.stringify(massageAST(ast, options), null, 2);
|
|
37418
37485
|
}
|
|
@@ -38984,16 +39051,12 @@ function parseArgsToOptions(context, overrideDefaults) {
|
|
|
38984
39051
|
);
|
|
38985
39052
|
return getOptions(
|
|
38986
39053
|
optionsNormalizer.normalizeCliOptions(
|
|
38987
|
-
|
|
39054
|
+
minimist_1(
|
|
38988
39055
|
context.args,
|
|
38989
39056
|
Object.assign({
|
|
38990
39057
|
string: minimistOptions.string,
|
|
38991
39058
|
boolean: minimistOptions.boolean,
|
|
38992
|
-
default:
|
|
38993
|
-
{},
|
|
38994
|
-
cliifyOptions(context.apiDefaultOptions, apiDetailedOptionMap),
|
|
38995
|
-
cliifyOptions(overrideDefaults, apiDetailedOptionMap)
|
|
38996
|
-
)
|
|
39059
|
+
default: cliifyOptions(overrideDefaults, apiDetailedOptionMap)
|
|
38997
39060
|
})
|
|
38998
39061
|
),
|
|
38999
39062
|
context.detailedOptions,
|
|
@@ -39066,7 +39129,7 @@ function createIgnorer(context) {
|
|
|
39066
39129
|
}
|
|
39067
39130
|
|
|
39068
39131
|
function eachFilename(context, patterns, callback) {
|
|
39069
|
-
const ignoreNodeModules = context.argv["with-node-modules"]
|
|
39132
|
+
const ignoreNodeModules = context.argv["with-node-modules"] !== true;
|
|
39070
39133
|
if (ignoreNodeModules) {
|
|
39071
39134
|
patterns = patterns.concat(["!**/node_modules/**", "!./node_modules/**"]);
|
|
39072
39135
|
}
|
|
@@ -39374,7 +39437,16 @@ function createDetailedUsage(context, optionName) {
|
|
|
39374
39437
|
? `\n\nDefault: ${createDefaultValueDisplay(optionDefaultValue)}`
|
|
39375
39438
|
: "";
|
|
39376
39439
|
|
|
39377
|
-
|
|
39440
|
+
const pluginDefaults =
|
|
39441
|
+
option.pluginDefaults && Object.keys(option.pluginDefaults).length
|
|
39442
|
+
? `\nPlugin defaults:${Object.keys(option.pluginDefaults).map(
|
|
39443
|
+
key =>
|
|
39444
|
+
`\n* ${key}: ${createDefaultValueDisplay(
|
|
39445
|
+
option.pluginDefaults[key]
|
|
39446
|
+
)}`
|
|
39447
|
+
)}`
|
|
39448
|
+
: "";
|
|
39449
|
+
return `${header}${description}${choices}${defaults}${pluginDefaults}`;
|
|
39378
39450
|
}
|
|
39379
39451
|
|
|
39380
39452
|
function getOptionDefaultValue(context, optionName) {
|
|
@@ -39504,6 +39576,7 @@ function createMinimistOptions(detailedOptions) {
|
|
|
39504
39576
|
.map(option => option.name),
|
|
39505
39577
|
default: detailedOptions
|
|
39506
39578
|
.filter(option => !option.deprecated)
|
|
39579
|
+
.filter(option => !option.forwardToApi || option.name === "plugin")
|
|
39507
39580
|
.filter(option => option.default !== undefined)
|
|
39508
39581
|
.reduce(
|
|
39509
39582
|
(current, option) =>
|
|
@@ -39627,7 +39700,7 @@ function updateContextArgv(context, plugins) {
|
|
|
39627
39700
|
pushContextPlugins(context, plugins);
|
|
39628
39701
|
|
|
39629
39702
|
const minimistOptions = createMinimistOptions(context.detailedOptions);
|
|
39630
|
-
const argv =
|
|
39703
|
+
const argv = minimist_1(context.args, minimistOptions);
|
|
39631
39704
|
|
|
39632
39705
|
context.argv = argv;
|
|
39633
39706
|
context.filePatterns = argv["_"];
|