--- import DefaultLayout from '@shared/layouts/DefaultLayout.astro' import Card from '@ui/Card.astro' import CardHeader from '@ui/CardHeader.astro' import CardBody from '@ui/CardBody.astro' import CardActions from '@ui/CardActions.astro' import CardTitle from '@ui/CardTitle.astro' import CardSubtitle from '@ui/CardSubtitle.astro' import Badge from '@ui/Badge.astro' import Button from '@ui/Button.astro' import ButtonList from '@ui/ButtonList.astro' import Datagrid from '@ui/Datagrid.astro' import DatagridItem from '@ui/DatagridItem.astro' import ListGroup from '@ui/ListGroup.astro' import ListGroupItem from '@ui/ListGroupItem.astro' import Icon from '@ui/Icon.astro' import Payment from '@ui/Payment.astro' import Progress from '@ui/Progress.astro' import type { PaymentProvider } from '@shared/lib/tokens' const usage = { used: 7420, limit: 10000 } const usagePercent = Math.round((usage.used / usage.limit) * 100) const paymentMethods: { provider: PaymentProvider; title: string; description: string; isDefault: boolean }[] = [ { provider: 'visa', title: 'Visa ending in 4242', description: 'Expires 09/2028', isDefault: true }, { provider: 'mastercard', title: 'Mastercard ending in 5512', description: 'Expires 03/2027', isDefault: false }, { provider: 'paypal', title: 'PayPal', description: 'billing@tabler.io', isDefault: false }, ] const invoices: { date: string; number: string; amount: string; status: 'paid' | 'open' }[] = [ { date: 'Sep 18, 2026', number: 'INV-2026-0089', amount: '$49.00', status: 'open' }, { date: 'Aug 18, 2026', number: 'INV-2026-0081', amount: '$49.00', status: 'paid' }, { date: 'Jul 18, 2026', number: 'INV-2026-0074', amount: '$49.00', status: 'paid' }, { date: 'Jun 18, 2026', number: 'INV-2026-0066', amount: '$49.00', status: 'paid' }, ] const invoiceStatus = { paid: { text: 'Paid', color: 'success' }, open: { text: 'Open', color: 'warning' }, } --- )) }
Billing details Shown on every invoice and receipt.
Cancel subscription Your plan stays active until the end of the current billing period. After that the workspace switches to the free plan and API access is paused.