{"version":3,"sources":["webpack:///./src/services/peerinfo/peerinfo.service.ts","webpack:///./src/services/peerinfo/peerinfo.ts","webpack:///./src/components/Validators/ValidatorStats.vue?c97d","webpack:///./src/components/rows/ValidatorRow/CumulativeBar.vue?2744","webpack:///../../../src/components/VItemGroup/VItemGroup.ts","webpack:///./node_modules/chroma-js/chroma.js","webpack:///./src/components/Validators/StakingMetadata.vue?e1b2","webpack:///./src/views/Validators.vue?419b","webpack:///./src/components/rows/ValidatorRow/ValidatorRow.vue?b4c9","webpack:///./src/components/rows/ValidatorRow/CumulativeBar.vue?8048","webpack:///src/components/rows/ValidatorRow/CumulativeBar.vue","webpack:///./src/components/rows/ValidatorRow/CumulativeBar.vue?88a3","webpack:///./src/components/rows/ValidatorRow/CumulativeBar.vue","webpack:///./src/components/rows/ValidatorRow/ValidatorRow.vue","webpack:///./src/components/rows/ValidatorRow/ValidatorRow.vue?6c9d","webpack:///./src/components/rows/ValidatorRow/ValidatorRow.vue?cbe7","webpack:///./src/components/misc/ValidatorPaginationControls.vue?682c","webpack:///./src/components/misc/ValidatorPaginationControls.vue","webpack:///./src/components/misc/ValidatorPaginationControls.vue?9807","webpack:///./src/components/misc/ValidatorPaginationControls.vue?98b7","webpack:///./src/components/Validators/Metadata.vue?cc05","webpack:///./src/components/Validators/PeerCount.vue?5287","webpack:///./src/components/Validators/PeerCount.vue","webpack:///./src/components/Validators/PeerCount.vue?99c1","webpack:///./src/components/Validators/PeerCount.vue?dc7b","webpack:///./src/components/Validators/PeerStake.vue?3329","webpack:///./src/components/Validators/PeerStake.vue","webpack:///./src/components/Validators/PeerStake.vue?be32","webpack:///./src/components/Validators/PeerStake.vue?0c84","webpack:///./src/components/Validators/ValidatorStats.vue?b2b4","webpack:///./src/components/Validators/ValidatorStats.vue","webpack:///./src/components/Validators/ValidatorStats.vue?6a0e","webpack:///./src/components/Validators/ValidatorStats.vue?643f","webpack:///./src/components/Validators/Metadata.vue","webpack:///./src/components/Validators/Metadata.vue?2b97","webpack:///./src/components/Validators/Metadata.vue?9ec2","webpack:///./src/components/Validators/StakingMetadata.vue?3fab","webpack:///./src/components/Validators/StakingMetadata.vue","webpack:///./src/components/Validators/StakingMetadata.vue?8301","webpack:///./src/components/Validators/StakingMetadata.vue?954c","webpack:///./src/views/Validators.vue","webpack:///./src/views/Validators.vue?035d","webpack:///./src/views/Validators.vue?2203","webpack:///./src/views/Validators.vue?c1a3","webpack:///./src/components/Validators/Metadata.vue?17b1","webpack:///./src/components/Validators/StakingMetadata.vue?d3be","webpack:///./src/components/Validators/PeerCount.vue?6fdc","webpack:///./src/components/misc/ValidatorPaginationControls.vue?6680","webpack:///./src/components/rows/ValidatorRow/ValidatorRow.vue?dd7d","webpack:///./src/components/Validators/PeerStake.vue?c292","webpack:///./src/services/peerinfo/index.ts"],"names":["PEER_INFO_URL","removePrefix","s","includes","split","getPeerInfo","fetch","headers","then","response","json","data","stakeInfo","res","totalStake","peerInfo","sort","a","b","version","localeCompare","undefined","numeric","reverse","map","peer","nodeCount","stakeAmount","stakePercent","parseFloat","toFixed","offline","shift","push","getVersionsOnly","filter","i","versionsOnlyMap","allVersions","v","uniqueVersions","item","ar","indexOf","patches","versions","forEach","patchesForVersion","patch","categorical","lower","brightnessFactor","getVersionsColorMap","datamap","colors","key","j","length","brighten","hex","getStakesOnly","getTotalStake","allStakes","reduce","acc","val","BaseItemGroup","name","props","activeClass","type","default","mandatory","max","Number","multiple","Boolean","internalLazyValue","this","value","items","computed","classes","themeClasses","selectedIndex","selectedItem","selectedItems","selectedValues","internalValue","Array","toggleMethod","watch","created","methods","genData","class","getValue","onClick","register","index","unregister","valueIndex","updateInternalValue","updateItem","updateItemsState","updateMultiple","updateSingle","updateMandatory","defaultValue","isSame","render","h","$slots","provide","itemGroup","global","factory","module","exports","limit","x","min","clip_rgb","rgb","_clipped","_unclipped","slice","classToType","list","toLowerCase","obj","Object","prototype","toString","call","unpack","args","keyOrder","k","last","l","PI","Math","utils","TWOPI","PITHIRD","DEG2RAD","RAD2DEG","input","format","autodetect","last$1","clip_rgb$1","type$1","Color","len","arguments","me","constructor","mode","sorted","p","chk","test","apply","Error","_rgb","join","Color_1","chroma","Function","bind","concat","chroma_1","unpack$1","rgb2cmyk","ref","r","g","f","c","m","y","rgb2cmyk_1","unpack$2","cmyk2rgb","alpha","cmyk2rgb_1","unpack$3","type$2","cmyk","unpack$4","last$2","rnd","round","hsl2css","hsla","hsl2css_1","unpack$5","rgb2hsl","NaN","rgb2hsl_1","unpack$6","last$3","rgb2css","rgba","substr","rgb2css_1","unpack$7","round$1","hsl2rgb","assign","t3","t2","t1","h_","hsl2rgb_1","RE_RGB","RE_RGBA","RE_RGB_PCT","RE_RGBA_PCT","RE_HSL","RE_HSLA","round$2","css2rgb","css","trim","named","e","match","rgb$1","i$1","rgb$2","i$2","rgb$3","i$3","hsl","rgb$4","hsl$1","rgb$5","css2rgb_1","type$3","rest","unpack$8","gl","unpack$9","rgb2hcg","delta","_g","rgb2hcg_1","unpack$a","floor","hcg2rgb","assign$1","assign$2","assign$3","assign$4","assign$5","_c","q","t","hcg2rgb_1","unpack$b","type$4","hcg","unpack$c","last$4","round$3","rgb2hex","u","str","hxa","rgb2hex_1","RE_HEX","RE_HEXA","hex2rgb","parseInt","u$1","r$1","g$1","b$1","hex2rgb_1","type$5","unpack$d","sqrt","acos","rgb2hsi","min_","rgb2hsi_1","unpack$e","limit$1","TWOPI$1","cos","hsi2rgb","isNaN","hsi2rgb_1","unpack$f","type$6","hsi","unpack$g","type$7","unpack$h","min$1","max$1","rgb2hsl$1","max_","rgb2hsv","unpack$i","floor$1","hsv2rgb","hsv2rgb_1","unpack$j","type$8","hsv","labConstants","Kn","Xn","Yn","Zn","t0","unpack$k","pow","rgb2lab","ref$1","rgb2xyz","z","rgb_xyz","xyz_lab","rgb2lab_1","unpack$l","pow$1","lab2rgb","b_","lab_xyz","xyz_rgb","lab2rgb_1","unpack$m","type$9","lab","unpack$n","sqrt$1","atan2","round$4","lab2lch","lab2lch_1","unpack$o","rgb2lch","rgb2lch_1","unpack$p","sin","cos$1","lch2lab","lch2lab_1","unpack$q","lch2rgb","L","lch2rgb_1","unpack$r","hcl2rgb","hcl","hcl2rgb_1","unpack$s","type$a","lch","w3cx11","aliceblue","antiquewhite","aqua","aquamarine","azure","beige","bisque","black","blanchedalmond","blue","blueviolet","brown","burlywood","cadetblue","chartreuse","chocolate","coral","cornflower","cornflowerblue","cornsilk","crimson","cyan","darkblue","darkcyan","darkgoldenrod","darkgray","darkgreen","darkgrey","darkkhaki","darkmagenta","darkolivegreen","darkorange","darkorchid","darkred","darksalmon","darkseagreen","darkslateblue","darkslategray","darkslategrey","darkturquoise","darkviolet","deeppink","deepskyblue","dimgray","dimgrey","dodgerblue","firebrick","floralwhite","forestgreen","fuchsia","gainsboro","ghostwhite","gold","goldenrod","gray","green","greenyellow","grey","honeydew","hotpink","indianred","indigo","ivory","khaki","laserlemon","lavender","lavenderblush","lawngreen","lemonchiffon","lightblue","lightcoral","lightcyan","lightgoldenrod","lightgoldenrodyellow","lightgray","lightgreen","lightgrey","lightpink","lightsalmon","lightseagreen","lightskyblue","lightslategray","lightslategrey","lightsteelblue","lightyellow","lime","limegreen","linen","magenta","maroon","maroon2","maroon3","mediumaquamarine","mediumblue","mediumorchid","mediumpurple","mediumseagreen","mediumslateblue","mediumspringgreen","mediumturquoise","mediumvioletred","midnightblue","mintcream","mistyrose","moccasin","navajowhite","navy","oldlace","olive","olivedrab","orange","orangered","orchid","palegoldenrod","palegreen","paleturquoise","palevioletred","papayawhip","peachpuff","peru","pink","plum","powderblue","purple","purple2","purple3","rebeccapurple","red","rosybrown","royalblue","saddlebrown","salmon","sandybrown","seagreen","seashell","sienna","silver","skyblue","slateblue","slategray","slategrey","snow","springgreen","steelblue","tan","teal","thistle","tomato","turquoise","violet","wheat","white","whitesmoke","yellow","yellowgreen","w3cx11_1","type$b","keys","n","unpack$t","rgb2num","rgb2num_1","type$c","num2rgb","num","num2rgb_1","type$d","unpack$u","type$e","round$5","log","temperature2rgb","kelvin","temp","temperature2rgb_1","unpack$v","round$6","rgb2temperature","minTemp","maxTemp","eps","rgb2temperature_1","temperature","type$f","mutate","clipped","darken","amount","darker","brighter","get","mc","channel","src","type$g","pow$2","EPS","MAX_ITER","luminance","lum","cur_lum","max_iter","low","high","mid","interpolate","lm","abs","rgb2luminance","luminance_x","interpolator","type$h","mix","col1","col2","premultiply","saturate","desaturate","type$i","set","charAt","out","xyz0","xyz1","sqrt$2","pow$3","lrgb","x1","y1","z1","x2","y2","z2","lab$1","_hsx","hue0","hue1","sat0","sat1","lbv0","lbv1","sat","hue","lbv","dh","lch$1","num$1","c1","c2","hcg$1","hsi$1","hsv$1","clip_rgb$2","pow$4","sqrt$3","PI$1","cos$2","sin$1","atan2$1","average","weights","from","w","_average_lrgb","first","xyz","cnt","dx","dy","A","ci","xyz2","A$1","col","type$j","pow$5","scale","_mode","_nacol","_spread","_domain","_pos","_padding","_classes","_colors","_out","_min","_max","_correctLightness","_colorCache","_useCache","_gamma","setColors","brewer","c$1","resetCache","getClass","tMapLightness","tMapDomain","getColor","bypassMap","d","analyze","limits","domain","tOut","tBreaks","every","_m","range","_o","spread","correctLightness","L0","L1","pol","L_actual","L_ideal","L_diff","padding","numColors","result","dm","dd","__range__","samples","end","asc","cache","gamma","nodata","left","right","inclusive","ascending","bezier","I","lab0","lab1","lab2","lab3","I0","I1","bezier_1","blend","bottom","top","blend_f","c0","each","normal","multiply","darken$1","lighten","screen","overlay","burn","dodge","blend_1","type$k","clip_rgb$3","TWOPI$2","pow$6","sin$2","cos$3","cubehelix","start","rotations","lightness","dl","fract","amp","cos_a","sin_a","digits","floor$2","random","random_1","code","log$1","pow$7","floor$3","MAX_VALUE","sum","values","count","min_log","LOG10E","max_log","pb","pr","cluster","assignments","clusterSizes","repeat","nb_iters","centroids","i$4","mindist","best","j$1","dist","newCentroids","j$2","i$5","j$3","j$4","kClusters","j$5","i$6","tmpKMeansBreaks","j$6","i$7","analyze_1","contrast","l1","l2","sqrt$4","atan2$2","abs$1","cos$4","PI$2","deltaE","C","a1","b1","L2","a2","b2","sl","sc","h1","c4","sh","delL","delC","delA","delB","dH2","v1","v2","v3","distance","sum_sq","valid","scales","cool","hot","colorbrewer","OrRd","PuBu","BuPu","Oranges","BuGn","YlOrBr","YlGn","Reds","RdPu","Greens","YlGnBu","Purples","GnBu","Greys","YlOrRd","PuRd","Blues","PuBuGn","Viridis","Spectral","RdYlGn","RdBu","PiYG","PRGn","RdYlBu","BrBG","RdGy","PuOr","Set2","Accent","Set1","Set3","Dark2","Paired","Pastel2","Pastel1","list$1","colorbrewer_1","chroma_js","_vm","_h","$createElement","_self","staticClass","on","handleToggle","directives","rawName","search","matchedValidators","expression","_v","_s","_f","toLocaleString","attrs","domProps","$event","target","composing","staticStyle","$vuetify","breakpoint","smAndUp","_e","validators","toggle","_l","paginatedValidators","nodeID","cumulativeStake","rank","totalValidatorsCount","handleChange","staticRenderFns","validator","duration","stakeAmountText","stakePercText","cumulativePercText","style","width","barPerc","nowPerc","component","endTime","getTime","startTime","dur","humanize","components","CumulativeBar","disabled","page","pageDown","totalPages","pageUp","$emit","ceil","total","loading","stakes","stakesColorScale","versionsColorScale","context","chart","draw","canvas","$refs","canv","getContext","labels","datasets","options","legend","display","aspectRatio","responsive","xAxes","ticks","beginAtZero","backgroundColor","colorScale","metric","tooltips","callbacks","title","tooltipItem","label","datum","update","subnetsLoaded","percentStaked","annualStakingRewardPercentage","$store","state","Platform","getTotalValidators","getTotalPendingValidators","getStakingRatio","APR","TooltipMeta","VProgressCircular","getData","PeerStake","PeerCount","ValidatorStats","typeChange","VTab","VTabs","idUpper","id","toUpperCase","queryUpper","valBig","getTotalPendingStake","defaultSubnet","subnets","pendingValidators","vals","getCumulativeStake","getCumulativePendingStake","Tooltip","ValidatorRow","ValidatorPaginationControls","Metadata","StakingMetadata"],"mappings":"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","file":"js/validators.57aabe06.js","sourcesContent":["import {\n DEFAULT_NETWORK_ID,\n peerInfoURL,\n peerInfoURL_test,\n} from '@/store/modules/network/network'\nimport { IVersion, IVersionRes } from './models'\nimport { toAVAX } from '@/helper'\nimport { getTotalStake } from './peerinfo'\n\nconst PEER_INFO_URL = DEFAULT_NETWORK_ID === 1 ? peerInfoURL : peerInfoURL_test\n\nfunction removePrefix(s: string): string {\n return s.includes('avalanche/') ? s.split('avalanche/')[1] : s\n}\n\n/**\n * get a list of peers, ordered by latest version\n */\nexport async function getPeerInfo() {\n const res: IVersionRes[] = await fetch(PEER_INFO_URL, {\n headers: {\n 'Content-Type': 'application/json',\n },\n })\n .then((response) => response.json())\n .then((data) => data.stakeInfo)\n\n const totalStake = getTotalStake(res)\n\n const peerInfo: IVersion[] = res\n .sort((a, b) =>\n a.version.localeCompare(b.version, undefined, { numeric: true })\n )\n .reverse()\n .map((peer) => {\n return {\n version: removePrefix(peer.version),\n nodeCount: peer.nodeCount,\n stakeAmount: toAVAX(peer.stakeAmount),\n stakePercent: parseFloat(\n ((peer.stakeAmount / totalStake) * 100).toFixed(2)\n ),\n }\n })\n\n // move 'offline' nodes to end of array\n const offline = peerInfo.shift() as IVersion\n peerInfo.push(offline)\n\n return peerInfo\n}\n","import chroma from 'chroma-js'\nimport { IVersion } from '.'\n\n/**\n * For bar chart\n * Excludes 'offline' and 0 nodeCount\n */\nexport function getVersionsOnly(peerInfo: IVersion[]) {\n return peerInfo\n .filter((i) => i.version !== 'offline')\n .filter((i) => i.nodeCount !== 0)\n}\n\n/**\n * Maps major/minor versions to their patches (e.g. 1.0: [1.0.1, 1.0.0])\n * @param peerInfo\n */\nexport function versionsOnlyMap(peerInfo: IVersion[]) {\n const allVersions = getVersionsOnly(peerInfo).map((v) =>\n v.version.split('.')\n )\n const uniqueVersions = allVersions\n .map((v) => v[0] + '.' + v[1])\n .filter((item, i, ar) => ar.indexOf(item) === i)\n const patches = allVersions.map((v) => [v[0] + '.' + v[1], v[2]])\n const versions = {} as any\n uniqueVersions.forEach((version) => {\n const patchesForVersion = patches.filter(\n (patch) => patch[0] === version\n )\n versions[version] = patchesForVersion.map(\n (item) => item[0] + '.' + item[1]\n )\n })\n return versions\n}\n\n// categorical colorscale based on Explorer colors\nconst categorical = ['#4c2e56', '#e84970', '#2196f3', '#6bc688', '#ef8f4a']\nexport const lower = '#f5f6fa'\nexport const brightnessFactor = 0.5\n\n/**\n * colorscale for major.minor.patch\n * each major.minor is a categorical color (\"pink\")\n * patches are a continuous scale (dark to light \"pink\")\n * @param datamap\n */\nexport function getVersionsColorMap(datamap: any) {\n const colors: string[] = []\n const data = []\n for (const key in datamap) {\n data.push([key, datamap[key]])\n }\n data.forEach((item, i) => {\n colors.push(categorical[i])\n for (let j = 1; j < item[1].length; j++) {\n colors.push(\n chroma(categorical[i])\n .brighten(brightnessFactor * j)\n .hex()\n )\n }\n })\n return colors\n}\n\n/**\n * For pie chart\n * Excludes versions with 0 stakeAmount\n */\nexport function getStakesOnly(peerInfo: IVersion[]) {\n return peerInfo.filter((i) => i.stakeAmount > 0)\n}\n\nexport function getTotalStake(peerInfo: IVersion[]) {\n const allStakes = getStakesOnly(peerInfo)\n return allStakes\n .map((item) => item.stakeAmount)\n .reduce((acc, val) => acc + val)\n}\n","import mod from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../../node_modules/vuetify-loader/lib/loader.js??ref--20-0!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ValidatorStats.vue?vue&type=style&index=0&id=34ec88ab&scoped=true&lang=scss&\"; export default mod; export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../../node_modules/vuetify-loader/lib/loader.js??ref--20-0!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ValidatorStats.vue?vue&type=style&index=0&id=34ec88ab&scoped=true&lang=scss&\"","import mod from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../../../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../../../node_modules/vuetify-loader/lib/loader.js??ref--20-0!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./CumulativeBar.vue?vue&type=style&index=0&id=b1464fb0&scoped=true&lang=scss&\"; export default mod; export * from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../../../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../../../node_modules/vuetify-loader/lib/loader.js??ref--20-0!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./CumulativeBar.vue?vue&type=style&index=0&id=b1464fb0&scoped=true&lang=scss&\"","// Styles\nimport './VItemGroup.sass'\n\n// Mixins\nimport Groupable from '../../mixins/groupable'\nimport Proxyable from '../../mixins/proxyable'\nimport Themeable from '../../mixins/themeable'\n\n// Utilities\nimport mixins from '../../util/mixins'\nimport { consoleWarn } from '../../util/console'\n\n// Types\nimport { VNode } from 'vue/types'\n\nexport type GroupableInstance = InstanceType & {\n id?: string\n to?: any\n value?: any\n }\n\nexport const BaseItemGroup = mixins(\n Proxyable,\n Themeable\n).extend({\n name: 'base-item-group',\n\n props: {\n activeClass: {\n type: String,\n default: 'v-item--active',\n },\n mandatory: Boolean,\n max: {\n type: [Number, String],\n default: null,\n },\n multiple: Boolean,\n },\n\n data () {\n return {\n // As long as a value is defined, show it\n // Otherwise, check if multiple\n // to determine which default to provide\n internalLazyValue: this.value !== undefined\n ? this.value\n : this.multiple ? [] : undefined,\n items: [] as GroupableInstance[],\n }\n },\n\n computed: {\n classes (): Record {\n return {\n 'v-item-group': true,\n ...this.themeClasses,\n }\n },\n selectedIndex (): number {\n return (this.selectedItem && this.items.indexOf(this.selectedItem)) || -1\n },\n selectedItem (): GroupableInstance | undefined {\n if (this.multiple) return undefined\n\n return this.selectedItems[0]\n },\n selectedItems (): GroupableInstance[] {\n return this.items.filter((item, index) => {\n return this.toggleMethod(this.getValue(item, index))\n })\n },\n selectedValues (): any[] {\n if (this.internalValue == null) return []\n\n return Array.isArray(this.internalValue)\n ? this.internalValue\n : [this.internalValue]\n },\n toggleMethod (): (v: any) => boolean {\n if (!this.multiple) {\n return (v: any) => this.internalValue === v\n }\n\n const internalValue = this.internalValue\n if (Array.isArray(internalValue)) {\n return (v: any) => internalValue.includes(v)\n }\n\n return () => false\n },\n },\n\n watch: {\n internalValue: 'updateItemsState',\n items: 'updateItemsState',\n },\n\n created () {\n if (this.multiple && !Array.isArray(this.internalValue)) {\n consoleWarn('Model must be bound to an array if the multiple property is true.', this)\n }\n },\n\n methods: {\n\n genData (): object {\n return {\n class: this.classes,\n }\n },\n getValue (item: GroupableInstance, i: number): unknown {\n return item.value == null || item.value === ''\n ? i\n : item.value\n },\n onClick (item: GroupableInstance) {\n this.updateInternalValue(\n this.getValue(item, this.items.indexOf(item))\n )\n },\n register (item: GroupableInstance) {\n const index = this.items.push(item) - 1\n\n item.$on('change', () => this.onClick(item))\n\n // If no value provided and mandatory,\n // assign first registered item\n if (this.mandatory && !this.selectedValues.length) {\n this.updateMandatory()\n }\n\n this.updateItem(item, index)\n },\n unregister (item: GroupableInstance) {\n if (this._isDestroyed) return\n\n const index = this.items.indexOf(item)\n const value = this.getValue(item, index)\n\n this.items.splice(index, 1)\n\n const valueIndex = this.selectedValues.indexOf(value)\n\n // Items is not selected, do nothing\n if (valueIndex < 0) return\n\n // If not mandatory, use regular update process\n if (!this.mandatory) {\n return this.updateInternalValue(value)\n }\n\n // Remove the value\n if (this.multiple && Array.isArray(this.internalValue)) {\n this.internalValue = this.internalValue.filter(v => v !== value)\n } else {\n this.internalValue = undefined\n }\n\n // If mandatory and we have no selection\n // add the last item as value\n /* istanbul ignore else */\n if (!this.selectedItems.length) {\n this.updateMandatory(true)\n }\n },\n updateItem (item: GroupableInstance, index: number) {\n const value = this.getValue(item, index)\n\n item.isActive = this.toggleMethod(value)\n },\n // https://github.com/vuetifyjs/vuetify/issues/5352\n updateItemsState () {\n this.$nextTick(() => {\n if (this.mandatory &&\n !this.selectedItems.length\n ) {\n return this.updateMandatory()\n }\n\n // TODO: Make this smarter so it\n // doesn't have to iterate every\n // child in an update\n this.items.forEach(this.updateItem)\n })\n },\n updateInternalValue (value: any) {\n this.multiple\n ? this.updateMultiple(value)\n : this.updateSingle(value)\n },\n updateMandatory (last?: boolean) {\n if (!this.items.length) return\n\n const items = this.items.slice()\n\n if (last) items.reverse()\n\n const item = items.find(item => !item.disabled)\n\n // If no tabs are available\n // aborts mandatory value\n if (!item) return\n\n const index = this.items.indexOf(item)\n\n this.updateInternalValue(\n this.getValue(item, index)\n )\n },\n updateMultiple (value: any) {\n const defaultValue = Array.isArray(this.internalValue)\n ? this.internalValue\n : []\n const internalValue = defaultValue.slice()\n const index = internalValue.findIndex(val => val === value)\n\n if (\n this.mandatory &&\n // Item already exists\n index > -1 &&\n // value would be reduced below min\n internalValue.length - 1 < 1\n ) return\n\n if (\n // Max is set\n this.max != null &&\n // Item doesn't exist\n index < 0 &&\n // value would be increased above max\n internalValue.length + 1 > this.max\n ) return\n\n index > -1\n ? internalValue.splice(index, 1)\n : internalValue.push(value)\n\n this.internalValue = internalValue\n },\n updateSingle (value: any) {\n const isSame = value === this.internalValue\n\n if (this.mandatory && isSame) return\n\n this.internalValue = isSame ? undefined : value\n },\n },\n\n render (h): VNode {\n return h('div', this.genData(), this.$slots.default)\n },\n})\n\nexport default BaseItemGroup.extend({\n name: 'v-item-group',\n\n provide (): object {\n return {\n itemGroup: this,\n }\n },\n})\n","/**\n * chroma.js - JavaScript library for color conversions\n *\n * Copyright (c) 2011-2019, Gregor Aisch\n * All rights reserved.\n *\n * Redistribution and use in source and binary forms, with or without\n * modification, are permitted provided that the following conditions are met:\n *\n * 1. Redistributions of source code must retain the above copyright notice, this\n * list of conditions and the following disclaimer.\n *\n * 2. Redistributions in binary form must reproduce the above copyright notice,\n * this list of conditions and the following disclaimer in the documentation\n * and/or other materials provided with the distribution.\n *\n * 3. The name Gregor Aisch may not be used to endorse or promote products\n * derived from this software without specific prior written permission.\n *\n * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\"\n * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE\n * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE\n * DISCLAIMED. IN NO EVENT SHALL GREGOR AISCH OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT,\n * INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,\n * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,\n * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY\n * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING\n * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE,\n * EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n *\n * -------------------------------------------------------\n *\n * chroma.js includes colors from colorbrewer2.org, which are released under\n * the following license:\n *\n * Copyright (c) 2002 Cynthia Brewer, Mark Harrower,\n * and The Pennsylvania State University.\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing,\n * software distributed under the License is distributed on an\n * \"AS IS\" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND,\n * either express or implied. See the License for the specific\n * language governing permissions and limitations under the License.\n *\n * ------------------------------------------------------\n *\n * Named colors are taken from X11 Color Names.\n * http://www.w3.org/TR/css3-color/#svg-color\n *\n * @preserve\n */\n\n(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory() :\n typeof define === 'function' && define.amd ? define(factory) :\n (global.chroma = factory());\n}(this, (function () { 'use strict';\n\n var limit = function (x, min, max) {\n if ( min === void 0 ) min=0;\n if ( max === void 0 ) max=1;\n\n return x < min ? min : x > max ? max : x;\n };\n\n var clip_rgb = function (rgb) {\n rgb._clipped = false;\n rgb._unclipped = rgb.slice(0);\n for (var i=0; i<=3; i++) {\n if (i < 3) {\n if (rgb[i] < 0 || rgb[i] > 255) { rgb._clipped = true; }\n rgb[i] = limit(rgb[i], 0, 255);\n } else if (i === 3) {\n rgb[i] = limit(rgb[i], 0, 1);\n }\n }\n return rgb;\n };\n\n // ported from jQuery's $.type\n var classToType = {};\n for (var i = 0, list = ['Boolean', 'Number', 'String', 'Function', 'Array', 'Date', 'RegExp', 'Undefined', 'Null']; i < list.length; i += 1) {\n var name = list[i];\n\n classToType[(\"[object \" + name + \"]\")] = name.toLowerCase();\n }\n var type = function(obj) {\n return classToType[Object.prototype.toString.call(obj)] || \"object\";\n };\n\n var unpack = function (args, keyOrder) {\n if ( keyOrder === void 0 ) keyOrder=null;\n\n \t// if called with more than 3 arguments, we return the arguments\n if (args.length >= 3) { return Array.prototype.slice.call(args); }\n // with less than 3 args we check if first arg is object\n // and use the keyOrder string to extract and sort properties\n \tif (type(args[0]) == 'object' && keyOrder) {\n \t\treturn keyOrder.split('')\n \t\t\t.filter(function (k) { return args[0][k] !== undefined; })\n \t\t\t.map(function (k) { return args[0][k]; });\n \t}\n \t// otherwise we just return the first argument\n \t// (which we suppose is an array of args)\n return args[0];\n };\n\n var last = function (args) {\n if (args.length < 2) { return null; }\n var l = args.length-1;\n if (type(args[l]) == 'string') { return args[l].toLowerCase(); }\n return null;\n };\n\n var PI = Math.PI;\n\n var utils = {\n \tclip_rgb: clip_rgb,\n \tlimit: limit,\n \ttype: type,\n \tunpack: unpack,\n \tlast: last,\n \tPI: PI,\n \tTWOPI: PI*2,\n \tPITHIRD: PI/3,\n \tDEG2RAD: PI / 180,\n \tRAD2DEG: 180 / PI\n };\n\n var input = {\n \tformat: {},\n \tautodetect: []\n };\n\n var last$1 = utils.last;\n var clip_rgb$1 = utils.clip_rgb;\n var type$1 = utils.type;\n\n\n var Color = function Color() {\n var args = [], len = arguments.length;\n while ( len-- ) args[ len ] = arguments[ len ];\n\n var me = this;\n if (type$1(args[0]) === 'object' &&\n args[0].constructor &&\n args[0].constructor === this.constructor) {\n // the argument is already a Color instance\n return args[0];\n }\n\n // last argument could be the mode\n var mode = last$1(args);\n var autodetect = false;\n\n if (!mode) {\n autodetect = true;\n if (!input.sorted) {\n input.autodetect = input.autodetect.sort(function (a,b) { return b.p - a.p; });\n input.sorted = true;\n }\n // auto-detect format\n for (var i = 0, list = input.autodetect; i < list.length; i += 1) {\n var chk = list[i];\n\n mode = chk.test.apply(chk, args);\n if (mode) { break; }\n }\n }\n\n if (input.format[mode]) {\n var rgb = input.format[mode].apply(null, autodetect ? args : args.slice(0,-1));\n me._rgb = clip_rgb$1(rgb);\n } else {\n throw new Error('unknown format: '+args);\n }\n\n // add alpha channel\n if (me._rgb.length === 3) { me._rgb.push(1); }\n };\n\n Color.prototype.toString = function toString () {\n if (type$1(this.hex) == 'function') { return this.hex(); }\n return (\"[\" + (this._rgb.join(',')) + \"]\");\n };\n\n var Color_1 = Color;\n\n var chroma = function () {\n \tvar args = [], len = arguments.length;\n \twhile ( len-- ) args[ len ] = arguments[ len ];\n\n \treturn new (Function.prototype.bind.apply( chroma.Color, [ null ].concat( args) ));\n };\n\n chroma.Color = Color_1;\n chroma.version = '2.1.0';\n\n var chroma_1 = chroma;\n\n var unpack$1 = utils.unpack;\n var max = Math.max;\n\n var rgb2cmyk = function () {\n var args = [], len = arguments.length;\n while ( len-- ) args[ len ] = arguments[ len ];\n\n var ref = unpack$1(args, 'rgb');\n var r = ref[0];\n var g = ref[1];\n var b = ref[2];\n r = r / 255;\n g = g / 255;\n b = b / 255;\n var k = 1 - max(r,max(g,b));\n var f = k < 1 ? 1 / (1-k) : 0;\n var c = (1-r-k) * f;\n var m = (1-g-k) * f;\n var y = (1-b-k) * f;\n return [c,m,y,k];\n };\n\n var rgb2cmyk_1 = rgb2cmyk;\n\n var unpack$2 = utils.unpack;\n\n var cmyk2rgb = function () {\n var args = [], len = arguments.length;\n while ( len-- ) args[ len ] = arguments[ len ];\n\n args = unpack$2(args, 'cmyk');\n var c = args[0];\n var m = args[1];\n var y = args[2];\n var k = args[3];\n var alpha = args.length > 4 ? args[4] : 1;\n if (k === 1) { return [0,0,0,alpha]; }\n return [\n c >= 1 ? 0 : 255 * (1-c) * (1-k), // r\n m >= 1 ? 0 : 255 * (1-m) * (1-k), // g\n y >= 1 ? 0 : 255 * (1-y) * (1-k), // b\n alpha\n ];\n };\n\n var cmyk2rgb_1 = cmyk2rgb;\n\n var unpack$3 = utils.unpack;\n var type$2 = utils.type;\n\n\n\n Color_1.prototype.cmyk = function() {\n return rgb2cmyk_1(this._rgb);\n };\n\n chroma_1.cmyk = function () {\n var args = [], len = arguments.length;\n while ( len-- ) args[ len ] = arguments[ len ];\n\n return new (Function.prototype.bind.apply( Color_1, [ null ].concat( args, ['cmyk']) ));\n };\n\n input.format.cmyk = cmyk2rgb_1;\n\n input.autodetect.push({\n p: 2,\n test: function () {\n var args = [], len = arguments.length;\n while ( len-- ) args[ len ] = arguments[ len ];\n\n args = unpack$3(args, 'cmyk');\n if (type$2(args) === 'array' && args.length === 4) {\n return 'cmyk';\n }\n }\n });\n\n var unpack$4 = utils.unpack;\n var last$2 = utils.last;\n var rnd = function (a) { return Math.round(a*100)/100; };\n\n /*\n * supported arguments:\n * - hsl2css(h,s,l)\n * - hsl2css(h,s,l,a)\n * - hsl2css([h,s,l], mode)\n * - hsl2css([h,s,l,a], mode)\n * - hsl2css({h,s,l,a}, mode)\n */\n var hsl2css = function () {\n var args = [], len = arguments.length;\n while ( len-- ) args[ len ] = arguments[ len ];\n\n var hsla = unpack$4(args, 'hsla');\n var mode = last$2(args) || 'lsa';\n hsla[0] = rnd(hsla[0] || 0);\n hsla[1] = rnd(hsla[1]*100) + '%';\n hsla[2] = rnd(hsla[2]*100) + '%';\n if (mode === 'hsla' || (hsla.length > 3 && hsla[3]<1)) {\n hsla[3] = hsla.length > 3 ? hsla[3] : 1;\n mode = 'hsla';\n } else {\n hsla.length = 3;\n }\n return (mode + \"(\" + (hsla.join(',')) + \")\");\n };\n\n var hsl2css_1 = hsl2css;\n\n var unpack$5 = utils.unpack;\n\n /*\n * supported arguments:\n * - rgb2hsl(r,g,b)\n * - rgb2hsl(r,g,b,a)\n * - rgb2hsl([r,g,b])\n * - rgb2hsl([r,g,b,a])\n * - rgb2hsl({r,g,b,a})\n */\n var rgb2hsl = function () {\n var args = [], len = arguments.length;\n while ( len-- ) args[ len ] = arguments[ len ];\n\n args = unpack$5(args, 'rgba');\n var r = args[0];\n var g = args[1];\n var b = args[2];\n\n r /= 255;\n g /= 255;\n b /= 255;\n\n var min = Math.min(r, g, b);\n var max = Math.max(r, g, b);\n\n var l = (max + min) / 2;\n var s, h;\n\n if (max === min){\n s = 0;\n h = Number.NaN;\n } else {\n s = l < 0.5 ? (max - min) / (max + min) : (max - min) / (2 - max - min);\n }\n\n if (r == max) { h = (g - b) / (max - min); }\n else if (g == max) { h = 2 + (b - r) / (max - min); }\n else if (b == max) { h = 4 + (r - g) / (max - min); }\n\n h *= 60;\n if (h < 0) { h += 360; }\n if (args.length>3 && args[3]!==undefined) { return [h,s,l,args[3]]; }\n return [h,s,l];\n };\n\n var rgb2hsl_1 = rgb2hsl;\n\n var unpack$6 = utils.unpack;\n var last$3 = utils.last;\n\n\n var round = Math.round;\n\n /*\n * supported arguments:\n * - rgb2css(r,g,b)\n * - rgb2css(r,g,b,a)\n * - rgb2css([r,g,b], mode)\n * - rgb2css([r,g,b,a], mode)\n * - rgb2css({r,g,b,a}, mode)\n */\n var rgb2css = function () {\n var args = [], len = arguments.length;\n while ( len-- ) args[ len ] = arguments[ len ];\n\n var rgba = unpack$6(args, 'rgba');\n var mode = last$3(args) || 'rgb';\n if (mode.substr(0,3) == 'hsl') {\n return hsl2css_1(rgb2hsl_1(rgba), mode);\n }\n rgba[0] = round(rgba[0]);\n rgba[1] = round(rgba[1]);\n rgba[2] = round(rgba[2]);\n if (mode === 'rgba' || (rgba.length > 3 && rgba[3]<1)) {\n rgba[3] = rgba.length > 3 ? rgba[3] : 1;\n mode = 'rgba';\n }\n return (mode + \"(\" + (rgba.slice(0,mode==='rgb'?3:4).join(',')) + \")\");\n };\n\n var rgb2css_1 = rgb2css;\n\n var unpack$7 = utils.unpack;\n var round$1 = Math.round;\n\n var hsl2rgb = function () {\n var assign;\n\n var args = [], len = arguments.length;\n while ( len-- ) args[ len ] = arguments[ len ];\n args = unpack$7(args, 'hsl');\n var h = args[0];\n var s = args[1];\n var l = args[2];\n var r,g,b;\n if (s === 0) {\n r = g = b = l*255;\n } else {\n var t3 = [0,0,0];\n var c = [0,0,0];\n var t2 = l < 0.5 ? l * (1+s) : l+s-l*s;\n var t1 = 2 * l - t2;\n var h_ = h / 360;\n t3[0] = h_ + 1/3;\n t3[1] = h_;\n t3[2] = h_ - 1/3;\n for (var i=0; i<3; i++) {\n if (t3[i] < 0) { t3[i] += 1; }\n if (t3[i] > 1) { t3[i] -= 1; }\n if (6 * t3[i] < 1)\n { c[i] = t1 + (t2 - t1) * 6 * t3[i]; }\n else if (2 * t3[i] < 1)\n { c[i] = t2; }\n else if (3 * t3[i] < 2)\n { c[i] = t1 + (t2 - t1) * ((2 / 3) - t3[i]) * 6; }\n else\n { c[i] = t1; }\n }\n (assign = [round$1(c[0]*255),round$1(c[1]*255),round$1(c[2]*255)], r = assign[0], g = assign[1], b = assign[2]);\n }\n if (args.length > 3) {\n // keep alpha channel\n return [r,g,b,args[3]];\n }\n return [r,g,b,1];\n };\n\n var hsl2rgb_1 = hsl2rgb;\n\n var RE_RGB = /^rgb\\(\\s*(-?\\d+),\\s*(-?\\d+)\\s*,\\s*(-?\\d+)\\s*\\)$/;\n var RE_RGBA = /^rgba\\(\\s*(-?\\d+),\\s*(-?\\d+)\\s*,\\s*(-?\\d+)\\s*,\\s*([01]|[01]?\\.\\d+)\\)$/;\n var RE_RGB_PCT = /^rgb\\(\\s*(-?\\d+(?:\\.\\d+)?)%,\\s*(-?\\d+(?:\\.\\d+)?)%\\s*,\\s*(-?\\d+(?:\\.\\d+)?)%\\s*\\)$/;\n var RE_RGBA_PCT = /^rgba\\(\\s*(-?\\d+(?:\\.\\d+)?)%,\\s*(-?\\d+(?:\\.\\d+)?)%\\s*,\\s*(-?\\d+(?:\\.\\d+)?)%\\s*,\\s*([01]|[01]?\\.\\d+)\\)$/;\n var RE_HSL = /^hsl\\(\\s*(-?\\d+(?:\\.\\d+)?),\\s*(-?\\d+(?:\\.\\d+)?)%\\s*,\\s*(-?\\d+(?:\\.\\d+)?)%\\s*\\)$/;\n var RE_HSLA = /^hsla\\(\\s*(-?\\d+(?:\\.\\d+)?),\\s*(-?\\d+(?:\\.\\d+)?)%\\s*,\\s*(-?\\d+(?:\\.\\d+)?)%\\s*,\\s*([01]|[01]?\\.\\d+)\\)$/;\n\n var round$2 = Math.round;\n\n var css2rgb = function (css) {\n css = css.toLowerCase().trim();\n var m;\n\n if (input.format.named) {\n try {\n return input.format.named(css);\n } catch (e) {\n // eslint-disable-next-line\n }\n }\n\n // rgb(250,20,0)\n if ((m = css.match(RE_RGB))) {\n var rgb = m.slice(1,4);\n for (var i=0; i<3; i++) {\n rgb[i] = +rgb[i];\n }\n rgb[3] = 1; // default alpha\n return rgb;\n }\n\n // rgba(250,20,0,0.4)\n if ((m = css.match(RE_RGBA))) {\n var rgb$1 = m.slice(1,5);\n for (var i$1=0; i$1<4; i$1++) {\n rgb$1[i$1] = +rgb$1[i$1];\n }\n return rgb$1;\n }\n\n // rgb(100%,0%,0%)\n if ((m = css.match(RE_RGB_PCT))) {\n var rgb$2 = m.slice(1,4);\n for (var i$2=0; i$2<3; i$2++) {\n rgb$2[i$2] = round$2(rgb$2[i$2] * 2.55);\n }\n rgb$2[3] = 1; // default alpha\n return rgb$2;\n }\n\n // rgba(100%,0%,0%,0.4)\n if ((m = css.match(RE_RGBA_PCT))) {\n var rgb$3 = m.slice(1,5);\n for (var i$3=0; i$3<3; i$3++) {\n rgb$3[i$3] = round$2(rgb$3[i$3] * 2.55);\n }\n rgb$3[3] = +rgb$3[3];\n return rgb$3;\n }\n\n // hsl(0,100%,50%)\n if ((m = css.match(RE_HSL))) {\n var hsl = m.slice(1,4);\n hsl[1] *= 0.01;\n hsl[2] *= 0.01;\n var rgb$4 = hsl2rgb_1(hsl);\n rgb$4[3] = 1;\n return rgb$4;\n }\n\n // hsla(0,100%,50%,0.5)\n if ((m = css.match(RE_HSLA))) {\n var hsl$1 = m.slice(1,4);\n hsl$1[1] *= 0.01;\n hsl$1[2] *= 0.01;\n var rgb$5 = hsl2rgb_1(hsl$1);\n rgb$5[3] = +m[4]; // default alpha = 1\n return rgb$5;\n }\n };\n\n css2rgb.test = function (s) {\n return RE_RGB.test(s) ||\n RE_RGBA.test(s) ||\n RE_RGB_PCT.test(s) ||\n RE_RGBA_PCT.test(s) ||\n RE_HSL.test(s) ||\n RE_HSLA.test(s);\n };\n\n var css2rgb_1 = css2rgb;\n\n var type$3 = utils.type;\n\n\n\n\n Color_1.prototype.css = function(mode) {\n return rgb2css_1(this._rgb, mode);\n };\n\n chroma_1.css = function () {\n var args = [], len = arguments.length;\n while ( len-- ) args[ len ] = arguments[ len ];\n\n return new (Function.prototype.bind.apply( Color_1, [ null ].concat( args, ['css']) ));\n };\n\n input.format.css = css2rgb_1;\n\n input.autodetect.push({\n p: 5,\n test: function (h) {\n var rest = [], len = arguments.length - 1;\n while ( len-- > 0 ) rest[ len ] = arguments[ len + 1 ];\n\n if (!rest.length && type$3(h) === 'string' && css2rgb_1.test(h)) {\n return 'css';\n }\n }\n });\n\n var unpack$8 = utils.unpack;\n\n input.format.gl = function () {\n var args = [], len = arguments.length;\n while ( len-- ) args[ len ] = arguments[ len ];\n\n var rgb = unpack$8(args, 'rgba');\n rgb[0] *= 255;\n rgb[1] *= 255;\n rgb[2] *= 255;\n return rgb;\n };\n\n chroma_1.gl = function () {\n var args = [], len = arguments.length;\n while ( len-- ) args[ len ] = arguments[ len ];\n\n return new (Function.prototype.bind.apply( Color_1, [ null ].concat( args, ['gl']) ));\n };\n\n Color_1.prototype.gl = function() {\n var rgb = this._rgb;\n return [rgb[0]/255, rgb[1]/255, rgb[2]/255, rgb[3]];\n };\n\n var unpack$9 = utils.unpack;\n\n var rgb2hcg = function () {\n var args = [], len = arguments.length;\n while ( len-- ) args[ len ] = arguments[ len ];\n\n var ref = unpack$9(args, 'rgb');\n var r = ref[0];\n var g = ref[1];\n var b = ref[2];\n var min = Math.min(r, g, b);\n var max = Math.max(r, g, b);\n var delta = max - min;\n var c = delta * 100 / 255;\n var _g = min / (255 - delta) * 100;\n var h;\n if (delta === 0) {\n h = Number.NaN;\n } else {\n if (r === max) { h = (g - b) / delta; }\n if (g === max) { h = 2+(b - r) / delta; }\n if (b === max) { h = 4+(r - g) / delta; }\n h *= 60;\n if (h < 0) { h += 360; }\n }\n return [h, c, _g];\n };\n\n var rgb2hcg_1 = rgb2hcg;\n\n var unpack$a = utils.unpack;\n var floor = Math.floor;\n\n /*\n * this is basically just HSV with some minor tweaks\n *\n * hue.. [0..360]\n * chroma .. [0..1]\n * grayness .. [0..1]\n */\n\n var hcg2rgb = function () {\n var assign, assign$1, assign$2, assign$3, assign$4, assign$5;\n\n var args = [], len = arguments.length;\n while ( len-- ) args[ len ] = arguments[ len ];\n args = unpack$a(args, 'hcg');\n var h = args[0];\n var c = args[1];\n var _g = args[2];\n var r,g,b;\n _g = _g * 255;\n var _c = c * 255;\n if (c === 0) {\n r = g = b = _g;\n } else {\n if (h === 360) { h = 0; }\n if (h > 360) { h -= 360; }\n if (h < 0) { h += 360; }\n h /= 60;\n var i = floor(h);\n var f = h - i;\n var p = _g * (1 - c);\n var q = p + _c * (1 - f);\n var t = p + _c * f;\n var v = p + _c;\n switch (i) {\n case 0: (assign = [v, t, p], r = assign[0], g = assign[1], b = assign[2]); break\n case 1: (assign$1 = [q, v, p], r = assign$1[0], g = assign$1[1], b = assign$1[2]); break\n case 2: (assign$2 = [p, v, t], r = assign$2[0], g = assign$2[1], b = assign$2[2]); break\n case 3: (assign$3 = [p, q, v], r = assign$3[0], g = assign$3[1], b = assign$3[2]); break\n case 4: (assign$4 = [t, p, v], r = assign$4[0], g = assign$4[1], b = assign$4[2]); break\n case 5: (assign$5 = [v, p, q], r = assign$5[0], g = assign$5[1], b = assign$5[2]); break\n }\n }\n return [r, g, b, args.length > 3 ? args[3] : 1];\n };\n\n var hcg2rgb_1 = hcg2rgb;\n\n var unpack$b = utils.unpack;\n var type$4 = utils.type;\n\n\n\n\n\n\n Color_1.prototype.hcg = function() {\n return rgb2hcg_1(this._rgb);\n };\n\n chroma_1.hcg = function () {\n var args = [], len = arguments.length;\n while ( len-- ) args[ len ] = arguments[ len ];\n\n return new (Function.prototype.bind.apply( Color_1, [ null ].concat( args, ['hcg']) ));\n };\n\n input.format.hcg = hcg2rgb_1;\n\n input.autodetect.push({\n p: 1,\n test: function () {\n var args = [], len = arguments.length;\n while ( len-- ) args[ len ] = arguments[ len ];\n\n args = unpack$b(args, 'hcg');\n if (type$4(args) === 'array' && args.length === 3) {\n return 'hcg';\n }\n }\n });\n\n var unpack$c = utils.unpack;\n var last$4 = utils.last;\n var round$3 = Math.round;\n\n var rgb2hex = function () {\n var args = [], len = arguments.length;\n while ( len-- ) args[ len ] = arguments[ len ];\n\n var ref = unpack$c(args, 'rgba');\n var r = ref[0];\n var g = ref[1];\n var b = ref[2];\n var a = ref[3];\n var mode = last$4(args) || 'auto';\n if (a === undefined) { a = 1; }\n if (mode === 'auto') {\n mode = a < 1 ? 'rgba' : 'rgb';\n }\n r = round$3(r);\n g = round$3(g);\n b = round$3(b);\n var u = r << 16 | g << 8 | b;\n var str = \"000000\" + u.toString(16); //#.toUpperCase();\n str = str.substr(str.length - 6);\n var hxa = '0' + round$3(a * 255).toString(16);\n hxa = hxa.substr(hxa.length - 2);\n switch (mode.toLowerCase()) {\n case 'rgba': return (\"#\" + str + hxa);\n case 'argb': return (\"#\" + hxa + str);\n default: return (\"#\" + str);\n }\n };\n\n var rgb2hex_1 = rgb2hex;\n\n var RE_HEX = /^#?([A-Fa-f0-9]{6}|[A-Fa-f0-9]{3})$/;\n var RE_HEXA = /^#?([A-Fa-f0-9]{8}|[A-Fa-f0-9]{4})$/;\n\n var hex2rgb = function (hex) {\n if (hex.match(RE_HEX)) {\n // remove optional leading #\n if (hex.length === 4 || hex.length === 7) {\n hex = hex.substr(1);\n }\n // expand short-notation to full six-digit\n if (hex.length === 3) {\n hex = hex.split('');\n hex = hex[0]+hex[0]+hex[1]+hex[1]+hex[2]+hex[2];\n }\n var u = parseInt(hex, 16);\n var r = u >> 16;\n var g = u >> 8 & 0xFF;\n var b = u & 0xFF;\n return [r,g,b,1];\n }\n\n // match rgba hex format, eg #FF000077\n if (hex.match(RE_HEXA)) {\n if (hex.length === 5 || hex.length === 9) {\n // remove optional leading #\n hex = hex.substr(1);\n }\n // expand short-notation to full eight-digit\n if (hex.length === 4) {\n hex = hex.split('');\n hex = hex[0]+hex[0]+hex[1]+hex[1]+hex[2]+hex[2]+hex[3]+hex[3];\n }\n var u$1 = parseInt(hex, 16);\n var r$1 = u$1 >> 24 & 0xFF;\n var g$1 = u$1 >> 16 & 0xFF;\n var b$1 = u$1 >> 8 & 0xFF;\n var a = Math.round((u$1 & 0xFF) / 0xFF * 100) / 100;\n return [r$1,g$1,b$1,a];\n }\n\n // we used to check for css colors here\n // if _input.css? and rgb = _input.css hex\n // return rgb\n\n throw new Error((\"unknown hex color: \" + hex));\n };\n\n var hex2rgb_1 = hex2rgb;\n\n var type$5 = utils.type;\n\n\n\n\n Color_1.prototype.hex = function(mode) {\n return rgb2hex_1(this._rgb, mode);\n };\n\n chroma_1.hex = function () {\n var args = [], len = arguments.length;\n while ( len-- ) args[ len ] = arguments[ len ];\n\n return new (Function.prototype.bind.apply( Color_1, [ null ].concat( args, ['hex']) ));\n };\n\n input.format.hex = hex2rgb_1;\n input.autodetect.push({\n p: 4,\n test: function (h) {\n var rest = [], len = arguments.length - 1;\n while ( len-- > 0 ) rest[ len ] = arguments[ len + 1 ];\n\n if (!rest.length && type$5(h) === 'string' && [3,4,5,6,7,8,9].indexOf(h.length) >= 0) {\n return 'hex';\n }\n }\n });\n\n var unpack$d = utils.unpack;\n var TWOPI = utils.TWOPI;\n var min = Math.min;\n var sqrt = Math.sqrt;\n var acos = Math.acos;\n\n var rgb2hsi = function () {\n var args = [], len = arguments.length;\n while ( len-- ) args[ len ] = arguments[ len ];\n\n /*\n borrowed from here:\n http://hummer.stanford.edu/museinfo/doc/examples/humdrum/keyscape2/rgb2hsi.cpp\n */\n var ref = unpack$d(args, 'rgb');\n var r = ref[0];\n var g = ref[1];\n var b = ref[2];\n r /= 255;\n g /= 255;\n b /= 255;\n var h;\n var min_ = min(r,g,b);\n var i = (r+g+b) / 3;\n var s = i > 0 ? 1 - min_/i : 0;\n if (s === 0) {\n h = NaN;\n } else {\n h = ((r-g)+(r-b)) / 2;\n h /= sqrt((r-g)*(r-g) + (r-b)*(g-b));\n h = acos(h);\n if (b > g) {\n h = TWOPI - h;\n }\n h /= TWOPI;\n }\n return [h*360,s,i];\n };\n\n var rgb2hsi_1 = rgb2hsi;\n\n var unpack$e = utils.unpack;\n var limit$1 = utils.limit;\n var TWOPI$1 = utils.TWOPI;\n var PITHIRD = utils.PITHIRD;\n var cos = Math.cos;\n\n /*\n * hue [0..360]\n * saturation [0..1]\n * intensity [0..1]\n */\n var hsi2rgb = function () {\n var args = [], len = arguments.length;\n while ( len-- ) args[ len ] = arguments[ len ];\n\n /*\n borrowed from here:\n http://hummer.stanford.edu/museinfo/doc/examples/humdrum/keyscape2/hsi2rgb.cpp\n */\n args = unpack$e(args, 'hsi');\n var h = args[0];\n var s = args[1];\n var i = args[2];\n var r,g,b;\n\n if (isNaN(h)) { h = 0; }\n if (isNaN(s)) { s = 0; }\n // normalize hue\n if (h > 360) { h -= 360; }\n if (h < 0) { h += 360; }\n h /= 360;\n if (h < 1/3) {\n b = (1-s)/3;\n r = (1+s*cos(TWOPI$1*h)/cos(PITHIRD-TWOPI$1*h))/3;\n g = 1 - (b+r);\n } else if (h < 2/3) {\n h -= 1/3;\n r = (1-s)/3;\n g = (1+s*cos(TWOPI$1*h)/cos(PITHIRD-TWOPI$1*h))/3;\n b = 1 - (r+g);\n } else {\n h -= 2/3;\n g = (1-s)/3;\n b = (1+s*cos(TWOPI$1*h)/cos(PITHIRD-TWOPI$1*h))/3;\n r = 1 - (g+b);\n }\n r = limit$1(i*r*3);\n g = limit$1(i*g*3);\n b = limit$1(i*b*3);\n return [r*255, g*255, b*255, args.length > 3 ? args[3] : 1];\n };\n\n var hsi2rgb_1 = hsi2rgb;\n\n var unpack$f = utils.unpack;\n var type$6 = utils.type;\n\n\n\n\n\n\n Color_1.prototype.hsi = function() {\n return rgb2hsi_1(this._rgb);\n };\n\n chroma_1.hsi = function () {\n var args = [], len = arguments.length;\n while ( len-- ) args[ len ] = arguments[ len ];\n\n return new (Function.prototype.bind.apply( Color_1, [ null ].concat( args, ['hsi']) ));\n };\n\n input.format.hsi = hsi2rgb_1;\n\n input.autodetect.push({\n p: 2,\n test: function () {\n var args = [], len = arguments.length;\n while ( len-- ) args[ len ] = arguments[ len ];\n\n args = unpack$f(args, 'hsi');\n if (type$6(args) === 'array' && args.length === 3) {\n return 'hsi';\n }\n }\n });\n\n var unpack$g = utils.unpack;\n var type$7 = utils.type;\n\n\n\n\n\n\n Color_1.prototype.hsl = function() {\n return rgb2hsl_1(this._rgb);\n };\n\n chroma_1.hsl = function () {\n var args = [], len = arguments.length;\n while ( len-- ) args[ len ] = arguments[ len ];\n\n return new (Function.prototype.bind.apply( Color_1, [ null ].concat( args, ['hsl']) ));\n };\n\n input.format.hsl = hsl2rgb_1;\n\n input.autodetect.push({\n p: 2,\n test: function () {\n var args = [], len = arguments.length;\n while ( len-- ) args[ len ] = arguments[ len ];\n\n args = unpack$g(args, 'hsl');\n if (type$7(args) === 'array' && args.length === 3) {\n return 'hsl';\n }\n }\n });\n\n var unpack$h = utils.unpack;\n var min$1 = Math.min;\n var max$1 = Math.max;\n\n /*\n * supported arguments:\n * - rgb2hsv(r,g,b)\n * - rgb2hsv([r,g,b])\n * - rgb2hsv({r,g,b})\n */\n var rgb2hsl$1 = function () {\n var args = [], len = arguments.length;\n while ( len-- ) args[ len ] = arguments[ len ];\n\n args = unpack$h(args, 'rgb');\n var r = args[0];\n var g = args[1];\n var b = args[2];\n var min_ = min$1(r, g, b);\n var max_ = max$1(r, g, b);\n var delta = max_ - min_;\n var h,s,v;\n v = max_ / 255.0;\n if (max_ === 0) {\n h = Number.NaN;\n s = 0;\n } else {\n s = delta / max_;\n if (r === max_) { h = (g - b) / delta; }\n if (g === max_) { h = 2+(b - r) / delta; }\n if (b === max_) { h = 4+(r - g) / delta; }\n h *= 60;\n if (h < 0) { h += 360; }\n }\n return [h, s, v]\n };\n\n var rgb2hsv = rgb2hsl$1;\n\n var unpack$i = utils.unpack;\n var floor$1 = Math.floor;\n\n var hsv2rgb = function () {\n var assign, assign$1, assign$2, assign$3, assign$4, assign$5;\n\n var args = [], len = arguments.length;\n while ( len-- ) args[ len ] = arguments[ len ];\n args = unpack$i(args, 'hsv');\n var h = args[0];\n var s = args[1];\n var v = args[2];\n var r,g,b;\n v *= 255;\n if (s === 0) {\n r = g = b = v;\n } else {\n if (h === 360) { h = 0; }\n if (h > 360) { h -= 360; }\n if (h < 0) { h += 360; }\n h /= 60;\n\n var i = floor$1(h);\n var f = h - i;\n var p = v * (1 - s);\n var q = v * (1 - s * f);\n var t = v * (1 - s * (1 - f));\n\n switch (i) {\n case 0: (assign = [v, t, p], r = assign[0], g = assign[1], b = assign[2]); break\n case 1: (assign$1 = [q, v, p], r = assign$1[0], g = assign$1[1], b = assign$1[2]); break\n case 2: (assign$2 = [p, v, t], r = assign$2[0], g = assign$2[1], b = assign$2[2]); break\n case 3: (assign$3 = [p, q, v], r = assign$3[0], g = assign$3[1], b = assign$3[2]); break\n case 4: (assign$4 = [t, p, v], r = assign$4[0], g = assign$4[1], b = assign$4[2]); break\n case 5: (assign$5 = [v, p, q], r = assign$5[0], g = assign$5[1], b = assign$5[2]); break\n }\n }\n return [r,g,b,args.length > 3?args[3]:1];\n };\n\n var hsv2rgb_1 = hsv2rgb;\n\n var unpack$j = utils.unpack;\n var type$8 = utils.type;\n\n\n\n\n\n\n Color_1.prototype.hsv = function() {\n return rgb2hsv(this._rgb);\n };\n\n chroma_1.hsv = function () {\n var args = [], len = arguments.length;\n while ( len-- ) args[ len ] = arguments[ len ];\n\n return new (Function.prototype.bind.apply( Color_1, [ null ].concat( args, ['hsv']) ));\n };\n\n input.format.hsv = hsv2rgb_1;\n\n input.autodetect.push({\n p: 2,\n test: function () {\n var args = [], len = arguments.length;\n while ( len-- ) args[ len ] = arguments[ len ];\n\n args = unpack$j(args, 'hsv');\n if (type$8(args) === 'array' && args.length === 3) {\n return 'hsv';\n }\n }\n });\n\n var labConstants = {\n // Corresponds roughly to RGB brighter/darker\n Kn: 18,\n\n // D65 standard referent\n Xn: 0.950470,\n Yn: 1,\n Zn: 1.088830,\n\n t0: 0.137931034, // 4 / 29\n t1: 0.206896552, // 6 / 29\n t2: 0.12841855, // 3 * t1 * t1\n t3: 0.008856452, // t1 * t1 * t1\n };\n\n var unpack$k = utils.unpack;\n var pow = Math.pow;\n\n var rgb2lab = function () {\n var args = [], len = arguments.length;\n while ( len-- ) args[ len ] = arguments[ len ];\n\n var ref = unpack$k(args, 'rgb');\n var r = ref[0];\n var g = ref[1];\n var b = ref[2];\n var ref$1 = rgb2xyz(r,g,b);\n var x = ref$1[0];\n var y = ref$1[1];\n var z = ref$1[2];\n var l = 116 * y - 16;\n return [l < 0 ? 0 : l, 500 * (x - y), 200 * (y - z)];\n };\n\n var rgb_xyz = function (r) {\n if ((r /= 255) <= 0.04045) { return r / 12.92; }\n return pow((r + 0.055) / 1.055, 2.4);\n };\n\n var xyz_lab = function (t) {\n if (t > labConstants.t3) { return pow(t, 1 / 3); }\n return t / labConstants.t2 + labConstants.t0;\n };\n\n var rgb2xyz = function (r,g,b) {\n r = rgb_xyz(r);\n g = rgb_xyz(g);\n b = rgb_xyz(b);\n var x = xyz_lab((0.4124564 * r + 0.3575761 * g + 0.1804375 * b) / labConstants.Xn);\n var y = xyz_lab((0.2126729 * r + 0.7151522 * g + 0.0721750 * b) / labConstants.Yn);\n var z = xyz_lab((0.0193339 * r + 0.1191920 * g + 0.9503041 * b) / labConstants.Zn);\n return [x,y,z];\n };\n\n var rgb2lab_1 = rgb2lab;\n\n var unpack$l = utils.unpack;\n var pow$1 = Math.pow;\n\n /*\n * L* [0..100]\n * a [-100..100]\n * b [-100..100]\n */\n var lab2rgb = function () {\n var args = [], len = arguments.length;\n while ( len-- ) args[ len ] = arguments[ len ];\n\n args = unpack$l(args, 'lab');\n var l = args[0];\n var a = args[1];\n var b = args[2];\n var x,y,z, r,g,b_;\n\n y = (l + 16) / 116;\n x = isNaN(a) ? y : y + a / 500;\n z = isNaN(b) ? y : y - b / 200;\n\n y = labConstants.Yn * lab_xyz(y);\n x = labConstants.Xn * lab_xyz(x);\n z = labConstants.Zn * lab_xyz(z);\n\n r = xyz_rgb(3.2404542 * x - 1.5371385 * y - 0.4985314 * z); // D65 -> sRGB\n g = xyz_rgb(-0.9692660 * x + 1.8760108 * y + 0.0415560 * z);\n b_ = xyz_rgb(0.0556434 * x - 0.2040259 * y + 1.0572252 * z);\n\n return [r,g,b_,args.length > 3 ? args[3] : 1];\n };\n\n var xyz_rgb = function (r) {\n return 255 * (r <= 0.00304 ? 12.92 * r : 1.055 * pow$1(r, 1 / 2.4) - 0.055)\n };\n\n var lab_xyz = function (t) {\n return t > labConstants.t1 ? t * t * t : labConstants.t2 * (t - labConstants.t0)\n };\n\n var lab2rgb_1 = lab2rgb;\n\n var unpack$m = utils.unpack;\n var type$9 = utils.type;\n\n\n\n\n\n\n Color_1.prototype.lab = function() {\n return rgb2lab_1(this._rgb);\n };\n\n chroma_1.lab = function () {\n var args = [], len = arguments.length;\n while ( len-- ) args[ len ] = arguments[ len ];\n\n return new (Function.prototype.bind.apply( Color_1, [ null ].concat( args, ['lab']) ));\n };\n\n input.format.lab = lab2rgb_1;\n\n input.autodetect.push({\n p: 2,\n test: function () {\n var args = [], len = arguments.length;\n while ( len-- ) args[ len ] = arguments[ len ];\n\n args = unpack$m(args, 'lab');\n if (type$9(args) === 'array' && args.length === 3) {\n return 'lab';\n }\n }\n });\n\n var unpack$n = utils.unpack;\n var RAD2DEG = utils.RAD2DEG;\n var sqrt$1 = Math.sqrt;\n var atan2 = Math.atan2;\n var round$4 = Math.round;\n\n var lab2lch = function () {\n var args = [], len = arguments.length;\n while ( len-- ) args[ len ] = arguments[ len ];\n\n var ref = unpack$n(args, 'lab');\n var l = ref[0];\n var a = ref[1];\n var b = ref[2];\n var c = sqrt$1(a * a + b * b);\n var h = (atan2(b, a) * RAD2DEG + 360) % 360;\n if (round$4(c*10000) === 0) { h = Number.NaN; }\n return [l, c, h];\n };\n\n var lab2lch_1 = lab2lch;\n\n var unpack$o = utils.unpack;\n\n\n\n var rgb2lch = function () {\n var args = [], len = arguments.length;\n while ( len-- ) args[ len ] = arguments[ len ];\n\n var ref = unpack$o(args, 'rgb');\n var r = ref[0];\n var g = ref[1];\n var b = ref[2];\n var ref$1 = rgb2lab_1(r,g,b);\n var l = ref$1[0];\n var a = ref$1[1];\n var b_ = ref$1[2];\n return lab2lch_1(l,a,b_);\n };\n\n var rgb2lch_1 = rgb2lch;\n\n var unpack$p = utils.unpack;\n var DEG2RAD = utils.DEG2RAD;\n var sin = Math.sin;\n var cos$1 = Math.cos;\n\n var lch2lab = function () {\n var args = [], len = arguments.length;\n while ( len-- ) args[ len ] = arguments[ len ];\n\n /*\n Convert from a qualitative parameter h and a quantitative parameter l to a 24-bit pixel.\n These formulas were invented by David Dalrymple to obtain maximum contrast without going\n out of gamut if the parameters are in the range 0-1.\n\n A saturation multiplier was added by Gregor Aisch\n */\n var ref = unpack$p(args, 'lch');\n var l = ref[0];\n var c = ref[1];\n var h = ref[2];\n if (isNaN(h)) { h = 0; }\n h = h * DEG2RAD;\n return [l, cos$1(h) * c, sin(h) * c]\n };\n\n var lch2lab_1 = lch2lab;\n\n var unpack$q = utils.unpack;\n\n\n\n var lch2rgb = function () {\n var args = [], len = arguments.length;\n while ( len-- ) args[ len ] = arguments[ len ];\n\n args = unpack$q(args, 'lch');\n var l = args[0];\n var c = args[1];\n var h = args[2];\n var ref = lch2lab_1 (l,c,h);\n var L = ref[0];\n var a = ref[1];\n var b_ = ref[2];\n var ref$1 = lab2rgb_1 (L,a,b_);\n var r = ref$1[0];\n var g = ref$1[1];\n var b = ref$1[2];\n return [r, g, b, args.length > 3 ? args[3] : 1];\n };\n\n var lch2rgb_1 = lch2rgb;\n\n var unpack$r = utils.unpack;\n\n\n var hcl2rgb = function () {\n var args = [], len = arguments.length;\n while ( len-- ) args[ len ] = arguments[ len ];\n\n var hcl = unpack$r(args, 'hcl').reverse();\n return lch2rgb_1.apply(void 0, hcl);\n };\n\n var hcl2rgb_1 = hcl2rgb;\n\n var unpack$s = utils.unpack;\n var type$a = utils.type;\n\n\n\n\n\n\n Color_1.prototype.lch = function() { return rgb2lch_1(this._rgb); };\n Color_1.prototype.hcl = function() { return rgb2lch_1(this._rgb).reverse(); };\n\n chroma_1.lch = function () {\n var args = [], len = arguments.length;\n while ( len-- ) args[ len ] = arguments[ len ];\n\n return new (Function.prototype.bind.apply( Color_1, [ null ].concat( args, ['lch']) ));\n };\n chroma_1.hcl = function () {\n var args = [], len = arguments.length;\n while ( len-- ) args[ len ] = arguments[ len ];\n\n return new (Function.prototype.bind.apply( Color_1, [ null ].concat( args, ['hcl']) ));\n };\n\n input.format.lch = lch2rgb_1;\n input.format.hcl = hcl2rgb_1;\n\n ['lch','hcl'].forEach(function (m) { return input.autodetect.push({\n p: 2,\n test: function () {\n var args = [], len = arguments.length;\n while ( len-- ) args[ len ] = arguments[ len ];\n\n args = unpack$s(args, m);\n if (type$a(args) === 'array' && args.length === 3) {\n return m;\n }\n }\n }); });\n\n /**\n \tX11 color names\n\n \thttp://www.w3.org/TR/css3-color/#svg-color\n */\n\n var w3cx11 = {\n aliceblue: '#f0f8ff',\n antiquewhite: '#faebd7',\n aqua: '#00ffff',\n aquamarine: '#7fffd4',\n azure: '#f0ffff',\n beige: '#f5f5dc',\n bisque: '#ffe4c4',\n black: '#000000',\n blanchedalmond: '#ffebcd',\n blue: '#0000ff',\n blueviolet: '#8a2be2',\n brown: '#a52a2a',\n burlywood: '#deb887',\n cadetblue: '#5f9ea0',\n chartreuse: '#7fff00',\n chocolate: '#d2691e',\n coral: '#ff7f50',\n cornflower: '#6495ed',\n cornflowerblue: '#6495ed',\n cornsilk: '#fff8dc',\n crimson: '#dc143c',\n cyan: '#00ffff',\n darkblue: '#00008b',\n darkcyan: '#008b8b',\n darkgoldenrod: '#b8860b',\n darkgray: '#a9a9a9',\n darkgreen: '#006400',\n darkgrey: '#a9a9a9',\n darkkhaki: '#bdb76b',\n darkmagenta: '#8b008b',\n darkolivegreen: '#556b2f',\n darkorange: '#ff8c00',\n darkorchid: '#9932cc',\n darkred: '#8b0000',\n darksalmon: '#e9967a',\n darkseagreen: '#8fbc8f',\n darkslateblue: '#483d8b',\n darkslategray: '#2f4f4f',\n darkslategrey: '#2f4f4f',\n darkturquoise: '#00ced1',\n darkviolet: '#9400d3',\n deeppink: '#ff1493',\n deepskyblue: '#00bfff',\n dimgray: '#696969',\n dimgrey: '#696969',\n dodgerblue: '#1e90ff',\n firebrick: '#b22222',\n floralwhite: '#fffaf0',\n forestgreen: '#228b22',\n fuchsia: '#ff00ff',\n gainsboro: '#dcdcdc',\n ghostwhite: '#f8f8ff',\n gold: '#ffd700',\n goldenrod: '#daa520',\n gray: '#808080',\n green: '#008000',\n greenyellow: '#adff2f',\n grey: '#808080',\n honeydew: '#f0fff0',\n hotpink: '#ff69b4',\n indianred: '#cd5c5c',\n indigo: '#4b0082',\n ivory: '#fffff0',\n khaki: '#f0e68c',\n laserlemon: '#ffff54',\n lavender: '#e6e6fa',\n lavenderblush: '#fff0f5',\n lawngreen: '#7cfc00',\n lemonchiffon: '#fffacd',\n lightblue: '#add8e6',\n lightcoral: '#f08080',\n lightcyan: '#e0ffff',\n lightgoldenrod: '#fafad2',\n lightgoldenrodyellow: '#fafad2',\n lightgray: '#d3d3d3',\n lightgreen: '#90ee90',\n lightgrey: '#d3d3d3',\n lightpink: '#ffb6c1',\n lightsalmon: '#ffa07a',\n lightseagreen: '#20b2aa',\n lightskyblue: '#87cefa',\n lightslategray: '#778899',\n lightslategrey: '#778899',\n lightsteelblue: '#b0c4de',\n lightyellow: '#ffffe0',\n lime: '#00ff00',\n limegreen: '#32cd32',\n linen: '#faf0e6',\n magenta: '#ff00ff',\n maroon: '#800000',\n maroon2: '#7f0000',\n maroon3: '#b03060',\n mediumaquamarine: '#66cdaa',\n mediumblue: '#0000cd',\n mediumorchid: '#ba55d3',\n mediumpurple: '#9370db',\n mediumseagreen: '#3cb371',\n mediumslateblue: '#7b68ee',\n mediumspringgreen: '#00fa9a',\n mediumturquoise: '#48d1cc',\n mediumvioletred: '#c71585',\n midnightblue: '#191970',\n mintcream: '#f5fffa',\n mistyrose: '#ffe4e1',\n moccasin: '#ffe4b5',\n navajowhite: '#ffdead',\n navy: '#000080',\n oldlace: '#fdf5e6',\n olive: '#808000',\n olivedrab: '#6b8e23',\n orange: '#ffa500',\n orangered: '#ff4500',\n orchid: '#da70d6',\n palegoldenrod: '#eee8aa',\n palegreen: '#98fb98',\n paleturquoise: '#afeeee',\n palevioletred: '#db7093',\n papayawhip: '#ffefd5',\n peachpuff: '#ffdab9',\n peru: '#cd853f',\n pink: '#ffc0cb',\n plum: '#dda0dd',\n powderblue: '#b0e0e6',\n purple: '#800080',\n purple2: '#7f007f',\n purple3: '#a020f0',\n rebeccapurple: '#663399',\n red: '#ff0000',\n rosybrown: '#bc8f8f',\n royalblue: '#4169e1',\n saddlebrown: '#8b4513',\n salmon: '#fa8072',\n sandybrown: '#f4a460',\n seagreen: '#2e8b57',\n seashell: '#fff5ee',\n sienna: '#a0522d',\n silver: '#c0c0c0',\n skyblue: '#87ceeb',\n slateblue: '#6a5acd',\n slategray: '#708090',\n slategrey: '#708090',\n snow: '#fffafa',\n springgreen: '#00ff7f',\n steelblue: '#4682b4',\n tan: '#d2b48c',\n teal: '#008080',\n thistle: '#d8bfd8',\n tomato: '#ff6347',\n turquoise: '#40e0d0',\n violet: '#ee82ee',\n wheat: '#f5deb3',\n white: '#ffffff',\n whitesmoke: '#f5f5f5',\n yellow: '#ffff00',\n yellowgreen: '#9acd32'\n };\n\n var w3cx11_1 = w3cx11;\n\n var type$b = utils.type;\n\n\n\n\n\n Color_1.prototype.name = function() {\n var hex = rgb2hex_1(this._rgb, 'rgb');\n for (var i = 0, list = Object.keys(w3cx11_1); i < list.length; i += 1) {\n var n = list[i];\n\n if (w3cx11_1[n] === hex) { return n.toLowerCase(); }\n }\n return hex;\n };\n\n input.format.named = function (name) {\n name = name.toLowerCase();\n if (w3cx11_1[name]) { return hex2rgb_1(w3cx11_1[name]); }\n throw new Error('unknown color name: '+name);\n };\n\n input.autodetect.push({\n p: 5,\n test: function (h) {\n var rest = [], len = arguments.length - 1;\n while ( len-- > 0 ) rest[ len ] = arguments[ len + 1 ];\n\n if (!rest.length && type$b(h) === 'string' && w3cx11_1[h.toLowerCase()]) {\n return 'named';\n }\n }\n });\n\n var unpack$t = utils.unpack;\n\n var rgb2num = function () {\n var args = [], len = arguments.length;\n while ( len-- ) args[ len ] = arguments[ len ];\n\n var ref = unpack$t(args, 'rgb');\n var r = ref[0];\n var g = ref[1];\n var b = ref[2];\n return (r << 16) + (g << 8) + b;\n };\n\n var rgb2num_1 = rgb2num;\n\n var type$c = utils.type;\n\n var num2rgb = function (num) {\n if (type$c(num) == \"number\" && num >= 0 && num <= 0xFFFFFF) {\n var r = num >> 16;\n var g = (num >> 8) & 0xFF;\n var b = num & 0xFF;\n return [r,g,b,1];\n }\n throw new Error(\"unknown num color: \"+num);\n };\n\n var num2rgb_1 = num2rgb;\n\n var type$d = utils.type;\n\n\n\n Color_1.prototype.num = function() {\n return rgb2num_1(this._rgb);\n };\n\n chroma_1.num = function () {\n var args = [], len = arguments.length;\n while ( len-- ) args[ len ] = arguments[ len ];\n\n return new (Function.prototype.bind.apply( Color_1, [ null ].concat( args, ['num']) ));\n };\n\n input.format.num = num2rgb_1;\n\n input.autodetect.push({\n p: 5,\n test: function () {\n var args = [], len = arguments.length;\n while ( len-- ) args[ len ] = arguments[ len ];\n\n if (args.length === 1 && type$d(args[0]) === 'number' && args[0] >= 0 && args[0] <= 0xFFFFFF) {\n return 'num';\n }\n }\n });\n\n var unpack$u = utils.unpack;\n var type$e = utils.type;\n var round$5 = Math.round;\n\n Color_1.prototype.rgb = function(rnd) {\n if ( rnd === void 0 ) rnd=true;\n\n if (rnd === false) { return this._rgb.slice(0,3); }\n return this._rgb.slice(0,3).map(round$5);\n };\n\n Color_1.prototype.rgba = function(rnd) {\n if ( rnd === void 0 ) rnd=true;\n\n return this._rgb.slice(0,4).map(function (v,i) {\n return i<3 ? (rnd === false ? v : round$5(v)) : v;\n });\n };\n\n chroma_1.rgb = function () {\n var args = [], len = arguments.length;\n while ( len-- ) args[ len ] = arguments[ len ];\n\n return new (Function.prototype.bind.apply( Color_1, [ null ].concat( args, ['rgb']) ));\n };\n\n input.format.rgb = function () {\n var args = [], len = arguments.length;\n while ( len-- ) args[ len ] = arguments[ len ];\n\n var rgba = unpack$u(args, 'rgba');\n if (rgba[3] === undefined) { rgba[3] = 1; }\n return rgba;\n };\n\n input.autodetect.push({\n p: 3,\n test: function () {\n var args = [], len = arguments.length;\n while ( len-- ) args[ len ] = arguments[ len ];\n\n args = unpack$u(args, 'rgba');\n if (type$e(args) === 'array' && (args.length === 3 ||\n args.length === 4 && type$e(args[3]) == 'number' && args[3] >= 0 && args[3] <= 1)) {\n return 'rgb';\n }\n }\n });\n\n /*\n * Based on implementation by Neil Bartlett\n * https://github.com/neilbartlett/color-temperature\n */\n\n var log = Math.log;\n\n var temperature2rgb = function (kelvin) {\n var temp = kelvin / 100;\n var r,g,b;\n if (temp < 66) {\n r = 255;\n g = -155.25485562709179 - 0.44596950469579133 * (g = temp-2) + 104.49216199393888 * log(g);\n b = temp < 20 ? 0 : -254.76935184120902 + 0.8274096064007395 * (b = temp-10) + 115.67994401066147 * log(b);\n } else {\n r = 351.97690566805693 + 0.114206453784165 * (r = temp-55) - 40.25366309332127 * log(r);\n g = 325.4494125711974 + 0.07943456536662342 * (g = temp-50) - 28.0852963507957 * log(g);\n b = 255;\n }\n return [r,g,b,1];\n };\n\n var temperature2rgb_1 = temperature2rgb;\n\n /*\n * Based on implementation by Neil Bartlett\n * https://github.com/neilbartlett/color-temperature\n **/\n\n\n var unpack$v = utils.unpack;\n var round$6 = Math.round;\n\n var rgb2temperature = function () {\n var args = [], len = arguments.length;\n while ( len-- ) args[ len ] = arguments[ len ];\n\n var rgb = unpack$v(args, 'rgb');\n var r = rgb[0], b = rgb[2];\n var minTemp = 1000;\n var maxTemp = 40000;\n var eps = 0.4;\n var temp;\n while (maxTemp - minTemp > eps) {\n temp = (maxTemp + minTemp) * 0.5;\n var rgb$1 = temperature2rgb_1(temp);\n if ((rgb$1[2] / rgb$1[0]) >= (b / r)) {\n maxTemp = temp;\n } else {\n minTemp = temp;\n }\n }\n return round$6(temp);\n };\n\n var rgb2temperature_1 = rgb2temperature;\n\n Color_1.prototype.temp =\n Color_1.prototype.kelvin =\n Color_1.prototype.temperature = function() {\n return rgb2temperature_1(this._rgb);\n };\n\n chroma_1.temp =\n chroma_1.kelvin =\n chroma_1.temperature = function () {\n var args = [], len = arguments.length;\n while ( len-- ) args[ len ] = arguments[ len ];\n\n return new (Function.prototype.bind.apply( Color_1, [ null ].concat( args, ['temp']) ));\n };\n\n input.format.temp =\n input.format.kelvin =\n input.format.temperature = temperature2rgb_1;\n\n var type$f = utils.type;\n\n Color_1.prototype.alpha = function(a, mutate) {\n if ( mutate === void 0 ) mutate=false;\n\n if (a !== undefined && type$f(a) === 'number') {\n if (mutate) {\n this._rgb[3] = a;\n return this;\n }\n return new Color_1([this._rgb[0], this._rgb[1], this._rgb[2], a], 'rgb');\n }\n return this._rgb[3];\n };\n\n Color_1.prototype.clipped = function() {\n return this._rgb._clipped || false;\n };\n\n Color_1.prototype.darken = function(amount) {\n \tif ( amount === void 0 ) amount=1;\n\n \tvar me = this;\n \tvar lab = me.lab();\n \tlab[0] -= labConstants.Kn * amount;\n \treturn new Color_1(lab, 'lab').alpha(me.alpha(), true);\n };\n\n Color_1.prototype.brighten = function(amount) {\n \tif ( amount === void 0 ) amount=1;\n\n \treturn this.darken(-amount);\n };\n\n Color_1.prototype.darker = Color_1.prototype.darken;\n Color_1.prototype.brighter = Color_1.prototype.brighten;\n\n Color_1.prototype.get = function(mc) {\n var ref = mc.split('.');\n var mode = ref[0];\n var channel = ref[1];\n var src = this[mode]();\n if (channel) {\n var i = mode.indexOf(channel);\n if (i > -1) { return src[i]; }\n throw new Error((\"unknown channel \" + channel + \" in mode \" + mode));\n } else {\n return src;\n }\n };\n\n var type$g = utils.type;\n var pow$2 = Math.pow;\n\n var EPS = 1e-7;\n var MAX_ITER = 20;\n\n Color_1.prototype.luminance = function(lum) {\n if (lum !== undefined && type$g(lum) === 'number') {\n if (lum === 0) {\n // return pure black\n return new Color_1([0,0,0,this._rgb[3]], 'rgb');\n }\n if (lum === 1) {\n // return pure white\n return new Color_1([255,255,255,this._rgb[3]], 'rgb');\n }\n // compute new color using...\n var cur_lum = this.luminance();\n var mode = 'rgb';\n var max_iter = MAX_ITER;\n\n var test = function (low, high) {\n var mid = low.interpolate(high, 0.5, mode);\n var lm = mid.luminance();\n if (Math.abs(lum - lm) < EPS || !max_iter--) {\n // close enough\n return mid;\n }\n return lm > lum ? test(low, mid) : test(mid, high);\n };\n\n var rgb = (cur_lum > lum ? test(new Color_1([0,0,0]), this) : test(this, new Color_1([255,255,255]))).rgb();\n return new Color_1(rgb.concat( [this._rgb[3]]));\n }\n return rgb2luminance.apply(void 0, (this._rgb).slice(0,3));\n };\n\n\n var rgb2luminance = function (r,g,b) {\n // relative luminance\n // see http://www.w3.org/TR/2008/REC-WCAG20-20081211/#relativeluminancedef\n r = luminance_x(r);\n g = luminance_x(g);\n b = luminance_x(b);\n return 0.2126 * r + 0.7152 * g + 0.0722 * b;\n };\n\n var luminance_x = function (x) {\n x /= 255;\n return x <= 0.03928 ? x/12.92 : pow$2((x+0.055)/1.055, 2.4);\n };\n\n var interpolator = {};\n\n var type$h = utils.type;\n\n\n var mix = function (col1, col2, f) {\n if ( f === void 0 ) f=0.5;\n var rest = [], len = arguments.length - 3;\n while ( len-- > 0 ) rest[ len ] = arguments[ len + 3 ];\n\n var mode = rest[0] || 'lrgb';\n if (!interpolator[mode] && !rest.length) {\n // fall back to the first supported mode\n mode = Object.keys(interpolator)[0];\n }\n if (!interpolator[mode]) {\n throw new Error((\"interpolation mode \" + mode + \" is not defined\"));\n }\n if (type$h(col1) !== 'object') { col1 = new Color_1(col1); }\n if (type$h(col2) !== 'object') { col2 = new Color_1(col2); }\n return interpolator[mode](col1, col2, f)\n .alpha(col1.alpha() + f * (col2.alpha() - col1.alpha()));\n };\n\n Color_1.prototype.mix =\n Color_1.prototype.interpolate = function(col2, f) {\n \tif ( f === void 0 ) f=0.5;\n \tvar rest = [], len = arguments.length - 2;\n \twhile ( len-- > 0 ) rest[ len ] = arguments[ len + 2 ];\n\n \treturn mix.apply(void 0, [ this, col2, f ].concat( rest ));\n };\n\n Color_1.prototype.premultiply = function(mutate) {\n \tif ( mutate === void 0 ) mutate=false;\n\n \tvar rgb = this._rgb;\n \tvar a = rgb[3];\n \tif (mutate) {\n \t\tthis._rgb = [rgb[0]*a, rgb[1]*a, rgb[2]*a, a];\n \t\treturn this;\n \t} else {\n \t\treturn new Color_1([rgb[0]*a, rgb[1]*a, rgb[2]*a, a], 'rgb');\n \t}\n };\n\n Color_1.prototype.saturate = function(amount) {\n \tif ( amount === void 0 ) amount=1;\n\n \tvar me = this;\n \tvar lch = me.lch();\n \tlch[1] += labConstants.Kn * amount;\n \tif (lch[1] < 0) { lch[1] = 0; }\n \treturn new Color_1(lch, 'lch').alpha(me.alpha(), true);\n };\n\n Color_1.prototype.desaturate = function(amount) {\n \tif ( amount === void 0 ) amount=1;\n\n \treturn this.saturate(-amount);\n };\n\n var type$i = utils.type;\n\n Color_1.prototype.set = function(mc, value, mutate) {\n if ( mutate === void 0 ) mutate=false;\n\n var ref = mc.split('.');\n var mode = ref[0];\n var channel = ref[1];\n var src = this[mode]();\n if (channel) {\n var i = mode.indexOf(channel);\n if (i > -1) {\n if (type$i(value) == 'string') {\n switch(value.charAt(0)) {\n case '+': src[i] += +value; break;\n case '-': src[i] += +value; break;\n case '*': src[i] *= +(value.substr(1)); break;\n case '/': src[i] /= +(value.substr(1)); break;\n default: src[i] = +value;\n }\n } else if (type$i(value) === 'number') {\n src[i] = value;\n } else {\n throw new Error(\"unsupported value for Color.set\");\n }\n var out = new Color_1(src, mode);\n if (mutate) {\n this._rgb = out._rgb;\n return this;\n }\n return out;\n }\n throw new Error((\"unknown channel \" + channel + \" in mode \" + mode));\n } else {\n return src;\n }\n };\n\n var rgb$1 = function (col1, col2, f) {\n var xyz0 = col1._rgb;\n var xyz1 = col2._rgb;\n return new Color_1(\n xyz0[0] + f * (xyz1[0]-xyz0[0]),\n xyz0[1] + f * (xyz1[1]-xyz0[1]),\n xyz0[2] + f * (xyz1[2]-xyz0[2]),\n 'rgb'\n )\n };\n\n // register interpolator\n interpolator.rgb = rgb$1;\n\n var sqrt$2 = Math.sqrt;\n var pow$3 = Math.pow;\n\n var lrgb = function (col1, col2, f) {\n var ref = col1._rgb;\n var x1 = ref[0];\n var y1 = ref[1];\n var z1 = ref[2];\n var ref$1 = col2._rgb;\n var x2 = ref$1[0];\n var y2 = ref$1[1];\n var z2 = ref$1[2];\n return new Color_1(\n sqrt$2(pow$3(x1,2) * (1-f) + pow$3(x2,2) * f),\n sqrt$2(pow$3(y1,2) * (1-f) + pow$3(y2,2) * f),\n sqrt$2(pow$3(z1,2) * (1-f) + pow$3(z2,2) * f),\n 'rgb'\n )\n };\n\n // register interpolator\n interpolator.lrgb = lrgb;\n\n var lab$1 = function (col1, col2, f) {\n var xyz0 = col1.lab();\n var xyz1 = col2.lab();\n return new Color_1(\n xyz0[0] + f * (xyz1[0]-xyz0[0]),\n xyz0[1] + f * (xyz1[1]-xyz0[1]),\n xyz0[2] + f * (xyz1[2]-xyz0[2]),\n 'lab'\n )\n };\n\n // register interpolator\n interpolator.lab = lab$1;\n\n var _hsx = function (col1, col2, f, m) {\n var assign, assign$1;\n\n var xyz0, xyz1;\n if (m === 'hsl') {\n xyz0 = col1.hsl();\n xyz1 = col2.hsl();\n } else if (m === 'hsv') {\n xyz0 = col1.hsv();\n xyz1 = col2.hsv();\n } else if (m === 'hcg') {\n xyz0 = col1.hcg();\n xyz1 = col2.hcg();\n } else if (m === 'hsi') {\n xyz0 = col1.hsi();\n xyz1 = col2.hsi();\n } else if (m === 'lch' || m === 'hcl') {\n m = 'hcl';\n xyz0 = col1.hcl();\n xyz1 = col2.hcl();\n }\n\n var hue0, hue1, sat0, sat1, lbv0, lbv1;\n if (m.substr(0, 1) === 'h') {\n (assign = xyz0, hue0 = assign[0], sat0 = assign[1], lbv0 = assign[2]);\n (assign$1 = xyz1, hue1 = assign$1[0], sat1 = assign$1[1], lbv1 = assign$1[2]);\n }\n\n var sat, hue, lbv, dh;\n\n if (!isNaN(hue0) && !isNaN(hue1)) {\n // both colors have hue\n if (hue1 > hue0 && hue1 - hue0 > 180) {\n dh = hue1-(hue0+360);\n } else if (hue1 < hue0 && hue0 - hue1 > 180) {\n dh = hue1+360-hue0;\n } else{\n dh = hue1 - hue0;\n }\n hue = hue0 + f * dh;\n } else if (!isNaN(hue0)) {\n hue = hue0;\n if ((lbv1 == 1 || lbv1 == 0) && m != 'hsv') { sat = sat0; }\n } else if (!isNaN(hue1)) {\n hue = hue1;\n if ((lbv0 == 1 || lbv0 == 0) && m != 'hsv') { sat = sat1; }\n } else {\n hue = Number.NaN;\n }\n\n if (sat === undefined) { sat = sat0 + f * (sat1 - sat0); }\n lbv = lbv0 + f * (lbv1-lbv0);\n return new Color_1([hue, sat, lbv], m);\n };\n\n var lch$1 = function (col1, col2, f) {\n \treturn _hsx(col1, col2, f, 'lch');\n };\n\n // register interpolator\n interpolator.lch = lch$1;\n interpolator.hcl = lch$1;\n\n var num$1 = function (col1, col2, f) {\n var c1 = col1.num();\n var c2 = col2.num();\n return new Color_1(c1 + f * (c2-c1), 'num')\n };\n\n // register interpolator\n interpolator.num = num$1;\n\n var hcg$1 = function (col1, col2, f) {\n \treturn _hsx(col1, col2, f, 'hcg');\n };\n\n // register interpolator\n interpolator.hcg = hcg$1;\n\n var hsi$1 = function (col1, col2, f) {\n \treturn _hsx(col1, col2, f, 'hsi');\n };\n\n // register interpolator\n interpolator.hsi = hsi$1;\n\n var hsl$1 = function (col1, col2, f) {\n \treturn _hsx(col1, col2, f, 'hsl');\n };\n\n // register interpolator\n interpolator.hsl = hsl$1;\n\n var hsv$1 = function (col1, col2, f) {\n \treturn _hsx(col1, col2, f, 'hsv');\n };\n\n // register interpolator\n interpolator.hsv = hsv$1;\n\n var clip_rgb$2 = utils.clip_rgb;\n var pow$4 = Math.pow;\n var sqrt$3 = Math.sqrt;\n var PI$1 = Math.PI;\n var cos$2 = Math.cos;\n var sin$1 = Math.sin;\n var atan2$1 = Math.atan2;\n\n var average = function (colors, mode, weights) {\n if ( mode === void 0 ) mode='lrgb';\n if ( weights === void 0 ) weights=null;\n\n var l = colors.length;\n if (!weights) { weights = Array.from(new Array(l)).map(function () { return 1; }); }\n // normalize weights\n var k = l / weights.reduce(function(a, b) { return a + b; });\n weights.forEach(function (w,i) { weights[i] *= k; });\n // convert colors to Color objects\n colors = colors.map(function (c) { return new Color_1(c); });\n if (mode === 'lrgb') {\n return _average_lrgb(colors, weights)\n }\n var first = colors.shift();\n var xyz = first.get(mode);\n var cnt = [];\n var dx = 0;\n var dy = 0;\n // initial color\n for (var i=0; i= 360) { A$1 -= 360; }\n xyz[i$1] = A$1;\n } else {\n xyz[i$1] = xyz[i$1]/cnt[i$1];\n }\n }\n alpha /= l;\n return (new Color_1(xyz, mode)).alpha(alpha > 0.99999 ? 1 : alpha, true);\n };\n\n\n var _average_lrgb = function (colors, weights) {\n var l = colors.length;\n var xyz = [0,0,0,0];\n for (var i=0; i < colors.length; i++) {\n var col = colors[i];\n var f = weights[i] / l;\n var rgb = col._rgb;\n xyz[0] += pow$4(rgb[0],2) * f;\n xyz[1] += pow$4(rgb[1],2) * f;\n xyz[2] += pow$4(rgb[2],2) * f;\n xyz[3] += rgb[3] * f;\n }\n xyz[0] = sqrt$3(xyz[0]);\n xyz[1] = sqrt$3(xyz[1]);\n xyz[2] = sqrt$3(xyz[2]);\n if (xyz[3] > 0.9999999) { xyz[3] = 1; }\n return new Color_1(clip_rgb$2(xyz));\n };\n\n // minimal multi-purpose interface\n\n // @requires utils color analyze\n\n\n var type$j = utils.type;\n\n var pow$5 = Math.pow;\n\n var scale = function(colors) {\n\n // constructor\n var _mode = 'rgb';\n var _nacol = chroma_1('#ccc');\n var _spread = 0;\n // const _fixed = false;\n var _domain = [0, 1];\n var _pos = [];\n var _padding = [0,0];\n var _classes = false;\n var _colors = [];\n var _out = false;\n var _min = 0;\n var _max = 1;\n var _correctLightness = false;\n var _colorCache = {};\n var _useCache = true;\n var _gamma = 1;\n\n // private methods\n\n var setColors = function(colors) {\n colors = colors || ['#fff', '#000'];\n if (colors && type$j(colors) === 'string' && chroma_1.brewer &&\n chroma_1.brewer[colors.toLowerCase()]) {\n colors = chroma_1.brewer[colors.toLowerCase()];\n }\n if (type$j(colors) === 'array') {\n // handle single color\n if (colors.length === 1) {\n colors = [colors[0], colors[0]];\n }\n // make a copy of the colors\n colors = colors.slice(0);\n // convert to chroma classes\n for (var c=0; c= _classes[i]) {\n i++;\n }\n return i-1;\n }\n return 0;\n };\n\n var tMapLightness = function (t) { return t; };\n var tMapDomain = function (t) { return t; };\n\n // const classifyValue = function(value) {\n // let val = value;\n // if (_classes.length > 2) {\n // const n = _classes.length-1;\n // const i = getClass(value);\n // const minc = _classes[0] + ((_classes[1]-_classes[0]) * (0 + (_spread * 0.5))); // center of 1st class\n // const maxc = _classes[n-1] + ((_classes[n]-_classes[n-1]) * (1 - (_spread * 0.5))); // center of last class\n // val = _min + ((((_classes[i] + ((_classes[i+1] - _classes[i]) * 0.5)) - minc) / (maxc-minc)) * (_max - _min));\n // }\n // return val;\n // };\n\n var getColor = function(val, bypassMap) {\n var col, t;\n if (bypassMap == null) { bypassMap = false; }\n if (isNaN(val) || (val === null)) { return _nacol; }\n if (!bypassMap) {\n if (_classes && (_classes.length > 2)) {\n // find the class\n var c = getClass(val);\n t = c / (_classes.length-2);\n } else if (_max !== _min) {\n // just interpolate between min/max\n t = (val - _min) / (_max - _min);\n } else {\n t = 1;\n }\n } else {\n t = val;\n }\n\n // domain map\n t = tMapDomain(t);\n\n if (!bypassMap) {\n t = tMapLightness(t); // lightness correction\n }\n\n if (_gamma !== 1) { t = pow$5(t, _gamma); }\n\n t = _padding[0] + (t * (1 - _padding[0] - _padding[1]));\n\n t = Math.min(1, Math.max(0, t));\n\n var k = Math.floor(t * 10000);\n\n if (_useCache && _colorCache[k]) {\n col = _colorCache[k];\n } else {\n if (type$j(_colors) === 'array') {\n //for i in [0.._pos.length-1]\n for (var i=0; i<_pos.length; i++) {\n var p = _pos[i];\n if (t <= p) {\n col = _colors[i];\n break;\n }\n if ((t >= p) && (i === (_pos.length-1))) {\n col = _colors[i];\n break;\n }\n if (t > p && t < _pos[i+1]) {\n t = (t-p)/(_pos[i+1]-p);\n col = chroma_1.interpolate(_colors[i], _colors[i+1], t, _mode);\n break;\n }\n }\n } else if (type$j(_colors) === 'function') {\n col = _colors(t);\n }\n if (_useCache) { _colorCache[k] = col; }\n }\n return col;\n };\n\n var resetCache = function () { return _colorCache = {}; };\n\n setColors(colors);\n\n // public interface\n\n var f = function(v) {\n var c = chroma_1(getColor(v));\n if (_out && c[_out]) { return c[_out](); } else { return c; }\n };\n\n f.classes = function(classes) {\n if (classes != null) {\n if (type$j(classes) === 'array') {\n _classes = classes;\n _domain = [classes[0], classes[classes.length-1]];\n } else {\n var d = chroma_1.analyze(_domain);\n if (classes === 0) {\n _classes = [d.min, d.max];\n } else {\n _classes = chroma_1.limits(d, 'e', classes);\n }\n }\n return f;\n }\n return _classes;\n };\n\n\n f.domain = function(domain) {\n if (!arguments.length) {\n return _domain;\n }\n _min = domain[0];\n _max = domain[domain.length-1];\n _pos = [];\n var k = _colors.length;\n if ((domain.length === k) && (_min !== _max)) {\n // update positions\n for (var i = 0, list = Array.from(domain); i < list.length; i += 1) {\n var d = list[i];\n\n _pos.push((d-_min) / (_max-_min));\n }\n } else {\n for (var c=0; c 2) {\n // set domain map\n var tOut = domain.map(function (d,i) { return i/(domain.length-1); });\n var tBreaks = domain.map(function (d) { return (d - _min) / (_max - _min); });\n if (!tBreaks.every(function (val, i) { return tOut[i] === val; })) {\n tMapDomain = function (t) {\n if (t <= 0 || t >= 1) { return t; }\n var i = 0;\n while (t >= tBreaks[i+1]) { i++; }\n var f = (t - tBreaks[i]) / (tBreaks[i+1] - tBreaks[i]);\n var out = tOut[i] + f * (tOut[i+1] - tOut[i]);\n return out;\n };\n }\n\n }\n }\n _domain = [_min, _max];\n return f;\n };\n\n f.mode = function(_m) {\n if (!arguments.length) {\n return _mode;\n }\n _mode = _m;\n resetCache();\n return f;\n };\n\n f.range = function(colors, _pos) {\n setColors(colors, _pos);\n return f;\n };\n\n f.out = function(_o) {\n _out = _o;\n return f;\n };\n\n f.spread = function(val) {\n if (!arguments.length) {\n return _spread;\n }\n _spread = val;\n return f;\n };\n\n f.correctLightness = function(v) {\n if (v == null) { v = true; }\n _correctLightness = v;\n resetCache();\n if (_correctLightness) {\n tMapLightness = function(t) {\n var L0 = getColor(0, true).lab()[0];\n var L1 = getColor(1, true).lab()[0];\n var pol = L0 > L1;\n var L_actual = getColor(t, true).lab()[0];\n var L_ideal = L0 + ((L1 - L0) * t);\n var L_diff = L_actual - L_ideal;\n var t0 = 0;\n var t1 = 1;\n var max_iter = 20;\n while ((Math.abs(L_diff) > 1e-2) && (max_iter-- > 0)) {\n (function() {\n if (pol) { L_diff *= -1; }\n if (L_diff < 0) {\n t0 = t;\n t += (t1 - t) * 0.5;\n } else {\n t1 = t;\n t += (t0 - t) * 0.5;\n }\n L_actual = getColor(t, true).lab()[0];\n return L_diff = L_actual - L_ideal;\n })();\n }\n return t;\n };\n } else {\n tMapLightness = function (t) { return t; };\n }\n return f;\n };\n\n f.padding = function(p) {\n if (p != null) {\n if (type$j(p) === 'number') {\n p = [p,p];\n }\n _padding = p;\n return f;\n } else {\n return _padding;\n }\n };\n\n f.colors = function(numColors, out) {\n // If no arguments are given, return the original colors that were provided\n if (arguments.length < 2) { out = 'hex'; }\n var result = [];\n\n if (arguments.length === 0) {\n result = _colors.slice(0);\n\n } else if (numColors === 1) {\n result = [f(0.5)];\n\n } else if (numColors > 1) {\n var dm = _domain[0];\n var dd = _domain[1] - dm;\n result = __range__(0, numColors, false).map(function (i) { return f( dm + ((i/(numColors-1)) * dd) ); });\n\n } else { // returns all colors based on the defined classes\n colors = [];\n var samples = [];\n if (_classes && (_classes.length > 2)) {\n for (var i = 1, end = _classes.length, asc = 1 <= end; asc ? i < end : i > end; asc ? i++ : i--) {\n samples.push((_classes[i-1]+_classes[i])*0.5);\n }\n } else {\n samples = _domain;\n }\n result = samples.map(function (v) { return f(v); });\n }\n\n if (chroma_1[out]) {\n result = result.map(function (c) { return c[out](); });\n }\n return result;\n };\n\n f.cache = function(c) {\n if (c != null) {\n _useCache = c;\n return f;\n } else {\n return _useCache;\n }\n };\n\n f.gamma = function(g) {\n if (g != null) {\n _gamma = g;\n return f;\n } else {\n return _gamma;\n }\n };\n\n f.nodata = function(d) {\n if (d != null) {\n _nacol = chroma_1(d);\n return f;\n } else {\n return _nacol;\n }\n };\n\n return f;\n };\n\n function __range__(left, right, inclusive) {\n var range = [];\n var ascending = left < right;\n var end = !inclusive ? right : ascending ? right + 1 : right - 1;\n for (var i = left; ascending ? i < end : i > end; ascending ? i++ : i--) {\n range.push(i);\n }\n return range;\n }\n\n //\n // interpolates between a set of colors uzing a bezier spline\n //\n\n // @requires utils lab\n\n\n\n\n var bezier = function(colors) {\n var assign, assign$1, assign$2;\n\n var I, lab0, lab1, lab2;\n colors = colors.map(function (c) { return new Color_1(c); });\n if (colors.length === 2) {\n // linear interpolation\n (assign = colors.map(function (c) { return c.lab(); }), lab0 = assign[0], lab1 = assign[1]);\n I = function(t) {\n var lab = ([0, 1, 2].map(function (i) { return lab0[i] + (t * (lab1[i] - lab0[i])); }));\n return new Color_1(lab, 'lab');\n };\n } else if (colors.length === 3) {\n // quadratic bezier interpolation\n (assign$1 = colors.map(function (c) { return c.lab(); }), lab0 = assign$1[0], lab1 = assign$1[1], lab2 = assign$1[2]);\n I = function(t) {\n var lab = ([0, 1, 2].map(function (i) { return ((1-t)*(1-t) * lab0[i]) + (2 * (1-t) * t * lab1[i]) + (t * t * lab2[i]); }));\n return new Color_1(lab, 'lab');\n };\n } else if (colors.length === 4) {\n // cubic bezier interpolation\n var lab3;\n (assign$2 = colors.map(function (c) { return c.lab(); }), lab0 = assign$2[0], lab1 = assign$2[1], lab2 = assign$2[2], lab3 = assign$2[3]);\n I = function(t) {\n var lab = ([0, 1, 2].map(function (i) { return ((1-t)*(1-t)*(1-t) * lab0[i]) + (3 * (1-t) * (1-t) * t * lab1[i]) + (3 * (1-t) * t * t * lab2[i]) + (t*t*t * lab3[i]); }));\n return new Color_1(lab, 'lab');\n };\n } else if (colors.length === 5) {\n var I0 = bezier(colors.slice(0, 3));\n var I1 = bezier(colors.slice(2, 5));\n I = function(t) {\n if (t < 0.5) {\n return I0(t*2);\n } else {\n return I1((t-0.5)*2);\n }\n };\n }\n return I;\n };\n\n var bezier_1 = function (colors) {\n var f = bezier(colors);\n f.scale = function () { return scale(f); };\n return f;\n };\n\n /*\n * interpolates between a set of colors uzing a bezier spline\n * blend mode formulas taken from http://www.venture-ware.com/kevin/coding/lets-learn-math-photoshop-blend-modes/\n */\n\n\n\n\n var blend = function (bottom, top, mode) {\n if (!blend[mode]) {\n throw new Error('unknown blend mode ' + mode);\n }\n return blend[mode](bottom, top);\n };\n\n var blend_f = function (f) { return function (bottom,top) {\n var c0 = chroma_1(top).rgb();\n var c1 = chroma_1(bottom).rgb();\n return chroma_1.rgb(f(c0, c1));\n }; };\n\n var each = function (f) { return function (c0, c1) {\n var out = [];\n out[0] = f(c0[0], c1[0]);\n out[1] = f(c0[1], c1[1]);\n out[2] = f(c0[2], c1[2]);\n return out;\n }; };\n\n var normal = function (a) { return a; };\n var multiply = function (a,b) { return a * b / 255; };\n var darken$1 = function (a,b) { return a > b ? b : a; };\n var lighten = function (a,b) { return a > b ? a : b; };\n var screen = function (a,b) { return 255 * (1 - (1-a/255) * (1-b/255)); };\n var overlay = function (a,b) { return b < 128 ? 2 * a * b / 255 : 255 * (1 - 2 * (1 - a / 255 ) * ( 1 - b / 255 )); };\n var burn = function (a,b) { return 255 * (1 - (1 - b / 255) / (a/255)); };\n var dodge = function (a,b) {\n if (a === 255) { return 255; }\n a = 255 * (b / 255) / (1 - a / 255);\n return a > 255 ? 255 : a\n };\n\n // # add = (a,b) ->\n // # if (a + b > 255) then 255 else a + b\n\n blend.normal = blend_f(each(normal));\n blend.multiply = blend_f(each(multiply));\n blend.screen = blend_f(each(screen));\n blend.overlay = blend_f(each(overlay));\n blend.darken = blend_f(each(darken$1));\n blend.lighten = blend_f(each(lighten));\n blend.dodge = blend_f(each(dodge));\n blend.burn = blend_f(each(burn));\n // blend.add = blend_f(each(add));\n\n var blend_1 = blend;\n\n // cubehelix interpolation\n // based on D.A. Green \"A colour scheme for the display of astronomical intensity images\"\n // http://astron-soc.in/bulletin/11June/289392011.pdf\n\n var type$k = utils.type;\n var clip_rgb$3 = utils.clip_rgb;\n var TWOPI$2 = utils.TWOPI;\n var pow$6 = Math.pow;\n var sin$2 = Math.sin;\n var cos$3 = Math.cos;\n\n\n var cubehelix = function(start, rotations, hue, gamma, lightness) {\n if ( start === void 0 ) start=300;\n if ( rotations === void 0 ) rotations=-1.5;\n if ( hue === void 0 ) hue=1;\n if ( gamma === void 0 ) gamma=1;\n if ( lightness === void 0 ) lightness=[0,1];\n\n var dh = 0, dl;\n if (type$k(lightness) === 'array') {\n dl = lightness[1] - lightness[0];\n } else {\n dl = 0;\n lightness = [lightness, lightness];\n }\n\n var f = function(fract) {\n var a = TWOPI$2 * (((start+120)/360) + (rotations * fract));\n var l = pow$6(lightness[0] + (dl * fract), gamma);\n var h = dh !== 0 ? hue[0] + (fract * dh) : hue;\n var amp = (h * l * (1-l)) / 2;\n var cos_a = cos$3(a);\n var sin_a = sin$2(a);\n var r = l + (amp * ((-0.14861 * cos_a) + (1.78277* sin_a)));\n var g = l + (amp * ((-0.29227 * cos_a) - (0.90649* sin_a)));\n var b = l + (amp * (+1.97294 * cos_a));\n return chroma_1(clip_rgb$3([r*255,g*255,b*255,1]));\n };\n\n f.start = function(s) {\n if ((s == null)) { return start; }\n start = s;\n return f;\n };\n\n f.rotations = function(r) {\n if ((r == null)) { return rotations; }\n rotations = r;\n return f;\n };\n\n f.gamma = function(g) {\n if ((g == null)) { return gamma; }\n gamma = g;\n return f;\n };\n\n f.hue = function(h) {\n if ((h == null)) { return hue; }\n hue = h;\n if (type$k(hue) === 'array') {\n dh = hue[1] - hue[0];\n if (dh === 0) { hue = hue[1]; }\n } else {\n dh = 0;\n }\n return f;\n };\n\n f.lightness = function(h) {\n if ((h == null)) { return lightness; }\n if (type$k(h) === 'array') {\n lightness = h;\n dl = h[1] - h[0];\n } else {\n lightness = [h,h];\n dl = 0;\n }\n return f;\n };\n\n f.scale = function () { return chroma_1.scale(f); };\n\n f.hue(hue);\n\n return f;\n };\n\n var digits = '0123456789abcdef';\n\n var floor$2 = Math.floor;\n var random = Math.random;\n\n var random_1 = function () {\n var code = '#';\n for (var i=0; i<6; i++) {\n code += digits.charAt(floor$2(random() * 16));\n }\n return new Color_1(code, 'hex');\n };\n\n var log$1 = Math.log;\n var pow$7 = Math.pow;\n var floor$3 = Math.floor;\n var abs = Math.abs;\n\n\n var analyze = function (data, key) {\n if ( key === void 0 ) key=null;\n\n var r = {\n min: Number.MAX_VALUE,\n max: Number.MAX_VALUE*-1,\n sum: 0,\n values: [],\n count: 0\n };\n if (type(data) === 'object') {\n data = Object.values(data);\n }\n data.forEach(function (val) {\n if (key && type(val) === 'object') { val = val[key]; }\n if (val !== undefined && val !== null && !isNaN(val)) {\n r.values.push(val);\n r.sum += val;\n if (val < r.min) { r.min = val; }\n if (val > r.max) { r.max = val; }\n r.count += 1;\n }\n });\n\n r.domain = [r.min, r.max];\n\n r.limits = function (mode, num) { return limits(r, mode, num); };\n\n return r;\n };\n\n\n var limits = function (data, mode, num) {\n if ( mode === void 0 ) mode='equal';\n if ( num === void 0 ) num=7;\n\n if (type(data) == 'array') {\n data = analyze(data);\n }\n var min = data.min;\n var max = data.max;\n var values = data.values.sort(function (a,b) { return a-b; });\n\n if (num === 1) { return [min,max]; }\n\n var limits = [];\n\n if (mode.substr(0,1) === 'c') { // continuous\n limits.push(min);\n limits.push(max);\n }\n\n if (mode.substr(0,1) === 'e') { // equal interval\n limits.push(min);\n for (var i=1; i 0');\n }\n var min_log = Math.LOG10E * log$1(min);\n var max_log = Math.LOG10E * log$1(max);\n limits.push(min);\n for (var i$1=1; i$1 pb\n var pr = p - pb;\n limits.push((values[pb]*(1-pr)) + (values[pb+1]*pr));\n }\n }\n limits.push(max);\n\n }\n\n else if (mode.substr(0,1) === 'k') { // k-means clustering\n /*\n implementation based on\n http://code.google.com/p/figue/source/browse/trunk/figue.js#336\n simplified for 1-d input values\n */\n var cluster;\n var n = values.length;\n var assignments = new Array(n);\n var clusterSizes = new Array(num);\n var repeat = true;\n var nb_iters = 0;\n var centroids = null;\n\n // get seed values\n centroids = [];\n centroids.push(min);\n for (var i$3=1; i$3 200) {\n repeat = false;\n }\n }\n\n // finished k-means clustering\n // the next part is borrowed from gabrielflor.it\n var kClusters = {};\n for (var j$5=0; j$5 l2 ? (l1 + 0.05) / (l2 + 0.05) : (l2 + 0.05) / (l1 + 0.05);\n };\n\n var sqrt$4 = Math.sqrt;\n var atan2$2 = Math.atan2;\n var abs$1 = Math.abs;\n var cos$4 = Math.cos;\n var PI$2 = Math.PI;\n\n var deltaE = function(a, b, L, C) {\n if ( L === void 0 ) L=1;\n if ( C === void 0 ) C=1;\n\n // Delta E (CMC)\n // see http://www.brucelindbloom.com/index.html?Eqn_DeltaE_CMC.html\n a = new Color_1(a);\n b = new Color_1(b);\n var ref = Array.from(a.lab());\n var L1 = ref[0];\n var a1 = ref[1];\n var b1 = ref[2];\n var ref$1 = Array.from(b.lab());\n var L2 = ref$1[0];\n var a2 = ref$1[1];\n var b2 = ref$1[2];\n var c1 = sqrt$4((a1 * a1) + (b1 * b1));\n var c2 = sqrt$4((a2 * a2) + (b2 * b2));\n var sl = L1 < 16.0 ? 0.511 : (0.040975 * L1) / (1.0 + (0.01765 * L1));\n var sc = ((0.0638 * c1) / (1.0 + (0.0131 * c1))) + 0.638;\n var h1 = c1 < 0.000001 ? 0.0 : (atan2$2(b1, a1) * 180.0) / PI$2;\n while (h1 < 0) { h1 += 360; }\n while (h1 >= 360) { h1 -= 360; }\n var t = (h1 >= 164.0) && (h1 <= 345.0) ? (0.56 + abs$1(0.2 * cos$4((PI$2 * (h1 + 168.0)) / 180.0))) : (0.36 + abs$1(0.4 * cos$4((PI$2 * (h1 + 35.0)) / 180.0)));\n var c4 = c1 * c1 * c1 * c1;\n var f = sqrt$4(c4 / (c4 + 1900.0));\n var sh = sc * (((f * t) + 1.0) - f);\n var delL = L1 - L2;\n var delC = c1 - c2;\n var delA = a1 - a2;\n var delB = b1 - b2;\n var dH2 = ((delA * delA) + (delB * delB)) - (delC * delC);\n var v1 = delL / (L * sl);\n var v2 = delC / (C * sc);\n var v3 = sh;\n return sqrt$4((v1 * v1) + (v2 * v2) + (dH2 / (v3 * v3)));\n };\n\n // simple Euclidean distance\n var distance = function(a, b, mode) {\n if ( mode === void 0 ) mode='lab';\n\n // Delta E (CIE 1976)\n // see http://www.brucelindbloom.com/index.html?Equations.html\n a = new Color_1(a);\n b = new Color_1(b);\n var l1 = a.get(mode);\n var l2 = b.get(mode);\n var sum_sq = 0;\n for (var i in l1) {\n var d = (l1[i] || 0) - (l2[i] || 0);\n sum_sq += d*d;\n }\n return Math.sqrt(sum_sq);\n };\n\n var valid = function () {\n var args = [], len = arguments.length;\n while ( len-- ) args[ len ] = arguments[ len ];\n\n try {\n new (Function.prototype.bind.apply( Color_1, [ null ].concat( args) ));\n return true;\n } catch (e) {\n return false;\n }\n };\n\n // some pre-defined color scales:\n\n\n\n\n var scales = {\n \tcool: function cool() { return scale([chroma_1.hsl(180,1,.9), chroma_1.hsl(250,.7,.4)]) },\n \thot: function hot() { return scale(['#000','#f00','#ff0','#fff'], [0,.25,.75,1]).mode('rgb') }\n };\n\n /**\n ColorBrewer colors for chroma.js\n\n Copyright (c) 2002 Cynthia Brewer, Mark Harrower, and The\n Pennsylvania State University.\n\n Licensed under the Apache License, Version 2.0 (the \"License\");\n you may not use this file except in compliance with the License.\n You may obtain a copy of the License at\n http://www.apache.org/licenses/LICENSE-2.0\n\n Unless required by applicable law or agreed to in writing, software distributed\n under the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR\n CONDITIONS OF ANY KIND, either express or implied. See the License for the\n specific language governing permissions and limitations under the License.\n */\n\n var colorbrewer = {\n // sequential\n OrRd: ['#fff7ec', '#fee8c8', '#fdd49e', '#fdbb84', '#fc8d59', '#ef6548', '#d7301f', '#b30000', '#7f0000'],\n PuBu: ['#fff7fb', '#ece7f2', '#d0d1e6', '#a6bddb', '#74a9cf', '#3690c0', '#0570b0', '#045a8d', '#023858'],\n BuPu: ['#f7fcfd', '#e0ecf4', '#bfd3e6', '#9ebcda', '#8c96c6', '#8c6bb1', '#88419d', '#810f7c', '#4d004b'],\n Oranges: ['#fff5eb', '#fee6ce', '#fdd0a2', '#fdae6b', '#fd8d3c', '#f16913', '#d94801', '#a63603', '#7f2704'],\n BuGn: ['#f7fcfd', '#e5f5f9', '#ccece6', '#99d8c9', '#66c2a4', '#41ae76', '#238b45', '#006d2c', '#00441b'],\n YlOrBr: ['#ffffe5', '#fff7bc', '#fee391', '#fec44f', '#fe9929', '#ec7014', '#cc4c02', '#993404', '#662506'],\n YlGn: ['#ffffe5', '#f7fcb9', '#d9f0a3', '#addd8e', '#78c679', '#41ab5d', '#238443', '#006837', '#004529'],\n Reds: ['#fff5f0', '#fee0d2', '#fcbba1', '#fc9272', '#fb6a4a', '#ef3b2c', '#cb181d', '#a50f15', '#67000d'],\n RdPu: ['#fff7f3', '#fde0dd', '#fcc5c0', '#fa9fb5', '#f768a1', '#dd3497', '#ae017e', '#7a0177', '#49006a'],\n Greens: ['#f7fcf5', '#e5f5e0', '#c7e9c0', '#a1d99b', '#74c476', '#41ab5d', '#238b45', '#006d2c', '#00441b'],\n YlGnBu: ['#ffffd9', '#edf8b1', '#c7e9b4', '#7fcdbb', '#41b6c4', '#1d91c0', '#225ea8', '#253494', '#081d58'],\n Purples: ['#fcfbfd', '#efedf5', '#dadaeb', '#bcbddc', '#9e9ac8', '#807dba', '#6a51a3', '#54278f', '#3f007d'],\n GnBu: ['#f7fcf0', '#e0f3db', '#ccebc5', '#a8ddb5', '#7bccc4', '#4eb3d3', '#2b8cbe', '#0868ac', '#084081'],\n Greys: ['#ffffff', '#f0f0f0', '#d9d9d9', '#bdbdbd', '#969696', '#737373', '#525252', '#252525', '#000000'],\n YlOrRd: ['#ffffcc', '#ffeda0', '#fed976', '#feb24c', '#fd8d3c', '#fc4e2a', '#e31a1c', '#bd0026', '#800026'],\n PuRd: ['#f7f4f9', '#e7e1ef', '#d4b9da', '#c994c7', '#df65b0', '#e7298a', '#ce1256', '#980043', '#67001f'],\n Blues: ['#f7fbff', '#deebf7', '#c6dbef', '#9ecae1', '#6baed6', '#4292c6', '#2171b5', '#08519c', '#08306b'],\n PuBuGn: ['#fff7fb', '#ece2f0', '#d0d1e6', '#a6bddb', '#67a9cf', '#3690c0', '#02818a', '#016c59', '#014636'],\n Viridis: ['#440154', '#482777', '#3f4a8a', '#31678e', '#26838f', '#1f9d8a', '#6cce5a', '#b6de2b', '#fee825'],\n\n // diverging\n\n Spectral: ['#9e0142', '#d53e4f', '#f46d43', '#fdae61', '#fee08b', '#ffffbf', '#e6f598', '#abdda4', '#66c2a5', '#3288bd', '#5e4fa2'],\n RdYlGn: ['#a50026', '#d73027', '#f46d43', '#fdae61', '#fee08b', '#ffffbf', '#d9ef8b', '#a6d96a', '#66bd63', '#1a9850', '#006837'],\n RdBu: ['#67001f', '#b2182b', '#d6604d', '#f4a582', '#fddbc7', '#f7f7f7', '#d1e5f0', '#92c5de', '#4393c3', '#2166ac', '#053061'],\n PiYG: ['#8e0152', '#c51b7d', '#de77ae', '#f1b6da', '#fde0ef', '#f7f7f7', '#e6f5d0', '#b8e186', '#7fbc41', '#4d9221', '#276419'],\n PRGn: ['#40004b', '#762a83', '#9970ab', '#c2a5cf', '#e7d4e8', '#f7f7f7', '#d9f0d3', '#a6dba0', '#5aae61', '#1b7837', '#00441b'],\n RdYlBu: ['#a50026', '#d73027', '#f46d43', '#fdae61', '#fee090', '#ffffbf', '#e0f3f8', '#abd9e9', '#74add1', '#4575b4', '#313695'],\n BrBG: ['#543005', '#8c510a', '#bf812d', '#dfc27d', '#f6e8c3', '#f5f5f5', '#c7eae5', '#80cdc1', '#35978f', '#01665e', '#003c30'],\n RdGy: ['#67001f', '#b2182b', '#d6604d', '#f4a582', '#fddbc7', '#ffffff', '#e0e0e0', '#bababa', '#878787', '#4d4d4d', '#1a1a1a'],\n PuOr: ['#7f3b08', '#b35806', '#e08214', '#fdb863', '#fee0b6', '#f7f7f7', '#d8daeb', '#b2abd2', '#8073ac', '#542788', '#2d004b'],\n\n // qualitative\n\n Set2: ['#66c2a5', '#fc8d62', '#8da0cb', '#e78ac3', '#a6d854', '#ffd92f', '#e5c494', '#b3b3b3'],\n Accent: ['#7fc97f', '#beaed4', '#fdc086', '#ffff99', '#386cb0', '#f0027f', '#bf5b17', '#666666'],\n Set1: ['#e41a1c', '#377eb8', '#4daf4a', '#984ea3', '#ff7f00', '#ffff33', '#a65628', '#f781bf', '#999999'],\n Set3: ['#8dd3c7', '#ffffb3', '#bebada', '#fb8072', '#80b1d3', '#fdb462', '#b3de69', '#fccde5', '#d9d9d9', '#bc80bd', '#ccebc5', '#ffed6f'],\n Dark2: ['#1b9e77', '#d95f02', '#7570b3', '#e7298a', '#66a61e', '#e6ab02', '#a6761d', '#666666'],\n Paired: ['#a6cee3', '#1f78b4', '#b2df8a', '#33a02c', '#fb9a99', '#e31a1c', '#fdbf6f', '#ff7f00', '#cab2d6', '#6a3d9a', '#ffff99', '#b15928'],\n Pastel2: ['#b3e2cd', '#fdcdac', '#cbd5e8', '#f4cae4', '#e6f5c9', '#fff2ae', '#f1e2cc', '#cccccc'],\n Pastel1: ['#fbb4ae', '#b3cde3', '#ccebc5', '#decbe4', '#fed9a6', '#ffffcc', '#e5d8bd', '#fddaec', '#f2f2f2'],\n };\n\n // add lowercase aliases for case-insensitive matches\n for (var i$1 = 0, list$1 = Object.keys(colorbrewer); i$1 < list$1.length; i$1 += 1) {\n var key = list$1[i$1];\n\n colorbrewer[key.toLowerCase()] = colorbrewer[key];\n }\n\n var colorbrewer_1 = colorbrewer;\n\n // feel free to comment out anything to rollup\n // a smaller chroma.js built\n\n // io --> convert colors\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n // operators --> modify existing Colors\n\n\n\n\n\n\n\n\n\n\n // interpolators\n\n\n\n\n\n\n\n\n\n\n // generators -- > create new colors\n chroma_1.average = average;\n chroma_1.bezier = bezier_1;\n chroma_1.blend = blend_1;\n chroma_1.cubehelix = cubehelix;\n chroma_1.mix = chroma_1.interpolate = mix;\n chroma_1.random = random_1;\n chroma_1.scale = scale;\n\n // other utility methods\n chroma_1.analyze = analyze_1.analyze;\n chroma_1.contrast = contrast;\n chroma_1.deltaE = deltaE;\n chroma_1.distance = distance;\n chroma_1.limits = analyze_1.limits;\n chroma_1.valid = valid;\n\n // scale\n chroma_1.scales = scales;\n\n // colors\n chroma_1.colors = w3cx11_1;\n chroma_1.brewer = colorbrewer_1;\n\n var chroma_js = chroma_1;\n\n return chroma_js;\n\n})));\n","import mod from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../../node_modules/vuetify-loader/lib/loader.js??ref--20-0!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./StakingMetadata.vue?vue&type=style&index=0&id=a169a982&scoped=true&lang=scss&\"; export default mod; export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../../node_modules/vuetify-loader/lib/loader.js??ref--20-0!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./StakingMetadata.vue?vue&type=style&index=0&id=a169a982&scoped=true&lang=scss&\"","var render = function () {\n var _vm=this;\n var _h=_vm.$createElement;\n var _c=_vm._self._c||_h;\n\n return _c('div', [_c('Metadata'), _c('div', {\n staticClass: \"validators card\"\n }, [_c('StakingMetadata', {\n on: {\n \"toggle\": _vm.handleToggle\n }\n }), _c('div', {\n staticClass: \"controls\"\n }, [_c('div', {\n staticClass: \"filter_count\"\n }, [_c('p', {\n directives: [{\n name: \"show\",\n rawName: \"v-show\",\n value: _vm.search.length > 0 && _vm.matchedValidators,\n expression: \"search.length > 0 && matchedValidators\"\n }]\n }, [_vm._v(\" \" + _vm._s(_vm._f(\"pluralize\")(_vm.matchedValidators.length.toLocaleString(), 'result')) + \" found \")])]), _c('div', {\n staticClass: \"filter_input_container\"\n }, [_c('input', {\n directives: [{\n name: \"model\",\n rawName: \"v-model\",\n value: _vm.search,\n expression: \"search\"\n }],\n staticClass: \"filter\",\n attrs: {\n \"type\": \"text\",\n \"placeholder\": \"Filter by Node ID\"\n },\n domProps: {\n \"value\": _vm.search\n },\n on: {\n \"input\": function input($event) {\n if ($event.target.composing) { return; }\n _vm.search = $event.target.value;\n }\n }\n })])]), _c('div', {\n staticClass: \"headers\"\n }, [_c('p', [_vm._v(\"Rank\")]), _c('p', [_vm._v(\" Node ID \"), _c('Tooltip', {\n attrs: {\n \"content\": \"Node ID of validator participating in the consensus protocol\"\n }\n })], 1), _c('p', {\n staticStyle: {\n \"text-align\": \"right\"\n }\n }, [_c('Tooltip', {\n attrs: {\n \"content\": \"Amount of AVAX staked by this validator\"\n }\n }), _vm._v(\"Stake \")], 1), _vm.$vuetify.breakpoint.smAndUp ? _c('p', {\n staticStyle: {\n \"text-align\": \"right\"\n }\n }, [_c('Tooltip', {\n attrs: {\n \"content\": \"Percentage of AVAX concentrated up to this validator ranking\"\n }\n }), _vm._v(\"Cumulative Stake \")], 1) : _vm._e()]), _vm.validators.length === 0 ? _c('div', {\n staticClass: \"empty_table\"\n }, [_c('p', [_vm._v(\"No \" + _vm._s(_vm.toggle) + \" Validators\")])]) : _vm._e(), _c('div', {\n directives: [{\n name: \"show\",\n rawName: \"v-show\",\n value: _vm.search.length === 0,\n expression: \"search.length === 0\"\n }]\n }, [_c('div', {\n directives: [{\n name: \"show\",\n rawName: \"v-show\",\n value: _vm.validators.length > 0,\n expression: \"validators.length > 0\"\n }]\n }, _vm._l(_vm.paginatedValidators, function (v) {\n return _c('ValidatorRow', {\n key: v.nodeID + v.stakeAmount,\n staticClass: \"validator\",\n attrs: {\n \"validator\": v,\n \"cumulative-stake\": _vm.cumulativeStake[v.rank - 1]\n }\n });\n }), 1)]), _c('div', {\n directives: [{\n name: \"show\",\n rawName: \"v-show\",\n value: _vm.search.length > 0,\n expression: \"search.length > 0\"\n }]\n }, _vm._l(_vm.matchedValidators, function (v) {\n return _c('ValidatorRow', {\n key: v.nodeID + v.stakeAmount,\n staticClass: \"validator\",\n attrs: {\n \"validator\": v,\n \"cumulative-stake\": _vm.cumulativeStake[v.rank - 1]\n }\n });\n }), 1), _c('div', {\n directives: [{\n name: \"show\",\n rawName: \"v-show\",\n value: _vm.search.length === 0,\n expression: \"search.length === 0\"\n }],\n staticClass: \"pagination_container\"\n }, [_c('ValidatorPaginationControls', {\n attrs: {\n \"total\": _vm.totalValidatorsCount,\n \"limit\": _vm.limit\n },\n on: {\n \"change\": _vm.handleChange\n }\n })], 1)], 1)], 1);\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function () {\n var _vm=this;\n var _h=_vm.$createElement;\n var _c=_vm._self._c||_h;\n\n return _c('div', {\n staticClass: \"validator\"\n }, [_c('div', {\n staticClass: \"rank\"\n }, [_c('div', [_c('p', [_vm._v(_vm._s(_vm.validator.rank))])])]), _c('div', {\n staticClass: \"id_col\"\n }, [_c('p', [_vm._v(_vm._s(_vm.validator.nodeID))]), _c('p', [_vm._v(_vm._s(_vm.duration))])]), _c('div', {\n staticClass: \"stake_col\"\n }, [_c('p', {\n staticClass: \"stakeAmount\"\n }, [_vm._v(_vm._s(_vm.stakeAmountText) + \" AVAX\")]), _c('p', [_vm._v(_vm._s(_vm.stakePercText) + \"%\")])]), _c('div', {\n staticClass: \"comm_col\"\n }, [_c('p', [_vm._v(_vm._s(_vm.cumulativePercText) + \"%\")]), _c('CumulativeBar', {\n attrs: {\n \"total\": _vm.totalStake,\n \"amount\": _vm.stakeAmount,\n \"accumulated\": _vm.cumulativeStake\n }\n })], 1)]);\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function () {\n var _vm=this;\n var _h=_vm.$createElement;\n var _c=_vm._self._c||_h;\n\n return _c('div', {\n staticClass: \"cumulative_bar\"\n }, [_c('div', {\n ref: \"agg_bar\",\n staticClass: \"agg_bar\",\n style: {\n width: \"\".concat(_vm.barPerc, \"%\")\n }\n }, [_c('div', {\n staticClass: \"now_bar\",\n style: {\n width: \"\".concat(_vm.nowPerc, \"%\")\n }\n })])]);\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n","import mod from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/vuetify-loader/lib/loader.js??ref--20-0!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./CumulativeBar.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/vuetify-loader/lib/loader.js??ref--20-0!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./CumulativeBar.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./CumulativeBar.vue?vue&type=template&id=b1464fb0&scoped=true&\"\nimport script from \"./CumulativeBar.vue?vue&type=script&lang=js&\"\nexport * from \"./CumulativeBar.vue?vue&type=script&lang=js&\"\nimport style0 from \"./CumulativeBar.vue?vue&type=style&index=0&id=b1464fb0&scoped=true&lang=scss&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"b1464fb0\",\n null\n \n)\n\nexport default component.exports","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nimport 'reflect-metadata'\nimport { Mixins, Component, Prop } from 'vue-property-decorator'\nimport moment from 'moment'\nimport { toAVAX } from '../../../helper'\nimport CumulativeBar from './CumulativeBar.vue'\nimport { IValidator } from '@/store/modules/platform/IValidator'\nimport { PlatformGettersMixin } from '@/store/modules/platform/platform.mixins'\n\n@Component({\n components: {\n CumulativeBar,\n },\n})\nexport default class ValidatorRow extends Mixins(PlatformGettersMixin) {\n @Prop() validator!: IValidator\n @Prop() cumulativeStake!: number\n\n get totalStake() {\n const val = this.getTotalStake()\n return toAVAX(parseInt(val.toString()))\n }\n\n get stakeAmount() {\n return this.validator.stakeAmount\n ? toAVAX(this.validator.stakeAmount)\n : 0\n }\n\n get stakeAmountText() {\n return this.validator.stakeAmount\n ? toAVAX(this.validator.stakeAmount).toFixed(9)\n : ''\n }\n\n get stakePerc() {\n return (this.stakeAmount / this.totalStake) * 100\n }\n\n get stakePercText() {\n // redundant assignments bc referencing computed values affect performance\n const stakeAmount = toAVAX(this.validator.stakeAmount as number)\n const totalStake = toAVAX(parseInt(this.getTotalStake().toString()))\n return ((stakeAmount / totalStake) * 100).toFixed(8)\n }\n\n get cumulativePercText() {\n const cumulativeStake = toAVAX(this.cumulativeStake)\n const totalStake = toAVAX(parseInt(this.getTotalStake().toString()))\n return ((cumulativeStake / totalStake) * 100).toFixed(0)\n }\n\n get duration() {\n const endTime = this.validator.endTime.getTime()\n const startTime = this.validator.startTime.getTime()\n const dur = endTime - startTime\n return moment.duration(dur).humanize()\n }\n}\n","import mod from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--14-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??ref--14-3!../../../../node_modules/vuetify-loader/lib/loader.js??ref--20-0!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ValidatorRow.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--14-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??ref--14-3!../../../../node_modules/vuetify-loader/lib/loader.js??ref--20-0!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ValidatorRow.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./ValidatorRow.vue?vue&type=template&id=66e6b5f6&scoped=true&\"\nimport script from \"./ValidatorRow.vue?vue&type=script&lang=ts&\"\nexport * from \"./ValidatorRow.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./ValidatorRow.vue?vue&type=style&index=0&id=66e6b5f6&scoped=true&lang=scss&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"66e6b5f6\",\n null\n \n)\n\nexport default component.exports","var render = function () {\n var _vm=this;\n var _h=_vm.$createElement;\n var _c=_vm._self._c||_h;\n\n return _c('div', {\n staticClass: \"validator_pagination_control\"\n }, [_c('button', {\n class: {\n disabled: _vm.page === 1\n },\n on: {\n \"click\": function click($event) {\n _vm.page = 1;\n }\n }\n }, [_vm._v(\" First \")]), _c('button', {\n class: {\n disabled: _vm.page === 1\n },\n on: {\n \"click\": _vm.pageDown\n }\n }, [_vm._v(\" < \")]), _c('p', {\n staticClass: \"pages\"\n }, [_vm._v(\" Page \"), _c('b', [_vm._v(_vm._s(_vm.page))]), _vm._v(\" of \"), _c('b', [_vm._v(_vm._s(_vm.totalPages))])]), _c('button', {\n class: {\n disabled: _vm.page === _vm.totalPages\n },\n on: {\n \"click\": _vm.pageUp\n }\n }, [_vm._v(\" > \")]), _c('button', {\n class: {\n disabled: _vm.page === _vm.totalPages\n },\n on: {\n \"click\": function click($event) {\n _vm.page = _vm.totalPages;\n }\n }\n }, [_vm._v(\" Last \")])]);\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nimport 'reflect-metadata'\nimport { Vue, Component, Prop, Watch } from 'vue-property-decorator'\n\n@Component({})\nexport default class ValidatorPaginationControls extends Vue {\n @Prop() total!: number\n @Prop() limit!: number\n\n page = 1\n\n @Watch('page')\n onPageChanged(val: number) {\n const start = (val - 1) * this.limit\n this.$emit('change', start)\n }\n\n get totalPages(): number {\n return Math.ceil(this.total / this.limit)\n }\n\n pageUp(): void {\n const page = this.page + 1\n if (page > this.totalPages) return\n this.page = page\n }\n\n pageDown(): void {\n const page = this.page - 1\n\n if (page < 1) return\n this.page = page\n }\n}\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--14-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/ts-loader/index.js??ref--14-3!../../../node_modules/vuetify-loader/lib/loader.js??ref--20-0!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ValidatorPaginationControls.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--14-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/ts-loader/index.js??ref--14-3!../../../node_modules/vuetify-loader/lib/loader.js??ref--20-0!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ValidatorPaginationControls.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./ValidatorPaginationControls.vue?vue&type=template&id=398f0f27&scoped=true&\"\nimport script from \"./ValidatorPaginationControls.vue?vue&type=script&lang=ts&\"\nexport * from \"./ValidatorPaginationControls.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./ValidatorPaginationControls.vue?vue&type=style&index=0&id=398f0f27&scoped=true&lang=scss&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"398f0f27\",\n null\n \n)\n\nexport default component.exports","var render = function () {\n var _vm=this;\n var _h=_vm.$createElement;\n var _c=_vm._self._c||_h;\n\n return _c('div', {\n staticClass: \"card meta_data\",\n attrs: {\n \"id\": \"validators_meta\"\n }\n }, [_vm._m(0), _c('div', {\n staticClass: \"staking_info\"\n }, [_c('ValidatorStats'), _c('div', {\n staticClass: \"peerinfo_cont\"\n }, [_c('div', {\n directives: [{\n name: \"show\",\n rawName: \"v-show\",\n value: _vm.loading,\n expression: \"loading\"\n }],\n staticClass: \"loading_cont\"\n }, [_c('v-progress-circular', {\n attrs: {\n \"size\": 16,\n \"width\": 2,\n \"color\": \"#E84970\",\n \"indeterminate\": \"\"\n }\n })], 1), _c('PeerStake', {\n directives: [{\n name: \"show\",\n rawName: \"v-show\",\n value: !_vm.loading,\n expression: \"!loading\"\n }],\n attrs: {\n \"data\": _vm.stakes,\n \"color-scale\": _vm.stakesColorScale,\n \"metric\": 'stakePercent'\n }\n })], 1), _c('div', {\n staticClass: \"peerinfo_cont\"\n }, [_c('div', {\n directives: [{\n name: \"show\",\n rawName: \"v-show\",\n value: _vm.loading,\n expression: \"loading\"\n }],\n staticClass: \"loading_cont\"\n }, [_c('v-progress-circular', {\n attrs: {\n \"size\": 16,\n \"width\": 2,\n \"color\": \"#E84970\",\n \"indeterminate\": \"\"\n }\n })], 1), _c('PeerCount', {\n directives: [{\n name: \"show\",\n rawName: \"v-show\",\n value: !_vm.loading,\n expression: \"!loading\"\n }],\n attrs: {\n \"data\": _vm.versions,\n \"color-scale\": _vm.versionsColorScale,\n \"metric\": 'nodeCount'\n }\n })], 1)], 1)]);\n}\nvar staticRenderFns = [function () {\n var _vm=this;\n var _h=_vm.$createElement;\n var _c=_vm._self._c||_h;\n\n return _c('div', {\n staticClass: \"header\"\n }, [_c('h2', [_vm._v(\"Validators\")])]);\n}]\n\nexport { render, staticRenderFns }","var render = function () {\n var _vm=this;\n var _h=_vm.$createElement;\n var _c=_vm._self._c||_h;\n\n return _c('div', {\n staticClass: \"peer_info\"\n }, [_vm._m(0), _c('div', {\n staticClass: \"canv_cont\"\n }, [_c('canvas', {\n ref: \"canv\"\n })])]);\n}\nvar staticRenderFns = [function () {\n var _vm=this;\n var _h=_vm.$createElement;\n var _c=_vm._self._c||_h;\n\n return _c('div', {\n staticClass: \"header\"\n }, [_c('h4', {\n staticClass: \"meta_title\"\n }, [_vm._v(\"Peer Count\")]), _c('p', {\n staticClass: \"subtitle\"\n }, [_vm._v(\"by AvalancheGo Version\")])]);\n}]\n\nexport { render, staticRenderFns }","\n\n\n\n\n\n\n\n\n\n\n\nimport 'reflect-metadata'\nimport { Vue, Component, Prop, Watch } from 'vue-property-decorator'\nimport Chart from 'chart.js'\nimport { IVersion } from '@/services/peerinfo'\n\n@Component({\n components: {},\n})\nexport default class PeerCount extends Vue {\n @Prop() data!: IVersion[]\n @Prop() colorScale!: any\n @Prop() metric!: keyof IVersion\n\n context: null | RenderingContext = null\n chart: null | Chart = null\n\n @Watch('data')\n onDataChanged() {\n this.draw()\n }\n\n async mounted() {\n const canvas = this.$refs.canv as HTMLCanvasElement\n this.context = canvas.getContext('2d') as CanvasRenderingContext2D\n\n this.chart = new Chart(this.context, {\n type: 'horizontalBar',\n data: {\n labels: [],\n datasets: [],\n },\n options: {\n legend: {\n display: false,\n },\n aspectRatio: 1.25,\n responsive: true,\n scales: {\n xAxes: [\n {\n ticks: {\n beginAtZero: true,\n },\n },\n ],\n },\n },\n })\n }\n\n draw() {\n // bind data to chart\n if (this.chart && this.data) {\n this.chart.data.labels = this.data.map((v) => v.version)\n this.chart.data.datasets = [\n {\n backgroundColor: this.colorScale,\n data: this.data.map((v) => v[this.metric]) as number[],\n },\n ]\n this.chart.options.tooltips = {\n callbacks: {\n title: function (tooltipItem, data) {\n const index = tooltipItem[0].index as number\n const label = (data.labels as string[])[index]\n return `Version ${label}`\n },\n label: function (tooltipItem, data) {\n const index = tooltipItem.index as number\n //@ts-ignore\n const datum = (data.datasets[0]\n .data as Chart.ChartPoint[])[index]\n return ` ${datum} nodes`\n },\n },\n }\n }\n }\n}\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--14-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/ts-loader/index.js??ref--14-3!../../../node_modules/vuetify-loader/lib/loader.js??ref--20-0!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./PeerCount.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--14-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/ts-loader/index.js??ref--14-3!../../../node_modules/vuetify-loader/lib/loader.js??ref--20-0!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./PeerCount.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./PeerCount.vue?vue&type=template&id=49048a5b&scoped=true&\"\nimport script from \"./PeerCount.vue?vue&type=script&lang=ts&\"\nexport * from \"./PeerCount.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./PeerCount.vue?vue&type=style&index=0&id=49048a5b&lang=scss&scoped=true&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"49048a5b\",\n null\n \n)\n\nexport default component.exports","var render = function () {\n var _vm=this;\n var _h=_vm.$createElement;\n var _c=_vm._self._c||_h;\n\n return _c('div', {\n staticClass: \"peer_info\"\n }, [_vm._m(0), _c('div', {\n staticClass: \"canv_cont\"\n }, [_c('canvas', {\n ref: \"canv\"\n })])]);\n}\nvar staticRenderFns = [function () {\n var _vm=this;\n var _h=_vm.$createElement;\n var _c=_vm._self._c||_h;\n\n return _c('div', {\n staticClass: \"header\"\n }, [_c('h4', {\n staticClass: \"meta_title\"\n }, [_vm._v(\"AVAX Stake Distribution\")]), _c('p', {\n staticClass: \"subtitle\"\n }, [_vm._v(\"by AvalancheGo Version\")])]);\n}]\n\nexport { render, staticRenderFns }","\n\n\n\n\n\n\n\n\n\n\n\nimport 'reflect-metadata'\nimport { Vue, Component, Prop, Watch } from 'vue-property-decorator'\nimport Chart from 'chart.js'\nimport { IVersion } from '@/services/peerinfo'\n\n@Component({\n components: {},\n})\nexport default class PeerStake extends Vue {\n @Prop() data!: IVersion[]\n @Prop() colorScale!: string[]\n @Prop() metric!: keyof IVersion\n\n context: null | RenderingContext = null\n chart: null | Chart = null\n\n @Watch('data')\n onDataChanged() {\n this.draw()\n }\n\n async mounted() {\n const canvas = this.$refs.canv as HTMLCanvasElement\n this.context = canvas.getContext('2d') as CanvasRenderingContext2D\n this.chart = new Chart(this.context, {\n type: 'doughnut',\n data: {\n labels: [],\n datasets: [],\n },\n options: {\n legend: {\n display: false,\n },\n },\n })\n }\n\n draw() {\n // bind data to chart\n if (this.chart && this.data) {\n this.chart.data.labels = this.data.map((v) => v.version)\n this.chart.data.datasets = [\n {\n backgroundColor: this.colorScale,\n data: this.data.map((v) => v[this.metric]) as number[],\n },\n ]\n this.chart.options.tooltips = {\n callbacks: {\n title: function (tooltipItem, data) {\n const index = tooltipItem[0].index as number\n const label = (data.labels as string[])[index]\n return `Version ${label}`\n },\n label: function (tooltipItem, data) {\n const index = tooltipItem.index as number\n //@ts-ignore\n const datum = (data.datasets[0]\n .data as Chart.ChartPoint[])[index]\n return ` ${datum}%`\n },\n },\n }\n this.chart.update()\n }\n }\n}\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--14-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/ts-loader/index.js??ref--14-3!../../../node_modules/vuetify-loader/lib/loader.js??ref--20-0!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./PeerStake.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--14-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/ts-loader/index.js??ref--14-3!../../../node_modules/vuetify-loader/lib/loader.js??ref--20-0!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./PeerStake.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./PeerStake.vue?vue&type=template&id=e172976a&scoped=true&\"\nimport script from \"./PeerStake.vue?vue&type=script&lang=ts&\"\nexport * from \"./PeerStake.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./PeerStake.vue?vue&type=style&index=0&id=e172976a&lang=scss&scoped=true&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"e172976a\",\n null\n \n)\n\nexport default component.exports","var render = function () {\n var _vm=this;\n var _h=_vm.$createElement;\n var _c=_vm._self._c||_h;\n\n return _c('div', {\n staticClass: \"stats\"\n }, [_vm._m(0), _c('article', {\n staticClass: \"meta\"\n }, [_c('p', {\n staticClass: \"label\"\n }, [_vm._v(\" Validators \"), _c('TooltipMeta', {\n attrs: {\n \"content\": \"Total number of nodes validating transactions on Avalanche\",\n \"color\": '#2196f3'\n }\n })], 1), _c('div', [_vm.subnetsLoaded ? _c('p', {\n staticClass: \"meta_val\"\n }, [_vm._v(\" \" + _vm._s(_vm.totalValidatorsCount.toLocaleString()) + \" \")]) : _c('v-progress-circular', {\n key: \"1\",\n attrs: {\n \"size\": 16,\n \"width\": 2,\n \"color\": \"#E84970\",\n \"indeterminate\": \"\"\n }\n })], 1)]), _c('article', {\n staticClass: \"meta\"\n }, [_c('p', {\n staticClass: \"label\"\n }, [_vm._v(\" Total Staked \"), _c('TooltipMeta', {\n attrs: {\n \"content\": \"Total value of AVAX locked to secure Avalanche\",\n \"color\": '#2196f3'\n }\n })], 1), _c('div', [_vm.subnetsLoaded ? _c('p', {\n staticClass: \"meta_val\"\n }, [_vm._v(\" \" + _vm._s(_vm.totalStake) + \" \"), _c('span', {\n staticClass: \"unit\"\n }, [_vm._v(\"AVAX\")])]) : _c('v-progress-circular', {\n key: \"1\",\n attrs: {\n \"size\": 16,\n \"width\": 2,\n \"color\": \"#E84970\",\n \"indeterminate\": \"\"\n }\n })], 1)]), _c('article', {\n staticClass: \"meta\"\n }, [_c('p', {\n staticClass: \"label\"\n }, [_vm._v(\" Staking Ratio \"), _c('TooltipMeta', {\n attrs: {\n \"content\": \"Percentage of AVAX locked to secure Avalanche out of total AVAX supply\",\n \"color\": '#2196f3'\n }\n })], 1), _c('div', [_vm.subnetsLoaded ? _c('p', {\n staticClass: \"meta_val\"\n }, [_vm._v(\" \" + _vm._s(_vm.percentStaked) + \"% \")]) : _c('v-progress-circular', {\n key: \"1\",\n attrs: {\n \"size\": 16,\n \"width\": 2,\n \"color\": \"#E84970\",\n \"indeterminate\": \"\"\n }\n })], 1)]), _c('article', {\n staticClass: \"meta\"\n }, [_c('p', {\n staticClass: \"label\"\n }, [_vm._v(\"Annual Staking Reward\")]), _c('div', [_vm.subnetsLoaded ? _c('p', {\n staticClass: \"meta_val\"\n }, [_vm._v(\" \" + _vm._s(_vm.annualStakingRewardPercentage) + \" \")]) : _c('v-progress-circular', {\n key: \"1\",\n attrs: {\n \"size\": 16,\n \"width\": 2,\n \"color\": \"#E84970\",\n \"indeterminate\": \"\"\n }\n })], 1)])]);\n}\nvar staticRenderFns = [function () {\n var _vm=this;\n var _h=_vm.$createElement;\n var _c=_vm._self._c||_h;\n\n return _c('div', {\n staticClass: \"header\"\n }, [_c('h4', {\n staticClass: \"meta_title\"\n }, [_vm._v(\"Staking Stats\")]), _c('p', {\n staticClass: \"subtitle\"\n })]);\n}]\n\nexport { render, staticRenderFns }","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nimport 'reflect-metadata'\nimport { Mixins, Component } from 'vue-property-decorator'\nimport TooltipMeta from '@/components/Home/TopInfo/TooltipMeta.vue'\nimport { bigToDenomBig } from '@/helper'\nimport { PlatformGettersMixin } from '@/store/modules/platform/platform.mixins'\n\n@Component({\n components: {\n TooltipMeta,\n },\n})\nexport default class ValidatorStats extends Mixins(PlatformGettersMixin) {\n get subnetsLoaded(): boolean {\n return this.$store.state.Platform.subnetsLoaded\n }\n\n get totalValidatorsCount() {\n return this.getTotalValidators()\n }\n\n get totalPendingValidatorsCount() {\n return this.getTotalPendingValidators()\n }\n\n get totalStake(): string {\n let totalStake = this.getTotalStake()\n totalStake = bigToDenomBig(totalStake, 9)\n return totalStake.toLocaleString(0)\n }\n\n get percentStaked() {\n return this.getStakingRatio()\n }\n\n get annualStakingRewardPercentage(): string {\n const APR = this.$store.state.Platform.annualStakingRewardPercentage\n return `${APR.toFixed(1)}%`\n }\n}\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--14-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/ts-loader/index.js??ref--14-3!../../../node_modules/vuetify-loader/lib/loader.js??ref--20-0!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ValidatorStats.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--14-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/ts-loader/index.js??ref--14-3!../../../node_modules/vuetify-loader/lib/loader.js??ref--20-0!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ValidatorStats.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./ValidatorStats.vue?vue&type=template&id=34ec88ab&scoped=true&\"\nimport script from \"./ValidatorStats.vue?vue&type=script&lang=ts&\"\nexport * from \"./ValidatorStats.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./ValidatorStats.vue?vue&type=style&index=0&id=34ec88ab&scoped=true&lang=scss&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"34ec88ab\",\n null\n \n)\n\nexport default component.exports\n\n/* vuetify-loader */\nimport installComponents from \"!../../../node_modules/vuetify-loader/lib/runtime/installComponents.js\"\nimport { VProgressCircular } from 'vuetify/lib/components/VProgressCircular';\ninstallComponents(component, {VProgressCircular})\n","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nimport 'reflect-metadata'\nimport { Vue, Component } from 'vue-property-decorator'\nimport PeerCount from '@/components/Validators/PeerCount.vue'\nimport PeerStake from '@/components/Validators/PeerStake.vue'\nimport ValidatorStats from '@/components/Validators/ValidatorStats.vue'\nimport {\n IVersion,\n getPeerInfo,\n getVersionsOnly,\n versionsOnlyMap,\n getVersionsColorMap,\n lower,\n getStakesOnly,\n} from '@/services/peerinfo'\n\n@Component({\n components: {\n PeerStake,\n PeerCount,\n ValidatorStats,\n },\n})\nexport default class Metadata extends Vue {\n stakes: null | IVersion[] = null\n stakesColorScale: string[] = []\n\n versions: null | IVersion[] = null\n versionsColorScale: string[] = []\n\n loading = false\n\n created() {\n this.getData()\n }\n\n async getData() {\n this.loading = true\n const peerInfo = await getPeerInfo()\n\n // this map is used to create color scales\n const map = versionsOnlyMap(peerInfo)\n\n // bar chart - only node counts > 0. exclude 'offline'\n this.versions = getVersionsOnly(peerInfo)\n this.versionsColorScale = getVersionsColorMap(map)\n\n // pie chart - only stakes > 0. include 'offline'\n this.stakes = getStakesOnly(peerInfo)\n this.stakesColorScale = getVersionsColorMap(map) // extend the versions-only color scale\n this.stakesColorScale.push(lower) // by adding extra color for 'offline' stake\n\n this.loading = false\n }\n}\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--14-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/ts-loader/index.js??ref--14-3!../../../node_modules/vuetify-loader/lib/loader.js??ref--20-0!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Metadata.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--14-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/ts-loader/index.js??ref--14-3!../../../node_modules/vuetify-loader/lib/loader.js??ref--20-0!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Metadata.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./Metadata.vue?vue&type=template&id=5b30a4fc&scoped=true&\"\nimport script from \"./Metadata.vue?vue&type=script&lang=ts&\"\nexport * from \"./Metadata.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./Metadata.vue?vue&type=style&index=0&id=5b30a4fc&scoped=true&lang=scss&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"5b30a4fc\",\n null\n \n)\n\nexport default component.exports\n\n/* vuetify-loader */\nimport installComponents from \"!../../../node_modules/vuetify-loader/lib/runtime/installComponents.js\"\nimport { VProgressCircular } from 'vuetify/lib/components/VProgressCircular';\ninstallComponents(component, {VProgressCircular})\n","var render = function () {\n var _vm=this;\n var _h=_vm.$createElement;\n var _c=_vm._self._c||_h;\n\n return _c('div', {\n staticClass: \"meta_data\",\n attrs: {\n \"id\": \"validators_meta\"\n }\n }, [_c('div', {\n staticClass: \"header\"\n }, [_c('h2', [_vm._v(\"Staking Distribution\")]), _c('v-tabs', {\n staticClass: \"tabs\",\n attrs: {\n \"active-class\": \"tab_active\",\n \"height\": \"32\",\n \"hide-slider\": \"\"\n },\n on: {\n \"change\": _vm.typeChange\n }\n }, [_c('v-tab', [_vm._v(\"Active\")]), _c('v-tab', [_vm._v(\"Pending\")])], 1)], 1)]);\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nimport 'reflect-metadata'\nimport { Mixins, Component } from 'vue-property-decorator'\nimport { PlatformGettersMixin } from '@/store/modules/platform/platform.mixins'\n\n@Component({\n components: {},\n})\nexport default class Metadata extends Mixins(PlatformGettersMixin) {\n toggle = 'active' // active | pending\n\n typeChange(val: string) {\n this.toggle = val ? 'pending' : 'active'\n this.$emit('toggle', this.toggle)\n }\n}\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--14-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/ts-loader/index.js??ref--14-3!../../../node_modules/vuetify-loader/lib/loader.js??ref--20-0!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./StakingMetadata.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--14-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/ts-loader/index.js??ref--14-3!../../../node_modules/vuetify-loader/lib/loader.js??ref--20-0!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./StakingMetadata.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./StakingMetadata.vue?vue&type=template&id=a169a982&scoped=true&\"\nimport script from \"./StakingMetadata.vue?vue&type=script&lang=ts&\"\nexport * from \"./StakingMetadata.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./StakingMetadata.vue?vue&type=style&index=0&id=a169a982&scoped=true&lang=scss&\"\nimport style1 from \"./StakingMetadata.vue?vue&type=style&index=1&lang=scss&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"a169a982\",\n null\n \n)\n\nexport default component.exports\n\n/* vuetify-loader */\nimport installComponents from \"!../../../node_modules/vuetify-loader/lib/runtime/installComponents.js\"\nimport { VTab } from 'vuetify/lib/components/VTabs';\nimport { VTabs } from 'vuetify/lib/components/VTabs';\ninstallComponents(component, {VTab,VTabs})\n","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nimport 'reflect-metadata'\nimport { Mixins, Component } from 'vue-property-decorator'\nimport ValidatorRow from '@/components/rows/ValidatorRow/ValidatorRow.vue'\nimport ValidatorPaginationControls from '@/components/misc/ValidatorPaginationControls.vue'\nimport { AVALANCHE_SUBNET_ID } from '@/store/modules/platform/platform'\nimport Tooltip from '@/components/rows/Tooltip.vue'\nimport Metadata from '@/components/Validators/Metadata.vue'\nimport StakingMetadata from '@/components/Validators/StakingMetadata.vue'\nimport { IValidator } from '@/store/modules/platform/IValidator'\nimport { PlatformGettersMixin } from '@/store/modules/platform/platform.mixins'\nimport { bigToDenomBig } from '@/helper'\n\n@Component({\n components: {\n Tooltip,\n ValidatorRow,\n ValidatorPaginationControls,\n Metadata,\n StakingMetadata,\n },\n})\nexport default class Validators extends Mixins(PlatformGettersMixin) {\n search = ''\n toggle = 'active' // active | pending\n limit = 25 // how many rows to display\n start = 0\n\n matchSearch(val: HTMLInputElement) {\n if (this.search) {\n const idUpper = val.id.toUpperCase()\n const queryUpper = this.search.toUpperCase()\n if (!idUpper.includes(queryUpper)) {\n return false\n }\n }\n return true\n }\n\n handleChange(val: number) {\n this.start = val // all computed values will react to change\n }\n\n handleToggle(val: string) {\n this.toggle = val\n }\n\n get totalStake() {\n let valBig =\n this.toggle === 'active'\n ? this.getTotalStake()\n : this.getTotalPendingStake()\n valBig = bigToDenomBig(valBig, 9)\n return valBig.toLocaleString(0)\n }\n\n get totalValidatorsCount() {\n return this.toggle === 'active'\n ? this.getTotalValidators()\n : this.getTotalPendingValidators()\n }\n\n get validators() {\n const defaultSubnet = this.$store.state.Platform.subnets[\n AVALANCHE_SUBNET_ID\n ]\n if (defaultSubnet) {\n return this.toggle === 'active'\n ? defaultSubnet.validators\n : defaultSubnet.pendingValidators\n }\n return []\n }\n\n get matchedValidators() {\n return this.validators\n .filter((v: IValidator) => v.nodeID.includes(this.search))\n .slice(0, 10)\n }\n\n get paginatedValidators() {\n return this.validators.slice(this.start, this.start + this.limit)\n }\n\n get pendingValidators() {\n const defaultSubnet = this.$store.state.Platform.subnets[\n AVALANCHE_SUBNET_ID\n ]\n if (defaultSubnet) {\n const vals = defaultSubnet.pendingValidators\n return vals\n }\n return []\n }\n\n get cumulativeStake() {\n const defaultSubnet = this.$store.state.Platform.subnets[\n AVALANCHE_SUBNET_ID\n ]\n if (defaultSubnet) {\n return this.toggle === 'active'\n ? this.getCumulativeStake()\n : this.getCumulativePendingStake()\n }\n return []\n }\n}\n","import mod from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--14-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/ts-loader/index.js??ref--14-3!../../node_modules/vuetify-loader/lib/loader.js??ref--20-0!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Validators.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--14-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/ts-loader/index.js??ref--14-3!../../node_modules/vuetify-loader/lib/loader.js??ref--20-0!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Validators.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./Validators.vue?vue&type=template&id=7c639296&scoped=true&\"\nimport script from \"./Validators.vue?vue&type=script&lang=ts&\"\nexport * from \"./Validators.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./Validators.vue?vue&type=style&index=0&id=7c639296&scoped=true&lang=scss&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"7c639296\",\n null\n \n)\n\nexport default component.exports","import mod from \"-!../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../node_modules/vuetify-loader/lib/loader.js??ref--20-0!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Validators.vue?vue&type=style&index=0&id=7c639296&scoped=true&lang=scss&\"; export default mod; export * from \"-!../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../node_modules/vuetify-loader/lib/loader.js??ref--20-0!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Validators.vue?vue&type=style&index=0&id=7c639296&scoped=true&lang=scss&\"","import mod from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../../node_modules/vuetify-loader/lib/loader.js??ref--20-0!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Metadata.vue?vue&type=style&index=0&id=5b30a4fc&scoped=true&lang=scss&\"; export default mod; export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../../node_modules/vuetify-loader/lib/loader.js??ref--20-0!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Metadata.vue?vue&type=style&index=0&id=5b30a4fc&scoped=true&lang=scss&\"","import mod from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../../node_modules/vuetify-loader/lib/loader.js??ref--20-0!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./StakingMetadata.vue?vue&type=style&index=1&lang=scss&\"; export default mod; export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../../node_modules/vuetify-loader/lib/loader.js??ref--20-0!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./StakingMetadata.vue?vue&type=style&index=1&lang=scss&\"","import mod from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../../node_modules/vuetify-loader/lib/loader.js??ref--20-0!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./PeerCount.vue?vue&type=style&index=0&id=49048a5b&lang=scss&scoped=true&\"; export default mod; export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../../node_modules/vuetify-loader/lib/loader.js??ref--20-0!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./PeerCount.vue?vue&type=style&index=0&id=49048a5b&lang=scss&scoped=true&\"","import mod from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../../node_modules/vuetify-loader/lib/loader.js??ref--20-0!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ValidatorPaginationControls.vue?vue&type=style&index=0&id=398f0f27&scoped=true&lang=scss&\"; export default mod; export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../../node_modules/vuetify-loader/lib/loader.js??ref--20-0!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ValidatorPaginationControls.vue?vue&type=style&index=0&id=398f0f27&scoped=true&lang=scss&\"","import mod from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../../../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../../../node_modules/vuetify-loader/lib/loader.js??ref--20-0!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ValidatorRow.vue?vue&type=style&index=0&id=66e6b5f6&scoped=true&lang=scss&\"; export default mod; export * from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../../../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../../../node_modules/vuetify-loader/lib/loader.js??ref--20-0!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ValidatorRow.vue?vue&type=style&index=0&id=66e6b5f6&scoped=true&lang=scss&\"","import mod from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../../node_modules/vuetify-loader/lib/loader.js??ref--20-0!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./PeerStake.vue?vue&type=style&index=0&id=e172976a&lang=scss&scoped=true&\"; export default mod; export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../../node_modules/vuetify-loader/lib/loader.js??ref--20-0!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./PeerStake.vue?vue&type=style&index=0&id=e172976a&lang=scss&scoped=true&\"","export * from './peerinfo.service'\nexport * from './peerinfo'\nexport * from './models'\n"],"sourceRoot":""}