@ledgerhq/coin-aptos 2.0.0-nightly.3 → 2.0.0-nightly.5
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.turbo/turbo-build.log +1 -1
- package/CHANGELOG.md +17 -0
- package/lib/__tests__/api/index.test.js +5 -61
- package/lib/__tests__/api/index.test.js.map +1 -1
- package/lib/__tests__/bridge/buildTransaction.test.js +2 -57
- package/lib/__tests__/bridge/buildTransaction.test.js.map +1 -1
- package/lib/__tests__/bridge/getFeesForTransaction.test.js +8 -109
- package/lib/__tests__/bridge/getFeesForTransaction.test.js.map +1 -1
- package/lib/__tests__/bridge/getTransactionStatus.test.js +37 -175
- package/lib/__tests__/bridge/getTransactionStatus.test.js.map +1 -1
- package/lib/__tests__/bridge/logic.test.js +115 -889
- package/lib/__tests__/bridge/logic.test.js.map +1 -1
- package/lib/__tests__/bridge/signOperation.test.js +2 -128
- package/lib/__tests__/bridge/signOperation.test.js.map +1 -1
- package/lib/__tests__/bridge/synchronisation.test.js +67 -1214
- package/lib/__tests__/bridge/synchronisation.test.js.map +1 -1
- package/lib/api/graphql/queries.js +6 -6
- package/lib/api/graphql/types.d.ts +9 -9
- package/lib/api/graphql/types.d.ts.map +1 -1
- package/lib/api/index.d.ts +2 -5
- package/lib/api/index.d.ts.map +1 -1
- package/lib/api/index.js +4 -30
- package/lib/api/index.js.map +1 -1
- package/lib/bridge/bridge.fixture.d.ts +0 -2
- package/lib/bridge/bridge.fixture.d.ts.map +1 -1
- package/lib/bridge/bridge.fixture.js +13 -85
- package/lib/bridge/bridge.fixture.js.map +1 -1
- package/lib/bridge/buildTransaction.d.ts.map +1 -1
- package/lib/bridge/buildTransaction.js +3 -29
- package/lib/bridge/buildTransaction.js.map +1 -1
- package/lib/bridge/estimateMaxSpendable.js +1 -1
- package/lib/bridge/estimateMaxSpendable.js.map +1 -1
- package/lib/bridge/getFeesForTransaction.d.ts.map +1 -1
- package/lib/bridge/getFeesForTransaction.js +7 -12
- package/lib/bridge/getFeesForTransaction.js.map +1 -1
- package/lib/bridge/getTransactionStatus.d.ts.map +1 -1
- package/lib/bridge/getTransactionStatus.js +14 -28
- package/lib/bridge/getTransactionStatus.js.map +1 -1
- package/lib/bridge/logic.d.ts +8 -13
- package/lib/bridge/logic.d.ts.map +1 -1
- package/lib/bridge/logic.js +54 -152
- package/lib/bridge/logic.js.map +1 -1
- package/lib/bridge/prepareTransaction.d.ts.map +1 -1
- package/lib/bridge/prepareTransaction.js +2 -2
- package/lib/bridge/prepareTransaction.js.map +1 -1
- package/lib/bridge/signOperation.d.ts.map +1 -1
- package/lib/bridge/signOperation.js +3 -17
- package/lib/bridge/signOperation.js.map +1 -1
- package/lib/bridge/synchronisation.d.ts +0 -15
- package/lib/bridge/synchronisation.d.ts.map +1 -1
- package/lib/bridge/synchronisation.js +4 -127
- package/lib/bridge/synchronisation.js.map +1 -1
- package/lib/constants.d.ts +1 -5
- package/lib/constants.d.ts.map +1 -1
- package/lib/constants.js +2 -6
- package/lib/constants.js.map +1 -1
- package/lib/test/bot-specs.d.ts.map +1 -1
- package/lib/test/bot-specs.js +1 -40
- package/lib/test/bot-specs.js.map +1 -1
- package/lib/test/bridgeDatasetTest.d.ts.map +1 -1
- package/lib/test/bridgeDatasetTest.js +62 -43
- package/lib/test/bridgeDatasetTest.js.map +1 -1
- package/lib/test/speculos-deviceActions.d.ts +0 -1
- package/lib/test/speculos-deviceActions.d.ts.map +1 -1
- package/lib/test/speculos-deviceActions.js +5 -37
- package/lib/test/speculos-deviceActions.js.map +1 -1
- package/lib/types/index.d.ts +7 -18
- package/lib/types/index.d.ts.map +1 -1
- package/lib-es/__tests__/api/index.test.js +5 -61
- package/lib-es/__tests__/api/index.test.js.map +1 -1
- package/lib-es/__tests__/bridge/buildTransaction.test.js +3 -58
- package/lib-es/__tests__/bridge/buildTransaction.test.js.map +1 -1
- package/lib-es/__tests__/bridge/getFeesForTransaction.test.js +9 -110
- package/lib-es/__tests__/bridge/getFeesForTransaction.test.js.map +1 -1
- package/lib-es/__tests__/bridge/getTransactionStatus.test.js +39 -177
- package/lib-es/__tests__/bridge/getTransactionStatus.test.js.map +1 -1
- package/lib-es/__tests__/bridge/logic.test.js +117 -891
- package/lib-es/__tests__/bridge/logic.test.js.map +1 -1
- package/lib-es/__tests__/bridge/signOperation.test.js +2 -128
- package/lib-es/__tests__/bridge/signOperation.test.js.map +1 -1
- package/lib-es/__tests__/bridge/synchronisation.test.js +69 -1213
- package/lib-es/__tests__/bridge/synchronisation.test.js.map +1 -1
- package/lib-es/api/graphql/queries.js +6 -6
- package/lib-es/api/graphql/types.d.ts +9 -9
- package/lib-es/api/graphql/types.d.ts.map +1 -1
- package/lib-es/api/index.d.ts +2 -5
- package/lib-es/api/index.d.ts.map +1 -1
- package/lib-es/api/index.js +4 -30
- package/lib-es/api/index.js.map +1 -1
- package/lib-es/bridge/bridge.fixture.d.ts +0 -2
- package/lib-es/bridge/bridge.fixture.d.ts.map +1 -1
- package/lib-es/bridge/bridge.fixture.js +12 -82
- package/lib-es/bridge/bridge.fixture.js.map +1 -1
- package/lib-es/bridge/buildTransaction.d.ts.map +1 -1
- package/lib-es/bridge/buildTransaction.js +4 -30
- package/lib-es/bridge/buildTransaction.js.map +1 -1
- package/lib-es/bridge/estimateMaxSpendable.js +1 -1
- package/lib-es/bridge/estimateMaxSpendable.js.map +1 -1
- package/lib-es/bridge/getFeesForTransaction.d.ts.map +1 -1
- package/lib-es/bridge/getFeesForTransaction.js +8 -13
- package/lib-es/bridge/getFeesForTransaction.js.map +1 -1
- package/lib-es/bridge/getTransactionStatus.d.ts.map +1 -1
- package/lib-es/bridge/getTransactionStatus.js +14 -28
- package/lib-es/bridge/getTransactionStatus.js.map +1 -1
- package/lib-es/bridge/logic.d.ts +8 -13
- package/lib-es/bridge/logic.d.ts.map +1 -1
- package/lib-es/bridge/logic.js +52 -146
- package/lib-es/bridge/logic.js.map +1 -1
- package/lib-es/bridge/prepareTransaction.d.ts.map +1 -1
- package/lib-es/bridge/prepareTransaction.js +2 -2
- package/lib-es/bridge/prepareTransaction.js.map +1 -1
- package/lib-es/bridge/signOperation.d.ts.map +1 -1
- package/lib-es/bridge/signOperation.js +3 -17
- package/lib-es/bridge/signOperation.js.map +1 -1
- package/lib-es/bridge/synchronisation.d.ts +0 -15
- package/lib-es/bridge/synchronisation.d.ts.map +1 -1
- package/lib-es/bridge/synchronisation.js +3 -123
- package/lib-es/bridge/synchronisation.js.map +1 -1
- package/lib-es/constants.d.ts +1 -5
- package/lib-es/constants.d.ts.map +1 -1
- package/lib-es/constants.js +1 -5
- package/lib-es/constants.js.map +1 -1
- package/lib-es/test/bot-specs.d.ts.map +1 -1
- package/lib-es/test/bot-specs.js +2 -41
- package/lib-es/test/bot-specs.js.map +1 -1
- package/lib-es/test/bridgeDatasetTest.d.ts.map +1 -1
- package/lib-es/test/bridgeDatasetTest.js +59 -43
- package/lib-es/test/bridgeDatasetTest.js.map +1 -1
- package/lib-es/test/speculos-deviceActions.d.ts +0 -1
- package/lib-es/test/speculos-deviceActions.d.ts.map +1 -1
- package/lib-es/test/speculos-deviceActions.js +4 -36
- package/lib-es/test/speculos-deviceActions.js.map +1 -1
- package/lib-es/types/index.d.ts +7 -18
- package/lib-es/types/index.d.ts.map +1 -1
- package/package.json +5 -6
- package/src/__tests__/api/index.test.ts +5 -75
- package/src/__tests__/bridge/buildTransaction.test.ts +3 -85
- package/src/__tests__/bridge/getFeesForTransaction.test.ts +9 -144
- package/src/__tests__/bridge/getTransactionStatus.test.ts +38 -217
- package/src/__tests__/bridge/logic.test.ts +118 -922
- package/src/__tests__/bridge/signOperation.test.ts +2 -141
- package/src/__tests__/bridge/synchronisation.test.ts +71 -1265
- package/src/api/graphql/queries.ts +6 -6
- package/src/api/graphql/types.ts +9 -9
- package/src/api/index.ts +5 -32
- package/src/bridge/bridge.fixture.ts +12 -91
- package/src/bridge/buildTransaction.ts +6 -39
- package/src/bridge/estimateMaxSpendable.ts +1 -1
- package/src/bridge/getFeesForTransaction.ts +9 -14
- package/src/bridge/getTransactionStatus.ts +13 -35
- package/src/bridge/logic.ts +63 -202
- package/src/bridge/prepareTransaction.ts +3 -4
- package/src/bridge/signOperation.ts +3 -19
- package/src/bridge/synchronisation.ts +3 -170
- package/src/constants.ts +1 -12
- package/src/test/bot-specs.ts +3 -63
- package/src/test/bridgeDatasetTest.ts +59 -45
- package/src/test/speculos-deviceActions.ts +4 -40
- package/src/types/index.ts +1 -15
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"getFeesForTransaction.js","sourceRoot":"","sources":["../../src/bridge/getFeesForTransaction.ts"],"names":[],"mappings":";;;;;;AAAA,+CAAsD;AACtD,yCAAqC;AAErC,gEAAqC;AACrC,wDAAqE;AAErE,0EAAkD;AAClD,
|
|
1
|
+
{"version":3,"file":"getFeesForTransaction.js","sourceRoot":"","sources":["../../src/bridge/getFeesForTransaction.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"getTransactionStatus.d.ts","sourceRoot":"","sources":["../../src/bridge/getTransactionStatus.ts"],"names":[],"mappings":"AASA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,sBAAsB,CAAC;
|
|
1
|
+
{"version":3,"file":"getTransactionStatus.d.ts","sourceRoot":"","sources":["../../src/bridge/getTransactionStatus.ts"],"names":[],"mappings":"AASA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,sBAAsB,CAAC;AACpD,OAAO,KAAK,EAAE,WAAW,EAAE,iBAAiB,EAAE,MAAM,UAAU,CAAC;AAI/D,QAAA,MAAM,oBAAoB,MAAa,OAAO,KAAK,WAAW,KAAG,QAAQ,iBAAiB,CAqCzF,CAAC;AAEF,eAAe,oBAAoB,CAAC"}
|
|
@@ -1,46 +1,32 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
const errors_1 = require("@ledgerhq/errors");
|
|
4
3
|
const bignumber_js_1 = require("bignumber.js");
|
|
4
|
+
const errors_1 = require("@ledgerhq/errors");
|
|
5
5
|
const ts_sdk_1 = require("@aptos-labs/ts-sdk");
|
|
6
|
-
const logic_1 = require("./logic");
|
|
7
6
|
const getTransactionStatus = async (a, t) => {
|
|
8
7
|
const errors = {};
|
|
9
8
|
const warnings = {};
|
|
10
|
-
if (!t.recipient) {
|
|
11
|
-
errors.recipient = new errors_1.RecipientRequired();
|
|
12
|
-
}
|
|
13
|
-
if (!ts_sdk_1.AccountAddress.isValid({ input: t.recipient }).valid && !errors.recipient) {
|
|
14
|
-
errors.recipient = new errors_1.InvalidAddress("", { currencyName: a.currency.name });
|
|
15
|
-
}
|
|
16
|
-
if (t.recipient === a.freshAddress && !errors.recipient) {
|
|
17
|
-
errors.recipient = new errors_1.InvalidAddressBecauseDestinationIsAlsoSource();
|
|
18
|
-
}
|
|
19
9
|
if (!t.fees) {
|
|
20
10
|
errors.fees = new errors_1.FeeNotLoaded();
|
|
21
11
|
}
|
|
22
12
|
const estimatedFees = t.fees || (0, bignumber_js_1.BigNumber)(0);
|
|
23
|
-
if (t.amount.
|
|
13
|
+
if (t.amount.eq(0)) {
|
|
24
14
|
errors.amount = new errors_1.AmountRequired();
|
|
25
15
|
}
|
|
26
|
-
const
|
|
27
|
-
const
|
|
28
|
-
|
|
29
|
-
? tokenAccount.spendableBalance
|
|
30
|
-
: a.spendableBalance.minus(estimatedFees).isLessThan(0)
|
|
31
|
-
? (0, bignumber_js_1.BigNumber)(0)
|
|
32
|
-
: a.spendableBalance.minus(estimatedFees)
|
|
33
|
-
: t.amount;
|
|
34
|
-
const totalSpent = tokenAccount ? amount : amount.plus(estimatedFees);
|
|
35
|
-
if (tokenAccount && t.errors?.maxGasAmount == "GasInsufficientBalance" && !errors.amount) {
|
|
36
|
-
errors.amount = new errors_1.NotEnoughBalanceFees();
|
|
37
|
-
}
|
|
38
|
-
if (tokenAccount
|
|
39
|
-
? tokenAccount.spendableBalance.isLessThan(totalSpent) ||
|
|
40
|
-
a.spendableBalance.isLessThan(estimatedFees)
|
|
41
|
-
: a.spendableBalance.isLessThan(totalSpent) && !errors.amount) {
|
|
16
|
+
const amount = t.amount;
|
|
17
|
+
const totalSpent = (0, bignumber_js_1.BigNumber)(t.amount).plus(estimatedFees);
|
|
18
|
+
if (totalSpent.gt(a.balance) && !errors.amount) {
|
|
42
19
|
errors.amount = new errors_1.NotEnoughBalance();
|
|
43
20
|
}
|
|
21
|
+
if (!t.recipient) {
|
|
22
|
+
errors.recipient = new errors_1.RecipientRequired();
|
|
23
|
+
}
|
|
24
|
+
else if (ts_sdk_1.AccountAddress.isValid({ input: t.recipient }).valid === false && !errors.recipient) {
|
|
25
|
+
errors.recipient = new errors_1.InvalidAddress("", { currencyName: a.currency.name });
|
|
26
|
+
}
|
|
27
|
+
else if (t.recipient === a.freshAddress && !errors.recipient) {
|
|
28
|
+
errors.recipient = new errors_1.InvalidAddressBecauseDestinationIsAlsoSource();
|
|
29
|
+
}
|
|
44
30
|
return Promise.resolve({
|
|
45
31
|
errors,
|
|
46
32
|
warnings,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"getTransactionStatus.js","sourceRoot":"","sources":["../../src/bridge/getTransactionStatus.ts"],"names":[],"mappings":";;AAAA
|
|
1
|
+
{"version":3,"file":"getTransactionStatus.js","sourceRoot":"","sources":["../../src/bridge/getTransactionStatus.ts"],"names":[],"mappings":";;AAAA,+CAAyC;AACzC,6CAO0B;AAI1B,+CAAoD;AAEpD,MAAM,oBAAoB,GAAG,KAAK,EAAE,CAAU,EAAE,CAAc,EAA8B,EAAE;IAC5F,MAAM,MAAM,GAA0B,EAAE,CAAC;IACzC,MAAM,QAAQ,GAAG,EAAE,CAAC;IAEpB,IAAI,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;QACZ,MAAM,CAAC,IAAI,GAAG,IAAI,qBAAY,EAAE,CAAC;IACnC,CAAC;IAED,MAAM,aAAa,GAAG,CAAC,CAAC,IAAI,IAAI,IAAA,wBAAS,EAAC,CAAC,CAAC,CAAC;IAE7C,IAAI,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACnB,MAAM,CAAC,MAAM,GAAG,IAAI,uBAAc,EAAE,CAAC;IACvC,CAAC;IAED,MAAM,MAAM,GAAG,CAAC,CAAC,MAAM,CAAC;IAExB,MAAM,UAAU,GAAG,IAAA,wBAAS,EAAC,CAAC,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;IAE3D,IAAI,UAAU,CAAC,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC;QAC/C,MAAM,CAAC,MAAM,GAAG,IAAI,yBAAgB,EAAE,CAAC;IACzC,CAAC;IAED,IAAI,CAAC,CAAC,CAAC,SAAS,EAAE,CAAC;QACjB,MAAM,CAAC,SAAS,GAAG,IAAI,0BAAiB,EAAE,CAAC;IAC7C,CAAC;SAAM,IAAI,uBAAc,CAAC,OAAO,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,SAAS,EAAE,CAAC,CAAC,KAAK,KAAK,KAAK,IAAI,CAAC,MAAM,CAAC,SAAS,EAAE,CAAC;QAC/F,MAAM,CAAC,SAAS,GAAG,IAAI,uBAAc,CAAC,EAAE,EAAE,EAAE,YAAY,EAAE,CAAC,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC,CAAC;IAC/E,CAAC;SAAM,IAAI,CAAC,CAAC,SAAS,KAAK,CAAC,CAAC,YAAY,IAAI,CAAC,MAAM,CAAC,SAAS,EAAE,CAAC;QAC/D,MAAM,CAAC,SAAS,GAAG,IAAI,qDAA4C,EAAE,CAAC;IACxE,CAAC;IAED,OAAO,OAAO,CAAC,OAAO,CAAC;QACrB,MAAM;QACN,QAAQ;QACR,aAAa;QACb,MAAM;QACN,UAAU;KACX,CAAC,CAAC;AACL,CAAC,CAAC;AAEF,kBAAe,oBAAoB,CAAC"}
|
package/lib/bridge/logic.d.ts
CHANGED
|
@@ -1,29 +1,24 @@
|
|
|
1
|
-
import { Event, InputEntryFunctionData,
|
|
2
|
-
import type {
|
|
1
|
+
import { Event, InputEntryFunctionData, WriteSetChange } from "@aptos-labs/ts-sdk";
|
|
2
|
+
import type { Operation } from "@ledgerhq/types-live";
|
|
3
3
|
import BigNumber from "bignumber.js";
|
|
4
|
-
import type { AptosTransaction,
|
|
4
|
+
import type { AptosTransaction, TransactionOptions } from "../types";
|
|
5
5
|
export declare const DEFAULT_GAS: BigNumber;
|
|
6
6
|
export declare const DEFAULT_GAS_PRICE: BigNumber;
|
|
7
7
|
export declare const ESTIMATE_GAS_MUL: BigNumber;
|
|
8
8
|
export declare function isTestnet(currencyId: string): boolean;
|
|
9
|
-
export declare const getMaxSendBalance: (
|
|
9
|
+
export declare const getMaxSendBalance: (amount: BigNumber, gas: BigNumber, gasPrice: BigNumber) => BigNumber;
|
|
10
10
|
export declare function normalizeTransactionOptions(options: TransactionOptions): TransactionOptions;
|
|
11
11
|
export declare const getBlankOperation: (tx: AptosTransaction, id: string) => Operation<Record<string, string>>;
|
|
12
12
|
export declare const txsToOps: (info: {
|
|
13
13
|
address: string;
|
|
14
|
-
}, id: string, txs: (AptosTransaction | null)[]) =>
|
|
14
|
+
}, id: string, txs: (AptosTransaction | null)[]) => Operation[];
|
|
15
15
|
export declare function compareAddress(addressA: string, addressB: string): boolean;
|
|
16
16
|
export declare function getFunctionAddress(payload: InputEntryFunctionData): string | undefined;
|
|
17
17
|
export declare function processRecipients(payload: InputEntryFunctionData, address: string, op: Operation, function_address: string): void;
|
|
18
|
-
export declare function
|
|
19
|
-
export declare function
|
|
20
|
-
export declare function getResourceAddress(tx: AptosTransaction, event: Event, event_name: string, getAddressProcessor: (change: WriteSetChangeWriteResource, event: Event, event_name: string) => string | null): string | null;
|
|
21
|
-
export declare function checkFAOwner(tx: AptosTransaction, event: Event, user_address: string): boolean;
|
|
22
|
-
export declare function getCoinAndAmounts(tx: AptosTransaction, address: string): {
|
|
23
|
-
coin_id: string | null;
|
|
18
|
+
export declare function isChangeOfAptos(writeSetChange: WriteSetChange, event: Event, event_name: string): boolean;
|
|
19
|
+
export declare function getAptosAmounts(tx: AptosTransaction, address: string): {
|
|
24
20
|
amount_in: BigNumber;
|
|
25
21
|
amount_out: BigNumber;
|
|
26
22
|
};
|
|
27
|
-
export declare function calculateAmount(sender: string, address: string, amount_in: BigNumber, amount_out: BigNumber): BigNumber;
|
|
28
|
-
export declare function getTokenAccount(account: Account, transaction: Transaction): TokenAccount | undefined;
|
|
23
|
+
export declare function calculateAmount(sender: string, address: string, fee: BigNumber, amount_in: BigNumber, amount_out: BigNumber): BigNumber;
|
|
29
24
|
//# sourceMappingURL=logic.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"logic.d.ts","sourceRoot":"","sources":["../../src/bridge/logic.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,KAAK,EACL,sBAAsB,
|
|
1
|
+
{"version":3,"file":"logic.d.ts","sourceRoot":"","sources":["../../src/bridge/logic.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,KAAK,EACL,sBAAsB,EAEtB,cAAc,EACf,MAAM,oBAAoB,CAAC;AAE5B,OAAO,KAAK,EAAE,SAAS,EAAiB,MAAM,sBAAsB,CAAC;AACrE,OAAO,SAAS,MAAM,cAAc,CAAC;AAUrC,OAAO,KAAK,EAAqB,gBAAgB,EAAE,kBAAkB,EAAE,MAAM,UAAU,CAAC;AAExF,eAAO,MAAM,WAAW,WAAqB,CAAC;AAC9C,eAAO,MAAM,iBAAiB,WAAqB,CAAC;AACpD,eAAO,MAAM,gBAAgB,WAAqB,CAAC;AAInD,wBAAgB,SAAS,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAErD;AAED,eAAO,MAAM,iBAAiB,WACpB,SAAS,OACZ,SAAS,YACJ,SAAS,KAClB,SAIF,CAAC;AAEF,wBAAgB,2BAA2B,CAAC,OAAO,EAAE,kBAAkB,GAAG,kBAAkB,CAe3F;AAED,eAAO,MAAM,iBAAiB,OACxB,gBAAgB,MAChB,MAAM,KACT,UAAU,OAAO,MAAM,EAAE,MAAM,CAAC,CAejC,CAAC;AAUH,eAAO,MAAM,QAAQ,SACb;IAAE,OAAO,EAAE,MAAM,CAAA;CAAE,MACrB,MAAM,OACL,CAAC,gBAAgB,GAAG,IAAI,CAAC,EAAE,KAC/B,SAAS,EAsCX,CAAC;AAEF,wBAAgB,cAAc,CAAC,QAAQ,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,WAKhE;AAED,wBAAgB,kBAAkB,CAAC,OAAO,EAAE,sBAAsB,GAAG,MAAM,GAAG,SAAS,CAMtF;AAED,wBAAgB,iBAAiB,CAC/B,OAAO,EAAE,sBAAsB,EAC/B,OAAO,EAAE,MAAM,EACf,EAAE,EAAE,SAAS,EACb,gBAAgB,EAAE,MAAM,GACvB,IAAI,CA6BN;AAQD,wBAAgB,eAAe,CAC7B,cAAc,EAAE,cAAc,EAC9B,KAAK,EAAE,KAAK,EACZ,UAAU,EAAE,MAAM,GACjB,OAAO,CA6BT;AAED,wBAAgB,eAAe,CAC7B,EAAE,EAAE,gBAAgB,EACpB,OAAO,EAAE,MAAM,GACd;IAAE,SAAS,EAAE,SAAS,CAAC;IAAC,UAAU,EAAE,SAAS,CAAA;CAAE,CAqBjD;AAED,wBAAgB,eAAe,CAC7B,MAAM,EAAE,MAAM,EACd,OAAO,EAAE,MAAM,EACf,GAAG,EAAE,SAAS,EACd,SAAS,EAAE,SAAS,EACpB,UAAU,EAAE,SAAS,GACpB,SAAS,CAUX"}
|
package/lib/bridge/logic.js
CHANGED
|
@@ -3,13 +3,11 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
3
3
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
4
|
};
|
|
5
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
-
exports.
|
|
6
|
+
exports.calculateAmount = exports.getAptosAmounts = exports.isChangeOfAptos = exports.processRecipients = exports.getFunctionAddress = exports.compareAddress = exports.txsToOps = exports.getBlankOperation = exports.normalizeTransactionOptions = exports.getMaxSendBalance = exports.isTestnet = exports.ESTIMATE_GAS_MUL = exports.DEFAULT_GAS_PRICE = exports.DEFAULT_GAS = void 0;
|
|
7
7
|
const currencies_1 = require("@ledgerhq/cryptoassets/currencies");
|
|
8
|
-
const index_1 = require("@ledgerhq/coin-framework/account/index");
|
|
9
8
|
const bignumber_js_1 = __importDefault(require("bignumber.js"));
|
|
10
9
|
const operation_1 = require("@ledgerhq/coin-framework/operation");
|
|
11
10
|
const constants_1 = require("../constants");
|
|
12
|
-
const cryptoassets_1 = require("@ledgerhq/cryptoassets");
|
|
13
11
|
exports.DEFAULT_GAS = new bignumber_js_1.default(200);
|
|
14
12
|
exports.DEFAULT_GAS_PRICE = new bignumber_js_1.default(100);
|
|
15
13
|
exports.ESTIMATE_GAS_MUL = new bignumber_js_1.default(1.0); // define buffer for gas estimation change here, if needed
|
|
@@ -18,15 +16,9 @@ function isTestnet(currencyId) {
|
|
|
18
16
|
return (0, currencies_1.getCryptoCurrencyById)(currencyId).isTestnetFor ? true : false;
|
|
19
17
|
}
|
|
20
18
|
exports.isTestnet = isTestnet;
|
|
21
|
-
const getMaxSendBalance = (gas, gasPrice
|
|
22
|
-
const tokenAccount = (0, index_1.findSubAccountById)(account, transaction?.subAccountId ?? "");
|
|
23
|
-
const fromTokenAccount = tokenAccount && (0, index_1.isTokenAccount)(tokenAccount);
|
|
19
|
+
const getMaxSendBalance = (amount, gas, gasPrice) => {
|
|
24
20
|
const totalGas = gas.multipliedBy(gasPrice);
|
|
25
|
-
return
|
|
26
|
-
? tokenAccount.spendableBalance
|
|
27
|
-
: account.spendableBalance.gt(totalGas)
|
|
28
|
-
? account.spendableBalance.minus(totalGas)
|
|
29
|
-
: new bignumber_js_1.default(0);
|
|
21
|
+
return amount.gt(totalGas) ? amount.minus(totalGas) : new bignumber_js_1.default(0);
|
|
30
22
|
};
|
|
31
23
|
exports.getMaxSendBalance = getMaxSendBalance;
|
|
32
24
|
function normalizeTransactionOptions(options) {
|
|
@@ -71,7 +63,6 @@ const convertFunctionPayloadResponseToInputEntryFunctionData = (payload) => ({
|
|
|
71
63
|
const txsToOps = (info, id, txs) => {
|
|
72
64
|
const { address } = info;
|
|
73
65
|
const ops = [];
|
|
74
|
-
const opsTokens = [];
|
|
75
66
|
txs.forEach(tx => {
|
|
76
67
|
if (tx !== null) {
|
|
77
68
|
const op = (0, exports.getBlankOperation)(tx, id);
|
|
@@ -81,40 +72,22 @@ const txsToOps = (info, id, txs) => {
|
|
|
81
72
|
if (!function_address) {
|
|
82
73
|
return; // skip transaction without functions in payload
|
|
83
74
|
}
|
|
84
|
-
const {
|
|
85
|
-
op.value = calculateAmount(tx.sender, address, amount_in, amount_out);
|
|
75
|
+
const { amount_in, amount_out } = getAptosAmounts(tx, address);
|
|
76
|
+
op.value = calculateAmount(tx.sender, address, op.fee, amount_in, amount_out);
|
|
86
77
|
op.type = compareAddress(tx.sender, address) ? constants_1.DIRECTION.OUT : constants_1.DIRECTION.IN;
|
|
87
78
|
op.senders.push(tx.sender);
|
|
88
|
-
op.hasFailed = !tx.success;
|
|
89
|
-
op.id = (0, operation_1.encodeOperationId)(op.accountId, tx.hash, op.type);
|
|
90
79
|
processRecipients(payload, address, op, function_address);
|
|
91
80
|
if (op.value.isZero()) {
|
|
92
81
|
// skip transaction that result no Aptos change
|
|
93
82
|
op.type = constants_1.DIRECTION.UNKNOWN;
|
|
94
83
|
}
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
else {
|
|
100
|
-
const token = (0, cryptoassets_1.findTokenByAddressInCurrency)(coin_id.toLowerCase(), "aptos");
|
|
101
|
-
if (token !== undefined) {
|
|
102
|
-
op.accountId = (0, index_1.encodeTokenAccountId)(id, token);
|
|
103
|
-
opsTokens.push(op);
|
|
104
|
-
if (op.type === constants_1.DIRECTION.OUT) {
|
|
105
|
-
ops.push({
|
|
106
|
-
...op,
|
|
107
|
-
accountId: (0, index_1.decodeTokenAccountId)(op.accountId).accountId,
|
|
108
|
-
value: op.fee,
|
|
109
|
-
type: "FEES",
|
|
110
|
-
});
|
|
111
|
-
}
|
|
112
|
-
}
|
|
113
|
-
}
|
|
114
|
-
}
|
|
84
|
+
op.hasFailed = !tx.success;
|
|
85
|
+
op.id = (0, operation_1.encodeOperationId)(id, tx.hash, op.type);
|
|
86
|
+
if (op.type !== constants_1.DIRECTION.UNKNOWN)
|
|
87
|
+
ops.push(op);
|
|
115
88
|
}
|
|
116
89
|
});
|
|
117
|
-
return
|
|
90
|
+
return ops;
|
|
118
91
|
};
|
|
119
92
|
exports.txsToOps = txsToOps;
|
|
120
93
|
function compareAddress(addressA, addressB) {
|
|
@@ -132,7 +105,7 @@ function getFunctionAddress(payload) {
|
|
|
132
105
|
exports.getFunctionAddress = getFunctionAddress;
|
|
133
106
|
function processRecipients(payload, address, op, function_address) {
|
|
134
107
|
// get recipients buy 3 groups
|
|
135
|
-
if ((constants_1.
|
|
108
|
+
if ((constants_1.TRANSFER_TYPES.includes(payload.function) ||
|
|
136
109
|
constants_1.DELEGATION_POOL_TYPES.includes(payload.function)) &&
|
|
137
110
|
payload.functionArguments &&
|
|
138
111
|
payload.functionArguments.length > 0 &&
|
|
@@ -140,14 +113,6 @@ function processRecipients(payload, address, op, function_address) {
|
|
|
140
113
|
// 1. Transfer like functions (includes some delegation pool functions)
|
|
141
114
|
op.recipients.push(payload.functionArguments[0].toString());
|
|
142
115
|
}
|
|
143
|
-
else if (constants_1.FA_TRANSFER_TYPES.includes(payload.function) &&
|
|
144
|
-
payload.functionArguments &&
|
|
145
|
-
payload.functionArguments.length > 1 &&
|
|
146
|
-
typeof payload.functionArguments[0] === "object" &&
|
|
147
|
-
typeof payload.functionArguments[1] === "string") {
|
|
148
|
-
// 1. Transfer like functions (includes some delegation pool functions)
|
|
149
|
-
op.recipients.push(payload.functionArguments[1].toString());
|
|
150
|
-
}
|
|
151
116
|
else if (constants_1.BATCH_TRANSFER_TYPES.includes(payload.function) &&
|
|
152
117
|
payload.functionArguments &&
|
|
153
118
|
payload.functionArguments.length > 0 &&
|
|
@@ -167,129 +132,66 @@ function processRecipients(payload, address, op, function_address) {
|
|
|
167
132
|
}
|
|
168
133
|
}
|
|
169
134
|
exports.processRecipients = processRecipients;
|
|
170
|
-
function
|
|
171
|
-
|
|
172
|
-
|
|
173
|
-
|
|
174
|
-
return null;
|
|
175
|
-
}
|
|
176
|
-
const change_event_data = mr.data[event_name];
|
|
177
|
-
if (change_event_data.guid.id.addr !== event.guid.account_address ||
|
|
178
|
-
change_event_data.guid.id.creation_num !== event.guid.creation_number) {
|
|
179
|
-
return null;
|
|
180
|
-
}
|
|
181
|
-
const address = extractAddress(mr.type);
|
|
182
|
-
return address;
|
|
135
|
+
function checkWriteSets(tx, event, event_name) {
|
|
136
|
+
return tx.changes.some(change => {
|
|
137
|
+
return isChangeOfAptos(change, event, event_name);
|
|
138
|
+
});
|
|
183
139
|
}
|
|
184
|
-
|
|
185
|
-
|
|
186
|
-
|
|
187
|
-
if (
|
|
188
|
-
return
|
|
140
|
+
function isChangeOfAptos(writeSetChange, event, event_name) {
|
|
141
|
+
// to validate the event is related to Aptos Tokens we need to find change of type "write_resource"
|
|
142
|
+
// with the same guid as event
|
|
143
|
+
if (writeSetChange.type !== constants_1.WRITE_RESOURCE) {
|
|
144
|
+
return false;
|
|
189
145
|
}
|
|
190
|
-
|
|
191
|
-
|
|
192
|
-
return null;
|
|
146
|
+
if (!("data" in writeSetChange)) {
|
|
147
|
+
return false;
|
|
193
148
|
}
|
|
194
|
-
|
|
195
|
-
|
|
196
|
-
|
|
197
|
-
function getResourceAddress(tx, event, event_name, getAddressProcessor) {
|
|
198
|
-
for (const change of tx.changes) {
|
|
199
|
-
if (isWriteSetChangeWriteResource(change)) {
|
|
200
|
-
const address = getAddressProcessor(change, event, event_name);
|
|
201
|
-
if (address !== null) {
|
|
202
|
-
return address;
|
|
203
|
-
}
|
|
204
|
-
}
|
|
149
|
+
const change_data = writeSetChange.data;
|
|
150
|
+
if (!("type" in change_data)) {
|
|
151
|
+
return false;
|
|
205
152
|
}
|
|
206
|
-
|
|
207
|
-
|
|
208
|
-
|
|
209
|
-
function isWriteSetChangeWriteResource(change) {
|
|
210
|
-
return change.data !== undefined;
|
|
211
|
-
}
|
|
212
|
-
function checkFAOwner(tx, event, user_address) {
|
|
213
|
-
for (const change of tx.changes) {
|
|
214
|
-
if (isWriteSetChangeWriteResource(change)) {
|
|
215
|
-
const storeData = change.data;
|
|
216
|
-
if (change.address == event.data.store &&
|
|
217
|
-
storeData.type == constants_1.APTOS_OBJECT_CORE &&
|
|
218
|
-
storeData.data.owner == user_address) {
|
|
219
|
-
return true;
|
|
220
|
-
}
|
|
221
|
-
}
|
|
153
|
+
const mr = change_data;
|
|
154
|
+
if (mr.type !== constants_1.APTOS_COIN_CHANGE) {
|
|
155
|
+
return false;
|
|
222
156
|
}
|
|
223
|
-
|
|
157
|
+
const change_event_data = mr.data[event_name];
|
|
158
|
+
return (change_event_data.guid.id.addr === event.guid.account_address &&
|
|
159
|
+
change_event_data.guid.id.creation_num === event.guid.creation_number);
|
|
224
160
|
}
|
|
225
|
-
exports.
|
|
226
|
-
function
|
|
227
|
-
let
|
|
228
|
-
let
|
|
229
|
-
let amount_out = (0, bignumber_js_1.default)(0);
|
|
161
|
+
exports.isChangeOfAptos = isChangeOfAptos;
|
|
162
|
+
function getAptosAmounts(tx, address) {
|
|
163
|
+
let amount_in = new bignumber_js_1.default(0);
|
|
164
|
+
let amount_out = new bignumber_js_1.default(0);
|
|
230
165
|
// collect all events related to the address and calculate the overall amounts
|
|
231
166
|
tx.events.forEach(event => {
|
|
232
|
-
|
|
233
|
-
|
|
234
|
-
|
|
235
|
-
|
|
236
|
-
|
|
237
|
-
}
|
|
238
|
-
break;
|
|
239
|
-
case "0x1::coin::DepositEvent":
|
|
240
|
-
if (compareAddress(event.guid.account_address, address)) {
|
|
241
|
-
coin_id = getResourceAddress(tx, event, "deposit_events", getEventCoinAddress);
|
|
242
|
-
amount_in = amount_in.plus(event.data.amount);
|
|
243
|
-
}
|
|
244
|
-
break;
|
|
245
|
-
case "0x1::fungible_asset::Withdraw":
|
|
246
|
-
if (checkFAOwner(tx, event, address)) {
|
|
247
|
-
coin_id = getResourceAddress(tx, event, "withdraw_events", getEventFAAddress);
|
|
248
|
-
amount_out = amount_out.plus(event.data.amount);
|
|
249
|
-
}
|
|
250
|
-
break;
|
|
251
|
-
case "0x1::fungible_asset::Deposit":
|
|
252
|
-
if (checkFAOwner(tx, event, address)) {
|
|
253
|
-
coin_id = getResourceAddress(tx, event, "deposit_events", getEventFAAddress);
|
|
254
|
-
amount_in = amount_in.plus(event.data.amount);
|
|
255
|
-
}
|
|
256
|
-
break;
|
|
257
|
-
case "0x1::transaction_fee::FeeStatement":
|
|
258
|
-
if (tx.sender === address) {
|
|
259
|
-
if (coin_id === null)
|
|
260
|
-
coin_id = constants_1.APTOS_ASSET_ID;
|
|
261
|
-
if (coin_id === constants_1.APTOS_ASSET_ID) {
|
|
262
|
-
const fees = (0, bignumber_js_1.default)(tx.gas_unit_price).times((0, bignumber_js_1.default)(tx.gas_used));
|
|
263
|
-
amount_out = amount_out.plus(fees);
|
|
167
|
+
if (compareAddress(event.guid.account_address, address)) {
|
|
168
|
+
switch (event.type) {
|
|
169
|
+
case "0x1::coin::WithdrawEvent":
|
|
170
|
+
if (checkWriteSets(tx, event, "withdraw_events")) {
|
|
171
|
+
amount_out = amount_out.plus(event.data.amount);
|
|
264
172
|
}
|
|
265
|
-
|
|
266
|
-
|
|
173
|
+
break;
|
|
174
|
+
case "0x1::coin::DepositEvent":
|
|
175
|
+
if (checkWriteSets(tx, event, "deposit_events")) {
|
|
176
|
+
amount_in = amount_in.plus(event.data.amount);
|
|
177
|
+
}
|
|
178
|
+
break;
|
|
179
|
+
}
|
|
267
180
|
}
|
|
268
181
|
});
|
|
269
|
-
return {
|
|
182
|
+
return { amount_in, amount_out };
|
|
270
183
|
}
|
|
271
|
-
exports.
|
|
272
|
-
function calculateAmount(sender, address, amount_in, amount_out) {
|
|
184
|
+
exports.getAptosAmounts = getAptosAmounts;
|
|
185
|
+
function calculateAmount(sender, address, fee, amount_in, amount_out) {
|
|
273
186
|
const is_sender = compareAddress(sender, address);
|
|
187
|
+
// Include fees if our address is the sender
|
|
188
|
+
if (is_sender) {
|
|
189
|
+
amount_out = amount_out.plus(fee);
|
|
190
|
+
}
|
|
274
191
|
// LL negates the amount for SEND transactions
|
|
275
192
|
// to show positive amount on the send transaction (ex: in "cancel" tx, when amount will be returned to our account)
|
|
276
193
|
// we need to make it negative
|
|
277
194
|
return is_sender ? amount_out.minus(amount_in) : amount_in.minus(amount_out);
|
|
278
195
|
}
|
|
279
196
|
exports.calculateAmount = calculateAmount;
|
|
280
|
-
/**
|
|
281
|
-
* Extracts the address from a string like "0x1::coin::CoinStore<address::module::type>"
|
|
282
|
-
* @param {string} str - The input string containing the address.
|
|
283
|
-
* @returns {string | null} - The extracted address or null if not found.
|
|
284
|
-
*/
|
|
285
|
-
function extractAddress(str) {
|
|
286
|
-
const match = str.match(/<([^<>]+)>{1}$/);
|
|
287
|
-
return match ? match[1] : null;
|
|
288
|
-
}
|
|
289
|
-
function getTokenAccount(account, transaction) {
|
|
290
|
-
const tokenAccount = (0, index_1.findSubAccountById)(account, transaction.subAccountId ?? "");
|
|
291
|
-
const fromTokenAccount = tokenAccount && (0, index_1.isTokenAccount)(tokenAccount);
|
|
292
|
-
return fromTokenAccount ? tokenAccount : undefined;
|
|
293
|
-
}
|
|
294
|
-
exports.getTokenAccount = getTokenAccount;
|
|
295
197
|
//# sourceMappingURL=logic.js.map
|
package/lib/bridge/logic.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"logic.js","sourceRoot":"","sources":["../../src/bridge/logic.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"logic.js","sourceRoot":"","sources":["../../src/bridge/logic.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"prepareTransaction.d.ts","sourceRoot":"","sources":["../../src/bridge/prepareTransaction.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,sBAAsB,CAAC;
|
|
1
|
+
{"version":3,"file":"prepareTransaction.d.ts","sourceRoot":"","sources":["../../src/bridge/prepareTransaction.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,sBAAsB,CAAC;AAKpD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,UAAU,CAAC;AAG5C,QAAA,MAAM,kBAAkB,YACb,OAAO,eACH,WAAW,KACvB,QAAQ,WAAW,CAyCrB,CAAC;AAEF,eAAe,kBAAkB,CAAC"}
|
|
@@ -22,12 +22,12 @@ const prepareTransaction = async (account, transaction) => {
|
|
|
22
22
|
const aptosClient = new api_1.AptosAPI(account.currency.id);
|
|
23
23
|
if (transaction.useAllAmount) {
|
|
24
24
|
// we will use this amount in simulation, to estimate gas
|
|
25
|
-
transaction.amount = (0, logic_1.getMaxSendBalance)(new bignumber_js_1.default(logic_1.DEFAULT_GAS), new bignumber_js_1.default(logic_1.DEFAULT_GAS_PRICE)
|
|
25
|
+
transaction.amount = (0, logic_1.getMaxSendBalance)(account.spendableBalance, new bignumber_js_1.default(logic_1.DEFAULT_GAS), new bignumber_js_1.default(logic_1.DEFAULT_GAS_PRICE));
|
|
26
26
|
}
|
|
27
27
|
const { fees, estimate, errors } = await (0, getFeesForTransaction_1.getEstimatedGas)(account, transaction, aptosClient);
|
|
28
28
|
if (transaction.useAllAmount) {
|
|
29
29
|
// correct the transaction amount according to estimated fees
|
|
30
|
-
transaction.amount = (0, logic_1.getMaxSendBalance)((0, bignumber_js_1.default)(estimate.maxGasAmount), (0, bignumber_js_1.default)(estimate.gasUnitPrice)
|
|
30
|
+
transaction.amount = (0, logic_1.getMaxSendBalance)(account.spendableBalance, (0, bignumber_js_1.default)(estimate.maxGasAmount), (0, bignumber_js_1.default)(estimate.gasUnitPrice));
|
|
31
31
|
}
|
|
32
32
|
transaction.fees = fees;
|
|
33
33
|
transaction.options = estimate;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"prepareTransaction.js","sourceRoot":"","sources":["../../src/bridge/prepareTransaction.ts"],"names":[],"mappings":";;;;;AACA,gEAAqC;
|
|
1
|
+
{"version":3,"file":"prepareTransaction.js","sourceRoot":"","sources":["../../src/bridge/prepareTransaction.ts"],"names":[],"mappings":";;;;;AACA,gEAAqC;AAErC,gCAAkC;AAClC,mEAA0D;AAE1D,mCAA4E;AAE5E,MAAM,kBAAkB,GAAG,KAAK,EAC9B,OAAgB,EAChB,WAAwB,EACF,EAAE;IACxB,IAAI,CAAC,WAAW,CAAC,SAAS,EAAE,CAAC;QAC3B,OAAO,WAAW,CAAC;IACrB,CAAC;IAED,iFAAiF;IACjF,gGAAgG;IAChG,IAAI,WAAW,CAAC,MAAM,CAAC,MAAM,EAAE,IAAI,CAAC,WAAW,CAAC,YAAY,EAAE,CAAC;QAC7D,OAAO;YACL,GAAG,WAAW;YACd,IAAI,EAAE,IAAA,sBAAS,EAAC,CAAC,CAAC;SACnB,CAAC;IACJ,CAAC;IAED,MAAM,WAAW,GAAG,IAAI,cAAQ,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC;IAEtD,IAAI,WAAW,CAAC,YAAY,EAAE,CAAC;QAC7B,yDAAyD;QACzD,WAAW,CAAC,MAAM,GAAG,IAAA,yBAAiB,EACpC,OAAO,CAAC,gBAAgB,EACxB,IAAI,sBAAS,CAAC,mBAAW,CAAC,EAC1B,IAAI,sBAAS,CAAC,yBAAiB,CAAC,CACjC,CAAC;IACJ,CAAC;IAED,MAAM,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,EAAE,GAAG,MAAM,IAAA,uCAAe,EAAC,OAAO,EAAE,WAAW,EAAE,WAAW,CAAC,CAAC;IAE5F,IAAI,WAAW,CAAC,YAAY,EAAE,CAAC;QAC7B,6DAA6D;QAC7D,WAAW,CAAC,MAAM,GAAG,IAAA,yBAAiB,EACpC,OAAO,CAAC,gBAAgB,EACxB,IAAA,sBAAS,EAAC,QAAQ,CAAC,YAAY,CAAC,EAChC,IAAA,sBAAS,EAAC,QAAQ,CAAC,YAAY,CAAC,CACjC,CAAC;IACJ,CAAC;IAED,WAAW,CAAC,IAAI,GAAG,IAAI,CAAC;IACxB,WAAW,CAAC,OAAO,GAAG,QAAQ,CAAC;IAC/B,WAAW,CAAC,MAAM,GAAG,MAAM,CAAC;IAE5B,OAAO,WAAW,CAAC;AACrB,CAAC,CAAC;AAEF,kBAAe,kBAAkB,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"signOperation.d.ts","sourceRoot":"","sources":["../../src/bridge/signOperation.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,WAAW,EAAE,MAAM,UAAU,CAAC;AAK1D,OAAO,KAAK,EAAE,OAAO,EAAE,aAAa,EAA4B,MAAM,sBAAsB,CAAC;AAG7F,OAAO,EAAE,aAAa,EAAE,MAAM,iCAAiC,CAAC;AAChE,OAAO,EAAE,WAAW,EAAE,MAAM,UAAU,CAAC;
|
|
1
|
+
{"version":3,"file":"signOperation.d.ts","sourceRoot":"","sources":["../../src/bridge/signOperation.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,WAAW,EAAE,MAAM,UAAU,CAAC;AAK1D,OAAO,KAAK,EAAE,OAAO,EAAE,aAAa,EAA4B,MAAM,sBAAsB,CAAC;AAG7F,OAAO,EAAE,aAAa,EAAE,MAAM,iCAAiC,CAAC;AAChE,OAAO,EAAE,WAAW,EAAE,MAAM,UAAU,CAAC;AAGvC,eAAO,MAAM,UAAU,MAAO,OAAO;;;CAGnC,CAAC;AAEH,QAAA,MAAM,kBAAkB,kBAEL,cAAc,WAAW,CAAC,KACxC,cAAc,WAAW,EAAE,YAAY,CAAC,CAAC,eAAe,CA2DvD,CAAC;AAEP,eAAe,kBAAkB,CAAC"}
|
|
@@ -10,7 +10,6 @@ const buildTransaction_1 = __importDefault(require("./buildTransaction"));
|
|
|
10
10
|
const bignumber_js_1 = __importDefault(require("bignumber.js"));
|
|
11
11
|
const api_1 = require("../api");
|
|
12
12
|
const network_1 = require("../network");
|
|
13
|
-
const helpers_1 = require("@ledgerhq/coin-framework/account/helpers");
|
|
14
13
|
const getAddress = (a) => ({
|
|
15
14
|
address: a.freshAddress,
|
|
16
15
|
derivationPath: a.freshAddressPath,
|
|
@@ -35,13 +34,14 @@ const buildSignOperation = (signerContext) => ({ account, transaction, deviceId
|
|
|
35
34
|
senders.push(account.freshAddress);
|
|
36
35
|
recipients.push(transaction.recipient);
|
|
37
36
|
}
|
|
38
|
-
const subAccount = !!transaction.subAccountId && (0, helpers_1.findSubAccountById)(account, transaction.subAccountId);
|
|
39
37
|
// build optimistic operation
|
|
40
38
|
const operation = {
|
|
41
39
|
id: (0, operation_1.encodeOperationId)(accountId, hash, type),
|
|
42
40
|
hash,
|
|
43
41
|
type,
|
|
44
|
-
value:
|
|
42
|
+
value: transaction.useAllAmount
|
|
43
|
+
? account.balance.minus(fee)
|
|
44
|
+
: transaction.amount.plus(fee),
|
|
45
45
|
fee,
|
|
46
46
|
extra,
|
|
47
47
|
blockHash: null,
|
|
@@ -51,20 +51,6 @@ const buildSignOperation = (signerContext) => ({ account, transaction, deviceId
|
|
|
51
51
|
accountId,
|
|
52
52
|
date: new Date(),
|
|
53
53
|
transactionSequenceNumber: Number(rawTx.sequence_number),
|
|
54
|
-
subOperations: subAccount
|
|
55
|
-
? [
|
|
56
|
-
{
|
|
57
|
-
id: (0, operation_1.encodeOperationId)(subAccount.id, "", "OUT"),
|
|
58
|
-
type: "OUT",
|
|
59
|
-
accountId: transaction.subAccountId,
|
|
60
|
-
senders: [account.freshAddress],
|
|
61
|
-
recipients: [transaction.recipient],
|
|
62
|
-
value: transaction.amount,
|
|
63
|
-
fee,
|
|
64
|
-
date: new Date(),
|
|
65
|
-
},
|
|
66
|
-
]
|
|
67
|
-
: [],
|
|
68
54
|
};
|
|
69
55
|
o.next({
|
|
70
56
|
type: "signed",
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"signOperation.js","sourceRoot":"","sources":["../../src/bridge/signOperation.ts"],"names":[],"mappings":";;;;;;AACA,+BAAkC;AAClC,kEAAuE;AACvE,0EAAkD;AAClD,gEAAqC;AAErC,gCAAkC;AAIlC,wCAA6C;
|
|
1
|
+
{"version":3,"file":"signOperation.js","sourceRoot":"","sources":["../../src/bridge/signOperation.ts"],"names":[],"mappings":";;;;;;AACA,+BAAkC;AAClC,kEAAuE;AACvE,0EAAkD;AAClD,gEAAqC;AAErC,gCAAkC;AAIlC,wCAA6C;AAEtC,MAAM,UAAU,GAAG,CAAC,CAAU,EAAE,EAAE,CAAC,CAAC;IACzC,OAAO,EAAE,CAAC,CAAC,YAAY;IACvB,cAAc,EAAE,CAAC,CAAC,gBAAgB;CACnC,CAAC,CAAC;AAHU,QAAA,UAAU,cAGpB;AAEH,MAAM,kBAAkB,GACtB,CACE,aAAyC,EACkB,EAAE,CAC/D,CAAC,EAAE,OAAO,EAAE,WAAW,EAAE,QAAQ,EAAE,EAAE,EAAE,CACrC,IAAI,iBAAU,CAAC,CAAC,CAAC,EAAE;IACjB,KAAK,UAAU,IAAI;QACjB,CAAC,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,4BAA4B,EAAE,CAAC,CAAC;QAE/C,MAAM,WAAW,GAAG,IAAI,cAAQ,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC;QAEtD,MAAM,KAAK,GAAG,MAAM,IAAA,0BAAgB,EAAC,OAAO,EAAE,WAAW,EAAE,WAAW,CAAC,CAAC;QACxE,MAAM,OAAO,GAAG,MAAM,IAAA,yBAAe,EAAC,aAAa,EAAE,OAAO,EAAE,QAAQ,EAAE,KAAK,CAAC,CAAC;QAC/E,MAAM,SAAS,GAAG,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;QAEvD,CAAC,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,0BAA0B,EAAE,CAAC,CAAC;QAE7C,MAAM,SAAS,GAAG,OAAO,CAAC,EAAE,CAAC;QAC7B,MAAM,IAAI,GAAG,EAAE,CAAC;QAChB,MAAM,IAAI,GAAkB,KAAK,CAAC;QAClC,MAAM,GAAG,GAAG,WAAW,CAAC,IAAI,IAAI,IAAI,sBAAS,CAAC,CAAC,CAAC,CAAC;QACjD,MAAM,KAAK,GAAG,EAAE,CAAC;QACjB,MAAM,OAAO,GAAa,EAAE,CAAC;QAC7B,MAAM,UAAU,GAAa,EAAE,CAAC;QAEhC,IAAI,WAAW,CAAC,IAAI,KAAK,MAAM,EAAE,CAAC;YAChC,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,YAAY,CAAC,CAAC;YACnC,UAAU,CAAC,IAAI,CAAC,WAAW,CAAC,SAAS,CAAC,CAAC;QACzC,CAAC;QAED,6BAA6B;QAC7B,MAAM,SAAS,GAAc;YAC3B,EAAE,EAAE,IAAA,6BAAiB,EAAC,SAAS,EAAE,IAAI,EAAE,IAAI,CAAC;YAC5C,IAAI;YACJ,IAAI;YACJ,KAAK,EAAE,WAAW,CAAC,YAAY;gBAC7B,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC;gBAC5B,CAAC,CAAC,WAAW,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC;YAChC,GAAG;YACH,KAAK;YACL,SAAS,EAAE,IAAI;YACf,WAAW,EAAE,IAAI;YACjB,OAAO;YACP,UAAU;YACV,SAAS;YACT,IAAI,EAAE,IAAI,IAAI,EAAE;YAChB,yBAAyB,EAAE,MAAM,CAAC,KAAK,CAAC,eAAe,CAAC;SACzD,CAAC;QAEF,CAAC,CAAC,IAAI,CAAC;YACL,IAAI,EAAE,QAAQ;YACd,eAAe,EAAE;gBACf,SAAS;gBACT,SAAS;aACV;SACF,CAAC,CAAC;IACL,CAAC;IAED,IAAI,EAAE,CAAC,IAAI,CACT,GAAG,EAAE,CAAC,CAAC,CAAC,QAAQ,EAAE,EAClB,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAChB,CAAC;AACJ,CAAC,CAAC,CAAC;AAEP,kBAAe,kBAAkB,CAAC"}
|
|
@@ -1,18 +1,3 @@
|
|
|
1
1
|
import type { GetAccountShape } from "@ledgerhq/coin-framework/bridge/jsHelpers";
|
|
2
|
-
import { Account, Operation, TokenAccount } from "@ledgerhq/types-live";
|
|
3
|
-
import { CryptoCurrency, TokenCurrency } from "@ledgerhq/types-cryptoassets";
|
|
4
|
-
import { AccountShapeInfo } from "@ledgerhq/coin-framework/bridge/jsHelpers";
|
|
5
|
-
/**
|
|
6
|
-
* In charge of smartly merging sub accounts while maintaining references as much as possible
|
|
7
|
-
*/
|
|
8
|
-
export declare const mergeSubAccounts: (initialAccount: Account | undefined, newSubAccounts: TokenAccount[]) => Array<TokenAccount>;
|
|
9
|
-
/**
|
|
10
|
-
* Fetch the balance for a token and creates a TokenAccount based on this and the provided operations
|
|
11
|
-
*/
|
|
12
|
-
export declare const getSubAccountShape: (currency: CryptoCurrency, address: string, parentId: string, token: TokenCurrency, operations: Operation[]) => Promise<TokenAccount>;
|
|
13
|
-
/**
|
|
14
|
-
* Getting all token related operations in order to provide TokenAccounts
|
|
15
|
-
*/
|
|
16
|
-
export declare const getSubAccounts: (infos: AccountShapeInfo<Account>, address: string, accountId: string, lastTokenOperations: Operation[]) => Promise<TokenAccount[]>;
|
|
17
2
|
export declare const getAccountShape: GetAccountShape;
|
|
18
3
|
//# sourceMappingURL=synchronisation.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"synchronisation.d.ts","sourceRoot":"","sources":["../../src/bridge/synchronisation.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"synchronisation.d.ts","sourceRoot":"","sources":["../../src/bridge/synchronisation.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,2CAA2C,CAAC;AAMjF,eAAO,MAAM,eAAe,EAAE,eA0C7B,CAAC"}
|