@@ -21,55 +21,53 @@ const pluginsData: Plugin[] | null = pluginsDataRequest.ok
2121 </section >
2222 </header >
2323
24- <main class =" plugins-main pb-5 " >
24+ <main class =" plugins-main" >
2525 {
2626 pluginsData === null ? (
2727 <h2 >Sorry plugins data could not be loaded</h2 >
2828 ) : (
29- <div class = " d-flex align-items-start " >
29+ <>
3030 <PluginsFilters plugins = { pluginsData } client :only />
3131
32- <section class = " plugins-list" >
33- <h2 id = " plugins-list-total" class = " mb-5 " >
32+ <section class = " plugins-list-container container-fluid " >
33+ <h2 id = " plugins-list-total" >
3434 { pluginsData .length || " No" } { pluginsData .length > 1 ? " plugins" : " plugin" }
3535 </h2 >
36- <div class = " row g-4 w-100 " >
36+ <div class = " plugins-list row " >
3737 { pluginsData .map ((p ) => (
3838 <article
3939 id = { pluginElementId (p .id )}
40- class = { ` mb-3 col-12 col-md-6 col-xl-4 col-xxl-3 category-${p .category } ${p .versions ? Object .keys (p .versions ).map ((v ) => ` version-${v } ` ) : " " }` }
40+ class = { ` category-${p .category } ${p .versions ? Object .keys (p .versions ).map ((v ) => ` version-${v } ` ) : " " } ` }
4141 >
42- <a class = " card border-0 text-decoration-none text-dark" href = { ` /desktop/plugins/${p .id } ` } >
43- <div class = " d-flex flex-column gap-1" >
44- <img
45- alt = " "
46- class = " card-img-top plugin-image mb-2 border"
47- src = {
48- p .images && p .images [0 ]
49- ? ` https://raw.githubusercontent.com/gephi/gephi-plugins/refs/heads/gh-pages/plugins/${p .images [0 ].image } `
50- : " /plugins/default-screenshot.jpg"
51- }
52- />
53- <div >
54- <small class = " small badge text-bg-light border border-primary text-primary" >{ p .category } </small >
55- </div >
56- <h3 class = " text-primary m-0 text-truncate fs-4" >{ p .name } </h3 >
57- <p class = " fs-5 m-0" >{ p .short_description } </p >
58- <div class = " text-muted" >last updated on { p .last_update } </div >
59- <div class = " d-flex flex-wrap gap-1" >
60- { Object .keys (p .versions )
61- .reverse ()
62- .map ((v ) => (
63- <span class = " badge text-bg-primary" >{ v } </span >
64- ))}
65- </div >
42+ <a class = " card" href = { ` /desktop/plugins/${p .id } ` } >
43+ <img
44+ alt = " "
45+ class = " card-img-top plugin-image"
46+ src = {
47+ p .images && p .images [0 ]
48+ ? ` https://raw.githubusercontent.com/gephi/gephi-plugins/refs/heads/gh-pages/plugins/${p .images [0 ].image } `
49+ : " /plugins/default-screenshot.jpg"
50+ }
51+ />
52+ <div >
53+ <small class = " plugin-category" >{ p .category } </small >
54+ </div >
55+ <h3 class = " plugin-name" >{ p .name } </h3 >
56+ <p class = " plugin-description" >{ p .short_description } </p >
57+ <div class = " text-muted" >last updated on { p .last_update } </div >
58+ <div class = " plugin-versions" >
59+ { Object .keys (p .versions )
60+ .reverse ()
61+ .map ((v ) => (
62+ <span >{ v } </span >
63+ ))}
6664 </div >
6765 </a >
6866 </article >
6967 ))}
7068 </div >
7169 </section >
72- </div >
70+ </>
7371 )
7472 }
7573 </main >
0 commit comments