// @ts-nocheck import * as R from 'ramda'; import clsx from 'classnames'; import { includes } from 'lodash'; import { Box, Group, Stack } from '@/components'; import { Button, Card, Classes, Intent, Text } from '@blueprintjs/core'; import withAlertActions from '../Alert/withAlertActions'; import styles from './BillingSubscription.module.scss'; import withDrawerActions from '../Drawer/withDrawerActions'; import { DRAWERS } from '@/constants/drawers'; import { useBillingPageBoot } from './BillingPageBoot'; import { getSubscriptionStatusText } from './_utils'; function SubscriptionRoot({ openAlert, openDrawer }) { const { mainSubscription } = useBillingPageBoot(); // Can't continue if the main subscription is not loaded. if (!mainSubscription) { return null; } const handleCancelSubBtnClick = () => { openAlert('cancel-main-subscription'); }; const handleResumeSubBtnClick = () => { openAlert('resume-main-subscription'); }; const handleUpdatePaymentMethod = () => { window.LemonSqueezy.Url.Open( mainSubscription.lemonUrls?.updatePaymentMethod, ); }; // Handle upgrade button click. const handleUpgradeBtnClick = () => { openDrawer(DRAWERS.CHANGE_SUBSCARIPTION_PLAN); }; return (

{mainSubscription.planName}

{mainSubscription.statusFormatted}
Control your business bookkeeping with automated accounting, to run intelligent reports for faster decision-making. {mainSubscription.canceled && ( )} {!mainSubscription.canceled && ( )} {mainSubscription.planPriceFormatted} {mainSubscription.planPeriod && ( {mainSubscription.planPeriod === 'month' ? 'mo' : mainSubscription.planPeriod === 'year' ? 'yearly' : ''} )} {mainSubscription.canceled && ( )}
); } export const Subscription = R.compose( withAlertActions, withDrawerActions, )(SubscriptionRoot); function SubscriptionStatusText({ subscription }) { const text = getSubscriptionStatusText(subscription); if (!text) return null; return {text}; }