@clickview/lite 0.57.2-rc.1 → 0.57.2-rc.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/bundles.json +2 -2
- package/dist/css/{3918-lite-9bd35b2c4c.chunk.css → 3918-lite-88ef54ffc6.chunk.css} +3 -1
- package/dist/css/{1057-lite-04173a371f.chunk.css → 8849-lite-1ad0b22428.chunk.css} +2 -1
- package/dist/css/{lite-app-5335e8e07a.css → lite-app-560655620c.css} +1 -1
- package/dist/languages/en.json +1 -1
- package/dist/scripts/1734-f5ffd39591-lite.chunk.js +2 -0
- package/dist/scripts/1734-f5ffd39591-lite.chunk.js.map +1 -0
- package/dist/scripts/2506-aee0b1f275-lite.chunk.js +2 -0
- package/dist/scripts/2506-aee0b1f275-lite.chunk.js.map +1 -0
- package/dist/scripts/{2564-df325ff9af-lite.chunk.js → 2564-98ba0d782a-lite.chunk.js} +3 -3
- package/dist/scripts/{2564-df325ff9af-lite.chunk.js.map → 2564-98ba0d782a-lite.chunk.js.map} +1 -1
- package/dist/scripts/2615-e9b2938c18-lite.chunk.js +3 -0
- package/dist/scripts/2615-e9b2938c18-lite.chunk.js.map +1 -0
- package/dist/scripts/2788-86687fd69d-lite.chunk.js +2 -0
- package/dist/scripts/2788-86687fd69d-lite.chunk.js.map +1 -0
- package/dist/scripts/2820-b3d1688da0-lite.chunk.js +2 -0
- package/dist/scripts/2820-b3d1688da0-lite.chunk.js.map +1 -0
- package/dist/scripts/2978-b7bcc3eac4-lite.chunk.js +2 -0
- package/dist/scripts/2978-b7bcc3eac4-lite.chunk.js.map +1 -0
- package/dist/scripts/3391-5e26ca5ece-lite.chunk.js +2 -0
- package/dist/scripts/3391-5e26ca5ece-lite.chunk.js.map +1 -0
- package/dist/scripts/{3667-f9f546136c-lite.chunk.js → 3667-149e98454c-lite.chunk.js} +3 -3
- package/dist/scripts/{3667-f9f546136c-lite.chunk.js.map → 3667-149e98454c-lite.chunk.js.map} +1 -1
- package/dist/scripts/3918-43b95cb315-lite.chunk.js +2 -0
- package/dist/scripts/3918-43b95cb315-lite.chunk.js.map +1 -0
- package/dist/scripts/4113-d6411052c4-lite.chunk.js +2 -0
- package/dist/scripts/4113-d6411052c4-lite.chunk.js.map +1 -0
- package/dist/scripts/4137-bef0be4a57-lite.chunk.js +3 -0
- package/dist/scripts/4137-bef0be4a57-lite.chunk.js.map +1 -0
- package/dist/scripts/4266-42463e0c33-lite.chunk.js +3 -0
- package/dist/scripts/4266-42463e0c33-lite.chunk.js.map +1 -0
- package/dist/scripts/5817-84b8e83c19-lite.chunk.js +3 -0
- package/dist/scripts/5817-84b8e83c19-lite.chunk.js.map +1 -0
- package/dist/scripts/{6433-ff27a3c867-lite.chunk.js → 6433-ad3992c23a-lite.chunk.js} +2 -2
- package/dist/scripts/{6433-ff27a3c867-lite.chunk.js.map → 6433-ad3992c23a-lite.chunk.js.map} +1 -1
- package/dist/scripts/7434-34137ad94a-lite.chunk.js +2 -0
- package/dist/scripts/7434-34137ad94a-lite.chunk.js.map +1 -0
- package/dist/scripts/{7556-79099a07fc-lite.chunk.js → 7556-69f8cb3b20-lite.chunk.js} +3 -3
- package/dist/scripts/7556-69f8cb3b20-lite.chunk.js.map +1 -0
- package/dist/scripts/{8095-777a5c5ddf-lite.chunk.js → 8095-afb976fac0-lite.chunk.js} +2 -2
- package/dist/scripts/8095-afb976fac0-lite.chunk.js.map +1 -0
- package/dist/scripts/839-f8478d27f8-lite.chunk.js +2 -0
- package/dist/scripts/839-f8478d27f8-lite.chunk.js.map +1 -0
- package/dist/scripts/8489-7779fd40b3-lite.chunk.js +3 -0
- package/dist/scripts/8489-7779fd40b3-lite.chunk.js.map +1 -0
- package/dist/scripts/8849-020bfd8cdd-lite.chunk.js +2 -0
- package/dist/scripts/8849-020bfd8cdd-lite.chunk.js.map +1 -0
- package/dist/scripts/bundle-fb8200eefd.min.js +3 -0
- package/dist/scripts/bundle-fb8200eefd.min.js.map +1 -0
- package/package.json +1 -1
- package/dist/scripts/1057-3c48d4553a-lite.chunk.js +0 -2
- package/dist/scripts/1057-3c48d4553a-lite.chunk.js.map +0 -1
- package/dist/scripts/1683-57c0175d4e-lite.chunk.js +0 -2
- package/dist/scripts/1683-57c0175d4e-lite.chunk.js.map +0 -1
- package/dist/scripts/1734-bbca52585c-lite.chunk.js +0 -2
- package/dist/scripts/1734-bbca52585c-lite.chunk.js.map +0 -1
- package/dist/scripts/232-278263e5f8-lite.chunk.js +0 -3
- package/dist/scripts/232-278263e5f8-lite.chunk.js.map +0 -1
- package/dist/scripts/2615-90d4cdd835-lite.chunk.js +0 -3
- package/dist/scripts/2615-90d4cdd835-lite.chunk.js.map +0 -1
- package/dist/scripts/2788-013bbba554-lite.chunk.js +0 -2
- package/dist/scripts/2788-013bbba554-lite.chunk.js.map +0 -1
- package/dist/scripts/312-2458059ebb-lite.chunk.js +0 -2
- package/dist/scripts/312-2458059ebb-lite.chunk.js.map +0 -1
- package/dist/scripts/3918-2855f0da2a-lite.chunk.js +0 -2
- package/dist/scripts/3918-2855f0da2a-lite.chunk.js.map +0 -1
- package/dist/scripts/4137-f0ac17da1f-lite.chunk.js +0 -3
- package/dist/scripts/4137-f0ac17da1f-lite.chunk.js.map +0 -1
- package/dist/scripts/4654-6fedfb863f-lite.chunk.js +0 -2
- package/dist/scripts/4654-6fedfb863f-lite.chunk.js.map +0 -1
- package/dist/scripts/5817-900efca702-lite.chunk.js +0 -3
- package/dist/scripts/5817-900efca702-lite.chunk.js.map +0 -1
- package/dist/scripts/7237-86c18f2701-lite.chunk.js +0 -2
- package/dist/scripts/7237-86c18f2701-lite.chunk.js.map +0 -1
- package/dist/scripts/7434-366d4ae5e0-lite.chunk.js +0 -2
- package/dist/scripts/7434-366d4ae5e0-lite.chunk.js.map +0 -1
- package/dist/scripts/7556-79099a07fc-lite.chunk.js.map +0 -1
- package/dist/scripts/8095-777a5c5ddf-lite.chunk.js.map +0 -1
- package/dist/scripts/839-889090dc50-lite.chunk.js +0 -2
- package/dist/scripts/839-889090dc50-lite.chunk.js.map +0 -1
- package/dist/scripts/8489-6e8c4dd60f-lite.chunk.js +0 -3
- package/dist/scripts/8489-6e8c4dd60f-lite.chunk.js.map +0 -1
- package/dist/scripts/897-399a877281-lite.chunk.js +0 -2
- package/dist/scripts/897-399a877281-lite.chunk.js.map +0 -1
- package/dist/scripts/9201-899c885914-lite.chunk.js +0 -2
- package/dist/scripts/9201-899c885914-lite.chunk.js.map +0 -1
- package/dist/scripts/bundle-33f2dc5e08.min.js +0 -3
- package/dist/scripts/bundle-33f2dc5e08.min.js.map +0 -1
- /package/dist/css/{1683-lite-bdd5b6edf8.chunk.css → 2506-lite-bdd5b6edf8.chunk.css} +0 -0
- /package/dist/css/{7237-lite-a8e87f096f.chunk.css → 2820-lite-a8e87f096f.chunk.css} +0 -0
- /package/dist/scripts/{2564-df325ff9af-lite.chunk.js.LICENSE.txt → 2564-98ba0d782a-lite.chunk.js.LICENSE.txt} +0 -0
- /package/dist/scripts/{2615-90d4cdd835-lite.chunk.js.LICENSE.txt → 2615-e9b2938c18-lite.chunk.js.LICENSE.txt} +0 -0
- /package/dist/scripts/{3667-f9f546136c-lite.chunk.js.LICENSE.txt → 3667-149e98454c-lite.chunk.js.LICENSE.txt} +0 -0
- /package/dist/scripts/{4137-f0ac17da1f-lite.chunk.js.LICENSE.txt → 4137-bef0be4a57-lite.chunk.js.LICENSE.txt} +0 -0
- /package/dist/scripts/{232-278263e5f8-lite.chunk.js.LICENSE.txt → 4266-42463e0c33-lite.chunk.js.LICENSE.txt} +0 -0
- /package/dist/scripts/{5817-900efca702-lite.chunk.js.LICENSE.txt → 5817-84b8e83c19-lite.chunk.js.LICENSE.txt} +0 -0
- /package/dist/scripts/{6433-ff27a3c867-lite.chunk.js.LICENSE.txt → 6433-ad3992c23a-lite.chunk.js.LICENSE.txt} +0 -0
- /package/dist/scripts/{7556-79099a07fc-lite.chunk.js.LICENSE.txt → 7556-69f8cb3b20-lite.chunk.js.LICENSE.txt} +0 -0
- /package/dist/scripts/{8489-6e8c4dd60f-lite.chunk.js.LICENSE.txt → 8489-7779fd40b3-lite.chunk.js.LICENSE.txt} +0 -0
- /package/dist/scripts/{bundle-33f2dc5e08.min.js.LICENSE.txt → bundle-fb8200eefd.min.js.LICENSE.txt} +0 -0
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"scripts/232-278263e5f8-lite.chunk.js","mappings":"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","sources":["file:///app/node_modules/chroma-js/chroma.js"],"sourcesContent":["/**\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.2';\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<xyz.length; i++) {\n xyz[i] = (xyz[i] || 0) * weights[0];\n cnt.push(isNaN(xyz[i]) ? 0 : weights[0]);\n if (mode.charAt(i) === 'h' && !isNaN(xyz[i])) {\n var A = xyz[i] / 180 * PI$1;\n dx += cos$2(A) * weights[0];\n dy += sin$1(A) * weights[0];\n }\n }\n\n var alpha = first.alpha() * weights[0];\n colors.forEach(function (c,ci) {\n var xyz2 = c.get(mode);\n alpha += c.alpha() * weights[ci+1];\n for (var i=0; i<xyz.length; i++) {\n if (!isNaN(xyz2[i])) {\n cnt[i] += weights[ci+1];\n if (mode.charAt(i) === 'h') {\n var A = xyz2[i] / 180 * PI$1;\n dx += cos$2(A) * weights[ci+1];\n dy += sin$1(A) * weights[ci+1];\n } else {\n xyz[i] += xyz2[i] * weights[ci+1];\n }\n }\n }\n });\n\n for (var i$1=0; i$1<xyz.length; i$1++) {\n if (mode.charAt(i$1) === 'h') {\n var A$1 = atan2$1(dy / cnt[i$1], dx / cnt[i$1]) / PI$1 * 180;\n while (A$1 < 0) { A$1 += 360; }\n while (A$1 >= 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<colors.length; c++) {\n colors[c] = chroma_1(colors[c]);\n }\n // auto-fill color position\n _pos.length = 0;\n for (var c$1=0; c$1<colors.length; c$1++) {\n _pos.push(c$1/(colors.length-1));\n }\n }\n resetCache();\n return _colors = colors;\n };\n\n var getClass = function(value) {\n if (_classes != null) {\n var n = _classes.length-1;\n var i = 0;\n while (i < n && value >= _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<k; c++) {\n _pos.push(c/(k-1));\n }\n if (domain.length > 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<num; i++) {\n limits.push(min+((i/num)*(max-min)));\n }\n limits.push(max);\n }\n\n else if (mode.substr(0,1) === 'l') { // log scale\n if (min <= 0) {\n throw new Error('Logarithmic scales are only possible for values > 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<num; i$1++) {\n limits.push(pow$7(10, min_log + ((i$1/num) * (max_log - min_log))));\n }\n limits.push(max);\n }\n\n else if (mode.substr(0,1) === 'q') { // quantile scale\n limits.push(min);\n for (var i$2=1; i$2<num; i$2++) {\n var p = ((values.length-1) * i$2)/num;\n var pb = floor$3(p);\n if (pb === p) {\n limits.push(values[pb]);\n } else { // p > 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<num; i$3++) {\n centroids.push(min + ((i$3/num) * (max-min)));\n }\n centroids.push(max);\n\n while (repeat) {\n // assignment step\n for (var j=0; j<num; j++) {\n clusterSizes[j] = 0;\n }\n for (var i$4=0; i$4<n; i$4++) {\n var value = values[i$4];\n var mindist = Number.MAX_VALUE;\n var best = (void 0);\n for (var j$1=0; j$1<num; j$1++) {\n var dist = abs(centroids[j$1]-value);\n if (dist < mindist) {\n mindist = dist;\n best = j$1;\n }\n clusterSizes[best]++;\n assignments[i$4] = best;\n }\n }\n\n // update centroids step\n var newCentroids = new Array(num);\n for (var j$2=0; j$2<num; j$2++) {\n newCentroids[j$2] = null;\n }\n for (var i$5=0; i$5<n; i$5++) {\n cluster = assignments[i$5];\n if (newCentroids[cluster] === null) {\n newCentroids[cluster] = values[i$5];\n } else {\n newCentroids[cluster] += values[i$5];\n }\n }\n for (var j$3=0; j$3<num; j$3++) {\n newCentroids[j$3] *= 1/clusterSizes[j$3];\n }\n\n // check convergence\n repeat = false;\n for (var j$4=0; j$4<num; j$4++) {\n if (newCentroids[j$4] !== centroids[j$4]) {\n repeat = true;\n break;\n }\n }\n\n centroids = newCentroids;\n nb_iters++;\n\n if (nb_iters > 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<num; j$5++) {\n kClusters[j$5] = [];\n }\n for (var i$6=0; i$6<n; i$6++) {\n cluster = assignments[i$6];\n kClusters[cluster].push(values[i$6]);\n }\n var tmpKMeansBreaks = [];\n for (var j$6=0; j$6<num; j$6++) {\n tmpKMeansBreaks.push(kClusters[j$6][0]);\n tmpKMeansBreaks.push(kClusters[j$6][kClusters[j$6].length-1]);\n }\n tmpKMeansBreaks = tmpKMeansBreaks.sort(function (a,b){ return a-b; });\n limits.push(tmpKMeansBreaks[0]);\n for (var i$7=1; i$7 < tmpKMeansBreaks.length; i$7+= 2) {\n var v = tmpKMeansBreaks[i$7];\n if (!isNaN(v) && (limits.indexOf(v) === -1)) {\n limits.push(v);\n }\n }\n }\n return limits;\n };\n\n var analyze_1 = {analyze: analyze, limits: limits};\n\n var contrast = function (a, b) {\n // WCAG contrast ratio\n // see http://www.w3.org/TR/2008/REC-WCAG20-20081211/#contrast-ratiodef\n a = new Color_1(a);\n b = new Color_1(b);\n var l1 = a.luminance();\n var l2 = b.luminance();\n return l1 > 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"],"names":["module","exports","limit","x","min","max","classToType","i","list","length","name","toLowerCase","type","obj","Object","prototype","toString","call","PI","Math","utils","clip_rgb","rgb","_clipped","_unclipped","slice","unpack","args","keyOrder","Array","split","filter","k","undefined","map","last","l","TWOPI","PITHIRD","DEG2RAD","RAD2DEG","input","format","autodetect","last$1","clip_rgb$1","type$1","Color","len","arguments","me","this","constructor","mode","sorted","sort","a","b","p","chk","test","apply","Error","_rgb","push","hex","join","Color_1","chroma","Function","bind","concat","version","chroma_1","unpack$1","rgb2cmyk_1","ref","r","g","f","unpack$2","cmyk2rgb_1","c","m","y","alpha","unpack$3","type$2","cmyk","unpack$4","last$2","rnd","round","hsl2css_1","hsla","unpack$5","rgb2hsl_1","s","h","Number","NaN","unpack$6","last$3","rgb2css_1","rgba","substr","unpack$7","round$1","hsl2rgb_1","assign","t3","t2","t1","h_","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_1","delta","_g","unpack$a","floor","hcg2rgb_1","assign$1","assign$2","assign$3","assign$4","assign$5","_c","q","t","v","unpack$b","type$4","hcg","unpack$c","last$4","round$3","rgb2hex_1","str","hxa","RE_HEX","RE_HEXA","hex2rgb_1","u","parseInt","u$1","type$5","indexOf","unpack$d","sqrt","acos","rgb2hsi_1","min_","unpack$e","limit$1","TWOPI$1","cos","hsi2rgb_1","isNaN","unpack$f","type$6","hsi","unpack$g","type$7","unpack$h","min$1","max$1","rgb2hsv","max_","unpack$i","floor$1","hsv2rgb_1","unpack$j","type$8","hsv","labConstants","unpack$k","pow","rgb_xyz","xyz_lab","rgb2xyz","rgb2lab_1","ref$1","unpack$l","pow$1","xyz_rgb","lab_xyz","lab2rgb_1","z","unpack$m","type$9","lab","unpack$n","sqrt$1","atan2","round$4","lab2lch_1","unpack$o","rgb2lch_1","b_","unpack$p","sin","cos$1","lch2lab_1","unpack$q","lch2rgb_1","L","unpack$r","hcl2rgb_1","hcl","reverse","unpack$s","type$a","lch","forEach","w3cx11_1","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","type$b","keys","n","unpack$t","rgb2num_1","type$c","type$d","num","unpack$u","type$e","round$5","log","temperature2rgb_1","kelvin","temp","unpack$v","round$6","rgb2temperature_1","minTemp","maxTemp","temperature","type$f","mutate","clipped","darken","amount","brighten","darker","brighter","get","mc","channel","src","type$g","pow$2","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","value","charAt","out","xyz0","xyz1","sqrt$2","pow$3","lrgb","x1","y1","z1","x2","y2","z2","_hsx","hue0","hue1","sat0","sat1","lbv0","lbv1","sat","hue","lch$1","c1","c2","clip_rgb$2","pow$4","sqrt$3","PI$1","cos$2","sin$1","atan2$1","_average_lrgb","colors","weights","xyz","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","tMapLightness","tMapDomain","getColor","val","bypassMap","getClass","classes","d","analyze","limits","domain","from","tOut","tBreaks","every","_m","range","_o","spread","correctLightness","L0","L1","pol","L_actual","L_ideal","L_diff","t0","padding","numColors","result","dm","dd","left","right","inclusive","ascending","end","__range__","samples","asc","cache","gamma","nodata","bezier","I","lab0","lab1","lab2","lab3","I0","I1","blend","bottom","top","blend_f","c0","each","normal","multiply","screen","overlay","lighten","dodge","burn","blend_1","type$k","clip_rgb$3","TWOPI$2","pow$6","sin$2","cos$3","floor$2","random","log$1","pow$7","floor$3","data","key","MAX_VALUE","sum","values","count","min_log","LOG10E","max_log","pb","pr","cluster","assignments","clusterSizes","repeat","nb_iters","centroids","j","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","sqrt$4","atan2$2","abs$1","cos$4","PI$2","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","average","reduce","w","first","shift","cnt","dx","dy","A","ci","xyz2","A$1","cubehelix","start","rotations","lightness","dl","dh","fract","amp","cos_a","sin_a","code","contrast","l1","l2","deltaE","C","a1","b1","L2","a2","b2","sl","sc","h1","c4","sh","delC","delA","delB","v1","v2","distance","sum_sq","valid","factory"],"sourceRoot":""}
|
|
@@ -1,3 +0,0 @@
|
|
|
1
|
-
/*! For license information please see 2615-90d4cdd835-lite.chunk.js.LICENSE.txt */
|
|
2
|
-
"use strict";(self.webpackChunk_clickview_lite=self.webpackChunk_clickview_lite||[]).push([[2615],{39157:(t,e,r)=>{r.d(e,{HI:()=>h,R6:()=>s,Rt:()=>d,UU:()=>f,Zs:()=>l,nq:()=>p});var n=r(75896),o=r(94892),i=r(28972),a=r(8246),c=r(83140),u=r(80845);function s(t,e){var r={markingRequired:[],lowScore:[],highScore:[],completed:[],notCompleted:[]},i=(0,u.Q)(t).length;e.students.forEach((function(e){var a=Object.assign(Object.assign({},e),{summary:d(t,e)});a.summary.awaitingMarking?r.markingRequired.push(a):n.m.last(e.results).attempts.length===i?(r.completed.push(a),a.summary.percentCorrect>=o.i.HIGH&&r.highScore.push(a),a.summary.percentCorrect<o.i.MODERATE&&r.lowScore.push(a)):r.notCompleted.push(a)}));var a=n.m.sortBy(r.lowScore,(function(t){return t.summary.percentCorrect})),c=n.m.sortBy(r.highScore,(function(t){return t.summary.percentCorrect})).reverse();return Object.assign(Object.assign({},r),{lowScore:a,highScore:c})}function l(t,e){return(0,u.Wn)(t).find((function(t){return t.id.toString()===e.toString()}))}function f(t){return"".concat(t.questionId,":").concat(t.resultId)}function h(t,e,r){var n=(0,u.j_)(e),o=(0,u.f6)(t,n);return(null==o?void 0:o.answers.every((function(t){var e;return(null===(e=r[f(t)])||void 0===e?void 0:e.status)===a.N.Correct})))?a.N.Correct:(null==o?void 0:o.answers.every((function(t){var e;return(null===(e=r[f(t)])||void 0===e?void 0:e.status)===a.N.Incorrect})))?a.N.Incorrect:void 0}function p(t,e){var r=e.students.length,n=0,o=0,a=0,s=0,l=0;return e.students.forEach((function(e){var r=(0,u.j_)(e);if(r){l+=e.results.length;var f=c.A.isInteractionCorrect(t,r);f===i.w.Correct&&n++,f===i.w.UnAnswered&&a++,f===i.w.AwaitingMarking&&s++,f!==i.w.UnAnswered&&o++}})),{percentCorrect:r>0?n/r:0,correct:n,answered:o,unanswered:a,awaitingMarking:s,attempts:l}}function d(t,e){var r=(0,u.j_)(e),n=(0,u.Q)(t),o=n.length,a=0,s=0;n.forEach((function(t){var e=c.A.isInteractionCorrect(t,r);e===i.w.Correct&&a++,e===i.w.AwaitingMarking&&s++}));var l=o>0?a/o:0,f=new Set(n.map((function(t){return t.id}))),h=r.attempts.filter((function(t){var e;return!!f.has(null===(e=null==t?void 0:t.answers[0])||void 0===e?void 0:e.questionId)})).length;return{answered:r.attempts.length,attempts:e.results.length,unanswered:o-h,percentCorrect:l,correct:a,awaitingMarking:s}}},32615:(t,e,r)=>{r.r(e),r.d(e,{InteractiveEditSuggestedResponse:()=>E});var n=r(32735),o=r(23481),i=r(44704),a=r(20354),c=r(39157),u=r(86572),s=r(9111),l=r(13876),f=r(83345),h=r(20768),p=r(69883);function d(t){return d="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},d(t)}function v(){v=function(){return e};var t,e={},r=Object.prototype,n=r.hasOwnProperty,o=Object.defineProperty||function(t,e,r){t[e]=r.value},i="function"==typeof Symbol?Symbol:{},a=i.iterator||"@@iterator",c=i.asyncIterator||"@@asyncIterator",u=i.toStringTag||"@@toStringTag";function s(t,e,r){return Object.defineProperty(t,e,{value:r,enumerable:!0,configurable:!0,writable:!0}),t[e]}try{s({},"")}catch(t){s=function(t,e,r){return t[e]=r}}function l(t,e,r,n){var i=e&&e.prototype instanceof w?e:w,a=Object.create(i.prototype),c=new N(n||[]);return o(a,"_invoke",{value:j(t,r,c)}),a}function f(t,e,r){try{return{type:"normal",arg:t.call(e,r)}}catch(t){return{type:"throw",arg:t}}}e.wrap=l;var h="suspendedStart",p="suspendedYield",y="executing",m="completed",g={};function w(){}function b(){}function E(){}var S={};s(S,a,(function(){return this}));var I=Object.getPrototypeOf,C=I&&I(I(M([])));C&&C!==r&&n.call(C,a)&&(S=C);var A=E.prototype=w.prototype=Object.create(S);function x(t){["next","throw","return"].forEach((function(e){s(t,e,(function(t){return this._invoke(e,t)}))}))}function k(t,e){function r(o,i,a,c){var u=f(t[o],t,i);if("throw"!==u.type){var s=u.arg,l=s.value;return l&&"object"==d(l)&&n.call(l,"__await")?e.resolve(l.__await).then((function(t){r("next",t,a,c)}),(function(t){r("throw",t,a,c)})):e.resolve(l).then((function(t){s.value=t,a(s)}),(function(t){return r("throw",t,a,c)}))}c(u.arg)}var i;o(this,"_invoke",{value:function(t,n){function o(){return new e((function(e,o){r(t,n,e,o)}))}return i=i?i.then(o,o):o()}})}function j(e,r,n){var o=h;return function(i,a){if(o===y)throw Error("Generator is already running");if(o===m){if("throw"===i)throw a;return{value:t,done:!0}}for(n.method=i,n.arg=a;;){var c=n.delegate;if(c){var u=L(c,n);if(u){if(u===g)continue;return u}}if("next"===n.method)n.sent=n._sent=n.arg;else if("throw"===n.method){if(o===h)throw o=m,n.arg;n.dispatchException(n.arg)}else"return"===n.method&&n.abrupt("return",n.arg);o=y;var s=f(e,r,n);if("normal"===s.type){if(o=n.done?m:p,s.arg===g)continue;return{value:s.arg,done:n.done}}"throw"===s.type&&(o=m,n.method="throw",n.arg=s.arg)}}}function L(e,r){var n=r.method,o=e.iterator[n];if(o===t)return r.delegate=null,"throw"===n&&e.iterator.return&&(r.method="return",r.arg=t,L(e,r),"throw"===r.method)||"return"!==n&&(r.method="throw",r.arg=new TypeError("The iterator does not provide a '"+n+"' method")),g;var i=f(o,e.iterator,r.arg);if("throw"===i.type)return r.method="throw",r.arg=i.arg,r.delegate=null,g;var a=i.arg;return a?a.done?(r[e.resultName]=a.value,r.next=e.nextLoc,"return"!==r.method&&(r.method="next",r.arg=t),r.delegate=null,g):a:(r.method="throw",r.arg=new TypeError("iterator result is not an object"),r.delegate=null,g)}function O(t){var e={tryLoc:t[0]};1 in t&&(e.catchLoc=t[1]),2 in t&&(e.finallyLoc=t[2],e.afterLoc=t[3]),this.tryEntries.push(e)}function _(t){var e=t.completion||{};e.type="normal",delete e.arg,t.completion=e}function N(t){this.tryEntries=[{tryLoc:"root"}],t.forEach(O,this),this.reset(!0)}function M(e){if(e||""===e){var r=e[a];if(r)return r.call(e);if("function"==typeof e.next)return e;if(!isNaN(e.length)){var o=-1,i=function r(){for(;++o<e.length;)if(n.call(e,o))return r.value=e[o],r.done=!1,r;return r.value=t,r.done=!0,r};return i.next=i}}throw new TypeError(d(e)+" is not iterable")}return b.prototype=E,o(A,"constructor",{value:E,configurable:!0}),o(E,"constructor",{value:b,configurable:!0}),b.displayName=s(E,u,"GeneratorFunction"),e.isGeneratorFunction=function(t){var e="function"==typeof t&&t.constructor;return!!e&&(e===b||"GeneratorFunction"===(e.displayName||e.name))},e.mark=function(t){return Object.setPrototypeOf?Object.setPrototypeOf(t,E):(t.__proto__=E,s(t,u,"GeneratorFunction")),t.prototype=Object.create(A),t},e.awrap=function(t){return{__await:t}},x(k.prototype),s(k.prototype,c,(function(){return this})),e.AsyncIterator=k,e.async=function(t,r,n,o,i){void 0===i&&(i=Promise);var a=new k(l(t,r,n,o),i);return e.isGeneratorFunction(r)?a:a.next().then((function(t){return t.done?t.value:a.next()}))},x(A),s(A,u,"Generator"),s(A,a,(function(){return this})),s(A,"toString",(function(){return"[object Generator]"})),e.keys=function(t){var e=Object(t),r=[];for(var n in e)r.push(n);return r.reverse(),function t(){for(;r.length;){var n=r.pop();if(n in e)return t.value=n,t.done=!1,t}return t.done=!0,t}},e.values=M,N.prototype={constructor:N,reset:function(e){if(this.prev=0,this.next=0,this.sent=this._sent=t,this.done=!1,this.delegate=null,this.method="next",this.arg=t,this.tryEntries.forEach(_),!e)for(var r in this)"t"===r.charAt(0)&&n.call(this,r)&&!isNaN(+r.slice(1))&&(this[r]=t)},stop:function(){this.done=!0;var t=this.tryEntries[0].completion;if("throw"===t.type)throw t.arg;return this.rval},dispatchException:function(e){if(this.done)throw e;var r=this;function o(n,o){return c.type="throw",c.arg=e,r.next=n,o&&(r.method="next",r.arg=t),!!o}for(var i=this.tryEntries.length-1;i>=0;--i){var a=this.tryEntries[i],c=a.completion;if("root"===a.tryLoc)return o("end");if(a.tryLoc<=this.prev){var u=n.call(a,"catchLoc"),s=n.call(a,"finallyLoc");if(u&&s){if(this.prev<a.catchLoc)return o(a.catchLoc,!0);if(this.prev<a.finallyLoc)return o(a.finallyLoc)}else if(u){if(this.prev<a.catchLoc)return o(a.catchLoc,!0)}else{if(!s)throw Error("try statement without catch or finally");if(this.prev<a.finallyLoc)return o(a.finallyLoc)}}}},abrupt:function(t,e){for(var r=this.tryEntries.length-1;r>=0;--r){var o=this.tryEntries[r];if(o.tryLoc<=this.prev&&n.call(o,"finallyLoc")&&this.prev<o.finallyLoc){var i=o;break}}i&&("break"===t||"continue"===t)&&i.tryLoc<=e&&e<=i.finallyLoc&&(i=null);var a=i?i.completion:{};return a.type=t,a.arg=e,i?(this.method="next",this.next=i.finallyLoc,g):this.complete(a)},complete:function(t,e){if("throw"===t.type)throw t.arg;return"break"===t.type||"continue"===t.type?this.next=t.arg:"return"===t.type?(this.rval=this.arg=t.arg,this.method="return",this.next="end"):"normal"===t.type&&e&&(this.next=e),g},finish:function(t){for(var e=this.tryEntries.length-1;e>=0;--e){var r=this.tryEntries[e];if(r.finallyLoc===t)return this.complete(r.completion,r.afterLoc),_(r),g}},catch:function(t){for(var e=this.tryEntries.length-1;e>=0;--e){var r=this.tryEntries[e];if(r.tryLoc===t){var n=r.completion;if("throw"===n.type){var o=n.arg;_(r)}return o}}throw Error("illegal catch attempt")},delegateYield:function(e,r,n){return this.delegate={iterator:M(e),resultName:r,nextLoc:n},"next"===this.method&&(this.arg=t),g}},e}function y(t,e){return function(t){if(Array.isArray(t))return t}(t)||function(t,e){var r=null==t?null:"undefined"!=typeof Symbol&&t[Symbol.iterator]||t["@@iterator"];if(null!=r){var n,o,i,a,c=[],u=!0,s=!1;try{if(i=(r=r.call(t)).next,0===e){if(Object(r)!==r)return;u=!1}else for(;!(u=(n=i.call(r)).done)&&(c.push(n.value),c.length!==e);u=!0);}catch(t){s=!0,o=t}finally{try{if(!u&&null!=r.return&&(a=r.return(),Object(a)!==a))return}finally{if(s)throw o}}return c}}(t,e)||function(t,e){if(t){if("string"==typeof t)return m(t,e);var r={}.toString.call(t).slice(8,-1);return"Object"===r&&t.constructor&&(r=t.constructor.name),"Map"===r||"Set"===r?Array.from(t):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?m(t,e):void 0}}(t,e)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function m(t,e){(null==e||e>t.length)&&(e=t.length);for(var r=0,n=Array(e);r<e;r++)n[r]=t[r];return n}var g=function(t,e,r,n){return new(r||(r=Promise))((function(o,i){function a(t){try{u(n.next(t))}catch(t){i(t)}}function c(t){try{u(n.throw(t))}catch(t){i(t)}}function u(t){var e;t.done?o(t.value):(e=t.value,e instanceof r?e:new r((function(t){t(e)}))).then(a,c)}u((n=n.apply(t,e||[])).next())}))},w="shared.interactiveEditSuggestedResponse",b=o.T.encloseNamespace(w);function E(t){var e,r,o=(0,p.Z)(),d=(0,i.useGetFetchAsync)(),m=y(n.useState(!1),2),E=m[0],S=m[1],I=a.a.useBasicFetch(h.b.interactiveMetadata(t.interactiveId)),C=a.a.useBasicFetch((null===(e=I.data)||void 0===e?void 0:e.interactiveId)&&h.b.interactive(I.data.interactiveId)),A=C.data&&(0,c.Zs)(C.data,t.interactionId),x=y(n.useState(null===(r=A.data)||void 0===r?void 0:r.suggestedResponse),2),k=x[0],j=x[1];return n.createElement(s.G,{title:b(k?"edit":"create"),closePopup:t.closePopup},n.createElement("div",{className:"mb-3"},n.createElement(u.y,{interaction:A})),n.createElement("label",{htmlFor:"suggestedResponse",className:"form-label"},n.createElement(f.x,{namespace:w,phrase:"label"}),":"),n.createElement("textarea",{id:"suggestedResponse",className:"form-control w-100 mb-3",placeholder:b("placeholder"),onChange:function(t){return j(t.target.value)},value:k,rows:4}),n.createElement(l.u,null,n.createElement(l.u.Cancel,{onClick:t.closePopup}),n.createElement(l.u.Submit,{variant:"dark",text:b("save"),onClick:function(){return g(this,void 0,void 0,v().mark((function e(){var r;return v().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return r=Object.assign(Object.assign({},A),{actionableItems:[{name:"Answer"}],data:{suggestedResponse:k}}),S(!0),e.prev=2,e.next=5,d(h.b.updateInteraction(r));case 5:o.success(b("suggestedResponseSuccess")),t.closePopup(),e.next=12;break;case 9:e.prev=9,e.t0=e.catch(2),o.error(b("suggestedResponseError"));case 12:return e.prev=12,S(!1),e.finish(12);case 15:case"end":return e.stop()}}),e,null,[[2,9,12,15]])})))},showSpinner:E})))}},94892:(t,e,r)=>{r.d(e,{i:()=>n});var n={HIGH:.75,MODERATE:.5}},28972:(t,e,r)=>{var n;r.d(e,{w:()=>n}),function(t){t[t.Correct=0]="Correct",t[t.Incorrect=1]="Incorrect",t[t.AwaitingMarking=2]="AwaitingMarking",t[t.Answered=3]="Answered",t[t.UnAnswered=4]="UnAnswered",t[t.NotApplicable=5]="NotApplicable"}(n||(n={}))},8246:(t,e,r)=>{var n;r.d(e,{N:()=>n}),function(t){t[t.Incorrect=0]="Incorrect",t[t.Correct=1]="Correct",t[t.PendingReview=2]="PendingReview"}(n||(n={}))},83140:(t,e,r)=>{r.d(e,{A:()=>v});var n=r(28972),o=r(8246),i=r(40424);function a(t){return a="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},a(t)}function c(t,e,r){return(e=function(t){var e=function(t,e){if("object"!=a(t)||!t)return t;var r=t[Symbol.toPrimitive];if(void 0!==r){var n=r.call(t,"string");if("object"!=a(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(t)}(t);return"symbol"==a(e)?e:e+""}(e))in t?Object.defineProperty(t,e,{value:r,enumerable:!0,configurable:!0,writable:!0}):t[e]=r,t}function u(){return n.w.NotApplicable}function s(t,e){var r=t.actionableItems.filter((function(t){return t.isCorrect}));return r.every((function(t){return!e(t.id)}))?n.w.UnAnswered:r.every((function(t){var r;return t.name.trim().toLowerCase()===(null===(r=e(t.id))||void 0===r?void 0:r.trim().toLowerCase())}))?n.w.Correct:n.w.Incorrect}function l(t,e){return t.actionableItems.every((function(t){return!e(t.id)}))?n.w.UnAnswered:t.actionableItems.filter((function(t){return t.isCorrect})).every((function(t){var r,n=e(t.id);return(null==n?void 0:n.toString())===(null===(r=t.id)||void 0===r?void 0:r.toString())||n===t.name}))?n.w.Correct:n.w.Incorrect}function f(t,e){return function(r){var n=e.attempts.find((function(e){return e.id===t.id}));return null==n?void 0:n.answers.find((function(t){return t.id===r}))}}function h(t,e){var r=f(t,e);return l(t,(function(t){var e=r(t);return null==e?void 0:e.text}))}function p(t,e){return function(t,e){var r;return t.actionableItems.forEach((function(t){var i=e(t.id);r=i?i.status!==o.N.Correct?i.status!==o.N.Incorrect?n.w.AwaitingMarking:n.w.Incorrect:n.w.Correct:n.w.UnAnswered})),r}(t,f(t,e))}var d=c(c(c(c(c(c(c({},i.Z9.Annotation,u),i.Z9.Image,u),i.Z9.MissingWord,(function(t,e){var r=f(t,e);return s(t,(function(t){var e=r(t);return null==e?void 0:e.text}))})),i.Z9.MultipleChoice,h),i.Z9.ShortAnswer,p),i.Z9.TrueOrFalse,h),i.Z9.Illustration,p),v={notApplicable:u,awaitingMarking:function(){return n.w.AwaitingMarking},isMissingWordCorrect:s,isMultipleChoiceCorrect:l,isInteractionCorrect:function(t,e){return(0,d[t.typeId])(t,e)}}},80845:(t,e,r)=>{r.d(e,{Q:()=>s,Wn:()=>a,f6:()=>u,j_:()=>c});var n=r(75896),o=r(40424);function i(t){return t.typeId!==o.Z9.Annotation&&t.typeId!==o.Z9.Image}function a(t){return n.m.flatten(t.timepoints.map((function(t){return t.interactions})))}function c(t){return n.m.last(t.results)}function u(t,e){return n.m.findWhere(null==e?void 0:e.attempts,{id:t})}function s(t){return a(t).filter(i)}}}]);
|
|
3
|
-
//# sourceMappingURL=2615-90d4cdd835-lite.chunk.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"scripts/2615-90d4cdd835-lite.chunk.js","mappings":";uPAqBM,SAAUA,EAAcC,EAA0BC,GACtD,IAAMC,EAAwB,CAC5BC,gBAAiB,GACjBC,SAAU,GACVC,UAAW,GACXC,UAAW,GACXC,aAAc,IAKVC,GAFe,OAAgBR,GAEAS,OAErCR,EAAQS,SAASC,SAAQ,SAAAC,GACvB,IAAMC,EAAc,OAAH,wBACZD,GAAC,CACJE,QAASC,EAAyBf,EAAaY,KAG7CC,EAAYC,QAAQE,gBACtBd,EAAOC,gBAAgBc,KAAKJ,GAI1B,SAAiBD,EAAEX,SAASiB,SAAST,SAAWD,GAClDN,EAAOI,UAAUW,KAAKJ,GAMpBA,EAAYC,QAAQK,gBAAkB,UACxCjB,EAAOG,UAAUY,KAAKJ,GAEpBA,EAAYC,QAAQK,eAAiB,cACvCjB,EAAOE,SAASa,KAAKJ,IARrBX,EAAOK,aAAaU,KAAKJ,EAS7B,IAEA,IAAMO,EAAiB,WAAmBlB,EAAOE,UAAU,SAAAQ,GAAC,OAAIA,EAAEE,QAAQK,cAAc,IAClFE,EAAkB,WAAmBnB,EAAOG,WAAW,SAAAO,GAAC,OAAIA,EAAEE,QAAQK,cAAc,IAAEG,UAE5F,OAAO,OAAP,wBACKpB,GAAM,CACTE,SAAUgB,EACVf,UAAWgB,GAEf,CAEM,SAAUE,EAAmBvB,EAA0BwB,GAE3D,OAD8B,QAAoBxB,GACrByB,MAAK,SAAAC,GAAC,OAAIA,EAAEC,GAAGC,aAAeJ,EAAcI,UAAU,GACrF,CAOM,SAAUC,EAAkBC,GAChC,MAAO,GAAP,OAAUA,EAAOC,WAAU,YAAID,EAAOE,SACxC,CAEM,SAAUC,EACdT,EACAU,EACAC,GAEA,IAAMC,GAAS,QAAiBF,GAC1BG,GAAkB,QAAkBb,EAAeY,GAMzD,OAJwBC,aAAe,EAAfA,EAAiBC,QAAQC,OAAM,SAAAC,SACrD,OAA0C,QAAnC,EAAAL,EAAcN,EAAkBW,WAAG,eAAEC,UAAW,WACzD,KAGS,aAEiBJ,aAAe,EAAfA,EAAiBC,QAAQC,OAAM,SAAAC,SACvD,OAA0C,QAAnC,EAAAL,EAAcN,EAAkBW,WAAG,eAAEC,UAAW,aACzD,KAGS,mBADT,CAEF,CAEM,SAAUC,EACdC,EACA1C,GAEA,IAAM2C,EAAc3C,EAAQS,SAASD,OACjCoC,EAAa,EACbC,EAAW,EACXC,EAAa,EACb/B,EAAkB,EAClBE,EAAW,EA8Bf,OA5BAjB,EAAQS,SAASC,SAAQ,SAAAC,GACvB,IAAMwB,GAAS,QAAiBxB,GAEhC,GAAKwB,EAAL,CAGAlB,GAAsBN,EAAEX,QAAQQ,OAEhC,IAAMuC,EAAc,yBAAkDL,EAAaP,GAE/EY,IAAgB,aAClBH,IAEEG,IAAgB,gBAClBD,IAEEC,IAAgB,qBAClBhC,IAEEgC,IAAgB,gBAClBF,GAhBM,CAiBV,IAOO,CACL3B,eALqByB,EAAc,EACjCC,EAAaD,EACb,EAIFK,QAASJ,EACTC,SAAAA,EACAC,WAAAA,EACA/B,gBAAAA,EACAE,SAAAA,EAEJ,CAEM,SAAUH,EAAyBf,EAA0BkC,GACjE,IAAME,GAAS,QAAiBF,GAE1BgB,GAAe,OAAgBlD,GAE/BQ,EAAkB0C,EAAazC,OAEjCoC,EAAa,EACb7B,EAAkB,EAEtBkC,EAAavC,SAAQ,SAAAe,GACnB,IAAMsB,EAAc,yBAAkDtB,EAAGU,GAErEY,IAAgB,aAClBH,IAEEG,IAAgB,qBAClBhC,GACJ,IAEA,IAAMG,EAAiBX,EAAkB,EAAIqC,EAAarC,EAAkB,EAQtE2C,EAAiB,IAAIC,IAAIF,EAAaG,KAAI,SAAA3B,GAAC,OAAIA,EAAEC,EAAE,KACnD2B,EAAuBlB,EAAOlB,SAASqC,QAAO,SAAAf,GAAI,MAAC,QAAEW,EAAeK,IAAiB,QAAb,EAAAhB,aAAC,EAADA,EAAGF,QAAQ,UAAE,eAAEP,WAAW,IAAEtB,OAE1G,MAAO,CACLqC,SAAUV,EAAOlB,SAAST,OAC1BS,SAAUgB,EAAejC,QAAQQ,OACjCsC,WAAYvC,EAAkB8C,EAC9BnC,eAAAA,EACA8B,QAASJ,EACT7B,gBAAAA,EAEJ,ojQCnLMyC,EAAY,0CACZC,EAAY,qBAAiCD,GAO7C,SAAUE,EAAiCC,WACzCC,GAAQ,SACRC,GAAa,IAAAC,oBAE0C,IAArB,YAAe,GAAM,GAArDC,EAAW,KAAEC,EAAc,KAE7BC,EAAsB,kBAC1B,wBAAwCN,EAAMO,gBAE1CnE,EAAc,mBAA0D,QAAxB,EAAAkE,EAAoBE,YAAI,eAAED,gBAC9E,gBAAgCD,EAAoBE,KAAKD,gBAErDxB,EAAc3C,EAAYoE,OAAQ,QAAmBpE,EAAYoE,KAAMR,EAAMpC,eAEoB,IAAnD,WAA+B,QAAhB,EAAAmB,EAAYyB,YAAI,eAAEC,mBAAkB,GAA/FA,EAAiB,KAAEC,EAAoB,KAwB/C,OACE,gBAAC,IAAK,CACJC,MAAOb,EAAWW,EAA+B,OAAX,UACtCG,WAAYZ,EAAMY,YAElB,uBAAKC,UAAU,QACb,gBAAC,IAAgB,CAAC9B,YAAaA,KAGjC,yBAAO+B,QAAQ,oBAAoBD,UAAU,cAC3C,gBAAC,IAAI,CAAChB,UAAWA,EAAWkB,OAAO,UAAU,KAG/C,4BACEhD,GAAG,oBACH8C,UAAU,0BACVG,YAAalB,EAAU,eACvBmB,SAAU,SAAAC,GAAC,OAAIR,EAAqBQ,EAAEC,OAAOC,MAAM,EACnDA,MAAOX,EACPY,KAAM,IAGR,gBAAC,IAAY,KACX,gBAAC,WAAmB,CAACC,QAAStB,EAAMY,aACpC,gBAAC,WAAmB,CAClBW,QAAQ,OACRC,KAAM1B,EAAU,QAChBwB,QAjDR,qIAUI,OATId,EAAI,+BACLzB,GAAW,CACd0C,gBAAiB,CAAC,CAAEC,KAAM,WAC1BlB,KAAM,CAAEC,kBAAAA,KAGVJ,GAAe,GAAM,kBAGbH,EAAW,sBAAsCM,IAAM,OAE7DP,EAAM0B,QAAQ7B,EAAU,6BAExBE,EAAMY,aAAa,gDAEnBX,EAAM2B,MAAM9B,EAAU,2BAA2B,QAE3B,OAF2B,UAEjDO,GAAe,GAAO,2EAEzB,EA8BOD,YAAaA,KAKvB,oCCzFO,IAAMyB,EAA0C,CACrDC,KAAM,IACNC,SAAU,qBCPZ,IAAYC,mBAAZ,SAAYA,GACV,yBACA,6BACA,yCAEA,2BACA,+BACA,oCACD,CARD,CAAYA,IAAAA,EAAsB,qBCAlC,IAAYC,mBAAZ,SAAYA,GACV,6BACA,yBACA,oCACD,CAJD,CAAYA,IAAAA,EAAuB,gsBCMnC,SAASC,IACP,OAAO,iBACT,CAMA,SAASC,EACPpD,EACAqD,GAEA,IAAMC,EAAQtD,EAAY0C,gBAAgB9B,QAAO,SAAAf,GAAC,OAAIA,EACnD0D,SAAS,IAEZ,OAAID,EAAM1D,OAAM,SAAAC,GAAC,OAAKwD,EAAiBxD,EAAEb,GAAG,IACnC,eAEOsE,EAAM1D,OAAM,SAAAC,GAAI,MAAC,OAAAA,EAAE8C,KAAKa,OAAOC,iBAAwC,QAAtB,EAAAJ,EAAiBxD,EAAEb,WAAG,eAAEwE,OAAOC,cAAa,IAC5F,YAAiC,aACpD,CAEA,SAASC,EACP1D,EACAqD,GAEA,OAAIrD,EAAY0C,gBAAgB9C,OAAM,SAAAC,GAAC,OAAKwD,EAAiBxD,EAAEb,GAAG,IACzD,eAEYgB,EAAY0C,gBAAgB9B,QAAO,SAAAf,GAAC,OAAIA,EAAE0D,SAAS,IAE3C3D,OAAM,SAAAC,SAC3B8D,EAAgBN,EAAiBxD,EAAEb,IAOzC,OAAO2E,aAAa,EAAbA,EAAe1E,eAAmB,QAAJ,EAAAY,EAAEb,UAAE,eAAEC,aAAc0E,IAAkB9D,EAAE8C,IAC/E,IACiB,YAAiC,aACpD,CAmCA,SAASiB,EAAoB5D,EAA0BP,GACrD,OAAO,SAACT,GACN,IAAM6E,EAAUpE,EAAOlB,SAASO,MAAK,SAAAe,GAAC,OAAIA,EAAEb,KAAOgB,EAAYhB,EAAE,IACjE,OAAO6E,aAAO,EAAPA,EAASlE,QAAQb,MAAK,SAAAb,GAAC,OAAIA,EAAEe,KAAOA,CAAE,GAC/C,CACF,CAWA,SAAS8E,EAA4B9D,EAA0BP,GAC7D,IAAM4D,EAAmBO,EAAoB5D,EAAaP,GAE1D,OAAOiE,EAAwB1D,GAAa,SAAChB,GAC3C,IAAMG,EAASkE,EAAiBrE,GAChC,OAAOG,aAAM,EAANA,EAAQsD,IACjB,GACF,CAEA,SAASsB,EACP/D,EACAP,GAGA,OA/DF,SACEO,EACAqD,GAEA,IAAIhD,EAwBJ,OArBAL,EAAY0C,gBAAgB1E,SAAQ,SAAAgG,GAClC,IAAML,EAAgBN,EAAiBW,EAAKhF,IAiB5CqB,EAfKsD,EAKDA,EAAc7D,SAAW,YAKzB6D,EAAc7D,SAAW,cAKf,oBAJE,cALA,YALA,cAelB,IAEOO,CACT,CAkCS4D,CAA8BjE,EADZ4D,EAAoB5D,EAAaP,GAE5D,CAEA,IAAMyE,EAAe,iBAClB,gBAA+Bf,GAC/B,WAA0BA,GAC1B,kBA7BH,SAAkCnD,EAA0BP,GAC1D,IAAM4D,EAAmBO,EAAoB5D,EAAaP,GAE1D,OAAO2D,EAAqBpD,GAAa,SAAChB,GACxC,IAAMG,EAASkE,EAAiBrE,GAChC,OAAOG,aAAM,EAANA,EAAQsD,IACjB,GACF,IAuBG,oBAAmCqB,GACnC,iBAAgCC,GAChC,iBAAgCD,GAChC,kBAAiCC,GASvBI,EAA+B,CAC1ChB,cAAAA,EACA9E,gBA5HF,WACE,OAAO,mBACT,EA2HE+E,qBAAAA,EACAM,wBAAAA,EACAU,qBAXF,SAA8BpE,EAA0BP,GAGtD,OAAO4E,EAFaH,EAAgBlE,EAAYsE,SAE7BtE,EAAaP,EAClC,0FCvHA,SAAS8E,EAA0BvE,GACjC,OAAOA,EAAYsE,SAAW,iBAAgCtE,EAAYsE,SAAW,UACvF,CAEM,SAAUE,EAAoBnH,GAClC,OAAO,YAAoBA,EAAYoH,WAAW/D,KAAI,SAAA3B,GAAC,OAAIA,EAAEwB,YAAY,IAC3E,CAKM,SAAUmE,EAAiBnF,GAC/B,OAAO,SAAiBA,EAAejC,QACzC,CAEM,SAAUqH,EAAkB9F,EAAuBY,GACvD,OAAO,cAAsBA,aAAM,EAANA,EAAQlB,SAAU,CAAES,GAAIH,GACvD,CAMM,SAAU+F,EAAgBvH,GAC9B,OAAOmH,EAAoBnH,GAAauD,OAAO2D,EACjD","sources":["file:///app/packages/libs/shared/src/apps/analytics/utils/InteractiveUtils.ts","file:///app/packages/libs/shared/src/apps/analytics/views/interactive-edit-suggested-response/InteractiveEditSuggestedResponse.tsx","file:///app/packages/libs/shared/src/constants/ScoreThresholds.ts","file:///app/packages/libs/shared/src/enums/InteractionCorrectness.ts","file:///app/packages/libs/shared/src/enums/InteractiveAnswerStatus.ts","file:///app/packages/libs/shared/src/utils/InteractiveCorrectnessHelper.ts","file:///app/packages/libs/shared/src/utils/InteractiveHelper.ts"],"sourcesContent":["import { ArrayHelper } from 'libs/common/react/utils/ArrayHelper';\n\nimport { MarkedAnswerHash } from 'libs/shared/apps/analytics/hooks/UseMarkAnswers';\nimport { ResultsSummary } from 'libs/shared/apps/analytics/interfaces/ResultsSummary';\nimport { StudentResultsWithSummary } from 'libs/shared/apps/analytics/interfaces/StudentResultsWithSummary';\nimport { ScoreThresholdDefaults } from 'libs/shared/constants/ScoreThresholds';\nimport { InteractionCorrectness } from 'libs/shared/enums/InteractionCorrectness';\nimport { InteractiveAnswerStatus } from 'libs/shared/enums/InteractiveAnswerStatus';\nimport { Interaction, StudentAnswer, StudentResults } from 'libs/shared/interfaces';\nimport { Interactive, InteractiveResultSet } from 'libs/shared/interfaces';\nimport { InteractiveCorrectnessHelper } from 'libs/shared/utils/InteractiveCorrectnessHelper';\nimport { flattenInteractions, getInteractions, getStudentAttempt, getStudentResult } from 'libs/shared/utils/InteractiveHelper';\n\ninterface StudentGroups {\n markingRequired: StudentResultsWithSummary[];\n lowScore: StudentResultsWithSummary[];\n highScore: StudentResultsWithSummary[];\n completed: StudentResultsWithSummary[];\n notCompleted: StudentResultsWithSummary[];\n}\n\nexport function groupStudents(interactive: Interactive, results: InteractiveResultSet): StudentGroups {\n const groups: StudentGroups = {\n markingRequired: [],\n lowScore: [],\n highScore: [],\n completed: [],\n notCompleted: []\n };\n\n const interactions = getInteractions(interactive);\n\n const numInteractions = interactions.length;\n \n results.students.forEach(s => {\n const withSummary = {\n ...s,\n summary: getStudentResultsSummary(interactive, s)\n };\n \n if (withSummary.summary.awaitingMarking) {\n groups.markingRequired.push(withSummary);\n return;\n }\n\n if (ArrayHelper.last(s.results).attempts.length === numInteractions) {\n groups.completed.push(withSummary);\n } else {\n groups.notCompleted.push(withSummary);\n return;\n }\n \n if (withSummary.summary.percentCorrect >= ScoreThresholdDefaults.HIGH)\n groups.highScore.push(withSummary);\n \n if (withSummary.summary.percentCorrect < ScoreThresholdDefaults.MODERATE)\n groups.lowScore.push(withSummary);\n });\n \n const sortedLowScore = ArrayHelper.sortBy(groups.lowScore, s => s.summary.percentCorrect);\n const sortedHighScore = ArrayHelper.sortBy(groups.highScore, s => s.summary.percentCorrect).reverse();\n \n return {\n ...groups,\n lowScore: sortedLowScore,\n highScore: sortedHighScore\n };\n}\n\nexport function getInteractionById(interactive: Interactive, interactionId: string): Interaction {\n const flattenedInteractions = flattenInteractions(interactive);\n return flattenedInteractions.find(i => i.id.toString() === interactionId.toString());\n}\n\n/**\n * We need to use the question and result ids as a list of one student's responses\n * to multiple questions will all have the same result id and a list of multiple\n * students responses to one question will all have the same questionId.\n */\nexport function getMarkedAnswerId(answer: StudentAnswer): string {\n return `${answer.questionId}:${answer.resultId}`;\n}\n\nexport function getMarkedStatus(\n interactionId: string,\n studentResults: StudentResults,\n markedAnswers: MarkedAnswerHash\n): InteractiveAnswerStatus {\n const result = getStudentResult(studentResults);\n const studentResponse = getStudentAttempt(interactionId, result);\n\n const isMarkedCorrect = studentResponse?.answers.every(a => {\n return markedAnswers[getMarkedAnswerId(a)]?.status === InteractiveAnswerStatus.Correct;\n });\n\n if (isMarkedCorrect)\n return InteractiveAnswerStatus.Correct;\n\n const isMarkedIncorrect = studentResponse?.answers.every(a => {\n return markedAnswers[getMarkedAnswerId(a)]?.status === InteractiveAnswerStatus.Incorrect;\n });\n\n if (isMarkedIncorrect)\n return InteractiveAnswerStatus.Incorrect;\n}\n\nexport function getInteractionResultsSummary(\n interaction: Interaction,\n results: InteractiveResultSet\n): ResultsSummary {\n const numStudents = results.students.length;\n let numCorrect = 0;\n let answered = 0;\n let unanswered = 0;\n let awaitingMarking = 0;\n let attempts = 0;\n\n results.students.forEach(s => {\n const result = getStudentResult(s);\n\n if (!result)\n return;\n\n attempts = attempts + s.results.length;\n\n const correctness = InteractiveCorrectnessHelper.isInteractionCorrect(interaction, result);\n\n if (correctness === InteractionCorrectness.Correct)\n numCorrect++;\n\n if (correctness === InteractionCorrectness.UnAnswered)\n unanswered++;\n\n if (correctness === InteractionCorrectness.AwaitingMarking)\n awaitingMarking++;\n\n if (correctness !== InteractionCorrectness.UnAnswered)\n answered++;\n });\n\n\n const percentCorrect = numStudents > 0\n ? numCorrect / numStudents\n : 0;\n\n return {\n percentCorrect,\n correct: numCorrect,\n answered,\n unanswered,\n awaitingMarking,\n attempts\n };\n}\n\nexport function getStudentResultsSummary(interactive: Interactive, studentResults: StudentResults): ResultsSummary {\n const result = getStudentResult(studentResults);\n\n const interactions = getInteractions(interactive);\n\n const numInteractions = interactions.length;\n\n let numCorrect = 0;\n let awaitingMarking = 0;\n\n interactions.forEach(i => {\n const correctness = InteractiveCorrectnessHelper.isInteractionCorrect(i, result);\n\n if (correctness === InteractionCorrectness.Correct)\n numCorrect++;\n\n if (correctness === InteractionCorrectness.AwaitingMarking)\n awaitingMarking++;\n });\n\n const percentCorrect = numInteractions > 0 ? numCorrect / numInteractions : 0;\n\n /**\n * Our interactions list has images and annotations filtered out.\n * We built a map of valid questions, so that we can calculate the unswered accurately.\n * We're doing this because of a bug that caused annotations and images to record answers in the player.\n * - Sha\n */\n const interactionIds = new Set(interactions.map(i => i.id));\n const answeredInteractions = result.attempts.filter(a => !!interactionIds.has(a?.answers[0]?.questionId)).length;\n\n return {\n answered: result.attempts.length,\n attempts: studentResults.results.length,\n unanswered: numInteractions - answeredInteractions,\n percentCorrect,\n correct: numCorrect,\n awaitingMarking\n };\n}","import React from 'react';\n\nimport { LanguageService } from 'libs/common/backbone/services/LanguageService';\nimport { useGetFetchAsync } from 'libs/common/react/flight';\nimport { Flight } from 'libs/common/react/index';\n\nimport { getInteractionById } from 'libs/shared/apps/analytics/utils/InteractiveUtils';\nimport { InteractionLabel } from 'libs/shared/components/interactive-questions/InteractionLabel';\nimport { Popup, PopupProps } from 'libs/shared/components/popup/Popup';\nimport { PopupButtons } from 'libs/shared/components/popup/PopupButtons';\nimport { Text } from 'libs/shared/components/text/Text';\nimport { InteractiveRequests } from 'libs/shared/flight-requests/InteractiveRequests';\nimport { useAlerts } from 'libs/shared/hooks/UseAlerts';\nimport { Interaction, Interactive, InteractiveMetadata } from 'libs/shared/interfaces';\n\nconst namespace = 'shared.interactiveEditSuggestedResponse';\nconst getPhrase = LanguageService.encloseNamespace(namespace);\n\ninterface InteractiveEditSuggestedResponseProps extends PopupProps {\n interactiveId: string;\n interactionId: string;\n}\n\nexport function InteractiveEditSuggestedResponse(props: InteractiveEditSuggestedResponseProps) {\n const alert = useAlerts();\n const fetchAsync = useGetFetchAsync();\n\n const [ showSpinner, setShowSpinner ] = React.useState(false);\n\n const interactiveMetadata = Flight.useBasicFetch<InteractiveMetadata>(\n InteractiveRequests.interactiveMetadata(props.interactiveId)\n );\n const interactive = Flight.useBasicFetch<Interactive>(interactiveMetadata.data?.interactiveId &&\n InteractiveRequests.interactive(interactiveMetadata.data.interactiveId));\n\n const interaction = interactive.data && getInteractionById(interactive.data, props.interactionId);\n \n const [ suggestedResponse, setSuggestedResponse ] = React.useState(interaction.data?.suggestedResponse);\n\n async function submitSuggestedResponse() {\n const data: Interaction = {\n ...interaction,\n actionableItems: [{ name: 'Answer' }],\n data: { suggestedResponse }\n };\n\n setShowSpinner(true);\n\n try {\n await fetchAsync(InteractiveRequests.updateInteraction(data));\n\n alert.success(getPhrase('suggestedResponseSuccess'));\n\n props.closePopup();\n } catch {\n alert.error(getPhrase('suggestedResponseError'));\n } finally {\n setShowSpinner(false);\n }\n }\n\n return (\n <Popup\n title={getPhrase(!suggestedResponse ? 'create' : 'edit')}\n closePopup={props.closePopup}\n >\n <div className='mb-3'>\n <InteractionLabel interaction={interaction} />\n </div>\n\n <label htmlFor='suggestedResponse' className='form-label'>\n <Text namespace={namespace} phrase='label' />:\n </label>\n\n <textarea\n id='suggestedResponse'\n className='form-control w-100 mb-3'\n placeholder={getPhrase('placeholder')}\n onChange={e => setSuggestedResponse(e.target.value)}\n value={suggestedResponse}\n rows={4}\n />\n\n <PopupButtons>\n <PopupButtons.Cancel onClick={props.closePopup} />\n <PopupButtons.Submit\n variant='dark'\n text={getPhrase('save')}\n onClick={submitSuggestedResponse}\n showSpinner={showSpinner}\n />\n </PopupButtons>\n </Popup>\n );\n}","export interface ScoreThresholds {\n HIGH: number;\n MODERATE: number;\n}\n\nexport const ScoreThresholdDefaults: ScoreThresholds = {\n HIGH: 0.75,\n MODERATE: 0.5\n};","export enum InteractionCorrectness {\n Correct,\n Incorrect,\n AwaitingMarking,\n \n Answered,\n UnAnswered,\n NotApplicable\n}","export enum InteractiveAnswerStatus {\n Incorrect = 0,\n Correct = 1,\n PendingReview = 2\n}","import { InteractionCorrectness } from 'libs/shared/enums/InteractionCorrectness';\nimport { InteractiveAnswerStatus } from 'libs/shared/enums/InteractiveAnswerStatus';\nimport { Interaction, InteractionTypeId, InteractiveResult, StudentAnswer } from 'libs/shared/interfaces';\n\ntype GetStudentAnswerByActionableItemId = (id: string) => string;\n\nfunction notApplicable(): InteractionCorrectness {\n return InteractionCorrectness.NotApplicable;\n}\n\nfunction awaitingMarking(): InteractionCorrectness {\n return InteractionCorrectness.AwaitingMarking;\n}\n\nfunction isMissingWordCorrect(\n interaction: Interaction,\n getStudentAnswer: GetStudentAnswerByActionableItemId\n): InteractionCorrectness {\n const items = interaction.actionableItems.filter(a => a\n .isCorrect);\n\n if (items.every(a => !getStudentAnswer(a.id)))\n return InteractionCorrectness.UnAnswered;\n\n const correct = items.every(a => a.name.trim().toLowerCase() === getStudentAnswer(a.id)?.trim().toLowerCase());\n return correct ? InteractionCorrectness.Correct : InteractionCorrectness.Incorrect;\n}\n\nfunction isMultipleChoiceCorrect(\n interaction: Interaction,\n getStudentAnswer: GetStudentAnswerByActionableItemId\n): InteractionCorrectness {\n if (interaction.actionableItems.every(a => !getStudentAnswer(a.id)))\n return InteractionCorrectness.UnAnswered;\n \n const correctItems = interaction.actionableItems.filter(a => a.isCorrect);\n\n const correct = correctItems.every(a => {\n const studentAnswer = getStudentAnswer(a.id);\n\n /**\n * In the past we've only ever checked the answer name. But since we introduced the ability to have image interactions\n * with no question text, we've need to swap to saving the id. But past submissions still have the name\n * - Sha\n */\n return studentAnswer?.toString() === a.id?.toString() || studentAnswer === a.name;\n });\n return correct ? InteractionCorrectness.Correct : InteractionCorrectness.Incorrect;\n}\n\nfunction isMarkableAnswerMarkedCorrect(\n interaction: Interaction,\n getStudentAnswer: (id: string) => StudentAnswer\n): InteractionCorrectness {\n let correctness: InteractionCorrectness;\n\n // There should only be one actionableItem\n interaction.actionableItems.forEach(item => {\n const studentAnswer = getStudentAnswer(item.id);\n\n if (!studentAnswer) {\n correctness = InteractionCorrectness.UnAnswered;\n return;\n }\n\n if (studentAnswer.status === InteractiveAnswerStatus.Correct) {\n correctness = InteractionCorrectness.Correct;\n return;\n }\n\n if (studentAnswer.status === InteractiveAnswerStatus.Incorrect) {\n correctness = InteractionCorrectness.Incorrect;\n return;\n }\n\n correctness = InteractionCorrectness.AwaitingMarking;\n });\n\n return correctness;\n}\n\ntype IsCorrectFunction = (interaction: Interaction, result: InteractiveResult) => InteractionCorrectness;\n\nfunction getGetStudentAnswer(interaction: Interaction, result: InteractiveResult): (id: string) => StudentAnswer {\n return (id: string) => {\n const attempt = result.attempts.find(a => a.id === interaction.id);\n return attempt?.answers.find(s => s.id === id);\n };\n}\n\nfunction wrapIsMissingWordCorrect(interaction: Interaction, result: InteractiveResult): InteractionCorrectness {\n const getStudentAnswer = getGetStudentAnswer(interaction, result);\n\n return isMissingWordCorrect(interaction, (id: string) => {\n const answer = getStudentAnswer(id);\n return answer?.text;\n });\n}\n\nfunction wrapIsMultipleChoiceCorrect(interaction: Interaction, result: InteractiveResult): InteractionCorrectness {\n const getStudentAnswer = getGetStudentAnswer(interaction, result);\n\n return isMultipleChoiceCorrect(interaction, (id: string) => {\n const answer = getStudentAnswer(id);\n return answer?.text;\n });\n}\n\nfunction wrapIsMarkableAnswerMarkedCorrect(\n interaction: Interaction,\n result: InteractiveResult\n): InteractionCorrectness {\n const getStudentAnswer = getGetStudentAnswer(interaction, result);\n return isMarkableAnswerMarkedCorrect(interaction, getStudentAnswer);\n}\n\nconst IsCorrectLookup: {[typeId: number]: IsCorrectFunction} = {\n [InteractionTypeId.Annotation]: notApplicable,\n [InteractionTypeId.Image]: notApplicable,\n [InteractionTypeId.MissingWord]: wrapIsMissingWordCorrect,\n [InteractionTypeId.MultipleChoice]: wrapIsMultipleChoiceCorrect,\n [InteractionTypeId.ShortAnswer]: wrapIsMarkableAnswerMarkedCorrect,\n [InteractionTypeId.TrueOrFalse]: wrapIsMultipleChoiceCorrect,\n [InteractionTypeId.Illustration]: wrapIsMarkableAnswerMarkedCorrect\n};\n\nfunction isInteractionCorrect(interaction: Interaction, result: InteractiveResult): InteractionCorrectness {\n const isCorrectFn = IsCorrectLookup[interaction.typeId];\n\n return isCorrectFn(interaction, result);\n}\n\nexport const InteractiveCorrectnessHelper = {\n notApplicable,\n awaitingMarking,\n isMissingWordCorrect,\n isMultipleChoiceCorrect,\n isInteractionCorrect\n};\n","import { ArrayHelper } from 'libs/common/react/utils/ArrayHelper';\n\nimport {\n Interaction,\n InteractionTypeId,\n Interactive,\n InteractiveResult,\n StudentAttempt,\n StudentResults\n} from 'libs/shared/interfaces';\n\nfunction interactionRequiresAnswer(interaction: Interaction): boolean {\n return interaction.typeId !== InteractionTypeId.Annotation && interaction.typeId !== InteractionTypeId.Image;\n}\n\nexport function flattenInteractions(interactive: Interactive): Interaction[] {\n return ArrayHelper.flatten(interactive.timepoints.map(i => i.interactions));\n}\n\n/**\n * Centralised logic for using the most recent student result.\n */\nexport function getStudentResult(studentResults: StudentResults): InteractiveResult {\n return ArrayHelper.last(studentResults.results);\n}\n\nexport function getStudentAttempt(interactionId: string, result: InteractiveResult): StudentAttempt {\n return ArrayHelper.findWhere(result?.attempts, { id: interactionId });\n}\n\n/**\n * Returns a flat list of interactions on an interactive and filters out\n * those that don't require an answer (annotations and images).\n */\nexport function getInteractions(interactive: Interactive): Interaction [] {\n return flattenInteractions(interactive).filter(interactionRequiresAnswer);\n}"],"names":["groupStudents","interactive","results","groups","markingRequired","lowScore","highScore","completed","notCompleted","numInteractions","length","students","forEach","s","withSummary","summary","getStudentResultsSummary","awaitingMarking","push","attempts","percentCorrect","sortedLowScore","sortedHighScore","reverse","getInteractionById","interactionId","find","i","id","toString","getMarkedAnswerId","answer","questionId","resultId","getMarkedStatus","studentResults","markedAnswers","result","studentResponse","answers","every","a","status","getInteractionResultsSummary","interaction","numStudents","numCorrect","answered","unanswered","correctness","correct","interactions","interactionIds","Set","map","answeredInteractions","filter","has","namespace","getPhrase","InteractiveEditSuggestedResponse","props","alert","fetchAsync","useGetFetchAsync","showSpinner","setShowSpinner","interactiveMetadata","interactiveId","data","suggestedResponse","setSuggestedResponse","title","closePopup","className","htmlFor","phrase","placeholder","onChange","e","target","value","rows","onClick","variant","text","actionableItems","name","success","error","ScoreThresholdDefaults","HIGH","MODERATE","InteractionCorrectness","InteractiveAnswerStatus","notApplicable","isMissingWordCorrect","getStudentAnswer","items","isCorrect","trim","toLowerCase","isMultipleChoiceCorrect","studentAnswer","getGetStudentAnswer","attempt","wrapIsMultipleChoiceCorrect","wrapIsMarkableAnswerMarkedCorrect","item","isMarkableAnswerMarkedCorrect","IsCorrectLookup","InteractiveCorrectnessHelper","isInteractionCorrect","isCorrectFn","typeId","interactionRequiresAnswer","flattenInteractions","timepoints","getStudentResult","getStudentAttempt","getInteractions"],"sourceRoot":""}
|
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
"use strict";(self.webpackChunk_clickview_lite=self.webpackChunk_clickview_lite||[]).push([[2788],{26025:(e,t,r)=>{r.d(t,{B:()=>o});var a=r(1048),n=r(75795),o={getAudienceAppLinkParams:function(){var e=n.O.getCurrentRoute().appLink,t=a.t.isObject(e.params)?e.params:{},r=t.users,o=t.classrooms,c=t.classroomGroups,s=function(e){var r=t[e];if(r)return Array.isArray(r)?r:[r]},i={};return r&&(i.users=s("users")),o&&(i.classrooms=s("classrooms")),c&&(i.classroomGroups=s("classroomGroups")),i},getDateRangeAppLinkParams:function(){var e=n.O.getCurrentRoute().appLink,t=a.t.isObject(e.params)?e.params:{},r=t.from,o=t.to,c=t.rangeName,s={};return r&&(s.from=r),o&&(s.to=o),c&&(s.rangeName=c),s}}},26136:(e,t,r)=>{r.d(t,{B:()=>o});var a=r(76198),n=r(64818);function o(e,t){return t?(0,a._8)(function(e){var t=+"".concat(e.id).concat(Math.floor((new Date).getMinutes()/5));return{dictionaries:[a.O9,a.yd],separator:" ",length:2,style:"capital",seed:t}}(e)):n.l.getFullName(e)}},74901:(e,t,r)=>{function a(e){return function(e){if(Array.isArray(e))return n(e)}(e)||function(e){if("undefined"!=typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(e)||function(e,t){if(e){if("string"==typeof e)return n(e,t);var r={}.toString.call(e).slice(8,-1);return"Object"===r&&e.constructor&&(r=e.constructor.name),"Map"===r||"Set"===r?Array.from(e):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?n(e,t):void 0}}(e)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function n(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,a=Array(t);r<t;r++)a[r]=e[r];return a}r.d(t,{K:()=>o});var o=function(e){var t=[],r=[];return e.users&&t.push.apply(t,a(e.users)),e.classrooms&&r.push.apply(r,a(e.classrooms)),e.classroomGroups&&r.push.apply(r,a(e.classroomGroups)),{userId:t,groupId:r}}},40003:(e,t,r)=>{r.d(t,{Hb:()=>d,NG:()=>g,W5:()=>m,eO:()=>p,nG:()=>l,wO:()=>v,zn:()=>i});var a=r(23481),n=r(110),o=r(57266),c=a.T.encloseNamespace("shared.analyticsUtils");function s(e){var t=n.O.convertDateToUTC(e);return n.O.format(t,"YYYY-MM-DDTHH:mm:ss")}function i(){return new Date(2021,0,1)}function l(){return new Date}function u(e){return e.find((function(e){return!!e.default}))}function m(e,t){if(t)return e.find((function(e){return e.name===t}))}function d(){var e=i(),t=(new Date).getFullYear(),r=t===e.getFullYear();return[{name:c("today"),startDate:new Date,endDate:new Date},{name:c("thisMonth"),startDate:new Date(t,(new Date).getMonth(),1),endDate:new Date},{name:c("lastThreeMonths"),startDate:new Date(t,(new Date).getMonth()-2,1),endDate:new Date},{name:c("lastSixMonths"),startDate:new Date(t,(new Date).getMonth()-5,1),endDate:new Date},{name:c("thisYear"),startDate:new Date(t,0,1),endDate:new Date},{name:c("lastYear"),startDate:new Date(t-1,0,1),endDate:new Date(t,0,0),disabled:r,tooltip:r?c("lastYearDisabled"):""},{name:c("allTime"),startDate:n.O.subtract(new Date,5,"years"),endDate:new Date,default:!0}]}function f(e){return n.O.format(e,"YYYY-MM-DD")}function p(e){return e.name?{rangeName:e.name}:{from:f(e.startDate),to:f(e.endDate)}}function g(e,t){var r=t.to,a=t.from,c=t.rangeName,s=m(e,c);if(s)return a||r?void o.e.updateParams(p(s),{replace:!0,merge:!0,keysToRemove:["from","to"]}):s;var d=u(e);if(a&&r&&n.O.isValid(a)&&n.O.isValid(r)){var f=!0,g=n.O.convertDateToUTC(new Date(a)),v=n.O.convertDateToUTC(new Date(r));n.O.isBefore(g,i(),"day")&&(g=i(),f=!1),n.O.isAfter(v,l(),"day")&&(v=l(),f=!1),n.O.isAfter(g,v)&&(g=d.startDate,v=d.endDate,f=!1);var y={startDate:g,endDate:v,name:f?c:""};if(f)return y;o.e.updateParams(p(y),{replace:!0,merge:!0,keysToRemove:["rangeName"]})}else o.e.updateParams(p(d),{replace:!0,merge:!0,keysToRemove:["rangeName"]})}function v(e,t){var r=function(e){return s(n.O.startOf(e,"day"))},a=function(e){return s(n.O.endOf(e,"day"))},o=m(e,t.rangeName);if(o)return{start:r(f(o.startDate)),end:a(f(o.endDate))};if(t.from&&t.to)return{start:r(t.from),end:a(t.to)};var c=u(e);return{start:r(f(c.startDate)),end:a(f(c.endDate))}}},1568:(e,t,r)=>{r.r(t),r.d(t,{GenerateInteractiveResultsReportView:()=>R});var a=r(32735),n=r(23481),o=r(2948),c=r(20354),s=r(110),i=r(48258),l=r(71553),u=r(41196),m=r(26025),d=r(74901),f=r(40003),p=r(2606),g=r(9111),v=r(13876),y=r(83345),D=r(38143),h=r(28972),b=r(20768),w=r(31949),O=r(69883),A=r(83140),I=r(80845),k=r(64818);function C(e,t){return function(e){if(Array.isArray(e))return e}(e)||function(e,t){var r=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=r){var a,n,o,c,s=[],i=!0,l=!1;try{if(o=(r=r.call(e)).next,0===t){if(Object(r)!==r)return;i=!1}else for(;!(i=(a=o.call(r)).done)&&(s.push(a.value),s.length!==t);i=!0);}catch(e){l=!0,n=e}finally{try{if(!i&&null!=r.return&&(c=r.return(),Object(c)!==c))return}finally{if(l)throw n}}return s}}(e,t)||function(e,t){if(e){if("string"==typeof e)return E(e,t);var r={}.toString.call(e).slice(8,-1);return"Object"===r&&e.constructor&&(r=e.constructor.name),"Map"===r||"Set"===r?Array.from(e):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?E(e,t):void 0}}(e,t)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function E(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,a=Array(t);r<t;r++)a[r]=e[r];return a}var M="shared.generateReport",T=n.T.encloseNamespace(M);function N(e){var t=s.O.convertUTCToLocal(e).toString();return s.O.format(t,"Do MMMM YYYY")}function R(e){var t,r,n=C((0,o.D)(D.g.ANONYMISE_USERS),1)[0],s=(0,O.Z)(),E=c.a.useGetFetchAsync(),R=m.B.getAudienceAppLinkParams(),L=m.B.getDateRangeAppLinkParams(),S=(0,f.wO)((0,f.Hb)(),L),P=C(a.useState(!1),2),j=P[0],Y=P[1],G=c.a.useBasicFetch(w.N.currentUser()),x=c.a.useBasicFetch(b.b.interactiveMetadata(e.interactiveId)),F=c.a.useBasicFetch((null===(t=x.data)||void 0===t?void 0:t.interactiveId)?b.b.interactive(x.data.interactiveId):null),B=(0,u.W)(e.interactiveId,Object.assign(Object.assign({},S),(0,d.K)(R))),H=(0,I.Q)(F.data),Z=(0,i.Fx)(F.data,B.data,!1,n);return console.log("dateRangeAppLinkParams",L),a.createElement(y.D.Provider,{value:M},a.createElement(g.G,{title:T("title"),showLoadingSpinner:!G.hasCompleted,closePopup:e.closePopup},a.createElement(a.Fragment,null,a.createElement("p",null,a.createElement(y.x,{phrase:"description"})),a.createElement("p",null,a.createElement(y.x,{phrase:"dateRange",options:{dateFrom:N(S.start),dateTo:N(S.end)}})),a.createElement("p",null,a.createElement(y.x,{phrase:"emailDescription",options:{email:null===(r=G.data)||void 0===r?void 0:r.email}})),a.createElement(v.u,null,a.createElement(v.u.Cancel,{onClick:e.closePopup}),a.createElement(v.u.Submit,{variant:"dark",onClick:function(){Y(!0);var t={interactiveName:x.data.name,userId:G.data.id,customerId:G.data.customerId,questions:H.map((function(e){return e.name})),rows:Z.map((function(e){return{name:k.l.getFullName(e.user),unanswered:e.summary.unanswered,percentage:(0,p.DV)((0,p.Ki)(e.summary.percentCorrect)),correct:e.summary.correct,totalQuestions:e.summary.answered+e.summary.unanswered,results:H.map((function(t){switch(A.A.isInteractionCorrect(t,(0,I.j_)(e))){case h.w.Correct:return T("correct");case h.w.Incorrect:return T("incorrect");case h.w.NotApplicable:return"-";case h.w.AwaitingMarking:return T("awaitingMarking");case h.w.UnAnswered:case h.w.Answered:default:return""}}))}}))};E(l.I.interactiveResultsReport(t)).then((function(){s.success(T("success"))})).catch((function(){s.error(T("error"))})).finally(e.closePopup)},text:T("generateReport"),showSpinner:j})))))}},40782:(e,t,r)=>{r.d(t,{I:()=>a,O:()=>i});var a,n=r(32735),o=r(2606),c=r(62712);function s(e){var t=n.useCallback((function(t){if(t){var r=t.r.baseVal.value,a=2*Math.PI*r,n=a-e.percentage*a;t.style.strokeDasharray="".concat(a," ").concat(a),t.style.strokeDashoffset=n.toString()}}),[e.percentage]);return n.createElement("svg",null,n.createElement("circle",{r:(0,o.pu)(e.size),className:c.Z.backgroundCircle}),!(0,o.zR)(e.percentage)&&n.createElement("circle",{ref:t,r:(0,o.pu)(e.size),className:(0,o.V4)(e.percentage,e.scoreThresholds)}))}function i(e){var t,r=(0,o.Ki)(e.percentage),i=e.layout===a.LabelInside?o.Mk.Large:o.Mk.Small,l=e.customLabel||(0,o.DV)(r);return e.layout===a.LabelOnly?n.createElement("span",{className:(0,o.IA)(r)},l):n.createElement("div",{className:"d-flex align-items-center justify-content-between ".concat(null!==(t=e.className)&&void 0!==t?t:"")},e.layout===a.LabelBefore&&n.createElement("span",{className:"me-2"},l),n.createElement("div",{className:(0,o.tw)(i,r)},n.createElement(s,{percentage:r,size:i,scoreThresholds:e.scoreThresholds}),e.layout===a.LabelInside&&n.createElement("span",{className:c.Z.centredPercentageText},l)))}!function(e){e.CircleOnly="circle_only",e.LabelOnly="label_only",e.LabelBefore="label_before",e.LabelInside="label_inside"}(a||(a={})),i.defaultProps={layout:a.CircleOnly}},2606:(e,t,r)=>{r.d(t,{DV:()=>g,IA:()=>d,Ki:()=>p,Mk:()=>a,V4:()=>m,pu:()=>u,tw:()=>f,zR:()=>v});var a,n=r(94892),o=r(62712),c=2,s=5.8,i=.2,l=.36;function u(e){var t=e===a.Large?s:c,r=e===a.Large?l:i;return"".concat(t/2-2*r,"rem")}function m(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:n.i;return e>=t.HIGH?o.Z.circleSuccess:e>=t.MODERATE?o.Z.circleWarning:o.Z.circleDanger}function d(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:n.i;return e>=t.HIGH?"text-success":e>=t.MODERATE?"text-warning":"text-danger"}function f(e,t){var r="d-inline-block ".concat(o.Z.circleContainer);return e===a.Large&&(r+=" ".concat(o.Z.lgCircleContainer)),v(t)&&(r+=" ".concat(o.Z.pendingCircle)),r}function p(e){if(!v(e))return+e.toFixed(2)}function g(e){return v(e)?"--%":"".concat(Math.round(100*e),"%")}function v(e){return"number"!=typeof e}!function(e){e.Small="small",e.Large="large"}(a||(a={}))},94892:(e,t,r)=>{r.d(t,{i:()=>a});var a={HIGH:.75,MODERATE:.5}},62875:(e,t,r)=>{function a(e,t,r){var a="".concat(e,":").concat(t.start,":").concat(t.end),n=Array.isArray(t.userId)?t.userId.sort().join(":"):t.userId,o=Array.isArray(t.groupId)?t.groupId.sort().join(":"):t.groupId;return n&&(a+=":".concat(n)),o&&(a+=":".concat(o)),r&&(a+=":".concat(r)),a}r.d(t,{H:()=>a})},57266:(e,t,r)=>{r.d(t,{e:()=>c});var a=r(81886),n=r(1048),o=r(75795),c={updateParams:function(e,t){var r=o.O.getCurrentRoute().appLink,c="string"==typeof r.params?a.Q.Ab.DeserializeQueryParams(r.params):r.params;t.keysToRemove&&(c=n.t.omit(c,t.keysToRemove));var s=(null==t?void 0:t.merge)?Object.assign(Object.assign({},c),e):e,i=Object.assign(Object.assign({},r),{params:s});n.t.isEqual(r,i)||a.Q.C$.trigger(i,n.t.omit(t,["merge","keysToRemove"]))}}},62712:(e,t,r)=>{r.d(t,{Z:()=>a});const a={circleContainer:"p8Vgz",backgroundCircle:"asGGE",circleSuccess:"PXLNj",circleWarning:"ZckRN",circleDanger:"slBRg",lgCircleContainer:"N8KCI",pendingCircle:"DKrcq",centredPercentageText:"tpmLR"}}}]);
|
|
2
|
-
//# sourceMappingURL=2788-013bbba554-lite.chunk.js.map
|