mirror of
				https://github.com/go-gitea/gitea.git
				synced 2025-10-31 02:46:04 +01:00 
			
		
		
		
	Avoid duplicate JS error messages on UI (#28873)
Gitea treat JS errors seriously, so sometimes the JS errors caused by 3rdparty code (eg: browser extensions) would also be reported on Gitea UI: TypeError: WeakMap key undefined (caused by extension DarkReader's bug) #28861 To avoid fill the user's screen with a lot of error messages, this PR merges the same error messages into one, like this: ```js <div class="page-content"> <div class="... js-global-error" data-global-error-msg-compact="testmsg1" data-global-error-msg-count="2">test msg 1 (2)</div> <div class="... js-global-error" data-global-error-msg-compact="testmsg2" data-global-error-msg-count="1">test msg 2</div> </div> ```
This commit is contained in:
		
							
								
								
									
										12
									
								
								web_src/js/bootstrap.test.js
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										12
									
								
								web_src/js/bootstrap.test.js
									
									
									
									
										vendored
									
									
										Normal file
									
								
							| @@ -0,0 +1,12 @@ | ||||
| import {showGlobalErrorMessage} from './bootstrap.js'; | ||||
|  | ||||
| test('showGlobalErrorMessage', () => { | ||||
|   document.body.innerHTML = '<div class="page-content"></div>'; | ||||
|   showGlobalErrorMessage('test msg 1'); | ||||
|   showGlobalErrorMessage('test msg 2'); | ||||
|   showGlobalErrorMessage('test msg 1'); // duplicated | ||||
|  | ||||
|   expect(document.body.innerHTML).toContain('>test msg 1 (2)<'); | ||||
|   expect(document.body.innerHTML).toContain('>test msg 2<'); | ||||
|   expect(document.querySelectorAll('.js-global-error').length).toEqual(2); | ||||
| }); | ||||
		Reference in New Issue
	
	Block a user