From 0080e5f99f9b7875f02e90b907b30cf4170013b7 Mon Sep 17 00:00:00 2001 From: Jeff Williams Date: Sun, 28 Dec 2014 12:32:47 -0800 Subject: [PATCH] if a symbol shares its longname with a module, only show the symbol if it either a) has a description or b) is a class (#853) --- templates/default/publish.js | 20 +++++++++++++------- 1 file changed, 13 insertions(+), 7 deletions(-) diff --git a/templates/default/publish.js b/templates/default/publish.js index 3ed4d6a2..406e7cfb 100644 --- a/templates/default/publish.js +++ b/templates/default/publish.js @@ -269,15 +269,21 @@ function attachModuleSymbols(doclets, modules) { return modules.map(function(module) { if (symbols[module.longname]) { - module.modules = symbols[module.longname].map(function(symbol) { - symbol = doop(symbol); + module.modules = symbols[module.longname] + // Only show symbols that have a description. Make an exception for classes, because + // we want to show the constructor-signature heading no matter what. + .filter(function(symbol) { + return symbol.description || symbol.kind === 'class'; + }) + .map(function(symbol) { + symbol = doop(symbol); - if (symbol.kind === 'class' || symbol.kind === 'function') { - symbol.name = symbol.name.replace('module:', '(require("') + '"))'; - } + if (symbol.kind === 'class' || symbol.kind === 'function') { + symbol.name = symbol.name.replace('module:', '(require("') + '"))'; + } - return symbol; - }); + return symbol; + }); } }); }