{"version":3,"sources":["webpack:///./wwwroot/src/js/helpers/color.js","webpack:///./wwwroot/src/vue/areas/field-record-system/map-styles/base.js","webpack:///./node_modules/core-js/modules/es6.string.repeat.js","webpack:///./node_modules/d3-scale-chromatic/src/colors.js","webpack:///./node_modules/d3-color/src/define.js","webpack:///./node_modules/d3-scale-chromatic/src/categorical/category10.js","webpack:///./node_modules/d3-scale-chromatic/src/categorical/Accent.js","webpack:///./node_modules/d3-scale-chromatic/src/categorical/Dark2.js","webpack:///./node_modules/d3-scale-chromatic/src/categorical/Paired.js","webpack:///./node_modules/d3-scale-chromatic/src/categorical/Pastel1.js","webpack:///./node_modules/d3-scale-chromatic/src/categorical/Pastel2.js","webpack:///./node_modules/d3-scale-chromatic/src/categorical/Set1.js","webpack:///./node_modules/d3-scale-chromatic/src/categorical/Set2.js","webpack:///./node_modules/d3-scale-chromatic/src/categorical/Set3.js","webpack:///./node_modules/d3-color/src/color.js","webpack:///./node_modules/d3-color/src/math.js","webpack:///./node_modules/d3-color/src/lab.js","webpack:///./node_modules/d3-color/src/cubehelix.js","webpack:///./node_modules/d3-interpolate/src/basis.js","webpack:///./node_modules/d3-interpolate/src/basisClosed.js","webpack:///./node_modules/d3-interpolate/src/constant.js","webpack:///./node_modules/d3-interpolate/src/color.js","webpack:///./node_modules/d3-interpolate/src/rgb.js","webpack:///./node_modules/d3-interpolate/src/number.js","webpack:///./node_modules/d3-interpolate/src/string.js","webpack:///./node_modules/d3-interpolate/src/transform/parse.js","webpack:///./node_modules/d3-interpolate/src/transform/decompose.js","webpack:///./node_modules/d3-interpolate/src/transform/index.js","webpack:///./node_modules/d3-interpolate/src/zoom.js","webpack:///./node_modules/d3-interpolate/src/hsl.js","webpack:///./node_modules/d3-interpolate/src/hcl.js","webpack:///./node_modules/d3-interpolate/src/cubehelix.js","webpack:///./node_modules/d3-scale-chromatic/src/ramp.js","webpack:///./node_modules/d3-scale-chromatic/src/diverging/BrBG.js","webpack:///./node_modules/d3-scale-chromatic/src/diverging/PRGn.js","webpack:///./node_modules/d3-scale-chromatic/src/diverging/PiYG.js","webpack:///./node_modules/d3-scale-chromatic/src/diverging/PuOr.js","webpack:///./node_modules/d3-scale-chromatic/src/diverging/RdBu.js","webpack:///./node_modules/d3-scale-chromatic/src/diverging/RdGy.js","webpack:///./node_modules/d3-scale-chromatic/src/diverging/RdYlBu.js","webpack:///./node_modules/d3-scale-chromatic/src/diverging/RdYlGn.js","webpack:///./node_modules/d3-scale-chromatic/src/diverging/Spectral.js","webpack:///./node_modules/d3-scale-chromatic/src/sequential-multi/BuGn.js","webpack:///./node_modules/d3-scale-chromatic/src/sequential-multi/BuPu.js","webpack:///./node_modules/d3-scale-chromatic/src/sequential-multi/GnBu.js","webpack:///./node_modules/d3-scale-chromatic/src/sequential-multi/OrRd.js","webpack:///./node_modules/d3-scale-chromatic/src/sequential-multi/PuBuGn.js","webpack:///./node_modules/d3-scale-chromatic/src/sequential-multi/PuBu.js","webpack:///./node_modules/d3-scale-chromatic/src/sequential-multi/PuRd.js","webpack:///./node_modules/d3-scale-chromatic/src/sequential-multi/RdPu.js","webpack:///./node_modules/d3-scale-chromatic/src/sequential-multi/YlGnBu.js","webpack:///./node_modules/d3-scale-chromatic/src/sequential-multi/YlGn.js","webpack:///./node_modules/d3-scale-chromatic/src/sequential-multi/YlOrBr.js","webpack:///./node_modules/d3-scale-chromatic/src/sequential-multi/YlOrRd.js","webpack:///./node_modules/d3-scale-chromatic/src/sequential-single/Blues.js","webpack:///./node_modules/d3-scale-chromatic/src/sequential-single/Greens.js","webpack:///./node_modules/d3-scale-chromatic/src/sequential-single/Greys.js","webpack:///./node_modules/d3-scale-chromatic/src/sequential-single/Purples.js","webpack:///./node_modules/d3-scale-chromatic/src/sequential-single/Reds.js","webpack:///./node_modules/d3-scale-chromatic/src/sequential-single/Oranges.js","webpack:///./node_modules/d3-scale-chromatic/src/sequential-multi/rainbow.js","webpack:///./node_modules/d3-scale-chromatic/src/sequential-multi/cubehelix.js","webpack:///./node_modules/d3-scale-chromatic/src/sequential-multi/sinebow.js","webpack:///./node_modules/d3-scale-chromatic/src/sequential-multi/viridis.js","webpack:///./wwwroot/src/js/helpers/map-color-schemes.js","webpack:///./wwwroot/src/vue/areas/field-record-system/map-styles/basic-fertilization/colors.js","webpack:///./wwwroot/src/js/helpers/objects.js","webpack:///./wwwroot/src/js/helpers/zone-map.js","webpack:///./node_modules/core-js/modules/_string-repeat.js","webpack:///./wwwroot/src/vue/areas/field-record-system/map-styles/phbb/phbb-colors.js","webpack:///./wwwroot/src/vue/areas/field-record-system/map-styles/maps.js","webpack:///./wwwroot/src/js/helpers/openlayers/styles.js","webpack:///./wwwroot/src/js/helpers/openlayers/patterns.js"],"names":["hexComponentToColorComponent","hex","parseInt","length","repeat","hexToNormalized","Error","concat","components","substring","split","map","match","push","rgbaStringToNormalized","rgbaString","x","parseFloat","trim","normalizeColor","color","Array","isArray","toHexAbgr","a","arguments","undefined","toHex","r","g","b","rgba","Math","round","relevantChannels","slice","toString","toUpperCase","join","withAlpha","opacity","_color$slice","_color$slice2","Object","C_src_Solutions_WebApp_node_modules_babel_runtime_corejs2_helpers_esm_slicedToArray__WEBPACK_IMPORTED_MODULE_1__","luminance","_rgba$slice$map","c","pow","_rgba$slice$map2","blackOrWhite","rgbaBackgroundColor","readableTextColor","backgroundColor","clamp","value","_ref","_ref2","min","max","lerp","t","desaturate","factor","_normalizeColor3","_normalizeColor4","gray","floor","mix","channel","interpolate","color1","color2","_map","_map2","components1","components2","blend","i","_components1$map","_components1$map2","interpolateRegularGradient","colors","rawBin","bin","renormalized","__webpack_require__","d","__webpack_exports__","polygonBase","zoneBase","polygonClusterBase","pointBase","stripedPolygonBase","stripedPolygonBaseWithoutText","border","borderBase","ol_style_Style__WEBPACK_IMPORTED_MODULE_0__","ol_style_Stroke__WEBPACK_IMPORTED_MODULE_1__","ol_style_Fill__WEBPACK_IMPORTED_MODULE_2__","ol_style_Circle__WEBPACK_IMPORTED_MODULE_3__","_helpers_openlayers_styles__WEBPACK_IMPORTED_MODULE_4__","Style","stroke","Stroke","width","fill","Fill","text","labelText","overflow","image","Circle","radius","stripedFill","textColor","lineDash","$export","P","src_colors","specifier","n","define","constructor","factory","prototype","extend","parent","definition","create","key","Color","darker","brighter","reI","reN","reP","reHex3","reHex6","reRgbInteger","RegExp","reRgbPercent","reRgbaInteger","reRgbaPercent","reHslPercent","reHslaPercent","named","aliceblue","antiquewhite","aqua","aquamarine","azure","beige","bisque","black","blanchedalmond","blue","blueviolet","brown","burlywood","cadetblue","chartreuse","chocolate","coral","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","green","greenyellow","grey","honeydew","hotpink","indianred","indigo","ivory","khaki","lavender","lavenderblush","lawngreen","lemonchiffon","lightblue","lightcoral","lightcyan","lightgoldenrodyellow","lightgray","lightgreen","lightgrey","lightpink","lightsalmon","lightseagreen","lightskyblue","lightslategray","lightslategrey","lightsteelblue","lightyellow","lime","limegreen","linen","magenta","maroon","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","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","color_color","format","m","toLowerCase","exec","Rgb","rgbn","hsla","hasOwnProperty","NaN","rgbConvert","o","rgb","color_rgb","this","h","s","l","Hsl","hslConvert","hsl","hsl2rgb","m1","m2","displayable","k","isNaN","deg2rad","PI","rad2deg","Kn","Xn","Yn","Zn","t0","t1","t2","t3","labConvert","Lab","Hcl","cos","sin","rgb2xyz","xyz2lab","y","z","lab","lab2xyz","xyz2rgb","hclConvert","atan2","sqrt","hcl","A","B","C","D","E","ED","EB","BC_DA","cubehelixConvert","Cubehelix","bl","cubehelix_cubehelix","basis","v0","v1","v2","v3","cosh","sinh","src_basis","values","basisClosed","constant","color_linear","exponential","color_hue","gamma","nogamma","rgbGamma","start","end","rgbSpline","spline","rgbBasis","number","reA","source","cssNode","cssRoot","cssView","svgNode","degrees","identity","translateX","translateY","rotate","skewX","scaleX","scaleY","decompose","e","f","atan","parseCss","document","createElement","documentElement","defaultView","style","transform","getComputedStyle","appendChild","getPropertyValue","removeChild","parseSvg","createElementNS","setAttribute","baseVal","consolidate","matrix","interpolateTransform","parse","pxComma","pxParen","degParen","pop","translate","xa","ya","xb","yb","q","scale","SQRT2","hsl_hsl","hue","hcl_hcl","src_cubehelix_cubehelix","cubehelixGamma","cubehelix","cubehelixLong","ramp","scheme","BrBG_scheme","PRGn_scheme","PiYG_scheme","PuOr_scheme","RdBu_scheme","RdGy_scheme","RdYlBu_scheme","RdYlGn_scheme","RdYlGn","Spectral_scheme","BuGn_scheme","BuPu_scheme","GnBu_scheme","OrRd_scheme","PuBuGn_scheme","PuBu_scheme","PuRd_scheme","RdPu_scheme","YlGnBu_scheme","YlGn_scheme","YlOrBr_scheme","YlOrRd_scheme","Blues_scheme","Greens_scheme","Greys_scheme","Purples_scheme","Reds_scheme","Oranges_scheme","cool","viridis_ramp","range","magma","lufaRanges","ph","phosphorus","potassium","magnesium","absoluteRange","categoryNutrientMapping","BasicFertilization_Magnesium","BasicFertilization_Potassium","BasicFertilization_Phosphorus","BasicFertilization_pH","getMapMetrics","zones","zone","valueRange","apply","toConsumableArray","zoneNumbers","getZoneNumbers","zoneCount","getZoneCount","zoneMidpoints","thresholds","metaData","classificationThresholds","lowerBound","upperBound","mapToColors","colorScheme","colorFunctions","absolute","_getMapMetrics","relative","nutrient","category","lufa","_getMapMetrics2","agrosat","_getMapMetrics3","pastel","_getMapMetrics4","autoZoneMapDebug","mapToColorLookup","zoneColors","lookup","forEach","index","id","mapToGeoJsonFeatures","_getMapMetrics5","type","geometry","properties","zoneMapId","zoneId","zoneNumber","zoneMidpoint","mapToStyle","mapStyles","getStyle","normalize","slicedToArray","interpolateMagma","interpolateCool","colorDefinitions","managementZoneMap","N","colorMapZoneCount","colorIndex","baseColor","nutrientBaseColors","linear","interpolateRdYlGn","phbb","phbbValueColorFunctions","getLinearValuesColor","getHumusColor","getPhColor","getPhClassColor","getSoilEstimationColor","getSoilGroupColor","Number","probingGeometry","active","inactive","new","deleted","hasResult","open","classification","F","1","3","5","7","9","11","13","obj","keys","reduce","toObject","name","zoneCountV1","countOfClasses","zoneCountV2","algorithmSummary","intendedZoneCount","zoneCountFallback","C_src_Solutions_WebApp_node_modules_babel_runtime_corejs2_helpers_esm_toConsumableArray__WEBPACK_IMPORTED_MODULE_0__","toInteger","defined","module","exports","count","str","String","res","Infinity","RangeError","defaultColor","nullValueColor","getValueFromFeature","feature","_feature$getPropertie","getProperties","clayColorFunction","_feature$getPropertie2","phbbFeatureColorFunctions","caOApplicationMap","_feature$getPropertie3","caORequiredNutrient","_feature$getPropertie4","LimeApplicationMap","_feature$getPropertie5","clayContent","sand","silt","humusContent","pH","phClassNutrientMap","_feature$getPropertie6","soilEstimation","_feature$getPropertie7","soilGroup","defaultLinear","_feature$getPropertie8","_helpers_openlayers_styles__WEBPACK_IMPORTED_MODULE_0__","_helpers_map_color_schemes__WEBPACK_IMPORTED_MODULE_1__","_base__WEBPACK_IMPORTED_MODULE_2__","src_js_i18n_conversion__WEBPACK_IMPORTED_MODULE_3__","_phbb_phbb_colors__WEBPACK_IMPORTED_MODULE_4__","setUniversalLabel","setLabel","unit","hideLabel","displayValue","makeMapStyle","featureColorFunction","modifierStack","setColor","mapCategory","console","error","textFunction","resolution","getText","setText","colorFunction","strokeColor","fillColor","getStroke","getFill","getImage","imageStroke","imageFill","modifiers","_ref$color","_ref$textColor","_ref$text","_ref$font","font","_ref$overflow","Text","textAlign","textBaseline","stripeColor","stripes","canvas","context","getContext","lineCount","pixelRatio","DEVICE_PIXEL_RATIO","height","fillStyle","fillRect","line","from","to","moveTo","C_src_Solutions_WebApp_node_modules_babel_runtime_corejs2_helpers_esm_toConsumableArray__WEBPACK_IMPORTED_MODULE_2__","lineTo","lineWidth","lineCap","strokeStyle","createPattern"],"mappings":"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","file":"js/chunk-2ac63f53.8942ec07.js","sourcesContent":["const hexComponentToColorComponent = hex => parseInt(hex.length === 1 ? hex.repeat(2) : hex, 16)\r\n\r\nconst hexToNormalized = hex => {\r\n if (hex.length < 4 || hex.length > 9 || hex.length === 8) {\r\n throw new Error(`invalid hex value '${hex}', only supports 3,4,6 or 8 hex digits`)\r\n }\r\n\r\n const components = hex.length === 4 || hex.length === 5\r\n ? hex.substring(1).split('').map(hexComponentToColorComponent)\r\n : hex.substring(1).match(/.{2}/g).map(hexComponentToColorComponent)\r\n\r\n if (components.length === 4) {\r\n components[3] = components[3] / 255\r\n } else {\r\n components.push(1)\r\n }\r\n\r\n return components\r\n}\r\n\r\nconst rgbaStringToNormalized = rgbaString => {\r\n const components = rgbaString.split(/[()]/)[1].split(',').map(x => parseFloat(x.trim()))\r\n\r\n if (components.length === 3) {\r\n components.push(1)\r\n }\r\n\r\n return components\r\n}\r\n\r\nfunction normalizeColor (color) {\r\n if (Array.isArray(color) && color.length === 4) {\r\n return color\r\n }\r\n\r\n switch (color[0]) {\r\n case '#': {\r\n return hexToNormalized(color)\r\n }\r\n case 'r': {\r\n return rgbaStringToNormalized(color)\r\n }\r\n default:\r\n throw new Error(`invalid color: '${color}', only hex or rgb(a) supported`)\r\n }\r\n}\r\n\r\nexport function toRgba (color) {\r\n const [r, g, b, a] = normalizeColor(color)\r\n\r\n return `rgba(${r},${g},${b},${a})`\r\n}\r\n\r\nexport function toHexAbgr (color, a = 'FF') {\r\n const hex = toHex(color)\r\n\r\n const r = hex.substring(1, 3)\r\n const g = hex.substring(3, 5)\r\n const b = hex.substring(5, 7)\r\n return `#${a}${b}${g}${r}`\r\n}\r\n\r\nexport function toHex (color) {\r\n const rgba = normalizeColor(color)\r\n\r\n rgba[3] = Math.round(rgba[3] * 255)\r\n\r\n const relevantChannels = rgba[3] === 255 ? rgba.slice(0, 3) : rgba\r\n\r\n return '#' + relevantChannels.map(x => ('0' + x.toString(16).toUpperCase()).slice(-2)).join('')\r\n}\r\n\r\nexport function withAlpha (color, opacity) {\r\n color = normalizeColor(color)\r\n\r\n const [r, g, b] = color.slice(0, 3)\r\n\r\n return `rgba(${r},${g},${b},${opacity})`\r\n}\r\n\r\nconst luminance = rgba => {\r\n const [r, g, b] = rgba.slice(0, 3).map(c => c <= 10.0164 ? c / 3294.6 : Math.pow((c + 0.055) / 269.025, 2.4))\r\n return 0.2126 * r + 0.7152 * g + 0.0722 * b\r\n}\r\n\r\nconst blackOrWhite = rgbaBackgroundColor => luminance(rgbaBackgroundColor) > 0.179\r\n ? 'rgb(0,0,0)'\r\n : 'rgb(255,255,255)'\r\n\r\nexport const readableTextColor = backgroundColor => blackOrWhite(normalizeColor(backgroundColor))\r\n\r\nconst clamp = (value, [min, max]) => Math.max(min, Math.min(max, value))\r\nconst lerp = (a, b, t) => a + t * (b - a)\r\n\r\nexport const desaturate = (color, factor = 1) => {\r\n const [r, g, b, a] = normalizeColor(color)\r\n\r\n const gray = Math.floor(0.5 * (Math.min(r, g, b) + Math.max(r, g, b)))\r\n\r\n const mix = channel => lerp(channel, gray, factor)\r\n\r\n return `rgba(${mix(r)},${mix(g)},${mix(b)},${a})`\r\n}\r\n\r\nexport function interpolate (color1, color2, t = 0.5) {\r\n const [components1, components2] = [color1, color2].map(normalizeColor)\r\n\r\n const blend = i => lerp(components1[i], components2[i], t)\r\n\r\n const [r, g, b, a] = components1.map((x, i) => i < 3 ? Math.round(blend(i)) : blend(i))\r\n\r\n return `rgba(${r},${g},${b},${a})`\r\n}\r\n\r\nexport function interpolateRegularGradient (colors, t = 0.5) {\r\n t = clamp(t, [0, 1])\r\n\r\n // NOTE account for inclusive end of last color interval\r\n if (t === 1) return colors[colors.length - 1]\r\n\r\n const rawBin = Math.floor(t * (colors.length - 1))\r\n const bin = clamp(rawBin, [0, colors.length - 2])\r\n\r\n const renormalized = t % (1 / (colors.length - 1))\r\n\r\n return interpolate(colors[bin], colors[bin + 1], renormalized)\r\n}\r\n","import Style from 'ol/style/Style'\r\nimport Stroke from 'ol/style/Stroke'\r\nimport Fill from 'ol/style/Fill'\r\nimport Circle from 'ol/style/Circle'\r\n\r\nimport {labelText, stripedFill} from '@helpers/openlayers/styles'\r\n\r\nexport const polygonBase = new Style({\r\n stroke: new Stroke({\r\n color: 'rgba(200, 200, 200, 1)',\r\n width: 2\r\n }),\r\n fill: new Fill({color: 'rgba(200, 200, 200, 0.4)'}),\r\n text: labelText({text: '', color: 'rgb(60, 60, 60)'})\r\n})\r\n\r\nexport const zoneBase = new Style({\r\n stroke: new Stroke({\r\n color: 'rgba(200, 200, 200, 1)',\r\n width: 2\r\n }),\r\n fill: new Fill({color: 'rgba(200, 200, 200, 0.4)'}),\r\n text: labelText({text: '', color: 'rgb(60, 60, 60)', overflow: false})\r\n})\r\n\r\nexport const polygonClusterBase = new Style({\r\n image: new Circle({\r\n radius: 15,\r\n fill: new Fill({color: 'rgba(255, 130, 40, 0.8)'})\r\n }),\r\n text: labelText({color: 'transparent'})\r\n})\r\n\r\nexport const pointBase = new Style({\r\n image: new Circle({\r\n radius: 2,\r\n fill: new Fill({color: 'rgba(255, 0, 0)'})\r\n })\r\n})\r\n\r\nexport const stripedPolygonBase = new Style({\r\n stroke: new Stroke({\r\n color: 'black',\r\n width: 2\r\n }),\r\n fill: stripedFill('black', 'transparent'),\r\n text: labelText({color: 'black'})\r\n})\r\n\r\nexport const stripedPolygonBaseWithoutText = new Style({\r\n stroke: new Stroke({\r\n color: 'black',\r\n width: 2\r\n }),\r\n fill: stripedFill('black', 'transparent')\r\n})\r\n\r\nexport const border = new Style({\r\n stroke: new Stroke({\r\n color: 'rgba(150, 200, 255, 0.8)',\r\n width: 1\r\n }),\r\n fill: new Fill({\r\n color: 'rgba(150, 200, 255, 0.6)'\r\n }),\r\n text: labelText({color: 'rgb(35, 35, 35)', textColor: 'rgba(255, 255, 255, 0.8)'})\r\n})\r\n\r\n// TODO: might be obsolete\r\nexport const borderBase = new Style({\r\n stroke: new Stroke({\r\n color: '#7098ff',\r\n width: 2\r\n }),\r\n text: labelText({text: '', color: '#7098ff'})\r\n})\r\n\r\nexport const grid = [\r\n new Style({\r\n image: new Circle({\r\n radius: 10,\r\n stroke: new Stroke({\r\n color: 'rgba(255, 0, 0, 0.5)',\r\n width: 1\r\n })\r\n }),\r\n stroke: new Stroke({\r\n color: 'rgba(0, 0, 0, 0.5)',\r\n width: 1\r\n })\r\n })\r\n]\r\n\r\nexport const fieldBorderActive = [new Style({\r\n stroke: new Stroke({\r\n color: 'rgb(255, 255, 255)',\r\n width: 2\r\n })\r\n})]\r\n\r\nexport const fieldBorderInactive = [new Style({\r\n stroke: new Stroke({\r\n color: 'rgb(128, 128, 128)',\r\n width: 1,\r\n lineDash: [10, 5]\r\n }),\r\n fill: new Fill({\r\n color: 'rgba(0, 0, 0, 0.4)'\r\n })\r\n})]\r\n","var $export = require('./_export');\n\n$export($export.P, 'String', {\n // 21.1.3.13 String.prototype.repeat(count)\n repeat: require('./_string-repeat')\n});\n","export default function(specifier) {\n var n = specifier.length / 6 | 0, colors = new Array(n), i = 0;\n while (i < n) colors[i] = \"#\" + specifier.slice(i * 6, ++i * 6);\n return colors;\n}\n","export default function(constructor, factory, prototype) {\n constructor.prototype = factory.prototype = prototype;\n prototype.constructor = constructor;\n}\n\nexport function extend(parent, definition) {\n var prototype = Object.create(parent.prototype);\n for (var key in definition) prototype[key] = definition[key];\n return prototype;\n}\n","import colors from \"../colors\";\n\nexport default colors(\"1f77b4ff7f0e2ca02cd627289467bd8c564be377c27f7f7fbcbd2217becf\");\n","import colors from \"../colors\";\n\nexport default colors(\"7fc97fbeaed4fdc086ffff99386cb0f0027fbf5b17666666\");\n","import colors from \"../colors\";\n\nexport default colors(\"1b9e77d95f027570b3e7298a66a61ee6ab02a6761d666666\");\n","import colors from \"../colors\";\n\nexport default colors(\"a6cee31f78b4b2df8a33a02cfb9a99e31a1cfdbf6fff7f00cab2d66a3d9affff99b15928\");\n","import colors from \"../colors\";\n\nexport default colors(\"fbb4aeb3cde3ccebc5decbe4fed9a6ffffcce5d8bdfddaecf2f2f2\");\n","import colors from \"../colors\";\n\nexport default colors(\"b3e2cdfdcdaccbd5e8f4cae4e6f5c9fff2aef1e2cccccccc\");\n","import colors from \"../colors\";\n\nexport default colors(\"e41a1c377eb84daf4a984ea3ff7f00ffff33a65628f781bf999999\");\n","import colors from \"../colors\";\n\nexport default colors(\"66c2a5fc8d628da0cbe78ac3a6d854ffd92fe5c494b3b3b3\");\n","import colors from \"../colors\";\n\nexport default colors(\"8dd3c7ffffb3bebadafb807280b1d3fdb462b3de69fccde5d9d9d9bc80bdccebc5ffed6f\");\n","import define, {extend} from \"./define\";\n\nexport function Color() {}\n\nexport var darker = 0.7;\nexport var brighter = 1 / darker;\n\nvar reI = \"\\\\s*([+-]?\\\\d+)\\\\s*\",\n reN = \"\\\\s*([+-]?\\\\d*\\\\.?\\\\d+(?:[eE][+-]?\\\\d+)?)\\\\s*\",\n reP = \"\\\\s*([+-]?\\\\d*\\\\.?\\\\d+(?:[eE][+-]?\\\\d+)?)%\\\\s*\",\n reHex3 = /^#([0-9a-f]{3})$/,\n reHex6 = /^#([0-9a-f]{6})$/,\n reRgbInteger = new RegExp(\"^rgb\\\\(\" + [reI, reI, reI] + \"\\\\)$\"),\n reRgbPercent = new RegExp(\"^rgb\\\\(\" + [reP, reP, reP] + \"\\\\)$\"),\n reRgbaInteger = new RegExp(\"^rgba\\\\(\" + [reI, reI, reI, reN] + \"\\\\)$\"),\n reRgbaPercent = new RegExp(\"^rgba\\\\(\" + [reP, reP, reP, reN] + \"\\\\)$\"),\n reHslPercent = new RegExp(\"^hsl\\\\(\" + [reN, reP, reP] + \"\\\\)$\"),\n reHslaPercent = new RegExp(\"^hsla\\\\(\" + [reN, reP, reP, reN] + \"\\\\)$\");\n\nvar named = {\n aliceblue: 0xf0f8ff,\n antiquewhite: 0xfaebd7,\n aqua: 0x00ffff,\n aquamarine: 0x7fffd4,\n azure: 0xf0ffff,\n beige: 0xf5f5dc,\n bisque: 0xffe4c4,\n black: 0x000000,\n blanchedalmond: 0xffebcd,\n blue: 0x0000ff,\n blueviolet: 0x8a2be2,\n brown: 0xa52a2a,\n burlywood: 0xdeb887,\n cadetblue: 0x5f9ea0,\n chartreuse: 0x7fff00,\n chocolate: 0xd2691e,\n coral: 0xff7f50,\n cornflowerblue: 0x6495ed,\n cornsilk: 0xfff8dc,\n crimson: 0xdc143c,\n cyan: 0x00ffff,\n darkblue: 0x00008b,\n darkcyan: 0x008b8b,\n darkgoldenrod: 0xb8860b,\n darkgray: 0xa9a9a9,\n darkgreen: 0x006400,\n darkgrey: 0xa9a9a9,\n darkkhaki: 0xbdb76b,\n darkmagenta: 0x8b008b,\n darkolivegreen: 0x556b2f,\n darkorange: 0xff8c00,\n darkorchid: 0x9932cc,\n darkred: 0x8b0000,\n darksalmon: 0xe9967a,\n darkseagreen: 0x8fbc8f,\n darkslateblue: 0x483d8b,\n darkslategray: 0x2f4f4f,\n darkslategrey: 0x2f4f4f,\n darkturquoise: 0x00ced1,\n darkviolet: 0x9400d3,\n deeppink: 0xff1493,\n deepskyblue: 0x00bfff,\n dimgray: 0x696969,\n dimgrey: 0x696969,\n dodgerblue: 0x1e90ff,\n firebrick: 0xb22222,\n floralwhite: 0xfffaf0,\n forestgreen: 0x228b22,\n fuchsia: 0xff00ff,\n gainsboro: 0xdcdcdc,\n ghostwhite: 0xf8f8ff,\n gold: 0xffd700,\n goldenrod: 0xdaa520,\n gray: 0x808080,\n green: 0x008000,\n greenyellow: 0xadff2f,\n grey: 0x808080,\n honeydew: 0xf0fff0,\n hotpink: 0xff69b4,\n indianred: 0xcd5c5c,\n indigo: 0x4b0082,\n ivory: 0xfffff0,\n khaki: 0xf0e68c,\n lavender: 0xe6e6fa,\n lavenderblush: 0xfff0f5,\n lawngreen: 0x7cfc00,\n lemonchiffon: 0xfffacd,\n lightblue: 0xadd8e6,\n lightcoral: 0xf08080,\n lightcyan: 0xe0ffff,\n lightgoldenrodyellow: 0xfafad2,\n lightgray: 0xd3d3d3,\n lightgreen: 0x90ee90,\n lightgrey: 0xd3d3d3,\n lightpink: 0xffb6c1,\n lightsalmon: 0xffa07a,\n lightseagreen: 0x20b2aa,\n lightskyblue: 0x87cefa,\n lightslategray: 0x778899,\n lightslategrey: 0x778899,\n lightsteelblue: 0xb0c4de,\n lightyellow: 0xffffe0,\n lime: 0x00ff00,\n limegreen: 0x32cd32,\n linen: 0xfaf0e6,\n magenta: 0xff00ff,\n maroon: 0x800000,\n mediumaquamarine: 0x66cdaa,\n mediumblue: 0x0000cd,\n mediumorchid: 0xba55d3,\n mediumpurple: 0x9370db,\n mediumseagreen: 0x3cb371,\n mediumslateblue: 0x7b68ee,\n mediumspringgreen: 0x00fa9a,\n mediumturquoise: 0x48d1cc,\n mediumvioletred: 0xc71585,\n midnightblue: 0x191970,\n mintcream: 0xf5fffa,\n mistyrose: 0xffe4e1,\n moccasin: 0xffe4b5,\n navajowhite: 0xffdead,\n navy: 0x000080,\n oldlace: 0xfdf5e6,\n olive: 0x808000,\n olivedrab: 0x6b8e23,\n orange: 0xffa500,\n orangered: 0xff4500,\n orchid: 0xda70d6,\n palegoldenrod: 0xeee8aa,\n palegreen: 0x98fb98,\n paleturquoise: 0xafeeee,\n palevioletred: 0xdb7093,\n papayawhip: 0xffefd5,\n peachpuff: 0xffdab9,\n peru: 0xcd853f,\n pink: 0xffc0cb,\n plum: 0xdda0dd,\n powderblue: 0xb0e0e6,\n purple: 0x800080,\n rebeccapurple: 0x663399,\n red: 0xff0000,\n rosybrown: 0xbc8f8f,\n royalblue: 0x4169e1,\n saddlebrown: 0x8b4513,\n salmon: 0xfa8072,\n sandybrown: 0xf4a460,\n seagreen: 0x2e8b57,\n seashell: 0xfff5ee,\n sienna: 0xa0522d,\n silver: 0xc0c0c0,\n skyblue: 0x87ceeb,\n slateblue: 0x6a5acd,\n slategray: 0x708090,\n slategrey: 0x708090,\n snow: 0xfffafa,\n springgreen: 0x00ff7f,\n steelblue: 0x4682b4,\n tan: 0xd2b48c,\n teal: 0x008080,\n thistle: 0xd8bfd8,\n tomato: 0xff6347,\n turquoise: 0x40e0d0,\n violet: 0xee82ee,\n wheat: 0xf5deb3,\n white: 0xffffff,\n whitesmoke: 0xf5f5f5,\n yellow: 0xffff00,\n yellowgreen: 0x9acd32\n};\n\ndefine(Color, color, {\n displayable: function() {\n return this.rgb().displayable();\n },\n toString: function() {\n return this.rgb() + \"\";\n }\n});\n\nexport default function color(format) {\n var m;\n format = (format + \"\").trim().toLowerCase();\n return (m = reHex3.exec(format)) ? (m = parseInt(m[1], 16), new Rgb((m >> 8 & 0xf) | (m >> 4 & 0x0f0), (m >> 4 & 0xf) | (m & 0xf0), ((m & 0xf) << 4) | (m & 0xf), 1)) // #f00\n : (m = reHex6.exec(format)) ? rgbn(parseInt(m[1], 16)) // #ff0000\n : (m = reRgbInteger.exec(format)) ? new Rgb(m[1], m[2], m[3], 1) // rgb(255, 0, 0)\n : (m = reRgbPercent.exec(format)) ? new Rgb(m[1] * 255 / 100, m[2] * 255 / 100, m[3] * 255 / 100, 1) // rgb(100%, 0%, 0%)\n : (m = reRgbaInteger.exec(format)) ? rgba(m[1], m[2], m[3], m[4]) // rgba(255, 0, 0, 1)\n : (m = reRgbaPercent.exec(format)) ? rgba(m[1] * 255 / 100, m[2] * 255 / 100, m[3] * 255 / 100, m[4]) // rgb(100%, 0%, 0%, 1)\n : (m = reHslPercent.exec(format)) ? hsla(m[1], m[2] / 100, m[3] / 100, 1) // hsl(120, 50%, 50%)\n : (m = reHslaPercent.exec(format)) ? hsla(m[1], m[2] / 100, m[3] / 100, m[4]) // hsla(120, 50%, 50%, 1)\n : named.hasOwnProperty(format) ? rgbn(named[format])\n : format === \"transparent\" ? new Rgb(NaN, NaN, NaN, 0)\n : null;\n}\n\nfunction rgbn(n) {\n return new Rgb(n >> 16 & 0xff, n >> 8 & 0xff, n & 0xff, 1);\n}\n\nfunction rgba(r, g, b, a) {\n if (a <= 0) r = g = b = NaN;\n return new Rgb(r, g, b, a);\n}\n\nexport function rgbConvert(o) {\n if (!(o instanceof Color)) o = color(o);\n if (!o) return new Rgb;\n o = o.rgb();\n return new Rgb(o.r, o.g, o.b, o.opacity);\n}\n\nexport function rgb(r, g, b, opacity) {\n return arguments.length === 1 ? rgbConvert(r) : new Rgb(r, g, b, opacity == null ? 1 : opacity);\n}\n\nexport function Rgb(r, g, b, opacity) {\n this.r = +r;\n this.g = +g;\n this.b = +b;\n this.opacity = +opacity;\n}\n\ndefine(Rgb, rgb, extend(Color, {\n brighter: function(k) {\n k = k == null ? brighter : Math.pow(brighter, k);\n return new Rgb(this.r * k, this.g * k, this.b * k, this.opacity);\n },\n darker: function(k) {\n k = k == null ? darker : Math.pow(darker, k);\n return new Rgb(this.r * k, this.g * k, this.b * k, this.opacity);\n },\n rgb: function() {\n return this;\n },\n displayable: function() {\n return (0 <= this.r && this.r <= 255)\n && (0 <= this.g && this.g <= 255)\n && (0 <= this.b && this.b <= 255)\n && (0 <= this.opacity && this.opacity <= 1);\n },\n toString: function() {\n var a = this.opacity; a = isNaN(a) ? 1 : Math.max(0, Math.min(1, a));\n return (a === 1 ? \"rgb(\" : \"rgba(\")\n + Math.max(0, Math.min(255, Math.round(this.r) || 0)) + \", \"\n + Math.max(0, Math.min(255, Math.round(this.g) || 0)) + \", \"\n + Math.max(0, Math.min(255, Math.round(this.b) || 0))\n + (a === 1 ? \")\" : \", \" + a + \")\");\n }\n}));\n\nfunction hsla(h, s, l, a) {\n if (a <= 0) h = s = l = NaN;\n else if (l <= 0 || l >= 1) h = s = NaN;\n else if (s <= 0) h = NaN;\n return new Hsl(h, s, l, a);\n}\n\nexport function hslConvert(o) {\n if (o instanceof Hsl) return new Hsl(o.h, o.s, o.l, o.opacity);\n if (!(o instanceof Color)) o = color(o);\n if (!o) return new Hsl;\n if (o instanceof Hsl) return o;\n o = o.rgb();\n var r = o.r / 255,\n g = o.g / 255,\n b = o.b / 255,\n min = Math.min(r, g, b),\n max = Math.max(r, g, b),\n h = NaN,\n s = max - min,\n l = (max + min) / 2;\n if (s) {\n if (r === max) h = (g - b) / s + (g < b) * 6;\n else if (g === max) h = (b - r) / s + 2;\n else h = (r - g) / s + 4;\n s /= l < 0.5 ? max + min : 2 - max - min;\n h *= 60;\n } else {\n s = l > 0 && l < 1 ? 0 : h;\n }\n return new Hsl(h, s, l, o.opacity);\n}\n\nexport function hsl(h, s, l, opacity) {\n return arguments.length === 1 ? hslConvert(h) : new Hsl(h, s, l, opacity == null ? 1 : opacity);\n}\n\nfunction Hsl(h, s, l, opacity) {\n this.h = +h;\n this.s = +s;\n this.l = +l;\n this.opacity = +opacity;\n}\n\ndefine(Hsl, hsl, extend(Color, {\n brighter: function(k) {\n k = k == null ? brighter : Math.pow(brighter, k);\n return new Hsl(this.h, this.s, this.l * k, this.opacity);\n },\n darker: function(k) {\n k = k == null ? darker : Math.pow(darker, k);\n return new Hsl(this.h, this.s, this.l * k, this.opacity);\n },\n rgb: function() {\n var h = this.h % 360 + (this.h < 0) * 360,\n s = isNaN(h) || isNaN(this.s) ? 0 : this.s,\n l = this.l,\n m2 = l + (l < 0.5 ? l : 1 - l) * s,\n m1 = 2 * l - m2;\n return new Rgb(\n hsl2rgb(h >= 240 ? h - 240 : h + 120, m1, m2),\n hsl2rgb(h, m1, m2),\n hsl2rgb(h < 120 ? h + 240 : h - 120, m1, m2),\n this.opacity\n );\n },\n displayable: function() {\n return (0 <= this.s && this.s <= 1 || isNaN(this.s))\n && (0 <= this.l && this.l <= 1)\n && (0 <= this.opacity && this.opacity <= 1);\n }\n}));\n\n/* From FvD 13.37, CSS Color Module Level 3 */\nfunction hsl2rgb(h, m1, m2) {\n return (h < 60 ? m1 + (m2 - m1) * h / 60\n : h < 180 ? m2\n : h < 240 ? m1 + (m2 - m1) * (240 - h) / 60\n : m1) * 255;\n}\n","export var deg2rad = Math.PI / 180;\nexport var rad2deg = 180 / Math.PI;\n","import define, {extend} from \"./define\";\nimport {Color, rgbConvert, Rgb} from \"./color\";\nimport {deg2rad, rad2deg} from \"./math\";\n\nvar Kn = 18,\n Xn = 0.950470, // D65 standard referent\n Yn = 1,\n Zn = 1.088830,\n t0 = 4 / 29,\n t1 = 6 / 29,\n t2 = 3 * t1 * t1,\n t3 = t1 * t1 * t1;\n\nfunction labConvert(o) {\n if (o instanceof Lab) return new Lab(o.l, o.a, o.b, o.opacity);\n if (o instanceof Hcl) {\n var h = o.h * deg2rad;\n return new Lab(o.l, Math.cos(h) * o.c, Math.sin(h) * o.c, o.opacity);\n }\n if (!(o instanceof Rgb)) o = rgbConvert(o);\n var b = rgb2xyz(o.r),\n a = rgb2xyz(o.g),\n l = rgb2xyz(o.b),\n x = xyz2lab((0.4124564 * b + 0.3575761 * a + 0.1804375 * l) / Xn),\n y = xyz2lab((0.2126729 * b + 0.7151522 * a + 0.0721750 * l) / Yn),\n z = xyz2lab((0.0193339 * b + 0.1191920 * a + 0.9503041 * l) / Zn);\n return new Lab(116 * y - 16, 500 * (x - y), 200 * (y - z), o.opacity);\n}\n\nexport default function lab(l, a, b, opacity) {\n return arguments.length === 1 ? labConvert(l) : new Lab(l, a, b, opacity == null ? 1 : opacity);\n}\n\nexport function Lab(l, a, b, opacity) {\n this.l = +l;\n this.a = +a;\n this.b = +b;\n this.opacity = +opacity;\n}\n\ndefine(Lab, lab, extend(Color, {\n brighter: function(k) {\n return new Lab(this.l + Kn * (k == null ? 1 : k), this.a, this.b, this.opacity);\n },\n darker: function(k) {\n return new Lab(this.l - Kn * (k == null ? 1 : k), this.a, this.b, this.opacity);\n },\n rgb: function() {\n var y = (this.l + 16) / 116,\n x = isNaN(this.a) ? y : y + this.a / 500,\n z = isNaN(this.b) ? y : y - this.b / 200;\n y = Yn * lab2xyz(y);\n x = Xn * lab2xyz(x);\n z = Zn * lab2xyz(z);\n return new Rgb(\n xyz2rgb( 3.2404542 * x - 1.5371385 * y - 0.4985314 * z), // D65 -> sRGB\n xyz2rgb(-0.9692660 * x + 1.8760108 * y + 0.0415560 * z),\n xyz2rgb( 0.0556434 * x - 0.2040259 * y + 1.0572252 * z),\n this.opacity\n );\n }\n}));\n\nfunction xyz2lab(t) {\n return t > t3 ? Math.pow(t, 1 / 3) : t / t2 + t0;\n}\n\nfunction lab2xyz(t) {\n return t > t1 ? t * t * t : t2 * (t - t0);\n}\n\nfunction xyz2rgb(x) {\n return 255 * (x <= 0.0031308 ? 12.92 * x : 1.055 * Math.pow(x, 1 / 2.4) - 0.055);\n}\n\nfunction rgb2xyz(x) {\n return (x /= 255) <= 0.04045 ? x / 12.92 : Math.pow((x + 0.055) / 1.055, 2.4);\n}\n\nfunction hclConvert(o) {\n if (o instanceof Hcl) return new Hcl(o.h, o.c, o.l, o.opacity);\n if (!(o instanceof Lab)) o = labConvert(o);\n var h = Math.atan2(o.b, o.a) * rad2deg;\n return new Hcl(h < 0 ? h + 360 : h, Math.sqrt(o.a * o.a + o.b * o.b), o.l, o.opacity);\n}\n\nexport function hcl(h, c, l, opacity) {\n return arguments.length === 1 ? hclConvert(h) : new Hcl(h, c, l, opacity == null ? 1 : opacity);\n}\n\nexport function Hcl(h, c, l, opacity) {\n this.h = +h;\n this.c = +c;\n this.l = +l;\n this.opacity = +opacity;\n}\n\ndefine(Hcl, hcl, extend(Color, {\n brighter: function(k) {\n return new Hcl(this.h, this.c, this.l + Kn * (k == null ? 1 : k), this.opacity);\n },\n darker: function(k) {\n return new Hcl(this.h, this.c, this.l - Kn * (k == null ? 1 : k), this.opacity);\n },\n rgb: function() {\n return labConvert(this).rgb();\n }\n}));\n","import define, {extend} from \"./define\";\nimport {Color, rgbConvert, Rgb, darker, brighter} from \"./color\";\nimport {deg2rad, rad2deg} from \"./math\";\n\nvar A = -0.14861,\n B = +1.78277,\n C = -0.29227,\n D = -0.90649,\n E = +1.97294,\n ED = E * D,\n EB = E * B,\n BC_DA = B * C - D * A;\n\nfunction cubehelixConvert(o) {\n if (o instanceof Cubehelix) return new Cubehelix(o.h, o.s, o.l, o.opacity);\n if (!(o instanceof Rgb)) o = rgbConvert(o);\n var r = o.r / 255,\n g = o.g / 255,\n b = o.b / 255,\n l = (BC_DA * b + ED * r - EB * g) / (BC_DA + ED - EB),\n bl = b - l,\n k = (E * (g - l) - C * bl) / D,\n s = Math.sqrt(k * k + bl * bl) / (E * l * (1 - l)), // NaN if l=0 or l=1\n h = s ? Math.atan2(k, bl) * rad2deg - 120 : NaN;\n return new Cubehelix(h < 0 ? h + 360 : h, s, l, o.opacity);\n}\n\nexport default function cubehelix(h, s, l, opacity) {\n return arguments.length === 1 ? cubehelixConvert(h) : new Cubehelix(h, s, l, opacity == null ? 1 : opacity);\n}\n\nexport function Cubehelix(h, s, l, opacity) {\n this.h = +h;\n this.s = +s;\n this.l = +l;\n this.opacity = +opacity;\n}\n\ndefine(Cubehelix, cubehelix, extend(Color, {\n brighter: function(k) {\n k = k == null ? brighter : Math.pow(brighter, k);\n return new Cubehelix(this.h, this.s, this.l * k, this.opacity);\n },\n darker: function(k) {\n k = k == null ? darker : Math.pow(darker, k);\n return new Cubehelix(this.h, this.s, this.l * k, this.opacity);\n },\n rgb: function() {\n var h = isNaN(this.h) ? 0 : (this.h + 120) * deg2rad,\n l = +this.l,\n a = isNaN(this.s) ? 0 : this.s * l * (1 - l),\n cosh = Math.cos(h),\n sinh = Math.sin(h);\n return new Rgb(\n 255 * (l + a * (A * cosh + B * sinh)),\n 255 * (l + a * (C * cosh + D * sinh)),\n 255 * (l + a * (E * cosh)),\n this.opacity\n );\n }\n}));\n","export function basis(t1, v0, v1, v2, v3) {\n var t2 = t1 * t1, t3 = t2 * t1;\n return ((1 - 3 * t1 + 3 * t2 - t3) * v0\n + (4 - 6 * t2 + 3 * t3) * v1\n + (1 + 3 * t1 + 3 * t2 - 3 * t3) * v2\n + t3 * v3) / 6;\n}\n\nexport default function(values) {\n var n = values.length - 1;\n return function(t) {\n var i = t <= 0 ? (t = 0) : t >= 1 ? (t = 1, n - 1) : Math.floor(t * n),\n v1 = values[i],\n v2 = values[i + 1],\n v0 = i > 0 ? values[i - 1] : 2 * v1 - v2,\n v3 = i < n - 1 ? values[i + 2] : 2 * v2 - v1;\n return basis((t - i / n) * n, v0, v1, v2, v3);\n };\n}\n","import {basis} from \"./basis\";\n\nexport default function(values) {\n var n = values.length;\n return function(t) {\n var i = Math.floor(((t %= 1) < 0 ? ++t : t) * n),\n v0 = values[(i + n - 1) % n],\n v1 = values[i % n],\n v2 = values[(i + 1) % n],\n v3 = values[(i + 2) % n];\n return basis((t - i / n) * n, v0, v1, v2, v3);\n };\n}\n","export default function(x) {\n return function() {\n return x;\n };\n}\n","import constant from \"./constant\";\n\nfunction linear(a, d) {\n return function(t) {\n return a + t * d;\n };\n}\n\nfunction exponential(a, b, y) {\n return a = Math.pow(a, y), b = Math.pow(b, y) - a, y = 1 / y, function(t) {\n return Math.pow(a + t * b, y);\n };\n}\n\nexport function hue(a, b) {\n var d = b - a;\n return d ? linear(a, d > 180 || d < -180 ? d - 360 * Math.round(d / 360) : d) : constant(isNaN(a) ? b : a);\n}\n\nexport function gamma(y) {\n return (y = +y) === 1 ? nogamma : function(a, b) {\n return b - a ? exponential(a, b, y) : constant(isNaN(a) ? b : a);\n };\n}\n\nexport default function nogamma(a, b) {\n var d = b - a;\n return d ? linear(a, d) : constant(isNaN(a) ? b : a);\n}\n","import {rgb as colorRgb} from \"d3-color\";\nimport basis from \"./basis\";\nimport basisClosed from \"./basisClosed\";\nimport nogamma, {gamma} from \"./color\";\n\nexport default (function rgbGamma(y) {\n var color = gamma(y);\n\n function rgb(start, end) {\n var r = color((start = colorRgb(start)).r, (end = colorRgb(end)).r),\n g = color(start.g, end.g),\n b = color(start.b, end.b),\n opacity = nogamma(start.opacity, end.opacity);\n return function(t) {\n start.r = r(t);\n start.g = g(t);\n start.b = b(t);\n start.opacity = opacity(t);\n return start + \"\";\n };\n }\n\n rgb.gamma = rgbGamma;\n\n return rgb;\n})(1);\n\nfunction rgbSpline(spline) {\n return function(colors) {\n var n = colors.length,\n r = new Array(n),\n g = new Array(n),\n b = new Array(n),\n i, color;\n for (i = 0; i < n; ++i) {\n color = colorRgb(colors[i]);\n r[i] = color.r || 0;\n g[i] = color.g || 0;\n b[i] = color.b || 0;\n }\n r = spline(r);\n g = spline(g);\n b = spline(b);\n color.opacity = 1;\n return function(t) {\n color.r = r(t);\n color.g = g(t);\n color.b = b(t);\n return color + \"\";\n };\n };\n}\n\nexport var rgbBasis = rgbSpline(basis);\nexport var rgbBasisClosed = rgbSpline(basisClosed);\n","export default function(a, b) {\n return a = +a, b -= a, function(t) {\n return a + b * t;\n };\n}\n","import number from \"./number\";\n\nvar reA = /[-+]?(?:\\d+\\.?\\d*|\\.?\\d+)(?:[eE][-+]?\\d+)?/g,\n reB = new RegExp(reA.source, \"g\");\n\nfunction zero(b) {\n return function() {\n return b;\n };\n}\n\nfunction one(b) {\n return function(t) {\n return b(t) + \"\";\n };\n}\n\nexport default function(a, b) {\n var bi = reA.lastIndex = reB.lastIndex = 0, // scan index for next number in b\n am, // current match in a\n bm, // current match in b\n bs, // string preceding current number in b, if any\n i = -1, // index in s\n s = [], // string constants and placeholders\n q = []; // number interpolators\n\n // Coerce inputs to strings.\n a = a + \"\", b = b + \"\";\n\n // Interpolate pairs of numbers in a & b.\n while ((am = reA.exec(a))\n && (bm = reB.exec(b))) {\n if ((bs = bm.index) > bi) { // a string precedes the next number in b\n bs = b.slice(bi, bs);\n if (s[i]) s[i] += bs; // coalesce with previous string\n else s[++i] = bs;\n }\n if ((am = am[0]) === (bm = bm[0])) { // numbers in a & b match\n if (s[i]) s[i] += bm; // coalesce with previous string\n else s[++i] = bm;\n } else { // interpolate non-matching numbers\n s[++i] = null;\n q.push({i: i, x: number(am, bm)});\n }\n bi = reB.lastIndex;\n }\n\n // Add remains of b.\n if (bi < b.length) {\n bs = b.slice(bi);\n if (s[i]) s[i] += bs; // coalesce with previous string\n else s[++i] = bs;\n }\n\n // Special optimization for only a single match.\n // Otherwise, interpolate each of the numbers and rejoin the string.\n return s.length < 2 ? (q[0]\n ? one(q[0].x)\n : zero(b))\n : (b = q.length, function(t) {\n for (var i = 0, o; i < b; ++i) s[(o = q[i]).i] = o.x(t);\n return s.join(\"\");\n });\n}\n","import decompose, {identity} from \"./decompose\";\n\nvar cssNode,\n cssRoot,\n cssView,\n svgNode;\n\nexport function parseCss(value) {\n if (value === \"none\") return identity;\n if (!cssNode) cssNode = document.createElement(\"DIV\"), cssRoot = document.documentElement, cssView = document.defaultView;\n cssNode.style.transform = value;\n value = cssView.getComputedStyle(cssRoot.appendChild(cssNode), null).getPropertyValue(\"transform\");\n cssRoot.removeChild(cssNode);\n value = value.slice(7, -1).split(\",\");\n return decompose(+value[0], +value[1], +value[2], +value[3], +value[4], +value[5]);\n}\n\nexport function parseSvg(value) {\n if (value == null) return identity;\n if (!svgNode) svgNode = document.createElementNS(\"http://www.w3.org/2000/svg\", \"g\");\n svgNode.setAttribute(\"transform\", value);\n if (!(value = svgNode.transform.baseVal.consolidate())) return identity;\n value = value.matrix;\n return decompose(value.a, value.b, value.c, value.d, value.e, value.f);\n}\n","var degrees = 180 / Math.PI;\n\nexport var identity = {\n translateX: 0,\n translateY: 0,\n rotate: 0,\n skewX: 0,\n scaleX: 1,\n scaleY: 1\n};\n\nexport default function(a, b, c, d, e, f) {\n var scaleX, scaleY, skewX;\n if (scaleX = Math.sqrt(a * a + b * b)) a /= scaleX, b /= scaleX;\n if (skewX = a * c + b * d) c -= a * skewX, d -= b * skewX;\n if (scaleY = Math.sqrt(c * c + d * d)) c /= scaleY, d /= scaleY, skewX /= scaleY;\n if (a * d < b * c) a = -a, b = -b, skewX = -skewX, scaleX = -scaleX;\n return {\n translateX: e,\n translateY: f,\n rotate: Math.atan2(b, a) * degrees,\n skewX: Math.atan(skewX) * degrees,\n scaleX: scaleX,\n scaleY: scaleY\n };\n}\n","import number from \"../number\";\nimport {parseCss, parseSvg} from \"./parse\";\n\nfunction interpolateTransform(parse, pxComma, pxParen, degParen) {\n\n function pop(s) {\n return s.length ? s.pop() + \" \" : \"\";\n }\n\n function translate(xa, ya, xb, yb, s, q) {\n if (xa !== xb || ya !== yb) {\n var i = s.push(\"translate(\", null, pxComma, null, pxParen);\n q.push({i: i - 4, x: number(xa, xb)}, {i: i - 2, x: number(ya, yb)});\n } else if (xb || yb) {\n s.push(\"translate(\" + xb + pxComma + yb + pxParen);\n }\n }\n\n function rotate(a, b, s, q) {\n if (a !== b) {\n if (a - b > 180) b += 360; else if (b - a > 180) a += 360; // shortest path\n q.push({i: s.push(pop(s) + \"rotate(\", null, degParen) - 2, x: number(a, b)});\n } else if (b) {\n s.push(pop(s) + \"rotate(\" + b + degParen);\n }\n }\n\n function skewX(a, b, s, q) {\n if (a !== b) {\n q.push({i: s.push(pop(s) + \"skewX(\", null, degParen) - 2, x: number(a, b)});\n } else if (b) {\n s.push(pop(s) + \"skewX(\" + b + degParen);\n }\n }\n\n function scale(xa, ya, xb, yb, s, q) {\n if (xa !== xb || ya !== yb) {\n var i = s.push(pop(s) + \"scale(\", null, \",\", null, \")\");\n q.push({i: i - 4, x: number(xa, xb)}, {i: i - 2, x: number(ya, yb)});\n } else if (xb !== 1 || yb !== 1) {\n s.push(pop(s) + \"scale(\" + xb + \",\" + yb + \")\");\n }\n }\n\n return function(a, b) {\n var s = [], // string constants and placeholders\n q = []; // number interpolators\n a = parse(a), b = parse(b);\n translate(a.translateX, a.translateY, b.translateX, b.translateY, s, q);\n rotate(a.rotate, b.rotate, s, q);\n skewX(a.skewX, b.skewX, s, q);\n scale(a.scaleX, a.scaleY, b.scaleX, b.scaleY, s, q);\n a = b = null; // gc\n return function(t) {\n var i = -1, n = q.length, o;\n while (++i < n) s[(o = q[i]).i] = o.x(t);\n return s.join(\"\");\n };\n };\n}\n\nexport var interpolateTransformCss = interpolateTransform(parseCss, \"px, \", \"px)\", \"deg)\");\nexport var interpolateTransformSvg = interpolateTransform(parseSvg, \", \", \")\", \")\");\n","var rho = Math.SQRT2,\n rho2 = 2,\n rho4 = 4,\n epsilon2 = 1e-12;\n\nfunction cosh(x) {\n return ((x = Math.exp(x)) + 1 / x) / 2;\n}\n\nfunction sinh(x) {\n return ((x = Math.exp(x)) - 1 / x) / 2;\n}\n\nfunction tanh(x) {\n return ((x = Math.exp(2 * x)) - 1) / (x + 1);\n}\n\n// p0 = [ux0, uy0, w0]\n// p1 = [ux1, uy1, w1]\nexport default function(p0, p1) {\n var ux0 = p0[0], uy0 = p0[1], w0 = p0[2],\n ux1 = p1[0], uy1 = p1[1], w1 = p1[2],\n dx = ux1 - ux0,\n dy = uy1 - uy0,\n d2 = dx * dx + dy * dy,\n i,\n S;\n\n // Special case for u0 ≅ u1.\n if (d2 < epsilon2) {\n S = Math.log(w1 / w0) / rho;\n i = function(t) {\n return [\n ux0 + t * dx,\n uy0 + t * dy,\n w0 * Math.exp(rho * t * S)\n ];\n }\n }\n\n // General case.\n else {\n var d1 = Math.sqrt(d2),\n b0 = (w1 * w1 - w0 * w0 + rho4 * d2) / (2 * w0 * rho2 * d1),\n b1 = (w1 * w1 - w0 * w0 - rho4 * d2) / (2 * w1 * rho2 * d1),\n r0 = Math.log(Math.sqrt(b0 * b0 + 1) - b0),\n r1 = Math.log(Math.sqrt(b1 * b1 + 1) - b1);\n S = (r1 - r0) / rho;\n i = function(t) {\n var s = t * S,\n coshr0 = cosh(r0),\n u = w0 / (rho2 * d1) * (coshr0 * tanh(rho * s + r0) - sinh(r0));\n return [\n ux0 + u * dx,\n uy0 + u * dy,\n w0 * coshr0 / cosh(rho * s + r0)\n ];\n }\n }\n\n i.duration = S * 1000;\n\n return i;\n}\n","import {hsl as colorHsl} from \"d3-color\";\nimport color, {hue} from \"./color\";\n\nfunction hsl(hue) {\n return function(start, end) {\n var h = hue((start = colorHsl(start)).h, (end = colorHsl(end)).h),\n s = color(start.s, end.s),\n l = color(start.l, end.l),\n opacity = color(start.opacity, end.opacity);\n return function(t) {\n start.h = h(t);\n start.s = s(t);\n start.l = l(t);\n start.opacity = opacity(t);\n return start + \"\";\n };\n }\n}\n\nexport default hsl(hue);\nexport var hslLong = hsl(color);\n","import {hcl as colorHcl} from \"d3-color\";\nimport color, {hue} from \"./color\";\n\nfunction hcl(hue) {\n return function(start, end) {\n var h = hue((start = colorHcl(start)).h, (end = colorHcl(end)).h),\n c = color(start.c, end.c),\n l = color(start.l, end.l),\n opacity = color(start.opacity, end.opacity);\n return function(t) {\n start.h = h(t);\n start.c = c(t);\n start.l = l(t);\n start.opacity = opacity(t);\n return start + \"\";\n };\n }\n}\n\nexport default hcl(hue);\nexport var hclLong = hcl(color);\n","import {cubehelix as colorCubehelix} from \"d3-color\";\nimport color, {hue} from \"./color\";\n\nfunction cubehelix(hue) {\n return (function cubehelixGamma(y) {\n y = +y;\n\n function cubehelix(start, end) {\n var h = hue((start = colorCubehelix(start)).h, (end = colorCubehelix(end)).h),\n s = color(start.s, end.s),\n l = color(start.l, end.l),\n opacity = color(start.opacity, end.opacity);\n return function(t) {\n start.h = h(t);\n start.s = s(t);\n start.l = l(Math.pow(t, y));\n start.opacity = opacity(t);\n return start + \"\";\n };\n }\n\n cubehelix.gamma = cubehelixGamma;\n\n return cubehelix;\n })(1);\n}\n\nexport default cubehelix(hue);\nexport var cubehelixLong = cubehelix(color);\n","import {interpolateRgbBasis} from \"d3-interpolate\";\n\nexport default function(scheme) {\n return interpolateRgbBasis(scheme[scheme.length - 1]);\n}\n","import colors from \"../colors\";\nimport ramp from \"../ramp\";\n\nexport var scheme = new Array(3).concat(\n \"d8b365f5f5f55ab4ac\",\n \"a6611adfc27d80cdc1018571\",\n \"a6611adfc27df5f5f580cdc1018571\",\n \"8c510ad8b365f6e8c3c7eae55ab4ac01665e\",\n \"8c510ad8b365f6e8c3f5f5f5c7eae55ab4ac01665e\",\n \"8c510abf812ddfc27df6e8c3c7eae580cdc135978f01665e\",\n \"8c510abf812ddfc27df6e8c3f5f5f5c7eae580cdc135978f01665e\",\n \"5430058c510abf812ddfc27df6e8c3c7eae580cdc135978f01665e003c30\",\n \"5430058c510abf812ddfc27df6e8c3f5f5f5c7eae580cdc135978f01665e003c30\"\n).map(colors);\n\nexport default ramp(scheme);\n","import colors from \"../colors\";\nimport ramp from \"../ramp\";\n\nexport var scheme = new Array(3).concat(\n \"af8dc3f7f7f77fbf7b\",\n \"7b3294c2a5cfa6dba0008837\",\n \"7b3294c2a5cff7f7f7a6dba0008837\",\n \"762a83af8dc3e7d4e8d9f0d37fbf7b1b7837\",\n \"762a83af8dc3e7d4e8f7f7f7d9f0d37fbf7b1b7837\",\n \"762a839970abc2a5cfe7d4e8d9f0d3a6dba05aae611b7837\",\n \"762a839970abc2a5cfe7d4e8f7f7f7d9f0d3a6dba05aae611b7837\",\n \"40004b762a839970abc2a5cfe7d4e8d9f0d3a6dba05aae611b783700441b\",\n \"40004b762a839970abc2a5cfe7d4e8f7f7f7d9f0d3a6dba05aae611b783700441b\"\n).map(colors);\n\nexport default ramp(scheme);\n","import colors from \"../colors\";\nimport ramp from \"../ramp\";\n\nexport var scheme = new Array(3).concat(\n \"e9a3c9f7f7f7a1d76a\",\n \"d01c8bf1b6dab8e1864dac26\",\n \"d01c8bf1b6daf7f7f7b8e1864dac26\",\n \"c51b7de9a3c9fde0efe6f5d0a1d76a4d9221\",\n \"c51b7de9a3c9fde0eff7f7f7e6f5d0a1d76a4d9221\",\n \"c51b7dde77aef1b6dafde0efe6f5d0b8e1867fbc414d9221\",\n \"c51b7dde77aef1b6dafde0eff7f7f7e6f5d0b8e1867fbc414d9221\",\n \"8e0152c51b7dde77aef1b6dafde0efe6f5d0b8e1867fbc414d9221276419\",\n \"8e0152c51b7dde77aef1b6dafde0eff7f7f7e6f5d0b8e1867fbc414d9221276419\"\n).map(colors);\n\nexport default ramp(scheme);\n","import colors from \"../colors\";\nimport ramp from \"../ramp\";\n\nexport var scheme = new Array(3).concat(\n \"998ec3f7f7f7f1a340\",\n \"5e3c99b2abd2fdb863e66101\",\n \"5e3c99b2abd2f7f7f7fdb863e66101\",\n \"542788998ec3d8daebfee0b6f1a340b35806\",\n \"542788998ec3d8daebf7f7f7fee0b6f1a340b35806\",\n \"5427888073acb2abd2d8daebfee0b6fdb863e08214b35806\",\n \"5427888073acb2abd2d8daebf7f7f7fee0b6fdb863e08214b35806\",\n \"2d004b5427888073acb2abd2d8daebfee0b6fdb863e08214b358067f3b08\",\n \"2d004b5427888073acb2abd2d8daebf7f7f7fee0b6fdb863e08214b358067f3b08\"\n).map(colors);\n\nexport default ramp(scheme);\n","import colors from \"../colors\";\nimport ramp from \"../ramp\";\n\nexport var scheme = new Array(3).concat(\n \"ef8a62f7f7f767a9cf\",\n \"ca0020f4a58292c5de0571b0\",\n \"ca0020f4a582f7f7f792c5de0571b0\",\n \"b2182bef8a62fddbc7d1e5f067a9cf2166ac\",\n \"b2182bef8a62fddbc7f7f7f7d1e5f067a9cf2166ac\",\n \"b2182bd6604df4a582fddbc7d1e5f092c5de4393c32166ac\",\n \"b2182bd6604df4a582fddbc7f7f7f7d1e5f092c5de4393c32166ac\",\n \"67001fb2182bd6604df4a582fddbc7d1e5f092c5de4393c32166ac053061\",\n \"67001fb2182bd6604df4a582fddbc7f7f7f7d1e5f092c5de4393c32166ac053061\"\n).map(colors);\n\nexport default ramp(scheme);\n","import colors from \"../colors\";\nimport ramp from \"../ramp\";\n\nexport var scheme = new Array(3).concat(\n \"ef8a62ffffff999999\",\n \"ca0020f4a582bababa404040\",\n \"ca0020f4a582ffffffbababa404040\",\n \"b2182bef8a62fddbc7e0e0e09999994d4d4d\",\n \"b2182bef8a62fddbc7ffffffe0e0e09999994d4d4d\",\n \"b2182bd6604df4a582fddbc7e0e0e0bababa8787874d4d4d\",\n \"b2182bd6604df4a582fddbc7ffffffe0e0e0bababa8787874d4d4d\",\n \"67001fb2182bd6604df4a582fddbc7e0e0e0bababa8787874d4d4d1a1a1a\",\n \"67001fb2182bd6604df4a582fddbc7ffffffe0e0e0bababa8787874d4d4d1a1a1a\"\n).map(colors);\n\nexport default ramp(scheme);\n","import colors from \"../colors\";\nimport ramp from \"../ramp\";\n\nexport var scheme = new Array(3).concat(\n \"fc8d59ffffbf91bfdb\",\n \"d7191cfdae61abd9e92c7bb6\",\n \"d7191cfdae61ffffbfabd9e92c7bb6\",\n \"d73027fc8d59fee090e0f3f891bfdb4575b4\",\n \"d73027fc8d59fee090ffffbfe0f3f891bfdb4575b4\",\n \"d73027f46d43fdae61fee090e0f3f8abd9e974add14575b4\",\n \"d73027f46d43fdae61fee090ffffbfe0f3f8abd9e974add14575b4\",\n \"a50026d73027f46d43fdae61fee090e0f3f8abd9e974add14575b4313695\",\n \"a50026d73027f46d43fdae61fee090ffffbfe0f3f8abd9e974add14575b4313695\"\n).map(colors);\n\nexport default ramp(scheme);\n","import colors from \"../colors\";\nimport ramp from \"../ramp\";\n\nexport var scheme = new Array(3).concat(\n \"fc8d59ffffbf91cf60\",\n \"d7191cfdae61a6d96a1a9641\",\n \"d7191cfdae61ffffbfa6d96a1a9641\",\n \"d73027fc8d59fee08bd9ef8b91cf601a9850\",\n \"d73027fc8d59fee08bffffbfd9ef8b91cf601a9850\",\n \"d73027f46d43fdae61fee08bd9ef8ba6d96a66bd631a9850\",\n \"d73027f46d43fdae61fee08bffffbfd9ef8ba6d96a66bd631a9850\",\n \"a50026d73027f46d43fdae61fee08bd9ef8ba6d96a66bd631a9850006837\",\n \"a50026d73027f46d43fdae61fee08bffffbfd9ef8ba6d96a66bd631a9850006837\"\n).map(colors);\n\nexport default ramp(scheme);\n","import colors from \"../colors\";\nimport ramp from \"../ramp\";\n\nexport var scheme = new Array(3).concat(\n \"fc8d59ffffbf99d594\",\n \"d7191cfdae61abdda42b83ba\",\n \"d7191cfdae61ffffbfabdda42b83ba\",\n \"d53e4ffc8d59fee08be6f59899d5943288bd\",\n \"d53e4ffc8d59fee08bffffbfe6f59899d5943288bd\",\n \"d53e4ff46d43fdae61fee08be6f598abdda466c2a53288bd\",\n \"d53e4ff46d43fdae61fee08bffffbfe6f598abdda466c2a53288bd\",\n \"9e0142d53e4ff46d43fdae61fee08be6f598abdda466c2a53288bd5e4fa2\",\n \"9e0142d53e4ff46d43fdae61fee08bffffbfe6f598abdda466c2a53288bd5e4fa2\"\n).map(colors);\n\nexport default ramp(scheme);\n","import colors from \"../colors\";\nimport ramp from \"../ramp\";\n\nexport var scheme = new Array(3).concat(\n \"e5f5f999d8c92ca25f\",\n \"edf8fbb2e2e266c2a4238b45\",\n \"edf8fbb2e2e266c2a42ca25f006d2c\",\n \"edf8fbccece699d8c966c2a42ca25f006d2c\",\n \"edf8fbccece699d8c966c2a441ae76238b45005824\",\n \"f7fcfde5f5f9ccece699d8c966c2a441ae76238b45005824\",\n \"f7fcfde5f5f9ccece699d8c966c2a441ae76238b45006d2c00441b\"\n).map(colors);\n\nexport default ramp(scheme);\n","import colors from \"../colors\";\nimport ramp from \"../ramp\";\n\nexport var scheme = new Array(3).concat(\n \"e0ecf49ebcda8856a7\",\n \"edf8fbb3cde38c96c688419d\",\n \"edf8fbb3cde38c96c68856a7810f7c\",\n \"edf8fbbfd3e69ebcda8c96c68856a7810f7c\",\n \"edf8fbbfd3e69ebcda8c96c68c6bb188419d6e016b\",\n \"f7fcfde0ecf4bfd3e69ebcda8c96c68c6bb188419d6e016b\",\n \"f7fcfde0ecf4bfd3e69ebcda8c96c68c6bb188419d810f7c4d004b\"\n).map(colors);\n\nexport default ramp(scheme);\n","import colors from \"../colors\";\nimport ramp from \"../ramp\";\n\nexport var scheme = new Array(3).concat(\n \"e0f3dba8ddb543a2ca\",\n \"f0f9e8bae4bc7bccc42b8cbe\",\n \"f0f9e8bae4bc7bccc443a2ca0868ac\",\n \"f0f9e8ccebc5a8ddb57bccc443a2ca0868ac\",\n \"f0f9e8ccebc5a8ddb57bccc44eb3d32b8cbe08589e\",\n \"f7fcf0e0f3dbccebc5a8ddb57bccc44eb3d32b8cbe08589e\",\n \"f7fcf0e0f3dbccebc5a8ddb57bccc44eb3d32b8cbe0868ac084081\"\n).map(colors);\n\nexport default ramp(scheme);\n","import colors from \"../colors\";\nimport ramp from \"../ramp\";\n\nexport var scheme = new Array(3).concat(\n \"fee8c8fdbb84e34a33\",\n \"fef0d9fdcc8afc8d59d7301f\",\n \"fef0d9fdcc8afc8d59e34a33b30000\",\n \"fef0d9fdd49efdbb84fc8d59e34a33b30000\",\n \"fef0d9fdd49efdbb84fc8d59ef6548d7301f990000\",\n \"fff7ecfee8c8fdd49efdbb84fc8d59ef6548d7301f990000\",\n \"fff7ecfee8c8fdd49efdbb84fc8d59ef6548d7301fb300007f0000\"\n).map(colors);\n\nexport default ramp(scheme);\n","import colors from \"../colors\";\nimport ramp from \"../ramp\";\n\nexport var scheme = new Array(3).concat(\n \"ece2f0a6bddb1c9099\",\n \"f6eff7bdc9e167a9cf02818a\",\n \"f6eff7bdc9e167a9cf1c9099016c59\",\n \"f6eff7d0d1e6a6bddb67a9cf1c9099016c59\",\n \"f6eff7d0d1e6a6bddb67a9cf3690c002818a016450\",\n \"fff7fbece2f0d0d1e6a6bddb67a9cf3690c002818a016450\",\n \"fff7fbece2f0d0d1e6a6bddb67a9cf3690c002818a016c59014636\"\n).map(colors);\n\nexport default ramp(scheme);\n","import colors from \"../colors\";\nimport ramp from \"../ramp\";\n\nexport var scheme = new Array(3).concat(\n \"ece7f2a6bddb2b8cbe\",\n \"f1eef6bdc9e174a9cf0570b0\",\n \"f1eef6bdc9e174a9cf2b8cbe045a8d\",\n \"f1eef6d0d1e6a6bddb74a9cf2b8cbe045a8d\",\n \"f1eef6d0d1e6a6bddb74a9cf3690c00570b0034e7b\",\n \"fff7fbece7f2d0d1e6a6bddb74a9cf3690c00570b0034e7b\",\n \"fff7fbece7f2d0d1e6a6bddb74a9cf3690c00570b0045a8d023858\"\n).map(colors);\n\nexport default ramp(scheme);\n","import colors from \"../colors\";\nimport ramp from \"../ramp\";\n\nexport var scheme = new Array(3).concat(\n \"e7e1efc994c7dd1c77\",\n \"f1eef6d7b5d8df65b0ce1256\",\n \"f1eef6d7b5d8df65b0dd1c77980043\",\n \"f1eef6d4b9dac994c7df65b0dd1c77980043\",\n \"f1eef6d4b9dac994c7df65b0e7298ace125691003f\",\n \"f7f4f9e7e1efd4b9dac994c7df65b0e7298ace125691003f\",\n \"f7f4f9e7e1efd4b9dac994c7df65b0e7298ace125698004367001f\"\n).map(colors);\n\nexport default ramp(scheme);\n","import colors from \"../colors\";\nimport ramp from \"../ramp\";\n\nexport var scheme = new Array(3).concat(\n \"fde0ddfa9fb5c51b8a\",\n \"feebe2fbb4b9f768a1ae017e\",\n \"feebe2fbb4b9f768a1c51b8a7a0177\",\n \"feebe2fcc5c0fa9fb5f768a1c51b8a7a0177\",\n \"feebe2fcc5c0fa9fb5f768a1dd3497ae017e7a0177\",\n \"fff7f3fde0ddfcc5c0fa9fb5f768a1dd3497ae017e7a0177\",\n \"fff7f3fde0ddfcc5c0fa9fb5f768a1dd3497ae017e7a017749006a\"\n).map(colors);\n\nexport default ramp(scheme);\n","import colors from \"../colors\";\nimport ramp from \"../ramp\";\n\nexport var scheme = new Array(3).concat(\n \"edf8b17fcdbb2c7fb8\",\n \"ffffcca1dab441b6c4225ea8\",\n \"ffffcca1dab441b6c42c7fb8253494\",\n \"ffffccc7e9b47fcdbb41b6c42c7fb8253494\",\n \"ffffccc7e9b47fcdbb41b6c41d91c0225ea80c2c84\",\n \"ffffd9edf8b1c7e9b47fcdbb41b6c41d91c0225ea80c2c84\",\n \"ffffd9edf8b1c7e9b47fcdbb41b6c41d91c0225ea8253494081d58\"\n).map(colors);\n\nexport default ramp(scheme);\n","import colors from \"../colors\";\nimport ramp from \"../ramp\";\n\nexport var scheme = new Array(3).concat(\n \"f7fcb9addd8e31a354\",\n \"ffffccc2e69978c679238443\",\n \"ffffccc2e69978c67931a354006837\",\n \"ffffccd9f0a3addd8e78c67931a354006837\",\n \"ffffccd9f0a3addd8e78c67941ab5d238443005a32\",\n \"ffffe5f7fcb9d9f0a3addd8e78c67941ab5d238443005a32\",\n \"ffffe5f7fcb9d9f0a3addd8e78c67941ab5d238443006837004529\"\n).map(colors);\n\nexport default ramp(scheme);\n","import colors from \"../colors\";\nimport ramp from \"../ramp\";\n\nexport var scheme = new Array(3).concat(\n \"fff7bcfec44fd95f0e\",\n \"ffffd4fed98efe9929cc4c02\",\n \"ffffd4fed98efe9929d95f0e993404\",\n \"ffffd4fee391fec44ffe9929d95f0e993404\",\n \"ffffd4fee391fec44ffe9929ec7014cc4c028c2d04\",\n \"ffffe5fff7bcfee391fec44ffe9929ec7014cc4c028c2d04\",\n \"ffffe5fff7bcfee391fec44ffe9929ec7014cc4c02993404662506\"\n).map(colors);\n\nexport default ramp(scheme);\n","import colors from \"../colors\";\nimport ramp from \"../ramp\";\n\nexport var scheme = new Array(3).concat(\n \"ffeda0feb24cf03b20\",\n \"ffffb2fecc5cfd8d3ce31a1c\",\n \"ffffb2fecc5cfd8d3cf03b20bd0026\",\n \"ffffb2fed976feb24cfd8d3cf03b20bd0026\",\n \"ffffb2fed976feb24cfd8d3cfc4e2ae31a1cb10026\",\n \"ffffccffeda0fed976feb24cfd8d3cfc4e2ae31a1cb10026\",\n \"ffffccffeda0fed976feb24cfd8d3cfc4e2ae31a1cbd0026800026\"\n).map(colors);\n\nexport default ramp(scheme);\n","import colors from \"../colors\";\nimport ramp from \"../ramp\";\n\nexport var scheme = new Array(3).concat(\n \"deebf79ecae13182bd\",\n \"eff3ffbdd7e76baed62171b5\",\n \"eff3ffbdd7e76baed63182bd08519c\",\n \"eff3ffc6dbef9ecae16baed63182bd08519c\",\n \"eff3ffc6dbef9ecae16baed64292c62171b5084594\",\n \"f7fbffdeebf7c6dbef9ecae16baed64292c62171b5084594\",\n \"f7fbffdeebf7c6dbef9ecae16baed64292c62171b508519c08306b\"\n).map(colors);\n\nexport default ramp(scheme);\n","import colors from \"../colors\";\nimport ramp from \"../ramp\";\n\nexport var scheme = new Array(3).concat(\n \"e5f5e0a1d99b31a354\",\n \"edf8e9bae4b374c476238b45\",\n \"edf8e9bae4b374c47631a354006d2c\",\n \"edf8e9c7e9c0a1d99b74c47631a354006d2c\",\n \"edf8e9c7e9c0a1d99b74c47641ab5d238b45005a32\",\n \"f7fcf5e5f5e0c7e9c0a1d99b74c47641ab5d238b45005a32\",\n \"f7fcf5e5f5e0c7e9c0a1d99b74c47641ab5d238b45006d2c00441b\"\n).map(colors);\n\nexport default ramp(scheme);\n","import colors from \"../colors\";\nimport ramp from \"../ramp\";\n\nexport var scheme = new Array(3).concat(\n \"f0f0f0bdbdbd636363\",\n \"f7f7f7cccccc969696525252\",\n \"f7f7f7cccccc969696636363252525\",\n \"f7f7f7d9d9d9bdbdbd969696636363252525\",\n \"f7f7f7d9d9d9bdbdbd969696737373525252252525\",\n \"fffffff0f0f0d9d9d9bdbdbd969696737373525252252525\",\n \"fffffff0f0f0d9d9d9bdbdbd969696737373525252252525000000\"\n).map(colors);\n\nexport default ramp(scheme);\n","import colors from \"../colors\";\nimport ramp from \"../ramp\";\n\nexport var scheme = new Array(3).concat(\n \"efedf5bcbddc756bb1\",\n \"f2f0f7cbc9e29e9ac86a51a3\",\n \"f2f0f7cbc9e29e9ac8756bb154278f\",\n \"f2f0f7dadaebbcbddc9e9ac8756bb154278f\",\n \"f2f0f7dadaebbcbddc9e9ac8807dba6a51a34a1486\",\n \"fcfbfdefedf5dadaebbcbddc9e9ac8807dba6a51a34a1486\",\n \"fcfbfdefedf5dadaebbcbddc9e9ac8807dba6a51a354278f3f007d\"\n).map(colors);\n\nexport default ramp(scheme);\n","import colors from \"../colors\";\nimport ramp from \"../ramp\";\n\nexport var scheme = new Array(3).concat(\n \"fee0d2fc9272de2d26\",\n \"fee5d9fcae91fb6a4acb181d\",\n \"fee5d9fcae91fb6a4ade2d26a50f15\",\n \"fee5d9fcbba1fc9272fb6a4ade2d26a50f15\",\n \"fee5d9fcbba1fc9272fb6a4aef3b2ccb181d99000d\",\n \"fff5f0fee0d2fcbba1fc9272fb6a4aef3b2ccb181d99000d\",\n \"fff5f0fee0d2fcbba1fc9272fb6a4aef3b2ccb181da50f1567000d\"\n).map(colors);\n\nexport default ramp(scheme);\n","import colors from \"../colors\";\nimport ramp from \"../ramp\";\n\nexport var scheme = new Array(3).concat(\n \"fee6cefdae6be6550d\",\n \"feeddefdbe85fd8d3cd94701\",\n \"feeddefdbe85fd8d3ce6550da63603\",\n \"feeddefdd0a2fdae6bfd8d3ce6550da63603\",\n \"feeddefdd0a2fdae6bfd8d3cf16913d948018c2d04\",\n \"fff5ebfee6cefdd0a2fdae6bfd8d3cf16913d948018c2d04\",\n \"fff5ebfee6cefdd0a2fdae6bfd8d3cf16913d94801a636037f2704\"\n).map(colors);\n\nexport default ramp(scheme);\n","import {cubehelix} from \"d3-color\";\nimport {interpolateCubehelixLong} from \"d3-interpolate\";\n\nexport var warm = interpolateCubehelixLong(cubehelix(-100, 0.75, 0.35), cubehelix(80, 1.50, 0.8));\n\nexport var cool = interpolateCubehelixLong(cubehelix(260, 0.75, 0.35), cubehelix(80, 1.50, 0.8));\n\nvar c = cubehelix();\n\nexport default function(t) {\n if (t < 0 || t > 1) t -= Math.floor(t);\n var ts = Math.abs(t - 0.5);\n c.h = 360 * t - 100;\n c.s = 1.5 - 1.5 * ts;\n c.l = 0.8 - 0.9 * ts;\n return c + \"\";\n}\n","import {cubehelix} from \"d3-color\";\nimport {interpolateCubehelixLong} from \"d3-interpolate\";\n\nexport default interpolateCubehelixLong(cubehelix(300, 0.5, 0.0), cubehelix(-240, 0.5, 1.0));\n","import {rgb} from \"d3-color\";\n\nvar c = rgb(),\n pi_1_3 = Math.PI / 3,\n pi_2_3 = Math.PI * 2 / 3;\n\nexport default function(t) {\n var x;\n t = (0.5 - t) * Math.PI;\n c.r = 255 * (x = Math.sin(t)) * x;\n c.g = 255 * (x = Math.sin(t + pi_1_3)) * x;\n c.b = 255 * (x = Math.sin(t + pi_2_3)) * x;\n return c + \"\";\n}\n","import colors from \"../colors\";\n\nfunction ramp(range) {\n var n = range.length;\n return function(t) {\n return range[Math.max(0, Math.min(n - 1, Math.floor(t * n)))];\n };\n}\n\nexport default ramp(colors(\"44015444025645045745055946075a46085c460a5d460b5e470d60470e6147106347116447136548146748166848176948186a481a6c481b6d481c6e481d6f481f70482071482173482374482475482576482677482878482979472a7a472c7a472d7b472e7c472f7d46307e46327e46337f463480453581453781453882443983443a83443b84433d84433e85423f854240864241864142874144874045884046883f47883f48893e49893e4a893e4c8a3d4d8a3d4e8a3c4f8a3c508b3b518b3b528b3a538b3a548c39558c39568c38588c38598c375a8c375b8d365c8d365d8d355e8d355f8d34608d34618d33628d33638d32648e32658e31668e31678e31688e30698e306a8e2f6b8e2f6c8e2e6d8e2e6e8e2e6f8e2d708e2d718e2c718e2c728e2c738e2b748e2b758e2a768e2a778e2a788e29798e297a8e297b8e287c8e287d8e277e8e277f8e27808e26818e26828e26828e25838e25848e25858e24868e24878e23888e23898e238a8d228b8d228c8d228d8d218e8d218f8d21908d21918c20928c20928c20938c1f948c1f958b1f968b1f978b1f988b1f998a1f9a8a1e9b8a1e9c891e9d891f9e891f9f881fa0881fa1881fa1871fa28720a38620a48621a58521a68522a78522a88423a98324aa8325ab8225ac8226ad8127ad8128ae8029af7f2ab07f2cb17e2db27d2eb37c2fb47c31b57b32b67a34b67935b77937b87838b9773aba763bbb753dbc743fbc7340bd7242be7144bf7046c06f48c16e4ac16d4cc26c4ec36b50c46a52c56954c56856c66758c7655ac8645cc8635ec96260ca6063cb5f65cb5e67cc5c69cd5b6ccd5a6ece5870cf5773d05675d05477d1537ad1517cd2507fd34e81d34d84d44b86d54989d5488bd6468ed64590d74393d74195d84098d83e9bd93c9dd93ba0da39a2da37a5db36a8db34aadc32addc30b0dd2fb2dd2db5de2bb8de29bade28bddf26c0df25c2df23c5e021c8e020cae11fcde11dd0e11cd2e21bd5e21ad8e219dae319dde318dfe318e2e418e5e419e7e419eae51aece51befe51cf1e51df4e61ef6e620f8e621fbe723fde725\"));\n\nexport var magma = ramp(colors(\"00000401000501010601010802010902020b02020d03030f03031204041405041606051806051a07061c08071e0907200a08220b09240c09260d0a290e0b2b100b2d110c2f120d31130d34140e36150e38160f3b180f3d19103f1a10421c10441d11471e114920114b21114e22115024125325125527125829115a2a115c2c115f2d11612f116331116533106734106936106b38106c390f6e3b0f703d0f713f0f72400f74420f75440f764510774710784910784a10794c117a4e117b4f127b51127c52137c54137d56147d57157e59157e5a167e5c167f5d177f5f187f601880621980641a80651a80671b80681c816a1c816b1d816d1d816e1e81701f81721f817320817521817621817822817922827b23827c23827e24828025828125818326818426818627818827818928818b29818c29818e2a81902a81912b81932b80942c80962c80982d80992d809b2e7f9c2e7f9e2f7fa02f7fa1307ea3307ea5317ea6317da8327daa337dab337cad347cae347bb0357bb2357bb3367ab5367ab73779b83779ba3878bc3978bd3977bf3a77c03a76c23b75c43c75c53c74c73d73c83e73ca3e72cc3f71cd4071cf4070d0416fd2426fd3436ed5446dd6456cd8456cd9466bdb476adc4869de4968df4a68e04c67e24d66e34e65e44f64e55064e75263e85362e95462ea5661eb5760ec5860ed5a5fee5b5eef5d5ef05f5ef1605df2625df2645cf3655cf4675cf4695cf56b5cf66c5cf66e5cf7705cf7725cf8745cf8765cf9785df9795df97b5dfa7d5efa7f5efa815ffb835ffb8560fb8761fc8961fc8a62fc8c63fc8e64fc9065fd9266fd9467fd9668fd9869fd9a6afd9b6bfe9d6cfe9f6dfea16efea36ffea571fea772fea973feaa74feac76feae77feb078feb27afeb47bfeb67cfeb77efeb97ffebb81febd82febf84fec185fec287fec488fec68afec88cfeca8dfecc8ffecd90fecf92fed194fed395fed597fed799fed89afdda9cfddc9efddea0fde0a1fde2a3fde3a5fde5a7fde7a9fde9aafdebacfcecaefceeb0fcf0b2fcf2b4fcf4b6fcf6b8fcf7b9fcf9bbfcfbbdfcfdbf\"));\n\nexport var inferno = ramp(colors(\"00000401000501010601010802010a02020c02020e03021004031204031405041706041907051b08051d09061f0a07220b07240c08260d08290e092b10092d110a30120a32140b34150b37160b39180c3c190c3e1b0c411c0c431e0c451f0c48210c4a230c4c240c4f260c51280b53290b552b0b572d0b592f0a5b310a5c320a5e340a5f3609613809623909633b09643d09653e0966400a67420a68440a68450a69470b6a490b6a4a0c6b4c0c6b4d0d6c4f0d6c510e6c520e6d540f6d550f6d57106e59106e5a116e5c126e5d126e5f136e61136e62146e64156e65156e67166e69166e6a176e6c186e6d186e6f196e71196e721a6e741a6e751b6e771c6d781c6d7a1d6d7c1d6d7d1e6d7f1e6c801f6c82206c84206b85216b87216b88226a8a226a8c23698d23698f24699025689225689326679526679727669827669a28659b29649d29649f2a63a02a63a22b62a32c61a52c60a62d60a82e5fa92e5eab2f5ead305dae305cb0315bb1325ab3325ab43359b63458b73557b93556ba3655bc3754bd3853bf3952c03a51c13a50c33b4fc43c4ec63d4dc73e4cc83f4bca404acb4149cc4248ce4347cf4446d04545d24644d34743d44842d54a41d74b3fd84c3ed94d3dda4e3cdb503bdd513ade5238df5337e05536e15635e25734e35933e45a31e55c30e65d2fe75e2ee8602de9612bea632aeb6429eb6628ec6726ed6925ee6a24ef6c23ef6e21f06f20f1711ff1731df2741cf3761bf37819f47918f57b17f57d15f67e14f68013f78212f78410f8850ff8870ef8890cf98b0bf98c0af98e09fa9008fa9207fa9407fb9606fb9706fb9906fb9b06fb9d07fc9f07fca108fca309fca50afca60cfca80dfcaa0ffcac11fcae12fcb014fcb216fcb418fbb61afbb81dfbba1ffbbc21fbbe23fac026fac228fac42afac62df9c72ff9c932f9cb35f8cd37f8cf3af7d13df7d340f6d543f6d746f5d949f5db4cf4dd4ff4df53f4e156f3e35af3e55df2e661f2e865f2ea69f1ec6df1ed71f1ef75f1f179f2f27df2f482f3f586f3f68af4f88ef5f992f6fa96f8fb9af9fc9dfafda1fcffa4\"));\n\nexport var plasma = ramp(colors(\"0d088710078813078916078a19068c1b068d1d068e20068f2206902406912605912805922a05932c05942e05952f059631059733059735049837049938049a3a049a3c049b3e049c3f049c41049d43039e44039e46039f48039f4903a04b03a14c02a14e02a25002a25102a35302a35502a45601a45801a45901a55b01a55c01a65e01a66001a66100a76300a76400a76600a76700a86900a86a00a86c00a86e00a86f00a87100a87201a87401a87501a87701a87801a87a02a87b02a87d03a87e03a88004a88104a78305a78405a78606a68707a68808a68a09a58b0aa58d0ba58e0ca48f0da4910ea3920fa39410a29511a19613a19814a099159f9a169f9c179e9d189d9e199da01a9ca11b9ba21d9aa31e9aa51f99a62098a72197a82296aa2395ab2494ac2694ad2793ae2892b02991b12a90b22b8fb32c8eb42e8db52f8cb6308bb7318ab83289ba3388bb3488bc3587bd3786be3885bf3984c03a83c13b82c23c81c33d80c43e7fc5407ec6417dc7427cc8437bc9447aca457acb4679cc4778cc4977cd4a76ce4b75cf4c74d04d73d14e72d24f71d35171d45270d5536fd5546ed6556dd7566cd8576bd9586ada5a6ada5b69db5c68dc5d67dd5e66de5f65de6164df6263e06363e16462e26561e26660e3685fe4695ee56a5de56b5de66c5ce76e5be76f5ae87059e97158e97257ea7457eb7556eb7655ec7754ed7953ed7a52ee7b51ef7c51ef7e50f07f4ff0804ef1814df1834cf2844bf3854bf3874af48849f48948f58b47f58c46f68d45f68f44f79044f79143f79342f89441f89540f9973ff9983ef99a3efa9b3dfa9c3cfa9e3bfb9f3afba139fba238fca338fca537fca636fca835fca934fdab33fdac33fdae32fdaf31fdb130fdb22ffdb42ffdb52efeb72dfeb82cfeba2cfebb2bfebd2afebe2afec029fdc229fdc328fdc527fdc627fdc827fdca26fdcb26fccd25fcce25fcd025fcd225fbd324fbd524fbd724fad824fada24f9dc24f9dd25f8df25f8e125f7e225f7e425f6e626f6e826f5e926f5eb27f4ed27f3ee27f3f027f2f227f1f426f1f525f0f724f0f921\"));\n","import {interpolateMagma, interpolateCool, interpolateRdYlGn} from 'd3-scale-chromatic'\r\nimport {getZoneNumbers, getZoneCount} from '@helpers/zone-map'\r\n\r\nimport colorDefinitions from '@frs/map-styles/basic-fertilization/colors'\r\nimport * as mapStyles from '@frs/map-styles/maps'\r\nimport {phbbValueColorFunctions} from '@frs/map-styles/phbb/phbb-colors'\r\nimport {interpolateRegularGradient} from '@helpers/color'\r\nimport parse from 'wellknown'\r\nimport {format} from 'src/js/i18n/conversion'\r\n\r\nexport const lufaRanges = {\r\n ph: [0, 250],\r\n phosphorus: [0, 250],\r\n potassium: [0, 250],\r\n magnesium: [0, 250]\r\n}\r\n\r\nexport const absoluteRange = [0, 250]\r\n\r\nexport const categoryNutrientMapping = {\r\n BasicFertilization_Magnesium: 'magnesium',\r\n BasicFertilization_Potassium: 'potassium',\r\n BasicFertilization_Phosphorus: 'phosphorus',\r\n BasicFertilization_pH: 'ph' // TODO verify correctness of enum member\r\n}\r\n\r\nexport const getMapMetrics = map => {\r\n if (!map) return\r\n\r\n const values = map.zones !== undefined ? map.zones.map(zone => zone.value === undefined ? zone.number : zone.value) : []\r\n const valueRange = [Math.min(...values), Math.max(...values)]\r\n\r\n const zoneNumbers = getZoneNumbers(map)\r\n const zoneCount = getZoneCount(map)\r\n\r\n const zoneMidpoints = map.zones.map((zone, i) => {\r\n const thresholds = map.metaData ? map.metaData.classificationThresholds : null\r\n if (!thresholds || !thresholds.length) return null\r\n\r\n const number = zoneNumbers[i]\r\n const lowerBound = thresholds[thresholds.length - number - 1]\r\n const upperBound = thresholds[thresholds.length - number]\r\n return (Math.max(lowerBound, -1) + Math.min(upperBound, 1)) / 2\r\n })\r\n\r\n return {\r\n values,\r\n valueRange,\r\n zoneNumbers,\r\n zoneCount,\r\n zoneMidpoints\r\n }\r\n}\r\n\r\nexport function mapToColors (map, colorScheme) {\r\n switch (colorScheme) {\r\n case 'absolute': {\r\n return map.zones.map(zone => colorFunctions.absolute(zone.value, absoluteRange))\r\n }\r\n case 'relative': {\r\n const {valueRange} = getMapMetrics(map)\r\n\r\n return map.zones.map(zone => colorFunctions.relative(zone.value === undefined ? zone.number : zone.value, valueRange))\r\n }\r\n case 'lufa': {\r\n const nutrient = categoryNutrientMapping[map.category]\r\n\r\n return map.zones.map(zone => colorFunctions.lufa(zone.value, nutrient))\r\n }\r\n case 'agrosat': {\r\n const {zoneCount, zoneNumbers} = getMapMetrics(map)\r\n\r\n return map.zones.map((zone, i) => colorFunctions.agrosat(zoneNumbers[i], zoneCount))\r\n }\r\n case 'pastel': {\r\n const {zoneCount, zoneNumbers} = getMapMetrics(map)\r\n\r\n return map.zones.map((zone, i) => colorFunctions.pastel(zoneNumbers[i], zoneCount))\r\n }\r\n case 'autoZoneMapDebug': {\r\n const {zoneMidpoints} = getMapMetrics(map)\r\n\r\n return map.zones.map((zone, i) => colorFunctions.autoZoneMapDebug(zoneMidpoints[i]))\r\n }\r\n }\r\n}\r\n\r\nexport function mapToColorLookup (map, colorScheme) {\r\n const zoneColors = mapToColors(map, colorScheme)\r\n\r\n const lookup = {}\r\n\r\n map.zones.forEach((zone, index) => {\r\n lookup[zone.id] = zoneColors[index]\r\n })\r\n\r\n return lookup\r\n}\r\n\r\nexport function mapToGeoJsonFeatures (map, colorScheme) {\r\n if (!map || map.zones === undefined) return []\r\n\r\n const {zoneNumbers, valueRange, zoneCount, zoneMidpoints} = getMapMetrics(map)\r\n return map.zones !== undefined ? map.zones.map((zone, i) => ({\r\n type: 'Feature',\r\n geometry: parse(zone.geometry),\r\n properties: {\r\n zoneMapId: map.id,\r\n zoneId: zone.id,\r\n zoneNumber: zoneNumbers[i],\r\n zoneCount,\r\n value: map.category === 'LimeApplicationMap' ? format(zone.value, 'f0') : zone.value,\r\n valueRange: colorScheme === 'absolute' ? absoluteRange : valueRange,\r\n nutrient: categoryNutrientMapping[map.category],\r\n zoneMidpoint: zoneMidpoints[i]\r\n }\r\n })) : []\r\n}\r\n\r\nexport function mapToStyle (map, colorScheme) {\r\n return mapStyles[colorScheme]\r\n}\r\n\r\nexport function getStyle (colorScheme) {\r\n return mapStyles[colorScheme]\r\n}\r\n\r\nconst normalize = (value, [min, max]) => min < max\r\n ? Math.max(0, Math.min(1, (value - min) / (max - min)))\r\n : 0.5\r\n\r\nexport const colorFunctions = {\r\n absolute: (value, range) => interpolateMagma(normalize(value, range)),\r\n relative: (value, range) => interpolateCool(normalize(value, range)),\r\n // NOTE only works for odd zoneCount\r\n agrosat (zoneNumber, zoneCount) {\r\n if (!zoneNumber) return colorDefinitions.managementZoneMap[1][0]\r\n\r\n const N = zoneCount\r\n\r\n const colorMapZoneCount = N + (N % 2 ? 0 : 1)\r\n\r\n const colorIndex = N % 2 === 0 && zoneNumber > N / 2\r\n ? zoneNumber\r\n : zoneNumber - 1\r\n\r\n return colorDefinitions.managementZoneMap[colorMapZoneCount][colorIndex] || '#ff00ff'\r\n },\r\n pastel (zoneNumber, zoneCount) {\r\n const t = normalize(zoneNumber, [1, zoneCount])\r\n return interpolateRegularGradient(colorDefinitions.pastel, t)\r\n },\r\n lufa (value, nutrient) {\r\n const range = lufaRanges[nutrient]\r\n const baseColor = colorDefinitions.nutrientBaseColors[nutrient] // maybe get from nutrient\r\n const colors = ['#fff', baseColor]\r\n\r\n return colorFunctions.linear(value, range, colors)\r\n },\r\n linear (value, range = [0, 1], colors = ['#000', '#fff']) {\r\n return interpolateRegularGradient(colors, normalize(value, range))\r\n },\r\n autoZoneMapDebug (value) {\r\n return interpolateRdYlGn((value + 1) / 2)\r\n },\r\n phbb (value, index, zoneCount, category) {\r\n switch (category) {\r\n case 'caOApplicationMap':\r\n return phbbValueColorFunctions.getLinearValuesColor(index, zoneCount, ['#D5DDFF', '#010E47'], '#DBDBDB')\r\n case 'caORequiredNutrient':\r\n return phbbValueColorFunctions.getLinearValuesColor(index, zoneCount, ['#D5DDFF', '#010E47'], '#DBDBDB')\r\n case 'LimeApplicationMap':\r\n return phbbValueColorFunctions.getLinearValuesColor(index, zoneCount, ['#FFD5DD', '#47010E'], '#DBDBDB')\r\n case 'sand':\r\n case 'silt':\r\n case 'clayContent':\r\n return phbbValueColorFunctions.getLinearValuesColor(index, zoneCount, ['#FFFFE5', '#662506'], '#DBDBDB')\r\n case 'humusContent':\r\n return phbbValueColorFunctions.getHumusColor(value)\r\n case 'pH':\r\n return phbbValueColorFunctions.getPhColor(value)\r\n case 'phClassNutrientMap':\r\n return phbbValueColorFunctions.getPhClassColor(value)\r\n case 'soilEstimation':\r\n return phbbValueColorFunctions.getSoilEstimationColor(value)\r\n case 'soilGroup':\r\n return phbbValueColorFunctions.getSoilGroupColor(Number(value))\r\n default:\r\n throw Error(`map category ${category} not supported`)\r\n }\r\n }\r\n}\r\n","export default {\r\n probingGeometry: {\r\n active: 'rgb(30, 60, 245)',\r\n // point planning\r\n inactive: 'rgb(74, 71, 68)',\r\n new: 'rgb(85,57,243)',\r\n deleted: 'rgb(205, 50, 68)',\r\n // result preview\r\n hasResult: 'rgb(85,57,243)',\r\n open: 'rgb(74, 71, 68)'\r\n },\r\n classification: {\r\n A: 'rgb(149, 245, 249)',\r\n B: 'rgb(255, 255, 0)',\r\n C: 'rgb(85, 255, 0)',\r\n D: 'rgb(255, 170, 0)',\r\n E: 'rgb(255, 0, 0)',\r\n F: 'rgb(255, 0, 255)'\r\n },\r\n nutrientBaseColors: {\r\n 'ph': '#0000ff',\r\n 'phosphorus': '#00ff00',\r\n 'potassium': '#ff0000',\r\n 'magnesium': '#f0f000'\r\n },\r\n managementZoneMap: {\r\n 1: ['#00FF00'],\r\n 3: ['#FF0000', '#00DC00', '#0000FF'],\r\n 5: ['#FF0000', '#FFFF00', '#00DC00', '#00FFFF', '#0000FF'],\r\n 7: ['#FF0000', '#FF9600', '#FFFF00', '#00DC00', '#00FFFF', '#009BFF', '#0000FF'],\r\n 9: ['#FF0000', '#FF9600', '#FFFF00', '#8CDC00', '#00DC00', '#00A500', '#00FFFF', '#009B9B', '#0000FF'],\r\n 11: ['#FF0000', '#FF9600', '#FFFF00', '#A0DC00', '#8CDC00', '#00DC00', '#00A500', '#00A58C', '#00FFFF', '#009B9B', '#0000FF'],\r\n 13: ['#FF0000', '#FF9600', '#FFFF00', '#C8DC00', '#A0DC00', '#8CDC00', '#00DC00', '#00A500', '#00A078', '#00A58C', '#00FFFF', '#009B9B', '#0000FF']\r\n },\r\n pastel: ['#FF6C65', '#fdfd96', '#cafd96', '#aad5fe', '#035fba']\r\n}\r\n","import {toObject} from './reducers'\r\n\r\nexport const map = (obj, f) => Object.keys(obj)\r\n .map(key => [key, f(obj[key], key, obj)])\r\n .reduce(toObject, {})\r\n\r\nexport const filter = (obj, f) => Object.keys(obj)\r\n .map(key => [obj[key], key, obj])\r\n .filter(args => (f instanceof Function ? f : (value, key) => key in f)(...args))\r\n .map(([value, key]) => [key, value])\r\n .reduce(toObject, {})\r\n\r\nexport const invert = (obj) => Object.keys(obj)\r\n .map(key => [obj[key], key])\r\n .reduce(toObject, {})\r\n","export const getZoneNumbers = map => {\r\n return map.zones !== undefined ? map.zones.map((zone, i) => zone.number || (zone.name ? Number(zone.name) : (i + 1))) : []\r\n}\r\n\r\nexport function getZoneCount (map) {\r\n const zoneNumbers = getZoneNumbers(map)\r\n\r\n // NOTE countOfClasses or intendedZoneCount exists only for a subset of zoneMaps\r\n const zoneCountV1 = map.metaData && map.metaData.countOfClasses\r\n const zoneCountV2 = map.metaData && map.metaData.algorithmSummary && map.metaData.algorithmSummary.intendedZoneCount\r\n const zoneCountFallback = Math.max(...zoneNumbers)\r\n\r\n return zoneCountV1 || zoneCountV2 || zoneCountFallback\r\n}\r\n","'use strict';\nvar toInteger = require('./_to-integer');\nvar defined = require('./_defined');\n\nmodule.exports = function repeat(count) {\n var str = String(defined(this));\n var res = '';\n var n = toInteger(count);\n if (n < 0 || n == Infinity) throw RangeError(\"Count can't be negative\");\n for (;n > 0; (n >>>= 1) && (str += str)) if (n & 1) res += str;\n return res;\n};\n","import {colorFunctions} from '@helpers/map-color-schemes'\r\n\r\nconst defaultColor = '#fff'\r\n\r\nconst getHumusColor = value => {\r\n switch (true) {\r\n case value < 1 : return '#FFFF73'\r\n case value < 2 : return '#FEFDC0'\r\n case value < 3 : return '#FFC780'\r\n case value < 4 : return '#FEAA00'\r\n case value < 8 : return '#A87000'\r\n case value < 15 : return '#734D00'\r\n case value < 30: return '#403200'\r\n case value >= 30: return '#737300'\r\n default: return defaultColor\r\n }\r\n}\r\n\r\nconst getPhColor = value => {\r\n switch (true) {\r\n case value < 3.5 : return '#FF2900'\r\n case value < 4 : return '#FF4A08'\r\n case value < 4.5 : return '#FF7310'\r\n case value < 5 : return '#FF9C18'\r\n case value < 5.5 : return '#FFDE20'\r\n case value < 6 : return '#E6EE31'\r\n case value < 6.5 : return '#9CBD41'\r\n case value < 7 : return '#5A835A'\r\n case value < 7.5 : return '#39526A'\r\n case value < 8 : return '#29416A'\r\n case value < 8.5 : return '#183173'\r\n default: return '#08187B'\r\n }\r\n}\r\n\r\nconst getPhClassColor = value => {\r\n switch (value) {\r\n case 'A': return '#2a1c7e'\r\n case 'B': return '#169b3e'\r\n case 'C': return '#f9ea1f'\r\n case 'D': return '#f7aa10'\r\n case 'E': return '#e64415'\r\n default: return defaultColor\r\n }\r\n}\r\n\r\nconst getSoilEstimationColor = value => {\r\n switch (value) {\r\n case 'S': return '#ffff00'\r\n case 'Sl': return '#ffffa6'\r\n case 'lS': return '#ffcc00'\r\n case 'SL': return '#ffd47a'\r\n case 'sL': return '#ccb31a'\r\n case 'L': return '#bf801a'\r\n case 'LT': return '#d9d9d9'\r\n case 'T': return '#808080'\r\n default: return defaultColor\r\n }\r\n}\r\n\r\nconst getSoilGroupColor = value => {\r\n switch (value) {\r\n case 1: return '#FDF8CD' // S\r\n case 2: return '#F5E70B' // l'S\r\n case 3: return '#D0B473' // lS\r\n case 4: return '#E9A803' // sL/ul\r\n case 5: return '#C55552' // tL/T\r\n case 6: return '#187802' // Mo\r\n default: return defaultColor\r\n }\r\n}\r\n\r\nconst getLinearValuesColor = (zoneNumber, zoneCount, colors, nullValueColor) => {\r\n if (zoneNumber !== undefined && zoneCount !== undefined) {\r\n return colorFunctions.linear(zoneNumber, [0, zoneCount], colors)\r\n } else {\r\n return nullValueColor\r\n }\r\n}\r\nconst getValueFromFeature = feature => {\r\n let {value} = feature.getProperties()\r\n if (isNaN(value)) {\r\n throw Error('value is not a number')\r\n }\r\n return Number(value)\r\n}\r\n\r\nexport const phbbValueColorFunctions = {\r\n getHumusColor,\r\n getPhColor,\r\n getPhClassColor,\r\n getSoilEstimationColor,\r\n getSoilGroupColor,\r\n getLinearValuesColor\r\n}\r\n\r\nconst clayColorFunction = feature => {\r\n const {zone: zoneNumber, zoneCount} = feature.getProperties()\r\n let colors = ['#FFFFE5', '#662506']\r\n let nullValueColor = '#DBDBDB'\r\n return getLinearValuesColor(zoneNumber, zoneCount, colors, nullValueColor)\r\n}\r\n\r\nexport const phbbFeatureColorFunctions = {\r\n caOApplicationMap: feature => {\r\n const {zone: zoneNumber, zoneCount} = feature.getProperties()\r\n const colors = ['#D5DDFF', '#010E47']\r\n const nullValueColor = '#DBDBDB'\r\n return getLinearValuesColor(zoneNumber, zoneCount, colors, nullValueColor)\r\n },\r\n caORequiredNutrient: feature => {\r\n const {zone: zoneNumber, zoneCount} = feature.getProperties()\r\n const colors = ['#D5DDFF', '#010E47']\r\n const nullValueColor = '#DBDBDB'\r\n return getLinearValuesColor(zoneNumber, zoneCount, colors, nullValueColor)\r\n },\r\n LimeApplicationMap: feature => {\r\n const {zone: zoneNumber, zoneCount} = feature.getProperties()\r\n const colors = ['#FFD5DD', '#47010E']\r\n const nullValueColor = '#DBDBDB'\r\n return getLinearValuesColor(zoneNumber, zoneCount, colors, nullValueColor)\r\n },\r\n clayContent: clayColorFunction,\r\n sand: clayColorFunction,\r\n silt: clayColorFunction,\r\n humusContent: feature => {\r\n const value = getValueFromFeature(feature)\r\n return getHumusColor(value)\r\n },\r\n pH: feature => {\r\n const value = getValueFromFeature(feature)\r\n return getPhColor(value)\r\n },\r\n phClassNutrientMap: feature => {\r\n const {value} = feature.getProperties()\r\n return getPhClassColor(value)\r\n },\r\n soilEstimation: feature => {\r\n const {value} = feature.getProperties()\r\n return getSoilEstimationColor(value)\r\n },\r\n soilGroup: feature => {\r\n const value = getValueFromFeature(feature)\r\n return getSoilGroupColor(value)\r\n },\r\n defaultLinear: feature => {\r\n const {zone: zoneNumber, zoneCount} = feature.getProperties()\r\n const colors = ['#ffff00', '#0000ff']\r\n const nullValueColor = '#DBDBDB'\r\n return getLinearValuesColor(zoneNumber, zoneCount, colors, nullValueColor)\r\n }\r\n}\r\n","import {modifierStack, setColor, setLabel} from '@helpers/openlayers/styles'\r\nimport {colorFunctions} from '@helpers/map-color-schemes'\r\nimport {zoneBase} from './base'\r\nimport {format} from 'src/js/i18n/conversion'\r\nimport {phbbFeatureColorFunctions} from './phbb/phbb-colors'\r\n\r\nconst setUniversalLabel = setLabel((feature) => {\r\n const {zoneNumber, value, unit, labelText, hideLabel, displayValue} = feature.getProperties()\r\n\r\n if (hideLabel) return ''\r\n if (labelText) return labelText\r\n\r\n if (zoneNumber !== undefined) {\r\n if (value !== undefined) {\r\n return unit\r\n ? `Zone ${zoneNumber}: ${format(value, 'f2')} ${unit}`\r\n : `Zone ${zoneNumber}: ${format(value, 'f2')}`\r\n } else {\r\n return `Zone ${zoneNumber}`\r\n }\r\n } else if (value !== undefined || displayValue !== undefined) {\r\n return unit\r\n ? `${format(value || displayValue, 'f2')} ${unit}`\r\n : `${format(value || displayValue, 'f2')}`\r\n } else {\r\n return 'ERROR'\r\n }\r\n})\r\n\r\nconst makeMapStyle = (featureColorFunction, opacity = 0.85) => modifierStack(zoneBase, [\r\n setColor(featureColorFunction, opacity),\r\n setUniversalLabel\r\n])\r\n\r\nexport const agrosat = makeMapStyle(feature => {\r\n const {zoneNumber, zoneCount} = feature.getProperties()\r\n\r\n return colorFunctions.agrosat(zoneNumber, zoneCount)\r\n})\r\n\r\nexport const pastel = makeMapStyle(feature => {\r\n const {zoneNumber, zoneCount} = feature.getProperties()\r\n\r\n return colorFunctions.pastel(zoneNumber, zoneCount)\r\n})\r\n\r\nexport const lufa = makeMapStyle(feature => {\r\n const {value, nutrient} = feature.getProperties()\r\n\r\n return colorFunctions.lufa(value, nutrient)\r\n})\r\n\r\nexport const relative = makeMapStyle(feature => {\r\n const {zoneNumber, zoneCount, value, valueRange} = feature.getProperties()\r\n\r\n if (value !== undefined && valueRange !== undefined) {\r\n return colorFunctions.relative(value, valueRange)\r\n } else if (zoneNumber !== undefined && zoneCount !== undefined) {\r\n return colorFunctions.relative(zoneNumber, [1, zoneCount])\r\n } else {\r\n return '#f0f'\r\n }\r\n})\r\n\r\nexport const absolute = makeMapStyle(feature => {\r\n const {value, valueRange} = feature.getProperties()\r\n\r\n return colorFunctions.absolute(value, valueRange)\r\n})\r\n\r\nexport const autoZoneMapDebug = makeMapStyle(feature => {\r\n const {zoneMidpoint} = feature.getProperties()\r\n\r\n return colorFunctions.autoZoneMapDebug(zoneMidpoint)\r\n})\r\n\r\nexport const phbb = (opacity, mapCategory) => {\r\n if (!phbbFeatureColorFunctions[mapCategory]) {\r\n console.error('no color function for this map category found, so the default is used')\r\n\r\n return makeMapStyle(phbbFeatureColorFunctions.defaultLinear, opacity)\r\n } else {\r\n return makeMapStyle(phbbFeatureColorFunctions[mapCategory], opacity)\r\n }\r\n}\r\n","import Text from 'ol/style/Text'\r\nimport Fill from 'ol/style/Fill'\r\nimport Stroke from 'ol/style/Stroke'\r\nimport {stripes} from './patterns'\r\n\r\nimport {readableTextColor, withAlpha} from '@helpers/color'\r\n\r\nexport const setLabel = textFunction => (style, feature, resolution) => {\r\n style.getText().setText(resolution < 50 ? textFunction(feature, resolution) || '' : '')\r\n}\r\n\r\nexport const setWidth = widthFunction => (style, feature, resolution) => {\r\n style.getStroke().setWidth(widthFunction(feature, resolution))\r\n}\r\n\r\nexport const setColor = (colorFunction, opacity = 1) => (style, feature, resolution) => {\r\n const color = colorFunction(feature, resolution)\r\n\r\n const strokeColor = color\r\n ? color.stroke || withAlpha(color, opacity)\r\n : 'rgba(0, 0, 0, 0)'\r\n\r\n const fillColor = color\r\n ? color.fill || withAlpha(color, 0.75 * opacity)\r\n : 'rgba(0, 0, 0, 0)'\r\n\r\n const text = style.getText()\r\n const stroke = style.getStroke()\r\n const fill = style.getFill()\r\n const image = style.getImage()\r\n\r\n if (text) {\r\n const textColor = color.textColor || strokeColor\r\n text.getStroke().setColor(textColor)\r\n text.getFill().setColor(readableTextColor(textColor))\r\n }\r\n if (stroke) {\r\n stroke.setColor(strokeColor)\r\n }\r\n if (fill) {\r\n fill.setColor(stroke ? fillColor : strokeColor)\r\n }\r\n if (image) {\r\n const imageStroke = image.getStroke()\r\n const imageFill = image.getFill()\r\n\r\n if (imageStroke) {\r\n imageStroke.setColor(strokeColor)\r\n }\r\n if (imageFill) {\r\n imageFill.setColor(imageStroke ? fillColor : strokeColor)\r\n }\r\n }\r\n}\r\n\r\nexport const modifierStack = (style, modifiers) => (feature, resolution) => {\r\n modifiers.forEach(f => f(style, feature, resolution))\r\n return style\r\n}\r\n\r\nexport const labelText = ({color = 'black', textColor = 'white', text = 'placeholder', font = '14px CalibreWeb', overflow = true} = {}) => new Text({\r\n textAlign: 'center',\r\n textBaseline: 'middle',\r\n text: text,\r\n font: font,\r\n fill: new Fill({\r\n color: textColor\r\n }),\r\n stroke: new Stroke({\r\n color,\r\n width: 3\r\n }),\r\n overflow: overflow\r\n // offsetX: 8,\r\n // offsetY: 3.5\r\n // rotation: -Math.PI / 12\r\n})\r\n\r\nexport const stripedFill = (stripeColor, backgroundColor) => new Fill({\r\n color: stripes(stripeColor, backgroundColor)\r\n})\r\n","import {DEVICE_PIXEL_RATIO} from 'ol/has'\r\n\r\nconst canvas = document.createElement('canvas')\r\nconst context = canvas.getContext('2d')\r\n\r\nexport const stripes = (stripeColor, backgroundColor, lineCount = 2) => {\r\n const pixelRatio = DEVICE_PIXEL_RATIO\r\n canvas.width = 12 * pixelRatio\r\n canvas.height = 12 * pixelRatio\r\n\r\n context.fillStyle = backgroundColor\r\n context.fillRect(0, 0, canvas.width, canvas.height)\r\n\r\n const line = (from, to) => {\r\n context.moveTo(...from)\r\n context.lineTo(...to)\r\n }\r\n\r\n context.lineWidth = 8 / lineCount\r\n context.lineCap = 'round'\r\n context.strokeStyle = stripeColor\r\n\r\n new Array(lineCount + 1).fill(null).forEach((x, i) => {\r\n const start = [i * canvas.width * 2 / lineCount - canvas.width * 2 / lineCount, 0]\r\n const end = [i * canvas.width * 2 / lineCount, canvas.height]\r\n line(start, end)\r\n })\r\n\r\n context.stroke()\r\n\r\n return context.createPattern(canvas, 'repeat')\r\n}\r\n\r\nexport const squareDots = (dotColor, backgroundColor, squareRatio = 0.5) => {\r\n const pixelRatio = DEVICE_PIXEL_RATIO\r\n canvas.width = 12 * pixelRatio\r\n canvas.height = 12 * pixelRatio\r\n\r\n context.fillStyle = backgroundColor\r\n context.fillRect(0, 0, canvas.width, canvas.height)\r\n\r\n context.fillStyle = dotColor\r\n context.fillRect(0, 0, canvas.width * squareRatio, canvas.height * squareRatio)\r\n\r\n return context.createPattern(canvas, 'repeat')\r\n}\r\n\r\nexport const dickbutt = () => {\r\n const img = document.createElement('img')\r\n img.src = 'https://s-media-cache-ak0.pinimg.com/236x/b4/18/17/b41817ac353b3a31279117b05700dde8--stuff-stuff-funny-stuff.jpg'\r\n return context.createPattern(img, 'repeat')\r\n}\r\n"],"sourceRoot":""}