From c39d5e861a45d2dbc563110abb199babf32318b6 Mon Sep 17 00:00:00 2001 From: mangoiv Date: Fri, 3 Jan 2025 20:15:33 +0100 Subject: [PATCH 1/5] [chore] remove unnecessary padding and visual noise from the README --- datafiles/static/hackage.css | 27 +++++++++++++-------------- 1 file changed, 13 insertions(+), 14 deletions(-) diff --git a/datafiles/static/hackage.css b/datafiles/static/hackage.css index 5cdf0230..134dd7c6 100644 --- a/datafiles/static/hackage.css +++ b/datafiles/static/hackage.css @@ -328,27 +328,27 @@ blockquote { line-height: 1.2em; } -div#properties table.properties thead, -div#properties table.properties tbody, -div#properties table.properties tr, -div#properties table.properties td, -div#properties table.properties th { +#properties table.properties thead, +#properties table.properties tbody, +#properties table.properties tr, +#properties table.properties td, +#properties table.properties th { display: block; } -div#properties table.properties td { +#properties table.properties td { font-size: 1rem; } -div#properties table.properties tr { +#properties table.properties tr { padding-bottom: 3px; } -div#properties table.properties td { +#properties table.properties td { padding-top: 0px; } -div#properties table.properties .star-rating { +#properties table.properties .star-rating { overflow: hidden; padding: 2px 0; } @@ -493,7 +493,7 @@ table.properties td, table.properties th { margin-bottom: 0px; } - div #properties { + #properties { width: 40%; margin-bottom: 2em; } @@ -554,7 +554,7 @@ table.properties td, table.properties th { padding-top: 9px; } - div #properties { + #properties { width: 100%; margin: 1.3em 0; } @@ -1057,9 +1057,8 @@ p.tip { } .embedded-author-content { - border-left: 1px solid #d8d7ad; - padding: 0.5em 1em; - margin: 0.5em 0 1em 1em; + padding: 0.5em 0; + margin: 0.5em 0; } .embedded-author-content img { From d2630bc5d9044934449f27db81c77e476db083b6 Mon Sep 17 00:00:00 2001 From: mangoiv Date: Fri, 3 Jan 2025 20:45:47 +0100 Subject: [PATCH 2/5] [chore] build in a tiny bit of semantic html --- datafiles/templates/Html/package-page.html.st | 8 ++-- datafiles/templates/footer.st | 4 +- datafiles/templates/hackagePageHeader.st | 44 ++++++++++--------- src/Distribution/Server/Pages/Template.hs | 10 +++-- 4 files changed, 36 insertions(+), 30 deletions(-) diff --git a/datafiles/templates/Html/package-page.html.st b/datafiles/templates/Html/package-page.html.st index 079f91bb..47a8ec89 100644 --- a/datafiles/templates/Html/package-page.html.st +++ b/datafiles/templates/Html/package-page.html.st @@ -29,7 +29,7 @@ $hackagePageHeader()$ -
+

$package.name$$if(package.optional.hasSynopsis)$: $package.optional.synopsis$$endif$

