UNPKG

savvy-js

Version:

Savvy - Style sheet documentation tool

81 lines (60 loc) 2.06 kB
(function(){ var browseElement; function initializeBrowse(){ browseElement = $('#savvy-browse'); browseElement.off('click'); browseElement.on('click', 'h4', function(e){ var target = $(e.target); target.toggleClass('savvy-visible'); }); renderBrowse(); } function renderClasses(parent){ var panel = ''; if(parent.classes && parent.classes.length){ panel = '<div><h4>Classes</h4><ul>'; parent.classes.forEach(function(classObject){ panel += '<li>' + app.navigation.getLink(classObject) + '</li>'; }); panel += '</ul></div>'; } return panel; } function renderSubmodules(parent){ var panel = ''; if(parent.submodules && parent.submodules.length){ panel = '<div><h4>Submodules</h4><ul>'; parent.submodules.forEach(function(submodule){ panel += '<li>' + app.navigation.getLink(submodule); panel += renderClasses(submodule); panel += '</li>'; }); panel += '</ul></div>'; } return panel; } function renderModule(parent){ var panel = ''; if(parent.modules && parent.modules.length){ panel = '<div><h3>Modules</h3><ul>'; parent.modules.forEach(function(module){ panel += '<li>' + app.navigation.getLink(module); panel += renderClasses(module); panel += renderSubmodules(module); panel += '</li>'; }); panel += '</ul></div>'; } return panel; } function renderBrowse(){ var html = ''; html += renderClasses(data); html += renderModule(data); browseElement.html(html); } app.browse = { init : initializeBrowse, render : renderBrowse }; }());