From 856ae4e53fa0cbd1a5e9315493dc1964f8db3416 Mon Sep 17 00:00:00 2001 From: Serkan Reis Date: Mon, 17 Apr 2023 12:09:40 +0300 Subject: [PATCH 01/14] Select WL type to instantiate --- pages/contracts/whitelist/instantiate.tsx | 60 ++++++++++++++++++++--- 1 file changed, 52 insertions(+), 8 deletions(-) diff --git a/pages/contracts/whitelist/instantiate.tsx b/pages/contracts/whitelist/instantiate.tsx index d77aed8..d441328 100644 --- a/pages/contracts/whitelist/instantiate.tsx +++ b/pages/contracts/whitelist/instantiate.tsx @@ -36,8 +36,10 @@ const WhitelistInstantiatePage: NextPage = () => { const [startDate, setStartDate] = useState(undefined) const [endDate, setEndDate] = useState(undefined) const [adminsMutable, setAdminsMutable] = useState(true) + const [whitelistType, setWhitelistType] = useState<'standard' | 'flex'>('standard') - const [whitelistArray, setWhitelistArray] = useState([]) + const [whitelistStandardArray, setWhitelistStandardArray] = useState([]) + const [whitelistFlexArray, setWhitelistFlexArray] = useState([]) const unitPriceState = useNumberInputState({ id: 'unit-price', @@ -79,8 +81,8 @@ const WhitelistInstantiatePage: NextPage = () => { throw new Error('End date is required') } - const msg = { - members: whitelistArray, + const standardMsg = { + members: whitelistStandardArray, start_time: (startDate.getTime() * 1_000_000).toString(), end_time: (endDate.getTime() * 1_000_000).toString(), mint_price: coin(String(Number(unitPriceState.value) * 1000000), 'ustars'), @@ -96,7 +98,7 @@ const WhitelistInstantiatePage: NextPage = () => { admins_mutable: adminsMutable, } return toast.promise( - contract.instantiate(WHITELIST_CODE_ID, msg, 'Stargaze Whitelist Contract', wallet.address), + contract.instantiate(WHITELIST_CODE_ID, standardMsg, 'Stargaze Whitelist Contract', wallet.address), { loading: 'Instantiating contract...', error: 'Instantiation failed!', @@ -112,7 +114,7 @@ const WhitelistInstantiatePage: NextPage = () => { ) const whitelistFileOnChange = (whitelistData: string[]) => { - setWhitelistArray(whitelistData) + setWhitelistStandardArray(whitelistData) } return ( @@ -125,6 +127,48 @@ const WhitelistInstantiatePage: NextPage = () => { /> +
+
+ { + setWhitelistType('standard') + }} + type="radio" + value="nft-storage" + /> + +
+ +
+ { + setWhitelistType('flex') + }} + type="radio" + value="flex" + /> + +
+
+ Instantiate success! Here is the transaction result containing the contract address and the transaction @@ -134,7 +178,7 @@ const WhitelistInstantiatePage: NextPage = () => {
-
+