This repository has been archived by the owner on Oct 8, 2024. It is now read-only.
Tags: guminc/contracts
Tags
0.6.0 - Release - Erc721a (#48) * add configurable burn address and initial ArchetypeBatch implementation * add test for ArchetypeBatch * use tx.origin when batch contract in use * add test for tx.origin msg sender logic * cleanup test * add test for batching owner methods * add compute price public method * add erc721Queryable * remove provenance hash * Pop Punk Gas Optimization v1 * add preTest/postTest constant text replacement * run prettier * update Batch contract --------- Co-authored-by: PolyDegen <polydegen@protonmail.com>
0.5.1 (#38) * update verification to support multiple public lists * fix incorrect name change * move more logic to library * bump version * reuse storage var * add endtime and withdrawable script * update tests for end time * add unitSize functionality * add Sepolia network to hardhat config --------- Co-authored-by: PolyDegen <polydegen@protonmail.com>
attempt to fix MintNotYetStarted error in github actions
Add Dutch invites, list limits, and logic library (#32) * implement dutch invites * tmp removal of burn to mint (max contract size is being reached * add tests for dutch invite * add negative case for dutch invites * Logic library - Reduce Contract Size (#34) * Revert "tmp removal of burn to mint (max contract size is being reached" This reverts commit e4a1b9b. * move logic to separate library * change librrary parameters to storage to reduce gas * move burnToMint validation logic * update deploy scripts to include library * implement list max supply * add option to reverse burn to mint ratio * fix incorrect max supply check * update test case for list max supply * fix formatting --------- Co-authored-by: PolyDegen <polydegen@protonmail.com> --------- Co-authored-by: PolyDegen <polydegen@protonmail.com>
V0.4.0 (#24) * update solady and use erc2981 * add erc20 support * move booleans to options struct * generalize erc20/eth logic * further generalize and cleanup view methods * recomment test platform * simplify update balances * run prettier * add tests for erc20 list and royalties * address comments * add notPlatform error * add test for erc20 withdrawal * make unnecessary changes * update hardhat config and main.yml * remove payable keyword * Revert "remove payable keyword" This reverts commit 11d653b. * Get tests to pass (#28) * trigger build * add logs to public mint test * add sleep to public mint * restore coindegen TestERC20 * add test to check if platform is set correctly * clean up test * cleanup * add ability to set maxBatchSize * Erc20 public list (#31) * add public erc20 capability * remove unnecessary isErc20 (just check if erc20Address is set to non null) * change naming of address from erc20->token * run prettier Co-authored-by: PolyDegen <polydegen@protonmail.com>
Implement Burn to mint (#14) * Add Clone factory and Archetype (#3) * add contract factory * create contract factory * figure out how to verify * refactor scatternft as import * upgrade scatternft contract * add Deploy event * add Factoria contracts * get working deploy working! * create archetype * write archetype test * continue writing tests * write test for swapping implementation * get ready to add erc721-upgradeable * compile successfully * use custom errors * write test for pausing, initialize state in initializer * write test for onlyadmin * add pausable upgradeable and queryable upgradeable * mint with hash zero auth * mint with a valid key and proof * update tests * updates before Trumpsters launch * remove parameterized custom errors and write to minted conditionally * remove logs * version for Trumpsters * Introduce On-Chain Affiliates Program (#6) * implement affiliate storage and new withdraw function; add affiliate parameter to mint function (just passing an address for now) * add referral sig verification * remove option to specify withdrawal amount, instead always withdraw entire balance * move cuts and signer to config * up min platform fee to 5% * update affiliate fee to be 15% * explicitly initialize as zero * Replace Platform address (#7) * implement affiliate storage and new withdraw function; add affiliate parameter to mint function (just passing an address for now) * add referral sig verification * remove option to specify withdrawal amount, instead always withdraw entire balance * move cuts and signer to config * up min platform fee to 5% * update affiliate fee to be 15% * explicitly initialize as zero * replace platform wallet * make sure tests are still working by restoring test platform address Co-authored-by: Sussy Kneel <sussykneelsnft@protonmail.com> * Add CID param to invites (#8) * implement affiliate storage and new withdraw function; add affiliate parameter to mint function (just passing an address for now) * add referral sig verification * remove option to specify withdrawal amount, instead always withdraw entire balance * move cuts and signer to config * up min platform fee to 5% * update affiliate fee to be 15% * explicitly initialize as zero * replace platform wallet * make sure tests are still working by restoring test platform address * update deploy scripts, clean up Archetype * add referral code encoding sample * remove duplicate code * add to gitignore Co-authored-by: Sussy Kneel <sussykneelsnft@protonmail.com> * do some weird stuff I dunno * add Remilia contract * Implement new archetype features: - support affiliate and mint discounts - optional alternate owner address for withdrawals - super affiliate - receives half of platform fee - make affiliate fee modifiable. - add # of mints to Referral event * add comment about mint tier ordering * update erc721a and use solady libs * add tokenMsg storage option * add ability to set/lock max supply and discount structure * add lock option for ownerAltPayout * Update dependencies and add invalid config checks (#11) * update dependencies and add invalid config checks * change _safeMint to _mint * add test addition I forgot to commit * Implement burn to mint method * recomment test platform * add test cases * group methods based on public, ownerOnly, internal (#17) * group methods based on public,ownerOnly,internal * make compute price public again * add limit and start time to burnConfig and implement onlyPlatform modifier * update superaffiliate param name * fix max supply check * change to totalMinted * add test for max supply; run lint * add to address to mint * allow max supply to be changed to current supply * add mintTo method, keep mint method the same * default reveal to true, make reveal() a toggle * add password to setmaxsupply * add goerli config * bump version and remove outdated comment Co-authored-by: PolyDegen <polydegen@protonmail.com> * add tests for burn disabling and timestamp * add burn balance check Co-authored-by: PolyDegen <polydegen@protonmail.com>