@@ -37,18 +37,23 @@ function generateParams(doclet) {
37
37
return `**Parameters:**\n\n${ params . join ( '\n' ) } \n` ;
38
38
}
39
39
40
- const generateFunctionDocletSection = ( doclet ) => {
40
+ const generateFunctionDocletSection = ( doclet , isConstructor ) => {
41
41
const title = doclet . name ;
42
- const header = `##${ doclet . longname . indexOf ( '#' ) !== - 1 ? '#' : '' } ${ title } \n` ;
43
- const signature = `\`${ doclet . meta . code . name || doclet . name } (${ doclet . params && doclet . params . filter ( p => p . name . indexOf ( '.' ) === - 1 ) . map ( p => p . name ) . join ( ', ' ) || '' } )\`\n` ;
42
+ const header = `##${ doclet . longname . indexOf ( '#' ) !== - 1 || isConstructor ? '#' : '' } ${ title } ${ isConstructor ? ' Constructor' : '' } \n` ;
43
+ const args = doclet . params && doclet . params . filter ( p => p . name . indexOf ( '.' ) === - 1 ) . map ( p => p . optional ? `[${ p . name } ]` : p . name ) . join ( ', ' ) || '' ;
44
+ const signature = `\`${ isConstructor ? 'new ' : '' } ${ doclet . meta . code . name || doclet . name } (${ args } )\`\n` ;
44
45
const params = doclet . params ? generateParams ( doclet ) : `` ;
45
46
const returns = doclet . returns ? `**Returns:** ${ doclet . returns . map ( p => `${ p . type ? renderLinks ( p ) : '' } ${ p . description ? ` ${ resolveInlineLinks ( p . description ) } ` : '' } ` ) } ` : `` ;
46
- return [ header , signature , `${ resolveInlineLinks ( doclet . description ) } \n` , params , returns , '\n' ] . join ( '\n' ) ;
47
+ return [ header , signature , doclet . description && `${ resolveInlineLinks ( doclet . description ) } \n` , params , returns , '\n' ] . filter ( f => ! ! f ) . join ( '\n' ) ;
47
48
} ;
48
49
49
50
const generateClassSection = ( doclet ) => {
50
51
const header = `## ${ doclet . name } \n` ;
51
- return [ header , ( doclet . classdesc || doclet . description ) . trim ( ) , '\n' ] . join ( '\n' ) ;
52
+ let classSection = [ header , ( doclet . classdesc || doclet . description ) . trim ( ) , '\n' ] . join ( '\n' ) ;
53
+ if ( doclet . params && doclet . params . length ) {
54
+ classSection = classSection . concat ( generateFunctionDocletSection ( doclet , true ) ) ;
55
+ }
56
+ return classSection ;
52
57
} ;
53
58
54
59
const tagValue = ( doclet , tagOriginalTitle ) => {
0 commit comments