@ledgerhq/hw-app-btc 10.0.1 → 10.0.2-nightly.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.
Files changed (166) hide show
  1. package/.turbo/turbo-build.log +1 -1
  2. package/CHANGELOG.md +7 -0
  3. package/lib/Btc.d.ts.map +1 -1
  4. package/lib/Btc.js +72 -97
  5. package/lib/Btc.js.map +1 -1
  6. package/lib/BtcNew.js +217 -313
  7. package/lib/BtcNew.js.map +1 -1
  8. package/lib/BtcOld.js +46 -106
  9. package/lib/BtcOld.js.map +1 -1
  10. package/lib/bip32.js +12 -12
  11. package/lib/bip32.js.map +1 -1
  12. package/lib/buffertools.js +66 -69
  13. package/lib/buffertools.js.map +1 -1
  14. package/lib/compressPublicKey.js +3 -3
  15. package/lib/compressPublicKey.js.map +1 -1
  16. package/lib/constants.js +1 -1
  17. package/lib/createTransaction.d.ts +1 -1
  18. package/lib/createTransaction.d.ts.map +1 -1
  19. package/lib/createTransaction.js +285 -398
  20. package/lib/createTransaction.js.map +1 -1
  21. package/lib/debug.js +11 -13
  22. package/lib/debug.js.map +1 -1
  23. package/lib/finalizeInput.js +23 -62
  24. package/lib/finalizeInput.js.map +1 -1
  25. package/lib/getAppAndVersion.d.ts +1 -1
  26. package/lib/getAppAndVersion.d.ts.map +1 -1
  27. package/lib/getAppAndVersion.js +29 -72
  28. package/lib/getAppAndVersion.js.map +1 -1
  29. package/lib/getTrustedInput.js +108 -251
  30. package/lib/getTrustedInput.js.map +1 -1
  31. package/lib/getTrustedInputBIP143.js +9 -10
  32. package/lib/getTrustedInputBIP143.js.map +1 -1
  33. package/lib/getWalletPublicKey.d.ts +1 -1
  34. package/lib/getWalletPublicKey.d.ts.map +1 -1
  35. package/lib/getWalletPublicKey.js +27 -73
  36. package/lib/getWalletPublicKey.js.map +1 -1
  37. package/lib/hashPublicKey.js +4 -4
  38. package/lib/hashPublicKey.js.map +1 -1
  39. package/lib/index.js +3 -3
  40. package/lib/index.js.map +1 -1
  41. package/lib/newops/accounttype.d.ts +2 -2
  42. package/lib/newops/accounttype.d.ts.map +1 -1
  43. package/lib/newops/accounttype.js +85 -125
  44. package/lib/newops/accounttype.js.map +1 -1
  45. package/lib/newops/appClient.js +98 -205
  46. package/lib/newops/appClient.js.map +1 -1
  47. package/lib/newops/clientCommands.js +122 -213
  48. package/lib/newops/clientCommands.js.map +1 -1
  49. package/lib/newops/merkelizedPsbt.js +28 -75
  50. package/lib/newops/merkelizedPsbt.js.map +1 -1
  51. package/lib/newops/merkle.js +38 -67
  52. package/lib/newops/merkle.js.map +1 -1
  53. package/lib/newops/merkleMap.js +11 -12
  54. package/lib/newops/merkleMap.js.map +1 -1
  55. package/lib/newops/policy.d.ts +1 -1
  56. package/lib/newops/policy.d.ts.map +1 -1
  57. package/lib/newops/policy.js +17 -18
  58. package/lib/newops/policy.js.map +1 -1
  59. package/lib/newops/psbtExtractor.js +9 -9
  60. package/lib/newops/psbtExtractor.js.map +1 -1
  61. package/lib/newops/psbtFinalizer.js +22 -22
  62. package/lib/newops/psbtFinalizer.js.map +1 -1
  63. package/lib/newops/psbtv2.d.ts +1 -1
  64. package/lib/newops/psbtv2.d.ts.map +1 -1
  65. package/lib/newops/psbtv2.js +227 -286
  66. package/lib/newops/psbtv2.js.map +1 -1
  67. package/lib/serializeTransaction.js +13 -15
  68. package/lib/serializeTransaction.js.map +1 -1
  69. package/lib/shouldUseTrustedInputForSegwit.js +4 -5
  70. package/lib/shouldUseTrustedInputForSegwit.js.map +1 -1
  71. package/lib/signMessage.js +47 -99
  72. package/lib/signMessage.js.map +1 -1
  73. package/lib/signP2SHTransaction.d.ts +1 -1
  74. package/lib/signP2SHTransaction.d.ts.map +1 -1
  75. package/lib/signP2SHTransaction.js +91 -187
  76. package/lib/signP2SHTransaction.js.map +1 -1
  77. package/lib/signTransaction.js +8 -9
  78. package/lib/signTransaction.js.map +1 -1
  79. package/lib/splitTransaction.js +50 -54
  80. package/lib/splitTransaction.js.map +1 -1
  81. package/lib/startUntrustedHashTransactionInput.js +65 -167
  82. package/lib/startUntrustedHashTransactionInput.js.map +1 -1
  83. package/lib/types.js +1 -1
  84. package/lib/varint.js +10 -10
  85. package/lib/varint.js.map +1 -1
  86. package/lib-es/Btc.d.ts.map +1 -1
  87. package/lib-es/Btc.js +58 -84
  88. package/lib-es/Btc.js.map +1 -1
  89. package/lib-es/BtcNew.js +205 -302
  90. package/lib-es/BtcNew.js.map +1 -1
  91. package/lib-es/BtcOld.js +35 -96
  92. package/lib-es/BtcOld.js.map +1 -1
  93. package/lib-es/bip32.js +7 -7
  94. package/lib-es/bip32.js.map +1 -1
  95. package/lib-es/buffertools.js +62 -67
  96. package/lib-es/buffertools.js.map +1 -1
  97. package/lib-es/compressPublicKey.js +2 -2
  98. package/lib-es/compressPublicKey.js.map +1 -1
  99. package/lib-es/constants.js +12 -12
  100. package/lib-es/constants.js.map +1 -1
  101. package/lib-es/createTransaction.d.ts +1 -1
  102. package/lib-es/createTransaction.d.ts.map +1 -1
  103. package/lib-es/createTransaction.js +271 -384
  104. package/lib-es/createTransaction.js.map +1 -1
  105. package/lib-es/debug.js +10 -12
  106. package/lib-es/debug.js.map +1 -1
  107. package/lib-es/finalizeInput.js +20 -59
  108. package/lib-es/finalizeInput.js.map +1 -1
  109. package/lib-es/getAppAndVersion.d.ts +1 -1
  110. package/lib-es/getAppAndVersion.d.ts.map +1 -1
  111. package/lib-es/getAppAndVersion.js +27 -70
  112. package/lib-es/getAppAndVersion.js.map +1 -1
  113. package/lib-es/getTrustedInput.js +104 -247
  114. package/lib-es/getTrustedInput.js.map +1 -1
  115. package/lib-es/getTrustedInputBIP143.js +5 -6
  116. package/lib-es/getTrustedInputBIP143.js.map +1 -1
  117. package/lib-es/getWalletPublicKey.d.ts +1 -1
  118. package/lib-es/getWalletPublicKey.d.ts.map +1 -1
  119. package/lib-es/getWalletPublicKey.js +25 -71
  120. package/lib-es/getWalletPublicKey.js.map +1 -1
  121. package/lib-es/newops/accounttype.d.ts +2 -2
  122. package/lib-es/newops/accounttype.d.ts.map +1 -1
  123. package/lib-es/newops/accounttype.js +79 -123
  124. package/lib-es/newops/accounttype.js.map +1 -1
  125. package/lib-es/newops/appClient.js +92 -200
  126. package/lib-es/newops/appClient.js.map +1 -1
  127. package/lib-es/newops/clientCommands.js +117 -214
  128. package/lib-es/newops/clientCommands.js.map +1 -1
  129. package/lib-es/newops/merkelizedPsbt.js +25 -73
  130. package/lib-es/newops/merkelizedPsbt.js.map +1 -1
  131. package/lib-es/newops/merkle.js +36 -66
  132. package/lib-es/newops/merkle.js.map +1 -1
  133. package/lib-es/newops/merkleMap.js +8 -10
  134. package/lib-es/newops/merkleMap.js.map +1 -1
  135. package/lib-es/newops/policy.d.ts +1 -1
  136. package/lib-es/newops/policy.d.ts.map +1 -1
  137. package/lib-es/newops/policy.js +12 -14
  138. package/lib-es/newops/policy.js.map +1 -1
  139. package/lib-es/newops/psbtExtractor.js +7 -7
  140. package/lib-es/newops/psbtExtractor.js.map +1 -1
  141. package/lib-es/newops/psbtFinalizer.js +19 -19
  142. package/lib-es/newops/psbtFinalizer.js.map +1 -1
  143. package/lib-es/newops/psbtv2.d.ts +1 -1
  144. package/lib-es/newops/psbtv2.d.ts.map +1 -1
  145. package/lib-es/newops/psbtv2.js +225 -286
  146. package/lib-es/newops/psbtv2.js.map +1 -1
  147. package/lib-es/serializeTransaction.js +11 -13
  148. package/lib-es/serializeTransaction.js.map +1 -1
  149. package/lib-es/shouldUseTrustedInputForSegwit.js +1 -2
  150. package/lib-es/shouldUseTrustedInputForSegwit.js.map +1 -1
  151. package/lib-es/signMessage.js +44 -96
  152. package/lib-es/signMessage.js.map +1 -1
  153. package/lib-es/signP2SHTransaction.d.ts +1 -1
  154. package/lib-es/signP2SHTransaction.d.ts.map +1 -1
  155. package/lib-es/signP2SHTransaction.js +84 -180
  156. package/lib-es/signP2SHTransaction.js.map +1 -1
  157. package/lib-es/signTransaction.js +6 -7
  158. package/lib-es/signTransaction.js.map +1 -1
  159. package/lib-es/splitTransaction.js +46 -50
  160. package/lib-es/splitTransaction.js.map +1 -1
  161. package/lib-es/startUntrustedHashTransactionInput.js +62 -164
  162. package/lib-es/startUntrustedHashTransactionInput.js.map +1 -1
  163. package/lib-es/varint.js +9 -9
  164. package/lib-es/varint.js.map +1 -1
  165. package/package.json +5 -6
  166. package/src/Btc.ts +28 -5
