Giter Site home page Giter Site logo

qtum-web-wallet's Introduction

qtum-web-wallet

A web wallet for QTUM.

qtum-web-wallet's People

Contributors

baiqiang avatar daniloshan avatar kieranaltman avatar larryahn avatar pengkunbin avatar qiweiyu avatar qtumweiyu avatar rothos avatar thecatshidog avatar web3yangwang avatar ykris45 avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

qtum-web-wallet's Issues

Can't Send with Ledger

Unable to confirm sending for QTUM or QRC20 tokens using Ledger.

Windows 10 Home version 20H2, Chrome 88.0.4324.150, Ledger Nano S version 1.6.1 , Qtum App version 1.5.0.

After the 2nd confirmation to send QTUM or a QRC20 token, the Ledger displays "Export public key?" and double pressing 3 or more times give the error "qtumwallet.org says Failed to sign with Ledger device: U2F DEVICE_INELIGIBLE"

Chrome 88

Trying Chrome version 75 from https://www.slimjet.com/chrome/google-chrome-old-version.php give a different error "qtumwallet.org says Failed to sign with Ledger device: U2F TIMEOUT".

Chrome 75

Unable to find previous versions of Chrome which allowed sending. Other earlier versions of Chrome could not connect to the Ledger.

Firefox 85.0.2 had similar errors.

COMMIT button active on Create Token page too soon

On entering the “Create Token” page, the “CONFIRM” button is highlighted and active. Clicking this button without filling in the fields on the Create Token page causes an error “newBigNumber() not a number”. Following the pattern of other form pages, the “CONFIRM” button should only be active after all the fields are entered.

create token page

qtum hd wallet path is ?

we create a qtum wallet use path : m/44'/2301'/0'/88'/0' the address like not right , then we try m/44'/2301'/88'/0'/0' and m/44'/2301'/88'/0' also not right...

Restore from Mnemonic Safety

Add better protection for user errors with “Restore from Mnemonic.”

Users are reporting problems reentering the wallet using Restore from Mnemonic, because they don’t notice that a mistyped seed word or mistyped password creates a new address/private key. If they send a transaction to that address, it is unlikely they can restart the wallet with that same mistyped seed word/password, and the funds are lost.

Suggest the following changes:

  1. Add a 6th warning:
    If you use Restore from Mnemonic, the seed words and password must be exactly right or the wallet will create a new address. When using Restore from Mnemonic, confirm you have the correct address.

  2. Using Restore from Mnemonic, the seed words should be verified against the bip-0039 list https://github.com/bitcoin/bips/blob/master/bip-0039/english.txt. Capital letters and extra spaces (easily added by mobile devices) should be alerted and rejected.
    For example, if the seed word was “acquire”, which is on the bip-0039 list, then the following seed words would be alerted and rejected:
    “Acquire” – capital letter
    “acquirw” - typo
    “acquire “ – trailing space

Unwanted NFTs

There is no delete or hide function for unwanted NFTs from others. A wallet could be sent spam or unwanted NFTs and there is no way to remove them without spending gas to send to a different address.

There should be an easy way to remove the unwanted NFTs from display on the wallet, perhaps by having a hide/unhide control. Using an accept list/block list for addresses may be not be as easy or effective.

Is it possible to have a persistent way to hide display of unwanted NFTs?

Crypto Canvas ***9

Feature request: REFRESH Button

Feature request: add a “REFRESH” button to the View Wallet Info and View Wallet Txs pages. Clicking this button would cause the wallet to query the blockchain and update the information displayed.

This REFRESH button could be used after transactions (either sending or receiving QTUM coins or QRC20 tokens) to update the View Wallet Info or View Wallet Txs pages to see a new transaction in the wallet. Currently users must reload the wallet and sign in again to see updates on the View Wallet Info and View Transactions pages. A mockup with the REFRESH button is shown in the link below.

Refresh button

Change Transaction Links to qtum.info

The explorer qtum.info gives better information, especially about token transactions, suggesting linking to qtum.info instead of explorer.qtum.org. Here is an example of qtum.info details about a token transfer:

token transfer with qtum info

A sendtocontract interface

A sendtocontract interface is always needed for Dapps. It can be like this:

  1. Using a GET url to jump to a sendtocontract page.
  2. The page contains a form and a confirm button.
  3. Fill the form with the parameters in GET.
  4. Parameters are the same as Qtum Core sendtocontract API:
    a. Contract Address (required)
    b. Data (optional, default empty)
    c. Amount (optional, default 0)
  5. If the user does not have a wallet, guide him to create a wallet.

Build error

nvm install 12
npm install --global yarn
npm install -g @vue/cli

yarn install
yarn run build
npm install -g serve
serve -s dist

NFT File Should Be Manditory

It is possible to create and NFT without uploading the NFT file.

  1. Click on Create NFT menu
  2. Enter any NFT Name and NFT Description
  3. Click the CONFIRM button
  4. As a result an NFT without any content is created

The COMMIT button is active without an NFT content file uploaded:

No NFT File

Perhaps the COMMIT button should be blocked and an error message displayed if there is no NFT content file uploaded.

Crypto Canvas ***7

Sending More Tokens than in Account

