define(["exports","./../modules/cardbuilder/cardbuilder.js","./../modules/emby-elements/emby-itemscontainer/emby-itemscontainer.js","./../modules/common/globalize.js","./../modules/approuter.js","./../modules/tabbedview/basetab.js","./../modules/emby-apiclient/connectionmanager.js"],function(_exports,_cardbuilder,_embyItemscontainer,_globalize,_approuter,_basetab,_connectionmanager){function getListOptions(items,overlayButton,cardOptions){return cardOptions=cardOptions||{},(cardOptions=Object.assign({preferThumb:"auto",inheritThumb:!1,shape:"auto",defaultShape:"backdrop",overlayPlayButton:"play"===overlayButton,showAirDateTime:!0,rows:{portrait:2,square:3,backdrop:3,fourThree:3},multiSelect:!1},cardOptions)).fields=[],{renderer:_cardbuilder.default,options:cardOptions,virtualScrollLayout:"vertical-grid"}}function LiveTVTab(view,params){_basetab.default.apply(this,arguments),this.apiClient=_connectionmanager.default.currentApiClient()}Object.defineProperty(_exports,"__esModule",{value:!0}),_exports.default=void 0,Object.assign(LiveTVTab.prototype,_basetab.default.prototype),LiveTVTab.prototype.onTemplateLoaded=function(){_basetab.default.prototype.onTemplateLoaded.apply(this,arguments);var view=this.view;this.latestItemsContainer=view.querySelector(".latestSection .itemsContainer"),this.latestItemsContainer.fetchData=function(){var apiClient=this.apiClient;return apiClient.getLiveTvRecordings({Limit:6,UserId:apiClient.getCurrentUserId(),ImageTypeLimit:1,Fields:this.getRequestedItemFields()+",PrimaryImageAspectRatio",EnableImageTypes:this.getRequestedImageTypes()})}.bind(this),this.latestItemsContainer.getListOptions=function(){return{renderer:_cardbuilder.default,options:{shape:"auto",preferThumb:"auto",fields:["ParentNameOrName"],rows:{portrait:2,square:3,backdrop:3,fourThree:3},overlayText:!0,multiSelect:!1},virtualScrollLayout:"vertical-grid"}}.bind(this),this.latestItemsContainer.parentContainer=this.latestItemsContainer.closest(".horizontalSection"),this.addFocusBehavior(this.latestItemsContainer),this.onNowItemsContainer=view.querySelector(".activePrograms .itemsContainer"),this.onNowItemsContainer.fetchData=function(){var apiClient=this.apiClient;return apiClient.getLiveTvRecommendedPrograms({UserId:apiClient.getCurrentUserId(),IsAiring:!0,Limit:12,ImageTypeLimit:1,EnableImageTypes:this.getRequestedImageTypes(),EnableTotalRecordCount:!1,Fields:this.getRequestedItemFields()+",ChannelInfo,PrimaryImageAspectRatio"})}.bind(this),this.onNowItemsContainer.getListOptions=function(items){return getListOptions(0,"play")}.bind(this),this.onNowItemsContainer.parentContainer=this.onNowItemsContainer.closest(".horizontalSection"),this.addFocusBehavior(this.onNowItemsContainer),this.episodeItemsContainer=view.querySelector(".upcomingEpisodes .itemsContainer"),this.episodeItemsContainer.fetchData=function(){var apiClient=this.apiClient;return apiClient.getLiveTvRecommendedPrograms({UserId:apiClient.getCurrentUserId(),HasAired:!1,IsAiring:!1,Limit:12,IsMovie:!1,IsSports:!1,IsKids:!1,IsNews:!1,IsSeries:!0,EnableTotalRecordCount:!1,Fields:this.getRequestedItemFields()+",ChannelInfo,PrimaryImageAspectRatio",EnableImageTypes:this.getRequestedImageTypes()})}.bind(this),this.episodeItemsContainer.getListOptions=function(items){return getListOptions()}.bind(this),this.episodeItemsContainer.parentContainer=this.episodeItemsContainer.closest(".horizontalSection"),this.addFocusBehavior(this.episodeItemsContainer),this.movieItemsContainer=view.querySelector(".upcomingTvMovies .itemsContainer"),this.movieItemsContainer.fetchData=function(){var apiClient=this.apiClient;return apiClient.getLiveTvRecommendedPrograms({userId:apiClient.getCurrentUserId(),HasAired:!1,IsAiring:!1,Limit:12,IsMovie:!0,EnableTotalRecordCount:!1,Fields:this.getRequestedItemFields()+",ChannelInfo,PrimaryImageAspectRatio",EnableImageTypes:this.getRequestedImageTypes()})}.bind(this),this.movieItemsContainer.getListOptions=function(items){return getListOptions(0,null,{shape:"portrait",preferThumb:null})}.bind(this),this.movieItemsContainer.parentContainer=this.movieItemsContainer.closest(".horizontalSection"),this.addFocusBehavior(this.movieItemsContainer),this.sportsItemsContainer=view.querySelector(".upcomingSports .itemsContainer"),this.sportsItemsContainer.fetchData=function(){var apiClient=this.apiClient;return apiClient.getLiveTvRecommendedPrograms({userId:apiClient.getCurrentUserId(),HasAired:!1,IsAiring:!1,Limit:12,IsSports:!0,EnableTotalRecordCount:!1,Fields:this.getRequestedItemFields()+",ChannelInfo,PrimaryImageAspectRatio",EnableImageTypes:this.getRequestedImageTypes()})}.bind(this),this.sportsItemsContainer.getListOptions=function(items){return getListOptions(0,null,{})}.bind(this),this.sportsItemsContainer.parentContainer=this.sportsItemsContainer.closest(".horizontalSection"),this.addFocusBehavior(this.sportsItemsContainer),this.kidsItemsContainer=view.querySelector(".upcomingKids .itemsContainer"),this.kidsItemsContainer.fetchData=function(){var apiClient=this.apiClient;return apiClient.getLiveTvRecommendedPrograms({userId:apiClient.getCurrentUserId(),HasAired:!1,IsAiring:!1,Limit:12,IsKids:!0,EnableTotalRecordCount:!1,Fields:this.getRequestedItemFields()+",ChannelInfo,PrimaryImageAspectRatio",EnableImageTypes:this.getRequestedImageTypes()})}.bind(this),this.kidsItemsContainer.getListOptions=function(items){return getListOptions(0,null,{})}.bind(this),this.kidsItemsContainer.parentContainer=this.kidsItemsContainer.closest(".horizontalSection"),this.addFocusBehavior(this.kidsItemsContainer),this.newsItemsContainer=view.querySelector(".upcomingNews .itemsContainer"),this.newsItemsContainer.fetchData=function(){var apiClient=this.apiClient;return apiClient.getLiveTvRecommendedPrograms({userId:apiClient.getCurrentUserId(),HasAired:!1,IsAiring:!1,Limit:12,IsNews:!0,EnableTotalRecordCount:!1,Fields:this.getRequestedItemFields()+",ChannelInfo,PrimaryImageAspectRatio",EnableImageTypes:this.getRequestedImageTypes()})}.bind(this),this.newsItemsContainer.getListOptions=function(items){return getListOptions(0,null,{})}.bind(this),this.newsItemsContainer.parentContainer=this.newsItemsContainer.closest(".horizontalSection"),this.addFocusBehavior(this.newsItemsContainer),this.categoryItemsContainer=view.querySelector(".categoryItemsContainer"),this.categoryItemsContainer.fetchData=function(){var apiClient=this.apiClient,items=[];return items.push({Name:_globalize.default.translate("Channels"),Id:"livetv_channels",ServerId:apiClient.serverId(),Icon:"",IsCategory:!0}),items.push({Name:_globalize.default.translate("Guide"),Id:"livetv_guide",ServerId:apiClient.serverId(),Icon:"dvr",IsCategory:!0}),items.push({Name:_globalize.default.translate("Recordings"),Id:"livetv_recordings",ServerId:apiClient.serverId(),Icon:"",IsCategory:!0}),Promise.resolve({Items:items,TotalRecordCount:items.length})}.bind(this),this.categoryItemsContainer.getListOptions=function(){return{renderer:_cardbuilder.default,options:{shape:"square",multiSelect:!1,contextMenu:!1,overlayText:!0,fields:["Name"],action:"custom"},virtualScrollLayout:"vertical-grid"}}.bind(this),this.categoryItemsContainer.addEventListener("action-null",function(e){var tab=(e=e.detail.item).Id.split("_")[1];_approuter.default.show("/livetv?tab="+tab+"&serverId="+e.ServerId)}.bind(this)),this.addFocusBehavior(this.categoryItemsContainer)},LiveTVTab.prototype.onResume=function(options){_basetab.default.prototype.onResume.apply(this,arguments);var instance=this,promises=[];promises.push(this.categoryItemsContainer.resume(options).then(function(){return options.autoFocus&&instance.autoFocus(),Promise.resolve()})),promises.push(this.latestItemsContainer.resume(options)),promises.push(this.onNowItemsContainer.resume(options)),promises.push(this.episodeItemsContainer.resume(options)),promises.push(this.movieItemsContainer.resume(options)),promises.push(this.sportsItemsContainer.resume(options)),promises.push(this.kidsItemsContainer.resume(options)),promises.push(this.newsItemsContainer.resume(options)),Promise.all(promises)},LiveTVTab.prototype.onPause=function(){_basetab.default.prototype.onPause.apply(this,arguments),this.categoryItemsContainer.pause(),this.latestItemsContainer.pause(),this.onNowItemsContainer.pause(),this.episodeItemsContainer.pause(),this.movieItemsContainer.pause(),this.sportsItemsContainer.pause(),this.kidsItemsContainer.pause(),this.newsItemsContainer.pause()},LiveTVTab.prototype.destroy=function(){_basetab.default.prototype.destroy.apply(this,arguments),this.apiClient=null,this.categoryItemsContainer=null,this.latestItemsContainer=null,this.onNowItemsContainer=null,this.episodeItemsContainer=null,this.movieItemsContainer=null,this.sportsItemsContainer=null,this.kidsItemsContainer=null,this.newsItemsContainer=null},LiveTVTab.prototype.onItemFocused=function(item){_basetab.default.prototype.onItemFocused.apply(this,arguments),this.onItemFocusedExternal(item)},LiveTVTab.prototype.onFocusOut=function(item){_basetab.default.prototype.onFocusOut.apply(this,arguments),this.onFocusOutExternal(item)},LiveTVTab.prototype.loadTemplate=function(){return require(["text!home_horiz/views.livetv.html"])},LiveTVTab.prototype.hasSelectedItemDisplay=function(){return!0},_exports.default=LiveTVTab});