Start the night up right with some old school Hip Hop & RnB featuring classics by Eve, Fat Joe, Rihanna, Fabolous and more curated by HH uber editor PANCHINO PEREZ repping Frankfurt, Germany.
Released
focusMenuItem($refs.downloadsMenu, 'first'))" :aria-expanded="menuOpen" aria-haspopup="menu"
@keydown.down.prevent="menuOpen = true; $nextTick(() => focusMenuItem($refs.downloadsMenu, 'first'))"
@keydown.up.prevent="menuOpen = true; $nextTick(() => focusMenuItem($refs.downloadsMenu, 'last'))"
:aria-label="(crateOnly ? 'Add to crate: choose a version of ' : 'Downloads: choose a version of ') + row.title"
x-tooltip="{ content: () => crateOnly ? 'Add to crate' : (rowDownloaded(row) ? 'Downloads · some versions downloaded' : 'Downloads'), onShow: () => !menuOpen, hideOnClick: true }"
class="relative inline-flex h-9 w-14 items-center justify-center gap-1 rounded-lg text-xs font-medium text-zinc-600 transition-colors hover:bg-zinc-900/10 focus-visible:outline focus-visible:outline-2 focus-visible:outline-hh-focus dark:text-zinc-300 dark:hover:bg-white/10"
:class="menuOpen ? 'bg-zinc-900/10 dark:bg-white/10' : (rowDownloaded(row) ? 'border-[0.5px] border-zinc-900/15 opacity-50 dark:border-white/15' : (row._parent ? '' : 'bg-zinc-900/5 dark:bg-white/5'))">
focusMenuItem($refs.moreMenu, 'first'))" :aria-expanded="moreOpen" aria-haspopup="menu"
@keydown.down.prevent="moreOpen = true; $nextTick(() => focusMenuItem($refs.moreMenu, 'first'))"
@keydown.up.prevent="moreOpen = true; $nextTick(() => focusMenuItem($refs.moreMenu, 'last'))" :aria-label="'More options for ' + row.title" x-tooltip="{ content: 'More options', onShow: () => !moreOpen }"
class="flex size-9 items-center justify-center rounded-full text-zinc-500 hover:bg-zinc-900/5 focus-visible:outline focus-visible:outline-2 focus-visible:outline-hh-focus dark:text-zinc-400 dark:hover:bg-white/10">
Released
focusMenuItem($refs.downloadsMenu, 'first'))" :aria-expanded="menuOpen" aria-haspopup="menu"
@keydown.down.prevent="menuOpen = true; $nextTick(() => focusMenuItem($refs.downloadsMenu, 'first'))"
@keydown.up.prevent="menuOpen = true; $nextTick(() => focusMenuItem($refs.downloadsMenu, 'last'))"
:aria-label="(crateOnly ? 'Add to crate: choose a version of ' : 'Downloads: choose a version of ') + row.title"
x-tooltip="{ content: () => crateOnly ? 'Add to crate' : (rowDownloaded(row) ? 'Downloads · some versions downloaded' : 'Downloads'), onShow: () => !menuOpen, hideOnClick: true }"
class="relative inline-flex h-9 w-14 items-center justify-center gap-1 rounded-lg text-xs font-medium text-zinc-600 transition-colors hover:bg-zinc-900/10 focus-visible:outline focus-visible:outline-2 focus-visible:outline-hh-focus dark:text-zinc-300 dark:hover:bg-white/10"
:class="menuOpen ? 'bg-zinc-900/10 dark:bg-white/10' : (rowDownloaded(row) ? 'border-[0.5px] border-zinc-900/15 opacity-50 dark:border-white/15' : (row._parent ? '' : 'bg-zinc-900/5 dark:bg-white/5'))">
focusMenuItem($refs.moreMenu, 'first'))" :aria-expanded="moreOpen" aria-haspopup="menu"
@keydown.down.prevent="moreOpen = true; $nextTick(() => focusMenuItem($refs.moreMenu, 'first'))"
@keydown.up.prevent="moreOpen = true; $nextTick(() => focusMenuItem($refs.moreMenu, 'last'))" :aria-label="'More options for ' + row.title" x-tooltip="{ content: 'More options', onShow: () => !moreOpen }"
class="flex size-9 items-center justify-center rounded-full text-zinc-500 hover:bg-zinc-900/5 focus-visible:outline focus-visible:outline-2 focus-visible:outline-hh-focus dark:text-zinc-400 dark:hover:bg-white/10">
Danceability
0.86
Energy
0.86
Popularity
0.86
Valence
0.86
response.json())
.then(data => {
similarSongs = data.success ? data.data : [];
isLoadingSimilarSongs = false;
});
// Load recommendations
if (currentTrack?.artist && currentTrack?.title) {
const formData = new FormData();
formData.append('action', 'get_spotify_recommendations');
formData.append('artist', currentTrack.artist);
formData.append('title', currentTrack.title);
fetch(hhMusicData.ajaxurl, {
method: 'POST',
body: formData
})
.then(response => {
if (!response.ok) {
throw new Error('Network response was not ok');
}
return response.json();
})
.then(data => {
recommendations = data.success ? data.data.results : [];
isLoadingRecommendations = false;
})
.catch(() => {
isLoadingRecommendations = false;
});
} else {
isLoadingRecommendations = false;
}
} else {
isLoadingSimilarSongs = false;
isLoadingRecommendations = false;
}"
x-bind:id="'menu-' + currentTrack?.id"
:style="`position-anchor1: --result-${currentTrack?.id}`"
class="similar-popover w-full max-w-2xl bg-white/95 dark:bg-[#131522]/70 backdrop-blur-md text-zinc-900 dark:text-zinc-100 pb-0 mt-0 mx-auto md:m-auto popover-similar p-0 md:p-4 shadow shadow-2xl shadow-zinc-900/10 dark:shadow-zinc-900/50">
No mixable songs found.
Released
focusMenuItem($refs.downloadsMenu, 'first'))" :aria-expanded="menuOpen" aria-haspopup="menu"
@keydown.down.prevent="menuOpen = true; $nextTick(() => focusMenuItem($refs.downloadsMenu, 'first'))"
@keydown.up.prevent="menuOpen = true; $nextTick(() => focusMenuItem($refs.downloadsMenu, 'last'))"
:aria-label="(crateOnly ? 'Add to crate: choose a version of ' : 'Downloads: choose a version of ') + row.title"
x-tooltip="{ content: () => crateOnly ? 'Add to crate' : (rowDownloaded(row) ? 'Downloads · some versions downloaded' : 'Downloads'), onShow: () => !menuOpen, hideOnClick: true }"
class="relative inline-flex h-9 w-14 items-center justify-center gap-1 rounded-lg text-xs font-medium text-zinc-600 transition-colors hover:bg-zinc-900/10 focus-visible:outline focus-visible:outline-2 focus-visible:outline-hh-focus dark:text-zinc-300 dark:hover:bg-white/10"
:class="menuOpen ? 'bg-zinc-900/10 dark:bg-white/10' : (rowDownloaded(row) ? 'border-[0.5px] border-zinc-900/15 opacity-50 dark:border-white/15' : (row._parent ? '' : 'bg-zinc-900/5 dark:bg-white/5'))">
focusMenuItem($refs.moreMenu, 'first'))" :aria-expanded="moreOpen" aria-haspopup="menu"
@keydown.down.prevent="moreOpen = true; $nextTick(() => focusMenuItem($refs.moreMenu, 'first'))"
@keydown.up.prevent="moreOpen = true; $nextTick(() => focusMenuItem($refs.moreMenu, 'last'))" :aria-label="'More options for ' + row.title" x-tooltip="{ content: 'More options', onShow: () => !moreOpen }"
class="flex size-9 items-center justify-center rounded-full text-zinc-500 hover:bg-zinc-900/5 focus-visible:outline focus-visible:outline-2 focus-visible:outline-hh-focus dark:text-zinc-400 dark:hover:bg-white/10">
Released
focusMenuItem($refs.downloadsMenu, 'first'))" :aria-expanded="menuOpen" aria-haspopup="menu"
@keydown.down.prevent="menuOpen = true; $nextTick(() => focusMenuItem($refs.downloadsMenu, 'first'))"
@keydown.up.prevent="menuOpen = true; $nextTick(() => focusMenuItem($refs.downloadsMenu, 'last'))"
:aria-label="(crateOnly ? 'Add to crate: choose a version of ' : 'Downloads: choose a version of ') + row.title"
x-tooltip="{ content: () => crateOnly ? 'Add to crate' : (rowDownloaded(row) ? 'Downloads · some versions downloaded' : 'Downloads'), onShow: () => !menuOpen, hideOnClick: true }"
class="relative inline-flex h-9 w-14 items-center justify-center gap-1 rounded-lg text-xs font-medium text-zinc-600 transition-colors hover:bg-zinc-900/10 focus-visible:outline focus-visible:outline-2 focus-visible:outline-hh-focus dark:text-zinc-300 dark:hover:bg-white/10"
:class="menuOpen ? 'bg-zinc-900/10 dark:bg-white/10' : (rowDownloaded(row) ? 'border-[0.5px] border-zinc-900/15 opacity-50 dark:border-white/15' : (row._parent ? '' : 'bg-zinc-900/5 dark:bg-white/5'))">
focusMenuItem($refs.moreMenu, 'first'))" :aria-expanded="moreOpen" aria-haspopup="menu"
@keydown.down.prevent="moreOpen = true; $nextTick(() => focusMenuItem($refs.moreMenu, 'first'))"
@keydown.up.prevent="moreOpen = true; $nextTick(() => focusMenuItem($refs.moreMenu, 'last'))" :aria-label="'More options for ' + row.title" x-tooltip="{ content: 'More options', onShow: () => !moreOpen }"
class="flex size-9 items-center justify-center rounded-full text-zinc-500 hover:bg-zinc-900/5 focus-visible:outline focus-visible:outline-2 focus-visible:outline-hh-focus dark:text-zinc-400 dark:hover:bg-white/10">
No similar songs found.
Released
focusMenuItem($refs.downloadsMenu, 'first'))" :aria-expanded="menuOpen" aria-haspopup="menu"
@keydown.down.prevent="menuOpen = true; $nextTick(() => focusMenuItem($refs.downloadsMenu, 'first'))"
@keydown.up.prevent="menuOpen = true; $nextTick(() => focusMenuItem($refs.downloadsMenu, 'last'))"
:aria-label="(crateOnly ? 'Add to crate: choose a version of ' : 'Downloads: choose a version of ') + row.title"
x-tooltip="{ content: () => crateOnly ? 'Add to crate' : (rowDownloaded(row) ? 'Downloads · some versions downloaded' : 'Downloads'), onShow: () => !menuOpen, hideOnClick: true }"
class="relative inline-flex h-9 w-14 items-center justify-center gap-1 rounded-lg text-xs font-medium text-zinc-600 transition-colors hover:bg-zinc-900/10 focus-visible:outline focus-visible:outline-2 focus-visible:outline-hh-focus dark:text-zinc-300 dark:hover:bg-white/10"
:class="menuOpen ? 'bg-zinc-900/10 dark:bg-white/10' : (rowDownloaded(row) ? 'border-[0.5px] border-zinc-900/15 opacity-50 dark:border-white/15' : (row._parent ? '' : 'bg-zinc-900/5 dark:bg-white/5'))">
focusMenuItem($refs.moreMenu, 'first'))" :aria-expanded="moreOpen" aria-haspopup="menu"
@keydown.down.prevent="moreOpen = true; $nextTick(() => focusMenuItem($refs.moreMenu, 'first'))"
@keydown.up.prevent="moreOpen = true; $nextTick(() => focusMenuItem($refs.moreMenu, 'last'))" :aria-label="'More options for ' + row.title" x-tooltip="{ content: 'More options', onShow: () => !moreOpen }"
class="flex size-9 items-center justify-center rounded-full text-zinc-500 hover:bg-zinc-900/5 focus-visible:outline focus-visible:outline-2 focus-visible:outline-hh-focus dark:text-zinc-400 dark:hover:bg-white/10">
Released
focusMenuItem($refs.downloadsMenu, 'first'))" :aria-expanded="menuOpen" aria-haspopup="menu"
@keydown.down.prevent="menuOpen = true; $nextTick(() => focusMenuItem($refs.downloadsMenu, 'first'))"
@keydown.up.prevent="menuOpen = true; $nextTick(() => focusMenuItem($refs.downloadsMenu, 'last'))"
:aria-label="(crateOnly ? 'Add to crate: choose a version of ' : 'Downloads: choose a version of ') + row.title"
x-tooltip="{ content: () => crateOnly ? 'Add to crate' : (rowDownloaded(row) ? 'Downloads · some versions downloaded' : 'Downloads'), onShow: () => !menuOpen, hideOnClick: true }"
class="relative inline-flex h-9 w-14 items-center justify-center gap-1 rounded-lg text-xs font-medium text-zinc-600 transition-colors hover:bg-zinc-900/10 focus-visible:outline focus-visible:outline-2 focus-visible:outline-hh-focus dark:text-zinc-300 dark:hover:bg-white/10"
:class="menuOpen ? 'bg-zinc-900/10 dark:bg-white/10' : (rowDownloaded(row) ? 'border-[0.5px] border-zinc-900/15 opacity-50 dark:border-white/15' : (row._parent ? '' : 'bg-zinc-900/5 dark:bg-white/5'))">
focusMenuItem($refs.moreMenu, 'first'))" :aria-expanded="moreOpen" aria-haspopup="menu"
@keydown.down.prevent="moreOpen = true; $nextTick(() => focusMenuItem($refs.moreMenu, 'first'))"
@keydown.up.prevent="moreOpen = true; $nextTick(() => focusMenuItem($refs.moreMenu, 'last'))" :aria-label="'More options for ' + row.title" x-tooltip="{ content: 'More options', onShow: () => !moreOpen }"
class="flex size-9 items-center justify-center rounded-full text-zinc-500 hover:bg-zinc-900/5 focus-visible:outline focus-visible:outline-2 focus-visible:outline-hh-focus dark:text-zinc-400 dark:hover:bg-white/10">
response.json())
.then(data => {
playlists = data.success && Array.isArray(data.data) ? data.data : [];
isLoading = false;
})
.catch(() => { isLoading = false; });
} else {
isLoading = false;
}"
id="release-playlists-panel"
class="release-playlists-popover w-full max-w-2xl bg-white/95 dark:bg-[#131522]/70 backdrop-blur-md text-zinc-900 dark:text-zinc-100 pb-0 mt-0 mx-auto md:m-auto p-0 md:p-4 shadow shadow-2xl shadow-zinc-900/10 dark:shadow-zinc-900/50">
This track isn't in any playlists yet.
Premium content is available to members only. Please upgrade to access this content.
Coming in hot on the 22nd episode of the Podcast is DJ ARICH checking in from Denver, CO. Arich has over 14 years of experience under is belt and is resident on FLO 107.1FM with his award winning “Up All Night” show. Here he shows his versatility jumping through genres seamlessly featuring hot remixes and edits of top tunes by Avicii, DaBaby, French Montana, Justin Timberlake and more. Check the mix and download your favorites below~
Released
focusMenuItem($refs.downloadsMenu, 'first'))" :aria-expanded="menuOpen" aria-haspopup="menu"
@keydown.down.prevent="menuOpen = true; $nextTick(() => focusMenuItem($refs.downloadsMenu, 'first'))"
@keydown.up.prevent="menuOpen = true; $nextTick(() => focusMenuItem($refs.downloadsMenu, 'last'))"
:aria-label="(crateOnly ? 'Add to crate: choose a version of ' : 'Downloads: choose a version of ') + row.title"
x-tooltip="{ content: () => crateOnly ? 'Add to crate' : (rowDownloaded(row) ? 'Downloads · some versions downloaded' : 'Downloads'), onShow: () => !menuOpen, hideOnClick: true }"
class="relative inline-flex h-9 w-14 items-center justify-center gap-1 rounded-lg text-xs font-medium text-zinc-600 transition-colors hover:bg-zinc-900/10 focus-visible:outline focus-visible:outline-2 focus-visible:outline-hh-focus dark:text-zinc-300 dark:hover:bg-white/10"
:class="menuOpen ? 'bg-zinc-900/10 dark:bg-white/10' : (rowDownloaded(row) ? 'border-[0.5px] border-zinc-900/15 opacity-50 dark:border-white/15' : (row._parent ? '' : 'bg-zinc-900/5 dark:bg-white/5'))">
focusMenuItem($refs.moreMenu, 'first'))" :aria-expanded="moreOpen" aria-haspopup="menu"
@keydown.down.prevent="moreOpen = true; $nextTick(() => focusMenuItem($refs.moreMenu, 'first'))"
@keydown.up.prevent="moreOpen = true; $nextTick(() => focusMenuItem($refs.moreMenu, 'last'))" :aria-label="'More options for ' + row.title" x-tooltip="{ content: 'More options', onShow: () => !moreOpen }"
class="flex size-9 items-center justify-center rounded-full text-zinc-500 hover:bg-zinc-900/5 focus-visible:outline focus-visible:outline-2 focus-visible:outline-hh-focus dark:text-zinc-400 dark:hover:bg-white/10">
Released
focusMenuItem($refs.downloadsMenu, 'first'))" :aria-expanded="menuOpen" aria-haspopup="menu"
@keydown.down.prevent="menuOpen = true; $nextTick(() => focusMenuItem($refs.downloadsMenu, 'first'))"
@keydown.up.prevent="menuOpen = true; $nextTick(() => focusMenuItem($refs.downloadsMenu, 'last'))"
:aria-label="(crateOnly ? 'Add to crate: choose a version of ' : 'Downloads: choose a version of ') + row.title"
x-tooltip="{ content: () => crateOnly ? 'Add to crate' : (rowDownloaded(row) ? 'Downloads · some versions downloaded' : 'Downloads'), onShow: () => !menuOpen, hideOnClick: true }"
class="relative inline-flex h-9 w-14 items-center justify-center gap-1 rounded-lg text-xs font-medium text-zinc-600 transition-colors hover:bg-zinc-900/10 focus-visible:outline focus-visible:outline-2 focus-visible:outline-hh-focus dark:text-zinc-300 dark:hover:bg-white/10"
:class="menuOpen ? 'bg-zinc-900/10 dark:bg-white/10' : (rowDownloaded(row) ? 'border-[0.5px] border-zinc-900/15 opacity-50 dark:border-white/15' : (row._parent ? '' : 'bg-zinc-900/5 dark:bg-white/5'))">
focusMenuItem($refs.moreMenu, 'first'))" :aria-expanded="moreOpen" aria-haspopup="menu"
@keydown.down.prevent="moreOpen = true; $nextTick(() => focusMenuItem($refs.moreMenu, 'first'))"
@keydown.up.prevent="moreOpen = true; $nextTick(() => focusMenuItem($refs.moreMenu, 'last'))" :aria-label="'More options for ' + row.title" x-tooltip="{ content: 'More options', onShow: () => !moreOpen }"
class="flex size-9 items-center justify-center rounded-full text-zinc-500 hover:bg-zinc-900/5 focus-visible:outline focus-visible:outline-2 focus-visible:outline-hh-focus dark:text-zinc-400 dark:hover:bg-white/10">
Danceability
0.86
Energy
0.86
Popularity
0.86
Valence
0.86
response.json())
.then(data => {
similarSongs = data.success ? data.data : [];
isLoadingSimilarSongs = false;
});
// Load recommendations
if (currentTrack?.artist && currentTrack?.title) {
const formData = new FormData();
formData.append('action', 'get_spotify_recommendations');
formData.append('artist', currentTrack.artist);
formData.append('title', currentTrack.title);
fetch(hhMusicData.ajaxurl, {
method: 'POST',
body: formData
})
.then(response => {
if (!response.ok) {
throw new Error('Network response was not ok');
}
return response.json();
})
.then(data => {
recommendations = data.success ? data.data.results : [];
isLoadingRecommendations = false;
})
.catch(() => {
isLoadingRecommendations = false;
});
} else {
isLoadingRecommendations = false;
}
} else {
isLoadingSimilarSongs = false;
isLoadingRecommendations = false;
}"
x-bind:id="'menu-' + currentTrack?.id"
:style="`position-anchor1: --result-${currentTrack?.id}`"
class="similar-popover w-full max-w-2xl bg-white/95 dark:bg-[#131522]/70 backdrop-blur-md text-zinc-900 dark:text-zinc-100 pb-0 mt-0 mx-auto md:m-auto popover-similar p-0 md:p-4 shadow shadow-2xl shadow-zinc-900/10 dark:shadow-zinc-900/50">
No mixable songs found.
Released
focusMenuItem($refs.downloadsMenu, 'first'))" :aria-expanded="menuOpen" aria-haspopup="menu"
@keydown.down.prevent="menuOpen = true; $nextTick(() => focusMenuItem($refs.downloadsMenu, 'first'))"
@keydown.up.prevent="menuOpen = true; $nextTick(() => focusMenuItem($refs.downloadsMenu, 'last'))"
:aria-label="(crateOnly ? 'Add to crate: choose a version of ' : 'Downloads: choose a version of ') + row.title"
x-tooltip="{ content: () => crateOnly ? 'Add to crate' : (rowDownloaded(row) ? 'Downloads · some versions downloaded' : 'Downloads'), onShow: () => !menuOpen, hideOnClick: true }"
class="relative inline-flex h-9 w-14 items-center justify-center gap-1 rounded-lg text-xs font-medium text-zinc-600 transition-colors hover:bg-zinc-900/10 focus-visible:outline focus-visible:outline-2 focus-visible:outline-hh-focus dark:text-zinc-300 dark:hover:bg-white/10"
:class="menuOpen ? 'bg-zinc-900/10 dark:bg-white/10' : (rowDownloaded(row) ? 'border-[0.5px] border-zinc-900/15 opacity-50 dark:border-white/15' : (row._parent ? '' : 'bg-zinc-900/5 dark:bg-white/5'))">
focusMenuItem($refs.moreMenu, 'first'))" :aria-expanded="moreOpen" aria-haspopup="menu"
@keydown.down.prevent="moreOpen = true; $nextTick(() => focusMenuItem($refs.moreMenu, 'first'))"
@keydown.up.prevent="moreOpen = true; $nextTick(() => focusMenuItem($refs.moreMenu, 'last'))" :aria-label="'More options for ' + row.title" x-tooltip="{ content: 'More options', onShow: () => !moreOpen }"
class="flex size-9 items-center justify-center rounded-full text-zinc-500 hover:bg-zinc-900/5 focus-visible:outline focus-visible:outline-2 focus-visible:outline-hh-focus dark:text-zinc-400 dark:hover:bg-white/10">
Released
focusMenuItem($refs.downloadsMenu, 'first'))" :aria-expanded="menuOpen" aria-haspopup="menu"
@keydown.down.prevent="menuOpen = true; $nextTick(() => focusMenuItem($refs.downloadsMenu, 'first'))"
@keydown.up.prevent="menuOpen = true; $nextTick(() => focusMenuItem($refs.downloadsMenu, 'last'))"
:aria-label="(crateOnly ? 'Add to crate: choose a version of ' : 'Downloads: choose a version of ') + row.title"
x-tooltip="{ content: () => crateOnly ? 'Add to crate' : (rowDownloaded(row) ? 'Downloads · some versions downloaded' : 'Downloads'), onShow: () => !menuOpen, hideOnClick: true }"
class="relative inline-flex h-9 w-14 items-center justify-center gap-1 rounded-lg text-xs font-medium text-zinc-600 transition-colors hover:bg-zinc-900/10 focus-visible:outline focus-visible:outline-2 focus-visible:outline-hh-focus dark:text-zinc-300 dark:hover:bg-white/10"
:class="menuOpen ? 'bg-zinc-900/10 dark:bg-white/10' : (rowDownloaded(row) ? 'border-[0.5px] border-zinc-900/15 opacity-50 dark:border-white/15' : (row._parent ? '' : 'bg-zinc-900/5 dark:bg-white/5'))">
focusMenuItem($refs.moreMenu, 'first'))" :aria-expanded="moreOpen" aria-haspopup="menu"
@keydown.down.prevent="moreOpen = true; $nextTick(() => focusMenuItem($refs.moreMenu, 'first'))"
@keydown.up.prevent="moreOpen = true; $nextTick(() => focusMenuItem($refs.moreMenu, 'last'))" :aria-label="'More options for ' + row.title" x-tooltip="{ content: 'More options', onShow: () => !moreOpen }"
class="flex size-9 items-center justify-center rounded-full text-zinc-500 hover:bg-zinc-900/5 focus-visible:outline focus-visible:outline-2 focus-visible:outline-hh-focus dark:text-zinc-400 dark:hover:bg-white/10">
No similar songs found.
Released
focusMenuItem($refs.downloadsMenu, 'first'))" :aria-expanded="menuOpen" aria-haspopup="menu"
@keydown.down.prevent="menuOpen = true; $nextTick(() => focusMenuItem($refs.downloadsMenu, 'first'))"
@keydown.up.prevent="menuOpen = true; $nextTick(() => focusMenuItem($refs.downloadsMenu, 'last'))"
:aria-label="(crateOnly ? 'Add to crate: choose a version of ' : 'Downloads: choose a version of ') + row.title"
x-tooltip="{ content: () => crateOnly ? 'Add to crate' : (rowDownloaded(row) ? 'Downloads · some versions downloaded' : 'Downloads'), onShow: () => !menuOpen, hideOnClick: true }"
class="relative inline-flex h-9 w-14 items-center justify-center gap-1 rounded-lg text-xs font-medium text-zinc-600 transition-colors hover:bg-zinc-900/10 focus-visible:outline focus-visible:outline-2 focus-visible:outline-hh-focus dark:text-zinc-300 dark:hover:bg-white/10"
:class="menuOpen ? 'bg-zinc-900/10 dark:bg-white/10' : (rowDownloaded(row) ? 'border-[0.5px] border-zinc-900/15 opacity-50 dark:border-white/15' : (row._parent ? '' : 'bg-zinc-900/5 dark:bg-white/5'))">
focusMenuItem($refs.moreMenu, 'first'))" :aria-expanded="moreOpen" aria-haspopup="menu"
@keydown.down.prevent="moreOpen = true; $nextTick(() => focusMenuItem($refs.moreMenu, 'first'))"
@keydown.up.prevent="moreOpen = true; $nextTick(() => focusMenuItem($refs.moreMenu, 'last'))" :aria-label="'More options for ' + row.title" x-tooltip="{ content: 'More options', onShow: () => !moreOpen }"
class="flex size-9 items-center justify-center rounded-full text-zinc-500 hover:bg-zinc-900/5 focus-visible:outline focus-visible:outline-2 focus-visible:outline-hh-focus dark:text-zinc-400 dark:hover:bg-white/10">
Released
focusMenuItem($refs.downloadsMenu, 'first'))" :aria-expanded="menuOpen" aria-haspopup="menu"
@keydown.down.prevent="menuOpen = true; $nextTick(() => focusMenuItem($refs.downloadsMenu, 'first'))"
@keydown.up.prevent="menuOpen = true; $nextTick(() => focusMenuItem($refs.downloadsMenu, 'last'))"
:aria-label="(crateOnly ? 'Add to crate: choose a version of ' : 'Downloads: choose a version of ') + row.title"
x-tooltip="{ content: () => crateOnly ? 'Add to crate' : (rowDownloaded(row) ? 'Downloads · some versions downloaded' : 'Downloads'), onShow: () => !menuOpen, hideOnClick: true }"
class="relative inline-flex h-9 w-14 items-center justify-center gap-1 rounded-lg text-xs font-medium text-zinc-600 transition-colors hover:bg-zinc-900/10 focus-visible:outline focus-visible:outline-2 focus-visible:outline-hh-focus dark:text-zinc-300 dark:hover:bg-white/10"
:class="menuOpen ? 'bg-zinc-900/10 dark:bg-white/10' : (rowDownloaded(row) ? 'border-[0.5px] border-zinc-900/15 opacity-50 dark:border-white/15' : (row._parent ? '' : 'bg-zinc-900/5 dark:bg-white/5'))">
focusMenuItem($refs.moreMenu, 'first'))" :aria-expanded="moreOpen" aria-haspopup="menu"
@keydown.down.prevent="moreOpen = true; $nextTick(() => focusMenuItem($refs.moreMenu, 'first'))"
@keydown.up.prevent="moreOpen = true; $nextTick(() => focusMenuItem($refs.moreMenu, 'last'))" :aria-label="'More options for ' + row.title" x-tooltip="{ content: 'More options', onShow: () => !moreOpen }"
class="flex size-9 items-center justify-center rounded-full text-zinc-500 hover:bg-zinc-900/5 focus-visible:outline focus-visible:outline-2 focus-visible:outline-hh-focus dark:text-zinc-400 dark:hover:bg-white/10">
response.json())
.then(data => {
playlists = data.success && Array.isArray(data.data) ? data.data : [];
isLoading = false;
})
.catch(() => { isLoading = false; });
} else {
isLoading = false;
}"
id="release-playlists-panel"
class="release-playlists-popover w-full max-w-2xl bg-white/95 dark:bg-[#131522]/70 backdrop-blur-md text-zinc-900 dark:text-zinc-100 pb-0 mt-0 mx-auto md:m-auto p-0 md:p-4 shadow shadow-2xl shadow-zinc-900/10 dark:shadow-zinc-900/50">
This track isn't in any playlists yet.
Premium content is available to members only. Please upgrade to access this content.
Get your Soca crate right with these essential Soca tunes dating back from the 80s to the currents curated by our Caribbean specialist DJ SCHULLER featuring Machel Montano, Mr Slaughter, Gillo and more.
Released
focusMenuItem($refs.downloadsMenu, 'first'))" :aria-expanded="menuOpen" aria-haspopup="menu"
@keydown.down.prevent="menuOpen = true; $nextTick(() => focusMenuItem($refs.downloadsMenu, 'first'))"
@keydown.up.prevent="menuOpen = true; $nextTick(() => focusMenuItem($refs.downloadsMenu, 'last'))"
:aria-label="(crateOnly ? 'Add to crate: choose a version of ' : 'Downloads: choose a version of ') + row.title"
x-tooltip="{ content: () => crateOnly ? 'Add to crate' : (rowDownloaded(row) ? 'Downloads · some versions downloaded' : 'Downloads'), onShow: () => !menuOpen, hideOnClick: true }"
class="relative inline-flex h-9 w-14 items-center justify-center gap-1 rounded-lg text-xs font-medium text-zinc-600 transition-colors hover:bg-zinc-900/10 focus-visible:outline focus-visible:outline-2 focus-visible:outline-hh-focus dark:text-zinc-300 dark:hover:bg-white/10"
:class="menuOpen ? 'bg-zinc-900/10 dark:bg-white/10' : (rowDownloaded(row) ? 'border-[0.5px] border-zinc-900/15 opacity-50 dark:border-white/15' : (row._parent ? '' : 'bg-zinc-900/5 dark:bg-white/5'))">
focusMenuItem($refs.moreMenu, 'first'))" :aria-expanded="moreOpen" aria-haspopup="menu"
@keydown.down.prevent="moreOpen = true; $nextTick(() => focusMenuItem($refs.moreMenu, 'first'))"
@keydown.up.prevent="moreOpen = true; $nextTick(() => focusMenuItem($refs.moreMenu, 'last'))" :aria-label="'More options for ' + row.title" x-tooltip="{ content: 'More options', onShow: () => !moreOpen }"
class="flex size-9 items-center justify-center rounded-full text-zinc-500 hover:bg-zinc-900/5 focus-visible:outline focus-visible:outline-2 focus-visible:outline-hh-focus dark:text-zinc-400 dark:hover:bg-white/10">
Released
focusMenuItem($refs.downloadsMenu, 'first'))" :aria-expanded="menuOpen" aria-haspopup="menu"
@keydown.down.prevent="menuOpen = true; $nextTick(() => focusMenuItem($refs.downloadsMenu, 'first'))"
@keydown.up.prevent="menuOpen = true; $nextTick(() => focusMenuItem($refs.downloadsMenu, 'last'))"
:aria-label="(crateOnly ? 'Add to crate: choose a version of ' : 'Downloads: choose a version of ') + row.title"
x-tooltip="{ content: () => crateOnly ? 'Add to crate' : (rowDownloaded(row) ? 'Downloads · some versions downloaded' : 'Downloads'), onShow: () => !menuOpen, hideOnClick: true }"
class="relative inline-flex h-9 w-14 items-center justify-center gap-1 rounded-lg text-xs font-medium text-zinc-600 transition-colors hover:bg-zinc-900/10 focus-visible:outline focus-visible:outline-2 focus-visible:outline-hh-focus dark:text-zinc-300 dark:hover:bg-white/10"
:class="menuOpen ? 'bg-zinc-900/10 dark:bg-white/10' : (rowDownloaded(row) ? 'border-[0.5px] border-zinc-900/15 opacity-50 dark:border-white/15' : (row._parent ? '' : 'bg-zinc-900/5 dark:bg-white/5'))">
focusMenuItem($refs.moreMenu, 'first'))" :aria-expanded="moreOpen" aria-haspopup="menu"
@keydown.down.prevent="moreOpen = true; $nextTick(() => focusMenuItem($refs.moreMenu, 'first'))"
@keydown.up.prevent="moreOpen = true; $nextTick(() => focusMenuItem($refs.moreMenu, 'last'))" :aria-label="'More options for ' + row.title" x-tooltip="{ content: 'More options', onShow: () => !moreOpen }"
class="flex size-9 items-center justify-center rounded-full text-zinc-500 hover:bg-zinc-900/5 focus-visible:outline focus-visible:outline-2 focus-visible:outline-hh-focus dark:text-zinc-400 dark:hover:bg-white/10">
Danceability
0.86
Energy
0.86
Popularity
0.86
Valence
0.86
response.json())
.then(data => {
similarSongs = data.success ? data.data : [];
isLoadingSimilarSongs = false;
});
// Load recommendations
if (currentTrack?.artist && currentTrack?.title) {
const formData = new FormData();
formData.append('action', 'get_spotify_recommendations');
formData.append('artist', currentTrack.artist);
formData.append('title', currentTrack.title);
fetch(hhMusicData.ajaxurl, {
method: 'POST',
body: formData
})
.then(response => {
if (!response.ok) {
throw new Error('Network response was not ok');
}
return response.json();
})
.then(data => {
recommendations = data.success ? data.data.results : [];
isLoadingRecommendations = false;
})
.catch(() => {
isLoadingRecommendations = false;
});
} else {
isLoadingRecommendations = false;
}
} else {
isLoadingSimilarSongs = false;
isLoadingRecommendations = false;
}"
x-bind:id="'menu-' + currentTrack?.id"
:style="`position-anchor1: --result-${currentTrack?.id}`"
class="similar-popover w-full max-w-2xl bg-white/95 dark:bg-[#131522]/70 backdrop-blur-md text-zinc-900 dark:text-zinc-100 pb-0 mt-0 mx-auto md:m-auto popover-similar p-0 md:p-4 shadow shadow-2xl shadow-zinc-900/10 dark:shadow-zinc-900/50">
No mixable songs found.
Released
focusMenuItem($refs.downloadsMenu, 'first'))" :aria-expanded="menuOpen" aria-haspopup="menu"
@keydown.down.prevent="menuOpen = true; $nextTick(() => focusMenuItem($refs.downloadsMenu, 'first'))"
@keydown.up.prevent="menuOpen = true; $nextTick(() => focusMenuItem($refs.downloadsMenu, 'last'))"
:aria-label="(crateOnly ? 'Add to crate: choose a version of ' : 'Downloads: choose a version of ') + row.title"
x-tooltip="{ content: () => crateOnly ? 'Add to crate' : (rowDownloaded(row) ? 'Downloads · some versions downloaded' : 'Downloads'), onShow: () => !menuOpen, hideOnClick: true }"
class="relative inline-flex h-9 w-14 items-center justify-center gap-1 rounded-lg text-xs font-medium text-zinc-600 transition-colors hover:bg-zinc-900/10 focus-visible:outline focus-visible:outline-2 focus-visible:outline-hh-focus dark:text-zinc-300 dark:hover:bg-white/10"
:class="menuOpen ? 'bg-zinc-900/10 dark:bg-white/10' : (rowDownloaded(row) ? 'border-[0.5px] border-zinc-900/15 opacity-50 dark:border-white/15' : (row._parent ? '' : 'bg-zinc-900/5 dark:bg-white/5'))">
focusMenuItem($refs.moreMenu, 'first'))" :aria-expanded="moreOpen" aria-haspopup="menu"
@keydown.down.prevent="moreOpen = true; $nextTick(() => focusMenuItem($refs.moreMenu, 'first'))"
@keydown.up.prevent="moreOpen = true; $nextTick(() => focusMenuItem($refs.moreMenu, 'last'))" :aria-label="'More options for ' + row.title" x-tooltip="{ content: 'More options', onShow: () => !moreOpen }"
class="flex size-9 items-center justify-center rounded-full text-zinc-500 hover:bg-zinc-900/5 focus-visible:outline focus-visible:outline-2 focus-visible:outline-hh-focus dark:text-zinc-400 dark:hover:bg-white/10">
Released
focusMenuItem($refs.downloadsMenu, 'first'))" :aria-expanded="menuOpen" aria-haspopup="menu"
@keydown.down.prevent="menuOpen = true; $nextTick(() => focusMenuItem($refs.downloadsMenu, 'first'))"
@keydown.up.prevent="menuOpen = true; $nextTick(() => focusMenuItem($refs.downloadsMenu, 'last'))"
:aria-label="(crateOnly ? 'Add to crate: choose a version of ' : 'Downloads: choose a version of ') + row.title"
x-tooltip="{ content: () => crateOnly ? 'Add to crate' : (rowDownloaded(row) ? 'Downloads · some versions downloaded' : 'Downloads'), onShow: () => !menuOpen, hideOnClick: true }"
class="relative inline-flex h-9 w-14 items-center justify-center gap-1 rounded-lg text-xs font-medium text-zinc-600 transition-colors hover:bg-zinc-900/10 focus-visible:outline focus-visible:outline-2 focus-visible:outline-hh-focus dark:text-zinc-300 dark:hover:bg-white/10"
:class="menuOpen ? 'bg-zinc-900/10 dark:bg-white/10' : (rowDownloaded(row) ? 'border-[0.5px] border-zinc-900/15 opacity-50 dark:border-white/15' : (row._parent ? '' : 'bg-zinc-900/5 dark:bg-white/5'))">
focusMenuItem($refs.moreMenu, 'first'))" :aria-expanded="moreOpen" aria-haspopup="menu"
@keydown.down.prevent="moreOpen = true; $nextTick(() => focusMenuItem($refs.moreMenu, 'first'))"
@keydown.up.prevent="moreOpen = true; $nextTick(() => focusMenuItem($refs.moreMenu, 'last'))" :aria-label="'More options for ' + row.title" x-tooltip="{ content: 'More options', onShow: () => !moreOpen }"
class="flex size-9 items-center justify-center rounded-full text-zinc-500 hover:bg-zinc-900/5 focus-visible:outline focus-visible:outline-2 focus-visible:outline-hh-focus dark:text-zinc-400 dark:hover:bg-white/10">
No similar songs found.
Released
focusMenuItem($refs.downloadsMenu, 'first'))" :aria-expanded="menuOpen" aria-haspopup="menu"
@keydown.down.prevent="menuOpen = true; $nextTick(() => focusMenuItem($refs.downloadsMenu, 'first'))"
@keydown.up.prevent="menuOpen = true; $nextTick(() => focusMenuItem($refs.downloadsMenu, 'last'))"
:aria-label="(crateOnly ? 'Add to crate: choose a version of ' : 'Downloads: choose a version of ') + row.title"
x-tooltip="{ content: () => crateOnly ? 'Add to crate' : (rowDownloaded(row) ? 'Downloads · some versions downloaded' : 'Downloads'), onShow: () => !menuOpen, hideOnClick: true }"
class="relative inline-flex h-9 w-14 items-center justify-center gap-1 rounded-lg text-xs font-medium text-zinc-600 transition-colors hover:bg-zinc-900/10 focus-visible:outline focus-visible:outline-2 focus-visible:outline-hh-focus dark:text-zinc-300 dark:hover:bg-white/10"
:class="menuOpen ? 'bg-zinc-900/10 dark:bg-white/10' : (rowDownloaded(row) ? 'border-[0.5px] border-zinc-900/15 opacity-50 dark:border-white/15' : (row._parent ? '' : 'bg-zinc-900/5 dark:bg-white/5'))">
focusMenuItem($refs.moreMenu, 'first'))" :aria-expanded="moreOpen" aria-haspopup="menu"
@keydown.down.prevent="moreOpen = true; $nextTick(() => focusMenuItem($refs.moreMenu, 'first'))"
@keydown.up.prevent="moreOpen = true; $nextTick(() => focusMenuItem($refs.moreMenu, 'last'))" :aria-label="'More options for ' + row.title" x-tooltip="{ content: 'More options', onShow: () => !moreOpen }"
class="flex size-9 items-center justify-center rounded-full text-zinc-500 hover:bg-zinc-900/5 focus-visible:outline focus-visible:outline-2 focus-visible:outline-hh-focus dark:text-zinc-400 dark:hover:bg-white/10">
Released
focusMenuItem($refs.downloadsMenu, 'first'))" :aria-expanded="menuOpen" aria-haspopup="menu"
@keydown.down.prevent="menuOpen = true; $nextTick(() => focusMenuItem($refs.downloadsMenu, 'first'))"
@keydown.up.prevent="menuOpen = true; $nextTick(() => focusMenuItem($refs.downloadsMenu, 'last'))"
:aria-label="(crateOnly ? 'Add to crate: choose a version of ' : 'Downloads: choose a version of ') + row.title"
x-tooltip="{ content: () => crateOnly ? 'Add to crate' : (rowDownloaded(row) ? 'Downloads · some versions downloaded' : 'Downloads'), onShow: () => !menuOpen, hideOnClick: true }"
class="relative inline-flex h-9 w-14 items-center justify-center gap-1 rounded-lg text-xs font-medium text-zinc-600 transition-colors hover:bg-zinc-900/10 focus-visible:outline focus-visible:outline-2 focus-visible:outline-hh-focus dark:text-zinc-300 dark:hover:bg-white/10"
:class="menuOpen ? 'bg-zinc-900/10 dark:bg-white/10' : (rowDownloaded(row) ? 'border-[0.5px] border-zinc-900/15 opacity-50 dark:border-white/15' : (row._parent ? '' : 'bg-zinc-900/5 dark:bg-white/5'))">
focusMenuItem($refs.moreMenu, 'first'))" :aria-expanded="moreOpen" aria-haspopup="menu"
@keydown.down.prevent="moreOpen = true; $nextTick(() => focusMenuItem($refs.moreMenu, 'first'))"
@keydown.up.prevent="moreOpen = true; $nextTick(() => focusMenuItem($refs.moreMenu, 'last'))" :aria-label="'More options for ' + row.title" x-tooltip="{ content: 'More options', onShow: () => !moreOpen }"
class="flex size-9 items-center justify-center rounded-full text-zinc-500 hover:bg-zinc-900/5 focus-visible:outline focus-visible:outline-2 focus-visible:outline-hh-focus dark:text-zinc-400 dark:hover:bg-white/10">
response.json())
.then(data => {
playlists = data.success && Array.isArray(data.data) ? data.data : [];
isLoading = false;
})
.catch(() => { isLoading = false; });
} else {
isLoading = false;
}"
id="release-playlists-panel"
class="release-playlists-popover w-full max-w-2xl bg-white/95 dark:bg-[#131522]/70 backdrop-blur-md text-zinc-900 dark:text-zinc-100 pb-0 mt-0 mx-auto md:m-auto p-0 md:p-4 shadow shadow-2xl shadow-zinc-900/10 dark:shadow-zinc-900/50">
This track isn't in any playlists yet.
Premium content is available to members only. Please upgrade to access this content.
Top Dembow tunes just in time for summer featuring Musicologo, Chimbala and more as selected by JEKEY.
Released
focusMenuItem($refs.downloadsMenu, 'first'))" :aria-expanded="menuOpen" aria-haspopup="menu"
@keydown.down.prevent="menuOpen = true; $nextTick(() => focusMenuItem($refs.downloadsMenu, 'first'))"
@keydown.up.prevent="menuOpen = true; $nextTick(() => focusMenuItem($refs.downloadsMenu, 'last'))"
:aria-label="(crateOnly ? 'Add to crate: choose a version of ' : 'Downloads: choose a version of ') + row.title"
x-tooltip="{ content: () => crateOnly ? 'Add to crate' : (rowDownloaded(row) ? 'Downloads · some versions downloaded' : 'Downloads'), onShow: () => !menuOpen, hideOnClick: true }"
class="relative inline-flex h-9 w-14 items-center justify-center gap-1 rounded-lg text-xs font-medium text-zinc-600 transition-colors hover:bg-zinc-900/10 focus-visible:outline focus-visible:outline-2 focus-visible:outline-hh-focus dark:text-zinc-300 dark:hover:bg-white/10"
:class="menuOpen ? 'bg-zinc-900/10 dark:bg-white/10' : (rowDownloaded(row) ? 'border-[0.5px] border-zinc-900/15 opacity-50 dark:border-white/15' : (row._parent ? '' : 'bg-zinc-900/5 dark:bg-white/5'))">
focusMenuItem($refs.moreMenu, 'first'))" :aria-expanded="moreOpen" aria-haspopup="menu"
@keydown.down.prevent="moreOpen = true; $nextTick(() => focusMenuItem($refs.moreMenu, 'first'))"
@keydown.up.prevent="moreOpen = true; $nextTick(() => focusMenuItem($refs.moreMenu, 'last'))" :aria-label="'More options for ' + row.title" x-tooltip="{ content: 'More options', onShow: () => !moreOpen }"
class="flex size-9 items-center justify-center rounded-full text-zinc-500 hover:bg-zinc-900/5 focus-visible:outline focus-visible:outline-2 focus-visible:outline-hh-focus dark:text-zinc-400 dark:hover:bg-white/10">
Released
focusMenuItem($refs.downloadsMenu, 'first'))" :aria-expanded="menuOpen" aria-haspopup="menu"
@keydown.down.prevent="menuOpen = true; $nextTick(() => focusMenuItem($refs.downloadsMenu, 'first'))"
@keydown.up.prevent="menuOpen = true; $nextTick(() => focusMenuItem($refs.downloadsMenu, 'last'))"
:aria-label="(crateOnly ? 'Add to crate: choose a version of ' : 'Downloads: choose a version of ') + row.title"
x-tooltip="{ content: () => crateOnly ? 'Add to crate' : (rowDownloaded(row) ? 'Downloads · some versions downloaded' : 'Downloads'), onShow: () => !menuOpen, hideOnClick: true }"
class="relative inline-flex h-9 w-14 items-center justify-center gap-1 rounded-lg text-xs font-medium text-zinc-600 transition-colors hover:bg-zinc-900/10 focus-visible:outline focus-visible:outline-2 focus-visible:outline-hh-focus dark:text-zinc-300 dark:hover:bg-white/10"
:class="menuOpen ? 'bg-zinc-900/10 dark:bg-white/10' : (rowDownloaded(row) ? 'border-[0.5px] border-zinc-900/15 opacity-50 dark:border-white/15' : (row._parent ? '' : 'bg-zinc-900/5 dark:bg-white/5'))">
focusMenuItem($refs.moreMenu, 'first'))" :aria-expanded="moreOpen" aria-haspopup="menu"
@keydown.down.prevent="moreOpen = true; $nextTick(() => focusMenuItem($refs.moreMenu, 'first'))"
@keydown.up.prevent="moreOpen = true; $nextTick(() => focusMenuItem($refs.moreMenu, 'last'))" :aria-label="'More options for ' + row.title" x-tooltip="{ content: 'More options', onShow: () => !moreOpen }"
class="flex size-9 items-center justify-center rounded-full text-zinc-500 hover:bg-zinc-900/5 focus-visible:outline focus-visible:outline-2 focus-visible:outline-hh-focus dark:text-zinc-400 dark:hover:bg-white/10">
Danceability
0.86
Energy
0.86
Popularity
0.86
Valence
0.86
response.json())
.then(data => {
similarSongs = data.success ? data.data : [];
isLoadingSimilarSongs = false;
});
// Load recommendations
if (currentTrack?.artist && currentTrack?.title) {
const formData = new FormData();
formData.append('action', 'get_spotify_recommendations');
formData.append('artist', currentTrack.artist);
formData.append('title', currentTrack.title);
fetch(hhMusicData.ajaxurl, {
method: 'POST',
body: formData
})
.then(response => {
if (!response.ok) {
throw new Error('Network response was not ok');
}
return response.json();
})
.then(data => {
recommendations = data.success ? data.data.results : [];
isLoadingRecommendations = false;
})
.catch(() => {
isLoadingRecommendations = false;
});
} else {
isLoadingRecommendations = false;
}
} else {
isLoadingSimilarSongs = false;
isLoadingRecommendations = false;
}"
x-bind:id="'menu-' + currentTrack?.id"
:style="`position-anchor1: --result-${currentTrack?.id}`"
class="similar-popover w-full max-w-2xl bg-white/95 dark:bg-[#131522]/70 backdrop-blur-md text-zinc-900 dark:text-zinc-100 pb-0 mt-0 mx-auto md:m-auto popover-similar p-0 md:p-4 shadow shadow-2xl shadow-zinc-900/10 dark:shadow-zinc-900/50">
No mixable songs found.
Released
focusMenuItem($refs.downloadsMenu, 'first'))" :aria-expanded="menuOpen" aria-haspopup="menu"
@keydown.down.prevent="menuOpen = true; $nextTick(() => focusMenuItem($refs.downloadsMenu, 'first'))"
@keydown.up.prevent="menuOpen = true; $nextTick(() => focusMenuItem($refs.downloadsMenu, 'last'))"
:aria-label="(crateOnly ? 'Add to crate: choose a version of ' : 'Downloads: choose a version of ') + row.title"
x-tooltip="{ content: () => crateOnly ? 'Add to crate' : (rowDownloaded(row) ? 'Downloads · some versions downloaded' : 'Downloads'), onShow: () => !menuOpen, hideOnClick: true }"
class="relative inline-flex h-9 w-14 items-center justify-center gap-1 rounded-lg text-xs font-medium text-zinc-600 transition-colors hover:bg-zinc-900/10 focus-visible:outline focus-visible:outline-2 focus-visible:outline-hh-focus dark:text-zinc-300 dark:hover:bg-white/10"
:class="menuOpen ? 'bg-zinc-900/10 dark:bg-white/10' : (rowDownloaded(row) ? 'border-[0.5px] border-zinc-900/15 opacity-50 dark:border-white/15' : (row._parent ? '' : 'bg-zinc-900/5 dark:bg-white/5'))">
focusMenuItem($refs.moreMenu, 'first'))" :aria-expanded="moreOpen" aria-haspopup="menu"
@keydown.down.prevent="moreOpen = true; $nextTick(() => focusMenuItem($refs.moreMenu, 'first'))"
@keydown.up.prevent="moreOpen = true; $nextTick(() => focusMenuItem($refs.moreMenu, 'last'))" :aria-label="'More options for ' + row.title" x-tooltip="{ content: 'More options', onShow: () => !moreOpen }"
class="flex size-9 items-center justify-center rounded-full text-zinc-500 hover:bg-zinc-900/5 focus-visible:outline focus-visible:outline-2 focus-visible:outline-hh-focus dark:text-zinc-400 dark:hover:bg-white/10">
Released
focusMenuItem($refs.downloadsMenu, 'first'))" :aria-expanded="menuOpen" aria-haspopup="menu"
@keydown.down.prevent="menuOpen = true; $nextTick(() => focusMenuItem($refs.downloadsMenu, 'first'))"
@keydown.up.prevent="menuOpen = true; $nextTick(() => focusMenuItem($refs.downloadsMenu, 'last'))"
:aria-label="(crateOnly ? 'Add to crate: choose a version of ' : 'Downloads: choose a version of ') + row.title"
x-tooltip="{ content: () => crateOnly ? 'Add to crate' : (rowDownloaded(row) ? 'Downloads · some versions downloaded' : 'Downloads'), onShow: () => !menuOpen, hideOnClick: true }"
class="relative inline-flex h-9 w-14 items-center justify-center gap-1 rounded-lg text-xs font-medium text-zinc-600 transition-colors hover:bg-zinc-900/10 focus-visible:outline focus-visible:outline-2 focus-visible:outline-hh-focus dark:text-zinc-300 dark:hover:bg-white/10"
:class="menuOpen ? 'bg-zinc-900/10 dark:bg-white/10' : (rowDownloaded(row) ? 'border-[0.5px] border-zinc-900/15 opacity-50 dark:border-white/15' : (row._parent ? '' : 'bg-zinc-900/5 dark:bg-white/5'))">
focusMenuItem($refs.moreMenu, 'first'))" :aria-expanded="moreOpen" aria-haspopup="menu"
@keydown.down.prevent="moreOpen = true; $nextTick(() => focusMenuItem($refs.moreMenu, 'first'))"
@keydown.up.prevent="moreOpen = true; $nextTick(() => focusMenuItem($refs.moreMenu, 'last'))" :aria-label="'More options for ' + row.title" x-tooltip="{ content: 'More options', onShow: () => !moreOpen }"
class="flex size-9 items-center justify-center rounded-full text-zinc-500 hover:bg-zinc-900/5 focus-visible:outline focus-visible:outline-2 focus-visible:outline-hh-focus dark:text-zinc-400 dark:hover:bg-white/10">
No similar songs found.
Released
focusMenuItem($refs.downloadsMenu, 'first'))" :aria-expanded="menuOpen" aria-haspopup="menu"
@keydown.down.prevent="menuOpen = true; $nextTick(() => focusMenuItem($refs.downloadsMenu, 'first'))"
@keydown.up.prevent="menuOpen = true; $nextTick(() => focusMenuItem($refs.downloadsMenu, 'last'))"
:aria-label="(crateOnly ? 'Add to crate: choose a version of ' : 'Downloads: choose a version of ') + row.title"
x-tooltip="{ content: () => crateOnly ? 'Add to crate' : (rowDownloaded(row) ? 'Downloads · some versions downloaded' : 'Downloads'), onShow: () => !menuOpen, hideOnClick: true }"
class="relative inline-flex h-9 w-14 items-center justify-center gap-1 rounded-lg text-xs font-medium text-zinc-600 transition-colors hover:bg-zinc-900/10 focus-visible:outline focus-visible:outline-2 focus-visible:outline-hh-focus dark:text-zinc-300 dark:hover:bg-white/10"
:class="menuOpen ? 'bg-zinc-900/10 dark:bg-white/10' : (rowDownloaded(row) ? 'border-[0.5px] border-zinc-900/15 opacity-50 dark:border-white/15' : (row._parent ? '' : 'bg-zinc-900/5 dark:bg-white/5'))">
focusMenuItem($refs.moreMenu, 'first'))" :aria-expanded="moreOpen" aria-haspopup="menu"
@keydown.down.prevent="moreOpen = true; $nextTick(() => focusMenuItem($refs.moreMenu, 'first'))"
@keydown.up.prevent="moreOpen = true; $nextTick(() => focusMenuItem($refs.moreMenu, 'last'))" :aria-label="'More options for ' + row.title" x-tooltip="{ content: 'More options', onShow: () => !moreOpen }"
class="flex size-9 items-center justify-center rounded-full text-zinc-500 hover:bg-zinc-900/5 focus-visible:outline focus-visible:outline-2 focus-visible:outline-hh-focus dark:text-zinc-400 dark:hover:bg-white/10">
Released
focusMenuItem($refs.downloadsMenu, 'first'))" :aria-expanded="menuOpen" aria-haspopup="menu"
@keydown.down.prevent="menuOpen = true; $nextTick(() => focusMenuItem($refs.downloadsMenu, 'first'))"
@keydown.up.prevent="menuOpen = true; $nextTick(() => focusMenuItem($refs.downloadsMenu, 'last'))"
:aria-label="(crateOnly ? 'Add to crate: choose a version of ' : 'Downloads: choose a version of ') + row.title"
x-tooltip="{ content: () => crateOnly ? 'Add to crate' : (rowDownloaded(row) ? 'Downloads · some versions downloaded' : 'Downloads'), onShow: () => !menuOpen, hideOnClick: true }"
class="relative inline-flex h-9 w-14 items-center justify-center gap-1 rounded-lg text-xs font-medium text-zinc-600 transition-colors hover:bg-zinc-900/10 focus-visible:outline focus-visible:outline-2 focus-visible:outline-hh-focus dark:text-zinc-300 dark:hover:bg-white/10"
:class="menuOpen ? 'bg-zinc-900/10 dark:bg-white/10' : (rowDownloaded(row) ? 'border-[0.5px] border-zinc-900/15 opacity-50 dark:border-white/15' : (row._parent ? '' : 'bg-zinc-900/5 dark:bg-white/5'))">
focusMenuItem($refs.moreMenu, 'first'))" :aria-expanded="moreOpen" aria-haspopup="menu"
@keydown.down.prevent="moreOpen = true; $nextTick(() => focusMenuItem($refs.moreMenu, 'first'))"
@keydown.up.prevent="moreOpen = true; $nextTick(() => focusMenuItem($refs.moreMenu, 'last'))" :aria-label="'More options for ' + row.title" x-tooltip="{ content: 'More options', onShow: () => !moreOpen }"
class="flex size-9 items-center justify-center rounded-full text-zinc-500 hover:bg-zinc-900/5 focus-visible:outline focus-visible:outline-2 focus-visible:outline-hh-focus dark:text-zinc-400 dark:hover:bg-white/10">
response.json())
.then(data => {
playlists = data.success && Array.isArray(data.data) ? data.data : [];
isLoading = false;
})
.catch(() => { isLoading = false; });
} else {
isLoading = false;
}"
id="release-playlists-panel"
class="release-playlists-popover w-full max-w-2xl bg-white/95 dark:bg-[#131522]/70 backdrop-blur-md text-zinc-900 dark:text-zinc-100 pb-0 mt-0 mx-auto md:m-auto p-0 md:p-4 shadow shadow-2xl shadow-zinc-900/10 dark:shadow-zinc-900/50">
This track isn't in any playlists yet.
Premium content is available to members only. Please upgrade to access this content.
Take a trip back in time to 2013 when Twerk was the new sound setting the dance floor on fire. JEKEY picks his top booty shakers from 2013 featuring bass heavy tunes from Baauer, Caked Up, Jackal, Tropkillaz and more.
Released
focusMenuItem($refs.downloadsMenu, 'first'))" :aria-expanded="menuOpen" aria-haspopup="menu"
@keydown.down.prevent="menuOpen = true; $nextTick(() => focusMenuItem($refs.downloadsMenu, 'first'))"
@keydown.up.prevent="menuOpen = true; $nextTick(() => focusMenuItem($refs.downloadsMenu, 'last'))"
:aria-label="(crateOnly ? 'Add to crate: choose a version of ' : 'Downloads: choose a version of ') + row.title"
x-tooltip="{ content: () => crateOnly ? 'Add to crate' : (rowDownloaded(row) ? 'Downloads · some versions downloaded' : 'Downloads'), onShow: () => !menuOpen, hideOnClick: true }"
class="relative inline-flex h-9 w-14 items-center justify-center gap-1 rounded-lg text-xs font-medium text-zinc-600 transition-colors hover:bg-zinc-900/10 focus-visible:outline focus-visible:outline-2 focus-visible:outline-hh-focus dark:text-zinc-300 dark:hover:bg-white/10"
:class="menuOpen ? 'bg-zinc-900/10 dark:bg-white/10' : (rowDownloaded(row) ? 'border-[0.5px] border-zinc-900/15 opacity-50 dark:border-white/15' : (row._parent ? '' : 'bg-zinc-900/5 dark:bg-white/5'))">
focusMenuItem($refs.moreMenu, 'first'))" :aria-expanded="moreOpen" aria-haspopup="menu"
@keydown.down.prevent="moreOpen = true; $nextTick(() => focusMenuItem($refs.moreMenu, 'first'))"
@keydown.up.prevent="moreOpen = true; $nextTick(() => focusMenuItem($refs.moreMenu, 'last'))" :aria-label="'More options for ' + row.title" x-tooltip="{ content: 'More options', onShow: () => !moreOpen }"
class="flex size-9 items-center justify-center rounded-full text-zinc-500 hover:bg-zinc-900/5 focus-visible:outline focus-visible:outline-2 focus-visible:outline-hh-focus dark:text-zinc-400 dark:hover:bg-white/10">
Released
focusMenuItem($refs.downloadsMenu, 'first'))" :aria-expanded="menuOpen" aria-haspopup="menu"
@keydown.down.prevent="menuOpen = true; $nextTick(() => focusMenuItem($refs.downloadsMenu, 'first'))"
@keydown.up.prevent="menuOpen = true; $nextTick(() => focusMenuItem($refs.downloadsMenu, 'last'))"
:aria-label="(crateOnly ? 'Add to crate: choose a version of ' : 'Downloads: choose a version of ') + row.title"
x-tooltip="{ content: () => crateOnly ? 'Add to crate' : (rowDownloaded(row) ? 'Downloads · some versions downloaded' : 'Downloads'), onShow: () => !menuOpen, hideOnClick: true }"
class="relative inline-flex h-9 w-14 items-center justify-center gap-1 rounded-lg text-xs font-medium text-zinc-600 transition-colors hover:bg-zinc-900/10 focus-visible:outline focus-visible:outline-2 focus-visible:outline-hh-focus dark:text-zinc-300 dark:hover:bg-white/10"
:class="menuOpen ? 'bg-zinc-900/10 dark:bg-white/10' : (rowDownloaded(row) ? 'border-[0.5px] border-zinc-900/15 opacity-50 dark:border-white/15' : (row._parent ? '' : 'bg-zinc-900/5 dark:bg-white/5'))">
focusMenuItem($refs.moreMenu, 'first'))" :aria-expanded="moreOpen" aria-haspopup="menu"
@keydown.down.prevent="moreOpen = true; $nextTick(() => focusMenuItem($refs.moreMenu, 'first'))"
@keydown.up.prevent="moreOpen = true; $nextTick(() => focusMenuItem($refs.moreMenu, 'last'))" :aria-label="'More options for ' + row.title" x-tooltip="{ content: 'More options', onShow: () => !moreOpen }"
class="flex size-9 items-center justify-center rounded-full text-zinc-500 hover:bg-zinc-900/5 focus-visible:outline focus-visible:outline-2 focus-visible:outline-hh-focus dark:text-zinc-400 dark:hover:bg-white/10">
Danceability
0.86
Energy
0.86
Popularity
0.86
Valence
0.86
response.json())
.then(data => {
similarSongs = data.success ? data.data : [];
isLoadingSimilarSongs = false;
});
// Load recommendations
if (currentTrack?.artist && currentTrack?.title) {
const formData = new FormData();
formData.append('action', 'get_spotify_recommendations');
formData.append('artist', currentTrack.artist);
formData.append('title', currentTrack.title);
fetch(hhMusicData.ajaxurl, {
method: 'POST',
body: formData
})
.then(response => {
if (!response.ok) {
throw new Error('Network response was not ok');
}
return response.json();
})
.then(data => {
recommendations = data.success ? data.data.results : [];
isLoadingRecommendations = false;
})
.catch(() => {
isLoadingRecommendations = false;
});
} else {
isLoadingRecommendations = false;
}
} else {
isLoadingSimilarSongs = false;
isLoadingRecommendations = false;
}"
x-bind:id="'menu-' + currentTrack?.id"
:style="`position-anchor1: --result-${currentTrack?.id}`"
class="similar-popover w-full max-w-2xl bg-white/95 dark:bg-[#131522]/70 backdrop-blur-md text-zinc-900 dark:text-zinc-100 pb-0 mt-0 mx-auto md:m-auto popover-similar p-0 md:p-4 shadow shadow-2xl shadow-zinc-900/10 dark:shadow-zinc-900/50">
No mixable songs found.
Released
focusMenuItem($refs.downloadsMenu, 'first'))" :aria-expanded="menuOpen" aria-haspopup="menu"
@keydown.down.prevent="menuOpen = true; $nextTick(() => focusMenuItem($refs.downloadsMenu, 'first'))"
@keydown.up.prevent="menuOpen = true; $nextTick(() => focusMenuItem($refs.downloadsMenu, 'last'))"
:aria-label="(crateOnly ? 'Add to crate: choose a version of ' : 'Downloads: choose a version of ') + row.title"
x-tooltip="{ content: () => crateOnly ? 'Add to crate' : (rowDownloaded(row) ? 'Downloads · some versions downloaded' : 'Downloads'), onShow: () => !menuOpen, hideOnClick: true }"
class="relative inline-flex h-9 w-14 items-center justify-center gap-1 rounded-lg text-xs font-medium text-zinc-600 transition-colors hover:bg-zinc-900/10 focus-visible:outline focus-visible:outline-2 focus-visible:outline-hh-focus dark:text-zinc-300 dark:hover:bg-white/10"
:class="menuOpen ? 'bg-zinc-900/10 dark:bg-white/10' : (rowDownloaded(row) ? 'border-[0.5px] border-zinc-900/15 opacity-50 dark:border-white/15' : (row._parent ? '' : 'bg-zinc-900/5 dark:bg-white/5'))">
focusMenuItem($refs.moreMenu, 'first'))" :aria-expanded="moreOpen" aria-haspopup="menu"
@keydown.down.prevent="moreOpen = true; $nextTick(() => focusMenuItem($refs.moreMenu, 'first'))"
@keydown.up.prevent="moreOpen = true; $nextTick(() => focusMenuItem($refs.moreMenu, 'last'))" :aria-label="'More options for ' + row.title" x-tooltip="{ content: 'More options', onShow: () => !moreOpen }"
class="flex size-9 items-center justify-center rounded-full text-zinc-500 hover:bg-zinc-900/5 focus-visible:outline focus-visible:outline-2 focus-visible:outline-hh-focus dark:text-zinc-400 dark:hover:bg-white/10">
Released
focusMenuItem($refs.downloadsMenu, 'first'))" :aria-expanded="menuOpen" aria-haspopup="menu"
@keydown.down.prevent="menuOpen = true; $nextTick(() => focusMenuItem($refs.downloadsMenu, 'first'))"
@keydown.up.prevent="menuOpen = true; $nextTick(() => focusMenuItem($refs.downloadsMenu, 'last'))"
:aria-label="(crateOnly ? 'Add to crate: choose a version of ' : 'Downloads: choose a version of ') + row.title"
x-tooltip="{ content: () => crateOnly ? 'Add to crate' : (rowDownloaded(row) ? 'Downloads · some versions downloaded' : 'Downloads'), onShow: () => !menuOpen, hideOnClick: true }"
class="relative inline-flex h-9 w-14 items-center justify-center gap-1 rounded-lg text-xs font-medium text-zinc-600 transition-colors hover:bg-zinc-900/10 focus-visible:outline focus-visible:outline-2 focus-visible:outline-hh-focus dark:text-zinc-300 dark:hover:bg-white/10"
:class="menuOpen ? 'bg-zinc-900/10 dark:bg-white/10' : (rowDownloaded(row) ? 'border-[0.5px] border-zinc-900/15 opacity-50 dark:border-white/15' : (row._parent ? '' : 'bg-zinc-900/5 dark:bg-white/5'))">
focusMenuItem($refs.moreMenu, 'first'))" :aria-expanded="moreOpen" aria-haspopup="menu"
@keydown.down.prevent="moreOpen = true; $nextTick(() => focusMenuItem($refs.moreMenu, 'first'))"
@keydown.up.prevent="moreOpen = true; $nextTick(() => focusMenuItem($refs.moreMenu, 'last'))" :aria-label="'More options for ' + row.title" x-tooltip="{ content: 'More options', onShow: () => !moreOpen }"
class="flex size-9 items-center justify-center rounded-full text-zinc-500 hover:bg-zinc-900/5 focus-visible:outline focus-visible:outline-2 focus-visible:outline-hh-focus dark:text-zinc-400 dark:hover:bg-white/10">
No similar songs found.
Released
focusMenuItem($refs.downloadsMenu, 'first'))" :aria-expanded="menuOpen" aria-haspopup="menu"
@keydown.down.prevent="menuOpen = true; $nextTick(() => focusMenuItem($refs.downloadsMenu, 'first'))"
@keydown.up.prevent="menuOpen = true; $nextTick(() => focusMenuItem($refs.downloadsMenu, 'last'))"
:aria-label="(crateOnly ? 'Add to crate: choose a version of ' : 'Downloads: choose a version of ') + row.title"
x-tooltip="{ content: () => crateOnly ? 'Add to crate' : (rowDownloaded(row) ? 'Downloads · some versions downloaded' : 'Downloads'), onShow: () => !menuOpen, hideOnClick: true }"
class="relative inline-flex h-9 w-14 items-center justify-center gap-1 rounded-lg text-xs font-medium text-zinc-600 transition-colors hover:bg-zinc-900/10 focus-visible:outline focus-visible:outline-2 focus-visible:outline-hh-focus dark:text-zinc-300 dark:hover:bg-white/10"
:class="menuOpen ? 'bg-zinc-900/10 dark:bg-white/10' : (rowDownloaded(row) ? 'border-[0.5px] border-zinc-900/15 opacity-50 dark:border-white/15' : (row._parent ? '' : 'bg-zinc-900/5 dark:bg-white/5'))">
focusMenuItem($refs.moreMenu, 'first'))" :aria-expanded="moreOpen" aria-haspopup="menu"
@keydown.down.prevent="moreOpen = true; $nextTick(() => focusMenuItem($refs.moreMenu, 'first'))"
@keydown.up.prevent="moreOpen = true; $nextTick(() => focusMenuItem($refs.moreMenu, 'last'))" :aria-label="'More options for ' + row.title" x-tooltip="{ content: 'More options', onShow: () => !moreOpen }"
class="flex size-9 items-center justify-center rounded-full text-zinc-500 hover:bg-zinc-900/5 focus-visible:outline focus-visible:outline-2 focus-visible:outline-hh-focus dark:text-zinc-400 dark:hover:bg-white/10">
Released
focusMenuItem($refs.downloadsMenu, 'first'))" :aria-expanded="menuOpen" aria-haspopup="menu"
@keydown.down.prevent="menuOpen = true; $nextTick(() => focusMenuItem($refs.downloadsMenu, 'first'))"
@keydown.up.prevent="menuOpen = true; $nextTick(() => focusMenuItem($refs.downloadsMenu, 'last'))"
:aria-label="(crateOnly ? 'Add to crate: choose a version of ' : 'Downloads: choose a version of ') + row.title"
x-tooltip="{ content: () => crateOnly ? 'Add to crate' : (rowDownloaded(row) ? 'Downloads · some versions downloaded' : 'Downloads'), onShow: () => !menuOpen, hideOnClick: true }"
class="relative inline-flex h-9 w-14 items-center justify-center gap-1 rounded-lg text-xs font-medium text-zinc-600 transition-colors hover:bg-zinc-900/10 focus-visible:outline focus-visible:outline-2 focus-visible:outline-hh-focus dark:text-zinc-300 dark:hover:bg-white/10"
:class="menuOpen ? 'bg-zinc-900/10 dark:bg-white/10' : (rowDownloaded(row) ? 'border-[0.5px] border-zinc-900/15 opacity-50 dark:border-white/15' : (row._parent ? '' : 'bg-zinc-900/5 dark:bg-white/5'))">
focusMenuItem($refs.moreMenu, 'first'))" :aria-expanded="moreOpen" aria-haspopup="menu"
@keydown.down.prevent="moreOpen = true; $nextTick(() => focusMenuItem($refs.moreMenu, 'first'))"
@keydown.up.prevent="moreOpen = true; $nextTick(() => focusMenuItem($refs.moreMenu, 'last'))" :aria-label="'More options for ' + row.title" x-tooltip="{ content: 'More options', onShow: () => !moreOpen }"
class="flex size-9 items-center justify-center rounded-full text-zinc-500 hover:bg-zinc-900/5 focus-visible:outline focus-visible:outline-2 focus-visible:outline-hh-focus dark:text-zinc-400 dark:hover:bg-white/10">
response.json())
.then(data => {
playlists = data.success && Array.isArray(data.data) ? data.data : [];
isLoading = false;
})
.catch(() => { isLoading = false; });
} else {
isLoading = false;
}"
id="release-playlists-panel"
class="release-playlists-popover w-full max-w-2xl bg-white/95 dark:bg-[#131522]/70 backdrop-blur-md text-zinc-900 dark:text-zinc-100 pb-0 mt-0 mx-auto md:m-auto p-0 md:p-4 shadow shadow-2xl shadow-zinc-900/10 dark:shadow-zinc-900/50">
This track isn't in any playlists yet.
Premium content is available to members only. Please upgrade to access this content.
The 21st episode of our Podcast Playlist features France’s Deelan , our in house international music specialist. Deelan can be found guest DJing all over Europe and holds residencies at Tropical Salou (Spain), Carre (France) and La Chapelle (France). In this mix he cuts n blends through a high energy mix of Afrobeats and AfroHouse featuring tracks and remixes by Ayo Jay, Davido, Sidiki Diabate, Afro B. Check the mix and download all your favorites below. Merci Deelan!
Released
focusMenuItem($refs.downloadsMenu, 'first'))" :aria-expanded="menuOpen" aria-haspopup="menu"
@keydown.down.prevent="menuOpen = true; $nextTick(() => focusMenuItem($refs.downloadsMenu, 'first'))"
@keydown.up.prevent="menuOpen = true; $nextTick(() => focusMenuItem($refs.downloadsMenu, 'last'))"
:aria-label="(crateOnly ? 'Add to crate: choose a version of ' : 'Downloads: choose a version of ') + row.title"
x-tooltip="{ content: () => crateOnly ? 'Add to crate' : (rowDownloaded(row) ? 'Downloads · some versions downloaded' : 'Downloads'), onShow: () => !menuOpen, hideOnClick: true }"
class="relative inline-flex h-9 w-14 items-center justify-center gap-1 rounded-lg text-xs font-medium text-zinc-600 transition-colors hover:bg-zinc-900/10 focus-visible:outline focus-visible:outline-2 focus-visible:outline-hh-focus dark:text-zinc-300 dark:hover:bg-white/10"
:class="menuOpen ? 'bg-zinc-900/10 dark:bg-white/10' : (rowDownloaded(row) ? 'border-[0.5px] border-zinc-900/15 opacity-50 dark:border-white/15' : (row._parent ? '' : 'bg-zinc-900/5 dark:bg-white/5'))">
focusMenuItem($refs.moreMenu, 'first'))" :aria-expanded="moreOpen" aria-haspopup="menu"
@keydown.down.prevent="moreOpen = true; $nextTick(() => focusMenuItem($refs.moreMenu, 'first'))"
@keydown.up.prevent="moreOpen = true; $nextTick(() => focusMenuItem($refs.moreMenu, 'last'))" :aria-label="'More options for ' + row.title" x-tooltip="{ content: 'More options', onShow: () => !moreOpen }"
class="flex size-9 items-center justify-center rounded-full text-zinc-500 hover:bg-zinc-900/5 focus-visible:outline focus-visible:outline-2 focus-visible:outline-hh-focus dark:text-zinc-400 dark:hover:bg-white/10">
Released
focusMenuItem($refs.downloadsMenu, 'first'))" :aria-expanded="menuOpen" aria-haspopup="menu"
@keydown.down.prevent="menuOpen = true; $nextTick(() => focusMenuItem($refs.downloadsMenu, 'first'))"
@keydown.up.prevent="menuOpen = true; $nextTick(() => focusMenuItem($refs.downloadsMenu, 'last'))"
:aria-label="(crateOnly ? 'Add to crate: choose a version of ' : 'Downloads: choose a version of ') + row.title"
x-tooltip="{ content: () => crateOnly ? 'Add to crate' : (rowDownloaded(row) ? 'Downloads · some versions downloaded' : 'Downloads'), onShow: () => !menuOpen, hideOnClick: true }"
class="relative inline-flex h-9 w-14 items-center justify-center gap-1 rounded-lg text-xs font-medium text-zinc-600 transition-colors hover:bg-zinc-900/10 focus-visible:outline focus-visible:outline-2 focus-visible:outline-hh-focus dark:text-zinc-300 dark:hover:bg-white/10"
:class="menuOpen ? 'bg-zinc-900/10 dark:bg-white/10' : (rowDownloaded(row) ? 'border-[0.5px] border-zinc-900/15 opacity-50 dark:border-white/15' : (row._parent ? '' : 'bg-zinc-900/5 dark:bg-white/5'))">
focusMenuItem($refs.moreMenu, 'first'))" :aria-expanded="moreOpen" aria-haspopup="menu"
@keydown.down.prevent="moreOpen = true; $nextTick(() => focusMenuItem($refs.moreMenu, 'first'))"
@keydown.up.prevent="moreOpen = true; $nextTick(() => focusMenuItem($refs.moreMenu, 'last'))" :aria-label="'More options for ' + row.title" x-tooltip="{ content: 'More options', onShow: () => !moreOpen }"
class="flex size-9 items-center justify-center rounded-full text-zinc-500 hover:bg-zinc-900/5 focus-visible:outline focus-visible:outline-2 focus-visible:outline-hh-focus dark:text-zinc-400 dark:hover:bg-white/10">
Danceability
0.86
Energy
0.86
Popularity
0.86
Valence
0.86
response.json())
.then(data => {
similarSongs = data.success ? data.data : [];
isLoadingSimilarSongs = false;
});
// Load recommendations
if (currentTrack?.artist && currentTrack?.title) {
const formData = new FormData();
formData.append('action', 'get_spotify_recommendations');
formData.append('artist', currentTrack.artist);
formData.append('title', currentTrack.title);
fetch(hhMusicData.ajaxurl, {
method: 'POST',
body: formData
})
.then(response => {
if (!response.ok) {
throw new Error('Network response was not ok');
}
return response.json();
})
.then(data => {
recommendations = data.success ? data.data.results : [];
isLoadingRecommendations = false;
})
.catch(() => {
isLoadingRecommendations = false;
});
} else {
isLoadingRecommendations = false;
}
} else {
isLoadingSimilarSongs = false;
isLoadingRecommendations = false;
}"
x-bind:id="'menu-' + currentTrack?.id"
:style="`position-anchor1: --result-${currentTrack?.id}`"
class="similar-popover w-full max-w-2xl bg-white/95 dark:bg-[#131522]/70 backdrop-blur-md text-zinc-900 dark:text-zinc-100 pb-0 mt-0 mx-auto md:m-auto popover-similar p-0 md:p-4 shadow shadow-2xl shadow-zinc-900/10 dark:shadow-zinc-900/50">
No mixable songs found.
Released
focusMenuItem($refs.downloadsMenu, 'first'))" :aria-expanded="menuOpen" aria-haspopup="menu"
@keydown.down.prevent="menuOpen = true; $nextTick(() => focusMenuItem($refs.downloadsMenu, 'first'))"
@keydown.up.prevent="menuOpen = true; $nextTick(() => focusMenuItem($refs.downloadsMenu, 'last'))"
:aria-label="(crateOnly ? 'Add to crate: choose a version of ' : 'Downloads: choose a version of ') + row.title"
x-tooltip="{ content: () => crateOnly ? 'Add to crate' : (rowDownloaded(row) ? 'Downloads · some versions downloaded' : 'Downloads'), onShow: () => !menuOpen, hideOnClick: true }"
class="relative inline-flex h-9 w-14 items-center justify-center gap-1 rounded-lg text-xs font-medium text-zinc-600 transition-colors hover:bg-zinc-900/10 focus-visible:outline focus-visible:outline-2 focus-visible:outline-hh-focus dark:text-zinc-300 dark:hover:bg-white/10"
:class="menuOpen ? 'bg-zinc-900/10 dark:bg-white/10' : (rowDownloaded(row) ? 'border-[0.5px] border-zinc-900/15 opacity-50 dark:border-white/15' : (row._parent ? '' : 'bg-zinc-900/5 dark:bg-white/5'))">
focusMenuItem($refs.moreMenu, 'first'))" :aria-expanded="moreOpen" aria-haspopup="menu"
@keydown.down.prevent="moreOpen = true; $nextTick(() => focusMenuItem($refs.moreMenu, 'first'))"
@keydown.up.prevent="moreOpen = true; $nextTick(() => focusMenuItem($refs.moreMenu, 'last'))" :aria-label="'More options for ' + row.title" x-tooltip="{ content: 'More options', onShow: () => !moreOpen }"
class="flex size-9 items-center justify-center rounded-full text-zinc-500 hover:bg-zinc-900/5 focus-visible:outline focus-visible:outline-2 focus-visible:outline-hh-focus dark:text-zinc-400 dark:hover:bg-white/10">
Released
focusMenuItem($refs.downloadsMenu, 'first'))" :aria-expanded="menuOpen" aria-haspopup="menu"
@keydown.down.prevent="menuOpen = true; $nextTick(() => focusMenuItem($refs.downloadsMenu, 'first'))"
@keydown.up.prevent="menuOpen = true; $nextTick(() => focusMenuItem($refs.downloadsMenu, 'last'))"
:aria-label="(crateOnly ? 'Add to crate: choose a version of ' : 'Downloads: choose a version of ') + row.title"
x-tooltip="{ content: () => crateOnly ? 'Add to crate' : (rowDownloaded(row) ? 'Downloads · some versions downloaded' : 'Downloads'), onShow: () => !menuOpen, hideOnClick: true }"
class="relative inline-flex h-9 w-14 items-center justify-center gap-1 rounded-lg text-xs font-medium text-zinc-600 transition-colors hover:bg-zinc-900/10 focus-visible:outline focus-visible:outline-2 focus-visible:outline-hh-focus dark:text-zinc-300 dark:hover:bg-white/10"
:class="menuOpen ? 'bg-zinc-900/10 dark:bg-white/10' : (rowDownloaded(row) ? 'border-[0.5px] border-zinc-900/15 opacity-50 dark:border-white/15' : (row._parent ? '' : 'bg-zinc-900/5 dark:bg-white/5'))">
focusMenuItem($refs.moreMenu, 'first'))" :aria-expanded="moreOpen" aria-haspopup="menu"
@keydown.down.prevent="moreOpen = true; $nextTick(() => focusMenuItem($refs.moreMenu, 'first'))"
@keydown.up.prevent="moreOpen = true; $nextTick(() => focusMenuItem($refs.moreMenu, 'last'))" :aria-label="'More options for ' + row.title" x-tooltip="{ content: 'More options', onShow: () => !moreOpen }"
class="flex size-9 items-center justify-center rounded-full text-zinc-500 hover:bg-zinc-900/5 focus-visible:outline focus-visible:outline-2 focus-visible:outline-hh-focus dark:text-zinc-400 dark:hover:bg-white/10">
No similar songs found.
Released
focusMenuItem($refs.downloadsMenu, 'first'))" :aria-expanded="menuOpen" aria-haspopup="menu"
@keydown.down.prevent="menuOpen = true; $nextTick(() => focusMenuItem($refs.downloadsMenu, 'first'))"
@keydown.up.prevent="menuOpen = true; $nextTick(() => focusMenuItem($refs.downloadsMenu, 'last'))"
:aria-label="(crateOnly ? 'Add to crate: choose a version of ' : 'Downloads: choose a version of ') + row.title"
x-tooltip="{ content: () => crateOnly ? 'Add to crate' : (rowDownloaded(row) ? 'Downloads · some versions downloaded' : 'Downloads'), onShow: () => !menuOpen, hideOnClick: true }"
class="relative inline-flex h-9 w-14 items-center justify-center gap-1 rounded-lg text-xs font-medium text-zinc-600 transition-colors hover:bg-zinc-900/10 focus-visible:outline focus-visible:outline-2 focus-visible:outline-hh-focus dark:text-zinc-300 dark:hover:bg-white/10"
:class="menuOpen ? 'bg-zinc-900/10 dark:bg-white/10' : (rowDownloaded(row) ? 'border-[0.5px] border-zinc-900/15 opacity-50 dark:border-white/15' : (row._parent ? '' : 'bg-zinc-900/5 dark:bg-white/5'))">
focusMenuItem($refs.moreMenu, 'first'))" :aria-expanded="moreOpen" aria-haspopup="menu"
@keydown.down.prevent="moreOpen = true; $nextTick(() => focusMenuItem($refs.moreMenu, 'first'))"
@keydown.up.prevent="moreOpen = true; $nextTick(() => focusMenuItem($refs.moreMenu, 'last'))" :aria-label="'More options for ' + row.title" x-tooltip="{ content: 'More options', onShow: () => !moreOpen }"
class="flex size-9 items-center justify-center rounded-full text-zinc-500 hover:bg-zinc-900/5 focus-visible:outline focus-visible:outline-2 focus-visible:outline-hh-focus dark:text-zinc-400 dark:hover:bg-white/10">
Released
focusMenuItem($refs.downloadsMenu, 'first'))" :aria-expanded="menuOpen" aria-haspopup="menu"
@keydown.down.prevent="menuOpen = true; $nextTick(() => focusMenuItem($refs.downloadsMenu, 'first'))"
@keydown.up.prevent="menuOpen = true; $nextTick(() => focusMenuItem($refs.downloadsMenu, 'last'))"
:aria-label="(crateOnly ? 'Add to crate: choose a version of ' : 'Downloads: choose a version of ') + row.title"
x-tooltip="{ content: () => crateOnly ? 'Add to crate' : (rowDownloaded(row) ? 'Downloads · some versions downloaded' : 'Downloads'), onShow: () => !menuOpen, hideOnClick: true }"
class="relative inline-flex h-9 w-14 items-center justify-center gap-1 rounded-lg text-xs font-medium text-zinc-600 transition-colors hover:bg-zinc-900/10 focus-visible:outline focus-visible:outline-2 focus-visible:outline-hh-focus dark:text-zinc-300 dark:hover:bg-white/10"
:class="menuOpen ? 'bg-zinc-900/10 dark:bg-white/10' : (rowDownloaded(row) ? 'border-[0.5px] border-zinc-900/15 opacity-50 dark:border-white/15' : (row._parent ? '' : 'bg-zinc-900/5 dark:bg-white/5'))">
focusMenuItem($refs.moreMenu, 'first'))" :aria-expanded="moreOpen" aria-haspopup="menu"
@keydown.down.prevent="moreOpen = true; $nextTick(() => focusMenuItem($refs.moreMenu, 'first'))"
@keydown.up.prevent="moreOpen = true; $nextTick(() => focusMenuItem($refs.moreMenu, 'last'))" :aria-label="'More options for ' + row.title" x-tooltip="{ content: 'More options', onShow: () => !moreOpen }"
class="flex size-9 items-center justify-center rounded-full text-zinc-500 hover:bg-zinc-900/5 focus-visible:outline focus-visible:outline-2 focus-visible:outline-hh-focus dark:text-zinc-400 dark:hover:bg-white/10">
response.json())
.then(data => {
playlists = data.success && Array.isArray(data.data) ? data.data : [];
isLoading = false;
})
.catch(() => { isLoading = false; });
} else {
isLoading = false;
}"
id="release-playlists-panel"
class="release-playlists-popover w-full max-w-2xl bg-white/95 dark:bg-[#131522]/70 backdrop-blur-md text-zinc-900 dark:text-zinc-100 pb-0 mt-0 mx-auto md:m-auto p-0 md:p-4 shadow shadow-2xl shadow-zinc-900/10 dark:shadow-zinc-900/50">
This track isn't in any playlists yet.
Premium content is available to members only. Please upgrade to access this content.
Essential open format tunes to get the bottles popping and the bootys dropping selected by AND ONE.
Released
focusMenuItem($refs.downloadsMenu, 'first'))" :aria-expanded="menuOpen" aria-haspopup="menu"
@keydown.down.prevent="menuOpen = true; $nextTick(() => focusMenuItem($refs.downloadsMenu, 'first'))"
@keydown.up.prevent="menuOpen = true; $nextTick(() => focusMenuItem($refs.downloadsMenu, 'last'))"
:aria-label="(crateOnly ? 'Add to crate: choose a version of ' : 'Downloads: choose a version of ') + row.title"
x-tooltip="{ content: () => crateOnly ? 'Add to crate' : (rowDownloaded(row) ? 'Downloads · some versions downloaded' : 'Downloads'), onShow: () => !menuOpen, hideOnClick: true }"
class="relative inline-flex h-9 w-14 items-center justify-center gap-1 rounded-lg text-xs font-medium text-zinc-600 transition-colors hover:bg-zinc-900/10 focus-visible:outline focus-visible:outline-2 focus-visible:outline-hh-focus dark:text-zinc-300 dark:hover:bg-white/10"
:class="menuOpen ? 'bg-zinc-900/10 dark:bg-white/10' : (rowDownloaded(row) ? 'border-[0.5px] border-zinc-900/15 opacity-50 dark:border-white/15' : (row._parent ? '' : 'bg-zinc-900/5 dark:bg-white/5'))">
focusMenuItem($refs.moreMenu, 'first'))" :aria-expanded="moreOpen" aria-haspopup="menu"
@keydown.down.prevent="moreOpen = true; $nextTick(() => focusMenuItem($refs.moreMenu, 'first'))"
@keydown.up.prevent="moreOpen = true; $nextTick(() => focusMenuItem($refs.moreMenu, 'last'))" :aria-label="'More options for ' + row.title" x-tooltip="{ content: 'More options', onShow: () => !moreOpen }"
class="flex size-9 items-center justify-center rounded-full text-zinc-500 hover:bg-zinc-900/5 focus-visible:outline focus-visible:outline-2 focus-visible:outline-hh-focus dark:text-zinc-400 dark:hover:bg-white/10">
Released
focusMenuItem($refs.downloadsMenu, 'first'))" :aria-expanded="menuOpen" aria-haspopup="menu"
@keydown.down.prevent="menuOpen = true; $nextTick(() => focusMenuItem($refs.downloadsMenu, 'first'))"
@keydown.up.prevent="menuOpen = true; $nextTick(() => focusMenuItem($refs.downloadsMenu, 'last'))"
:aria-label="(crateOnly ? 'Add to crate: choose a version of ' : 'Downloads: choose a version of ') + row.title"
x-tooltip="{ content: () => crateOnly ? 'Add to crate' : (rowDownloaded(row) ? 'Downloads · some versions downloaded' : 'Downloads'), onShow: () => !menuOpen, hideOnClick: true }"
class="relative inline-flex h-9 w-14 items-center justify-center gap-1 rounded-lg text-xs font-medium text-zinc-600 transition-colors hover:bg-zinc-900/10 focus-visible:outline focus-visible:outline-2 focus-visible:outline-hh-focus dark:text-zinc-300 dark:hover:bg-white/10"
:class="menuOpen ? 'bg-zinc-900/10 dark:bg-white/10' : (rowDownloaded(row) ? 'border-[0.5px] border-zinc-900/15 opacity-50 dark:border-white/15' : (row._parent ? '' : 'bg-zinc-900/5 dark:bg-white/5'))">
focusMenuItem($refs.moreMenu, 'first'))" :aria-expanded="moreOpen" aria-haspopup="menu"
@keydown.down.prevent="moreOpen = true; $nextTick(() => focusMenuItem($refs.moreMenu, 'first'))"
@keydown.up.prevent="moreOpen = true; $nextTick(() => focusMenuItem($refs.moreMenu, 'last'))" :aria-label="'More options for ' + row.title" x-tooltip="{ content: 'More options', onShow: () => !moreOpen }"
class="flex size-9 items-center justify-center rounded-full text-zinc-500 hover:bg-zinc-900/5 focus-visible:outline focus-visible:outline-2 focus-visible:outline-hh-focus dark:text-zinc-400 dark:hover:bg-white/10">
Danceability
0.86
Energy
0.86
Popularity
0.86
Valence
0.86
response.json())
.then(data => {
similarSongs = data.success ? data.data : [];
isLoadingSimilarSongs = false;
});
// Load recommendations
if (currentTrack?.artist && currentTrack?.title) {
const formData = new FormData();
formData.append('action', 'get_spotify_recommendations');
formData.append('artist', currentTrack.artist);
formData.append('title', currentTrack.title);
fetch(hhMusicData.ajaxurl, {
method: 'POST',
body: formData
})
.then(response => {
if (!response.ok) {
throw new Error('Network response was not ok');
}
return response.json();
})
.then(data => {
recommendations = data.success ? data.data.results : [];
isLoadingRecommendations = false;
})
.catch(() => {
isLoadingRecommendations = false;
});
} else {
isLoadingRecommendations = false;
}
} else {
isLoadingSimilarSongs = false;
isLoadingRecommendations = false;
}"
x-bind:id="'menu-' + currentTrack?.id"
:style="`position-anchor1: --result-${currentTrack?.id}`"
class="similar-popover w-full max-w-2xl bg-white/95 dark:bg-[#131522]/70 backdrop-blur-md text-zinc-900 dark:text-zinc-100 pb-0 mt-0 mx-auto md:m-auto popover-similar p-0 md:p-4 shadow shadow-2xl shadow-zinc-900/10 dark:shadow-zinc-900/50">
No mixable songs found.
Released
focusMenuItem($refs.downloadsMenu, 'first'))" :aria-expanded="menuOpen" aria-haspopup="menu"
@keydown.down.prevent="menuOpen = true; $nextTick(() => focusMenuItem($refs.downloadsMenu, 'first'))"
@keydown.up.prevent="menuOpen = true; $nextTick(() => focusMenuItem($refs.downloadsMenu, 'last'))"
:aria-label="(crateOnly ? 'Add to crate: choose a version of ' : 'Downloads: choose a version of ') + row.title"
x-tooltip="{ content: () => crateOnly ? 'Add to crate' : (rowDownloaded(row) ? 'Downloads · some versions downloaded' : 'Downloads'), onShow: () => !menuOpen, hideOnClick: true }"
class="relative inline-flex h-9 w-14 items-center justify-center gap-1 rounded-lg text-xs font-medium text-zinc-600 transition-colors hover:bg-zinc-900/10 focus-visible:outline focus-visible:outline-2 focus-visible:outline-hh-focus dark:text-zinc-300 dark:hover:bg-white/10"
:class="menuOpen ? 'bg-zinc-900/10 dark:bg-white/10' : (rowDownloaded(row) ? 'border-[0.5px] border-zinc-900/15 opacity-50 dark:border-white/15' : (row._parent ? '' : 'bg-zinc-900/5 dark:bg-white/5'))">
focusMenuItem($refs.moreMenu, 'first'))" :aria-expanded="moreOpen" aria-haspopup="menu"
@keydown.down.prevent="moreOpen = true; $nextTick(() => focusMenuItem($refs.moreMenu, 'first'))"
@keydown.up.prevent="moreOpen = true; $nextTick(() => focusMenuItem($refs.moreMenu, 'last'))" :aria-label="'More options for ' + row.title" x-tooltip="{ content: 'More options', onShow: () => !moreOpen }"
class="flex size-9 items-center justify-center rounded-full text-zinc-500 hover:bg-zinc-900/5 focus-visible:outline focus-visible:outline-2 focus-visible:outline-hh-focus dark:text-zinc-400 dark:hover:bg-white/10">
Released
focusMenuItem($refs.downloadsMenu, 'first'))" :aria-expanded="menuOpen" aria-haspopup="menu"
@keydown.down.prevent="menuOpen = true; $nextTick(() => focusMenuItem($refs.downloadsMenu, 'first'))"
@keydown.up.prevent="menuOpen = true; $nextTick(() => focusMenuItem($refs.downloadsMenu, 'last'))"
:aria-label="(crateOnly ? 'Add to crate: choose a version of ' : 'Downloads: choose a version of ') + row.title"
x-tooltip="{ content: () => crateOnly ? 'Add to crate' : (rowDownloaded(row) ? 'Downloads · some versions downloaded' : 'Downloads'), onShow: () => !menuOpen, hideOnClick: true }"
class="relative inline-flex h-9 w-14 items-center justify-center gap-1 rounded-lg text-xs font-medium text-zinc-600 transition-colors hover:bg-zinc-900/10 focus-visible:outline focus-visible:outline-2 focus-visible:outline-hh-focus dark:text-zinc-300 dark:hover:bg-white/10"
:class="menuOpen ? 'bg-zinc-900/10 dark:bg-white/10' : (rowDownloaded(row) ? 'border-[0.5px] border-zinc-900/15 opacity-50 dark:border-white/15' : (row._parent ? '' : 'bg-zinc-900/5 dark:bg-white/5'))">
focusMenuItem($refs.moreMenu, 'first'))" :aria-expanded="moreOpen" aria-haspopup="menu"
@keydown.down.prevent="moreOpen = true; $nextTick(() => focusMenuItem($refs.moreMenu, 'first'))"
@keydown.up.prevent="moreOpen = true; $nextTick(() => focusMenuItem($refs.moreMenu, 'last'))" :aria-label="'More options for ' + row.title" x-tooltip="{ content: 'More options', onShow: () => !moreOpen }"
class="flex size-9 items-center justify-center rounded-full text-zinc-500 hover:bg-zinc-900/5 focus-visible:outline focus-visible:outline-2 focus-visible:outline-hh-focus dark:text-zinc-400 dark:hover:bg-white/10">
No similar songs found.
Released
focusMenuItem($refs.downloadsMenu, 'first'))" :aria-expanded="menuOpen" aria-haspopup="menu"
@keydown.down.prevent="menuOpen = true; $nextTick(() => focusMenuItem($refs.downloadsMenu, 'first'))"
@keydown.up.prevent="menuOpen = true; $nextTick(() => focusMenuItem($refs.downloadsMenu, 'last'))"
:aria-label="(crateOnly ? 'Add to crate: choose a version of ' : 'Downloads: choose a version of ') + row.title"
x-tooltip="{ content: () => crateOnly ? 'Add to crate' : (rowDownloaded(row) ? 'Downloads · some versions downloaded' : 'Downloads'), onShow: () => !menuOpen, hideOnClick: true }"
class="relative inline-flex h-9 w-14 items-center justify-center gap-1 rounded-lg text-xs font-medium text-zinc-600 transition-colors hover:bg-zinc-900/10 focus-visible:outline focus-visible:outline-2 focus-visible:outline-hh-focus dark:text-zinc-300 dark:hover:bg-white/10"
:class="menuOpen ? 'bg-zinc-900/10 dark:bg-white/10' : (rowDownloaded(row) ? 'border-[0.5px] border-zinc-900/15 opacity-50 dark:border-white/15' : (row._parent ? '' : 'bg-zinc-900/5 dark:bg-white/5'))">
focusMenuItem($refs.moreMenu, 'first'))" :aria-expanded="moreOpen" aria-haspopup="menu"
@keydown.down.prevent="moreOpen = true; $nextTick(() => focusMenuItem($refs.moreMenu, 'first'))"
@keydown.up.prevent="moreOpen = true; $nextTick(() => focusMenuItem($refs.moreMenu, 'last'))" :aria-label="'More options for ' + row.title" x-tooltip="{ content: 'More options', onShow: () => !moreOpen }"
class="flex size-9 items-center justify-center rounded-full text-zinc-500 hover:bg-zinc-900/5 focus-visible:outline focus-visible:outline-2 focus-visible:outline-hh-focus dark:text-zinc-400 dark:hover:bg-white/10">
Released
focusMenuItem($refs.downloadsMenu, 'first'))" :aria-expanded="menuOpen" aria-haspopup="menu"
@keydown.down.prevent="menuOpen = true; $nextTick(() => focusMenuItem($refs.downloadsMenu, 'first'))"
@keydown.up.prevent="menuOpen = true; $nextTick(() => focusMenuItem($refs.downloadsMenu, 'last'))"
:aria-label="(crateOnly ? 'Add to crate: choose a version of ' : 'Downloads: choose a version of ') + row.title"
x-tooltip="{ content: () => crateOnly ? 'Add to crate' : (rowDownloaded(row) ? 'Downloads · some versions downloaded' : 'Downloads'), onShow: () => !menuOpen, hideOnClick: true }"
class="relative inline-flex h-9 w-14 items-center justify-center gap-1 rounded-lg text-xs font-medium text-zinc-600 transition-colors hover:bg-zinc-900/10 focus-visible:outline focus-visible:outline-2 focus-visible:outline-hh-focus dark:text-zinc-300 dark:hover:bg-white/10"
:class="menuOpen ? 'bg-zinc-900/10 dark:bg-white/10' : (rowDownloaded(row) ? 'border-[0.5px] border-zinc-900/15 opacity-50 dark:border-white/15' : (row._parent ? '' : 'bg-zinc-900/5 dark:bg-white/5'))">
focusMenuItem($refs.moreMenu, 'first'))" :aria-expanded="moreOpen" aria-haspopup="menu"
@keydown.down.prevent="moreOpen = true; $nextTick(() => focusMenuItem($refs.moreMenu, 'first'))"
@keydown.up.prevent="moreOpen = true; $nextTick(() => focusMenuItem($refs.moreMenu, 'last'))" :aria-label="'More options for ' + row.title" x-tooltip="{ content: 'More options', onShow: () => !moreOpen }"
class="flex size-9 items-center justify-center rounded-full text-zinc-500 hover:bg-zinc-900/5 focus-visible:outline focus-visible:outline-2 focus-visible:outline-hh-focus dark:text-zinc-400 dark:hover:bg-white/10">
response.json())
.then(data => {
playlists = data.success && Array.isArray(data.data) ? data.data : [];
isLoading = false;
})
.catch(() => { isLoading = false; });
} else {
isLoading = false;
}"
id="release-playlists-panel"
class="release-playlists-popover w-full max-w-2xl bg-white/95 dark:bg-[#131522]/70 backdrop-blur-md text-zinc-900 dark:text-zinc-100 pb-0 mt-0 mx-auto md:m-auto p-0 md:p-4 shadow shadow-2xl shadow-zinc-900/10 dark:shadow-zinc-900/50">
This track isn't in any playlists yet.
Premium content is available to members only. Please upgrade to access this content.
New exclusives from the team handcrafted to make the room shake featuring Isaac Jordan, JEKEY, DJ Sadee, And One, Jay-L, EwONE!, Panchinio Perez, DJ Noise, Deelan and Schuller. Get your fix of DJ Tools including Blends, Transitions, Bootlegs, Toneplay, Acapella Ins & Outs and ReDrums.
Released
focusMenuItem($refs.downloadsMenu, 'first'))" :aria-expanded="menuOpen" aria-haspopup="menu"
@keydown.down.prevent="menuOpen = true; $nextTick(() => focusMenuItem($refs.downloadsMenu, 'first'))"
@keydown.up.prevent="menuOpen = true; $nextTick(() => focusMenuItem($refs.downloadsMenu, 'last'))"
:aria-label="(crateOnly ? 'Add to crate: choose a version of ' : 'Downloads: choose a version of ') + row.title"
x-tooltip="{ content: () => crateOnly ? 'Add to crate' : (rowDownloaded(row) ? 'Downloads · some versions downloaded' : 'Downloads'), onShow: () => !menuOpen, hideOnClick: true }"
class="relative inline-flex h-9 w-14 items-center justify-center gap-1 rounded-lg text-xs font-medium text-zinc-600 transition-colors hover:bg-zinc-900/10 focus-visible:outline focus-visible:outline-2 focus-visible:outline-hh-focus dark:text-zinc-300 dark:hover:bg-white/10"
:class="menuOpen ? 'bg-zinc-900/10 dark:bg-white/10' : (rowDownloaded(row) ? 'border-[0.5px] border-zinc-900/15 opacity-50 dark:border-white/15' : (row._parent ? '' : 'bg-zinc-900/5 dark:bg-white/5'))">
focusMenuItem($refs.moreMenu, 'first'))" :aria-expanded="moreOpen" aria-haspopup="menu"
@keydown.down.prevent="moreOpen = true; $nextTick(() => focusMenuItem($refs.moreMenu, 'first'))"
@keydown.up.prevent="moreOpen = true; $nextTick(() => focusMenuItem($refs.moreMenu, 'last'))" :aria-label="'More options for ' + row.title" x-tooltip="{ content: 'More options', onShow: () => !moreOpen }"
class="flex size-9 items-center justify-center rounded-full text-zinc-500 hover:bg-zinc-900/5 focus-visible:outline focus-visible:outline-2 focus-visible:outline-hh-focus dark:text-zinc-400 dark:hover:bg-white/10">
Released
focusMenuItem($refs.downloadsMenu, 'first'))" :aria-expanded="menuOpen" aria-haspopup="menu"
@keydown.down.prevent="menuOpen = true; $nextTick(() => focusMenuItem($refs.downloadsMenu, 'first'))"
@keydown.up.prevent="menuOpen = true; $nextTick(() => focusMenuItem($refs.downloadsMenu, 'last'))"
:aria-label="(crateOnly ? 'Add to crate: choose a version of ' : 'Downloads: choose a version of ') + row.title"
x-tooltip="{ content: () => crateOnly ? 'Add to crate' : (rowDownloaded(row) ? 'Downloads · some versions downloaded' : 'Downloads'), onShow: () => !menuOpen, hideOnClick: true }"
class="relative inline-flex h-9 w-14 items-center justify-center gap-1 rounded-lg text-xs font-medium text-zinc-600 transition-colors hover:bg-zinc-900/10 focus-visible:outline focus-visible:outline-2 focus-visible:outline-hh-focus dark:text-zinc-300 dark:hover:bg-white/10"
:class="menuOpen ? 'bg-zinc-900/10 dark:bg-white/10' : (rowDownloaded(row) ? 'border-[0.5px] border-zinc-900/15 opacity-50 dark:border-white/15' : (row._parent ? '' : 'bg-zinc-900/5 dark:bg-white/5'))">
focusMenuItem($refs.moreMenu, 'first'))" :aria-expanded="moreOpen" aria-haspopup="menu"
@keydown.down.prevent="moreOpen = true; $nextTick(() => focusMenuItem($refs.moreMenu, 'first'))"
@keydown.up.prevent="moreOpen = true; $nextTick(() => focusMenuItem($refs.moreMenu, 'last'))" :aria-label="'More options for ' + row.title" x-tooltip="{ content: 'More options', onShow: () => !moreOpen }"
class="flex size-9 items-center justify-center rounded-full text-zinc-500 hover:bg-zinc-900/5 focus-visible:outline focus-visible:outline-2 focus-visible:outline-hh-focus dark:text-zinc-400 dark:hover:bg-white/10">
Danceability
0.86
Energy
0.86
Popularity
0.86
Valence
0.86
response.json())
.then(data => {
similarSongs = data.success ? data.data : [];
isLoadingSimilarSongs = false;
});
// Load recommendations
if (currentTrack?.artist && currentTrack?.title) {
const formData = new FormData();
formData.append('action', 'get_spotify_recommendations');
formData.append('artist', currentTrack.artist);
formData.append('title', currentTrack.title);
fetch(hhMusicData.ajaxurl, {
method: 'POST',
body: formData
})
.then(response => {
if (!response.ok) {
throw new Error('Network response was not ok');
}
return response.json();
})
.then(data => {
recommendations = data.success ? data.data.results : [];
isLoadingRecommendations = false;
})
.catch(() => {
isLoadingRecommendations = false;
});
} else {
isLoadingRecommendations = false;
}
} else {
isLoadingSimilarSongs = false;
isLoadingRecommendations = false;
}"
x-bind:id="'menu-' + currentTrack?.id"
:style="`position-anchor1: --result-${currentTrack?.id}`"
class="similar-popover w-full max-w-2xl bg-white/95 dark:bg-[#131522]/70 backdrop-blur-md text-zinc-900 dark:text-zinc-100 pb-0 mt-0 mx-auto md:m-auto popover-similar p-0 md:p-4 shadow shadow-2xl shadow-zinc-900/10 dark:shadow-zinc-900/50">
No mixable songs found.
Released
focusMenuItem($refs.downloadsMenu, 'first'))" :aria-expanded="menuOpen" aria-haspopup="menu"
@keydown.down.prevent="menuOpen = true; $nextTick(() => focusMenuItem($refs.downloadsMenu, 'first'))"
@keydown.up.prevent="menuOpen = true; $nextTick(() => focusMenuItem($refs.downloadsMenu, 'last'))"
:aria-label="(crateOnly ? 'Add to crate: choose a version of ' : 'Downloads: choose a version of ') + row.title"
x-tooltip="{ content: () => crateOnly ? 'Add to crate' : (rowDownloaded(row) ? 'Downloads · some versions downloaded' : 'Downloads'), onShow: () => !menuOpen, hideOnClick: true }"
class="relative inline-flex h-9 w-14 items-center justify-center gap-1 rounded-lg text-xs font-medium text-zinc-600 transition-colors hover:bg-zinc-900/10 focus-visible:outline focus-visible:outline-2 focus-visible:outline-hh-focus dark:text-zinc-300 dark:hover:bg-white/10"
:class="menuOpen ? 'bg-zinc-900/10 dark:bg-white/10' : (rowDownloaded(row) ? 'border-[0.5px] border-zinc-900/15 opacity-50 dark:border-white/15' : (row._parent ? '' : 'bg-zinc-900/5 dark:bg-white/5'))">
focusMenuItem($refs.moreMenu, 'first'))" :aria-expanded="moreOpen" aria-haspopup="menu"
@keydown.down.prevent="moreOpen = true; $nextTick(() => focusMenuItem($refs.moreMenu, 'first'))"
@keydown.up.prevent="moreOpen = true; $nextTick(() => focusMenuItem($refs.moreMenu, 'last'))" :aria-label="'More options for ' + row.title" x-tooltip="{ content: 'More options', onShow: () => !moreOpen }"
class="flex size-9 items-center justify-center rounded-full text-zinc-500 hover:bg-zinc-900/5 focus-visible:outline focus-visible:outline-2 focus-visible:outline-hh-focus dark:text-zinc-400 dark:hover:bg-white/10">
Released
focusMenuItem($refs.downloadsMenu, 'first'))" :aria-expanded="menuOpen" aria-haspopup="menu"
@keydown.down.prevent="menuOpen = true; $nextTick(() => focusMenuItem($refs.downloadsMenu, 'first'))"
@keydown.up.prevent="menuOpen = true; $nextTick(() => focusMenuItem($refs.downloadsMenu, 'last'))"
:aria-label="(crateOnly ? 'Add to crate: choose a version of ' : 'Downloads: choose a version of ') + row.title"
x-tooltip="{ content: () => crateOnly ? 'Add to crate' : (rowDownloaded(row) ? 'Downloads · some versions downloaded' : 'Downloads'), onShow: () => !menuOpen, hideOnClick: true }"
class="relative inline-flex h-9 w-14 items-center justify-center gap-1 rounded-lg text-xs font-medium text-zinc-600 transition-colors hover:bg-zinc-900/10 focus-visible:outline focus-visible:outline-2 focus-visible:outline-hh-focus dark:text-zinc-300 dark:hover:bg-white/10"
:class="menuOpen ? 'bg-zinc-900/10 dark:bg-white/10' : (rowDownloaded(row) ? 'border-[0.5px] border-zinc-900/15 opacity-50 dark:border-white/15' : (row._parent ? '' : 'bg-zinc-900/5 dark:bg-white/5'))">
focusMenuItem($refs.moreMenu, 'first'))" :aria-expanded="moreOpen" aria-haspopup="menu"
@keydown.down.prevent="moreOpen = true; $nextTick(() => focusMenuItem($refs.moreMenu, 'first'))"
@keydown.up.prevent="moreOpen = true; $nextTick(() => focusMenuItem($refs.moreMenu, 'last'))" :aria-label="'More options for ' + row.title" x-tooltip="{ content: 'More options', onShow: () => !moreOpen }"
class="flex size-9 items-center justify-center rounded-full text-zinc-500 hover:bg-zinc-900/5 focus-visible:outline focus-visible:outline-2 focus-visible:outline-hh-focus dark:text-zinc-400 dark:hover:bg-white/10">
No similar songs found.
Released
focusMenuItem($refs.downloadsMenu, 'first'))" :aria-expanded="menuOpen" aria-haspopup="menu"
@keydown.down.prevent="menuOpen = true; $nextTick(() => focusMenuItem($refs.downloadsMenu, 'first'))"
@keydown.up.prevent="menuOpen = true; $nextTick(() => focusMenuItem($refs.downloadsMenu, 'last'))"
:aria-label="(crateOnly ? 'Add to crate: choose a version of ' : 'Downloads: choose a version of ') + row.title"
x-tooltip="{ content: () => crateOnly ? 'Add to crate' : (rowDownloaded(row) ? 'Downloads · some versions downloaded' : 'Downloads'), onShow: () => !menuOpen, hideOnClick: true }"
class="relative inline-flex h-9 w-14 items-center justify-center gap-1 rounded-lg text-xs font-medium text-zinc-600 transition-colors hover:bg-zinc-900/10 focus-visible:outline focus-visible:outline-2 focus-visible:outline-hh-focus dark:text-zinc-300 dark:hover:bg-white/10"
:class="menuOpen ? 'bg-zinc-900/10 dark:bg-white/10' : (rowDownloaded(row) ? 'border-[0.5px] border-zinc-900/15 opacity-50 dark:border-white/15' : (row._parent ? '' : 'bg-zinc-900/5 dark:bg-white/5'))">
focusMenuItem($refs.moreMenu, 'first'))" :aria-expanded="moreOpen" aria-haspopup="menu"
@keydown.down.prevent="moreOpen = true; $nextTick(() => focusMenuItem($refs.moreMenu, 'first'))"
@keydown.up.prevent="moreOpen = true; $nextTick(() => focusMenuItem($refs.moreMenu, 'last'))" :aria-label="'More options for ' + row.title" x-tooltip="{ content: 'More options', onShow: () => !moreOpen }"
class="flex size-9 items-center justify-center rounded-full text-zinc-500 hover:bg-zinc-900/5 focus-visible:outline focus-visible:outline-2 focus-visible:outline-hh-focus dark:text-zinc-400 dark:hover:bg-white/10">
Released
focusMenuItem($refs.downloadsMenu, 'first'))" :aria-expanded="menuOpen" aria-haspopup="menu"
@keydown.down.prevent="menuOpen = true; $nextTick(() => focusMenuItem($refs.downloadsMenu, 'first'))"
@keydown.up.prevent="menuOpen = true; $nextTick(() => focusMenuItem($refs.downloadsMenu, 'last'))"
:aria-label="(crateOnly ? 'Add to crate: choose a version of ' : 'Downloads: choose a version of ') + row.title"
x-tooltip="{ content: () => crateOnly ? 'Add to crate' : (rowDownloaded(row) ? 'Downloads · some versions downloaded' : 'Downloads'), onShow: () => !menuOpen, hideOnClick: true }"
class="relative inline-flex h-9 w-14 items-center justify-center gap-1 rounded-lg text-xs font-medium text-zinc-600 transition-colors hover:bg-zinc-900/10 focus-visible:outline focus-visible:outline-2 focus-visible:outline-hh-focus dark:text-zinc-300 dark:hover:bg-white/10"
:class="menuOpen ? 'bg-zinc-900/10 dark:bg-white/10' : (rowDownloaded(row) ? 'border-[0.5px] border-zinc-900/15 opacity-50 dark:border-white/15' : (row._parent ? '' : 'bg-zinc-900/5 dark:bg-white/5'))">
focusMenuItem($refs.moreMenu, 'first'))" :aria-expanded="moreOpen" aria-haspopup="menu"
@keydown.down.prevent="moreOpen = true; $nextTick(() => focusMenuItem($refs.moreMenu, 'first'))"
@keydown.up.prevent="moreOpen = true; $nextTick(() => focusMenuItem($refs.moreMenu, 'last'))" :aria-label="'More options for ' + row.title" x-tooltip="{ content: 'More options', onShow: () => !moreOpen }"
class="flex size-9 items-center justify-center rounded-full text-zinc-500 hover:bg-zinc-900/5 focus-visible:outline focus-visible:outline-2 focus-visible:outline-hh-focus dark:text-zinc-400 dark:hover:bg-white/10">
response.json())
.then(data => {
playlists = data.success && Array.isArray(data.data) ? data.data : [];
isLoading = false;
})
.catch(() => { isLoading = false; });
} else {
isLoading = false;
}"
id="release-playlists-panel"
class="release-playlists-popover w-full max-w-2xl bg-white/95 dark:bg-[#131522]/70 backdrop-blur-md text-zinc-900 dark:text-zinc-100 pb-0 mt-0 mx-auto md:m-auto p-0 md:p-4 shadow shadow-2xl shadow-zinc-900/10 dark:shadow-zinc-900/50">
This track isn't in any playlists yet.
Premium content is available to members only. Please upgrade to access this content.
Update the crates with these new releases featuring Lil Nas X, Ava Max, Khalid and more in our third installment of heavy pop.
Released
focusMenuItem($refs.downloadsMenu, 'first'))" :aria-expanded="menuOpen" aria-haspopup="menu"
@keydown.down.prevent="menuOpen = true; $nextTick(() => focusMenuItem($refs.downloadsMenu, 'first'))"
@keydown.up.prevent="menuOpen = true; $nextTick(() => focusMenuItem($refs.downloadsMenu, 'last'))"
:aria-label="(crateOnly ? 'Add to crate: choose a version of ' : 'Downloads: choose a version of ') + row.title"
x-tooltip="{ content: () => crateOnly ? 'Add to crate' : (rowDownloaded(row) ? 'Downloads · some versions downloaded' : 'Downloads'), onShow: () => !menuOpen, hideOnClick: true }"
class="relative inline-flex h-9 w-14 items-center justify-center gap-1 rounded-lg text-xs font-medium text-zinc-600 transition-colors hover:bg-zinc-900/10 focus-visible:outline focus-visible:outline-2 focus-visible:outline-hh-focus dark:text-zinc-300 dark:hover:bg-white/10"
:class="menuOpen ? 'bg-zinc-900/10 dark:bg-white/10' : (rowDownloaded(row) ? 'border-[0.5px] border-zinc-900/15 opacity-50 dark:border-white/15' : (row._parent ? '' : 'bg-zinc-900/5 dark:bg-white/5'))">
focusMenuItem($refs.moreMenu, 'first'))" :aria-expanded="moreOpen" aria-haspopup="menu"
@keydown.down.prevent="moreOpen = true; $nextTick(() => focusMenuItem($refs.moreMenu, 'first'))"
@keydown.up.prevent="moreOpen = true; $nextTick(() => focusMenuItem($refs.moreMenu, 'last'))" :aria-label="'More options for ' + row.title" x-tooltip="{ content: 'More options', onShow: () => !moreOpen }"
class="flex size-9 items-center justify-center rounded-full text-zinc-500 hover:bg-zinc-900/5 focus-visible:outline focus-visible:outline-2 focus-visible:outline-hh-focus dark:text-zinc-400 dark:hover:bg-white/10">
Released
focusMenuItem($refs.downloadsMenu, 'first'))" :aria-expanded="menuOpen" aria-haspopup="menu"
@keydown.down.prevent="menuOpen = true; $nextTick(() => focusMenuItem($refs.downloadsMenu, 'first'))"
@keydown.up.prevent="menuOpen = true; $nextTick(() => focusMenuItem($refs.downloadsMenu, 'last'))"
:aria-label="(crateOnly ? 'Add to crate: choose a version of ' : 'Downloads: choose a version of ') + row.title"
x-tooltip="{ content: () => crateOnly ? 'Add to crate' : (rowDownloaded(row) ? 'Downloads · some versions downloaded' : 'Downloads'), onShow: () => !menuOpen, hideOnClick: true }"
class="relative inline-flex h-9 w-14 items-center justify-center gap-1 rounded-lg text-xs font-medium text-zinc-600 transition-colors hover:bg-zinc-900/10 focus-visible:outline focus-visible:outline-2 focus-visible:outline-hh-focus dark:text-zinc-300 dark:hover:bg-white/10"
:class="menuOpen ? 'bg-zinc-900/10 dark:bg-white/10' : (rowDownloaded(row) ? 'border-[0.5px] border-zinc-900/15 opacity-50 dark:border-white/15' : (row._parent ? '' : 'bg-zinc-900/5 dark:bg-white/5'))">
focusMenuItem($refs.moreMenu, 'first'))" :aria-expanded="moreOpen" aria-haspopup="menu"
@keydown.down.prevent="moreOpen = true; $nextTick(() => focusMenuItem($refs.moreMenu, 'first'))"
@keydown.up.prevent="moreOpen = true; $nextTick(() => focusMenuItem($refs.moreMenu, 'last'))" :aria-label="'More options for ' + row.title" x-tooltip="{ content: 'More options', onShow: () => !moreOpen }"
class="flex size-9 items-center justify-center rounded-full text-zinc-500 hover:bg-zinc-900/5 focus-visible:outline focus-visible:outline-2 focus-visible:outline-hh-focus dark:text-zinc-400 dark:hover:bg-white/10">
Danceability
0.86
Energy
0.86
Popularity
0.86
Valence
0.86
response.json())
.then(data => {
similarSongs = data.success ? data.data : [];
isLoadingSimilarSongs = false;
});
// Load recommendations
if (currentTrack?.artist && currentTrack?.title) {
const formData = new FormData();
formData.append('action', 'get_spotify_recommendations');
formData.append('artist', currentTrack.artist);
formData.append('title', currentTrack.title);
fetch(hhMusicData.ajaxurl, {
method: 'POST',
body: formData
})
.then(response => {
if (!response.ok) {
throw new Error('Network response was not ok');
}
return response.json();
})
.then(data => {
recommendations = data.success ? data.data.results : [];
isLoadingRecommendations = false;
})
.catch(() => {
isLoadingRecommendations = false;
});
} else {
isLoadingRecommendations = false;
}
} else {
isLoadingSimilarSongs = false;
isLoadingRecommendations = false;
}"
x-bind:id="'menu-' + currentTrack?.id"
:style="`position-anchor1: --result-${currentTrack?.id}`"
class="similar-popover w-full max-w-2xl bg-white/95 dark:bg-[#131522]/70 backdrop-blur-md text-zinc-900 dark:text-zinc-100 pb-0 mt-0 mx-auto md:m-auto popover-similar p-0 md:p-4 shadow shadow-2xl shadow-zinc-900/10 dark:shadow-zinc-900/50">
No mixable songs found.
Released
focusMenuItem($refs.downloadsMenu, 'first'))" :aria-expanded="menuOpen" aria-haspopup="menu"
@keydown.down.prevent="menuOpen = true; $nextTick(() => focusMenuItem($refs.downloadsMenu, 'first'))"
@keydown.up.prevent="menuOpen = true; $nextTick(() => focusMenuItem($refs.downloadsMenu, 'last'))"
:aria-label="(crateOnly ? 'Add to crate: choose a version of ' : 'Downloads: choose a version of ') + row.title"
x-tooltip="{ content: () => crateOnly ? 'Add to crate' : (rowDownloaded(row) ? 'Downloads · some versions downloaded' : 'Downloads'), onShow: () => !menuOpen, hideOnClick: true }"
class="relative inline-flex h-9 w-14 items-center justify-center gap-1 rounded-lg text-xs font-medium text-zinc-600 transition-colors hover:bg-zinc-900/10 focus-visible:outline focus-visible:outline-2 focus-visible:outline-hh-focus dark:text-zinc-300 dark:hover:bg-white/10"
:class="menuOpen ? 'bg-zinc-900/10 dark:bg-white/10' : (rowDownloaded(row) ? 'border-[0.5px] border-zinc-900/15 opacity-50 dark:border-white/15' : (row._parent ? '' : 'bg-zinc-900/5 dark:bg-white/5'))">
focusMenuItem($refs.moreMenu, 'first'))" :aria-expanded="moreOpen" aria-haspopup="menu"
@keydown.down.prevent="moreOpen = true; $nextTick(() => focusMenuItem($refs.moreMenu, 'first'))"
@keydown.up.prevent="moreOpen = true; $nextTick(() => focusMenuItem($refs.moreMenu, 'last'))" :aria-label="'More options for ' + row.title" x-tooltip="{ content: 'More options', onShow: () => !moreOpen }"
class="flex size-9 items-center justify-center rounded-full text-zinc-500 hover:bg-zinc-900/5 focus-visible:outline focus-visible:outline-2 focus-visible:outline-hh-focus dark:text-zinc-400 dark:hover:bg-white/10">
Released
focusMenuItem($refs.downloadsMenu, 'first'))" :aria-expanded="menuOpen" aria-haspopup="menu"
@keydown.down.prevent="menuOpen = true; $nextTick(() => focusMenuItem($refs.downloadsMenu, 'first'))"
@keydown.up.prevent="menuOpen = true; $nextTick(() => focusMenuItem($refs.downloadsMenu, 'last'))"
:aria-label="(crateOnly ? 'Add to crate: choose a version of ' : 'Downloads: choose a version of ') + row.title"
x-tooltip="{ content: () => crateOnly ? 'Add to crate' : (rowDownloaded(row) ? 'Downloads · some versions downloaded' : 'Downloads'), onShow: () => !menuOpen, hideOnClick: true }"
class="relative inline-flex h-9 w-14 items-center justify-center gap-1 rounded-lg text-xs font-medium text-zinc-600 transition-colors hover:bg-zinc-900/10 focus-visible:outline focus-visible:outline-2 focus-visible:outline-hh-focus dark:text-zinc-300 dark:hover:bg-white/10"
:class="menuOpen ? 'bg-zinc-900/10 dark:bg-white/10' : (rowDownloaded(row) ? 'border-[0.5px] border-zinc-900/15 opacity-50 dark:border-white/15' : (row._parent ? '' : 'bg-zinc-900/5 dark:bg-white/5'))">
focusMenuItem($refs.moreMenu, 'first'))" :aria-expanded="moreOpen" aria-haspopup="menu"
@keydown.down.prevent="moreOpen = true; $nextTick(() => focusMenuItem($refs.moreMenu, 'first'))"
@keydown.up.prevent="moreOpen = true; $nextTick(() => focusMenuItem($refs.moreMenu, 'last'))" :aria-label="'More options for ' + row.title" x-tooltip="{ content: 'More options', onShow: () => !moreOpen }"
class="flex size-9 items-center justify-center rounded-full text-zinc-500 hover:bg-zinc-900/5 focus-visible:outline focus-visible:outline-2 focus-visible:outline-hh-focus dark:text-zinc-400 dark:hover:bg-white/10">
No similar songs found.
Released
focusMenuItem($refs.downloadsMenu, 'first'))" :aria-expanded="menuOpen" aria-haspopup="menu"
@keydown.down.prevent="menuOpen = true; $nextTick(() => focusMenuItem($refs.downloadsMenu, 'first'))"
@keydown.up.prevent="menuOpen = true; $nextTick(() => focusMenuItem($refs.downloadsMenu, 'last'))"
:aria-label="(crateOnly ? 'Add to crate: choose a version of ' : 'Downloads: choose a version of ') + row.title"
x-tooltip="{ content: () => crateOnly ? 'Add to crate' : (rowDownloaded(row) ? 'Downloads · some versions downloaded' : 'Downloads'), onShow: () => !menuOpen, hideOnClick: true }"
class="relative inline-flex h-9 w-14 items-center justify-center gap-1 rounded-lg text-xs font-medium text-zinc-600 transition-colors hover:bg-zinc-900/10 focus-visible:outline focus-visible:outline-2 focus-visible:outline-hh-focus dark:text-zinc-300 dark:hover:bg-white/10"
:class="menuOpen ? 'bg-zinc-900/10 dark:bg-white/10' : (rowDownloaded(row) ? 'border-[0.5px] border-zinc-900/15 opacity-50 dark:border-white/15' : (row._parent ? '' : 'bg-zinc-900/5 dark:bg-white/5'))">
focusMenuItem($refs.moreMenu, 'first'))" :aria-expanded="moreOpen" aria-haspopup="menu"
@keydown.down.prevent="moreOpen = true; $nextTick(() => focusMenuItem($refs.moreMenu, 'first'))"
@keydown.up.prevent="moreOpen = true; $nextTick(() => focusMenuItem($refs.moreMenu, 'last'))" :aria-label="'More options for ' + row.title" x-tooltip="{ content: 'More options', onShow: () => !moreOpen }"
class="flex size-9 items-center justify-center rounded-full text-zinc-500 hover:bg-zinc-900/5 focus-visible:outline focus-visible:outline-2 focus-visible:outline-hh-focus dark:text-zinc-400 dark:hover:bg-white/10">
Released
focusMenuItem($refs.downloadsMenu, 'first'))" :aria-expanded="menuOpen" aria-haspopup="menu"
@keydown.down.prevent="menuOpen = true; $nextTick(() => focusMenuItem($refs.downloadsMenu, 'first'))"
@keydown.up.prevent="menuOpen = true; $nextTick(() => focusMenuItem($refs.downloadsMenu, 'last'))"
:aria-label="(crateOnly ? 'Add to crate: choose a version of ' : 'Downloads: choose a version of ') + row.title"
x-tooltip="{ content: () => crateOnly ? 'Add to crate' : (rowDownloaded(row) ? 'Downloads · some versions downloaded' : 'Downloads'), onShow: () => !menuOpen, hideOnClick: true }"
class="relative inline-flex h-9 w-14 items-center justify-center gap-1 rounded-lg text-xs font-medium text-zinc-600 transition-colors hover:bg-zinc-900/10 focus-visible:outline focus-visible:outline-2 focus-visible:outline-hh-focus dark:text-zinc-300 dark:hover:bg-white/10"
:class="menuOpen ? 'bg-zinc-900/10 dark:bg-white/10' : (rowDownloaded(row) ? 'border-[0.5px] border-zinc-900/15 opacity-50 dark:border-white/15' : (row._parent ? '' : 'bg-zinc-900/5 dark:bg-white/5'))">
focusMenuItem($refs.moreMenu, 'first'))" :aria-expanded="moreOpen" aria-haspopup="menu"
@keydown.down.prevent="moreOpen = true; $nextTick(() => focusMenuItem($refs.moreMenu, 'first'))"
@keydown.up.prevent="moreOpen = true; $nextTick(() => focusMenuItem($refs.moreMenu, 'last'))" :aria-label="'More options for ' + row.title" x-tooltip="{ content: 'More options', onShow: () => !moreOpen }"
class="flex size-9 items-center justify-center rounded-full text-zinc-500 hover:bg-zinc-900/5 focus-visible:outline focus-visible:outline-2 focus-visible:outline-hh-focus dark:text-zinc-400 dark:hover:bg-white/10">
response.json())
.then(data => {
playlists = data.success && Array.isArray(data.data) ? data.data : [];
isLoading = false;
})
.catch(() => { isLoading = false; });
} else {
isLoading = false;
}"
id="release-playlists-panel"
class="release-playlists-popover w-full max-w-2xl bg-white/95 dark:bg-[#131522]/70 backdrop-blur-md text-zinc-900 dark:text-zinc-100 pb-0 mt-0 mx-auto md:m-auto p-0 md:p-4 shadow shadow-2xl shadow-zinc-900/10 dark:shadow-zinc-900/50">
This track isn't in any playlists yet.
Premium content is available to members only. Please upgrade to access this content.
Keep the hip hop crates fresh with this selection of heaters featuring Schoolboy Q, DaBaby, Offset, Lil Uzi Vert and more curated by AND ONE.
Released
focusMenuItem($refs.downloadsMenu, 'first'))" :aria-expanded="menuOpen" aria-haspopup="menu"
@keydown.down.prevent="menuOpen = true; $nextTick(() => focusMenuItem($refs.downloadsMenu, 'first'))"
@keydown.up.prevent="menuOpen = true; $nextTick(() => focusMenuItem($refs.downloadsMenu, 'last'))"
:aria-label="(crateOnly ? 'Add to crate: choose a version of ' : 'Downloads: choose a version of ') + row.title"
x-tooltip="{ content: () => crateOnly ? 'Add to crate' : (rowDownloaded(row) ? 'Downloads · some versions downloaded' : 'Downloads'), onShow: () => !menuOpen, hideOnClick: true }"
class="relative inline-flex h-9 w-14 items-center justify-center gap-1 rounded-lg text-xs font-medium text-zinc-600 transition-colors hover:bg-zinc-900/10 focus-visible:outline focus-visible:outline-2 focus-visible:outline-hh-focus dark:text-zinc-300 dark:hover:bg-white/10"
:class="menuOpen ? 'bg-zinc-900/10 dark:bg-white/10' : (rowDownloaded(row) ? 'border-[0.5px] border-zinc-900/15 opacity-50 dark:border-white/15' : (row._parent ? '' : 'bg-zinc-900/5 dark:bg-white/5'))">
focusMenuItem($refs.moreMenu, 'first'))" :aria-expanded="moreOpen" aria-haspopup="menu"
@keydown.down.prevent="moreOpen = true; $nextTick(() => focusMenuItem($refs.moreMenu, 'first'))"
@keydown.up.prevent="moreOpen = true; $nextTick(() => focusMenuItem($refs.moreMenu, 'last'))" :aria-label="'More options for ' + row.title" x-tooltip="{ content: 'More options', onShow: () => !moreOpen }"
class="flex size-9 items-center justify-center rounded-full text-zinc-500 hover:bg-zinc-900/5 focus-visible:outline focus-visible:outline-2 focus-visible:outline-hh-focus dark:text-zinc-400 dark:hover:bg-white/10">
Released
focusMenuItem($refs.downloadsMenu, 'first'))" :aria-expanded="menuOpen" aria-haspopup="menu"
@keydown.down.prevent="menuOpen = true; $nextTick(() => focusMenuItem($refs.downloadsMenu, 'first'))"
@keydown.up.prevent="menuOpen = true; $nextTick(() => focusMenuItem($refs.downloadsMenu, 'last'))"
:aria-label="(crateOnly ? 'Add to crate: choose a version of ' : 'Downloads: choose a version of ') + row.title"
x-tooltip="{ content: () => crateOnly ? 'Add to crate' : (rowDownloaded(row) ? 'Downloads · some versions downloaded' : 'Downloads'), onShow: () => !menuOpen, hideOnClick: true }"
class="relative inline-flex h-9 w-14 items-center justify-center gap-1 rounded-lg text-xs font-medium text-zinc-600 transition-colors hover:bg-zinc-900/10 focus-visible:outline focus-visible:outline-2 focus-visible:outline-hh-focus dark:text-zinc-300 dark:hover:bg-white/10"
:class="menuOpen ? 'bg-zinc-900/10 dark:bg-white/10' : (rowDownloaded(row) ? 'border-[0.5px] border-zinc-900/15 opacity-50 dark:border-white/15' : (row._parent ? '' : 'bg-zinc-900/5 dark:bg-white/5'))">
focusMenuItem($refs.moreMenu, 'first'))" :aria-expanded="moreOpen" aria-haspopup="menu"
@keydown.down.prevent="moreOpen = true; $nextTick(() => focusMenuItem($refs.moreMenu, 'first'))"
@keydown.up.prevent="moreOpen = true; $nextTick(() => focusMenuItem($refs.moreMenu, 'last'))" :aria-label="'More options for ' + row.title" x-tooltip="{ content: 'More options', onShow: () => !moreOpen }"
class="flex size-9 items-center justify-center rounded-full text-zinc-500 hover:bg-zinc-900/5 focus-visible:outline focus-visible:outline-2 focus-visible:outline-hh-focus dark:text-zinc-400 dark:hover:bg-white/10">
Danceability
0.86
Energy
0.86
Popularity
0.86
Valence
0.86
response.json())
.then(data => {
similarSongs = data.success ? data.data : [];
isLoadingSimilarSongs = false;
});
// Load recommendations
if (currentTrack?.artist && currentTrack?.title) {
const formData = new FormData();
formData.append('action', 'get_spotify_recommendations');
formData.append('artist', currentTrack.artist);
formData.append('title', currentTrack.title);
fetch(hhMusicData.ajaxurl, {
method: 'POST',
body: formData
})
.then(response => {
if (!response.ok) {
throw new Error('Network response was not ok');
}
return response.json();
})
.then(data => {
recommendations = data.success ? data.data.results : [];
isLoadingRecommendations = false;
})
.catch(() => {
isLoadingRecommendations = false;
});
} else {
isLoadingRecommendations = false;
}
} else {
isLoadingSimilarSongs = false;
isLoadingRecommendations = false;
}"
x-bind:id="'menu-' + currentTrack?.id"
:style="`position-anchor1: --result-${currentTrack?.id}`"
class="similar-popover w-full max-w-2xl bg-white/95 dark:bg-[#131522]/70 backdrop-blur-md text-zinc-900 dark:text-zinc-100 pb-0 mt-0 mx-auto md:m-auto popover-similar p-0 md:p-4 shadow shadow-2xl shadow-zinc-900/10 dark:shadow-zinc-900/50">
No mixable songs found.
Released
focusMenuItem($refs.downloadsMenu, 'first'))" :aria-expanded="menuOpen" aria-haspopup="menu"
@keydown.down.prevent="menuOpen = true; $nextTick(() => focusMenuItem($refs.downloadsMenu, 'first'))"
@keydown.up.prevent="menuOpen = true; $nextTick(() => focusMenuItem($refs.downloadsMenu, 'last'))"
:aria-label="(crateOnly ? 'Add to crate: choose a version of ' : 'Downloads: choose a version of ') + row.title"
x-tooltip="{ content: () => crateOnly ? 'Add to crate' : (rowDownloaded(row) ? 'Downloads · some versions downloaded' : 'Downloads'), onShow: () => !menuOpen, hideOnClick: true }"
class="relative inline-flex h-9 w-14 items-center justify-center gap-1 rounded-lg text-xs font-medium text-zinc-600 transition-colors hover:bg-zinc-900/10 focus-visible:outline focus-visible:outline-2 focus-visible:outline-hh-focus dark:text-zinc-300 dark:hover:bg-white/10"
:class="menuOpen ? 'bg-zinc-900/10 dark:bg-white/10' : (rowDownloaded(row) ? 'border-[0.5px] border-zinc-900/15 opacity-50 dark:border-white/15' : (row._parent ? '' : 'bg-zinc-900/5 dark:bg-white/5'))">
focusMenuItem($refs.moreMenu, 'first'))" :aria-expanded="moreOpen" aria-haspopup="menu"
@keydown.down.prevent="moreOpen = true; $nextTick(() => focusMenuItem($refs.moreMenu, 'first'))"
@keydown.up.prevent="moreOpen = true; $nextTick(() => focusMenuItem($refs.moreMenu, 'last'))" :aria-label="'More options for ' + row.title" x-tooltip="{ content: 'More options', onShow: () => !moreOpen }"
class="flex size-9 items-center justify-center rounded-full text-zinc-500 hover:bg-zinc-900/5 focus-visible:outline focus-visible:outline-2 focus-visible:outline-hh-focus dark:text-zinc-400 dark:hover:bg-white/10">
Released
focusMenuItem($refs.downloadsMenu, 'first'))" :aria-expanded="menuOpen" aria-haspopup="menu"
@keydown.down.prevent="menuOpen = true; $nextTick(() => focusMenuItem($refs.downloadsMenu, 'first'))"
@keydown.up.prevent="menuOpen = true; $nextTick(() => focusMenuItem($refs.downloadsMenu, 'last'))"
:aria-label="(crateOnly ? 'Add to crate: choose a version of ' : 'Downloads: choose a version of ') + row.title"
x-tooltip="{ content: () => crateOnly ? 'Add to crate' : (rowDownloaded(row) ? 'Downloads · some versions downloaded' : 'Downloads'), onShow: () => !menuOpen, hideOnClick: true }"
class="relative inline-flex h-9 w-14 items-center justify-center gap-1 rounded-lg text-xs font-medium text-zinc-600 transition-colors hover:bg-zinc-900/10 focus-visible:outline focus-visible:outline-2 focus-visible:outline-hh-focus dark:text-zinc-300 dark:hover:bg-white/10"
:class="menuOpen ? 'bg-zinc-900/10 dark:bg-white/10' : (rowDownloaded(row) ? 'border-[0.5px] border-zinc-900/15 opacity-50 dark:border-white/15' : (row._parent ? '' : 'bg-zinc-900/5 dark:bg-white/5'))">
focusMenuItem($refs.moreMenu, 'first'))" :aria-expanded="moreOpen" aria-haspopup="menu"
@keydown.down.prevent="moreOpen = true; $nextTick(() => focusMenuItem($refs.moreMenu, 'first'))"
@keydown.up.prevent="moreOpen = true; $nextTick(() => focusMenuItem($refs.moreMenu, 'last'))" :aria-label="'More options for ' + row.title" x-tooltip="{ content: 'More options', onShow: () => !moreOpen }"
class="flex size-9 items-center justify-center rounded-full text-zinc-500 hover:bg-zinc-900/5 focus-visible:outline focus-visible:outline-2 focus-visible:outline-hh-focus dark:text-zinc-400 dark:hover:bg-white/10">
No similar songs found.
Released
focusMenuItem($refs.downloadsMenu, 'first'))" :aria-expanded="menuOpen" aria-haspopup="menu"
@keydown.down.prevent="menuOpen = true; $nextTick(() => focusMenuItem($refs.downloadsMenu, 'first'))"
@keydown.up.prevent="menuOpen = true; $nextTick(() => focusMenuItem($refs.downloadsMenu, 'last'))"
:aria-label="(crateOnly ? 'Add to crate: choose a version of ' : 'Downloads: choose a version of ') + row.title"
x-tooltip="{ content: () => crateOnly ? 'Add to crate' : (rowDownloaded(row) ? 'Downloads · some versions downloaded' : 'Downloads'), onShow: () => !menuOpen, hideOnClick: true }"
class="relative inline-flex h-9 w-14 items-center justify-center gap-1 rounded-lg text-xs font-medium text-zinc-600 transition-colors hover:bg-zinc-900/10 focus-visible:outline focus-visible:outline-2 focus-visible:outline-hh-focus dark:text-zinc-300 dark:hover:bg-white/10"
:class="menuOpen ? 'bg-zinc-900/10 dark:bg-white/10' : (rowDownloaded(row) ? 'border-[0.5px] border-zinc-900/15 opacity-50 dark:border-white/15' : (row._parent ? '' : 'bg-zinc-900/5 dark:bg-white/5'))">
focusMenuItem($refs.moreMenu, 'first'))" :aria-expanded="moreOpen" aria-haspopup="menu"
@keydown.down.prevent="moreOpen = true; $nextTick(() => focusMenuItem($refs.moreMenu, 'first'))"
@keydown.up.prevent="moreOpen = true; $nextTick(() => focusMenuItem($refs.moreMenu, 'last'))" :aria-label="'More options for ' + row.title" x-tooltip="{ content: 'More options', onShow: () => !moreOpen }"
class="flex size-9 items-center justify-center rounded-full text-zinc-500 hover:bg-zinc-900/5 focus-visible:outline focus-visible:outline-2 focus-visible:outline-hh-focus dark:text-zinc-400 dark:hover:bg-white/10">
Released
focusMenuItem($refs.downloadsMenu, 'first'))" :aria-expanded="menuOpen" aria-haspopup="menu"
@keydown.down.prevent="menuOpen = true; $nextTick(() => focusMenuItem($refs.downloadsMenu, 'first'))"
@keydown.up.prevent="menuOpen = true; $nextTick(() => focusMenuItem($refs.downloadsMenu, 'last'))"
:aria-label="(crateOnly ? 'Add to crate: choose a version of ' : 'Downloads: choose a version of ') + row.title"
x-tooltip="{ content: () => crateOnly ? 'Add to crate' : (rowDownloaded(row) ? 'Downloads · some versions downloaded' : 'Downloads'), onShow: () => !menuOpen, hideOnClick: true }"
class="relative inline-flex h-9 w-14 items-center justify-center gap-1 rounded-lg text-xs font-medium text-zinc-600 transition-colors hover:bg-zinc-900/10 focus-visible:outline focus-visible:outline-2 focus-visible:outline-hh-focus dark:text-zinc-300 dark:hover:bg-white/10"
:class="menuOpen ? 'bg-zinc-900/10 dark:bg-white/10' : (rowDownloaded(row) ? 'border-[0.5px] border-zinc-900/15 opacity-50 dark:border-white/15' : (row._parent ? '' : 'bg-zinc-900/5 dark:bg-white/5'))">
focusMenuItem($refs.moreMenu, 'first'))" :aria-expanded="moreOpen" aria-haspopup="menu"
@keydown.down.prevent="moreOpen = true; $nextTick(() => focusMenuItem($refs.moreMenu, 'first'))"
@keydown.up.prevent="moreOpen = true; $nextTick(() => focusMenuItem($refs.moreMenu, 'last'))" :aria-label="'More options for ' + row.title" x-tooltip="{ content: 'More options', onShow: () => !moreOpen }"
class="flex size-9 items-center justify-center rounded-full text-zinc-500 hover:bg-zinc-900/5 focus-visible:outline focus-visible:outline-2 focus-visible:outline-hh-focus dark:text-zinc-400 dark:hover:bg-white/10">
response.json())
.then(data => {
playlists = data.success && Array.isArray(data.data) ? data.data : [];
isLoading = false;
})
.catch(() => { isLoading = false; });
} else {
isLoading = false;
}"
id="release-playlists-panel"
class="release-playlists-popover w-full max-w-2xl bg-white/95 dark:bg-[#131522]/70 backdrop-blur-md text-zinc-900 dark:text-zinc-100 pb-0 mt-0 mx-auto md:m-auto p-0 md:p-4 shadow shadow-2xl shadow-zinc-900/10 dark:shadow-zinc-900/50">
This track isn't in any playlists yet.
Premium content is available to members only. Please upgrade to access this content.