Skip to content

Commit

Permalink
fix(core): cannot view pricing page if not logged in (#8907)
Browse files Browse the repository at this point in the history
Due to lifetime plan card show `Upgrade` button that require accout, should show `Login` instead
  • Loading branch information
CatsJuice authored and forehalo committed Nov 27, 2024
1 parent 2abf40b commit 1623f5d
Show file tree
Hide file tree
Showing 2 changed files with 14 additions and 5 deletions.
Original file line number Diff line number Diff line change
@@ -1,17 +1,19 @@
import { Button } from '@affine/component';
import { SubscriptionService } from '@affine/core/modules/cloud';
import { AuthService, SubscriptionService } from '@affine/core/modules/cloud';
import { SubscriptionRecurring } from '@affine/graphql';
import { Trans, useI18n } from '@affine/i18n';
import { useLiveData, useService } from '@toeverything/infra';

import { Upgrade } from '../plan-card';
import { SignUpAction, Upgrade } from '../plan-card';
import { BelieverCard } from './believer-card';
import { BelieverBenefits } from './benefits';
import * as styles from './style.css';

export const LifetimePlan = () => {
const t = useI18n();
const subscriptionService = useService(SubscriptionService);
const loggedIn =
useLiveData(useService(AuthService).session.status$) === 'authenticated';

const readableLifetimePrice = useLiveData(
subscriptionService.prices.readableLifetimePrice$
Expand All @@ -32,7 +34,11 @@ export const LifetimePlan = () => {

<div className={styles.price}>{readableLifetimePrice}</div>

{isBeliever ? (
{!loggedIn ? (
<SignUpAction className={styles.purchase}>
{t['com.affine.payment.sign-up-free']()}
</SignUpAction>
) : isBeliever ? (
<Button className={styles.purchase} size="default" disabled>
{t['com.affine.payment.lifetime.purchased']()}
</Button>
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -383,7 +383,10 @@ const ChangeRecurring = ({
);
};

const SignUpAction = ({ children }: PropsWithChildren) => {
export const SignUpAction = ({
children,
className,
}: PropsWithChildren<{ className?: string }>) => {
const setOpen = useSetAtom(authAtom);

const onClickSignIn = useCallback(() => {
Expand All @@ -396,7 +399,7 @@ const SignUpAction = ({ children }: PropsWithChildren) => {
return (
<Button
onClick={onClickSignIn}
className={styles.planAction}
className={clsx(styles.planAction, className)}
variant="primary"
>
{children}
Expand Down

0 comments on commit 1623f5d

Please sign in to comment.