fix: conditionally apply web-only cursor style to avoid TypeScript error #2420
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.
🧠 Context
This component previously used:
to support cursor styling on the web platform. However, this still triggers a TypeScript error when using
"jsx": "react-native"
or when TypeScript re-validatesstyle
againstViewStyle
— because the inferred object type includescursor
, which isn't allowed on native.Even with
"skipLibCheck": true
, the error shows up at usage, not declaration, so@ts-ignore
isn't enough.✅ What’s fixed
The style is now wrapped in a platform check:
This ensures the
cursor
property only exists at runtime whenPlatform.OS === 'web'
, so it's no longer included in the type — and TS no longer complains when passing it to a<View style={...}>
.📌 Why this matters
@ts-ignore
Let me know if you'd like to validate this further or want additional changes.