@ledgerhq/coin-tezos 2.1.0 → 2.2.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.
package/CHANGELOG.md CHANGED
@@ -1,5 +1,21 @@
1
1
  # @ledgerhq/coin-tezos
2
2
 
3
+ ## 2.2.0-next.0
4
+
5
+ ### Minor Changes
6
+
7
+ - [#9666](https://github.com/LedgerHQ/ledger-live/pull/9666) [`8ce7b0a`](https://github.com/LedgerHQ/ledger-live/commit/8ce7b0ab2d1d73ef071102f795e7c868c676b1f4) Thanks [@Moustafa-Koterba](https://github.com/Moustafa-Koterba)! - update the following modules for an optional fees parameter on craft transaction functions: coin-stellar, coin-tezos, coin-tron, coin-xrp, coin-framework
8
+
9
+ - [#9648](https://github.com/LedgerHQ/ledger-live/pull/9648) [`f1732a7`](https://github.com/LedgerHQ/ledger-live/commit/f1732a795e54f666b67e7686d59926037412caca) Thanks [@sprohaszka-ledger](https://github.com/sprohaszka-ledger)! - Remove SubAccount as it is an alias to TokenAccount
10
+
11
+ ### Patch Changes
12
+
13
+ - Updated dependencies [[`44ae74c`](https://github.com/LedgerHQ/ledger-live/commit/44ae74c272ba803bed7c9f4fc3351e3ce8a15531), [`71bb6a9`](https://github.com/LedgerHQ/ledger-live/commit/71bb6a9adb4ac83172be5def5b25d2836380df1d), [`8ce7b0a`](https://github.com/LedgerHQ/ledger-live/commit/8ce7b0ab2d1d73ef071102f795e7c868c676b1f4), [`46a9620`](https://github.com/LedgerHQ/ledger-live/commit/46a9620b4ea6343efc28792d3b57bf84ee2a23e8), [`1e7d454`](https://github.com/LedgerHQ/ledger-live/commit/1e7d454d99f1f39880f39a120c59020725d26475), [`f1732a7`](https://github.com/LedgerHQ/ledger-live/commit/f1732a795e54f666b67e7686d59926037412caca), [`d694069`](https://github.com/LedgerHQ/ledger-live/commit/d6940698a49b7a0ed48f84d6e8184d80760cca4f)]:
14
+ - @ledgerhq/coin-framework@2.6.0-next.0
15
+ - @ledgerhq/types-live@6.66.0-next.0
16
+ - @ledgerhq/cryptoassets@13.14.1-next.0
17
+ - @ledgerhq/live-network@2.0.7-next.0
18
+
3
19
  ## 2.1.0
4
20
 
5
21
  ### Minor Changes
package/jest.config.js CHANGED
@@ -12,6 +12,7 @@ module.exports = {
12
12
  ],
13
13
  coverageReporters: ["json", ["lcov", { file: "tezos-lcov.info", projectRoot: "../" }], "text"],
14
14
  reporters: [
15
+ "default",
15
16
  [
16
17
  "jest-sonar",
17
18
  { outputName: "tezos-sonar-executionTests-report.xml", reportedFilePath: "absolute" },
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/api/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAKL,KAAK,GAAG,EACT,MAAM,oCAAoC,CAAC;AAC5C,OAAmB,EAAE,KAAK,WAAW,EAAE,MAAM,WAAW,CAAC;AAczD,wBAAgB,SAAS,CAAC,MAAM,EAAE,WAAW,GAAG,GAAG,CAAC,IAAI,CAAC,CAYxD"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/api/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAKL,KAAK,GAAG,EACT,MAAM,oCAAoC,CAAC;AAE5C,OAAmB,EAAE,KAAK,WAAW,EAAE,MAAM,WAAW,CAAC;AAczD,wBAAgB,SAAS,CAAC,MAAM,EAAE,WAAW,GAAG,GAAG,CAAC,IAAI,CAAC,CAYxD"}
@@ -1,5 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
+ const local_forging_1 = require("@taquito/local-forging");
3
4
  const _1 = require(".");
4
5
  /**
5
6
  * https://teztnets.com/ghostnet-about
@@ -84,29 +85,52 @@ describe("Tezos Api", () => {
84
85
  });
85
86
  });
86
87
  describe("craftTransaction", () => {
87
- it.skip.each([
88
- {
89
- type: "send",
90
- rawTx: "6c0053ddb3b3a89ed5c8d8326066032beac6de225c9e010300000a0000a31e81ac3425310e3274a4698a793b2839dc0afa00",
91
- },
92
- {
93
- type: "delegate",
94
- rawTx: "6e0053ddb3b3a89ed5c8d8326066032beac6de225c9e01030000ff00a31e81ac3425310e3274a4698a793b2839dc0afa",
95
- },
96
- {
97
- type: "undelegate",
98
- rawTx: "6e0053ddb3b3a89ed5c8d8326066032beac6de225c9e0103000000",
99
- },
100
- ])("returns a raw transaction with $type", async ({ type, rawTx }) => {
88
+ async function decode(sbytes) {
89
+ return await local_forging_1.localForger.parse(sbytes);
90
+ }
91
+ it.each(["send", "delegate", "undelegate"])("returns a raw transaction with %s", async (type) => {
92
+ const recipient = "tz1aWXP237BLwNHJcCD4b3DutCevhqq2T1Z9";
93
+ const amount = BigInt(10);
101
94
  // When
102
- const result = await module.craftTransaction({
95
+ const encodedTransaction = await module.craftTransaction({
103
96
  type,
104
97
  sender: address,
98
+ recipient: recipient,
99
+ amount: amount,
100
+ });
101
+ const decodedTransaction = await decode(encodedTransaction);
102
+ expect(decodedTransaction.contents).toHaveLength(1);
103
+ const operationContent = decodedTransaction.contents[0];
104
+ expect(operationContent.source).toEqual(address);
105
+ expect(BigInt(operationContent.fee)).toBeGreaterThan(0);
106
+ if (type === "send") {
107
+ expect(BigInt(operationContent.amount)).toEqual(amount);
108
+ expect(operationContent.destination).toEqual(recipient);
109
+ }
110
+ else if (type === "delegate") {
111
+ expect(operationContent.delegate).toEqual(recipient);
112
+ }
113
+ });
114
+ it("should use estimated fees when user does not provide them for crafting a transaction", async () => {
115
+ const encodedTransaction = await module.craftTransaction({
116
+ type: "send",
117
+ sender: address,
105
118
  recipient: "tz1aWXP237BLwNHJcCD4b3DutCevhqq2T1Z9",
106
119
  amount: BigInt(10),
107
120
  });
108
- // Then
109
- expect(result.slice(64)).toEqual(rawTx);
121
+ const decodedTransaction = await decode(encodedTransaction);
122
+ const transactionFee = BigInt(decodedTransaction.contents[0].fee);
123
+ expect(transactionFee).toBeGreaterThan(0);
124
+ });
125
+ it.each([1n, 50n, 99n])("should use custom user fees when user provides it for crafting a transaction", async (customFees) => {
126
+ const encodedTransaction = await module.craftTransaction({
127
+ type: "send",
128
+ sender: address,
129
+ recipient: "tz1aWXP237BLwNHJcCD4b3DutCevhqq2T1Z9",
130
+ amount: BigInt(10),
131
+ }, customFees);
132
+ const decodedTransaction = await decode(encodedTransaction);
133
+ expect(decodedTransaction.contents[0].fee).toEqual(customFees.toString());
110
134
  });
111
135
  });
112
136
  });
@@ -1 +1 @@
1
- {"version":3,"file":"index.integ.test.js","sourceRoot":"","sources":["../../src/api/index.integ.test.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.integ.test.js","sourceRoot":"","sources":["../../src/api/index.integ.test.ts"],"names":[],"mappings":"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"}
package/lib/api/index.js CHANGED
@@ -5,9 +5,9 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
6
  exports.createApi = createApi;
7
7
  const index_1 = require("@ledgerhq/coin-framework/api/index");
8
+ const logs_1 = require("@ledgerhq/logs");
8
9
  const config_1 = __importDefault(require("../config"));
9
10
  const logic_1 = require("../logic");
10
- const logs_1 = require("@ledgerhq/logs");
11
11
  const tzkt_1 = __importDefault(require("../network/tzkt"));
12
12
  function createApi(config) {
13
13
  config_1.default.setCoinConfig(() => ({ ...config, status: { type: "active" } }));
@@ -24,11 +24,11 @@ function createApi(config) {
24
24
  function isTezosTransactionType(type) {
25
25
  return ["send", "delegate", "undelegate"].includes(type);
26
26
  }
27
- async function craft(transactionIntent) {
27
+ async function craft(transactionIntent, customFees) {
28
28
  if (!isTezosTransactionType(transactionIntent.type)) {
29
29
  throw new index_1.IncorrectTypeError(transactionIntent.type);
30
30
  }
31
- const fee = await estimate(transactionIntent);
31
+ const fee = customFees !== undefined ? customFees : await estimate(transactionIntent);
32
32
  const { contents } = await (0, logic_1.craftTransaction)({ address: transactionIntent.sender }, {
33
33
  type: transactionIntent.type,
34
34
  recipient: transactionIntent.recipient,
@@ -38,18 +38,18 @@ async function craft(transactionIntent) {
38
38
  return (0, logic_1.rawEncode)(contents);
39
39
  }
40
40
  async function estimate(transactionIntent) {
41
- const accountInfo = await tzkt_1.default.getAccountByAddress(transactionIntent.recipient);
42
- if (accountInfo.type !== "user")
41
+ const senderAccountInfo = await tzkt_1.default.getAccountByAddress(transactionIntent.sender);
42
+ if (senderAccountInfo.type !== "user")
43
43
  throw new Error("unexpected account type");
44
44
  const estimatedFees = await (0, logic_1.estimateFees)({
45
45
  account: {
46
46
  address: transactionIntent.sender,
47
- revealed: accountInfo.revealed,
48
- balance: BigInt(accountInfo.balance),
49
- xpub: accountInfo.publicKey,
47
+ revealed: senderAccountInfo.revealed,
48
+ balance: BigInt(senderAccountInfo.balance),
49
+ xpub: senderAccountInfo.publicKey,
50
50
  },
51
51
  transaction: {
52
- mode: "send",
52
+ mode: transactionIntent.type,
53
53
  recipient: transactionIntent.recipient,
54
54
  amount: transactionIntent.amount,
55
55
  },
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/api/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/api/index.ts"],"names":[],"mappings":"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"}
@@ -1,12 +1,25 @@
1
1
  "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
2
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
+ const tzkt_1 = __importDefault(require("../network/tzkt"));
3
7
  const index_1 = require("./index");
8
+ const DEFAULT_ESTIMATED_FEES = 300n;
4
9
  const logicGetTransactions = jest.fn();
10
+ const logicEstimateFeesMock = jest.fn(() => Promise.resolve({ estimatedFees: DEFAULT_ESTIMATED_FEES }));
11
+ const logicCraftTransactionMock = jest.fn((_account, _transaction) => {
12
+ return { type: undefined, contents: undefined };
13
+ });
5
14
  jest.mock("../logic", () => ({
6
- listOperations: async () => {
7
- return logicGetTransactions();
8
- },
15
+ listOperations: async () => logicGetTransactions(),
16
+ estimateFees: async () => logicEstimateFeesMock(),
17
+ craftTransaction: (account, transaction) => logicCraftTransactionMock(account, transaction),
18
+ rawEncode: () => Promise.resolve("tz1heMGVHQnx7ALDcDKqez8fan64Eyicw4DJ"),
9
19
  }));
20
+ jest
21
+ .spyOn(tzkt_1.default, "getAccountByAddress")
22
+ .mockImplementation((_adress) => Promise.resolve({ type: "user", balance: 1000 }));
10
23
  const api = (0, index_1.createApi)({
11
24
  baker: {
12
25
  url: "https://baker.example.com",
@@ -61,4 +74,17 @@ describe("get operations", () => {
61
74
  expect(token).toEqual("888");
62
75
  });
63
76
  });
77
+ describe("Testing craftTransaction function", () => {
78
+ beforeEach(() => jest.clearAllMocks());
79
+ it("should use estimated fees when user does not provide them for crafting a transaction ", async () => {
80
+ await api.craftTransaction({ type: "send" });
81
+ expect(logicEstimateFeesMock).toHaveBeenCalledTimes(1);
82
+ expect(logicCraftTransactionMock).toHaveBeenCalledWith(expect.any(Object), expect.objectContaining({ fee: { fees: DEFAULT_ESTIMATED_FEES.toString() } }));
83
+ });
84
+ it.each([[1n], [50n], [99n]])("should use custom user fees when user provides it for crafting a transaction", async (customFees) => {
85
+ await api.craftTransaction({ type: "send" }, customFees);
86
+ expect(logicEstimateFeesMock).toHaveBeenCalledTimes(0);
87
+ expect(logicCraftTransactionMock).toHaveBeenCalledWith(expect.any(Object), expect.objectContaining({ fee: { fees: customFees.toString() } }));
88
+ });
89
+ });
64
90
  //# sourceMappingURL=index.test.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.test.js","sourceRoot":"","sources":["../../src/api/index.test.ts"],"names":[],"mappings":";;AACA,mCAAoC;AAEpC,MAAM,oBAAoB,GAAG,IAAI,CAAC,EAAE,EAAE,CAAC;AACvC,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,GAAG,EAAE,CAAC,CAAC;IAC3B,cAAc,EAAE,KAAK,IAAI,EAAE;QACzB,OAAO,oBAAoB,EAAE,CAAC;IAChC,CAAC;CACF,CAAC,CAAC,CAAC;AAEJ,MAAM,GAAG,GAAG,IAAA,iBAAS,EAAC;IACpB,KAAK,EAAE;QACL,GAAG,EAAE,2BAA2B;KACjC;IACD,QAAQ,EAAE;QACR,GAAG,EAAE,KAAK;QACV,UAAU,EAAE,CAAC;KACd;IACD,IAAI,EAAE;QACJ,GAAG,EAAE,KAAK;KACX;IACD,IAAI,EAAE;QACJ,WAAW,EAAE,CAAC;QACd,iBAAiB,EAAE,CAAC;QACpB,eAAe,EAAE,CAAC;QAClB,OAAO,EAAE,CAAC;QACV,gBAAgB,EAAE,CAAC;KACpB;CACF,CAAC,CAAC;AAEH,QAAQ,CAAC,gBAAgB,EAAE,GAAG,EAAE;IAC9B,SAAS,CAAC,GAAG,EAAE;QACb,oBAAoB,CAAC,SAAS,EAAE,CAAC;IACnC,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,2BAA2B,EAAE,KAAK,IAAI,EAAE;QACzC,oBAAoB,CAAC,iBAAiB,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC,CAAC;QACjD,MAAM,CAAC,UAAU,EAAE,KAAK,CAAC,GAAG,MAAM,GAAG,CAAC,cAAc,CAAC,MAAM,EAAE,EAAE,SAAS,EAAE,GAAG,EAAE,CAAC,CAAC;QACjF,MAAM,CAAC,UAAU,CAAC,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;QAC/B,MAAM,CAAC,KAAK,CAAC,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;IAC5B,CAAC,CAAC,CAAC;IAEH,MAAM,EAAE,GAAoB;QAC1B,cAAc,EAAE,CAAC;QACjB,EAAE,EAAE;YACF,IAAI,EAAE,QAAQ;YACd,IAAI,EAAE,MAAM,CAAC,GAAG,CAAC;YACjB,KAAK,EAAE;gBACL,IAAI,EAAE,WAAW;gBACjB,MAAM,EAAE,MAAM;gBACd,IAAI,EAAE,IAAI,IAAI,EAAE;aACjB;YACD,IAAI,EAAE,IAAI,IAAI,EAAE;SACjB;QACD,IAAI,EAAE,aAAa;QACnB,KAAK,EAAE,MAAM,CAAC,IAAI,CAAC;QACnB,OAAO,EAAE,CAAC,WAAW,CAAC;QACtB,UAAU,EAAE,CAAC,cAAc,CAAC;KAC7B,CAAC;IAEF,EAAE,CAAC,qCAAqC,EAAE,KAAK,IAAI,EAAE;QACnD,oBAAoB,CAAC,iBAAiB,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,KAAK,CAAC,CAAC,CAAC;QACtD,MAAM,CAAC,UAAU,EAAE,KAAK,CAAC,GAAG,MAAM,GAAG,CAAC,cAAc,CAAC,MAAM,EAAE,EAAE,SAAS,EAAE,GAAG,EAAE,CAAC,CAAC;QACjF,MAAM,CAAC,oBAAoB,CAAC,CAAC,qBAAqB,CAAC,EAAE,CAAC,CAAC;QACvD,MAAM,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QACnC,MAAM,CAAC,KAAK,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;IAC/B,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"}
1
+ {"version":3,"file":"index.test.js","sourceRoot":"","sources":["../../src/api/index.test.ts"],"names":[],"mappings":"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"}
@@ -7,9 +7,9 @@ exports.craftTransaction = craftTransaction;
7
7
  exports.rawEncode = rawEncode;
8
8
  const rpc_1 = require("@taquito/rpc");
9
9
  const taquito_1 = require("@taquito/taquito");
10
+ const config_1 = __importDefault(require("../config"));
10
11
  const errors_1 = require("../types/errors");
11
12
  const tezosToolkit_1 = require("./tezosToolkit");
12
- const config_1 = __importDefault(require("../config"));
13
13
  async function craftTransaction(account, transaction, publicKey) {
14
14
  const { address } = account;
15
15
  const transactionFees = {
@@ -1 +1 @@
1
- {"version":3,"file":"craftTransaction.js","sourceRoot":"","sources":["../../src/logic/craftTransaction.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"craftTransaction.js","sourceRoot":"","sources":["../../src/logic/craftTransaction.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"cli.d.ts","sourceRoot":"","sources":["../../src/test/cli.ts"],"names":[],"mappings":"AAAA,OAAO,EAAQ,UAAU,EAAE,MAAM,MAAM,CAAC;AAKxC,OAAO,KAAK,EAAE,OAAO,EAAE,WAAW,EAAE,gBAAgB,EAAc,MAAM,sBAAsB,CAAC;AAC/F,OAAO,KAAK,EAAE,WAAW,EAAS,MAAM,UAAU,CAAC;AAInD,QAAA,MAAM,OAAO;;;;;;;;;;IA2BZ,CAAC;AAEF,iBAAS,aAAa,CAAC,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,gBAAgB,CAepF;AAED,iBAAS,iBAAiB,CACxB,YAAY,EAAE,KAAK,CAAC;IAClB,OAAO,EAAE,WAAW,CAAC;IACrB,WAAW,EAAE,WAAW,CAAC;CAC1B,CAAC,EACF,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,EACzB,EAAE,WAAW,EAAE,EAAE,GAAG,GACnB,WAAW,EAAE,CAcf;AASD,QAAA,MAAM,eAAe;;;;;;;;;;kCAgBhB,OAAO,CAAC;QACT,SAAS,EAAE,OAAO,CAAC;QACnB,MAAM,EAAE,MAAM,GAAG,SAAS,CAAC;KAC5B,CAAC,KAAG,UAAU,CAAC,MAAM,CAAC;CAOxB,CAAC;AAEF,MAAM,MAAM,QAAQ,GAAG;IACrB,OAAO,EAAE,OAAO,OAAO,CAAC;IACxB,iBAAiB,EAAE,CACjB,YAAY,EAAE,KAAK,CAAC;QAClB,OAAO,EAAE,WAAW,CAAC;QACrB,WAAW,EAAE,WAAW,CAAC;KAC1B,CAAC,EACF,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,EACzB,EAAE,WAAW,EAAE,EAAE,GAAG,KACjB,WAAW,EAAE,CAAC;IACnB,QAAQ,EAAE;QAAE,eAAe,EAAE,OAAO,eAAe,CAAA;KAAE,CAAC;CACvD,CAAC;AAEF,MAAM,CAAC,OAAO,UAAU,YAAY;;;;;;;;;;;;;;;;;;;;;;;;;0CAzB/B,OAAO,CAAC;gBACT,SAAS,EAAE,OAAO,CAAC;gBACnB,MAAM,EAAE,MAAM,GAAG,SAAS,CAAC;aAC5B,CAAC,KAAG,UAAU,CAAC,MAAM,CAAC;;;EA+BxB"}
1
+ {"version":3,"file":"cli.d.ts","sourceRoot":"","sources":["../../src/test/cli.ts"],"names":[],"mappings":"AAAA,OAAO,EAAQ,UAAU,EAAE,MAAM,MAAM,CAAC;AAKxC,OAAO,KAAK,EAAE,OAAO,EAAE,WAAW,EAAE,gBAAgB,EAAgB,MAAM,sBAAsB,CAAC;AACjG,OAAO,KAAK,EAAE,WAAW,EAAS,MAAM,UAAU,CAAC;AAInD,QAAA,MAAM,OAAO;;;;;;;;;;IA2BZ,CAAC;AAEF,iBAAS,aAAa,CAAC,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,gBAAgB,CAepF;AAED,iBAAS,iBAAiB,CACxB,YAAY,EAAE,KAAK,CAAC;IAClB,OAAO,EAAE,WAAW,CAAC;IACrB,WAAW,EAAE,WAAW,CAAC;CAC1B,CAAC,EACF,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,EACzB,EAAE,WAAW,EAAE,EAAE,GAAG,GACnB,WAAW,EAAE,CAcf;AASD,QAAA,MAAM,eAAe;;;;;;;;;;kCAgBhB,OAAO,CAAC;QACT,SAAS,EAAE,OAAO,CAAC;QACnB,MAAM,EAAE,MAAM,GAAG,SAAS,CAAC;KAC5B,CAAC,KAAG,UAAU,CAAC,MAAM,CAAC;CAOxB,CAAC;AAEF,MAAM,MAAM,QAAQ,GAAG;IACrB,OAAO,EAAE,OAAO,OAAO,CAAC;IACxB,iBAAiB,EAAE,CACjB,YAAY,EAAE,KAAK,CAAC;QAClB,OAAO,EAAE,WAAW,CAAC;QACrB,WAAW,EAAE,WAAW,CAAC;KAC1B,CAAC,EACF,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,EACzB,EAAE,WAAW,EAAE,EAAE,GAAG,KACjB,WAAW,EAAE,CAAC;IACnB,QAAQ,EAAE;QAAE,eAAe,EAAE,OAAO,eAAe,CAAA;KAAE,CAAC;CACvD,CAAC;AAEF,MAAM,CAAC,OAAO,UAAU,YAAY;;;;;;;;;;;;;;;;;;;;;;;;;0CAzB/B,OAAO,CAAC;gBACT,SAAS,EAAE,OAAO,CAAC;gBACnB,MAAM,EAAE,MAAM,GAAG,SAAS,CAAC;aAC5B,CAAC,KAAG,UAAU,CAAC,MAAM,CAAC;;;EA+BxB"}
@@ -1 +1 @@
1
- {"version":3,"file":"cli.js","sourceRoot":"","sources":["../../src/test/cli.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"cli.js","sourceRoot":"","sources":["../../src/test/cli.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/api/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAKL,KAAK,GAAG,EACT,MAAM,oCAAoC,CAAC;AAC5C,OAAmB,EAAE,KAAK,WAAW,EAAE,MAAM,WAAW,CAAC;AAczD,wBAAgB,SAAS,CAAC,MAAM,EAAE,WAAW,GAAG,GAAG,CAAC,IAAI,CAAC,CAYxD"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/api/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAKL,KAAK,GAAG,EACT,MAAM,oCAAoC,CAAC;AAE5C,OAAmB,EAAE,KAAK,WAAW,EAAE,MAAM,WAAW,CAAC;AAczD,wBAAgB,SAAS,CAAC,MAAM,EAAE,WAAW,GAAG,GAAG,CAAC,IAAI,CAAC,CAYxD"}
@@ -1,3 +1,4 @@
1
+ import { localForger } from "@taquito/local-forging";
1
2
  import { createApi } from ".";
2
3
  /**
3
4
  * https://teztnets.com/ghostnet-about
@@ -82,29 +83,52 @@ describe("Tezos Api", () => {
82
83
  });
83
84
  });
84
85
  describe("craftTransaction", () => {
85
- it.skip.each([
86
- {
87
- type: "send",
88
- rawTx: "6c0053ddb3b3a89ed5c8d8326066032beac6de225c9e010300000a0000a31e81ac3425310e3274a4698a793b2839dc0afa00",
89
- },
90
- {
91
- type: "delegate",
92
- rawTx: "6e0053ddb3b3a89ed5c8d8326066032beac6de225c9e01030000ff00a31e81ac3425310e3274a4698a793b2839dc0afa",
93
- },
94
- {
95
- type: "undelegate",
96
- rawTx: "6e0053ddb3b3a89ed5c8d8326066032beac6de225c9e0103000000",
97
- },
98
- ])("returns a raw transaction with $type", async ({ type, rawTx }) => {
86
+ async function decode(sbytes) {
87
+ return await localForger.parse(sbytes);
88
+ }
89
+ it.each(["send", "delegate", "undelegate"])("returns a raw transaction with %s", async (type) => {
90
+ const recipient = "tz1aWXP237BLwNHJcCD4b3DutCevhqq2T1Z9";
91
+ const amount = BigInt(10);
99
92
  // When
100
- const result = await module.craftTransaction({
93
+ const encodedTransaction = await module.craftTransaction({
101
94
  type,
102
95
  sender: address,
96
+ recipient: recipient,
97
+ amount: amount,
98
+ });
99
+ const decodedTransaction = await decode(encodedTransaction);
100
+ expect(decodedTransaction.contents).toHaveLength(1);
101
+ const operationContent = decodedTransaction.contents[0];
102
+ expect(operationContent.source).toEqual(address);
103
+ expect(BigInt(operationContent.fee)).toBeGreaterThan(0);
104
+ if (type === "send") {
105
+ expect(BigInt(operationContent.amount)).toEqual(amount);
106
+ expect(operationContent.destination).toEqual(recipient);
107
+ }
108
+ else if (type === "delegate") {
109
+ expect(operationContent.delegate).toEqual(recipient);
110
+ }
111
+ });
112
+ it("should use estimated fees when user does not provide them for crafting a transaction", async () => {
113
+ const encodedTransaction = await module.craftTransaction({
114
+ type: "send",
115
+ sender: address,
103
116
  recipient: "tz1aWXP237BLwNHJcCD4b3DutCevhqq2T1Z9",
104
117
  amount: BigInt(10),
105
118
  });
106
- // Then
107
- expect(result.slice(64)).toEqual(rawTx);
119
+ const decodedTransaction = await decode(encodedTransaction);
120
+ const transactionFee = BigInt(decodedTransaction.contents[0].fee);
121
+ expect(transactionFee).toBeGreaterThan(0);
122
+ });
123
+ it.each([1n, 50n, 99n])("should use custom user fees when user provides it for crafting a transaction", async (customFees) => {
124
+ const encodedTransaction = await module.craftTransaction({
125
+ type: "send",
126
+ sender: address,
127
+ recipient: "tz1aWXP237BLwNHJcCD4b3DutCevhqq2T1Z9",
128
+ amount: BigInt(10),
129
+ }, customFees);
130
+ const decodedTransaction = await decode(encodedTransaction);
131
+ expect(decodedTransaction.contents[0].fee).toEqual(customFees.toString());
108
132
  });
109
133
  });
110
134
  });
@@ -1 +1 @@
1
- {"version":3,"file":"index.integ.test.js","sourceRoot":"","sources":["../../src/api/index.integ.test.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.integ.test.js","sourceRoot":"","sources":["../../src/api/index.integ.test.ts"],"names":[],"mappings":"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"}
@@ -1,7 +1,7 @@
1
1
  import { IncorrectTypeError, } from "@ledgerhq/coin-framework/api/index";
2
- import coinConfig from "../config";
3
- import { broadcast, combine, craftTransaction, estimateFees, getBalance, listOperations, lastBlock, rawEncode, } from "../logic";
4
2
  import { log } from "@ledgerhq/logs";
3
+ import coinConfig from "../config";
4
+ import { broadcast, combine, craftTransaction, estimateFees, getBalance, lastBlock, listOperations, rawEncode, } from "../logic";
5
5
  import api from "../network/tzkt";
6
6
  export function createApi(config) {
7
7
  coinConfig.setCoinConfig(() => ({ ...config, status: { type: "active" } }));
@@ -18,11 +18,11 @@ export function createApi(config) {
18
18
  function isTezosTransactionType(type) {
19
19
  return ["send", "delegate", "undelegate"].includes(type);
20
20
  }
21
- async function craft(transactionIntent) {
21
+ async function craft(transactionIntent, customFees) {
22
22
  if (!isTezosTransactionType(transactionIntent.type)) {
23
23
  throw new IncorrectTypeError(transactionIntent.type);
24
24
  }
25
- const fee = await estimate(transactionIntent);
25
+ const fee = customFees !== undefined ? customFees : await estimate(transactionIntent);
26
26
  const { contents } = await craftTransaction({ address: transactionIntent.sender }, {
27
27
  type: transactionIntent.type,
28
28
  recipient: transactionIntent.recipient,
@@ -32,18 +32,18 @@ async function craft(transactionIntent) {
32
32
  return rawEncode(contents);
33
33
  }
34
34
  async function estimate(transactionIntent) {
35
- const accountInfo = await api.getAccountByAddress(transactionIntent.recipient);
36
- if (accountInfo.type !== "user")
35
+ const senderAccountInfo = await api.getAccountByAddress(transactionIntent.sender);
36
+ if (senderAccountInfo.type !== "user")
37
37
  throw new Error("unexpected account type");
38
38
  const estimatedFees = await estimateFees({
39
39
  account: {
40
40
  address: transactionIntent.sender,
41
- revealed: accountInfo.revealed,
42
- balance: BigInt(accountInfo.balance),
43
- xpub: accountInfo.publicKey,
41
+ revealed: senderAccountInfo.revealed,
42
+ balance: BigInt(senderAccountInfo.balance),
43
+ xpub: senderAccountInfo.publicKey,
44
44
  },
45
45
  transaction: {
46
- mode: "send",
46
+ mode: transactionIntent.type,
47
47
  recipient: transactionIntent.recipient,
48
48
  amount: transactionIntent.amount,
49
49
  },
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/api/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/api/index.ts"],"names":[],"mappings":"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"}
@@ -1,10 +1,20 @@
1
+ import networkApi from "../network/tzkt";
1
2
  import { createApi } from "./index";
3
+ const DEFAULT_ESTIMATED_FEES = 300n;
2
4
  const logicGetTransactions = jest.fn();
5
+ const logicEstimateFeesMock = jest.fn(() => Promise.resolve({ estimatedFees: DEFAULT_ESTIMATED_FEES }));
6
+ const logicCraftTransactionMock = jest.fn((_account, _transaction) => {
7
+ return { type: undefined, contents: undefined };
8
+ });
3
9
  jest.mock("../logic", () => ({
4
- listOperations: async () => {
5
- return logicGetTransactions();
6
- },
10
+ listOperations: async () => logicGetTransactions(),
11
+ estimateFees: async () => logicEstimateFeesMock(),
12
+ craftTransaction: (account, transaction) => logicCraftTransactionMock(account, transaction),
13
+ rawEncode: () => Promise.resolve("tz1heMGVHQnx7ALDcDKqez8fan64Eyicw4DJ"),
7
14
  }));
15
+ jest
16
+ .spyOn(networkApi, "getAccountByAddress")
17
+ .mockImplementation((_adress) => Promise.resolve({ type: "user", balance: 1000 }));
8
18
  const api = createApi({
9
19
  baker: {
10
20
  url: "https://baker.example.com",
@@ -59,4 +69,17 @@ describe("get operations", () => {
59
69
  expect(token).toEqual("888");
60
70
  });
61
71
  });
72
+ describe("Testing craftTransaction function", () => {
73
+ beforeEach(() => jest.clearAllMocks());
74
+ it("should use estimated fees when user does not provide them for crafting a transaction ", async () => {
75
+ await api.craftTransaction({ type: "send" });
76
+ expect(logicEstimateFeesMock).toHaveBeenCalledTimes(1);
77
+ expect(logicCraftTransactionMock).toHaveBeenCalledWith(expect.any(Object), expect.objectContaining({ fee: { fees: DEFAULT_ESTIMATED_FEES.toString() } }));
78
+ });
79
+ it.each([[1n], [50n], [99n]])("should use custom user fees when user provides it for crafting a transaction", async (customFees) => {
80
+ await api.craftTransaction({ type: "send" }, customFees);
81
+ expect(logicEstimateFeesMock).toHaveBeenCalledTimes(0);
82
+ expect(logicCraftTransactionMock).toHaveBeenCalledWith(expect.any(Object), expect.objectContaining({ fee: { fees: customFees.toString() } }));
83
+ });
84
+ });
62
85
  //# sourceMappingURL=index.test.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.test.js","sourceRoot":"","sources":["../../src/api/index.test.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,SAAS,EAAE,MAAM,SAAS,CAAC;AAEpC,MAAM,oBAAoB,GAAG,IAAI,CAAC,EAAE,EAAE,CAAC;AACvC,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,GAAG,EAAE,CAAC,CAAC;IAC3B,cAAc,EAAE,KAAK,IAAI,EAAE;QACzB,OAAO,oBAAoB,EAAE,CAAC;IAChC,CAAC;CACF,CAAC,CAAC,CAAC;AAEJ,MAAM,GAAG,GAAG,SAAS,CAAC;IACpB,KAAK,EAAE;QACL,GAAG,EAAE,2BAA2B;KACjC;IACD,QAAQ,EAAE;QACR,GAAG,EAAE,KAAK;QACV,UAAU,EAAE,CAAC;KACd;IACD,IAAI,EAAE;QACJ,GAAG,EAAE,KAAK;KACX;IACD,IAAI,EAAE;QACJ,WAAW,EAAE,CAAC;QACd,iBAAiB,EAAE,CAAC;QACpB,eAAe,EAAE,CAAC;QAClB,OAAO,EAAE,CAAC;QACV,gBAAgB,EAAE,CAAC;KACpB;CACF,CAAC,CAAC;AAEH,QAAQ,CAAC,gBAAgB,EAAE,GAAG,EAAE;IAC9B,SAAS,CAAC,GAAG,EAAE;QACb,oBAAoB,CAAC,SAAS,EAAE,CAAC;IACnC,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,2BAA2B,EAAE,KAAK,IAAI,EAAE;QACzC,oBAAoB,CAAC,iBAAiB,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC,CAAC;QACjD,MAAM,CAAC,UAAU,EAAE,KAAK,CAAC,GAAG,MAAM,GAAG,CAAC,cAAc,CAAC,MAAM,EAAE,EAAE,SAAS,EAAE,GAAG,EAAE,CAAC,CAAC;QACjF,MAAM,CAAC,UAAU,CAAC,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;QAC/B,MAAM,CAAC,KAAK,CAAC,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;IAC5B,CAAC,CAAC,CAAC;IAEH,MAAM,EAAE,GAAoB;QAC1B,cAAc,EAAE,CAAC;QACjB,EAAE,EAAE;YACF,IAAI,EAAE,QAAQ;YACd,IAAI,EAAE,MAAM,CAAC,GAAG,CAAC;YACjB,KAAK,EAAE;gBACL,IAAI,EAAE,WAAW;gBACjB,MAAM,EAAE,MAAM;gBACd,IAAI,EAAE,IAAI,IAAI,EAAE;aACjB;YACD,IAAI,EAAE,IAAI,IAAI,EAAE;SACjB;QACD,IAAI,EAAE,aAAa;QACnB,KAAK,EAAE,MAAM,CAAC,IAAI,CAAC;QACnB,OAAO,EAAE,CAAC,WAAW,CAAC;QACtB,UAAU,EAAE,CAAC,cAAc,CAAC;KAC7B,CAAC;IAEF,EAAE,CAAC,qCAAqC,EAAE,KAAK,IAAI,EAAE;QACnD,oBAAoB,CAAC,iBAAiB,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,KAAK,CAAC,CAAC,CAAC;QACtD,MAAM,CAAC,UAAU,EAAE,KAAK,CAAC,GAAG,MAAM,GAAG,CAAC,cAAc,CAAC,MAAM,EAAE,EAAE,SAAS,EAAE,GAAG,EAAE,CAAC,CAAC;QACjF,MAAM,CAAC,oBAAoB,CAAC,CAAC,qBAAqB,CAAC,EAAE,CAAC,CAAC;QACvD,MAAM,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QACnC,MAAM,CAAC,KAAK,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;IAC/B,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"}
1
+ {"version":3,"file":"index.test.js","sourceRoot":"","sources":["../../src/api/index.test.ts"],"names":[],"mappings":"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"}
@@ -1,8 +1,8 @@
1
1
  import { OpKind } from "@taquito/rpc";
2
2
  import { DEFAULT_FEE } from "@taquito/taquito";
3
+ import coinConfig from "../config";
3
4
  import { UnsupportedTransactionMode } from "../types/errors";
4
5
  import { getTezosToolkit } from "./tezosToolkit";
5
- import coinConfig from "../config";
6
6
  export async function craftTransaction(account, transaction, publicKey) {
7
7
  const { address } = account;
8
8
  const transactionFees = {
@@ -1 +1 @@
1
- {"version":3,"file":"craftTransaction.js","sourceRoot":"","sources":["../../src/logic/craftTransaction.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"craftTransaction.js","sourceRoot":"","sources":["../../src/logic/craftTransaction.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"cli.d.ts","sourceRoot":"","sources":["../../src/test/cli.ts"],"names":[],"mappings":"AAAA,OAAO,EAAQ,UAAU,EAAE,MAAM,MAAM,CAAC;AAKxC,OAAO,KAAK,EAAE,OAAO,EAAE,WAAW,EAAE,gBAAgB,EAAc,MAAM,sBAAsB,CAAC;AAC/F,OAAO,KAAK,EAAE,WAAW,EAAS,MAAM,UAAU,CAAC;AAInD,QAAA,MAAM,OAAO;;;;;;;;;;IA2BZ,CAAC;AAEF,iBAAS,aAAa,CAAC,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,gBAAgB,CAepF;AAED,iBAAS,iBAAiB,CACxB,YAAY,EAAE,KAAK,CAAC;IAClB,OAAO,EAAE,WAAW,CAAC;IACrB,WAAW,EAAE,WAAW,CAAC;CAC1B,CAAC,EACF,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,EACzB,EAAE,WAAW,EAAE,EAAE,GAAG,GACnB,WAAW,EAAE,CAcf;AASD,QAAA,MAAM,eAAe;;;;;;;;;;kCAgBhB,OAAO,CAAC;QACT,SAAS,EAAE,OAAO,CAAC;QACnB,MAAM,EAAE,MAAM,GAAG,SAAS,CAAC;KAC5B,CAAC,KAAG,UAAU,CAAC,MAAM,CAAC;CAOxB,CAAC;AAEF,MAAM,MAAM,QAAQ,GAAG;IACrB,OAAO,EAAE,OAAO,OAAO,CAAC;IACxB,iBAAiB,EAAE,CACjB,YAAY,EAAE,KAAK,CAAC;QAClB,OAAO,EAAE,WAAW,CAAC;QACrB,WAAW,EAAE,WAAW,CAAC;KAC1B,CAAC,EACF,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,EACzB,EAAE,WAAW,EAAE,EAAE,GAAG,KACjB,WAAW,EAAE,CAAC;IACnB,QAAQ,EAAE;QAAE,eAAe,EAAE,OAAO,eAAe,CAAA;KAAE,CAAC;CACvD,CAAC;AAEF,MAAM,CAAC,OAAO,UAAU,YAAY;;;;;;;;;;;;;;;;;;;;;;;;;0CAzB/B,OAAO,CAAC;gBACT,SAAS,EAAE,OAAO,CAAC;gBACnB,MAAM,EAAE,MAAM,GAAG,SAAS,CAAC;aAC5B,CAAC,KAAG,UAAU,CAAC,MAAM,CAAC;;;EA+BxB"}
1
+ {"version":3,"file":"cli.d.ts","sourceRoot":"","sources":["../../src/test/cli.ts"],"names":[],"mappings":"AAAA,OAAO,EAAQ,UAAU,EAAE,MAAM,MAAM,CAAC;AAKxC,OAAO,KAAK,EAAE,OAAO,EAAE,WAAW,EAAE,gBAAgB,EAAgB,MAAM,sBAAsB,CAAC;AACjG,OAAO,KAAK,EAAE,WAAW,EAAS,MAAM,UAAU,CAAC;AAInD,QAAA,MAAM,OAAO;;;;;;;;;;IA2BZ,CAAC;AAEF,iBAAS,aAAa,CAAC,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,gBAAgB,CAepF;AAED,iBAAS,iBAAiB,CACxB,YAAY,EAAE,KAAK,CAAC;IAClB,OAAO,EAAE,WAAW,CAAC;IACrB,WAAW,EAAE,WAAW,CAAC;CAC1B,CAAC,EACF,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,EACzB,EAAE,WAAW,EAAE,EAAE,GAAG,GACnB,WAAW,EAAE,CAcf;AASD,QAAA,MAAM,eAAe;;;;;;;;;;kCAgBhB,OAAO,CAAC;QACT,SAAS,EAAE,OAAO,CAAC;QACnB,MAAM,EAAE,MAAM,GAAG,SAAS,CAAC;KAC5B,CAAC,KAAG,UAAU,CAAC,MAAM,CAAC;CAOxB,CAAC;AAEF,MAAM,MAAM,QAAQ,GAAG;IACrB,OAAO,EAAE,OAAO,OAAO,CAAC;IACxB,iBAAiB,EAAE,CACjB,YAAY,EAAE,KAAK,CAAC;QAClB,OAAO,EAAE,WAAW,CAAC;QACrB,WAAW,EAAE,WAAW,CAAC;KAC1B,CAAC,EACF,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,EACzB,EAAE,WAAW,EAAE,EAAE,GAAG,KACjB,WAAW,EAAE,CAAC;IACnB,QAAQ,EAAE;QAAE,eAAe,EAAE,OAAO,eAAe,CAAA;KAAE,CAAC;CACvD,CAAC;AAEF,MAAM,CAAC,OAAO,UAAU,YAAY;;;;;;;;;;;;;;;;;;;;;;;;;0CAzB/B,OAAO,CAAC;gBACT,SAAS,EAAE,OAAO,CAAC;gBACnB,MAAM,EAAE,MAAM,GAAG,SAAS,CAAC;aAC5B,CAAC,KAAG,UAAU,CAAC,MAAM,CAAC;;;EA+BxB"}
@@ -1 +1 @@
1
- {"version":3,"file":"cli.js","sourceRoot":"","sources":["../../src/test/cli.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"cli.js","sourceRoot":"","sources":["../../src/test/cli.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@ledgerhq/coin-tezos",
3
- "version": "2.1.0",
3
+ "version": "2.2.0-next.0",
4
4
  "description": "Tezos Coin integration",
5
5
  "keywords": [
6
6
  "Ledger",
@@ -77,17 +77,18 @@
77
77
  "invariant": "^2.2.4",
78
78
  "lodash": "^4.17.21",
79
79
  "rxjs": "^7.8.1",
80
- "@ledgerhq/coin-framework": "^2.5.0",
81
- "@ledgerhq/cryptoassets": "^13.14.0",
80
+ "@ledgerhq/coin-framework": "^2.6.0-next.0",
81
+ "@ledgerhq/cryptoassets": "^13.14.1-next.0",
82
82
  "@ledgerhq/devices": "8.4.4",
83
83
  "@ledgerhq/errors": "^6.19.1",
84
- "@ledgerhq/live-network": "^2.0.6",
84
+ "@ledgerhq/live-network": "^2.0.7-next.0",
85
85
  "@ledgerhq/logs": "^6.12.0",
86
86
  "@ledgerhq/types-cryptoassets": "^7.21.0",
87
- "@ledgerhq/types-live": "^6.65.0"
87
+ "@ledgerhq/types-live": "^6.66.0-next.0"
88
88
  },
89
89
  "devDependencies": {
90
90
  "@faker-js/faker": "^8.4.1",
91
+ "@taquito/local-forging": "21.0.3",
91
92
  "@types/blake2b": "^2.1.3",
92
93
  "@types/bs58check": "^2.1.2",
93
94
  "@types/invariant": "^2.2.37",
@@ -115,7 +116,9 @@
115
116
  "lint:fix": "pnpm lint --fix",
116
117
  "test": "jest",
117
118
  "test-watch": "jest --watch",
119
+ "test:debug": "node --inspect-brk ./node_modules/jest/bin/jest.js --runInBand",
118
120
  "test-integ": "jest --config=jest.integ.config.js",
121
+ "test-integ:debug": "node --inspect-brk ./node_modules/jest/bin/jest.js --runInBand --config=jest.integ.config.js",
119
122
  "unimported": "unimported"
120
123
  }
121
124
  }
@@ -1,5 +1,7 @@
1
1
  import { type Api } from "@ledgerhq/coin-framework/api/index";
2
+ import { localForger } from "@taquito/local-forging";
2
3
  import { createApi } from ".";
4
+
3
5
  /**
4
6
  * https://teztnets.com/ghostnet-about
5
7
  * https://api.tzkt.io/#section/Get-Started/Free-TzKT-API
@@ -97,32 +99,65 @@ describe("Tezos Api", () => {
97
99
  });
98
100
 
99
101
  describe("craftTransaction", () => {
100
- it.skip.each([
101
- {
102
- type: "send",
103
- rawTx:
104
- "6c0053ddb3b3a89ed5c8d8326066032beac6de225c9e010300000a0000a31e81ac3425310e3274a4698a793b2839dc0afa00",
105
- },
106
- {
107
- type: "delegate",
108
- rawTx:
109
- "6e0053ddb3b3a89ed5c8d8326066032beac6de225c9e01030000ff00a31e81ac3425310e3274a4698a793b2839dc0afa",
110
- },
111
- {
112
- type: "undelegate",
113
- rawTx: "6e0053ddb3b3a89ed5c8d8326066032beac6de225c9e0103000000",
114
- },
115
- ])("returns a raw transaction with $type", async ({ type, rawTx }) => {
102
+ async function decode(sbytes: string) {
103
+ return await localForger.parse(sbytes);
104
+ }
105
+
106
+ it.each(["send", "delegate", "undelegate"])("returns a raw transaction with %s", async type => {
107
+ const recipient = "tz1aWXP237BLwNHJcCD4b3DutCevhqq2T1Z9";
108
+ const amount = BigInt(10);
116
109
  // When
117
- const result = await module.craftTransaction({
110
+ const encodedTransaction = await module.craftTransaction({
118
111
  type,
119
112
  sender: address,
113
+ recipient: recipient,
114
+ amount: amount,
115
+ });
116
+
117
+ const decodedTransaction = await decode(encodedTransaction);
118
+ expect(decodedTransaction.contents).toHaveLength(1);
119
+
120
+ const operationContent = decodedTransaction.contents[0];
121
+ expect(operationContent.source).toEqual(address);
122
+ expect(BigInt(operationContent.fee)).toBeGreaterThan(0);
123
+
124
+ if (type === "send") {
125
+ expect(BigInt(operationContent.amount)).toEqual(amount);
126
+ expect(operationContent.destination).toEqual(recipient);
127
+ } else if (type === "delegate") {
128
+ expect(operationContent.delegate).toEqual(recipient);
129
+ }
130
+ });
131
+
132
+ it("should use estimated fees when user does not provide them for crafting a transaction", async () => {
133
+ const encodedTransaction = await module.craftTransaction({
134
+ type: "send",
135
+ sender: address,
120
136
  recipient: "tz1aWXP237BLwNHJcCD4b3DutCevhqq2T1Z9",
121
137
  amount: BigInt(10),
122
138
  });
123
139
 
124
- // Then
125
- expect(result.slice(64)).toEqual(rawTx);
140
+ const decodedTransaction = await decode(encodedTransaction);
141
+ const transactionFee = BigInt(decodedTransaction.contents[0].fee);
142
+ expect(transactionFee).toBeGreaterThan(0);
126
143
  });
144
+
145
+ it.each([1n, 50n, 99n])(
146
+ "should use custom user fees when user provides it for crafting a transaction",
147
+ async (customFees: bigint) => {
148
+ const encodedTransaction = await module.craftTransaction(
149
+ {
150
+ type: "send",
151
+ sender: address,
152
+ recipient: "tz1aWXP237BLwNHJcCD4b3DutCevhqq2T1Z9",
153
+ amount: BigInt(10),
154
+ },
155
+ customFees,
156
+ );
157
+
158
+ const decodedTransaction = await decode(encodedTransaction);
159
+ expect(decodedTransaction.contents[0].fee).toEqual(customFees.toString());
160
+ },
161
+ );
127
162
  });
128
163
  });
@@ -1,13 +1,32 @@
1
- import { Operation } from "@ledgerhq/coin-framework/lib/api/types";
1
+ import { Operation, TransactionIntent } from "@ledgerhq/coin-framework/lib/api/types";
2
+ import { APIAccount } from "../network/types";
3
+ import networkApi from "../network/tzkt";
2
4
  import { createApi } from "./index";
3
5
 
6
+ const DEFAULT_ESTIMATED_FEES = 300n;
7
+
4
8
  const logicGetTransactions = jest.fn();
9
+ const logicEstimateFeesMock = jest.fn(() =>
10
+ Promise.resolve({ estimatedFees: DEFAULT_ESTIMATED_FEES }),
11
+ );
12
+ const logicCraftTransactionMock = jest.fn((_account: unknown, _transaction: { fee: bigint }) => {
13
+ return { type: undefined, contents: undefined };
14
+ });
15
+
5
16
  jest.mock("../logic", () => ({
6
- listOperations: async () => {
7
- return logicGetTransactions();
8
- },
17
+ listOperations: async () => logicGetTransactions(),
18
+ estimateFees: async () => logicEstimateFeesMock(),
19
+ craftTransaction: (account: unknown, transaction: { fee: bigint }) =>
20
+ logicCraftTransactionMock(account, transaction),
21
+ rawEncode: () => Promise.resolve("tz1heMGVHQnx7ALDcDKqez8fan64Eyicw4DJ"),
9
22
  }));
10
23
 
24
+ jest
25
+ .spyOn(networkApi, "getAccountByAddress")
26
+ .mockImplementation((_adress: string) =>
27
+ Promise.resolve({ type: "user", balance: 1000 } as APIAccount),
28
+ );
29
+
11
30
  const api = createApi({
12
31
  baker: {
13
32
  url: "https://baker.example.com",
@@ -66,3 +85,28 @@ describe("get operations", () => {
66
85
  expect(token).toEqual("888");
67
86
  });
68
87
  });
88
+
89
+ describe("Testing craftTransaction function", () => {
90
+ beforeEach(() => jest.clearAllMocks());
91
+
92
+ it("should use estimated fees when user does not provide them for crafting a transaction ", async () => {
93
+ await api.craftTransaction({ type: "send" } as TransactionIntent<void>);
94
+ expect(logicEstimateFeesMock).toHaveBeenCalledTimes(1);
95
+ expect(logicCraftTransactionMock).toHaveBeenCalledWith(
96
+ expect.any(Object),
97
+ expect.objectContaining({ fee: { fees: DEFAULT_ESTIMATED_FEES.toString() } }),
98
+ );
99
+ });
100
+
101
+ it.each([[1n], [50n], [99n]])(
102
+ "should use custom user fees when user provides it for crafting a transaction",
103
+ async (customFees: bigint) => {
104
+ await api.craftTransaction({ type: "send" } as TransactionIntent<void>, customFees);
105
+ expect(logicEstimateFeesMock).toHaveBeenCalledTimes(0);
106
+ expect(logicCraftTransactionMock).toHaveBeenCalledWith(
107
+ expect.any(Object),
108
+ expect.objectContaining({ fee: { fees: customFees.toString() } }),
109
+ );
110
+ },
111
+ );
112
+ });
package/src/api/index.ts CHANGED
@@ -1,10 +1,11 @@
1
1
  import {
2
2
  IncorrectTypeError,
3
- TransactionIntent,
4
3
  Operation,
5
4
  Pagination,
5
+ TransactionIntent,
6
6
  type Api,
7
7
  } from "@ledgerhq/coin-framework/api/index";
8
+ import { log } from "@ledgerhq/logs";
8
9
  import coinConfig, { type TezosConfig } from "../config";
9
10
  import {
10
11
  broadcast,
@@ -12,12 +13,12 @@ import {
12
13
  craftTransaction,
13
14
  estimateFees,
14
15
  getBalance,
15
- listOperations,
16
16
  lastBlock,
17
+ listOperations,
17
18
  rawEncode,
18
19
  } from "../logic";
19
- import { log } from "@ledgerhq/logs";
20
20
  import api from "../network/tzkt";
21
+ import { TezosOperationMode } from "../types";
21
22
 
22
23
  export function createApi(config: TezosConfig): Api<void> {
23
24
  coinConfig.setCoinConfig(() => ({ ...config, status: { type: "active" } }));
@@ -37,11 +38,14 @@ function isTezosTransactionType(type: string): type is "send" | "delegate" | "un
37
38
  return ["send", "delegate", "undelegate"].includes(type);
38
39
  }
39
40
 
40
- async function craft(transactionIntent: TransactionIntent<void>): Promise<string> {
41
+ async function craft(
42
+ transactionIntent: TransactionIntent<void>,
43
+ customFees?: bigint,
44
+ ): Promise<string> {
41
45
  if (!isTezosTransactionType(transactionIntent.type)) {
42
46
  throw new IncorrectTypeError(transactionIntent.type);
43
47
  }
44
- const fee = await estimate(transactionIntent);
48
+ const fee = customFees !== undefined ? customFees : await estimate(transactionIntent);
45
49
  const { contents } = await craftTransaction(
46
50
  { address: transactionIntent.sender },
47
51
  {
@@ -55,18 +59,18 @@ async function craft(transactionIntent: TransactionIntent<void>): Promise<string
55
59
  }
56
60
 
57
61
  async function estimate(transactionIntent: TransactionIntent<void>): Promise<bigint> {
58
- const accountInfo = await api.getAccountByAddress(transactionIntent.recipient);
59
- if (accountInfo.type !== "user") throw new Error("unexpected account type");
62
+ const senderAccountInfo = await api.getAccountByAddress(transactionIntent.sender);
63
+ if (senderAccountInfo.type !== "user") throw new Error("unexpected account type");
60
64
 
61
65
  const estimatedFees = await estimateFees({
62
66
  account: {
63
67
  address: transactionIntent.sender,
64
- revealed: accountInfo.revealed,
65
- balance: BigInt(accountInfo.balance),
66
- xpub: accountInfo.publicKey,
68
+ revealed: senderAccountInfo.revealed,
69
+ balance: BigInt(senderAccountInfo.balance),
70
+ xpub: senderAccountInfo.publicKey,
67
71
  },
68
72
  transaction: {
69
- mode: "send",
73
+ mode: transactionIntent.type as TezosOperationMode,
70
74
  recipient: transactionIntent.recipient,
71
75
  amount: transactionIntent.amount,
72
76
  },
@@ -1,8 +1,8 @@
1
1
  import { OpKind, type OperationContents } from "@taquito/rpc";
2
2
  import { DEFAULT_FEE } from "@taquito/taquito";
3
+ import coinConfig from "../config";
3
4
  import { UnsupportedTransactionMode } from "../types/errors";
4
5
  import { getTezosToolkit } from "./tezosToolkit";
5
- import coinConfig from "../config";
6
6
 
7
7
  type TransactionFee = {
8
8
  fees?: string;
package/src/test/cli.ts CHANGED
@@ -3,7 +3,7 @@ import { map } from "rxjs/operators";
3
3
  import invariant from "invariant";
4
4
  import { BigNumber } from "bignumber.js";
5
5
  import flatMap from "lodash/flatMap";
6
- import type { Account, AccountLike, AccountLikeArray, SubAccount } from "@ledgerhq/types-live";
6
+ import type { Account, AccountLike, AccountLikeArray, TokenAccount } from "@ledgerhq/types-live";
7
7
  import type { Transaction, Baker } from "../types";
8
8
  import { listBakers, fetchAllBakers } from "../network/bakers";
9
9
  import defaultList from "../network/bakers.whitelist-default";
@@ -48,7 +48,7 @@ function inferAccounts(account: Account, opts: Record<string, any>): AccountLike
48
48
  const { subAccounts } = account;
49
49
  invariant(subAccounts, "no sub accounts");
50
50
  return opts.subAccount.map((i: number) => {
51
- const acc = (subAccounts as SubAccount[])[i];
51
+ const acc = (subAccounts as TokenAccount[])[i];
52
52
  invariant(acc, "sub account not found (index %s)", i);
53
53
  return acc;
54
54
  });