Skip to content

feat: add WalletConnect support#109

Open
newmattock wants to merge 3 commits into
Invoice-Liquidity-Network:mainfrom
newmattock:feat/walletconnect-support
Open

feat: add WalletConnect support#109
newmattock wants to merge 3 commits into
Invoice-Liquidity-Network:mainfrom
newmattock:feat/walletconnect-support

Conversation

@newmattock
Copy link
Copy Markdown

Fixes #2

Summary

  • add WalletConnect v2 support through the Stellar Wallets Kit WalletConnect adapter
  • add a wallet selection modal with Freighter and WalletConnect options from the Connect Wallet button
  • keep the existing WalletContext connect/sign/disconnect surface usable for existing callers while routing signatures through the active provider
  • persist provider choice, clear expired WalletConnect sessions on signing failure, and show configuration guidance when NEXT_PUBLIC_WALLETCONNECT_PROJECT_ID is missing
  • include focused tests for provider selection, WalletConnect disabled/configured states, and existing connected wallet states
  • include current-main build fixes for governance status config, federation typing, and evidence hashing

Validation

  • npm test -- src/components/tests/WalletButton.test.tsx src/components/tests/WalletSelectionModal.test.tsx --reporter verbose
  • npm run lint -- src/context/WalletContext.tsx src/components/WalletButton.tsx src/components/WalletSelectionModal.tsx src/utils/walletConnect.ts src/components/tests/WalletButton.test.tsx src/components/tests/WalletSelectionModal.test.tsx app/governance/page.tsx src/utils/federation.ts src/utils/evidence.ts
  • npm run build
  • git diff --check
  • local HTTP smoke: HEAD / returned 200 on port 3025

Notes

WalletConnect pairing requires NEXT_PUBLIC_WALLETCONNECT_PROJECT_ID. When it is absent, the UI keeps Freighter available and explains the missing configuration.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Add WalletConnect support as a secondary connection method

1 participant