mirror of
https://github.com/kristoferssolo/solorice.git
synced 2025-10-21 20:10:34 +00:00
2 lines
28 KiB
JavaScript
Executable File
2 lines
28 KiB
JavaScript
Executable File
"use strict";(("undefined"!=typeof self?self:global).webpackChunkclient_web=("undefined"!=typeof self?self:global).webpackChunkclient_web||[]).push([[6863],{10741:(e,a,s)=>{s.d(a,{u:()=>y});var i=s(97500),r=s.n(i),t=s(8159),l=s(13466),n=s(17930),c=s(45346),o=s(85513),d=s(79303),u=s(76748),m=s(86070);const y=({uri:e,src:a,playAriaLabel:s,onClick:i,isPlaying:y,isActive:p,isLocked:h,isEpisode:g,isVideo:x,spec:b})=>{const j=(0,c.W)(),v=(0,d.s)(),k=(0,t.YQ)((a=>{let s;if(j({type:"click",intent:y?"pause":"play"}),b){const a=b.playbackButtonFactory();let i;i=p&&y?a.hitPause({itemToBePaused:e}):p&&!y?a.hitResume({itemToBeResumed:e}):a.hitPlay({itemToBePlayed:e}),s=v.logInteraction(i)}i(a,s)}),o.d,{leading:!0,trailing:!1});return(0,m.jsxs)("div",{className:u.A.rowImageWithPlay,children:[(0,m.jsx)(n.e,{src:a,isEpisode:g,isVideo:x}),(0,m.jsx)(l.x,{className:r()(u.A.rowPlayPauseButton,u.A.rowImagePlayPauseButton),iconClassName:u.A.rowPlayPauseIcon,onClick:k,isPlaying:y,isLocked:h,playAriaLabel:s})]})}},22022:(e,a,s)=>{s.r(a),s.d(a,{default:()=>ri});var i=s(30758),r=s(97500),t=s.n(r),l=s(9183),n=s(12783),c=s(21953),o=s(30171),d=s(72010),u=s(61544),m=s(11808),y=s(71588),p=s(48100),h=s(31685),g=s(82442),x=s(56341),b=s(74793),j=s(59116),v=s(21752),k=s(51271),L=s(55194),R=s(14693),f=s(82097),I=s(15742),N=s(8385);const A=new I.l("internalLinkRecommenderTrack","query","eda0a1e9140af4114340bf3098980172dfd1003b65cfc980c36ab238dbfcef84",null);var P=s(39710),w=s(15739),C=s(9813),T=s(71801),U=s(10741),E=s(84075),S=s(72445),_=s(72605),B=s(96849),F=s(40009),O=s(69905),M=s(92421),D=s(81783),V=s(98912),q=s(12274),Z=s(4096),G=s(48200),z=s(59355),$=s(58237),W=s(78074),X=s(95302),Y=s(16972),Q=s(42582),H=s(94672);const J="Z9Dr8PkXFtlO8KnnDcxp",K="Bm0LUMlhVIcF5qusgdUP",ee="GIyB7JDkRwjtVL6PSBbg",ae="whTIka0YYAkqhqrs26Wa";var se=s(86070);const ie=i.memo((function({uri:e,name:a,imgUrl:s,artists:i,isExplicit:r,index:t,albumUri:l,contextUri:n,isPlayable:c,isMOGEFRestricted:o,totalMilliseconds:d,playcount:u}){const{isActive:h,isPlaying:g,triggerPlay:x,togglePlay:b}=(0,Q.P)({uri:e},{featureIdentifier:"ilr"}),j=(0,Y.T)(e),v=(0,G.g)(e,c),k=i.map((e=>e.name)).join(m.Ru.getSeparator()),{badges:L,hasBadges:R}=(0,H.b)({isMOGEFRestricted:o,downloadAvailability:j,isExplicit:r}),f=i.map((e=>e.name)).join(m.Ru.getSeparator()),I=(0,Z.c)();return(0,se.jsx)(X.pZ,{value:"row",index:t,children:(0,se.jsx)(y.h,{menu:(0,se.jsx)(p.P,{uri:e,albumUri:l,artists:i,contextUri:n}),children:(0,se.jsxs)(V.w,{uri:e,contextUri:n,isPlayable:v,onTriggerPlay:(e,a)=>{x({loggingParams:a})},isActive:h,index:t,ariaRowIndex:t,dragMetadata:{name:a,createdBy:k},children:[(0,se.jsxs)(F.U,{ariaColIndex:0,children:[(0,se.jsx)(U.u,{uri:e,src:s,onClick:(e,a)=>{b({loggingParams:a})},isLocked:!1,isPlaying:g,isActive:h,playAriaLabel:m.Ru.get("tracklist.a11y.play",a,k)}),(0,se.jsxs)(E.l,{children:[(0,se.jsx)(P.R,{uri:e,enabled:I,className:ee,children:(0,se.jsx)(D.p,{titleText:a,children:a})}),R&&(0,se.jsxs)(C.P,{children:[L.download&&(0,se.jsx)(z._,{}),L.explicit&&(0,se.jsx)($.g,{}),L.nineteen&&(0,se.jsx)(W.q,{className:ae,size:16})]}),(0,se.jsx)(M.p,{children:(0,se.jsx)(w.l,{artists:i})})]})]}),(0,se.jsx)(O.o,{ariaColIndex:1,children:(0,se.jsx)(_.Y,{playcount:u})}),(0,se.jsxs)(B.l,{ariaColIndex:2,children:[(0,se.jsx)(q.d,{uri:e}),(0,se.jsx)(T.P,{duration:d}),(0,se.jsx)(S.Y,{menu:(0,se.jsx)(p.P,{uri:e,albumUri:l,contextUri:n,artists:i}),label:m.Ru.get("more.label.track",a,f)})]})]})})})}),((e,a)=>e.uri===a.uri&&e.index===a.index));var re=s(89661),te=s(45546),le=s(46288),ne=s(83388),ce=s(79787);const oe=i.memo((function({subtitle:e,uri:a}){const{data:s}=(r={uri:a},(0,N.I)(A,r,t));var r,t;const l=s?.seoRecommendedTrack.items,o=(0,i.useMemo)((()=>l?.slice(0,Math.min(l.length,5))),[l]),d=(0,i.useCallback)((e=>({uri:"uri"in e.data?e.data.uri:""})),[]),u=(0,i.useMemo)((()=>[le.$.TITLE_AND_ARTIST,le.$.ALBUM,le.$.DURATION]),[]),y=(0,i.useCallback)(((e,s)=>{if(!(e=>{return a=e,"NotFound"!==a?.__typename&&"GenericError"!==a?.__typename&&"Track"===e.__typename;var a})(e.data))return(0,se.jsx)(i.Fragment,{});const r=e.data;return(0,se.jsx)(ie,{index:s,contextUri:a,uri:r.uri,name:r.name,totalMilliseconds:r.duration.totalMilliseconds,imgUrl:r.albumOfTrack?.coverArt?.sources[0]?.url,isPlayable:r.playability.playable,artists:r.artists.items.map((e=>({uri:e.uri,id:e.id,name:e.profile.name}))),albumUri:r?.albumOfTrack?.uri||"",isExplicit:r.contentRating?.label===ce.x7.Explicit,isMOGEFRestricted:r.contentRating?.label===ce.x7.NineteenPlus,playcount:parseInt(r.playcount||"0",10)},`${s}-${r.uri}`)}),[a]);return l?.length?(0,se.jsxs)("div",{className:J,children:[(0,se.jsxs)("div",{className:K,children:[(0,se.jsx)(n.E,{variant:"titleSmall",semanticColor:"textBase",children:m.Ru.get("playlist.extender.recommended.title")}),(0,se.jsx)(n.E,{variant:"bodySmall",paddingBottom:c.CD,children:e})]}),(0,se.jsx)(te.S4,{ariaLabel:m.Ru.get("playlist.extender.recommended.title"),nrTracks:Math.min(l.length,5),rowPlaceholder:re.qq,tracks:o,renderRow:y,resolveItem:d,columns:u},"internal-link-recommender-track-list")]}):null})),de=e=>{const{entityType:a}=e;return(0,se.jsx)(f.s,{onError:()=>{(0,ne.fE)({metric_type:R.MetricTypes.COUNTER,what:"dwp-ilr-component-error",value:1,tags:{entityType:a}})},children:(0,se.jsx)(oe,{...e})})};var ue=s(59996),me=s(83028),ye=s(76652),pe=s(80331),he=s(25449);const ge=({album:e,index:a,artistURI:s})=>(0,se.jsx)(X.pZ,{value:"card",index:a,children:(0,se.jsx)(pe.R,{index:a,latest:!1,showType:!0,...(0,he.m)(e,s,e.name)})});var xe=s(57734),be=s(51005);const je=({albums:e,artistName:a,artistId:s,artistUri:i,className:r})=>e?(0,se.jsx)(X.pZ,{value:"shelf/albums",children:(0,se.jsx)(xe.$,{total:e.totalCount,title:m.Ru.get("rich-page.popular-albums-by-artist",{artist:a}),seeAllUri:`${(0,be.Dh)(s)}:discography:${ce._m.Album.toLowerCase()}`,seeAllLabel:m.Ru.get("shelf.see-all"),alwaysShowSeeAll:!0,className:r,children:(0,be.Ey)(e.items).map(((e,a)=>(0,se.jsx)(ge,{album:e,index:a,artistURI:i},e.uri)))})}):null;var ve=s(13713);const ke=({artistId:e,className:a,fansAlsoLike:s,title:i})=>(0,se.jsx)(X.pZ,{value:"shelf/fans-also-like",children:(0,se.jsx)(xe.$,{total:s.length,title:i??m.Ru.get("rich-page.fans-also-like"),seeAllUri:`${(0,be.Dh)(e)}:related`,className:a,children:s.map(((e,a)=>(0,se.jsx)(X.pZ,{value:"card",index:a,children:(0,se.jsx)(ve.a,{index:a,uri:e.uri,name:e.profile.name,images:e.visuals.avatarImage?.sources||[]})},e.uri)))})});var Le=s(12330);const Re="ERm7dIKbVoqGwPb_lXPH",fe=({artistName:e,artistUri:a,headerClassName:s,rowClassName:r,topTracks:t,topTracksTransformer:l,uri:c})=>{const o=(0,i.useMemo)((()=>t?.items.map((e=>l(e,c)))),[t?.items,l,c]);return o&&o.length>0?(0,se.jsxs)("div",{className:r,children:[(0,se.jsxs)("div",{children:[(0,se.jsx)(n.E,{variant:"bodySmall",className:Re,children:m.Ru.get("rich-page.popular-tracks")}),(0,se.jsx)(n.E,{as:"h2",variant:"titleSmall",semanticColor:"textBase",className:s,children:e})]}),(0,se.jsx)(Le.z,{uri:a,nrTracks:o.length,initialTracks:o})]}):null};var Ie=s(80913);const Ne=({artistName:e,artistId:a,artistUri:s,className:i,releases:r,artistImages:t})=>r?(0,se.jsx)(X.pZ,{value:"shelf/releases",children:(0,se.jsx)(xe.$,{total:10,title:m.Ru.get("rich-page.popular-releases-by-artist",{artist:e}),seeAllUri:`${(0,be.Dh)(a)}:discography:${ce._m.Album.toLowerCase()}`,seeAllLabel:m.Ru.get("shelf.see-all"),alwaysShowSeeAll:!0,className:i,richTitleShelfHeaderProps:t?{title:e,pretitle:m.Ru.get("artist-page.popular"),media:(0,Ie.h)(t,{desiredSize:48})||""}:null,children:r.items.map(((e,a)=>(0,se.jsx)(ge,{album:e,index:a,artistURI:s},e.uri)))})}):null,Ae=({artistId:e,artistName:a,artistUri:s,className:i,singles:r})=>r?(0,se.jsx)(X.pZ,{value:"shelf/singles-and-eps",children:(0,se.jsx)(xe.$,{total:r.totalCount,title:m.Ru.get("rich-page.popular-singles-and-eps-by-artist",{artist:a}),seeAllUri:`${(0,be.Dh)(e)}:discography:${ce._m.Single.toLowerCase()}`,seeAllLabel:m.Ru.get("shelf.see-all"),alwaysShowSeeAll:!0,className:i,children:(0,be.Ey)(r.items).map(((e,a)=>(0,se.jsx)(ge,{album:e,index:a,artistURI:s},e.uri)))})}):null;var Pe=s(24811),we=s(84512),Ce=s(34892),Te=s(27911),Ue=s(77860),Ee=s(26876),Se=s(75003);const _e="VdIaMy6YRQX6cN5B7OVC",Be="LjkmarFarmUOq0nmv9iy",Fe="VHigmLQwT1FxkKEbCs4H",Oe="qX5K6LTMIuXG1gFBXzjZ",Me="fsH_X6pBkexdxtu19q5k",De="sDbr7RxY_jjg1XXq8zU5",Ve="MiWZGlZeQCy1tibDTql5",qe="uci6FedOoLZEL163ZR8k",Ze="GDA6ugyRoV7ZiqIyOU4d",Ge="IUBwxdZXklSkRPTZ9w_Q",ze="f7XB243E_dNMV9dkUXV6",$e="gQQC7YFmzffMUaCqbx3o",We="QJVNM_FcLpEHhjDc_FU3",Xe="Vd2oInYt1Ynz9X6KgL7o",Ye="yUA20RYjsLIb7xXNRlfn",Qe="MVDvKVX1aJ05U9lmHzaz",He=({richTrack:e})=>{const{search:a}=(0,l.zy)(),s=(0,i.useCallback)((()=>new URLSearchParams(a.slice(1)).get("highlight")||""),[a])(),{tracklistRef:r}=(0,Se.h)(),t=e.albumOfTrack,n=(0,Ee.J)(t?.uri||""),{usePlayContextItem:c}=(0,Q.P)({uri:n},{featureIdentifier:"album"}),o=(0,i.useMemo)((()=>({items:[],totalCount:0})),[]),d=(0,Ue.t)();return t?(0,se.jsx)("div",{ref:r,className:Ve,children:(0,se.jsx)(Ce.a,{columns:d,children:(0,se.jsx)(Te.F,{ariaLabel:t.name,nrTracks:t.tracks.totalCount,albumUri:t.uri,highlightUri:s,discs:o,usePlayContextItem:c,hasHeaderRow:!1})})}):null};var Je=s(21968),Ke=s(97438),ea=s(37712),aa=s(97684),sa=s(47231),ia=s(70675),ra=s(39796),ta=s(54874),la=s(55030),na=s(69578),ca=s(45346),oa=s(52608),da=s(98767),ua=s(70583),ma=s(62720),ya=s(72091);const pa=i.memo((function({uri:e,togglePlay:a,isPlaying:s,isActive:r,spec:t,logger:l,backgroundColor:n,name:c,isPlayable:o,albumUri:d,artists:u}){const y=(0,ca.W)(),h=(0,oa.n)(),[g,x]=(0,ma.A)(e),b=(0,la.d$)(),{spec:j,logger:v}=(0,ya.r)(Je.e,{data:{uri:e}});(0,i.useEffect)((()=>{b&&v.logImpression(j.impression())}),[b,v,j]);const k=(0,i.useCallback)((async()=>{y({targetUri:e,intent:g?"unsave":"save",type:"click"});const a=t.saveButtonFactory();l.logInteraction(g?a.hitRemoveLike({itemNoLongerLiked:e}):a.hitLike({itemToBeLiked:e})),g&&b&&v.logInteraction(j.hitAddToPlaylist({itemToBeAdded:e,playlist:ua.BP}));try{await x(!g)}catch{}}),[y,e,g,t,l,x,b,v,j]),L=(0,i.useCallback)((()=>{const i=(0,da.$I)({isPlaying:s,isActive:r,spec:t.playButtonFactory(),logger:l,uri:e});a({loggingParams:i})}),[r,s,l,t,a,e]),R=(0,i.useCallback)((()=>{l.logInteraction(t.contextButtonFactory().hitUiReveal())}),[l,t]),f=(0,na.j)();return(0,se.jsx)(Ke.E,{backgroundColor:n,children:(0,se.jsxs)(ea.S,{children:[(0,se.jsx)(ta.e,{children:(0,se.jsx)(ye.D,{onClick:L,isPlaying:s,disabled:!o,size:f,uri:e})}),(0,se.jsx)(ta.e,{children:(0,se.jsx)(aa.M,{isAdded:g,onClick:k,disabled:!h,size:f,condensed:!0})}),(0,se.jsx)(sa.f,{uri:e,isFollowing:g,onFollow:k,size:f,condensed:!0}),(0,se.jsx)(ra.b,{menu:(0,se.jsx)(p.P,{uri:e,albumUri:d,artists:u}),onShow:R,children:(0,se.jsx)(ia.e,{label:m.Ru.get("more.label.context",c),size:f})})]})})}));var ha=s(80368),ga=s(31322);const xa="OH5mnpJIVCJozYM3raMt",ba="etw0slM6uVrCi5RR3iDi",ja=({padded:e,providerDisplayName:a})=>a?(0,se.jsx)(ga.Z,{as:"p",dir:"auto",variant:"finale",className:`${xa} ${e?ba:""}`,children:m.Ru.get("web-player.lyrics.providedBy",a)}):null;var va=s(36485);let ka=function(e){return e.LOADING="LOADING",e.LOADED="LOADED",e.UNAVAILABLE="UNAVAILABLE",e}({});const La=(e,a)=>{switch(a.type){case"LYRICS_LOADING":return{...e,[a.uri]:{status:ka.LOADING}};case"LYRICS_LOADED":return{...e,[a.uri]:{status:ka.LOADED,data:a.response}};case"LYRICS_ERROR":return{...e,[a.uri]:{status:ka.UNAVAILABLE}};default:return(0,va.d)(a,`Unhandled lyrics action with type: ${a.type}`)}};var Ra=s(40312),fa=s(38481);var Ia=s(52276);const Na=async({trackUri:e,api:a,imageForLyricsRequest:s,isPlayable:i})=>{if(!i)return{hasLyrics:!1};const r=(0,u.o_)(e);try{const e=await(async(e,a,s)=>(await e.build().withHost(fa.Hj).withPath(`/track/${encodeURIComponent(a)}/image/${encodeURIComponent(s)}`).withHeaders([{key:"App-Platform",value:"WebPlayer"}]).withQueryParameters({format:"json",vocalRemoval:!1}).withEndpointIdentifier("/track/{trackId}").send()).body)(a||Ra.n.getInstance(),r.id,s||"");return{hasLyrics:!0,syncType:e.lyrics.syncType,lyrics:e.lyrics.lines,provider:e.lyrics.provider,providerDisplayName:e.lyrics.providerDisplayName,providerLyricsId:e.lyrics.providerLyricsId,isRtlLanguage:e.lyrics.isRtlLanguage}}catch(e){if(e instanceof Ia.O&&404===e.status)return{hasLyrics:!1};throw e}},Aa={status:ka.LOADING},Pa={status:ka.UNAVAILABLE},wa=i.createContext(void 0),Ca=({children:e,initialState:a={}})=>{const s=i.useReducer(La,a);return(0,se.jsx)(wa.Provider,{value:s,children:e})},Ta=({uri:e,isNotPermittedToFetchLyrics:a,imageForLyricsRequest:s,isPlayable:r})=>{const t=i.useContext(wa);if(void 0===t)throw new Error("useTrackEntityLyrics must be used within a TrackEntityLyricsProvider");const[l,n]=t,c=e?l[e]:null;return(0,i.useEffect)((()=>{a||!c&&e&&(n({type:"LYRICS_LOADING",uri:e}),Na({trackUri:e,imageForLyricsRequest:s,isPlayable:r}).then((a=>{n({type:"LYRICS_LOADED",uri:e,response:a})})).catch((()=>{n({type:"LYRICS_ERROR",uri:e})})))}),[n,s,a,r,c,e]),e&&(0,u.U_)(e)&&!a&&r?c||Aa:Pa},Ua=({uri:e,imageForLyricsRequest:a,isPlayable:s})=>{const i=(0,ha.l)(),{data:r}=Ta({uri:e,imageForLyricsRequest:a,isNotPermittedToFetchLyrics:i,isPlayable:s});return r?.hasLyrics?(0,se.jsx)(ja,{providerDisplayName:r.providerDisplayName}):null};var Ea=s(41978),Sa=s(81987),_a=s(43830);const Ba="QhDsXG1Gmo7XmQWLggAO",Fa="bZgWQj7UxvK8GYKWDA7N",Oa="AW61P3tnW5cKJCWtbhFh",Ma=({buttonText:e,onSecondaryButtonClick:a,onPrimaryButtonClick:s,secondaryButtonText:i,text:r})=>(0,se.jsxs)("div",{className:Ba,"data-testid":"static-activation-trigger",children:[(0,se.jsx)(n.E,{className:Fa,variant:"bodyMediumBold",children:r}),(0,se.jsxs)("div",{className:Oa,children:[(0,se.jsx)(o.H,{onClick:a,semanticColor:"textBase",children:i}),(0,se.jsx)(_a.$,{onClick:s,colorSet:"invertedLight",children:e})]})]});var Da=s(39733),Va=s(20842),qa=s(63198),Za=s(21233),Ga=s(47721),za=s(7939),$a=s(95625);var Wa=s(30270),Xa=s(50513);const Ya="EaTxqhHk6J4ecKHwpY5m",Qa="dUQl9yd5x_1oWk4L0Ntm",Ha="xt5C47eHPYNiriMJxGnC",Ja=({words:e,onObserve:a,lyricsInView:s})=>{const{ref:r,inView:t}=(0,Xa.Wx)({threshold:0}),l=(0,i.useRef)(!1);return(0,i.useEffect)((()=>{s||(l.current=!1)}),[s]),(0,i.useEffect)((()=>{l.current||t&&(a({text:e,outOfView:!1}),l.current=!0)}),[t,a,e]),(0,se.jsx)(n.E,{ref:r,as:"p",dir:"auto",variant:"bodyMedium",className:Ha,children:e})};var Ka=s(15212);const es="q1JbsdMqX7OImgIFWa6J",as="hAGejMh7SncdbJ5wcfUi",ss="IaG9Zc3xGxeYjsn73RAz",is="zgSEYVU2gMYxihFVEJPn",rs="expandable-lyrics-container";const ts=({lyrics:e,lyricsInView:a,onObserve:s,previewCount:r})=>{const[l,c]=(0,i.useState)(!1),{visibleLyrics:o,collapsibleLyrics:d}=function(e,a){let s=0,i=-1;const r=e.filter((e=>!!e.words));for(const[e,t]of r.entries())if(s+=t.words.length,s>a){i=e-1;break}if(i>-1)return{visibleLyrics:r.slice(0,i),collapsibleLyrics:r.slice(i)};return{visibleLyrics:r,collapsibleLyrics:[]}}(e,r),u=d.length>0,y=l?m.Ru.get("show_less"):`…${m.Ru.get("show_more")}`;return(0,se.jsxs)(se.Fragment,{children:[o.map((({words:e},i)=>(0,se.jsx)(Ja,{onObserve:s,words:e,lyricsInView:a},`lyrics-seo-line-${i}`))),(0,se.jsx)("span",{"aria-hidden":!l,className:t()(ss,{[is]:l}),children:d.map((({words:e},i)=>(0,se.jsx)(Ja,{onObserve:l?s:()=>{},words:e,lyricsInView:l&&a},`lyrics-seo-line-${i}`)))}),u&&(0,se.jsx)("button",{className:es,onClick:()=>{c(!l)},"aria-controls":rs,"aria-owns":rs,"aria-label":y,children:(0,se.jsx)(n.E,{variant:"bodyMediumBold",className:as,children:y})})]})},ls=({data:e,eventSender:a,playbackId:s,previewCount:r,trackPageEnhancedEnabled:t,uri:l})=>{const{lyrics:c=[],provider:o,providerLyricsId:d,syncType:u}=e,{ref:y,inView:p}=(0,Xa.Wx)({threshold:0}),h=function(e){const{trackUri:a,provider:s,providerLyricsId:r,syncType:t,eventSender:l,playbackId:n,isSnippet:c}=e,o=(0,i.useRef)(null),[d,u]=(0,i.useState)(!1),[m,y]=(0,i.useState)(0),[p,h]=(0,i.useState)(!1),g=(0,i.useMemo)((()=>(0,Ka.W)({lyrics_format:"track-page",track_uri:a,provider:s,provider_lyrics_id:r,sync_type:t,playback_id:n,is_snippet:c})),[a,s,r,t,n,c]);return(0,i.useEffect)((()=>{u(!1),y(0),h(!1),o.current=null}),[a]),(0,i.useEffect)((()=>{d&&n&&u(!1)}),[n]),(0,i.useEffect)((()=>{d||m>=140&&p&&(l?.send(g),u(!0))}),[m,d,g,l,p]),(0,i.useCallback)((e=>{const{text:a,outOfView:s}=e;a&&a.length>1&&(y((e=>e+a.length)),d||null!==o.current||(o.current=setTimeout((()=>{h(!0)}),1500))),s&&(o.current&&clearTimeout(o.current),o.current=null,y(0))}),[y,d])}({trackUri:l,provider:o,providerLyricsId:d,syncType:u,eventSender:a,playbackId:s});return(0,i.useEffect)((()=>{p||h({outOfView:!0})}),[p,h]),(0,se.jsxs)("div",{className:Ya,ref:y,children:[(0,se.jsx)(n.E,{as:"h2",variant:"titleSmall",semanticColor:"textBase",className:Qa,children:m.Ru.get("web-player.lyrics.title")}),!t&&c.map((({words:e},a)=>(0,se.jsx)(Ja,{onObserve:h,words:e,lyricsInView:p},`lyrics-seo-line-${a}`))),t&&(0,se.jsx)(ts,{lyrics:c,lyricsInView:p,onObserve:h,previewCount:r})]})};var ns=s(31252),cs=s(2435),os=s(10132);const ds=({uri:e,imageForLyricsRequest:a,isPlayable:s})=>{const[r,t]=(0,i.useState)(420),{trackPageEnhancedEnabled:l}=(0,Wa.Zo)(),{data:n}=Ta({uri:e,imageForLyricsRequest:a,isPlayable:s}),c=(0,Da.vh)(),{isPaused:o,currentTrackUri:d,playbackId:u}=(0,cs.o)((e=>({isPaused:e?.isPaused,currentTrackUri:e?.item?.uri,playbackId:e?.playbackId})),os.a),m=!o&&d===e,y=(0,i.useCallback)((()=>{window.innerWidth<=768?t(280):window.innerWidth>768&&280===r&&t(420)}),[r]);return(0,i.useEffect)((()=>{y()}),[y]),(0,ns.s)(y),n&&n?.hasLyrics?(0,se.jsx)(ls,{data:n,uri:e,eventSender:c,playbackId:m?u:void 0,previewCount:r,trackPageEnhancedEnabled:l}):null},us=e=>{const a=(e=>{const a=(0,Da.vh)(),s=(0,Ea.d4)(za.F6),i=(0,Ea.d4)(Ga.JJ),r=(0,Ea.d4)(za.oo),t=(0,qa.V)();return()=>{if(t)return;(0,ne.fE)({metric_type:R.MetricTypes.COUNTER,what:"dwp-lyrics-component-error",value:1});const l={category:"lyrics_render_error",label:"dwp",os:(0,Za.f)(),context:JSON.stringify({uri:e,product:r}),country:s?i:"",sp_t:(0,$a.v8)("sp_t")};a.send((0,Va._)(l))}})(e.uri);return(0,se.jsx)(f.s,{onError:a,children:(0,se.jsx)(ds,{...e})})};var ms=s(57402);const ys="T1nqQ4HEh3heHy4RCCKa",ps="L8zjshPVgUMXyZR4FtOk",hs="YMn1FWcFmOz9osBrNvhF",gs="Inbyq3TnvKDOJtcKFTDQ",xs="lWk5se4WETUOJwaEb8D6",bs="i8DyQbWCmDV_8N5XGJQT",js="t5WPFlGTY6GCd9UOFfLu",vs="AGQ3wRyMVK1odq860qnT",ks="ZX_r7uZgPgssaUplfpxT",Ls="qrqctaPu2XBpxsw23nPX",Rs="XnWidTagai3nQwMPxIMF";var fs=s(67464),Is=s(89942),Ns=s(71817),As=s(39554),Ps=s(32712);let ws=function(e){return e.SMALL="small",e.LARGE="large",e}({});const Cs=e=>{const{disabled:a,images:s,LinkComponent:i,name:r,size:n,uri:c,enableI18nRoutes:o,enableI18nAdditionalPages:d}=e,y=n===ws.SMALL,p=(0,l.Zp)(),h=(0,u.o_)(c),g=h?.type,x=m.Ru.getLocaleForURLPath(),b=(0,As.p)({localeFeatureFlag:o,entityFeatureFlag:d,urlLocale:x,entity:g,type:"link"});return(0,se.jsxs)("div",{className:t()(ps,{[hs]:a}),"data-testid":"track-artist-link-card",children:[(0,se.jsx)(fs.b,{shape:fs.u.CIRCLE,images:s,size:Is.Qe.SIZE_80,title:r,type:Ns.c.ARTIST}),(0,se.jsxs)("div",{className:t()(xs,{[bs]:y}),children:[(0,se.jsx)(ga.Z,{variant:"mestoBold",className:gs,children:m.Ru.get("card.tag.artist")}),(0,se.jsx)(i,{to:c,children:(0,se.jsx)(ga.Z,{as:"div",dir:"ltr",className:js,variant:"balladBold",children:r})})]}),(0,se.jsx)("div",{onClick:()=>{const e=h?.toURL(`/${Ps.CT}${x}/`);if(h){const a=b?e:h.toURLPath(!0);p(a)}},className:vs})]})},Ts=({size:e=ws.LARGE,disabled:a=!1,enableI18nRoutes:s,enableI18nAdditionalPages:r,...l})=>{const[n,c]=(0,i.useState)(!1),d=(0,i.useCallback)((()=>{c(!n)}),[n]),u=l.artists;return(0,se.jsxs)("div",{"data-testid":"track-artist-link-card-container",children:[(0,se.jsx)("div",{className:ys,children:u.map(((i,c)=>(0,se.jsx)("div",{className:t()({[Ls]:n&&c>5,[ks]:c>5}),children:(0,se.jsx)(Cs,{name:i.name,uri:i.uri,images:i.images,size:e,LinkComponent:l.LinkComponent,disabled:a,enableI18nRoutes:s,enableI18nAdditionalPages:r},i.id)},`${i.uri}-${c}`)))}),u.length>6&&(0,se.jsx)(o.H,{onClick:d,className:Rs,children:(0,se.jsx)(ga.Z,{as:"p",variant:"violaBold",children:n?m.Ru.get("show_less"):m.Ru.get("mwp.search.artists.all")})})]})};var Us=s(62943),Es=s(74888);const Ss=e=>{const{albumArtists:a,columnCount:s,imageForLyricsRequest:r,isPlayable:l,uri:n}=e,c=s-2,o={"--column-count":s,"--left-column-end":c-2,"--right-column-start":c},{isAnonymous:d}=(0,Ea.d4)(za.Ht),u=(0,oa.n)(),y=(0,ha.l)(),{trackPageEnhancedEnabled:p,trackPageLinksNoLyricsEnabled:h,trackPageNoLyricsEnabled:g}=(0,Wa.Zo)(),x=!h&&!g,{data:b,status:j}=Ta({uri:n,isNotPermittedToFetchLyrics:d||y,imageForLyricsRequest:r,isPlayable:l}),v=!!b&&b.hasLyrics&&j!==ka.UNAVAILABLE,k=(v||d)&&x,L=(R=v,p?R?Wa.rt.HasLyrics:Wa.rt.NoLyrics:Wa.rt.Ineligible);var R;const f=(0,Wa.E6)(L),I=(0,Ea.d4)(ms.MU),N=(0,Ea.d4)(ms.NR),A=(0,Sa.NC)(Us.ic),P=(0,Ea.d4)(Ga.q),w=A&&P;if((0,i.useEffect)((()=>{f()}),[f]),y||w)return null;return(0,se.jsxs)(i.Suspense,{fallback:null,children:[k&&(0,se.jsx)("div",{className:t()(Fe,{[Oe]:s>5}),style:{...o},"data-testid":"lyrics-container",children:d?(0,se.jsx)(Ma,{buttonText:m.Ru.get("sign_up"),secondaryButtonText:m.Ru.get("login"),text:m.Ru.get("track-page.sign-into-premium-to-view-lyrics"),onPrimaryButtonClick:Es.ie,onSecondaryButtonClick:Es.PW}):(0,se.jsx)(us,{uri:n,imageForLyricsRequest:r,isPlayable:l})}),(0,se.jsx)("div",{className:t()(_e,{[Be]:s>5&&k}),style:{...o},children:(0,se.jsx)(Ts,{artists:a,LinkComponent:ue.N,disabled:!u,enableI18nRoutes:I,enableI18nAdditionalPages:N})})]})};var _s=s(52582),Bs=s(80460),Fs=s(71296),Os=s(16436);const Ms="o2TlnuNKxRO5RnB9BpHB",Ds="q0Ke_aAvTcc4dO4wCHQt",Vs="UlKUfS_GcROZmofuafOW",qs="I5LORTI1u3A6VoUvRCBf",Zs="TS85Qkpioa31wR0p4kzT",Gs="yL1DLXBc05CR_ACv_NhA",zs="k5kRkUyoz9znqg_SGOVQ";var $s=s(13797),Ws=s(88923);let Xs=function(e){return e.SMALL="small",e.LARGE="large",e}({});const Ys=({art:e,disabled:a=!1,LinkComponent:s,name:i,size:r=Xs.SMALL,type:n,uri:c})=>{const o=e?[e]:[],d=r===Xs.SMALL?(0,$s.C)(n):function(e){switch(e){case Ws.s.SINGLE:return m.Ru.get("track-page.from-the-single");case Ws.s.EP:return m.Ru.get("track-page.from-the-ep");case Ws.s.COMPILATION:return m.Ru.get("track-page.from-the-compilation");case Ws.s.ALBUM:default:return m.Ru.get("track-page.from-the-album")}}(n),y=(0,l.Zp)();return(0,se.jsxs)("div",{className:t()(Ms,{[Vs]:r===Xs.SMALL,[Ds]:a}),children:[(0,se.jsx)("div",{className:qs,children:(0,se.jsx)(fs.b,{images:o,size:Is.Qe.SIZE_80,title:i,type:Ns.c.ALBUM})}),(0,se.jsxs)("div",{className:Zs,children:[(0,se.jsx)(ga.Z,{variant:r===Xs.SMALL?"mestoBold":"finale",children:d}),(0,se.jsx)(s,{to:c,children:(0,se.jsx)(ga.Z,{as:"div",className:Gs,variant:"balladBold",dir:"auto",children:i})})]}),(0,se.jsx)("div",{onClick:()=>{y((0,u.o_)(c).toURLPath(!0))},className:zs})]})};var Qs=s(21056),Hs=s(62733),Js=s(56376),Ks=s(4055),ei=s(15847);const ai=e=>(e.items||[]).map((e=>({name:e.profile.name,images:(e.visuals.avatarImage?.sources||[]).map((e=>({url:e.url,width:e.width,height:e.height}))),uri:e.uri,id:e.id}))),si=e=>(e||[]).map((e=>e.profile.name)),ii=({uri:e,track:a})=>{const s=(0,oa.n)(),r=(0,qa.V)(),l=(0,Bs.W)({type:"locale",uri:e}),u=m.Ru.getLocaleForTranslation(),R=parseInt(a.playcount||"0",10),{firstArtist:f,otherArtists:I,albumOfTrack:N,duration:A,name:P}=a,w=N?.coverArt,C=N?.copyright.items,T=N?.courtesyLine,{date:U,precision:E}=N?.date?(0,Ks.mp)(N.date):{date:void 0,precision:void 0},S=w?.extractedColors?.colorRaw.hex,_=(w?.sources||[]).map((e=>({url:e.url,width:e.width||void 0,height:e.height||void 0}))),B={uri:N?.uri||"",name:N?.name||""},F=si(f.items),O=si(I.items),M=ai(f),D=ai(I),V=[...M,...D],q=f.items[0],Z=a.albumOfTrack,G=Z?.playability?.playable,z={artistId:q?.id,artistName:q?.profile?.name,artistUri:q?.uri},$=a.albumOfTrack?.coverArt?.sources,W=(0,Ie.h)($||void 0,{desiredLabel:"large",desiredSize:600})??$?.[0]?.url??"",[X,Y]=(0,i.useState)(!1),H=(0,i.useCallback)((()=>{Y(!X)}),[X]),J=I&&I.items.length>5,{spec:K,logger:ee}=(0,ya.r)(d.y,{data:{uri:e}}),ae=a.playability.playable,ie=(0,Ee.J)(e),{togglePlay:re,isPlaying:te,isActive:le}=(0,Q.P)({uri:ie},{featureIdentifier:"track"}),{trackPageLinksNoLyricsEnabled:ne,trackPageNoLyricsEnabled:ce}=(0,Wa.Zo)(),oe=ne||ce,me=(0,i.useCallback)((()=>(0,Js.rO)({i18n:m.Ru,trackArtistsList:[...F,...O].join(m.Ru.getSeparator()),trackName:a.name,shouldLocalize:l,disabled:oe})),[F,oe,O,l,a.name]),pe=(0,i.useCallback)(((e,a)=>{ee.logInteraction(K.headerFactory().artistLinkFactory({position:a.position,uri:a.creator.uri}).hitUiNavigate({destination:a.creator.uri}))}),[ee,K]),he=(0,i.useCallback)((()=>{const a=(0,da.$I)({isPlaying:te,isActive:le,spec:K.actionBarFactory().playButtonFactory(),logger:ee,uri:e});re({loggingParams:a})}),[le,te,ee,K,re,e]),ge=Z?.uri,xe=(0,i.useMemo)((()=>[...f.items,...I.items].map((e=>({uri:e.uri,name:e.profile.name})))),[f.items,I.items]),be=(0,se.jsx)(p.P,{uri:e,albumUri:ge,artists:xe});return(0,se.jsxs)("section",{"data-testid":"track-page",children:[(0,se.jsx)(h.Q,{children:me()}),(0,se.jsx)(we.c,{artistOrShow:xe.map((e=>e.name)).join(m.Ru.getSeparator()),title:P,uri:e,entityType:we.p.TRACK}),(0,se.jsxs)(g.z,{backgroundColor:S,children:[(0,se.jsxs)(j.h,{children:[(0,se.jsx)(ye.D,{size:"medium",onClick:he,disabled:!ae,isPlaying:te,uri:e}),(0,se.jsx)(y.h,{menu:be,children:(0,se.jsx)(v.X,{text:P,dragUri:e,dragLabel:P})})]}),(0,se.jsx)(y.h,{menu:be,children:(0,se.jsx)(x.K,{dragUri:e,images:_,name:P,placeholderType:"album"})}),(0,se.jsxs)(b.Y,{children:[(0,se.jsx)(n.E,{variant:"bodySmallBold",children:m.Ru.get("song")}),(0,se.jsx)(y.h,{menu:be,children:(0,se.jsx)(L.mm,{dragUri:e,dragLabel:P,children:P})}),(0,se.jsx)(k.t,{creators:M,releaseDate:U,releaseDatePrecision:E,durationMilliseconds:A.totalMilliseconds,onCreatorClick:pe,isTrack:!0,album:B,playcount:R})]})]}),(0,se.jsx)(pa,{uri:e,togglePlay:re,isPlaying:te,isActive:le,spec:(0,i.useMemo)((()=>K.actionBarFactory()),[K]),logger:ee,backgroundColor:S,name:P,isPlayable:ae,albumUri:ge,artists:xe}),(0,se.jsxs)(Ca,{children:[(0,se.jsxs)("div",{className:"contentSpacing",children:[(0,se.jsx)("div",{className:Me,children:(0,se.jsx)(Os.E,{render:({columnCount:a})=>(0,se.jsx)(Ss,{imageForLyricsRequest:W,albumArtists:V,columnCount:a,uri:e,isPlayable:ae}),rowGap:c.lT})}),(0,se.jsx)(de,{subtitle:m.Ru.get("internal-link-recommender.based-on-this-song"),uri:a.uri,entityType:Ns.c.TRACK}),(0,se.jsx)(fe,{artistName:q.profile.name,artistUri:q.uri,headerClassName:Ze,rowClassName:Me,topTracks:q.discography.topTracks,topTracksTransformer:Pe.fX,uri:a.uri}),(0,se.jsx)(Ne,{className:qe,releases:q?.discography?.popularReleasesAlbums,...z}),(0,se.jsx)(je,{albums:q?.discography?.albums,className:qe,...z}),(0,se.jsx)(Ae,{className:qe,singles:q?.discography?.singles,...z}),I&&(0,se.jsxs)(se.Fragment,{children:[(0,se.jsx)("div",{className:ze,children:I.items.map(((e,a)=>(0,se.jsx)(Ne,{className:t()(Ge,{[We]:a>4,[Xe]:X&&a>4}),releases:e.discography.popularReleasesAlbums,artistName:e.profile.name,artistId:e.id,artistUri:e.uri,artistImages:e.visuals.avatarImage?.sources},e.id)))}),J&&(0,se.jsx)(o.H,{onClick:H,className:Ye,children:(0,se.jsx)(n.E,{as:"h2",variant:"bodySmallBold",children:X?m.Ru.get("show_less"):m.Ru.get("mwp.search.artists.all")})}),(0,se.jsx)(ke,{artistId:q.id,className:t()(qe,{[$e]:I.items.length>0}),fansAlsoLike:q.relatedContent.relatedArtists.items,title:m.Ru.get("artist-page.fansalsolike")})]}),Z&&(0,se.jsx)(Ys,{art:Z.coverArt?.sources[0],disabled:!G||!s,LinkComponent:ue.N,name:Z.name,type:Z.type,size:Xs.LARGE,uri:Z.uri}),(0,se.jsx)(He,{richTrack:a})]}),(0,se.jsx)("div",{className:"contentSpacing",children:(0,se.jsxs)("div",{className:De,children:[U&&(0,se.jsx)(n.E,{as:"p",variant:"bodySmall",className:Qe,children:(0,ei.rh)((0,ei.ad)(U),u,{year:"numeric",month:"long",day:"numeric"},E)}),(0,se.jsx)(Fs.Z,{copyrights:C||[],courtesyLine:T}),!r&&(0,se.jsx)(Ua,{uri:e,imageForLyricsRequest:W,isPlayable:ae})]})})]})]})},ri=(0,i.memo)((function(){const{trackId:e=""}=(0,l.g)(),a=(0,u.tR)(e).toURI(),s=(0,_s.J)({uri:a});return s.loading||s.error||"Track"!==s.data?.trackUnion?.__typename?(0,se.jsx)(me.A,{hasError:!s.loading,errorMessage:m.Ru.get("track-page.error")}):(0,se.jsx)(Hs.P,{surface:Qs.u.TRACK,uris:[a,s.data.trackUnion.albumOfTrack?.uri??null],children:(0,se.jsx)(ii,{uri:a,track:s.data.trackUnion})})}))},52582:(e,a,s)=>{s.d(a,{J:()=>l});var i=s(15742),r=s(8385);const t=new i.l("getTrack","query","ae85b52abb74d20a4c331d4143d4772c95f34757bfa8c625474b912b9055b5c0",null),l=(e,a)=>(0,r.I)(t,e,a)}}]);
|
|
//# sourceMappingURL=xpui-routes-track-v2.js.map
|