@forevermoney/sdk 0.5.5 → 0.5.7
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 +11 -0
- package/README.md +26 -0
- package/dist/index.cjs +37 -13
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.cts +12 -4
- package/dist/index.d.ts +12 -4
- package/dist/index.js +37 -13
- package/dist/index.js.map +1 -1
- package/package.json +1 -1
package/dist/index.d.cts
CHANGED
|
@@ -8,10 +8,12 @@ declare const ROBINHOOD_CCIP_SELECTOR = 6180753054346818345n;
|
|
|
8
8
|
declare const SUBTENSOR_CCIP_SELECTOR = 2135107236357186872n;
|
|
9
9
|
declare const RAO_PER_TAO = 1000000000n;
|
|
10
10
|
declare const EVM_WEI_PER_RAO = 1000000000n;
|
|
11
|
+
declare const SN78_NETUID = 78n;
|
|
12
|
+
declare const SN10_NETUID = 10n;
|
|
11
13
|
declare const SN80_NETUID = 80n;
|
|
12
|
-
declare const FOREVERMONEY_DEPLOYMENT_VERSION: "1.
|
|
14
|
+
declare const FOREVERMONEY_DEPLOYMENT_VERSION: "1.6.0";
|
|
13
15
|
declare const foreverMoneyDeployment: Readonly<{
|
|
14
|
-
version: "1.
|
|
16
|
+
version: "1.6.0";
|
|
15
17
|
base: Readonly<{
|
|
16
18
|
key: "base";
|
|
17
19
|
name: "Base";
|
|
@@ -21,6 +23,8 @@ declare const foreverMoneyDeployment: Readonly<{
|
|
|
21
23
|
gateway: `0x${string}`;
|
|
22
24
|
legacyGateways: readonly `0x${string}`[];
|
|
23
25
|
wrappedTao: `0x${string}`;
|
|
26
|
+
wrappedSn78: `0x${string}`;
|
|
27
|
+
wrappedSn10: `0x${string}`;
|
|
24
28
|
wrappedSn80: `0x${string}`;
|
|
25
29
|
ccipRouter: `0x${string}`;
|
|
26
30
|
ccipOffRampFromSubtensor: `0x${string}`;
|
|
@@ -40,6 +44,8 @@ declare const foreverMoneyDeployment: Readonly<{
|
|
|
40
44
|
gateway: `0x${string}`;
|
|
41
45
|
legacyGateways: readonly `0x${string}`[];
|
|
42
46
|
wrappedTao: `0x${string}`;
|
|
47
|
+
wrappedSn78: `0x${string}`;
|
|
48
|
+
wrappedSn10: `0x${string}`;
|
|
43
49
|
wrappedSn80: `0x${string}`;
|
|
44
50
|
ccipRouter: `0x${string}`;
|
|
45
51
|
ccipOffRampFromSubtensor: `0x${string}`;
|
|
@@ -53,6 +59,8 @@ declare const foreverMoneyDeployment: Readonly<{
|
|
|
53
59
|
legacyGateways: readonly `0x${string}`[];
|
|
54
60
|
alphaVault: `0x${string}`;
|
|
55
61
|
wrappedTao: `0x${string}`;
|
|
62
|
+
wrappedSn78: `0x${string}`;
|
|
63
|
+
wrappedSn10: `0x${string}`;
|
|
56
64
|
wrappedSn80: `0x${string}`;
|
|
57
65
|
ccipRouter: `0x${string}`;
|
|
58
66
|
ccipOffRampFromBase: `0x${string}`;
|
|
@@ -95,7 +103,7 @@ declare const MIN_LIQUID_SUBTENSOR_TO_EVM_WEI: bigint;
|
|
|
95
103
|
declare const EVM_TO_SUBTENSOR_DESTINATION_GAS_LIMIT = 3500000n;
|
|
96
104
|
type SubtensorDelivery = 'liquid' | 'staked';
|
|
97
105
|
type SubtensorSource = 'liquid' | 'staked';
|
|
98
|
-
type BridgeAsset = 'tao' | 'sn80';
|
|
106
|
+
type BridgeAsset = 'tao' | 'sn80' | 'sn10' | 'sn78';
|
|
99
107
|
/**
|
|
100
108
|
* Optional partner (integrator) fee, charged ON TOP of the bridged amount and
|
|
101
109
|
* paid to `recipient` on the source chain. The full `amountWei` still crosses.
|
|
@@ -449,4 +457,4 @@ interface ViemTransactionRequest {
|
|
|
449
457
|
}
|
|
450
458
|
declare function toViemTransaction(transaction: PreparedTransaction): Readonly<ViemTransactionRequest>;
|
|
451
459
|
|
|
452
|
-
export { BASE_CCIP_SELECTOR, BASE_CHAIN_ID, BASIS_POINTS, type BaseToSubtensorRequest, type BridgeAsset, type BridgeDirection, type BridgePreparation, type BridgeSourceStatus, type BridgeSourceStatusRequest, type BridgeSourceTransactionStatus, type BuildBaseToSubtensorPlanRequest, type BuildEvmToSubtensorPlanRequest, type BuildSubtensorToBasePlanRequest, type BuildSubtensorToEvmPlanRequest, type CcipDeliveryCheckpoint, type CcipDeliveryStatus, type CcipDeliveryStatusRequest, type CreateVaultRequest, type DepositVaultRequest, EVM_TO_SUBTENSOR_DESTINATION_GAS_LIMIT, EVM_WEI_PER_RAO, type Eip1193TransactionRequest, type EstimateRoundedStakeRequest, type EthersCompatibleTransactionRequest, type EvmToSubtensorRequest, FOREVERMONEY_DEPLOYMENT_VERSION, type ForeverMoneyClient, type ForeverMoneyClientOptions, type ForeverMoneyDeployment, ForeverMoneyError, type ForeverMoneyErrorCode, type ForeverMoneyEvmChain, GAS_LIMIT_BUFFER_BPS, type HttpTransportOptions, type LegacyRpcProvider, MAX_PARTNER_FEE_BPS, MAX_STAKE_PULLS, MIN_LIQUID_BASE_TO_SUBTENSOR_WEI, MIN_LIQUID_EVM_TO_SUBTENSOR_WEI, MIN_LIQUID_SUBTENSOR_TO_EVM_WEI, NETWORK_FEE_BUFFER_BPS, type PartnerFee, type PreparedTransaction, RAO_PER_TAO, ROBINHOOD_CCIP_SELECTOR, ROBINHOOD_CHAIN_ID, type ReceiptLog, type RoundedStakeEstimate, type RpcRequest, type RpcTransport, SN80_NETUID, SUBTENSOR_CCIP_SELECTOR, SUBTENSOR_CHAIN_ID, type StakePosition, type StakePull, type StakeRoundingOptions, type StakeRoundingResult, type SubtensorDelivery, type SubtensorSource, type SubtensorToBaseRequest, type SubtensorToEvmRequest, type TrackingProvider, type TransactionAction, type TransactionPlan, type TransactionReceiptLike, type TransactionStep, type TransactionStepKind, type VaultStashToken, type VaultTokenAllowance, type ViemTransactionRequest, type WithdrawVaultRequest, assertWholeRao, bridgeMessageIdFromReceipt, buildBaseToSubtensorPlan, buildClaimVaultFeesPlan, buildCreateVaultPlan, buildDepositVaultPlan, buildEvmToSubtensorPlan, buildSetVaultStakingPlan, buildSubtensorToBasePlan, buildSubtensorToEvmPlan, buildWithdrawVaultPlan, createForeverMoneyClient, destinationChainId, estimateRoundedStake, evmChainFromBridgeDirection, evmToMirrorSS58, feeWithBuffer, foreverMoneyAbis, foreverMoneyDeployment, formatTaoAmount, gasLimitWithBuffer, getBridgeSourceStatus, getCcipDeliveryCheckpoint, getCcipDeliveryStatus, getForeverMoneyEvmDeployment, http, isBittensorSS58, isEvmToSubtensorDirection, normalizeEvmAddress, normalizeSS58, parseTaoAmount, partnerFeeCut, partnerFeeTaoTopUp, sourceChainId, ss58ToPublicKey, stakedMinimumOutput, strandedStakeSource, toEip1193Transaction, toEthersTransaction, toViemTransaction, vaultManagerFromCreationReceipt };
|
|
460
|
+
export { BASE_CCIP_SELECTOR, BASE_CHAIN_ID, BASIS_POINTS, type BaseToSubtensorRequest, type BridgeAsset, type BridgeDirection, type BridgePreparation, type BridgeSourceStatus, type BridgeSourceStatusRequest, type BridgeSourceTransactionStatus, type BuildBaseToSubtensorPlanRequest, type BuildEvmToSubtensorPlanRequest, type BuildSubtensorToBasePlanRequest, type BuildSubtensorToEvmPlanRequest, type CcipDeliveryCheckpoint, type CcipDeliveryStatus, type CcipDeliveryStatusRequest, type CreateVaultRequest, type DepositVaultRequest, EVM_TO_SUBTENSOR_DESTINATION_GAS_LIMIT, EVM_WEI_PER_RAO, type Eip1193TransactionRequest, type EstimateRoundedStakeRequest, type EthersCompatibleTransactionRequest, type EvmToSubtensorRequest, FOREVERMONEY_DEPLOYMENT_VERSION, type ForeverMoneyClient, type ForeverMoneyClientOptions, type ForeverMoneyDeployment, ForeverMoneyError, type ForeverMoneyErrorCode, type ForeverMoneyEvmChain, GAS_LIMIT_BUFFER_BPS, type HttpTransportOptions, type LegacyRpcProvider, MAX_PARTNER_FEE_BPS, MAX_STAKE_PULLS, MIN_LIQUID_BASE_TO_SUBTENSOR_WEI, MIN_LIQUID_EVM_TO_SUBTENSOR_WEI, MIN_LIQUID_SUBTENSOR_TO_EVM_WEI, NETWORK_FEE_BUFFER_BPS, type PartnerFee, type PreparedTransaction, RAO_PER_TAO, ROBINHOOD_CCIP_SELECTOR, ROBINHOOD_CHAIN_ID, type ReceiptLog, type RoundedStakeEstimate, type RpcRequest, type RpcTransport, SN10_NETUID, SN78_NETUID, SN80_NETUID, SUBTENSOR_CCIP_SELECTOR, SUBTENSOR_CHAIN_ID, type StakePosition, type StakePull, type StakeRoundingOptions, type StakeRoundingResult, type SubtensorDelivery, type SubtensorSource, type SubtensorToBaseRequest, type SubtensorToEvmRequest, type TrackingProvider, type TransactionAction, type TransactionPlan, type TransactionReceiptLike, type TransactionStep, type TransactionStepKind, type VaultStashToken, type VaultTokenAllowance, type ViemTransactionRequest, type WithdrawVaultRequest, assertWholeRao, bridgeMessageIdFromReceipt, buildBaseToSubtensorPlan, buildClaimVaultFeesPlan, buildCreateVaultPlan, buildDepositVaultPlan, buildEvmToSubtensorPlan, buildSetVaultStakingPlan, buildSubtensorToBasePlan, buildSubtensorToEvmPlan, buildWithdrawVaultPlan, createForeverMoneyClient, destinationChainId, estimateRoundedStake, evmChainFromBridgeDirection, evmToMirrorSS58, feeWithBuffer, foreverMoneyAbis, foreverMoneyDeployment, formatTaoAmount, gasLimitWithBuffer, getBridgeSourceStatus, getCcipDeliveryCheckpoint, getCcipDeliveryStatus, getForeverMoneyEvmDeployment, http, isBittensorSS58, isEvmToSubtensorDirection, normalizeEvmAddress, normalizeSS58, parseTaoAmount, partnerFeeCut, partnerFeeTaoTopUp, sourceChainId, ss58ToPublicKey, stakedMinimumOutput, strandedStakeSource, toEip1193Transaction, toEthersTransaction, toViemTransaction, vaultManagerFromCreationReceipt };
|
package/dist/index.d.ts
CHANGED
|
@@ -8,10 +8,12 @@ declare const ROBINHOOD_CCIP_SELECTOR = 6180753054346818345n;
|
|
|
8
8
|
declare const SUBTENSOR_CCIP_SELECTOR = 2135107236357186872n;
|
|
9
9
|
declare const RAO_PER_TAO = 1000000000n;
|
|
10
10
|
declare const EVM_WEI_PER_RAO = 1000000000n;
|
|
11
|
+
declare const SN78_NETUID = 78n;
|
|
12
|
+
declare const SN10_NETUID = 10n;
|
|
11
13
|
declare const SN80_NETUID = 80n;
|
|
12
|
-
declare const FOREVERMONEY_DEPLOYMENT_VERSION: "1.
|
|
14
|
+
declare const FOREVERMONEY_DEPLOYMENT_VERSION: "1.6.0";
|
|
13
15
|
declare const foreverMoneyDeployment: Readonly<{
|
|
14
|
-
version: "1.
|
|
16
|
+
version: "1.6.0";
|
|
15
17
|
base: Readonly<{
|
|
16
18
|
key: "base";
|
|
17
19
|
name: "Base";
|
|
@@ -21,6 +23,8 @@ declare const foreverMoneyDeployment: Readonly<{
|
|
|
21
23
|
gateway: `0x${string}`;
|
|
22
24
|
legacyGateways: readonly `0x${string}`[];
|
|
23
25
|
wrappedTao: `0x${string}`;
|
|
26
|
+
wrappedSn78: `0x${string}`;
|
|
27
|
+
wrappedSn10: `0x${string}`;
|
|
24
28
|
wrappedSn80: `0x${string}`;
|
|
25
29
|
ccipRouter: `0x${string}`;
|
|
26
30
|
ccipOffRampFromSubtensor: `0x${string}`;
|
|
@@ -40,6 +44,8 @@ declare const foreverMoneyDeployment: Readonly<{
|
|
|
40
44
|
gateway: `0x${string}`;
|
|
41
45
|
legacyGateways: readonly `0x${string}`[];
|
|
42
46
|
wrappedTao: `0x${string}`;
|
|
47
|
+
wrappedSn78: `0x${string}`;
|
|
48
|
+
wrappedSn10: `0x${string}`;
|
|
43
49
|
wrappedSn80: `0x${string}`;
|
|
44
50
|
ccipRouter: `0x${string}`;
|
|
45
51
|
ccipOffRampFromSubtensor: `0x${string}`;
|
|
@@ -53,6 +59,8 @@ declare const foreverMoneyDeployment: Readonly<{
|
|
|
53
59
|
legacyGateways: readonly `0x${string}`[];
|
|
54
60
|
alphaVault: `0x${string}`;
|
|
55
61
|
wrappedTao: `0x${string}`;
|
|
62
|
+
wrappedSn78: `0x${string}`;
|
|
63
|
+
wrappedSn10: `0x${string}`;
|
|
56
64
|
wrappedSn80: `0x${string}`;
|
|
57
65
|
ccipRouter: `0x${string}`;
|
|
58
66
|
ccipOffRampFromBase: `0x${string}`;
|
|
@@ -95,7 +103,7 @@ declare const MIN_LIQUID_SUBTENSOR_TO_EVM_WEI: bigint;
|
|
|
95
103
|
declare const EVM_TO_SUBTENSOR_DESTINATION_GAS_LIMIT = 3500000n;
|
|
96
104
|
type SubtensorDelivery = 'liquid' | 'staked';
|
|
97
105
|
type SubtensorSource = 'liquid' | 'staked';
|
|
98
|
-
type BridgeAsset = 'tao' | 'sn80';
|
|
106
|
+
type BridgeAsset = 'tao' | 'sn80' | 'sn10' | 'sn78';
|
|
99
107
|
/**
|
|
100
108
|
* Optional partner (integrator) fee, charged ON TOP of the bridged amount and
|
|
101
109
|
* paid to `recipient` on the source chain. The full `amountWei` still crosses.
|
|
@@ -449,4 +457,4 @@ interface ViemTransactionRequest {
|
|
|
449
457
|
}
|
|
450
458
|
declare function toViemTransaction(transaction: PreparedTransaction): Readonly<ViemTransactionRequest>;
|
|
451
459
|
|
|
452
|
-
export { BASE_CCIP_SELECTOR, BASE_CHAIN_ID, BASIS_POINTS, type BaseToSubtensorRequest, type BridgeAsset, type BridgeDirection, type BridgePreparation, type BridgeSourceStatus, type BridgeSourceStatusRequest, type BridgeSourceTransactionStatus, type BuildBaseToSubtensorPlanRequest, type BuildEvmToSubtensorPlanRequest, type BuildSubtensorToBasePlanRequest, type BuildSubtensorToEvmPlanRequest, type CcipDeliveryCheckpoint, type CcipDeliveryStatus, type CcipDeliveryStatusRequest, type CreateVaultRequest, type DepositVaultRequest, EVM_TO_SUBTENSOR_DESTINATION_GAS_LIMIT, EVM_WEI_PER_RAO, type Eip1193TransactionRequest, type EstimateRoundedStakeRequest, type EthersCompatibleTransactionRequest, type EvmToSubtensorRequest, FOREVERMONEY_DEPLOYMENT_VERSION, type ForeverMoneyClient, type ForeverMoneyClientOptions, type ForeverMoneyDeployment, ForeverMoneyError, type ForeverMoneyErrorCode, type ForeverMoneyEvmChain, GAS_LIMIT_BUFFER_BPS, type HttpTransportOptions, type LegacyRpcProvider, MAX_PARTNER_FEE_BPS, MAX_STAKE_PULLS, MIN_LIQUID_BASE_TO_SUBTENSOR_WEI, MIN_LIQUID_EVM_TO_SUBTENSOR_WEI, MIN_LIQUID_SUBTENSOR_TO_EVM_WEI, NETWORK_FEE_BUFFER_BPS, type PartnerFee, type PreparedTransaction, RAO_PER_TAO, ROBINHOOD_CCIP_SELECTOR, ROBINHOOD_CHAIN_ID, type ReceiptLog, type RoundedStakeEstimate, type RpcRequest, type RpcTransport, SN80_NETUID, SUBTENSOR_CCIP_SELECTOR, SUBTENSOR_CHAIN_ID, type StakePosition, type StakePull, type StakeRoundingOptions, type StakeRoundingResult, type SubtensorDelivery, type SubtensorSource, type SubtensorToBaseRequest, type SubtensorToEvmRequest, type TrackingProvider, type TransactionAction, type TransactionPlan, type TransactionReceiptLike, type TransactionStep, type TransactionStepKind, type VaultStashToken, type VaultTokenAllowance, type ViemTransactionRequest, type WithdrawVaultRequest, assertWholeRao, bridgeMessageIdFromReceipt, buildBaseToSubtensorPlan, buildClaimVaultFeesPlan, buildCreateVaultPlan, buildDepositVaultPlan, buildEvmToSubtensorPlan, buildSetVaultStakingPlan, buildSubtensorToBasePlan, buildSubtensorToEvmPlan, buildWithdrawVaultPlan, createForeverMoneyClient, destinationChainId, estimateRoundedStake, evmChainFromBridgeDirection, evmToMirrorSS58, feeWithBuffer, foreverMoneyAbis, foreverMoneyDeployment, formatTaoAmount, gasLimitWithBuffer, getBridgeSourceStatus, getCcipDeliveryCheckpoint, getCcipDeliveryStatus, getForeverMoneyEvmDeployment, http, isBittensorSS58, isEvmToSubtensorDirection, normalizeEvmAddress, normalizeSS58, parseTaoAmount, partnerFeeCut, partnerFeeTaoTopUp, sourceChainId, ss58ToPublicKey, stakedMinimumOutput, strandedStakeSource, toEip1193Transaction, toEthersTransaction, toViemTransaction, vaultManagerFromCreationReceipt };
|
|
460
|
+
export { BASE_CCIP_SELECTOR, BASE_CHAIN_ID, BASIS_POINTS, type BaseToSubtensorRequest, type BridgeAsset, type BridgeDirection, type BridgePreparation, type BridgeSourceStatus, type BridgeSourceStatusRequest, type BridgeSourceTransactionStatus, type BuildBaseToSubtensorPlanRequest, type BuildEvmToSubtensorPlanRequest, type BuildSubtensorToBasePlanRequest, type BuildSubtensorToEvmPlanRequest, type CcipDeliveryCheckpoint, type CcipDeliveryStatus, type CcipDeliveryStatusRequest, type CreateVaultRequest, type DepositVaultRequest, EVM_TO_SUBTENSOR_DESTINATION_GAS_LIMIT, EVM_WEI_PER_RAO, type Eip1193TransactionRequest, type EstimateRoundedStakeRequest, type EthersCompatibleTransactionRequest, type EvmToSubtensorRequest, FOREVERMONEY_DEPLOYMENT_VERSION, type ForeverMoneyClient, type ForeverMoneyClientOptions, type ForeverMoneyDeployment, ForeverMoneyError, type ForeverMoneyErrorCode, type ForeverMoneyEvmChain, GAS_LIMIT_BUFFER_BPS, type HttpTransportOptions, type LegacyRpcProvider, MAX_PARTNER_FEE_BPS, MAX_STAKE_PULLS, MIN_LIQUID_BASE_TO_SUBTENSOR_WEI, MIN_LIQUID_EVM_TO_SUBTENSOR_WEI, MIN_LIQUID_SUBTENSOR_TO_EVM_WEI, NETWORK_FEE_BUFFER_BPS, type PartnerFee, type PreparedTransaction, RAO_PER_TAO, ROBINHOOD_CCIP_SELECTOR, ROBINHOOD_CHAIN_ID, type ReceiptLog, type RoundedStakeEstimate, type RpcRequest, type RpcTransport, SN10_NETUID, SN78_NETUID, SN80_NETUID, SUBTENSOR_CCIP_SELECTOR, SUBTENSOR_CHAIN_ID, type StakePosition, type StakePull, type StakeRoundingOptions, type StakeRoundingResult, type SubtensorDelivery, type SubtensorSource, type SubtensorToBaseRequest, type SubtensorToEvmRequest, type TrackingProvider, type TransactionAction, type TransactionPlan, type TransactionReceiptLike, type TransactionStep, type TransactionStepKind, type VaultStashToken, type VaultTokenAllowance, type ViemTransactionRequest, type WithdrawVaultRequest, assertWholeRao, bridgeMessageIdFromReceipt, buildBaseToSubtensorPlan, buildClaimVaultFeesPlan, buildCreateVaultPlan, buildDepositVaultPlan, buildEvmToSubtensorPlan, buildSetVaultStakingPlan, buildSubtensorToBasePlan, buildSubtensorToEvmPlan, buildWithdrawVaultPlan, createForeverMoneyClient, destinationChainId, estimateRoundedStake, evmChainFromBridgeDirection, evmToMirrorSS58, feeWithBuffer, foreverMoneyAbis, foreverMoneyDeployment, formatTaoAmount, gasLimitWithBuffer, getBridgeSourceStatus, getCcipDeliveryCheckpoint, getCcipDeliveryStatus, getForeverMoneyEvmDeployment, http, isBittensorSS58, isEvmToSubtensorDirection, normalizeEvmAddress, normalizeSS58, parseTaoAmount, partnerFeeCut, partnerFeeTaoTopUp, sourceChainId, ss58ToPublicKey, stakedMinimumOutput, strandedStakeSource, toEip1193Transaction, toEthersTransaction, toViemTransaction, vaultManagerFromCreationReceipt };
|
package/dist/index.js
CHANGED
|
@@ -8,8 +8,10 @@ var ROBINHOOD_CCIP_SELECTOR = 6180753054346818345n;
|
|
|
8
8
|
var SUBTENSOR_CCIP_SELECTOR = 2135107236357186872n;
|
|
9
9
|
var RAO_PER_TAO = 1000000000n;
|
|
10
10
|
var EVM_WEI_PER_RAO = 1000000000n;
|
|
11
|
+
var SN78_NETUID = 78n;
|
|
12
|
+
var SN10_NETUID = 10n;
|
|
11
13
|
var SN80_NETUID = 80n;
|
|
12
|
-
var FOREVERMONEY_DEPLOYMENT_VERSION = "1.
|
|
14
|
+
var FOREVERMONEY_DEPLOYMENT_VERSION = "1.6.0";
|
|
13
15
|
var foreverMoneyDeployment = Object.freeze({
|
|
14
16
|
version: FOREVERMONEY_DEPLOYMENT_VERSION,
|
|
15
17
|
base: Object.freeze({
|
|
@@ -27,6 +29,12 @@ var foreverMoneyDeployment = Object.freeze({
|
|
|
27
29
|
wrappedTao: getAddress(
|
|
28
30
|
"0xf3081494b87e8d5fb7960f066e931d1d0e6e3d67"
|
|
29
31
|
),
|
|
32
|
+
wrappedSn78: getAddress(
|
|
33
|
+
"0x6e2feEE56bc5F0Db2104Ab1dac2cf1Fb0334eb49"
|
|
34
|
+
),
|
|
35
|
+
wrappedSn10: getAddress(
|
|
36
|
+
"0xDdDE5965D49e69b6362BD8743e139a45dBFEb7b3"
|
|
37
|
+
),
|
|
30
38
|
wrappedSn80: getAddress(
|
|
31
39
|
"0x6f63d869011f95274498023b4abfc00b30c34378"
|
|
32
40
|
),
|
|
@@ -62,6 +70,12 @@ var foreverMoneyDeployment = Object.freeze({
|
|
|
62
70
|
wrappedTao: getAddress(
|
|
63
71
|
"0xf3081494B87e8D5fb7960f066E931D1D0e6E3d67"
|
|
64
72
|
),
|
|
73
|
+
wrappedSn78: getAddress(
|
|
74
|
+
"0x6e2feEE56bc5F0Db2104Ab1dac2cf1Fb0334eb49"
|
|
75
|
+
),
|
|
76
|
+
wrappedSn10: getAddress(
|
|
77
|
+
"0xDdDE5965D49e69b6362BD8743e139a45dBFEb7b3"
|
|
78
|
+
),
|
|
65
79
|
wrappedSn80: getAddress(
|
|
66
80
|
"0x6f63d869011f95274498023b4abfc00b30c34378"
|
|
67
81
|
),
|
|
@@ -91,6 +105,12 @@ var foreverMoneyDeployment = Object.freeze({
|
|
|
91
105
|
wrappedTao: getAddress(
|
|
92
106
|
"0xC5b6C1632d34901239396F5E1BDe54B342900256"
|
|
93
107
|
),
|
|
108
|
+
wrappedSn78: getAddress(
|
|
109
|
+
"0xF2a747b004fACa8EAB646948117499E25CB8641d"
|
|
110
|
+
),
|
|
111
|
+
wrappedSn10: getAddress(
|
|
112
|
+
"0xcd0836D1ecE4AEDf5B39f2792e0790BBE79449b3"
|
|
113
|
+
),
|
|
94
114
|
wrappedSn80: getAddress(
|
|
95
115
|
"0xfD628dE75EF96f0A5C59659159C6cA81E0DC2222"
|
|
96
116
|
),
|
|
@@ -738,18 +758,19 @@ function assertPartnerFeeAllowed(fee, maxBps) {
|
|
|
738
758
|
}
|
|
739
759
|
}
|
|
740
760
|
function bridgeAsset(evmChain, asset = "tao") {
|
|
741
|
-
if (asset !== "tao" && asset !== "sn80") {
|
|
761
|
+
if (asset !== "tao" && asset !== "sn80" && asset !== "sn10" && asset !== "sn78") {
|
|
742
762
|
throw new ForeverMoneyError(
|
|
743
763
|
"INVALID_TRANSACTION_PLAN",
|
|
744
|
-
'Asset must be "tao" or "
|
|
764
|
+
'Asset must be "tao", "sn80", "sn10", or "sn78".'
|
|
745
765
|
);
|
|
746
766
|
}
|
|
747
767
|
const evm = getForeverMoneyEvmDeployment(evmChain);
|
|
748
|
-
|
|
749
|
-
|
|
750
|
-
|
|
751
|
-
|
|
752
|
-
|
|
768
|
+
const tokenKey = asset === "sn78" ? "wrappedSn78" : asset === "sn10" ? "wrappedSn10" : "wrappedSn80";
|
|
769
|
+
return asset !== "tao" ? {
|
|
770
|
+
evmToken: evm.contracts[tokenKey],
|
|
771
|
+
subtensorToken: foreverMoneyDeployment.subtensor.contracts[tokenKey],
|
|
772
|
+
label: asset.toUpperCase(),
|
|
773
|
+
wrappedLabel: asset.toUpperCase()
|
|
753
774
|
} : {
|
|
754
775
|
evmToken: evm.contracts.wrappedTao,
|
|
755
776
|
subtensorToken: foreverMoneyDeployment.subtensor.contracts.wrappedTao,
|
|
@@ -758,16 +779,17 @@ function bridgeAsset(evmChain, asset = "tao") {
|
|
|
758
779
|
};
|
|
759
780
|
}
|
|
760
781
|
function assertAssetMode(asset, mode) {
|
|
761
|
-
if (asset === "sn80" && mode !== "staked") {
|
|
782
|
+
if ((asset === "sn80" || asset === "sn10" || asset === "sn78") && mode !== "staked") {
|
|
762
783
|
throw new ForeverMoneyError(
|
|
763
784
|
"INVALID_TRANSACTION_PLAN",
|
|
764
|
-
|
|
785
|
+
`${asset.toUpperCase()} bridging requires staked subnet ${asset === "sn78" ? SN78_NETUID : asset === "sn10" ? SN10_NETUID : SN80_NETUID} input or delivery; liquid TAO conversion is not supported.`
|
|
765
786
|
);
|
|
766
787
|
}
|
|
767
788
|
}
|
|
768
789
|
function sourceNetuid(input) {
|
|
769
790
|
if (input.source !== "staked") return void 0;
|
|
770
|
-
const
|
|
791
|
+
const assetNetuid = input.asset === "sn78" ? SN78_NETUID : input.asset === "sn10" ? SN10_NETUID : input.asset === "sn80" ? SN80_NETUID : void 0;
|
|
792
|
+
const netuid = input.netuid ?? assetNetuid;
|
|
771
793
|
if (netuid === void 0) {
|
|
772
794
|
throw new ForeverMoneyError(
|
|
773
795
|
"INVALID_TRANSACTION_PLAN",
|
|
@@ -775,10 +797,10 @@ function sourceNetuid(input) {
|
|
|
775
797
|
);
|
|
776
798
|
}
|
|
777
799
|
assertNonNegativeAmount(netuid, "netuid");
|
|
778
|
-
if (
|
|
800
|
+
if (assetNetuid !== void 0 && netuid !== assetNetuid) {
|
|
779
801
|
throw new ForeverMoneyError(
|
|
780
802
|
"INVALID_TRANSACTION_PLAN",
|
|
781
|
-
|
|
803
|
+
`${input.asset.toUpperCase()} staking approvals must use netuid ${assetNetuid}.`
|
|
782
804
|
);
|
|
783
805
|
}
|
|
784
806
|
return netuid;
|
|
@@ -2508,6 +2530,8 @@ export {
|
|
|
2508
2530
|
RAO_PER_TAO,
|
|
2509
2531
|
ROBINHOOD_CCIP_SELECTOR,
|
|
2510
2532
|
ROBINHOOD_CHAIN_ID,
|
|
2533
|
+
SN10_NETUID,
|
|
2534
|
+
SN78_NETUID,
|
|
2511
2535
|
SN80_NETUID,
|
|
2512
2536
|
SUBTENSOR_CCIP_SELECTOR,
|
|
2513
2537
|
SUBTENSOR_CHAIN_ID,
|