Page MenuHomePhabricator

[Cashtab] Support address sharing for we web wallet
ClosedPublic

Authored by bytesofman on Jun 30 2025, 13:21.

Details

Reviewers
PiRK
Group Reviewers
Restricted Project
Commits
rABC864c79c7cf87: [Cashtab] Support address sharing for we web wallet
Summary

We have a good address sharing feature for the browser extension, where the user can be invited to "connect wallet" -- which will open the extension with a confirmation modal to share the address. When the user clicks "ok", the address can immediately populate a form on the first page.

We can't do the same thing without an extension, but we can get close. This workflow will open Cashtab to the Manage Wallets page with an open modal that lists wallets, previews the address, and includes a copy button. If the user copies an address, and this was opened by JS, the window will close, immediately taking them back to the requesting page. That page can then have, say, a "paste" button to make the import as simple as possible.

Not as good as the extension but still quite easy, and much easier than the current way (open cashtab, copy address, close it, go back to other window, paste)

Test Plan

npm test to confirm nothing is broken, npm start and navigate to http://localhost:3000/#/wallets?shareAddresses=true to check out the modal

We cannot easily test the "import" feature without another site, but as long as nothing breaks here that can be iterated on later if there is an issue. can confirm the tab DOES NOT close if you just navigate to this url instead of opening it with JS, which is expected behavior

Diff Detail

Repository
rABC Bitcoin ABC
Branch
share-addr-web
Lint
Lint Errors
SeverityLocationCodeMessage
Errorcashtab/src/components/Wallets/index.tsx:116ESLINTprefer-const
Errorcashtab/src/components/Wallets/index.tsx:117ESLINTprefer-const
Errorcashtab/src/components/Wallets/index.tsx:121ESLINTprefer-const
Errorcashtab/src/components/Wallets/index.tsx:122ESLINTprefer-const
Errorcashtab/src/components/Wallets/index.tsx:123ESLINTprefer-const
Errorcashtab/src/components/Wallets/index.tsx:378ESLINT@typescript-eslint/no-unused-vars
Unit
No Test Coverage
Build Status
Buildable 33720
Build 66918: Build Diffcashtab-tests
Build 66917: arc lint + arc unit