* don't use getLastTxNonce to fetch safe nonce
* fetch safe nonce in checkAndUpdateSafe
* checkAndUpdateSafe refactor
* remove nonce update logic from UPDATE_SAFE reducer
* handle the case when localSafe returns undefined
* handle the case when localSafe returns undefined in buildTransactionFrom
* bump package json version to 1.9.4
Previously we were looking for `decimals` hash in the contract `code`.
There are some contracts like USDC who happen to be behind a FiatTokenProxy, making it upgradable.
By directly calling the `decimals()` method, we interact with the contract and can be sure that the `decimals()` method is present.
fixes#678
* fix: Display new threshold value when changing its value
There was a typo for the `changeThreshold` action
fixes#746
* refactor: use a constant for safe methods names
* Bug: Invalid V in signature with eth_sign (#728)
* Fix invalid V with metamask/ledger
* DONT FORGET TO REVERT BEFORE MERGING: test deployment
* DONT FORGET TO REVERT BEFORE MERGING 2: test deployment
* Revert "DONT FORGET TO REVERT BEFORE MERGING 2: test deployment"
This reverts commit 8331f2a78f7fc8f53eb893899f16edd8238c68ff.
* Revert "DONT FORGET TO REVERT BEFORE MERGING: test deployment"
This reverts commit 03b81e31820ce4fe078a7131c2f0caa2af4870ac.
* BUG: Only injected providers are cached as last used provider (#733)
* cache every used provider, not only injected one
* package json update
* (Fix) Adapt app to back-end changes (#736)
* refactor: Set success status to `201` (CREATED)
* refactor: return `null` when there's no latestTx
* (Fix) Transaction not automatically executed (#716)
* feature: action/reducer to UPDATE_SAFE_NONCE
* refactor: when processing txs returned from backend, extract latest tx nonce value and store it in the safe's state
* chore: update `yarn.lock`
* refactor: `UPDATE_SAFE_THRESHOLD` and `UPDATE_SAFE_NONCE` discarded in favor of `UPDATE_SAFE`
* refactor: use `SAFE_REDUCER_ID` constant
* refactor: remove `updateSafeNonce` file
* (Fix) Change the order of the upgrade methods lookup (#740)
* fix: change the order of the upgrade methods lookup
The `isUpgradeTransaction` method was looking for the methods in an wrong order (#599).
The proper order was set in #610, but `isUpgradeTransaction` wasn't updated.
* fix: contract upgrade version lookup
* Feature: Use eth_sign for hardware wallets connected via onboard.js (#742)
* Use eth_sign for hardware wallets
* install onboard.js with fix from forked repo
* rebuild yarn.lock to fix cached onboard
* update bnc-onboard
* update package json (#743)
Co-authored-by: Fernando <fernando.greco@gmail.com>
* fix: change the order of the upgrade methods lookup
The `isUpgradeTransaction` method was looking for the methods in an wrong order (#599).
The proper order was set in #610, but `isUpgradeTransaction` wasn't updated.
* fix: contract upgrade version lookup
* feature: action/reducer to UPDATE_SAFE_NONCE
* refactor: when processing txs returned from backend, extract latest tx nonce value and store it in the safe's state
* chore: update `yarn.lock`
* refactor: `UPDATE_SAFE_THRESHOLD` and `UPDATE_SAFE_NONCE` discarded in favor of `UPDATE_SAFE`
* refactor: use `SAFE_REDUCER_ID` constant
* refactor: remove `updateSafeNonce` file
* Bug: Invalid V in signature with eth_sign (#728)
* Fix invalid V with metamask/ledger
* DONT FORGET TO REVERT BEFORE MERGING: test deployment
* DONT FORGET TO REVERT BEFORE MERGING 2: test deployment
* Revert "DONT FORGET TO REVERT BEFORE MERGING 2: test deployment"
This reverts commit 8331f2a78f7fc8f53eb893899f16edd8238c68ff.
* Revert "DONT FORGET TO REVERT BEFORE MERGING: test deployment"
This reverts commit 03b81e31820ce4fe078a7131c2f0caa2af4870ac.
* BUG: Only injected providers are cached as last used provider (#733)
* cache every used provider, not only injected one
* package json update
* Fix invalid V with metamask/ledger
* DONT FORGET TO REVERT BEFORE MERGING: test deployment
* DONT FORGET TO REVERT BEFORE MERGING 2: test deployment
* Revert "DONT FORGET TO REVERT BEFORE MERGING 2: test deployment"
This reverts commit 8331f2a78f7fc8f53eb893899f16edd8238c68ff.
* Revert "DONT FORGET TO REVERT BEFORE MERGING: test deployment"
This reverts commit 03b81e31820ce4fe078a7131c2f0caa2af4870ac.
* (Fix) Wrong value for ERC-20 tokens transfers (#679)
The fix attempts to properly differentiate an ERC-721 from an ERC-20 token transaction by identifying if it's a `transfer` transaction looking for a `decimals` method in its code. It the later is not found, then it's considered an ERC-721.
fixes#678
* (Fix) send tx from address book (#677)
* fix: Send funds not working when selecting receipt from addressBook
Also, this commit includes an intent to unify/simplify SendModal component
fixes#632
* Set default value to txData for custom txs
fixes#632
* bump version in package.json (#683)
* Onboardjs - Get wallets by platform, fix ledger/trezor rpcUrls (#665)
* Added desktop support
* Added desktop option and logs for testing
* Get desktop mode from window object
* Add torus support and remove logs
* Update function name
* Upgrade onboardjs version
* fix ledger/trezor rpcUrls
* Bump version to 1.8.3
Co-authored-by: Mikhail Mikheev <mmvsha73@gmail.com>
* Master/dev conflict fix (#685)
* Added desktop support
* Added desktop option and logs for testing
* Get desktop mode from window object
* Add torus support and remove logs
* Update function name
* Upgrade onboardjs version
* v1.8.2 (#682)
* (Fix) Wrong value for ERC-20 tokens transfers (#679)
The fix attempts to properly differentiate an ERC-721 from an ERC-20 token transaction by identifying if it's a `transfer` transaction looking for a `decimals` method in its code. It the later is not found, then it's considered an ERC-721.
fixes#678
* (Fix) send tx from address book (#677)
* fix: Send funds not working when selecting receipt from addressBook
Also, this commit includes an intent to unify/simplify SendModal component
fixes#632
* Set default value to txData for custom txs
fixes#632
* bump version in package.json (#683)
Co-authored-by: Fernando <fernando.greco@gmail.com>
* fix ledger/trezor rpcUrls
* Bump version to 1.8.3
Co-authored-by: Mati Dastugue <matias.dastugue@altoros.com>
Co-authored-by: Fernando <fernando.greco@gmail.com>
* (Fix) #423 - Pending transaction confirmation loop (#637)
* Fixs duplicated notifications
* Implements feedback, now the displayed txHash are stored on localstorage and once the first time we notify the user about it, they won't never appear again
* Uses the last time the user logged in
* Fix safe version null check
Fixs date string comparison
Adds the safe address to the check of last time logged in
* (Feature) Erc721 modal lists (#661)
* Add Assets sections
* (add) collectibles tab
* (add) criptokitty items
* (add) collectible items, definitive edition
* (fix) collectibles were overlapping with bottom banner
* (fix) wording
* (fix) responsive issues
* Install `async-sema` dependency
* Create collectible source classes
- source from mocked data and opensea, it's extendable to import information from other sources
* Update `Collectible` implementation to use new data source
* Create constants file to better handle env variables and default values
* Add description to item's cards
- also added a mocked class with real data
* Fix `saveTxToHistory`, remove hardcoded `CALL`
* Fix after merge development
* Set background color for collectible based on data info
- Changed `withStyles` in favor of a hook-like approach with `makeStyles`
* Enhance collectible card info and group title
* Use current safeAddress to query for collectibles information
- also migrated from `withStyles` to `makeStyles`
* Use proper key values for lists and set more significant names
* update yarn.lock after merge
* Fix linting error
* Move ethAsToken verification outside loop
* Use absolute route for `SendModal` import
* Move Collectibles into redux store
* Update yarn.lock file
* Selectable NFTs
* Divide the `collectible` store into `nftAssets` and `nftTokens`
- Also updated components to retain functionality
- Created a `textShortener` function for better presentation
* Update `yarn.lock`
* Update `yarn.lock`
* Fix item background color
* Clears the tokenID select field when the collectible selected changes
* Open Send modal from the assets section
* Use token name for the token selection dropdown
* Refactor Balances tabs: reduces the amount of props received, exported tokens lists to a component
* Refactor Balances tabs: reduces the amount of props received, exported tokens lists to a component
* Add openZeppelin contracts dependency
* Create ERC721 getter
* Fix types, default values and clean code
* Fix: properly refresh list of collectibles when switching safes
* Add ReviewCollectible step in send NFT
* Displays the assets in the manage list
* Fixs add custom token/asset modal cancel button
* Change items shadow
* Give option to choose what to send by clicking 'Send' button in AddressBook
* Disable [Send] button for Collectibles if not owner
* Set Coins as default option in assets tab
- also fixed styles for `Coins` option
* Use collectible icon in send modal
* Set default message when no assets available
- removed pagination feature
* Create SafeVersionProvider to better handle version-related tasks
Provides:
- current and latest versions,
- a boolean indicating a need for update,
- an upgradeSafe callback to trigger upgrade from any place,
- a list of enabled features, depending on the current version
- the latter needs a refactor like extract features outside the provider
and define constants for the features.
* Force build
* Update `yarn.lock`
* Disable Manage list for NFTs
* Implements manage list to add/remove assets
* Implements manage list to add/remove assets
* Merge branch 'feature/#469-ERC721-feature-implementation' of https://github.com/gnosis/safe-react into feature/#469-ERC721-feature-implementation
# Conflicts:
# src/routes/safe/components/Balances/Collectibles/index.jsx
# src/routes/safe/components/Balances/index.jsx
# src/utils/constants.js
* Implements blacklisted assets
* Fix container shadow
- Also fixes tables shadow, thanks to @gabitoesmiapodo
* Enable nested routes for balances (assets) tab
* Default to `/balance` if invalid nested path
* Disable [Send Collectible] button, if not supported by safe
* Change sub-menu buttons to clickable text
* Replace Paragraph with Link
* Fix invalid props errors for Link component
* Fallback to `transferFrom` if `safeTransferFrom` is not implemented
* Use `transfer` as fallback to ERC-721's `safeTransferFrom`
- need to identify ERC721 token using `transfer` and `name` methods
* Display failed transactions
* Use react.lazy for collectibles' modals
* Identify ERC-721 token transaction
* Adds initial components for AddCustomAsset support
* Fix Send Collectibles modal layout/behavior
- disable dropdown list if there's no item to pick
- fix placeholder for tokens list
- fix dropdown list styles
* Set default `isSuccessful` flag to `true`
* Fixs erc721Enabled check
* Adds margin to modal icon
Fix search bar
* Fix hidding buttons in coins table
* Fixs display all available assets by default
* Fixs modal assets
* Fixs blacklistedAssetsAddresses save to storage
Fixs show token button
Co-authored-by: fernandomg <fernando.greco@gmail.com>
Co-authored-by: Gabriel Rodriguez Alsina <gabriel.rodriguez@altoros.com>
* Remove `SafeVersionProvider` (#694)
* (Feature) Safe Deployment #605#111#395#606#396 (#659)
* Stepper component
* proxyfactory web3 contract
* add styles to body steps
* Steps info
* Open component: moving from class to function
* remove opening route and rendering it in Open component instead
* recover safe creation from txHash in localStorage
* remove commented code
* restore commented code
* creatign TX fix
* fix createSafe then function
* fixing stepper
* remove unused code
* remove opening route and finishin both variants of create
* add loader dots svg
* add error state design and loader dots
* fix error section
* add description to steps
* adding etherscan link
* taking values from variables
* fix heigh in body content
* add success svg
* add check image on last step
* fix margin and heigt to body rows
* remove commented code
* remove commented code
* fix for #396
* Fix empty_code
* set error if getReceipt fails
* fixes
* Fix: remove txHash from pendingInfo on retry
Co-authored-by: Mikhail Mikheev <mmvsha73@gmail.com>
Co-authored-by: Agustín Longoni <agustin.longoni@altoros.com>
Co-authored-by: Fernando <fernando.greco@gmail.com>
* Updated modal description
* Update readme (#696)
* Bump 1.5.0 version of onboardjs
* Feature: #528 optimize network requests (#680)
* Generates a cache to avoid multiples getHumanFriendlyToken() for the same token address
* Adds etags implementation for transactions
* Caches outgoing and incoming safe transactions based on etag value
* Removes cachedSafeTransactions, cachedSafeIncommingTransactions
* Refactors getTokenInstance
* Avoid recreating tokens on fetchTokens() once we have them in redux
* Fixs error on catch
* Batch request tokens balances
* Fixs missing token names
Changes the tokens limit from 300 to 3000
* fix: failed to instantiate non-standard ERC-20 tokens
For the batchRequest of balances, we're just using the `balanceOf` method call. So having a simple ABI with that only method prevents errors with non-standard ERC-20 Tokens.
* Removes unnecessary action updateSafeThreshold
Removes unnecessary action fetchEtherBalance
* Updated comments in code
Replaces constant with directly dispatching action
* BatchRequest done right
* fix: invalid action name `savedToken` -> `saveToken`
* Renames getTokenInstance to getTokenInfos
Fixs first load of transactions are empty
* Move fetchTokenBalances to `Balances` and `SendModal` components
* fix: Incoming transaction type
Backend now changed the type from 'incoming' to one of: `'ERC721_TRANSFER', 'ERC20_TRANSFER', 'ETHER_TRANSFER'`
* fix: tokenInstance `symbol` and `decimal` extraction
* Fix property name `decimals` instead of `tokenDecimals`
* Standardize non-standard ERC20 tokens discovery
* fix: isStandardERC20
* Revert "Move fetchTokenBalances to `Balances` and `SendModal` components"
This reverts commit ed84bd92
* Fixs Typo INCOMING_TX_TYPES
Renames tokenInstance with localToken
* Renames getBatchBalances to getTokenBalances
Returns saved tokens instead of tokenInstance in getTokenInfos
* Remove promise returns
Co-authored-by: fernandomg <fernando.greco@gmail.com>
* Feature: Offchain signatures (#668)
* offchain signatures wip
* offchain signing wip
* offchain signatures wip
* offchain signatures wip
* save signatures to the history service
* fix eth signer & useEfefct hook
* offchain signatures wip
* signature check, mainnet testing wip
* dep update
* disable offchain signing for smart contract wallets
* Refactor EIP712 signer
* bring back .env.example
* Check if save version is >1.1.1
* use canTryoffchainSigning boolean variable, add comment about 4001 error
* move semver selector for safe version/offchain signatures to a constant, make use of empty_data for isContractWallet
* remove TYPE when sending txs to history service
* add eth_signTypedData_v4 signer, dep bump, add missing await
* add comments about version check for canTryOffchainSigning variable
* hide "please sign notification"
* dep bump
* dep bump
* Check if connected is ledger before trying offchain signatures
* minor fixes, temp deployment to test trezor
* add hardwareWallet boolean property to wallet model, disable offchain signatures for hw wallets
* (Fix) Owner replacement transaction details (#688)
* fix: No threshold change for owners replacement
* fix: Extract added owner from addressBook
When replacing an owner, the added owner's name was the same as the removed one
* fix: Add or Update addressBook entry for the newly added owner
* Replace `.then` with `async/await`
* Optimize AddressBook entry `name` update
* Revert "Optimize AddressBook entry `name` update"
This reverts commit 00a75d15
* refactor: AddressBook entry from plain JS object to immutable Record
* fix: merge instead of set for the AddressBookEntry record
* refactor: addOrUpdateAddressBookEntry redux action
changed signature to `addOrUpdateAddressBookEntry(entryAddress, entry)`
Where `entry` is an object with only the required fields to be updated
* Fix safe creation from walletConnect (#703)
* Fixes: Offchain signatures (#706)
* offchain signatures wip
* offchain signing wip
* offchain signatures wip
* offchain signatures wip
* save signatures to the history service
* fix eth signer & useEfefct hook
* offchain signatures wip
* signature check, mainnet testing wip
* dep update
* disable offchain signing for smart contract wallets
* Refactor EIP712 signer
* bring back .env.example
* Check if save version is >1.1.1
* use canTryoffchainSigning boolean variable, add comment about 4001 error
* move semver selector for safe version/offchain signatures to a constant, make use of empty_data for isContractWallet
* remove TYPE when sending txs to history service
* add eth_signTypedData_v4 signer, dep bump, add missing await
* add comments about version check for canTryOffchainSigning variable
* hide "please sign notification"
* dep bump
* dep bump
* Check if connected is ledger before trying offchain signatures
* minor fixes, temp deployment to test trezor
* add hardwareWallet boolean property to wallet model, disable offchain signatures for hw wallets
* add personal signer
* prettier fixes
* offchain signatures fixes
* (Fix) New owners as `UNKNOWN` (#697)
* fix: No threshold change for owners replacement
* fix: Extract added owner from addressBook
When replacing an owner, the added owner's name was the same as the removed one
* fix: Add or Update addressBook entry for the newly added owner
* Replace `.then` with `async/await`
* Optimize AddressBook entry `name` update
* fix: store added owner in the addressBook
* Revert "Optimize AddressBook entry `name` update"
This reverts commit 00a75d15
* refactor: AddressBook entry from plain JS object to immutable Record
* fix: merge instead of set for the AddressBookEntry record
* refactor: addOrUpdateAddressBookEntry redux action
changed signature to `addOrUpdateAddressBookEntry(entryAddress, entry)`
Where `entry` is an object with only the required fields to be updated
* refactor: update `addOrUpdateAddressBookEntry` call, due to signature change
* Bug: Eth balance not updating (#709)
* fix prop name for updating eth balance
* remove unneccessary index in import
* typo fixes in safe opening
* Don't reassign transaction in getAwaitingTransactions, check for another transaction executed with the same nonce and not only cancellation ones (#710)
Co-authored-by: Fernando <fernando.greco@gmail.com>
Co-authored-by: Mati Dastugue <matias.dastugue@altoros.com>
Co-authored-by: Agustin Pane <agustin.pane@gmail.com>
Co-authored-by: Gabriel Rodriguez Alsina <gabriel.rodriguez@altoros.com>
Co-authored-by: nicolas <nicosampler@users.noreply.github.com>
Co-authored-by: Agustín Longoni <agustin.longoni@altoros.com>
Co-authored-by: lukasschor <lukas.schor@gnosis.pm>
* fix: No threshold change for owners replacement
* fix: Extract added owner from addressBook
When replacing an owner, the added owner's name was the same as the removed one
* fix: Add or Update addressBook entry for the newly added owner
* Replace `.then` with `async/await`
* Optimize AddressBook entry `name` update
* fix: store added owner in the addressBook
* Revert "Optimize AddressBook entry `name` update"
This reverts commit 00a75d15
* refactor: AddressBook entry from plain JS object to immutable Record
* fix: merge instead of set for the AddressBookEntry record
* refactor: addOrUpdateAddressBookEntry redux action
changed signature to `addOrUpdateAddressBookEntry(entryAddress, entry)`
Where `entry` is an object with only the required fields to be updated
* refactor: update `addOrUpdateAddressBookEntry` call, due to signature change
* offchain signatures wip
* offchain signing wip
* offchain signatures wip
* offchain signatures wip
* save signatures to the history service
* fix eth signer & useEfefct hook
* offchain signatures wip
* signature check, mainnet testing wip
* dep update
* disable offchain signing for smart contract wallets
* Refactor EIP712 signer
* bring back .env.example
* Check if save version is >1.1.1
* use canTryoffchainSigning boolean variable, add comment about 4001 error
* move semver selector for safe version/offchain signatures to a constant, make use of empty_data for isContractWallet
* remove TYPE when sending txs to history service
* add eth_signTypedData_v4 signer, dep bump, add missing await
* add comments about version check for canTryOffchainSigning variable
* hide "please sign notification"
* dep bump
* dep bump
* Check if connected is ledger before trying offchain signatures
* minor fixes, temp deployment to test trezor
* add hardwareWallet boolean property to wallet model, disable offchain signatures for hw wallets
* add personal signer
* prettier fixes
* offchain signatures fixes
* fix: No threshold change for owners replacement
* fix: Extract added owner from addressBook
When replacing an owner, the added owner's name was the same as the removed one
* fix: Add or Update addressBook entry for the newly added owner
* Replace `.then` with `async/await`
* Optimize AddressBook entry `name` update
* Revert "Optimize AddressBook entry `name` update"
This reverts commit 00a75d15
* refactor: AddressBook entry from plain JS object to immutable Record
* fix: merge instead of set for the AddressBookEntry record
* refactor: addOrUpdateAddressBookEntry redux action
changed signature to `addOrUpdateAddressBookEntry(entryAddress, entry)`
Where `entry` is an object with only the required fields to be updated
* offchain signatures wip
* offchain signing wip
* offchain signatures wip
* offchain signatures wip
* save signatures to the history service
* fix eth signer & useEfefct hook
* offchain signatures wip
* signature check, mainnet testing wip
* dep update
* disable offchain signing for smart contract wallets
* Refactor EIP712 signer
* bring back .env.example
* Check if save version is >1.1.1
* use canTryoffchainSigning boolean variable, add comment about 4001 error
* move semver selector for safe version/offchain signatures to a constant, make use of empty_data for isContractWallet
* remove TYPE when sending txs to history service
* add eth_signTypedData_v4 signer, dep bump, add missing await
* add comments about version check for canTryOffchainSigning variable
* hide "please sign notification"
* dep bump
* dep bump
* Check if connected is ledger before trying offchain signatures
* minor fixes, temp deployment to test trezor
* add hardwareWallet boolean property to wallet model, disable offchain signatures for hw wallets
* Generates a cache to avoid multiples getHumanFriendlyToken() for the same token address
* Adds etags implementation for transactions
* Caches outgoing and incoming safe transactions based on etag value
* Removes cachedSafeTransactions, cachedSafeIncommingTransactions
* Refactors getTokenInstance
* Avoid recreating tokens on fetchTokens() once we have them in redux
* Fixs error on catch
* Batch request tokens balances
* Fixs missing token names
Changes the tokens limit from 300 to 3000
* fix: failed to instantiate non-standard ERC-20 tokens
For the batchRequest of balances, we're just using the `balanceOf` method call. So having a simple ABI with that only method prevents errors with non-standard ERC-20 Tokens.
* Removes unnecessary action updateSafeThreshold
Removes unnecessary action fetchEtherBalance
* Updated comments in code
Replaces constant with directly dispatching action
* BatchRequest done right
* fix: invalid action name `savedToken` -> `saveToken`
* Renames getTokenInstance to getTokenInfos
Fixs first load of transactions are empty
* Move fetchTokenBalances to `Balances` and `SendModal` components
* fix: Incoming transaction type
Backend now changed the type from 'incoming' to one of: `'ERC721_TRANSFER', 'ERC20_TRANSFER', 'ETHER_TRANSFER'`
* fix: tokenInstance `symbol` and `decimal` extraction
* Fix property name `decimals` instead of `tokenDecimals`
* Standardize non-standard ERC20 tokens discovery
* fix: isStandardERC20
* Revert "Move fetchTokenBalances to `Balances` and `SendModal` components"
This reverts commit ed84bd92
* Fixs Typo INCOMING_TX_TYPES
Renames tokenInstance with localToken
* Renames getBatchBalances to getTokenBalances
Returns saved tokens instead of tokenInstance in getTokenInfos
* Remove promise returns
Co-authored-by: fernandomg <fernando.greco@gmail.com>
* Stepper component
* proxyfactory web3 contract
* add styles to body steps
* Steps info
* Open component: moving from class to function
* remove opening route and rendering it in Open component instead
* recover safe creation from txHash in localStorage
* remove commented code
* restore commented code
* creatign TX fix
* fix createSafe then function
* fixing stepper
* remove unused code
* remove opening route and finishin both variants of create
* add loader dots svg
* add error state design and loader dots
* fix error section
* add description to steps
* adding etherscan link
* taking values from variables
* fix heigh in body content
* add success svg
* add check image on last step
* fix margin and heigt to body rows
* remove commented code
* remove commented code
* fix for #396
* Fix empty_code
* set error if getReceipt fails
* fixes
* Fix: remove txHash from pendingInfo on retry
Co-authored-by: Mikhail Mikheev <mmvsha73@gmail.com>
Co-authored-by: Agustín Longoni <agustin.longoni@altoros.com>
Co-authored-by: Fernando <fernando.greco@gmail.com>
* Add Assets sections
* (add) collectibles tab
* (add) criptokitty items
* (add) collectible items, definitive edition
* (fix) collectibles were overlapping with bottom banner
* (fix) wording
* (fix) responsive issues
* Install `async-sema` dependency
* Create collectible source classes
- source from mocked data and opensea, it's extendable to import information from other sources
* Update `Collectible` implementation to use new data source
* Create constants file to better handle env variables and default values
* Add description to item's cards
- also added a mocked class with real data
* Fix `saveTxToHistory`, remove hardcoded `CALL`
* Fix after merge development
* Set background color for collectible based on data info
- Changed `withStyles` in favor of a hook-like approach with `makeStyles`
* Enhance collectible card info and group title
* Use current safeAddress to query for collectibles information
- also migrated from `withStyles` to `makeStyles`
* Use proper key values for lists and set more significant names
* update yarn.lock after merge
* Fix linting error
* Move ethAsToken verification outside loop
* Use absolute route for `SendModal` import
* Move Collectibles into redux store
* Update yarn.lock file
* Selectable NFTs
* Divide the `collectible` store into `nftAssets` and `nftTokens`
- Also updated components to retain functionality
- Created a `textShortener` function for better presentation
* Update `yarn.lock`
* Update `yarn.lock`
* Fix item background color
* Clears the tokenID select field when the collectible selected changes
* Open Send modal from the assets section
* Use token name for the token selection dropdown
* Refactor Balances tabs: reduces the amount of props received, exported tokens lists to a component
* Refactor Balances tabs: reduces the amount of props received, exported tokens lists to a component
* Add openZeppelin contracts dependency
* Create ERC721 getter
* Fix types, default values and clean code
* Fix: properly refresh list of collectibles when switching safes
* Add ReviewCollectible step in send NFT
* Displays the assets in the manage list
* Fixs add custom token/asset modal cancel button
* Change items shadow
* Give option to choose what to send by clicking 'Send' button in AddressBook
* Disable [Send] button for Collectibles if not owner
* Set Coins as default option in assets tab
- also fixed styles for `Coins` option
* Use collectible icon in send modal
* Set default message when no assets available
- removed pagination feature
* Create SafeVersionProvider to better handle version-related tasks
Provides:
- current and latest versions,
- a boolean indicating a need for update,
- an upgradeSafe callback to trigger upgrade from any place,
- a list of enabled features, depending on the current version
- the latter needs a refactor like extract features outside the provider
and define constants for the features.
* Force build
* Update `yarn.lock`
* Disable Manage list for NFTs
* Implements manage list to add/remove assets
* Implements manage list to add/remove assets
* Merge branch 'feature/#469-ERC721-feature-implementation' of https://github.com/gnosis/safe-react into feature/#469-ERC721-feature-implementation
# Conflicts:
# src/routes/safe/components/Balances/Collectibles/index.jsx
# src/routes/safe/components/Balances/index.jsx
# src/utils/constants.js
* Implements blacklisted assets
* Fix container shadow
- Also fixes tables shadow, thanks to @gabitoesmiapodo
* Enable nested routes for balances (assets) tab
* Default to `/balance` if invalid nested path
* Disable [Send Collectible] button, if not supported by safe
* Change sub-menu buttons to clickable text
* Replace Paragraph with Link
* Fix invalid props errors for Link component
* Fallback to `transferFrom` if `safeTransferFrom` is not implemented
* Use `transfer` as fallback to ERC-721's `safeTransferFrom`
- need to identify ERC721 token using `transfer` and `name` methods
* Display failed transactions
* Use react.lazy for collectibles' modals
* Identify ERC-721 token transaction
* Adds initial components for AddCustomAsset support
* Fix Send Collectibles modal layout/behavior
- disable dropdown list if there's no item to pick
- fix placeholder for tokens list
- fix dropdown list styles
* Set default `isSuccessful` flag to `true`
* Fixs erc721Enabled check
* Adds margin to modal icon
Fix search bar
* Fix hidding buttons in coins table
* Fixs display all available assets by default
* Fixs modal assets
* Fixs blacklistedAssetsAddresses save to storage
Fixs show token button
Co-authored-by: fernandomg <fernando.greco@gmail.com>
Co-authored-by: Gabriel Rodriguez Alsina <gabriel.rodriguez@altoros.com>
* Fixs duplicated notifications
* Implements feedback, now the displayed txHash are stored on localstorage and once the first time we notify the user about it, they won't never appear again
* Uses the last time the user logged in
* Fix safe version null check
Fixs date string comparison
Adds the safe address to the check of last time logged in
* (Fix) Wrong value for ERC-20 tokens transfers (#679)
The fix attempts to properly differentiate an ERC-721 from an ERC-20 token transaction by identifying if it's a `transfer` transaction looking for a `decimals` method in its code. It the later is not found, then it's considered an ERC-721.
fixes#678
* (Fix) send tx from address book (#677)
* fix: Send funds not working when selecting receipt from addressBook
Also, this commit includes an intent to unify/simplify SendModal component
fixes#632
* Set default value to txData for custom txs
fixes#632
* bump version in package.json (#683)
* Onboardjs - Get wallets by platform, fix ledger/trezor rpcUrls (#665)
* Added desktop support
* Added desktop option and logs for testing
* Get desktop mode from window object
* Add torus support and remove logs
* Update function name
* Upgrade onboardjs version
* fix ledger/trezor rpcUrls
* Bump version to 1.8.3
Co-authored-by: Mikhail Mikheev <mmvsha73@gmail.com>
* Master/dev conflict fix (#685)
* Added desktop support
* Added desktop option and logs for testing
* Get desktop mode from window object
* Add torus support and remove logs
* Update function name
* Upgrade onboardjs version
* v1.8.2 (#682)
* (Fix) Wrong value for ERC-20 tokens transfers (#679)
The fix attempts to properly differentiate an ERC-721 from an ERC-20 token transaction by identifying if it's a `transfer` transaction looking for a `decimals` method in its code. It the later is not found, then it's considered an ERC-721.
fixes#678
* (Fix) send tx from address book (#677)
* fix: Send funds not working when selecting receipt from addressBook
Also, this commit includes an intent to unify/simplify SendModal component
fixes#632
* Set default value to txData for custom txs
fixes#632
* bump version in package.json (#683)
Co-authored-by: Fernando <fernando.greco@gmail.com>
* fix ledger/trezor rpcUrls
* Bump version to 1.8.3
Co-authored-by: Mati Dastugue <matias.dastugue@altoros.com>
Co-authored-by: Fernando <fernando.greco@gmail.com>
Co-authored-by: Fernando <fernando.greco@gmail.com>
Co-authored-by: Mati Dastugue <matias.dastugue@altoros.com>
* Added desktop support
* Added desktop option and logs for testing
* Get desktop mode from window object
* Add torus support and remove logs
* Update function name
* Upgrade onboardjs version
* v1.8.2 (#682)
* (Fix) Wrong value for ERC-20 tokens transfers (#679)
The fix attempts to properly differentiate an ERC-721 from an ERC-20 token transaction by identifying if it's a `transfer` transaction looking for a `decimals` method in its code. It the later is not found, then it's considered an ERC-721.
fixes#678
* (Fix) send tx from address book (#677)
* fix: Send funds not working when selecting receipt from addressBook
Also, this commit includes an intent to unify/simplify SendModal component
fixes#632
* Set default value to txData for custom txs
fixes#632
* bump version in package.json (#683)
Co-authored-by: Fernando <fernando.greco@gmail.com>
* fix ledger/trezor rpcUrls
* Bump version to 1.8.3
Co-authored-by: Mati Dastugue <matias.dastugue@altoros.com>
Co-authored-by: Fernando <fernando.greco@gmail.com>
* Added desktop support
* Added desktop option and logs for testing
* Get desktop mode from window object
* Add torus support and remove logs
* Update function name
* Upgrade onboardjs version
* fix ledger/trezor rpcUrls
* Bump version to 1.8.3
Co-authored-by: Mikhail Mikheev <mmvsha73@gmail.com>
* (Fix) Wrong value for ERC-20 tokens transfers (#679)
The fix attempts to properly differentiate an ERC-721 from an ERC-20 token transaction by identifying if it's a `transfer` transaction looking for a `decimals` method in its code. It the later is not found, then it's considered an ERC-721.
fixes#678
* (Fix) send tx from address book (#677)
* fix: Send funds not working when selecting receipt from addressBook
Also, this commit includes an intent to unify/simplify SendModal component
fixes#632
* Set default value to txData for custom txs
fixes#632
* bump version in package.json (#683)
Co-authored-by: Fernando <fernando.greco@gmail.com>
* fix: Send funds not working when selecting receipt from addressBook
Also, this commit includes an intent to unify/simplify SendModal component
fixes#632
* Set default value to txData for custom txs
fixes#632
The fix attempts to properly differentiate an ERC-721 from an ERC-20 token transaction by identifying if it's a `transfer` transaction looking for a `decimals` method in its code. It the later is not found, then it's considered an ERC-721.
fixes#678