1
0
mirror of https://github.com/go-gitea/gitea synced 2024-11-07 09:15:53 +01:00

Replace 10 more gt- classes with tw- (#29945)

Likely the biggest change of the tailwind refactors. Only thing of note
is that `tw-flex-1` resolves to `flex: 1 1 0%` while our `gt-f1` was
`flex: 1 1 0`, I don't think it will make any difference. Commands I've
ran:

```sh
perl -p -i -e 's#gt-vm#tw-align-middle#g' web_src/js/**/* templates/**/* models/**/*
perl -p -i -e 's#gt-fw#tw-flex-wrap#g' web_src/js/**/* templates/**/* models/**/*
perl -p -i -e 's#gt-f1#tw-flex-1#g' web_src/js/**/* templates/**/* models/**/*
perl -p -i -e 's#gt-fc#tw-flex-col#g' web_src/js/**/* templates/**/* models/**/*
perl -p -i -e 's#gt-sb#tw-justify-between#g' web_src/js/**/* templates/**/* models/**/*
perl -p -i -e 's#gt-je#tw-justify-end#g' web_src/js/**/* templates/**/* models/**/*
perl -p -i -e 's#gt-jc#tw-justify-center#g' web_src/js/**/* templates/**/* models/**/*
perl -p -i -e 's#gt-ac#tw-content-center#g' web_src/js/**/* templates/**/* models/**/* tests/**/*
perl -p -i -e 's#gt-df#tw-flex#g' web_src/js/**/* templates/**/* models/**/* tests/**/*
perl -p -i -e 's#gt-dib#tw-inline-block#g' web_src/js/**/* templates/**/* models/**/* tests/**/*

Co-authored-by: wxiaoguang <wxiaoguang@gmail.com>
This commit is contained in:
silverwind 2024-03-22 14:45:10 +01:00 committed by GitHub
parent 0c55506b40
commit f88ad5424f
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
123 changed files with 308 additions and 322 deletions

@ -47,7 +47,7 @@ We recommend [Google HTML/CSS Style Guide](https://google.github.io/styleguide/h
9. Avoid unnecessary `!important` in CSS, add comments to explain why it's necessary if it can't be avoided. 9. Avoid unnecessary `!important` in CSS, add comments to explain why it's necessary if it can't be avoided.
10. Avoid mixing different events in one event listener, prefer to use individual event listeners for every event. 10. Avoid mixing different events in one event listener, prefer to use individual event listeners for every event.
11. Custom event names are recommended to use `ce-` prefix. 11. Custom event names are recommended to use `ce-` prefix.
12. Prefer using Tailwind CSS which is available via `tw-` prefix, e.g. `tw-relative`. Gitea's helper CSS classes use `gt-` prefix (`gt-df`), while Gitea's own private framework-level CSS classes use `g-` prefix (`g-modal-confirm`). 12. Prefer using Tailwind CSS which is available via `tw-` prefix, e.g. `tw-relative`. Gitea's helper CSS classes use `gt-` prefix (`gt-mono`), while Gitea's own private framework-level CSS classes use `g-` prefix (`g-modal-confirm`).
13. Avoid inline scripts & styles as much as possible, it's recommended to put JS code into JS files and use CSS classes. If inline scripts & styles are unavoidable, explain the reason why it can't be avoided. 13. Avoid inline scripts & styles as much as possible, it's recommended to put JS code into JS files and use CSS classes. If inline scripts & styles are unavoidable, explain the reason why it can't be avoided.
### Accessibility / ARIA ### Accessibility / ARIA

@ -47,7 +47,7 @@ HTML 页面由[Go HTML Template](https://pkg.go.dev/html/template)渲染。
9. 避免在 CSS 中使用不必要的`!important`,如果无法避免,添加注释解释为什么需要它。 9. 避免在 CSS 中使用不必要的`!important`,如果无法避免,添加注释解释为什么需要它。
10. 避免在一个事件监听器中混合不同的事件,优先为每个事件使用独立的事件监听器。 10. 避免在一个事件监听器中混合不同的事件,优先为每个事件使用独立的事件监听器。
11. 推荐使用自定义事件名称前缀`ce-`。 11. 推荐使用自定义事件名称前缀`ce-`。
12. 建议使用 Tailwind CSS它可以通过 `tw-` 前缀获得,例如 `tw-relative`. Gitea 自身的助手类 CSS 使用 `gt-` 前缀(`gt-df`Gitea 自身的私有框架级 CSS 类使用 `g-` 前缀(`g-modal-confirm`)。 12. 建议使用 Tailwind CSS它可以通过 `tw-` 前缀获得,例如 `tw-relative`. Gitea 自身的助手类 CSS 使用 `gt-` 前缀(`gt-mono`Gitea 自身的私有框架级 CSS 类使用 `g-` 前缀(`g-modal-confirm`)。
13. 尽量避免内联脚本和样式建议将JS代码放入JS文件中并使用CSS类。如果内联脚本和样式不可避免请解释无法避免的原因。 13. 尽量避免内联脚本和样式建议将JS代码放入JS文件中并使用CSS类。如果内联脚本和样式不可避免请解释无法避免的原因。
### 可访问性 / ARIA ### 可访问性 / ARIA

@ -24,7 +24,7 @@ import (
const ( const (
// DefaultAvatarClass is the default class of a rendered avatar // DefaultAvatarClass is the default class of a rendered avatar
DefaultAvatarClass = "ui avatar gt-vm" DefaultAvatarClass = "ui avatar tw-align-middle"
// DefaultAvatarPixelSize is the default size in pixels of a rendered avatar // DefaultAvatarPixelSize is the default size in pixels of a rendered avatar
DefaultAvatarPixelSize = 28 DefaultAvatarPixelSize = 28
) )

@ -4,8 +4,8 @@
{{ctx.Locale.Tr "admin.emails.email_manage_panel"}} ({{ctx.Locale.Tr "admin.total" .Total}}) {{ctx.Locale.Tr "admin.emails.email_manage_panel"}} ({{ctx.Locale.Tr "admin.total" .Total}})
</h4> </h4>
<div class="ui attached segment"> <div class="ui attached segment">
<div class="ui secondary filter menu gt-ac gt-mx-0"> <div class="ui secondary filter menu tw-content-center gt-mx-0">
<form class="ui form ignore-dirty gt-f1"> <form class="ui form ignore-dirty tw-flex-1">
{{template "shared/search/combo" dict "Value" .Keyword}} {{template "shared/search/combo" dict "Value" .Keyword}}
</form> </form>
<!-- Sort --> <!-- Sort -->

@ -17,7 +17,7 @@
<tbody> <tbody>
{{range .Notices}} {{range .Notices}}
<tr> <tr>
<td><div class="ui checkbox gt-df" data-id="{{.ID}}"><input type="checkbox"></div></td> <td><div class="ui checkbox tw-flex" data-id="{{.ID}}"><input type="checkbox"></div></td>
<td>{{.ID}}</td> <td>{{.ID}}</td>
<td>{{ctx.Locale.Tr .TrStr}}</td> <td>{{ctx.Locale.Tr .TrStr}}</td>
<td class="view-detail auto-ellipsis" style="width: 80%;"><span class="notice-description">{{.Description}}</span></td> <td class="view-detail auto-ellipsis" style="width: 80%;"><span class="notice-description">{{.Description}}</span></td>

@ -7,8 +7,8 @@
</div> </div>
</h4> </h4>
<div class="ui attached segment"> <div class="ui attached segment">
<div class="ui secondary filter menu gt-ac gt-mx-0"> <div class="ui secondary filter menu tw-content-center gt-mx-0">
<form class="ui form ignore-dirty gt-f1"> <form class="ui form ignore-dirty tw-flex-1">
{{template "shared/search/combo" dict "Value" .Keyword "Placeholder" (ctx.Locale.Tr "search.org_kind")}} {{template "shared/search/combo" dict "Value" .Keyword "Placeholder" (ctx.Locale.Tr "search.org_kind")}}
</form> </form>
<!-- Sort --> <!-- Sort -->

@ -30,7 +30,7 @@
- -
{{else}} {{else}}
{{$sum}} {{$sum}}
<form action="{{$.Link}}/remove-all-items" method="post" class="gt-dib gt-ml-4"> <form action="{{$.Link}}/remove-all-items" method="post" class="tw-inline-block gt-ml-4">
{{$.CsrfTokenHtml}} {{$.CsrfTokenHtml}}
<button class="ui tiny basic red button">{{ctx.Locale.Tr "admin.monitor.queue.settings.remove_all_items"}}</button> <button class="ui tiny basic red button">{{ctx.Locale.Tr "admin.monitor.queue.settings.remove_all_items"}}</button>
</form> </form>

@ -20,8 +20,8 @@
{{if .Dirs}} {{if .Dirs}}
<div class="ui aligned divided list"> <div class="ui aligned divided list">
{{range $dirI, $dir := .Dirs}} {{range $dirI, $dir := .Dirs}}
<div class="item gt-df gt-ac"> <div class="item tw-flex tw-content-center">
<span class="gt-f1"> {{svg "octicon-file-directory-fill"}} {{$dir}}</span> <span class="tw-flex-1"> {{svg "octicon-file-directory-fill"}} {{$dir}}</span>
<div> <div>
<button class="ui button primary show-modal gt-p-3" data-modal="#adopt-unadopted-modal-{{$dirI}}">{{svg "octicon-plus"}} {{ctx.Locale.Tr "repo.adopt_preexisting_label"}}</button> <button class="ui button primary show-modal gt-p-3" data-modal="#adopt-unadopted-modal-{{$dirI}}">{{svg "octicon-plus"}} {{ctx.Locale.Tr "repo.adopt_preexisting_label"}}</button>
<div class="ui g-modal-confirm modal" id="adopt-unadopted-modal-{{$dirI}}"> <div class="ui g-modal-confirm modal" id="adopt-unadopted-modal-{{$dirI}}">

@ -1,5 +1,5 @@
<div class="item"> <div class="item">
<div class="gt-df gt-ac"> <div class="tw-flex tw-content-center">
<div class="icon gt-ml-3 gt-mr-3"> <div class="icon gt-ml-3 gt-mr-3">
{{if eq .Process.Type "request"}} {{if eq .Process.Type "request"}}
{{svg "octicon-globe" 16}} {{svg "octicon-globe" 16}}
@ -11,7 +11,7 @@
{{svg "octicon-code" 16}} {{svg "octicon-code" 16}}
{{end}} {{end}}
</div> </div>
<div class="content gt-f1"> <div class="content tw-flex-1">
<div class="header">{{.Process.Description}}</div> <div class="header">{{.Process.Description}}</div>
<div class="description">{{if ne .Process.Type "none"}}{{TimeSince .Process.Start ctx.Locale}}{{end}}</div> <div class="description">{{if ne .Process.Type "none"}}{{TimeSince .Process.Start ctx.Locale}}{{end}}</div>
</div> </div>
@ -40,9 +40,9 @@
</summary> </summary>
<div class="list"> <div class="list">
{{range .Entry}} {{range .Entry}}
<div class="item gt-df gt-ac"> <div class="item tw-flex tw-content-center">
<span class="icon gt-mr-4">{{svg "octicon-dot-fill" 16}}</span> <span class="icon gt-mr-4">{{svg "octicon-dot-fill" 16}}</span>
<div class="content gt-f1"> <div class="content tw-flex-1">
<div class="header"><code>{{.Function}}</code></div> <div class="header"><code>{{.Function}}</code></div>
<div class="description"><code>{{.File}}:{{.Line}}</code></div> <div class="description"><code>{{.File}}:{{.Line}}</code></div>
</div> </div>

@ -1,8 +1,8 @@
{{template "admin/layout_head" (dict "ctxData" . "pageClass" "admin monitor")}} {{template "admin/layout_head" (dict "ctxData" . "pageClass" "admin monitor")}}
<div class="admin-setting-content"> <div class="admin-setting-content">
<div class="gt-df gt-ac"> <div class="tw-flex tw-content-center">
<div class="gt-f1"> <div class="tw-flex-1">
<div class="ui compact small menu"> <div class="ui compact small menu">
<a class="{{if eq .ShowGoroutineList "process"}}active {{end}}item" href="?show=process">{{ctx.Locale.Tr "admin.monitor.process"}}</a> <a class="{{if eq .ShowGoroutineList "process"}}active {{end}}item" href="?show=process">{{ctx.Locale.Tr "admin.monitor.process"}}</a>
<a class="{{if eq .ShowGoroutineList "stacktrace"}}active {{end}}item" href="?show=stacktrace">{{ctx.Locale.Tr "admin.monitor.stacktrace"}}</a> <a class="{{if eq .ShowGoroutineList "stacktrace"}}active {{end}}item" href="?show=stacktrace">{{ctx.Locale.Tr "admin.monitor.stacktrace"}}</a>

@ -103,7 +103,7 @@
<td><span>{{ctx.Locale.Tr "admin.users.never_login"}}</span></td> <td><span>{{ctx.Locale.Tr "admin.users.never_login"}}</span></td>
{{end}} {{end}}
<td> <td>
<div class="gt-df gt-gap-3"> <div class="tw-flex gt-gap-3">
<a href="{{$.Link}}/{{.ID}}" data-tooltip-content="{{ctx.Locale.Tr "admin.users.details"}}">{{svg "octicon-person"}}</a> <a href="{{$.Link}}/{{.ID}}" data-tooltip-content="{{ctx.Locale.Tr "admin.users.details"}}">{{svg "octicon-person"}}</a>
<a href="{{$.Link}}/{{.ID}}/edit" data-tooltip-content="{{ctx.Locale.Tr "edit"}}">{{svg "octicon-pencil"}}</a> <a href="{{$.Link}}/{{.ID}}/edit" data-tooltip-content="{{ctx.Locale.Tr "edit"}}">{{svg "octicon-pencil"}}</a>
</div> </div>

@ -2,7 +2,7 @@
<div class="admin-setting-content"> <div class="admin-setting-content">
<div class="admin-responsive-columns"> <div class="admin-responsive-columns">
<div class="gt-f1"> <div class="tw-flex-1">
<h4 class="ui top attached header"> <h4 class="ui top attached header">
{{.Title}} {{.Title}}
<div class="ui right"> <div class="ui right">
@ -13,7 +13,7 @@
{{template "admin/user/view_details" .}} {{template "admin/user/view_details" .}}
</div> </div>
</div> </div>
<div class="gt-f1"> <div class="tw-flex-1">
<h4 class="ui top attached header"> <h4 class="ui top attached header">
{{ctx.Locale.Tr "admin.emails"}} {{ctx.Locale.Tr "admin.emails"}}
<div class="ui right"> <div class="ui right">

@ -56,7 +56,7 @@
<div class="navbar-right ui secondary menu"> <div class="navbar-right ui secondary menu">
{{if and .IsSigned .MustChangePassword}} {{if and .IsSigned .MustChangePassword}}
<div class="ui dropdown jump item" data-tooltip-content="{{ctx.Locale.Tr "user_profile_and_more"}}"> <div class="ui dropdown jump item" data-tooltip-content="{{ctx.Locale.Tr "user_profile_and_more"}}">
<span class="text gt-df gt-ac"> <span class="text tw-flex tw-content-center">
{{ctx.AvatarUtils.Avatar .SignedUser 24 "gt-mr-2"}} {{ctx.AvatarUtils.Avatar .SignedUser 24 "gt-mr-2"}}
<span class="only-mobile gt-ml-3">{{.SignedUser.Name}}</span> <span class="only-mobile gt-ml-3">{{.SignedUser.Name}}</span>
<span class="not-mobile">{{svg "octicon-triangle-down"}}</span> <span class="not-mobile">{{svg "octicon-triangle-down"}}</span>
@ -83,8 +83,8 @@
<span class="only-mobile gt-ml-3">{{ctx.Locale.Tr "active_stopwatch"}}</span> <span class="only-mobile gt-ml-3">{{ctx.Locale.Tr "active_stopwatch"}}</span>
</a> </a>
<div class="active-stopwatch-popup item tippy-target gt-p-3"> <div class="active-stopwatch-popup item tippy-target gt-p-3">
<div class="gt-df gt-ac"> <div class="tw-flex tw-content-center">
<a class="stopwatch-link gt-df gt-ac" href="{{.ActiveStopwatch.IssueLink}}"> <a class="stopwatch-link tw-flex tw-content-center" href="{{.ActiveStopwatch.IssueLink}}">
{{svg "octicon-issue-opened" 16 "gt-mr-3"}} {{svg "octicon-issue-opened" 16 "gt-mr-3"}}
<span class="stopwatch-issue">{{.ActiveStopwatch.RepoSlug}}#{{.ActiveStopwatch.IssueIndex}}</span> <span class="stopwatch-issue">{{.ActiveStopwatch.RepoSlug}}#{{.ActiveStopwatch.IssueIndex}}</span>
<span class="ui primary label stopwatch-time gt-my-0 gt-mx-4" data-seconds="{{.ActiveStopwatch.Seconds}}"> <span class="ui primary label stopwatch-time gt-my-0 gt-mx-4" data-seconds="{{.ActiveStopwatch.Seconds}}">
@ -142,7 +142,7 @@
</div><!-- end dropdown menu create new --> </div><!-- end dropdown menu create new -->
<div class="ui dropdown jump item gt-mx-0 gt-pr-3" data-tooltip-content="{{ctx.Locale.Tr "user_profile_and_more"}}"> <div class="ui dropdown jump item gt-mx-0 gt-pr-3" data-tooltip-content="{{ctx.Locale.Tr "user_profile_and_more"}}">
<span class="text gt-df gt-ac"> <span class="text tw-flex tw-content-center">
{{ctx.AvatarUtils.Avatar .SignedUser 24 "gt-mr-2"}} {{ctx.AvatarUtils.Avatar .SignedUser 24 "gt-mr-2"}}
<span class="only-mobile gt-ml-3">{{.SignedUser.Name}}</span> <span class="only-mobile gt-ml-3">{{.SignedUser.Name}}</span>
<span class="not-mobile">{{svg "octicon-triangle-down"}}</span> <span class="not-mobile">{{svg "octicon-triangle-down"}}</span>

@ -73,7 +73,7 @@
{{template "base/modal_actions_confirm" (dict "ModalButtonDangerText" "I know and must do this is dangerous operation")}} {{template "base/modal_actions_confirm" (dict "ModalButtonDangerText" "I know and must do this is dangerous operation")}}
</div> </div>
<div class="modal-buttons flex-text-block gt-fw"></div> <div class="modal-buttons flex-text-block tw-flex-wrap"></div>
<script type="module"> <script type="module">
for (const el of $('.ui.modal')) { for (const el of $('.ui.modal')) {
const $btn = $('<button>').text(`${el.id}`).on('click', () => { const $btn = $('<button>').text(`${el.id}`).on('click', () => {

@ -1,6 +1,6 @@
{{template "base/head" .}} {{template "base/head" .}}
<div class="page-content devtest"> <div class="page-content devtest">
<div class="gt-df"> <div class="tw-flex">
<div style="width: 80%; "> <div style="width: 80%; ">
hello hello hello hello hello hello hello hello hello hello hello hello hello hello hello hello hello hello hello hello
</div> </div>

@ -1,5 +1,5 @@
<div class="ui small secondary filter menu gt-ac gt-mx-0"> <div class="ui small secondary filter menu tw-content-center gt-mx-0">
<form class="ui form ignore-dirty gt-f1"> <form class="ui form ignore-dirty tw-flex-1">
{{if .PageIsExploreUsers}} {{if .PageIsExploreUsers}}
{{template "shared/search/combo" dict "Value" .Keyword "Placeholder" (ctx.Locale.Tr "search.user_kind")}} {{template "shared/search/combo" dict "Value" .Keyword "Placeholder" (ctx.Locale.Tr "search.user_kind")}}
{{else}} {{else}}

@ -1,6 +1,6 @@
<div class="flex-list"> <div class="flex-list">
{{range .Users}} {{range .Users}}
<div class="flex-item gt-ac"> <div class="flex-item tw-content-center">
<div class="flex-item-leading"> <div class="flex-item-leading">
{{ctx.AvatarUtils.Avatar . 48}} {{ctx.AvatarUtils.Avatar . 48}}
</div> </div>

@ -1,13 +1,13 @@
<div class="ui container gt-df"> <div class="ui container tw-flex">
{{ctx.AvatarUtils.Avatar .Org 100 "org-avatar"}} {{ctx.AvatarUtils.Avatar .Org 100 "org-avatar"}}
<div id="org-info" class="gt-df gt-fc"> <div id="org-info" class="tw-flex tw-flex-col">
<div class="ui header"> <div class="ui header">
{{.Org.DisplayName}} {{.Org.DisplayName}}
<span class="org-visibility"> <span class="org-visibility">
{{if .Org.Visibility.IsLimited}}<span class="ui large basic horizontal label">{{ctx.Locale.Tr "org.settings.visibility.limited_shortname"}}</span>{{end}} {{if .Org.Visibility.IsLimited}}<span class="ui large basic horizontal label">{{ctx.Locale.Tr "org.settings.visibility.limited_shortname"}}</span>{{end}}
{{if .Org.Visibility.IsPrivate}}<span class="ui large basic horizontal label">{{ctx.Locale.Tr "org.settings.visibility.private_shortname"}}</span>{{end}} {{if .Org.Visibility.IsPrivate}}<span class="ui large basic horizontal label">{{ctx.Locale.Tr "org.settings.visibility.private_shortname"}}</span>{{end}}
</span> </span>
<span class="gt-df gt-ac gt-gap-2 tw-ml-auto gt-font-16 tw-whitespace-nowrap"> <span class="tw-flex tw-content-center gt-gap-2 tw-ml-auto gt-font-16 tw-whitespace-nowrap">
{{if .EnableFeed}} {{if .EnableFeed}}
<a class="ui basic label button gt-mr-0" href="{{.Org.HomeLink}}.rss" data-tooltip-content="{{ctx.Locale.Tr "rss_feed"}}"> <a class="ui basic label button gt-mr-0" href="{{.Org.HomeLink}}.rss" data-tooltip-content="{{ctx.Locale.Tr "rss_feed"}}">
{{svg "octicon-rss" 24}} {{svg "octicon-rss" 24}}

@ -25,9 +25,9 @@
<div class="divider"></div> <div class="divider"></div>
{{end}} {{end}}
{{if .NumMembers}} {{if .NumMembers}}
<h4 class="ui top attached header gt-df"> <h4 class="ui top attached header tw-flex">
<strong class="gt-f1">{{ctx.Locale.Tr "org.members"}}</strong> <strong class="tw-flex-1">{{ctx.Locale.Tr "org.members"}}</strong>
<a class="text grey gt-df gt-ac" href="{{.OrgLink}}/members"><span>{{.NumMembers}}</span> {{svg "octicon-chevron-right"}}</a> <a class="text grey tw-flex tw-content-center" href="{{.OrgLink}}/members"><span>{{.NumMembers}}</span> {{svg "octicon-chevron-right"}}</a>
</h4> </h4>
<div class="ui attached segment members"> <div class="ui attached segment members">
{{$isMember := .IsOrganizationMember}} {{$isMember := .IsOrganizationMember}}
@ -39,9 +39,9 @@
</div> </div>
{{end}} {{end}}
{{if .IsOrganizationMember}} {{if .IsOrganizationMember}}
<div class="ui top attached header gt-df"> <div class="ui top attached header tw-flex">
<strong class="gt-f1">{{ctx.Locale.Tr "org.teams"}}</strong> <strong class="tw-flex-1">{{ctx.Locale.Tr "org.teams"}}</strong>
<a class="text grey gt-df gt-ac" href="{{.OrgLink}}/teams"><span>{{.Org.NumTeams}}</span> {{svg "octicon-chevron-right"}}</a> <a class="text grey tw-flex tw-content-center" href="{{.OrgLink}}/teams"><span>{{.Org.NumTeams}}</span> {{svg "octicon-chevron-right"}}</a>
</div> </div>
<div class="ui attached table segment teams"> <div class="ui attached table segment teams">
{{range .Teams}} {{range .Teams}}

@ -7,7 +7,7 @@
<div class="flex-list"> <div class="flex-list">
{{range .Members}} {{range .Members}}
{{$isPublic := index $.MembersIsPublicMember .ID}} {{$isPublic := index $.MembersIsPublicMember .ID}}
<div class="flex-item {{if $.PublicOnly}}gt-ac{{end}}"> <div class="flex-item {{if $.PublicOnly}}tw-content-center{{end}}">
<div class="flex-item-leading"> <div class="flex-item-leading">
<a href="{{.HomeLink}}">{{ctx.AvatarUtils.Avatar . 48}}</a> <a href="{{.HomeLink}}">{{ctx.AvatarUtils.Avatar . 48}}</a>
</div> </div>

@ -1,7 +1,7 @@
{{template "org/settings/layout_head" (dict "ctxData" . "pageClass" "organization settings labels")}} {{template "org/settings/layout_head" (dict "ctxData" . "pageClass" "organization settings labels")}}
<div class="org-setting-content"> <div class="org-setting-content">
<div class="gt-df gt-ac"> <div class="tw-flex tw-content-center">
<div class="gt-f1"> <div class="tw-flex-1">
{{ctx.Locale.Tr "org.settings.labels_desc"}} {{ctx.Locale.Tr "org.settings.labels_desc"}}
</div> </div>
<button class="ui small primary new-label button">{{ctx.Locale.Tr "repo.issues.new_label"}}</button> <button class="ui small primary new-label button">{{ctx.Locale.Tr "repo.issues.new_label"}}</button>

@ -9,7 +9,7 @@
{{template "org/team/navbar" .}} {{template "org/team/navbar" .}}
{{if .IsOrganizationOwner}} {{if .IsOrganizationOwner}}
<div class="ui attached segment"> <div class="ui attached segment">
<form class="ui form ignore-dirty gt-df gt-fw gt-gap-3" action="{{$.OrgLink}}/teams/{{$.Team.LowerName | PathEscape}}/action/add" method="post"> <form class="ui form ignore-dirty tw-flex tw-flex-wrap gt-gap-3" action="{{$.OrgLink}}/teams/{{$.Team.LowerName | PathEscape}}/action/add" method="post">
{{.CsrfTokenHtml}} {{.CsrfTokenHtml}}
<input type="hidden" name="uid" value="{{.SignedUser.ID}}"> <input type="hidden" name="uid" value="{{.SignedUser.ID}}">
<div id="search-user-box" class="ui search gt-mr-3"{{if .IsEmailInviteEnabled}} data-allow-email="true" data-allow-email-description="{{ctx.Locale.Tr "org.teams.invite_team_member" $.Team.Name}}"{{end}}> <div id="search-user-box" class="ui search gt-mr-3"{{if .IsEmailInviteEnabled}} data-allow-email="true" data-allow-email-description="{{ctx.Locale.Tr "org.teams.invite_team_member" $.Team.Name}}"{{end}}>
@ -24,7 +24,7 @@
<div class="ui attached segment"> <div class="ui attached segment">
<div class="flex-list"> <div class="flex-list">
{{range .Team.Members}} {{range .Team.Members}}
<div class="flex-item gt-ac"> <div class="flex-item tw-content-center">
<div class="flex-item-leading"> <div class="flex-item-leading">
<a href="{{.HomeLink}}">{{ctx.AvatarUtils.Avatar . 32}}</a> <a href="{{.HomeLink}}">{{ctx.AvatarUtils.Avatar . 32}}</a>
</div> </div>
@ -56,7 +56,7 @@
<div class="ui attached segment"> <div class="ui attached segment">
<div class="flex-list"> <div class="flex-list">
{{range .Invites}} {{range .Invites}}
<div class="flex-item gt-ac"> <div class="flex-item tw-content-center">
<div class="flex-item-main"> <div class="flex-item-main">
{{.Email}} {{.Email}}
</div> </div>

@ -78,11 +78,11 @@
<tr> <tr>
<th>{{ctx.Locale.Tr "units.unit"}}</th> <th>{{ctx.Locale.Tr "units.unit"}}</th>
<th class="center aligned">{{ctx.Locale.Tr "org.teams.none_access"}} <th class="center aligned">{{ctx.Locale.Tr "org.teams.none_access"}}
<span class="gt-vm" data-tooltip-content="{{ctx.Locale.Tr "org.teams.none_access_helper"}}">{{svg "octicon-question" 16 "gt-ml-2"}}</span></th> <span class="tw-align-middle" data-tooltip-content="{{ctx.Locale.Tr "org.teams.none_access_helper"}}">{{svg "octicon-question" 16 "gt-ml-2"}}</span></th>
<th class="center aligned">{{ctx.Locale.Tr "org.teams.read_access"}} <th class="center aligned">{{ctx.Locale.Tr "org.teams.read_access"}}
<span class="gt-vm" data-tooltip-content="{{ctx.Locale.Tr "org.teams.read_access_helper"}}">{{svg "octicon-question" 16 "gt-ml-2"}}</span></th> <span class="tw-align-middle" data-tooltip-content="{{ctx.Locale.Tr "org.teams.read_access_helper"}}">{{svg "octicon-question" 16 "gt-ml-2"}}</span></th>
<th class="center aligned">{{ctx.Locale.Tr "org.teams.write_access"}} <th class="center aligned">{{ctx.Locale.Tr "org.teams.write_access"}}
<span class="gt-vm" data-tooltip-content="{{ctx.Locale.Tr "org.teams.write_access_helper"}}">{{svg "octicon-question" 16 "gt-ml-2"}}</span></th> <span class="tw-align-middle" data-tooltip-content="{{ctx.Locale.Tr "org.teams.write_access_helper"}}">{{svg "octicon-question" 16 "gt-ml-2"}}</span></th>
</tr> </tr>
</thead> </thead>
<tbody> <tbody>

@ -9,8 +9,8 @@
{{template "org/team/navbar" .}} {{template "org/team/navbar" .}}
{{$canAddRemove := and $.IsOrganizationOwner (not $.Team.IncludesAllRepositories)}} {{$canAddRemove := and $.IsOrganizationOwner (not $.Team.IncludesAllRepositories)}}
{{if $canAddRemove}} {{if $canAddRemove}}
<div class="ui attached segment gt-df gt-fw gt-gap-3"> <div class="ui attached segment tw-flex tw-flex-wrap gt-gap-3">
<form class="ui form ignore-dirty gt-f1 gt-df" action="{{$.OrgLink}}/teams/{{$.Team.LowerName | PathEscape}}/action/repo/add" method="post"> <form class="ui form ignore-dirty tw-flex-1 tw-flex" action="{{$.OrgLink}}/teams/{{$.Team.LowerName | PathEscape}}/action/repo/add" method="post">
{{.CsrfTokenHtml}} {{.CsrfTokenHtml}}
<div id="search-repo-box" data-uid="{{.Org.ID}}" class="ui search"> <div id="search-repo-box" data-uid="{{.Org.ID}}" class="ui search">
<div class="ui input"> <div class="ui input">
@ -19,7 +19,7 @@
</div> </div>
<button class="ui primary button gt-ml-3">{{ctx.Locale.Tr "add"}}</button> <button class="ui primary button gt-ml-3">{{ctx.Locale.Tr "add"}}</button>
</form> </form>
<div class="gt-dib"> <div class="tw-inline-block">
<button class="ui primary button link-action" data-modal-confirm="{{ctx.Locale.Tr "org.teams.add_all_repos_desc"}}" data-url="{{$.OrgLink}}/teams/{{$.Team.LowerName | PathEscape}}/action/repo/addall">{{ctx.Locale.Tr "add_all"}}</button> <button class="ui primary button link-action" data-modal-confirm="{{ctx.Locale.Tr "org.teams.add_all_repos_desc"}}" data-url="{{$.OrgLink}}/teams/{{$.Team.LowerName | PathEscape}}/action/repo/addall">{{ctx.Locale.Tr "add_all"}}</button>
<button class="ui red button link-action" data-modal-confirm="{{ctx.Locale.Tr "org.teams.remove_all_repos_desc"}}" data-url="{{$.OrgLink}}/teams/{{$.Team.LowerName | PathEscape}}/action/repo/removeall">{{ctx.Locale.Tr "remove_all"}}</button> <button class="ui red button link-action" data-modal-confirm="{{ctx.Locale.Tr "org.teams.remove_all_repos_desc"}}" data-url="{{$.OrgLink}}/teams/{{$.Team.LowerName | PathEscape}}/action/repo/removeall">{{ctx.Locale.Tr "remove_all"}}</button>
</div> </div>
@ -28,7 +28,7 @@
<div class="ui attached segment"> <div class="ui attached segment">
<div class="flex-list"> <div class="flex-list">
{{range .Team.Repos}} {{range .Team.Repos}}
<div class="flex-item gt-ac"> <div class="flex-item tw-content-center">
<div class="flex-item-leading"> <div class="flex-item-leading">
{{template "repo/icon" .}} {{template "repo/icon" .}}
</div> </div>

@ -90,8 +90,8 @@
<a class="tw-float-right" href="{{$.PackageDescriptor.PackageWebLink}}/versions">{{ctx.Locale.Tr "packages.versions.view_all"}}</a> <a class="tw-float-right" href="{{$.PackageDescriptor.PackageWebLink}}/versions">{{ctx.Locale.Tr "packages.versions.view_all"}}</a>
<div class="ui relaxed list"> <div class="ui relaxed list">
{{range .LatestVersions}} {{range .LatestVersions}}
<div class="item gt-df"> <div class="item tw-flex">
<a class="gt-f1 gt-ellipsis" title="{{.Version}}" href="{{$.PackageDescriptor.PackageWebLink}}/{{PathEscape .LowerVersion}}">{{.Version}}</a> <a class="tw-flex-1 gt-ellipsis" title="{{.Version}}" href="{{$.PackageDescriptor.PackageWebLink}}/{{PathEscape .LowerVersion}}">{{.Version}}</a>
<span class="text small">{{DateTime "short" .CreatedUnix}}</span> <span class="text small">{{DateTime "short" .CreatedUnix}}</span>
</div> </div>
{{end}} {{end}}

@ -1,5 +1,5 @@
{{if and $.CanWriteProjects (not $.Repository.IsArchived)}} {{if and $.CanWriteProjects (not $.Repository.IsArchived)}}
<div class="gt-df gt-sb gt-mb-4"> <div class="tw-flex tw-justify-between gt-mb-4">
<div class="small-menu-items ui compact tiny menu list-header-toggle"> <div class="small-menu-items ui compact tiny menu list-header-toggle">
<a class="item{{if not .IsShowClosed}} active{{end}}" href="?state=open&q={{$.Keyword}}"> <a class="item{{if not .IsShowClosed}} active{{end}}" href="?state=open&q={{$.Keyword}}">
{{svg "octicon-project-symlink" 16 "gt-mr-3"}} {{svg "octicon-project-symlink" 16 "gt-mr-3"}}

@ -1,7 +1,7 @@
{{$canWriteProject := and .CanWriteProjects (or (not .Repository) (not .Repository.IsArchived))}} {{$canWriteProject := and .CanWriteProjects (or (not .Repository) (not .Repository.IsArchived))}}
<div class="ui container"> <div class="ui container">
<div class="gt-df gt-sb gt-ac gt-mb-4"> <div class="tw-flex tw-justify-between tw-content-center gt-mb-4">
<h2 class="gt-mb-0">{{.Project.Title}}</h2> <h2 class="gt-mb-0">{{.Project.Title}}</h2>
{{if $canWriteProject}} {{if $canWriteProject}}
<div class="ui compact mini menu"> <div class="ui compact mini menu">

@ -25,7 +25,7 @@
</div> </div>
</div> </div>
<div class="twelve wide column content"> <div class="twelve wide column content">
<div class="ui secondary filter menu gt-je gt-df gt-ac"> <div class="ui secondary filter menu tw-justify-end tw-flex tw-content-center">
<!-- Actor --> <!-- Actor -->
<div class="ui{{if not .Actors}} disabled{{end}} dropdown jump item"> <div class="ui{{if not .Actors}} disabled{{end}} dropdown jump item">
<span class="text">{{ctx.Locale.Tr "actions.runs.actor"}}</span> <span class="text">{{ctx.Locale.Tr "actions.runs.actor"}}</span>

@ -6,7 +6,7 @@
</div> </div>
{{end}} {{end}}
{{range .Runs}} {{range .Runs}}
<div class="flex-item gt-ac"> <div class="flex-item tw-content-center">
<div class="flex-item-leading"> <div class="flex-item-leading">
{{template "repo/actions/status" (dict "status" .Status.String)}} {{template "repo/actions/status" (dict "status" .Status.String)}}
</div> </div>

@ -12,7 +12,7 @@
{{- $className = .className -}} {{- $className = .className -}}
{{- end -}} {{- end -}}
<span class="gt-df gt-ac" data-tooltip-content="{{ctx.Locale.Tr (printf "actions.status.%s" .status)}}"> <span class="tw-flex tw-content-center" data-tooltip-content="{{ctx.Locale.Tr (printf "actions.status.%s" .status)}}">
{{if eq .status "success"}} {{if eq .status "success"}}
{{svg "octicon-check-circle-fill" $size (printf "text green %s" $className)}} {{svg "octicon-check-circle-fill" $size (printf "text green %s" $className)}}
{{else if eq .status "skipped"}} {{else if eq .status "skipped"}}

@ -11,11 +11,11 @@
{{end}} {{end}}
{{end}} {{end}}
<div class="{{TabSizeClass .Editorconfig .FileName}} non-diff-file-content"> <div class="{{TabSizeClass .Editorconfig .FileName}} non-diff-file-content">
<h4 class="file-header ui top attached header gt-df gt-ac gt-sb gt-fw"> <h4 class="file-header ui top attached header tw-flex tw-content-center tw-justify-between tw-flex-wrap">
<div class="file-header-left gt-df gt-ac gt-py-3 gt-pr-4"> <div class="file-header-left tw-flex tw-content-center gt-py-3 gt-pr-4">
{{template "repo/file_info" .}} {{template "repo/file_info" .}}
</div> </div>
<div class="file-header-right file-actions gt-df gt-ac gt-fw"> <div class="file-header-right file-actions tw-flex tw-content-center tw-flex-wrap">
<div class="ui buttons"> <div class="ui buttons">
<a class="ui tiny button" href="{{$.RawFileLink}}">{{ctx.Locale.Tr "repo.file_raw"}}</a> <a class="ui tiny button" href="{{$.RawFileLink}}">{{ctx.Locale.Tr "repo.file_raw"}}</a>
{{if not .IsViewCommit}} {{if not .IsViewCommit}}

@ -25,7 +25,7 @@
<button class="btn interact-fg gt-px-2" data-clipboard-text="{{.DefaultBranchBranch.DBBranch.Name}}">{{svg "octicon-copy" 14}}</button> <button class="btn interact-fg gt-px-2" data-clipboard-text="{{.DefaultBranchBranch.DBBranch.Name}}">{{svg "octicon-copy" 14}}</button>
{{template "repo/commit_statuses" dict "Status" (index $.CommitStatus .DefaultBranchBranch.DBBranch.CommitID) "Statuses" (index $.CommitStatuses .DefaultBranchBranch.DBBranch.CommitID)}} {{template "repo/commit_statuses" dict "Status" (index $.CommitStatus .DefaultBranchBranch.DBBranch.CommitID) "Statuses" (index $.CommitStatuses .DefaultBranchBranch.DBBranch.CommitID)}}
</div> </div>
<p class="info gt-df gt-ac gt-my-2">{{svg "octicon-git-commit" 16 "gt-mr-2"}}<a href="{{.RepoLink}}/commit/{{PathEscape .DefaultBranchBranch.DBBranch.CommitID}}">{{ShortSha .DefaultBranchBranch.DBBranch.CommitID}}</a> · <span class="commit-message">{{RenderCommitMessage $.Context .DefaultBranchBranch.DBBranch.CommitMessage (.Repository.ComposeMetas ctx)}}</span> · {{ctx.Locale.Tr "org.repo_updated"}} {{TimeSince .DefaultBranchBranch.DBBranch.CommitTime.AsTime ctx.Locale}}{{if .DefaultBranchBranch.DBBranch.Pusher}} &nbsp;{{template "shared/user/avatarlink" dict "user" .DefaultBranchBranch.DBBranch.Pusher}}{{template "shared/user/namelink" .DefaultBranchBranch.DBBranch.Pusher}}{{end}}</p> <p class="info tw-flex tw-content-center gt-my-2">{{svg "octicon-git-commit" 16 "gt-mr-2"}}<a href="{{.RepoLink}}/commit/{{PathEscape .DefaultBranchBranch.DBBranch.CommitID}}">{{ShortSha .DefaultBranchBranch.DBBranch.CommitID}}</a> · <span class="commit-message">{{RenderCommitMessage $.Context .DefaultBranchBranch.DBBranch.CommitMessage (.Repository.ComposeMetas ctx)}}</span> · {{ctx.Locale.Tr "org.repo_updated"}} {{TimeSince .DefaultBranchBranch.DBBranch.CommitTime.AsTime ctx.Locale}}{{if .DefaultBranchBranch.DBBranch.Pusher}} &nbsp;{{template "shared/user/avatarlink" dict "user" .DefaultBranchBranch.DBBranch.Pusher}}{{template "shared/user/namelink" .DefaultBranchBranch.DBBranch.Pusher}}{{end}}</p>
</td> </td>
<td class="right aligned middle aligned overflow-visible"> <td class="right aligned middle aligned overflow-visible">
{{if and $.IsWriter (not $.Repository.IsArchived) (not .IsDeleted)}} {{if and $.IsWriter (not $.Repository.IsArchived) (not .IsDeleted)}}
@ -67,8 +67,8 @@
</div> </div>
{{end}} {{end}}
<h4 class="ui top attached header gt-df gt-ac gt-sb"> <h4 class="ui top attached header tw-flex tw-content-center tw-justify-between">
<div class="gt-df gt-ac"> <div class="tw-flex tw-content-center">
{{ctx.Locale.Tr "repo.branches"}} {{ctx.Locale.Tr "repo.branches"}}
</div> </div>
</h4> </h4>
@ -98,7 +98,7 @@
<button class="btn interact-fg gt-px-2" data-clipboard-text="{{.DBBranch.Name}}">{{svg "octicon-copy" 14}}</button> <button class="btn interact-fg gt-px-2" data-clipboard-text="{{.DBBranch.Name}}">{{svg "octicon-copy" 14}}</button>
{{template "repo/commit_statuses" dict "Status" (index $.CommitStatus .DBBranch.CommitID) "Statuses" (index $.CommitStatuses .DBBranch.CommitID)}} {{template "repo/commit_statuses" dict "Status" (index $.CommitStatus .DBBranch.CommitID) "Statuses" (index $.CommitStatuses .DBBranch.CommitID)}}
</div> </div>
<p class="info gt-df gt-ac gt-my-2">{{svg "octicon-git-commit" 16 "gt-mr-2"}}<a href="{{$.RepoLink}}/commit/{{PathEscape .DBBranch.CommitID}}">{{ShortSha .DBBranch.CommitID}}</a> · <span class="commit-message">{{RenderCommitMessage $.Context .DBBranch.CommitMessage ($.Repository.ComposeMetas ctx)}}</span> · {{ctx.Locale.Tr "org.repo_updated"}} {{TimeSince .DBBranch.CommitTime.AsTime ctx.Locale}}{{if .DBBranch.Pusher}} &nbsp;{{template "shared/user/avatarlink" dict "user" .DBBranch.Pusher}} &nbsp;{{template "shared/user/namelink" .DBBranch.Pusher}}{{end}}</p> <p class="info tw-flex tw-content-center gt-my-2">{{svg "octicon-git-commit" 16 "gt-mr-2"}}<a href="{{$.RepoLink}}/commit/{{PathEscape .DBBranch.CommitID}}">{{ShortSha .DBBranch.CommitID}}</a> · <span class="commit-message">{{RenderCommitMessage $.Context .DBBranch.CommitMessage ($.Repository.ComposeMetas ctx)}}</span> · {{ctx.Locale.Tr "org.repo_updated"}} {{TimeSince .DBBranch.CommitTime.AsTime ctx.Locale}}{{if .DBBranch.Pusher}} &nbsp;{{template "shared/user/avatarlink" dict "user" .DBBranch.Pusher}} &nbsp;{{template "shared/user/namelink" .DBBranch.Pusher}}{{end}}</p>
{{end}} {{end}}
</td> </td>
<td class="two wide ui"> <td class="two wide ui">
@ -134,7 +134,7 @@
</a> </a>
{{end}} {{end}}
{{else}} {{else}}
<a href="{{.LatestPullRequest.Issue.Link}}" class="gt-vm ref-issue">{{if not .LatestPullRequest.IsSameRepo}}{{.LatestPullRequest.BaseRepo.FullName}}{{end}}#{{.LatestPullRequest.Issue.Index}}</a> <a href="{{.LatestPullRequest.Issue.Link}}" class="tw-align-middle ref-issue">{{if not .LatestPullRequest.IsSameRepo}}{{.LatestPullRequest.BaseRepo.FullName}}{{end}}#{{.LatestPullRequest.Issue.Index}}</a>
{{if .LatestPullRequest.HasMerged}} {{if .LatestPullRequest.HasMerged}}
<a href="{{.LatestPullRequest.Issue.Link}}" class="ui purple large label">{{svg "octicon-git-merge" 16 "gt-mr-2"}}{{ctx.Locale.Tr "repo.pulls.merged"}}</a> <a href="{{.LatestPullRequest.Issue.Link}}" class="ui purple large label">{{svg "octicon-git-merge" 16 "gt-mr-2"}}{{ctx.Locale.Tr "repo.pulls.merged"}}</a>
{{else if .LatestPullRequest.Issue.IsClosed}} {{else if .LatestPullRequest.Issue.IsClosed}}

@ -70,8 +70,8 @@
<div class="js-branch-tag-selector {{if .ContainerClasses}}{{.ContainerClasses}}{{end}}"> <div class="js-branch-tag-selector {{if .ContainerClasses}}{{.ContainerClasses}}{{end}}">
{{/* show dummy elements before Vue componment is mounted, this code must match the code in BranchTagSelector.vue */}} {{/* show dummy elements before Vue componment is mounted, this code must match the code in BranchTagSelector.vue */}}
<div class="ui dropdown custom"> <div class="ui dropdown custom">
<button class="branch-dropdown-button gt-ellipsis ui basic small compact button gt-df gt-m-0"> <button class="branch-dropdown-button gt-ellipsis ui basic small compact button tw-flex gt-m-0">
<span class="text gt-df gt-ac gt-mr-2"> <span class="text tw-flex tw-content-center gt-mr-2">
{{if .release}} {{if .release}}
{{ctx.Locale.Tr "repo.release.compare"}} {{ctx.Locale.Tr "repo.release.compare"}}
{{else}} {{else}}

@ -1,6 +1,6 @@
{{range .RecentlyPushedNewBranches}} {{range .RecentlyPushedNewBranches}}
<div class="ui positive message gt-df gt-ac"> <div class="ui positive message tw-flex tw-content-center">
<div class="gt-f1"> <div class="tw-flex-1">
{{$timeSince := TimeSince .CommitTime.AsTime ctx.Locale}} {{$timeSince := TimeSince .CommitTime.AsTime ctx.Locale}}
{{$branchLink := HTMLFormat `<a href="%s/src/branch/%s">%s</a>` $.RepoLink (PathEscapeSegments .Name) .Name}} {{$branchLink := HTMLFormat `<a href="%s/src/branch/%s">%s</a>` $.RepoLink (PathEscapeSegments .Name) .Name}}
{{ctx.Locale.Tr "repo.pulls.recently_pushed_new_branches" $branchLink $timeSince}} {{ctx.Locale.Tr "repo.pulls.recently_pushed_new_branches" $branchLink $timeSince}}

@ -7,13 +7,13 @@
<div class="branch-and-tag-detail gt-hidden"> <div class="branch-and-tag-detail gt-hidden">
<div class="divider"></div> <div class="divider"></div>
<div>{{ctx.Locale.Tr "repo.commit.contained_in"}}</div> <div>{{ctx.Locale.Tr "repo.commit.contained_in"}}</div>
<div class="gt-df gt-mt-3"> <div class="tw-flex gt-mt-3">
<div class="gt-p-2">{{svg "octicon-git-branch"}}</div> <div class="gt-p-2">{{svg "octicon-git-branch"}}</div>
<div class="branch-area flex-text-block gt-fw gt-f1"></div> <div class="branch-area flex-text-block tw-flex-wrap tw-flex-1"></div>
</div> </div>
<div class="gt-df gt-mt-3"> <div class="tw-flex gt-mt-3">
<div class="gt-p-2">{{svg "octicon-tag"}}</div> <div class="gt-p-2">{{svg "octicon-tag"}}</div>
<div class="tag-area flex-text-block gt-fw gt-f1"></div> <div class="tag-area flex-text-block tw-flex-wrap tw-flex-1"></div>
</div> </div>
</div> </div>
</div> </div>

@ -18,8 +18,8 @@
{{end}} {{end}}
{{end}} {{end}}
<div class="ui top attached header clearing segment tw-relative commit-header {{$class}}"> <div class="ui top attached header clearing segment tw-relative commit-header {{$class}}">
<div class="gt-df gt-mb-4 gt-fw"> <div class="tw-flex gt-mb-4 tw-flex-wrap">
<h3 class="gt-mb-0 gt-f1"><span class="commit-summary" title="{{.Commit.Summary}}">{{RenderCommitMessage $.Context .Commit.Message ($.Repository.ComposeMetas ctx)}}</span>{{template "repo/commit_statuses" dict "Status" .CommitStatus "Statuses" .CommitStatuses}}</h3> <h3 class="gt-mb-0 tw-flex-1"><span class="commit-summary" title="{{.Commit.Summary}}">{{RenderCommitMessage $.Context .Commit.Message ($.Repository.ComposeMetas ctx)}}</span>{{template "repo/commit_statuses" dict "Status" .CommitStatus "Statuses" .CommitStatuses}}</h3>
{{if not $.PageIsWiki}} {{if not $.PageIsWiki}}
<div> <div>
<a class="ui primary tiny button" href="{{.SourcePath}}"> <a class="ui primary tiny button" href="{{.SourcePath}}">
@ -139,8 +139,8 @@
{{end}} {{end}}
{{template "repo/commit_load_branches_and_tags" .}} {{template "repo/commit_load_branches_and_tags" .}}
</div> </div>
<div class="ui attached segment gt-df gt-ac gt-sb gt-py-2 commit-header-row gt-fw {{$class}}"> <div class="ui attached segment tw-flex tw-content-center tw-justify-between gt-py-2 commit-header-row tw-flex-wrap {{$class}}">
<div class="gt-df gt-ac author"> <div class="tw-flex tw-content-center author">
{{if .Author}} {{if .Author}}
{{ctx.AvatarUtils.Avatar .Author 28 "gt-mr-3"}} {{ctx.AvatarUtils.Avatar .Author 28 "gt-mr-3"}}
{{if .Author.FullName}} {{if .Author.FullName}}
@ -164,7 +164,7 @@
{{end}} {{end}}
{{end}} {{end}}
</div> </div>
<div class="ui horizontal list gt-df gt-ac"> <div class="ui horizontal list tw-flex tw-content-center">
{{if .Parents}} {{if .Parents}}
<div class="item"> <div class="item">
<span>{{ctx.Locale.Tr "repo.diff.parent"}}</span> <span>{{ctx.Locale.Tr "repo.diff.parent"}}</span>
@ -184,8 +184,8 @@
</div> </div>
</div> </div>
{{if .Commit.Signature}} {{if .Commit.Signature}}
<div class="ui bottom attached message tw-text-left gt-df gt-ac gt-sb commit-header-row gt-fw gt-mb-0 {{$class}}"> <div class="ui bottom attached message tw-text-left tw-flex tw-content-center tw-justify-between commit-header-row tw-flex-wrap gt-mb-0 {{$class}}">
<div class="gt-df gt-ac"> <div class="tw-flex tw-content-center">
{{if .Verification.Verified}} {{if .Verification.Verified}}
{{if ne .Verification.SigningUser.ID 0}} {{if ne .Verification.SigningUser.ID 0}}
{{svg "gitea-lock" 16 "gt-mr-3"}} {{svg "gitea-lock" 16 "gt-mr-3"}}
@ -209,7 +209,7 @@
<span class="ui text">{{ctx.Locale.Tr .Verification.Reason}}</span> <span class="ui text">{{ctx.Locale.Tr .Verification.Reason}}</span>
{{end}} {{end}}
</div> </div>
<div class="gt-df gt-ac"> <div class="tw-flex tw-content-center">
{{if .Verification.Verified}} {{if .Verification.Verified}}
{{if ne .Verification.SigningUser.ID 0}} {{if ne .Verification.SigningUser.ID 0}}
{{svg "octicon-verified" 16 "gt-mr-3"}} {{svg "octicon-verified" 16 "gt-mr-3"}}

@ -1,10 +1,10 @@
{{if .Statuses}} {{if .Statuses}}
{{if and (eq (len .Statuses) 1) .Status.TargetURL}} {{if and (eq (len .Statuses) 1) .Status.TargetURL}}
<a class="gt-vm {{.AdditionalClasses}} tw-no-underline" data-tippy="commit-statuses" href="{{.Status.TargetURL}}"> <a class="tw-align-middle {{.AdditionalClasses}} tw-no-underline" data-tippy="commit-statuses" href="{{.Status.TargetURL}}">
{{template "repo/commit_status" .Status}} {{template "repo/commit_status" .Status}}
</a> </a>
{{else}} {{else}}
<span class="gt-vm {{.AdditionalClasses}}" data-tippy="commit-statuses" tabindex="0"> <span class="tw-align-middle {{.AdditionalClasses}}" data-tippy="commit-statuses" tabindex="0">
{{template "repo/commit_status" .Status}} {{template "repo/commit_status" .Status}}
</span> </span>
{{end}} {{end}}

@ -4,7 +4,7 @@
<div class="ui container"> <div class="ui container">
{{template "repo/sub_menu" .}} {{template "repo/sub_menu" .}}
<div class="repo-button-row"> <div class="repo-button-row">
<div class="gt-df gt-ac"> <div class="tw-flex tw-content-center">
{{template "repo/branch_dropdown" dict "root" . "ContainerClasses" "gt-mr-2"}} {{template "repo/branch_dropdown" dict "root" . "ContainerClasses" "gt-mr-2"}}
<a href="{{.RepoLink}}/graph" class="ui basic small compact button"> <a href="{{.RepoLink}}/graph" class="ui basic small compact button">
{{svg "octicon-git-branch"}} {{svg "octicon-git-branch"}}

@ -13,7 +13,7 @@
{{$commitLink:= printf "%s/commit/%s" $.comment.Issue.PullRequest.BaseRepo.Link (PathEscape .ID.String)}} {{$commitLink:= printf "%s/commit/%s" $.comment.Issue.PullRequest.BaseRepo.Link (PathEscape .ID.String)}}
<span class="shabox gt-df gt-ac tw-float-right"> <span class="shabox tw-flex tw-content-center tw-float-right">
{{template "repo/commit_statuses" dict "Status" .Status "Statuses" .Statuses}} {{template "repo/commit_statuses" dict "Status" .Status "Statuses" .Statuses}}
{{$class := "ui sha label"}} {{$class := "ui sha label"}}
{{if .Signature}} {{if .Signature}}

@ -1,5 +1,5 @@
<h4 class="ui top attached header commits-table gt-df gt-ac gt-sb"> <h4 class="ui top attached header commits-table tw-flex tw-content-center tw-justify-between">
<div class="commits-table-left gt-df gt-ac"> <div class="commits-table-left tw-flex tw-content-center">
{{if or .PageIsCommits (gt .CommitCount 0)}} {{if or .PageIsCommits (gt .CommitCount 0)}}
{{.CommitCount}} {{ctx.Locale.Tr "repo.commits.commits"}} {{.CommitCount}} {{ctx.Locale.Tr "repo.commits.commits"}}
{{else if .IsNothingToCompare}} {{else if .IsNothingToCompare}}

@ -3,7 +3,7 @@
<tr class="{{.GetHTMLDiffLineType}}-code nl-{{$k}} ol-{{$k}}"> <tr class="{{.GetHTMLDiffLineType}}-code nl-{{$k}} ol-{{$k}}">
{{if eq .GetType 4}} {{if eq .GetType 4}}
<td class="lines-num lines-num-old" data-line-num="{{if $line.LeftIdx}}{{$line.LeftIdx}}{{end}}"> <td class="lines-num lines-num-old" data-line-num="{{if $line.LeftIdx}}{{$line.LeftIdx}}{{end}}">
<div class="gt-df"> <div class="tw-flex">
{{if or (eq $line.GetExpandDirection 3) (eq $line.GetExpandDirection 5)}} {{if or (eq $line.GetExpandDirection 3) (eq $line.GetExpandDirection 5)}}
<button class="code-expander-button" hx-target="closest tr" hx-get="{{$.RepoLink}}/blob_excerpt/{{PathEscape $.AfterCommitID}}?{{$line.GetBlobExcerptQuery}}&style=split&direction=down&wiki={{$.PageIsWiki}}&anchor={{$.Anchor}}"> <button class="code-expander-button" hx-target="closest tr" hx-get="{{$.RepoLink}}/blob_excerpt/{{PathEscape $.AfterCommitID}}?{{$line.GetBlobExcerptQuery}}&style=split&direction=down&wiki={{$.PageIsWiki}}&anchor={{$.Anchor}}">
{{svg "octicon-fold-down"}} {{svg "octicon-fold-down"}}
@ -49,7 +49,7 @@
<tr class="{{.GetHTMLDiffLineType}}-code nl-{{$k}} ol-{{$k}}"> <tr class="{{.GetHTMLDiffLineType}}-code nl-{{$k}} ol-{{$k}}">
{{if eq .GetType 4}} {{if eq .GetType 4}}
<td colspan="2" class="lines-num"> <td colspan="2" class="lines-num">
<div class="gt-df"> <div class="tw-flex">
{{if or (eq $line.GetExpandDirection 3) (eq $line.GetExpandDirection 5)}} {{if or (eq $line.GetExpandDirection 3) (eq $line.GetExpandDirection 5)}}
<button class="code-expander-button" hx-target="closest tr" hx-get="{{$.RepoLink}}/blob_excerpt/{{PathEscape $.AfterCommitID}}?data-query={{$line.GetBlobExcerptQuery}}&style=unified&direction=down&wiki={{$.PageIsWiki}}&anchor={{$.Anchor}}"> <button class="code-expander-button" hx-target="closest tr" hx-get="{{$.RepoLink}}/blob_excerpt/{{PathEscape $.AfterCommitID}}?data-query={{$line.GetBlobExcerptQuery}}&style=unified&direction=down&wiki={{$.PageIsWiki}}&anchor={{$.Anchor}}">
{{svg "octicon-fold-down"}} {{svg "octicon-fold-down"}}

@ -1,7 +1,7 @@
{{$showFileTree := (and (not .DiffNotAvailable) (gt .Diff.NumFiles 1))}} {{$showFileTree := (and (not .DiffNotAvailable) (gt .Diff.NumFiles 1))}}
<div> <div>
<div class="diff-detail-box diff-box"> <div class="diff-detail-box diff-box">
<div class="gt-df gt-ac gt-fw gt-gap-3 gt-ml-1"> <div class="tw-flex tw-content-center tw-flex-wrap gt-gap-3 gt-ml-1">
{{if $showFileTree}} {{if $showFileTree}}
<button class="diff-toggle-file-tree-button not-mobile btn interact-fg" data-show-text="{{ctx.Locale.Tr "repo.diff.show_file_tree"}}" data-hide-text="{{ctx.Locale.Tr "repo.diff.hide_file_tree"}}"> <button class="diff-toggle-file-tree-button not-mobile btn interact-fg" data-show-text="{{ctx.Locale.Tr "repo.diff.show_file_tree"}}" data-hide-text="{{ctx.Locale.Tr "repo.diff.hide_file_tree"}}">
{{/* the icon meaning is reversed here, "octicon-sidebar-collapse" means show the file tree */}} {{/* the icon meaning is reversed here, "octicon-sidebar-collapse" means show the file tree */}}
@ -18,14 +18,14 @@
</script> </script>
{{end}} {{end}}
{{if not .DiffNotAvailable}} {{if not .DiffNotAvailable}}
<div class="diff-detail-stats gt-df gt-ac gt-fw"> <div class="diff-detail-stats tw-flex tw-content-center tw-flex-wrap">
{{svg "octicon-diff" 16 "gt-mr-2"}}{{ctx.Locale.Tr "repo.diff.stats_desc" .Diff.NumFiles .Diff.TotalAddition .Diff.TotalDeletion}} {{svg "octicon-diff" 16 "gt-mr-2"}}{{ctx.Locale.Tr "repo.diff.stats_desc" .Diff.NumFiles .Diff.TotalAddition .Diff.TotalDeletion}}
</div> </div>
{{end}} {{end}}
</div> </div>
<div class="diff-detail-actions"> <div class="diff-detail-actions">
{{if and .PageIsPullFiles $.SignedUserID (not .IsArchived) (not .DiffNotAvailable)}} {{if and .PageIsPullFiles $.SignedUserID (not .IsArchived) (not .DiffNotAvailable)}}
<div class="not-mobile gt-df gt-ac gt-fc tw-whitespace-nowrap gt-mr-2"> <div class="not-mobile tw-flex tw-content-center tw-flex-col tw-whitespace-nowrap gt-mr-2">
<label for="viewed-files-summary" id="viewed-files-summary-label" data-text-changed-template="{{ctx.Locale.Tr "repo.pulls.viewed_files_label"}}"> <label for="viewed-files-summary" id="viewed-files-summary-label" data-text-changed-template="{{ctx.Locale.Tr "repo.pulls.viewed_files_label"}}">
{{ctx.Locale.Tr "repo.pulls.viewed_files_label" .Diff.NumViewedFiles .Diff.NumFiles}} {{ctx.Locale.Tr "repo.pulls.viewed_files_label" .Diff.NumViewedFiles .Diff.NumFiles}}
</label> </label>
@ -110,8 +110,8 @@
{{$isExpandable := or (gt $file.Addition 0) (gt $file.Deletion 0) $file.IsBin}} {{$isExpandable := or (gt $file.Addition 0) (gt $file.Deletion 0) $file.IsBin}}
{{$isReviewFile := and $.IsSigned $.PageIsPullFiles (not $.IsArchived) $.IsShowingAllCommits}} {{$isReviewFile := and $.IsSigned $.PageIsPullFiles (not $.IsArchived) $.IsShowingAllCommits}}
<div class="diff-file-box diff-box file-content {{TabSizeClass $.Editorconfig $file.Name}} gt-mt-0" id="diff-{{$file.NameHash}}" data-old-filename="{{$file.OldName}}" data-new-filename="{{$file.Name}}" {{if or ($file.ShouldBeHidden) (not $isExpandable)}}data-folded="true"{{end}}> <div class="diff-file-box diff-box file-content {{TabSizeClass $.Editorconfig $file.Name}} gt-mt-0" id="diff-{{$file.NameHash}}" data-old-filename="{{$file.OldName}}" data-new-filename="{{$file.Name}}" {{if or ($file.ShouldBeHidden) (not $isExpandable)}}data-folded="true"{{end}}>
<h4 class="diff-file-header sticky-2nd-row ui top attached normal header gt-df gt-ac gt-sb gt-fw"> <h4 class="diff-file-header sticky-2nd-row ui top attached normal header tw-flex tw-content-center tw-justify-between tw-flex-wrap">
<div class="diff-file-name gt-df gt-ac gt-gap-2 gt-fw"> <div class="diff-file-name tw-flex tw-content-center gt-gap-2 tw-flex-wrap">
<button class="fold-file btn interact-bg gt-p-2{{if not $isExpandable}} tw-invisible{{end}}"> <button class="fold-file btn interact-bg gt-p-2{{if not $isExpandable}} tw-invisible{{end}}">
{{if $file.ShouldBeHidden}} {{if $file.ShouldBeHidden}}
{{svg "octicon-chevron-right" 18}} {{svg "octicon-chevron-right" 18}}
@ -119,7 +119,7 @@
{{svg "octicon-chevron-down" 18}} {{svg "octicon-chevron-down" 18}}
{{end}} {{end}}
</button> </button>
<div class="gt-font-semibold gt-df gt-ac gt-mono"> <div class="gt-font-semibold tw-flex tw-content-center gt-mono">
{{if $file.IsBin}} {{if $file.IsBin}}
<span class="gt-ml-1 gt-mr-3"> <span class="gt-ml-1 gt-mr-3">
{{ctx.Locale.Tr "repo.diff.bin"}} {{ctx.Locale.Tr "repo.diff.bin"}}
@ -144,7 +144,7 @@
<span class="gt-ml-4 gt-mono">{{ctx.Locale.Tr ($file.ModeTranslationKey $file.Mode)}}</span> <span class="gt-ml-4 gt-mono">{{ctx.Locale.Tr ($file.ModeTranslationKey $file.Mode)}}</span>
{{end}} {{end}}
</div> </div>
<div class="diff-file-header-actions gt-df gt-ac gt-gap-2 gt-fw"> <div class="diff-file-header-actions tw-flex tw-content-center gt-gap-2 tw-flex-wrap">
{{if $showFileViewToggle}} {{if $showFileViewToggle}}
<div class="ui compact icon buttons"> <div class="ui compact icon buttons">
<button class="ui tiny basic button file-view-toggle" data-toggle-selector="#diff-source-{{$file.NameHash}}" data-tooltip-content="{{ctx.Locale.Tr "repo.file_view_source"}}">{{svg "octicon-code"}}</button> <button class="ui tiny basic button file-view-toggle" data-toggle-selector="#diff-source-{{$file.NameHash}}" data-tooltip-content="{{ctx.Locale.Tr "repo.file_view_source"}}">{{svg "octicon-code"}}</button>
@ -218,7 +218,7 @@
{{if .Diff.IsIncomplete}} {{if .Diff.IsIncomplete}}
<div class="diff-file-box diff-box file-content gt-mt-3" id="diff-incomplete"> <div class="diff-file-box diff-box file-content gt-mt-3" id="diff-incomplete">
<h4 class="ui top attached normal header gt-df gt-ac gt-sb"> <h4 class="ui top attached normal header tw-flex tw-content-center tw-justify-between">
{{ctx.Locale.Tr "repo.diff.too_many_files"}} {{ctx.Locale.Tr "repo.diff.too_many_files"}}
<a class="ui basic tiny button" id="diff-show-more-files" data-href="?skip-to={{.Diff.End}}&file-only=true">{{ctx.Locale.Tr "repo.diff.show_more"}}</a> <a class="ui basic tiny button" id="diff-show-more-files" data-href="?skip-to={{.Diff.End}}&file-only=true">{{ctx.Locale.Tr "repo.diff.show_more"}}</a>
</h4> </h4>

@ -8,8 +8,8 @@
{{template "shared/user/avatarlink" dict "user" .Poster}} {{template "shared/user/avatarlink" dict "user" .Poster}}
{{end}} {{end}}
<div class="content comment-container"> <div class="content comment-container">
<div class="ui top attached header comment-header gt-df gt-ac gt-sb"> <div class="ui top attached header comment-header tw-flex tw-content-center tw-justify-between">
<div class="comment-header-left gt-df gt-ac"> <div class="comment-header-left tw-flex tw-content-center">
{{if .OriginalAuthor}} {{if .OriginalAuthor}}
<span class="text black gt-font-semibold gt-mr-2"> <span class="text black gt-font-semibold gt-mr-2">
{{svg (MigrationIcon $.root.Repository.GetOriginalURLHostname)}} {{svg (MigrationIcon $.root.Repository.GetOriginalURLHostname)}}
@ -30,7 +30,7 @@
</span> </span>
{{end}} {{end}}
</div> </div>
<div class="comment-header-right actions gt-df gt-ac"> <div class="comment-header-right actions tw-flex tw-content-center">
{{if .Invalidated}} {{if .Invalidated}}
{{$referenceUrl := printf "%s#%s" $.root.Issue.Link .HashTag}} {{$referenceUrl := printf "%s#%s" $.root.Issue.Link .HashTag}}
<a href="{{$referenceUrl}}" class="ui label basic small" data-tooltip-content="{{ctx.Locale.Tr "repo.issues.review.outdated_description"}}"> <a href="{{$referenceUrl}}" class="ui label basic small" data-tooltip-content="{{ctx.Locale.Tr "repo.issues.review.outdated_description"}}">

@ -8,8 +8,8 @@
{{$referenceUrl := printf "%s#%s" $.Issue.Link $comment.HashTag}} {{$referenceUrl := printf "%s#%s" $.Issue.Link $comment.HashTag}}
<div class="conversation-holder" data-path="{{$comment.TreePath}}" data-side="{{if lt $comment.Line 0}}left{{else}}right{{end}}" data-idx="{{$comment.UnsignedLine}}"> <div class="conversation-holder" data-path="{{$comment.TreePath}}" data-side="{{if lt $comment.Line 0}}left{{else}}right{{end}}" data-idx="{{$comment.UnsignedLine}}">
{{if $resolved}} {{if $resolved}}
<div class="ui attached header resolved-placeholder gt-df gt-ac gt-sb"> <div class="ui attached header resolved-placeholder tw-flex tw-content-center tw-justify-between">
<div class="ui grey text gt-df gt-ac gt-fw gt-gap-2"> <div class="ui grey text tw-flex tw-content-center tw-flex-wrap gt-gap-2">
{{svg "octicon-check" 16 "icon gt-mr-2"}} {{svg "octicon-check" 16 "icon gt-mr-2"}}
<b>{{$resolveDoer.Name}}</b> {{ctx.Locale.Tr "repo.issues.review.resolved_by"}} <b>{{$resolveDoer.Name}}</b> {{ctx.Locale.Tr "repo.issues.review.resolved_by"}}
{{if $invalid}} {{if $invalid}}
@ -22,12 +22,12 @@
</a> </a>
{{end}} {{end}}
</div> </div>
<div class="gt-df gt-ac gt-gap-3"> <div class="tw-flex tw-content-center gt-gap-3">
<button id="show-outdated-{{$comment.ID}}" data-comment="{{$comment.ID}}" class="ui tiny labeled button show-outdated gt-df gt-ac"> <button id="show-outdated-{{$comment.ID}}" data-comment="{{$comment.ID}}" class="ui tiny labeled button show-outdated tw-flex tw-content-center">
{{svg "octicon-unfold" 16 "gt-mr-3"}} {{svg "octicon-unfold" 16 "gt-mr-3"}}
{{ctx.Locale.Tr "repo.issues.review.show_resolved"}} {{ctx.Locale.Tr "repo.issues.review.show_resolved"}}
</button> </button>
<button id="hide-outdated-{{$comment.ID}}" data-comment="{{$comment.ID}}" class="ui tiny labeled button hide-outdated gt-df gt-ac gt-hidden"> <button id="hide-outdated-{{$comment.ID}}" data-comment="{{$comment.ID}}" class="ui tiny labeled button hide-outdated tw-flex tw-content-center gt-hidden">
{{svg "octicon-fold" 16 "gt-mr-3"}} {{svg "octicon-fold" 16 "gt-mr-3"}}
{{ctx.Locale.Tr "repo.issues.review.hide_resolved"}} {{ctx.Locale.Tr "repo.issues.review.hide_resolved"}}
</button> </button>
@ -40,7 +40,7 @@
{{template "repo/diff/comments" dict "root" $ "comments" .comments}} {{template "repo/diff/comments" dict "root" $ "comments" .comments}}
</ui> </ui>
</div> </div>
<div class="gt-df gt-je gt-ac gt-fw gt-mt-3"> <div class="tw-flex tw-justify-end tw-content-center tw-flex-wrap gt-mt-3">
<div class="ui buttons gt-mr-2"> <div class="ui buttons gt-mr-2">
<button class="ui icon tiny basic button previous-conversation"> <button class="ui icon tiny basic button previous-conversation">
{{svg "octicon-arrow-up" 12 "icon"}} {{ctx.Locale.Tr "repo.issues.previous"}} {{svg "octicon-arrow-up" 12 "icon"}} {{ctx.Locale.Tr "repo.issues.previous"}}

@ -1,5 +1,5 @@
<div id="review-box"> <div id="review-box">
<button class="ui tiny primary button gt-pr-2 gt-df js-btn-review {{if not $.IsShowingAllCommits}}disabled{{end}}" {{if not $.IsShowingAllCommits}}data-tooltip-content="{{ctx.Locale.Tr "repo.pulls.review_only_possible_for_full_diff"}}"{{end}}> <button class="ui tiny primary button gt-pr-2 tw-flex js-btn-review {{if not $.IsShowingAllCommits}}disabled{{end}}" {{if not $.IsShowingAllCommits}}data-tooltip-content="{{ctx.Locale.Tr "repo.pulls.review_only_possible_for_full_diff"}}"{{end}}>
{{ctx.Locale.Tr "repo.diff.review"}} {{ctx.Locale.Tr "repo.diff.review"}}
<span class="ui small label review-comments-counter" data-pending-comment-number="{{.PendingCodeCommentNumber}}">{{.PendingCodeCommentNumber}}</span> <span class="ui small label review-comments-counter" data-pending-comment-number="{{.PendingCodeCommentNumber}}">{{.PendingCodeCommentNumber}}</span>
{{svg "octicon-triangle-down" 14 "dropdown icon"}} {{svg "octicon-triangle-down" 14 "dropdown icon"}}
@ -10,8 +10,8 @@
<form class="ui form form-fetch-action" action="{{.Link}}/reviews/submit" method="post"> <form class="ui form form-fetch-action" action="{{.Link}}/reviews/submit" method="post">
{{.CsrfTokenHtml}} {{.CsrfTokenHtml}}
<input type="hidden" name="commit_id" value="{{.AfterCommitID}}"> <input type="hidden" name="commit_id" value="{{.AfterCommitID}}">
<div class="field gt-df gt-ac"> <div class="field tw-flex tw-content-center">
<div class="gt-f1">{{ctx.Locale.Tr "repo.diff.review.header"}}</div> <div class="tw-flex-1">{{ctx.Locale.Tr "repo.diff.review.header"}}</div>
<a class="muted close">{{svg "octicon-x" 16}}</a> <a class="muted close">{{svg "octicon-x" 16}}</a>
</div> </div>
<div class="field"> <div class="field">
@ -31,7 +31,7 @@
<div class="divider"></div> <div class="divider"></div>
{{$showSelfTooltip := (and $.IsSigned ($.Issue.IsPoster $.SignedUser.ID))}} {{$showSelfTooltip := (and $.IsSigned ($.Issue.IsPoster $.SignedUser.ID))}}
{{if $showSelfTooltip}} {{if $showSelfTooltip}}
<span class="gt-dib" data-tooltip-content="{{ctx.Locale.Tr "repo.diff.review.self_approve"}}"> <span class="tw-inline-block" data-tooltip-content="{{ctx.Locale.Tr "repo.diff.review.self_approve"}}">
<button type="submit" name="type" value="approve" disabled class="ui submit primary tiny button btn-submit">{{ctx.Locale.Tr "repo.diff.review.approve"}}</button> <button type="submit" name="type" value="approve" disabled class="ui submit primary tiny button btn-submit">{{ctx.Locale.Tr "repo.diff.review.approve"}}</button>
</span> </span>
{{else}} {{else}}
@ -39,7 +39,7 @@
{{end}} {{end}}
<button type="submit" name="type" value="comment" class="ui submit tiny basic button btn-submit">{{ctx.Locale.Tr "repo.diff.review.comment"}}</button> <button type="submit" name="type" value="comment" class="ui submit tiny basic button btn-submit">{{ctx.Locale.Tr "repo.diff.review.comment"}}</button>
{{if $showSelfTooltip}} {{if $showSelfTooltip}}
<span class="gt-dib" data-tooltip-content="{{ctx.Locale.Tr "repo.diff.review.self_reject"}}"> <span class="tw-inline-block" data-tooltip-content="{{ctx.Locale.Tr "repo.diff.review.self_reject"}}">
<button type="submit" name="type" value="reject" disabled class="ui submit red tiny button btn-submit">{{ctx.Locale.Tr "repo.diff.review.reject"}}</button> <button type="submit" name="type" value="reject" disabled class="ui submit red tiny button btn-submit">{{ctx.Locale.Tr "repo.diff.review.reject"}}</button>
</span> </span>
{{else}} {{else}}

@ -16,7 +16,7 @@
<tr class="{{.GetHTMLDiffLineType}}-code nl-{{$k}} ol-{{$k}}" data-line-type="{{.GetHTMLDiffLineType}}"> <tr class="{{.GetHTMLDiffLineType}}-code nl-{{$k}} ol-{{$k}}" data-line-type="{{.GetHTMLDiffLineType}}">
{{if eq .GetType 4}} {{if eq .GetType 4}}
<td class="lines-num lines-num-old"> <td class="lines-num lines-num-old">
<div class="gt-df"> <div class="tw-flex">
{{if or (eq $line.GetExpandDirection 3) (eq $line.GetExpandDirection 5)}} {{if or (eq $line.GetExpandDirection 3) (eq $line.GetExpandDirection 5)}}
<button class="code-expander-button" hx-target="closest tr" hx-get="{{$.root.RepoLink}}/blob_excerpt/{{PathEscape $.root.AfterCommitID}}?{{$line.GetBlobExcerptQuery}}&style=split&direction=down&wiki={{$.root.PageIsWiki}}&anchor=diff-{{$file.NameHash}}K{{$line.SectionInfo.RightIdx}}"> <button class="code-expander-button" hx-target="closest tr" hx-get="{{$.root.RepoLink}}/blob_excerpt/{{PathEscape $.root.AfterCommitID}}?{{$line.GetBlobExcerptQuery}}&style=split&direction=down&wiki={{$.root.PageIsWiki}}&anchor=diff-{{$file.NameHash}}K{{$line.SectionInfo.RightIdx}}">
{{svg "octicon-fold-down"}} {{svg "octicon-fold-down"}}

@ -12,7 +12,7 @@
{{if eq .GetType 4}} {{if eq .GetType 4}}
{{if $.root.AfterCommitID}} {{if $.root.AfterCommitID}}
<td colspan="2" class="lines-num"> <td colspan="2" class="lines-num">
<div class="gt-df"> <div class="tw-flex">
{{if or (eq $line.GetExpandDirection 3) (eq $line.GetExpandDirection 5)}} {{if or (eq $line.GetExpandDirection 3) (eq $line.GetExpandDirection 5)}}
<button class="code-expander-button" hx-target="closest tr" hx-get="{{$.root.RepoLink}}/blob_excerpt/{{PathEscape $.root.AfterCommitID}}?{{$line.GetBlobExcerptQuery}}&style=unified&direction=down&wiki={{$.root.PageIsWiki}}&anchor=diff-{{$file.NameHash}}K{{$line.SectionInfo.RightIdx}}"> <button class="code-expander-button" hx-target="closest tr" hx-get="{{$.root.RepoLink}}/blob_excerpt/{{PathEscape $.root.AfterCommitID}}?{{$line.GetBlobExcerptQuery}}&style=unified&direction=down&wiki={{$.root.PageIsWiki}}&anchor=diff-{{$file.NameHash}}K{{$line.SectionInfo.RightIdx}}">
{{svg "octicon-fold-down"}} {{svg "octicon-fold-down"}}

@ -2,10 +2,10 @@
<div role="main" aria-label="{{.Title}}" class="page-content repository"> <div role="main" aria-label="{{.Title}}" class="page-content repository">
{{template "repo/header" .}} {{template "repo/header" .}}
<div class="ui container"> <div class="ui container">
<div class="gt-df gt-ac"> <div class="tw-flex tw-content-center">
<a href="{{$.RepoLink}}">{{.RepoName}}</a> <a href="{{$.RepoLink}}">{{.RepoName}}</a>
<span class="gt-mx-3">/</span> <span class="gt-mx-3">/</span>
<div class="ui input gt-f1"> <div class="ui input tw-flex-1">
<input id="repo-file-find-input" type="text" autofocus data-url-data-link="{{.DataLink}}" data-url-tree-link="{{.TreeLink}}"> <input id="repo-file-find-input" type="text" autofocus data-url-data-link="{{.DataLink}}" data-url-tree-link="{{.TreeLink}}">
</div> </div>
</div> </div>

@ -6,7 +6,7 @@
{{ctx.Locale.Tr "repo.forks"}} {{ctx.Locale.Tr "repo.forks"}}
</h2> </h2>
{{range .Forks}} {{range .Forks}}
<div class="gt-df gt-ac gt-py-3"> <div class="tw-flex tw-content-center gt-py-3">
<span class="gt-mr-2">{{ctx.AvatarUtils.Avatar .Owner}}</span> <span class="gt-mr-2">{{ctx.AvatarUtils.Avatar .Owner}}</span>
<a href="{{.Owner.HomeLink}}">{{.Owner.Name}}</a> / <a href="{{.Link}}">{{.Name}}</a> <a href="{{.Owner.HomeLink}}">{{.Owner.Name}}</a> / <a href="{{.Link}}">{{.Name}}</a>
</div> </div>

@ -28,10 +28,10 @@
{{- end -}} {{- end -}}
</a> </a>
</span> </span>
<span class="message gt-dib gt-ellipsis gt-mr-3"> <span class="message tw-inline-block gt-ellipsis gt-mr-3">
<span>{{RenderCommitMessage $.Context $commit.Subject ($.Repository.ComposeMetas ctx)}}</span> <span>{{RenderCommitMessage $.Context $commit.Subject ($.Repository.ComposeMetas ctx)}}</span>
</span> </span>
<span class="commit-refs gt-df gt-ac gt-mr-2"> <span class="commit-refs tw-flex tw-content-center gt-mr-2">
{{range $commit.Refs}} {{range $commit.Refs}}
{{$refGroup := .RefGroup}} {{$refGroup := .RefGroup}}
{{if eq $refGroup "pull"}} {{if eq $refGroup "pull"}}
@ -58,7 +58,7 @@
{{end}} {{end}}
{{end}} {{end}}
</span> </span>
<span class="author gt-df gt-ac gt-mr-3"> <span class="author tw-flex tw-content-center gt-mr-3">
{{$userName := $commit.Commit.Author.Name}} {{$userName := $commit.Commit.Author.Name}}
{{if $commit.User}} {{if $commit.User}}
{{if $commit.User.FullName}} {{if $commit.User.FullName}}
@ -71,7 +71,7 @@
{{$userName}} {{$userName}}
{{end}} {{end}}
</span> </span>
<span class="time gt-df gt-ac">{{DateTime "full" $commit.Date}}</span> <span class="time tw-flex tw-content-center">{{DateTime "full" $commit.Date}}</span>
{{end}} {{end}}
</li> </li>
{{end}} {{end}}

@ -2,7 +2,7 @@
{{with .Repository}} {{with .Repository}}
<div class="ui container"> <div class="ui container">
<div class="repo-header"> <div class="repo-header">
<div class="flex-item gt-ac"> <div class="flex-item tw-content-center">
<div class="flex-item-leading"> <div class="flex-item-leading">
{{template "repo/icon" .}} {{template "repo/icon" .}}
</div> </div>

@ -27,19 +27,19 @@
</div> </div>
{{end}} {{end}}
</div> </div>
<div class="gt-df gt-ac gt-fw gt-gap-2" id="repo-topics"> <div class="tw-flex tw-content-center tw-flex-wrap gt-gap-2" id="repo-topics">
{{range .Topics}}<a class="ui repo-topic large label topic gt-m-0" href="{{AppSubUrl}}/explore/repos?q={{.Name}}&topic=1">{{.Name}}</a>{{end}} {{range .Topics}}<a class="ui repo-topic large label topic gt-m-0" href="{{AppSubUrl}}/explore/repos?q={{.Name}}&topic=1">{{.Name}}</a>{{end}}
{{if and .Permission.IsAdmin (not .Repository.IsArchived)}}<button id="manage_topic" class="btn interact-fg gt-font-12">{{ctx.Locale.Tr "repo.topic.manage_topics"}}</button>{{end}} {{if and .Permission.IsAdmin (not .Repository.IsArchived)}}<button id="manage_topic" class="btn interact-fg gt-font-12">{{ctx.Locale.Tr "repo.topic.manage_topics"}}</button>{{end}}
</div> </div>
{{end}} {{end}}
{{if and .Permission.IsAdmin (not .Repository.IsArchived)}} {{if and .Permission.IsAdmin (not .Repository.IsArchived)}}
<div class="ui form gt-hidden gt-df gt-fc gt-mt-4" id="topic_edit"> <div class="ui form gt-hidden tw-flex tw-flex-col gt-mt-4" id="topic_edit">
<div class="field gt-f1 gt-mb-2"> <div class="field tw-flex-1 gt-mb-2">
<div class="ui fluid multiple search selection dropdown gt-fw" data-text-count-prompt="{{ctx.Locale.Tr "repo.topic.count_prompt"}}" data-text-format-prompt="{{ctx.Locale.Tr "repo.topic.format_prompt"}}"> <div class="ui fluid multiple search selection dropdown tw-flex-wrap" data-text-count-prompt="{{ctx.Locale.Tr "repo.topic.count_prompt"}}" data-text-format-prompt="{{ctx.Locale.Tr "repo.topic.format_prompt"}}">
<input type="hidden" name="topics" value="{{range $i, $v := .Topics}}{{.Name}}{{if Eval $i "+" 1 "<" (len $.Topics)}},{{end}}{{end}}"> <input type="hidden" name="topics" value="{{range $i, $v := .Topics}}{{.Name}}{{if Eval $i "+" 1 "<" (len $.Topics)}},{{end}}{{end}}">
{{range .Topics}} {{range .Topics}}
{{/* keey the same layout as Fomantic UI generated labels */}} {{/* keey the same layout as Fomantic UI generated labels */}}
<a class="ui label transition visible tw-cursor-default gt-dib" data-value="{{.Name}}">{{.Name}}{{svg "octicon-x" 16 "delete icon"}}</a> <a class="ui label transition visible tw-cursor-default tw-inline-block" data-value="{{.Name}}">{{.Name}}{{svg "octicon-x" 16 "delete icon"}}</a>
{{end}} {{end}}
<div class="text"></div> <div class="text"></div>
</div> </div>
@ -61,7 +61,7 @@
{{end}} {{end}}
{{template "repo/sub_menu" .}} {{template "repo/sub_menu" .}}
<div class="repo-button-row"> <div class="repo-button-row">
<div class="gt-df gt-ac gt-fw gt-gap-y-3"> <div class="tw-flex tw-content-center tw-flex-wrap gt-gap-y-3">
{{template "repo/branch_dropdown" dict "root" . "ContainerClasses" "gt-mr-2"}} {{template "repo/branch_dropdown" dict "root" . "ContainerClasses" "gt-mr-2"}}
{{if and .CanCompareOrPull .IsViewBranch (not .Repository.IsArchived)}} {{if and .CanCompareOrPull .IsViewBranch (not .Repository.IsArchived)}}
{{$cmpBranch := ""}} {{$cmpBranch := ""}}
@ -121,7 +121,7 @@
</span> </span>
{{end}} {{end}}
</div> </div>
<div class="gt-df gt-ac"> <div class="tw-flex tw-content-center">
<!-- Only show clone panel in repository home page --> <!-- Only show clone panel in repository home page -->
{{if eq $n 0}} {{if eq $n 0}}
<div class="clone-panel ui action tiny input"> <div class="clone-panel ui action tiny input">

@ -1,6 +1,6 @@
{{$avatarLink := (.RelAvatarLink ctx)}} {{$avatarLink := (.RelAvatarLink ctx)}}
{{if $avatarLink}} {{if $avatarLink}}
<img class="ui avatar gt-vm" src="{{$avatarLink}}" width="24" height="24" alt="{{.FullName}}"> <img class="ui avatar tw-align-middle" src="{{$avatarLink}}" width="24" height="24" alt="{{.FullName}}">
{{else if $.IsMirror}} {{else if $.IsMirror}}
{{svg "octicon-mirror" 24}} {{svg "octicon-mirror" 24}}
{{else if $.IsFork}} {{else if $.IsFork}}

@ -7,13 +7,13 @@
</div> </div>
{{end}} {{end}}
<div class="content gt-p-0 tw-w-full"> <div class="content gt-p-0 tw-w-full">
<div class="gt-df tw-items-start"> <div class="tw-flex tw-items-start">
<div class="issue-card-icon"> <div class="issue-card-icon">
{{template "shared/issueicon" .}} {{template "shared/issueicon" .}}
</div> </div>
<a class="issue-card-title muted issue-title" href="{{.Link}}">{{.Title | RenderEmoji ctx | RenderCodeBlock}}</a> <a class="issue-card-title muted issue-title" href="{{.Link}}">{{.Title | RenderEmoji ctx | RenderCodeBlock}}</a>
{{if and $.isPinnedIssueCard $.Page.IsRepoAdmin}} {{if and $.isPinnedIssueCard $.Page.IsRepoAdmin}}
<a role="button" class="issue-card-unpin muted gt-df gt-ac" data-tooltip-content={{ctx.Locale.Tr "repo.issues.unpin_issue"}} data-issue-id="{{.ID}}" data-unpin-url="{{$.Page.Link}}/unpin/{{.Index}}"> <a role="button" class="issue-card-unpin muted tw-flex tw-content-center" data-tooltip-content={{ctx.Locale.Tr "repo.issues.unpin_issue"}} data-issue-id="{{.ID}}" data-unpin-url="{{$.Page.Link}}/unpin/{{.Index}}">
{{svg "octicon-x" 16}} {{svg "octicon-x" 16}}
</a> </a>
{{end}} {{end}}
@ -34,8 +34,8 @@
{{if .MilestoneID}} {{if .MilestoneID}}
<div class="meta gt-my-2"> <div class="meta gt-my-2">
<a class="milestone" href="{{.Repo.Link}}/milestone/{{.MilestoneID}}"> <a class="milestone" href="{{.Repo.Link}}/milestone/{{.MilestoneID}}">
{{svg "octicon-milestone" 16 "gt-mr-2 gt-vm"}} {{svg "octicon-milestone" 16 "gt-mr-2 tw-align-middle"}}
<span class="gt-vm">{{.Milestone.Name}}</span> <span class="tw-align-middle">{{.Milestone.Name}}</span>
</a> </a>
</div> </div>
{{end}} {{end}}
@ -43,8 +43,8 @@
{{range index $.Page.LinkedPRs .ID}} {{range index $.Page.LinkedPRs .ID}}
<div class="meta gt-my-2"> <div class="meta gt-my-2">
<a href="{{$.Issue.Repo.Link}}/pulls/{{.Index}}"> <a href="{{$.Issue.Repo.Link}}/pulls/{{.Index}}">
<span class="gt-m-0 text {{if .PullRequest.HasMerged}}purple{{else if .IsClosed}}red{{else}}green{{end}}">{{svg "octicon-git-merge" 16 "gt-mr-2 gt-vm"}}</span> <span class="gt-m-0 text {{if .PullRequest.HasMerged}}purple{{else if .IsClosed}}red{{else}}green{{end}}">{{svg "octicon-git-merge" 16 "gt-mr-2 tw-align-middle"}}</span>
<span class="gt-vm">{{.Title}} <span class="text light grey">#{{.Index}}</span></span> <span class="tw-align-middle">{{.Title}} <span class="text light grey">#{{.Index}}</span></span>
</a> </a>
</div> </div>
{{end}} {{end}}
@ -52,8 +52,8 @@
{{$tasks := .GetTasks}} {{$tasks := .GetTasks}}
{{if gt $tasks 0}} {{if gt $tasks 0}}
<div class="meta gt-my-2"> <div class="meta gt-my-2">
{{svg "octicon-checklist" 16 "gt-mr-2 gt-vm"}} {{svg "octicon-checklist" 16 "gt-mr-2 tw-align-middle"}}
<span class="gt-vm">{{.GetTasksDone}} / {{$tasks}}</span> <span class="tw-align-middle">{{.GetTasksDone}} / {{$tasks}}</span>
</div> </div>
{{end}} {{end}}
</div> </div>

@ -29,7 +29,7 @@
<div class="divider"></div> <div class="divider"></div>
{{end}} {{end}}
{{$previousExclusiveScope = $exclusiveScope}} {{$previousExclusiveScope = $exclusiveScope}}
<div class="item issue-action gt-df gt-sb" data-action="toggle" data-element-id="{{.ID}}" data-url="{{$.RepoLink}}/issues/labels"> <div class="item issue-action tw-flex tw-justify-between" data-action="toggle" data-element-id="{{.ID}}" data-url="{{$.RepoLink}}/issues/labels">
{{if SliceUtils.Contains $.SelLabelIDs .ID}}{{if $exclusiveScope}}{{svg "octicon-dot-fill"}}{{else}}{{svg "octicon-check"}}{{end}}{{end}} {{RenderLabel $.Context ctx.Locale .}} {{if SliceUtils.Contains $.SelLabelIDs .ID}}{{if $exclusiveScope}}{{svg "octicon-dot-fill"}}{{else}}{{svg "octicon-check"}}{{end}}{{end}} {{RenderLabel $.Context ctx.Locale .}}
{{template "repo/issue/labels/label_archived" .}} {{template "repo/issue/labels/label_archived" .}}
</div> </div>

@ -32,7 +32,7 @@
<div class="divider"></div> <div class="divider"></div>
{{end}} {{end}}
{{$previousExclusiveScope = $exclusiveScope}} {{$previousExclusiveScope = $exclusiveScope}}
<a class="item label-filter-item gt-df gt-ac" {{if .IsArchived}}data-is-archived{{end}} href="?q={{$.Keyword}}&type={{$.ViewType}}&sort={{$.SortType}}&state={{$.State}}&labels={{.QueryString}}&milestone={{$.MilestoneID}}&project={{$.ProjectID}}&assignee={{$.AssigneeID}}&poster={{$.PosterID}}{{if $.ShowArchivedLabels}}&archived=true{{end}}" data-label-id="{{.ID}}"> <a class="item label-filter-item tw-flex tw-content-center" {{if .IsArchived}}data-is-archived{{end}} href="?q={{$.Keyword}}&type={{$.ViewType}}&sort={{$.SortType}}&state={{$.State}}&labels={{.QueryString}}&milestone={{$.MilestoneID}}&project={{$.ProjectID}}&assignee={{$.AssigneeID}}&poster={{$.PosterID}}{{if $.ShowArchivedLabels}}&archived=true{{end}}" data-label-id="{{.ID}}">
{{if .IsExcluded}} {{if .IsExcluded}}
{{svg "octicon-circle-slash"}} {{svg "octicon-circle-slash"}}
{{else if .IsSelected}} {{else if .IsSelected}}
@ -107,7 +107,7 @@
{{ctx.Locale.Tr "repo.issues.new.open_projects"}} {{ctx.Locale.Tr "repo.issues.new.open_projects"}}
</div> </div>
{{range .OpenProjects}} {{range .OpenProjects}}
<a class="{{if $.ProjectID}}{{if eq $.ProjectID .ID}}active selected{{end}}{{end}} item gt-df" href="?type={{$.ViewType}}&sort={{$.SortType}}&state={{$.State}}&labels={{$.SelectLabels}}&milestone={{$.MilestoneID}}&project={{.ID}}&assignee={{$.AssigneeID}}&poster={{$.PosterID}}{{if $.ShowArchivedLabels}}&archived=true{{end}}"> <a class="{{if $.ProjectID}}{{if eq $.ProjectID .ID}}active selected{{end}}{{end}} item tw-flex" href="?type={{$.ViewType}}&sort={{$.SortType}}&state={{$.State}}&labels={{$.SelectLabels}}&milestone={{$.MilestoneID}}&project={{.ID}}&assignee={{$.AssigneeID}}&poster={{$.PosterID}}{{if $.ShowArchivedLabels}}&archived=true{{end}}">
{{svg .IconName 18 "gt-mr-3 tw-shrink-0"}}<span class="gt-ellipsis">{{.Title}}</span> {{svg .IconName 18 "gt-mr-3 tw-shrink-0"}}<span class="gt-ellipsis">{{.Title}}</span>
</a> </a>
{{end}} {{end}}
@ -160,7 +160,7 @@
<a class="{{if eq .AssigneeID -1}}active selected {{end}}item" href="?q={{$.Keyword}}&type={{$.ViewType}}&sort={{$.SortType}}&state={{$.State}}&labels={{.SelectLabels}}&milestone={{$.MilestoneID}}&project={{$.ProjectID}}&assignee=-1&poster={{$.PosterID}}{{if $.ShowArchivedLabels}}&archived=true{{end}}">{{ctx.Locale.Tr "repo.issues.filter_assginee_no_assignee"}}</a> <a class="{{if eq .AssigneeID -1}}active selected {{end}}item" href="?q={{$.Keyword}}&type={{$.ViewType}}&sort={{$.SortType}}&state={{$.State}}&labels={{.SelectLabels}}&milestone={{$.MilestoneID}}&project={{$.ProjectID}}&assignee=-1&poster={{$.PosterID}}{{if $.ShowArchivedLabels}}&archived=true{{end}}">{{ctx.Locale.Tr "repo.issues.filter_assginee_no_assignee"}}</a>
<div class="divider"></div> <div class="divider"></div>
{{range .Assignees}} {{range .Assignees}}
<a class="{{if eq $.AssigneeID .ID}}active selected{{end}} item gt-df" href="?type={{$.ViewType}}&sort={{$.SortType}}&state={{$.State}}&labels={{$.SelectLabels}}&milestone={{$.MilestoneID}}&project={{$.ProjectID}}&assignee={{.ID}}&poster={{$.PosterID}}{{if $.ShowArchivedLabels}}&archived=true{{end}}"> <a class="{{if eq $.AssigneeID .ID}}active selected{{end}} item tw-flex" href="?type={{$.ViewType}}&sort={{$.SortType}}&state={{$.State}}&labels={{$.SelectLabels}}&milestone={{$.MilestoneID}}&project={{$.ProjectID}}&assignee={{.ID}}&poster={{$.PosterID}}{{if $.ShowArchivedLabels}}&archived=true{{end}}">
{{ctx.AvatarUtils.Avatar . 20}}{{template "repo/search_name" .}} {{ctx.AvatarUtils.Avatar . 20}}{{template "repo/search_name" .}}
</a> </a>
{{end}} {{end}}

@ -1,5 +1,5 @@
<div class="precolors"> <div class="precolors">
<div class="gt-df"> <div class="tw-flex">
<a class="color" style="background-color:#e11d21" data-color-hex="#e11d21"></a> <a class="color" style="background-color:#e11d21" data-color-hex="#e11d21"></a>
<a class="color" style="background-color:#eb6420" data-color-hex="#eb6420"></a> <a class="color" style="background-color:#eb6420" data-color-hex="#eb6420"></a>
<a class="color" style="background-color:#fbca04" data-color-hex="#fbca04"></a> <a class="color" style="background-color:#fbca04" data-color-hex="#fbca04"></a>
@ -9,7 +9,7 @@
<a class="color" style="background-color:#0052cc" data-color-hex="#0052cc"></a> <a class="color" style="background-color:#0052cc" data-color-hex="#0052cc"></a>
<a class="color" style="background-color:#5319e7" data-color-hex="#5319e7"></a> <a class="color" style="background-color:#5319e7" data-color-hex="#5319e7"></a>
</div> </div>
<div class="gt-df"> <div class="tw-flex">
<a class="color" style="background-color:#f6c6c7" data-color-hex="#f6c6c7"></a> <a class="color" style="background-color:#f6c6c7" data-color-hex="#f6c6c7"></a>
<a class="color" style="background-color:#fad8c7" data-color-hex="#fad8c7"></a> <a class="color" style="background-color:#fad8c7" data-color-hex="#fad8c7"></a>
<a class="color" style="background-color:#fef2c0" data-color-hex="#fef2c0"></a> <a class="color" style="background-color:#fef2c0" data-color-hex="#fef2c0"></a>

@ -42,9 +42,9 @@
<a class="open-issues" href="{{$.RepoLink}}/issues?labels={{.ID}}">{{svg "octicon-issue-opened"}} {{ctx.Locale.Tr "repo.issues.label_open_issues" .NumOpenIssues}}</a> <a class="open-issues" href="{{$.RepoLink}}/issues?labels={{.ID}}">{{svg "octicon-issue-opened"}} {{ctx.Locale.Tr "repo.issues.label_open_issues" .NumOpenIssues}}</a>
{{end}} {{end}}
</div> </div>
<div class="label-operation gt-df"> <div class="label-operation tw-flex">
{{template "repo/issue/labels/label_archived" .}} {{template "repo/issue/labels/label_archived" .}}
<div class="gt-df tw-ml-auto"> <div class="tw-flex tw-ml-auto">
{{if and (not $.PageIsOrgSettingsLabels) (not $.Repository.IsArchived) (or $.CanWriteIssues $.CanWritePulls)}} {{if and (not $.PageIsOrgSettingsLabels) (not $.Repository.IsArchived) (or $.CanWriteIssues $.CanWritePulls)}}
<a class="edit-label-button" href="#" data-id="{{.ID}}" data-title="{{.Name}}" {{if .Exclusive}}data-exclusive{{end}} {{if gt .ArchivedUnix 0}}data-is-archived{{end}} data-num-issues="{{.NumIssues}}" data-description="{{.Description}}" data-color={{.Color}}>{{svg "octicon-pencil"}} {{ctx.Locale.Tr "repo.issues.label_edit"}}</a> <a class="edit-label-button" href="#" data-id="{{.ID}}" data-title="{{.Name}}" {{if .Exclusive}}data-exclusive{{end}} {{if gt .ArchivedUnix 0}}data-is-archived{{end}} data-num-issues="{{.NumIssues}}" data-description="{{.Description}}" data-color={{.Color}}>{{svg "octicon-pencil"}} {{ctx.Locale.Tr "repo.issues.label_edit"}}</a>
<a class="delete-button" href="#" data-url="{{$.Link}}/delete" data-id="{{.ID}}">{{svg "octicon-trash"}} {{ctx.Locale.Tr "repo.issues.label_delete"}}</a> <a class="delete-button" href="#" data-url="{{$.Link}}/delete" data-id="{{.ID}}">{{svg "octicon-trash"}} {{ctx.Locale.Tr "repo.issues.label_delete"}}</a>

@ -3,10 +3,10 @@
{{template "repo/header" .}} {{template "repo/header" .}}
<div class="ui container"> <div class="ui container">
{{template "base/alert" .}} {{template "base/alert" .}}
<div class="gt-df"> <div class="tw-flex">
<h1 class="gt-mb-3">{{.Milestone.Name}}</h1> <h1 class="gt-mb-3">{{.Milestone.Name}}</h1>
{{if not .Repository.IsArchived}} {{if not .Repository.IsArchived}}
<div class="text right gt-f1"> <div class="text right tw-flex-1">
{{if or .CanWriteIssues .CanWritePulls}} {{if or .CanWriteIssues .CanWritePulls}}
{{if .Milestone.IsClosed}} {{if .Milestone.IsClosed}}
<a class="ui primary basic button link-action" href data-url="{{$.RepoLink}}/milestones/{{.MilestoneID}}/open">{{ctx.Locale.Tr "repo.milestones.open"}} <a class="ui primary basic button link-action" href data-url="{{$.RepoLink}}/milestones/{{.MilestoneID}}/open">{{ctx.Locale.Tr "repo.milestones.open"}}
@ -26,10 +26,10 @@
{{.Milestone.RenderedContent}} {{.Milestone.RenderedContent}}
</div> </div>
{{end}} {{end}}
<div class="gt-df gt-fc gt-gap-3"> <div class="tw-flex tw-flex-col gt-gap-3">
<progress class="milestone-progress-big" value="{{.Milestone.Completeness}}" max="100"></progress> <progress class="milestone-progress-big" value="{{.Milestone.Completeness}}" max="100"></progress>
<div class="gt-df gt-gap-4"> <div class="tw-flex gt-gap-4">
<div classs="gt-df gt-ac"> <div classs="tw-flex tw-content-center">
{{$closedDate:= TimeSinceUnix .Milestone.ClosedDateUnix ctx.Locale}} {{$closedDate:= TimeSinceUnix .Milestone.ClosedDateUnix ctx.Locale}}
{{if .IsClosed}} {{if .IsClosed}}
{{svg "octicon-clock"}} {{ctx.Locale.Tr "repo.milestones.closed" $closedDate}} {{svg "octicon-clock"}} {{ctx.Locale.Tr "repo.milestones.closed" $closedDate}}

@ -23,7 +23,7 @@
{{svg "octicon-milestone" 16}} {{svg "octicon-milestone" 16}}
<a class="muted" href="{{$.RepoLink}}/milestone/{{.ID}}">{{.Name}}</a> <a class="muted" href="{{$.RepoLink}}/milestone/{{.ID}}">{{.Name}}</a>
</h3> </h3>
<div class="gt-df gt-ac"> <div class="tw-flex tw-content-center">
<span class="gt-mr-3">{{.Completeness}}%</span> <span class="gt-mr-3">{{.Completeness}}%</span>
<progress value="{{.Completeness}}" max="100"></progress> <progress value="{{.Completeness}}" max="100"></progress>
</div> </div>

@ -171,7 +171,7 @@
<div class="selected"> <div class="selected">
{{range .Assignees}} {{range .Assignees}}
<a class="item gt-p-2 muted gt-hidden" id="assignee_{{.ID}}" href="{{$.RepoLink}}/issues?assignee={{.ID}}"> <a class="item gt-p-2 muted gt-hidden" id="assignee_{{.ID}}" href="{{$.RepoLink}}/issues?assignee={{.ID}}">
{{ctx.AvatarUtils.Avatar . 28 "gt-mr-3 gt-vm"}}{{.GetDisplayName}} {{ctx.AvatarUtils.Avatar . 28 "gt-mr-3 tw-align-middle"}}{{.GetDisplayName}}
</a> </a>
{{end}} {{end}}
</div> </div>

@ -20,8 +20,8 @@
</a> </a>
{{end}} {{end}}
<div class="content comment-container"> <div class="content comment-container">
<div class="ui top attached header comment-header gt-df gt-ac gt-sb" role="heading" aria-level="3"> <div class="ui top attached header comment-header tw-flex tw-content-center tw-justify-between" role="heading" aria-level="3">
<div class="comment-header-left gt-df gt-ac"> <div class="comment-header-left tw-flex tw-content-center">
{{if .Issue.OriginalAuthor}} {{if .Issue.OriginalAuthor}}
<span class="text black gt-font-semibold"> <span class="text black gt-font-semibold">
{{svg (MigrationIcon .Repository.GetOriginalURLHostname)}} {{svg (MigrationIcon .Repository.GetOriginalURLHostname)}}
@ -43,7 +43,7 @@
</span> </span>
{{end}} {{end}}
</div> </div>
<div class="comment-header-right actions gt-df gt-ac"> <div class="comment-header-right actions tw-flex tw-content-center">
{{template "repo/issue/view_content/show_role" dict "ShowRole" .Issue.ShowRole "IgnorePoster" true}} {{template "repo/issue/view_content/show_role" dict "ShowRole" .Issue.ShowRole "IgnorePoster" true}}
{{if not $.Repository.IsArchived}} {{if not $.Repository.IsArchived}}
{{template "repo/issue/view_content/add_reaction" dict "ctxData" $ "ActionURL" (printf "%s/issues/%d/reactions" $.RepoLink .Issue.Index)}} {{template "repo/issue/view_content/add_reaction" dict "ctxData" $ "ActionURL" (printf "%s/issues/%d/reactions" $.RepoLink .Issue.Index)}}

@ -4,8 +4,8 @@
{{end}} {{end}}
{{$hasThumbnails := false}} {{$hasThumbnails := false}}
{{- range .Attachments -}} {{- range .Attachments -}}
<div class="gt-df"> <div class="tw-flex">
<div class="gt-f1 gt-p-3"> <div class="tw-flex-1 gt-p-3">
<a target="_blank" rel="noopener noreferrer" href="{{.DownloadURL}}" title="{{ctx.Locale.Tr "repo.issues.attachment.open_tab" .Name}}"> <a target="_blank" rel="noopener noreferrer" href="{{.DownloadURL}}" title="{{ctx.Locale.Tr "repo.issues.attachment.open_tab" .Name}}">
{{if FilenameIsImage .Name}} {{if FilenameIsImage .Name}}
{{if not (StringUtils.Contains (StringUtils.ToString $.RenderedContent) .UUID)}} {{if not (StringUtils.Contains (StringUtils.ToString $.RenderedContent) .UUID)}}
@ -18,7 +18,7 @@
<span><strong>{{.Name}}</strong></span> <span><strong>{{.Name}}</strong></span>
</a> </a>
</div> </div>
<div class="gt-p-3 gt-df gt-ac"> <div class="gt-p-3 tw-flex tw-content-center">
<span class="ui text grey">{{.Size | FileSize}}</span> <span class="ui text grey">{{.Size | FileSize}}</span>
</div> </div>
</div> </div>

@ -25,8 +25,8 @@
</a> </a>
{{end}} {{end}}
<div class="content comment-container"> <div class="content comment-container">
<div class="ui top attached header comment-header gt-df gt-ac gt-sb" role="heading" aria-level="3"> <div class="ui top attached header comment-header tw-flex tw-content-center tw-justify-between" role="heading" aria-level="3">
<div class="comment-header-left gt-df gt-ac"> <div class="comment-header-left tw-flex tw-content-center">
{{if .OriginalAuthor}} {{if .OriginalAuthor}}
<span class="text black gt-font-semibold gt-mr-2"> <span class="text black gt-font-semibold gt-mr-2">
{{svg (MigrationIcon $.Repository.GetOriginalURLHostname)}} {{svg (MigrationIcon $.Repository.GetOriginalURLHostname)}}
@ -50,7 +50,7 @@
</span> </span>
{{end}} {{end}}
</div> </div>
<div class="comment-header-right actions gt-df gt-ac"> <div class="comment-header-right actions tw-flex tw-content-center">
{{template "repo/issue/view_content/show_role" dict "ShowRole" .ShowRole}} {{template "repo/issue/view_content/show_role" dict "ShowRole" .ShowRole}}
{{if not $.Repository.IsArchived}} {{if not $.Repository.IsArchived}}
{{template "repo/issue/view_content/add_reaction" dict "ctxData" $ "ActionURL" (printf "%s/comments/%d/reactions" $.RepoLink .ID)}} {{template "repo/issue/view_content/add_reaction" dict "ctxData" $ "ActionURL" (printf "%s/comments/%d/reactions" $.RepoLink .ID)}}
@ -402,8 +402,8 @@
{{if or .Content .Attachments}} {{if or .Content .Attachments}}
<div class="timeline-item comment"> <div class="timeline-item comment">
<div class="content comment-container"> <div class="content comment-container">
<div class="ui top attached header comment-header gt-df gt-ac gt-sb"> <div class="ui top attached header comment-header tw-flex tw-content-center tw-justify-between">
<div class="comment-header-left gt-df gt-ac"> <div class="comment-header-left tw-flex tw-content-center">
{{if gt .Poster.ID 0}} {{if gt .Poster.ID 0}}
<a class="inline-timeline-avatar" href="{{.Poster.HomeLink}}"> <a class="inline-timeline-avatar" href="{{.Poster.HomeLink}}">
{{ctx.AvatarUtils.Avatar .Poster 24}} {{ctx.AvatarUtils.Avatar .Poster 24}}
@ -424,7 +424,7 @@
{{ctx.Locale.Tr "repo.issues.review.left_comment"}} {{ctx.Locale.Tr "repo.issues.review.left_comment"}}
</span> </span>
</div> </div>
<div class="comment-header-right actions gt-df gt-ac"> <div class="comment-header-right actions tw-flex tw-content-center">
{{template "repo/issue/view_content/show_role" dict "ShowRole" .ShowRole}} {{template "repo/issue/view_content/show_role" dict "ShowRole" .ShowRole}}
{{if not $.Repository.IsArchived}} {{if not $.Repository.IsArchived}}
{{template "repo/issue/view_content/add_reaction" dict "ctxData" $ "ActionURL" (printf "%s/comments/%d/reactions" $.RepoLink .ID)}} {{template "repo/issue/view_content/add_reaction" dict "ctxData" $ "ActionURL" (printf "%s/comments/%d/reactions" $.RepoLink .ID)}}
@ -623,7 +623,7 @@
{{if .Content}} {{if .Content}}
<div class="timeline-item comment"> <div class="timeline-item comment">
<div class="content"> <div class="content">
<div class="ui top attached header comment-header-left gt-df gt-ac arrow-top"> <div class="ui top attached header comment-header-left tw-flex tw-content-center arrow-top">
{{if gt .Poster.ID 0}} {{if gt .Poster.ID 0}}
<a class="inline-timeline-avatar" href="{{.Poster.HomeLink}}"> <a class="inline-timeline-avatar" href="{{.Poster.HomeLink}}">
{{ctx.AvatarUtils.Avatar .Poster 24}} {{ctx.AvatarUtils.Avatar .Poster 24}}

@ -6,8 +6,8 @@
{{$hasReview := and $comment.Review}} {{$hasReview := and $comment.Review}}
{{$isReviewPending := and $hasReview (eq $comment.Review.Type 0)}} {{$isReviewPending := and $hasReview (eq $comment.Review.Type 0)}}
<div class="ui segments conversation-holder"> <div class="ui segments conversation-holder">
<div class="ui segment collapsible-comment-box gt-py-3 gt-df gt-ac gt-sb"> <div class="ui segment collapsible-comment-box gt-py-3 tw-flex tw-content-center tw-justify-between">
<div class="gt-df gt-ac"> <div class="tw-flex tw-content-center">
<a href="{{$comment.CodeCommentLink ctx}}" class="file-comment gt-ml-3 gt-word-break">{{$comment.TreePath}}</a> <a href="{{$comment.CodeCommentLink ctx}}" class="file-comment gt-ml-3 gt-word-break">{{$comment.TreePath}}</a>
{{if $invalid}} {{if $invalid}}
<span class="ui label basic small gt-ml-3" data-tooltip-content="{{ctx.Locale.Tr "repo.issues.review.outdated_description"}}"> <span class="ui label basic small gt-ml-3" data-tooltip-content="{{ctx.Locale.Tr "repo.issues.review.outdated_description"}}">
@ -17,7 +17,7 @@
</div> </div>
<div> <div>
{{if or $invalid $resolved}} {{if or $invalid $resolved}}
<button id="show-outdated-{{$comment.ID}}" data-comment="{{$comment.ID}}" class="{{if not $resolved}}gt-hidden {{end}}ui compact labeled button show-outdated gt-df gt-ac"> <button id="show-outdated-{{$comment.ID}}" data-comment="{{$comment.ID}}" class="{{if not $resolved}}gt-hidden {{end}}ui compact labeled button show-outdated tw-flex tw-content-center">
{{svg "octicon-unfold" 16 "gt-mr-3"}} {{svg "octicon-unfold" 16 "gt-mr-3"}}
{{if $resolved}} {{if $resolved}}
{{ctx.Locale.Tr "repo.issues.review.show_resolved"}} {{ctx.Locale.Tr "repo.issues.review.show_resolved"}}
@ -25,7 +25,7 @@
{{ctx.Locale.Tr "repo.issues.review.show_outdated"}} {{ctx.Locale.Tr "repo.issues.review.show_outdated"}}
{{end}} {{end}}
</button> </button>
<button id="hide-outdated-{{$comment.ID}}" data-comment="{{$comment.ID}}" class="{{if $resolved}}gt-hidden {{end}}ui compact labeled button hide-outdated gt-df gt-ac"> <button id="hide-outdated-{{$comment.ID}}" data-comment="{{$comment.ID}}" class="{{if $resolved}}gt-hidden {{end}}ui compact labeled button hide-outdated tw-flex tw-content-center">
{{svg "octicon-fold" 16 "gt-mr-3"}} {{svg "octicon-fold" 16 "gt-mr-3"}}
{{if $resolved}} {{if $resolved}}
{{ctx.Locale.Tr "repo.issues.review.hide_resolved"}} {{ctx.Locale.Tr "repo.issues.review.hide_resolved"}}
@ -58,7 +58,7 @@
<div class="comment code-comment gt-pb-4" id="{{.HashTag}}"> <div class="comment code-comment gt-pb-4" id="{{.HashTag}}">
<div class="content"> <div class="content">
<div class="header comment-header"> <div class="header comment-header">
<div class="comment-header-left gt-df gt-ac"> <div class="comment-header-left tw-flex tw-content-center">
{{if not .OriginalAuthor}} {{if not .OriginalAuthor}}
<a class="avatar"> <a class="avatar">
{{ctx.AvatarUtils.Avatar .Poster 20}} {{ctx.AvatarUtils.Avatar .Poster 20}}
@ -79,7 +79,7 @@
{{ctx.Locale.Tr "repo.issues.commented_at" .HashTag $createdSubStr}} {{ctx.Locale.Tr "repo.issues.commented_at" .HashTag $createdSubStr}}
</span> </span>
</div> </div>
<div class="comment-header-right actions gt-df gt-ac"> <div class="comment-header-right actions tw-flex tw-content-center">
{{template "repo/issue/view_content/show_role" dict "ShowRole" .ShowRole}} {{template "repo/issue/view_content/show_role" dict "ShowRole" .ShowRole}}
{{if not $.Repository.IsArchived}} {{if not $.Repository.IsArchived}}
{{template "repo/issue/view_content/add_reaction" dict "ctxData" $ "ActionURL" (printf "%s/comments/%d/reactions" $.RepoLink .ID)}} {{template "repo/issue/view_content/add_reaction" dict "ctxData" $ "ActionURL" (printf "%s/comments/%d/reactions" $.RepoLink .ID)}}
@ -109,8 +109,8 @@
</div> </div>
{{end}} {{end}}
</div> </div>
<div class="code-comment-buttons gt-df gt-ac gt-fw gt-mt-3 gt-mb-2 gt-mx-3"> <div class="code-comment-buttons tw-flex tw-content-center tw-flex-wrap gt-mt-3 gt-mb-2 gt-mx-3">
<div class="gt-f1"> <div class="tw-flex-1">
{{if $resolved}} {{if $resolved}}
<div class="ui grey text"> <div class="ui grey text">
{{svg "octicon-check" 16 "gt-mr-2"}} {{svg "octicon-check" 16 "gt-mr-2"}}

@ -33,7 +33,7 @@
<div class="ui attached merge-section segment {{if not $.LatestCommitStatus}}no-header{{end}} flex-items-block"> <div class="ui attached merge-section segment {{if not $.LatestCommitStatus}}no-header{{end}} flex-items-block">
{{if .Issue.PullRequest.HasMerged}} {{if .Issue.PullRequest.HasMerged}}
{{if .IsPullBranchDeletable}} {{if .IsPullBranchDeletable}}
<div class="item item-section text gt-f1"> <div class="item item-section text tw-flex-1">
<div class="item-section-left"> <div class="item-section-left">
<h3 class="gt-mb-3"> <h3 class="gt-mb-3">
{{ctx.Locale.Tr "repo.pulls.merged_success"}} {{ctx.Locale.Tr "repo.pulls.merged_success"}}
@ -48,7 +48,7 @@
</div> </div>
{{end}} {{end}}
{{else if .Issue.IsClosed}} {{else if .Issue.IsClosed}}
<div class="item item-section text gt-f1"> <div class="item item-section text tw-flex-1">
<div class="item-section-left"> <div class="item-section-left">
<h3 class="gt-mb-3">{{ctx.Locale.Tr "repo.pulls.closed"}}</h3> <h3 class="gt-mb-3">{{ctx.Locale.Tr "repo.pulls.closed"}}</h3>
<div class="merge-section-info"> <div class="merge-section-info">
@ -82,7 +82,7 @@
</div> </div>
{{else if .IsPullWorkInProgress}} {{else if .IsPullWorkInProgress}}
<div class="item toggle-wip" data-title="{{.Issue.Title}}" data-wip-prefix="{{.WorkInProgressPrefix}}" data-update-url="{{.Issue.Link}}/title"> <div class="item toggle-wip" data-title="{{.Issue.Title}}" data-wip-prefix="{{.WorkInProgressPrefix}}" data-update-url="{{.Issue.Link}}/title">
<div class="item-section-left flex-text-inline gt-f1"> <div class="item-section-left flex-text-inline tw-flex-1">
{{svg "octicon-x"}} {{svg "octicon-x"}}
{{ctx.Locale.Tr "repo.pulls.cannot_merge_work_in_progress"}} {{ctx.Locale.Tr "repo.pulls.cannot_merge_work_in_progress"}}
</div> </div>

@ -3,7 +3,7 @@
{{if .Issue.IsPull}} {{if .Issue.IsPull}}
<input id="reviewer_id" name="reviewer_id" type="hidden" value="{{.reviewer_id}}"> <input id="reviewer_id" name="reviewer_id" type="hidden" value="{{.reviewer_id}}">
<div class="ui {{if or (and (not .Reviewers) (not .TeamReviewers)) (not .CanChooseReviewer) .Repository.IsArchived}}disabled{{end}} floating jump select-reviewers-modify dropdown"> <div class="ui {{if or (and (not .Reviewers) (not .TeamReviewers)) (not .CanChooseReviewer) .Repository.IsArchived}}disabled{{end}} floating jump select-reviewers-modify dropdown">
<a class="text gt-df gt-ac muted"> <a class="text tw-flex tw-content-center muted">
<strong>{{ctx.Locale.Tr "repo.issues.review.reviewers"}}</strong> <strong>{{ctx.Locale.Tr "repo.issues.review.reviewers"}}</strong>
{{if and .CanChooseReviewer (not .Repository.IsArchived)}} {{if and .CanChooseReviewer (not .Repository.IsArchived)}}
{{svg "octicon-gear" 16 "gt-ml-2"}} {{svg "octicon-gear" 16 "gt-ml-2"}}
@ -50,17 +50,17 @@
<span class="no-select item {{if or .OriginalReviews .PullReviewers}}gt-hidden{{end}}">{{ctx.Locale.Tr "repo.issues.new.no_reviewers"}}</span> <span class="no-select item {{if or .OriginalReviews .PullReviewers}}gt-hidden{{end}}">{{ctx.Locale.Tr "repo.issues.new.no_reviewers"}}</span>
<div class="selected"> <div class="selected">
{{range .PullReviewers}} {{range .PullReviewers}}
<div class="item gt-df gt-ac gt-py-3"> <div class="item tw-flex tw-content-center gt-py-3">
<div class="gt-df gt-ac gt-f1"> <div class="tw-flex tw-content-center tw-flex-1">
{{if .User}} {{if .User}}
<a class="muted sidebar-item-link" href="{{.User.HomeLink}}">{{ctx.AvatarUtils.Avatar .User 20 "gt-mr-3"}}{{.User.GetDisplayName}}</a> <a class="muted sidebar-item-link" href="{{.User.HomeLink}}">{{ctx.AvatarUtils.Avatar .User 20 "gt-mr-3"}}{{.User.GetDisplayName}}</a>
{{else if .Team}} {{else if .Team}}
<span class="text">{{svg "octicon-people" 20 "gt-mr-3"}}{{$.Issue.Repo.OwnerName}}/{{.Team.Name}}</span> <span class="text">{{svg "octicon-people" 20 "gt-mr-3"}}{{$.Issue.Repo.OwnerName}}/{{.Team.Name}}</span>
{{end}} {{end}}
</div> </div>
<div class="gt-df gt-ac gt-gap-3"> <div class="tw-flex tw-content-center gt-gap-3">
{{if (and $.Permission.IsAdmin (or (eq .Review.Type 1) (eq .Review.Type 3)) (not $.Issue.IsClosed))}} {{if (and $.Permission.IsAdmin (or (eq .Review.Type 1) (eq .Review.Type 3)) (not $.Issue.IsClosed))}}
<a href="#" class="ui muted icon gt-df gt-ac show-modal" data-tooltip-content="{{ctx.Locale.Tr "repo.issues.dismiss_review"}}" data-modal="#dismiss-review-modal-{{.Review.ID}}"> <a href="#" class="ui muted icon tw-flex tw-content-center show-modal" data-tooltip-content="{{ctx.Locale.Tr "repo.issues.dismiss_review"}}" data-modal="#dismiss-review-modal-{{.Review.ID}}">
{{svg "octicon-x" 20}} {{svg "octicon-x" 20}}
</a> </a>
<div class="ui small modal" id="dismiss-review-modal-{{.Review.ID}}"> <div class="ui small modal" id="dismiss-review-modal-{{.Review.ID}}">
@ -99,14 +99,14 @@
</div> </div>
{{end}} {{end}}
{{range .OriginalReviews}} {{range .OriginalReviews}}
<div class="item gt-df gt-ac gt-py-3"> <div class="item tw-flex tw-content-center gt-py-3">
<div class="gt-df gt-ac gt-f1"> <div class="tw-flex tw-content-center tw-flex-1">
<a class="muted" href="{{$.Repository.OriginalURL}}" data-tooltip-content="{{ctx.Locale.Tr "repo.migrated_from_fake" $.Repository.GetOriginalURLHostname}}"> <a class="muted" href="{{$.Repository.OriginalURL}}" data-tooltip-content="{{ctx.Locale.Tr "repo.migrated_from_fake" $.Repository.GetOriginalURLHostname}}">
{{svg (MigrationIcon $.Repository.GetOriginalURLHostname) 20 "gt-mr-3"}} {{svg (MigrationIcon $.Repository.GetOriginalURLHostname) 20 "gt-mr-3"}}
{{.OriginalAuthor}} {{.OriginalAuthor}}
</a> </a>
</div> </div>
<div class="gt-df gt-ac gt-gap-3"> <div class="tw-flex tw-content-center gt-gap-3">
{{svg (printf "octicon-%s" .Type.Icon) 16 (printf "text %s" (.HTMLTypeColorName))}} {{svg (printf "octicon-%s" .Type.Icon) 16 (printf "text %s" (.HTMLTypeColorName))}}
</div> </div>
</div> </div>
@ -257,7 +257,7 @@
{{if .Participants}} {{if .Participants}}
<span class="text"><strong>{{ctx.Locale.Tr "repo.issues.num_participants" .NumParticipants}}</strong></span> <span class="text"><strong>{{ctx.Locale.Tr "repo.issues.num_participants" .NumParticipants}}</strong></span>
<div class="ui list gt-df gt-fw"> <div class="ui list tw-flex tw-flex-wrap">
{{range .Participants}} {{range .Participants}}
<a {{if gt .ID 0}}href="{{.HomeLink}}"{{end}} data-tooltip-content="{{.GetDisplayName}}"> <a {{if gt .ID 0}}href="{{.HomeLink}}"{{end}} data-tooltip-content="{{.GetDisplayName}}">
{{ctx.AvatarUtils.Avatar . 28 "gt-my-1 gt-mr-2"}} {{ctx.AvatarUtils.Avatar . 28 "gt-my-1 gt-mr-2"}}
@ -361,7 +361,7 @@
</div> </div>
{{if ne .Issue.DeadlineUnix 0}} {{if ne .Issue.DeadlineUnix 0}}
<p> <p>
<div class="gt-df gt-sb gt-ac"> <div class="tw-flex tw-justify-between tw-content-center">
<div class="due-date {{if .Issue.IsOverdue}}text red{{end}}" {{if .Issue.IsOverdue}}data-tooltip-content="{{ctx.Locale.Tr "repo.issues.due_date_overdue"}}"{{end}}> <div class="due-date {{if .Issue.IsOverdue}}text red{{end}}" {{if .Issue.IsOverdue}}data-tooltip-content="{{ctx.Locale.Tr "repo.issues.due_date_overdue"}}"{{end}}>
{{svg "octicon-calendar" 16 "gt-mr-3"}} {{svg "octicon-calendar" 16 "gt-mr-3"}}
{{DateTime "long" .Issue.DeadlineUnix.FormatDate}} {{DateTime "long" .Issue.DeadlineUnix.FormatDate}}
@ -417,8 +417,8 @@
</span> </span>
<div class="ui relaxed divided list"> <div class="ui relaxed divided list">
{{range .BlockingDependencies}} {{range .BlockingDependencies}}
<div class="item dependency{{if .Issue.IsClosed}} is-closed{{end}} gt-df gt-ac gt-sb"> <div class="item dependency{{if .Issue.IsClosed}} is-closed{{end}} tw-flex tw-content-center tw-justify-between">
<div class="item-left gt-df gt-jc gt-fc gt-f1 gt-ellipsis"> <div class="item-left tw-flex tw-justify-center tw-flex-col tw-flex-1 gt-ellipsis">
<a class="title muted" href="{{.Issue.Link}}" data-tooltip-content="#{{.Issue.Index}} {{.Issue.Title | RenderEmoji $.Context}}"> <a class="title muted" href="{{.Issue.Link}}" data-tooltip-content="#{{.Issue.Index}} {{.Issue.Title | RenderEmoji $.Context}}">
#{{.Issue.Index}} {{.Issue.Title | RenderEmoji $.Context}} #{{.Issue.Index}} {{.Issue.Title | RenderEmoji $.Context}}
</a> </a>
@ -426,7 +426,7 @@
{{.Repository.OwnerName}}/{{.Repository.Name}} {{.Repository.OwnerName}}/{{.Repository.Name}}
</div> </div>
</div> </div>
<div class="item-right gt-df gt-ac gt-m-2"> <div class="item-right tw-flex tw-content-center gt-m-2">
{{if and $.CanCreateIssueDependencies (not $.Repository.IsArchived)}} {{if and $.CanCreateIssueDependencies (not $.Repository.IsArchived)}}
<a class="delete-dependency-button ci muted" data-id="{{.Issue.ID}}" data-type="blocking" data-tooltip-content="{{ctx.Locale.Tr "repo.issues.dependency.remove_info"}}"> <a class="delete-dependency-button ci muted" data-id="{{.Issue.ID}}" data-type="blocking" data-tooltip-content="{{ctx.Locale.Tr "repo.issues.dependency.remove_info"}}">
{{svg "octicon-trash" 16}} {{svg "octicon-trash" 16}}
@ -436,7 +436,7 @@
</div> </div>
{{end}} {{end}}
{{if .BlockingDependenciesNotPermitted}} {{if .BlockingDependenciesNotPermitted}}
<div class="item gt-df gt-ac gt-sb gt-ellipsis"> <div class="item tw-flex tw-content-center tw-justify-between gt-ellipsis">
<span>{{ctx.Locale.TrN (len .BlockingDependenciesNotPermitted) "repo.issues.dependency.no_permission_1" "repo.issues.dependency.no_permission_n" (len .BlockingDependenciesNotPermitted)}}</span> <span>{{ctx.Locale.TrN (len .BlockingDependenciesNotPermitted) "repo.issues.dependency.no_permission_1" "repo.issues.dependency.no_permission_n" (len .BlockingDependenciesNotPermitted)}}</span>
</div> </div>
{{end}} {{end}}
@ -449,8 +449,8 @@
</span> </span>
<div class="ui relaxed divided list"> <div class="ui relaxed divided list">
{{range .BlockedByDependencies}} {{range .BlockedByDependencies}}
<div class="item dependency{{if .Issue.IsClosed}} is-closed{{end}} gt-df gt-ac gt-sb"> <div class="item dependency{{if .Issue.IsClosed}} is-closed{{end}} tw-flex tw-content-center tw-justify-between">
<div class="item-left gt-df gt-jc gt-fc gt-f1 gt-ellipsis"> <div class="item-left tw-flex tw-justify-center tw-flex-col tw-flex-1 gt-ellipsis">
<a class="title muted" href="{{.Issue.Link}}" data-tooltip-content="#{{.Issue.Index}} {{.Issue.Title | RenderEmoji $.Context}}"> <a class="title muted" href="{{.Issue.Link}}" data-tooltip-content="#{{.Issue.Index}} {{.Issue.Title | RenderEmoji $.Context}}">
#{{.Issue.Index}} {{.Issue.Title | RenderEmoji $.Context}} #{{.Issue.Index}} {{.Issue.Title | RenderEmoji $.Context}}
</a> </a>
@ -458,7 +458,7 @@
{{.Repository.OwnerName}}/{{.Repository.Name}} {{.Repository.OwnerName}}/{{.Repository.Name}}
</div> </div>
</div> </div>
<div class="item-right gt-df gt-ac gt-m-2"> <div class="item-right tw-flex tw-content-center gt-m-2">
{{if and $.CanCreateIssueDependencies (not $.Repository.IsArchived)}} {{if and $.CanCreateIssueDependencies (not $.Repository.IsArchived)}}
<a class="delete-dependency-button ci muted" data-id="{{.Issue.ID}}" data-type="blockedBy" data-tooltip-content="{{ctx.Locale.Tr "repo.issues.dependency.remove_info"}}"> <a class="delete-dependency-button ci muted" data-id="{{.Issue.ID}}" data-type="blockedBy" data-tooltip-content="{{ctx.Locale.Tr "repo.issues.dependency.remove_info"}}">
{{svg "octicon-trash" 16}} {{svg "octicon-trash" 16}}
@ -469,8 +469,8 @@
{{end}} {{end}}
{{if $.CanCreateIssueDependencies}} {{if $.CanCreateIssueDependencies}}
{{range .BlockedByDependenciesNotPermitted}} {{range .BlockedByDependenciesNotPermitted}}
<div class="item dependency{{if .Issue.IsClosed}} is-closed{{end}} gt-df gt-ac gt-sb"> <div class="item dependency{{if .Issue.IsClosed}} is-closed{{end}} tw-flex tw-content-center tw-justify-between">
<div class="item-left gt-df gt-jc gt-fc gt-f1 gt-ellipsis"> <div class="item-left tw-flex tw-justify-center tw-flex-col tw-flex-1 gt-ellipsis">
<div class="gt-ellipsis"> <div class="gt-ellipsis">
<span data-tooltip-content="{{ctx.Locale.Tr "repo.issues.dependency.no_permission.can_remove"}}">{{svg "octicon-lock" 16}}</span> <span data-tooltip-content="{{ctx.Locale.Tr "repo.issues.dependency.no_permission.can_remove"}}">{{svg "octicon-lock" 16}}</span>
<span class="title" data-tooltip-content="#{{.Issue.Index}} {{.Issue.Title | RenderEmoji $.Context}}"> <span class="title" data-tooltip-content="#{{.Issue.Index}} {{.Issue.Title | RenderEmoji $.Context}}">
@ -481,7 +481,7 @@
{{.Repository.OwnerName}}/{{.Repository.Name}} {{.Repository.OwnerName}}/{{.Repository.Name}}
</div> </div>
</div> </div>
<div class="item-right gt-df gt-ac gt-m-2"> <div class="item-right tw-flex tw-content-center gt-m-2">
{{if and $.CanCreateIssueDependencies (not $.Repository.IsArchived)}} {{if and $.CanCreateIssueDependencies (not $.Repository.IsArchived)}}
<a class="delete-dependency-button ci muted" data-id="{{.Issue.ID}}" data-type="blocking" data-tooltip-content="{{ctx.Locale.Tr "repo.issues.dependency.remove_info"}}"> <a class="delete-dependency-button ci muted" data-id="{{.Issue.ID}}" data-type="blocking" data-tooltip-content="{{ctx.Locale.Tr "repo.issues.dependency.remove_info"}}">
{{svg "octicon-trash" 16}} {{svg "octicon-trash" 16}}
@ -491,7 +491,7 @@
</div> </div>
{{end}} {{end}}
{{else if .BlockedByDependenciesNotPermitted}} {{else if .BlockedByDependenciesNotPermitted}}
<div class="item gt-df gt-ac gt-sb gt-ellipsis"> <div class="item tw-flex tw-content-center tw-justify-between gt-ellipsis">
<span>{{ctx.Locale.TrN (len .BlockedByDependenciesNotPermitted) "repo.issues.dependency.no_permission_1" "repo.issues.dependency.no_permission_n" (len .BlockedByDependenciesNotPermitted)}}</span> <span>{{ctx.Locale.TrN (len .BlockedByDependenciesNotPermitted) "repo.issues.dependency.no_permission_1" "repo.issues.dependency.no_permission_n" (len .BlockedByDependenciesNotPermitted)}}</span>
</div> </div>
{{end}} {{end}}
@ -548,7 +548,7 @@
<div class="divider"></div> <div class="divider"></div>
<div class="ui equal width compact grid"> <div class="ui equal width compact grid">
{{$issueReferenceLink := printf "%s#%d" .Issue.Repo.FullName .Issue.Index}} {{$issueReferenceLink := printf "%s#%d" .Issue.Repo.FullName .Issue.Index}}
<div class="row gt-ac" data-tooltip-content="{{$issueReferenceLink}}"> <div class="row tw-content-center" data-tooltip-content="{{$issueReferenceLink}}">
<span class="text column truncate">{{ctx.Locale.Tr "repo.issues.reference_link" $issueReferenceLink}}</span> <span class="text column truncate">{{ctx.Locale.Tr "repo.issues.reference_link" $issueReferenceLink}}</span>
<button class="ui two wide button column gt-p-3" data-clipboard-text="{{$issueReferenceLink}}">{{svg "octicon-copy" 14}}</button> <button class="ui two wide button column gt-p-3" data-clipboard-text="{{$issueReferenceLink}}">{{svg "octicon-copy" 14}}</button>
</div> </div>

@ -7,7 +7,7 @@
</div> </div>
<div class="item-section-right"> <div class="item-section-right">
{{if and $.UpdateAllowed $.UpdateByRebaseAllowed}} {{if and $.UpdateAllowed $.UpdateByRebaseAllowed}}
<div class="gt-dib"> <div class="tw-inline-block">
<div class="ui buttons update-button"> <div class="ui buttons update-button">
<button class="ui button" data-do="{{$.Link}}/update" data-redirect="{{$.Link}}"> <button class="ui button" data-do="{{$.Link}}/update" data-redirect="{{$.Link}}">
<span class="button-text"> <span class="button-text">

@ -8,7 +8,7 @@
<h1 class="gt-word-break"> <h1 class="gt-word-break">
<span id="issue-title">{{RenderIssueTitle $.Context .Issue.Title ($.Repository.ComposeMetas ctx) | RenderCodeBlock}} <span class="index">#{{.Issue.Index}}</span> <span id="issue-title">{{RenderIssueTitle $.Context .Issue.Title ($.Repository.ComposeMetas ctx) | RenderCodeBlock}} <span class="index">#{{.Issue.Index}}</span>
</span> </span>
<div id="edit-title-input" class="ui input gt-f1 gt-hidden"> <div id="edit-title-input" class="ui input tw-flex-1 gt-hidden">
<input value="{{.Issue.Title}}" maxlength="255" autocomplete="off"> <input value="{{.Issue.Title}}" maxlength="255" autocomplete="off">
</div> </div>
</h1> </h1>

@ -5,7 +5,7 @@
{{template "repo/migrate/helper" .}} {{template "repo/migrate/helper" .}}
<div class="ui cards migrate-entries"> <div class="ui cards migrate-entries">
{{range .Services}} {{range .Services}}
<a class="ui card migrate-entry gt-df gt-ac" href="{{AppSubUrl}}/repo/migrate?service_type={{.}}&org={{$.Org}}&mirror={{$.Mirror}}"> <a class="ui card migrate-entry tw-flex tw-content-center" href="{{AppSubUrl}}/repo/migrate?service_type={{.}}&org={{$.Org}}&mirror={{$.Mirror}}">
{{if eq .Name "github"}} {{if eq .Name "github"}}
{{svg "octicon-mark-github" 184 "gt-p-4"}} {{svg "octicon-mark-github" 184 "gt-p-4"}}
{{else if eq .Name "gitlab"}} {{else if eq .Name "gitlab"}}

@ -2,7 +2,7 @@
<div role="main" aria-label="{{.Title}}" class="page-content repository projects view-project"> <div role="main" aria-label="{{.Title}}" class="page-content repository projects view-project">
{{template "repo/header" .}} {{template "repo/header" .}}
<div class="ui container padded"> <div class="ui container padded">
<div class="gt-df gt-sb gt-ac gt-mb-4"> <div class="tw-flex tw-justify-between tw-content-center gt-mb-4">
{{template "repo/issue/navbar" .}} {{template "repo/issue/navbar" .}}
<a class="ui small primary button" href="{{.RepoLink}}/issues/new/choose?project={{.Project.ID}}">{{ctx.Locale.Tr "repo.issues.new"}}</a> <a class="ui small primary button" href="{{.RepoLink}}/issues/new/choose?project={{.Project.ID}}">{{ctx.Locale.Tr "repo.issues.new"}}</a>
</div> </div>

@ -37,7 +37,7 @@
<div class="inline field"> <div class="inline field">
<label>{{ctx.Locale.Tr "repo.fork_from"}}</label> <label>{{ctx.Locale.Tr "repo.fork_from"}}</label>
<a href="{{.ForkRepo.Link}}" class="gt-dib">{{.ForkRepo.FullName}}</a> <a href="{{.ForkRepo.Link}}" class="tw-inline-block">{{.ForkRepo.FullName}}</a>
</div> </div>
<div class="inline required field {{if .Err_RepoName}}error{{end}}"> <div class="inline required field {{if .Err_RepoName}}error{{end}}">
<label for="repo_name">{{ctx.Locale.Tr "repo.repo_name"}}</label> <label for="repo_name">{{ctx.Locale.Tr "repo.repo_name"}}</label>

@ -15,7 +15,7 @@
{{ctx.Locale.Tr "repo.pulls.tab_files"}} {{ctx.Locale.Tr "repo.pulls.tab_files"}}
<span class="ui small label">{{if .NumFiles}}{{.NumFiles}}{{else}}-{{end}}</span> <span class="ui small label">{{if .NumFiles}}{{.NumFiles}}{{else}}-{{end}}</span>
</a> </a>
<span class="item tw-ml-auto gt-pr-0 gt-font-bold gt-df gt-ac gt-gap-3"> <span class="item tw-ml-auto gt-pr-0 gt-font-bold tw-flex tw-content-center gt-gap-3">
<span><span class="text green">{{if .Diff.TotalAddition}}+{{.Diff.TotalAddition}}{{end}}</span> <span class="text red">{{if .Diff.TotalDeletion}}-{{.Diff.TotalDeletion}}{{end}}</span></span> <span><span class="text green">{{if .Diff.TotalAddition}}+{{.Diff.TotalAddition}}{{end}}</span> <span class="text red">{{if .Diff.TotalDeletion}}-{{.Diff.TotalDeletion}}{{end}}</span></span>
<span class="diff-stats-bar"> <span class="diff-stats-bar">
<div class="diff-stats-add-bar" style="width: {{Eval 100 "*" .Diff.TotalAddition "/" "(" .Diff.TotalAddition "+" .Diff.TotalDeletion "+" 0.0 ")"}}%"></div> <div class="diff-stats-add-bar" style="width: {{Eval 100 "*" .Diff.TotalAddition "/" "(" .Diff.TotalAddition "+" .Diff.TotalDeletion "+" 0.0 ")"}}%"></div>

@ -16,10 +16,10 @@
{{end}} {{end}}
</div> </div>
<div class="ui twelve wide column detail"> <div class="ui twelve wide column detail">
<div class="gt-df gt-ac gt-sb gt-fw gt-mb-3"> <div class="tw-flex tw-content-center tw-justify-between tw-flex-wrap gt-mb-3">
<h4 class="release-list-title gt-word-break"> <h4 class="release-list-title gt-word-break">
{{if $.PageIsSingleTag}}{{$release.Title}}{{else}}<a href="{{$.RepoLink}}/releases/tag/{{$release.TagName | PathEscapeSegments}}">{{$release.Title}}</a>{{end}} {{if $.PageIsSingleTag}}{{$release.Title}}{{else}}<a href="{{$.RepoLink}}/releases/tag/{{$release.TagName | PathEscapeSegments}}">{{$release.Title}}</a>{{end}}
{{template "repo/commit_statuses" dict "Status" $info.CommitStatus "Statuses" $info.CommitStatuses "AdditionalClasses" "gt-df"}} {{template "repo/commit_statuses" dict "Status" $info.CommitStatus "Statuses" $info.CommitStatuses "AdditionalClasses" "tw-flex"}}
{{if $release.IsDraft}} {{if $release.IsDraft}}
<span class="ui yellow label">{{ctx.Locale.Tr "repo.release.draft"}}</span> <span class="ui yellow label">{{ctx.Locale.Tr "repo.release.draft"}}</span>
{{else if $release.IsPrerelease}} {{else if $release.IsPrerelease}}

@ -21,7 +21,7 @@
{{else}} {{else}}
<input id="tag-name" name="tag_name" value="{{.tag_name}}" aria-label="{{ctx.Locale.Tr "repo.release.tag_name"}}" placeholder="{{ctx.Locale.Tr "repo.release.tag_name"}}" autofocus required maxlength="255"> <input id="tag-name" name="tag_name" value="{{.tag_name}}" aria-label="{{ctx.Locale.Tr "repo.release.tag_name"}}" placeholder="{{ctx.Locale.Tr "repo.release.tag_name"}}" autofocus required maxlength="255">
<input id="tag-name-editor" type="hidden" data-existing-tags="{{JsonUtils.EncodeToString .Tags}}" data-tag-helper="{{ctx.Locale.Tr "repo.release.tag_helper"}}" data-tag-helper-new="{{ctx.Locale.Tr "repo.release.tag_helper_new"}}" data-tag-helper-existing="{{ctx.Locale.Tr "repo.release.tag_helper_existing"}}"> <input id="tag-name-editor" type="hidden" data-existing-tags="{{JsonUtils.EncodeToString .Tags}}" data-tag-helper="{{ctx.Locale.Tr "repo.release.tag_helper"}}" data-tag-helper-new="{{ctx.Locale.Tr "repo.release.tag_helper_new"}}" data-tag-helper-existing="{{ctx.Locale.Tr "repo.release.tag_helper_existing"}}">
<div id="tag-target-selector" class="gt-dib"> <div id="tag-target-selector" class="tw-inline-block">
<span class="at">@</span> <span class="at">@</span>
<div class="ui selection dropdown"> <div class="ui selection dropdown">
<input type="hidden" name="tag_target" value="{{.tag_target}}"> <input type="hidden" name="tag_target" value="{{.tag_target}}">
@ -61,7 +61,7 @@
</div> </div>
{{range .attachments}} {{range .attachments}}
<div class="field flex-text-block" id="attachment-{{.ID}}"> <div class="field flex-text-block" id="attachment-{{.ID}}">
<div class="flex-text-inline gt-f1"> <div class="flex-text-inline tw-flex-1">
<input name="attachment-edit-{{.UUID}}" class="attachment_edit" required value="{{.Name}}"> <input name="attachment-edit-{{.UUID}}" class="attachment_edit" required value="{{.Name}}">
<input name="attachment-del-{{.UUID}}" type="hidden" value="false"> <input name="attachment-del-{{.UUID}}" type="hidden" value="false">
<span class="ui text grey tw-whitespace-nowrap">{{.Size | FileSize}}</span> <span class="ui text grey tw-whitespace-nowrap">{{.Size | FileSize}}</span>
@ -101,7 +101,7 @@
</div> </div>
<span class="help">{{ctx.Locale.Tr "repo.release.prerelease_helper"}}</span> <span class="help">{{ctx.Locale.Tr "repo.release.prerelease_helper"}}</span>
<div class="divider gt-mt-0"></div> <div class="divider gt-mt-0"></div>
<div class="gt-df gt-je"> <div class="tw-flex tw-justify-end">
{{if .PageIsEditRelease}} {{if .PageIsEditRelease}}
<a class="ui small button" href="{{.RepoLink}}/releases"> <a class="ui small button" href="{{.RepoLink}}/releases">
{{ctx.Locale.Tr "repo.release.cancel"}} {{ctx.Locale.Tr "repo.release.cancel"}}

@ -2,8 +2,8 @@
{{$canReadCode := $.Permission.CanRead $.UnitTypeCode}} {{$canReadCode := $.Permission.CanRead $.UnitTypeCode}}
{{if $canReadReleases}} {{if $canReadReleases}}
<div class="gt-df"> <div class="tw-flex">
<div class="gt-f1 gt-df gt-ac"> <div class="tw-flex-1 tw-flex tw-content-center">
<h2 class="ui compact small menu header small-menu-items"> <h2 class="ui compact small menu header small-menu-items">
<a class="{{if and .PageIsReleaseList (not .PageIsSingleTag)}}active {{end}}item" href="{{.RepoLink}}/releases">{{ctx.Locale.PrettyNumber .NumReleases}} {{ctx.Locale.TrN .NumReleases "repo.release" "repo.releases"}}</a> <a class="{{if and .PageIsReleaseList (not .PageIsSingleTag)}}active {{end}}item" href="{{.RepoLink}}/releases">{{ctx.Locale.PrettyNumber .NumReleases}} {{ctx.Locale.TrN .NumReleases "repo.release" "repo.releases"}}</a>
{{if $canReadCode}} {{if $canReadCode}}

@ -12,11 +12,11 @@
<p> <p>
{{ctx.Locale.Tr "repo.settings.default_branch_desc"}} {{ctx.Locale.Tr "repo.settings.default_branch_desc"}}
</p> </p>
<form class="gt-df" action="{{.Link}}" method="post"> <form class="tw-flex" action="{{.Link}}" method="post">
{{.CsrfTokenHtml}} {{.CsrfTokenHtml}}
<input type="hidden" name="action" value="default_branch"> <input type="hidden" name="action" value="default_branch">
{{if not .Repository.IsEmpty}} {{if not .Repository.IsEmpty}}
<div class="ui dropdown selection search gt-f1 gt-mr-3 tw-max-w-96"> <div class="ui dropdown selection search tw-flex-1 gt-mr-3 tw-max-w-96">
{{svg "octicon-triangle-down" 14 "dropdown icon"}} {{svg "octicon-triangle-down" 14 "dropdown icon"}}
<input type="hidden" name="branch" value="{{.Repository.DefaultBranch}}"> <input type="hidden" name="branch" value="{{.Repository.DefaultBranch}}">
<div class="default text">{{.Repository.DefaultBranch}}</div> <div class="default text">{{.Repository.DefaultBranch}}</div>
@ -41,7 +41,7 @@
<div class="ui attached segment"> <div class="ui attached segment">
<div class="flex-list"> <div class="flex-list">
{{range .ProtectedBranches}} {{range .ProtectedBranches}}
<div class="flex-item gt-ac"> <div class="flex-item tw-content-center">
<div class="flex-item-main"> <div class="flex-item-main">
<div class="flex-item-title"> <div class="flex-item-title">
<div class="ui basic primary label">{{.RuleName}}</div> <div class="ui basic primary label">{{.RuleName}}</div>

@ -7,7 +7,7 @@
<div class="ui attached segment"> <div class="ui attached segment">
<div class="flex-list"> <div class="flex-list">
{{range .Collaborators}} {{range .Collaborators}}
<div class="flex-item gt-ac"> <div class="flex-item tw-content-center">
<div class="flex-item-leading"> <div class="flex-item-leading">
<a href="{{.HomeLink}}">{{ctx.AvatarUtils.Avatar . 32}}</a> <a href="{{.HomeLink}}">{{ctx.AvatarUtils.Avatar . 32}}</a>
</div> </div>
@ -41,7 +41,7 @@
<div class="ui bottom attached segment"> <div class="ui bottom attached segment">
<form class="ui form" id="repo-collab-form" action="{{.Link}}" method="post"> <form class="ui form" id="repo-collab-form" action="{{.Link}}" method="post">
{{.CsrfTokenHtml}} {{.CsrfTokenHtml}}
<div id="search-user-box" class="ui search input gt-vm"> <div id="search-user-box" class="ui search input tw-align-middle">
<input class="prompt" name="collaborator" placeholder="{{ctx.Locale.Tr "search.team_kind"}}" autocomplete="off" autofocus required> <input class="prompt" name="collaborator" placeholder="{{ctx.Locale.Tr "search.team_kind"}}" autocomplete="off" autofocus required>
</div> </div>
<button class="ui primary button">{{ctx.Locale.Tr "repo.settings.add_collaborator"}}</button> <button class="ui primary button">{{ctx.Locale.Tr "repo.settings.add_collaborator"}}</button>
@ -89,7 +89,7 @@
{{if $allowedToChangeTeams}} {{if $allowedToChangeTeams}}
<form class="ui form" id="repo-collab-team-form" action="{{.Link}}/team" method="post"> <form class="ui form" id="repo-collab-team-form" action="{{.Link}}/team" method="post">
{{.CsrfTokenHtml}} {{.CsrfTokenHtml}}
<div id="search-team-box" class="ui search input gt-vm" data-org-name="{{.OrgName}}"> <div id="search-team-box" class="ui search input tw-align-middle" data-org-name="{{.OrgName}}">
<input class="prompt" name="team" placeholder="{{ctx.Locale.Tr "search.team_kind"}}" autocomplete="off" autofocus required> <input class="prompt" name="team" placeholder="{{ctx.Locale.Tr "search.team_kind"}}" autocomplete="off" autofocus required>
</div> </div>
<button class="ui primary button">{{ctx.Locale.Tr "repo.settings.add_team"}}</button> <button class="ui primary button">{{ctx.Locale.Tr "repo.settings.add_team"}}</button>

@ -11,7 +11,7 @@
{{range .Hooks}} {{range .Hooks}}
<div class="item truncated-item-container"> <div class="item truncated-item-container">
<span class="text {{if .IsActive}}green{{else}}grey{{end}} gt-mr-3">{{svg "octicon-dot-fill" 22}}</span> <span class="text {{if .IsActive}}green{{else}}grey{{end}} gt-mr-3">{{svg "octicon-dot-fill" 22}}</span>
<span class="text truncate gt-f1 gt-mr-3">{{.Name}}</span> <span class="text truncate tw-flex-1 gt-mr-3">{{.Name}}</span>
<a class="muted tw-float-right gt-p-3" href="{{$.RepoLink}}/settings/hooks/git/{{.Name|PathEscape}}"> <a class="muted tw-float-right gt-p-3" href="{{$.RepoLink}}/settings/hooks/git/{{.Name|PathEscape}}">
{{svg "octicon-pencil"}} {{svg "octicon-pencil"}}
</a> </a>

@ -132,7 +132,7 @@
<td>{{ctx.Locale.Tr "repo.settings.mirror_settings.direction.pull"}}</td> <td>{{ctx.Locale.Tr "repo.settings.mirror_settings.direction.pull"}}</td>
<td>{{DateTime "full" .PullMirror.UpdatedUnix}}</td> <td>{{DateTime "full" .PullMirror.UpdatedUnix}}</td>
<td class="right aligned"> <td class="right aligned">
<form method="post" class="gt-dib"> <form method="post" class="tw-inline-block">
{{.CsrfTokenHtml}} {{.CsrfTokenHtml}}
<input type="hidden" name="action" value="mirror-sync"> <input type="hidden" name="action" value="mirror-sync">
<button class="ui primary tiny button inline text-thin">{{ctx.Locale.Tr "repo.settings.sync_mirror"}}</button> <button class="ui primary tiny button inline text-thin">{{ctx.Locale.Tr "repo.settings.sync_mirror"}}</button>
@ -230,13 +230,13 @@
> >
{{svg "octicon-pencil" 14}} {{svg "octicon-pencil" 14}}
</button> </button>
<form method="post" class="gt-dib"> <form method="post" class="tw-inline-block">
{{$.CsrfTokenHtml}} {{$.CsrfTokenHtml}}
<input type="hidden" name="action" value="push-mirror-sync"> <input type="hidden" name="action" value="push-mirror-sync">
<input type="hidden" name="push_mirror_id" value="{{.ID}}"> <input type="hidden" name="push_mirror_id" value="{{.ID}}">
<button class="ui primary tiny button" data-tooltip-content="{{ctx.Locale.Tr "repo.settings.sync_mirror"}}">{{svg "octicon-sync" 14}}</button> <button class="ui primary tiny button" data-tooltip-content="{{ctx.Locale.Tr "repo.settings.sync_mirror"}}">{{svg "octicon-sync" 14}}</button>
</form> </form>
<form method="post" class="gt-dib"> <form method="post" class="tw-inline-block">
{{$.CsrfTokenHtml}} {{$.CsrfTokenHtml}}
<input type="hidden" name="action" value="push-mirror-remove"> <input type="hidden" name="action" value="push-mirror-remove">
<input type="hidden" name="push_mirror_id" value="{{.ID}}"> <input type="hidden" name="push_mirror_id" value="{{.ID}}">
@ -837,7 +837,7 @@
</div> </div>
</div> </div>
{{if not .Repository.IsMirror}} {{if not .Repository.IsMirror}}
<div class="flex-item gt-ac"> <div class="flex-item tw-content-center">
<div class="flex-item-main"> <div class="flex-item-main">
{{if .Repository.IsArchived}} {{if .Repository.IsArchived}}
<div class="flex-item-title">{{ctx.Locale.Tr "repo.settings.unarchive.header"}}</div> <div class="flex-item-title">{{ctx.Locale.Tr "repo.settings.unarchive.header"}}</div>

@ -106,7 +106,7 @@
</td> </td>
<td class="right aligned"> <td class="right aligned">
<a class="ui tiny primary button" href="{{$.RepoLink}}/settings/tags/{{.ID}}">{{ctx.Locale.Tr "edit"}}</a> <a class="ui tiny primary button" href="{{$.RepoLink}}/settings/tags/{{.ID}}">{{ctx.Locale.Tr "edit"}}</a>
<form class="gt-dib" action="{{$.RepoLink}}/settings/tags/delete" method="post"> <form class="tw-inline-block" action="{{$.RepoLink}}/settings/tags/delete" method="post">
{{$.CsrfTokenHtml}} {{$.CsrfTokenHtml}}
<input type="hidden" name="id" value="{{.ID}}"> <input type="hidden" name="id" value="{{.ID}}">
<button class="ui tiny red button">{{ctx.Locale.Tr "remove"}}</button> <button class="ui tiny red button">{{ctx.Locale.Tr "remove"}}</button>

@ -15,7 +15,7 @@
{{range .Webhooks}} {{range .Webhooks}}
<div class="item truncated-item-container"> <div class="item truncated-item-container">
<span class="text {{if eq .LastStatus 1}}green{{else if eq .LastStatus 2}}red{{else}}grey{{end}} gt-mr-3">{{svg "octicon-dot-fill" 22}}</span> <span class="text {{if eq .LastStatus 1}}green{{else if eq .LastStatus 2}}red{{else}}grey{{end}} gt-mr-3">{{svg "octicon-dot-fill" 22}}</span>
<div class="text truncate gt-f1 gt-mr-3"> <div class="text truncate tw-flex-1 gt-mr-3">
<a title="{{.URL}}" href="{{$.BaseLink}}/{{.ID}}">{{.URL}}</a> <a title="{{.URL}}" href="{{$.BaseLink}}/{{.ID}}">{{.URL}}</a>
</div> </div>
<a class="muted gt-p-3" href="{{$.BaseLink}}/{{.ID}}">{{svg "octicon-pencil"}}</a> <a class="muted gt-p-3" href="{{$.BaseLink}}/{{.ID}}">{{svg "octicon-pencil"}}</a>

@ -17,7 +17,7 @@
<div class="ui list"> <div class="ui list">
{{range .History}} {{range .History}}
<div class="item"> <div class="item">
<div class="flex-text-block gt-sb"> <div class="flex-text-block tw-justify-between">
<div class="flex-text-inline"> <div class="flex-text-inline">
{{if .IsSucceed}} {{if .IsSucceed}}
<span class="text green">{{svg "octicon-check"}}</span> <span class="text green">{{svg "octicon-check"}}</span>

@ -5,7 +5,7 @@
{{template "base/alert" .}} {{template "base/alert" .}}
{{template "repo/release_tag_header" .}} {{template "repo/release_tag_header" .}}
<h4 class="ui top attached header"> <h4 class="ui top attached header">
<div class="five wide column gt-df gt-ac"> <div class="five wide column tw-flex tw-content-center">
{{svg "octicon-tag" 16 "gt-mr-2"}}{{ctx.Locale.Tr "repo.release.tags"}} {{svg "octicon-tag" 16 "gt-mr-2"}}{{ctx.Locale.Tr "repo.release.tags"}}
</div> </div>
</h4> </h4>
@ -18,12 +18,12 @@
<td class="tag"> <td class="tag">
<h3 class="release-tag-name gt-mb-3"> <h3 class="release-tag-name gt-mb-3">
{{if $canReadReleases}} {{if $canReadReleases}}
<a class="gt-df gt-ac" href="{{$.RepoLink}}/releases/tag/{{.TagName | PathEscapeSegments}}" rel="nofollow">{{.TagName}}</a> <a class="tw-flex tw-content-center" href="{{$.RepoLink}}/releases/tag/{{.TagName | PathEscapeSegments}}" rel="nofollow">{{.TagName}}</a>
{{else}} {{else}}
<a class="gt-df gt-ac" href="{{$.RepoLink}}/src/tag/{{.TagName | PathEscapeSegments}}" rel="nofollow">{{.TagName}}</a> <a class="tw-flex tw-content-center" href="{{$.RepoLink}}/src/tag/{{.TagName | PathEscapeSegments}}" rel="nofollow">{{.TagName}}</a>
{{end}} {{end}}
</h3> </h3>
<div class="download gt-df gt-ac"> <div class="download tw-flex tw-content-center">
{{if $.Permission.CanRead $.UnitTypeCode}} {{if $.Permission.CanRead $.UnitTypeCode}}
{{if .CreatedUnix}} {{if .CreatedUnix}}
<span class="gt-mr-3">{{svg "octicon-clock" 16 "gt-mr-2"}}{{TimeSinceUnix .CreatedUnix ctx.Locale}}</span> <span class="gt-mr-3">{{svg "octicon-clock" 16 "gt-mr-2"}}{{TimeSinceUnix .CreatedUnix ctx.Locale}}</span>

@ -25,8 +25,8 @@
</div> </div>
{{end}} {{end}}
<h4 class="file-header ui top attached header gt-df gt-ac gt-sb gt-fw"> <h4 class="file-header ui top attached header tw-flex tw-content-center tw-justify-between tw-flex-wrap">
<div class="file-header-left gt-df gt-ac gt-py-3 gt-pr-4"> <div class="file-header-left tw-flex tw-content-center gt-py-3 gt-pr-4">
{{if .ReadmeInList}} {{if .ReadmeInList}}
{{svg "octicon-book" 16 "gt-mr-3"}} {{svg "octicon-book" 16 "gt-mr-3"}}
<strong><a class="default-link muted" href="#readme">{{.FileName}}</a></strong> <strong><a class="default-link muted" href="#readme">{{.FileName}}</a></strong>
@ -34,7 +34,7 @@
{{template "repo/file_info" .}} {{template "repo/file_info" .}}
{{end}} {{end}}
</div> </div>
<div class="file-header-right file-actions gt-df gt-ac gt-fw"> <div class="file-header-right file-actions tw-flex tw-content-center tw-flex-wrap">
{{if .HasSourceRenderedToggle}} {{if .HasSourceRenderedToggle}}
<div class="ui compact icon buttons"> <div class="ui compact icon buttons">
<a href="?display=source" class="ui mini basic button {{if .IsDisplayingSource}}active{{end}}" data-tooltip-content="{{ctx.Locale.Tr "repo.file_view_source"}}">{{svg "octicon-code" 15}}</a> <a href="?display=source" class="ui mini basic button {{if .IsDisplayingSource}}active{{end}}" data-tooltip-content="{{ctx.Locale.Tr "repo.file_view_source"}}">{{svg "octicon-code" 15}}</a>

@ -3,7 +3,7 @@
{{template "repo/header" .}} {{template "repo/header" .}}
<div class="ui container"> <div class="ui container">
{{template "base/alert" .}} {{template "base/alert" .}}
<div class="ui header flex-text-block gt-sb"> <div class="ui header flex-text-block tw-justify-between">
{{ctx.Locale.Tr "repo.wiki.new_page"}} {{ctx.Locale.Tr "repo.wiki.new_page"}}
{{if .PageIsWikiEdit}} {{if .PageIsWikiEdit}}
<a class="ui tiny primary button" href="{{.RepoLink}}/wiki?action=_new">{{ctx.Locale.Tr "repo.wiki.new_page_button"}}</a> <a class="ui tiny primary button" href="{{.RepoLink}}/wiki?action=_new">{{ctx.Locale.Tr "repo.wiki.new_page_button"}}</a>

@ -2,7 +2,7 @@
<div role="main" aria-label="{{.Title}}" class="page-content repository wiki pages"> <div role="main" aria-label="{{.Title}}" class="page-content repository wiki pages">
{{template "repo/header" .}} {{template "repo/header" .}}
<div class="ui container"> <div class="ui container">
<h2 class="ui header gt-df gt-ac gt-sb"> <h2 class="ui header tw-flex tw-content-center tw-justify-between">
<span>{{ctx.Locale.Tr "repo.wiki.pages"}}</span> <span>{{ctx.Locale.Tr "repo.wiki.pages"}}</span>
<span> <span>
{{if and .CanWriteWiki (not .Repository.IsMirror)}} {{if and .CanWriteWiki (not .Repository.IsMirror)}}

@ -4,7 +4,7 @@
{{$title := .title}} {{$title := .title}}
<div class="ui container"> <div class="ui container">
<div class="repo-button-row"> <div class="repo-button-row">
<div class="gt-df gt-ac"> <div class="tw-flex tw-content-center">
<div class="ui floating filter dropdown" data-no-results="{{ctx.Locale.Tr "no_results_found"}}"> <div class="ui floating filter dropdown" data-no-results="{{ctx.Locale.Tr "no_results_found"}}">
<div class="ui basic small button"> <div class="ui basic small button">
<span class="text"> <span class="text">

@ -7,15 +7,15 @@
{{template "base/disable_form_autofill"}} {{template "base/disable_form_autofill"}}
{{.CsrfTokenHtml}} {{.CsrfTokenHtml}}
<div class="runner-basic-info"> <div class="runner-basic-info">
<div class="field gt-dib gt-mr-4"> <div class="field tw-inline-block gt-mr-4">
<label>{{ctx.Locale.Tr "actions.runners.status"}}</label> <label>{{ctx.Locale.Tr "actions.runners.status"}}</label>
<span class="ui {{if .Runner.IsOnline}}green{{else}}basic{{end}} label">{{.Runner.StatusLocaleName ctx.Locale}}</span> <span class="ui {{if .Runner.IsOnline}}green{{else}}basic{{end}} label">{{.Runner.StatusLocaleName ctx.Locale}}</span>
</div> </div>
<div class="field gt-dib gt-mr-4"> <div class="field tw-inline-block gt-mr-4">
<label>{{ctx.Locale.Tr "actions.runners.last_online"}}</label> <label>{{ctx.Locale.Tr "actions.runners.last_online"}}</label>
<span>{{if .Runner.LastOnline}}{{TimeSinceUnix .Runner.LastOnline ctx.Locale}}{{else}}{{ctx.Locale.Tr "never"}}{{end}}</span> <span>{{if .Runner.LastOnline}}{{TimeSinceUnix .Runner.LastOnline ctx.Locale}}{{else}}{{ctx.Locale.Tr "never"}}{{end}}</span>
</div> </div>
<div class="field gt-dib gt-mr-4"> <div class="field tw-inline-block gt-mr-4">
<label>{{ctx.Locale.Tr "actions.runners.labels"}}</label> <label>{{ctx.Locale.Tr "actions.runners.labels"}}</label>
<span> <span>
{{range .Runner.AgentLabels}} {{range .Runner.AgentLabels}}
@ -23,7 +23,7 @@
{{end}} {{end}}
</span> </span>
</div> </div>
<div class="field gt-dib gt-mr-4"> <div class="field tw-inline-block gt-mr-4">
<label>{{ctx.Locale.Tr "actions.runners.owner_type"}}</label> <label>{{ctx.Locale.Tr "actions.runners.owner_type"}}</label>
<span data-tooltip-content="{{.Runner.BelongsToOwnerName}}">{{.Runner.BelongsToOwnerType.LocaleString ctx.Locale}}</span> <span data-tooltip-content="{{.Runner.BelongsToOwnerName}}">{{.Runner.BelongsToOwnerType.LocaleString ctx.Locale}}</span>
</div> </div>

@ -1,4 +1,4 @@
<div class="flex-text-block gt-fw"> <div class="flex-text-block tw-flex-wrap">
{{range $term := .SearchResultLanguages}} {{range $term := .SearchResultLanguages}}
<a class="ui {{if eq $.Language $term.Language}}primary{{end}} basic label gt-m-0" <a class="ui {{if eq $.Language $term.Language}}primary{{end}} basic label gt-m-0"
href="?q={{$.Keyword}}{{if ne $.Language $term.Language}}&l={{$term.Language}}{{end}}&fuzzy={{$.IsFuzzy}}"> href="?q={{$.Keyword}}{{if ne $.Language $term.Language}}&l={{$term.Language}}{{end}}&fuzzy={{$.IsFuzzy}}">
@ -12,9 +12,9 @@
{{range $result := .SearchResults}} {{range $result := .SearchResults}}
{{$repo := or $.Repo (index $.RepoMaps .RepoID)}} {{$repo := or $.Repo (index $.RepoMaps .RepoID)}}
<div class="diff-file-box diff-box file-content non-diff-file-content repo-search-result"> <div class="diff-file-box diff-box file-content non-diff-file-content repo-search-result">
<h4 class="ui top attached normal header gt-df gt-fw"> <h4 class="ui top attached normal header tw-flex tw-flex-wrap">
{{if not $.Repo}} {{if not $.Repo}}
<span class="file gt-f1"> <span class="file tw-flex-1">
<a rel="nofollow" href="{{$repo.Link}}">{{$repo.FullName}}</a> <a rel="nofollow" href="{{$repo.Link}}">{{$repo.FullName}}</a>
{{if $repo.IsArchived}} {{if $repo.IsArchived}}
<span class="ui basic label">{{ctx.Locale.Tr "repo.desc.archived"}}</span> <span class="ui basic label">{{ctx.Locale.Tr "repo.desc.archived"}}</span>
@ -22,7 +22,7 @@
- {{.Filename}} - {{.Filename}}
</span> </span>
{{else}} {{else}}
<span class="file gt-f1">{{.Filename}}</span> <span class="file tw-flex-1">{{.Filename}}</span>
{{end}} {{end}}
<a role="button" class="ui basic tiny button" rel="nofollow" href="{{$repo.Link}}/src/commit/{{$result.CommitID | PathEscape}}/{{.Filename | PathEscapeSegments}}">{{ctx.Locale.Tr "repo.diff.view_file"}}</a> <a role="button" class="ui basic tiny button" rel="nofollow" href="{{$repo.Link}}/src/commit/{{$result.CommitID | PathEscape}}/{{.Filename | PathEscapeSegments}}">{{ctx.Locale.Tr "repo.diff.view_file"}}</a>
</h4> </h4>

@ -1,5 +1,5 @@
<div class="ui bottom attached table segment gt-df gt-ac gt-sb"> <div class="ui bottom attached table segment tw-flex tw-content-center tw-justify-between">
<div class="gt-df gt-ac gt-ml-4"> <div class="tw-flex tw-content-center gt-ml-4">
{{if .result.Language}} {{if .result.Language}}
<i class="color-icon gt-mr-3" style="background-color: {{.result.Color}}"></i>{{.result.Language}} <i class="color-icon gt-mr-3" style="background-color: {{.result.Color}}"></i>{{.result.Language}}
{{end}} {{end}}

@ -14,7 +14,7 @@
{{if .Secrets}} {{if .Secrets}}
<div class="flex-list"> <div class="flex-list">
{{range .Secrets}} {{range .Secrets}}
<div class="flex-item gt-ac"> <div class="flex-item tw-content-center">
<div class="flex-item-leading"> <div class="flex-item-leading">
{{svg "octicon-key" 32}} {{svg "octicon-key" 32}}
</div> </div>

@ -2,7 +2,7 @@
<div class="ui container"> <div class="ui container">
<div class="ui vertically grid head"> <div class="ui vertically grid head">
<div class="column"> <div class="column">
<div class="ui header gt-df gt-ac gt-word-break"> <div class="ui header tw-flex tw-content-center gt-word-break">
{{ctx.AvatarUtils.Avatar . 100}} {{ctx.AvatarUtils.Avatar . 100}}
<span class="text thin grey"><a href="{{.HomeLink}}">{{.DisplayName}}</a></span> <span class="text thin grey"><a href="{{.HomeLink}}">{{.DisplayName}}</a></span>
<span class="org-visibility"> <span class="org-visibility">

@ -1,5 +1,5 @@
<div id="profile-avatar-card" class="ui card"> <div id="profile-avatar-card" class="ui card">
<div id="profile-avatar" class="content gt-df"> <div id="profile-avatar" class="content tw-flex">
{{if eq .SignedUserID .ContextUser.ID}} {{if eq .SignedUserID .ContextUser.ID}}
<a class="image" href="{{AppSubUrl}}/user/settings" data-tooltip-content="{{ctx.Locale.Tr "user.change_avatar"}}"> <a class="image" href="{{AppSubUrl}}/user/settings" data-tooltip-content="{{ctx.Locale.Tr "user.change_avatar"}}">
{{/* the size doesn't take affect (and no need to take affect), image size(width) should be controlled by the parent container since this is not a flex layout*/}} {{/* the size doesn't take affect (and no need to take affect), image size(width) should be controlled by the parent container since this is not a flex layout*/}}
@ -36,7 +36,7 @@
{{if .ContextUser.Location}} {{if .ContextUser.Location}}
<li> <li>
{{svg "octicon-location"}} {{svg "octicon-location"}}
<span class="gt-f1">{{.ContextUser.Location}}</span> <span class="tw-flex-1">{{.ContextUser.Location}}</span>
{{if .ContextUserLocationMapURL}} {{if .ContextUserLocationMapURL}}
<a href="{{.ContextUserLocationMapURL}}" rel="nofollow noreferrer" data-tooltip-content="{{ctx.Locale.Tr "user.show_on_map"}}"> <a href="{{.ContextUserLocationMapURL}}" rel="nofollow noreferrer" data-tooltip-content="{{ctx.Locale.Tr "user.show_on_map"}}">
{{svg "octicon-link-external"}} {{svg "octicon-link-external"}}
@ -47,7 +47,7 @@
{{if (eq .SignedUserID .ContextUser.ID)}} {{if (eq .SignedUserID .ContextUser.ID)}}
<li> <li>
{{svg "octicon-mail"}} {{svg "octicon-mail"}}
<a class="gt-f1" href="mailto:{{.ContextUser.Email}}" rel="nofollow">{{.ContextUser.Email}}</a> <a class="tw-flex-1" href="mailto:{{.ContextUser.Email}}" rel="nofollow">{{.ContextUser.Email}}</a>
<a href="{{AppSubUrl}}/user/settings#privacy-user-settings"> <a href="{{AppSubUrl}}/user/settings#privacy-user-settings">
{{if .ShowUserEmail}} {{if .ShowUserEmail}}
<i data-tooltip-content="{{ctx.Locale.Tr "user.email_visibility.limited"}}"> <i data-tooltip-content="{{ctx.Locale.Tr "user.email_visibility.limited"}}">

@ -16,7 +16,7 @@
{{if .Variables}} {{if .Variables}}
<div class="flex-list"> <div class="flex-list">
{{range .Variables}} {{range .Variables}}
<div class="flex-item gt-ac"> <div class="flex-item tw-content-center">
<div class="flex-item-leading"> <div class="flex-item-leading">
{{svg "octicon-pencil" 32}} {{svg "octicon-pencil" 32}}
</div> </div>

@ -17,8 +17,8 @@
<body> <body>
<div class="full height"> <div class="full height">
<nav class="ui secondary menu"> <nav class="ui secondary menu">
<div class="ui container gt-df"> <div class="ui container tw-flex">
<div class="item gt-f1"> <div class="item tw-flex-1">
<a href="{{AppSubUrl}}/" aria-label="{{ctx.Locale.Tr "home"}}"> <a href="{{AppSubUrl}}/" aria-label="{{ctx.Locale.Tr "home"}}">
<img width="30" height="30" src="{{AssetUrlPrefix}}/img/logo.svg" alt="{{ctx.Locale.Tr "logo"}}" aria-hidden="true"> <img width="30" height="30" src="{{AssetUrlPrefix}}/img/logo.svg" alt="{{ctx.Locale.Tr "logo"}}" aria-hidden="true">
</a> </a>

@ -54,10 +54,10 @@
{{ctx.Locale.Tr "sign_in_or"}} {{ctx.Locale.Tr "sign_in_or"}}
</div> </div>
<div id="oauth2-login-navigator" class="gt-py-2"> <div id="oauth2-login-navigator" class="gt-py-2">
<div class="gt-df gt-fc gt-jc"> <div class="tw-flex tw-flex-col tw-justify-center">
<div id="oauth2-login-navigator-inner" class="gt-df gt-fc gt-fw gt-ac gt-gap-3"> <div id="oauth2-login-navigator-inner" class="tw-flex tw-flex-col tw-flex-wrap tw-content-center gt-gap-3">
{{range $provider := .OAuth2Providers}} {{range $provider := .OAuth2Providers}}
<a class="{{$provider.Name}} ui button gt-df gt-ac gt-jc gt-py-3 tw-w-full oauth-login-link" href="{{AppSubUrl}}/user/oauth2/{{$provider.DisplayName}}"> <a class="{{$provider.Name}} ui button tw-flex tw-content-center tw-justify-center gt-py-3 tw-w-full oauth-login-link" href="{{AppSubUrl}}/user/oauth2/{{$provider.DisplayName}}">
{{$provider.IconHTML 28}} {{$provider.IconHTML 28}}
{{ctx.Locale.Tr "sign_in_with_provider" $provider.DisplayName}} {{ctx.Locale.Tr "sign_in_with_provider" $provider.DisplayName}}
</a> </a>

@ -59,10 +59,10 @@
{{ctx.Locale.Tr "sign_in_or"}} {{ctx.Locale.Tr "sign_in_or"}}
</div> </div>
<div id="oauth2-login-navigator" class="gt-py-2"> <div id="oauth2-login-navigator" class="gt-py-2">
<div class="gt-df gt-fc gt-jc"> <div class="tw-flex tw-flex-col tw-justify-center">
<div id="oauth2-login-navigator-inner" class="gt-df gt-fc gt-fw gt-ac gt-gap-3"> <div id="oauth2-login-navigator-inner" class="tw-flex tw-flex-col tw-flex-wrap tw-content-center gt-gap-3">
{{range $provider := .OAuth2Providers}} {{range $provider := .OAuth2Providers}}
<a class="{{$provider.Name}} ui button gt-df gt-ac gt-jc gt-py-3 tw-w-full oauth-login-link" href="{{AppSubUrl}}/user/oauth2/{{$provider.DisplayName}}"> <a class="{{$provider.Name}} ui button tw-flex tw-content-center tw-justify-center gt-py-3 tw-w-full oauth-login-link" href="{{AppSubUrl}}/user/oauth2/{{$provider.DisplayName}}">
{{$provider.IconHTML 28}} {{$provider.IconHTML 28}}
{{ctx.Locale.Tr "sign_in_with_provider" $provider.DisplayName}} {{ctx.Locale.Tr "sign_in_with_provider" $provider.DisplayName}}
</a> </a>

@ -10,7 +10,7 @@
{{template "base/alert" .}} {{template "base/alert" .}}
<p>{{ctx.Locale.Tr "webauthn_sign_in"}}</p> <p>{{ctx.Locale.Tr "webauthn_sign_in"}}</p>
</div> </div>
<div class="ui attached segment gt-df gt-ac gt-jc gt-gap-2 gt-py-3"> <div class="ui attached segment tw-flex tw-content-center tw-justify-center gt-gap-2 gt-py-3">
<div class="is-loading" style="width: 40px; height: 40px"></div> <div class="is-loading" style="width: 40px; height: 40px"></div>
{{ctx.Locale.Tr "webauthn_press_button"}} {{ctx.Locale.Tr "webauthn_press_button"}}
</div> </div>

@ -84,7 +84,7 @@
{{$push := ActionContent2Commits .}} {{$push := ActionContent2Commits .}}
{{$repoLink := (.GetRepoLink ctx)}} {{$repoLink := (.GetRepoLink ctx)}}
{{$repo := .Repo}} {{$repo := .Repo}}
<div class="gt-df gt-fc gt-gap-2"> <div class="tw-flex tw-flex-col gt-gap-2">
{{range $push.Commits}} {{range $push.Commits}}
{{$commitLink := printf "%s/commit/%s" $repoLink .Sha1}} {{$commitLink := printf "%s/commit/%s" $repoLink .Sha1}}
<div class="flex-text-block"> <div class="flex-text-block">

Some files were not shown because too many files have changed in this diff Show More