@ledgerhq/live-common 34.40.0-nightly.1 → 34.40.0-nightly.2

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 (66) hide show
  1. package/lib/exchange/error.d.ts +1 -0
  2. package/lib/exchange/error.d.ts.map +1 -1
  3. package/lib/exchange/error.js +11 -1
  4. package/lib/exchange/error.js.map +1 -1
  5. package/lib/exchange/swap/api/v5/actions.d.ts +3 -0
  6. package/lib/exchange/swap/api/v5/actions.d.ts.map +1 -0
  7. package/lib/exchange/swap/api/v5/actions.js +36 -0
  8. package/lib/exchange/swap/api/v5/actions.js.map +1 -0
  9. package/lib/exchange/swap/getCompleteSwapHistory.js +1 -1
  10. package/lib/exchange/swap/getCompleteSwapHistory.js.map +1 -1
  11. package/lib/exchange/swap/postSwapState.js +3 -3
  12. package/lib/exchange/swap/postSwapState.js.map +1 -1
  13. package/lib/exchange/swap/setBroadcastTransaction.d.ts +1 -1
  14. package/lib/exchange/swap/setBroadcastTransaction.d.ts.map +1 -1
  15. package/lib/exchange/swap/setBroadcastTransaction.js +1 -1
  16. package/lib/exchange/swap/setBroadcastTransaction.js.map +1 -1
  17. package/lib/exchange/swap/transactionStrategies.d.ts +25 -0
  18. package/lib/exchange/swap/transactionStrategies.d.ts.map +1 -0
  19. package/lib/exchange/swap/transactionStrategies.js +152 -0
  20. package/lib/exchange/swap/transactionStrategies.js.map +1 -0
  21. package/lib/exchange/swap/types.d.ts +58 -0
  22. package/lib/exchange/swap/types.d.ts.map +1 -1
  23. package/lib/wallet-api/Exchange/server.d.ts +29 -10
  24. package/lib/wallet-api/Exchange/server.d.ts.map +1 -1
  25. package/lib/wallet-api/Exchange/server.js +202 -7
  26. package/lib/wallet-api/Exchange/server.js.map +1 -1
  27. package/lib/wallet-api/Exchange/server.test.js +3 -1
  28. package/lib/wallet-api/Exchange/server.test.js.map +1 -1
  29. package/lib-es/exchange/error.d.ts +1 -0
  30. package/lib-es/exchange/error.d.ts.map +1 -1
  31. package/lib-es/exchange/error.js +9 -0
  32. package/lib-es/exchange/error.js.map +1 -1
  33. package/lib-es/exchange/swap/api/v5/actions.d.ts +3 -0
  34. package/lib-es/exchange/swap/api/v5/actions.d.ts.map +1 -0
  35. package/lib-es/exchange/swap/api/v5/actions.js +29 -0
  36. package/lib-es/exchange/swap/api/v5/actions.js.map +1 -0
  37. package/lib-es/exchange/swap/getCompleteSwapHistory.js +1 -1
  38. package/lib-es/exchange/swap/getCompleteSwapHistory.js.map +1 -1
  39. package/lib-es/exchange/swap/postSwapState.js +1 -1
  40. package/lib-es/exchange/swap/postSwapState.js.map +1 -1
  41. package/lib-es/exchange/swap/setBroadcastTransaction.d.ts +1 -1
  42. package/lib-es/exchange/swap/setBroadcastTransaction.d.ts.map +1 -1
  43. package/lib-es/exchange/swap/setBroadcastTransaction.js +1 -1
  44. package/lib-es/exchange/swap/setBroadcastTransaction.js.map +1 -1
  45. package/lib-es/exchange/swap/transactionStrategies.d.ts +25 -0
  46. package/lib-es/exchange/swap/transactionStrategies.d.ts.map +1 -0
  47. package/lib-es/exchange/swap/transactionStrategies.js +140 -0
  48. package/lib-es/exchange/swap/transactionStrategies.js.map +1 -0
  49. package/lib-es/exchange/swap/types.d.ts +58 -0
  50. package/lib-es/exchange/swap/types.d.ts.map +1 -1
  51. package/lib-es/wallet-api/Exchange/server.d.ts +29 -10
  52. package/lib-es/wallet-api/Exchange/server.d.ts.map +1 -1
  53. package/lib-es/wallet-api/Exchange/server.js +204 -9
  54. package/lib-es/wallet-api/Exchange/server.js.map +1 -1
  55. package/lib-es/wallet-api/Exchange/server.test.js +3 -1
  56. package/lib-es/wallet-api/Exchange/server.test.js.map +1 -1
  57. package/package.json +4 -4
  58. package/src/exchange/error.ts +10 -0
  59. package/src/exchange/swap/api/v5/actions.ts +36 -0
  60. package/src/exchange/swap/getCompleteSwapHistory.ts +1 -1
  61. package/src/exchange/swap/postSwapState.ts +1 -1
  62. package/src/exchange/swap/setBroadcastTransaction.ts +2 -2
  63. package/src/exchange/swap/transactionStrategies.ts +234 -0
  64. package/src/exchange/swap/types.ts +63 -0
  65. package/src/wallet-api/Exchange/server.test.ts +7 -5
  66. package/src/wallet-api/Exchange/server.ts +335 -32
