Skip to content

Commit 93372c4

Browse files
improve readability of investments aggregate
1 parent 9ad09da commit 93372c4

File tree

1 file changed

+10
-12
lines changed

1 file changed

+10
-12
lines changed

packages/app/features/home/InvestmentsBalanceCard.tsx

Lines changed: 10 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
import { Button, Card, Paragraph, Spinner, Theme, ThemeName, XStack, YStack } from '@my/ui'
1+
import { Button, Card, Paragraph, Spinner, Theme, XStack, YStack } from '@my/ui'
22
import formatAmount from 'app/utils/formatAmount'
33

44
import { ChevronLeft, ChevronRight } from '@tamagui/lucide-icons'
@@ -101,20 +101,18 @@ function InvestmentsAggregate() {
101101
.map((c) => c.coingeckoTokenId)
102102

103103
const { data: marketData, isLoading, isError } = useMultipleTokensMarketData(tokenIds)
104-
const { investmentsDailyAggregate, sign } = useMemo(() => {
105-
if (!marketData?.length) return { investmentsDailyAggregate: 0, sign: null } as const
104+
const aggregatePercentage = useMemo(() => {
105+
if (!marketData?.length) return 0
106106

107107
// Simple average of percentage changes
108108
const aggregatePercentage =
109109
marketData.reduce((total, coin) => {
110110
return total + (coin?.price_change_percentage_24h ?? 0)
111111
}, 0) / marketData.length
112112

113-
return {
114-
investmentsDailyAggregate: Number(aggregatePercentage.toFixed(2)),
115-
sign: aggregatePercentage > 0 ? 'positive' : aggregatePercentage < 0 ? 'negative' : 'zero',
116-
} as const
113+
return Number(aggregatePercentage.toFixed(2))
117114
}, [marketData])
115+
118116
if (tokenIds.length === 0)
119117
return (
120118
<XStack gap="$2" ai="center">
@@ -136,21 +134,21 @@ function InvestmentsAggregate() {
136134
</XStack>
137135
)
138136

139-
if (sign === 'positive')
137+
if (aggregatePercentage > 0)
140138
return (
141139
<Theme name={'green_active'}>
142-
<Paragraph fontSize={'$4'}>+{investmentsDailyAggregate}%</Paragraph>
140+
<Paragraph fontSize={'$4'}>+{aggregatePercentage}%</Paragraph>
143141
</Theme>
144142
)
145-
if (sign === 'negative')
143+
if (aggregatePercentage < 0)
146144
return (
147145
<Theme name={'red_active'}>
148-
<Paragraph fontSize={'$4'}>{investmentsDailyAggregate}%</Paragraph>
146+
<Paragraph fontSize={'$4'}>{aggregatePercentage}%</Paragraph>
149147
</Theme>
150148
)
151149
return (
152150
<Paragraph fontSize={'$4'} color="$color10">
153-
{investmentsDailyAggregate}%
151+
{aggregatePercentage}%
154152
</Paragraph>
155153
)
156154
}

0 commit comments

Comments
 (0)