@@ -1,107 +1,77 @@
1
- var __read = (this && this.__read) || function (o, n) {
2
- var m = typeof Symbol === "function" && o[Symbol.iterator];
3
- if (!m) return o;
4
- var i = m.call(o), r, ar = [], e;
5
- try {
6
- while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);
7
- }
8
- catch (error) { e = { error: error }; }
9
- finally {
10
- try {
11
- if (r && !r.done && (m = i["return"])) m.call(i);
12
- }
13
- finally { if (e) throw e.error; }
14
- }
15
- return ar;
16
- };
17
- var __spreadArray = (this && this.__spreadArray) || function (to, from, pack) {
18
- if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {
19
- if (ar || !(i in from)) {
20
- if (!ar) ar = Array.prototype.slice.call(from, 0, i);
21
- ar[i] = from[i];
22
- }
23
- }
24
- return to.concat(ar || Array.prototype.slice.call(from));
25
- };
26
1
  import { crypto } from "bitcoinjs-lib";
27
2
  /**
28
3
  * This class implements the merkle tree used by Ledger Bitcoin app v2+,
29
4
  * which is documented at
30
5
  * https://github.com/LedgerHQ/app-bitcoin-new/blob/master/doc/merkle.md
31
6
  */
32
- var Merkle = /** @class */ (function () {
33
- function Merkle(leaves, hasher) {
34
- if (hasher === void 0) { hasher = crypto.sha256; }
7
+ export class Merkle {
8
+ constructor(leaves, hasher = crypto.sha256) {
35
9
  this.leaves = leaves;
36
10
  this.h = hasher;
37
- var nodes = this.calculateRoot(leaves);
11
+ const nodes = this.calculateRoot(leaves);
38
12
  this.rootNode = nodes.root;
39
13
  this.leafNodes = nodes.leaves;
40
14
  }
41
- Merkle.prototype.getRoot = function () {
15
+ getRoot() {
42
16
  return this.rootNode.hash;
43
- };
44
- Merkle.prototype.size = function () {
17
+ }
18
+ size() {
45
19
  return this.leaves.length;
46
- };
47
- Merkle.prototype.getLeaves = function () {
20
+ }
21
+ getLeaves() {
48
22
  return this.leaves;
49
- };
50
- Merkle.prototype.getLeafHash = function (index) {
23
+ }
24
+ getLeafHash(index) {
51
25
  return this.leafNodes[index].hash;
52
- };
53
- Merkle.prototype.getProof = function (index) {
26
+ }
27
+ getProof(index) {
54
28
  if (index >= this.leaves.length)
55
29
  throw Error("Index out of bounds");
56
30
  return proveNode(this.leafNodes[index]);
57
- };
58
- Merkle.prototype.calculateRoot = function (leaves) {
59
- var n = leaves.length;
31
+ }
32
+ calculateRoot(leaves) {
33
+ const n = leaves.length;
60
34
  if (n == 0) {
61
35
  return {
62
36
  root: new Node(undefined, undefined, Buffer.alloc(32, 0)),
63
- leaves: []
37
+ leaves: [],
64
38
  };
65
39
  }
66
40
  if (n == 1) {
67
- var newNode = new Node(undefined, undefined, leaves[0]);
41
+ const newNode = new Node(undefined, undefined, leaves[0]);
68
42
  return { root: newNode, leaves: [newNode] };
69
43
  }
70
- var leftCount = highestPowerOf2LessThan(n);
71
- var leftBranch = this.calculateRoot(leaves.slice(0, leftCount));
72
- var rightBranch = this.calculateRoot(leaves.slice(leftCount));
73
- var leftChild = leftBranch.root;
74
- var rightChild = rightBranch.root;
75
- var hash = this.hashNode(leftChild.hash, rightChild.hash);
76
- var node = new Node(leftChild, rightChild, hash);
44
+ const leftCount = highestPowerOf2LessThan(n);
45
+ const leftBranch = this.calculateRoot(leaves.slice(0, leftCount));
46
+ const rightBranch = this.calculateRoot(leaves.slice(leftCount));
47
+ const leftChild = leftBranch.root;
48
+ const rightChild = rightBranch.root;
49
+ const hash = this.hashNode(leftChild.hash, rightChild.hash);
50
+ const node = new Node(leftChild, rightChild, hash);
77
51
  leftChild.parent = node;
78
52
  rightChild.parent = node;
79
53
  return { root: node, leaves: leftBranch.leaves.concat(rightBranch.leaves) };
80
- };
81
- Merkle.prototype.hashNode = function (left, right) {
54
+ }
55
+ hashNode(left, right) {
82
56
  return this.h(Buffer.concat([Buffer.from([1]), left, right]));
83
- };
84
- return Merkle;
85
- }());
86
- export { Merkle };
87
- export function hashLeaf(buf, hashFunction) {
88
- if (hashFunction === void 0) { hashFunction = crypto.sha256; }
57
+ }
58
+ }
59
+ export function hashLeaf(buf, hashFunction = crypto.sha256) {
89
60
  return hashConcat(Buffer.from([0]), buf, hashFunction);
90
61
  }
91
62
  function hashConcat(bufA, bufB, hashFunction) {
92
63
  return hashFunction(Buffer.concat([bufA, bufB]));
93
64
  }
94
- var Node = /** @class */ (function () {
95
- function Node(left, right, hash) {
65
+ class Node {
66
+ constructor(left, right, hash) {
96
67
  this.leftChild = left;
97
68
  this.rightChild = right;
98
69
  this.hash = hash;
99
70
  }
100
- Node.prototype.isLeaf = function () {
71
+ isLeaf() {
101
72
  return this.leftChild == undefined;
102
- };
103
- return Node;
104
- }());
73
+ }
74
+ }
105
75
  function proveNode(node) {
106
76
  if (!node.parent) {
107
77
  return [];
@@ -110,13 +80,13 @@ function proveNode(node) {
110
80
  if (!node.parent.rightChild) {
111
81
  throw new Error("Expected right child to exist");
112
82
  }
113
- return __spreadArray([node.parent.rightChild.hash], __read(proveNode(node.parent)), false);
83
+ return [node.parent.rightChild.hash, ...proveNode(node.parent)];
114
84
  }
115
85
  else {
116
86
  if (!node.parent.leftChild) {
117
87
  throw new Error("Expected left child to exist");
118
88
  }
119
- return __spreadArray([node.parent.leftChild.hash], __read(proveNode(node.parent)), false);
89
+ return [node.parent.leftChild.hash, ...proveNode(node.parent)];
120
90
  }
121
91
  }
122
92
  function highestPowerOf2LessThan(n) {
@@ -1 +1 @@
1
- {"version":3,"file":"merkle.js","sourceRoot":"","sources":["../../src/newops/merkle.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"merkle.js","sourceRoot":"","sources":["../../src/newops/merkle.ts"],"names":[],"mappings":"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"}
@@ -10,35 +10,33 @@ import { hashLeaf, Merkle } from "./merkle";
10
10
  * in the map followed by the keys' merkle root followed by the
11
11
  * values' merkle root.
12
12
  */
13
- var MerkleMap = /** @class */ (function () {
13
+ export class MerkleMap {
14
14
  /**
15
15
  * @param keys Sorted list of (unhashed) keys
16
16
  * @param values values, in corresponding order as the keys, and of equal length
17
17
  */
18
- function MerkleMap(keys, values) {
18
+ constructor(keys, values) {
19
19
  if (keys.length != values.length) {
20
20
  throw new Error("keys and values should have the same length");
21
21
  }
22
22
  // Sanity check: verify that keys are actually sorted and with no duplicates
23
- for (var i = 0; i < keys.length - 1; i++) {
23
+ for (let i = 0; i < keys.length - 1; i++) {
24
24
  if (keys[i].toString("hex") >= keys[i + 1].toString("hex")) {
25
25
  throw new Error("keys must be in strictly increasing order");
26
26
  }
27
27
  }
28
28
  this.keys = keys;
29
- this.keysTree = new Merkle(keys.map(function (k) { return hashLeaf(k); }));
29
+ this.keysTree = new Merkle(keys.map((k) => hashLeaf(k)));
30
30
  this.values = values;
31
- this.valuesTree = new Merkle(values.map(function (v) { return hashLeaf(v); }));
31
+ this.valuesTree = new Merkle(values.map((v) => hashLeaf(v)));
32
32
  }
33
- MerkleMap.prototype.commitment = function () {
33
+ commitment() {
34
34
  // returns a buffer between 65 and 73 (included) bytes long
35
35
  return Buffer.concat([
36
36
  createVarint(this.keys.length),
37
37
  this.keysTree.getRoot(),
38
38
  this.valuesTree.getRoot(),
39
39
  ]);
40
- };
41
- return MerkleMap;
42
- }());
43
- export { MerkleMap };
40
+ }
41
+ }
44
42
  //# sourceMappingURL=merkleMap.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"merkleMap.js","sourceRoot":"","sources":["../../src/newops/merkleMap.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,WAAW,CAAC;AACzC,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAE5C;;;;;;;;;GASG;AACH;IAKE;;;OAGG;IACH,mBAAY,IAAc,EAAE,MAAgB;QAC1C,IAAI,IAAI,CAAC,MAAM,IAAI,MAAM,CAAC,MAAM,EAAE;YAChC,MAAM,IAAI,KAAK,CAAC,6CAA6C,CAAC,CAAC;SAChE;QAED,4EAA4E;QAC5E,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC,EAAE,EAAE;YACxC,IAAI,IAAI,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE;gBAC1D,MAAM,IAAI,KAAK,CAAC,2CAA2C,CAAC,CAAC;aAC9D;SACF;QAED,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;QACjB,IAAI,CAAC,QAAQ,GAAG,IAAI,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,UAAC,CAAC,IAAK,OAAA,QAAQ,CAAC,CAAC,CAAC,EAAX,CAAW,CAAC,CAAC,CAAC;QACzD,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;QACrB,IAAI,CAAC,UAAU,GAAG,IAAI,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,UAAC,CAAC,IAAK,OAAA,QAAQ,CAAC,CAAC,CAAC,EAAX,CAAW,CAAC,CAAC,CAAC;IAC/D,CAAC;IAED,8BAAU,GAAV;QACE,2DAA2D;QAC3D,OAAO,MAAM,CAAC,MAAM,CAAC;YACnB,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC;YAC9B,IAAI,CAAC,QAAQ,CAAC,OAAO,EAAE;YACvB,IAAI,CAAC,UAAU,CAAC,OAAO,EAAE;SAC1B,CAAC,CAAC;IACL,CAAC;IACH,gBAAC;AAAD,CAAC,AAnCD,IAmCC"}
1
+ {"version":3,"file":"merkleMap.js","sourceRoot":"","sources":["../../src/newops/merkleMap.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,WAAW,CAAC;AACzC,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAE5C;;;;;;;;;GASG;AACH,MAAM,OAAO,SAAS;IAKpB;;;OAGG;IACH,YAAY,IAAc,EAAE,MAAgB;QAC1C,IAAI,IAAI,CAAC,MAAM,IAAI,MAAM,CAAC,MAAM,EAAE;YAChC,MAAM,IAAI,KAAK,CAAC,6CAA6C,CAAC,CAAC;SAChE;QAED,4EAA4E;QAC5E,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC,EAAE,EAAE;YACxC,IAAI,IAAI,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE;gBAC1D,MAAM,IAAI,KAAK,CAAC,2CAA2C,CAAC,CAAC;aAC9D;SACF;QAED,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;QACjB,IAAI,CAAC,QAAQ,GAAG,IAAI,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QACzD,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;QACrB,IAAI,CAAC,UAAU,GAAG,IAAI,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IAC/D,CAAC;IAED,UAAU;QACR,2DAA2D;QAC3D,OAAO,MAAM,CAAC,MAAM,CAAC;YACnB,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC;YAC9B,IAAI,CAAC,QAAQ,CAAC,OAAO,EAAE;YACvB,IAAI,CAAC,UAAU,CAAC,OAAO,EAAE;SAC1B,CAAC,CAAC;IACL,CAAC;CACF"}
@@ -1,5 +1,5 @@
1
1
  /// <reference types="node" />
2
- export declare type DefaultDescriptorTemplate = "pkh(@0)" | "sh(wpkh(@0))" | "wpkh(@0)" | "tr(@0)";
2
+ export type DefaultDescriptorTemplate = "pkh(@0)" | "sh(wpkh(@0))" | "wpkh(@0)" | "tr(@0)";
3
3
  /**
4
4
  * The Bitcon hardware app uses a descriptors-like thing to describe
5
5
  * how to construct output scripts from keys. A "Wallet Policy" consists
@@ -1 +1 @@
1
- {"version":3,"file":"policy.d.ts","sourceRoot":"","sources":["../../src/newops/policy.ts"],"names":[],"mappings":";AAKA,oBAAY,yBAAyB,GACjC,SAAS,GACT,cAAc,GACd,UAAU,GACV,QAAQ,CAAC;AAEb;;;;;;;GAOG;AACH,qBAAa,YAAY;IACvB,kBAAkB,EAAE,MAAM,CAAC;IAC3B,IAAI,EAAE,MAAM,EAAE,CAAC;IACf;;OAEG;gBACS,kBAAkB,EAAE,yBAAyB,EAAE,GAAG,EAAE,MAAM;IAKtE,WAAW,IAAI,MAAM;IAKrB,SAAS,IAAI,MAAM;CAapB;AAED,wBAAgB,SAAS,CACvB,iBAAiB,EAAE,MAAM,EACzB,IAAI,EAAE,MAAM,EAAE,EACd,IAAI,EAAE,MAAM,GACX,MAAM,CAKR"}
1
+ {"version":3,"file":"policy.d.ts","sourceRoot":"","sources":["../../src/newops/policy.ts"],"names":[],"mappings":";AAKA,MAAM,MAAM,yBAAyB,GACjC,SAAS,GACT,cAAc,GACd,UAAU,GACV,QAAQ,CAAC;AAEb;;;;;;;GAOG;AACH,qBAAa,YAAY;IACvB,kBAAkB,EAAE,MAAM,CAAC;IAC3B,IAAI,EAAE,MAAM,EAAE,CAAC;IACf;;OAEG;gBACS,kBAAkB,EAAE,yBAAyB,EAAE,GAAG,EAAE,MAAM;IAKtE,WAAW,IAAI,MAAM;IAKrB,SAAS,IAAI,MAAM;CAapB;AAED,wBAAgB,SAAS,CACvB,iBAAiB,EAAE,MAAM,EACzB,IAAI,EAAE,MAAM,EAAE,EACd,IAAI,EAAE,MAAM,GACX,MAAM,CAKR"}
@@ -10,35 +10,33 @@ import { hashLeaf, Merkle } from "./merkle";
10
10
  * information. This is documented at
11
11
  * https://github.com/LedgerHQ/app-bitcoin-new/blob/master/doc/wallet.md
12
12
  */
13
- var WalletPolicy = /** @class */ (function () {
13
+ export class WalletPolicy {
14
14
  /**
15
15
  * For now, we only support default descriptor templates.
16
16
  */
17
- function WalletPolicy(descriptorTemplate, key) {
17
+ constructor(descriptorTemplate, key) {
18
18
  this.descriptorTemplate = descriptorTemplate;
19
19
  this.keys = [key];
20
20
  }
21
- WalletPolicy.prototype.getWalletId = function () {
21
+ getWalletId() {
22
22
  // wallet_id (sha256 of the wallet serialization),
23
23
  return crypto.sha256(this.serialize());
24
- };
25
- WalletPolicy.prototype.serialize = function () {
26
- var keyBuffers = this.keys.map(function (k) {
24
+ }
25
+ serialize() {
26
+ const keyBuffers = this.keys.map((k) => {
27
27
  return Buffer.from(k, "ascii");
28
28
  });
29
- var m = new Merkle(keyBuffers.map(function (k) { return hashLeaf(k); }));
30
- var buf = new BufferWriter();
29
+ const m = new Merkle(keyBuffers.map((k) => hashLeaf(k)));
30
+ const buf = new BufferWriter();
31
31
  buf.writeUInt8(0x01); // wallet type (policy map)
32
32
  buf.writeUInt8(0); // length of wallet name (empty string for default wallets)
33
33
  buf.writeVarSlice(Buffer.from(this.descriptorTemplate, "ascii"));
34
34
  buf.writeVarInt(this.keys.length), buf.writeSlice(m.getRoot());
35
35
  return buf.buffer();
36
- };
37
- return WalletPolicy;
38
- }());
39
- export { WalletPolicy };
36
+ }
37
+ }
40
38
  export function createKey(masterFingerprint, path, xpub) {
41
- var accountPath = pathArrayToString(path);
42
- return "[".concat(masterFingerprint.toString("hex")).concat(accountPath.substring(1), "]").concat(xpub, "/**");
39
+ const accountPath = pathArrayToString(path);
40
+ return `[${masterFingerprint.toString("hex")}${accountPath.substring(1)}]${xpub}/**`;
43
41
  }
44
42
  //# sourceMappingURL=policy.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"policy.js","sourceRoot":"","sources":["../../src/newops/policy.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,eAAe,CAAC;AACvC,OAAO,EAAE,iBAAiB,EAAE,MAAM,UAAU,CAAC;AAC7C,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAC9C,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAQ5C;;;;;;;GAOG;AACH;IAGE;;OAEG;IACH,sBAAY,kBAA6C,EAAE,GAAW;QACpE,IAAI,CAAC,kBAAkB,GAAG,kBAAkB,CAAC;QAC7C,IAAI,CAAC,IAAI,GAAG,CAAC,GAAG,CAAC,CAAC;IACpB,CAAC;IAED,kCAAW,GAAX;QACE,kDAAkD;QAClD,OAAO,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,SAAS,EAAE,CAAC,CAAC;IACzC,CAAC;IAED,gCAAS,GAAT;QACE,IAAM,UAAU,GAAG,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,UAAC,CAAC;YACjC,OAAO,MAAM,CAAC,IAAI,CAAC,CAAC,EAAE,OAAO,CAAC,CAAC;QACjC,CAAC,CAAC,CAAC;QACH,IAAM,CAAC,GAAG,IAAI,MAAM,CAAC,UAAU,CAAC,GAAG,CAAC,UAAC,CAAC,IAAK,OAAA,QAAQ,CAAC,CAAC,CAAC,EAAX,CAAW,CAAC,CAAC,CAAC;QAEzD,IAAM,GAAG,GAAG,IAAI,YAAY,EAAE,CAAC;QAC/B,GAAG,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,2BAA2B;QACjD,GAAG,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC,2DAA2D;QAC9E,GAAG,CAAC,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,kBAAkB,EAAE,OAAO,CAAC,CAAC,CAAC;QACjE,GAAG,CAAC,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,GAAG,CAAC,UAAU,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC;QAC/D,OAAO,GAAG,CAAC,MAAM,EAAE,CAAC;IACtB,CAAC;IACH,mBAAC;AAAD,CAAC,AA7BD,IA6BC;;AAED,MAAM,UAAU,SAAS,CACvB,iBAAyB,EACzB,IAAc,EACd,IAAY;IAEZ,IAAM,WAAW,GAAG,iBAAiB,CAAC,IAAI,CAAC,CAAC;IAC5C,OAAO,WAAI,iBAAiB,CAAC,QAAQ,CAAC,KAAK,CAAC,SAAG,WAAW,CAAC,SAAS,CAClE,CAAC,CACF,cAAI,IAAI,QAAK,CAAC;AACjB,CAAC"}
1
+ {"version":3,"file":"policy.js","sourceRoot":"","sources":["../../src/newops/policy.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,eAAe,CAAC;AACvC,OAAO,EAAE,iBAAiB,EAAE,MAAM,UAAU,CAAC;AAC7C,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAC9C,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAQ5C;;;;;;;GAOG;AACH,MAAM,OAAO,YAAY;IAGvB;;OAEG;IACH,YAAY,kBAA6C,EAAE,GAAW;QACpE,IAAI,CAAC,kBAAkB,GAAG,kBAAkB,CAAC;QAC7C,IAAI,CAAC,IAAI,GAAG,CAAC,GAAG,CAAC,CAAC;IACpB,CAAC;IAED,WAAW;QACT,kDAAkD;QAClD,OAAO,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,SAAS,EAAE,CAAC,CAAC;IACzC,CAAC;IAED,SAAS;QACP,MAAM,UAAU,GAAG,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE;YACrC,OAAO,MAAM,CAAC,IAAI,CAAC,CAAC,EAAE,OAAO,CAAC,CAAC;QACjC,CAAC,CAAC,CAAC;QACH,MAAM,CAAC,GAAG,IAAI,MAAM,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QAEzD,MAAM,GAAG,GAAG,IAAI,YAAY,EAAE,CAAC;QAC/B,GAAG,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,2BAA2B;QACjD,GAAG,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC,2DAA2D;QAC9E,GAAG,CAAC,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,kBAAkB,EAAE,OAAO,CAAC,CAAC,CAAC;QACjE,GAAG,CAAC,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,GAAG,CAAC,UAAU,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC;QAC/D,OAAO,GAAG,CAAC,MAAM,EAAE,CAAC;IACtB,CAAC;CACF;AAED,MAAM,UAAU,SAAS,CACvB,iBAAyB,EACzB,IAAc,EACd,IAAY;IAEZ,MAAM,WAAW,GAAG,iBAAiB,CAAC,IAAI,CAAC,CAAC;IAC5C,OAAO,IAAI,iBAAiB,CAAC,QAAQ,CAAC,KAAK,CAAC,GAAG,WAAW,CAAC,SAAS,CAClE,CAAC,CACF,IAAI,IAAI,KAAK,CAAC;AACjB,CAAC"}
@@ -7,16 +7,16 @@ import { BufferWriter } from "../buffertools";
7
7
  */
8
8
  export function extract(psbt) {
9
9
  var _a, _b;
10
- var tx = new BufferWriter();
10
+ const tx = new BufferWriter();
11
11
  tx.writeUInt32(psbt.getGlobalTxVersion());
12
- var isSegwit = !!psbt.getInputWitnessUtxo(0);
12
+ const isSegwit = !!psbt.getInputWitnessUtxo(0);
13
13
  if (isSegwit) {
14
14
  tx.writeSlice(Buffer.from([0, 1]));
15
15
  }
16
- var inputCount = psbt.getGlobalInputCount();
16
+ const inputCount = psbt.getGlobalInputCount();
17
17
  tx.writeVarInt(inputCount);
18
- var witnessWriter = new BufferWriter();
19
- for (var i = 0; i < inputCount; i++) {
18
+ const witnessWriter = new BufferWriter();
19
+ for (let i = 0; i < inputCount; i++) {
20
20
  tx.writeSlice(psbt.getInputPreviousTxid(i));
21
21
  tx.writeUInt32(psbt.getInputOutputIndex(i));
22
22
  tx.writeVarSlice((_a = psbt.getInputFinalScriptsig(i)) !== null && _a !== void 0 ? _a : Buffer.from([]));
@@ -25,9 +25,9 @@ export function extract(psbt) {
25
25
  witnessWriter.writeSlice(psbt.getInputFinalScriptwitness(i));
26
26
  }
27
27
  }
28
- var outputCount = psbt.getGlobalOutputCount();
28
+ const outputCount = psbt.getGlobalOutputCount();
29
29
  tx.writeVarInt(outputCount);
30
- for (var i = 0; i < outputCount; i++) {
30
+ for (let i = 0; i < outputCount; i++) {
31
31
  tx.writeUInt64(psbt.getOutputAmount(i));
32
32
  tx.writeVarSlice(psbt.getOutputScript(i));
33
33
  }
@@ -1 +1 @@
1
- {"version":3,"file":"psbtExtractor.js","sourceRoot":"","sources":["../../src/newops/psbtExtractor.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAG9C;;;;;GAKG;AACH,MAAM,UAAU,OAAO,CAAC,IAAY;;IAClC,IAAM,EAAE,GAAG,IAAI,YAAY,EAAE,CAAC;IAC9B,EAAE,CAAC,WAAW,CAAC,IAAI,CAAC,kBAAkB,EAAE,CAAC,CAAC;IAE1C,IAAM,QAAQ,GAAG,CAAC,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAC,CAAC,CAAC;IAC/C,IAAI,QAAQ,EAAE;QACZ,EAAE,CAAC,UAAU,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;KACpC;IACD,IAAM,UAAU,GAAG,IAAI,CAAC,mBAAmB,EAAE,CAAC;IAC9C,EAAE,CAAC,WAAW,CAAC,UAAU,CAAC,CAAC;IAC3B,IAAM,aAAa,GAAG,IAAI,YAAY,EAAE,CAAC;IACzC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,UAAU,EAAE,CAAC,EAAE,EAAE;QACnC,EAAE,CAAC,UAAU,CAAC,IAAI,CAAC,oBAAoB,CAAC,CAAC,CAAC,CAAC,CAAC;QAC5C,EAAE,CAAC,WAAW,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAC,CAAC,CAAC,CAAC;QAC5C,EAAE,CAAC,aAAa,CAAC,MAAA,IAAI,CAAC,sBAAsB,CAAC,CAAC,CAAC,mCAAI,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC;QACpE,EAAE,CAAC,WAAW,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC,CAAC,CAAC,CAAC;QACzC,IAAI,QAAQ,EAAE;YACZ,aAAa,CAAC,UAAU,CAAC,IAAI,CAAC,0BAA0B,CAAC,CAAC,CAAC,CAAC,CAAC;SAC9D;KACF;IACD,IAAM,WAAW,GAAG,IAAI,CAAC,oBAAoB,EAAE,CAAC;IAChD,EAAE,CAAC,WAAW,CAAC,WAAW,CAAC,CAAC;IAC5B,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,WAAW,EAAE,CAAC,EAAE,EAAE;QACpC,EAAE,CAAC,WAAW,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC,CAAC;QACxC,EAAE,CAAC,aAAa,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC,CAAC;KAC3C;IACD,EAAE,CAAC,UAAU,CAAC,aAAa,CAAC,MAAM,EAAE,CAAC,CAAC;IACtC,EAAE,CAAC,WAAW,CAAC,MAAA,IAAI,CAAC,yBAAyB,EAAE,mCAAI,CAAC,CAAC,CAAC;IACtD,OAAO,EAAE,CAAC,MAAM,EAAE,CAAC;AACrB,CAAC"}
1
+ {"version":3,"file":"psbtExtractor.js","sourceRoot":"","sources":["../../src/newops/psbtExtractor.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAG9C;;;;;GAKG;AACH,MAAM,UAAU,OAAO,CAAC,IAAY;;IAClC,MAAM,EAAE,GAAG,IAAI,YAAY,EAAE,CAAC;IAC9B,EAAE,CAAC,WAAW,CAAC,IAAI,CAAC,kBAAkB,EAAE,CAAC,CAAC;IAE1C,MAAM,QAAQ,GAAG,CAAC,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAC,CAAC,CAAC;IAC/C,IAAI,QAAQ,EAAE;QACZ,EAAE,CAAC,UAAU,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;KACpC;IACD,MAAM,UAAU,GAAG,IAAI,CAAC,mBAAmB,EAAE,CAAC;IAC9C,EAAE,CAAC,WAAW,CAAC,UAAU,CAAC,CAAC;IAC3B,MAAM,aAAa,GAAG,IAAI,YAAY,EAAE,CAAC;IACzC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,UAAU,EAAE,CAAC,EAAE,EAAE;QACnC,EAAE,CAAC,UAAU,CAAC,IAAI,CAAC,oBAAoB,CAAC,CAAC,CAAC,CAAC,CAAC;QAC5C,EAAE,CAAC,WAAW,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAC,CAAC,CAAC,CAAC;QAC5C,EAAE,CAAC,aAAa,CAAC,MAAA,IAAI,CAAC,sBAAsB,CAAC,CAAC,CAAC,mCAAI,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC;QACpE,EAAE,CAAC,WAAW,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC,CAAC,CAAC,CAAC;QACzC,IAAI,QAAQ,EAAE;YACZ,aAAa,CAAC,UAAU,CAAC,IAAI,CAAC,0BAA0B,CAAC,CAAC,CAAC,CAAC,CAAC;SAC9D;KACF;IACD,MAAM,WAAW,GAAG,IAAI,CAAC,oBAAoB,EAAE,CAAC;IAChD,EAAE,CAAC,WAAW,CAAC,WAAW,CAAC,CAAC;IAC5B,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,WAAW,EAAE,CAAC,EAAE,EAAE;QACpC,EAAE,CAAC,WAAW,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC,CAAC;QACxC,EAAE,CAAC,aAAa,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC,CAAC;KAC3C;IACD,EAAE,CAAC,UAAU,CAAC,aAAa,CAAC,MAAM,EAAE,CAAC,CAAC;IACtC,EAAE,CAAC,WAAW,CAAC,MAAA,IAAI,CAAC,yBAAyB,EAAE,mCAAI,CAAC,CAAC,CAAC;IACtD,OAAO,EAAE,CAAC,MAAM,EAAE,CAAC;AACrB,CAAC"}
@@ -16,28 +16,28 @@ import { psbtIn } from "./psbtv2";
16
16
  */
17
17
  export function finalize(psbt) {
18
18
  // First check that each input has a signature
19
- var inputCount = psbt.getGlobalInputCount();
20
- for (var i = 0; i < inputCount; i++) {
21
- var legacyPubkeys = psbt.getInputKeyDatas(i, psbtIn.PARTIAL_SIG);
22
- var taprootSig = psbt.getInputTapKeySig(i);
19
+ const inputCount = psbt.getGlobalInputCount();
20
+ for (let i = 0; i < inputCount; i++) {
21
+ const legacyPubkeys = psbt.getInputKeyDatas(i, psbtIn.PARTIAL_SIG);
22
+ const taprootSig = psbt.getInputTapKeySig(i);
23
23
  if (legacyPubkeys.length == 0 && !taprootSig) {
24
- throw Error("No signature for input ".concat(i, " present"));
24
+ throw Error(`No signature for input ${i} present`);
25
25
  }
26
26
  if (legacyPubkeys.length > 0) {
27
27
  if (legacyPubkeys.length > 1) {
28
- throw Error("Expected exactly one signature, got ".concat(legacyPubkeys.length));
28
+ throw Error(`Expected exactly one signature, got ${legacyPubkeys.length}`);
29
29
  }
30
30
  if (taprootSig) {
31
31
  throw Error("Both taproot and non-taproot signatures present.");
32
32
  }
33
- var isSegwitV0 = !!psbt.getInputWitnessUtxo(i);
34
- var redeemScript = psbt.getInputRedeemScript(i);
35
- var isWrappedSegwit = !!redeemScript;
36
- var signature = psbt.getInputPartialSig(i, legacyPubkeys[0]);
33
+ const isSegwitV0 = !!psbt.getInputWitnessUtxo(i);
34
+ const redeemScript = psbt.getInputRedeemScript(i);
35
+ const isWrappedSegwit = !!redeemScript;
36
+ const signature = psbt.getInputPartialSig(i, legacyPubkeys[0]);
37
37
  if (!signature)
38
38
  throw new Error("Expected partial signature for input " + i);
39
39
  if (isSegwitV0) {
40
- var witnessBuf = new BufferWriter();
40
+ const witnessBuf = new BufferWriter();
41
41
  witnessBuf.writeVarInt(2);
42
42
  witnessBuf.writeVarInt(signature.length);
43
43
  witnessBuf.writeSlice(signature);
@@ -48,7 +48,7 @@ export function finalize(psbt) {
48
48
  if (!redeemScript || redeemScript.length == 0) {
49
49
  throw new Error("Expected non-empty redeemscript. Can't finalize intput " + i);
50
50
  }
51
- var scriptSigBuf = new BufferWriter();
51
+ const scriptSigBuf = new BufferWriter();
52
52
  // Push redeemScript length
53
53
  scriptSigBuf.writeUInt8(redeemScript.length);
54
54
  scriptSigBuf.writeSlice(redeemScript);
@@ -57,7 +57,7 @@ export function finalize(psbt) {
57
57
  }
58
58
  else {
59
59
  // Legacy input
60
- var scriptSig = new BufferWriter();
60
+ const scriptSig = new BufferWriter();
61
61
  writePush(scriptSig, signature);
62
62
  writePush(scriptSig, legacyPubkeys[0]);
63
63
  psbt.setInputFinalScriptsig(i, scriptSig.buffer());
@@ -65,14 +65,14 @@ export function finalize(psbt) {
65
65
  }
66
66
  else {
67
67
  // Taproot input
68
- var signature = psbt.getInputTapKeySig(i);
68
+ const signature = psbt.getInputTapKeySig(i);
69
69
  if (!signature) {
70
70
  throw Error("No taproot signature found");
71
71
  }
72
72
  if (signature.length != 64 && signature.length != 65) {
73
73
  throw Error("Unexpected length of schnorr signature.");
74
74
  }
75
- var witnessBuf = new BufferWriter();
75
+ const witnessBuf = new BufferWriter();
76
76
  witnessBuf.writeVarInt(1);
77
77
  witnessBuf.writeVarSlice(signature);
78
78
  psbt.setInputFinalScriptwitness(i, witnessBuf.buffer());
@@ -88,14 +88,14 @@ export function finalize(psbt) {
88
88
  * without actually knowing why. I think we should remove them too.
89
89
  */
90
90
  function clearFinalizedInput(psbt, inputIndex) {
91
- var keyTypes = [
91
+ const keyTypes = [
92
92
  psbtIn.BIP32_DERIVATION,
93
93
  psbtIn.PARTIAL_SIG,
94
94
  psbtIn.TAP_BIP32_DERIVATION,
95
95
  psbtIn.TAP_KEY_SIG,
96
96
  ];
97
- var witnessUtxoAvailable = !!psbt.getInputWitnessUtxo(inputIndex);
98
- var nonWitnessUtxoAvailable = !!psbt.getInputNonWitnessUtxo(inputIndex);
97
+ const witnessUtxoAvailable = !!psbt.getInputWitnessUtxo(inputIndex);
98
+ const nonWitnessUtxoAvailable = !!psbt.getInputNonWitnessUtxo(inputIndex);
99
99
  if (witnessUtxoAvailable && nonWitnessUtxoAvailable) {
100
100
  // Remove NON_WITNESS_UTXO for segwit v0 as it's only needed while signing.
101
101
  // Segwit v1 doesn't have NON_WITNESS_UTXO set.
@@ -122,7 +122,7 @@ function writePush(buf, data) {
122
122
  }
123
123
  else if (data.length <= 256 * 256) {
124
124
  buf.writeUInt8(77);
125
- var b = Buffer.alloc(2);
125
+ const b = Buffer.alloc(2);
126
126
  b.writeUInt16LE(data.length, 0);
127
127
  buf.writeSlice(b);
128
128
  }
@@ -1 +1 @@
1
- {"version":3,"file":"psbtFinalizer.js","sourceRoot":"","sources":["../../src/newops/psbtFinalizer.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"psbtFinalizer.js","sourceRoot":"","sources":["../../src/newops/psbtFinalizer.ts"],"names":[],"mappings":"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"}
@@ -144,6 +144,6 @@ export declare class PsbtV2 {
144
144
  private encodeTapBip32Derivation;
145
145
  private decodeTapBip32Derivation;
146
146
  }
147
- declare type KeyType = number;
147
+ type KeyType = number;
148
148
  export {};
149
149
  //# sourceMappingURL=psbtv2.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"psbtv2.d.ts","sourceRoot":"","sources":["../../src/newops/psbtv2.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"psbtv2.d.ts","sourceRoot":"","sources":["../../src/newops/psbtv2.ts"],"names":[],"mappings":"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"}