* add cards and styles on texts
* add styles and content
* align card content
* fix text about Safe Multisig
* add new components from SRC
* update SRC
* changes to welcome page
* fix margins
* update SRC
* fix icon size
* update SRC hash
* Dot: replace number by check when wallet is connected
* fix card width
* add url to help to connect wallet.
* remove underline on button as a link (Load Safe).
* Fix buttons
* disable connect wallet button when there is a connected wallet
* fix padding in New Transaction button
Co-authored-by: nicosampler <nf.dominguez.87@gmail.com>
Co-authored-by: Daniel Sanchez <daniel.sanchez@gnosis.pm>
* Remove Warning: React.createFactory() is deprecated
* make TS recognize Window definition by adding an empty export
* Silent MM warning ethereum.autoRefreshOnNetworkChange
* remove warning when requesting data from contract with null address.
* reactGA bump
* remove address from GA
* remove unneeded option
* Disable travis cache
* Set travis to use latest linux build image
* Update to use python3 dependencies
Co-authored-by: Daniel Sanchez <daniel.sanchez@gnosis.pm>
* Upgrade dependencies without breaking changes
* Upgrade react-scripts to v4
* Use import instead of require in icons
* Update styles dependencies
* Remove react-app-rewired as is deprecated and not needed anymore
* Update prettier and testing-library/react dependencies
* Upgrade @ledger for desktop app
* Fix types in fetchSafeTokens test
* Use rescripts to remove ESLint plugin from react-scripts webpack
* Disable travis cache
Co-authored-by: nicolas <nicosampler@users.noreply.github.com>
* Adds patch-package and postinstall
* Creates a patch to add EWC and Volta in web3-eth and web3-eth-ens
* Adds support for ewc in isValidEnsName
* Update web3 ewc patch
* Enables ens lookup for ewc and volta
* Fix eslint
* Update patch
Fix patch-package script in package.json
Co-authored-by: Fernando <fernando.greco@gmail.com>
Co-authored-by: nicolas <nicosampler@users.noreply.github.com>
Co-authored-by: Daniel Sanchez <daniel.sanchez@gnosis.pm>
* Upgrade web3 to v1.3.0
* Remove polished direct dependency
* Upgrade types dependencies
* Upgrade ledger and electron related dependencies
* Update gnosis-safe-components to latest version
* Upgrade sentry dependencies to latest version
* Upgrade truffle-contract and axios
* Upgrade electron dependencies
* Use fade instead rgba with hex value
Co-authored-by: nicolas <nicosampler@users.noreply.github.com>
* Adds support for GridPlus Lattice and bumps `bnc-onboard` version.
For more information on the GridPlus Lattice, see https://gridplus.io/lattice
* Disable Lattice wallet from incompatible chains
Co-authored-by: Alex Miller <asmiller1989@gmail.com>
Co-authored-by: Fernando <fernando.greco@gmail.com>
* Add Sentry config and ErrorBoundary Component
* Update travis file to upload sentry sourcemaps
* Add design implementation for ErrorBoundary
* Add Sentry DSN configuration for all networks
* Push sourcemaps to sentry only on staging/production build
* move isProdction to constants file
* change Button for Link
* fix redirect when safeAddress is provided but not a subpath for it.
Co-authored-by: Daniel Sanchez <daniel.sanchez@gnosis.pm>
* sdk version update
* point sdk to a newer commit
* Update iframe message handler
* ConfirmTransactionModal tweaks to support params
* handle sendTransactionsWithParams, display safeTxGas in app tx modal
* new sdk version
* yarn lock update
* install libudev in travis
* update sdk version
* Estimating safeTxGas for Safe Apps Txs WIP
* safetxgas estimation warning wip
* gas estimation in confirm transaction modal
* yarn lock update
* review fixes
* Change estimation loading msg, use imported vars to index payload type
Co-authored-by: Daniel Sanchez <daniel.sanchez@gnosis.pm>
* feat: Support for Volta and EWC
* chore: Store network ID in the ETHEREUM_NETWORK enum itself
* chore: forward tx and address to non-etherscan explorers
* fix test, avoid assigning enum to const
* (Feature) [xDai] - Create network-based configurations (#1420)
Co-authored-by: Matias Dastugue <matias.dastugue@altoros.com>
Co-authored-by: Mati Dastugue <mdastugu@amazon.com>
* (Feature) [xDai] Use generic config (#1422)
Co-authored-by: Matias Dastugue <matias.dastugue@altoros.com>
Co-authored-by: Mati Dastugue <mdastugu@amazon.com>
* fix function name after merge development
* (Feature) [xDai] - Contract interaction abi lookup (#1429)
* Filter Apps by network (#1433)
* Filter apps by network
* (Feature) [xDai] - Parametrize ethscan values (#1424)
* (Feature) [xDai] - Use parametrized network values (#1437)
Co-authored-by: Daniel Sanchez <daniel.sanchez@gnosis.pm>
* (Feature) [xDai] - Use tx service for loading token info (#1435)
Co-authored-by: Daniel Sanchez <daniel.sanchez@gnosis.pm>
* (Feature) [xDai] - Visually differentiate networks (#1431)
Co-authored-by: fernandomg <fernando.greco@gmail.com>
Co-authored-by: Agustin Pane <agustin.pane@gmail.com>
* (Feature) [xDai] - Cosmetic fixes (#1449)
* Add staging configuration for deployment using xDai (#1459)
* Add staging xDai deployment to travis
* Add safe apps production url for xdai
* Add travis rule to build xDai on master or integration branch
* (Bugfix) Set min height to ListContentLayout wrapper #1447 (#1451)
* fix min-height app container and margin to info text at
bottom
* change css unit from % to vh
Co-authored-by: nicosampler <nf.dominguez.87@gmail.com>
* disable OpenZepplin in xDai (#1465)
* remove any in config/index.ts (#1462)
* [xDai] Parametrize Native Coin (#1444)
* fix `generateBatchRequest` calls
* Fix some ETH harcoded values + Add tests
* Fix null or undefined value
* Move nativeCoin outside component + fix toTokenInput function
* Remove native coin from useEffect
Co-authored-by: fernandomg <fernando.greco@gmail.com>
Co-authored-by: Daniel Sanchez <daniel.sanchez@gnosis.pm>
* (Feature) [xDai] - Disable safe sections based on network config (#1468)
* Adds FEATURES enum
Renames features to disabledFeatures
* Uses FEATURES enum instead of hard-coded contract features
* Refactor enabledFeatures function, now checks that there are not disabled features by config before return the enabledFeatures result
* Adds SAFE_APPS and CONTRACT_INTERACTION to FEATURES enum
* Remove SAFE_APPS from sidebar if disabled
* Redirect user from /apps if safe apps are disabled
* Disables contract interaction from config
* Remove !remoteOwners
* Move settings to a constant
* Deploy from xDai integration branch only to xDai staging
* Fix .travis.yml warnings
* Update branch and condition for staging deployment
* Update xDai depoy condition
* (Feature) [xDai] - Fetch collectibles from Gnosis services (#1460)
* Add https to safe-xdai apps link
* make getExplorerInfo return values per network (#1470)
* (Fix) "Approve transaction" modal closes (#1477)
* add equality function to prevent re-renders
- I left the inline equalityFn, as an ad-hoc solution.
First, because we're going to remove this when https://github.com/gnosis/safe-react/issues/1479 is done
Second, because this way it infers the types defined in the useSelector generics
* (Fix) xDai feature issues (#1484)
Co-authored-by: nicosampler <nf.dominguez.87@gmail.com>
* RPC interactions errors (#1475)
* Add options to httpProvider
* Add log when generateatchRequest fails
* add types to generateBarchRequest
* fix types in `generateBatchRequests`
* add `.d` for imports of definition files
* add `undefined` alternative value for `generateBatchRequests` ReturnValues
- also, fixed typing errors in related functions
* fix return values for `generateBatchRequests` in tests
Co-authored-by: fernandomg <fernando.greco@gmail.com>
Co-authored-by: Daniel Sanchez <daniel.sanchez@gnosis.pm>
* (Feature) xDai configs (#1489)
* (Feature) - Replaces ETH with network native coin (#1491)
* Remove networkInfo from the components
* Replaces humanReadableValue to fromTokenUnit
Co-authored-by: JosephBagaric <bagaricjos@gmail.com>
Co-authored-by: Matias Dastugue <matias.dastugue@altoros.com>
Co-authored-by: Mati Dastugue <mdastugu@amazon.com>
Co-authored-by: Agustin Pane <agustin.pane@gmail.com>
Co-authored-by: nicolas <nicosampler@users.noreply.github.com>
Co-authored-by: Daniel Sanchez <daniel.sanchez@gnosis.pm>
Co-authored-by: Agustín Longoni <agustin.longoni@altoros.com>
Co-authored-by: nicosampler <nf.dominguez.87@gmail.com>
Co-authored-by: Mikhail Mikheev <mmvsha73@gmail.com>
* Upgrade dependencies without breaking changes
* Update electron and gnosis dependencies with minor changes
* Upgrade dependencies with minor changes and remove unnecessary electron dependency
* Upgrade truffle-contract to latest @truffle/contract
* Bump new onboard.js version
* Detect if port is used and change it if needed before starting the server
* Fix icon creation
* Fix formatting
Co-authored-by: Daniel Sanchez <daniel.sanchez@gnosis.pm>
Co-authored-by: Mikhail Mikheev <mmvsha73@gmail.com>
* Update travis script to execute tests
* Update ReviewInformation components to remove type error
* Fix tests and import types without .d
* Upgrade dependencies with minor changes
* dep bump, enable strictNullChecks ts compiler option
* remove unused imports
* nullchecks errors wip
* fix clipboard func type errors
* fix send funds validation
* Update style load in ThresholdSettings
* Fix isValidAddress default state for SendCollectible
* fix OwnersColumn return type
* fix extractUsefulMethods typing
* Bug: incoming transactions do not load if it fails to fetch gas for a transaction (#1321)
* check if gas returned values are valid when loading token info for incoming tx
* Fix generateBatchRequests
Co-authored-by: Daniel Sanchez <daniel.sanchez@gnosis.pm>
(cherry picked from commit 372d27f5a6)
* Revert "Revert "Tech debt 1265: Enable strictNullChecks TS compiler option (#1301)" (#1335)"
This reverts commit 43bc4984b8.
* Fix safe clean load
Fix transaction nonce get
* Fix issue adding owners again after reloading the page
* Add viewedSafes correctly to current session
* Add typing and reduce dependency with immutable
* Rename SerializedSessionState to CurrentSessionState
* Remove immutable from currentSession
* Use Dispatch type defined using ThunkDispatch
* Remove if as parameter should always be defined
* Fix test typo issues
Co-authored-by: Mikhail Mikheev <mmvsha73@gmail.com>
* Set desktop app build on workflow_dispatch
* Update workflow_dispatch
* Add yarn cache to build desktop app
Upgrade electron to latest compatible version
Co-authored-by: Mikhail Mikheev <mmvsha73@gmail.com>
* Add tooltip info
* Update icon and types
* Hide tooltip when value and balance are equal to 0
* Remove onClick + Improve perfomance issues
Co-authored-by: Daniel Sanchez <daniel.sanchez@gnosis.pm>
* Bump new onboard.js version
* bump new version
* Clean unnecessary dependencies from yarn.lock file
* Bump dependencies without breaking changes
Co-authored-by: Daniel Sanchez <daniel.sanchez@gnosis.pm>
* Adding storybook
* new layout components
* add preview body
* add styles
* extract walletInfo to a separated component
* remove unused component
* New Layout componentes refactor
* Return type in Root
* change story name
* adding back OpenHoc
* sort import
* fix margins
* split layout
* Move Layout related components to /components/SidebarLayout
* Adding new layout for real
* Some changes and refactor
* Move Modals from safe to sidebar
* move safeAddress logic from safe to sidebar
* move safe container from components
* List refactor
* sidebar navigation
* selected item
* list selected example
* add styles
* add text component to new tx button
* Sidebar without walletInfo
* fix footer and body margins
* add logo Safe Multisig
* update safe-react-components
* List colors and List Icon
* fix subItem
* update safe-react-components
* fix logo margin, add notConnected icon and badge Read Only
* fix merge problems
* add sidebar styles and icon notConnected
* fix readOnly
* fix QR tooltip info
* add Help Center link and fix margins
* Remove 'No safe loaded' text
* review changes
* fix import
* fix Help center margin
* add styles to address
* replace empty div with FlexSpacer component
* rename Sidebar by SafeListSidebar
* fix load and create safe position (top-left)
* Add comment to FlexSpacer
* fix Title margin Safe Creation Progress
* fix Read Only line-height
* review fixes
* review fixes
* rename component
* fix Help Center styles
* return type in DefaultBadge
* Fix types for list component (still wip)
* move sidebarList to a hook
* fix safe route container
* fix src version
* fix list typescript issue
* rename sidebarlayout to applayout
* sidebar fixes wip
* sidebar fixes wip
* remove unused function
* lift sidebar items state up
* fix broken imports
* remove unused files
Co-authored-by: Agustín Longoni <agustin.longoni@altoros.com>
Co-authored-by: Daniel Sanchez <daniel.sanchez@gnosis.pm>
Co-authored-by: Mikhail Mikheev <mmvsha73@gmail.com>
* typechain wip
* add types for multisend
* type definitions improvements
* type safe contract in estimateTxGasCosts
* contract type definitions wip
* SafeInstance truffle -> web3 migration
* fix calls for version
* transactions/send enhancements
* fix safe recor owner type
* Stepper type definitions wip
* dep bump
* stepper types wip
* refactoring stepper component to fix bug in load safe form
* stepper types wip, addressbook reducer types wip
* finally make it work
* Fix ownerlist component hook in load safe
* dep bump
* dep bump
* rollback types/history
* add types for gas calc
* debugging...
* fix using RO web3 for sending txs
* update package.json generate-types command
* add ts-ignore for stepperpage
* db
* dep bump
* as unknown as AbiItem -> as AbiItem[]
* use optional chaining for isExecution in gas esimations
* abiITem -> AbiItem[]
* fix safeVersion utils tests
* fix imports, put upgradeSafe test close to the actual code
* add comment about ts-ignore usage
* downgrade web3 version
* Fix: debounce fetch apps
* refactor: fix AddAppForm name and add missing types
* add `use-lodash-debounce` hook to test debounce functionality
I'm planning to remove this dependency, as it requires to also install `lodash.debounce`. I prefer to implement it ad-hoc.
* refactor AddAppForm to use the observable pattern
* memoize `getAppInfoFromUrl` to prevent requesting the same information over and over
* prevent requesting data if url is not valid
* remove logging
* prevent validating form before visiting the fields
* refactor AddAppForm
reorganize code
* fix: change `any` to `unknown`
* fix: `uitls.ts` types and imports
* refactor: rename `isSubmitDisabled` to `onSubmitButtonStatusChange` prop
* refactor: rename `agreement` to `agreementAccepted`
also, moved `initialValues` to a constant `INITIAL_VALUES` outside the component
* refactor: reimplement `useDebounce` hook in-app
* refactor: extract app manifest verification to a helper function
also fixed types
* fix: prevent accessing `contentWindow` if `iframe` is `null`
* fix: `getAppInfoFromOrigin` return type
also, removed the expected type for the `getAppInfoFromOrigin` calls as it is inferred
Co-authored-by: fernandomg <fernando.greco@gmail.com>
Co-authored-by: Mikhail Mikheev <mmvsha73@gmail.com>
* Remove spaces
* Change naming convention to make clear that only edge whitespaces are removed
Fix function documentation in string util
* Add trim spaces from address input in AddToken and AddAsset
* Use validator type
* Trim spaces on Safe App links
Co-authored-by: Mati Dastugue <mdastugu@amazon.com>
Co-authored-by: Mati Dastugue <matias.dastugue@altoros.com>
Co-authored-by: Mikhail Mikheev <mmvsha73@gmail.com>
* type validators
* safeSelector types
* history 5.0.0 breaking changes adaptation
* replace simpleMemoize with memoize from lodash because of typing issues
* add type definitions for history and react-router-dom
* type fixes
* yarn lock update
* fix router state
* more type improvements
* validator tests wip
* add tests for validators, remove duplicated validators
* add error messages to tests
* fix minValue error message for inclusive param
* Replace jsx.element with react.reactelement
* Fix uniqueAddress validator argument type
* remove comment in AddCustomToken validator
* use absolute import for saferecord in safe paage container