@coursebuilder/commerce-next
Version:
Commerce Functionality for Course Builder with Next.js
13 lines (12 loc) • 1.27 kB
JavaScript
import { jsxs as _jsxs, jsx as _jsx } from "react/jsx-runtime";
import Link from 'next/link.js';
import { format } from 'date-fns';
import { Button, Card, CardContent, CardDescription, CardFooter, CardHeader, CardTitle, } from '@coursebuilder/ui';
import { cn } from '@coursebuilder/ui/utils/cn';
export const InvoiceCard = ({ className, purchase, children }) => {
const invoiceRoutePath = `/invoices/${purchase.merchantChargeId}`;
return (_jsxs(Card, { className: cn('', className), children: [_jsxs(CardHeader, { children: [_jsx(CardTitle, { children: _jsxs(Link, { href: invoiceRoutePath, children: ["Invoice: ", purchase.product.name] }) }), _jsxs(CardDescription, { children: [_jsx("span", { className: "after:content-['\u30FB']", children: Intl.NumberFormat('en-US', {
style: 'currency',
currency: 'USD',
}).format(purchase.totalAmount) }), _jsx("span", { children: format(new Date(purchase.createdAt), 'MMMM d, y') })] })] }), children && _jsx(CardContent, { children: children }), _jsx(CardFooter, { children: _jsx(Button, { variant: "outline", asChild: true, size: "sm", children: _jsx(Link, { href: invoiceRoutePath, children: "View" }) }) })] }));
};