import { Show } from "solid-js" import { formatUsd } from "@/lib/format" // Presentational invoice/draft row for the Payment History list. Status label, // style, and period label are computed by the parent (Account.tsx) and passed in; // PDF/pay actions are surfaced as callbacks. Props are reactive only when read // lazily, so access props.* inside JSX, never destructure at the top. type InvoiceListItemProps = { amount: number statusLabel: string statusStyle: string periodLabel: string method?: string isDraft?: boolean isOpen?: boolean onPay?: () => void onPrintPdf: () => void printing: boolean } export default function InvoiceListItem(props: InvoiceListItemProps) { return (
  • {formatUsd(props.amount)} {props.statusLabel} ยท paid via {props.method}

    {props.periodLabel}

    Charges accruing this period. You'll be invoiced once a balance is due.

  • ) }