lightning 5.1.0 → 5.3.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +12 -0
- package/README.md +1 -0
- package/lnd_methods/invoices/get_invoices.js +9 -7
- package/lnd_methods/offchain/get_pending_channels.d.ts +2 -0
- package/lnd_methods/offchain/get_pending_channels.js +2 -0
- package/lnd_methods/onchain/open_channel.js +2 -2
- package/lnd_methods/onchain/open_channels.d.ts +0 -2
- package/lnd_methods/onchain/open_channels.js +3 -4
- package/lnd_responses/pending_as_pending_channels.js +2 -0
- package/package.json +15 -15
- package/test/lnd_responses/test_pending_as_pending_channels.js +1 -0
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,17 @@
|
|
|
1
1
|
# Versions
|
|
2
2
|
|
|
3
|
+
## 5.3.0
|
|
4
|
+
|
|
5
|
+
- `getInvoices`: Add `is_unconfirmed` to filter out canceled/settled invoices
|
|
6
|
+
|
|
7
|
+
## 5.2.1
|
|
8
|
+
|
|
9
|
+
- `getPendingChannels`: Add support for channel `capacity`
|
|
10
|
+
|
|
11
|
+
## 5.1.1
|
|
12
|
+
|
|
13
|
+
- `openChannels`: Fix `cooperative_close_address` not being set on channels
|
|
14
|
+
|
|
3
15
|
## 5.1.0
|
|
4
16
|
|
|
5
17
|
- Add support for LND 0.14.1
|
package/README.md
CHANGED
|
@@ -15,6 +15,7 @@ Methods for working with the Lightning Network
|
|
|
15
15
|
- [Thunderhub](https://www.thunderhub.io/) - https://github.com/apotdevin/thunderhub
|
|
16
16
|
- [Lightning Roulette](https://lightning-roulette.com/) - https://github.com/igreshev/lightning-roulette
|
|
17
17
|
- [Lightning Poker](https://lightning-poker.com/) - https://github.com/igreshev/lightning-poker
|
|
18
|
+
- [p2plnbot](https://telegram.me/lnp2pbot) - https://github.com/grunch/p2plnbot
|
|
18
19
|
- [rekr](https://rekr.app/) - https://github.com/ryan-lingle/rekr
|
|
19
20
|
- [Suredbits API](https://suredbits.com/) - https://github.com/Suredbits/sb-api-lnd
|
|
20
21
|
|
|
@@ -28,6 +28,7 @@ const type = 'default';
|
|
|
28
28
|
Invoice `payment` is not supported on LND 0.11.1 and below
|
|
29
29
|
|
|
30
30
|
{
|
|
31
|
+
[is_unconfirmed]: <Omit Canceled and Settled Invoices Bool>
|
|
31
32
|
[limit]: <Page Result Limit Number>
|
|
32
33
|
lnd: <Authenticated LND API Object>
|
|
33
34
|
[token]: <Opaque Paging Token String>
|
|
@@ -87,16 +88,16 @@ const type = 'default';
|
|
|
87
88
|
[next]: <Next Opaque Paging Token String>
|
|
88
89
|
}
|
|
89
90
|
*/
|
|
90
|
-
module.exports = (
|
|
91
|
+
module.exports = (args, cbk) => {
|
|
91
92
|
return new Promise((resolve, reject) => {
|
|
92
93
|
return asyncAuto({
|
|
93
94
|
// Validate arguments
|
|
94
95
|
validate: cbk => {
|
|
95
|
-
if (!!limit && !!token) {
|
|
96
|
+
if (!!args.limit && !!args.token) {
|
|
96
97
|
return cbk([400, 'UnexpectedLimitWhenPagingInvoicesWithToken']);
|
|
97
98
|
}
|
|
98
99
|
|
|
99
|
-
if (!isLnd({
|
|
100
|
+
if (!isLnd({method, type, lnd: args.lnd})) {
|
|
100
101
|
return cbk([400, 'ExpectedLndForInvoiceListing']);
|
|
101
102
|
}
|
|
102
103
|
|
|
@@ -106,12 +107,12 @@ module.exports = ({limit, lnd, token}, cbk) => {
|
|
|
106
107
|
// Get the list of invoices
|
|
107
108
|
listInvoices: ['validate', ({}, cbk) => {
|
|
108
109
|
let offset;
|
|
109
|
-
let resultsLimit = limit || defaultLimit;
|
|
110
|
+
let resultsLimit = args.limit || defaultLimit;
|
|
110
111
|
|
|
111
112
|
// When there is a token, parse it out into an offset and a limit
|
|
112
|
-
if (!!token) {
|
|
113
|
+
if (!!args.token) {
|
|
113
114
|
try {
|
|
114
|
-
const pagingToken = parse(token);
|
|
115
|
+
const pagingToken = parse(args.token);
|
|
115
116
|
|
|
116
117
|
offset = pagingToken.offset;
|
|
117
118
|
resultsLimit = pagingToken.limit;
|
|
@@ -121,9 +122,10 @@ module.exports = ({limit, lnd, token}, cbk) => {
|
|
|
121
122
|
}
|
|
122
123
|
|
|
123
124
|
return asyncRetry({}, cbk => {
|
|
124
|
-
return lnd[type][method]({
|
|
125
|
+
return args.lnd[type][method]({
|
|
125
126
|
index_offset: offset || Number(),
|
|
126
127
|
num_max_invoices: resultsLimit,
|
|
128
|
+
pending_only: args.is_unconfirmed === true || undefined,
|
|
127
129
|
reversed: true,
|
|
128
130
|
},
|
|
129
131
|
(err, res) => {
|
|
@@ -3,6 +3,8 @@ import {AuthenticatedLnd} from '../../lnd_grpc';
|
|
|
3
3
|
|
|
4
4
|
export type GetPendingChannelsResult = {
|
|
5
5
|
pending_channels: {
|
|
6
|
+
/** Channel Capacity Tokens */
|
|
7
|
+
capacity: number;
|
|
6
8
|
/** Channel Closing Transaction Id */
|
|
7
9
|
close_transaction_id?: string;
|
|
8
10
|
/** Channel Is Active */
|
|
@@ -25,6 +25,7 @@ const type = 'default';
|
|
|
25
25
|
@returns via cbk or Promise
|
|
26
26
|
{
|
|
27
27
|
pending_channels: [{
|
|
28
|
+
capacity: <Channel Capacity Tokens Number>
|
|
28
29
|
[close_transaction_id]: <Channel Closing Transaction Id String>
|
|
29
30
|
is_active: <Channel Is Active Bool>
|
|
30
31
|
is_closing: <Channel Is Closing Bool>
|
|
@@ -68,6 +69,7 @@ module.exports = ({lnd}, cbk) => {
|
|
|
68
69
|
return cbk();
|
|
69
70
|
},
|
|
70
71
|
|
|
72
|
+
// Get pending channels
|
|
71
73
|
getPending: ['validate', ({}, cbk) => {
|
|
72
74
|
return lnd[type][method]({}, (err, res) => {
|
|
73
75
|
if (!!err) {
|
|
@@ -26,11 +26,11 @@ const type = 'default';
|
|
|
26
26
|
[give_tokens]: <Tokens to Gift To Partner Number> // Defaults to zero
|
|
27
27
|
[is_private]: <Channel is Private Bool> // Defaults to false
|
|
28
28
|
lnd: <Authenticated LND API Object>
|
|
29
|
-
local_tokens: <
|
|
29
|
+
local_tokens: <Total Channel Capacity Tokens Number>
|
|
30
30
|
[min_confirmations]: <Spend UTXOs With Minimum Confirmations Number>
|
|
31
31
|
[min_htlc_mtokens]: <Minimum HTLC Millitokens String>
|
|
32
|
-
partner_public_key: <Public Key Hex String>
|
|
33
32
|
[partner_csv_delay]: <Peer Output CSV Delay Number>
|
|
33
|
+
partner_public_key: <Public Key Hex String>
|
|
34
34
|
[partner_socket]: <Peer Connection Host:Port String>
|
|
35
35
|
}
|
|
36
36
|
|
|
@@ -19,8 +19,6 @@ export type OpenChannelsArgs = AuthenticatedLightningArgs<{
|
|
|
19
19
|
partner_public_key: string;
|
|
20
20
|
/** Peer Output CSV Delay */
|
|
21
21
|
partner_csv_delay?: number;
|
|
22
|
-
/** Peer Connection Host:Port */
|
|
23
|
-
partner_socket?: string;
|
|
24
22
|
}[];
|
|
25
23
|
/** Do not broadcast any channel funding transactions */
|
|
26
24
|
is_avoiding_broadcast?: boolean;
|
|
@@ -39,11 +39,10 @@ const type = 'default';
|
|
|
39
39
|
[give_tokens]: <Tokens to Gift To Partner Number> // Defaults to zero
|
|
40
40
|
[is_private]: <Channel is Private Bool> // Defaults to false
|
|
41
41
|
[min_htlc_mtokens]: <Minimum HTLC Millitokens String>
|
|
42
|
-
partner_public_key: <Public Key Hex String>
|
|
43
42
|
[partner_csv_delay]: <Peer Output CSV Delay Number>
|
|
44
|
-
|
|
43
|
+
partner_public_key: <Public Key Hex String>
|
|
45
44
|
}]
|
|
46
|
-
is_avoiding_broadcast: <Avoid Broadcast of All Channels Bool>
|
|
45
|
+
[is_avoiding_broadcast]: <Avoid Broadcast of All Channels Bool>
|
|
47
46
|
lnd: <Authenticated LND API Object>
|
|
48
47
|
}
|
|
49
48
|
|
|
@@ -95,7 +94,6 @@ module.exports = (args, cbk) => {
|
|
|
95
94
|
min_htlc_mtokens: channel.min_htlc_mtokens,
|
|
96
95
|
partner_public_key: channel.partner_public_key,
|
|
97
96
|
partner_csv_delay: channel.partner_csv_delay,
|
|
98
|
-
partner_socket: channel.partner_socket,
|
|
99
97
|
})));
|
|
100
98
|
}],
|
|
101
99
|
|
|
@@ -108,6 +106,7 @@ module.exports = (args, cbk) => {
|
|
|
108
106
|
const isSelfPublish = !!args.is_avoiding_broadcast;
|
|
109
107
|
|
|
110
108
|
const channelOpen = args.lnd[type][method]({
|
|
109
|
+
close_address: channel.cooperative_close_address || undefined,
|
|
111
110
|
funding_shim: {
|
|
112
111
|
psbt_shim: {
|
|
113
112
|
no_publish: !!isSelfPublish || !channel.id.equals(lastChannel),
|
|
@@ -80,6 +80,7 @@ const outpointSeparator = ':';
|
|
|
80
80
|
@returns
|
|
81
81
|
{
|
|
82
82
|
pending_channels: [{
|
|
83
|
+
capacity: <Channel Capacity Tokens Number>
|
|
83
84
|
[close_transaction_id]: <Channel Closing Transaction Id String>
|
|
84
85
|
is_active: <Channel Is Active Bool>
|
|
85
86
|
is_closing: <Channel Is Closing Bool>
|
|
@@ -285,6 +286,7 @@ module.exports = args => {
|
|
|
285
286
|
const pendingTokens = wait.pending_balance || forced.pending_balance;
|
|
286
287
|
|
|
287
288
|
return {
|
|
289
|
+
capacity: Number(channel.capacity),
|
|
288
290
|
close_transaction_id: endTx || undefined,
|
|
289
291
|
is_active: false,
|
|
290
292
|
is_closing: !chanOpen,
|
package/package.json
CHANGED
|
@@ -7,35 +7,35 @@
|
|
|
7
7
|
"url": "https://github.com/alexbosworth/lightning/issues"
|
|
8
8
|
},
|
|
9
9
|
"dependencies": {
|
|
10
|
-
"@grpc/grpc-js": "1.
|
|
11
|
-
"@grpc/proto-loader": "0.6.
|
|
10
|
+
"@grpc/grpc-js": "1.5.0",
|
|
11
|
+
"@grpc/proto-loader": "0.6.9",
|
|
12
12
|
"@types/express": "4.17.13",
|
|
13
|
-
"@types/node": "
|
|
14
|
-
"@types/request": "2.48.
|
|
15
|
-
"@types/ws": "8.2.
|
|
16
|
-
"async": "3.2.
|
|
13
|
+
"@types/node": "17.0.8",
|
|
14
|
+
"@types/request": "2.48.8",
|
|
15
|
+
"@types/ws": "8.2.2",
|
|
16
|
+
"async": "3.2.3",
|
|
17
17
|
"asyncjs-util": "1.2.7",
|
|
18
18
|
"bitcoinjs-lib": "6.0.1",
|
|
19
19
|
"bn.js": "5.2.0",
|
|
20
|
-
"body-parser": "1.19.
|
|
21
|
-
"bolt07": "1.
|
|
20
|
+
"body-parser": "1.19.1",
|
|
21
|
+
"bolt07": "1.8.0",
|
|
22
22
|
"bolt09": "0.2.0",
|
|
23
23
|
"cbor": "8.1.0",
|
|
24
|
-
"express": "4.17.
|
|
24
|
+
"express": "4.17.2",
|
|
25
25
|
"invoices": "2.0.2",
|
|
26
26
|
"psbt": "1.1.10",
|
|
27
|
-
"type-fest": "2.
|
|
27
|
+
"type-fest": "2.9.0"
|
|
28
28
|
},
|
|
29
29
|
"description": "Lightning Network client library",
|
|
30
30
|
"devDependencies": {
|
|
31
31
|
"@alexbosworth/node-fetch": "2.6.2",
|
|
32
32
|
"@alexbosworth/tap": "15.0.10",
|
|
33
|
-
"tsd": "0.19.
|
|
34
|
-
"typescript": "4.5.
|
|
35
|
-
"ws": "8.
|
|
33
|
+
"tsd": "0.19.1",
|
|
34
|
+
"typescript": "4.5.4",
|
|
35
|
+
"ws": "8.4.0"
|
|
36
36
|
},
|
|
37
37
|
"engines": {
|
|
38
|
-
"node": ">=12"
|
|
38
|
+
"node": ">=12.20"
|
|
39
39
|
},
|
|
40
40
|
"keywords": [
|
|
41
41
|
"grpc",
|
|
@@ -57,5 +57,5 @@
|
|
|
57
57
|
"directory": "test/typescript"
|
|
58
58
|
},
|
|
59
59
|
"types": "index.d.ts",
|
|
60
|
-
"version": "5.
|
|
60
|
+
"version": "5.3.0"
|
|
61
61
|
}
|