There have been some instances of users sending a token transfer contract call for more tokens than are held at an address. This results in a Bad Instruction error in the smart contract.

For example in this transaction, the user held 1000 tokens and sent a transaction for 10000 tokens https://qtum.info/tx/bcb196419d905ca75fb79a8c4af92158dafe813194bd155b7da71fa52135a35b

Is it possible to make a sanity check and issue an error message if the user selects to send more tokens than are held on that address?

Cannot Send Small Change Amounts

After sending coins where there is a small balance left 0.23, 0.99, 1.01, etc., the wallet is unable to send this value, the CONFIRM button is not activated. Still can’t send after change transaction matures for 501 blocks. Possible to send leaving 0 balance, but a small balance cannot be sent. Repeatable problem as seen on Testnet.

The debug log showed:

[2018-12-12T06:03:35.952Z] [ERROR] "restore_key_file_restore_wif_error","Error: Non-base58 character\n    at Object.i [as decode] (https://qtumwallet.org/static/js/vendor.1956e42f42c7d5cc4f6a.js:29:21675)\n    at Object.s [as decode] (https://qtumwallet.org/static/js/vendor.1956e42f42c7d5cc4f6a.js:29:60505)\n    at Object.o [as decode] (https://qtumwallet.org/static/js/vendor.1956e42f42c7d5cc4f6a.js:12:19455)\n    at Function.ECPair.fromWIF (https://qtumwallet.org/static/js/vendor.1956e42f42c7d5cc4f6a.js:37:23569)\n    at Function.value (https://qtumwallet.org/static/js/app.b50892e4130c476813ba.js:1:221558)\n    at Object.l [as restoreFromWif] (https://qtumwallet.org/static/js/app.b50892e4130c476813ba.js:1:112291)\n    at s.inputed (https://qtumwallet.org/static/js/app.b50892e4130c476813ba.js:1:64318)\n    at s.e (https://qtumwallet.org/static/js/vendor.1956e42f42c7d5cc4f6a.js:1:284451)\n    at s.t.$emit (https://qtumwallet.org/static/js/vendor.1956e42f42c7d5cc4f6a.js:6:9184)\n    at s.confirmPassword (https://qtumwallet.org/static/js/app.b50892e4130c476813ba.js:1:261458)"
[2019-01-02T00:47:24.862Z] [ERROR] "send_generate_tx_error","Error: You do not have enough QTUM to send\n    at r (https://qtumwallet.org/static/js/vendor.1956e42f42c7d5cc4f6a.js:6:243894)\n    at Object.i [as buildPubKeyHashTransaction] (https://qtumwallet.org/static/js/vendor.1956e42f42c7d5cc4f6a.js:6:244001)\n    at Function.<anonymous> (https://qtumwallet.org/static/js/app.b50892e4130c476813ba.js:1:220210)\n    at r (https://qtumwallet.org/static/js/vendor.1956e42f42c7d5cc4f6a.js:24:7995)\n    at Generator._invoke (https://qtumwallet.org/static/js/vendor.1956e42f42c7d5cc4f6a.js:24:9040)\n    at Generator.t.(anonymous function) [as next] (https://qtumwallet.org/static/js/vendor.1956e42f42c7d5cc4f6a.js:24:8174)\n    at r (https://qtumwallet.org/static/js/vendor.1956e42f42c7d5cc4f6a.js:29:89470)\n    at https://qtumwallet.org/static/js/vendor.1956e42f42c7d5cc4f6a.js:29:89618\n    at new Promise (<anonymous>)\n    at new e (https://qtumwallet.org/static/js/vendor.1956e42f42c7d5cc4f6a.js:29:242405)"
[2019-01-05T02:15:19.942Z] [ERROR] "send_generate_tx_error","Error: You do not have enough QTUM to send\n    at r (https://qtumwallet.org/static/js/vendor.1956e42f42c7d5cc4f6a.js:6:243894)\n    at Object.i [as buildPubKeyHashTransaction] (https://qtumwallet.org/static/js/vendor.1956e42f42c7d5cc4f6a.js:6:244001)\n    at Function.<anonymous> (https://qtumwallet.org/static/js/app.b50892e4130c476813ba.js:1:220210)\n    at r (https://qtumwallet.org/static/js/vendor.1956e42f42c7d5cc4f6a.js:24:7995)\n    at Generator._invoke (https://qtumwallet.org/static/js/vendor.1956e42f42c7d5cc4f6a.js:24:9040)\n    at Generator.t.(anonymous function) [as next] (https://qtumwallet.org/static/js/vendor.1956e42f42c7d5cc4f6a.js:24:8174)\n    at r (https://qtumwallet.org/static/js/vendor.1956e42f42c7d5cc4f6a.js:29:89470)\n    at https://qtumwallet.org/static/js/vendor.1956e42f42c7d5cc4f6a.js:29:89618\n    at new Promise (<anonymous>)\n    at new e (https://qtumwallet.org/static/js/vendor.1956e42f42c7d5cc4f6a.js:29:242405)"

screenhunter 2036
0.23 QTUM balance

screenhunter 2035
Balance shown on Explorer

screenhunter 2037
Attempting to send, CONFIRM button never becomes active

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.