Increase window location check specificity for Expo 53+ #216
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.
Fixes #206, #214
Expo runtime introduced a default polyfill to metro runtime, making
window.location
no longer undefined. This breaks some of our client checks for the RN environment.This fix makes checks more specific and looks for the actual property we're interacting with to be undefined.
#207 addresses this by adding an explicit prop, which definitely works, but I'd like to avoid adding more props. The library should just handle this for users.
A patch in #206 usednavigator.product
as a reference, which does appear to be reliably set toReactNative
(source). This is an option for the future if more changes in platforms make checking location object properties a dubious practice.Not an option, turns out
navigator.product
is deprecated 🙃