text: /**
   * angular-strap
   * @version v2.3.12 - 2021-06-04
   * @link http://mgcrea.github.io/angular-strap
   * @author Olivier Louvignes <olivier@mg-crea.com> (https://github.com/mgcrea)
   * @license MIT License, http://www.opensource.org/licenses/MIT
   */
  'use strict';angular.module('mgcrea.ngStrap.affix',['mgcrea.ngStrap.helpers.dimensions','mgcrea.ngStrap.helpers.debounce']).provider('$affix',function(){var t=this.defaults={offsetTop:'auto',inlineStyles:!0,setWidth:!0};this.$get=['$window','debounce','dimensions',function(e,o,s){function n(n,r){function c(t,e,o){var s=l(),n=a();return s<=v?'top':null!==t?s+t<=e.top?'middle':'bottom':null!==P&&e.top+o+g>=n-P?'bottom':'middle'}function l(){return h[0]===e?e.pageYOffset:h[0].scrollTop}function a(){return h[0]===e?e.document.body.scrollHeight:h[0].scrollHeight}var u={},p=angular.extend({},t,r),h=p.target,d='affix affix-top affix-bottom',m=!1,g=0,$=0,v=0,P=0,x=null,y=null,T=n.parent();if(p.offsetParent)if(p.offsetParent.match(/^\d+$/))for(var b=0;b<1*p.offsetParent-1;b++)T=T.parent();else T=angular.element(p.offsetParent);return u.init=function(){this.$parseOffsets(),$=s.offset(n[0]).top+g,m=p.setWidth&&!n[0].style.width,h.on('scroll',this.checkPosition),h.on('click',this.checkPositionWithEventLoop),f.on('resize',this.$debouncedOnResize),this.checkPosition(),this.checkPositionWithEventLoop()},u.destroy=function(){h.off('scroll',this.checkPosition),h.off('click',this.checkPositionWithEventLoop),f.off('resize',this.$debouncedOnResize)},u.checkPositionWithEventLoop=function(){setTimeout(u.checkPosition,1)},u.checkPosition=function(){var t=l(),e=s.offset(n[0]),o=s.height(n[0]),f=c(y,e,o);x!==f&&(x=f,'top'===f?(y=null,m&&n.css('width',''),p.inlineStyles&&(n.css('position',p.offsetParent?'':'relative'),n.css('top',''))):'bottom'===f?(y=p.offsetUnpin?-(1*p.offsetUnpin):e.top-t,m&&n.css('width',''),p.inlineStyles&&(n.css('position',p.offsetParent?'':'relative'),n.css('top',p.offsetParent?'':i[0].offsetHeight-P-o-$+'px'))):(y=null,m&&n.css('width',n[0].offsetWidth+'px'),p.inlineStyles&&(n.css('position','fixed'),n.css('top',g+'px'))),n.removeClass(d).addClass('affix'+('middle'!==f?'-'+f:'')))},u.$onResize=function(){u.$parseOffsets(),u.checkPosition()},u.$debouncedOnResize=o(u.$onResize,50),u.$parseOffsets=function(){var t=n[0].style.position,e=n[0].style.top;p.inlineStyles&&(n.css('position',p.offsetParent?'':'relative'),n.css('top','')),p.offsetTop&&('auto'===p.offsetTop&&(p.offsetTop='+0'),p.offsetTop.match(/^[-+]\d+$/)?(g=1*-p.offsetTop,v=p.offsetParent?s.offset(T[0]).top+1*p.offsetTop:s.offset(n[0]).top-s.css(n[0],'marginTop',!0)+1*p.offsetTop):v=1*p.offsetTop),p.offsetBottom&&(P=p.offsetParent&&p.offsetBottom.match(/^[-+]\d+$/)?a()-(s.offset(T[0]).top+s.height(T[0]))+1*p.offsetBottom+1:1*p.offsetBottom),p.inlineStyles&&(n.css('position',t),n.css('top',e))},u.init(),u}var i=angular.element(e.document.body),f=angular.element(e);return n}]}).directive('bsAffix',['$affix','$window','$timeout',function(t,e,o){return{restrict:'EAC',require:'^?bsAffixTarget',link:function(s,n,i,f){var r={scope:s,target:f?f.$element:angular.element(e)};angular.forEach(['offsetTop','offsetBottom','offsetParent','offsetUnpin','inlineStyles','setWidth'],function(t){if(angular.isDefined(i[t])){var e=i[t];/true/i.test(e)&&(e=!0),/false/i.test(e)&&(e=!1),r[t]=e}});var c;o(function(){c=t(n,r)}),s.$on('$destroy',function(){c&&c.destroy(),r=null,c=null})}}}]).directive('bsAffixTarget',function(){return{controller:['$element',function(t){this.$element=t}]}});
  //# sourceMappingURL=affix.min.js.map
  