@@ -3,6 +3,7 @@ import { useMemo, type ReactNode } from 'react'
33import {
44 useAccountHasClaimableRewards ,
55 useChallengeCooldownSchedule ,
6+ useFeatureFlag ,
67 useSelectTierInfo ,
78 useTotalBalanceWithFallback ,
89 useUSDCBalance
@@ -31,12 +32,13 @@ import {
3132 IconCloudUpload ,
3233 IconUser ,
3334 IconGift ,
35+ IconWallet ,
3436 useTheme ,
3537 NotificationCount
3638} from '@audius/harmony-native'
3739import LogoUSDC from 'app/assets/images/logoUSDC.svg'
3840import { IconAudioBadge } from 'app/components/audio-rewards'
39- import { useFeatureFlag , useRemoteVar } from 'app/hooks/useRemoteConfig'
41+ import { useRemoteVar } from 'app/hooks/useRemoteConfig'
4042import type { AppTabScreenParamList } from 'app/screens/app-screen'
4143import { make } from 'app/services/analytics'
4244import { env } from 'app/services/env'
@@ -52,6 +54,7 @@ const messages = {
5254 upload : 'Upload' ,
5355 settings : 'Settings' ,
5456 featureFlags : 'Feature Flags' ,
57+ wallet : 'Wallet' ,
5558 usdcDollarSign : ( balance : string ) => `$${ balance } `
5659}
5760
@@ -70,6 +73,9 @@ export const useNavConfig = () => {
7073 const { isEnabled : isFeatureFlagAccessEnabled } = useFeatureFlag (
7174 FeatureFlags . FEATURE_FLAG_ACCESS
7275 )
76+ const { isEnabled : isWalletUIUpdateEnabled } = useFeatureFlag (
77+ FeatureFlags . WALLET_UI_UPDATE
78+ )
7379 const challengeRewardIds = useRemoteVar ( StringKeys . CHALLENGE_REWARD_IDS )
7480 const hasClaimableRewards = useAccountHasClaimableRewards ( challengeRewardIds )
7581 const hasUnreadMessages = useSelector ( getHasUnreadMessages )
@@ -111,31 +117,45 @@ export const useNavConfig = () => {
111117 unreadMessagesCount > 0 ? (
112118 < NotificationCount count = { unreadMessagesCount } />
113119 ) : undefined
114- } ,
115- {
116- icon : IconCrown ,
117- label : messages . audio ,
118- to : 'AudioScreen' ,
119- rightIcon : (
120- < BalancePill
121- balance = { audioBalanceFormatted }
122- icon = { < IconAudioBadge tier = { tier } showNoTier size = 'm' /> }
123- isLoading = { isAudioBalanceLoading }
124- />
125- )
126- } ,
127- {
128- icon : IconDonate ,
129- label : messages . usdc ,
130- to : 'PayAndEarnScreen' ,
131- rightIcon : (
132- < BalancePill
133- balance = { messages . usdcDollarSign ( usdcBalanceFormatted ) }
134- icon = { < LogoUSDC height = { spacing . unit5 } width = { spacing . unit5 } /> }
135- isLoading = { isUSDCBalanceLoading }
136- />
137- )
138- } ,
120+ }
121+ ]
122+
123+ if ( isWalletUIUpdateEnabled ) {
124+ items . push ( {
125+ icon : IconWallet ,
126+ label : messages . wallet ,
127+ to : 'wallet'
128+ } )
129+ } else {
130+ items . push (
131+ {
132+ icon : IconCrown ,
133+ label : messages . audio ,
134+ to : 'AudioScreen' ,
135+ rightIcon : (
136+ < BalancePill
137+ balance = { audioBalanceFormatted }
138+ icon = { < IconAudioBadge tier = { tier } showNoTier size = 'm' /> }
139+ isLoading = { isAudioBalanceLoading }
140+ />
141+ )
142+ } ,
143+ {
144+ icon : IconDonate ,
145+ label : messages . usdc ,
146+ to : 'PayAndEarnScreen' ,
147+ rightIcon : (
148+ < BalancePill
149+ balance = { messages . usdcDollarSign ( usdcBalanceFormatted ) }
150+ icon = { < LogoUSDC height = { spacing . unit5 } width = { spacing . unit5 } /> }
151+ isLoading = { isUSDCBalanceLoading }
152+ />
153+ )
154+ }
155+ )
156+ }
157+
158+ items . push (
139159 {
140160 icon : IconGift ,
141161 label : messages . rewards ,
@@ -155,7 +175,7 @@ export const useNavConfig = () => {
155175 label : messages . settings ,
156176 to : 'SettingsScreen'
157177 }
158- ]
178+ )
159179
160180 if ( env . ENVIRONMENT === 'staging' || isFeatureFlagAccessEnabled ) {
161181 items . push ( {
@@ -177,7 +197,8 @@ export const useNavConfig = () => {
177197 usdcBalanceFormatted ,
178198 isUSDCBalanceLoading ,
179199 hasClaimableRewards ,
180- isFeatureFlagAccessEnabled
200+ isFeatureFlagAccessEnabled ,
201+ isWalletUIUpdateEnabled
181202 ] )
182203
183204 return {
0 commit comments