Vary dialog by screen active

This commit is contained in:
Eric Bailey
2024-11-21 13:13:24 -06:00
parent 3445363031
commit 91568cc574
+17 -11
View File
@@ -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,17 +234,19 @@ 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]}>
<Link {!isOnSubscriptionsPage && (
to="/subscriptions" <Link
label={_(msg`Learn more about Bluesky+`)} to="/subscriptions"
variant="solid" label={_(msg`Learn more about Bluesky+`)}
color="secondary" variant="solid"
size="large" color="secondary"
style={[a.flex_1]}> size="large"
<ButtonText style={[a.flex_1]}> style={[a.flex_1]}>
<Trans>Learn more</Trans> <ButtonText style={[a.flex_1]}>
</ButtonText> <Trans>Learn more</Trans>
</Link> </ButtonText>
</Link>
)}
<Button <Button
label={_(msg`Subscribe`)} label={_(msg`Subscribe`)}
variant="solid" variant="solid"