beignet 0.0.16 → 0.0.17

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.
Files changed (40) hide show
  1. package/README.md +3 -2
  2. package/dist/shapes/wallet.js +8 -0
  3. package/dist/shapes/wallet.js.map +1 -1
  4. package/dist/transaction/index.js +39 -1
  5. package/dist/transaction/index.js.map +1 -1
  6. package/dist/types/types/wallet.d.ts +2 -1
  7. package/dist/types/utils/helpers.d.ts +9 -1
  8. package/dist/types/utils/transaction.d.ts +1 -0
  9. package/dist/types/wallet.js +1 -0
  10. package/dist/types/wallet.js.map +1 -1
  11. package/dist/utils/derivation-path.js +2 -0
  12. package/dist/utils/derivation-path.js.map +1 -1
  13. package/dist/utils/helpers.js +37 -4
  14. package/dist/utils/helpers.js.map +1 -1
  15. package/dist/utils/transaction.js +16 -3
  16. package/dist/utils/transaction.js.map +1 -1
  17. package/dist/wallet/index.js +27 -35
  18. package/dist/wallet/index.js.map +1 -1
  19. package/package.json +1 -1
  20. package/src/shapes/wallet.ts +8 -0
  21. package/src/transaction/index.ts +45 -2
  22. package/src/types/wallet.ts +2 -2
  23. package/src/utils/derivation-path.ts +2 -0
  24. package/src/utils/helpers.ts +44 -4
  25. package/src/utils/transaction.ts +22 -2
  26. package/src/wallet/index.ts +29 -40
  27. package/tests/wallet.test.ts +11 -0
  28. package/example/walletData/storagetestwallet0-testnet-addressIndex.json +0 -23
  29. package/example/walletData/storagetestwallet0-testnet-addresses.json +0 -113
  30. package/example/walletData/storagetestwallet0-testnet-balance.json +0 -1
  31. package/example/walletData/storagetestwallet0-testnet-changeAddressIndex.json +0 -23
  32. package/example/walletData/storagetestwallet0-testnet-changeAddresses.json +0 -113
  33. package/example/walletData/storagetestwallet0-testnet-exchangeRates.json +0 -226
  34. package/example/walletData/storagetestwallet0-testnet-feeEstimates.json +0 -7
  35. package/example/walletData/storagetestwallet0-testnet-id.json +0 -1
  36. package/example/walletData/storagetestwallet0-testnet-lastUsedAddressIndex.json +0 -23
  37. package/example/walletData/storagetestwallet0-testnet-lastUsedChangeAddressIndex.json +0 -23
  38. package/example/walletData/storagetestwallet0-testnet-transactions.json +0 -552
  39. package/example/walletData/storagetestwallet0-testnet-unconfirmedTransactions.json +0 -552
  40. package/example/walletData/storagetestwallet0-testnet-utxos.json +0 -24
