SOS

Function Calls

SOS Contract Function Calls

functionsdefinitions
constructorGets registry and minter address as input parameters. Sets message sender’s role as admin, minter address’s role as minter and sets registry.
supportsInterfaceXXXXXXXXXXXXXXXXXXXXXXXXX
SVGGets a token id as an input parameter. Pass token id, owner of token id, donation amount and type, fund name and fund focus parameters to buildSVG function of NFTDescriptor contract. Returns the result of NFTDescriptor contract’s buildSVG function, a string value.
tokenURIgets a token id as an input parameter. Fetches donation record information of that token id. Fetches fund name and focus. Creates an image string by using NFTDescriptor contract’s encodeSVG function with token id, owner of token id, donation amount, donated token, fund name and fund focus informations. Returns packed-encoded string with a name and image.
mintGets recipient address and donation ID as input parameters mints an NFT and returns the id of the minted ERC721.
_getDonationRecordGets a token id as an input parameter. Returns the record of donation matches with the input token id.
_getFundMetaGets a fund id as an input parameter. Returns the name and the focus of the fund.

Contracts Description Table

ContractTypeBases
Function NameVisibilityMutabilityModifiers
SOSImplementationAccessControl, ERC721, Registered
Public ❗️🛑ERC721
supportsInterfacePublic ❗️NO❗️
SVGPublic ❗️NO❗️
tokenURIPublic ❗️NO❗️
mintPublic ❗️🛑onlyRole
_getDonationRecordInternal 🔒
_getFundMetaInternal 🔒

Legend

SymbolMeaning
🛑Function can modify state
💵Function is payable

Inheritance Flow

SOS Chain Inheritance Relation