mirror of
https://github.com/Mottie/tablesorter.git
synced 2024-11-15 23:54:22 +00:00
2 lines
1.6 KiB
JavaScript
2 lines
1.6 KiB
JavaScript
/*! Parser: metric */
|
|
!function(a){"use strict";var b={"Y|Yotta|yotta":[1e24,Math.pow(1024,8)],"Z|Zetta|zetta":[1e21,Math.pow(1024,7)],"E|Exa|exa":[1e18,Math.pow(1024,6)],"P|Peta|peta":[1e15,Math.pow(1024,5)],"T|Tera|tera":[1e12,Math.pow(1024,4)],"G|Giga|giga":[1e9,Math.pow(1024,3)],"M|Mega|mega":[1e6,Math.pow(1024,2)],"k|Kilo|kilo":[1e3,1024],"h|hecto":[100,100],"da|deka":[10,10],"d|deci":[.1,.1],"c|centi":[.01,.01],"m|milli":[.001,.001],"µ|micro":[1e-6,1e-6],"n|nano":[1e-9,1e-9],"p|pico":[1e-12,1e-12],"f|femto":[1e-15,1e-15],"a|atto":[1e-18,1e-18],"z|zepto":[1e-21,1e-21],"y|yocto":[1e-24,1e-24]},c=/^[b|bit|byte|o|octet]/i;a.tablesorter.addParser({id:"metric",is:function(){return!1},format:function(d,e,f,g){var h,i,j,k,l="m|meter",m=a.tablesorter.formatFloat(d.replace(/[^\w,. \-()]/g,""),e),n=e.config.$headerIndexed[g],o=n.data("metric");if(o||(h=(n.attr("data-metric-name")||l).split("|"),j=n.attr("data-metric-name-full")||"",k=n.attr("data-metric-name-abbr")||"",o=[j||h[1]||h[0].substring(1),k||h[0]],i=c.test(o.join("")),o[2]=new RegExp("(\\d+)(\\s+)?([Zz]etta|[Ee]xa|[Pp]eta|[Tt]era|[Gg]iga|[Mm]ega|kilo|hecto|deka|deci|centi|milli|micro|nano|pico|femto|atto|zepto|yocto)("+((""===j?"":j+"|"+k)||(i?o[0].toLowerCase()+"|"+o[0].toUpperCase():o[0])+"|"+(i?o[1].toLowerCase()+"|"+o[1].toUpperCase():o[1]))+")"),o[3]=new RegExp("(\\d+)(\\s+)?(Z|E|P|T|G|M|k|h|da|d|c|m|µ|n|p|f|a|z|y)("+(k||(i?o[1].toLowerCase()+"|"+o[1].toUpperCase():o[1]))+")"),n.data("metric",o)),h=d.match(o[2])||d.match(o[3]))for(l in b)if(h[3].match(l))return i=c.test(h[4])?1:0,m*b[l][i];return m},type:"numeric"})}(jQuery); |