grpc-node provides node bindings that are specifically targeted towards
electron. Make use of these rather than force compiling grpc on install.
See https://github.com/LN-Zap/zap-desktop/issues/420
Among other things, this makes no-console an error rather than a warning.
https://eslint.org/docs/rules/no-console
Given that we now have a proper logging facility, good to prevent incidental
introduction in the future.
Use debug-logger to provide a more comprehensive and flexible logging
solution. Use two separate log handlers to provide separation between
electron and and lnd logs.
The onboarding settings are only relevant if the user wants to connect to a
remote LND or have Zap run LND. If the LND is already running locally, the user
is capable of separately configuring it.
This does not support the case of connecting to a remote LND while running LND
locally, but I can't think of a reason why someone would do such a thing. In
such a case, they could quit LND, start Zap, then re-start LND.
Update grpc to v1.12.3 in order to fix issues build issues due to the fact
that 1.12.1 doesn't contain node-pre-gyp as a bundled dependency.
See https://github.com/grpc/grpc-node/issues/365
Move rpc.proto into the resources directory along with all of the other
external resources.
Fix up the resource paths to reference external resources correctly
depending on wether the app is being run locally or from a release.
Only one of these files was being used, and they were going out of step
relative to one another.
Put rpc.proto in the resources directory for consistency with other
vendored resources, i.e. the lnd binary
Updated the def from:
https://github.com/lightningnetwork/lnd/blob/master/lnrpc/rpc.proto
The wallet password is defined as `bytes` in the rpc.proto spec and we are
passing it as a string, resulting in an incorrect password being set on a
new wallet and an inability to unlock an existing wallet.
Convert the wallet password to a Buffer before passing to `initWallet` and
`unlockWallet`, which is the default data type used to represent bytes in
the node grpc client. This is sures that the password is passed correctly
to lnd.
Fix#400
This fixes an issue where the payment form - initiated from an external
request payment link - would display under the connect dialog if that was
already open. This change ensures that the payment form always displays
on the top most layer.
Fix#284
Do not show the suggested nodes text block when a channel search does
not return any results. Instead, in this case retain the search query
input filter on the screen so that the user can go back and edit their
search query.
Fix#394