define(["exports","./../modules/emby-apiclient/connectionmanager.js","./../modules/emby-apiclient/events.js"],function(_exports,_connectionmanager,_events){function BaseTab(view){this.view=view}Object.defineProperty(_exports,"__esModule",{value:!0}),_exports.default=void 0,BaseTab.prototype.loadTemplate=function(){return Promise.resolve()},BaseTab.prototype.onResume=function(options){var currentOptions,instance;return options.refresh||!(currentOptions=this.currentOptions)||options.displayItem===currentOptions.displayItem&&options.item===currentOptions.item||(options.refresh=!0),this.needsRefresh&&(options.refresh=!0),this.currentOptions=options,this.apiClient=_connectionmanager.default.getApiClient(options.item),this.paused=!1,this.templateLoaded?Promise.resolve():(instance=this).loadTemplate().then(function(){instance.templateLoaded=!0})},BaseTab.prototype.onPause=function(){this.paused=!0},BaseTab.prototype.onTimeUpdate=function(positionTicks,runtimeTicks){this.positionTicks=positionTicks},BaseTab.prototype.onItemUpdated=function(options){this.currentOptions=options,this.paused?this.needsRefresh=!0:this.refreshItem()},BaseTab.prototype.refreshItem=function(){this.needsRefresh=!1},BaseTab.prototype.closeTab=function(){_events.default.trigger(this,"closerequested")},BaseTab.prototype.destroy=function(){this.paused=null,this.view=null,this.currentOptions=null,this.apiClient=null,this.templateLoaded=null,this.positionTicks=null};_exports.default=BaseTab});