@@ -10,7 +10,7 @@ import { useState } from "react";
1010
1111export function Page ( ) {
1212 const { res } = useData ( ) ;
13- const [ showBody , setShowBody ] = useState ( true ) ;
13+ const [ showBody , setShowBody ] = useState ( true ) ;
1414
1515 const seen = new Set ( ) ;
1616 const stats = res . filter ( ( project ) => {
@@ -52,9 +52,9 @@ export function Page() {
5252 h ( "p.stat" , `${ formatNumber ( measurements ) } measurements` ) ,
5353 ] ) ,
5454
55- h ( SearchContainer , { setShowBody} ) ,
56-
57- h . if ( showBody ) ( ' div.body-content' , [
55+ h ( SearchContainer , { setShowBody } ) ,
56+
57+ h . if ( showBody ) ( " div.body-content" , [
5858 h ( "h2" , "Dictionaries" ) ,
5959 h (
6060 LinkCard ,
@@ -117,18 +117,16 @@ function formatNumber(num) {
117117 return num . toString ( ) . replace ( / \B (? = ( \d { 3 } ) + (? ! \d ) ) / g, "," ) ;
118118}
119119
120- function SearchContainer ( { setShowBody} ) {
120+ function SearchContainer ( { setShowBody } ) {
121121 const [ input , setInput ] = useState ( "" ) ;
122122 const url = apiV2Prefix + "/defs/autocomplete?query=" + input ;
123123 const data = useAPIResult ( url ) ?. success ?. data || [ ] ;
124124
125-
126- if ( data && input . length > 0 ) {
125+ if ( data && input . length > 0 ) {
127126 setShowBody ( false ) ;
128127 } else {
129128 setShowBody ( true ) ;
130129 }
131-
132130
133131 return h ( "div.search-container" , [
134132 h ( SearchBar , {
@@ -140,7 +138,6 @@ function SearchContainer({setShowBody}) {
140138}
141139
142140function SearchResults ( { data } ) {
143-
144141 const categories = [
145142 "columns" ,
146143 "econs" ,
@@ -163,28 +160,41 @@ function SearchResults({ data }) {
163160 ] ;
164161
165162 return h . if ( Object . keys ( data ) . length > 0 ) ( "div.search-results" , [
166- categories ?. map ( ( category ) => {
167- const items = data ?. [ category ] ;
168- if ( ! items || items ?. length === 0 ) return ;
169-
170- const link = category === "econs" ?
171- "economics" :
172- category === "lithologies" ?
173- "lithology" :
174- category === "strat_name_concepts" ?
175- "strat-name-concepts" :
176- category === "lithology_attributes" ?
177- "lith-atts" :
178- category
179-
180- return h ( "div.search-category" , [
181- h ( "h3.category" , ( category . charAt ( 0 ) . toUpperCase ( ) + category . slice ( 1 ) ) . replace ( / _ / g, " " ) ) ,
182- h ( 'div.items' , items ?. map ( ( item ) => {
163+ categories ?. map ( ( category ) => {
164+ const items = data ?. [ category ] ;
165+ if ( ! items || items ?. length === 0 ) return ;
166+
167+ const link =
168+ category === "econs"
169+ ? "economics"
170+ : category === "lithologies"
171+ ? "lithology"
172+ : category === "strat_name_concepts"
173+ ? "strat-name-concepts"
174+ : category === "lithology_attributes"
175+ ? "lith-atts"
176+ : category ;
177+
178+ return h ( "div.search-category" , [
179+ h (
180+ "h3.category" ,
181+ ( category . charAt ( 0 ) . toUpperCase ( ) + category . slice ( 1 ) ) . replace (
182+ / _ / g,
183+ " "
184+ )
185+ ) ,
186+ h (
187+ "div.items" ,
188+ items ?. map ( ( item ) => {
183189 const { name } = item ;
184- return h ( "a.item" , { href : `/lex/${ link } /${ item . id } ` } , name . charAt ( 0 ) . toUpperCase ( ) + name . slice ( 1 ) ) ;
185- } ) ) ,
186- ] ) ;
187- } ) ,
188- ] )
189-
190- }
190+ return h (
191+ "a.item" ,
192+ { href : `/lex/${ link } /${ item . id } ` } ,
193+ name . charAt ( 0 ) . toUpperCase ( ) + name . slice ( 1 )
194+ ) ;
195+ } )
196+ ) ,
197+ ] ) ;
198+ } ) ,
199+ ] ) ;
200+ }
0 commit comments