feat(realtime): expose heartbeat latency on heartbeat callback #1982
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
🔍 Description
Expose latency for heartbeats when we get a reply. Only available for status
okanderrorotherwiseundefined. It's backwards compatible because the second argument isnumber | undefinedso a callback with just one argument will stil work fine.I've also changed so that it matches the heartbeatRef when the message arrives. This avoids any potential race condition where the message for a previous heartbeat arrives later but we had already given up on that previous heartbeat.
What changed?
An extra
latencycan be passed to the heartbeat callback when heartbeat gets a reply from the server. RealtimeClient keeps track of the last time the heartbeat was sent and provide the diff.Why was this change needed?
A feature that can help people react to high latency users like people on slow mobile internet.
📸 Screenshots/Examples
🔄 Breaking changes
📋 Checklist
<type>(<scope>): <description>npx nx formatto ensure consistent code formatting📝 Additional notes