mirror of
				https://github.com/go-gitea/gitea.git
				synced 2025-11-04 12:51:03 +00:00 
			
		
		
		
	feat: Add sorting by exclusive labels (issue priority) (#33206)
Fix #2616 This PR adds a new sort option for exclusive labels. For exclusive labels, a new property is exposed called "order", while in the UI options are populated automatically in the `Sort` column (see screenshot below) for each exclusive label scope. --------- Co-authored-by: wxiaoguang <wxiaoguang@gmail.com>
This commit is contained in:
		@@ -18,6 +18,8 @@ export function initCompLabelEdit(pageSelector: string) {
 | 
			
		||||
  const elExclusiveField = elModal.querySelector('.label-exclusive-input-field');
 | 
			
		||||
  const elExclusiveInput = elModal.querySelector<HTMLInputElement>('.label-exclusive-input');
 | 
			
		||||
  const elExclusiveWarning = elModal.querySelector('.label-exclusive-warning');
 | 
			
		||||
  const elExclusiveOrderField = elModal.querySelector<HTMLInputElement>('.label-exclusive-order-input-field');
 | 
			
		||||
  const elExclusiveOrderInput = elModal.querySelector<HTMLInputElement>('.label-exclusive-order-input');
 | 
			
		||||
  const elIsArchivedField = elModal.querySelector('.label-is-archived-input-field');
 | 
			
		||||
  const elIsArchivedInput = elModal.querySelector<HTMLInputElement>('.label-is-archived-input');
 | 
			
		||||
  const elDescInput = elModal.querySelector<HTMLInputElement>('.label-desc-input');
 | 
			
		||||
@@ -29,6 +31,13 @@ export function initCompLabelEdit(pageSelector: string) {
 | 
			
		||||
    const showExclusiveWarning = hasScope && elExclusiveInput.checked && elModal.hasAttribute('data-need-warn-exclusive');
 | 
			
		||||
    toggleElem(elExclusiveWarning, showExclusiveWarning);
 | 
			
		||||
    if (!hasScope) elExclusiveInput.checked = false;
 | 
			
		||||
    toggleElem(elExclusiveOrderField, elExclusiveInput.checked);
 | 
			
		||||
 | 
			
		||||
    if (parseInt(elExclusiveOrderInput.value) <= 0) {
 | 
			
		||||
      elExclusiveOrderInput.style.color = 'var(--color-placeholder-text) !important';
 | 
			
		||||
    } else {
 | 
			
		||||
      elExclusiveOrderInput.style.color = null;
 | 
			
		||||
    }
 | 
			
		||||
  };
 | 
			
		||||
 | 
			
		||||
  const showLabelEditModal = (btn:HTMLElement) => {
 | 
			
		||||
@@ -36,6 +45,7 @@ export function initCompLabelEdit(pageSelector: string) {
 | 
			
		||||
    const form = elModal.querySelector<HTMLFormElement>('form');
 | 
			
		||||
    elLabelId.value = btn.getAttribute('data-label-id') || '';
 | 
			
		||||
    elNameInput.value = btn.getAttribute('data-label-name') || '';
 | 
			
		||||
    elExclusiveOrderInput.value = btn.getAttribute('data-label-exclusive-order') || '0';
 | 
			
		||||
    elIsArchivedInput.checked = btn.getAttribute('data-label-is-archived') === 'true';
 | 
			
		||||
    elExclusiveInput.checked = btn.getAttribute('data-label-exclusive') === 'true';
 | 
			
		||||
    elDescInput.value = btn.getAttribute('data-label-description') || '';
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user