mirror of
				https://github.com/go-gitea/gitea.git
				synced 2025-10-28 08:07:48 -04:00 
			
		
		
		
	Provide a cropping tool on the avatar editing page, allowing users to select the cropping area themselves. This way, users can decide the displayed area of the image, rather than us deciding for them. --------- Co-authored-by: silverwind <me@silverwind.io> Co-authored-by: wxiaoguang <wxiaoguang@gmail.com> Co-authored-by: delvh <dev.lh@web.de> Co-authored-by: Giteabot <teabot@gitea.io>
		
			
				
	
	
		
			33 lines
		
	
	
		
			1.0 KiB
		
	
	
	
		
			TypeScript
		
	
	
	
	
	
			
		
		
	
	
			33 lines
		
	
	
		
			1.0 KiB
		
	
	
	
		
			TypeScript
		
	
	
	
	
	
| import {createSortable} from '../modules/sortable.ts';
 | |
| import {POST} from '../modules/fetch.ts';
 | |
| import {showErrorToast} from '../modules/toast.ts';
 | |
| import {queryElemChildren} from '../utils/dom.ts';
 | |
| 
 | |
| export function initRepoSettingsBranchesDrag() {
 | |
|   const protectedBranchesList = document.querySelector('#protected-branches-list');
 | |
|   if (!protectedBranchesList) return;
 | |
| 
 | |
|   createSortable(protectedBranchesList, {
 | |
|     handle: '.drag-handle',
 | |
|     animation: 150,
 | |
| 
 | |
|     onEnd: () => {
 | |
|       (async () => {
 | |
|         const itemElems = queryElemChildren(protectedBranchesList, '.item[data-id]');
 | |
|         const itemIds = Array.from(itemElems, (el) => parseInt(el.getAttribute('data-id')));
 | |
| 
 | |
|         try {
 | |
|           await POST(protectedBranchesList.getAttribute('data-update-priority-url'), {
 | |
|             data: {
 | |
|               ids: itemIds,
 | |
|             },
 | |
|           });
 | |
|         } catch (err) {
 | |
|           const errorMessage = String(err);
 | |
|           showErrorToast(`Failed to update branch protection rule priority:, error: ${errorMessage}`);
 | |
|         }
 | |
|       })();
 | |
|     },
 | |
|   });
 | |
| }
 |