| 114 | } |
| 115 | |
| 116 | private async run() { |
| 117 | while (!this.abort.signal.aborted) { |
| 118 | const events = (await this.input.sdk.global.event({ |
| 119 | signal: this.abort.signal, |
| 120 | })) as GlobalEventStream |
| 121 | |
| 122 | for await (const event of events.stream) { |
| 123 | if (this.abort.signal.aborted) return |
| 124 | if (!event.payload) continue |
| 125 | await this.handle(event.payload).catch(() => {}) |
| 126 | } |
| 127 | if (!this.abort.signal.aborted) await new Promise((resolve) => setTimeout(resolve, 1000)) |
| 128 | } |
| 129 | } |
| 130 | |
| 131 | private async handlePartUpdated(event: EventMessagePartUpdated) { |
| 132 | const part = event.properties.part |