@0xsquid/react-hooks 6.3.9-evmos-beta.1 → 6.3.9-evmos-beta.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/dist/hooks/transaction/useAllowance.d.ts +7 -6
- package/dist/hooks/transaction/useAllowance.js +6 -5
- package/dist/hooks/transaction/useAllowance.js.map +1 -1
- package/dist/hooks/transaction/useApproval.js +14 -5
- package/dist/hooks/transaction/useApproval.js.map +1 -1
- package/package.json +1 -1
|
@@ -1,11 +1,12 @@
|
|
|
1
1
|
interface ERC20AllowanceParams {
|
|
2
|
-
tokenAddress
|
|
3
|
-
ownerAddress
|
|
4
|
-
spenderAddress
|
|
5
|
-
amount
|
|
6
|
-
chainId
|
|
2
|
+
tokenAddress: string | undefined;
|
|
3
|
+
ownerAddress: string | undefined;
|
|
4
|
+
spenderAddress: string | undefined;
|
|
5
|
+
amount: bigint | undefined;
|
|
6
|
+
chainId: number | undefined;
|
|
7
|
+
enabled?: boolean;
|
|
7
8
|
}
|
|
8
|
-
export declare const useERC20Allowance: ({ tokenAddress, ownerAddress, spenderAddress, amount, chainId, }: ERC20AllowanceParams) => {
|
|
9
|
+
export declare const useERC20Allowance: ({ tokenAddress, ownerAddress, spenderAddress, amount, chainId, enabled, }: ERC20AllowanceParams) => {
|
|
9
10
|
hasAllowance: boolean;
|
|
10
11
|
error: Error;
|
|
11
12
|
isNativeToken?: undefined;
|
|
@@ -7,7 +7,7 @@ const parseAddress = (address) => {
|
|
|
7
7
|
}
|
|
8
8
|
return address;
|
|
9
9
|
};
|
|
10
|
-
export const useERC20Allowance = ({ tokenAddress, ownerAddress, spenderAddress, amount = BigInt(0), chainId, }) => {
|
|
10
|
+
export const useERC20Allowance = ({ tokenAddress, ownerAddress, spenderAddress, amount = BigInt(0), chainId, enabled = true, }) => {
|
|
11
11
|
const parsedTokenAddress = parseAddress(tokenAddress);
|
|
12
12
|
const parsedOwnerAddress = parseAddress(ownerAddress);
|
|
13
13
|
const parsedSpenderAddress = parseAddress(spenderAddress);
|
|
@@ -21,10 +21,11 @@ export const useERC20Allowance = ({ tokenAddress, ownerAddress, spenderAddress,
|
|
|
21
21
|
? [parsedOwnerAddress, parsedSpenderAddress]
|
|
22
22
|
: undefined,
|
|
23
23
|
query: {
|
|
24
|
-
enabled:
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
24
|
+
enabled: enabled &&
|
|
25
|
+
Boolean(parsedTokenAddress &&
|
|
26
|
+
parsedOwnerAddress &&
|
|
27
|
+
parsedSpenderAddress &&
|
|
28
|
+
!isNativeToken),
|
|
28
29
|
},
|
|
29
30
|
});
|
|
30
31
|
if (!parsedTokenAddress || !parsedOwnerAddress || !parsedSpenderAddress) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useAllowance.js","sourceRoot":"","sources":["../../../src/hooks/transaction/useAllowance.ts"],"names":[],"mappings":"AAAA,OAAO,EAAW,QAAQ,EAAE,SAAS,EAAE,MAAM,MAAM,CAAC;AACpD,OAAO,EAAE,eAAe,EAAE,MAAM,OAAO,CAAC;AACxC,OAAO,EAAE,qBAAqB,EAAE,MAAM,sBAAsB,CAAC;AAE7D,MAAM,YAAY,GAAG,CAAC,OAA2B,EAAkB,EAAE;IACnE,IAAI,CAAC,OAAO,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,EAAE;QACnC,OAAO,IAAI,CAAC;KACb;IACD,OAAO,OAAkB,CAAC;AAC5B,CAAC,CAAC;
|
|
1
|
+
{"version":3,"file":"useAllowance.js","sourceRoot":"","sources":["../../../src/hooks/transaction/useAllowance.ts"],"names":[],"mappings":"AAAA,OAAO,EAAW,QAAQ,EAAE,SAAS,EAAE,MAAM,MAAM,CAAC;AACpD,OAAO,EAAE,eAAe,EAAE,MAAM,OAAO,CAAC;AACxC,OAAO,EAAE,qBAAqB,EAAE,MAAM,sBAAsB,CAAC;AAE7D,MAAM,YAAY,GAAG,CAAC,OAA2B,EAAkB,EAAE;IACnE,IAAI,CAAC,OAAO,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,EAAE;QACnC,OAAO,IAAI,CAAC;KACb;IACD,OAAO,OAAkB,CAAC;AAC5B,CAAC,CAAC;AAWF,MAAM,CAAC,MAAM,iBAAiB,GAAG,CAAC,EAChC,YAAY,EACZ,YAAY,EACZ,cAAc,EACd,MAAM,GAAG,MAAM,CAAC,CAAC,CAAC,EAClB,OAAO,EACP,OAAO,GAAG,IAAI,GACO,EAAE,EAAE;IACzB,MAAM,kBAAkB,GAAG,YAAY,CAAC,YAAY,CAAC,CAAC;IACtD,MAAM,kBAAkB,GAAG,YAAY,CAAC,YAAY,CAAC,CAAC;IACtD,MAAM,oBAAoB,GAAG,YAAY,CAAC,cAAc,CAAC,CAAC;IAC1D,MAAM,aAAa,GACjB,kBAAkB,EAAE,WAAW,EAAE,KAAK,qBAAqB,CAAC,WAAW,EAAE,CAAC;IAE5E,MAAM,MAAM,GAAG,eAAe,CAAC;QAC7B,GAAG,EAAE,QAAQ;QACb,OAAO,EAAE,kBAAkB,IAAI,SAAS;QACxC,YAAY,EAAE,WAAW;QACzB,OAAO;QACP,IAAI,EACF,kBAAkB,IAAI,oBAAoB;YACxC,CAAC,CAAC,CAAC,kBAAkB,EAAE,oBAAoB,CAAC;YAC5C,CAAC,CAAC,SAAS;QACf,KAAK,EAAE;YACL,OAAO,EACL,OAAO;gBACP,OAAO,CACL,kBAAkB;oBAChB,kBAAkB;oBAClB,oBAAoB;oBACpB,CAAC,aAAa,CACjB;SACJ;KACF,CAAC,CAAC;IAEH,IAAI,CAAC,kBAAkB,IAAI,CAAC,kBAAkB,IAAI,CAAC,oBAAoB,EAAE;QACvE,OAAO;YACL,YAAY,EAAE,KAAK;YACnB,KAAK,EAAE,IAAI,KAAK,CAAC,4BAA4B,CAAC;SAC/C,CAAC;KACH;IAED,IAAI,aAAa,EAAE;QACjB,OAAO,EAAE,YAAY,EAAE,IAAI,EAAE,aAAa,EAAE,IAAI,EAAE,CAAC;KACpD;IAED,MAAM,cAAc,GAAG,MAAM,CAAC,IAAI,IAAI,MAAM,CAAC,CAAC,CAAC,CAAC;IAChD,MAAM,YAAY,GAAG,cAAc,IAAI,MAAM,CAAC;IAE9C,OAAO;QACL,KAAK,EAAE,MAAM;QACb,YAAY;QACZ,cAAc;KACf,CAAC;AACJ,CAAC,CAAC"}
|
|
@@ -24,22 +24,31 @@ export const useApproval = ({ squidRoute, }) => {
|
|
|
24
24
|
const { fromChain, toChain, fromToken, fromPrice } = useSwap();
|
|
25
25
|
const { switchChainAsync } = useSwitchChain();
|
|
26
26
|
const { connectedAddress: { address: sourceUserAddress }, } = useMultiChainWallet(fromChain);
|
|
27
|
-
const
|
|
27
|
+
const isSrcChainEvmos = isEvmosChain(fromChain);
|
|
28
|
+
const { hasAllowance: hasErc20Allowance, query: erc20AllowanceQuery, allowanceInWei: erc20AllowanceInWei, } = useERC20Allowance({
|
|
28
29
|
tokenAddress: fromToken?.address,
|
|
29
30
|
ownerAddress: sourceUserAddress,
|
|
30
31
|
spenderAddress: squidRoute?.transactionRequest
|
|
31
32
|
?.target,
|
|
32
33
|
amount: BigInt(squidRoute?.params.fromAmount ?? "0"),
|
|
33
34
|
chainId: Number(fromChain?.chainId),
|
|
35
|
+
enabled: !isSrcChainEvmos,
|
|
34
36
|
});
|
|
35
|
-
const { hasAllowance: hasIcs20Allowance } = useIcs20Allowance({
|
|
37
|
+
const { hasAllowance: hasIcs20Allowance, query: ics20AllowanceQuery, allowanceInWei: ics20AllowanceInWei, } = useIcs20Allowance({
|
|
36
38
|
ownerAddress: sourceUserAddress,
|
|
37
39
|
targetAddress: squidRoute?.transactionRequest
|
|
38
40
|
?.target,
|
|
39
41
|
amount: BigInt(squidRoute?.params.fromAmount ?? "0"),
|
|
40
42
|
chainId: Number(fromChain?.chainId),
|
|
41
|
-
enabled:
|
|
43
|
+
enabled: isSrcChainEvmos,
|
|
42
44
|
});
|
|
45
|
+
const hasAllowance = isSrcChainEvmos ? hasIcs20Allowance : hasErc20Allowance;
|
|
46
|
+
const allowanceInWei = isSrcChainEvmos
|
|
47
|
+
? ics20AllowanceInWei
|
|
48
|
+
: erc20AllowanceInWei;
|
|
49
|
+
const allowanceQuery = isSrcChainEvmos
|
|
50
|
+
? ics20AllowanceQuery
|
|
51
|
+
: erc20AllowanceQuery;
|
|
43
52
|
/**
|
|
44
53
|
* Checking if spending tokens is allowed for this source address
|
|
45
54
|
* On Success: storing the transaction
|
|
@@ -140,14 +149,14 @@ export const useApproval = ({ squidRoute, }) => {
|
|
|
140
149
|
console.error("Error switching network:", error);
|
|
141
150
|
}
|
|
142
151
|
let approveTx;
|
|
143
|
-
if (
|
|
152
|
+
if (isSrcChainEvmos) {
|
|
144
153
|
squidRoute.params.fromToken = evmosAddressToEvmAddress(squidRoute.params.fromToken);
|
|
145
154
|
}
|
|
146
155
|
if (isEvmosChain(toChain)) {
|
|
147
156
|
squidRoute.params.toToken = evmosAddressToEvmAddress(squidRoute.params.toToken);
|
|
148
157
|
}
|
|
149
158
|
console.log({ squidRoute, evmSigner });
|
|
150
|
-
if (
|
|
159
|
+
if (isSrcChainEvmos) {
|
|
151
160
|
console.log("CALL APPROVE");
|
|
152
161
|
// get channel from the route
|
|
153
162
|
const channel = squidRoute.estimate.actions[0].data
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useApproval.js","sourceRoot":"","sources":["../../../src/hooks/transaction/useApproval.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,QAAQ,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AAC9E,OAAO,EACL,UAAU,EACV,eAAe,EACf,cAAc,EACd,eAAe,GAChB,MAAM,OAAO,CAAC;AACf,OAAO,EAAE,YAAY,EAAE,IAAI,EAAE,SAAS,EAAE,MAAM,iCAAiC,CAAC;AAGhF,OAAO,EACL,SAAS,GAIV,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAChC,OAAO,QAAQ,MAAM,4BAA4B,CAAC;AAClD,OAAO,EAAE,SAAS,EAAE,qBAAqB,EAAE,MAAM,sBAAsB,CAAC;AACxE,OAAO,EACL,wBAAwB,EACxB,YAAY,EACZ,sBAAsB,EACtB,KAAK,GACN,MAAM,gBAAgB,CAAC;AACxB,OAAO,EAAE,cAAc,EAAE,MAAM,0BAA0B,CAAC;AAC1D,OAAO,EAAE,iBAAiB,EAAE,MAAM,4BAA4B,CAAC;AAC/D,OAAO,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAC;AACvD,OAAO,EAAE,OAAO,EAAE,MAAM,iBAAiB,CAAC;AAC1C,OAAO,EAAE,mBAAmB,EAAE,MAAM,+BAA+B,CAAC;AACpE,OAAO,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAC;AAChD,OAAO,EAAE,iBAAiB,EAAE,MAAM,gBAAgB,CAAC;AAEnD,MAAM,CAAC,MAAM,WAAW,GAAG,CAAC,EAC1B,UAAU,GAGX,EAAE,EAAE;IACH,MAAM,EAAE,IAAI,EAAE,YAAY,EAAE,GAAG,eAAe,EAAE,CAAC;IACjD,MAAM,YAAY,GAAG,eAAe,EAAE,CAAC;IACvC,MAAM,WAAW,GAAG,cAAc,EAAE,CAAC;IACrC,MAAM,KAAK,GAAG,aAAa,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;IACpD,MAAM,EAAE,SAAS,EAAE,GAAG,SAAS,EAAE,CAAC;IAClC,MAAM,EAAE,SAAS,EAAE,eAAe,EAAE,GAAG,UAAU,EAAE,CAAC;IACpD,MAAM,EAAE,YAAY,EAAE,SAAS,EAAE,GAAG,cAAc,EAAE,CAAC;IAErD,MAAM,EAAE,SAAS,EAAE,OAAO,EAAE,SAAS,EAAE,SAAS,EAAE,GAAG,OAAO,EAAE,CAAC;IAC/D,MAAM,EAAE,gBAAgB,EAAE,GAAG,cAAc,EAAE,CAAC;IAE9C,MAAM,EACJ,gBAAgB,EAAE,EAAE,OAAO,EAAE,iBAAiB,EAAE,GACjD,GAAG,mBAAmB,CAAC,SAAS,CAAC,CAAC;IAEnC,MAAM,EACJ,YAAY,
|
|
1
|
+
{"version":3,"file":"useApproval.js","sourceRoot":"","sources":["../../../src/hooks/transaction/useApproval.ts"],"names":[],"mappings":"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"}
|