MCPcopy Index your code
hub / github.com/scriptscat/scriptcat / getEventFlag

Function getEventFlag

packages/message/common.ts:60–80  ·  view source on GitHub ↗
(
  messageFlag: string,
  onReady: (eventFlag: string, extensionEnv: TExtensionEnv | undefined) => void
)

Source from the content-addressed store, hash-verified

58
59// 获取协商后的 eventFlag
60export function getEventFlag(
61 messageFlag: string,
62 onReady: (eventFlag: string, extensionEnv: TExtensionEnv | undefined) => void
63) {
64 let eventFlag = "";
65 let extensionEnv: TExtensionEnv | undefined = undefined;
66 const fnEventFlagListener: EventListener = (ev: Event) => {
67 if (!(ev instanceof CustomEvent)) return;
68 if (ev.detail?.action != "broadcastEventFlag") return;
69 eventFlag = ev.detail.eventFlag;
70 extensionEnv = ev.detail.extensionEnv;
71 pageRemoveEventListener(messageFlag, fnEventFlagListener);
72 // 告知对方已收到 eventFlag
73 pageDispatchCustomEvent(messageFlag, { action: "receivedEventFlag" });
74 onReady(eventFlag, extensionEnv);
75 };
76
77 // 设置事件,然后对 scripting 请求 flag
78 pageAddEventListener(messageFlag, fnEventFlagListener);
79 pageDispatchCustomEvent(messageFlag, { action: "requestEventFlag" });
80}
81
82export const createMouseEvent =
83 process.env.VI_TESTING === "true"

Callers 2

content.tsFile · 0.90
inject.tsFile · 0.90

Calls 1

pageDispatchCustomEventFunction · 0.85

Tested by

no test coverage detected