@0xsquid/react-hooks 1.0.36 → 1.0.38
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/core/queries/queries-keys.d.ts +1 -1
- package/dist/core/queries/queries-keys.js.map +1 -1
- package/dist/hooks/cosmos/useCosmos.d.ts +1 -1
- package/dist/hooks/cosmos/useCosmos.js +3 -2
- package/dist/hooks/cosmos/useCosmos.js.map +1 -1
- package/dist/hooks/index.d.ts +1 -0
- package/dist/hooks/index.js +1 -0
- package/dist/hooks/index.js.map +1 -1
- package/dist/hooks/swap/useSwap.js +7 -10
- package/dist/hooks/swap/useSwap.js.map +1 -1
- package/dist/hooks/tokens/useAllTokensWithBalanceForChainType.d.ts +1 -1
- package/dist/hooks/tokens/useAllTokensWithBalanceForChainType.js +28 -6
- package/dist/hooks/tokens/useAllTokensWithBalanceForChainType.js.map +1 -1
- package/dist/hooks/tokens/useSquidTokens.d.ts +2 -4
- package/dist/hooks/tokens/useSquidTokens.js +92 -56
- package/dist/hooks/tokens/useSquidTokens.js.map +1 -1
- package/dist/hooks/transaction/useEstimate.d.ts +31 -31
- package/dist/hooks/transaction/useEstimate.js +130 -237
- package/dist/hooks/transaction/useEstimate.js.map +1 -1
- package/dist/hooks/transaction/useGetRoute.d.ts +1 -1
- package/dist/services/internal/configService.d.ts +18 -8
- package/dist/services/internal/configService.js +55 -15
- package/dist/services/internal/configService.js.map +1 -1
- package/dist/tests/configService.test.js +168 -47
- package/dist/tests/configService.test.js.map +1 -1
- package/package.json +1 -1
|
@@ -24,7 +24,7 @@ export declare const keys: ({ address, apiUrl, }: {
|
|
|
24
24
|
balance: (chainId?: number | string, tokenAddress?: string, userAddress?: string, chainType?: ChainType) => (string | number | undefined)[];
|
|
25
25
|
nativeBalanceBigNumber: (chainId?: number | string, tokenAddress?: string, chainType?: ChainType) => (string | number | undefined)[];
|
|
26
26
|
tokensBalanceForChain: (chainType?: ChainType, chainId?: number | string) => (string | number | undefined)[];
|
|
27
|
-
allTokensBalance: (chainType: ChainType) => (string | undefined)[];
|
|
27
|
+
allTokensBalance: (chainType: ChainType | undefined) => (string | undefined)[];
|
|
28
28
|
allTokensPriceUSDAndBalance: () => (string | undefined)[];
|
|
29
29
|
transactions: () => (string | undefined)[];
|
|
30
30
|
transaction: (swapDirection: SwapRoute | undefined, price: string | undefined, slippage: SlippageOption | undefined, infiniteApproval: boolean | undefined, getGasOnDestination: boolean | undefined, expressEnabled: boolean | undefined, sourceUserAddress: string | undefined, degenMode: boolean | undefined) => (string | number | boolean | undefined)[];
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"queries-keys.js","sourceRoot":"","sources":["../../../src/core/queries/queries-keys.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,SAAS,EAAE,MAAM,sBAAsB,CAAC;AAKjD;;;;GAIG;AACH,MAAM,CAAC,MAAM,IAAI,GAAG,CAAC,EACnB,OAAO,EACP,MAAM,GAIP,EAAE,EAAE,CAAC,CAAC;IACL,GAAG,EAAE,CAAC,OAAO,EAAE,MAAM,EAAE,KAAK,CAAC;IAE7B,QAAQ;IACR,SAAS,EAAE,GAAG,EAAE,CAAC,CAAC,GAAG,IAAI,CAAC,EAAE,MAAM,EAAE,OAAO,EAAE,CAAC,CAAC,GAAG,EAAE,MAAM,EAAE,WAAW,CAAC;IAExE,SAAS;IACT,MAAM,EAAE,GAAG,EAAE,CAAC,CAAC,GAAG,IAAI,CAAC,EAAE,MAAM,EAAE,OAAO,EAAE,CAAC,CAAC,GAAG,EAAE,MAAM,EAAE,QAAQ,CAAC;IAElE,SAAS;IACT,MAAM,EAAE,GAAG,EAAE,CAAC,CAAC,GAAG,IAAI,CAAC,EAAE,MAAM,EAAE,OAAO,EAAE,CAAC,CAAC,GAAG,EAAE,MAAM,EAAE,QAAQ,CAAC;IAClE,cAAc,EAAE,CAAC,OAAyB,EAAE,EAAE,CAAC;QAC7C,GAAG,IAAI,CAAC,EAAE,MAAM,EAAE,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE;QACrC,OAAO;QACP,gBAAgB;KACjB;IACD,WAAW,EAAE,CAAC,SAAgC,EAAE,EAAE,CAAC;QACjD,GAAG,IAAI,CAAC,EAAE,MAAM,EAAE,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE;QACrC,SAAS,EAAE,WAAW;QACtB,SAAS,EAAE,SAAS;QACpB,SAAS,EAAE,cAAc;QACzB,SAAS,EAAE,gBAAgB;QAC3B,aAAa;KACd;IACD,gBAAgB,EAAE,CAAC,YAAqB,EAAE,OAAyB,EAAE,EAAE,CAAC;QACtE,GAAG,IAAI,CAAC,EAAE,MAAM,EAAE,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE;QACrC,YAAY;QACZ,OAAO;QACP,kBAAkB;KACnB;IACD,YAAY,EAAE,GAAG,EAAE,CAAC,CAAC,GAAG,IAAI,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,EAAE,cAAc,CAAC;IAElE,WAAW;IACX,QAAQ,EAAE,GAAG,EAAE,CAAC,CAAC,GAAG,IAAI,CAAC,EAAE,MAAM,EAAE,OAAO,EAAE,CAAC,CAAC,GAAG,EAAE,UAAU,CAAC;IAC9D,OAAO,EAAE,CACP,OAAyB,EACzB,YAAqB,EACrB,WAAoB,EACpB,YAAuB,SAAS,CAAC,GAAG,EACpC,EAAE,CAAC;QACH,GAAG,IAAI,CAAC,EAAE,MAAM,EAAE,OAAO,EAAE,CAAC,CAAC,QAAQ,EAAE;QACvC,OAAO;QACP,OAAO;QACP,YAAY;QACZ,SAAS;QACT,WAAW;QACX,SAAS;KACV;IACD,sBAAsB,EAAE,CACtB,OAAyB,EACzB,YAAqB,EACrB,YAAuB,SAAS,CAAC,GAAG,EACpC,EAAE,CAAC;QACH,GAAG,IAAI,CAAC,EAAE,MAAM,EAAE,OAAO,EAAE,CAAC,CAAC,QAAQ,EAAE;QACvC,OAAO;QACP,OAAO;QACP,YAAY;QACZ,SAAS;QACT,eAAe;KAChB;IACD,qBAAqB,EAAE,CAAC,SAAqB,EAAE,OAAyB,EAAE,EAAE,CAAC;QAC3E,GAAG,IAAI,CAAC,EAAE,MAAM,EAAE,OAAO,EAAE,CAAC,CAAC,QAAQ,EAAE;QACvC,OAAO;QACP,OAAO;QACP,SAAS;QACT,uBAAuB;KACxB;IAED,gBAAgB,EAAE,CAAC,
|
|
1
|
+
{"version":3,"file":"queries-keys.js","sourceRoot":"","sources":["../../../src/core/queries/queries-keys.ts"],"names":[],"mappings":"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"}
|
|
@@ -24,7 +24,7 @@ export declare const useCosmos: () => {
|
|
|
24
24
|
chainId: string;
|
|
25
25
|
}) => Promise<string>;
|
|
26
26
|
cosmosConnectedWallet: Wallet | undefined;
|
|
27
|
-
keplrTypeWallet: Keplr;
|
|
27
|
+
keplrTypeWallet: Keplr | undefined;
|
|
28
28
|
cosmosSigner: OfflineSigner | undefined;
|
|
29
29
|
getCosmosAddressForChain: (chainId?: string) => Promise<string | undefined>;
|
|
30
30
|
getCosmosWalletInfos: import("@tanstack/react-query").UseMutationResult<string | undefined, unknown, {
|
|
@@ -17,14 +17,15 @@ export const useCosmos = () => {
|
|
|
17
17
|
const { swapRoute } = useSwapRoutePersistStore();
|
|
18
18
|
const { fromChain } = useSwap();
|
|
19
19
|
const { cosmosChains } = useSquidChains();
|
|
20
|
+
const isClient = () => typeof window !== "undefined";
|
|
20
21
|
const keplrTypeWallet = useMemo(() => {
|
|
21
|
-
if (
|
|
22
|
+
if (isClient() && cosmosConnectedWallet?.windowFlag) {
|
|
22
23
|
return accessProperty(window, cosmosConnectedWallet.windowFlag);
|
|
23
24
|
}
|
|
24
25
|
// By default, return Cosmos wallet to be Keplr wallet
|
|
25
26
|
// Because like Metamask, some wallets will override the window.keplr Provider
|
|
26
27
|
// Meaning that this could be the current user wallet, so we can use it as a fallback
|
|
27
|
-
return window
|
|
28
|
+
return isClient() ? window?.keplr : undefined;
|
|
28
29
|
}, [cosmosConnectedWallet]);
|
|
29
30
|
// As soon as from chain changes, need to fetch the new signer
|
|
30
31
|
useEffect(() => {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useCosmos.js","sourceRoot":"","sources":["../../../src/hooks/cosmos/useCosmos.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,SAAS,EAAE,MAAM,sBAAsB,CAAC;AAEjD,OAAO,EAAE,UAAU,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAE5D,OAAO,EAAE,WAAW,EAAE,MAAM,uBAAuB,CAAC;AACpD,OAAO,EAAE,WAAW,EAAE,SAAS,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AAClE,OAAO,EAAE,OAAO,EAAE,MAAM,sBAAsB,CAAC;AAE/C,OAAO,EAAE,wBAAwB,EAAE,MAAM,iCAAiC,CAAC;AAC3E,OAAO,EAAE,OAAO,EAAE,MAAM,0BAA0B,CAAC;AACnD,OAAO,EACL,cAAc,EACd,yBAAyB,EACzB,YAAY,EACZ,iBAAiB,GAClB,MAAM,uCAAuC,CAAC;AAC/C,OAAO,EAAE,cAAc,EAAE,MAAM,0BAA0B,CAAC;AAI1D,MAAM,CAAC,MAAM,SAAS,GAAG,GAAG,EAAE;IAC5B,MAAM,CAAC,aAAa,EAAE,gBAAgB,CAAC,GAAG,QAAQ,EAAsB,CAAC;IACzE,MAAM,CAAC,YAAY,EAAE,eAAe,CAAC,GAAG,QAAQ,CAC9C,SAAS,CACV,CAAC;IACF,MAAM,CAAC,qBAAqB,EAAE,wBAAwB,CAAC,GAAG,QAAQ,EAE/D,CAAC;IACJ,MAAM,CAAC,aAAa,EAAE,gBAAgB,CAAC,GAAG,QAAQ,EAAsB,CAAC;IACzE,MAAM,CAAC,WAAW,EAAE,cAAc,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC;IACtD,MAAM,CAAC,WAAW,EAAE,cAAc,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC;IACtD,MAAM,EAAE,SAAS,EAAE,GAAG,wBAAwB,EAAE,CAAC;IACjD,MAAM,EAAE,SAAS,EAAE,GAAG,OAAO,EAAE,CAAC;IAChC,MAAM,EAAE,YAAY,EAAE,GAAG,cAAc,EAAE,CAAC;IAE1C,MAAM,eAAe,
|
|
1
|
+
{"version":3,"file":"useCosmos.js","sourceRoot":"","sources":["../../../src/hooks/cosmos/useCosmos.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,SAAS,EAAE,MAAM,sBAAsB,CAAC;AAEjD,OAAO,EAAE,UAAU,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAE5D,OAAO,EAAE,WAAW,EAAE,MAAM,uBAAuB,CAAC;AACpD,OAAO,EAAE,WAAW,EAAE,SAAS,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AAClE,OAAO,EAAE,OAAO,EAAE,MAAM,sBAAsB,CAAC;AAE/C,OAAO,EAAE,wBAAwB,EAAE,MAAM,iCAAiC,CAAC;AAC3E,OAAO,EAAE,OAAO,EAAE,MAAM,0BAA0B,CAAC;AACnD,OAAO,EACL,cAAc,EACd,yBAAyB,EACzB,YAAY,EACZ,iBAAiB,GAClB,MAAM,uCAAuC,CAAC;AAC/C,OAAO,EAAE,cAAc,EAAE,MAAM,0BAA0B,CAAC;AAI1D,MAAM,CAAC,MAAM,SAAS,GAAG,GAAG,EAAE;IAC5B,MAAM,CAAC,aAAa,EAAE,gBAAgB,CAAC,GAAG,QAAQ,EAAsB,CAAC;IACzE,MAAM,CAAC,YAAY,EAAE,eAAe,CAAC,GAAG,QAAQ,CAC9C,SAAS,CACV,CAAC;IACF,MAAM,CAAC,qBAAqB,EAAE,wBAAwB,CAAC,GAAG,QAAQ,EAE/D,CAAC;IACJ,MAAM,CAAC,aAAa,EAAE,gBAAgB,CAAC,GAAG,QAAQ,EAAsB,CAAC;IACzE,MAAM,CAAC,WAAW,EAAE,cAAc,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC;IACtD,MAAM,CAAC,WAAW,EAAE,cAAc,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC;IACtD,MAAM,EAAE,SAAS,EAAE,GAAG,wBAAwB,EAAE,CAAC;IACjD,MAAM,EAAE,SAAS,EAAE,GAAG,OAAO,EAAE,CAAC;IAChC,MAAM,EAAE,YAAY,EAAE,GAAG,cAAc,EAAE,CAAC;IAE1C,MAAM,QAAQ,GAAG,GAAG,EAAE,CAAC,OAAO,MAAM,KAAK,WAAW,CAAC;IAErD,MAAM,eAAe,GAAsB,OAAO,CAAC,GAAG,EAAE;QACtD,IAAI,QAAQ,EAAE,IAAI,qBAAqB,EAAE,UAAU,EAAE;YACnD,OAAO,cAAc,CAAC,MAAM,EAAE,qBAAqB,CAAC,UAAU,CAAU,CAAC;SAC1E;QACD,sDAAsD;QACtD,8EAA8E;QAC9E,qFAAqF;QACrF,OAAO,QAAQ,EAAE,CAAC,CAAC,CAAE,MAAM,EAAE,KAAe,CAAC,CAAC,CAAC,SAAS,CAAC;IAC3D,CAAC,EAAE,CAAC,qBAAqB,CAAC,CAAC,CAAC;IAE5B,8DAA8D;IAC9D,SAAS,CAAC,GAAG,EAAE;QACb,IAAI,SAAS,EAAE,SAAS,KAAK,SAAS,CAAC,MAAM,IAAI,eAAe,EAAE;YAChE,eAAe,CACb,eAAe,CAAC,gBAAgB,CAAC,SAAS,EAAE,OAAO,CAAC,QAAQ,EAAE,CAAC,CAChE,CAAC;SACH;IACH,CAAC,EAAE,CAAC,SAAS,EAAE,OAAO,EAAE,SAAS,EAAE,SAAS,EAAE,eAAe,CAAC,CAAC,CAAC;IAEhE,MAAM,wBAAwB,GAAG,WAAW,CAC1C,KAAK,EAAE,OAAgB,EAAE,EAAE;QACzB,OAAO,YAAY,CAAC,OAAO,EAAE,eAAe,CAAC,CAAC;IAChD,CAAC,EACD,CAAC,eAAe,CAAC,CAClB,CAAC;IAEF,MAAM,oBAAoB,GAAG,WAAW,CACtC,KAAK,EAAE,EACL,OAAO,EACP,kBAAkB,GAInB,EAA+B,EAAE;QAChC,MAAM,YAAY,GAAG,kBAAkB,IAAI,eAAe,CAAC;QAC3D,IAAI,YAAY,EAAE;YAChB,MAAM,OAAO,GAAG,MAAM,YAAY,EAAE,MAAM,CAAC,OAAO,CAAC,CAAC;YACpD,IAAI,OAAO,EAAE,aAAa,EAAE;gBAC1B,OAAO,OAAO,CAAC,aAAa,CAAC;aAC9B;SACF;QACD,OAAO,SAAS,CAAC;IACnB,CAAC,CACF,CAAC;IAEF,MAAM,UAAU,GAAG,WAAW,CAC5B,KAAK,EAAE,EACL,MAAM,EACN,kBAAkB,EAClB,OAAO,GAKR,EAAmB,EAAE;QACpB,IAAI,MAAM,CAAC,WAAW,KAAK,SAAS,EAAE;YACpC,MAAM,EAAE,OAAO,EAAE,WAAW,EAAE,GAC5B,MAAM,kBAAkB,CAAC,gBAAgB,CAAC,OAAO,CAAC,CAAC;YACrD,OAAO,WAAW,CAAC,OAAO,CAAC;SAC5B;QACD,MAAM,OAAO,GAAG,MAAM,oBAAoB,CAAC,WAAW,CAAC;YACrD,OAAO;YACP,kBAAkB;SACnB,CAAC,CAAC;QACH,OAAO,OAAO,IAAI,EAAE,CAAC;IACvB,CAAC,EACD,CAAC,oBAAoB,CAAC,CACvB,CAAC;IAEF,MAAM,yBAAyB,GAAG,WAAW,CAAC,KAAK,IAAI,EAAE;QACvD,IAAI,aAAa,EAAE;YACjB,MAAM,OAAO,GAAG,MAAM,oBAAoB,CAAC,WAAW,CAAC;gBACrD,OAAO,EAAE,aAAa;aACvB,CAAC,CAAC;YACH,IAAI,OAAO,EAAE;gBACX,cAAc,CAAC,IAAI,CAAC,CAAC;gBACrB,gBAAgB,CAAC,OAAO,CAAC,CAAC;aAC3B;SACF;IACH,CAAC,EAAE,CAAC,aAAa,EAAE,oBAAoB,CAAC,CAAC,CAAC;IAE1C,SAAS,CAAC,GAAG,EAAE;QACb,MAAM,CAAC,gBAAgB,CAAC,sBAAsB,EAAE,GAAG,EAAE,CACnD,yBAAyB,EAAE,CAC5B,CAAC;QAEF,OAAO,GAAG,EAAE;YACV,MAAM,CAAC,mBAAmB,CAAC,sBAAsB,EAAE,GAAG,EAAE,CACtD,yBAAyB,EAAE,CAC5B,CAAC;QACJ,CAAC,CAAC;IACJ,CAAC,EAAE,CAAC,yBAAyB,CAAC,CAAC,CAAC;IAEhC;;;;;;OAMG;IACH,MAAM,mBAAmB,GAAG,KAAK,EAC/B,MAAc,EACd,kBAAwB,EACV,EAAE;QAChB,IAAI,GAAG,GAAG,kBAAkB,CAAC;QAC7B,QAAQ,MAAM,CAAC,WAAW,EAAE;YAC1B,KAAK,SAAS;gBACZ,GAAG,GAAG,IAAI,UAAU,EAAE,CAAC;gBACvB,uBAAuB;gBACvB,MAAM,CAAC,MAAM,EAAE,UAAU,IAAI,EAAE,CAAC,GAAG,GAAG,CAAC;gBACvC,MAAM;SACT;QACD,OAAO,GAAG,CAAC;IACb,CAAC,CAAC;IAEF,MAAM,aAAa,GAAG,WAAW,CAC/B,KAAK,EAAE,EACL,KAAK,EACL,MAAM,EACN,SAAS,EACT,gBAAgB,GAAG,IAAI,GAMxB,EAAE,EAAE;QACH,MAAM,UAAU,GAAG,yBAAyB,CAAC,KAAK,CAAC,CAAC;QAEpD,MAAM,cAAc,GAClB,MAAM;YACN,qBAAqB;YACrB,OAAO,EAAE,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,WAAW,KAAK,OAAO,CAAC,CAAC;QAElD,IAAI,kBAAkB,GAAG,cAAc;YACrC,CAAC,CAAC,iBAAiB,CAAC,MAAM,EAAE,cAAc,CAAC,UAAU,CAAC;YACtD,CAAC,CAAC,SAAS,CAAC;QAEd,kDAAkD;QAClD,IAAI,cAAc,EAAE;YAClB,kBAAkB,GAAG,MAAM,mBAAmB,CAC5C,cAAc,EACd,kBAAkB,CACnB,CAAC;SACH;QAED,IAAI,kBAAkB,EAAE;YACtB,gBAAgB,CAAC,UAAU,CAAC,OAAO,CAAC,QAAQ,EAAE,CAAC,CAAC;YAChD,IAAI;gBACF,IAAI,cAAc,EAAE,WAAW,KAAK,SAAS,EAAE;oBAC7C,MAAM,WAAW,EAAE,CAAC;iBACrB;qBAAM;oBACL,IAAI,gBAAgB,EAAE;wBACpB,MAAM,kBAAkB,CAAC,MAAM,CAC7B,YAAY,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,CACnC,CAAC;qBACH;yBAAM;wBACL,MAAM,kBAAkB,CAAC,MAAM,CAAC,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,CAAC;qBACvD;iBACF;gBAED,MAAM,OAAO,GAAG,MAAM,UAAU,CAAC;oBAC/B,OAAO,EAAE,KAAK,CAAC,OAAO,CAAC,QAAQ,EAAE;oBACjC,kBAAkB;oBAClB,MAAM,EAAE,cAAqB;iBAC9B,CAAC,CAAC;gBAEH,IAAI,OAAO,EAAE;oBACX,wBAAwB,CAAC,cAAc,CAAC,CAAC;oBACzC,cAAc,CAAC,IAAI,CAAC,CAAC;oBACrB,gBAAgB,CAAC,OAAO,CAAC,CAAC;oBAE1B,wBAAwB,CAAC,QAAQ,CAAC;wBAChC,SAAS,EAAE;4BACT,GAAG,wBAAwB,CAAC,QAAQ,EAAE,CAAC,SAAS;4BAChD,kBAAkB,EAChB,SAAS,KAAK,IAAI;gCAChB,CAAC,CAAC,OAAO;gCACT,CAAC,CAAC,wBAAwB,CAAC,QAAQ,EAAE,CAAC,SAAS;oCAC3C,EAAE,kBAAkB;yBAC7B;qBACF,CAAC,CAAC;iBACJ;aACF;YAAC,OAAO,KAAK,EAAE;gBACd,MAAM,CAAC,GAAG,KAIT,CAAC;gBACF,IACE,CAAC,CAAC,OAAO,KAAK,kBAAkB;oBAChC,CAAC,CAAC,OAAO,KAAK,4BAA4B,EAC1C;oBACA,qCAAqC;oBACrC,IAAI,kBAAkB,CAAC,wBAAwB,EAAE;wBAC/C,IAAI;4BACF,MAAM,kBAAkB,CAAC,wBAAwB,CAAC,UAAU,CAAC,CAAC;4BAC9D,qBAAqB;4BACrB,aAAa,CAAC,MAAM,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC;yBACjC;wBAAC,OAAO,6BAA6B,EAAE;4BACtC,OAAO,CAAC,GAAG,CACT,yBAAyB,EACzB,6BAA6B,CAC9B,CAAC;yBACH;qBACF;iBACF;aACF;SACF;aAAM;YACL,cAAc,CAAC,KAAK,CAAC,CAAC;SACvB;IACH,CAAC,CACF,CAAC;IAEF,MAAM,SAAS,GAAG,GAAG,EAAE;QACrB,cAAc,CAAC,KAAK,CAAC,CAAC;QACtB,gBAAgB,CAAC,SAAS,CAAC,CAAC;QAC5B,gBAAgB,CAAC,SAAS,CAAC,CAAC;IAC9B,CAAC,CAAC;IAEF,MAAM,mBAAmB,GAAG,CAAC,UAAkB,EAAE,EAAE;QACjD,IAAI,UAAU,KAAK,aAAa,EAAE;YAChC,SAAS,EAAE,CAAC;SACb;QAED,wBAAwB,CAAC,QAAQ,CAAC;YAChC,SAAS,EAAE,EAAE,GAAG,SAAS,EAAE;YAC3B,gCAAgC,EAAE;gBAChC,OAAO,EAAE,KAAK;gBACd,gBAAgB,EAAE,KAAK;aACxB;SACF,CAAC,CAAC;IACL,CAAC,CAAC;IAEF,OAAO;QACL,aAAa;QACb,aAAa;QACb,gBAAgB;QAChB,WAAW;QACX,cAAc;QACd,WAAW;QACX,cAAc;QACd,SAAS;QACT,mBAAmB;QACnB,UAAU;QACV,qBAAqB;QACrB,eAAe;QACf,YAAY;QACZ,wBAAwB;QACxB,oBAAoB;QACpB,aAAa;KACd,CAAC;AACJ,CAAC,CAAC"}
|
package/dist/hooks/index.d.ts
CHANGED
|
@@ -3,6 +3,7 @@ export { useCosmos } from "./cosmos/useCosmos";
|
|
|
3
3
|
export { useCosmosForChain } from "./cosmos/useCosmosForChain";
|
|
4
4
|
export { useKeyboardNavigation } from "./navigation/useKeyboardNavigation";
|
|
5
5
|
export { usePersistStore, useSquidStore, useSwapRoutePersistStore, } from "./store/useSquidStore";
|
|
6
|
+
export { useSquid } from "./squid/useSquid";
|
|
6
7
|
export { useSwap } from "./swap/useSwap";
|
|
7
8
|
export { useAllTokensWithBalanceForChainType } from "./tokens/useAllTokensWithBalanceForChainType";
|
|
8
9
|
export { useCosmosBalance, useEvmBalance, useNativeTokenBalanceDestinationChain, useNativeTokenBalanceFromChain, } from "./tokens/useBalance";
|
package/dist/hooks/index.js
CHANGED
|
@@ -3,6 +3,7 @@ export { useCosmos } from "./cosmos/useCosmos";
|
|
|
3
3
|
export { useCosmosForChain } from "./cosmos/useCosmosForChain";
|
|
4
4
|
export { useKeyboardNavigation } from "./navigation/useKeyboardNavigation";
|
|
5
5
|
export { usePersistStore, useSquidStore, useSwapRoutePersistStore, } from "./store/useSquidStore";
|
|
6
|
+
export { useSquid } from "./squid/useSquid";
|
|
6
7
|
export { useSwap } from "./swap/useSwap";
|
|
7
8
|
export { useAllTokensWithBalanceForChainType } from "./tokens/useAllTokensWithBalanceForChainType";
|
|
8
9
|
export { useCosmosBalance, useEvmBalance, useNativeTokenBalanceDestinationChain, useNativeTokenBalanceFromChain, } from "./tokens/useBalance";
|
package/dist/hooks/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/hooks/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,yBAAyB,CAAC;AACzD,OAAO,EAAE,SAAS,EAAE,MAAM,oBAAoB,CAAC;AAC/C,OAAO,EAAE,iBAAiB,EAAE,MAAM,4BAA4B,CAAC;AAC/D,OAAO,EAAE,qBAAqB,EAAE,MAAM,oCAAoC,CAAC;AAC3E,OAAO,EACL,eAAe,EACf,aAAa,EACb,wBAAwB,GACzB,MAAM,uBAAuB,CAAC;AAE/B,OAAO,EAAE,OAAO,EAAE,MAAM,gBAAgB,CAAC;AACzC,OAAO,EAAE,mCAAmC,EAAE,MAAM,8CAA8C,CAAC;AACnG,OAAO,EACL,gBAAgB,EAChB,aAAa,EACb,qCAAqC,EACrC,8BAA8B,GAC/B,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EAAE,oBAAoB,EAAE,MAAM,+BAA+B,CAAC;AACrE,OAAO,EAAE,cAAc,EAAE,MAAM,yBAAyB,CAAC;AACzD,OAAO,EAAE,+BAA+B,EAAE,MAAM,+BAA+B,CAAC;AAChF,OAAO,EAAE,WAAW,EAAE,MAAM,2BAA2B,CAAC;AACxD,OAAO,EAAE,sBAAsB,EAAE,MAAM,sCAAsC,CAAC;AAC9E,OAAO,EAAE,qBAAqB,EAAE,MAAM,qCAAqC,CAAC;AAC5E,OAAO,EAAE,kBAAkB,EAAE,MAAM,0BAA0B,CAAC;AAC9D,OAAO,EAAE,WAAW,EAAE,kBAAkB,EAAE,MAAM,2BAA2B,CAAC;AAC5E,OAAO,EAAE,oBAAoB,EAAE,MAAM,oCAAoC,CAAC;AAC1E,OAAO,EAAE,cAAc,EAAE,MAAM,8BAA8B,CAAC;AAC9D,OAAO,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AACrD,OAAO,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAC;AACnD,OAAO,EAAE,cAAc,EAAE,MAAM,yBAAyB,CAAC;AACzD,OAAO,EAAE,gBAAgB,EAAE,MAAM,2BAA2B,CAAC;AAC7D,OAAO,EAAE,oBAAoB,EAAE,MAAM,+BAA+B,CAAC;AACrE,OAAO,EAAE,mBAAmB,EAAE,MAAM,8BAA8B,CAAC;AACnE,OAAO,EAAE,SAAS,EAAE,MAAM,oBAAoB,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/hooks/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,yBAAyB,CAAC;AACzD,OAAO,EAAE,SAAS,EAAE,MAAM,oBAAoB,CAAC;AAC/C,OAAO,EAAE,iBAAiB,EAAE,MAAM,4BAA4B,CAAC;AAC/D,OAAO,EAAE,qBAAqB,EAAE,MAAM,oCAAoC,CAAC;AAC3E,OAAO,EACL,eAAe,EACf,aAAa,EACb,wBAAwB,GACzB,MAAM,uBAAuB,CAAC;AAE/B,OAAO,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAC5C,OAAO,EAAE,OAAO,EAAE,MAAM,gBAAgB,CAAC;AACzC,OAAO,EAAE,mCAAmC,EAAE,MAAM,8CAA8C,CAAC;AACnG,OAAO,EACL,gBAAgB,EAChB,aAAa,EACb,qCAAqC,EACrC,8BAA8B,GAC/B,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EAAE,oBAAoB,EAAE,MAAM,+BAA+B,CAAC;AACrE,OAAO,EAAE,cAAc,EAAE,MAAM,yBAAyB,CAAC;AACzD,OAAO,EAAE,+BAA+B,EAAE,MAAM,+BAA+B,CAAC;AAChF,OAAO,EAAE,WAAW,EAAE,MAAM,2BAA2B,CAAC;AACxD,OAAO,EAAE,sBAAsB,EAAE,MAAM,sCAAsC,CAAC;AAC9E,OAAO,EAAE,qBAAqB,EAAE,MAAM,qCAAqC,CAAC;AAC5E,OAAO,EAAE,kBAAkB,EAAE,MAAM,0BAA0B,CAAC;AAC9D,OAAO,EAAE,WAAW,EAAE,kBAAkB,EAAE,MAAM,2BAA2B,CAAC;AAC5E,OAAO,EAAE,oBAAoB,EAAE,MAAM,oCAAoC,CAAC;AAC1E,OAAO,EAAE,cAAc,EAAE,MAAM,8BAA8B,CAAC;AAC9D,OAAO,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AACrD,OAAO,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAC;AACnD,OAAO,EAAE,cAAc,EAAE,MAAM,yBAAyB,CAAC;AACzD,OAAO,EAAE,gBAAgB,EAAE,MAAM,2BAA2B,CAAC;AAC7D,OAAO,EAAE,oBAAoB,EAAE,MAAM,+BAA+B,CAAC;AACrE,OAAO,EAAE,mBAAmB,EAAE,MAAM,8BAA8B,CAAC;AACnE,OAAO,EAAE,SAAS,EAAE,MAAM,oBAAoB,CAAC"}
|
|
@@ -5,7 +5,7 @@ import { useSquidChains } from "../../hooks/chains/useSquidChains";
|
|
|
5
5
|
import { useSquidStore, useSwapRoutePersistStore, } from "../../hooks/store/useSquidStore";
|
|
6
6
|
import { useSquidTokens } from "../../hooks/tokens/useSquidTokens";
|
|
7
7
|
import { useMultiChainWallet } from "../../hooks/wallet/useMultiChainWallet";
|
|
8
|
-
import { filterTokensForDestination,
|
|
8
|
+
import { filterTokensForDestination, getFirstAvailableChainId, getInitialChainIdFromConfig, getInitialOrDefaultTokenAddressForChain, getInitialTokenAddressForChain, getTokensForChain, } from "../../services/internal/configService";
|
|
9
9
|
import { WidgetEvents } from "../../services/internal/eventService";
|
|
10
10
|
export const useSwap = () => {
|
|
11
11
|
const { fromPrice, config } = useSquidStore();
|
|
@@ -68,7 +68,7 @@ export const useSwap = () => {
|
|
|
68
68
|
t.chainId === fromChainId);
|
|
69
69
|
const destChain = chains.find((c) => c.chainId === (toChainId ?? swapRoute?.toChainId));
|
|
70
70
|
const destinationTokensFiltered = filterTokensForDestination(getTokensForChain(tokens, toChainId ?? swapRoute?.toChainId), destChain, srcToken);
|
|
71
|
-
const defaultToAddress =
|
|
71
|
+
const defaultToAddress = getInitialOrDefaultTokenAddressForChain(destinationTokensFiltered, config, toChainId ?? swapRoute?.toChainId, "to");
|
|
72
72
|
let destinationTokenAddress = toChainId && !toTokenAddress
|
|
73
73
|
? defaultToAddress
|
|
74
74
|
: toTokenAddress ?? swapRoute?.toTokenAddress;
|
|
@@ -95,7 +95,7 @@ export const useSwap = () => {
|
|
|
95
95
|
const srcChainId = fromChainId ?? swapRoute?.fromChainId;
|
|
96
96
|
// Get the default Source Address
|
|
97
97
|
// This can be either the first token or the one set by the user from config
|
|
98
|
-
const defaultFromAddress =
|
|
98
|
+
const defaultFromAddress = getInitialOrDefaultTokenAddressForChain(tokens, config, srcChainId, "from");
|
|
99
99
|
// Get the destination ChainId based on parameters of swap received
|
|
100
100
|
const destinationChainId = toChainId === chainIdResetValue
|
|
101
101
|
? undefined
|
|
@@ -184,13 +184,10 @@ export const useSwap = () => {
|
|
|
184
184
|
config,
|
|
185
185
|
direction: "to",
|
|
186
186
|
});
|
|
187
|
-
|
|
188
|
-
|
|
189
|
-
|
|
190
|
-
|
|
191
|
-
tokens,
|
|
192
|
-
});
|
|
193
|
-
const toTokenAddress = getInitialOrDefaultTokenAddressForChain({
|
|
187
|
+
// if no initial or default tokens are found in config, we default to the first available token
|
|
188
|
+
const fromTokenAddress = getInitialOrDefaultTokenAddressForChain(tokens, config, defaultFromChainId, "from");
|
|
189
|
+
// if no initial token is found in config, we default to undefined
|
|
190
|
+
const toTokenAddress = getInitialTokenAddressForChain({
|
|
194
191
|
chainId: defaultToChainId,
|
|
195
192
|
config,
|
|
196
193
|
direction: "to",
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useSwap.js","sourceRoot":"","sources":["../../../src/hooks/swap/useSwap.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAc,MAAM,sBAAsB,CAAC;AAC7D,OAAO,EAAE,WAAW,EAAE,SAAS,EAAE,OAAO,EAAE,MAAM,OAAO,CAAC;AACxD,OAAO,EACL,iBAAiB,EACjB,4BAA4B,GAC7B,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EAAE,cAAc,EAAE,MAAM,mCAAmC,CAAC;AACnE,OAAO,EACL,aAAa,EACb,wBAAwB,GACzB,MAAM,iCAAiC,CAAC;AACzC,OAAO,EAAE,cAAc,EAAE,MAAM,mCAAmC,CAAC;AACnE,OAAO,EAAE,mBAAmB,EAAE,MAAM,wCAAwC,CAAC;AAC7E,OAAO,EACL,0BAA0B,EAC1B,
|
|
1
|
+
{"version":3,"file":"useSwap.js","sourceRoot":"","sources":["../../../src/hooks/swap/useSwap.ts"],"names":[],"mappings":"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"}
|
|
@@ -2,7 +2,7 @@ import { ChainType } from "@0xsquid/squid-types";
|
|
|
2
2
|
import { UseQueryOptions } from "@tanstack/react-query";
|
|
3
3
|
import { TokenWithBalance } from "../../core/types/tokens";
|
|
4
4
|
export declare const useAllTokensWithBalanceForChainType: ({ chainType, address, queryOptions, }: {
|
|
5
|
-
chainType
|
|
5
|
+
chainType?: ChainType | undefined;
|
|
6
6
|
address?: string | undefined;
|
|
7
7
|
queryOptions?: UseQueryOptions<TokenWithBalance[], unknown, TokenWithBalance[], import("@tanstack/react-query").QueryKey> | undefined;
|
|
8
8
|
}) => {
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { ChainType } from "@0xsquid/squid-types";
|
|
2
|
-
import { useQuery } from "@tanstack/react-query";
|
|
3
|
-
import { useMemo } from "react";
|
|
2
|
+
import { useQuery, useQueryClient, } from "@tanstack/react-query";
|
|
3
|
+
import { useEffect, useMemo } from "react";
|
|
4
4
|
import { useCosmosContext } from "../../core";
|
|
5
5
|
import { keys } from "../../core/queries/queries-keys";
|
|
6
6
|
import { getAllKeysForSupportedCosmosChains } from "../../services";
|
|
@@ -19,10 +19,11 @@ export const useAllTokensWithBalanceForChainType = ({ chainType, address, queryO
|
|
|
19
19
|
cosmos: cosmosTokens.map((t) => ({ ...t, balance: "0" })),
|
|
20
20
|
};
|
|
21
21
|
}, [evmTokens, cosmosTokens]);
|
|
22
|
-
const
|
|
22
|
+
const queryKey = useMemo(() => keys({
|
|
23
23
|
apiUrl: config.apiUrl,
|
|
24
|
-
address,
|
|
25
|
-
}).allTokensBalance(chainType),
|
|
24
|
+
address: address,
|
|
25
|
+
}).allTokensBalance(chainType), [config.apiUrl, address, chainType]);
|
|
26
|
+
const tokensWithBalanceQuery = useQuery(queryKey, async () => {
|
|
26
27
|
if (chainType === ChainType.EVM) {
|
|
27
28
|
const evmTokensBalances = await getAllEvmTokensBalance(evmTokens, address // Safe because the query is enabled only if address is present
|
|
28
29
|
);
|
|
@@ -39,7 +40,28 @@ export const useAllTokensWithBalanceForChainType = ({ chainType, address, queryO
|
|
|
39
40
|
return [...tokensWithZeroBalance.evm, ...cosmosBalances];
|
|
40
41
|
}
|
|
41
42
|
return [...tokensWithZeroBalance.evm, ...tokensWithZeroBalance.cosmos];
|
|
42
|
-
},
|
|
43
|
+
}, {
|
|
44
|
+
// At least need to be sure that the address is present
|
|
45
|
+
...queryOptions,
|
|
46
|
+
enabled: address !== undefined &&
|
|
47
|
+
chainType !== undefined &&
|
|
48
|
+
config.apiUrl !== undefined &&
|
|
49
|
+
(queryOptions?.enabled !== undefined ? queryOptions.enabled : true),
|
|
50
|
+
});
|
|
51
|
+
const queryClient = useQueryClient();
|
|
52
|
+
// Seems mandatory to do that manually
|
|
53
|
+
// Otherwise the first call wasn't stored in the cache
|
|
54
|
+
// Example: in the widget we need to call this hook from different pages, and the first one wasn't stored
|
|
55
|
+
useEffect(() => {
|
|
56
|
+
if (tokensWithBalanceQuery.status === "success") {
|
|
57
|
+
queryClient.setQueryData(queryKey, tokensWithBalanceQuery.data);
|
|
58
|
+
}
|
|
59
|
+
}, [
|
|
60
|
+
tokensWithBalanceQuery.status,
|
|
61
|
+
tokensWithBalanceQuery.data,
|
|
62
|
+
queryClient,
|
|
63
|
+
queryKey,
|
|
64
|
+
]);
|
|
43
65
|
/**
|
|
44
66
|
* Map tokens with balanced, based on chainType
|
|
45
67
|
* Can handle future chain types (solana, etc.)
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useAllTokensWithBalanceForChainType.js","sourceRoot":"","sources":["../../../src/hooks/tokens/useAllTokensWithBalanceForChainType.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,sBAAsB,CAAC;AACjD,OAAO,
|
|
1
|
+
{"version":3,"file":"useAllTokensWithBalanceForChainType.js","sourceRoot":"","sources":["../../../src/hooks/tokens/useAllTokensWithBalanceForChainType.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,6 +1,8 @@
|
|
|
1
1
|
import { Token } from "@0xsquid/squid-types";
|
|
2
2
|
export declare const useSquidTokens: (direction?: "from" | "to") => {
|
|
3
3
|
tokens: Token[];
|
|
4
|
+
evmTokens: Token[];
|
|
5
|
+
cosmosTokens: Token[];
|
|
4
6
|
fuseSearchOptions: {
|
|
5
7
|
isCaseSensitive: boolean;
|
|
6
8
|
threshold: number;
|
|
@@ -11,8 +13,4 @@ export declare const useSquidTokens: (direction?: "from" | "to") => {
|
|
|
11
13
|
weight: number;
|
|
12
14
|
}[];
|
|
13
15
|
};
|
|
14
|
-
forceSquidInfoRefetch: <TPageData>(options?: (import("@tanstack/query-core").RefetchOptions & import("@tanstack/query-core").RefetchQueryFilters<TPageData>) | undefined) => Promise<import("@tanstack/query-core").QueryObserverResult<import("@0xsquid/sdk").Squid | undefined, unknown>>;
|
|
15
|
-
squidInfoQuery: import("@tanstack/react-query").UseQueryResult<import("@0xsquid/sdk").Squid | undefined, unknown>;
|
|
16
|
-
evmTokens: Token[];
|
|
17
|
-
cosmosTokens: Token[];
|
|
18
16
|
};
|
|
@@ -1,76 +1,112 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { ChainType } from "@0xsquid/squid-types";
|
|
2
|
+
import { useMemo } from "react";
|
|
2
3
|
import { useSquidStore } from "../../hooks/store/useSquidStore";
|
|
3
4
|
import { getDisabledChainsIds } from "../../services";
|
|
4
5
|
import { useSquid } from "../squid/useSquid";
|
|
5
6
|
export const useSquidTokens = (direction) => {
|
|
6
|
-
const {
|
|
7
|
-
const { tokens: allSquidTokens,
|
|
7
|
+
const { squid } = useSquidStore();
|
|
8
|
+
const { tokens: allSquidTokens, squidInfoQuery } = useSquid();
|
|
8
9
|
const fuseSearchOptions = {
|
|
9
10
|
isCaseSensitive: false,
|
|
10
11
|
threshold: 0.1,
|
|
11
12
|
findAllMatches: false,
|
|
12
13
|
includeMatches: true,
|
|
13
14
|
keys: [
|
|
14
|
-
{
|
|
15
|
-
|
|
16
|
-
weight: 1, // highest relevance
|
|
17
|
-
},
|
|
18
|
-
{
|
|
19
|
-
name: "name",
|
|
20
|
-
weight: 0.8, // slightly less relevance than symbol
|
|
21
|
-
},
|
|
15
|
+
{ name: "symbol", weight: 1 },
|
|
16
|
+
{ name: "name", weight: 0.8 },
|
|
22
17
|
],
|
|
23
18
|
};
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
const unavailableChainIds = getDisabledChainsIds({ config, direction });
|
|
32
|
-
return (tokensArray?.filter((token, index, self) => {
|
|
33
|
-
const isTokenUnique = index ===
|
|
34
|
-
self.findIndex((t) => t.chainId === token.chainId && t.address === token.address);
|
|
35
|
-
const isUnavailableChainId = unavailableChainIds.includes(String(token.chainId));
|
|
36
|
-
return isTokenUnique && !isUnavailableChainId;
|
|
37
|
-
}) ?? []);
|
|
38
|
-
}, [config, direction]);
|
|
39
|
-
const unformattedTokens = useMemo(() => {
|
|
40
|
-
// Assign allSquidTokens if available, otherwise fallback to squid.tokens
|
|
41
|
-
// So loading tokens & chains can be faster on frontend
|
|
42
|
-
const tokensArray = (allSquidTokens ?? []).length > 0 ? allSquidTokens : squid?.tokens ?? [];
|
|
43
|
-
const filteredTokens = filterWrongTokens(tokensArray);
|
|
44
|
-
return filteredTokens ?? squid?.tokens ?? [];
|
|
45
|
-
}, [allSquidTokens, squid?.tokens, filterWrongTokens]);
|
|
46
|
-
const convertPaths = (tokens) => {
|
|
47
|
-
return tokens.map((token) => {
|
|
48
|
-
// Only transform squid assets paths
|
|
49
|
-
if (token.logoURI?.includes("0xsquid/assets")) {
|
|
50
|
-
const newImg = token.logoURI
|
|
51
|
-
?.replace("raw.githubusercontent.com/0xsquid/assets/main/images/tokens/", "raw.githubusercontent.com/0xsquid/assets/6c331dd3d2e349cb0eedc6223f16890277984eb3/images/tokens/pngs/")
|
|
52
|
-
.replace(".svg", ".png");
|
|
53
|
-
return { ...token, logoURI: newImg };
|
|
19
|
+
const filterTokensBasedOnChainType = (tokens, chainType) => {
|
|
20
|
+
return tokens.filter((token) => {
|
|
21
|
+
if (chainType === ChainType.EVM) {
|
|
22
|
+
return !isNaN(Number(token.chainId));
|
|
23
|
+
}
|
|
24
|
+
else {
|
|
25
|
+
return isNaN(Number(token.chainId));
|
|
54
26
|
}
|
|
55
|
-
return token;
|
|
56
27
|
});
|
|
57
28
|
};
|
|
58
|
-
const
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
}, [
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
29
|
+
const disabledChainsForDirection = useMemo(() => {
|
|
30
|
+
return getDisabledChainsIds({
|
|
31
|
+
config: useSquidStore.getState().config,
|
|
32
|
+
direction,
|
|
33
|
+
});
|
|
34
|
+
}, [direction]);
|
|
35
|
+
// Wrap multiple variables definitions in a single useMemo
|
|
36
|
+
// to avoid multiple re-renders
|
|
37
|
+
const squidTokensFormatted = useMemo(() => {
|
|
38
|
+
const filterWrongTokens = (tokensArray) => {
|
|
39
|
+
return (tokensArray?.filter((token) => {
|
|
40
|
+
//
|
|
41
|
+
// TODO: Keep that piece of code for later if needed
|
|
42
|
+
// But in a perfect world, we should have a unique token list coming from the backend
|
|
43
|
+
//
|
|
44
|
+
// const isTokenUnique =
|
|
45
|
+
// index ===
|
|
46
|
+
// self.findIndex(
|
|
47
|
+
// (t) => t.chainId === token.chainId && t.address === token.address
|
|
48
|
+
// );
|
|
49
|
+
const isUnavailableChainId = disabledChainsForDirection.includes(String(token.chainId));
|
|
50
|
+
return !isUnavailableChainId;
|
|
51
|
+
}) ?? []);
|
|
52
|
+
};
|
|
53
|
+
const initialTokens = (() => {
|
|
54
|
+
const tokensArray = (allSquidTokens ?? []).length > 0
|
|
55
|
+
? allSquidTokens
|
|
56
|
+
: squid?.tokens ?? [];
|
|
57
|
+
return filterWrongTokens(tokensArray);
|
|
58
|
+
})();
|
|
59
|
+
// TODO: Need to update squid assets repo to avoid doing that manually
|
|
60
|
+
const convertPaths = (tokens) => {
|
|
61
|
+
return tokens.map((token) => {
|
|
62
|
+
if (token.logoURI?.includes("0xsquid/assets")) {
|
|
63
|
+
const newImg = token.logoURI
|
|
64
|
+
?.replace("raw.githubusercontent.com/0xsquid/assets/main/images/tokens/", "raw.githubusercontent.com/0xsquid/assets/6c331dd3d2e349cb0eedc6223f16890277984eb3/images/tokens/pngs/")
|
|
65
|
+
.replace(".svg", ".png");
|
|
66
|
+
return { ...token, logoURI: newImg };
|
|
67
|
+
}
|
|
68
|
+
return token;
|
|
69
|
+
});
|
|
70
|
+
};
|
|
71
|
+
const tokens = convertPaths(initialTokens);
|
|
72
|
+
return {
|
|
73
|
+
tokens,
|
|
74
|
+
};
|
|
75
|
+
}, [allSquidTokens?.length, disabledChainsForDirection]);
|
|
76
|
+
const tokensWithUsdPriceUpdated = useMemo(() => {
|
|
77
|
+
if (squidInfoQuery.status === "success") {
|
|
78
|
+
// We need to update the USD price of tokens with the latest data
|
|
79
|
+
const latestData = squidInfoQuery.data;
|
|
80
|
+
const updatedTokens = squidTokensFormatted.tokens.map((t) => {
|
|
81
|
+
const token = latestData?.tokens.find((lt) => lt.address === t.address && lt.chainId === t.chainId);
|
|
82
|
+
return {
|
|
83
|
+
...t,
|
|
84
|
+
usdPrice: token?.usdPrice ?? t.usdPrice,
|
|
85
|
+
};
|
|
86
|
+
});
|
|
87
|
+
const evmTokens = filterTokensBasedOnChainType(updatedTokens, ChainType.EVM);
|
|
88
|
+
const cosmosTokens = filterTokensBasedOnChainType(updatedTokens, ChainType.COSMOS);
|
|
89
|
+
return {
|
|
90
|
+
updatedTokens,
|
|
91
|
+
evmTokens,
|
|
92
|
+
cosmosTokens,
|
|
93
|
+
};
|
|
94
|
+
}
|
|
95
|
+
// Fallback if not success or loading
|
|
96
|
+
return {
|
|
97
|
+
updatedTokens: squid?.tokens ?? [],
|
|
98
|
+
evmTokens: filterTokensBasedOnChainType(squid?.tokens ?? [], ChainType.EVM),
|
|
99
|
+
cosmosTokens: filterTokensBasedOnChainType(squid?.tokens ?? [], ChainType.COSMOS),
|
|
100
|
+
};
|
|
101
|
+
// On purpose only squidInfoQuery.status is used
|
|
102
|
+
// Because that's something refetched periodically to fetch the USD prices of tokens
|
|
103
|
+
// So we only want to recompute the tokens when the status of that is success
|
|
104
|
+
}, [squidInfoQuery.status, squid, squidTokensFormatted.tokens]);
|
|
67
105
|
return {
|
|
68
|
-
tokens,
|
|
106
|
+
tokens: tokensWithUsdPriceUpdated.updatedTokens,
|
|
107
|
+
evmTokens: tokensWithUsdPriceUpdated.evmTokens,
|
|
108
|
+
cosmosTokens: tokensWithUsdPriceUpdated.cosmosTokens,
|
|
69
109
|
fuseSearchOptions,
|
|
70
|
-
forceSquidInfoRefetch,
|
|
71
|
-
squidInfoQuery,
|
|
72
|
-
evmTokens,
|
|
73
|
-
cosmosTokens,
|
|
74
110
|
};
|
|
75
111
|
};
|
|
76
112
|
//# sourceMappingURL=useSquidTokens.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useSquidTokens.js","sourceRoot":"","sources":["../../../src/hooks/tokens/useSquidTokens.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"useSquidTokens.js","sourceRoot":"","sources":["../../../src/hooks/tokens/useSquidTokens.ts"],"names":[],"mappings":"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"}
|
|
@@ -2,43 +2,43 @@ import { RouteResponse } from "@0xsquid/sdk/dist/types";
|
|
|
2
2
|
import type { FeeCost, GasCost } from "@0xsquid/squid-types";
|
|
3
3
|
import { BigNumber } from "ethers";
|
|
4
4
|
export declare const useEstimate: (squidRoute?: RouteResponse["route"]) => {
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
5
|
+
balanceFormatted: string;
|
|
6
|
+
totalWithRefundEstimate: {
|
|
7
|
+
totalAmount: string;
|
|
8
|
+
totalAmountUSD: number;
|
|
9
|
+
feeToken: import("@0xsquid/squid-types").Token | undefined;
|
|
10
|
+
};
|
|
11
|
+
proposedGasDestinationAmount: {
|
|
12
|
+
value: number;
|
|
13
|
+
currency: string | undefined;
|
|
14
|
+
};
|
|
15
|
+
swapAmountExceedsLimit: boolean;
|
|
16
|
+
enoughBalanceToSwap: boolean;
|
|
11
17
|
fromToken: import("@0xsquid/squid-types").Token | undefined;
|
|
12
|
-
toAmountUSD: string | undefined;
|
|
13
|
-
toAmountUSDFloat: number;
|
|
14
18
|
fromAmount: string | undefined;
|
|
15
19
|
fromAmountFormatted: string;
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
20
|
+
sourceChainNativeToken: import("@0xsquid/squid-types").Token | undefined;
|
|
21
|
+
destChainNativeToken: import("@0xsquid/squid-types").Token | undefined;
|
|
22
|
+
toAmountUSD: string | undefined;
|
|
23
|
+
toAmountUSDFloat: number;
|
|
24
|
+
exchangeRate: string;
|
|
25
|
+
toAmountMin: string;
|
|
26
|
+
toAmount: string;
|
|
27
|
+
allFeeCosts: FeeCost[];
|
|
28
|
+
allGasCosts: GasCost[];
|
|
23
29
|
firstFeeCost: FeeCost | undefined;
|
|
24
30
|
firstGasCost: GasCost | undefined;
|
|
25
|
-
sameTokenBetweenFees: boolean;
|
|
26
|
-
totalFeesInNativeTokenPlusRatio: BigNumber;
|
|
27
|
-
totalNativeFees: BigNumber;
|
|
28
|
-
sourceChainNativeToken: import("@0xsquid/squid-types").Token | undefined;
|
|
29
31
|
expressFeeCost: FeeCost | undefined;
|
|
30
|
-
|
|
31
|
-
value: number;
|
|
32
|
-
currency: string | undefined;
|
|
33
|
-
};
|
|
32
|
+
integratorFeeCost: FeeCost | undefined;
|
|
34
33
|
expectedGasRefundCost: BigNumber;
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
34
|
+
sameTokenBetweenFees: boolean;
|
|
35
|
+
isFromTokenNative: boolean;
|
|
36
|
+
totalNativeFees: BigNumber;
|
|
37
|
+
totalFeesInNativeTokenPlusRatio: BigNumber;
|
|
38
|
+
fromBalanceEnoughToSwap: boolean;
|
|
39
|
+
minAmountValueWarnMsg: string | undefined;
|
|
40
|
+
estimatedRouteDuration: {
|
|
41
|
+
seconds: number;
|
|
42
|
+
format: (sTemplate?: string, mTemplate?: string) => string;
|
|
39
43
|
};
|
|
40
|
-
destChainNativeToken: import("@0xsquid/squid-types").Token | undefined;
|
|
41
|
-
integratorFeeCost: FeeCost | undefined;
|
|
42
|
-
enoughBalanceToSwap: boolean;
|
|
43
|
-
swapAmountExceedsLimit: boolean;
|
|
44
44
|
};
|