mirror of
				https://github.com/go-gitea/gitea
				synced 2025-10-31 11:28:24 +00:00 
			
		
		
		
	Update eslint to v9 (#35485)
Update eslint and all plugins. Many plugins still do not ship type definitions so I had to add stubs. Also, I had to put a few typescript error expectations because if some unknown error in the types. `eslint-plugin-no-jquery` is disabled because it's not compatible with eslint 9 flat config (https://github.com/wikimedia/eslint-plugin-no-jquery/issues/311).
This commit is contained in:
		| @@ -19,7 +19,7 @@ type EditorConfig = { | ||||
|   trim_trailing_whitespace?: boolean, | ||||
|   insert_final_newline?: boolean, | ||||
|   root?: boolean, | ||||
| } | ||||
| }; | ||||
|  | ||||
| const languagesByFilename: Record<string, string> = {}; | ||||
| const languagesByExt: Record<string, string> = {}; | ||||
|   | ||||
| @@ -112,7 +112,7 @@ function onHidePanelClick(el: HTMLElement, e: MouseEvent) { | ||||
| export type ElementWithAssignableProperties = { | ||||
|   getAttribute: (name: string) => string | null; | ||||
|   setAttribute: (name: string, value: string) => void; | ||||
| } & Record<string, any> | ||||
| } & Record<string, any>; | ||||
|  | ||||
| export function assignElementProperty(el: ElementWithAssignableProperties, kebabName: string, val: string) { | ||||
|   const camelizedName = camelize(kebabName); | ||||
|   | ||||
| @@ -9,7 +9,7 @@ type ConfirmModalOptions = { | ||||
|   header?: string; | ||||
|   content?: string; | ||||
|   confirmButtonColor?: 'primary' | 'red' | 'green' | 'blue'; | ||||
| } | ||||
| }; | ||||
|  | ||||
| export function createConfirmModal({header = '', content = '', confirmButtonColor = 'primary'}:ConfirmModalOptions = {}): HTMLElement { | ||||
|   const headerHtml = header ? html`<div class="header">${header}</div>` : ''; | ||||
|   | ||||
| @@ -4,7 +4,7 @@ type CropperOpts = { | ||||
|   container: HTMLElement, | ||||
|   imageSource: HTMLImageElement, | ||||
|   fileInput: HTMLInputElement, | ||||
| } | ||||
| }; | ||||
|  | ||||
| async function initCompCropper({container, fileInput, imageSource}: CropperOpts) { | ||||
|   const {default: Cropper} = await import(/* webpackChunkName: "cropperjs" */'cropperjs'); | ||||
|   | ||||
| @@ -169,7 +169,7 @@ test('EditorMarkdown', () => { | ||||
|   type ValueWithCursor = string | { | ||||
|     value: string; | ||||
|     pos: number; | ||||
|   } | ||||
|   }; | ||||
|   const testInput = (input: ValueWithCursor, result: ValueWithCursor) => { | ||||
|     const intputValue = typeof input === 'string' ? input : input.value; | ||||
|     const inputPos = typeof input === 'string' ? intputValue.length : input.pos; | ||||
|   | ||||
| @@ -18,7 +18,7 @@ type TextareaValueSelection = { | ||||
|   value: string; | ||||
|   selStart: number; | ||||
|   selEnd: number; | ||||
| } | ||||
| }; | ||||
|  | ||||
| function handleIndentSelection(textarea: HTMLTextAreaElement, e: KeyboardEvent) { | ||||
|   const selStart = textarea.selectionStart; | ||||
| @@ -65,14 +65,14 @@ function handleIndentSelection(textarea: HTMLTextAreaElement, e: KeyboardEvent) | ||||
| type MarkdownHandleIndentionResult = { | ||||
|   handled: boolean; | ||||
|   valueSelection?: TextareaValueSelection; | ||||
| } | ||||
| }; | ||||
|  | ||||
| type TextLinesBuffer = { | ||||
|   lines: string[]; | ||||
|   lengthBeforePosLine: number; | ||||
|   posLineIndex: number; | ||||
|   inlinePos: number | ||||
| } | ||||
| }; | ||||
|  | ||||
| export function textareaSplitLines(value: string, pos: number): TextLinesBuffer { | ||||
|   const lines = value.split('\n'); | ||||
|   | ||||
| @@ -64,7 +64,7 @@ function initRepoIssueLabelFilter(elDropdown: HTMLElement) { | ||||
|     selectedLabelIds.add(`${Math.abs(parseInt(id))}`); // "labels" contains negative ids, which are excluded | ||||
|   } | ||||
|  | ||||
|   const excludeLabel = (e: MouseEvent|KeyboardEvent, item: Element) => { | ||||
|   const excludeLabel = (e: MouseEvent | KeyboardEvent, item: Element) => { | ||||
|     e.preventDefault(); | ||||
|     e.stopPropagation(); | ||||
|     const labelId = item.getAttribute('data-label-id'); | ||||
|   | ||||
		Reference in New Issue
	
	Block a user