@ledgerhq/coin-hedera 1.15.0 → 1.16.0-nightly.20251210120335
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/CHANGELOG.md +24 -0
- package/lib/bridge/buildOptimisticOperation.d.ts.map +1 -1
- package/lib/bridge/buildOptimisticOperation.js +33 -0
- package/lib/bridge/buildOptimisticOperation.js.map +1 -1
- package/lib/bridge/getTransactionStatus.d.ts.map +1 -1
- package/lib/bridge/getTransactionStatus.js +54 -0
- package/lib/bridge/getTransactionStatus.js.map +1 -1
- package/lib/bridge/index.d.ts.map +1 -1
- package/lib/bridge/index.js +4 -2
- package/lib/bridge/index.js.map +1 -1
- package/lib/bridge/prepareTransaction.d.ts.map +1 -1
- package/lib/bridge/prepareTransaction.js +16 -0
- package/lib/bridge/prepareTransaction.js.map +1 -1
- package/lib/bridge/serialization.d.ts.map +1 -1
- package/lib/bridge/serialization.js +20 -0
- package/lib/bridge/serialization.js.map +1 -1
- package/lib/bridge/signOperation.d.ts +4 -4
- package/lib/bridge/signOperation.d.ts.map +1 -1
- package/lib/bridge/signOperation.js +10 -0
- package/lib/bridge/signOperation.js.map +1 -1
- package/lib/bridge/synchronisation.d.ts.map +1 -1
- package/lib/bridge/synchronisation.js +8 -0
- package/lib/bridge/synchronisation.js.map +1 -1
- package/lib/constants.d.ts +21 -1
- package/lib/constants.d.ts.map +1 -1
- package/lib/constants.js +22 -1
- package/lib/constants.js.map +1 -1
- package/lib/deviceTransactionConfig.d.ts.map +1 -1
- package/lib/deviceTransactionConfig.js +30 -0
- package/lib/deviceTransactionConfig.js.map +1 -1
- package/lib/errors.d.ts +9 -0
- package/lib/errors.d.ts.map +1 -1
- package/lib/errors.js +4 -1
- package/lib/errors.js.map +1 -1
- package/lib/logic/craftTransaction.d.ts +2 -2
- package/lib/logic/craftTransaction.d.ts.map +1 -1
- package/lib/logic/craftTransaction.js +42 -8
- package/lib/logic/craftTransaction.js.map +1 -1
- package/lib/logic/getBlock.d.ts.map +1 -1
- package/lib/logic/getBlock.js +1 -0
- package/lib/logic/getBlock.js.map +1 -1
- package/lib/logic/listOperations.d.ts.map +1 -1
- package/lib/logic/listOperations.js +39 -7
- package/lib/logic/listOperations.js.map +1 -1
- package/lib/logic/utils.d.ts +61 -3
- package/lib/logic/utils.d.ts.map +1 -1
- package/lib/logic/utils.js +117 -4
- package/lib/logic/utils.js.map +1 -1
- package/lib/network/api.d.ts +3 -1
- package/lib/network/api.d.ts.map +1 -1
- package/lib/network/api.js +19 -0
- package/lib/network/api.js.map +1 -1
- package/lib/preload-data.d.ts +7 -0
- package/lib/preload-data.d.ts.map +1 -0
- package/lib/preload-data.js +37 -0
- package/lib/preload-data.js.map +1 -0
- package/lib/preload.d.ts +8 -0
- package/lib/preload.d.ts.map +1 -0
- package/lib/preload.js +76 -0
- package/lib/preload.js.map +1 -0
- package/lib/test/fixtures/account.fixture.d.ts +1 -1
- package/lib/test/fixtures/account.fixture.d.ts.map +1 -1
- package/lib/test/fixtures/account.fixture.js +2 -0
- package/lib/test/fixtures/account.fixture.js.map +1 -1
- package/lib/transaction.d.ts.map +1 -1
- package/lib/transaction.js +34 -0
- package/lib/transaction.js.map +1 -1
- package/lib/types/alpaca.d.ts +3 -0
- package/lib/types/alpaca.d.ts.map +1 -1
- package/lib/types/bridge.d.ts +87 -3
- package/lib/types/bridge.d.ts.map +1 -1
- package/lib/types/logic.d.ts +5 -1
- package/lib/types/logic.d.ts.map +1 -1
- package/lib/types/mirror.d.ts +19 -0
- package/lib/types/mirror.d.ts.map +1 -1
- package/lib-es/bridge/buildOptimisticOperation.d.ts.map +1 -1
- package/lib-es/bridge/buildOptimisticOperation.js +34 -1
- package/lib-es/bridge/buildOptimisticOperation.js.map +1 -1
- package/lib-es/bridge/getTransactionStatus.d.ts.map +1 -1
- package/lib-es/bridge/getTransactionStatus.js +57 -3
- package/lib-es/bridge/getTransactionStatus.js.map +1 -1
- package/lib-es/bridge/index.d.ts.map +1 -1
- package/lib-es/bridge/index.js +4 -2
- package/lib-es/bridge/index.js.map +1 -1
- package/lib-es/bridge/prepareTransaction.d.ts.map +1 -1
- package/lib-es/bridge/prepareTransaction.js +15 -2
- package/lib-es/bridge/prepareTransaction.js.map +1 -1
- package/lib-es/bridge/serialization.d.ts.map +1 -1
- package/lib-es/bridge/serialization.js +17 -0
- package/lib-es/bridge/serialization.js.map +1 -1
- package/lib-es/bridge/signOperation.d.ts +4 -4
- package/lib-es/bridge/signOperation.d.ts.map +1 -1
- package/lib-es/bridge/signOperation.js +11 -1
- package/lib-es/bridge/signOperation.js.map +1 -1
- package/lib-es/bridge/synchronisation.d.ts.map +1 -1
- package/lib-es/bridge/synchronisation.js +8 -0
- package/lib-es/bridge/synchronisation.js.map +1 -1
- package/lib-es/constants.d.ts +21 -1
- package/lib-es/constants.d.ts.map +1 -1
- package/lib-es/constants.js +21 -0
- package/lib-es/constants.js.map +1 -1
- package/lib-es/deviceTransactionConfig.d.ts.map +1 -1
- package/lib-es/deviceTransactionConfig.js +31 -1
- package/lib-es/deviceTransactionConfig.js.map +1 -1
- package/lib-es/errors.d.ts +9 -0
- package/lib-es/errors.d.ts.map +1 -1
- package/lib-es/errors.js +3 -0
- package/lib-es/errors.js.map +1 -1
- package/lib-es/logic/craftTransaction.d.ts +2 -2
- package/lib-es/logic/craftTransaction.d.ts.map +1 -1
- package/lib-es/logic/craftTransaction.js +44 -10
- package/lib-es/logic/craftTransaction.js.map +1 -1
- package/lib-es/logic/getBlock.d.ts.map +1 -1
- package/lib-es/logic/getBlock.js +2 -1
- package/lib-es/logic/getBlock.js.map +1 -1
- package/lib-es/logic/listOperations.d.ts.map +1 -1
- package/lib-es/logic/listOperations.js +39 -7
- package/lib-es/logic/listOperations.js.map +1 -1
- package/lib-es/logic/utils.d.ts +61 -3
- package/lib-es/logic/utils.d.ts.map +1 -1
- package/lib-es/logic/utils.js +107 -4
- package/lib-es/logic/utils.js.map +1 -1
- package/lib-es/network/api.d.ts +3 -1
- package/lib-es/network/api.d.ts.map +1 -1
- package/lib-es/network/api.js +19 -0
- package/lib-es/network/api.js.map +1 -1
- package/lib-es/preload-data.d.ts +7 -0
- package/lib-es/preload-data.d.ts.map +1 -0
- package/lib-es/preload-data.js +31 -0
- package/lib-es/preload-data.js.map +1 -0
- package/lib-es/preload.d.ts +8 -0
- package/lib-es/preload.d.ts.map +1 -0
- package/lib-es/preload.js +67 -0
- package/lib-es/preload.js.map +1 -0
- package/lib-es/test/fixtures/account.fixture.d.ts +1 -1
- package/lib-es/test/fixtures/account.fixture.d.ts.map +1 -1
- package/lib-es/test/fixtures/account.fixture.js +2 -0
- package/lib-es/test/fixtures/account.fixture.js.map +1 -1
- package/lib-es/transaction.d.ts.map +1 -1
- package/lib-es/transaction.js +34 -0
- package/lib-es/transaction.js.map +1 -1
- package/lib-es/types/alpaca.d.ts +3 -0
- package/lib-es/types/alpaca.d.ts.map +1 -1
- package/lib-es/types/bridge.d.ts +87 -3
- package/lib-es/types/bridge.d.ts.map +1 -1
- package/lib-es/types/logic.d.ts +5 -1
- package/lib-es/types/logic.d.ts.map +1 -1
- package/lib-es/types/mirror.d.ts +19 -0
- package/lib-es/types/mirror.d.ts.map +1 -1
- package/package.json +13 -12
- package/src/api/index.integ.test.ts +11 -1
- package/src/bridge/buildOptimisticOperation.integration.test.ts +159 -4
- package/src/bridge/buildOptimisticOperation.ts +50 -2
- package/src/bridge/getTransactionStatus.test.ts +191 -21
- package/src/bridge/getTransactionStatus.ts +75 -1
- package/src/bridge/index.ts +4 -2
- package/src/bridge/prepareTransaction.test.ts +112 -8
- package/src/bridge/prepareTransaction.ts +20 -2
- package/src/bridge/serialization.ts +17 -0
- package/src/bridge/signOperation.ts +15 -5
- package/src/bridge/synchronisation.ts +9 -0
- package/src/bridge/utils.integration.test.ts +3 -10
- package/src/constants.ts +22 -0
- package/src/deviceTransactionConfig.test.ts +315 -0
- package/src/deviceTransactionConfig.ts +37 -1
- package/src/errors.ts +7 -0
- package/src/logic/craftTransaction.ts +70 -13
- package/src/logic/getBalance.test.ts +15 -16
- package/src/logic/getBlock.ts +2 -1
- package/src/logic/listOperations.test.ts +86 -29
- package/src/logic/listOperations.ts +46 -6
- package/src/logic/utils.test.ts +362 -8
- package/src/logic/utils.ts +158 -4
- package/src/network/api.test.ts +58 -6
- package/src/network/api.ts +25 -0
- package/src/network/thirdweb.test.ts +2 -2
- package/src/network/utils.test.ts +4 -6
- package/src/preload-data.ts +38 -0
- package/src/preload.test.ts +64 -0
- package/src/preload.ts +80 -0
- package/src/test/fixtures/account.fixture.ts +3 -1
- package/src/transaction.ts +42 -0
- package/src/types/alpaca.ts +4 -0
- package/src/types/bridge.ts +108 -3
- package/src/types/logic.ts +6 -1
- package/src/types/mirror.ts +21 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"listOperations.js","sourceRoot":"","sources":["../../src/logic/listOperations.ts"],"names":[],"mappings":"AAAA,OAAO,SAAS,MAAM,cAAc,CAAC;
|
|
1
|
+
{"version":3,"file":"listOperations.js","sourceRoot":"","sources":["../../src/logic/listOperations.ts"],"names":[],"mappings":"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"}
|
package/lib-es/logic/utils.d.ts
CHANGED
|
@@ -3,8 +3,8 @@ import { Transaction as HederaSDKTransaction, TransactionId } from "@hashgraph/s
|
|
|
3
3
|
import type { AssetInfo, TransactionIntent } from "@ledgerhq/coin-framework/api/types";
|
|
4
4
|
import type { Currency, ExplorerView, TokenCurrency } from "@ledgerhq/types-cryptoassets";
|
|
5
5
|
import type { AccountLike, Operation as LiveOperation } from "@ledgerhq/types-live";
|
|
6
|
-
import { HEDERA_OPERATION_TYPES, HEDERA_TRANSACTION_MODES } from "../constants";
|
|
7
|
-
import type { HederaOperationExtra, Transaction, TransactionStatus } from "../types";
|
|
6
|
+
import { HEDERA_DELEGATION_STATUS, HEDERA_OPERATION_TYPES, HEDERA_TRANSACTION_MODES } from "../constants";
|
|
7
|
+
import type { HederaAccount, HederaMemo, HederaOperationExtra, HederaTxData, HederaValidator, OperationDetailsExtraField, Transaction, TransactionStaking, TransactionStatus } from "../types";
|
|
8
8
|
export declare const serializeSignature: (signature: Uint8Array) => string;
|
|
9
9
|
export declare const deserializeSignature: (signature: string) => Buffer;
|
|
10
10
|
export declare const serializeTransaction: (tx: HederaSDKTransaction) => string;
|
|
@@ -18,7 +18,7 @@ export declare const mapIntentToSDKOperation: (txIntent: TransactionIntent) => H
|
|
|
18
18
|
export declare const getMemoFromBase64: (memoBase64: string | undefined) => string | null;
|
|
19
19
|
export declare function base64ToUrlSafeBase64(data: string): string;
|
|
20
20
|
export declare const getTransactionExplorer: (explorerView: ExplorerView | null | undefined, operation: LiveOperation) => string | undefined;
|
|
21
|
-
export declare const isTokenAssociateTransaction: (tx: Transaction) => tx is import("@ledgerhq/types-live").TransactionCommon & {
|
|
21
|
+
export declare const isTokenAssociateTransaction: (tx: Transaction | null | undefined) => tx is import("@ledgerhq/types-live").TransactionCommon & {
|
|
22
22
|
family: "hedera";
|
|
23
23
|
memo?: string | undefined;
|
|
24
24
|
maxFee?: BigNumber;
|
|
@@ -33,9 +33,11 @@ export declare const isTokenAssociateTransaction: (tx: Transaction) => tx is imp
|
|
|
33
33
|
export declare const isAutoTokenAssociationEnabled: (account: AccountLike) => boolean;
|
|
34
34
|
export declare const isTokenAssociationRequired: (account: AccountLike, token: TokenCurrency | null | undefined) => boolean;
|
|
35
35
|
export declare const isValidExtra: (extra: unknown) => extra is HederaOperationExtra;
|
|
36
|
+
export declare const getOperationDetailsExtraFields: (extra: HederaOperationExtra) => OperationDetailsExtraField[];
|
|
36
37
|
export declare const sendRecipientCanNext: (status: TransactionStatus) => boolean;
|
|
37
38
|
export declare const getCurrencyToUSDRate: import("@ledgerhq/live-network/cache").CacheRes<[currency: Currency], BigNumber | null>;
|
|
38
39
|
export declare const checkAccountTokenAssociationStatus: import("@ledgerhq/live-network/cache").CacheRes<[accountId: string, token: TokenCurrency], boolean>;
|
|
40
|
+
export declare const getChecksum: (accountId: string) => string | null;
|
|
39
41
|
export declare const safeParseAccountId: (address: string) => [Error, null] | [null, {
|
|
40
42
|
accountId: string;
|
|
41
43
|
checksum: string | null;
|
|
@@ -86,4 +88,60 @@ export declare const toEVMAddress: (accountId: string) => string | null;
|
|
|
86
88
|
* @returns Hedera account ID in the format `shard.realm.num` or null if conversion fails
|
|
87
89
|
*/
|
|
88
90
|
export declare const fromEVMAddress: (evmAddress: string, shard?: number, realm?: number) => string | null;
|
|
91
|
+
export declare const extractCompanyFromNodeDescription: (description: string) => string;
|
|
92
|
+
export declare const sortValidators: (validators: HederaValidator[]) => HederaValidator[];
|
|
93
|
+
export declare const filterValidatorBySearchTerm: (validator: HederaValidator, search: string) => boolean;
|
|
94
|
+
export declare const getValidatorFromAccount: (account: HederaAccount) => HederaValidator | null;
|
|
95
|
+
export declare const getDefaultValidator: (validators: HederaValidator[]) => HederaValidator | null;
|
|
96
|
+
export declare const getDelegationStatus: (validator: HederaValidator | null) => HEDERA_DELEGATION_STATUS;
|
|
97
|
+
export declare const isStakingTransaction: (tx: Transaction | null | undefined) => tx is TransactionStaking;
|
|
98
|
+
export declare const hasSpecificIntentData: <Type extends "erc20" | "staking">(txIntent: TransactionIntent<HederaMemo, HederaTxData>, expectedType: Type) => txIntent is Extract<{
|
|
99
|
+
intentType: "staking" | "transaction";
|
|
100
|
+
type: string;
|
|
101
|
+
sender: string;
|
|
102
|
+
recipient: string;
|
|
103
|
+
amount: bigint;
|
|
104
|
+
asset: AssetInfo;
|
|
105
|
+
useAllAmount?: boolean;
|
|
106
|
+
feesStrategy?: import("@ledgerhq/coin-framework/api/types").FeesStrategy;
|
|
107
|
+
senderPublicKey?: string;
|
|
108
|
+
sequence?: bigint;
|
|
109
|
+
expiration?: number;
|
|
110
|
+
sponsored?: boolean;
|
|
111
|
+
} & {
|
|
112
|
+
memo: HederaMemo;
|
|
113
|
+
} & {
|
|
114
|
+
data: {
|
|
115
|
+
type: "erc20";
|
|
116
|
+
gasLimit: bigint;
|
|
117
|
+
};
|
|
118
|
+
}, {
|
|
119
|
+
data: {
|
|
120
|
+
type: Type;
|
|
121
|
+
};
|
|
122
|
+
}> | Extract<{
|
|
123
|
+
intentType: "staking" | "transaction";
|
|
124
|
+
type: string;
|
|
125
|
+
sender: string;
|
|
126
|
+
recipient: string;
|
|
127
|
+
amount: bigint;
|
|
128
|
+
asset: AssetInfo;
|
|
129
|
+
useAllAmount?: boolean;
|
|
130
|
+
feesStrategy?: import("@ledgerhq/coin-framework/api/types").FeesStrategy;
|
|
131
|
+
senderPublicKey?: string;
|
|
132
|
+
sequence?: bigint;
|
|
133
|
+
expiration?: number;
|
|
134
|
+
sponsored?: boolean;
|
|
135
|
+
} & {
|
|
136
|
+
memo: HederaMemo;
|
|
137
|
+
} & {
|
|
138
|
+
data: {
|
|
139
|
+
type: "staking";
|
|
140
|
+
stakingNodeId: number | null | undefined;
|
|
141
|
+
};
|
|
142
|
+
}, {
|
|
143
|
+
data: {
|
|
144
|
+
type: Type;
|
|
145
|
+
};
|
|
146
|
+
}>;
|
|
89
147
|
//# sourceMappingURL=utils.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../src/logic/utils.ts"],"names":[],"mappings":"AAAA,OAAO,SAAS,MAAM,cAAc,CAAC;AAGrC,OAAO,EAGL,WAAW,IAAI,oBAAoB,EACnC,aAAa,EACd,MAAM,gBAAgB,CAAC;AACxB,OAAO,KAAK,EAAE,SAAS,EAAE,iBAAiB,EAAE,MAAM,oCAAoC,CAAC;
|
|
1
|
+
{"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../src/logic/utils.ts"],"names":[],"mappings":"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"}
|
package/lib-es/logic/utils.js
CHANGED
|
@@ -6,11 +6,13 @@ import { findCryptoCurrencyById } from "@ledgerhq/cryptoassets/currencies";
|
|
|
6
6
|
import { getFiatCurrencyByTicker } from "@ledgerhq/cryptoassets/fiats";
|
|
7
7
|
import cvsApi from "@ledgerhq/live-countervalues/api/index";
|
|
8
8
|
import { InvalidAddress } from "@ledgerhq/errors";
|
|
9
|
+
import { getEnv } from "@ledgerhq/live-env";
|
|
9
10
|
import { makeLRUCache, seconds } from "@ledgerhq/live-network/cache";
|
|
10
|
-
import { HEDERA_OPERATION_TYPES, HEDERA_TRANSACTION_MODES, SYNTHETIC_BLOCK_WINDOW_SECONDS, } from "../constants";
|
|
11
|
+
import { HEDERA_DELEGATION_STATUS, HEDERA_OPERATION_TYPES, HEDERA_TRANSACTION_MODES, SYNTHETIC_BLOCK_WINDOW_SECONDS, } from "../constants";
|
|
11
12
|
import { apiClient } from "../network/api";
|
|
12
13
|
import { rpcClient } from "../network/rpc";
|
|
13
14
|
import { HederaRecipientInvalidChecksum } from "../errors";
|
|
15
|
+
import { getCurrentHederaPreloadData } from "../preload-data";
|
|
14
16
|
export const serializeSignature = (signature) => {
|
|
15
17
|
return Buffer.from(signature).toString("base64");
|
|
16
18
|
};
|
|
@@ -51,6 +53,11 @@ export const mapIntentToSDKOperation = (txIntent) => {
|
|
|
51
53
|
if (txIntent.type === HEDERA_TRANSACTION_MODES.Send && txIntent.asset.type === "erc20") {
|
|
52
54
|
return HEDERA_OPERATION_TYPES.ContractCall;
|
|
53
55
|
}
|
|
56
|
+
if (txIntent.type === HEDERA_TRANSACTION_MODES.Delegate ||
|
|
57
|
+
txIntent.type === HEDERA_TRANSACTION_MODES.Undelegate ||
|
|
58
|
+
txIntent.type === HEDERA_TRANSACTION_MODES.Redelegate) {
|
|
59
|
+
return HEDERA_OPERATION_TYPES.CryptoUpdate;
|
|
60
|
+
}
|
|
54
61
|
return HEDERA_OPERATION_TYPES.CryptoTransfer;
|
|
55
62
|
};
|
|
56
63
|
export const getMemoFromBase64 = (memoBase64) => {
|
|
@@ -75,7 +82,7 @@ export const getTransactionExplorer = (explorerView, operation) => {
|
|
|
75
82
|
return explorerView?.tx?.replace("$hash", extra?.consensusTimestamp ?? extra?.transactionId ?? "0");
|
|
76
83
|
};
|
|
77
84
|
export const isTokenAssociateTransaction = (tx) => {
|
|
78
|
-
return tx
|
|
85
|
+
return tx?.mode === HEDERA_TRANSACTION_MODES.TokenAssociate;
|
|
79
86
|
};
|
|
80
87
|
export const isAutoTokenAssociationEnabled = (account) => {
|
|
81
88
|
const hederaAccount = "hederaResources" in account ? account : null;
|
|
@@ -92,6 +99,31 @@ export const isTokenAssociationRequired = (account, token) => {
|
|
|
92
99
|
export const isValidExtra = (extra) => {
|
|
93
100
|
return !!extra && typeof extra === "object" && !Array.isArray(extra);
|
|
94
101
|
};
|
|
102
|
+
export const getOperationDetailsExtraFields = (extra) => {
|
|
103
|
+
const fields = [];
|
|
104
|
+
if (typeof extra.memo === "string") {
|
|
105
|
+
fields.push({ key: "memo", value: extra.memo });
|
|
106
|
+
}
|
|
107
|
+
if (typeof extra.associatedTokenId === "string") {
|
|
108
|
+
fields.push({ key: "associatedTokenId", value: extra.associatedTokenId });
|
|
109
|
+
}
|
|
110
|
+
if (typeof extra.targetStakingNodeId === "number") {
|
|
111
|
+
fields.push({ key: "targetStakingNodeId", value: extra.targetStakingNodeId.toString() });
|
|
112
|
+
}
|
|
113
|
+
if (typeof extra.previousStakingNodeId === "number") {
|
|
114
|
+
fields.push({ key: "previousStakingNodeId", value: extra.previousStakingNodeId.toString() });
|
|
115
|
+
}
|
|
116
|
+
if (typeof extra.gasConsumed === "number") {
|
|
117
|
+
fields.push({ key: "gasConsumed", value: extra.gasConsumed.toString() });
|
|
118
|
+
}
|
|
119
|
+
if (typeof extra.gasUsed === "number") {
|
|
120
|
+
fields.push({ key: "gasUsed", value: extra.gasUsed.toString() });
|
|
121
|
+
}
|
|
122
|
+
if (typeof extra.gasLimit === "number") {
|
|
123
|
+
fields.push({ key: "gasLimit", value: extra.gasLimit.toString() });
|
|
124
|
+
}
|
|
125
|
+
return fields;
|
|
126
|
+
};
|
|
95
127
|
// disables the "Continue" button in the Send modal's Recipient step during token transfers if:
|
|
96
128
|
// - the recipient is not associated with the token
|
|
97
129
|
// - the association status can't be verified
|
|
@@ -135,12 +167,21 @@ export const checkAccountTokenAssociationStatus = makeLRUCache(async (address, t
|
|
|
135
167
|
});
|
|
136
168
|
return isTokenAssociated;
|
|
137
169
|
}, (accountId, token) => `${accountId}-${token.contractAddress}`, seconds(30));
|
|
170
|
+
export const getChecksum = (accountId) => {
|
|
171
|
+
try {
|
|
172
|
+
const entityId = EntityIdHelper.fromString(accountId);
|
|
173
|
+
return entityId.checksum ?? null;
|
|
174
|
+
}
|
|
175
|
+
catch {
|
|
176
|
+
return null;
|
|
177
|
+
}
|
|
178
|
+
};
|
|
138
179
|
export const safeParseAccountId = (address) => {
|
|
139
180
|
const currency = findCryptoCurrencyById("hedera");
|
|
140
181
|
const currencyName = currency?.name ?? "Hedera";
|
|
141
182
|
try {
|
|
142
183
|
const accountId = AccountId.fromString(address);
|
|
143
|
-
const checksum =
|
|
184
|
+
const checksum = getChecksum(address);
|
|
144
185
|
if (checksum) {
|
|
145
186
|
const client = rpcClient.getInstance();
|
|
146
187
|
const expectedChecksum = accountId.toStringWithChecksum(client).split("-")[1];
|
|
@@ -154,7 +195,7 @@ export const safeParseAccountId = (address) => {
|
|
|
154
195
|
};
|
|
155
196
|
return [null, result];
|
|
156
197
|
}
|
|
157
|
-
catch
|
|
198
|
+
catch {
|
|
158
199
|
return [new InvalidAddress("", { currencyName }), null];
|
|
159
200
|
}
|
|
160
201
|
};
|
|
@@ -239,4 +280,66 @@ export const fromEVMAddress = (evmAddress, shard = 0, realm = 0) => {
|
|
|
239
280
|
return null;
|
|
240
281
|
}
|
|
241
282
|
};
|
|
283
|
+
export const extractCompanyFromNodeDescription = (description) => {
|
|
284
|
+
return description
|
|
285
|
+
.split("|")[0]
|
|
286
|
+
.replace(/hosted by/i, "")
|
|
287
|
+
.replace(/hosted for/i, "")
|
|
288
|
+
.trim();
|
|
289
|
+
};
|
|
290
|
+
export const sortValidators = (validators) => {
|
|
291
|
+
const ledgerNodeId = getEnv("HEDERA_STAKING_LEDGER_NODE_ID");
|
|
292
|
+
// sort validators by active stake in DESC order, with Ledger node first if it exists
|
|
293
|
+
return [...validators].sort((a, b) => {
|
|
294
|
+
if (typeof ledgerNodeId === "number") {
|
|
295
|
+
if (a.nodeId === ledgerNodeId)
|
|
296
|
+
return -1;
|
|
297
|
+
if (b.nodeId === ledgerNodeId)
|
|
298
|
+
return 1;
|
|
299
|
+
}
|
|
300
|
+
return b.activeStake.toNumber() - a.activeStake.toNumber();
|
|
301
|
+
});
|
|
302
|
+
};
|
|
303
|
+
export const filterValidatorBySearchTerm = (validator, search) => {
|
|
304
|
+
const lowercaseSearch = search.toLowerCase();
|
|
305
|
+
const addressWithChecksum = validator.addressChecksum
|
|
306
|
+
? `${validator.address}-${validator.addressChecksum}`
|
|
307
|
+
: validator.address;
|
|
308
|
+
return (validator.nodeId.toString().includes(lowercaseSearch) ||
|
|
309
|
+
validator.name.toLowerCase().includes(lowercaseSearch) ||
|
|
310
|
+
addressWithChecksum.toLowerCase().includes(lowercaseSearch));
|
|
311
|
+
};
|
|
312
|
+
export const getValidatorFromAccount = (account) => {
|
|
313
|
+
const { delegation } = account.hederaResources ?? {};
|
|
314
|
+
if (!delegation) {
|
|
315
|
+
return null;
|
|
316
|
+
}
|
|
317
|
+
const validators = getCurrentHederaPreloadData(account.currency);
|
|
318
|
+
const validator = validators.validators.find(v => v.nodeId === delegation.nodeId) ?? null;
|
|
319
|
+
return validator;
|
|
320
|
+
};
|
|
321
|
+
export const getDefaultValidator = (validators) => {
|
|
322
|
+
const ledgerNodeId = getEnv("HEDERA_STAKING_LEDGER_NODE_ID");
|
|
323
|
+
return validators.find(v => v.nodeId === ledgerNodeId) ?? null;
|
|
324
|
+
};
|
|
325
|
+
export const getDelegationStatus = (validator) => {
|
|
326
|
+
if (!validator?.address) {
|
|
327
|
+
return HEDERA_DELEGATION_STATUS.Inactive;
|
|
328
|
+
}
|
|
329
|
+
if (validator.overstaked) {
|
|
330
|
+
return HEDERA_DELEGATION_STATUS.Overstaked;
|
|
331
|
+
}
|
|
332
|
+
return HEDERA_DELEGATION_STATUS.Active;
|
|
333
|
+
};
|
|
334
|
+
export const isStakingTransaction = (tx) => {
|
|
335
|
+
if (!tx)
|
|
336
|
+
return false;
|
|
337
|
+
return (tx.mode === HEDERA_TRANSACTION_MODES.Delegate ||
|
|
338
|
+
tx.mode === HEDERA_TRANSACTION_MODES.Undelegate ||
|
|
339
|
+
tx.mode === HEDERA_TRANSACTION_MODES.Redelegate ||
|
|
340
|
+
tx.mode === HEDERA_TRANSACTION_MODES.ClaimRewards);
|
|
341
|
+
};
|
|
342
|
+
export const hasSpecificIntentData = (txIntent, expectedType) => {
|
|
343
|
+
return "data" in txIntent && txIntent.data.type === expectedType;
|
|
344
|
+
};
|
|
242
345
|
//# sourceMappingURL=utils.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"utils.js","sourceRoot":"","sources":["../../src/logic/utils.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"utils.js","sourceRoot":"","sources":["../../src/logic/utils.ts"],"names":[],"mappings":"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"}
|
package/lib-es/network/api.d.ts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import BigNumber from "bignumber.js";
|
|
2
|
-
import type { HederaMirrorAccount, HederaMirrorToken, HederaMirrorTransaction, HederaMirrorNetworkFees, HederaMirrorContractCallResult } from "../types";
|
|
2
|
+
import type { HederaMirrorAccount, HederaMirrorToken, HederaMirrorTransaction, HederaMirrorNetworkFees, HederaMirrorContractCallResult, HederaMirrorNode } from "../types";
|
|
3
3
|
declare function getAccountsForPublicKey(publicKey: string): Promise<HederaMirrorAccount[]>;
|
|
4
4
|
declare function getAccount(address: string): Promise<HederaMirrorAccount>;
|
|
5
5
|
declare function getAccountTransactions({ address, pagingToken, limit, order, fetchAllPages, }: {
|
|
@@ -20,6 +20,7 @@ declare function findTransactionByContractCall(timestamp: string, contractId: st
|
|
|
20
20
|
declare function getERC20Balance(accountEvmAddress: string, contractEvmAddress: string): Promise<BigNumber>;
|
|
21
21
|
declare function estimateContractCallGas(senderEvmAddress: string, recipientEvmAddress: string, contractEvmAddress: string, amount: bigint): Promise<BigNumber>;
|
|
22
22
|
declare function getTransactionsByTimestampRange(startTimestamp: string, endTimestamp: string): Promise<HederaMirrorTransaction[]>;
|
|
23
|
+
declare function getNodes(): Promise<HederaMirrorNode[]>;
|
|
23
24
|
export declare const apiClient: {
|
|
24
25
|
getAccountsForPublicKey: typeof getAccountsForPublicKey;
|
|
25
26
|
getAccount: typeof getAccount;
|
|
@@ -32,6 +33,7 @@ export declare const apiClient: {
|
|
|
32
33
|
getERC20Balance: typeof getERC20Balance;
|
|
33
34
|
estimateContractCallGas: typeof estimateContractCallGas;
|
|
34
35
|
getTransactionsByTimestampRange: typeof getTransactionsByTimestampRange;
|
|
36
|
+
getNodes: typeof getNodes;
|
|
35
37
|
};
|
|
36
38
|
export {};
|
|
37
39
|
//# sourceMappingURL=api.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"api.d.ts","sourceRoot":"","sources":["../../src/network/api.ts"],"names":[],"mappings":"AAAA,OAAO,SAAS,MAAM,cAAc,CAAC;AAOrC,OAAO,KAAK,EAGV,mBAAmB,EAEnB,iBAAiB,EACjB,uBAAuB,EACvB,uBAAuB,EACvB,8BAA8B,
|
|
1
|
+
{"version":3,"file":"api.d.ts","sourceRoot":"","sources":["../../src/network/api.ts"],"names":[],"mappings":"AAAA,OAAO,SAAS,MAAM,cAAc,CAAC;AAOrC,OAAO,KAAK,EAGV,mBAAmB,EAEnB,iBAAiB,EACjB,uBAAuB,EACvB,uBAAuB,EACvB,8BAA8B,EAG9B,gBAAgB,EAEjB,MAAM,UAAU,CAAC;AAIlB,iBAAe,uBAAuB,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,mBAAmB,EAAE,CAAC,CAexF;AAED,iBAAe,UAAU,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,mBAAmB,CAAC,CAgBvE;AAED,iBAAe,sBAAsB,CAAC,EACpC,OAAO,EACP,WAAW,EACX,KAAW,EACX,KAAc,EACd,aAAa,GACd,EAAE;IACD,OAAO,EAAE,MAAM,CAAC;IAChB,WAAW,EAAE,MAAM,GAAG,IAAI,CAAC;IAC3B,KAAK,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAC3B,KAAK,CAAC,EAAE,KAAK,GAAG,MAAM,GAAG,SAAS,CAAC;IACnC,aAAa,EAAE,OAAO,CAAC;CACxB,GAAG,OAAO,CAAC;IAAE,YAAY,EAAE,uBAAuB,EAAE,CAAC;IAAC,UAAU,EAAE,MAAM,GAAG,IAAI,CAAA;CAAE,CAAC,CAmDlF;AAED,iBAAe,gBAAgB,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,iBAAiB,EAAE,CAAC,CAmB7E;AAED,iBAAe,oBAAoB,IAAI,OAAO,CAAC,uBAAuB,CAAC,CAiBtE;AAED,iBAAe,cAAc,IAAI,OAAO,CAAC,uBAAuB,CAAC,CAOhE;AAED,iBAAe,qBAAqB,CAClC,eAAe,EAAE,MAAM,GACtB,OAAO,CAAC,8BAA8B,CAAC,CAOzC;AAED,iBAAe,6BAA6B,CAC1C,SAAS,EAAE,MAAM,EACjB,UAAU,EAAE,MAAM,GACjB,OAAO,CAAC,uBAAuB,GAAG,IAAI,CAAC,CAQzC;AAED,iBAAe,eAAe,CAC5B,iBAAiB,EAAE,MAAM,EACzB,kBAAkB,EAAE,MAAM,GACzB,OAAO,CAAC,SAAS,CAAC,CAgBpB;AAED,iBAAe,uBAAuB,CACpC,gBAAgB,EAAE,MAAM,EACxB,mBAAmB,EAAE,MAAM,EAC3B,kBAAkB,EAAE,MAAM,EAC1B,MAAM,EAAE,MAAM,GACb,OAAO,CAAC,SAAS,CAAC,CAkBpB;AAED,iBAAe,+BAA+B,CAC5C,cAAc,EAAE,MAAM,EACtB,YAAY,EAAE,MAAM,GACnB,OAAO,CAAC,uBAAuB,EAAE,CAAC,CAuBpC;AAED,iBAAe,QAAQ,IAAI,OAAO,CAAC,gBAAgB,EAAE,CAAC,CAoBrD;AAED,eAAO,MAAM,SAAS;;;;;;;;;;;;;CAarB,CAAC"}
|
package/lib-es/network/api.js
CHANGED
|
@@ -190,6 +190,24 @@ async function getTransactionsByTimestampRange(startTimestamp, endTimestamp) {
|
|
|
190
190
|
}
|
|
191
191
|
return transactions;
|
|
192
192
|
}
|
|
193
|
+
async function getNodes() {
|
|
194
|
+
const nodes = [];
|
|
195
|
+
const params = new URLSearchParams({
|
|
196
|
+
order: "desc",
|
|
197
|
+
limit: "100",
|
|
198
|
+
});
|
|
199
|
+
let nextPath = `/api/v1/network/nodes?${params.toString()}`;
|
|
200
|
+
while (nextPath) {
|
|
201
|
+
const res = await network({
|
|
202
|
+
method: "GET",
|
|
203
|
+
url: `${API_URL}${nextPath}`,
|
|
204
|
+
});
|
|
205
|
+
const newNodes = res.data.nodes;
|
|
206
|
+
nodes.push(...newNodes);
|
|
207
|
+
nextPath = res.data.links.next;
|
|
208
|
+
}
|
|
209
|
+
return nodes;
|
|
210
|
+
}
|
|
193
211
|
export const apiClient = {
|
|
194
212
|
getAccountsForPublicKey,
|
|
195
213
|
getAccount,
|
|
@@ -202,5 +220,6 @@ export const apiClient = {
|
|
|
202
220
|
getERC20Balance,
|
|
203
221
|
estimateContractCallGas,
|
|
204
222
|
getTransactionsByTimestampRange,
|
|
223
|
+
getNodes,
|
|
205
224
|
};
|
|
206
225
|
//# sourceMappingURL=api.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"api.js","sourceRoot":"","sources":["../../src/network/api.ts"],"names":[],"mappings":"AAAA,OAAO,SAAS,MAAM,cAAc,CAAC;AACrC,OAAO,EAAE,kBAAkB,EAAE,QAAQ,EAAE,MAAM,MAAM,CAAC;AACpD,OAAO,OAAO,MAAM,wBAAwB,CAAC;AAE7C,OAAO,EAAE,MAAM,EAAE,MAAM,oBAAoB,CAAC;AAC5C,OAAO,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAC;AAChD,OAAO,EAAE,qBAAqB,EAAE,MAAM,WAAW,CAAC;
|
|
1
|
+
{"version":3,"file":"api.js","sourceRoot":"","sources":["../../src/network/api.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import type { CryptoCurrency } from "@ledgerhq/types-cryptoassets";
|
|
2
|
+
import { Observable } from "rxjs";
|
|
3
|
+
import type { HederaPreloadData } from "./types";
|
|
4
|
+
export declare function setHederaPreloadData(data: HederaPreloadData, currency: CryptoCurrency): void;
|
|
5
|
+
export declare function getHederaPreloadData(currency: CryptoCurrency): Observable<HederaPreloadData>;
|
|
6
|
+
export declare function getCurrentHederaPreloadData(currency: CryptoCurrency): HederaPreloadData;
|
|
7
|
+
//# sourceMappingURL=preload-data.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"preload-data.d.ts","sourceRoot":"","sources":["../src/preload-data.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,8BAA8B,CAAC;AACnE,OAAO,EAAmB,UAAU,EAAE,MAAM,MAAM,CAAC;AACnD,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,SAAS,CAAC;AAYjD,wBAAgB,oBAAoB,CAAC,IAAI,EAAE,iBAAiB,EAAE,QAAQ,EAAE,cAAc,GAAG,IAAI,CAO5F;AAED,wBAAgB,oBAAoB,CAAC,QAAQ,EAAE,cAAc,GAAG,UAAU,CAAC,iBAAiB,CAAC,CAM5F;AAED,wBAAgB,2BAA2B,CAAC,QAAQ,EAAE,cAAc,GAAG,iBAAiB,CAMvF"}
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
import { BehaviorSubject } from "rxjs";
|
|
2
|
+
const initialData = {
|
|
3
|
+
validators: [],
|
|
4
|
+
};
|
|
5
|
+
const dataByCurrency = new Map([["hedera", initialData]]);
|
|
6
|
+
const dataUpdatesByCurrency = new Map([
|
|
7
|
+
["hedera", new BehaviorSubject(initialData)],
|
|
8
|
+
]);
|
|
9
|
+
export function setHederaPreloadData(data, currency) {
|
|
10
|
+
dataByCurrency.set(currency.id, data ?? initialData);
|
|
11
|
+
const subject = dataUpdatesByCurrency.get(currency.id);
|
|
12
|
+
if (subject === undefined) {
|
|
13
|
+
throw new Error(`unsupported currency ${currency.id}`);
|
|
14
|
+
}
|
|
15
|
+
subject.next(data);
|
|
16
|
+
}
|
|
17
|
+
export function getHederaPreloadData(currency) {
|
|
18
|
+
const subject = dataUpdatesByCurrency.get(currency.id);
|
|
19
|
+
if (subject === undefined) {
|
|
20
|
+
throw new Error(`unsupported currency ${currency.id}`);
|
|
21
|
+
}
|
|
22
|
+
return subject.asObservable();
|
|
23
|
+
}
|
|
24
|
+
export function getCurrentHederaPreloadData(currency) {
|
|
25
|
+
const data = dataByCurrency.get(currency.id);
|
|
26
|
+
if (data === undefined) {
|
|
27
|
+
throw new Error(`unsupported currency ${currency.id}`);
|
|
28
|
+
}
|
|
29
|
+
return data;
|
|
30
|
+
}
|
|
31
|
+
//# sourceMappingURL=preload-data.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"preload-data.js","sourceRoot":"","sources":["../src/preload-data.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,eAAe,EAAc,MAAM,MAAM,CAAC;AAGnD,MAAM,WAAW,GAAsB;IACrC,UAAU,EAAE,EAAE;CACf,CAAC;AAEF,MAAM,cAAc,GAAG,IAAI,GAAG,CAA4B,CAAC,CAAC,QAAQ,EAAE,WAAW,CAAC,CAAC,CAAC,CAAC;AAErF,MAAM,qBAAqB,GAAG,IAAI,GAAG,CAAC;IACpC,CAAC,QAAQ,EAAE,IAAI,eAAe,CAAoB,WAAW,CAAC,CAAC;CAChE,CAAC,CAAC;AAEH,MAAM,UAAU,oBAAoB,CAAC,IAAuB,EAAE,QAAwB;IACpF,cAAc,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE,EAAE,IAAI,IAAI,WAAW,CAAC,CAAC;IACrD,MAAM,OAAO,GAAG,qBAAqB,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC;IACvD,IAAI,OAAO,KAAK,SAAS,EAAE,CAAC;QAC1B,MAAM,IAAI,KAAK,CAAC,wBAAwB,QAAQ,CAAC,EAAE,EAAE,CAAC,CAAC;IACzD,CAAC;IACD,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AACrB,CAAC;AAED,MAAM,UAAU,oBAAoB,CAAC,QAAwB;IAC3D,MAAM,OAAO,GAAG,qBAAqB,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC;IACvD,IAAI,OAAO,KAAK,SAAS,EAAE,CAAC;QAC1B,MAAM,IAAI,KAAK,CAAC,wBAAwB,QAAQ,CAAC,EAAE,EAAE,CAAC,CAAC;IACzD,CAAC;IACD,OAAO,OAAO,CAAC,YAAY,EAAE,CAAC;AAChC,CAAC;AAED,MAAM,UAAU,2BAA2B,CAAC,QAAwB;IAClE,MAAM,IAAI,GAAG,cAAc,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC;IAC7C,IAAI,IAAI,KAAK,SAAS,EAAE,CAAC;QACvB,MAAM,IAAI,KAAK,CAAC,wBAAwB,QAAQ,CAAC,EAAE,EAAE,CAAC,CAAC;IACzD,CAAC;IACD,OAAO,IAAI,CAAC;AACd,CAAC"}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import type { CryptoCurrency } from "@ledgerhq/types-cryptoassets";
|
|
2
|
+
import type { HederaPreloadData } from "./types";
|
|
3
|
+
export declare const getPreloadStrategy: () => {
|
|
4
|
+
preloadMaxAge: number;
|
|
5
|
+
};
|
|
6
|
+
export declare function preload(currency: CryptoCurrency): Promise<HederaPreloadData>;
|
|
7
|
+
export declare function hydrate(data: unknown, currency: CryptoCurrency): void;
|
|
8
|
+
//# sourceMappingURL=preload.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"preload.d.ts","sourceRoot":"","sources":["../src/preload.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,8BAA8B,CAAC;AAInE,OAAO,KAAK,EAAE,iBAAiB,EAAuC,MAAM,SAAS,CAAC;AAEtF,eAAO,MAAM,kBAAkB;;CAE7B,CAAC;AAEH,wBAAsB,OAAO,CAAC,QAAQ,EAAE,cAAc,GAAG,OAAO,CAAC,iBAAiB,CAAC,CAiClF;AA8BD,wBAAgB,OAAO,CAAC,IAAI,EAAE,OAAO,EAAE,QAAQ,EAAE,cAAc,GAAG,IAAI,CAIrE"}
|
|
@@ -0,0 +1,67 @@
|
|
|
1
|
+
import BigNumber from "bignumber.js";
|
|
2
|
+
import { log } from "@ledgerhq/logs";
|
|
3
|
+
import { extractCompanyFromNodeDescription, getChecksum, sortValidators } from "./logic/utils";
|
|
4
|
+
import { apiClient } from "./network/api";
|
|
5
|
+
import { setHederaPreloadData } from "./preload-data";
|
|
6
|
+
export const getPreloadStrategy = () => ({
|
|
7
|
+
preloadMaxAge: 15 * 60 * 1000, // 15 minutes
|
|
8
|
+
});
|
|
9
|
+
export async function preload(currency) {
|
|
10
|
+
log("hedera/preload", "preloading hedera data...");
|
|
11
|
+
const nodes = await apiClient.getNodes();
|
|
12
|
+
const validators = nodes.map(mirrorNode => {
|
|
13
|
+
const minStake = new BigNumber(mirrorNode.min_stake);
|
|
14
|
+
const maxStake = new BigNumber(mirrorNode.max_stake);
|
|
15
|
+
const activeStake = new BigNumber(mirrorNode.stake_rewarded);
|
|
16
|
+
const activeStakePercentage = maxStake.gt(0)
|
|
17
|
+
? activeStake.dividedBy(maxStake).multipliedBy(100).dp(0, BigNumber.ROUND_CEIL)
|
|
18
|
+
: new BigNumber(0);
|
|
19
|
+
return {
|
|
20
|
+
nodeId: mirrorNode.node_id,
|
|
21
|
+
address: mirrorNode.node_account_id,
|
|
22
|
+
addressChecksum: getChecksum(mirrorNode.node_account_id),
|
|
23
|
+
name: extractCompanyFromNodeDescription(mirrorNode.description),
|
|
24
|
+
minStake,
|
|
25
|
+
maxStake,
|
|
26
|
+
activeStake,
|
|
27
|
+
activeStakePercentage,
|
|
28
|
+
overstaked: activeStake.gte(maxStake),
|
|
29
|
+
};
|
|
30
|
+
});
|
|
31
|
+
const sortedValidators = sortValidators(validators);
|
|
32
|
+
const data = {
|
|
33
|
+
validators: sortedValidators,
|
|
34
|
+
};
|
|
35
|
+
setHederaPreloadData(data, currency);
|
|
36
|
+
return data;
|
|
37
|
+
}
|
|
38
|
+
function mapRawValidatorToValidator(validatorRaw) {
|
|
39
|
+
return {
|
|
40
|
+
nodeId: validatorRaw.nodeId,
|
|
41
|
+
address: validatorRaw.address,
|
|
42
|
+
addressChecksum: validatorRaw.addressChecksum,
|
|
43
|
+
name: validatorRaw.name,
|
|
44
|
+
minStake: new BigNumber(validatorRaw.minStake),
|
|
45
|
+
maxStake: new BigNumber(validatorRaw.maxStake),
|
|
46
|
+
activeStake: new BigNumber(validatorRaw.activeStake),
|
|
47
|
+
activeStakePercentage: new BigNumber(validatorRaw.activeStakePercentage),
|
|
48
|
+
overstaked: validatorRaw.overstaked,
|
|
49
|
+
};
|
|
50
|
+
}
|
|
51
|
+
function fromHydratePreloadData(data) {
|
|
52
|
+
let validators = [];
|
|
53
|
+
if (data && typeof data === "object" && "validators" in data) {
|
|
54
|
+
if (Array.isArray(data.validators)) {
|
|
55
|
+
validators = data.validators.map(mapRawValidatorToValidator);
|
|
56
|
+
}
|
|
57
|
+
}
|
|
58
|
+
return {
|
|
59
|
+
validators,
|
|
60
|
+
};
|
|
61
|
+
}
|
|
62
|
+
export function hydrate(data, currency) {
|
|
63
|
+
const hydrated = fromHydratePreloadData(data);
|
|
64
|
+
log("hedera/preload", `hydrated ${hydrated.validators.length} hedera validators`);
|
|
65
|
+
setHederaPreloadData(hydrated, currency);
|
|
66
|
+
}
|
|
67
|
+
//# sourceMappingURL=preload.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"preload.js","sourceRoot":"","sources":["../src/preload.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import type { HederaAccount, HederaAccountRaw, HederaResources, HederaResourcesRaw } from "../../types";
|
|
2
|
+
import type { TokenCurrency } from "@ledgerhq/types-cryptoassets";
|
|
2
3
|
import type { TokenAccount } from "@ledgerhq/types-live";
|
|
3
|
-
import { TokenCurrency } from "@ledgerhq/types-cryptoassets";
|
|
4
4
|
export declare const mockHederaResources: HederaResources;
|
|
5
5
|
export declare const mockHederaResourcesRaw: HederaResourcesRaw;
|
|
6
6
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"account.fixture.d.ts","sourceRoot":"","sources":["../../../src/test/fixtures/account.fixture.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EACV,aAAa,EACb,gBAAgB,EAChB,eAAe,EACf,kBAAkB,EACnB,MAAM,aAAa,CAAC;AACrB,OAAO,KAAK,EAAE,
|
|
1
|
+
{"version":3,"file":"account.fixture.d.ts","sourceRoot":"","sources":["../../../src/test/fixtures/account.fixture.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EACV,aAAa,EACb,gBAAgB,EAChB,eAAe,EACf,kBAAkB,EACnB,MAAM,aAAa,CAAC;AACrB,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,8BAA8B,CAAC;AAClE,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AAUzD,eAAO,MAAM,mBAAmB,EAAE,eAIjC,CAAC;AAEF,eAAO,MAAM,sBAAsB,EAAE,kBAIpC,CAAC;AAEF;;;;;GAKG;AACH,eAAO,MAAM,gBAAgB,eAAgB,QAAQ,aAAa,CAAC,KAAG,aA6BrE,CAAC;AAEF,eAAO,MAAM,mBAAmB,eAAgB,QAAQ,gBAAgB,CAAC,KAAG,gBA4B3E,CAAC;AAEF;;;GAGG;AACH,eAAO,MAAM,qBAAqB,UACzB,aAAa,cACR,QAAQ,YAAY,CAAC,KAChC,YAoBF,CAAC;AAEF,eAAO,MAAM,qBAAqB;;;;;;;;;;;;;;;;CAgBjC,CAAC"}
|
|
@@ -9,10 +9,12 @@ const defaultTokenBalance = new BigNumber(10);
|
|
|
9
9
|
export const mockHederaResources = {
|
|
10
10
|
maxAutomaticTokenAssociations: 0,
|
|
11
11
|
isAutoTokenAssociationEnabled: false,
|
|
12
|
+
delegation: null,
|
|
12
13
|
};
|
|
13
14
|
export const mockHederaResourcesRaw = {
|
|
14
15
|
maxAutomaticTokenAssociations: 0,
|
|
15
16
|
isAutoTokenAssociationEnabled: false,
|
|
17
|
+
delegation: null,
|
|
16
18
|
};
|
|
17
19
|
/**
|
|
18
20
|
* default settings:
|