mainnet-js 0.4.28 → 0.4.32
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/dist/index.html +1 -1
- package/dist/main/constant.d.ts +1 -0
- package/dist/main/constant.js +17 -1
- package/dist/main/constant.js.map +1 -1
- package/dist/main/util/getAddrsByXpubKey.d.ts +22 -0
- package/dist/main/util/getAddrsByXpubKey.js +79 -0
- package/dist/main/util/getAddrsByXpubKey.js.map +1 -0
- package/dist/main/util/getXPubKey.d.ts +1 -0
- package/dist/main/util/getXPubKey.js +26 -0
- package/dist/main/util/getXPubKey.js.map +1 -0
- package/dist/main/util/index.d.ts +5 -3
- package/dist/main/util/index.js +13 -6
- package/dist/main/util/index.js.map +1 -1
- package/dist/main/wallet/Base.d.ts +3 -1
- package/dist/main/wallet/Base.js +3 -1
- package/dist/main/wallet/Base.js.map +1 -1
- package/dist/main/wallet/Wif.d.ts +33 -10
- package/dist/main/wallet/Wif.js +188 -77
- package/dist/main/wallet/Wif.js.map +1 -1
- package/dist/main/wallet/interface.d.ts +5 -0
- package/dist/main/wallet/model.d.ts +16 -0
- package/dist/main/wallet/model.js +18 -1
- package/dist/main/wallet/model.js.map +1 -1
- package/dist/{mainnet-0.4.28.js → mainnet-0.4.32.js} +2 -2
- package/dist/{mainnet-0.4.28.js.LICENSE.txt → mainnet-0.4.32.js.LICENSE.txt} +0 -0
- package/dist/module/constant.d.ts +1 -0
- package/dist/module/constant.js +16 -0
- package/dist/module/constant.js.map +1 -1
- package/dist/module/util/getAddrsByXpubKey.d.ts +22 -0
- package/dist/module/util/getAddrsByXpubKey.js +71 -0
- package/dist/module/util/getAddrsByXpubKey.js.map +1 -0
- package/dist/module/util/getXPubKey.d.ts +1 -0
- package/dist/module/util/getXPubKey.js +22 -0
- package/dist/module/util/getXPubKey.js.map +1 -0
- package/dist/module/util/index.d.ts +5 -3
- package/dist/module/util/index.js +5 -3
- package/dist/module/util/index.js.map +1 -1
- package/dist/module/wallet/Base.d.ts +3 -1
- package/dist/module/wallet/Base.js +3 -1
- package/dist/module/wallet/Base.js.map +1 -1
- package/dist/module/wallet/Wif.d.ts +33 -10
- package/dist/module/wallet/Wif.js +191 -80
- package/dist/module/wallet/Wif.js.map +1 -1
- package/dist/module/wallet/interface.d.ts +5 -0
- package/dist/module/wallet/model.d.ts +16 -0
- package/dist/module/wallet/model.js +16 -0
- package/dist/module/wallet/model.js.map +1 -1
- package/dist/tsconfig.browser.tsbuildinfo +1 -1
- package/dist/tsconfig.tsbuildinfo +1 -1
- package/package.json +1 -1
- package/src/constant.ts +17 -0
- package/src/util/getAddrsByXpubKey.test.ts +115 -0
- package/src/util/getAddrsByXpubKey.ts +98 -0
- package/src/util/getXPubKey.ts +36 -0
- package/src/util/index.ts +10 -3
- package/src/wallet/Base.ts +4 -1
- package/src/wallet/Wif.test.ts +215 -2
- package/src/wallet/Wif.ts +284 -130
- package/src/wallet/createWallet.test.ts +2 -0
- package/src/wallet/interface.ts +6 -1
- package/src/wallet/model.ts +22 -0
|
File without changes
|
package/dist/module/constant.js
CHANGED
|
@@ -5,4 +5,20 @@ export const DUST_UTXO_THRESHOLD = 546;
|
|
|
5
5
|
export const MEMPOOL_CHAIN_LIMIT = 50;
|
|
6
6
|
// time in milliseconds to cache the usd exchange rate
|
|
7
7
|
export const EXCHANGE_RATE_TTL = 250000;
|
|
8
|
+
// list of common derivation paths
|
|
9
|
+
// a la: https://github.com/Electron-Cash/Electron-Cash/blob/1de24c509992cfebc22217a2a77c862c2b02bc54/electroncash_gui/qt/installwizard.py#L624
|
|
10
|
+
export const DERIVATION_PATHS = [
|
|
11
|
+
"m/0",
|
|
12
|
+
"m/0'",
|
|
13
|
+
"m/0'/0",
|
|
14
|
+
"m/0'/0'",
|
|
15
|
+
"m/0'/0'/0'",
|
|
16
|
+
"m/44'/0'/0'",
|
|
17
|
+
"m/44'/0'/0'/0",
|
|
18
|
+
"m/44'/145'/0'",
|
|
19
|
+
"m/44'/145'/0'/0",
|
|
20
|
+
"m/44'/245'/0",
|
|
21
|
+
"m/44'/245'/0'",
|
|
22
|
+
"m/44'/245'/0'/0",
|
|
23
|
+
];
|
|
8
24
|
//# sourceMappingURL=constant.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"constant.js","sourceRoot":"","sources":["../../src/constant.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,SAAS,GAAG,GAAG,CAAC;AAE7B,uDAAuD;AACvD,MAAM,CAAC,MAAM,mBAAmB,GAAG,GAAG,CAAC;AAEvC,2BAA2B;AAC3B,MAAM,CAAC,MAAM,mBAAmB,GAAG,EAAE,CAAC;AAEtC,sDAAsD;AACtD,MAAM,CAAC,MAAM,iBAAiB,GAAG,MAAM,CAAC"}
|
|
1
|
+
{"version":3,"file":"constant.js","sourceRoot":"","sources":["../../src/constant.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,SAAS,GAAG,GAAG,CAAC;AAE7B,uDAAuD;AACvD,MAAM,CAAC,MAAM,mBAAmB,GAAG,GAAG,CAAC;AAEvC,2BAA2B;AAC3B,MAAM,CAAC,MAAM,mBAAmB,GAAG,EAAE,CAAC;AAEtC,sDAAsD;AACtD,MAAM,CAAC,MAAM,iBAAiB,GAAG,MAAM,CAAC;AAExC,kCAAkC;AAClC,+IAA+I;AAC/I,MAAM,CAAC,MAAM,gBAAgB,GAAG;IAC9B,KAAK;IACL,MAAM;IACN,QAAQ;IACR,SAAS;IACT,YAAY;IACZ,aAAa;IACb,eAAe;IACf,eAAe;IACf,iBAAiB;IACjB,cAAc;IACd,eAAe;IACf,iBAAiB;CAClB,CAAC"}
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
import { HdKeyNetwork } from "@bitauth/libauth";
|
|
2
|
+
export declare function getAddrsByXpubKey(xpub: string, path: string, count: number): Promise<[unknown, unknown, unknown, unknown, unknown, unknown, unknown, unknown, unknown, unknown]>;
|
|
3
|
+
export declare function getAddrsByXpubKeyObject(obj: any): Promise<[unknown, unknown, unknown, unknown, unknown, unknown, unknown, unknown, unknown, unknown]>;
|
|
4
|
+
export declare function derivePublicNodeCashaddr(xpub: any, index: number, path?: string): Promise<any>;
|
|
5
|
+
export declare function getXpubKeyInfo(hdPublicKey: any): Promise<{
|
|
6
|
+
version: HdKeyNetwork;
|
|
7
|
+
depth: number;
|
|
8
|
+
parentFingerprint: string;
|
|
9
|
+
childNumber: number;
|
|
10
|
+
chain: string;
|
|
11
|
+
data: string;
|
|
12
|
+
fingerprint: string;
|
|
13
|
+
}>;
|
|
14
|
+
export declare function getXpubKeyInfoObject(obj: any): Promise<{
|
|
15
|
+
version: HdKeyNetwork;
|
|
16
|
+
depth: number;
|
|
17
|
+
parentFingerprint: string;
|
|
18
|
+
childNumber: number;
|
|
19
|
+
chain: string;
|
|
20
|
+
data: string;
|
|
21
|
+
fingerprint: string;
|
|
22
|
+
}>;
|
|
@@ -0,0 +1,71 @@
|
|
|
1
|
+
import { deriveHdPublicNodeChild, decodeHdPublicKey, encodeCashAddress, instantiateBIP32Crypto, deriveHdPath, binToHex, } from "@bitauth/libauth";
|
|
2
|
+
import { hash160 } from "./hash160";
|
|
3
|
+
export async function getAddrsByXpubKey(xpub, path, count) {
|
|
4
|
+
let pathComponents = path.split("/");
|
|
5
|
+
let rootStr = pathComponents.shift();
|
|
6
|
+
let root;
|
|
7
|
+
if (rootStr === "M" || rootStr === "m") {
|
|
8
|
+
rootStr = pathComponents.shift();
|
|
9
|
+
}
|
|
10
|
+
root = parseInt(rootStr);
|
|
11
|
+
let result = [];
|
|
12
|
+
const start = parseInt(pathComponents.pop());
|
|
13
|
+
const end = start + count;
|
|
14
|
+
for (let curr = start; curr < end; curr++) {
|
|
15
|
+
let childPath = ["M", root, ...pathComponents, curr].join("/");
|
|
16
|
+
result.push(derivePublicNodeCashaddr(xpub, root, childPath));
|
|
17
|
+
}
|
|
18
|
+
return await Promise.all(result).then((result) => {
|
|
19
|
+
return result;
|
|
20
|
+
});
|
|
21
|
+
}
|
|
22
|
+
export async function getAddrsByXpubKeyObject(obj) {
|
|
23
|
+
return await getAddrsByXpubKey(obj.xpubkey, obj.path, obj.count);
|
|
24
|
+
}
|
|
25
|
+
export async function derivePublicNodeCashaddr(xpub, index, path) {
|
|
26
|
+
const crypto = await instantiateBIP32Crypto();
|
|
27
|
+
const publicParent = await decodeHdPublicKey(crypto, xpub);
|
|
28
|
+
if (typeof publicParent === "string") {
|
|
29
|
+
throw new Error(publicParent);
|
|
30
|
+
}
|
|
31
|
+
let prefix = publicParent.network === "mainnet" ? "bitcoincash" : "bchtest";
|
|
32
|
+
let node = await deriveHdPublicNodeChild(crypto, publicParent.node, index);
|
|
33
|
+
if (typeof node === "string") {
|
|
34
|
+
throw new Error(node);
|
|
35
|
+
}
|
|
36
|
+
let cashaddr;
|
|
37
|
+
if (typeof path === "string") {
|
|
38
|
+
if (path[0] !== "M") {
|
|
39
|
+
throw Error("use M for public path derivation");
|
|
40
|
+
}
|
|
41
|
+
let childNode = deriveHdPath(crypto, publicParent.node, path);
|
|
42
|
+
if (typeof childNode === "string") {
|
|
43
|
+
throw new Error(childNode);
|
|
44
|
+
}
|
|
45
|
+
else {
|
|
46
|
+
let childPkh = await hash160(childNode.publicKey);
|
|
47
|
+
cashaddr = encodeCashAddress(prefix, 0, childPkh);
|
|
48
|
+
}
|
|
49
|
+
}
|
|
50
|
+
return cashaddr;
|
|
51
|
+
}
|
|
52
|
+
export async function getXpubKeyInfo(hdPublicKey) {
|
|
53
|
+
const crypto = await instantiateBIP32Crypto();
|
|
54
|
+
let node = decodeHdPublicKey(crypto, hdPublicKey);
|
|
55
|
+
if (typeof node === "string") {
|
|
56
|
+
throw new Error(node);
|
|
57
|
+
}
|
|
58
|
+
return {
|
|
59
|
+
version: node.network,
|
|
60
|
+
depth: node.node.depth,
|
|
61
|
+
parentFingerprint: binToHex(node.node.parentFingerprint),
|
|
62
|
+
childNumber: node.node.childIndex,
|
|
63
|
+
chain: binToHex(node.node.chainCode),
|
|
64
|
+
data: binToHex(node.node.publicKey),
|
|
65
|
+
fingerprint: binToHex((await hash160(node.node.publicKey)).slice(0, 4)),
|
|
66
|
+
};
|
|
67
|
+
}
|
|
68
|
+
export async function getXpubKeyInfoObject(obj) {
|
|
69
|
+
return await getXpubKeyInfo(obj.xpubkey);
|
|
70
|
+
}
|
|
71
|
+
//# sourceMappingURL=getAddrsByXpubKey.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"getAddrsByXpubKey.js","sourceRoot":"","sources":["../../../src/util/getAddrsByXpubKey.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare function getXPubKey(seed: Uint8Array | string, derivationPath: string, network: string): Promise<string>;
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
import { deriveHdPrivateNodeFromSeed, deriveHdPath, deriveHdPublicNode, encodeHdPublicKey, instantiateBIP32Crypto, hexToBin, } from "@bitauth/libauth";
|
|
2
|
+
export async function getXPubKey(seed, derivationPath, network) {
|
|
3
|
+
if (typeof seed === "string") {
|
|
4
|
+
seed = hexToBin(seed);
|
|
5
|
+
}
|
|
6
|
+
const crypto = await instantiateBIP32Crypto();
|
|
7
|
+
let hdNode = deriveHdPrivateNodeFromSeed(crypto, seed);
|
|
8
|
+
if (!hdNode.valid) {
|
|
9
|
+
throw Error("Invalid private key derived from mnemonic seed");
|
|
10
|
+
}
|
|
11
|
+
let node = deriveHdPath(crypto, hdNode, derivationPath);
|
|
12
|
+
if (typeof node === "string") {
|
|
13
|
+
throw node;
|
|
14
|
+
}
|
|
15
|
+
let parentPublicNode = deriveHdPublicNode(crypto, node);
|
|
16
|
+
let xPubKey = encodeHdPublicKey(crypto, {
|
|
17
|
+
network: network,
|
|
18
|
+
node: parentPublicNode,
|
|
19
|
+
});
|
|
20
|
+
return xPubKey;
|
|
21
|
+
}
|
|
22
|
+
//# sourceMappingURL=getXPubKey.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"getXPubKey.js","sourceRoot":"","sources":["../../../src/util/getXPubKey.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,2BAA2B,EAC3B,YAAY,EACZ,kBAAkB,EAClB,iBAAiB,EAEjB,sBAAsB,EACtB,QAAQ,GACT,MAAM,kBAAkB,CAAC;AAE1B,MAAM,CAAC,KAAK,UAAU,UAAU,CAC9B,IAAyB,EACzB,cAAsB,EACtB,OAAe;IAEf,IAAI,OAAO,IAAI,KAAK,QAAQ,EAAE;QAC5B,IAAI,GAAG,QAAQ,CAAC,IAAI,CAAC,CAAC;KACvB;IACD,MAAM,MAAM,GAAG,MAAM,sBAAsB,EAAE,CAAC;IAC9C,IAAI,MAAM,GAAG,2BAA2B,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;IACvD,IAAI,CAAC,MAAM,CAAC,KAAK,EAAE;QACjB,MAAM,KAAK,CAAC,gDAAgD,CAAC,CAAC;KAC/D;IAED,IAAI,IAAI,GAAG,YAAY,CAAC,MAAM,EAAE,MAAM,EAAE,cAAc,CAAC,CAAC;IACxD,IAAI,OAAO,IAAI,KAAK,QAAQ,EAAE;QAC5B,MAAM,IAAI,CAAC;KACZ;IACD,IAAI,gBAAgB,GAAG,kBAAkB,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;IAExD,IAAI,OAAO,GAAG,iBAAiB,CAAC,MAAM,EAAE;QACtC,OAAO,EAAE,OAAuB;QAChC,IAAI,EAAE,gBAAgB;KACvB,CAAC,CAAC;IACH,OAAO,OAAO,CAAC;AACjB,CAAC"}
|
|
@@ -1,16 +1,18 @@
|
|
|
1
1
|
export { amountInSatoshi } from "./amountInSatoshi";
|
|
2
2
|
export { asSendRequestObject } from "./asSendRequestObject";
|
|
3
|
-
export {
|
|
3
|
+
export { atob, btoa } from "./base64";
|
|
4
4
|
export { convert, convertObject } from "./convert";
|
|
5
5
|
export { delay } from "./delay";
|
|
6
|
+
export { derivedNetwork } from "./deriveNetwork";
|
|
7
|
+
export { derivePublicKeyHash } from "./derivePublicKeyHash";
|
|
8
|
+
export { getAddrsByXpubKey, getAddrsByXpubKeyObject, getXpubKeyInfo, getXpubKeyInfoObject, } from "../util/getAddrsByXpubKey";
|
|
6
9
|
export { getRuntimePlatform, RuntimePlatform } from "./getRuntimePlatform";
|
|
7
10
|
export { getUsdRate } from "./getUsdRate";
|
|
8
11
|
export { ExchangeRate } from "../rate/ExchangeRate";
|
|
9
|
-
export { derivedNetwork } from "./deriveNetwork";
|
|
10
|
-
export { derivePublicKeyHash } from "./derivePublicKeyHash";
|
|
11
12
|
export { sanitizeAddress } from "./sanitizeAddress";
|
|
12
13
|
export { sanitizeUnit } from "./sanitizeUnit";
|
|
13
14
|
export { getRandomInt } from "./randomInt";
|
|
15
|
+
export { getXPubKey } from "../util/getXPubKey";
|
|
14
16
|
import * as randomValues from "./randomValues";
|
|
15
17
|
export { randomValues };
|
|
16
18
|
export { sumUtxoValue } from "./sumUtxoValue";
|
|
@@ -1,16 +1,18 @@
|
|
|
1
1
|
export { amountInSatoshi } from "./amountInSatoshi";
|
|
2
2
|
export { asSendRequestObject } from "./asSendRequestObject";
|
|
3
|
-
export {
|
|
3
|
+
export { atob, btoa } from "./base64";
|
|
4
4
|
export { convert, convertObject } from "./convert";
|
|
5
5
|
export { delay } from "./delay";
|
|
6
|
+
export { derivedNetwork } from "./deriveNetwork";
|
|
7
|
+
export { derivePublicKeyHash } from "./derivePublicKeyHash";
|
|
8
|
+
export { getAddrsByXpubKey, getAddrsByXpubKeyObject, getXpubKeyInfo, getXpubKeyInfoObject, } from "../util/getAddrsByXpubKey";
|
|
6
9
|
export { getRuntimePlatform, RuntimePlatform } from "./getRuntimePlatform";
|
|
7
10
|
export { getUsdRate } from "./getUsdRate";
|
|
8
11
|
export { ExchangeRate } from "../rate/ExchangeRate";
|
|
9
|
-
export { derivedNetwork } from "./deriveNetwork";
|
|
10
|
-
export { derivePublicKeyHash } from "./derivePublicKeyHash";
|
|
11
12
|
export { sanitizeAddress } from "./sanitizeAddress";
|
|
12
13
|
export { sanitizeUnit } from "./sanitizeUnit";
|
|
13
14
|
export { getRandomInt } from "./randomInt";
|
|
15
|
+
export { getXPubKey } from "../util/getXPubKey";
|
|
14
16
|
import * as randomValues from "./randomValues";
|
|
15
17
|
export { randomValues };
|
|
16
18
|
export { sumUtxoValue } from "./sumUtxoValue";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/util/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AACpD,OAAO,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AAC5D,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,MAAM,UAAU,CAAC;AACtC,OAAO,EAAE,OAAO,EAAE,aAAa,EAAE,MAAM,WAAW,CAAC;AACnD,OAAO,EAAE,KAAK,EAAE,MAAM,SAAS,CAAC;AAChC,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/util/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AACpD,OAAO,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AAC5D,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,MAAM,UAAU,CAAC;AACtC,OAAO,EAAE,OAAO,EAAE,aAAa,EAAE,MAAM,WAAW,CAAC;AACnD,OAAO,EAAE,KAAK,EAAE,MAAM,SAAS,CAAC;AAChC,OAAO,EAAE,cAAc,EAAE,MAAM,iBAAiB,CAAC;AACjD,OAAO,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AAC5D,OAAO,EACL,iBAAiB,EACjB,uBAAuB,EACvB,cAAc,EACd,oBAAoB,GACrB,MAAM,2BAA2B,CAAC;AACnC,OAAO,EAAE,kBAAkB,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AAC3E,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAC1C,OAAO,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AACpD,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AACpD,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAC9C,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAC3C,OAAO,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAC;AAChD,OAAO,KAAK,YAAY,MAAM,gBAAgB,CAAC;AAC/C,OAAO,EAAE,YAAY,EAAE,CAAC;AACxB,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAC9C,OAAO,EACL,eAAe,EACf,kBAAkB,EAClB,0BAA0B,GAC3B,MAAM,4BAA4B,CAAC"}
|
|
@@ -10,6 +10,8 @@ import { WalletTypeEnum } from "./enum";
|
|
|
10
10
|
export declare class BaseWallet implements WalletI {
|
|
11
11
|
provider?: any;
|
|
12
12
|
derivationPath: string;
|
|
13
|
+
parentDerivationPath: string;
|
|
14
|
+
parentXPubKey?: string;
|
|
13
15
|
mnemonic?: string;
|
|
14
16
|
address?: string;
|
|
15
17
|
privateKey?: any;
|
|
@@ -104,7 +106,7 @@ export declare class BaseWallet implements WalletI {
|
|
|
104
106
|
/**
|
|
105
107
|
* replaceNamed - replace (recover) named wallet with a new walletId
|
|
106
108
|
*
|
|
107
|
-
* If wallet with a provided name does not exist yet, it will be
|
|
109
|
+
* If wallet with a provided name does not exist yet, it will be created with a `walletId` supplied
|
|
108
110
|
* If wallet exists it will be overwritten without exception
|
|
109
111
|
*
|
|
110
112
|
* @param name user friendly wallet alias
|
|
@@ -19,6 +19,7 @@ export class BaseWallet {
|
|
|
19
19
|
*/
|
|
20
20
|
constructor(name = "", network = NetworkType.Mainnet, walletType = WalletTypeEnum.Seed) {
|
|
21
21
|
this.derivationPath = "m/44'/0'/0'/0/0";
|
|
22
|
+
this.parentDerivationPath = "m/44'/0'/0'";
|
|
22
23
|
this.name = name;
|
|
23
24
|
this.network = network;
|
|
24
25
|
this.walletType = walletType;
|
|
@@ -66,6 +67,7 @@ export class BaseWallet {
|
|
|
66
67
|
return {
|
|
67
68
|
seed: this.mnemonic,
|
|
68
69
|
derivationPath: this.derivationPath,
|
|
70
|
+
parentDerivationPath: this.parentDerivationPath,
|
|
69
71
|
};
|
|
70
72
|
}
|
|
71
73
|
/**
|
|
@@ -133,7 +135,7 @@ export class BaseWallet {
|
|
|
133
135
|
/**
|
|
134
136
|
* replaceNamed - replace (recover) named wallet with a new walletId
|
|
135
137
|
*
|
|
136
|
-
* If wallet with a provided name does not exist yet, it will be
|
|
138
|
+
* If wallet with a provided name does not exist yet, it will be created with a `walletId` supplied
|
|
137
139
|
* If wallet exists it will be overwritten without exception
|
|
138
140
|
*
|
|
139
141
|
* @param name user friendly wallet alias
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Base.js","sourceRoot":"","sources":["../../../src/wallet/Base.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,MAAM,YAAY,CAAC;AAEhD,OAAO,EAAE,WAAW,EAAE,MAAM,SAAS,CAAC;AAEtC,OAAO,EAAE,kBAAkB,EAAE,MAAM,4BAA4B,CAAC;AAChE,OAAO,EAAE,SAAS,EAAE,MAAM,UAAU,CAAC;AAErC,OAAO,EAAE,cAAc,EAAE,MAAM,QAAQ,CAAC;AAExC;;;GAGG;AACH,MAAM,OAAO,UAAU;
|
|
1
|
+
{"version":3,"file":"Base.js","sourceRoot":"","sources":["../../../src/wallet/Base.ts"],"names":[],"mappings":"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"}
|
|
@@ -18,6 +18,8 @@ import { SignedMessageI } from "../message";
|
|
|
18
18
|
export declare class Wallet extends BaseWallet {
|
|
19
19
|
cashaddr?: string;
|
|
20
20
|
derivationPath: string;
|
|
21
|
+
parentDerivationPath: string;
|
|
22
|
+
parentXPubKey?: string;
|
|
21
23
|
privateKey?: Uint8Array;
|
|
22
24
|
publicKeyCompressed?: Uint8Array;
|
|
23
25
|
privateKeyWif?: string;
|
|
@@ -26,6 +28,7 @@ export declare class Wallet extends BaseWallet {
|
|
|
26
28
|
networkPrefix: CashAddressNetworkPrefix;
|
|
27
29
|
_slp?: Slp;
|
|
28
30
|
_slpAware: boolean;
|
|
31
|
+
_slpSemiAware: boolean;
|
|
29
32
|
_util?: Util;
|
|
30
33
|
static signedMessage: SignedMessageI;
|
|
31
34
|
get slp(): Slp;
|
|
@@ -33,6 +36,7 @@ export declare class Wallet extends BaseWallet {
|
|
|
33
36
|
get util(): Util;
|
|
34
37
|
static get util(): typeof Util;
|
|
35
38
|
slpAware(value?: boolean): Wallet;
|
|
39
|
+
slpSemiAware(value?: boolean): Wallet;
|
|
36
40
|
getNetworkProvider(network?: Network): import("../network/NetworkProvider").default;
|
|
37
41
|
/**
|
|
38
42
|
* explorerUrl Web url to a transaction on a block explorer
|
|
@@ -80,7 +84,9 @@ export declare class Wallet extends BaseWallet {
|
|
|
80
84
|
private _generateWif;
|
|
81
85
|
private _generateMnemonic;
|
|
82
86
|
protected fromId: (walletId: string) => Promise<this>;
|
|
87
|
+
getXPubKeys(paths?: any): Promise<any[]>;
|
|
83
88
|
protected fromSeed(mnemonic: string, derivationPath?: string): Promise<this>;
|
|
89
|
+
deriveHdPaths(hdPaths: string[]): Promise<any[]>;
|
|
84
90
|
protected watchOnly(address: string): Promise<this>;
|
|
85
91
|
protected fromWIF(secret: string): Promise<this>;
|
|
86
92
|
protected newRandom(name: string, dbName?: string): Promise<this>;
|
|
@@ -107,15 +113,41 @@ export declare class Wallet extends BaseWallet {
|
|
|
107
113
|
}): Promise<BalanceResponse>;
|
|
108
114
|
/**
|
|
109
115
|
* send Send some amount to an address
|
|
116
|
+
* this function processes the send requests, encodes the transaction, sends it to the network
|
|
117
|
+
* @returns (depending on the options parameter) the transaction id, new address balance and a link to the transaction on the blockchain explorer
|
|
110
118
|
*
|
|
111
119
|
* This is a first class function with REST analog, maintainers should strive to keep backward-compatibility
|
|
112
120
|
*
|
|
113
121
|
*/
|
|
114
122
|
send(requests: SendRequest | OpReturnData | Array<SendRequest | OpReturnData> | SendRequestArray[], options?: SendRequestOptionsI): Promise<SendResponse>;
|
|
123
|
+
/**
|
|
124
|
+
* sendMax Send all available funds to a destination cash address
|
|
125
|
+
*
|
|
126
|
+
* @param {string} cashaddr destination cash address
|
|
127
|
+
* @param {SendRequestOptionsI} options Options of the send requests
|
|
128
|
+
*
|
|
129
|
+
* @returns (depending on the options parameter) the transaction id, new address balance and a link to the transaction on the blockchain explorer
|
|
130
|
+
*/
|
|
115
131
|
sendMax(cashaddr: string, options?: SendRequestOptionsI): Promise<SendResponse>;
|
|
132
|
+
/**
|
|
133
|
+
* sendMaxRaw (internal) Send all available funds to a destination cash address
|
|
134
|
+
*
|
|
135
|
+
* @param {string} cashaddr destination cash address
|
|
136
|
+
* @param {SendRequestOptionsI} options Options of the send requests
|
|
137
|
+
*
|
|
138
|
+
* @returns the transaction id sent to the network
|
|
139
|
+
*/
|
|
116
140
|
private sendMaxRaw;
|
|
141
|
+
/**
|
|
142
|
+
* encodeTransaction given a list of sendRequests, options and estimate fees.
|
|
143
|
+
* @param {SendRequest[]} sendRequests SendRequests
|
|
144
|
+
* @param {boolean} discardChange=false
|
|
145
|
+
* @param {SendRequestOptionsI} options Options of the send requests
|
|
146
|
+
*/
|
|
147
|
+
encodeTransaction(requests: SendRequest | OpReturnData | Array<SendRequest | OpReturnData> | SendRequestArray[], discardChange?: boolean, options?: SendRequestOptionsI): Promise<Uint8Array>;
|
|
148
|
+
submitTransaction(transaction: Uint8Array, awaitPropagation?: boolean): Promise<string>;
|
|
117
149
|
getHistory(): Promise<TxI[]>;
|
|
118
|
-
getLastTransaction(confirmedOnly?: boolean): Promise<ElectrumRawTransaction>;
|
|
150
|
+
getLastTransaction(confirmedOnly?: boolean): Promise<ElectrumRawTransaction | null>;
|
|
119
151
|
waitForTransaction(options?: WaitForTransactionOptions): Promise<WaitForTransactionResponse>;
|
|
120
152
|
/**
|
|
121
153
|
* watchBlocks Watch network blocks
|
|
@@ -133,15 +165,6 @@ export declare class Wallet extends BaseWallet {
|
|
|
133
165
|
*/
|
|
134
166
|
waitForBlock(height?: number): Promise<HeaderI>;
|
|
135
167
|
private deriveInfo;
|
|
136
|
-
/**
|
|
137
|
-
* _processSendRequests given a list of sendRequests, estimate fees, build the transaction and submit it.
|
|
138
|
-
* This function is an internal wrapper and may change.
|
|
139
|
-
* @param {SendRequest[]} sendRequests SendRequests
|
|
140
|
-
* @param {} discardChange=false
|
|
141
|
-
* @param {SendRequestOptionsI} options Options of the send requests
|
|
142
|
-
*/
|
|
143
|
-
private _processSendRequests;
|
|
144
|
-
private _submitTransaction;
|
|
145
168
|
sign(message: string): Promise<import("../message").SignedMessageResponseI>;
|
|
146
169
|
verify(message: string, sig: string, publicKey?: Uint8Array): Promise<import("../message").VerifyMessageResponseI>;
|
|
147
170
|
}
|