@ledgerhq/coin-tron 0.2.2-nightly.1 → 0.2.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.
- package/.turbo/turbo-build.log +2 -2
- package/CHANGELOG.md +10 -7
- package/lib/bridge/broadcast.js +12 -3
- package/lib/bridge/broadcast.js.map +1 -1
- package/lib/bridge/estimateMaxSpendable.js +12 -9
- package/lib/bridge/estimateMaxSpendable.js.map +1 -1
- package/lib/bridge/getEstimateFees.js +17 -7
- package/lib/bridge/getEstimateFees.js.map +1 -1
- package/lib/bridge/getTransactionStatus.js +26 -18
- package/lib/bridge/getTransactionStatus.js.map +1 -1
- package/lib/bridge/preload.js +12 -3
- package/lib/bridge/preload.js.map +1 -1
- package/lib/bridge/prepareTransaction.js +13 -4
- package/lib/bridge/prepareTransaction.js.map +1 -1
- package/lib/bridge/serialization.js +8 -8
- package/lib/bridge/serialization.js.map +1 -1
- package/lib/bridge/signOperation.js +53 -39
- package/lib/bridge/signOperation.js.map +1 -1
- package/lib/bridge/synchronization.integ.test.js +15 -10
- package/lib/bridge/synchronization.integ.test.js.map +1 -1
- package/lib/bridge/synchronization.js +23 -25
- package/lib/bridge/synchronization.js.map +1 -1
- package/lib/bridge/transaction.js +4 -20
- package/lib/bridge/transaction.js.map +1 -1
- package/lib/logic/utils.test.js +10 -21
- package/lib/logic/utils.test.js.map +1 -1
- package/lib/network/format.js +5 -4
- package/lib/network/format.js.map +1 -1
- package/lib/network/index.integ.test.js +12 -3
- package/lib/network/index.integ.test.js.map +1 -1
- package/lib/network/index.js +321 -296
- package/lib/network/index.js.map +1 -1
- package/lib/network/index.test.js +14 -4
- package/lib/network/index.test.js.map +1 -1
- package/lib/signer/getAddress.js +13 -4
- package/lib/signer/getAddress.js.map +1 -1
- package/lib/test/bridgeDatasetTest.js +7 -33
- package/lib/test/bridgeDatasetTest.js.map +1 -1
- package/lib/test/cli.js +2 -7
- package/lib/test/cli.js.map +1 -1
- package/lib-es/bridge/broadcast.js +12 -3
- package/lib-es/bridge/broadcast.js.map +1 -1
- package/lib-es/bridge/estimateMaxSpendable.js +12 -9
- package/lib-es/bridge/estimateMaxSpendable.js.map +1 -1
- package/lib-es/bridge/getEstimateFees.js +17 -7
- package/lib-es/bridge/getEstimateFees.js.map +1 -1
- package/lib-es/bridge/getTransactionStatus.js +26 -18
- package/lib-es/bridge/getTransactionStatus.js.map +1 -1
- package/lib-es/bridge/preload.js +12 -3
- package/lib-es/bridge/preload.js.map +1 -1
- package/lib-es/bridge/prepareTransaction.js +13 -4
- package/lib-es/bridge/prepareTransaction.js.map +1 -1
- package/lib-es/bridge/serialization.js +8 -8
- package/lib-es/bridge/serialization.js.map +1 -1
- package/lib-es/bridge/signOperation.js +53 -39
- package/lib-es/bridge/signOperation.js.map +1 -1
- package/lib-es/bridge/synchronization.integ.test.js +15 -10
- package/lib-es/bridge/synchronization.integ.test.js.map +1 -1
- package/lib-es/bridge/synchronization.js +23 -25
- package/lib-es/bridge/synchronization.js.map +1 -1
- package/lib-es/bridge/transaction.js +4 -20
- package/lib-es/bridge/transaction.js.map +1 -1
- package/lib-es/logic/utils.test.js +10 -21
- package/lib-es/logic/utils.test.js.map +1 -1
- package/lib-es/network/format.js +5 -4
- package/lib-es/network/format.js.map +1 -1
- package/lib-es/network/index.integ.test.js +12 -3
- package/lib-es/network/index.integ.test.js.map +1 -1
- package/lib-es/network/index.js +321 -296
- package/lib-es/network/index.js.map +1 -1
- package/lib-es/network/index.test.js +14 -4
- package/lib-es/network/index.test.js.map +1 -1
- package/lib-es/signer/getAddress.js +13 -4
- package/lib-es/signer/getAddress.js.map +1 -1
- package/lib-es/test/bridgeDatasetTest.js +7 -33
- package/lib-es/test/bridgeDatasetTest.js.map +1 -1
- package/lib-es/test/cli.js +2 -7
- package/lib-es/test/cli.js.map +1 -1
- package/package.json +6 -6
- package/tsconfig.json +1 -0
package/.turbo/turbo-build.log
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
1
|
|
|
2
|
-
> @ledgerhq/coin-tron@0.2.2
|
|
3
|
-
> tsc && tsc -m
|
|
2
|
+
> @ledgerhq/coin-tron@0.2.2 build /home/runner/work/ledger-live/ledger-live/libs/coin-modules/coin-tron
|
|
3
|
+
> tsc && tsc -m ES6 --outDir lib-es
|
|
4
4
|
|
package/CHANGELOG.md
CHANGED
|
@@ -1,19 +1,22 @@
|
|
|
1
1
|
# @ledgerhq/coin-tron
|
|
2
2
|
|
|
3
|
-
## 0.2.2
|
|
3
|
+
## 0.2.2
|
|
4
4
|
|
|
5
5
|
### Patch Changes
|
|
6
6
|
|
|
7
|
-
- Updated dependencies [[`
|
|
8
|
-
- @ledgerhq/
|
|
7
|
+
- Updated dependencies [[`11c3b8b`](https://github.com/LedgerHQ/ledger-live/commit/11c3b8b27bc4fa996757c58ec7f5beac90c7a425), [`a231c50`](https://github.com/LedgerHQ/ledger-live/commit/a231c5084a24acb0e49efeb3c7ab1f5dbc6fd94b), [`41b153a`](https://github.com/LedgerHQ/ledger-live/commit/41b153adb98ce8de3336563694204d83905dba0e), [`d15a240`](https://github.com/LedgerHQ/ledger-live/commit/d15a2402bbd7f39353059c1cc2f74b9ac0876d3d), [`9534f17`](https://github.com/LedgerHQ/ledger-live/commit/9534f17247e1472b0fee8b993a83264f4e4ab363), [`1524353`](https://github.com/LedgerHQ/ledger-live/commit/152435384370b729183b7898308cbc1f8b61e451)]:
|
|
8
|
+
- @ledgerhq/types-live@6.59.0
|
|
9
|
+
- @ledgerhq/cryptoassets@13.10.0
|
|
10
|
+
- @ledgerhq/coin-framework@0.25.0
|
|
9
11
|
|
|
10
|
-
## 0.2.2-
|
|
12
|
+
## 0.2.2-next.0
|
|
11
13
|
|
|
12
14
|
### Patch Changes
|
|
13
15
|
|
|
14
|
-
- Updated dependencies [[`9534f17`](https://github.com/LedgerHQ/ledger-live/commit/9534f17247e1472b0fee8b993a83264f4e4ab363)]:
|
|
15
|
-
- @ledgerhq/
|
|
16
|
-
- @ledgerhq/
|
|
16
|
+
- Updated dependencies [[`11c3b8b`](https://github.com/LedgerHQ/ledger-live/commit/11c3b8b27bc4fa996757c58ec7f5beac90c7a425), [`a231c50`](https://github.com/LedgerHQ/ledger-live/commit/a231c5084a24acb0e49efeb3c7ab1f5dbc6fd94b), [`41b153a`](https://github.com/LedgerHQ/ledger-live/commit/41b153adb98ce8de3336563694204d83905dba0e), [`d15a240`](https://github.com/LedgerHQ/ledger-live/commit/d15a2402bbd7f39353059c1cc2f74b9ac0876d3d), [`9534f17`](https://github.com/LedgerHQ/ledger-live/commit/9534f17247e1472b0fee8b993a83264f4e4ab363), [`1524353`](https://github.com/LedgerHQ/ledger-live/commit/152435384370b729183b7898308cbc1f8b61e451)]:
|
|
17
|
+
- @ledgerhq/types-live@6.59.0-next.0
|
|
18
|
+
- @ledgerhq/cryptoassets@13.10.0-next.0
|
|
19
|
+
- @ledgerhq/coin-framework@0.25.0-next.0
|
|
17
20
|
|
|
18
21
|
## 0.2.1
|
|
19
22
|
|
package/lib/bridge/broadcast.js
CHANGED
|
@@ -1,17 +1,26 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
+
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
3
|
+
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
4
|
+
return new (P || (P = Promise))(function (resolve, reject) {
|
|
5
|
+
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
6
|
+
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
7
|
+
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
8
|
+
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
9
|
+
});
|
|
10
|
+
};
|
|
2
11
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
12
|
const network_1 = require("../network");
|
|
4
|
-
const broadcast =
|
|
13
|
+
const broadcast = (_a) => __awaiter(void 0, [_a], void 0, function* ({ signedOperation: { signature, operation, rawData }, }) {
|
|
5
14
|
const transaction = {
|
|
6
15
|
raw_data: rawData,
|
|
7
16
|
txID: operation.hash,
|
|
8
17
|
signature: [signature],
|
|
9
18
|
};
|
|
10
|
-
const submittedTransaction =
|
|
19
|
+
const submittedTransaction = yield (0, network_1.broadcastTron)(transaction);
|
|
11
20
|
if (submittedTransaction.result !== true) {
|
|
12
21
|
throw new Error(submittedTransaction.resultMessage);
|
|
13
22
|
}
|
|
14
23
|
return operation;
|
|
15
|
-
};
|
|
24
|
+
});
|
|
16
25
|
exports.default = broadcast;
|
|
17
26
|
//# sourceMappingURL=broadcast.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"broadcast.js","sourceRoot":"","sources":["../../src/bridge/broadcast.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"broadcast.js","sourceRoot":"","sources":["../../src/bridge/broadcast.ts"],"names":[],"mappings":";;;;;;;;;;;AACA,wCAA2C;AAE3C,MAAM,SAAS,GAAG,KAKK,EAAE,4CALA,EACvB,eAAe,EAAE,EAAE,SAAS,EAAE,SAAS,EAAE,OAAO,EAAE,GAInD;IACC,MAAM,WAAW,GAAG;QAClB,QAAQ,EAAE,OAAO;QACjB,IAAI,EAAE,SAAS,CAAC,IAAI;QACpB,SAAS,EAAE,CAAC,SAAS,CAAC;KACvB,CAAC;IACF,MAAM,oBAAoB,GAAG,MAAM,IAAA,uBAAa,EAAC,WAAW,CAAC,CAAC;IAE9D,IAAI,oBAAoB,CAAC,MAAM,KAAK,IAAI,EAAE,CAAC;QACzC,MAAM,IAAI,KAAK,CAAC,oBAAoB,CAAC,aAAa,CAAC,CAAC;IACtD,CAAC;IAED,OAAO,SAAS,CAAC;AACnB,CAAC,CAAA,CAAC;AAEF,kBAAe,SAAS,CAAC"}
|
|
@@ -1,4 +1,13 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
+
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
3
|
+
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
4
|
+
return new (P || (P = Promise))(function (resolve, reject) {
|
|
5
|
+
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
6
|
+
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
7
|
+
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
8
|
+
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
9
|
+
});
|
|
10
|
+
};
|
|
2
11
|
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
12
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
13
|
};
|
|
@@ -7,18 +16,12 @@ const bignumber_js_1 = __importDefault(require("bignumber.js"));
|
|
|
7
16
|
const account_1 = require("@ledgerhq/coin-framework/account");
|
|
8
17
|
const createTransaction_1 = __importDefault(require("./createTransaction"));
|
|
9
18
|
const getEstimateFees_1 = __importDefault(require("./getEstimateFees"));
|
|
10
|
-
const estimateMaxSpendable =
|
|
19
|
+
const estimateMaxSpendable = (_a) => __awaiter(void 0, [_a], void 0, function* ({ account, parentAccount, transaction }) {
|
|
11
20
|
const mainAccount = (0, account_1.getMainAccount)(account, parentAccount);
|
|
12
|
-
const fees =
|
|
13
|
-
...(0, createTransaction_1.default)(),
|
|
14
|
-
subAccountId: account.type === "Account" ? null : account.id,
|
|
15
|
-
...transaction,
|
|
16
|
-
recipient: transaction?.recipient || "0x0000000000000000000000000000000000000000",
|
|
17
|
-
amount: new bignumber_js_1.default(0),
|
|
18
|
-
}, account.type === "TokenAccount" ? account : undefined);
|
|
21
|
+
const fees = yield (0, getEstimateFees_1.default)(mainAccount, Object.assign(Object.assign(Object.assign(Object.assign({}, (0, createTransaction_1.default)()), { subAccountId: account.type === "Account" ? null : account.id }), transaction), { recipient: (transaction === null || transaction === void 0 ? void 0 : transaction.recipient) || "0x0000000000000000000000000000000000000000", amount: new bignumber_js_1.default(0) }), account.type === "TokenAccount" ? account : undefined);
|
|
19
22
|
return account.type === "Account"
|
|
20
23
|
? bignumber_js_1.default.max(0, account.spendableBalance.minus(fees))
|
|
21
24
|
: account.balance;
|
|
22
|
-
};
|
|
25
|
+
});
|
|
23
26
|
exports.default = estimateMaxSpendable;
|
|
24
27
|
//# sourceMappingURL=estimateMaxSpendable.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"estimateMaxSpendable.js","sourceRoot":"","sources":["../../src/bridge/estimateMaxSpendable.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"estimateMaxSpendable.js","sourceRoot":"","sources":["../../src/bridge/estimateMaxSpendable.ts"],"names":[],"mappings":";;;;;;;;;;;;;;AAAA,gEAAqC;AACrC,8DAAkE;AAGlE,4EAAoD;AACpD,wEAAiD;AAEjD,MAAM,oBAAoB,GAGE,KAAoE,EAAE,4CAA/D,EAAE,OAAO,EAAE,aAAa,EAAE,WAAW,EAAE;IACxE,MAAM,WAAW,GAAG,IAAA,wBAAc,EAAC,OAAO,EAAE,aAAa,CAAC,CAAC;IAC3D,MAAM,IAAI,GAAG,MAAM,IAAA,yBAAgB,EACjC,WAAW,8DAEN,IAAA,2BAAiB,GAAE,KACtB,YAAY,EAAE,OAAO,CAAC,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,EAAE,KACzD,WAAW,KACd,SAAS,EAAE,CAAA,WAAW,aAAX,WAAW,uBAAX,WAAW,CAAE,SAAS,KAAI,4CAA4C,EACjF,MAAM,EAAE,IAAI,sBAAS,CAAC,CAAC,CAAC,KAE1B,OAAO,CAAC,IAAI,KAAK,cAAc,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,SAAS,CACtD,CAAC;IACF,OAAO,OAAO,CAAC,IAAI,KAAK,SAAS;QAC/B,CAAC,CAAC,sBAAS,CAAC,GAAG,CAAC,CAAC,EAAE,OAAO,CAAC,gBAAgB,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;QACxD,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC;AACtB,CAAC,CAAA,CAAC;AAEF,kBAAe,oBAAoB,CAAC"}
|
|
@@ -1,4 +1,13 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
+
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
3
|
+
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
4
|
+
return new (P || (P = Promise))(function (resolve, reject) {
|
|
5
|
+
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
6
|
+
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
7
|
+
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
8
|
+
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
9
|
+
});
|
|
10
|
+
};
|
|
2
11
|
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
12
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
13
|
};
|
|
@@ -21,13 +30,14 @@ const getFeesFromBandwidth = (account, transaction) => {
|
|
|
21
30
|
return new bignumber_js_1.default(0); // no fee
|
|
22
31
|
};
|
|
23
32
|
// Special case: If activated an account, cost around 0.1 TRX
|
|
24
|
-
const getFeesFromAccountActivation =
|
|
25
|
-
|
|
33
|
+
const getFeesFromAccountActivation = (account, transaction, tokenAccount) => __awaiter(void 0, void 0, void 0, function* () {
|
|
34
|
+
var _a;
|
|
35
|
+
const [recipientAccount] = yield (0, network_1.fetchTronAccount)(transaction.recipient);
|
|
26
36
|
const { gainedUsed, gainedLimit } = (0, utils_1.extractBandwidthInfo)(transaction.networkInfo);
|
|
27
37
|
const available = gainedLimit.minus(gainedUsed);
|
|
28
38
|
const estimatedBandwidthCost = (0, utils_1.getEstimatedBlockSize)(account, transaction);
|
|
29
39
|
const hasTRC20 = Boolean(tokenAccount &&
|
|
30
|
-
recipientAccount
|
|
40
|
+
((_a = recipientAccount === null || recipientAccount === void 0 ? void 0 : recipientAccount.trc20) === null || _a === void 0 ? void 0 : _a.some(trc20 => tokenAccount.token.contractAddress in trc20)));
|
|
31
41
|
if (!recipientAccount && !hasTRC20 && available.lt(estimatedBandwidthCost)) {
|
|
32
42
|
// if we have a token account but the recipient is either not active or the account does not have a trc20 balance for the given token.
|
|
33
43
|
if (tokenAccount && tokenAccount.token.tokenType === "trc20") {
|
|
@@ -43,16 +53,16 @@ const getFeesFromAccountActivation = async (account, transaction, tokenAccount)
|
|
|
43
53
|
return constants_1.STANDARD_FEES_TRC_20; // cost is 13.3959 TRX
|
|
44
54
|
}
|
|
45
55
|
return new bignumber_js_1.default(0); // no fee
|
|
46
|
-
};
|
|
47
|
-
const getEstimatedFees =
|
|
56
|
+
});
|
|
57
|
+
const getEstimatedFees = (account, transaction, tokenAccount) => __awaiter(void 0, void 0, void 0, function* () {
|
|
48
58
|
const feesFromAccountActivation = transaction.mode === "send"
|
|
49
|
-
?
|
|
59
|
+
? yield getFeesFromAccountActivation(account, transaction, tokenAccount)
|
|
50
60
|
: new bignumber_js_1.default(0);
|
|
51
61
|
if (feesFromAccountActivation.gt(0)) {
|
|
52
62
|
return feesFromAccountActivation;
|
|
53
63
|
}
|
|
54
64
|
const feesFromBandwidth = getFeesFromBandwidth(account, transaction);
|
|
55
65
|
return feesFromBandwidth;
|
|
56
|
-
};
|
|
66
|
+
});
|
|
57
67
|
exports.default = getEstimatedFees;
|
|
58
68
|
//# sourceMappingURL=getEstimateFees.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"getEstimateFees.js","sourceRoot":"","sources":["../../src/bridge/getEstimateFees.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"getEstimateFees.js","sourceRoot":"","sources":["../../src/bridge/getEstimateFees.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,4 +1,13 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
+
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
3
|
+
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
4
|
+
return new (P || (P = Promise))(function (resolve, reject) {
|
|
5
|
+
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
6
|
+
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
7
|
+
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
8
|
+
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
9
|
+
});
|
|
10
|
+
};
|
|
2
11
|
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
12
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
13
|
};
|
|
@@ -12,7 +21,8 @@ const constants_1 = require("../logic/constants");
|
|
|
12
21
|
const network_1 = require("../network");
|
|
13
22
|
const errors_2 = require("../types/errors");
|
|
14
23
|
const getEstimateFees_1 = __importDefault(require("./getEstimateFees"));
|
|
15
|
-
const getTransactionStatus =
|
|
24
|
+
const getTransactionStatus = (acc, transaction) => __awaiter(void 0, void 0, void 0, function* () {
|
|
25
|
+
var _a, _b, _c, _d;
|
|
16
26
|
const errors = {};
|
|
17
27
|
const warnings = {};
|
|
18
28
|
const { family, mode, recipient, resource, votes, useAllAmount = false } = transaction;
|
|
@@ -20,7 +30,7 @@ const getTransactionStatus = async (acc, transaction) => {
|
|
|
20
30
|
? null
|
|
21
31
|
: acc.subAccounts && acc.subAccounts.find(ta => ta.id === transaction.subAccountId);
|
|
22
32
|
const account = tokenAccount || acc;
|
|
23
|
-
const isContractInteraction = (
|
|
33
|
+
const isContractInteraction = (yield (0, network_1.fetchTronContract)(tokenAccount ? tokenAccount.token.contractAddress : recipient)) !==
|
|
24
34
|
undefined;
|
|
25
35
|
if (mode === "send" && !recipient) {
|
|
26
36
|
errors.recipient = new errors_1.RecipientRequired();
|
|
@@ -29,7 +39,7 @@ const getTransactionStatus = async (acc, transaction) => {
|
|
|
29
39
|
if (recipient === acc.freshAddress) {
|
|
30
40
|
errors.recipient = new errors_1.InvalidAddressBecauseDestinationIsAlsoSource();
|
|
31
41
|
}
|
|
32
|
-
else if (recipient && !(
|
|
42
|
+
else if (recipient && !(yield (0, network_1.validateAddress)(recipient))) {
|
|
33
43
|
errors.recipient = new errors_1.InvalidAddress(undefined, {
|
|
34
44
|
currencyName: acc.currency.name,
|
|
35
45
|
});
|
|
@@ -39,25 +49,25 @@ const getTransactionStatus = async (acc, transaction) => {
|
|
|
39
49
|
account.type === "TokenAccount" &&
|
|
40
50
|
account.token.tokenType === "trc20" &&
|
|
41
51
|
!isContractInteraction && // send trc20 to a smart contract is allowed
|
|
42
|
-
(
|
|
52
|
+
(yield (0, network_1.fetchTronAccount)(recipient)).length === 0) {
|
|
43
53
|
// send trc20 to a new account is forbidden by us (because it will not activate the account)
|
|
44
54
|
errors.recipient = new errors_2.TronSendTrc20ToNewAccountForbidden();
|
|
45
55
|
}
|
|
46
56
|
}
|
|
47
57
|
if (mode === "unfreeze") {
|
|
48
58
|
const { bandwidth, energy } = acc.tronResources.frozen;
|
|
49
|
-
if (resource === "BANDWIDTH" && transaction.amount.gt(bandwidth
|
|
59
|
+
if (resource === "BANDWIDTH" && transaction.amount.gt((bandwidth === null || bandwidth === void 0 ? void 0 : bandwidth.amount) || new bignumber_js_1.default(0))) {
|
|
50
60
|
errors.resource = new errors_2.TronNoFrozenForBandwidth();
|
|
51
61
|
}
|
|
52
|
-
else if (resource === "ENERGY" && transaction.amount.gt(energy
|
|
62
|
+
else if (resource === "ENERGY" && transaction.amount.gt((energy === null || energy === void 0 ? void 0 : energy.amount) || new bignumber_js_1.default(0))) {
|
|
53
63
|
errors.resource = new errors_2.TronNoFrozenForEnergy();
|
|
54
64
|
}
|
|
55
65
|
}
|
|
56
66
|
if (mode === "legacyUnfreeze") {
|
|
57
67
|
const now = new Date();
|
|
58
68
|
const expirationDate = resource === "ENERGY"
|
|
59
|
-
? acc.tronResources.legacyFrozen.energy
|
|
60
|
-
: acc.tronResources.legacyFrozen.bandwidth
|
|
69
|
+
? (_a = acc.tronResources.legacyFrozen.energy) === null || _a === void 0 ? void 0 : _a.expiredAt
|
|
70
|
+
: (_b = acc.tronResources.legacyFrozen.bandwidth) === null || _b === void 0 ? void 0 : _b.expiredAt;
|
|
61
71
|
if (!expirationDate) {
|
|
62
72
|
if (resource === "BANDWIDTH") {
|
|
63
73
|
errors.resource = new errors_2.TronNoFrozenForBandwidth();
|
|
@@ -79,8 +89,8 @@ const getTransactionStatus = async (acc, transaction) => {
|
|
|
79
89
|
}
|
|
80
90
|
else {
|
|
81
91
|
const unfreezingResources = [
|
|
82
|
-
...(acc.tronResources.unFrozen.bandwidth
|
|
83
|
-
...(acc.tronResources.unFrozen.energy
|
|
92
|
+
...((_c = acc.tronResources.unFrozen.bandwidth) !== null && _c !== void 0 ? _c : []),
|
|
93
|
+
...((_d = acc.tronResources.unFrozen.energy) !== null && _d !== void 0 ? _d : []),
|
|
84
94
|
];
|
|
85
95
|
const hasNoExpiredResource = !unfreezingResources.some(unfrozen => unfrozen.expireTime.getTime() <= now.getTime());
|
|
86
96
|
if (hasNoExpiredResource) {
|
|
@@ -99,7 +109,7 @@ const getTransactionStatus = async (acc, transaction) => {
|
|
|
99
109
|
}
|
|
100
110
|
}
|
|
101
111
|
if (mode === "unDelegateResource" && resource && acc.tronResources) {
|
|
102
|
-
const delegatedResourceAmount =
|
|
112
|
+
const delegatedResourceAmount = yield (0, network_1.getDelegatedResource)(acc, transaction, resource);
|
|
103
113
|
if (delegatedResourceAmount.lt(transaction.amount)) {
|
|
104
114
|
errors.resource = new errors_2.TronInvalidUnDelegateResourceAmount();
|
|
105
115
|
}
|
|
@@ -109,7 +119,7 @@ const getTransactionStatus = async (acc, transaction) => {
|
|
|
109
119
|
errors.vote = new errors_2.TronVoteRequired();
|
|
110
120
|
}
|
|
111
121
|
else {
|
|
112
|
-
const superRepresentatives =
|
|
122
|
+
const superRepresentatives = yield (0, network_1.getTronSuperRepresentatives)();
|
|
113
123
|
const isValidVoteCounts = votes.every(v => v.voteCount > 0);
|
|
114
124
|
const isValidAddresses = votes.every(v => superRepresentatives.some(s => s.address === v.address));
|
|
115
125
|
if (!isValidAddresses) {
|
|
@@ -145,7 +155,7 @@ const getTransactionStatus = async (acc, transaction) => {
|
|
|
145
155
|
}
|
|
146
156
|
const estimatedFees = Object.entries(errors).length > 0
|
|
147
157
|
? new bignumber_js_1.default(0)
|
|
148
|
-
:
|
|
158
|
+
: yield (0, getEstimateFees_1.default)(acc, transaction, tokenAccount);
|
|
149
159
|
const balance = account.type === "Account"
|
|
150
160
|
? bignumber_js_1.default.max(0, account.spendableBalance.minus(estimatedFees))
|
|
151
161
|
: account.balance;
|
|
@@ -178,7 +188,7 @@ const getTransactionStatus = async (acc, transaction) => {
|
|
|
178
188
|
account.token.tokenType === "trc20" &&
|
|
179
189
|
energy.lt(47619) // temporary value corresponding to usdt trc20 energy
|
|
180
190
|
) {
|
|
181
|
-
const contractUserEnergyConsumption =
|
|
191
|
+
const contractUserEnergyConsumption = yield (0, network_1.getContractUserEnergyRatioConsumption)(account.token.contractAddress);
|
|
182
192
|
if (contractUserEnergyConsumption > 0) {
|
|
183
193
|
warnings.amount = new errors_2.TronNotEnoughEnergy();
|
|
184
194
|
}
|
|
@@ -199,9 +209,7 @@ const getTransactionStatus = async (acc, transaction) => {
|
|
|
199
209
|
// PTX swap uses this to support deeplink to buy additional currency
|
|
200
210
|
//
|
|
201
211
|
if (parentAccountBalance.lt(estimatedFees) || parentAccountBalance.isZero()) {
|
|
202
|
-
const query = new URLSearchParams({
|
|
203
|
-
...(acc?.id ? { account: acc.id } : {}),
|
|
204
|
-
});
|
|
212
|
+
const query = new URLSearchParams(Object.assign({}, ((acc === null || acc === void 0 ? void 0 : acc.id) ? { account: acc.id } : {})));
|
|
205
213
|
errors.gasLimit = new errors_1.NotEnoughGas(undefined, {
|
|
206
214
|
fees: (0, currencies_1.formatCurrencyUnit)((0, account_1.getFeesUnit)(acc.currency), estimatedFees),
|
|
207
215
|
ticker: acc.currency.ticker,
|
|
@@ -217,6 +225,6 @@ const getTransactionStatus = async (acc, transaction) => {
|
|
|
217
225
|
totalSpent,
|
|
218
226
|
family,
|
|
219
227
|
});
|
|
220
|
-
};
|
|
228
|
+
});
|
|
221
229
|
exports.default = getTransactionStatus;
|
|
222
230
|
//# sourceMappingURL=getTransactionStatus.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"getTransactionStatus.js","sourceRoot":"","sources":["../../src/bridge/getTransactionStatus.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"getTransactionStatus.js","sourceRoot":"","sources":["../../src/bridge/getTransactionStatus.ts"],"names":[],"mappings":";;;;;;;;;;;;;;AAAA,8DAAmF;AACnF,6CAO0B;AAC1B,oEAAyE;AACzE,gEAAqC;AACrC,yDAAiC;AACjC,kDAA6C;AAC7C,wCAOoB;AAEpB,4CAgByB;AACzB,wEAAiD;AAEjD,MAAM,oBAAoB,GAAG,CAC3B,GAAgB,EAChB,WAAwB,EACI,EAAE;;IAC9B,MAAM,MAAM,GAA0B,EAAE,CAAC;IACzC,MAAM,QAAQ,GAA0B,EAAE,CAAC;IAC3C,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,SAAS,EAAE,QAAQ,EAAE,KAAK,EAAE,YAAY,GAAG,KAAK,EAAE,GAAG,WAAW,CAAC;IACvF,MAAM,YAAY,GAAG,CAAC,WAAW,CAAC,YAAY;QAC5C,CAAC,CAAC,IAAI;QACN,CAAC,CAAC,GAAG,CAAC,WAAW,IAAI,GAAG,CAAC,WAAW,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,KAAK,WAAW,CAAC,YAAY,CAAC,CAAC;IACtF,MAAM,OAAO,GAAG,YAAY,IAAI,GAAG,CAAC;IACpC,MAAM,qBAAqB,GACzB,CAAC,MAAM,IAAA,2BAAiB,EAAC,YAAY,CAAC,CAAC,CAAC,YAAY,CAAC,KAAK,CAAC,eAAe,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC;QACxF,SAAS,CAAC;IAEZ,IAAI,IAAI,KAAK,MAAM,IAAI,CAAC,SAAS,EAAE,CAAC;QAClC,MAAM,CAAC,SAAS,GAAG,IAAI,0BAAiB,EAAE,CAAC;IAC7C,CAAC;IAED,IAAI,CAAC,MAAM,EAAE,oBAAoB,EAAE,gBAAgB,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC;QACpE,IAAI,SAAS,KAAK,GAAG,CAAC,YAAY,EAAE,CAAC;YACnC,MAAM,CAAC,SAAS,GAAG,IAAI,qDAA4C,EAAE,CAAC;QACxE,CAAC;aAAM,IAAI,SAAS,IAAI,CAAC,CAAC,MAAM,IAAA,yBAAe,EAAC,SAAS,CAAC,CAAC,EAAE,CAAC;YAC5D,MAAM,CAAC,SAAS,GAAG,IAAI,uBAAc,CAAC,SAAS,EAAE;gBAC/C,YAAY,EAAE,GAAG,CAAC,QAAQ,CAAC,IAAI;aAChC,CAAC,CAAC;QACL,CAAC;aAAM,IACL,SAAS;YACT,IAAI,KAAK,MAAM;YACf,OAAO,CAAC,IAAI,KAAK,cAAc;YAC/B,OAAO,CAAC,KAAK,CAAC,SAAS,KAAK,OAAO;YACnC,CAAC,qBAAqB,IAAI,4CAA4C;YACtE,CAAC,MAAM,IAAA,0BAAgB,EAAC,SAAS,CAAC,CAAC,CAAC,MAAM,KAAK,CAAC,EAChD,CAAC;YACD,4FAA4F;YAC5F,MAAM,CAAC,SAAS,GAAG,IAAI,2CAAkC,EAAE,CAAC;QAC9D,CAAC;IACH,CAAC;IAED,IAAI,IAAI,KAAK,UAAU,EAAE,CAAC;QACxB,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,GAAG,GAAG,CAAC,aAAa,CAAC,MAAM,CAAC;QACvD,IAAI,QAAQ,KAAK,WAAW,IAAI,WAAW,CAAC,MAAM,CAAC,EAAE,CAAC,CAAA,SAAS,aAAT,SAAS,uBAAT,SAAS,CAAE,MAAM,KAAI,IAAI,sBAAS,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;YAC7F,MAAM,CAAC,QAAQ,GAAG,IAAI,iCAAwB,EAAE,CAAC;QACnD,CAAC;aAAM,IAAI,QAAQ,KAAK,QAAQ,IAAI,WAAW,CAAC,MAAM,CAAC,EAAE,CAAC,CAAA,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,MAAM,KAAI,IAAI,sBAAS,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;YAC9F,MAAM,CAAC,QAAQ,GAAG,IAAI,8BAAqB,EAAE,CAAC;QAChD,CAAC;IACH,CAAC;IAED,IAAI,IAAI,KAAK,gBAAgB,EAAE,CAAC;QAC9B,MAAM,GAAG,GAAG,IAAI,IAAI,EAAE,CAAC;QACvB,MAAM,cAAc,GAClB,QAAQ,KAAK,QAAQ;YACnB,CAAC,CAAC,MAAA,GAAG,CAAC,aAAa,CAAC,YAAY,CAAC,MAAM,0CAAE,SAAS;YAClD,CAAC,CAAC,MAAA,GAAG,CAAC,aAAa,CAAC,YAAY,CAAC,SAAS,0CAAE,SAAS,CAAC;QAE1D,IAAI,CAAC,cAAc,EAAE,CAAC;YACpB,IAAI,QAAQ,KAAK,WAAW,EAAE,CAAC;gBAC7B,MAAM,CAAC,QAAQ,GAAG,IAAI,iCAAwB,EAAE,CAAC;YACnD,CAAC;iBAAM,CAAC;gBACN,MAAM,CAAC,QAAQ,GAAG,IAAI,8BAAqB,EAAE,CAAC;YAChD,CAAC;QACH,CAAC;aAAM,IAAI,GAAG,CAAC,OAAO,EAAE,GAAG,cAAc,CAAC,OAAO,EAAE,EAAE,CAAC;YACpD,MAAM,CAAC,QAAQ,GAAG,IAAI,qCAA4B,EAAE,CAAC;QACvD,CAAC;IACH,CAAC;IAED,IAAI,IAAI,KAAK,wBAAwB,EAAE,CAAC;QACtC,MAAM,GAAG,GAAG,IAAI,IAAI,EAAE,CAAC;QACvB,IACE,CAAC,CAAC,GAAG,CAAC,aAAa,CAAC,QAAQ,CAAC,SAAS;YACpC,GAAG,CAAC,aAAa,CAAC,QAAQ,CAAC,SAAS,CAAC,MAAM,KAAK,CAAC,CAAC;YACpD,CAAC,CAAC,GAAG,CAAC,aAAa,CAAC,QAAQ,CAAC,MAAM,IAAI,GAAG,CAAC,aAAa,CAAC,QAAQ,CAAC,MAAM,CAAC,MAAM,KAAK,CAAC,CAAC,EACtF,CAAC;YACD,MAAM,CAAC,QAAQ,GAAG,IAAI,+BAAsB,EAAE,CAAC;QACjD,CAAC;aAAM,CAAC;YACN,MAAM,mBAAmB,GAAG;gBAC1B,GAAG,CAAC,MAAA,GAAG,CAAC,aAAa,CAAC,QAAQ,CAAC,SAAS,mCAAI,EAAE,CAAC;gBAC/C,GAAG,CAAC,MAAA,GAAG,CAAC,aAAa,CAAC,QAAQ,CAAC,MAAM,mCAAI,EAAE,CAAC;aAC7C,CAAC;YAEF,MAAM,oBAAoB,GAAG,CAAC,mBAAmB,CAAC,IAAI,CACpD,QAAQ,CAAC,EAAE,CAAC,QAAQ,CAAC,UAAU,CAAC,OAAO,EAAE,IAAI,GAAG,CAAC,OAAO,EAAE,CAC3D,CAAC;YAEF,IAAI,oBAAoB,EAAE,CAAC;gBACzB,MAAM,iBAAiB,GAAG,mBAAmB,CAAC,MAAM,CAAC,CAAC,OAAO,EAAE,OAAO,EAAE,EAAE;oBACxE,IAAI,CAAC,OAAO,EAAE,CAAC;wBACb,OAAO,OAAO,CAAC;oBACjB,CAAC;oBACD,MAAM,qBAAqB,GAAG,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,UAAU,CAAC,OAAO,EAAE,GAAG,GAAG,CAAC,OAAO,EAAE,CAAC,CAAC;oBACrF,MAAM,qBAAqB,GAAG,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,UAAU,CAAC,OAAO,EAAE,GAAG,GAAG,CAAC,OAAO,EAAE,CAAC,CAAC;oBAErF,OAAO,qBAAqB,GAAG,qBAAqB,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC;gBAC3E,CAAC,CAAC,CAAC;gBACH,MAAM,CAAC,QAAQ,GAAG,IAAI,+BAAsB,CAAC,SAAS,EAAE;oBACtD,IAAI,EAAE,iBAAiB,CAAC,UAAU,CAAC,WAAW,EAAE;iBACjD,CAAC,CAAC;YACL,CAAC;QACH,CAAC;IACH,CAAC;IAED,IAAI,IAAI,KAAK,oBAAoB,IAAI,QAAQ,IAAI,GAAG,CAAC,aAAa,EAAE,CAAC;QACnE,MAAM,uBAAuB,GAAG,MAAM,IAAA,8BAAoB,EAAC,GAAG,EAAE,WAAW,EAAE,QAAQ,CAAC,CAAC;QACvF,IAAI,uBAAuB,CAAC,EAAE,CAAC,WAAW,CAAC,MAAM,CAAC,EAAE,CAAC;YACnD,MAAM,CAAC,QAAQ,GAAG,IAAI,4CAAmC,EAAE,CAAC;QAC9D,CAAC;IACH,CAAC;IAED,IAAI,IAAI,KAAK,MAAM,EAAE,CAAC;QACpB,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACvB,MAAM,CAAC,IAAI,GAAG,IAAI,yBAAgB,EAAE,CAAC;QACvC,CAAC;aAAM,CAAC;YACN,MAAM,oBAAoB,GAAG,MAAM,IAAA,qCAA2B,GAAE,CAAC;YACjE,MAAM,iBAAiB,GAAG,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,SAAS,GAAG,CAAC,CAAC,CAAC;YAC5D,MAAM,gBAAgB,GAAG,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,CACvC,oBAAoB,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,OAAO,KAAK,CAAC,CAAC,OAAO,CAAC,CACxD,CAAC;YAEF,IAAI,CAAC,gBAAgB,EAAE,CAAC;gBACtB,MAAM,CAAC,IAAI,GAAG,IAAI,uBAAc,CAAC,EAAE,EAAE;oBACnC,YAAY,EAAE,GAAG,CAAC,QAAQ,CAAC,IAAI;iBAChC,CAAC,CAAC;YACL,CAAC;iBAAM,IAAI,CAAC,iBAAiB,EAAE,CAAC;gBAC9B,MAAM,CAAC,IAAI,GAAG,IAAI,6BAAoB,EAAE,CAAC;YAC3C,CAAC;iBAAM,CAAC;gBACN,MAAM,cAAc,GAAG,IAAA,eAAK,EAAC,KAAK,EAAE,WAAW,CAAC,CAAC;gBACjD,MAAM,SAAS,GAAG,CAAC,GAAG,CAAC,aAAa,IAAI,GAAG,CAAC,aAAa,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC;gBAE1E,IAAI,cAAc,GAAG,SAAS,EAAE,CAAC;oBAC/B,MAAM,CAAC,IAAI,GAAG,IAAI,+BAAsB,EAAE,CAAC;gBAC7C,CAAC;YACH,CAAC;QACH,CAAC;IACH,CAAC;IAED,IAAI,IAAI,KAAK,aAAa,EAAE,CAAC;QAC3B,MAAM,YAAY,GAAG,OAAO,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,QAAQ,CAAC,CAAC;QACvE,MAAM,mBAAmB,GAAG,YAAY;YACtC,CAAC,CAAC,IAAI,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,OAAO,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,IAAI,CAAC,CAAC,kBAAkB;YAChF,CAAC,CAAC,IAAI,IAAI,EAAE,CAAC;QAEf,IAAI,GAAG,CAAC,aAAa,IAAI,GAAG,CAAC,aAAa,CAAC,iBAAiB,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YACnE,MAAM,CAAC,MAAM,GAAG,IAAI,qBAAY,EAAE,CAAC;QACrC,CAAC;aAAM,IAAI,YAAY,IAAI,mBAAmB,CAAC,OAAO,EAAE,GAAG,IAAI,IAAI,EAAE,CAAC,OAAO,EAAE,EAAE,CAAC;YAChF,MAAM,CAAC,MAAM,GAAG,IAAI,+BAAsB,CAAC,yBAAyB,EAAE;gBACpE,KAAK,EAAE,mBAAmB,CAAC,WAAW,EAAE;aACzC,CAAC,CAAC;QACL,CAAC;IACH,CAAC;IAED,MAAM,aAAa,GACjB,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,MAAM,GAAG,CAAC;QAC/B,CAAC,CAAC,IAAI,sBAAS,CAAC,CAAC,CAAC;QAClB,CAAC,CAAC,MAAM,IAAA,yBAAgB,EAAC,GAAG,EAAE,WAAW,EAAE,YAAY,CAAC,CAAC;IAC7D,MAAM,OAAO,GACX,OAAO,CAAC,IAAI,KAAK,SAAS;QACxB,CAAC,CAAC,sBAAS,CAAC,GAAG,CAAC,CAAC,EAAE,OAAO,CAAC,gBAAgB,CAAC,KAAK,CAAC,aAAa,CAAC,CAAC;QACjE,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC;IACtB,MAAM,MAAM,GAAG,YAAY,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,WAAW,CAAC,MAAM,CAAC;IAC3D,MAAM,WAAW,GAAG,CAAC,MAAM,EAAE,QAAQ,EAAE,oBAAoB,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC;QACzE,CAAC,CAAC,MAAM;QACR,CAAC,CAAC,IAAI,sBAAS,CAAC,CAAC,CAAC,CAAC;IAErB,IAAI,IAAI,KAAK,QAAQ,IAAI,MAAM,CAAC,EAAE,CAAC,mBAAO,CAAC,EAAE,CAAC;QAC5C,MAAM,CAAC,MAAM,GAAG,IAAI,gCAAuB,EAAE,CAAC;IAChD,CAAC;IAED,4CAA4C;IAC5C,MAAM,UAAU,GAAG,OAAO,CAAC,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC,WAAW,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC;IAE9F,IAAI,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC;QACtC,IAAI,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YACjB,MAAM,CAAC,MAAM,GAAG,IAAI,uBAAc,EAAE,CAAC;QACvC,CAAC;QACD,IAAI,WAAW,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YACtB,MAAM,CAAC,MAAM,GAAG,YAAY,CAAC,CAAC,CAAC,IAAI,yBAAgB,EAAE,CAAC,CAAC,CAAC,IAAI,uBAAc,EAAE,CAAC;QAC/E,CAAC;aAAM,IAAI,MAAM,CAAC,EAAE,CAAC,OAAO,CAAC,EAAE,CAAC;YAC9B,MAAM,CAAC,MAAM,GAAG,IAAI,yBAAgB,EAAE,CAAC;QACzC,CAAC;QAED,MAAM,MAAM,GAAG,CAAC,GAAG,CAAC,aAAa,IAAI,GAAG,CAAC,aAAa,CAAC,MAAM,CAAC,IAAI,IAAI,sBAAS,CAAC,CAAC,CAAC,CAAC;QAEnF,wCAAwC;QACxC,yFAAyF;QACzF,cAAc;QACd,gCAAgC;QAChC,0DAA0D;QAC1D,IACE,OAAO,CAAC,IAAI,KAAK,cAAc;YAC/B,OAAO,CAAC,KAAK,CAAC,SAAS,KAAK,OAAO;YACnC,MAAM,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,qDAAqD;UACtE,CAAC;YACD,MAAM,6BAA6B,GAAG,MAAM,IAAA,+CAAqC,EAC/E,OAAO,CAAC,KAAK,CAAC,eAAe,CAC9B,CAAC;YAEF,IAAI,6BAA6B,GAAG,CAAC,EAAE,CAAC;gBACtC,QAAQ,CAAC,MAAM,GAAG,IAAI,4BAAmB,EAAE,CAAC;YAC9C,CAAC;QACH,CAAC;IACH,CAAC;IAED,IAAI,CAAC,MAAM,CAAC,SAAS,IAAI,aAAa,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QAC7C,MAAM,IAAI,GAAG,IAAA,+BAAkB,EAAC,IAAA,4BAAkB,EAAC,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,aAAa,EAAE;YAC/E,QAAQ,EAAE,IAAI;YACd,eAAe,EAAE,IAAI;SACtB,CAAC,CAAC;QACH,QAAQ,CAAC,GAAG,GAAG,IAAI,2BAAkB,CAAC,gBAAgB,EAAE;YACtD,IAAI;SACL,CAAC,CAAC;IACL,CAAC;IAED,MAAM,oBAAoB,GAAG,OAAO,CAAC,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,CAAC,gBAAgB,CAAC;IACjG,EAAE;IACF,uBAAuB;IACvB,oEAAoE;IACpE,EAAE;IACF,IAAI,oBAAoB,CAAC,EAAE,CAAC,aAAa,CAAC,IAAI,oBAAoB,CAAC,MAAM,EAAE,EAAE,CAAC;QAC5E,MAAM,KAAK,GAAG,IAAI,eAAe,mBAC5B,CAAC,CAAA,GAAG,aAAH,GAAG,uBAAH,GAAG,CAAE,EAAE,EAAC,CAAC,CAAC,EAAE,OAAO,EAAE,GAAG,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EACvC,CAAC;QACH,MAAM,CAAC,QAAQ,GAAG,IAAI,qBAAY,CAAC,SAAS,EAAE;YAC5C,IAAI,EAAE,IAAA,+BAAkB,EAAC,IAAA,qBAAW,EAAC,GAAG,CAAC,QAAQ,CAAC,EAAE,aAAa,CAAC;YAClE,MAAM,EAAE,GAAG,CAAC,QAAQ,CAAC,MAAM;YAC3B,UAAU,EAAE,GAAG,CAAC,QAAQ,CAAC,IAAI;YAC7B,KAAK,EAAE,CAAC,oBAAoB,KAAK,CAAC,QAAQ,EAAE,EAAE,CAAC;SAChD,CAAC,CAAC;IACL,CAAC;IAED,OAAO,OAAO,CAAC,OAAO,CAAC;QACrB,MAAM;QACN,QAAQ;QACR,MAAM,EAAE,WAAW;QACnB,aAAa;QACb,UAAU;QACV,MAAM;KACP,CAAC,CAAC;AACL,CAAC,CAAA,CAAC;AAEF,kBAAe,oBAAoB,CAAC"}
|
package/lib/bridge/preload.js
CHANGED
|
@@ -1,13 +1,22 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
+
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
3
|
+
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
4
|
+
return new (P || (P = Promise))(function (resolve, reject) {
|
|
5
|
+
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
6
|
+
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
7
|
+
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
8
|
+
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
9
|
+
});
|
|
10
|
+
};
|
|
2
11
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
12
|
exports.hydrate = exports.preload = void 0;
|
|
4
13
|
const network_1 = require("../network");
|
|
5
|
-
const preload =
|
|
6
|
-
const superRepresentatives =
|
|
14
|
+
const preload = () => __awaiter(void 0, void 0, void 0, function* () {
|
|
15
|
+
const superRepresentatives = yield (0, network_1.getTronSuperRepresentatives)();
|
|
7
16
|
return {
|
|
8
17
|
superRepresentatives,
|
|
9
18
|
};
|
|
10
|
-
};
|
|
19
|
+
});
|
|
11
20
|
exports.preload = preload;
|
|
12
21
|
const hydrate = (data) => {
|
|
13
22
|
if (!data || !data.superRepresentatives)
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"preload.js","sourceRoot":"","sources":["../../src/bridge/preload.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"preload.js","sourceRoot":"","sources":["../../src/bridge/preload.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,wCAAsF;AAG/E,MAAM,OAAO,GAAG,GAAS,EAAE;IAChC,MAAM,oBAAoB,GAAG,MAAM,IAAA,qCAA2B,GAAE,CAAC;IACjE,OAAO;QACL,oBAAoB;KACrB,CAAC;AACJ,CAAC,CAAA,CAAC;AALW,QAAA,OAAO,WAKlB;AAEK,MAAM,OAAO,GAAG,CAAC,IAAuD,EAAE,EAAE;IACjF,IAAI,CAAC,IAAI,IAAI,CAAC,IAAI,CAAC,oBAAoB;QAAE,OAAO;IAEhD,MAAM,EAAE,oBAAoB,EAAE,GAAG,IAAI,CAAC;IAEtC,IACE,CAAC,oBAAoB;QACrB,OAAO,oBAAoB,KAAK,QAAQ;QACxC,CAAC,KAAK,CAAC,OAAO,CAAC,oBAAoB,CAAC;QAEpC,OAAO;IAET,IAAA,qCAA2B,EAAC,oBAAoB,CAAC,CAAC;AACpD,CAAC,CAAC;AAbW,QAAA,OAAO,WAalB"}
|
|
@@ -1,10 +1,19 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
+
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
3
|
+
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
4
|
+
return new (P || (P = Promise))(function (resolve, reject) {
|
|
5
|
+
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
6
|
+
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
7
|
+
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
8
|
+
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
9
|
+
});
|
|
10
|
+
};
|
|
2
11
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
12
|
exports.prepareTransaction = void 0;
|
|
4
13
|
const network_1 = require("../network");
|
|
5
|
-
const prepareTransaction =
|
|
6
|
-
const networkInfo = transaction.networkInfo || (
|
|
7
|
-
return transaction.networkInfo === networkInfo ? transaction : {
|
|
8
|
-
};
|
|
14
|
+
const prepareTransaction = (account, transaction) => __awaiter(void 0, void 0, void 0, function* () {
|
|
15
|
+
const networkInfo = transaction.networkInfo || (yield (0, network_1.getTronAccountNetwork)(account.freshAddress));
|
|
16
|
+
return transaction.networkInfo === networkInfo ? transaction : Object.assign(Object.assign({}, transaction), { networkInfo });
|
|
17
|
+
});
|
|
9
18
|
exports.prepareTransaction = prepareTransaction;
|
|
10
19
|
//# sourceMappingURL=prepareTransaction.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"prepareTransaction.js","sourceRoot":"","sources":["../../src/bridge/prepareTransaction.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"prepareTransaction.js","sourceRoot":"","sources":["../../src/bridge/prepareTransaction.ts"],"names":[],"mappings":";;;;;;;;;;;;AACA,wCAAmD;AAG5C,MAAM,kBAAkB,GAGL,CAAO,OAAO,EAAE,WAAW,EAAE,EAAE;IACvD,MAAM,WAAW,GACf,WAAW,CAAC,WAAW,IAAI,CAAC,MAAM,IAAA,+BAAqB,EAAC,OAAO,CAAC,YAAY,CAAC,CAAC,CAAC;IACjF,OAAO,WAAW,CAAC,WAAW,KAAK,WAAW,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,iCAAM,WAAW,KAAE,WAAW,GAAE,CAAC;AACjG,CAAC,CAAA,CAAC;AAPW,QAAA,kBAAkB,sBAO7B"}
|
|
@@ -13,10 +13,10 @@ const toTronResourcesRaw = ({ frozen, unFrozen, delegatedFrozen, legacyFrozen, v
|
|
|
13
13
|
const delegatedFrozenBandwidth = delegatedFrozen.bandwidth;
|
|
14
14
|
const delegatedFrozenEnergy = delegatedFrozen.energy;
|
|
15
15
|
const cacheTransactionInfoById = {};
|
|
16
|
-
const unFrozenBandwidth = unFrozen
|
|
17
|
-
const unFrozenEnergy = unFrozen
|
|
18
|
-
const legacyFrozenBandwidth = legacyFrozen
|
|
19
|
-
const legacyFrozenEnergy = legacyFrozen
|
|
16
|
+
const unFrozenBandwidth = unFrozen === null || unFrozen === void 0 ? void 0 : unFrozen.bandwidth;
|
|
17
|
+
const unFrozenEnergy = unFrozen === null || unFrozen === void 0 ? void 0 : unFrozen.energy;
|
|
18
|
+
const legacyFrozenBandwidth = legacyFrozen === null || legacyFrozen === void 0 ? void 0 : legacyFrozen.bandwidth;
|
|
19
|
+
const legacyFrozenEnergy = legacyFrozen === null || legacyFrozen === void 0 ? void 0 : legacyFrozen.energy;
|
|
20
20
|
for (const k in cacheTx) {
|
|
21
21
|
const { fee, blockNumber, withdraw_amount, unfreeze_amount } = cacheTx[k];
|
|
22
22
|
cacheTransactionInfoById[k] = [fee, blockNumber, withdraw_amount, unfreeze_amount];
|
|
@@ -95,10 +95,10 @@ const fromTronResourcesRaw = ({ frozen, unFrozen, delegatedFrozen, legacyFrozen,
|
|
|
95
95
|
const frozenEnergy = frozen.energy;
|
|
96
96
|
const delegatedFrozenBandwidth = delegatedFrozen.bandwidth;
|
|
97
97
|
const delegatedFrozenEnergy = delegatedFrozen.energy;
|
|
98
|
-
const unFrozenBandwidth = unFrozen
|
|
99
|
-
const unFrozenEnergy = unFrozen
|
|
100
|
-
const legacyFrozenBandwidth = legacyFrozen
|
|
101
|
-
const legacyFrozenEnergy = legacyFrozen
|
|
98
|
+
const unFrozenBandwidth = unFrozen === null || unFrozen === void 0 ? void 0 : unFrozen.bandwidth;
|
|
99
|
+
const unFrozenEnergy = unFrozen === null || unFrozen === void 0 ? void 0 : unFrozen.energy;
|
|
100
|
+
const legacyFrozenBandwidth = legacyFrozen === null || legacyFrozen === void 0 ? void 0 : legacyFrozen.bandwidth;
|
|
101
|
+
const legacyFrozenEnergy = legacyFrozen === null || legacyFrozen === void 0 ? void 0 : legacyFrozen.energy;
|
|
102
102
|
const cacheTransactionInfoById = {};
|
|
103
103
|
if (cacheTransactionInfoByIdRaw) {
|
|
104
104
|
for (const k in cacheTransactionInfoByIdRaw) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"serialization.js","sourceRoot":"","sources":["../../src/bridge/serialization.ts"],"names":[],"mappings":";;;AA0NA,gDAKC;AAED,oDAIC;AAED,sDA2BC;AAED,kDA2BC;AA/RD,+CAAyC;AACzC,oCAWkB;AAGX,MAAM,kBAAkB,GAAG,CAAC,EACjC,MAAM,EACN,QAAQ,EACR,eAAe,EACf,YAAY,EACZ,KAAK,EACL,SAAS,EACT,MAAM,EACN,SAAS,EACT,iBAAiB,EACjB,uBAAuB,EACvB,aAAa,EACb,wBAAwB,EAAE,OAAO,GACnB,EAAoB,EAAE;IACpC,MAAM,eAAe,GAAG,MAAM,CAAC,SAAS,CAAC;IACzC,MAAM,YAAY,GAAG,MAAM,CAAC,MAAM,CAAC;IACnC,MAAM,wBAAwB,GAAG,eAAe,CAAC,SAAS,CAAC;IAC3D,MAAM,qBAAqB,GAAG,eAAe,CAAC,MAAM,CAAC;IACrD,MAAM,wBAAwB,GAA2C,EAAE,CAAC;IAC5E,MAAM,iBAAiB,GAAG,QAAQ,
|
|
1
|
+
{"version":3,"file":"serialization.js","sourceRoot":"","sources":["../../src/bridge/serialization.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,4 +1,13 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
+
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
3
|
+
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
4
|
+
return new (P || (P = Promise))(function (resolve, reject) {
|
|
5
|
+
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
6
|
+
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
7
|
+
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
8
|
+
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
9
|
+
});
|
|
10
|
+
};
|
|
2
11
|
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
12
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
13
|
};
|
|
@@ -10,45 +19,50 @@ const network_1 = require("../network");
|
|
|
10
19
|
const buildOptimisticOperation_1 = require("./buildOptimisticOperation");
|
|
11
20
|
const getEstimateFees_1 = __importDefault(require("./getEstimateFees"));
|
|
12
21
|
const buildSignOperation = (signerContext) => ({ account, transaction, deviceId }) => new rxjs_1.Observable(o => {
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
transaction
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
subAccount
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
22
|
+
function main() {
|
|
23
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
24
|
+
const subAccount = transaction.subAccountId && account.subAccounts
|
|
25
|
+
? account.subAccounts.find(sa => sa.id === transaction.subAccountId)
|
|
26
|
+
: undefined;
|
|
27
|
+
const fee = yield (0, getEstimateFees_1.default)(account, transaction, subAccount);
|
|
28
|
+
const balance = subAccount
|
|
29
|
+
? subAccount.balance
|
|
30
|
+
: bignumber_js_1.default.max(0, account.spendableBalance.minus(fee));
|
|
31
|
+
if (transaction.useAllAmount) {
|
|
32
|
+
transaction = Object.assign({}, transaction); // transaction object must not be mutated
|
|
33
|
+
transaction.amount = balance; // force the amount to be the max
|
|
34
|
+
}
|
|
35
|
+
const { raw_data_hex: rawDataHex, raw_data: rawData, txID: hash, } = yield prepareTransactionForSignature(account, subAccount, transaction);
|
|
36
|
+
o.next({
|
|
37
|
+
type: "device-signature-requested",
|
|
38
|
+
});
|
|
39
|
+
const txArg = {
|
|
40
|
+
rawDataHex,
|
|
41
|
+
// only for trc10, we need to put the token ledger signature
|
|
42
|
+
tokenSignature: subAccount &&
|
|
43
|
+
subAccount.type === "TokenAccount" &&
|
|
44
|
+
subAccount.token.id.includes("trc10")
|
|
45
|
+
? subAccount.token.ledgerSignature
|
|
46
|
+
: undefined,
|
|
47
|
+
};
|
|
48
|
+
// Sign by device
|
|
49
|
+
const signature = yield signerContext(deviceId, signer => {
|
|
50
|
+
var _a;
|
|
51
|
+
return signer.sign(account.freshAddressPath, (_a = txArg.rawDataHex) !== null && _a !== void 0 ? _a : "", //FIXME: why rawDataHex could be undefined? This shouldn't be the case.
|
|
52
|
+
txArg.tokenSignature ? [txArg.tokenSignature] : []);
|
|
53
|
+
});
|
|
54
|
+
o.next({
|
|
55
|
+
type: "device-signature-granted",
|
|
56
|
+
});
|
|
57
|
+
const operation = (0, buildOptimisticOperation_1.buildOptimisticOperation)(account, subAccount, transaction, fee, hash);
|
|
58
|
+
o.next({
|
|
59
|
+
type: "signed",
|
|
60
|
+
signedOperation: {
|
|
61
|
+
operation,
|
|
62
|
+
signature,
|
|
63
|
+
rawData,
|
|
64
|
+
},
|
|
65
|
+
});
|
|
52
66
|
});
|
|
53
67
|
}
|
|
54
68
|
main().then(() => o.complete(), e => o.error(e));
|