From eb299830a2611a45e997bc729176ede81c5eead2 Mon Sep 17 00:00:00 2001 From: Adam Soltys Date: Wed, 24 Jun 2026 13:47:11 -0700 Subject: Make gift Reclaim a real on-chain revoke The old "Reclaim" only un-reserved the coin locally, so the gift link stayed claimable. Replace it with "Revoke": a confirmed action that sweeps the reserved coin back into the sender's own wallet at a high fee (wallet.revokeGift), double-spending the gift's presigned input so the link can't be claimed once it confirms. Races a simultaneous claimer; if the gift was already claimed the broadcast just fails. New strings translated across all 19 locales. Co-Authored-By: Claude Opus 4.8 (1M context) --- src/i18n.js | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) (limited to 'src/i18n.js') diff --git a/src/i18n.js b/src/i18n.js index 017b6fa..b879a08 100644 --- a/src/i18n.js +++ b/src/i18n.js @@ -154,7 +154,9 @@ const STR = { giftAmountInvalid: 'Enter a valid amount.', giftAnother: 'Create another', giftReserved: '{n} coin set aside for unclaimed gifts', - giftReclaim: 'Reclaim', + giftRevoke: 'Revoke', + giftRevokeConfirm: 'Revoke this gift? This spends the coin back into your wallet and stops the link from working.', + giftRevoked: 'Gift revoked', copyLink: 'Copy link', claimBody: 'Claim it into a brand-new wallet that only you control.', claimBtn: 'Claim it', -- cgit v1.2.3