1/** 2 * RadioSlider 1.0.0-beta.1 3 * A jQuery plugin to display radio buttons as a slider.. 4 * (c) 2019 tcharlss / Ruben Torres 5 * MIT license 6 */ 7 8!function($){"use strict";var a="radioslider",s=0,e={size:"",animation:!0,isDisabledd:!1,fillOffset:null,fillOrigin:null,fit:!1,onSelect:null,orientation:"horizontal",sliderClass:"radioslider",itemClass:"radioslider__item",inputClass:"radioslider__input",labelClass:"radioslider__label",dotClass:"radioslider__dot",textClass:"radioslider__text",barClass:"radioslider__bar",fillClass:"radioslider__fill",handleClass:"radioslider__handle",horizontalClass:"radioslider_horizontal",verticalClass:"radioslider_vertical",fitClass:"radioslider_fit",animationClass:"radioslider_animated",dotUnderClass:"under",inverseClass:"inverse",activeClass:"active",focusClass:"focused",disabledClass:"disabled"},n={orientation:{horizontal:{dimension:"width",direction:"left",directionStyle:"left",coordinate:"x"},vertical:{dimension:"height",direction:"top",directionStyle:"bottom",coordinate:"y"}}};function l(i,t){s++,this.$window=$(window),this.$document=$(document),this.$bearer=$(i),this.options=$.extend({},e,t,this.$bearer.data()),this.orientation=this.options.orientation,this.DIMENSION=n.orientation[this.orientation].dimension,this.DIRECTION=n.orientation[this.orientation].direction,this.DIRECTION_STYLE=n.orientation[this.orientation].directionStyle,this.COORDINATE=n.orientation[this.orientation].coordinate,this.number=s,this.identifier=a+"-"+s,this.level=0,this.value=null,this.levelsCount=this.$bearer.find("input[type=radio]").length,this.$bar=$('<span class="'+this.options.barClass+'">'),this.$fill=$('<span class="'+this.options.fillClass+'">'),this.$handle=$('<span class="'+this.options.handleClass+'">'),this.$bar.append(this.$fill.css("visibility","hidden")).append(this.$handle),this.init()}l.prototype.init=function(){this.activate(),this.onInit&&"function"==typeof this.onInit&&this.onInit()},l.prototype.activate=function(){this.addBase(),this.setSlider(),this.addInteraction(),this.options.isDisabledd&&this.setDisabled()},l.prototype.addBase=function(){var i,l,t,s,o=this.options,e=this.$bearer,a=this.$bar;e.addClass(o.sliderClass+" "+o[this.orientation+"Class"]+" "+(o.fit?o.fitClass:"")+" "+(o.animation?o.animationClass:"")+" "+(o.size?o.sliderClass+"_"+o.size:"")).attr("data-radioslider",this.number),l=e.find("> input[type=radio]").each(function(i){$(this).addClass(o.inputClass).attr("data-level",i+1)}),this.$inputs=l,this.$inputsDisabled=this.$bearer.find("> input[type=radio][disabled]"),t=e.find("> label").each(function(i){var t,s,e,a,n;e=$(this).html(),a=$('<span class="'+o.textClass+'">').html(e),t=i+1,s=l.filter("[data-level="+t+"]").attr("value"),n=$('<span class="'+o.dotClass+'">').attr("data-level",t).attr("data-value",s),$(this).addClass(o.labelClass).html("").append(n).append(a)}),s=e.find("."+o.dotClass),this.$dots=s,this.$labels=t,l.each(function(){var i=$('<div class="'+o.itemClass+'">');$(this).nextUntil("input").addBack().wrapAll(i),"disabled"===$(this).attr("disabled")&&$(this).parent().addClass(o.disabledClass)}),i=e.find("."+o.itemClass),this.$items=i,"vertical"===this.orientation&&i.each(function(i,t){e.prepend(t)}),e.append(a)},l.prototype.setSlider=function(){var i=this.$inputs.filter(":checked");if(0<i.length){var t,s,a,n,l,o,e,r,d,h,c,u=this.options,p=this.$inputs,f=this.$bar,C=this.$fill,v=this.$handle,m=u.fillOrigin,b=u.fillOffset;if(i.next("."+u.labelClass).addClass(u.activeClass).parents("."+u.itemClass).addClass(u.activeClass),p.not(i).next("."+u.labelClass).removeClass(u.activeClass).parents("."+u.itemClass).removeClass(u.activeClass),a=Number(i.attr("data-level")),s=this.getValueFromLevel(a),e=this.getPositionFromValue(s),d=this.getBarOffset(),null!==m&&(r=this.getPositionFromValue(m))||null!==b&&(r=this.getPositionFromValue(b)))if(n=null!==m?this.getLevelFromValue(m):this.getLevelFromValue(b),C.css("opacity","").addClass("offseted"),this.$handleOrigin?t=this.$handleOrigin:(t=$('<span class="'+this.options.handleClass+" "+u.handleClass+'_origin">'),this.$handleOrigin=t,C.after(t),t[0].style[this.DIRECTION_STYLE]=this.dimensionToPercent(r)+"%"),n<=a)switch(f.removeClass(u.inverseClass),t.removeClass(u.inverseClass).css("opacity",""),this.orientation){case"horizontal":case"vertical":h=e-r,c=r}else if(null!==m)switch(f.addClass(u.inverseClass),t.addClass(u.inverseClass),this.orientation){case"horizontal":h=r-e,c=e;break;case"vertical":h=r+e,c=e}else t.css("opacity",0),C.css("opacity",0),h=2*d,c=e;else h=e,c=0;C.css("visibility",""),C[0].style[this.DIRECTION_STYLE]=this.dimensionToPercent(c)+"
8%","vertical"===this.orientation?(C[0].style[this.DIMENSION]=100-this.dimensionToPercent(h)+"%",v[0].style[this.DIRECTION_STYLE]=100-this.dimensionToPercent(e)+"%"):(C[0].style[this.DIMENSION]=this.dimensionToPercent(h)+"%",v[0].style[this.DIRECTION_STYLE]=this.dimensionToPercent(e)+"%"),this.level=a,this.value=s,0,l=n?Math.min(n,a):1,o=n?Math.max(n,a):a,p.each(function(){0;var i=$(this),t=i.next("label").find("."+u.dotClass),s=Number(i.attr("data-level")),e=null!==b&&a<n;s===a?t.css("opacity","0"):s<l||o<s||e?t.css("opacity","").removeClass(u.dotUnderClass):t.css("opacity","").addClass(u.dotUnderClass)})}},l.prototype.addInteraction=function(){var i=this,t=this.$bearer,s=this.$inputs,e=this.$handle;s.on("change."+i.identifier,function(){$(this).prop("checked",!0),i.options.onSelect&&i.options.onSelect($(this),[s]),i.setSlider(),t.trigger("radiochange",{origin:i.identifier})}).on("focusin."+i.identifier,function(){e.addClass(i.options.focusClass)}).on("focusout."+i.identifier,function(){e.removeClass(i.options.focusClass)})},l.prototype.setDisabled=function(i){this.options.isDisabled=!0;var t=this.$bearer,s=this.$labels,e=this.$inputs,a=this.options.disabledClass;$.merge(s,e).each(function(){$(this).off("click change")}),e.each(function(){$(this).prop("disabled",!0).parent().addClass(a)}),"function"==typeof i&&i(s,e),t.addClass(a).trigger("radiodisabled",{origin:this.identifier})},l.prototype.setEnabled=function(i){this.options.isDisabled=!1;var t=this,s=t.$bearer,e=t.$labels,a=t.$inputs,n=t.options.disabledClass;a.not(t.$inputsDisabled).each(function(){$(this).prop("disabled",!1).parent().removeClass(n)}),t.addInteraction(),"function"==typeof i&&i(e,a),s.trigger("radiodenabled",{origin:this.identifier}).removeClass(n)},l.prototype.getValue=function(){return this.value},l.prototype.setValue=function(i){i!==this.value&&this.$inputs.filter("[value="+i+"]").trigger("click",{origin:this.identifier})},l.prototype.getLevelFromValue=function(i){var t;return t=Number(this.$inputs.filter('[value="'+i+'"]').attr("data-level")),t=Number.isNaN(t)?0:t},l.prototype.getValueFromLevel=function(i){return this.$inputs.filter("[data-level="+i+"]").attr("value")},l.prototype.getPositionFromValue=function(i){var t,s,e;return(e=this.$dots.filter('[data-value="'+i+'"]'))&&0<e.length&&(s={width:e.outerWidth(),height:e.outerHeight()}[this.DIMENSION],t=e.position()[this.DIRECTION]+s/2),t=Number.isNaN(t)?0:t},l.prototype.getBarOffset=function(){var i;return i={width:this.$bar.outerHeight(),height:this.$bar.outerWidth()}[this.DIMENSION]/2,i=Number.isNaN(i)?0:i},l.prototype.dimensionToPercent=function(i){return 100*i/{width:this.$bearer.outerWidth(),height:this.$bearer.outerHeight()}[this.DIMENSION]},l.prototype.destroy=function(){var s=this.options;this.$document.off("."+this.identifier),this.$window.off("."+this.identifier),this.$bearer.off("."+this.identifier).removeData("plugin_"+a),this.$inputs.off("."+this.identifier),this.$bearer.removeAttr("data-radioslider").removeClass(s.sliderClass+" "+s[this.orientation+"Class"]+" "+s.fitClass+" "+s.animationClass+" "+s.sliderClass+"_"+s.size),this.$dots.remove(),this.$bar.remove(),this.$items.children().unwrap().each(function(){var i,t=$(this);t.removeAttr("data-level").removeClass(s.inputClass+" "+s.labelClass+" "+s.textClass),0<this.children.length&&(i=t.children().html(),t.children().remove(),t.html(i))}),this.$bearer.find('[class=""]').removeAttr("class")},$.fn[a]=function(s){var e=Array.prototype.slice.call(arguments,1);return this.each(function(){var i=$(this),t=i.data("plugin_"+a);t||i.data("plugin_"+a,t=new l(this,s)),"string"==typeof s&&t[s].apply(t,e)})}}(jQuery);
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.