diff --git a/app/src/lib/components/TransferFrom/components/Cube/faces/Assets.svelte b/app/src/lib/components/TransferFrom/components/Cube/faces/Assets.svelte
index bbb7a20380..9bf86a41ba 100644
--- a/app/src/lib/components/TransferFrom/components/Cube/faces/Assets.svelte
+++ b/app/src/lib/components/TransferFrom/components/Cube/faces/Assets.svelte
@@ -1,29 +1,29 @@
diff --git a/app/src/lib/components/TransferFrom/components/Cube/faces/Chains.svelte b/app/src/lib/components/TransferFrom/components/Cube/faces/Chains.svelte
index 0a8a105697..3c5183f7f5 100644
--- a/app/src/lib/components/TransferFrom/components/Cube/faces/Chains.svelte
+++ b/app/src/lib/components/TransferFrom/components/Cube/faces/Chains.svelte
@@ -1,37 +1,37 @@
diff --git a/app/src/lib/components/TransferFrom/components/Cube/faces/Intent.svelte b/app/src/lib/components/TransferFrom/components/Cube/faces/Intent.svelte
index 97bdc872a1..5a916b9085 100644
--- a/app/src/lib/components/TransferFrom/components/Cube/faces/Intent.svelte
+++ b/app/src/lib/components/TransferFrom/components/Cube/faces/Intent.svelte
@@ -2,9 +2,7 @@
import Direction from "$lib/components/TransferFrom/components/Direction.svelte"
import SelectedAsset from "$lib/components/TransferFrom/components/SelectedAsset.svelte"
import type { Readable } from "svelte/store"
-import type {
- ValidationStore,
-} from "$lib/components/TransferFrom/transfer/validation.ts"
+import type { ValidationStore } from "$lib/components/TransferFrom/transfer/validation.ts"
import { Button } from "$lib/components/ui/button"
import type { IntentsStore } from "$lib/components/TransferFrom/transfer/intents.ts"
import type { CubeFaces } from "$lib/components/TransferFrom/components/Cube/types.ts"
diff --git a/app/src/lib/components/TransferFrom/components/Cube/faces/Transfer.svelte b/app/src/lib/components/TransferFrom/components/Cube/faces/Transfer.svelte
index 1f55a2ce92..49f9b34122 100644
--- a/app/src/lib/components/TransferFrom/components/Cube/faces/Transfer.svelte
+++ b/app/src/lib/components/TransferFrom/components/Cube/faces/Transfer.svelte
@@ -50,7 +50,10 @@ let transferState: Writable
= writable({ kind: "PRE_TRANSFER" })
const transfer = async () => {
if (!$validation.isValid) return
- let parsedAmount = parseUnits($validation.transfer.amount, $validation.transfer.asset.metadata.decimals)
+ let parsedAmount = parseUnits(
+ $validation.transfer.amount,
+ $validation.transfer.asset.metadata.decimals
+ )
/** --- APTOS START --- */
if ($validation.transfer.sourceChain.rpc_type === "aptos") {
diff --git a/app/src/lib/components/TransferFrom/components/SelectedAsset.svelte b/app/src/lib/components/TransferFrom/components/SelectedAsset.svelte
index e80550369e..84f5814d52 100644
--- a/app/src/lib/components/TransferFrom/components/SelectedAsset.svelte
+++ b/app/src/lib/components/TransferFrom/components/SelectedAsset.svelte
@@ -1,22 +1,22 @@
diff --git a/app/src/lib/components/TransferFrom/transfer/balances.ts b/app/src/lib/components/TransferFrom/transfer/balances.ts
index 135d5c674c..a5748a28b9 100644
--- a/app/src/lib/components/TransferFrom/transfer/balances.ts
+++ b/app/src/lib/components/TransferFrom/transfer/balances.ts
@@ -1,11 +1,9 @@
-
import type { UserAddresses } from "$lib/types.ts"
import { userAddrCosmos } from "$lib/wallet/cosmos"
import { userAddrEvm } from "$lib/wallet/evm"
import { userAddressAptos } from "$lib/wallet/aptos"
-import type { QueryObserverResult } from "@tanstack/query-core"
-import type {BalanceData} from "$lib/queries/balance";
-import {derived, type Readable, writable} from "svelte/store";
+import type { BalanceData } from "$lib/queries/balance"
+import { derived, type Readable, writable } from "svelte/store"
export let userAddress: Readable
= derived(
[userAddrCosmos, userAddrEvm, userAddressAptos],
@@ -16,4 +14,4 @@ export let userAddress: Readable = derived(
})
)
-export const balanceStore = writable([])
\ No newline at end of file
+export const balanceStore = writable>>([])
diff --git a/app/src/lib/components/TransferFrom/transfer/context.ts b/app/src/lib/components/TransferFrom/transfer/context.ts
index 47c78b7a06..d9478583bc 100644
--- a/app/src/lib/components/TransferFrom/transfer/context.ts
+++ b/app/src/lib/components/TransferFrom/transfer/context.ts
@@ -17,37 +17,34 @@ export interface ContextStore {
}
export function createContextStore(chains: Array): Readable {
- const balances = derived(
- balanceStore,
- ($rawBalances: BalanceData[][]) => {
- if ($rawBalances?.length === 0) {
- return chains.map(chain => ({
- chainId: chain.chain_id,
- balances: []
- }))
- }
-
- return chains.map((chain, chainIndex) => {
- const chainBalances = $rawBalances[chainIndex]
+ const balances = derived(balanceStore, ($rawBalances: Array>) => {
+ if ($rawBalances?.length === 0) {
+ return chains.map(chain => ({
+ chainId: chain.chain_id,
+ balances: []
+ }))
+ }
- if (!chainBalances || chainBalances.length === 0) {
- return {
- chainId: chain.chain_id,
- balances: []
- }
- }
+ return chains.map((chain, chainIndex) => {
+ const chainBalances = $rawBalances[chainIndex]
+ if (!chainBalances || chainBalances.length === 0) {
return {
chainId: chain.chain_id,
- balances: chainBalances
+ balances: []
}
- })
- }
- ) as Readable
+ }
+
+ return {
+ chainId: chain.chain_id,
+ balances: chainBalances
+ }
+ })
+ }) as Readable
return derived([userAddress, balances], ([$userAddress, $balances]) => ({
chains,
userAddress: $userAddress,
balances: $balances
}))
-}
\ No newline at end of file
+}
diff --git a/app/src/lib/components/TransferFrom/transfer/intents.ts b/app/src/lib/components/TransferFrom/transfer/intents.ts
index f135e8b67d..b47ad4cfd9 100644
--- a/app/src/lib/components/TransferFrom/transfer/intents.ts
+++ b/app/src/lib/components/TransferFrom/transfer/intents.ts
@@ -49,12 +49,9 @@ export function createIntentStore(
}))
})
- const selectedAsset = derived(
- [sourceAssets, rawIntents],
- ([$sourceAssets, $rawIntents]) => {
- return $sourceAssets.find(x => x.metadata.denom === $rawIntents.asset) ?? null
- }
- )
+ const selectedAsset = derived([sourceAssets, rawIntents], ([$sourceAssets, $rawIntents]) => {
+ return $sourceAssets.find(x => x.metadata.denom === $rawIntents.asset) ?? null
+ })
return derived(
[sourceChain, destinationChain, selectedAsset, sourceAssets, rawIntents],
@@ -67,4 +64,4 @@ export function createIntentStore(
amount: $rawIntents.amount
})
)
-}
\ No newline at end of file
+}
diff --git a/app/src/lib/components/TransferFrom/transfer/validation.ts b/app/src/lib/components/TransferFrom/transfer/validation.ts
index f7b02b425a..b5b9d12b70 100644
--- a/app/src/lib/components/TransferFrom/transfer/validation.ts
+++ b/app/src/lib/components/TransferFrom/transfer/validation.ts
@@ -81,7 +81,10 @@ export function createValidationStore(
// Amount validation
if ($rawIntents.amount && $intents.selectedAsset) {
try {
- const parsedAmount = parseUnits($rawIntents.amount, $intents.selectedAsset.metadata.decimals ?? 0)
+ const parsedAmount = parseUnits(
+ $rawIntents.amount,
+ $intents.selectedAsset.metadata.decimals ?? 0
+ )
if (parsedAmount <= 0n) {
errors.amount = "Amount must be greater than 0"
}
@@ -120,13 +123,7 @@ export function createValidationStore(
([$rawIntents, $intents, $context, $errors]) => {
if (Object.keys($errors).length > 0) return undefined
- if (
- !(
- $intents.sourceChain &&
- $intents.destinationChain &&
- $intents.selectedAsset
- )
- ) {
+ if (!($intents.sourceChain && $intents.destinationChain && $intents.selectedAsset)) {
return undefined
}
@@ -151,4 +148,4 @@ export function createValidationStore(
? { transfer: $transfer as ValidTransfer, errors: $errors, isValid: true }
: { transfer: undefined, errors: $errors, isValid: false }
})
-}
\ No newline at end of file
+}
diff --git a/app/src/lib/queries/balance/index.ts b/app/src/lib/queries/balance/index.ts
index b4d8a2f60b..05c123b66c 100644
--- a/app/src/lib/queries/balance/index.ts
+++ b/app/src/lib/queries/balance/index.ts
@@ -1,12 +1,12 @@
-import {derived, type Readable, writable} from "svelte/store"
-import {bech32ToBech32Address} from "@unionlabs/client"
-import {type Address, isAddress} from "viem"
-import type {Chain, ChainAsset, UserAddresses} from "$lib/types"
-import {erc20ReadMulticall} from "./evm/multicall.ts"
-import {getCosmosChainBalances} from "./cosmos.ts"
-import {getAptosChainBalances} from "./aptos.ts"
-import {createQueries} from "@tanstack/svelte-query"
-import type {QueryObserverResult} from "@tanstack/query-core"
+import { derived, type Readable, writable } from "svelte/store"
+import { bech32ToBech32Address } from "@unionlabs/client"
+import { type Address, isAddress } from "viem"
+import type { Chain, ChainAsset, UserAddresses } from "$lib/types"
+import { erc20ReadMulticall } from "./evm/multicall.ts"
+import { getCosmosChainBalances } from "./cosmos.ts"
+import { getAptosChainBalances } from "./aptos.ts"
+import { createQueries } from "@tanstack/svelte-query"
+import type { QueryObserverResult } from "@tanstack/query-core"
export type AssetMetadata = {
denom: string
@@ -18,7 +18,7 @@ export type AssetMetadata = {
metadata_level: "graphql" | "onchain" | "none"
}
export type BalanceData = {
- balance: string;
+ balance: string
metadata: AssetMetadata
}
@@ -35,7 +35,7 @@ export async function getAssetInfo(chain: Chain, denom: string): Promise isAddress(denom)).map(normalizeAddress)
: chain.assets
- .filter((asset): asset is ChainAsset & { denom: Address } => isAddress(asset.denom))
- .map(asset => normalizeAddress(asset.denom))
+ .filter((asset): asset is ChainAsset & { denom: Address } => isAddress(asset.denom))
+ .map(asset => normalizeAddress(asset.denom))
const results = await erc20ReadMulticall({
chainId: chain.chain_id,
@@ -112,16 +112,16 @@ export async function getUserBalances(
contractAddresses: contractAddresses as Array
})
- const balances = await Promise.all(results
- .map(async (result, index) => {
- const denom = normalizeAddress(contractAddresses[index]);
- const balance = result.balance?.toString() ?? "0";
- const metadata = await getAssetInfo(chain, denom);
- return { balance, metadata };
+ const balances = await Promise.all(
+ results.map(async (result, index) => {
+ const denom = normalizeAddress(contractAddresses[index])
+ const balance = result.balance?.toString() ?? "0"
+ const metadata = await getAssetInfo(chain, denom)
+ return { balance, metadata }
})
- );
+ )
- return balances.filter(result => BigInt(result.balance) > 0n);
+ return balances.filter(result => BigInt(result.balance) > 0n)
}
if (chain.rpc_type === "cosmos") {
@@ -141,10 +141,12 @@ export async function getUserBalances(
walletAddress: bech32Address
})
- return Promise.all(balances.map(async balance => ({
- balance: balance.balance.toString(),
- metadata: await getAssetInfo(chain, normalizeAddress(balance.address))
- })))
+ return Promise.all(
+ balances.map(async balance => ({
+ balance: balance.balance.toString(),
+ metadata: await getAssetInfo(chain, normalizeAddress(balance.address))
+ }))
+ )
}
if (chain.rpc_type === "aptos") {
@@ -159,10 +161,12 @@ export async function getUserBalances(
walletAddress: address
})
- return Promise.all(balances.map(async balance => ({
- balance: balance.balance.toString(),
- metadata: await getAssetInfo(chain, normalizeAddress(balance.address))
- })))
+ return Promise.all(
+ balances.map(async balance => ({
+ balance: balance.balance.toString(),
+ metadata: await getAssetInfo(chain, normalizeAddress(balance.address))
+ }))
+ )
}
return []
@@ -227,7 +231,9 @@ export function createChainBalances(
// Merge with placeholder balances to ensure all assets are represented
const mergedBalances = initialBalances.map(placeholder => {
- const enriched = balances.find(b => b.metadata.denom === placeholder.metadata.denom)
+ const enriched = balances.find(
+ b => b.metadata.denom === placeholder.metadata.denom
+ )
return enriched || placeholder
})
@@ -249,8 +255,10 @@ export function createChainBalances(
}
}))
.sort((a, b) => {
- const aValue = BigInt(a.balance) * BigInt(10 ** (18 - (a.metadata.decimals ?? 18)))
- const bValue = BigInt(b.balance) * BigInt(10 ** (18 - (b.metadata.decimals ?? 18)))
+ const aValue =
+ BigInt(a.balance) * BigInt(10 ** (18 - (a.metadata.decimals ?? 18)))
+ const bValue =
+ BigInt(b.balance) * BigInt(10 ** (18 - (b.metadata.decimals ?? 18)))
return bValue > aValue ? 1 : -1
})
} catch (error) {
@@ -279,4 +287,4 @@ export function allChainBalances(chains: Array, addressStore: Readable createChainBalances(chain, addressStore))
return derived(chainStores, $chainStores => $chainStores)
-}
\ No newline at end of file
+}
diff --git a/app/src/routes/balances/UserBalances.svelte b/app/src/routes/balances/UserBalances.svelte
index 19b44f2a4b..e01a45a128 100644
--- a/app/src/routes/balances/UserBalances.svelte
+++ b/app/src/routes/balances/UserBalances.svelte
@@ -1,44 +1,44 @@