From a72fb31d7abd082d87e20c4507239fc7d47561cf Mon Sep 17 00:00:00 2001 From: 4gray Date: Sat, 7 Feb 2026 23:08:56 +0100 Subject: [PATCH] refactor: enhance params handling in recently viewed and favorites components --- .../recently-viewed.component.ts | 17 ++++++++++------- .../stalker-favorites.component.ts | 17 ++++++++++------- 2 files changed, 20 insertions(+), 14 deletions(-) diff --git a/apps/web/src/app/stalker/recently-viewed/recently-viewed.component.ts b/apps/web/src/app/stalker/recently-viewed/recently-viewed.component.ts index 290c02be3..5e21ebe57 100644 --- a/apps/web/src/app/stalker/recently-viewed/recently-viewed.component.ts +++ b/apps/web/src/app/stalker/recently-viewed/recently-viewed.component.ts @@ -47,13 +47,16 @@ export class RecentlyViewedComponent { readonly currentPlaylist = this.stalkerStore.currentPlaylist; readonly allFavorites = rxResource({ - params: () => ({ - refreshTimestamp: this.refreshTimestamp(), - }), - stream: () => - this.playlistService.getPortalRecentlyViewed( - this.stalkerStore.currentPlaylist()?._id - ), + params: () => { + const portalId = this.stalkerStore.currentPlaylist()?._id; + if (!portalId) return undefined; + return { + portalId, + refreshTimestamp: this.refreshTimestamp(), + }; + }, + stream: ({ params }) => + this.playlistService.getPortalRecentlyViewed(params.portalId), }); readonly categories = computed(() => [ diff --git a/apps/web/src/app/stalker/stalker-favorites/stalker-favorites.component.ts b/apps/web/src/app/stalker/stalker-favorites/stalker-favorites.component.ts index 95f7b3980..e9d3b8037 100644 --- a/apps/web/src/app/stalker/stalker-favorites/stalker-favorites.component.ts +++ b/apps/web/src/app/stalker/stalker-favorites/stalker-favorites.component.ts @@ -47,13 +47,16 @@ export class StalkerFavoritesComponent { readonly currentPlaylist = this.stalkerStore.currentPlaylist; readonly allFavorites = rxResource({ - params: () => ({ - refreshTimestamp: this.refreshTimestamp(), - }), - stream: () => - this.playlistService.getPortalFavorites( - this.stalkerStore.currentPlaylist()?._id - ), + params: () => { + const portalId = this.stalkerStore.currentPlaylist()?._id; + if (!portalId) return undefined; + return { + portalId, + refreshTimestamp: this.refreshTimestamp(), + }; + }, + stream: ({ params }) => + this.playlistService.getPortalFavorites(params.portalId), }); readonly categories = computed(() => [