From dd1cc6f0182645330f3ef73349a0f2445261d341 Mon Sep 17 00:00:00 2001 From: fede Date: Wed, 26 Nov 2025 17:30:11 -0300 Subject: [PATCH 1/6] refactor: modificado tipo de una prop maxlenght --- src/lib/components/crear-post.svelte | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/lib/components/crear-post.svelte b/src/lib/components/crear-post.svelte index bcbcbfc..878622e 100644 --- a/src/lib/components/crear-post.svelte +++ b/src/lib/components/crear-post.svelte @@ -63,7 +63,7 @@ From 3d8882084f18f29edd193b353f3e9893a3dc4783 Mon Sep 17 00:00:00 2001 From: fede Date: Wed, 26 Nov 2025 17:30:56 -0300 Subject: [PATCH 2/6] chore: eliminado un import redundante --- src/lib/components/PostCard.svelte | 1 - 1 file changed, 1 deletion(-) diff --git a/src/lib/components/PostCard.svelte b/src/lib/components/PostCard.svelte index 5ac4cdc..10d49b4 100644 --- a/src/lib/components/PostCard.svelte +++ b/src/lib/components/PostCard.svelte @@ -26,7 +26,6 @@ import DialogHeader from './ui/dialog/dialog-header.svelte'; import DialogTitle from './ui/dialog/dialog-title.svelte'; import DialogDescription from './ui/dialog/dialog-description.svelte'; - import { updatePost } from '@/hooks/updatePost'; import { sesionStore } from '@/stores/usuario'; interface postProp { From 17d1dad937ad9f60dcac5cf3754d0e0ef0e82d27 Mon Sep 17 00:00:00 2001 From: fede Date: Wed, 26 Nov 2025 17:31:30 -0300 Subject: [PATCH 3/6] =?UTF-8?q?a=C3=B1adida=20funcionalidad=20de=20edicion?= =?UTF-8?q?=20en=20el=20/?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/routes/+page.svelte | 27 +++++++++++++++++++++++++-- 1 file changed, 25 insertions(+), 2 deletions(-) diff --git a/src/routes/+page.svelte b/src/routes/+page.svelte index 115bc0b..e92ec66 100644 --- a/src/routes/+page.svelte +++ b/src/routes/+page.svelte @@ -4,8 +4,11 @@ import { apiBase } from '@/stores/url'; import { sesionStore } from '@/stores/usuario'; import CrearPost from '@/components/crear-post.svelte'; - import { posts, setPosts } from '@/stores/posts'; + import { posts, setPosts, updatePostStore } from '@/stores/posts'; import PostCard from '@/components/PostCard.svelte'; + import type { Post } from '../types'; + import ModalEditar from './[perfil]/modalEditar.svelte'; + import { updatePost } from '@/hooks/updatePost'; $effect(() => { (async () => { @@ -26,6 +29,21 @@ return await req.json(); } } + + let postAModificar: Post | null = $state(null); + let mensajeError = $state(''); + + async function handleEditar(e: SubmitEvent) { + e.preventDefault(); + if (postAModificar == null) return; + await updatePost( + postAModificar, + (postnuevo: Post) => updatePostStore(postAModificar!.id, postnuevo), + + mensajeError + ); + postAModificar = null; + }
@@ -44,9 +62,14 @@ {:else} {#each $posts as post} - + {/each} {/if}
+{#if postAModificar} +
+ +
+{/if} From 9233b1fe482ee635000d6c3b026771621eccf66d Mon Sep 17 00:00:00 2001 From: fede Date: Wed, 26 Nov 2025 17:35:45 -0300 Subject: [PATCH 4/6] fix: ahora si esta bien implementadas las animaciones de los post --- src/routes/+page.svelte | 7 +++++-- src/routes/[perfil]/+page.svelte | 4 ++-- 2 files changed, 7 insertions(+), 4 deletions(-) diff --git a/src/routes/+page.svelte b/src/routes/+page.svelte index e92ec66..b21b01c 100644 --- a/src/routes/+page.svelte +++ b/src/routes/+page.svelte @@ -9,6 +9,7 @@ import type { Post } from '../types'; import ModalEditar from './[perfil]/modalEditar.svelte'; import { updatePost } from '@/hooks/updatePost'; + import { fade, slide } from 'svelte/transition'; $effect(() => { (async () => { @@ -61,8 +62,10 @@ {:else} - {#each $posts as post} - + {#each $posts as post (post.id)} +
+ +
{/each} {/if} diff --git a/src/routes/[perfil]/+page.svelte b/src/routes/[perfil]/+page.svelte index 69cb778..e1160cc 100644 --- a/src/routes/[perfil]/+page.svelte +++ b/src/routes/[perfil]/+page.svelte @@ -109,8 +109,8 @@ {:else}
- {#each $posts as post} -
+ {#each $posts as post (post.id)} +
{/each} From 5421235a591b7ed29b8007536e75b697bf117594 Mon Sep 17 00:00:00 2001 From: fede Date: Wed, 26 Nov 2025 18:29:59 -0300 Subject: [PATCH 5/6] =?UTF-8?q?a=C3=B1adido=20codigo=20de=20los=20tooltips?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/lib/components/crear-post.svelte | 30 ++++++++---- .../ui/hover-card/hover-card-content.svelte | 29 ++++++++++++ .../ui/hover-card/hover-card-trigger.svelte | 7 +++ src/lib/components/ui/hover-card/index.ts | 14 ++++++ src/lib/components/ui/tooltip/index.ts | 21 +++++++++ .../ui/tooltip/tooltip-content.svelte | 47 +++++++++++++++++++ .../ui/tooltip/tooltip-trigger.svelte | 7 +++ src/routes/[perfil]/modalEditar.svelte | 32 +++++++++---- 8 files changed, 169 insertions(+), 18 deletions(-) create mode 100644 src/lib/components/ui/hover-card/hover-card-content.svelte create mode 100644 src/lib/components/ui/hover-card/hover-card-trigger.svelte create mode 100644 src/lib/components/ui/hover-card/index.ts create mode 100644 src/lib/components/ui/tooltip/index.ts create mode 100644 src/lib/components/ui/tooltip/tooltip-content.svelte create mode 100644 src/lib/components/ui/tooltip/tooltip-trigger.svelte diff --git a/src/lib/components/crear-post.svelte b/src/lib/components/crear-post.svelte index 878622e..0e42575 100644 --- a/src/lib/components/crear-post.svelte +++ b/src/lib/components/crear-post.svelte @@ -10,6 +10,9 @@ import { sesionStore } from '@/stores/usuario'; import type { CreatePostDto } from '../../types'; import { addPost } from '@/stores/posts'; + import { Tooltip, TooltipProvider } from './ui/tooltip'; + import TooltipContent from './ui/tooltip/tooltip-content.svelte'; + import TooltipTrigger from './ui/tooltip/tooltip-trigger.svelte'; let mensaje = $state(''); @@ -76,15 +79,24 @@

/ 280 - -

Publicar

- -
+ + + + +

Publicar

+ +
+
+ + Ctrl+Enter + +
+
diff --git a/src/lib/components/ui/hover-card/hover-card-content.svelte b/src/lib/components/ui/hover-card/hover-card-content.svelte new file mode 100644 index 0000000..99dfdd6 --- /dev/null +++ b/src/lib/components/ui/hover-card/hover-card-content.svelte @@ -0,0 +1,29 @@ + + + + + diff --git a/src/lib/components/ui/hover-card/hover-card-trigger.svelte b/src/lib/components/ui/hover-card/hover-card-trigger.svelte new file mode 100644 index 0000000..322172b --- /dev/null +++ b/src/lib/components/ui/hover-card/hover-card-trigger.svelte @@ -0,0 +1,7 @@ + + + diff --git a/src/lib/components/ui/hover-card/index.ts b/src/lib/components/ui/hover-card/index.ts new file mode 100644 index 0000000..85f3949 --- /dev/null +++ b/src/lib/components/ui/hover-card/index.ts @@ -0,0 +1,14 @@ +import { LinkPreview as HoverCardPrimitive } from "bits-ui"; +import Content from "./hover-card-content.svelte"; +import Trigger from "./hover-card-trigger.svelte"; + +const Root = HoverCardPrimitive.Root; + +export { + Root, + Content, + Trigger, + Root as HoverCard, + Content as HoverCardContent, + Trigger as HoverCardTrigger, +}; diff --git a/src/lib/components/ui/tooltip/index.ts b/src/lib/components/ui/tooltip/index.ts new file mode 100644 index 0000000..313a7f0 --- /dev/null +++ b/src/lib/components/ui/tooltip/index.ts @@ -0,0 +1,21 @@ +import { Tooltip as TooltipPrimitive } from "bits-ui"; +import Trigger from "./tooltip-trigger.svelte"; +import Content from "./tooltip-content.svelte"; + +const Root = TooltipPrimitive.Root; +const Provider = TooltipPrimitive.Provider; +const Portal = TooltipPrimitive.Portal; + +export { + Root, + Trigger, + Content, + Provider, + Portal, + // + Root as Tooltip, + Content as TooltipContent, + Trigger as TooltipTrigger, + Provider as TooltipProvider, + Portal as TooltipPortal, +}; diff --git a/src/lib/components/ui/tooltip/tooltip-content.svelte b/src/lib/components/ui/tooltip/tooltip-content.svelte new file mode 100644 index 0000000..447ef3f --- /dev/null +++ b/src/lib/components/ui/tooltip/tooltip-content.svelte @@ -0,0 +1,47 @@ + + + + + {@render children?.()} + + {#snippet child({ props })} +
+ {/snippet} +
+
+
diff --git a/src/lib/components/ui/tooltip/tooltip-trigger.svelte b/src/lib/components/ui/tooltip/tooltip-trigger.svelte new file mode 100644 index 0000000..1acdaa4 --- /dev/null +++ b/src/lib/components/ui/tooltip/tooltip-trigger.svelte @@ -0,0 +1,7 @@ + + + diff --git a/src/routes/[perfil]/modalEditar.svelte b/src/routes/[perfil]/modalEditar.svelte index 68ae6fc..ddd6355 100644 --- a/src/routes/[perfil]/modalEditar.svelte +++ b/src/routes/[perfil]/modalEditar.svelte @@ -11,6 +11,9 @@ import DialogDescription from '@/components/ui/dialog/dialog-description.svelte'; import DialogHeader from '@/components/ui/dialog/dialog-header.svelte'; import DialogTitle from '@/components/ui/dialog/dialog-title.svelte'; + import { Tooltip, TooltipProvider } from '@/components/ui/tooltip'; + import TooltipTrigger from '@/components/ui/tooltip/tooltip-trigger.svelte'; + import TooltipContent from '@/components/ui/tooltip/tooltip-content.svelte'; interface Props { post: Post | null; @@ -53,15 +56,26 @@

/ 280 - -

Modificar

- -
+ + + + +

+ Modificar + +

+
+
+ + Ctrl+Enter + +
+
From 2b767175522fa01de83556424ca62eeca4050524 Mon Sep 17 00:00:00 2001 From: fede Date: Wed, 26 Nov 2025 18:47:39 -0300 Subject: [PATCH 6/6] cambiado title y favicon --- src/lib/assets/favicon.ico | Bin 0 -> 15406 bytes src/routes/+layout.svelte | 3 ++- 2 files changed, 2 insertions(+), 1 deletion(-) create mode 100644 src/lib/assets/favicon.ico diff --git a/src/lib/assets/favicon.ico b/src/lib/assets/favicon.ico new file mode 100644 index 0000000000000000000000000000000000000000..954a67007f1420498d3b9a9c35728377294650ca GIT binary patch literal 15406 zcmZQzU}Rus5D);-3Je)63=C!r3=9ei5Wa>W1H(KP1_lEI2tPxOf#H}a1A_(w1A_oa z9Roz1fl9zqPfyIsR6o_)L@$UGBTY@UBy7y|XWN(={IoGM_-AEo;Ezkcv9TnVxv`$P zjhTJ`2wR&P#M_t|ytOqq{13v`rUr|#>9sP`wY4$R-)LiI@B^d{8@4es_-kRPrGl(q zOG}H*##Da}$X&>Kyj<-6gD|ofNDW9WNDtHuMjJDOb;xS6QWO8*xPI;bzkmP07{msN zA*%uD0Y#0qnL!+~cxqzI|DQj9{Qvv+@Bg!>Pk}Lr4H5&%A*%(2i?x}-31qR;Cr^Ow ztSBh}hZRT;#0I(L^r;hYF_1V&FM3%0`0?Zay}Nf%)PdB3#6WT&HVlLG+L#%9g7HE0 zr%#{$KY#Y@znz5<+zb#KB=-5!C%70$El978nf^8q8-{mo-})Z}7S5af-@(cRj6rOW z7)TDL4n%|WS{v&-fZ_zi2jL(e_x~?nJO?TN|Mlya|6jj+0kdDec<~=32T}vVAUzCPt&N#M9Y`+>Tbt=6+n5=A z0LkOSAT?H|x+ySy$h5JsnuxWDL8XnE{wYvCftdqhgTz2`AT`K(aIx(f7+B18bi_dz z#KxtLQgKi@qrkwx-~dX@3?LSzCQ?N|qpq&5AXQ8v(hwCD6?Q8V!(eMu{S`K52CqTo zjE%9rHIdrMR%WHH&TC_;Uu|P%@En$2K(vjS!83Dn9dWV^CajUs)>J>i#?;^i$UbCj zV`lKj%2?l#uo2{`0HtYbGlT8Ob|SN_%?u`yXEIn9qouKqhLwqajJ2tLBdE@@Hq~Da z!eF+UL5q#4!4qWrkl8k725K-VW)?YOAhSSbg3QKe zzlFZOw2hg;d1CDFc6Iol93S;RB|hrEx0?e>{e??E$ZU`u*xX=iq#JTbb(R;!*<=FUikFG56Wir~jkF0x|p+6&mpW+0!Q|YD)@oFw}v}gkg}~Hf9Dp zV0>)!o?ScOW`f$AsR_|I%}hy%2DeXP8bErnnF$jE*^OR5!Q^1{3uv1SWajy^XK>mL zQx8%DQVYT$y)bcXG{|lnGlSpQ``duv!oS(u+$SNE~Fh zjk&>B5E~c%`t>WwC@|i>WfMXFZ`-m7tQJIk`}!5HdK)u?Z?@)!S8>@562E>8k>_8% zeEHwe+61mt3(uc36J!(|FPJ+Er zxXcBKgX{)1k8R8hPJ;Nj@Wj3@n6YsB*RNmy@7}rn|IY1O|3PfH1e7tcuN!ALf$RbG z8$fo0%0LTaeKSy61c~FqE0--s@gLM0tklY7O9i=6dZ2L`=#~y5YKxTo=#9)4WCsXnyn}&(fr)Gb20){gp}Lffsh*FGnSL2)jKIo7FC1wccK}>O zl$Ffp#`+G{ruwUGO!c2a#!L+sg{Qzq-{ez(KAS~tR zAJBM;nVAY7eVvBiHa$H(ZW|N*7#malU7)%Y-Q6(0jhVp}PnCc(0 zF*EoIN*^${qSMx<2H&j=bu8)YI^4FIsi^Q-n&`!X`f2EHMd#a?8~h@5j0?BTgk|jI z=dF@XlZHj*cfPOS)1u++n5>bw>C5QPN;tXatk@w#?0V`je!AC5 z8XJUIndvXEF*kS&8ha$iO(f|t(=R3DE@I>@jCGA{O!W`jm>GNlrAd<90G)#+RgaCC z{%buwac*MVheHh`sQ$J#HR!Z4)Bi=P{gkS=Hr4-aW2!#^Cdoh6W(My;Zew6zU`BN^f(OZ`2G>A-#^+vSInWqYe^1B%n>VhbjM1Vv z9*F}Q>%D#J=KskPdQir?kj=!#2D!<`)Zm&0jyX;K1(9>#D6sC+qeVE_LhUk{w=*~i`K|Dgl>{)6Tp&cR8+RR{{jhX&w z5Sv(h{@fW*aG~G>d-srJFUYRlJGP;i0peV`bb%yuK=a-Pt5!+NG~#8wqyaiG2nSOWHp4?HfH*_ZA=YT5K@OM51LOzxA?<{_y4_I ziCb#|G7Hr9c>n$#x-tJZtzSb@Jc8Dwg4QO2>NAkJ#NdMLG_3W{w#^&=yVzM0wBNZJc} z4%Rr`;B0FFRs(7ep&I~de+T>FuDj9Q1#+{ciJl>-4FQS=ba`BS(AwH*llw8+%%J)Q zv|jhj$rJxGlH)Mev~|I_ z+z%25&Anf|a1PlCC~Qz4<-vpd;I__zeS7~uxPK38pA4o66!wAMZaCu&WG4y+t&cF( z2Tjd@oX-GSV{2okzY9eTfpHJedYSw8?!ufvHvRCy18{tiVz-T%{!#RCEpu~iO&e3x zwb_Ksj0q3?f9KXsjP?+*o&l{|J#@ue6}#w)ddGU8ewCi7XkGH-t_{= z{)!0?`hV=`A#i^HJzZn-2S^R5o&v4o0_jCIivar{$Zeo?-)PQ;b3uI>8#9AuQtM<; zpP;F}`u~A_d;Y(D^9E~tfZYB5-8-#T(x59e^7k~Dp!m1v%%}}L25v1Nx>ku*qG^cfZT?~ z$ykM~Obs(A8N(vQeYn&@+->l}+C;wqt0VCXvOvb+!1HND=LcMFAypjgc2oW1AU7b7 zHQ;wLhAbnfj<7P-%dj>xd_}4o$W;%r3l!!ST3SNnjNM}Rf`NenH1}t1W-#Bz%-|tt zo)8p1<>6bzGO@Zc@$xd5fcbgkLw=vb< z3NjNkeo3wHCg4{ldo3*<(7c+ZnT|JToF3GVwk9yY0d}vM!53>Y{j*l4dQ&V-wS7!X zv}HkiDh9*a26=gT4$xeqm65Kkm9efrXne!cL@xrwwlvhWGdIvw1*strHlxy`Aut*O HBP0X>V*04y literal 0 HcmV?d00001 diff --git a/src/routes/+layout.svelte b/src/routes/+layout.svelte index 8969994..718627a 100644 --- a/src/routes/+layout.svelte +++ b/src/routes/+layout.svelte @@ -1,6 +1,6 @@