Switch to the Jaguar theme

In addition to a nicer layout, this adds a searchable sidebar
and a source code viewer.
This commit is contained in:
Andreas Hocevar
2014-05-06 12:46:59 -05:00
parent e6dbb61d68
commit e2c9dd279d
37 changed files with 1814 additions and 702 deletions

View File

@@ -5,6 +5,8 @@
<?js if (doc.kind === 'mainpage' || (doc.kind === 'package')) { ?>
<?js= self.partial('mainpage.tmpl', doc) ?>
<?js } else if (doc.kind === 'source') { ?>
<?js= self.partial('source.tmpl', doc) ?>
<?js } else { ?>
<section>
@@ -13,7 +15,7 @@
<h2><?js if (doc.ancestors && doc.ancestors.length) { ?>
<span class="ancestors"><?js= doc.ancestors.join('') ?></span>
<?js } ?>
<?js= doc.longname ?>
<?js= doc.name ?>
<?js if (doc.variation) { ?>
<sup class="variation"><?js= doc.variation ?></sup>
<?js } ?></h2>
@@ -27,7 +29,8 @@
<?js if (doc.kind === 'module' && doc.module) { ?>
<?js= self.partial('method.tmpl', doc.module) ?>
<?js } ?>
<?js if (doc.kind === 'class' && !doc.hideConstructor && !doc.interface) { ?>
<?js if (doc.kind === 'class') { ?>
<?js= self.partial('method.tmpl', doc) ?>
<?js } else { ?>
<?js if (doc.description) { ?>
@@ -41,7 +44,6 @@
<?js= self.partial('examples.tmpl', doc.examples) ?>
<?js } ?>
<?js } ?>
</div>
<?js if (doc.kind == 'class') {
@@ -62,8 +64,7 @@
<h3 class="subsection-title">Extends</h3>
<ul><?js doc.augments.forEach(function(a) { ?>
<li><?js= self.linkto(a, a) ?>
<?js= (doc.implements&&doc.implements.indexOf(a)>-1?'(Interface)':'') ?></li>
<li><?js= self.linkto(a, a) ?></li>
<?js }); ?></ul>
<?js } ?>
@@ -82,7 +83,7 @@
<li><?js= self.linkto(r, r) ?></li>
<?js }); ?></ul>
<?js } ?>
<?js
var classes = self.find({kind: 'class', memberof: doc.longname});
if (doc.kind !== 'globalobj' && classes && classes.length) {
@@ -90,7 +91,7 @@
<h3 class="subsection-title">Classes</h3>
<dl><?js classes.forEach(function(c) { ?>
<dt><?js= self.linkto(c.longname, c.longname) ?></dt>
<dt><?js= self.linkto(c.longname, c.name) ?></dt>
<dd><?js if (c.summary) { ?><?js= c.summary ?><?js } ?></dd>
<?js }); ?></dl>
<?js } ?>
@@ -102,40 +103,21 @@
<h3 class="subsection-title">Namespaces</h3>
<dl><?js namespaces.forEach(function(n) { ?>
<dt><a href="namespaces.html#<?js= n.longname ?>"><?js= self.linkto(n.longname, n.longname) ?></a></dt>
<dt><a href="namespaces.html#<?js= n.longname ?>"><?js= self.linkto(n.longname, n.name) ?></a></dt>
<dd><?js if (n.summary) { ?><?js= n.summary ?><?js } ?></dd>
<?js }); ?></dl>
<?js } ?>
<?js
if (doc.observables && doc.observables.length && doc.observables.forEach) {
if (doc.observables && doc.observables.length) {
?>
<h3 class="subsection-title">Observable Properties</h3>
<dl><?js= self.partial('observables.tmpl', doc.observables) ?></dl>
<?js } ?>
<?js if (doc.fires && doc.fires.length) { ?>
<h3 class="subsection-title">Fires</h3>
<ul><?js doc.fires.forEach(function(f) { ?>
<?js= self.partial('fires.tmpl', f) ?>
<?js }); ?></ul>
<?js } ?>
<?js
var events = doc.events;
if (events && events.length && events.forEach) {
?>
<h3 class="subsection-title">Events</h3>
<?js if (doc.observables && doc.observables.length) { ?>
<p>These events are available in addition to the <b>Observable Properties</b> events listed above.</p>
<?js } ?>
<dl><?js= self.partial('events.tmpl', events) ?></dl>
<?js } ?>
<?js
var members = self.find({kind: 'member', memberof: title === 'Globals'? {isUndefined: true} : doc.longname});
var members = self.find({kind: 'member', memberof: title === 'Global' ? {isUndefined: true} : doc.longname});
if (members && members.length && members.forEach) {
?>
<h3 class="subsection-title">Members</h3>
@@ -146,7 +128,7 @@
<?js } ?>
<?js
var methods = self.find({kind: 'function', memberof: title === 'Globals'? {isUndefined: true} : doc.longname});
var methods = self.find({kind: 'function', memberof: title === 'Global' ? {isUndefined: true} : doc.longname});
if (methods && methods.length && methods.forEach) {
?>
<h3 class="subsection-title">Methods</h3>
@@ -157,18 +139,27 @@
<?js } ?>
<?js
var typedefs = self.find({kind: 'typedef', memberof: doc.longname});
var typedefs = self.find({kind: 'typedef', memberof: title === 'Global' ? {isUndefined: true} : doc.longname});
if (typedefs && typedefs.length && typedefs.forEach) {
?>
<h3 class="subsection-title">TypeDefs</h3>
<h3 class="subsection-title">Type Definitions</h3>
<dl><?js typedefs.forEach(function(e) { ?>
<?js= self.partial(e.params ? 'method.tmpl' : 'members.tmpl', e) ?>
<?js }); ?></dl>
<dl><?js typedefs.forEach(function(e) {
if (e.signature) {
?>
<?js= self.partial('method.tmpl', e) ?>
<?js
}
else {
?>
<?js= self.partial('members.tmpl', e) ?>
<?js
}
}); ?></dl>
<?js } ?>
<?js
var events = self.find({kind: 'event', memberof: doc.longname});
var events = self.find({kind: 'event', memberof: title === 'Global' ? {isUndefined: true} : doc.longname});
if (events && events.length && events.forEach) {
?>
<h3 class="subsection-title">Events</h3>

View File

@@ -14,58 +14,46 @@ var self = this;
<?js } ?>
<?js if (data.version) {?>
<dt class="tag-version">Version:</dt>
<dd class="tag-version"><ul class="dummy"><li><?js= version ?></li></ul></dd>
<?js } ?>
<?js if (data.since) {?>
<dt class="tag-since">Since:</dt>
<dd class="tag-since"><ul class="dummy"><li><?js= since ?></dd>
<?js } ?>
<?js if (data.version) {?>
<dt class="tag-version">Version:</dt>
<dd class="tag-version"><ul class="dummy"><li><?js= version ?></li></ul></dd>
<?js } ?>
<?js if (data.since) {?>
<dt class="tag-since">Since:</dt>
<dd class="tag-since"><ul class="dummy"><li><?js= since ?></dd>
<?js } ?>
<?js if (data.inherited && data.inherits) { ?>
<dt class="inherited-from">Inherited From:</dt>
<dd class="inherited-from"><ul class="dummy"><li>
<?js= this.linkto(data.inherits, this.htmlsafe(data.inherits)) ?>
</li></dd>
<?js } ?>
<?js if (data.deprecated) { ?>
<dt class="important tag-deprecated">Deprecated:</dt><?js
<?js if (data.deprecated) { ?>
<dt class="important tag-deprecated">Deprecated</dt><?js
if (data.deprecated === true) { ?><dd class="yes-def tag-deprecated"><ul class="dummy"><li>Yes</li></ul></dd><?js }
else { ?><dd><ul class="dummy"><li><?js= data.deprecated ?></li><ul></dd><?js }
?>
<?js } ?>
<?js if (data.author && author.length) {?>
<dt class="tag-author">Author:</dt>
<dd class="tag-author">
<?js if (data.author && author.length) {?>
<dt class="tag-author">Author:</dt>
<dd class="tag-author">
<ul><?js author.forEach(function(a) { ?>
<li><?js= a ?></li>
<li><?js= self.resolveAuthorLinks(a) ?></li>
<?js }); ?></ul>
</dd>
<?js } ?>
<?js if (data.copyright) {?>
<dt class="tag-copyright">Copyright:</dt>
<dd class="tag-copyright"><ul class="dummy"><li><?js= copyright ?></li></ul></dd>
<?js } ?>
<?js if (data.license) {?>
<dt class="tag-license">License:</dt>
<dd class="tag-license"><ul class="dummy"><li><?js= license ?></li></ul></dd>
<?js } ?>
<?js if (data.defaultvalue) {?>
<dt class="tag-default">Default Value:</dt>
<dd class="tag-default"><ul class="dummy"><li><?js= data.defaultvalue ?></li></ul></dd>
<?js } ?>
<?js if (data.meta) {?>
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li><?js= meta.filename ?>, line <?js= meta.lineno ?></li></ul></dd>
<?js } ?>
</dd>
<?js } ?>
<?js if (data.copyright) {?>
<dt class="tag-copyright">Copyright:</dt>
<dd class="tag-copyright"><ul class="dummy"><li><?js= copyright ?></li></ul></dd>
<?js } ?>
<?js if (data.license) {?>
<dt class="tag-license">License:</dt>
<dd class="tag-license"><ul class="dummy"><li><?js= license ?></li></ul></dd>
<?js } ?>
<?js if (data.defaultvalue) {?>
<dt class="tag-default">Default Value:</dt>
<dd class="tag-default"><ul class="dummy"><li><?js= data.defaultvalue ?></li></ul></dd>
<?js } ?>
<?js if (data.tutorials && tutorials.length) {?>
<dt class="tag-tutorial">Tutorials:</dt>
@@ -75,22 +63,22 @@ var self = this;
<?js }); ?></ul>
</dd>
<?js } ?>
<?js if (data.see && see.length) {?>
<dt class="tag-see">See:</dt>
<dd class="tag-see">
<?js if (data.see && see.length) {?>
<dt class="tag-see">See:</dt>
<dd class="tag-see">
<ul><?js see.forEach(function(s) { ?>
<li><?js= self.linkto(s) ?></li>
<?js }); ?></ul>
</dd>
<?js } ?>
<?js if (data.todo && todo.length) {?>
<dt class="tag-todo">To Do:</dt>
<dd class="tag-todo">
</dd>
<?js } ?>
<?js if (data.todo && todo.length) {?>
<dt class="tag-todo">TODO</dt>
<dd class="tag-todo">
<ul><?js todo.forEach(function(t) { ?>
<li><?js= t ?></li>
<?js }); ?></ul>
</dd>
<?js } ?>
</dd>
<?js } ?>
</dl>

