feat: enhance error handling in dashboard layout and improve UI consistency across notification templates with updated styling and structure

This commit is contained in:
2025-12-01 11:45:27 -03:00
parent 4af566e54c
commit a149c5ead6
8 changed files with 3100 additions and 2450 deletions

View File

@@ -79,57 +79,61 @@
}
</script>
<div class="container mx-auto max-w-4xl px-4 py-6">
<div class="mb-6 flex items-center justify-between">
<div class="flex items-center gap-4">
<div class="bg-info/10 rounded-xl p-3">
<svg
xmlns="http://www.w3.org/2000/svg"
class="text-info h-8 w-8"
fill="none"
viewBox="0 0 24 24"
stroke="currentColor"
>
<path
stroke-linecap="round"
stroke-linejoin="round"
stroke-width="2"
d="M9 12h6m-6 4h6m2 5H7a2 2 0 01-2-2V5a2 2 0 012-2h5.586a1 1 0 01.707.293l5.414 5.414a1 1 0 01.293.707V19a2 2 0 01-2 2z"
/>
</svg>
</div>
<div>
<h1 class="text-base-content text-3xl font-bold">Novo Template</h1>
<p class="text-base-content/60 mt-1">
Crie um template de email ou mensagem para reutilizar no sistema.
</p>
<div class="container mx-auto max-w-4xl px-4 py-8">
<div
class="rounded-2xl bg-base-100/80 shadow-xl border border-base-200/60 p-6 lg:p-8 space-y-6 backdrop-blur"
>
<div class="mb-4 flex items-center justify-between">
<div class="flex items-center gap-4">
<div class="bg-gradient-to-br from-info/15 via-primary/10 to-secondary/10 rounded-2xl p-3">
<svg
xmlns="http://www.w3.org/2000/svg"
class="text-info h-9 w-9"
fill="none"
viewBox="0 0 24 24"
stroke="currentColor"
>
<path
stroke-linecap="round"
stroke-linejoin="round"
stroke-width="2"
d="M9 12h6m-6 4h6m2 5H7a2 2 0 01-2-2V5a2 2 0 012-2h5.586a1 1 0 01.707.293l5.414 5.414a1 1 0 01.293.707V19a2 2 0 01-2 2z"
/>
</svg>
</div>
<div>
<h1 class="text-base-content text-3xl font-bold">Novo Template</h1>
<p class="text-base-content/60 mt-1 text-sm lg:text-base">
Defina o texto base que será usado em <span class="font-semibold">chat</span> e na versão
HTML de <span class="font-semibold">email</span> com o estilo padrão do SGSE.
</p>
</div>
</div>
<a href={resolve('/ti/notificacoes/templates')} class="btn btn-outline"> Voltar </a>
</div>
<a href={resolve('/ti/notificacoes/templates')} class="btn btn-ghost"> Voltar </a>
</div>
{#if mensagem}
<div
class="alert mb-6 shadow-lg"
class:alert-success={mensagem.tipo === 'success'}
class:alert-error={mensagem.tipo === 'error'}
class:alert-info={mensagem.tipo === 'info'}
>
<span class="font-medium">{mensagem.texto}</span>
<button
type="button"
class="btn btn-sm btn-circle btn-ghost"
onclick={() => {
mensagem = null;
}}
{#if mensagem}
<div
class="alert mb-4 shadow-lg"
class:alert-success={mensagem.tipo === 'success'}
class:alert-error={mensagem.tipo === 'error'}
class:alert-info={mensagem.tipo === 'info'}
>
</button>
</div>
{/if}
<span class="font-medium">{mensagem.texto}</span>
<button
type="button"
class="btn btn-sm btn-circle btn-ghost"
onclick={() => {
mensagem = null;
}}
>
</button>
</div>
{/if}
<div class="card bg-base-100 shadow-xl">
<div class="card-body space-y-4">
<div class="card bg-base-100 shadow-sm border border-base-200">
<div class="card-body space-y-4">
<div class="grid grid-cols-1 gap-4 md:grid-cols-2">
<div class="form-control">
<label class="label" for="codigo">