* Add a new route for AddressBook
* Further templating of the AddressBook view
* Add initial functionality to handle a table of existing address labels
* Make the linter happy
* Adjust paths
* Factor out TableRow and add common functionality
* Add initial Redux boilerplate for addressBook | fix minor linting issues
* Swap out terminology and types
* Connect up to Redux
* Connect data for AddressBookTable to Redux
* Use temporary fields for addition
* Remove alignment and index column
* Stopping point
* Adjust the sizing of rows to be consistent
* Initial implementation of a dropdown for the address field
* Minor styling to dropdown
* Stopping point
* Apply a focus concept onto the factory
* Add keyboard controls for the address field dropdown
* Adjust label of address field when it matches an addressBook entry
* Properly handle attempting to blur a non-existent component
* Minor styling changes on dropdown box
* Standardize address casing, add accessibility to dropdown
* Create an addressLabel component
* Pass refs correctly and fix some typings
* Exact version
* Add module name mapping for shared/keycodes
* addressBook reducer tests
* Add functionality to DeterministicModal
* Minor changes / Add test for addressBook selectors
* Move out AddressBookTable to a component
* Typing, translation and restructuring
* More typing and translation fixes
* More linting fixes
* More type changes
* Variable name for dropdown background
* Fix TS type errors, lint errors, remove unused props
* Used a different selector and removed method: AddressBookTable
* Linter was mad
* Linter mad again :(
* Add a translation and adjust styling of AddressBookTable
* Move the onBlur to a class method
* Prevent the default behavior of up/down/enter for dropdown
* Let's do it this way instead
* Adjust the styling on DeterministicWalletModal labels
* Change `AddressBookTable` into a pseudo-table using section and div
* Use readable keys vs. keycodes
* Put the dropdown in InputFactory and position it correctly
* Sanitation of label adding and changing
* Prevent duplicate labels in AddressBook and Row
* Add a box shadow and use `invalid` class insted of custom
* Use emphasis vs strong for address in dropdown
* Display the label undernearth the input vs. changing it
* Isolate AccountAddress into its own component
* Introduce interactivity to AccountAddress
* Fully incorporate with Redux
* Validation for AccountAddress
* Add validation notifications for address field on AddressBookTable
* Minor formatting
* Adjust wrappage for optimal flexboxxing
* Make AddressBookTable responsive
* Show an invalid input in "real time" instead of only on submit
* Real time input validation for AddressBookTableRow
* Responsive-ize the To address dropdown
* Hide identicons instead at small enough screen sizes
* Fix repsonsiveness of dropdown further
* Fix responsiveness of table rows and inputs
* Truncate account info and switch identicons to the right for consistency
* Use classnames instead of targetting element directly for DWM
* Display a notice if the entered query doesnt match a label and isnt an addr
* Don't show an error on the To address if its a label entry
* Display an error under AddressBookTableRow in real time
* Display errors in real time for AddressBookTable temp inputs
* Add realtime validation to AccountAddress
* Ensure toChecksumAddress is used when entering labels to address manager
* Show errors even after blurring.
* Create a ducks/ implementation for addressBook
* Duck-ize notifications
* Duck-ize customTokens
* Duck-ize deterministicWallets
* Only show errors on address/label entry if they have been blurred
* On certain inputs, show an invalid input immediately
* spec files in same directory
* Rename top-level redux directory
* Duck-ize gas
* Add displayed errors for labels with 0x and labels containing ens
* Move ENS checking validation out
* Add a saga for addLabelForAddress
* Completely revamp the redux side of Address Manager and test it all
* Adjust components to use new redux addressBook
* Incorporate new redux into AddressBookTableRow and clean up for linter
* Make linter and tests happy
* Another reduxy overhaul
* Still fixing it
* More redux updates
* Finalize redux stuff.
* Incorporate new reduxy way into AddressBookTable & Row
* Incorporate redux changes into Account Address
* Small tests fix
* Add and fix some selector tests
* Addressing Will's comments
* Shortened visibility class for line length reasons.
* Incorporate ducks pattern on updates addressBook
* Fix typeerror
* Migrate messages to ducks
* For Henry
* Duckify onboardStatus
* Duckify paritySigner
* Duckify rates
* Duckify transactions
* Duckerize wallet
* Reduckerate config
* Adjust exports and tests of every duck so far
* Duckify ENS
* Duckerificate schedule
* Duckificate swap
* Actually use the new sagas; fix a circular dependency problem.
* Duckify transaction (phew)
* Add basics to redux/ directory
* Remove non-ducked redux stuff
* First sweep of redux/ directory
* Combine redundant imports
* Fix more linting stuff.
* A few more type fixes
* Welp... now I know not to use index.
* Sweep components/
* Sweep through containers/
* Im really starting to get frustrated
* The dawn of a new age.
* Linter fixes.
* De-flatten config/ reducers
* Do my thang on config selectors
* Adjust all references to config
* Split up ens reducers
* Wrap up de-nesting ENS
* Big boy refactor
* Split transaction into its reducers
* Fix reducers in transaction/
* Stopping point
* Adjust references to transaction from components
* Fix references to selectors
* Nest broadcast actions
* Nest field actions
* Nest meta actions
* Nest network actions
* Nest sign actions
* Nest broadcast types
* Nested fields types
* Nest meta types
* Nested network types
* Nested sign types
* Implement transaction saga changes
* Huh? No prepush problems?
* Update snappshot
* Reintroduce deleted tests
* A few missing tests found
* Found three missing transaction tests
* Found more tests
* Found the rest of the tests, woohoo.
* Renamed TypeKeys in TRANSACTION
* Specify TRANSACTION_BROADCAST
* Pretty up these imports
* Specify TRANSACTION_FIELDS
* Specify TRANSACTION_META
* Specify TRANSACTION_NETWORK
* Specify TRANSACTION_SIGN
* Adjust imports and add translations
* Update config snapshot
* Post-merge
* Temporary fix for DW/Config sagas so Daniel can continue smoke testing
* Remove first circulat dependency
* Fix more circular dependencies
* Properly structure config indices
* Further restructure config
* Prepare for idea
* Target directly from within features/
* Remove that circular dependency -- woohoo
* Remove the circular dependency from Web3Wallet, temporarily comment some tests pending assistance
* Un-comment the component-in-redux phenomenon
* Move onLoad to the store file
* Adjust addressBook imports/exports
* Adjusted imports/exports for customTokens
* Adjust imports/exports of deterministicWallets
* Adjust imports/exports of ens
* Restructure imports/exports of gas
* Restructure imports/exports for message
* Adjust imports/exports of notifications
* Restructure onboardStatus imports/exports
* Restructure paritySigner imports/exports
* Restructure rates imports/exports
* Restructure schedule imports/exports
* Fix broadcastweb3handler test
* Restructure swap imports/exports/
* Restructure transactionS imports/exports
* Restructured wallet imports and exports
* Hoist all necessary selectors aside from config/**/* and transaction/**/*
* Hoist all top-level selectors from transaction
* [Fix] Estimate Gas on Value Field Change (#1942) @ skubakdj
* Implement right-click context menu (#1780) @ bryanwb
* No Private Keys Online (#1466) @ wbobeirne
* Fix Stuck Node on Metamask Logout (#1951) @ wbobeirne
* [Fix] Make ENS Value Consistent (#1956) @ skubakdj
* Auto token add (#1808) @ HenryNguyen5
* Electron Ledger + Trezor Support (#1836) @ wbobeirne
* Fix Context Menu Popup Parameters (#1957)
* Add RSK network w/ network agnostic refactors (#1939) @ wbobeirne
* Change displayed notification back in helpers.tsx
* Remove newline on shell files
* Re-add newlines
* Remove newling on .travis.yml
* Prettier two files
* Re-add index.scss import in OnboardModal
* Restructure transaction subdirectories
* Everything in transaction/ except for sagas
* Restructure transaction imports/exports
* Nest broadcast sagas
* Nest fields
* Nest meta
* Nest network
* Nest sign
* Use generic names for reduxy stuff in the same directory to save space
* Do everything every in the whole wide world
* Change gas price validation to be string input based
* Change sanitization to use Nunber
* Have validators use Number over parseFloat
* Fix css validation class
* Add valid css to address field
* Add data field validation
* Remove unused import
* Fix button being hidden on inputs
* Dead code removal
* Unify textarea and input class validation
* Adjust validity styling to only apply after a value has been inputted
* Do not pass custom props to DOM
* Fix#1569
* Use common component for handling "to" address
* If to address becomes invalid, hide contract interact explorer
* Add IS_CONTRACT_INTERACTION mode - fix bugs related to contract interact
* Bump shepherd version to fix bugs related to metamask + network switches
* Update mycrypto link downloads
* Update facebook link
* Remove console log from checktx
* Fix dollar sign on contract address in conf modal
* Fix unchecksummed address for metamask signing
* Cleanup unused classname
* Update generate keystore file description to be correct
* Add space to create new wallet banner
* Remove extra variable
* Do checksumming in library function instead of component
* Clear state on address change
* Update account view routing
* Temporarily add unicode character to translated strings for testing
* Temporarily select add unicode to all untranslated strings
* Format changes
* Add all english translations for /account & /generate
* Add the rest of the english translations
* Add a few more missing translations
* Update en translations
* Get selectedLanguage from localstorage instead of redux sttate
* Update snapshots
* Add missing translation keys & Update translate functs & change variable prefix
* translate all markdown strings & remove old translation strings
* Update snapshot
* Add a few more translation strs
* Move raw strings being translated into json
* All translation keys are now Uppercase
* Fix up the last few translations
* Update snapshot
* Uppercase de translation strings
* Bring back shapeshift logo on swap
* Fix contracts tab translations
* Fix a few more translations
* Fix translations
* remove debugging stuff
* Update snapshots
* Use react.fragment as markdown root renderer
* Seperate markdown translations into their own function
* Clean up translation functions
* Clean up translation functions
* Update snapshot
* Fix some broken translation strings
* Add prettier ignore file
* Reorganize files to better match other components.
* Initial UI for wallet buttons.
* Fix leftover rebase conflict.
* Wallet selection, styling, mobile handling.
* Initial work on animations.
* Adjusted animations.
* Adjust wallet unlock forms to be more uniform. Fix view address saying 'unlock'
* Adjust tooltips.
* Fix embedded decrypt components.
* Cover whole sign msg form with decrypt.
* Give deploy contract a better unlock treatment like sign msg.
* Reset decrypt component on hide / show
* Unused var
* Fix tooltip hover.
* Fix hover lift.
* Make spacing better on mobile.
* Back button mobile handling.
* Redesign mobile button icons. Prevent clicking through when clicking on icons.
* TSCheck fixes.
* Attempt to unlock MetaMask onClick, and provide existing flow with notification when unlock fails.
* Get rid of outline.
* Remove decrypt min height. Make view only textarea.
* Add change wallet buttons to deploy contract and sign msg.
* Standardize
* Check in.
* Add read only wallet and new types for that. Convert some components to require full wallet.
* Fix readonly property, fix uncaught throw.
* Disable address only on some tabs.
* Use FullWalletOnly render callback to handle signing.
* Work around uncertain wallet type.
* Fix function args.
* Undo bug fix that should be done in another branch.
* Disable button while address is bad.
* Remove log.
* Convert anonymous functions to class functions.
* Progress commit -- ethereumjs-wallet typings
* Add hdkey module + better wallet typing
* Add provider-engine typings
* Add jsdoc descriptions for hdkey constructor methods
* Fix missing return type
* Fix another missing return
* Make provider engine options optional
* Add priv/pubkey members to wallet instance
* Turn into SFC + Use ethereumjs-lib
* Use proper interface naming for V3Wallet
* Switch to ethereumjs-wallet
* Switch to ethereumjs-wallet and refactor using NewTabLink
* Use proper interface naming for V3Wallet
* Use proper interface naming for PublicKeyOnlyWallet
* Strip out wallet classes for ethereumjs-wallet, stuff wallet types in privkey for now
* Seperate wallets into deterministic and non-deterministic, change IWallet and deterministic wallets to adhere to getAddressString
* Fix broken test, remove scryptsy
* Fix broken test, re-add scryptsy to make this PR pass
* Remove uuid from deps and keystore test
* Add ethereumjs-wallet to DLL
* Wrap mnemonic wallet
* Fix definition module for thirdparty wallets
* Fix MewV1 wallet not loading due to wrong library
* Fix tsc error
* Decrease n-factor to 1024, checksum address of keystore
* Fix isKeystorePassRequired
* Fix tsc errors
* Merge package lock
* Update package lock
* regenerate lock file
* Lock typescript to 2.5.2
* Merge develop
* add route and nav tab for new module
* add new module to tabs index
* add signMessage to wallet interface
* add signed message verification, normalize pkey sign
* init Sign & Verify Message tab
* reorder imports
* mock out Trezor
* cast to bool instead of length check
* normalize ledger sign message
* fix broken this context
* add commented message signing to trezor wallet
* correct var to start on sign tab
* remove unused state var
* clean up SignMessage classes
* clean up VerifyMessage classes, remove unnecessary log
* correct event variable types
* remove unnecessary exports
* remove empty classname
* use implicit return
* shorten signMessage method
* remove unnecessary disable
* tweak variable name
* make better use of destructuring, remove console log
* use destructured var
* flatten if statement
* add signMessage method to wallet reducer test