mirror of
https://codeberg.org/forgejo/forgejo.git
synced 2025-08-26 20:23:49 +00:00
chore(ui): improve hashbox (#8721)
Followup to https://codeberg.org/forgejo/forgejo/pulls/7822 * Fix signaturebox's background breaking out of hashbox and thus breaking it's rounded corners * Fix a bug where an extra right margin was applied to signbox's avatar on pull request overview by unrelated rule * Untangle hashbox's CSS from .label - it was not a good partnership between them. Some extra properties, some that we had to override * Move CSS out of "repo.css" to a separate file - it's clearly not only related to repos Reviewed-on: https://codeberg.org/forgejo/forgejo/pulls/8721 Reviewed-by: Gusted <gusted@noreply.codeberg.org>
This commit is contained in:
parent
2269831c9f
commit
4392dee96d
10 changed files with 117 additions and 109 deletions
|
@ -181,11 +181,11 @@
|
|||
<span>{{ctx.Locale.Tr "repo.diff.parent"}}</span>
|
||||
{{range .Parents}}
|
||||
{{if $.PageIsWiki}}
|
||||
<a class="ui primary sha label" href="{{$.RepoLink}}/wiki/commit/{{PathEscape .}}">
|
||||
<a class="primary sha label" href="{{$.RepoLink}}/wiki/commit/{{PathEscape .}}">
|
||||
<span class="shortsha">{{ShortSha .}}</span>
|
||||
</a>
|
||||
{{else}}
|
||||
<a class="ui primary sha label" href="{{$.RepoLink}}/commit/{{PathEscape .}}">
|
||||
<a class="primary sha label" href="{{$.RepoLink}}/commit/{{PathEscape .}}">
|
||||
<span class="shortsha">{{ShortSha .}}</span>
|
||||
</a>
|
||||
{{end}}
|
||||
|
@ -200,7 +200,7 @@
|
|||
<span class="shortsha">{{ShortSha .CommitID}}</span>
|
||||
</a>
|
||||
{{else}}
|
||||
<span class="ui primary sha label">
|
||||
<span class="primary sha label">
|
||||
<span class="shortsha">{{ShortSha .CommitID}}</span>
|
||||
</span>
|
||||
{{end}}
|
||||
|
|
|
@ -10,11 +10,11 @@
|
|||
</div>
|
||||
{{if .IsDiffCompare}}
|
||||
<div class="commits-table-right tw-whitespace-nowrap">
|
||||
<a href="{{$.CommitRepoLink}}/commit/{{.BeforeCommitID | PathEscape}}" class="ui primary sha label tw-mx-0">
|
||||
<a href="{{$.CommitRepoLink}}/commit/{{.BeforeCommitID | PathEscape}}" class="primary sha label tw-mx-0">
|
||||
<span class="shortsha">{{if not .BaseIsCommit}}{{if .BaseIsBranch}}{{svg "octicon-git-branch"}}{{else if .BaseIsTag}}{{svg "octicon-tag"}}{{end}}{{.BaseBranch}}{{else}}{{ShortSha .BaseBranch}}{{end}}</span>
|
||||
</a>
|
||||
...
|
||||
<a href="{{$.CommitRepoLink}}/commit/{{.AfterCommitID | PathEscape}}" class="ui primary sha label tw-mx-0">
|
||||
<a href="{{$.CommitRepoLink}}/commit/{{.AfterCommitID | PathEscape}}" class="primary sha label tw-mx-0">
|
||||
<span class="shortsha">{{if not .HeadIsCommit}}{{if .HeadIsBranch}}{{svg "octicon-git-branch"}}{{else if .HeadIsTag}}{{svg "octicon-tag"}}{{end}}{{.HeadBranch}}{{else}}{{ShortSha .HeadBranch}}{{end}}</span>
|
||||
</a>
|
||||
</div>
|
||||
|
|
|
@ -11,7 +11,7 @@
|
|||
<div class="repo-editor-header">
|
||||
<div class="ui breadcrumb field {{if .Err_TreePath}}error{{end}}">
|
||||
{{$shaurl := printf "%s/commit/%s" $.RepoLink (PathEscape .SHA)}}
|
||||
{{$shalink := HTMLFormat `<a class="ui primary sha label" href="%s"><span class="shortsha">%s</span></a>` $shaurl (ShortSha .SHA)}}
|
||||
{{$shalink := HTMLFormat `<a class="primary sha label" href="%s"><span class="shortsha">%s</span></a>` $shaurl (ShortSha .SHA)}}
|
||||
{{if eq .CherryPickType "revert"}}
|
||||
{{ctx.Locale.Tr "repo.editor.revert" $shalink}}
|
||||
{{else}}
|
||||
|
|
|
@ -26,13 +26,13 @@
|
|||
{{if .ParentHashes}}
|
||||
{{ctx.Locale.Tr "repo.diff.parent"}}
|
||||
{{range .ParentHashes}}
|
||||
<a class="ui primary sha label" href="{{$.RepoLink}}/commit/{{.String}}">
|
||||
<a class="primary sha label" href="{{$.RepoLink}}/commit/{{.String}}">
|
||||
<span class="shortsha">{{ShortSha .String}}</span>
|
||||
</a>
|
||||
{{end}}
|
||||
{{end}}
|
||||
{{ctx.Locale.Tr "repo.diff.commit"}}
|
||||
<a class="ui primary sha label" href="{{$.RepoLink}}/commit/{{.SHA}}">
|
||||
<a class="primary sha label" href="{{$.RepoLink}}/commit/{{.SHA}}">
|
||||
<span class="shortsha">{{ShortSha .SHA}}</span>
|
||||
</a>
|
||||
</td>
|
||||
|
|
|
@ -417,7 +417,7 @@
|
|||
<label>{{ctx.Locale.Tr "repo.settings.admin_indexer_commit_sha"}}</label>
|
||||
<span class="field">
|
||||
{{if .CodeIndexerStatus}}
|
||||
<a rel="nofollow" class="ui sha label" href="{{.RepoLink}}/commit/{{.CodeIndexerStatus.CommitSha}}">
|
||||
<a rel="nofollow" class="sha label" href="{{.RepoLink}}/commit/{{.CodeIndexerStatus.CommitSha}}">
|
||||
<span class="shortsha">{{ShortSha .CodeIndexerStatus.CommitSha}}</span>
|
||||
</a>
|
||||
{{else}}
|
||||
|
@ -444,7 +444,7 @@
|
|||
{{end}}
|
||||
<span class="field">
|
||||
{{if and .StatsIndexerStatus .StatsIndexerStatus.CommitSha}}
|
||||
<a rel="nofollow" class="ui sha label" href="{{.RepoLink}}/commit/{{.StatsIndexerStatus.CommitSha}}">
|
||||
<a rel="nofollow" class="sha label" href="{{.RepoLink}}/commit/{{.StatsIndexerStatus.CommitSha}}">
|
||||
<span class="shortsha">{{ShortSha .StatsIndexerStatus.CommitSha}}</span>
|
||||
</a>
|
||||
{{else}}
|
||||
|
|
|
@ -26,7 +26,7 @@
|
|||
{{else}}
|
||||
<span class="text red">{{svg "octicon-alert"}}</span>
|
||||
{{end}}
|
||||
<a class="ui primary sha label toggle button show-panel" data-panel="#info-{{.ID}}">
|
||||
<a class="primary sha label toggle button show-panel" data-panel="#info-{{.ID}}">
|
||||
<span class="shortsha">{{.UUID}}</span>
|
||||
</a>
|
||||
</div>
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
{{$class := "ui sha label"}}
|
||||
{{$class := "sha label"}}
|
||||
{{if .signature}}
|
||||
{{$class = (print $class " isSigned")}}
|
||||
{{if .verification.Verified}}
|
||||
|
|
|
@ -30,6 +30,7 @@
|
|||
@import "./modules/svg.css";
|
||||
@import "./modules/flexcontainer.css";
|
||||
@import "./modules/user-cards.css";
|
||||
@import "./modules/hashbox.css";
|
||||
|
||||
@import "./shared/flex-list.css";
|
||||
@import "./shared/milestone.css";
|
||||
|
|
104
web_src/css/modules/hashbox.css
Normal file
104
web_src/css/modules/hashbox.css
Normal file
|
@ -0,0 +1,104 @@
|
|||
.sha.label {
|
||||
display: inline-flex;
|
||||
flex-shrink: 0;
|
||||
gap: 0;
|
||||
align-items: center;
|
||||
margin: 0 6px; /* needs to go but looked into case-by-case */
|
||||
padding: 0;
|
||||
min-width: 0; /* from .ui.label, may be bad actually */
|
||||
background: var(--color-label-bg);
|
||||
color: var(--color-label-text);
|
||||
border: 1px solid var(--color-light-border);
|
||||
border-radius: var(--border-radius);
|
||||
white-space: nowrap;
|
||||
font-family: var(--fonts-monospace);
|
||||
font-size: 13px;
|
||||
font-weight: var(--font-weight-normal);
|
||||
line-height: 1;
|
||||
}
|
||||
|
||||
.primary.sha.label {
|
||||
border: none;
|
||||
background: var(--color-primary);
|
||||
color: var(--color-primary-contrast);
|
||||
}
|
||||
|
||||
.sha.label .shortsha {
|
||||
padding: 0.33rem 0.5rem;
|
||||
}
|
||||
|
||||
.sha.label .signature {
|
||||
color: var(--color-text);
|
||||
background: var(--color-light);
|
||||
padding: 0.25rem 0.33rem;
|
||||
border-left: 1px solid var(--color-light-border);
|
||||
border-top-right-radius: inherit;
|
||||
border-bottom-right-radius: inherit;
|
||||
}
|
||||
|
||||
.sha.label .signature-author {
|
||||
display: flex;
|
||||
gap: 0.25rem;
|
||||
}
|
||||
|
||||
.sha.label .signature-author .avatar {
|
||||
height: 16px;
|
||||
width: 16px;
|
||||
margin: 0 !important; /* In some areas selectors with .avatar are too broad */
|
||||
}
|
||||
|
||||
.sha.label.isSigned.isWarning {
|
||||
border: 1px solid var(--color-red-badge);
|
||||
background: var(--color-red-badge-bg);
|
||||
}
|
||||
|
||||
.sha.label.isSigned.isWarning .signature {
|
||||
border-left: 1px solid var(--color-red-badge);
|
||||
color: var(--color-red-badge);
|
||||
}
|
||||
|
||||
.sha.label.isSigned.isWarning:hover {
|
||||
background: var(--color-red-badge-hover-bg);
|
||||
}
|
||||
|
||||
.sha.label.isSigned.isVerified {
|
||||
border: 1px solid var(--color-green-badge);
|
||||
background: var(--color-green-badge-bg);
|
||||
}
|
||||
|
||||
.sha.label.isSigned.isVerified .signature {
|
||||
border-left: 1px solid var(--color-green-badge);
|
||||
color: var(--color-green-badge);
|
||||
}
|
||||
|
||||
.sha.label.isSigned.isVerified:hover {
|
||||
background: var(--color-green-badge-hover-bg);
|
||||
}
|
||||
|
||||
.sha.label.isSigned.isVerifiedUntrusted {
|
||||
border: 1px solid var(--color-yellow-badge);
|
||||
background: var(--color-yellow-badge-bg);
|
||||
}
|
||||
|
||||
.sha.label.isSigned.isVerifiedUntrusted .signature {
|
||||
border-left: 1px solid var(--color-yellow-badge);
|
||||
color: var(--color-yellow-badge);
|
||||
}
|
||||
|
||||
.sha.label.isSigned.isVerifiedUntrusted:hover {
|
||||
background: var(--color-yellow-badge-hover-bg);
|
||||
}
|
||||
|
||||
.sha.label.isSigned.isVerifiedUnmatched {
|
||||
border: 1px solid var(--color-orange-badge);
|
||||
background: var(--color-orange-badge-bg);
|
||||
}
|
||||
|
||||
.sha.label.isSigned.isVerifiedUnmatched .signature {
|
||||
border-left: 1px solid var(--color-orange-badge);
|
||||
color: var(--color-orange-badge);
|
||||
}
|
||||
|
||||
.sha.label.isSigned.isVerifiedUnmatched:hover {
|
||||
background: var(--color-orange-badge-hover-bg);
|
||||
}
|
|
@ -1238,103 +1238,6 @@ pdf-object {
|
|||
background-color: var(--color-light) !important;
|
||||
}
|
||||
|
||||
.ui .sha.label {
|
||||
font-family: var(--fonts-monospace);
|
||||
font-size: 13px;
|
||||
font-weight: var(--font-weight-normal);
|
||||
margin: 0 6px;
|
||||
padding: 0;
|
||||
gap: 0;
|
||||
flex-shrink: 0;
|
||||
}
|
||||
|
||||
.ui.ui .sha.label {
|
||||
border: 1px solid var(--color-light-border);
|
||||
}
|
||||
|
||||
.ui.primary.sha.label {
|
||||
border: none !important;
|
||||
background: var(--color-primary) !important;
|
||||
}
|
||||
|
||||
.sha.label .shortsha {
|
||||
padding: 0.33rem 0.5rem;
|
||||
}
|
||||
|
||||
.sha.label .signature {
|
||||
color: var(--color-text);
|
||||
background: var(--color-light);
|
||||
padding: 0.25rem 0.33rem;
|
||||
border-left: 1px solid var(--color-light-border);
|
||||
}
|
||||
|
||||
.sha.label .signature-author {
|
||||
display: flex;
|
||||
gap: 0.25rem;
|
||||
}
|
||||
|
||||
.sha.label .signature-author .avatar {
|
||||
height: 16px;
|
||||
margin-bottom: 0;
|
||||
width: 16px;
|
||||
}
|
||||
|
||||
.sha.label.isSigned.isWarning {
|
||||
border: 1px solid var(--color-red-badge);
|
||||
background: var(--color-red-badge-bg);
|
||||
}
|
||||
|
||||
.sha.label.isSigned.isWarning .signature {
|
||||
border-left: 1px solid var(--color-red-badge);
|
||||
color: var(--color-red-badge);
|
||||
}
|
||||
|
||||
.sha.label.isSigned.isWarning:hover {
|
||||
background: var(--color-red-badge-hover-bg) !important;
|
||||
}
|
||||
|
||||
.sha.label.isSigned.isVerified {
|
||||
border: 1px solid var(--color-green-badge);
|
||||
background: var(--color-green-badge-bg);
|
||||
}
|
||||
|
||||
.sha.label.isSigned.isVerified .signature {
|
||||
border-left: 1px solid var(--color-green-badge);
|
||||
color: var(--color-green-badge);
|
||||
}
|
||||
|
||||
.sha.label.isSigned.isVerified:hover {
|
||||
background: var(--color-green-badge-hover-bg) !important;
|
||||
}
|
||||
|
||||
.sha.label.isSigned.isVerifiedUntrusted {
|
||||
border: 1px solid var(--color-yellow-badge);
|
||||
background: var(--color-yellow-badge-bg);
|
||||
}
|
||||
|
||||
.sha.label.isSigned.isVerifiedUntrusted .signature {
|
||||
border-left: 1px solid var(--color-yellow-badge);
|
||||
color: var(--color-yellow-badge);
|
||||
}
|
||||
|
||||
.sha.label.isSigned.isVerifiedUntrusted:hover {
|
||||
background: var(--color-yellow-badge-hover-bg) !important;
|
||||
}
|
||||
|
||||
.sha.label.isSigned.isVerifiedUnmatched {
|
||||
border: 1px solid var(--color-orange-badge);
|
||||
background: var(--color-orange-badge-bg);
|
||||
}
|
||||
|
||||
.sha.label.isSigned.isVerifiedUnmatched .signature {
|
||||
border-left: 1px solid var(--color-orange-badge);
|
||||
color: var(--color-orange-badge);
|
||||
}
|
||||
|
||||
.sha.label.isSigned.isVerifiedUnmatched:hover {
|
||||
background: var(--color-orange-badge-hover-bg) !important;
|
||||
}
|
||||
|
||||
.repository .data-table {
|
||||
width: 100%;
|
||||
}
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue