MCPcopy Create free account
hub / github.com/ScrapeGraphAI/scrapecraft / handleWebSocketMessage

Function handleWebSocketMessage

frontend/src/store/websocketStore.ts:88–168  ·  view source on GitHub ↗
(data: any)

Source from the content-addressed store, hash-verified

86
87// Handle incoming WebSocket messages
88function handleWebSocketMessage(data: any) {
89 const { type } = data;
90
91 switch (type) {
92 case 'state_update':
93 // Update pipeline state
94 if (data.state) {
95 const pipelineStore = usePipelineStore.getState();
96 const currentPipeline = pipelineStore.currentPipeline;
97 if (currentPipeline) {
98 pipelineStore.updatePipeline(currentPipeline.id, data.state);
99 }
100 }
101 break;
102
103 case 'workflow_update':
104 // Update workflow state
105 if (data.workflow) {
106 const { useWorkflowStore } = require('./workflowStore');
107 const workflowStore = useWorkflowStore.getState();
108 workflowStore.setWorkflow(data.workflow);
109 }
110 break;
111
112 case 'workflow_state':
113 // Set initial workflow state
114 if (data.workflow) {
115 const { useWorkflowStore } = require('./workflowStore');
116 const workflowStore = useWorkflowStore.getState();
117 workflowStore.setWorkflow(data.workflow);
118 }
119 // Notify that state was received (even if null)
120 window.dispatchEvent(new CustomEvent('workflow-state-received'));
121 break;
122
123 case 'approval_request':
124 // Handle approval requests
125 if (data.approval) {
126 const { useWorkflowStore } = require('./workflowStore');
127 const workflowStore = useWorkflowStore.getState();
128 // Trigger UI to show approval dialog
129 window.dispatchEvent(new CustomEvent('approval-request', { detail: data.approval }));
130 }
131 break;
132
133 case 'execution_update':
134 // Handle execution updates
135 console.log('Execution update:', data);
136 break;
137
138 case 'error':
139 // Handle error messages
140 console.error('WebSocket error:', data.message);
141 // Notify components about the error
142 window.dispatchEvent(new CustomEvent('websocket-error', { detail: data }));
143 break;
144
145 case 'response':

Callers 1

websocketStore.tsFile · 0.85

Calls

no outgoing calls

Tested by

no test coverage detected