1System.register("bet/tab-manager.js",[],function(_export,_context){"use strict";var TabManager;return{setters:[],execute:function(){_export("TabManager",TabManager=function(){function TabManager($tabElement){this.$tabElement=$tabElement;this.currentPanel=null;this.oldPanel=null;this._onTabActivateListeners=[];this._onTabDeactivateListeners=[];this._isActive=false;this.init()}var _proto=TabManager.prototype;_proto.init=function init(){var self=this;this.$tabElement.tabs({activate:function activate(event,ui){self.currentPanel=ui.newPanel;self.oldPanel=ui.oldPanel;self._triggerTabDeactivate(ui.oldPanel);self._triggerTabActivate(ui.newPanel)},create:function create(event,ui){self.currentPanel=ui.panel}})};_proto.onTabActivate=function onTabActivate(selector,listener){this._onTabActivateListeners.push({selector:selector,cb:listener});if(this._isActive&&this.currentPanel&&this.currentPanel.is(selector)){listener(this.currentPanel)}};_proto._triggerTabActivate=function _triggerTabActivate(tab){for(var i=0;i<this._onTabActivateListeners.length;++i){var listener=this._onTabActivateListeners[i];if(tab.is(listener.selector)){listener.cb(tab)}}};_proto.onTabDeactivate=function onTabDeactivate(selector,listener){this._onTabDeactivateListeners.push({selector:selector,cb:listener});if(this._isActive&&this.oldPanel&&this.oldPanel.is(selector)){listener(this.oldPanel)}};_proto._triggerTabDeactivate=function _triggerTabDeactivate(tab){for(var i=0;i<this._onTabDeactivateListeners.length;++i){var listener=this._onTabDeactivateListeners[i];if(tab.is(listener.selector)){listener.cb(tab)}}};_proto.activate=function activate(){if(this._isActive){return}this._isActive=true;this._triggerTabActivate(this.currentPanel)};_proto.deactivate=function deactivate(){if(!this._isActive){return}this._isActive=false;this._triggerTabDeactivate(this.currentPanel)};_proto.isActive=function isActive(){return this._isActive};_proto.getActiveTab=function getActiveTab(){if(this.isActive()){return this.currentPanel}return null};_proto.setActiveTab=function setActiveTab(selector){var tab=this.$tabElement.find(selector).index();if(tab!==-1){this.$tabElement.tabs("option","active",tab-1)}};return TabManager}())}}});
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.