mirror of https://git.jolheiser.com/ugit.git
40 lines
1.4 KiB
Plaintext
40 lines
1.4 KiB
Plaintext
package html
|
|
|
|
import "fmt"
|
|
import "github.com/dustin/go-humanize"
|
|
import "go.jolheiser.com/ugit/internal/git"
|
|
|
|
type RepoLogContext struct {
|
|
BaseContext
|
|
RepoHeaderComponentContext
|
|
Commits []git.Commit
|
|
}
|
|
|
|
templ RepoLog(rlc RepoLogContext) {
|
|
@base(rlc.BaseContext) {
|
|
@repoHeaderComponent(rlc.RepoHeaderComponentContext)
|
|
<div class="grid sm:grid-cols-8 gap-1 text-text mt-5">
|
|
for _, commit := range rlc.Commits {
|
|
<div class="sm:col-span-5">
|
|
<div><a class="underline decoration-text/50 decoration-dashed hover:decoration-solid" href={ templ.SafeURL(fmt.Sprintf("/%s/commit/%s", rlc.RepoHeaderComponentContext.Name, commit.SHA)) }>{ commit.Short() }</a></div>
|
|
<div class="whitespace-pre">
|
|
if commit.Details() != "" {
|
|
<details>
|
|
<summary class="cursor-pointer">{ commit.Summary() }</summary>
|
|
<div class="p-3 bg-base rounded">{ commit.Details() }</div>
|
|
</details>
|
|
} else {
|
|
{ commit.Message }
|
|
}
|
|
</div>
|
|
</div>
|
|
<div class="sm:col-span-3 mb-4">
|
|
<div>{ commit.Author }{ " " }<a class="underline decoration-text/50 decoration-dashed hover:decoration-solid" href={ templ.SafeURL(fmt.Sprintf("mailto:%s", commit.Email)) }>{ fmt.Sprintf("<%s>", commit.Email) }</a></div>
|
|
<div title={ commit.When.Format("01/02/2006 03:04:05 PM") }>{ humanize.Time(commit.When) }</div>
|
|
</div>
|
|
}
|
|
</div>
|
|
}
|
|
}
|
|
|