View File

@@ -1,2 +1,2 @@
<?js var data = obj; ?>
<pre><code><?js= data ?></code></pre>
<pre class="prettyprint"><code><?js= data ?></code></pre>

View File

@@ -5,7 +5,12 @@
?>
<p class="code-caption"><?js= example.caption ?></p>
<?js } ?>
<?js if (example.code.toString().indexOf('<pre>') === -1) { ?>
<pre class="prettyprint"><code><?js= example.code ?></code></pre>
<?js } else { ?>
<?js= example.code.replace(/<pre>/g, '<pre class="prettyprint">') ?>
<?js } ?>
<?js
});
?>

View File

@@ -1,19 +1,30 @@
<?js
var data = obj;
if (data.description) {
var data = obj;
?>
<div class="param-desc">
<?js= description ?>
</div>
<?js } ?>
<?js if (data.type && data.type.names) {?>
<?js if (data.description && data.type && data.type.names) { ?>
<dl>
<dt>
Type
</dt>
<dd>
<?js= this.partial('type.tmpl', data.type.names) ?>
</dd>
<dt>
<div class="param-desc">
<?js= data.description ?>
</div>
</dt>
<dt>
<dl>
<dt>
Type
</dt>
<dd>
<?js= this.partial('type.tmpl', data.type.names) ?>
</dd>
</dl>
</dt>
</dl>
<?js } ?>
<?js } else { ?>
<div class="param-desc">
<?js if (data.description) { ?>
<?js= data.description ?>
<?js } else if (data.type && data.type.names) { ?>
<?js= this.partial('type.tmpl', data.type.names) ?>
<?js } ?>
</div>
<?js } ?>

