1 line
No EOL
1.3 KiB
JavaScript
1 line
No EOL
1.3 KiB
JavaScript
import connectionManager from"./../modules/emby-apiclient/connectionmanager.js";import events from"./../modules/emby-apiclient/events.js";function BaseTab(view){this.view=view}BaseTab.prototype.loadTemplate=function(){return Promise.resolve()},BaseTab.prototype.onResume=function(options){var currentOptions;if(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.getApiClient(options.item),this.paused=!1,this.templateLoaded)return Promise.resolve();let instance=this;return 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.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};export default BaseTab; |