diff --git a/src/languages/en_US.json b/src/languages/en_US.json
index 3df17d634b5..d1c735978ba 100644
--- a/src/languages/en_US.json
+++ b/src/languages/en_US.json
@@ -1253,7 +1253,7 @@
"share_link": "Share Link",
"next_drop": "Next Drop",
"your_rank": "Your Rank",
- "out_of_x": "Out of %{totalUsers}",
+ "of_x": "Of %{totalUsers}",
"referrals": "Referrals",
"streak": "Streak",
"longest_yet": "Longest yet",
diff --git a/src/screens/points/components/InfoCard.tsx b/src/screens/points/components/InfoCard.tsx
index 5cf8da68af5..31a2e913a9c 100644
--- a/src/screens/points/components/InfoCard.tsx
+++ b/src/screens/points/components/InfoCard.tsx
@@ -1,5 +1,6 @@
import React from 'react';
import { Box, Inline, Stack, Text } from '@/design-system';
+import { TextSize } from '@/design-system/components/Text/Text';
export const InfoCard = ({
// onPress,
@@ -13,43 +14,58 @@ export const InfoCard = ({
title: string;
subtitle: string;
mainText: string;
- icon: string;
+ icon?: string;
accentColor: string;
-}) => (
- //
-
-
- {/* */}
-
- {title}
-
- {/*
+}) => {
+ let mainTextFontSize: TextSize;
+ if (mainText.length > 10) {
+ mainTextFontSize = '17pt';
+ } else if (mainText.length > 9) {
+ mainTextFontSize = '20pt';
+ } else {
+ mainTextFontSize = '22pt';
+ }
+
+ return (
+ //
+
+
+ {/* */}
+
+ {title}
+
+ {/*
*/}
-
- {mainText}
-
-
-
- {icon}
-
-
- {subtitle}
-
-
-
-
- //
-);
+
+
+ {mainText}
+
+
+
+ {icon && (
+
+ {icon}
+
+ )}
+
+ {subtitle}
+
+
+
+
+ //
+ );
+};
diff --git a/src/screens/points/content/PointsContent.tsx b/src/screens/points/content/PointsContent.tsx
index 4cd654ccb88..9e17f03f1d9 100644
--- a/src/screens/points/content/PointsContent.tsx
+++ b/src/screens/points/content/PointsContent.tsx
@@ -25,7 +25,7 @@ import MaskedView from '@react-native-masked-view/masked-view';
import BlurredRainbow from '@/assets/blurredRainbow.png';
import Planet from '@/assets/planet.png';
import LinearGradient from 'react-native-linear-gradient';
-import { safeAreaInsetValues } from '@/utils';
+import { deviceUtils, safeAreaInsetValues } from '@/utils';
import { ButtonPressAnimation } from '@/components/animations';
import { getHeaderHeight } from '@/navigation/SwipeNavigator';
import { addressCopiedToastAtom } from '@/recoil/addressCopiedToastAtom';
@@ -33,10 +33,7 @@ import { useRecoilState } from 'recoil';
import * as i18n from '@/languages';
import { usePoints } from '@/resources/points';
import { isNil } from 'lodash';
-import {
- abbreviateNumber,
- getFormattedTimeQuantity,
-} from '@/helpers/utilities';
+import { getFormattedTimeQuantity } from '@/helpers/utilities';
import { address as formatAddress } from '@/utils/abbreviations';
import { delay } from '@/utils/delay';
import { Toast, ToastPositionContainer } from '@/components/toasts';
@@ -244,17 +241,14 @@ export default function PointsContent() {
{}}
title={i18n.t(i18n.l.points.points.your_rank)}
- mainText={`#${
- rank >= 1_000_000
- ? abbreviateNumber(rank, 2)
- : rank.toLocaleString('en-US')
- }`}
- icon=""
- subtitle={i18n.t(i18n.l.points.points.out_of_x, {
- totalUsers:
- totalUsers >= 1_000_000
- ? abbreviateNumber(totalUsers, 2)
- : totalUsers.toLocaleString('en-US'),
+ mainText={`#${rank.toLocaleString('en-US')}`}
+ icon={
+ totalUsers >= 10_000_000 && deviceUtils.isSmallPhone
+ ? undefined
+ : ''
+ }
+ subtitle={i18n.t(i18n.l.points.points.of_x, {
+ totalUsers: totalUsers.toLocaleString('en-US'),
})}
accentColor={green}
/>