@@ -0,0 +1,140 @@
1
+ import { BigNumber } from "bignumber.js";
2
+ export function defaultTransaction({ family, amount, recipient, customFeeConfig, }) {
3
+ return {
4
+ family,
5
+ amount,
6
+ recipient,
7
+ ...customFeeConfig,
8
+ };
9
+ }
10
+ export function modeSendTransaction({ family, amount, recipient, customFeeConfig, }) {
11
+ return {
12
+ ...defaultTransaction({ family, amount, recipient, customFeeConfig }),
13
+ mode: "send",
14
+ };
15
+ }
16
+ export function stellarTransaction({ family, amount, recipient, customFeeConfig, payinExtraId, customErrorType, }) {
17
+ if (!payinExtraId)
18
+ throw {
19
+ error: new Error("Missing payinExtraId"),
20
+ step: "PayinExtraIdStepError",
21
+ customErrorType,
22
+ };
23
+ return {
24
+ ...defaultTransaction({ family, amount, recipient, customFeeConfig }),
25
+ family: "stellar",
26
+ memoValue: payinExtraId,
27
+ memoType: "MEMO_TEXT",
28
+ };
29
+ }
30
+ export function rippleTransaction({ amount, recipient, customFeeConfig, payinExtraId, customErrorType, }) {
31
+ if (!payinExtraId)
32
+ throw {
33
+ error: new Error("Missing payinExtraId"),
34
+ step: "PayinExtraIdStepError",
35
+ customErrorType,
36
+ };
37
+ const transaction = {
38
+ family: "ripple",
39
+ amount,
40
+ recipient,
41
+ ...customFeeConfig,
42
+ tag: new BigNumber(payinExtraId).toNumber(),
43
+ };
44
+ return transaction;
45
+ }
46
+ // Function to remove gasLimit from customFeeConfig for Ethereum or Bitcoin
47
+ export function withoutGasLimitTransaction({ family, amount, recipient, customFeeConfig, extraTransactionParameters, }) {
48
+ if (customFeeConfig?.gasLimit) {
49
+ delete customFeeConfig.gasLimit;
50
+ }
51
+ if (extraTransactionParameters) {
52
+ return {
53
+ family,
54
+ amount,
55
+ recipient,
56
+ ...customFeeConfig,
57
+ data: Buffer.from(extraTransactionParameters, "hex"),
58
+ };
59
+ }
60
+ return defaultTransaction({ family, amount, recipient, customFeeConfig });
61
+ }
62
+ export function bitcoinTransaction({ amount, recipient, customFeeConfig, extraTransactionParameters, }) {
63
+ if (extraTransactionParameters) {
64
+ return {
65
+ family: "bitcoin",
66
+ amount,
67
+ recipient,
68
+ ...customFeeConfig,
69
+ opReturnData: Buffer.from(extraTransactionParameters, "utf-8"),
70
+ };
71
+ }
72
+ return {
73
+ family: "bitcoin",
74
+ amount,
75
+ recipient,
76
+ ...customFeeConfig,
77
+ };
78
+ }
79
+ export function solanaTransaction({ family, amount, recipient, customFeeConfig, }) {
80
+ return {
81
+ ...defaultTransaction({ family, amount, recipient, customFeeConfig }),
82
+ family: "solana",
83
+ model: { kind: "transfer", uiState: {} },
84
+ };
85
+ }
86
+ export function elrondTransaction({ amount, recipient, customFeeConfig, }) {
87
+ const transaction = {
88
+ family: "elrond",
89
+ amount,
90
+ recipient,
91
+ mode: "send",
92
+ ...customFeeConfig,
93
+ gasLimit: 0, // FIXME: Placeholder, adjust as needed
94
+ };
95
+ return transaction;
96
+ }
97
+ function tonTransaction({ family, amount, recipient, customFeeConfig, }) {
98
+ return {
99
+ ...defaultTransaction({ family, amount, recipient, customFeeConfig }),
100
+ family: "ton",
101
+ comment: { isEncrypted: false, text: "" },
102
+ fees: new BigNumber(0), // Set default value as completeExchange call prepareTransaction, which set again fees.
103
+ };
104
+ }
105
+ export function cosmosTransaction({ family, amount, recipient, customFeeConfig, payinExtraId, }) {
106
+ return {
107
+ ...defaultTransaction({ family, amount, recipient, customFeeConfig }),
108
+ family: "cosmos",
109
+ mode: "send",
110
+ memo: payinExtraId ?? undefined,
111
+ };
112
+ }
113
+ export const transactionStrategy = {
114
+ algorand: defaultTransaction,
115
+ aptos: defaultTransaction,
116
+ bitcoin: bitcoinTransaction,
117
+ cardano: modeSendTransaction,
118
+ celo: defaultTransaction,
119
+ cosmos: cosmosTransaction,
120
+ crypto_org: defaultTransaction,
121
+ elrond: elrondTransaction,
122
+ ethereum: withoutGasLimitTransaction,
123
+ filecoin: defaultTransaction,
124
+ hedera: defaultTransaction,
125
+ near: modeSendTransaction,
126
+ neo: defaultTransaction,
127
+ polkadot: defaultTransaction,
128
+ ripple: rippleTransaction,
129
+ solana: solanaTransaction,
130
+ stacks: defaultTransaction,
131
+ stellar: stellarTransaction,
132
+ tezos: modeSendTransaction,
133
+ ton: tonTransaction,
134
+ tron: modeSendTransaction,
135
+ vechain: defaultTransaction,
136
+ casper: defaultTransaction,
137
+ sui: defaultTransaction,
138
+ internet_computer: defaultTransaction,
139
+ };
140
+ //# sourceMappingURL=transactionStrategies.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"transactionStrategies.js","sourceRoot":"","sources":["../../../src/exchange/swap/transactionStrategies.ts"],"names":[],"mappings":"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"}
@@ -278,4 +278,62 @@ export type SwapTransactionType = UseBridgeTransactionResult & {
278
278
  fromAmountError?: Error;
279
279
  fromAmountWarning?: Error;
280
280
  };
