aboutsummaryrefslogtreecommitdiffstats
path: root/tools
diff options
context:
space:
mode:
authorAdam Soltys <[email protected]>2026-07-04 09:05:23 -0700
committerAdam Soltys <[email protected]>2026-07-04 09:05:23 -0700
commit5fb48ee5284dbba34c8fa3b77c36379f49404ac2 (patch)
tree10e0ddb60968ca3f4f9a88e75d4a990e8cc34cb8 /tools
parent11a14600da683769c74d49e3d973183aa1a2fe5e (diff)
downloadcoinosv3-5fb48ee5284dbba34c8fa3b77c36379f49404ac2.tar.gz
coinosv3-5fb48ee5284dbba34c8fa3b77c36379f49404ac2.zip
Features: extract gifts behind the plugin seam
The whole gift surface moves to src/features/gifts.js (~800 lines): create/split/lock flows, link viewing, revoke/reclaim, history rows + detail page, claim-tx row decoration and tx-detail section, the claim flow (fresh or existing wallet, nostr-locked gifts, claim codes, NIP-07 extension), the boot URL handling (/g/, /lg/, #gift=), the post-claim celebration, and the locked-in-gifts balance line. New seams this required: screenView (full-screen feature views), bootUrl (URL takeover at startup), giftOpened (claim pre-check on wallet activation), sendFormExtras, decorateTxRow, and multi-section txDetailSection. Account access goes through explicit ctx accessors (getAccounts/setAccounts) — the moved code briefly relied on an accidental cross-module binding that broke activeAccount() during claims; caught by the gift e2e. app.js: 4,206 → 3,000 lines. Ark + gift browser suites pass. Co-Authored-By: Claude Fable 5 <[email protected]> Claude-Session: https://claude.ai/code/session_01QFAcD4V284DvYZZHP7Rxxy
Diffstat (limited to 'tools')
0 files changed, 0 insertions, 0 deletions