diff --git a/app/app.global.scss b/app/app.global.scss
index 42ba11e8..0398282e 100644
--- a/app/app.global.scss
+++ b/app/app.global.scss
@@ -24,6 +24,13 @@ body {
font-family: 'Roboto';
}
+// disable the pinball scrollers for windows
+* {
+ &::-webkit-inner-spin-button, &::-webkit-outer-spin-button {
+ -webkit-appearance: none;
+ }
+}
+
.ReactModal__Overlay {
transition: opacity 500ms ease-in-out;
opacity: 0;
diff --git a/app/lnd/lib/rpc.proto b/app/lnd/lib/rpc.proto
index 46e4ffac..2ba21d67 100644
--- a/app/lnd/lib/rpc.proto
+++ b/app/lnd/lib/rpc.proto
@@ -202,7 +202,7 @@ service Lightning {
workflow and is waiting for confirmations for the funding txn, or is in the
process of closure, either initiated cooperatively or non-cooperatively.
*/
- rpc PendingChannels (PendingChannelRequest) returns (PendingChannelResponse) {
+ rpc PendingChannels (PendingChannelsRequest) returns (PendingChannelsResponse) {
option (google.api.http) = {
get: "/v1/channels/pending"
};
@@ -423,11 +423,6 @@ service Lightning {
*/
rpc SubscribeChannelGraph(GraphTopologySubscription) returns (stream GraphTopologyUpdate);
- /**
- SetAlias sets the alias for this node; e.g. "alice"
- */
- rpc SetAlias(SetAliasRequest) returns (SetAliasResponse);
-
/** lncli: `debuglevel`
DebugLevel allows a caller to programmatically set the logging verbosity of
lnd. The logging can be targeted according to a coarse daemon-wide logging
@@ -446,11 +441,11 @@ service Lightning {
};
}
- /** lncli: `updatefees`
- UpdateFees allows the caller to update the fee schedule for all channels
- globally, or a particular channel.
+ /** lncli: `updatechanpolicy`
+ UpdateChannelPolicy allows the caller to update the fee schedule and
+ channel policies for all channels globally, or a particular channel.
*/
- rpc UpdateFees(FeeUpdateRequest) returns (FeeUpdateResponse) {
+ rpc UpdateChannelPolicy(PolicyUpdateRequest) returns (PolicyUpdateResponse) {
option (google.api.http) = {
post: "/v1/fees"
body: "*"
@@ -512,6 +507,9 @@ message SendRequest {
payment to the recipient.
*/
string payment_request = 6;
+
+ /// The CLTV delta from the current height that should be used to set the timelock for the final hop.
+ int32 final_cltv_delta = 7;
}
message SendResponse {
string payment_error = 1 [json_name = "payment_error"];
@@ -798,13 +796,16 @@ message GetInfoResponse {
string block_hash = 8 [json_name = "block_hash"];
/// Whether the wallet's view is synced to the main chain
- bool synced_to_chain = 9 [ json_name = "synced_to_chain" ];
+ bool synced_to_chain = 9 [json_name = "synced_to_chain"];
/// Whether the current node is connected to testnet
- bool testnet = 10 [ json_name = "testnet" ];
+ bool testnet = 10 [json_name = "testnet"];
/// A list of active chains the node is connected to
- repeated string chains = 11 [ json_name = "chains" ];
+ repeated string chains = 11 [json_name = "chains"];
+
+ /// The URIs of the current node.
+ repeated string uris = 12 [json_name = "uris"];
}
message ConfirmationUpdate {
@@ -876,6 +877,12 @@ message OpenChannelRequest {
/// A manual fee rate set in sat/byte that should be used when crafting the closure transaction.
int64 sat_per_byte = 7;
+
+ /// Whether this channel should be private, not announced to the greater network.
+ bool private = 8 [json_name = "private"];
+
+ /// The minimum value in millisatoshi we will require for incoming HTLCs on the channel.
+ int64 min_htlc_msat = 9 [json_name = "min_htlc_msat"];
}
message OpenStatusUpdate {
oneof update {
@@ -910,8 +917,8 @@ message PendingHTLC {
uint32 stage = 6 [ json_name = "stage" ];
}
-message PendingChannelRequest {}
-message PendingChannelResponse {
+message PendingChannelsRequest {}
+message PendingChannelsResponse {
message PendingChannel {
string remote_node_pub = 1 [ json_name = "remote_node_pub" ];
string channel_point = 2 [ json_name = "channel_point" ];
@@ -929,9 +936,6 @@ message PendingChannelResponse {
/// The height at which this channel will be confirmed
uint32 confirmation_height = 2 [ json_name = "confirmation_height" ];
- /// The number of blocks until this channel is open
- int32 blocks_till_open = 3 [ json_name = "blocks_till_open" ];
-
/**
The amount calculated to be paid in fees for the current set of
commitment transactions. The fee amount is persisted with the channel
@@ -1242,12 +1246,6 @@ message ClosedChannelUpdate {
ChannelPoint chan_point = 4;
}
-message SetAliasRequest {
- string new_alias = 1;
-}
-message SetAliasResponse {
-}
-
message Invoice {
/**
An optional memo to attach along with the invoice. Used for record keeping
@@ -1409,12 +1407,12 @@ message FeeReportResponse {
repeated ChannelFeeReport channel_fees = 1 [json_name = "channel_fees"];
}
-message FeeUpdateRequest {
+message PolicyUpdateRequest {
oneof scope {
- /// If set, then this fee update applies to all currently active channels.
+ /// If set, then this update applies to all currently active channels.
bool global = 1 [json_name = "global"] ;
- /// If set, this fee update will target a specific channel.
+ /// If set, this update will target a specific channel.
ChannelPoint chan_point = 2 [json_name = "chan_point"];
}
@@ -1423,6 +1421,9 @@ message FeeUpdateRequest {
/// The effective fee rate in milli-satoshis. The precision of this value goes up to 6 decimal places, so 1e-6.
double fee_rate = 4 [json_name = "fee_rate"];
+
+ /// The required timelock delta for HTLCs forwarded over the channel.
+ uint32 time_lock_delta = 5 [json_name = "time_lock_delta"];
}
-message FeeUpdateResponse {
+message PolicyUpdateResponse {
}
\ No newline at end of file
diff --git a/app/routes/contacts/components/Contacts.js b/app/routes/contacts/components/Contacts.js
index 63690200..d2057fa3 100644
--- a/app/routes/contacts/components/Contacts.js
+++ b/app/routes/contacts/components/Contacts.js
@@ -59,6 +59,7 @@ class Contacts extends Component {
contactsFormProps
} = this.props
+ console.log('currentChannels: ', currentChannels)
const refreshClicked = () => {
// turn the spinner on
this.setState({ refreshing: true })
@@ -155,7 +156,7 @@ class Contacts extends Component {
currentChannels.length > 0 && currentChannels.map((channel, index) => {
if (closingChannelIds.includes(channel.chan_id)) {
return
- } else if (Object.prototype.hasOwnProperty.call(channel, 'blocks_till_open')) {
+ } else if (Object.prototype.hasOwnProperty.call(channel, 'confirmation_height')) {
return
} else if (Object.prototype.hasOwnProperty.call(channel, 'closing_txid')) {
return
diff --git a/app/rpc.proto b/app/rpc.proto
index 62d7c7f8..2ba21d67 100644
--- a/app/rpc.proto
+++ b/app/rpc.proto
@@ -1,6 +1,6 @@
syntax = "proto3";
-import "google/api/annotations.proto";
+// import "google/api/annotations.proto";
package lnrpc;
/**
diff --git a/resources/icon.ico b/resources/icon.ico
index 03c9f414..c51c7070 100644
Binary files a/resources/icon.ico and b/resources/icon.ico differ