From a224e51c3fa9ae3698ba1e4985d59acf2886a160 Mon Sep 17 00:00:00 2001 From: ahocevar Date: Sat, 19 May 2018 13:11:31 +0200 Subject: [PATCH] Render name of classes without API constructor FIXED: No import should be listed for these. --- site/src/pages/docs.js | 50 ++++++++++++++++++++---------------------- 1 file changed, 24 insertions(+), 26 deletions(-) diff --git a/site/src/pages/docs.js b/site/src/pages/docs.js index 71adee99e3..ff3520bfe3 100644 --- a/site/src/pages/docs.js +++ b/site/src/pages/docs.js @@ -14,8 +14,11 @@ info.symbols.forEach(symbol => { if (!mod) { throw new Error(`No module for symbol ${symbol.name}`); } - if (symbol.memberof || symbol.kind === 'class') { - const name = symbol.memberof || symbol.name; + if ( + (symbol.memberof && symbol.memberof.indexOf('~') !== -1) || + symbol.kind === 'class' + ) { + const name = symbol.kind === 'class' ? symbol.name : symbol.memberof; if (!mod.classes) { mod.classes = {}; } @@ -71,38 +74,33 @@ class Docs extends Component { ); }; - renderClass(cls, mod) { + renderImport(longname, mod) { return ( -

- - import {getName(cls)} from '{getModuleName(mod.name)}'; - -

+ + import {getName(longname)} from '{getModuleName(mod.name)}'; + + ); + } + + renderClass(cls, mod) { + return cls in mod.classes && cls in mod.classes[cls] ? ( +
+

{this.renderImport(cls, mod)}

+

new {getName(cls)}()

+
+ ) : ( +
+

{getName(cls)}

+
); } renderFunction(fn, mod) { - return ( -

- - import {{getName(fn.name)}} from '{getModuleName( - mod.name - )}'; - -

- ); + return

{this.renderImport(fn.name, mod)}

; } renderConstant(constant, mod) { - return ( -

- - import {{getName(constant.name)}} from '{getModuleName( - mod.name - )}'; - -

- ); + return

{this.renderImport(constant.name, mod)}

; } render() {