UNPKG

5.11 kBSource Map (JSON)View Raw
1{"version":3,"file":"help.js","sourceRoot":"","sources":["../../../../src/lib/utils/options/help.ts"],"names":[],"mappings":"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","sourcesContent":["import * as ts from 'typescript';\nimport * as _ts from '../../ts-internal';\n\nimport { Options } from './options';\nimport { ParameterScope, ParameterHint } from './declaration';\n\nexport interface ParameterHelp {\n names: string[];\n helps: string[];\n margin: number;\n}\n\n/**\n * Prepare parameter information for the [[toString]] method.\n *\n * @param scope The scope of the parameters whose help should be returned.\n * @returns The columns and lines for the help of the requested parameters.\n */\nfunction getParameterHelp(options: Options, scope: ParameterScope): ParameterHelp {\n const parameters = options.getDeclarationsByScope(scope);\n parameters.sort((a, b) => a.name.localeCompare(b.name, undefined, { sensitivity: 'base' }));\n\n const names: string[] = [];\n const helps: string[] = [];\n let margin = 0;\n\n for (let i = 0; i < parameters.length; i++) {\n const parameter = parameters[i];\n if (!parameter.help) {\n continue;\n }\n\n let name = ' ';\n if (parameter.short) {\n name += '-' + parameter.short;\n if (typeof parameter.hint !== 'undefined') {\n name += ' ' + ParameterHint[parameter.hint].toUpperCase();\n }\n name += ', ';\n }\n\n name += '--' + parameter.name;\n if (parameter.hint) {\n name += ' ' + ParameterHint[parameter.hint].toUpperCase();\n }\n\n names.push(name);\n helps.push(parameter.help);\n margin = Math.max(name.length, margin);\n }\n\n return {names: names, helps: helps, margin: margin};\n}\n\n/**\n * Print some usage information.\n *\n * Taken from TypeScript (src/compiler/tsc.ts)\n */\nexport function getOptionsHelp(options: Options): string {\n const typeDoc = getParameterHelp(options, ParameterScope.TypeDoc);\n\n const output: string[] = [];\n output.push('Usage:');\n output.push(' typedoc --mode modules --out path/to/documentation path/to/sourcefiles');\n\n output.push('', 'TypeDoc options:');\n pushHelp(typeDoc);\n\n output.push('', 'TypeScript options:');\n output.push('See https://www.typescriptlang.org/docs/handbook/compiler-options.html');\n\n output.push('');\n return output.join(ts.sys.newLine);\n\n function pushHelp(columns: ParameterHelp) {\n for (let i = 0; i < columns.names.length; i++) {\n const usage = columns.names[i];\n const description = columns.helps[i];\n output.push(usage + padding(typeDoc.margin - usage.length + 2) + description);\n }\n }\n\n function padding(length: number): string {\n return Array(length + 1).join(' ');\n }\n}\n"]}
\No newline at end of file