[ $tags$ ] @@ -122,7 +122,7 @@
-
+
+
$if(package.optional.hasReadme)$ @@ -298,7 +298,7 @@ $endif$ - + $packagePageAssets()$
diff --git a/datafiles/templates/footer.st b/datafiles/templates/footer.st index 119a690a..c5f0b94b 100644 --- a/datafiles/templates/footer.st +++ b/datafiles/templates/footer.st @@ -1,5 +1,5 @@ - + diff --git a/datafiles/templates/hackagePageHeader.st b/datafiles/templates/hackagePageHeader.st index 3bc02680..df2ae0e1 100644 --- a/datafiles/templates/hackagePageHeader.st +++ b/datafiles/templates/hackagePageHeader.st @@ -1,31 +1,33 @@ - + diff --git a/src/Distribution/Server/Pages/Template.hs b/src/Distribution/Server/Pages/Template.hs index 18096d90..866dad6d 100644 --- a/src/Distribution/Server/Pages/Template.hs +++ b/src/Distribution/Server/Pages/Template.hs @@ -6,6 +6,7 @@ module Distribution.Server.Pages.Template ) where import Text.XHtml.Strict +import qualified Text.XHtml as XHtml --TODO: replace all this with external templates @@ -36,21 +37,22 @@ hackagePageWith headExtra docTitle docSubtitle docContent bodyExtra = , thetype "image/png"] << noHtml , meta ! [ name "viewport" , content "width=device-width, initial-scale=1"] - , (script noHtml) ! [ src "https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-chtml-full.js", thetype "text/javascript"] + , script noHtml ! [ src "https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-chtml-full.js", thetype "text/javascript"] -- if Search is enabled , thelink ! [ rel "search", href "/packages/opensearch.xml" , thetype "application/opensearchdescription+xml" , title "Hackage" ] << noHtml ] - docBody = [ thediv ! [identifier "page-header"] << docHeader + docBody = [ theheader ! [identifier "page-header"] << docHeader , thediv ! [identifier "content"] << docContent ] docHeader = [ docSubtitle , navigationBar ] + theheader = XHtml.tag "header" navigationBar :: Html navigationBar = - ulist ! [theclass "links", identifier "page-menu"] + thenav $ ulist ! [theclass "links", identifier "page-menu"] << map (li <<) [ anchor ! [href introductionURL] << "Home" , form ! [action "/packages/search", theclass "search", method "get"] @@ -61,6 +63,8 @@ navigationBar = , anchor ! [href uploadURL] << "Upload" , anchor ! [href accountsURL] << "User accounts" ] + where + thenav = XHtml.tag "nav" googleFontURL :: URL From ec1fdd3439321f3c72821506e76474a138d2aceb Mon Sep 17 00:00:00 2001 From: mangoiv Date: Fri, 3 Jan 2025 21:11:58 +0100 Subject: [PATCH 3/5] [chore] move maintainer's corner to the side bar and hide it by default --- datafiles/templates/Html/package-page.html.st | 51 ++++++++++--------- 1 file changed, 28 insertions(+), 23 deletions(-) diff --git a/datafiles/templates/Html/package-page.html.st b/datafiles/templates/Html/package-page.html.st index 47a8ec89..96a9d861 100644 --- a/datafiles/templates/Html/package-page.html.st +++ b/datafiles/templates/Html/package-page.html.st @@ -95,29 +95,6 @@ $downloadSection$ -
-

Maintainer's Corner

-

Package maintainers

-
    -
  • - $maintainers$ -
  • -
-

For package maintainers and hackage trustees

- -

Candidates

-
    -
  • - $candidates$ -
  • -
-
@@ -283,6 +260,34 @@ Status $buildStatus$ + + Maintainer's Corner + +
+ Expand for Details +

Package maintainers

+
    +
  • + $maintainers$ +
  • +
+

For package maintainers and hackage trustees

+ +

Candidates

+
    +
  • + $candidates$ +
  • +
+
+ + From 696eece2de4c336cf89b19941d649c91123661fa Mon Sep 17 00:00:00 2001 From: mangoiv Date: Fri, 3 Jan 2025 21:12:20 +0100 Subject: [PATCH 4/5] [chore] make clear what "Package Description" refers to --- src/Distribution/Server/Pages/Package.hs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/Distribution/Server/Pages/Package.hs b/src/Distribution/Server/Pages/Package.hs index b58991ed..7ad32c00 100644 --- a/src/Distribution/Server/Pages/Package.hs +++ b/src/Distribution/Server/Pages/Package.hs @@ -95,7 +95,7 @@ downloadSection PackageRender{..} = [ anchor ! [href cabalURL] << "Package description" ] (True,Nothing) -> [ anchor ! [href cabalURL] << "Package description" - , toHtml " (as included in the package)" + , toHtml " (as included in the package as *.cabal file)" ] (True,Just _) -> [ anchor ! [href cabalURL] << "Package description" From 0014c947685593a969f19f113c18efdb86784d72 Mon Sep 17 00:00:00 2001 From: mangoiv Date: Mon, 14 Apr 2025 10:50:18 +0200 Subject: [PATCH 5/5] [chore] apply some hints from code review - don't hide maintainer's corner by default - reword --- datafiles/templates/Html/package-page.html.st | 43 +++++++++---------- src/Distribution/Server/Pages/Package.hs | 2 +- 2 files changed, 21 insertions(+), 24 deletions(-) diff --git a/datafiles/templates/Html/package-page.html.st b/datafiles/templates/Html/package-page.html.st index 96a9d861..3e4f5c82 100644 --- a/datafiles/templates/Html/package-page.html.st +++ b/datafiles/templates/Html/package-page.html.st @@ -263,29 +263,26 @@ Maintainer's Corner -
- Expand for Details -

Package maintainers

-
    -
  • - $maintainers$ -
  • -
-

For package maintainers and hackage trustees

- -

Candidates

-
    -
  • - $candidates$ -
  • -
-
+

Package maintainers

+
    +
  • + $maintainers$ +
  • +
+

For package maintainers and hackage trustees

+ +

Candidates

+
    +
  • + $candidates$ +
  • +
diff --git a/src/Distribution/Server/Pages/Package.hs b/src/Distribution/Server/Pages/Package.hs index 7ad32c00..2acf62d4 100644 --- a/src/Distribution/Server/Pages/Package.hs +++ b/src/Distribution/Server/Pages/Package.hs @@ -95,7 +95,7 @@ downloadSection PackageRender{..} = [ anchor ! [href cabalURL] << "Package description" ] (True,Nothing) -> [ anchor ! [href cabalURL] << "Package description" - , toHtml " (as included in the package as *.cabal file)" + , toHtml " (as included in the package cabal file)" ] (True,Just _) -> [ anchor ! [href cabalURL] << "Package description"