1(globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,983729,267789,937656,740884,e=>{"use strict";var t=e.i(246166),l=e.i(868280);let a=["home","recentlyAdded","songs","artists","albums","playlists","musicPlaylists","spotifyHome"],s=["off","all","one"],r=["local","spotify"];e.s(["ARTIST_SOURCES",0,r,"MUSIC_VIEWS",0,a,"REPEAT_MODES",0,s,"isSongDetail",0,function(e){return e?.kind==="song"||e?.kind==="spotifySong"}],267789);let i="music:state",n=l.z.discriminatedUnion("kind",[l.z.object({album:l.z.string(),kind:l.z.literal("album")}),l.z.object({artist:l.z.string(),kind:l.z.literal("artist"),source:l.z.enum(r)}),l.z.object({kind:l.z.literal("song"),trackId:l.z.string()}),l.z.object({album:l.z.string(),artist:l.z.string(),artworkUrl:l.z.string().optional(),durationMs:l.z.number().optional(),kind:l.z.literal("spotifySong"),spotifyAlbumId:l.z.string().optional(),spotifyTrackId:l.z.string().optional(),spotifyUri:l.z.string().optional(),title:l.z.string()}),l.z.object({kind:l.z.literal("spotifyArtist"),name:l.z.string(),spotifyArtistId:l.z.string()}),l.z.object({kind:l.z.literal("spotifyAlbum"),name:l.z.string(),spotifyAlbumId:l.z.string()})]),o=l.z.object({activeSource:l.z.enum(["local","spotify"]).nullable(),baseQueue:l.z.array(l.z.string()),detail:n.nullable(),positionSeconds:l.z.number().min(0),queue:l.z.array(l.z.string()),queueIndex:l.z.number().int(),repeat:l.z.enum(s),selectedMusicPlaylistId:l.z.string().nullable(),selectedPlaylistId:l.z.string().nullable(),shuffle:l.z.boolean(),version:l.z.literal(6),view:l.z.enum(a),volume:l.z.number().min(0).max(1)});function c(e){return e.queue.length>0&&e.queueIndex>=0&&e.queueIndex<e.queue.length?{activeSource:e.activeSource,baseQueue:e.baseQueue,queue:e.queue,queueIndex:e.queueIndex}:{activeSource:null,baseQueue:[],queue:[],queueIndex:-1}}function u(){try{var e=window.localStorage.getItem(i);if(null===e)return null;try{let t=o.safeParse(JSON.parse(e));return t.success?t.data:null}catch{return null}}catch{return null}}e.s(["buildPersistedMusicState",0,function(e){return{...e,positionSeconds:Math.max(0,Math.floor(e.positionSeconds)),version:6}},"readPersistedMusicState",0,u,"sanitizeRestoredQueue",0,c,"writePersistedMusicState",0,function(e){try{window.localStorage.setItem(i,JSON.stringify(e))}catch{}}],937656);let d="claim",m=null,f=!1;function p(){if(f)return m;if(f=!0,"u"<typeof BroadcastChannel)return null;try{m=new BroadcastChannel("music:playback-ownership")}catch{m=null}return m}function y(){p()?.postMessage(d)}e.s(["broadcastPlaybackClaim",0,y,"subscribeToOwnershipClaims",0,function(e){let t=p();if(!t)return()=>void 0;let l=t=>{t.data===d&&e()};return t.addEventListener("message",l),()=>t.removeEventListener("message",l)}],740884);let x={activeSource:null,baseQueue:[],detail:null,isPlaying:!1,miniPlayerDismissed:!1,playbackEpoch:0,queue:[],queueIndex:-1,repeat:"off",searchQuery:"",selectedMusicPlaylistId:null,selectedPlaylistId:null,shuffle:!1,sidebarOpen:!0,sidebarWidth:232,surfaceMounted:!1,tabOwnsPlayback:!1,view:"home",volume:1},h=(0,t.create)()(function(){let e=u();return e?{...x,...c(e),detail:e.detail,repeat:e.repeat,selectedMusicPlaylistId:e.selectedMusicPlaylistId,selectedPlaylistId:e.selectedPlaylistId,shuffle:e.shuffle,view:e.view,volume:e.volume}:x});function b(){h.getState().tabOwnsPlayback||(h.setState({tabOwnsPlayback:!0}),y())}function g(e,t){let l=e.filter(e=>e!==t);for(let e=l.length-1;e>0;e-=1){let t=Math.floor(Math.random()*(e+1)),a=l[e],s=l[t];void 0!==a&&void 0!==s&&(l[e]=s,l[t]=a)}return[t,...l]}function k(e){h.setState({detail:{album:e,kind:"album"},searchQuery:""})}function j(e,t="local"){h.setState({detail:{artist:e,kind:"artist",source:t},searchQuery:""})}function v(e){h.setState({detail:{kind:"song",trackId:e},searchQuery:""})}function S(e,t){h.setState({detail:{kind:"spotifyArtist",name:t,spotifyArtistId:e},searchQuery:""})}function w(e,t){h.setState({detail:{kind:"spotifyAlbum",name:t,spotifyAlbumId:e},searchQuery:""})}function N(e){return e.queue[e.queueIndex]??null}function P(e){return e.activeSource}function A(e){return e.tabOwnsPlayback}e.s(["activateSpotifyPlayback",0,function(){h.setState({activeSource:"spotify",isPlaying:!1,miniPlayerDismissed:!1}),b()},"advanceAfterEnd",0,function(){let{queue:e,queueIndex:t,repeat:l,playbackEpoch:a}=h.getState();if(-1===t)return;if("one"===l)return void h.setState({playbackEpoch:a+1});let s=t+1;
1s>=e.length?"all"===l&&e.length>0?h.setState({playbackEpoch:a+1,queueIndex:0}):h.setState({isPlaying:!1}):h.setState({playbackEpoch:a+1,queueIndex:s})},"closeDetail",0,function(){h.setState({detail:null})},"cycleRepeat",0,function(){let e=["off","all","one"],{repeat:t}=h.getState(),l=e[(e.indexOf(t)+1)%e.length];h.setState({repeat:l})},"dismissMiniPlayer",0,function(){h.setState({miniPlayerDismissed:!0})},"hasPreviousTrack",0,function(){let{queue:e,queueIndex:t}=h.getState();return e.length>0&&t>0},"jumpToQueueIndex",0,function(e){let{queue:t,playbackEpoch:l}=h.getState();e<0||e>=t.length||(h.setState({isPlaying:!0,playbackEpoch:l+1,queueIndex:e}),b())},"navigateToEntity",0,function(e){switch(e.kind){case"album":k(e.album);break;case"artist":j(e.artist,e.source);break;case"song":v(e.trackId);break;case"spotifySong":h.setState({detail:e,searchQuery:""});break;case"spotifyArtist":S(e.spotifyArtistId,e.name);break;case"spotifyAlbum":w(e.spotifyAlbumId,e.name);break;default:throw Error(`Unknown entity target: ${String(e)}`)}},"openAlbumDetail",0,k,"openArtistDetail",0,j,"openSongDetail",0,v,"openSpotifyAlbumDetail",0,w,"openSpotifyArtistDetail",0,S,"playTracks",0,function(e,t){let{shuffle:l,playbackEpoch:a}=h.getState(),s=l?g(e,t):e,r=s.indexOf(t);-1!==r&&(h.setState({activeSource:"local",baseQueue:e,isPlaying:!0,miniPlayerDismissed:!1,playbackEpoch:a+1,queue:s,queueIndex:r}),b())},"releasePlaybackOwnership",0,function(){h.getState().tabOwnsPlayback&&h.setState({isPlaying:!1,tabOwnsPlayback:!1})},"restoreMiniPlayer",0,function(){h.setState({miniPlayerDismissed:!1})},"selectMusicPlaylist",0,function(e){h.setState({detail:null,searchQuery:"",selectedMusicPlaylistId:e,view:"musicPlaylists"})},"selectPlaylist",0,function(e){h.setState({detail:null,searchQuery:"",selectedPlaylistId:e,view:"playlists"})},"setSearchQuery",0,function(e){h.setState({searchQuery:e})},"setSidebarOpen",0,function(e){h.setState({sidebarOpen:e})},"setSidebarWidth",0,function(e){h.setState({sidebarWidth:e})},"setSurfaceMounted",0,function(e){h.setState(e?{miniPlayerDismissed:!1,surfaceMounted:e}:{surfaceMounted:e})},"setView",0,function(e){h.setState({detail:null,searchQuery:"",view:e})},"setVolume",0,function(e){h.setState({volume:Math.min(1,Math.max(0,e))})},"skipTrack",0,function(e){let{queue:t,queueIndex:l,playbackEpoch:a}=h.getState();if(0===t.length||-1===l)return;let s=(l+e+t.length)%t.length;h.setState({isPlaying:!0,playbackEpoch:a+1,queueIndex:s}),b()},"stopPlayback",0,function(){h.setState({activeSource:null,baseQueue:[],isPlaying:!1,queue:[],queueIndex:-1,tabOwnsPlayback:!1})},"togglePlay",0,function(){let{queueIndex:e,isPlaying:t}=h.getState();if(-1===e)return;let l=!t;h.setState({isPlaying:l}),l&&b()},"toggleShuffle",0,function(){let e=h.getState(),t=e.queue[e.queueIndex],l=!e.shuffle;if(!t)return void h.setState({shuffle:l});let a=l?g(e.baseQueue,t):e.baseQueue;h.setState({queue:a,queueIndex:a.indexOf(t),shuffle:l})},"useActiveSource",0,()=>h(P),"useCurrentTrackId",0,()=>h(N),"useMusicStore",0,h,"useTabOwnsPlayback",0,()=>h(A)],983729)},810014,890061,e=>{"use strict";var t=e.i(931718),l=e.i(729386),a=e.i(632137),s=e.i(129454),r=e.i(485954);let i={bounce:"playful-icon--bounce",giggle:"",wobble:"playful-icon--wobble"};function n(e){let s,r,n=(0,l.c)(6),{icon:o,className:c,motion:u}=e,d=i[void 0===u?"giggle":u];return n[0]!==c||n[1]!==d?(s=(0,a.cn)("playful-icon",d,c),n[0]=c,n[1]=d,n[2]=s):s=n[2],n[3]!==o||n[4]!==s?(r=(0,t.jsx)(o,{className:s}),n[3]=o,n[4]=s,n[5]=r):r=n[5],r}function o(e){let a,r,i=(0,l.c)(3),{className:o}=e;return i[0]===Symbol.for("react.memo_cache_sentinel")?(a=(0,t.jsx)(n,{className:"size-1/3 text-muted-foreground",icon:s.Music}),i[0]=a):a=i[0],i[1]!==o?(r=(0,t.jsx)("div",{"aria-hidden":!0,className:o,children:a}),i[1]=o,i[2]=r):r=i[2],r}function c(e){let s,i,n,c=(0,l.c)(8),{base:u,imageUrl:d}=e,[m,f]=(0,r.useState)(!1);if(m){let e;return c[0]!==u?(e=(0,t.jsx)(o,{className:u}),c[0]=u,c[1]=e):e=c[1],e}return c[2]!==u?(s=(0,a.cn)(u,"object-cover"),c[2]=u,c[3]=s):s=c[3],c[4]===Symbol.for("react.memo_cache_sentinel")?(i=()=>f(!0),c[4]=i):i=c[4],c[5]!==d||c[6]!==s?(n=(0,t.jsx)("img",{alt:"","aria-hidden":"true",className:s,height:300,onError:i,src:d,width:300}
1),c[5]=d,c[6]=s,c[7]=n):n=c[7],n}e.s(["PlayfulIcon",0,n,"withPlayfulMotion",0,function(e,l="giggle"){return function({className:a}){return(0,t.jsx)(n,{className:a,icon:e,motion:l})}}],890061),e.s(["AlbumArt",0,function(e){let s,r,i=(0,l.c)(7),{className:n,imageUrl:u}=e;i[0]!==n?(s=(0,a.cn)("flex aspect-square shrink-0 items-center justify-center overflow-hidden rounded-md bg-muted",n),i[0]=n,i[1]=s):s=i[1];let d=s;if(u){let e;return i[2]!==d||i[3]!==u?(e=(0,t.jsx)(c,{base:d,imageUrl:u},u),i[2]=d,i[3]=u,i[4]=e):e=i[4],e}return i[5]!==d?(r=(0,t.jsx)(o,{className:d}),i[5]=d,i[6]=r):r=i[6],r}],810014)},212566,e=>{"use strict";var t=e.i(931718),l=e.i(729386),a=e.i(632137);function s(e){let s,r,i,n,o,c=(0,l.c)(8),{className:u,paused:d}=e,m=d&&"now-playing-bars--paused";return c[0]!==u||c[1]!==m?(s=(0,a.cn)("now-playing-bars",m,u),c[0]=u,c[1]=m,c[2]=s):s=c[2],c[3]===Symbol.for("react.memo_cache_sentinel")?(r=(0,t.jsx)("span",{className:"now-playing-bar bg-primary"}),i=(0,t.jsx)("span",{className:"now-playing-bar bg-primary"}),n=(0,t.jsx)("span",{className:"now-playing-bar bg-primary"}),c[3]=r,c[4]=i,c[5]=n):(r=c[3],i=c[4],n=c[5]),c[6]!==s?(o=(0,t.jsxs)("span",{"aria-hidden":"true",className:s,children:[r,i,n]}),c[6]=s,c[7]=o):o=c[7],o}e.s(["NowPlayingBadge",0,function(e){let r,i,n,o=(0,l.c)(7),{className:c,paused:u}=e;return o[0]!==c?(r=(0,a.cn)("pointer-events-none absolute right-0.5 bottom-0.5 flex items-center rounded-sm bg-card-solid px-0.5 py-px shadow-sm",c),o[0]=c,o[1]=r):r=o[1],o[2]!==u?(i=(0,t.jsx)(s,{paused:u}),o[2]=u,o[3]=i):i=o[3],o[4]!==r||o[5]!==i?(n=(0,t.jsx)("span",{className:r,children:i}),o[4]=r,o[5]=i,o[6]=n):n=o[6],n}],212566)},533180,578237,e=>{"use strict";e.s(["spotifyIdFromUri",0,function(e,t){if(!e)return;let l=`spotify:${t}:`;if(!e.startsWith(l))return;let a=e.slice(l.length);return a.length>0?a:void 0}],533180),e.s(["msToSeconds",0,function(e){return e/1e3},"resolvePreviousAction",0,function(e){let t=e.restartThresholdSeconds??3;return e.positionSeconds>t?"restart":e.hasPreviousTrack?"previous":"restart"},"selectNowPlayingSource",0,function(e){return"spotify"===e.activeSource&&e.spotifyHasTrack?"spotify":"local"===e.activeSource&&e.localHasTrack?"local":e.spotifyHasTrack?"spotify":e.localHasTrack?"local":"idle"},"songTargetFromPlayback",0,function(e){return e.entity?{kind:"song",trackId:e.entity.trackId}:"spotify"===e.source&&e.title&&e.artist?{album:e.album??e.title,artist:e.artist,artworkUrl:e.artworkUrl??void 0,durationMs:Math.round(1e3*e.durationSeconds),kind:"spotifySong",spotifyAlbumId:e.spotifyAlbumId??void 0,spotifyTrackId:e.spotifyTrackId??void 0,spotifyUri:e.spotifyUri??void 0,title:e.title}:null}],578237)},221662,e=>{"use strict";var t=e.i(485954);let l=(0,t.createContext)(null);e.s(["IDLE_ENGINE",0,{audioRef:{current:null},currentTime:0,duration:0,loadError:!1,seek:()=>{}},"PlaybackContext",0,l,"usePlayback",0,function(){return(0,t.useContext)(l)}])},741525,e=>{"use strict";e.s(["IDLE_SPOTIFY_ENGINE",0,{albumArtUrl:null,albumName:null,albumUri:null,artistName:null,cycleRepeat:()=>void 0,durationMs:0,errorMessage:null,hasTrack:!1,isPaused:!0,isReady:!1,needsPremium:!1,needsReconnect:!1,needsRetry:!1,next:()=>void 0,pause:()=>void 0,playContext:()=>Promise.resolve(),playTrack:()=>Promise.resolve(),playTracks:()=>Promise.resolve(),positionMs:0,previous:()=>void 0,repeat:"off",retryLastPlayback:()=>void 0,seek:()=>void 0,setShuffle:()=>void 0,shuffle:!1,togglePlay:()=>void 0,toggleShuffle:()=>void 0,trackId:null,trackName:null,trackUri:null}])},462409,e=>{"use strict";var t=e.i(729386),l=e.i(983729),a=e.i(533180),s=e.i(578237),r=e.i(221662),i=e.i(741525),n=e.i(485954);let o={artist:null,artworkUrl:null,canSeek:!1,cycleRepeat:()=>void 0,durationSeconds:0,entity:null,errorMessage:null,hasTrack:!1,isPlaying:!1,next:()=>void 0,positionSeconds:0,previous:()=>void 0,repeat:"off",seek:()=>void 0,shuffle:!1,songTarget:null,source:"idle",stop:()=>void 0,subtitle:null,title:null,togglePlay:()=>void 0,toggleShuffle:()=>void 0};function c(e){return e.repeat}function u(e){return e.shuffle}function d(e){return e.isPlaying}e.s(["useNowPlaying",0,function(){var e;let m,f,p,y,x=(0,t.c)(13),h=(0,r.usePlayback)(),b=h?.engine??r.IDLE_ENGINE,g=h?.spotify??i.IDLE_SPOTIFY_ENGINE;x[0]!==h?.tracks?(m=h?.tracks??[],x[0]=h?.tracks,x[1]=m):m=x[1];let k=m,j=(0,l.useCurrentTrackId)(),v=(0,l.useActiveSource)(),S=(0,l.useMusicStore)(d),w=(0,l.useMusicStore)(u),N=(0,l.useMusicStore)(c);x[2]!==j||x[3]!==k?(f=k.find(e=>e.id===j)??null,x[2]=j,x[3]=k,x[4]=f):f=x[4];let P=(e=f,p=(0,n.useRef)(null),(0,n.useLayoutEffect)(function(){e&&(p.current=e)},[e]),y=p.current,e??(y?.id===j?y:null)),A=(0,s.selectNowPlayingSource)({activeSource:v,localHasTrack:null!==P,spotifyHasTrack:g.hasTrack});if("spotify"===A){let e;if(x[5]!==g){let t,r;t=(0,s.msToSeconds)(g.durationMs),e={artist:r=g.artistName,artworkUrl:g.albumArtUrl,canSeek:g.durationMs>0,cycleRepeat:g.cycleRepeat,durationSeconds:t,entity:null,errorMessage:g.errorMessage,hasTrack:g.hasTrack,isPlaying:!g.isPau
1sed,next:g.next,positionSeconds:(0,s.msToSeconds)(g.positionMs),previous:g.previous,repeat:g.repeat,seek:e=>g.seek(1e3*e),shuffle:g.shuffle,songTarget:(0,s.songTargetFromPlayback)({album:g.albumName,artist:r,artworkUrl:g.albumArtUrl,durationSeconds:t,entity:null,source:"spotify",spotifyAlbumId:(0,a.spotifyIdFromUri)(g.albumUri,"album")??null,spotifyTrackId:g.trackId,spotifyUri:g.trackUri,title:g.trackName}),source:"spotify",stop:()=>{g.pause(),(0,l.stopPlayback)()},subtitle:g.playbackDeviceName?[g.artistName,g.playbackDeviceName].filter(Boolean).join(" · "):g.artistName,title:g.trackName,togglePlay:g.togglePlay,toggleShuffle:g.toggleShuffle},x[5]=g,x[6]=e}else e=x[6];return e}if("local"===A){let e;return x[7]!==b||x[8]!==S||x[9]!==N||x[10]!==w||x[11]!==P?(e=function(e){let{engine:t,track:a}=e,r=a?{album:a.album,artist:a.artist,trackId:a.id}:null,i=a?.artist??null,n=a?.title??null;return{artist:i,artworkUrl:null,canSeek:t.duration>0,cycleRepeat:l.cycleRepeat,durationSeconds:t.duration,entity:r,errorMessage:null,hasTrack:null!==a,isPlaying:e.isPlaying,next:()=>(0,l.skipTrack)(1),positionSeconds:t.currentTime,previous:()=>{"restart"===(0,s.resolvePreviousAction)({hasPreviousTrack:(0,l.hasPreviousTrack)(),positionSeconds:t.currentTime})?t.seek(0):(0,l.skipTrack)(-1)},repeat:e.repeat,seek:e=>t.seek(e),shuffle:e.shuffle,songTarget:(0,s.songTargetFromPlayback)({album:a?.album??null,artist:i,artworkUrl:null,durationSeconds:t.duration,entity:r,source:"local",spotifyAlbumId:null,spotifyTrackId:null,
1spotifyUri:null,title:n}),source:"local",stop:l.stopPlayback,subtitle:t.loadError?"Couldn't load audio":i,title:n,togglePlay:l.togglePlay,toggleShuffle:l.toggleShuffle}}({engine:b,isPlaying:S,repeat:N,shuffle:w,track:P}),x[7]=b,x[8]=S,x[9]=N,x[10]=w,x[11]=P,x[12]=e):e=x[12],e}return o}],462409)},812507,92635,e=>{"use strict";function t(e){let t=Number.isFinite(e)?Math.max(0,e):0,l=Math.floor(t/60),a=Math.floor(t%60);return`${l}:${String(a).padStart(2,"0")}`}e.s(["formatPlayerTime",0,t,"formatTrackDuration",0,function(e){return null===e||e<=0?"â":t(e/1e3)},"groupByAlbum",0,function(e){let t=new Map;for(let l of e){let e=t.get(l.album);e?e.push(l):t.set(l.album,[l])}return[...t.entries()].map(([e,t])=>{let l=new Set(t.map(e=>e.artist)),a=t[0];return{name:e,artist:1===l.size&&a?a.artist:"Various Artists",tracks:t}}).sort((e,t)=>e.name.localeCompare(t.name))},"groupByArtist",0,function(e){let t=new Map;for(let l of e){let e=t.get(l.artist);e?e.push(l):t.set(l.artist,[l])}return[...t.entries()].map(([e,t])=>({name:e,tracks:t})).sort((e,t)=>e.name.localeCompare(t.name))}],812507);var l=e.i(868280),a=e.i(246166);let s="music:recentlyPlayed",r=l.z.discriminatedUnion("kind",[l.z.object({kind:l.z.literal("local"),trackId:l.z.string()}),l.z.object({kind:l.z.literal("spotifyTrack"),trackUri:l.z.string(),deepLinkUrl:l.z.string()}),l.z.object({kind:l.z.literal("spotifyContext"),contextUri:l.z.string(),deepLinkUrl:l.z.string()})]),i=l.z.object({artworkUrl:l.z.string().nullable(),key:l.z.string(),replay:r,shape:l.z.enum(["square","circle"]),subtitle:l.z.string(),title:l.z.string()}),n=l.z.object({entries:l.z.array(i),version:l.z.literal(1)}),o=(0,a.create)()(()=>({entries:function(){try{var e=window.localStorage.getItem(s);if(null===e)return[];try{let t=n.safeParse(JSON.parse(e));return t.success?t.data.entries:[]}catch{return[]}}catch{return[]}}()}));function c(e){return e.entries}e.s(["recordPlayed",0,function(e){var t;let l,a=(t=o.getState().entries,l=t.filter(t=>t.key!==e.key),[e,...l].slice(0,18));o.setState({entries:a});try{window.localStorage.setItem(s,JSON.stringify({entries:a,version:1}))}catch{}},"useRecentlyPlayed",0,()=>o(c)],92635)},615403,e=>{"use strict";var t=e.i(92635),l=e.i(983729);function a(e,a){(0,l.playTracks)(e.map(e=>e.id),a.id),(0,t.recordPlayed)({artworkUrl:null,key:`local:${a.id}`,replay:{kind:"local",trackId:a.id},shape:"square",subtitle:a.artist,title:a.title})}function s(e){let t=e[0];t&&a(e,t)}e.s(["playCollectionUnlessPlaying",0,function(e){!function(e){let{isPlaying:t,queue:a,queueIndex:s}=l.useMusicStore.getState(),r=a[s];return!!(t&&r)&&e.some(e=>e.id===r)}(e)&&s(e)},"playLibraryCollection",0,s,"playLibrarySong",0,a,"replayLibraryTrack",0,function(e,t){let s=e.find(e=>e.id===t);s?a(e,s):(0,l.playTracks)([t],t)}])},755949,697346,565216,377234,e=>{"use strict";var t=e.i(931718),l=e.i(729386);e.i(116233);var a=e.i(699597),s=e.i(812507),r=e.i(632137),i=e.i(45526),n=e.i(615403),o=e.i(983729),c=e.i(810014);function u(e){let a,s=(0,l.c)(2),{children:r}=e;return s[0]!==r?(a=(0,t.jsx)("div",{className:"grid grid-cols-2 gap-4 pt-1 sm:grid-cols-3 md:grid-cols-4 lg:grid-cols-5 xl:grid-cols-6",children:r}),s[0]=r,s[1]=a):a=s[1],a}function d(e){let a,s,r=(0,l.c)(4),{label:n,onPlay:o}=e;return r[0]===Symbol.for("react.memo_cache_sentinel")?(a=(0,t.jsx)(i.Play,{className:"size-4 fill-current"}),r[0]=a):a=r[0],r[1]!==n||r[2]!==o?(s=(0,t.jsx)("button",{"aria-label":n,className:"absolute right-2 bottom-2 flex size-9 cursor-pointer items-center justify-center rounded-full bg-primary text-primary-foreground opacity-0 shadow-md outline-none ring-ring/50 transition-opacity hover:bg-primary/90 focus-visible:opacity-100 focus-visible:ring-2 group-hover:opacity-100",onClick:o,type:"button",children:a}),r[1]=n,r[2]=o,r[3]=s):s=r[3],s}function m(e){let a,s,i,n=(0,l.c)(9),{circle:o,label:u,onOpen:d,imageUrl:m}=e,f=o&&"rounded-full";return n[0]!==f?(a=(0,r.cn)("w-full",f),n[0]=f,n[1]=a):a=n[1],n[2]!==m||n[3]!==a?(s=(0,t.jsx)(c.AlbumArt,{className:a,imageUrl:m}),n[2]=m,n[3]=a,n[4]=s):s=n[4],n[5]!==u||n[6]!==d||n[7]!==s?(i=(0,t.jsx)("button",{"aria-label":u,className:"cursor-pointer outline-none ring-ring/50 focus-visible:ring-2 focus-visible:ring-offset-2",onClick:d,type:"button",children:s}),n[5]=u,n[6]=d,n[7]=s,n[8]=i):i=n[8],i}let f="group relative flex min-w-0 select-none flex-col gap-2 rounded-xl transition-transform hover:-translate-y-0.5";function p(e){let s,i,n,o=(0,l.c)(9),{label:c,onClick:u,variant:d}=e,m="caption"===d&&"text-muted-foreground hover:text-foreground";return o[0]!==m?(s=(0,r.cn)("max-w-full cursor-pointer truncate rounded-sm text-left outline-none ring-ring/50 hover:underline focus-visible:ring-2",m),o[0]=m,o[1]=s):s=o[1],o[2]!==c||o[3]!==d?(i=(0,t.jsx)(a.Text,{as:"span",className:"truncate",variant:d,children:c}),o[2]=c,o[3]=d,o[4]=i):i=o[4],o[5]!==u||o[6]!==s||o[7]!==i?(n=(0,t.jsx)("button",{className:s,onClick:u,type:"button",children:i}),o[5]=u,o[6]=s,o[7]=i,o[8]=n):n=o[8],n}function y(e){let a,s,r,i,c,u,y,x,h,b,g,k=(0,l.c)(29),{album:j}=e,v=j.tracks.length,S=`Open album ${j.name}`;k[0]!==j.name?(a=()=>(0,o.openAlbumDetail)(j.name),k[0]=j.name,k[1]=a):a=k[1],k[2]!==S||k[3]!==a?(s=(0,t.jsx)(m,{label:S,onOpen:a}
1),k[2]=S,k[3]=a,k[4]=s):s=k[4];let w=`Play ${j.name}`;k[5]!==j.tracks?(r=()=>(0,n.playLibraryCollection)(j.tracks),k[5]=j.tracks,k[6]=r):r=k[6],k[7]!==w||k[8]!==r?(i=(0,t.jsx)(d,{label:w,onPlay:r}),k[7]=w,k[8]=r,k[9]=i):i=k[9],k[10]!==s||k[11]!==i?(c=(0,t.jsxs)("div",{className:"relative",children:[s,i]}),k[10]=s,k[11]=i,k[12]=c):c=k[12],k[13]!==j.name?(u=()=>(0,o.openAlbumDetail)(j.name),k[13]=j.name,k[14]=u):u=k[14],k[15]!==j.name||k[16]!==u?(y=(0,t.jsx)(p,{label:j.name,onClick:u,variant:"label"}),k[15]=j.name,k[16]=u,k[17]=y):y=k[17];let N=`${j.artist} \xb7 ${v} ${1===v?"song":"songs"}`;return k[18]!==j.artist?(x=()=>(0,o.openArtistDetail)(j.artist),k[18]=j.artist,k[19]=x):x=k[19],k[20]!==N||k[21]!==x?(h=(0,t.jsx)(p,{label:N,onClick:x,variant:"caption"}),k[20]=N,k[21]=x,k[22]=h):h=k[22],k[23]!==h||k[24]!==y?(b=(0,t.jsxs)("span",{className:"flex min-w-0 flex-col",children:[y,h]}),k[23]=h,k[24]=y,k[25]=b):b=k[25],k[26]!==b||k[27]!==c?(g=(0,t.jsxs)("div",{className:f,children:[c,b]}),k[26]=b,k[27]=c,k[28]=g):g=k[28],g}function x(e){let s,r,i,c,u,y,x,h,b,g=(0,l.c)(26),{artist:k}=e,j=k.tracks.length,v=1===j?"song":"songs";g[0]!==k.name||g[1]!==k.tracks?(s=()=>{(0,o.openArtistDetail)(k.name),(0,n.playCollectionUnlessPlaying)(k.tracks)},g[0]=k.name,g[1]=k.tracks,g[2]=s):s=g[2];let S=s,w=`Open and play ${k.name}`;g[3]!==S||g[4]!==w?(r=(0,t.jsx)(m,{circle:!0,label:w,onOpen:S}),g[3]=S,g[4]=w,g[5]=r):r=g[5];let N=`Play ${k.name} from the start`;return g[6]!==k.tracks?(i=()=>(0,n.playLibraryCollection)(k.tracks),g[6]=k.tracks,g[7]=i):i=g[7],g[8]!==N||g[9]!==i?(c=(0,t.jsx)(d,{label:N,onPlay:i}),g[8]=N,g[9]=i,g[10]=c):c=g[10],g[11]!==r||g[12]!==c?(u=(0,t.jsxs)("div",{className:"relative",children:[r,c]}),g[11]=r,g[12]=c,g[13]=u):u=g[13],g[14]!==k.name||g[15]!==S?(y=(0,t.jsx)(p,{label:k.name,onClick:S,variant:"label"}),g[14]=k.name,g[15]=S,g[16]=y):y=g[16],g[17]!==j||g[18]!==v?(x=(0,t.jsxs)(a.Text,{as:"span",className:"truncate",variant:"caption",children:[j," ",v]}),g[17]=j,g[18]=v,g[19]=x):x=g[19],g[20]!==y||g[21]!==x?(h=(0,t.jsxs)("span",{className:"flex min-w-0 flex-col",children:[y,x]}),g[20]=y,g[21]=x,g[22]=h):h=g[22],g[23]!==h||g[24]!==u?(b=(0,t.jsxs)("div",{className:f,children:[u,h]}),g[23]=h,g[24]=u,g[25]=b):b=g[25],b}function h(e){return(0,t.jsx)(y,{album:e},e.name)}function b(e){return(0,t.jsx)(x,{artist:e},e.name)}e.s(["AlbumCard",0,y,"ArtistCard",0,x,"CARD_SHELL",0,f,"CardGrid",0,u,"MediaCard",0,function(e){let s,r,i,n,o,c=(0,l.c)(16),{artworkUrl:u,circle:d,onOpen:y,subtitle:x,title:h}=e,b=`Open ${h}`;return c[0]!==u||c[1]!==d||c[2]!==y||c[3]!==b?(s=(0,t.jsx)("div",{className:"relative",children:(0,t.jsx)(m,{circle:d,imageUrl:u,label:b,onOpen:y})}),c[0]=u,c[1]=d,c[2]=y,c[3]=b,c[4]=s):s=c[4],c[5]!==y||c[6]!==h?(r=(0,t.jsx)(p,{label:h,onClick:y,variant:"label"}),c[5]=y,c[6]=h,c[7]=r):r=c[7],c[8]!==x?(i=x&&(0,t.jsx)(a.Text,{as:"span",className:"truncate",variant:"caption",children:x}),c[8]=x,c[9]=i):i=c[9],c[10]!==r||c[11]!==i?(n=(0,t.jsxs)("span",{className:"flex min-w-0 flex-col",children:[r,i]}),c[10]=r,c[11]=i,c[12]=n):n=c[12],c[13]!==s||c[14]!==n?(o=(0,t.jsxs)("div",{className:f,children:[s,n]}),c[13]=s,c[14]=n,c[15]=o):o=c[15],o},"PlayBadge",0,d,"TrackCard",0,function(e){let a,s,r,i,c,u,y,x,h,b,g,k=(0,l.c)(30),{track:j,queue:v}=e,S=`Go to album ${j.album}`;k[0]!==j.album?(a=()=>(0,o.openAlbumDetail)(j.album),k[0]=j.album,k[1]=a):a=k[1],k[2]!==S||k[3]!==a?(s=(0,t.jsx)(m,{label:S,onOpen:a}),k[2]=S,k[3]=a,k[4]=s):s=k[4];let w=`Play ${j.title}`;return k[5]!==v||k[6]!==j?(r=()=>(0,n.playLibrarySong)(v,j),k[5]=v,k[6]=j,k[7]=r):r=k[7],k[8]!==w||k[9]!==r?(i=(0,t.jsx)(d,{label:w,onPlay:r}),k[8]=w,k[9]=r,k[10]=i):i=k[10],k[11]!==s||k[12]!==i?(c=(0,t.jsxs)("div",{className:"relative",children:[s,i]}),k[11]=s,k[12]=i,k[13]=c):c=k[13],k[14]!==j.id?(u=()=>(0,o.openSongDetail)(j.id),k[14]=j.id,k[15]=u):u=k[15],k[16]!==u||k[17]!==j.title?(y=(0,t.jsx)(p,{label:j.title,onClick:u,variant:"label"}),k[16]=u,k[17]=j.title,k[18]=y):y=k[18],k[19]!==j.artist?(x=()=>(0,o.openArtistDetail)(j.artist),k[19]=j.artist,k[20]=x):x=k[20],k[21]!==x||k[22]!==j.artist?(h=(0,t.jsx)(p,{label:j.artist,onClick:x,variant:"caption"}),k[21]=x,k[22]=j.artist,k[23]=h):h=k[23],k[24]!==h||k[25]!==y?(b=(0,t.jsxs)("span",{className:"flex min-w-0 flex-col",children:[y,h]}),k[24]=h,k[25]=y,k[26]=b):b=k[26],k[27]!==b||k[28]!==c?(g=(0,t.jsxs)("div",{className:f,children:[c,b]}),k[27]=b,k[28]=c,k[29]=g):g=k[29],g}],697346),e.s(["AlbumsView",0,function(e){let r,i,n,o,c,d,m=(0,l.c)(13),{tracks:f}=e;if(m[0]!==f){let e=(0,s.groupByAlbum)(f);n="flex flex-col gap-4",m[5]===Symbol.for("react.memo_cache_sentinel")?(o=(0,t.jsx)(a.H1,{children:"Albums"}),m[5]=o):o=m[5],r=u,i=e.map(h),m[0]=f,m[1]=r,m[2]=i,m[3]=n,m[4]=o}else r=m[1],i=m[2],n=m[3],o=m[4];return m[6]!==r||m[7]!==i?(c=(0,t.jsx)(r,{children:i}),m[6]=r,m[7]=i,m[8]=c):c=m[8],m[9]!==n||m[10]!==o||m[11]!==c?(d=(0,t.jsxs)("div",{className:n,children:[o,c]}),m[9]=n,m[10]=o,m[11]=c,m[12]=d):d=m[12],d}],755949),e.s(["ArtistsView",0,function(e){let r,i,n,o,c,d,m=(0,l.c)(13),{tracks:f}=e;if(m[0]!==f){let e=(0,s.groupByArtist)(f);n="flex flex-col gap-4",m[5]===Symbol.for("react.memo_cache_sentinel")?(o=(0,t.jsx)(a.H1,{children:"Artists"}),m[5]=o):o=m[5],r=u,i=e.map(b),m[0]=f,m[1]=r,m[2]=i,m[3]=n,m[4]=o}else r=m[1],i=m[2],n=m[3],o=m[4];return m[6]!==r||m[7]!==i?(c=(0,t.jsx)(r,{children:i}),m[6]=r,m[7]=i,m[8]=c):c=m[8],m[9]!==n||m[10]!==o||m[11]!==c?(d=(0,t.jsxs)("div",{className:n,children:[o,c]}),m[9]=n,m[10]=o,m[11]=c,m[12]=d):d=m[12],d}],565216),e.s(["EntityLink",0,function(e){let s,i,n,c,u,d,m,f,p,y,x,h=(0,l.c)(22);h[0]!==e?({target:m,label:i,variant:u,muted:d,className:s,onNavigate:n,...c}=e,h[0]=e,h[1]=s,h[2]=i,h[3]=n,h[4]=c,h[5]=u,h[6]=d,h[7]=m):(s=h[1],i=h[2],n=h[3],c=h[4],u=h[5],d=h[6],m=h[7]);let b=void 0===u?"caption":u,g=void 0!==d&&d&&"text-muted-foreground hover:text-foreground";return h[8]!==s||h[9]!==g?(f=(0,r.cn)("max-w-full cursor-pointer truncate text-left outline-none hover:underline",g,s),h[8]=s,h[9]=g,h[10]=f):f=h[10],h[11]!==n||h[12]!==m?(p=()=>{var e;"playlist"===(e=m).kind?(0,o.selectPlaylist)(e.playlistId):(0,o.navigateToEntity)(e),n?.()},h[11]=n,h[12]=m,h[13]=p):p=h[13],h[14]!==i||h[15]!==b?(y=(0,t.jsx)(a.Text,{as:"span",className:"truncate",variant:b,children:i}),h[14]=i,h[15]=b,h[16]=y):y=h[16],h[17]!==c||h[18]!==f||h[19]!==p||h[20]!==y?(x=(0,t.jsx)("button",{className:f,onClick:p,type:"button",...c,children:y}),h[17]=c,h[18]=f,h[19]=p,h[20]=y,h[21]=x):x=h[21],x}],377234)},510490,974085,271122,395165,474171,782045,e=>{"use strict";var t=e.i(931718),l=e.i(729386);e.i(116233);var a=e.i(235893),s=e.i(367906),r=e.i(377234),i=e.i(615403),n=e.i(812507),o=e.i(983729),c=e.i(810014),u=e.i(699597),d=e.i(632137),m=e.i(924952),f=e.i(45526),p=e.i(212566);function y(e){let a,s,i,y,h,b,g,k,j,v,S,w,N,P,A,_,C,T,M,U=(0,l.c)(54),{track:I,onPlay:z,showAlbum:R}=e,D=void 0===R||R;U[0]!==I.id?(a=e=>e.queue[e.queueIndex]===I.id,U[0]=I.id,U[1]=a):a=U[1];let E=(0,o.useMusicStore)(a),L=(0,o.useMusicStore)(x)&&E;U[2]!==E||U[3]!==z?(s=()=>{E?(0,o.togglePlay)():z()},U[2]=E,U[3]=z,U[4]=s):s=U[4];let $=s,B=L?m.Pause:f.Play,O=E&&"bg-surface-hover";U[5]!==O?(i=(0,d.cn)("group flex min-h-11 select-none items-center gap-3 rounded-lg px-2.5 py-2 transition-colors hover:bg-surface-hover",O),U[5]=O,U[6]=i):i=U[6];let H=`Go to album ${I.album}`;U[7]!==I.album?(y=()=>(0,o.openAlbumDetail)(I.album),U[7]=I.album,U[8]=y):y=U[8],U[9]===Symbol.for("react.memo_cache_sentinel")?(h=(0,t.jsx)(c.AlbumArt,{className:"size-9"}),U[9]=h):h=U[9],U[10]!==E||U[11]!==L?(b=E?(0,t.jsx)(p.NowPlayingBadge,{paused:!L}):null,U[10]=E,U[11]=L,U[12]=b):b=U[12],U[13]!==H||U[14]!==y||U[15]!==b?(g=(0,t.jsxs)("button",{"aria-label":H,className:"relative shrink-0 cursor-pointer rounded-md outline-none ring-ring/50 focus-visible:ring-2",onClick:y,type:"button",children:[h,b]}),U[13]=H,U[14]=y,U[15]=b,U[16]=g):g=U[16],U[17]!==I.id?(k={kind:"song",trackId:I.id},U[17]=I.id,U[18]=k):k=U[18];let Q=E?"labelBold":"label";U[19]!==k||U[20]!==Q||U[21]!==I.title?(j=(0,t.jsx)(r.EntityLink,{label:I.title,target:k,variant:Q}),U[19]=k,U[20]=Q,U[21]=I.title,U[22]=j):j=U[22],U[23]!==I.artist?(v={artist:I.artist,kind:"artist",source:"local"},U[23]=I.artist,U[24]=v):v=U[24],U[25]!==v||U[26]!==I.artist?(S=(0,t.jsx)(r.EntityLink,{label:I.artist,muted:!0,target:v}),U[25]=v,U[26]=I.artist,U[27]=S):S=U[27],U[28]!==j||U[29]!==S?(w=(0,t.jsxs)("span",{className:"flex min-w-0 flex-1 flex-col items-start",children:[j,S]}),U[28]=j,U[29]=S,U[30]=w):w=U[30],U[31]!==D||U[32]!==I.album?(N=D?(0,t.jsx)(r.EntityLink,{className:"hidden w-1/4 sm:block",label:I.album,muted:!0,target:{album:I.album,kind:"album"}}):null,U[31]=D,U[32]=I.album,U[33]=N):N=U[33];let F=L?`Pause ${I.title}`:`Play ${I.title}`,q=E&&"text-primary";return U[34]!==q?(P=(0,d.cn)("flex size-8 shrink-0 cursor-pointer items-center justify-center rounded-full text-foreground outline-none ring-ring/50 hover:bg-muted focus-visible:ring-2",q),U[34]=q,U[35]=P):P=U[35],U[36]!==B?(A=(0,t.jsx)(B,{className:"size-4 fill-current"}),U[36]=B,U[37]=A):A=U[37],U[38]!==$||U[39]!==F||U[40]!==P||U[41]!==A?(_=(0,t.jsx)("button",{"aria-label":F,className:P,onClick:$,type:"button",children:A}
1),U[38]=$,U[39]=F,U[40]=P,U[41]=A,U[42]=_):_=U[42],U[43]!==I.durationMs?(C=(0,n.formatTrackDuration)(I.durationMs),U[43]=I.durationMs,U[44]=C):C=U[44],U[45]!==C?(T=(0,t.jsx)(u.Text,{as:"span",className:"shrink-0 tabular-nums",variant:"caption",children:C}),U[45]=C,U[46]=T):T=U[46],U[47]!==g||U[48]!==w||U[49]!==N||U[50]!==_||U[51]!==T||U[52]!==i?(M=(0,t.jsxs)("div",{className:i,children:[g,w,N,_,T]}),U[47]=g,U[48]=w,U[49]=N,U[50]=_,U[51]=T,U[52]=i,U[53]=M):M=U[53],M}function x(e){return e.isPlaying}e.s(["TrackRow",0,y],974085);var h=e.i(237418),b=e.i(129454),g=e.i(451482);function k(e){let s,r,i=(0,l.c)(3),{onBack:n}=e,c=void 0===n?o.closeDetail:n;return i[0]===Symbol.for("react.memo_cache_sentinel")?(s=(0,t.jsx)(g.ArrowLeft,{className:"size-4"}),i[0]=s):s=i[0],i[1]!==c?(r=(0,t.jsxs)(a.Button,{className:"self-start",onClick:c,size:"sm",variant:"ghost",children:[s,"Back"]}),i[1]=c,i[2]=r):r=i[2],r}function j(e){let a,s,r,i,n,c,u,d=(0,l.c)(16),{action:m,description:f,label:p,onBack:y}=e,x=void 0===y?o.closeDetail:y;return d[0]!==x?(a=(0,t.jsx)(k,{onBack:x}),d[0]=x,d[1]=a):a=d[1],d[2]===Symbol.for("react.memo_cache_sentinel")?(s=(0,t.jsx)(h.EmptyMedia,{variant:"icon",children:(0,t.jsx)(b.Music,{className:"size-6"})}),d[2]=s):s=d[2],d[3]!==p?(r=(0,t.jsx)(h.EmptyTitle,{children:p}),d[3]=p,d[4]=r):r=d[4],d[5]!==f?(i=f&&(0,t.jsx)(h.EmptyDescription,{children:f}),d[5]=f,d[6]=i):i=d[6],d[7]!==r||d[8]!==i?(n=(0,t.jsx)(h.Empty,{children:(0,t.jsxs)(h.EmptyHeader,{children:[s,r,i]})}),d[7]=r,d[8]=i,d[9]=n):n=d[9],d[10]!==m||d[11]!==n?(c=(0,t.jsxs)("div",{className:"flex flex-1 flex-col items-center justify-center gap-4 p-8",children:[n,m]}),d[10]=m,d[11]=n,d[12]=c):c=d[12],d[13]!==a||d[14]!==c?(u=(0,t.jsxs)("div",{className:"flex h-full flex-col gap-4",children:[a,c]}),d[13]=a,d[14]=c,d[15]=u):u=d[15],u}function v(e){let s,r,i,n,o,c,d,m,p,y,x,h=(0,l.c)(28),{art:b,aside:g,controls:j,kicker:v,onPlay:S,playLabel:w,subtitle:N,title:P}=e;return h[0]===Symbol.for("react.memo_cache_sentinel")?(s=(0,t.jsx)(k,{}),h[0]=s):s=h[0],h[1]!==v?(r=(0,t.jsx)(u.Text,{as:"span",variant:"caption",children:v}),h[1]=v,h[2]=r):r=h[2],h[3]!==P?(i=(0,t.jsx)(u.H1,{children:P}),h[3]=P,h[4]=i):i=h[4],h[5]!==r||h[6]!==i?(n=(0,t.jsxs)("div",{className:"flex min-w-0 flex-col gap-1",children:[r,i]}),h[5]=r,h[6]=i,h[7]=n):n=h[7],h[8]!==b?(o=(0,t.jsx)("div",{className:"size-40 shrink-0 md:size-48",children:b}),h[8]=b,h[9]=o):o=h[9],h[10]!==N?(c=(0,t.jsx)(u.Text,{variant:"bodyMuted",children:N}),h[10]=N,h[11]=c):c=h[11],h[12]!==j||h[13]!==S||h[14]!==w?(d=j??(S&&(0,t.jsxs)(a.Button,{className:"mt-1 self-start",onClick:S,children:[(0,t.jsx)(f.Play,{className:"size-4 fill-current"}),w??"Play"]})),h[12]=j,h[13]=S,h[14]=w,h[15]=d):d=h[15],h[16]!==c||h[17]!==d?(m=(0,t.jsxs)("div",{className:"flex min-w-0 flex-1 flex-col gap-2 pb-1",children:[c,d]}),h[16]=c,h[17]=d,h[18]=m):m=h[18],h[19]!==g?(p=g&&(0,t.jsx)("div",{className:"shrink-0",children:g}),h[19]=g,h[20]=p):p=h[20],h[21]!==o||h[22]!==m||h[23]!==p?(y=(0,t.jsxs)("div",{className:"flex items-end gap-5",children:[o,m,p]}),h[21]=o,h[22]=m,h[23]=p,h[24]=y):y=h[24],h[25]!==y||h[26]!==n?(x=(0,t.jsxs)("div",{className:"flex flex-col gap-4",children:[s,n,y]}),h[25]=y,h[26]=n,h[27]=x):x=h[27],x}e.s(["DetailBack",0,k],271122),e.s(["DetailEmpty",0,j],395165),e.s(["DetailHeader",0,v],474171),e.s(["AlbumDetailView",0,function(e){let u,d,m,f,p,x,h,b,g,k,S,w=(0,l.c)(38),{album:N,tracks:P}=e;if(w[0]!==N||w[1]!==P){let e;w[3]!==N?(e=e=>e.name===N,w[3]=N,w[4]=e):e=w[4],u=(0,n.groupByAlbum)(P).find(e),w[0]=N,w[1]=P,w[2]=u}else u=w[2];let A=u;if(!A){let e,l,r,i;w[5]!==N?(e=()=>(0,o.setSearchQuery)(N),w[5]=N,w[6]=e):e=w[6],w[7]===Symbol.for("react.memo_cache_sentinel")?(l=(0,t.jsx)(s.Search,{className:"size-4"}),w[7]=l):l=w[7],w[8]!==N||w[9]!==e?(r=(0,t.jsxs)(a.Button,{onClick:e,variant:"secondary",children:[l,"Search for ",N]}),w[8]=N,w[9]=e,w[10]=r):r=w[10];let n=`We couldn't find ${N} in your library.`;return w[11]!==r||w[12]!==n?(i=(0,t.jsx)(j,{action:r,description:"It isn't in your library yet.",label:n}),w[11]=r,w[12]=n,w[13]=i):i=w[13],i}let _=A.tracks.length;w[14]===Symbol.for("react.memo_cache_sentinel")?(d=(0,t.jsx)(c.AlbumArt,{className:"size-full"}),w[14]=d):d=w[14],w[15]!==A.tracks?(m=()=>(0,i.playLibraryCollection)(A.tracks),w[15]=A.tracks,w[16]=m):m=w[16],w[17]!==A.artist?(f={kind:"artist",artist:A.artist,source:"local"},w[17]=A.artist,w[18]=f):f=w[18],w[19]!==A.artist||w[20]!==f?(p=(0,t.jsx)(r.EntityLink,{label:A.artist,target:f,variant:"bodyMuted"}),w[19]=A.artist,w[20]=f,w[21]=p):p=w[21];let C=`\xb7 ${_} ${1===_?"song":"songs"}`;return w[22]!==C?(x=(0,t.jsx)("span",{className:"shrink-0",children:C}),w[22]=C,w[23]=x):x=w[23],w[24]!==p||w[25]!==x?(h=(0,t.jsxs)("span",{className:"flex min-w-0 items-center gap-1",children:[p,x]}),w[24]=p,w[25]=x,w[26]=h):h=w[26],w[27]!==A.name||w[28]!==m||w[29]!==h?(b=(0,t.jsx)(v,{art:d,kicker:"Album",onPlay:m,subtitle:h,title:A.name}),w[27]=A.name,w[28]=m,w[29]=h,w[30]=b):b=w[30],w[31]!==A.tracks?(g=A.tracks.map(e=>(0,t.jsx)(y,{onPlay:()=>(0,i.playLibrarySong)(A.tracks,e),showAlbum:!1,track:e},e.id)),w[31]=A.tracks,w[32]=g):g=w[32],w[33]!==g?(k=(0,t.jsx)("div",{className:"flex flex-col",children:g}),w[33]=g,w[34]=k):k=w[34],w[35]!==k||w[36]!==b?(S=(0,t.jsxs)("div",{className:"flex flex-col gap-6",children:[b,k]}),w[35]=k,w[36]=b,w[37]=S):S=w[37],S}],510490),e.s(["spotifyTrackEntry",0,function(e){return{artworkUrl:e.artworkUrl??null,key:`sptrack:${e.spotifyUri}`,replay:{deepLinkUrl:e.deepLinkUrl,kind:"spotifyTrack",trackUri:e.spotifyUri}
1,shape:"square",subtitle:e.artist,title:e.title}}],782045)},110287,e=>{"use strict";let t="premium",l="active";e.s(["apiStateForRepeat",0,function(e){return"all"===e?"context":"one"===e?"track":"off"},"isSpotifyPlaybackEnabled",0,function(e){return e.some(e=>e.status===l&&e.product===t)},"repeatModeFromApi",0,function(e){return 1===e?"all":2===e?"one":"off"},"resolveSpotifyPlayability",0,function(e){let a=e.find(e=>e.status===l);return a?a.product!==t?{kind:"notPremium"}:{kind:"ready"}:{kind:"notConnected"}}])},417275,e=>{"use strict";var t=e.i(868280);let l="Reconnect Spotify to play in-app. Your access needs Spotify's latest permissions.",a="Spotify Premium is required to play full tracks here.",s="Couldn't start playback on Spotify. Try again.",r=t.z.object({error:t.z.object({status:t.z.number().optional(),message:t.z.string().optional(),reason:t.z.string().optional()}).optional()}),i=new Set(["DEVICE_NOT_FOUND","NO_ACTIVE_DEVICE"]);e.s(["PREMIUM_MESSAGE",0,a,"classifyPlayerError",0,function(e,t){let l=r.safeParse(t),a=l.success?l.data.error?.reason:void 0;return 404===e||void 0!==a&&i.has(a)?"deviceNotFound":"PREMIUM_REQUIRED"===a?"needsPremium":401===e||403===e?"needsReconnect":"failed"},"classifySpotifyPlaybackError",0,function(e){return"authentication"===e.type?{message:l,needsReconnect:!0,needsPremium:!1,needsRetry:!1}:"account"===e.type?{message:a,needsReconnect:!1,needsPremium:!0,needsRetry:!1}:{message:e.message.trim()||s,needsReconnect:!1,needsPremium:!1,needsRetry:"playback"===e.type}},"transportFailureAffordance",0,function(e){switch(e){case"deviceNotFound":return{message:"Spotify's player is still waking up. Try again in a moment.",needsReconnect:!1,needsPremium:!1,needsRetry:!1};case"deviceUnavailable":return{message:"Spotify's player isn't available. Retry.",needsReconnect:!1,needsPremium:!1,needsRetry:!0};case"needsReconnect":return{message:l,needsReconnect:!0,needsPremium:!1,needsRetry:!1};case"needsPremium":return{message:a,needsReconnect:!1,needsPremium:!0,needsRetry:!1};case"playingElsewhere":return{message:"Spotify is playing on another device. Press play here to move it.",needsReconnect:!1,needsPremium:!1,needsRetry:!1};case"failed":return{message:s,needsReconnect:!1,needsPremium:!1,needsRetry:!0};default:throw Error(`Unknown player error kind: ${String(e)}`)}}])},847245,41288,367457,405383,784278,358010,36892,855511,869051,282109,546417,e=>{"use strict";var t=e.i(931718),l=e.i(729386),a=e.i(510490),s=e.i(283164);e.i(857266);var r=e.i(246257);e.i(116233);var i=e.i(235893),n=e.i(699597),o=e.i(222850),c=e.i(367906),u=e.i(615403),d=e.i(812507),m=e.i(983729),f=e.i(632137),p=e.i(924952),y=e.i(45526),x=e.i(377234),h=e.i(92635),b=e.i(810014),g=e.i(212566),k=e.i(782045),j=e.i(485954),v=e.i(913939),S=e.i(832877),w=e.i(221662),N=e.i(110287),P=e.i(741525),A=e.i(417275);let _="spotify-reconnect",C="spotify-playback-notice";function T(e,t){let l=e.needsReconnect?{kind:"reconnect"}:e.needsPremium?{kind:"premium"}:e.needsRetry?{kind:"retry"}:e.needsConnect?{kind:"connect"}:{kind:"none"};return"reconnect"===l.kind?{id:_,action:{label:"Reconnect",onClick:t.openSettings}}:"connect"===l.kind?{id:_,action:{label:"Connect",onClick:t.openSettings}}:"premium"===l.kind?{id:C,action:{label:"Open Spotify",onClick:t.openSpotifyAccount}}:"retry"===l.kind?{id:C,action:{label:"Retry",onClick:t.retry}}:{id:C}}function M(){window.open("https://www.spotify.com/account/","_blank","noopener,noreferrer")}function U(e,t){return{openSettings:()=>e?.("settings"),openSpotifyAccount:M,retry:t}}function I(){let e,t,a,i,n,o,c,u,d,m,f,p=(0,l.c)(37),y=(0,w.usePlayback)()?.spotify??P.IDLE_SPOTIFY_ENGINE;p[0]===Symbol.for("react.memo_cache_sentinel")?(e={},p[0]=e):e=p[0];let x=(0,r.useQuery)(s.api.spotify.connection_internal.listConnectionStatuses,e),h=void 0===x;if(p[1]!==y||p[2]!==x?.connections){var b;b=t=(0,N.resolveSpotifyPlayability)(x?.connections??[]),a=y.errorMessage?{canPlayInApp:!1,warming:!1,needsConnect:y.needsReconnect||"notConnected"===b.kind,needsPremium:y.needsPremium,needsReconnect:y.needsReconnect,needsRetry:y.needsRetry,reason:y.errorMessage}:"notConnected"===b.kind?{canPlayInApp:!1,warming:!1,needsConnect:!0,needsPremium:!1,needsReconnect:!1,needsRetry:!1,reason:"Connect Spotify to listen here."}:"notPremium"===b.kind?{canPlayInApp:!1,warming:!1,needsConnect:!1,needsPremium:!0,needsReconnect:!1,needsRetry:!1,reason:A.PREMIUM_MESSAGE}:y.isReady?{canPlayInApp:!0,warming:!1,needsConnect:!1,needsPremium:!1,needsReconnect:!1,needsRetry:!1,reason:null}:{canPlayInApp:!1,warming:!0,needsConnect:!1,needsPremium:!1,needsReconnect:!1,needsRetry:!1,reason:"Spotify is still connecting â try again in a moment."},p[1]=y,p[2]=x?.connections,p[3]=t,p[4]=a}else t=p[3],a=p[4];let g=a;p[5]!==y.errorMessage||p[6]!==h||p[7]!==g?(i=h&&!y.errorMessage?{...g,canPlayInApp:!1,warming:!0,needsConnect:!1,reason:null}:g,p[5]=y.errorMessage,p[6]=h,p[7]=g,p[8]=i):i=p[8];let k=i,_=(0,S.useOnOpenApp)();p[9]!==y.retryLastPlayback||p[10]!==_?(n=e=>{e.reason&&(0,v.toast)(e.reason,T(e,U(_,y.retryLastPlayback)))},p[9]=y.retryLastPlayback,p[10]=_,p[11]=n):n=p[11];let C=n,M=(0,j.useRef)(null);return p[12]!==y.errorMessage||p[13]!==y.needsPremium||p[14]!==y.needsReconnect||p[15]!==y.needsRetry||p[16]!==y.retryLastPlayback||p[17]!==_?
1(o=function(){let e=y.errorMessage;if(!e){M.current=null;return}e!==M.current&&(M.current=e,(0,v.toast)(e,T({needsConnect:!1,needsPremium:y.needsPremium,needsReconnect:y.needsReconnect,needsRetry:y.needsRetry},U(_,y.retryLastPlayback))))},c=[y.errorMessage,y.needsPremium,y.needsReconnect,y.needsRetry,y.retryLastPlayback,_],p[12]=y.errorMessage,p[13]=y.needsPremium,p[14]=y.needsReconnect,p[15]=y.needsRetry,p[16]=y.retryLastPlayback,p[17]=_,p[18]=o,p[19]=c):(o=p[18],c=p[19]),(0,j.useEffect)(o,c),p[20]!==k||p[21]!==y||p[22]!==C?(u=(e,t)=>{k.canPlayInApp?y.playContext(e,t):C(k)},d=e=>{k.canPlayInApp?y.playTrack(e):C(k)},m=(e,t)=>{k.canPlayInApp?y.playTracks(e,t):C(k)},p[20]=k,p[21]=y,p[22]=C,p[23]=u,p[24]=d,p[25]=m):(u=p[23],d=p[24],m=p[25]),p[26]!==k.canPlayInApp||p[27]!==k.needsConnect||p[28]!==k.needsReconnect||p[29]!==k.reason||p[30]!==k.warming||p[31]!==y||p[32]!==t||p[33]!==u||p[34]!==d||p[35]!==m?(f={engine:y,playability:t,canPlayInApp:k.canPlayInApp,warming:k.warming,reason:k.reason,needsConnect:k.needsConnect,needsReconnect:k.needsReconnect,setShuffle:y.setShuffle,playContext:u,playTrack:d,playTracks:m},p[26]=k.canPlayInApp,p[27]=k.needsConnect,p[28]=k.needsReconnect,p[29]=k.reason,p[30]=k.warming,p[31]=y,p[32]=t,p[33]=u,p[34]=d,p[35]=m,p[36]=f):f=p[36],f}function z(e){return e.spotifyAlbumId?{kind:"spotifyAlbum",name:e.album,spotifyAlbumId:e.spotifyAlbumId}:{album:e.album,kind:"album"}}function R(e){let a,s,r,i,o,c,u,j,v,S,w,N,P,A,_,C,T,M=(0,l.c)(66),{track:U,contextUri:R,queueUris:D,showAlbum:E}=e,L=void 0===E||E,{engine:$,canPlayInApp:B,playContext:O,playTrack:H,playTracks:Q}=I(),F=$.hasTrack&&$.trackName===U.title&&$.artistName===U.artist,q=F&&!$.isPaused,G=q?p.Pause:y.Play;M[0]!==B||M[1]!==R||M[2]!==$||M[3]!==F||M[4]!==O||M[5]!==H||M[6]!==Q||M[7]!==D||M[8]!==U?(a=()=>{F?$.togglePlay():(B&&(0,h.recordPlayed)((0,k.spotifyTrackEntry)(U)),R)?O(R,{offsetUri:U.spotifyUri}):D&&D.length>1?Q(D,U.spotifyUri):H(U.spotifyUri)},M[0]=B,M[1]=R,M[2]=$,M[3]=F,M[4]=O,M[5]=H,M[6]=Q,M[7]=D,M[8]=U,M[9]=a):a=M[9];let V=a,W=F&&"bg-surface-hover";M[10]!==W?(s=(0,f.cn)("group flex min-h-11 select-none items-center gap-3 rounded-lg px-2.5 py-2 transition-colors hover:bg-surface-hover",W),M[10]=W,M[11]=s):s=M[11];let Y=`Go to album ${U.album}`;M[12]!==U?(r=()=>(0,m.navigateToEntity)(z(U)),M[12]=U,M[13]=r):r=M[13],M[14]!==U.album||M[15]!==U.artworkUrl?(i=(0,t.jsx)(b.AlbumArt,{alt:U.album,className:"size-10",imageUrl:U.artworkUrl}),M[14]=U.album,M[15]=U.artworkUrl,M[16]=i):i=M[16],M[17]!==F||M[18]!==q?(o=F?(0,t.jsx)(g.NowPlayingBadge,{paused:!q}):null,M[17]=F,M[18]=q,M[19]=o):o=M[19],M[20]!==Y||M[21]!==r||M[22]!==i||M[23]!==o?(c=(0,t.jsxs)("button",{"aria-label":Y,className:"relative shrink-0 cursor-pointer rounded-md outline-none ring-ring/50 focus-visible:ring-2",onClick:r,type:"button",children:[i,o]}),M[20]=Y,M[21]=r,M[22]=i,M[23]=o,M[24]=c):c=M[24],M[25]!==U.album||M[26]!==U.artist||M[27]!==U.artworkUrl||M[28]!==U.durationMs||M[29]!==U.spotifyAlbumId||M[30]!==U.spotifyTrackId||M[31]!==U.spotifyUri||M[32]!==U.title?(u={album:U.album,artist:U.artist,artworkUrl:U.artworkUrl,durationMs:U.durationMs,kind:"spotifySong",spotifyAlbumId:U.spotifyAlbumId,spotifyTrackId:U.spotifyTrackId,spotifyUri:U.spotifyUri,title:U.title},M[25]=U.album,M[26]=U.artist,M[27]=U.artworkUrl,M[28]=U.durationMs,M[29]=U.spotifyAlbumId,M[30]=U.spotifyTrackId,M[31]=U.spotifyUri,M[32]=U.title,M[33]=u):u=M[33];let J=F?"labelBold":"label";M[34]!==u||M[35]!==J||M[36]!==U.title?(j=(0,t.jsx)(x.EntityLink,{label:U.title,target:u,variant:J}),M[34]=u,M[35]=J,M[36]=U.title,M[37]=j):j=M[37],M[38]!==U.artist?(v={artist:U.artist,kind:"artist",source:"spotify"},M[38]=U.artist,M[39]=v):v=M[39],M[40]!==v||M[41]!==U.artist?(S=(0,t.jsx)(x.EntityLink,{label:U.artist,muted:!0,target:v}),M[40]=v,M[41]=U.artist,M[42]=S):S=M[42],M[43]!==j||M[44]!==S?(w=(0,t.jsxs)("span",{className:"flex min-w-0 flex-1 flex-col items-start",children:[j,S]}),M[43]=j,M[44]=S,M[45]=w):w=M[45],M[46]!==L||M[47]!==U?(N=L?(0,t.jsx)(x.EntityLink,{className:"hidden w-1/4 md:block",label:U.album,muted:!0,target:z(U)}):null,M[46]=L,M[47]=U,M[48]=N):N=M[48];let K=q?`Pause ${U.title}`:`Play ${U.title}`;return M[49]!==G?(P=(0,t.jsx)(G,{className:"size-4 fill-current"}),M[49]=G,M[50]=P):P=M[50],M[51]!==V||M[52]!==K||M[53]!==P?(A=(0,t.jsx)("button",{"aria-label":K,className:"flex size-8 shrink-0 cursor-pointer items-center justify-center rounded-full text-foreground outline-none ring-ring/50 hover:bg-surface-hover focus-visible:ring-2",onClick:V,type:"button",children:P}),M[51]=V,M[52]=K,M[53]=P,M[54]=A):A=M[54],M[55]!==U.durationMs?(_=(0,d.formatTrackDuration)(U.durationMs),M[55]=U.durationMs,M[56]=_):_=M[56],M[57]!==_?(C=(0,t.jsx)(n.Text,{as:"span",className:"hidden shrink-0 sm:block",variant:"caption",children:_}),M[57]=_,M[58]=C):C=M[58],M[59]!==w||M[60]!==N||M[61]!==A||M[62]!==C||M[63]!==s||M[64]!==c?(T=(0,t.jsxs)("div",{className:s,children:[c,w,N,A,C]}),M[59]=w,M[60]=N,M[61]=A,M[62]=C,M[63]=s,M[64]=c,M[65]=T):T=M[65],T}e.s(["useSpotifyPlay",0,I],41288),e.s(["SpotifyTrackRow",0,R],367457);var D=e.i(697346),E=e.i(974085),L=e.i(639358);function $(e){let a,s,r,i,o,c,u,d,f,p,y,h,g=(0,l.c)(32),{album:k,onPlay:j}=e,v=`Open album ${k.name}`;g[0]!==k.name?(a=()=>(0,m.openAlbumDetail)(k.name),g[0]=k.name,g[1]=a):a=g[1],g[2]!==k.artworkUrl?(s=(0,t.jsx)(b.AlbumArt,{className:"w-full",imageUrl:k.artworkUrl}),g[2]=k.artworkUrl,g[3]=s):s=g[3],g[4]!==v||g[5]!==a||g[6]!==s?(r=(0,t.jsx)("button",{"aria-label":v,className:"w-full cursor-pointer outline-none",onClick:a,type:"button",children:s}),g[4]=v,g[5]=a,g[6]=s,g[7]=r):r=g[7];let S=`Play ${k.name}`;return(g[8]!==k.spotifyUri||g[9]!==j?(i=()=>j(k.spotifyUri),g[8]=k.spotifyUri,g[9]=j,g[10]=i):i=g[10],g[11]!==S||g[12]!==i?(o=(0,t.jsx)(D.PlayBadge,{label:S,onPlay:i}),g[11]=S,g[12]=i,g[13]=o):o=g[13],g[14]!==r||g[15]!==o?(c=(0,t.jsxs)("div",{className:"relative",children:[r,o]}),g[14]=r,g[15]=o,g[16]=c):c=g[16],g[17]!==k.name?(u={kind:"album",album:k.name},g[17]=k.name,g[18]=u):u=g[18],g[19]!==k.name||g[20]!==u?(d=(0,t.jsx)(x.EntityLink,{label:k.name,target:u,variant:"label"}),g[19]=k.name,g[20]=u,g[21]=d):d=g[21],g[22]!==k.releaseDate)?(f=k.releaseDate.slice(0,4),g[22]=k.releaseDate,g[23]=f):f=g[23],g[24]!==f?(p=(0,t.jsx)(n.Text,{as:"span",className:"truncate",variant:"caption",children:f}),g[24]=f,g[25]=p):p=g[25],g[26]!==d||g[27]!==p?(y=(0,t.jsxs)("span",{className:"flex min-w-0 flex-col",children:[d,p]}),g[26]=d,g[27]=p,g[28]=y):y=g[28],g[29]!==y||g[30]!==c?(h=(0,t.jsxs)("div",{className:D.CARD_SHELL,children:[c,y]}),g[29]=y,g[30]=c,g[31]=h):h=g[31],h}function B(e){let a,s,r,i,n,o,c=(0,l.c)(16),{artist:u}=e,d=`Open artist ${u.name}`;return c[0]!==u.name?(a=()=>(0,m.openArtistDetail)(u.name,"spotify"),c[0]=u.name,c[1]=a):a=c[1],c[2]!==u.artworkUrl?(s=(0,t.jsx)(b.AlbumArt,{className:"w-full rounded-full",imageUrl:u.artworkUrl}),c[2]=u.artworkUrl,c[3]=s):s=c[3],c[4]!==d||c[5]!==a||c[6]!==s?(r=(0,t.jsx)("button",{"aria-label":d,className:"cursor-pointer outline-none",onClick:a,type:"button",children:s}
1),c[4]=d,c[5]=a,c[6]=s,c[7]=r):r=c[7],c[8]!==u.name?(i={kind:"artist",artist:u.name,source:"spotify"},c[8]=u.name,c[9]=i):i=c[9],c[10]!==u.name||c[11]!==i?(n=(0,t.jsx)(x.EntityLink,{label:u.name,target:i,variant:"label"}),c[10]=u.name,c[11]=i,c[12]=n):n=c[12],c[13]!==r||c[14]!==n?(o=(0,t.jsxs)("div",{className:D.CARD_SHELL,children:[r,n]}),c[13]=r,c[14]=n,c[15]=o):o=c[15],o}function O(e){let a,s,r=(0,l.c)(5),{title:i,children:o}=e;return r[0]!==i?(a=(0,t.jsx)(n.H3,{children:i}),r[0]=i,r[1]=a):a=r[1],r[2]!==o||r[3]!==a?(s=(0,t.jsxs)("section",{className:"flex flex-col gap-3",children:[a,o]}),r[2]=o,r[3]=a,r[4]=s):s=r[4],s}function H(e){let a,s,r,i,o=(0,l.c)(10),{about:c,label:u}=e;return c||u?(o[0]!==c?(a=c?(0,t.jsx)(n.Text,{variant:"body",children:c}):null,o[0]=c,o[1]=a):a=o[1],o[2]!==c?(s=c?(0,t.jsx)(n.Text,{variant:"caption",children:"From Wikipedia"}):null,o[2]=c,o[3]=s):s=o[3],o[4]!==u?(r=u?(0,t.jsxs)(n.Text,{variant:"caption",children:["Label · ",u]}):null,o[4]=u,o[5]=r):r=o[5],o[6]!==a||o[7]!==s||o[8]!==r?(i=(0,t.jsxs)(O,{title:"About",children:[a,s,r]}),o[6]=a,o[7]=s,o[8]=r,o[9]=i):i=o[9],i):null}function Q(e){let a,s,r=(0,l.c)(7),{catalog:i}=e;if(0===i.topTracks.length)return null;if(r[0]!==i.artist||r[1]!==i.topTracks){let e;r[3]!==i.artist?(e=e=>(0,t.jsx)(R,{contextUri:i.artist.spotifyUri,track:e},e.spotifyTrackId),r[3]=i.artist,r[4]=e):e=r[4],a=i.topTracks.map(e),r[0]=i.artist,r[1]=i.topTracks,r[2]=a}else a=r[2];return r[5]!==a?(s=(0,t.jsx)(O,{title:"Popular",children:(0,t.jsx)("div",{className:"flex flex-col",children:a})}),r[5]=a,r[6]=s):s=r[6],s}function F(e){let a,s,r,i,n,o=(0,l.c)(15),{albums:c,onPlay:u,title:d}=e,[m,f]=(0,j.useState)(18);if(0===c.length)return null;let p=m<c.length;if(o[0]!==c||o[1]!==u||o[2]!==m){let e;o[4]!==u?(e=e=>(0,t.jsx)($,{album:e,onPlay:u},e.spotifyAlbumId),o[4]=u,o[5]=e):e=o[5],a=c.slice(0,m).map(e),o[0]=c,o[1]=u,o[2]=m,o[3]=a}else a=o[3];return o[6]!==a?(s=(0,t.jsx)(D.CardGrid,{children:a}),o[6]=a,o[7]=s):s=o[7],o[8]===Symbol.for("react.memo_cache_sentinel")?(r=()=>f(q),o[8]=r):r=o[8],o[9]!==p?(i=(0,t.jsx)(L.LoadMoreSentinel,{canLoadMore:p,isLoadingMore:!1,onLoadMore:r}),o[9]=p,o[10]=i):i=o[10],o[11]!==s||o[12]!==i||o[13]!==d?(n=(0,t.jsxs)(O,{title:d,children:[s,i]}),o[11]=s,o[12]=i,o[13]=d,o[14]=n):n=o[14],n}function q(e){return e+18}function G(e){let a,s,r=(0,l.c)(4),{related:i}=e;return 0===i.length?null:(r[0]!==i?(a=i.map(V),r[0]=i,r[1]=a):a=r[1],r[2]!==a?(s=(0,t.jsx)(O,{title:"Fans also like",children:(0,t.jsx)(D.CardGrid,{children:a})}),r[2]=a,r[3]=s):s=r[3],s)}function V(e){return(0,t.jsx)(B,{artist:e},e.spotifyArtistId)}function W(){let e,a=(0,l.c)(1);return a[0]===Symbol.for("react.memo_cache_sentinel")?(e=(0,t.jsx)("div",{className:"flex h-40 items-center justify-center"}),a[0]=e):e=a[0],e}function Y(e){let a,s,r,i,o,c,u,d=(0,l.c)(28),{state:m,onPlay:f,showUnavailableNotice:p}=e;if("loading"===m.kind){let e;return d[0]===Symbol.for("react.memo_cache_sentinel")?(e=(0,t.jsx)(W,{}),d[0]=e):e=d[0],e}if("unavailable"===m.kind){let e;return d[1]!==p||d[2]!==m.message?(e=p?(0,t.jsx)(n.Muted,{children:m.message}):null,d[1]=p,d[2]=m.message,d[3]=e):e=d[3],e}return d[4]!==m.catalog.artist.about||d[5]!==m.catalog.artist.label?(a=(0,t.jsx)(H,{about:m.catalog.artist.about,label:m.catalog.artist.label}),d[4]=m.catalog.artist.about,d[5]=m.catalog.artist.label,d[6]=a):a=d[6],d[7]!==m.catalog?(s=(0,t.jsx)(Q,{catalog:m.catalog}),d[7]=m.catalog,d[8]=s):s=d[8],d[9]!==f||d[10]!==m.catalog.albums?(r=(0,t.jsx)(F,{albums:m.catalog.albums,onPlay:f,title:"Albums"}),d[9]=f,d[10]=m.catalog.albums,d[11]=r):r=d[11],d[12]!==f||d[13]!==m.catalog.singles?(i=(0,t.jsx)(F,{albums:m.catalog.singles,onPlay:f,title:"Singles & EPs"}),d[12]=f,d[13]=m.catalog.singles,d[14]=i):i=d[14],d[15]!==f||d[16]!==m.catalog.compilations?(o=(0,t.jsx)(F,{albums:m.catalog.compilations,onPlay:f,title:"Compilations"}),d[15]=f,d[16]=m.catalog.compilations,d[17]=o):o=d[17],d[18]!==f||d[19]!==m.catalog.appearsOn?(c=(0,t.jsx)(F,{albums:m.catalog.appearsOn,onPlay:f,title:"Appears On"}),d[18]=f,d[19]=m.catalog.appearsOn,d[20]=c):c=d[20],d[21]!==a||d[22]!==s||d[23]!==r||d[24]!==i||d[25]!==o||d[26]!==c?(u=(0,t.jsxs)(t.Fragment,{children:[a,s,r,i,o,c]}
1),d[21]=a,d[22]=s,d[23]=r,d[24]=i,d[25]=o,d[26]=c,d[27]=u):u=d[27],u}var J=e.i(198078);function K(e){let a,s,r,o,c,u,d,f,p,x,h,b=(0,l.c)(36),{contextUri:g}=e,{canPlayInApp:k,engine:j,needsConnect:v,needsReconnect:w,playContext:N,reason:P,setShuffle:A}=I(),_=(0,m.useMusicStore)(X),C=(0,S.useOnOpenApp)();b[0]!==j.hasTrack||b[1]!==A||b[2]!==_?(a=()=>{let e=!_;(0,m.toggleShuffle)(),j.hasTrack&&A(e)},b[0]=j.hasTrack,b[1]=A,b[2]=_,b[3]=a):a=b[3];let T=a,M=!k;b[4]!==g||b[5]!==N||b[6]!==_?(s=()=>N(g,{shuffle:_}),b[4]=g,b[5]=N,b[6]=_,b[7]=s):s=b[7],b[8]===Symbol.for("react.memo_cache_sentinel")?(r=(0,t.jsx)(y.Play,{className:"size-5 fill-current"}),b[8]=r):r=b[8],b[9]!==M||b[10]!==s?(o=(0,t.jsx)(i.Button,{"aria-label":"Play",className:"size-12 rounded-full",disabled:M,onClick:s,size:"icon",children:r}),b[9]=M,b[10]=s,b[11]=o):o=b[11];let U=_?"secondary":"ghost";return b[12]===Symbol.for("react.memo_cache_sentinel")?(c=(0,t.jsx)(J.Shuffle,{className:"size-4"}),b[12]=c):c=b[12],b[13]!==T||b[14]!==_||b[15]!==U?(u=(0,t.jsx)(i.Button,{"aria-label":"Shuffle","aria-pressed":_,onClick:T,size:"icon",variant:U,children:c}),b[13]=T,b[14]=_,b[15]=U,b[16]=u):u=b[16],b[17]!==o||b[18]!==u?(d=(0,t.jsxs)("div",{className:"flex items-center gap-3",children:[o,u]}),b[17]=o,b[18]=u,b[19]=d):d=b[19],b[20]!==v||b[21]!==w||b[22]!==C?(f=v&&(0,t.jsx)(i.Button,{className:"w-fit",onClick:()=>C?.("settings"),size:"sm",variant:"ghost",children:w?"Reconnect Spotify to listen here":"Connect Spotify to listen here"}),b[20]=v,b[21]=w,b[22]=C,b[23]=f):f=b[23],b[24]!==j.errorMessage||b[25]!==v||b[26]!==P?(p=P&&!(v||j.errorMessage)&&(0,t.jsx)(n.Muted,{children:P}),b[24]=j.errorMessage,b[25]=v,b[26]=P,b[27]=p):p=b[27],b[28]!==j.errorMessage||b[29]!==v?(x=j.errorMessage&&!v&&(0,t.jsx)(n.Text,{className:"text-destructive",variant:"caption",children:j.errorMessage}),b[28]=j.errorMessage,b[29]=v,b[30]=x):x=b[30],b[31]!==f||b[32]!==p||b[33]!==x||b[34]!==d?(h=(0,t.jsxs)("div",{className:"mt-1 flex flex-col gap-1.5",children:[d,f,p,x]}),b[31]=f,b[32]=p,b[33]=x,b[34]=d,b[35]=h):h=b[35],h}function X(e){return e.shuffle}function Z(e,t){return e.trim().toLowerCase()===t.trim().toLowerCase()}var ee=e.i(395165),et=e.i(474171);function el(e,t){return`${e} ${1===e?t:`${t}s`}`}function ea(e){let a,s=(0,l.c)(2),{artwork:r}=e;return s[0]!==r?(a=(0,t.jsx)(b.AlbumArt,{className:"size-full rounded-full",imageUrl:r}),s[0]=r,s[1]=a):a=s[1],a}function es(e){let a,s,r,i=(0,l.c)(5),{albums:o}=e;return i[0]===Symbol.for("react.memo_cache_sentinel")?(a=(0,t.jsx)(n.H3,{children:"Albums in your library"}),i[0]=a):a=i[0],i[1]!==o?(s=o.map(er),i[1]=o,i[2]=s):s=i[2],i[3]!==s?(r=(0,t.jsxs)("section",{className:"flex flex-col gap-3",children:[a,(0,t.jsx)(D.CardGrid,{children:s})]}),i[3]=s,i[4]=r):r=i[4],r}function er(e){return(0,t.jsx)(D.AlbumCard,{album:e},e.name)}function ei(e){let a,s,r,i=(0,l.c)(5),{tracks:o}=e;return i[0]===Symbol.for("react.memo_cache_sentinel")?(a=(0,t.jsx)(n.H3,{children:"In your library"}),i[0]=a):a=i[0],i[1]!==o?(s=o.map(e=>(0,t.jsx)(E.TrackRow,{onPlay:()=>(0,u.playLibrarySong)(o,e),track:e},e.id)),i[1]=o,i[2]=s):s=i[2],i[3]!==s?(r=(0,t.jsxs)("section",{className:"flex flex-col gap-3",children:[a,(0,t.jsx)("div",{className:"flex flex-col",children:s})]}),i[3]=s,i[4]=r):r=i[4],r}function en(e){let a,s,r,i=(0,l.c)(5),{tracks:o}=e;return i[0]===Symbol.for("react.memo_cache_sentinel")?(a=(0,t.jsx)(n.H3,{children:"Saved from Spotify"}),i[0]=a):a=i[0],i[1]!==o?(s=o.map(eo),i[1]=o,i[2]=s):s=i[2],i[3]!==s?(r=(0,t.jsxs)("section",{className:"flex flex-col gap-3",children:[a,(0,t.jsx)("div",{className:"flex flex-col",children:s})]}),i[3]=s,i[4]=r):r=i[4],r}function eo(e){return(0,t.jsx)(R,{track:e},e._id)}function ec(e){let a,s=(0,l.c)(4),{header:r,resolution:i,loading:n}=e;if(n&&null===r){let e;return s[0]===Symbol.for("react.memo_cache_sentinel")?(e=(0,t.jsx)(o.Skeleton,{className:"h-4 w-40"}),s[0]=e):e=s[0],e}return s[1]!==r||s[2]!==i?(a=function(e,t){if(e&&e.genres.length>0)return e.genres.slice(0,3).join(" · ");if(e?.followers!==void 0){var l;return`${l=e.followers,new Intl.NumberFormat("en",{notation:"compact",maximumFractionDigits:1}).format(l)} followers`}if(t.localTracks.length>0){let e=(0,d.groupByAlbum)(t.localTracks).length;return`${el(t.localTracks.length,"song")} \xb7 ${el(e,"album")}`}return`${el(t.spotifyTracks.length,"song")} in your library`}(r,i),s[1]=r,s[2]=i,s[3]=a):a=s[3],a}function eu(e){let a,s,r,n,o=(0,l.c)(10),{artist:u,description:d}=e;o[0]!==u?(a=()=>(0,m.setSearchQuery)(u),o[0]=u,o[1]=a):a=o[1],o[2]===Symbol.for("react.memo_cache_sentinel")?(s=(0,t.jsx)(c.Search,{className:"size-4"}),o[2]=s):s=o[2],o[3]!==u||o[4]!==a?(r=(0,t.jsxs)(i.Button,{onClick:a,variant:"secondary",children:[s,"Search for ",u]}),o[3]=u,o[4]=a,o[5]=r):r=o[5];let f=d??"They may still be in your playlists.",p=`We couldn't find ${u}.`;return o[6]!==r||o[7]!==f||o[8]!==p?(n=(0,t.jsx)(ee.DetailEmpty,{action:r,description:f,label:p}),o[6]=r,o[7]=f,o[8]=p,o[9]=n):n=o[9],n}function ed(e){let a,i,n,o,c,m,f,p,y,x,h,b,g,k,v,S,w,N,P,A,_,C,T,M=(0,l.c)(61),{artist:U,source:z,tracks:R}=e,{playContext:D}=I(),E=function(e){let t,a,i,n=(0,l.c)(5),o=(0,r.useAction)(s.api.spotify.playlists.getArtistCatalog);n[0]===Symbol.for("react.memo_cache_sentinel")?(t={kind:"loading"},n[0]=t):t=n[0];
1let[c,u]=(0,j.useState)(t);return n[1]!==o||n[2]!==e?(a=function(){let t=!1;return u({kind:"loading"}),o({name:e}).then(e=>{if(!t){if(e.found)return void u({kind:"loaded",catalog:e});u({kind:"unavailable",message:e.message})}}).catch(e=>{t||(console.error("Failed to load Spotify artist catalog:",e),u({kind:"unavailable",message:"Couldn't load this artist from Spotify. Try again."}))}),()=>{t=!0}},i=[e,o],n[1]=o,n[2]=e,n[3]=a,n[4]=i):(a=n[3],i=n[4]),(0,j.useEffect)(a,i),c}(U);M[0]===Symbol.for("react.memo_cache_sentinel")?(a={},M[0]=a):a=M[0];let L=(0,r.useQuery)(s.api.spotify.library.getTopArtists,a);M[1]===Symbol.for("react.memo_cache_sentinel")?(i={limit:500},M[1]=i):i=M[1];let $=(0,r.useQuery)(s.api.spotify.library.getSavedTracks,i);if(M[2]!==U||M[3]!==E||M[4]!==$||M[5]!==z||M[6]!==L||M[7]!==R){h=Symbol.for("react.early_return_sentinel");e:{var B,O,H,Q,F,q;let e,l,a,s,r,i;if(e=(B={artist:U,localTracks:R,savedTracks:$??[],source:z,spotifyArtists:L??[]}).localTracks.filter(e=>Z(e.artist,B.artist)),l=B.savedTracks.filter(e=>Z(e.artist,B.artist)),a=B.spotifyArtists.find(e=>Z(e.name,B.artist))??null,s=e.length>0,r=null!==a||l.length>0,y={lane:(O=B.source,s||r?"spotify"===O?r?"spotify":"local":s?"local":"spotify":"empty"),localTracks:e,name:B.artist,spotifyArtist:a,spotifyTracks:l},f="loaded"===E.kind?E.catalog.artist:null,p=void 0===L||void 0===$,m=y.localTracks.length>0||y.spotifyTracks.length>0||null!==y.spotifyArtist,H=p,Q=m,"unavailable"===E.kind&&!H&&!Q){let e,l="unavailable"===E.kind?E.message:"";M[17]!==U||M[18]!==l?(e=(0,t.jsx)(eu,{artist:U,description:l}),M[17]=U,M[18]=l,M[19]=e):e=M[19],h=e;break e}({artworkUrl:n,canPlay:o,contextUri:c}=(F=f,q=y,i=F?.spotifyUri??q.spotifyArtist?.spotifyUri??null,{artworkUrl:F?.artworkUrl??q.spotifyArtist?.artworkUrl??null,canPlay:null!==i||q.localTracks.length>0,contextUri:i})),x=(0,d.groupByAlbum)(y.localTracks)}M[2]=U,M[3]=E,M[4]=$,M[5]=z,M[6]=L,M[7]=R,M[8]=n,M[9]=o,M[10]=c,M[11]=m,M[12]=f,M[13]=p,M[14]=y,M[15]=x,M[16]=h}else n=M[8],o=M[9],c=M[10],m=M[11],f=M[12],p=M[13],y=M[14],x=M[15],h=M[16];if(h!==Symbol.for("react.early_return_sentinel"))return h;let V=x;M[20]!==c||M[21]!==D||M[22]!==y.localTracks?(b=c?()=>D(c):()=>(0,u.playLibraryCollection)(y.localTracks),M[20]=c,M[21]=D,M[22]=y.localTracks,M[23]=b):b=M[23];let W=b;M[24]!==n?(g=(0,t.jsx)(ea,{artwork:n}),M[24]=n,M[25]=g):g=M[25],M[26]!==c?(k=c?(0,t.jsx)(K,{contextUri:c}):void 0,M[26]=c,M[27]=k):k=M[27];let J=o?W:void 0,X=p||"loading"===E.kind;M[28]!==f||M[29]!==y||M[30]!==X?(v=(0,t.jsx)(ec,{header:f,loading:X,resolution:y}),M[28]=f,M[29]=y,M[30]=X,M[31]=v):v=M[31],M[32]!==U||M[33]!==v||M[34]!==g||M[35]!==k||M[36]!==J?(S=(0,t.jsx)(et.DetailHeader,{art:g,controls:k,kicker:"Artist",onPlay:J,playLabel:"Play all",subtitle:v,title:U}),M[32]=U,M[33]=v,M[34]=g,M[35]=k,M[36]=J,M[37]=S):S=M[37];let ee=!m;return M[38]!==E||M[39]!==D||M[40]!==ee?(w=(0,t.jsx)(Y,{onPlay:D,showUnavailableNotice:ee,state:E}),M[38]=E,M[39]=D,M[40]=ee,M[41]=w):w=M[41],M[42]!==V||M[43]!==y.localTracks.length?(N=y.localTracks.length>0&&V.length>1&&(0,t.jsx)(es,{albums:V}),M[42]=V,M[43]=y.localTracks.length,M[44]=N):N=M[44],M[45]!==y.localTracks?(P=y.localTracks.length>0&&(0,t.jsx)(ei,{tracks:y.localTracks}),M[45]=y.localTracks,M[46]=P):P=M[46],M[47]!==y.spotifyTracks?(A=y.spotifyTracks.length>0&&(0,t.jsx)(en,{tracks:y.spotifyTracks}),M[47]=y.spotifyTracks,M[48]=A):A=M[48],M[49]!==E.catalog||M[50]!==E.kind?(_="loaded"===E.kind?E.catalog.related:[],M[49]=E.catalog,M[50]=E.kind,M[51]=_):_=M[51],M[52]!==_?(C=(0,t.jsx)(G,{related:_}),M[52]=_,M[53]=C):C=M[53],M[54]!==S||M[55]!==w||M[56]!==N||M[57]!==P||M[58]!==A||M[59]!==C?(T=(0,t.jsxs)("div",{className:"flex flex-col gap-8",children:[S,w,N,P,A,C]}),M[54]=S,M[55]=w,M[56]=N,M[57]=P,M[58]=A,M[59]=C,M[60]=T):T=M[60],T}var em=e.i(65725);function ef(e){let a,i,n,o,c,u,d=(0,l.c)(24),{name:m,spotifyAlbumId:f}=e,p=function(e){let t,a,i,n=(0,l.c)(5),o=(0,r.useAction)(s.api.spotify.catalog.getAlbumDetail);n[0]===Symbol.for("react.memo_cache_sentinel")?(t={kind:"loading"},n[0]=t):t=n[0];
1let[c,u]=(0,j.useState)(t);return n[1]!==o||n[2]!==e?(a=function(){let t=!1;return u({kind:"loading"}),o({spotifyAlbumId:e}).then(e=>{if(t)return;if(!e.found)return void u({kind:"error",message:e.message});let{tracks:l,...a}=e.album;u({kind:"loaded",album:a,tracks:l})}).catch(e=>{t||(console.error("Failed to load Spotify album:",e),u({kind:"error",message:"Couldn't load this album. Try again."}))}),()=>{t=!0}},i=[e,o],n[1]=o,n[2]=e,n[3]=a,n[4]=i):(a=n[3],i=n[4]),(0,j.useEffect)(a,i),c}(f),{playContext:y}=I();if("loading"===p.kind){let e;return d[0]===Symbol.for("react.memo_cache_sentinel")?(e=(0,t.jsx)(em.PanelSkeleton,{className:"h-full",rows:6}),d[0]=e):e=d[0],e}if("error"===p.kind){let e;return d[1]!==p.message?(e=(0,t.jsx)(ee.DetailEmpty,{label:p.message}),d[1]=p.message,d[2]=e):e=d[2],e}let{album:x,tracks:h}=p;d[3]!==x.spotifyUri||d[4]!==y||d[5]!==h[0]?(a=()=>{let e=h[0];e&&y(x.spotifyUri,{offsetUri:e.spotifyUri})},d[3]=x.spotifyUri,d[4]=y,d[5]=h[0],d[6]=a):a=d[6];let g=a;d[7]!==x.artworkUrl?(i=(0,t.jsx)(b.AlbumArt,{className:"size-full",imageUrl:x.artworkUrl}),d[7]=x.artworkUrl,d[8]=i):i=d[8];let k=h.length>0?g:void 0,v=`${x.artist} \xb7 ${h.length} ${1===h.length?"song":"songs"}`;if(d[9]!==m||d[10]!==i||d[11]!==k||d[12]!==v?(n=(0,t.jsx)(et.DetailHeader,{art:i,kicker:"Album",onPlay:k,playLabel:"Play",subtitle:v,title:m}),d[9]=m,d[10]=i,d[11]=k,d[12]=v,d[13]=n):n=d[13],d[14]!==x.spotifyUri||d[15]!==h){let e;d[17]!==x.spotifyUri?(e=e=>(0,t.jsx)(R,{contextUri:x.spotifyUri,showAlbum:!1,track:e},e.spotifyTrackId),d[17]=x.spotifyUri,d[18]=e):e=d[18],o=h.map(e),d[14]=x.spotifyUri,d[15]=h,d[16]=o}else o=d[16];return d[19]!==o?(c=(0,t.jsx)("div",{className:"flex flex-col",children:o}),d[19]=o,d[20]=c):c=d[20],d[21]!==n||d[22]!==c?(u=(0,t.jsxs)("div",{className:"flex flex-col gap-6",children:[n,c]}),d[21]=n,d[22]=c,d[23]=u):u=d[23],u}function ep(e){let a,s,r,i,o=(0,l.c)(10),{tracks:c}=e;o[0]!==c?(a=c.map(ey),o[0]=c,o[1]=a):a=o[1];let u=a;if(o[2]===Symbol.for("react.memo_cache_sentinel")?(s=(0,t.jsx)(n.H3,{children:"Popular"}),o[2]=s):s=o[2],o[3]!==c||o[4]!==u){let e;o[6]!==u?(e=e=>(0,t.jsx)(R,{queueUris:u,showAlbum:!1,track:e},e.spotifyTrackId),o[6]=u,o[7]=e):e=o[7],r=c.map(e),o[3]=c,o[4]=u,o[5]=r}else r=o[5];return o[8]!==r?(i=(0,t.jsxs)("section",{className:"flex flex-col gap-3",children:[s,(0,t.jsx)("div",{className:"flex flex-col",children:r})]}),o[8]=r,o[9]=i):i=o[9],i}function ey(e){return e.spotifyUri}function ex(e){let a,i,o,c,u,d,m,f,p,y=(0,l.c)(32),{name:x,spotifyArtistId:h}=e,g=function(e){let t,a,i,n=(0,l.c)(5),o=(0,r.useAction)(s.api.spotify.catalog.getArtistCatalog);n[0]===Symbol.for("react.memo_cache_sentinel")?(t={kind:"loading"},n[0]=t):t=n[0];
1let[c,u]=(0,j.useState)(t);return n[1]!==o||n[2]!==e?(a=function(){let t=!1;return u({kind:"loading"}),o({spotifyArtistId:e}).then(e=>{t||u(e.found?{about:e.about,albums:e.albums,kind:"loaded",label:e.label,topTracks:e.topTracks}:{kind:"error",message:e.message})}).catch(e=>{t||(console.error("Failed to load Spotify artist catalog:",e),u({kind:"error",message:"Couldn't load this artist. Try again."}))}),()=>{t=!0}},i=[e,o],n[1]=o,n[2]=e,n[3]=a,n[4]=i):(a=n[3],i=n[4]),(0,j.useEffect)(a,i),c}(h),{playTracks:k}=I();if("loading"===g.kind){let e;return y[0]===Symbol.for("react.memo_cache_sentinel")?(e=(0,t.jsx)(em.PanelSkeleton,{className:"h-full",rows:6}),y[0]=e):e=y[0],e}if("error"===g.kind){let e;return y[1]!==g.message?(e=(0,t.jsx)(ee.DetailEmpty,{label:g.message}),y[1]=g.message,y[2]=e):e=y[2],e}let{about:v,albums:S,label:w,topTracks:N}=g,[P]=N,[A]=S,_=P?.artworkUrl??A?.artworkUrl;y[3]!==N?(a=N.map(eb),y[3]=N,y[4]=a):a=y[4];let C=a;y[5]!==P||y[6]!==k||y[7]!==C?(i=()=>{P&&k(C,P.spotifyUri)},y[5]=P,y[6]=k,y[7]=C,y[8]=i):i=y[8];let T=i;y[9]!==_?(o=(0,t.jsx)(b.AlbumArt,{className:"size-full rounded-full",imageUrl:_}),y[9]=_,y[10]=o):o=y[10];let M=N.length>0?T:void 0,U=`${N.length} popular ${1===N.length?"track":"tracks"}`;return y[11]!==x||y[12]!==o||y[13]!==M||y[14]!==U?(c=(0,t.jsx)(et.DetailHeader,{art:o,kicker:"Artist",onPlay:M,playLabel:"Play",subtitle:U,title:x}),y[11]=x,y[12]=o,y[13]=M,y[14]=U,y[15]=c):c=y[15],y[16]!==v||y[17]!==w?(u=(0,t.jsx)(H,{about:v,label:w}),y[16]=v,y[17]=w,y[18]=u):u=y[18],y[19]!==N?(d=N.length>0&&(0,t.jsx)(ep,{tracks:N}),y[19]=N,y[20]=d):d=y[20],y[21]!==S?(m=S.length>0&&(0,t.jsxs)("section",{className:"flex flex-col gap-3",children:[(0,t.jsx)(n.H3,{children:"Discography"}),(0,t.jsx)(D.CardGrid,{children:S.map(eh)})]}),y[21]=S,y[22]=m):m=y[22],y[23]!==S.length||y[24]!==N.length?(f=0===N.length&&0===S.length&&(0,t.jsx)(n.Muted,{children:"Nothing to show for this artist yet."}),y[23]=S.length,y[24]=N.length,y[25]=f):f=y[25],y[26]!==f||y[27]!==c||y[28]!==u||y[29]!==d||y[30]!==m?(p=(0,t.jsxs)("div",{className:"flex flex-col gap-8",children:[c,u,d,m,f]}),y[26]=f,y[27]=c,y[28]=u,y[29]=d,y[30]=m,y[31]=p):p=y[31],p}function eh(e){return(0,t.jsx)(D.MediaCard,{artworkUrl:e.artworkUrl,onOpen:()=>(0,m.openSpotifyAlbumDetail)(e.spotifyAlbumId,e.name),subtitle:e.releaseDate?.slice(0,4),title:e.name},e.spotifyAlbumId)}function eb(e){return e.spotifyUri}e.s(["DetailRouter",0,function(e){let s=(0,l.c)(13),{detail:r,tracks:i}=e;switch(r.kind){case"album":{let e;return s[0]!==r.album||s[1]!==i?(e=(0,t.jsx)(a.AlbumDetailView,{album:r.album,tracks:i}),s[0]=r.album,s[1]=i,s[2]=e):e=s[2],e}case"artist":{let e;return s[3]!==r.artist||s[4]!==r.source||s[5]!==i?(e=(0,t.jsx)(ed,{artist:r.artist,source:r.source,tracks:i}),s[3]=r.artist,s[4]=r.source,s[5]=i,s[6]=e):e=s[6],e}case"song":case"spotifySong":return null;case"spotifyArtist":{let e;return s[7]!==r.name||s[8]!==r.spotifyArtistId?(e=(0,t.jsx)(ex,{name:r.name,spotifyArtistId:r.spotifyArtistId}),s[7]=r.name,s[8]=r.spotifyArtistId,s[9]=e):e=s[9],e}case"spotifyAlbum":{let e;return s[10]!==r.name||s[11]!==r.spotifyAlbumId?(e=(0,t.jsx)(ef,{name:r.name,spotifyAlbumId:r.spotifyAlbumId}),s[10]=r.name,s[11]=r.spotifyAlbumId,s[12]=e):e=s[12],e}default:return r}}],847245);var eg=e.i(931260),ek=e.i(729910),ej=e.i(547523);function ev(e){let a,s,r,o,c,u,d,m,p=(0,l.c)(20),{title:y,onSeeAll:x,defaultOpen:h,children:b}=e,[g,k]=(0,j.useState)(void 0===h||h),v=!g&&"-rotate-90";return p[0]!==v?(a=(0,f.cn)("size-4 shrink-0 text-muted-foreground transition-transform",v),p[0]=v,p[1]=a):a=p[1],p[2]!==a?(s=(0,t.jsx)(ek.ChevronDown,{className:a}),p[2]=a,p[3]=s):s=p[3],p[4]!==y?(r=(0,t.jsx)(n.H3,{children:y}),p[4]=y,p[5]=r):r=p[5],p[6]!==s||p[7]!==r?(o=(0,t.jsx)(eg.CollapsibleTrigger,{render:(0,t.jsxs)("button",{className:"group flex min-w-0 cursor-pointer items-center gap-1.5 rounded-md text-left outline-none focus-visible:ring-2 focus-visible:ring-ring/50",type:"button",children:[s,r]})}),p[6]=s,p[7]=r,p[8]=o):o=p[8],p[9]!==x?(c=x&&(0,t.jsxs)(i.Button,{onClick:x,size:"sm",variant:"ghost",children:["See All",(0,t.jsx)(ej.ChevronRight,{className:"size-4"})]}),p[9]=x,p[10]=c):c=p[10],p[11]!==o||p[12]!==c?(u=(0,t.jsxs)("div",{className:"flex items-center justify-between gap-2",children:[o,c]}),p[11]=o,p[12]=c,p[13]=u):u=p[13],p[14]!==b?(d=(0,t.jsx)(eg.CollapsibleContent,{className:"-mx-2 -my-2",children:(0,t.jsx)("div",{className:"p-2",children:b})}),p[14]=b,p[15]=d):d=p[15],p[16]!==g||p[17]!==u||p[18]!==d?(m=(0,t.jsxs)(eg.Collapsible,{className:"flex flex-col gap-3",onOpenChange:k,open:g,children:[u,d]}),p[16]=g,p[17]=u,p[18]=d,p[19]=m):m=p[19],m}e.s(["DashboardSection",0,ev],405383);var eS=e.i(846787),ew=e.i(550647);function eN(e){return e.trim().toLowerCase()}function eP(e){return("circle"===e.shape?e.title:e.subtitle).trim()}function eA(e,t){if(0===e.length)return null;let l=(t%e.length+e.length)%e.length;return e[l]??null}function e_(e){let t=[];for(let l of e){let e=eP(l);if(!e)continue;let a=eN(e),s=t.find(e=>eN(e.artist)===a);s?s.count+=1:t.push({artist:e,count:1})}return t.slice().sort((e,t)=>
1t.count-e.count)}function eC(e){let t=new Map;for(let l of e){let e=eN(l.album);if(!e)continue;let a=t.get(e);a?(a.trackIds.push(l.id),a.addedAt=Math.min(a.addedAt,l.addedAt)):t.set(e,{addedAt:l.addedAt,album:l.album,artist:l.artist,trackIds:[l.id]})}return[...t.values()]}function eT(e){let t=new Set;for(let l of e)"local"===l.replay.kind&&t.add(l.replay.trackId);return t}function eM(e){let t=new Set;for(let l of e){let e=eP(l);e&&t.add(eN(e))}return t}let eU="music:bannerSalt";function eI(e){return{addedAt:e.addedAt,album:e.album,artist:e.artist,id:e.id,title:e.title}}function ez(e){let a,s=(0,l.c)(7),{activeIndex:r,count:i,onSelect:n}=e;if(i<=1)return null;if(s[0]!==r||s[1]!==i||s[2]!==n){let e;s[4]!==r||s[5]!==n?(e=(e,l)=>(0,t.jsx)("button",{"aria-label":`Show suggestion ${l+1}`,className:(0,f.cn)("size-1.5 cursor-pointer rounded-full outline-none transition-all",l===r?"w-4 bg-foreground/80":"bg-foreground/30 hover:bg-foreground/50"),onClick:()=>n(l),type:"button"},l),s[4]=r,s[5]=n,s[6]=e):e=s[6],a=(0,t.jsx)("div",{className:"absolute right-5 bottom-5 z-10 flex items-center gap-1.5 sm:right-7 sm:bottom-7",children:Array.from({length:i},e)}),s[0]=r,s[1]=i,s[2]=n,s[3]=a}else a=s[3];return a}function eR(e){let a,s,r,o,c,u,d,m,p,y,x,h,g,k,j=(0,l.c)(39),{slide:v,onNavigate:S}=e,w="circle"===v.shape,N=`Open ${v.title}`;j[0]!==S||j[1]!==v.nav?(a=()=>S(v.nav),j[0]=S,j[1]=v.nav,j[2]=a):a=j[2];let P=v.title,A=w&&"rounded-full";return j[3]!==A?(s=(0,f.cn)("size-28 shadow-lg transition-transform group-hover:scale-[1.03] sm:size-36",A),j[3]=A,j[4]=s):s=j[4],j[5]!==v.artworkUrl||j[6]!==v.title||j[7]!==s?(r=(0,t.jsx)(b.AlbumArt,{alt:P,className:s,imageUrl:v.artworkUrl}),j[5]=v.artworkUrl,j[6]=v.title,j[7]=s,j[8]=r):r=j[8],j[9]!==N||j[10]!==a||j[11]!==r?(o=(0,t.jsx)("button",{"aria-label":N,className:"shrink-0 cursor-pointer rounded-xl outline-none",onClick:a,type:"button",children:r}),j[9]=N,j[10]=a,j[11]=r,j[12]=o):o=j[12],j[13]!==v.overline?(c=(0,t.jsx)(n.Text,{as:"span",variant:"overline",children:v.overline}),j[13]=v.overline,j[14]=c):c=j[14],j[15]!==S||j[16]!==v.nav?(u=()=>S(v.nav),j[15]=S,j[16]=v.nav,j[17]=u):u=j[17],j[18]!==v.title?(d=(0,t.jsx)(n.H2,{className:"truncate",children:v.title}),j[18]=v.title,j[19]=d):d=j[19],j[20]!==d||j[21]!==u?(m=(0,t.jsx)("button",{className:"min-w-0 cursor-pointer text-left outline-none",onClick:u,type:"button",children:d}),j[20]=d,j[21]=u,j[22]=m):m=j[22],j[23]!==v.subtitle?(p=v.subtitle&&(0,t.jsx)(n.Muted,{className:"truncate",children:v.subtitle}),j[23]=v.subtitle,j[24]=p):p=j[24],j[25]!==S||j[26]!==v.nav?(y=()=>S(v.nav),j[25]=S,j[26]=v.nav,j[27]=y):y=j[27],j[28]===Symbol.for("react.memo_cache_sentinel")?(x=(0,t.jsx)(ej.ChevronRight,{className:"size-4"}),j[28]=x):x=j[28],j[29]!==y?(h=(0,t.jsx)("div",{className:"flex flex-wrap items-center gap-2 pt-2",children:(0,t.jsxs)(i.Button,{onClick:y,size:"sm",variant:"secondary",children:["Open",x]})}),j[29]=y,j[30]=h):h=j[30],j[31]!==m||j[32]!==p||j[33]!==h||j[34]!==c?(g=(0,t.jsxs)("div",{className:"flex min-w-0 flex-col gap-1.5",children:[c,m,p,h]}),j[31]=m,j[32]=p,j[33]=h,j[34]=c,j[35]=g):g=j[35],j[36]!==g||j[37]!==o?(k=(0,t.jsxs)("div",{className:"group relative flex items-center gap-5 p-5 sm:gap-7 sm:p-7",children:[o,g]}),j[36]=g,j[37]=o,j[38]=k):k=j[38],k}function eD(e){let a,s,r=(0,l.c)(3),{artworkUrl:i}=e,[n,o]=(0,j.useState)(!1);return n?null:(r[0]===Symbol.for("react.memo_cache_sentinel")?(a=()=>o(!0),r[0]=a):a=r[0],r[1]!==i?(s=(0,t.jsx)("img",{alt:"","aria-hidden":"true",className:"absolute inset-0 size-full scale-125 object-cover blur-2xl",height:300,onError:a,src:i,width:300}),r[1]=i,r[2]=s):s=r[2],s)}function eE(e){let a,s,r,i,n=(0,l.c)(9),{slide:o,onNavigate:c}=e;return n[0]!==o.artworkUrl?(a=o.artworkUrl&&(0,t.jsx)(eD,{artworkUrl:o.artworkUrl}),n[0]=o.artworkUrl,n[1]=a):a=n[1],n[2]===Symbol.for("react.memo_cache_sentinel")?(s=(0,t.jsx)("div",{className:"absolute inset-0 bg-card backdrop-blur-2xl"}),n[2]=s):s=n[2],n[3]!==c||n[4]!==o?(r=(0,t.jsx)("div",{className:"relative",children:(0,t.jsx)(eR,{onNavigate:c,slide:o})}),n[3]=c,n[4]=o,n[5]=r):r=n[5],n[6]!==a||n[7]!==r?(i=(0,t.jsxs)("div",{className:"relative overflow-hidden rounded-2xl",children:[a,s,r]}),n[6]=a,n[7]=r,n[8]=i):i=n[8],i}function eL(){let e,a,i,n,o,c,u,d,f,p,y,x,b=(0,l.c)(34),g=(0,ew.useReducedMotion)()??!1,k=function(){let e,t=(0,l.c)(3),{canPlayInApp:a,playContext:s}=I();return t[0]!==a||t[1]!==s?(e=e=>{switch(e.kind){case"album":return void(0,m.openAlbumDetail)(e.album);case"artist":return void(0,m.openArtistDetail)(e.artist);case"musicPlaylist":return void(0,m.selectMusicPlaylist)(e.playlistId);case"spotifyPlaylist":return void(0,m.selectPlaylist)(e.playlistId);case"spotifyAlbum":(0,m.openArtistDetail)(e.artist,"spotify"),a&&s(e.contextUri);return;default:return e}},t[0]=a,t[1]=s,t[2]=e):e=t[2],e}(),v=(0,h.useRecentlyPlayed)(),S=(0,r.useQuery)(s.api.music.queries.listLibrary,{})??[],w=(0,r.useQuery)(s.api.spotify.library.getPlaylists,{})??[],N=(0,r.useQuery)(s.api.music.playlists.listPlaylists,{})??[],P=(0,r.useQuery)(s.api.spotify.library.getNewReleases,{})??[];if(b[0]===Symbol.for("react.memo_cache_sentinel"))e=Math.floor(Date.now()/864e5)+function(){try{let e=window.localStorage.getItem(eU);if(null!==e){let t=Number.parseInt(e,10);if(Number.isFinite(t))return t}let t=Math.floor(1e5*Math.random());return window.localStorage.setItem(eU,String(t)),t}catch{return 0}}(),b[0]=e;else e=b[0];let A=e;if(b[1]!==S||b[2]!==N||b[3]!==v||b[4]!==P||b[5]!==w){let e=[...N.map(eO),...w.map(eB)];a=function(e){var t,l;let a,s,r,i,n,o=[function(e){var t;let l,a,s=e_(e.recentlyPlayed);if(0===s.length)return null;let r=s.filter(e=>e.count>=2),i=r.length>0,n=i?eA(r,e.daySeed):s[0]??null;return n?{artworkUrl:(t=e.recentlyPlayed,l=eN(n.artist),a=t.find(e=>eN(eP(e))===l),a?.artworkUrl??null),id:`onRepeat:${eN(n.artist)}`,nav:{kind:"artist",artist:n.artist},overline:i?"On repeat":"Pick up where you left off",shape:"circle",subtitle:i?"You keep coming back to this":"Right where you left it",theme:"onRepeat",title:n.artist}:null}(e),function(e){let t,l;if(e.library.length<4)return null;let a=(l=Math.floor((t=e.library.map(e=>e.addedAt).sort((e,t)=>
1e-t)).length/2),t[l]??0),s=eT(e.recentlyPlayed),r=eM(e.recentlyPlayed),i=eA(eC(e.library).filter(e=>e.addedAt<=a&&!r.has(eN(e.artist))&&e.trackIds.every(e=>!s.has(e))).sort((e,t)=>e.addedAt-t.addedAt).slice(0,5),e.daySeed);return i?{artworkUrl:null,id:`throwback:${eN(i.album)}`,nav:{kind:"album",album:i.album},overline:"Throwback",shape:"square",subtitle:"You added this a while back",theme:"throwback",title:i.album}:null}(e),function(e){let t=eA(e.recommended,e.daySeed);if(!t)return null;let l=e_(e.recentlyPlayed)[0]?.artist;return{artworkUrl:t.artworkUrl,id:`discovery:seeded:${t.contextUri}`,nav:{artist:t.artist,contextUri:t.contextUri,kind:"spotifyAlbum"},overline:"New for you",shape:"square",subtitle:l?`Because you keep playing ${l}`:"Seeded from your top artists",theme:"discovery",title:t.album}}(e)??(a=eT((t=e).recentlyPlayed),s=eM(t.recentlyPlayed),(r=eA(eC(t.library).filter(e=>!s.has(eN(e.artist))&&e.trackIds.every(e=>!a.has(e))).sort((e,t)=>t.addedAt-e.addedAt).slice(0,5),t.daySeed))?{artworkUrl:null,id:`discovery:unplayed:${eN(r.album)}`,nav:{kind:"album",album:r.album},overline:"Still unplayed",shape:"square",subtitle:"In your library, never started",theme:"discovery",title:r.album}:null)??(i=eM((l=e).recentlyPlayed),(n=eA(l.playlists.filter(e=>e.trackCount>0&&!i.has(eN(e.name))),l.daySeed))?{artworkUrl:null,id:`discovery:playlist:${n.kind}:${n.id}`,nav:"music"===n.kind?{kind:"musicPlaylist",playlistId:n.id}:{kind:"spotifyPlaylist",playlistId:n.id},overline:"Back into rotation",shape:"square",subtitle:"A playlist you built",theme:"discovery",title:n.name}:null),function(e){let t=e_(e.recentlyPlayed);if(0===t.length)return null;let l=eT(e.recentlyPlayed),a=eC(e.library),s=(e.daySeed%t.length+t.length)%t.length;for(let e=0;e<t.length;e++){let r=t[(s+e)%t.length];if(!r)continue;let i=eN(r.artist),n=a.find(e=>eN(e.artist)===i&&e.trackIds.some(e=>!l.has(e)));if(n)return{artworkUrl:null,id:`spotlight:${eN(n.album)}`,nav:{kind:"album",album:n.album},overline:"Artist spotlight",shape:"square",subtitle:`Deep cut from ${r.artist}`,theme:"spotlight",title:n.album}}return null}(e)],c=[],u=new Set;for(let e of o){if(!e)continue;let t=function(e){switch(e.kind){case"album":return`album:${eN(e.album)}`;case"artist":return`artist:${eN(e.artist)}`;case"musicPlaylist":return`musicPlaylist:${e.playlistId}`;case"spotifyPlaylist":return`spotifyPlaylist:${e.playlistId}`;case"spotifyAlbum":return`spotifyAlbum:${e.contextUri}`;default:return e}}(e.nav);u.has(t)||(u.add(t),c.push(e))}return c.slice(0,4)}({daySeed:A,library:S.map(eI),playlists:e,recentlyPlayed:v,recommended:P.map(e$)}),b[1]=S,b[2]=N,b[3]=v,b[4]=P,b[5]=w,b[6]=a}else a=b[6];let _=a,C=_.length>1;b[7]!==C?(i={active:C,loop:C},b[7]=C,b[8]=i):i=b[8];let T=i,[M,U]=(0,j.useState)(),[z,R]=(0,j.useState)(0);if(b[9]!==M?(n=()=>{if(!M)return;let e=()=>R(M.selectedScrollSnap());return e(),M.on("select",e),M.on("reInit",e),()=>{M.off("select",e),M.off("reInit",e)}},o=[M],b[9]=M,b[10]=n,b[11]=o):(n=b[10],o=b[11]),(0,j.useEffect)(n,o),b[12]!==M||b[13]!==C||b[14]!==g?(c=()=>{if(!M||g||!C)return;let e=setInterval(()=>M.scrollNext(),9e3);return()=>clearInterval(e)},u=[M,g,C],b[12]=M,b[13]=C,b[14]=g,b[15]=c,b[16]=u):(c=b[15],u=b[16]),(0,j.useEffect)(c,u),0===_.length)return null;if(b[17]!==k||b[18]!==_){let e;b[20]!==k?(e=e=>(0,t.jsx)(eS.CarouselItem,{className:"pl-0",children:(0,t.jsx)(eE,{onNavigate:k,slide:e})},e.id),b[20]=k,b[21]=e):e=b[21],d=_.map(e),b[17]=k,b[18]=_,b[19]=d}else d=b[19];return b[22]!==d?(f=(0,t.jsx)(eS.CarouselContent,{className:"ml-0",children:d}),b[22]=d,b[23]=f):f=b[23],b[24]!==M?(p=e=>M?.scrollTo(e),b[24]=M,b[25]=p):p=b[25],b[26]!==z||b[27]!==_.length||b[28]!==p?(y=(0,t.jsx)(ez,{activeIndex:z,count:_.length,onSelect:p}),b[26]=z,b[27]=_.length,b[28]=p,b[29]=y):y=b[29],b[30]!==T||b[31]!==y||b[32]!==f?(x=(0,t.jsx)("section",{className:"relative overflow-hidden rounded-2xl border border-border",children:(0,t.jsxs)(eS.Carousel,{opts:T,setApi:U,children:[f,y]})}),b[30]=T,b[31]=y,b[32]=f,b[33]=x):x=b[33],x}function e$(e){return{album:e.name,artist:e.artist,artworkUrl:e.artworkUrl??null,contextUri:e.spotifyUri}}function eB(e){return{id:e.spotifyPlaylistId,kind:"spotify",name:e.name,trackCount:e.trackCount}}function eO(e){return{id:e._id,kind:"music",name:e.name,trackCount:e.trackCount}}e.s(["FeaturedHero",0,eL],784278);var eH=e.i(220023);function eQ(e){let a,s,r,i,o,c,d,m,p,x=(0,l.c)(25),{entry:h,libraryTracks:g,spotify:k}=e,j=`Play ${h.title}`;x[0]!==h.replay||x[1]!==g||x[2]!==k?(a=()=>(function(e,t,l){switch(e.kind){case"local":(0,u.replayLibraryTrack)(l,e.trackId);break;case"spotifyTrack":t.playTrack(e.trackUri);break;case"spotifyContext":t.playContext(e.contextUri);break;default:return e}})(h.replay,k,g),x[0]=h.replay,x[1]=g,x[2]=k,x[3]=a):a=x[3];let v=h.title,S="circle"===h.shape&&"rounded-full";return x[4]!==S?(s=(0,f.cn)("w-full",S),x[4]=S,x[5]=s):s=x[5],x[6]!==h.artworkUrl||x[7]!==h.title||x[8]!==s?(r=(0,t.jsx)(b.AlbumArt,{alt:v,className:s,imageUrl:h.artworkUrl}),x[6]=h.artworkUrl,x[7]=h.title,x[8]=s,x[9]=r):r=x[9],x[10]===Symbol.for("react.memo_cache_sentinel")?(i=(0,t.jsx)("span",{className:"absolute right-2 bottom-2 flex size-9 items-center justify-center rounded-full bg-primary text-primary-foreground opacity-0 shadow-md transition-opacity group-hover:opacity-100",children:(0,t.jsx)(y.Play,{className:"size-4 fill-current"})}),x[10]=i):i=x[10],x[11]!==r?(o=(0,t.jsxs)("div",{className:"relative",children:[r,i]}),x[11]=r,x[12]=o):o=x[12],x[13]!==h.title?(c=(0,t.jsx)(n.Text,{as:"span",className:"truncate",variant:"label",children:h.title}
1),x[13]=h.title,x[14]=c):c=x[14],x[15]!==h.subtitle?(d=(0,t.jsx)(n.Text,{as:"span",className:"truncate",variant:"caption",children:h.subtitle}),x[15]=h.subtitle,x[16]=d):d=x[16],x[17]!==d||x[18]!==c?(m=(0,t.jsxs)("span",{className:"flex min-w-0 flex-col",children:[c,d]}),x[17]=d,x[18]=c,x[19]=m):m=x[19],x[20]!==j||x[21]!==m||x[22]!==a||x[23]!==o?(p=(0,t.jsxs)("button",{"aria-label":j,className:"group flex w-36 shrink-0 cursor-pointer select-none flex-col gap-2 rounded-xl text-left outline-none ring-ring/50 transition-transform hover:-translate-y-0.5 focus-visible:ring-2",onClick:a,type:"button",children:[o,m]}),x[20]=j,x[21]=m,x[22]=a,x[23]=o,x[24]=p):p=x[24],p}function eF(e){let a,s,r=(0,l.c)(9),{entries:i,libraryTracks:n}=e,o=I();if(r[0]!==i||r[1]!==n||r[2]!==o){let e;r[4]!==n||r[5]!==o?(e=e=>(0,t.jsx)(eQ,{entry:e,libraryTracks:n,spotify:o},e.key),r[4]=n,r[5]=o,r[6]=e):e=r[6],a=i.map(e),r[0]=i,r[1]=n,r[2]=o,r[3]=a}else a=r[3];return r[7]!==a?(s=(0,t.jsx)(ev,{title:"Recently Played",children:(0,t.jsx)("div",{className:"-mx-1 flex gap-4 overflow-x-auto px-1 py-2",children:a})}),r[7]=a,r[8]=s):s=r[8],s}function eq(){let e,a=(0,l.c)(3),i=(0,h.useRecentlyPlayed)(),{gate:n}=(0,eH.useGuestGate)(),o=i.some(eG),c=(0,r.useQuery)(s.api.music.queries.listLibrary,o?n({}):"skip")??[];return 0===i.length?null:(a[0]!==i||a[1]!==c?(e=(0,t.jsx)(eF,{entries:i,libraryTracks:c}),a[0]=i,a[1]=c,a[2]=e):e=a[2],e)}function eG(e){return"local"===e.replay.kind}function eV(e){let a,s,r,i,o,c,u=(0,l.c)(14),{playlist:d}=e,f=1===d.trackCount?"track":"tracks";return u[0]!==d._id?(a=()=>(0,m.selectMusicPlaylist)(d._id),u[0]=d._id,u[1]=a):a=u[1],u[2]===Symbol.for("react.memo_cache_sentinel")?(s=(0,t.jsx)(b.AlbumArt,{className:"w-full"}),u[2]=s):s=u[2],u[3]!==d.name?(r=(0,t.jsx)(n.Text,{as:"span",className:"truncate",variant:"label",children:d.name}),u[3]=d.name,u[4]=r):r=u[4],u[5]!==d.trackCount||u[6]!==f?(i=(0,t.jsxs)(n.Text,{as:"span",className:"truncate",variant:"caption",children:[d.trackCount," ",f]}),u[5]=d.trackCount,u[6]=f,u[7]=i):i=u[7],u[8]!==r||u[9]!==i?(o=(0,t.jsxs)("span",{className:"flex min-w-0 flex-col",children:[r,i]}),u[8]=r,u[9]=i,u[10]=o):o=u[10],u[11]!==a||u[12]!==o?(c=(0,t.jsxs)("button",{className:"group flex min-w-0 cursor-pointer select-none flex-col gap-2 rounded-xl text-left outline-none ring-ring/50 transition-transform hover:-translate-y-0.5 focus-visible:ring-2 focus-visible:ring-offset-2",onClick:a,type:"button",children:[s,o]}),u[11]=a,u[12]=o,u[13]=c):c=u[13],c}function eW(e){let a,s,r,i,n,o,c,u,m=(0,l.c)(15),{tracks:f}=e;if(m[0]!==f){o=Symbol.for("react.early_return_sentinel");e:{let e=(0,d.groupByArtist)(f).slice(0,6);if(0===e.length){o=null;break e}s=ev,i=eJ,n="Artists",a=D.CardGrid,r=e.map(eY)}m[0]=f,m[1]=a,m[2]=s,m[3]=r,m[4]=i,m[5]=n,m[6]=o}else a=m[1],s=m[2],r=m[3],i=m[4],n=m[5],o=m[6];return o!==Symbol.for("react.early_return_sentinel")?o:(m[7]!==a||m[8]!==r?(c=(0,t.jsx)(a,{children:r}),m[7]=a,m[8]=r,m[9]=c):c=m[9],m[10]!==s||m[11]!==i||m[12]!==n||m[13]!==c?(u=(0,t.jsx)(s,{onSeeAll:i,title:n,children:c}),m[10]=s,m[11]=i,m[12]=n,m[13]=c,m[14]=u):u=m[14],u)}function eY(e){return(0,t.jsx)(D.ArtistCard,{artist:e},e.name)}function eJ(){return(0,m.setView)("artists")}function eK(e){let a,s,r,i,n,o,c,u,m=(0,l.c)(15),{tracks:f}=e;if(m[0]!==f){o=Symbol.for("react.early_return_sentinel");e:{let e=(0,d.groupByAlbum)(f).slice(0,6);if(0===e.length){o=null;break e}s=ev,i=eZ,n="Albums",a=D.CardGrid,r=e.map(eX)}m[0]=f,m[1]=a,m[2]=s,m[3]=r,m[4]=i,m[5]=n,m[6]=o}else a=m[1],s=m[2],r=m[3],i=m[4],n=m[5],o=m[6];return o!==Symbol.for("react.early_return_sentinel")?o:(m[7]!==a||m[8]!==r?(c=(0,t.jsx)(a,{children:r}),m[7]=a,m[8]=r,m[9]=c):c=m[9],m[10]!==s||m[11]!==i||m[12]!==n||m[13]!==c?(u=(0,t.jsx)(s,{onSeeAll:i,title:n,children:c}),m[10]=s,m[11]=i,m[12]=n,m[13]=c,m[14]=u):u=m[14],u)}function eX(e){return(0,t.jsx)(D.AlbumCard,{album:e},e.name)}function eZ(){return(0,m.setView)("albums")}function e0(){let e,a=(0,l.c)(4),i=(0,r.useQuery)(s.api.music.playlists.listPlaylists,{})??[],o=0===i.length?(0,t.jsx)(n.Muted,{children:"No playlists yet. Create one from the sidebar, or ask Ora to build one from your audio."}):(0,t.jsx)(D.CardGrid,{children:i.slice(0,6).map(e1)});return a[0]!==ev||a[1]!==e2||a[2]!==o?(e=(0,t.jsx)(ev,{onSeeAll:e2,title:"Playlists",children:o}),a[0]=ev,a[1]=e2,a[2]=o,a[3]=e):e=a[3],e}function e1(e){return(0,t.jsx)(eV,{playlist:e},e._id)}function e2(){return(0,m.setView)("musicPlaylists")}
1function e3(e){let a,s,r,i,n,o,c,d,m=(0,l.c)(15),{tracks:f}=e;if(m[0]!==f){o=Symbol.for("react.early_return_sentinel");e:{let e=f.toSorted(e5).slice(0,6);if(0===e.length){o=null;break e}a=ev,i=e4,n="Songs",s="flex flex-col",r=e.map(l=>(0,t.jsx)(E.TrackRow,{onPlay:()=>(0,u.playLibrarySong)(e,l),track:l},l.id))}m[0]=f,m[1]=a,m[2]=s,m[3]=r,m[4]=i,m[5]=n,m[6]=o}else a=m[1],s=m[2],r=m[3],i=m[4],n=m[5],o=m[6];return o!==Symbol.for("react.early_return_sentinel")?o:(m[7]!==s||m[8]!==r?(c=(0,t.jsx)("div",{className:s,children:r}),m[7]=s,m[8]=r,m[9]=c):c=m[9],m[10]!==a||m[11]!==i||m[12]!==n||m[13]!==c?(d=(0,t.jsx)(a,{onSeeAll:i,title:n,children:c}),m[10]=a,m[11]=i,m[12]=n,m[13]=c,m[14]=d):d=m[14],d)}function e4(){return(0,m.setView)("songs")}function e5(e,t){return e.title.localeCompare(t.title)}function e6(e,t){return e.title.localeCompare(t.title)}e.s(["RecentlyPlayedShelf",0,eq],358010),e.s(["MusicPlaylistCard",0,eV],36892),e.s(["HomeView",0,function(e){let a,s,r,i,o,c,u,d,m=(0,l.c)(13),{tracks:f}=e;return m[0]===Symbol.for("react.memo_cache_sentinel")?(a=(0,t.jsx)(n.H1,{children:"My Music"}),s=(0,t.jsx)(eL,{}),r=(0,t.jsx)(eq,{}),m[0]=a,m[1]=s,m[2]=r):(a=m[0],s=m[1],r=m[2]),m[3]!==f?(i=(0,t.jsx)(eW,{tracks:f}),o=(0,t.jsx)(eK,{tracks:f}),m[3]=f,m[4]=i,m[5]=o):(i=m[4],o=m[5]),m[6]===Symbol.for("react.memo_cache_sentinel")?(c=(0,t.jsx)(e0,{}),m[6]=c):c=m[6],m[7]!==f?(u=(0,t.jsx)(e3,{tracks:f}),m[7]=f,m[8]=u):u=m[8],m[9]!==i||m[10]!==o||m[11]!==u?(d=(0,t.jsxs)("div",{className:"flex flex-col gap-8",children:[a,s,r,i,o,c,u]}),m[9]=i,m[10]=o,m[11]=u,m[12]=d):d=m[12],d}],855511),e.s(["RecentlyAddedView",0,function(e){let a,s,r,i=(0,l.c)(5),{tracks:o}=e;return i[0]===Symbol.for("react.memo_cache_sentinel")?(a=(0,t.jsx)(n.H1,{children:"Recently Added"}),i[0]=a):a=i[0],i[1]!==o?(s=o.map(e=>(0,t.jsx)(D.TrackCard,{queue:o,track:e},e.id)),i[1]=o,i[2]=s):s=i[2],i[3]!==s?(r=(0,t.jsxs)("div",{className:"flex flex-col gap-4",children:[a,(0,t.jsx)(D.CardGrid,{children:s})]}),i[3]=s,i[4]=r):r=i[4],r}],869051),e.s(["SongsView",0,function(e){let a,s,r,i,o,c,d=(0,l.c)(13),{tracks:m}=e;if(d[0]!==m){let e=m.toSorted(e6);r="flex flex-col gap-4",d[5]===Symbol.for("react.memo_cache_sentinel")?(i=(0,t.jsx)(n.H1,{children:"Songs"}),d[5]=i):i=d[5],a="flex flex-col",s=e.map(l=>(0,t.jsx)(E.TrackRow,{onPlay:()=>(0,u.playLibrarySong)(e,l),track:l},l.id)),d[0]=m,d[1]=a,d[2]=s,d[3]=r,d[4]=i}else a=d[1],s=d[2],r=d[3],i=d[4];return d[6]!==a||d[7]!==s?(o=(0,t.jsx)("div",{className:a,children:s}),d[6]=a,d[7]=s,d[8]=o):o=d[8],d[9]!==r||d[10]!==i||d[11]!==o?(c=(0,t.jsxs)("div",{className:r,children:[i,o]}),d[9]=r,d[10]=i,d[11]=o,d[12]=c):c=d[12],c}],282109);var e7=e.i(914325);e.s(["Repeat1",()=>e7.default],546417)},317135,254410,e=>{"use strict";var t=e.i(540456);e.s(["SkipBack",()=>t.default],317135);var l=e.i(466697);e.s(["SkipForward",()=>l.default],254410)},129841,e=>{"use strict";var t=e.i(931718),l=e.i(729386);e.i(116233);var a=e.i(235893),s=e.i(341965),r=e.i(8513),i=e.i(699597),n=e.i(632137),o=e.i(61979),o=o,c=e.i(377234),u=e.i(983729),d=e.i(810014),m=e.i(212566),f=e.i(221662);function p(e){let a,s,r,o,f,p,y,x,h=(0,l.c)(23),{index:b,isCurrent:g,isPlaying:k,track:j}=e,v=g&&"bg-surface-hover";h[0]!==v?(a=(0,n.cn)("group relative flex w-full select-none items-center gap-2.5 rounded-md px-2 py-1.5 transition-colors hover:bg-surface-hover",v),h[0]=v,h[1]=a):a=h[1];let S=`Play ${j?.title??"track"}`;h[2]!==b?(s=()=>(0,u.jumpToQueueIndex)(b),h[2]=b,h[3]=s):s=h[3],h[4]!==S||h[5]!==s?(r=(0,t.jsx)("button",{"aria-label":S,className:"absolute inset-0 cursor-pointer rounded-md outline-none",onClick:s,type:"button"}),h[4]=S,h[5]=s,h[6]=r):r=h[6];let w=j?.title??"";return h[7]!==w?(o=(0,t.jsx)(d.AlbumArt,{alt:w,className:"size-9"}),h[7]=w,h[8]=o):o=h[8],h[9]!==g||h[10]!==k?(f=g&&(0,t.jsx)(m.NowPlayingBadge,{paused:!k}),h[9]=g,h[10]=k,h[11]=f):f=h[11],h[12]!==o||h[13]!==f?(p=(0,t.jsxs)("span",{className:"pointer-events-none relative shrink-0",children:[o,f]}),h[12]=o,h[13]=f,h[14]=p):p=h[14],h[15]!==g||h[16]!==j?(y=(0,t.jsx)("span",{className:"relative flex min-w-0 flex-col items-start",children:j?(0,t.jsxs)(t.Fragment,{children:[(0,t.jsx)(c.EntityLink,{label:j.title,target:{kind:"song",trackId:j.id},variant:g?"labelBold":"label"}),(0,t.jsx)(c.EntityLink,{label:j.artist,muted:!0,target:{kind:"artist",artist:j.artist,source:"local"}})]}):(0,t.jsx)(i.Text,{as:"span",className:"pointer-events-none truncate",variant:g?"labelBold":"label",children:"Unknown track"})}),h[15]=g,h[16]=j,h[17]=y):y=h[17],h[18]!==y||h[19]!==a||h[20]!==r||h[21]!==p?(x=(0,t.jsxs)("div",{className:a,children:[r,p,y]}),h[18]=y,h[19]=a,h[20]=r,h[21]=p,h[22]=x):x=h[22],x}function y(){let e,a,i,n,o=(0,l.c)(8),c=(0,u.useMusicStore)(g),d=(0,u.useMusicStore)(b),m=(0,u.useMusicStore)(h),y=new Map(((0,f.usePlayback)()?.tracks??[]).map(x)),k=(n=new Map,c.map((e,t)=>{let l=n.get(e)??0;return n.set(e,l+1),{id:e,index:t,key:0===l?e:`${e}#${l}`}}));o[0]===Symbol.for("react.memo_cache_sentinel")?(e=(0,t.jsx)(s.PopoverHeader,{className:"px-3 pt-3 pb-1",children:(0,t.jsx)(s.PopoverTitle,{children:"Queue"})}
1),o[0]=e):e=o[0];let j=r.ScrollArea,v="max-h-80 px-1 pb-2",S="flex flex-col",w=k.map(e=>(0,t.jsx)(p,{index:e.index,isCurrent:e.index===d,isPlaying:m,track:y.get(e.id)},e.key));return o[1]!==S||o[2]!==w?(a=(0,t.jsx)("div",{className:S,children:w}),o[1]=S,o[2]=w,o[3]=a):a=o[3],o[4]!==j||o[5]!==v||o[6]!==a?(i=(0,t.jsx)(j,{classNameViewport:v,children:a}),o[4]=j,o[5]=v,o[6]=a,o[7]=i):i=o[7],(0,t.jsxs)("div",{className:"flex flex-col",children:[e,i]})}function x(e){return[e.id,e]}function h(e){return e.isPlaying}function b(e){return e.queueIndex}function g(e){return e.queue}function k(e){return e.queue.length>0}e.s(["QueueButton",0,function(){let e,r,i=(0,l.c)(2);return(0,u.useMusicStore)(k)?(i[0]===Symbol.for("react.memo_cache_sentinel")?(e=(0,t.jsx)(s.PopoverTrigger,{render:(0,t.jsx)(a.Button,{"aria-label":"Queue",size:"icon-sm",variant:"ghost",children:(0,t.jsx)(o.default,{className:"size-4"})})}),i[0]=e):e=i[0],i[1]===Symbol.for("react.memo_cache_sentinel")?(r=(0,t.jsxs)(s.Popover,{children:[e,(0,t.jsx)(s.PopoverContent,{align:"end",className:"w-80 p-0",children:(0,t.jsx)(y,{})})]}),i[1]=r):r=i[1],r):null}],129841)},628631,e=>{"use strict";var t=e.i(931718),l=e.i(729386),a=e.i(108450),s=e.i(283164);e.i(857266);var r=e.i(246257);e.i(116233);var i=e.i(175386),n=e.i(237418),o=e.i(699597),c=e.i(640151),u=e.i(129454),d=e.i(485954),m=e.i(220023),f=e.i(755949),p=e.i(565216),y=e.i(847245),x=e.i(855511),h=e.i(697346),b=e.i(869051),g=e.i(282109),k=e.i(235893),j=e.i(583616),v=e.i(893111),S=e.i(717343),w=e.i(632137),N=e.i(924952),P=e.i(45526),A=e.i(315542),_=e.i(546417),C=e.i(198078),T=e.i(317135),M=e.i(254410),U=e.i(377234),I=e.i(812507),z=e.i(983729),R=e.i(810014),D=e.i(212566),E=e.i(129841),L=e.i(462409);function $(e){let a,s=(0,l.c)(7),{now:r}=e,{errorMessage:i,hasTrack:n,songTarget:c,title:u}=r;if(!n){let e,l=i??"Not Playing";return s[0]!==l?(e=(0,t.jsx)(o.Text,{as:"span",className:"truncate",variant:"caption",children:l}),s[0]=l,s[1]=e):e=s[1],e}if(c){let e,l=u??"Song";return s[2]!==c||s[3]!==l?(e=(0,t.jsx)(U.EntityLink,{label:l,target:c,variant:"labelBold"}),s[2]=c,s[3]=l,s[4]=e):e=s[4],e}return s[5]!==u?(a=(0,t.jsx)(o.Text,{as:"span",className:"truncate",variant:"labelBold",children:u}),s[5]=u,s[6]=a):a=s[6],a}function B(e){let a,s,r,i,n,o,c,u,d=(0,l.c)(26),{now:m}=e,{hasTrack:f,isPlaying:p,songTarget:y}=m;d[0]!==y?(a=()=>{y&&(0,z.navigateToEntity)(y)},d[0]=y,d[1]=a):a=d[1];let x=a,h=m.title?`Open ${m.title}`:"Now playing",b=!y,g=m.title??"";return d[2]!==m.artworkUrl||d[3]!==g?(s=(0,t.jsx)(R.AlbumArt,{alt:g,className:"size-12",imageUrl:m.artworkUrl}),d[2]=m.artworkUrl,d[3]=g,d[4]=s):s=d[4],d[5]!==f||d[6]!==p?(r=f?(0,t.jsx)(D.NowPlayingBadge,{paused:!p}):null,d[5]=f,d[6]=p,d[7]=r):r=d[7],d[8]!==x||d[9]!==h||d[10]!==b||d[11]!==s||d[12]!==r?(i=(0,t.jsxs)("button",{"aria-label":h,className:"relative shrink-0 cursor-pointer rounded-md outline-none ring-ring/50 focus-visible:ring-2 disabled:cursor-default",disabled:b,onClick:x,type:"button",children:[s,r]}),d[8]=x,d[9]=h,d[10]=b,d[11]=s,d[12]=r,d[13]=i):i=d[13],d[14]!==m?(n=(0,t.jsx)($,{now:m}),d[14]=m,d[15]=n):n=d[15],d[16]!==f||d[17]!==m.artist||d[18]!==m.entity?(o=f&&m.artist?(0,t.jsx)(U.EntityLink,{label:m.artist,muted:!0,target:{artist:m.artist,kind:"artist",source:m.entity?"local":"spotify"}}):null,d[16]=f,d[17]=m.artist,d[18]=m.entity,d[19]=o):o=d[19],d[20]!==n||d[21]!==o?(c=(0,t.jsxs)("div",{className:"flex min-w-0 flex-col items-start",children:[n,o]}),d[20]=n,d[21]=o,d[22]=c):c=d[22],d[23]!==c||d[24]!==i?(u=(0,t.jsxs)("div",{className:"flex @[720px]/player:w-44 @[832px]/player:w-56 min-w-0 @[720px]/player:flex-none flex-1 items-center gap-2.5",children:[i,c]}),d[23]=c,d[24]=i,d[25]=u):u=d[25],u}function O(e){let a,s,r,i,n,o,c,u,d,m,f,p=(0,l.c)(31),{now:y}=e,x=y.isPlaying?N.Pause:P.Play,h="one"===y.repeat?_.Repeat1:A.Repeat,b=y.shuffle?"secondary":"ghost";p[0]===Symbol.for("react.memo_cache_sentinel")?(a=(0,t.jsx)(C.Shuffle,{className:"size-4"}),p[0]=a):a=p[0],p[1]!==y.toggleShuffle||p[2]!==b?(s=(0,t.jsx)(k.Button,{"aria-label":"Shuffle",className:"@[720px]/player:inline-flex hidden",onClick:y.toggleShuffle,size:"icon-sm",variant:b,children:a}),p[1]=y.toggleShuffle,p[2]=b,p[3]=s):s=p[3];let g=!y.hasTrack;p[4]===Symbol.for("react.memo_cache_sentinel")?(r=(0,t.jsx)(T.SkipBack,{className:"size-4 fill-current"}),p[4]=r):r=p[4],p[5]!==y.previous||p[6]!==g?(i=(0,t.jsx)(k.Button,{"aria-label":"Previous",disabled:g,onClick:y.previous,size:"icon",variant:"ghost",children:r}),p[5]=y.previous,p[6]=g,p[7]=i):i=p[7];let j=y.isPlaying?"Pause":"Play",v=!y.hasTrack;p[8]!==x?(n=(0,t.jsx)(x,{className:"size-5 fill-current"}),p[8]=x,p[9]=n):n=p[9],p[10]!==y.togglePlay||p[11]!==j||p[12]!==v||p[13]!==n?(o=(0,t.jsx)(k.Button,{"aria-label":j,disabled:v,onClick:y.togglePlay,size:"icon",variant:"default",children:n}),p[10]=y.togglePlay,p[11]=j,p[12]=v,p[13]=n,p[14]=o):o=p[14];let S=!y.hasTrack;p[15]===Symbol.for("react.memo_cache_sentinel")?(c=(0,t.jsx)(M.SkipForward,{className:"size-4 fill-current"}),p[15]=c):c=p[15],p[16]!==y.next||p[17]!==S?(u=(0,t.jsx)(k.Button,{"aria-label":"Next",disabled:S,onClick:y.next,size:"icon",variant:"ghost",children:c}),p[16]=y.next,p[17]=S,p[18]=u):u=p[18];let w="off"===y.repeat?"ghost":"secondary";return p[19]!==h?(d=(0,t.jsx)(h,{className:"size-4"}),p[19]=h,p[20]=d):d=p[20],p[21]!==y.cycleRepeat||p[22]!==w||p[23]!==d?(m=(0,t.jsx)(k.Button,{"aria-label":"Repeat",className:"@[720px]/player:inline-flex hidden",onClick:y.cycleRepeat,size:"icon-sm",variant:w,children:d}),p[21]=y.cycleRepeat,p[22]=w,p[23]=d,p[24]=m):m=p[24],p[25]!==o||p[26]!==u||p[27]!==m||p[28]!==s||p[29]!==i?(f=(0,t.jsxs)("div",{className:"flex items-center @[720px]/player:gap-1.5 gap-1 rounded-full bg-muted @[720px]/player:px-3 px-2 py-1.5",children:[s,i,o,u,m]}),p[25]=o,p[26]=u,p[27]=m,p[28]=s,p[29]=i,p[30]=f):f=p[30],f}function H(e){let a,s,r,i,n,c,u,d=(0,l.c)(19),{now:m}=e;d[0]!==m.positionSeconds?(a=(0,I.formatPlayerTime)(m.positionSeconds),d[0]=m.positionSeconds,d[1]=a):a=d[1],d[2]!==a?(s=(0,t.jsx)(o.Text,{as:"span",className:"w-8 text-right tabular-nums",variant:"caption",children:a}),d[2]=a,d[3]=s):s=d[3];
1let f=!(m.hasTrack&&m.canSeek),p=Math.max(m.durationSeconds,1);return d[4]!==m?(r=e=>m.seek("number"==typeof e?e:e[0]??0),d[4]=m,d[5]=r):r=d[5],d[6]!==m.positionSeconds||d[7]!==f||d[8]!==p||d[9]!==r?(i=(0,t.jsx)(j.Slider,{"aria-label":"Seek",className:"min-w-0 flex-1",disabled:f,max:p,min:0,onValueChange:r,value:m.positionSeconds}),d[6]=m.positionSeconds,d[7]=f,d[8]=p,d[9]=r,d[10]=i):i=d[10],d[11]!==m.durationSeconds?(n=(0,I.formatPlayerTime)(m.durationSeconds),d[11]=m.durationSeconds,d[12]=n):n=d[12],d[13]!==n?(c=(0,t.jsx)(o.Text,{as:"span",className:"w-8 tabular-nums",variant:"caption",children:n}),d[13]=n,d[14]=c):c=d[14],d[15]!==s||d[16]!==i||d[17]!==c?(u=(0,t.jsxs)("div",{className:"flex w-full max-w-md items-center gap-2",children:[s,i,c]}),d[15]=s,d[16]=i,d[17]=c,d[18]=u):u=d[18],u}function Q(){let e,a,s,r,i,n,o=(0,l.c)(12),c=(0,L.useNowPlaying)(),u=(0,z.useMusicStore)(F);return o[0]===Symbol.for("react.memo_cache_sentinel")?(e=(0,w.cn)("@container/player flex shrink-0 select-none items-center @[720px]/player:gap-3 @[832px]/player:gap-4 gap-2 px-3 py-2.5","max-md:pb-[calc(var(--mobile-bottom-bar-height,4rem)+env(safe-area-inset-bottom,0px))]"),o[0]=e):e=o[0],o[1]!==c?(a=(0,t.jsx)(B,{now:c}),o[1]=c,o[2]=a):a=o[2],o[3]!==c?(s=(0,t.jsxs)("div",{className:"flex min-w-0 flex-[2] flex-col items-center gap-1.5",children:[(0,t.jsx)(O,{now:c}),(0,t.jsx)(H,{now:c})]}),o[3]=c,o[4]=s):s=o[4],o[5]===Symbol.for("react.memo_cache_sentinel")?(r=(0,t.jsx)("span",{className:"@[720px]/player:inline-flex hidden",children:(0,t.jsx)(E.QueueButton,{})}),o[5]=r):r=o[5],o[6]!==u?(i=(0,t.jsxs)("div",{className:"relative z-10 flex shrink-0 items-center justify-end gap-1.5",children:[r,(0,t.jsx)(v.VolumeControl,{onVolumeChange:z.setVolume,volume:u})]}),o[6]=u,o[7]=i):i=o[7],o[8]!==a||o[9]!==s||o[10]!==i?(n=(0,t.jsxs)(S.Surface,{className:e,"data-testid":"music-player-bar",material:"nano",radius:"concentric",children:[a,s,i]}),o[8]=a,o[9]=s,o[10]=i,o[11]=n):n=o[11],n}function F(e){return e.volume}var q=e.i(36892),G=e.i(25873),V=e.i(768125),W=e.i(535352),Y=e.i(913939),J=e.i(615403),K=e.i(271122),X=e.i(974085);function Z(e){let a,s,r,i,n=(0,l.c)(10),{onPlay:o,onRemove:c,track:u}=e;n[0]!==o||n[1]!==u?(a=(0,t.jsx)("div",{className:"min-w-0 flex-1",children:(0,t.jsx)(X.TrackRow,{onPlay:o,track:u})}),n[0]=o,n[1]=u,n[2]=a):a=n[2];let d=`Remove ${u.title} from playlist`;return n[3]===Symbol.for("react.memo_cache_sentinel")?(s=(0,t.jsx)(W.X,{className:"size-4"}),n[3]=s):s=n[3],n[4]!==c||n[5]!==d?(r=(0,t.jsx)("button",{"aria-label":d,className:"flex size-8 shrink-0 cursor-pointer items-center justify-center rounded-full text-muted-foreground opacity-0 outline-none ring-ring/50 transition-opacity hover:bg-surface hover:text-foreground focus-visible:opacity-100 focus-visible:ring-2 group-hover/row:opacity-100",onClick:c,type:"button",children:s}),n[4]=c,n[5]=d,n[6]=r):r=n[6],n[7]!==a||n[8]!==r?(i=(0,t.jsxs)("div",{className:"group/row flex items-center gap-1",children:[a,r]}),n[7]=a,n[8]=r,n[9]=i):i=n[9],i}function ee(e){let a,i,n,o,c,u,d,m,f=(0,l.c)(16),{playlist:p}=e,y=(0,r.useMutation)(s.api.music.playlists.deletePlaylist);f[0]!==y||f[1]!==p._id||f[2]!==p.name?(a=async()=>{try{await y({playlistId:p._id}),Y.toast.success(`Deleted "${p.name}".`),(0,z.selectMusicPlaylist)(null)}catch(e){Y.toast.error(e instanceof Error?e.message:"Couldn't delete the playlist.")}},f[0]=y,f[1]=p._id,f[2]=p.name,f[3]=a):a=f[3];let x=a;return f[4]===Symbol.for("react.memo_cache_sentinel")?(i=(0,t.jsx)(G.AlertDialogTrigger,{render:(0,t.jsxs)(k.Button,{size:"sm",variant:"ghost",children:[(0,t.jsx)(V.Trash2,{className:"size-4"}),"Delete"]})}),f[4]=i):i=f[4],f[5]!==p.name?(n=(0,t.jsxs)(G.AlertDialogTitle,{children:['Delete "',p.name,'"?']}),f[5]=p.name,f[6]=n):n=f[6],f[7]===Symbol.for("react.memo_cache_sentinel")?(o=(0,t.jsx)(G.AlertDialogDescription,{children:"This removes the playlist. Your audio stays in your library."}),f[7]=o):o=f[7],f[8]!==n?(c=(0,t.jsxs)(G.AlertDialogHeader,{children:[n,o]}),f[8]=n,f[9]=c):c=f[9],f[10]===Symbol.for("react.memo_cache_sentinel")?(u=(0,t.jsx)(G.AlertDialogCancel,{children:"Cancel"}),f[10]=u):u=f[10],f[11]!==x?(d=(0,t.jsxs)(G.AlertDialogFooter,{children:[u,(0,t.jsx)(G.AlertDialogAction,{onClick:x,children:"Delete"})]}),f[11]=x,f[12]=d):d=f[12],f[13]!==c||f[14]!==d?(m=(0,t.jsxs)(G.AlertDialog,{children:[i,(0,t.jsxs)(G.AlertDialogContent,{children:[c,d]})]}),f[13]=c,f[14]=d,f[15]=m):m=f[15],m}function et(e){let a,i,n,c,u=(0,l.c)(15),{playlist:d,tracks:m,trackIds:f}=e,p=(0,r.useMutation)(s.api.music.playlists.removeTrackFromPlaylist);
1if(void 0===f){let e;return u[0]===Symbol.for("react.memo_cache_sentinel")?(e=(0,t.jsx)("div",{className:"flex justify-center py-10"}),u[0]=e):e=u[0],e}if(u[1]!==d||u[2]!==p||u[3]!==f||u[4]!==m){n=Symbol.for("react.early_return_sentinel");e:{let e,l=new Map(m.map(ea)),s=f.flatMap(e=>{let t=l.get(e);return t?[t]:[]});if(0===s.length){let e;u[8]===Symbol.for("react.memo_cache_sentinel")?(e=(0,t.jsx)(o.Muted,{className:"py-8 text-center",children:"No tracks yet. Add some from your library, or ask Ora to fill it."}),u[8]=e):e=u[8],n=e;break e}u[9]!==d||u[10]!==p?(e=e=>{p({playlistId:d._id,trackId:e}).catch(el)},u[9]=d,u[10]=p,u[11]=e):e=u[11];let r=e;a="flex flex-col",i=s.map(e=>(0,t.jsx)(Z,{onPlay:()=>(0,J.playLibrarySong)(s,e),onRemove:()=>r(e.id),track:e},e.id))}u[1]=d,u[2]=p,u[3]=f,u[4]=m,u[5]=a,u[6]=i,u[7]=n}else a=u[5],i=u[6],n=u[7];return n!==Symbol.for("react.early_return_sentinel")?n:(u[12]!==a||u[13]!==i?(c=(0,t.jsx)("div",{className:a,children:i}),u[12]=a,u[13]=i,u[14]=c):c=u[14],c)}function el(e){Y.toast.error(e instanceof Error?e.message:"Couldn't remove the track.")}function ea(e){return[e.id,e]}function es(e){let a,i,n,c,u,d,m,f,p,y,x,h,b,g,j,v=(0,l.c)(37),{playlist:S,tracks:w}=e;v[0]!==S._id?(a={playlistId:S._id},v[0]=S._id,v[1]=a):a=v[1];let N=(0,r.useQuery)(s.api.music.playlists.getPlaylistTrackIds,a);if(v[2]!==N||v[3]!==w){let e=new Map(w.map(ei));i=(N??[]).flatMap(t=>{let l=e.get(t);return l?[l]:[]}),v[2]=N,v[3]=w,v[4]=i}else i=v[4];let A=i,_=1===S.trackCount?"track":"tracks";v[5]===Symbol.for("react.memo_cache_sentinel")?(n=(0,t.jsx)(K.DetailBack,{onBack:er}),v[5]=n):n=v[5],v[6]!==S.name?(c=(0,t.jsx)(o.H1,{children:S.name}),v[6]=S.name,v[7]=c):c=v[7],v[8]===Symbol.for("react.memo_cache_sentinel")?(u=(0,t.jsx)(R.AlbumArt,{className:"size-24"}),v[8]=u):u=v[8],v[9]!==S.trackCount||v[10]!==_?(d=(0,t.jsxs)(o.Text,{variant:"bodyMuted",children:[S.trackCount," ",_]}),v[9]=S.trackCount,v[10]=_,v[11]=d):d=v[11],v[12]!==S.description?(m=S.description&&(0,t.jsx)(o.Muted,{className:"line-clamp-3",children:S.description}),v[12]=S.description,v[13]=m):m=v[13];let C=0===A.length;return v[14]!==A?(f=()=>(0,J.playLibraryCollection)(A),v[14]=A,v[15]=f):f=v[15],v[16]===Symbol.for("react.memo_cache_sentinel")?(p=(0,t.jsx)(P.Play,{className:"size-4 fill-current"}),v[16]=p):p=v[16],v[17]!==C||v[18]!==f?(y=(0,t.jsxs)(k.Button,{disabled:C,onClick:f,children:[p,"Play"]}),v[17]=C,v[18]=f,v[19]=y):y=v[19],v[20]!==S?(x=(0,t.jsx)(ee,{playlist:S}),v[20]=S,v[21]=x):x=v[21],v[22]!==y||v[23]!==x?(h=(0,t.jsxs)("div",{className:"mt-1 flex items-center gap-2",children:[y,x]}),v[22]=y,v[23]=x,v[24]=h):h=v[24],v[25]!==h||v[26]!==d||v[27]!==m?(b=(0,t.jsxs)("div",{className:"flex items-start gap-4",children:[u,(0,t.jsxs)("div",{className:"flex min-w-0 flex-1 flex-col gap-2 pt-1",children:[d,m,h]})]}),v[25]=h,v[26]=d,v[27]=m,v[28]=b):b=v[28],v[29]!==S||v[30]!==N||v[31]!==w?(g=(0,t.jsx)(et,{playlist:S,trackIds:N,tracks:w}),v[29]=S,v[30]=N,v[31]=w,v[32]=g):g=v[32],v[33]!==b||v[34]!==g||v[35]!==c?(j=(0,t.jsxs)("div",{className:"flex flex-col gap-6 p-2",children:[n,c,b,g]}),v[33]=b,v[34]=g,v[35]=c,v[36]=j):j=v[36],j}function er(){return(0,z.selectMusicPlaylist)(null)}function ei(e){return[e.id,e]}var en=e.i(444485),eo=e.i(367457);function ec(e){let a,i,n,c=(0,l.c)(15),{contextUri:u,playlistId:m}=e,f=function(e){let t,a,i,n=(0,l.c)(5),o=(0,r.useAction)(s.api.spotify.playlists.getPlaylistTracks);n[0]===Symbol.for("react.memo_cache_sentinel")?(t={kind:"loading"},n[0]=t):t=n[0];let[c,u]=(0,d.useState)(t);return n[1]!==o||n[2]!==e?(a=function(){let t=!1;return u({kind:"loading"}),o({playlistId:e}).then(e=>{if(!t){if(e.found)return void u({kind:"loaded",tracks:e.tracks,truncated:e.truncated});u({kind:"error",message:e.message})}}).catch(e=>{t||(console.error("Failed to load Spotify playlist tracks:",e),u({kind:"error",message:"Couldn't load this playlist's tracks. Try again."}))}),()=>{t=!0}},i=[e,o],n[1]=o,n[2]=e,n[3]=a,n[4]=i):(a=n[3],i=n[4]),(0,d.useEffect)(a,i),c}(m);if("loading"===f.kind){let e;return c[0]===Symbol.for("react.memo_cache_sentinel")?(e=(0,t.jsx)("div",{className:"flex justify-center py-10"}),c[0]=e):e=c[0],e}if("error"===f.kind){let e;return c[1]!==f.message?(e=(0,t.jsx)(o.Text,{className:"py-8 text-center text-destructive",variant:"caption",children:f.message}),c[1]=f.message,c[2]=e):e=c[2],e}if(0===f.tracks.length){let e;return c[3]===Symbol.for("react.memo_cache_sentinel")?(e=(0,t.jsx)(o.Muted,{className:"py-8 text-center",children:"This playlist has no tracks yet."}),c[3]=e):e=c[3],e}if(c[4]!==u||c[5]!==f.tracks){let e;c[7]!==u?(e=e=>(0,t.jsx)(eo.SpotifyTrackRow,{contextUri:u,track:e},e.spotifyTrackId),c[7]=u,c[8]=e):e=c[8],a=f.tracks.map(e),c[4]=u,c[5]=f.tracks,c[6]=a}else a=c[6];return c[9]!==f.tracks.length||c[10]!==f.truncated?(i=f.truncated&&(0,t.jsxs)(o.Muted,{className:"px-2.5 pt-3",children:["Showing the first ",f.tracks.length," tracks."]}),c[9]=f.tracks.length,c[10]=f.truncated,c[11]=i):i=c[11],c[12]!==a||c[13]!==i?(n=(0,t.jsxs)("div",{className:"flex flex-col",children:[a,i]}),c[12]=a,c[13]=i,c[14]=n):n=c[14],n}var eu=e.i(832877),ed=e.i(41288);function em(e){let a,s,r,i,n,c,u,d=(0,l.c)(23),{contextUri:m}=e,{canPlayInApp:f,needsConnect:p,needsReconnect:y,reason:x,engine:h,playContext:b}=(0,ed.useSpotifyPlay)(),g=(0,eu.useOnOpenApp)(),j=!f;return d[0]!==m||d[1]!==b?(a=()=>b(m),d[0]=m,d[1]=b,d[2]=a):a=d[2],d[3]===Symbol.for("react.memo_cache_sentinel")?(s=(0,t.jsx)(P.Play,{className:"fill-current"}),d[3]=s):s=d[3],d[4]!==j||d[5]!==a?(r=(0,t.jsxs)(k.Button,{className:"w-fit",disabled:j,onClick:a,children:[s,"Play"]}),d[4]=j,d[5]=a,d[6]=r):r=d[6],d[7]!==p||d[8]!==y||d[9]!==g?(i=p&&(0,t.jsx)(k.Button,{className:"w-fit",onClick:()=>g?.("settings"),size:"sm",variant:"ghost",children:y?"Reconnect Spotify to listen here":"Connect Spotify to listen here"}),d[7]=p,d[8]=y,d[9]=g,d[10]=i):i=d[10],d[11]!==h.errorMessage||d[12]!==p||d[13]!==x?(n=x&&!(p||h.errorMessage)&&(0,t.jsx)(o.Muted,{children:x}),d[11]=h.errorMessage,d[12]=p,d[13]=x,d[14]=n):n=d[14],d[15]!==
1h.errorMessage||d[16]!==p?(c=h.errorMessage&&!p&&(0,t.jsx)(o.Text,{className:"text-destructive",variant:"caption",children:h.errorMessage}),d[15]=h.errorMessage,d[16]=p,d[17]=c):c=d[17],d[18]!==r||d[19]!==i||d[20]!==n||d[21]!==c?(u=(0,t.jsxs)("div",{className:"flex flex-col gap-1.5",children:[r,i,n,c]}),d[18]=r,d[19]=i,d[20]=n,d[21]=c,d[22]=u):u=d[22],u}function ef(e){let a,s,r,i,n,u,d,m,f,p,y,x,h=(0,l.c)(31),{playlist:b}=e,g=1===b.trackCount?"track":"tracks";return h[0]===Symbol.for("react.memo_cache_sentinel")?(a=(0,t.jsx)(K.DetailBack,{onBack:ep}),h[0]=a):a=h[0],h[1]!==b.name?(s=(0,t.jsx)(o.H1,{children:b.name}),h[1]=b.name,h[2]=s):s=h[2],h[3]!==b.artworkUrl||h[4]!==b.name?(r=(0,t.jsx)(en.AvatarImage,{alt:b.name,src:b.artworkUrl}),h[3]=b.artworkUrl,h[4]=b.name,h[5]=r):r=h[5],h[6]===Symbol.for("react.memo_cache_sentinel")?(i=(0,t.jsx)(en.AvatarFallback,{className:"rounded-md",children:(0,t.jsx)(c.ListMusic,{className:"size-8 text-muted-foreground"})}),h[6]=i):i=h[6],h[7]!==r?(n=(0,t.jsxs)(en.Avatar,{className:"size-24 rounded-md",children:[r,i]}),h[7]=r,h[8]=n):n=h[8],h[9]!==b.ownerName||h[10]!==b.trackCount||h[11]!==g?(u=(0,t.jsxs)(o.Text,{variant:"bodyMuted",children:[b.ownerName," · ",b.trackCount," ",g]}),h[9]=b.ownerName,h[10]=b.trackCount,h[11]=g,h[12]=u):u=h[12],h[13]!==b.description?(d=b.description&&(0,t.jsx)(o.Muted,{className:"line-clamp-3",children:b.description}),h[13]=b.description,h[14]=d):d=h[14],h[15]!==b.spotifyUri?(m=(0,t.jsx)(em,{contextUri:b.spotifyUri}),h[15]=b.spotifyUri,h[16]=m):m=h[16],h[17]!==u||h[18]!==d||h[19]!==m?(f=(0,t.jsxs)("div",{className:"flex min-w-0 flex-1 flex-col gap-2 pt-1",children:[u,d,m]}),h[17]=u,h[18]=d,h[19]=m,h[20]=f):f=h[20],h[21]!==n||h[22]!==f?(p=(0,t.jsxs)("div",{className:"flex items-start gap-4",children:[n,f]}),h[21]=n,h[22]=f,h[23]=p):p=h[23],h[24]!==b.spotifyPlaylistId||h[25]!==b.spotifyUri?(y=(0,t.jsx)(ec,{contextUri:b.spotifyUri,playlistId:b.spotifyPlaylistId}),h[24]=b.spotifyPlaylistId,h[25]=b.spotifyUri,h[26]=y):y=h[26],h[27]!==p||h[28]!==y||h[29]!==s?(x=(0,t.jsxs)("div",{className:"flex flex-col gap-6 p-2",children:[a,s,p,y]}),h[27]=p,h[28]=y,h[29]=s,h[30]=x):x=h[30],x}function ep(){return(0,z.selectPlaylist)(null)}var ey=e.i(778184),ex=e.i(367906),eh=e.i(284170);function eb(){let e,a,s,r,i=(0,l.c)(10),n=(0,z.useMusicStore)(ej),{inputRef:o,clear:c}=(0,eh.useClearableSearch)(ek);return i[0]===Symbol.for("react.memo_cache_sentinel")?(e=(0,t.jsx)(ey.InputGroupAddon,{children:(0,t.jsx)(ex.Search,{})}),i[0]=e):e=i[0],i[1]!==o||i[2]!==n?(a=(0,t.jsx)(ey.InputGroupInput,{"aria-label":"Search music",name:"music-search",onChange:eg,placeholder:"Search your library, playlists, and Spotify",ref:o,type:"search",value:n}),i[1]=o,i[2]=n,i[3]=a):a=i[3],i[4]!==c||i[5]!==n.length?(s=n.length>0&&(0,t.jsx)(ey.InputGroupAddon,{align:"inline-end",children:(0,t.jsx)(ey.InputGroupButton,{"aria-label":"Clear search",onClick:c,size:"icon-xs",children:(0,t.jsx)(W.X,{})})}),i[4]=c,i[5]=n.length,i[6]=s):s=i[6],i[7]!==a||i[8]!==s?(r=(0,t.jsxs)(ey.InputGroup,{children:[e,a,s]}),i[7]=a,i[8]=s,i[9]=r):r=i[9],r}function eg(e){return(0,z.setSearchQuery)(e.target.value)}function ek(){return(0,z.setSearchQuery)("")}function ej(e){return e.searchQuery}var ev=e.i(891520),ev=ev;function eS(e){let a,s,r,i,n,c,u=(0,l.c)(18),{playlist:d}=e,m=1===d.trackCount?"track":"tracks";return u[0]!==d.spotifyPlaylistId?(a=()=>(0,z.selectPlaylist)(d.spotifyPlaylistId),u[0]=d.spotifyPlaylistId,u[1]=a):a=u[1],u[2]!==d.artworkUrl||u[3]!==d.name?(s=(0,t.jsx)(R.AlbumArt,{alt:d.name,className:"w-full transition-transform group-hover:scale-[1.02]",imageUrl:d.artworkUrl}),u[2]=d.artworkUrl,u[3]=d.name,u[4]=s):s=u[4],u[5]!==d.name?(r=(0,t.jsx)(o.Text,{as:"span",className:"truncate",variant:"label",children:d.name}),u[5]=d.name,u[6]=r):r=u[6],u[7]!==d.ownerName||u[8]!==d.trackCount||u[9]!==m?(i=(0,t.jsxs)(o.Text,{as:"span",className:"truncate",variant:"caption",children:[d.ownerName," · ",d.trackCount," ",m]}),u[7]=d.ownerName,u[8]=d.trackCount,u[9]=m,u[10]=i):i=u[10],u[11]!==r||u[12]!==i?(n=(0,t.jsxs)("span",{className:"flex min-w-0 flex-col",children:[r,i]}),u[11]=r,u[12]=i,u[13]=n):n=u[13],u[14]!==a||u[15]!==s||u[16]!==n?(c=(0,t.jsxs)("button",{className:"group flex min-w-0 select-none flex-col gap-2 text-left outline-none",onClick:a,type:"button",children:[s,n]}),u[14]=a,u[15]=s,u[16]=n,u[17]=c):c=u[17],c}let ew=["all","songs","artists","albums","playlists"],eN={all:"All",songs:"Songs",artists:"Artists",albums:"Albums",playlists:"Playlists"};function eP(e,t){return"all"===e||e===t}var eA=e.i(387432);function e_(e){let a,s,r=(0,l.c)(5),{active:i,onSelect:n}=e;return r[0]!==i||r[1]!==n?(a=ew.map(e=>(0,t.jsx)(eA.FilterChip,{active:i===e,label:eN[e],onSelect:()=>n(e)},e)),r[0]=i,r[1]=n,r[2]=a):a=r[2],r[3]!==a?(s=(0,t.jsx)("div",{className:"-mx-1 flex flex-wrap gap-2 px-1",children:a}),r[3]=a,r[4]=s):s=r[4],s}function eC(e,t){return e.toLowerCase().includes(t)}function eT(e,t){let l=new Set,a=[];for(let s of e){let e=t(s);l.has(e)||(l.add(e),a.push(s))}return a}function eM(e){let a,s,r=(0,l.c)(5),{children:i,title:n}=e;return r[0]!==n?(a=(0,t.jsx)(o.H3,{children:n}),r[0]=n,r[1]=a):a=r[1],r[2]!==i||r[3]!==a?(s=(0,t.jsxs)("section",{className:"flex flex-col gap-3",children:[a,i]}),r[2]=i,r[3]=a,r[4]=s):s=r[4],s}function eU(e){let a,s,r,i,n,c,u=(0,l.c)(14),{artist:d}=e,m=d.tracks.length;u[0]!==d.name?(a=()=>(0,z.openArtistDetail)(d.name),u[0]=d.name,u[1]=a):a=u[1],u[2]===Symbol.for("react.memo_cache_sentinel")?(s=(0,t.jsx)("span",{className:"flex size-9 shrink-0 items-center justify-center rounded-full bg-muted",children:(0,t.jsx)(ev.default,{className:"size-4 text-muted-foreground"})}),u[2]=s):s=u[2],u[3]!==d.name?(r=(0,t.jsx)(o.Text,{as:"span",className:"truncate",variant:"label",children:d.name}),u[3]=d.name,u[4]=r):r=u[4];let f=1===m?"song":"songs";return u[5]!==m||u[6]!==f?(i=(0,t.jsxs)(o.Text,{as:"span",className:"truncate",variant:"caption",children:[m," ",f]}),u[5]=m,u[6]=f,u[7]=i):i=u[7],u[8]!==r||u[9]!==i?(n=(0,t.jsxs)("span",{className:"flex min-w-0 flex-1 flex-col",children:[r,i]}),u[8]=r,u[9]=i,u[10]=n):n=u[10],u[11]!==a||u[12]!==n?(c=(0,t.jsxs)("button",{className:"group flex w-full cursor-pointer select-none items-center gap-3 rounded-lg px-2.5 py-2 text-left outline-none transition-colors hover:bg-surface-hover",onClick:a,type:"button",children:[s,n]}),u[11]=a,u[12]=n,u[13]=c):c=u[13],c}function eI(e){let a,s,r,i,n,c=(0,l.c)(19),{filter:u,state:d}=e;if("idle"===d.kind||"playlists"===u)return null;if("loading"===d.kind){let e;return c[0]===Symbol.for("react.memo_cache_sentinel")?(e=(0,t.jsx)(eM,{title:"From Spotify",children:(0,t.jsx)("div",{className:"flex justify-center py-6"})}),c[0]=e):e=c[0],e}if("error"===d.kind){let e;return c[1]!==d.message?(e=(0,t.jsx)(eM,{title:"From Spotify",children:(0,t.jsx)(o.Text,{className:"py-2 text-destructive",variant:"caption",children:d.message})}),c[1]=d.message,c[2]=e):e=c[2],e}c[3]!==d.tracks?(a=d.tracks.map(eD),c[3]=d.tracks,c[4]=a):a=c[4];let m=a;return c[5]!==u||c[6]!==m||c[7]!==d.tracks?(s=eP(u,"songs")&&d.tracks.length>0&&(0,t.jsx)(eM,{title:"Songs",children:(0,t.jsx)("div",{className:"flex flex-col",children:d.tracks.map(e=>(0,t.jsx)(eo.SpotifyTrackRow,{queueUris:m,track:e},e.spotifyTrackId))})}),c[5]=u,c[6]=m,c[7]=d.tracks,c[8]=s):s=c[8],c[9]!==u||c[10]!==d.artists?(r=eP(u,"artists")&&d.artists.length>0&&(0,t.jsx)(eM,{title:"Artists",children:(0,t.jsx)(h.CardGrid,{children:d.artists.map(eR)})}),c[9]=u,c[10]=d.artists,c[11]=r):r=c[11],c[12]!==u||c[13]!==d.albums?(i=eP(u,"albums")&&d.albums.length>0&&(0,t.jsx)(eM,{title:"Albums",children:(0,t.jsx)(h.CardGrid,{children:d.albums.map(ez)})}),c[12]=u,c[13]=d.albums,c[14]=i):i=c[14],c[15]!==s||c[16]!==r||c[17]!==i?(n=(0,t.jsxs)(t.Fragment,{children:[s,r,i]}),c[15]=s,c[16]=r,c[17]=i,c[18]=n):n=c[18],n}function ez(e){return(0,t.jsx)(h.MediaCard,{artworkUrl:e.artworkUrl,onOpen:()=>
1(0,z.openSpotifyAlbumDetail)(e.spotifyAlbumId,e.name),subtitle:e.artist,title:e.name},e.spotifyAlbumId)}function eR(e){return(0,t.jsx)(h.MediaCard,{artworkUrl:e.artworkUrl,circle:!0,onOpen:()=>(0,z.openSpotifyArtistDetail)(e.spotifyArtistId,e.name),subtitle:"Artist",title:e.name},e.spotifyArtistId)}function eD(e){return e.spotifyUri}function eE(e){let a,s,r,i,n,o=(0,l.c)(17),{filter:c,local:u}=e;return o[0]!==c||o[1]!==u?(a=eP(c,"songs")&&u.songs.length>0&&(0,t.jsx)(eM,{title:"Songs in your library",children:(0,t.jsx)("div",{className:"flex flex-col",children:u.songs.map(e=>(0,t.jsx)(X.TrackRow,{onPlay:()=>(0,J.playLibrarySong)(u.songs,e),track:e},e.id))})}),o[0]=c,o[1]=u,o[2]=a):a=o[2],o[3]!==c||o[4]!==u?(s=eP(c,"artists")&&u.artists.length>0&&(0,t.jsx)(eM,{title:"Artists in your library",children:(0,t.jsx)("div",{className:"flex flex-col",children:u.artists.map(eB)})}),o[3]=c,o[4]=u,o[5]=s):s=o[5],o[6]!==c||o[7]!==u?(r=eP(c,"albums")&&u.albums.length>0&&(0,t.jsx)(eM,{title:"Albums in your library",children:(0,t.jsx)(h.CardGrid,{children:u.albums.map(e$)})}),o[6]=c,o[7]=u,o[8]=r):r=o[8],o[9]!==c||o[10]!==u?(i=eP(c,"playlists")&&u.playlists.length>0&&(0,t.jsx)(eM,{title:"Playlists",children:(0,t.jsx)(h.CardGrid,{children:u.playlists.map(eL)})}),o[9]=c,o[10]=u,o[11]=i):i=o[11],o[12]!==a||o[13]!==s||o[14]!==r||o[15]!==i?(n=(0,t.jsxs)(t.Fragment,{children:[a,s,r,i]}),o[12]=a,o[13]=s,o[14]=r,o[15]=i,o[16]=n):n=o[16],n}function eL(e){return(0,t.jsx)(eS,{playlist:e},e._id)}function e$(e){return(0,t.jsx)(h.AlbumCard,{album:e},e.name)}function eB(e){return(0,t.jsx)(eU,{artist:e},e.name)}function eO(e){var a;let i,n,c,u=(0,l.c)(11),{playlists:m,tracks:f}=e,p=(0,z.useMusicStore)(eH),[y,x]=(0,d.useState)("all"),h=function(e,t,l){let a=l.trim().toLowerCase();if(0===a.length)return{albums:[],artists:[],playlists:[],songs:[]};let s=e.filter(e=>eC(e.title,a)||eC(e.artist,a)||eC(e.album,a)).sort((e,t)=>e.title.localeCompare(t.title)),r=(0,I.groupByArtist)(e).filter(e=>eC(e.name,a));return{albums:(0,I.groupByAlbum)(e).filter(e=>eC(e.name,a)),artists:r,playlists:t.filter(e=>eC(e.name,a)||eC(e.ownerName,a)),songs:s}}(f,m,p),b=function(e){let t,a,i,n=(0,l.c)(5),o=(0,r.useAction)(s.api.spotify.catalog.searchCatalog);n[0]===Symbol.for("react.memo_cache_sentinel")?(t={kind:"idle"},n[0]=t):t=n[0];let[c,u]=(0,d.useState)(t);return n[1]!==e||n[2]!==o?(a=function(){let t=e.trim();if(0===t.length)return void u({kind:"idle"});let l=!1;u({kind:"loading"});let a=setTimeout(()=>{o({query:t}).then(e=>{if(l)return;if(!e.found)return void u({kind:"error",message:e.message});let{albums:t,artists:a,tracks:s}={tracks:eT(e.tracks,e=>e.spotifyTrackId),artists:eT(e.artists,e=>e.spotifyArtistId),albums:eT(e.albums,e=>e.spotifyAlbumId)};u({kind:"loaded",albums:t,artists:a,tracks:s})}).catch(e=>{l||(console.error("Spotify search failed:",e),u({kind:"error",message:"Couldn't search Spotify. Try again."}))})},350);return()=>{l=!0,clearTimeout(a)}},i=[e,o],n[1]=e,n[2]=o,n[3]=a,n[4]=i):(a=n[3],i=n[4]),(0,d.useEffect)(a,i),c}(p),g=!(eP(y,"songs")&&h.songs.length>0||eP(y,"artists")&&h.artists.length>0||eP(y,"albums")&&h.albums.length>0||eP(y,"playlists")&&h.playlists.length>0||"playlists"!==y&&"idle"!==b.kind&&("loaded"!==b.kind||eP(y,"songs")&&b.tracks.length>0||eP(y,"artists")&&b.artists.length>0||eP(y,"albums")&&b.albums.length>0));return(u[0]!==y?(i=(0,t.jsx)(e_,{active:y,onSelect:x}),u[0]=y,u[1]=i):i=u[1],u[2]!==g||u[3]!==y||u[4]!==h||u[5]!==p||u[6]!==b)?(n=g?(0,t.jsx)(o.Muted,{className:"py-16 text-center",children:(a=p.trim(),"all"!==y?`No ${eN[y].toLowerCase()} for "${a}".`:"loaded"===b.kind?`No results for "${a}".`:"Searchingâ¦")}):(0,t.jsxs)(t.Fragment,{children:[(0,t.jsx)(eE,{filter:y,local:h}),(0,t.jsx)(eI,{filter:y,state:b})]}),u[2]=g,u[3]=y,u[4]=h,u[5]=p,u[6]=b,u[7]=n):n=u[7],u[8]!==i||u[9]!==n?(c=(0,t.jsxs)("div",{className:"flex flex-col gap-8",children:[i,n]}),u[8]=i,u[9]=n,u[10]=c):c=u[10],c}function eH(e){return e.searchQuery}var eQ=e.i(990574),eF=e.i(906059),eq=e.i(600493),eG=e.i(243980),eV=e.i(975320),eW=e.i(728367),ev=ev,eY=e.i(629251),eY=eY,eJ=e.i(890061),eK=e.i(439779),eX=e.i(21079),eZ=e.i(433992);function e0({onOpenChange:e,open:l}){let a=(0,r.useMutation)(s.api.music.playlists.createPlaylist),[i,n]=(0,d.useState)(""),[o,c]=(0,d.useState)(!1),u=()=>{n(""),e(!1)},m=i.trim().length>0,f=async e=>{if(e.preventDefault(),m){c(!0);try{let e=await a({name:i.trim()});Y.toast.success(`Created "${e.name}" in My Music.`),(0,z.selectMusicPlaylist)(e.playlistId),u()}catch(e){Y.toast.error(e instanceof Error?e.message:"Couldn't create the playlist.")}finally{c(!1)}}};return(0,t.jsx)(eK.Dialog,{onOpenChange:e=>!e&&u(),open:l,children:(0,t.jsxs)(eK.DialogContent,{className:"sm:max-w-[400px]",children:[(0,t.jsx)(eK.DialogHeader,{children:(0,t.jsx)(eK.DialogTitle,{children:"New My Music playlist"})}),(0,t.jsxs)("form",{onSubmit:f,children:[(0,t.jsx)("div",{className:"space-y-4 py-4",children:(0,t.jsxs)("div",{className:"space-y-2",children:[(0,t.jsx)(eZ.Label,{htmlFor:"music-playlist-name",children:"Name"}),(0,t.jsx)(eX.Input,{autoFocus:!0,id:"music-playlist-name",onChange:e=>n(e.target.value),placeholder:"e.g., Focus, Roadtrip, Sunday Morning",value:i})]})}),(0,t.jsxs)(eK.DialogFooter,{children:[(0,t.jsx)(k.Button,{onClick:u,type:"button",variant:"surface",children:"Cancel"}),(0,t.jsx)(k.Button,{disabled:!m||o,type:"submit",children:"Create"})]})]})]})})}var e1=e.i(781243);function e2({onOpenChange:e,open:l}){let a=(0,r.useAction)(s.api.spotify.playlists.createPlaylist),[i,n]=(0,d.useState)(""),[o,c]=(0,d.useState)(!1),[u,m]=(0,d.useState)(!1),f=()=>{n(""),c(!1),e(!1)},p=i.trim().length>0,y=async e=>{if(e.preventDefault(),p){m(!0);try{let e=await a({name:i.trim(),isPublic:o});if(!e.created)return void Y.toast.error(e.message);Y.toast.success(`Created "${e.playlist.name}" on Spotify.`),(0,z.selectPlaylist)(e.playlist.spotifyPlaylistId),f()}catch(e){Y.toast.error(e instanceof Error?e.message:"Couldn't create the playlist.")}finally{m(!1)}}};return(0,t.jsx)(eK.Dialog,{onOpenChange:e=>!e&&f(),open:l,children:(0,t.jsxs)(eK.DialogContent,{className:"sm:max-w-[400px]",children:[(0,t.jsx)(eK.DialogHeader,{children:(0,t.jsx)(eK.DialogTitle,{children:"Create Playlist"})}),(0,t.jsxs)("form",{onSubmit:y,children:[(0,t.jsxs)("div",{className:"space-y-4 py-4",children:[(0,t.jsxs)("div",{className:"space-y-2",children:[(0,t.jsx)(eZ.Label,{htmlFor:"playlist-name",children:"Name"}),(0,t.jsx)(eX.Input,{autoFocus:!0,id:"playlist-name",onChange:e=>n(e.target.value),placeholder:"e.g., Focus, Roadtrip, Sunday Morning",value:i})]}),(0,t.jsxs)("div",{className:"flex items-center justify-between gap-2",children:[(0,t.jsx)(eZ.Label,{htmlFor:"playlist-public",children:"Make public on Spotify"}),(0,t.jsx)(e1.Switch,{checked:o,id:"playlist-public",onCheckedChange:c})]})]}),(0,t.jsxs)(eK.DialogFooter,{children:[(0,t.jsx)(k.Button,{onClick:f,type:"button",variant:"surface",children:"Cancel"}),(0,t.jsx)(k.Button,{disabled:!p||u,type:"submit",children:"Create"})]})]})]})})}let e3=(0,eJ.withPlayfulMotion)(eW.Home,"bounce"),e4=(0,eJ.withPlayfulMotion)(c.ListMusic,"wobble"),e5=(0,eJ.withPlayfulMotion)(eG.CloudMark),e6=(0,eJ.withPlayfulMotion)(function(e){let a,s,r,i=(0,l.c)(4),{className:n}=e;return i[0]===Symbol.for("react.memo_cache_sentinel")?(a=(0,t.jsx)("title",{children:"Spotify"}),s=(0,t.jsx)("path",{d:"m83.996 0.277c-46.249 0-83.743 37.493-83.743 83.742 0 46.251 37.494 83.741 83.743 83.741 46.254 0 83.744-37.49 83.744-83.741 0-46.246-37.49-83.738-83.745-83.738l0.001-0.004zm38.404 120.78c-1.5 2.46-4.72 3.24-7.18 1.73-19.662-12.01-44.414-14.73-73.564-8.07-2.809 0.64-5.609-1.12-6.249-3.93-0.643-2.81 1.11-5.61 3.926-6.25 31.9-7.288 59.263-4.15 81.337 9.34 2.46 1.51 3.24 4.72 1.73 7.18zm10.25-22.802c-1.89 3.072-5.91 4.042-8.98 2.152-22.51-13.836-56.823-17.843-83.448-9.761-3.453 1.043-7.1-0.903-8.148-4.35-1.04-3.453 0.907-7.093 4.354-8.143 30.413-9.228 68.222-4.758 94.072 11.127 3.07 1.89 4.04 5.91 2.15 8.976v-0.001zm0.88-23.744c-26.99-16.031-71.52-17.505-97.289-9.684-4.138 1.255-8.514-1.081-9.768-5.219-1.254-4.14 1.08-8.513 5.221-9.771 29.581-8.98 78.756-7.245 109.83 11.202 3.73 2.209 4.95 7.016 2.74 10.733-2.2 3.722-7.02 4.949-10.73 2.739zm94.56 3.072c-14.46-3.448-17.03-5.868-17.03-10.953 0-4.804 4.52-8.037 11.25-8.037 6.52 0 12.98 2.455 19.76 7.509
10.2 0.153 0.46 0.214 0.71 0.174 0.26-0.038 0.48-0.177 0.63-0.386l7.06-9.952c0.29-0.41 0.21-0.975-0.18-1.288-8.07-6.473-17.15-9.62-27.77-9.62-15.61 0-26.52 9.369-26.52 22.774 0 14.375 9.41 19.465 25.67 23.394 13.83 3.187 16.17 5.857 16.17 10.629 0 5.29-4.72 8.58-12.32 8.58-8.44 0-15.33-2.85-23.03-9.51-0.19-0.17-0.45-0.24-0.69-0.23-0.26 0.02-0.49 0.14-0.65 0.33l-7.92 9.42c-0.33 0.4-0.29 0.98 0.09 1.32 8.96 8 19.98 12.22 31.88 12.22 16.82 0 27.69-9.19 27.69-23.42 0.03-12.007-7.16-18.657-24.77-22.941l-0.03-0.013zm62.86-14.26c-7.29 0-13.27 2.872-18.21 8.757v-6.624c0-0.523-0.42-0.949-0.94-0.949h-12.95c-0.52 0-0.94 0.426-0.94 0.949v73.601c0 0.52 0.42 0.95 0.94 0.95h12.95c0.52 0 0.94-0.43 0.94-0.95v-23.23c4.94 5.53 10.92 8.24 18.21 8.24 13.55 0 27.27-10.43 27.27-30.369 0.02-19.943-13.7-30.376-27.26-30.376l-0.01 0.001zm12.21 30.375c0 10.149-6.25 17.239-15.21 17.239-8.85 0-15.53-7.41-15.53-17.239 0-9.83 6.68-17.238 15.53-17.238 8.81-0.001 15.21 7.247 15.21 17.237v0.001zm50.21-30.375c-17.45 0-31.12 13.436-31.12 30.592 0 16.972 13.58 30.262 30.91 30.262 17.51 0 31.22-13.39 31.22-30.479 0-17.031-13.62-30.373-31.01-30.373v-0.002zm0 47.714c-9.28 0-16.28-7.46-16.28-17.344 0-9.929 6.76-17.134 16.07-17.134 9.34 0 16.38 7.457 16.38 17.351 0 9.927-6.8 17.127-16.17 17.127zm68.27-46.53h-14.25v-14.566c0-0.522-0.42-0.948-0.94-0.948h-12.95c-0.52 0-0.95 0.426-0.95 0.948v14.566h-6.22c-0.52 0-0.94 0.426-0.94 0.949v11.127c0 0.522 0.42 0.949 0.94 0.949h6.22v28.795c0 11.63 5.79 17.53 17.22 17.53 4.64 0 8.49-0.96 12.12-3.02 0.3-0.16 0.48-0.48 0.48-0.82v-10.6c0-0.32-0.17-0.63-0.45-0.8-0.28-0.18-0.63-0.19-0.92-0.04-2.49 1.25-4.9 1.83-7.6 1.83-4.15 0-6.01-1.89-6.01-6.11v-26.76h14.25c0.52 0 0.94-0.426 0.94-0.949v-11.126c0.02-0.523-0.4-0.949-0.93-0.949l-0.01-0.006zm49.64 0.057v-1.789c0-5.263 2.02-7.61 6.54-7.61 2.7 0 4.87 0.536 7.3 1.346 0.3 0.094 0.61 0.047 0.85-0.132 0.25-0.179 0.39-0.466 0.39-0.77v-10.91c0-0.417-0.26-0.786-0.67-0.909-2.56-0.763-5.84-1.546-10.76-1.546-11.95 0-18.28 6.734-18.28 19.467v2.74h-6.22c-0.52 0-0.95 0.426-0.95 0.948v11.184c0 0.522 0.43 0.949 0.95 0.949h6.22v44.405c0 0.53 0.43 0.95 0.95 0.95h12.94c0.53 0 0.95-0.42 0.95-0.95v-44.402h12.09l18.52 44.402c-2.1 4.66-4.17 5.59-6.99 5.59-2.28 0-4.69-0.68-7.14-2.03-0.23-0.12-0.51-0.14-0.75-0.07-0.25 0.09-0.46 0.27-0.56 0.51l-4.39 9.63c-0.21 0.46-0.03 0.99 0.41 1.23 4.58 2.48 8.71 3.54 13.82 3.54 9.56 0 14.85-4.46 19.5-16.44l22.46-58.037c0.12-0.292 0.08-0.622-0.1-0.881-0.17-0.257-0.46-0.412-0.77-0.412h-13.48c-0.41 0-0.77 0.257-0.9 0.636l-13.81 39.434-15.12-39.46c-0.14-0.367-0.49-0.61-0.88-0.61h-22.12v-0.003zm-28.78-0.057h-12.95c-0.52 0-0.95 0.426-0.95 0.949v56.481c0 0.53 0.43 0.95 0.95 0.95h12.95c0.52 0 0.95-0.42 0.95-0.95v-56.477c0-0.523-0.42-0.949-0.95-0.949v-0.004zm-6.4-25.719c-5.13 0-9.29 4.152-9.29 9.281 0 5.132 4.16 9.289 9.29 9.289s9.28-4.157 9.28-9.289c0-5.128-4.16-9.281-9.28-9.281zm113.42 43.88c-5.12 0-9.11-4.115-9.11-9.112s4.04-9.159 9.16-9.159 9.11 4.114 9.11 9.107c0 4.997-4.04 9.164-9.16 9.164zm0.05-17.365c-4.67 0-8.2 3.71-8.2 8.253 0 4.541 3.51 8.201 8.15 8.201 4.67 0 8.2-3.707 8.2-8.253 0-4.541-3.51-8.201-8.15-8.201zm2.02 9.138l2.58 3.608h-2.18l-2.32-3.31h-1.99v3.31h-1.82v-9.564h4.26c2.23 0 3.69 1.137 3.69 3.051 0.01 1.568-0.9 2.526-2.21 2.905h-0.01zm-1.54-4.315h-2.37v3.025h2.37c1.18 0 1.89-0.579 1.89-1.514 0-0.984-0.71-1.511-1.89-1.511z",fill:"#1ED760"}),i[0]=a,i[1]=s):(a=i[0],s=i[1]),i[2]!==n?(r=(0,t.jsxs)("svg",{"aria-label":"Spotify",className:n,role:"img",viewBox:"0 0 559 168",xmlns:"http://www.w3.org/2000/svg",children:[a,s]}),i[2]=n,i[3]=r):r=i[3],r}),e7=[{view:"recentlyAdded",label:"Recently Added",icon:(0,eJ.withPlayfulMotion)(eV.Clock,"wobble")},{view:"artists",label:"Artists",icon:(0,eJ.withPlayfulMotion)(ev.default)},{view:"albums",label:"Albums",icon:(0,eJ.withPlayfulMotion)(eY.default,"bounce")},{view:"songs",label:"Songs",icon:(0,eJ.withPlayfulMotion)(u.Music)}];function e9(){let e,a,i,n,o,c,u,m,f,p,y,x,h,b,g,k,j,v,S,N,P,A,_=(0,l.c)(49),C=(0,z.useMusicStore)(tr),T=(0,z.useMusicStore)(ts),M=(0,z.useMusicStore)(ta);_[0]===Symbol.for("react.memo_cache_sentinel")?(e={},_[0]=e):e=_[0];let U=(0,r.useQuery)(s.api.spotify.library.getPlaylists,e);_[1]===Symbol.for("react.memo_cache_sentinel")?(a={},_[1]=a):a=_[1];let I=(0,r.useQuery)(s.api.music.playlists.listPlaylists,a),[R,D]=(0,d.useState)(!1),[E,L]=(0,d.useState)(!1);_[2]===Symbol.for("react.memo_cache_sentinel")?(i=(0,t.jsx)(eQ.AppSidebarToggle,{}),_[2]=i):i=_[2],_[3]===Symbol.for("react.memo_cache_sentinel")?(n=(0,t.jsx)(eQ.AppSidebarHeader,{className:"px-1 pb-2",children:(0,t.jsxs)("div",{className:"flex items-center gap-1",children:[i,(0,t.jsxs)("span",{className:"group flex min-w-0 items-center gap-2 pr-1 pl-0.5",children:[(0,t.jsx)(e5,{className:"size-4 shrink-0"}),(0,t.jsx)("span",{className:"truncate font-semibold text-foreground text-sm",children:"Music"})]})]})}),_[3]=n):n=_[3];let $="home"===C;_[4]!==$?(o=(0,t.jsx)(eF.AppSidebarItem,{className:"group",icon:e3,isActive:$,label:"My Music",onClick:tl}),_[4]=$,_[5]=o):o=_[5],_[6]!==C?(c=e7.map(e=>(0,t.jsx)(eF.AppSidebarItem,{className:"group",icon:e.icon,isActive:C===e.view,label:e.label,onClick:()=>(0,z.setView)(e.view)},e.view)),_[6]=C,_[7]=c):c=_[7],_[8]!==c?(u=(0,t.jsx)(eq.AppSidebarSection,{title:"Library",children:c}),_[8]=c,_[9]=u):u=_[9],_[10]===Symbol.for("react.memo_cache_sentinel")?(m=()=>L(!0),_[10]=m):m=_[10];let B="musicPlaylists"===C&&null===M;_[11]!==B?(f=(0,t.jsx)(eF.AppSidebarItem,{className:"group",icon:e4,isActive:B,label:"All Playlists",onClick:tt}),_[11]=B,_[12]=f):f=_[12],_[13]!==I||_[14]!==M||_[15]!==C?(p=I?.map(e=>(0,t.jsx)(eF.AppSidebarItem,{className:"group",icon:e4,isActive:"musicPlaylists"===C&&M===e._id,label:e.name,onClick:()=>
1(0,z.selectMusicPlaylist)(e._id)},e._id)),_[13]=I,_[14]=M,_[15]=C,_[16]=p):p=_[16],_[17]!==f||_[18]!==p?(y=(0,t.jsxs)(eq.AppSidebarSection,{addLabel:"Create My Music playlist",onAdd:m,title:"My Music playlists",children:[f,p]}),_[17]=f,_[18]=p,_[19]=y):y=_[19];let O="spotifyHome"===C&&"bg-surface-hover";_[20]!==O?(x=(0,w.cn)("group flex h-8 w-full items-center rounded-md px-2.5 text-left transition-colors hover:bg-surface",O),_[20]=O,_[21]=x):x=_[21],_[22]===Symbol.for("react.memo_cache_sentinel")?(h=(0,t.jsx)(e6,{className:"h-4 w-auto"}),_[22]=h):h=_[22],_[23]!==x?(b=(0,t.jsx)("button",{"aria-label":"Spotify",className:x,onClick:te,type:"button",children:h}),_[23]=x,_[24]=b):b=_[24],_[25]===Symbol.for("react.memo_cache_sentinel")?(g=()=>D(!0),_[25]=g):g=_[25];let H="playlists"===C&&null===T;return _[26]!==H?(k=(0,t.jsx)(eF.AppSidebarItem,{className:"group",icon:e4,isActive:H,label:"All Playlists",onClick:e8}),_[26]=H,_[27]=k):k=_[27],_[28]!==U||_[29]!==T||_[30]!==C?(j=U?.map(e=>(0,t.jsx)(eF.AppSidebarItem,{avatarUrl:e.artworkUrl,className:"group",icon:e4,isActive:"playlists"===C&&T===e.spotifyPlaylistId,label:e.name,onClick:()=>(0,z.selectPlaylist)(e.spotifyPlaylistId)},e._id)),_[28]=U,_[29]=T,_[30]=C,_[31]=j):j=_[31],_[32]!==k||_[33]!==j?(v=(0,t.jsxs)(eq.AppSidebarSection,{addLabel:"Create playlist",onAdd:g,title:"Playlists",children:[k,j]}),_[32]=k,_[33]=j,_[34]=v):v=_[34],_[35]!==y||_[36]!==b||_[37]!==v||_[38]!==o||_[39]!==u?(S=(0,t.jsxs)(eQ.AppSidebarBody,{children:[o,u,y,b,v]}),_[35]=y,_[36]=b,_[37]=v,_[38]=o,_[39]=u,_[40]=S):S=_[40],_[41]!==R?(N=(0,t.jsx)(e2,{onOpenChange:D,open:R}),_[41]=R,_[42]=N):N=_[42],_[43]!==E?(P=(0,t.jsx)(e0,{onOpenChange:L,open:E}),_[43]=E,_[44]=P):P=_[44],_[45]!==S||_[46]!==N||_[47]!==P?(A=(0,t.jsxs)(eQ.AppSidebar,{children:[n,S,N,P]}),_[45]=S,_[46]=N,_[47]=P,_[48]=A):A=_[48],A}function e8(){return(0,z.selectPlaylist)(null)}function te(){return(0,z.setView)("spotifyHome")}function tt(){return(0,z.selectMusicPlaylist)(null)}function tl(){return(0,z.setView)("home")}function ta(e){return e.selectedMusicPlaylistId}function ts(e){return e.selectedPlaylistId}function tr(e){return e.view}var ti=e.i(742828),tn=e.i(267789),to=e.i(594207),ev=ev;function tc(e){let a,s,r,i,n,c,u,d=(0,l.c)(18),{artworkUrl:m,durationLabel:f,onPlay:p,subtitle:y,title:x}=e;return d[0]!==m?(a=(0,t.jsx)(R.AlbumArt,{className:"size-48 rounded-xl md:size-56",imageUrl:m}),d[0]=m,d[1]=a):a=d[1],d[2]!==x?(s=(0,t.jsx)(o.H2,{className:"text-center",children:x}),d[2]=x,d[3]=s):s=d[3],d[4]!==y?(r=(0,t.jsx)(o.Text,{as:"div",className:"text-center",variant:"bodyMuted",children:y}),d[4]=y,d[5]=r):r=d[5],d[6]!==f?(i=f?(0,t.jsx)(o.Text,{variant:"caption",children:f}):null,d[6]=f,d[7]=i):i=d[7],d[8]!==s||d[9]!==r||d[10]!==i?(n=(0,t.jsxs)("div",{className:"flex w-full min-w-0 flex-col items-center gap-1",children:[s,r,i]}),d[8]=s,d[9]=r,d[10]=i,d[11]=n):n=d[11],d[12]!==p?(c=p?(0,t.jsxs)(k.Button,{onClick:p,children:[(0,t.jsx)(P.Play,{className:"size-4 fill-current"}),"Play"]}):null,d[12]=p,d[13]=c):c=d[13],d[14]!==a||d[15]!==n||d[16]!==c?(u=(0,t.jsxs)("div",{className:"flex flex-col items-center gap-4 px-2 pt-2 pb-4",children:[a,n,c]}),d[14]=a,d[15]=n,d[16]=c,d[17]=u):u=d[17],u}function tu(e){let a,s,r,i,n,o,c,u,d,m,f,p,y,x,h=(0,l.c)(38),{track:b,tracks:g}=e;if(h[0]!==b.album||h[1]!==g){let e;h[3]!==b.album?(e=e=>e.album===b.album,h[3]=b.album,h[4]=e):e=h[4],a=g.filter(e),h[0]=b.album,h[1]=g,h[2]=a}else a=h[2];let j=a;return h[5]!==b.durationMs?(s=(0,I.formatTrackDuration)(b.durationMs),h[5]=b.durationMs,h[6]=s):s=h[6],h[7]!==j||h[8]!==b?(r=()=>(0,J.playLibrarySong)(j,b),h[7]=j,h[8]=b,h[9]=r):r=h[9],h[10]!==b.artist?(i={artist:b.artist,kind:"artist",source:"local"},h[10]=b.artist,h[11]=i):i=h[11],h[12]!==i||h[13]!==b.artist?(n=(0,t.jsx)(U.EntityLink,{label:b.artist,target:i,variant:"bodyMuted"}),h[12]=i,h[13]=b.artist,h[14]=n):n=h[14],h[15]!==s||h[16]!==r||h[17]!==n||h[18]!==b.title?(o=(0,t.jsx)(tc,{durationLabel:s,onPlay:r,subtitle:n,title:b.title}),h[15]=s,h[16]=r,h[17]=n,h[18]=b.title,h[19]=o):o=h[19],h[20]!==b.album?(c=()=>(0,z.openAlbumDetail)(b.album),h[20]=b.album,h[21]=c):c=h[21],h[22]===Symbol.for("react.memo_cache_sentinel")?(u=(0,t.jsx)(to.Disc3,{className:"size-4"}),h[22]=u):u=h[22],h[23]!==c||h[24]!==b.album?(d=(0,t.jsxs)(k.Button,{onClick:c,size:"sm",variant:"secondary",children:[u,b.album]}),h[23]=c,h[24]=b.album,h[25]=d):d=h[25],h[26]!==b.artist?(m=()=>(0,z.openArtistDetail)(b.artist),h[26]=b.artist,h[27]=m):m=h[27],h[28]===Symbol.for("react.memo_cache_sentinel")?(f=(0,t.jsx)(ev.default,{className:"size-4"}),h[28]=f):f=h[28],h[29]!==m||h[30]!==b.artist?(p=(0,t.jsxs)(k.Button,{onClick:m,size:"sm",variant:"secondary",children:[f,b.artist]}),h[29]=m,h[30]=b.artist,h[31]=p):p=h[31],h[32]!==p||h[33]!==d?(y=(0,t.jsxs)("div",{className:"flex flex-wrap justify-center gap-2",children:[d,p]}),h[32]=p,h[33]=d,h[34]=y):y=h[34],h[35]!==y||h[36]!==o?(x=(0,t.jsxs)(t.Fragment,{children:[o,y]}),h[35]=y,h[36]=o,h[37]=x):x=h[37],x}function td(e){let a,s,r,i,n,o,c,u=(0,l.c)(22),{song:d}=e,{playTrack:m}=(0,ed.useSpotifyPlay)(),f=d.spotifyUri,p=d.spotifyAlbumId;return u[0]!==d.durationMs?(a=d.durationMs?(0,I.formatTrackDuration)(d.durationMs):"",u[0]=d.durationMs,u[1]=a):a=u[1],u[2]!==m||u[3]!==f?(s=f?()=>m(f):void 0,u[2]=m,u[3]=f,u[4]=s):s=u[4],u[5]!==d.artist?(r={artist:d.artist,kind:"artist",source:"spotify"},u[5]=d.artist,u[6]=r):r=u[6],u[7]!==d.artist||u[8]!==r?(i=(0,t.jsx)(U.EntityLink,{label:d.artist,target:r,variant:"bodyMuted"}),u[7]=d.artist,u[8]=r,u[9]=i):i=u[9],u[10]!==d.artworkUrl||u[11]!==d.title||u[12]!==a||u[13]!==s||u[14]!==i?(n=(0,t.jsx)(tc,{artworkUrl:d.artworkUrl,durationLabel:a,onPlay:s,subtitle:i,title:d.title}),u[10]=d.artworkUrl,u[11]=d.title,u[12]=a,u[13]=s,u[14]=i,u[15]=n):n=u[15],u[16]!==p||u[17]!==d.album?(o=p?(0,t.jsx)("div",{className:"flex justify-center",children:(0,t.jsxs)(k.Button,{onClick:()=>
1(0,z.openSpotifyAlbumDetail)(p,d.album),size:"sm",variant:"secondary",children:[(0,t.jsx)(to.Disc3,{className:"size-4"}),d.album]})}):null,u[16]=p,u[17]=d.album,u[18]=o):o=u[18],u[19]!==n||u[20]!==o?(c=(0,t.jsxs)(t.Fragment,{children:[n,o]}),u[19]=n,u[20]=o,u[21]=c):c=u[21],c}function tm(e){let a,s,r=(0,l.c)(11),{song:i,tracks:n}=e;if("spotifySong"===i.kind){let e;return r[0]!==i?(e=(0,t.jsx)(td,{song:i}),r[0]=i,r[1]=e):e=r[1],e}if(r[2]!==i.trackId||r[3]!==n){let e;r[5]!==i.trackId?(e=e=>e.id===i.trackId,r[5]=i.trackId,r[6]=e):e=r[6],a=n.find(e),r[2]=i.trackId,r[3]=n,r[4]=a}else a=r[4];let c=a;if(!c){let e;return r[7]===Symbol.for("react.memo_cache_sentinel")?(e=(0,t.jsx)(o.Text,{as:"div",className:"px-4 py-8 text-center",variant:"bodyMuted",children:"This song is no longer in your library."}),r[7]=e):e=r[7],e}return r[8]!==c||r[9]!==n?(s=(0,t.jsx)(tu,{track:c,tracks:n}),r[8]=c,r[9]=n,r[10]=s):s=r[10],s}function tf(e){let a,s,r,i,n,o,c,u,d=(0,l.c)(20),{tracks:m}=e,f=(0,z.useMusicStore)(ty);d[0]!==f?(a=(0,tn.isSongDetail)(f),d[0]=f,d[1]=a):a=d[1];let p=a;if(d[2]!==f||d[3]!==m)s=f&&(0,tn.isSongDetail)(f)?"spotifySong"===f.kind?f.title:m.find(e=>e.id===f.trackId)?.title??"Song":"Song",d[2]=f,d[3]=m,d[4]=s;else s=d[4];let y=s;return d[5]!==y?(r=(0,t.jsx)(ti.DrawerTitle,{className:"sr-only",children:y}),d[5]=y,d[6]=r):r=d[6],d[7]===Symbol.for("react.memo_cache_sentinel")?(i=(0,t.jsx)(ti.DrawerDescription,{className:"sr-only",children:"Song details and playback"}),d[7]=i):i=d[7],d[8]!==f||d[9]!==p||d[10]!==m?(n=p?(0,t.jsx)(tm,{song:f,tracks:m}):null,d[8]=f,d[9]=p,d[10]=m,d[11]=n):n=d[11],d[12]!==n?(o=(0,t.jsx)(ti.DrawerContent,{children:n}),d[12]=n,d[13]=o):o=d[13],d[14]!==r||d[15]!==o?(c=(0,t.jsxs)(ti.DrawerPopup,{children:[r,i,o]}),d[14]=r,d[15]=o,d[16]=c):c=d[16],d[17]!==p||d[18]!==c?(u=(0,t.jsx)(ti.Drawer,{onOpenChange:tp,open:p,children:c}),d[17]=p,d[18]=c,d[19]=u):u=d[19],u}function tp(e){e||(0,z.closeDetail)()}function ty(e){return e.detail}var tx=e.i(222850),th=e.i(784278),tb=e.i(358010);function tg(e){var t;return{action:{kind:"openPlaylist",playlistId:e.spotifyPlaylistId},artworkUrl:e.artworkUrl??null,id:`playlist:${e._id}`,shape:"square",subtitle:`${e.ownerName} \xb7 ${t=e.trackCount,`${t} ${1===t?"track":"tracks"}`}`,title:e.name}}function tk(e){return{action:{kind:"openArtist",artistName:e.name},playAction:{contextUri:e.spotifyUri,deepLinkUrl:e.deepLinkUrl,kind:"playContext"},artworkUrl:e.artworkUrl??null,id:`artist:${e._id}`,shape:"circle",subtitle:"Artist",title:e.name}}function tj(e){return{action:{deepLinkUrl:e.deepLinkUrl,kind:"playTrack",trackUri:e.spotifyUri},artworkUrl:e.artworkUrl??null,id:`saved:${e._id}`,shape:"square",subtitle:e.artist,title:e.title}}function tv(e){return{action:{contextUri:e.spotifyUri,deepLinkUrl:e.deepLinkUrl,kind:"playContext"},artworkUrl:e.artworkUrl??null,id:`recommended:${e._id}`,shape:"square",subtitle:e.artist,title:e.name}}var tS=e.i(405383),tw=e.i(92635);function tN(e,t){return{artworkUrl:e.artworkUrl,key:`spshelf:${e.id}`,replay:t,shape:e.shape,subtitle:e.subtitle??"",title:e.title}}function tP(e){let a,s,r,i,n,c,u,d,m,f,p,y=(0,l.c)(34),{item:x}=e,{activate:b,play:g}=function(){let e,t,a,s=(0,l.c)(9),{canPlayInApp:r,playContext:i,playTrack:n}=(0,ed.useSpotifyPlay)();s[0]!==r||s[1]!==i||s[2]!==n?(e=(e,t)=>{switch(t.kind){case"playContext":r&&(0,tw.recordPlayed)(tN(e,{contextUri:t.contextUri,deepLinkUrl:t.deepLinkUrl,kind:"spotifyContext"})),i(t.contextUri);return;case"playTrack":r&&(0,tw.recordPlayed)(tN(e,{deepLinkUrl:t.deepLinkUrl,kind:"spotifyTrack",trackUri:t.trackUri})),n(t.trackUri);return;default:return t}},s[0]=r,s[1]=i,s[2]=n,s[3]=e):e=s[3];let o=e;s[4]!==o?(t=(e,t)=>{switch(t.kind){case"openPlaylist":return void(0,z.selectPlaylist)(t.playlistId);case"openArtist":return void(0,z.openArtistDetail)(t.artistName,"spotify");case"playContext":case"playTrack":return void o(e,t);default:return t}},s[4]=o,s[5]=t):t=s[5];let c=t;return s[6]!==c||s[7]!==o?(a={activate:c,play:o},s[6]=c,s[7]=o,s[8]=a):a=s[8],a}(),{playAction:k}=x,j=x.title;y[0]!==b||y[1]!==x?(a=()=>b(x,x.action),y[0]=b,y[1]=x,y[2]=a):a=y[2];let v=x.title,S="circle"===x.shape&&"rounded-full";return y[3]!==S?(s=(0,w.cn)("w-full transition-transform group-hover:scale-[1.02]",S),y[3]=S,y[4]=s):s=y[4],y[5]!==x.artworkUrl||y[6]!==x.title||y[7]!==s?(r=(0,t.jsx)(R.AlbumArt,{alt:v,className:s,imageUrl:x.artworkUrl}),y[5]=x.artworkUrl,y[6]=x.title,y[7]=s,y[8]=r):r=y[8],y[9]!==x.title||y[10]!==a||y[11]!==r?(i=(0,t.jsx)("button",{"aria-label":j,className:"block w-full cursor-pointer rounded-xl outline-none ring-ring/50 focus-visible:ring-2",onClick:a,type:"button",children:r}),y[9]=x.title,y[10]=a,y[11]=r,y[12]=i):i=y[12],y[13]!==x||y[14]!==g||y[15]!==k?(n=k&&(0,t.jsx)(h.PlayBadge,{label:`Play ${x.title}`,onPlay:()=>g(x,k)}),y[13]=x,y[14]=g,y[15]=k,y[16]=n):n=y[16],y[17]!==i||y[18]!==n?(c=(0,t.jsxs)("div",{className:"relative",children:[i,n]}),y[17]=i,y[18]=n,y[19]=c):c=y[19],y[20]!==b||y[21]!==x?(u=()=>b(x,x.action),y[20]=b,y[21]=x,y[22]=u):u=y[22],y[23]!==x.title?(d=(0,t.jsx)(o.Text,{as:"span",className:"truncate",variant:"label",children:x.title}),y[23]=x.title,y[24]=d):d=y[24],y[25]!==x.subtitle?(m=x.subtitle&&(0,t.jsx)(o.Text,{as:"span",className:"truncate",variant:"caption",children:x.subtitle}),y[25]=x.subtitle,y[26]=m):m=y[26],y[27]!==u||y[28]!==d||y[29]!==m?(f=(0,t.jsxs)("button",{className:"flex min-w-0 cursor-pointer flex-col text-left outline-none",onClick:u,type:"button",children:[d,m]}),y[27]=u,y[28]=d,y[29]=m,y[30]=f):f=y[30],y[31]!==f||y[32]!==c?(p=(0,t.jsxs)("div",{className:"group relative flex w-40 shrink-0 select-none flex-col gap-2",children:[c,f]}),y[31]=f,y[32]=c,y[33]=p):p=y[33],p}function tA(e){let a,s,r,i=(0,l.c)(7),{shelf:n}=e,o=n.title;return i[0]!==n.items?(a=n.items.map(t_),i[0]=n.items,i[1]=a):a=i[1],i[2]!==a?(s=(0,t.jsx)("div",{className:"-mx-1 flex gap-4 overflow-x-auto px-1 py-2",children:a}),i[2]=a,i[3]=s):s=i[3],i[4]!==n.title||i[5]!==s?(r=(0,t.jsx)(tS.DashboardSection,{title:o,children:s}),i[4]=n.title,i[5]=s,i[6]=r):r=i[6],r}function t_(e){return(0,t.jsx)(tP,{item:e},e.id)}function tC(){let e,a,s,r=(0,l.c)(3);return r[0]===Symbol.for("react.memo_cache_sentinel")?(e=(0,t.jsx)(tx.Skeleton,{className:"h-9 w-56"}),a=(0,t.jsx)(tx.Skeleton,{className:"h-40 w-full rounded-xl"}),r[0]=e,r[1]=a):(e=r[0],a=r[1]),r[2]===Symbol.for("react.memo_cache_sentinel")?(s=(0,t.jsxs)("div",{className:"flex flex-col gap-8",children:[e,a,(0,t.jsx)("div",{className:"flex gap-4",children:["a","b","c","d"].map(tT)})]}),r[2]=s):s=r[2],s}function tT(e){return(0,t.jsx)(tx.Skeleton,{className:"h-40 w-40 rounded-lg"},e)}function tM(){let e,a,s,r=(0,l.c)(4),i=(0,eu.useOnOpenApp)();return r[0]===Symbol.for("react.memo_cache_sentinel")?(e=(0,t.jsx)(o.H1,{children:"Connect Spotify"}),a=(0,t.jsx)(o.Muted,{className:"max-w-sm",children:"Bring your playlists, top artists, and saved songs into one gorgeous dashboard."}),r[0]=e,r[1]=a):(e=r[0],a=r[1]),r[2]!==i?(s=(0,t.jsxs)("div",{className:"flex flex-col items-center gap-3 py-16 text-center",children:[e,a,(0,t.jsx)(k.Button,{className:"mt-1",onClick:()=>i?.("settings"),children:"Connect Spotify"})]}),r[2]=i,r[3]=s):s=r[3],s}function tU(){let e,a=(0,l.c)(1);return a[0]===Symbol.for("react.memo_cache_sentinel")?(e=(0,t.jsxs)("div",{className:"flex flex-col items-center gap-3 py-16 text-center",children:[(0,t.jsx)(o.H1,{children:"Syncing your Spotify libraryâ¦"}),(0,t.jsx)(o.Muted,{className:"max-w-sm",children:"Pulling in y
1our saved tracks, playlists, and top artists. This happens on its own. You can keep browsing."})]}),a[0]=e):e=a[0],e}function tI(){let e,a=(0,l.c)(1);return a[0]===Symbol.for("react.memo_cache_sentinel")?(e=(0,t.jsxs)("div",{className:"flex flex-col items-center gap-2 py-16 text-center",children:[(0,t.jsx)(o.H1,{children:"Nothing here yet"}),(0,t.jsx)(o.Muted,{className:"max-w-sm",children:"Save some tracks or follow artists on Spotify and they'll show up here on the next refresh."})]}),a[0]=e):e=a[0],e}function tz(e){let a,s,r,i,n=(0,l.c)(10),{message:c,onRetry:u,retrying:d,retryError:m}=e;n[0]===Symbol.for("react.memo_cache_sentinel")?(a=(0,t.jsx)(o.H1,{children:"We couldn't sync your library"}),n[0]=a):a=n[0];let f=m??c??"Something went wrong syncing your Spotify library.";n[1]!==f?(s=(0,t.jsx)(o.Muted,{className:"max-w-sm",children:f}),n[1]=f,n[2]=s):s=n[2];let p=d?"Retryingâ¦":"Try again";return n[3]!==u||n[4]!==d||n[5]!==p?(r=(0,t.jsx)(k.Button,{className:"mt-1",disabled:d,onClick:u,variant:"soft",children:p}),n[3]=u,n[4]=d,n[5]=p,n[6]=r):r=n[6],n[7]!==s||n[8]!==r?(i=(0,t.jsxs)("div",{className:"flex flex-col items-center gap-3 py-16 text-center",children:[a,s,r]}),n[7]=s,n[8]=r,n[9]=i):i=n[9],i}function tR(){var e,l;let a,i,n=(0,r.useQuery)(s.api.spotify.connection_internal.listConnectionStatuses,{}),c=(0,r.useQuery)(s.api.spotify.library.getPlaylists,{}),u=(0,r.useQuery)(s.api.spotify.library.getTopArtists,{}),m=(0,r.useQuery)(s.api.spotify.library.getNewReleases,{}),f=(0,r.useQuery)(s.api.spotify.library.getSavedTracks,{limit:12}),p=(0,r.useMutation)(s.api.spotify.connection_internal.ensureLibraryFresh),y=(0,r.useAction)(s.api.spotify.library_sync.syncLibrary),[x,h]=(0,d.useState)(!1),[b,g]=(0,d.useState)(null),k=n?.connections.find(e=>"active"===e.status),j=k?._id;(0,d.useEffect)(()=>{j&&p({}).catch(e=>{console.error("Spotify freshness check failed:",e)})},[j,p]);let v=async()=>{h(!0),g(null);try{let e=await y({});e.synced||g(e.message)}catch(e){console.error("Spotify library sync failed:",e),g("Couldn't sync your Spotify library. Try again.")}finally{h(!1)}};if(void 0===n||k&&(void 0===c||void 0===u||void 0===m||void 0===f))return(0,t.jsx)(tC,{});if(!k)return(0,t.jsx)(tM,{});let S=(i=[],(e={artists:u??[],playlists:c??[],recommended:m??[],saved:f??[]}).artists.length>0&&i.push({id:"spotify:top-artists",items:e.artists.slice(0,12).map(tk),source:"spotify",title:"Artists"}),e.recommended.length>0&&i.push({id:"spotify:recommended",items:e.recommended.slice(0,12).map(tv),source:"spotify",title:"More from artists you love"}),e.playlists.length>0&&i.push({id:"spotify:playlists",items:e.playlists.slice(0,12).map(tg),source:"spotify",title:"Playlists"}),e.saved.length>0&&i.push({id:"spotify:saved",items:e.saved.slice(0,12).map(tj),source:"spotify",title:"Songs"}),i),w=0===S.length,N=k.lastSyncOutcome,P=void 0===k.lastSyncAt;return a=w&&N?.status==="failed"?(0,t.jsx)(tz,{message:N.message,onRetry:v,retryError:b,retrying:x}):w&&(P||N?.status==="syncing")?(0,t.jsx)(tU,{}):w?(0,t.jsx)(tI,{}):S.map(e=>(0,t.jsx)(tA,{shelf:e},e.id)),(0,t.jsxs)("div",{className:"flex flex-col gap-8",children:[(0,t.jsx)(o.H1,{children:(l=new Date().getHours())>=5&&l<12?"Good morning":l>=12&&l<18?"Good afternoon":"Good evening"}),(0,t.jsx)(th.FeaturedHero,{}),(0,t.jsx)(tb.RecentlyPlayedShelf,{}),a]})}function tD(e){let a,s,r,i,o=(0,l.c)(10),{description:c,icon:u,title:d}=e;return o[0]!==u?(a=(0,t.jsx)(n.EmptyMedia,{variant:"icon",children:u}),o[0]=u,o[1]=a):a=o[1],o[2]!==d?(s=(0,t.jsx)(n.EmptyTitle,{children:d}),o[2]=d,o[3]=s):s=o[3],o[4]!==c?(r=(0,t.jsx)(n.EmptyDescription,{children:c}),o[4]=c,o[5]=r):r=o[5],o[6]!==a||o[7]!==s||o[8]!==r?(i=(0,t.jsx)("div",{className:"flex h-full items-center justify-center p-8",children:(0,t.jsx)(n.Empty,{children:(0,t.jsxs)(n.EmptyHeader,{children:[a,s,r]})})}),o[6]=a,o[7]=s,o[8]=r,o[9]=i):i=o[9],i}function tE(e){let a,s,r=(0,l.c)(9),{playlists:i}=e,n=(0,z.useMusicStore)(tL);if(r[0]!==i||r[1]!==n){let e;r[3]!==n?(e=e=>e.spotifyPlaylistId===n,r[3]=n,r[4]=e):e=r[4],a=i.find(e),r[0]=i,r[1]=n,r[2]=a}else a=r[2];let o=a;if(o){let e;return r[5]!==o?(e=(0,t.jsx)(ef,{playlist:o}),r[5]=o,r[6]=e):e=r[6],e}if(0===i.length){let e;return r[7]===Symbol.for("react.memo_cache_sentinel")?(e=(0,t.jsx)(tD,{description:"Create one, or ask Ora to build you a playlist.",icon:(0,t.jsx)(c.ListMusic,{className:"size-6"}),title:"No playlists yet"}
1),r[7]=e):e=r[7],e}return r[8]===Symbol.for("react.memo_cache_sentinel")?(s=(0,t.jsx)(tD,{description:"Pick a playlist from the sidebar to see it here.",icon:(0,t.jsx)(c.ListMusic,{className:"size-6"}),title:"Select a playlist"}),r[8]=s):s=r[8],s}function tL(e){return e.selectedPlaylistId}function t$(e){let a,i,n,u,d=(0,l.c)(14),{tracks:m}=e,f=(0,z.useMusicStore)(tO),p=(0,r.useQuery)(s.api.music.playlists.listPlaylists,{})??[];if(d[0]!==p||d[1]!==f){let e;d[3]!==f?(e=e=>e._id===f,d[3]=f,d[4]=e):e=d[4],a=p.find(e),d[0]=p,d[1]=f,d[2]=a}else a=d[2];let y=a;if(y){let e;return d[5]!==y||d[6]!==m?(e=(0,t.jsx)(es,{playlist:y,tracks:m}),d[5]=y,d[6]=m,d[7]=e):e=d[7],e}if(0===p.length){let e;return d[8]===Symbol.for("react.memo_cache_sentinel")?(e=(0,t.jsx)(tD,{description:"Create one from the sidebar, or ask Ora to build you a playlist from your own audio.",icon:(0,t.jsx)(c.ListMusic,{className:"size-6"}),title:"No playlists yet"}),d[8]=e):e=d[8],e}return d[9]===Symbol.for("react.memo_cache_sentinel")?(i=(0,t.jsx)(o.H1,{children:"My Music playlists"}),d[9]=i):i=d[9],d[10]!==p?(n=p.map(tB),d[10]=p,d[11]=n):n=d[11],d[12]!==n?(u=(0,t.jsxs)("div",{className:"flex flex-col gap-4",children:[i,(0,t.jsx)(h.CardGrid,{children:n})]}),d[12]=n,d[13]=u):u=d[13],u}function tB(e){return(0,t.jsx)(q.MusicPlaylistCard,{playlist:e},e._id)}function tO(e){return e.selectedMusicPlaylistId}function tH(e){let a=(0,l.c)(15),{playlists:s,tracks:r,view:i}=e;switch(i){case"home":{let e;return a[0]!==r?(e=(0,t.jsx)(x.HomeView,{tracks:r}),a[0]=r,a[1]=e):e=a[1],e}case"recentlyAdded":{let e;return a[2]!==r?(e=(0,t.jsx)(b.RecentlyAddedView,{tracks:r}),a[2]=r,a[3]=e):e=a[3],e}case"songs":{let e;return a[4]!==r?(e=(0,t.jsx)(g.SongsView,{tracks:r}),a[4]=r,a[5]=e):e=a[5],e}case"artists":{let e;return a[6]!==r?(e=(0,t.jsx)(p.ArtistsView,{tracks:r}),a[6]=r,a[7]=e):e=a[7],e}case"albums":{let e;return a[8]!==r?(e=(0,t.jsx)(f.AlbumsView,{tracks:r}),a[8]=r,a[9]=e):e=a[9],e}case"playlists":{let e;return a[10]!==s?(e=(0,t.jsx)(tE,{playlists:s}),a[10]=s,a[11]=e):e=a[11],e}case"musicPlaylists":{let e;return a[12]!==r?(e=(0,t.jsx)(t$,{tracks:r}),a[12]=r,a[13]=e):e=a[13],e}case"spotifyHome":{let e;return a[14]===Symbol.for("react.memo_cache_sentinel")?(e=(0,t.jsx)(tR,{}),a[14]=e):e=a[14],e}default:return i}}let tQ=new Set(["playlists","musicPlaylists","spotifyHome"]);function tF(e){return e&&!(0,tn.isSongDetail)(e)?e:null}function tq(e){let a,s,r=(0,l.c)(12),{detail:i,isSearching:n,playlists:o,tracks:c,view:u}=e;if(n){let e;return r[0]!==o||r[1]!==c?(e=(0,t.jsx)(eO,{playlists:o,tracks:c}),r[0]=o,r[1]=c,r[2]=e):e=r[2],e}r[3]!==i?(a=tF(i),r[3]=i,r[4]=a):a=r[4];let d=a;if(d){let e;return r[5]!==d||r[6]!==c?(e=(0,t.jsx)(y.DetailRouter,{detail:d,tracks:c}),r[5]=d,r[6]=c,r[7]=e):e=r[7],e}return r[8]!==o||r[9]!==c||r[10]!==u?(s=(0,t.jsx)(tH,{playlists:o,tracks:c,view:u}),r[8]=o,r[9]=c,r[10]=u,r[11]=s):s=r[11],s}function tG(e){let n,o,c,d,m,f,p,y,x,h,b=(0,l.c)(29),{librarySettled:g,tracks:k}=e,j=(0,z.useMusicStore)(tK),v=(0,z.useMusicStore)(tJ),S=(0,z.useMusicStore)(tY),w=(0,z.useMusicStore)(tW),N=(0,z.useMusicStore)(tV),P=(0,r.useQuery)(s.api.spotify.library.getPlaylists,{})??[];b[0]!==S?(n=S.trim(),b[0]=S,b[1]=n):n=b[1];let A=n.length>0;b[2]!==v?(o=tF(v),b[2]=v,b[3]=o):o=b[3];let _=o;b[4]!==A||b[5]!==g||b[6]!==_||b[7]!==k||b[8]!==j?(c=g&&0===k.length&&!(A||_||tQ.has(j)),b[4]=A,b[5]=g,b[6]=_,b[7]=k,b[8]=j,b[9]=c):c=b[9];let C=c;return b[10]===Symbol.for("react.memo_cache_sentinel")?(d=(0,t.jsx)(e9,{}),b[10]=d):d=b[10],b[11]===Symbol.for("react.memo_cache_sentinel")?(m=(0,t.jsx)(a.AppContentHeader,{className:"px-4 pt-4 pb-2",children:(0,t.jsx)(eb,{})}),b[11]=m):m=b[11],b[12]!==v||b[13]!==A||b[14]!==P||b[15]!==C||b[16]!==k||b[17]!==j?(f=C?(0,t.jsx)("div",{className:"flex min-h-0 flex-1 flex-col",children:(0,t.jsx)(tD,{description:"Audio you record or upload to your Cloud shows up here, ready to play.",icon:(0,t.jsx)(u.Music,{className:"size-6"}),title:"Your library is empty"})}):(0,t.jsx)(a.AppContentBody,{classNameViewport:"p-4 pb-6",children:(0,t.jsx)(tq,{detail:v,isSearching:A,playlists:P,tracks:k,view:j})}),b[12]=v,b[13]=A,b[14]=P,b[15]=C,b[16]=k,b[17]=j,b[18]=f):f=b[18],b[19]===Symbol.for("react.memo_cache_sentinel")?(p=(0,t.jsx)(Q,{}),b[19]=p):p=b[19],b[20]!==k?(y=(0,t.jsx)(tf,{tracks:k}),b[20]=k,b[21]=y):y=b[21],b[22]!==f||b[23]!==y?(x=(0,t.jsxs)(a.AppContent,{children:[m,f,p,y]}),b[22]=f,b[23]=y,b[24]=x):x=b[24],b[25]!==w||b[26]!==N||b[27]!==x?(h=(0,t.jsxs)(i.AppSidebarLayout,{maxSidebarWidth:320,minSidebarWidth:200,onSidebarOpenChange:z.setSidebarOpen,onSidebarWidthChange:z.setSidebarWidth,sidebarOpen:w,sidebarWidth:N,children:[d,x]}),b[25]=w,b[26]=N,b[27]=x,b[28]=h):h=b[28],h}function tV(e){return e.sidebarWidth}function tW(e){return e.sidebarOpen}function tY(e){return e.searchQuery}function tJ(e){return e.detail}function tK(e){return e.view}function tX(){let e,a,i,n,o=(0,l.c)(9),{gate:c,isGuest:f}=(0,m.useGuestGate)();o[0]!==c?(e=c({}),o[0]=c,o[1]=e):e=o[1];let p=(0,r.useQuery)(s.api.music.queries.listLibrary,e);if(o[2]===Symbol.for("react.memo_cache_sentinel")?(a=[],o[2]=a):a=o[2],(0,d.useEffect)(tZ,a),f){let e;return o[3]===Symbol.for("react.memo_cache_sentinel")?(e=(0,t.jsx)(tD,{description:"Your library, playlists, and discovery arrive with an account. Sign in to play and save audio to your Cloud.",icon:(0,t.jsx)(u.Music,{className:"size-6"}),title:"Music"}),o[3]=e):e=o[3],e}let y=void 0!==p;return o[4]!==p?(i=p??[],o[4]=p,o[5]=i):i=o[5],o[6]!==y||o[7]!==i?(n=(0,t.jsx)(tG,{librarySettled:y,tracks:i}),o[6]=y,o[7]=i,o[8]=n):n=o[8],n}function tZ(){return(0,z.setSurfaceMounted)(!0),t0}function t0(){return(0,z.setSurfaceMounted)(!1)}e.s(["MusicApp",0,function(){let e,s=(0,l.c)(1);return s[0]===Symbol.for("react.memo_cache_sentinel")?(e=(0,t.jsx)(a.AppLayout,{children:(0,t.jsx)(tX,{})}),s[0]=e):e=s[0],e}
1],628631)}]);
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.