Use resolve() for all internal hrefs and goto paths to ensure correct

routing
This commit is contained in:
2025-11-12 23:18:41 -03:00
parent a2451baafc
commit bd574aedc0
32 changed files with 168 additions and 136 deletions

View File

@@ -3,6 +3,7 @@
import { api } from '@sgse-app/backend/convex/_generated/api';
import type { Id } from '@sgse-app/backend/convex/_generated/dataModel';
import { onMount } from 'svelte';
import { resolve } from '$app/paths';
const client = useConvexClient();
let isLoading = true;
@@ -77,7 +78,7 @@
<!-- Breadcrumb -->
<div class="breadcrumbs mb-4 text-sm">
<ul>
<li><a href="/recursos-humanos" class="text-primary hover:underline">Recursos Humanos</a></li>
<li><a href={resolve('/recursos-humanos')} class="text-primary hover:underline">Recursos Humanos</a></li>
<li>Símbolos</li>
</ul>
</div>
@@ -107,7 +108,7 @@
<p class="text-base-content/70">Gerencie cargos comissionados e funções gratificadas</p>
</div>
</div>
<a href="/recursos-humanos/simbolos/cadastro" class="btn btn-primary btn-lg gap-2">
<a href={resolve('/recursos-humanos/simbolos/cadastro')} class="btn btn-primary btn-lg gap-2">
<svg
xmlns="http://www.w3.org/2000/svg"
class="h-5 w-5"
@@ -315,7 +316,7 @@
class="dropdown-content menu bg-base-100 rounded-box border-base-300 z-10 w-52 border p-2 shadow-lg"
>
<li>
<a href={'/recursos-humanos/simbolos/' + simbolo._id + '/editar'}>
<a href={resolve(`/recursos-humanos/simbolos/${simbolo._id}/editar`)}>
<svg
xmlns="http://www.w3.org/2000/svg"
class="h-4 w-4"

View File

@@ -1,5 +1,6 @@
<script lang="ts">
import { useQuery, useConvexClient } from 'convex-svelte';
import { resolve } from '$app/paths';
import { api } from '@sgse-app/backend/convex/_generated/api';
import { createForm } from '@tanstack/svelte-form';
import z from 'zod';
@@ -80,7 +81,7 @@
try {
await client.mutation(api.simbolos.update, payload);
notice = { kind: 'success', text: 'Símbolo atualizado com sucesso.' };
setTimeout(() => goto('/recursos-humanos/simbolos'), 600);
setTimeout(() => goto(resolve('/recursos-humanos/simbolos')), 600);
} catch (error) {
console.error('erro ao atualizar símbolo', error);
notice = { kind: 'error', text: 'Erro ao atualizar símbolo.' };
@@ -393,7 +394,7 @@
type="button"
class="btn"
disabled={isSubmitting}
onclick={() => goto('/recursos-humanos/simbolos')}
onclick={() => goto(resolve('/recursos-humanos/simbolos'))}
>
Cancelar
</button>

View File

@@ -5,6 +5,7 @@
import z from 'zod';
import { goto } from '$app/navigation';
import type { SimboloTipo } from '@sgse-app/backend/convex/schema';
import { resolve } from '$app/paths';
const client = useConvexClient();
@@ -83,7 +84,7 @@
if (res) {
formApi.reset();
notice = { kind: 'success', text: 'Símbolo cadastrado com sucesso!' };
setTimeout(() => goto('/recursos-humanos/simbolos'), 1500);
setTimeout(() => goto(resolve('/recursos-humanos/simbolos')), 1500);
}
} catch (error: any) {
notice = { kind: 'error', text: error.message || 'Erro ao cadastrar símbolo.' };
@@ -97,9 +98,9 @@
<!-- Breadcrumb -->
<div class="breadcrumbs mb-4 text-sm">
<ul>
<li><a href="/recursos-humanos" class="text-primary hover:underline">Recursos Humanos</a></li>
<li><a href={resolve('/recursos-humanos')} class="text-primary hover:underline">Recursos Humanos</a></li>
<li>
<a href="/recursos-humanos/simbolos" class="text-primary hover:underline">Símbolos</a>
<a href={resolve('/recursos-humanos/simbolos')} class="text-primary hover:underline">Símbolos</a>
</li>
<li>Cadastrar</li>
</ul>
@@ -469,7 +470,7 @@
type="button"
class="btn btn-lg"
disabled={isSubmitting}
onclick={() => goto('/recursos-humanos/simbolos')}
onclick={() => goto(resolve('/recursos-humanos/simbolos'))}
>
<svg
xmlns="http://www.w3.org/2000/svg"