@taquito/ledger-signer 11.1.0-beta-RC.0 → 11.2.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md CHANGED
@@ -1,26 +1,38 @@
1
1
  # Taquito Ledger Signer package
2
+ *Documentation can be found [here](https://tezostaquito.io/docs/ledger_signer)*
3
+ *TypeDoc style documentation is available [here](https://tezostaquito.io/typedoc/modules/_taquito_ledger_signer.html)*
2
4
 
5
+ ## General Information
3
6
  `@taquito/ledger-signer` is an npm package that provides developers with ledger signing functionality for Taquito. It implements the Signer interface of Taquito, allowing you to sign operations from a Ledger Nano device.
4
7
 
5
- You first need to import the desired transport from the [LedgerJs library](https://github.com/LedgerHQ/ledgerjs). The Ledger Signer has currently been tested with `@ledgerhq/hw-transport-node-hid` for Node-based applications and with `@ledgerhq/hw-transport-u2f` for web applications.
6
- You can pass an instance of the transport of your choice to your Ledger Signer as follows:
8
+ ## Install
9
+ Install the package as follows
10
+ ```
11
+ npm install @taquito/ledger-signer
12
+ ```
13
+
14
+ ## Usage
15
+ ### Prerequisites
16
+ To use the Ledger Signer we must first import the desired transport from the [LedgerJs library](https://github.com/LedgerHQ/ledgerjs).
7
17
 
18
+ The Ledger Signer has currently been tested with `@ledgerhq/hw-transport-node-hid` for Node-based applications and with `@ledgerhq/hw-transport-webhi` for web applications.
19
+
20
+ Pass an instance of the transport of your choice to the Ledger Signer as follows:
8
21
  ```ts
9
- import TransportU2F from '@ledgerhq/hw-transport-u2f';
22
+ import transportWeb from '@ledgerhq/hw-transport-webhi';
10
23
  import { LedgerSigner } from '@taquito/ledger-signer';
11
24
 
12
- const transport = await TransportU2F.create();
25
+ const transport = await transportWeb.create();
13
26
  const ledgerSigner = new LedgerSigner(transport);
14
27
  ```
15
28
 
16
- The constructor of the `LedgerSigner` class can take three other parameters. If none are specified, the default values are used.
29
+ The constructor of the `LedgerSigner` class takes three other optional parameters. If none are specified, the following default values are used:
17
30
 
18
- - path: **default value is "44'/1729'/0'/0'"**
19
- You can use as a parameter the `HDPathTemplate` which refers to `44'/1729'/${account}'/0'`. You have to specify what is the index of the account you want to use. Or you can also use a complete path as a parameter.
20
- _More details about paths below_
21
- - prompt: **default is true**
22
- If true, you will be asked on your Ledger device to send your public key for validation. **_Note that confirmation is required when using `@ledgerhq/hw-transport-u2f`, so you should not set this parameter to false if you are using this transport._**
23
- - derivationType: **default is DerivationType.ED25519**
31
+ - `path`: **default value is "44'/1729'/0'/0'"**
32
+ You can use as a parameter the `HDPathTemplate` which refers to `44'/1729'/${account}'/0'`. You have to specify the index of the account you want to use. Or you can also use a complete path as a parameter. More details about paths [here](https://tezostaquito.io/docs/ledger_signer#derivation-paths-hd-wallet--bip-standards)
33
+ - `prompt`: **default is true**
34
+ If true, you will be asked on your Ledger device to send your public key for validation. **_Note that confirmation is required when using `@ledgerhq/hw-transport-webhi`, so you should not set this parameter to false if you are using this transport._**
35
+ - `derivationType`: **default is DerivationType.ED25519**
24
36
  It can be DerivationType.ED25519 (tz1), DerivationType.SECP256K1 (tz2) or DerivationType.P256 (tz3).
25
37
 
26
38
  ```ts
@@ -34,16 +46,16 @@ const ledgerSigner = new LedgerSigner(
34
46
  );
35
47
  ```
36
48
 
37
- ## Usage
49
+ ### Code Example
38
50
 
39
51
  ```ts
40
52
  import { LedgerSigner } from '@taquito/ledger-signer';
41
- import TransportNodeHid from '@ledgerhq/hw-transport-node-hid';
53
+ import TransportWeb from '@ledgerhq/hw-transport-webhi';
42
54
  import { TezosToolkit } from '@taquito/taquito';
43
55
 
44
56
  const Tezos = new TezosToolkit('https://YOUR_PREFERRED_RPC_URL');
45
57
 
46
- const transport = await TransportNodeHid.create();
58
+ const transport = await TransportWeb.create();
47
59
  const ledgerSigner = new LedgerSigner(transport);
48
60
 
49
61
  Tezos.setProvider({ signer: ledgerSigner });
@@ -53,11 +65,9 @@ const publicKey = await Tezos.signer.publicKey();
53
65
  const publicKeyHash = await Tezos.signer.publicKeyHash();
54
66
  ```
55
67
 
68
+ ## Additional Info
56
69
  See the top-level [https://github.com/ecadlabs/taquito](https://github.com/ecadlabs/taquito) file for details on reporting issues, contributing and versioning.
57
70
 
58
- ## API Documentation
59
-
60
- TypeDoc style documentation is available on-line [here](https://tezostaquito.io/typedoc/modules/_taquito_ledger_signer.html)
61
71
 
62
72
  ## Disclaimer
63
73
 
@@ -12,47 +12,19 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
12
12
  step((generator = generator.apply(thisArg, _arguments || [])).next());
13
13
  });
14
14
  };
15
- var __generator = (this && this.__generator) || function (thisArg, body) {
16
- var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
17
- return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
18
- function verb(n) { return function (v) { return step([n, v]); }; }
19
- function step(op) {
20
- if (f) throw new TypeError("Generator is already executing.");
21
- while (_) try {
22
- if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
23
- if (y = 0, t) op = [op[0] & 2, t.value];
24
- switch (op[0]) {
25
- case 0: case 1: t = op; break;
26
- case 4: _.label++; return { value: op[1], done: false };
27
- case 5: _.label++; y = op[1]; op = [0]; continue;
28
- case 7: op = _.ops.pop(); _.trys.pop(); continue;
29
- default:
30
- if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
31
- if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
32
- if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
33
- if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
34
- if (t[2]) _.ops.pop();
35
- _.trys.pop(); continue;
36
- }
37
- op = body.call(thisArg, _);
38
- } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
39
- if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
40
- }
41
- };
42
15
  Object.defineProperty(exports, "__esModule", { value: true });
43
16
  exports.LedgerSigner = exports.VERSION = exports.HDPathTemplate = exports.DerivationType = void 0;
44
- var utils_1 = require("@taquito/utils");
45
- var utils_2 = require("./utils");
46
- var libsodium_wrappers_1 = require("libsodium-wrappers");
17
+ const utils_1 = require("@taquito/utils");
18
+ const utils_2 = require("./utils");
19
+ const libsodium_wrappers_1 = require("libsodium-wrappers");
47
20
  var DerivationType;
48
21
  (function (DerivationType) {
49
22
  DerivationType[DerivationType["ED25519"] = 0] = "ED25519";
50
23
  DerivationType[DerivationType["SECP256K1"] = 1] = "SECP256K1";
51
- DerivationType[DerivationType["P256"] = 2] = "P256"; // tz3
24
+ DerivationType[DerivationType["P256"] = 2] = "P256";
52
25
  })(DerivationType = exports.DerivationType || (exports.DerivationType = {}));
53
- ;
54
- var HDPathTemplate = function (account) {
55
- return "44'/1729'/" + account + "'/0'";
26
+ const HDPathTemplate = (account) => {
27
+ return `44'/1729'/${account}'/0'`;
56
28
  };
57
29
  exports.HDPathTemplate = HDPathTemplate;
58
30
  var version_1 = require("./version");
@@ -80,11 +52,8 @@ Object.defineProperty(exports, "VERSION", { enumerable: true, get: function () {
80
52
  * const ledgerSigner = new LedgerSigner(transport, "44'/1729'/0'/0'", true, DerivationType.SECP256K1);
81
53
  * ```
82
54
  */
83
- var LedgerSigner = /** @class */ (function () {
84
- function LedgerSigner(transport, path, prompt, derivationType) {
85
- if (path === void 0) { path = "44'/1729'/0'/0'"; }
86
- if (prompt === void 0) { prompt = true; }
87
- if (derivationType === void 0) { derivationType = DerivationType.ED25519; }
55
+ class LedgerSigner {
56
+ constructor(transport, path = "44'/1729'/0'/0'", prompt = true, derivationType = DerivationType.ED25519) {
88
57
  this.transport = transport;
89
58
  this.path = path;
90
59
  this.prompt = prompt;
@@ -94,181 +63,131 @@ var LedgerSigner = /** @class */ (function () {
94
63
  this.INS_GET_PUBLIC_KEY = 0x02; // Instruction code to get the ledger’s internal public key without prompt
95
64
  this.INS_PROMPT_PUBLIC_KEY = 0x03; // Instruction code to get the ledger’s internal public key with prompt
96
65
  this.INS_SIGN = 0x04; // Sign a message with the ledger’s key
97
- this.FIRST_MESSAGE_SEQUENCE = 0X00;
98
- this.LAST_MESSAGE_SEQUENCE = 0X81;
99
- this.OTHER_MESSAGE_SEQUENCE = 0X01;
66
+ this.FIRST_MESSAGE_SEQUENCE = 0x00;
67
+ this.LAST_MESSAGE_SEQUENCE = 0x81;
68
+ this.OTHER_MESSAGE_SEQUENCE = 0x01;
100
69
  this.transport.setScrambleKey('XTZ');
101
70
  if (!path.startsWith("44'/1729'")) {
102
71
  throw new Error("The derivation path must start with 44'/1729'");
103
72
  }
104
73
  if (!Object.values(DerivationType).includes(derivationType)) {
105
- throw new Error("The derivation type must be DerivationType.ED25519, DerivationType.SECP256K1 or DerivationType.P256");
74
+ throw new Error('The derivation type must be DerivationType.ED25519, DerivationType.SECP256K1 or DerivationType.P256');
106
75
  }
107
76
  }
108
- LedgerSigner.prototype.publicKeyHash = function () {
109
- return __awaiter(this, void 0, void 0, function () {
110
- return __generator(this, function (_a) {
111
- switch (_a.label) {
112
- case 0:
113
- if (!!this._publicKeyHash) return [3 /*break*/, 2];
114
- return [4 /*yield*/, this.publicKey()];
115
- case 1:
116
- _a.sent();
117
- _a.label = 2;
118
- case 2:
119
- if (this._publicKeyHash) {
120
- return [2 /*return*/, this._publicKeyHash];
121
- }
122
- throw new Error("Unable to get the public key hash.");
123
- }
124
- });
77
+ publicKeyHash() {
78
+ return __awaiter(this, void 0, void 0, function* () {
79
+ if (!this._publicKeyHash) {
80
+ yield this.publicKey();
81
+ }
82
+ if (this._publicKeyHash) {
83
+ return this._publicKeyHash;
84
+ }
85
+ throw new Error(`Unable to get the public key hash.`);
125
86
  });
126
- };
127
- LedgerSigner.prototype.publicKey = function () {
128
- return __awaiter(this, void 0, void 0, function () {
129
- var responseLedger, publicKeyLength, rawPublicKey, compressedPublicKey, prefixes, publicKey, publicKeyHash;
130
- return __generator(this, function (_a) {
131
- switch (_a.label) {
132
- case 0:
133
- if (this._publicKey) {
134
- return [2 /*return*/, this._publicKey];
135
- }
136
- return [4 /*yield*/, this.getLedgerpublicKey()];
137
- case 1:
138
- responseLedger = _a.sent();
139
- publicKeyLength = responseLedger[0];
140
- rawPublicKey = responseLedger.slice(1, 1 + publicKeyLength);
141
- compressedPublicKey = utils_2.compressPublicKey(rawPublicKey, this.derivationType);
142
- prefixes = this.getPrefixes();
143
- publicKey = utils_1.b58cencode(compressedPublicKey, prefixes.prefPk);
144
- return [4 /*yield*/, libsodium_wrappers_1.default.ready];
145
- case 2:
146
- _a.sent();
147
- publicKeyHash = utils_1.b58cencode(libsodium_wrappers_1.default.crypto_generichash(20, compressedPublicKey), prefixes.prefPkh);
148
- this._publicKey = publicKey;
149
- this._publicKeyHash = publicKeyHash;
150
- return [2 /*return*/, publicKey];
151
- }
152
- });
87
+ }
88
+ publicKey() {
89
+ return __awaiter(this, void 0, void 0, function* () {
90
+ if (this._publicKey) {
91
+ return this._publicKey;
92
+ }
93
+ const responseLedger = yield this.getLedgerpublicKey();
94
+ const publicKeyLength = responseLedger[0];
95
+ const rawPublicKey = responseLedger.slice(1, 1 + publicKeyLength);
96
+ const compressedPublicKey = utils_2.compressPublicKey(rawPublicKey, this.derivationType);
97
+ const prefixes = this.getPrefixes();
98
+ const publicKey = utils_1.b58cencode(compressedPublicKey, prefixes.prefPk);
99
+ yield libsodium_wrappers_1.default.ready;
100
+ const publicKeyHash = utils_1.b58cencode(libsodium_wrappers_1.default.crypto_generichash(20, compressedPublicKey), prefixes.prefPkh);
101
+ this._publicKey = publicKey;
102
+ this._publicKeyHash = publicKeyHash;
103
+ return publicKey;
153
104
  });
154
- };
155
- LedgerSigner.prototype.getLedgerpublicKey = function () {
156
- return __awaiter(this, void 0, void 0, function () {
157
- var ins, responseLedger, error_1;
158
- return __generator(this, function (_a) {
159
- switch (_a.label) {
160
- case 0:
161
- _a.trys.push([0, 2, , 3]);
162
- ins = this.INS_PROMPT_PUBLIC_KEY;
163
- if (this.prompt === false) {
164
- ins = this.INS_GET_PUBLIC_KEY;
165
- }
166
- return [4 /*yield*/, this.transport.send(this.CLA, ins, this.FIRST_MESSAGE_SEQUENCE, this.derivationType, utils_2.transformPathToBuffer(this.path))];
167
- case 1:
168
- responseLedger = _a.sent();
169
- return [2 /*return*/, responseLedger];
170
- case 2:
171
- error_1 = _a.sent();
172
- throw new Error("Unable to retrieve public key");
173
- case 3: return [2 /*return*/];
105
+ }
106
+ getLedgerpublicKey() {
107
+ return __awaiter(this, void 0, void 0, function* () {
108
+ try {
109
+ let ins = this.INS_PROMPT_PUBLIC_KEY;
110
+ if (this.prompt === false) {
111
+ ins = this.INS_GET_PUBLIC_KEY;
174
112
  }
175
- });
113
+ const responseLedger = yield this.transport.send(this.CLA, ins, this.FIRST_MESSAGE_SEQUENCE, this.derivationType, utils_2.transformPathToBuffer(this.path));
114
+ return responseLedger;
115
+ }
116
+ catch (error) {
117
+ throw new Error('Unable to retrieve public key');
118
+ }
176
119
  });
177
- };
178
- LedgerSigner.prototype.secretKey = function () {
179
- return __awaiter(this, void 0, void 0, function () {
180
- return __generator(this, function (_a) {
181
- throw new Error('Secret key cannot be exposed');
182
- });
120
+ }
121
+ secretKey() {
122
+ return __awaiter(this, void 0, void 0, function* () {
123
+ throw new Error('Secret key cannot be exposed');
183
124
  });
184
- };
185
- LedgerSigner.prototype.sign = function (bytes, watermark) {
186
- return __awaiter(this, void 0, void 0, function () {
187
- var watermarkedBytes, watermarkedBytes2buff, messageToSend, ledgerResponse, signature, idxLengthRVal, rValue, idxLengthSVal, sValue, signatureBuffer;
188
- return __generator(this, function (_a) {
189
- switch (_a.label) {
190
- case 0:
191
- watermarkedBytes = utils_2.appendWatermark(bytes, watermark);
192
- watermarkedBytes2buff = Buffer.from(watermarkedBytes, "hex");
193
- messageToSend = [];
194
- messageToSend.push(utils_2.transformPathToBuffer(this.path));
195
- messageToSend = utils_2.chunkOperation(messageToSend, watermarkedBytes2buff);
196
- return [4 /*yield*/, this.signWithLedger(messageToSend)];
197
- case 1:
198
- ledgerResponse = _a.sent();
199
- if (this.derivationType === DerivationType.ED25519) {
200
- signature = ledgerResponse.slice(0, ledgerResponse.length - 2).toString('hex');
201
- }
202
- else {
203
- if (!utils_2.validateResponse(ledgerResponse)) {
204
- throw new Error('Cannot parse ledger response.');
205
- }
206
- idxLengthRVal = 3;
207
- rValue = utils_2.extractValue(idxLengthRVal, ledgerResponse);
208
- idxLengthSVal = rValue.idxValueStart + rValue.length + 1;
209
- sValue = utils_2.extractValue(idxLengthSVal, ledgerResponse);
210
- signatureBuffer = Buffer.concat([rValue.buffer, sValue.buffer]);
211
- signature = signatureBuffer.toString('hex');
212
- }
213
- return [2 /*return*/, {
214
- bytes: bytes,
215
- sig: utils_1.b58cencode(signature, utils_1.prefix[utils_1.Prefix.SIG]),
216
- prefixSig: utils_1.b58cencode(signature, this.getPrefixes().prefSig),
217
- sbytes: bytes + signature
218
- }];
125
+ }
126
+ sign(bytes, watermark) {
127
+ return __awaiter(this, void 0, void 0, function* () {
128
+ const watermarkedBytes = utils_2.appendWatermark(bytes, watermark);
129
+ const watermarkedBytes2buff = Buffer.from(watermarkedBytes, 'hex');
130
+ let messageToSend = [];
131
+ messageToSend.push(utils_2.transformPathToBuffer(this.path));
132
+ messageToSend = utils_2.chunkOperation(messageToSend, watermarkedBytes2buff);
133
+ const ledgerResponse = yield this.signWithLedger(messageToSend);
134
+ let signature;
135
+ if (this.derivationType === DerivationType.ED25519) {
136
+ signature = ledgerResponse.slice(0, ledgerResponse.length - 2).toString('hex');
137
+ }
138
+ else {
139
+ if (!utils_2.validateResponse(ledgerResponse)) {
140
+ throw new Error('Cannot parse ledger response.');
219
141
  }
220
- });
142
+ const idxLengthRVal = 3; // Third element of response is length of r value
143
+ const rValue = utils_2.extractValue(idxLengthRVal, ledgerResponse);
144
+ const idxLengthSVal = rValue.idxValueStart + rValue.length + 1;
145
+ const sValue = utils_2.extractValue(idxLengthSVal, ledgerResponse);
146
+ const signatureBuffer = Buffer.concat([rValue.buffer, sValue.buffer]);
147
+ signature = signatureBuffer.toString('hex');
148
+ }
149
+ return {
150
+ bytes,
151
+ sig: utils_1.b58cencode(signature, utils_1.prefix[utils_1.Prefix.SIG]),
152
+ prefixSig: utils_1.b58cencode(signature, this.getPrefixes().prefSig),
153
+ sbytes: bytes + signature,
154
+ };
221
155
  });
222
- };
223
- LedgerSigner.prototype.signWithLedger = function (message) {
224
- return __awaiter(this, void 0, void 0, function () {
225
- var ledgerResponse, i, p1;
226
- return __generator(this, function (_a) {
227
- switch (_a.label) {
228
- case 0: return [4 /*yield*/, this.transport.send(this.CLA, this.INS_SIGN, this.FIRST_MESSAGE_SEQUENCE, this.derivationType, message[0])];
229
- case 1:
230
- ledgerResponse = _a.sent();
231
- i = 1;
232
- _a.label = 2;
233
- case 2:
234
- if (!(i < message.length)) return [3 /*break*/, 5];
235
- p1 = (i === message.length - 1) ? this.LAST_MESSAGE_SEQUENCE : this.OTHER_MESSAGE_SEQUENCE;
236
- return [4 /*yield*/, this.transport.send(this.CLA, this.INS_SIGN, p1, this.derivationType, message[i])];
237
- case 3:
238
- ledgerResponse = _a.sent();
239
- _a.label = 4;
240
- case 4:
241
- i++;
242
- return [3 /*break*/, 2];
243
- case 5: return [2 /*return*/, ledgerResponse];
244
- }
245
- });
156
+ }
157
+ signWithLedger(message) {
158
+ return __awaiter(this, void 0, void 0, function* () {
159
+ // first element of the message represents the path
160
+ let ledgerResponse = yield this.transport.send(this.CLA, this.INS_SIGN, this.FIRST_MESSAGE_SEQUENCE, this.derivationType, message[0]);
161
+ for (let i = 1; i < message.length; i++) {
162
+ const p1 = i === message.length - 1 ? this.LAST_MESSAGE_SEQUENCE : this.OTHER_MESSAGE_SEQUENCE;
163
+ ledgerResponse = yield this.transport.send(this.CLA, this.INS_SIGN, p1, this.derivationType, message[i]);
164
+ }
165
+ return ledgerResponse;
246
166
  });
247
- };
248
- LedgerSigner.prototype.getPrefixes = function () {
167
+ }
168
+ getPrefixes() {
249
169
  if (this.derivationType === DerivationType.ED25519) {
250
170
  return {
251
171
  prefPk: utils_1.prefix[utils_1.Prefix.EDPK],
252
172
  prefPkh: utils_1.prefix[utils_1.Prefix.TZ1],
253
- prefSig: utils_1.prefix[utils_1.Prefix.EDSIG]
173
+ prefSig: utils_1.prefix[utils_1.Prefix.EDSIG],
254
174
  };
255
175
  }
256
176
  else if (this.derivationType === DerivationType.SECP256K1) {
257
177
  return {
258
178
  prefPk: utils_1.prefix[utils_1.Prefix.SPPK],
259
179
  prefPkh: utils_1.prefix[utils_1.Prefix.TZ2],
260
- prefSig: utils_1.prefix[utils_1.Prefix.SPSIG]
180
+ prefSig: utils_1.prefix[utils_1.Prefix.SPSIG],
261
181
  };
262
182
  }
263
183
  else {
264
184
  return {
265
185
  prefPk: utils_1.prefix[utils_1.Prefix.P2PK],
266
186
  prefPkh: utils_1.prefix[utils_1.Prefix.TZ3],
267
- prefSig: utils_1.prefix[utils_1.Prefix.P2SIG]
187
+ prefSig: utils_1.prefix[utils_1.Prefix.P2SIG],
268
188
  };
269
189
  }
270
- };
271
- return LedgerSigner;
272
- }());
190
+ }
191
+ }
273
192
  exports.LedgerSigner = LedgerSigner;
274
193
  //# sourceMappingURL=taquito-ledger-signer.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"taquito-ledger-signer.js","sourceRoot":"","sources":["../../src/taquito-ledger-signer.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"taquito-ledger-signer.js","sourceRoot":"","sources":["../../src/taquito-ledger-signer.ts"],"names":[],"mappings":"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"}
package/dist/lib/utils.js CHANGED
@@ -5,7 +5,7 @@
5
5
  */
6
6
  Object.defineProperty(exports, "__esModule", { value: true });
7
7
  exports.extractValue = exports.validateResponse = exports.chunkOperation = exports.appendWatermark = exports.compressPublicKey = exports.transformPathToBuffer = void 0;
8
- var MAX_CHUNK_SIZE = 230;
8
+ const MAX_CHUNK_SIZE = 230;
9
9
  /**
10
10
  *
11
11
  * @description Convert the path to a buffer that will be used as LC and CDATA in the APDU send to the ledger device (https://github.com/obsidiansystems/ledger-app-tezos/blob/master/APDUs.md)
@@ -14,10 +14,10 @@ var MAX_CHUNK_SIZE = 230;
14
14
  * @returns A buffer where the first element is the length of the path (default is 4), then 3 bytes for each number of the path to which is added 0x8000000
15
15
  */
16
16
  function transformPathToBuffer(path) {
17
- var result = [];
18
- var components = path.split('/');
19
- components.forEach(function (element) {
20
- var toNumber = parseInt(element, 10);
17
+ const result = [];
18
+ const components = path.split('/');
19
+ components.forEach((element) => {
20
+ let toNumber = parseInt(element, 10);
21
21
  if (Number.isNaN(toNumber)) {
22
22
  return;
23
23
  }
@@ -26,9 +26,9 @@ function transformPathToBuffer(path) {
26
26
  }
27
27
  result.push(toNumber);
28
28
  });
29
- var buffer = Buffer.alloc(1 + result.length * 4);
29
+ const buffer = Buffer.alloc(1 + result.length * 4);
30
30
  buffer[0] = result.length;
31
- result.forEach(function (element, index) {
31
+ result.forEach((element, index) => {
32
32
  buffer.writeUInt32BE(element, 1 + 4 * index);
33
33
  });
34
34
  return buffer;
@@ -50,9 +50,9 @@ function compressPublicKey(publicKey, curve) {
50
50
  }
51
51
  exports.compressPublicKey = compressPublicKey;
52
52
  function appendWatermark(bytes, watermark) {
53
- var transactionHex = bytes;
53
+ let transactionHex = bytes;
54
54
  if (typeof watermark !== 'undefined') {
55
- var hexWatermark = Buffer.from(watermark).toString('hex');
55
+ const hexWatermark = Buffer.from(watermark).toString('hex');
56
56
  transactionHex = hexWatermark.concat(bytes);
57
57
  }
58
58
  return transactionHex;
@@ -66,10 +66,10 @@ exports.appendWatermark = appendWatermark;
66
66
  * @returns The instruction to send to the Ledger device
67
67
  */
68
68
  function chunkOperation(messageToSend, operation) {
69
- var offset = 0;
69
+ let offset = 0;
70
70
  while (offset !== operation.length) {
71
- var chunkSize = offset + MAX_CHUNK_SIZE >= operation.length ? operation.length - offset : MAX_CHUNK_SIZE;
72
- var buff = Buffer.alloc(chunkSize);
71
+ const chunkSize = offset + MAX_CHUNK_SIZE >= operation.length ? operation.length - offset : MAX_CHUNK_SIZE;
72
+ const buff = Buffer.alloc(chunkSize);
73
73
  operation.copy(buff, 0, offset, offset + chunkSize);
74
74
  messageToSend.push(buff);
75
75
  offset += chunkSize;
@@ -84,7 +84,7 @@ exports.chunkOperation = chunkOperation;
84
84
  * @returns True if valid, false otherwise
85
85
  */
86
86
  function validateResponse(response) {
87
- var valid = true;
87
+ let valid = true;
88
88
  if (response[0] !== 0x31 && response[0] !== 0x30) {
89
89
  valid = false;
90
90
  }
@@ -94,13 +94,13 @@ function validateResponse(response) {
94
94
  if (response[2] !== 0x02) {
95
95
  valid = false;
96
96
  }
97
- var rLength = response[3];
97
+ const rLength = response[3];
98
98
  if (response[4 + rLength] !== 0x02) {
99
99
  valid = false;
100
100
  }
101
- var idxLengthSVal = 5 + rLength;
102
- var sLength = response[idxLengthSVal];
103
- if ((idxLengthSVal + 1 + sLength) + 2 !== response.length) {
101
+ const idxLengthSVal = 5 + rLength;
102
+ const sLength = response[idxLengthSVal];
103
+ if (idxLengthSVal + 1 + sLength + 2 !== response.length) {
104
104
  valid = false;
105
105
  }
106
106
  return valid;
@@ -114,16 +114,16 @@ exports.validateResponse = validateResponse;
114
114
  * @returns An object that contains the extracted buffer, the index where it starts in the response and the length of the extracted part
115
115
  */
116
116
  function extractValue(idxLength, response) {
117
- var buffer = Buffer.alloc(32);
117
+ const buffer = Buffer.alloc(32);
118
118
  buffer.fill(0);
119
- var length = response[idxLength];
120
- var idxValueStart = idxLength + 1;
119
+ let length = response[idxLength];
120
+ let idxValueStart = idxLength + 1;
121
121
  if (length > 32) {
122
122
  idxValueStart += length - 32;
123
123
  length = 32;
124
124
  }
125
125
  response.copy(buffer, 32 - length, idxValueStart, idxValueStart + length);
126
- return { buffer: buffer, idxValueStart: idxValueStart, length: length };
126
+ return { buffer, idxValueStart, length };
127
127
  }
128
128
  exports.extractValue = extractValue;
129
129
  //# sourceMappingURL=utils.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"utils.js","sourceRoot":"","sources":["../../src/utils.ts"],"names":[],"mappings":";AAAA;;;GAGG;;;AAIH,IAAM,cAAc,GAAG,GAAG,CAAC;AAE3B;;;;;;GAMG;AACH,SAAgB,qBAAqB,CAAC,IAAa;IAC/C,IAAM,MAAM,GAAU,EAAE,CAAC;IACzB,IAAM,UAAU,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;IACnC,UAAU,CAAC,OAAO,CAAC,UAAC,OAAO;QACvB,IAAI,QAAQ,GAAG,QAAQ,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC;QACrC,IAAI,MAAM,CAAC,KAAK,CAAC,QAAQ,CAAC,EAAE;YACxB,OAAO;SACV;QACD,IAAI,OAAO,CAAC,MAAM,GAAG,CAAC,IAAI,OAAO,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,CAAC,KAAK,GAAG,EAAE;YAC3D,QAAQ,IAAI,UAAU,CAAC;SAC1B;QACD,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;IAC1B,CAAC,CAAC,CAAC;IACH,IAAI,MAAM,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC,GAAG,MAAM,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;IACjD,MAAM,CAAC,CAAC,CAAC,GAAG,MAAM,CAAC,MAAM,CAAC;IAC1B,MAAM,CAAC,OAAO,CAAC,UAAC,OAAO,EAAE,KAAK;QAC1B,MAAM,CAAC,aAAa,CAAC,OAAO,EAAE,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC,CAAC;IACjD,CAAC,CAAC,CAAC;IACH,OAAO,MAAM,CAAC;AAClB,CAAC;AAnBD,sDAmBC;AAED;;;GAGG;AACH,SAAgB,iBAAiB,CAAC,SAAiB,EAAE,KAAqB;IACtE,IAAI,KAAK,KAAK,IAAI,EAAC;QACf,SAAS,GAAG,SAAS,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;KAClC;SAAM;QACH,SAAS,CAAC,CAAC,CAAC,GAAG,IAAI,GAAG,CAAC,SAAS,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,CAAC;QAC7C,SAAS,GAAG,SAAS,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;KACtC;IACD,OAAO,SAAS,CAAA;AACpB,CAAC;AARD,8CAQC;AAED,SAAgB,eAAe,CAAC,KAAa,EAAE,SAAsB;IACjE,IAAI,cAAc,GAAG,KAAK,CAAC;IACvB,IAAI,OAAO,SAAS,KAAK,WAAW,EAAE;QACpC,IAAI,YAAY,GAAG,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;QAC1D,cAAc,GAAG,YAAY,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;KAC7C;IACD,OAAO,cAAc,CAAC;AAC9B,CAAC;AAPD,0CAOC;AAED;;;;;;GAMG;AACH,SAAgB,cAAc,CAAC,aAAkB,EAAE,SAAiB;IAChE,IAAI,MAAM,GAAG,CAAC,CAAC;IACf,OAAO,MAAM,KAAK,SAAS,CAAC,MAAM,EAAE;QAChC,IAAI,SAAS,GAAG,MAAM,GAAG,cAAc,IAAI,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC,SAAS,CAAC,MAAM,GAAG,MAAM,CAAC,CAAC,CAAC,cAAc,CAAC;QACzG,IAAM,IAAI,GAAG,MAAM,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC;QACrC,SAAS,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,EAAE,MAAM,EAAE,MAAM,GAAG,SAAS,CAAC,CAAC;QACpD,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACzB,MAAM,IAAI,SAAS,CAAC;KACnB;IACL,OAAO,aAAa,CAAC;AACzB,CAAC;AAVD,wCAUC;AAED;;;;;GAKG;AACH,SAAgB,gBAAgB,CAAC,QAAgB;IAE7C,IAAI,KAAK,GAAG,IAAI,CAAC;IACjB,IAAI,QAAQ,CAAC,CAAC,CAAC,KAAK,IAAI,IAAI,QAAQ,CAAC,CAAC,CAAC,KAAK,IAAI,EAAE;QAC9C,KAAK,GAAG,KAAK,CAAC;KACjB;IACD,IAAI,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,KAAK,QAAQ,CAAC,MAAM,EAAE;QACrC,KAAK,GAAG,KAAK,CAAC;KACjB;IACD,IAAI,QAAQ,CAAC,CAAC,CAAC,KAAK,IAAI,EAAE;QACtB,KAAK,GAAG,KAAK,CAAC;KACjB;IACD,IAAI,OAAO,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAC;IAC1B,IAAI,QAAQ,CAAC,CAAC,GAAG,OAAO,CAAC,KAAK,IAAI,EAAE;QAChC,KAAK,GAAG,KAAK,CAAC;KACjB;IAED,IAAI,aAAa,GAAG,CAAC,GAAG,OAAO,CAAC;IAChC,IAAI,OAAO,GAAG,QAAQ,CAAC,aAAa,CAAC,CAAC;IACtC,IAAG,CAAC,aAAa,GAAG,CAAC,GAAG,OAAO,CAAC,GAAG,CAAC,KAAK,QAAQ,CAAC,MAAM,EAAE;QACtD,KAAK,GAAG,KAAK,CAAC;KACjB;IACD,OAAO,KAAK,CAAC;AACjB,CAAC;AAvBD,4CAuBC;AAED;;;;;;GAMG;AACH,SAAgB,YAAY,CAAC,SAAiB,EAAE,QAAgB;IAC5D,IAAM,MAAM,GAAG,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;IAChC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAEf,IAAI,MAAM,GAAG,QAAQ,CAAC,SAAS,CAAC,CAAC;IACjC,IAAI,aAAa,GAAG,SAAS,GAAG,CAAC,CAAC;IAClC,IAAI,MAAM,GAAG,EAAE,EAAE;QACb,aAAa,IAAI,MAAM,GAAG,EAAE,CAAC;QAC7B,MAAM,GAAG,EAAE,CAAC;KACf;IACD,QAAQ,CAAC,IAAI,CAAC,MAAM,EAAE,EAAE,GAAG,MAAM,EAAE,aAAa,EAAE,aAAa,GAAG,MAAM,CAAC,CAAC;IAC1E,OAAO,EAAC,MAAM,QAAA,EAAE,aAAa,eAAA,EAAE,MAAM,QAAA,EAAC,CAAC;AAC3C,CAAC;AAZD,oCAYC"}
1
+ {"version":3,"file":"utils.js","sourceRoot":"","sources":["../../src/utils.ts"],"names":[],"mappings":"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"}
@@ -2,10 +2,8 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.VERSION = void 0;
4
4
  // IMPORTANT: THIS FILE IS AUTO GENERATED! DO NOT MANUALLY EDIT OR CHECKIN!
5
- /* tslint:disable */
6
5
  exports.VERSION = {
7
- "commitHash": "7f502927fc7d7f4a1075602f960a56af2ff0a5bf",
8
- "version": "11.1.0-beta-RC.0"
6
+ "commitHash": "81f0a5b103f867f57fbe5d526315c375a3788346",
7
+ "version": "11.2.0"
9
8
  };
10
- /* tslint:enable */
11
9
  //# sourceMappingURL=version.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"version.js","sourceRoot":"","sources":["../../src/version.ts"],"names":[],"mappings":";;;AACA,2EAA2E;AAC3E,oBAAoB;AACP,QAAA,OAAO,GAAG;IACnB,YAAY,EAAE,0CAA0C;IACxD,SAAS,EAAE,kBAAkB;CAChC,CAAC;AACF,mBAAmB"}
1
+ {"version":3,"file":"version.js","sourceRoot":"","sources":["../../src/version.ts"],"names":[],"mappings":";;;AACA,2EAA2E;AAC9D,QAAA,OAAO,GAAG;IACnB,YAAY,EAAE,0CAA0C;IACxD,SAAS,EAAE,QAAQ;CACtB,CAAC"}