Better reference code examples (#920)
* Updated documentation genertation script to build small code snippets * Updated docs reference * Removed slm doc * Add commas and remove empty objects
This commit is contained in:
committed by
delvedor
parent
29ad0735c2
commit
6ec653e7ac
@ -29,7 +29,9 @@ function generateDocs (common, spec) {
|
||||
////////
|
||||
|
||||
This documentation is generated by running:
|
||||
node scripts/run.js --tag v7.0.0-beta
|
||||
node scripts/run.js --tag tagName
|
||||
or
|
||||
node scripts/run.js --branch branchName
|
||||
|
||||
////////\n\n`
|
||||
doc += commonParameters(common)
|
||||
@ -109,11 +111,23 @@ function generateApiDoc (spec) {
|
||||
})
|
||||
}
|
||||
|
||||
const codeParameters = params
|
||||
.reduce((acc, val) => {
|
||||
var code = `${val.name}: ${val.type},`
|
||||
acc += acc === ''
|
||||
? code
|
||||
: '\n ' + code
|
||||
|
||||
return acc
|
||||
}, '')
|
||||
// remove last comma
|
||||
.slice(0, -1)
|
||||
|
||||
var doc = dedent`
|
||||
=== ${camelify(name)}
|
||||
[source,js]
|
||||
[source,ts]
|
||||
----
|
||||
client.${camelify(name)}([params] [, options] [, callback])
|
||||
client.${camelify(name)}(${codeParameters.length > 0 ? `{\n ${codeParameters}\n}` : ''})
|
||||
----\n`
|
||||
if (documentationUrl) {
|
||||
doc += `link:${documentationUrl}[Reference]\n`
|
||||
@ -128,7 +142,7 @@ function generateApiDoc (spec) {
|
||||
: '`' + val.name + '`'
|
||||
acc += dedent`
|
||||
|${name}
|
||||
|${'`' + val.type + '`'} - ${val.description}`
|
||||
|${'`' + val.type.replace(/\|/g, '\\|') + '`'} - ${val.description}`
|
||||
if (val.default) {
|
||||
acc += ` +\n_Default:_ ${'`' + val.default + '`'}`
|
||||
}
|
||||
@ -180,13 +194,13 @@ function fixLink (name, str) {
|
||||
function getType (type, options) {
|
||||
switch (type) {
|
||||
case 'list':
|
||||
return 'string, string[]'
|
||||
return 'string | string[]'
|
||||
case 'date':
|
||||
case 'time':
|
||||
case 'timeout':
|
||||
return 'string'
|
||||
case 'enum':
|
||||
return options.map(k => `'${k}'`).join(', ')
|
||||
return options.map(k => `'${k}'`).join(' | ')
|
||||
case 'int':
|
||||
case 'double':
|
||||
case 'long':
|
||||
|
||||
Reference in New Issue
Block a user