@ledgerhq/coin-tester-evm 1.12.0-nightly.20251218023953 → 1.12.0-nightly.20251220023811

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 (84) hide show
  1. package/CHANGELOG.md +12 -10
  2. package/README.md +1 -1
  3. package/lib/src/anvil.d.ts +1 -1
  4. package/lib/src/anvil.d.ts.map +1 -1
  5. package/lib/src/anvil.js +3 -3
  6. package/lib/src/anvil.js.map +1 -1
  7. package/lib/src/helpers.d.ts +3 -3
  8. package/lib/src/helpers.d.ts.map +1 -1
  9. package/lib/src/helpers.js +2 -3
  10. package/lib/src/helpers.js.map +1 -1
  11. package/lib/src/scenarii/blast.d.ts.map +1 -1
  12. package/lib/src/scenarii/blast.js +5 -10
  13. package/lib/src/scenarii/blast.js.map +1 -1
  14. package/lib/src/scenarii/core.d.ts.map +1 -1
  15. package/lib/src/scenarii/core.js +5 -10
  16. package/lib/src/scenarii/core.js.map +1 -1
  17. package/lib/src/scenarii/ethereum.d.ts.map +1 -1
  18. package/lib/src/scenarii/ethereum.js +5 -10
  19. package/lib/src/scenarii/ethereum.js.map +1 -1
  20. package/lib/src/scenarii/polygon.d.ts.map +1 -1
  21. package/lib/src/scenarii/polygon.js +6 -10
  22. package/lib/src/scenarii/polygon.js.map +1 -1
  23. package/lib/src/scenarii/scroll.d.ts.map +1 -1
  24. package/lib/src/scenarii/scroll.js +5 -10
  25. package/lib/src/scenarii/scroll.js.map +1 -1
  26. package/lib/src/scenarii/sonic.d.ts.map +1 -1
  27. package/lib/src/scenarii/sonic.js +5 -17
  28. package/lib/src/scenarii/sonic.js.map +1 -1
  29. package/lib/src/signer.d.ts +7 -0
  30. package/lib/src/signer.d.ts.map +1 -0
  31. package/lib/src/signer.js +25 -0
  32. package/lib/src/signer.js.map +1 -0
  33. package/lib/tsconfig.tsbuildinfo +1 -1
  34. package/lib-es/src/anvil.d.ts +1 -1
  35. package/lib-es/src/anvil.d.ts.map +1 -1
  36. package/lib-es/src/anvil.js +3 -3
  37. package/lib-es/src/anvil.js.map +1 -1
  38. package/lib-es/src/helpers.d.ts +3 -3
  39. package/lib-es/src/helpers.d.ts.map +1 -1
  40. package/lib-es/src/helpers.js +2 -3
  41. package/lib-es/src/helpers.js.map +1 -1
  42. package/lib-es/src/scenarii/blast.d.ts.map +1 -1
  43. package/lib-es/src/scenarii/blast.js +5 -10
  44. package/lib-es/src/scenarii/blast.js.map +1 -1
  45. package/lib-es/src/scenarii/core.d.ts.map +1 -1
  46. package/lib-es/src/scenarii/core.js +5 -10
  47. package/lib-es/src/scenarii/core.js.map +1 -1
  48. package/lib-es/src/scenarii/ethereum.d.ts.map +1 -1
  49. package/lib-es/src/scenarii/ethereum.js +5 -10
  50. package/lib-es/src/scenarii/ethereum.js.map +1 -1
  51. package/lib-es/src/scenarii/polygon.d.ts.map +1 -1
  52. package/lib-es/src/scenarii/polygon.js +6 -10
  53. package/lib-es/src/scenarii/polygon.js.map +1 -1
  54. package/lib-es/src/scenarii/scroll.d.ts.map +1 -1
  55. package/lib-es/src/scenarii/scroll.js +5 -10
  56. package/lib-es/src/scenarii/scroll.js.map +1 -1
  57. package/lib-es/src/scenarii/sonic.d.ts.map +1 -1
  58. package/lib-es/src/scenarii/sonic.js +5 -17
  59. package/lib-es/src/scenarii/sonic.js.map +1 -1
  60. package/lib-es/src/signer.d.ts +7 -0
  61. package/lib-es/src/signer.d.ts.map +1 -0
  62. package/lib-es/src/signer.js +22 -0
  63. package/lib-es/src/signer.js.map +1 -0
  64. package/lib-es/tsconfig.tsbuildinfo +1 -1
  65. package/package.json +11 -10
  66. package/src/anvil.ts +3 -3
  67. package/src/helpers.ts +6 -7
  68. package/src/scenarii/blast.ts +5 -10
  69. package/src/scenarii/core.ts +6 -10
  70. package/src/scenarii/ethereum.ts +5 -10
  71. package/src/scenarii/polygon.ts +6 -10
  72. package/src/scenarii/scroll.ts +5 -10
  73. package/src/scenarii/sonic.ts +5 -17
  74. package/src/scenarii.test.ts +7 -8
  75. package/src/signer.ts +31 -0
  76. package/lib/src/constants.d.ts +0 -5
  77. package/lib/src/constants.d.ts.map +0 -1
  78. package/lib/src/constants.js +0 -5
  79. package/lib/src/constants.js.map +0 -1
  80. package/lib-es/src/constants.d.ts +0 -5
  81. package/lib-es/src/constants.d.ts.map +0 -1
  82. package/lib-es/src/constants.js +0 -2
  83. package/lib-es/src/constants.js.map +0 -1
  84. package/src/constants.ts +0 -1
