'use client' import { useState, useCallback } from 'react' import { Card, CardContent, CardDescription, CardHeader, CardTitle } from '@nextsparkjs/core/components/ui/card' import { Button } from '@nextsparkjs/core/components/ui/button' import { Calendar } from 'lucide-react' import { useTranslations } from 'next-intl' import { getTemplateOrDefaultClient } from '@nextsparkjs/registries/template-registry.client' import { useInvoices } from '@nextsparkjs/core/hooks/useInvoices' import { InvoicesTable } from '@nextsparkjs/core/components/billing' function InvoicesPage() { const [invoicesLimit, setInvoicesLimit] = useState(10) const t = useTranslations('settings') const { data: invoicesData, isLoading: invoicesLoading, } = useInvoices({ limit: invoicesLimit, offset: 0, }) const totalInvoices = invoicesData?.info?.total ?? 0 const hasMoreInvoices = (invoicesData?.data?.length ?? 0) < totalInvoices const handleLoadMoreInvoices = useCallback(() => { setInvoicesLimit(prev => prev + 10) }, []) return (
{t('billing.billingHistory.description')}