mirror of
https://github.com/daylinmorgan/nimpkgs.git
synced 2024-12-21 18:50:43 -06:00
feat: add hyperlinks to version table
This commit is contained in:
parent
ce29752426
commit
f2d39c58dc
4 changed files with 29 additions and 5 deletions
|
@ -9,4 +9,9 @@ task build, "build":
|
|||
exec "pnpm run build"
|
||||
|
||||
task watch, "rebuild on change":
|
||||
exec "watchexec -w src nim js -d:packagesHash:master -o:site/app.js src/app.nim"
|
||||
exec (
|
||||
"watchexec " &
|
||||
"--project-origin . -w src " &
|
||||
"nim js -d:packagesHash:master -o:site/app.js src/app.nim"
|
||||
)
|
||||
|
||||
|
|
|
@ -1,10 +1,11 @@
|
|||
import std/[
|
||||
algorithm, asyncjs,
|
||||
strutils, sugar, tables, times
|
||||
strutils, sugar, tables, times, uri
|
||||
]
|
||||
import karax/[kbase]
|
||||
import jsony
|
||||
|
||||
import ./utils
|
||||
export algorithm, tables, times, asyncjs, sugar
|
||||
|
||||
proc parseHook*(s: string, i: var int, v: var kstring) =
|
||||
|
@ -69,3 +70,14 @@ proc sortVersion*(a, b: NimPackage): int =
|
|||
|
||||
|
||||
proc isAlias*(p: NimPackage): bool {.inline.} = p.alias != ""
|
||||
|
||||
proc canonicalUrl*(p: NimPackage): kstring =
|
||||
var uri = parseUri($p.url)
|
||||
uri.path = uri.path.replace(".git")
|
||||
# NOTE: why do I use this?
|
||||
if uri.path[^1] == '/':
|
||||
uri.path = uri.path[0..^2]
|
||||
uri.query = ""
|
||||
return uri.jss
|
||||
|
||||
|
||||
|
|
|
@ -1,11 +1,15 @@
|
|||
import std/[algorithm, sugar]
|
||||
import karax/[kbase, karaxdsl, vdom, jstrutils]
|
||||
import karax/[kbase, karax, karaxdsl, kdom, vdom, jstrutils, ]
|
||||
|
||||
import ../[context, packages, style]
|
||||
import ../components/[tag, package]
|
||||
import ../utils
|
||||
import notfound
|
||||
|
||||
proc openLink(link: kstring): proc() =
|
||||
result = proc() =
|
||||
discard open(window, link, "_self")
|
||||
|
||||
proc versionTable(pkg: NimPackage): VNode =
|
||||
var versions = pkg.versions
|
||||
versions.sort((a, b: Version) => cmp(a.time, b.time), order = Descending)
|
||||
|
@ -17,7 +21,10 @@ proc versionTable(pkg: NimPackage): VNode =
|
|||
th: text "released"
|
||||
th: text "hash"
|
||||
for version in versions:
|
||||
tr:
|
||||
tr(
|
||||
onClick = openLink(pkg.canonicalUrl & "/tree/" & version.tag.jss),
|
||||
class = "link"
|
||||
):
|
||||
td: text version.tag
|
||||
td: text version.time.format("yyyy-MM-dd")
|
||||
td: text ($version.hash)[0..8]
|
||||
|
|
|
@ -43,7 +43,7 @@ export default defineConfig({
|
|||
color: ${catppuccinColors.mauve};
|
||||
cursor: pointer;
|
||||
}
|
||||
// loading animation
|
||||
/* loading animation */
|
||||
.lds-dual-ring {
|
||||
display: inline-block;
|
||||
width: 80px;
|
||||
|
|
Loading…
Reference in a new issue