Skip to content

Commit c04ea4f

Browse files
odubtmcw
authored andcommitted
Fix ToC filter in default theme. (#457)
* Fix filter functionality. * Add missing semicolon. * Update tests. * Replace whitespace to appease tests. * Tweak whitespace. * Tweak whitespace.
1 parent 891b06c commit c04ea4f

File tree

3 files changed

+12
-11
lines changed

3 files changed

+12
-11
lines changed

default_theme/assets/site.js

Lines changed: 6 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,7 @@ var tocElements = document.getElementById('toc')
1111
document.getElementById('filter-input')
1212
.addEventListener('keyup', function (e) {
1313

14-
var i, element;
14+
var i, element, children;
1515

1616
// enter key
1717
if (e.keyCode === 13) {
@@ -32,14 +32,15 @@ document.getElementById('filter-input')
3232
var value = this.value.toLowerCase();
3333

3434
if (!value.match(/^\s*$/)) {
35-
match = function (text) {
36-
return text.toLowerCase().indexOf(value) !== -1;
35+
match = function (element) {
36+
return element.firstChild.innerHTML.toLowerCase().indexOf(value) !== -1;
3737
};
3838
}
3939

4040
for (i = 0; i < tocElements.length; i++) {
4141
element = tocElements[i];
42-
if (match(element.firstChild.innerHTML)) {
42+
children = Array.from(element.getElementsByTagName('li'));
43+
if (match(element) || children.some(match)) {
4344
element.classList.remove('display-none');
4445
} else {
4546
element.classList.add('display-none');
@@ -71,7 +72,7 @@ for (var j = 0; j < items.length; j++) {
7172

7273
function toggleSibling() {
7374
var stepSibling = this.parentNode.getElementsByClassName('toggle-target')[0];
74-
var icon = this.getElementsByClassName('icon')[0]
75+
var icon = this.getElementsByClassName('icon')[0];
7576
var klass = 'display-none';
7677
if (stepSibling.classList.contains(klass)) {
7778
stepSibling.classList.remove(klass);

default_theme/index._

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -34,7 +34,7 @@
3434
<div class='toggle-target display-none'>
3535
<% if (doc.members.static && doc.members.static.length) { %>
3636
<ul class='list-reset py1-ul pl1'>
37-
<li class='h5'>Static members</li>
37+
<li class='h5'><span>Static members</span></li>
3838
<% doc.members.static.forEach(function(member) { %>
3939
<li><a
4040
href='#<%=member.namespace%>'
@@ -46,7 +46,7 @@
4646
<% } %>
4747
<% if (doc.members.instance && doc.members.instance.length) { %>
4848
<ul class='list-reset py1-ul pl1'>
49-
<li class='h5'>Instance members</li>
49+
<li class='h5'><span>Instance members</span></li>
5050
<% doc.members.instance.forEach(function(member) { %>
5151
<li><a
5252
href='#<%=member.namespace%>'

test/fixture/html/nested.output.files

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -34,7 +34,7 @@
3434
<div class='toggle-target display-none'>
3535

3636
<ul class='list-reset py1-ul pl1'>
37-
<li class='h5'>Static members</li>
37+
<li class='h5'><span>Static members</span></li>
3838

3939
<li><a
4040
href='#Klass.isClass'
@@ -76,7 +76,7 @@
7676

7777

7878
<ul class='list-reset py1-ul pl1'>
79-
<li class='h5'>Instance members</li>
79+
<li class='h5'><span>Instance members</span></li>
8080

8181
<li><a
8282
href='#Klass#getFoo'
@@ -139,7 +139,7 @@
139139

140140

141141
<ul class='list-reset py1-ul pl1'>
142-
<li class='h5'>Instance members</li>
142+
<li class='h5'><span>Instance members</span></li>
143143

144144
<li><a
145145
href='#Foo#bar'
@@ -165,7 +165,7 @@
165165
<div class='toggle-target display-none'>
166166

167167
<ul class='list-reset py1-ul pl1'>
168-
<li class='h5'>Static members</li>
168+
<li class='h5'><span>Static members</span></li>
169169

170170
<li><a
171171
href='#customStreams.passthrough'

0 commit comments

Comments
 (0)