nimiq / wallet Goto Github PK
View Code? Open in Web Editor NEWBrowser Wallet for the Nimiq cryptocurrency
Home Page: https://wallet.nimiq.com
Browser Wallet for the Nimiq cryptocurrency
Home Page: https://wallet.nimiq.com
Firefox Incognito Mode loads endlessly because the Hub throws an error (because it cannot access the IndexedDB).
Probably need to add the browser-warning
package to the Wallet for this.
I often create Nimiq gift cards to print. It would be awsome to have a link from somewhere in the wallet.
Sth. like: "If you want to gift some Nimiqs -create a gift card here..."
Or: having a link in the cashlink or sent flow
Need to investigate and diagnose if the Wallet really takes longer than the Safe. The Wallet is using the CoreJS Client's getTransactionsByAddress
built-in function, while the Safe is using a custom method defined in the NanoApi
.
Facts:
The selling crypto is supported with every bank in EU. SEPA allows faster transactions however it's not required as the modal suggests.
Without a SEPA instant bank account, your money will take 1-3 business days to arrive.
Issue
The validation of the form blocks users to select not a SEPA bank for selling flow.
Expected/suggested behavior
Allow users to use any supported bank (SEPA/not SEPA) and only have a tag on the side that indicates that the bank has SEPA support.
An unmaintained dependency in the yarn.lock
file causes node-gyp
to fail on macOS with Nodejs >= 12: nodejs/node#33704 (comment)
yarn install v1.22.10
[1/4] 🔍 Resolving packages...
[2/4] 🚚 Fetching packages...
[3/4] 🔗 Linking dependencies...
warning " > [email protected]" has unmet peer dependency "webpack@^4.0.0 || ^5.0.0".
warning " > @babel/[email protected]" has unmet peer dependency "@babel/core@^7.0.0-0".
warning "@babel/plugin-proposal-optional-chaining > @babel/[email protected]" has unmet peer dependency "@babel/core@^7.0.0-0".
warning " > [email protected]" has unmet peer dependency "webpack@^4.0.0 || ^5.0.0".
warning "@vue/eslint-config-airbnb > [email protected]" has unmet peer dependency "webpack@>=1.11.0".
warning " > @vue/[email protected]" has incorrect peer dependency "@typescript-eslint/eslint-plugin@^2.7.0".
warning " > @vue/[email protected]" has incorrect peer dependency "@typescript-eslint/parser@^2.7.0".
warning " > [email protected]" has unmet peer dependency "webpack@^4.36.0 || ^5.0.0".
[4/4] 🔨 Building fresh packages...
[1/8] ⠈ tiny-secp256k1
[7/8] ⠈ node-sass
[3/8] ⠈ fsevents
[-/8] ⠈ waiting...
warning Error running install script for optional dependency: "/Users/stefan/code/node/local-wallet/wallet/node_modules/weak: Command failed.
Exit code: 1
Command: node-gyp rebuild
Arguments:
Directory: /Users/stefan/code/node/local-wallet/wallet/node_modules/weak
Output:
gyp info it worked if it ends with ok
gyp info using [email protected]
gyp info using [email protected] | darwin | x64
gyp info find Python using Python version 2.7.16 found at \"/System/Library/Frameworks/Python.framework/Versions/2.7/Resources/Python.app/Contents/MacOS/Python\"
gyp info spawn /System/Library/Frameworks/Python.framework/Versions/2.7/Resources/Python.app/Contents/MacOS/Python
gyp info spawn args [
gyp info spawn args '/Users/stefan/.nvm/versions/node/v14.15.5/lib/node_modules/npm/node_modules/node-gyp/gyp/gyp_main.py',
gyp info spawn args 'binding.gyp',
gyp info spawn args '-f',
gyp info spawn args 'make',
gyp info spawn args '-I',
gyp info spawn args '/Users/stefan/code/node/local-wallet/wallet/node_modules/weak/build/config.gypi',
gyp info spawn args '-I',
gyp info spawn args '/Users/stefan/.nvm/versions/node/v14.15.5/lib/node_modules/npm/node_modules/node-gyp/addon.gypi',
gyp info spawn args '-I',
gyp info spawn args '/Users/stefan/Library/Caches/node-gyp/14.15.5/include/node/common.gypi',
gyp info spawn args '-Dlibrary=shared_library',
gyp info spawn args '-Dvisibility=default',
gyp info spawn args '-Dnode_root_dir=/Users/stefan/Library/Caches/node-gyp/14.15.5',
gyp info spawn args '-Dnode_gyp_dir=/Users/stefan/.nvm/versions/node/v14.15.5/lib/node_modules/npm/node_modules/node-gyp',
gyp info spawn args '-Dnode_lib_file=/Users/stefan/Library/Caches/node-gyp/14.15.5/<(target_arch)/node.lib',
gyp info spawn args '-Dmodule_root_dir=/Users/stefan/code/node/local-wallet/wallet/node_modules/weak',
gyp info spawn args '-Dnode_engine=v8',
gyp info spawn args '--depth=.',
gyp info spawn args '--no-parallel',
gyp info spawn args '--generator-output',
gyp info spawn args 'build',
gyp info spawn args '-Goutput_dir=.'
gyp info spawn args ]
gyp info spawn make
gyp info spawn args [ 'BUILDTYPE=Release', '-C', 'build' ]
CXX(target) Release/obj.target/weakref/src/weakref.o
../src/weakref.cc:147:25: error: too few arguments to function call, expected 4, have 3; did you mean 'Nan::Call'?
globalCallbackDirect->Call(Nan::GetCurrentContext()->Global(), 1, argv);
^~~~
Nan::Call
../../nan/nan_maybe_43_inl.h:345:30: note: 'Nan::Call' declared here
inline MaybeLocal<v8::Value> Call(
^
../src/weakref.cc:168:75: error: too few arguments to function call, single argument 'context' was not specified
Local<Object> proxy = Nan::New<ObjectTemplate>(proxyClass)->NewInstance();
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ^
/Users/stefan/Library/Caches/node-gyp/14.15.5/include/node/v8.h:6762:3: note: 'NewInstance' declared here
V8_WARN_UNUSED_RESULT MaybeLocal<Object> NewInstance(Local<Context> context);
^
/Users/stefan/Library/Caches/node-gyp/14.15.5/include/node/v8config.h:431:31: note: expanded from macro 'V8_WARN_UNUSED_RESULT'
#define V8_WARN_UNUSED_RESULT __attribute__((warn_unused_result))
^
../src/weakref.cc:223:55: error: no member named 'IsNearDeath' in 'Nan::Persistent<v8::Object, v8::NonCopyablePersistentTraits<v8::Object> >'
Local<Boolean> rtn = Nan::New<Boolean>(cont->target.IsNearDeath());
~~~~~~~~~~~~ ^
3 errors generated.
make: *** [Release/obj.target/weakref/src/weakref.o] Error 1
gyp ERR! build error
gyp ERR! stack Error: `make` failed with exit code: 2
gyp ERR! stack at ChildProcess.onExit (/Users/stefan/.nvm/versions/node/v14.15.5/lib/node_modules/npm/node_modules/node-gyp/lib/build.js:194:23)
gyp ERR! stack at ChildProcess.emit (events.js:315:20)
gyp ERR! stack at Process.ChildProcess._handle.onexit (internal/child_process.js:277:12)
gyp ERR! System Darwin 20.3.0
gyp ERR! command \"/Users/stefan/.nvm/versions/node/v14.15.5/bin/node\" \"/Users/stefan/.nvm/versions/node/v14.15.5/lib/node_modules/npm/node_modules/node-gyp/bin/node-gyp.js\" \"rebuild\"
gyp ERR! cwd /Users/stefan/code/node/local-wallet/wallet/node_modules/weak
✨ Done in 11.43s.```
There are designs to hide/remove previously added or used addresses. Some users are also asking for it.
This can either be implemented purely in the Wallet, where addresses are marked as hidden
, or implemented in the Hub directly.
While simplex provides Apple Pay, it has high fees. It would be great if buying NIM was as easy as buying an app.
Reported by: Community member in a Telegram group
Browsers: Brave Version 1.35.103 Chromium: 98.0.4758.102 (Official Build) (64-bit). Probably this bug also occurs in other browsers.
Overflow with 'scroll-mask top' & 'scroll-mask bottom' when screen width is between 2000px-2070px
When Wallet will support Etherium beside Bitcoin, address panel will start looking cluttered (especially on mobile).
Possible solution:
Turn Bitcoin account container into container with logos of supported cryptocurrencies labeled "Other cryptocurrencies". On click everything will slide bottom-up, hiding addresses and revealing supported cryptocurrencies (looking like addresses), while container will fade into "Main account" with back
Steps to reproduce:
Currently the wallet doesn't support the old requestLink format used in the safe & in the donation app.
The donation app will be updated to generate new requestLink for the wallet, but we should still support old ones.
During Devnet testing, I noticed that transaction is being processed faster than transition between screen occurs (~3s).
That's odd, because it makes feeling of Devnet being slower than it actually was (<1s for transaction).
A transaction's sender and recipient cannot be the same address. The SendModal however does not detect this case and the transaction only fails to send when sending to the network, after it was signed.
On iOS the status bar / icons are either black on black or white on white (depending on dark or light mode).
iPhone Xs, iOS 15.2
The "default" value of this meta tag causes this issue. (I'm not sure why, it's just Apple.)
<meta name="apple-mobile-web-app-status-bar-style" content="default">
With improved support of the "theme-color" meta tag in Safari 15 it would make sense to make use of this feature and setting a theme color. Since the status bar background color get's set to the theme color and the foreground color (white/black) is being calculated automatically, the error would not occur anymore.
<meta name="theme-color" content="#DBDCE2">
File link:
Line 139 in 5a5f590
Replace with:
themeColor: '#DBDCE2'
It would also be possible to change the status bar style meta tag value to "black-translucent" and add a fixed dark header with env-padding which would be much more complicated.
<meta name="apple-mobile-web-app-status-bar-style" content="black-translucent">
iOS 14.5 "Status bar change"
Safari 15 "Theme color"
"The Notch" and CSS
Some feedbackers have stated a wish to be able to see their account total balance in NIM, not only in their reference fiat currency.
Due to the navigation bar it's hard to press the update button of the UpdateNotification on devices like the iPhone.
Just like the MobileActionBar there should be a padding-bottom
including the env-padding.
wallet/src/components/MobileActionBar.vue
Line 97 in 0fd0d6b
Mimi token is Best token I liked
When visiting the network view for the first time after loading the wallet (on mobile), it does not scroll horizontally to the user's location. It only scrolls a few pixels to the right.
When visiting the network view again afterwards, the view correctly scrolls to the correct horizontal location.
Here is how I've almost lost my primary account.
Almost a year ago, I've saved my login file. Tested it, it worked fine.
Today, I decided to login, and the login file does not work anymore. On Safari, I get: "Fetching Addresses Failed
Syncing with the network failed: keyId not found" error and Chrome just prints "Could not read Login File".
And somehow, I had only 17 of 24 words.
I was lucky to find one still authorized device. After recovering recovery words and making sure I can use them to access the account, I've downloaded the new login file.
And the new file does not work as well!
The Safe allowed to import and export contacts as/from a file (on non-iOS systems). The Wallet does only allow import right now (in the Settings), but no export.
To widen the user options for givaways with cashlinks, I would suggest displaying a downloadable or copyable QR code in addition to the text link.
In the giftcard creator a QR code is alread displayed, but integrated in the template.
Maybe a somehow combination of cashlinks and giftcards in the flow could be a benefit as well
Expired transactions always stay at the top of the transaction list, instead of being sorted where they were sent.
Hello dear developers, I have a problem with logging into my wallet .... I forgot to create a login file and a seed phrase, just recently I had to clear cookies in my browser, now I can not open my wallet, tell me what to do to restore access:?
On iPhone Safari (v15.3) the settings are in a row instead of a column. It's not possible to scroll horizontally to reach other options.
This is not reproducible in any Browser with "Responsive Design"-Mode.
Reported by: Nimiq team member
Browsers: Chromium: 99. Probably this bug also occurs in other browsers.
When user hovers the address label in a computer, he/she experiences a fast flickering as shown here: https://www.loom.com/share/d85bbe4339fa4014ae794ffcc0e60d56
Looking at network requests, you can see that 'Fira Mono Bold' is being requested once the user hovers the address label. The request takes less than a second to be completed, but meanwhile, Chromium sets 'monospace bold' as a fallback and then it changes to 'Fira Mono Bold'. It's the change of font what produces the flickering.
This behaviour, as far as I can tell is different in Firefox, which decides not to change the font at all and that's why you don't see a flickering. Although I am not sure about this.
Instead of downloading 'Fira Mono Bold' on demand, just do it ahead-of-time
There's a visual glitch when a wallet has more than 1 address and that address has a large amount of NIM.
As you can see the rigth padding is not working
And the glitch is even worst if the amounts are hidden
This does not happen if the amounts are first hidden and then switched to the second address
Also not happening on the first address (due to the "short" name)
Neither on the third one (due to the "short" name)
The body width is 941px
In Firefox, the welcome screens that lead to the Login File are not appearing after creating a new account.
Add a dark mode theme to the app.
On mobile, add swipe gestures to navigate between panes/columns/views, for example to open and close the sidebar, or go back from the address view to the account overview.
Access to it now is very limited.
Could we get a dedicate "Contacts" link that allows us to easily add, edit, and possibly sort contracts?
.
The current implementation is ver unintuitive and quite annoying, imo.
Coingecko seems to have added new currencies (e.g. Singaporean Dollar SGD). Update list of currencies supported by @nimiq/utils/FiatApi
: https://github.com/nimiq/nimiq-utils/blob/master/src/fiat-api/FiatApi.ts
Having a few accounts, I noticed it can get confusing because the files look the same. While it's true that changing the file name helps, it would be cool to be able to add a label to a login file - e.g. "Savings" - when creating it.
Experienced on mobile:
Sometimes, when switching to the network view, it doesn't display any peers. Most often this happens on first visit to the network view, but also happens when visiting it again later.
I recently switched to firefox on ios to de-google/apple myself.
My balances aren't updating and when I clear cache I just get a spinner.
Sending to an established contract is not possible (forbidden by consensus rules), so this transaction should fail. Instead, it produces an ever-pending transaction in the transaction list.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.