command-line-usage
Advanced tools
Comparing version 1.0.0-0 to 1.0.0-1
module.exports = { | ||
options: { | ||
title: "dmd", | ||
header: "Generate markdown API documentation", | ||
description: "Generate markdown API documentation", | ||
forms: [ | ||
@@ -6,0 +6,0 @@ "$ cat jsdoc-parse-output.json | dmd [<options>]" |
@@ -6,2 +6,4 @@ "use strict"; | ||
var ansi = require("ansi-escape-sequences"); | ||
var a = require("array-tools"); | ||
var t = require("typical"); | ||
@@ -24,3 +26,3 @@ /** | ||
var lines = []; | ||
lines.add = function(line){ | ||
lines.addLine = function(line){ | ||
this.push(" " + line); | ||
@@ -33,10 +35,11 @@ }; | ||
lines.addEmpty(); | ||
lines.add(ansi.format(options.title, "underline")); | ||
lines.add(options.header); | ||
lines.addEmpty(); | ||
if (options.title) lines.addLine(ansi.format(options.title, "underline")); | ||
if (options.description) lines.addLine(options.description); | ||
if (options.title || options.description) lines.addEmpty(); | ||
if (options.forms){ | ||
lines.add(ansi.format("Usage", "underline")); | ||
options.forms = a.arrayify(options.forms); | ||
lines.addLine(ansi.format("Usage", "underline")); | ||
options.forms.forEach(function(form){ | ||
lines.add(form); | ||
lines.addLine(form); | ||
}); | ||
@@ -47,13 +50,39 @@ lines.addEmpty(); | ||
if (cliOptions.length){ | ||
cliOptions.forEach(function(cliOption){ | ||
lines.push({ | ||
option: getOptionNames(cliOption), | ||
description: cliOption.description | ||
if (options.groups){ | ||
o.each(options.groups, function(val, group){ | ||
var title, description; | ||
if (t.isObject(val)){ | ||
title = val.title; | ||
description = val.description; | ||
} else if (typeof val === "string"){ | ||
title = val; | ||
} else { | ||
throw ("Unexpected group type"); | ||
} | ||
lines.addLine(ansi.format(title, "underline")); | ||
if (description){ | ||
lines.addLine(description); | ||
lines.addEmpty(); | ||
} | ||
a(cliOptions).where({ "+group": group }).forEach(function(cliOption){ | ||
lines.push({ | ||
option: getOptionNames(cliOption), | ||
description: cliOption.description | ||
}); | ||
}); | ||
lines.addEmpty(); | ||
}); | ||
}); | ||
lines.addEmpty(); | ||
} else { | ||
cliOptions.forEach(function(cliOption){ | ||
lines.push({ | ||
option: getOptionNames(cliOption), | ||
description: cliOption.description | ||
}); | ||
}); | ||
lines.addEmpty(); | ||
} | ||
} | ||
if (options.footer){ | ||
lines.add(options.footer); | ||
lines.addLine(options.footer); | ||
lines.addEmpty(); | ||
@@ -63,3 +92,3 @@ } | ||
return columnLayout(lines, { | ||
viewWidth: options.viewWidth, | ||
viewWidth: options.viewWidth || process.stdout.columns, | ||
padding: { | ||
@@ -66,0 +95,0 @@ left: " ", |
{ | ||
"name": "command-line-usage", | ||
"author": "Lloyd Brookes <75pound@gmail.com>", | ||
"version": "1.0.0-0", | ||
"version": "1.0.0-1", | ||
"description": "Generates command-line usage information", | ||
@@ -28,5 +28,7 @@ "repository": "https://github.com/75lb/command-line-usage.git", | ||
"ansi-escape-sequences": "^2.1.0", | ||
"array-tools": "^2", | ||
"column-layout": "^1.0.0", | ||
"object-tools": "^1.6.7" | ||
"object-tools": "^2", | ||
"typical": "^2.2.0" | ||
} | ||
} |
@@ -14,3 +14,3 @@ [![view on npm](http://img.shields.io/npm/v/command-line-usage.svg)](https://www.npmjs.org/package/command-line-usage) | ||
title: "dmd", | ||
header: "Generate markdown API documentation", | ||
description: "Generate markdown API documentation", | ||
forms: [ | ||
@@ -17,0 +17,0 @@ "$ cat jsdoc-parse-output.json | dmd [<options>]" |
License Policy Violation
LicenseThis package is not allowed per your license policy. Review the package's license to ensure compliance.
Found 1 instance in 1 package
License Policy Violation
LicenseThis package is not allowed per your license policy. Review the package's license to ensure compliance.
Found 1 instance in 1 package
17129
10
218
5
+ Addedarray-tools@^2
+ Addedtypical@^2.2.0
+ Addedarray-tools@2.0.9(transitive)
+ Addedfilter-where@1.0.1(transitive)
+ Addedreduce-extract@1.0.0(transitive)
+ Addedreduce-flatten@1.0.1(transitive)
+ Addedreduce-unique@1.0.0(transitive)
+ Addedreduce-without@1.0.1(transitive)
+ Addedsort-array@1.1.2(transitive)
- Removedarray-tools@1.8.6(transitive)
- Removedobject-tools@1.6.7(transitive)
Updatedobject-tools@^2