/*!
* Bootstrap Colorpicker - Simple and customizable colorpicker component for Twitter Bootstrap.
* @package bootstrap-colorpicker
* @version v3.0.0-wip
* @license MIT
* @link https://farbelous.github.io/bootstrap-colorpicker/
* @link https://github.com/farbelous/bootstrap-colorpicker.git
*/
{"version":3,"sources":["webpack:///webpack/universalModuleDefinition","webpack:///webpack/bootstrap 87597af6631bb2a6ee4d","webpack:///external \"jQuery\"","webpack:///./src/js/jquery-plugin.js","webpack:///./src/js/Colorpicker.js","webpack:///./src/js/Color.js","webpack:///./node_modules/tinycolor2/tinycolor.js","webpack:///./src/js/defaults.js"],"names":["plugin","fn","option","apiArgs","Array","prototype","slice","call","arguments","isSingleElement","length","returnValue","$jq","each","$this","inst","data","options","isFunction","apply","constructor","Colorpicker","element","value","addClass","extend","component","find","container","currentSlider","mousePointer","left","top","input","is","color","createColor","getValue","disabled","$picker","picker","template","customClass","inline","horizontal","useAlpha","hasColor","hasTransparency","align","colorPalette","colorpicker","paletteContainer","isAliased","useColorPaletteNames","name","$btn","css","attr","on","event","preventDefault","setValue","append","show","proxy","e","target","currentTarget","mousedown","appendTo","keyup","change","hide","update","trigger","type","remove","removeData","off","removeClass","str","toString","format","useHashPrefix","replace","getPaletteColorName","window","document","body","offset","outerWidth","outerHeight","isDisabled","reposition","hasInput","stopPropagation","parents","val","getColorString","prop","vertical","sl","sliders","slidersHorz","saturationGuide","hueGuide","alphaGuide","hsva","hsvaRatio","hue","maxTop","maxLeft","h","alpha","a","saturation","v","s","getHueOnlyCopy","toHexString","toRgbString","icn","eq","getCssColorString","force","updateComponent","updateInput","updatePicker","defaultValue","fallbackColor","candidates","push","map","item","fallback","getPaletteColor","getOpaqueCopy","colorName","hasOwnProperty","colorValue","toLowerCase","pageX","pageY","originalEvent","touches","zone","closest","guide","style","mousemove","mouseup","Math","max","min","callLeft","callTop","match","enableHex8","defaultFallbackColor","defaultFallbackFormat","unwrapColor","r","_r","g","_g","b","_b","_a","Color","_tc_id","_format","gradientType","_gradientType","_fallbackColor","toHsv","hsv","_originalInput","_validOrFallback","Error","_roundA","_ok","importRgb","isValid","fallbackOptions","Object","assign","importColor","importHsv","setHue","setSaturation","setBrightness","setAlpha","colorStr","isTransparent","names"],"mappings":"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AACA;;AAEA,+BAA+B,mBAAmB,OAAO;AACzD,+BAA+B,mBAAmB,OAAO;AACzD,+BAA+B,mBAAmB,OAAO;AACzD;AACA,KAAK;AACL;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA,gBAAgB;AAChB,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA,gBAAgB;AAChB,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA,KAAK;AACL;AACA;AACA,KAAK;AACL;AACA;AACA,KAAK;AACL;AACA;AACA,KAAK;AACL;AACA,gBAAgB;AAChB,KAAK;AACL;AACA;AACA;AACA;AACA,KAAK;AACL;AACA,gBAAgB;AAChB,KAAK;AACL;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA,KAAK;AACL;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA,KAAK;AACL;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA,KAAK;AACL;AACA;AACA,KAAK;;AAEL;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA,KAAK;AACL;AACA;AACA,KAAK;AACL;AACA;AACA,KAAK;AACL;AACA;AACA,KAAK;AACL;AACA;AACA,KAAK;AACL;AACA;AACA,KAAK;AACL;AACA;AACA,KAAK;;AAEL;AACA;AACA,KAAK;AACL;AACA;AACA,KAAK;AACL;AACA;AACA,KAAK;AACL;AACA;AACA,KAAK;AACL;AACA;AACA,KAAK;AACL;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA,eAAe;AACf;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;AAGA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA,eAAe,UAAU;AACzB;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,eAAe,UAAU;AACzB;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA;AACA,kBAAkB;AAClB;AACA;AACA;AACA;AACA;AACA,sDAAsD;AACtD,wCAAwC;AACxC,wCAAwC;AACxC;;AAEA;AACA;;AAEA,YAAY;AACZ;;AAEA;AACA;AACA;AACA,eAAe,UAAU;AACzB;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA,sBAAsB;AACtB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA,YAAY;AACZ;;AAEA;AACA;AACA;AACA,eAAe,UAAU;AACzB;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA,cAAc;AACd;AACA;AACA;AACA,sDAAsD;AACtD,wCAAwC;AACxC,wCAAwC;AACxC;AACA;AACA;AACA,YAAY;AACZ;;AAEA;AACA;AACA;AACA,eAAe,UAAU;AACzB;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA,YAAY;AACZ;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA,6BAA6B,cAAc;AAC3C;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;;;AAGA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,mBAAmB,yCAAyC;AAC5D,mBAAmB,yCAAyC;AAC5D;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,mBAAmB,wCAAwC;AAC3D,mBAAmB,yCAAyC;AAC5D,mBAAmB,yCAAyC;AAC5D;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,mBAAmB,uCAAuC;AAC1D,mBAAmB,wCAAwC;AAC3D;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA,+DAA+D,WAAW;AAC1E;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA,4BAA4B,kBAAkB;AAC9C;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;;AAGA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,2DAA2D,wBAAwB;;AAEnF;AACA;AACA,2CAA2C,wBAAwB;AACnE;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA,8EAA8E,4BAA4B,gBAAgB;AAC1H,8EAA8E,2BAA2B,gBAAgB;AACzH,qDAAqD,oDAAoD,gBAAgB;AACzH,qDAAqD,oDAAoD,gBAAgB;AACzH;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA,kBAAkB,uBAAuB;AACzC;AACA;AACA;AACA;AACA;AACA;;AAEA,oDAAoD,0BAA0B;AAC9E;AACA;AACA;AACA;AACA;AACA;AACA;;;AAGA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;;AAGA;AACA;;AAEA,KAAK,kBAAkB,YAAY,kBAAkB;AACrD;AACA,mBAAmB;AACnB;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA,4BAA4B,YAAY;;AAExC;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,+BAA+B,EAAE,cAAc,EAAE,cAAc,EAAE;AACjE,+BAA+B,EAAE,cAAc,EAAE,cAAc,EAAE;AACjE,+BAA+B,EAAE,cAAc,EAAE,cAAc,EAAE,cAAc,EAAE;AACjF,+BAA+B,EAAE,cAAc,EAAE,cAAc,EAAE,cAAc,EAAE;AACjF;AACA,CAAC;;AAED;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,wCAAwC,UAAU,OAAO,UAAU,OAAO,SAAS;AACnF;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,gBAAgB;AAChB;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,gBAAgB;AAChB;AACA;AACA,gBAAgB;AAChB;AACA;AACA,gBAAgB;AAChB;AACA;AACA,gBAAgB;AAChB;AACA;AACA,gBAAgB;AAChB;AACA;AACA,gBAAgB;AAChB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA,2CAA2C;AAC3C;AACA,sBAAsB;AACtB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,YAAY;AACZ;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,mDAAwB,kBAAkB;AAAA;AAC1C;AACA;AACA;AACA;AACA;;AAEA,CAAC;;;;;;;;AC1qCD;AACA;;;;AAIA;;;;;;;kBAGe;AACb;;;;;;AAMArI,SAAO,KAPM;AAQb;;;;;;;;AAQA+C,UAAQ,KAhBK;AAiBb;;;;;;;;AAQAtC,cAAY,KAzBC;AA0Bb;;;;;;AAMAD,UAAQ,KAhCK;AAiCb;;;;;;AAMAV,SAAO,OAvCM;AAwCb;;;;;;;AAOAL,aAAW,KA/CE,EA+CK;AAClB;;;;;;;AAOAF,aAAW,6BAvDE;AAwDb;;;;;;;AAOAuG,iBAAe,KA/DF;AAgEb;;;;;;;;AAQA9C,iBAAe,IAxEF;AAyEb;;;;;;;;AAQAtC,YAAU,IAjFG;AAkFb;;;;;;;;;;AAUAgH,cAAY,KA5FC;AA6Fb;;;;AAIAvD,WAAS;AACPa,gBAAY;AACVJ,eAAS,GADC;AAEVD,cAAQ,GAFE;AAGV4C,gBAAU,oBAHA;AAIVC,eAAS;AAJC,KADL;AAOP9C,SAAK;AACHE,eAAS,CADN;AAEHD,cAAQ,GAFL;AAGH4C,gBAAU,KAHP;AAIHC,eAAS;AAJN,KAPE;AAaP1C,WAAO;AACLF,eAAS,CADJ;AAELD,cAAQ,GAFH;AAGL4C,gBAAU,KAHL;AAILC,eAAS;AAJJ;AAbA,GAjGI;AAqHb;;;;AAIApD,eAAa;AACXY,gBAAY;AACVJ,eAAS,GADC;AAEVD,cAAQ,GAFE;AAGV4C,gBAAU,oBAHA;AAIVC,eAAS;AAJC,KADD;AAOX9C,SAAK;AACHE,eAAS,GADN;AAEHD,cAAQ,CAFL;AAGH4C,gBAAU,aAHP;AAIHC,eAAS;AAJN,KAPM;AAaX1C,WAAO;AACLF,eAAS,GADJ;AAELD,cAAQ,CAFH;AAGL4C,gBAAU,eAHL;AAILC,eAAS;AAJJ;AAbI,GAzHA;AA6Ib;;;;;;;;;;;;;AAaAlH,4YA1Ja;AAiKb;;;;;;KAjKa,CAuKT;AACJO,SAAO,OAxKM;AAyKb;;;;;AAKAN,eAAa,IA9KA;AA+Kb;;;;;;;;;;;;;;;;;;;;;AAqBAO,gBAAc,IApMD;AAqMb;;;;;;;AAOAI,wBAAsB;AA5MT,C","file":"bootstrap-colorpicker.js","sourcesContent":["(function webpackUniversalModuleDefinition(root, factory) {\n\tif(typeof exports === 'object' && typeof module === 'object')\n\t\tmodule.exports = factory(require(\"jQuery\"));\n\telse if(typeof define === 'function' && define.amd)\n\t\tdefine(\"bootstrap-colorpicker\", [\"jQuery\"], factory);\n\telse if(typeof exports === 'object')\n\t\texports[\"bootstrap-colorpicker\"] = factory(require(\"jQuery\"));\n\telse\n\t\troot[\"bootstrap-colorpicker\"] = factory(root[\"jQuery\"]);\n})(this, function(__WEBPACK_EXTERNAL_MODULE_0__) {\nreturn \n\n\n// WEBPACK FOOTER //\n// webpack/universalModuleDefinition"," \t// The module cache\n \tvar installedModules = {};\n\n \t// The require function\n \tfunction __webpack_require__(moduleId) {\n\n \t\t// Check if module is in cache\n \t\tif(installedModules[moduleId]) {\n \t\t\treturn installedModules[moduleId].exports;\n \t\t}\n \t\t// Create a new module (and put it into the cache)\n \t\tvar module = installedModules[moduleId] = {\n \t\t\ti: moduleId,\n \t\t\tl: false,\n \t\t\texports: {}\n \t\t};\n\n \t\t// Execute the module function\n \t\tmodules[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n\n \t\t// Flag the module as loaded\n \t\tmodule.l = true;\n\n \t\t// Return the exports of the module\n \t\treturn module.exports;\n \t}\n\n\n \t// expose the modules object (__webpack_modules__)\n \t__webpack_require__.m = modules;\n\n \t// expose the module cache\n \t__webpack_require__.c = installedModules;\n\n \t// define getter function for harmony exports\n \t__webpack_require__.d = function(exports, name, getter) {\n \t\tif(!__webpack_require__.o(exports, name)) {\n \t\t\tObject.defineProperty(exports, name, {\n \t\t\t\tconfigurable: false,\n \t\t\t\tenumerable: true,\n \t\t\t\tget: getter\n \t\t\t});\n \t\t}\n \t};\n\n \t// getDefaultExport function for compatibility with non-harmony modules\n \t__webpack_require__.n = function(module) {\n \t\tvar getter = module && module.__esModule ?\n \t\t\tfunction getDefault() { return module['default']; } :\n \t\t\tfunction getModuleExports() { return module; };\n \t\t__webpack_require__.d(getter, 'a', getter);\n \t\treturn getter;\n \t};\n\n \t// Object.prototype.hasOwnProperty.call\n \t__webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };\n\n \t// __webpack_public_path__\n \t__webpack_require__.p = \"\";\n\n \t// Load entry module and return exports\n \treturn __webpack_require__(__webpack_require__.s = 1);\n\n\n\n// WEBPACK FOOTER //\n// webpack/bootstrap 87597af6631bb2a6ee4d","module.exports = __WEBPACK_EXTERNAL_MODULE_0__;\n\n\n//////////////////\n// WEBPACK FOOTER\n// external \"jQuery\"\n// module id = 0\n// module chunks = 0 1","'use strict';\n\nimport Colorpicker from './Colorpicker';\nimport $ from 'jquery';\n\nlet plugin = 'colorpicker';\n\n$[plugin] = Colorpicker;\n\n$.fn[plugin] = function (option) {\n let apiArgs = Array.prototype.slice.call(arguments, 1),\n isSingleElement = (this.length === 1),\n returnValue = null;\n\n let $jq = this.each(function () {\n let $this = $(this),\n inst = $this.data(plugin),\n options = ((typeof option === 'object') ? option : {});\n\n if (!inst) {\n inst = new Colorpicker(this, options);\n $this.data(plugin, inst);\n }\n\n if (typeof option === 'string') {\n if ($.isFunction(inst[option])) {\n returnValue = inst[option].apply(inst, apiArgs);\n } else { // its a property ?\n if (apiArgs.length) {\n // set property\n inst[option] = apiArgs[0];\n }\n returnValue = inst[option];\n }\n } else {\n returnValue = $this;\n }\n });\n\n return isSingleElement ? returnValue : $jq;\n};\n\n$.fn[plugin].constructor = Colorpicker;\n\n\n\n// WEBPACK FOOTER //\n// ./src/js/jquery-plugin.js","'use strict';\n/**\n * @module\n */\n\nimport Color from './Color';\nimport defaults from './defaults';\nimport $ from 'jquery';\n\n/**\n * Colorpicker widget class\n */\nclass Colorpicker {\n /**\n * Color class\n *\n * @static\n * @type {Color}\n */\n static get Color() {\n return Color;\n }\n\n /**\n * color getter\n *\n * @type {Color|null}\n */\n get color() {\n return this.element.data('color');\n }\n\n /**\n * color setter\n *\n * @ignore\n * @param {Color|null} value\n */\n set color(value) {\n this.element.data('color', value);\n }\n\n /**\n * @fires create\n * @param {Object|String} element\n * @param {Object} options\n * @constructor\n */\n constructor(element, options) {\n /**\n * @type {*|jQuery}\n */\n this.element = $(element).addClass('colorpicker-element');\n /**\n * @type {defaults}\n */\n this.options = $.extend(true, {}, defaults, this.element.data(), options);\n /**\n * @type {*|jQuery}\n */\n this.component = this.options.component;\n this.component = (this.component !== false) ? this.element.find(this.component) : false;\n if (this.component && (this.component.length === 0)) {\n this.component = false;\n }\n /**\n * @type {*|jQuery}\n */\n this.container = (this.options.container === true) ? this.element : this.options.container;\n this.container = (this.container !== false) ? $(this.container) : false;\n /**\n * @type {*|String}\n * @private\n */\n this.currentSlider = null;\n /**\n * @type {{left: number, top: number}}\n * @private\n */\n this.mousePointer = {\n left: 0,\n top: 0\n };\n\n // Is the element an input? Should we search inside for any input?\n /**\n * @type {*|jQuery}\n */\n this.input = this.element.is('input') ? this.element : (this.options.input ?\n this.element.find(this.options.input) : false);\n\n if (this.input && (this.input.length === 0)) {\n this.input = false;\n }\n\n this.color = this.createColor(this.options.color !== false ? this.options.color : this.getValue());\n\n /**\n * @type {boolean}\n * @private\n */\n this.disabled = false;\n\n // Setup picker\n let $picker = this.picker = $(this.options.template);\n\n if (this.options.customClass) {\n $picker.addClass(this.options.customClass);\n }\n if (this.options.inline) {\n $picker.addClass('colorpicker-inline colorpicker-visible');\n } else {\n $picker.addClass('colorpicker-hidden');\n }\n if (this.options.horizontal) {\n $picker.addClass('colorpicker-horizontal');\n }\n\n if (\n (this.options.useAlpha || (this.hasColor() && this.color.hasTransparency())) &&\n (this.options.useAlpha !== false)\n ) {\n this.options.useAlpha = true;\n $picker.addClass('colorpicker-with-alpha');\n }\n\n if (this.options.align === 'right') {\n $picker.addClass('colorpicker-right');\n }\n if (this.options.inline === true) {\n $picker.addClass('colorpicker-no-arrow');\n }\n if (this.options.colorPalette) {\n let colorpicker = this,\n paletteContainer = colorpicker.picker.find('.colorpicker-palette'),\n isAliased = (this.options.useColorPaletteNames === true);\n\n if (paletteContainer.length > 0) {\n $.each(this.options.colorPalette, function (name, value) {\n let $btn = $('')\n .addClass('colorpicker-palette-color')\n .css('background-color', value)\n .attr('data-name', name)\n .attr('data-value', value)\n .attr('title', `${name}: ${value}`);\n\n $btn.on('mousedown.colorpicker touchstart.colorpicker', function (event) {\n event.preventDefault();\n colorpicker.setValue(isAliased ? $(this).data('name') : $(this).data('value'));\n });\n paletteContainer.append($btn);\n });\n paletteContainer.show().addClass('colorpicker-visible');\n }\n }\n\n // Prevent closing the colorpicker when clicking on itself\n $picker.on('mousedown.colorpicker touchstart.colorpicker', $.proxy(function (e) {\n if (e.target === e.currentTarget) {\n e.preventDefault();\n }\n }, this));\n\n // Bind click/tap events on the sliders\n $picker.find('.colorpicker-saturation, .colorpicker-hue, .colorpicker-alpha')\n .on('mousedown.colorpicker touchstart.colorpicker', $.proxy(this.mousedown, this));\n\n $picker.appendTo(this.container ? this.container : $('body'));\n\n // Bind other events\n if (this.input !== false) {\n this.input.on({\n 'keyup.colorpicker': $.proxy(this.keyup, this)\n });\n this.input.on({\n 'change.colorpicker': $.proxy(this.change, this)\n });\n if (this.component === false) {\n this.element.on({\n 'focus.colorpicker': $.proxy(this.show, this)\n });\n }\n if (this.options.inline === false) {\n this.element.on({\n 'focusout.colorpicker': $.proxy(this.hide, this)\n });\n }\n }\n\n if (this.component !== false) {\n this.component.on({\n 'click.colorpicker': $.proxy(this.show, this)\n });\n }\n\n if ((this.input === false) && (this.component === false)) {\n this.element.on({\n 'click.colorpicker': $.proxy(this.show, this)\n });\n }\n\n // for HTML5 input[type='color']\n if ((this.input !== false) && (this.component !== false) && (this.input.attr('type') === 'color')) {\n this.input.on({\n 'click.colorpicker': $.proxy(this.show, this),\n 'focus.colorpicker': $.proxy(this.show, this)\n });\n }\n\n this.update(this.options.color !== false);\n\n $($.proxy(function () {\n /**\n * (Colorpicker) When the Colorpicker instance has been created and the DOM is ready.\n *\n * @event create\n */\n this.element.trigger({\n type: 'create',\n colorpicker: this,\n color: this.color\n });\n }, this));\n }\n\n /**\n * Destroys the current instance\n *\n * @fires destroy\n */\n destroy() {\n this.picker.remove();\n this.element.removeData('colorpicker', 'color').off('.colorpicker');\n if (this.input !== false) {\n this.input.off('.colorpicker');\n }\n if (this.component !== false) {\n this.component.off('.colorpicker');\n }\n this.element.removeClass('colorpicker-element');\n\n /**\n * (Colorpicker) When the instance is destroyed with all events unbound.\n *\n * @event destroy\n */\n this.element.trigger({\n type: 'destroy',\n colorpicker: this,\n color: this.color\n });\n }\n\n /**\n * Returns true if the current color object is an instance of Color, false otherwise.\n * @returns {boolean}\n */\n hasColor() {\n return this.color instanceof Color;\n }\n\n get format() {\n if (this.options.format) {\n return this.options.format;\n }\n\n if (this.hasColor() && this.color.hasTransparency() && this.color.format.match(/^hex/)) {\n return this.options.enableHex8 ? 'hex8' : 'rgba';\n }\n\n return null;\n }\n\n /**\n * Formatted color string, translated to the palette alias if available and with the other formatting options applied\n * (e.g. useHashPrefix)\n * @returns {String}\n */\n getColorString() {\n let str = this.color.toString(this.format);\n\n if (this.options.useHashPrefix === false) {\n str = str.replace(/^#/g, '');\n }\n\n return this.getPaletteColorName(str, this.getPaletteColorName('#' + str, str));\n }\n\n /**\n * Formatted color string, suitable for CSS\n * @returns {String}\n */\n getCssColorString() {\n return this.color.toString(this.format);\n }\n\n /**\n * If the widget is not inside a container or inline, rearranges its position relative to its element offset.\n *\n * @returns {boolean} Returns false if the widget is inside a container or inline, true otherwise\n */\n reposition() {\n if (this.options.inline !== false || this.options.container) {\n return false;\n }\n let type = this.container && this.container[0] !== window.document.body ? 'position' : 'offset';\n let element = this.component || this.element;\n let offset = element[type]();\n\n if (this.options.align === 'right') {\n offset.left -= this.picker.outerWidth() - element.outerWidth();\n }\n this.picker.css({\n top: offset.top + element.outerHeight(),\n left: offset.left\n });\n return true;\n }\n\n /**\n * Shows the colorpicker widget if hidden.\n * If the input is disabled this call will be ignored.\n *\n * @fires showPicker\n * @param {Event} [e]\n */\n show(e) {\n if (this.isDisabled()) {\n // Don't show the widget if it's disabled (the input)\n return;\n }\n this.picker.addClass('colorpicker-visible').removeClass('colorpicker-hidden');\n this.reposition();\n $(window).on('resize.colorpicker', $.proxy(this.reposition, this));\n\n if (e && (!this.hasInput() || this.input.attr('type') === 'color')) {\n if (e.stopPropagation && e.preventDefault) {\n e.stopPropagation();\n e.preventDefault();\n }\n }\n if ((this.component || !this.input) && (this.options.inline === false)) {\n $(window.document).on({\n 'mousedown.colorpicker': $.proxy(this.hide, this)\n });\n }\n\n /**\n * (Colorpicker) When show() is called and the widget can be shown.\n *\n * @event showPicker\n */\n this.element.trigger({\n type: 'showPicker',\n colorpicker: this,\n color: this.color\n });\n }\n\n /**\n * Hides the colorpicker widget.\n * Hide is prevented when it is triggered by an event whose target element has been clicked/touched.\n *\n * @fires hidePicker\n * @param {Event} [e]\n * @returns {boolean} True if hidden, false if prevented.\n */\n hide(e) {\n if ((typeof e !== 'undefined') && e.target) {\n // Prevent hide if triggered by an event and an element inside the colorpicker has been clicked/touched\n if (\n $(e.currentTarget).parents('.colorpicker').length > 0 ||\n $(e.target).parents('.colorpicker').length > 0\n ) {\n return false;\n }\n }\n this.picker.addClass('colorpicker-hidden').removeClass('colorpicker-visible');\n $(window).off('resize.colorpicker', this.reposition);\n $(window.document).off({\n 'mousedown.colorpicker': this.hide\n });\n this.update();\n\n /**\n * (Colorpicker) When hide() is called and the widget can be hidden.\n *\n * @event hidePicker\n */\n this.element.trigger({\n type: 'hidePicker',\n colorpicker: this,\n color: this.color\n });\n return true;\n }\n\n /**\n * If the input element is present, it updates the value with the current color object color string.\n * If value is set, this method fires a \"change\" event on the input element.\n *\n * @fires change\n */\n updateInput() {\n if (this.input !== false) {\n let val = this.getColorString();\n\n this.input.prop('value', val);\n\n /**\n * (Input) Triggered on the input element when a new color is selected.\n *\n * @event change\n */\n this.input.trigger({\n type: 'change',\n colorpicker: this,\n color: this.color,\n value: val\n });\n }\n }\n\n /**\n * Changes the color adjustment bars using the current color object information.\n */\n updatePicker() {\n if (!this.hasColor()) {\n return;\n }\n\n let vertical = (this.options.horizontal === false),\n sl = vertical ? this.options.sliders : this.options.slidersHorz;\n\n let saturationGuide = this.picker.find('.colorpicker-saturation .colorpicker-guide'),\n hueGuide = this.picker.find('.colorpicker-hue .colorpicker-guide'),\n alphaGuide = this.picker.find('.colorpicker-alpha .colorpicker-guide');\n\n let hsva = this.color.hsvaRatio;\n\n if (hueGuide.length) {\n hueGuide.css(vertical ? 'top' : 'left', (vertical ? sl.hue.maxTop : sl.hue.maxLeft) * (1 - hsva.h));\n }\n\n if (alphaGuide.length) {\n alphaGuide.css(vertical ? 'top' : 'left', (vertical ? sl.alpha.maxTop : sl.alpha.maxLeft) * (1 - hsva.a));\n }\n\n if (saturationGuide.length) {\n saturationGuide.css({\n 'top': sl.saturation.maxTop - hsva.v * sl.saturation.maxTop,\n 'left': hsva.s * sl.saturation.maxLeft\n });\n }\n\n this.picker.find('.colorpicker-saturation')\n .css('backgroundColor', this.color.getHueOnlyCopy().toHexString()); // we only need hue\n\n this.picker.find('.colorpicker-alpha')\n .css('backgroundColor', this.color.toString('hex6')); // we don't need alpha\n\n this.picker.find('.colorpicker-color, .colorpicker-color div')\n .css('backgroundColor', this.color.toRgbString()); // we need all the channels\n }\n\n /**\n * If the component element is present, its background color is updated\n */\n updateComponent() {\n if (!this.hasColor()) {\n return;\n }\n\n if (this.component !== false) {\n let icn = this.component.find('i').eq(0);\n\n if (icn.length > 0) {\n icn.css({\n 'backgroundColor': this.getCssColorString()\n });\n } else {\n this.component.css({\n 'backgroundColor': this.getCssColorString()\n });\n }\n }\n }\n\n /**\n * Updated the component color, the input value and the widget if a color is present.\n *\n * If force is true, it is updated anyway.\n *\n * @param {boolean} force\n */\n update(force) {\n if (this.hasColor() && ((this.getValue(false) !== false) || (force === true))) {\n // Update only if the current value (from input or data) is not empty\n this.updateComponent();\n this.updateInput();\n this.updatePicker();\n }\n }\n\n /**\n * Returns the color string from the input value or the 'data-color' attribute of the input or element.\n * If empty, it returns the defaultValue parameter.\n *\n * @param {String|*} [defaultValue]\n * @returns {String|*}\n */\n getValue(defaultValue = null) {\n defaultValue = (typeof defaultValue === 'undefined') ? this.options.fallbackColor : defaultValue;\n let candidates = [], val = false;\n\n if (this.hasInput()) {\n candidates.push(this.input.val());\n candidates.push(this.input.data('color'));\n }\n candidates.push(this.element.data('color'));\n\n candidates.map((item) => {\n if (item && (val === false)) {\n val = item;\n }\n });\n\n val = ((val === false) ? defaultValue : val);\n\n if (val instanceof Color) {\n return val.toString(this.format);\n }\n\n return val;\n }\n\n /**\n * Sets the color manually\n *\n * @fires changeColor\n * @param {String|Color} val\n */\n setValue(val) {\n this.color = this.createColor(val);\n this.update(true);\n\n /**\n * (Colorpicker) When the color is set programmatically with setValue().\n *\n * @event changeColor\n */\n this.element.trigger({\n type: 'changeColor',\n colorpicker: this,\n color: this.color,\n value: val\n });\n }\n\n /**\n * Creates a new color using the widget instance options (fallbackColor, format).\n *\n * @param {*} val\n * @returns {Color}\n */\n createColor(val) {\n val = val ? val : null;\n let fallback = this.options.fallbackColor ? this.options.fallbackColor : (this.hasColor() ? this.color.hsva : null);\n\n val = this.getPaletteColor(val, val);\n fallback = this.getPaletteColor(fallback, fallback);\n\n let color = new Color(val, {fallbackColor: fallback, format: this.format});\n\n if (color.hasTransparency() && !this.options.useAlpha) {\n // alpha is disabled\n return color.getOpaqueCopy();\n }\n\n return color;\n }\n\n /**\n * Given a colorName (alias), returns the corresponding color code or defaultValue.\n *\n * @param {String} colorName\n * @param {*} defaultValue\n * @returns {*}\n */\n getPaletteColor(colorName, defaultValue = null) {\n if (!(typeof colorName === 'string') || !this.options.colorPalette) {\n return defaultValue;\n }\n if (this.options.colorPalette.hasOwnProperty(colorName)) {\n return this.options.colorPalette[colorName];\n }\n return defaultValue;\n }\n\n /**\n * Given a colorValue, returns the corresponding color name (alias) or defaultValue.\n *\n * @param {String} colorValue\n * @param {*} defaultValue\n * @returns {*}\n */\n getPaletteColorName(colorValue, defaultValue = null) {\n if (!(typeof colorValue === 'string') || !this.options.colorPalette) {\n return defaultValue;\n }\n for (let colorName in this.options.colorPalette) {\n if (!this.options.colorPalette.hasOwnProperty(colorName)) {\n continue;\n }\n if (this.options.colorPalette[colorName].toLowerCase() === colorValue.toLowerCase()) {\n return colorName;\n }\n }\n return defaultValue;\n }\n\n /**\n * Returns true if the widget has an associated input element, false otherwise\n * @returns {boolean}\n */\n hasInput() {\n return (this.input !== false);\n }\n\n /**\n * Returns true if this instance is disabled\n * @returns {boolean}\n */\n isDisabled() {\n return this.disabled === true;\n }\n\n /**\n * Disables the widget and the input if any\n *\n * @fires disable\n * @returns {boolean}\n */\n disable() {\n if (this.hasInput()) {\n this.input.prop('disabled', true);\n }\n this.disabled = true;\n\n /**\n * (Colorpicker) When the widget has been disabled.\n *\n * @event disable\n */\n this.element.trigger({\n type: 'disable',\n colorpicker: this,\n color: this.color\n });\n return true;\n }\n\n /**\n * Enables the widget and the input if any\n *\n * @fires enable\n * @returns {boolean}\n */\n enable() {\n if (this.hasInput()) {\n this.input.prop('disabled', false);\n }\n this.disabled = false;\n\n /**\n * (Colorpicker) When the widget has been enabled.\n *\n * @event enable\n */\n this.element.trigger({\n type: 'enable',\n colorpicker: this,\n color: this.color\n });\n return true;\n }\n\n /**\n * Function triggered when clicking in one of the color adjustment bars\n *\n * @fires mousemove\n * @param {Event} e\n * @returns {boolean}\n */\n mousedown(e) {\n if (!e.pageX && !e.pageY && e.originalEvent && e.originalEvent.touches) {\n e.pageX = e.originalEvent.touches[0].pageX;\n e.pageY = e.originalEvent.touches[0].pageY;\n }\n e.stopPropagation();\n e.preventDefault();\n\n let target = $(e.target);\n\n // detect the slider and set the limits and callbacks\n let zone = target.closest('div');\n let sl = this.options.horizontal ? this.options.slidersHorz : this.options.sliders;\n\n if (!zone.is('.colorpicker')) {\n if (zone.is('.colorpicker-saturation')) {\n this.currentSlider = $.extend({}, sl.saturation);\n } else if (zone.is('.colorpicker-hue')) {\n this.currentSlider = $.extend({}, sl.hue);\n } else if (zone.is('.colorpicker-alpha')) {\n this.currentSlider = $.extend({}, sl.alpha);\n } else {\n return false;\n }\n let offset = zone.offset();\n // reference to guide's style\n\n this.currentSlider.guide = zone.find('.colorpicker-guide')[0].style;\n this.currentSlider.left = e.pageX - offset.left;\n this.currentSlider.top = e.pageY - offset.top;\n this.mousePointer = {\n left: e.pageX,\n top: e.pageY\n };\n\n /**\n * (window.document) Triggered on mousedown for the document object,\n * so the color adjustment guide is moved to the clicked position.\n *\n * @event mousemove\n */\n $(window.document).on({\n 'mousemove.colorpicker': $.proxy(this.mousemove, this),\n 'touchmove.colorpicker': $.proxy(this.mousemove, this),\n 'mouseup.colorpicker': $.proxy(this.mouseup, this),\n 'touchend.colorpicker': $.proxy(this.mouseup, this)\n }).trigger('mousemove');\n }\n return false;\n }\n\n /**\n * Function triggered when dragging a guide inside one of the color adjustment bars.\n *\n * @fires changeColor\n * @param {Event} e\n * @returns {boolean}\n */\n mousemove(e) {\n if (!this.hasColor()) {\n return null;\n }\n\n if (!e.pageX && !e.pageY && e.originalEvent && e.originalEvent.touches) {\n e.pageX = e.originalEvent.touches[0].pageX;\n e.pageY = e.originalEvent.touches[0].pageY;\n }\n e.stopPropagation();\n e.preventDefault();\n let left = Math.max(\n 0,\n Math.min(\n this.currentSlider.maxLeft,\n this.currentSlider.left + ((e.pageX || this.mousePointer.left) - this.mousePointer.left)\n )\n );\n let top = Math.max(\n 0,\n Math.min(\n this.currentSlider.maxTop,\n this.currentSlider.top + ((e.pageY || this.mousePointer.top) - this.mousePointer.top)\n )\n );\n\n this.currentSlider.guide.left = left + 'px';\n this.currentSlider.guide.top = top + 'px';\n if (this.currentSlider.callLeft) {\n this.color[this.currentSlider.callLeft].call(this.color, left / this.currentSlider.maxLeft);\n }\n if (this.currentSlider.callTop) {\n this.color[this.currentSlider.callTop].call(this.color, top / this.currentSlider.maxTop);\n }\n\n this.update(true);\n\n /**\n * (Colorpicker) When the color guides have been dragged.\n *\n * @event changeColor\n */\n this.element.trigger({\n type: 'changeColor',\n colorpicker: this,\n color: this.color,\n value: this.getColorString()\n });\n return false;\n }\n\n /**\n * Function triggered when releasing the click in one of the color adjustment bars.\n *\n * @param {Event} e\n * @returns {boolean}\n */\n mouseup(e) {\n e.stopPropagation();\n e.preventDefault();\n $(window.document).off({\n 'mousemove.colorpicker': this.mousemove,\n 'touchmove.colorpicker': this.mousemove,\n 'mouseup.colorpicker': this.mouseup,\n 'touchend.colorpicker': this.mouseup\n });\n return false;\n }\n\n /**\n * Function triggered when the input has changed, so the colorpicker gets updated.\n *\n * @param {Event} e\n * @returns {boolean}\n */\n change(e) {\n this.keyup(e);\n }\n\n /**\n * Function triggered after a keyboard key has been released.\n *\n * @fires changeColor\n * @param {Event} e\n * @returns {boolean}\n */\n keyup(e) {\n this.color = this.createColor(this.input.val());\n if (this.getValue(false) !== false) {\n this.updateComponent();\n this.updatePicker();\n }\n\n /**\n * (Colorpicker) When a keyboard key has been released.\n *\n * @event changeColor\n */\n this.element.trigger({\n type: 'changeColor',\n colorpicker: this,\n color: this.color,\n value: this.input.val()\n });\n }\n}\n\nexport default Colorpicker;\n\n\n\n// WEBPACK FOOTER //\n// ./src/js/Colorpicker.js","'use strict';\n/**\n * @module\n */\n\nimport tinycolor from 'tinycolor2';\n\nlet defaultFallbackColor = '#000000';\nlet defaultFallbackFormat = null;\n\nfunction unwrapColor(color) {\n if (color instanceof tinycolor) {\n return {\n r: color._r,\n g: color._g,\n b: color._b,\n a: color._a\n };\n }\n return color;\n}\n\n/**\n * Color manipulation class.\n */\nclass Color extends tinycolor {\n /**\n * Identifier of the color instance.\n *\n * @type {int}\n * @readonly\n */\n get id() {\n return this._tc_id;\n }\n\n /**\n * Format of the parsed color.\n *\n * @type {String}\n * @readonly\n */\n get format() {\n return this._format;\n }\n\n /**\n * All options of the current instance.\n *\n * @type {{format: String, gradientType: String, fallbackColor: *}}\n * @readonly\n */\n get options() {\n return {\n format: this._format,\n gradientType: this._gradientType,\n fallbackColor: this._fallbackColor\n };\n }\n\n /**\n * @returns {{h, s, v, a}}\n */\n get hsva() {\n return this.toHsv();\n }\n\n /**\n * @returns {{h, s, v, a}}\n */\n get hsvaRatio() {\n let hsv = this.hsva;\n\n return {\n h: hsv.h / 360,\n s: hsv.s,\n v: hsv.v,\n a: hsv.a\n };\n }\n\n /**\n * foo bar\n * @param {Color|*} color\n * @param {{fallbackColor, format}} [options]\n * @constructor\n */\n constructor(color, options = {fallbackColor: defaultFallbackColor, format: null}) {\n super(unwrapColor(color), options);\n\n /**\n * @type {Color|*}\n */\n this._originalInput = color;\n\n /**\n * @type {Color|*}\n */\n this._fallbackColor = unwrapColor(options.fallbackColor);\n\n this._validOrFallback();\n }\n\n /**\n * Imports all variables of the given color to this instance, excepting `_tc_id`.\n * @param {Color} color\n */\n importColor(color) {\n if (!color instanceof tinycolor) {\n throw new Error('Color.importColor: The color argument is not an instance of tinycolor.');\n }\n this._originalInput = color._originalInput;\n this._r = color._r;\n this._g = color._g;\n this._b = color._b;\n this._a = color._a;\n this._roundA = color._roundA;\n this._format = color._format;\n this._gradientType = color._gradientType;\n this._ok = color._ok;\n // omit color._tc_id import\n }\n\n /**\n * Imports the _r, _g, _b, _a and _ok variables of the given color to this instance.\n * @param {Color} color\n */\n importRgb(color) {\n if (!color instanceof tinycolor) {\n throw new Error('Color.importColor: The color argument is not an instance of tinycolor.');\n }\n this._r = color._r;\n this._g = color._g;\n this._b = color._b;\n this._a = color._a;\n this._ok = color._ok;\n }\n\n /**\n * @param {{h,s,v,a}} hsv\n */\n importHsv(hsv) {\n this.importRgb(new Color(hsv, this.options));\n }\n\n /**\n * If the current color is not valid, applies the fallback and,\n * in case the fallback is neither valid, applies the default fallback.\n *\n * @returns {boolean}\n */\n _validOrFallback() {\n if (!this.isValid()) {\n let fallbackOptions = Object.assign({}, this.options);\n\n if (!fallbackOptions.format) {\n fallbackOptions.format = defaultFallbackFormat;\n }\n // given color is invalid\n this.importColor(tinycolor(this._fallbackColor, fallbackOptions));\n\n if (!this.isValid()) {\n // fallback color is invalid\n this.importColor(tinycolor(defaultFallbackColor, fallbackOptions));\n }\n return false;\n }\n return true;\n }\n\n /**\n * @returns {Color}\n */\n getCopy() {\n return new Color(this.hsva, this.options);\n }\n\n /**\n * @returns {Color}\n */\n getHueOnlyCopy() {\n return new Color(Object.assign({}, this.hsva, {s: 100, v: 100}), this.options);\n }\n\n /**\n * @returns {Color}\n */\n getOpaqueCopy() {\n return new Color(Object.assign({}, this.hsva, {a: 1}), this.options);\n }\n\n /**\n * @param {number} h Degrees from 0 to 360\n */\n setHue(h) {\n this.importHsv(Object.assign({}, this.hsva, {h: h}));\n }\n\n /**\n * @param {number} s Percent from 0 o 100\n */\n setSaturation(s) {\n this.importHsv(Object.assign({}, this.hsva, {s: s}));\n }\n\n /**\n * @param {number} v Percent from 0 o 100\n */\n setBrightness(v) {\n this.importHsv(Object.assign({}, this.hsva, {v: v}));\n }\n\n /**\n * @param {number} h Ratio from 0.0 to 1.0\n */\n setHueRatio(h) {\n if (h === 0) {\n return;\n }\n this.setHue((1 - h) * 360);\n }\n\n /**\n * @param {number} s Ratio from 0.0 to 1.0\n */\n setSaturationRatio(s) {\n this.setSaturation(s);\n }\n\n /**\n * @param {number} v Ratio from 0.0 to 1.0\n */\n setBrightnessRatio(v) {\n this.setBrightness(1 - v);\n }\n\n /**\n * @param {number} a Ratio from 0.0 to 1.0\n */\n setAlphaRatio(a) {\n this.setAlpha(1 - a);\n }\n\n /**\n * @returns {boolean}\n */\n isTransparent() {\n return this._a === 0;\n }\n\n /**\n * @returns {boolean}\n */\n hasTransparency() {\n return this._a !== 1;\n }\n\n /**\n * @param {string|null} [format] One of \"rgb\", \"prgb\", \"hex\"/\"hex6\", \"hex3\", \"hex8\", \"hsl\", \"hsv\"/\"hsb\", \"name\"\n * @returns {String}\n */\n toString(format = null) {\n format = (format ? format : this.format).replace(/a$/g, '').toLowerCase();\n\n let colorStr = super.toString(format);\n\n if (format.match(/hex/gi) && !format.match(/hex8/gi)) {\n if (this.isTransparent() && (this._r === 0) && (this._g === 0) && (this._b === 0)) {\n return 'transparent';\n }\n\n if (Color.names.hasOwnProperty(colorStr)) {\n return colorStr;\n }\n }\n\n return colorStr;\n }\n}\n\nexport default Color;\n\n\n\n// WEBPACK FOOTER //\n// ./src/js/Color.js","// TinyColor v1.4.1\n// https://github.com/bgrins/TinyColor\n// Brian Grinstead, MIT License\n\n(function(Math) {\n\nvar trimLeft = /^\\s+/,\n trimRight = /\\s+$/,\n tinyCounter = 0,\n mathRound = Math.round,\n mathMin = Math.min,\n mathMax = Math.max,\n mathRandom = Math.random;\n\nfunction tinycolor (color, opts) {\n\n color = (color) ? color : '';\n opts = opts || { };\n\n // If input is already a tinycolor, return itself\n if (color instanceof tinycolor) {\n return color;\n }\n // If we are called as a function, call using new instead\n if (!(this instanceof tinycolor)) {\n return new tinycolor(color, opts);\n }\n\n var rgb = inputToRGB(color);\n this._originalInput = color,\n this._r = rgb.r,\n this._g = rgb.g,\n this._b = rgb.b,\n this._a = rgb.a,\n this._roundA = mathRound(100*this._a) / 100,\n this._format = opts.format || rgb.format;\n this._gradientType = opts.gradientType;\n\n // Don't let the range of [0,255] come back in [0,1].\n // Potentially lose a little bit of precision here, but will fix issues where\n // .5 gets interpreted as half of the total, instead of half of 1\n // If it was supposed to be 128, this was already taken care of by `inputToRgb`\n if (this._r < 1) { this._r = mathRound(this._r); }\n if (this._g < 1) { this._g = mathRound(this._g); }\n if (this._b < 1) { this._b = mathRound(this._b); }\n\n this._ok = rgb.ok;\n this._tc_id = tinyCounter++;\n}\n\ntinycolor.prototype = {\n isDark: function() {\n return this.getBrightness() < 128;\n },\n isLight: function() {\n return !this.isDark();\n },\n isValid: function() {\n return this._ok;\n },\n getOriginalInput: function() {\n return this._originalInput;\n },\n getFormat: function() {\n return this._format;\n },\n getAlpha: function() {\n return this._a;\n },\n getBrightness: function() {\n //http://www.w3.org/TR/AERT#color-contrast\n var rgb = this.toRgb();\n return (rgb.r * 299 + rgb.g * 587 + rgb.b * 114) / 1000;\n },\n getLuminance: function() {\n //http://www.w3.org/TR/2008/REC-WCAG20-20081211/#relativeluminancedef\n var rgb = this.toRgb();\n var RsRGB, GsRGB, BsRGB, R, G, B;\n RsRGB = rgb.r/255;\n GsRGB = rgb.g/255;\n BsRGB = rgb.b/255;\n\n if (RsRGB <= 0.03928) {R = RsRGB / 12.92;} else {R = Math.pow(((RsRGB + 0.055) / 1.055), 2.4);}\n if (GsRGB <= 0.03928) {G = GsRGB / 12.92;} else {G = Math.pow(((GsRGB + 0.055) / 1.055), 2.4);}\n if (BsRGB <= 0.03928) {B = BsRGB / 12.92;} else {B = Math.pow(((BsRGB + 0.055) / 1.055), 2.4);}\n return (0.2126 * R) + (0.7152 * G) + (0.0722 * B);\n },\n setAlpha: function(value) {\n this._a = boundAlpha(value);\n this._roundA = mathRound(100*this._a) / 100;\n return this;\n },\n toHsv: function() {\n var hsv = rgbToHsv(this._r, this._g, this._b);\n return { h: hsv.h * 360, s: hsv.s, v: hsv.v, a: this._a };\n },\n toHsvString: function() {\n var hsv = rgbToHsv(this._r, this._g, this._b);\n var h = mathRound(hsv.h * 360), s = mathRound(hsv.s * 100), v = mathRound(hsv.v * 100);\n return (this._a == 1) ?\n \"hsv(\" + h + \", \" + s + \"%, \" + v + \"%)\" :\n \"hsva(\" + h + \", \" + s + \"%, \" + v + \"%, \"+ this._roundA + \")\";\n },\n toHsl: function() {\n var hsl = rgbToHsl(this._r, this._g, this._b);\n return { h: hsl.h * 360, s: hsl.s, l: hsl.l, a: this._a };\n },\n toHslString: function() {\n var hsl = rgbToHsl(this._r, this._g, this._b);\n var h = mathRound(hsl.h * 360), s = mathRound(hsl.s * 100), l = mathRound(hsl.l * 100);\n return (this._a == 1) ?\n \"hsl(\" + h + \", \" + s + \"%, \" + l + \"%)\" :\n \"hsla(\" + h + \", \" + s + \"%, \" + l + \"%, \"+ this._roundA + \")\";\n },\n toHex: function(allow3Char) {\n return rgbToHex(this._r, this._g, this._b, allow3Char);\n },\n toHexString: function(allow3Char) {\n return '#' + this.toHex(allow3Char);\n },\n toHex8: function(allow4Char) {\n return rgbaToHex(this._r, this._g, this._b, this._a, allow4Char);\n },\n toHex8String: function(allow4Char) {\n return '#' + this.toHex8(allow4Char);\n },\n toRgb: function() {\n return { r: mathRound(this._r), g: mathRound(this._g), b: mathRound(this._b), a: this._a };\n },\n toRgbString: function() {\n return (this._a == 1) ?\n \"rgb(\" + mathRound(this._r) + \", \" + mathRound(this._g) + \", \" + mathRound(this._b) + \")\" :\n \"rgba(\" + mathRound(this._r) + \", \" + mathRound(this._g) + \", \" + mathRound(this._b) + \", \" + this._roundA + \")\";\n },\n toPercentageRgb: function() {\n return { r: mathRound(bound01(this._r, 255) * 100) + \"%\", g: mathRound(bound01(this._g, 255) * 100) + \"%\", b: mathRound(bound01(this._b, 255) * 100) + \"%\", a: this._a };\n },\n toPercentageRgbString: function() {\n return (this._a == 1) ?\n \"rgb(\" + mathRound(bound01(this._r, 255) * 100) + \"%, \" + mathRound(bound01(this._g, 255) * 100) + \"%, \" + mathRound(bound01(this._b, 255) * 100) + \"%)\" :\n \"rgba(\" + mathRound(bound01(this._r, 255) * 100) + \"%, \" + mathRound(bound01(this._g, 255) * 100) + \"%, \" + mathRound(bound01(this._b, 255) * 100) + \"%, \" + this._roundA + \")\";\n },\n toName: function() {\n if (this._a === 0) {\n return \"transparent\";\n }\n\n if (this._a < 1) {\n return false;\n }\n\n return hexNames[rgbToHex(this._r, this._g, this._b, true)] || false;\n },\n toFilter: function(secondColor) {\n var hex8String = '#' + rgbaToArgbHex(this._r, this._g, this._b, this._a);\n var secondHex8String = hex8String;\n var gradientType = this._gradientType ? \"GradientType = 1, \" : \"\";\n\n if (secondColor) {\n var s = tinycolor(secondColor);\n secondHex8String = '#' + rgbaToArgbHex(s._r, s._g, s._b, s._a);\n }\n\n return \"progid:DXImageTransform.Microsoft.gradient(\"+gradientType+\"startColorstr=\"+hex8String+\",endColorstr=\"+secondHex8String+\")\";\n },\n toString: function(format) {\n var formatSet = !!format;\n format = format || this._format;\n\n var formattedString = false;\n var hasAlpha = this._a < 1 && this._a >= 0;\n var needsAlphaFormat = !formatSet && hasAlpha && (format === \"hex\" || format === \"hex6\" || format === \"hex3\" || format === \"hex4\" || format === \"hex8\" || format === \"name\");\n\n if (needsAlphaFormat) {\n // Special case for \"transparent\", all other non-alpha formats\n // will return rgba when there is transparency.\n if (format === \"name\" && this._a === 0) {\n return this.toName();\n }\n return this.toRgbString();\n }\n if (format === \"rgb\") {\n formattedString = this.toRgbString();\n }\n if (format === \"prgb\") {\n formattedString = this.toPercentageRgbString();\n }\n if (format === \"hex\" || format === \"hex6\") {\n formattedString = this.toHexString();\n }\n if (format === \"hex3\") {\n formattedString = this.toHexString(true);\n }\n if (format === \"hex4\") {\n formattedString = this.toHex8String(true);\n }\n if (format === \"hex8\") {\n formattedString = this.toHex8String();\n }\n if (format === \"name\") {\n formattedString = this.toName();\n }\n if (format === \"hsl\") {\n formattedString = this.toHslString();\n }\n if (format === \"hsv\") {\n formattedString = this.toHsvString();\n }\n\n return formattedString || this.toHexString();\n },\n clone: function() {\n return tinycolor(this.toString());\n },\n\n _applyModification: function(fn, args) {\n var color = fn.apply(null, [this].concat([].slice.call(args)));\n this._r = color._r;\n this._g = color._g;\n this._b = color._b;\n this.setAlpha(color._a);\n return this;\n },\n lighten: function() {\n return this._applyModification(lighten, arguments);\n },\n brighten: function() {\n return this._applyModification(brighten, arguments);\n },\n darken: function() {\n return this._applyModification(darken, arguments);\n },\n desaturate: function() {\n return this._applyModification(desaturate, arguments);\n },\n saturate: function() {\n return this._applyModification(saturate, arguments);\n },\n greyscale: function() {\n return this._applyModification(greyscale, arguments);\n },\n spin: function() {\n return this._applyModification(spin, arguments);\n },\n\n _applyCombination: function(fn, args) {\n return fn.apply(null, [this].concat([].slice.call(args)));\n },\n analogous: function() {\n return this._applyCombination(analogous, arguments);\n },\n complement: function() {\n return this._applyCombination(complement, arguments);\n },\n monochromatic: function() {\n return this._applyCombination(monochromatic, arguments);\n },\n splitcomplement: function() {\n return this._applyCombination(splitcomplement, arguments);\n },\n triad: function() {\n return this._applyCombination(triad, arguments);\n },\n tetrad: function() {\n return this._applyCombination(tetrad, arguments);\n }\n};\n\n// If input is an object, force 1 into \"1.0\" to handle ratios properly\n// String input requires \"1.0\" as input, so 1 will be treated as 1\ntinycolor.fromRatio = function(color, opts) {\n if (typeof color == \"object\") {\n var newColor = {};\n for (var i in color) {\n if (color.hasOwnProperty(i)) {\n if (i === \"a\") {\n newColor[i] = color[i];\n }\n else {\n newColor[i] = convertToPercentage(color[i]);\n }\n }\n }\n color = newColor;\n }\n\n return tinycolor(color, opts);\n};\n\n// Given a string or object, convert that input to RGB\n// Possible string inputs:\n//\n// \"red\"\n// \"#f00\" or \"f00\"\n// \"#ff0000\" or \"ff0000\"\n// \"#ff000000\" or \"ff000000\"\n// \"rgb 255 0 0\" or \"rgb (255, 0, 0)\"\n// \"rgb 1.0 0 0\" or \"rgb (1, 0, 0)\"\n// \"rgba (255, 0, 0, 1)\" or \"rgba 255, 0, 0, 1\"\n// \"rgba (1.0, 0, 0, 1)\" or \"rgba 1.0, 0, 0, 1\"\n// \"hsl(0, 100%, 50%)\" or \"hsl 0 100% 50%\"\n// \"hsla(0, 100%, 50%, 1)\" or \"hsla 0 100% 50%, 1\"\n// \"hsv(0, 100%, 100%)\" or \"hsv 0 100% 100%\"\n//\nfunction inputToRGB(color) {\n\n var rgb = { r: 0, g: 0, b: 0 };\n var a = 1;\n var s = null;\n var v = null;\n var l = null;\n var ok = false;\n var format = false;\n\n if (typeof color == \"string\") {\n color = stringInputToObject(color);\n }\n\n if (typeof color == \"object\") {\n if (isValidCSSUnit(color.r) && isValidCSSUnit(color.g) && isValidCSSUnit(color.b)) {\n rgb = rgbToRgb(color.r, color.g, color.b);\n ok = true;\n format = String(color.r).substr(-1) === \"%\" ? \"prgb\" : \"rgb\";\n }\n else if (isValidCSSUnit(color.h) && isValidCSSUnit(color.s) && isValidCSSUnit(color.v)) {\n s = convertToPercentage(color.s);\n v = convertToPercentage(color.v);\n rgb = hsvToRgb(color.h, s, v);\n ok = true;\n format = \"hsv\";\n }\n else if (isValidCSSUnit(color.h) && isValidCSSUnit(color.s) && isValidCSSUnit(color.l)) {\n s = convertToPercentage(color.s);\n l = convertToPercentage(color.l);\n rgb = hslToRgb(color.h, s, l);\n ok = true;\n format = \"hsl\";\n }\n\n if (color.hasOwnProperty(\"a\")) {\n a = color.a;\n }\n }\n\n a = boundAlpha(a);\n\n return {\n ok: ok,\n format: color.format || format,\n r: mathMin(255, mathMax(rgb.r, 0)),\n g: mathMin(255, mathMax(rgb.g, 0)),\n b: mathMin(255, mathMax(rgb.b, 0)),\n a: a\n };\n}\n\n\n// Conversion Functions\n// --------------------\n\n// `rgbToHsl`, `rgbToHsv`, `hslToRgb`, `hsvToRgb` modified from:\n// \n\n// `rgbToRgb`\n// Handle bounds / percentage checking to conform to CSS color spec\n// \n// *Assumes:* r, g, b in [0, 255] or [0, 1]\n// *Returns:* { r, g, b } in [0, 255]\nfunction rgbToRgb(r, g, b){\n return {\n r: bound01(r, 255) * 255,\n g: bound01(g, 255) * 255,\n b: bound01(b, 255) * 255\n };\n}\n\n// `rgbToHsl`\n// Converts an RGB color value to HSL.\n// *Assumes:* r, g, and b are contained in [0, 255] or [0, 1]\n// *Returns:* { h, s, l } in [0,1]\nfunction rgbToHsl(r, g, b) {\n\n r = bound01(r, 255);\n g = bound01(g, 255);\n b = bound01(b, 255);\n\n var max = mathMax(r, g, b), min = mathMin(r, g, b);\n var h, s, l = (max + min) / 2;\n\n if(max == min) {\n h = s = 0; // achromatic\n }\n else {\n var d = max - min;\n s = l > 0.5 ? d / (2 - max - min) : d / (max + min);\n switch(max) {\n case r: h = (g - b) / d + (g < b ? 6 : 0); break;\n case g: h = (b - r) / d + 2; break;\n case b: h = (r - g) / d + 4; break;\n }\n\n h /= 6;\n }\n\n return { h: h, s: s, l: l };\n}\n\n// `hslToRgb`\n// Converts an HSL color value to RGB.\n// *Assumes:* h is contained in [0, 1] or [0, 360] and s and l are contained [0, 1] or [0, 100]\n// *Returns:* { r, g, b } in the set [0, 255]\nfunction hslToRgb(h, s, l) {\n var r, g, b;\n\n h = bound01(h, 360);\n s = bound01(s, 100);\n l = bound01(l, 100);\n\n function hue2rgb(p, q, t) {\n if(t < 0) t += 1;\n if(t > 1) t -= 1;\n if(t < 1/6) return p + (q - p) * 6 * t;\n if(t < 1/2) return q;\n if(t < 2/3) return p + (q - p) * (2/3 - t) * 6;\n return p;\n }\n\n if(s === 0) {\n r = g = b = l; // achromatic\n }\n else {\n var q = l < 0.5 ? l * (1 + s) : l + s - l * s;\n var p = 2 * l - q;\n r = hue2rgb(p, q, h + 1/3);\n g = hue2rgb(p, q, h);\n b = hue2rgb(p, q, h - 1/3);\n }\n\n return { r: r * 255, g: g * 255, b: b * 255 };\n}\n\n// `rgbToHsv`\n// Converts an RGB color value to HSV\n// *Assumes:* r, g, and b are contained in the set [0, 255] or [0, 1]\n// *Returns:* { h, s, v } in [0,1]\nfunction rgbToHsv(r, g, b) {\n\n r = bound01(r, 255);\n g = bound01(g, 255);\n b = bound01(b, 255);\n\n var max = mathMax(r, g, b), min = mathMin(r, g, b);\n var h, s, v = max;\n\n var d = max - min;\n s = max === 0 ? 0 : d / max;\n\n if(max == min) {\n h = 0; // achromatic\n }\n else {\n switch(max) {\n case r: h = (g - b) / d + (g < b ? 6 : 0); break;\n case g: h = (b - r) / d + 2; break;\n case b: h = (r - g) / d + 4; break;\n }\n h /= 6;\n }\n return { h: h, s: s, v: v };\n}\n\n// `hsvToRgb`\n// Converts an HSV color value to RGB.\n// *Assumes:* h is contained in [0, 1] or [0, 360] and s and v are contained in [0, 1] or [0, 100]\n// *Returns:* { r, g, b } in the set [0, 255]\n function hsvToRgb(h, s, v) {\n\n h = bound01(h, 360) * 6;\n s = bound01(s, 100);\n v = bound01(v, 100);\n\n var i = Math.floor(h),\n f = h - i,\n p = v * (1 - s),\n q = v * (1 - f * s),\n t = v * (1 - (1 - f) * s),\n mod = i % 6,\n r = [v, q, p, p, t, v][mod],\n g = [t, v, v, q, p, p][mod],\n b = [p, p, t, v, v, q][mod];\n\n return { r: r * 255, g: g * 255, b: b * 255 };\n}\n\n// `rgbToHex`\n// Converts an RGB color to hex\n// Assumes r, g, and b are contained in the set [0, 255]\n// Returns a 3 or 6 character hex\nfunction rgbToHex(r, g, b, allow3Char) {\n\n var hex = [\n pad2(mathRound(r).toString(16)),\n pad2(mathRound(g).toString(16)),\n pad2(mathRound(b).toString(16))\n ];\n\n // Return a 3 character hex if possible\n if (allow3Char && hex[0].charAt(0) == hex[0].charAt(1) && hex[1].charAt(0) == hex[1].charAt(1) && hex[2].charAt(0) == hex[2].charAt(1)) {\n return hex[0].charAt(0) + hex[1].charAt(0) + hex[2].charAt(0);\n }\n\n return hex.join(\"\");\n}\n\n// `rgbaToHex`\n// Converts an RGBA color plus alpha transparency to hex\n// Assumes r, g, b are contained in the set [0, 255] and\n// a in [0, 1]. Returns a 4 or 8 character rgba hex\nfunction rgbaToHex(r, g, b, a, allow4Char) {\n\n var hex = [\n pad2(mathRound(r).toString(16)),\n pad2(mathRound(g).toString(16)),\n pad2(mathRound(b).toString(16)),\n pad2(convertDecimalToHex(a))\n ];\n\n // Return a 4 character hex if possible\n if (allow4Char && hex[0].charAt(0) == hex[0].charAt(1) && hex[1].charAt(0) == hex[1].charAt(1) && hex[2].charAt(0) == hex[2].charAt(1) && hex[3].charAt(0) == hex[3].charAt(1)) {\n return hex[0].charAt(0) + hex[1].charAt(0) + hex[2].charAt(0) + hex[3].charAt(0);\n }\n\n return hex.join(\"\");\n}\n\n// `rgbaToArgbHex`\n// Converts an RGBA color to an ARGB Hex8 string\n// Rarely used, but required for \"toFilter()\"\nfunction rgbaToArgbHex(r, g, b, a) {\n\n var hex = [\n pad2(convertDecimalToHex(a)),\n pad2(mathRound(r).toString(16)),\n pad2(mathRound(g).toString(16)),\n pad2(mathRound(b).toString(16))\n ];\n\n return hex.join(\"\");\n}\n\n// `equals`\n// Can be called with any tinycolor input\ntinycolor.equals = function (color1, color2) {\n if (!color1 || !color2) { return false; }\n return tinycolor(color1).toRgbString() == tinycolor(color2).toRgbString();\n};\n\ntinycolor.random = function() {\n return tinycolor.fromRatio({\n r: mathRandom(),\n g: mathRandom(),\n b: mathRandom()\n });\n};\n\n\n// Modification Functions\n// ----------------------\n// Thanks to less.js for some of the basics here\n// \n\nfunction desaturate(color, amount) {\n amount = (amount === 0) ? 0 : (amount || 10);\n var hsl = tinycolor(color).toHsl();\n hsl.s -= amount / 100;\n hsl.s = clamp01(hsl.s);\n return tinycolor(hsl);\n}\n\nfunction saturate(color, amount) {\n amount = (amount === 0) ? 0 : (amount || 10);\n var hsl = tinycolor(color).toHsl();\n hsl.s += amount / 100;\n hsl.s = clamp01(hsl.s);\n return tinycolor(hsl);\n}\n\nfunction greyscale(color) {\n return tinycolor(color).desaturate(100);\n}\n\nfunction lighten (color, amount) {\n amount = (amount === 0) ? 0 : (amount || 10);\n var hsl = tinycolor(color).toHsl();\n hsl.l += amount / 100;\n hsl.l = clamp01(hsl.l);\n return tinycolor(hsl);\n}\n\nfunction brighten(color, amount) {\n amount = (amount === 0) ? 0 : (amount || 10);\n var rgb = tinycolor(color).toRgb();\n rgb.r = mathMax(0, mathMin(255, rgb.r - mathRound(255 * - (amount / 100))));\n rgb.g = mathMax(0, mathMin(255, rgb.g - mathRound(255 * - (amount / 100))));\n rgb.b = mathMax(0, mathMin(255, rgb.b - mathRound(255 * - (amount / 100))));\n return tinycolor(rgb);\n}\n\nfunction darken (color, amount) {\n amount = (amount === 0) ? 0 : (amount || 10);\n var hsl = tinycolor(color).toHsl();\n hsl.l -= amount / 100;\n hsl.l = clamp01(hsl.l);\n return tinycolor(hsl);\n}\n\n// Spin takes a positive or negative amount within [-360, 360] indicating the change of hue.\n// Values outside of this range will be wrapped into this range.\nfunction spin(color, amount) {\n var hsl = tinycolor(color).toHsl();\n var hue = (hsl.h + amount) % 360;\n hsl.h = hue < 0 ? 360 + hue : hue;\n return tinycolor(hsl);\n}\n\n// Combination Functions\n// ---------------------\n// Thanks to jQuery xColor for some of the ideas behind these\n// \n\nfunction complement(color) {\n var hsl = tinycolor(color).toHsl();\n hsl.h = (hsl.h + 180) % 360;\n return tinycolor(hsl);\n}\n\nfunction triad(color) {\n var hsl = tinycolor(color).toHsl();\n var h = hsl.h;\n return [\n tinycolor(color),\n tinycolor({ h: (h + 120) % 360, s: hsl.s, l: hsl.l }),\n tinycolor({ h: (h + 240) % 360, s: hsl.s, l: hsl.l })\n ];\n}\n\nfunction tetrad(color) {\n var hsl = tinycolor(color).toHsl();\n var h = hsl.h;\n return [\n tinycolor(color),\n tinycolor({ h: (h + 90) % 360, s: hsl.s, l: hsl.l }),\n tinycolor({ h: (h + 180) % 360, s: hsl.s, l: hsl.l }),\n tinycolor({ h: (h + 270) % 360, s: hsl.s, l: hsl.l })\n ];\n}\n\nfunction splitcomplement(color) {\n var hsl = tinycolor(color).toHsl();\n var h = hsl.h;\n return [\n tinycolor(color),\n tinycolor({ h: (h + 72) % 360, s: hsl.s, l: hsl.l}),\n tinycolor({ h: (h + 216) % 360, s: hsl.s, l: hsl.l})\n ];\n}\n\nfunction analogous(color, results, slices) {\n results = results || 6;\n slices = slices || 30;\n\n var hsl = tinycolor(color).toHsl();\n var part = 360 / slices;\n var ret = [tinycolor(color)];\n\n for (hsl.h = ((hsl.h - (part * results >> 1)) + 720) % 360; --results; ) {\n hsl.h = (hsl.h + part) % 360;\n ret.push(tinycolor(hsl));\n }\n return ret;\n}\n\nfunction monochromatic(color, results) {\n results = results || 6;\n var hsv = tinycolor(color).toHsv();\n var h = hsv.h, s = hsv.s, v = hsv.v;\n var ret = [];\n var modification = 1 / results;\n\n while (results--) {\n ret.push(tinycolor({ h: h, s: s, v: v}));\n v = (v + modification) % 1;\n }\n\n return ret;\n}\n\n// Utility Functions\n// ---------------------\n\ntinycolor.mix = function(color1, color2, amount) {\n amount = (amount === 0) ? 0 : (amount || 50);\n\n var rgb1 = tinycolor(color1).toRgb();\n var rgb2 = tinycolor(color2).toRgb();\n\n var p = amount / 100;\n\n var rgba = {\n r: ((rgb2.r - rgb1.r) * p) + rgb1.r,\n g: ((rgb2.g - rgb1.g) * p) + rgb1.g,\n b: ((rgb2.b - rgb1.b) * p) + rgb1.b,\n a: ((rgb2.a - rgb1.a) * p) + rgb1.a\n };\n\n return tinycolor(rgba);\n};\n\n\n// Readability Functions\n// ---------------------\n// false\n// tinycolor.isReadable(\"#000\", \"#111\",{level:\"AA\",size:\"large\"}) => false\ntinycolor.isReadable = function(color1, color2, wcag2) {\n var readability = tinycolor.readability(color1, color2);\n var wcag2Parms, out;\n\n out = false;\n\n wcag2Parms = validateWCAG2Parms(wcag2);\n switch (wcag2Parms.level + wcag2Parms.size) {\n case \"AAsmall\":\n case \"AAAlarge\":\n out = readability >= 4.5;\n break;\n case \"AAlarge\":\n out = readability >= 3;\n break;\n case \"AAAsmall\":\n out = readability >= 7;\n break;\n }\n return out;\n\n};\n\n// `mostReadable`\n// Given a base color and a list of possible foreground or background\n// colors for that base, returns the most readable color.\n// Optionally returns Black or White if the most readable color is unreadable.\n// *Example*\n// tinycolor.mostReadable(tinycolor.mostReadable(\"#123\", [\"#124\", \"#125\"],{includeFallbackColors:false}).toHexString(); // \"#112255\"\n// tinycolor.mostReadable(tinycolor.mostReadable(\"#123\", [\"#124\", \"#125\"],{includeFallbackColors:true}).toHexString(); // \"#ffffff\"\n// tinycolor.mostReadable(\"#a8015a\", [\"#faf3f3\"],{includeFallbackColors:true,level:\"AAA\",size:\"large\"}).toHexString(); // \"#faf3f3\"\n// tinycolor.mostReadable(\"#a8015a\", [\"#faf3f3\"],{includeFallbackColors:true,level:\"AAA\",size:\"small\"}).toHexString(); // \"#ffffff\"\ntinycolor.mostReadable = function(baseColor, colorList, args) {\n var bestColor = null;\n var bestScore = 0;\n var readability;\n var includeFallbackColors, level, size ;\n args = args || {};\n includeFallbackColors = args.includeFallbackColors ;\n level = args.level;\n size = args.size;\n\n for (var i= 0; i < colorList.length ; i++) {\n readability = tinycolor.readability(baseColor, colorList[i]);\n if (readability > bestScore) {\n bestScore = readability;\n bestColor = tinycolor(colorList[i]);\n }\n }\n\n if (tinycolor.isReadable(baseColor, bestColor, {\"level\":level,\"size\":size}) || !includeFallbackColors) {\n return bestColor;\n }\n else {\n args.includeFallbackColors=false;\n return tinycolor.mostReadable(baseColor,[\"#fff\", \"#000\"],args);\n }\n};\n\n\n// Big List of Colors\n// ------------------\n// \nvar names = tinycolor.names = {\n aliceblue: \"f0f8ff\",\n antiquewhite: \"faebd7\",\n aqua: \"0ff\",\n aquamarine: \"7fffd4\",\n azure: \"f0ffff\",\n beige: \"f5f5dc\",\n bisque: \"ffe4c4\",\n black: \"000\",\n blanchedalmond: \"ffebcd\",\n blue: \"00f\",\n blueviolet: \"8a2be2\",\n brown: \"a52a2a\",\n burlywood: \"deb887\",\n burntsienna: \"ea7e5d\",\n cadetblue: \"5f9ea0\",\n chartreuse: \"7fff00\",\n chocolate: \"d2691e\",\n coral: \"ff7f50\",\n cornflowerblue: \"6495ed\",\n cornsilk: \"fff8dc\",\n crimson: \"dc143c\",\n cyan: \"0ff\",\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: \"f0f\",\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 lavender: \"e6e6fa\",\n lavenderblush: \"fff0f5\",\n lawngreen: \"7cfc00\",\n lemonchiffon: \"fffacd\",\n lightblue: \"add8e6\",\n lightcoral: \"f08080\",\n lightcyan: \"e0ffff\",\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: \"789\",\n lightslategrey: \"789\",\n lightsteelblue: \"b0c4de\",\n lightyellow: \"ffffe0\",\n lime: \"0f0\",\n limegreen: \"32cd32\",\n linen: \"faf0e6\",\n magenta: \"f0f\",\n maroon: \"800000\",\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 rebeccapurple: \"663399\",\n red: \"f00\",\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: \"fff\",\n whitesmoke: \"f5f5f5\",\n yellow: \"ff0\",\n yellowgreen: \"9acd32\"\n};\n\n// Make it easy to access colors via `hexNames[hex]`\nvar hexNames = tinycolor.hexNames = flip(names);\n\n\n// Utilities\n// ---------\n\n// `{ 'name1': 'val1' }` becomes `{ 'val1': 'name1' }`\nfunction flip(o) {\n var flipped = { };\n for (var i in o) {\n if (o.hasOwnProperty(i)) {\n flipped[o[i]] = i;\n }\n }\n return flipped;\n}\n\n// Return a valid alpha value [0,1] with all invalid values being set to 1\nfunction boundAlpha(a) {\n a = parseFloat(a);\n\n if (isNaN(a) || a < 0 || a > 1) {\n a = 1;\n }\n\n return a;\n}\n\n// Take input from [0, n] and return it as [0, 1]\nfunction bound01(n, max) {\n if (isOnePointZero(n)) { n = \"100%\"; }\n\n var processPercent = isPercentage(n);\n n = mathMin(max, mathMax(0, parseFloat(n)));\n\n // Automatically convert percentage into number\n if (processPercent) {\n n = parseInt(n * max, 10) / 100;\n }\n\n // Handle floating point rounding errors\n if ((Math.abs(n - max) < 0.000001)) {\n return 1;\n }\n\n // Convert into [0, 1] range if it isn't already\n return (n % max) / parseFloat(max);\n}\n\n// Force a number between 0 and 1\nfunction clamp01(val) {\n return mathMin(1, mathMax(0, val));\n}\n\n// Parse a base-16 hex value into a base-10 integer\nfunction parseIntFromHex(val) {\n return parseInt(val, 16);\n}\n\n// Need to handle 1.0 as 100%, since once it is a number, there is no difference between it and 1\n// \nfunction isOnePointZero(n) {\n return typeof n == \"string\" && n.indexOf('.') != -1 && parseFloat(n) === 1;\n}\n\n// Check to see if string passed in is a percentage\nfunction isPercentage(n) {\n return typeof n === \"string\" && n.indexOf('%') != -1;\n}\n\n// Force a hex value to have 2 characters\nfunction pad2(c) {\n return c.length == 1 ? '0' + c : '' + c;\n}\n\n// Replace a decimal with it's percentage value\nfunction convertToPercentage(n) {\n if (n <= 1) {\n n = (n * 100) + \"%\";\n }\n\n return n;\n}\n\n// Converts a decimal to a hex value\nfunction convertDecimalToHex(d) {\n return Math.round(parseFloat(d) * 255).toString(16);\n}\n// Converts a hex value to a decimal\nfunction convertHexToDecimal(h) {\n return (parseIntFromHex(h) / 255);\n}\n\nvar matchers = (function() {\n\n // \n var CSS_INTEGER = \"[-\\\\+]?\\\\d+%?\";\n\n // \n var CSS_NUMBER = \"[-\\\\+]?\\\\d*\\\\.\\\\d+%?\";\n\n // Allow positive/negative integer/number. Don't capture the either/or, just the entire outcome.\n var CSS_UNIT = \"(?:\" + CSS_NUMBER + \")|(?:\" + CSS_INTEGER + \")\";\n\n // Actual matching.\n // Parentheses and commas are optional, but not required.\n // Whitespace can take the place of commas or opening paren\n var PERMISSIVE_MATCH3 = \"[\\\\s|\\\\(]+(\" + CSS_UNIT + \")[,|\\\\s]+(\" + CSS_UNIT + \")[,|\\\\s]+(\" + CSS_UNIT + \")\\\\s*\\\\)?\";\n var PERMISSIVE_MATCH4 = \"[\\\\s|\\\\(]+(\" + CSS_UNIT + \")[,|\\\\s]+(\" + CSS_UNIT + \")[,|\\\\s]+(\" + CSS_UNIT + \")[,|\\\\s]+(\" + CSS_UNIT + \")\\\\s*\\\\)?\";\n\n return {\n CSS_UNIT: new RegExp(CSS_UNIT),\n rgb: new RegExp(\"rgb\" + PERMISSIVE_MATCH3),\n rgba: new RegExp(\"rgba\" + PERMISSIVE_MATCH4),\n hsl: new RegExp(\"hsl\" + PERMISSIVE_MATCH3),\n hsla: new RegExp(\"hsla\" + PERMISSIVE_MATCH4),\n hsv: new RegExp(\"hsv\" + PERMISSIVE_MATCH3),\n hsva: new RegExp(\"hsva\" + PERMISSIVE_MATCH4),\n hex3: /^#?([0-9a-fA-F]{1})([0-9a-fA-F]{1})([0-9a-fA-F]{1})$/,\n hex6: /^#?([0-9a-fA-F]{2})([0-9a-fA-F]{2})([0-9a-fA-F]{2})$/,\n hex4: /^#?([0-9a-fA-F]{1})([0-9a-fA-F]{1})([0-9a-fA-F]{1})([0-9a-fA-F]{1})$/,\n hex8: /^#?([0-9a-fA-F]{2})([0-9a-fA-F]{2})([0-9a-fA-F]{2})([0-9a-fA-F]{2})$/\n };\n})();\n\n// `isValidCSSUnit`\n// Take in a single string / number and check to see if it looks like a CSS unit\n// (see `matchers` above for definition).\nfunction isValidCSSUnit(color) {\n return !!matchers.CSS_UNIT.exec(color);\n}\n\n// `stringInputToObject`\n// Permissive string parsing. Take in a number of formats, and output an object\n// based on detected format. Returns `{ r, g, b }` or `{ h, s, l }` or `{ h, s, v}`\nfunction stringInputToObject(color) {\n\n color = color.replace(trimLeft,'').replace(trimRight, '').toLowerCase();\n var named = false;\n if (names[color]) {\n color = names[color];\n named = true;\n }\n else if (color == 'transparent') {\n return { r: 0, g: 0, b: 0, a: 0, format: \"name\" };\n }\n\n // Try to match string input using regular expressions.\n // Keep most of the number bounding out of this function - don't worry about [0,1] or [0,100] or [0,360]\n // Just return an object and let the conversion functions handle that.\n // This way the result will be the same whether the tinycolor is initialized with string or object.\n var match;\n if ((match = matchers.rgb.exec(color))) {\n return { r: match[1], g: match[2], b: match[3] };\n }\n if ((match = matchers.rgba.exec(color))) {\n return { r: match[1], g: match[2], b: match[3], a: match[4] };\n }\n if ((match = matchers.hsl.exec(color))) {\n return { h: match[1], s: match[2], l: match[3] };\n }\n if ((match = matchers.hsla.exec(color))) {\n return { h: match[1], s: match[2], l: match[3], a: match[4] };\n }\n if ((match = matchers.hsv.exec(color))) {\n return { h: match[1], s: match[2], v: match[3] };\n }\n if ((match = matchers.hsva.exec(color))) {\n return { h: match[1], s: match[2], v: match[3], a: match[4] };\n }\n if ((match = matchers.hex8.exec(color))) {\n return {\n r: parseIntFromHex(match[1]),\n g: parseIntFromHex(match[2]),\n b: parseIntFromHex(match[3]),\n a: convertHexToDecimal(match[4]),\n format: named ? \"name\" : \"hex8\"\n };\n }\n if ((match = matchers.hex6.exec(color))) {\n return {\n r: parseIntFromHex(match[1]),\n g: parseIntFromHex(match[2]),\n b: parseIntFromHex(match[3]),\n format: named ? \"name\" : \"hex\"\n };\n }\n if ((match = matchers.hex4.exec(color))) {\n return {\n r: parseIntFromHex(match[1] + '' + match[1]),\n g: parseIntFromHex(match[2] + '' + match[2]),\n b: parseIntFromHex(match[3] + '' + match[3]),\n a: convertHexToDecimal(match[4] + '' + match[4]),\n format: named ? \"name\" : \"hex8\"\n };\n }\n if ((match = matchers.hex3.exec(color))) {\n return {\n r: parseIntFromHex(match[1] + '' + match[1]),\n g: parseIntFromHex(match[2] + '' + match[2]),\n b: parseIntFromHex(match[3] + '' + match[3]),\n format: named ? \"name\" : \"hex\"\n };\n }\n\n return false;\n}\n\nfunction validateWCAG2Parms(parms) {\n // return valid WCAG2 parms for isReadable.\n // If input parms are invalid, return {\"level\":\"AA\", \"size\":\"small\"}\n var level, size;\n parms = parms || {\"level\":\"AA\", \"size\":\"small\"};\n level = (parms.level || \"AA\").toUpperCase();\n size = (parms.size || \"small\").toLowerCase();\n if (level !== \"AA\" && level !== \"AAA\") {\n level = \"AA\";\n }\n if (size !== \"small\" && size !== \"large\") {\n size = \"small\";\n }\n return {\"level\":level, \"size\":size};\n}\n\n// Node: Export function\nif (typeof module !== \"undefined\" && module.exports) {\n module.exports = tinycolor;\n}\n// AMD/requirejs: Define the module\nelse if (typeof define === 'function' && define.amd) {\n define(function () {return tinycolor;});\n}\n// Browser: Expose to window\nelse {\n window.tinycolor = tinycolor;\n}\n\n})(Math);\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./node_modules/tinycolor2/tinycolor.js\n// module id = 4\n// module chunks = 0 1","'use strict';\n/**\n * @module\n */\n\n/**\n * Colorpicker default options\n */\nexport default {\n /**\n * Forces a color, ignoring the one from the elements value or data-color attribute.\n *\n * @type {(String|Color|boolean)}\n * @default false\n */\n color: false,\n /**\n * Forces an specific color format. If false, it will be automatically detected.\n * Note that the ending 'a' of the format meaning \"alpha\" has currently no effect, meaning that rgb is the same as\n * rgba excepting if the alpha channel is disabled (see useAlpha).\n *\n * @type {('rgb'|'rgba'|'prgb'|'prgba'|'hex'|'hex3'|'hex6'|'hex8'|'hsl'|'hsla'|'hsv'|'hsva'|'name'|boolean)}\n * @default false\n */\n format: false,\n /**\n * Horizontal mode layout.\n *\n * If true, the hue and alpha channel bars will be rendered horizontally, above the saturation selector.\n *\n * @type {boolean}\n * @default false\n */\n horizontal: false,\n /**\n * Forces to show the colorpicker as an inline element\n *\n * @type {boolean}\n * @default false\n */\n inline: false,\n /**\n * Children input CSS selector\n *\n * @type {String}\n * @default 'input'\n */\n input: 'input',\n /**\n * Colorpicker container CSS selector. If given, the colorpicker will be placed inside this container.\n * If true, the colorpicker element itself will be used as the container.\n *\n * @type {String|boolean}\n * @default false\n */\n container: false, // container selector\n /**\n * Children color component CSS selector.\n * If it exists, the child element background will be changed on color change.\n *\n * @type {String|boolean}\n * @default '.add-on, .input-group-addon'\n */\n component: '.add-on, .input-group-addon',\n /**\n * Fallback color to use when the given color is invalid.\n * If false, the latest valid color will be used as a fallback.\n *\n * @type {String|Color|boolean}\n * @default false\n */\n fallbackColor: false,\n /**\n * If true a hash will be prepended to hexadecimal colors.\n * If false, the hash will be removed.\n * This only affects the input values.\n *\n * @type {boolean}\n * @default false\n */\n useHashPrefix: true,\n /**\n * If true or false the alpha adjustment bar will be displayed no matter what.\n * If false it will be always hidden and alpha channel won't be allowed programmatically for this instance,\n * so the selected or typed color will be always opaque.\n *\n * @type {boolean}\n * @default true\n */\n useAlpha: true,\n /**\n * This only applies when the color format is hexadecimal.\n * If true, the alpha channel will be allowed for hexadecimal formatted colors, making them having 4 or 8 chars\n * (RGBA or RRGGBBAA). This format is not yet supported in all modern browsers, so it is disabled by default.\n * If false, rgba will be used whenever there is an alpha change different than 1 and the color format is\n * automatic.\n *\n * @type {boolean}\n * @default true\n */\n enableHex8: false,\n /**\n * Vertical sliders configuration\n * @type {Object}\n */\n sliders: {\n saturation: {\n maxLeft: 100,\n maxTop: 100,\n callLeft: 'setSaturationRatio',\n callTop: 'setBrightnessRatio'\n },\n hue: {\n maxLeft: 0,\n maxTop: 100,\n callLeft: false,\n callTop: 'setHueRatio'\n },\n alpha: {\n maxLeft: 0,\n maxTop: 100,\n callLeft: false,\n callTop: 'setAlphaRatio'\n }\n },\n /**\n * Horizontal sliders configuration\n * @type {Object}\n */\n slidersHorz: {\n saturation: {\n maxLeft: 100,\n maxTop: 100,\n callLeft: 'setSaturationRatio',\n callTop: 'setBrightnessRatio'\n },\n hue: {\n maxLeft: 100,\n maxTop: 0,\n callLeft: 'setHueRatio',\n callTop: false\n },\n alpha: {\n maxLeft: 100,\n maxTop: 0,\n callLeft: 'setAlphaRatio',\n callTop: false\n }\n },\n /**\n * Colorpicker widget template\n * @type {String}\n * @example\n * \n * \n *
\n *
\n *
\n *
\n *
\n *
\n */\n template: ``,\n /**\n * Colorpicker popup alignment.\n * For now only right is supported.\n *\n * @type {('right')}\n * @default 'right'\n */ // TODO: add 'left' and 'auto' support.\n align: 'right',\n /**\n * Custom class to be added to the colorpicker element\n *\n * @type {String}\n */\n customClass: null,\n /**\n * Preset list of colors to be added to the colorpicker widget as clickable color selectors.\n * The value should be an object containing key-value pairs defining a color alias and its CSS color representation.\n *\n * For this to work, a '.colorpicker-palette' element needs to be defined inside the colorpicker template.\n *\n * @type {Object}\n * @default null\n * @example\n * {\n * 'black': '#000000',\n * 'white': '#ffffff',\n * 'red': '#FF0000',\n * 'default': '#777777',\n * 'primary': '#337ab7',\n * 'success': '#5cb85c',\n * 'info': '#5bc0de',\n * 'warning': '#f0ad4e',\n * 'danger': '#d9534f'\n * }\n */\n colorPalette: null,\n /**\n * If true, the when a color swatch is selected the name (alias) will be used as input value,\n * otherwise the swatch real color value will be used.\n *\n * @type {boolean}\n * @default true\n */\n useColorPaletteNames: true\n};\n\n\n\n// WEBPACK FOOTER //\n// ./src/js/defaults.js"],"sourceRoot":""}