fix: ajusta label da opção 'period' no BulkActionDialog para recorrência

Em recorrência, currentInstallment é undefined e o label usava 'parcela',
gerando 'Todas as pessoas desta parcela (undefined/3)'. Adiciona helpers
getPeriodLabel/getPeriodDescription que adaptam o texto para installment
vs recurring, seguindo o padrão das outras opções.

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
This commit is contained in:
Felipe Coutinho
2026-05-07 15:12:35 +00:00
parent 0cec10ede3
commit 467f71493d

View File

@@ -70,6 +70,23 @@ export function BulkActionDialog({
return "Este e os próximos lançamentos"; return "Este e os próximos lançamentos";
}; };
const getPeriodLabel = () => {
if (seriesType === "installment" && currentNumber && totalCount) {
return `Todas as pessoas desta parcela (${currentNumber}/${totalCount})`;
}
if (seriesType === "installment") {
return "Todas as pessoas desta parcela";
}
return "Todas as pessoas deste lançamento";
};
const getPeriodDescription = () => {
if (seriesType === "installment") {
return "Aplica a alteração para todas as pessoas que dividem esta parcela";
}
return "Aplica a alteração para todas as pessoas que dividem este lançamento";
};
const getAllLabel = () => { const getAllLabel = () => {
if (seriesType === "installment" && totalCount) { if (seriesType === "installment" && totalCount) {
return `Todas as parcelas (${totalCount} ${ return `Todas as parcelas (${totalCount} ${
@@ -116,11 +133,10 @@ export function BulkActionDialog({
htmlFor="period" htmlFor="period"
className="text-sm cursor-pointer font-medium" className="text-sm cursor-pointer font-medium"
> >
{`Todas as pessoas desta parcela (${currentNumber}/${totalCount})`} {getPeriodLabel()}
</Label> </Label>
<p className="text-xs text-muted-foreground"> <p className="text-xs text-muted-foreground">
Aplica a alteração para todas as pessoas que dividem esta {getPeriodDescription()}
parcela
</p> </p>
{scope === "period" && actionType === "edit" && ( {scope === "period" && actionType === "edit" && (
<div className="mt-1.5 flex items-start gap-1.5 rounded-md bg-amber-50 px-2 py-1.5 text-amber-800 dark:bg-amber-950/40 dark:text-amber-300"> <div className="mt-1.5 flex items-start gap-1.5 rounded-md bg-amber-50 px-2 py-1.5 text-amber-800 dark:bg-amber-950/40 dark:text-amber-300">