Vary dialog by screen active

This commit is contained in:
Eric Bailey
2024-11-21 13:13:24 -06:00
parent 3445363031
commit 91568cc574
@@ -3,6 +3,7 @@ import {View} from 'react-native'
import {PURCHASES_ERROR_CODE} from 'react-native-purchases' import {PURCHASES_ERROR_CODE} from 'react-native-purchases'
import {msg, Trans} from '@lingui/macro' import {msg, Trans} from '@lingui/macro'
import {useLingui} from '@lingui/react' import {useLingui} from '@lingui/react'
import {useNavigationState} from '@react-navigation/native'
import { import {
usePurchaseOffering, usePurchaseOffering,
@@ -42,6 +43,9 @@ function DialogInner({control}: {control: Dialog.DialogControlProps}) {
const {gtMobile} = useBreakpoints() const {gtMobile} = useBreakpoints()
const {currentAccount} = useSession() const {currentAccount} = useSession()
const copy = useCoreOfferingCopy() const copy = useCoreOfferingCopy()
const routes = useNavigationState(state => state.routes)
const currentRoute = routes.at(routes.length - 1)
const isOnSubscriptionsPage = currentRoute?.name === 'Subscriptions'
const [offeringId, setOfferingId] = React.useState<SubscriptionOfferingId>( const [offeringId, setOfferingId] = React.useState<SubscriptionOfferingId>(
SubscriptionOfferingId.CoreAnnual, SubscriptionOfferingId.CoreAnnual,
@@ -230,6 +234,7 @@ function DialogInner({control}: {control: Dialog.DialogControlProps}) {
</Toggle.Group> </Toggle.Group>
<View style={[a.flex_row, a.pt_md, a.gap_sm]}> <View style={[a.flex_row, a.pt_md, a.gap_sm]}>
{!isOnSubscriptionsPage && (
<Link <Link
to="/subscriptions" to="/subscriptions"
label={_(msg`Learn more about Bluesky+`)} label={_(msg`Learn more about Bluesky+`)}
@@ -241,6 +246,7 @@ function DialogInner({control}: {control: Dialog.DialogControlProps}) {
<Trans>Learn more</Trans> <Trans>Learn more</Trans>
</ButtonText> </ButtonText>
</Link> </Link>
)}
<Button <Button
label={_(msg`Subscribe`)} label={_(msg`Subscribe`)}
variant="solid" variant="solid"