MCPcopy Create free account
hub / github.com/MCSManager/MCSManager / iframeEventDispatch

Function iframeEventDispatch

frontend/src/components/IframeBox/config.ts:49–68  ·  view source on GitHub ↗
(event: Partial<IframeEvent>)

Source from the content-addressed store, hash-verified

47}
48
49export async function iframeEventDispatch(event: Partial<IframeEvent>) {
50 const routerHandler = iframeRouters[String(event.source)];
51 if (event.id && typeof routerHandler === "function" && !globalReqIdMap.has(String(event.id))) {
52 console.warn("iframeEventDispatch(): Receive iframe event:", event);
53 globalReqIdMap.set(String(event.id), true);
54 setTimeout(() => {
55 globalReqIdMap.delete(String(event.id));
56 }, 1000 * 10);
57 try {
58 const result = await routerHandler(event.data);
59 console.warn("iframeEventDispatch(): Send iframe event:", event, result);
60 globalIframeList.forEach((iframe) => sendIframeMsg(iframe, event, result));
61 } catch (error: any) {
62 console.error("Iframe router error:", error);
63 globalIframeList.forEach((iframe) =>
64 sendIframeMsg(iframe, event, error instanceof Error ? error : new Error(String(error)))
65 );
66 }
67 }
68}
69
70export function sendIframeMsg(
71 iframe: Ref<HTMLIFrameElement | null>,

Callers 1

handlerFunction · 0.85

Calls 4

sendIframeMsgFunction · 0.85
errorMethod · 0.80
deleteMethod · 0.65
setMethod · 0.45

Tested by

no test coverage detected