From 6ebfe693638c09f31db58b9d00928afd971b5fad Mon Sep 17 00:00:00 2001 From: Justin Halsall Date: Wed, 1 Apr 2026 12:00:00 +0800 Subject: [PATCH] Fix live mode (#310) * add failing test * paused -> live now possible --- src/replay/machine.ts | 4 ++++ test/replayer.test.ts | 12 ++++++++++++ 2 files changed, 16 insertions(+) diff --git a/src/replay/machine.ts b/src/replay/machine.ts index 4ba61822..d4635a04 100644 --- a/src/replay/machine.ts +++ b/src/replay/machine.ts @@ -114,6 +114,10 @@ export function createPlayerService( target: 'paused', actions: 'castEvent', }, + TO_LIVE: { + target: 'live', + actions: ['startLive'] + } }, }, live: { diff --git a/test/replayer.test.ts b/test/replayer.test.ts index 43904421..731bd9c4 100644 --- a/test/replayer.test.ts +++ b/test/replayer.test.ts @@ -131,4 +131,16 @@ describe('replayer', function (this: ISuite) { expect(currentTime).to.equal(2500); expect(currentState).to.equal('paused'); }); + + it('can stream events in live mode', async () => { + const status = await this.page.evaluate(` + const { Replayer } = rrweb; + const replayer = new Replayer(events, { + liveMode: true + }); + replayer.startLive(); + replayer.service.state.value; + `); + expect(status).to.equal('live'); + }) });