@@ -3,9 +3,10 @@ let filter_tags (papers : Data.Paper.t list) (tags : string list) =
3
3
List.exists (fun tag -> List.mem tag paper.tags) tags
4
4
) papers
5
5
6
- let display_papers ~ (search : string) ~(recommended_papers : Data.Paper.t list)
6
+ let display_papers ? (search : string option ) ~(recommended_papers : Data.Paper.t list)
7
7
(papers : Data.Paper.t list) (cat : string) =
8
- <div class="section-blue-gradient dark:dark-section-blue-gradient lg:py-12 py-8">
8
+ <% if search = None then ( %>
9
+ <div id="recommended" class="section-blue-gradient dark:dark-section-blue-gradient lg:py-12 py-8">
9
10
<div class="container-fluid">
10
11
<div class=" ">
11
12
<div class="">
@@ -37,15 +38,13 @@ let display_papers ~(search : string) ~(recommended_papers : Data.Paper.t list)
37
38
</div>
38
39
</div>
39
40
</div>
41
+ <% ); %>
40
42
<div>
41
- <details id="search-details">
42
- <summary style="font-size: 1.6em; font-weight: normal; float: left; margin-left: 5em; margin-bottom:1em">
43
- More Papers
44
- </summary>
45
43
<div style="clear: both;"></div>
46
44
<div class="bg-background dark:bg-dark-background">
47
45
<div class="py-10 lg:py-28">
48
46
<div class="container-fluid">
47
+ <% let search = Option.value ~default:"" search in %>
49
48
<div class="flex justify-between items-center flex-col md:flex-row">
50
49
<% let paper_num = match List.length papers with 0 -> "No Paper" | 1 -> "1 Paper" | l -> Printf.sprintf "%i Papers" l in %>
51
50
<h5 class="font-bold text-title dark:text-dark-title mb-5 md:mb-0"><%s paper_num %></h5>
@@ -128,22 +127,13 @@ let display_papers ~(search : string) ~(recommended_papers : Data.Paper.t list)
128
127
</div>
129
128
</div>
130
129
</div>
131
- </details>
132
-
133
- <script>
134
- // Check if there's a query string in the URL
135
- const params = new URLSearchParams(window.location.search);
136
- if (params.has('q')) {
137
- document.getElementById('search-details').setAttribute('open', 'true');
138
- }
139
- </script>
140
130
141
131
</div>
142
132
<div style="clear: both;"></div>
143
133
144
134
145
135
146
- let render ?( search = "") ~(recommended_papers : Data.Paper.t list) (papers : Data.Paper.t list) =
136
+ let render ?search ~(recommended_papers : Data.Paper.t list) (papers : Data.Paper.t list) =
147
137
Learn_layout.single_column_layout
148
138
~title:"Rocq Papers"
149
139
~description:"A selection of papers grouped by popular categories."
@@ -165,6 +155,6 @@ Learn_layout.single_column_layout
165
155
<%s! let tags = ["Theory and Implementation of Rocq"] in
166
156
let recommended_papers = filter_tags recommended_papers tags in
167
157
let papers = filter_tags papers tags in
168
- display_papers ~ search ~recommended_papers papers
158
+ display_papers ? search ~recommended_papers papers
169
159
"Theory and Implementation of Rocq"
170
160
%>
0 commit comments