From 72bf8076ea1cf868c9d24b7b6aec7ac629290d07 Mon Sep 17 00:00:00 2001 From: Dharit Tantiviramanond Date: Wed, 1 May 2024 17:35:06 -0400 Subject: [PATCH 1/3] [PAY-2791] Show only own albums in artist dashboard --- packages/common/src/store/account/selectors.ts | 6 ++++-- packages/web/src/pages/dashboard-page/components/hooks.ts | 4 ++-- 2 files changed, 6 insertions(+), 4 deletions(-) diff --git a/packages/common/src/store/account/selectors.ts b/packages/common/src/store/account/selectors.ts index f1d23edc411..dd892f13ddd 100644 --- a/packages/common/src/store/account/selectors.ts +++ b/packages/common/src/store/account/selectors.ts @@ -177,11 +177,13 @@ export const getAccountWithAlbums = createSelector( } ) -export const getAccountAlbums = createSelector( +export const getAccountsOwnAlbums = createSelector( [getAccountWithCollections], (account) => { if (!account) return undefined - return account.collections.filter((c) => c.is_album) + return account.collections.filter( + (c) => c.is_album && account.user_id === c.playlist_owner_id + ) } ) diff --git a/packages/web/src/pages/dashboard-page/components/hooks.ts b/packages/web/src/pages/dashboard-page/components/hooks.ts index 2d91d4ffaaf..bf0c7494ec9 100644 --- a/packages/web/src/pages/dashboard-page/components/hooks.ts +++ b/packages/web/src/pages/dashboard-page/components/hooks.ts @@ -28,7 +28,7 @@ import { TrackFilters } from './types' -const { getAccountAlbums } = accountSelectors +const { getAccountsOwnAlbums } = accountSelectors const messages = { public: 'Public', @@ -268,7 +268,7 @@ const formatAlbumMetadata = (album: Collection): DataSourceAlbum => { /** Returns the logged-in user's albums, formatted for Artist Dashboard albums table */ export const useFormattedAlbumData = () => { - const albums = useSelector(getAccountAlbums) + const albums = useSelector(getAccountsOwnAlbums) const albumsFormatted = useMemo(() => { return albums?.map((album) => formatAlbumMetadata(album)) }, [albums]) From ed4d20edb45532a96ddddd3ed42745e7b84a1d84 Mon Sep 17 00:00:00 2001 From: Dharit Tantiviramanond Date: Wed, 1 May 2024 17:57:03 -0400 Subject: [PATCH 2/3] add instead of modify existing selector --- packages/common/src/store/account/selectors.ts | 10 +++++++++- .../web/src/pages/dashboard-page/components/hooks.ts | 4 ++-- 2 files changed, 11 insertions(+), 3 deletions(-) diff --git a/packages/common/src/store/account/selectors.ts b/packages/common/src/store/account/selectors.ts index dd892f13ddd..1c8cc8d28d7 100644 --- a/packages/common/src/store/account/selectors.ts +++ b/packages/common/src/store/account/selectors.ts @@ -177,7 +177,15 @@ export const getAccountWithAlbums = createSelector( } ) -export const getAccountsOwnAlbums = createSelector( +export const getAccountAlbums = createSelector( + [getAccountWithCollections], + (account) => { + if (!account) return undefined + return account.collections.filter((c) => c.is_album) + } +) + +export const getAccountOwnAlbums = createSelector( [getAccountWithCollections], (account) => { if (!account) return undefined diff --git a/packages/web/src/pages/dashboard-page/components/hooks.ts b/packages/web/src/pages/dashboard-page/components/hooks.ts index bf0c7494ec9..3637389a103 100644 --- a/packages/web/src/pages/dashboard-page/components/hooks.ts +++ b/packages/web/src/pages/dashboard-page/components/hooks.ts @@ -28,7 +28,7 @@ import { TrackFilters } from './types' -const { getAccountsOwnAlbums } = accountSelectors +const { getAccountOwnAlbums } = accountSelectors const messages = { public: 'Public', @@ -268,7 +268,7 @@ const formatAlbumMetadata = (album: Collection): DataSourceAlbum => { /** Returns the logged-in user's albums, formatted for Artist Dashboard albums table */ export const useFormattedAlbumData = () => { - const albums = useSelector(getAccountsOwnAlbums) + const albums = useSelector(getAccountOwnAlbums) const albumsFormatted = useMemo(() => { return albums?.map((album) => formatAlbumMetadata(album)) }, [albums]) From d873ce721bc8875ae4784ce597732323d6d83368 Mon Sep 17 00:00:00 2001 From: Dharit Tantiviramanond Date: Wed, 1 May 2024 17:57:58 -0400 Subject: [PATCH 3/3] remove unused selector --- packages/common/src/store/account/selectors.ts | 8 -------- 1 file changed, 8 deletions(-) diff --git a/packages/common/src/store/account/selectors.ts b/packages/common/src/store/account/selectors.ts index 1c8cc8d28d7..d42c3ae86e4 100644 --- a/packages/common/src/store/account/selectors.ts +++ b/packages/common/src/store/account/selectors.ts @@ -177,14 +177,6 @@ export const getAccountWithAlbums = createSelector( } ) -export const getAccountAlbums = createSelector( - [getAccountWithCollections], - (account) => { - if (!account) return undefined - return account.collections.filter((c) => c.is_album) - } -) - export const getAccountOwnAlbums = createSelector( [getAccountWithCollections], (account) => {