@ledgerhq/coin-aptos 2.4.0 → 2.5.0-nightly.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (50) hide show
  1. package/CHANGELOG.md +12 -0
  2. package/lib/__tests__/api/craftTransaction.unit.test.js +16 -31
  3. package/lib/__tests__/api/craftTransaction.unit.test.js.map +1 -1
  4. package/lib/__tests__/api/index.integ.test.js +14 -7
  5. package/lib/__tests__/api/index.integ.test.js.map +1 -1
  6. package/lib/__tests__/api/index.test.js.map +1 -1
  7. package/lib/__tests__/network/client.test.js +6 -3
  8. package/lib/__tests__/network/client.test.js.map +1 -1
  9. package/lib/api/index.d.ts +3 -3
  10. package/lib/api/index.d.ts.map +1 -1
  11. package/lib/api/index.js.map +1 -1
  12. package/lib/logic/craftTransaction.d.ts +2 -2
  13. package/lib/logic/craftTransaction.d.ts.map +1 -1
  14. package/lib/logic/craftTransaction.js +3 -3
  15. package/lib/logic/craftTransaction.js.map +1 -1
  16. package/lib/network/client.d.ts +2 -2
  17. package/lib/network/client.d.ts.map +1 -1
  18. package/lib/network/client.js +3 -2
  19. package/lib/network/client.js.map +1 -1
  20. package/lib/types/assets.d.ts +0 -4
  21. package/lib/types/assets.d.ts.map +1 -1
  22. package/lib-es/__tests__/api/craftTransaction.unit.test.js +16 -31
  23. package/lib-es/__tests__/api/craftTransaction.unit.test.js.map +1 -1
  24. package/lib-es/__tests__/api/index.integ.test.js +14 -7
  25. package/lib-es/__tests__/api/index.integ.test.js.map +1 -1
  26. package/lib-es/__tests__/api/index.test.js.map +1 -1
  27. package/lib-es/__tests__/network/client.test.js +6 -3
  28. package/lib-es/__tests__/network/client.test.js.map +1 -1
  29. package/lib-es/api/index.d.ts +3 -3
  30. package/lib-es/api/index.d.ts.map +1 -1
  31. package/lib-es/api/index.js.map +1 -1
  32. package/lib-es/logic/craftTransaction.d.ts +2 -2
  33. package/lib-es/logic/craftTransaction.d.ts.map +1 -1
  34. package/lib-es/logic/craftTransaction.js +3 -3
  35. package/lib-es/logic/craftTransaction.js.map +1 -1
  36. package/lib-es/network/client.d.ts +2 -2
  37. package/lib-es/network/client.d.ts.map +1 -1
  38. package/lib-es/network/client.js +3 -2
  39. package/lib-es/network/client.js.map +1 -1
  40. package/lib-es/types/assets.d.ts +0 -4
  41. package/lib-es/types/assets.d.ts.map +1 -1
  42. package/package.json +3 -3
  43. package/src/__tests__/api/craftTransaction.unit.test.ts +22 -37
  44. package/src/__tests__/api/index.integ.test.ts +17 -11
  45. package/src/__tests__/api/index.test.ts +4 -6
  46. package/src/__tests__/network/client.test.ts +13 -10
  47. package/src/api/index.ts +4 -6
  48. package/src/logic/craftTransaction.ts +6 -8
  49. package/src/network/client.ts +5 -10
  50. package/src/types/assets.ts +0 -5
