inenvmon_server/webapp/static/js/justgage.min.js

2 lines
18 KiB
JavaScript
Executable File

!function(n,i){"function"==typeof define&&define.amd?define(["raphael"],function(t){return n.JustGage=i(t)}):"object"==typeof module&&module.exports?module.exports=n.JustGage=i(require("raphael")):n.JustGage=i(Raphael)}(this,function(T){function t(t){var A=this;if(A.events={},N(t))return!1;if(N(t.id)){if(N(t.parentNode))return!1;A.node=t.parentNode}else if(A.node=document.getElementById(t.id),!A.node)return!1;var n,i,e,a,o,r,l,c,f,m,g,s,u,d,p,x,h,v,b,y=A.node.dataset?A.node.dataset:{},M=!N(t.defaults)&&t.defaults;!1!==M&&delete(t=function(t){t=t||{};for(var n=1;n<arguments.length;n++)if(arguments[n])for(var i in arguments[n])arguments[n].hasOwnProperty(i)&&(t[i]=arguments[n][i]);return t}({},t,M)).defaults,A.config={id:t.id,value:C("value",t,y,0,"float"),defaults:C("defaults",t,y,0,!1),parentNode:C("parentNode",t,y,null),width:C("width",t,y,null),height:C("height",t,y,null),valueFontColor:C("valueFontColor",t,y,"#010101"),valueFontFamily:C("valueFontFamily",t,y,"Arial"),symbol:C("symbol",t,y,""),min:C("min",t,y,0,"float"),minTxt:C("minTxt",t,y,!1),max:C("max",t,y,100,"float"),maxTxt:C("maxTxt",t,y,!1),reverse:C("reverse",t,y,!1),humanFriendlyDecimal:C("humanFriendlyDecimal",t,y,0),textRenderer:C("textRenderer",t,y,null),onAnimationEnd:C("onAnimationEnd",t,y,null),gaugeWidthScale:C("gaugeWidthScale",t,y,1),gaugeColor:C("gaugeColor",t,y,"#edebeb"),label:C("label",t,y,""),labelFontColor:C("labelFontColor",t,y,"#b3b3b3"),shadowOpacity:C("shadowOpacity",t,y,.2),shadowSize:C("shadowSize",t,y,5),shadowVerticalOffset:C("shadowVerticalOffset",t,y,3),levelColors:C("levelColors",t,y,["#a9d70b","#f9c802","#ff0000"],"array",","),startAnimationTime:C("startAnimationTime",t,y,700),startAnimationType:C("startAnimationType",t,y,">"),refreshAnimationTime:C("refreshAnimationTime",t,y,700),refreshAnimationType:C("refreshAnimationType",t,y,">"),donutStartAngle:C("donutStartAngle",t,y,90),valueMinFontSize:C("valueMinFontSize",t,y,16),labelMinFontSize:C("labelMinFontSize",t,y,10),minLabelMinFontSize:C("minLabelMinFontSize",t,y,10),maxLabelMinFontSize:C("maxLabelMinFontSize",t,y,10),hideValue:C("hideValue",t,y,!1),hideMinMax:C("hideMinMax",t,y,!1),showInnerShadow:C("showInnerShadow",t,y,!1),humanFriendly:C("humanFriendly",t,y,!1),noGradient:C("noGradient",t,y,!1),donut:C("donut",t,y,!1),relativeGaugeSize:C("relativeGaugeSize",t,y,!1),counter:C("counter",t,y,!1),decimals:C("decimals",t,y,0),customSectors:C("customSectors",t,y,{}),formatNumber:C("formatNumber",t,y,!1),pointer:C("pointer",t,y,!1),pointerOptions:C("pointerOptions",t,y,{}),displayRemaining:C("displayRemaining",t,y,!1)},A.config.value>A.config.max&&(A.config.value=A.config.max),A.config.value<A.config.min&&(A.config.value=A.config.min),A.originalValue=C("value",t,y,-1,"float"),null!==A.config.id&&null!==document.getElementById(A.config.id)?A.canvas=T(A.config.id,"100%","100%"):null!==A.config.parentNode&&(A.canvas=T(A.config.parentNode,"100%","100%")),i=!0===A.config.relativeGaugeSize?!0===A.config.donut?(A.canvas.setViewBox(0,0,200,200,!0),n=200):(A.canvas.setViewBox(0,0,200,100,!0),n=200,100):null!==A.config.width&&null!==A.config.height?(n=A.config.width,A.config.height):null!==A.config.parentNode?(A.canvas.setViewBox(0,0,200,100,!0),n=200,100):(n=1*W(document.getElementById(A.config.id),"width").slice(0,-2),1*W(document.getElementById(A.config.id),"height").slice(0,-2)),b=(v=(h=!0===A.config.donut?(i<n?e=a=i:a=e=n,l=(i-a)/2,c=16<a/6.4?a/5.4:18,s=f=(r=(n-e)/2)+e/2,u=(m=""!==A.config.label?l+a/1.85:l+a/1.7)+(g=10<a/16?a/16:10),d=10<a/16?a/16:10,p=r+e/10+e/6.666666666666667*A.config.gaugeWidthScale/2,x=u,10<a/16?a/16:10):(i<n?n<(e=2*(a=i))&&(e/=o=e/n,a/=o):a=n<i?(e=n)/2:.5*(e=n),r=(n-e)/2,l=(i-a)/2,c=a/6.5>A.config.valueMinFontSize?a/6.5:A.config.valueMinFontSize,f=r+e/2,m=l+a/1.275,g=a/16>A.config.labelMinFontSize?a/16:A.config.labelMinFontSize,s=r+e/2,u=m+c/2+5,d=a/16>A.config.minLabelMinFontSize?a/16:A.config.minLabelMinFontSize,p=r+e/10+e/6.666666666666667*A.config.gaugeWidthScale/2,x=u,a/16>A.config.maxLabelMinFontSize?a/16:A.config.maxLabelMinFontSize),r+e-e/10-e/6.666666666666667*A.config.gaugeWidthScale/2),u),A.params={canvasW:n,canvasH:i,widgetW:e,widgetH:a,dx:r,dy:l,valueFontSize:c,valueX:f,valueY:m,labelFontSize:g,labelX:s,labelY:u,minFontSize:d,minX:p,minY:x,maxFontSize:h,maxX:v,maxY:b},b=null,A.canvas.customAttributes.pki=function(t,n,i,e,a,o,r,l,c,f){var m,g,s,u,d,p;return n<0&&(i-=n,t-=n,n=0),c?(m=(1-2*(t-n)/(i-n))*Math.PI,p="M"+((u=e/2+o)-(s=(g=e/2-e/30)-e/6.666666666666667*l))+","+(d=a/2+r)+" ",p+="L"+(u-g)+","+d+" ",(i-n)/2<t-n&&(p+="A"+g+","+g+" 0 0 1 "+(u+g)+","+d+" "),p+="A"+g+","+g+" 0 0 1 "+(u+g*Math.cos(m))+","+(d-g*Math.sin(m))+" ",p+="L"+(u+s*Math.cos(m))+","+(d-s*Math.sin(m))+" ",(i-n)/2<t-n&&(p+="A"+s+","+s+" 0 0 0 "+(u+s)+","+d+" ")):(m=(1-(t-n)/(i-n))*Math.PI,p="M"+((u=e/2+o)-(s=(g=e/2-e/10)-e/6.666666666666667*l))+","+(d=a/1.25+r)+" ",p+="L"+(u-g)+","+d+" ",p+="A"+g+","+g+" 0 0 1 "+(u+g*Math.cos(m))+","+(d-g*Math.sin(m))+" ",p+="L"+(u+s*Math.cos(m))+","+(d-s*Math.sin(m))+" "),p+="A"+s+","+s+" 0 0 0 "+(u-s)+","+d+" ",{path:p+="Z "}},A.canvas.customAttributes.ndl=function(t,n,i,e,a,o,r,l,c){var f,m,g,s,u,d,p,x,h,v,b,y,M,S=3.5*e/100,F=e/15,w=e/100;return null!=A.config.pointerOptions.toplength&&null!=A.config.pointerOptions.toplength&&(S=A.config.pointerOptions.toplength),null!=A.config.pointerOptions.bottomlength&&null!=A.config.pointerOptions.bottomlength&&(F=A.config.pointerOptions.bottomlength),null!=A.config.pointerOptions.bottomwidth&&null!=A.config.pointerOptions.bottomwidth&&(w=A.config.pointerOptions.bottomwidth),M=(y=(b=(v=(h=(x=(p=(d=(u=(s=c?(f=(1-2*(t-n)/(i-n))*Math.PI,g=(m=e/2-e/30)-e/6.666666666666667*l,a/2+r):(f=(1-(t-n)/(i-n))*Math.PI,g=(m=e/2-e/10)-e/6.666666666666667*l,a/1.25+r),e/2+o+m*Math.cos(f)),a-(a-s)-m*Math.sin(f)),e/2+o+g*Math.cos(f)),a-(a-s)-g*Math.sin(f)),u+S*Math.cos(f)),d-S*Math.sin(f)),p-F*Math.cos(f)),x+F*Math.sin(f)),"M"+(b+w*Math.sin(f))+","+(y+w*Math.cos(f))+" "),M+="L"+(b-w*Math.sin(f))+","+(y-w*Math.cos(f))+" ",M+="L"+h+","+v+" ",{path:M+="Z "}},A.gauge=A.canvas.path().attr({stroke:"none",fill:A.config.gaugeColor,pki:[A.config.max,A.config.min,A.config.max,A.params.widgetW,A.params.widgetH,A.params.dx,A.params.dy,A.config.gaugeWidthScale,A.config.donut,A.config.reverse]}),A.level=A.canvas.path().attr({stroke:"none",fill:O(A.config.value,(A.config.value-A.config.min)/(A.config.max-A.config.min),A.config.levelColors,A.config.noGradient,A.config.customSectors),pki:[A.config.min,A.config.min,A.config.max,A.params.widgetW,A.params.widgetH,A.params.dx,A.params.dy,A.config.gaugeWidthScale,A.config.donut,A.config.reverse]}),A.config.donut&&A.level.transform("r"+A.config.donutStartAngle+", "+(A.params.widgetW/2+A.params.dx)+", "+(A.params.widgetH/2+A.params.dy)),A.config.pointer&&(A.needle=A.canvas.path().attr({stroke:N(A.config.pointerOptions.stroke)?"none":A.config.pointerOptions.stroke,"stroke-width":N(A.config.pointerOptions.stroke_width)?0:A.config.pointerOptions.stroke_width,"stroke-linecap":N(A.config.pointerOptions.stroke_linecap)?"square":A.config.pointerOptions.stroke_linecap,fill:N(A.config.pointerOptions.color)?"#000000":A.config.pointerOptions.color,ndl:[A.config.min,A.config.min,A.config.max,A.params.widgetW,A.params.widgetH,A.params.dx,A.params.dy,A.config.gaugeWidthScale,A.config.donut]}),A.config.donut&&A.needle.transform("r"+A.config.donutStartAngle+", "+(A.params.widgetW/2+A.params.dx)+", "+(A.params.widgetH/2+A.params.dy))),A.txtValue=A.canvas.text(A.params.valueX,A.params.valueY,0),A.txtValue.attr({"font-size":A.params.valueFontSize,"font-weight":"bold","font-family":A.config.valueFontFamily,fill:A.config.valueFontColor,"fill-opacity":"0"}),E(A.txtValue,A.params.valueFontSize,A.params.valueY),A.txtLabel=A.canvas.text(A.params.labelX,A.params.labelY,A.config.label),A.txtLabel.attr({"font-size":A.params.labelFontSize,"font-weight":"normal","font-family":"Arial",fill:A.config.labelFontColor,"fill-opacity":"0"}),E(A.txtLabel,A.params.labelFontSize,A.params.labelY);var S=A.config.min;A.config.reverse&&(S=A.config.max),A.txtMinimum=S,A.config.minTxt?A.txtMinimum=A.config.minTxt:A.config.humanFriendly?A.txtMinimum=k(S,A.config.humanFriendlyDecimal):A.config.formatNumber&&(A.txtMinimum=L(S)),A.txtMin=A.canvas.text(A.params.minX,A.params.minY,A.txtMinimum),A.txtMin.attr({"font-size":A.params.minFontSize,"font-weight":"normal","font-family":"Arial",fill:A.config.labelFontColor,"fill-opacity":A.config.hideMinMax||A.config.donut?"0":"1"}),E(A.txtMin,A.params.minFontSize,A.params.minY);var F=A.config.max;A.config.reverse&&(F=A.config.min),A.txtMaximum=F,A.config.maxTxt?A.txtMaximum=A.config.maxTxt:A.config.humanFriendly?A.txtMaximum=k(F,A.config.humanFriendlyDecimal):A.config.formatNumber&&(A.txtMaximum=L(F)),A.txtMax=A.canvas.text(A.params.maxX,A.params.maxY,A.txtMaximum),A.txtMax.attr({"font-size":A.params.maxFontSize,"font-weight":"normal","font-family":"Arial",fill:A.config.labelFontColor,"fill-opacity":A.config.hideMinMax||A.config.donut?"0":"1"}),E(A.txtMax,A.params.maxFontSize,A.params.maxY);var w=A.canvas.canvas.childNodes[1],z="http://www.w3.org/2000/svg";if("undefined"!==Y&&Y<9||("undefined"!==Y?function t(n){void 0!==document.createElementNS?n():setTimeout(function(){t(n)},100)}(function(){A.generateShadow(z,w)}):A.generateShadow(z,w)),z=null,A.config.textRenderer?A.originalValue=A.config.textRenderer(A.originalValue):A.config.humanFriendly?A.originalValue=k(A.originalValue,A.config.humanFriendlyDecimal)+A.config.symbol:A.config.formatNumber?A.originalValue=L(A.originalValue)+A.config.symbol:A.config.displayRemaining?A.originalValue=(1*(A.config.max-A.originalValue)).toFixed(A.config.decimals)+A.config.symbol:A.originalValue=(1*A.originalValue).toFixed(A.config.decimals)+A.config.symbol,!0===A.config.counter){this.bindEvent("raphael.anim.finish",function(){A.txtValue.attr({text:A.originalValue}),E(A.txtValue,A.params.valueFontSize,A.params.valueY)}),this.bindEvent("raphael.anim.frame",function(){var t=A.level.attr("pki")[0];A.config.reverse&&(t=1*A.config.max+1*A.config.min-1*A.level.attr("pki")[0]),A.config.textRenderer?A.txtValue.attr("text",A.config.textRenderer(Math.floor(t))):A.config.humanFriendly?A.txtValue.attr("text",k(Math.floor(t),A.config.humanFriendlyDecimal)+A.config.symbol):A.config.formatNumber?A.txtValue.attr("text",L(Math.floor(t))+A.config.symbol):A.config.displayRemaining?A.txtValue.attr("text",(1*(A.config.max-t)).toFixed(A.config.decimals)+A.config.symbol):A.txtValue.attr("text",(1*t).toFixed(A.config.decimals)+A.config.symbol),E(A.txtValue,A.params.valueFontSize,A.params.valueY),t=null})}else{this.bindEvent("raphael.anim.start",function(){A.txtValue.attr({text:A.originalValue}),E(A.txtValue,A.params.valueFontSize,A.params.valueY)})}var V=A.config.value;A.config.reverse&&(V=1*A.config.max+1*A.config.min-1*A.config.value),A.level.animate({pki:[V,A.config.min,A.config.max,A.params.widgetW,A.params.widgetH,A.params.dx,A.params.dy,A.config.gaugeWidthScale,A.config.donut,A.config.reverse]},A.config.startAnimationTime,A.config.startAnimationType,A.config.onAnimationEnd),A.config.pointer&&A.needle.animate({ndl:[V,A.config.min,A.config.max,A.params.widgetW,A.params.widgetH,A.params.dx,A.params.dy,A.config.gaugeWidthScale,A.config.donut]},A.config.startAnimationTime,A.config.startAnimationType),A.txtValue.animate({"fill-opacity":A.config.hideValue?"0":"1"},A.config.startAnimationTime,A.config.startAnimationType),A.txtLabel.animate({"fill-opacity":"1"},A.config.startAnimationTime,A.config.startAnimationType)}function e(t,n,i){switch(n){case"valueFontColor":if(!a(i))break;t.txtValue.attr({fill:i});break;case"labelFontColor":if(!a(i))break;t.txtMin.attr({fill:i}),t.txtMax.attr({fill:i}),t.txtLabel.attr({fill:i})}}function C(t,n,i,e,a){var o=e,r=!1;if(!N(t)&&(!N(i)&&"object"==typeof i&&t in i?(o=i[t],r=!0):!N(n)&&"object"==typeof n&&t in n?(o=n[t],r=!0):o=e,!0===r&&!N(a)))switch(a){case"int":o=parseInt(o,10);break;case"float":o=parseFloat(o)}return o}function N(t){return null==t}function O(t,n,i,e,a){var o,r,l,c,f,m,g,s,u,d,p,x,h,v,b=a&&a.ranges&&0<a.ranges.length;e=e||b;if(b){!0===a.percents&&(t=100*n);for(var y=0;y<a.ranges.length;y++)if(t>=a.ranges[y].lo&&t<=a.ranges[y].hi)return a.ranges[y].color}if(1===(o=i.length))return i[0];for(r=e?1/o:1/(o-1),l=[],y=0;y<i.length;y++)c=e?r*(y+1):r*y,f=parseInt(S(i[y]).substring(0,2),16),m=parseInt(S(i[y]).substring(2,4),16),g=parseInt(S(i[y]).substring(4,6),16),l[y]={pct:c,color:{r:f,g:m,b:g}};if(0===n)return"rgb("+[l[0].color.r,l[0].color.g,l[0].color.b].join(",")+")";for(var M=0;M<l.length;M++)if(n<=l[M].pct)return e?"rgb("+[l[M].color.r,l[M].color.g,l[M].color.b].join(",")+")":(s=l[M-1],d=(u=l[M]).pct-s.pct,x=1-(p=(n-s.pct)/d),h=p,"rgb("+[(v={r:Math.floor(s.color.r*x+u.color.r*h),g:Math.floor(s.color.g*x+u.color.g*h),b:Math.floor(s.color.b*x+u.color.b*h)}).r,v.g,v.b].join(",")+")")}function E(t){(!Y||9<Y)&&t.node.firstChild.attributes.dy&&(t.node.firstChild.attributes.dy.value=0)}function S(t){return"#"==t.charAt(0)?t.substring(1,7):t}function a(t){return"string"==typeof t&&/^#([0-9A-Fa-f]{3}){1,2}$/.test(t)}function k(t,n){var i,e,a;for(i=Math.pow(10,n),a=" KMGTPE",e=0,1e3;(1e3<=t||t<=-1e3)&&++e<a.length;)t/=1e3;return e=a.length<=e?a.length-1:e,Math.round(t*i)/i+a[e]}function L(t){var n=t.toString().split(".");return n[0]=n[0].replace(/\B(?=(\d{3})+(?!\d))/g,","),n.join(".")}function W(t,n){var i="";return document.defaultView&&document.defaultView.getComputedStyle?i=document.defaultView.getComputedStyle(t,"").getPropertyValue(n):t.currentStyle&&(n=n.replace(/\-(\w)/g,function(t,n){return n.toUpperCase()}),i=t.currentStyle[n]),i}t.prototype.bindEvent=function(t,n){t+="."+this.level.id,this.events[t]&&T.eve.off(t,this.events[t]),T.eve.on(t,n),this.events[t]=n},t.prototype.refresh=function(t,n,i,e){var a,o,r=this;n=n||null,i=i||null,null!==(e=e||null)&&(r.config.label=e,r.txtLabel.attr({text:r.config.label}),E(r.txtLabel,r.params.labelFontSize,r.params.labelY)),null!==i&&(r.config.min=i,r.txtMinimum=r.config.min,r.config.minTxt?r.txtMinimum=r.config.minTxt:r.config.humanFriendly?r.txtMinimum=k(r.config.min,r.config.humanFriendlyDecimal):r.config.formatNumber&&(r.txtMinimum=L(r.config.min)),r.config.reverse?(r.txtMax.attr({text:r.txtMinimum}),E(r.txtMax,r.params.minFontSize,r.params.minY)):(r.txtMin.attr({text:r.txtMinimum}),E(r.txtMin,r.params.minFontSize,r.params.minY))),null!==n&&(r.config.max=n,r.txtMaximum=r.config.max,r.config.maxTxt?r.txtMaximum=r.config.maxTxt:r.config.humanFriendly?r.txtMaximum=k(r.config.max,r.config.humanFriendlyDecimal):r.config.formatNumber&&(r.txtMaximum=L(r.config.max)),r.config.reverse?(r.txtMin.attr({text:r.txtMaximum}),E(r.txtMin,r.params.maxFontSize,r.params.maxY)):(r.txtMax.attr({text:r.txtMaximum}),E(r.txtMax,r.params.maxFontSize,r.params.maxY))),1*(a=t)>1*r.config.max&&(t=1*r.config.max),1*t<1*r.config.min&&(t=1*r.config.min),o=O(t,(t-r.config.min)/(r.config.max-r.config.min),r.config.levelColors,r.config.noGradient,r.config.customSectors),a=r.config.textRenderer?r.config.textRenderer(a):r.config.humanFriendly?k(a,r.config.humanFriendlyDecimal)+r.config.symbol:r.config.formatNumber?L((1*a).toFixed(r.config.decimals))+r.config.symbol:r.config.displayRemaining?(1*(r.config.max-a)).toFixed(r.config.decimals)+r.config.symbol:(1*a).toFixed(r.config.decimals)+r.config.symbol,r.originalValue=a,r.config.value=1*t,r.config.counter||(r.txtValue.attr({text:a}),E(r.txtValue,r.params.valueFontSize,r.params.valueY));var l=r.config.value;r.config.reverse&&(l=1*r.config.max+1*r.config.min-1*r.config.value),r.level.animate({pki:[l,r.config.min,r.config.max,r.params.widgetW,r.params.widgetH,r.params.dx,r.params.dy,r.config.gaugeWidthScale,r.config.donut,r.config.reverse],fill:o},r.config.refreshAnimationTime,r.config.refreshAnimationType,r.config.onAnimationEnd),r.config.pointer&&r.needle.animate({ndl:[l,r.config.min,r.config.max,r.params.widgetW,r.params.widgetH,r.params.dx,r.params.dy,r.config.gaugeWidthScale,r.config.donut]},r.config.refreshAnimationTime,r.config.refreshAnimationType),i=null},t.prototype.update=function(t,n){if(t instanceof Object)for(var i in t)e(this,i,n=t[i]);else e(this,t,n)},t.prototype.destroy=function(){for(var t in this.node&&this.node.parentNode&&(this.node.innerHTML=""),this.events)T.eve.off(t,this.events[t]);this.events={}},t.prototype.generateShadow=function(t,n){var i,e,a,o,r,l,c,f=this,m="inner-shadow-"+f.config.id;(i=document.createElementNS(t,"filter")).setAttribute("id",m),n.appendChild(i),(e=document.createElementNS(t,"feOffset")).setAttribute("dx",0),e.setAttribute("dy",f.config.shadowVerticalOffset),i.appendChild(e),(a=document.createElementNS(t,"feGaussianBlur")).setAttribute("result","offset-blur"),a.setAttribute("stdDeviation",f.config.shadowSize),i.appendChild(a),(o=document.createElementNS(t,"feComposite")).setAttribute("operator","out"),o.setAttribute("in","SourceGraphic"),o.setAttribute("in2","offset-blur"),o.setAttribute("result","inverse"),i.appendChild(o),(r=document.createElementNS(t,"feFlood")).setAttribute("flood-color","black"),r.setAttribute("flood-opacity",f.config.shadowOpacity),r.setAttribute("result","color"),i.appendChild(r),(l=document.createElementNS(t,"feComposite")).setAttribute("operator","in"),l.setAttribute("in","color"),l.setAttribute("in2","inverse"),l.setAttribute("result","shadow"),i.appendChild(l),(c=document.createElementNS(t,"feComposite")).setAttribute("operator","over"),c.setAttribute("in","shadow"),c.setAttribute("in2","SourceGraphic"),i.appendChild(c),f.config.showInnerShadow&&(f.canvas.canvas.childNodes[2].setAttribute("filter","url("+window.location.pathname+"#"+m+")"),f.canvas.canvas.childNodes[3].setAttribute("filter","url("+window.location.pathname+"#"+m+")")),c=null};var Y=function(){for(var t=3,n=document.createElement("div"),i=n.getElementsByTagName("i");n.innerHTML="\x3c!--[if gt IE "+ ++t+"]><i></i><![endif]--\x3e",i[0];);return 4<t?t:void 0}();return t});
//# sourceMappingURL=justgage.min.js.map