@ledgerhq/coin-canton 0.5.0-nightly.4 → 0.5.0-nightly.6

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 (168) hide show
  1. package/.turbo/turbo-build.log +1 -1
  2. package/CHANGELOG.md +20 -0
  3. package/lib/api/getBalance.integ.test.js +1 -1
  4. package/lib/api/getBalance.integ.test.js.map +1 -1
  5. package/lib/api/index.d.ts.map +1 -1
  6. package/lib/api/index.js +20 -28
  7. package/lib/api/index.js.map +1 -1
  8. package/lib/api/lastBlock.integ.test.js +1 -1
  9. package/lib/api/lastBlock.integ.test.js.map +1 -1
  10. package/lib/api/listOperations.integ.test.js +1 -1
  11. package/lib/api/listOperations.integ.test.js.map +1 -1
  12. package/lib/bridge/broadcast.d.ts.map +1 -1
  13. package/lib/bridge/broadcast.js +2 -2
  14. package/lib/bridge/broadcast.js.map +1 -1
  15. package/lib/bridge/broadcast.test.js +9 -0
  16. package/lib/bridge/broadcast.test.js.map +1 -1
  17. package/lib/bridge/createTransaction.js +1 -1
  18. package/lib/bridge/createTransaction.js.map +1 -1
  19. package/lib/bridge/getTransactionStatus.js +1 -1
  20. package/lib/bridge/getTransactionStatus.js.map +1 -1
  21. package/lib/bridge/onboard.d.ts +4 -3
  22. package/lib/bridge/onboard.d.ts.map +1 -1
  23. package/lib/bridge/onboard.integ.test.js +11 -8
  24. package/lib/bridge/onboard.integ.test.js.map +1 -1
  25. package/lib/bridge/onboard.js +24 -16
  26. package/lib/bridge/onboard.js.map +1 -1
  27. package/lib/bridge/prepareTransaction.js +1 -1
  28. package/lib/bridge/prepareTransaction.js.map +1 -1
  29. package/lib/bridge/signOperation.d.ts.map +1 -1
  30. package/lib/bridge/signOperation.js +10 -5
  31. package/lib/bridge/signOperation.js.map +1 -1
  32. package/lib/bridge/sync.d.ts.map +1 -1
  33. package/lib/bridge/sync.js +28 -20
  34. package/lib/bridge/sync.js.map +1 -1
  35. package/lib/common-logic/account/getBalance.d.ts +2 -1
  36. package/lib/common-logic/account/getBalance.d.ts.map +1 -1
  37. package/lib/common-logic/account/getBalance.js +7 -7
  38. package/lib/common-logic/account/getBalance.js.map +1 -1
  39. package/lib/common-logic/account/getBalance.unit.test.js +6 -3
  40. package/lib/common-logic/account/getBalance.unit.test.js.map +1 -1
  41. package/lib/common-logic/history/lastBlock.d.ts +2 -1
  42. package/lib/common-logic/history/lastBlock.d.ts.map +1 -1
  43. package/lib/common-logic/history/lastBlock.js +3 -3
  44. package/lib/common-logic/history/lastBlock.js.map +1 -1
  45. package/lib/common-logic/history/lastBlock.test.js +5 -2
  46. package/lib/common-logic/history/lastBlock.test.js.map +1 -1
  47. package/lib/common-logic/history/listOperations.d.ts +2 -1
  48. package/lib/common-logic/history/listOperations.d.ts.map +1 -1
  49. package/lib/common-logic/history/listOperations.js +2 -2
  50. package/lib/common-logic/history/listOperations.js.map +1 -1
  51. package/lib/common-logic/transaction/broadcast.d.ts +2 -1
  52. package/lib/common-logic/transaction/broadcast.d.ts.map +1 -1
  53. package/lib/common-logic/transaction/broadcast.js +4 -4
  54. package/lib/common-logic/transaction/broadcast.js.map +1 -1
  55. package/lib/common-logic/transaction/broadcast.test.js +6 -3
  56. package/lib/common-logic/transaction/broadcast.test.js.map +1 -1
  57. package/lib/common-logic/transaction/craftTransaction.d.ts +3 -1
  58. package/lib/common-logic/transaction/craftTransaction.d.ts.map +1 -1
  59. package/lib/common-logic/transaction/craftTransaction.js +8 -4
  60. package/lib/common-logic/transaction/craftTransaction.js.map +1 -1
  61. package/lib/common-logic/transaction/estimateFees.d.ts +2 -1
  62. package/lib/common-logic/transaction/estimateFees.d.ts.map +1 -1
  63. package/lib/common-logic/transaction/estimateFees.js +3 -4
  64. package/lib/common-logic/transaction/estimateFees.js.map +1 -1
  65. package/lib/network/gateway.d.ts +24 -14
  66. package/lib/network/gateway.d.ts.map +1 -1
  67. package/lib/network/gateway.integ.test.js +17 -14
  68. package/lib/network/gateway.integ.test.js.map +1 -1
  69. package/lib/network/gateway.js +33 -33
  70. package/lib/network/gateway.js.map +1 -1
  71. package/lib/types/bridge.d.ts +5 -2
  72. package/lib/types/bridge.d.ts.map +1 -1
  73. package/lib-es/api/getBalance.integ.test.js +1 -1
  74. package/lib-es/api/getBalance.integ.test.js.map +1 -1
  75. package/lib-es/api/index.d.ts.map +1 -1
  76. package/lib-es/api/index.js +19 -27
  77. package/lib-es/api/index.js.map +1 -1
  78. package/lib-es/api/lastBlock.integ.test.js +1 -1
  79. package/lib-es/api/lastBlock.integ.test.js.map +1 -1
  80. package/lib-es/api/listOperations.integ.test.js +1 -1
  81. package/lib-es/api/listOperations.integ.test.js.map +1 -1
  82. package/lib-es/bridge/broadcast.d.ts.map +1 -1
  83. package/lib-es/bridge/broadcast.js +2 -2
  84. package/lib-es/bridge/broadcast.js.map +1 -1
  85. package/lib-es/bridge/broadcast.test.js +9 -0
  86. package/lib-es/bridge/broadcast.test.js.map +1 -1
  87. package/lib-es/bridge/createTransaction.js +1 -1
  88. package/lib-es/bridge/createTransaction.js.map +1 -1
  89. package/lib-es/bridge/getTransactionStatus.js +1 -1
  90. package/lib-es/bridge/getTransactionStatus.js.map +1 -1
  91. package/lib-es/bridge/onboard.d.ts +4 -3
  92. package/lib-es/bridge/onboard.d.ts.map +1 -1
  93. package/lib-es/bridge/onboard.integ.test.js +11 -8
  94. package/lib-es/bridge/onboard.integ.test.js.map +1 -1
  95. package/lib-es/bridge/onboard.js +24 -16
  96. package/lib-es/bridge/onboard.js.map +1 -1
  97. package/lib-es/bridge/prepareTransaction.js +1 -1
  98. package/lib-es/bridge/prepareTransaction.js.map +1 -1
  99. package/lib-es/bridge/signOperation.d.ts.map +1 -1
  100. package/lib-es/bridge/signOperation.js +10 -5
  101. package/lib-es/bridge/signOperation.js.map +1 -1
  102. package/lib-es/bridge/sync.d.ts.map +1 -1
  103. package/lib-es/bridge/sync.js +28 -20
  104. package/lib-es/bridge/sync.js.map +1 -1
  105. package/lib-es/common-logic/account/getBalance.d.ts +2 -1
  106. package/lib-es/common-logic/account/getBalance.d.ts.map +1 -1
  107. package/lib-es/common-logic/account/getBalance.js +7 -7
  108. package/lib-es/common-logic/account/getBalance.js.map +1 -1
  109. package/lib-es/common-logic/account/getBalance.unit.test.js +6 -3
  110. package/lib-es/common-logic/account/getBalance.unit.test.js.map +1 -1
  111. package/lib-es/common-logic/history/lastBlock.d.ts +2 -1
  112. package/lib-es/common-logic/history/lastBlock.d.ts.map +1 -1
  113. package/lib-es/common-logic/history/lastBlock.js +3 -3
  114. package/lib-es/common-logic/history/lastBlock.js.map +1 -1
  115. package/lib-es/common-logic/history/lastBlock.test.js +5 -2
  116. package/lib-es/common-logic/history/lastBlock.test.js.map +1 -1
  117. package/lib-es/common-logic/history/listOperations.d.ts +2 -1
  118. package/lib-es/common-logic/history/listOperations.d.ts.map +1 -1
  119. package/lib-es/common-logic/history/listOperations.js +2 -2
  120. package/lib-es/common-logic/history/listOperations.js.map +1 -1
  121. package/lib-es/common-logic/transaction/broadcast.d.ts +2 -1
  122. package/lib-es/common-logic/transaction/broadcast.d.ts.map +1 -1
  123. package/lib-es/common-logic/transaction/broadcast.js +4 -4
  124. package/lib-es/common-logic/transaction/broadcast.js.map +1 -1
  125. package/lib-es/common-logic/transaction/broadcast.test.js +6 -3
  126. package/lib-es/common-logic/transaction/broadcast.test.js.map +1 -1
  127. package/lib-es/common-logic/transaction/craftTransaction.d.ts +3 -1
  128. package/lib-es/common-logic/transaction/craftTransaction.d.ts.map +1 -1
  129. package/lib-es/common-logic/transaction/craftTransaction.js +9 -5
  130. package/lib-es/common-logic/transaction/craftTransaction.js.map +1 -1
  131. package/lib-es/common-logic/transaction/estimateFees.d.ts +2 -1
  132. package/lib-es/common-logic/transaction/estimateFees.d.ts.map +1 -1
  133. package/lib-es/common-logic/transaction/estimateFees.js +3 -4
  134. package/lib-es/common-logic/transaction/estimateFees.js.map +1 -1
  135. package/lib-es/network/gateway.d.ts +24 -14
  136. package/lib-es/network/gateway.d.ts.map +1 -1
  137. package/lib-es/network/gateway.integ.test.js +17 -14
  138. package/lib-es/network/gateway.integ.test.js.map +1 -1
  139. package/lib-es/network/gateway.js +33 -33
  140. package/lib-es/network/gateway.js.map +1 -1
  141. package/lib-es/types/bridge.d.ts +5 -2
  142. package/lib-es/types/bridge.d.ts.map +1 -1
  143. package/package.json +3 -3
  144. package/src/api/getBalance.integ.test.ts +1 -1
  145. package/src/api/index.ts +22 -51
  146. package/src/api/lastBlock.integ.test.ts +1 -1
  147. package/src/api/listOperations.integ.test.ts +1 -1
  148. package/src/bridge/broadcast.test.ts +11 -0
  149. package/src/bridge/broadcast.ts +5 -2
  150. package/src/bridge/createTransaction.ts +1 -1
  151. package/src/bridge/getTransactionStatus.ts +1 -1
  152. package/src/bridge/onboard.integ.test.ts +22 -10
  153. package/src/bridge/onboard.ts +32 -13
  154. package/src/bridge/prepareTransaction.ts +1 -1
  155. package/src/bridge/signOperation.ts +20 -7
  156. package/src/bridge/sync.ts +28 -23
  157. package/src/common-logic/account/getBalance.ts +12 -7
  158. package/src/common-logic/account/getBalance.unit.test.ts +8 -3
  159. package/src/common-logic/history/lastBlock.test.ts +7 -2
  160. package/src/common-logic/history/lastBlock.ts +5 -3
  161. package/src/common-logic/history/listOperations.ts +3 -2
  162. package/src/common-logic/transaction/broadcast.test.ts +8 -3
  163. package/src/common-logic/transaction/broadcast.ts +6 -3
  164. package/src/common-logic/transaction/craftTransaction.ts +22 -5
  165. package/src/common-logic/transaction/estimateFees.ts +5 -4
  166. package/src/network/gateway.integ.test.ts +29 -11
  167. package/src/network/gateway.ts +66 -35
  168. package/src/types/bridge.ts +5 -0
