* 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
* Rsk network with checksum
* Initial change from chainid everywhere to selectors
* Fix ternary
* Check in address book changes to lower case. Currently a little busted.
* Fix validation
* Fix tests.
* Identicon back to SFC
* Remove unnecessary prop
* Paper Wallet Refactor (#1950)
* Convert print wallet to save png image. Move all styles into CSS.
* Fix re-print paper wallet with save modal
* Address PR comments
* Initial scaffold of enclave
* Cleanup types
* Add comments
* Do not truncate errors, pretty output
* Introduce helpers for sagas
* Update yarn lock
* Convert enclave into its own lib. Implement client and server.
* Check in progress
* Initial types
* Remove unused lib
* Finish types
* cleanup
* Switch over to using electron protocol, remove code thats no longer necessary
* Refactor Ledger and Trezor wallets to provide all functionality via libs. Run chain code generation thru Enclave.
* Check in trezor work
* Transaction signing
* Message signing
* Display address
* Fix deallocation of trezor
* Adjust API
* Remove unused getAddresses
* Fix imports and filenames to cooperate with internal typings
* Fix type uncertainty
* Add persistent message to Ledger unlock.
* Update ledger help link to kb
* Convert ledger over to updated libs
* Fix jest config
* Enclave README
* Unnecessary assertion
* Adjust tip
* Type ledger errors
* Reduce enclave client code.
* No default exports
* l18n user facing enclave errors
* Reduce repeated enclave code by splitting it into its own wallet lib. Fix some types
* tslint
* Reduce repeated enclave code by splitting it into its own wallet lib. Fix some types and error messages.
* Electron TREZOR Support (#1946)
* Type trezor connect.
* Check in trezor code
* Implement TREZOR wallet
* Convert TREZOR to use enclave class like Ledger.
* Switch to mycrypto fork of trezor lib. Remove unused dependencies.
* remove unnecessary window attachment
* tslint
* Initial work on refactoring node definitions to reduce number of places theyre defined, amount of copy pasting.
* Use makeAutoNodeNAme instead of manually appending _auto
* Add getNetVersion to list of unsupported methods
* PR feedback
* Rework web template node selector to be a network selector. Refactor some types to help with that. Better handle removing custom nodes.
* Remove color dropdown.
* Fix selecting custom networks. Show notification if change network intent fails.
* Use selectors for current node / network instead of intuiting from nodeSelection
* Add id key to all networks, simplify add and remove custom node and network functions.
* Fix a lot of uses of network.name to use network.id instead.
* Dont allow network chainid conflicts
* Fix web3 network by chainid
* Add testnet badge to network selector
* Change nomenclature from change(Node|Network)(Intent)? to change(Node|Network)(Requested|Succeeded)
* tscheck
* Better code for chainid collision
* Remove console logs
* Fix tests
* Network selector becomes self contained component used both by web header and electron nav.
* Dont select node again
* Additional title text
* tscheck
* Custom node behavior in Electron
* Close panel too
* Convert node label data into selector function
* tscheck
* Parens & space
* Save transactions to local storage.
* Checksum more things + reset hash on network change.
* Fix IHexTransaction type, grab from from tx object directly.
* Refactor storage of recent transactions to use redux storage and loading.
* Refactor types to a transactions types file.
* Initial crack at recent transactions tab on account
* Punctuation.
* Transaction Status responsive behavior.
* Refactor transaction helper function out to remove circular dependency.
* Fix typings
* Collapse subtabs to select list when too small.
* s/wallet/address
* Type select onChange
* Get fields from current state if web3 tx
* Give each network the ability to specify default estimates, and whether or not they should fetch estimates from API. Convert gas slider to always use estimates.
* Fix gas cache invalidation, invalid too high / low logic.
* Fix up tests.
* tscheck
* Component layer and routing for transaction status.
* Initial start on redux for transactions.
* Initial crack at reducer / actions / saga for transactions.
* Finish off check transaction saga, reducer, component, and page.
* Start splitting networks into their own reducers
* Split out nodes and networks into their own reducers
* Cleanup file structure
* Make selectors for new state
* Change custom network typing
* re-type repo
* Fix up components to use selectors, work on fixing sagas
* Provide consistency in naming, fix more sagas
* Get non web3 node switching working
* Split config rehydration off into a different file for store
* Inline auth for custom nodes
* Include typing for app state
* moar selectors
* Get web3 working + cleanup sagas
* Cleanup tsc errors
* Use forof loop instead of foreach for clearing pruning custom networks
* Add reducer tests for new redux state
* Export needed variables
* Add console error
* Remove old comment
* Work on saga tests
* Get passing existing saga tests
* Fix more tests
* Remove irrlevant tests
* add console error
* Get rest of tests passing
* Fix merge errors
* Remove random text
* Fix store saving
* Fix selector lib only grabbing from static nodes
* Fix custom node removal crashing app
* Infer selected network via node
* Prune custom networks properly on node removal
* Infer network name from chainid from selecting state
* Cleanup tsc errors
* Remove MEW nodes for main and testnet
* Handle opening of external links in electron. Minor refactor of window code.
* Convert updates from in-app modal to electron dialogs. Remove in-app code and preload bridge.
* Refine new window blocking. Re-enable tsconfig to look at electron-app.
* Clean up shared
* Whoops, wrong protocol format
* Basic webpack build started.
* Get build working with electron-packager. Not fully satisfied, might investigate electron-builder.
* Custom title bar
* Rewrite all webpack configs to use common function. Organize webpack utils. Split into multiple dist folders.
* Replace electron build with electron-builder. Leave around packager for a bit.
* Check in progress on updater.
* Update modal flow.
* Fix tscheck.
* Adjust publish info.
* Arbitrary version bump.
* Bump version again.
* 5.0.2 bump fix autodownload.
* 5.0.2 bump again, readd dmg
* 5.0.3 bump
* Turn auto update back off. Log errors. Revert versions.
* Add os-specific builds. Improve update failure.
* Open external links in browser in electron.
* Remove custom title bar temporarily.
* Add info about the update download to the modal.
* Turn off development changes.
* Take the postBuild sorting script and move it into a webpack config.
* Initial conversion to typescript and electron-webpack.
* Switch from electron-webpack back to custom config, clean up unused code, typify electron bridge.
* Better typing for bridge.
* Remove unnecessary file.
* Reminify.
* Add shared folder resolving to jest config.
* Add enum to electron events