pinafore/src/routes/_store/observers/notificationPermissionObservers.js
Nolan Lawson 14a618f374
perf: lazy-load logged-in observers, fix circular dependencies (#823)
* perf: lazy-load logged-in observers, fix circular dependencies

* I guess async deps don't count as circular deps
2018-12-16 10:22:34 -08:00

15 lines
440 B
JavaScript

import { store } from '../store'
export function notificationPermissionObservers () {
if (!process.browser || !navigator.permissions || !navigator.permissions.query) {
return
}
navigator.permissions.query({ name: 'notifications' }).then(permission => {
store.set({ notificationPermission: permission.state })
permission.onchange = event => {
store.set({ notificationPermission: event.target.state })
}
})
}