MCPcopy Index your code
hub / github.com/wavetermdev/waveterm / initGlobalWaveEventSubs

Function initGlobalWaveEventSubs

frontend/app/store/global.ts:55–101  ·  view source on GitHub ↗
(initOpts: WaveInitOpts)

Source from the content-addressed store, hash-verified

53}
54
55function initGlobalWaveEventSubs(initOpts: WaveInitOpts) {
56 waveEventSubscribeSingle({
57 eventType: "waveobj:update",
58 handler: (event) => {
59 // console.log("waveobj:update wave event handler", event);
60 WOS.updateWaveObject(event.data);
61 },
62 });
63 waveEventSubscribeSingle({
64 eventType: "config",
65 handler: (event) => {
66 // console.log("config wave event handler", event);
67 globalStore.set(atoms.fullConfigAtom, event.data.fullconfig);
68 },
69 });
70 waveEventSubscribeSingle({
71 eventType: "waveai:modeconfig",
72 handler: (event) => {
73 globalStore.set(atoms.waveaiModeConfigAtom, event.data.configs);
74 },
75 });
76 waveEventSubscribeSingle({
77 eventType: "userinput",
78 handler: (event) => {
79 // console.log("userinput event handler", event);
80 modalsModel.pushModal("UserInputModal", { ...event.data });
81 },
82 scope: initOpts.windowId,
83 });
84 waveEventSubscribeSingle({
85 eventType: "blockfile",
86 handler: (event) => {
87 // console.log("blockfile event update", event);
88 const fileSubject = getFileSubject(event.data.zoneid, event.data.filename);
89 if (fileSubject != null) {
90 fileSubject.next(event.data);
91 }
92 },
93 });
94 waveEventSubscribeSingle({
95 eventType: "waveai:ratelimit",
96 handler: (event) => {
97 globalStore.set(atoms.waveAIRateLimitInfoAtom, event.data);
98 },
99 });
100 setupBadgesSubscription();
101}
102
103const blockCache = new Map<string, Map<string, any>>();
104

Callers 1

initWaveFunction · 0.90

Calls 4

waveEventSubscribeSingleFunction · 0.90
getFileSubjectFunction · 0.90
setupBadgesSubscriptionFunction · 0.90
setMethod · 0.80

Tested by

no test coverage detected