2021-05-03 20:27:48 +03:00
{{ $ release : = .release }}
2022-02-09 23:28:55 +03:00
{{ $ defaultBranch : = $ .root .BranchName }} {{ if and .root .IsViewTag ( not .noTag ) }} {{ $ defaultBranch = .root .TagName }} {{ end }} {{ if eq $ defaultBranch "" }} {{ $ defaultBranch = $ .root .Repository .DefaultBranch }} {{ end }}
2022-08-08 02:15:11 +03:00
{{ $ type : = "" }} {{ if and .root .IsViewTag ( not .noTag ) }} {{ $ type = "tag" }} {{ else if .root .IsViewBranch }} {{ $ type = "branch" }} {{ else }} {{ $ type = "tree" }} {{ end }}
2021-05-03 20:27:48 +03:00
{{ $ showBranchesInDropdown : = not .root .HideBranchesInDropdown }}
<div class="fitted item choose reference {{ if not $ release }} mr-1 {{ end }} ">
2022-02-09 23:28:55 +03:00
<div class="ui floating filter dropdown custom"
data-branch-form=" {{ if $ .branchForm }} {{ $ .branchForm }} {{ end }} "
data-can-create-branch=" {{ if .canCreateBranch }} {{ .canCreateBranch }} {{ else }} {{ .root .CanCreateBranch }} {{ end }} "
2022-06-27 23:58:46 +03:00
data-no-results=" {{ .root .locale .Tr "repo.pulls.no_results" }} "
2022-02-09 23:28:55 +03:00
data-set-action=" {{ .setAction }} " data-submit-form=" {{ .submitForm }} "
2022-08-08 02:15:11 +03:00
data-view-type=" {{ $ type }} "
2022-02-09 23:28:55 +03:00
data-ref-name=" {{ if and .root .IsViewTag ( not .noTag ) }} {{ .root .TagName }} {{ else if .root .IsViewBranch }} {{ .root .BranchName }} {{ else }} {{ ShortSha .root .CommitID }} {{ end }} "
data-branch-url-prefix=" {{ if .branchURLPrefix }} {{ .branchURLPrefix }} {{ else }} {{ $ .root .RepoLink }} / {{ if $ .root .PageIsCommits }} commits {{ else }} src {{ end }} /branch/ {{ end }} "
data-branch-url-suffix=" {{ if .branchURLSuffix }} {{ .branchURLSuffix }} {{ else }} {{ if $ .root .TreePath }} / {{ PathEscapeSegments $ .root .TreePath }} {{ end }} {{ end }} "
data-tag-url-prefix=" {{ if .tagURLPrefix }} {{ .tagURLPrefix }} {{ else if $ release }} {{ $ .root .RepoLink }} /compare/ {{ else }} {{ $ .root .RepoLink }} / {{ if $ .root .PageIsCommits }} commits {{ else }} src {{ end }} /tag/ {{ end }} "
data-tag-url-suffix=" {{ if .tagURLSuffix }} {{ .tagURLSuffix }} {{ else if $ release }} ... {{ if $ release .IsDraft }} {{ PathEscapeSegments $ release .Target }} {{ else }} {{ if $ release .TagName }} {{ PathEscapeSegments $ release .TagName }} {{ else }} {{ PathEscapeSegments $ release .Sha1 }} {{ end }} {{ end }} {{ else }} {{ if $ .root .TreePath }} / {{ PathEscapeSegments $ .root .TreePath }} {{ end }} {{ end }} ">
2022-08-08 02:15:11 +03:00
<div class="branch-dropdown-button ellipsis ui basic small compact button" @click="menuVisible = !menuVisible" @keyup.enter="menuVisible = !menuVisible">
2015-12-09 09:11:41 +03:00
<span class="text">
2021-05-03 20:27:48 +03:00
{{ if $ release }}
2022-06-27 23:58:46 +03:00
{{ .root .locale .Tr "repo.release.compare" }}
2021-05-03 20:27:48 +03:00
{{ else }}
2022-08-08 02:15:11 +03:00
<span :class=" { visible: isViewTag}" v-if="isViewTag" {{ if not ( eq $ type "tag" ) }} v-cloak {{ end }} > {{ svg "octicon-tag" }} {{ .root .locale .Tr "repo.tag" }} :</span>
<span :class=" { visible: isViewBranch}" v-if="isViewBranch" {{ if not ( eq $ type "branch" ) }} v-cloak {{ end }} > {{ svg "octicon-git-branch" }} {{ .root .locale .Tr "repo.branch" }} :</span>
<span :class=" { visible: isViewTree}" v-if="isViewTree" {{ if not ( eq $ type "tree" ) }} v-cloak {{ end }} > {{ svg "octicon-git-branch" }} {{ .root .locale .Tr "repo.tree" }} :</span>
2022-02-09 23:28:55 +03:00
<strong ref="dropdownRefName"> {{ if and .root .IsViewTag ( not .noTag ) }} {{ .root .TagName }} {{ else if .root .IsViewBranch }} {{ .root .BranchName }} {{ else }} {{ ShortSha .root .CommitID }} {{ end }} </strong>
2021-05-03 20:27:48 +03:00
{{ end }}
2015-12-09 09:11:41 +03:00
</span>
2020-11-01 01:15:11 +03:00
{{ svg "octicon-triangle-down" 1 4 "dropdown icon" }}
2015-12-09 09:11:41 +03:00
</div>
2022-02-09 23:28:55 +03:00
<div class="data" style="display: none" data-mode=" {{ if or .root .IsViewTag .isTag }} tags {{ else }} branches {{ end }} ">
2021-05-03 20:27:48 +03:00
{{ if $ showBranchesInDropdown }}
{{ range .root .Branches }}
2022-02-09 23:28:55 +03:00
<div class="item branch {{ if eq $ defaultBranch . }} selected {{ end }} " data-url=" {{ PathEscapeSegments . }} "> {{ . }} </div>
2021-05-03 20:27:48 +03:00
{{ end }}
2017-10-15 22:59:24 +03:00
{{ end }}
2022-02-09 23:28:55 +03:00
{{ if ( not .noTag ) }}
{{ range .root .Tags }}
{{ if $ release }}
<div class="item tag {{ if eq $ release .TagName . }} selected {{ end }} " data-url=" {{ PathEscapeSegments . }} "> {{ . }} </div>
{{ else }}
<div class="item tag {{ if eq $ defaultBranch . }} selected {{ end }} " data-url=" {{ PathEscapeSegments . }} "> {{ . }} </div>
{{ end }}
2021-05-03 20:27:48 +03:00
{{ end }}
2017-10-15 22:59:24 +03:00
{{ end }}
</div>
2017-10-17 10:24:43 +03:00
<div class="menu transition" :class=" { visible: menuVisible}" v-if="menuVisible" v-cloak>
2015-12-09 09:11:41 +03:00
<div class="ui icon search input">
2020-11-09 21:21:47 +03:00
<i class="icon df ac jc m-0"> {{ svg "octicon-filter" 1 6 }} </i>
2022-06-27 23:58:46 +03:00
<input name="search" ref="searchField" autocomplete="off" v-model="searchTerm" @keydown="keydown($event)" placeholder=" {{ if $ .noTag }} {{ .root .locale .Tr "repo.pulls.filter_branch" }} {{ else if $ showBranchesInDropdown }} {{ .root .locale .Tr "repo.filter_branch_and_tag" }} {{ else }} {{ .root .locale .Tr "repo.find_tag" }} {{ end }} ...">
2015-12-09 09:11:41 +03:00
</div>
2021-05-03 20:27:48 +03:00
{{ if $ showBranchesInDropdown }}
<div class="header branch-tag-choice">
<div class="ui grid">
<div class="two column row">
<a class="reference column" href="#" @click="createTag = false; mode = 'branches'; focusSearchField()">
<span class="text" :class=" { black: mode == 'branches'}">
2022-06-27 23:58:46 +03:00
{{ svg "octicon-git-branch" 1 6 "mr-2" }} {{ .root .locale .Tr "repo.branches" }}
2021-05-03 20:27:48 +03:00
</span>
</a>
2022-02-09 23:28:55 +03:00
{{ if not .noTag }}
<a class="reference column" href="#" @click="createTag = true; mode = 'tags'; focusSearchField()">
<span class="text" :class=" { black: mode == 'tags'}">
2022-06-27 23:58:46 +03:00
{{ svg "octicon-tag" 1 6 "mr-2" }} {{ .root .locale .Tr "repo.tags" }}
2022-02-09 23:28:55 +03:00
</span>
</a>
{{ end }}
2021-05-03 20:27:48 +03:00
</div>
2015-12-09 09:11:41 +03:00
</div>
</div>
2021-05-03 20:27:48 +03:00
{{ end }}
2017-10-15 22:59:24 +03:00
<div class="scrolling menu" ref="scrollContainer">
<div v-for="(item, index) in filteredItems" :key="item.name" class="item" :class=" { selected: item.selected, active: active == index}" @click="selectItem(item)" :ref="'listItem' + index">$ { item.name }</div>
<div class="item" v-if="showCreateNewBranch" :class=" { active: active == filteredItems.length}" :ref="'listItem' + filteredItems.length">
<a href="#" @click="createNewBranch()">
2021-02-28 22:57:45 +03:00
<div v-show="createTag">
<i class="reference tags icon"></i>
2022-06-27 23:58:46 +03:00
{{ .root .locale .Tr "repo.tag.create_tag" ` $ { searchTerm } ` | Safe }}
2021-02-28 22:57:45 +03:00
</div>
<div v-show="!createTag">
2020-09-11 23:19:00 +03:00
{{ svg "octicon-git-branch" }}
2022-06-27 23:58:46 +03:00
{{ .root .locale .Tr "repo.branch.create_branch" ` $ { searchTerm } ` | Safe }}
2017-10-15 22:59:24 +03:00
</div>
<div class="text small">
2021-05-03 20:27:48 +03:00
{{ if or .root .IsViewBranch $ release }}
2022-06-27 23:58:46 +03:00
{{ .root .locale .Tr "repo.branch.create_from" .root .BranchName }}
2021-11-18 02:50:17 +03:00
{{ else if .root .IsViewTag }}
2022-06-27 23:58:46 +03:00
{{ .root .locale .Tr "repo.branch.create_from" .root .TagName }}
2017-10-15 22:59:24 +03:00
{{ else }}
2022-06-27 23:58:46 +03:00
{{ .root .locale .Tr "repo.branch.create_from" ( ShortSha .root .CommitID ) }}
2017-10-15 22:59:24 +03:00
{{ end }}
</div>
</a>
2021-11-16 21:18:25 +03:00
<form ref="newBranchForm" action=" {{ .root .RepoLink }} /branches/_new/ {{ .root .BranchNameSubURL }} " method="post">
2021-05-03 20:27:48 +03:00
{{ .root .CsrfTokenHtml }}
2017-10-15 22:59:24 +03:00
<input type="hidden" name="new_branch_name" v-model="searchTerm">
2021-02-28 22:57:45 +03:00
<input type="hidden" name="create_tag" v-model="createTag">
2017-10-15 22:59:24 +03:00
</form>
</div>
2015-12-09 09:11:41 +03:00
</div>
2017-10-15 22:59:24 +03:00
<div class="message" v-if="showNoResults">$ { noResults }</div>
2015-12-09 09:11:41 +03:00
</div>
</div>
</div>