From 90b2b7a72cf9c9f144efbeef455ece67f1c0ab7c Mon Sep 17 00:00:00 2001 From: fede Date: Thu, 1 Jan 2026 22:29:17 -0300 Subject: [PATCH 1/8] arreglada recarga al borrar un usuario --- src/routes/(privado)/admin/+page.svelte | 17 ++++++++++------- 1 file changed, 10 insertions(+), 7 deletions(-) diff --git a/src/routes/(privado)/admin/+page.svelte b/src/routes/(privado)/admin/+page.svelte index c7df333..ecbb041 100644 --- a/src/routes/(privado)/admin/+page.svelte +++ b/src/routes/(privado)/admin/+page.svelte @@ -6,14 +6,19 @@ import TablaUsuarios from '@/components/TablaUsuarios.svelte'; import CardTitle from '@/components/ui/card/card-title.svelte'; import CardHeader from '@/components/ui/card/card-header.svelte'; + import type { UserResponseDto } from '../../../types'; - let cargando = $state(true); - let usuarios = $state(page.data.usuarios); + interface Prop { + usuarios?: UserResponseDto[]; + error: boolean; + } + + let { data }: Prop = $props();
- +

@@ -22,12 +27,10 @@ - {#if page.data.usuarios.length === 0} + {#if data.usuarios?.length === 0} No hay usuarios que mostar {:else} - {#key page.data.usuarios} - - {/key} + {/if} From 343e0728374ff9656847c46246cacdb02f8ca0fc Mon Sep 17 00:00:00 2001 From: fede Date: Thu, 1 Jan 2026 22:39:57 -0300 Subject: [PATCH 2/8] refactor --- src/lib/hooks/register.ts | 68 ++++++++++++++++++++------------------- 1 file changed, 35 insertions(+), 33 deletions(-) diff --git a/src/lib/hooks/register.ts b/src/lib/hooks/register.ts index 531b7dc..9f407c7 100644 --- a/src/lib/hooks/register.ts +++ b/src/lib/hooks/register.ts @@ -1,36 +1,38 @@ -import { apiBase } from "@/stores/url"; -import { goto } from "$app/navigation"; -import type { RegisterDto } from "../../types"; +import { apiBase } from '@/stores/url'; +import { goto } from '$app/navigation'; +import type { RegisterDto } from '../../types'; -export async function register(e: SubmitEvent, dto: RegisterDto, callbackfn:()=>void){ - e.preventDefault(); - if (dto.password == "" || dto.username == "" || - !dto.email?.includes("@") || dto.displayName=="") return; - try { +export async function register(e: SubmitEvent, dto: RegisterDto, callbackfn: () => void) { + e.preventDefault(); + if ( + dto.password == '' || + dto.username == '' || + !dto.email?.includes('@') || + dto.displayName == '' + ) + return; + try { + const { subscribe } = apiBase; + let baseUrl: string = ''; - const { subscribe } = apiBase; - let baseUrl: string = ''; - - subscribe((value) => { - baseUrl = value; - })(); - const req = await fetch(baseUrl + "/api/auth/register", { - method: "POST", - headers:{ - "Content-Type": "application/json" - }, - body: JSON.stringify(dto) - }); - if (req.ok) { - const data= await req.json(); - goto("/login?msg="+data.message); - } else { - callbackfn(); - } - - } catch { - callbackfn(); - console.error("fallo al intentar alcanzar el servidor") - - } + subscribe((value) => { + baseUrl = value; + })(); + const req = await fetch(baseUrl + '/api/auth/register', { + method: 'POST', + headers: { + 'Content-Type': 'application/json' + }, + body: JSON.stringify(dto) + }); + if (req.ok) { + const data = await req.json(); + goto('/login?msg=' + data.message); + } else { + callbackfn(); + } + } catch { + callbackfn(); + console.error('fallo al intentar alcanzar el servidor'); + } } From 4e36b29e4a71ed5fe60232f4b512b4f1367b04e9 Mon Sep 17 00:00:00 2001 From: fede Date: Thu, 1 Jan 2026 22:46:32 -0300 Subject: [PATCH 3/8] fix: ahora no se va a la pagina de login cuando creas el usuario --- .../components/admin/AgregarUsuario.svelte | 34 +++++++++---------- src/lib/hooks/register.ts | 18 +++++----- 2 files changed, 25 insertions(+), 27 deletions(-) diff --git a/src/lib/components/admin/AgregarUsuario.svelte b/src/lib/components/admin/AgregarUsuario.svelte index f8a5e62..d016b3a 100644 --- a/src/lib/components/admin/AgregarUsuario.svelte +++ b/src/lib/components/admin/AgregarUsuario.svelte @@ -8,6 +8,7 @@ import Spinner from '../ui/spinner/spinner.svelte'; import { register } from '@/hooks/register'; import type { RegisterDto } from '../../../types'; + import { invalidate } from '$app/navigation'; interface Prop { open: boolean; @@ -29,9 +30,18 @@ cargando = true; error = ''; - await register(e, dto, () => { - error = 'Error al registrar el usuario'; - }); + await register( + e, + dto, + () => { + error = 'Error al registrar el usuario'; + }, + true + ); + if (error == '') { + invalidate('admin:load'); + open = false; + } cargando = false; } @@ -57,11 +67,7 @@ - + Email @@ -71,11 +77,7 @@ - + ContraseƱa @@ -90,11 +92,7 @@ {/if} -

diff --git a/src/lib/hooks/register.ts b/src/lib/hooks/register.ts index 9f407c7..8ee2117 100644 --- a/src/lib/hooks/register.ts +++ b/src/lib/hooks/register.ts @@ -1,8 +1,14 @@ import { apiBase } from '@/stores/url'; import { goto } from '$app/navigation'; import type { RegisterDto } from '../../types'; +import { get } from 'svelte/store'; -export async function register(e: SubmitEvent, dto: RegisterDto, callbackfn: () => void) { +export async function register( + e: SubmitEvent, + dto: RegisterDto, + callbackfn: () => void, + admin: boolean = false +) { e.preventDefault(); if ( dto.password == '' || @@ -12,13 +18,7 @@ export async function register(e: SubmitEvent, dto: RegisterDto, callbackfn: () ) return; try { - const { subscribe } = apiBase; - let baseUrl: string = ''; - - subscribe((value) => { - baseUrl = value; - })(); - const req = await fetch(baseUrl + '/api/auth/register', { + const req = await fetch(get(apiBase) + '/api/auth/register', { method: 'POST', headers: { 'Content-Type': 'application/json' @@ -27,7 +27,7 @@ export async function register(e: SubmitEvent, dto: RegisterDto, callbackfn: () }); if (req.ok) { const data = await req.json(); - goto('/login?msg=' + data.message); + if (!admin) goto('/login?msg=' + data.message); } else { callbackfn(); } From 832ad14b6ac000eb61e90ef30a32fd9f30296666 Mon Sep 17 00:00:00 2001 From: fede Date: Thu, 1 Jan 2026 23:06:35 -0300 Subject: [PATCH 4/8] fix: estaba mal el tipo de dato --- src/routes/(privado)/admin/+page.svelte | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/src/routes/(privado)/admin/+page.svelte b/src/routes/(privado)/admin/+page.svelte index ecbb041..d1bea2a 100644 --- a/src/routes/(privado)/admin/+page.svelte +++ b/src/routes/(privado)/admin/+page.svelte @@ -9,8 +9,10 @@ import type { UserResponseDto } from '../../../types'; interface Prop { - usuarios?: UserResponseDto[]; - error: boolean; + data: { + usuarios?: UserResponseDto[]; + error: boolean; + }; } let { data }: Prop = $props(); From ba303efe423e5dbb50d21a622c396910f841092a Mon Sep 17 00:00:00 2001 From: fede Date: Thu, 1 Jan 2026 23:20:36 -0300 Subject: [PATCH 5/8] arreglos en la ui del header --- src/lib/head/Busqueda.svelte | 11 +++++++---- src/lib/head/Header.svelte | 6 +++--- 2 files changed, 10 insertions(+), 7 deletions(-) diff --git a/src/lib/head/Busqueda.svelte b/src/lib/head/Busqueda.svelte index 3a6134d..12a8b22 100644 --- a/src/lib/head/Busqueda.svelte +++ b/src/lib/head/Busqueda.svelte @@ -19,6 +19,7 @@ import Label from '@/components/ui/label/label.svelte'; import { resolve } from '$app/paths'; import { busquedaHashtags } from '@/hooks/busquedaHashtags'; + import Separator from '@/components/ui/separator/separator.svelte'; let search: string = $state(''); let open = $state(false); @@ -55,16 +56,18 @@ - + + + (open = true)} - class="max-w-0 transition-[max-width] duration-1000 ease-out group-hover:max-w-xs focus:max-w-xs" + class="max-w-0 p-1! transition-[max-width] duration-1000 ease-out group-hover:max-w-xs focus:max-w-xs" /> - - Ctrl+K + + Ctrl+K diff --git a/src/lib/head/Header.svelte b/src/lib/head/Header.svelte index 838fbd1..b403ae7 100644 --- a/src/lib/head/Header.svelte +++ b/src/lib/head/Header.svelte @@ -52,14 +52,14 @@
-
From 162b45c84ceb098f455a43a4a83c7cca2a3b57ba Mon Sep 17 00:00:00 2001 From: fede Date: Fri, 2 Jan 2026 15:31:01 -0300 Subject: [PATCH 6/8] polemico y puede causar problemas --- src/types.d.ts | 1 - 1 file changed, 1 deletion(-) diff --git a/src/types.d.ts b/src/types.d.ts index f0d647e..b5bd099 100644 --- a/src/types.d.ts +++ b/src/types.d.ts @@ -1,5 +1,4 @@ export interface Post { - _id: string; id: string; authorId: string; authorDisplayName: string; From 929d02441e5e4523746fae5a0f24d4d7861f76e9 Mon Sep 17 00:00:00 2001 From: fede Date: Fri, 2 Jan 2026 15:31:09 -0300 Subject: [PATCH 7/8] actualizado tipo de dato --- src/types.d.ts | 1 + 1 file changed, 1 insertion(+) diff --git a/src/types.d.ts b/src/types.d.ts index b5bd099..1ebbe92 100644 --- a/src/types.d.ts +++ b/src/types.d.ts @@ -75,6 +75,7 @@ export interface PostResponseDto { isEdited: boolean; visibility: string; hashtags: string[]?; + isLiked: boolean?; } export interface UserResponseDto { From 7f68f61ce2aca5d8acecf566e0e698890e6b3968 Mon Sep 17 00:00:00 2001 From: fede Date: Fri, 2 Jan 2026 18:58:15 -0300 Subject: [PATCH 8/8] se cambio el back a azure --- src/lib/stores/url.ts | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/src/lib/stores/url.ts b/src/lib/stores/url.ts index 7a0bd63..a7e7a33 100644 --- a/src/lib/stores/url.ts +++ b/src/lib/stores/url.ts @@ -1,6 +1,12 @@ import { dev } from '$app/environment'; import { readable } from 'svelte/store'; +// export const apiBase = readable( +// dev ? 'http://localhost:5000' : 'https://minix-back-dsuk.onrender.com' +// ); + export const apiBase = readable( - dev ? 'http://localhost:5000' : 'https://minix-back-dsuk.onrender.com' + dev + ? 'http://localhost:5000' + : 'https://minix-back-3.salmonpebble-66858787.brazilsouth.azurecontainerapps.io' );