From f101ce69a04affd5d6bc4c73ef9568fcf29c1f55 Mon Sep 17 00:00:00 2001 From: XShine555 Date: Tue, 14 Jul 2026 19:11:58 +0200 Subject: [PATCH] Changes --- .../Validators/Users/CreateUserRequestValidator.cs | 4 ++-- backend/Musify.Application/Tracks/GetTracks.cs | 5 +---- frontend/src/routes/(app)/explore/+page.svelte | 4 ++-- frontend/src/routes/(app)/playlists/[id]/+page.svelte | 10 +++++----- 4 files changed, 10 insertions(+), 13 deletions(-) diff --git a/backend/Musify.Api/Validators/Users/CreateUserRequestValidator.cs b/backend/Musify.Api/Validators/Users/CreateUserRequestValidator.cs index 107ea85..bd8de92 100644 --- a/backend/Musify.Api/Validators/Users/CreateUserRequestValidator.cs +++ b/backend/Musify.Api/Validators/Users/CreateUserRequestValidator.cs @@ -16,10 +16,10 @@ public sealed class CreateUserRequestValidator : AbstractValidator x.FirstName) .MaximumLength(48) - .When(x => x.FirstName is not null); + .When(x => !string.IsNullOrWhiteSpace(x.FirstName)); RuleFor(x => x.SecondName) .MaximumLength(48) - .When(x => x.SecondName is not null); + .When(x => !string.IsNullOrWhiteSpace(x.SecondName)); } } diff --git a/backend/Musify.Application/Tracks/GetTracks.cs b/backend/Musify.Application/Tracks/GetTracks.cs index dc08c15..2d8f6a2 100644 --- a/backend/Musify.Application/Tracks/GetTracks.cs +++ b/backend/Musify.Application/Tracks/GetTracks.cs @@ -16,9 +16,6 @@ namespace Musify.Application.Tracks { public async ValueTask >> Handle(GetTracksQuery request, CancellationToken cancellationToken) { - var pageNumber = request.PageNumber < 1 ? 1 : request.PageNumber; - var pageSize = request.PageSize < 1 ? 10 : request.PageSize; - var tracksQuery = database.UserHasTracks .AsNoTracking() .Include(ut => ut.Track) @@ -35,7 +32,7 @@ namespace Musify.Application.Tracks var pagedTracks = await tracksQuery .OrderBy(t => t.Id) .Select(t => TrackApplicationResponse.FromEntity(t.Track)) - .ToPagedListAsync(pageNumber, pageSize, totalCount, cancellationToken); + .ToPagedListAsync(request.PageNumber, request.PageSize, totalCount, cancellationToken); return PaginatedResponse.FromPagedList(pagedTracks); } diff --git a/frontend/src/routes/(app)/explore/+page.svelte b/frontend/src/routes/(app)/explore/+page.svelte index 416d496..c641cfd 100644 --- a/frontend/src/routes/(app)/explore/+page.svelte +++ b/frontend/src/routes/(app)/explore/+page.svelte @@ -65,9 +65,9 @@ type="search" value={data.query} oninput={onSearchInput} - placeholder="Buscar por nombre…" + placeholder="Buscar por nombre..." autocomplete="off" - class="w-full rounded-lg border border-white/15 bg-neutral-950 py-3 pl-11 pr-4 text-sm text-neutral-100 placeholder:text-neutral-500 focus:border-emerald-500/60 focus:outline-none" + class="w-full rounded-lg border border-white/15 bg-neutral-950 py-3 pl-11 pr-4 text-sm text-neutral-100 placeholder:text-neutral-500 focus:border-[var(--mf-accent)]/50 focus:outline-none" /> diff --git a/frontend/src/routes/(app)/playlists/[id]/+page.svelte b/frontend/src/routes/(app)/playlists/[id]/+page.svelte index 6d8ef05..baec492 100644 --- a/frontend/src/routes/(app)/playlists/[id]/+page.svelte +++ b/frontend/src/routes/(app)/playlists/[id]/+page.svelte @@ -55,10 +55,10 @@
@@ -73,7 +73,7 @@ />

Lista

-

{playlist.name}

+

{playlist.name}

{#if playlist.description}

{playlist.description}

{/if} @@ -111,7 +111,7 @@ type="button" onclick={() => (confirmingDelete = true)} aria-label="Eliminar playlist" - class="grid h-12 w-12 place-items-center rounded-lg border border-white/15 text-neutral-300 transition hover:border-red-500/40 hover:bg-red-500/10 hover:text-red-200" + class="grid h-12 w-12 place-items-center rounded-lg border border-white/15 text-neutral-300 transition hover:border-red-500/40 hover:bg-red-500/10 hover:text-red-400" > @@ -310,7 +310,7 @@

¿Eliminar «{playlist.name}»?

- Esta acción no se puede deshacer. Las canciones seguirán en tu biblioteca. + Esta acción no se puede deshacer, la playlist se eliminará de tu biblioteca y de todos los dispositivos donde la tengas guardada.