@ledgerhq/hw-app-algorand 6.29.4 → 6.30.0-next.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.
@@ -1,4 +1,4 @@
1
1
 
2
2
  > @ledgerhq/hw-app-algorand@6.29.4 build /home/runner/work/ledger-live/ledger-live/libs/ledgerjs/packages/hw-app-algorand
3
- > tsc && tsc -m ES6 --outDir lib-es
3
+ > tsc && tsc -m esnext --moduleResolution bundler --outDir lib-es
4
4
 
@@ -1,4 +1,5 @@
1
1
  {
2
2
  "entry": ["src/Algorand.ts"],
3
+ "ignoreUnused": ["jest-sonar"],
3
4
  "ignoreUnimported": []
4
5
  }
package/CHANGELOG.md CHANGED
@@ -1,5 +1,11 @@
1
1
  # @ledgerhq/hw-app-algorand
2
2
 
3
+ ## 6.30.0-next.0
4
+
5
+ ### Minor Changes
6
+
7
+ - [#9298](https://github.com/LedgerHQ/ledger-live/pull/9298) [`2785d49`](https://github.com/LedgerHQ/ledger-live/commit/2785d49ac320498f98ed39b4eccc48310ad35fe1) Thanks [@Canestin](https://github.com/Canestin)! - config coin-integration env for sonarqube
8
+
3
9
  ## 6.29.4
4
10
 
5
11
  ### Patch Changes
package/jest.config.ts CHANGED
@@ -3,4 +3,21 @@ import baseConfig from "../../jest.config";
3
3
  export default {
4
4
  ...baseConfig,
5
5
  rootDir: __dirname,
6
+ collectCoverageFrom: [
7
+ "src/**/*.ts",
8
+ "!src/**/*.test.{ts,tsx}",
9
+ "!src/**/*.spec.{ts,tsx}",
10
+ "!src/**/__tests__/**",
11
+ "!tests/**",
12
+ ],
13
+ coverageReporters: ["json", ["lcov", { projectRoot: "../" }], "json-summary", "text"],
14
+ reporters: [
15
+ [
16
+ "jest-sonar",
17
+ {
18
+ outputName: "hw-app-algorand-sonar-executionTests-report.xml",
19
+ reportedFilePath: "absolute",
20
+ },
21
+ ],
22
+ ],
6
23
  };
package/lib/Algorand.d.ts CHANGED
@@ -1,4 +1,5 @@
1
1
  /// <reference types="node" />
2
+ /// <reference types="node" />
2
3
  /********************************************************************************
3
4
  * Ledger Node JS API
4
5
  * (c) 2017-2018 Ledger
@@ -1 +1 @@
1
- {"version":3,"file":"Algorand.d.ts","sourceRoot":"","sources":["../src/Algorand.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;;kFAekF;AAClF,OAAO,KAAK,SAAS,MAAM,wBAAwB,CAAC;AAiBpD;;;;;;GAMG;AAEH,MAAM,CAAC,OAAO,OAAO,QAAQ;IAC3B,SAAS,EAAE,SAAS,CAAC;gBAET,SAAS,EAAE,SAAS;IAKhC;;;;;;;OAOG;IACH,UAAU,CACR,IAAI,EAAE,MAAM,EACZ,WAAW,CAAC,EAAE,OAAO,GACpB,OAAO,CAAC;QACT,SAAS,EAAE,MAAM,CAAC;QAClB,OAAO,EAAE,MAAM,CAAC;KACjB,CAAC;IAmBF,OAAO,CAAC,CAAC,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,EAAE,EAAE,QAAQ,EAAE,CAAC,IAAI,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,KAAK,OAAO,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,CAAC,EAAE,CAAC;IAchF,IAAI,CACR,IAAI,EAAE,MAAM,EACZ,OAAO,EAAE,MAAM,GACd,OAAO,CAAC;QACT,SAAS,EAAE,IAAI,GAAG,MAAM,CAAC;KAC1B,CAAC;CA+CH"}
1
+ {"version":3,"file":"Algorand.d.ts","sourceRoot":"","sources":["../src/Algorand.ts"],"names":[],"mappings":";;AAAA;;;;;;;;;;;;;;;kFAekF;AAClF,OAAO,KAAK,SAAS,MAAM,wBAAwB,CAAC;AAiBpD;;;;;;GAMG;AAEH,MAAM,CAAC,OAAO,OAAO,QAAQ;IAC3B,SAAS,EAAE,SAAS,CAAC;gBAET,SAAS,EAAE,SAAS;IAKhC;;;;;;;OAOG;IACH,UAAU,CACR,IAAI,EAAE,MAAM,EACZ,WAAW,CAAC,EAAE,OAAO,GACpB,OAAO,CAAC;QACT,SAAS,EAAE,MAAM,CAAC;QAClB,OAAO,EAAE,MAAM,CAAC;KACjB,CAAC;IAmBF,OAAO,CAAC,CAAC,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,EAAE,EAAE,QAAQ,EAAE,CAAC,IAAI,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,KAAK,OAAO,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,CAAC,EAAE,CAAC;IAchF,IAAI,CACR,IAAI,EAAE,MAAM,EACZ,OAAO,EAAE,MAAM,GACd,OAAO,CAAC;QACT,SAAS,EAAE,IAAI,GAAG,MAAM,CAAC;KAC1B,CAAC;CA+CH"}
package/lib/Algorand.js CHANGED
@@ -1,13 +1,4 @@
1
1
  "use strict";
2
- var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
3
- function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
4
- return new (P || (P = Promise))(function (resolve, reject) {
5
- function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
6
- function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
7
- function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
8
- step((generator = generator.apply(thisArg, _arguments || [])).next());
9
- });
10
- };
11
2
  var __importDefault = (this && this.__importDefault) || function (mod) {
12
3
  return (mod && mod.__esModule) ? mod : { "default": mod };
13
4
  };
@@ -36,6 +27,7 @@ const INS_SIGN_MSGPACK = 0x08;
36
27
  * const algo = new Algorand(transport)
37
28
  */
38
29
  class Algorand {
30
+ transport;
39
31
  constructor(transport) {
40
32
  this.transport = transport;
41
33
  transport.decorateAppAPIMethods(this, ["getAddress", "sign"], "ALGO");
@@ -79,36 +71,34 @@ class Algorand {
79
71
  }
80
72
  return Promise.resolve().then(() => iterate(0, arr, []));
81
73
  }
82
- sign(path, message) {
83
- return __awaiter(this, void 0, void 0, function* () {
84
- const bipPath = bip32_path_1.default.fromString(path).toPathArray();
85
- const buf = Buffer.alloc(4);
86
- buf.writeUInt32BE(bipPath[2], 0);
87
- const chunks = [];
88
- const buffer = Buffer.concat([buf, Buffer.from(message, "hex")]);
89
- for (let i = 0; i < buffer.length; i += CHUNK_SIZE) {
90
- let end = i + CHUNK_SIZE;
91
- if (i > buffer.length) {
92
- end = buffer.length;
93
- }
94
- chunks.push(buffer.slice(i, end));
74
+ async sign(path, message) {
75
+ const bipPath = bip32_path_1.default.fromString(path).toPathArray();
76
+ const buf = Buffer.alloc(4);
77
+ buf.writeUInt32BE(bipPath[2], 0);
78
+ const chunks = [];
79
+ const buffer = Buffer.concat([buf, Buffer.from(message, "hex")]);
80
+ for (let i = 0; i < buffer.length; i += CHUNK_SIZE) {
81
+ let end = i + CHUNK_SIZE;
82
+ if (i > buffer.length) {
83
+ end = buffer.length;
95
84
  }
96
- let response = {};
97
- return this.foreach(chunks, (data, j) => this.transport
98
- .send(CLA, INS_SIGN_MSGPACK, j === 0 ? P1_WITH_ACCOUNT_ID : P1_MORE, j + 1 === chunks.length ? P2_LAST : P2_MORE, data, [SW_OK, SW_CANCEL])
99
- .then(apduResponse => (response = apduResponse))).then(() => {
100
- const errorCodeData = response;
101
- if (errorCodeData === 0x6986) {
102
- throw new errors_1.UserRefusedOnDevice();
103
- }
104
- let signature = null;
105
- if (response.length > 0) {
106
- signature = response.slice(0, response.length);
107
- }
108
- return {
109
- signature: signature,
110
- };
111
- });
85
+ chunks.push(buffer.slice(i, end));
86
+ }
87
+ let response = {};
88
+ return this.foreach(chunks, (data, j) => this.transport
89
+ .send(CLA, INS_SIGN_MSGPACK, j === 0 ? P1_WITH_ACCOUNT_ID : P1_MORE, j + 1 === chunks.length ? P2_LAST : P2_MORE, data, [SW_OK, SW_CANCEL])
90
+ .then(apduResponse => (response = apduResponse))).then(() => {
91
+ const errorCodeData = response;
92
+ if (errorCodeData === 0x6986) {
93
+ throw new errors_1.UserRefusedOnDevice();
94
+ }
95
+ let signature = null;
96
+ if (response.length > 0) {
97
+ signature = response.slice(0, response.length);
98
+ }
99
+ return {
100
+ signature: signature,
101
+ };
112
102
  });
113
103
  }
114
104
  }
@@ -1 +1 @@
1
- {"version":3,"file":"Algorand.js","sourceRoot":"","sources":["../src/Algorand.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Algorand.js","sourceRoot":"","sources":["../src/Algorand.ts"],"names":[],"mappings":";;;;;AAiBA,4DAAiC;AACjC,6CAAuD;AACvD,mCAAwC;AACxC,MAAM,UAAU,GAAG,GAAG,CAAC;AACvB,yBAAyB;AACzB,MAAM,OAAO,GAAG,IAAI,CAAC;AACrB,MAAM,kBAAkB,GAAG,IAAI,CAAC;AAChC,MAAM,OAAO,GAAG,IAAI,CAAC;AACrB,MAAM,OAAO,GAAG,IAAI,CAAC;AACrB,MAAM,KAAK,GAAG,MAAM,CAAC;AACrB,MAAM,SAAS,GAAG,MAAM,CAAC;AACzB,MAAM,6BAA6B,GAAG,IAAI,CAAC;AAC3C,YAAY;AACZ,MAAM,GAAG,GAAG,IAAI,CAAC;AACjB,MAAM,kBAAkB,GAAG,IAAI,CAAC;AAChC,MAAM,gBAAgB,GAAG,IAAI,CAAC;AAC9B;;;;;;GAMG;AAEH,MAAqB,QAAQ;IAC3B,SAAS,CAAY;IAErB,YAAY,SAAoB;QAC9B,IAAI,CAAC,SAAS,GAAG,SAAS,CAAC;QAC3B,SAAS,CAAC,qBAAqB,CAAC,IAAI,EAAE,CAAC,YAAY,EAAE,MAAM,CAAC,EAAE,MAAM,CAAC,CAAC;IACxE,CAAC;IAED;;;;;;;OAOG;IACH,UAAU,CACR,IAAY,EACZ,WAAqB;QAKrB,MAAM,OAAO,GAAG,oBAAO,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,WAAW,EAAE,CAAC;QACvD,MAAM,GAAG,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;QAC5B,GAAG,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;QACjC,OAAO,IAAI,CAAC,SAAS;aAClB,IAAI,CAAC,GAAG,EAAE,kBAAkB,EAAE,WAAW,CAAC,CAAC,CAAC,6BAA6B,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,GAAG,EAAE;YACtF,KAAK;SACN,CAAC;aACD,IAAI,CAAC,QAAQ,CAAC,EAAE;YACf,MAAM,MAAM,GAAG,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC;YAClD,MAAM,SAAS,GAAG,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;YACzC,MAAM,OAAO,GAAG,IAAA,qBAAa,EAAC,MAAM,CAAC,CAAC;YACtC,OAAO;gBACL,SAAS;gBACT,OAAO;aACR,CAAC;QACJ,CAAC,CAAC,CAAC;IACP,CAAC;IAED,OAAO,CAAO,GAAQ,EAAE,QAA+C;QACrE,SAAS,OAAO,CAAC,KAAK,EAAE,KAAK,EAAE,MAAM;YACnC,IAAI,KAAK,IAAI,KAAK,CAAC,MAAM,EAAE,CAAC;gBAC1B,OAAO,MAAM,CAAC;YAChB,CAAC;;gBACC,OAAO,QAAQ,CAAC,KAAK,CAAC,KAAK,CAAC,EAAE,KAAK,CAAC,CAAC,IAAI,CAAC,UAAU,GAAG;oBACrD,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;oBACjB,OAAO,OAAO,CAAC,KAAK,GAAG,CAAC,EAAE,KAAK,EAAE,MAAM,CAAC,CAAC;gBAC3C,CAAC,CAAC,CAAC;QACP,CAAC;QAED,OAAO,OAAO,CAAC,OAAO,EAAE,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,OAAO,CAAC,CAAC,EAAE,GAAG,EAAE,EAAE,CAAC,CAAC,CAAC;IAC3D,CAAC;IAED,KAAK,CAAC,IAAI,CACR,IAAY,EACZ,OAAe;QAIf,MAAM,OAAO,GAAG,oBAAO,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,WAAW,EAAE,CAAC;QACvD,MAAM,GAAG,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;QAC5B,GAAG,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;QACjC,MAAM,MAAM,GAAa,EAAE,CAAC;QAC5B,MAAM,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,MAAM,CAAC,IAAI,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC;QAEjE,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,CAAC,IAAI,UAAU,EAAE,CAAC;YACnD,IAAI,GAAG,GAAG,CAAC,GAAG,UAAU,CAAC;YAEzB,IAAI,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,CAAC;gBACtB,GAAG,GAAG,MAAM,CAAC,MAAM,CAAC;YACtB,CAAC;YAED,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,CAAC;QACpC,CAAC;QAED,IAAI,QAAQ,GAAQ,EAAE,CAAC;QACvB,OAAO,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE,CAAC,EAAE,EAAE,CACtC,IAAI,CAAC,SAAS;aACX,IAAI,CACH,GAAG,EACH,gBAAgB,EAChB,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,kBAAkB,CAAC,CAAC,CAAC,OAAO,EACtC,CAAC,GAAG,CAAC,KAAK,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,OAAO,EAC3C,IAAI,EACJ,CAAC,KAAK,EAAE,SAAS,CAAC,CACnB;aACA,IAAI,CAAC,YAAY,CAAC,EAAE,CAAC,CAAC,QAAQ,GAAG,YAAY,CAAC,CAAC,CACnD,CAAC,IAAI,CAAC,GAAG,EAAE;YACV,MAAM,aAAa,GAAG,QAAQ,CAAC;YAE/B,IAAI,aAAa,KAAK,MAAM,EAAE,CAAC;gBAC7B,MAAM,IAAI,4BAAmB,EAAE,CAAC;YAClC,CAAC;YAED,IAAI,SAAS,GAAG,IAAI,CAAC;YAErB,IAAI,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBACxB,SAAS,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC,EAAE,QAAQ,CAAC,MAAM,CAAC,CAAC;YACjD,CAAC;YAED,OAAO;gBACL,SAAS,EAAE,SAAS;aACrB,CAAC;QACJ,CAAC,CAAC,CAAC;IACL,CAAC;CACF;AA3GD,2BA2GC"}
@@ -1,4 +1,5 @@
1
1
  /// <reference types="node" />
2
+ /// <reference types="node" />
2
3
  /********************************************************************************
3
4
  * Ledger Node JS API
4
5
  * (c) 2017-2018 Ledger
@@ -1 +1 @@
1
- {"version":3,"file":"Algorand.d.ts","sourceRoot":"","sources":["../src/Algorand.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;;kFAekF;AAClF,OAAO,KAAK,SAAS,MAAM,wBAAwB,CAAC;AAiBpD;;;;;;GAMG;AAEH,MAAM,CAAC,OAAO,OAAO,QAAQ;IAC3B,SAAS,EAAE,SAAS,CAAC;gBAET,SAAS,EAAE,SAAS;IAKhC;;;;;;;OAOG;IACH,UAAU,CACR,IAAI,EAAE,MAAM,EACZ,WAAW,CAAC,EAAE,OAAO,GACpB,OAAO,CAAC;QACT,SAAS,EAAE,MAAM,CAAC;QAClB,OAAO,EAAE,MAAM,CAAC;KACjB,CAAC;IAmBF,OAAO,CAAC,CAAC,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,EAAE,EAAE,QAAQ,EAAE,CAAC,IAAI,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,KAAK,OAAO,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,CAAC,EAAE,CAAC;IAchF,IAAI,CACR,IAAI,EAAE,MAAM,EACZ,OAAO,EAAE,MAAM,GACd,OAAO,CAAC;QACT,SAAS,EAAE,IAAI,GAAG,MAAM,CAAC;KAC1B,CAAC;CA+CH"}
1
+ {"version":3,"file":"Algorand.d.ts","sourceRoot":"","sources":["../src/Algorand.ts"],"names":[],"mappings":";;AAAA;;;;;;;;;;;;;;;kFAekF;AAClF,OAAO,KAAK,SAAS,MAAM,wBAAwB,CAAC;AAiBpD;;;;;;GAMG;AAEH,MAAM,CAAC,OAAO,OAAO,QAAQ;IAC3B,SAAS,EAAE,SAAS,CAAC;gBAET,SAAS,EAAE,SAAS;IAKhC;;;;;;;OAOG;IACH,UAAU,CACR,IAAI,EAAE,MAAM,EACZ,WAAW,CAAC,EAAE,OAAO,GACpB,OAAO,CAAC;QACT,SAAS,EAAE,MAAM,CAAC;QAClB,OAAO,EAAE,MAAM,CAAC;KACjB,CAAC;IAmBF,OAAO,CAAC,CAAC,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,EAAE,EAAE,QAAQ,EAAE,CAAC,IAAI,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,KAAK,OAAO,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,CAAC,EAAE,CAAC;IAchF,IAAI,CACR,IAAI,EAAE,MAAM,EACZ,OAAO,EAAE,MAAM,GACd,OAAO,CAAC;QACT,SAAS,EAAE,IAAI,GAAG,MAAM,CAAC;KAC1B,CAAC;CA+CH"}
@@ -1,12 +1,3 @@
1
- var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
2
- function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
3
- return new (P || (P = Promise))(function (resolve, reject) {
4
- function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
5
- function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
6
- function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
7
- step((generator = generator.apply(thisArg, _arguments || [])).next());
8
- });
9
- };
10
1
  import BIPPath from "bip32-path";
11
2
  import { UserRefusedOnDevice } from "@ledgerhq/errors";
12
3
  import { encodeAddress } from "./utils";
@@ -31,6 +22,7 @@ const INS_SIGN_MSGPACK = 0x08;
31
22
  * const algo = new Algorand(transport)
32
23
  */
33
24
  export default class Algorand {
25
+ transport;
34
26
  constructor(transport) {
35
27
  this.transport = transport;
36
28
  transport.decorateAppAPIMethods(this, ["getAddress", "sign"], "ALGO");
@@ -74,36 +66,34 @@ export default class Algorand {
74
66
  }
75
67
  return Promise.resolve().then(() => iterate(0, arr, []));
76
68
  }
77
- sign(path, message) {
78
- return __awaiter(this, void 0, void 0, function* () {
79
- const bipPath = BIPPath.fromString(path).toPathArray();
80
- const buf = Buffer.alloc(4);
81
- buf.writeUInt32BE(bipPath[2], 0);
82
- const chunks = [];
83
- const buffer = Buffer.concat([buf, Buffer.from(message, "hex")]);
84
- for (let i = 0; i < buffer.length; i += CHUNK_SIZE) {
85
- let end = i + CHUNK_SIZE;
86
- if (i > buffer.length) {
87
- end = buffer.length;
88
- }
89
- chunks.push(buffer.slice(i, end));
69
+ async sign(path, message) {
70
+ const bipPath = BIPPath.fromString(path).toPathArray();
71
+ const buf = Buffer.alloc(4);
72
+ buf.writeUInt32BE(bipPath[2], 0);
73
+ const chunks = [];
74
+ const buffer = Buffer.concat([buf, Buffer.from(message, "hex")]);
75
+ for (let i = 0; i < buffer.length; i += CHUNK_SIZE) {
76
+ let end = i + CHUNK_SIZE;
77
+ if (i > buffer.length) {
78
+ end = buffer.length;
79
+ }
80
+ chunks.push(buffer.slice(i, end));
81
+ }
82
+ let response = {};
83
+ return this.foreach(chunks, (data, j) => this.transport
84
+ .send(CLA, INS_SIGN_MSGPACK, j === 0 ? P1_WITH_ACCOUNT_ID : P1_MORE, j + 1 === chunks.length ? P2_LAST : P2_MORE, data, [SW_OK, SW_CANCEL])
85
+ .then(apduResponse => (response = apduResponse))).then(() => {
86
+ const errorCodeData = response;
87
+ if (errorCodeData === 0x6986) {
88
+ throw new UserRefusedOnDevice();
89
+ }
90
+ let signature = null;
91
+ if (response.length > 0) {
92
+ signature = response.slice(0, response.length);
90
93
  }
91
- let response = {};
92
- return this.foreach(chunks, (data, j) => this.transport
93
- .send(CLA, INS_SIGN_MSGPACK, j === 0 ? P1_WITH_ACCOUNT_ID : P1_MORE, j + 1 === chunks.length ? P2_LAST : P2_MORE, data, [SW_OK, SW_CANCEL])
94
- .then(apduResponse => (response = apduResponse))).then(() => {
95
- const errorCodeData = response;
96
- if (errorCodeData === 0x6986) {
97
- throw new UserRefusedOnDevice();
98
- }
99
- let signature = null;
100
- if (response.length > 0) {
101
- signature = response.slice(0, response.length);
102
- }
103
- return {
104
- signature: signature,
105
- };
106
- });
94
+ return {
95
+ signature: signature,
96
+ };
107
97
  });
108
98
  }
109
99
  }
@@ -1 +1 @@
1
- {"version":3,"file":"Algorand.js","sourceRoot":"","sources":["../src/Algorand.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Algorand.js","sourceRoot":"","sources":["../src/Algorand.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@ledgerhq/hw-app-algorand",
3
- "version": "6.29.4",
3
+ "version": "6.30.0-next.0",
4
4
  "description": "Ledger Hardware Wallet Algorand Application API",
5
5
  "keywords": [
6
6
  "Ledger",
@@ -36,21 +36,24 @@
36
36
  },
37
37
  "devDependencies": {
38
38
  "@types/jest": "^29.5.10",
39
- "@types/node": "^20.8.10",
39
+ "@types/node": "^22.10.10",
40
40
  "documentation": "14.0.2",
41
41
  "jest": "^29.7.0",
42
42
  "rimraf": "^4.4.1",
43
43
  "source-map-support": "^0.5.21",
44
44
  "ts-jest": "^29.1.1",
45
45
  "ts-node": "^10.4.0",
46
+ "jest-sonar": "0.2.16",
46
47
  "@ledgerhq/hw-transport-mocker": "^6.29.4"
47
48
  },
48
49
  "gitHead": "dd0dea64b58e5a9125c8a422dcffd29e5ef6abec",
49
50
  "scripts": {
50
51
  "clean": "rimraf lib lib-es",
51
- "build": "tsc && tsc -m ES6 --outDir lib-es",
52
+ "build": "tsc && tsc -m esnext --moduleResolution bundler --outDir lib-es",
53
+ "coverage": "jest --coverage --passWithNoTests && mv coverage/coverage-final.json coverage/coverage-hw-app-algorand.json && mv coverage/lcov.info coverage/hw-app-algorand-lcov.info",
52
54
  "prewatch": "pnpm build",
53
55
  "watch": "tsc --watch",
56
+ "watch:es": "tsc --watch -m esnext --moduleResolution bundler --outDir lib-es",
54
57
  "doc": "documentation readme src/** --section=API --pe ts --re ts --re d.ts",
55
58
  "lint": "eslint ./src --no-error-on-unmatched-pattern --ext .ts,.tsx --cache",
56
59
  "lint:fix": "pnpm lint --fix",