1
0
Fork 0
forked from forgejo/forgejo

Avoid duplicate JS error messages on UI (#28873) (#28881)

Backport #28873 by wxiaoguang

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.

Co-authored-by: wxiaoguang <wxiaoguang@gmail.com>
(cherry picked from commit b7e32b2382)
This commit is contained in:
Giteabot 2024-01-21 23:40:26 +08:00 committed by Earl Warren
parent 7db542a029
commit 6aa5554161
No known key found for this signature in database
GPG key ID: 0579CB2928A78A00
3 changed files with 29 additions and 4 deletions

12
web_src/js/bootstrap.test.js vendored Normal file
View 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);
});