@bitgo/sdk-core 27.8.0 → 28.0.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 +55 -0
- package/dist/src/bitgo/baseCoin/iBaseCoin.d.ts +5 -2
- package/dist/src/bitgo/baseCoin/iBaseCoin.d.ts.map +1 -1
- package/dist/src/bitgo/baseCoin/iBaseCoin.js +1 -1
- package/dist/src/bitgo/enterprise/enterprise.d.ts +1 -1
- package/dist/src/bitgo/enterprise/enterprise.d.ts.map +1 -1
- package/dist/src/bitgo/enterprise/enterprise.js +3 -3
- package/dist/src/bitgo/enterprise/iEnterprise.d.ts +1 -1
- package/dist/src/bitgo/enterprise/iEnterprise.d.ts.map +1 -1
- package/dist/src/bitgo/enterprise/iEnterprise.js +1 -1
- package/dist/src/bitgo/environments.d.ts +1 -0
- package/dist/src/bitgo/environments.d.ts.map +1 -1
- package/dist/src/bitgo/environments.js +3 -1
- package/dist/src/bitgo/index.d.ts +1 -0
- package/dist/src/bitgo/index.d.ts.map +1 -1
- package/dist/src/bitgo/index.js +2 -1
- package/dist/src/bitgo/lightning/custodial/iLightning.d.ts.map +1 -0
- package/dist/src/bitgo/lightning/custodial/iLightning.js +110 -0
- package/dist/src/bitgo/lightning/custodial/index.d.ts +5 -0
- package/dist/src/bitgo/lightning/custodial/index.d.ts.map +1 -0
- package/dist/src/bitgo/lightning/custodial/index.js +21 -0
- package/dist/src/bitgo/lightning/{lightning.d.ts → custodial/lightning.d.ts} +2 -2
- package/dist/src/bitgo/lightning/custodial/lightning.d.ts.map +1 -0
- package/dist/src/bitgo/lightning/custodial/lightning.js +111 -0
- package/dist/src/bitgo/lightning/custodial/lightningUtils.d.ts +46 -0
- package/dist/src/bitgo/lightning/custodial/lightningUtils.d.ts.map +1 -0
- package/dist/src/bitgo/lightning/custodial/lightningUtils.js +137 -0
- package/dist/src/bitgo/lightning/custodial/lnurlCodec.d.ts.map +1 -0
- package/dist/src/bitgo/lightning/custodial/lnurlCodec.js +28 -0
- package/dist/src/bitgo/lightning/index.d.ts +2 -3
- package/dist/src/bitgo/lightning/index.d.ts.map +1 -1
- package/dist/src/bitgo/lightning/index.js +3 -4
- package/dist/src/bitgo/lightning/lightningUtils.d.ts +23 -37
- package/dist/src/bitgo/lightning/lightningUtils.d.ts.map +1 -1
- package/dist/src/bitgo/lightning/lightningUtils.js +41 -96
- package/dist/src/bitgo/lightning/signableJson.d.ts +17 -0
- package/dist/src/bitgo/lightning/signableJson.d.ts.map +1 -0
- package/dist/src/bitgo/lightning/signableJson.js +30 -0
- package/dist/src/bitgo/lightning/signature.d.ts +22 -0
- package/dist/src/bitgo/lightning/signature.d.ts.map +1 -0
- package/dist/src/bitgo/lightning/signature.js +60 -0
- package/dist/src/bitgo/staking/iStakingWallet.d.ts +6 -0
- package/dist/src/bitgo/staking/iStakingWallet.d.ts.map +1 -1
- package/dist/src/bitgo/staking/iStakingWallet.js +1 -1
- package/dist/src/bitgo/utils/mpcUtils.js +2 -2
- package/dist/src/bitgo/utils/tss/baseTypes.d.ts +5 -1
- package/dist/src/bitgo/utils/tss/baseTypes.d.ts.map +1 -1
- package/dist/src/bitgo/utils/tss/baseTypes.js +1 -1
- package/dist/src/bitgo/utils/tss/ecdsa/SMC/utils.d.ts.map +1 -1
- package/dist/src/bitgo/utils/tss/ecdsa/SMC/utils.js +42 -45
- package/dist/src/bitgo/utils/tss/ecdsa/ecdsa.d.ts +1 -1
- package/dist/src/bitgo/utils/tss/ecdsa/ecdsa.d.ts.map +1 -1
- package/dist/src/bitgo/utils/tss/ecdsa/ecdsa.js +11 -4
- package/dist/src/bitgo/utils/tss/ecdsa/ecdsaMPCv2.d.ts.map +1 -1
- package/dist/src/bitgo/utils/tss/ecdsa/ecdsaMPCv2.js +6 -5
- package/dist/src/bitgo/wallet/iWallet.d.ts +1 -1
- package/dist/src/bitgo/wallet/iWallet.d.ts.map +1 -1
- package/dist/src/bitgo/wallet/iWallet.js +1 -1
- package/dist/src/bitgo/wallet/wallet.d.ts +1 -1
- package/dist/src/bitgo/wallet/wallet.d.ts.map +1 -1
- package/dist/src/bitgo/wallet/wallet.js +3 -3
- package/dist/test/unit/account-lib/mpc/tss/ecdsa/ecdsa.js +5 -3
- package/dist/test/unit/bitgo/lightning/lightningUtils.d.ts +2 -0
- package/dist/test/unit/bitgo/lightning/lightningUtils.d.ts.map +1 -0
- package/dist/test/unit/bitgo/lightning/lightningUtils.js +62 -0
- package/dist/test/unit/bitgo/lightning/signableJson.d.ts +2 -0
- package/dist/test/unit/bitgo/lightning/signableJson.d.ts.map +1 -0
- package/dist/test/unit/bitgo/lightning/signableJson.js +52 -0
- package/dist/test/unit/bitgo/lightning/signature.d.ts +2 -0
- package/dist/test/unit/bitgo/lightning/signature.d.ts.map +1 -0
- package/dist/test/unit/bitgo/lightning/signature.js +81 -0
- package/dist/tsconfig.tsbuildinfo +1 -1
- package/package.json +6 -5
- package/dist/src/bitgo/lightning/iLightning.d.ts.map +0 -1
- package/dist/src/bitgo/lightning/iLightning.js +0 -110
- package/dist/src/bitgo/lightning/lightning.d.ts.map +0 -1
- package/dist/src/bitgo/lightning/lightning.js +0 -111
- package/dist/src/bitgo/lightning/lnurlCodec.d.ts.map +0 -1
- package/dist/src/bitgo/lightning/lnurlCodec.js +0 -28
- /package/dist/src/bitgo/lightning/{iLightning.d.ts → custodial/iLightning.d.ts} +0 -0
- /package/dist/src/bitgo/lightning/{lnurlCodec.d.ts → custodial/lnurlCodec.d.ts} +0 -0
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@bitgo/sdk-core",
|
|
3
|
-
"version": "
|
|
3
|
+
"version": "28.0.0",
|
|
4
4
|
"description": "core library functions for BitGoJS",
|
|
5
5
|
"main": "./dist/src/index.js",
|
|
6
6
|
"types": "./dist/src/index.d.ts",
|
|
@@ -38,10 +38,10 @@
|
|
|
38
38
|
},
|
|
39
39
|
"dependencies": {
|
|
40
40
|
"@bitgo/bls-dkg": "^1.3.1",
|
|
41
|
-
"@bitgo/public-types": "2.33.
|
|
42
|
-
"@bitgo/sdk-lib-mpc": "^
|
|
41
|
+
"@bitgo/public-types": "2.33.4",
|
|
42
|
+
"@bitgo/sdk-lib-mpc": "^10.0.0",
|
|
43
43
|
"@bitgo/sjcl": "^1.0.1",
|
|
44
|
-
"@bitgo/statics": "^
|
|
44
|
+
"@bitgo/statics": "^49.0.0",
|
|
45
45
|
"@bitgo/utxo-lib": "^10.1.0",
|
|
46
46
|
"@noble/secp256k1": "1.6.3",
|
|
47
47
|
"@stablelib/hex": "^1.0.0",
|
|
@@ -74,9 +74,10 @@
|
|
|
74
74
|
"uuid": "^8.3.2"
|
|
75
75
|
},
|
|
76
76
|
"devDependencies": {
|
|
77
|
+
"@bitgo/sdk-opensslbytes": "^2.0.0",
|
|
77
78
|
"@openpgp/web-stream-tools": "0.0.14",
|
|
78
79
|
"@types/lodash": "^4.14.151",
|
|
79
80
|
"nyc": "^15.0.0"
|
|
80
81
|
},
|
|
81
|
-
"gitHead": "
|
|
82
|
+
"gitHead": "1891525678d11615e0857d00c14f02b188fe5a8b"
|
|
82
83
|
}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"iLightning.d.ts","sourceRoot":"","sources":["../../../../src/bitgo/lightning/iLightning.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,110 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
-
if (k2 === undefined) k2 = k;
|
|
4
|
-
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
-
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
-
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
-
}
|
|
8
|
-
Object.defineProperty(o, k2, desc);
|
|
9
|
-
}) : (function(o, m, k, k2) {
|
|
10
|
-
if (k2 === undefined) k2 = k;
|
|
11
|
-
o[k2] = m[k];
|
|
12
|
-
}));
|
|
13
|
-
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
14
|
-
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
15
|
-
}) : function(o, v) {
|
|
16
|
-
o["default"] = v;
|
|
17
|
-
});
|
|
18
|
-
var __importStar = (this && this.__importStar) || function (mod) {
|
|
19
|
-
if (mod && mod.__esModule) return mod;
|
|
20
|
-
var result = {};
|
|
21
|
-
if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
|
|
22
|
-
__setModuleDefault(result, mod);
|
|
23
|
-
return result;
|
|
24
|
-
};
|
|
25
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
26
|
-
exports.LnurlPayResponse = exports.GetPaymentsResponse = exports.GetInvoicesResponse = exports.GetBalanceResponse = exports.PayInvoiceResponse = exports.DepositResponse = exports.CreateDepositAddressResponse = exports.CreateInvoiceResponse = exports.WithdrawResponse = exports.WPTransfer = exports.WPTransferEntry = void 0;
|
|
27
|
-
/* eslint-disable no-redeclare */
|
|
28
|
-
const t = __importStar(require("io-ts"));
|
|
29
|
-
exports.WPTransferEntry = t.partial({
|
|
30
|
-
wallet: t.string,
|
|
31
|
-
address: t.string,
|
|
32
|
-
value: t.number,
|
|
33
|
-
valueString: t.string,
|
|
34
|
-
isChange: t.boolean,
|
|
35
|
-
isPayGo: t.boolean,
|
|
36
|
-
token: t.string,
|
|
37
|
-
}, 'WPTransferEntry');
|
|
38
|
-
exports.WPTransfer = t.type({
|
|
39
|
-
entries: t.array(exports.WPTransferEntry),
|
|
40
|
-
id: t.string,
|
|
41
|
-
heightId: t.string,
|
|
42
|
-
type: t.string,
|
|
43
|
-
value: t.number,
|
|
44
|
-
state: t.string,
|
|
45
|
-
}, 'WPTransfer');
|
|
46
|
-
exports.WithdrawResponse = t.strict({
|
|
47
|
-
txid: t.string,
|
|
48
|
-
}, 'CreateWithdrawalResponse');
|
|
49
|
-
exports.CreateInvoiceResponse = t.strict({
|
|
50
|
-
value: t.number,
|
|
51
|
-
memo: t.union([t.string, t.undefined]),
|
|
52
|
-
paymentHash: t.string,
|
|
53
|
-
invoice: t.string,
|
|
54
|
-
walletId: t.string,
|
|
55
|
-
status: t.string,
|
|
56
|
-
expiresAt: t.string,
|
|
57
|
-
}, 'CreateInvoiceResponse');
|
|
58
|
-
exports.CreateDepositAddressResponse = t.strict({
|
|
59
|
-
address: t.string,
|
|
60
|
-
}, 'CreateDepositAddressResponse');
|
|
61
|
-
exports.DepositResponse = t.strict({
|
|
62
|
-
status: t.string,
|
|
63
|
-
transfer: exports.WPTransfer,
|
|
64
|
-
}, 'DepositResponse');
|
|
65
|
-
exports.PayInvoiceResponse = t.strict({
|
|
66
|
-
paymentHash: t.string,
|
|
67
|
-
transfer: exports.WPTransfer,
|
|
68
|
-
status: t.string,
|
|
69
|
-
}, 'PayInvoiceResponse');
|
|
70
|
-
exports.GetBalanceResponse = t.strict({
|
|
71
|
-
balance: t.number,
|
|
72
|
-
availableBalance: t.number,
|
|
73
|
-
maximumBalance: t.number,
|
|
74
|
-
}, 'GetBalanceResponse');
|
|
75
|
-
const InvoiceInfo = t.strict({
|
|
76
|
-
paymentHash: t.string,
|
|
77
|
-
walletId: t.string,
|
|
78
|
-
status: t.union([t.literal('open'), t.literal('settled'), t.literal('canceled')]),
|
|
79
|
-
value: t.number,
|
|
80
|
-
expiresAt: t.string,
|
|
81
|
-
createdAt: t.string,
|
|
82
|
-
updatedAt: t.string,
|
|
83
|
-
amtPaidSats: t.union([t.number, t.undefined]),
|
|
84
|
-
});
|
|
85
|
-
exports.GetInvoicesResponse = t.array(InvoiceInfo);
|
|
86
|
-
const PaymentInfo = t.strict({
|
|
87
|
-
paymentHash: t.string,
|
|
88
|
-
walletId: t.string,
|
|
89
|
-
status: t.union([t.literal('in_flight'), t.literal('settled'), t.literal('failed')]),
|
|
90
|
-
amount: t.union([t.number, t.undefined]),
|
|
91
|
-
invoice: t.string,
|
|
92
|
-
sendQueueId: t.string,
|
|
93
|
-
failureReason: t.union([t.string, t.undefined]),
|
|
94
|
-
fee: t.union([t.number, t.undefined]),
|
|
95
|
-
feeLimit: t.number,
|
|
96
|
-
paymentPreimage: t.union([t.string, t.undefined]),
|
|
97
|
-
destination: t.string,
|
|
98
|
-
});
|
|
99
|
-
exports.GetPaymentsResponse = t.array(PaymentInfo);
|
|
100
|
-
exports.LnurlPayResponse = t.strict({
|
|
101
|
-
tag: t.literal('payRequest'),
|
|
102
|
-
callback: t.string,
|
|
103
|
-
/** The maximum amount in millisatoshis we can pay for this LNRUL request */
|
|
104
|
-
maxSendable: t.number,
|
|
105
|
-
/** The minimum amount in millisatoshis we can pay for this LNRUL request */
|
|
106
|
-
minSendable: t.number,
|
|
107
|
-
/** A json array in string format describing the payment */
|
|
108
|
-
metadata: t.string,
|
|
109
|
-
});
|
|
110
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaUxpZ2h0bmluZy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9iaXRnby9saWdodG5pbmcvaUxpZ2h0bmluZy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUFBLGlDQUFpQztBQUNqQyx5Q0FBMkI7QUE4Q2QsUUFBQSxlQUFlLEdBQUcsQ0FBQyxDQUFDLE9BQU8sQ0FDdEM7SUFDRSxNQUFNLEVBQUUsQ0FBQyxDQUFDLE1BQU07SUFDaEIsT0FBTyxFQUFFLENBQUMsQ0FBQyxNQUFNO0lBQ2pCLEtBQUssRUFBRSxDQUFDLENBQUMsTUFBTTtJQUNmLFdBQVcsRUFBRSxDQUFDLENBQUMsTUFBTTtJQUNyQixRQUFRLEVBQUUsQ0FBQyxDQUFDLE9BQU87SUFDbkIsT0FBTyxFQUFFLENBQUMsQ0FBQyxPQUFPO0lBQ2xCLEtBQUssRUFBRSxDQUFDLENBQUMsTUFBTTtDQUNoQixFQUNELGlCQUFpQixDQUNsQixDQUFDO0FBSVcsUUFBQSxVQUFVLEdBQUcsQ0FBQyxDQUFDLElBQUksQ0FDOUI7SUFDRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLEtBQUssQ0FBQyx1QkFBZSxDQUFDO0lBQ2pDLEVBQUUsRUFBRSxDQUFDLENBQUMsTUFBTTtJQUNaLFFBQVEsRUFBRSxDQUFDLENBQUMsTUFBTTtJQUNsQixJQUFJLEVBQUUsQ0FBQyxDQUFDLE1BQU07SUFDZCxLQUFLLEVBQUUsQ0FBQyxDQUFDLE1BQU07SUFDZixLQUFLLEVBQUUsQ0FBQyxDQUFDLE1BQU07Q0FDaEIsRUFDRCxZQUFZLENBQ2IsQ0FBQztBQUlXLFFBQUEsZ0JBQWdCLEdBQUcsQ0FBQyxDQUFDLE1BQU0sQ0FDdEM7SUFDRSxJQUFJLEVBQUUsQ0FBQyxDQUFDLE1BQU07Q0FDZixFQUNELDBCQUEwQixDQUMzQixDQUFDO0FBSVcsUUFBQSxxQkFBcUIsR0FBRyxDQUFDLENBQUMsTUFBTSxDQUMzQztJQUNFLEtBQUssRUFBRSxDQUFD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QUMsQ0FBQyxDQUFDLE1BQU0sRUFBRSxDQUFDLENBQUMsU0FBUyxDQUFDLENBQUM7SUFDL0MsR0FBRyxFQUFFLENBQUMsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUMsTUFBTSxFQUFFLENBQUMsQ0FBQyxTQUFTLENBQUMsQ0FBQztJQUNyQyxRQUFRLEVBQUUsQ0FBQyxDQUFDLE1BQU07SUFDbEIsZUFBZSxFQUFFLENBQUMsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUMsTUFBTSxFQUFFLENBQUMsQ0FBQyxTQUFTLENBQUMsQ0FBQztJQUNqRCxXQUFXLEVBQUUsQ0FBQyxDQUFDLE1BQU07Q0FDdEIsQ0FBQyxDQUFDO0FBRVUsUUFBQSxtQkFBbUIsR0FBRyxDQUFDLENBQUMsS0FBSyxDQUFDLFdBQVcsQ0FBQyxDQUFDO0FBSTNDLFFBQUEsZ0JBQWdCLEdBQUcsQ0FBQyxDQUFDLE1BQU0sQ0FBQztJQUN2QyxHQUFHLEVBQUUsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxZQUFZLENBQUM7SUFDNUIsUUFBUSxFQUFFLENBQUMsQ0FBQyxNQUFNO0lBQ2xCLDRFQUE0RTtJQUM1RSxXQUFXLEVBQUUsQ0FBQyxDQUFDLE1BQU07SUFDckIsNEVBQTRFO0lBQzVFLFdBQVcsRUFBRSxDQUFDLENBQUMsTUFBTTtJQUNyQiwyREFBMkQ7SUFDM0QsUUFBUSxFQUFFLENBQUMsQ0FBQyxNQUFNO0NBQ25CLENBQUMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qIGVzbGludC1kaXNhYmxlIG5vLXJlZGVjbGFyZSAqL1xuaW1wb3J0ICogYXMgdCBmcm9tICdpby10cyc7XG5cbmV4cG9ydCBpbnRlcmZhY2UgQ3JlYXRlSW52b2ljZVBhcmFtcyB7XG4gIHZhbHVlOiBudW1iZXI7XG4gIG1lbW8/OiBzdHJpbmc7XG4gIGV4cGlyeT86IG51bWJlcjtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBMaWdodG5pbmdXaXRoZHJhd2FsUGFyYW1zIHtcbiAgdmFsdWU6IG51bWJlcjtcbiAgZGVzdGluYXRpb24/OiBzdHJpbmc7XG4gIHNlcXVlbmNlSWQ/OiBzdHJpbmc7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgTGlnaHRuaW5nRGVwb3NpdFBhcmFtcyB7XG4gIGFtb3VudDogbnVtYmVyO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIFBheUludm9pY2VQYXJhbXMge1xuICBpbnZvaWNlOiBzdHJpbmc7XG4gIHNlcXVlbmNlSWQ/OiBzdHJpbmc7XG4gIGNvbW1lbnQ/OiBzdHJpbmc7XG4gIGZlZUxpbWl0UmF0aW8/OiBudW1iZXI7XG4gIGZlZUxpbWl0PzogbnVtYmVyO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIEdldEludm9pY2VzUXVlcnkge1xuICBzdGF0dXM/OiBzdHJpbmc7XG4gIGxpbWl0PzogbnVtYmVyO1xuICBzdGFydERhdGU/OiBzdHJpbmc7XG4gIGVuZERhdGU/OiBzdHJpbmc7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgR2V0UGF5bWVudHNRdWVyeSB7XG4gIHN0YXR1cz86IHN0cmluZztcbiAgbGltaXQ/OiBudW1iZXI7XG4gIHN0YXJ0RGF0ZT86IHN0cmluZztcbiAgZW5kRGF0ZT86IHN0cmluZztcbn1cblxuZXhwb3J0IGludGVyZmFjZSBMbnVybFBheVBhcmFtcyB7XG4gIGNhbGxiYWNrOiBzdHJpbmc7XG4gIG1pbGxpc2F0QW1vdW50OiBzdHJpbmc7XG4gIG1ldGFkYXRhOiBzdHJpbmc7XG59XG5cbmV4cG9ydCBjb25zdCBXUFRyYW5zZmVyRW50cnkgPSB0LnBhcnRpYWwoXG4gIHtcbiAgICB3YWxsZXQ6IHQuc3RyaW5nLFxuICAgIGFkZHJlc3M6IHQuc3RyaW5nLFxuICAgIHZhbHVlOiB0Lm51bWJlcixcbiAgICB2YWx1ZVN0cmluZzogdC5zdHJpbmcsXG4gICAgaXNDaGFuZ2U6IHQuYm9vbGVhbixcbiAgICBpc1BheUdvOiB0LmJvb2xlYW4sXG4gICAgdG9rZW46IHQuc3RyaW5nLFxuICB9LFxuICAnV1BUcmFuc2ZlckVudHJ5J1xuKTtcblxuZXhwb3J0IHR5cGUgV1BUcmFuc2ZlckVudHJ5ID0gdC5UeXBlT2Y8dHlwZW9mIFdQVHJhbnNmZXJFbnRyeT47XG5cbmV4cG9ydCBjb25zdCBXUFRyYW5zZmVyID0gdC50eXBlKFxuICB7XG4gICAgZW50cmllczogdC5hcnJheShXUFRyYW5zZmVyRW50cnkpLFxuICAgIGlkOiB0LnN0cmluZyxcbiAgICBoZWlnaHRJZDogdC5zdHJpbmcsXG4gICAgdHlwZTogdC5zdHJpbmcsXG4gICAgdmFsdWU6IHQubnVtYmVyLFxuICAgIHN0YXRlOiB0LnN0cmluZyxcbiAgfSxcbiAgJ1dQVHJhbnNmZXInXG4pO1xuXG5leHBvcnQgdHlwZSBXUFRyYW5zZmVyID0gdC5UeXBlT2Y8dHlwZW9mIFdQVHJhbnNmZXI+O1xuXG5leHBvcnQgY29uc3QgV2l0aGRyYXdSZXNwb25zZSA9IHQuc3RyaWN0KFxuICB7XG4gICAgdHhpZDogdC5zdHJpbmcsXG4gIH0sXG4gICdDcmVhdGVXaXRoZHJhd2FsUmVzcG9uc2UnXG4pO1xuXG5leHBvcnQgdHlwZSBXaXRoZHJhd1Jlc3BvbnNlID0gdC5UeXBlT2Y8dHlwZW9mIFdpdGhkcmF3UmVzcG9uc2U+O1xuXG5leHBvcnQgY29uc3QgQ3JlYXRlSW52b2ljZVJlc3BvbnNlID0gdC5zdHJpY3QoXG4gIHtcbiAgICB2YWx1ZTogdC5udW1iZXIsXG4gICAgbWVtbzogdC51bmlvbihbdC5zdHJpbmcsIHQudW5kZWZpbmVkXSksXG4gICAgcGF5bWVudEhhc2g6IHQuc3RyaW5nLFxuICAgIGludm9pY2U6IHQuc3RyaW5nLFxuICAgIHdhbGxldElkOiB0LnN0cmluZyxcbiAgICBzdGF0dXM6IHQuc3RyaW5nLFxuICAgIGV4cGlyZXNBdDogdC5zdHJpbmcsXG4gIH0sXG4gICdDcmVhdGVJbnZvaWNlUmVzcG9uc2UnXG4pO1xuXG5leHBvcnQgdHlwZSBDcmVhdGVJbnZvaWNlUmVzcG9uc2UgPSB0LlR5cGVPZjx0eXBlb2YgQ3JlYXRlSW52b2ljZVJlc3BvbnNlPjtcblxuZXhwb3J0IGNvbnN0IENyZWF0ZURlcG9zaXRBZGRyZXNzUmVzcG9uc2UgPSB0LnN0cmljdChcbiAge1xuICAgIGFkZHJlc3M6IHQuc3RyaW5nLFxuICB9LFxuICAnQ3JlYXRlRGVwb3NpdEFkZHJlc3NSZXNwb25zZSdcbik7XG5cbmV4cG9ydCB0eXBlIENyZWF0ZURlcG9zaXRBZGRyZXNzUmVzcG9uc2UgPSB0LlR5cGVPZjx0eXBlb2YgQ3JlYXRlRGVwb3NpdEFkZHJlc3NSZXNwb25zZT47XG5cbmV4cG9ydCBjb25zdCBEZXBvc2l0UmVzcG9uc2UgPSB0LnN0cmljdChcbiAge1xuICAgIHN0YXR1czogdC5zdHJpbmcsXG4gICAgdHJhbnNmZXI6IFdQVHJhbnNmZXIsXG4gIH0sXG4gICdEZXBvc2l0UmVzcG9uc2UnXG4pO1xuXG5leHBvcnQgdHlwZSBEZXBvc2l0UmVzcG9uc2UgPSB0LlR5cGVPZjx0eXBlb2YgRGVwb3NpdFJlc3BvbnNlPjtcblxuZXhwb3J0IGNvbnN0IFBheUludm9pY2VSZXNwb25zZSA9IHQuc3RyaWN0KFxuICB7XG4gICAgcGF5bWVudEhhc2g6IHQuc3RyaW5nLFxuICAgIHRyYW5zZmVyOiBXUFRyYW5zZmVyLFxuICAgIHN0YXR1czogdC5zdHJpbmcsXG4gIH0sXG4gICdQYXlJbnZvaWNlUmVzcG9uc2UnXG4pO1xuXG5leHBvcnQgdHlwZSBQYXlJbnZvaWNlUmVzcG9uc2UgPSB0LlR5cGVPZjx0eXBlb2YgUGF5SW52b2ljZVJlc3BvbnNlPjtcblxuZXhwb3J0IGNvbnN0IEdldEJhbGFuY2VSZXNwb25zZSA9IHQuc3RyaWN0KFxuICB7XG4gICAgYmFsYW5jZTogdC5udW1iZXIsXG4gICAgYXZhaWxhYmxlQmFsYW5jZTogdC5udW1iZXIsXG4gICAgbWF4aW11bUJhbGFuY2U6IHQubnVtYmVyLFxuICB9LFxuICAnR2V0QmFsYW5jZVJlc3BvbnNlJ1xuKTtcblxuZXhwb3J0IHR5cGUgR2V0QmFsYW5jZVJlc3BvbnNlID0gdC5UeXBlT2Y8dHlwZW9mIEdldEJhbGFuY2VSZXNwb25zZT47XG5cbmNvbnN0IEludm9pY2VJbmZvID0gdC5zdHJpY3Qoe1xuICBwYXltZW50SGFzaDogdC5zdHJpbmcsXG4gIHdhbGxldElkOiB0LnN0cmluZyxcbiAgc3RhdHVzOiB0LnVuaW9uKFt0LmxpdGVyYWwoJ29wZW4nKSwgdC5saXRlcmFsKCdzZXR0bGVkJyksIHQubGl0ZXJhbCgnY2FuY2VsZWQnKV0pLFxuICB2YWx1ZTogdC5udW1iZXIsXG4gIGV4cGlyZXNBdDogdC5zdHJpbmcsXG4gIGNyZWF0ZWRBdDogdC5zdHJpbmcsXG4gIHVwZGF0ZWRBdDogdC5zdHJpbmcsXG4gIGFtdFBhaWRTYXRzOiB0LnVuaW9uKFt0Lm51bWJlciwgdC51bmRlZmluZWRdKSxcbn0pO1xuXG5leHBvcnQgY29uc3QgR2V0SW52b2ljZXNSZXNwb25zZSA9IHQuYXJyYXkoSW52b2ljZUluZm8pO1xuXG5leHBvcnQgdHlwZSBHZXRJbnZvaWNlc1Jlc3BvbnNlID0gdC5UeXBlT2Y8dHlwZW9mIEdldEludm9pY2VzUmVzcG9uc2U+O1xuXG5jb25zdCBQYXltZW50SW5mbyA9IHQuc3RyaWN0KHtcbiAgcGF5bWVudEhhc2g6IHQuc3RyaW5nLFxuICB3YWxsZXRJZDogdC5zdHJpbmcsXG4gIHN0YXR1czogdC51bmlvbihbdC5saXRlcmFsKCdpbl9mbGlnaHQnKSwgdC5saXRlcmFsKCdzZXR0bGVkJyksIHQubGl0ZXJhbCgnZmFpbGVkJyldKSxcbiAgYW1vdW50OiB0LnVuaW9uKFt0Lm51bWJlciwgdC51bmRlZmluZWRdKSxcbiAgaW52b2ljZTogdC5zdHJpbmcsXG4gIHNlbmRRdWV1ZUlkOiB0LnN0cmluZyxcbiAgZmFpbHVyZVJlYXNvbjogdC51bmlvbihbdC5zdHJpbmcsIHQudW5kZWZpbmVkXSksXG4gIGZlZTogdC51bmlvbihbdC5udW1iZXIsIHQudW5kZWZpbmVkXSksXG4gIGZlZUxpbWl0OiB0Lm51bWJlcixcbiAgcGF5bWVudFByZWltYWdlOiB0LnVuaW9uKFt0LnN0cmluZywgdC51bmRlZmluZWRdKSxcbiAgZGVzdGluYXRpb246IHQuc3RyaW5nLFxufSk7XG5cbmV4cG9ydCBjb25zdCBHZXRQYXltZW50c1Jlc3BvbnNlID0gdC5hcnJheShQYXltZW50SW5mbyk7XG5cbmV4cG9ydCB0eXBlIEdldFBheW1lbnRzUmVzcG9uc2UgPSB0LlR5cGVPZjx0eXBlb2YgR2V0UGF5bWVudHNSZXNwb25zZT47XG5cbmV4cG9ydCBjb25zdCBMbnVybFBheVJlc3BvbnNlID0gdC5zdHJpY3Qoe1xuICB0YWc6IHQubGl0ZXJhbCgncGF5UmVxdWVzdCcpLFxuICBjYWxsYmFjazogdC5zdHJpbmcsXG4gIC8qKiBUaGUgbWF4aW11bSBhbW91bnQgaW4gbWlsbGlzYXRvc2hpcyB3ZSBjYW4gcGF5IGZvciB0aGlzIExOUlVMIHJlcXVlc3QgKi9cbiAgbWF4U2VuZGFibGU6IHQubnVtYmVyLFxuICAvKiogVGhlIG1pbmltdW0gYW1vdW50IGluIG1pbGxpc2F0b3NoaXMgd2UgY2FuIHBheSBmb3IgdGhpcyBMTlJVTCByZXF1ZXN0ICovXG4gIG1pblNlbmRhYmxlOiB0Lm51bWJlcixcbiAgLyoqIEEganNvbiBhcnJheSBpbiBzdHJpbmcgZm9ybWF0IGRlc2NyaWJpbmcgdGhlIHBheW1lbnQgKi9cbiAgbWV0YWRhdGE6IHQuc3RyaW5nLFxufSk7XG5cbmV4cG9ydCB0eXBlIExudXJsUGF5UmVzcG9uc2UgPSB0LlR5cGVPZjx0eXBlb2YgTG51cmxQYXlSZXNwb25zZT47XG5cbmV4cG9ydCB0eXBlIERlY29kZWRMbnVybFBheVJlcXVlc3QgPSBMbnVybFBheVJlc3BvbnNlICYge1xuICAvKipcbiAgICogRnJvbSBodHRwczovL2dpdGh1Yi5jb20vZmlhdGphZi9sbnVybC1yZmMvYmxvYi9sdWRzLzA2Lm1kI3BheS10by1zdGF0aWMtcXJuZmNsaW5rXG4gICAqIGEgcGF5bWVudCBkaWFsb2cgbXVzdCBpbmNsdWRlOiBEb21haW4gbmFtZSBleHRyYWN0ZWQgZnJvbSBMTlVSTCBxdWVyeSBzdHJpbmcuXG4gICAqL1xuICBkb21haW46IHN0cmluZztcbn07XG5cbmV4cG9ydCBpbnRlcmZhY2UgSUxpZ2h0bmluZyB7XG4gIGNyZWF0ZUludm9pY2UocGFyYW1zOiBDcmVhdGVJbnZvaWNlUGFyYW1zKTogUHJvbWlzZTxDcmVhdGVJbnZvaWNlUmVzcG9uc2U+O1xuICBjcmVhdGVEZXBvc2l0QWRkcmVzcygpOiBQcm9taXNlPENyZWF0ZURlcG9zaXRBZGRyZXNzUmVzcG9uc2U+O1xuICBwYXlJbnZvaWNlKHBhcmFtczogUGF5SW52b2ljZVBhcmFtcyk6IFByb21pc2U8UGF5SW52b2ljZVJlc3BvbnNlPjtcbiAgZ2V0QmFsYW5jZSgpOiBQcm9taXNlPEdldEJhbGFuY2VSZXNwb25zZT47XG4gIHdpdGhkcmF3KHBhcmFtczogTGlnaHRuaW5nV2l0aGRyYXdhbFBhcmFtcyk6IFByb21pc2U8V2l0aGRyYXdSZXNwb25zZT47XG4gIGRlcG9zaXQocGFyYW1zOiBMaWdodG5pbmdEZXBvc2l0UGFyYW1zKTogUHJvbWlzZTxEZXBvc2l0UmVzcG9uc2U+O1xuICBnZXRJbnZvaWNlcyhxdWVyeT86IEdldEludm9pY2VzUXVlcnkpOiBQcm9taXNlPEdldEludm9pY2VzUmVzcG9uc2U+O1xuICBkZWNvZGVMbnVybFBheShsbnVybDogc3RyaW5nKTogUHJvbWlzZTxEZWNvZGVkTG51cmxQYXlSZXF1ZXN0PjtcbiAgZmV0Y2hMbnVybFBheUludm9pY2UocGFyYW1zOiBMbnVybFBheVBhcmFtcyk6IFByb21pc2U8c3RyaW5nPjtcbiAgZ2V0UGF5bWVudHMocXVlcnk/OiBHZXRQYXltZW50c1F1ZXJ5KTogUHJvbWlzZTxHZXRQYXltZW50c1Jlc3BvbnNlPjtcbn1cbiJdfQ==
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"lightning.d.ts","sourceRoot":"","sources":["../../../../src/bitgo/lightning/lightning.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,UAAU,EACV,mBAAmB,EACnB,gBAAgB,EAChB,yBAAyB,EACzB,sBAAsB,EACtB,cAAc,EACd,qBAAqB,EACrB,4BAA4B,EAC5B,kBAAkB,EAClB,kBAAkB,EAClB,gBAAgB,EAChB,eAAe,EACf,gBAAgB,EAChB,mBAAmB,EACnB,sBAAsB,EACtB,gBAAgB,EAChB,mBAAmB,EACpB,MAAM,cAAc,CAAC;AAEtB,OAAO,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AACzC,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAIpC,qBAAa,SAAU,YAAW,UAAU;IAC1C,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAY;IAClC,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAU;IACjC,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAS;gBAEjB,KAAK,EAAE,SAAS,EAAE,MAAM,EAAE,OAAO;IAMhC,aAAa,CAAC,MAAM,EAAE,mBAAmB,GAAG,OAAO,CAAC,qBAAqB,CAAC;IAW1E,oBAAoB,IAAI,OAAO,CAAC,4BAA4B,CAAC;IAO7D,UAAU,CAAC,MAAM,EAAE,gBAAgB,GAAG,OAAO,CAAC,kBAAkB,CAAC;IAWjE,UAAU,IAAI,OAAO,CAAC,kBAAkB,CAAC;IAOzC,QAAQ,CAAC,MAAM,EAAE,yBAAyB,GAAG,OAAO,CAAC,gBAAgB,CAAC;IAqBtE,OAAO,CAAC,MAAM,EAAE,sBAAsB,GAAG,OAAO,CAAC,eAAe,CAAC;IAWjE,WAAW,CAAC,KAAK,CAAC,EAAE,gBAAgB,GAAG,OAAO,CAAC,mBAAmB,CAAC;IAiBhF;;;;OAIG;IACU,WAAW,CAAC,KAAK,CAAC,EAAE,gBAAgB,GAAG,OAAO,CAAC,mBAAmB,CAAC;IAgBzE,cAAc,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,sBAAsB,CAAC;IAI9D,oBAAoB,CAAC,MAAM,EAAE,cAAc,GAAG,OAAO,CAAC,MAAM,CAAC;CAGrE"}
|
|
@@ -1,111 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.Lightning = void 0;
|
|
4
|
-
const iLightning_1 = require("./iLightning");
|
|
5
|
-
const lightningUtils_1 = require("./lightningUtils");
|
|
6
|
-
const decode_1 = require("../utils/decode");
|
|
7
|
-
const crypto_1 = require("crypto");
|
|
8
|
-
class Lightning {
|
|
9
|
-
constructor(bitgo, wallet) {
|
|
10
|
-
this.bitgo = bitgo;
|
|
11
|
-
this.wallet = wallet;
|
|
12
|
-
this.url = this.bitgo.url(`/wallet/${this.wallet.id()}/lightning`, 2);
|
|
13
|
-
}
|
|
14
|
-
async createInvoice(params) {
|
|
15
|
-
const body = await this.bitgo
|
|
16
|
-
.post(this.url + '/invoice')
|
|
17
|
-
.send(params)
|
|
18
|
-
.result();
|
|
19
|
-
return (0, decode_1.decodeOrElse)(iLightning_1.CreateInvoiceResponse.name, iLightning_1.CreateInvoiceResponse, body, (errors) => {
|
|
20
|
-
throw new Error(`error(s) parsing response body: ${errors}`);
|
|
21
|
-
});
|
|
22
|
-
}
|
|
23
|
-
async createDepositAddress() {
|
|
24
|
-
const body = await this.bitgo.post(this.url + '/address').result();
|
|
25
|
-
return (0, decode_1.decodeOrElse)(iLightning_1.CreateDepositAddressResponse.name, iLightning_1.CreateDepositAddressResponse, body, (errors) => {
|
|
26
|
-
throw new Error(`error(s) parsing response body: ${errors}`);
|
|
27
|
-
});
|
|
28
|
-
}
|
|
29
|
-
async payInvoice(params) {
|
|
30
|
-
const body = await this.bitgo
|
|
31
|
-
.post(this.url + '/payment')
|
|
32
|
-
.send(params)
|
|
33
|
-
.result();
|
|
34
|
-
return (0, decode_1.decodeOrElse)(iLightning_1.PayInvoiceResponse.name, iLightning_1.PayInvoiceResponse, body, (errors) => {
|
|
35
|
-
throw new Error(`error(s) parsing response body: ${errors}`);
|
|
36
|
-
});
|
|
37
|
-
}
|
|
38
|
-
async getBalance() {
|
|
39
|
-
const body = await this.bitgo.get(this.url + '/balance').result();
|
|
40
|
-
return (0, decode_1.decodeOrElse)(iLightning_1.GetBalanceResponse.name, iLightning_1.GetBalanceResponse, body, (errors) => {
|
|
41
|
-
throw new Error(`error(s) parsing response body: ${errors}`);
|
|
42
|
-
});
|
|
43
|
-
}
|
|
44
|
-
async withdraw(params) {
|
|
45
|
-
const { value } = params;
|
|
46
|
-
let { destination, sequenceId } = params;
|
|
47
|
-
if (destination === undefined) {
|
|
48
|
-
destination = (await this.wallet.createAddress()).address;
|
|
49
|
-
}
|
|
50
|
-
if (sequenceId === undefined) {
|
|
51
|
-
sequenceId = (0, crypto_1.randomBytes)(16).toString('hex');
|
|
52
|
-
}
|
|
53
|
-
const body = await this.bitgo
|
|
54
|
-
.post(this.url + '/withdrawal')
|
|
55
|
-
.send({ value, destination, sequenceId })
|
|
56
|
-
.result();
|
|
57
|
-
return (0, decode_1.decodeOrElse)(iLightning_1.WithdrawResponse.name, iLightning_1.WithdrawResponse, body, (errors) => {
|
|
58
|
-
throw new Error(`error(s) parsing response body: ${errors}`);
|
|
59
|
-
});
|
|
60
|
-
}
|
|
61
|
-
async deposit(params) {
|
|
62
|
-
const { amount } = params;
|
|
63
|
-
const address = (await this.createDepositAddress()).address;
|
|
64
|
-
const res = await this.wallet.send({ amount, address });
|
|
65
|
-
return (0, decode_1.decodeOrElse)(iLightning_1.DepositResponse.name, iLightning_1.DepositResponse, res, (errors) => {
|
|
66
|
-
throw new Error(`error(s) parsing response body: ${errors}`);
|
|
67
|
-
});
|
|
68
|
-
}
|
|
69
|
-
async getInvoices(query) {
|
|
70
|
-
const queryParams = {
|
|
71
|
-
status: query === null || query === void 0 ? void 0 : query.status,
|
|
72
|
-
limit: query === null || query === void 0 ? void 0 : query.limit,
|
|
73
|
-
startDate: query === null || query === void 0 ? void 0 : query.startDate,
|
|
74
|
-
endDate: query === null || query === void 0 ? void 0 : query.endDate,
|
|
75
|
-
};
|
|
76
|
-
const body = await this.bitgo
|
|
77
|
-
.get(this.url + '/invoices')
|
|
78
|
-
.query(queryParams)
|
|
79
|
-
.result();
|
|
80
|
-
return (0, decode_1.decodeOrElse)(iLightning_1.GetInvoicesResponse.name, iLightning_1.GetInvoicesResponse, body, (errors) => {
|
|
81
|
-
throw new Error(`error(s) parsing response body: ${errors}`);
|
|
82
|
-
});
|
|
83
|
-
}
|
|
84
|
-
/**
|
|
85
|
-
* fetches lightning payments by status, limit, startDate and endDate
|
|
86
|
-
* @param query
|
|
87
|
-
* @return {GetPaymentsResponse}
|
|
88
|
-
*/
|
|
89
|
-
async getPayments(query) {
|
|
90
|
-
const queryParams = {};
|
|
91
|
-
queryParams.status = query === null || query === void 0 ? void 0 : query.status;
|
|
92
|
-
queryParams.limit = query === null || query === void 0 ? void 0 : query.limit;
|
|
93
|
-
queryParams.startDate = query === null || query === void 0 ? void 0 : query.startDate;
|
|
94
|
-
queryParams.endDate = query === null || query === void 0 ? void 0 : query.endDate;
|
|
95
|
-
const body = await this.bitgo
|
|
96
|
-
.get(this.url + '/payments')
|
|
97
|
-
.query(queryParams)
|
|
98
|
-
.result();
|
|
99
|
-
return (0, decode_1.decodeOrElse)(iLightning_1.GetPaymentsResponse.name, iLightning_1.GetPaymentsResponse, body, (errors) => {
|
|
100
|
-
throw new Error(`error(s) parsing response body: ${errors}`);
|
|
101
|
-
});
|
|
102
|
-
}
|
|
103
|
-
decodeLnurlPay(lnurl) {
|
|
104
|
-
return (0, lightningUtils_1.decodeLnurlPay)(lnurl);
|
|
105
|
-
}
|
|
106
|
-
fetchLnurlPayInvoice(params) {
|
|
107
|
-
return (0, lightningUtils_1.fetchLnurlPayInvoice)(params);
|
|
108
|
-
}
|
|
109
|
-
}
|
|
110
|
-
exports.Lightning = Lightning;
|
|
111
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGlnaHRuaW5nLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL2JpdGdvL2xpZ2h0bmluZy9saWdodG5pbmcudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQUEsNkNBa0JzQjtBQUN0QixxREFBd0U7QUFHeEUsNENBQStDO0FBQy9DLG1DQUFxQztBQUVyQyxNQUFhLFNBQVM7SUFLcEIsWUFBWSxLQUFnQixFQUFFLE1BQWU7UUFDM0MsSUFBSSxDQUFDLEtBQUssR0FBRyxLQUFLLENBQUM7UUFDbkIsSUFBSSxDQUFDLE1BQU0sR0FBRyxNQUFNLENBQUM7UUFDckIsSUFBSSxDQUFDLEdBQUcsR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxXQUFXLElBQUksQ0FBQyxNQUFNLENBQUMsRUFBRSxFQUFFLFlBQVksRUFBRSxDQUFDLENBQUMsQ0FBQztJQUN4RSxDQUFDO0lBRU0sS0FBSyxDQUFDLGFBQWEsQ0FBQyxNQUEyQjtRQUNwRCxNQUFNLElBQUksR0FBRyxNQUFNLElBQUksQ0FBQyxLQUFLO2FBQzFCLElBQUksQ0FBQyxJQUFJLENBQUMsR0FBRyxHQUFHLFVBQVUsQ0FBQzthQUMzQixJQUFJLENBQUMsTUFBTSxDQUFDO2FBQ1osTUFBTSxFQUFFLENBQUM7UUFFWixPQUFPLElBQUEscUJBQVksRUFBQyxrQ0FBcUIsQ0FBQyxJQUFJLEVBQUUsa0NBQXFCLEVBQUUsSUFBSSxFQUFFLENBQUMsTUFBTSxFQUFFLEVBQUU7WUFDdEYsTUFBTSxJQUFJLEtBQUssQ0FBQyxtQ0FBbUMsTUFBTSxFQUFFLENBQUMsQ0FBQztRQUMvRCxDQUFDLENBQUMsQ0FBQztJQUNMLENBQUM7SUFFTSxLQUFLLENBQUMsb0JBQW9CO1FBQy9CLE1BQU0sSUFBSSxHQUFHLE1BQU0sSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLEdBQUcsR0FBRyxVQUFVLENBQUMsQ0FBQyxNQUFNLEVBQUUsQ0FBQztRQUNu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QUFDLFNBQVMsR0FBRyxLQUFLLGFBQUwsS0FBSyx1QkFBTCxLQUFLLENBQUUsU0FBUyxDQUFDO1FBQ3pDLFdBQVcsQ0FBQyxPQUFPLEdBQUcsS0FBSyxhQUFMLEtBQUssdUJBQUwsS0FBSyxDQUFFLE9BQU8sQ0FBQztRQUVyQyxNQUFNLElBQUksR0FBRyxNQUFNLElBQUksQ0FBQyxLQUFLO2FBQzFCLEdBQUcsQ0FBQyxJQUFJLENBQUMsR0FBRyxHQUFHLFdBQVcsQ0FBQzthQUMzQixLQUFLLENBQUMsV0FBVyxDQUFDO2FBQ2xCLE1BQU0sRUFBRSxDQUFDO1FBQ1osT0FBTyxJQUFBLHFCQUFZLEVBQUMsZ0NBQW1CLENBQUMsSUFBSSxFQUFFLGdDQUFtQixFQUFFLElBQUksRUFBRSxDQUFDLE1BQU0sRUFBRSxFQUFFO1lBQ2xGLE1BQU0sSUFBSSxLQUFLLENBQUMsbUNBQW1DLE1BQU0sRUFBRSxDQUFDLENBQUM7UUFDL0QsQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDO0lBRU0sY0FBYyxDQUFDLEtBQWE7UUFDakMsT0FBTyxJQUFBLCtCQUFjLEVBQUMsS0FBSyxDQUFDLENBQUM7SUFDL0IsQ0FBQztJQUVNLG9CQUFvQixDQUFDLE1BQXNCO1FBQ2hELE9BQU8sSUFBQSxxQ0FBb0IsRUFBQyxNQUFNLENBQUMsQ0FBQztJQUN0QyxDQUFDO0NBQ0Y7QUE1SEQsOEJBNEhDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgSUxpZ2h0bmluZyxcbiAgQ3JlYXRlSW52b2ljZVBhcmFtcyxcbiAgUGF5SW52b2ljZVBhcmFtcyxcbiAgTGlnaHRuaW5nV2l0aGRyYXdhbFBhcmFtcyxcbiAgTGlnaHRuaW5nRGVwb3NpdFBhcmFtcyxcbiAgTG51cmxQYXlQYXJhbXMsXG4gIENyZWF0ZUludm9pY2VSZXNwb25zZSxcbiAgQ3JlYXRlRGVwb3NpdEFkZHJlc3NSZXNwb25zZSxcbiAgUGF5SW52b2ljZVJlc3BvbnNlLFxuICBHZXRCYWxhbmNlUmVzcG9uc2UsXG4gIFdpdGhkcmF3UmVzcG9uc2UsXG4gIERlcG9zaXRSZXNwb25zZSxcbiAgR2V0SW52b2ljZXNRdWVyeSxcbiAgR2V0SW52b2ljZXNSZXNwb25zZSxcbiAgRGVjb2RlZExudXJsUGF5UmVxdWVzdCxcbiAgR2V0UGF5bWVudHNRdWVyeSxcbiAgR2V0UGF5bWVudHNSZXNwb25zZSxcbn0gZnJvbSAnLi9pTGlnaHRuaW5nJztcbmltcG9ydCB7IGRlY29kZUxudXJsUGF5LCBmZXRjaExudXJsUGF5SW52b2ljZSB9IGZyb20gJy4vbGlnaHRuaW5nVXRpbHMnO1xuaW1wb3J0IHsgQml0R29CYXNlIH0gZnJvbSAnLi4vYml0Z29CYXNlJztcbmltcG9ydCB7IElXYWxsZXQgfSBmcm9tICcuLi93YWxsZXQnO1xuaW1wb3J0IHsgZGVjb2RlT3JFbHNlIH0gZnJvbSAnLi4vdXRpbHMvZGVjb2RlJztcbmltcG9ydCB7IHJhbmRvbUJ5dGVzIH0gZnJvbSAnY3J5cHRvJztcblxuZXhwb3J0IGNsYXNzIExpZ2h0bmluZyBpbXBsZW1lbnRzIElMaWdodG5pbmcge1xuICBwcml2YXRlIHJlYWRvbmx5IGJpdGdvOiBCaXRHb0Jhc2U7XG4gIHByaXZhdGUgcmVhZG9ubHkgd2FsbGV0OiBJV2FsbGV0O1xuICBwcml2YXRlIHJlYWRvbmx5IHVybDogc3RyaW5nO1xuXG4gIGNvbnN0cnVjdG9yKGJpdGdvOiBCaXRHb0Jhc2UsIHdhbGxldDogSVdhbGxldCkge1xuICAgIHRoaXMuYml0Z28gPSBiaXRnbztcbiAgICB0aGlzLndhbGxldCA9IHdhbGxldDtcbiAgICB0aGlzLnVybCA9IHRoaXMuYml0Z28udXJsKGAvd2FsbGV0LyR7dGhpcy53YWxsZXQuaWQoKX0vbGlnaHRuaW5nYCwgMik7XG4gIH1cblxuICBwdWJsaWMgYXN5bmMgY3JlYXRlSW52b2ljZShwYXJhbXM6IENyZWF0ZUludm9pY2VQYXJhbXMpOiBQcm9taXNlPENyZWF0ZUludm9pY2VSZXNwb25zZT4ge1xuICAgIGNvbnN0IGJvZHkgPSBhd2FpdCB0aGlzLmJpdGdvXG4gICAgICAucG9zdCh0aGlzLnVybCArICcvaW52b2ljZScpXG4gICAgICAuc2VuZChwYXJhbXMpXG4gICAgICAucmVzdWx0KCk7XG5cbiAgICByZXR1cm4gZGVjb2RlT3JFbHNlKENyZWF0ZUludm9pY2VSZXNwb25zZS5uYW1lLCBDcmVhdGVJbnZvaWNlUmVzcG9uc2UsIGJvZHksIChlcnJvcnMpID0+IHtcbiAgICAgIHRocm93IG5ldyBFcnJvcihgZXJyb3IocykgcGFyc2luZyByZXNwb25zZSBib2R5OiAke2Vycm9yc31gKTtcbiAgICB9KTtcbiAgfVxuXG4gIHB1YmxpYyBhc3luYyBjcmVhdGVEZXBvc2l0QWRkcmVzcygpOiBQcm9taXNlPENyZWF0ZURlcG9zaXRBZGRyZXNzUmVzcG9uc2U+IHtcbiAgICBjb25zdCBib2R5ID0gYXdhaXQgdGhpcy5iaXRnby5wb3N0KHRoaXMudXJsICsgJy9hZGRyZXNzJykucmVzdWx0KCk7XG4gICAgcmV0dXJuIGRlY29kZU9yRWxzZShDcmVhdGVEZXBvc2l0QWRkcmVzc1Jlc3BvbnNlLm5hbWUsIENyZWF0ZURlcG9zaXRBZGRyZXNzUmVzcG9uc2UsIGJvZHksIChlcnJvcnMpID0+IHtcbiAgICAgIHRocm93IG5ldyBFcnJvcihgZXJyb3IocykgcGFyc2luZyByZXNwb25zZSBib2R5OiAke2Vycm9yc31gKTtcbiAgICB9KTtcbiAgfVxuXG4gIHB1YmxpYyBhc3luYyBwYXlJbnZvaWNlKHBhcmFtczogUGF5SW52b2ljZVBhcmFtcyk6IFByb21pc2U8UGF5SW52b2ljZVJlc3BvbnNlPiB7XG4gICAgY29uc3QgYm9keSA9IGF3YWl0IHRoaXMuYml0Z29cbiAgICAgIC5wb3N0KHRoaXMudXJsICsgJy9wYXltZW50JylcbiAgICAgIC5zZW5kKHBhcmFtcylcbiAgICAgIC5yZXN1bHQoKTtcblxuICAgIHJldHVybiBkZWNvZGVPckVsc2UoUGF5SW52b2ljZVJlc3BvbnNlLm5hbWUsIFBheUludm9pY2VSZXNwb25zZSwgYm9keSwgKGVycm9ycykgPT4ge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKGBlcnJvcihzKSBwYXJzaW5nIHJlc3BvbnNlIGJvZHk6ICR7ZXJyb3JzfWApO1xuICAgIH0pO1xuICB9XG5cbiAgcHVibGljIGFzeW5jIGdldEJhbGFuY2UoKTogUHJvbWlzZTxHZXRCYWxhbmNlUmVzcG9uc2U+IHtcbiAgICBjb25zdCBib2R5ID0gYXdhaXQgdGhpcy5iaXRnby5nZXQodGhpcy51cmwgKyAnL2JhbGFuY2UnKS5yZXN1bHQoKTtcbiAgICByZXR1cm4gZGVjb2RlT3JFbHNlKEdldEJhbGFuY2VSZXNwb25zZS5uYW1lLCBHZXRCYWxhbmNlUmVzcG9uc2UsIGJvZHksIChlcnJvcnMpID0+IHtcbiAgICAgIHRocm93IG5ldyBFcnJvcihgZXJyb3IocykgcGFyc2luZyByZXNwb25zZSBib2R5OiAke2Vycm9yc31gKTtcbiAgICB9KTtcbiAgfVxuXG4gIHB1YmxpYyBhc3luYyB3aXRoZHJhdyhwYXJhbXM6IExpZ2h0bmluZ1dpdGhkcmF3YWxQYXJhbXMpOiBQcm9taXNlPFdpdGhkcmF3UmVzcG9uc2U+IHtcbiAgICBjb25zdCB7IHZhbHVlIH0gPSBwYXJhbXM7XG4gICAgbGV0IHsgZGVzdGluYXRpb24sIHNlcXVlbmNlSWQgfSA9IHBhcmFtcztcblxuICAgIGlmIChkZXN0aW5hdGlvbiA9PT0gdW5kZWZpbmVkKSB7XG4gICAgICBkZXN0aW5hdGlvbiA9IChhd2FpdCB0aGlzLndhbGxldC5jcmVhdGVBZGRyZXNzKCkpLmFkZHJlc3M7XG4gICAgfVxuXG4gICAgaWYgKHNlcXVlbmNlSWQgPT09IHVuZGVmaW5lZCkge1xuICAgICAgc2VxdWVuY2VJZCA9IHJhbmRvbUJ5dGVzKDE2KS50b1N0cmluZygnaGV4Jyk7XG4gICAgfVxuXG4gICAgY29uc3QgYm9keSA9IGF3YWl0IHRoaXMuYml0Z29cbiAgICAgIC5wb3N0KHRoaXMudXJsICsgJy93aXRoZHJhd2FsJylcbiAgICAgIC5zZW5kKHsgdmFsdWUsIGRlc3RpbmF0aW9uLCBzZXF1ZW5jZUlkIH0pXG4gICAgICAucmVzdWx0KCk7XG4gICAgcmV0dXJuIGRlY29kZU9yRWxzZShXaXRoZHJhd1Jlc3BvbnNlLm5hbWUsIFdpdGhkcmF3UmVzcG9uc2UsIGJvZHksIChlcnJvcnMpID0+IHtcbiAgICAgIHRocm93IG5ldyBFcnJvcihgZXJyb3IocykgcGFyc2luZyByZXNwb25zZSBib2R5OiAke2Vycm9yc31gKTtcbiAgICB9KTtcbiAgfVxuXG4gIHB1YmxpYyBhc3luYyBkZXBvc2l0KHBhcmFtczogTGlnaHRuaW5nRGVwb3NpdFBhcmFtcyk6IFByb21pc2U8RGVwb3NpdFJlc3BvbnNlPiB7XG4gICAgY29uc3QgeyBhbW91bnQgfSA9IHBhcmFtcztcbiAgICBjb25zdCBhZGRyZXNzID0gKGF3YWl0IHRoaXMuY3JlYXRlRGVwb3NpdEFkZHJlc3MoKSkuYWRkcmVzcztcblxuICAgIGNvbnN0IHJlcyA9IGF3YWl0IHRoaXMud2FsbGV0LnNlbmQoeyBhbW91bnQsIGFkZHJlc3MgfSk7XG5cbiAgICByZXR1cm4gZGVjb2RlT3JFbHNlKERlcG9zaXRSZXNwb25zZS5uYW1lLCBEZXBvc2l0UmVzcG9uc2UsIHJlcywgKGVycm9ycykgPT4ge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKGBlcnJvcihzKSBwYXJzaW5nIHJlc3BvbnNlIGJvZHk6ICR7ZXJyb3JzfWApO1xuICAgIH0pO1xuICB9XG5cbiAgcHVibGljIGFzeW5jIGdldEludm9pY2VzKHF1ZXJ5PzogR2V0SW52b2ljZXNRdWVyeSk6IFByb21pc2U8R2V0SW52b2ljZXNSZXNwb25zZT4ge1xuICAgIGNvbnN0IHF1ZXJ5UGFyYW1zID0ge1xuICAgICAgc3RhdHVzOiBxdWVyeT8uc3RhdHVzLFxuICAgICAgbGltaXQ6IHF1ZXJ5Py5saW1pdCxcbiAgICAgIHN0YXJ0RGF0ZTogcXVlcnk/LnN0YXJ0RGF0ZSxcbiAgICAgIGVuZERhdGU6IHF1ZXJ5Py5lbmREYXRlLFxuICAgIH07XG5cbiAgICBjb25zdCBib2R5ID0gYXdhaXQgdGhpcy5iaXRnb1xuICAgICAgLmdldCh0aGlzLnVybCArICcvaW52b2ljZXMnKVxuICAgICAgLnF1ZXJ5KHF1ZXJ5UGFyYW1zKVxuICAgICAgLnJlc3VsdCgpO1xuICAgIHJldHVybiBkZWNvZGVPckVsc2UoR2V0SW52b2ljZXNSZXNwb25zZS5uYW1lLCBHZXRJbnZvaWNlc1Jlc3BvbnNlLCBib2R5LCAoZXJyb3JzKSA9PiB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoYGVycm9yKHMpIHBhcnNpbmcgcmVzcG9uc2UgYm9keTogJHtlcnJvcnN9YCk7XG4gICAgfSk7XG4gIH1cblxuICAvKipcbiAgICogZmV0Y2hlcyBsaWdodG5pbmcgcGF5bWVudHMgYnkgc3RhdHVzLCBsaW1pdCwgc3RhcnREYXRlIGFuZCBlbmREYXRlXG4gICAqIEBwYXJhbSBxdWVyeVxuICAgKiBAcmV0dXJuIHtHZXRQYXltZW50c1Jlc3BvbnNlfVxuICAgKi9cbiAgcHVibGljIGFzeW5jIGdldFBheW1lbnRzKHF1ZXJ5PzogR2V0UGF5bWVudHNRdWVyeSk6IFByb21pc2U8R2V0UGF5bWVudHNSZXNwb25zZT4ge1xuICAgIGNvbnN0IHF1ZXJ5UGFyYW1zOiB7IHN0YXR1cz86IHN0cmluZzsgbGltaXQ/OiBudW1iZXI7IHN0YXJ0RGF0ZT86IHN0cmluZzsgZW5kRGF0ZT86IHN0cmluZyB9ID0ge307XG4gICAgcXVlcnlQYXJhbXMuc3RhdHVzID0gcXVlcnk/LnN0YXR1cztcbiAgICBxdWVyeVBhcmFtcy5saW1pdCA9IHF1ZXJ5Py5saW1pdDtcbiAgICBxdWVyeVBhcmFtcy5zdGFydERhdGUgPSBxdWVyeT8uc3RhcnREYXRlO1xuICAgIHF1ZXJ5UGFyYW1zLmVuZERhdGUgPSBxdWVyeT8uZW5kRGF0ZTtcblxuICAgIGNvbnN0IGJvZHkgPSBhd2FpdCB0aGlzLmJpdGdvXG4gICAgICAuZ2V0KHRoaXMudXJsICsgJy9wYXltZW50cycpXG4gICAgICAucXVlcnkocXVlcnlQYXJhbXMpXG4gICAgICAucmVzdWx0KCk7XG4gICAgcmV0dXJuIGRlY29kZU9yRWxzZShHZXRQYXltZW50c1Jlc3BvbnNlLm5hbWUsIEdldFBheW1lbnRzUmVzcG9uc2UsIGJvZHksIChlcnJvcnMpID0+IHtcbiAgICAgIHRocm93IG5ldyBFcnJvcihgZXJyb3IocykgcGFyc2luZyByZXNwb25zZSBib2R5OiAke2Vycm9yc31gKTtcbiAgICB9KTtcbiAgfVxuXG4gIHB1YmxpYyBkZWNvZGVMbnVybFBheShsbnVybDogc3RyaW5nKTogUHJvbWlzZTxEZWNvZGVkTG51cmxQYXlSZXF1ZXN0PiB7XG4gICAgcmV0dXJuIGRlY29kZUxudXJsUGF5KGxudXJsKTtcbiAgfVxuXG4gIHB1YmxpYyBmZXRjaExudXJsUGF5SW52b2ljZShwYXJhbXM6IExudXJsUGF5UGFyYW1zKTogUHJvbWlzZTxzdHJpbmc+IHtcbiAgICByZXR1cm4gZmV0Y2hMbnVybFBheUludm9pY2UocGFyYW1zKTtcbiAgfVxufVxuIl19
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"lnurlCodec.d.ts","sourceRoot":"","sources":["../../../../src/bitgo/lightning/lnurlCodec.ts"],"names":[],"mappings":"AAEA,wBAAgB,WAAW,CAAC,GAAG,EAAE,MAAM,UAEtC;AAED,wBAAgB,WAAW,CAAC,KAAK,EAAE,MAAM,UAmBxC"}
|
|
@@ -1,28 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.decodeLnurl = exports.encodeLnurl = void 0;
|
|
4
|
-
const bech32_1 = require("bech32");
|
|
5
|
-
function encodeLnurl(url) {
|
|
6
|
-
return bech32_1.bech32.encode('lnurl', bech32_1.bech32.toWords(Buffer.from(url)));
|
|
7
|
-
}
|
|
8
|
-
exports.encodeLnurl = encodeLnurl;
|
|
9
|
-
function decodeLnurl(lnurl) {
|
|
10
|
-
const splittedLnurl = lnurl.split(':');
|
|
11
|
-
let parsedLnurl;
|
|
12
|
-
if (splittedLnurl.length === 2) {
|
|
13
|
-
if (splittedLnurl[0] !== 'lightning') {
|
|
14
|
-
throw new Error('invalid lnurl');
|
|
15
|
-
}
|
|
16
|
-
parsedLnurl = splittedLnurl[1];
|
|
17
|
-
}
|
|
18
|
-
else {
|
|
19
|
-
parsedLnurl = splittedLnurl[0];
|
|
20
|
-
}
|
|
21
|
-
const { prefix, words } = bech32_1.bech32.decode(parsedLnurl, 2000);
|
|
22
|
-
if (prefix !== 'lnurl') {
|
|
23
|
-
throw new Error('invalid lnurl');
|
|
24
|
-
}
|
|
25
|
-
return Buffer.from(bech32_1.bech32.fromWords(words)).toString();
|
|
26
|
-
}
|
|
27
|
-
exports.decodeLnurl = decodeLnurl;
|
|
28
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibG51cmxDb2RlYy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9iaXRnby9saWdodG5pbmcvbG51cmxDb2RlYy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFBQSxtQ0FBZ0M7QUFFaEMsU0FBZ0IsV0FBVyxDQUFDLEdBQVc7SUFDckMsT0FBTyxlQUFNLENBQUMsTUFBTSxDQUFDLE9BQU8sRUFBRSxlQUFNLENBQUMsT0FBTyxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDO0FBQ2xFLENBQUM7QUFGRCxrQ0FFQztBQUVELFNBQWdCLFdBQVcsQ0FBQyxLQUFhO0lBQ3ZDLE1BQU0sYUFBYSxHQUFHLEtBQUssQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLENBQUM7SUFFdkMsSUFBSSxXQUFtQixDQUFDO0lBQ3hCLElBQUksYUFBYSxDQUFDLE1BQU0sS0FBSyxDQUFDLEVBQUU7UUFDOUIsSUFBSSxhQUFhLENBQUMsQ0FBQyxDQUFDLEtBQUssV0FBVyxFQUFFO1lBQ3BDLE1BQU0sSUFBSSxLQUFLLENBQUMsZUFBZSxDQUFDLENBQUM7U0FDbEM7UUFDRCxXQUFXLEdBQUcsYUFBYSxDQUFDLENBQUMsQ0FBQyxDQUFDO0tBQ2hDO1NBQU07UUFDTCxXQUFXLEdBQUcsYUFBYSxDQUFDLENBQUMsQ0FBQyxDQUFDO0tBQ2hDO0lBQ0QsTUFBTSxFQUFFLE1BQU0sRUFBRSxLQUFLLEVBQUUsR0FBRyxlQUFNLENBQUMsTUFBTSxDQUFDLFdBQVcsRUFBRSxJQUFJLENBQUMsQ0FBQztJQUUzRCxJQUFJLE1BQU0sS0FBSyxPQUFPLEVBQUU7UUFDdEIsTUFBTSxJQUFJLEtBQUssQ0FBQyxlQUFlLENBQUMsQ0FBQztLQUNsQztJQUVELE9BQU8sTUFBTSxDQUFDLElBQUksQ0FBQyxlQUFNLENBQUMsU0FBUyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsUUFBUSxFQUFFLENBQUM7QUFDekQsQ0FBQztBQW5CRCxrQ0FtQkMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBiZWNoMzIgfSBmcm9tICdiZWNoMzInO1xuXG5leHBvcnQgZnVuY3Rpb24gZW5jb2RlTG51cmwodXJsOiBzdHJpbmcpIHtcbiAgcmV0dXJuIGJlY2gzMi5lbmNvZGUoJ2xudXJsJywgYmVjaDMyLnRvV29yZHMoQnVmZmVyLmZyb20odXJsKSkpO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gZGVjb2RlTG51cmwobG51cmw6IHN0cmluZykge1xuICBjb25zdCBzcGxpdHRlZExudXJsID0gbG51cmwuc3BsaXQoJzonKTtcblxuICBsZXQgcGFyc2VkTG51cmw6IHN0cmluZztcbiAgaWYgKHNwbGl0dGVkTG51cmwubGVuZ3RoID09PSAyKSB7XG4gICAgaWYgKHNwbGl0dGVkTG51cmxbMF0gIT09ICdsaWdodG5pbmcnKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoJ2ludmFsaWQgbG51cmwnKTtcbiAgICB9XG4gICAgcGFyc2VkTG51cmwgPSBzcGxpdHRlZExudXJsWzFdO1xuICB9IGVsc2Uge1xuICAgIHBhcnNlZExudXJsID0gc3BsaXR0ZWRMbnVybFswXTtcbiAgfVxuICBjb25zdCB7IHByZWZpeCwgd29yZHMgfSA9IGJlY2gzMi5kZWNvZGUocGFyc2VkTG51cmwsIDIwMDApO1xuXG4gIGlmIChwcmVmaXggIT09ICdsbnVybCcpIHtcbiAgICB0aHJvdyBuZXcgRXJyb3IoJ2ludmFsaWQgbG51cmwnKTtcbiAgfVxuXG4gIHJldHVybiBCdWZmZXIuZnJvbShiZWNoMzIuZnJvbVdvcmRzKHdvcmRzKSkudG9TdHJpbmcoKTtcbn1cbiJdfQ==
|
|
File without changes
|
|
File without changes
|