Contribution Point NFT

CP(Contribution Point) NFT 는 판게아 스왑에 대한 유저의 기여 내역 정보를 관리하는 NFT입니다.

1 지갑 당 하나의 CP NFT만 소유 가능하며, Non-Transferable한 형태로 지갑 주소에 귀속됩니다. 최초로 기여하는 시점에 CP NFT가 발급되며, 이후에 추가적인 기여를 했을 시에는 기존에 보유하고 있는 CP NFT 에 기여 내역이 추가됩니다.

CP NFT 에 기록되는 정보는 크게 [태그] 정보와 [기여 이력] 정보로 나뉩니다. [태그] 는 기여의 유형을 나타내며, [기여 이력]은 유저(지갑 주소)별로 실제 기여한 내역을 나타냅니다.

매니저들은 [태그] 와 [기여 이력]을 추가/수정/삭제 할 수 있는 권한을 가지며, 실제 CP NFT 를 수령하는 유저들은 기여에 따라 받은 CP를 사용할 수 있는 권한을 가집니다.

CP NFT는 Opensea 에서 제공하는 metadata format 을 준수하여 설계되었습니다. 유저는 직접 스마트 컨트랙트를 호출하지 않아도 Opensea 의 컬렉션을 통해 자신의 기여 내역을 쉽게 확인할 수 있습니다.

유저는 이후에 usePoint 기능을 활용하여 본인이 소유하고 있는 CP NFT의 CP를 사용해 판게아 스왑의 다양한 혜택(e.g. 거버넌스 토큰 STONE 런칭시 리워드 수령)을 누릴 수 있습니다.

Methods

contributionPointOf

function contributionPointOf(address contributor) external view returns (int256)

contributionRecordByIndex

function contributionRecordByIndex(address contributor, uint256 orderId) external view returns (struct IContributionStruct.ContributionRecord)

contributionRecordCounts

function contributionRecordCounts(address contributor) external view returns (uint256)

contributionRecords

function contributionRecords(address contributor, uint256 start, uint256 nums) external view returns (struct IContributionStruct.ContributionRecord[] records)

contributorIdOf

function contributorIdOf(address contributor) external view returns (uint256)

createRecord

function createRecord(address contributor, uint32 tagId, uint32 point) external nonpayable

createTag

function createTag(string desc) external nonpayable returns (uint32 tagId)

deleteRecord

function deleteRecord(address contributor, uint256 orderId) external nonpayable returns (struct IContributionStruct.ContributionRecord record)

totalTags

function totalTags() external view returns (uint256)

updateRecord

function updateRecord(address contributor, uint256 orderId, uint32 point) external nonpayable

updateTagDescription

function updateTagDescription(uint32 tagId, string desc) external nonpayable

usePoint

function usePoint(uint32 amount, address to, bytes data) external nonpayable

Last updated