@@ -9,15 +9,15 @@ export async function craftTransaction(aptosClient, transactionIntent) {
9
9
  newTx.mode = transactionIntent.type;
10
10
  newTx.useAllAmount = transactionIntent.amount === BigInt(0);
11
11
  const account = {
12
- freshAddress: transactionIntent.sender.freshAddress,
13
- xpub: transactionIntent.sender.xpub,
12
+ freshAddress: transactionIntent.sender,
13
+ xpub: transactionIntent.senderPublicKey,
14
14
  subAccounts: new Array(),
15
15
  };
16
16
  let tokenType;
17
17
  const contractAddress = getContractAddress(transactionIntent);
18
18
  let balance;
19
19
  if (newTx.useAllAmount === true) {
20
- const balances = await aptosClient.getBalances(transactionIntent.sender.freshAddress);
20
+ const balances = await aptosClient.getBalances(transactionIntent.sender);
21
21
  balance = balances?.find(b => b.contractAddress.toLowerCase() === contractAddress?.toLowerCase());
22
22
  if (balance !== undefined) {
23
23
  newTx.amount = BigNumber(balance.amount.toString());
@@ -1 +1 @@
1
- {"version":3,"file":"craftTransaction.js","sourceRoot":"","sources":["../../src/logic/craftTransaction.ts"],"names":[],"mappings":"AAIA,OAAO,gBAAgB,EAAE,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AACnE,OAAO,iBAAiB,MAAM,qBAAqB,CAAC;AACpD,OAAO,SAAS,MAAM,cAAc,CAAC;AACrC,OAAO,EAAE,cAAc,EAAmB,MAAM,cAAc,CAAC;AAG/D,MAAM,CAAC,KAAK,UAAU,gBAAgB,CACpC,WAAqB,EACrB,iBAAyE;IAEzE,MAAM,KAAK,GAAG,iBAAiB,EAAE,CAAC;IAClC,KAAK,CAAC,MAAM,GAAG,SAAS,CAAC,iBAAiB,CAAC,MAAM,CAAC,QAAQ,EAAE,CAAC,CAAC;IAC9D,KAAK,CAAC,SAAS,GAAG,iBAAiB,CAAC,SAAS,CAAC;IAC9C,KAAK,CAAC,IAAI,GAAG,iBAAiB,CAAC,IAAI,CAAC;IACpC,KAAK,CAAC,YAAY,GAAG,iBAAiB,CAAC,MAAM,KAAK,MAAM,CAAC,CAAC,CAAC,CAAC;IAE5D,MAAM,OAAO,GAAG;QACd,YAAY,EAAE,iBAAiB,CAAC,MAAM,CAAC,YAAY;QACnD,IAAI,EAAE,iBAAiB,CAAC,MAAM,CAAC,IAAI;QACnC,WAAW,EAAE,IAAI,KAAK,EAAgB;KAC5B,CAAC;IAEb,IAAI,SAAiC,CAAC;IACtC,MAAM,eAAe,GAAG,kBAAkB,CAAC,iBAAiB,CAAC,CAAC;IAC9D,IAAI,OAAiC,CAAC;IAEtC,IAAI,KAAK,CAAC,YAAY,KAAK,IAAI,EAAE,CAAC;QAChC,MAAM,QAAQ,GAAG,MAAM,WAAW,CAAC,WAAW,CAAC,iBAAiB,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC;QACtF,OAAO,GAAG,QAAQ,EAAE,IAAI,CACtB,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,eAAe,CAAC,WAAW,EAAE,KAAK,eAAe,EAAE,WAAW,EAAE,CACxE,CAAC;QAEF,IAAI,OAAO,KAAK,SAAS,EAAE,CAAC;YAC1B,KAAK,CAAC,MAAM,GAAG,SAAS,CAAC,OAAO,CAAC,MAAM,CAAC,QAAQ,EAAE,CAAC,CAAC;QACtD,CAAC;IACH,CAAC;IAED,IAAI,iBAAiB,CAAC,KAAK,CAAC,IAAI,KAAK,OAAO,EAAE,CAAC;QAC7C,SAAS,GAAG,iBAAiB,CAAC,KAAK,CAAC,QAAsB,CAAC;IAC7D,CAAC;IAED,MAAM,OAAO,GAAG,MAAM,gBAAgB,CACpC,OAAO,EACP,KAAK,EACL,WAAW,EACX,eAAe,EACf,SAAS,IAAI,SAAS,CACvB,CAAC;IAEF,OAAO,OAAO,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE,CAAC;AACvC,CAAC;AAED,SAAS,kBAAkB,CACzB,QAAgE;IAEhE,IAAI,QAAQ,CAAC,KAAK,CAAC,IAAI,KAAK,OAAO,IAAI,WAAW,CAAC,QAAQ,CAAC,KAAK,CAAC,QAAQ,CAAC,EAAE,CAAC;QAC5E,OAAO,QAAQ,CAAC,KAAK,CAAC,eAAe,CAAC;IACxC,CAAC;IAED,OAAO,cAAc,CAAC;AACxB,CAAC"}
1
+ {"version":3,"file":"craftTransaction.js","sourceRoot":"","sources":["../../src/logic/craftTransaction.ts"],"names":[],"mappings":"AAIA,OAAO,gBAAgB,EAAE,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AACnE,OAAO,iBAAiB,MAAM,qBAAqB,CAAC;AACpD,OAAO,SAAS,MAAM,cAAc,CAAC;AACrC,OAAO,EAAE,cAAc,EAAmB,MAAM,cAAc,CAAC;AAG/D,MAAM,CAAC,KAAK,UAAU,gBAAgB,CACpC,WAAqB,EACrB,iBAAgD;IAEhD,MAAM,KAAK,GAAG,iBAAiB,EAAE,CAAC;IAClC,KAAK,CAAC,MAAM,GAAG,SAAS,CAAC,iBAAiB,CAAC,MAAM,CAAC,QAAQ,EAAE,CAAC,CAAC;IAC9D,KAAK,CAAC,SAAS,GAAG,iBAAiB,CAAC,SAAS,CAAC;IAC9C,KAAK,CAAC,IAAI,GAAG,iBAAiB,CAAC,IAAI,CAAC;IACpC,KAAK,CAAC,YAAY,GAAG,iBAAiB,CAAC,MAAM,KAAK,MAAM,CAAC,CAAC,CAAC,CAAC;IAE5D,MAAM,OAAO,GAAG;QACd,YAAY,EAAE,iBAAiB,CAAC,MAAM;QACtC,IAAI,EAAE,iBAAiB,CAAC,eAAe;QACvC,WAAW,EAAE,IAAI,KAAK,EAAgB;KAC5B,CAAC;IAEb,IAAI,SAAiC,CAAC;IACtC,MAAM,eAAe,GAAG,kBAAkB,CAAC,iBAAiB,CAAC,CAAC;IAC9D,IAAI,OAAiC,CAAC;IAEtC,IAAI,KAAK,CAAC,YAAY,KAAK,IAAI,EAAE,CAAC;QAChC,MAAM,QAAQ,GAAG,MAAM,WAAW,CAAC,WAAW,CAAC,iBAAiB,CAAC,MAAM,CAAC,CAAC;QACzE,OAAO,GAAG,QAAQ,EAAE,IAAI,CACtB,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,eAAe,CAAC,WAAW,EAAE,KAAK,eAAe,EAAE,WAAW,EAAE,CACxE,CAAC;QAEF,IAAI,OAAO,KAAK,SAAS,EAAE,CAAC;YAC1B,KAAK,CAAC,MAAM,GAAG,SAAS,CAAC,OAAO,CAAC,MAAM,CAAC,QAAQ,EAAE,CAAC,CAAC;QACtD,CAAC;IACH,CAAC;IAED,IAAI,iBAAiB,CAAC,KAAK,CAAC,IAAI,KAAK,OAAO,EAAE,CAAC;QAC7C,SAAS,GAAG,iBAAiB,CAAC,KAAK,CAAC,QAAsB,CAAC;IAC7D,CAAC;IAED,MAAM,OAAO,GAAG,MAAM,gBAAgB,CACpC,OAAO,EACP,KAAK,EACL,WAAW,EACX,eAAe,EACf,SAAS,IAAI,SAAS,CACvB,CAAC;IAEF,OAAO,OAAO,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE,CAAC;AACvC,CAAC;AAED,SAAS,kBAAkB,CAAC,QAAuC;IACjE,IAAI,QAAQ,CAAC,KAAK,CAAC,IAAI,KAAK,OAAO,IAAI,WAAW,CAAC,QAAQ,CAAC,KAAK,CAAC,QAAQ,CAAC,EAAE,CAAC;QAC5E,OAAO,QAAQ,CAAC,KAAK,CAAC,eAAe,CAAC;IACxC,CAAC;IAED,OAAO,cAAc,CAAC;AACxB,CAAC"}
@@ -2,7 +2,7 @@ import { type AccountData, Ed25519PublicKey, type GasEstimation, type InputEntry
2
2
  import BigNumber from "bignumber.js";
3
3
  import type { AptosBalance, AptosTransaction, TransactionOptions } from "../types";
4
4
  import { BlockInfo, FeeEstimation, Operation, Pagination, TransactionIntent } from "@ledgerhq/coin-framework/api/types";
5
- import { AptosAsset, AptosExtra, AptosFeeParameters, AptosSender } from "../types/assets";
5
+ import { AptosAsset } from "../types/assets";
6
6
  export declare class AptosAPI {
7
7
  private readonly aptosConfig;
8
8
  private readonly aptosClient;
@@ -23,7 +23,7 @@ export declare class AptosAPI {
23
23
  }): Promise<UserTransactionResponse[]>;
24
24
  broadcast(tx: string): Promise<string>;
25
25
  getLastBlock(): Promise<BlockInfo>;
26
- estimateFees(transactionIntent: TransactionIntent<AptosAsset, AptosExtra, AptosSender>): Promise<FeeEstimation<AptosFeeParameters>>;
26
+ estimateFees(transactionIntent: TransactionIntent<AptosAsset>): Promise<FeeEstimation>;
27
27
  listOperations(rawAddress: string, pagination: Pagination): Promise<[Operation<AptosAsset>[], string]>;
28
28
  private fetchTransactions;
29
29
  private richItemByVersion;
@@ -1 +1 @@
1
- {"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../../src/network/client.ts"],"names":[],"mappings":"AAEA,OAAO,EACL,KAAK,WAAW,EAGhB,gBAAgB,EAChB,KAAK,aAAa,EAClB,KAAK,sBAAsB,EAG3B,KAAK,cAAc,EAGnB,KAAK,uBAAuB,EAE5B,KAAK,aAAa,EAInB,MAAM,oBAAoB,CAAC;AAG5B,OAAO,SAAS,MAAM,cAAc,CAAC;AASrC,OAAO,KAAK,EAAE,YAAY,EAAE,gBAAgB,EAAE,kBAAkB,EAAE,MAAM,UAAU,CAAC;AAMnF,OAAO,EACL,SAAS,EACT,aAAa,EACb,SAAS,EACT,UAAU,EACV,iBAAiB,EAClB,MAAM,oCAAoC,CAAC;AAC5C,OAAO,EAAE,UAAU,EAAE,UAAU,EAAE,kBAAkB,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC;AAa1F,qBAAa,QAAQ;IACnB,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAc;IAC1C,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAQ;IACpC,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAuB;gBAExC,oBAAoB,EAAE,aAAa,GAAG,MAAM;IAoBlD,UAAU,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,WAAW,CAAC;IAIjD,cAAc,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM;;;;;IAahD,gBAAgB,IAAI,OAAO,CAAC,aAAa,CAAC;IAI1C,mBAAmB,CACvB,OAAO,EAAE,MAAM,EACf,OAAO,EAAE,sBAAsB,EAC/B,OAAO,EAAE,kBAAkB,GAC1B,OAAO,CAAC,cAAc,CAAC;IA6BpB,mBAAmB,CACvB,OAAO,EAAE,gBAAgB,EACzB,EAAE,EAAE,cAAc,EAClB,OAAO;;;;KAIN,GACA,OAAO,CAAC,uBAAuB,EAAE,CAAC;IAQ/B,SAAS,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IActC,YAAY,IAAI,OAAO,CAAC,SAAS,CAAC;IAUlC,YAAY,CAChB,iBAAiB,EAAE,iBAAiB,CAAC,UAAU,EAAE,UAAU,EAAE,WAAW,CAAC,GACxE,OAAO,CAAC,aAAa,CAAC,kBAAkB,CAAC,CAAC;IAsDvC,cAAc,CAClB,UAAU,EAAE,MAAM,EAClB,UAAU,EAAE,UAAU,GACrB,OAAO,CAAC,CAAC,SAAS,CAAC,UAAU,CAAC,EAAE,EAAE,MAAM,CAAC,CAAC;YAQ/B,iBAAiB;YA8BjB,iBAAiB;YAkBjB,SAAS;YAQT,QAAQ;IAQhB,WAAW,CAAC,OAAO,EAAE,MAAM,EAAE,eAAe,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,YAAY,EAAE,CAAC;CA2BtF"}
1
+ {"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../../src/network/client.ts"],"names":[],"mappings":"AAEA,OAAO,EACL,KAAK,WAAW,EAGhB,gBAAgB,EAChB,KAAK,aAAa,EAClB,KAAK,sBAAsB,EAG3B,KAAK,cAAc,EAGnB,KAAK,uBAAuB,EAE5B,KAAK,aAAa,EAInB,MAAM,oBAAoB,CAAC;AAG5B,OAAO,SAAS,MAAM,cAAc,CAAC;AASrC,OAAO,KAAK,EAAE,YAAY,EAAE,gBAAgB,EAAE,kBAAkB,EAAE,MAAM,UAAU,CAAC;AAMnF,OAAO,EACL,SAAS,EACT,aAAa,EACb,SAAS,EACT,UAAU,EACV,iBAAiB,EAClB,MAAM,oCAAoC,CAAC;AAC5C,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAa7C,qBAAa,QAAQ;IACnB,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAc;IAC1C,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAQ;IACpC,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAuB;gBAExC,oBAAoB,EAAE,aAAa,GAAG,MAAM;IAoBlD,UAAU,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,WAAW,CAAC;IAIjD,cAAc,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM;;;;;IAahD,gBAAgB,IAAI,OAAO,CAAC,aAAa,CAAC;IAI1C,mBAAmB,CACvB,OAAO,EAAE,MAAM,EACf,OAAO,EAAE,sBAAsB,EAC/B,OAAO,EAAE,kBAAkB,GAC1B,OAAO,CAAC,cAAc,CAAC;IA6BpB,mBAAmB,CACvB,OAAO,EAAE,gBAAgB,EACzB,EAAE,EAAE,cAAc,EAClB,OAAO;;;;KAIN,GACA,OAAO,CAAC,uBAAuB,EAAE,CAAC;IAQ/B,SAAS,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IActC,YAAY,IAAI,OAAO,CAAC,SAAS,CAAC;IAUlC,YAAY,CAAC,iBAAiB,EAAE,iBAAiB,CAAC,UAAU,CAAC,GAAG,OAAO,CAAC,aAAa,CAAC;IAmDtF,cAAc,CAClB,UAAU,EAAE,MAAM,EAClB,UAAU,EAAE,UAAU,GACrB,OAAO,CAAC,CAAC,SAAS,CAAC,UAAU,CAAC,EAAE,EAAE,MAAM,CAAC,CAAC;YAQ/B,iBAAiB;YA8BjB,iBAAiB;YAkBjB,SAAS;YAQT,QAAQ;IAQhB,WAAW,CAAC,OAAO,EAAE,MAAM,EAAE,eAAe,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,YAAY,EAAE,CAAC;CA2BtF"}
@@ -113,7 +113,7 @@ export class AptosAPI {
113
113
  };
114
114
  }
115
115
  async estimateFees(transactionIntent) {
116
- const publicKeyEd = new Ed25519PublicKey(transactionIntent.sender.xpub);
116
+ const publicKeyEd = new Ed25519PublicKey(transactionIntent?.senderPublicKey ?? "");
117
117
  const txPayload = {
118
118
  function: "0x1::aptos_account::transfer_coins",
119
119
  typeArguments: [APTOS_ASSET_ID],
@@ -139,7 +139,7 @@ export class AptosAPI {
139
139
  maxGasAmount: DEFAULT_GAS.toString(),
140
140
  gasUnitPrice: DEFAULT_GAS_PRICE.toString(),
141
141
  };
142
- const tx = await this.generateTransaction(transactionIntent.sender.freshAddress, txPayload, txOptions);
142
+ const tx = await this.generateTransaction(transactionIntent.sender, txPayload, txOptions);
143
143
  const simulation = await this.simulateTransaction(publicKeyEd, tx);
144
144
  const completedTx = simulation[0];
145
145
  const gasLimit = new BigNumber(completedTx.gas_used).multipliedBy(ESTIMATE_GAS_MUL);
@@ -148,6 +148,7 @@ export class AptosAPI {
148
148
  return {
149
149
  value: BigInt(expectedGas.toString()),
150
150
  parameters: {
151
+ storageLimit: BigInt(0),
151
152
  gasLimit: BigInt(gasLimit.toString()),
152
153
  gasPrice: BigInt(gasPrice.toString()),
153
154
  },
@@ -1 +1 @@
1
- {"version":3,"file":"client.js","sourceRoot":"","sources":["../../src/network/client.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"client.js","sourceRoot":"","sources":["../../src/network/client.ts"],"names":[],"mappings":"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"}
@@ -5,10 +5,6 @@ export type AptosTokenInformation = {
5
5
  contractAddress: string;
6
6
  };
7
7
  export type AptosExtra = Record<string, unknown>;
8
- export type AptosSender = {
9
- xpub: string;
10
- freshAddress: string;
11
- };
12
8
  export type AptosFeeParameters = {
13
9
  gasLimit: bigint;
14
10
  gasPrice: bigint;
@@ -1 +1 @@
1
- {"version":3,"file":"assets.d.ts","sourceRoot":"","sources":["../../src/types/assets.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,oCAAoC,CAAC;AAEhE,MAAM,MAAM,UAAU,GAAG,KAAK,CAAC,qBAAqB,CAAC,CAAC;AAEtD,MAAM,MAAM,qBAAqB,GAAG;IAClC,QAAQ,EAAE,MAAM,CAAC;IACjB,eAAe,EAAE,MAAM,CAAC;CACzB,CAAC;AAEF,MAAM,MAAM,UAAU,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;AAEjD,MAAM,MAAM,WAAW,GAAG;IACxB,IAAI,EAAE,MAAM,CAAC;IACb,YAAY,EAAE,MAAM,CAAC;CACtB,CAAC;AAEF,MAAM,MAAM,kBAAkB,GAAG;IAC/B,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,EAAE,MAAM,CAAC;CAClB,CAAC"}
1
+ {"version":3,"file":"assets.d.ts","sourceRoot":"","sources":["../../src/types/assets.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,oCAAoC,CAAC;AAEhE,MAAM,MAAM,UAAU,GAAG,KAAK,CAAC,qBAAqB,CAAC,CAAC;AAEtD,MAAM,MAAM,qBAAqB,GAAG;IAClC,QAAQ,EAAE,MAAM,CAAC;IACjB,eAAe,EAAE,MAAM,CAAC;CACzB,CAAC;AAEF,MAAM,MAAM,UAAU,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;AAEjD,MAAM,MAAM,kBAAkB,GAAG;IAC/B,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,EAAE,MAAM,CAAC;CAClB,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@ledgerhq/coin-aptos",
3
- "version": "2.4.0",
3
+ "version": "2.5.0-nightly.0",
4
4
  "description": "Ledger Aptos Coin integration",
5
5
  "keywords": [
6
6
  "Ledger",
@@ -90,8 +90,8 @@
90
90
  "invariant": "^2.2.4",
91
91
  "lodash": "^4.17.21",
92
92
  "rxjs": "^7.8.1",
93
- "@ledgerhq/coin-framework": "^5.4.1",
94
- "@ledgerhq/cryptoassets": "^13.20.0",
93
+ "@ledgerhq/coin-framework": "^5.5.0-nightly.0",
94
+ "@ledgerhq/cryptoassets": "^13.21.0-nightly.0",
95
95
  "@ledgerhq/devices": "8.4.7",
96
96
  "@ledgerhq/errors": "^6.22.0",
97
97
  "@ledgerhq/live-env": "^2.11.0",
@@ -1,7 +1,7 @@
1
1
  import { Hex, RawTransaction, Deserializer } from "@aptos-labs/ts-sdk";
2
2
  import type { TransactionIntent } from "@ledgerhq/coin-framework/api/types";
3
3
  import { createApi } from "../../api";
4
- import type { AptosAsset, AptosExtra, AptosSender } from "../../types/assets";
4
+ import type { AptosAsset } from "../../types/assets";
5
5
  import { AptosAPI } from "../../network";
6
6
  import { APTOS_ASSET_ID } from "../../constants";
7
7
 
@@ -41,20 +41,17 @@ describe("craftTransaction", () => {
41
41
  getBalances: mockGetBalances,
42
42
  }));
43
43
 
44
- const SENDER: AptosSender = {
45
- xpub: "public-key",
46
- freshAddress: SENDER_ADDR,
47
- };
48
44
  const api = createApi({
49
45
  aptosSettings: {},
50
46
  });
51
47
 
52
- const txArg: TransactionIntent<AptosAsset, AptosExtra, AptosSender> = {
48
+ const txArg: TransactionIntent<AptosAsset> = {
53
49
  type: "send",
54
- sender: SENDER,
50
+ sender: SENDER_ADDR,
51
+ senderPublicKey: "public-key",
55
52
  recipient: RECIPIENT_ADDR,
56
53
  amount: 10n,
57
- asset: { type: "native" },
54
+ asset: { type: "token", standard: "coin", contractAddress: "0x42::token::Token" },
58
55
  };
59
56
 
60
57
  const tx = await api.craftTransaction(txArg);
@@ -65,10 +62,10 @@ describe("craftTransaction", () => {
65
62
  expect(mockGenerateTransaction).toHaveBeenCalledTimes(1);
66
63
 
67
64
  expect(mockGenerateTransaction).toHaveBeenCalledWith(
68
- SENDER.freshAddress,
65
+ SENDER_ADDR,
69
66
  expect.objectContaining({
70
67
  function: "0x1::aptos_account::transfer_coins",
71
- typeArguments: [APTOS_ASSET_ID],
68
+ typeArguments: ["0x42::token::Token"],
72
69
  functionArguments: [RECIPIENT_ADDR, txArg.amount.toString()],
73
70
  }),
74
71
  expect.anything(),
@@ -85,17 +82,14 @@ describe("craftTransaction", () => {
85
82
  getBalances: mockGetBalances,
86
83
  }));
87
84
 
88
- const SENDER: AptosSender = {
89
- xpub: "public-key",
90
- freshAddress: SENDER_ADDR,
91
- };
92
85
  const api = createApi({
93
86
  aptosSettings: {},
94
87
  });
95
88
 
96
- const txArg: TransactionIntent<AptosAsset, AptosExtra, AptosSender> = {
89
+ const txArg: TransactionIntent<AptosAsset> = {
97
90
  type: "send",
98
- sender: SENDER,
91
+ sender: SENDER_ADDR,
92
+ senderPublicKey: "public-key",
99
93
  recipient: RECIPIENT_ADDR,
100
94
  amount: 0n,
101
95
  asset: { type: "native" },
@@ -109,7 +103,7 @@ describe("craftTransaction", () => {
109
103
  expect(mockGenerateTransaction).toHaveBeenCalledTimes(1);
110
104
 
111
105
  expect(mockGenerateTransaction).toHaveBeenCalledWith(
112
- SENDER.freshAddress,
106
+ SENDER_ADDR,
113
107
  expect.objectContaining({
114
108
  function: "0x1::aptos_account::transfer_coins",
115
109
  typeArguments: [APTOS_ASSET_ID],
@@ -129,17 +123,14 @@ describe("craftTransaction", () => {
129
123
  getBalances: mockGetBalances,
130
124
  }));
131
125
 
132
- const SENDER: AptosSender = {
133
- xpub: "public-key",
134
- freshAddress: SENDER_ADDR,
135
- };
136
126
  const api = createApi({
137
127
  aptosSettings: {},
138
128
  });
139
129
 
140
- const txArg: TransactionIntent<AptosAsset, AptosExtra, AptosSender> = {
130
+ const txArg: TransactionIntent<AptosAsset> = {
141
131
  type: "send",
142
- sender: SENDER,
132
+ sender: SENDER_ADDR,
133
+ senderPublicKey: "public-key",
143
134
  recipient: RECIPIENT_ADDR,
144
135
  amount: 10n,
145
136
  asset: { type: "token", standard: "coin", contractAddress: "0x42::token::Token" },
@@ -153,7 +144,7 @@ describe("craftTransaction", () => {
153
144
  expect(mockGenerateTransaction).toHaveBeenCalledTimes(1);
154
145
 
155
146
  expect(mockGenerateTransaction).toHaveBeenCalledWith(
156
- SENDER.freshAddress,
147
+ SENDER_ADDR,
157
148
  expect.objectContaining({
158
149
  function: "0x1::aptos_account::transfer_coins",
159
150
  typeArguments: ["0x42::token::Token"],
@@ -173,17 +164,14 @@ describe("craftTransaction", () => {
173
164
  getBalances: mockGetBalances,
174
165
  }));
175
166
 
176
- const SENDER: AptosSender = {
177
- xpub: "public-key",
178
- freshAddress: SENDER_ADDR,
179
- };
180
167
  const api = createApi({
181
168
  aptosSettings: {},
182
169
  });
183
170
 
184
- const txArg: TransactionIntent<AptosAsset, AptosExtra, AptosSender> = {
171
+ const txArg: TransactionIntent<AptosAsset> = {
185
172
  type: "send",
186
- sender: SENDER,
173
+ sender: SENDER_ADDR,
174
+ senderPublicKey: "public-key",
187
175
  recipient: RECIPIENT_ADDR,
188
176
  amount: 0n,
189
177
  asset: { type: "token", standard: "fungible_asset", contractAddress: "0x42" },
@@ -197,7 +185,7 @@ describe("craftTransaction", () => {
197
185
  expect(mockGenerateTransaction).toHaveBeenCalledTimes(1);
198
186
 
199
187
  expect(mockGenerateTransaction).toHaveBeenCalledWith(
200
- SENDER.freshAddress,
188
+ SENDER_ADDR,
201
189
  expect.objectContaining({
202
190
  function: "0x1::primary_fungible_store::transfer",
203
191
  typeArguments: ["0x1::fungible_asset::Metadata"],
@@ -217,17 +205,14 @@ describe("craftTransaction", () => {
217
205
  getBalances: mockGetBalances,
218
206
  }));
219
207
 
220
- const SENDER: AptosSender = {
221
- xpub: "public-key",
222
- freshAddress: SENDER_ADDR,
223
- };
224
208
  const api = createApi({
225
209
  aptosSettings: {},
226
210
  });
227
211
 
228
- const txArg: TransactionIntent<AptosAsset, AptosExtra, AptosSender> = {
212
+ const txArg: TransactionIntent<AptosAsset> = {
229
213
  type: "send",
230
- sender: SENDER,
214
+ sender: SENDER_ADDR,
215
+ senderPublicKey: "public-key",
231
216
  recipient: RECIPIENT_ADDR,
232
217
  amount: 10n,
233
218
  asset: { type: "token", standard: "asset", contractAddress: "0x42::token::Token" },
@@ -1,7 +1,6 @@
1
1
  import { Deserializer, Hex, Network, RawTransaction } from "@aptos-labs/ts-sdk";
2
2
  import { createApi } from "../../api";
3
3
  import { getEnv } from "@ledgerhq/live-env";
4
- import type { AptosSender } from "../../types/assets";
5
4
  import { DEFAULT_GAS, DEFAULT_GAS_PRICE } from "../../constants";
6
5
 
7
6
  describe("createApi", () => {
@@ -15,17 +14,17 @@ describe("createApi", () => {
15
14
  const assetTypeNative = "native";
16
15
  const assetTypeToken = "token";
17
16
 
18
- const sender: AptosSender = {
17
+ const sender = {
19
18
  xpub: "0x934887885b27a0407bf8a5e0bbc6b6371254bea94de5510e948bcc92dc0a519b",
20
19
  freshAddress: "0x0ef3b40f6ecd5583218d1985e0d54b54e8785ad2ec2d27ed1720ec16bb11686f",
21
20
  };
22
21
 
23
- const recipient: AptosSender = {
22
+ const recipient = {
24
23
  xpub: "0x7fd6bfaac17c2c763f624b1f95cd4911e3646a5b777b03cc24f93ed0ac3f3e2b",
25
24
  freshAddress: "0x4859a161dfe13081cf5a5eac409cd38f707c06176a21ddc875260c2ce63f3a28",
26
25
  };
27
26
 
28
- const tokenAccount: AptosSender = {
27
+ const tokenAccount = {
29
28
  xpub: "0xeacada8192f15185637e475d7783e14486e232d8b9978ffa127383847ffc5318",
30
29
  freshAddress: "0xb8922507317d85197d70c2bc1afc949c759fd0a62c8841a4300d1e2b63649bf6",
31
30
  };
@@ -58,7 +57,8 @@ describe("createApi", () => {
58
57
  type: "native",
59
58
  },
60
59
  type: "send",
61
- sender,
60
+ sender: sender.freshAddress,
61
+ senderPublicKey: sender.xpub,
62
62
  amount,
63
63
  recipient: recipient.freshAddress,
64
64
  });
@@ -77,7 +77,8 @@ describe("createApi", () => {
77
77
  "0x50788befc1107c0cc4473848a92e5c783c635866ce3c98de71d2eeb7d2a34f85::usdc_coin::USDCoin",
78
78
  },
79
79
  type: "send",
80
- sender,
80
+ sender: sender.freshAddress,
81
+ senderPublicKey: sender.xpub,
81
82
  amount,
82
83
  recipient: recipient.freshAddress,
83
84
  });
@@ -95,7 +96,8 @@ describe("createApi", () => {
95
96
  contractAddress: "0x357b0b74bc833e95a115ad22604854d6b0fca151cecd94111770e5d6ffc9dc2b",
96
97
  },
97
98
  type: "send",
98
- sender,
99
+ sender: sender.freshAddress,
100
+ senderPublicKey: sender.xpub,
99
101
  amount,
100
102
  recipient: recipient.freshAddress,
101
103
  });
@@ -109,7 +111,8 @@ describe("createApi", () => {
109
111
  const hex = await api.craftTransaction(
110
112
  {
111
113
  amount: 1n,
112
- sender: sender,
114
+ sender: sender.freshAddress,
115
+ senderPublicKey: sender.xpub,
113
116
  recipient: recipient.freshAddress,
114
117
  type: "send",
115
118
  asset: { type: "native" },
@@ -130,7 +133,8 @@ describe("createApi", () => {
130
133
  const hex = await api.craftTransaction(
131
134
  {
132
135
  amount: 1n,
133
- sender: sender,
136
+ sender: sender.freshAddress,
137
+ senderPublicKey: sender.xpub,
134
138
  recipient: recipient.freshAddress,
135
139
  type: "send",
136
140
  asset: {
@@ -156,7 +160,8 @@ describe("createApi", () => {
156
160
  const hex = await api.craftTransaction(
157
161
  {
158
162
  amount: 0n,
159
- sender: sender,
163
+ sender: sender.freshAddress,
164
+ senderPublicKey: sender.xpub,
160
165
  recipient: recipient.freshAddress,
161
166
  type: "send",
162
167
  asset: {
@@ -184,7 +189,8 @@ describe("createApi", () => {
184
189
  const hex = await api.craftTransaction(
185
190
  {
186
191
  amount: 0n,
187
- sender: s,
192
+ sender: s.freshAddress,
193
+ senderPublicKey: s.xpub,
188
194
  recipient: r.freshAddress,
189
195
  type: "send",
190
196
  asset: {
@@ -1,6 +1,6 @@
1
1
  import { Aptos } from "@aptos-labs/ts-sdk";
2
- import type { Api } from "@ledgerhq/coin-framework/api/types";
3
- import type { AptosAsset, AptosExtra, AptosFeeParameters, AptosSender } from "../../types/assets";
2
+ import type { AlpacaApi } from "@ledgerhq/coin-framework/api/types";
3
+ import type { AptosAsset } from "../../types/assets";
4
4
  import type { AptosConfig } from "../../config";
5
5
  import { createApi } from "../../api";
6
6
  import coinConfig from "../../config";
@@ -33,8 +33,7 @@ describe("createApi", () => {
33
33
  });
34
34
 
35
35
  it("should return an API object with alpaca api methods", () => {
36
- const api: Api<AptosAsset, AptosExtra, AptosSender, AptosFeeParameters> =
37
- createApi(mockAptosConfig);
36
+ const api: AlpacaApi<AptosAsset> = createApi(mockAptosConfig);
38
37
 
39
38
  // Check that methods are set with what we expect
40
39
  expect(api.broadcast).toBeDefined();
@@ -70,8 +69,7 @@ describe("lastBlock", () => {
70
69
  }),
71
70
  }));
72
71
 
73
- const api: Api<AptosAsset, AptosExtra, AptosSender, AptosFeeParameters> =
74
- createApi(mockAptosConfig);
72
+ const api: AlpacaApi<AptosAsset> = createApi(mockAptosConfig);
75
73
 
76
74
  expect(await api.lastBlock()).toStrictEqual({
77
75
  height: 123,
@@ -14,7 +14,7 @@ import {
14
14
  import network from "@ledgerhq/live-network";
15
15
  import BigNumber from "bignumber.js";
16
16
  import { AptosAPI } from "../../network";
17
- import { AptosAsset, AptosExtra, AptosSender } from "../../types/assets";
17
+ import { AptosAsset } from "../../types/assets";
18
18
  import { Pagination, TransactionIntent } from "@ledgerhq/coin-framework/api/types";
19
19
  import { APTOS_ASSET_ID } from "../../constants";
20
20
  import { AptosBalance, AptosTransaction } from "../../types";
@@ -615,19 +615,20 @@ describe("Aptos API", () => {
615
615
  }));
616
616
 
617
617
  const amount = BigInt(100);
618
- const sender: AptosSender = {
618
+ const sender = {
619
619
  xpub: "xpub",
620
620
  freshAddress: "address1",
621
621
  };
622
622
  const recipient = "address2";
623
623
 
624
624
  const api = new AptosAPI("aptos");
625
- const transactionIntent: TransactionIntent<AptosAsset, AptosExtra, AptosSender> = {
625
+ const transactionIntent: TransactionIntent<AptosAsset> = {
626
626
  asset: {
627
627
  type: "native",
628
628
  },
629
629
  type: "send",
630
- sender,
630
+ sender: sender.freshAddress,
631
+ senderPublicKey: sender.xpub,
631
632
  amount,
632
633
  recipient,
633
634
  };
@@ -679,21 +680,22 @@ describe("Aptos API", () => {
679
680
  }));
680
681
 
681
682
  const amount = BigInt(100);
682
- const sender: AptosSender = {
683
+ const sender = {
683
684
  xpub: "xpub",
684
685
  freshAddress: "address1",
685
686
  };
686
687
  const recipient = "address2";
687
688
 
688
689
  const api = new AptosAPI("aptos");
689
- const transactionIntent: TransactionIntent<AptosAsset, AptosExtra, AptosSender> = {
690
+ const transactionIntent: TransactionIntent<AptosAsset> = {
690
691
  asset: {
691
692
  type: "token",
692
693
  standard: "coin",
693
694
  contractAddress: "0x111",
694
695
  },
695
696
  type: "send",
696
- sender,
697
+ sender: sender.freshAddress,
698
+ senderPublicKey: sender.xpub,
697
699
  amount,
698
700
  recipient,
699
701
  };
@@ -744,21 +746,22 @@ describe("Aptos API", () => {
744
746
  }));
745
747
 
746
748
  const amount = BigInt(100);
747
- const sender: AptosSender = {
749
+ const sender = {
748
750
  xpub: "xpub",
749
751
  freshAddress: "address1",
750
752
  };
751
753
  const recipient = "address2";
752
754
 
753
755
  const api = new AptosAPI("aptos");
754
- const transactionIntent: TransactionIntent<AptosAsset, AptosExtra, AptosSender> = {
756
+ const transactionIntent: TransactionIntent<AptosAsset> = {
755
757
  asset: {
756
758
  type: "token",
757
759
  standard: "fungible_asset",
758
760
  contractAddress: "0x111",
759
761
  },
760
762
  type: "send",
761
- sender,
763
+ sender: sender.freshAddress,
764
+ senderPublicKey: sender.xpub,
762
765
  amount,
763
766
  recipient,
764
767
  };
package/src/api/index.ts CHANGED
@@ -1,16 +1,14 @@
1
- import type { Api } from "@ledgerhq/coin-framework/api/index";
1
+ import type { AlpacaApi } from "@ledgerhq/coin-framework/api/index";
2
2
  import type { AptosConfig as AptosConfigApi } from "../config";
3
3
  import type { Balance, Pagination, TransactionIntent } from "@ledgerhq/coin-framework/api/types";
4
4
  import coinConfig from "../config";
5
- import type { AptosAsset, AptosExtra, AptosFeeParameters, AptosSender } from "../types/assets";
5
+ import type { AptosAsset } from "../types/assets";
6
6
  import { AptosAPI } from "../network";
7
7
  import { combine } from "../logic/combine";
8
8
  import { craftTransaction } from "../logic/craftTransaction";
9
9
  import { getBalances } from "../logic/getBalances";
10
10
 
11
- export function createApi(
12
- config: AptosConfigApi,
13
- ): Api<AptosAsset, AptosExtra, AptosSender, AptosFeeParameters> {
11
+ export function createApi(config: AptosConfigApi): AlpacaApi<AptosAsset> {
14
12
  coinConfig.setCoinConfig(() => ({ ...config, status: { type: "active" } }));
15
13
 
16
14
  const client = new AptosAPI(config.aptosSettings);
@@ -20,7 +18,7 @@ export function createApi(
20
18
  combine: (tx, signature, pubkey): string => combine(tx, signature, pubkey),
21
19
  craftTransaction: (transactionIntent, _customFees): Promise<string> =>
22
20
  craftTransaction(client, transactionIntent),
23
- estimateFees: (transactionIntent: TransactionIntent<AptosAsset, AptosExtra, AptosSender>) =>
21
+ estimateFees: (transactionIntent: TransactionIntent<AptosAsset>) =>
24
22
  client.estimateFees(transactionIntent),
25
23
  getBalance: (address): Promise<Balance<AptosAsset>[]> => getBalances(client, address),
26
24
  lastBlock: () => client.getLastBlock(),
@@ -1,5 +1,5 @@
1
1
  import type { TransactionIntent } from "@ledgerhq/coin-framework/lib/api/types";
2
- import type { AptosAsset, AptosExtra, AptosSender } from "../types/assets";
2
+ import type { AptosAsset } from "../types/assets";
3
3
  import type { Account, TokenAccount } from "@ledgerhq/types-live";
4
4
  import type { AptosAPI } from "../network";
5
5
  import buildTransaction, { isTokenType } from "./buildTransaction";
@@ -10,7 +10,7 @@ import type { AptosBalance } from "../types";
10
10
 
11
11
  export async function craftTransaction(
12
12
  aptosClient: AptosAPI,
13
- transactionIntent: TransactionIntent<AptosAsset, AptosExtra, AptosSender>,
13
+ transactionIntent: TransactionIntent<AptosAsset>,
14
14
  ): Promise<string> {
15
15
  const newTx = createTransaction();
16
16
  newTx.amount = BigNumber(transactionIntent.amount.toString());
@@ -19,8 +19,8 @@ export async function craftTransaction(
19
19
  newTx.useAllAmount = transactionIntent.amount === BigInt(0);
20
20
 
21
21
  const account = {
22
- freshAddress: transactionIntent.sender.freshAddress,
23
- xpub: transactionIntent.sender.xpub,
22
+ freshAddress: transactionIntent.sender,
23
+ xpub: transactionIntent.senderPublicKey,
24
24
  subAccounts: new Array<TokenAccount>(),
25
25
  } as Account;
26
26
 
@@ -29,7 +29,7 @@ export async function craftTransaction(
29
29
  let balance: AptosBalance | undefined;
30
30
 
31
31
  if (newTx.useAllAmount === true) {
32
- const balances = await aptosClient.getBalances(transactionIntent.sender.freshAddress);
32
+ const balances = await aptosClient.getBalances(transactionIntent.sender);
33
33
  balance = balances?.find(
34
34
  b => b.contractAddress.toLowerCase() === contractAddress?.toLowerCase(),
35
35
  );
@@ -54,9 +54,7 @@ export async function craftTransaction(
54
54
  return aptosTx.bcsToHex().toString();
55
55
  }
56
56
 
57
- function getContractAddress(
58
- txIntent: TransactionIntent<AptosAsset, AptosExtra, AptosSender>,
59
- ): string {
57
+ function getContractAddress(txIntent: TransactionIntent<AptosAsset>): string {
60
58
  if (txIntent.asset.type === "token" && isTokenType(txIntent.asset.standard)) {
61
59
  return txIntent.asset.contractAddress;
62
60
  }
@@ -43,7 +43,7 @@ import {
43
43
  Pagination,
44
44
  TransactionIntent,
45
45
  } from "@ledgerhq/coin-framework/api/types";
46
- import { AptosAsset, AptosExtra, AptosFeeParameters, AptosSender } from "../types/assets";
46
+ import { AptosAsset } from "../types/assets";
47
47
  import { log } from "@ledgerhq/logs";
48
48
  import { transactionsToOperations } from "../logic/transactionsToOperations";
49
49
  import { isTestnet } from "../logic/isTestnet";
@@ -175,10 +175,8 @@ export class AptosAPI {
175
175
  };
176
176
  }
177
177
 
178
- async estimateFees(
179
- transactionIntent: TransactionIntent<AptosAsset, AptosExtra, AptosSender>,
180
- ): Promise<FeeEstimation<AptosFeeParameters>> {
181
- const publicKeyEd = new Ed25519PublicKey(transactionIntent.sender.xpub);
178
+ async estimateFees(transactionIntent: TransactionIntent<AptosAsset>): Promise<FeeEstimation> {
179
+ const publicKeyEd = new Ed25519PublicKey(transactionIntent?.senderPublicKey ?? "");
182
180
 
183
181
  const txPayload: InputEntryFunctionData = {
184
182
  function: "0x1::aptos_account::transfer_coins",
@@ -208,11 +206,7 @@ export class AptosAPI {
208
206
  gasUnitPrice: DEFAULT_GAS_PRICE.toString(),
209
207
  };
210
208
 
211
- const tx = await this.generateTransaction(
212
- transactionIntent.sender.freshAddress,
213
- txPayload,
214
- txOptions,
215
- );
209
+ const tx = await this.generateTransaction(transactionIntent.sender, txPayload, txOptions);
216
210
 
217
211
  const simulation = await this.simulateTransaction(publicKeyEd, tx);
218
212
  const completedTx = simulation[0];
@@ -225,6 +219,7 @@ export class AptosAPI {
225
219
  return {
226
220
  value: BigInt(expectedGas.toString()),
227
221
  parameters: {
222
+ storageLimit: BigInt(0),
228
223
  gasLimit: BigInt(gasLimit.toString()),
229
224
  gasPrice: BigInt(gasPrice.toString()),
230
225
  },