Fix React Native 0.83+ compatibility#13
Open
BenGWeeks wants to merge 3 commits into
Open
Conversation
Dynamic.getType() was removed in RN 0.83 (Gradle 9.0). Replace with property access .type which works across RN versions. Same fix as LtbLightning#87 (submitted to upstream but not merged — upstream appears unmaintained since Jan 2024). Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
The prepare script runs yarn compile (tsc) which fails when installed via github: reference because devDependencies aren't available. Pre-compile and commit lib/ directory instead. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
RN 0.83 changed ReadableArray.getMap() to return ReadableMap? (nullable) instead of ReadableMap. Add non-null assertions where values are guaranteed to exist. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
8 tasks
BenGWeeks
added a commit
to BenGWeeks/lightning-piggy-mobile
that referenced
this pull request
Apr 4, 2026
Replace manual Electrum JSON-RPC + bitcoinjs-lib tx parsing with BDK native Rust library (forked from Peach2Peach/bdk-rn with RN 0.83 fix). BDK provides in a single sync call: - Correct balance (confirmed + unconfirmed) - Transaction history with accurate sent/received amounts - Proper incoming/outgoing direction detection - Block heights for confirmed transactions - Native Rust performance (no fragile JS TCP sockets) onchainService.ts: 370 lines → 210 lines Removes need for: manual address scanning, raw tx parsing, input amount lookups, rate limiting, connection keepalive handling Uses github:BenGWeeks/bdk-rn#fix/rn083-gettype-compat PR submitted to Peach: Peach2Peach/bdk-rn#13 Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
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.
Summary
Fixes Kotlin compilation errors when building with React Native 0.83+ (Gradle 9.0):
Dynamic.getType()with.typeproperty access (method was removed in RN 0.83)ReadableArray.getMap()which now returnsReadableMap?instead ofReadableMappreparescript that runsyarn compile(fails when installed viagithub:reference)Context
Same fix as LtbLightning/bdk-rn#87 submitted to the upstream repo, but that PR doesn't appear to be getting reviewed — the upstream repo hasn't merged anything since Jan 2024.
These changes are backwards-compatible with older RN versions —
.typewas always available as a property, and!!assertions are harmless on non-nullable types.Testing
🤖 Generated with Claude Code