static.org.tinygroup.bootstrapslider.js.bootstrapslider.tiny.min.js Maven / Gradle / Ivy
/*! =========================================================
* bootstrap-slider.js
*
* Maintainers:
* Kyle Kemp
* - Twitter: @seiyria
* - Github: seiyria
* Rohit Kalkur
* - Twitter: @Rovolutionary
* - Github: rovolution
*
* =========================================================
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
* ========================================================= */
const windowIsDefined=(typeof window==="object");(function(a){if(typeof define==="function"&&define.amd){define(["jquery"],a)}else{if(typeof module==="object"&&module.exports){var c;try{c=require("jquery")}catch(b){c=null}module.exports=a(c)}else{if(window){window.Slider=a(window.jQuery)}}}}(function(d){const c="slider";const a="bootstrapSlider";if(windowIsDefined&&!window.console){window.console={}}if(windowIsDefined&&!window.console.log){window.console.log=function(){}}if(windowIsDefined&&!window.console.warn){window.console.warn=function(){}}var b;(function(g){var h=Array.prototype.slice;function f(){}function e(j){if(!j){return}function l(m){if(m.prototype.option){return}m.prototype.option=function(n){if(!j.isPlainObject(n)){return}this.options=j.extend(true,this.options,n)}}var i=typeof console==="undefined"?f:function(m){console.error(m)};function k(m,n){j.fn[m]=function(r){if(typeof r==="string"){var q=h.call(arguments,1);for(var s=0,p=this.length;s1){return v}else{return v[0]}}}}j.bridget=function(m,n){l(n);k(m,n)};return j.bridget}e(g)})(d);(function(g){var h={formatInvalidInputErrorMsg:function(i){return"Invalid input value '"+i+"' passed in"},callingContextNotSliderInstance:"Calling context element does not have instance of Slider bound to it. Check your code to make sure the JQuery object returned from the call to the slider() initializer is calling the method"};var f={linear:{toValue:function(s){var m=s/100*(this.options.max-this.options.min);var o=true;if(this.options.ticks_positions.length>0){var t,p,k,j=0;for(var n=1;nthis.options.max){return this.options.max}else{return q}}},toPercentage:function(n){if(this.options.max===this.options.min){return 0}if(this.options.ticks_positions.length>0){var k,j,o,m=0;for(var l=0;l0)?this.options.ticks[l-1]:0;o=(l>0)?this.options.ticks_positions[l-1]:0;j=this.options.ticks[l];m=this.options.ticks_positions[l];break}}if(l>0){var p=(n-k)/(j-k);return o+p*(m-o)}}return 100*(n-this.options.min)/(this.options.max-this.options.min)}},logarithmic:{toValue:function(j){var k=(this.options.min===0)?0:Math.log(this.options.min);var i=Math.log(this.options.max);var l=Math.exp(k+(i-k)*j/100);l=this.options.min+Math.round((l-this.options.min)/this.options.step)*this.options.step;if(lthis.options.max){return this.options.max}else{return l}}},toPercentage:function(l){if(this.options.max===this.options.min){return 0}else{var i=Math.log(this.options.max);var k=this.options.min===0?0:Math.log(this.options.min);var j=l===0?0:Math.log(l);return 100*(j-k)/(i-k)}}}};b=function(j,i){e.call(this,j,i);return this};function e(n,q){this._state={value:null,enabled:null,offset:null,size:null,percentage:null,inDrag:false,over:false};if(typeof n==="string"){this.element=document.querySelector(n)}else{if(n instanceof HTMLElement){this.element=n}}q=q?q:{};var z=Object.keys(this.defaultOptions);for(var E=0;E0){this.ticksContainer=document.createElement("div");this.ticksContainer.className="slider-tick-container";for(E=0;E0){this.tickLabelContainer=document.createElement("div");this.tickLabelContainer.className="slider-tick-label-container";for(E=0;E0){this.options.max=Math.max.apply(Math,this.options.ticks);this.options.min=Math.min.apply(Math,this.options.ticks)}if(Array.isArray(this.options.value)){this.options.range=true;this._state.value=this.options.value}else{if(this.options.range){this._state.value=[this.options.value,this.options.max]}else{this._state.value=this.options.value}}this.trackLow=k||this.trackLow;this.trackSelection=s||this.trackSelection;this.trackHigh=r||this.trackHigh;if(this.options.selection==="none"){this._addClass(this.trackLow,"hide");this._addClass(this.trackSelection,"hide");this._addClass(this.trackHigh,"hide")}this.handle1=l||this.handle1;this.handle2=A||this.handle2;if(m===true){this._removeClass(this.handle1,"round triangle");this._removeClass(this.handle2,"round triangle hide");for(E=0;Ethis.options.min){this._state.percentage=[this._toPercentage(this._state.value[0]),this._toPercentage(this._state.value[1]),this.options.step*100/(this.options.max-this.options.min)]}else{this._state.percentage=[0,0,100]}this._layout();var m=this.options.range?this._state.value:this._state.value[0];this._setDataVal(m);if(l===true){this._trigger("slide",m)}if((j!==m)&&(k===true)){this._trigger("change",{oldValue:j,newValue:m})}return this},destroy:function(){this._removeSliderEventHandlers();this.sliderElem.parentNode.removeChild(this.sliderElem);this.element.style.display="";this._cleanUpEventCallbacksMap();this.element.removeAttribute("data");if(g){this._unbindJQueryEventHandlers();this.$element.removeData("slider")}},disable:function(){this._state.enabled=false;this.handle1.removeAttribute("tabindex");this.handle2.removeAttribute("tabindex");this._addClass(this.sliderElem,"slider-disabled");this._trigger("slideDisabled");return this},enable:function(){this._state.enabled=true;this.handle1.setAttribute("tabindex",0);this.handle2.setAttribute("tabindex",0);this._removeClass(this.sliderElem,"slider-disabled");this._trigger("slideEnabled");return this},toggle:function(){if(this._state.enabled){this.disable()}else{this.enable()}return this},isEnabled:function(){return this._state.enabled},on:function(i,j){this._bindNonQueryEventHandler(i,j);return this},off:function(i,j){if(g){this.$element.off(i,j);this.$sliderElem.off(i,j)}else{this._unbindNonQueryEventHandler(i,j)}},getAttribute:function(i){if(i){return this.options[i]}else{return this.options}},setAttribute:function(i,j){this.options[i]=j;return this},refresh:function(){this._removeSliderEventHandlers();e.call(this,this.element,this.options);if(g){g.data(this.element,"slider",this)}return this},relayout:function(){this._resize();this._layout();return this},_removeSliderEventHandlers:function(){this.handle1.removeEventListener("keydown",this.handle1Keydown,false);this.handle2.removeEventListener("keydown",this.handle2Keydown,false);if(this.showTooltip){this.handle1.removeEventListener("focus",this.showTooltip,false);this.handle2.removeEventListener("focus",this.showTooltip,false)}if(this.hideTooltip){this.handle1.removeEventListener("blur",this.hideTooltip,false);this.handle2.removeEventListener("blur",this.hideTooltip,false)}if(this.showTooltip){this.sliderElem.removeEventListener("mouseenter",this.showTooltip,false)}if(this.hideTooltip){this.sliderElem.removeEventListener("mouseleave",this.hideTooltip,false)}this.sliderElem.removeEventListener("touchstart",this.touchstart,false);this.sliderElem.removeEventListener("touchmove",this.touchmove,false);this.sliderElem.removeEventListener("mousedown",this.mousedown,false);window.removeEventListener("resize",this.resize,false)},_bindNonQueryEventHandler:function(i,j){if(this.eventToCallbackMap[i]===undefined){this.eventToCallbackMap[i]=[]}this.eventToCallbackMap[i].push(j)},_unbindNonQueryEventHandler:function(j,m){var l=this.eventToCallbackMap[j];if(l!==undefined){for(var k=0;k0){var j=this.options.orientation==="vertical"?"height":"width";var r=this.options.orientation==="vertical"?"marginTop":"marginLeft";var l=this._state.size/(this.options.ticks.length-1);if(this.tickLabelContainer){var q=0;if(this.options.ticks_positions.length===0){if(this.options.orientation!=="vertical"){this.tickLabelContainer.style[r]=-l/2+"px"}q=this.tickLabelContainer.offsetHeight}else{for(n=0;nq){q=this.tickLabelContainer.childNodes[n].offsetHeight}}}if(this.options.orientation==="horizontal"){this.sliderElem.style.marginBottom=q+"px"}}for(var n=0;n=t[0]){this._addClass(this.ticks[n],"in-selection")}else{if(this.options.selection==="before"&&u<=t[0]){this._addClass(this.ticks[n],"in-selection")}}}else{if(u>=t[0]&&u<=t[1]){this._addClass(this.ticks[n],"in-selection")}}if(this.tickLabels[n]){this.tickLabels[n].style[j]=l+"px";if(this.options.orientation!=="vertical"&&this.options.ticks_positions[n]!==undefined){this.tickLabels[n].style.position="absolute";this.tickLabels[n].style[this.stylePos]=u+"%";this.tickLabels[n].style[r]=-l/2+"px"}else{if(this.options.orientation==="vertical"){this.tickLabels[n].style.marginLeft=this.sliderElem.offsetWidth+"px";this.tickLabelContainer.style.marginTop=this.sliderElem.offsetWidth/2*-1+"px"}}}}}var m;if(this.options.range){m=this.options.formatter(this._state.value);this._setText(this.tooltipInner,m);this.tooltip.style[this.stylePos]=(t[1]+t[0])/2+"%";if(this.options.orientation==="vertical"){this._css(this.tooltip,"margin-top",-this.tooltip.offsetHeight/2+"px")}else{this._css(this.tooltip,"margin-left",-this.tooltip.offsetWidth/2+"px")}if(this.options.orientation==="vertical"){this._css(this.tooltip,"margin-top",-this.tooltip.offsetHeight/2+"px")}else{this._css(this.tooltip,"margin-left",-this.tooltip.offsetWidth/2+"px")}var s=this.options.formatter(this._state.value[0]);this._setText(this.tooltipInner_min,s);var o=this.options.formatter(this._state.value[1]);this._setText(this.tooltipInner_max,o);this.tooltip_min.style[this.stylePos]=t[0]+"%";if(this.options.orientation==="vertical"){this._css(this.tooltip_min,"margin-top",-this.tooltip_min.offsetHeight/2+"px")}else{this._css(this.tooltip_min,"margin-left",-this.tooltip_min.offsetWidth/2+"px")}this.tooltip_max.style[this.stylePos]=t[1]+"%";if(this.options.orientation==="vertical"){this._css(this.tooltip_max,"margin-top",-this.tooltip_max.offsetHeight/2+"px")}else{this._css(this.tooltip_max,"margin-left",-this.tooltip_max.offsetWidth/2+"px")}}else{m=this.options.formatter(this._state.value[0]);this._setText(this.tooltipInner,m);this.tooltip.style[this.stylePos]=t[0]+"%";if(this.options.orientation==="vertical"){this._css(this.tooltip,"margin-top",-this.tooltip.offsetHeight/2+"px")}else{this._css(this.tooltip,"margin-left",-this.tooltip.offsetWidth/2+"px")}}if(this.options.orientation==="vertical"){this.trackLow.style.top="0";this.trackLow.style.height=Math.min(t[0],t[1])+"%";this.trackSelection.style.top=Math.min(t[0],t[1])+"%";this.trackSelection.style.height=Math.abs(t[0]-t[1])+"%";this.trackHigh.style.bottom="0";this.trackHigh.style.height=(100-Math.min(t[0],t[1])-Math.abs(t[0]-t[1]))+"%"}else{this.trackLow.style.left="0";this.trackLow.style.width=Math.min(t[0],t[1])+"%";this.trackSelection.style.left=Math.min(t[0],t[1])+"%";this.trackSelection.style.width=Math.abs(t[0]-t[1])+"%";this.trackHigh.style.right="0";this.trackHigh.style.width=(100-Math.min(t[0],t[1])-Math.abs(t[0]-t[1]))+"%";var k=this.tooltip_min.getBoundingClientRect();var p=this.tooltip_max.getBoundingClientRect();if(this.options.tooltip_position==="bottom"){if(k.right>p.left){this._removeClass(this.tooltip_max,"bottom");this._addClass(this.tooltip_max,"top");this.tooltip_max.style.top="";this.tooltip_max.style.bottom=22+"px"}else{this._removeClass(this.tooltip_max,"top");this._addClass(this.tooltip_max,"bottom");this.tooltip_max.style.top=this.tooltip_min.style.top;this.tooltip_max.style.bottom=""}}else{if(k.right>p.left){this._removeClass(this.tooltip_max,"top");this._addClass(this.tooltip_max,"bottom");this.tooltip_max.style.top=18+"px"}else{this._removeClass(this.tooltip_max,"bottom");this._addClass(this.tooltip_max,"top");this.tooltip_max.style.top=this.tooltip_min.style.top}}}},_resize:function(i){this._state.offset=this._offset(this.sliderElem);this._state.size=this.sliderElem[this.sizePos];this._layout()},_removeProperty:function(i,j){if(i.style.removeProperty){i.style.removeProperty(j)}else{i.style.removeAttribute(j)}},_mousedown:function(j){if(!this._state.enabled){return false}this._state.offset=this._offset(this.sliderElem);this._state.size=this.sliderElem[this.sizePos];var i=this._getPercentage(j);if(this.options.range){var m=Math.abs(this._state.percentage[0]-i);var l=Math.abs(this._state.percentage[1]-i);this._state.dragged=(m=-5)&&(i>=15||i<=-15)){this._mousedown(j)}else{if((i<=5&&i>=-5)&&(k>=15||k<=-15)){this._mousedown(j)}}}},_adjustPercentageForRangeSliders:function(k){if(this.options.range){var j=this._getNumDigitsAfterDecimalPlace(k);j=j?j-1:0;var i=this._applyToFixedAndParseFloat(k,j);if(this._state.dragged===0&&this._applyToFixedAndParseFloat(this._state.percentage[1],j)i){this._state.percentage[1]=this._state.percentage[0];this._state.dragged=0}}}},_mouseup:function(){if(!this._state.enabled){return false}if(this.touchCapable){document.removeEventListener("touchmove",this.mousemove,false);document.removeEventListener("touchend",this.mouseup,false)}document.removeEventListener("mousemove",this.mousemove,false);document.removeEventListener("mouseup",this.mouseup,false);this._state.inDrag=false;if(this._state.over===false){this._hideTooltip()}var i=this._calculateValue(true);this._layout();this._setDataVal(i);this._trigger("slideStop",i);return false},_calculateValue:function(j){var n;if(this.options.range){n=[this.options.min,this.options.max];if(this._state.percentage[0]!==0){n[0]=this._toValue(this._state.percentage[0]);n[0]=this._applyPrecision(n[0])}if(this._state.percentage[1]!==100){n[1]=this._toValue(this._state.percentage[1]);n[1]=this._applyPrecision(n[1])}}else{n=this._toValue(this._state.percentage[0]);n=parseFloat(n);n=this._applyPrecision(n)}if(j){var l=[n,Infinity];for(var k=0;k