View File

@@ -1,16 +0,0 @@
<?js
var data = obj;
var self = this;
var parts = data.split(/#?event:/);
var link = self.linkto(parts[0], parts[0]);
?>
<li>
<code><?js= parts[1] ?></code>
<?js if (link !== parts[0]) { ?>(<?js= self.linkto(parts[0], parts[0]) ?>)<?js } ?>
<?js var eventCls = self.find({longname: data})[0];
if (eventCls && eventCls.description) { ?>
<?js= (eventCls.description) ?>
<?js } else { ?>
<p>
<?js } ?>
</li>

View File

@@ -3,44 +3,40 @@
<head>
<meta charset="utf-8">
<title>OpenLayers 3 API Documentation - <?js= title ?></title>
<script src="scripts/prettify/prettify.js"> </script>
<script src="scripts/prettify/lang-css.js"> </script>
<script src="scripts/jquery.min.js"> </script>
<!--[if lt IE 9]>
<script src="//html5shiv.googlecode.com/svn/trunk/html5.js"></script>
<![endif]-->
<link type="text/css" rel="stylesheet" href="styles/prettify-jsdoc.css">
<link type="text/css" rel="stylesheet" href="styles/jsdoc-default.css">
<link rel="stylesheet" href="../resources/bootstrap/css/bootstrap.min.css" type="text/css">
<link rel="stylesheet" href="../resources/layout.css" type="text/css">
<link rel="stylesheet" href="../resources/bootstrap/css/bootstrap-responsive.min.css" type="text/css">
<link type="text/css" rel="stylesheet" href="styles/ol.css">
<link type="text/css" rel="stylesheet" href="styles/prettify-tomorrow.css">
<link type="text/css" rel="stylesheet" href="styles/bootstrap.min.css">
<link type="text/css" rel="stylesheet" href="styles/jaguar.css">
</head>
<body>
<div class="navbar navbar-inverse navbar-fixed-top">
<div class="navbar-inner">
<div class="container">
<a class="brand" href="/"><img src="../resources/logo.png"> OpenLayers 3</a>
<a class="brand" href="index.html">API Documentation</a>
</div>
</div>
</div>
<div id="main">
<?js= content ?>
<div id="wrap" class="clearfix">
<?js= this.partial('navigation.tmpl', this) ?>
<div class="main">
<h1 class="page-title" data-filename="<?js= filename ?>"><?js= title ?></h1>
<?js= content ?>
<footer>
Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc <?js= env.version.number ?></a> on <?js= (new Date()) ?>
</footer>
</div>
</div>
<nav>
<?js= this.nav ?>
</nav>
<br clear="both">
<footer>
Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 3</a>
</footer>
<script> prettyPrint(); </script>
<script>prettyPrint();</script>
<script src="scripts/linenumber.js"></script>
<script src="scripts/main.js"></script>
</body>
</html>
</html>

View File

@@ -9,6 +9,6 @@ var self = this;
<?js if (data.readme) { ?>
<section>
<article><?js= data.readme ?></article>
<article class="readme"><?js= data.readme ?></article>
</section>
<?js } ?>
<?js } ?>

