diff options
| author | Henry Jameson <me@hjkos.com> | 2023-11-16 20:41:41 +0200 |
|---|---|---|
| committer | Henry Jameson <me@hjkos.com> | 2023-11-16 20:41:41 +0200 |
| commit | a17defc5abfe60b6aa0dc3275dac2cbec507472a (patch) | |
| tree | 3f32e21fbe024c3dadbfefcb295e43d45d74784c /src/services/sw/sw.js | |
| parent | 6ed2cb8f436bca1e1cd4c40a0a2df0e96fb5d149 (diff) | |
handle desktop notifications clicks
Diffstat (limited to 'src/services/sw/sw.js')
| -rw-r--r-- | src/services/sw/sw.js | 10 |
1 files changed, 8 insertions, 2 deletions
diff --git a/src/services/sw/sw.js b/src/services/sw/sw.js index d4ae8f4f..e28f9168 100644 --- a/src/services/sw/sw.js +++ b/src/services/sw/sw.js @@ -82,12 +82,18 @@ function sendSubscriptionToBackEnd (subscription, token, notificationVisibility) return responseData }) } -export async function initServiceWorker () { +export async function initServiceWorker (store) { if (!isSWSupported()) return await getOrCreateServiceWorker() navigator.serviceWorker.addEventListener('message', (event) => { + const { dispatch } = store console.log('SW MESSAGE', event) - // TODO actually act upon click (open drawer on mobile, open chat/thread etc) + const { type, ...rest } = event + + switch (type) { + case 'notificationClicked': + dispatch('notificationClicked', { id: rest.id }) + } }) } |