281
+ export type SwapPayloadRequestData = {
282
+ provider: string;
283
+ deviceTransactionId: string;
284
+ fromAccountAddress: string;
285
+ toAccountAddress: string;
286
+ fromAccountCurrency: string;
287
+ toAccountCurrency: string;
288
+ amount: string;
289
+ amountInAtomicUnit: number;
290
+ quoteId?: string;
291
+ toNewTokenId?: string;
292
+ };
293
+ export type SwapPayloadResponse = {
294
+ binaryPayload: string;
295
+ signature: string;
296
+ payinAddress: string;
297
+ swapId: string;
298
+ payinExtraId?: string;
299
+ extraTransactionParameters?: string;
300
+ };
301
+ export type ConfirmSwapRequest = {
302
+ provider: string;
303
+ swapId: string;
304
+ transactionId: string;
305
+ sourceCurrencyId?: string;
306
+ targetCurrencyId?: string;
307
+ hardwareWalletType?: string;
308
+ };
309
+ export type CancelSwapRequest = {
310
+ provider: string;
311
+ swapId: string;
312
+ statusCode?: string;
313
+ errorMessage?: string;
314
+ sourceCurrencyId?: string;
315
+ targetCurrencyId?: string;
316
+ hardwareWalletType?: string;
317
+ swapType?: string;
318
+ swapStep?: string;
319
+ };
320
+ export type SwapBackendResponse = {
321
+ provider: string;
322
+ swapId: string;
323
+ apiExtraFee: number;
324
+ apiFee: number;
325
+ refundAddress: string;
326
+ amountExpectedFrom: number;
327
+ amountExpectedTo: number;
328
+ status: string;
329
+ from: string;
330
+ to: string;
331
+ payinAddress: string;
332
+ payoutAddress: string;
333
+ createdAt: string;
334
+ binaryPayload: string;
335
+ signature: string;
336
+ payinExtraId?: string;
337
+ extraTransactionParameters?: string;
338
+ };
281
339
  //# sourceMappingURL=types.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/exchange/swap/types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/exchange/swap/types.ts"],"names":[],"mappings":"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"}
