nexus site path corrected
[portal.git] / ecomp-portal-FE / client / bower_components / angular-material / modules / js / tabs / tabs.min.js
1 /*!
2  * Angular Material Design
3  * https://github.com/angular/material
4  * @license MIT
5  * v0.9.8
6  */
7 !function(e,t,n){"use strict";function a(){function e(e,n,a,s){if(s){var d=n.parent()[0].getElementsByTagName("md-tab"),i=Array.prototype.indexOf.call(d,n[0]),c=n.find("md-tab-body").remove(),o=n.find("md-tab-label").remove(),r=s.insertTab({scope:e,parent:e.$parent,index:i,element:n,template:c.html(),label:o.html()},i);e.select=e.select||t.noop,e.deselect=e.deselect||t.noop,e.$watch("active",function(e){e&&s.select(r.getIndex())}),e.$watch("disabled",function(){s.refreshIndex()}),e.$watch(function(){return Array.prototype.indexOf.call(d,n[0])},function(e){r.index=e,s.updateTabOrder()}),e.$on("$destroy",function(){s.removeTab(r)})}}return{require:"^?mdTabs",terminal:!0,template:function(e,t){function n(){function n(){return t.label}function a(){var t=e.find("md-tab-label");return t.length?t.remove().html():void 0}function s(){var t=e.html();return e.empty(),t}return a()||n()||s()}function a(){var n=e.find("md-tab-body"),a=n.length?n.html():t.label?e.html():"";return n.length?n.remove():t.label&&e.empty(),a}var s=n(),d=a();return"<md-tab-label>"+s+"</md-tab-label><md-tab-body>"+d+"</md-tab-body>"},scope:{active:"=?mdActive",disabled:"=?ngDisabled",select:"&?mdOnSelect",deselect:"&?mdOnDeselect"},link:e}}function s(){return{require:"^?mdTabs",link:function(e,t,n,a){a&&a.attachRipple(e,t)}}}function d(){return{terminal:!0}}function i(e){return{restrict:"A",compile:function(t,n){var a=e(n.mdTabScroll,null,!0);return function(e,t){t.on("mousewheel",function(t){e.$apply(function(){a(e,{$event:t})})})}}}}function c(e,n,a,s,d,i,c,o){function r(){e.$watch("selectedIndex",u),e.$watch("$mdTabsCtrl.focusIndex",b),e.$watch("$mdTabsCtrl.offsetLeft",f),e.$watch("$mdTabsCtrl.hasContent",m),t.element(a).on("resize",$),t.element(Y.paging).on("DOMSubtreeModified",K.updateInkBarStyles),s(F,0,!1),s(O),e.$on("$destroy",l)}function l(){z=!0,t.element(a).off("resize",$),t.element(Y.paging).off("DOMSubtreeModified",K.updateInkBarStyles)}function m(e){n[e?"removeClass":"addClass"]("md-no-tab-content")}function f(n){var a=S()?"":"-"+n+"px";t.element(Y.paging).css("transform","translate3d("+a+", 0, 0)"),e.$broadcast("$mdTabsPaginationChanged")}function b(e,t){e!==t&&Y.tabs[e]&&(O(),W())}function u(t,n){t!==n&&(e.selectedIndex=B(t),K.lastSelectedIndex=n,K.updateInkBarStyles(),F(),e.$broadcast("$mdTabsChanged"),K.tabs[n]&&K.tabs[n].scope.deselect(),K.tabs[t]&&K.tabs[t].scope.select())}function p(){p.watcher||(p.watcher=e.$watch(function(){s(function(){p.watcher&&n.prop("offsetParent")&&(p.watcher(),p.watcher=null,$())},0,!1)}))}function h(t){switch(t.keyCode){case d.KEY_CODE.LEFT_ARROW:t.preventDefault(),D(-1,!0);break;case d.KEY_CODE.RIGHT_ARROW:t.preventDefault(),D(1,!0);break;case d.KEY_CODE.SPACE:case d.KEY_CODE.ENTER:t.preventDefault(),U||(e.selectedIndex=K.focusIndex)}K.lastClick=!1}function g(t){U||(K.focusIndex=e.selectedIndex=t),K.lastClick=!0,K.tabs[t].element.triggerHandler("click")}function x(e){P()&&(e.preventDefault(),K.offsetLeft=_(K.offsetLeft-e.wheelDelta))}function v(){var e,t,n=Y.canvas.clientWidth,a=n+K.offsetLeft;for(e=0;e<Y.tabs.length&&(t=Y.tabs[e],!(t.offsetLeft+t.offsetWidth>a));e++);K.offsetLeft=_(t.offsetLeft)}function T(){var e,t;for(e=0;e<Y.tabs.length&&(t=Y.tabs[e],!(t.offsetLeft+t.offsetWidth>=K.offsetLeft));e++);K.offsetLeft=_(t.offsetLeft+t.offsetWidth-Y.canvas.clientWidth)}function $(){e.$apply(function(){K.lastSelectedIndex=e.selectedIndex,K.offsetLeft=_(K.offsetLeft),s(K.updateInkBarStyles,0,!1)})}function I(t){var n=e.selectedIndex,a=K.tabs.splice(t.getIndex(),1)[0];R(),e.selectedIndex!==n||z||(a.scope.deselect(),K.tabs[e.selectedIndex]&&K.tabs[e.selectedIndex].scope.select()),s(function(){K.offsetLeft=_(K.offsetLeft)})}function C(n,a){var s={getIndex:function(){return K.tabs.indexOf(d)},isActive:function(){return this.getIndex()===e.selectedIndex},isLeft:function(){return this.getIndex()<e.selectedIndex},isRight:function(){return this.getIndex()>e.selectedIndex},shouldRender:function(){return!e.noDisconnect||this.isActive()},hasFocus:function(){return!K.lastClick&&K.hasFocus&&this.getIndex()===K.focusIndex},id:c.nextUid()},d=t.extend(s,n);return t.isDefined(a)?K.tabs.splice(a,0,d):K.tabs.push(d),A(),N(),d}function w(){var e={};return e.wrapper=n[0].getElementsByTagName("md-tabs-wrapper")[0],e.canvas=e.wrapper.getElementsByTagName("md-tabs-canvas")[0],e.paging=e.canvas.getElementsByTagName("md-pagination-wrapper")[0],e.tabs=e.paging.getElementsByTagName("md-tab-item"),e.dummies=e.canvas.getElementsByTagName("md-dummy-tab"),e.inkBar=e.paging.getElementsByTagName("md-ink-bar")[0],e.contentsWrapper=n[0].getElementsByTagName("md-tabs-content-wrapper")[0],e.contents=e.contentsWrapper.getElementsByTagName("md-tab-content"),e}function y(){return K.offsetLeft>0}function k(){var e=Y.tabs[Y.tabs.length-1];return e&&e.offsetLeft+e.offsetWidth>Y.canvas.clientWidth+K.offsetLeft}function L(){switch(e.stretchTabs){case"always":return!0;case"never":return!1;default:return!P()&&a.matchMedia("(max-width: 600px)").matches}}function S(){return e.centerTabs&&!P()}function P(){if(e.noPagination)return!1;var a=n.prop("clientWidth");return t.forEach(Y.tabs,function(e){a-=e.offsetWidth}),0>a}function B(e){var t,n,a=Math.max(K.tabs.length-e,e);for(t=0;a>=t;t++){if(n=K.tabs[e+t],n&&n.scope.disabled!==!0)return n.getIndex();if(n=K.tabs[e-t],n&&n.scope.disabled!==!0)return n.getIndex()}return e}function E(){var t=K.tabs[e.selectedIndex],n=K.tabs[K.focusIndex];K.tabs=K.tabs.sort(function(e,t){return e.index-t.index}),e.selectedIndex=K.tabs.indexOf(t),K.focusIndex=K.tabs.indexOf(n)}function D(t,n){var a,s=n?K.focusIndex:e.selectedIndex;for(a=s+t;K.tabs[a]&&K.tabs[a].scope.disabled;a+=t);K.tabs[a]&&(n?K.focusIndex=a:e.selectedIndex=a)}function W(){Y.dummies[K.focusIndex].focus()}function O(){if(!S()){var e=Y.tabs[K.focusIndex],t=e.offsetLeft,n=e.offsetWidth+t;K.offsetLeft=Math.max(K.offsetLeft,_(n-Y.canvas.clientWidth)),K.offsetLeft=Math.min(K.offsetLeft,_(t))}}function A(){q.forEach(function(e){s(e)}),q=[]}function N(){var e=!1;t.forEach(K.tabs,function(t){t.template&&(e=!0)}),K.hasContent=e}function R(){e.selectedIndex=B(e.selectedIndex),K.focusIndex=B(K.focusIndex)}function F(){if(!e.dynamicHeight)return n.css("height","");if(!K.tabs.length)return q.push(F);var t=Y.contents[e.selectedIndex],a=t?t.offsetHeight:0,s=Y.wrapper.offsetHeight,d=a+s,i=n.prop("clientHeight");i!==d&&(U=!0,o.animate(n,{height:i+"px"},{height:d+"px"}).then(function(){n.css("height",""),U=!1}))}function M(){if(Y.tabs[e.selectedIndex]){if(!K.tabs.length)return q.push(K.updateInkBarStyles);if(!n.prop("offsetParent"))return p();var a=e.selectedIndex,s=Y.paging.offsetWidth,d=Y.tabs[a],i=d.offsetLeft,c=s-i-d.offsetWidth;H(),t.element(Y.inkBar).css({left:i+"px",right:c+"px"})}}function H(){var n=e.selectedIndex,a=K.lastSelectedIndex,s=t.element(Y.inkBar);s.removeClass("md-left md-right"),t.isNumber(a)&&(a>n?s.addClass("md-left"):n>a&&s.addClass("md-right"))}function _(e){if(!Y.tabs.length||!P())return 0;var t=Y.tabs[Y.tabs.length-1],n=t.offsetLeft+t.offsetWidth;return e=Math.max(0,e),e=Math.min(n-Y.canvas.clientWidth,e)}function j(e,n){var a={colorElement:t.element(Y.inkBar)};i.attach(e,n,a)}var K=this,U=!1,Y=w(),q=[],z=!1;K.scope=e,K.parent=e.$parent,K.tabs=[],K.lastSelectedIndex=null,K.focusIndex=e.selectedIndex||0,K.offsetLeft=0,K.hasContent=!1,K.hasFocus=!1,K.lastClick=!0,K.redirectFocus=W,K.attachRipple=j,K.shouldStretchTabs=L,K.shouldPaginate=P,K.shouldCenterTabs=S,K.insertTab=C,K.removeTab=I,K.select=g,K.scroll=x,K.nextPage=v,K.previousPage=T,K.keydown=h,K.canPageForward=k,K.canPageBack=y,K.refreshIndex=R,K.incrementSelectedIndex=D,K.updateInkBarStyles=c.debounce(M,100),K.updateTabOrder=c.debounce(E,100),r()}function o(e,n,a){return{scope:{noPagination:"=?mdNoPagination",dynamicHeight:"=?mdDynamicHeight",centerTabs:"=?mdCenterTabs",selectedIndex:"=?mdSelected",stretchTabs:"@?mdStretchTabs",swipeContent:"=?mdSwipeContent",noDisconnect:"=?mdNoDisconnect"},template:function(e,t){return t.$mdTabsTemplate=e.html(),'        <md-tabs-wrapper ng-class="{ \'md-stretch-tabs\': $mdTabsCtrl.shouldStretchTabs() }">          <md-tab-data></md-tab-data>          <md-prev-button              tabindex="-1"              role="button"              aria-label="Previous Page"              aria-disabled="{{!$mdTabsCtrl.canPageBack()}}"              ng-class="{ \'md-disabled\': !$mdTabsCtrl.canPageBack() }"              ng-if="$mdTabsCtrl.shouldPaginate()"              ng-click="$mdTabsCtrl.previousPage()">            <md-icon md-svg-icon="md-tabs-arrow"></md-icon>          </md-prev-button>          <md-next-button              tabindex="-1"              role="button"              aria-label="Next Page"              aria-disabled="{{!$mdTabsCtrl.canPageForward()}}"              ng-class="{ \'md-disabled\': !$mdTabsCtrl.canPageForward() }"              ng-if="$mdTabsCtrl.shouldPaginate()"              ng-click="$mdTabsCtrl.nextPage()">            <md-icon md-svg-icon="md-tabs-arrow"></md-icon>          </md-next-button>          <md-tabs-canvas              tabindex="0"              aria-activedescendant="tab-item-{{$mdTabsCtrl.tabs[$mdTabsCtrl.focusIndex].id}}"              ng-focus="$mdTabsCtrl.redirectFocus()"              ng-class="{                  \'md-paginated\': $mdTabsCtrl.shouldPaginate(),                  \'md-center-tabs\': $mdTabsCtrl.shouldCenterTabs()              }"              ng-keydown="$mdTabsCtrl.keydown($event)"              role="tablist">            <md-pagination-wrapper                ng-class="{ \'md-center-tabs\': $mdTabsCtrl.shouldCenterTabs() }"                md-tab-scroll="$mdTabsCtrl.scroll($event)">              <md-tab-item                  tabindex="-1"                  class="md-tab"                  style="max-width: {{ tabWidth ? tabWidth + \'px\' : \'none\' }}"                  ng-repeat="tab in $mdTabsCtrl.tabs"                  role="tab"                  aria-controls="tab-content-{{tab.id}}"                  aria-selected="{{tab.isActive()}}"                  aria-disabled="{{tab.scope.disabled || \'false\'}}"                  ng-click="$mdTabsCtrl.select(tab.getIndex())"                  ng-class="{                      \'md-active\':    tab.isActive(),                      \'md-focused\':   tab.hasFocus(),                      \'md-disabled\':  tab.scope.disabled                  }"                  ng-disabled="tab.scope.disabled"                  md-swipe-left="$mdTabsCtrl.nextPage()"                  md-swipe-right="$mdTabsCtrl.previousPage()"                  md-template="tab.label"                  md-scope="tab.parent"></md-tab-item>              <md-ink-bar ng-hide="noInkBar"></md-ink-bar>            </md-pagination-wrapper>            <div class="md-visually-hidden md-dummy-wrapper">              <md-dummy-tab                  tabindex="-1"                  id="tab-item-{{tab.id}}"                  role="tab"                  aria-controls="tab-content-{{tab.id}}"                  aria-selected="{{tab.isActive()}}"                  aria-disabled="{{tab.scope.disabled || \'false\'}}"                  ng-focus="$mdTabsCtrl.hasFocus = true"                  ng-blur="$mdTabsCtrl.hasFocus = false"                  ng-repeat="tab in $mdTabsCtrl.tabs"                  md-template="tab.label"                  md-scope="tab.parent"></md-dummy-tab>            </div>          </md-tabs-canvas>        </md-tabs-wrapper>        <md-tabs-content-wrapper ng-show="$mdTabsCtrl.hasContent">          <md-tab-content              id="tab-content-{{tab.id}}"              role="tabpanel"              aria-labelledby="tab-item-{{tab.id}}"              md-swipe-left="swipeContent && $mdTabsCtrl.incrementSelectedIndex(1)"              md-swipe-right="swipeContent && $mdTabsCtrl.incrementSelectedIndex(-1)"              ng-if="$mdTabsCtrl.hasContent"              ng-repeat="(index, tab) in $mdTabsCtrl.tabs"              md-connected-if="tab.isActive()"              ng-class="{                \'md-no-transition\': $mdTabsCtrl.lastSelectedIndex == null,                \'md-active\':        tab.isActive(),                \'md-left\':          tab.isLeft(),                \'md-right\':         tab.isRight(),                \'md-no-scroll\':     dynamicHeight              }">            <div                md-template="tab.template"                md-scope="tab.parent"                ng-if="tab.shouldRender()"></div>          </md-tab-content>        </md-tabs-content-wrapper>      '},controller:"MdTabsController",controllerAs:"$mdTabsCtrl",link:function(s,d,i){function c(e){var t=d.find("md-tab-data");t.html(e),a(t.contents())(s.$parent)}c(i.$mdTabsTemplate),delete i.$mdTabsTemplate,n.initOptionalProperties(s,i),i.$observe("mdNoBar",function(e){s.noInkBar=t.isDefined(e)}),s.selectedIndex=t.isNumber(s.selectedIndex)?s.selectedIndex:0,e(d)}}}function r(e,t,n){function a(a,s,d,i){function c(){a.$watch("connected",function(e){e===!1?o():r()}),a.$on("$destroy",r)}function o(){i.scope.noDisconnect||t.disconnectScope(l)}function r(){i.scope.noDisconnect||t.reconnectScope(l)}if(i){var l=a.compileScope.$new();return s.html(a.template),e(s.contents())(l),n(c)}}return{restrict:"A",link:a,scope:{template:"=mdTemplate",compileScope:"=mdScope",connected:"=?mdConnectedIf"},require:"^?mdTabs"}}t.module("material.components.tabs",["material.core","material.components.icon"]),t.module("material.components.tabs").directive("mdTab",a),t.module("material.components.tabs").directive("mdTabItem",s),t.module("material.components.tabs").directive("mdTabLabel",d),t.module("material.components.tabs").directive("mdTabScroll",i),i.$inject=["$parse"],t.module("material.components.tabs").controller("MdTabsController",c),c.$inject=["$scope","$element","$window","$timeout","$mdConstant","$mdTabInkRipple","$mdUtil","$animate"],t.module("material.components.tabs").directive("mdTabs",o),o.$inject=["$mdTheming","$mdUtil","$compile"],t.module("material.components.tabs").directive("mdTemplate",r),r.$inject=["$compile","$mdUtil","$timeout"]}(window,window.angular);