1 line
106 KiB
JavaScript
1 line
106 KiB
JavaScript
define(["exports","./../modules/loading/loading.js","./../modules/emby-apiclient/connectionmanager.js","./../modules/emby-apiclient/apiclient.js","./../modules/emby-apiclient/events.js","./../modules/common/globalize.js","./../modules/common/playback/playbackmanager.js","./../modules/appheader/appheader.js","./../modules/backdrop/backdrop.js","./../modules/common/itemhelper.js","./../modules/common/dataformatter.js","./../modules/common/itemmanager/itemmanager.js","./../modules/layoutmanager.js","./../modules/common/usersettings/usersettings.js","./../modules/viewmanager/baseview.js","./../modules/emby-elements/emby-scroller/emby-scroller.js","./../modules/emby-elements/emby-tabs/emby-tabs.js","./../modules/emby-elements/emby-itemscontainer/emby-itemscontainer.js","./../modules/emby-elements/emby-button/emby-button.js","./../modules/emby-elements/sync/emby-downloadbutton.js","./../modules/emby-elements/emby-select/emby-select.js","./../modules/listview/listview.js","./../modules/cardbuilder/cardbuilder.js","./../modules/itemcontextmenu.js","./../modules/indicators/indicators.js","./../modules/navdrawer/navdrawer.js","./../modules/common/textencoding.js","./../modules/dom.js","./../modules/approuter.js","./../modules/common/datetime.js","./../modules/mediainfo/mediainfo.js","./../modules/common/servicelocator.js","./../modules/focusmanager.js","./../modules/imageloader/imageloader.js","./../modules/multiselect/multiselect.js","./../modules/skinmanager.js","./../modules/common/input/api.js"],function(_exports,_loading,_connectionmanager,_apiclient,_events,_globalize,_playbackmanager,_appheader,_backdrop,_itemhelper,_dataformatter,_itemmanager,_layoutmanager,_usersettings,_baseview,_embyScroller,_embyTabs,_embyItemscontainer,_embyButton,_embyDownloadbutton,_embySelect,_listview,_cardbuilder,_itemcontextmenu,_indicators,_navdrawer,_textencoding,_dom,_approuter,_datetime,_mediainfo,_servicelocator,_focusmanager,_imageloader,_multiselect,_skinmanager,_api){Object.defineProperty(_exports,"__esModule",{value:!0}),_exports.default=void 0,require(["flexStyles","css!item/item.css"]);var backdropContainer=document.querySelector(".backdropContainer"),backgroundContainer=document.querySelector(".backgroundContainer"),skinHeader=document.querySelector(".skinHeader"),decodingAttribute=_dom.default.supportsAsyncDecodedImages()?' decoding="async"':"";function renderTrackSelectionsWithoutUser(page,instance,item,forceReload){_connectionmanager.default.getApiClient(item.ServerId).getCurrentUser().then(function(user){renderTrackSelections(page,instance,item,user,forceReload)})}function isMediaStreamDisplayed(stream){return"Data"!==stream.Type&&"Attachment"!==stream.Type}function renderMediaSources(page,renderAdminFields,item,mediaSources){for(var groupedVersions=mediaSources.filter(function(g){return"Grouping"===g.Type}),parentElem=(renderAdminFields&&groupedVersions.length?page.querySelector(".splitVersionContainer").classList.remove("hide"):page.querySelector(".splitVersionContainer").classList.add("hide"),page.querySelector(".mediaSources")),anyDisplayed=!1,i=(parentElem.innerHTML="",0),length=mediaSources.length;i<length;i++){var mediaSource=mediaSources[i];!function(version,renderAdminFields){for(var i=0,length=version.MediaStreams.length;i<length;i++)if(isMediaStreamDisplayed(version.MediaStreams[i]))return 1;return version.Container||version.Formats&&version.Formats.length||version.Path&&"Http"!==version.Protocol&&renderAdminFields||!!version.Size}(mediaSource,renderAdminFields)||(anyDisplayed=!0,function(parentElem,renderAdminFields,item,mediaSource,scrollX){var elem=document.createElement("div"),html=(elem.classList.add("mediaSource"),""),renderAdminFields=(html+=scrollX?'<div class="sectionTitle sectionTitle-cards" style="display:block;padding: 0 .3em .5em;">':'<div style="display:block;">',mediaSource.Path&&"Http"!==mediaSource.Protocol&&renderAdminFields&&(html+="<div>"+mediaSource.Path+"</div>"),html+='<div class="mediaInfoItems">',mediaSource.Container&&(html+=mediaSource.Container.toUpperCase()),mediaSource.Size&&(html+='<span class="mediaInfoItem">'+_dataformatter.default.sizeToString(mediaSource.Size)+"</span>"),new Date(Date.parse(item.DateCreated))),renderAdminFields=(html+='<span class="mediaInfoItem">'+_globalize.default.translate("AddedOnValue",_datetime.default.toLocaleDateString(renderAdminFields)+" "+_datetime.default.getDisplayTime(renderAdminFields))+"</span>",elem.innerHTML=html=(html=html+"</div>"+"</div>")&&'<div class="padded-left padded-left-page padded-right">'+html+"</div>",elem.insertAdjacentHTML("beforeend",scrollX?'<div is="emby-scroller" class="emby-scroller padded-top-focusscale padded-bottom-focusscale padded-left padded-left-page padded-right" data-mousewheel="false" data-focusscroll="true" data-horizontal="true"><div is="emby-itemscontainer" class="detailMediaStreamsItemsContainer itemsContainer-defaultCardSize scrollSlider focuscontainer-x itemsContainer focusable" data-focusabletype="nearest"></div></div>':'<div is="emby-itemscontainer" class="vertical-list itemsContainer padded-left padded-left-page padded-right itemsContainer-defaultCardSize"></div>'),parentElem.appendChild(elem),mediaSource.MediaStreams.filter(isMediaStreamDisplayed).map(function(s){return _itemhelper.default.normalizeMediaStreamForDisplay(item,mediaSource,s)}));scrollX?_cardbuilder.default.buildCards(renderAdminFields,{shape:"backdrop",overlayText:!0,fields:["MediaStreamInfo"],itemsContainer:elem.querySelector(".itemsContainer"),action:"none",multiSelect:!1,ratingButton:!1,playedButton:!1,defaultIcon:!1,typeIndicator:!1,playedIndicator:!1,syncIndicator:!1,timerIndicator:!1,randomDefaultBackground:!1,imageFallback:!1,cardPadderClass:_layoutmanager.default.tv?"mediaStreamPadder-tv":"mediaStreamPadder",innerCardFooterClass:"mediaStreamInnerCardFooter",enableUserData:!1,draggable:!1,enableFocusScaling:!1}):_listview.default.buildItems(renderAdminFields,{image:!1,fields:["MediaStreamInfo"],itemsContainer:elem.querySelector(".itemsContainer"),action:"none",multiSelect:!1,ratingButton:!1,playedButton:!1,defaultIcon:!1,typeIndicator:!1,playedIndicator:!1,syncIndicator:!1,timerIndicator:!1,randomDefaultBackground:!1,imageFallback:!1,innerCardFooterClass:"mediaStreamInnerCardFooter",enableUserDataButtons:!1,draggable:!1,itemClass:"detailsListItem"})}(parentElem,renderAdminFields,item,mediaSource,!0))}anyDisplayed&&_usersettings.default.showFullMediaInfoOnDetailScreen()?page.querySelector(".audioVideoMediaInfo").classList.remove("hide"):page.querySelector(".audioVideoMediaInfo").classList.add("hide")}function isRenderingTrackSelections(item){return!(!_itemhelper.default.supportsMediaSourceSelection(item)||-1===_playbackmanager.default.getSupportedCommands().indexOf("PlayMediaSource")||!_playbackmanager.default.canPlay(item))}function renderTrackSelections(page,instance,item,user,forceReload,mediaSources){var select=page.querySelector(".selectSource"),apiClient=_connectionmanager.default.getApiClient(item);isRenderingTrackSelections(item)?(mediaSources?Promise.resolve(mediaSources):_playbackmanager.default.getPlaybackMediaSources(item)).then(function(mediaSources){var renderAdminFields=user.Policy.IsAdministrator,renderAdminFields=(renderMediaSources(page,renderAdminFields,item,mediaSources),instance._currentPlaybackMediaSources=mediaSources,instance.trackSelectionsContainer.classList.remove("hide"),select.value),selectedId=mediaSources[0].Id;select.innerHTML=mediaSources.map(function(v){var selected=v.Id===selectedId?" selected":"";return'<option value="'+v.Id+'"'+selected+">"+_textencoding.default.htmlEncode(v.Name)+"</option>"}).join(""),1<mediaSources.length?(select.removeAttribute("disabled"),page.querySelector(".selectSourceContainer").classList.remove("hide")):(page.querySelector(".selectSourceContainer").classList.add("hide"),select.setAttribute("disabled","disabled")),select.value===renderAdminFields&&!forceReload||(renderMediaInfo(0,page,item,mediaSources),renderVideoSelections(page,mediaSources),renderAudioSelections(page,mediaSources),renderSubtitleSelections(page,mediaSources),updateTrackSelectionsFocusState(instance,page))}):(renderMediaInfo(0,page,item,item.MediaSources||[]),renderMediaSources(page,user.Policy.IsAdministrator,item,item.MediaSources||[]),instance._currentPlaybackMediaSources=[],instance.trackSelectionsContainer.classList.add("hide"),select.innerHTML="",page.querySelector(".selectVideo").innerHTML="",page.querySelector(".selectAudio").innerHTML="",page.querySelector(".selectSubtitles").innerHTML="",select.setAttribute("disabled","disabled"),updateTrackSelectionsFocusState(instance,page))}function renderVideoSelections(page,mediaSources){var mediaSourceId=page.querySelector(".selectSource").value,mediaSources=mediaSources.filter(function(m){return m.Id===mediaSourceId})[0].MediaStreams.filter(function(m){return"Video"===m.Type}),select=page.querySelector(".selectVideo"),selectedId=mediaSources.length?mediaSources[0].Index:-1;select.innerHTML=mediaSources.map(function(v){var selected=v.Index===selectedId?" selected":"",titleParts=[],resolutionText=_dataformatter.default.getResolutionText(v);return resolutionText&&titleParts.push(resolutionText),v.Codec&&titleParts.push(v.Codec.toUpperCase()),'<option value="'+v.Index+'" '+selected+">"+_textencoding.default.htmlEncode(v.DisplayTitle||titleParts.join(" "))+"</option>"}).join(""),select.setAttribute("disabled","disabled"),mediaSources.length?page.querySelector(".selectVideoContainer").classList.remove("hide"):page.querySelector(".selectVideoContainer").classList.add("hide")}function renderAudioSelections(page,mediaSources){var mediaSourceId=page.querySelector(".selectSource").value,mediaSources=mediaSources.filter(function(m){return m.Id===mediaSourceId})[0],tracks=mediaSources.MediaStreams.filter(function(m){return"Audio"===m.Type}),select=page.querySelector(".selectAudio"),selectedId=mediaSources.DefaultAudioStreamIndex;select.innerHTML=tracks.map(function(v){var selected=v.Index===selectedId?" selected":"",embeddedTitle=v.Title&&!(v.DisplayTitle||"").includes(v.Title)?v.Title:null;return"<option"+(embeddedTitle?' title="'+embeddedTitle+'"':"")+' value="'+v.Index+'" '+selected+">"+_textencoding.default.htmlEncode(v.DisplayTitle)+"</option>"}).join(""),1<tracks.length?select.removeAttribute("disabled"):select.setAttribute("disabled","disabled"),tracks.length?page.querySelector(".selectAudioContainer").classList.remove("hide"):page.querySelector(".selectAudioContainer").classList.add("hide")}function renderSubtitleSelections(page,mediaSources){var selected,mediaSourceId=page.querySelector(".selectSource").value,mediaSources=mediaSources.filter(function(m){return m.Id===mediaSourceId})[0],tracks=mediaSources.MediaStreams.filter(function(m){return"Subtitle"===m.Type}),select=page.querySelector(".selectSubtitles"),selectedId=null==mediaSources.DefaultSubtitleStreamIndex?-1:mediaSources.DefaultSubtitleStreamIndex;tracks.length?(selected=-1===selectedId?" selected":"",select.innerHTML='<option value="-1">'+_globalize.default.translate("Off")+"</option>"+tracks.map(function(v){selected=v.Index===selectedId?" selected":"";var embeddedTitle=v.Title&&!(v.DisplayTitle||"").includes(v.Title)?v.Title:null;return"<option"+(embeddedTitle?' title="'+embeddedTitle+'"':"")+' value="'+v.Index+'" '+selected+">"+_textencoding.default.htmlEncode(v.DisplayTitle)+"</option>"}).join(""),select.classList.remove("noSelections"),page.querySelector(".selectSubtitlesContainer").classList.remove("hide")):(select.innerHTML="",select.classList.add("noSelections"),page.querySelector(".selectSubtitlesContainer").classList.add("hide"))}function setButtonText(page,query,html){for(var elems=page.querySelectorAll(query),i=0,length=elems.length;i<length;i++){elems[i].innerHTML=html;var btn=elems[i].closest("button");btn&&(btn.title=html,btn.setAttribute("aria-label",html))}}function setResumeProgress(resumeInfoElement,item){var ticksLeft,resumeInfoElement=resumeInfoElement.querySelector(".resumeProgress");item.UserData&&0<item.UserData.PlaybackPositionTicks&&item.RunTimeTicks?(ticksLeft=item.RunTimeTicks-item.UserData.PlaybackPositionTicks,ticksLeft='<div class="resumeTimeRemaining secondaryText">'+_globalize.default.translate("TimeRemainingValue",_datetime.default.getHumanReadableRuntime(ticksLeft))+"</div>",resumeInfoElement.innerHTML=_indicators.default.getProgressBarHtml(item,{containerClass:"resumeInfoProgressBar",animated:!0})+ticksLeft,resumeInfoElement.classList.remove("hide")):resumeInfoElement.classList.add("hide")}function reloadPlayButtons(instance,page,item,isUserDataChangeEvent){var now,activeElement,isPlayFocused,btnPlay,btnResume,btnPlayTrailer,btnShuffle,playButtons=page.querySelectorAll(".btnPlay");"Program"===item.Type?((now=new Date)>=new Date(Date.parse(item.StartDate))&&now<new Date(Date.parse(item.EndDate))?hideAll(page,playButtons,!0):hideAll(page,playButtons),hideAll(page,"btnResume"),hideAll(page,"detailResumeInfo"),hideAll(page,"btnShuffle"),hideAll(page,"btnQueue"),setButtonText(page,".playButtonText",_globalize.default.translate("Play"))):_playbackmanager.default.canPlay(item)?(hideAll(page,"btnPlay",!0),now=item.IsFolder||-1!==["MusicAlbum","MusicGenre","MusicArtist"].indexOf(item.Type),"MusicAlbum"===item.Type&&item.SupportsResume&&(now=!1),hideAll(page,"btnShuffle",now="Season"!==item.Type&&"Series"!==item.Type?now:!1),isPlayFocused=(activeElement=document.activeElement)&&activeElement.classList&&(activeElement.classList.contains("btnResume")||activeElement.classList.contains("btnMainPlay")),btnPlay=page.querySelector(".btnPlay"),btnResume=page.querySelector(".btnResume"),(btnPlayTrailer=page.querySelector(".btnPlayTrailer-main")).querySelector("i").innerHTML=_itemmanager.default.getDefaultIcon({Type:"Trailer",MediaType:"Video"}),btnShuffle=page.querySelector(".btnShuffle"),"Series"===item.Type||"MusicAlbum"===item.Type&&item.SupportsResume?(btnResume.classList.add("detailButton-primary"),btnPlay.classList.remove("detailButton-primary","detailButton-highres3"),function(instance,page){getNextUpItems.call(instance,{Limit:1,EnableTotalRecordCount:!1}).then(function(result){var resumeName,result=result.Items[0],resumeInfo=page.querySelector(".detailResumeInfo");result?((resumeName=resumeInfo.querySelector(".resumeName")).innerHTML=_itemmanager.default.getDisplayName(result),resumeName.classList.remove("hide"),setResumeProgress(resumeInfo,result),result.UserData&&0<result.UserData.PlaybackPositionTicks?setButtonText(page,".resumeButtonText",_globalize.default.translate("Resume")):setButtonText(page,".resumeButtonText",_globalize.default.translate("Play")),resumeInfo.classList.remove("hide")):(setButtonText(page,".resumeButtonText",_globalize.default.translate("Play")),resumeInfo.classList.add("hide"))})}(instance,page),setButtonText(page,".playButtonText",_globalize.default.translate("PlayFromBeginning")),btnPlay.classList.remove("detailButton-stacked"),btnShuffle.classList.remove("detailButton-stacked"),isTrailerButtonVisible(item)?(btnPlayTrailer.classList.add("detailButton-stacked"),btnResume.classList.add("detailButton-stacked")):(btnPlayTrailer.classList.remove("detailButton-stacked"),btnResume.classList.remove("detailButton-stacked")),hideAll(page,"detailResumeInfo",!0),hideAll(page,"btnResume",!0),hideAll(page,"btnPlay",now)):((instance=item.UserData&&0<item.UserData.PlaybackPositionTicks)?(btnResume.classList.add("detailButton-primary","detailButton-stacked"),btnPlay.classList.remove("detailButton-primary","detailButton-stacked"),_layoutmanager.default.tv?btnPlay.classList.remove("detailButton-highres3"):btnPlay.classList.add("detailButton-highres3"),btnPlayTrailer.classList.add("detailButton-stacked"),btnShuffle.classList.remove("detailButton-stacked"),setButtonText(page,".playButtonText",_globalize.default.translate("PlayFromBeginning")),hideAll(page,"detailResumeInfo",!0),hideAll(page,"resumeName"),setResumeProgress(page.querySelector(".detailResumeInfo"),item)):(btnPlay.classList.add("detailButton-primary"),btnPlay.classList.remove("detailButton-highres3"),now?(btnPlayTrailer.classList.remove("detailButton-stacked"),btnResume.classList.remove("detailButton-stacked"),btnShuffle.classList.add("detailButton-stacked"),btnPlay.classList.add("detailButton-stacked")):(isTrailerButtonVisible(item)?(btnPlay.classList.add("detailButton-stacked"),btnResume.classList.remove("detailButton-stacked"),btnPlayTrailer.classList.add("detailButton-stacked")):(btnPlay.classList.remove("detailButton-stacked"),btnResume.classList.remove("detailButton-stacked"),btnPlayTrailer.classList.remove("detailButton-stacked")),btnShuffle.classList.remove("detailButton-stacked")),setButtonText(page,".playButtonText",_globalize.default.translate("Play"))),hideAll(page,"detailResumeInfo",instance),hideAll(page,"btnResume",instance)),isUserDataChangeEvent||hideAll(page,"btnQueue",_playbackmanager.default.canQueue(item)),isPlayFocused&&focusMainSection.call(activeElement.parentNode)):(hideAll(page,playButtons),hideAll(page,"btnQueue"),hideAll(page,"btnResume"),hideAll(page,"detailResumeInfo"),hideAll(page,"btnShuffle"))}function focusMainSection(){for(var btns=this.querySelectorAll(".detailButton"),i=0,length=btns.length;i<length;i++){var btn=btns[i];if(_focusmanager.default.isCurrentlyFocusable(btn))try{return void _focusmanager.default.focus(btn)}catch(err){}}_focusmanager.default.autoFocus(this,{skipIfNotEnabled:!0})}function setTitle(item,apiClient,enableLogo){(enableLogo="TvChannel"===item.Type?!1:enableLogo)?_appheader.default.setLogoTitle({items:[item],titleText:"",preferredLogoImageTypes:_skinmanager.default.getPreferredLogoImageTypes()}):_appheader.default.setTitle("")}function getLogoPlacement(item){return"TvChannel"===item.Type?null:("MusicAlbum"!==item.Type&&"Audio"!==item.Type&&"MusicVideo"!==item.Type||item.ImageTags&&item.ImageTags.Logo)&&_usersettings.default.getEnableLogoAsTitle(_globalize.default.getCurrentLocale())?"title":"float"}function getArtistLinksHtml(artists,serverId){for(var html=[],i=0,length=artists.length;i<length;i++){var artist=artists[i],href=_approuter.default.getRouteUrl(artist,{itemType:"MusicArtist",serverId:serverId});html.push('<a style="font-weight:inherit;" class="button-link" is="emby-linkbutton" href="'+href+'">'+_textencoding.default.htmlEncode(artist.Name)+"</a>")}return html=html.join(" / ")}function inferContext(item){switch(item.Type){case"Series":case"Season":case"Episode":return"tvshows";case"Movie":return"movies";case"Game":case"GameSystem":return"games";case"MusicArtist":case"MusicAlbum":case"Audio":case"AudioBook":case"MusicVideo":return"music";case"Program":case"TvChannel":case"Timer":case"SeriesTimer":return"livetv";default:return null}}function renderName(instance,item,apiClient,user,containers){var parentRoute,itemForTitle="Timer"===item.Type&&item.ProgramInfo||item,context=inferContext(itemForTitle),parentNameHtml=[],parentNameLast=!1,hasFocusableButton=!1,fontSize=parseFloat(window.getComputedStyle(document.body,null).getPropertyValue("font-size")),fontSize=Math.round(2*fontSize*2.4)+Math.round(.2*fontSize),apiClient="title"!==getLogoPlacement(itemForTitle)?null:function(item,apiClient,options){options=options||{};var logoTypes=_skinmanager.default.getPreferredLogoImageTypes();return apiClient.getLogoImageUrl(item,options,logoTypes)}(itemForTitle,apiClient,{maxHeight:Math.max(fontSize,260)}),fontSize="itemLogoAsTitle",itemNamePrimaryClass=(_layoutmanager.default.tv&&(fontSize+=" itemLogoAsTitle-tv"),"itemName-primary"),itemPrimaryNameContainerClass="itemPrimaryNameContainer",html=(itemForTitle.AlbumArtists&&itemForTitle.AlbumArtists.length?(parentNameHtml.push(getArtistLinksHtml(itemForTitle.AlbumArtists,itemForTitle.ServerId)),parentNameLast=!0):itemForTitle.ArtistItems&&itemForTitle.ArtistItems.length&&"MusicVideo"===itemForTitle.Type?(parentNameHtml.push(getArtistLinksHtml(itemForTitle.ArtistItems,itemForTitle.ServerId)),parentNameLast=!0):itemForTitle.SeriesName&&itemForTitle.SeriesId?(parentRoute=_approuter.default.getRouteUrl({Id:itemForTitle.SeriesId,Name:itemForTitle.SeriesName,Type:"Series",IsFolder:!0,ServerId:itemForTitle.ServerId},{context:context}),seriesName=_textencoding.default.htmlEncode(itemForTitle.SeriesName),apiClient?(itemNamePrimaryClass+=" itemName-primary-logo",_layoutmanager.default.tv&&(itemNamePrimaryClass+=" itemName-primary-logo-tv"),itemPrimaryNameContainerClass+=" itemPrimaryNameContainer-logo",_layoutmanager.default.tv?tabIndex=' tabindex="-1"':hasFocusableButton=!(tabIndex=""),parentNameHtml.push("<a"+tabIndex+' style="font-weight:inherit;height:100%;width:100%;" class="button-link button-link-color-inherit" is="emby-linkbutton" href="'+parentRoute+'">'+(seriesName='<img draggable="false" loading="lazy"'+decodingAttribute+' class="'+fontSize+'" alt="'+seriesName+'" src="'+apiClient+'" />')+"</a>")):(hasFocusableButton=!0,parentNameHtml.push('<a style="font-weight:inherit;" class="button-link button-link-color-inherit" is="emby-linkbutton" href="'+parentRoute+'">'+seriesName+"</a>"))):itemForTitle.SeriesName?parentNameHtml.push(_textencoding.default.htmlEncode(itemForTitle.SeriesName)):(itemForTitle.IsSeries||itemForTitle.EpisodeTitle)&&parentNameHtml.push(_textencoding.default.htmlEncode(itemForTitle.Name)),itemForTitle.Album&&itemForTitle.AlbumId&&("MusicVideo"===itemForTitle.Type||"Audio"===itemForTitle.Type)?(parentRoute=_approuter.default.getRouteUrl({Id:itemForTitle.AlbumId,Name:itemForTitle.Album,Type:"MusicAlbum",IsFolder:!0,ServerId:itemForTitle.ServerId},{context:context}),hasFocusableButton=!0,parentNameHtml.push('<a style="font-weight:inherit;" class="button-link button-link-color-inherit" is="emby-linkbutton" href="'+parentRoute+'">'+_textencoding.default.htmlEncode(itemForTitle.Album)+"</a>")):itemForTitle.Album&&parentNameHtml.push(_textencoding.default.htmlEncode(itemForTitle.Album)),""),tabIndex="";_layoutmanager.default.tv||(_itemmanager.default.canEdit(item,user)&&(hasFocusableButton=!0,tabIndex+='<button is="paper-icon-button-light" class="btnDetailEdit btnEditMetadata secondaryText flex-shrink-zero" title="'+_globalize.default.translate("HeaderEditMetadata")+'" aria-label="'+_globalize.default.translate("HeaderEditMetadata")+'"><i class="md-icon autortl"></i></button>'),_itemmanager.default.canEditImages(item,user)&&(hasFocusableButton=!0,tabIndex+='<button is="paper-icon-button-light" class="btnDetailEdit btnEditImages secondaryText flex-shrink-zero" title="'+_globalize.default.translate("HeaderEditImages")+'" aria-label="'+_globalize.default.translate("HeaderEditImages")+'"><i class="md-icon">photo</i></button>')),enableItemBackdropAsTopImage(itemForTitle)||(itemPrimaryNameContainerClass+=" itemPrimaryNameContainer-centered"),parentNameHtml.length&&(html=parentNameLast?'<div class="itemSecondaryNameContainer"><h3 class="itemName-secondary">'+parentNameHtml.join(" - ")+"</h3></div>":'<div class="'+itemPrimaryNameContainerClass+'"><h1 class="'+itemNamePrimaryClass+'">'+parentNameHtml.join(" - ")+"</h1></div>");var seriesName=(seriesName=_itemmanager.default.getDisplayName(itemForTitle,{includeParentInfo:!0}))&&_textencoding.default.htmlEncode(seriesName);html&&seriesName&&!parentNameLast?html+='<div class="flex align-items-center flex-wrap-wrap itemSecondaryNameContainer"><h3 class="itemName-secondary">'+seriesName+"</h3>"+tabIndex+"</div>":html=(parentNameLast||apiClient&&(seriesName='<img draggable="false" loading="lazy"'+decodingAttribute+' class="'+fontSize+'" alt="'+seriesName+'" src="'+apiClient+'" />',itemNamePrimaryClass+=" itemName-primary-logo",itemPrimaryNameContainerClass+=" itemPrimaryNameContainer-logo",_layoutmanager.default.tv)&&(itemNamePrimaryClass+=" itemName-primary-logo-tv"),'<div class="flex align-items-center flex-wrap-wrap '+itemPrimaryNameContainerClass+'"><h1 class="'+itemNamePrimaryClass+'">'+seriesName+"</h1>"+tabIndex+"</div>"+html);for(var i=0,length=containers.length;i<length;i++){var container=containers[i],btnEditMetadata=(enableItemBackdropAsTopImage(itemForTitle)?container.classList.remove("nameContainer-centered"):container.classList.add("nameContainer-centered"),container.innerHTML=html,setScopedFocus(null,container,hasFocusableButton,"nearest"),html.length?container.classList.remove("hide"):container.classList.add("hide"),container.querySelector(".btnEditMetadata")),btnEditMetadata=(btnEditMetadata&&btnEditMetadata.addEventListener("click",onEditMetadataClick.bind(instance)),container.querySelector(".btnEditImages"));btnEditMetadata&&btnEditMetadata.addEventListener("click",onEditImagesClick.bind(instance))}}function isTrailerButtonVisible(item){if(_playbackmanager.default.getSupportedCommands().includes("PlayTrailers")){if(item.LocalTrailerCount)return 1;if(item.RemoteTrailers&&item.RemoteTrailers.length)return 1}}function setTrailerButtonVisibility(page,item){isTrailerButtonVisible(item)?hideAll(page,"btnPlayTrailer",!0):hideAll(page,"btnPlayTrailer")}function enableTrackList(item){return!!_layoutmanager.default.tv&&("Playlist"===item.Type||"MusicAlbum"===item.Type&&!item.SupportsResume)}function enableItemBackdropAsTopImage(item){return"Playlist"!==item.Type&&"MusicAlbum"!==item.Type&&"TvChannel"!==item.Type&&"Audio"!==item.Type}function hideAll(page,className,show){for(var elems="string"==typeof className?page.querySelectorAll("."+className):className,i=0,length=elems.length;i<length;i++)show?elems[i].classList.remove("hide"):elems[i].classList.add("hide")}function getCommandOptions(view,item,user,button){view=view.querySelector(".selectSource"),item={items:[item],open:!1,play:!1,playFromBeginning:!0,playAllFromHere:!1,positionTo:button,cancelTimer:!1,record:!1,deleteItem:!0,shuffle:!0,instantMix:!0,user:user,share:!0,mediaSourceId:view&&view.value||null,positionY:"center",positionX:"right",transformOrigin:"left top",played:!1,favorites:!1,navigateOnDelete:"back",showSeries:!!_layoutmanager.default.tv,showSeason:!0};return _servicelocator.appHost.supports("sync")&&(item.syncLocal=!1),item}function renderMediaInfo(instance,view,item,mediaSources){var hasFocusElements,mediaSourceId=view.querySelector(".selectSource").value,mediaSources=mediaSources.filter(function(m){return m.Id===mediaSourceId})[0],mediaInfoElem=view.querySelector(".mediaInfoPrimary");"Season"===item.Type||"SeriesTimer"===item.Type?(mediaInfoElem.classList.add("hide"),mediaInfoElem.classList.remove("focuscontainer-x")):(_mediainfo.default.fillPrimaryMediaInfo(mediaInfoElem,item,{interactive:!0,episodeTitle:!1,subtitles:!1,dateAdded:!1,genres:!0,context:inferContext(item),endsAt:!0,endsAtClass:"detailEndsAt",bitrate:"Audio"===item.MediaType,runtime:"Timer"!==item.Type,mediaSource:mediaSources}),hasFocusElements=null!=mediaInfoElem.querySelector("a,button"),setScopedFocus(null,mediaInfoElem,hasFocusElements,"nearest"),hasFocusElements?mediaInfoElem.classList.add("focuscontainer-x"):mediaInfoElem.classList.remove("focuscontainer-x")),enableItemBackdropAsTopImage(item)?mediaInfoElem.classList.remove("mediaInfo-centered","secondaryText"):mediaInfoElem.classList.add("mediaInfo-centered","secondaryText"),mediaInfoElem=view.querySelector(".mediaInfoSecondary"),_mediainfo.default.fillSecondaryMediaInfo(mediaInfoElem,item,{interactive:!0,mediaSource:mediaSources}),hasFocusElements=null!=mediaInfoElem.querySelector("a,button"),setScopedFocus(null,mediaInfoElem,hasFocusElements,"nearest"),hasFocusElements?mediaInfoElem.classList.add("focuscontainer-x"):mediaInfoElem.classList.remove("focuscontainer-x"),mediaInfoElem.innerHTML.trim()?mediaInfoElem.classList.remove("hide"):mediaInfoElem.classList.add("hide")}function renderDetails(instance,view,item,apiClient,user){var promises=[],overviewElem=view.querySelector(".overview-container"),overviewTextElem=overviewElem.querySelector(".overview-text"),itemForDetails=(enableTrackList(item)?overviewTextElem.classList.add("overview-text-tracklist"):overviewTextElem.classList.remove("overview-text-tracklist"),"Timer"===item.Type&&item.ProgramInfo||item),overview=itemForDetails.Overview;overview?(function(elem,overview){var scrollHeight,textButton,textElement=elem.querySelector(".overview-text"),btnReadMore=elem.querySelector(".btnReadMore");btnReadMore.innerHTML=_globalize.default.translate("More"),overview?(textElement.innerHTML=overview,elem.classList.remove("hide"),overview=textElement.offsetHeight,scrollHeight=textElement.scrollHeight,textButton=textElement.closest("button"),overview&&scrollHeight&&overview<scrollHeight?(_layoutmanager.default.tv?(textButton.removeAttribute("disabled"),btnReadMore.classList.add("hide")):(textButton.setAttribute("disabled","disabled"),btnReadMore.classList.remove("hide")),setScopedFocus(null,elem,!0)):(textButton.setAttribute("disabled","disabled"),btnReadMore.classList.add("hide"),setScopedFocus(null,elem,!1))):(elem.classList.add("hide"),textElement.innerHTML="")}(overviewElem,overview?_dom.default.stripScripts(overview):""),"MusicAlbum"===itemForDetails.Type||"Playlist"===itemForDetails.Type?overviewTextElem.classList.add("overview-twoline"):overviewTextElem.classList.remove("overview-twoline")):overviewElem.classList.add("hide"),function(view,item){var directors=(item.People||[]).filter(function(p){return"Director"===p.Type}),html=directors.map(function(p){return _layoutmanager.default.tv?"<span>"+_textencoding.default.htmlEncode(p.Name)+"</span>":'<a class="button-link button-link-color-inherit" is="emby-linkbutton" href="'+_approuter.default.getRouteUrl({Name:p.Name,Type:"Person",ServerId:item.ServerId,Id:p.Id},{})+'">'+_textencoding.default.htmlEncode(p.Name)+"</a>"}).join(", "),elem=view.querySelector(".directors");elem.innerHTML=1<directors.length?_globalize.default.translate("DirectorsValue",html):_globalize.default.translate("DirectorValue",html),setScopedFocus(view,elem,directors.length&&!_layoutmanager.default.tv,"nearest"),directors.length?elem.classList.remove("hide"):elem.classList.add("hide")}(view,itemForDetails),reloadPlayButtons(instance,view,item),function(page,item){for(var btnPlaystates=page.querySelectorAll(".btnPlaystate"),i=0,length=btnPlaystates.length;i<length;i++){var btnPlaystate=btnPlaystates[i];_itemmanager.default.canMarkPlayed(item)?(btnPlaystate.classList.remove("hide"),btnPlaystate.setItem(item)):(btnPlaystate.classList.add("hide"),btnPlaystate.setItem(null))}var btnUserRatings=page.querySelectorAll(".btnUserRating");for(i=0,length=btnUserRatings.length;i<length;i++){var btnUserRating=btnUserRatings[i];_itemmanager.default.canRate(item)?(btnUserRating.classList.remove("hide"),btnUserRating.setItem(item)):(btnUserRating.classList.add("hide"),btnUserRating.setItem(null))}}(view,item),setTrailerButtonVisibility(view,item),"TvChannel"===item.Type?hideAll(view,"btnManualRecording",!0):hideAll(view,"btnManualRecording"),item.CanDelete&&!item.IsFolder&&"MusicArtist"!==item.Type?hideAll(view,"btnDeleteItem",!0):hideAll(view,"btnDeleteItem"),promises.push(function(instance,page,item,user){if(instance.currentRecordingFields)return instance.currentRecordingFields.refresh(item),Promise.resolve();return"Program"===item.Type&&user.Policy.EnableLiveTvManagement?require(["recordingFields"]).then(function(responses){var responses=responses[0],recordingFieldsElement=page.querySelector(".mainDetailButtons");instance.currentRecordingFields=new responses({parent:recordingFieldsElement,program:item}),_events.default.on(instance.currentRecordingFields,"recordingchanged",onRecordingChanged.bind(instance)),_events.default.on(instance.currentRecordingFields,"seriesrecordingchanged",onRecordingChanged.bind(instance))}):Promise.resolve()}(instance,view,item,user));_itemmanager.default.getCommands(getCommandOptions(view,item,user)).length?hideAll(view,"btnMoreCommands",!0):hideAll(view,"btnMoreCommands"),"Playlist"===item.Type||"BoxSet"===item.Type&&apiClient.isMinServerVersion("4.8.0.16")?hideAll(view,"btnSortItems",!0):hideAll(view,"btnSortItems"),enableItemBackdropAsTopImage(itemForDetails)?view.querySelector(".detailTextContainerInner").classList.remove("detailTextContainerInner-centered"):view.querySelector(".detailTextContainerInner").classList.add("detailTextContainerInner-centered"),enableTvDetailImageLayout(item)?view.querySelector(".detailTextContainer").classList.add("detailTextContainer-extrapadding"):view.querySelector(".detailTextContainer").classList.remove("detailTextContainer-extrapadding");overview=view.querySelector(".tagline");return itemForDetails.Taglines&&itemForDetails.Taglines.length?(overview.classList.remove("hide"),overview.innerHTML=_dom.default.stripScripts(itemForDetails.Taglines[0])):overview.classList.add("hide"),"Person"===itemForDetails.Type&&(overviewTextElem=view.querySelector(".birthDate"),itemForDetails.PremiereDate?(overviewElem=_datetime.default.toLocaleDateString(new Date(Date.parse(itemForDetails.PremiereDate)),{year:"numeric",month:"long",day:"numeric"}),overviewElem=itemForDetails.ProductionLocations&&itemForDetails.ProductionLocations.length?_globalize.default.translate("BornValueWithPlace",overviewElem,itemForDetails.ProductionLocations[0]):_globalize.default.translate("BornValue",overviewElem),overviewTextElem.innerHTML=overviewElem,overviewTextElem.classList.remove("hide")):overviewTextElem.classList.add("hide"),instance=view.querySelector(".deathDate"),itemForDetails.EndDate?(user=_datetime.default.toLocaleDateString(new Date(Date.parse(itemForDetails.EndDate)),{year:"numeric",month:"long",day:"numeric"}),user=_globalize.default.translate("DiedValue",user),instance.innerHTML=user,instance.classList.remove("hide")):instance.classList.add("hide")),function(page,item){for(var itemTags=page.querySelector(".itemTags"),tagElements=[],tags=item.TagItems||[],i=0,length=tags.length;i<length;i++){var href=_approuter.default.getRouteUrl({Name:tags[i].Name,Type:"Tag",ServerId:item.ServerId,Id:tags[i].Id},{itemTypes:"Person"===item.Type||"MusicArtist"===item.Type?item.Type:null});tagElements.push('<a is="emby-linkbutton" class="raised item-tag-button nobackdropfilter" href="'+href+'"><i class="md-icon button-icon button-icon-left autortl"></i>'+_textencoding.default.htmlEncode(tags[i].Name)+"</a>")}itemTags.innerHTML=tagElements.join(""),tagElements.length?page.querySelector(".tagsSection").classList.remove("hide"):page.querySelector(".tagsSection").classList.add("hide")}(view,item),Promise.all(promises)}function onRecordingChanged(){reloadItem(this,!0)}function renderPeopleItems(view,item,apiClient){view=view.querySelector(".peopleItems");if("Person"!==item.Type&&"MusicArtist"!==item.Type)view.classList.add("hide");else{view.classList.remove("hide");for(var sections=[],sectionElems=("Person"===item.Type?(sections.push({name:_globalize.default.translate("HeaderUpcomingOnTV"),type:"Program"}),sections.push({name:_globalize.default.translate("Movies"),type:"Movie"}),sections.push({name:_globalize.default.translate("Shows"),type:"Series"}),sections.push({name:_globalize.default.translate("Episodes"),type:"Episode"}),sections.push({name:_globalize.default.translate("Trailers"),type:"Trailer"}),sections.push({name:_globalize.default.translate("HeaderMusicVideos"),type:"MusicVideo"}),sections.push({name:_globalize.default.translate("Videos"),type:"Video"})):"MusicArtist"===item.Type&§ions.push({name:_globalize.default.translate("HeaderMusicVideos"),type:"MusicVideo"}),view.innerHTML=sections.map(function(section){var html="";return(html+='<div class="verticalSection verticalSection-cards personSection hide" data-type="'+section.type+'">')+'<div class="sectionTitleContainer sectionTitleContainer-cards padded-left padded-left-page padded-right">'+('<a is="emby-sectiontitle" href="'+function(item,type){return"Genre"===item.Type?"list/list.html?type="+type+"&genreId="+item.Id+"&serverId="+item.ServerId:"MusicGenre"===item.Type?"list/list.html?type="+type+"&musicGenreId="+item.Id+"&serverId="+item.ServerId:"GameGenre"===item.Type?"list/list.html?type="+type+"&gameGenreId="+item.Id+"&serverId="+item.ServerId:"Studio"===item.Type?"list/list.html?type="+type+"&studioId="+item.Id+"&serverId="+item.ServerId:"MusicArtist"===item.Type?"list/list.html?type="+type+"&artistId="+item.Id+"&serverId="+item.ServerId:"Person"===item.Type?"list/list.html?type="+type+"&personId="+item.Id+"&serverId="+item.ServerId:"list/list.html?type="+type+"&parentId="+item.Id+"&serverId="+item.ServerId}(item,section.type)+'" class="button-link button-link-color-inherit sectionTitleTextButton">')+'<h2 class="sectionTitle sectionTitle-cards">'+section.name+"</h2>"+"</a>"+"</div>"+'<div is="emby-scroller" class="emby-scroller padded-top-focusscale padded-bottom-focusscale padded-left padded-left-page padded-right" data-mousewheel="false" data-focusscroll="true" data-horizontal="true">'+'<div is="emby-itemscontainer" class="scrollSlider focuscontainer-x itemsContainer"></div>'+"</div>"+"</div>"+"</div>"}).join(""),view.querySelectorAll(".personSection")),i=0,length=sectionElems.length;i<length;i++)!function(item,element,type,apiClient){switch(type){case"Program":loadPeopleItems(element,item,0,{IncludeItemTypes:"Program",Limit:12,SortBy:"StartDate",Fields:"PrimaryImageAspectRatio"},{shape:"autooverflow",fields:["Name","ChannelName","AirTime"],centerText:!0,preferThumb:!0,overlayText:!1,showAirDateTime:!0},apiClient);break;case"Movie":loadPeopleItems(element,item,0,{IncludeItemTypes:"Movie",Limit:12,SortBy:"SortName",Fields:"PrimaryImageAspectRatio"},{shape:"autooverflow",fields:["Name","ProductionYear"],centerText:!0,overlayText:!1},apiClient);break;case"Video":loadPeopleItems(element,item,0,{IncludeItemTypes:"Video",Limit:12,SortBy:"SortName",Fields:"PrimaryImageAspectRatio"},{shape:"autooverflow",fields:["Name","ProductionYear"],centerText:!0,overlayText:!1},apiClient);break;case"MusicVideo":loadPeopleItems(element,item,0,{IncludeItemTypes:"MusicVideo",Limit:12,SortBy:"SortName",Fields:"PrimaryImageAspectRatio"},{shape:"autooverflow",fields:["Name","ProductionYear"],centerText:!0,overlayPlayButton:!0},apiClient);break;case"Game":loadPeopleItems(element,item,0,{IncludeItemTypes:"Game",Limit:12,SortBy:"SortName",Fields:"PrimaryImageAspectRatio"},{shape:"autooverflow",fields:["Name"],centerText:!0},apiClient);break;case"Trailer":loadPeopleItems(element,item,0,{IncludeItemTypes:"Trailer",Limit:12,SortBy:"SortName",Fields:"PrimaryImageAspectRatio"},{shape:"autooverflow",fields:["Name"],centerText:!0,overlayPlayButton:!0},apiClient);break;case"Series":loadPeopleItems(element,item,0,{IncludeItemTypes:"Series",Limit:12,SortBy:"SortName",Fields:"PrimaryImageAspectRatio"},{shape:"autooverflow",fields:["Name"],centerText:!0},apiClient);break;case"MusicAlbum":loadPeopleItems(element,item,0,{IncludeItemTypes:"MusicAlbum",Limit:12,SortBy:"ProductionYear,SortName",SortOrder:"Descending,Ascending",Fields:"ProductionYear,PrimaryImageAspectRatio"},{shape:"autooverflow",playFromHere:!0,fields:["Name","ProductionYear"],centerText:!0,overlayPlayButton:!0},apiClient);break;case"MusicArtist":loadPeopleItems(element,item,0,{IncludeItemTypes:"MusicArtist",Limit:8,SortBy:"SortName",Fields:"PrimaryImageAspectRatio"},{shape:"autooverflow",playFromHere:!0,fields:["Name"],centerText:!0,overlayPlayButton:!0},apiClient);break;case"Episode":loadPeopleItems(element,item,0,{IncludeItemTypes:"Episode",Limit:6,SortBy:"SeriesSortName,ParentIndexNumber,IndexNumber,SortName",Fields:"PrimaryImageAspectRatio"},{shape:"autooverflow",fields:["ParentName","Name"],centerText:!0,overlayPlayButton:!0},apiClient);break;case"Audio":loadPeopleItems(element,item,0,{IncludeItemTypes:"Audio",SortBy:"AlbumArtist,Album,SortName",Fields:"PrimaryImageAspectRatio"},{playFromHere:!0,fields:["Name","ParentName"],action:"playallfromhere",smallIcon:!0},apiClient)}}(item,sectionElems[i],sectionElems[i].getAttribute("data-type"),apiClient)}}function loadPeopleItems(element,item,type,query,listOptions,apiClient){query.SortOrder="Ascending",query.Recursive=!0,query.CollapseBoxSetItems=!1,query.Fields="PrimaryImageAspectRatio,ProductionYear","Person"===item.Type?query.PersonIds=item.Id:"MusicArtist"===item.Type&&(query.ArtistIds=item.Id),query.ImageTypeLimit=1,query.EnableTotalRecordCount=!1,apiClient.getItems(apiClient.getCurrentUserId(),query).then(function(result){_cardbuilder.default.buildCards(result.Items,{parentContainer:element,itemsContainer:element.querySelector(".itemsContainer"),shape:listOptions.shape,fields:listOptions.fields,overlayText:!1,centerText:!0})})}function onTrackSelectionsSubmit(e){return e.preventDefault(),!1}function bindAll(view,selector,eventName,fn){for(var elems=view.querySelectorAll(selector),i=0,length=elems.length;i<length;i++)elems[i].addEventListener(eventName,fn)}function executeCommandWithCommandProcessor(command,item,options){require(["commandProcessor"]).then(function(responses){return responses[0].executeCommand(command,[item],options)})}function onDataFetched(responses){var itemInfo=responses[0],item=itemInfo.item,itemInfo=itemInfo.mediaSources,user=responses[1],responses=_connectionmanager.default.getApiClient(item.ServerId),view=this.view,itemMainScrollSlider=("Person"===item.Type&&_backdrop.default.hasBackdrop()||_backdrop.default.setBackdrops([item],{enableAnimation:!0,enablePrimaryImageBeforeInherited:enableTvDetailImageLayout(item)&&"Season"!==item.Type&&"Episode"!==item.Type,allowPrimaryImage:enableTvDetailImageLayout(item)}),this.updateDrawerState(),view.querySelector(".itemMainScrollSlider")),detailMainContainerParent=view.querySelector(".detailMainContainerParent"),itemMainScrollSlider=(_backdrop.default.hasBackdrop()?(_layoutmanager.default.tv?view.classList.add("darkContentContainer-tv","darkContentContainer-item"):view.classList.add("darkContentContainer-item"),enableTvDetailImageLayout(item)?(itemMainScrollSlider.classList.add("itemMainScrollSlider-fade"),detailMainContainerParent.classList.add("detailMainContainerParent-fade"),backgroundContainer.classList.add("itemBackgroundContainer-brighter")):(itemMainScrollSlider.classList.remove("itemMainScrollSlider-fade"),detailMainContainerParent.classList.remove("detailMainContainerParent-fade"),backgroundContainer.classList.remove("itemBackgroundContainer-brighter")),enableItemBackdropAsTopImage(item)?(backdropContainer.classList.add("backdropContainer-preventbackdrop"),backgroundContainer.classList.add("itemBackgroundContainer","itemBackgroundContainer-preventbackdrop")):(backdropContainer.classList.remove("backdropContainer-preventbackdrop"),backgroundContainer.classList.add("itemBackgroundContainer"),backgroundContainer.classList.remove("itemBackgroundContainer-preventbackdrop"))):(view.classList.remove("darkContentContainer-item","darkContentContainer-tv"),itemMainScrollSlider.classList.remove("itemMainScrollSlider-fade"),detailMainContainerParent.classList.remove("detailMainContainerParent-fade"),backgroundContainer.classList.remove("itemBackgroundContainer-brighter","itemBackgroundContainer","itemBackgroundContainer-preventbackdrop"),backdropContainer.classList.remove("backdropContainer-preventbackdrop")),this.currentItem=item,[]),detailMainContainerParent=(this.sectionsInitialized||(this.sectionsInitialized=!0,function(instance,view,item){var section;"Episode"===item.Type&&(view=view.querySelector(".moreFromSeasonItemsContainer"),(section=view.closest(".verticalSection")).querySelector("h2").innerHTML=_globalize.default.translate("MoreFromValue",item.SeasonName),view.fetchData=function(query){var apiClient,item=this.currentItem;return item.SeasonId&&item.SeriesId?(apiClient=_connectionmanager.default.getApiClient(item),query=Object.assign({SeasonId:item.SeasonId,UserId:apiClient.getCurrentUserId(),Fields:this.getRequestedItemFields()+",PrimaryImageAspectRatio"},query),apiClient.getEpisodes(item.SeriesId,query).then(function(result){return!query.StartIndex&&result.Items.length<2?Promise.resolve({TotalRecordCount:0,Items:[]}):result})):Promise.resolve({TotalRecordCount:0,Items:[]})}.bind(instance),view.parentContainer=section,view.getListOptions=getMoreFromSeasonListOptions,view.afterRefresh=function(totalResult){if(totalResult.Items.length){var item=this.currentItem;if(item){var view=this.view;if(view){var itemsContainer=view.querySelector(".moreFromSeasonItemsContainer");if(itemsContainer){var query,index=itemsContainer.indexOfItemId(item.Id);if(-1===index)return view=_connectionmanager.default.getApiClient(item),query={SeasonId:item.SeasonId,UserId:view.getCurrentUserId(),Fields:this.getRequestedItemFields()+",PrimaryImageAspectRatio",Limit:0,StartItemId:item.Id},view.getEpisodes(item.SeriesId,query).then(function(result){index=Math.max(totalResult.TotalRecordCount-result.TotalRecordCount,0),itemsContainer.scrollToIndex(Math.min(index+1,totalResult.TotalRecordCount-1),{behavior:"instant",offset:"-padding-inline-start"},!1)});itemsContainer.scrollToIndex(Math.min(index+1,totalResult.TotalRecordCount-1),{behavior:"instant",offset:"-padding-inline-start"},!1)}}}}}.bind(instance),view.classList.add("generalItemsContainer"))}(this,view,item),function(instance,view,item){var section;"MusicArtist"!==item.Type&&"MusicAlbum"!==item.Type||(view=view.querySelector(".moreFromArtistItemsContainer"),section=view.closest(".verticalSection"),"MusicArtist"===item.Type?section.querySelector(".sectionTitle").innerHTML=_globalize.default.translate("HeaderAppearsOn"):section.querySelector(".sectionTitle").innerHTML=_globalize.default.translate("MoreFromValue",_textencoding.default.htmlEncode(item.AlbumArtists[0].Name)),view.fetchData=function(query){var item=this.currentItem;if("MusicAlbum"===item.Type&&!item.AlbumArtists&&!item.AlbumArtists.length)return Promise.resolve({TotalRecordCount:0,Items:[]});query=Object.assign({IncludeItemTypes:"MusicAlbum",Recursive:!0,SortBy:"ProductionYear,SortName",SortOrder:"Descending",Fields:this.getRequestedItemFields()+",PrimaryImageAspectRatio,ProductionYear"},query);var apiClient=_connectionmanager.default.getApiClient(item);"MusicArtist"===item.Type?query.ContributingArtistIds=item.Id:(query.AlbumArtistIds=item.AlbumArtists[0].Id,query.ExcludeItemIds=item.Id);return apiClient.getItems(apiClient.getCurrentUserId(),query)}.bind(instance),view.parentContainer=section,view.getListOptions=getMoreFromArtistListOptions,view.classList.add("generalItemsContainer"))}(this,view,item),itemMainScrollSlider.push(function(instance,item){var section=instance.view.querySelector(".seriesItemsSection");return"Series"===item.Type?getSeasons.call(instance,{EnableUserData:!1,EnableTotalRecordCount:!1,EnableImages:!1}).then(function(result){instance.seasonItems=result.Items;item.Type;setScopedFocus(instance.view,section.querySelector(".focusable"),!0,"nearest");var itemsContainer=section.querySelector(".itemsContainer"),seriesDisplay=(itemsContainer.parentContainer=section,_usersettings.default.seriesDisplay()),hasMultipleSeasons=(_apiclient.default.isLocalItem(item)&&(seriesDisplay=""),2<=result.Items.length),seriesDisplay=instance.renderAllEpisodes="episodes"===seriesDisplay||"episodessingleseason"===seriesDisplay&&!hasMultipleSeasons,renderSeasonsWithTabs=seriesDisplay&&hasMultipleSeasons&&_layoutmanager.default.tv,sectionTitleElement=section.querySelector(".sectionTitle"),sectionTitleElement=(sectionTitleElement.innerHTML=seriesDisplay?1===result.Items.length?result.Items[0].Name:_globalize.default.translate("Episodes"):_globalize.default.translate("Seasons"),seriesDisplay&&hasMultipleSeasons?sectionTitleElement.classList.add("hide"):sectionTitleElement.classList.remove("hide"),section.querySelector(".detailSelectSeason")),detailSelectSeasonContainer=section.querySelector(".detailSelectSeasonContainer"),hasMultipleSeasons=(seriesDisplay&&hasMultipleSeasons&&!renderSeasonsWithTabs?detailSelectSeasonContainer.classList.remove("hide"):detailSelectSeasonContainer.classList.add("hide"),section.querySelector(".seasonTabs"));seriesDisplay?(itemsContainer.classList.add("allEpisodesItemsContainer"),renderSeasonsWithTabs?(function(seasonTabsParent,items){var index;items.length?(index=0,items='<div is="emby-tabs" data-index="-1" class="emby-tabs seasonTabs-emby-tabs padded-left padded-left-page padded-right"><div class="emby-tabs-slider scrollSliderX">'+items.map(function(item){var tabClass="emby-button emby-tab-button secondaryText detailSeasonTab",tabClass=(_layoutmanager.default.tv&&(tabClass+=" emby-button-tv"),'<button type="button" is="emby-button" class="'+tabClass+'" data-seasonnumber="'+(null==item.IndexNumber?1:item.IndexNumber)+'" data-id="'+item.Id+'" data-index="'+index+'">'+_textencoding.default.htmlEncode(item.Name)+"</button>");return index++,tabClass}).join("")+"</div></div>",seasonTabsParent.innerHTML=items,seasonTabsParent.classList.remove("hide")):(seasonTabsParent.classList.add("hide"),seasonTabsParent.innerHTML="")}(hasMultipleSeasons,result.Items),instance.seasonTabs=section.querySelector(".seasonTabs-emby-tabs"),instance.seasonTabs.addEventListener("tabchange",function(e){var id,seasonTabs=this.seasonTabs;seasonTabs&&(e=e.detail.selectedTabIndex,seasonTabs=seasonTabs.querySelector('.detailSeasonTab[data-index="'+e+'"]'))&&(id=seasonTabs.getAttribute("data-id"),e=(this.seasonItems||[]).filter(function(s){return s.Id===id})[0])&&scrollEpisodesToSeason(this,e.Id)}.bind(instance))):(hasMultipleSeasons.classList.add("hide"),hasMultipleSeasons.innerHTML="",instance.seasonTabs=null)):(hasMultipleSeasons.innerHTML="",hasMultipleSeasons.classList.add("hide"),instance.seasonTabs=null),(instance.detailSelectSeason=sectionTitleElement)&&(sectionTitleElement.getItems=getSeasons.bind(instance),sectionTitleElement.addEventListener("change",function(e){e=e.target.value;e&&scrollEpisodesToSeason(this,e)}.bind(instance))),itemsContainer.fetchData=function(query){var item=this.currentItem,apiClient=_connectionmanager.default.getApiClient(item),fields=this.getRequestedItemFields()+",PrimaryImageAspectRatio";if(this.renderAllEpisodes)return fields+=",Overview,PremiereDate,ProductionYear,RunTimeTicks,SpecialEpisodeNumbers",query=Object.assign({UserId:apiClient.getCurrentUserId(),Fields:fields,Recursive:!0,IsFolder:!1,ParentId:item.Id},query),apiClient.isMinServerVersion("4.8")||(query.IncludeItemTypes="Episode"),apiClient.getItems(apiClient.getCurrentUserId(),query);return apiClient.getSeasons(item.Id,Object.assign({UserId:apiClient.getCurrentUserId(),Fields:fields},query))}.bind(instance),itemsContainer.getListOptions=function(items){var fields=["Name"],centerText=!0;this.renderAllEpisodes&&(fields.push("Overview"),fields.push("MediaInfo"),centerText=!1);return{renderer:_cardbuilder.default,options:{shape:"auto",scalable:!0,centerText:centerText,fields:fields,overlayText:!1,focusTransformTitleAdjust:!0},virtualScrollLayout:"horizontal-grid"}}.bind(instance),seriesDisplay&&(itemsContainer.afterRefresh=function(totalResult){if(totalResult.Items.length){var item=this.currentItem;if(item){var view=this.view;if(view){var apiClient,instance=this,itemsContainer=view.querySelector(".childrenItemsContainer");if(itemsContainer)return apiClient=_connectionmanager.default.getApiClient(item),getNextUpItems.call(this,{Limit:1}).then(function(nextUpResult){var nextUpResult=nextUpResult.Items[0],detailSelectSeason=view.querySelector(".detailSelectSeason");if(nextUpResult){onSeriesEpisodeFocusedOrScrolled(instance,nextUpResult);var select,index=itemsContainer.indexOfItemId(nextUpResult.Id);if(-1===index)return nextUpResult={UserId:apiClient.getCurrentUserId(),Limit:0,StartItemId:nextUpResult.Id},apiClient.getEpisodes(item.SeriesId||item.Id,nextUpResult).then(function(result){index=Math.max(totalResult.TotalRecordCount-result.TotalRecordCount,0),itemsContainer.scrollToIndex(Math.min(index,totalResult.TotalRecordCount-1),{behavior:"instant",offset:"-padding-inline-start"},!1)});itemsContainer.scrollToIndex(index,{behavior:"instant",offset:"-padding-inline-start"},!1)}else itemsContainer.scrollToIndex(0,{behavior:"instant",offset:"-padding-inline-start"},!1),detailSelectSeason&&(select=detailSelectSeason).getItems({StartIndex:0,Limit:1}).then(function(result){result.Items.length&&select.setValues([result.Items[0].Id],!1,[result.Items[0]])})})}}}}.bind(instance),(detailSelectSeasonContainer=instance.view.querySelector(".childrenItemsScroller")).addScrollEventListener(function(e){var scrollSize,padding;_layoutmanager.default.tv||(e=e.currentTarget,padding=e.getPadding(),padding=e.getScrollLeft()+padding.inlineStart+padding.inlineEnd,scrollSize=e.getScrollWidth(),padding=Math.min(1,padding/scrollSize),scrollSize=e.querySelector(".childrenItemsContainer"),e=scrollSize.getItems(),(padding=Math.floor(padding*e.length))<e.length&&(e=scrollSize.getItem(padding))&&onSeriesEpisodeFocusedOrScrolled(this,e))}.bind(instance),{}),detailSelectSeasonContainer.addEventListener("focus",function(e){var itemsContainer=e.currentTarget.querySelector(".childrenItemsContainer"),e=e.target.closest(itemsContainer.getItemSelector()),itemsContainer=itemsContainer.getItemFromElement(e);itemsContainer&&onSeriesEpisodeFocusedOrScrolled(this,itemsContainer)}.bind(instance),!0))}):(section.classList.add("hide"),Promise.resolve())}(this,item)),function(instance,item){var section=instance.view.querySelector(".collectionItemsSection"),itemsContainer=section.querySelector(".itemsContainer");itemsContainer.parentContainer=section,itemsContainer.fetchData=function(query){var item=this.currentItem;if("BoxSet"!==item.Type)return Promise.resolve({Items:[],TotalRecordCount:0});var apiClient=_connectionmanager.default.getApiClient(item),sortBy=_usersettings.default.itemSortBy(item.Id)||"default";"default"===sortBy&&(sortBy="DisplayOrder");apiClient.isMinServerVersion("4.8.0.16")||(sortBy=null);var sortOrder=sortBy?_usersettings.default.itemSortOrder(item.Id):null;return apiClient.getItems(apiClient.getCurrentUserId(),Object.assign({ParentId:item.Id,ImageTypeLimit:1,Fields:this.getRequestedItemFields()+",PrimaryImageAspectRatio,ProductionYear",EnableTotalRecordCount:!1,sortBy:sortBy,sortOrder:sortOrder},query)).then(function(result){for(var i=0,length=result.Items.length;i<length;i++)result.Items[i].CollectionId=item.Id;return result})}.bind(instance),itemsContainer.afterRefresh=setSortLabelText.bind(instance),itemsContainer.getListOptions=function(id){return function(items){return{renderer:_cardbuilder.default,options:{shape:"auto",scalable:!0,centerText:!0,fields:["Name","ProductionYear"],overlayText:!1,collectionId:id}}}}(item.Id),itemsContainer.setAttribute("data-monitor","CollectionItems"),itemsContainer.setAttribute("data-monitorids",item.Id)}(this,item),function(instance,view,item,apiClient){var headerText;"MusicArtist"===item.Type&&(headerText=view.querySelector(".artistSongsItemsHeader"),apiClient=_approuter.default.getRouteUrl("list",{serverId:apiClient.serverId(),itemTypes:"Audio",artistId:item.Id}),item="",item='<a is="emby-sectiontitle" href="'+apiClient+'" class="button-link button-link-color-inherit sectionTitleTextButton">',item=(item=(item+='<h2 class="sectionTitle sectionTitle-cards">')+_globalize.default.translate("Songs"))+"</h2></a>",headerText.innerHTML=item,(apiClient=view.querySelector(".artistSongsItemsContainer")).classList.add("generalItemsContainer"),apiClient.fetchData=function(query){var item=this.currentItem,item=_connectionmanager.default.getApiClient(item);return item.getItems(item.getCurrentUserId(),Object.assign({Recursive:!0,IncludeItemTypes:"Audio",ArtistIds:this.currentItem.Id,SortBy:"PlayCount,SortName",SortOrder:"Descending,Ascending",ImageTypeLimit:1,Fields:this.getRequestedItemFields()+",PrimaryImageAspectRatio"},query))}.bind(instance),apiClient.getListOptions=getArtistSongsListOptions,apiClient.parentContainer=apiClient.closest(".verticalSection"))}(this,view,item,responses),function(instance,item,apiClient){var section=instance.view.querySelector(".artistAlbumsSection"),itemsContainer=(setScopedFocus(instance.view,section.querySelector(".focusable"),!0,"nearest"),section.querySelector(".itemsContainer")),apiClient=(itemsContainer.parentContainer=section,_approuter.default.getRouteUrl("list",{serverId:apiClient.serverId(),itemTypes:"MusicAlbum",albumArtistId:item.Id}));section.querySelector(".sectionTitleTextButton").href=apiClient,itemsContainer.setAttribute("data-virtualscrolllayout","horizontal-grid"),itemsContainer.fetchData=function(query){var item=this.currentItem;if("MusicArtist"!==item.Type)return Promise.resolve({Items:[],TotalRecordCount:0});var apiClient=_connectionmanager.default.getApiClient(item);return(query=Object.assign({IncludeItemTypes:"MusicAlbum",Recursive:!0,SortBy:"ProductionYear,SortName",SortOrder:"Descending,Ascending",ImageTypeLimit:1,Fields:this.getRequestedItemFields()+",PrimaryImageAspectRatio,ProductionYear"},query)).AlbumArtistIds=item.Id,apiClient.getItems(apiClient.getCurrentUserId(),query)}.bind(instance),itemsContainer.getListOptions=getMusicArtistChildrenListOptions}(this,item,responses),function(instance,item,apiClient){var trackList=instance.view.querySelector(".trackList");trackList.parentContainer=trackList,"Season"===item.Type?(trackList.fetchData=function(serverId,seriesId,seasonId){return function(query){var apiClient=_connectionmanager.default.getApiClient(serverId);return apiClient.getEpisodes(seriesId,Object.assign({SeasonId:seasonId,ImageTypeLimit:1,UserId:apiClient.getCurrentUserId(),Fields:"Overview,PrimaryImageAspectRatio,PremiereDate,ProductionYear"},query))}}(apiClient.serverId(),item.SeriesId,item.Id),trackList.getListOptions=function(item){return function(){return{renderer:_listview.default,options:{showIndexNumber:!1,imageSize:"large",highlight:!1,action:"link",imagePlayButton:!_layoutmanager.default.tv,includeParentInfoInTitle:!1,enableSpecialEpisodePrefix:0!==item.IndexNumber,itemClass:"detailsListItem",fields:["Name","Overview"]},virtualScrollLayout:"vertical-list"}}}(item),trackList.setAttribute("data-virtualscrolllayout","vertical-grid"),trackList.classList.add("padded-bottom-page")):"MusicAlbum"===item.Type?(trackList.fetchData=function(query){var item=this.currentItem,apiClient=_connectionmanager.default.getApiClient(item),includeOverview=!0===item.SupportsResume,fields=this.getRequestedItemFields()+",PrimaryImageAspectRatio";includeOverview&&(fields+=",Overview");return apiClient.getItems(apiClient.getCurrentUserId(),Object.assign({ParentId:item.Id,Fields:fields,ImageTypeLimit:1,SortBy:null,EnableTotalRecordCount:!1}))}.bind(instance),trackList.getListOptions=(!0===item.SupportsResume?function(item){return function(items){var fields=[];return function(items){for(var i=0,length=items.length;i<length;i++){var item=items[i];if("Audio"!==item.MediaType||item.SupportsResume)return 1}return}(items)&&fields.push("Overview"),"Playlist"===item.Type&&fields.push("ParentName"),fields.push("Name"),{renderer:_listview.default,options:{showIndexNumberLeft:!1,highlight:!1,action:"link",dragHandle:!1,image:!0,imageSize:"medium",showIndexNumber:!0,artist:"auto",imagePlayButton:!_layoutmanager.default.tv,showIndex:"MusicAlbum"===item.Type,fields:fields,index:"disc",containerAlbumArtists:"MusicAlbum"===item.Type?item.AlbumArtists:null,playAction:"playallfromhere",includeParentInfoInTitle:!1,itemClass:"detailsListItem",autoHideMediaInfo:!1,enableSideMediaInfo:!0},virtualScrollLayout:"vertical-list",commandOptions:{openAlbum:!1}}}}:getPlaylistListOptionsFn)(item),trackList.classList.add("generalItemsContainer")):"Playlist"===item.Type&&(trackList.fetchData=function(query){var currentItem=this.currentItem,apiClient=_connectionmanager.default.getApiClient(currentItem),itemId=currentItem.Id,currentItem=_usersettings.default.itemSortBy(itemId)||"default";"default"===currentItem&&(currentItem="ListItemOrder");var sortOrder=currentItem?_usersettings.default.itemSortOrder(itemId):null;return apiClient.getItems(apiClient.getCurrentUserId(),Object.assign({ParentId:itemId,Fields:"PrimaryImageAspectRatio,Overview,PremiereDate,ProductionYear,OfficialRating,CommunityRating",ImageTypeLimit:1,SortBy:currentItem,SortOrder:sortOrder},query)).then(function(result){for(var i=0,length=result.Items.length;i<length;i++)result.Items[i].PlaylistId=itemId;return result})}.bind(instance),trackList.getListOptions=getPlaylistListOptionsFn(item),trackList.setAttribute("data-monitor","PlaylistItems"),trackList.setAttribute("data-monitorids",item.Id),trackList.setAttribute("data-virtualscrolllayout","vertical-grid"),trackList.classList.add("padded-bottom-page"),trackList.afterRefresh=setSortLabelText.bind(instance),trackList.classList.add("generalItemsContainer"));_layoutmanager.default.tv||"Playlist"!==item.Type&&"MusicAlbum"!==item.Type?trackList.classList.remove("tracklist-topmargin"):trackList.classList.add("tracklist-topmargin");_layoutmanager.default.tv&&"Season"===item.Type?trackList.classList.add("tracklist-sidemargin"):trackList.classList.remove("tracklist-sidemargin")}(this,item,responses),function(instance,view,item,user){(_itemmanager.default.canAddToCollection(item,user)||_itemmanager.default.canAddToPlaylist(item))&&"Season"!==item.Type&&((user=view.querySelector(".appearsOnListsItemsContainer")).fetchData=function(query){var item=this.currentItem,apiClient=_connectionmanager.default.getApiClient(item);return query=Object.assign({fields:this.getRequestedItemFields()+",PrimaryImageAspectRatio",IncludeItemTypes:"Playlist,BoxSet",Recursive:!0,SortBy:"SortName",ListItemIds:item.Id},query),apiClient.getItems(apiClient.getCurrentUserId(),query)}.bind(instance),user.getListOptions=getAppearsOnListsListOptions,user.parentContainer=user.closest(".verticalSection"),user.classList.add("generalItemsContainer"))}(this,view,item,user),function(instance,view){view=view.querySelector(".peopleItemsContainer");view.fetchData=function(instance){return function(query){var serverId=instance.currentItem.ServerId,people=(instance.currentItem.People||[]).filter(function(p){return p.ServerId=serverId,"Person"!==p.Type&&(p.PersonType=p.Type,p.Type="Person"),!0}),totalRecordCount=people.length;return query&&(people=people.slice(query.StartIndex||0),query.Limit)&&people.length>query.Limit&&(people.length=query.Limit),Promise.resolve({Items:people,TotalRecordCount:totalRecordCount})}}(instance),view.parentContainer=view.closest(".verticalSection"),view.getListOptions=getPeopleListOptions,view.classList.add("generalItemsContainer")}(this,view),function(instance,view,item){_itemhelper.default.supportsSimilarItems(item)&&((view=view.querySelector(".similarItemsContainer")).fetchData=function(){var item=this.currentItem,apiClient=_connectionmanager.default.getApiClient(item),options={Limit:12,UserId:apiClient.getCurrentUserId(),ImageTypeLimit:1,Fields:this.getRequestedItemFields()+",PrimaryImageAspectRatio,ProductionYear",EnableTotalRecordCount:!1};("Program"===item.Type||"Timer"===item.Type&&item.ProgramId&&!item.IsSports)&&(options.GroupProgramsBySeries=!0);"MusicAlbum"===item.Type&&item.AlbumArtists&&item.AlbumArtists.length&&(options.ExcludeArtistIds=item.AlbumArtists[0].Id);item="Timer"===item.Type?item.ProgramId:item.Id;return apiClient.getSimilarItems(item,options)}.bind(instance),view.parentContainer=view.closest(".verticalSection"),view.getListOptions=function(item){return function(items){var fields=["Name"];return"Movie"!==item.Type&&"Trailer"!==item.Type&&"Program"!==item.Type&&"Game"!==item.Type||fields.push("ProductionYear"),"MusicAlbum"!==item.Type&&"Game"!==item.Type||fields.push("ParentName"),"Program"===item.Type&&fields.unshift("ParentName"),{renderer:_cardbuilder.default,options:{shape:"auto",lines:"Game"===item.Type?3:"Program"===item.Type?2:null,centerText:!0,fields:fields,overlayPlayButton:!0,overlayText:!1,multiSelect:"Program"!==item.Type&&"Timer"!==item.Type,contextMenu:"Program"!==item.Type&&"Timer"!==item.Type,draggable:"Program"!==item.Type&&"Timer"!==item.Type,focusTransformTitleAdjust:!0},virtualScrollLayout:"horizontal-grid"}}}(item),view.classList.add("generalItemsContainer"))}(this,view,item),function(instance,view,item,apiClient){_itemhelper.default.supportsSimilarItemsOnLiveTV(item,apiClient)&&((item=view.querySelector(".similarOnLiveTVItemsContainer")).fetchData=function(){var item=this.currentItem,apiClient=_connectionmanager.default.getApiClient(item);return apiClient.getSimilarItems(item.Id,{userId:apiClient.getCurrentUserId(),limit:12,fields:this.getRequestedItemFields()+",PrimaryImageAspectRatio,ProductionYear",IncludeItemTypes:"Program",EnableTotalRecordCount:!1,GroupProgramsBySeries:!0})}.bind(instance),item.parentContainer=item.closest(".verticalSection"),item.getListOptions=getMoreLikeThisOnLiveTVListOptions,item.classList.add("generalItemsContainer"))}(this,view,item,responses),function(instance,view,item){("Series"===item.Type||"Program"===item.Type||"Timer"===item.Type&&item.ProgramId)&&((view=view.querySelector(".seriesScheduleItemsContainer")).fetchData=function(query){var item=this.currentItem,apiClient=_connectionmanager.default.getApiClient(item);query=Object.assign({UserId:apiClient.getCurrentUserId(),HasAired:!1,SortBy:"StartDate",ImageTypeLimit:1,EnableImageTypes:"Primary,Thumb,Backdrop",EnableUserData:!1,Fields:"PrimaryImageAspectRatio,ChannelInfo"},query),"Program"===item.Type||"Timer"===item.Type&&item.ProgramId?item.AsSeries?query.SeriesFromProgramId=item.Id:(query.ShowingsFromProgramId=item.ProgramId||item.Id,query.ExcludeItemIds=item.ProgramId||item.Id):query.LibrarySeriesId=item.Id;return apiClient.getLiveTvPrograms(query)}.bind(instance),view.parentContainer=view.closest(".verticalSection"),view.getListOptions=function(items){return{renderer:_cardbuilder.default,options:{preferThumb:"auto",shape:"autooverflow",fields:["Name","ChannelName","AirTime"],centerText:!0,overlayText:!1,overlayPlayButton:!1,showAirDateTime:!0,multiSelect:!1,draggable:!1,focusTransformTitleAdjust:!0},virtualScrollLayout:"horizontal-grid"}}.bind(instance),view.classList.add("generalItemsContainer"),"Program"!==item.Type&&"Timer"!==item.Type||(item.AsSeries?view.parentContainer.querySelector(".sectionTitle").innerHTML=_globalize.default.translate("Showings"):view.parentContainer.querySelector(".sectionTitle").innerHTML=_globalize.default.translate("HeaderOtherShowings")))}(this,view,item),function(instance,view,item){_itemhelper.default.supportsExtras(item)&&((item=view.querySelector(".extrasItemsContainer")).fetchData=function(query){var item=this.currentItem,apiClient=_connectionmanager.default.getApiClient(item);return apiClient.getSpecialFeatures(apiClient.getCurrentUserId(),item.Id).then(function(items){var totalRecordCount=items.length;return query&&(items=items.slice(query.StartIndex||0),query.Limit)&&items.length>query.Limit&&(items.length=query.Limit),{Items:items,TotalRecordCount:totalRecordCount}})}.bind(instance),item.parentContainer=item.closest(".verticalSection"),item.getListOptions=getExtrasListOptions,item.classList.add("generalItemsContainer"))}(this,view,item),function(instance,view){view=view.querySelector(".chaptersItemsContainer");view.fetchData=function(query){var item=this.currentItem,chapters=item.Chapters||[];chapters.length&&"Video"===item.MediaType&&!chapters[0].ImageTag&&(chapters=[]);var videoStream=(((item.MediaSources||[])[0]||{}).MediaStreams||[]).filter(function(i){return"Video"===i.Type})[0]||{},aspect=null;videoStream.Width&&videoStream.Height&&(aspect=videoStream.Width/videoStream.Height);for(var i=0,length=chapters.length;i<length;i++){var chapter=chapters[i];chapter.Id=item.Id,chapter.Type=item.Type,chapter.ServerId=item.ServerId,chapter.MediaType=item.MediaType,chapter.PrimaryImageAspectRatio=aspect,null==chapter.ChapterIndex&&(chapter.ChapterIndex=i)}videoStream=(chapters=function(chapters){for(var list=[],i=0,length=chapters.length;i<length;i++){var chapter=chapters[i];chapter.MarkerType&&"Chapter"!==chapter.MarkerType||list.push(chapter)}return list}(chapters)).length;query&&(chapters=chapters.slice(query.StartIndex||0),query.Limit)&&chapters.length>query.Limit&&(chapters.length=query.Limit);return Promise.resolve({Items:chapters,TotalRecordCount:videoStream})}.bind(instance),view.parentContainer=view.closest(".verticalSection"),view.getListOptions=getChaptersListOptions,view.classList.add("generalItemsContainer")}(this,view),function(instance,view){view=view.querySelector(".additionalPartsItemsContainer");view.fetchData=function(){var item=this.currentItem;if((item.PartCount||1)<2)return Promise.resolve({TotalRecordCount:0,Items:[]});var apiClient=_connectionmanager.default.getApiClient(item);return apiClient.getAdditionalVideoParts(apiClient.getCurrentUserId(),item.Id)}.bind(instance),view.parentContainer=view.closest(".verticalSection"),view.getListOptions=getAdditionalPartsListOptions,view.classList.add("generalItemsContainer")}(this,view),function(instance,view,item){"TvChannel"===item.Type&&((item=view.querySelector(".programGuideItemsContainer")).fetchData=function(query){var item=this.currentItem,apiClient=_connectionmanager.default.getApiClient(item);return apiClient.getLiveTvPrograms(Object.assign({ChannelIds:item.Id,UserId:apiClient.getCurrentUserId(),HasAired:!1,SortBy:"StartDate",ImageTypeLimit:1,EnableUserData:!1,Fields:"PrimaryImageAspectRatio,Overview"},query))}.bind(instance),item.parentContainer=item.closest(".programGuideSection"),item.getListOptions=getProgramGuideListOptions,item.classList.add("generalItemsContainer"))}(this,view,item),function(instance,view,item){"SeriesTimer"===item.Type&&((item=view.querySelector(".seriesTimerScheduleItemsContainer")).fetchData=function(){var item=this.currentItem,apiClient=_connectionmanager.default.getApiClient(item);return apiClient.getLiveTvTimers({UserId:apiClient.getCurrentUserId(),ImageTypeLimit:1,EnableImageTypes:"Primary,Backdrop,Thumb",SortBy:"StartDate",EnableTotalRecordCount:!1,EnableUserData:!1,SeriesTimerId:item.Id,Fields:"ChannelInfo,ChannelImage"})}.bind(instance),item.parentContainer=item.closest(".verticalSection"),item.getListOptions=getSeriesTimerListOptions,item.classList.add("generalItemsContainer"))}(this,view,item),function(instance,view,item){var itemsContainer=function(view,item){var sideImageContainer=view.querySelector(".detailImageContainer-side"),view=view.querySelector(".detailImageContainer-main");return enableTrackList(item)?(view.classList.add("hide"),sideImageContainer.classList.remove("hide"),sideImageContainer):(view.classList.remove("hide"),sideImageContainer.classList.add("hide"),view)}(view,item),detailImage=itemsContainer,view=view.querySelector(".detailImageContainer-main");enableTrackList(item)||"Person"!==item.Type&&"BoxSet"!==item.Type&&"Season"!==item.Type&&"TvChannel"!==item.Type&&"Playlist"!==item.Type||detailImage.classList.add("detailImageContainer-small");"MusicAlbum"!==item.Type&&"Playlist"!==item.Type&&view.classList.add("detailImageContainer-main-extrabottommargin");_layoutmanager.default.tv?view.classList.add("detailImageContainer-main-tv"):view.classList.remove("detailImageContainer-main-tv");enableItemBackdropAsTopImage(item)?view.classList.add("detailImageContainer-hidemobile"):view.classList.remove("detailImageContainer-hidemobile");view=_imageloader.default.getShape([item],{});detailImage.classList.remove("detailImageContainer-backdrop","detailImageContainer-square","detailImageContainer-portrait","detailImageContainer-fourThree","detailImageContainer-banner"),view&&detailImage.classList.add("detailImageContainer-"+view);"TvChannel"===item.Type||"Season"===item.Type||"MusicAlbum"===item.Type||"Playlist"===item.Type?detailImage.classList.add("detailImage-nomarginleft"):detailImage.classList.remove("detailImage-nomarginleft");itemsContainer.fetchData=function(){var item=this.currentItem,items=[];!item||enableTvDetailImageLayout(item)||items.push(item);return Promise.resolve({Items:items,TotalRecordCount:items.length})}.bind(instance),(itemsContainer.parentContainer=itemsContainer).getListOptions=function(itemType,cardClass,imageContainerClassName){(imageContainerClassName=imageContainerClassName.split(" ").filter(function(c){return c.includes("detailImage")}).join(" ")).includes("detailImageContainer-side")&&(imageContainerClassName+=" item-fixed-side");return imageContainerClassName+=" imageWidthTest",function(items){return{renderer:_cardbuilder.default,options:{overlayText:!0,fields:[],action:"none",imageClass:"detailImage",imageWidthTestClass:imageContainerClassName,multiSelect:!1,contextMenu:!1,ratingButton:!1,playedButton:!1,cardClass:cardClass,defaultIcon:!0,typeIndicator:!1,playedIndicator:!1,syncIndicator:!1,timerIndicator:!1,randomDefaultBackground:!1,staticElement:!0,progress:"Program"===itemType||"Timer"===itemType,enableUserData:!1,draggable:!1,moreButton:!1,programIndicators:!1,keepImageAnimation:!0},virtualScrollLayout:"vertical-grid"}}}(item.Type,"detailImageContainerCard",detailImage.className),itemsContainer.afterRefresh=afterDetailImageRefreshed,itemsContainer.classList.add("generalItemsContainer"),enableTvDetailImageLayout(item)&&itemsContainer.classList.add("hide")}(this,view,item)),view.querySelector(".details-additionalContent")),detailMainContainer=("TvChannel"===item.Type||"Playlist"===item.Type||"Season"===item.Type?detailMainContainerParent.classList.remove("padded-bottom-page"):detailMainContainerParent.classList.add("padded-bottom-page"),this.mainSection),detailMainContainerParent=(_backdrop.default.hasBackdrop()?(detailMainContainerParent.classList.add("details-additionalContent-withbackdrop"),detailMainContainer.classList.add("detailMainContainer-withbackdrop")):(detailMainContainerParent.classList.remove("details-additionalContent-withbackdrop"),detailMainContainer.classList.remove("detailMainContainer-withbackdrop")),enableTrackList(item)?"Season"===item.Type?setTitle(item):setTitle(item,0,_layoutmanager.default.tv):setTitle(item,0,"float"===getLogoPlacement(item)&&"MusicAlbum"!==item.Type),view.querySelector(".topDetailsMain")),itemSideContainer=view.querySelector(".item-fixed-side"),mainDetailButtons=view.querySelector(".mainDetailButtons");return enableTrackList(item)?("MusicAlbum"===item.Type?detailMainContainer.classList.add("detailMainContainer-marginleft"):detailMainContainer.classList.remove("detailMainContainer-marginleft"),detailMainContainerParent.classList.remove("topDetailsMain-graphic","topDetailsMain-graphic-tv"),detailMainContainer.classList.remove("detailMainContainer-withitembackdrop","detailMainContainer-vertical"),itemSideContainer.classList.remove("hide"),_layoutmanager.default.tv&&"Season"!==item.Type?detailMainContainerParent.classList.add("padded-left","padded-left-page","padded-right"):detailMainContainerParent.classList.remove("padded-left","padded-left-page","padded-right")):(detailMainContainer.classList.remove("detailMainContainer-marginleft"),enableItemBackdropAsTopImage(item)?(detailMainContainer.classList.add("detailMainContainer-withitembackdrop"),detailMainContainer.classList.remove("detailMainContainer-vertical")):(detailMainContainer.classList.remove("detailMainContainer-withitembackdrop"),detailMainContainer.classList.add("detailMainContainer-vertical")),enableTvDetailImageLayout(item)?_layoutmanager.default.tv?detailMainContainerParent.classList.add("topDetailsMain-graphic","topDetailsMain-graphic-tv"):(detailMainContainerParent.classList.add("topDetailsMain-graphic"),detailMainContainerParent.classList.remove("topDetailsMain-graphic-tv")):detailMainContainerParent.classList.remove("topDetailsMain-graphic","topDetailsMain-graphic-tv"),itemSideContainer.classList.add("hide"),detailMainContainerParent.classList.remove("padded-left","padded-left-page","padded-right")),renderName(this,item,responses,user,view.querySelectorAll(".nameContainer")),function(view,item,apiClient){var imgUrl,usePrimaryImage,screenWidth=screen.availWidth,itemBackdropContainerElement=view.querySelector(".itemBackdropContainer"),itemBackdropElement=itemBackdropContainerElement.querySelector(".itemBackdrop");enableItemBackdropAsTopImage(item)?(itemBackdropContainerElement.classList.remove("hide"),usePrimaryImage="Video"===item.MediaType&&"Movie"!==item.Type&&"Trailer"!==item.Type||item.MediaType&&"Video"!==item.MediaType||"MusicAlbum"===item.Type||"Playlist"===item.Type,"Program"===item.Type&&item.ImageTags&&item.ImageTags.Thumb?imgUrl=apiClient.getImageUrl(item.Id,{type:"Thumb",index:0,maxWidth:screenWidth,tag:item.ImageTags.Thumb,EnableImageEnhancers:!1}):usePrimaryImage&&item.ImageTags&&item.ImageTags.Primary?imgUrl=apiClient.getImageUrl(item.Id,{type:"Primary",index:0,maxWidth:screenWidth,tag:item.ImageTags.Primary,EnableImageEnhancers:!1}):item.BackdropImageTags&&item.BackdropImageTags.length?imgUrl=apiClient.getImageUrl(item.Id,{type:"Backdrop",index:0,maxWidth:screenWidth,tag:item.BackdropImageTags[0]}):item.ParentBackdropItemId&&item.ParentBackdropImageTags&&item.ParentBackdropImageTags.length?imgUrl=apiClient.getImageUrl(item.ParentBackdropItemId,{type:"Backdrop",index:0,tag:item.ParentBackdropImageTags[0],maxWidth:screenWidth}):item.ImageTags&&item.ImageTags.Thumb?imgUrl=apiClient.getImageUrl(item.Id,{type:"Thumb",index:0,maxWidth:screenWidth,tag:item.ImageTags.Thumb,EnableImageEnhancers:!1}):item.ImageTags&&item.ImageTags.Primary&&(imgUrl=apiClient.getImageUrl(item.Id,{type:"Primary",index:0,maxWidth:screenWidth,tag:item.ImageTags.Primary,EnableImageEnhancers:!1})),"TvChannel"===item.Type&&itemBackdropContainerElement.classList.add("itemBackdropContainer-small"),usePrimaryImage=view.querySelector(".itemMainScrollSlider"),_layoutmanager.default.tv?usePrimaryImage.classList.remove("itemMainScrollSlider-moveup","itemMainScrollSlider-nopaddingtop"):"TvChannel"!==item.Type&&enableItemBackdropAsTopImage(item)&&usePrimaryImage.classList.add("itemMainScrollSlider-nopaddingtop"),"TvChannel"!==item.Type&&"Person"!==item.Type||itemBackdropElement.classList.add("itemBackdrop-contain"),itemBackdropElement.style.backgroundImage=imgUrl?"url('"+imgUrl+"')":""):itemBackdropContainerElement.classList.add("hide")}(view,item,responses),renderTrackSelections(view,this,item,user,!0,itemInfo),itemMainScrollSlider.push(renderDetails(this,view,item,responses,user)),function(view,user,item){if(_servicelocator.appHost.supports("sync"))for(var canSync=_itemmanager.default.canSync(item,user),buttons=view.querySelectorAll(".btnSyncDownload"),i=0,length=buttons.length;i<length;i++)buttons[i].setItem(item),canSync?buttons[i].classList.remove("hide"):buttons[i].classList.add("hide")}(view,user,item),Promise.all(itemMainScrollSlider).then(function(){return enableTrackList(item)||function(elem){for(var btns=elem.querySelectorAll(".detailButton"),i=0,length=btns.length;i<length;i++){var btn=btns[i];if(_focusmanager.default.isCurrentlyFocusable(btn))return setScopedFocus(null,elem,!0)}setScopedFocus(null,elem,!1)}(mainDetailButtons),[item,user]})}function getItemWithMediaSource(instance,apiClient){return function(instance,apiClient){var options;return(instance=instance.params).seriesTimerId?apiClient.getLiveTvSeriesTimer(instance.seriesTimerId):instance.timerId?apiClient.getLiveTvTimer(instance.timerId):(options={},"true"===instance.asSeries?options.AsSeries=!0:options.Fields="ShareLevel",apiClient.getItem(apiClient.getCurrentUserId(),instance.id,options))}(instance,apiClient).then(function(item){var playbackMediaSourcesPromise=isRenderingTrackSelections(item)?_playbackmanager.default.getPlaybackMediaSources(item):Promise.resolve([]);return playbackMediaSourcesPromise.then(function(mediaSources){return{item:item,mediaSources:mediaSources}})})}function startDataLoad(instance){var params=instance.params,apiClient=_connectionmanager.default.getApiClient(params.serverId),params=Promise.all([getItemWithMediaSource(instance,apiClient),apiClient.getCurrentUser()]).then(onDataFetched.bind(instance),function(err){return console.log("error loading item: "+err),function(instance,apiClient){(instance=instance.view).querySelector(".details-additionalContent").classList.add("hide"),html="<div><p>Content no longer available.</p>";var apiClient=_approuter.default.getRouteUrl("home",{serverId:apiClient.serverId()}),html=(html+='<a href="'+apiClient+'" is="emby-linkbutton" class="raised btnHomeItemNotFound">')+_globalize.default.translate("Home")+"</a></div>";instance.querySelector(".detailMainContainer").innerHTML=html,_focusmanager.default.focus(instance.querySelector(".btnHomeItemNotFound"))}(instance,apiClient),Promise.reject(err)});instance.dataPromise=params}function playCurrentItem(instance,mode){var item;_multiselect.default.canPlay()?_multiselect.default.play():(item=instance.currentItem,(instance=function(view,startPositionTicks){var audioStreamIndex=view.querySelector(".selectAudio").value||null;return{startPositionTicks:startPositionTicks,mediaSourceId:view.querySelector(".selectSource").value,audioStreamIndex:audioStreamIndex,subtitleStreamIndex:view.querySelector(".selectSubtitles").value}}(instance.view,item.UserData&&"resume"===mode?null:0)).items=[item],_playbackmanager.default.play(instance))}function onPlayClick(e){playCurrentItem(this,e.currentTarget.getAttribute("data-mode"))}function onEdited(){reloadItem(this,!0)}function onEditCancel(){}function onEditMetadataClick(){var currentItem=this.currentItem,instance=this;require(["metadataEditor"]).then(function(responses){return(new responses[0]).show(currentItem.Id,currentItem.ServerId).then(onEdited.bind(instance),onEditCancel)})}function onEditImagesClick(){var currentItem=this.currentItem,instance=this;require(["imageEditor"],function(imageEditor){imageEditor.show({itemId:currentItem.Id,serverId:currentItem.ServerId}).then(onEdited.bind(instance),onEditCancel)})}function onDeleteClick(){var currentItem=this.currentItem;_itemmanager.default.deleteItems({items:[currentItem],navigate:"back"})}function onDownloadChange(){reloadItem(this,!0)}function splitVersions(instance,page,apiClient,params){var options;options="Are you sure you wish to split the media sources into separate items?",Emby.importModule("./modules/common/dialogs/confirm.js").then(function(confirm){return confirm(options)}).then(function(){_loading.default.show(),apiClient.ungroupVersions(params.id).then(function(){_loading.default.hide(),reloadItem(instance,!0)})})}function onReadMoreClick(e){var options,e=e.currentTarget.closest(".overview-container").querySelector(".overview-text");options={html:e.innerHTML,confirmButton:!1,title:_itemmanager.default.getDisplayName(this.currentItem)||this.currentItem.Name,centerText:!1,item:this.currentItem},Emby.importModule("./modules/common/dialogs/alert.js").then(function(alert){return alert(options)})}function onPromiseRejected(e){console.log("itemContextMenu close: "+e)}function getSortMenuOptions(item){var options=[];return options.push({name:"Playlist"===item.Type?_globalize.default.translate("PlaylistOrder"):"BoxSet"===item.Type?_globalize.default.translate("CollectionOrder"):_globalize.default.translate("Default"),value:"default",defaultSortOrder:"Ascending"}),options.push({name:_globalize.default.translate("Album"),value:"Album,ParentIndexNumber,IndexNumber",defaultSortOrder:"Ascending"}),"Playlist"===item.Type&&options.push({name:_globalize.default.translate("AlbumArtist"),value:"AlbumArtist,Album,ParentIndexNumber,IndexNumber,SortName",defaultSortOrder:"Ascending"}),options.push({name:_globalize.default.translate("Artist"),value:"Artist,Album,ParentIndexNumber,IndexNumber,SortName",defaultSortOrder:"Ascending"}),options.push({name:_globalize.default.translate("Runtime"),value:"Runtime,SortName",defaultSortOrder:"Ascending"}),options.push({name:_globalize.default.translate("Title"),value:"SortName",defaultSortOrder:"Ascending"}),options.push({name:_globalize.default.translate("Year"),value:"ProductionYear,SortName",defaultSortOrder:"Descending"}),options}function getSortMenuOption(sortMenuOptions,sortBy){for(var i=0,length=sortMenuOptions.length;i<length;i++){var option=sortMenuOptions[i];if(option.value===sortBy)return option}return null}function setSortLabelText(){var item=this.currentItem,sortItems=getSortMenuOptions(item),view=this.view,sortItems=getSortMenuOption(sortItems,_usersettings.default.itemSortBy(item.Id)||"default"),item=view.querySelector(".btnSortItems");item.setAttribute("title",_globalize.default.translate("SortByValue",sortItems.name)),item.setAttribute("aria-label",_globalize.default.translate("SortByValue",sortItems.name)),item.querySelector(".btnSortText").innerHTML=_globalize.default.translate("HeaderSortBy")}function sortItem(instance,item,options){var currentValues={sortBy:_usersettings.default.itemSortBy(item.Id),sortOrder:_usersettings.default.itemSortOrder(item.Id)},sortItems=getSortMenuOptions(item);return function(options,currentValues){for(var i=0,length=options.length;i<length;i++){var opt=options[i];if(opt.selected=opt.value===(currentValues.sortBy||"default"),opt.selected){var icon="Descending"===currentValues.sortOrder?"":"";opt.asideIcon=icon;break}}}(sortItems,currentValues),function(options){return Emby.importModule("./modules/actionsheet/actionsheet.js").then(function(ActionSheet){return ActionSheet.show(options)})}({items:sortItems,positionTo:options.positionTo,positionY:options.positionY,positionX:options.positionX,positionClientY:options.positionClientY,positionClientX:options.positionClientX,transformOrigin:options.transformOrigin,title:_globalize.default.translate("HeaderSortBy"),offsetTop:2,hasItemAsideIcon:!0,hasItemSelectionState:!0}).then(function(value){var sortOrder;sortOrder||(sortOrder=currentValues.sortOrder,sortOrder=currentValues.sortBy===value?"Ascending"===sortOrder?"Descending":"Ascending":function(sortMenuOptions,sortBy){if(sortBy){sortMenuOptions=getSortMenuOption(sortMenuOptions,sortBy);if(sortMenuOptions&&sortMenuOptions.value===sortBy&&sortMenuOptions.defaultSortOrder)return sortMenuOptions.defaultSortOrder}return"Descending"}(sortItems,value)),_usersettings.default.itemSortBy(item.Id,value),_usersettings.default.itemSortOrder(item.Id,sortOrder)})}function getMusicArtistChildrenListOptions(items){return{renderer:_cardbuilder.default,options:{shape:"auto",scalable:!0,centerText:!0,fields:["Name","ProductionYear"],overlayText:!1,focusTransformTitleAdjust:!0},virtualScrollLayout:"horizontal-grid"}}function getSeasons(query){var item=this.currentItem,apiClient=_connectionmanager.default.getApiClient(item),fields=this.getRequestedItemFields()+",PrimaryImageAspectRatio,Overview";return apiClient.getSeasons(item.Id,Object.assign({UserId:apiClient.getCurrentUserId(),Fields:fields},query))}function getPlaylistListOptionsFn(item){return function(items){var fields=[],items=(fields.push("ParentName"),fields.push("Name"),function(items){for(var i=0,length=items.length;i<length;i++)if(items[i].Overview)return!0;return!1}(items)),enableSideMediaInfo=!0,sortBy=(items&&(fields.push("Overview"),enableSideMediaInfo=!1),_usersettings.default.itemSortBy(item.Id)||"default"),sortOrder=(sortBy="default"===sortBy?"ListItemOrder":sortBy)?_usersettings.default.itemSortOrder(item.Id):null;return{renderer:_listview.default,options:{showIndexNumberLeft:"MusicAlbum"===item.Type,action:"playallfromhere",dragHandle:"Playlist"===item.Type&&!_layoutmanager.default.tv&&"ListItemOrder"===sortBy&&"Ascending"===sortOrder,playlistId:"Playlist"===item.Type?item.Id:null,image:"Playlist"===item.Type,artist:"auto",showIndex:"MusicAlbum"===item.Type,autoHideArtist:"MusicAlbum"===item.Type,index:"disc",containerAlbumArtists:"MusicAlbum"===item.Type?item.AlbumArtists:null,fields:fields,playAction:"playallfromhere",itemClass:"detailsListItem",enableSideMediaInfo:enableSideMediaInfo,imageSize:items?"medium":null,autoMoveParentName:!0},virtualScrollLayout:"vertical-list",commandOptions:{openAlbum:"MusicAlbum"!==item.Type}}}}function scrollEpisodesToSeason(instance,seasonId){var apiClient,seriesId,itemsContainer=instance.view.querySelector(".childrenItemsContainer");itemsContainer&&(instance=instance.currentItem,apiClient=_connectionmanager.default.getApiClient(instance),seriesId=instance.Id,apiClient.getEpisodes(seriesId,{SeasonId:seasonId,UserId:apiClient.getCurrentUserId(),EnableImages:!1,EnableUserData:!1,Limit:1,TotalRecordCount:!1}).then(function(result){var startItem=result.Items[0];startItem&&(-1!==(result=itemsContainer.indexOfItemId(startItem.Id))?itemsContainer.scrollToIndex(result,{offset:"-padding-inline-start"},!1):apiClient.getEpisodes(seriesId,{UserId:apiClient.getCurrentUserId(),EnableTotalRecordCount:!1,EnableImages:!1,EnableUserData:!1}).then(function(totalResult){for(var i=0,length=totalResult.Items.length;i<length;i++)if(totalResult.Items[i].Id===startItem.Id){itemsContainer.scrollToIndex(i,{offset:"-padding-inline-start"},!1);break}}))}))}function onSeriesEpisodeFocusedOrScrolled(instance,item){var detailSelectSeason,item=function(instance,item){if(instance=instance.seasonItems||[],item.SeasonId&&0!==item.ParentIndexNumber){var season=instance.filter(function(s){return s.Id===item.SeasonId})[0];if(season)return season}var seasonNumber=null==item.SortParentIndexNumber?item.ParentIndexNumber:item.SortParentIndexNumber;if(null!=seasonNumber){season=instance.filter(function(s){return s.IndexNumber===seasonNumber})[0];if(season)return season}if(item.SeasonId){season=instance.filter(function(s){return s.Id===item.SeasonId})[0];if(season)return season}return null}(instance,item);item&&((detailSelectSeason=instance.detailSelectSeason)&&detailSelectSeason.setValues([item.Id],!1,[item]),detailSelectSeason=instance.seasonTabs)&&(instance=detailSelectSeason.querySelector('.detailSeasonTab[data-id="'+item.Id+'"]'))&&detailSelectSeason.selectedIndex(parseInt(instance.getAttribute("data-index")),!1)}function getAppearsOnListsListOptions(items){return{renderer:_cardbuilder.default,options:{shape:"autooverflow",centerText:!0,fields:["Name"],overlayText:!1,focusTransformTitleAdjust:!0},virtualScrollLayout:"horizontal-grid"}}function getArtistSongsListOptions(items){return{renderer:_cardbuilder.default,options:{shape:"auto",lines:2,centerText:!1,fields:["Name","Album"],overlayPlayButton:!0,overlayText:!1,sideFooter:!0,action:"play"},virtualScrollLayout:"horizontal-grid",commandOptions:{openArtist:!1}}}function getPeopleListOptions(items){return{renderer:_cardbuilder.default,options:{cardLayout:!1,centerText:!0,fields:["Name","PersonRole"],cardFooterAside:!1,showPersonRoleOrType:!0,multiSelect:!1,coverImage:!0,shape:"portrait",draggable:!1,focusTransformTitleAdjust:!0},virtualScrollLayout:"horizontal-grid"}}function getMoreLikeThisOnLiveTVListOptions(items){return{renderer:_cardbuilder.default,options:{shape:"auto",fields:["ParentName","Name","ProductionYear"],centerText:!0,showDetailsMenu:!0,overlayPlayButton:!0,overlayText:!1,lines:2,draggable:!1,multiSelect:!1,focusTransformTitleAdjust:!0},virtualScrollLayout:"horizontal-grid"}}function getNextUpItems(query){var item=this.currentItem,apiClient=_connectionmanager.default.getApiClient(item);return"MusicAlbum"===item.Type?apiClient.getNextUpAudioBookItems(Object.assign({AlbumId:item.Id,Fields:this.getRequestedItemFields()+",PrimaryImageAspectRatio",ImageTypeLimit:1,UserId:apiClient.getCurrentUserId()},query)):apiClient.getNextUpEpisodes(Object.assign({SeriesId:item.Id,Fields:this.getRequestedItemFields()+",PrimaryImageAspectRatio",ImageTypeLimit:1,UserId:apiClient.getCurrentUserId()},query))}function getAdditionalPartsListOptions(items){return{renderer:_cardbuilder.default,options:{shape:"autooverflow",scalable:!0,fields:["Name","Runtime"],action:"playallfromhere",centerText:!0,overlayText:!1,draggable:!1,focusTransformTitleAdjust:!0},virtualScrollLayout:"horizontal-grid"}}function getExtrasListOptions(items){return{renderer:_cardbuilder.default,options:{shape:"autooverflow",scalable:!0,fields:["Name","Runtime"],centerText:!0,overlayText:!1,draggable:!1,focusTransformTitleAdjust:!0},virtualScrollLayout:"horizontal-grid"}}function getProgramGuideListOptions(items){return{renderer:_listview.default,options:{imageSize:"large",enableUserDataButtons:!1,mediaInfo:!0,mediaInfoWithTitle:!0,draggable:!1,multiSelect:!1,defaultShape:"portrait",itemClass:"detailsListItem",fields:["ParentName","Name","StartToEndDateTime","Overview"],highlight:!1},virtualScrollLayout:"vertical-grid"}}function getSeriesTimerListOptions(items){return{renderer:_listview.default,options:{enableUserDataButtons:!1,image:!0,mediaInfo:!1,imageSize:"large",moreButton:!1,recordButton:!1,draggable:!1,multiSelect:!1,itemClass:"detailsListItem",fields:["ParentName","Name","StartToEndDateTime","ChannelName","Overview"],highlight:!1},virtualScrollLayout:"vertical-grid"}}function enableTvDetailImageLayout(item){if(_layoutmanager.default.tv){switch(item.Type){case"Series":case"Season":case"Audio":case"Program":return!0;case"BoxSet":case"TvChannel":case"Playlist":case"MusicAlbum":case"MusicArtist":return!1}switch(item.MediaType){case"Video":case"Photo":case"Game":case"Book":return!0}}return!1}function afterDetailImageRefreshed(){var detailImageElement=this.querySelector(".detailImage");detailImageElement&&(this.querySelector(".cardImageIcon")?detailImageElement.classList.remove("detailImage-transparent"):detailImageElement.classList.add("detailImage-transparent"))}function getChaptersListOptions(items){return{renderer:_cardbuilder.default,options:{shape:"autooverflow",centerText:!0,overlayText:!1,fields:["Name","ChapterTime"],multiSelect:!1,contextMenu:!1,playedButton:!1,ratingButton:!1,action:"play",enableUserData:!1,draggable:!1,background:"black",focusTransformTitleAdjust:!0},virtualScrollLayout:"horizontal-grid"}}function getMoreFromSeasonListOptions(items){return{renderer:_cardbuilder.default,options:{shape:"auto",scalable:!0,fields:["Name"],overlayText:!1,centerText:!0,includeParentInfoInTitle:!1,focusTransformTitleAdjust:!0},virtualScrollLayout:"horizontal-grid"}}function getMoreFromArtistListOptions(items){return{renderer:_cardbuilder.default,options:{shape:"auto",scalable:!0,fields:["Name","ProductionYear"],centerText:!0,overlayText:!1,overlayPlayButton:!0,focusTransformTitleAdjust:!0},virtualScrollLayout:"horizontal-grid"}}function onPromiseFailure(){}function reloadItem(instance,reloadAllData,restartDataLoad){!reloadAllData||instance.dataPromise&&!1===restartDataLoad||startDataLoad(instance),instance.dataPromise.then(function(responses){var trackList,item=responses[0],responses=responses[1],apiClient=_connectionmanager.default.getApiClient(item.ServerId),view=instance.view;!function(view,refreshData){for(var containers=view.querySelectorAll(".generalItemsContainer"),i=0,length=containers.length;i<length;i++)containers[i].resume({refresh:refreshData})}(view,reloadAllData),"Season"===item.Type&&(trackList=view.querySelector(".trackList"))&&trackList.resume({refresh:reloadAllData}).then(function(){!function(element){var items=element.getItems(),focusItem=items.filter(function(i){return!i.UserData||!i.UserData.Played})[0];if(focusItem=focusItem||items[0]){items=element.indexOfItemId(focusItem.Id);if(-1!==items)return element.scrollToIndex(items,{},!0),1}}(trackList)&&_focusmanager.default.autoFocus(view,{skipIfNotEnabled:!0})}),reloadAllData&&(renderPeopleItems(view,item,apiClient),function(view,item,user,apiClient){"SeriesTimer"===item.Type&&(user.Policy.EnableLiveTvManagement?(require(["seriesRecordingEditor"],function(seriesRecordingEditor){seriesRecordingEditor.embed(item,apiClient.serverId(),{context:view.querySelector(".recordingEditor")})}),view.querySelector(".seriesTimerScheduleSection").classList.remove("hide"),view.querySelector(".btnCancelSeriesTimer").classList.remove("hide")):(view.querySelector(".seriesTimerScheduleSection").classList.add("hide"),view.querySelector(".btnCancelSeriesTimer").classList.add("hide")))}(view,item,responses,apiClient),function(instance,view,item,user,apiClient){("Timer"===item.Type||"Recording"===item.Type&&item.TimerId&&"InProgress"===item.Status)&&user.Policy.EnableLiveTvManagement?(hideAll(view,"btnCancelTimer",!0),require(["recordingEditor"],function(RecordingEditor){RecordingEditor=new RecordingEditor;(instance.recordingEditor=RecordingEditor).embed(item,apiClient.serverId(),{context:view.querySelector(".recordingEditor")})})):hideAll(view,"btnCancelTimer")}(instance,view,item,responses,apiClient),function(page,item){var page=page.querySelector(".linksSection"),links=[];if(item.ExternalUrls&&_servicelocator.appHost.supports("externallinks")&&!_layoutmanager.default.tv)for(var i=0,length=item.ExternalUrls.length;i<length;i++){var url=item.ExternalUrls[i];links.push('<a is="emby-linkbutton" class="raised item-tag-button nobackdropfilter" href="'+url.Url+'" target="_blank"><i class="md-icon button-icon button-icon-left">link</i>'+_textencoding.default.htmlEncode(url.Name)+"</a>")}page.querySelector(".itemLinks").innerHTML=links.join(""),links.length?page.classList.remove("hide"):page.classList.add("hide")}(view,item),view.querySelector(".audioVideoMediaInfo").classList.remove("mediainfo-forcehide"),view.querySelector(".details-additionalContent").classList.remove("hide"),focusMainSection.call(instance.mainSection)),function(instance,eventName,item){instance.itemShowDispatched||(instance.itemShowDispatched=!0,instance.view.dispatchEvent(new CustomEvent(eventName,{detail:{item:item},bubbles:!0,cancelable:!1})))}(instance,"itemshow",item),_loading.default.hide()},onPromiseFailure)}function addClass(elems,className){for(var i=0,length=elems.length;i<length;i++)elems[i].classList.add(className)}function setScopedFocus(view,query,enabled,type){view="string"==typeof query?view.querySelector(query):query;enabled?(view.classList.add("focusable"),view.setAttribute("data-focusabletype",type||"autofocus")):(view.classList.remove("focusable"),view.removeAttribute("data-focusabletype"))}function updateTrackSelectionsFocusState(instance,view){var instance=instance.trackSelectionsContainer,isEnabled=instance.querySelector("select:enabled:not(.noSelections)");setScopedFocus(view,instance,isEnabled,"nearest")}var drawerElement=document.querySelector(".mainDrawer");function onNavDrawerStateChange(e,drawerState){2<=drawerState&&_backdrop.default.hasBackdrop()?drawerElement.classList.add("darkContentContainer"):drawerElement.classList.remove("darkContentContainer")}function ItemPage(view,params){_baseview.default.apply(this,arguments),this.params=params,this.playerChangeFn=function(){var view=this.view,item=this.currentItem;view&&item&&renderTrackSelectionsWithoutUser(view,this,item)}.bind(this),this.playbackStopFn=function(e,stopInfo){var state=stopInfo.state||{};state.NextMediaType||state.IsBackgroundPlayback||null!=(stopInfo=stopInfo.player)&&stopInfo.isLocalPlayer&&!_usersettings.default.enableVideoUnderUI()&&(stopInfo=state.NowPlayingItem||{},(this.currentItem||{}).MediaType===stopInfo.MediaType)&&stopInfo.MediaType&&"Episode"===stopInfo.Type&&(this.showItemOnResume=stopInfo)}.bind(this),this.onNavDrawerStateChangeFn=onNavDrawerStateChange.bind(this),this.topDetailsContainer=view.querySelector(".topDetailsContainer"),this.mainSection=view.querySelector(".detailMainContainer"),this.trackSelectionsContainer=view.querySelector(".trackSelections"),_layoutmanager.default.tv?addClass(view.querySelectorAll(".reduce-font-size-tv"),"reduce-font-size"):(addClass(view.querySelectorAll(".detailTextContainer"),"details-largefont"),addClass(view.querySelectorAll(".reduce-font-size-tv"),"reduce-font-size-mobile")),function(view,query,enabled,type){for(var elems=view.querySelectorAll(query),i=0,length=elems.length;i<length;i++)setScopedFocus(view,elems[i],enabled,type)}(view,".focusable",!0,"nearest"),this.trackSelectionsContainer.addEventListener("submit",onTrackSelectionsSubmit),bindAll(view,".btnPlay","click",onPlayClick.bind(this)),bindAll(view,".btnResume","click",onPlayClick.bind(this)),bindAll(view,".btnShuffle","click",function(){var currentItem=this.currentItem;_playbackmanager.default.shuffle(currentItem)}.bind(this)),bindAll(view,".btnPlayTrailer","click",function(){var currentItem=this.currentItem;_playbackmanager.default.playTrailers(currentItem)}.bind(this)),bindAll(view,".btnCancelSeriesTimer","click",function(){onDeleteClick.call(this)}.bind(this)),bindAll(view,".btnCancelTimer","click",function(){var instance=this,item=this.currentItem,type=item.Type,serverId=item.ServerId,timerId="Timer"===type?item.Id:item.TimerId;require(["recordingHelper"],function(recordingHelper){recordingHelper.cancelTimer(_connectionmanager.default.getApiClient(serverId),timerId).then(function(){reloadItem(instance,!0)})})}.bind(this)),bindAll(view,".btnDeleteItem","click",onDeleteClick.bind(this)),bindAll(view,".btnSyncDownload","download",onDownloadChange.bind(this)),bindAll(view,".btnSyncDownload","download-cancel",onDownloadChange.bind(this)),bindAll(view,".btnMoreCommands","click",function(e){var button=e.currentTarget,instance=this,e=this.params,e=_connectionmanager.default.getApiClient(e.serverId),currentItem=this.currentItem,view=this.view;e.getCurrentUser().then(function(user){_itemcontextmenu.default.show(getCommandOptions(view,currentItem,user,button)).then(function(result){"addtoplaylist"!==result.command&&"addtocollection"!==result.command||reloadItem(instance,!0)},onPromiseRejected)})}.bind(this)),bindAll(view,".btnSortItems","click",function(e){var e=e.currentTarget,instance=this;sortItem(0,instance.currentItem,{positionTo:e,positionY:"bottom"}).then(function(){reloadItem(instance,!0)})}.bind(this)),bindAll(view,".btnManageSeriesRecording","click",function(e){var item=this.currentItem;item.SeriesTimerId&&_approuter.default.showItem({Type:"SeriesTimer",Id:item.SeriesTimerId,ServerId:item.ServerId})}.bind(this)),bindAll(view,".btnManageRecording","click",function(e){var item=this.currentItem;item.TimerId&&_approuter.default.showItem({Type:"Timer",Id:item.TimerId,ServerId:item.ServerId})}.bind(this)),this.mainSection.addEventListener("focus",function(e){_layoutmanager.default.tv&&!e.target.closest(".btnReadMore,.recordingEditor,.btnOverviewText")&&this.view.scrollToBeginning()}.bind(this),!0),bindAll(view,".btnSplitVersions","click",function(){var params=this.params,apiClient=_connectionmanager.default.getApiClient(params.serverId);splitVersions(this,this.view,apiClient,params)}.bind(this)),bindAll(view,".btnReadMore","click",onReadMoreClick.bind(this)),bindAll(view,".btnOverviewText","click",onReadMoreClick.bind(this));var instance=this,onLibraryChangedFn=(view.querySelector(".selectSource").addEventListener("change",function(){renderMediaInfo(0,view,instance.currentItem,instance._currentPlaybackMediaSources,_connectionmanager.default.getApiClient(instance.currentItem)),renderVideoSelections(view,instance._currentPlaybackMediaSources),renderAudioSelections(view,instance._currentPlaybackMediaSources),renderSubtitleSelections(view,instance._currentPlaybackMediaSources),updateTrackSelectionsFocusState(instance,view)}),view.querySelector(".btnManualRecording").addEventListener("click",function(e){executeCommandWithCommandProcessor("record",this.currentItem,{positionTo:e.target})}.bind(this)),view.addEventListener("viewbeforehide",function(e){(e=e.detail)&&e.newView&&e.newView.classList.contains("itemView")||(backgroundContainer.classList.remove("itemBackgroundContainer","itemBackgroundContainer-brighter","itemBackgroundContainer-preventbackdrop"),backdropContainer.classList.remove("backdropContainer-preventbackdrop"),skinHeader.classList.remove("detailHeader-noIcons"))}.bind(this)),this.onUserDataChangedFn=function(e,apiClient,userData){var currentItem=this.currentItem,view=this.view;currentItem&¤tItem.Id===userData.ItemId&&(currentItem.UserData=userData,this.paused||reloadPlayButtons(this,view,currentItem,!0))}.bind(this),this.onLibraryChangedFn=function(e,apiClient,data){var currentItem=this.currentItem;currentItem&&null!=(data=data.ItemsUpdated)&&data.includes(currentItem.Id)&&(this.paused?this._fullReloadOnResume=!0:reloadItem(this,!0))}.bind(this),this.onTimerCancelledFn=function(e,apiClient,data){var currentItem=this.currentItem;currentItem&¤tItem.Id===data.Id&&!this.paused&&_approuter.default.back()}.bind(this),_events.default.on(_navdrawer.default,"drawer-state-change",this.onNavDrawerStateChangeFn),this.onLibraryChangedFn),onLibraryChangedFn=(onLibraryChangedFn&&_events.default.on(_api.default,"LibraryChanged",onLibraryChangedFn),this.onUserDataChangedFn),onLibraryChangedFn=(onLibraryChangedFn&&_events.default.on(_api.default,"UserDataChanged",onLibraryChangedFn),this.onTimerCancelledFn);onLibraryChangedFn&&_events.default.on(_api.default,"TimerCancelled",onLibraryChangedFn)}Object.assign(ItemPage.prototype,_baseview.default.prototype),ItemPage.prototype.onInputCommand=function(e){var command=e.detail.command;switch(command){case"play":return playCurrentItem(this,"resume"),e.preventDefault(),void e.stopPropagation();case"delete":return onDeleteClick.call(this),e.preventDefault(),void e.stopPropagation();case"record":return executeCommandWithCommandProcessor(command,this.currentItem,{positionTo:e.target}),e.preventDefault(),void e.stopPropagation()}_baseview.default.prototype.onInputCommand.apply(this,arguments)},ItemPage.prototype.onBeginResume=function(options){_baseview.default.prototype.onBeginResume.apply(this,arguments),_layoutmanager.default.tv?skinHeader.classList.add("detailHeader-noIcons"):skinHeader.classList.remove("detailHeader-noIcons"),startDataLoad(this)},ItemPage.prototype.onResume=function(options){this.showItemOnResume&&(newItem=this.showItemOnResume,_approuter.default.replaceState(_approuter.default.getRouteUrl(newItem,{}),{},!0),this.showItemOnResume=null),_baseview.default.prototype.onResume.apply(this,arguments),this.itemShowDispatched=null;var newItem=this.view,onPlayerChangeFn=this.playerChangeFn,onPlayerChangeFn=(onPlayerChangeFn&&_events.default.on(_playbackmanager.default,"playerchange",onPlayerChangeFn),this.playbackStopFn),onPlayerChangeFn=(onPlayerChangeFn&&_events.default.on(_playbackmanager.default,"playbackstop",onPlayerChangeFn),options.refresh||this._fullReloadOnResume);this._fullReloadOnResume=!1,reloadItem(this,onPlayerChangeFn,!1),onPlayerChangeFn||(renderTrackSelectionsWithoutUser(newItem,this,onPlayerChangeFn=this.currentItem,!0),setTrailerButtonVisibility(newItem,onPlayerChangeFn)),this._fullReloadOnResume=!1,this.updateDrawerState()},ItemPage.prototype.updateDrawerState=function(){onNavDrawerStateChange.call(this,{},_navdrawer.default.drawerState)},ItemPage.prototype.onPause=function(options){_baseview.default.prototype.onPause.apply(this,arguments);for(var onPlayerChangeFn=this.playerChangeFn,onPlayerChangeFn=(onPlayerChangeFn&&_events.default.off(_playbackmanager.default,"playerchange",onPlayerChangeFn),this.playbackStopFn),onPlayerChangeFn=(onPlayerChangeFn&&_events.default.off(_playbackmanager.default,"playbackstopped",onPlayerChangeFn),this.onNavDrawerStateChangeFn&&_events.default.off(_navdrawer.default,"drawer-state-change",this.onNavDrawerStateChangeFn),this.view),containers=onPlayerChangeFn.querySelectorAll(".generalItemsContainer"),i=0,length=containers.length;i<length;i++)containers[i].pause();null!=(onPlayerChangeFn=options.event)&&null!=(onPlayerChangeFn=onPlayerChangeFn.detail)&&onPlayerChangeFn.newView.classList.contains("itemView")||drawerElement.classList.remove("darkContentContainer"),this.recordingEditor&&this.recordingEditor.pause()},ItemPage.prototype.enableTransitions=function(){return!0},ItemPage.prototype.destroy=function(){var onLibraryChangedFn=this.onLibraryChangedFn,onLibraryChangedFn=(onLibraryChangedFn&&_events.default.off(_api.default,"LibraryChanged",onLibraryChangedFn),this.onLibraryChangedFn=null,this.onUserDataChangedFn),onLibraryChangedFn=(onLibraryChangedFn&&_events.default.off(_api.default,"UserDataChanged",onLibraryChangedFn),this.onUserDataChangedFn=null,this.onTimerCancelledFn);onLibraryChangedFn&&_events.default.off(_api.default,"TimerCancelled",onLibraryChangedFn),this.onTimerCancelledFn=null,_baseview.default.prototype.destroy.apply(this,arguments),this.onNavDrawerStateChangeFn=null,this.playerChangeFn=null,this.playbackStopFn=null,this.currentItem=null,this._currentPlaybackMediaSources=null,this.currentRecordingFields&&(this.currentRecordingFields.destroy(),this.currentRecordingFields=null),this.recordingEditor&&(this.recordingEditor.destroy(),this.recordingEditor=null),this.topDetailsContainer=null,this.mainSection=null,this.trackSelectionsContainer=null,this.detailSelectSeason=null,this.seasonTabs=null,this.seasonItems=null,this.params=null,this.dataPromise=null},_exports.default=ItemPage}); |