1. May 28, 2019
    • Luke Schoen's avatar
      feat: Send transaction with data field and allow amount to be zero · 6cc59cfd
      Luke Schoen authored
      * Update Send transaction UI so "amount" field can be 0, since some users may want to just send some data (i.e. https://github.com/chainx-org/ChainX/issues/66)
      * Set the default amount value to be 0 and not required
      * Update Send transaction UI to support "data" field in hex (with 0x prefix)
      * Use a hard-coded Gas Limit of 200,000 when user provides hex "data" value
      * Remove logic that doesn't make sense (i.e. `else if (amountBn.isZero()) {`)
      * Update validation messages
      * Add support for Blockscout link when user using Goerli testnet
      * Update internationalisation
      * Use custom `isHexString` function instead of the ethereumjs-util's version. The ethereumjs-util's version is used by MyCrypto and doesn't work properly.
      * Tested on Goerli testnet by creating two accounts, requesting Goerli tokens, running with `--chain goerli` appended to the end (i.e. `"start": "cross-env ELECTRON_START_URL=http://localhost:3000 electron-webpack dev --chain goerli",` in fether/packages/fether-electron/package.json), and sending a transaction with the high gas price, the hex data. For example, for ChainX convert your ChainX Address (UTF8 chars) into Hex code (i.e. copy/paste it at https://www.browserling.com/tools/utf8-to-hex, for example "helloworld" becomes => `\x68\x65\x6c\x6c\x6f\x20\x77\x6f\x72\x6c\x64`, and remove the `\x`, => `68656c6c6f20776f726c64` => then prepend 0x => `0x68656c6c6f20776f726c64` and add that to the "data" field), then send the transaction, and
      when the transaction is successful go to the Blockscout link and you'll see under "Raw Input" ("Input Data" on Etherscan) that you can switch between viewing it in UTF8 or Hex, i.e. https://blockscout.com/eth/goerli/tx/0x7eaec61ce7753fd4c80aec4509c49942b53986585e4864e18134806bffb25f10/internal_transactions)
      * TODO - update Parity Signer to show "data" field value if it doesn't already
      6cc59cfd
  2. May 07, 2019
  3. Apr 15, 2019
    • Luke Schoen's avatar
      feat: Relates to #360. Only allow import from Parity Signer chain account... · 95452ee3
      Luke Schoen authored
      feat: Relates to #360. Only allow import from Parity Signer chain account matching current chain. ETC support (#483)
      
      * feat: Relates to #360. Only allow import from Parity Signer chain account matching current chain. ETC support
      
      * review-fix: Refer to non-Parity chain names in the UI. Add console.error
      
      * review-fix: Do not need to chcek health status before calling chainId RPC of light.js on pages accessed through navigation
      
      * review-fix: Rename function name that matches current chain id with imported chain id of address
      
      * review-fix: Remove unnecessary function
      
      * review-fix: Rename function to accountAlreadyExists
      
      * review-fix: Remove FIXME. See https://github.com/paritytech/fether/pull/483#discussion_r270834847
      
      * review-fix: Refactor to use util functions isEtcChainId, chainIdToString, isNotErc20TokenAddress
      
      * fix: Fix typo in comment
      
      * review-fix: Change wording of parity phrase comment
      
      * review-fix: Do not clear isImport as not account related
      
      * fix: Clear error so error when recover from seed phrase not still shown if then click to recover from QR code
      
      * fix: Rename so signerChainId correctly destructured and not undefined
      
      * review-fix: Remove async/await from clear
      
      * fix: Avoid mapping signer chain id to chain name since too much maintenance with Parity Ethereum
      
      * review-fix: Remove await from createAccountStore
      
      * tests: Add colour to fether-react tests
      
      * refactor: No need to parseInt on the signerChainId
      
      * refactor: Use isNotErc20TokenAddress
      
      * refactor: Use isNotErc20TokenAddress again
      
      * refactor: Add isErc20TokenAddress util so more readable
      
      * fix: Replace valueOf with .eq. Fix so obtain BN from props
      
      * refactor: Combine into single if statement when checking if valid Eth/Etc address
      
      * refactor: Update utils without unnecessary return block
      95452ee3
  4. Apr 12, 2019
    • Luke Schoen's avatar
      feat: Relates to #402. Internationalisation. Base Support (#452) · 649d6bf0
      Luke Schoen authored
      * chore: Update to latest React 16.8.3 to requirements of react-i18next
      
      * feat: Scaffold basic translation with English and German
      
      * feat: Relates to #402. German translation fully working
      
      * fix: Switch back to English by default
      
      * fix: Allow user to switch between languages in preferences of context menu
      
      * feat: Translate the context menus
      
      * refactor: Remove German language. Add as separate PR
      
      * refactor: Remove blank line
      
      * docs: Update Readme with Internationalisation Add New language instructions
      
      * docs: Update Readme with Known Issues and Usage instructions
      
      * review-fix: Disabled tooltip Please fill out this field. Add High and Low tx speed
      
      * review-fix: Update license headers to be 2019 instead of 2018
      
      * review-fix: Change ns1 to fether-electron and fether-react. Use pino.debug
      
      * fix: Add missing i18n conversion for macOS Edit menu
      
      * review-fix: Remove unused i18next browser languagedetector dependency
      
      * merge latest from master and fix conflicts
      
      * merge latest master and fix conflicts. TODO do not expose remote
      
      * fix: Do not expose remote. Only expose add and remove listener, and reload via bridge
      
      * feat: Convert new release available text to i18n
      649d6bf0
  5. Apr 08, 2019
    • Luke Schoen's avatar
      fix: Relates to #124. Security (#451) · d0ae2071
      Luke Schoen authored
      * feat: Security aspects for fether-electron. See #124
      
      * feat: Add Source Maps support
      
      * docs: Add Source Maps guide to Readme
      
      * feat: Add webpack-build-notifier add-on with custom Webpack config
      
      * fix: Remove duplicate dependency
      
      * WIP
      
      * WIP
      
      * review-fix: Configure CSP depending on NODE_ENV
      
      * fix: Fix worker-src for the camera in production
      
      * review-fix: Remove unnecessary config of source maps dependency
      
      * Use preload script as buffer between main and renderer processes (#463)
      
      * fix: Remove is-electron since now using preload script
      
      * fix: Remove old preload script
      
      * fix: Do not expose electron, remote, or require to web app
      
      * fix: Add newline
      
      * feat: Single Fether instance lock
      
      * fix: Move preload to static folder so works with binary
      
      * review-fix: Remove fix for webview since not used. Add comment incase used in future. Fix other event handling code
      
      * review-fix: Add optional opt-in to using Webpack notifier plugin by running with NOTIFIER=true yarn start
      
      * review-fix: Use pino.debug instead of console.log
      
      * review-fix: Add worker-src blob to CSP in development for webcam
      
      * review-fix: Update handling of untrusted urls and sessions and certificates
      
      * review-fix: Convert to WSS. Move CSP into array like in Parity-JS Shell. Update CSP
      
      * review-fix: Update CSP to avoid duplication
      
      * review-fix: Remove from new-window event listener that which applies to additional new BrowserWindows since not applicable
      
      * review-fix: Combined pino logs
      
      * review-fix: Change to parsedUrl.href instead of origin. Fix trusted urls for dev
      
      * fix: Remote https 127.0.0.1 in prod
      
      * review-fix: Move WebpackBuildNotifier images so not in binary. Fix ico file
      
      * fix: Remove console.logs
      
      * refactor: Cleanup so can merge. Extract for inclusion in separate PR
      
      * review-fix: Remove debugging notes since better in wiki
      
      * review-fix: Remove other lines due to move to wiki
      
      * fix comment
      
      * review-fix: Remove setPermissionRequestHandler since not know if need. Move to https://hackmd.io/O1FA34BuSNyJoPV1Cu3L0A
      
      * review-fix: Move CSP debugging into onHeadersReceived
      
      * review-fix: Fix isParityRunningStatus
      
      * review-fix: Replace parse-url with Node.js url parser
      
      * review-fix: Remove parse-url from dependencies
      
      * fix: Fix logic in setCertificateVerifyProc
      
      * WIP
      
      * review-fix: Dynamically add WS port from CLI to trusted
      
      * review-fix: Update comments with security warnings
      
      * merge latest from master and fix conflicts
      
      * chore: Remove useless console.log
      
      * misc: See commit details
      
      * Remove --ws-origins from CLI, hard-code instead
      * Remove --ws-interface from CLI, hard-code instead
      * Ignore --ws-interface and --ws-origins flags in CLI
      * Add hard-coded default trusted WS interface to window.bridge
      * Add default WS port to window.bridge
      
      * WIP - start implementing isDev. See FIXME for future work required
      
      * review-fix: Use appIsPackaged instead of NODE_ENV
      
      * fix: Add IS_PROD to constants and assign appIsPackaged to it. Expose it to frontend so no longer use NODE_ENV
      
      * feat: Add wiki Fether FAQ to trusted urls since required by PR #482
      
      * fix: Fix untrusted blockscout.com error in setCertificateVerifyProc
      
      * review-fix: fix blocked image hosting and external blockscout urls
      
      * review-fix: trust github token icons
      
      * review-fix: Rename network to fetherNetwork so custom config avoids naming conflict
      
      * review-fix: Remove duplicate pino.debug for CSP
      
      * review-fix: Remove WsSecure until wss and certificates implemented
      
      * review-fix: Update config to show Electron security warnings in all environments
      
      * review-fix: Remove use of wsInterface
      
      * refactor: Refactor tests inside describe blocks
      
      * tests: Add chrome dev tools to tests for trusted urls
      
      * review-fix: Use NODE_ENV and Electron app.isPackaged
      
      * fix: Rebuild yarn.lock
      
      * fix: Fix linting to arg passed to correct script
      
      * review-fix: Remove ws-origins flag and trusted ws origins
      
      * test: Fix failing test
      
      * review-fix: Remove package-lock.json
      
      * fix: Use NODE_ENV consistently instead of process.defaultApp
      
      * fix: Change to hash instead of transactionHash for blockscout
      d0ae2071
  6. Mar 25, 2019
    • Amaury Martiny's avatar
      refactor: Don't call transactionCountOf$ until needed (#414) · 9fb795ce
      Amaury Martiny authored
      * Show parity/light.js's logs too
      
      * Remove txCount from withAccount
      
      * withBalance shows component immeidately
      
      * Play around
      
      * Make it work
      
      * Cleaner code
      
      * Remove 'Loading account tokens...' modal
      
      * Re-order import
      
      * Optimize code
      
      * Fix regression
      
      * Fix typo
      
      * Luke's grumbles
      
      * Put "checking..." when fetching async values
      
      * Show gas error on amount field
      9fb795ce
  7. Mar 22, 2019
  8. Mar 21, 2019
    • Axel Chalon's avatar
      Parity Ethereum bundling (#458) · 674e3bf3
      Axel Chalon authored
      
      
      * Parity Ethereum bundling
      
      * Grumbles; update light.js
      
      * Grumbles
      
      * Merge in PR#394 ac-upd-post: refactor sendStore post/postRaw
      
      * Download highest version matching requirement rather than latest beta
      
      * Rename RequireVersion to RequireParityVersion
      
      * Grumbles
      
      * Change Parity version requirement to ~2.4.1
      
      * Fix --no-run-parity with Parity already running
      
      * Grumble
      
      Co-Authored-By: default avataraxelchalon <[email protected]>
      674e3bf3
  9. Mar 12, 2019
  10. Feb 09, 2019
  11. Feb 08, 2019
  12. Feb 07, 2019
    • Luke Schoen's avatar
      review-fix: Change to const · 62c80716
      Luke Schoen authored
      62c80716
    • Luke Schoen's avatar
    • Luke Schoen's avatar
      refactor: Replace STATUS symbols with status object. Rename health states · 0028f1ce
      Luke Schoen authored
      * Change health states to node-internet, node, and sync
      
      * Change from using STATUS symbol states to using a status object that contains the different states with their status
      
      * Show chain name and percentage in modals too
      0028f1ce
    • Luke Schoen's avatar
      fix: Add connected-offline state. Wrap individual components with RequireHealthOverlay · f7e110be
      Luke Schoen authored
      Summary of actions performed:
      
      * App.js routes
      	* AccountsList
      		* New functionality - `<RequireHealthOverlay require='connected-offline'>`
      			* Note: we need to be connected even for the AccountsList page since most accounts actually come from parity-ethereum (as pointed out by @amaurymartiny). New functionality (@amaurymartiny proposal) uses additional 'connected-offline' state so if we are connected to the node but not to the internet we can show the AccountsList page
      	* Accounts (token list page)
      		* Retain existing functionality - `<RequireHealthOverlay require='sync'>`
      	* Create Account / Import Account
      		* New functionality - `<RequireHealthOverlay require='connected-offline'>`
      	* Backup Account
      		* New functionality - `<RequireHealthOverlay require='connected-offline'>`
      	* Onboarding
      		* New functionality - no overlay since not wrapping App.js
      	* Search tokens (Whitelist)
      		* Retain existing functionality - `<RequireHealthOverlay require='sync'>`
      * Send.js routes
      	* TxForm, Unlock, TxQrCode, ScanSignedTx, SignedTxSummary
      		* Retain existing functionality - `<RequireHealthOverlay require='sync'>`
      	* Sent
      		* Retain existing functionality by wrapping the individual component instead of App.js with: `<RequireHealthOverlay require='connected' fullscreen>`
      
      * Note: `RequireHealthOverlay` has two states:
      		* `require='connected-offline` no alert/overlay when user connected to a local node but not connected to the internet
      		* `require='connected'` shows full screen alert when the user is not connected to the node and and not connected to the internet
      		* `require='sync'` shows when the user is not sync
      * Note: Only the Sent component has a fullscreen overlay
      * Note: This wraps everything related to eth/token/balance/transfer with `require='sync'`
      * Note: We are not wrapping App.js anymore since when using both `<RequireHealthOverlay require='connected' fullscreen>` in addition to wrapping other components such as Accounts.js with `<RequireHealthOverlay require='connected-offline'>` doesn't allow it. Instead just wrap individual components
      f7e110be
  13. Feb 05, 2019
  14. Feb 04, 2019
  15. Feb 01, 2019
    • Luke Schoen's avatar
      test: Fix all failing tests · d2c41d0d
      Luke Schoen authored
      * Update tests to include missing `token` property to a Tx of Ether or Token
      
      * Update tests to include missing `address` property to a Tx of Ether to fixes `TypeError: Cannot read property 'address' of undefined` error
      
      * Update tests to include missing `options` and `args` properties to the Tx so the second argument passed to `transfer$` in `contractForToken(token.address).transfer$(..., ...)` is not NaN
      
      * Fix error `ReferenceError: regeneratorRuntime is not defined`
      d2c41d0d
  16. Jan 31, 2019
    • Luke Schoen's avatar
      test: Fix Babel decorators plugin errors · d293a7df
      Luke Schoen authored
      * Fixes `SyntaxError ... Decorators transform is necessary.` (regarding use of `@observable`)
      * Fixes `Decorating class property failed. Please ensure that proposal-class-properties is enabled and set to use loose mode. To use proposal-class-properties in spec mode with decorators, wait for the next major version of decorators in stage 2.`
      d293a7df
  17. Jan 23, 2019
  18. Jan 22, 2019
  19. Jan 14, 2019
  20. Jan 07, 2019
    • Axel Chalon's avatar
      Integrate Parity Signer into Fether. · 5174c8fc
      Axel Chalon authored
      - Add option to import a Parity Signer account. It is then stored in
      local storage.
      
      - Send transactions with Parity Signer accounts
      
      - Refactor sendStore so that "token" (and chainId) is inside this.tx;
      avoids having to pass `token` around every function, and it makes sense
      to put it in the object since it is part of the tx info.
      
      - Add account type (either node or signer) to accountsInfo
      
      - Add account type to withAccount; output props are now `{account:
      {address, type}}` instead of `{accountAddress}`
      5174c8fc
  21. Jan 04, 2019
  22. Dec 31, 2018
  23. Dec 20, 2018
  24. Dec 18, 2018
  25. Dec 12, 2018
  26. Dec 11, 2018
  27. Dec 10, 2018