$# This file is part of Vervis.
$#
$# Written in 2016 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/>.

$maybe desc <- repoDesc repository
  <p>#{desc}

<p>
  <form method=POST action=@{RepoR user repo}>
    <input type=hidden name=_method value=DELETE>
    <input type=submit value="Delete this repo">

<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}
    <table>
      <tr>
        <th>Type
        <th>Name
      $forall DirEntry type' name <- ents
        <tr>
          <td>
            $case type'
              $of TypeBlob
                [F]
              $of TypeTree
                [D]
          <td>
            <a href=@{RepoSourceR user repo (ref : (dir ++ [name]))}>
              #{name}
    $maybe (readmeName, readmeWidget) <- mreadme
      <h2>#{readmeName}
      ^{readmeWidget}