Files
openmonetis/src/features/dashboard/components/widgets/bill-widget.tsx
Felipe Coutinho 2fc6d11d78 feat(dashboard/boletos): nome do boleto como link para lançamentos do período
- nome do boleto virou link para /transactions?q=<nome>
- quando o período selecionado não é o atual, inclui ?periodo=<mes-ano> na URL
- ícone RiExternalLinkLine ao lado do nome, mesmo padrão do widget de faturas

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
2026-05-02 22:08:23 +00:00

57 lines
1.3 KiB
TypeScript

"use client";
import type {
BillPaymentAccountOption,
DashboardBill,
} from "@/features/dashboard/bills/bills-queries";
import { useBillWidgetController } from "@/features/dashboard/bills/use-bill-widget-controller";
import { BillsWidgetView } from "../bills/bills-widget-view";
type BillWidgetProps = {
bills?: DashboardBill[];
paymentAccountOptions?: BillPaymentAccountOption[];
period?: string;
};
const EMPTY_OPTIONS: BillPaymentAccountOption[] = [];
export function BillWidget({
bills,
paymentAccountOptions = EMPTY_OPTIONS,
period,
}: BillWidgetProps) {
const {
items,
selectedBill,
isModalOpen,
modalState,
isPending,
paymentAccountId,
setPaymentAccountId,
paymentDate,
setPaymentDate,
openPaymentDialog,
closePaymentDialog,
confirmPayment,
} = useBillWidgetController(bills);
return (
<BillsWidgetView
bills={items}
period={period}
selectedBill={selectedBill}
isModalOpen={isModalOpen}
modalState={modalState}
isPending={isPending}
paymentAccountId={paymentAccountId}
onPaymentAccountChange={setPaymentAccountId}
paymentDate={paymentDate}
onPaymentDateChange={setPaymentDate}
paymentAccountOptions={paymentAccountOptions}
onOpenPaymentDialog={openPaymentDialog}
onClosePaymentDialog={closePaymentDialog}
onConfirmPayment={confirmPayment}
/>
);
}