package/README.md CHANGED
@@ -113,7 +113,7 @@ const servers: TServer = {
113
113
  const network = ENetworks.mainnet;
114
114
 
115
115
  // Use a specific address type. (Defaults to EAddressType.p2wpkh)
116
- const addressType = EAddressType.p2sh;
116
+ const addressType = EAddressType.p2tr;
117
117
 
118
118
  // Subscribe to server messages (TOnMessage)
119
119
  const onMessage: TOnMessage = (id, data) => {
@@ -143,7 +143,8 @@ const createWalletRes = await Wallet.create({
143
143
  electrumOptions: { servers },
144
144
  network,
145
145
  onMessage,
146
- storage
146
+ storage,
147
+ addressType
147
148
  });
148
149
  if (createWalletRes.isErr()) return;
149
150
  const wallet = createWalletRes.value;
@@ -31,6 +31,14 @@ exports.addressTypes = {
31
31
  shortName: 'Legacy',
32
32
  description: 'Pay-to-public-key-hash',
33
33
  example: '(1x...)'
34
+ },
35
+ [types_1.EAddressType.p2tr]: {
36
+ type: types_1.EAddressType.p2tr,
37
+ path: "m/86'/0'/0'/0/0",
38
+ name: 'Taproot',
39
+ shortName: 'Taproot',
40
+ description: 'Taproot Address',
41
+ example: '(bc1px...)'
34
42
  }
35
43
  };
36
44
  exports.defaultAddressContent = {
@@ -1 +1 @@
1
- {"version":3,"file":"wallet.js","sourceRoot":"","sources":["../../src/shapes/wallet.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"wallet.js","sourceRoot":"","sources":["../../src/shapes/wallet.ts"],"names":[],"mappings":"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"}
@@ -216,7 +216,20 @@ class Transaction {
216
216
  }
217
217
  if (!keyPair)
218
218
  return (0, utils_1.err)('Unable to derive keyPair.');
219
- psbt.signInput(index, keyPair);
219
+ if ((0, utils_1.isP2trPrefix)(input.address)) {
220
+ const tapRootAddress = (0, utils_1.getTapRootAddressFromPublicKey)({
221
+ publicKey: keyPair.publicKey,
222
+ network: bitcoinjs_lib_1.networks[this._wallet.network]
223
+ });
224
+ if (tapRootAddress.isErr())
225
+ return (0, utils_1.err)(tapRootAddress.error.message);
226
+ const childNodeXOnlyPubkey = tapRootAddress.value.internalPubkey;
227
+ const tweakedChildNode = keyPair.tweak(bitcoin.crypto.taggedHash('TapTweak', childNodeXOnlyPubkey));
228
+ psbt.signInput(index, tweakedChildNode);
229
+ }
230
+ else {
231
+ psbt.signInput(index, keyPair);
232
+ }
220
233
  }
221
234
  catch (e) {
222
235
  return (0, utils_1.err)(e);
@@ -399,6 +412,31 @@ class Transaction {
399
412
  nonWitnessUtxo
400
413
  });
401
414
  }
415
+ if (type === 'p2tr') {
416
+ if (!keyPair && (input === null || input === void 0 ? void 0 : input.path)) {
417
+ const bip32Interface = await this._wallet.getBip32Interface();
418
+ if (bip32Interface.isErr())
419
+ return (0, utils_1.err)(bip32Interface.error.message);
420
+ keyPair = bip32Interface.value.derivePath(input.path);
421
+ }
422
+ if (!keyPair)
423
+ return (0, utils_1.err)('No keyPair provided for p2tr input.');
424
+ const p2trAddress = (0, utils_1.getTapRootAddressFromPublicKey)({
425
+ publicKey: keyPair.publicKey,
426
+ network
427
+ });
428
+ if (p2trAddress.isErr())
429
+ return (0, utils_1.err)(p2trAddress.error.message);
430
+ psbt.addInput({
431
+ hash: input.tx_hash,
432
+ index: input.tx_pos,
433
+ witnessUtxo: {
434
+ script: p2trAddress.value.output,
435
+ value: input.value
436
+ },
437
+ tapInternalKey: p2trAddress.value.internalPubkey
438
+ });
439
+ }
402
440
  return (0, utils_1.ok)('Success');
403
441
  }
404
442
  catch (_a) {
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/transaction/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/transaction/index.ts"],"names":[],"mappings":"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"}
@@ -30,7 +30,8 @@ export declare enum EAvailableNetworks {
30
30
  export declare enum EAddressType {
31
31
  p2wpkh = "p2wpkh",
32
32
  p2sh = "p2sh",
33
- p2pkh = "p2pkh"
33
+ p2pkh = "p2pkh",
34
+ p2tr = "p2tr"
34
35
  }
35
36
  export declare enum EPaymentType {
36
37
  sent = "sent",
@@ -28,7 +28,15 @@ export declare const getAddressFromKeyPair: ({ keyPair, addressType, network }:
28
28
  keyPair: BIP32Interface | ECPairInterface;
29
29
  addressType: EAddressType;
30
30
  network: Network;
31
- }) => IGetAddressesFromKeyPair;
31
+ }) => Result<IGetAddressesFromKeyPair>;
32
+ export declare const getTapRootAddressFromPublicKey: ({ publicKey, network }: {
33
+ publicKey: Buffer;
34
+ network: Network;
35
+ }) => Result<{
36
+ address: string;
37
+ output: Buffer;
38
+ internalPubkey: Buffer;
39
+ }>;
32
40
  export declare const getAddressesFromPrivateKey: ({ privateKey, addrTypes, network }: {
33
41
  privateKey: string;
34
42
  addrTypes?: EAddressType[] | undefined;
@@ -19,3 +19,4 @@ export declare const getByteCount: (inputs: TGetByteCountInputs, outputs: TGetBy
19
19
  export declare const removeDustOutputs: (outputs: IOutput[]) => IOutput[];
20
20
  export declare const validateTransaction: (transaction: ISendTransaction) => Result<string>;
21
21
  export declare const decodeRawTransaction: (hex: string, _network: EAvailableNetworks) => Result<TDecodeRawTx>;
22
+ export declare const isP2trPrefix: (address: string) => boolean;
@@ -16,6 +16,7 @@ var EAddressType;
16
16
  EAddressType["p2wpkh"] = "p2wpkh";
17
17
  EAddressType["p2sh"] = "p2sh";
18
18
  EAddressType["p2pkh"] = "p2pkh";
19
+ EAddressType["p2tr"] = "p2tr";
19
20
  })(EAddressType = exports.EAddressType || (exports.EAddressType = {}));
20
21
  var EPaymentType;
21
22
  (function (EPaymentType) {
@@ -1 +1 @@
1
- {"version":3,"file":"wallet.js","sourceRoot":"","sources":["../../src/types/wallet.ts"],"names":[],"mappings":";;;AAyBA,IAAY,kBAQX;AARD,WAAY,kBAAkB;IAC7B,yCAAmB,CAAA;IACnB,yCAAmB,CAAA;IACnB,gDAA0B,CAAA;IAC1B,yCAAmB,CAAA;IACnB,gDAA0B,CAAA;IAC1B,yCAAmB,CAAA;IACnB,gDAA0B,CAAA;AAC3B,CAAC,EARW,kBAAkB,GAAlB,0BAAkB,KAAlB,0BAAkB,QAQ7B;AACD,IAAY,YAMX;AAND,WAAY,YAAY;IACvB,iCAAiB,CAAA;IACjB,6BAAa,CAAA;IACb,+BAAe,CAAA;AAGhB,CAAC,EANW,YAAY,GAAZ,oBAAY,KAAZ,oBAAY,QAMvB;AAED,IAAY,YAGX;AAHD,WAAY,YAAY;IACvB,6BAAa,CAAA;IACb,qCAAqB,CAAA;AACtB,CAAC,EAHW,YAAY,GAAZ,oBAAY,KAAZ,oBAAY,QAGvB;AAsED,IAAY,UAGX;AAHD,WAAY,UAAU;IACrB,yBAAW,CAAA;IACX,2BAAa,CAAA;AACd,CAAC,EAHW,UAAU,GAAV,kBAAU,KAAV,kBAAU,QAGrB;AAyPD,IAAY,KAIX;AAJD,WAAY,KAAK;IAChB,4BAAmB,CAAA;IACnB,oBAAW,CAAA;IACX,sBAAa,CAAA;AACd,CAAC,EAJW,KAAK,GAAL,aAAK,KAAL,aAAK,QAIhB"}
1
+ {"version":3,"file":"wallet.js","sourceRoot":"","sources":["../../src/types/wallet.ts"],"names":[],"mappings":";;;AAyBA,IAAY,kBAQX;AARD,WAAY,kBAAkB;IAC7B,yCAAmB,CAAA;IACnB,yCAAmB,CAAA;IACnB,gDAA0B,CAAA;IAC1B,yCAAmB,CAAA;IACnB,gDAA0B,CAAA;IAC1B,yCAAmB,CAAA;IACnB,gDAA0B,CAAA;AAC3B,CAAC,EARW,kBAAkB,GAAlB,0BAAkB,KAAlB,0BAAkB,QAQ7B;AACD,IAAY,YAMX;AAND,WAAY,YAAY;IACvB,iCAAiB,CAAA;IACjB,6BAAa,CAAA;IACb,+BAAe,CAAA;IACf,6BAAa,CAAA;AAEd,CAAC,EANW,YAAY,GAAZ,oBAAY,KAAZ,oBAAY,QAMvB;AAED,IAAY,YAGX;AAHD,WAAY,YAAY;IACvB,6BAAa,CAAA;IACb,qCAAqB,CAAA;AACtB,CAAC,EAHW,YAAY,GAAZ,oBAAY,KAAZ,oBAAY,QAGvB;AAsED,IAAY,UAGX;AAHD,WAAY,UAAU;IACrB,yBAAW,CAAA;IACX,2BAAa,CAAA;AACd,CAAC,EAHW,UAAU,GAAV,kBAAU,KAAV,kBAAU,QAGrB;AAyPD,IAAY,KAIX;AAJD,WAAY,KAAK;IAChB,4BAAmB,CAAA;IACnB,oBAAW,CAAA;IACX,sBAAa,CAAA;AACd,CAAC,EAJW,KAAK,GAAL,aAAK,KAAL,aAAK,QAIhB"}
@@ -92,6 +92,8 @@ const getAddressTypeFromPath = (path) => {
92
92
  return (0, result_1.ok)(types_1.EAddressType.p2sh);
93
93
  case '84':
94
94
  return (0, result_1.ok)(types_1.EAddressType.p2wpkh);
95
+ case '86':
96
+ return (0, result_1.ok)(types_1.EAddressType.p2tr);
95
97
  default:
96
98
  return (0, result_1.err)('Invalid path');
97
99
  }
@@ -1 +1 @@
1
- {"version":3,"file":"derivation-path.js","sourceRoot":"","sources":["../../src/utils/derivation-path.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"derivation-path.js","sourceRoot":"","sources":["../../src/utils/derivation-path.ts"],"names":[],"mappings":";;;AAAA,oCAQkB;AAClB,sCAAyC;AACzC,qCAA2C;AAWpC,MAAM,0BAA0B,GAAG,CAAC,EAC1C,IAAI,GAAG,EAAE,EACT,OAAO,EACP,aAAa,EACb,KAAK,EACL,OAAO,EAOP,EAA8B,EAAE;IAChC,IAAI;QACH,MAAM,UAAU,GAAG,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;QAErD,IAAI,CAAC,OAAO,EAAE;YACb,OAAO,GAAG,UAAU,CAAC,CAAC,CAA0B,CAAC;SACjD;QAED,IAAI,QAAQ,GAAG,UAAU,CAAC,CAAC,CAA2B,CAAC;QACvD,IAAI,OAAO,EAAE;YACZ,QAAQ;gBACP,OAAO,CAAC,iBAAiB,EAAE,KAAK,0BAAkB,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC;SACxE;QAED,MAAM,OAAO,GAAG,UAAU,CAAC,CAAC,CAA0B,CAAC;QAEvD,IAAI,MAAM,GAAG,UAAU,CAAC,CAAC,CAAyB,CAAC;QACnD,IAAI,aAAa,KAAK,SAAS,EAAE;YAChC,MAAM,GAAG,aAAa,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC;SACnC;QAED,IAAI,CAAC,KAAK,EAAE;YACX,KAAK,GAAG,UAAU,CAAC,CAAC,CAAC,CAAC;SACtB;QAED,OAAO,IAAA,WAAE,EAAC;YACT,OAAO;YACP,QAAQ;YACR,OAAO;YACP,MAAM;YACN,KAAK;SACL,CAAC,CAAC;KACH;IAAC,OAAO,CAAC,EAAE;QACX,OAAO,IAAA,YAAG,EAAC,CAAC,CAAC,CAAC;KACd;AACF,CAAC,CAAC;AA/CW,QAAA,0BAA0B,8BA+CrC;AAWK,MAAM,0BAA0B,GAAG,CAAC,EAC1C,WAAW,GAAG,oBAAY,CAAC,MAAM,EACjC,IAAI,EACJ,OAAO,EACP,WAAW,EACX,aAAa,GAAG,KAAK,EACrB,KAAK,GAAG,GAAG,EACX,OAAO,EASP,EAAkB,EAAE;IACpB,IAAI;QACH,IAAI,CAAC,IAAI,EAAE;YAEV,MAAM,GAAG,GAAG,qBAAY,CAAC,WAAW,CAAC,CAAC,IAAI,CAAC;YAC3C,MAAM,GAAG,GAAG,IAAA,kCAA0B,EAAC,EAAE,IAAI,EAAE,GAAG,EAAE,OAAO,EAAE,CAAC,CAAC;YAC/D,IAAI,GAAG,CAAC,KAAK,EAAE,EAAE;gBAChB,OAAO,IAAA,YAAG,EAAC,GAAG,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;aAC9B;YACD,IAAI,GAAG,GAAG,CAAC,KAAK,CAAC;SACjB;QAED,IAAI,OAAO,KAAK,SAAS,EAAE;YAC1B,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;SACvB;QAED,IAAI,CAAC,QAAQ;YACZ,OAAO,CAAC,iBAAiB,EAAE,KAAK,0BAAkB,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC;QAExE,IAAI,WAAW,KAAK,SAAS,EAAE;YAC9B,IAAI,OAAO,WAAW,KAAK,QAAQ,EAAE;gBACpC,IAAI,CAAC,OAAO,GAAG,MAAM,CAAC,WAAW,CAAC,CAAC;aACnC;YACD,IAAI,CAAC,OAAO;gBACX,OAAO,WAAW,KAAK,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC;SACrE;aAAM;YACN,IAAI,CAAC,OAAO,GAAG,GAAG,CAAC;SACnB;QAED,IAAI,CAAC,MAAM,GAAG,aAAa,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC;QAExC,IAAI,CAAC,KAAK,EAAE;YACX,KAAK,GAAG,GAAG,CAAC;SACZ;QACD,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE;YAC9B,KAAK,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC;SACtB;QAED,OAAO,IAAA,WAAE,EACR,KAAK,IAAI,CAAC,OAAO,KAAK,IAAI,CAAC,QAAQ,KAAK,IAAI,CAAC,OAAO,KAAK,IAAI,CAAC,MAAM,IAAI,KAAK,EAAE,CAC/E,CAAC;KACF;IAAC,OAAO,CAAC,EAAE;QACX,OAAO,IAAA,YAAG,EAAC,CAAC,CAAC,CAAC;KACd;AACF,CAAC,CAAC;AA5DW,QAAA,0BAA0B,8BA4DrC;AAOK,MAAM,sBAAsB,GAAG,CACrC,IAAiC,EACV,EAAE;IACzB,IAAI;QACH,IAAI,OAAO,CAAC;QACZ,IAAI,OAAO,IAAI,KAAK,QAAQ,EAAE;YAC7B,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC;SACvB;aAAM,IAAI,OAAO,IAAI,KAAK,QAAQ,EAAE;YACpC,MAAM,gBAAgB,GAAG,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;YAC3D,OAAO,GAAG,gBAAgB,CAAC,CAAC,CAAC,CAAC;SAC9B;QACD,QAAQ,OAAO,EAAE;YAChB,KAAK,IAAI;gBACR,OAAO,IAAA,WAAE,EAAC,oBAAY,CAAC,KAAK,CAAC,CAAC;YAC/B,KAAK,IAAI;gBACR,OAAO,IAAA,WAAE,EAAC,oBAAY,CAAC,IAAI,CAAC,CAAC;YAC9B,KAAK,IAAI;gBACR,OAAO,IAAA,WAAE,EAAC,oBAAY,CAAC,MAAM,CAAC,CAAC;YAChC,KAAK,IAAI;gBACR,OAAO,IAAA,WAAE,EAAC,oBAAY,CAAC,IAAI,CAAC,CAAC;YAC9B;gBACC,OAAO,IAAA,YAAG,EAAC,cAAc,CAAC,CAAC;SAC5B;KACD;IAAC,OAAO,CAAC,EAAE;QACX,OAAO,IAAA,YAAG,EAAC,CAAC,CAAC,CAAC;KACd;AACF,CAAC,CAAC;AA1BW,QAAA,sBAAsB,0BA0BjC"}
@@ -23,7 +23,7 @@ var __importStar = (this && this.__importStar) || function (mod) {
23
23
  return result;
24
24
  };
25
25
  Object.defineProperty(exports, "__esModule", { value: true });
26
- exports.sleep = exports.getAddressesFromPrivateKey = exports.getAddressFromKeyPair = exports.objectsMatch = exports.validateMnemonic = exports.generateMnemonic = exports.getScriptHash = exports.getKeyDerivationPath = exports.validateAddress = exports.getSha256 = exports.getAddressFromScriptPubKey = void 0;
26
+ exports.sleep = exports.getAddressesFromPrivateKey = exports.getTapRootAddressFromPublicKey = exports.getAddressFromKeyPair = exports.objectsMatch = exports.validateMnemonic = exports.generateMnemonic = exports.getScriptHash = exports.getKeyDerivationPath = exports.validateAddress = exports.getSha256 = exports.getAddressFromScriptPubKey = void 0;
27
27
  const types_1 = require("../types");
28
28
  const bitcoinjs_lib_1 = require("bitcoinjs-lib");
29
29
  const bip39 = __importStar(require("bip39"));
@@ -34,6 +34,7 @@ const shapes_1 = require("../shapes");
34
34
  const derivation_path_1 = require("./derivation-path");
35
35
  const ecpair_1 = require("ecpair");
36
36
  const ecc = __importStar(require("@bitcoinerlab/secp256k1"));
37
+ const bip371_1 = require("bitcoinjs-lib/src/psbt/bip371");
37
38
  const ECPair = (0, ecpair_1.ECPairFactory)(ecc);
38
39
  const getAddressFromScriptPubKey = (scriptPubKey, selectedNetwork) => {
39
40
  const network = bitcoinjs_lib_1.networks[selectedNetwork];
@@ -165,24 +166,56 @@ const getAddressFromKeyPair = ({ keyPair, addressType, network }) => {
165
166
  network
166
167
  }).address) !== null && _c !== void 0 ? _c : '';
167
168
  break;
169
+ case types_1.EAddressType.p2tr:
170
+ const res = (0, exports.getTapRootAddressFromPublicKey)({
171
+ publicKey: keyPair.publicKey,
172
+ network
173
+ });
174
+ if (res.isOk()) {
175
+ address = res.value.address;
176
+ }
177
+ break;
168
178
  }
169
- return {
179
+ if (!address)
180
+ return (0, result_1.err)('Unable to get address from key pair.');
181
+ return (0, result_1.ok)({
170
182
  address,
171
183
  publicKey: keyPair.publicKey.toString('hex')
172
- };
184
+ });
173
185
  };
174
186
  exports.getAddressFromKeyPair = getAddressFromKeyPair;
187
+ const getTapRootAddressFromPublicKey = ({ publicKey, network }) => {
188
+ try {
189
+ const internalPubkey = (0, bip371_1.toXOnly)(publicKey);
190
+ const { address, output } = bitcoin.payments.p2tr({
191
+ internalPubkey,
192
+ network
193
+ });
194
+ if (!address)
195
+ return (0, result_1.err)('Unable to get address from key pair.');
196
+ if (!output)
197
+ return (0, result_1.err)('Unable to get output from key pair.');
198
+ return (0, result_1.ok)({ address, output, internalPubkey });
199
+ }
200
+ catch (e) {
201
+ return (0, result_1.err)(e);
202
+ }
203
+ };
204
+ exports.getTapRootAddressFromPublicKey = getTapRootAddressFromPublicKey;
175
205
  const getAddressesFromPrivateKey = ({ privateKey, addrTypes = (0, shapes_1.getAddressTypes)(), network = bitcoin.networks.bitcoin }) => {
176
206
  try {
177
207
  if (!privateKey)
178
208
  return (0, result_1.err)('No private key provided.');
179
209
  const keyPair = ECPair.fromWIF(privateKey, network);
180
210
  const response = addrTypes.map((addressType) => {
181
- return (0, exports.getAddressFromKeyPair)({
211
+ const addressInfo = (0, exports.getAddressFromKeyPair)({
182
212
  keyPair,
183
213
  addressType,
184
214
  network
185
215
  });
216
+ if (addressInfo.isErr())
217
+ throw new Error(addressInfo.error.message);
218
+ return addressInfo.value;
186
219
  });
187
220
  if (!response)
188
221
  return (0, result_1.err)('Unable to get addresses from private key.');
@@ -1 +1 @@
1
- {"version":3,"file":"helpers.js","sourceRoot":"","sources":["../../src/utils/helpers.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"helpers.js","sourceRoot":"","sources":["../../src/utils/helpers.ts"],"names":[],"mappings":"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"}
@@ -23,7 +23,7 @@ var __importStar = (this && this.__importStar) || function (mod) {
23
23
  return result;
24
24
  };
25
25
  Object.defineProperty(exports, "__esModule", { value: true });
26
- exports.decodeRawTransaction = exports.validateTransaction = exports.removeDustOutputs = exports.getByteCount = exports.constructByteCountParam = exports.parseOnChainPaymentRequest = exports.setReplaceByFee = void 0;
26
+ exports.isP2trPrefix = exports.decodeRawTransaction = exports.validateTransaction = exports.removeDustOutputs = exports.getByteCount = exports.constructByteCountParam = exports.parseOnChainPaymentRequest = exports.setReplaceByFee = void 0;
27
27
  const bitcoin = __importStar(require("bitcoinjs-lib"));
28
28
  const bitcoinjs_lib_1 = require("bitcoinjs-lib");
29
29
  const result_1 = require("./result");
@@ -149,13 +149,15 @@ const getByteCount = (inputs, outputs, message, minByteCount = 166) => {
149
149
  'MULTISIG-P2SH-P2WSH': 8 + 76 * 4,
150
150
  P2PKH: 148 * 4,
151
151
  P2WPKH: 108 + 41 * 4,
152
- 'P2SH-P2WPKH': 108 + 64 * 4
152
+ 'P2SH-P2WPKH': 108 + 64 * 4,
153
+ P2TR: 138 * 4
153
154
  },
154
155
  outputs: {
155
156
  P2SH: 32 * 4,
156
157
  P2PKH: 34 * 4,
157
158
  P2WPKH: 31 * 4,
158
- P2WSH: 43 * 4
159
+ P2WSH: 43 * 4,
160
+ P2TR: (8 + 1 + 32) * 4
159
161
  }
160
162
  };
161
163
  const checkUInt53 = (n) => {
@@ -324,4 +326,15 @@ const decodeRawTransaction = (hex, _network) => {
324
326
  }
325
327
  };
326
328
  exports.decodeRawTransaction = decodeRawTransaction;
329
+ const isP2trPrefix = (address) => {
330
+ try {
331
+ return (address.startsWith('bc1p') ||
332
+ address.startsWith('tb1p') ||
333
+ address.startsWith('bcrt1p'));
334
+ }
335
+ catch (_a) {
336
+ return false;
337
+ }
338
+ };
339
+ exports.isP2trPrefix = isP2trPrefix;
327
340
  //# sourceMappingURL=transaction.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"transaction.js","sourceRoot":"","sources":["../../src/utils/transaction.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"transaction.js","sourceRoot":"","sources":["../../src/utils/transaction.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,uDAAyC;AACzC,iDAA+C;AAC/C,qCAA2C;AAU3C,qCAAuC;AACvC,yFAAsE;AACtE,6CAA+B;AAC/B,mDAA2D;AAC3D,uCAA4C;AAC5C,6CAAyC;AAQlC,MAAM,eAAe,GAAG,CAAC,EAC/B,IAAI,EACJ,MAAM,GAAG,IAAI,EAIb,EAAQ,EAAE;IACV,IAAI;QACH,MAAM,eAAe,GAAG,OAAO,CAAC,WAAW,CAAC,gBAAgB,CAAC;QAI7D,MAAM,GAAG,GAAG,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC,EAAE,CAAC,GAAG,CAAC;QAClD,IAAI,GAAG,CAAC,MAAM,KAAK,CAAC,EAAE;YACrB,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE;gBACjB,IAAI,MAAM,EAAE;oBACX,IAAI,CAAC,CAAC,QAAQ,IAAI,eAAe,GAAG,CAAC,EAAE;wBACtC,CAAC,CAAC,QAAQ,GAAG,CAAC,CAAC;qBACf;iBACD;qBAAM;oBACN,IAAI,CAAC,CAAC,QAAQ,GAAG,eAAe,GAAG,CAAC,EAAE;wBACrC,CAAC,CAAC,QAAQ,GAAG,eAAe,CAAC;qBAC7B;iBACD;YACF,CAAC,CAAC,CAAC;SACH;KACD;IAAC,WAAM,GAAE;AACX,CAAC,CAAC;AA3BW,QAAA,eAAe,mBA2B1B;AASK,MAAM,0BAA0B,GAAG,CACzC,IAAY,EACZ,OAA4B,EAM1B,EAAE;IACJ,IAAI;QACH,IAAI,CAAC,IAAI,EAAE;YACV,OAAO,IAAA,YAAG,EAAC,iDAAiD,CAAC,CAAC;SAC9D;QAED,IAAI,qBAAqB,GAAG,IAAA,yBAAe,EAAC,EAAE,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC,CAAC;QAExE,IACC,qBAAqB,CAAC,OAAO;YAC7B,CAAC,IAAI,CAAC,QAAQ,CAAC,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,IAAI,CAAC,EACxC;YACD,OAAO,IAAA,WAAE,EAAC;gBACT,OAAO,EAAE,IAAI;gBACb,OAAO,EAAE,qBAAqB,CAAC,OAAO;gBACtC,IAAI,EAAE,CAAC;gBACP,OAAO,EAAE,EAAE;aACX,CAAC,CAAC;SACH;QAGD,IAAI,IAAI,CAAC,QAAQ,CAAC,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,IAAI,CAAC,EAAE;YAC7C,IAAI;gBAEH,IAAI,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE;oBACxB,IAAI,GAAG,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;iBAC9B;gBAGD,IAAI,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE;oBACvB,IAAI,GAAG,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC;oBAC7C,IAAI,GAAG,WAAW,IAAI,EAAE,CAAC;iBACzB;gBAGD,MAAM,MAAM,GAAG,KAAK,CAAC,MAAM,CAAC,IAAI,CAG/B,CAAC;gBACF,MAAM,OAAO,GAAG,MAAM,CAAC,OAAO,CAAC;gBAC/B,qBAAqB,GAAG,IAAA,yBAAe,EAAC,EAAE,OAAO,EAAE,OAAO,EAAE,CAAC,CAAC;gBAE9D,IAAI,CAAC,qBAAqB,CAAC,OAAO,EAAE;oBACnC,OAAO,IAAA,YAAG,EAAC,oBAAoB,IAAI,EAAE,CAAC,CAAC;iBACvC;gBACD,IAAI,MAAM,GAAG,CAAC,CAAC;gBACf,IAAI,OAAO,GAAG,EAAE,CAAC;gBACjB,IAAI;oBACH,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;iBAC5C;gBAAC,OAAO,CAAC,EAAE,GAAE;gBACd,IAAI;oBACH,OAAO,GAAG,MAAM,CAAC,OAAO,CAAC,OAAO,IAAI,EAAE,CAAC;iBACvC;gBAAC,OAAO,CAAC,EAAE,GAAE;gBACd,OAAO,IAAA,WAAE,EAAC;oBACT,OAAO;oBACP,OAAO,EAAE,qBAAqB,CAAC,OAAO;oBACtC,IAAI,EAAE,IAAA,sBAAS,EAAC,MAAM,CAAC;oBACvB,OAAO;iBACP,CAAC,CAAC;aACH;YAAC,WAAM;gBACP,OAAO,IAAA,YAAG,EAAC,IAAI,CAAC,CAAC;aACjB;SACD;QACD,OAAO,IAAA,YAAG,EAAC,IAAI,CAAC,CAAC;KACjB;IAAC,WAAM;QACP,OAAO,IAAA,YAAG,EAAC,IAAI,CAAC,CAAC;KACjB;AACF,CAAC,CAAC;AA3EW,QAAA,0BAA0B,8BA2ErC;AAQK,MAAM,uBAAuB,GAAG,CACtC,SAAmB,EACnB,uBAAoE,EAAE,EACzB,EAAE;IAC/C,IAAI;QACH,IAAI,SAAS,CAAC,MAAM,IAAI,CAAC,EAAE;YAC1B,OAAO,EAAE,MAAM,EAAE,CAAC,EAAE,CAAC;SACrB;QACD,MAAM,KAAK,GAAyB,EAAE,CAAC;QACvC,SAAS,CAAC,GAAG,CAAC,CAAC,OAAO,EAAE,EAAE;YACzB,IAAI,IAAA,oCAAQ,EAAC,OAAO,CAAC,EAAE;gBACtB,MAAM,WAAW,GAAG,IAAA,2CAAc,EAAC,OAAO,CAAC,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC;gBAC/D,KAAK,CAAC,WAAW,CAAC,GAAG,KAAK,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;aACrE;QACF,CAAC,CAAC,CAAC;QACH,oBAAoB,CAAC,OAAO,CAAC,CAAC,EAAE,QAAQ,EAAE,KAAK,EAAE,EAAE,EAAE;;YACpD,KAAK,CAAC,QAAQ,CAAC,GAAG,CAAC,MAAA,KAAK,CAAC,QAAQ,CAAC,mCAAI,CAAC,CAAC,GAAG,KAAK,CAAC;QAClD,CAAC,CAAC,CAAC;QACH,OAAO,KAAK,CAAC;KACb;IAAC,WAAM;QACP,OAAO,EAAE,MAAM,EAAE,CAAC,EAAE,CAAC;KACrB;AACF,CAAC,CAAC;AAtBW,QAAA,uBAAuB,2BAsBlC;AAaK,MAAM,YAAY,GAAG,CAC3B,MAA2B,EAC3B,OAA6B,EAC7B,OAAgB,EAChB,YAAY,GAAG,GAAG,EACT,EAAE;IACX,IAAI;QACH,IAAI,WAAW,GAAG,CAAC,CAAC;QACpB,IAAI,UAAU,GAAG,KAAK,CAAC;QACvB,IAAI,UAAU,GAAG,CAAC,CAAC;QACnB,IAAI,WAAW,GAAG,CAAC,CAAC;QAEpB,MAAM,KAAK,GAAG;YAGb,MAAM,EAAE;gBAGP,eAAe,EAAE,EAAE,GAAG,CAAC;gBAGvB,gBAAgB,EAAE,CAAC,GAAG,EAAE,GAAG,CAAC;gBAG5B,qBAAqB,EAAE,CAAC,GAAG,EAAE,GAAG,CAAC;gBAEjC,KAAK,EAAE,GAAG,GAAG,CAAC;gBAGd,MAAM,EAAE,GAAG,GAAG,EAAE,GAAG,CAAC;gBAGpB,aAAa,EAAE,GAAG,GAAG,EAAE,GAAG,CAAC;gBAC3B,IAAI,EAAE,GAAG,GAAG,CAAC;aACb;YACD,OAAO,EAAE;gBAER,IAAI,EAAE,EAAE,GAAG,CAAC;gBAEZ,KAAK,EAAE,EAAE,GAAG,CAAC;gBAEb,MAAM,EAAE,EAAE,GAAG,CAAC;gBAEd,KAAK,EAAE,EAAE,GAAG,CAAC;gBACb,IAAI,EAAE,CAAC,CAAC,GAAG,CAAC,GAAG,EAAE,CAAC,GAAG,CAAC;aACtB;SACD,CAAC;QAEF,MAAM,WAAW,GAAG,CAAC,CAAC,EAAQ,EAAE;YAC/B,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,MAAM,CAAC,gBAAgB,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC;gBACtD,MAAM,IAAI,UAAU,CAAC,oBAAoB,CAAC,CAAC;QAC7C,CAAC,CAAC;QAEF,MAAM,YAAY,GAAG,CAAC,MAAM,EAAU,EAAE;YACvC,WAAW,CAAC,MAAM,CAAC,CAAC;YAEpB,OAAO,MAAM,GAAG,IAAI;gBACnB,CAAC,CAAC,CAAC;gBACH,CAAC,CAAC,MAAM,IAAI,MAAM;oBAClB,CAAC,CAAC,CAAC;oBACH,CAAC,CAAC,MAAM,IAAI,UAAU;wBACtB,CAAC,CAAC,CAAC;wBACH,CAAC,CAAC,CAAC,CAAC;QACN,CAAC,CAAC;QAEF,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC,UAAU,GAAG;YACxC,GAAG,GAAG,GAAG,CAAC,WAAW,EAAE,CAAC;YACxB,WAAW,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC;YACzB,IAAI,GAAG,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,KAAK,UAAU,EAAE;gBAEnC,MAAM,QAAQ,GAAG,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;gBAChC,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC;oBAAE,MAAM,IAAI,KAAK,CAAC,iBAAiB,GAAG,GAAG,CAAC,CAAC;gBACpE,MAAM,MAAM,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAC;gBAC3B,MAAM,KAAK,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,UAAU,IAAI;oBACtD,OAAO,QAAQ,CAAC,IAAI,CAAC,CAAC;gBACvB,CAAC,CAAC,CAAC;gBAEH,WAAW,IAAI,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC;gBAClD,MAAM,UAAU,GAAG,MAAM,KAAK,eAAe,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;gBACtD,WAAW;oBACV,CAAC,EAAE,GAAG,KAAK,CAAC,CAAC,CAAC,GAAG,EAAE,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC,GAAG,UAAU,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC;aAC5D;iBAAM;gBACN,WAAW,IAAI,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC;aAC/C;YACD,UAAU,IAAI,MAAM,CAAC,GAAG,CAAC,CAAC;YAC1B,IAAI,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC;gBAAE,UAAU,GAAG,IAAI,CAAC;QAC9C,CAAC,CAAC,CAAC;QAEH,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,OAAO,CAAC,UAAU,GAAG;YACzC,GAAG,GAAG,GAAG,CAAC,WAAW,EAAE,CAAC;YACxB,WAAW,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC;YAC1B,WAAW,IAAI,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC;YACjD,WAAW,IAAI,OAAO,CAAC,GAAG,CAAC,CAAC;QAC7B,CAAC,CAAC,CAAC;QAEH,IAAI,UAAU;YAAE,WAAW,IAAI,CAAC,CAAC;QACjC,IAAI,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,MAAM,EAAE;YAEpB,WAAW,IAAI,OAAO,CAAC,MAAM,GAAG,CAAC,CAAC;SAClC;QAED,WAAW,IAAI,CAAC,GAAG,CAAC,CAAC;QACrB,WAAW,IAAI,YAAY,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC;QAC5C,WAAW,IAAI,YAAY,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC;QAE7C,MAAM,UAAU,GAAG,IAAI,CAAC,IAAI,CAAC,WAAW,GAAG,CAAC,CAAC,CAAC;QAC9C,OAAO,UAAU,GAAG,YAAY,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,UAAU,CAAC;KAC7D;IAAC,WAAM;QACP,OAAO,YAAY,CAAC;KACpB;AACF,CAAC,CAAC;AA9GW,QAAA,YAAY,gBA8GvB;AAOK,MAAM,iBAAiB,GAAG,CAAC,OAAkB,EAAa,EAAE;IAClE,OAAO,OAAO,CAAC,MAAM,CAAC,CAAC,MAAM,EAAE,EAAE;QAChC,OAAO,MAAM,CAAC,KAAK,GAAG,gCAAoB,CAAC,SAAS,CAAC;IACtD,CAAC,CAAC,CAAC;AACJ,CAAC,CAAC;AAJW,QAAA,iBAAiB,qBAI5B;AAOK,MAAM,mBAAmB,GAAG,CAClC,WAA6B,EACZ,EAAE;;IACnB,MAAM,OAAO,GAAG,gCAAoB,CAAC,kBAAkB,CAAC;IAExD,IAAI;QACH,IAAI,CAAC,WAAW,CAAC,GAAG,EAAE;YACrB,OAAO,IAAA,YAAG,EAAC,8BAA8B,CAAC,CAAC;SAC3C;QACD,IAAI,WAAW,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,OAAO,EAAE;YACtE,OAAO,IAAA,YAAG,EAAC,6CAA6C,CAAC,CAAC;SAC1D;QACD,IAAI,WAAW,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,KAAK,EAAE;YACpE,OAAO,IAAA,YAAG,EAAC,mCAAmC,CAAC,CAAC;SAChD;QACD,MAAM,MAAM,GAAG,WAAW,CAAC,MAAM,CAAC;QAClC,MAAM,OAAO,GAAG,WAAW,CAAC,OAAO,CAAC;QACpC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;YACxC,MAAM,OAAO,GAAG,MAAA,MAAA,OAAO,CAAC,CAAC,CAAC,0CAAE,OAAO,mCAAI,EAAE,CAAC;YAC1C,MAAM,KAAK,GAAG,MAAA,MAAA,OAAO,CAAC,CAAC,CAAC,0CAAE,KAAK,mCAAI,CAAC,CAAC;YACrC,MAAM,EAAE,OAAO,EAAE,GAAG,IAAA,yBAAe,EAAC,EAAE,OAAO,EAAE,CAAC,CAAC;YACjD,IAAI,CAAC,OAAO,EAAE;gBACb,OAAO,IAAA,YAAG,EAAC,oBAAoB,OAAO,EAAE,CAAC,CAAC;aAC1C;YACD,IAAI,KAAK,GAAG,OAAO,EAAE;gBACpB,OAAO,IAAA,YAAG,EACT,oBAAoB,OAAO,qCAAqC,OAAO,OAAO,CAC9E,CAAC;aACF;YACD,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,KAAK,CAAC,EAAE;gBAC7B,OAAO,IAAA,YAAG,EAAC,oBAAoB,OAAO,uBAAuB,CAAC,CAAC;aAC/D;SACD;QAED,MAAM,YAAY,GAAG,IAAA,oBAAW,EAAC;YAChC,GAAG,EAAE,MAAM;YACX,KAAK,EAAE,OAAO;SACd,CAAC,CAAC;QACH,IAAI,YAAY,CAAC,KAAK,EAAE,EAAE;YACzB,OAAO,IAAA,YAAG,EAAC,YAAY,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;SACvC;QAED,IAAI,eAAe,GAAG,OAAO,CAAC;QAC9B,IAAI,WAAW,CAAC,aAAa,EAAE;YAC9B,eAAe,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC,MAAM,EAAE,EAAE;gBAC3C,OAAO,MAAM,CAAC,OAAO,KAAK,WAAW,CAAC,aAAa,CAAC;YACrD,CAAC,CAAC,CAAC;SACH;QACD,MAAM,aAAa,GAAG,IAAA,oBAAW,EAAC;YACjC,GAAG,EAAE,eAAe;YACpB,KAAK,EAAE,OAAO;SACd,CAAC,CAAC;QACH,IAAI,aAAa,CAAC,KAAK,EAAE,EAAE;YAC1B,OAAO,IAAA,YAAG,EAAC,aAAa,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;SACxC;QAED,OAAO,IAAA,WAAE,EAAC,uBAAuB,CAAC,CAAC;KACnC;IAAC,OAAO,CAAC,EAAE;QACX,OAAO,IAAA,YAAG,EAAC,CAAC,CAAC,CAAC;KACd;AACF,CAAC,CAAC;AA5DW,QAAA,mBAAmB,uBA4D9B;AASK,MAAM,oBAAoB,GAAG,CACnC,GAAW,EACX,QAA4B,EACL,EAAE;IACzB,IAAI;QACH,MAAM,OAAO,GAAG,wBAAQ,CAAC,QAAQ,CAAC,CAAC;QACnC,MAAM,EAAE,GAAG,OAAO,CAAC,WAAW,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;QAC5C,OAAO,IAAA,WAAE,EAAC;YACT,IAAI,EAAE,EAAE,CAAC,KAAK,EAAE;YAChB,OAAO,EAAE,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC;YACzC,IAAI,EAAE,EAAE,CAAC,UAAU,EAAE;YACrB,KAAK,EAAE,EAAE,CAAC,WAAW,EAAE;YACvB,MAAM,EAAE,EAAE,CAAC,MAAM,EAAE;YACnB,OAAO,EAAE,EAAE,CAAC,OAAO;YACnB,QAAQ,EAAE,EAAE,CAAC,QAAQ;YACrB,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;gBAC3B,IAAI,EAAE,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,CAAC,KAAK,CAAC;gBACvD,IAAI,EAAE,KAAK,CAAC,KAAK;gBACjB,SAAS,EAAE;oBACV,GAAG,EAAE,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,MAAM,CAAC;oBACvC,GAAG,EAAE,KAAK,CAAC,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC;iBACjC;gBACD,WAAW,EAAE,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;gBACxD,QAAQ,EAAE,KAAK,CAAC,QAAQ;aACxB,CAAC,CAAC;YACH,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;gBAC/B,IAAI,OAAO,CAAC;gBACZ,IAAI;oBACH,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC,gBAAgB,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;iBACnE;gBAAC,OAAO,CAAC,EAAE,GAAE;gBACd,OAAO;oBACN,KAAK,EAAE,MAAM,CAAC,KAAK;oBACnB,CAAC,EAAE,CAAC;oBACJ,YAAY,EAAE;wBACb,GAAG,EAAE,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC;wBACxC,GAAG,EAAE,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC;wBAClC,OAAO;qBACP;iBACD,CAAC;YACH,CAAC,CAAC;SACF,CAAC,CAAC;KACH;IAAC,OAAO,CAAC,EAAE;QACX,OAAO,IAAA,YAAG,EAAC,CAAC,CAAC,CAAC;KACd;AACF,CAAC,CAAC;AA5CW,QAAA,oBAAoB,wBA4C/B;AAQK,MAAM,YAAY,GAAG,CAAC,OAAe,EAAW,EAAE;IACxD,IAAI;QACH,OAAO,CACN,OAAO,CAAC,UAAU,CAAC,MAAM,CAAC;YAC1B,OAAO,CAAC,UAAU,CAAC,MAAM,CAAC;YAC1B,OAAO,CAAC,UAAU,CAAC,QAAQ,CAAC,CAC5B,CAAC;KACF;IAAC,WAAM;QACP,OAAO,KAAK,CAAC;KACb;AACF,CAAC,CAAC;AAVW,QAAA,YAAY,gBAUvB"}
@@ -369,30 +369,31 @@ class Wallet {
369
369
  return mnemonic === this._mnemonic && (0, utils_1.validateMnemonic)(mnemonic);
370
370
  }
371
371
  async _getAddress(path, addressType) {
372
- if (this._customGetAddress) {
373
- const data = {
374
- path,
375
- type: addressType,
376
- selectedNetwork: this.electrum.getElectrumNetwork(this._network)
377
- };
378
- const res = await this._customGetAddress(data);
379
- if (res.isErr()) {
380
- return {
381
- address: '',
372
+ try {
373
+ if (this._customGetAddress) {
374
+ const data = {
382
375
  path,
383
- publicKey: ''
376
+ type: addressType,
377
+ selectedNetwork: this.electrum.getElectrumNetwork(this._network)
384
378
  };
379
+ const res = await this._customGetAddress(data);
380
+ if (res.isErr())
381
+ return (0, utils_1.err)(res.error.message);
385
382
  }
386
- return res.value;
383
+ const keyPair = this._root.derivePath(path);
384
+ const network = this.getBitcoinNetwork(this._network);
385
+ const addressInfo = (0, utils_1.getAddressFromKeyPair)({
386
+ keyPair,
387
+ addressType,
388
+ network
389
+ });
390
+ if (addressInfo.isErr())
391
+ return (0, utils_1.err)(addressInfo.error.message);
392
+ return (0, utils_1.ok)(Object.assign(Object.assign({}, addressInfo.value), { path }));
393
+ }
394
+ catch (e) {
395
+ return (0, utils_1.err)(e);
387
396
  }
388
- const keyPair = this._root.derivePath(path);
389
- const network = this.getBitcoinNetwork(this._network);
390
- const addressInfo = (0, utils_1.getAddressFromKeyPair)({
391
- keyPair,
392
- addressType,
393
- network
394
- });
395
- return Object.assign(Object.assign({}, addressInfo), { path });
396
397
  }
397
398
  async getAddress({ index, changeAddress = false, addressType = this.addressType } = {}) {
398
399
  try {
@@ -411,9 +412,9 @@ class Wallet {
411
412
  }
412
413
  const path = pathRes.value;
413
414
  const res = await this._getAddress(path, addressType);
414
- if (!(res === null || res === void 0 ? void 0 : res.address))
415
+ if (res.isErr())
415
416
  return '';
416
- return res.address;
417
+ return res.value.address;
417
418
  }
418
419
  catch (_a) {
419
420
  return '';
@@ -431,9 +432,9 @@ class Wallet {
431
432
  }
432
433
  try {
433
434
  const getAddressRes = await this._getAddress(path, addressType);
434
- if (!(getAddressRes === null || getAddressRes === void 0 ? void 0 : getAddressRes.address))
435
+ if (getAddressRes.isErr())
435
436
  return (0, utils_1.err)('Unable to get address.');
436
- return (0, utils_1.ok)(getAddressRes);
437
+ return (0, utils_1.ok)(getAddressRes.value);
437
438
  }
438
439
  catch (e) {
439
440
  return (0, utils_1.err)(e);
@@ -832,10 +833,7 @@ class Wallet {
832
833
  return (0, utils_1.err)(e);
833
834
  }
834
835
  }
835
- async addAddresses({ addressAmount = 5, changeAddressAmount = 5, addressIndex = 0, changeAddressIndex = 0, addressType, keyDerivationPath, saveAddresses = true }) {
836
- if (!addressType) {
837
- addressType = this.addressType;
838
- }
836
+ async addAddresses({ addressAmount = 5, changeAddressAmount = 5, addressIndex = 0, changeAddressIndex = 0, addressType = this.addressType, keyDerivationPath, saveAddresses = true }) {
839
837
  const network = this._network;
840
838
  const { path, type } = shapes_1.addressTypes[addressType];
841
839
  if (!keyDerivationPath) {
@@ -1078,11 +1076,8 @@ class Wallet {
1078
1076
  return (0, utils_1.err)(e);
1079
1077
  }
1080
1078
  }
1081
- getGapLimit({ addressType }) {
1079
+ getGapLimit({ addressType = this.addressType }) {
1082
1080
  try {
1083
- if (!addressType) {
1084
- addressType = this.addressType;
1085
- }
1086
1081
  const currentWallet = this.data;
1087
1082
  const addressIndex = currentWallet.addressIndex[addressType].index;
1088
1083
  const lastUsedAddressIndex = currentWallet.lastUsedAddressIndex[addressType].index;
@@ -2202,9 +2197,6 @@ class Wallet {
2202
2197
  return (0, utils_1.err)(getUtxoRes.error.message);
2203
2198
  }
2204
2199
  const { balance, utxos } = getUtxoRes.value;
2205
- if (!balance) {
2206
- return (0, utils_1.err)('No balance available.');
2207
- }
2208
2200
  if (balance < constants_1.TRANSACTION_DEFAULTS.dustLimit) {
2209
2201
  return (0, utils_1.err)('Balance is below dust limit.');
2210
2202
  }