Merge pull request #3663 from thelounge/xpaw/cyclical-dep

Remove cyclical dependency in router<->webpush
This commit is contained in:
Pavel Djundik 2020-01-04 15:20:23 +02:00 committed by GitHub
commit 00cdb6e808
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
2 changed files with 14 additions and 15 deletions

View file

@ -142,4 +142,18 @@ function switchToChannel(channel) {
return navigate("RoutedChat", {id: channel.id});
}
if ("serviceWorker" in navigator) {
navigator.serviceWorker.addEventListener("message", (event) => {
if (event.data && event.data.type === "open") {
const id = parseInt(event.data.channel.substr(5), 10); // remove "chan-" prefix
const channelTarget = store.getters.findChannel(id);
if (channelTarget) {
switchToChannel(channelTarget.channel);
}
}
});
}
export {initialize, router, navigate, switchToChannel};

View file

@ -2,24 +2,9 @@
import socket from "./socket";
import store from "./store";
import {switchToChannel} from "./router";
export default {togglePushSubscription};
if ("serviceWorker" in navigator) {
navigator.serviceWorker.addEventListener("message", (event) => {
if (event.data && event.data.type === "open") {
const id = parseInt(event.data.channel.substr(5), 10); // remove "chan-" prefix
const channelTarget = store.getters.findChannel(id);
if (channelTarget) {
switchToChannel(channelTarget.channel);
}
}
});
}
socket.once("push:issubscribed", function(hasSubscriptionOnServer) {
if (!isAllowedServiceWorkersHost()) {
store.commit("pushNotificationState", "nohttps");