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:
@@ -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>
|
||||
|
||||
Reference in New Issue
Block a user