diff --git a/.changeset/little-buttons-sip.md b/.changeset/little-buttons-sip.md new file mode 100644 index 00000000..7ec2d898 --- /dev/null +++ b/.changeset/little-buttons-sip.md @@ -0,0 +1,5 @@ +--- +'@tanstack/devtools-event-bus': patch +--- + +fix issue with broadcast channel not emitting functions properly and failing diff --git a/packages/event-bus/src/client/client.ts b/packages/event-bus/src/client/client.ts index 4d5123b0..55495786 100644 --- a/packages/event-bus/src/client/client.ts +++ b/packages/event-bus/src/client/client.ts @@ -55,7 +55,7 @@ export class ClientEventBus { this.#connectToServerBus = connectToServerBus this.#eventTarget = this.getGlobalTarget() this.#broadcastChannel.onmessage = (e) => { - this.emitToClients(e.data, true) + this.emitToClients(JSON.parse(e.data), true) } this.debugLog('Initializing client event bus') } @@ -74,7 +74,7 @@ export class ClientEventBus { // We only emit the events if they didn't come from the broadcast channel // otherwise it would infinitely send events between if (!fromBroadcastChannel) { - this.#broadcastChannel?.postMessage(event) + this.#broadcastChannel?.postMessage(JSON.stringify(event)) } this.debugLog('Emitting event to global client listeners', event) this.#eventTarget.dispatchEvent(globalEvent)