* test: restructure the dir, add config file, divide transfer tests to a separate file.
* test: divide newTokenName tests.
* test: add tests for NewTokenENS, build, external urls, description.
* fix: update tests in newTokenENS.
* test: add owner tests.
* feat: add compile command to subgraph package.json
* test: remove deprecated events and their handlers and tests. add newmint mock handler.
* fix: error in the order of passed parameters in NewMint mock creator function.
* feat: add base contract for billing
* feat: add withdraw function
* feat: add billing requirement to mint
* test: add foundry tests for minting with billing
* refactor: remove transfer billing and add access point
* test: add access point billing foundry tests
* test: add test for billing value change
* test: add hardhat test setup for billing
* test: add hardhat tests for billing
* feat: add withdrawn event and add public withdraw function
* test: add tests for withdrawing founds and access control for billing
* refactor: fix misspells and change variable names
* feat: add initialize params for billing
* feat: add gap to FleekBilling
* fix: testname misspell
* chore: remove the counters lib from the contract and create private vars instead.
* merge: develop. fix conflicts.
* style: remove unnecessary white space
* feat: define the GithubRepository entity and update the Token entity to include it.
* feat: add NewMint event to the contract and emit it in the mint function.
* feat: add newmint entity, update token and gitrepository entities. add handler for entities. update transfer entity handler. update subgraph.yaml config.
* chore: deployment update
* chore: fix proxy file with before deployments
* fix: remove constructor args in verify-polyscan.js file and update contract address at subgraph.yaml
* fix: remove develop from subgraph.yaml gh action.
* merge: develop with auto approval settings into reverse lookup branch
* fix: remove the word settings from acesspointautoapproval param.
* fix: error in hardhat last token id test
* fix: solidity tests.
* fix: proxy contract address in subgraph.yaml.
* chore: run subgraph tests only on main PRs
---------
Co-authored-by: Felipe Mendes <zo.fmendes@gmail.com>
* wip: form for mint
* style: change bgcolor for disabled button
* fix: add key to list items
* styles: add some spacings and border radius
* refactor: change type file and move file validation to form
* feat: add minted nft card. add wallet step
* refactor: add mint card header to not repeat code
* styles: add border radius to svg
* styles: fix styles on mint view
* style: fix height mint view
* fix: fix save repository config
* chore: changes based on PR review
* wip: connecting with gh login
* chore: add env variables
* wip: gh login wiht auth0
* feat: add gh login integration
* chore: remove web3auth packages
* doc: add info on readme to know how to get firebase credentials
* feat: add spinner component (#133)
* fix: fix for polyfills
* refactor: remove loading state cause it was causing a loop
* chore: change placeholder
* feat: add constants env file
* fix: fix polyfills
* refactor: implement async thunk for github login
* wip: add async thunk for github api calls
* feat: implemented async thunk for github api calls
* chore: add promise.all to improve api call performance
* fix: fix console log error
* feat: add accessPointAutoApprovalSettings field to mint, app struct, and expose a function for changing the field later + an event.
* feat: add checks for the autoapproval settings on function addAccessPoint.
* feat: add setApprovalForAccessPoint function and ChangeAccessPointApprovalStatus event.
* test: add new constant variables to the hardhat tests and update mint tests.
* feat: update removeAccessPoint function to check the status and also update getAccessPointJSON to include status.
* test: add two access point test files and fix errors and mismatches in them with the auto approval set up
* feat: remove the access point mapping in the App struct and wherever it was used.
* chore: update foundry tests to match the new interface of the contract.
* test: add new tests for the approval settings
* chore: update foundry tests to match new interface.
* test: update foundry tests and the settings for auto approvals
* feat: keep history of removed APs. Update tests.
* fix: make changes to the contract and tests to fix the tests.
* chore: apply changes Zoruka requested.
* fix: change name of setAutoApprovalSettings function in foundry tests.
* perf: revert back to enums, update hardhat and foundry tests.
* fix: apply requested changes by janison.
* fix: error in hardhat test.
* fix: mint params of a foundry test.
* fix: merge errors.
* fix: revert back to tokenOwner for setAutoApproval functions.
* chore: remove comment for accessPointAutoApproval
* feat: add FleekPausable
* feat: add FleekPausable functions in FleekERC721
* fix: requirePaused logic
* feat: add pause modifiers in FleekERC721
* refactor: move functions to the main contract to add pause modifier
* test: add unpause to test setups
* fix: revokeTokenRole modifier
* test: add initial tests and setup for pausable
* test: all test for pause and pausable states
* test: add test for functions when contract is paused
* test: add pausable hardhat tests
* test: foundry access control test for pausable
* refactor: function names
* fix: remove virtual keywords for functions that must not be overriden
* refactor: set inital state for unpaused
* refactor: add new unified events and remove old multiple ones
* fix: remove indexed from string params on events
* test: add hardhat tests for metadata update changes
* refactor: change event name
* test: add foundry tests for event emits in metadata changes
* refactor: undo changes on accespoint events
* chore: remove subgraph ci tests on prs for develop
* refactor: overload MetadataUpdate event to have multiple type of parameters
---------
Co-authored-by: Shredder <110225819+EmperorOrokuSaki@users.noreply.github.com>
* wip: form for mint
* style: change bgcolor for disabled button
* fix: add key to list items
* styles: add some spacings and border radius
* refactor: change type file and move file validation to form
* feat: add minted nft card. add wallet step
* refactor: add mint card header to not repeat code
* styles: add border radius to svg
* styles: fix styles on mint view
* style: fix height mint view
* fix: fix save repository config
* chore: changes based on PR review
* feat: expose a getToken function that returns all non-nested values of an app. Remove the access point mapping in the App struct.
* test: add test for getToken to hardhat
* test: add test cases for getToken (forge tests).
* docs: update header comments for getToken
* fix: apply Zoruka's suggestion
* fix: apply Zoruka's suggestion for expectingRevert
* fix: revert expectRevert
* feat: add Collection and CollectionOwner entities. Handle CollectionOwner on CollectionRoleGranted and CollectionRoleRevoked events.
* feat: collection entity and its handler.
* feat: add subgraph unit tests to github action.
* feat: add yarn codegen to the github action.
* feat: create a subgraph action, remove unit testing subgraphs from test action.
* fix: add the location of the contracts.
* chore: remove empty tabs from GH workflow files.
* chore: add path to the subgraph github action and also add build command.
* fix: include a yarn compile step in the subgraph github action.
* test: add unit tests for the subgraph for events transfer, NewTokenName, NewTokenDescription, NewTokenExternalURL, NewTokenENS, NewTokenBuild
* fix: import errors
* fix: remove keyword "indexed" for strings in events.
* fix: update subgraph.yaml, schema.graphql, and all generated files with the test files to match the new interface of the contract events.
* fix: expose a makeEventId function to avoid repeating code for id generation and also change logIndex before handling events. Update tests to match the new changes.
* chore: remove Holder.
* fix: wrong import for newLogoEvent
* test: add FleekERC721 test base mint and uri
* chore: update forge-std version
* test: add FleekERC721 burn tests
* test: fix role getter
* test: add access tests for random address
* test: add access tests for owner address
* test: add test revert assertions
* test: apply revert assertions
* test: remove already split tests
* fix: wrong renamed file
* test: move access point tests
* test: refactor access control tests
* test: add deploy test cases
* test: add balance before and after mint test
* test: remove old testsuit
* chore: update foundry test folder strcture
* test: add assertion to verify added role for random address
* test: fix test functions names
* test: remove test_addAccessPoint
* test: add assertion for appAccessPoints length
* test: remove unnecessary assertions on test_tokenURI
* test: rename test files
* test: refactor testFail to test
* folder restructure init - WIP
* Update husky for folder change
* Properly ignore local zeppelin file
* change folder strucutre: update readme and contribution files
* remove chakra from readme list of key dependencies
* run contract workflow steps in contract dir
* Cleanup readmes, split contract into it's own
* Apply some suggestions from code review
Co-authored-by: Shredder <110225819+EmperorOrokuSaki@users.noreply.github.com>
Co-authored-by: Felipe Mendes <zo.fmendes@gmail.com>
* Move .env.example to contracts folder, and use consistent format for directory references in docs
* More readme dir ref fixes
* Update poc note in readme, and removed deploy folder from readme
* Prettier refactor
* Revert "Prettier refactor"
This reverts commit 82249e32aaf6a6e9a4d432c4f89ca365c18972f8.
* Clean up package.json and add prettier ignore
---------
Co-authored-by: Shredder <110225819+EmperorOrokuSaki@users.noreply.github.com>
Co-authored-by: Felipe Mendes <zo.fmendes@gmail.com>
* refactor: update contract with logo and color, add new svg styling
* refactor: fix color storaging
* test: fix tests for new app metadata
* test: fix solidity tests
* chore: update latest deployment files
* feat: update mint script and add assets files
* refactor: move assets files
* refactor: update svg generation styling
* feat: add library deployment storage
* test: fix contract tests
* feat: add setTokenLogo and setTokenColor contract functions
* test: add hardhat tests for new set functions
* test: add foundry tests for new set functions, split out constant strings to constants library
* chore: remove leftover comment
* feat: add setTokenLogoAndColor function
* test: add test for setTokenLogoAndColor function
* test: add test for setTokenLogoAndColor function on foundry
* chore: add the verify command to the package.json file
* docs: add the re-deployment section to the README.md file
* feat: add support for token and holder entities based on transfer events that are emitted from the contract during the mint process.
---------
Co-authored-by: EmperorOrokuSaki <artie.eth@gmail.com>
* Add verify script and update hardhat config to automate all future code verifications on polygonscan
* Update deployments to match the new deployed instance of the contract on polygon mumbai testnet (verified)
* feat: Generate the base of the subgraph by graph-cli based on the verified deployed instance on mumbai
* bug: fixed type errors in the typescript specification file.
* chore: generate a new build of the subgraph
* feat: write a script to perform multiple types of queries on the subgraph
* docs: Write a README for the query-examples directory to guide users on how they can perform queries
* chore: remove the heavy subgraph generated WASM and add all .WASM files to .gitignore
* chore: apply the requested changes from Zoruka on the verify_polyscan.js file
* docs: write the readme doc for the subgraph
* chore: remove deploy from package.json and add build, abis, and generated to .gitignore
* chore: remove abis, build, and generated from the branch
* chore: move query-examples to examples/query/ and gitignore .graphclient
* docs: update readme (add a section for developing and describe build and generated directories better)
* chore: remove graphql from the root package.json file
* feat: add mirror mapping and management
* test: add mirrors tests
* chore: add new functions header comments
* feat: add isMirrorVerified function
* feat: add a list of mirrors to token
* feat: add require minted to appMirrors function
* chore: update solidity compiler on hardhat config
* refactor: add token id to other mirror events
* refactor: change from mirror to access point and update its metadata
* test: updates tests due to contract changes
* refactor: clean up string parser from main contract
* refactor: remove wronge requirement comments
* refactor: strings library (#71)
* refactor: move string parse functions to a library
* refactor: remove not used modifier
* refactor: move svg generation to library
* refactor: remove source from aps
* refactor: rename accessPoint function
* test: fix two foundry test cases
* test: fix tests that were not working.
* fix: apply requested changes.
---------
Co-authored-by: zoruka <zo.fmendes@gmail.com>
* style: add config stithces for drip and storybook
* reafctor: remove commented lines
* chore: remove unused library
* refactor: merge with develop and fix conflicts
* fix: fix storybook
* style: add black bg color for dark mode on storybook
* feat: add mirror mapping and management
* test: add mirrors tests
* chore: add new functions header comments
* feat: add isMirrorVerified function
* feat: add list of mirrors to token
* feat: add require minted to appMirrors function
* chore: update solidity compiler on hardhat config
* refactor: add token id to other mirror events
* refactor: change from mirror to access point and update its metadata
* test: updates tests due to contract changes
* refactor: clean up string parser from main contract
* refactor: remove wronge requirement comments
* refactor: strings library (#71)
* refactor: move string parse functions to a library
* refactor: remove not used modifier
* refactor: move svg generation to library
* refactor: remove source from aps
* refactor: rename accessPoint function