@@ -1,12 +1,13 @@
1
- import { RPCHandler } from "@ledgerhq/wallet-api-server";
2
1
  import { AccountLike } from "@ledgerhq/types-live";
3
- import { ExchangeCompleteParams, ExchangeCompleteResult, ExchangeStartParams, ExchangeStartResult, ExchangeType, SwapLiveError } from "@ledgerhq/wallet-api-exchange-module";
4
- import { TrackingAPI } from "./tracking";
5
- import { AppManifest } from "../types";
2
+ import { ExchangeCompleteParams, ExchangeCompleteResult, ExchangeStartParams, ExchangeStartResult, ExchangeSwapParams, ExchangeType, SwapLiveError, SwapResult } from "@ledgerhq/wallet-api-exchange-module";
3
+ import { RPCHandler } from "@ledgerhq/wallet-api-server";
4
+ import { BigNumber } from "bignumber.js";
5
+ import { ExchangeSwap } from "../../exchange/swap/types";
6
6
  import { Exchange } from "../../exchange/types";
7
7
  import { Transaction } from "../../generated/types";
8
+ import { AppManifest } from "../types";
9
+ import { TrackingAPI } from "./tracking";
8
10
  export { ExchangeType };
9
- import { BigNumber } from "bignumber.js";
10
11
  export type CompleteExchangeUiRequest = {
11
12
  provider: string;
12
13
  exchange: Exchange;
@@ -21,16 +22,25 @@ export type CompleteExchangeUiRequest = {
21
22
  refundAddress?: string;
22
23
  payoutAddress?: string;
23
24
  };
24
- type ExchangeStartParamsUiRequest = {
25
+ type FundStartParamsUiRequest = {
25
26
  exchangeType: "FUND";
26
- } | {
27
+ };
28
+ type SellStartParamsUiRequest = {
27
29
  exchangeType: "SELL";
28
30
  provider: string;
29
31
  exchange: Partial<Exchange> | undefined;
30
- } | {
32
+ };
33
+ type SwapStartParamsUiRequest = {
31
34
  exchangeType: "SWAP";
32
35
  provider: string;
33
- exchange: Partial<Exchange>;
36
+ exchange: Partial<ExchangeSwap>;
37
+ };
38
+ type ExchangeStartParamsUiRequest = FundStartParamsUiRequest | SellStartParamsUiRequest | SwapStartParamsUiRequest;
39
+ export type SwapUiRequest = CompleteExchangeUiRequest & {
40
+ provider?: string;
41
+ fromAccountId?: string;
42
+ toAccountId?: string;
43
+ tokenCurrency?: string;
34
44
  };
35
45
  type ExchangeUiHooks = {
36
46
  "custom.exchange.start": (params: {
@@ -52,8 +62,16 @@ type ExchangeUiHooks = {
52
62
  onSuccess: () => void;
53
63
  onCancel: () => void;
54
64
  }) => void;
65
+ "custom.exchange.swap": (params: {
66
+ exchangeParams: SwapUiRequest;
67
+ onSuccess: ({ operationHash, swapId }: {
68
+ operationHash: string;
69
+ swapId: string;
70
+ }) => void;
71
+ onCancel: (error: Error) => void;
72
+ }) => void;
55
73
  };
56
- export declare const handlers: ({ accounts, tracking, manifest, uiHooks: { "custom.exchange.start": uiExchangeStart, "custom.exchange.complete": uiExchangeComplete, "custom.exchange.error": uiError, "custom.isReady": uiIsReady, }, }: {
74
+ export declare const handlers: ({ accounts, tracking, manifest, uiHooks: { "custom.exchange.start": uiExchangeStart, "custom.exchange.complete": uiExchangeComplete, "custom.exchange.error": uiError, "custom.isReady": uiIsReady, "custom.exchange.swap": uiSwap, }, }: {
57
75
  accounts: AccountLike[];
58
76
  tracking: TrackingAPI;
59
77
  manifest: AppManifest;
@@ -62,6 +80,7 @@ export declare const handlers: ({ accounts, tracking, manifest, uiHooks: { "cust
62
80
  readonly "custom.exchange.start": RPCHandler<ExchangeStartResult, ExchangeStartParams>;
63
81
  readonly "custom.exchange.complete": RPCHandler<ExchangeCompleteResult, ExchangeCompleteParams>;
64
82
  readonly "custom.exchange.error": RPCHandler<void, SwapLiveError>;
83
+ readonly "custom.exchange.swap": RPCHandler<SwapResult, ExchangeSwapParams>;
65
84
  readonly "custom.isReady": RPCHandler<void, void>;
66
85
  };
67
86
  //# sourceMappingURL=server.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"server.d.ts","sourceRoot":"","sources":["../../../src/wallet-api/Exchange/server.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,UAAU,EAAiB,MAAM,6BAA6B,CAAC;AAaxE,OAAO,EAAE,WAAW,EAAuC,MAAM,sBAAsB,CAAC;AAExF,OAAO,EACL,sBAAsB,EACtB,sBAAsB,EACtB,mBAAmB,EAEnB,mBAAmB,EACnB,YAAY,EAEZ,aAAa,EACd,MAAM,sCAAsC,CAAC;AAE9C,OAAO,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AACzC,OAAO,EAAE,WAAW,EAAE,MAAM,UAAU,CAAC;AAMvC,OAAO,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAC;AAChD,OAAO,EAAE,WAAW,EAAE,MAAM,uBAAuB,CAAC;AAQpD,OAAO,EAAE,YAAY,EAAE,CAAC;AACxB,OAAO,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AAYzC,MAAM,MAAM,yBAAyB,GAAG;IACtC,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,EAAE,QAAQ,CAAC;IACnB,WAAW,EAAE,WAAW,CAAC;IACzB,aAAa,EAAE,MAAM,CAAC;IACtB,SAAS,EAAE,MAAM,CAAC;IAClB,YAAY,EAAE,MAAM,CAAC;IACrB,YAAY,EAAE,MAAM,CAAC;IACrB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,kBAAkB,CAAC,EAAE,SAAS,CAAC;IAC/B,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,aAAa,CAAC,EAAE,MAAM,CAAC;CACxB,CAAC;AAEF,KAAK,4BAA4B,GAC7B;IACE,YAAY,EAAE,MAAM,CAAC;CACtB,GACD;IACE,YAAY,EAAE,MAAM,CAAC;IACrB,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,EAAE,OAAO,CAAC,QAAQ,CAAC,GAAG,SAAS,CAAC;CACzC,GACD;IACE,YAAY,EAAE,MAAM,CAAC;IACrB,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,EAAE,OAAO,CAAC,QAAQ,CAAC,CAAC;CAC7B,CAAC;AAEN,KAAK,eAAe,GAAG;IACrB,uBAAuB,EAAE,CAAC,MAAM,EAAE;QAChC,cAAc,EAAE,4BAA4B,CAAC;QAC7C,SAAS,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,mBAAmB,CAAC,QAAQ,CAAC,KAAK,IAAI,CAAC;QAC3E,QAAQ,EAAE,CAAC,KAAK,EAAE,KAAK,EAAE,MAAM,CAAC,EAAE,mBAAmB,CAAC,QAAQ,CAAC,KAAK,IAAI,CAAC;KAC1E,KAAK,IAAI,CAAC;IACX,0BAA0B,EAAE,CAAC,MAAM,EAAE;QACnC,cAAc,EAAE,yBAAyB,CAAC;QAC1C,SAAS,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAC;QAClC,QAAQ,EAAE,CAAC,KAAK,EAAE,KAAK,KAAK,IAAI,CAAC;KAClC,KAAK,IAAI,CAAC;IACX,uBAAuB,EAAE,CAAC,MAAM,EAAE;QAChC,KAAK,EAAE,aAAa,GAAG,SAAS,CAAC;QACjC,SAAS,EAAE,MAAM,IAAI,CAAC;QACtB,QAAQ,EAAE,MAAM,IAAI,CAAC;KACtB,KAAK,IAAI,CAAC;IACX,gBAAgB,EAAE,CAAC,MAAM,EAAE;QAAE,SAAS,EAAE,MAAM,IAAI,CAAC;QAAC,QAAQ,EAAE,MAAM,IAAI,CAAA;KAAE,KAAK,IAAI,CAAC;CACrF,CAAC;AAEF,eAAO,MAAM,QAAQ;cAWT,WAAW,EAAE;cACb,WAAW;cACX,WAAW;aACZ,eAAe;;;;;;CA8OM,CAAC"}
1
+ {"version":3,"file":"server.d.ts","sourceRoot":"","sources":["../../../src/wallet-api/Exchange/server.ts"],"names":[],"mappings":"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"}
@@ -1,17 +1,22 @@
1
1
  /* eslint-disable no-console */
2
- import { customWrapper } from "@ledgerhq/wallet-api-server";
3
- import { createAccountNotFound, createCurrencyNotFound, deserializeTransaction, ServerError, } from "@ledgerhq/wallet-api-core";
4
- import { getParentAccount, getMainAccount, makeEmptyTokenAccount, } from "@ledgerhq/coin-framework/account/index";
5
- import { getCurrencyForAccount } from "@ledgerhq/types-live";
2
+ import { getMainAccount, getParentAccount, makeEmptyTokenAccount, } from "@ledgerhq/coin-framework/account/index";
6
3
  import { findTokenById, listTokensForCryptoCurrency } from "@ledgerhq/cryptoassets";
7
- import { ExchangeType, } from "@ledgerhq/wallet-api-exchange-module";
8
4
  import { decodeSwapPayload } from "@ledgerhq/hw-app-exchange";
9
- import { getAccountIdFromWalletAccountId, getWalletAPITransactionSignFlowInfos, } from "../converters";
5
+ import { getCurrencyForAccount } from "@ledgerhq/types-live";
6
+ import { createAccountNotFound, createCurrencyNotFound, createUnknownError, deserializeTransaction, ServerError, } from "@ledgerhq/wallet-api-core";
7
+ import { ExchangeType, } from "@ledgerhq/wallet-api-exchange-module";
8
+ import { customWrapper } from "@ledgerhq/wallet-api-server";
9
+ import { BigNumber } from "bignumber.js";
10
10
  import { getAccountBridge } from "../../bridge";
11
- import { ExchangeError, createAccounIdNotFound, createWrongSellParams, createWrongSwapParams, } from "./error";
11
+ import { retrieveSwapPayload } from "../../exchange/swap/api/v5/actions";
12
+ import { transactionStrategy } from "../../exchange/swap/transactionStrategies";
13
+ import { getAccountIdFromWalletAccountId, getWalletAPITransactionSignFlowInfos, } from "../converters";
14
+ import { createAccounIdNotFound, createWrongSellParams, createWrongSwapParams, ExchangeError, } from "./error";
15
+ import { getSwapStepFromError } from "../../exchange/error";
16
+ import { postSwapCancelled } from "../../exchange/swap";
17
+ import { setBroadcastTransaction } from "../../exchange/swap/setBroadcastTransaction";
12
18
  export { ExchangeType };
13
- import { BigNumber } from "bignumber.js";
14
- export const handlers = ({ accounts, tracking, manifest, uiHooks: { "custom.exchange.start": uiExchangeStart, "custom.exchange.complete": uiExchangeComplete, "custom.exchange.error": uiError, "custom.isReady": uiIsReady, }, }) => ({
19
+ export const handlers = ({ accounts, tracking, manifest, uiHooks: { "custom.exchange.start": uiExchangeStart, "custom.exchange.complete": uiExchangeComplete, "custom.exchange.error": uiError, "custom.isReady": uiIsReady, "custom.exchange.swap": uiSwap, }, }) => ({
15
20
  "custom.exchange.start": customWrapper(async (params) => {
16
21
  if (!params) {
17
22
  tracking.startExchangeNoParams(manifest);
@@ -192,6 +197,162 @@ export const handlers = ({ accounts, tracking, manifest, uiHooks: { "custom.exch
192
197
  },
193
198
  }));
194
199
  }),
200
+ "custom.exchange.swap": customWrapper(async (params) => {
201
+ if (!params) {
202
+ tracking.startExchangeNoParams(manifest);
203
+ throw new ServerError(createUnknownError({ message: "params is undefined" }));
204
+ }
205
+ const { provider, fromAmount, fromAmountAtomic, quoteId, toNewTokenId, customFeeConfig } = params;
206
+ const trackingParams = {
207
+ provider: params.provider,
208
+ exchangeType: params.exchangeType,
209
+ };
210
+ tracking.startExchangeRequested(trackingParams);
211
+ const exchangeStartParams = extractSwapStartParam(params, accounts);
212
+ const { fromCurrency, fromAccount, fromParentAccount, toCurrency, toAccount, toParentAccount, } = exchangeStartParams.exchange;
213
+ if (!fromAccount || !fromCurrency) {
214
+ throw new ServerError(createAccountNotFound(params.fromAccountId));
215
+ }
216
+ const fromAccountAddress = fromParentAccount
217
+ ? fromParentAccount.freshAddress
218
+ : fromAccount.freshAddress;
219
+ const toAccountAddress = toParentAccount
220
+ ? toParentAccount.freshAddress
221
+ : toAccount.freshAddress;
222
+ // Step 1: Open the drawer and open exchange app
223
+ const startExchange = async () => {
224
+ console.log("LLD custom.exchange.swap uiExchangeStart", exchangeStartParams);
225
+ return new Promise((resolve, reject) => {
226
+ uiExchangeStart({
227
+ exchangeParams: exchangeStartParams,
228
+ onSuccess: (nonce, device) => {
229
+ tracking.startExchangeSuccess(trackingParams);
230
+ resolve({ transactionId: nonce, device });
231
+ },
232
+ onCancel: error => {
233
+ tracking.startExchangeFail(trackingParams);
234
+ reject(error);
235
+ },
236
+ });
237
+ });
238
+ };
239
+ const { transactionId, device: deviceInfo } = await startExchange();
240
+ const { binaryPayload, signature, payinAddress, swapId, payinExtraId, extraTransactionParameters, } = await retrieveSwapPayload({
241
+ provider,
242
+ deviceTransactionId: transactionId,
243
+ fromAccountAddress,
244
+ toAccountAddress,
245
+ fromAccountCurrency: fromCurrency.id,
246
+ toAccountCurrency: toCurrency.id,
247
+ amount: fromAmount,
248
+ amountInAtomicUnit: fromAmountAtomic,
249
+ quoteId,
250
+ toNewTokenId,
251
+ }).catch((error) => {
252
+ throw error;
253
+ });
254
+ // Complete Swap
255
+ const trackingCompleteParams = {
256
+ provider: params.provider,
257
+ exchangeType: params.exchangeType,
258
+ };
259
+ tracking.completeExchangeRequested(trackingCompleteParams);
260
+ const strategyData = {
261
+ recipient: payinAddress,
262
+ amount: fromAmountAtomic,
263
+ currency: fromCurrency,
264
+ customFeeConfig: customFeeConfig ?? {},
265
+ payinExtraId,
266
+ extraTransactionParameters,
267
+ };
268
+ const transaction = await getStrategy(strategyData, "swap").catch(async (error) => {
269
+ throw error;
270
+ });
271
+ const mainFromAccount = getMainAccount(fromAccount, fromParentAccount);
272
+ const mainFromAccountFamily = mainFromAccount.currency.family;
273
+ if (transaction.family !== mainFromAccountFamily) {
274
+ return Promise.reject(new Error(`Account and transaction must be from the same family. Account family: ${mainFromAccountFamily}, Transaction family: ${transaction.family}`));
275
+ }
276
+ const accountBridge = getAccountBridge(fromAccount, fromParentAccount);
277
+ /**
278
+ * 'subAccountId' is used for ETH and it's ERC-20 tokens.
279
+ * This field is ignored for BTC
280
+ */
281
+ const subAccountId = fromParentAccount && fromParentAccount.id !== fromAccount.id ? fromAccount.id : undefined;
282
+ const bridgeTx = accountBridge.createTransaction(fromAccount);
283
+ /**
284
+ * We append the `recipient` to the tx created from `createTransaction`
285
+ * to avoid having userGasLimit reset to null for ETH txs
286
+ * cf. libs/ledger-live-common/src/families/ethereum/updateTransaction.ts
287
+ */
288
+ const tx = accountBridge.updateTransaction({
289
+ ...bridgeTx,
290
+ recipient: transaction.recipient,
291
+ }, {
292
+ ...transaction,
293
+ feesStrategy: params.feeStrategy.toLowerCase(),
294
+ subAccountId,
295
+ });
296
+ // Get amountExpectedTo and magnitudeAwareRate from binary payload
297
+ const decodePayload = await decodeSwapPayload(binaryPayload);
298
+ const amountExpectedTo = new BigNumber(decodePayload.amountToWallet.toString());
299
+ const magnitudeAwareRate = tx.amount && amountExpectedTo.dividedBy(tx.amount);
300
+ const refundAddress = decodePayload.refundAddress;
301
+ const payoutAddress = decodePayload.payoutAddress;
302
+ // tx.amount should be BigNumber
303
+ tx.amount = new BigNumber(tx.amount);
304
+ return new Promise((resolve, reject) => uiSwap({
305
+ exchangeParams: {
306
+ exchangeType: ExchangeType.SWAP,
307
+ provider: params.provider,
308
+ transaction: tx,
309
+ signature: signature,
310
+ binaryPayload: binaryPayload,
311
+ exchange: {
312
+ fromAccount,
313
+ fromParentAccount,
314
+ toAccount,
315
+ toParentAccount,
316
+ fromCurrency: fromCurrency,
317
+ toCurrency: toCurrency,
318
+ },
319
+ feesStrategy: params.feeStrategy,
320
+ swapId: swapId,
321
+ amountExpectedTo: amountExpectedTo.toNumber(),
322
+ magnitudeAwareRate,
323
+ refundAddress,
324
+ payoutAddress,
325
+ },
326
+ onSuccess: ({ operationHash, swapId }) => {
327
+ tracking.completeExchangeSuccess({
328
+ ...trackingParams,
329
+ currency: transaction.family,
330
+ });
331
+ setBroadcastTransaction({
332
+ provider,
333
+ result: { operation: operationHash, swapId },
334
+ sourceCurrencyId: fromCurrency.id,
335
+ targetCurrencyId: toCurrency?.id,
336
+ hardwareWalletType: deviceInfo?.modelId,
337
+ });
338
+ resolve({ operationHash, swapId });
339
+ },
340
+ onCancel: error => {
341
+ postSwapCancelled({
342
+ provider: provider,
343
+ swapId: swapId,
344
+ swapStep: getSwapStepFromError(error),
345
+ statusCode: error.name,
346
+ errorMessage: error.message,
347
+ sourceCurrencyId: fromCurrency.id,
348
+ targetCurrencyId: toCurrency?.id,
349
+ hardwareWalletType: deviceInfo?.modelId,
350
+ swapType: quoteId ? "fixed" : "float",
351
+ });
352
+ reject(error);
353
+ },
354
+ }));
355
+ }),
195
356
  "custom.isReady": customWrapper(async () => {
196
357
  return new Promise((resolve, reject) => uiIsReady({
197
358
  onSuccess: () => {
@@ -236,8 +397,10 @@ function extractSwapStartParam(params, accounts) {
236
397
  exchange: {
237
398
  fromAccount,
238
399
  fromParentAccount,
400
+ fromCurrency: getCurrencyForAccount(fromAccount),
239
401
  toAccount: newTokenAccount ? newTokenAccount : toAccount,
240
402
  toParentAccount: newTokenAccount ? toAccount : toParentAccount,
403
+ toCurrency: getCurrencyForAccount(toAccount),
241
404
  },
242
405
  };
243
406
  }
@@ -280,4 +443,36 @@ async function getToCurrency(binaryPayload, toAccount, newTokenAccount) {
280
443
  }
281
444
  return newTokenAccount?.token ?? getCurrencyForAccount(toAccount);
282
445
  }
446
+ async function getStrategy({ recipient, amount, currency, customFeeConfig, payinExtraId, extraTransactionParameters, }, customErrorType) {
447
+ const family = currency.type === "TokenCurrency"
448
+ ? currency.parentCurrency?.family
449
+ : currency.family;
450
+ if (!family) {
451
+ throw new Error(`TokenCurrency missing parentCurrency family: ${currency.id}`);
452
+ }
453
+ // Remove unsupported utxoStrategy for now
454
+ if (customFeeConfig?.utxoStrategy) {
455
+ delete customFeeConfig.utxoStrategy;
456
+ }
457
+ // Normalize family key for strategy lookup
458
+ const familyKey = family === "evm" ? "ethereum" : family;
459
+ const strategy = transactionStrategy?.[familyKey];
460
+ if (!strategy) {
461
+ throw new Error(`No transaction strategy found for family: ${familyKey}`);
462
+ }
463
+ try {
464
+ return await strategy({
465
+ family,
466
+ amount,
467
+ recipient,
468
+ customFeeConfig: customFeeConfig || {},
469
+ payinExtraId,
470
+ extraTransactionParameters,
471
+ customErrorType,
472
+ });
473
+ }
474
+ catch (error) {
475
+ throw new Error(`Failed to execute transaction strategy for family: ${familyKey}. Reason: ${error.message}`);
476
+ }
477
+ }
283
478
  //# sourceMappingURL=server.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"server.js","sourceRoot":"","sources":["../../../src/wallet-api/Exchange/server.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"server.js","sourceRoot":"","sources":["../../../src/wallet-api/Exchange/server.ts"],"names":[],"mappings":"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"}