diff --git a/packages/common/src/hooks/useTrackMetadata.ts b/packages/common/src/hooks/useTrackMetadata.ts
index c5ff523b73f..d020a78a467 100644
--- a/packages/common/src/hooks/useTrackMetadata.ts
+++ b/packages/common/src/hooks/useTrackMetadata.ts
@@ -123,7 +123,8 @@ export const useTrackMetadata = ({
{
id: TrackMetadataType.DOWNLOADS,
label: 'Downloads',
- value: isDownloadable ? formatCount(downloadCount) : '',
+ value:
+ isDownloadable && downloadCount > 0 ? formatCount(downloadCount) : '',
isHidden: !isDownloadable
}
].filter(({ isHidden, value }) => !isHidden && !!value)
diff --git a/packages/web/src/components/track/GiantTrackTile.tsx b/packages/web/src/components/track/GiantTrackTile.tsx
index abcc9c8bd1c..31fb6095d5a 100644
--- a/packages/web/src/components/track/GiantTrackTile.tsx
+++ b/packages/web/src/components/track/GiantTrackTile.tsx
@@ -1,10 +1,9 @@
-import { Suspense, lazy, useCallback, useState, useEffect, useRef } from 'react'
+import { useCallback, useState, useEffect, useRef } from 'react'
import {
useTrackRank,
useRemixContest,
useToggleFavoriteTrack,
- useStems,
useTrack
} from '@audius/common/api'
import {
@@ -72,12 +71,6 @@ import { TrackDogEar } from './TrackDogEar'
import { TrackMetadataList } from './TrackMetadataList'
import { TrackStats } from './TrackStats'
-const DownloadSection = lazy(() =>
- import('./DownloadSection').then((module) => ({
- default: module.DownloadSection
- }))
-)
-
const BUTTON_COLLAPSE_WIDTHS = {
first: 1095,
second: 1190,
@@ -219,8 +212,6 @@ export const GiantTrackTile = ({
const { data: track } = useTrack(trackId, {
select: (track) => pick(track, ['is_downloadable', 'preview_cid'])
})
- const { data: stems = [] } = useStems(trackId)
- const hasDownloadableAssets = track?.is_downloadable || stems.length > 0
// Preview button is shown for USDC-gated tracks if user does not have access
// or is the owner
const showPreview =
@@ -692,13 +683,6 @@ export const GiantTrackTile = ({
) : null}
{renderTags()}
- {hasDownloadableAssets ? (
-
-
-
-
-
- ) : null}
)
diff --git a/packages/web/src/components/track/TrackStats.tsx b/packages/web/src/components/track/TrackStats.tsx
index 95bd1ac57b7..b901b4c9341 100644
--- a/packages/web/src/components/track/TrackStats.tsx
+++ b/packages/web/src/components/track/TrackStats.tsx
@@ -1,20 +1,14 @@
-import {
- useCurrentUserId,
- useTrack,
- useTrackDownloadCount
-} from '@audius/common/api'
+import { useCurrentUserId, useTrack } from '@audius/common/api'
import { ID, Name } from '@audius/common/models'
import { formatCount, isLongFormContent, pluralize } from '@audius/common/utils'
import {
Flex,
- IconCloudDownload,
IconHeart,
IconMessage,
IconPlay,
IconRepost,
PlainButton
} from '@audius/harmony'
-import { encodeHashId } from '@audius/sdk'
import { pick } from 'lodash'
import { useDispatch } from 'react-redux'
@@ -29,8 +23,7 @@ const messages = {
repost: 'Repost',
favorite: 'Favorite',
comment: 'Comment',
- play: 'Play',
- download: 'Download'
+ play: 'Play'
}
type TrackStatsProps = {
@@ -51,13 +44,10 @@ export const TrackStats = (props: TrackStatsProps) => {
'is_unlisted',
'play_count',
'comments_disabled',
- 'genre',
- 'is_downloadable'
+ 'genre'
])
})
const { data: currentUserId } = useCurrentUserId()
- const trackIdHash = partialTrack ? encodeHashId(trackId as number) : null
- const { data: downloadCount = 0 } = useTrackDownloadCount(trackIdHash)
const dispatch = useDispatch()
const comment_count = partialTrack?.comment_count ?? 0
@@ -70,8 +60,7 @@ export const TrackStats = (props: TrackStatsProps) => {
play_count,
is_stream_gated,
owner_id,
- is_unlisted,
- is_downloadable
+ is_unlisted
} = partialTrack
const isOwner = currentUserId === owner_id
@@ -151,16 +140,6 @@ export const TrackStats = (props: TrackStatsProps) => {
{formatCount(play_count)} {pluralize(messages.play, play_count)}
) : null}
- {is_downloadable ? (
-
- {formatCount(downloadCount)}{' '}
- {pluralize(messages.download, downloadCount)}
-
- ) : null}
)
}