@@ -1,15 +1,14 @@
1
1
  import { BigNumber } from "bignumber.js";
2
2
  import { ethers } from "ethers";
3
3
  import { encodeTokenAccountId } from "@ledgerhq/coin-framework/account/index";
4
- import { killSpeculos, spawnSpeculos } from "@ledgerhq/coin-tester/signers/speculos";
5
4
  import { resetIndexer, indexBlocks, initMswHandlers, setBlock } from "../indexer";
6
5
  import { getCoinConfig, setCoinConfig } from "@ledgerhq/coin-evm/config";
7
6
  import { makeAccount } from "../fixtures";
8
7
  import { VITALIK, callMyDealer, getBridges, sonic } from "../helpers";
9
- import { defaultNanoApp } from "../constants";
10
8
  import { killAnvil, spawnAnvil } from "../anvil";
11
9
  import { LiveConfig } from "@ledgerhq/live-config/LiveConfig";
12
10
  import { BRIDGED_USDC_ON_SONIC } from "../tokenFixtures";
11
+ import { buildSigner } from "../signer";
13
12
  const USDC_ON_SONIC = BRIDGED_USDC_ON_SONIC;
14
13
  const makeScenarioTransactions = ({ address }) => {
15
14
  const scenarioSendSTransaction = {
@@ -44,17 +43,8 @@ const makeScenarioTransactions = ({ address }) => {
44
43
  export const scenarioSonic = {
45
44
  name: "Ledger Live Basic S Transactions",
46
45
  setup: async () => {
47
- const [{ transport, getOnSpeculosConfirmation }] = await Promise.all([
48
- spawnSpeculos(`/${defaultNanoApp.firmware}/Sonic/app_${defaultNanoApp.version}.elf`, {
49
- libraries: [
50
- {
51
- name: "Ethereum",
52
- endpoint: "/2.4.2/Ethereum/app_1.17.0.elf",
53
- },
54
- ],
55
- }),
56
- spawnAnvil("https://sonic-rpc.publicnode.com"),
57
- ]);
46
+ const signer = await buildSigner();
47
+ await spawnAnvil("https://sonic-rpc.publicnode.com", signer.exportMnemonic());
58
48
  setCoinConfig(() => ({
59
49
  info: {
60
50
  status: {
@@ -91,8 +81,7 @@ export const scenarioSonic = {
91
81
  },
92
82
  });
93
83
  initMswHandlers(getCoinConfig(sonic).info);
94
- const onSignerConfirmation = getOnSpeculosConfirmation();
95
- const { currencyBridge, accountBridge, getAddress } = getBridges(transport, "sonic");
84
+ const { currencyBridge, accountBridge, getAddress } = await getBridges("sonic", signer);
96
85
  const { address } = await getAddress("", {
97
86
  path: "44'/60'/0'/0/0",
98
87
  currency: sonic,
@@ -114,7 +103,6 @@ export const scenarioSonic = {
114
103
  currencyBridge,
115
104
  accountBridge,
116
105
  account: scenarioAccount,
117
- onSignerConfirmation,
118
106
  };
119
107
  },
120
108
  beforeAll: account => {
@@ -132,7 +120,7 @@ export const scenarioSonic = {
132
120
  },
133
121
  teardown: async () => {
134
122
  resetIndexer();
135
- await Promise.all([killSpeculos(), killAnvil()]);
123
+ await killAnvil();
136
124
  },
137
125
  };
138
126
  //# sourceMappingURL=sonic.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"sonic.js","sourceRoot":"","sources":["../../../src/scenarii/sonic.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"sonic.js","sourceRoot":"","sources":["../../../src/scenarii/sonic.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,7 @@
1
+ import { Signer } from "@ledgerhq/live-common/bridge/generic-alpaca/signer/Eth";
2
+ type EvmSigner = Signer & {
3
+ exportMnemonic: () => string;
4
+ };
5
+ export declare function buildSigner(): Promise<EvmSigner>;
6
+ export {};
7
+ //# sourceMappingURL=signer.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"signer.d.ts","sourceRoot":"","sources":["../../src/signer.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,MAAM,EAAE,MAAM,wDAAwD,CAAC;AAIhF,KAAK,SAAS,GAAG,MAAM,GAAG;IAAE,cAAc,EAAE,MAAM,MAAM,CAAA;CAAE,CAAC;AAW3D,wBAAsB,WAAW,IAAI,OAAO,CAAC,SAAS,CAAC,CActD"}
@@ -0,0 +1,22 @@
1
+ import { HDNodeWallet, Transaction } from "ethers";
2
+ import { generateMnemonic, mnemonicToSeed } from "bip39";
3
+ function getAddress(wallet) {
4
+ return Promise.resolve({ publicKey: wallet.publicKey, address: wallet.address });
5
+ }
6
+ function signTransaction(wallet, transaction) {
7
+ const signature = wallet.signingKey.sign(Transaction.from(transaction).unsignedHash);
8
+ return Promise.resolve(signature.serialized);
9
+ }
10
+ export async function buildSigner() {
11
+ const mnemonic = generateMnemonic();
12
+ const seed = await mnemonicToSeed(mnemonic);
13
+ const seedHex = seed.toString("hex");
14
+ const root = HDNodeWallet.fromSeed(`0x${seedHex}`);
15
+ const wallet = (path) => root.derivePath(path);
16
+ return {
17
+ exportMnemonic: () => mnemonic,
18
+ getAddress: (path) => getAddress(wallet(path)),
19
+ signTransaction: (path, transaction) => signTransaction(wallet(path), transaction),
20
+ };
21
+ }
22
+ //# sourceMappingURL=signer.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"signer.js","sourceRoot":"","sources":["../../src/signer.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,YAAY,EAAE,WAAW,EAAE,MAAM,QAAQ,CAAC;AACnD,OAAO,EAAE,gBAAgB,EAAE,cAAc,EAAE,MAAM,OAAO,CAAC;AAIzD,SAAS,UAAU,CAAC,MAAoB;IACtC,OAAO,OAAO,CAAC,OAAO,CAAC,EAAE,SAAS,EAAE,MAAM,CAAC,SAAS,EAAE,OAAO,EAAE,MAAM,CAAC,OAAO,EAAE,CAAC,CAAC;AACnF,CAAC;AAED,SAAS,eAAe,CAAC,MAAoB,EAAE,WAAmB;IAChE,MAAM,SAAS,GAAG,MAAM,CAAC,UAAU,CAAC,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,YAAY,CAAC,CAAC;IACrF,OAAO,OAAO,CAAC,OAAO,CAAC,SAAS,CAAC,UAAU,CAAC,CAAC;AAC/C,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,WAAW;IAC/B,MAAM,QAAQ,GAAG,gBAAgB,EAAE,CAAC;IACpC,MAAM,IAAI,GAAG,MAAM,cAAc,CAAC,QAAQ,CAAC,CAAC;IAC5C,MAAM,OAAO,GAAG,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;IACrC,MAAM,IAAI,GAAG,YAAY,CAAC,QAAQ,CAAC,KAAK,OAAO,EAAE,CAAC,CAAC;IAEnD,MAAM,MAAM,GAAG,CAAC,IAAY,EAAE,EAAE,CAAC,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;IAEvD,OAAO;QACL,cAAc,EAAE,GAAG,EAAE,CAAC,QAAQ;QAC9B,UAAU,EAAE,CAAC,IAAY,EAAE,EAAE,CAAC,UAAU,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;QACtD,eAAe,EAAE,CAAC,IAAY,EAAE,WAAmB,EAAE,EAAE,CACrD,eAAe,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,WAAW,CAAC;KAC7C,CAAC;AACJ,CAAC"}