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 @@ -869,6 +869,43 @@ def group_classes_by_namespace_for_sidebar(classes)
869869 grouped_classes
870870 end
871871
872+ def generate_page_link ( file , rel_prefix )
873+ %(<a href="#{ rel_prefix } /#{ h file . path } ">#{ h file . page_name } </a>)
874+ end
875+
876+ def generate_pages_index_content ( page_files , rel_prefix , current )
877+ return '' if page_files . empty?
878+
879+ dir = current &.full_name &.[]( /\A [^\/ ]+(?=\/ )/ ) || current &.page_name
880+
881+ content = +'<ul class="link-list">'
882+ page_files . group_by do |f |
883+ f . full_name [ /\A [^\/ ]+(?=\/ )/ ] || f . page_name
884+ end . each do |n , grouped_files |
885+ f = grouped_files . shift
886+ if grouped_files . empty?
887+ content << %(<li>#{ generate_page_link ( f , rel_prefix ) } </li>)
888+ next
889+ end
890+
891+ content << %(<li><details#{ dir == n ? ' open' : '' } ><summary>)
892+ if n == f . page_name
893+ content << generate_page_link ( f , rel_prefix )
894+ else
895+ content << h ( n )
896+ grouped_files . unshift ( f )
897+ end
898+ content << '</summary><ul class="link-list">'
899+
900+ grouped_files . each do |f |
901+ content << %(<li>#{ generate_page_link ( f , rel_prefix ) } </li>)
902+ end
903+
904+ content << '</ul></details>'
905+ end
906+ content << '</ul>'
907+ end
908+
872909 private
873910
874911 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