Skip to content

Instantly share code, notes, and snippets.

@ayo-dan
Created April 23, 2024 21:36
Show Gist options
  • Save ayo-dan/693cec0898d7c13b66c8bbd99f2a33a4 to your computer and use it in GitHub Desktop.
Save ayo-dan/693cec0898d7c13b66c8bbd99f2a33a4 to your computer and use it in GitHub Desktop.
Advanced NFT for FT
{"valueParameterInfo":[],"timeParameterDescriptions":[["Seller Sale Price Timeout","The time by which the Seller must determine how much they are selling the Green Founder NFT for."],["Seller Deposit Timeout","The time by which the Seller must deposit the Green Founder NFT."],["Buyer Deposit Timeout","The time by which the Buyer must deposit the Sale Price of PMX to purchase the Green Founder NFT."]],"roleDescriptions":[["Buyer","The Buyer of the Green Founder NFT."],["Seller","The Seller of the Green Founder NFT."]],"contractType":"Swap","contractShortDescription":"Sell Green Founder NFT for set amount of PMX.","contractName":"Green Founder NFT for PMX","contractLongDescription":"Seller lists Green Founder NFT and defines sale price. Buyer pays sale price to Seller and receives Green Founder NFT.","choiceInfo":[["Sale Price",{"choiceFormat":{"contents":[6,"PMX"],"tag":"DecimalFormat"},"choiceDescription":"The amount of PMX needed to purchase the Green Founder NFT."}],["Withdrawal",{"choiceFormat":{"contents":null,"tag":"DefaultFormat"},"choiceDescription":"The choice to withdrawal the Green Founder NFT before it has been purchased."}]]}
When
[Case
(Choice
(ChoiceId
"Sale Price"
(Role "Seller")
)
[Bound 0 15000000000000]
)
(When
[Case
(Deposit
(Role "Seller")
(Role "Seller")
(Token "8499f3958a114d03b6289185138a60378951a2b5491cb2a080ff7b6e" "Green Founder NFT")
(Constant 1)
)
(When
[Case
(Deposit
(Role "Seller")
(Role "Buyer")
(Token "8499f3958a114d03b6289185138a60378951a2b5491cb2a080ff7b6e" "PMX")
(ChoiceValue
(ChoiceId
"Sale Price"
(Role "Seller")
))
)
(Pay
(Role "Seller")
(Account (Role "Buyer"))
(Token "8499f3958a114d03b6289185138a60378951a2b5491cb2a080ff7b6e" "Green Founder NFT")
(Constant 1)
Close
), Case
(Choice
(ChoiceId
"Withdrawal"
(Role "Seller")
)
[Bound 1 1]
)
Close ]
(TimeParam "Buyer Deposit Timeout")
Close
)]
(TimeParam "Seller Deposit Timeout")
Close
)]
(TimeParam "Seller Sale Price Timeout")
Close
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment