diff options
author | silverwind <me@silverwind.io> | 2020-12-27 15:24:27 +0100 |
---|---|---|
committer | GitHub <noreply@github.com> | 2020-12-27 15:24:27 +0100 |
commit | 50a2dd52baed6a998cca332761c3e9eccf0157a9 (patch) | |
tree | 4c5a2ca412a208ba510bcbff14ce2731c79dbb2e /web_src/js/features | |
parent | fe403725f45e4515ce89d6a4dfd01e9698d38ad9 (diff) | |
download | gitea-50a2dd52baed6a998cca332761c3e9eccf0157a9.tar.gz gitea-50a2dd52baed6a998cca332761c3e9eccf0157a9.zip |
Update JS dependencies and webpack (#14118)
* Update JS dependencies
- Update all JS dependencies
- Adapt webpack config for version 5
- Update to Less 4.0, adapting usage of removed mixin syntax
- Enable new ESLint rules and fix discovered issues
* update license-webpack-plugin to fix missing licenses
* update license-webpack-plugin once more to get webpack into the license output
* switch to license-checker-webpack-plugin again for performance
* update deps again
Co-authored-by: Lauris BH <lauris@nix.lv>
Diffstat (limited to 'web_src/js/features')
-rw-r--r-- | web_src/js/features/notification.js | 72 |
1 files changed, 35 insertions, 37 deletions
diff --git a/web_src/js/features/notification.js b/web_src/js/features/notification.js index b0cc1cda44..a0793d2286 100644 --- a/web_src/js/features/notification.js +++ b/web_src/js/features/notification.js @@ -43,53 +43,51 @@ export async function initNotificationCount() { return; } - if (NotificationSettings.EventSourceUpdateTime > 0 && !!window.EventSource) { + if (NotificationSettings.EventSourceUpdateTime > 0 && !!window.EventSource && window.SharedWorker) { // Try to connect to the event source via the shared worker first - if (window.SharedWorker) { - const worker = new SharedWorker(`${__webpack_public_path__}js/eventsource.sharedworker.js`, 'notification-worker'); - worker.addEventListener('error', (event) => { + const worker = new SharedWorker(`${__webpack_public_path__}js/eventsource.sharedworker.js`, 'notification-worker'); + worker.addEventListener('error', (event) => { + console.error(event); + }); + worker.port.onmessageerror = () => { + console.error('Unable to deserialize message'); + }; + worker.port.postMessage({ + type: 'start', + url: `${window.location.origin}${AppSubUrl}/user/events`, + }); + worker.port.addEventListener('message', (event) => { + if (!event.data || !event.data.type) { console.error(event); - }); - worker.port.onmessageerror = () => { - console.error('Unable to deserialize message'); - }; - worker.port.postMessage({ - type: 'start', - url: `${window.location.origin}${AppSubUrl}/user/events`, - }); - worker.port.addEventListener('message', (event) => { - if (!event.data || !event.data.type) { - console.error(event); + return; + } + if (event.data.type === 'notification-count') { + receiveUpdateCount(event.data); + } else if (event.data.type === 'error') { + console.error(event.data); + } else if (event.data.type === 'logout') { + if (event.data !== 'here') { return; } - if (event.data.type === 'notification-count') { - receiveUpdateCount(event.data); - } else if (event.data.type === 'error') { - console.error(event.data); - } else if (event.data.type === 'logout') { - if (event.data !== 'here') { - return; - } - worker.port.postMessage({ - type: 'close', - }); - worker.port.close(); - window.location.href = AppSubUrl; - } - }); - worker.port.addEventListener('error', (e) => { - console.error(e); - }); - worker.port.start(); - window.addEventListener('beforeunload', () => { worker.port.postMessage({ type: 'close', }); worker.port.close(); + window.location.href = AppSubUrl; + } + }); + worker.port.addEventListener('error', (e) => { + console.error(e); + }); + worker.port.start(); + window.addEventListener('beforeunload', () => { + worker.port.postMessage({ + type: 'close', }); + worker.port.close(); + }); - return; - } + return; } if (NotificationSettings.MinTimeout <= 0) { |