MCPcopy
hub / github.com/jsdoc/jsdoc / buildNav

Function buildNav

templates/default/publish.js:356–391  ·  view source on GitHub ↗

* Create the navigation sidebar. * @param {object} members The members that will be used to create the sidebar. * @param {array } members.classes * @param {array } members.externals * @param {array } members.globals * @param {array } members.mixins * @param {array<o

(members)

Source from the content-addressed store, hash-verified

354 * @return {string} The HTML for the navigation sidebar.
355 */
356function buildNav(members) {
357 let globalNav;
358 let nav = '<h2><a href="index.html">Home</a></h2>';
359 const seen = {};
360 const seenTutorials = {};
361
362 nav += buildMemberNav(members.modules, 'Modules', {}, linkto);
363 nav += buildMemberNav(members.externals, 'Externals', seen, linktoExternal);
364 nav += buildMemberNav(members.namespaces, 'Namespaces', seen, linkto);
365 nav += buildMemberNav(members.classes, 'Classes', seen, linkto);
366 nav += buildMemberNav(members.interfaces, 'Interfaces', seen, linkto);
367 nav += buildMemberNav(members.events, 'Events', seen, linkto);
368 nav += buildMemberNav(members.mixins, 'Mixins', seen, linkto);
369 nav += buildMemberNav(members.tutorials, 'Tutorials', seenTutorials, linktoTutorial);
370
371 if (members.globals.length) {
372 globalNav = '';
373
374 members.globals.forEach(({kind, longname, name}) => {
375 if ( kind !== 'typedef' && !hasOwnProp.call(seen, longname) ) {
376 globalNav += `<li>${linkto(longname, name)}</li>`;
377 }
378 seen[longname] = true;
379 });
380
381 if (!globalNav) {
382 // turn the heading into a link so you can actually get to the global page
383 nav += `<h3>${linkto('global', 'Global')}</h3>`;
384 }
385 else {
386 nav += `<h3>Global</h3><ul>${globalNav}</ul>`;
387 }
388 }
389
390 return nav;
391}
392
393/**
394 @param {TAFFY} taffyData See <http://taffydb.com/>.

Callers 1

publish.jsFile · 0.85

Calls 1

buildMemberNavFunction · 0.85

Tested by

no test coverage detected

Used in the wild real call sites across dependent graphs

searching dependent graphs…