File tree Expand file tree Collapse file tree 2 files changed +38
-25
lines changed
Expand file tree Collapse file tree 2 files changed +38
-25
lines changed Original file line number Diff line number Diff line change @@ -800,6 +800,43 @@ def group_classes_by_namespace_for_sidebar(classes)
800800 grouped_classes
801801 end
802802
803+ def generate_page_link ( file , rel_prefix )
804+ %(<a href="#{ rel_prefix } /#{ h file . path } ">#{ h file . page_name } </a>)
805+ end
806+
807+ def generate_pages_index_content ( page_files , rel_prefix , current )
808+ return '' if page_files . empty?
809+
810+ dir = current &.full_name &.[]( /\A [^\/ ]+(?=\/ )/ ) || current &.page_name
811+
812+ content = +'<ul class="link-list">'
813+ page_files . group_by do |f |
814+ f . full_name [ /\A [^\/ ]+(?=\/ )/ ] || f . page_name
815+ end . each do |n , grouped_files |
816+ f = grouped_files . shift
817+ if grouped_files . empty?
818+ content << %(<li>#{ generate_page_link ( f , rel_prefix ) } </li>)
819+ next
820+ end
821+
822+ content << %(<li><details#{ dir == n ? ' open' : '' } ><summary>)
823+ if n == f . page_name
824+ content << generate_page_link ( f , rel_prefix )
825+ else
826+ content << h ( n )
827+ grouped_files . unshift ( f )
828+ end
829+ content << '</summary><ul class="link-list">'
830+
831+ grouped_files . each do |f |
832+ content << %(<li>#{ generate_page_link ( f , rel_prefix ) } </li>)
833+ end
834+
835+ content << '</ul></details>'
836+ end
837+ content << '</ul>'
838+ end
839+
803840 private
804841
805842 def nesting_namespaces_to_class_modules klass
Original file line number Diff line number Diff line change 1- <%- if defined?(current) -%>
2- <%- dir = current.full_name[%r{\A[^/]+(?=/)}] || current.page_name -%>
3- <%- end -%>
41<%- if @page_files.any? -%>
52 <div id ="fileindex-section " class ="nav-section ">
63 < h3 > Pages</ h3 >
74
8- < ul class ="link-list ">
9- <%- @page_files . group_by do |f | -%>
10- <%- f . full_name [ %r{\A [^/]+(?=/)} ] || f . page_name -%>
11- <%- end . each do |n , files | -%>
12- <%- f = files . shift -%>
13- <%- if files . empty? -%>
14- < li > < a href ="<%= rel_prefix %> / <%= h f . path %> "> <%= h f . page_name %> </ a >
15- <%- next -%>
16- <%- end -%>
17- < li > < details <% if dir == n %> open <% end %> > < summary > <%
18- if n == f . page_name
19- %> < a href ="<%= rel_prefix %> / <%= h f . path %> "> <%= h n %> </ a > <%
20- else
21- %> <%= h n %> <% files . unshift ( f )
22- end %> </ summary >
23- < ul class ="link-list ">
24- <%- files . each do |f | -%>
25- < li > < a href ="<%= rel_prefix %> / <%= h f . path %> "> <%= h f . page_name %> </ a >
26- <%- end -%>
27- </ ul > </ details >
28- <%- end -%>
29- </ ul >
5+ <%= generate_pages_index_content ( @page_files , rel_prefix , current ) %>
306</ div >
317<%- end -%>
You can’t perform that action at this time.
0 commit comments