"use client"; import { Label } from "@/components/ui/label"; import { Select, SelectContent, SelectItem, SelectTrigger, SelectValue, } from "@/components/ui/select"; import { LANCAMENTO_PAYMENT_METHODS } from "@/lib/lancamentos/constants"; import { cn } from "@/lib/utils/ui"; import { PaymentMethodSelectContent, ContaCartaoSelectContent, } from "../../select-items"; import type { PaymentMethodSectionProps } from "./lancamento-dialog-types"; export function PaymentMethodSection({ formState, onFieldChange, contaOptions, cartaoOptions, isUpdateMode, disablePaymentMethod, disableCartaoSelect, }: PaymentMethodSectionProps) { const isCartaoSelected = formState.paymentMethod === "Cartão de crédito"; const showContaSelect = [ "Pix", "Dinheiro", "Boleto", "Cartão de débito", "Pré-Pago | VR/VA", "Transferência bancária", ].includes(formState.paymentMethod); // Filtrar contas apenas do tipo "Pré-Pago | VR/VA" quando forma de pagamento for "Pré-Pago | VR/VA" const filteredContaOptions = formState.paymentMethod === "Pré-Pago | VR/VA" ? contaOptions.filter( (option) => option.accountType === "Pré-Pago | VR/VA" ) : contaOptions; return ( <> {!isUpdateMode ? (
{isCartaoSelected ? (
) : null} {!isCartaoSelected && showContaSelect ? (
) : null}
) : null} {isUpdateMode ? (
{isCartaoSelected ? (
) : null} {!isCartaoSelected && showContaSelect ? (
) : null}
) : null} ); }