feat(ui): Play-for-NFT escrow-at-creation and winner claim flows
I maintainer di solito rispondono entro 1 giorno
Nessuno ha ancora preso questa issue.
Valutazione
- Difficoltà
- 5/5
- Tempo stimato
- Più di una settimana
- Idoneità per principianti
- 12/100
- Tipo di issue
- Funzionalità
- Chiarezza
- Abbastanza chiara
- Stato di attività
- Attiva
- Stack tecnologico
- blockchain, typescript
- Ambito
- blockchain, frontend
Direzione di ricerca
Start with the linked design doc at ui/docs/designs/play-for-nft.md, since the issue defers much of the flow detail to it. Read nftImageResolver.ts to see how prize NFTs are displayed, and locate the existing cosmos-to-ETH wallet hooks and withdrawal-signature query the issue says to reuse. Done means the creator escrow and winner or refund claim flows work end to end, with the prize state shown as unconfirmed until the chain confirms it.
Scritto dal modello di indicizzazione a partire dal testo della issue.
Descrizione
Part of #196 (Play for NFTs). Design: ui/docs/designs/play-for-nft.md.
Scope
UI for the two user-facing flows: escrow the NFT at SNG creation, and claim it as the winner.
Escrow-at-creation (creator)
- In the SNG creation flow, option to add an NFT prize (contract + tokenId).
- After
MsgCreateGamereturns thegameId, submitMsgRegisterNFTPrize, then prompt the ETH wallet to callERC721.safeTransferFrom(creator, escrow, tokenId, abi.encode(gameId))— one tx, no approve. - Show prize state: "unconfirmed" until the chain reports
confirmed(SNG start is gated on it). - Display the prize NFT on the table (reuse
nftImageResolver.ts).
Claim (winner)
- On SNG finish, if the connected wallet is the winner, surface a "Claim NFT prize" action.
- Collect the winner's ETH recipient address, call
MsgRequestNFTUnlock(gameId, recipientEth), poll for the validator signature (query, like the withdrawal signature), then prompt the ETH wallet to callNFTPrizeEscrow.release(gameId, recipientEth, WIN, nonce, sig)— winner pays gas. - Refund path (creator) when the SNG is cancelled: same shape with
REFUNDto the depositor.
Notes
- SDK types only (12 Commandments), double quotes,
yarninui/. - Reuse the existing cosmos↔ETH wallet hooks and the withdrawal-signature query pattern.
- Lingua principale
- TypeScript
- Stelle
- 2
- Fork
- 5
- Merge medio
- 22h 35m
- PR unite (30g)
- 91
Preparare l'ambiente
Non abbiamo ancora controllato i file di configurazione di questo progetto. Parti dal suo README e consulta la nostra guida al primo contributo per i passaggi generali.
Come iniziare
- Leggi tutta la issue e poi la guida ai contributi del progetto.
- Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
- Fai un fork del repository e lavora su un branch.
- Apri una pull request che faccia riferimento al numero della issue.
Altre issue di block52/ui
-
enhancement tech debt
Difficoltà 2/5 1-3 ore Idoneità per principianti 78/100
I maintainer di solito rispondono entro 1 giorno
-
Hero hole cards render face down after ~1h on a table (auth signature never renewed)Forse già presa @bitcoinbrisbane l’ha presa oggi. Apertabug UI Week 2
block52/ui#953 · 2 assegnatari ·
I maintainer di solito rispondono entro 1 giorno
-
Time bank clock is hidden under the NFT avatar: move it left of the seat numberForse già presa @Dzeezbtc l’ha presa oggi. Apertagame-flow UI ux Week 2
block52/ui#950 · 1 assegnatario ·
I maintainer di solito rispondono entro 1 giorno
-
feat(ui): player notes and tags — click a seat to note a player; tag icons (fish, shark, tight, loose…) show by their pillForse già presa @Dzeezbtc l’ha presa 1 giorno fa. Aperta
Difficoltà 4/5 3-5 giorni Idoneità per principianti 35/100
I maintainer di solito rispondono entro 1 giorno
-
chore(ui): move existing inline null/empty and typeof checks to the guardsForse già presa @bitcoinbrisbane l’ha presa 2 giorni fa. Apertarefactor tech debt UI
block52/ui#937 · 1 assegnatario ·
I maintainer di solito rispondono entro 1 giorno
Issue simili
-
needs-area
Difficoltà 2/5 1-3 ore Idoneità per principianti 68/100
Azure/typespec-azure#5936 ·
I maintainer di solito rispondono entro 1 giorno
-
Difficoltà 2/5 Mezza giornata Idoneità per principianti 72/100
vercel-labs/scriptc#2910 ·
I maintainer di solito rispondono entro 1 giorno
-
automation missing-model model-sync provider:fireworks-ai
Difficoltà 2/5 1-3 ore Idoneità per principianti 72/100
anomalyco/models.dev#12458 ·
I maintainer di solito rispondono entro 1 giorno
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 62/100
I maintainer di solito rispondono entro 1 giorno
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 72/100
I maintainer di solito rispondono entro 1 giorno