Skip to content

Commit 6060c35

Browse files
MichelSimonotMichelSimonot
MichelSimonot
authored and
MichelSimonot
committed
Fix default_theme to render all parameter properties.
- Split the parameter property template portion into its own partial. - Have the new partial recursively call itself if there are sub-properties.
1 parent 8b8e6a2 commit 6060c35

File tree

5 files changed

+36
-18
lines changed

5 files changed

+36
-18
lines changed

src/default_theme/index._

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -97,7 +97,8 @@
9797
<%= renderSection({
9898
section: s,
9999
renderSection: renderSection,
100-
renderSectionList: renderSectionList
100+
renderSectionList: renderSectionList,
101+
renderParamProperty: renderParamProperty
101102
}) %>
102103
<% } else { %>
103104
<div class='keyline-top-not py2'><%=renderNote({ note: s })%></div>

src/default_theme/index.js

Lines changed: 11 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -22,12 +22,13 @@ module.exports = function(
2222
comments: Array<Comment>,
2323
config: DocumentationConfig
2424
) {
25-
var linkerStack = new LinkerStack(
26-
config
27-
).namespaceResolver(comments, function(namespace) {
28-
var slugger = new GithubSlugger();
29-
return '#' + slugger.slug(namespace);
30-
});
25+
var linkerStack = new LinkerStack(config).namespaceResolver(
26+
comments,
27+
function(namespace) {
28+
var slugger = new GithubSlugger();
29+
return '#' + slugger.slug(namespace);
30+
}
31+
);
3132

3233
var formatters = createFormatters(linkerStack.link);
3334

@@ -98,6 +99,10 @@ module.exports = function(
9899
fs.readFileSync(path.join(__dirname, 'note._'), 'utf8'),
99100
sharedImports
100101
);
102+
sharedImports.imports.renderParamProperty = _.template(
103+
fs.readFileSync(path.join(__dirname, 'paramProperty._'), 'utf8'),
104+
sharedImports
105+
);
101106

102107
var pageTemplate = _.template(
103108
fs.readFileSync(path.join(__dirname, 'index._'), 'utf8'),

src/default_theme/paramProperty._

Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,15 @@
1+
<tr>
2+
<td class='break-word'><span class='code bold'><%- property.name %></span> <code class='quiet'><%= formatType(property.type) %></code>
3+
<% if (property.default) { %>
4+
(default <code><%- property.default %></code>)
5+
<% } %></td>
6+
<td class='break-word'><span><%= md(property.description, true) %></span></td>
7+
<% if(property.properties && property.properties.length) { %>
8+
<% property.properties.forEach(function(childProperty) { %>
9+
<%= renderParamProperty({
10+
property: childProperty,
11+
renderParamProperty: renderParamProperty
12+
}) %>
13+
<% }) %>
14+
<% } %>
15+
</tr>

src/default_theme/section._

Lines changed: 6 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -66,13 +66,9 @@
6666
</thead>
6767
<tbody class='mt1'>
6868
<% param.properties.forEach(function(property) { %>
69-
<tr>
70-
<td class='break-word'><span class='code bold'><%- property.name %></span> <code class='quiet'><%= formatType(property.type) %></code>
71-
<% if (property.default) { %>
72-
(default <code><%- property.default %></code>)
73-
<% } %></td>
74-
<td class='break-word'><span><%= md(property.description, true) %></span></td>
75-
</tr>
69+
<%- renderParamProperty({
70+
property: property
71+
}) %>
7672
<% }) %>
7773
</tbody>
7874
</table>
@@ -137,16 +133,16 @@
137133

138134
<% if (section.members.static && section.members.static.length) { %>
139135
<div class='py1 quiet mt1 prose-big'>Static Members</div>
140-
<%= renderSectionList({ members: section.members.static, renderSection: renderSection, noun: 'Static Member' }) %>
136+
<%= renderSectionList({ members: section.members.static, renderSection: renderSection, renderParamProperty: renderParamProperty, noun: 'Static Member' }) %>
141137
<% } %>
142138

143139
<% if (section.members.instance && section.members.instance.length) { %>
144140
<div class='py1 quiet mt1 prose-big'>Instance Members</div>
145-
<%= renderSectionList({ members: section.members.instance, renderSection: renderSection, noun: 'Instance Member' }) %>
141+
<%= renderSectionList({ members: section.members.instance, renderSection: renderSection, renderParamProperty: renderParamProperty, noun: 'Instance Member' }) %>
146142
<% } %>
147143

148144
<% if (section.members.events && section.members.events.length) { %>
149145
<div class='py1 quiet mt1 prose-big'>Events</div>
150-
<%= renderSectionList({ members: section.members.events, renderSection: renderSection, noun: 'Event' }) %>
146+
<%= renderSectionList({ members: section.members.events, renderSection: renderSection, renderParamProperty: renderParamProperty, noun: 'Event' }) %>
151147
<% } %>
152148
</section>

src/default_theme/section_list._

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,8 @@
1111
<%= renderSection({
1212
section: member,
1313
renderSection: renderSection,
14-
nested: true
14+
renderParamProperty: renderParamProperty,
15+
nested: true
1516
}) %>
1617
</div>
1718
</div>

0 commit comments

Comments
 (0)