MCPcopy Index your code
hub / github.com/MALSync/MALSync / messageHandler

Function messageHandler

src/background/messageHandler.ts:36–70  ·  view source on GitHub ↗
(
  message: sendMessageI,
  sender,
  sendResponse,
  environment: 'background' | 'content',
)

Source from the content-addressed store, hash-verified

34}
35
36function messageHandler(
37 message: sendMessageI,
38 sender,
39 sendResponse,
40 environment: 'background' | 'content',
41) {
42 switch (message.name) {
43 case 'xhr':
44 return xhrAction(message, sender, sendResponse, environment);
45 case 'videoTime':
46 return videoTimeAction(message, sender, sendResponse);
47 case 'content':
48 return contentAction(message, sender, sendResponse);
49 case 'videoTimeSet':
50 return videoTimeSetAction(message, sender, sendResponse);
51 case 'minimalWindow':
52 return minimalWindowAction(message, sender, sendResponse);
53 case 'emitter':
54 return emitterAction(message, sender, sendResponse);
55 case 'notification': {
56 sendNotification(message.options);
57 return undefined;
58 }
59 case 'database': {
60 databaseRequest(message.options.call, message.options.param).then(res => sendResponse(res));
61 return true;
62 }
63 case 'registerEmitter': {
64 if (sender.tab?.id) registerEmitterTab(sender.tab.id);
65 return undefined;
66 }
67 default:
68 throw new Error(`Unknown action: ${message.name}`);
69 }
70}
71
72function videoTimeAction(message: videoTime, sender, sendResponse) {
73 chrome.tabs.sendMessage(sender.tab.id, {

Callers 1

initMessageHandlerFunction · 0.85

Calls 9

sendNotificationFunction · 0.90
databaseRequestFunction · 0.90
xhrActionFunction · 0.85
videoTimeActionFunction · 0.85
contentActionFunction · 0.85
videoTimeSetActionFunction · 0.85
minimalWindowActionFunction · 0.85
emitterActionFunction · 0.85
registerEmitterTabFunction · 0.85

Tested by

no test coverage detected