define(["exports","./../layoutmanager.js","./../common/globalize.js","./../common/datetime.js","./../common/textencoding.js","./../common/dataformatter.js","./../mediainfo/mediainfo.js","./../focusmanager.js","./../common/itemmanager/itemmanager.js","./../imageloader/imageloader.js","./../shortcuts.js","./../common/playback/playbackmanager.js","./../emby-elements/userdatabuttons/emby-ratingbutton.js","./../emby-elements/userdatabuttons/emby-playstatebutton.js","./../emby-elements/emby-button/emby-button.js"],function(_exports,_layoutmanager,_globalize,_datetime,_textencoding,_dataformatter,_mediainfo,_focusmanager,_itemmanager,_imageloader,_shortcuts,_playbackmanager,_embyRatingbutton,_embyPlaystatebutton,_embyButton){function getTextActionButton(options,item,text,serverId,parentId,isSameItemAsCard){return text=text||_itemmanager.default.getDisplayName(item,{includeIndexNumber:!1}),!_layoutmanager.default.tv&&!1!==options.textLinks&&(item.Id||isSameItemAsCard)?'":_textencoding.default.htmlEncode(text)}function getTextLinks(items,linkedType,item,options){return items.map(function(i){return i.Type=linkedType,i.IsFolder=!0,getTextActionButton(options,i,null,item.ServerId)}).join(",")}function getColumnInnerHtml(item,itemController,column,options){var _item$UserData;switch(column.id){case"Name":return getTextActionButton(options,item,null,null,null,!0);case"Number":return item.Number||item.IndexNumber;case"ProductionYear":return item.ProductionYear;case"Filename":return item.FileName||item.Filename;case"Path":return item.Path;case"SortName":return item.SortName;case"OriginalTitle":return item.OriginalTitle;case"Runtime":return item.RunTimeTicks?_datetime.default.getHumanReadableRuntime(item.RunTimeTicks):null;case"PremiereDate":return item.PremiereDate?_datetime.default.toLocaleDateString(new Date(Date.parse(item.PremiereDate))):null;case"StartDate":return item.StartDate?_datetime.default.toLocaleString(new Date(Date.parse(item.StartDate))):null;case"DatePlayed":return null!=(_item$UserData=item.UserData)&&_item$UserData.LastPlayedDate?_datetime.default.toLocaleDateString(new Date(Date.parse(null==(_item$UserData=item.UserData)?void 0:_item$UserData.LastPlayedDate))):null;case"CommunityRating":return item.CommunityRating?_mediainfo.default.getCommunityRating(item,{outerClass:"dataGridMediaInfoItem"}):null;case"OfficialRating":return item.OfficialRating;case"EpisodeNumber":return function(item){var season,number=item.IndexNumber;return null==number?null:(null!=item.ParentIndexNumber&&(season="S"+item.ParentIndexNumber,number=(season=item.SeasonId?getTextActionButton({},{Id:item.SeasonId,Type:"Season",ServerId:item.ServerId,Name:season,IsFolder:!0}):season)+":E"+number),null!=item.IndexNumberEnd&&(number+="-"+item.IndexNumberEnd),number)}(item);case"SeriesName":return item.SeriesId&&"Episode"===item.Type?getTextActionButton(options,{Id:item.SeriesId,Type:"Series",ServerId:item.ServerId,Name:item.SeriesName,IsFolder:!0}):item.SeriesName;case"Album":return item.AlbumId?getTextActionButton(options,{Id:item.AlbumId,Type:"MusicAlbum",ServerId:item.ServerId,Name:item.Album,IsFolder:!0}):item.Album;case"IndexNumber":return item.IndexNumber;case"Genres":return getTextLinks(item.GenreItems||[],"Genre",item,options);case"Studios":return getTextLinks(item.Studios||[],"Studio",item,options);case"Tags":return getTextLinks(item.TagItems||[],"Tag",item,options);case"Artist":return getTextLinks(item.ArtistItems||[],"MusicArtist",item,options);case"AlbumArtist":return getTextLinks(item.AlbumArtists||[],"MusicArtist",item,options);case"Composer":return getTextLinks(item.Composers||[],"MusicArtist",item,options);case"ParentIndexNumber":return item.ParentIndexNumber;case"Video3DFormat":return item.Video3DFormat?'':null;case"CriticRating":return item.CriticRating?_mediainfo.default.getCriticRating(item,{outerClass:"dataGridMediaInfoItem"}):null;case"PlayCount":return null==(_item$UserData=item.UserData)?void 0:_item$UserData.PlayCount;case"Resolution":return item.Width&&item.Height?_dataformatter.default.getResolutionText(item):null;default:return itemController.resolveField(item,column.id)}}Object.defineProperty(_exports,"__esModule",{value:!0}),_exports.default=void 0,require(["css!modules/datagrid/datagrid.css","embyProgressBarStyle"]);var columnSizes=[2,3,4,5,6,7,8,9,10,12,15,18,20,25,30,40,80];function getColumnHtml(item,itemController,column,options,isHeader){var innerHTML,html="",columnClass="dataGridItemCell",sortValues=options.sortValues,interactiveHeader=(15<=column.renderSize&&(columnClass+=" dataGridItemCell-fill"),!_layoutmanager.default.tv);if("button"===column.gridColumnType){var attr="";if((isHeader||column.hidden)&&(attr+=' disabled style="visibility:hidden;"'),"ContextMenu"===column.id)return"';if("Play"===column.id)return isHeader?'':"';if("Played"===column.id)return isHeader?'':_itemmanager.default.canMarkPlayed(item)?_embyPlaystatebutton.default.getHtml(item.UserData.Played,columnClass+" dataGridItemCell-button paper-icon-button-light itemAction"):'';if("IsFavorite"===column.id)return isHeader?'':_itemmanager.default.canRate(item)?_embyRatingbutton.default.getHtml(item.UserData.IsFavorite,columnClass+" dataGridItemCell-button paper-icon-button-light itemAction"):''}return html+='
',isHeader?column.sortBy&&interactiveHeader?(innerHTML='"):innerHTML=(innerHTML='
')+(column.gridDisplayName||column.name)+"
":null==(innerHTML=getColumnInnerHtml(item,itemController,column,options))&&(innerHTML=" "),html+innerHTML+"
"}function getListItemHtml(item,index,options){for(var tagName=options.tagName,action=options.action,html="",hoverPlayButtonRequested=(options.multiSelect&&(html+=''),html+='
',!_layoutmanager.default.tv&&!1!==options.hoverPlayButton),enableHoverPlayButton=hoverPlayButtonRequested&&_playbackmanager.default.canPlay(item),itemController=_itemmanager.default.getItemController(item.Type),columns=(hoverPlayButtonRequested&&(html+=getColumnHtml(item,itemController,{gridColumnType:"button",id:"Play",hidden:!enableHoverPlayButton},options)),options.columns),i=0,length=columns.length;i"+html+"")}function setListOptions(items,options){null==options.isBoundListItem&&(options.isBoundListItem=!0),options.itemSelector=".dataGridItem",options.enableScrollX=!_layoutmanager.default.tv,options.enableFixedPositionHeader=options.enableScrollX,options.dataGridItemContentClass="dataGridItem-content";for(var i=0,length=options.columns.length;i',options.columns),item={},itemController=_itemmanager.default.getItemController(item.Type),_i3=0,_length3=columns.length;_i3<_length3;_i3++)innerHTML+=getColumnHtml(item,itemController,columns[_i3],options);innerHTML+="
";cssClass="";options.addTabIndex&&(cssClass+=' tabindex="0"'),options.draggable&&(cssClass+=' draggable="true"'),options.clickEntireItem,options.fixedAttributes=cssClass.trim(),options.templateInnerHTML=innerHTML}function getItemsHtml(items,options){setListOptions(0,options);for(var html="",i=0,length=items.length;i
',columns=(!_layoutmanager.default.tv&&!1!==options.hoverPlayButton&&(html+=getColumnHtml(null,null,{gridColumnType:"button",id:"Play"},options,!0)),options.columns),i=0,length=columns.length;i"+"
"},onMultiSelectActive:function(itemsContainer,header){header&&header.classList.add("multi-select-active")},onMultiSelectInactive:function(itemsContainer,header){header&&header.classList.remove("multi-select-active")}}});