From 8e3f6fe6e263411afe4b1286c049ac89b3b3521c Mon Sep 17 00:00:00 2001 From: HalFinneyIsMyHomeBoy Date: Mon, 8 Dec 2025 14:32:23 -0600 Subject: [PATCH 1/4] Update GitHub Actions workflow to require local Docker-based Nostr relay for testing scripts. Remove redundant tests that are already covered by the local relay. Fix test-all.sh to require local relay and add more detailed error messages. --- .github/workflows/bbmtlib-test.yml | 100 +++++++++++++---------------- BBMTLib/scripts/test-all.sh | 24 +++---- 2 files changed, 58 insertions(+), 66 deletions(-) diff --git a/.github/workflows/bbmtlib-test.yml b/.github/workflows/bbmtlib-test.yml index 0631edfc..ffa3a6fe 100644 --- a/.github/workflows/bbmtlib-test.yml +++ b/.github/workflows/bbmtlib-test.yml @@ -1,10 +1,6 @@ name: BBMTLib Tests on: - push: - paths: - - 'BBMTLib/**' - - '.github/workflows/bbmtlib-test.yml' pull_request: paths: - 'BBMTLib/**' @@ -102,11 +98,55 @@ jobs: sudo apt-get update sudo apt-get install -y jq + - name: Verify Docker is available + run: | + if ! command -v docker >/dev/null 2>&1; then + echo "❌ Docker is required for running tests with local relay" + exit 1 + fi + docker --version + echo "✓ Docker is available" + + - name: Start local Nostr relay + run: | + echo "Starting local Docker-based Nostr relay..." + chmod +x scripts/*.sh + if ! ./scripts/start-local-relay.sh; then + echo "❌ Failed to start local relay. Tests require a local Docker-based relay." + echo "Relay container status:" + docker ps -a | grep bbmtlib-test-relay || echo "No relay container found" + exit 1 + fi + echo "✓ Local relay is running at ws://localhost:7777" + + # Verify relay is actually accessible + if ! docker ps --format '{{.Names}}' | grep -q "^bbmtlib-test-relay$"; then + echo "❌ Relay container is not running" + exit 1 + fi + - name: Run comprehensive script tests + env: + RELAYS: "ws://localhost:7777" + REQUIRE_LOCAL_RELAY: "true" run: | echo "Running comprehensive test suite for all scripts..." + echo "Using local relay: $RELAYS" + echo "Local relay is required - tests will fail if relay is unavailable" + + # Verify relay is still running before tests + if ! docker ps --format '{{.Names}}' | grep -q "^bbmtlib-test-relay$"; then + echo "❌ Local relay container is not running. Tests cannot proceed." + exit 1 + fi + ./scripts/test-all.sh - continue-on-error: true + + - name: Stop local Nostr relay + if: always() + run: | + echo "Stopping local relay..." + ./scripts/stop-local-relay.sh || true - name: Run vet run: go vet ./... @@ -140,53 +180,3 @@ jobs: fail_ci_if_error: false continue-on-error: true - integration-test: - name: Integration Tests (Optional) - runs-on: ubuntu-latest - needs: test - - defaults: - run: - working-directory: ./BBMTLib - - steps: - - name: Checkout code - uses: actions/checkout@v4 - - - name: Set up Go - uses: actions/setup-go@v5 - with: - go-version: '1.24.2' - cache-dependency-path: BBMTLib/go.sum - - - name: Install dependencies - run: go mod download - - - name: Install jq (for JSON validation) - run: | - sudo apt-get update - sudo apt-get install -y jq - - - name: Install Docker (for local relay) - run: | - # Docker is pre-installed in GitHub Actions ubuntu-latest - # Just verify it's available - docker --version || echo "Docker not available, tests will use external relays" - - - name: Run comprehensive script tests (with local relay) - env: - TIMEOUT: "120" - run: | - echo "Running comprehensive test suite with local Nostr relay..." - echo "The test script will automatically start a local relay using Docker" - echo "If Docker is unavailable, it will fall back to external relays" - - # Make scripts executable - chmod +x scripts/*.sh - - # Run comprehensive test script - # The script will handle starting/stopping the local relay automatically - ./scripts/test-all.sh - continue-on-error: true - timeout-minutes: 15 - diff --git a/BBMTLib/scripts/test-all.sh b/BBMTLib/scripts/test-all.sh index f2f69d4c..2223f133 100755 --- a/BBMTLib/scripts/test-all.sh +++ b/BBMTLib/scripts/test-all.sh @@ -318,7 +318,7 @@ start_local_relay() { return 0 else - echo "⚠ Failed to start local relay, falling back to external relays" + echo "❌ Failed to start local relay" echo " Check /tmp/relay-start.log for details" if [ -f /tmp/relay-start.log ]; then echo " Last 10 lines of relay startup log:" @@ -625,9 +625,10 @@ else RELAYS_TO_USE="$LOCAL_RELAY_URL" echo "Using local relay: $RELAYS_TO_USE" else - RELAYS_TO_USE="${RELAYS:-wss://nostr.hifish.org,wss://nostr.xxi.quest,wss://bbw-nostr.xyz}" - echo "Using external relays: $RELAYS_TO_USE" - echo " (Note: Tests may fail due to relay connectivity)" + print_failure "nostr-keygen.sh: Local relay is required but could not be started" + echo " This test requires a local Docker-based relay to run." + echo " Please ensure Docker is available and the relay can be started." + exit 1 fi # Try to run with a short timeout @@ -719,13 +720,14 @@ else fi if [ -f "$KEYGEN_OUTPUT_DIR/party1-keyshare.json" ] && [ -f "$KEYGEN_OUTPUT_DIR/party2-keyshare.json" ]; then - # Use local relay if available, otherwise fall back to external + # Use local relay (required) if [ "$USE_LOCAL_RELAY" = "true" ] && [ -n "$LOCAL_RELAY_URL" ]; then RELAYS_TO_USE="$LOCAL_RELAY_URL" echo " Using local relay for keysign: $RELAYS_TO_USE" else - RELAYS_TO_USE="${RELAYS:-wss://bbw-nostr.xyz}" - echo " Using external relay for keysign: $RELAYS_TO_USE" + print_failure "nostr-keysign.sh: Local relay is required but not available" + echo " This test requires a local Docker-based relay to run." + exit 1 fi export OUTPUT_DIR="$KEYGEN_OUTPUT_DIR" @@ -786,14 +788,14 @@ else print_failure "nostr-keygen-3party.sh: Syntax error" fi - # Use local relay if available + # Use local relay (required) if [ "$USE_LOCAL_RELAY" = "true" ] && [ -n "$LOCAL_RELAY_URL" ]; then RELAYS_TO_USE="$LOCAL_RELAY_URL" echo "Using local relay: $RELAYS_TO_USE" else - RELAYS_TO_USE="${RELAYS:-wss://nostr.hifish.org,wss://nostr.xxi.quest,wss://bbw-nostr.xyz}" - echo "Using external relays: $RELAYS_TO_USE" - echo " (Note: Tests may fail due to relay connectivity)" + print_failure "nostr-keygen-3party.sh: Local relay is required but not available" + echo " This test requires a local Docker-based relay to run." + exit 1 fi # Try to run with a short timeout From 9f8816cc63bd9a0e816da75b6b6fa8d3365232a1 Mon Sep 17 00:00:00 2001 From: HalFinneyIsMyHomeBoy Date: Mon, 8 Dec 2025 14:36:27 -0600 Subject: [PATCH 2/4] Cache nostr-rs-relay docker --- .github/workflows/bbmtlib-test.yml | 11 +++++++++++ BBMTLib/scripts/start-local-relay.sh | 17 +++++++++++------ 2 files changed, 22 insertions(+), 6 deletions(-) diff --git a/.github/workflows/bbmtlib-test.yml b/.github/workflows/bbmtlib-test.yml index ffa3a6fe..74b788e4 100644 --- a/.github/workflows/bbmtlib-test.yml +++ b/.github/workflows/bbmtlib-test.yml @@ -107,6 +107,17 @@ jobs: docker --version echo "✓ Docker is available" + - name: Pull Nostr relay Docker image + run: | + # Pre-pull the image so Docker can use its built-in cache + # Docker on GitHub Actions automatically caches images between runs + echo "Pulling nostr-rs-relay Docker image..." + docker pull scsibug/nostr-rs-relay:latest || { + echo "❌ Failed to pull nostr-rs-relay image" + exit 1 + } + echo "✓ Nostr relay image ready (Docker will cache this for subsequent runs)" + - name: Start local Nostr relay run: | echo "Starting local Docker-based Nostr relay..." diff --git a/BBMTLib/scripts/start-local-relay.sh b/BBMTLib/scripts/start-local-relay.sh index cad1c3b1..5be9cee2 100755 --- a/BBMTLib/scripts/start-local-relay.sh +++ b/BBMTLib/scripts/start-local-relay.sh @@ -58,12 +58,17 @@ mkdir -p "$DATA_DIR_ABS" chmod 777 "$DATA_DIR_ABS" || true # Pull the latest nostr-rs-relay image (or use a specific tag) -echo "Pulling nostr-rs-relay Docker image..." -docker pull scsibug/nostr-rs-relay:latest || { - echo -e "${YELLOW}Warning: Failed to pull image, trying to build from source...${NC}" - # If pull fails, we could build from source, but for now just exit - exit 1 -} +# Check if image already exists to avoid unnecessary pulls +if docker images --format '{{.Repository}}:{{.Tag}}' | grep -q "^scsibug/nostr-rs-relay:latest$"; then + echo "✓ nostr-rs-relay image already exists, skipping pull" +else + echo "Pulling nostr-rs-relay Docker image..." + docker pull scsibug/nostr-rs-relay:latest || { + echo -e "${YELLOW}Warning: Failed to pull image, trying to build from source...${NC}" + # If pull fails, we could build from source, but for now just exit + exit 1 + } +fi # Start the relay container # Remove :Z flag (SELinux context) as it's not needed in GitHub Actions and can cause issues From 8245c7460b9e24776dc4a87e046690ebfa39b30d Mon Sep 17 00:00:00 2001 From: bbtc Date: Wed, 10 Dec 2025 01:31:44 +0400 Subject: [PATCH 3/4] v2.0.2: F-Droid compatibility, UI improvements, and icon updates - Add MobileNostrPairing.foss.tsx for F-Droid builds (removes react-native-vision-camera dependency) - Fix LoadingScreen safe area background color - Update and optimize Android launcher icons - Bump version to 2.0.2 (version code 32) --- CHANGELOG.md | 22 + android/app/build.gradle | 4 +- .../app/src/main/ic_launcher-playstore.png | Bin 132919 -> 81763 bytes .../src/main/res/mipmap-hdpi/ic_launcher.webp | Bin 1984 -> 1420 bytes .../mipmap-hdpi/ic_launcher_foreground.webp | Bin 4876 -> 3698 bytes .../res/mipmap-hdpi/ic_launcher_round.webp | Bin 3696 -> 2864 bytes .../src/main/res/mipmap-ldpi/ic_launcher.png | Bin 1572 -> 0 bytes .../src/main/res/mipmap-mdpi/ic_launcher.webp | Bin 1264 -> 874 bytes .../mipmap-mdpi/ic_launcher_foreground.webp | Bin 2412 -> 1970 bytes .../res/mipmap-mdpi/ic_launcher_round.webp | Bin 2190 -> 1744 bytes .../main/res/mipmap-xhdpi/ic_launcher.webp | Bin 3036 -> 2094 bytes .../mipmap-xhdpi/ic_launcher_foreground.webp | Bin 6818 -> 5958 bytes .../res/mipmap-xhdpi/ic_launcher_round.webp | Bin 5472 -> 4256 bytes .../main/res/mipmap-xxhdpi/ic_launcher.webp | Bin 5530 -> 3718 bytes .../mipmap-xxhdpi/ic_launcher_foreground.webp | Bin 13624 -> 10348 bytes .../res/mipmap-xxhdpi/ic_launcher_round.webp | Bin 9588 -> 7246 bytes .../main/res/mipmap-xxxhdpi/ic_launcher.webp | Bin 8280 -> 5722 bytes .../ic_launcher_foreground.webp | Bin 23148 -> 16480 bytes .../res/mipmap-xxxhdpi/ic_launcher_round.webp | Bin 14860 -> 10720 bytes ios/BoldWallet.xcodeproj/project.pbxproj | 8 +- package.json | 2 +- screens/LoadingScreen.tsx | 1 + screens/MobileNostrPairing.foss.tsx | 5559 +++++++++++++++++ 23 files changed, 5589 insertions(+), 7 deletions(-) delete mode 100644 android/app/src/main/res/mipmap-ldpi/ic_launcher.png create mode 100644 screens/MobileNostrPairing.foss.tsx diff --git a/CHANGELOG.md b/CHANGELOG.md index 11568c3e..fb4dfe81 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -4,6 +4,28 @@ All notable changes to Bold Wallet are documented in this file. --- +## [2.0.2] - 2025-12-10 + +### 🔓 F-Droid Compatibility +- **FOSS Version for MobileNostrPairing**: Added `MobileNostrPairing.foss.tsx` for F-Droid builds +- **Removed react-native-vision-camera Dependency**: Replaced iOS camera with `BarcodeZxingScan` for both iOS and Android platforms +- **F-Droid Build Support**: MobileNostrPairing now passes F-Droid open source restrictions, similar to SendBitcoinModal + +### 🎨 UI Improvements +- **Loading Screen Background Fix**: Added proper background color to safe area container for consistent theming + +### 📱 App Icons +- **Android Launcher Icons**: Updated and optimized Android app launcher icons across all density variants +- **Icon Optimization**: Reduced file sizes while maintaining visual quality + +### Technical +- Created FOSS-compatible version of MobileNostrPairing screen +- Unified QR scanning implementation using BarcodeZxingScan across all platforms +- Maintained full feature parity with standard version +- Version code bumped to 32 (Android) and build 32 (iOS) + +--- + ## [2.0.1] - 2025-12-08 ### 🐛 Bug Fixes diff --git a/android/app/build.gradle b/android/app/build.gradle index c33d7c47..4509f3a4 100644 --- a/android/app/build.gradle +++ b/android/app/build.gradle @@ -24,8 +24,8 @@ android { applicationId "com.boldwallet" minSdkVersion rootProject.ext.minSdkVersion targetSdkVersion rootProject.ext.targetSdkVersion - versionCode 31 - versionName "2.0.1" + versionCode 32 + versionName "2.0.2" missingDimensionStrategy 'react-native-camera', 'general' missingDimensionStrategy 'react-native-arch', 'oldarch' diff --git a/android/app/src/main/ic_launcher-playstore.png b/android/app/src/main/ic_launcher-playstore.png index f703d7ae2bc522a70103b5ea93fc6e5b5d455bf7..8ee90d4ddc4b86bf69220e88a863a6c092af6e5f 100644 GIT binary patch literal 81763 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 +e@nWz3z~+8Y-aK|#}oFT6~+ z>@wcMe#^`qJ%Ijdm!TjdRP2jT zOj8EF7RaXfpRn|5a^~ZLpUTW~`BM~AVs8*(<%-zj37)-}i_> zNTTNZz|Z|zQj$ilj$kYM!t&9|MT5!&;p^HFx?}D9NSM&ylgc-K?ZAgafgwmdj5Z1y z-6>>qON#xoPj?qjF{B{iJ$n44;D;a}z<~X#1gt(k@Uj?GgsXIyMaAPr{oga8d literal 132919 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
_QB_9$qPbH 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

Ba29EC6$Z9gTM*;P+2mB%x?Oo~jrTxVKB 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 SD~JZ$eB#g3Od0+)uTTM8x6Z2o diff --git a/android/app/src/main/res/mipmap-hdpi/ic_launcher_foreground.webp b/android/app/src/main/res/mipmap-hdpi/ic_launcher_foreground.webp index c991693ad1de907b7a6019448235c31004e98426..164956faf693e34f3125e9132b2cc87df2880d4a 100644 GIT binary patch literal 3698 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 diff --git a/android/app/src/main/res/mipmap-hdpi/ic_launcher_round.webp b/android/app/src/main/res/mipmap-hdpi/ic_launcher_round.webp index 57780b6ccebd3478d4f40c5d631eb873fdf6a735..67688bfb519bacd4b007fd5b840164042190fd3f 100644 GIT binary patch literal 2864 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 O$YYu(j1N1c4*~$(k#Bkc literal 3696 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 O+x9Ty*-MO+^cMj5sm2Qc diff --git a/android/app/src/main/res/mipmap-ldpi/ic_launcher.png b/android/app/src/main/res/mipmap-ldpi/ic_launcher.png deleted file mode 100644 index a983dd7fa3a72d34ae1e7ab6094db3856b62818b..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1572 zcmV+<2HW|GP)IS_mB~OWr=DFS&F`E zb{<&M1SCMQDvupI#`WvhTUAxvr6|fKNs^XnH%-$`ctzPX&Bd8Z5~gWdYK%&y^5yH- zuYaC7b0+=h(Ib2EmW2R}R4NtSv}w~XilY2Sk|cGlrdSJ1)0`=lO23bdjs4cq(J^k- zE6y2(!{ObsEdL~gh%R-)vXUj&s#{6+f+R_*q9{K#Ha7kNR1vbwYzQG*B}r;n>VWfU z$);&KO~0zV5-~}V8coxTI_sPkvLM{b+%x_sEaV{V%rrZo-OOtea4GU7`yu9pa5Jnm zuxXkYhEX-(YS49^QmM3JpIT&Vxop|&+%9m&kr2X;twN!|#KZ(IUc6v(a+3M^dA4lX z!v6jH*|~Ek!C-KiYu$v`?6Q15&xa2mNT<_;LLp+Y7;SBB%+Aho^X5$k2M2lg?j3V; za~Os}I2`8i;luRz_mfB@Jgwy>r2tAUm;1R~F3;+^ZaPc3TsB8WM$8KrE|?7s4JKfh z?c2ATj~_oa2L}humX?;PHmd{z0kf~K&#Y7`RYlXZ*~!VtU-=d~qNau1NTpI-y?T{_ zfdTUQd{tX6m*ey2&nzq~u&}TIKsX#G9*Q9!=9QjK%zDYiqM70Q^XD`-H`CkOOIKHyuXV~-40UyNv3c`mMn^|^ z@ZbT%!^5Q0=_=)xy8x2OB*|nFfcExw_U+q;s;X5)EZOlc07E!lJaPQ^ajsmsLPtjj znM{UMDut$Lp5H5qLUVI7s;ctp)ho`OJIBz_klpSPL$=FSJ&YBLMMg(QnVy~|6bjMZ z-AybOv)g4^t}^}Z-Mi`U@297y2Y`u*37$QBW|LV7zGCRjn>XCJaf6Q^KeA`f9?qXX zPiJSRJ%FMpD2iea7K_D*$K%Y+%>j#V)RU(l{)ruSl1UPl-6sJ$0roFx0CgR>JmmmP6>IjR6rOuu`%coDDc>44y zrBcZzvSY^%PMkQwfddCr)!r0gt_4V~cqfrhXJjk|f+gQJTJ(47mNF>;`YZs%lC=~ip2+`n&*!QARsT2x@!tm78)LXnoRME~<(TGX~Z zXy6tK(l%h~-*$H_3`q2U0&p@>D}x~0X7%U(86qNE$_owL+P0QO=aWT73swLb8FkPE zCD4lIT7x%02jh{u-?3lbKN3g4t!-OXwa&R0ch`(QpfgXMjx1tOiDzG)oe7Y$ZJTL3 z-@CMNO?Lm9-VG6wp{yXvP9?-~eE`^t+@MsOf0n zz;xpX%TUEgGhgsuEDlC2N*N%AD@|%%lQh7@6ij2nYd?u$#h_4V_y~Z2wiL!Rrt=O4 zLj#!XIs${>87B}E4FTW~G+cXaC=3Q|L*rmT6RuedpGE8ejKRbK1Qd<1D(~=!PHOfn z3;<~|T>)ek0TBWQFF-=jNbb@fTvuCg;{zD9m_m*=K68>Y6~kcQ0}uj0$Rnv?AuAeS zbPij69qB6MUn?aD2p}Q!(oO`5@|24b7y%C0R+2C%9&Ka{0gzrYPy|Da;PH%Cn0d|} zJS59-VPpsa0*Y`fPH~0FaK(He!9VtvfhymiL8O{_pbQA&0=OUo%2y&30%z-RFaS{GkX}2a zQ;CsC8UUJ5U`Z)S5Qn|20WfGYlLUn-m2|Qsnu!9YW04?}n8j2Mw`0^|WG}P%rNjVB zwvA;AN105CCp1GC$-=B%9k89sZLYN!f7DH4y>@IKHo#z=2>@s;fd6l-AkmV7A_aNV z@8pQ)!{#+q6*w=993;*^$0vWV;0s_b+t|`@2#1mI{)xj=FDE7VM(U(By3AaDqmwx? zkvVyZ_pYNm4uwS0+n?^Sl79khOB@D!J#tbk3ED9a99WZXr^gCuNjgbc%&rywO5+80 AvH$=8 literal 1264 zcmVQpYW3aYu+qP}n`~w?%WZT|D z+qP}Ak@+$6Jt)MN9Wm!`W)eu+xc;4g0YQ=fqrt6hTeUK;d{U=09WqY5-&3@(Wyq6g$nykuN} zaU&gajD?fi6hYn}Y@;_y+6cr0Ez?Lhz-1_26)_z+9P>L-lFJD8Ew0A_*!AkH!k7(quEurZB9VkD@H z>2NZ3fS?}lV;mj?W@a3O!~y^Y4jPq`N&H(B{)aM+${ajlM)4;+m{6nu1ehh}0mz`B zQ6-qfF5f{|1+$`yd6MWVVSa);HV7FM=xc*5oe+>1HXwsSrIA3{(kQ0QJa%XpSsY=e zB!&TjTd^NBo<;`*qzwv?LP0}88;QgSJ`o>U42I7z!dN6h0LE}4R>Ti@6zve;c>siI zC}?QW_A~B9YX9IznAkAd5T*lv932r9&a)wT7Qdhq1c7+~NHi2GgIKP?*Z5X`Mtkgv zB>;q7)m#|^!6QKw%ZshfdjzWihqkcgbXnfX#3w@FVC1o z7;eQpxef_5${0F|Kk%P;0E8*|0X}fNtsuK$9uiSy`n)CoBhYWS4xgHr7z?ov@EIul zhgkrGDgkGhC)eXr90&#b8T%K%B20n@ zh`|KHe1TV5ECg$(VR>Y*a44Js%pO({^erWC<3hZK49?0FZ3sg60RJ8fVePU51ST~3%HQa<*aj@c|4L}5TfCz(;lnz!L zGHi$?5yU}Ti2&$Sgh(O?04+ErfHqVP!kE25U=WEFa2R?Jq!V38K>!#=MI3;+4VM+3 z2f)J#3<7Z3iZyU0)&mf<9qXYRlc2x>m|1}5<2nGnSfz9z4ljU2Hx`fm&yiRRK;T`l zJD$d@kpRrn`pVik=IjIJ%g(#_1rtCFpOvt_EI4sRUt5 z4yG7P@!diqiXh}tR-X1Zp6})rBoKjyp#K&>S8%@!V++o=4S!Po#ts+}5tK%JFfDik a3CJ7t52pVZ5oi{4XVCQ$a+@LYq7nd0Eft^u diff --git a/android/app/src/main/res/mipmap-mdpi/ic_launcher_foreground.webp b/android/app/src/main/res/mipmap-mdpi/ic_launcher_foreground.webp index 8ae0b2e4f917eaec6b394007efb936e1820b655f..f7b215028915835ad8d6119c55a1e7bf28c83bd0 100644 GIT binary patch literal 1970 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 diff --git a/android/app/src/main/res/mipmap-mdpi/ic_launcher_round.webp b/android/app/src/main/res/mipmap-mdpi/ic_launcher_round.webp index 14358ee788ad564f7a6f1c13657ed45dda9b7dfd..702835f4915c65f0ffec646be35f46ae63545f4c 100644 GIT binary patch literal 1744 zcmV;>1~2(iNk&G<1^@t8MM6+kP&iDx1^@srFTe{B)rNtzZCd}bxBV6(LP(HEbqOJ8 zzQ2MbY1tI znz5Q5t;V4`0@@@o(e; z&gE^70=I3HbjOU3ph7_$Nu)jE@NCZ^iy(m%6@c1kfe!xfS5$!e*K!G6u@tBEV?{K>H6%Q-p0Pv!@FS ze~H+J@~fq3;2-*Cg9D&sSr8${H6|&F=fXbGMA|U9mu`Rn=`KC59hBVlK1QR$114g(* z$0^E&+YRIza@5RWrRaVq=|LMYI&d=s07_s0t=dTjEHM#|vOR0rQ zutM1_U;zr>@$LNp8iKHZG0;E{fq(?+p(fwOrOXhJITdBWm2z^)A3-m%y-VLHGobMvZ}7%4li$48 zNd65KDB#cgh!1#YPjMfmZy%Lfq7LW?2r2KoyvReE63Z1oM-tER1on^d5TyZ+koEC7 zIh707N>*<44N;fh&3DV5nGAwn zOqA~xFv1)NINy7B1u-G8voE{440v8_N;~6agm03VctI{h62dr(i@5aeLJHDTniz5h z%#g(eIE367X;=V;yn6{0V6;^`L(a$e&maa1F$c4-94D|HdvOqk|B#;(jLMCDy#vo)BVq%U!6cRWlTTwV0;|+{Q{t06RHj$jPMrY(I0)#7yU2* zBe6E3{MVttF<~?gVhQ@%Kn$^mFaeyzyGc$&@doK~k$z$VdY}s?(#PasA)B#CI|#VhyqkG7qzWc1k?rq4KW!E!15EEKLI^L zJilW{qXx#R86Keys-j9%HCx}YF18>i{}7r-L`_6A#~@sS9AHjEh%#Vl`+v8<2YT5g zaGVdQV-Xr!B~(CpWz>!S=t09SF}{vpT#%YUqH$h+Dbj0P!C-_nr-Ix-IS zx>Y7c7xXCe;35$DIQ_;!(bC>OuF=Q9;*Lb*WBCMtqilIz2G+EIG}c_imWLipJsPJUq8P1&b|UzyLhv4qWAG zWJ3c}Rde_a4YHn9Ht?{CV_3L-^Oa1ZJ}jV7%9xd08iLG8=-zP%&+ mM18VX*`9p#3~ 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 z z06ZA8QUZY6%QYjMK)8s#UvY>Z+qfzsW@cuAdWK2m414GRAf~#7?~wz6TZtF|V%FsV z6gYv*5IBJbp`fr#071s7d^i6B65UNtiU45Wz3W>Duz{z?6adi9zY2f~FoFO8B7z`> zzzGC)zb{#bRK{sx2mq0i=W#Wg`4Iuf01Q^E1VG3LATa|Fw=zW0|QhA;$|7VI14e@p|ZRutG#7y<`#kRSj67=HM5d(k;1B6{-fVDU8G9cZXvZ%lS01V9l zFi_1rRs*n-#niMh!OWZ?7Ujn8aasT*yzn0PeUigO900%&0FguUa^v?jEdZe83H(qe z`~^A{Pso{<72jGOP zIZ%J7UwmP&-F@JT#1}{}hx>5WivR!s literal 3036 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 ew8fYOm(jC88(7dg#Iy-W=l>q6()asd<bA4Wi7 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 o3-;q|1M7wWvzGq<;qIQyevat> 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 Q7x}+DnWLh``QN1<0NNb8uK)l5 diff --git a/android/app/src/main/res/mipmap-xhdpi/ic_launcher_round.webp b/android/app/src/main/res/mipmap-xhdpi/ic_launcher_round.webp index 0326651ee035d5db4594348d2a29c38ad26cbf9b..ce664b1f2eae172690ea5f23043f9d9b5322a563 100644 GIT binary patch literal 4256 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 CoGEDl literal 5472 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 diff --git a/android/app/src/main/res/mipmap-xxhdpi/ic_launcher_foreground.webp b/android/app/src/main/res/mipmap-xxhdpi/ic_launcher_foreground.webp index 2c0b363b5ad0ff687176d654feba35f77d1e9a8a..5ca4c849936aa4367eaba5c68e366cc2eb2293f2 100644 GIT binary patch literal 10348 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 W*bQMY>Hl9QTlRnMm#vrKg8u+pCjb-j6fu_5r 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 KKlnfRe}{dQOE=yC diff --git a/android/app/src/main/res/mipmap-xxhdpi/ic_launcher_round.webp b/android/app/src/main/res/mipmap-xxhdpi/ic_launcher_round.webp index 0658a4dc8d135b3a4777384c03960e2f514887b8..c6239d7323148d318c73495232cfc423da7c65c0 100644 GIT binary patch literal 7246 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 literal 9588 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 diff --git a/android/app/src/main/res/mipmap-xxxhdpi/ic_launcher.webp b/android/app/src/main/res/mipmap-xxxhdpi/ic_launcher.webp index 040911eae3b5b40ed6745a256df744dba4595e9d..cd0e16c3f105bc5e22440e4d3a920b052ceec1e8 100644 GIT binary patch literal 5722 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 MB!h7h$l7-vY&?m7JOBUy literal 8280 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 XF2Vo7|H1#k|H1#k|H1#k|D~w_d3b&} diff --git a/android/app/src/main/res/mipmap-xxxhdpi/ic_launcher_round.webp b/android/app/src/main/res/mipmap-xxxhdpi/ic_launcher_round.webp index cfcec84bd61a484d657b6e15423b161f2a0b8f83..2d9edb36d88ed885c38e81bb651df5e8a761f462 100644 GIT binary patch literal 10720 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 SB>+KxK}G>UWF-0%t_uKNN3ik$ literal 14860 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 { }, safeArea: { flex: 1, + backgroundColor: theme.colors.background, }, }); diff --git a/screens/MobileNostrPairing.foss.tsx b/screens/MobileNostrPairing.foss.tsx new file mode 100644 index 00000000..ccc9e844 --- /dev/null +++ b/screens/MobileNostrPairing.foss.tsx @@ -0,0 +1,5559 @@ +/* eslint-disable react-native/no-inline-styles */ +import React, {useState, useEffect, useRef} from 'react'; +import { + View, + Text, + StyleSheet, + Alert, + Image, + TouchableOpacity, + Modal, + TextInput, + ScrollView, + Platform, + KeyboardAvoidingView, + NativeEventEmitter, + EmitterSubscription, + Animated, + Keyboard, +} from 'react-native'; +import Share from 'react-native-share'; +import {NativeModules} from 'react-native'; +import DeviceInfo from 'react-native-device-info'; +import EncryptedStorage from 'react-native-encrypted-storage'; +import QRCode from 'react-native-qrcode-svg'; +import Clipboard from '@react-native-clipboard/clipboard'; +import BarcodeZxingScan from 'rn-barcode-zxing-scan'; +import * as Progress from 'react-native-progress'; +import {CommonActions, RouteProp, useRoute} from '@react-navigation/native'; +import {SafeAreaView} from 'react-native-safe-area-context'; +import Big from 'big.js'; +import {dbg, HapticFeedback, getNostrRelays, getKeyshareLabel} from '../utils'; +import {useTheme} from '../theme'; +import {useUser} from '../context/UserContext'; +import LocalCache from '../services/LocalCache'; +import {WalletService} from '../services/WalletService'; +import RNFS from 'react-native-fs'; + +const {BBMTLibNativeModule} = NativeModules; + +type RouteParams = { + mode?: string; // 'duo' | 'trio' | 'send_btc' + addressType?: string; + toAddress?: string; + satoshiAmount?: string; + fiatAmount?: string; + satoshiFees?: string; + fiatFees?: string; + selectedCurrency?: string; + spendingHash?: string; +}; + +const MobileNostrPairing = ({navigation}: any) => { + const route = useRoute>(); + const isSendBitcoin = route.params?.mode === 'send_btc'; + const setupMode = route.params?.mode; + const addressType = route.params?.addressType; + // In send mode, determine isTrio from keyshare (3 devices = trio, 2 devices = duo) + // In keygen mode, use setupMode + const [isTrio, setIsTrio] = useState(setupMode === 'trio'); + const {theme} = useTheme(); + const {activeAddress} = useUser(); + const ppmFile = `${RNFS.DocumentDirectoryPath}/ppm.json`; + + // Nostr Identity + const [localNsec, setLocalNsec] = useState(''); + const [localNpub, setLocalNpub] = useState(''); + const [deviceName, setDeviceName] = useState(''); + + // Relays - Load from cache or use defaults + const [relaysInput, setRelaysInput] = useState(''); + const [relays, setRelays] = useState([]); + + // Partial nonce (random UUID/number generated on each device) + const [partialNonce, setPartialNonce] = useState(''); + + // Peer Connections (for duo: 1 peer, for trio: 2 peers) + const [peerConnectionDetails1, setPeerConnectionDetails1] = + useState(''); + const [peerNpub1, setPeerNpub1] = useState(''); + const [peerDeviceName1, setPeerDeviceName1] = useState(''); + const [peerNonce1, setPeerNonce1] = useState(''); + const [peerConnectionDetails2, setPeerConnectionDetails2] = + useState(''); + const [peerNpub2, setPeerNpub2] = useState(''); + const [peerDeviceName2, setPeerDeviceName2] = useState(''); + const [peerNonce2, setPeerNonce2] = useState(''); + const [peerInputError1, setPeerInputError1] = useState(''); + const [peerInputError2, setPeerInputError2] = useState(''); + const [peerInputValidating1, setPeerInputValidating1] = + useState(false); + const [peerInputValidating2, setPeerInputValidating2] = + useState(false); + + // Session (generated deterministically) + const [sessionID, setSessionID] = useState(''); + const [sessionKey, setSessionKey] = useState(''); + const [chaincode, setChaincode] = useState(''); + + // Progress + const [progress, setProgress] = useState(0); + const [status, setStatus] = useState(''); + const [isPairing, setIsPairing] = useState(false); + const [isKeygenReady, setIsKeygenReady] = useState(false); // Manual toggle for "other devices ready" + const [canStartKeygen, setCanStartKeygen] = useState(false); // Auto-calculated: all conditions met + const [mpcDone, setMpcDone] = useState(false); + const [isPreParamsReady, setIsPreParamsReady] = useState(false); + const [isPreparing, setIsPreparing] = useState(false); + const [isPrepared, setIsPrepared] = useState(false); + const [prepCounter, setPrepCounter] = useState(0); + const progressAnimation = useRef(new Animated.Value(0)).current; + const progressAnimationLoop = useRef( + null, + ); + + // Backup state + const [isBackupModalVisible, setIsBackupModalVisible] = useState(false); + const [password, setPassword] = useState(''); + const [confirmPassword, setConfirmPassword] = useState(''); + const [passwordVisible, setPasswordVisible] = useState(false); + const [confirmPasswordVisible, setConfirmPasswordVisible] = useState(false); + const [passwordStrength, setPasswordStrength] = useState(0); + const [passwordErrors, setPasswordErrors] = useState([]); + const [backupChecks, setBackupChecks] = useState({ + deviceOne: false, + deviceTwo: false, + deviceThree: false, + }); + + // Keyshare mapping (based on sorted npubs) + const [keyshareMapping, setKeyshareMapping] = useState<{ + keyshare1?: {npub: string; deviceName: string; isLocal: boolean}; + keyshare2?: {npub: string; deviceName: string; isLocal: boolean}; + keyshare3?: {npub: string; deviceName: string; isLocal: boolean}; + }>({}); + + // Send mode: device selection (for trio mode) + const [selectedPeerNpub, setSelectedPeerNpub] = useState(''); + const [sendModeDevices, setSendModeDevices] = useState< + Array<{ + keyshareLabel: string; + npub: string; + isLocal: boolean; + }> + >([]); + + // QR Scanner / QR Share + // FOSS version: Only use ref, no state needed since we don't use iOS modal + const scanningForPeerRef = useRef<1 | 2>(1); + const [isQRModalVisible, setIsQRModalVisible] = useState(false); + const [showRelayConfig, setShowRelayConfig] = useState(false); + const [showHelpModal, setShowHelpModal] = useState(false); + const connectionQrRef = useRef(null); + + // Connection details for sharing (hex encoded) + const connectionDetails = React.useMemo(() => { + if (!localNpub || !deviceName || !partialNonce) { + return ''; + } + const plaintext = `${localNpub}:${deviceName}:${partialNonce}`; + // Convert to hex encoding + let hex = ''; + for (let i = 0; i < plaintext.length; i++) { + const charCode = plaintext.charCodeAt(i); + hex += charCode.toString(16).padStart(2, '0'); + } + return hex; + }, [localNpub, deviceName, partialNonce]); + + // Load default relays on mount (from cache if available, otherwise fetch dynamically) + useEffect(() => { + const loadRelays = async () => { + try { + // Use getNostrRelays which handles cache and fetching + const fetchedRelays = await getNostrRelays(false); + const relaysCSV = fetchedRelays.join(','); + // Convert CSV to newline-separated for multiline display + const relaysForDisplay = relaysCSV.split(',').join('\n'); + setRelaysInput(relaysForDisplay); + setRelays(fetchedRelays); + } catch (error) { + dbg('Error loading relays:', error); + // Fallback to defaults on error + const defaults = [ + 'wss://bbw-nostr.xyz', + 'wss://nostr.hifish.org', + 'wss://nostr.xxi.quest', + ]; + const defaultsCSV = defaults.join(','); + const defaultsForDisplay = defaultsCSV.split(',').join('\n'); + setRelaysInput(defaultsForDisplay); + setRelays(defaults); + } + }; + loadRelays(); + }, []); + + // Update relays when input changes (support both comma and newline separation) + useEffect(() => { + const parsed = relaysInput + .split(/[,\n]/) + .map(r => r.trim()) + .filter(Boolean); + setRelays(parsed); + }, [relaysInput]); + + // Initialize device name and generate keypair on mount (only for keygen mode) + useEffect(() => { + const initialize = async () => { + try { + const name = await DeviceInfo.getDeviceName(); + setDeviceName(name); + // Generate random partial nonce (UUID or random number) + // Using a combination of timestamp and random for uniqueness + const randomNonce = await BBMTLibNativeModule.sha256( + `${Date.now()}-${Math.random()}`, + ); + setPartialNonce(randomNonce); + dbg('Generated partialNonce:', randomNonce); + // Only generate new keypair if not in send mode (send mode loads from keyshare) + if (!isSendBitcoin) { + await generateLocalKeypair(); + } + } catch (error) { + dbg('Error initializing:', error); + Alert.alert('Error', 'Failed to initialize device'); + } + }; + initialize(); + }, [isSendBitcoin]); + + // Generate session params when peer connections are ready + useEffect(() => { + if (localNpub && deviceName && partialNonce) { + if (isSendBitcoin) { + // For send BTC, we need balance - will be generated when starting + return; + } + // For keygen, generate when we have peer(s) with nonces + if (isTrio) { + if ( + peerNpub1 && + peerDeviceName1 && + peerNonce1 && + peerNpub2 && + peerDeviceName2 && + peerNonce2 + ) { + generateKeygenSessionParams(); + } + } else { + if (peerNpub1 && peerDeviceName1 && peerNonce1) { + generateKeygenSessionParams(); + } + } + } + // eslint-disable-next-line react-hooks/exhaustive-deps + }, [ + localNpub, + deviceName, + partialNonce, + peerNpub1, + peerDeviceName1, + peerNonce1, + peerNpub2, + peerDeviceName2, + peerNonce2, + isTrio, + isSendBitcoin, + ]); + + // Check if all conditions are met to enable start keygen button + // (requires preparams ready AND manual confirmation that other devices are ready) + useEffect(() => { + const ready = + localNpub && + deviceName && + relays.length > 0 && + sessionID && + sessionKey && + chaincode && + isPreParamsReady && + isKeygenReady && // Manual confirmation that other devices are ready + ((isTrio && + peerNpub1 && + peerDeviceName1 && + peerNpub2 && + peerDeviceName2) || + (!isTrio && peerNpub1 && peerDeviceName1)); + setCanStartKeygen(!!ready); + }, [ + localNpub, + deviceName, + relays, + sessionID, + sessionKey, + chaincode, + isPreParamsReady, + isKeygenReady, // Include manual toggle + peerNpub1, + peerDeviceName1, + peerNpub2, + peerDeviceName2, + isTrio, + ]); + + // Toggle function for manual "other devices ready" confirmation + const toggleKeygenReady = () => { + setIsKeygenReady(!isKeygenReady); + }; + + // Listen to native module events for progress tracking + useEffect(() => { + const eventEmitter = new NativeEventEmitter(BBMTLibNativeModule); + const keygenSteps = isTrio ? 25 : 18; + const keysignSteps = 36; + let utxoRange = 0; + let utxoIndex = 0; + let utxoCount = 0; + const processHook = (message: string) => { + try { + const msg = JSON.parse(message); + if (msg.type === 'keygen') { + if (msg.done) { + dbg('progress - keygen done'); + setProgress(100); + setMpcDone(true); + // Don't navigate away, let the backup UI handle it + } else { + dbg( + 'progress - keygen: ', + Math.round((100 * msg.step) / keygenSteps), + 'step', + msg.step, + 'time', + new Date(msg.time), + ); + setProgress(Math.round((100 * msg.step) / keygenSteps)); + dbg('keygen_hook_info:', msg.info); + const statusDot = + msg.step % 3 === 0 ? '.' : msg.step % 3 === 1 ? '..' : '...'; + setStatus('Processing cryptographic operations' + statusDot); + } + } else if (msg.type === 'btc_send') { + if (msg.done) { + setProgress(100); + } + if (msg.utxo_total > 0) { + utxoCount = msg.utxo_total; + utxoIndex = msg.utxo_current; + utxoRange = 100 / utxoCount; + dbg('progress send_btc', { + utxoCount, + utxoIndex, + utxoRange, + }); + } + dbg('btc_send_hook_info:', msg.info); + const statusDot = + msg.step % 3 === 0 ? '.' : msg.step % 3 === 1 ? '..' : '...'; + setStatus('Processing cryptographic operations' + statusDot); + } else if (msg.type === 'keysign') { + const prgUTXO = (utxoIndex - 1) * utxoRange; + const progressValue = + utxoCount > 0 + ? Math.round(prgUTXO + (utxoRange * msg.step) / keysignSteps) + : Math.round((100 * msg.step) / keysignSteps); + dbg( + 'progress - keysign: ', + progressValue, + 'prgUTXO', + prgUTXO, + 'step', + msg.step, + 'range', + utxoRange, + 'time', + new Date(msg.time), + ); + setProgress(progressValue); + dbg('keysign_hook_info:', msg.info); + const statusDot = + msg.step % 3 === 0 ? '.' : msg.step % 3 === 1 ? '..' : '...'; + setStatus('Processing cryptographic operations' + statusDot); + if (msg.done) { + setProgress(100); + setMpcDone(true); + } + } + } catch { + // If parsing fails, it might be a log message, just log it + dbg('TSS log:', message); + } + }; + + const subscription: EmitterSubscription = eventEmitter.addListener( + Platform.OS === 'android' ? 'BBMT_DROID' : 'BBMT_APPLE', + (event: any) => { + if (event.tag === 'TssHook') { + processHook(event.message); + } else if (event.tag === 'GoLog') { + dbg('TSS:', event.message); + } + }, + ); + + return () => { + subscription.remove(); + }; + }, [isTrio]); + + // Load keyshare and derive device info in send mode + useEffect(() => { + if (!isSendBitcoin) return; + + const loadKeyshareData = async () => { + try { + const keyshareJSON = await EncryptedStorage.getItem('keyshare'); + if (!keyshareJSON) { + dbg('No keyshare found in send mode'); + setSendModeDevices([]); + return; + } + + const keyshare = JSON.parse(keyshareJSON); + if (!keyshare.keygen_committee_keys || !keyshare.local_party_key) { + dbg('Keyshare missing required fields'); + setSendModeDevices([]); + return; + } + + // Determine if trio mode based on number of devices in keyshare + const numDevices = keyshare.keygen_committee_keys?.length || 0; + const isTrioMode = numDevices === 3; + setIsTrio(isTrioMode); + dbg( + 'Send mode - detected', + isTrioMode ? 'trio' : 'duo', + 'mode from keyshare (', + numDevices, + 'devices)', + ); + + // Get local npub from keyshare + const localNpubFromKeyshare = keyshare.nostr_npub || ''; + + // Get local nsec from keyshare + // The nsec might be stored as hex-encoded bytes OR already in bech32 format + const nsecFromKeyshare = keyshare.nsec || ''; + + if (nsecFromKeyshare) { + // Check if it's already in bech32 format + if (nsecFromKeyshare.startsWith('nsec1')) { + // Already in correct format + setLocalNsec(nsecFromKeyshare); + dbg( + 'Nsec from keyshare (already bech32):', + nsecFromKeyshare.substring(0, 20) + '...', + ); + } else { + // Try to decode from hex + try { + // Hex decode function for React Native + const hexToString = (hex: string): string => { + let result = ''; + for (let i = 0; i < hex.length; i += 2) { + result += String.fromCharCode(parseInt(hex.substr(i, 2), 16)); + } + return result; + }; + + const decodedNsec = hexToString(nsecFromKeyshare); + dbg( + 'Decoded nsec from hex:', + decodedNsec.substring(0, 20) + '...', + ); + + // Verify it's a valid nsec format + if (decodedNsec.startsWith('nsec1')) { + setLocalNsec(decodedNsec); + dbg('Nsec set successfully'); + } else { + dbg( + 'Warning: Decoded nsec does not start with nsec1:', + decodedNsec.substring(0, 50), + ); + } + } catch (error) { + dbg('Error decoding nsec from hex:', error); + } + } + } else { + dbg('Warning: No nsec found in keyshare'); + } + + // Set local npub if available + if (localNpubFromKeyshare) { + setLocalNpub(localNpubFromKeyshare); + } + + // Sort keygen_committee_keys to match the order used for keyshare labels + const sortedKeys = [...keyshare.keygen_committee_keys].sort(); + + // Build device list IMMEDIATELY with available data + const devices: Array<{ + keyshareLabel: string; + npub: string; + isLocal: boolean; + }> = []; + + for (let i = 0; i < sortedKeys.length; i++) { + const hexKey = sortedKeys[i]; + const isLocal = hexKey === keyshare.local_party_key; + const keyshareLabel = `KeyShare${i + 1}`; + + let npub = ''; + if (isLocal) { + // Use local npub if available, otherwise use shortened hex + npub = + localNpubFromKeyshare || + hexKey.substring(0, 12) + + '...' + + hexKey.substring(hexKey.length - 8); + } else { + // For other devices, use shortened hex as placeholder, will update async + npub = + hexKey.substring(0, 12) + + '...' + + hexKey.substring(hexKey.length - 8); + } + + devices.push({ + keyshareLabel, + npub, + isLocal, + }); + } + + // Set devices immediately so UI can render + setSendModeDevices(devices); + dbg('Send mode devices loaded (initial):', devices); + + // Now update npubs for other devices asynchronously + const updatedDevices = [...devices]; + for (let i = 0; i < sortedKeys.length; i++) { + const hexKey = sortedKeys[i]; + const isLocal = hexKey === keyshare.local_party_key; + + if (!isLocal) { + try { + // Validate hex key format before calling hexToNpub + const hexPattern = /^[0-9a-fA-F]+$/; + if (!hexPattern.test(hexKey)) { + dbg( + 'Invalid hex key format, skipping npub conversion:', + hexKey.substring(0, 20) + '...', + ); + continue; + } + + const result = await BBMTLibNativeModule.hexToNpub(hexKey); + if ( + result && + typeof result === 'string' && + result.startsWith('npub1') + ) { + const oldNpub = updatedDevices[i].npub; + updatedDevices[i].npub = result; + dbg( + 'Updated npub for device:', + result.substring(0, 20) + '...', + ); + // Update state with new npub + setSendModeDevices([...updatedDevices]); + + // If this device was selected (by placeholder), update selectedPeerNpub to full npub + // Use a callback to access current selectedPeerNpub state + setSelectedPeerNpub(current => { + if ( + current === oldNpub || + (oldNpub && result.startsWith(oldNpub.substring(0, 20))) + ) { + dbg( + 'Updated selectedPeerNpub to full npub:', + result.substring(0, 20) + '...', + ); + return result; + } + return current; + }); + } + } catch (error) { + dbg('Error converting hex to npub:', error); + // Keep the shortened hex as fallback + } + } + } + } catch (error: any) { + dbg('Error loading keyshare data:', error); + setSendModeDevices([]); + } + }; + + loadKeyshareData(); + }, [isSendBitcoin]); + + // Auto-select peer in duo mode, or first peer in trio mode (deterministic) + // Only auto-selects if no selection exists - never overrides user's manual selection + useEffect(() => { + if (isSendBitcoin && sendModeDevices.length > 0) { + const otherDevices = sendModeDevices.filter(d => !d.isLocal); + + // Only auto-select if no peer is currently selected + if (!selectedPeerNpub) { + if (isTrio && otherDevices.length >= 2) { + // In trio mode, deterministically select the first peer (sorted by npub) + // This ensures both devices select the same peer by default + // User can still manually change the selection + const sortedOtherDevices = [...otherDevices].sort((a, b) => { + // Sort by npub (handle both full and shortened npubs) + const npubA = a.npub || ''; + const npubB = b.npub || ''; + return npubA.localeCompare(npubB); + }); + const firstPeer = sortedOtherDevices[0]; + if (firstPeer && firstPeer.npub) { + setSelectedPeerNpub(firstPeer.npub); + dbg( + 'Auto-selected first peer in trio mode (deterministic, user can change):', + firstPeer.npub.substring(0, 20) + '...', + ); + } + } else if (!isTrio && otherDevices.length >= 1) { + // In duo mode, auto-select the only other device + const otherDevice = otherDevices[0]; + if (otherDevice && otherDevice.npub) { + setSelectedPeerNpub(otherDevice.npub); + dbg( + 'Auto-selected peer in duo mode:', + otherDevice.npub.substring(0, 20) + '...', + ); + } + } + } + } + }, [isSendBitcoin, isTrio, sendModeDevices, selectedPeerNpub]); + + const generateLocalKeypair = async () => { + try { + const keypairJSON = await BBMTLibNativeModule.nostrKeypair(); + const keypair = JSON.parse(keypairJSON); + setLocalNsec(keypair.nsec); + setLocalNpub(keypair.npub); + dbg( + 'Generated Nostr keypair - nsec:', + keypair.nsec?.substring(0, 10) + '...', + ); + dbg('Generated Nostr keypair - npub:', keypair.npub); + dbg( + 'Generated Nostr keypair - npub format check:', + keypair.npub?.startsWith('npub1') + ? 'bech32 (correct)' + : 'NOT bech32 (incorrect - should start with npub1)', + ); + } catch (error: any) { + dbg('Error generating keypair:', error); + Alert.alert('Error', 'Failed to generate Nostr keypair'); + } + }; + + // Helper function to shorten npub for display + const shortenNpub = ( + npub: string, + startLen: number = 8, + endLen: number = 4, + ): string => { + if (!npub || npub.length <= startLen + endLen) { + return npub; + } + return `${npub.substring(0, startLen)}...${npub.substring( + npub.length - endLen, + )}`; + }; + + // Helper function to format connection details for display + const formatConnectionDisplay = ( + npub: string, + deviceNameValue: string, + ): string => { + if (!npub || !deviceNameValue) { + return ''; + } + return `${deviceNameValue}@${shortenNpub(npub)}`; + }; + + const parseConnectionDetails = async ( + input: string, + ): Promise<{ + npub: string; + deviceName: string; + partialNonce: string; + } | null> => { + const trimmed = input.trim(); + dbg('parseConnectionDetails: input =', trimmed.substring(0, 50) + '...'); + + if (!trimmed) { + dbg('parseConnectionDetails: empty input'); + return null; + } + + // Try to decode as hex first + let decoded = ''; + try { + // Check if it looks like hex (even length, only hex chars) + const hexPattern = /^[0-9a-fA-F]+$/; + if (hexPattern.test(trimmed) && trimmed.length % 2 === 0) { + // Decode hex to string + for (let i = 0; i < trimmed.length; i += 2) { + const hexByte = trimmed.substr(i, 2); + const charCode = parseInt(hexByte, 16); + decoded += String.fromCharCode(charCode); + } + dbg( + 'parseConnectionDetails: decoded hex to:', + decoded.substring(0, 50) + '...', + ); + } else { + // Not hex, try as plaintext (backward compatibility) + decoded = trimmed; + dbg('parseConnectionDetails: treating as plaintext'); + } + } catch (error) { + dbg('parseConnectionDetails: error decoding hex:', error); + return null; + } + + const parts = decoded.split(':'); + dbg('parseConnectionDetails: split parts count =', parts.length); + + if (parts.length !== 3) { + dbg( + 'parseConnectionDetails: invalid format - expected 3 parts (npub:deviceName:partialNonce), got', + parts.length, + ); + return null; + } + + let [npub, peerDeviceName, peerPartialNonce] = parts; + let trimmedNpub = npub.trim(); + const trimmedDeviceName = peerDeviceName.trim(); + const trimmedNonce = peerPartialNonce.trim(); + + dbg('parseConnectionDetails: npub =', trimmedNpub.substring(0, 20) + '...'); + dbg('parseConnectionDetails: deviceName =', trimmedDeviceName); + dbg('parseConnectionDetails: partialNonce =', trimmedNonce); + + // Check if it's a hex string (64 hex characters) and try to convert to npub + if (!trimmedNpub.startsWith('npub1')) { + // Check if it's a hex string + const hexPattern = /^[0-9a-fA-F]{64}$/; + if (hexPattern.test(trimmedNpub)) { + dbg( + 'parseConnectionDetails: detected hex string, attempting to convert to npub', + ); + try { + // Try to convert hex to npub using native module + // First, we need to check if there's a conversion function + // For now, we'll show a helpful error message + dbg( + 'parseConnectionDetails: hex string detected but conversion not available', + ); + return null; // Will show error message below + } catch (error) { + dbg('parseConnectionDetails: error converting hex to npub:', error); + return null; + } + } else { + dbg( + 'parseConnectionDetails: invalid npub - does not start with npub1 and is not valid hex', + ); + return null; + } + } + + if (trimmedNpub.length < 10) { + dbg('parseConnectionDetails: invalid npub - too short'); + return null; + } + + if (trimmedDeviceName.length === 0) { + dbg('parseConnectionDetails: invalid device name - empty'); + return null; + } + + if (trimmedNonce.length === 0) { + dbg('parseConnectionDetails: invalid partialNonce - empty'); + return null; + } + + dbg( + 'parseConnectionDetails: valid! npub =', + trimmedNpub.substring(0, 20) + '...', + 'deviceName =', + trimmedDeviceName, + 'partialNonce =', + trimmedNonce, + ); + return { + npub: trimmedNpub, + deviceName: trimmedDeviceName, + partialNonce: trimmedNonce, + }; + }; + + const handlePeerConnectionInput = async (input: string, peerNum: 1 | 2) => { + dbg(`handlePeerConnectionInput: peerNum=${peerNum}, input="${input}"`); + + const setValidating = + peerNum === 1 ? setPeerInputValidating1 : setPeerInputValidating2; + const setError = peerNum === 1 ? setPeerInputError1 : setPeerInputError2; + + // Clear previous error + setError(''); + + // If input is empty, clear everything + if (!input.trim()) { + dbg( + `handlePeerConnectionInput: peerNum=${peerNum}, clearing (empty input)`, + ); + if (peerNum === 1) { + setPeerNpub1(''); + setPeerDeviceName1(''); + setPeerNonce1(''); + setPeerConnectionDetails1(''); + } else { + setPeerNpub2(''); + setPeerDeviceName2(''); + setPeerNonce2(''); + setPeerConnectionDetails2(''); + } + return; + } + + // Set validating state + setValidating(true); + + // Small delay to show validation state + await new Promise(resolve => setTimeout(resolve, 300)); + + const parsed = await parseConnectionDetails(input); + + if (parsed) { + dbg( + `handlePeerConnectionInput: peerNum=${peerNum}, VALID - npub=${parsed.npub.substring( + 0, + 20, + )}..., deviceName=${parsed.deviceName}`, + ); + + // Check for duplicate npubs + const isDuplicateLocal = parsed.npub === localNpub; + const isDuplicatePeer1 = peerNum !== 1 && parsed.npub === peerNpub1; + const isDuplicatePeer2 = peerNum !== 2 && parsed.npub === peerNpub2; + + if (isDuplicateLocal || isDuplicatePeer1 || isDuplicatePeer2) { + let duplicateMsg = 'This device is already connected.'; + if (isDuplicateLocal) { + duplicateMsg = 'Cannot connect to your own device.'; + } + dbg( + `handlePeerConnectionInput: peerNum=${peerNum}, DUPLICATE - ${duplicateMsg}`, + ); + setError(duplicateMsg); + setValidating(false); + // Clear the input text + if (peerNum === 1) { + setPeerConnectionDetails1(''); + setPeerNonce1(''); + } else { + setPeerConnectionDetails2(''); + setPeerNonce2(''); + } + return; + } + + if (peerNum === 1) { + setPeerNpub1(parsed.npub); + setPeerDeviceName1(parsed.deviceName); + setPeerNonce1(parsed.partialNonce); + setPeerConnectionDetails1(input.trim()); + setPeerInputError1(''); + } else { + setPeerNpub2(parsed.npub); + setPeerDeviceName2(parsed.deviceName); + setPeerNonce2(parsed.partialNonce); + setPeerConnectionDetails2(input.trim()); + setPeerInputError2(''); + } + + HapticFeedback.light(); + } else { + dbg(`handlePeerConnectionInput: peerNum=${peerNum}, INVALID`); + + // Check if it's a hex string + const hexPattern = /^[0-9a-fA-F]{64}$/; + const parts = input.trim().split(':'); + const firstPart = parts[0]?.trim() || ''; + + let errorMsg = ''; + if (hexPattern.test(firstPart)) { + errorMsg = + 'Hex string detected. Please use npub format (npub1...). The connection details should show the npub, not a hex string.'; + } else if (!input.includes(':')) { + errorMsg = 'Missing colon separator. Format: npub1...:DeviceName'; + } else if (!firstPart.startsWith('npub1')) { + errorMsg = + 'Invalid format. Expected: npub1...:DeviceName (npub must start with "npub1")'; + } else { + errorMsg = 'Invalid format. Expected: npub1...:DeviceName'; + } + + dbg(`handlePeerConnectionInput: peerNum=${peerNum}, error="${errorMsg}"`); + setError(errorMsg); + + // Clear the input text and peer data + if (peerNum === 1) { + setPeerNpub1(''); + setPeerDeviceName1(''); + setPeerNonce1(''); + setPeerConnectionDetails1(''); + } else { + setPeerNpub2(''); + setPeerDeviceName2(''); + setPeerNonce2(''); + setPeerConnectionDetails2(''); + } + } + + setValidating(false); + }; + + const generateKeygenSessionParams = async () => { + try { + // Collect all npubs and device names + // IMPORTANT: Trim whitespace and ensure consistent format + const allNpubs: string[] = []; + const allDeviceNames: string[] = []; + + // Add local npub (trimmed) + if (localNpub && localNpub.trim()) { + allNpubs.push(localNpub.trim()); + } + if (deviceName && deviceName.trim()) { + allDeviceNames.push(deviceName.trim()); + } + + // Add peer 1 (trimmed) + if (peerNpub1 && peerNpub1.trim()) { + allNpubs.push(peerNpub1.trim()); + } + if (peerDeviceName1 && peerDeviceName1.trim()) { + allDeviceNames.push(peerDeviceName1.trim()); + } + + // Add peer 2 for trio (trimmed) + if (isTrio && peerNpub2 && peerNpub2.trim()) { + allNpubs.push(peerNpub2.trim()); + } + if (isTrio && peerDeviceName2 && peerDeviceName2.trim()) { + allDeviceNames.push(peerDeviceName2.trim()); + } + + // Validate we have the correct number of npubs + const expectedNpubs = isTrio ? 3 : 2; + if (allNpubs.length !== expectedNpubs) { + dbg( + `ERROR: Expected ${expectedNpubs} npubs for ${ + isTrio ? 'trio' : 'duo' + } mode, but got ${allNpubs.length}`, + ); + dbg( + 'allNpubs:', + allNpubs.map(n => n.substring(0, 20) + '...'), + ); + dbg( + 'localNpub:', + localNpub ? localNpub.substring(0, 20) + '...' : 'MISSING', + ); + dbg( + 'peerNpub1:', + peerNpub1 ? peerNpub1.substring(0, 20) + '...' : 'MISSING', + ); + if (isTrio) { + dbg( + 'peerNpub2:', + peerNpub2 ? peerNpub2.substring(0, 20) + '...' : 'MISSING', + ); + dbg( + 'peerDeviceName2:', + peerDeviceName2 ? peerDeviceName2 : 'MISSING', + ); + } + dbg('isTrio:', isTrio); + return; // Don't generate session params if we don't have all npubs + } + + // Additional validation for trio mode: ensure all 3 npubs are unique + if (isTrio && allNpubs.length === 3) { + const uniqueNpubs = new Set(allNpubs); + if (uniqueNpubs.size !== 3) { + dbg('ERROR: Duplicate npubs detected in trio mode!'); + dbg('allNpubs:', allNpubs); + return; + } + } + + // Sort alphabetically - CRITICAL: must be same order on all devices + const npubsSorted = [...allNpubs].sort().join(','); + const deviceNamesSorted = [...allDeviceNames].sort().join(','); + + // Collect all partial nonces (local + peers) + const allPartialNonces: string[] = []; + if (partialNonce) { + allPartialNonces.push(partialNonce); + } + if (peerNonce1) { + allPartialNonces.push(peerNonce1); + } + if (isTrio && peerNonce2) { + allPartialNonces.push(peerNonce2); + } + + // Sort nonces and join as CSV + const fullNonce = [...allPartialNonces].sort().join(','); + + // Log the exact inputs for session ID calculation (for debugging) + dbg('=== SESSION ID CALCULATION ==='); + dbg('Mode:', isTrio ? 'TRIO' : 'DUO'); + dbg( + 'All npubs (before sort):', + allNpubs.map(n => n.substring(0, 30) + '...'), + ); + dbg( + 'All npubs (sorted):', + npubsSorted.split(',').map(n => n.substring(0, 30) + '...'), + ); + dbg('npubsSorted (full):', npubsSorted); + dbg('All device names (before sort):', allDeviceNames); + dbg('deviceNamesSorted:', deviceNamesSorted); + dbg('All partial nonces (before sort):', allPartialNonces); + dbg('fullNonce (sorted, CSV):', fullNonce); + dbg( + 'Session ID input string:', + `${npubsSorted},${deviceNamesSorted},${fullNonce}`, + ); + + // Generate session ID + const sessionIDHash = await BBMTLibNativeModule.sha256( + `${npubsSorted},${deviceNamesSorted},${fullNonce}`, + ); + setSessionID(sessionIDHash); + + // Generate session key + const sessionKeyHash = await BBMTLibNativeModule.sha256( + `${npubsSorted},${sessionIDHash}`, + ); + setSessionKey(sessionKeyHash); + + // Generate chaincode + const chaincodeHash = await BBMTLibNativeModule.sha256( + `${sessionIDHash},${sessionKeyHash}`, + ); + setChaincode(chaincodeHash); + + dbg('Generated session params:', { + sessionID: sessionIDHash.substring(0, 16) + '...', + sessionKey: sessionKeyHash.substring(0, 16) + '...', + chaincode: chaincodeHash.substring(0, 16) + '...', + fullNonce: fullNonce, + npubsCount: allNpubs.length, + }); + dbg('=== END SESSION ID CALCULATION ==='); + } catch (error: any) { + dbg('Error generating session params:', error); + Alert.alert('Error', 'Failed to generate session parameters'); + } + }; + + const startKeygen = async () => { + if (!canStartKeygen) return; + + setIsPairing(true); + setProgress(0); + setStatus('Starting key generation...'); + + try { + // Prepare parties npubs CSV (sorted) + // IMPORTANT: Must use the same npubs and same sorting as session ID generation + const allNpubs: string[] = []; + if (localNpub && localNpub.trim()) { + allNpubs.push(localNpub.trim()); + } + if (peerNpub1 && peerNpub1.trim()) { + allNpubs.push(peerNpub1.trim()); + } + if (isTrio && peerNpub2 && peerNpub2.trim()) { + allNpubs.push(peerNpub2.trim()); + } + + // Validate we have the correct number + const expectedNpubs = isTrio ? 3 : 2; + if (allNpubs.length !== expectedNpubs) { + throw new Error( + `Expected ${expectedNpubs} npubs for ${ + isTrio ? 'trio' : 'duo' + } mode, but got ${allNpubs.length}`, + ); + } + + // Sort alphabetically (same as session ID generation) + const partiesNpubsCSV = allNpubs.sort().join(','); + + dbg('=== START KEYGEN ==='); + dbg('Mode:', isTrio ? 'TRIO' : 'DUO'); + dbg( + 'localNpub:', + localNpub ? localNpub.substring(0, 30) + '...' : 'MISSING', + ); + dbg( + 'partiesNpubsCSV (sorted, all npubs):', + partiesNpubsCSV.split(',').map(n => n.substring(0, 30) + '...'), + ); + + // Calculate expected peers (all npubs except local) + const expectedPeers = allNpubs.filter(n => { + const trimmedN = n.trim(); + const trimmedLocal = localNpub?.trim() || ''; + return trimmedN !== trimmedLocal; + }); + dbg( + 'Expected peers (excluding self):', + expectedPeers.map(n => n.substring(0, 30) + '...'), + ); + dbg( + 'Expected peer count:', + expectedPeers.length, + isTrio ? '(should be 2 for trio)' : '(should be 1 for duo)', + ); + + dbg('sessionID:', sessionID.substring(0, 16) + '...'); + dbg('sessionKey:', sessionKey.substring(0, 16) + '...'); + + if (isTrio && expectedPeers.length !== 2) { + dbg( + '⚠️ WARNING: In trio mode, expected 2 peers but got', + expectedPeers.length, + ); + dbg( + 'This device will wait for', + expectedPeers.length, + 'peers. Make sure all 3 devices have all npubs connected!', + ); + } + + // Prepare relays CSV + const relaysCSV = relays.join(','); + + // Save relays to cache + await LocalCache.setItem('nostr_relays', relaysCSV); + + // Log detailed info for debugging trio mode + dbg('Starting Nostr keygen with:', { + relays: relaysCSV, + parties: partiesNpubsCSV, + sessionID: sessionID, + ppmFile: ppmFile, + localNsec: localNsec ? localNsec.substring(0, 20) + '...' : 'MISSING', + partiesNpubsCSV: partiesNpubsCSV, + sessionKey: sessionKey.substring(0, 16) + '...', + chaincode: chaincode.substring(0, 16) + '...', + }); + + // Log which npubs will be sent to Go backend + const allPartiesList = partiesNpubsCSV.split(','); + dbg('=== GO BACKEND INPUT ==='); + dbg('partiesNpubsCSV (full):', partiesNpubsCSV); + dbg( + 'All parties count:', + allPartiesList.length, + isTrio ? '(should be 3 for trio)' : '(should be 2 for duo)', + ); + dbg( + 'All parties list:', + allPartiesList.map((n, i) => `${i + 1}. ${n.substring(0, 30)}...`), + ); + dbg( + 'localNpub (will be excluded by Go backend):', + localNpub ? localNpub.substring(0, 30) + '...' : 'MISSING', + ); + dbg( + 'Expected PeersNpub (after Go excludes localNpub):', + expectedPeers.map((n, i) => `${i + 1}. ${n.substring(0, 30)}...`), + ); + dbg( + 'Go backend will wait for', + expectedPeers.length, + 'peers to publish "ready" events', + ); + dbg('=== END GO BACKEND INPUT ==='); + + // Call native module + let keyshareJSON = await BBMTLibNativeModule.nostrMpcTssSetup( + relaysCSV, + localNsec, + partiesNpubsCSV, + sessionID, + sessionKey, + chaincode, + ppmFile, + ); + + // Validate keyshare and map keyshare positions + let keyshare: any; + try { + keyshare = JSON.parse(keyshareJSON); + if (!keyshare.pub_key) { + throw new Error('Invalid keyshare: missing pub_key'); + } + dbg('Keygen successful, party:', keyshare.local_party_key); + } catch (error) { + dbg('Error parsing keyshare:', error); + throw new Error('Invalid keyshare received'); + } + + // Map keyshare positions based on sorted npubs for UI display + const sortedNpubs = allNpubs.sort(); + const mapping: { + keyshare1?: {npub: string; deviceName: string; isLocal: boolean}; + keyshare2?: {npub: string; deviceName: string; isLocal: boolean}; + keyshare3?: {npub: string; deviceName: string; isLocal: boolean}; + } = {}; + + // Map npubs to keyshare positions using keygen_committee_keys order + // We need to match npubs to their corresponding hex keys in keygen_committee_keys + // For now, we'll use the sorted npubs order which should match the sorted keygen_committee_keys + sortedNpubs.forEach((npub, index) => { + const isLocal = npub === localNpub; + let mappedDeviceName = ''; + + if (isLocal) { + mappedDeviceName = deviceName || 'This device'; + } else if (npub === peerNpub1) { + mappedDeviceName = peerDeviceName1 || 'Peer 1'; + } else if (npub === peerNpub2) { + mappedDeviceName = peerDeviceName2 || 'Peer 2'; + } else { + mappedDeviceName = `Device ${index + 1}`; + } + + const keyshareKey = `keyshare${index + 1}` as + | 'keyshare1' + | 'keyshare2' + | 'keyshare3'; + mapping[keyshareKey] = { + npub, + deviceName: mappedDeviceName, + isLocal, + }; + }); + + setKeyshareMapping(mapping); + dbg('Keyshare mapping:', mapping); + + // Save keyshare (keyshare_position will be calculated on-the-fly when needed) + await EncryptedStorage.setItem('keyshare', keyshareJSON); + setMpcDone(true); + setStatus('Key generation complete!'); + // Don't navigate away, let the backup UI handle it + } catch (error: any) { + dbg('Keygen error:', error); + Alert.alert('Error', error?.message || 'Key generation failed'); + setStatus('Key generation failed'); + // Navigate to index 0 (reload same page) on keygen failure + navigation.dispatch( + CommonActions.reset({ + index: 0, + routes: [{name: 'Nostr Connect', params: route.params}], + }), + ); + } finally { + setIsPairing(false); + } + }; + + const startSendBTC = async () => { + if (!route.params) { + Alert.alert('Error', 'Missing transaction parameters'); + return; + } + + setIsPairing(true); + setProgress(0); + setStatus('Starting transaction signing...'); + + try { + // Get wallet balance in satoshis + const keyshareJSON = await EncryptedStorage.getItem('keyshare'); + if (!keyshareJSON) { + throw new Error('Keyshare not found'); + } + + const keyshare = JSON.parse(keyshareJSON); + + // Get nsec from keyshare (use local variable, not state) + let nsecToUse = localNsec; + if (!nsecToUse || !nsecToUse.startsWith('nsec1')) { + const nsecFromKeyshare = keyshare.nsec || ''; + if (nsecFromKeyshare) { + try { + let decodedNsec = ''; + + // Check if it's already in bech32 format + if (nsecFromKeyshare.startsWith('nsec1')) { + decodedNsec = nsecFromKeyshare; + } else { + // Hex decode function for React Native + const hexToString = (hex: string): string => { + let result = ''; + for (let i = 0; i < hex.length; i += 2) { + result += String.fromCharCode(parseInt(hex.substr(i, 2), 16)); + } + return result; + }; + + decodedNsec = hexToString(nsecFromKeyshare); + } + + if (decodedNsec.startsWith('nsec1')) { + nsecToUse = decodedNsec; + setLocalNsec(decodedNsec); // Update state for UI + dbg( + 'Loaded nsec from keyshare in startSendBTC:', + decodedNsec.substring(0, 20) + '...', + ); + } else { + throw new Error( + `Invalid nsec format in keyshare: ${decodedNsec.substring( + 0, + 50, + )}`, + ); + } + } catch (error) { + dbg('Error loading nsec from keyshare in startSendBTC:', error); + throw new Error(`Failed to load nsec from keyshare: ${error}`); + } + } else { + throw new Error('nsec not found in keyshare'); + } + } + + // Verify nsec is valid + if (!nsecToUse || !nsecToUse.startsWith('nsec1')) { + throw new Error( + 'Invalid nsec: nsec must be in bech32 format (nsec1...)', + ); + } + + if (!activeAddress) { + throw new Error('Active address not found'); + } + + const balance = await WalletService.getInstance().getWalletBalance( + activeAddress, + 0, + 0, + false, + ); + const balanceSats = Big(balance.btc).times(1e8).toString(); + + // IMPORTANT: For session ID, we need ALL npubs from the keyshare (all participants) + // Get all hex keys from keygen_committee_keys and convert them ALL to npubs + const allNpubsFromKeyshare: string[] = []; + + // Get all keys from keygen_committee_keys and convert them ALL to npubs + const sortedKeys = [...keyshare.keygen_committee_keys].sort(); + for (const key of sortedKeys) { + try { + // Check if it's already an npub (shouldn't happen, but handle it) + if (key && typeof key === 'string' && key.startsWith('npub1')) { + allNpubsFromKeyshare.push(key); + dbg('Key already npub format:', key.substring(0, 20) + '...'); + continue; + } + + // Validate hex key format + const hexPattern = /^[0-9a-fA-F]+$/; + if (!hexPattern.test(key)) { + dbg( + 'Invalid key format (not hex, not npub), skipping:', + key.substring(0, 20) + '...', + ); + continue; + } + + // Convert hex to npub (convert ALL keys, including local) + const npub = await BBMTLibNativeModule.hexToNpub(key); + if (npub && typeof npub === 'string' && npub.startsWith('npub1')) { + allNpubsFromKeyshare.push(npub); + dbg( + 'Converted hex to npub for session ID:', + npub.substring(0, 20) + '...', + ); + } else { + dbg('Failed to convert hex to npub, result:', npub); + } + } catch (error) { + dbg('Error converting hex to npub for session ID:', error); + } + } + + // Sort all npubs - this must match on all devices + const npubsSorted = [...allNpubsFromKeyshare].sort().join(','); + + if (npubsSorted.length === 0 || allNpubsFromKeyshare.length < 2) { + throw new Error( + `Failed to get all npubs from keyshare. Got ${allNpubsFromKeyshare.length} npubs. Please ensure all devices are loaded.`, + ); + } + + dbg( + 'All npubs for session ID:', + allNpubsFromKeyshare.map(n => n.substring(0, 20) + '...'), + ); + + // Prepare parties npubs CSV for the actual signing (only participating devices) + // IMPORTANT: Use the full npubs from allNpubsFromKeyshare (already converted from hex) + // This ensures we use the same npubs that were used for session ID calculation + // Find local npub in allNpubsFromKeyshare to ensure consistency + const localNpubFromKeyshare = + allNpubsFromKeyshare.find(n => { + // Match by checking if localNpub (from state) matches or starts with this npub + return ( + n === localNpub || + (localNpub && n.startsWith(localNpub.substring(0, 20))) + ); + }) || localNpub; // Fallback to state if not found + + const allNpubs = [localNpubFromKeyshare]; + if (isTrio) { + // For trio, use selected peer - find it by matching device in sendModeDevices + if (selectedPeerNpub) { + // Find the selected device in sendModeDevices to get its keyshareLabel + const selectedDevice = sendModeDevices.find( + d => + d.npub === selectedPeerNpub || + (selectedPeerNpub.startsWith('npub1') && + d.npub && + d.npub.startsWith(selectedPeerNpub.substring(0, 20))) || + (d.npub && selectedPeerNpub.startsWith(d.npub.substring(0, 20))), + ); + + if (selectedDevice) { + // Find the corresponding hex key in keyshare by keyshareLabel + // Use the same sortedKeys from above (already sorted) + const selectedIndex = + parseInt( + selectedDevice.keyshareLabel.replace('KeyShare', ''), + 10, + ) - 1; + + if (selectedIndex >= 0 && selectedIndex < sortedKeys.length) { + const selectedHexKey = sortedKeys[selectedIndex]; + + // Find the full npub in allNpubsFromKeyshare that corresponds to this hex key + // We need to convert the hex key to npub and find it, or match by index + // Since allNpubsFromKeyshare is built from sortedKeys in the same order, we can use index + if (selectedIndex < allNpubsFromKeyshare.length) { + const fullPeerNpub = allNpubsFromKeyshare[selectedIndex]; + // Verify it's not the local device + if (fullPeerNpub !== localNpubFromKeyshare) { + allNpubs.push(fullPeerNpub); + dbg( + 'Found full peer npub for trio by index:', + fullPeerNpub.substring(0, 20) + '...', + ); + } else { + throw new Error('Selected device is the local device'); + } + } else { + // Fallback: try to convert hex key to npub + try { + const hexPattern = /^[0-9a-fA-F]+$/; + if (hexPattern.test(selectedHexKey)) { + const convertedNpub = await BBMTLibNativeModule.hexToNpub( + selectedHexKey, + ); + if ( + convertedNpub && + convertedNpub.startsWith('npub1') && + convertedNpub !== localNpubFromKeyshare + ) { + allNpubs.push(convertedNpub); + dbg( + 'Found full peer npub for trio by conversion:', + convertedNpub.substring(0, 20) + '...', + ); + } else { + throw new Error( + 'Failed to convert selected hex key to npub', + ); + } + } else { + throw new Error('Selected hex key is not valid hex'); + } + } catch (error) { + throw new Error( + `Failed to find full npub for selected peer: ${error}`, + ); + } + } + } else { + throw new Error( + `Invalid keyshare label: ${selectedDevice.keyshareLabel}`, + ); + } + } else { + // Fallback: try direct matching in allNpubsFromKeyshare + let fullPeerNpub = allNpubsFromKeyshare.find( + n => + n === selectedPeerNpub || + (selectedPeerNpub.startsWith('npub1') && + n.startsWith(selectedPeerNpub.substring(0, 20))), + ); + + if (fullPeerNpub && fullPeerNpub !== localNpubFromKeyshare) { + allNpubs.push(fullPeerNpub); + dbg( + 'Found full peer npub for trio by direct match:', + fullPeerNpub.substring(0, 20) + '...', + ); + } else { + throw new Error( + `Failed to find full npub for selected peer: ${selectedPeerNpub.substring( + 0, + 30, + )}. Please ensure the device is fully loaded.`, + ); + } + } + } else { + throw new Error('Please select a peer device for trio mode'); + } + } else { + // For duo, use the other device from allNpubsFromKeyshare (excluding local) + const otherNpubs = allNpubsFromKeyshare.filter( + n => n !== localNpubFromKeyshare, + ); + if (otherNpubs.length > 0) { + // In duo mode, there should be exactly one other npub + allNpubs.push(otherNpubs[0]); + dbg( + 'Using other npub for duo:', + otherNpubs[0].substring(0, 20) + '...', + ); + } else { + throw new Error('Other device npub not found in keyshare'); + } + } + const partiesNpubsCSV = allNpubs.sort().join(','); + + dbg( + 'partiesNpubsCSV for signing (full npubs, length=', + partiesNpubsCSV.length, + '):', + partiesNpubsCSV.substring(0, 100) + '...', + ); + const satoshiAmount = route.params.satoshiAmount || '0'; + const satoshiFees = route.params.satoshiFees || '0'; + + // Generate session ID (includes all transaction details that must match) + // Format: sha256(npubsSorted,balance,amount,rounded) + const rounded = Math.floor(Date.now() / 90000); + + dbg( + 'session id params:', + `${npubsSorted},${balanceSats},${satoshiAmount},${rounded}`, + ); + dbg( + 'session_params', + JSON.stringify( + {npubsSorted, balanceSats, satoshiAmount, rounded}, + null, + 4, + ), + ); + + // Prepare relays CSV + const relaysCSV = relays.join(','); + + const derivePath = "m/44'/0'/0'/0/0"; + + // Derive the public key from the root key using the derivation path + // This is critical - we need the DERIVED public key, not the root! + const publicKey = await BBMTLibNativeModule.derivePubkey( + keyshare.pub_key, + keyshare.chain_code_hex, + derivePath, + ); + + dbg( + 'Derived public key for path:', + derivePath, + 'pubKey:', + publicKey.substring(0, 20) + '...', + ); + + // Generate BTC address using addressType (same as MobilesPairing.tsx) + const net = (await LocalCache.getItem('network')) || 'mainnet'; + const btcAddress = await BBMTLibNativeModule.btcAddress( + publicKey, + net, + addressType, + ); + + dbg('Starting Nostr send BTC with:', { + relays: relaysCSV, + parties: partiesNpubsCSV, + npubsSorted: npubsSorted.substring(0, 30) + '...', + balance: balanceSats, + amount: route.params?.satoshiAmount, + localNsec: nsecToUse ? nsecToUse.substring(0, 20) + '...' : 'MISSING', + derivePath: derivePath, + derivedPublicKey: publicKey.substring(0, 20) + '...', + btcAddress: btcAddress, + addressType: addressType, + estimatedFees: satoshiFees, + }); + + dbg( + 'Calling nostrMpcSendBTC (pre-agreement handled internally):', + nsecToUse.substring(0, 20) + '...', + ); + + // Call native module - pre-agreement is now handled internally in Go + // The function will calculate sessionFlag, do pre-agreement, update sessionID and fees + // Use btcAddress generated from addressType (same as MobilesPairing.tsx) + const txId = await BBMTLibNativeModule.nostrMpcSendBTC( + relaysCSV, + nsecToUse, + partiesNpubsCSV, + npubsSorted, + balanceSats, + keyshareJSON, + derivePath, + publicKey, + btcAddress, + route.params.toAddress || '', + route.params.satoshiAmount || '0', + route.params.satoshiFees || '0', + ); + + // Validate txId + const validTxID = /^[a-fA-F0-9]{64}$/.test(txId); + if (!validTxID) { + throw new Error(txId || 'Invalid transaction ID'); + } + + // Save pending transaction + const pendingTxs = JSON.parse( + (await LocalCache.getItem(`${activeAddress}-pendingTxs`)) || '{}', + ); + pendingTxs[txId] = { + txid: txId, + from: activeAddress, + to: route.params.toAddress, + amount: route.params.satoshiAmount, + satoshiAmount: route.params.satoshiAmount, + satoshiFees: route.params.satoshiFees, + sentAt: Date.now(), + status: { + confirmed: false, + block_height: null, + }, + }; + await LocalCache.setItem( + `${activeAddress}-pendingTxs`, + JSON.stringify(pendingTxs), + ); + + // Navigate to home (same as MobilesPairing.tsx) + navigation.dispatch( + CommonActions.reset({ + index: 0, + routes: [{name: 'Home', params: {txId}}], + }), + ); + + setMpcDone(true); + } catch (error: any) { + dbg('Send BTC error:', error); + Alert.alert('Error', error?.message || 'Transaction signing failed'); + setStatus('Transaction signing failed'); + } finally { + setIsPairing(false); + } + }; + + // Backup functions + const allBackupChecked = isTrio + ? backupChecks.deviceOne && + backupChecks.deviceTwo && + backupChecks.deviceThree + : backupChecks.deviceOne && backupChecks.deviceTwo; + + const toggleBackedup = (key: keyof typeof backupChecks) => { + setBackupChecks(prev => ({...prev, [key]: !prev[key]})); + }; + + const formatFiat = (price?: string) => + new Intl.NumberFormat('en-US', { + style: 'decimal', + minimumFractionDigits: 2, + maximumFractionDigits: 2, + }).format(Number(price)); + + const sat2btcStr = (sats?: string) => + Big(sats || 0) + .div(1e8) + .toFixed(8); + + const validatePassword = (pass: string) => { + const errors: string[] = []; + const rules = { + length: pass.length >= 12, + uppercase: /[A-Z]/.test(pass), + lowercase: /[a-z]/.test(pass), + number: /\d/.test(pass), + symbol: /[!@#$%^&*(),.?":{}|<>]/.test(pass), + }; + + if (!rules.length) { + errors.push('At least 12 characters'); + } + if (!rules.uppercase) { + errors.push('One uppercase letter'); + } + if (!rules.lowercase) { + errors.push('One lowercase letter'); + } + if (!rules.number) { + errors.push('One number'); + } + if (!rules.symbol) { + errors.push('One special character'); + } + setPasswordErrors(errors); + + // Calculate strength (0-4) + const strength = Object.values(rules).filter(Boolean).length; + setPasswordStrength(strength); + + return errors.length === 0; + }; + + const handlePasswordChange = (text: string) => { + setPassword(text); + validatePassword(text); + }; + + const getPasswordStrengthColor = () => { + if (passwordStrength <= 1) { + return theme.colors.danger; + } + if (passwordStrength <= 2) { + return '#FFA500'; + } + if (passwordStrength <= 3) { + return '#FFD700'; + } + return '#4CAF50'; + }; + + const getPasswordStrengthText = () => { + if (passwordStrength <= 1) { + return 'Very Weak'; + } + if (passwordStrength <= 2) { + return 'Weak'; + } + if (passwordStrength <= 3) { + return 'Medium'; + } + return 'Strong'; + }; + + const clearBackupModal = () => { + setPassword(''); + setConfirmPassword(''); + setPasswordVisible(false); + setConfirmPasswordVisible(false); + setPasswordStrength(0); + setPasswordErrors([]); + setIsBackupModalVisible(false); + }; + + async function backupShare() { + if (!validatePassword(password)) { + dbg('❌ [BACKUP] Password validation failed'); + Alert.alert( + 'Weak Password', + 'Please use a stronger password that meets all requirements.', + ); + return; + } + + if (password !== confirmPassword) { + dbg('❌ [BACKUP] Password mismatch'); + Alert.alert('Password Mismatch', 'Passwords do not match.'); + return; + } + + try { + HapticFeedback.medium(); + + const storedKeyshare = await EncryptedStorage.getItem('keyshare'); + if (storedKeyshare) { + const json = JSON.parse(storedKeyshare); + const encryptedKeyshare = await BBMTLibNativeModule.aesEncrypt( + storedKeyshare, + await BBMTLibNativeModule.sha256(password), + ); + + // Create friendly filename with date and time + const now = new Date(); + const month = now.toLocaleDateString('en-US', {month: 'short'}); + const day = now.getDate().toString().padStart(2, '0'); + const year = now.getFullYear(); + const hours = now.getHours().toString().padStart(2, '0'); + const minutes = now.getMinutes().toString().padStart(2, '0'); + // Use keyshare label (KeyShare1/2/3) or fallback to local_party_key + const keyshareLabel = getKeyshareLabel(json); + const shareName = keyshareLabel || json.local_party_key || 'keyshare'; + const friendlyFilename = `${shareName}.${month}${day}.${year}.${hours}${minutes}.share`; + + const tempDir = RNFS.TemporaryDirectoryPath || RNFS.CachesDirectoryPath; + const filePath = `${tempDir}/${friendlyFilename}`; + + await RNFS.writeFile(filePath, encryptedKeyshare, 'base64'); + + await Share.open({ + title: 'Backup Your Keyshare', + message: + 'Save this encrypted file securely. It is required for wallet recovery.', + url: `file://${filePath}`, + type: 'application/octet-stream', + filename: friendlyFilename, + failOnCancel: false, + }); + + try { + await RNFS.unlink(filePath); + } catch {} + clearBackupModal(); + } else { + Alert.alert('Error', 'Invalid keyshare.'); + } + } catch (error) { + dbg('Error encrypting or sharing keyshare:', error); + Alert.alert('Error', 'Failed to encrypt or share the keyshare.'); + } + } + + const copyConnectionDetails = () => { + Clipboard.setString(connectionDetails); + HapticFeedback.medium(); + Alert.alert( + 'Copied', + '- Pairing data copied.\n- Paste them to other device(s)', + ); + }; + + const shareConnectionDetails = async () => { + HapticFeedback.medium(); + + if (!connectionDetails) { + Alert.alert('Error', 'Connection details are not ready yet'); + return; + } + + if (!connectionQrRef.current) { + Alert.alert('Error', 'QR Code is not ready yet'); + return; + } + + try { + // Generate base64 from QR component (similar to WalletHome ReceiveModal) + const base64Data: string = await new Promise((resolve, reject) => { + connectionQrRef.current.toDataURL((data: string) => { + if (data) { + resolve(data); + } else { + reject(new Error('No base64 data returned from QR code')); + } + }); + }); + + const filePath = `${RNFS.TemporaryDirectoryPath}/boldwallet-connection-details.jpg`; + const fileExists = await RNFS.exists(filePath); + if (fileExists) { + await RNFS.unlink(filePath); + } + + await RNFS.writeFile(filePath, base64Data, 'base64'); + + await Share.open({ + title: 'Bold Wallet Connection Details', + message: connectionDetails, + url: `file://${filePath}`, + subject: 'Bold Wallet Connection Details', + isNewTask: true, + failOnCancel: false, + }); + + // Best-effort cleanup + await RNFS.unlink(filePath).catch(() => {}); + + setIsQRModalVisible(false); + } catch (error: any) { + dbg('Error sharing connection details (QR + text):', error); + Alert.alert('Error', 'Failed to share connection QR code'); + } + }; + + const showQRModal = () => { + HapticFeedback.medium(); + setIsQRModalVisible(true); + }; + + const handleQRScan = (data: string, peerNum?: 1 | 2) => { + HapticFeedback.medium(); + // FOSS version: No need to close iOS scanner modal (removed) + // Use provided peerNum, or fallback to scanningForPeerRef (more reliable than state) + const targetPeer = peerNum || scanningForPeerRef.current; + dbg( + `handleQRScan: data="${data.substring( + 0, + 30, + )}...", peerNum=${targetPeer}, scanningForPeerRef=${ + scanningForPeerRef.current + }`, + ); + handlePeerConnectionInput(data, targetPeer); + }; + + const handlePaste = async (peerNum: 1 | 2) => { + try { + const text = await Clipboard.getString(); + dbg(`handlePaste: peerNum=${peerNum}, pasted text="${text}"`); + HapticFeedback.medium(); + + // Update the input field immediately so user can see what was pasted + if (peerNum === 1) { + setPeerConnectionDetails1(text); + } else { + setPeerConnectionDetails2(text); + } + + // Then validate the input + await handlePeerConnectionInput(text, peerNum); + } catch (error) { + dbg('Error pasting:', error); + Alert.alert('Error', 'Failed to paste from clipboard'); + } + }; + + const clearPeerConnection = (peerNum: 1 | 2) => { + HapticFeedback.medium(); + if (peerNum === 1) { + setPeerNpub1(''); + setPeerDeviceName1(''); + setPeerNonce1(''); + setPeerConnectionDetails1(''); + setPeerInputError1(''); + } else { + setPeerNpub2(''); + setPeerDeviceName2(''); + setPeerNonce2(''); + setPeerConnectionDetails2(''); + setPeerInputError2(''); + } + }; + + const deletePreparams = async () => { + try { + dbg(`deleting ppmFile: ${ppmFile}`); + await RNFS.unlink(ppmFile); + dbg('ppmFile deleted'); + } catch (err: any) { + dbg('error deleting ppmFile', err); + } + }; + + const prepareDevice = async () => { + setIsPreparing(true); + setIsPreParamsReady(false); + setPrepCounter(0); + + const timeoutMinutes = 20; + + if (!__DEV__) { + await deletePreparams(); + } else { + dbg('preparams dev: Not deleting ppmFile'); + } + + try { + await BBMTLibNativeModule.preparams(ppmFile, String(timeoutMinutes)); + setIsPreParamsReady(true); + HapticFeedback.medium(); + dbg('Device prepared successfully'); + } catch (error: any) { + setIsPreParamsReady(false); + dbg('Error preparing device:', error); + Alert.alert('Error', error?.toString() || 'Failed to prepare device'); + } finally { + setIsPreparing(false); + setPrepCounter(0); + } + }; + + // Increment prep counter when preparing + useEffect(() => { + if (isPreparing) { + const interval = setInterval(() => { + setPrepCounter(prevCounter => prevCounter + 1); + }, 1000); + return () => clearInterval(interval); + } + }, [isPreparing]); + + // Track elapsed time during keygen and signing + useEffect(() => { + if (isPairing) { + setPrepCounter(0); + const interval = setInterval(() => { + setPrepCounter(prevCounter => prevCounter + 1); + }, 1000); + return () => clearInterval(interval); + } + }, [isPairing]); + + // Animation for horizontal progress bar + useEffect(() => { + if (isPreparing) { + // Stop any existing animation first + if (progressAnimationLoop.current) { + progressAnimationLoop.current.stop(); + progressAnimationLoop.current = null; + } + + // Small delay to ensure modal is mounted before starting animation + const timeoutId = setTimeout(() => { + // Reset value before starting new animation (only when modal is mounted) + progressAnimation.setValue(0); + + // Start new animation loop + progressAnimationLoop.current = Animated.loop( + Animated.sequence([ + Animated.timing(progressAnimation, { + toValue: 1, + duration: 2000, + useNativeDriver: false, + }), + Animated.timing(progressAnimation, { + toValue: 0, + duration: 2000, + useNativeDriver: false, + }), + ]), + ); + progressAnimationLoop.current.start(); + }, 150); + + return () => { + clearTimeout(timeoutId); + if (progressAnimationLoop.current) { + progressAnimationLoop.current.stop(); + progressAnimationLoop.current = null; + } + // Stop any running animation without setting value + progressAnimation.stopAnimation(); + }; + } else { + // Stop animation without setting value to avoid warning + if (progressAnimationLoop.current) { + progressAnimationLoop.current.stop(); + progressAnimationLoop.current = null; + } + // Stop any running animation + progressAnimation.stopAnimation(); + } + // eslint-disable-next-line react-hooks/exhaustive-deps + }, [isPreparing]); + + // Styles + const styles = StyleSheet.create({ + container: { + flex: 1, + backgroundColor: theme.colors.background, + }, + scrollView: { + flex: 1, + }, + content: { + padding: 20, + }, + section: { + marginBottom: 8, + }, + sectionTitle: { + fontSize: 18, + fontWeight: '700', + color: theme.colors.text, + marginBottom: 12, + }, + card: { + backgroundColor: theme.colors.cardBackground, + borderRadius: 12, + padding: 4, + borderWidth: 1, + borderColor: theme.colors.border + '40', + }, + cardSelected: { + borderColor: theme.colors.primary, + borderWidth: 2, + backgroundColor: theme.colors.primary + '10', + }, + deviceInfoRowWithCheckbox: { + flexDirection: 'row', + alignItems: 'center', + justifyContent: 'space-between', + marginBottom: 12, + paddingVertical: 8, + }, + peerCheckbox: { + width: 24, + height: 24, + borderRadius: 6, + borderWidth: 2, + borderColor: theme.colors.border, + backgroundColor: theme.colors.cardBackground, + alignItems: 'center', + justifyContent: 'center', + marginLeft: 12, + }, + peerCheckboxChecked: { + borderColor: theme.colors.primary, + backgroundColor: theme.colors.primary, + }, + peerCheckmark: { + color: theme.colors.white, + fontSize: 16, + fontWeight: '700', + }, + input: { + borderWidth: 1.5, + borderColor: theme.colors.border + '40', + borderRadius: 12, + paddingHorizontal: 16, + paddingVertical: 14, + fontSize: 16, + color: theme.colors.text, + backgroundColor: 'rgba(0,0,0,0.02)', + }, + inputFocused: { + borderColor: theme.colors.primary, + backgroundColor: 'rgba(0,0,0,0.03)', + }, + inputWithIcons: { + flexDirection: 'row', + alignItems: 'center', + gap: 8, + }, + inputFlex: { + flex: 1, + }, + inputCentered: { + textAlignVertical: 'center', + }, + inputTextDisplay: { + paddingVertical: 14, + lineHeight: 20, + }, + iconButton: { + width: 48, + height: 48, + borderRadius: 12, + backgroundColor: theme.colors.primary + '20', + alignItems: 'center', + justifyContent: 'center', + }, + iconButtonCentered: { + alignSelf: 'center', + }, + deviceInfoRow: { + flexDirection: 'row', + alignItems: 'center', + marginBottom: 8, + paddingVertical: 4, + }, + deviceInfoSingleLine: { + fontSize: 14, + fontWeight: '600', + fontFamily: Platform.OS === 'ios' ? 'Menlo' : 'monospace', + color: theme.colors.text, + flex: 1, + textAlign: 'center', + overflow: 'hidden', + }, + deviceInfoContent: { + flex: 1, + }, + hintBox: { + backgroundColor: theme.colors.primary + '10', + borderRadius: 8, + padding: 6, + borderLeftWidth: 3, + borderLeftColor: theme.colors.primary, + }, + hintText: { + fontSize: 13, + color: theme.colors.text, + lineHeight: 18, + }, + sendModeDeviceItem: { + flexDirection: 'row', + alignItems: 'center', + backgroundColor: theme.colors.cardBackground, + borderRadius: 10, + paddingVertical: 10, + paddingHorizontal: 12, + marginBottom: 8, + borderWidth: 1, + borderColor: theme.colors.border + '30', + }, + sendModeDeviceItemSelected: { + borderColor: theme.colors.primary, + borderWidth: 1.5, + backgroundColor: theme.colors.primary + '08', + }, + sendModeDeviceIcon: { + width: 20, + height: 20, + tintColor: theme.colors.primary, + marginRight: 10, + }, + sendModeDeviceContent: { + flex: 1, + flexDirection: 'row', + alignItems: 'center', + justifyContent: 'space-between', + }, + sendModeDeviceLabel: { + fontSize: 14, + fontWeight: '600', + color: theme.colors.text, + fontFamily: Platform.OS === 'ios' ? 'Menlo' : 'monospace', + }, + sendModeDeviceNpub: { + fontSize: 12, + color: theme.colors.textSecondary, + fontFamily: Platform.OS === 'ios' ? 'Menlo' : 'monospace', + marginLeft: 8, + }, + sendModeDeviceBadge: { + fontSize: 11, + color: theme.colors.primary, + marginTop: 2, + fontWeight: '500', + }, + sendModeCheckbox: { + width: 22, + height: 22, + borderRadius: 6, + borderWidth: 2, + borderColor: theme.colors.border, + backgroundColor: theme.colors.cardBackground, + alignItems: 'center', + justifyContent: 'center', + marginLeft: 8, + }, + sendModeCheckboxChecked: { + borderColor: theme.colors.primary, + backgroundColor: theme.colors.primary, + }, + sendModeCheckmark: { + color: theme.colors.background, + fontSize: 14, + fontWeight: '700', + }, + buttonHalf: { + flex: 0.48, + }, + buttonCompact: { + flex: 1, + backgroundColor: 'transparent', + borderRadius: 8, + paddingVertical: 10, + paddingHorizontal: 12, + alignItems: 'center', + justifyContent: 'center', + flexDirection: 'row', + gap: 6, + borderWidth: 1.5, + borderColor: theme.colors.border, + }, + buttonTextCompact: { + fontSize: 14, + fontWeight: '600', + }, + iconImageCompact: { + width: 18, + height: 18, + tintColor: theme.colors.primary, + }, + iconImage: { + width: 24, + height: 24, + tintColor: theme.colors.primary, + }, + iconPrepare: { + width: 24, + height: 24, + tintColor: theme.colors.textOnPrimary, + }, + iconShare: { + width: 24, + height: 24, + tintColor: theme.colors.textOnPrimary, + }, + checkIconLeft: { + width: 20, + height: 20, + tintColor: '#4CAF50', + marginRight: 8, + }, + qrContainer: { + backgroundColor: 'white', + padding: 16, + borderRadius: 12, + alignItems: 'center', + marginBottom: 16, + }, + connectionDetailsText: { + fontSize: 12, + fontFamily: Platform.OS === 'ios' ? 'Menlo' : 'monospace', + color: theme.colors.textSecondary, + marginBottom: 12, + textAlign: 'center', + }, + buttonRow: { + flexDirection: 'row', + gap: 12, + marginBottom: 12, + }, + button: { + flex: 1, + backgroundColor: theme.colors.primary, + borderRadius: 12, + paddingVertical: 14, + alignItems: 'center', + justifyContent: 'center', + flexDirection: 'row', + gap: 8, + }, + buttonSecondary: { + backgroundColor: 'transparent', + borderWidth: 2, + borderColor: theme.colors.border, + }, + buttonText: { + color: theme.colors.background, + fontSize: 16, + fontWeight: '600', + }, + buttonTextSecondary: { + color: theme.colors.secondary, + }, + buttonDisabled: { + opacity: 0.5, + }, + statusIndicator: { + width: 8, + height: 8, + borderRadius: 4, + backgroundColor: theme.colors.primary, + marginRight: 8, + }, + modalSubtitle: { + fontSize: 14, + color: theme.colors.textSecondary, + marginBottom: 16, + fontFamily: Platform.OS === 'ios' ? 'System' : 'Roboto', + textAlign: 'center', + lineHeight: 20, + }, + progressCircle: { + marginBottom: 16, + }, + progressTextWrapper: { + position: 'absolute', + top: 0, + left: 0, + right: 0, + bottom: 0, + justifyContent: 'center', + alignItems: 'center', + }, + progressPercentage: { + fontSize: 14, + fontWeight: 'bold', + color: theme.colors.text, + fontFamily: Platform.OS === 'ios' ? 'System' : 'Roboto', + textAlign: 'center', + marginBottom: 16, + }, + modalIconContainer: { + marginBottom: 10, + alignItems: 'center', + }, + modalIconBackground: { + width: 50, + height: 50, + borderRadius: 25, + backgroundColor: theme.colors.primary + '20', + alignItems: 'center', + justifyContent: 'center', + }, + finalizingModalIcon: { + width: 24, + height: 24, + tintColor: theme.colors.primary, + }, + statusContainer: { + width: '100%', + marginTop: 8, + }, + statusRow: { + flexDirection: 'row', + alignItems: 'center', + marginBottom: 8, + }, + finalizingStatusText: { + fontSize: 14, + color: theme.colors.text, + fontWeight: '500', + fontFamily: Platform.OS === 'ios' ? 'System' : 'Roboto', + flex: 1, + }, + finalizingCountdownText: { + fontSize: 13, + color: theme.colors.textSecondary, + fontFamily: Platform.OS === 'ios' ? 'System' : 'Roboto', + textAlign: 'center', + }, + statusCheck: { + width: 20, + height: 20, + tintColor: theme.colors.primary, + }, + statusText: { + fontSize: 14, + color: theme.colors.text, + fontWeight: '500', + }, + statusTextSecondary: { + color: theme.colors.textSecondary, + }, + progressContainer: { + marginTop: 20, + alignItems: 'center', + }, + progressText: { + fontSize: 14, + color: theme.colors.textSecondary, + marginTop: 8, + }, + scannerContainer: { + flex: 1, + justifyContent: 'center', + alignItems: 'center', + }, + qrFrame: { + width: 250, + height: 250, + borderWidth: 2, + borderColor: theme.colors.primary, + borderRadius: 12, + }, + closeScannerButton: { + position: 'absolute', + bottom: 40, + backgroundColor: theme.colors.primary, + paddingHorizontal: 24, + paddingVertical: 12, + borderRadius: 12, + }, + closeScannerButtonText: { + color: theme.colors.background, + fontSize: 16, + fontWeight: '600', + }, + cameraNotFound: { + color: theme.colors.text, + fontSize: 16, + }, + sessionInfo: { + marginTop: 12, + padding: 12, + backgroundColor: 'rgba(0,0,0,0.02)', + borderRadius: 8, + }, + sessionInfoText: { + fontSize: 11, + fontFamily: Platform.OS === 'ios' ? 'Menlo' : 'monospace', + color: theme.colors.textSecondary, + marginBottom: 4, + }, + modalOverlay: { + flex: 1, + backgroundColor: 'rgba(0,0,0,0.75)', + alignItems: 'center', + justifyContent: 'center', + }, + qrModalContent: { + backgroundColor: theme.colors.cardBackground, + borderRadius: 16, + width: '85%', + maxWidth: 400, + shadowColor: '#000', + shadowOffset: {width: 0, height: 10}, + shadowOpacity: 0.3, + shadowRadius: 20, + elevation: 10, + overflow: 'hidden', + }, + qrModalHeader: { + flexDirection: 'row', + justifyContent: 'space-between', + alignItems: 'center', + paddingHorizontal: 24, + paddingTop: 24, + paddingBottom: 16, + borderBottomWidth: 1, + borderBottomColor: theme.colors.border + '40', + }, + qrModalTitle: { + fontSize: 18, + fontWeight: '700', + color: theme.colors.text, + }, + qrModalDescription: { + fontSize: 14, + color: theme.colors.textSecondary, + textAlign: 'center', + marginTop: 12, + lineHeight: 20, + }, + qrModalCloseButton: { + width: 32, + height: 32, + borderRadius: 16, + backgroundColor: theme.colors.subPrimary + '10', + alignItems: 'center', + justifyContent: 'center', + borderWidth: 1, + borderColor: theme.colors.border + '10', + }, + qrModalCloseText: { + fontSize: 18, + color: theme.colors.text, + fontWeight: '600', + }, + qrModalBody: { + padding: 24, + alignItems: 'center', + }, + headerRow: { + flexDirection: 'row', + justifyContent: 'space-between', + alignItems: 'center', + }, + headerContent: { + flex: 1, + alignItems: 'center', + }, + sectionSubtitle: { + fontSize: 14, + color: theme.colors.textSecondary, + marginTop: 4, + }, + helpButton: { + width: 36, + height: 36, + borderRadius: 18, + backgroundColor: theme.colors.primary + '20', + alignItems: 'center', + justifyContent: 'center', + marginRight: 12, + }, + helpIcon: { + width: 20, + height: 20, + tintColor: theme.colors.primary, + }, + stepIndicatorContainer: { + marginBottom: 8, + paddingVertical: 8, + }, + stepRow: { + flexDirection: 'row', + alignItems: 'center', + justifyContent: 'center', + marginBottom: 8, + }, + stepCircle: { + width: 32, + height: 32, + borderRadius: 16, + backgroundColor: theme.colors.border + '40', + alignItems: 'center', + justifyContent: 'center', + borderWidth: 2, + borderColor: theme.colors.border, + }, + stepCircleCompleted: { + backgroundColor: theme.colors.primary, + borderColor: theme.colors.primary, + }, + stepNumber: { + fontSize: 14, + fontWeight: '700', + color: theme.colors.textSecondary, + }, + stepNumberCompleted: { + color: theme.colors.background, + }, + stepLine: { + flex: 1, + height: 2, + backgroundColor: theme.colors.border + '40', + marginHorizontal: 8, + }, + stepLabels: { + flexDirection: 'row', + justifyContent: 'space-between', + paddingHorizontal: 16, + marginTop: 4, + }, + stepLabel: { + fontSize: 11, + color: theme.colors.textSecondary, + textAlign: 'center', + flex: 1, + }, + collapsibleHeader: { + paddingVertical: 12, + paddingHorizontal: 16, + backgroundColor: theme.colors.cardBackground, + borderRadius: 8, + borderWidth: 1, + borderColor: theme.colors.border + '40', + }, + collapsibleHeaderText: { + fontSize: 13, + fontWeight: '600', + color: theme.colors.textSecondary, + }, + collapsibleContent: { + marginTop: 8, + padding: 16, + backgroundColor: theme.colors.cardBackground, + borderRadius: 8, + borderWidth: 1, + borderColor: theme.colors.border + '40', + }, + sectionHeaderRow: { + flexDirection: 'row', + justifyContent: 'space-between', + alignItems: 'center', + marginBottom: 12, + }, + primaryActionButton: { + flexDirection: 'row', + alignItems: 'center', + backgroundColor: theme.colors.primary, + paddingHorizontal: 16, + paddingVertical: 10, + borderRadius: 8, + gap: 6, + }, + emptyStateContainer: { + alignItems: 'center', + paddingVertical: 20, + marginBottom: 16, + }, + emptyStateIcon: { + width: 48, + height: 48, + marginBottom: 12, + opacity: 0.5, + }, + emptyStateText: { + fontSize: 13, + color: theme.colors.textSecondary, + textAlign: 'center', + paddingHorizontal: 20, + lineHeight: 18, + }, + readyCard: { + backgroundColor: theme.colors.primary + '10', + borderColor: theme.colors.primary, + borderWidth: 2, + }, + helpModalBody: { + maxHeight: 400, + padding: 24, + }, + helpSection: { + marginBottom: 24, + }, + helpTitle: { + fontSize: 16, + fontWeight: '700', + color: theme.colors.text, + marginBottom: 8, + }, + helpText: { + fontSize: 14, + color: theme.colors.textSecondary, + lineHeight: 20, + }, + inputError: { + borderColor: theme.colors.danger || '#FF3B30', + backgroundColor: (theme.colors.danger || '#FF3B30') + '10', + }, + inputSuccess: { + borderColor: theme.colors.primary, + backgroundColor: theme.colors.primary + '10', + }, + inputValidating: { + borderColor: theme.colors.textSecondary, + backgroundColor: theme.colors.textSecondary + '05', + }, + errorIndicator: { + marginTop: 8, + padding: 8, + backgroundColor: (theme.colors.danger || '#FF3B30') + '10', + borderRadius: 6, + borderLeftWidth: 3, + borderLeftColor: theme.colors.danger || '#FF3B30', + }, + errorText: { + fontSize: 12, + color: theme.colors.danger || '#FF3B30', + fontWeight: '500', + }, + validatingIndicator: { + width: 48, + height: 48, + alignItems: 'center', + justifyContent: 'center', + }, + validatingText: { + fontSize: 18, + color: theme.colors.textSecondary, + fontWeight: '600', + }, + checkboxContainer: { + flexDirection: 'row', + alignItems: 'center', + marginTop: 16, + paddingVertical: 8, + }, + checkbox: { + width: 24, + height: 24, + borderRadius: 6, + borderWidth: 2, + borderColor: theme.colors.border, + backgroundColor: 'transparent', + marginRight: 12, + alignItems: 'center', + justifyContent: 'center', + }, + checkboxChecked: { + backgroundColor: theme.colors.primary, + borderColor: theme.colors.primary, + }, + checkboxCheckmark: { + color: theme.colors.background, + fontSize: 16, + fontWeight: '700', + }, + checkboxLabel: { + fontSize: 14, + color: theme.colors.text, + flex: 1, + }, + preparingModalContent: { + backgroundColor: theme.colors.cardBackground, + borderRadius: 16, + padding: 24, + width: '90%', + maxWidth: 400, + alignItems: 'center', + shadowColor: '#000', + shadowOffset: {width: 0, height: 8}, + shadowOpacity: 0.25, + shadowRadius: 16, + elevation: 8, + }, + preparingModalIconContainer: { + marginBottom: 16, + alignItems: 'center', + }, + preparingModalIconBackground: { + width: 64, + height: 64, + borderRadius: 32, + backgroundColor: theme.colors.primary + '20', + alignItems: 'center', + justifyContent: 'center', + }, + preparingModalIcon: { + width: 32, + height: 32, + tintColor: theme.colors.primary, + }, + preparingModalTitle: { + fontSize: 20, + fontWeight: '700', + color: theme.colors.text, + textAlign: 'center', + marginBottom: 8, + }, + preparingModalSubtitle: { + fontSize: 14, + color: theme.colors.textSecondary, + textAlign: 'center', + marginBottom: 24, + }, + preparingProgressContainer: { + width: '100%', + alignItems: 'center', + marginBottom: 16, + }, + preparingProgressTrack: { + width: 200, + height: 6, + backgroundColor: theme.colors.border + '40', + borderRadius: 3, + overflow: 'hidden', + }, + preparingProgressBar: { + height: '100%', + borderRadius: 3, + }, + preparingStatusContainer: { + width: '100%', + marginTop: 8, + }, + preparingStatusRow: { + flexDirection: 'row', + alignItems: 'center', + marginBottom: 8, + justifyContent: 'center', + }, + preparingStatusIndicator: { + width: 8, + height: 8, + borderRadius: 4, + backgroundColor: theme.colors.primary, + marginRight: 8, + }, + preparingStatusText: { + fontSize: 14, + color: theme.colors.text, + fontWeight: '500', + }, + preparingCountdownText: { + fontSize: 13, + color: theme.colors.textSecondary, + textAlign: 'center', + }, + informationCard: { + backgroundColor: theme.colors.cardBackground, + borderRadius: 16, + padding: 20, + marginBottom: 16, + shadowColor: theme.colors.shadowColor, + shadowOffset: {width: 0, height: 2}, + shadowOpacity: 0.1, + shadowRadius: 8, + elevation: 3, + borderWidth: 1, + borderColor: theme.colors.border, + }, + backupButton: { + marginTop: 12, + backgroundColor: theme.colors.subPrimary, + width: '100%', + borderRadius: 12, + paddingVertical: 14, + paddingHorizontal: 16, + alignItems: 'center', + justifyContent: 'center', + alignSelf: 'center', + shadowColor: theme.colors.shadowColor, + shadowOffset: {width: 0, height: 4}, + shadowOpacity: 0.15, + shadowRadius: 8, + elevation: 4, + }, + backupButtonText: { + color: theme.colors.background, + fontSize: 16, + fontWeight: '600', + fontFamily: Platform.OS === 'ios' ? 'System' : 'Roboto', + textAlign: 'center', + lineHeight: 22, + }, + backupConfirmationHeader: { + flexDirection: 'row', + alignItems: 'center', + marginBottom: 12, + }, + backupConfirmationIcon: { + width: 24, + height: 24, + borderRadius: 12, + backgroundColor: theme.colors.secondary, + alignItems: 'center', + justifyContent: 'center', + marginRight: 12, + }, + backupConfirmationIconText: { + color: theme.colors.background, + fontSize: 14, + fontWeight: 'bold', + }, + backupConfirmationTitle: { + fontSize: 18, + fontWeight: '700', + color: theme.colors.text, + fontFamily: Platform.OS === 'ios' ? 'System' : 'Roboto', + }, + backupConfirmationDescription: { + fontSize: 14, + color: theme.colors.textSecondary, + fontFamily: Platform.OS === 'ios' ? 'System' : 'Roboto', + lineHeight: 20, + marginBottom: 10, + }, + backupConfirmationContainer: { + marginBottom: 4, + }, + enhancedBackupCheckbox: { + flexDirection: 'row', + alignItems: 'center', + paddingVertical: 8, + paddingHorizontal: 12, + marginVertical: 3, + borderRadius: 12, + backgroundColor: 'transparent', + }, + enhancedBackupCheckboxChecked: { + backgroundColor: theme.colors.secondary + '15', + }, + backupCheckboxContent: { + flex: 1, + marginLeft: 12, + }, + backupCheckboxLabel: { + fontSize: 15, + fontWeight: '600', + color: theme.colors.text, + fontFamily: Platform.OS === 'ios' ? 'System' : 'Roboto', + marginBottom: 2, + }, + backupCheckboxHint: { + fontSize: 12, + color: theme.colors.textSecondary, + fontFamily: Platform.OS === 'ios' ? 'System' : 'Roboto', + fontStyle: 'italic', + }, + backupCheckIcon: { + width: 20, + height: 20, + // tintColor will be set conditionally in the component + }, + enhancedCheckbox: { + width: 24, + height: 24, + borderRadius: 6, + borderWidth: 2, + borderColor: theme.colors.primary, + justifyContent: 'center', + alignItems: 'center', + backgroundColor: 'transparent', + marginRight: 12, + }, + enhancedCheckboxChecked: { + backgroundColor: theme.colors.primary, + borderColor: theme.colors.primary, + }, + checkmark: { + color: theme.colors.background, + fontSize: 16, + fontWeight: 'bold', + }, + enhancedCheckboxContainer: { + flexDirection: 'row', + alignItems: 'center', + paddingHorizontal: 8, + marginVertical: 2, + marginHorizontal: 4, + paddingVertical: 2, + borderRadius: 8, + backgroundColor: 'transparent', + }, + enhancedCheckboxContainerChecked: { + backgroundColor: theme.colors.primary + '10', + }, + checkboxTextContainer: { + flex: 1, + padding: 8, + }, + enhancedCheckboxLabel: { + fontSize: 15, + fontWeight: '500', + color: theme.colors.text, + fontFamily: Platform.OS === 'ios' ? 'System' : 'Roboto', + }, + warningHint: { + fontSize: 12, + color: theme.colors.textSecondary, + fontFamily: Platform.OS === 'ios' ? 'System' : 'Roboto', + marginTop: 2, + fontStyle: 'italic', + }, + warningIcon: { + fontSize: 18, + marginLeft: 8, + }, + finalStepHeader: { + flexDirection: 'row', + alignItems: 'center', + marginBottom: 12, + padding: 12, + backgroundColor: theme.colors.background, + borderRadius: 12, + }, + finalStepIconContainer: { + marginRight: 12, + }, + finalStepPhoneIcon: { + width: 24, + height: 24, + tintColor: theme.colors.primary, + }, + finalStepTextContainer: { + flex: 1, + }, + finalStepTitle: { + fontSize: 18, + fontWeight: '700', + color: theme.colors.text, + fontFamily: Platform.OS === 'ios' ? 'System' : 'Roboto', + marginBottom: 4, + }, + finalStepDescription: { + fontSize: 14, + color: theme.colors.textSecondary, + marginBottom: 12, + lineHeight: 20, + fontFamily: Platform.OS === 'ios' ? 'System' : 'Roboto', + }, + participantsList: { + marginTop: 8, + marginBottom: 12, + paddingHorizontal: 12, + paddingVertical: 12, + backgroundColor: theme.colors.cardBackground + '80', + borderRadius: 8, + borderWidth: 1, + borderColor: theme.colors.border + '30', + }, + participantsListTitle: { + fontSize: 13, + fontWeight: '600', + color: theme.colors.text, + marginBottom: 8, + }, + participantItem: { + flexDirection: 'row', + alignItems: 'flex-start', + marginBottom: 8, + }, + bulletPoint: { + fontSize: 16, + color: theme.colors.primary, + marginRight: 8, + marginTop: 2, + fontWeight: 'bold', + }, + participantText: { + flex: 1, + fontSize: 13, + color: theme.colors.text, + lineHeight: 18, + }, + participantLabel: { + fontWeight: '600', + color: theme.colors.text, + }, + localDeviceBadge: { + fontSize: 12, + fontWeight: '500', + color: theme.colors.primary, + fontStyle: 'italic', + }, + participantNpub: { + fontSize: 12, + color: theme.colors.textSecondary, + fontFamily: Platform.OS === 'ios' ? 'Menlo' : 'monospace', + marginTop: 2, + }, + participantDevicesInfo: { + marginTop: 12, + paddingTop: 12, + borderTopWidth: 1, + borderTopColor: theme.colors.border + '40', + }, + participantDevicesInfoTitle: { + fontSize: 14, + fontWeight: '600', + color: theme.colors.text, + marginBottom: 10, + }, + participantDeviceItem: { + flexDirection: 'row', + alignItems: 'center', + justifyContent: 'space-between', + marginBottom: 10, + paddingVertical: 6, + paddingHorizontal: 8, + backgroundColor: theme.colors.cardBackground, + borderRadius: 8, + borderWidth: 1, + borderColor: theme.colors.border + '30', + }, + participantDeviceLeft: { + flexDirection: 'row', + alignItems: 'center', + flex: 1, + }, + participantDeviceIcon: { + width: 18, + height: 18, + tintColor: theme.colors.primary, + marginRight: 10, + }, + participantDeviceLabel: { + fontSize: 13, + fontWeight: '600', + color: theme.colors.text, + }, + participantDeviceNpub: { + fontSize: 12, + color: theme.colors.textSecondary, + fontFamily: Platform.OS === 'ios' ? 'Menlo' : 'monospace', + textAlign: 'right', + }, + twoPhonesContainer: { + flexDirection: 'row', + alignItems: 'center', + marginLeft: 8, + }, + threeDevicesContainer: { + flexDirection: 'row', + alignItems: 'center', + justifyContent: 'space-between', + }, + firstPhone: { + marginLeft: 0, + marginRight: -4, + zIndex: 2, + }, + secondPhone: { + marginLeft: 0, + opacity: 0.7, + zIndex: 1, + }, + thirdPhone: { + marginLeft: 0, + opacity: 0.5, + zIndex: 0, + }, + proceedButtonOn: { + marginTop: 16, + backgroundColor: theme.colors.primary, + borderRadius: 12, + paddingVertical: 16, + paddingHorizontal: 24, + alignItems: 'center', + justifyContent: 'center', + width: '100%', + alignSelf: 'center', + shadowColor: theme.colors.shadowColor, + shadowOffset: {width: 0, height: 4}, + shadowOpacity: 0.15, + shadowRadius: 8, + elevation: 4, + }, + proceedButtonOff: { + marginTop: 16, + backgroundColor: theme.colors.textSecondary, + borderRadius: 12, + paddingVertical: 16, + paddingHorizontal: 24, + alignItems: 'center', + justifyContent: 'center', + width: '100%', + alignSelf: 'center', + opacity: 0.6, + }, + pairButtonText: { + color: theme.colors.textOnPrimary, + fontSize: 16, + fontWeight: '600', + fontFamily: Platform.OS === 'ios' ? 'System' : 'Roboto', + }, + buttonContent: { + flexDirection: 'row', + alignItems: 'center', + justifyContent: 'center', + gap: 8, + }, + buttonIcon: { + width: 20, + height: 20, + tintColor: theme.colors.background, + }, + modalContent: { + backgroundColor: theme.colors.cardBackground, + borderRadius: 20, + padding: 24, + width: '90%', + maxWidth: 400, + shadowColor: '#000', + shadowOffset: {width: 0, height: 10}, + shadowOpacity: 0.3, + shadowRadius: 20, + elevation: 10, + }, + modalHeader: { + flexDirection: 'row', + alignItems: 'center', + marginBottom: 16, + }, + modalIcon: { + width: 32, + height: 32, + marginRight: 12, + tintColor: theme.colors.primary, + }, + modalTitle: { + fontSize: 20, + fontWeight: '700', + color: theme.colors.text, + fontFamily: Platform.OS === 'ios' ? 'System' : 'Roboto', + }, + modalDescription: { + fontSize: 14, + color: theme.colors.textSecondary, + marginBottom: 20, + fontFamily: Platform.OS === 'ios' ? 'System' : 'Roboto', + lineHeight: 20, + }, + passwordContainer: { + marginBottom: 16, + }, + passwordLabel: { + fontSize: 14, + fontWeight: '600', + color: theme.colors.text, + marginBottom: 8, + fontFamily: Platform.OS === 'ios' ? 'System' : 'Roboto', + }, + passwordInputContainer: { + flexDirection: 'row', + alignItems: 'center', + backgroundColor: theme.colors.background, + borderRadius: 12, + borderWidth: 1, + borderColor: theme.colors.border, + paddingHorizontal: 12, + }, + passwordInput: { + flex: 1, + paddingVertical: 12, + fontSize: 16, + color: theme.colors.text, + fontFamily: Platform.OS === 'ios' ? 'System' : 'Roboto', + }, + eyeButton: { + padding: 8, + }, + eyeIcon: { + width: 20, + height: 20, + tintColor: theme.colors.textSecondary, + }, + strengthContainer: { + marginTop: 8, + }, + strengthBar: { + height: 4, + backgroundColor: theme.colors.border, + borderRadius: 2, + overflow: 'hidden', + marginBottom: 4, + }, + strengthFill: { + height: '100%', + borderRadius: 2, + }, + strengthText: { + fontSize: 12, + fontWeight: '600', + fontFamily: Platform.OS === 'ios' ? 'System' : 'Roboto', + }, + requirementsContainer: { + marginTop: 8, + paddingLeft: 4, + }, + requirementText: { + fontSize: 12, + color: theme.colors.textSecondary, + marginBottom: 4, + fontFamily: Platform.OS === 'ios' ? 'System' : 'Roboto', + }, + errorInput: { + borderColor: theme.colors.danger || '#FF3B30', + }, + modalActions: { + flexDirection: 'row', + justifyContent: 'space-between', + marginTop: 8, + gap: 12, + }, + modalButton: { + flex: 1, + borderRadius: 12, + paddingVertical: 14, + alignItems: 'center', + justifyContent: 'center', + }, + cancelButton: { + backgroundColor: theme.colors.border, + }, + confirmButton: { + backgroundColor: theme.colors.primary, + }, + disabledButton: { + opacity: 0.5, + }, + cancelLinkContainer: { + marginTop: 8, + marginBottom: 4, + alignItems: 'center', + }, + cancelLinkText: { + color: theme.colors.textSecondary, + fontWeight: '600', + textDecorationLine: 'underline', + fontFamily: Platform.OS === 'ios' ? 'System' : 'Roboto', + textAlign: 'center', + fontSize: 14, + marginTop: 12, + }, + retryButton: { + backgroundColor: theme.colors.secondary, + borderRadius: 18, + flexDirection: 'row', + alignItems: 'center', + justifyContent: 'center', + paddingVertical: 8, + paddingHorizontal: 12, + shadowColor: theme.colors.shadowColor, + shadowOffset: {width: 0, height: 1}, + shadowOpacity: 0.1, + shadowRadius: 2, + elevation: 2, + minHeight: 36, + }, + retryLink: { + color: theme.colors.background, + fontWeight: '600', + fontFamily: Platform.OS === 'ios' ? 'System' : 'Roboto', + textAlign: 'center', + fontSize: 14, + marginLeft: 6, + }, + buttonFlex: { + flex: 1, + marginHorizontal: 6, + }, + cancelSetupButton: { + backgroundColor: theme.colors.background, + borderColor: theme.colors.secondary, + borderWidth: 1, + borderRadius: 18, + alignItems: 'center', + justifyContent: 'center', + paddingVertical: 8, + paddingHorizontal: 12, + minHeight: 36, + }, + cancelLink: { + color: theme.colors.secondary, + fontWeight: '600', + fontFamily: Platform.OS === 'ios' ? 'System' : 'Roboto', + textAlign: 'center', + fontSize: 14, + }, + }); + + return ( + + + + {/* Hide all previous sections when mpcDone is true */} + {!mpcDone && + (() => { + // Check if Final Step should be shown + const showFinalStep = + !isSendBitcoin && + isPreParamsReady && + localNpub && + deviceName && + ((isTrio && + peerNpub1 && + peerDeviceName1 && + peerNpub2 && + peerDeviceName2) || + (!isTrio && peerNpub1 && peerDeviceName1)); + + return ( + <> + {/* Header */} + + + {/* Help button on the left */} + { + HapticFeedback.light(); + setShowHelpModal(true); + }} + activeOpacity={0.7}> + + + + {/* Title in the center */} + + {isSendBitcoin ? ( + + + + Transaction Co-Signing + + + ) : ( + + Setup Wallet + + )} + + + {/* Abort Setup button on the right */} + {!mpcDone && !isPairing ? ( + { + HapticFeedback.light(); + if (isSendBitcoin) { + navigation.goBack(); + } else { + navigation.dispatch( + CommonActions.reset({ + index: 0, + routes: [{name: 'Welcome'}], + }), + ); + } + }} + activeOpacity={0.7}> + + {isSendBitcoin ? 'Cancel' : 'Abort'} + + + ) : ( + + )} + + + + {/* Send Mode: Device Selection - Show current device and allow selecting one other */} + {isSendBitcoin && ( + + + This Device + + {sendModeDevices.length === 0 ? ( + + Loading... + + ) : ( + (() => { + // Separate local and other devices + const localDevice = sendModeDevices.find( + d => d.isLocal, + ); + const otherDevices = sendModeDevices + .filter(d => !d.isLocal) + .sort((a, b) => a.npub.localeCompare(b.npub)); + + return ( + <> + {/* Current Device */} + {localDevice && ( + + + + + + {localDevice.keyshareLabel} + + + This device + + + + {shortenNpub(localDevice.npub, 8, 6)} + + + + )} + + {/* Select One Other Device */} + {otherDevices.length > 0 && ( + <> + + {isTrio + ? 'Select one device to co-sign:' + : 'Co-signing device:'} + + {otherDevices.map(dev => { + // In duo mode, use View (not selectable) + // In trio mode, use TouchableOpacity (selectable) + if (!isTrio) { + return ( + + + + + {dev.keyshareLabel} + + + {shortenNpub(dev.npub, 8, 6)} + + + {selectedPeerNpub === dev.npub && ( + + + ✓ + + + )} + + ); + } + + // Trio mode: selectable + return ( + { + HapticFeedback.medium(); + // In trio, allow user to select any device + // If clicking the same device, deselect (allow empty selection) + // If clicking different device, select that one + setSelectedPeerNpub( + selectedPeerNpub === dev.npub + ? '' + : dev.npub, + ); + dbg( + 'User selected peer in trio mode:', + dev.npub === selectedPeerNpub + ? 'deselected' + : dev.npub.substring(0, 20) + + '...', + ); + }} + activeOpacity={0.7}> + + + + {dev.keyshareLabel} + + + {shortenNpub(dev.npub, 8, 6)} + + + + {selectedPeerNpub === dev.npub && ( + + ✓ + + )} + + + ); + })} + + )} + + ); + })() + )} + + )} + + {/* Relay Configuration - Collapsible - Hide when Final Step is shown */} + {!showFinalStep && ( + + { + HapticFeedback.light(); + setShowRelayConfig(!showRelayConfig); + }} + activeOpacity={0.7}> + + {showRelayConfig ? '▼' : '▶'} Advanced: Nostr Relays + Settings + + + {showRelayConfig && ( + + + Configure Nostr relays (defaults work for most + users). Enter relay URLs, one per line or + comma-separated (wss://...). + + + + )} + + )} + + {/* Step Indicator */} + {!isSendBitcoin && ( + + + + + {localNpub ? '✓' : '1'} + + + + + + {peerNpub1 && peerDeviceName1 ? '✓' : '2'} + + + {isTrio && ( + <> + + + + {peerNpub2 && peerDeviceName2 ? '✓' : '3'} + + + + )} + + + + {isPreParamsReady ? '✓' : isTrio ? '4' : '3'} + + + + + + {canStartKeygen ? '✓' : isTrio ? '5' : '4'} + + + + + Your Device + 2nd Peer + {isTrio && ( + 3rd Peer + )} + Prepared + Ready + + + )} + + {/* Local Device Card - Hide when Final Step is shown or in send mode */} + {localNpub && + deviceName && + partialNonce && + !isSendBitcoin && ( + + + This Device + + + + {deviceName}@{shortenNpub(localNpub, 8, 6)} + + + + + + + + + + + + )} + + {/* Peer Connection 1 - Hide when Final Step is shown or in send mode */} + {!showFinalStep && !isSendBitcoin && ( + + + {isTrio + ? 'Step 2: Second Device' + : 'Step 2: Other Device'} + + + + {peerNpub1 && ( + + )} + {peerNpub1 && peerDeviceName1 ? ( + + {formatConnectionDisplay( + peerNpub1, + peerDeviceName1, + )} + + ) : ( + { + setPeerConnectionDetails1(text); + handlePeerConnectionInput(text, 1); + }} + placeholder="Paste or scan connection details" + placeholderTextColor={ + theme.colors.textSecondary + '80' + } + autoCapitalize="none" + autoCorrect={false} + /> + )} + {peerInputValidating1 && ( + + ... + + )} + {peerNpub1 && !peerInputValidating1 && ( + clearPeerConnection(1)} + activeOpacity={0.7}> + + + )} + {!peerNpub1 && !peerInputValidating1 && ( + <> + handlePaste(1)} + activeOpacity={0.7}> + + + { + HapticFeedback.light(); + const peerNum: 1 | 2 = 1; + scanningForPeerRef.current = peerNum; // Update ref immediately + // FOSS version: Use BarcodeZxingScan for both iOS and Android + BarcodeZxingScan.showQrReader( + (error: any, data: any) => { + if (!error && data) { + handleQRScan(data, peerNum); + } + }, + ); + }} + activeOpacity={0.7}> + + + + )} + + {peerInputError1 && ( + + + ⚠ {peerInputError1} + + + )} + + + )} + + {/* Peer Connection 2 (Trio only) - Hide when Final Step is shown or in send mode */} + {isTrio && !showFinalStep && !isSendBitcoin && ( + + + Step 3: Third Device + + + + {peerNpub2 && ( + + )} + {peerNpub2 && peerDeviceName2 ? ( + + {formatConnectionDisplay( + peerNpub2, + peerDeviceName2, + )} + + ) : ( + { + setPeerConnectionDetails2(text); + handlePeerConnectionInput(text, 2); + }} + placeholder="Paste or scan connection details" + placeholderTextColor={ + theme.colors.textSecondary + '80' + } + autoCapitalize="none" + autoCorrect={false} + /> + )} + {peerInputValidating2 && ( + + ... + + )} + {peerNpub2 && !peerInputValidating2 && ( + clearPeerConnection(2)} + activeOpacity={0.7}> + + + )} + {!peerNpub2 && !peerInputValidating2 && ( + <> + handlePaste(2)} + activeOpacity={0.7}> + + + { + HapticFeedback.light(); + const peerNum: 1 | 2 = 2; + scanningForPeerRef.current = peerNum; // Update ref immediately + // FOSS version: Use BarcodeZxingScan for both iOS and Android + BarcodeZxingScan.showQrReader( + (error: any, data: any) => { + if (!error && data) { + handleQRScan(data, peerNum); + } + }, + ); + }} + activeOpacity={0.7}> + + + + )} + + {peerInputError2 && ( + + + ⚠ {peerInputError2} + + + )} + + + )} + + {/* Prepare Device Section - Hide in send mode */} + {!isSendBitcoin && + !isPreParamsReady && + localNpub && + deviceName && + ((isTrio && + peerNpub1 && + peerDeviceName1 && + peerNpub2 && + peerDeviceName2) || + (!isTrio && peerNpub1 && peerDeviceName1)) && ( + + + + + + {isPreparing ? 'Preparing...' : 'Prepare Device'} + + + { + HapticFeedback.light(); + setIsPrepared(!isPrepared); + }}> + + {isPrepared && ( + + )} + + + Keep app open during setup + + + + + )} + + {/* Preparing Modal */} + {isPreparing && ( + + + + {/* Icon Container */} + + + + + + + {/* Header Text */} + + Preparing Device + + + {/* Subtext */} + + Could take a while, given device specs. Do not leave + the app during setup. + + + {/* Loading Indicator */} + + + + + + + {/* Status and Countdown */} + + + + + Computing cryptographic params + + + + Time elapsed: {prepCounter} seconds + + + + + + )} + + {/* Help Modal */} + setShowHelpModal(false)}> + + + + How It Works + { + HapticFeedback.medium(); + setShowHelpModal(false); + }} + activeOpacity={0.7}> + + + + + + + + + Step 1: This Device + + + + This device generates a unique ID. Share this with + other devices by showing the QR code or copying + the connection details. + + + + + + + Step 2: Connect Peers + + + + On each peer device, scan your QR code or paste + your connection details. Then share their + connection details back to you. + + + + + + + Step 3: Start + + + + Once all devices are prepared, tap proceed to Key + Generation to begin the secure wallet setup + process. + + + + + + Tips + + + • QR scanning is the easiest method{'\n'}• Make + sure all devices are online{'\n'}• The process + takes 1-2 minutes + {'\n'}• Keep devices close together + + + + + + + + {/* Final Step - Check other devices are prepared */} + {!isSendBitcoin && + isPreParamsReady && + !mpcDone && + localNpub && + deviceName && + ((isTrio && + peerNpub1 && + peerDeviceName1 && + peerNpub2 && + peerDeviceName2) || + (!isTrio && peerNpub1 && peerDeviceName1)) && ( + + + + + + + + {isTrio && ( + + )} + + + + + Final Step + + + Make sure{' '} + {isTrio ? 'all devices' : 'both devices'}{' '} + preparation step is complete. + + + + + {/* Participants Device Information */} + {Object.keys(keyshareMapping).length > 0 && ( + + + Participants: + + {keyshareMapping.keyshare1 && ( + + + + + KeyShare1 + + {keyshareMapping.keyshare1.isLocal && ( + + {' '} + (This device) + + )} + {'\n'} + + {shortenNpub( + keyshareMapping.keyshare1.npub, + 8, + 6, + )} + + + + )} + {keyshareMapping.keyshare2 && ( + + + + + KeyShare2 + + {keyshareMapping.keyshare2.isLocal && ( + + {' '} + (This device) + + )} + {'\n'} + + {shortenNpub( + keyshareMapping.keyshare2.npub, + 8, + 6, + )} + + + + )} + {keyshareMapping.keyshare3 && ( + + + + + KeyShare3 + + {keyshareMapping.keyshare3.isLocal && ( + + {' '} + (This device) + + )} + {'\n'} + + {shortenNpub( + keyshareMapping.keyshare3.npub, + 8, + 6, + )} + + + + )} + + )} + + { + HapticFeedback.medium(); + toggleKeygenReady(); + }}> + + {isKeygenReady && ( + + )} + + + + All devices are ready + + + + + {/* Participant Devices Info */} + + + Participants: + + {(() => { + // Collect all participants + const participants: Array<{ + npub: string; + deviceName: string; + }> = []; + + if (localNpub && deviceName) { + participants.push({ + npub: localNpub, + deviceName: deviceName, + }); + } + if (peerNpub1 && peerDeviceName1) { + participants.push({ + npub: peerNpub1, + deviceName: peerDeviceName1, + }); + } + if (isTrio && peerNpub2 && peerDeviceName2) { + participants.push({ + npub: peerNpub2, + deviceName: peerDeviceName2, + }); + } + + // Sort by npub + participants.sort((a, b) => + a.npub.localeCompare(b.npub), + ); + + return participants.map((participant, index) => ( + + + + + {participant.deviceName} + + + + {shortenNpub(participant.npub, 8, 6)} + + + )); + })()} + + + + )} + + {/* Transaction Summary - Show in send mode before button */} + {isSendBitcoin && !isPairing && !mpcDone && route.params && ( + + + + + To Address + + + + {route.params?.toAddress || ''} + + + + + + + Transaction Amount + + + + {sat2btcStr(route.params?.satoshiAmount)} BTC + + + {route.params?.selectedCurrency || ''}{' '} + {formatFiat(route.params?.fiatAmount)} + + + + + + + Transaction Fee + + + + {sat2btcStr(route.params?.satoshiFees)} BTC + + + {route.params?.selectedCurrency || ''}{' '} + {formatFiat(route.params?.fiatFees)} + + + + + + )} + + {/* Start Button */} + {!isPairing && !mpcDone && ( + + + + {(isSendBitcoin || !isSendBitcoin) && ( + + )} + + {isSendBitcoin + ? (() => { + // Determine if local device is KeyShare1 + const localDevice = sendModeDevices.find( + d => d.isLocal, + ); + const isKeyShare1 = + localDevice?.keyshareLabel === 'KeyShare1'; + return isKeyShare1 + ? 'Start Co-Signing' + : 'Join Co-Signing'; + })() + : (() => { + // For keygen, determine if local npub is first in sorted order + const allNpubs = [localNpub]; + if (peerNpub1) allNpubs.push(peerNpub1); + if (isTrio && peerNpub2) + allNpubs.push(peerNpub2); + const sortedNpubs = allNpubs.sort(); + const isKeyShare1 = + sortedNpubs[0] === localNpub; + return isKeyShare1 + ? 'Start Key Generation' + : 'Join Key Generation'; + })()} + + + + + )} + + ); + })()} + + {/* Keygen Modal - Similar to MobilesPairing */} + {isPairing && !isSendBitcoin && ( + + + + {/* Icon Container */} + + + + + + + {/* Header Text */} + Finalizing Your Wallet + + {/* Subtext */} + + Securing your wallet with advanced cryptography. Please stay + in the app... + + + {/* Progress Container */} + + {/* Circular Progress */} + + + {/* Progress Percentage */} + + + {Math.round(progress)}% + + + + + {/* Status and Countdown */} + + + + + {status || 'Processing cryptographic operations'} + + + + Time elapsed: {prepCounter} seconds + + + + + + )} + + {/* Co-Signing Modal - Similar to MobilesPairing send_btc */} + {isPairing && isSendBitcoin && ( + + + + {/* Icon Container */} + + + + + + + {/* Header Text */} + + Co-Signing Your Transaction + + + {/* Subtext */} + + Securing your transaction with multi-party cryptography. + Please stay in the app... + + + {/* Progress Container */} + + {/* Circular Progress */} + + + {/* Progress Percentage */} + + + {Math.round(progress)}% + + + + + {/* Status and Countdown */} + + + + + {status || 'Processing multi-party signature'} + + + + Time elapsed: {prepCounter} seconds + + + + + + )} + + {/* Success and Backup UI - Only show for keygen, not for send BTC */} + {mpcDone && !isSendBitcoin && ( + <> + {/* Keyshare Created Success */} + + + + + + Keyshare Created! + + + + Create secure backups of your keyshares. Store each device's + backup in different locations to prevent single points of + failure. + + + { + HapticFeedback.medium(); + setIsBackupModalVisible(true); + }}> + + + + Backup{' '} + {keyshareMapping.keyshare1?.isLocal + ? 'KeyShare1' + : keyshareMapping.keyshare2?.isLocal + ? 'KeyShare2' + : keyshareMapping.keyshare3?.isLocal + ? 'KeyShare3' + : 'Keyshare'} + + + + + + + {/* Backup Confirmation */} + + + + + + + + Confirm Backups + + + + Verify that {isTrio ? 'all devices' : 'both devices'} have + successfully backed up their keyshares. + + + + {(() => { + // Build device list based on keyshare mapping (sorted order) + const devices = []; + if (keyshareMapping.keyshare1) { + devices.push({ + key: 'deviceOne', + label: `KeyShare1 (${keyshareMapping.keyshare1.deviceName}) backed up`, + device: keyshareMapping.keyshare1.deviceName, + keyshareLabel: 'KeyShare1', + }); + } + if (keyshareMapping.keyshare2) { + devices.push({ + key: 'deviceTwo', + label: `KeyShare2 (${keyshareMapping.keyshare2.deviceName}) backed up`, + device: keyshareMapping.keyshare2.deviceName, + keyshareLabel: 'KeyShare2', + }); + } + if (keyshareMapping.keyshare3) { + devices.push({ + key: 'deviceThree', + label: `KeyShare3 (${keyshareMapping.keyshare3.deviceName}) backed up`, + device: keyshareMapping.keyshare3.deviceName, + keyshareLabel: 'KeyShare3', + }); + } + return devices; + })().map(item => ( + { + HapticFeedback.medium(); + toggleBackedup(item.key as keyof typeof backupChecks); + }}> + + {backupChecks[ + item.key as keyof typeof backupChecks + ] && } + + + + {item.label} + + + {item.keyshareLabel} ({item.device}) secured + + + + + ))} + + + { + HapticFeedback.medium(); + navigation.dispatch( + CommonActions.reset({ + index: 0, + routes: [{name: 'Home'}], + }), + ); + }} + disabled={!allBackupChecked}> + + + Continue + + + + + + )} + + + + {/* QR Code Modal */} + setIsQRModalVisible(false)}> + + + + Connection Details + { + HapticFeedback.medium(); + setIsQRModalVisible(false); + }} + activeOpacity={0.7}> + + + + + + { + connectionQrRef.current = ref; + }} + /> + + + {shortenNpub(connectionDetails)} + + + + + Share + + + + + + + + {/* Backup Modal */} + + + { + HapticFeedback.light(); + Keyboard.dismiss(); + }}> + { + HapticFeedback.light(); + }}> + + + Backup Keyshare + + + Create an encrypted backup of your keyshare, protected by a + strong password. + + + + Set a Password + + + { + HapticFeedback.medium(); + setPasswordVisible(!passwordVisible); + }}> + + + + + {/* Password Strength Indicator */} + {password.length > 0 && ( + + + + + + {getPasswordStrengthText()} + + + )} + + {/* Password Requirements */} + {passwordErrors.length > 0 && ( + + {passwordErrors.map((error, index) => ( + + • {error} + + ))} + + )} + + + + Confirm Password + + 0 && + password !== confirmPassword && + styles.errorInput, + ]} + placeholder="Confirm your password" + secureTextEntry={!confirmPasswordVisible} + value={confirmPassword} + onChangeText={setConfirmPassword} + autoCapitalize="none" + autoCorrect={false} + /> + { + HapticFeedback.medium(); + setConfirmPasswordVisible(!confirmPasswordVisible); + }}> + + + + {confirmPassword.length > 0 && password !== confirmPassword && ( + Passwords do not match + )} + + + + { + HapticFeedback.medium(); + clearBackupModal(); + }}> + Cancel + + { + HapticFeedback.medium(); + backupShare(); + }} + disabled={ + !password || + !confirmPassword || + password !== confirmPassword || + passwordStrength < 3 + }> + + + Backup + + + + + + + + + ); +}; + +export default MobileNostrPairing; From b4ba3ed233f1fb694f7a57a9c0fab36cd2e9ad9a Mon Sep 17 00:00:00 2001 From: bbtc Date: Wed, 10 Dec 2025 01:35:31 +0400 Subject: [PATCH 4/4] docs: update changelog with CI/CD improvements from updating-test-pipeline merge --- CHANGELOG.md | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/CHANGELOG.md b/CHANGELOG.md index fb4dfe81..b749a648 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -18,6 +18,12 @@ All notable changes to Bold Wallet are documented in this file. - **Android Launcher Icons**: Updated and optimized Android app launcher icons across all density variants - **Icon Optimization**: Reduced file sizes while maintaining visual quality +### 🔧 CI/CD Improvements +- **Docker Caching for Nostr Relay**: Added Docker image caching for nostr-rs-relay in GitHub Actions to speed up test runs +- **Improved Test Pipeline**: Updated GitHub Actions workflow to require local Docker-based Nostr relay for testing +- **Test Script Enhancements**: Enhanced test-all.sh with better error messages and local relay requirements +- **Test Optimization**: Removed redundant tests that are already covered by the local relay + ### Technical - Created FOSS-compatible version of MobileNostrPairing screen - Unified QR scanning implementation using BarcodeZxingScan across all platforms