View File

@@ -1,14 +1,25 @@
<?js var data = obj; ?>
<dt class="<?js= data.access ?>">
<h4 class="name" id="<?js= id ?>"><?js= data.attribs + name + data.signature ?></h4>
<?js= this.partial('stability.tmpl', data) ?>
<?js
var data = obj;
var self = this;
var typeSignature = '';
if (data.type && data.type.names) {
data.type.names.forEach(function (name) {
typeSignature += '<span class="type-signature type ' + name.toLowerCase() + '">' + self.linkto(name, self.htmlsafe(name)) + '</span> ';
});
}
?>
<dt>
<div class="nameContainer">
<h4 class="name" id="<?js= id ?>"><?js= this.partial('stability.tmpl', data) ?>
<?js= data.attribs + (data.scope === 'static' ? longname : name) + typeSignature ?></h4>
</div>
<?js if (data.summary) { ?>
<p class="summary"><?js= summary ?></p>
<?js } ?>
</dt>
<dd class="<?js= data.access ?>">
<dd>
<?js if (data.description) { ?>
<div class="description">
<?js= data.description ?>

View File

@@ -3,9 +3,22 @@ var data = obj;
var self = this;
?>
<dt>
<h4 class="name" id="<?js= id ?>"><?js= data.attribs + (kind == 'class'? 'new ':'') + name + data.signature ?></h4>
<div class="nameContainer<?js if (data.inherited) { ?> inherited<?js } ?>">
<?js if (data.stability) { ?>
<h4 class="name" id="<?js= id ?>"><?js= this.partial('stability.tmpl', data) ?>
<?js if (data.inherited || data.inherits) { ?>
<span class="inherited"><?js= this.linkto(data.inherits, 'inherited') ?></span>
<?js } ?>
<?js= data.attribs + (kind === 'class' ? 'new ' : '') + (data.scope === 'static' ? longname : name) + (kind !== 'event' ? data.signature : '') ?>
</h4>
<?js= this.partial('stability.tmpl', data) ?>
<?js if (data.meta) {?>
<div class="tag-source">
<?js= self.linkto(meta.filename) ?>, <?js= self.linkto(meta.filename, 'line ' + meta.lineno, null, 'line' + meta.lineno) ?>
</div>
<?js } ?>
<?js } ?>
</div>
<?js if (data.summary) { ?>
<p class="summary"><?js= summary ?></p>
@@ -34,16 +47,43 @@ var self = this;
<?js } ?>
<?js if (data.params && params.length) { ?>
<h5>Parameters:</h5>
<?js= this.partial('params.tmpl', params) ?>
<?js } ?>
<?js= this.partial('details.tmpl', data) ?>
<?js if (data.kind !== 'class' && data.fires && fires.length) { ?>
<?js if (data.fires && fires.length) { ?>
<h5>Fires:</h5>
<ul><?js fires.forEach(function(f) { ?>
<?js= self.partial('fires.tmpl', f) ?>
<ul><?js fires.forEach(function(f) {
var parts = f.split(/#?event:/);
?>
<li><?js var eventDoclet = self.find({longname: f})[0]; ?>
<?js= (eventDoclet ? self.partial('stability.tmpl', eventDoclet) : '') ?>
<code><?js= self.linkto(f, parts[1]) ?></code>
<?js if (parts[0]) {
var eventClass = self.find({longname: parts[0]})[0];
if (eventClass) { ?>
(<?js= self.linkto(eventClass.longname) ?>)
<?js } ?>
<?js } ?>
<?js if (eventDoclet && eventDoclet.description) { ?>
- <?js= eventDoclet.description.replace(/<[^>]*>/g, '') ?>
<?js } ?>
</li>
<?js }); ?></ul>
<?js } ?>
<?js if (data.listens && listens.length) { ?>
<h5>Listens to Events:</h5>
<ul><?js listens.forEach(function(f) { ?>
<li><?js= self.linkto(f) ?></li>
<?js }); ?></ul>
<?js } ?>
<?js if (data.listeners && listeners.length) { ?>
<h5>Listeners of This Event:</h5>
<ul><?js listeners.forEach(function(f) { ?>
<li><?js= self.linkto(f) ?></li>
<?js }); ?></ul>
<?js } ?>
@@ -60,16 +100,9 @@ var self = this;
} } ?>
<?js if (data.returns && returns.length) { ?>
<h5>Returns:</h5>
<?js if (returns.length > 1) { ?><ul><?js
returns.forEach(function(r) { ?>
<li><?js= self.partial('returns.tmpl', r) ?></li>
<?js });
?></ul><?js } else {
returns.forEach(function(r) { ?>
<?js= self.partial('returns.tmpl', r) ?>
<?js });
} } ?>
<?js if (returns.length > 1) { ?><h5>Returns:</h5><?js } ?>
<?js= self.partial('returns.tmpl', data.returns) ?>
<?js } ?>
<?js if (data.examples && examples.length) { ?>
<h5>Example<?js= examples.length > 1? 's':'' ?></h5>

View File

@@ -0,0 +1,94 @@
<?js
var self = this;
?>
<div class="navigation">
<div class="search">
<input id="search" type="text" class="form-control input-sm" placeholder="Search Documentation">
</div>
<ul class="list">
<?js
this.nav.forEach(function (item) {
?>
<li class="item" data-name="<?js= item.longname ?>">
<span class="title">
<?js= self.linkto(item.longname, item.longname) ?>
<?js if (item.type === 'namespace') { ?>
<span class="static">static</span>
<?js } ?>
</span>
<ul class="members itemMembers">
<?js
if (item.members.length) {
?>
<span class="subtitle">Members</span>
<?js
item.members.forEach(function (v) {
?>
<li data-name="<?js= v.longname ?>"><?js= self.linkto(v.longname, v.name) ?></li>
<?js
});
}
?>
</ul>
<ul class="typedefs itemMembers">
<?js
if (item.typedefs.length) {
?>
<span class="subtitle">Typedefs</span>
<?js
item.typedefs.forEach(function (v) {
?>
<li data-name="<?js= v.longname ?>"><?js= self.linkto(v.longname, v.name) ?></li>
<?js
});
}
?>
</ul>
<ul class="methods itemMembers">
<?js
if (item.methods.length) {
?>
<span class="subtitle">Methods</span>
<?js
item.methods.forEach(function (v) {
?>
<li data-name="<?js= v.longname ?>"><?js= self.linkto(v.longname, v.name) ?></li>
<?js
});
}
?>
</ul>
<ul class="fires itemMembers">
<?js
if (item.fires && item.fires.length) {
?>
<span class="subtitle">Fires</span>
<?js
item.fires.forEach(function (v) {
v = self.find({longname: v})[0] || {longname: v, name: v.split(/#?event:/)[1]};
?>
<li data-name="<?js= v.longname ?>"><?js= self.linkto(v.longname, v.name) ?></li>
<?js
});
}
?>
</ul>
<ul class="events itemMembers">
<?js
if (item.events.length) {
?>
<span class="subtitle">Events</span>
<?js
item.events.forEach(function (v) {
?>
<li data-name="<?js= v.longname ?>"><?js= self.linkto(v.longname, v.name) ?></li>
<?js
});
}
?>
</ul>
</li>
<?js }); ?>
</ul>
</div>

View File

@@ -102,8 +102,20 @@
<?js } ?>
<?js } ?>
<td<?js= (param.subparams ? ' colspan=' + colspan : ' ') ?> class="description last"><?js= param.description ?><?js if (param.subparams) { ?>
<h6>Properties</h6>
<td<?js= (param.subparams ? ' colspan=' + colspan : ' ') ?> class="description last">
<?js if (params.hasAttributes) {?>
<?js if (param.optional) { ?>
<span class="optional">optional</span>
<?js } ?>
<?js if (param.nullable) { ?>
<span class="nullable">nullable</span>
<?js } ?>
<?js if (param.variable) { ?>
<span class="repeatable">repeatable</span>
<?js } ?>
<?js } ?>
<?js= param.description ?><?js if (param.subparams) { ?>
<?js= self.partial('params.tmpl', param.subparams) ?>
<?js } ?></td>
</tr>

View File

@@ -5,7 +5,7 @@
var parentProp = null;
props.forEach(function(prop, i) {
if (!prop) { return; }
if ( parentProp && prop.name.indexOf(parentProp.name + '.') === 0 ) {
if ( parentProp && prop.name && prop.name.indexOf(parentProp.name + '.') === 0 ) {
prop.name = prop.name.substr(parentProp.name.length+1);
parentProp.subprops = parentProp.subprops || [];
parentProp.subprops.push(prop);

View File

@@ -1,19 +1,77 @@
<?js
var data = obj;
if (data.description) {
?>
<div class="param-desc">
<?js= description ?>
</div>
<?js } ?>
var returns = obj;
var parentReturn = null;
<?js if (data.type && data.type.names) {?>
<dl>
<dt>
Type
</dt>
<dd>
<?js= this.partial('type.tmpl', data.type.names) ?>
</dd>
</dl>
returns.forEach(function (ret, i) {
if (ret && (ret.description || ret.name)) {
ret.description = ret.description.toString().replace(/<\/?p>/g, '');
var isNamed = ret.name ? true : false;
var name = ret.name || ret.description;
var startSpacePos = name.indexOf(" ");
if (parentReturn !== null && name.indexOf(parentReturn.name + '.') === 0) {
ret.name = isNamed ? name.substr(parentReturn.name.length + 1) : name.substr(parentReturn.name.length + 1, startSpacePos - (parentReturn.name.length + 1));
if (!isNamed) {
ret.description = ret.description.substr(startSpacePos + 1);
}
parentReturn.subReturns = parentReturn.subReturns || [];
parentReturn.subReturns.push(ret);
returns[i] = null;
} else {
if (!isNamed) {
ret.name = ret.description.substr(0, startSpacePos !== -1 ? startSpacePos : ret.description.length);
ret.description = startSpacePos !== -1 ? ret.description.substr(startSpacePos + 1) : '';
}
parentReturn = ret;
}
}
});
?>
<?js
if (returns.length > 1) {
?>
<table class="params">
<thead>
<tr>
<th>Name</th>
<th>Type</th>
<th class="last">Description</th>
</tr>
</thead>
<tbody>
<?js
var self = this;
returns.forEach(function(ret) {
if (!ret) {
return false;
}
?>
<tr>
<td class="name"><code><?js= ret.name ?></code></td>
<td class="type">
<?js
if (ret.type && ret.type.names) {
ret.type.names.forEach(function(name, i) { ?>
<?js= self.linkto(name, self.htmlsafe(name)) ?>
<?js if (i < ret.type.names.length-1) { ?> | <?js } ?>
<?js });
}
?>
</td>
<td class="description last"><?js= ret.description ?><?js if (ret.subReturns) { ?>
<?js= self.partial('returns.tmpl', ret.subReturns) ?>
<?js } ?></td>
</tr>
<?js }); ?>
</tbody>
</table>
<?js } else if (returns[0].description) { ?>
<h5>Returns:</h5>
<?js= returns[0].description ?>
<br />
<?js } ?>

View File

@@ -2,8 +2,6 @@
var data = obj;
var self = this;
if (data.stability) { ?>
<div class="stability stability-<?js= stability ?>">Stability: <?js= data.stability ?></div>
<?js } else { ?>
<div class="stability">Stability: not documented</div>
if (data.stability != 'stable') { ?>
<span class="stability <?js= data.stability ?>"><?js= data.stability ?></span>
<?js } ?>