@@ -1,6 +1,9 @@
1
1
  import coinConfig from "../config";
2
2
  import { generateMockKeyPair } from "../test/cantonTestUtils";
3
3
  import { getLedgerEnd, prepareOnboarding, getBalance, getOperations, getPartyById, getPartyByPubKey, submitOnboarding, prepareTapRequest, submitTapRequest, preparePreApprovalTransaction, submitPreApprovalTransaction, } from "./gateway";
4
+ const mockCurrency = {
5
+ id: "canton_network",
6
+ };
4
7
  describe("gateway (devnet)", () => {
5
8
  let onboardedAccount = null;
6
9
  beforeAll(async () => {
@@ -29,7 +32,7 @@ describe("gateway (devnet)", () => {
29
32
  partyId: "", // set in next test
30
33
  };
31
34
  // WHEN
32
- const response = await prepareOnboarding(keyPair.publicKeyHex, "ed25519");
35
+ const response = await prepareOnboarding(mockCurrency, keyPair.publicKeyHex, "ed25519");
33
36
  // THEN
34
37
  expect(response).toHaveProperty("party_id");
35
38
  expect(response).toHaveProperty("party_name");
@@ -46,10 +49,10 @@ describe("gateway (devnet)", () => {
46
49
  // GIVEN
47
50
  const { keyPair } = getOnboardedAccount();
48
51
  const prepareRequest = { public_key: keyPair.publicKeyHex, public_key_type: "ed25519" };
49
- const prepareResponse = await prepareOnboarding(keyPair.publicKeyHex, "ed25519");
52
+ const prepareResponse = await prepareOnboarding(mockCurrency, keyPair.publicKeyHex, "ed25519");
50
53
  const signature = keyPair.sign(prepareResponse.transactions.combined_hash);
51
54
  // WHEN
52
- const response = await submitOnboarding(prepareRequest, prepareResponse, signature);
55
+ const response = await submitOnboarding(mockCurrency, prepareRequest, prepareResponse, signature);
53
56
  // Save onboarded account for all tests that need a valid party ID
54
57
  onboardedAccount = {
55
58
  keyPair,
@@ -64,14 +67,14 @@ describe("gateway (devnet)", () => {
64
67
  });
65
68
  describe("getLedgerEnd", () => {
66
69
  it("should return ledger end", async () => {
67
- const end = await getLedgerEnd();
70
+ const end = await getLedgerEnd(mockCurrency);
68
71
  expect(end).toBeGreaterThanOrEqual(0);
69
72
  });
70
73
  });
71
74
  describe("getBalance", () => {
72
75
  it("should return user balance", async () => {
73
76
  const { partyId } = getOnboardedAccount();
74
- const balance = await getBalance(partyId);
77
+ const balance = await getBalance(mockCurrency, partyId);
75
78
  expect(balance.length).toBeGreaterThanOrEqual(0);
76
79
  if (balance.length > 0) {
77
80
  expect(balance[0].amount).toBeGreaterThanOrEqual(0);
@@ -81,19 +84,19 @@ describe("gateway (devnet)", () => {
81
84
  });
82
85
  describe("getPartyById", () => {
83
86
  it.skip("should return party info", async () => {
84
- const party = await getPartyById("4f2e1485107adf5f");
87
+ const party = await getPartyById(mockCurrency, "4f2e1485107adf5f");
85
88
  expect(party).toBeDefined();
86
89
  });
87
90
  });
88
91
  describe("getPartyByPubKey", () => {
89
92
  it.skip("should return party info", async () => {
90
- const party = await getPartyByPubKey("122027c6dbbbdbffe0fa3122ae05175f3b9328e879e9ce96b670354deb64a45683c1");
93
+ const party = await getPartyByPubKey(mockCurrency, "122027c6dbbbdbffe0fa3122ae05175f3b9328e879e9ce96b670354deb64a45683c1");
91
94
  expect(party).toBeDefined();
92
95
  });
93
96
  });
94
97
  describe("getOperations", () => {
95
98
  it("should return user transactions", async () => {
96
- const { operations } = await getOperations("party-5f29bb32e9939939::12202becd8062a1d170209956cfd977fca76fcb4d2a892d08c77a7483f35a11d6440");
99
+ const { operations } = await getOperations(mockCurrency, "party-5f29bb32e9939939::12202becd8062a1d170209956cfd977fca76fcb4d2a892d08c77a7483f35a11d6440", {});
97
100
  expect(operations.length).toBeGreaterThanOrEqual(0);
98
101
  });
99
102
  });
@@ -103,7 +106,7 @@ describe("gateway (devnet)", () => {
103
106
  const { partyId } = getOnboardedAccount();
104
107
  const amount = 1000;
105
108
  // WHEN
106
- const response = await prepareTapRequest({ partyId, amount });
109
+ const response = await prepareTapRequest(mockCurrency, { partyId, amount });
107
110
  // THEN
108
111
  expect(response).toHaveProperty("serialized");
109
112
  expect(response).toHaveProperty("hash");
@@ -115,13 +118,13 @@ describe("gateway (devnet)", () => {
115
118
  it("should submit tap request with proper signature", async () => {
116
119
  // GIVEN
117
120
  const { keyPair, partyId } = getOnboardedAccount();
118
- const tapPrepareResponse = await prepareTapRequest({
121
+ const tapPrepareResponse = await prepareTapRequest(mockCurrency, {
119
122
  partyId,
120
123
  amount: 1000,
121
124
  });
122
125
  const tapSignature = keyPair.sign(tapPrepareResponse.hash);
123
126
  // WHEN
124
- const response = await submitTapRequest({
127
+ const response = await submitTapRequest(mockCurrency, {
125
128
  partyId,
126
129
  serialized: tapPrepareResponse.serialized,
127
130
  signature: tapSignature,
@@ -138,7 +141,7 @@ describe("gateway (devnet)", () => {
138
141
  // GIVEN
139
142
  const { partyId } = getOnboardedAccount();
140
143
  // WHEN
141
- const response = await preparePreApprovalTransaction(partyId);
144
+ const response = await preparePreApprovalTransaction(mockCurrency, partyId);
142
145
  // THEN
143
146
  expect(response).toHaveProperty("serialized");
144
147
  expect(response).toHaveProperty("hash");
@@ -150,10 +153,10 @@ describe("gateway (devnet)", () => {
150
153
  it("should submit pre-approval transaction with proper signature", async () => {
151
154
  // GIVEN
152
155
  const { keyPair, partyId } = getOnboardedAccount();
153
- const preparedTransaction = await preparePreApprovalTransaction(partyId);
156
+ const preparedTransaction = await preparePreApprovalTransaction(mockCurrency, partyId);
154
157
  const preApprovalSignature = keyPair.sign(preparedTransaction.hash);
155
158
  // WHEN
156
- const response = await submitPreApprovalTransaction(partyId, preparedTransaction, preApprovalSignature);
159
+ const response = await submitPreApprovalTransaction(mockCurrency, partyId, preparedTransaction, preApprovalSignature);
157
160
  // THEN
158
161
  expect(response).toHaveProperty("isApproved");
159
162
  expect(response).toHaveProperty("submissionId");
@@ -1 +1 @@
1
- {"version":3,"file":"gateway.integ.test.js","sourceRoot":"","sources":["../../src/network/gateway.integ.test.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"gateway.integ.test.js","sourceRoot":"","sources":["../../src/network/gateway.integ.test.ts"],"names":[],"mappings":"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"}
@@ -1,9 +1,9 @@
1
1
  import network from "@ledgerhq/live-network";
2
2
  import { getEnv } from "@ledgerhq/live-env";
3
3
  import coinConfig from "../config";
4
- const getGatewayUrl = () => coinConfig.getCoinConfig().gatewayUrl;
5
- const getNodeId = () => coinConfig.getCoinConfig().nodeId || "ledger-devnet-stg";
6
- const getNetworkType = () => coinConfig.getCoinConfig().networkType;
4
+ const getGatewayUrl = (currency) => coinConfig.getCoinConfig(currency).gatewayUrl;
5
+ const getNodeId = (currency) => coinConfig.getCoinConfig(currency).nodeId || "ledger-devnet-stg";
6
+ const getNetworkType = (currency) => coinConfig.getCoinConfig(currency).networkType;
7
7
  const gatewayNetwork = (req) => {
8
8
  const API_KEY = getEnv("CANTON_API_KEY");
9
9
  return network({
@@ -14,9 +14,9 @@ const gatewayNetwork = (req) => {
14
14
  },
15
15
  });
16
16
  };
17
- export async function prepareOnboarding(pubKey, pubKeyType) {
18
- const gatewayUrl = getGatewayUrl();
19
- const nodeId = getNodeId();
17
+ export async function prepareOnboarding(currency, pubKey, pubKeyType) {
18
+ const gatewayUrl = getGatewayUrl(currency);
19
+ const nodeId = getNodeId(currency);
20
20
  const fullUrl = `${gatewayUrl}/v1/node/${nodeId}/onboarding/prepare`;
21
21
  const { data } = await gatewayNetwork({
22
22
  method: "POST",
@@ -28,10 +28,10 @@ export async function prepareOnboarding(pubKey, pubKeyType) {
28
28
  });
29
29
  return data;
30
30
  }
31
- export async function submitOnboarding(prepareRequest, prepareResponse, signature) {
31
+ export async function submitOnboarding(currency, prepareRequest, prepareResponse, signature) {
32
32
  const { data } = await gatewayNetwork({
33
33
  method: "POST",
34
- url: `${getGatewayUrl()}/v1/node/${getNodeId()}/onboarding/submit`,
34
+ url: `${getGatewayUrl(currency)}/v1/node/${getNodeId(currency)}/onboarding/submit`,
35
35
  data: {
36
36
  prepare_request: prepareRequest,
37
37
  prepare_response: prepareResponse,
@@ -40,10 +40,10 @@ export async function submitOnboarding(prepareRequest, prepareResponse, signatur
40
40
  });
41
41
  return data;
42
42
  }
43
- export async function submit(partyId, serialized, signature) {
43
+ export async function submit(currency, partyId, serialized, signature) {
44
44
  const { data } = await gatewayNetwork({
45
45
  method: "POST",
46
- url: `${getGatewayUrl()}/v1/node/${getNodeId()}/party/${partyId}/transaction/submit`,
46
+ url: `${getGatewayUrl(currency)}/v1/node/${getNodeId(currency)}/party/${partyId}/transaction/submit`,
47
47
  data: {
48
48
  serialized,
49
49
  signature,
@@ -51,30 +51,30 @@ export async function submit(partyId, serialized, signature) {
51
51
  });
52
52
  return data;
53
53
  }
54
- export async function getBalance(partyId) {
54
+ export async function getBalance(currency, partyId) {
55
55
  const { data } = await gatewayNetwork({
56
56
  method: "GET",
57
- url: `${getGatewayUrl()}/v1/node/${getNodeId()}/party/${partyId}/balance`,
57
+ url: `${getGatewayUrl(currency)}/v1/node/${getNodeId(currency)}/party/${partyId}/balance`,
58
58
  });
59
59
  return data;
60
60
  }
61
- export async function getPartyById(partyId) {
62
- return await getParty(partyId, "party-id");
61
+ export async function getPartyById(currency, partyId) {
62
+ return await getParty(currency, partyId, "party-id");
63
63
  }
64
- export async function getPartyByPubKey(pubKey) {
65
- return await getParty(pubKey, "public-key");
64
+ export async function getPartyByPubKey(currency, pubKey) {
65
+ return await getParty(currency, pubKey, "public-key");
66
66
  }
67
- async function getParty(identifier, by) {
67
+ async function getParty(currency, identifier, by) {
68
68
  const { data } = await gatewayNetwork({
69
69
  method: "GET",
70
- url: `${getGatewayUrl()}/v1/node/${getNodeId()}/party/${identifier}?by=${by}`,
70
+ url: `${getGatewayUrl(currency)}/v1/node/${getNodeId(currency)}/party/${identifier}?by=${by}`,
71
71
  });
72
72
  return data;
73
73
  }
74
- export async function getOperations(partyId, options) {
74
+ export async function getOperations(currency, partyId, options) {
75
75
  const { data } = await gatewayNetwork({
76
76
  method: "GET",
77
- url: `${getGatewayUrl()}/v1/node/${getNodeId()}/party/${partyId}/operations`,
77
+ url: `${getGatewayUrl(currency)}/v1/node/${getNodeId(currency)}/party/${partyId}/operations`,
78
78
  params: options,
79
79
  });
80
80
  return data;
@@ -84,8 +84,8 @@ var TransactionType;
84
84
  TransactionType["TAP_REQUEST"] = "tap-request";
85
85
  TransactionType["TRANSFER_PRE_APPROVAL_PROPOSAL"] = "transfer-pre-approval-proposal";
86
86
  })(TransactionType || (TransactionType = {}));
87
- export async function prepareTapRequest({ partyId, amount = 1000000, }) {
88
- if (getNetworkType() === "mainnet") {
87
+ export async function prepareTapRequest(currency, { partyId, amount = 1000000 }) {
88
+ if (getNetworkType(currency) === "mainnet") {
89
89
  return {
90
90
  serialized: "",
91
91
  json: null,
@@ -94,7 +94,7 @@ export async function prepareTapRequest({ partyId, amount = 1000000, }) {
94
94
  }
95
95
  const { data } = await gatewayNetwork({
96
96
  method: "POST",
97
- url: `${getGatewayUrl()}/v1/node/${getNodeId()}/party/${partyId}/transaction/prepare`,
97
+ url: `${getGatewayUrl(currency)}/v1/node/${getNodeId(currency)}/party/${partyId}/transaction/prepare`,
98
98
  data: {
99
99
  amount: parseInt(amount.toString(), 10), // Convert to integer to avoid scientific notation
100
100
  type: TransactionType.TAP_REQUEST,
@@ -102,10 +102,10 @@ export async function prepareTapRequest({ partyId, amount = 1000000, }) {
102
102
  });
103
103
  return data;
104
104
  }
105
- export async function submitTapRequest({ partyId, serialized, signature, }) {
105
+ export async function submitTapRequest(currency, { partyId, serialized, signature }) {
106
106
  const { data } = await gatewayNetwork({
107
107
  method: "POST",
108
- url: `${getGatewayUrl()}/v1/node/${getNodeId()}/party/${partyId}/transaction/submit`,
108
+ url: `${getGatewayUrl(currency)}/v1/node/${getNodeId(currency)}/party/${partyId}/transaction/submit`,
109
109
  data: {
110
110
  serialized,
111
111
  signature,
@@ -113,25 +113,25 @@ export async function submitTapRequest({ partyId, serialized, signature, }) {
113
113
  });
114
114
  return data;
115
115
  }
116
- export async function prepareTransferRequest(partyId, params) {
116
+ export async function prepareTransferRequest(currency, partyId, params) {
117
117
  const { data } = await gatewayNetwork({
118
118
  method: "POST",
119
- url: `${getGatewayUrl()}/v1/node/${getNodeId()}/party/${partyId}/transaction/prepare`,
119
+ url: `${getGatewayUrl(currency)}/v1/node/${getNodeId(currency)}/party/${partyId}/transaction/prepare`,
120
120
  data: params,
121
121
  });
122
122
  return data;
123
123
  }
124
- export async function getLedgerEnd() {
124
+ export async function getLedgerEnd(currency) {
125
125
  const { data } = await gatewayNetwork({
126
126
  method: "GET",
127
- url: `${getGatewayUrl()}/v1/node/${getNodeId()}/ledger-end`,
127
+ url: `${getGatewayUrl(currency)}/v1/node/${getNodeId(currency)}/ledger-end`,
128
128
  });
129
129
  return data;
130
130
  }
131
- export async function preparePreApprovalTransaction(partyId) {
131
+ export async function preparePreApprovalTransaction(currency, partyId) {
132
132
  const { data } = await gatewayNetwork({
133
133
  method: "POST",
134
- url: `${getGatewayUrl()}/v1/node/${getNodeId()}/party/${partyId}/transaction/prepare`,
134
+ url: `${getGatewayUrl(currency)}/v1/node/${getNodeId(currency)}/party/${partyId}/transaction/prepare`,
135
135
  data: {
136
136
  type: TransactionType.TRANSFER_PRE_APPROVAL_PROPOSAL,
137
137
  receiver: partyId,
@@ -139,10 +139,10 @@ export async function preparePreApprovalTransaction(partyId) {
139
139
  });
140
140
  return data;
141
141
  }
142
- export async function submitPreApprovalTransaction(partyId, { serialized }, signature) {
142
+ export async function submitPreApprovalTransaction(currency, partyId, { serialized }, signature) {
143
143
  const { data } = await gatewayNetwork({
144
144
  method: "POST",
145
- url: `${getGatewayUrl()}/v1/node/${getNodeId()}/party/${partyId}/transaction/submit`,
145
+ url: `${getGatewayUrl(currency)}/v1/node/${getNodeId(currency)}/party/${partyId}/transaction/submit`,
146
146
  data: {
147
147
  serialized,
148
148
  signature,
@@ -1 +1 @@
1
- {"version":3,"file":"gateway.js","sourceRoot":"","sources":["../../src/network/gateway.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"gateway.js","sourceRoot":"","sources":["../../src/network/gateway.ts"],"names":[],"mappings":"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"}
@@ -2,9 +2,10 @@ import type { BigNumber } from "bignumber.js";
2
2
  import type { Observable } from "rxjs";
3
3
  import type { Account, AccountRaw, CurrencyBridge, TransactionCommon, TransactionCommonRaw, TransactionStatusCommon, TransactionStatusCommonRaw } from "@ledgerhq/types-live";
4
4
  import type { CantonOnboardProgress, CantonOnboardResult, CantonPreApprovalProgress, CantonPreApprovalResult } from "./onboard";
5
+ import type { CryptoCurrency } from "@ledgerhq/types-cryptoassets";
5
6
  export interface CantonCurrencyBridge extends CurrencyBridge {
6
- onboardAccount: (deviceId: string, derivationPath: string) => Observable<CantonOnboardProgress | CantonOnboardResult>;
7
- authorizePreapproval: (deviceId: string, derivationPath: string, partyId: string) => Observable<CantonPreApprovalProgress | CantonPreApprovalResult>;
7
+ onboardAccount: (currency: CryptoCurrency, deviceId: string, derivationPath: string) => Observable<CantonOnboardProgress | CantonOnboardResult>;
8
+ authorizePreapproval: (currency: CryptoCurrency, deviceId: string, derivationPath: string, partyId: string) => Observable<CantonPreApprovalProgress | CantonPreApprovalResult>;
8
9
  }
9
10
  export type NetworkInfo = {
10
11
  family: "canton";
@@ -19,10 +20,12 @@ export type NetworkInfoRaw = {
19
20
  export type Transaction = TransactionCommon & {
20
21
  family: "canton";
21
22
  fee: BigNumber | null | undefined;
23
+ memo?: string;
22
24
  };
23
25
  export type TransactionRaw = TransactionCommonRaw & {
24
26
  family: "canton";
25
27
  fee: string | null | undefined;
28
+ memo?: string;
26
29
  };
27
30
  export type TransactionStatus = TransactionStatusCommon;
28
31
  export type TransactionStatusRaw = TransactionStatusCommonRaw;
@@ -1 +1 @@
1
- {"version":3,"file":"bridge.d.ts","sourceRoot":"","sources":["../../src/types/bridge.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AAC9C,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,MAAM,CAAC;AACvC,OAAO,KAAK,EACV,OAAO,EACP,UAAU,EACV,cAAc,EACd,iBAAiB,EACjB,oBAAoB,EACpB,uBAAuB,EACvB,0BAA0B,EAC3B,MAAM,sBAAsB,CAAC;AAC9B,OAAO,KAAK,EACV,qBAAqB,EACrB,mBAAmB,EACnB,yBAAyB,EACzB,uBAAuB,EACxB,MAAM,WAAW,CAAC;AAEnB,MAAM,WAAW,oBAAqB,SAAQ,cAAc;IAC1D,cAAc,EAAE,CACd,QAAQ,EAAE,MAAM,EAChB,cAAc,EAAE,MAAM,KACnB,UAAU,CAAC,qBAAqB,GAAG,mBAAmB,CAAC,CAAC;IAC7D,oBAAoB,EAAE,CACpB,QAAQ,EAAE,MAAM,EAChB,cAAc,EAAE,MAAM,EACtB,OAAO,EAAE,MAAM,KACZ,UAAU,CAAC,yBAAyB,GAAG,uBAAuB,CAAC,CAAC;CACtE;AAED,MAAM,MAAM,WAAW,GAAG;IACxB,MAAM,EAAE,QAAQ,CAAC;IACjB,SAAS,EAAE,SAAS,CAAC;IACrB,WAAW,EAAE,SAAS,CAAC;CACxB,CAAC;AAEF,MAAM,MAAM,cAAc,GAAG;IAC3B,MAAM,EAAE,QAAQ,CAAC;IACjB,SAAS,EAAE,MAAM,CAAC;IAClB,WAAW,EAAE,MAAM,CAAC;CACrB,CAAC;AAEF,MAAM,MAAM,WAAW,GAAG,iBAAiB,GAAG;IAC5C,MAAM,EAAE,QAAQ,CAAC;IACjB,GAAG,EAAE,SAAS,GAAG,IAAI,GAAG,SAAS,CAAC;CACnC,CAAC;AAEF,MAAM,MAAM,cAAc,GAAG,oBAAoB,GAAG;IAClD,MAAM,EAAE,QAAQ,CAAC;IACjB,GAAG,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,CAAC;CAChC,CAAC;AAEF,MAAM,MAAM,iBAAiB,GAAG,uBAAuB,CAAC;AACxD,MAAM,MAAM,oBAAoB,GAAG,0BAA0B,CAAC;AAE9D,MAAM,MAAM,eAAe,GAAG;IAC5B,OAAO,EAAE,MAAM,CAAC;CACjB,CAAC;AACF,MAAM,MAAM,kBAAkB,GAAG;IAC/B,OAAO,EAAE,MAAM,CAAC;CACjB,CAAC;AAEF,MAAM,MAAM,aAAa,GAAG,OAAO,GAAG;IACpC,eAAe,CAAC,EAAE,eAAe,CAAC;CACnC,CAAC;AACF,MAAM,MAAM,gBAAgB,GAAG,UAAU,GAAG;IAC1C,eAAe,EAAE,kBAAkB,CAAC;CACrC,CAAC"}
1
+ {"version":3,"file":"bridge.d.ts","sourceRoot":"","sources":["../../src/types/bridge.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AAC9C,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,MAAM,CAAC;AACvC,OAAO,KAAK,EACV,OAAO,EACP,UAAU,EACV,cAAc,EACd,iBAAiB,EACjB,oBAAoB,EACpB,uBAAuB,EACvB,0BAA0B,EAC3B,MAAM,sBAAsB,CAAC;AAC9B,OAAO,KAAK,EACV,qBAAqB,EACrB,mBAAmB,EACnB,yBAAyB,EACzB,uBAAuB,EACxB,MAAM,WAAW,CAAC;AACnB,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,8BAA8B,CAAC;AAEnE,MAAM,WAAW,oBAAqB,SAAQ,cAAc;IAC1D,cAAc,EAAE,CACd,QAAQ,EAAE,cAAc,EACxB,QAAQ,EAAE,MAAM,EAChB,cAAc,EAAE,MAAM,KACnB,UAAU,CAAC,qBAAqB,GAAG,mBAAmB,CAAC,CAAC;IAC7D,oBAAoB,EAAE,CACpB,QAAQ,EAAE,cAAc,EACxB,QAAQ,EAAE,MAAM,EAChB,cAAc,EAAE,MAAM,EACtB,OAAO,EAAE,MAAM,KACZ,UAAU,CAAC,yBAAyB,GAAG,uBAAuB,CAAC,CAAC;CACtE;AAED,MAAM,MAAM,WAAW,GAAG;IACxB,MAAM,EAAE,QAAQ,CAAC;IACjB,SAAS,EAAE,SAAS,CAAC;IACrB,WAAW,EAAE,SAAS,CAAC;CACxB,CAAC;AAEF,MAAM,MAAM,cAAc,GAAG;IAC3B,MAAM,EAAE,QAAQ,CAAC;IACjB,SAAS,EAAE,MAAM,CAAC;IAClB,WAAW,EAAE,MAAM,CAAC;CACrB,CAAC;AAEF,MAAM,MAAM,WAAW,GAAG,iBAAiB,GAAG;IAC5C,MAAM,EAAE,QAAQ,CAAC;IACjB,GAAG,EAAE,SAAS,GAAG,IAAI,GAAG,SAAS,CAAC;IAClC,IAAI,CAAC,EAAE,MAAM,CAAC;CACf,CAAC;AAEF,MAAM,MAAM,cAAc,GAAG,oBAAoB,GAAG;IAClD,MAAM,EAAE,QAAQ,CAAC;IACjB,GAAG,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,CAAC;IAC/B,IAAI,CAAC,EAAE,MAAM,CAAC;CACf,CAAC;AAEF,MAAM,MAAM,iBAAiB,GAAG,uBAAuB,CAAC;AACxD,MAAM,MAAM,oBAAoB,GAAG,0BAA0B,CAAC;AAE9D,MAAM,MAAM,eAAe,GAAG;IAC5B,OAAO,EAAE,MAAM,CAAC;CACjB,CAAC;AACF,MAAM,MAAM,kBAAkB,GAAG;IAC/B,OAAO,EAAE,MAAM,CAAC;CACjB,CAAC;AAEF,MAAM,MAAM,aAAa,GAAG,OAAO,GAAG;IACpC,eAAe,CAAC,EAAE,eAAe,CAAC;CACnC,CAAC;AACF,MAAM,MAAM,gBAAgB,GAAG,UAAU,GAAG;IAC1C,eAAe,EAAE,kBAAkB,CAAC;CACrC,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@ledgerhq/coin-canton",
3
- "version": "0.5.0-nightly.4",
3
+ "version": "0.5.0-nightly.6",
4
4
  "description": "Canton coin integration",
5
5
  "keywords": [
6
6
  "Ledger",
@@ -101,8 +101,8 @@
101
101
  "bignumber.js": "^9.1.2",
102
102
  "invariant": "^2.2.4",
103
103
  "rxjs": "^7.8.1",
104
- "@ledgerhq/coin-framework": "^6.4.0-nightly.4",
105
- "@ledgerhq/cryptoassets": "^13.28.0-nightly.2",
104
+ "@ledgerhq/coin-framework": "^6.4.0-nightly.5",
105
+ "@ledgerhq/cryptoassets": "^13.28.0-nightly.3",
106
106
  "@ledgerhq/devices": "8.5.1",
107
107
  "@ledgerhq/errors": "^6.25.0",
108
108
  "@ledgerhq/live-env": "^2.16.0-nightly.1",
@@ -3,7 +3,7 @@ import { createApi } from ".";
3
3
 
4
4
  let api: AlpacaApi;
5
5
 
6
- describe("devnet", () => {
6
+ describe.skip("devnet", () => {
7
7
  beforeAll(() => {
8
8
  api = createApi({
9
9
  nodeUrl: "https://wallet-validator-devnet-canton.ledger-test.com/v2",
package/src/api/index.ts CHANGED
@@ -8,31 +8,36 @@ import {
8
8
  Reward,
9
9
  Stake,
10
10
  TransactionIntent,
11
- CraftedTransaction,
11
+ Operation,
12
+ Balance,
13
+ Pagination,
12
14
  } from "@ledgerhq/coin-framework/api/index";
13
15
  import coinConfig, { type CantonConfig } from "../config";
14
- import {
15
- broadcast,
16
- combine,
17
- craftTransaction,
18
- estimateFees,
19
- getBalance,
20
- lastBlock,
21
- listOperations,
22
- } from "../common-logic";
23
- import BigNumber from "bignumber.js";
16
+ import { combine } from "../common-logic/transaction/combine";
24
17
 
25
18
  export function createApi(config: CantonConfig): AlpacaApi {
26
19
  coinConfig.setCoinConfig(() => ({ ...config, status: { type: "active" } }));
27
20
 
28
21
  return {
29
- broadcast,
22
+ broadcast: (_tx: string): Promise<string> => {
23
+ throw new Error("broadcast is not supported");
24
+ },
30
25
  combine,
31
- craftTransaction: craft(config.nativeInstrumentId ?? ""),
32
- estimateFees: estimate(config.nativeInstrumentId ?? ""),
33
- getBalance,
34
- lastBlock,
35
- listOperations,
26
+ craftTransaction(_transactionIntent: TransactionIntent, _customFees?: FeeEstimation) {
27
+ throw new Error("craftTransaction is not supported");
28
+ },
29
+ estimateFees(_transactionIntent: TransactionIntent): Promise<FeeEstimation> {
30
+ throw new Error("estimateFees is not supported");
31
+ },
32
+ getBalance(_address: string): Promise<Balance[]> {
33
+ throw new Error("getBalance is not supported");
34
+ },
35
+ lastBlock(): Promise<BlockInfo> {
36
+ throw new Error("listOperations is not supported");
37
+ },
38
+ listOperations(_address: string, _pagination: Pagination): Promise<[Operation[], string]> {
39
+ throw new Error("listOperations is not supported");
40
+ },
36
41
  getBlock(_height): Promise<Block> {
37
42
  throw new Error("getBlock is not supported");
38
43
  },
@@ -47,37 +52,3 @@ export function createApi(config: CantonConfig): AlpacaApi {
47
52
  },
48
53
  };
49
54
  }
50
-
51
- const craft =
52
- (tokenId: string) =>
53
- async (transactionIntent: TransactionIntent): Promise<CraftedTransaction> => {
54
- const tx = await craftTransaction(
55
- { address: transactionIntent.sender },
56
- {
57
- recipient: transactionIntent.recipient,
58
- amount: new BigNumber(transactionIntent.amount.toString()),
59
- tokenId,
60
- expireInSeconds: 24 * 60 * 60,
61
- },
62
- );
63
-
64
- return { transaction: tx.serializedTransaction };
65
- };
66
-
67
- const estimate =
68
- (tokenId: string) =>
69
- async (transactionIntent: TransactionIntent): Promise<FeeEstimation> => {
70
- const { serializedTransaction } = await craftTransaction(
71
- { address: transactionIntent.sender },
72
- {
73
- recipient: transactionIntent.recipient,
74
- amount: new BigNumber(transactionIntent.amount.toString()),
75
- tokenId,
76
- expireInSeconds: 24 * 60 * 60,
77
- },
78
- );
79
-
80
- const value = await estimateFees(serializedTransaction);
81
-
82
- return { value };
83
- };
@@ -20,7 +20,7 @@ describe.skip("localnet", () => {
20
20
  });
21
21
  });
22
22
 
23
- describe("devnet", () => {
23
+ describe.skip("devnet", () => {
24
24
  beforeAll(() => {
25
25
  api = createApi({
26
26
  nodeUrl: "https://wallet-validator-devnet-canton.ledger-test.com/v2",
@@ -3,7 +3,7 @@ import { createApi } from ".";
3
3
 
4
4
  let api: AlpacaApi;
5
5
 
6
- describe("devnet", () => {
6
+ describe.skip("devnet", () => {
7
7
  beforeAll(() => {
8
8
  api = createApi({
9
9
  nodeUrl: "https://wallet-validator-devnet-canton.ledger-test.com/v2",
@@ -4,6 +4,11 @@ jest.mock("@ledgerhq/coin-framework/operation");
4
4
  jest.mock("../common-logic");
5
5
  import { patchOperationWithHash } from "@ledgerhq/coin-framework/operation";
6
6
  import { broadcast as broadcastLogic } from "../common-logic";
7
+ import { CryptoCurrency } from "@ledgerhq/types-cryptoassets";
8
+
9
+ const mockCurrency = {
10
+ id: "canton_network",
11
+ } as unknown as CryptoCurrency;
7
12
 
8
13
  describe("broadcast", () => {
9
14
  let patchOperationSpy: jest.SpyInstance;
@@ -16,6 +21,9 @@ describe("broadcast", () => {
16
21
 
17
22
  it("should broadcast", () => {
18
23
  broadcast({
24
+ account: {
25
+ currency: mockCurrency,
26
+ },
19
27
  signedOperation: {
20
28
  signature: undefined,
21
29
  operation: undefined,
@@ -26,6 +34,9 @@ describe("broadcast", () => {
26
34
 
27
35
  it("should patch operation with hash", () => {
28
36
  broadcast({
37
+ account: {
38
+ currency: mockCurrency,
39
+ },
29
40
  signedOperation: {
30
41
  signature: undefined,
31
42
  operation: undefined,
@@ -3,8 +3,11 @@ import { patchOperationWithHash } from "@ledgerhq/coin-framework/operation";
3
3
  import { broadcast as broadcastLogic } from "../common-logic";
4
4
  import { Transaction } from "../types";
5
5
 
6
- export const broadcast: AccountBridge<Transaction>["broadcast"] = async ({ signedOperation }) => {
6
+ export const broadcast: AccountBridge<Transaction>["broadcast"] = async ({
7
+ account,
8
+ signedOperation,
9
+ }) => {
7
10
  const { operation, signature } = signedOperation;
8
- const hash = await broadcastLogic(signature);
11
+ const hash = await broadcastLogic(account.currency, signature);
9
12
  return patchOperationWithHash(operation, hash);
10
13
  };
@@ -8,7 +8,7 @@ export const createTransaction: AccountBridge<Transaction>["createTransaction"]
8
8
  amount: new BigNumber(0),
9
9
  recipient: "",
10
10
  fee: null,
11
- memo: undefined,
11
+ memo: "",
12
12
  networkInfo: null,
13
13
  feeCustomUnit: null,
14
14
  });
@@ -25,7 +25,7 @@ export const getTransactionStatus: AccountBridge<
25
25
  const warnings: Record<string, Error> = {};
26
26
 
27
27
  // reserveAmount is the minimum amount of currency that an account must hold in order to stay activated
28
- const reserveAmount = new BigNumber(coinConfig.getCoinConfig().minReserve || 0);
28
+ const reserveAmount = new BigNumber(coinConfig.getCoinConfig(account.currency).minReserve || 0);
29
29
  const estimatedFees = new BigNumber(transaction.fee || 0);
30
30
  const totalSpent = new BigNumber(transaction.amount).plus(estimatedFees);
31
31
  const amount = new BigNumber(transaction.amount);