fix(rpc): separate public calls + better pending handlers

This commit is contained in:
2026-09-28 02:05:40 +01:00
parent 6247b7d781
commit c085fd2c8f
5 changed files with 22 additions and 8 deletions
+9 -2
View File
@@ -54,11 +54,18 @@ export class RPCInstanceClient extends RPCInstanceBase {
const payload = this.accept(payloadRaw)
if (!payload) return
if (payload.type === 'event') {
if (payload.type === 'event' || payload.type === 'broadcast') {
if (payload.calledTo === 'client') {
const response = await this.dispatch(this._emitterServer, payload)
emitNet(RPCEvents.LISTENER_CLIENT, stringify(response))
if (payload.type === 'event') {
emitNet(RPCEvents.LISTENER_CLIENT, stringify(response))
} else if (response.error) {
// nobody waits for a broadcast, so its failures only show up here
this.log(
`broadcast ${payload.event} failed: ${response.error.message}`,
)
}
}
if (payload.calledTo === 'webview') {
this._sendWebMessage({