"use client"; import { useState } from "react"; import { dbService } from "@/services/db"; import { useLibrary } from "@/context/LibraryContext"; import Link from "next/link"; import { Plus } from "lucide-react"; import CreatePlaylistModal from "@/components/CreatePlaylistModal"; import CoverImage from "@/components/CoverImage"; export default function LibraryPage() { const { userPlaylists: playlists, libraryItems, refreshLibrary: refresh, activeFilter: activeTab, setActiveFilter: setActiveTab } = useLibrary(); const [isCreateModalOpen, setIsCreateModalOpen] = useState(false); const handleCreatePlaylist = async (name: string) => { await dbService.createPlaylist(name); refresh(); }; const showPlaylists = activeTab === 'all' || activeTab === 'playlists'; const showAlbums = activeTab === 'all' || activeTab === 'albums'; const showArtists = activeTab === 'all' || activeTab === 'artists'; // Filter items based on type const albums = libraryItems.filter(item => item.type === 'Album'); const artists = libraryItems.filter(item => item.type === 'Artist'); const browsePlaylists = libraryItems.filter(item => item.type === 'Playlist'); return (
Auto-generated
Playlist • You
Playlist • Made for you
Artist
Album • {album.creator || 'Spotify'}