mirror of
				https://github.com/go-gitea/gitea.git
				synced 2025-10-29 10:57:44 +09:00 
			
		
		
		
	Adds types to various low-level modules. All changes are type-only, no runtime changes. `tsc` now reports 38 less errors. One problem was that `@types/sortablejs` does not accept promise return in its functions which triggered the linter, so I disabled the rules on those line.
		
			
				
	
	
		
			22 lines
		
	
	
		
			729 B
		
	
	
	
		
			TypeScript
		
	
	
	
	
	
			
		
		
	
	
			22 lines
		
	
	
		
			729 B
		
	
	
	
		
			TypeScript
		
	
	
	
	
	
| import type {SortableOptions} from 'sortablejs';
 | |
| 
 | |
| export async function createSortable(el, opts: {handle?: string} & SortableOptions = {}) {
 | |
|   const {Sortable} = await import(/* webpackChunkName: "sortablejs" */'sortablejs');
 | |
| 
 | |
|   return new Sortable(el, {
 | |
|     animation: 150,
 | |
|     ghostClass: 'card-ghost',
 | |
|     onChoose: (e) => {
 | |
|       const handle = opts.handle ? e.item.querySelector(opts.handle) : e.item;
 | |
|       handle.classList.add('tw-cursor-grabbing');
 | |
|       opts.onChoose?.(e);
 | |
|     },
 | |
|     onUnchoose: (e) => {
 | |
|       const handle = opts.handle ? e.item.querySelector(opts.handle) : e.item;
 | |
|       handle.classList.remove('tw-cursor-grabbing');
 | |
|       opts.onUnchoose?.(e);
 | |
|     },
 | |
|     ...opts,
 | |
|   } satisfies SortableOptions);
 | |
| }
 |