refactor: clean up Svelte components and improve code readability

- Refactored multiple Svelte components to enhance code clarity and maintainability.
- Standardized formatting and indentation across various files for consistency.
- Improved error handling messages in the AprovarAusencias component for better user feedback.
- Updated class names in the UI components to align with the new design system.
- Removed unnecessary whitespace and comments to streamline the codebase.
This commit is contained in:
2025-11-08 10:11:40 -03:00
parent 28107b4050
commit 01138b3e1c
24 changed files with 4655 additions and 1927 deletions

View File

@@ -155,45 +155,60 @@
<div class="card bg-base-100 shadow-xl">
<div class="card-body">
<!-- Header com filtros -->
<div class="flex flex-col md:flex-row items-start md:items-center justify-between gap-4 mb-6">
<div
class="flex flex-col md:flex-row items-start md:items-center justify-between gap-4 mb-6"
>
<h2 class="card-title text-2xl">Calendário de Afastamentos</h2>
<!-- Filtros -->
<div class="flex flex-wrap items-center gap-2">
<span class="text-sm font-medium text-base-content/70">Filtrar:</span>
<div class="join">
<button
class="join-item btn btn-sm {filtroAtivo === 'todos' ? 'btn-active btn-primary' : 'btn-ghost'}"
class="join-item btn btn-sm {filtroAtivo === 'todos'
? 'btn-active btn-primary'
: 'btn-ghost'}"
onclick={() => (filtroAtivo = "todos")}
>
Todos
</button>
<button
class="join-item btn btn-sm {filtroAtivo === 'atestado_medico' ? 'btn-active btn-error' : 'btn-ghost'}"
class="join-item btn btn-sm {filtroAtivo === 'atestado_medico'
? 'btn-active btn-error'
: 'btn-ghost'}"
onclick={() => (filtroAtivo = "atestado_medico")}
>
Atestados
</button>
<button
class="join-item btn btn-sm {filtroAtivo === 'declaracao_comparecimento' ? 'btn-active btn-warning' : 'btn-ghost'}"
class="join-item btn btn-sm {filtroAtivo ===
'declaracao_comparecimento'
? 'btn-active btn-warning'
: 'btn-ghost'}"
onclick={() => (filtroAtivo = "declaracao_comparecimento")}
>
Declarações
</button>
<button
class="join-item btn btn-sm {filtroAtivo === 'maternidade' ? 'btn-active btn-secondary' : 'btn-ghost'}"
class="join-item btn btn-sm {filtroAtivo === 'maternidade'
? 'btn-active btn-secondary'
: 'btn-ghost'}"
onclick={() => (filtroAtivo = "maternidade")}
>
Maternidade
</button>
<button
class="join-item btn btn-sm {filtroAtivo === 'paternidade' ? 'btn-active btn-info' : 'btn-ghost'}"
class="join-item btn btn-sm {filtroAtivo === 'paternidade'
? 'btn-active btn-info'
: 'btn-ghost'}"
onclick={() => (filtroAtivo = "paternidade")}
>
Paternidade
</button>
<button
class="join-item btn btn-sm {filtroAtivo === 'ferias' ? 'btn-active btn-success' : 'btn-ghost'}"
class="join-item btn btn-sm {filtroAtivo === 'ferias'
? 'btn-active btn-success'
: 'btn-ghost'}"
onclick={() => (filtroAtivo = "ferias")}
>
Férias
@@ -247,13 +262,19 @@
onclick={(e) => e.stopPropagation()}
>
<!-- Header do Modal -->
<div class="p-6 border-b border-base-300 bg-gradient-to-r from-primary/10 to-secondary/10">
<div
class="p-6 border-b border-base-300 bg-linear-to-r from-primary/10 to-secondary/10"
>
<div class="flex items-start justify-between">
<div class="flex-1">
<h3 class="text-xl font-bold text-base-content mb-2">
{eventoSelecionado.funcionarioNome}
</h3>
<p class="text-sm {getTipoCor(eventoSelecionado.tipo)} font-medium">
<p
class="text-sm {getTipoCor(
eventoSelecionado.tipo,
)} font-medium"
>
{getTipoNome(eventoSelecionado.tipo)}
</p>
</div>
@@ -299,7 +320,9 @@
</svg>
<div>
<p class="text-sm text-base-content/60">Data Início</p>
<p class="font-semibold">{formatarData(eventoSelecionado.start)}</p>
<p class="font-semibold">
{formatarData(eventoSelecionado.start)}
</p>
</div>
</div>
@@ -320,7 +343,9 @@
</svg>
<div>
<p class="text-sm text-base-content/60">Data Fim</p>
<p class="font-semibold">{formatarData(eventoSelecionado.end)}</p>
<p class="font-semibold">
{formatarData(eventoSelecionado.end)}
</p>
</div>
</div>
@@ -346,7 +371,8 @@
const inicio = new Date(eventoSelecionado.start);
const fim = new Date(eventoSelecionado.end);
const diffTime = Math.abs(fim.getTime() - inicio.getTime());
const diffDays = Math.ceil(diffTime / (1000 * 60 * 60 * 24)) + 1;
const diffDays =
Math.ceil(diffTime / (1000 * 60 * 60 * 24)) + 1;
return `${diffDays} ${diffDays === 1 ? "dia" : "dias"}`;
})()}
</p>
@@ -356,10 +382,7 @@
<!-- Footer do Modal -->
<div class="p-6 border-t border-base-300 flex justify-end">
<button
class="btn btn-primary"
onclick={() => (showModal = false)}
>
<button class="btn btn-primary" onclick={() => (showModal = false)}>
Fechar
</button>
</div>