2 lines
8.1 KiB
JavaScript
Executable File
2 lines
8.1 KiB
JavaScript
Executable File
"use strict";(("undefined"!=typeof self?self:global).webpackChunkclient_web=("undefined"!=typeof self?self:global).webpackChunkclient_web||[]).push([[7553],{46154:(e,t,a)=>{a.r(t),a.d(t,{default:()=>Ce});a(46758),a(53321);var l=a(50959),r=a(35869),n=a(75802),s=a(74965),i=a(43495),o=a(11317),c=a(85648),u=a(41038),g=a(38024),d=a(91643),f=a(50879),m=a(65432),p=a(36199),y=a(50216),h=a(61046),k=a(57370),T=a(19848),x=a(47262),F=a(73516),C=a(1666),j=a(75516),b=a(91054);function D(e,t,a){const l={uri:e};return(0,F.R4)(l,t),(0,C.U6)(l,a?.map((e=>(0,j.cj)(e)??null)).filter(b.K)),l}var I=a(20980),S=a(22527),E=a(80626),P=a(10226),w=a(57562),L=a(80683),A=a(57986),v=a(67408),M=a(5542),N=a(47895),R=a(51837),_=a(87236),K=a(8824),Q=a(55538),U=a(11527);const B=l.memo((({tracklistDomRef:e})=>{const{spec:t,logger:a}=(0,E.fU)(R.createDesktopSearchBarEventFactory,{}),r=(0,l.useCallback)((()=>{a.logInteraction(t.filterFieldFactory().keyStrokeFilter())}),[a,t]),n=(0,l.useCallback)((()=>{a.logInteraction(t.filterFieldFactory().hitClearFilter())}),[a,t]),s=(0,_.v)().filter((e=>y.P0.includes(e)));return(0,U.jsxs)("div",{className:f.Z.searchBoxContainer,children:[(0,U.jsx)(l.Suspense,{fallback:null,children:(0,U.jsx)(K.K,{placeholder:c.ag.get("playlist.search_in_playlist"),clearOnEscapeInElementRef:e,onFilter:r,onClear:n})}),(0,U.jsx)(Q.l,{columns:s})]})}));a(45205),a(86277);var O=a(82187),q=a.n(O),V=a(79612),W=a(66205),z=a(22496),G=a(41194),H=a(43007),J=a(76950),Z=a(22795),$=a(90284),X=a(65786);const Y="liked-songs-tags";function ee(){return(0,X.z)("liked-songs-current-tag-filter",null)}const te="bnAGyFvicDJD8TnVSKnq",ae=e=>({id:e.filter,getName:()=>e.name,ubiId:e.name}),le=(0,l.memo)((({spec:e,nrTracks:t})=>{const{tags:a,currentTag:r,setCurrentTag:n}=function({nrTracks:e}){const t=(0,Z.y)(),a=(0,z.NL)(),[r,n]=ee(),[s,i]=(0,l.useState)([]),{data:o}=(0,G.a)({queryKey:[Y],queryFn:()=>t?.getTracksFilterTags(),staleTime:0,gcTime:864e5,placeholderData:H.Wk,refetchOnWindowFocus:!1});(0,l.useLayoutEffect)((()=>{const t=o?.find((e=>e.filter===r));if(!t&&r){if(e>0)return;n(null)}i(o??[])}),[r,n,e,o]);const c=(0,l.useCallback)((({data:{list:e}})=>{e===J.XD.TRACKS&&a.invalidateQueries({queryKey:[Y]})}),[a]);(0,$.b)(J.EW.UPDATE,c);const u=(0,l.useMemo)((()=>s.find((e=>e.filter===r))),[r,s]),g=(0,l.useCallback)((e=>{n(e?.filter??null)}),[n]);return{tags:r||e?s:[],currentTag:u,setCurrentTag:g}}({nrTracks:t}),s=(0,E.$P)(),i=(0,l.useCallback)(((t,l,r)=>{let i;if(!t)return i=e.clearButtonFactory().hitClearFilter(),void s.logInteraction(i);const o=a.find((({filter:e})=>e===t));if(!o)return;const c=e.filterChipFactory({identifier:o.name,position:r});l?(i=c.hitClearFilter(),n(null)):(i=c.hitFilter(),o&&n(o)),s.logInteraction(i)}),[s,n,e,a]),o=r?[]:a.map(ae),u=r?[ae(r)]:[];return a.length?(0,U.jsx)(W.F,{children:(0,U.jsx)(V.V,{availableFilters:o,selectedFilters:u,toggleFilterId:()=>{},resetFilterIds:()=>n(null),onFilterClick:i,ariaLabel:c.ag.get("web-player.liked-songs.liked-songs-filter-tags"),clearBtnAriaLabel:c.ag.get("web-player.liked-songs.clear-filter"),className:q()(te),applyLightThemeControls:!0})}):null}));var re=a(15842),ne=a(66819),se=a(17676),ie=a(25230),oe=a(72417);const ce="bKlB8pmFVoswJlZ_jhtL",ue=l.memo((function({metadata:e,onClickTogglePlay:t,isPlaying:a,spec:r,logger:n,backgroundColor:s,canSort:i,canFilter:o}){const{uri:u,name:g,totalLength:d}=e,f=(0,l.useRef)(null),m=(0,l.useMemo)((()=>r.actionBarFactory()),[r]),p=(0,l.useMemo)((()=>m.shuffleButtonContainerFactory()),[m]),y=(0,l.useMemo)((()=>m.filtersFactory()),[m]),h=d>0,k=d>0,T=i&&o,x=(0,oe.Q)(),F=(0,l.useCallback)(((e,t)=>{const a=m.downloadButtonFactory();t===M.mc.ADD?n.logInteraction(a.hitDownload({itemToDownload:u})):t===M.mc.REMOVE?n.logInteraction(a.hitRemoveDownload({itemToRemoveFromDownloads:u})):t===M.mc.NO_PERMISSION&&n.logInteraction(a.hitUiReveal())}),[m,n,u]),C=(0,ne.j)(),j=(0,P.W6)(se.rVA);return(0,U.jsxs)(re.o,{backgroundColor:s,children:[(0,U.jsxs)(W.F,{children:[k?(0,U.jsx)(A.$,{onClick:t,isPlaying:a,size:C,uri:u,ariaPauseLabel:c.ag.get("playlist.a11y.pause",g),ariaPlayLabel:c.ag.get("playlist.a11y.play",g)}):null,x&&(0,U.jsx)(E.Nh,{spec:p,children:(0,U.jsx)(ie.K,{entityName:g,contextUri:u,activationPlacement:"bottomEnd",size:C})}),(0,U.jsx)(w.o,{uri:u,canDownload:h,isFollowing:!0,onFollow:()=>{},size:C,onClick:F}),T?(0,U.jsx)(E.Nh,{spec:m,children:(0,U.jsx)(B,{tracklistDomRef:f})}):(0,U.jsx)("div",{className:ce,children:(0,U.jsx)(L.F,{property:N.FM,renderNewExperience:()=>(0,U.jsx)(v.A,{options:[],onSelect:()=>{},selected:null,enableViewModeMenu:!0})})})]}),j&&(0,U.jsx)(le,{spec:y,nrTracks:d})]})}));var ge=a(30933),de=a(18615),fe=a(56822),me=a(64222),pe=a(87350),ye=a(93295),he=a(44450),ke=a(62675);const Te=[p.QD.INDEX,p.QD.TITLE_AND_ARTIST,p.QD.ALBUM,p.QD.ADDED_AT,p.QD.DURATION],xe=({data:e,canFilter:t,canSort:a})=>{const{uri:r,name:o,totalLength:F}=e.metadata,C=(0,l.useRef)(null),j=(0,x.Y5)("#5038a0"),[I]=ee(),{filter:P}=(0,l.useContext)(m.fo),{sortState:w,setSortState:L}=(0,l.useContext)(y.Gb),{spec:A,logger:v}=(0,E.fU)(i.Q,{data:{uri:r}}),M=l.useMemo((()=>A.headerFactory()),[A]),N=l.useMemo((()=>A.tracklistFactory()),[A]);(0,l.useEffect)((()=>{null===w.column&&L({column:p.QD.ADDED_AT,order:p.kn.DESC})}),[w,L]);const R=(0,n.ur)(),_=(0,n.TH)(),K="POP"!==R?new URLSearchParams(_.search).get("uri"):null,{isPlaying:Q,togglePlay:B,usePlayContextItem:O,isActive:q}=(0,S.n)(D(r,(0,ge.w)(w),[P,I].filter(b.K)),{featureIdentifier:"your_library",referrerIdentifier:"your_library"}),V=()=>{const e=(0,me.aK)({isPlaying:Q,isActive:q,spec:A.actionBarFactory().playButtonFactory(),logger:v,uri:r});B({loggingParams:e})},[W]=(0,fe.d4)(),{isCompactMode:z}=(0,T.mJ)(),G=(({isCompactMode:e=!1})=>{const t=[...Te];return e&&t.splice(t.indexOf(p.QD.TITLE_AND_ARTIST),1,p.QD.TITLE,p.QD.ARTIST),t})({isCompactMode:z});return(0,U.jsx)(h.a,{columns:G,children:(0,U.jsxs)("section",{role:"presentation",className:f.Z.playlist,"data-testid":"playlist-page",children:[(0,U.jsx)(u.$,{children:c.ag.get("playlist.page-title",o)}),(0,U.jsx)(k.s,{metadata:{...e.metadata,hasSpotifyTracks:!0},totalItems:W,isPlaying:Q,togglePlay:V,backgroundColor:j,specLikedSongs:M}),(0,U.jsx)(ue,{metadata:e.metadata,onClickTogglePlay:V,isPlaying:Q,spec:A,logger:v,backgroundColor:j,canSort:a,canFilter:t}),(0,U.jsx)("div",{className:"contentSpacing",children:F>0?(0,U.jsx)(l.Suspense,{fallback:(0,U.jsx)(d.h,{hasError:!1,errorMessage:c.ag.get("error.request-collection-tracks-failure")}),children:(0,U.jsx)(E.Nh,{spec:N,children:(0,U.jsx)(de.p,{nrTracks:F,collectionUri:r,scrollToUri:K,usePlayContextItem:O,outerDomRef:C,spec:N,initialItems:e.contents.items,isCompactMode:z,tagFilter:I})})}):(0,U.jsx)(g.u,{message:c.ag.get("collection.empty-page.songs-subtitle"),title:c.ag.get("collection.empty-page.songs-title"),linkTo:"/search",linkTitle:c.ag.get("collection.empty-page.songs-cta"),renderInline:!0,children:(0,U.jsx)(s.F,{"aria-hidden":"true"})})})]})})},Fe=l.memo((function({user:e,uri:t}){const{filter:a}=(0,l.useContext)(m.fo),{sortState:r}=(0,l.useContext)(y.Gb),[n]=ee(),s=function(e,t,a){const r=(0,l.useContext)(I.H),n=(0,z.NL)(),s=(0,ye.jP)((()=>["useLikedSongs",e,a]),[e,a]),{data:i}=(0,G.a)({queryKey:s(),queryFn:()=>r.getTracks(a),gcTime:18e5,placeholderData:H.Wk,refetchOnWindowFocus:!1}),o=(0,l.useCallback)((()=>{n.invalidateQueries({queryKey:s()})}),[n,s]);(0,$.b)(J.EW.UPDATE,o);const c=(0,ke.I2)(t.id);return c&&i?{metadata:{uri:e,name:c.name,images:c.images,totalLength:i?.totalLength,unfilteredTotalLength:i.unfilteredTotalLength,owner:(0,he.V)(t)},contents:i}:null}(t,e,{offset:0,limit:25,sort:(0,ge.w)(r),filters:[a,n].filter(b.K)}),i=(0,l.useContext)(I.H).getCapabilities();return s?(0,U.jsx)(xe,{data:s,canFilter:i.canFilterTracksAndEpisodes&&s.metadata.unfilteredTotalLength>0,canSort:i.canSortTracksAndEpisodes&&s.metadata.unfilteredTotalLength>0}):(0,U.jsx)(d.h,{hasError:!1,errorMessage:c.ag.get("error.not_found.title.playlist"),loadOffline:i.canModifyOffline})})),Ce=()=>{const{user:e}=(0,r.v9)(pe.Gg);if(null===e)return null;const t=(0,o.wG)(e.id).toURI();return(0,U.jsx)(y.kz,{uri:t,children:(0,U.jsx)(m.hz,{uri:t,children:(0,U.jsx)(fe.Y4,{children:(0,U.jsx)(Fe,{uri:t,user:e})})})})}}}]);
|
|
//# sourceMappingURL=xpui-routes-collection-songs.js.map
|