mirror of
				https://github.com/go-gitea/gitea
				synced 2025-11-04 05:18:25 +00:00 
			
		
		
		
	Hide target selector if tag exists when creating new release (#23171)
Close #22649. |status|screenshot| |-|-| |empty tag name|<img src="https://user-images.githubusercontent.com/15528715/221490165-fd3abd2e-6dc5-4562-bece-d1d6a305479e.png" width="300px"/>| |new tag|<img src="https://user-images.githubusercontent.com/15528715/221490450-49b2a48e-b206-49f4-bd79-34b1ea64156f.png" width="300px"/>| |existing tag|<img src="https://user-images.githubusercontent.com/15528715/221490301-4d1879dd-4947-4abc-9b9a-e77be1806981.png" width="300px"/>|
This commit is contained in:
		@@ -3,7 +3,7 @@ import {attachTribute} from './tribute.js';
 | 
			
		||||
import {initCompMarkupContentPreviewTab} from './comp/MarkupContentPreview.js';
 | 
			
		||||
import {initEasyMDEImagePaste} from './comp/ImagePaste.js';
 | 
			
		||||
import {createCommentEasyMDE} from './comp/EasyMDE.js';
 | 
			
		||||
import {hideElem} from '../utils/dom.js';
 | 
			
		||||
import {hideElem, showElem} from '../utils/dom.js';
 | 
			
		||||
 | 
			
		||||
export function initRepoRelease() {
 | 
			
		||||
  $(document).on('click', '.remove-rel-attach', function() {
 | 
			
		||||
@@ -14,8 +14,43 @@ export function initRepoRelease() {
 | 
			
		||||
  });
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
export function initRepoReleaseNew() {
 | 
			
		||||
  const $repoReleaseNew = $('.repository.new.release');
 | 
			
		||||
  if (!$repoReleaseNew.length) return;
 | 
			
		||||
 | 
			
		||||
export function initRepoReleaseEditor() {
 | 
			
		||||
  initTagNameEditor();
 | 
			
		||||
  initRepoReleaseEditor();
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
function initTagNameEditor() {
 | 
			
		||||
  const el = document.getElementById('tag-name-editor');
 | 
			
		||||
  if (!el) return;
 | 
			
		||||
 | 
			
		||||
  const existingTags = JSON.parse(el.getAttribute('data-existing-tags'));
 | 
			
		||||
  if (!Array.isArray(existingTags)) return;
 | 
			
		||||
 | 
			
		||||
  const defaultTagHelperText = el.getAttribute('data-tag-helper');
 | 
			
		||||
  const newTagHelperText = el.getAttribute('data-tag-helper-new');
 | 
			
		||||
  const existingTagHelperText = el.getAttribute('data-tag-helper-existing');
 | 
			
		||||
 | 
			
		||||
  document.getElementById('tag-name').addEventListener('keyup', (e) => {
 | 
			
		||||
    const value = e.target.value;
 | 
			
		||||
    if (existingTags.includes(value)) {
 | 
			
		||||
      // If the tag already exists, hide the target branch selector.
 | 
			
		||||
      hideElem('#tag-target-selector');
 | 
			
		||||
      document.getElementById('tag-helper').innerText = existingTagHelperText;
 | 
			
		||||
    } else {
 | 
			
		||||
      showElem('#tag-target-selector');
 | 
			
		||||
      if (value) {
 | 
			
		||||
        document.getElementById('tag-helper').innerText = newTagHelperText;
 | 
			
		||||
      } else {
 | 
			
		||||
        document.getElementById('tag-helper').innerText = defaultTagHelperText;
 | 
			
		||||
      }
 | 
			
		||||
    }
 | 
			
		||||
  });
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
function initRepoReleaseEditor() {
 | 
			
		||||
  const $editor = $('.repository.new.release .content-editor');
 | 
			
		||||
  if ($editor.length === 0) {
 | 
			
		||||
    return;
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user