feat: update ESLint and TypeScript configurations across frontend and backend; enhance component structure and improve data handling in various modules

This commit is contained in:
2025-12-02 16:36:02 -03:00
parent f48d28067c
commit d79e6959c3
215 changed files with 29474 additions and 28173 deletions

View File

@@ -127,7 +127,9 @@
// Verificar se o total não excede 30 dias
const novoTotal = totalDiasSelecionados + dias;
if (novoTotal > 30) {
toast.error(`O total não pode exceder 30 dias. Você já tem ${totalDiasSelecionados} dias, adicionando ${dias} dias totalizaria ${novoTotal} dias.`);
toast.error(
`O total não pode exceder 30 dias. Você já tem ${totalDiasSelecionados} dias, adicionando ${dias} dias totalizaria ${novoTotal} dias.`
);
return;
}
}
@@ -135,7 +137,9 @@
// Verificar se o total não excede o saldo disponível
const novoTotal = totalDiasSelecionados + dias;
if (saldo && novoTotal > saldo.diasDisponiveis) {
toast.error(`Total de dias (${novoTotal}) excede saldo disponível (${saldo.diasDisponiveis})`);
toast.error(
`Total de dias (${novoTotal}) excede saldo disponível (${saldo.diasDisponiveis})`
);
return;
}
@@ -149,7 +153,7 @@
];
toast.success(`Período de ${dias} dias adicionado! ✅`);
// Limpar campos
dataInicioPeriodo = '';
dataFimPeriodo = '';
@@ -263,14 +267,17 @@
</div>
<!-- Label do passo -->
<p class="mt-3 text-center text-sm font-semibold" class:text-primary={passoAtual === i + 1}>
<p
class="mt-3 text-center text-sm font-semibold"
class:text-primary={passoAtual === i + 1}
>
{labels[i]}
</p>
<!-- Linha conectora -->
{#if i < totalPassos - 1}
<div
class="absolute left-1/2 top-6 z-10 h-1 transition-all duration-300"
class="absolute top-6 left-1/2 z-10 h-1 transition-all duration-300"
style="width: calc(100% - 1.5rem); margin-left: calc(50% + 0.75rem);"
class:bg-primary={passoAtual > i + 1}
class:bg-base-300={passoAtual <= i + 1}
@@ -303,7 +310,9 @@
style:border-width={anoSelecionado === ano ? '2px' : undefined}
style:color={anoSelecionado === ano ? '#000000' : undefined}
style:background-color={anoSelecionado === ano ? 'transparent' : undefined}
style:box-shadow={anoSelecionado === ano ? '0 0 10px rgba(249, 115, 22, 0.3)' : undefined}
style:box-shadow={anoSelecionado === ano
? '0 0 10px rgba(249, 115, 22, 0.3)'
: undefined}
onclick={() => (anoSelecionado = ano)}
>
{ano}
@@ -413,7 +422,8 @@
</p>
{#if ehEstatutarioPEOuMunicipal}
<p class="mt-2 text-sm font-semibold">
⚠️ Regras: Períodos de 15 ou 30 dias. Máximo 2 períodos. Total não pode exceder 30 dias.
⚠️ Regras: Períodos de 15 ou 30 dias. Máximo 2 períodos. Total não pode
exceder 30 dias.
</p>
{/if}
</div>
@@ -494,27 +504,24 @@
</p>
{#if ehEstatutarioPEOuMunicipal}
<p class="mt-2 text-sm font-semibold">
⚠️ Regras: Períodos de 15 ou 30 dias. Máximo 2 períodos. Total não pode exceder 30 dias.
⚠️ Regras: Períodos de 15 ou 30 dias. Máximo 2 períodos. Total não pode exceder 30
dias.
</p>
{/if}
</div>
</div>
<!-- Formulário para adicionar período -->
<div class="card bg-base-100 shadow-lg mb-6">
<div class="card bg-base-100 mb-6 shadow-lg">
<div class="card-body">
<h3 class="card-title mb-4">Adicionar Período</h3>
<div class="grid grid-cols-1 gap-4 md:grid-cols-3">
<div class="form-control">
<label class="label">
<span class="label-text font-semibold">Data Início</span>
</label>
<input
type="date"
class="input input-bordered"
bind:value={dataInicioPeriodo}
/>
<input type="date" class="input input-bordered" bind:value={dataInicioPeriodo} />
</div>
<div class="form-control">
@@ -534,7 +541,7 @@
<span class="label-text font-semibold">Dias</span>
</label>
<div class="input input-bordered flex items-center">
<span class="font-bold text-primary">{diasPeriodoAtual}</span>
<span class="text-primary font-bold">{diasPeriodoAtual}</span>
<span class="ml-2 text-sm opacity-70">dias</span>
</div>
</div>
@@ -569,7 +576,7 @@
<!-- Lista de períodos adicionados -->
{#if periodosFerias.length > 0}
<div class="card bg-base-100 shadow-lg mb-6">
<div class="card bg-base-100 mb-6 shadow-lg">
<div class="card-body">
<h3 class="card-title mb-4">Períodos Adicionados ({periodosFerias.length})</h3>
<div class="space-y-3">