Skip to content

Commit 47ae026

Browse files
fix: balance
1 parent 8ae4098 commit 47ae026

File tree

2 files changed

+31
-19
lines changed

2 files changed

+31
-19
lines changed

packages/domain/src/token/token.ts

Lines changed: 5 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -32,9 +32,8 @@ export const asTokenBalanceEntries = (tokenGroup, priceData) => {
3232
return {
3333
chainId,
3434
symbol,
35-
amount,
35+
amount: BigInt(amount),
3636
price,
37-
3837
value: asPriceValue(BigInt(amount), price, decimals),
3938
};
4039
},
@@ -44,7 +43,10 @@ export const asTokenBalanceEntries = (tokenGroup, priceData) => {
4443
symbol,
4544
amount,
4645
subEntries,
47-
value: subEntries.reduce((acc, { value }) => acc + value, 0n),
46+
value: subEntries.reduce(
47+
(acc: bigint, { value }: { value: bigint }) => acc + value,
48+
0n,
49+
),
4850
};
4951
},
5052
);

packages/ui-react/src/components/token/token-balance-chart.tsx

Lines changed: 26 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -8,20 +8,11 @@ import {
88
ChartTooltipContent,
99
} from "#components/shadcn/chart";
1010

11-
import { formatUnitsWithLocale } from "@geist/domain/amount.js";
11+
import { formatUnitsWithLocale } from "@geist/domain/amount";
1212
import { Label, Pie, PieChart } from "recharts";
1313
import type { TokenBalanceEntry } from "./token-balance-entry";
1414

15-
const chartData = [
16-
{ browser: "chrome", visitors: 275, fill: "hsl(var(--chart-1))" },
17-
{ browser: "safari", visitors: 200, fill: "hsl(var(--chart-2))" },
18-
];
19-
20-
const chartConfig = {
21-
visitors: {
22-
label: "Visitors",
23-
},
24-
} satisfies ChartConfig;
15+
const chartConfig = {} satisfies ChartConfig;
2516

2617
export const TokenBalanceChart = ({
2718
tokenBalances,
@@ -34,12 +25,13 @@ export const TokenBalanceChart = ({
3425

3526
const chartData = tokenBalances.map((entry, i) => {
3627
return {
37-
browser: entry.symbol,
38-
visitors: entry.value || 0,
28+
amount: Number(entry.amount || 0),
29+
value: Number(entry.value || 0),
3930
fill: `hsl(var(--chart-${i}))`,
4031
};
4132
});
4233

34+
console.log("chartData", tokenBalances, chartData);
4335
return (
4436
<div className="w-full h-full]">
4537
<ChartContainer
@@ -50,12 +42,30 @@ export const TokenBalanceChart = ({
5042
<PieChart>
5143
<ChartTooltip
5244
cursor={false}
53-
content={<ChartTooltipContent hideLabel />}
45+
content={
46+
<ChartTooltipContent
47+
hideLabel
48+
formatter={(v, key) => {
49+
return (
50+
<div>
51+
{formatUnitsWithLocale({
52+
value: BigInt(v),
53+
exponent: 0,
54+
formatOptions: {
55+
style: "currency",
56+
maximumFractionDigits: 2,
57+
},
58+
})}
59+
</div>
60+
);
61+
}}
62+
/>
63+
}
5464
/>
5565
<Pie
5666
data={chartData}
5767
label
58-
dataKey="visitors"
68+
dataKey="amount"
5969
nameKey="browser"
6070
innerRadius={60}
6171
strokeWidth={5}
@@ -77,7 +87,7 @@ export const TokenBalanceChart = ({
7787
>
7888
{formatUnitsWithLocale({
7989
value: totalAmount,
80-
exponent: 0,
90+
exponent: 18,
8191
formatOptions: {
8292
style: "currency",
8393
maximumFractionDigits: 2,

0 commit comments

Comments
 (0)