MCPcopy Index your code
hub / github.com/ChatGPTBox-dev/chatGPTBox / postMessage

Function postMessage

src/components/ConversationCard/index.jsx:246–288  ·  view source on GitHub ↗
({ session, stop })

Source from the content-addressed store, hash-verified

244 * @param {boolean|undefined} stop
245 */
246 const postMessage = async ({ session, stop }) => {
247 if (useForegroundFetch) {
248 foregroundMessageListeners.current.forEach((listener) => listener({ session, stop }))
249 if (session) {
250 const fakePort = {
251 postMessage: (msg) => {
252 portMessageListener(msg)
253 },
254 onMessage: {
255 addListener: (listener) => {
256 foregroundMessageListeners.current.push(listener)
257 },
258 removeListener: (listener) => {
259 foregroundMessageListeners.current.splice(
260 foregroundMessageListeners.current.indexOf(listener),
261 1,
262 )
263 },
264 },
265 onDisconnect: {
266 addListener: () => {},
267 removeListener: () => {},
268 },
269 }
270 try {
271 const bingToken = (await getUserConfig()).bingAccessToken
272 if (isUsingModelName('bingFreeSydney', session))
273 await generateAnswersWithBingWebApi(
274 fakePort,
275 session.question,
276 session,
277 bingToken,
278 true,
279 )
280 else await generateAnswersWithBingWebApi(fakePort, session.question, session, bingToken)
281 } catch (err) {
282 handlePortError(session, fakePort, err)
283 }
284 }
285 } else {
286 port.postMessage({ session, stop })
287 }
288 }
289
290 useEffect(() => {
291 const portListener = () => {

Callers 3

ConversationCardFunction · 0.70
getRetryFnFunction · 0.70
handleKeyDownOrClickFunction · 0.50

Calls 6

getUserConfigFunction · 0.90
isUsingModelNameFunction · 0.90
handlePortErrorFunction · 0.90
portMessageListenerFunction · 0.85
listenerFunction · 0.50

Tested by

no test coverage detected