mirror of
https://github.com/hensm/fx_cast.git
synced 2026-06-13 02:49:58 +00:00
Add additional type info to messageRouter
This commit is contained in:
@@ -1,6 +1,15 @@
|
|||||||
"use strict";
|
"use strict";
|
||||||
|
|
||||||
type SenderCallback = (message: any, details: any) => void;
|
import { Message } from "../types";
|
||||||
|
|
||||||
|
|
||||||
|
interface Details {
|
||||||
|
tabId: number
|
||||||
|
, frameId: number
|
||||||
|
}
|
||||||
|
|
||||||
|
type SenderCallback = (message: Message, details: Details) => void;
|
||||||
|
|
||||||
|
|
||||||
const routeMap = new Map<string, SenderCallback>();
|
const routeMap = new Map<string, SenderCallback>();
|
||||||
|
|
||||||
@@ -12,7 +21,7 @@ function deregister (routeName: string) {
|
|||||||
routeMap.delete(routeName);
|
routeMap.delete(routeName);
|
||||||
}
|
}
|
||||||
|
|
||||||
function handleMessage (message: any, details?: any) {
|
function handleMessage (message: Message, details?: Details) {
|
||||||
const destination = message.subject.split(":")[0];
|
const destination = message.subject.split(":")[0];
|
||||||
if (routeMap.has(destination)) {
|
if (routeMap.has(destination)) {
|
||||||
routeMap.get(destination)(message, details);
|
routeMap.get(destination)(message, details);
|
||||||
|
|||||||
@@ -529,17 +529,21 @@ function onConnectPopup (port: browser.runtime.Port) {
|
|||||||
|
|
||||||
browser.runtime.onConnect.addListener(port => {
|
browser.runtime.onConnect.addListener(port => {
|
||||||
switch (port.name) {
|
switch (port.name) {
|
||||||
case "shim": onConnectShim(port); break;
|
case "shim":
|
||||||
case "popup": onConnectPopup(port); break;
|
onConnectShim(port);
|
||||||
|
break;
|
||||||
|
case "popup":
|
||||||
|
onConnectPopup(port);
|
||||||
|
break;
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
|
||||||
|
|
||||||
messageRouter.register("mirrorCast", (message: object) => {
|
messageRouter.register("mirrorCast", message => {
|
||||||
browser.tabs.sendMessage(mirrorCastTabId, message
|
browser.tabs.sendMessage(mirrorCastTabId, message
|
||||||
, { frameId: mirrorCastFrameId });
|
, { frameId: mirrorCastFrameId });
|
||||||
});
|
});
|
||||||
messageRouter.register("mediaCast", (message: object) => {
|
messageRouter.register("mediaCast", message => {
|
||||||
browser.tabs.sendMessage(mediaCastTabId, message
|
browser.tabs.sendMessage(mediaCastTabId, message
|
||||||
, { frameId: mediaCastFrameId });
|
, { frameId: mediaCastFrameId });
|
||||||
});
|
});
|
||||||
|
|||||||
Reference in New Issue
Block a user