fix(platform-browser): take serialization into account for empty check of transfer state #47710
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.
Transfer states with no keys and only serialization callbacks were previously treated as empty which lead to no script getting embedded to transfer the state from the server to the client.
PR Checklist
Please check if your PR fulfills the following requirements:
I am not sure if there is anything in the docs that needs to be updated.
PR Type
What kind of change does this PR introduce?
What is the current behavior?
When no key is present in the transfer state and serialization callbacks are registered, these callbacks are never called as the state is treated as empty and toJson is therefore not called on the server side.
Issue Number: N/A
What is the new behavior?
Transfer states without keys and serialization callbacks are now treated as non empty which allows them to be send from the server to the client.
Does this PR introduce a breaking change?
Considering the current behaviour being not very logical and probably not intended I would not consider this change a breaking change.