Vervis/templates/repo/source-git.hamlet

73 lines
1.7 KiB
Text

$# This file is part of Vervis.
$#
$# Written in 2016, 2018, 2019 by fr33domlover <fr33domlover@riseup.net>.
$#
$# ♡ Copying is an act of love. Please copy, reuse and share.
$#
$# The author(s) have dedicated all copyright and related and neighboring
$# rights to this software to the public domain worldwide. This software is
$# distributed without any warranty.
$#
$# You should have received a copy of the CC0 Public Domain Dedication along
$# with this software. If not, see
$# <http://creativecommons.org/publicdomain/zero/1.0/>.
^{followButton}
$maybe desc <- repoDesc repository
<p>#{desc}
<p>
^{buttonW DELETE "Delete this repo" (RepoR user repo)}
<p>
<a href=@{RepoDevsR user repo}>Collaborators
<p>
<a href=@{RepoHeadChangesR user repo}>Commits
<h2>Branches
<ul>
$forall branch <- branches
<li>
<a href=@{RepoSourceR user repo [branch]}>#{branch}
<h2>Tags
<ul>
$forall tag <- tags
<li>
<a href=@{RepoSourceR user repo [tag]}>#{tag}
<div>
<a href=@{RepoSourceR user repo [ref]}>#{ref}
:: #
$forall (piece, piecePath) <- dirs
<a href=@{RepoSourceR user repo (ref : piecePath)}>#{piece}
/ #
$case sv
$of SourceFile (FileView name body)
<h2>#{name}
^{body}
$of SourceDir (DirectoryView mname ents mreadme)
<h2>#{fromMaybe "Files" mname}
$if null ents
<p>No files!
$else
<table>
$forall DirEntry type' name <- ents
<tr>
<td>
$case type'
$of TypeBlob
🗎
$of TypeTree
🗀
<td>
<a href=@{RepoSourceR user repo (ref : (dir ++ [name]))}>
#{name}
$maybe (readmeName, readmeWidget) <- mreadme
<h2>#{readmeName}
^{readmeWidget}