func AmountClaimed
ActionAmountClaimed returns how much the address has already claimed (0 if none).
Package merkledrop is an idiomatic gno.land port of the classic Solidity MerkleDistributor airdrop (Uniswap's contrac...
Package merkledrop is an idiomatic gno.land port of the classic Solidity MerkleDistributor airdrop (Uniswap's contract, OpenZeppelin's MerkleProof).
A fixed merkleRoot commits to a set of (address, amount) allocations. A recipient proves membership by supplying the sibling hashes on the path from their leaf up to the root. Each address may claim exactly once.
Leaf and node hashing use crypto/sha256 (available in the gno stdlib), the same primitive Solidity distributors use via keccak — here sha256 keeps the off-chain tree builder trivially reproducible. Internal nodes hash the two children in sorted order (the OpenZeppelin "commutative" scheme), so proofs carry no left/right flags.
Balances are pure accounting (uint64); no real coin moves — there is no msg.value on gno, so this models the allocation ledger only.
AmountClaimed returns how much the address has already claimed (0 if none).
Claim proves the caller is entitled to `amount` via `proof` (comma-separated hex sibling hashes) and marks the allocation claimed. Panics on a bad proof or a double claim. Mirrors MerkleDistributor.claim (msg.sender is the caller).
HasClaimed reports whether the address already claimed.
Render shows the committed root, aggregate stats, and the list of claimers.
Verify reports whether (claimer, amount, proof) resolves to merkleRoot. Pure and read-only — safe to call from tests and Render.