@folks-finance/xchain-sdk 0.0.30 → 0.0.31
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/dist/chains/evm/hub/utils/message.js +20 -4
- package/dist/chains/evm/hub/utils/message.js.map +1 -1
- package/dist/utils/random.d.ts +1 -0
- package/dist/utils/random.js +4 -0
- package/dist/utils/random.js.map +1 -0
- package/package.json +1 -1
- package/src/chains/evm/hub/utils/message.ts +23 -5
- package/src/utils/random.ts +3 -0
|
@@ -2,6 +2,8 @@ import { RECEIVE_TOKEN_ACTIONS } from "../../../../common/constants/message.js";
|
|
|
2
2
|
import { ChainType } from "../../../../common/types/chain.js";
|
|
3
3
|
import { MessageDirection } from "../../../../common/types/gmp.js";
|
|
4
4
|
import { Action } from "../../../../common/types/message.js";
|
|
5
|
+
import { TokenType } from "../../../../common/types/token.js";
|
|
6
|
+
import { assertAdapterSupportsDataMessage, assertAdapterSupportsTokenMessage, } from "../../../../common/utils/adapter.js";
|
|
5
7
|
import { getSpokeChain, getSpokeTokenData } from "../../../../common/utils/chain.js";
|
|
6
8
|
import { buildMessageToSend, decodeMessagePayloadData, estimateAdapterReceiveGasLimit, } from "../../../../common/utils/messages.js";
|
|
7
9
|
import { getFolksTokenIdFromPool } from "../../../../common/utils/token.js";
|
|
@@ -17,12 +19,18 @@ export async function getHubRetryMessageExtraArgsAndAdapterFees(provider, hubCha
|
|
|
17
19
|
const folksTokenId = getFolksTokenIdFromPool(payloadData.poolId);
|
|
18
20
|
const spokeChain = getSpokeChain(payloadData.receiverFolksChainId, network);
|
|
19
21
|
const spokeTokenData = getSpokeTokenData(spokeChain, folksTokenId);
|
|
22
|
+
const hubSpokeChain = getSpokeChain(hubChain.folksChainId, network);
|
|
23
|
+
const hubSpokeTokenData = getSpokeTokenData(hubSpokeChain, folksTokenId);
|
|
24
|
+
if (hubSpokeTokenData.token.type === TokenType.CIRCLE)
|
|
25
|
+
assertAdapterSupportsTokenMessage(payloadData.receiverFolksChainId, returnAdapterId);
|
|
26
|
+
else
|
|
27
|
+
assertAdapterSupportsDataMessage(payloadData.receiverFolksChainId, returnAdapterId);
|
|
20
28
|
const returnData = {
|
|
21
29
|
amount: payloadData.amount,
|
|
22
30
|
};
|
|
23
31
|
const returnExtraArgs = {
|
|
24
32
|
folksTokenId,
|
|
25
|
-
token:
|
|
33
|
+
token: hubSpokeTokenData.token,
|
|
26
34
|
recipient: spokeTokenData.spokeAddress,
|
|
27
35
|
amount: payloadData.amount,
|
|
28
36
|
};
|
|
@@ -42,7 +50,9 @@ export async function getHubRetryMessageExtraArgsAndAdapterFees(provider, hubCha
|
|
|
42
50
|
};
|
|
43
51
|
const returnGasLimit = await estimateAdapterReceiveGasLimit(hubChain.folksChainId, payloadData.receiverFolksChainId, FolksCore.getEVMProvider(payloadData.receiverFolksChainId), network, MessageDirection.HubToSpoke, returnMessageBuilderParams);
|
|
44
52
|
const bridgeRouter = getBridgeRouterHubContract(provider, hubChain.bridgeRouterAddress);
|
|
45
|
-
const messageToSend = buildMessageToSend(ChainType.EVM, returnMessageBuilderParams
|
|
53
|
+
const messageToSend = buildMessageToSend(ChainType.EVM, returnMessageBuilderParams, {
|
|
54
|
+
gasLimit: returnGasLimit,
|
|
55
|
+
});
|
|
46
56
|
const adapterFees = await bridgeRouter.read.getSendFee([messageToSend]);
|
|
47
57
|
return {
|
|
48
58
|
adapterFees,
|
|
@@ -52,17 +62,23 @@ export async function getHubRetryMessageExtraArgsAndAdapterFees(provider, hubCha
|
|
|
52
62
|
export async function getHubReverseMessageExtraArgsAndAdapterFees(provider, hubChain, network, userAddress, message, extraArgsParams, payload) {
|
|
53
63
|
const { action, data } = payload;
|
|
54
64
|
const payloadData = decodeMessagePayloadData(action, data);
|
|
65
|
+
const folksTokenId = getFolksTokenIdFromPool(payloadData.poolId);
|
|
55
66
|
const returnAdapterId = extraArgsParams?.returnAdapterId ?? message.returnAdapterId;
|
|
56
67
|
const accountId = extraArgsParams?.accountId ?? payload.accountId;
|
|
57
|
-
const folksTokenId = getFolksTokenIdFromPool(payloadData.poolId);
|
|
58
68
|
const spokeChain = getSpokeChain(message.sourceChainId, network);
|
|
59
69
|
const spokeTokenData = getSpokeTokenData(spokeChain, folksTokenId);
|
|
70
|
+
const hubSpokeChain = getSpokeChain(hubChain.folksChainId, network);
|
|
71
|
+
const hubSpokeTokenData = getSpokeTokenData(hubSpokeChain, folksTokenId);
|
|
72
|
+
if (hubSpokeTokenData.token.type === TokenType.CIRCLE)
|
|
73
|
+
assertAdapterSupportsTokenMessage(message.sourceChainId, returnAdapterId);
|
|
74
|
+
else
|
|
75
|
+
assertAdapterSupportsDataMessage(message.sourceChainId, returnAdapterId);
|
|
60
76
|
const returnData = {
|
|
61
77
|
amount: payloadData.amount,
|
|
62
78
|
};
|
|
63
79
|
const returnExtraArgs = {
|
|
64
80
|
folksTokenId,
|
|
65
|
-
token:
|
|
81
|
+
token: hubSpokeTokenData.token,
|
|
66
82
|
recipient: spokeTokenData.spokeAddress,
|
|
67
83
|
amount: payloadData.amount,
|
|
68
84
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"message.js","sourceRoot":"","sources":["../../../../../src/chains/evm/hub/utils/message.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,qBAAqB,EAAE,MAAM,yCAAyC,CAAC;AAChF,OAAO,EAAE,SAAS,EAAE,MAAM,mCAAmC,CAAC;AAC9D,OAAO,EAAE,gBAAgB,EAAE,MAAM,iCAAiC,CAAC;AACnE,OAAO,EAAE,MAAM,EAAE,MAAM,qCAAqC,CAAC;AAC7D,OAAO,EAAE,aAAa,EAAE,iBAAiB,EAAE,MAAM,mCAAmC,CAAC;AACrF,OAAO,EACL,kBAAkB,EAClB,wBAAwB,EACxB,8BAA8B,GAC/B,MAAM,sCAAsC,CAAC;AAC9C,OAAO,EAAE,uBAAuB,EAAE,MAAM,mCAAmC,CAAC;AAC5E,OAAO,EAAE,SAAS,EAAE,MAAM,uCAAuC,CAAC;AAElE,OAAO,EAAE,0BAA0B,EAAE,MAAM,eAAe,CAAC;AAsB3D,MAAM,CAAC,KAAK,UAAU,yCAAyC,CAC7D,QAAqB,EACrB,QAAkB,EAClB,OAAoB,EACpB,WAA2B,EAC3B,OAAwB,EACxB,eAA4C,EAC5C,OAAgB;IAKhB,MAAM,eAAe,GAAG,eAAe,EAAE,eAAe,IAAI,OAAO,CAAC,eAAe,CAAC;IACpF,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,IAAI,EAAE,GAAG,OAAO,CAAC;IAE5C,6BAA6B;IAC7B,IAAI,CAAC,qBAAqB,CAAC,QAAQ,CAAC,MAAM,CAAC;QACzC,OAAO,EAAE,WAAW,EAAE,EAAE,EAAE,SAAS,EAAE,EAAE,eAAe,EAAE,cAAc,EAAE,EAAE,EAAE,EAAE,CAAC;IACjF,MAAM,WAAW,GAAG,wBAAwB,CAAC,MAA4B,EAAE,IAAI,CAAC,CAAC;IAEjF,MAAM,YAAY,GAAG,uBAAuB,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC;IAEjE,MAAM,UAAU,GAAG,aAAa,CAAC,WAAW,CAAC,oBAAoB,EAAE,OAAO,CAAC,CAAC;IAC5E,MAAM,cAAc,GAAG,iBAAiB,CAAC,UAAU,EAAE,YAAY,CAAC,CAAC;
|
|
1
|
+
{"version":3,"file":"message.js","sourceRoot":"","sources":["../../../../../src/chains/evm/hub/utils/message.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare function getRandomElement<T>(arr: ReadonlyArray<T>): T;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"random.js","sourceRoot":"","sources":["../../src/utils/random.ts"],"names":[],"mappings":"AAAA,MAAM,UAAU,gBAAgB,CAAI,GAAqB;IACvD,OAAO,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,EAAE,GAAG,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC;AACrD,CAAC"}
|
package/package.json
CHANGED
|
@@ -2,6 +2,11 @@ import { RECEIVE_TOKEN_ACTIONS } from "../../../../common/constants/message.js";
|
|
|
2
2
|
import { ChainType } from "../../../../common/types/chain.js";
|
|
3
3
|
import { MessageDirection } from "../../../../common/types/gmp.js";
|
|
4
4
|
import { Action } from "../../../../common/types/message.js";
|
|
5
|
+
import { TokenType } from "../../../../common/types/token.js";
|
|
6
|
+
import {
|
|
7
|
+
assertAdapterSupportsDataMessage,
|
|
8
|
+
assertAdapterSupportsTokenMessage,
|
|
9
|
+
} from "../../../../common/utils/adapter.js";
|
|
5
10
|
import { getSpokeChain, getSpokeTokenData } from "../../../../common/utils/chain.js";
|
|
6
11
|
import {
|
|
7
12
|
buildMessageToSend,
|
|
@@ -57,13 +62,19 @@ export async function getHubRetryMessageExtraArgsAndAdapterFees(
|
|
|
57
62
|
|
|
58
63
|
const spokeChain = getSpokeChain(payloadData.receiverFolksChainId, network);
|
|
59
64
|
const spokeTokenData = getSpokeTokenData(spokeChain, folksTokenId);
|
|
65
|
+
const hubSpokeChain = getSpokeChain(hubChain.folksChainId, network);
|
|
66
|
+
const hubSpokeTokenData = getSpokeTokenData(hubSpokeChain, folksTokenId);
|
|
67
|
+
|
|
68
|
+
if (hubSpokeTokenData.token.type === TokenType.CIRCLE)
|
|
69
|
+
assertAdapterSupportsTokenMessage(payloadData.receiverFolksChainId, returnAdapterId);
|
|
70
|
+
else assertAdapterSupportsDataMessage(payloadData.receiverFolksChainId, returnAdapterId);
|
|
60
71
|
|
|
61
72
|
const returnData: SendTokenMessageData = {
|
|
62
73
|
amount: payloadData.amount,
|
|
63
74
|
};
|
|
64
75
|
const returnExtraArgs: SendTokenExtraArgs = {
|
|
65
76
|
folksTokenId,
|
|
66
|
-
token:
|
|
77
|
+
token: hubSpokeTokenData.token,
|
|
67
78
|
recipient: spokeTokenData.spokeAddress,
|
|
68
79
|
amount: payloadData.amount,
|
|
69
80
|
};
|
|
@@ -91,7 +102,9 @@ export async function getHubRetryMessageExtraArgsAndAdapterFees(
|
|
|
91
102
|
);
|
|
92
103
|
|
|
93
104
|
const bridgeRouter = getBridgeRouterHubContract(provider, hubChain.bridgeRouterAddress);
|
|
94
|
-
const messageToSend = buildMessageToSend(ChainType.EVM, returnMessageBuilderParams
|
|
105
|
+
const messageToSend = buildMessageToSend(ChainType.EVM, returnMessageBuilderParams, {
|
|
106
|
+
gasLimit: returnGasLimit,
|
|
107
|
+
});
|
|
95
108
|
const adapterFees = await bridgeRouter.read.getSendFee([messageToSend]);
|
|
96
109
|
|
|
97
110
|
return {
|
|
@@ -114,21 +127,26 @@ export async function getHubReverseMessageExtraArgsAndAdapterFees(
|
|
|
114
127
|
}> {
|
|
115
128
|
const { action, data } = payload;
|
|
116
129
|
const payloadData = decodeMessagePayloadData(action as ReversibleHubAction, data);
|
|
130
|
+
const folksTokenId = getFolksTokenIdFromPool(payloadData.poolId);
|
|
117
131
|
|
|
118
132
|
const returnAdapterId = extraArgsParams?.returnAdapterId ?? message.returnAdapterId;
|
|
119
133
|
const accountId = extraArgsParams?.accountId ?? payload.accountId;
|
|
120
134
|
|
|
121
|
-
const folksTokenId = getFolksTokenIdFromPool(payloadData.poolId);
|
|
122
|
-
|
|
123
135
|
const spokeChain = getSpokeChain(message.sourceChainId, network);
|
|
124
136
|
const spokeTokenData = getSpokeTokenData(spokeChain, folksTokenId);
|
|
137
|
+
const hubSpokeChain = getSpokeChain(hubChain.folksChainId, network);
|
|
138
|
+
const hubSpokeTokenData = getSpokeTokenData(hubSpokeChain, folksTokenId);
|
|
139
|
+
|
|
140
|
+
if (hubSpokeTokenData.token.type === TokenType.CIRCLE)
|
|
141
|
+
assertAdapterSupportsTokenMessage(message.sourceChainId, returnAdapterId);
|
|
142
|
+
else assertAdapterSupportsDataMessage(message.sourceChainId, returnAdapterId);
|
|
125
143
|
|
|
126
144
|
const returnData: SendTokenMessageData = {
|
|
127
145
|
amount: payloadData.amount,
|
|
128
146
|
};
|
|
129
147
|
const returnExtraArgs: SendTokenExtraArgs = {
|
|
130
148
|
folksTokenId,
|
|
131
|
-
token:
|
|
149
|
+
token: hubSpokeTokenData.token,
|
|
132
150
|
recipient: spokeTokenData.spokeAddress,
|
|
133
151
|
amount: payloadData.amount,
|
|
134
152
|
};
|