diff options
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 }) + } }) } |
