From 579be22c5694174e820da38bb09414baf875ad64 Mon Sep 17 00:00:00 2001 From: Dave Spurr Date: Thu, 23 Apr 2020 15:08:43 +0100 Subject: [PATCH] Remove focus on swatch when not active MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit As the swatch elements are buttons they get the selected border when either focused or having the `pcr-active` class. However changing colors in the picker (via palette etc.), outside of clicking elements that get focus, don’t release the focus on the swatches so they would stay selected. This change resolves that by only using the `pcr-active` class to include the selected border. --- dist/pickr.es5.min.js.map | 2 +- dist/pickr.min.js.map | 2 +- dist/themes/classic.min.css | 2 +- dist/themes/monolith.min.css | 2 +- dist/themes/nano.min.css | 2 +- src/scss/base.scss | 4 ++++ 6 files changed, 9 insertions(+), 5 deletions(-) diff --git a/dist/pickr.es5.min.js.map b/dist/pickr.es5.min.js.map index 50940092..ff82c2c1 100644 --- a/dist/pickr.es5.min.js.map +++ b/dist/pickr.es5.min.js.map @@ -1 +1 @@ -{"version":3,"sources":["webpack:///webpack/universalModuleDefinition","webpack:///webpack/bootstrap","webpack:///./node_modules/core-js/internals/fails.js","webpack:///./node_modules/core-js/internals/global.js","webpack:///./node_modules/core-js/internals/an-object.js","webpack:///./node_modules/core-js/internals/has.js","webpack:///./node_modules/core-js/internals/well-known-symbol.js","webpack:///./node_modules/core-js/internals/require-object-coercible.js","webpack:///./node_modules/core-js/internals/create-non-enumerable-property.js","webpack:///./node_modules/core-js/internals/descriptors.js","webpack:///./node_modules/core-js/internals/is-object.js","webpack:///./node_modules/core-js/internals/to-integer.js","webpack:///./node_modules/core-js/modules/web.dom-collections.iterator.js","webpack:///./node_modules/core-js/internals/export.js","webpack:///./node_modules/core-js/internals/object-define-property.js","webpack:///./node_modules/core-js/internals/to-length.js","webpack:///./node_modules/core-js/internals/to-indexed-object.js","webpack:///./node_modules/core-js/internals/classof-raw.js","webpack:///./node_modules/core-js/internals/redefine.js","webpack:///./node_modules/core-js/internals/is-pure.js","webpack:///./node_modules/core-js/internals/regexp-exec.js","webpack:///./node_modules/core-js/modules/es.object.assign.js","webpack:///./node_modules/core-js/internals/object-get-own-property-descriptor.js","webpack:///./node_modules/core-js/internals/create-property-descriptor.js","webpack:///./node_modules/core-js/internals/set-global.js","webpack:///./node_modules/core-js/internals/shared-key.js","webpack:///./node_modules/core-js/internals/hidden-keys.js","webpack:///./node_modules/core-js/internals/enum-bug-keys.js","webpack:///./node_modules/core-js/internals/to-object.js","webpack:///./node_modules/core-js/modules/es.regexp.to-string.js","webpack:///./node_modules/core-js/internals/fix-regexp-well-known-symbol-logic.js","webpack:///./node_modules/core-js/internals/advance-string-index.js","webpack:///./node_modules/core-js/internals/regexp-exec-abstract.js","webpack:///./node_modules/core-js/internals/iterators.js","webpack:///./node_modules/core-js/modules/es.string.split.js","webpack:///./node_modules/core-js/internals/object-property-is-enumerable.js","webpack:///./node_modules/core-js/internals/indexed-object.js","webpack:///./node_modules/core-js/internals/to-primitive.js","webpack:///./node_modules/core-js/internals/ie8-dom-define.js","webpack:///./node_modules/core-js/internals/document-create-element.js","webpack:///./node_modules/core-js/internals/inspect-source.js","webpack:///./node_modules/core-js/internals/shared-store.js","webpack:///./node_modules/core-js/internals/internal-state.js","webpack:///./node_modules/core-js/internals/shared.js","webpack:///./node_modules/core-js/internals/uid.js","webpack:///./node_modules/core-js/internals/get-built-in.js","webpack:///./node_modules/core-js/internals/object-keys-internal.js","webpack:///./node_modules/core-js/internals/object-get-own-property-symbols.js","webpack:///./node_modules/core-js/internals/object-keys.js","webpack:///./node_modules/core-js/internals/regexp-flags.js","webpack:///./node_modules/core-js/modules/es.string.match.js","webpack:///./node_modules/core-js/internals/native-symbol.js","webpack:///./node_modules/core-js/modules/es.string.starts-with.js","webpack:///./node_modules/core-js/internals/is-regexp.js","webpack:///./node_modules/core-js/internals/object-create.js","webpack:///./node_modules/core-js/internals/iterators-core.js","webpack:///./node_modules/core-js/internals/object-get-prototype-of.js","webpack:///./node_modules/core-js/internals/set-to-string-tag.js","webpack:///(webpack)/buildin/global.js","webpack:///./node_modules/core-js/internals/native-weak-map.js","webpack:///./node_modules/core-js/internals/copy-constructor-properties.js","webpack:///./node_modules/core-js/internals/own-keys.js","webpack:///./node_modules/core-js/internals/path.js","webpack:///./node_modules/core-js/internals/object-get-own-property-names.js","webpack:///./node_modules/core-js/internals/array-includes.js","webpack:///./node_modules/core-js/internals/to-absolute-index.js","webpack:///./node_modules/core-js/internals/is-forced.js","webpack:///./node_modules/core-js/internals/object-assign.js","webpack:///./node_modules/core-js/modules/es.regexp.exec.js","webpack:///./node_modules/core-js/internals/regexp-sticky-helpers.js","webpack:///./node_modules/core-js/internals/use-symbol-as-uid.js","webpack:///./node_modules/core-js/internals/string-multibyte.js","webpack:///./node_modules/core-js/internals/not-a-regexp.js","webpack:///./node_modules/core-js/internals/correct-is-regexp-logic.js","webpack:///./node_modules/core-js/internals/dom-iterables.js","webpack:///./node_modules/core-js/modules/es.array.iterator.js","webpack:///./node_modules/core-js/internals/add-to-unscopables.js","webpack:///./node_modules/core-js/internals/object-define-properties.js","webpack:///./node_modules/core-js/internals/html.js","webpack:///./node_modules/core-js/internals/define-iterator.js","webpack:///./node_modules/core-js/internals/create-iterator-constructor.js","webpack:///./node_modules/core-js/internals/correct-prototype-getter.js","webpack:///./node_modules/core-js/internals/object-set-prototype-of.js","webpack:///./node_modules/core-js/internals/a-possible-prototype.js","webpack:///./node_modules/core-js/modules/es.string.replace.js","webpack:///./node_modules/core-js/internals/species-constructor.js","webpack:///./node_modules/core-js/internals/a-function.js","webpack:///./node_modules/core-js/modules/es.number.to-fixed.js","webpack:///./node_modules/core-js/internals/this-number-value.js","webpack:///./node_modules/core-js/internals/string-repeat.js","webpack:///./src/js/utils/utils.js","webpack:///./src/js/utils/color.js","webpack:///./src/js/utils/hsvacolor.js","webpack:///./src/js/libs/moveable.js","webpack:///./src/js/libs/selectable.js","webpack:///./src/js/libs/nanopop.js","webpack:///./src/js/pickr.js","webpack:///./src/js/template.js"],"names":["root","factory","exports","module","define","amd","window","installedModules","__webpack_require__","moduleId","i","l","modules","call","m","c","d","name","getter","o","Object","defineProperty","enumerable","get","r","Symbol","toStringTag","value","t","mode","__esModule","ns","create","key","bind","n","object","property","prototype","hasOwnProperty","p","s","exec","error","it","Math","check","globalThis","self","global","Function","isObject","TypeError","String","shared","has","uid","NATIVE_SYMBOL","USE_SYMBOL_AS_UID","WellKnownSymbolsStore","createWellKnownSymbol","withoutSetter","undefined","DESCRIPTORS","definePropertyModule","createPropertyDescriptor","f","fails","ceil","floor","argument","isNaN","DOMIterables","ArrayIteratorMethods","createNonEnumerableProperty","wellKnownSymbol","ITERATOR","TO_STRING_TAG","ArrayValues","values","COLLECTION_NAME","Collection","CollectionPrototype","METHOD_NAME","getOwnPropertyDescriptor","redefine","setGlobal","copyConstructorProperties","isForced","options","source","target","targetProperty","sourceProperty","descriptor","TARGET","GLOBAL","STATIC","stat","noTargetGet","forced","sham","IE8_DOM_DEFINE","anObject","toPrimitive","nativeDefineProperty","O","P","Attributes","toInteger","min","IndexedObject","requireObjectCoercible","toString","slice","inspectSource","InternalStateModule","getInternalState","enforceInternalState","enforce","TEMPLATE","split","unsafe","simple","join","this","re1","re2","regexpFlags","stickyHelpers","nativeExec","RegExp","nativeReplace","replace","patchedExec","UPDATES_LAST_INDEX_WRONG","lastIndex","UNSUPPORTED_Y","BROKEN_CARET","NPCG_INCLUDED","str","reCopy","match","re","sticky","flags","charsAdded","strCopy","indexOf","multiline","input","index","length","arguments","$","assign","propertyIsEnumerableModule","toIndexedObject","nativeGetOwnPropertyDescriptor","bitmap","configurable","writable","keys","RegExpPrototype","nativeToString","NOT_GENERIC","INCORRECT_NAME","R","rf","regexpExec","SPECIES","REPLACE_SUPPORTS_NAMED_GROUPS","result","groups","a","REPLACE_KEEPS_$0","REPLACE","REGEXP_REPLACE_SUBSTITUTES_UNDEFINED_CAPTURE","SPLIT_WORKS_WITH_OVERWRITTEN_EXEC","originalExec","apply","KEY","SYMBOL","DELEGATES_TO_SYMBOL","DELEGATES_TO_EXEC","execCalled","constructor","nativeRegExpMethod","methods","nativeMethod","regexp","arg2","forceStringMethod","done","stringMethod","regexMethod","string","arg","charAt","S","unicode","classof","fixRegExpWellKnownSymbolLogic","isRegExp","speciesConstructor","advanceStringIndex","toLength","callRegExpExec","arrayPush","push","SUPPORTS_Y","SPLIT","nativeSplit","maybeCallNative","internalSplit","separator","limit","lim","lastLength","output","ignoreCase","lastLastIndex","separatorCopy","test","splitter","res","rx","C","unicodeMatching","q","A","e","z","nativePropertyIsEnumerable","propertyIsEnumerable","NASHORN_BUG","1","V","PREFERRED_STRING","fn","val","valueOf","createElement","document","EXISTS","store","functionToString","set","NATIVE_WEAK_MAP","objectHas","sharedKey","hiddenKeys","WeakMap","wmget","wmhas","wmset","metadata","STATE","getterFor","TYPE","state","type","IS_PURE","version","copyright","id","postfix","random","path","aFunction","variable","namespace","method","names","getOwnPropertySymbols","internalObjectKeys","enumBugKeys","that","dotAll","regExpExec","MATCH","nativeMatch","matcher","fullUnicode","matchStr","notARegExp","correctIsRegExpLogic","nativeStartsWith","startsWith","CORRECT_IS_REGEXP_LOGIC","proto","searchString","search","activeXDocument","defineProperties","html","documentCreateElement","IE_PROTO","EmptyConstructor","scriptTag","content","LT","NullProtoObject","domain","ActiveXObject","iframeDocument","iframe","write","close","temp","parentWindow","NullProtoObjectViaActiveX","style","display","appendChild","src","contentWindow","open","F","Properties","IteratorPrototype","PrototypeOfArrayIteratorPrototype","arrayIterator","getPrototypeOf","BUGGY_SAFARI_ITERATORS","toObject","CORRECT_PROTOTYPE_GETTER","ObjectPrototype","TAG","g","ownKeys","getOwnPropertyDescriptorModule","getBuiltIn","getOwnPropertyNamesModule","getOwnPropertySymbolsModule","concat","getOwnPropertyNames","toAbsoluteIndex","createMethod","IS_INCLUDES","$this","el","fromIndex","includes","max","integer","replacement","feature","detection","data","normalize","POLYFILL","NATIVE","toLowerCase","objectKeys","nativeAssign","b","B","symbol","forEach","chr","T","argumentsLength","j","RE","iterator","CONVERT_TO_STRING","pos","first","second","position","size","charCodeAt","codeAt","CSSRuleList","CSSStyleDeclaration","CSSValueList","ClientRectList","DOMRectList","DOMStringList","DOMTokenList","DataTransferItemList","FileList","HTMLAllCollection","HTMLCollection","HTMLFormElement","HTMLSelectElement","MediaList","MimeTypeArray","NamedNodeMap","NodeList","PaintRequestList","Plugin","PluginArray","SVGLengthList","SVGNumberList","SVGPathSegList","SVGPointList","SVGStringList","SVGTransformList","SourceBufferList","StyleSheetList","TextTrackCueList","TextTrackList","TouchList","addToUnscopables","Iterators","defineIterator","setInternalState","Array","iterated","kind","Arguments","UNSCOPABLES","ArrayPrototype","createIteratorConstructor","setPrototypeOf","setToStringTag","IteratorsCore","returnThis","Iterable","NAME","IteratorConstructor","next","DEFAULT","IS_SET","FORCED","CurrentIteratorPrototype","getIterationMethod","KIND","defaultIterator","IterablePrototype","INCORRECT_VALUES_NAME","nativeIterator","anyNativeIterator","entries","aPossiblePrototype","setter","CORRECT_SETTER","__proto__","SUBSTITUTION_SYMBOLS","SUBSTITUTION_SYMBOLS_NO_NAMED","reason","UNSAFE_SUBSTITUTE","searchValue","replaceValue","replacer","functionalReplace","results","accumulatedResult","nextSourcePosition","matched","captures","namedCaptures","replacerArgs","getSubstitution","tailPos","symbols","ch","capture","defaultConstructor","thisNumberValue","repeat","nativeToFixed","toFixed","pow","x","acc","fractionDigits","k","number","fractDigits","sign","multiply","c2","divide","dataToString","RangeError","x2","log","count","Infinity","eventListener","elements","events","from","isArray","ev","on","off","createElementFromString","div","innerHTML","trim","firstElementChild","removeAttribute","getAttribute","createFromTemplate","resolve","element","base","con","subtree","child","children","arr","sub","eventPath","evt","composedPath","parentElement","resolveElement","Element","reduce","pv","cv","ci","querySelector","shadowRoot","adjustableInputNumbers","mapper","v","handleScroll","inc","Number","shiftKey","ctrlKey","deltaY","selectionStart","focus","setSelectionRange","preventDefault","dispatchEvent","Event","passive","round","hsvToRgb","h","mod","hsvToHsl","rgbToHsv","minVal","maxVal","delta","dr","dg","db","cmykToHsv","y","hslToHsv","hexToHsv","hex","map","parseInt","parseToHSVA","ctx","getContext","fillStyle","standardizeColor","regex","cmyk","rgba","hsla","hsva","hexa","numarize","array","invalid","alphaValid","raw","substring","HSVaColor","original","precision","toHSVA","toHSLA","toRGBA","toCMYK","rgb","hsvToCmyk","toHEXA","padStart","hsvToHex","alpha","toUpperCase","clone","clamp","Moveable","opt","lock","onchange","onstop","_keyboard","activeElement","wrapper","up","right","down","left","xm","ym","update","cache","_tapstart","_","_tapstop","_tapmove","getBoundingClientRect","touch","touches","clientX","clientY","width","top","height","offsetWidth","offsetHeight","cx","cy","trigger","destroy","Selectable","className","onTap","classList","Nanopop","reference","padding","vBehaviour","start","middle","end","hBehaviour","bottom","getInfo","cached","variant","isVertical","useFallback","rb","eb","positions","vertical","variants","leastApplied","findFittingValue","positionVariants","elSize","winSize","posChar","wantedValue","wantedValueAsString","vaType","vbType","vaValue","vbValue","innerHeight","innerWidth","Pickr","init","save","hide","show","clear","change","changestop","cancel","swatchselect","appClass","theme","useAsButton","disabled","comparison","closeOnScroll","outputPrecision","lockOpacity","autoReposition","container","components","interaction","strings","swatches","inline","sliders","default","defaultRepresentation","adjustableNumbers","showAlways","closeWithKey","preview","opacity","hue","palette","_preBuild","_buildComponents","_bindEvents","_finalBuild","color","addSwatch","button","app","_root","_nanopop","setAttribute","requestAnimationFrame","cb","setColor","_rePositioningPicker","_representation","setColorRepresentation","_initializingActive","_emit","lo","hidden","int","find","add","contains","buildPickr","removeChild","parent","nextSibling","insertBefore","remove","parentNode","replaceChild","disable","transition","lastColor","inst","cs","so","sh","getColor","_color","_lastColor","picker","currentColor","_recalc","_updateOutput","cssRGBaString","background","_swatchColors","slider","backgroundColor","selectable","_components","eventBindings","_clearColor","setHSVA","applyColor","stopImmediatePropagation","ck","isOpen","code","some","ranges","step","range","getColorRepresentation","nv","toPrecision","timeout","setTimeout","rs","clearTimeout","_eventBindings","silent","_parseLocalColor","alphaMakesAChange","event","args","_eventListener","callBacks","splice","removeSwatch","swatchColor","destroyAndRemove","recalc","utype","click","getSelectedColor","getRoot","enable","utils","libs"],"mappings":"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","file":"pickr.es5.min.js","sourcesContent":["(function webpackUniversalModuleDefinition(root, factory) {\n\tif(typeof exports === 'object' && typeof module === 'object')\n\t\tmodule.exports = factory();\n\telse if(typeof define === 'function' && define.amd)\n\t\tdefine([], factory);\n\telse if(typeof exports === 'object')\n\t\texports[\"Pickr\"] = factory();\n\telse\n\t\troot[\"Pickr\"] = factory();\n})(window, function() {\nreturn "," \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, { enumerable: true, get: getter });\n \t\t}\n \t};\n\n \t// define __esModule on exports\n \t__webpack_require__.r = function(exports) {\n \t\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n \t\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n \t\t}\n \t\tObject.defineProperty(exports, '__esModule', { value: true });\n \t};\n\n \t// create a fake namespace object\n \t// mode & 1: value is a module id, require it\n \t// mode & 2: merge all properties of value into the ns\n \t// mode & 4: return value when already ns object\n \t// mode & 8|1: behave like require\n \t__webpack_require__.t = function(value, mode) {\n \t\tif(mode & 1) value = __webpack_require__(value);\n \t\tif(mode & 8) return value;\n \t\tif((mode & 4) && typeof value === 'object' && value && value.__esModule) return value;\n \t\tvar ns = Object.create(null);\n \t\t__webpack_require__.r(ns);\n \t\tObject.defineProperty(ns, 'default', { enumerable: true, value: value });\n \t\tif(mode & 2 && typeof value != 'string') for(var key in value) __webpack_require__.d(ns, key, function(key) { return value[key]; }.bind(null, key));\n \t\treturn ns;\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\n \t// Load entry module and return exports\n \treturn __webpack_require__(__webpack_require__.s = 89);\n","module.exports = function (exec) {\n try {\n return !!exec();\n } catch (error) {\n return true;\n }\n};\n","var check = function (it) {\n return it && it.Math == Math && it;\n};\n\n// https://github.com/zloirock/core-js/issues/86#issuecomment-115759028\nmodule.exports =\n // eslint-disable-next-line no-undef\n check(typeof globalThis == 'object' && globalThis) ||\n check(typeof window == 'object' && window) ||\n check(typeof self == 'object' && self) ||\n check(typeof global == 'object' && global) ||\n // eslint-disable-next-line no-new-func\n Function('return this')();\n","var isObject = require('../internals/is-object');\n\nmodule.exports = function (it) {\n if (!isObject(it)) {\n throw TypeError(String(it) + ' is not an object');\n } return it;\n};\n","var hasOwnProperty = {}.hasOwnProperty;\n\nmodule.exports = function (it, key) {\n return hasOwnProperty.call(it, key);\n};\n","var global = require('../internals/global');\nvar shared = require('../internals/shared');\nvar has = require('../internals/has');\nvar uid = require('../internals/uid');\nvar NATIVE_SYMBOL = require('../internals/native-symbol');\nvar USE_SYMBOL_AS_UID = require('../internals/use-symbol-as-uid');\n\nvar WellKnownSymbolsStore = shared('wks');\nvar Symbol = global.Symbol;\nvar createWellKnownSymbol = USE_SYMBOL_AS_UID ? Symbol : Symbol && Symbol.withoutSetter || uid;\n\nmodule.exports = function (name) {\n if (!has(WellKnownSymbolsStore, name)) {\n if (NATIVE_SYMBOL && has(Symbol, name)) WellKnownSymbolsStore[name] = Symbol[name];\n else WellKnownSymbolsStore[name] = createWellKnownSymbol('Symbol.' + name);\n } return WellKnownSymbolsStore[name];\n};\n","// `RequireObjectCoercible` abstract operation\n// https://tc39.github.io/ecma262/#sec-requireobjectcoercible\nmodule.exports = function (it) {\n if (it == undefined) throw TypeError(\"Can't call method on \" + it);\n return it;\n};\n","var DESCRIPTORS = require('../internals/descriptors');\nvar definePropertyModule = require('../internals/object-define-property');\nvar createPropertyDescriptor = require('../internals/create-property-descriptor');\n\nmodule.exports = DESCRIPTORS ? function (object, key, value) {\n return definePropertyModule.f(object, key, createPropertyDescriptor(1, value));\n} : function (object, key, value) {\n object[key] = value;\n return object;\n};\n","var fails = require('../internals/fails');\n\n// Thank's IE8 for his funny defineProperty\nmodule.exports = !fails(function () {\n return Object.defineProperty({}, 1, { get: function () { return 7; } })[1] != 7;\n});\n","module.exports = function (it) {\n return typeof it === 'object' ? it !== null : typeof it === 'function';\n};\n","var ceil = Math.ceil;\nvar floor = Math.floor;\n\n// `ToInteger` abstract operation\n// https://tc39.github.io/ecma262/#sec-tointeger\nmodule.exports = function (argument) {\n return isNaN(argument = +argument) ? 0 : (argument > 0 ? floor : ceil)(argument);\n};\n","var global = require('../internals/global');\nvar DOMIterables = require('../internals/dom-iterables');\nvar ArrayIteratorMethods = require('../modules/es.array.iterator');\nvar createNonEnumerableProperty = require('../internals/create-non-enumerable-property');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\n\nvar ITERATOR = wellKnownSymbol('iterator');\nvar TO_STRING_TAG = wellKnownSymbol('toStringTag');\nvar ArrayValues = ArrayIteratorMethods.values;\n\nfor (var COLLECTION_NAME in DOMIterables) {\n var Collection = global[COLLECTION_NAME];\n var CollectionPrototype = Collection && Collection.prototype;\n if (CollectionPrototype) {\n // some Chrome versions have non-configurable methods on DOMTokenList\n if (CollectionPrototype[ITERATOR] !== ArrayValues) try {\n createNonEnumerableProperty(CollectionPrototype, ITERATOR, ArrayValues);\n } catch (error) {\n CollectionPrototype[ITERATOR] = ArrayValues;\n }\n if (!CollectionPrototype[TO_STRING_TAG]) {\n createNonEnumerableProperty(CollectionPrototype, TO_STRING_TAG, COLLECTION_NAME);\n }\n if (DOMIterables[COLLECTION_NAME]) for (var METHOD_NAME in ArrayIteratorMethods) {\n // some Chrome versions have non-configurable methods on DOMTokenList\n if (CollectionPrototype[METHOD_NAME] !== ArrayIteratorMethods[METHOD_NAME]) try {\n createNonEnumerableProperty(CollectionPrototype, METHOD_NAME, ArrayIteratorMethods[METHOD_NAME]);\n } catch (error) {\n CollectionPrototype[METHOD_NAME] = ArrayIteratorMethods[METHOD_NAME];\n }\n }\n }\n}\n","var global = require('../internals/global');\nvar getOwnPropertyDescriptor = require('../internals/object-get-own-property-descriptor').f;\nvar createNonEnumerableProperty = require('../internals/create-non-enumerable-property');\nvar redefine = require('../internals/redefine');\nvar setGlobal = require('../internals/set-global');\nvar copyConstructorProperties = require('../internals/copy-constructor-properties');\nvar isForced = require('../internals/is-forced');\n\n/*\n options.target - name of the target object\n options.global - target is the global object\n options.stat - export as static methods of target\n options.proto - export as prototype methods of target\n options.real - real prototype method for the `pure` version\n options.forced - export even if the native feature is available\n options.bind - bind methods to the target, required for the `pure` version\n options.wrap - wrap constructors to preventing global pollution, required for the `pure` version\n options.unsafe - use the simple assignment of property instead of delete + defineProperty\n options.sham - add a flag to not completely full polyfills\n options.enumerable - export as enumerable property\n options.noTargetGet - prevent calling a getter on target\n*/\nmodule.exports = function (options, source) {\n var TARGET = options.target;\n var GLOBAL = options.global;\n var STATIC = options.stat;\n var FORCED, target, key, targetProperty, sourceProperty, descriptor;\n if (GLOBAL) {\n target = global;\n } else if (STATIC) {\n target = global[TARGET] || setGlobal(TARGET, {});\n } else {\n target = (global[TARGET] || {}).prototype;\n }\n if (target) for (key in source) {\n sourceProperty = source[key];\n if (options.noTargetGet) {\n descriptor = getOwnPropertyDescriptor(target, key);\n targetProperty = descriptor && descriptor.value;\n } else targetProperty = target[key];\n FORCED = isForced(GLOBAL ? key : TARGET + (STATIC ? '.' : '#') + key, options.forced);\n // contained in target\n if (!FORCED && targetProperty !== undefined) {\n if (typeof sourceProperty === typeof targetProperty) continue;\n copyConstructorProperties(sourceProperty, targetProperty);\n }\n // add a flag to not completely full polyfills\n if (options.sham || (targetProperty && targetProperty.sham)) {\n createNonEnumerableProperty(sourceProperty, 'sham', true);\n }\n // extend global\n redefine(target, key, sourceProperty, options);\n }\n};\n","var DESCRIPTORS = require('../internals/descriptors');\nvar IE8_DOM_DEFINE = require('../internals/ie8-dom-define');\nvar anObject = require('../internals/an-object');\nvar toPrimitive = require('../internals/to-primitive');\n\nvar nativeDefineProperty = Object.defineProperty;\n\n// `Object.defineProperty` method\n// https://tc39.github.io/ecma262/#sec-object.defineproperty\nexports.f = DESCRIPTORS ? nativeDefineProperty : function defineProperty(O, P, Attributes) {\n anObject(O);\n P = toPrimitive(P, true);\n anObject(Attributes);\n if (IE8_DOM_DEFINE) try {\n return nativeDefineProperty(O, P, Attributes);\n } catch (error) { /* empty */ }\n if ('get' in Attributes || 'set' in Attributes) throw TypeError('Accessors not supported');\n if ('value' in Attributes) O[P] = Attributes.value;\n return O;\n};\n","var toInteger = require('../internals/to-integer');\n\nvar min = Math.min;\n\n// `ToLength` abstract operation\n// https://tc39.github.io/ecma262/#sec-tolength\nmodule.exports = function (argument) {\n return argument > 0 ? min(toInteger(argument), 0x1FFFFFFFFFFFFF) : 0; // 2 ** 53 - 1 == 9007199254740991\n};\n","// toObject with fallback for non-array-like ES3 strings\nvar IndexedObject = require('../internals/indexed-object');\nvar requireObjectCoercible = require('../internals/require-object-coercible');\n\nmodule.exports = function (it) {\n return IndexedObject(requireObjectCoercible(it));\n};\n","var toString = {}.toString;\n\nmodule.exports = function (it) {\n return toString.call(it).slice(8, -1);\n};\n","var global = require('../internals/global');\nvar createNonEnumerableProperty = require('../internals/create-non-enumerable-property');\nvar has = require('../internals/has');\nvar setGlobal = require('../internals/set-global');\nvar inspectSource = require('../internals/inspect-source');\nvar InternalStateModule = require('../internals/internal-state');\n\nvar getInternalState = InternalStateModule.get;\nvar enforceInternalState = InternalStateModule.enforce;\nvar TEMPLATE = String(String).split('String');\n\n(module.exports = function (O, key, value, options) {\n var unsafe = options ? !!options.unsafe : false;\n var simple = options ? !!options.enumerable : false;\n var noTargetGet = options ? !!options.noTargetGet : false;\n if (typeof value == 'function') {\n if (typeof key == 'string' && !has(value, 'name')) createNonEnumerableProperty(value, 'name', key);\n enforceInternalState(value).source = TEMPLATE.join(typeof key == 'string' ? key : '');\n }\n if (O === global) {\n if (simple) O[key] = value;\n else setGlobal(key, value);\n return;\n } else if (!unsafe) {\n delete O[key];\n } else if (!noTargetGet && O[key]) {\n simple = true;\n }\n if (simple) O[key] = value;\n else createNonEnumerableProperty(O, key, value);\n// add fake Function#toString for correct work wrapped methods / constructors with methods like LoDash isNative\n})(Function.prototype, 'toString', function toString() {\n return typeof this == 'function' && getInternalState(this).source || inspectSource(this);\n});\n","module.exports = false;\n","'use strict';\nvar regexpFlags = require('./regexp-flags');\nvar stickyHelpers = require('./regexp-sticky-helpers');\n\nvar nativeExec = RegExp.prototype.exec;\n// This always refers to the native implementation, because the\n// String#replace polyfill uses ./fix-regexp-well-known-symbol-logic.js,\n// which loads this file before patching the method.\nvar nativeReplace = String.prototype.replace;\n\nvar patchedExec = nativeExec;\n\nvar UPDATES_LAST_INDEX_WRONG = (function () {\n var re1 = /a/;\n var re2 = /b*/g;\n nativeExec.call(re1, 'a');\n nativeExec.call(re2, 'a');\n return re1.lastIndex !== 0 || re2.lastIndex !== 0;\n})();\n\nvar UNSUPPORTED_Y = stickyHelpers.UNSUPPORTED_Y || stickyHelpers.BROKEN_CARET;\n\n// nonparticipating capturing group, copied from es5-shim's String#split patch.\nvar NPCG_INCLUDED = /()??/.exec('')[1] !== undefined;\n\nvar PATCH = UPDATES_LAST_INDEX_WRONG || NPCG_INCLUDED || UNSUPPORTED_Y;\n\nif (PATCH) {\n patchedExec = function exec(str) {\n var re = this;\n var lastIndex, reCopy, match, i;\n var sticky = UNSUPPORTED_Y && re.sticky;\n var flags = regexpFlags.call(re);\n var source = re.source;\n var charsAdded = 0;\n var strCopy = str;\n\n if (sticky) {\n flags = flags.replace('y', '');\n if (flags.indexOf('g') === -1) {\n flags += 'g';\n }\n\n strCopy = String(str).slice(re.lastIndex);\n // Support anchored sticky behavior.\n if (re.lastIndex > 0 && (!re.multiline || re.multiline && str[re.lastIndex - 1] !== '\\n')) {\n source = '(?: ' + source + ')';\n strCopy = ' ' + strCopy;\n charsAdded++;\n }\n // ^(? + rx + ) is needed, in combination with some str slicing, to\n // simulate the 'y' flag.\n reCopy = new RegExp('^(?:' + source + ')', flags);\n }\n\n if (NPCG_INCLUDED) {\n reCopy = new RegExp('^' + source + '$(?!\\\\s)', flags);\n }\n if (UPDATES_LAST_INDEX_WRONG) lastIndex = re.lastIndex;\n\n match = nativeExec.call(sticky ? reCopy : re, strCopy);\n\n if (sticky) {\n if (match) {\n match.input = match.input.slice(charsAdded);\n match[0] = match[0].slice(charsAdded);\n match.index = re.lastIndex;\n re.lastIndex += match[0].length;\n } else re.lastIndex = 0;\n } else if (UPDATES_LAST_INDEX_WRONG && match) {\n re.lastIndex = re.global ? match.index + match[0].length : lastIndex;\n }\n if (NPCG_INCLUDED && match && match.length > 1) {\n // Fix browsers whose `exec` methods don't consistently return `undefined`\n // for NPCG, like IE8. NOTE: This doesn' work for /(.?)?/\n nativeReplace.call(match[0], reCopy, function () {\n for (i = 1; i < arguments.length - 2; i++) {\n if (arguments[i] === undefined) match[i] = undefined;\n }\n });\n }\n\n return match;\n };\n}\n\nmodule.exports = patchedExec;\n","var $ = require('../internals/export');\nvar assign = require('../internals/object-assign');\n\n// `Object.assign` method\n// https://tc39.github.io/ecma262/#sec-object.assign\n$({ target: 'Object', stat: true, forced: Object.assign !== assign }, {\n assign: assign\n});\n","var DESCRIPTORS = require('../internals/descriptors');\nvar propertyIsEnumerableModule = require('../internals/object-property-is-enumerable');\nvar createPropertyDescriptor = require('../internals/create-property-descriptor');\nvar toIndexedObject = require('../internals/to-indexed-object');\nvar toPrimitive = require('../internals/to-primitive');\nvar has = require('../internals/has');\nvar IE8_DOM_DEFINE = require('../internals/ie8-dom-define');\n\nvar nativeGetOwnPropertyDescriptor = Object.getOwnPropertyDescriptor;\n\n// `Object.getOwnPropertyDescriptor` method\n// https://tc39.github.io/ecma262/#sec-object.getownpropertydescriptor\nexports.f = DESCRIPTORS ? nativeGetOwnPropertyDescriptor : function getOwnPropertyDescriptor(O, P) {\n O = toIndexedObject(O);\n P = toPrimitive(P, true);\n if (IE8_DOM_DEFINE) try {\n return nativeGetOwnPropertyDescriptor(O, P);\n } catch (error) { /* empty */ }\n if (has(O, P)) return createPropertyDescriptor(!propertyIsEnumerableModule.f.call(O, P), O[P]);\n};\n","module.exports = function (bitmap, value) {\n return {\n enumerable: !(bitmap & 1),\n configurable: !(bitmap & 2),\n writable: !(bitmap & 4),\n value: value\n };\n};\n","var global = require('../internals/global');\nvar createNonEnumerableProperty = require('../internals/create-non-enumerable-property');\n\nmodule.exports = function (key, value) {\n try {\n createNonEnumerableProperty(global, key, value);\n } catch (error) {\n global[key] = value;\n } return value;\n};\n","var shared = require('../internals/shared');\nvar uid = require('../internals/uid');\n\nvar keys = shared('keys');\n\nmodule.exports = function (key) {\n return keys[key] || (keys[key] = uid(key));\n};\n","module.exports = {};\n","// IE8- don't enum bug keys\nmodule.exports = [\n 'constructor',\n 'hasOwnProperty',\n 'isPrototypeOf',\n 'propertyIsEnumerable',\n 'toLocaleString',\n 'toString',\n 'valueOf'\n];\n","var requireObjectCoercible = require('../internals/require-object-coercible');\n\n// `ToObject` abstract operation\n// https://tc39.github.io/ecma262/#sec-toobject\nmodule.exports = function (argument) {\n return Object(requireObjectCoercible(argument));\n};\n","'use strict';\nvar redefine = require('../internals/redefine');\nvar anObject = require('../internals/an-object');\nvar fails = require('../internals/fails');\nvar flags = require('../internals/regexp-flags');\n\nvar TO_STRING = 'toString';\nvar RegExpPrototype = RegExp.prototype;\nvar nativeToString = RegExpPrototype[TO_STRING];\n\nvar NOT_GENERIC = fails(function () { return nativeToString.call({ source: 'a', flags: 'b' }) != '/a/b'; });\n// FF44- RegExp#toString has a wrong name\nvar INCORRECT_NAME = nativeToString.name != TO_STRING;\n\n// `RegExp.prototype.toString` method\n// https://tc39.github.io/ecma262/#sec-regexp.prototype.tostring\nif (NOT_GENERIC || INCORRECT_NAME) {\n redefine(RegExp.prototype, TO_STRING, function toString() {\n var R = anObject(this);\n var p = String(R.source);\n var rf = R.flags;\n var f = String(rf === undefined && R instanceof RegExp && !('flags' in RegExpPrototype) ? flags.call(R) : rf);\n return '/' + p + '/' + f;\n }, { unsafe: true });\n}\n","'use strict';\n// TODO: Remove from `core-js@4` since it's moved to entry points\nrequire('../modules/es.regexp.exec');\nvar redefine = require('../internals/redefine');\nvar fails = require('../internals/fails');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\nvar regexpExec = require('../internals/regexp-exec');\nvar createNonEnumerableProperty = require('../internals/create-non-enumerable-property');\n\nvar SPECIES = wellKnownSymbol('species');\n\nvar REPLACE_SUPPORTS_NAMED_GROUPS = !fails(function () {\n // #replace needs built-in support for named groups.\n // #match works fine because it just return the exec results, even if it has\n // a \"grops\" property.\n var re = /./;\n re.exec = function () {\n var result = [];\n result.groups = { a: '7' };\n return result;\n };\n return ''.replace(re, '$') !== '7';\n});\n\n// IE <= 11 replaces $0 with the whole match, as if it was $&\n// https://stackoverflow.com/questions/6024666/getting-ie-to-replace-a-regex-with-the-literal-string-0\nvar REPLACE_KEEPS_$0 = (function () {\n return 'a'.replace(/./, '$0') === '$0';\n})();\n\nvar REPLACE = wellKnownSymbol('replace');\n// Safari <= 13.0.3(?) substitutes nth capture where n>m with an empty string\nvar REGEXP_REPLACE_SUBSTITUTES_UNDEFINED_CAPTURE = (function () {\n if (/./[REPLACE]) {\n return /./[REPLACE]('a', '$0') === '';\n }\n return false;\n})();\n\n// Chrome 51 has a buggy \"split\" implementation when RegExp#exec !== nativeExec\n// Weex JS has frozen built-in prototypes, so use try / catch wrapper\nvar SPLIT_WORKS_WITH_OVERWRITTEN_EXEC = !fails(function () {\n var re = /(?:)/;\n var originalExec = re.exec;\n re.exec = function () { return originalExec.apply(this, arguments); };\n var result = 'ab'.split(re);\n return result.length !== 2 || result[0] !== 'a' || result[1] !== 'b';\n});\n\nmodule.exports = function (KEY, length, exec, sham) {\n var SYMBOL = wellKnownSymbol(KEY);\n\n var DELEGATES_TO_SYMBOL = !fails(function () {\n // String methods call symbol-named RegEp methods\n var O = {};\n O[SYMBOL] = function () { return 7; };\n return ''[KEY](O) != 7;\n });\n\n var DELEGATES_TO_EXEC = DELEGATES_TO_SYMBOL && !fails(function () {\n // Symbol-named RegExp methods call .exec\n var execCalled = false;\n var re = /a/;\n\n if (KEY === 'split') {\n // We can't use real regex here since it causes deoptimization\n // and serious performance degradation in V8\n // https://github.com/zloirock/core-js/issues/306\n re = {};\n // RegExp[@@split] doesn't call the regex's exec method, but first creates\n // a new one. We need to return the patched regex when creating the new one.\n re.constructor = {};\n re.constructor[SPECIES] = function () { return re; };\n re.flags = '';\n re[SYMBOL] = /./[SYMBOL];\n }\n\n re.exec = function () { execCalled = true; return null; };\n\n re[SYMBOL]('');\n return !execCalled;\n });\n\n if (\n !DELEGATES_TO_SYMBOL ||\n !DELEGATES_TO_EXEC ||\n (KEY === 'replace' && !(\n REPLACE_SUPPORTS_NAMED_GROUPS &&\n REPLACE_KEEPS_$0 &&\n !REGEXP_REPLACE_SUBSTITUTES_UNDEFINED_CAPTURE\n )) ||\n (KEY === 'split' && !SPLIT_WORKS_WITH_OVERWRITTEN_EXEC)\n ) {\n var nativeRegExpMethod = /./[SYMBOL];\n var methods = exec(SYMBOL, ''[KEY], function (nativeMethod, regexp, str, arg2, forceStringMethod) {\n if (regexp.exec === regexpExec) {\n if (DELEGATES_TO_SYMBOL && !forceStringMethod) {\n // The native String method already delegates to @@method (this\n // polyfilled function), leasing to infinite recursion.\n // We avoid it by directly calling the native @@method method.\n return { done: true, value: nativeRegExpMethod.call(regexp, str, arg2) };\n }\n return { done: true, value: nativeMethod.call(str, regexp, arg2) };\n }\n return { done: false };\n }, {\n REPLACE_KEEPS_$0: REPLACE_KEEPS_$0,\n REGEXP_REPLACE_SUBSTITUTES_UNDEFINED_CAPTURE: REGEXP_REPLACE_SUBSTITUTES_UNDEFINED_CAPTURE\n });\n var stringMethod = methods[0];\n var regexMethod = methods[1];\n\n redefine(String.prototype, KEY, stringMethod);\n redefine(RegExp.prototype, SYMBOL, length == 2\n // 21.2.5.8 RegExp.prototype[@@replace](string, replaceValue)\n // 21.2.5.11 RegExp.prototype[@@split](string, limit)\n ? function (string, arg) { return regexMethod.call(string, this, arg); }\n // 21.2.5.6 RegExp.prototype[@@match](string)\n // 21.2.5.9 RegExp.prototype[@@search](string)\n : function (string) { return regexMethod.call(string, this); }\n );\n }\n\n if (sham) createNonEnumerableProperty(RegExp.prototype[SYMBOL], 'sham', true);\n};\n","'use strict';\nvar charAt = require('../internals/string-multibyte').charAt;\n\n// `AdvanceStringIndex` abstract operation\n// https://tc39.github.io/ecma262/#sec-advancestringindex\nmodule.exports = function (S, index, unicode) {\n return index + (unicode ? charAt(S, index).length : 1);\n};\n","var classof = require('./classof-raw');\nvar regexpExec = require('./regexp-exec');\n\n// `RegExpExec` abstract operation\n// https://tc39.github.io/ecma262/#sec-regexpexec\nmodule.exports = function (R, S) {\n var exec = R.exec;\n if (typeof exec === 'function') {\n var result = exec.call(R, S);\n if (typeof result !== 'object') {\n throw TypeError('RegExp exec method returned something other than an Object or null');\n }\n return result;\n }\n\n if (classof(R) !== 'RegExp') {\n throw TypeError('RegExp#exec called on incompatible receiver');\n }\n\n return regexpExec.call(R, S);\n};\n\n","module.exports = {};\n","'use strict';\nvar fixRegExpWellKnownSymbolLogic = require('../internals/fix-regexp-well-known-symbol-logic');\nvar isRegExp = require('../internals/is-regexp');\nvar anObject = require('../internals/an-object');\nvar requireObjectCoercible = require('../internals/require-object-coercible');\nvar speciesConstructor = require('../internals/species-constructor');\nvar advanceStringIndex = require('../internals/advance-string-index');\nvar toLength = require('../internals/to-length');\nvar callRegExpExec = require('../internals/regexp-exec-abstract');\nvar regexpExec = require('../internals/regexp-exec');\nvar fails = require('../internals/fails');\n\nvar arrayPush = [].push;\nvar min = Math.min;\nvar MAX_UINT32 = 0xFFFFFFFF;\n\n// babel-minify transpiles RegExp('x', 'y') -> /x/y and it causes SyntaxError\nvar SUPPORTS_Y = !fails(function () { return !RegExp(MAX_UINT32, 'y'); });\n\n// @@split logic\nfixRegExpWellKnownSymbolLogic('split', 2, function (SPLIT, nativeSplit, maybeCallNative) {\n var internalSplit;\n if (\n 'abbc'.split(/(b)*/)[1] == 'c' ||\n 'test'.split(/(?:)/, -1).length != 4 ||\n 'ab'.split(/(?:ab)*/).length != 2 ||\n '.'.split(/(.?)(.?)/).length != 4 ||\n '.'.split(/()()/).length > 1 ||\n ''.split(/.?/).length\n ) {\n // based on es5-shim implementation, need to rework it\n internalSplit = function (separator, limit) {\n var string = String(requireObjectCoercible(this));\n var lim = limit === undefined ? MAX_UINT32 : limit >>> 0;\n if (lim === 0) return [];\n if (separator === undefined) return [string];\n // If `separator` is not a regex, use native split\n if (!isRegExp(separator)) {\n return nativeSplit.call(string, separator, lim);\n }\n var output = [];\n var flags = (separator.ignoreCase ? 'i' : '') +\n (separator.multiline ? 'm' : '') +\n (separator.unicode ? 'u' : '') +\n (separator.sticky ? 'y' : '');\n var lastLastIndex = 0;\n // Make `global` and avoid `lastIndex` issues by working with a copy\n var separatorCopy = new RegExp(separator.source, flags + 'g');\n var match, lastIndex, lastLength;\n while (match = regexpExec.call(separatorCopy, string)) {\n lastIndex = separatorCopy.lastIndex;\n if (lastIndex > lastLastIndex) {\n output.push(string.slice(lastLastIndex, match.index));\n if (match.length > 1 && match.index < string.length) arrayPush.apply(output, match.slice(1));\n lastLength = match[0].length;\n lastLastIndex = lastIndex;\n if (output.length >= lim) break;\n }\n if (separatorCopy.lastIndex === match.index) separatorCopy.lastIndex++; // Avoid an infinite loop\n }\n if (lastLastIndex === string.length) {\n if (lastLength || !separatorCopy.test('')) output.push('');\n } else output.push(string.slice(lastLastIndex));\n return output.length > lim ? output.slice(0, lim) : output;\n };\n // Chakra, V8\n } else if ('0'.split(undefined, 0).length) {\n internalSplit = function (separator, limit) {\n return separator === undefined && limit === 0 ? [] : nativeSplit.call(this, separator, limit);\n };\n } else internalSplit = nativeSplit;\n\n return [\n // `String.prototype.split` method\n // https://tc39.github.io/ecma262/#sec-string.prototype.split\n function split(separator, limit) {\n var O = requireObjectCoercible(this);\n var splitter = separator == undefined ? undefined : separator[SPLIT];\n return splitter !== undefined\n ? splitter.call(separator, O, limit)\n : internalSplit.call(String(O), separator, limit);\n },\n // `RegExp.prototype[@@split]` method\n // https://tc39.github.io/ecma262/#sec-regexp.prototype-@@split\n //\n // NOTE: This cannot be properly polyfilled in engines that don't support\n // the 'y' flag.\n function (regexp, limit) {\n var res = maybeCallNative(internalSplit, regexp, this, limit, internalSplit !== nativeSplit);\n if (res.done) return res.value;\n\n var rx = anObject(regexp);\n var S = String(this);\n var C = speciesConstructor(rx, RegExp);\n\n var unicodeMatching = rx.unicode;\n var flags = (rx.ignoreCase ? 'i' : '') +\n (rx.multiline ? 'm' : '') +\n (rx.unicode ? 'u' : '') +\n (SUPPORTS_Y ? 'y' : 'g');\n\n // ^(? + rx + ) is needed, in combination with some S slicing, to\n // simulate the 'y' flag.\n var splitter = new C(SUPPORTS_Y ? rx : '^(?:' + rx.source + ')', flags);\n var lim = limit === undefined ? MAX_UINT32 : limit >>> 0;\n if (lim === 0) return [];\n if (S.length === 0) return callRegExpExec(splitter, S) === null ? [S] : [];\n var p = 0;\n var q = 0;\n var A = [];\n while (q < S.length) {\n splitter.lastIndex = SUPPORTS_Y ? q : 0;\n var z = callRegExpExec(splitter, SUPPORTS_Y ? S : S.slice(q));\n var e;\n if (\n z === null ||\n (e = min(toLength(splitter.lastIndex + (SUPPORTS_Y ? 0 : q)), S.length)) === p\n ) {\n q = advanceStringIndex(S, q, unicodeMatching);\n } else {\n A.push(S.slice(p, q));\n if (A.length === lim) return A;\n for (var i = 1; i <= z.length - 1; i++) {\n A.push(z[i]);\n if (A.length === lim) return A;\n }\n q = p = e;\n }\n }\n A.push(S.slice(p));\n return A;\n }\n ];\n}, !SUPPORTS_Y);\n","'use strict';\nvar nativePropertyIsEnumerable = {}.propertyIsEnumerable;\nvar getOwnPropertyDescriptor = Object.getOwnPropertyDescriptor;\n\n// Nashorn ~ JDK8 bug\nvar NASHORN_BUG = getOwnPropertyDescriptor && !nativePropertyIsEnumerable.call({ 1: 2 }, 1);\n\n// `Object.prototype.propertyIsEnumerable` method implementation\n// https://tc39.github.io/ecma262/#sec-object.prototype.propertyisenumerable\nexports.f = NASHORN_BUG ? function propertyIsEnumerable(V) {\n var descriptor = getOwnPropertyDescriptor(this, V);\n return !!descriptor && descriptor.enumerable;\n} : nativePropertyIsEnumerable;\n","var fails = require('../internals/fails');\nvar classof = require('../internals/classof-raw');\n\nvar split = ''.split;\n\n// fallback for non-array-like ES3 and non-enumerable old V8 strings\nmodule.exports = fails(function () {\n // throws an error in rhino, see https://github.com/mozilla/rhino/issues/346\n // eslint-disable-next-line no-prototype-builtins\n return !Object('z').propertyIsEnumerable(0);\n}) ? function (it) {\n return classof(it) == 'String' ? split.call(it, '') : Object(it);\n} : Object;\n","var isObject = require('../internals/is-object');\n\n// `ToPrimitive` abstract operation\n// https://tc39.github.io/ecma262/#sec-toprimitive\n// instead of the ES6 spec version, we didn't implement @@toPrimitive case\n// and the second argument - flag - preferred type is a string\nmodule.exports = function (input, PREFERRED_STRING) {\n if (!isObject(input)) return input;\n var fn, val;\n if (PREFERRED_STRING && typeof (fn = input.toString) == 'function' && !isObject(val = fn.call(input))) return val;\n if (typeof (fn = input.valueOf) == 'function' && !isObject(val = fn.call(input))) return val;\n if (!PREFERRED_STRING && typeof (fn = input.toString) == 'function' && !isObject(val = fn.call(input))) return val;\n throw TypeError(\"Can't convert object to primitive value\");\n};\n","var DESCRIPTORS = require('../internals/descriptors');\nvar fails = require('../internals/fails');\nvar createElement = require('../internals/document-create-element');\n\n// Thank's IE8 for his funny defineProperty\nmodule.exports = !DESCRIPTORS && !fails(function () {\n return Object.defineProperty(createElement('div'), 'a', {\n get: function () { return 7; }\n }).a != 7;\n});\n","var global = require('../internals/global');\nvar isObject = require('../internals/is-object');\n\nvar document = global.document;\n// typeof document.createElement is 'object' in old IE\nvar EXISTS = isObject(document) && isObject(document.createElement);\n\nmodule.exports = function (it) {\n return EXISTS ? document.createElement(it) : {};\n};\n","var store = require('../internals/shared-store');\n\nvar functionToString = Function.toString;\n\n// this helper broken in `3.4.1-3.4.4`, so we can't use `shared` helper\nif (typeof store.inspectSource != 'function') {\n store.inspectSource = function (it) {\n return functionToString.call(it);\n };\n}\n\nmodule.exports = store.inspectSource;\n","var global = require('../internals/global');\nvar setGlobal = require('../internals/set-global');\n\nvar SHARED = '__core-js_shared__';\nvar store = global[SHARED] || setGlobal(SHARED, {});\n\nmodule.exports = store;\n","var NATIVE_WEAK_MAP = require('../internals/native-weak-map');\nvar global = require('../internals/global');\nvar isObject = require('../internals/is-object');\nvar createNonEnumerableProperty = require('../internals/create-non-enumerable-property');\nvar objectHas = require('../internals/has');\nvar sharedKey = require('../internals/shared-key');\nvar hiddenKeys = require('../internals/hidden-keys');\n\nvar WeakMap = global.WeakMap;\nvar set, get, has;\n\nvar enforce = function (it) {\n return has(it) ? get(it) : set(it, {});\n};\n\nvar getterFor = function (TYPE) {\n return function (it) {\n var state;\n if (!isObject(it) || (state = get(it)).type !== TYPE) {\n throw TypeError('Incompatible receiver, ' + TYPE + ' required');\n } return state;\n };\n};\n\nif (NATIVE_WEAK_MAP) {\n var store = new WeakMap();\n var wmget = store.get;\n var wmhas = store.has;\n var wmset = store.set;\n set = function (it, metadata) {\n wmset.call(store, it, metadata);\n return metadata;\n };\n get = function (it) {\n return wmget.call(store, it) || {};\n };\n has = function (it) {\n return wmhas.call(store, it);\n };\n} else {\n var STATE = sharedKey('state');\n hiddenKeys[STATE] = true;\n set = function (it, metadata) {\n createNonEnumerableProperty(it, STATE, metadata);\n return metadata;\n };\n get = function (it) {\n return objectHas(it, STATE) ? it[STATE] : {};\n };\n has = function (it) {\n return objectHas(it, STATE);\n };\n}\n\nmodule.exports = {\n set: set,\n get: get,\n has: has,\n enforce: enforce,\n getterFor: getterFor\n};\n","var IS_PURE = require('../internals/is-pure');\nvar store = require('../internals/shared-store');\n\n(module.exports = function (key, value) {\n return store[key] || (store[key] = value !== undefined ? value : {});\n})('versions', []).push({\n version: '3.6.5',\n mode: IS_PURE ? 'pure' : 'global',\n copyright: '© 2020 Denis Pushkarev (zloirock.ru)'\n});\n","var id = 0;\nvar postfix = Math.random();\n\nmodule.exports = function (key) {\n return 'Symbol(' + String(key === undefined ? '' : key) + ')_' + (++id + postfix).toString(36);\n};\n","var path = require('../internals/path');\nvar global = require('../internals/global');\n\nvar aFunction = function (variable) {\n return typeof variable == 'function' ? variable : undefined;\n};\n\nmodule.exports = function (namespace, method) {\n return arguments.length < 2 ? aFunction(path[namespace]) || aFunction(global[namespace])\n : path[namespace] && path[namespace][method] || global[namespace] && global[namespace][method];\n};\n","var has = require('../internals/has');\nvar toIndexedObject = require('../internals/to-indexed-object');\nvar indexOf = require('../internals/array-includes').indexOf;\nvar hiddenKeys = require('../internals/hidden-keys');\n\nmodule.exports = function (object, names) {\n var O = toIndexedObject(object);\n var i = 0;\n var result = [];\n var key;\n for (key in O) !has(hiddenKeys, key) && has(O, key) && result.push(key);\n // Don't enum bug & hidden keys\n while (names.length > i) if (has(O, key = names[i++])) {\n ~indexOf(result, key) || result.push(key);\n }\n return result;\n};\n","exports.f = Object.getOwnPropertySymbols;\n","var internalObjectKeys = require('../internals/object-keys-internal');\nvar enumBugKeys = require('../internals/enum-bug-keys');\n\n// `Object.keys` method\n// https://tc39.github.io/ecma262/#sec-object.keys\nmodule.exports = Object.keys || function keys(O) {\n return internalObjectKeys(O, enumBugKeys);\n};\n","'use strict';\nvar anObject = require('../internals/an-object');\n\n// `RegExp.prototype.flags` getter implementation\n// https://tc39.github.io/ecma262/#sec-get-regexp.prototype.flags\nmodule.exports = function () {\n var that = anObject(this);\n var result = '';\n if (that.global) result += 'g';\n if (that.ignoreCase) result += 'i';\n if (that.multiline) result += 'm';\n if (that.dotAll) result += 's';\n if (that.unicode) result += 'u';\n if (that.sticky) result += 'y';\n return result;\n};\n","'use strict';\nvar fixRegExpWellKnownSymbolLogic = require('../internals/fix-regexp-well-known-symbol-logic');\nvar anObject = require('../internals/an-object');\nvar toLength = require('../internals/to-length');\nvar requireObjectCoercible = require('../internals/require-object-coercible');\nvar advanceStringIndex = require('../internals/advance-string-index');\nvar regExpExec = require('../internals/regexp-exec-abstract');\n\n// @@match logic\nfixRegExpWellKnownSymbolLogic('match', 1, function (MATCH, nativeMatch, maybeCallNative) {\n return [\n // `String.prototype.match` method\n // https://tc39.github.io/ecma262/#sec-string.prototype.match\n function match(regexp) {\n var O = requireObjectCoercible(this);\n var matcher = regexp == undefined ? undefined : regexp[MATCH];\n return matcher !== undefined ? matcher.call(regexp, O) : new RegExp(regexp)[MATCH](String(O));\n },\n // `RegExp.prototype[@@match]` method\n // https://tc39.github.io/ecma262/#sec-regexp.prototype-@@match\n function (regexp) {\n var res = maybeCallNative(nativeMatch, regexp, this);\n if (res.done) return res.value;\n\n var rx = anObject(regexp);\n var S = String(this);\n\n if (!rx.global) return regExpExec(rx, S);\n\n var fullUnicode = rx.unicode;\n rx.lastIndex = 0;\n var A = [];\n var n = 0;\n var result;\n while ((result = regExpExec(rx, S)) !== null) {\n var matchStr = String(result[0]);\n A[n] = matchStr;\n if (matchStr === '') rx.lastIndex = advanceStringIndex(S, toLength(rx.lastIndex), fullUnicode);\n n++;\n }\n return n === 0 ? null : A;\n }\n ];\n});\n","var fails = require('../internals/fails');\n\nmodule.exports = !!Object.getOwnPropertySymbols && !fails(function () {\n // Chrome 38 Symbol has incorrect toString conversion\n // eslint-disable-next-line no-undef\n return !String(Symbol());\n});\n","'use strict';\nvar $ = require('../internals/export');\nvar getOwnPropertyDescriptor = require('../internals/object-get-own-property-descriptor').f;\nvar toLength = require('../internals/to-length');\nvar notARegExp = require('../internals/not-a-regexp');\nvar requireObjectCoercible = require('../internals/require-object-coercible');\nvar correctIsRegExpLogic = require('../internals/correct-is-regexp-logic');\nvar IS_PURE = require('../internals/is-pure');\n\nvar nativeStartsWith = ''.startsWith;\nvar min = Math.min;\n\nvar CORRECT_IS_REGEXP_LOGIC = correctIsRegExpLogic('startsWith');\n// https://github.com/zloirock/core-js/pull/702\nvar MDN_POLYFILL_BUG = !IS_PURE && !CORRECT_IS_REGEXP_LOGIC && !!function () {\n var descriptor = getOwnPropertyDescriptor(String.prototype, 'startsWith');\n return descriptor && !descriptor.writable;\n}();\n\n// `String.prototype.startsWith` method\n// https://tc39.github.io/ecma262/#sec-string.prototype.startswith\n$({ target: 'String', proto: true, forced: !MDN_POLYFILL_BUG && !CORRECT_IS_REGEXP_LOGIC }, {\n startsWith: function startsWith(searchString /* , position = 0 */) {\n var that = String(requireObjectCoercible(this));\n notARegExp(searchString);\n var index = toLength(min(arguments.length > 1 ? arguments[1] : undefined, that.length));\n var search = String(searchString);\n return nativeStartsWith\n ? nativeStartsWith.call(that, search, index)\n : that.slice(index, index + search.length) === search;\n }\n});\n","var isObject = require('../internals/is-object');\nvar classof = require('../internals/classof-raw');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\n\nvar MATCH = wellKnownSymbol('match');\n\n// `IsRegExp` abstract operation\n// https://tc39.github.io/ecma262/#sec-isregexp\nmodule.exports = function (it) {\n var isRegExp;\n return isObject(it) && ((isRegExp = it[MATCH]) !== undefined ? !!isRegExp : classof(it) == 'RegExp');\n};\n","var anObject = require('../internals/an-object');\nvar defineProperties = require('../internals/object-define-properties');\nvar enumBugKeys = require('../internals/enum-bug-keys');\nvar hiddenKeys = require('../internals/hidden-keys');\nvar html = require('../internals/html');\nvar documentCreateElement = require('../internals/document-create-element');\nvar sharedKey = require('../internals/shared-key');\n\nvar GT = '>';\nvar LT = '<';\nvar PROTOTYPE = 'prototype';\nvar SCRIPT = 'script';\nvar IE_PROTO = sharedKey('IE_PROTO');\n\nvar EmptyConstructor = function () { /* empty */ };\n\nvar scriptTag = function (content) {\n return LT + SCRIPT + GT + content + LT + '/' + SCRIPT + GT;\n};\n\n// Create object with fake `null` prototype: use ActiveX Object with cleared prototype\nvar NullProtoObjectViaActiveX = function (activeXDocument) {\n activeXDocument.write(scriptTag(''));\n activeXDocument.close();\n var temp = activeXDocument.parentWindow.Object;\n activeXDocument = null; // avoid memory leak\n return temp;\n};\n\n// Create object with fake `null` prototype: use iframe Object with cleared prototype\nvar NullProtoObjectViaIFrame = function () {\n // Thrash, waste and sodomy: IE GC bug\n var iframe = documentCreateElement('iframe');\n var JS = 'java' + SCRIPT + ':';\n var iframeDocument;\n iframe.style.display = 'none';\n html.appendChild(iframe);\n // https://github.com/zloirock/core-js/issues/475\n iframe.src = String(JS);\n iframeDocument = iframe.contentWindow.document;\n iframeDocument.open();\n iframeDocument.write(scriptTag('document.F=Object'));\n iframeDocument.close();\n return iframeDocument.F;\n};\n\n// Check for document.domain and active x support\n// No need to use active x approach when document.domain is not set\n// see https://github.com/es-shims/es5-shim/issues/150\n// variation of https://github.com/kitcambridge/es5-shim/commit/4f738ac066346\n// avoid IE GC bug\nvar activeXDocument;\nvar NullProtoObject = function () {\n try {\n /* global ActiveXObject */\n activeXDocument = document.domain && new ActiveXObject('htmlfile');\n } catch (error) { /* ignore */ }\n NullProtoObject = activeXDocument ? NullProtoObjectViaActiveX(activeXDocument) : NullProtoObjectViaIFrame();\n var length = enumBugKeys.length;\n while (length--) delete NullProtoObject[PROTOTYPE][enumBugKeys[length]];\n return NullProtoObject();\n};\n\nhiddenKeys[IE_PROTO] = true;\n\n// `Object.create` method\n// https://tc39.github.io/ecma262/#sec-object.create\nmodule.exports = Object.create || function create(O, Properties) {\n var result;\n if (O !== null) {\n EmptyConstructor[PROTOTYPE] = anObject(O);\n result = new EmptyConstructor();\n EmptyConstructor[PROTOTYPE] = null;\n // add \"__proto__\" for Object.getPrototypeOf polyfill\n result[IE_PROTO] = O;\n } else result = NullProtoObject();\n return Properties === undefined ? result : defineProperties(result, Properties);\n};\n","'use strict';\nvar getPrototypeOf = require('../internals/object-get-prototype-of');\nvar createNonEnumerableProperty = require('../internals/create-non-enumerable-property');\nvar has = require('../internals/has');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\nvar IS_PURE = require('../internals/is-pure');\n\nvar ITERATOR = wellKnownSymbol('iterator');\nvar BUGGY_SAFARI_ITERATORS = false;\n\nvar returnThis = function () { return this; };\n\n// `%IteratorPrototype%` object\n// https://tc39.github.io/ecma262/#sec-%iteratorprototype%-object\nvar IteratorPrototype, PrototypeOfArrayIteratorPrototype, arrayIterator;\n\nif ([].keys) {\n arrayIterator = [].keys();\n // Safari 8 has buggy iterators w/o `next`\n if (!('next' in arrayIterator)) BUGGY_SAFARI_ITERATORS = true;\n else {\n PrototypeOfArrayIteratorPrototype = getPrototypeOf(getPrototypeOf(arrayIterator));\n if (PrototypeOfArrayIteratorPrototype !== Object.prototype) IteratorPrototype = PrototypeOfArrayIteratorPrototype;\n }\n}\n\nif (IteratorPrototype == undefined) IteratorPrototype = {};\n\n// 25.1.2.1.1 %IteratorPrototype%[@@iterator]()\nif (!IS_PURE && !has(IteratorPrototype, ITERATOR)) {\n createNonEnumerableProperty(IteratorPrototype, ITERATOR, returnThis);\n}\n\nmodule.exports = {\n IteratorPrototype: IteratorPrototype,\n BUGGY_SAFARI_ITERATORS: BUGGY_SAFARI_ITERATORS\n};\n","var has = require('../internals/has');\nvar toObject = require('../internals/to-object');\nvar sharedKey = require('../internals/shared-key');\nvar CORRECT_PROTOTYPE_GETTER = require('../internals/correct-prototype-getter');\n\nvar IE_PROTO = sharedKey('IE_PROTO');\nvar ObjectPrototype = Object.prototype;\n\n// `Object.getPrototypeOf` method\n// https://tc39.github.io/ecma262/#sec-object.getprototypeof\nmodule.exports = CORRECT_PROTOTYPE_GETTER ? Object.getPrototypeOf : function (O) {\n O = toObject(O);\n if (has(O, IE_PROTO)) return O[IE_PROTO];\n if (typeof O.constructor == 'function' && O instanceof O.constructor) {\n return O.constructor.prototype;\n } return O instanceof Object ? ObjectPrototype : null;\n};\n","var defineProperty = require('../internals/object-define-property').f;\nvar has = require('../internals/has');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\n\nvar TO_STRING_TAG = wellKnownSymbol('toStringTag');\n\nmodule.exports = function (it, TAG, STATIC) {\n if (it && !has(it = STATIC ? it : it.prototype, TO_STRING_TAG)) {\n defineProperty(it, TO_STRING_TAG, { configurable: true, value: TAG });\n }\n};\n","var g;\n\n// This works in non-strict mode\ng = (function() {\n\treturn this;\n})();\n\ntry {\n\t// This works if eval is allowed (see CSP)\n\tg = g || new Function(\"return this\")();\n} catch (e) {\n\t// This works if the window reference is available\n\tif (typeof window === \"object\") g = window;\n}\n\n// g can still be undefined, but nothing to do about it...\n// We return undefined, instead of nothing here, so it's\n// easier to handle this case. if(!global) { ...}\n\nmodule.exports = g;\n","var global = require('../internals/global');\nvar inspectSource = require('../internals/inspect-source');\n\nvar WeakMap = global.WeakMap;\n\nmodule.exports = typeof WeakMap === 'function' && /native code/.test(inspectSource(WeakMap));\n","var has = require('../internals/has');\nvar ownKeys = require('../internals/own-keys');\nvar getOwnPropertyDescriptorModule = require('../internals/object-get-own-property-descriptor');\nvar definePropertyModule = require('../internals/object-define-property');\n\nmodule.exports = function (target, source) {\n var keys = ownKeys(source);\n var defineProperty = definePropertyModule.f;\n var getOwnPropertyDescriptor = getOwnPropertyDescriptorModule.f;\n for (var i = 0; i < keys.length; i++) {\n var key = keys[i];\n if (!has(target, key)) defineProperty(target, key, getOwnPropertyDescriptor(source, key));\n }\n};\n","var getBuiltIn = require('../internals/get-built-in');\nvar getOwnPropertyNamesModule = require('../internals/object-get-own-property-names');\nvar getOwnPropertySymbolsModule = require('../internals/object-get-own-property-symbols');\nvar anObject = require('../internals/an-object');\n\n// all object keys, includes non-enumerable and symbols\nmodule.exports = getBuiltIn('Reflect', 'ownKeys') || function ownKeys(it) {\n var keys = getOwnPropertyNamesModule.f(anObject(it));\n var getOwnPropertySymbols = getOwnPropertySymbolsModule.f;\n return getOwnPropertySymbols ? keys.concat(getOwnPropertySymbols(it)) : keys;\n};\n","var global = require('../internals/global');\n\nmodule.exports = global;\n","var internalObjectKeys = require('../internals/object-keys-internal');\nvar enumBugKeys = require('../internals/enum-bug-keys');\n\nvar hiddenKeys = enumBugKeys.concat('length', 'prototype');\n\n// `Object.getOwnPropertyNames` method\n// https://tc39.github.io/ecma262/#sec-object.getownpropertynames\nexports.f = Object.getOwnPropertyNames || function getOwnPropertyNames(O) {\n return internalObjectKeys(O, hiddenKeys);\n};\n","var toIndexedObject = require('../internals/to-indexed-object');\nvar toLength = require('../internals/to-length');\nvar toAbsoluteIndex = require('../internals/to-absolute-index');\n\n// `Array.prototype.{ indexOf, includes }` methods implementation\nvar createMethod = function (IS_INCLUDES) {\n return function ($this, el, fromIndex) {\n var O = toIndexedObject($this);\n var length = toLength(O.length);\n var index = toAbsoluteIndex(fromIndex, length);\n var value;\n // Array#includes uses SameValueZero equality algorithm\n // eslint-disable-next-line no-self-compare\n if (IS_INCLUDES && el != el) while (length > index) {\n value = O[index++];\n // eslint-disable-next-line no-self-compare\n if (value != value) return true;\n // Array#indexOf ignores holes, Array#includes - not\n } else for (;length > index; index++) {\n if ((IS_INCLUDES || index in O) && O[index] === el) return IS_INCLUDES || index || 0;\n } return !IS_INCLUDES && -1;\n };\n};\n\nmodule.exports = {\n // `Array.prototype.includes` method\n // https://tc39.github.io/ecma262/#sec-array.prototype.includes\n includes: createMethod(true),\n // `Array.prototype.indexOf` method\n // https://tc39.github.io/ecma262/#sec-array.prototype.indexof\n indexOf: createMethod(false)\n};\n","var toInteger = require('../internals/to-integer');\n\nvar max = Math.max;\nvar min = Math.min;\n\n// Helper for a popular repeating case of the spec:\n// Let integer be ? ToInteger(index).\n// If integer < 0, let result be max((length + integer), 0); else let result be min(integer, length).\nmodule.exports = function (index, length) {\n var integer = toInteger(index);\n return integer < 0 ? max(integer + length, 0) : min(integer, length);\n};\n","var fails = require('../internals/fails');\n\nvar replacement = /#|\\.prototype\\./;\n\nvar isForced = function (feature, detection) {\n var value = data[normalize(feature)];\n return value == POLYFILL ? true\n : value == NATIVE ? false\n : typeof detection == 'function' ? fails(detection)\n : !!detection;\n};\n\nvar normalize = isForced.normalize = function (string) {\n return String(string).replace(replacement, '.').toLowerCase();\n};\n\nvar data = isForced.data = {};\nvar NATIVE = isForced.NATIVE = 'N';\nvar POLYFILL = isForced.POLYFILL = 'P';\n\nmodule.exports = isForced;\n","'use strict';\nvar DESCRIPTORS = require('../internals/descriptors');\nvar fails = require('../internals/fails');\nvar objectKeys = require('../internals/object-keys');\nvar getOwnPropertySymbolsModule = require('../internals/object-get-own-property-symbols');\nvar propertyIsEnumerableModule = require('../internals/object-property-is-enumerable');\nvar toObject = require('../internals/to-object');\nvar IndexedObject = require('../internals/indexed-object');\n\nvar nativeAssign = Object.assign;\nvar defineProperty = Object.defineProperty;\n\n// `Object.assign` method\n// https://tc39.github.io/ecma262/#sec-object.assign\nmodule.exports = !nativeAssign || fails(function () {\n // should have correct order of operations (Edge bug)\n if (DESCRIPTORS && nativeAssign({ b: 1 }, nativeAssign(defineProperty({}, 'a', {\n enumerable: true,\n get: function () {\n defineProperty(this, 'b', {\n value: 3,\n enumerable: false\n });\n }\n }), { b: 2 })).b !== 1) return true;\n // should work with symbols and should have deterministic property order (V8 bug)\n var A = {};\n var B = {};\n // eslint-disable-next-line no-undef\n var symbol = Symbol();\n var alphabet = 'abcdefghijklmnopqrst';\n A[symbol] = 7;\n alphabet.split('').forEach(function (chr) { B[chr] = chr; });\n return nativeAssign({}, A)[symbol] != 7 || objectKeys(nativeAssign({}, B)).join('') != alphabet;\n}) ? function assign(target, source) { // eslint-disable-line no-unused-vars\n var T = toObject(target);\n var argumentsLength = arguments.length;\n var index = 1;\n var getOwnPropertySymbols = getOwnPropertySymbolsModule.f;\n var propertyIsEnumerable = propertyIsEnumerableModule.f;\n while (argumentsLength > index) {\n var S = IndexedObject(arguments[index++]);\n var keys = getOwnPropertySymbols ? objectKeys(S).concat(getOwnPropertySymbols(S)) : objectKeys(S);\n var length = keys.length;\n var j = 0;\n var key;\n while (length > j) {\n key = keys[j++];\n if (!DESCRIPTORS || propertyIsEnumerable.call(S, key)) T[key] = S[key];\n }\n } return T;\n} : nativeAssign;\n","'use strict';\nvar $ = require('../internals/export');\nvar exec = require('../internals/regexp-exec');\n\n$({ target: 'RegExp', proto: true, forced: /./.exec !== exec }, {\n exec: exec\n});\n","'use strict';\n\nvar fails = require('./fails');\n\n// babel-minify transpiles RegExp('a', 'y') -> /a/y and it causes SyntaxError,\n// so we use an intermediate function.\nfunction RE(s, f) {\n return RegExp(s, f);\n}\n\nexports.UNSUPPORTED_Y = fails(function () {\n // babel-minify transpiles RegExp('a', 'y') -> /a/y and it causes SyntaxError\n var re = RE('a', 'y');\n re.lastIndex = 2;\n return re.exec('abcd') != null;\n});\n\nexports.BROKEN_CARET = fails(function () {\n // https://bugzilla.mozilla.org/show_bug.cgi?id=773687\n var re = RE('^r', 'gy');\n re.lastIndex = 2;\n return re.exec('str') != null;\n});\n","var NATIVE_SYMBOL = require('../internals/native-symbol');\n\nmodule.exports = NATIVE_SYMBOL\n // eslint-disable-next-line no-undef\n && !Symbol.sham\n // eslint-disable-next-line no-undef\n && typeof Symbol.iterator == 'symbol';\n","var toInteger = require('../internals/to-integer');\nvar requireObjectCoercible = require('../internals/require-object-coercible');\n\n// `String.prototype.{ codePointAt, at }` methods implementation\nvar createMethod = function (CONVERT_TO_STRING) {\n return function ($this, pos) {\n var S = String(requireObjectCoercible($this));\n var position = toInteger(pos);\n var size = S.length;\n var first, second;\n if (position < 0 || position >= size) return CONVERT_TO_STRING ? '' : undefined;\n first = S.charCodeAt(position);\n return first < 0xD800 || first > 0xDBFF || position + 1 === size\n || (second = S.charCodeAt(position + 1)) < 0xDC00 || second > 0xDFFF\n ? CONVERT_TO_STRING ? S.charAt(position) : first\n : CONVERT_TO_STRING ? S.slice(position, position + 2) : (first - 0xD800 << 10) + (second - 0xDC00) + 0x10000;\n };\n};\n\nmodule.exports = {\n // `String.prototype.codePointAt` method\n // https://tc39.github.io/ecma262/#sec-string.prototype.codepointat\n codeAt: createMethod(false),\n // `String.prototype.at` method\n // https://github.com/mathiasbynens/String.prototype.at\n charAt: createMethod(true)\n};\n","var isRegExp = require('../internals/is-regexp');\n\nmodule.exports = function (it) {\n if (isRegExp(it)) {\n throw TypeError(\"The method doesn't accept regular expressions\");\n } return it;\n};\n","var wellKnownSymbol = require('../internals/well-known-symbol');\n\nvar MATCH = wellKnownSymbol('match');\n\nmodule.exports = function (METHOD_NAME) {\n var regexp = /./;\n try {\n '/./'[METHOD_NAME](regexp);\n } catch (e) {\n try {\n regexp[MATCH] = false;\n return '/./'[METHOD_NAME](regexp);\n } catch (f) { /* empty */ }\n } return false;\n};\n","// iterable DOM collections\n// flag - `iterable` interface - 'entries', 'keys', 'values', 'forEach' methods\nmodule.exports = {\n CSSRuleList: 0,\n CSSStyleDeclaration: 0,\n CSSValueList: 0,\n ClientRectList: 0,\n DOMRectList: 0,\n DOMStringList: 0,\n DOMTokenList: 1,\n DataTransferItemList: 0,\n FileList: 0,\n HTMLAllCollection: 0,\n HTMLCollection: 0,\n HTMLFormElement: 0,\n HTMLSelectElement: 0,\n MediaList: 0,\n MimeTypeArray: 0,\n NamedNodeMap: 0,\n NodeList: 1,\n PaintRequestList: 0,\n Plugin: 0,\n PluginArray: 0,\n SVGLengthList: 0,\n SVGNumberList: 0,\n SVGPathSegList: 0,\n SVGPointList: 0,\n SVGStringList: 0,\n SVGTransformList: 0,\n SourceBufferList: 0,\n StyleSheetList: 0,\n TextTrackCueList: 0,\n TextTrackList: 0,\n TouchList: 0\n};\n","'use strict';\nvar toIndexedObject = require('../internals/to-indexed-object');\nvar addToUnscopables = require('../internals/add-to-unscopables');\nvar Iterators = require('../internals/iterators');\nvar InternalStateModule = require('../internals/internal-state');\nvar defineIterator = require('../internals/define-iterator');\n\nvar ARRAY_ITERATOR = 'Array Iterator';\nvar setInternalState = InternalStateModule.set;\nvar getInternalState = InternalStateModule.getterFor(ARRAY_ITERATOR);\n\n// `Array.prototype.entries` method\n// https://tc39.github.io/ecma262/#sec-array.prototype.entries\n// `Array.prototype.keys` method\n// https://tc39.github.io/ecma262/#sec-array.prototype.keys\n// `Array.prototype.values` method\n// https://tc39.github.io/ecma262/#sec-array.prototype.values\n// `Array.prototype[@@iterator]` method\n// https://tc39.github.io/ecma262/#sec-array.prototype-@@iterator\n// `CreateArrayIterator` internal method\n// https://tc39.github.io/ecma262/#sec-createarrayiterator\nmodule.exports = defineIterator(Array, 'Array', function (iterated, kind) {\n setInternalState(this, {\n type: ARRAY_ITERATOR,\n target: toIndexedObject(iterated), // target\n index: 0, // next index\n kind: kind // kind\n });\n// `%ArrayIteratorPrototype%.next` method\n// https://tc39.github.io/ecma262/#sec-%arrayiteratorprototype%.next\n}, function () {\n var state = getInternalState(this);\n var target = state.target;\n var kind = state.kind;\n var index = state.index++;\n if (!target || index >= target.length) {\n state.target = undefined;\n return { value: undefined, done: true };\n }\n if (kind == 'keys') return { value: index, done: false };\n if (kind == 'values') return { value: target[index], done: false };\n return { value: [index, target[index]], done: false };\n}, 'values');\n\n// argumentsList[@@iterator] is %ArrayProto_values%\n// https://tc39.github.io/ecma262/#sec-createunmappedargumentsobject\n// https://tc39.github.io/ecma262/#sec-createmappedargumentsobject\nIterators.Arguments = Iterators.Array;\n\n// https://tc39.github.io/ecma262/#sec-array.prototype-@@unscopables\naddToUnscopables('keys');\naddToUnscopables('values');\naddToUnscopables('entries');\n","var wellKnownSymbol = require('../internals/well-known-symbol');\nvar create = require('../internals/object-create');\nvar definePropertyModule = require('../internals/object-define-property');\n\nvar UNSCOPABLES = wellKnownSymbol('unscopables');\nvar ArrayPrototype = Array.prototype;\n\n// Array.prototype[@@unscopables]\n// https://tc39.github.io/ecma262/#sec-array.prototype-@@unscopables\nif (ArrayPrototype[UNSCOPABLES] == undefined) {\n definePropertyModule.f(ArrayPrototype, UNSCOPABLES, {\n configurable: true,\n value: create(null)\n });\n}\n\n// add a key to Array.prototype[@@unscopables]\nmodule.exports = function (key) {\n ArrayPrototype[UNSCOPABLES][key] = true;\n};\n","var DESCRIPTORS = require('../internals/descriptors');\nvar definePropertyModule = require('../internals/object-define-property');\nvar anObject = require('../internals/an-object');\nvar objectKeys = require('../internals/object-keys');\n\n// `Object.defineProperties` method\n// https://tc39.github.io/ecma262/#sec-object.defineproperties\nmodule.exports = DESCRIPTORS ? Object.defineProperties : function defineProperties(O, Properties) {\n anObject(O);\n var keys = objectKeys(Properties);\n var length = keys.length;\n var index = 0;\n var key;\n while (length > index) definePropertyModule.f(O, key = keys[index++], Properties[key]);\n return O;\n};\n","var getBuiltIn = require('../internals/get-built-in');\n\nmodule.exports = getBuiltIn('document', 'documentElement');\n","'use strict';\nvar $ = require('../internals/export');\nvar createIteratorConstructor = require('../internals/create-iterator-constructor');\nvar getPrototypeOf = require('../internals/object-get-prototype-of');\nvar setPrototypeOf = require('../internals/object-set-prototype-of');\nvar setToStringTag = require('../internals/set-to-string-tag');\nvar createNonEnumerableProperty = require('../internals/create-non-enumerable-property');\nvar redefine = require('../internals/redefine');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\nvar IS_PURE = require('../internals/is-pure');\nvar Iterators = require('../internals/iterators');\nvar IteratorsCore = require('../internals/iterators-core');\n\nvar IteratorPrototype = IteratorsCore.IteratorPrototype;\nvar BUGGY_SAFARI_ITERATORS = IteratorsCore.BUGGY_SAFARI_ITERATORS;\nvar ITERATOR = wellKnownSymbol('iterator');\nvar KEYS = 'keys';\nvar VALUES = 'values';\nvar ENTRIES = 'entries';\n\nvar returnThis = function () { return this; };\n\nmodule.exports = function (Iterable, NAME, IteratorConstructor, next, DEFAULT, IS_SET, FORCED) {\n createIteratorConstructor(IteratorConstructor, NAME, next);\n\n var getIterationMethod = function (KIND) {\n if (KIND === DEFAULT && defaultIterator) return defaultIterator;\n if (!BUGGY_SAFARI_ITERATORS && KIND in IterablePrototype) return IterablePrototype[KIND];\n switch (KIND) {\n case KEYS: return function keys() { return new IteratorConstructor(this, KIND); };\n case VALUES: return function values() { return new IteratorConstructor(this, KIND); };\n case ENTRIES: return function entries() { return new IteratorConstructor(this, KIND); };\n } return function () { return new IteratorConstructor(this); };\n };\n\n var TO_STRING_TAG = NAME + ' Iterator';\n var INCORRECT_VALUES_NAME = false;\n var IterablePrototype = Iterable.prototype;\n var nativeIterator = IterablePrototype[ITERATOR]\n || IterablePrototype['@@iterator']\n || DEFAULT && IterablePrototype[DEFAULT];\n var defaultIterator = !BUGGY_SAFARI_ITERATORS && nativeIterator || getIterationMethod(DEFAULT);\n var anyNativeIterator = NAME == 'Array' ? IterablePrototype.entries || nativeIterator : nativeIterator;\n var CurrentIteratorPrototype, methods, KEY;\n\n // fix native\n if (anyNativeIterator) {\n CurrentIteratorPrototype = getPrototypeOf(anyNativeIterator.call(new Iterable()));\n if (IteratorPrototype !== Object.prototype && CurrentIteratorPrototype.next) {\n if (!IS_PURE && getPrototypeOf(CurrentIteratorPrototype) !== IteratorPrototype) {\n if (setPrototypeOf) {\n setPrototypeOf(CurrentIteratorPrototype, IteratorPrototype);\n } else if (typeof CurrentIteratorPrototype[ITERATOR] != 'function') {\n createNonEnumerableProperty(CurrentIteratorPrototype, ITERATOR, returnThis);\n }\n }\n // Set @@toStringTag to native iterators\n setToStringTag(CurrentIteratorPrototype, TO_STRING_TAG, true, true);\n if (IS_PURE) Iterators[TO_STRING_TAG] = returnThis;\n }\n }\n\n // fix Array#{values, @@iterator}.name in V8 / FF\n if (DEFAULT == VALUES && nativeIterator && nativeIterator.name !== VALUES) {\n INCORRECT_VALUES_NAME = true;\n defaultIterator = function values() { return nativeIterator.call(this); };\n }\n\n // define iterator\n if ((!IS_PURE || FORCED) && IterablePrototype[ITERATOR] !== defaultIterator) {\n createNonEnumerableProperty(IterablePrototype, ITERATOR, defaultIterator);\n }\n Iterators[NAME] = defaultIterator;\n\n // export additional methods\n if (DEFAULT) {\n methods = {\n values: getIterationMethod(VALUES),\n keys: IS_SET ? defaultIterator : getIterationMethod(KEYS),\n entries: getIterationMethod(ENTRIES)\n };\n if (FORCED) for (KEY in methods) {\n if (BUGGY_SAFARI_ITERATORS || INCORRECT_VALUES_NAME || !(KEY in IterablePrototype)) {\n redefine(IterablePrototype, KEY, methods[KEY]);\n }\n } else $({ target: NAME, proto: true, forced: BUGGY_SAFARI_ITERATORS || INCORRECT_VALUES_NAME }, methods);\n }\n\n return methods;\n};\n","'use strict';\nvar IteratorPrototype = require('../internals/iterators-core').IteratorPrototype;\nvar create = require('../internals/object-create');\nvar createPropertyDescriptor = require('../internals/create-property-descriptor');\nvar setToStringTag = require('../internals/set-to-string-tag');\nvar Iterators = require('../internals/iterators');\n\nvar returnThis = function () { return this; };\n\nmodule.exports = function (IteratorConstructor, NAME, next) {\n var TO_STRING_TAG = NAME + ' Iterator';\n IteratorConstructor.prototype = create(IteratorPrototype, { next: createPropertyDescriptor(1, next) });\n setToStringTag(IteratorConstructor, TO_STRING_TAG, false, true);\n Iterators[TO_STRING_TAG] = returnThis;\n return IteratorConstructor;\n};\n","var fails = require('../internals/fails');\n\nmodule.exports = !fails(function () {\n function F() { /* empty */ }\n F.prototype.constructor = null;\n return Object.getPrototypeOf(new F()) !== F.prototype;\n});\n","var anObject = require('../internals/an-object');\nvar aPossiblePrototype = require('../internals/a-possible-prototype');\n\n// `Object.setPrototypeOf` method\n// https://tc39.github.io/ecma262/#sec-object.setprototypeof\n// Works with __proto__ only. Old v8 can't work with null proto objects.\n/* eslint-disable no-proto */\nmodule.exports = Object.setPrototypeOf || ('__proto__' in {} ? function () {\n var CORRECT_SETTER = false;\n var test = {};\n var setter;\n try {\n setter = Object.getOwnPropertyDescriptor(Object.prototype, '__proto__').set;\n setter.call(test, []);\n CORRECT_SETTER = test instanceof Array;\n } catch (error) { /* empty */ }\n return function setPrototypeOf(O, proto) {\n anObject(O);\n aPossiblePrototype(proto);\n if (CORRECT_SETTER) setter.call(O, proto);\n else O.__proto__ = proto;\n return O;\n };\n}() : undefined);\n","var isObject = require('../internals/is-object');\n\nmodule.exports = function (it) {\n if (!isObject(it) && it !== null) {\n throw TypeError(\"Can't set \" + String(it) + ' as a prototype');\n } return it;\n};\n","'use strict';\nvar fixRegExpWellKnownSymbolLogic = require('../internals/fix-regexp-well-known-symbol-logic');\nvar anObject = require('../internals/an-object');\nvar toObject = require('../internals/to-object');\nvar toLength = require('../internals/to-length');\nvar toInteger = require('../internals/to-integer');\nvar requireObjectCoercible = require('../internals/require-object-coercible');\nvar advanceStringIndex = require('../internals/advance-string-index');\nvar regExpExec = require('../internals/regexp-exec-abstract');\n\nvar max = Math.max;\nvar min = Math.min;\nvar floor = Math.floor;\nvar SUBSTITUTION_SYMBOLS = /\\$([$&'`]|\\d\\d?|<[^>]*>)/g;\nvar SUBSTITUTION_SYMBOLS_NO_NAMED = /\\$([$&'`]|\\d\\d?)/g;\n\nvar maybeToString = function (it) {\n return it === undefined ? it : String(it);\n};\n\n// @@replace logic\nfixRegExpWellKnownSymbolLogic('replace', 2, function (REPLACE, nativeReplace, maybeCallNative, reason) {\n var REGEXP_REPLACE_SUBSTITUTES_UNDEFINED_CAPTURE = reason.REGEXP_REPLACE_SUBSTITUTES_UNDEFINED_CAPTURE;\n var REPLACE_KEEPS_$0 = reason.REPLACE_KEEPS_$0;\n var UNSAFE_SUBSTITUTE = REGEXP_REPLACE_SUBSTITUTES_UNDEFINED_CAPTURE ? '$' : '$0';\n\n return [\n // `String.prototype.replace` method\n // https://tc39.github.io/ecma262/#sec-string.prototype.replace\n function replace(searchValue, replaceValue) {\n var O = requireObjectCoercible(this);\n var replacer = searchValue == undefined ? undefined : searchValue[REPLACE];\n return replacer !== undefined\n ? replacer.call(searchValue, O, replaceValue)\n : nativeReplace.call(String(O), searchValue, replaceValue);\n },\n // `RegExp.prototype[@@replace]` method\n // https://tc39.github.io/ecma262/#sec-regexp.prototype-@@replace\n function (regexp, replaceValue) {\n if (\n (!REGEXP_REPLACE_SUBSTITUTES_UNDEFINED_CAPTURE && REPLACE_KEEPS_$0) ||\n (typeof replaceValue === 'string' && replaceValue.indexOf(UNSAFE_SUBSTITUTE) === -1)\n ) {\n var res = maybeCallNative(nativeReplace, regexp, this, replaceValue);\n if (res.done) return res.value;\n }\n\n var rx = anObject(regexp);\n var S = String(this);\n\n var functionalReplace = typeof replaceValue === 'function';\n if (!functionalReplace) replaceValue = String(replaceValue);\n\n var global = rx.global;\n if (global) {\n var fullUnicode = rx.unicode;\n rx.lastIndex = 0;\n }\n var results = [];\n while (true) {\n var result = regExpExec(rx, S);\n if (result === null) break;\n\n results.push(result);\n if (!global) break;\n\n var matchStr = String(result[0]);\n if (matchStr === '') rx.lastIndex = advanceStringIndex(S, toLength(rx.lastIndex), fullUnicode);\n }\n\n var accumulatedResult = '';\n var nextSourcePosition = 0;\n for (var i = 0; i < results.length; i++) {\n result = results[i];\n\n var matched = String(result[0]);\n var position = max(min(toInteger(result.index), S.length), 0);\n var captures = [];\n // NOTE: This is equivalent to\n // captures = result.slice(1).map(maybeToString)\n // but for some reason `nativeSlice.call(result, 1, result.length)` (called in\n // the slice polyfill when slicing native arrays) \"doesn't work\" in safari 9 and\n // causes a crash (https://pastebin.com/N21QzeQA) when trying to debug it.\n for (var j = 1; j < result.length; j++) captures.push(maybeToString(result[j]));\n var namedCaptures = result.groups;\n if (functionalReplace) {\n var replacerArgs = [matched].concat(captures, position, S);\n if (namedCaptures !== undefined) replacerArgs.push(namedCaptures);\n var replacement = String(replaceValue.apply(undefined, replacerArgs));\n } else {\n replacement = getSubstitution(matched, S, position, captures, namedCaptures, replaceValue);\n }\n if (position >= nextSourcePosition) {\n accumulatedResult += S.slice(nextSourcePosition, position) + replacement;\n nextSourcePosition = position + matched.length;\n }\n }\n return accumulatedResult + S.slice(nextSourcePosition);\n }\n ];\n\n // https://tc39.github.io/ecma262/#sec-getsubstitution\n function getSubstitution(matched, str, position, captures, namedCaptures, replacement) {\n var tailPos = position + matched.length;\n var m = captures.length;\n var symbols = SUBSTITUTION_SYMBOLS_NO_NAMED;\n if (namedCaptures !== undefined) {\n namedCaptures = toObject(namedCaptures);\n symbols = SUBSTITUTION_SYMBOLS;\n }\n return nativeReplace.call(replacement, symbols, function (match, ch) {\n var capture;\n switch (ch.charAt(0)) {\n case '$': return '$';\n case '&': return matched;\n case '`': return str.slice(0, position);\n case \"'\": return str.slice(tailPos);\n case '<':\n capture = namedCaptures[ch.slice(1, -1)];\n break;\n default: // \\d\\d?\n var n = +ch;\n if (n === 0) return match;\n if (n > m) {\n var f = floor(n / 10);\n if (f === 0) return match;\n if (f <= m) return captures[f - 1] === undefined ? ch.charAt(1) : captures[f - 1] + ch.charAt(1);\n return match;\n }\n capture = captures[n - 1];\n }\n return capture === undefined ? '' : capture;\n });\n }\n});\n","var anObject = require('../internals/an-object');\nvar aFunction = require('../internals/a-function');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\n\nvar SPECIES = wellKnownSymbol('species');\n\n// `SpeciesConstructor` abstract operation\n// https://tc39.github.io/ecma262/#sec-speciesconstructor\nmodule.exports = function (O, defaultConstructor) {\n var C = anObject(O).constructor;\n var S;\n return C === undefined || (S = anObject(C)[SPECIES]) == undefined ? defaultConstructor : aFunction(S);\n};\n","module.exports = function (it) {\n if (typeof it != 'function') {\n throw TypeError(String(it) + ' is not a function');\n } return it;\n};\n","'use strict';\nvar $ = require('../internals/export');\nvar toInteger = require('../internals/to-integer');\nvar thisNumberValue = require('../internals/this-number-value');\nvar repeat = require('../internals/string-repeat');\nvar fails = require('../internals/fails');\n\nvar nativeToFixed = 1.0.toFixed;\nvar floor = Math.floor;\n\nvar pow = function (x, n, acc) {\n return n === 0 ? acc : n % 2 === 1 ? pow(x, n - 1, acc * x) : pow(x * x, n / 2, acc);\n};\n\nvar log = function (x) {\n var n = 0;\n var x2 = x;\n while (x2 >= 4096) {\n n += 12;\n x2 /= 4096;\n }\n while (x2 >= 2) {\n n += 1;\n x2 /= 2;\n } return n;\n};\n\nvar FORCED = nativeToFixed && (\n 0.00008.toFixed(3) !== '0.000' ||\n 0.9.toFixed(0) !== '1' ||\n 1.255.toFixed(2) !== '1.25' ||\n 1000000000000000128.0.toFixed(0) !== '1000000000000000128'\n) || !fails(function () {\n // V8 ~ Android 4.3-\n nativeToFixed.call({});\n});\n\n// `Number.prototype.toFixed` method\n// https://tc39.github.io/ecma262/#sec-number.prototype.tofixed\n$({ target: 'Number', proto: true, forced: FORCED }, {\n // eslint-disable-next-line max-statements\n toFixed: function toFixed(fractionDigits) {\n var number = thisNumberValue(this);\n var fractDigits = toInteger(fractionDigits);\n var data = [0, 0, 0, 0, 0, 0];\n var sign = '';\n var result = '0';\n var e, z, j, k;\n\n var multiply = function (n, c) {\n var index = -1;\n var c2 = c;\n while (++index < 6) {\n c2 += n * data[index];\n data[index] = c2 % 1e7;\n c2 = floor(c2 / 1e7);\n }\n };\n\n var divide = function (n) {\n var index = 6;\n var c = 0;\n while (--index >= 0) {\n c += data[index];\n data[index] = floor(c / n);\n c = (c % n) * 1e7;\n }\n };\n\n var dataToString = function () {\n var index = 6;\n var s = '';\n while (--index >= 0) {\n if (s !== '' || index === 0 || data[index] !== 0) {\n var t = String(data[index]);\n s = s === '' ? t : s + repeat.call('0', 7 - t.length) + t;\n }\n } return s;\n };\n\n if (fractDigits < 0 || fractDigits > 20) throw RangeError('Incorrect fraction digits');\n // eslint-disable-next-line no-self-compare\n if (number != number) return 'NaN';\n if (number <= -1e21 || number >= 1e21) return String(number);\n if (number < 0) {\n sign = '-';\n number = -number;\n }\n if (number > 1e-21) {\n e = log(number * pow(2, 69, 1)) - 69;\n z = e < 0 ? number * pow(2, -e, 1) : number / pow(2, e, 1);\n z *= 0x10000000000000;\n e = 52 - e;\n if (e > 0) {\n multiply(0, z);\n j = fractDigits;\n while (j >= 7) {\n multiply(1e7, 0);\n j -= 7;\n }\n multiply(pow(10, j, 1), 0);\n j = e - 1;\n while (j >= 23) {\n divide(1 << 23);\n j -= 23;\n }\n divide(1 << j);\n multiply(1, 1);\n divide(2);\n result = dataToString();\n } else {\n multiply(0, z);\n multiply(1 << -e, 0);\n result = dataToString() + repeat.call('0', fractDigits);\n }\n }\n if (fractDigits > 0) {\n k = result.length;\n result = sign + (k <= fractDigits\n ? '0.' + repeat.call('0', fractDigits - k) + result\n : result.slice(0, k - fractDigits) + '.' + result.slice(k - fractDigits));\n } else {\n result = sign + result;\n } return result;\n }\n});\n","var classof = require('../internals/classof-raw');\n\n// `thisNumberValue` abstract operation\n// https://tc39.github.io/ecma262/#sec-thisnumbervalue\nmodule.exports = function (value) {\n if (typeof value != 'number' && classof(value) != 'Number') {\n throw TypeError('Incorrect invocation');\n }\n return +value;\n};\n","'use strict';\nvar toInteger = require('../internals/to-integer');\nvar requireObjectCoercible = require('../internals/require-object-coercible');\n\n// `String.prototype.repeat` method implementation\n// https://tc39.github.io/ecma262/#sec-string.prototype.repeat\nmodule.exports = ''.repeat || function repeat(count) {\n var str = String(requireObjectCoercible(this));\n var result = '';\n var n = toInteger(count);\n if (n < 0 || n == Infinity) throw RangeError('Wrong number of repetitions');\n for (;n > 0; (n >>>= 1) && (str += str)) if (n & 1) result += str;\n return result;\n};\n","/* eslint-disable prefer-rest-params */\r\nfunction eventListener(method, elements, events, fn, options = {}) {\r\n\r\n // Normalize array\r\n if (elements instanceof HTMLCollection || elements instanceof NodeList) {\r\n elements = Array.from(elements);\r\n } else if (!Array.isArray(elements)) {\r\n elements = [elements];\r\n }\r\n\r\n if (!Array.isArray(events)) {\r\n events = [events];\r\n }\r\n\r\n for (const el of elements) {\r\n for (const ev of events) {\r\n el[method](ev, fn, {capture: false, ...options});\r\n }\r\n }\r\n\r\n return Array.prototype.slice.call(arguments, 1);\r\n}\r\n\r\n/**\r\n * Add event(s) to element(s).\r\n * @param elements DOM-Elements\r\n * @param events Event names\r\n * @param fn Callback\r\n * @param options Optional options\r\n * @return Array passed arguments\r\n */\r\nexport const on = eventListener.bind(null, 'addEventListener');\r\n\r\n/**\r\n * Remove event(s) from element(s).\r\n * @param elements DOM-Elements\r\n * @param events Event names\r\n * @param fn Callback\r\n * @param options Optional options\r\n * @return Array passed arguments\r\n */\r\nexport const off = eventListener.bind(null, 'removeEventListener');\r\n\r\n/**\r\n * Creates an DOM-Element out of a string (Single element).\r\n * @param html HTML representing a single element\r\n * @returns {Element | null} The element.\r\n */\r\nexport function createElementFromString(html) {\r\n const div = document.createElement('div');\r\n div.innerHTML = html.trim();\r\n return div.firstElementChild;\r\n}\r\n\r\n/**\r\n * Removes an attribute from a HTMLElement and returns the value.\r\n * @param el\r\n * @param name\r\n * @return {string}\r\n */\r\nexport function removeAttribute(el, name) {\r\n const value = el.getAttribute(name);\r\n el.removeAttribute(name);\r\n return value;\r\n}\r\n\r\n/**\r\n * Creates a new html element, every element which has\r\n * a ':ref' attribute will be saved in a object (which will be returned)\r\n * where the value of ':ref' is the object-key and the value the HTMLElement.\r\n *\r\n * It's possible to create a hierarchy if you add a ':obj' attribute. Every\r\n * sibling will be added to the object which will get the name from the 'data-con' attribute.\r\n *\r\n * If you want to create an Array out of multiple elements, you can use the ':arr' attribute,\r\n * the value defines the key and all elements, which has the same parent and the same 'data-arr' attribute,\r\n * would be added to it.\r\n *\r\n * @param str - The HTML String.\r\n */\r\nexport function createFromTemplate(str) {\r\n\r\n // Recursive function to resolve template\r\n function resolve(element, base = {}) {\r\n\r\n // Check key and container attribute\r\n const con = removeAttribute(element, ':obj');\r\n const key = removeAttribute(element, ':ref');\r\n const subtree = con ? (base[con] = {}) : base;\r\n\r\n // Check and save element\r\n key && (base[key] = element);\r\n for (const child of Array.from(element.children)) {\r\n const arr = removeAttribute(child, ':arr');\r\n const sub = resolve(child, arr ? {} : subtree);\r\n\r\n if (arr) {\r\n\r\n // Check if there is already an array and add element\r\n (subtree[arr] || (subtree[arr] = []))\r\n .push(Object.keys(sub).length ? sub : child);\r\n }\r\n }\r\n\r\n return base;\r\n }\r\n\r\n return resolve(createElementFromString(str));\r\n}\r\n\r\n/**\r\n * Polyfill for safari & firefox for the eventPath event property.\r\n * @param evt The event object.\r\n * @return [String] event path.\r\n */\r\nexport function eventPath(evt) {\r\n let path = evt.path || (evt.composedPath && evt.composedPath());\r\n if (path) {\r\n return path;\r\n }\r\n\r\n let el = evt.target.parentElement;\r\n path = [evt.target, el];\r\n while (el = el.parentElement) {\r\n path.push(el);\r\n }\r\n\r\n path.push(document, window);\r\n return path;\r\n}\r\n\r\n/**\r\n * Resolves a HTMLElement by query.\r\n * @param val\r\n * @returns {null|Document|Element}\r\n */\r\nexport function resolveElement(val) {\r\n if (val instanceof Element) {\r\n return val;\r\n } else if (typeof val === 'string') {\r\n return val.split(/>>/g).reduce((pv, cv, ci, a) => {\r\n pv = pv.querySelector(cv);\r\n return ci < a.length - 1 ? pv.shadowRoot : pv;\r\n }, document);\r\n }\r\n\r\n return null;\r\n}\r\n\r\n/**\r\n * Creates the ability to change numbers in an input field with the scroll-wheel.\r\n * @param el\r\n * @param mapper\r\n */\r\nexport function adjustableInputNumbers(el, mapper = v => v) {\r\n\r\n function handleScroll(e) {\r\n const inc = ([0.001, 0.01, 0.1])[Number(e.shiftKey || e.ctrlKey * 2)] * (e.deltaY < 0 ? 1 : -1);\r\n\r\n let index = 0;\r\n let off = el.selectionStart;\r\n el.value = el.value.replace(/[\\d.]+/g, (v, i) => {\r\n\r\n // Check if number is in cursor range and increase it\r\n if (i <= off && i + v.length >= off) {\r\n off = i;\r\n return mapper(Number(v), inc, index);\r\n }\r\n\r\n index++;\r\n return v;\r\n });\r\n\r\n el.focus();\r\n el.setSelectionRange(off, off);\r\n\r\n // Prevent default and trigger input event\r\n e.preventDefault();\r\n el.dispatchEvent(new Event('input'));\r\n }\r\n\r\n // Bind events\r\n on(el, 'focus', () => on(window, 'wheel', handleScroll, {passive: false}));\r\n on(el, 'blur', () => off(window, 'wheel', handleScroll));\r\n}\r\n","// Shorthands\r\nconst {min, max, floor, round} = Math;\r\n\r\n/**\r\n * Tries to convert a color name to rgb/a hex representation\r\n * @param name\r\n * @returns {string | CanvasGradient | CanvasPattern}\r\n */\r\nfunction standardizeColor(name) {\r\n\r\n // Since invalid color's will be parsed as black, filter them out\r\n if (name.toLowerCase() === 'black') {\r\n return '#000';\r\n }\r\n\r\n const ctx = document.createElement('canvas').getContext('2d');\r\n ctx.fillStyle = name;\r\n return ctx.fillStyle === '#000' ? null : ctx.fillStyle;\r\n}\r\n\r\n/**\r\n * Convert HSV spectrum to RGB.\r\n * @param h Hue\r\n * @param s Saturation\r\n * @param v Value\r\n * @returns {number[]} Array with rgb values.\r\n */\r\nexport function hsvToRgb(h, s, v) {\r\n h = (h / 360) * 6;\r\n s /= 100;\r\n v /= 100;\r\n\r\n const i = floor(h);\r\n\r\n const f = h - i;\r\n const p = v * (1 - s);\r\n const q = v * (1 - f * s);\r\n const t = v * (1 - (1 - f) * s);\r\n\r\n const mod = i % 6;\r\n const r = [v, q, p, p, t, v][mod];\r\n const g = [t, v, v, q, p, p][mod];\r\n const b = [p, p, t, v, v, q][mod];\r\n\r\n return [\r\n r * 255,\r\n g * 255,\r\n b * 255\r\n ];\r\n}\r\n\r\n/**\r\n * Convert HSV spectrum to Hex.\r\n * @param h Hue\r\n * @param s Saturation\r\n * @param v Value\r\n * @returns {string[]} Hex values\r\n */\r\nexport function hsvToHex(h, s, v) {\r\n return hsvToRgb(h, s, v).map(v =>\r\n round(v).toString(16).padStart(2, '0')\r\n );\r\n}\r\n\r\n/**\r\n * Convert HSV spectrum to CMYK.\r\n * @param h Hue\r\n * @param s Saturation\r\n * @param v Value\r\n * @returns {number[]} CMYK values\r\n */\r\nexport function hsvToCmyk(h, s, v) {\r\n const rgb = hsvToRgb(h, s, v);\r\n const r = rgb[0] / 255;\r\n const g = rgb[1] / 255;\r\n const b = rgb[2] / 255;\r\n\r\n const k = min(1 - r, 1 - g, 1 - b);\r\n const c = k === 1 ? 0 : (1 - r - k) / (1 - k);\r\n const m = k === 1 ? 0 : (1 - g - k) / (1 - k);\r\n const y = k === 1 ? 0 : (1 - b - k) / (1 - k);\r\n\r\n return [\r\n c * 100,\r\n m * 100,\r\n y * 100,\r\n k * 100\r\n ];\r\n}\r\n\r\n/**\r\n * Convert HSV spectrum to HSL.\r\n * @param h Hue\r\n * @param s Saturation\r\n * @param v Value\r\n * @returns {number[]} HSL values\r\n */\r\nexport function hsvToHsl(h, s, v) {\r\n s /= 100;\r\n v /= 100;\r\n\r\n const l = (2 - s) * v / 2;\r\n\r\n if (l !== 0) {\r\n if (l === 1) {\r\n s = 0;\r\n } else if (l < 0.5) {\r\n s = s * v / (l * 2);\r\n } else {\r\n s = s * v / (2 - l * 2);\r\n }\r\n }\r\n\r\n return [\r\n h,\r\n s * 100,\r\n l * 100\r\n ];\r\n}\r\n\r\n/**\r\n * Convert RGB to HSV.\r\n * @param r Red\r\n * @param g Green\r\n * @param b Blue\r\n * @return {number[]} HSV values.\r\n */\r\nfunction rgbToHsv(r, g, b) {\r\n r /= 255;\r\n g /= 255;\r\n b /= 255;\r\n\r\n const minVal = min(r, g, b);\r\n const maxVal = max(r, g, b);\r\n const delta = maxVal - minVal;\r\n\r\n let h, s;\r\n const v = maxVal;\r\n if (delta === 0) {\r\n h = s = 0;\r\n } else {\r\n s = delta / maxVal;\r\n const dr = (((maxVal - r) / 6) + (delta / 2)) / delta;\r\n const dg = (((maxVal - g) / 6) + (delta / 2)) / delta;\r\n const db = (((maxVal - b) / 6) + (delta / 2)) / delta;\r\n\r\n if (r === maxVal) {\r\n h = db - dg;\r\n } else if (g === maxVal) {\r\n h = (1 / 3) + dr - db;\r\n } else if (b === maxVal) {\r\n h = (2 / 3) + dg - dr;\r\n }\r\n\r\n if (h < 0) {\r\n h += 1;\r\n } else if (h > 1) {\r\n h -= 1;\r\n }\r\n }\r\n\r\n return [\r\n h * 360,\r\n s * 100,\r\n v * 100\r\n ];\r\n}\r\n\r\n/**\r\n * Convert CMYK to HSV.\r\n * @param c Cyan\r\n * @param m Magenta\r\n * @param y Yellow\r\n * @param k Key (Black)\r\n * @return {number[]} HSV values.\r\n */\r\nfunction cmykToHsv(c, m, y, k) {\r\n c /= 100;\r\n m /= 100;\r\n y /= 100;\r\n k /= 100;\r\n\r\n const r = (1 - min(1, c * (1 - k) + k)) * 255;\r\n const g = (1 - min(1, m * (1 - k) + k)) * 255;\r\n const b = (1 - min(1, y * (1 - k) + k)) * 255;\r\n\r\n return [...rgbToHsv(r, g, b)];\r\n}\r\n\r\n/**\r\n * Convert HSL to HSV.\r\n * @param h Hue\r\n * @param s Saturation\r\n * @param l Lightness\r\n * @return {number[]} HSV values.\r\n */\r\nfunction hslToHsv(h, s, l) {\r\n s /= 100;\r\n l /= 100;\r\n s *= l < 0.5 ? l : 1 - l;\r\n\r\n const ns = (2 * s / (l + s)) * 100;\r\n const v = (l + s) * 100;\r\n return [h, ns, v];\r\n}\r\n\r\n/**\r\n * Convert HEX to HSV.\r\n * @param hex Hexadecimal string of rgb colors, can have length 3 or 6.\r\n * @return {number[]} HSV values.\r\n */\r\nfunction hexToHsv(hex) {\r\n return rgbToHsv(...hex.match(/.{2}/g).map(v => parseInt(v, 16)));\r\n}\r\n\r\n/**\r\n * Try's to parse a string which represents a color to a HSV array.\r\n * Current supported types are cmyk, rgba, hsla and hexadecimal.\r\n * @param str\r\n * @return {*}\r\n */\r\nexport function parseToHSVA(str) {\r\n\r\n // Check if string is a color-name\r\n str = str.match(/^[a-zA-Z]+$/) ? standardizeColor(str) : str;\r\n\r\n // Regular expressions to match different types of color represention\r\n const regex = {\r\n cmyk: /^cmyk[\\D]+([\\d.]+)[\\D]+([\\d.]+)[\\D]+([\\d.]+)[\\D]+([\\d.]+)/i,\r\n rgba: /^((rgba)|rgb)[\\D]+([\\d.]+)[\\D]+([\\d.]+)[\\D]+([\\d.]+)[\\D]*?([\\d.]+|$)/i,\r\n hsla: /^((hsla)|hsl)[\\D]+([\\d.]+)[\\D]+([\\d.]+)[\\D]+([\\d.]+)[\\D]*?([\\d.]+|$)/i,\r\n hsva: /^((hsva)|hsv)[\\D]+([\\d.]+)[\\D]+([\\d.]+)[\\D]+([\\d.]+)[\\D]*?([\\d.]+|$)/i,\r\n hexa: /^#?(([\\dA-Fa-f]{3,4})|([\\dA-Fa-f]{6})|([\\dA-Fa-f]{8}))$/i\r\n };\r\n\r\n /**\r\n * Takes an Array of any type, convert strings which represents\r\n * a number to a number an anything else to undefined.\r\n * @param array\r\n * @return {*}\r\n */\r\n const numarize = array => array.map(v => /^(|\\d+)\\.\\d+|\\d+$/.test(v) ? Number(v) : undefined);\r\n\r\n let match;\r\n invalid: for (const type in regex) {\r\n\r\n // Check if current scheme passed\r\n if (!(match = regex[type].exec(str))) {\r\n continue;\r\n }\r\n\r\n // Match[2] does only contain a truly value if rgba, hsla, or hsla got matched\r\n const alphaValid = a => (!!match[2] === (typeof a === 'number'));\r\n\r\n // Try to convert\r\n switch (type) {\r\n case 'cmyk': {\r\n const [, c, m, y, k] = numarize(match);\r\n\r\n if (c > 100 || m > 100 || y > 100 || k > 100) {\r\n break invalid;\r\n }\r\n\r\n return {values: cmykToHsv(c, m, y, k), type};\r\n }\r\n case 'rgba': {\r\n const [, , , r, g, b, a] = numarize(match);\r\n\r\n if (r > 255 || g > 255 || b > 255 || a < 0 || a > 1 || !alphaValid(a)) {\r\n break invalid;\r\n }\r\n\r\n return {values: [...rgbToHsv(r, g, b), a], a, type};\r\n }\r\n case 'hexa': {\r\n let [, hex] = match;\r\n\r\n if (hex.length === 4 || hex.length === 3) {\r\n hex = hex.split('').map(v => v + v).join('');\r\n }\r\n\r\n const raw = hex.substring(0, 6);\r\n let a = hex.substring(6);\r\n\r\n // Convert 0 - 255 to 0 - 1 for opacity\r\n a = a ? (parseInt(a, 16) / 255) : undefined;\r\n\r\n return {values: [...hexToHsv(raw), a], a, type};\r\n }\r\n case 'hsla': {\r\n const [, , , h, s, l, a] = numarize(match);\r\n\r\n if (h > 360 || s > 100 || l > 100 || a < 0 || a > 1 || !alphaValid(a)) {\r\n break invalid;\r\n }\r\n\r\n return {values: [...hslToHsv(h, s, l), a], a, type};\r\n }\r\n case 'hsva': {\r\n const [, , , h, s, v, a] = numarize(match);\r\n\r\n if (h > 360 || s > 100 || v > 100 || a < 0 || a > 1 || !alphaValid(a)) {\r\n break invalid;\r\n }\r\n\r\n return {values: [h, s, v, a], a, type};\r\n }\r\n }\r\n }\r\n\r\n return {values: null, type: null};\r\n}\r\n","import {hsvToCmyk, hsvToHex, hsvToHsl, hsvToRgb} from './color';\r\n\r\n/**\r\n * Simple class which holds the properties\r\n * of the color represention model hsla (hue saturation lightness alpha)\r\n */\r\nexport function HSVaColor(h = 0, s = 0, v = 0, a = 1) {\r\n const mapper = (original, next) => (precision = -1) => {\r\n return next(~precision ? original.map(v => Number(v.toFixed(precision))) : original);\r\n };\r\n\r\n const that = {\r\n h, s, v, a,\r\n\r\n toHSVA() {\r\n const hsva = [that.h, that.s, that.v, that.a];\r\n hsva.toString = mapper(hsva, arr => `hsva(${arr[0]}, ${arr[1]}%, ${arr[2]}%, ${that.a})`);\r\n return hsva;\r\n },\r\n\r\n toHSLA() {\r\n const hsla = [...hsvToHsl(that.h, that.s, that.v), that.a];\r\n hsla.toString = mapper(hsla, arr => `hsla(${arr[0]}, ${arr[1]}%, ${arr[2]}%, ${that.a})`);\r\n return hsla;\r\n },\r\n\r\n toRGBA() {\r\n const rgba = [...hsvToRgb(that.h, that.s, that.v), that.a];\r\n rgba.toString = mapper(rgba, arr => `rgba(${arr[0]}, ${arr[1]}, ${arr[2]}, ${that.a})`);\r\n return rgba;\r\n },\r\n\r\n toCMYK() {\r\n const cmyk = hsvToCmyk(that.h, that.s, that.v);\r\n cmyk.toString = mapper(cmyk, arr => `cmyk(${arr[0]}%, ${arr[1]}%, ${arr[2]}%, ${arr[3]}%)`);\r\n return cmyk;\r\n },\r\n\r\n toHEXA() {\r\n const hex = hsvToHex(that.h, that.s, that.v);\r\n\r\n // Check if alpha channel make sense, convert it to 255 number space, convert\r\n // To hex and pad it with zeros if needet.\r\n const alpha = that.a >= 1 ? '' : Number((that.a * 255).toFixed(0))\r\n .toString(16)\r\n .toUpperCase().padStart(2, '0');\r\n\r\n alpha && hex.push(alpha);\r\n hex.toString = () => `#${hex.join('').toUpperCase()}`;\r\n return hex;\r\n },\r\n\r\n clone: () => HSVaColor(that.h, that.s, that.v, that.a)\r\n };\r\n\r\n return that;\r\n}\r\n","import * as _ from '../utils/utils';\r\n\r\nconst clamp = v => Math.max(Math.min(v, 1), 0);\r\nexport default function Moveable(opt) {\r\n\r\n const that = {\r\n\r\n // Assign default values\r\n options: Object.assign({\r\n lock: null,\r\n onchange: () => 0,\r\n onstop: () => 0\r\n }, opt),\r\n\r\n _keyboard(e) {\r\n const {options} = that;\r\n const {type, key} = e;\r\n\r\n // Check to see if the Movable is focused and then move it based on arrow key inputs\r\n // For improved accessibility\r\n if (document.activeElement === options.wrapper) {\r\n const {lock} = that.options;\r\n const up = key === 'ArrowUp';\r\n const right = key === 'ArrowRight';\r\n const down = key === 'ArrowDown';\r\n const left = key === 'ArrowLeft';\r\n\r\n if (type === 'keydown' && (up || right || down || left)) {\r\n let xm = 0;\r\n let ym = 0;\r\n\r\n if (lock === 'v') {\r\n xm = (up || right) ? 1 : -1;\r\n } else if (lock === 'h') {\r\n xm = (up || right) ? -1 : 1;\r\n } else {\r\n ym = up ? -1 : (down ? 1 : 0);\r\n xm = left ? -1 : (right ? 1 : 0);\r\n }\r\n\r\n that.update(\r\n clamp(that.cache.x + (0.01 * xm)),\r\n clamp(that.cache.y + (0.01 * ym))\r\n );\r\n e.preventDefault();\r\n } else if (key.startsWith('Arrow')) {\r\n that.options.onstop();\r\n e.preventDefault();\r\n }\r\n }\r\n },\r\n\r\n _tapstart(evt) {\r\n _.on(document, ['mouseup', 'touchend', 'touchcancel'], that._tapstop);\r\n _.on(document, ['mousemove', 'touchmove'], that._tapmove);\r\n\r\n // Prevent default touch event\r\n evt.preventDefault();\r\n\r\n // Trigger\r\n that._tapmove(evt);\r\n },\r\n\r\n _tapmove(evt) {\r\n const {options, cache} = that;\r\n const {lock, element, wrapper} = options;\r\n const b = wrapper.getBoundingClientRect();\r\n\r\n let x = 0, y = 0;\r\n if (evt) {\r\n const touch = evt && evt.touches && evt.touches[0];\r\n x = evt ? (touch || evt).clientX : 0;\r\n y = evt ? (touch || evt).clientY : 0;\r\n\r\n // Reset to bounds\r\n if (x < b.left) {\r\n x = b.left;\r\n } else if (x > b.left + b.width) {\r\n x = b.left + b.width;\r\n }\r\n if (y < b.top) {\r\n y = b.top;\r\n } else if (y > b.top + b.height) {\r\n y = b.top + b.height;\r\n }\r\n\r\n // Normalize\r\n x -= b.left;\r\n y -= b.top;\r\n } else if (cache) {\r\n x = cache.x * b.width;\r\n y = cache.y * b.height;\r\n }\r\n\r\n if (lock !== 'h') {\r\n element.style.left = `calc(${x / b.width * 100}% - ${element.offsetWidth / 2}px)`;\r\n }\r\n\r\n if (lock !== 'v') {\r\n element.style.top = `calc(${y / b.height * 100}% - ${element.offsetHeight / 2}px)`;\r\n }\r\n\r\n that.cache = {x: x / b.width, y: y / b.height};\r\n const cx = clamp(x / b.width);\r\n const cy = clamp(y / b.height);\r\n\r\n switch (lock) {\r\n case 'v':\r\n return options.onchange(cx);\r\n case 'h':\r\n return options.onchange(cy);\r\n default:\r\n return options.onchange(cx, cy);\r\n }\r\n },\r\n\r\n _tapstop() {\r\n that.options.onstop();\r\n _.off(document, ['mouseup', 'touchend', 'touchcancel'], that._tapstop);\r\n _.off(document, ['mousemove', 'touchmove'], that._tapmove);\r\n },\r\n\r\n trigger() {\r\n that._tapmove();\r\n },\r\n\r\n update(x = 0, y = 0) {\r\n const {left, top, width, height} = that.options.wrapper.getBoundingClientRect();\r\n\r\n if (that.options.lock === 'h') {\r\n y = x;\r\n }\r\n\r\n that._tapmove({\r\n clientX: left + width * x,\r\n clientY: top + height * y\r\n });\r\n },\r\n\r\n destroy() {\r\n const {options, _tapstart, _keyboard} = that;\r\n _.off(document, ['keydown', 'keyup'], _keyboard);\r\n _.off([options.wrapper, options.element], 'mousedown', _tapstart);\r\n _.off([options.wrapper, options.element], 'touchstart', _tapstart, {\r\n passive: false\r\n });\r\n }\r\n };\r\n\r\n // Initilize\r\n const {options, _tapstart, _keyboard} = that;\r\n _.on([options.wrapper, options.element], 'mousedown', _tapstart);\r\n _.on([options.wrapper, options.element], 'touchstart', _tapstart, {\r\n passive: false\r\n });\r\n\r\n _.on(document, ['keydown', 'keyup'], _keyboard);\r\n\r\n return that;\r\n}\r\n","import * as _ from '../utils/utils';\r\n\r\nexport default function Selectable(opt = {}) {\r\n opt = Object.assign({\r\n onchange: () => 0,\r\n className: '',\r\n elements: []\r\n }, opt);\r\n\r\n const onTap = _.on(opt.elements, 'click', evt => {\r\n opt.elements.forEach(e =>\r\n e.classList[evt.target === e ? 'add' : 'remove'](opt.className)\r\n );\r\n\r\n opt.onchange(evt);\r\n });\r\n\r\n return {\r\n destroy: () => _.off(...onTap)\r\n };\r\n}\r\n","/**\r\n * Micro positioning-engine\r\n * @param el\r\n * @param reference\r\n * @param pos\r\n * @param padding\r\n * @returns {{update(): void}}\r\n * @constructor\r\n */\r\nexport default function Nanopop({el, reference, padding = 8}) {\r\n\r\n // Positioning priorities for variants\r\n const vBehaviour = {\r\n start: 'sme',\r\n middle: 'mse',\r\n end: 'ems'\r\n };\r\n\r\n // Positioning priorities for general alignment\r\n const hBehaviour = {\r\n top: 'tbrl',\r\n right: 'rltb',\r\n bottom: 'btrl',\r\n left: 'lrbt'\r\n };\r\n\r\n const getInfo = ((cache = {}) => (pos, cached = cache[pos]) => {\r\n\r\n // Return cached value if possible\r\n if (cached) {\r\n return cached;\r\n }\r\n\r\n // Extract position and variant\r\n // Top-start -> top is \"position\" and \"start\" is the variant\r\n const [position, variant = 'middle'] = pos.split('-');\r\n\r\n // It's vertical if top or bottom is used as position\r\n const isVertical = (position === 'top' || position === 'bottom');\r\n\r\n // Cache value and return\r\n return cache[pos] = {\r\n position,\r\n variant,\r\n isVertical\r\n };\r\n })();\r\n\r\n return {\r\n\r\n /**\r\n * Re-aligns the element\r\n * @param pos Position string\r\n * @param useFallback If everything fails the element may be centered on the the entire screen ignoring the reference\r\n */\r\n update(pos, useFallback = false) {\r\n const {position, variant, isVertical} = getInfo(pos);\r\n const rb = reference.getBoundingClientRect();\r\n const eb = el.getBoundingClientRect();\r\n\r\n /**\r\n * Holds coordinates of top, left, bottom and right alignment\r\n */\r\n const positions = vertical => vertical ? {\r\n t: rb.top - eb.height - padding,\r\n b: rb.bottom + padding\r\n } : {\r\n r: rb.right + padding,\r\n l: rb.left - eb.width - padding\r\n };\r\n\r\n /**\r\n * Holds corresponding variants (start, middle, end)\r\n */\r\n const variants = vertical => vertical ? {\r\n s: rb.left + rb.width - eb.width,\r\n m: (-eb.width / 2) + (rb.left + rb.width / 2),\r\n e: rb.left\r\n } : {\r\n s: rb.bottom - eb.height,\r\n m: rb.bottom - rb.height / 2 - eb.height / 2,\r\n e: rb.bottom - rb.height\r\n };\r\n\r\n // Holds the last working positions\r\n const leastApplied = {};\r\n\r\n /**\r\n * Applies a position, example precedure with top-start: it'll\r\n * first try to satify the variant \"start\", if this fails it'll try\r\n * the remaining variants (in this case \"middle\" and \"end\")\r\n * @param positions Array of positions in the order they should be applied\r\n * @param positionVariants Variants, the first should be the one initially wanted\r\n * @param targetProperty The target property, defines if this is a horizontal or vertical aligment\r\n * @returns a value for targetProperty or null if none fits\r\n */\r\n const findFittingValue = (positions, positionVariants, targetProperty) => {\r\n const vertical = targetProperty === 'top';\r\n const elSize = vertical ? eb.height : eb.width;\r\n const winSize = window[vertical ? 'innerHeight' : 'innerWidth'];\r\n\r\n for (const posChar of positions) {\r\n const wantedValue = positionVariants[posChar];\r\n const wantedValueAsString = leastApplied[targetProperty] = `${wantedValue}px`;\r\n\r\n if (wantedValue > 0 && (wantedValue + elSize) < winSize) {\r\n return wantedValueAsString;\r\n }\r\n }\r\n\r\n return null;\r\n };\r\n\r\n\r\n for (const vertical of [isVertical, !isVertical]) {\r\n\r\n /**\r\n * Va and vb both define where the element is positioned (top, bottom, left, right)\r\n * and it's corresponding variant (start, middle, end). Since we're \"rotating\" the element\r\n * to ensure to (hopefully) find at least one fitting position the values need to be\r\n * defined during runtime.\r\n */\r\n const vaType = vertical ? 'top' : 'left';\r\n const vbType = vertical ? 'left' : 'top';\r\n\r\n // Actual values for top and bottom\r\n const vaValue = findFittingValue(hBehaviour[position], positions(vertical), vaType);\r\n const vbValue = findFittingValue(vBehaviour[variant], variants(vertical), vbType);\r\n\r\n // Both values work, apply them\r\n if (vaValue && vbValue) {\r\n el.style[vbType] = vbValue;\r\n el.style[vaType] = vaValue;\r\n return;\r\n }\r\n }\r\n\r\n // It failed to find a non-clipping position, if fallback is enable it'll use it - otherwise the last\r\n // Calculated values will be used.\r\n if (useFallback) {\r\n el.style.top = `${(window.innerHeight - eb.height) / 2}px`;\r\n el.style.left = `${(window.innerWidth - eb.width) / 2}px`;\r\n } else {\r\n el.style.left = leastApplied.left;\r\n el.style.top = leastApplied.top;\r\n }\r\n }\r\n };\r\n}\r\n","import * as _ from './utils/utils';\r\nimport {version} from '../../package';\r\nimport {parseToHSVA} from './utils/color';\r\nimport {HSVaColor} from './utils/hsvacolor';\r\nimport Moveable from './libs/moveable';\r\nimport Selectable from './libs/selectable';\r\nimport Nanopop from './libs/nanopop';\r\nimport buildPickr from './template';\r\n\r\nclass Pickr {\r\n\r\n // Will be used to prevent specific actions during initilization\r\n _initializingActive = true;\r\n\r\n // If the current color value should be recalculated\r\n _recalc = true;\r\n\r\n // Positioning engine and DOM-Tree\r\n _nanopop = null;\r\n _root = null;\r\n\r\n // Current and last color for comparison\r\n _color = HSVaColor();\r\n _lastColor = HSVaColor();\r\n _swatchColors = [];\r\n\r\n // Evenlistener name: [callbacks]\r\n _eventListener = {\r\n init: [],\r\n save: [],\r\n hide: [],\r\n show: [],\r\n clear: [],\r\n change: [],\r\n changestop: [],\r\n cancel: [],\r\n swatchselect: []\r\n };\r\n\r\n constructor(opt) {\r\n\r\n // Assign default values\r\n this.options = opt = Object.assign({\r\n appClass: null,\r\n theme: 'classic',\r\n useAsButton: false,\r\n padding: 8,\r\n disabled: false,\r\n comparison: true,\r\n closeOnScroll: false,\r\n outputPrecision: 0,\r\n lockOpacity: false,\r\n autoReposition: true,\r\n container: 'body',\r\n components: {\r\n interaction: {}\r\n },\r\n\r\n strings: {},\r\n swatches: null,\r\n inline: false,\r\n sliders: null,\r\n\r\n default: '#42445a',\r\n defaultRepresentation: null,\r\n position: 'bottom-middle',\r\n adjustableNumbers: true,\r\n showAlways: false,\r\n\r\n closeWithKey: 'Escape'\r\n }, opt);\r\n\r\n const {swatches, components, theme, sliders, lockOpacity, padding} = opt;\r\n\r\n if (['nano', 'monolith'].includes(theme) && !sliders) {\r\n opt.sliders = 'h';\r\n }\r\n\r\n // Check interaction section\r\n if (!components.interaction) {\r\n components.interaction = {};\r\n }\r\n\r\n // Overwrite palette if preview, opacity or hue are true\r\n const {preview, opacity, hue, palette} = components;\r\n components.opacity = (!lockOpacity && opacity);\r\n components.palette = palette || preview || opacity || hue;\r\n\r\n // Initialize picker\r\n this._preBuild();\r\n this._buildComponents();\r\n this._bindEvents();\r\n this._finalBuild();\r\n\r\n // Append pre-defined swatch colors\r\n if (swatches && swatches.length) {\r\n swatches.forEach(color => this.addSwatch(color));\r\n }\r\n\r\n // Initialize positioning engine\r\n const {button, app} = this._root;\r\n this._nanopop = Nanopop({\r\n reference: button,\r\n padding,\r\n el: app\r\n });\r\n\r\n // Initialize accessibility\r\n button.setAttribute('role', 'button');\r\n button.setAttribute('aria-label', 'toggle color picker dialog');\r\n\r\n // Initilization is finish, pickr is visible and ready for usage\r\n const that = this;\r\n requestAnimationFrame((function cb() {\r\n\r\n if (!app.offsetWidth && app.parentElement !== opt.container) {\r\n return requestAnimationFrame(cb);\r\n }\r\n\r\n // Apply default color\r\n that.setColor(opt.default);\r\n that._rePositioningPicker();\r\n\r\n // Initialize color representation\r\n if (opt.defaultRepresentation) {\r\n that._representation = opt.defaultRepresentation;\r\n that.setColorRepresentation(that._representation);\r\n }\r\n\r\n // Show pickr if locked\r\n if (opt.showAlways) {\r\n that.show();\r\n }\r\n\r\n // Initialization is done - pickr is usable, fire init event\r\n that._initializingActive = false;\r\n that._emit('init');\r\n }));\r\n }\r\n\r\n // Does only the absolutly basic thing to initialize the components\r\n _preBuild() {\r\n const opt = this.options;\r\n\r\n // Resolve elements\r\n for (const type of ['el', 'container']) {\r\n opt[type] = _.resolveElement(opt[type]);\r\n }\r\n\r\n // Create element and append it to body to\r\n // Prevent initialization errors\r\n this._root = buildPickr(opt);\r\n\r\n // Check if a custom button is used\r\n if (opt.useAsButton) {\r\n this._root.button = opt.el; // Replace button with customized button\r\n }\r\n\r\n opt.container.appendChild(this._root.root);\r\n }\r\n\r\n _finalBuild() {\r\n const opt = this.options;\r\n const root = this._root;\r\n\r\n // Remove from body\r\n opt.container.removeChild(root.root);\r\n\r\n if (opt.inline) {\r\n const parent = opt.el.parentElement;\r\n\r\n if (opt.el.nextSibling) {\r\n parent.insertBefore(root.app, opt.el.nextSibling);\r\n } else {\r\n parent.appendChild(root.app);\r\n }\r\n } else {\r\n opt.container.appendChild(root.app);\r\n }\r\n\r\n // Don't replace the the element if a custom button is used\r\n if (!opt.useAsButton) {\r\n\r\n // Replace element with actual color-picker\r\n opt.el.parentNode.replaceChild(root.root, opt.el);\r\n } else if (opt.inline) {\r\n opt.el.remove();\r\n }\r\n\r\n // Check if it should be immediatly disabled\r\n if (opt.disabled) {\r\n this.disable();\r\n }\r\n\r\n // Check if color comparison is disabled, if yes - remove transitions so everything keeps smoothly\r\n if (!opt.comparison) {\r\n root.button.style.transition = 'none';\r\n\r\n if (!opt.useAsButton) {\r\n root.preview.lastColor.style.transition = 'none';\r\n }\r\n }\r\n\r\n this.hide();\r\n }\r\n\r\n _buildComponents() {\r\n\r\n // Instance reference\r\n const inst = this;\r\n const cs = this.options.components;\r\n const sliders = (inst.options.sliders || 'v').repeat(2);\r\n const [so, sh] = sliders.match(/^[vh]+$/g) ? sliders : [];\r\n\r\n // Re-assign if null\r\n const getColor = () =>\r\n this._color || (this._color = this._lastColor.clone());\r\n\r\n const components = {\r\n\r\n palette: Moveable({\r\n element: inst._root.palette.picker,\r\n wrapper: inst._root.palette.palette,\r\n\r\n onstop: () => inst._emit('changestop', inst),\r\n onchange(x, y) {\r\n if (!cs.palette) {\r\n return;\r\n }\r\n\r\n const color = getColor();\r\n const {_root, options} = inst;\r\n const {lastColor, currentColor} = _root.preview;\r\n\r\n // Update the input field only if the user is currently not typing\r\n if (inst._recalc) {\r\n\r\n // Calculate saturation based on the position\r\n color.s = x * 100;\r\n\r\n // Calculate the value\r\n color.v = 100 - y * 100;\r\n\r\n // Prevent falling under zero\r\n color.v < 0 ? color.v = 0 : 0;\r\n inst._updateOutput();\r\n }\r\n\r\n // Set picker and gradient color\r\n const cssRGBaString = color.toRGBA().toString(0);\r\n this.element.style.background = cssRGBaString;\r\n this.wrapper.style.background = `\r\n linear-gradient(to top, rgba(0, 0, 0, ${color.a}), transparent),\r\n linear-gradient(to left, hsla(${color.h}, 100%, 50%, ${color.a}), rgba(255, 255, 255, ${color.a}))\r\n `;\r\n\r\n // Check if color is locked\r\n if (!options.comparison) {\r\n _root.button.style.color = cssRGBaString;\r\n\r\n // If the user changes the color, remove the cleared icon\r\n _root.button.classList.remove('clear');\r\n } else if (!options.useAsButton && !inst._lastColor) {\r\n\r\n // Apply color to both the last and current color since the current state is cleared\r\n lastColor.style.color = cssRGBaString;\r\n }\r\n\r\n // Check if there's a swatch which color matches the current one\r\n const hexa = color.toHEXA().toString();\r\n for (const {el, color} of inst._swatchColors) {\r\n el.classList[hexa === color.toHEXA().toString() ? 'add' : 'remove']('pcr-active');\r\n }\r\n\r\n // Change current color\r\n currentColor.style.color = cssRGBaString;\r\n }\r\n }),\r\n\r\n hue: Moveable({\r\n lock: sh === 'v' ? 'h' : 'v',\r\n element: inst._root.hue.picker,\r\n wrapper: inst._root.hue.slider,\r\n\r\n onstop: () => inst._emit('changestop', inst),\r\n onchange(v) {\r\n if (!cs.hue || !cs.palette) {\r\n return;\r\n }\r\n\r\n const color = getColor();\r\n\r\n // Calculate hue\r\n if (inst._recalc) {\r\n color.h = v * 360;\r\n }\r\n\r\n // Update color\r\n this.element.style.backgroundColor = `hsl(${color.h}, 100%, 50%)`;\r\n components.palette.trigger();\r\n }\r\n }),\r\n\r\n opacity: Moveable({\r\n lock: so === 'v' ? 'h' : 'v',\r\n element: inst._root.opacity.picker,\r\n wrapper: inst._root.opacity.slider,\r\n\r\n onstop: () => inst._emit('changestop', inst),\r\n onchange(v) {\r\n if (!cs.opacity || !cs.palette) {\r\n return;\r\n }\r\n\r\n const color = getColor();\r\n\r\n // Calculate opacity\r\n if (inst._recalc) {\r\n color.a = Math.round(v * 1e2) / 100;\r\n }\r\n\r\n // Update color\r\n this.element.style.background = `rgba(0, 0, 0, ${color.a})`;\r\n components.palette.trigger();\r\n }\r\n }),\r\n\r\n selectable: Selectable({\r\n elements: inst._root.interaction.options,\r\n className: 'active',\r\n\r\n onchange(e) {\r\n inst._representation = e.target.getAttribute('data-type').toUpperCase();\r\n inst._recalc && inst._updateOutput();\r\n }\r\n })\r\n };\r\n\r\n this._components = components;\r\n }\r\n\r\n _bindEvents() {\r\n const {_root, options} = this;\r\n\r\n const eventBindings = [\r\n\r\n // Clear color\r\n _.on(_root.interaction.clear, 'click', () => this._clearColor()),\r\n\r\n // Select last color on click\r\n _.on([\r\n _root.interaction.cancel,\r\n _root.preview.lastColor\r\n ], 'click', () => {\r\n this._emit('cancel', this);\r\n this.setHSVA(...(this._lastColor || this._color).toHSVA(), true);\r\n }),\r\n\r\n // Save color\r\n _.on(_root.interaction.save, 'click', () => {\r\n !this.applyColor() && !options.showAlways && this.hide();\r\n }),\r\n\r\n // User input\r\n _.on(_root.interaction.result, ['keyup', 'input'], e => {\r\n\r\n // Fire listener if initialization is finish and changed color was valid\r\n if (this.setColor(e.target.value, true) && !this._initializingActive) {\r\n this._emit('change', this._color);\r\n }\r\n\r\n e.stopImmediatePropagation();\r\n }),\r\n\r\n // Detect user input and disable auto-recalculation\r\n _.on(_root.interaction.result, ['focus', 'blur'], e => {\r\n this._recalc = e.type === 'blur';\r\n this._recalc && this._updateOutput();\r\n }),\r\n\r\n // Cancel input detection on color change\r\n _.on([\r\n _root.palette.palette,\r\n _root.palette.picker,\r\n _root.hue.slider,\r\n _root.hue.picker,\r\n _root.opacity.slider,\r\n _root.opacity.picker\r\n ], ['mousedown', 'touchstart'], () => this._recalc = true)\r\n ];\r\n\r\n // Provide hiding / showing abilities only if showAlways is false\r\n if (!options.showAlways) {\r\n const ck = options.closeWithKey;\r\n\r\n eventBindings.push(\r\n // Save and hide / show picker\r\n _.on(_root.button, 'click', () => this.isOpen() ? this.hide() : this.show()),\r\n\r\n // Close with escape key\r\n _.on(document, 'keyup', e => this.isOpen() && (e.key === ck || e.code === ck) && this.hide()),\r\n\r\n // Cancel selecting if the user taps behind the color picker\r\n _.on(document, ['touchstart', 'mousedown'], e => {\r\n if (this.isOpen() && !_.eventPath(e).some(el => el === _root.app || el === _root.button)) {\r\n this.hide();\r\n }\r\n }, {capture: true})\r\n );\r\n }\r\n\r\n // Make input adjustable if enabled\r\n if (options.adjustableNumbers) {\r\n const ranges = {\r\n rgba: [255, 255, 255, 1],\r\n hsva: [360, 100, 100, 1],\r\n hsla: [360, 100, 100, 1],\r\n cmyk: [100, 100, 100, 100]\r\n };\r\n\r\n _.adjustableInputNumbers(_root.interaction.result, (o, step, index) => {\r\n const range = ranges[this.getColorRepresentation().toLowerCase()];\r\n\r\n if (range) {\r\n const max = range[index];\r\n\r\n // Calculate next reasonable number\r\n const nv = o + (max >= 100 ? step * 1000 : step);\r\n\r\n // Apply range of zero up to max, fix floating-point issues\r\n return nv <= 0 ? 0 : Number((nv < max ? nv : max).toPrecision(3));\r\n }\r\n\r\n return o;\r\n });\r\n }\r\n\r\n if (options.autoReposition && !options.inline) {\r\n let timeout = null;\r\n const that = this;\r\n\r\n // Re-calc position on window resize, scroll and wheel\r\n eventBindings.push(\r\n _.on(window, ['scroll', 'resize'], () => {\r\n if (that.isOpen()) {\r\n\r\n if (options.closeOnScroll) {\r\n that.hide();\r\n }\r\n\r\n if (timeout === null) {\r\n timeout = setTimeout(() => timeout = null, 100);\r\n\r\n // Update position on every frame\r\n requestAnimationFrame(function rs() {\r\n that._rePositioningPicker();\r\n (timeout !== null) && requestAnimationFrame(rs);\r\n });\r\n } else {\r\n clearTimeout(timeout);\r\n timeout = setTimeout(() => timeout = null, 100);\r\n }\r\n }\r\n }, {capture: true})\r\n );\r\n }\r\n\r\n // Save bindings\r\n this._eventBindings = eventBindings;\r\n }\r\n\r\n _rePositioningPicker() {\r\n const {options} = this;\r\n\r\n // No repositioning needed if inline\r\n if (!options.inline) {\r\n this._nanopop.update(options.position, !this._recalc);\r\n }\r\n }\r\n\r\n _updateOutput() {\r\n const {_root, _color, options} = this;\r\n\r\n // Check if component is present\r\n if (_root.interaction.type()) {\r\n\r\n // Construct function name and call if present\r\n const method = `to${_root.interaction.type().getAttribute('data-type')}`;\r\n _root.interaction.result.value = typeof _color[method] === 'function' ?\r\n _color[method]().toString(options.outputPrecision) : '';\r\n }\r\n\r\n // Fire listener if initialization is finish\r\n if (!this._initializingActive && this._recalc) {\r\n this._emit('change', _color);\r\n }\r\n }\r\n\r\n _clearColor(silent = false) {\r\n const {_root, options} = this;\r\n\r\n // Change only the button color if it isn't customized\r\n if (!options.useAsButton) {\r\n _root.button.style.color = 'rgba(0, 0, 0, 0.15)';\r\n }\r\n\r\n _root.button.classList.add('clear');\r\n\r\n if (!options.showAlways) {\r\n this.hide();\r\n }\r\n\r\n this._lastColor = null;\r\n if (!this._initializingActive && !silent) {\r\n\r\n // Fire listener\r\n this._emit('save', null);\r\n this._emit('clear', this);\r\n }\r\n }\r\n\r\n _parseLocalColor(str) {\r\n const {values, type, a} = parseToHSVA(str);\r\n const {lockOpacity} = this.options;\r\n const alphaMakesAChange = a !== undefined && a !== 1;\r\n\r\n // If no opacity is applied, add undefined at the very end which gets\r\n // Set to 1 in setHSVA\r\n if (values && values.length === 3) {\r\n values[3] = undefined;\r\n }\r\n\r\n return {\r\n values: (!values || (lockOpacity && alphaMakesAChange)) ? null : values,\r\n type\r\n };\r\n }\r\n\r\n _emit(event, ...args) {\r\n this._eventListener[event].forEach(cb => cb(...args, this));\r\n }\r\n\r\n on(event, cb) {\r\n\r\n // Validate\r\n if (typeof cb === 'function' && typeof event === 'string' && event in this._eventListener) {\r\n this._eventListener[event].push(cb);\r\n }\r\n\r\n return this;\r\n }\r\n\r\n off(event, cb) {\r\n const callBacks = this._eventListener[event];\r\n\r\n if (callBacks) {\r\n const index = callBacks.indexOf(cb);\r\n\r\n if (~index) {\r\n callBacks.splice(index, 1);\r\n }\r\n }\r\n\r\n return this;\r\n }\r\n\r\n /**\r\n * Appends a color to the swatch palette\r\n * @param color\r\n * @returns {boolean}\r\n */\r\n addSwatch(color) {\r\n const {values} = this._parseLocalColor(color);\r\n\r\n if (values) {\r\n const {_swatchColors, _root} = this;\r\n const color = HSVaColor(...values);\r\n\r\n // Create new swatch HTMLElement\r\n const el = _.createElementFromString(\r\n `'}\r\n\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n\r\n
\r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n
\r\n
\r\n
\r\n\r\n
\r\n\r\n
\r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n
\r\n
\r\n \r\n `);\r\n\r\n const int = root.interaction;\r\n\r\n // Select option which is not hidden\r\n int.options.find(o => !o.hidden && !o.classList.add('active'));\r\n\r\n // Create method to find currenlty active option\r\n int.type = () => int.options.find(e => e.classList.contains('active'));\r\n return root;\r\n}\r\n"],"sourceRoot":""} \ No newline at end of file +{"version":3,"sources":["webpack:///webpack/universalModuleDefinition","webpack:///webpack/bootstrap","webpack:///./node_modules/core-js/internals/fails.js","webpack:///./node_modules/core-js/internals/global.js","webpack:///./node_modules/core-js/internals/an-object.js","webpack:///./node_modules/core-js/internals/has.js","webpack:///./node_modules/core-js/internals/well-known-symbol.js","webpack:///./node_modules/core-js/internals/require-object-coercible.js","webpack:///./node_modules/core-js/internals/create-non-enumerable-property.js","webpack:///./node_modules/core-js/internals/descriptors.js","webpack:///./node_modules/core-js/internals/is-object.js","webpack:///./node_modules/core-js/internals/to-integer.js","webpack:///./node_modules/core-js/modules/web.dom-collections.iterator.js","webpack:///./node_modules/core-js/internals/export.js","webpack:///./node_modules/core-js/internals/object-define-property.js","webpack:///./node_modules/core-js/internals/to-length.js","webpack:///./node_modules/core-js/internals/to-indexed-object.js","webpack:///./node_modules/core-js/internals/classof-raw.js","webpack:///./node_modules/core-js/internals/redefine.js","webpack:///./node_modules/core-js/internals/is-pure.js","webpack:///./node_modules/core-js/internals/regexp-exec.js","webpack:///./node_modules/core-js/modules/es.object.assign.js","webpack:///./node_modules/core-js/internals/object-get-own-property-descriptor.js","webpack:///./node_modules/core-js/internals/create-property-descriptor.js","webpack:///./node_modules/core-js/internals/set-global.js","webpack:///./node_modules/core-js/internals/shared-key.js","webpack:///./node_modules/core-js/internals/hidden-keys.js","webpack:///./node_modules/core-js/internals/enum-bug-keys.js","webpack:///./node_modules/core-js/internals/to-object.js","webpack:///./node_modules/core-js/modules/es.regexp.to-string.js","webpack:///./node_modules/core-js/internals/fix-regexp-well-known-symbol-logic.js","webpack:///./node_modules/core-js/internals/advance-string-index.js","webpack:///./node_modules/core-js/internals/regexp-exec-abstract.js","webpack:///./node_modules/core-js/internals/iterators.js","webpack:///./node_modules/core-js/modules/es.string.split.js","webpack:///./node_modules/core-js/internals/object-property-is-enumerable.js","webpack:///./node_modules/core-js/internals/indexed-object.js","webpack:///./node_modules/core-js/internals/to-primitive.js","webpack:///./node_modules/core-js/internals/ie8-dom-define.js","webpack:///./node_modules/core-js/internals/document-create-element.js","webpack:///./node_modules/core-js/internals/inspect-source.js","webpack:///./node_modules/core-js/internals/shared-store.js","webpack:///./node_modules/core-js/internals/internal-state.js","webpack:///./node_modules/core-js/internals/shared.js","webpack:///./node_modules/core-js/internals/uid.js","webpack:///./node_modules/core-js/internals/get-built-in.js","webpack:///./node_modules/core-js/internals/object-keys-internal.js","webpack:///./node_modules/core-js/internals/object-get-own-property-symbols.js","webpack:///./node_modules/core-js/internals/object-keys.js","webpack:///./node_modules/core-js/internals/regexp-flags.js","webpack:///./node_modules/core-js/modules/es.string.match.js","webpack:///./node_modules/core-js/internals/native-symbol.js","webpack:///./node_modules/core-js/modules/es.string.starts-with.js","webpack:///./node_modules/core-js/internals/is-regexp.js","webpack:///./node_modules/core-js/internals/object-create.js","webpack:///./node_modules/core-js/internals/iterators-core.js","webpack:///./node_modules/core-js/internals/object-get-prototype-of.js","webpack:///./node_modules/core-js/internals/set-to-string-tag.js","webpack:///(webpack)/buildin/global.js","webpack:///./node_modules/core-js/internals/native-weak-map.js","webpack:///./node_modules/core-js/internals/copy-constructor-properties.js","webpack:///./node_modules/core-js/internals/own-keys.js","webpack:///./node_modules/core-js/internals/path.js","webpack:///./node_modules/core-js/internals/object-get-own-property-names.js","webpack:///./node_modules/core-js/internals/array-includes.js","webpack:///./node_modules/core-js/internals/to-absolute-index.js","webpack:///./node_modules/core-js/internals/is-forced.js","webpack:///./node_modules/core-js/internals/object-assign.js","webpack:///./node_modules/core-js/modules/es.regexp.exec.js","webpack:///./node_modules/core-js/internals/regexp-sticky-helpers.js","webpack:///./node_modules/core-js/internals/use-symbol-as-uid.js","webpack:///./node_modules/core-js/internals/string-multibyte.js","webpack:///./node_modules/core-js/internals/not-a-regexp.js","webpack:///./node_modules/core-js/internals/correct-is-regexp-logic.js","webpack:///./node_modules/core-js/internals/dom-iterables.js","webpack:///./node_modules/core-js/modules/es.array.iterator.js","webpack:///./node_modules/core-js/internals/add-to-unscopables.js","webpack:///./node_modules/core-js/internals/object-define-properties.js","webpack:///./node_modules/core-js/internals/html.js","webpack:///./node_modules/core-js/internals/define-iterator.js","webpack:///./node_modules/core-js/internals/create-iterator-constructor.js","webpack:///./node_modules/core-js/internals/correct-prototype-getter.js","webpack:///./node_modules/core-js/internals/object-set-prototype-of.js","webpack:///./node_modules/core-js/internals/a-possible-prototype.js","webpack:///./node_modules/core-js/modules/es.string.replace.js","webpack:///./node_modules/core-js/internals/species-constructor.js","webpack:///./node_modules/core-js/internals/a-function.js","webpack:///./node_modules/core-js/modules/es.number.to-fixed.js","webpack:///./node_modules/core-js/internals/this-number-value.js","webpack:///./node_modules/core-js/internals/string-repeat.js","webpack:///./src/js/utils/utils.js","webpack:///./src/js/utils/color.js","webpack:///./src/js/utils/hsvacolor.js","webpack:///./src/js/libs/moveable.js","webpack:///./src/js/libs/selectable.js","webpack:///./src/js/libs/nanopop.js","webpack:///./src/js/pickr.js","webpack:///./src/js/template.js"],"names":["root","factory","exports","module","define","amd","window","installedModules","__webpack_require__","moduleId","i","l","modules","call","m","c","d","name","getter","o","Object","defineProperty","enumerable","get","r","Symbol","toStringTag","value","t","mode","__esModule","ns","create","key","bind","n","object","property","prototype","hasOwnProperty","p","s","exec","error","it","Math","check","globalThis","self","global","Function","isObject","TypeError","String","shared","has","uid","NATIVE_SYMBOL","USE_SYMBOL_AS_UID","WellKnownSymbolsStore","createWellKnownSymbol","withoutSetter","undefined","DESCRIPTORS","definePropertyModule","createPropertyDescriptor","f","fails","ceil","floor","argument","isNaN","DOMIterables","ArrayIteratorMethods","createNonEnumerableProperty","wellKnownSymbol","ITERATOR","TO_STRING_TAG","ArrayValues","values","COLLECTION_NAME","Collection","CollectionPrototype","METHOD_NAME","getOwnPropertyDescriptor","redefine","setGlobal","copyConstructorProperties","isForced","options","source","target","targetProperty","sourceProperty","descriptor","TARGET","GLOBAL","STATIC","stat","noTargetGet","forced","sham","IE8_DOM_DEFINE","anObject","toPrimitive","nativeDefineProperty","O","P","Attributes","toInteger","min","IndexedObject","requireObjectCoercible","toString","slice","inspectSource","InternalStateModule","getInternalState","enforceInternalState","enforce","TEMPLATE","split","unsafe","simple","join","this","re1","re2","regexpFlags","stickyHelpers","nativeExec","RegExp","nativeReplace","replace","patchedExec","UPDATES_LAST_INDEX_WRONG","lastIndex","UNSUPPORTED_Y","BROKEN_CARET","NPCG_INCLUDED","str","reCopy","match","re","sticky","flags","charsAdded","strCopy","indexOf","multiline","input","index","length","arguments","$","assign","propertyIsEnumerableModule","toIndexedObject","nativeGetOwnPropertyDescriptor","bitmap","configurable","writable","keys","RegExpPrototype","nativeToString","NOT_GENERIC","INCORRECT_NAME","R","rf","regexpExec","SPECIES","REPLACE_SUPPORTS_NAMED_GROUPS","result","groups","a","REPLACE_KEEPS_$0","REPLACE","REGEXP_REPLACE_SUBSTITUTES_UNDEFINED_CAPTURE","SPLIT_WORKS_WITH_OVERWRITTEN_EXEC","originalExec","apply","KEY","SYMBOL","DELEGATES_TO_SYMBOL","DELEGATES_TO_EXEC","execCalled","constructor","nativeRegExpMethod","methods","nativeMethod","regexp","arg2","forceStringMethod","done","stringMethod","regexMethod","string","arg","charAt","S","unicode","classof","fixRegExpWellKnownSymbolLogic","isRegExp","speciesConstructor","advanceStringIndex","toLength","callRegExpExec","arrayPush","push","SUPPORTS_Y","SPLIT","nativeSplit","maybeCallNative","internalSplit","separator","limit","lim","lastLength","output","ignoreCase","lastLastIndex","separatorCopy","test","splitter","res","rx","C","unicodeMatching","q","A","e","z","nativePropertyIsEnumerable","propertyIsEnumerable","NASHORN_BUG","1","V","PREFERRED_STRING","fn","val","valueOf","createElement","document","EXISTS","store","functionToString","set","NATIVE_WEAK_MAP","objectHas","sharedKey","hiddenKeys","WeakMap","wmget","wmhas","wmset","metadata","STATE","getterFor","TYPE","state","type","IS_PURE","version","copyright","id","postfix","random","path","aFunction","variable","namespace","method","names","getOwnPropertySymbols","internalObjectKeys","enumBugKeys","that","dotAll","regExpExec","MATCH","nativeMatch","matcher","fullUnicode","matchStr","notARegExp","correctIsRegExpLogic","nativeStartsWith","startsWith","CORRECT_IS_REGEXP_LOGIC","proto","searchString","search","activeXDocument","defineProperties","html","documentCreateElement","IE_PROTO","EmptyConstructor","scriptTag","content","LT","NullProtoObject","domain","ActiveXObject","iframeDocument","iframe","write","close","temp","parentWindow","NullProtoObjectViaActiveX","style","display","appendChild","src","contentWindow","open","F","Properties","IteratorPrototype","PrototypeOfArrayIteratorPrototype","arrayIterator","getPrototypeOf","BUGGY_SAFARI_ITERATORS","toObject","CORRECT_PROTOTYPE_GETTER","ObjectPrototype","TAG","g","ownKeys","getOwnPropertyDescriptorModule","getBuiltIn","getOwnPropertyNamesModule","getOwnPropertySymbolsModule","concat","getOwnPropertyNames","toAbsoluteIndex","createMethod","IS_INCLUDES","$this","el","fromIndex","includes","max","integer","replacement","feature","detection","data","normalize","POLYFILL","NATIVE","toLowerCase","objectKeys","nativeAssign","b","B","symbol","forEach","chr","T","argumentsLength","j","RE","iterator","CONVERT_TO_STRING","pos","first","second","position","size","charCodeAt","codeAt","CSSRuleList","CSSStyleDeclaration","CSSValueList","ClientRectList","DOMRectList","DOMStringList","DOMTokenList","DataTransferItemList","FileList","HTMLAllCollection","HTMLCollection","HTMLFormElement","HTMLSelectElement","MediaList","MimeTypeArray","NamedNodeMap","NodeList","PaintRequestList","Plugin","PluginArray","SVGLengthList","SVGNumberList","SVGPathSegList","SVGPointList","SVGStringList","SVGTransformList","SourceBufferList","StyleSheetList","TextTrackCueList","TextTrackList","TouchList","addToUnscopables","Iterators","defineIterator","setInternalState","Array","iterated","kind","Arguments","UNSCOPABLES","ArrayPrototype","createIteratorConstructor","setPrototypeOf","setToStringTag","IteratorsCore","returnThis","Iterable","NAME","IteratorConstructor","next","DEFAULT","IS_SET","FORCED","CurrentIteratorPrototype","getIterationMethod","KIND","defaultIterator","IterablePrototype","INCORRECT_VALUES_NAME","nativeIterator","anyNativeIterator","entries","aPossiblePrototype","setter","CORRECT_SETTER","__proto__","SUBSTITUTION_SYMBOLS","SUBSTITUTION_SYMBOLS_NO_NAMED","reason","UNSAFE_SUBSTITUTE","searchValue","replaceValue","replacer","functionalReplace","results","accumulatedResult","nextSourcePosition","matched","captures","namedCaptures","replacerArgs","getSubstitution","tailPos","symbols","ch","capture","defaultConstructor","thisNumberValue","repeat","nativeToFixed","toFixed","pow","x","acc","fractionDigits","k","number","fractDigits","sign","multiply","c2","divide","dataToString","RangeError","x2","log","count","Infinity","eventListener","elements","events","from","isArray","ev","on","off","createElementFromString","div","innerHTML","trim","firstElementChild","removeAttribute","getAttribute","createFromTemplate","resolve","element","base","con","subtree","child","children","arr","sub","eventPath","evt","composedPath","parentElement","resolveElement","Element","reduce","pv","cv","ci","querySelector","shadowRoot","adjustableInputNumbers","mapper","v","handleScroll","inc","Number","shiftKey","ctrlKey","deltaY","selectionStart","focus","setSelectionRange","preventDefault","dispatchEvent","Event","passive","round","hsvToRgb","h","mod","hsvToHsl","rgbToHsv","minVal","maxVal","delta","dr","dg","db","cmykToHsv","y","hslToHsv","hexToHsv","hex","map","parseInt","parseToHSVA","ctx","getContext","fillStyle","standardizeColor","regex","cmyk","rgba","hsla","hsva","hexa","numarize","array","invalid","alphaValid","raw","substring","HSVaColor","original","precision","toHSVA","toHSLA","toRGBA","toCMYK","rgb","hsvToCmyk","toHEXA","padStart","hsvToHex","alpha","toUpperCase","clone","clamp","Moveable","opt","lock","onchange","onstop","_keyboard","activeElement","wrapper","up","right","down","left","xm","ym","update","cache","_tapstart","_","_tapstop","_tapmove","getBoundingClientRect","touch","touches","clientX","clientY","width","top","height","offsetWidth","offsetHeight","cx","cy","trigger","destroy","Selectable","className","onTap","classList","Nanopop","reference","padding","vBehaviour","start","middle","end","hBehaviour","bottom","getInfo","cached","variant","isVertical","useFallback","rb","eb","positions","vertical","variants","leastApplied","findFittingValue","positionVariants","elSize","winSize","posChar","wantedValue","wantedValueAsString","vaType","vbType","vaValue","vbValue","innerHeight","innerWidth","Pickr","init","save","hide","show","clear","change","changestop","cancel","swatchselect","appClass","theme","useAsButton","disabled","comparison","closeOnScroll","outputPrecision","lockOpacity","autoReposition","container","components","interaction","strings","swatches","inline","sliders","default","defaultRepresentation","adjustableNumbers","showAlways","closeWithKey","preview","opacity","hue","palette","_preBuild","_buildComponents","_bindEvents","_finalBuild","color","addSwatch","button","app","_root","_nanopop","setAttribute","requestAnimationFrame","cb","setColor","_rePositioningPicker","_representation","setColorRepresentation","_initializingActive","_emit","lo","hidden","int","find","add","contains","buildPickr","removeChild","parent","nextSibling","insertBefore","remove","parentNode","replaceChild","disable","transition","lastColor","inst","cs","so","sh","getColor","_color","_lastColor","picker","currentColor","_recalc","_updateOutput","cssRGBaString","background","_swatchColors","slider","backgroundColor","selectable","_components","eventBindings","_clearColor","setHSVA","applyColor","stopImmediatePropagation","ck","isOpen","code","some","ranges","step","range","getColorRepresentation","nv","toPrecision","timeout","setTimeout","rs","clearTimeout","_eventBindings","silent","_parseLocalColor","alphaMakesAChange","event","args","_eventListener","callBacks","splice","removeSwatch","swatchColor","destroyAndRemove","recalc","utype","click","getSelectedColor","getRoot","enable","utils","libs"],"mappings":"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","file":"pickr.es5.min.js","sourcesContent":["(function webpackUniversalModuleDefinition(root, factory) {\n\tif(typeof exports === 'object' && typeof module === 'object')\n\t\tmodule.exports = factory();\n\telse if(typeof define === 'function' && define.amd)\n\t\tdefine([], factory);\n\telse if(typeof exports === 'object')\n\t\texports[\"Pickr\"] = factory();\n\telse\n\t\troot[\"Pickr\"] = factory();\n})(window, function() {\nreturn "," \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, { enumerable: true, get: getter });\n \t\t}\n \t};\n\n \t// define __esModule on exports\n \t__webpack_require__.r = function(exports) {\n \t\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n \t\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n \t\t}\n \t\tObject.defineProperty(exports, '__esModule', { value: true });\n \t};\n\n \t// create a fake namespace object\n \t// mode & 1: value is a module id, require it\n \t// mode & 2: merge all properties of value into the ns\n \t// mode & 4: return value when already ns object\n \t// mode & 8|1: behave like require\n \t__webpack_require__.t = function(value, mode) {\n \t\tif(mode & 1) value = __webpack_require__(value);\n \t\tif(mode & 8) return value;\n \t\tif((mode & 4) && typeof value === 'object' && value && value.__esModule) return value;\n \t\tvar ns = Object.create(null);\n \t\t__webpack_require__.r(ns);\n \t\tObject.defineProperty(ns, 'default', { enumerable: true, value: value });\n \t\tif(mode & 2 && typeof value != 'string') for(var key in value) __webpack_require__.d(ns, key, function(key) { return value[key]; }.bind(null, key));\n \t\treturn ns;\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\n \t// Load entry module and return exports\n \treturn __webpack_require__(__webpack_require__.s = 89);\n","module.exports = function (exec) {\n try {\n return !!exec();\n } catch (error) {\n return true;\n }\n};\n","var check = function (it) {\n return it && it.Math == Math && it;\n};\n\n// https://github.com/zloirock/core-js/issues/86#issuecomment-115759028\nmodule.exports =\n // eslint-disable-next-line no-undef\n check(typeof globalThis == 'object' && globalThis) ||\n check(typeof window == 'object' && window) ||\n check(typeof self == 'object' && self) ||\n check(typeof global == 'object' && global) ||\n // eslint-disable-next-line no-new-func\n Function('return this')();\n","var isObject = require('../internals/is-object');\n\nmodule.exports = function (it) {\n if (!isObject(it)) {\n throw TypeError(String(it) + ' is not an object');\n } return it;\n};\n","var hasOwnProperty = {}.hasOwnProperty;\n\nmodule.exports = function (it, key) {\n return hasOwnProperty.call(it, key);\n};\n","var global = require('../internals/global');\nvar shared = require('../internals/shared');\nvar has = require('../internals/has');\nvar uid = require('../internals/uid');\nvar NATIVE_SYMBOL = require('../internals/native-symbol');\nvar USE_SYMBOL_AS_UID = require('../internals/use-symbol-as-uid');\n\nvar WellKnownSymbolsStore = shared('wks');\nvar Symbol = global.Symbol;\nvar createWellKnownSymbol = USE_SYMBOL_AS_UID ? Symbol : Symbol && Symbol.withoutSetter || uid;\n\nmodule.exports = function (name) {\n if (!has(WellKnownSymbolsStore, name)) {\n if (NATIVE_SYMBOL && has(Symbol, name)) WellKnownSymbolsStore[name] = Symbol[name];\n else WellKnownSymbolsStore[name] = createWellKnownSymbol('Symbol.' + name);\n } return WellKnownSymbolsStore[name];\n};\n","// `RequireObjectCoercible` abstract operation\n// https://tc39.github.io/ecma262/#sec-requireobjectcoercible\nmodule.exports = function (it) {\n if (it == undefined) throw TypeError(\"Can't call method on \" + it);\n return it;\n};\n","var DESCRIPTORS = require('../internals/descriptors');\nvar definePropertyModule = require('../internals/object-define-property');\nvar createPropertyDescriptor = require('../internals/create-property-descriptor');\n\nmodule.exports = DESCRIPTORS ? function (object, key, value) {\n return definePropertyModule.f(object, key, createPropertyDescriptor(1, value));\n} : function (object, key, value) {\n object[key] = value;\n return object;\n};\n","var fails = require('../internals/fails');\n\n// Thank's IE8 for his funny defineProperty\nmodule.exports = !fails(function () {\n return Object.defineProperty({}, 1, { get: function () { return 7; } })[1] != 7;\n});\n","module.exports = function (it) {\n return typeof it === 'object' ? it !== null : typeof it === 'function';\n};\n","var ceil = Math.ceil;\nvar floor = Math.floor;\n\n// `ToInteger` abstract operation\n// https://tc39.github.io/ecma262/#sec-tointeger\nmodule.exports = function (argument) {\n return isNaN(argument = +argument) ? 0 : (argument > 0 ? floor : ceil)(argument);\n};\n","var global = require('../internals/global');\nvar DOMIterables = require('../internals/dom-iterables');\nvar ArrayIteratorMethods = require('../modules/es.array.iterator');\nvar createNonEnumerableProperty = require('../internals/create-non-enumerable-property');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\n\nvar ITERATOR = wellKnownSymbol('iterator');\nvar TO_STRING_TAG = wellKnownSymbol('toStringTag');\nvar ArrayValues = ArrayIteratorMethods.values;\n\nfor (var COLLECTION_NAME in DOMIterables) {\n var Collection = global[COLLECTION_NAME];\n var CollectionPrototype = Collection && Collection.prototype;\n if (CollectionPrototype) {\n // some Chrome versions have non-configurable methods on DOMTokenList\n if (CollectionPrototype[ITERATOR] !== ArrayValues) try {\n createNonEnumerableProperty(CollectionPrototype, ITERATOR, ArrayValues);\n } catch (error) {\n CollectionPrototype[ITERATOR] = ArrayValues;\n }\n if (!CollectionPrototype[TO_STRING_TAG]) {\n createNonEnumerableProperty(CollectionPrototype, TO_STRING_TAG, COLLECTION_NAME);\n }\n if (DOMIterables[COLLECTION_NAME]) for (var METHOD_NAME in ArrayIteratorMethods) {\n // some Chrome versions have non-configurable methods on DOMTokenList\n if (CollectionPrototype[METHOD_NAME] !== ArrayIteratorMethods[METHOD_NAME]) try {\n createNonEnumerableProperty(CollectionPrototype, METHOD_NAME, ArrayIteratorMethods[METHOD_NAME]);\n } catch (error) {\n CollectionPrototype[METHOD_NAME] = ArrayIteratorMethods[METHOD_NAME];\n }\n }\n }\n}\n","var global = require('../internals/global');\nvar getOwnPropertyDescriptor = require('../internals/object-get-own-property-descriptor').f;\nvar createNonEnumerableProperty = require('../internals/create-non-enumerable-property');\nvar redefine = require('../internals/redefine');\nvar setGlobal = require('../internals/set-global');\nvar copyConstructorProperties = require('../internals/copy-constructor-properties');\nvar isForced = require('../internals/is-forced');\n\n/*\n options.target - name of the target object\n options.global - target is the global object\n options.stat - export as static methods of target\n options.proto - export as prototype methods of target\n options.real - real prototype method for the `pure` version\n options.forced - export even if the native feature is available\n options.bind - bind methods to the target, required for the `pure` version\n options.wrap - wrap constructors to preventing global pollution, required for the `pure` version\n options.unsafe - use the simple assignment of property instead of delete + defineProperty\n options.sham - add a flag to not completely full polyfills\n options.enumerable - export as enumerable property\n options.noTargetGet - prevent calling a getter on target\n*/\nmodule.exports = function (options, source) {\n var TARGET = options.target;\n var GLOBAL = options.global;\n var STATIC = options.stat;\n var FORCED, target, key, targetProperty, sourceProperty, descriptor;\n if (GLOBAL) {\n target = global;\n } else if (STATIC) {\n target = global[TARGET] || setGlobal(TARGET, {});\n } else {\n target = (global[TARGET] || {}).prototype;\n }\n if (target) for (key in source) {\n sourceProperty = source[key];\n if (options.noTargetGet) {\n descriptor = getOwnPropertyDescriptor(target, key);\n targetProperty = descriptor && descriptor.value;\n } else targetProperty = target[key];\n FORCED = isForced(GLOBAL ? key : TARGET + (STATIC ? '.' : '#') + key, options.forced);\n // contained in target\n if (!FORCED && targetProperty !== undefined) {\n if (typeof sourceProperty === typeof targetProperty) continue;\n copyConstructorProperties(sourceProperty, targetProperty);\n }\n // add a flag to not completely full polyfills\n if (options.sham || (targetProperty && targetProperty.sham)) {\n createNonEnumerableProperty(sourceProperty, 'sham', true);\n }\n // extend global\n redefine(target, key, sourceProperty, options);\n }\n};\n","var DESCRIPTORS = require('../internals/descriptors');\nvar IE8_DOM_DEFINE = require('../internals/ie8-dom-define');\nvar anObject = require('../internals/an-object');\nvar toPrimitive = require('../internals/to-primitive');\n\nvar nativeDefineProperty = Object.defineProperty;\n\n// `Object.defineProperty` method\n// https://tc39.github.io/ecma262/#sec-object.defineproperty\nexports.f = DESCRIPTORS ? nativeDefineProperty : function defineProperty(O, P, Attributes) {\n anObject(O);\n P = toPrimitive(P, true);\n anObject(Attributes);\n if (IE8_DOM_DEFINE) try {\n return nativeDefineProperty(O, P, Attributes);\n } catch (error) { /* empty */ }\n if ('get' in Attributes || 'set' in Attributes) throw TypeError('Accessors not supported');\n if ('value' in Attributes) O[P] = Attributes.value;\n return O;\n};\n","var toInteger = require('../internals/to-integer');\n\nvar min = Math.min;\n\n// `ToLength` abstract operation\n// https://tc39.github.io/ecma262/#sec-tolength\nmodule.exports = function (argument) {\n return argument > 0 ? min(toInteger(argument), 0x1FFFFFFFFFFFFF) : 0; // 2 ** 53 - 1 == 9007199254740991\n};\n","// toObject with fallback for non-array-like ES3 strings\nvar IndexedObject = require('../internals/indexed-object');\nvar requireObjectCoercible = require('../internals/require-object-coercible');\n\nmodule.exports = function (it) {\n return IndexedObject(requireObjectCoercible(it));\n};\n","var toString = {}.toString;\n\nmodule.exports = function (it) {\n return toString.call(it).slice(8, -1);\n};\n","var global = require('../internals/global');\nvar createNonEnumerableProperty = require('../internals/create-non-enumerable-property');\nvar has = require('../internals/has');\nvar setGlobal = require('../internals/set-global');\nvar inspectSource = require('../internals/inspect-source');\nvar InternalStateModule = require('../internals/internal-state');\n\nvar getInternalState = InternalStateModule.get;\nvar enforceInternalState = InternalStateModule.enforce;\nvar TEMPLATE = String(String).split('String');\n\n(module.exports = function (O, key, value, options) {\n var unsafe = options ? !!options.unsafe : false;\n var simple = options ? !!options.enumerable : false;\n var noTargetGet = options ? !!options.noTargetGet : false;\n if (typeof value == 'function') {\n if (typeof key == 'string' && !has(value, 'name')) createNonEnumerableProperty(value, 'name', key);\n enforceInternalState(value).source = TEMPLATE.join(typeof key == 'string' ? key : '');\n }\n if (O === global) {\n if (simple) O[key] = value;\n else setGlobal(key, value);\n return;\n } else if (!unsafe) {\n delete O[key];\n } else if (!noTargetGet && O[key]) {\n simple = true;\n }\n if (simple) O[key] = value;\n else createNonEnumerableProperty(O, key, value);\n// add fake Function#toString for correct work wrapped methods / constructors with methods like LoDash isNative\n})(Function.prototype, 'toString', function toString() {\n return typeof this == 'function' && getInternalState(this).source || inspectSource(this);\n});\n","module.exports = false;\n","'use strict';\nvar regexpFlags = require('./regexp-flags');\nvar stickyHelpers = require('./regexp-sticky-helpers');\n\nvar nativeExec = RegExp.prototype.exec;\n// This always refers to the native implementation, because the\n// String#replace polyfill uses ./fix-regexp-well-known-symbol-logic.js,\n// which loads this file before patching the method.\nvar nativeReplace = String.prototype.replace;\n\nvar patchedExec = nativeExec;\n\nvar UPDATES_LAST_INDEX_WRONG = (function () {\n var re1 = /a/;\n var re2 = /b*/g;\n nativeExec.call(re1, 'a');\n nativeExec.call(re2, 'a');\n return re1.lastIndex !== 0 || re2.lastIndex !== 0;\n})();\n\nvar UNSUPPORTED_Y = stickyHelpers.UNSUPPORTED_Y || stickyHelpers.BROKEN_CARET;\n\n// nonparticipating capturing group, copied from es5-shim's String#split patch.\nvar NPCG_INCLUDED = /()??/.exec('')[1] !== undefined;\n\nvar PATCH = UPDATES_LAST_INDEX_WRONG || NPCG_INCLUDED || UNSUPPORTED_Y;\n\nif (PATCH) {\n patchedExec = function exec(str) {\n var re = this;\n var lastIndex, reCopy, match, i;\n var sticky = UNSUPPORTED_Y && re.sticky;\n var flags = regexpFlags.call(re);\n var source = re.source;\n var charsAdded = 0;\n var strCopy = str;\n\n if (sticky) {\n flags = flags.replace('y', '');\n if (flags.indexOf('g') === -1) {\n flags += 'g';\n }\n\n strCopy = String(str).slice(re.lastIndex);\n // Support anchored sticky behavior.\n if (re.lastIndex > 0 && (!re.multiline || re.multiline && str[re.lastIndex - 1] !== '\\n')) {\n source = '(?: ' + source + ')';\n strCopy = ' ' + strCopy;\n charsAdded++;\n }\n // ^(? + rx + ) is needed, in combination with some str slicing, to\n // simulate the 'y' flag.\n reCopy = new RegExp('^(?:' + source + ')', flags);\n }\n\n if (NPCG_INCLUDED) {\n reCopy = new RegExp('^' + source + '$(?!\\\\s)', flags);\n }\n if (UPDATES_LAST_INDEX_WRONG) lastIndex = re.lastIndex;\n\n match = nativeExec.call(sticky ? reCopy : re, strCopy);\n\n if (sticky) {\n if (match) {\n match.input = match.input.slice(charsAdded);\n match[0] = match[0].slice(charsAdded);\n match.index = re.lastIndex;\n re.lastIndex += match[0].length;\n } else re.lastIndex = 0;\n } else if (UPDATES_LAST_INDEX_WRONG && match) {\n re.lastIndex = re.global ? match.index + match[0].length : lastIndex;\n }\n if (NPCG_INCLUDED && match && match.length > 1) {\n // Fix browsers whose `exec` methods don't consistently return `undefined`\n // for NPCG, like IE8. NOTE: This doesn' work for /(.?)?/\n nativeReplace.call(match[0], reCopy, function () {\n for (i = 1; i < arguments.length - 2; i++) {\n if (arguments[i] === undefined) match[i] = undefined;\n }\n });\n }\n\n return match;\n };\n}\n\nmodule.exports = patchedExec;\n","var $ = require('../internals/export');\nvar assign = require('../internals/object-assign');\n\n// `Object.assign` method\n// https://tc39.github.io/ecma262/#sec-object.assign\n$({ target: 'Object', stat: true, forced: Object.assign !== assign }, {\n assign: assign\n});\n","var DESCRIPTORS = require('../internals/descriptors');\nvar propertyIsEnumerableModule = require('../internals/object-property-is-enumerable');\nvar createPropertyDescriptor = require('../internals/create-property-descriptor');\nvar toIndexedObject = require('../internals/to-indexed-object');\nvar toPrimitive = require('../internals/to-primitive');\nvar has = require('../internals/has');\nvar IE8_DOM_DEFINE = require('../internals/ie8-dom-define');\n\nvar nativeGetOwnPropertyDescriptor = Object.getOwnPropertyDescriptor;\n\n// `Object.getOwnPropertyDescriptor` method\n// https://tc39.github.io/ecma262/#sec-object.getownpropertydescriptor\nexports.f = DESCRIPTORS ? nativeGetOwnPropertyDescriptor : function getOwnPropertyDescriptor(O, P) {\n O = toIndexedObject(O);\n P = toPrimitive(P, true);\n if (IE8_DOM_DEFINE) try {\n return nativeGetOwnPropertyDescriptor(O, P);\n } catch (error) { /* empty */ }\n if (has(O, P)) return createPropertyDescriptor(!propertyIsEnumerableModule.f.call(O, P), O[P]);\n};\n","module.exports = function (bitmap, value) {\n return {\n enumerable: !(bitmap & 1),\n configurable: !(bitmap & 2),\n writable: !(bitmap & 4),\n value: value\n };\n};\n","var global = require('../internals/global');\nvar createNonEnumerableProperty = require('../internals/create-non-enumerable-property');\n\nmodule.exports = function (key, value) {\n try {\n createNonEnumerableProperty(global, key, value);\n } catch (error) {\n global[key] = value;\n } return value;\n};\n","var shared = require('../internals/shared');\nvar uid = require('../internals/uid');\n\nvar keys = shared('keys');\n\nmodule.exports = function (key) {\n return keys[key] || (keys[key] = uid(key));\n};\n","module.exports = {};\n","// IE8- don't enum bug keys\nmodule.exports = [\n 'constructor',\n 'hasOwnProperty',\n 'isPrototypeOf',\n 'propertyIsEnumerable',\n 'toLocaleString',\n 'toString',\n 'valueOf'\n];\n","var requireObjectCoercible = require('../internals/require-object-coercible');\n\n// `ToObject` abstract operation\n// https://tc39.github.io/ecma262/#sec-toobject\nmodule.exports = function (argument) {\n return Object(requireObjectCoercible(argument));\n};\n","'use strict';\nvar redefine = require('../internals/redefine');\nvar anObject = require('../internals/an-object');\nvar fails = require('../internals/fails');\nvar flags = require('../internals/regexp-flags');\n\nvar TO_STRING = 'toString';\nvar RegExpPrototype = RegExp.prototype;\nvar nativeToString = RegExpPrototype[TO_STRING];\n\nvar NOT_GENERIC = fails(function () { return nativeToString.call({ source: 'a', flags: 'b' }) != '/a/b'; });\n// FF44- RegExp#toString has a wrong name\nvar INCORRECT_NAME = nativeToString.name != TO_STRING;\n\n// `RegExp.prototype.toString` method\n// https://tc39.github.io/ecma262/#sec-regexp.prototype.tostring\nif (NOT_GENERIC || INCORRECT_NAME) {\n redefine(RegExp.prototype, TO_STRING, function toString() {\n var R = anObject(this);\n var p = String(R.source);\n var rf = R.flags;\n var f = String(rf === undefined && R instanceof RegExp && !('flags' in RegExpPrototype) ? flags.call(R) : rf);\n return '/' + p + '/' + f;\n }, { unsafe: true });\n}\n","'use strict';\n// TODO: Remove from `core-js@4` since it's moved to entry points\nrequire('../modules/es.regexp.exec');\nvar redefine = require('../internals/redefine');\nvar fails = require('../internals/fails');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\nvar regexpExec = require('../internals/regexp-exec');\nvar createNonEnumerableProperty = require('../internals/create-non-enumerable-property');\n\nvar SPECIES = wellKnownSymbol('species');\n\nvar REPLACE_SUPPORTS_NAMED_GROUPS = !fails(function () {\n // #replace needs built-in support for named groups.\n // #match works fine because it just return the exec results, even if it has\n // a \"grops\" property.\n var re = /./;\n re.exec = function () {\n var result = [];\n result.groups = { a: '7' };\n return result;\n };\n return ''.replace(re, '$
') !== '7';\n});\n\n// IE <= 11 replaces $0 with the whole match, as if it was $&\n// https://stackoverflow.com/questions/6024666/getting-ie-to-replace-a-regex-with-the-literal-string-0\nvar REPLACE_KEEPS_$0 = (function () {\n return 'a'.replace(/./, '$0') === '$0';\n})();\n\nvar REPLACE = wellKnownSymbol('replace');\n// Safari <= 13.0.3(?) substitutes nth capture where n>m with an empty string\nvar REGEXP_REPLACE_SUBSTITUTES_UNDEFINED_CAPTURE = (function () {\n if (/./[REPLACE]) {\n return /./[REPLACE]('a', '$0') === '';\n }\n return false;\n})();\n\n// Chrome 51 has a buggy \"split\" implementation when RegExp#exec !== nativeExec\n// Weex JS has frozen built-in prototypes, so use try / catch wrapper\nvar SPLIT_WORKS_WITH_OVERWRITTEN_EXEC = !fails(function () {\n var re = /(?:)/;\n var originalExec = re.exec;\n re.exec = function () { return originalExec.apply(this, arguments); };\n var result = 'ab'.split(re);\n return result.length !== 2 || result[0] !== 'a' || result[1] !== 'b';\n});\n\nmodule.exports = function (KEY, length, exec, sham) {\n var SYMBOL = wellKnownSymbol(KEY);\n\n var DELEGATES_TO_SYMBOL = !fails(function () {\n // String methods call symbol-named RegEp methods\n var O = {};\n O[SYMBOL] = function () { return 7; };\n return ''[KEY](O) != 7;\n });\n\n var DELEGATES_TO_EXEC = DELEGATES_TO_SYMBOL && !fails(function () {\n // Symbol-named RegExp methods call .exec\n var execCalled = false;\n var re = /a/;\n\n if (KEY === 'split') {\n // We can't use real regex here since it causes deoptimization\n // and serious performance degradation in V8\n // https://github.com/zloirock/core-js/issues/306\n re = {};\n // RegExp[@@split] doesn't call the regex's exec method, but first creates\n // a new one. We need to return the patched regex when creating the new one.\n re.constructor = {};\n re.constructor[SPECIES] = function () { return re; };\n re.flags = '';\n re[SYMBOL] = /./[SYMBOL];\n }\n\n re.exec = function () { execCalled = true; return null; };\n\n re[SYMBOL]('');\n return !execCalled;\n });\n\n if (\n !DELEGATES_TO_SYMBOL ||\n !DELEGATES_TO_EXEC ||\n (KEY === 'replace' && !(\n REPLACE_SUPPORTS_NAMED_GROUPS &&\n REPLACE_KEEPS_$0 &&\n !REGEXP_REPLACE_SUBSTITUTES_UNDEFINED_CAPTURE\n )) ||\n (KEY === 'split' && !SPLIT_WORKS_WITH_OVERWRITTEN_EXEC)\n ) {\n var nativeRegExpMethod = /./[SYMBOL];\n var methods = exec(SYMBOL, ''[KEY], function (nativeMethod, regexp, str, arg2, forceStringMethod) {\n if (regexp.exec === regexpExec) {\n if (DELEGATES_TO_SYMBOL && !forceStringMethod) {\n // The native String method already delegates to @@method (this\n // polyfilled function), leasing to infinite recursion.\n // We avoid it by directly calling the native @@method method.\n return { done: true, value: nativeRegExpMethod.call(regexp, str, arg2) };\n }\n return { done: true, value: nativeMethod.call(str, regexp, arg2) };\n }\n return { done: false };\n }, {\n REPLACE_KEEPS_$0: REPLACE_KEEPS_$0,\n REGEXP_REPLACE_SUBSTITUTES_UNDEFINED_CAPTURE: REGEXP_REPLACE_SUBSTITUTES_UNDEFINED_CAPTURE\n });\n var stringMethod = methods[0];\n var regexMethod = methods[1];\n\n redefine(String.prototype, KEY, stringMethod);\n redefine(RegExp.prototype, SYMBOL, length == 2\n // 21.2.5.8 RegExp.prototype[@@replace](string, replaceValue)\n // 21.2.5.11 RegExp.prototype[@@split](string, limit)\n ? function (string, arg) { return regexMethod.call(string, this, arg); }\n // 21.2.5.6 RegExp.prototype[@@match](string)\n // 21.2.5.9 RegExp.prototype[@@search](string)\n : function (string) { return regexMethod.call(string, this); }\n );\n }\n\n if (sham) createNonEnumerableProperty(RegExp.prototype[SYMBOL], 'sham', true);\n};\n","'use strict';\nvar charAt = require('../internals/string-multibyte').charAt;\n\n// `AdvanceStringIndex` abstract operation\n// https://tc39.github.io/ecma262/#sec-advancestringindex\nmodule.exports = function (S, index, unicode) {\n return index + (unicode ? charAt(S, index).length : 1);\n};\n","var classof = require('./classof-raw');\nvar regexpExec = require('./regexp-exec');\n\n// `RegExpExec` abstract operation\n// https://tc39.github.io/ecma262/#sec-regexpexec\nmodule.exports = function (R, S) {\n var exec = R.exec;\n if (typeof exec === 'function') {\n var result = exec.call(R, S);\n if (typeof result !== 'object') {\n throw TypeError('RegExp exec method returned something other than an Object or null');\n }\n return result;\n }\n\n if (classof(R) !== 'RegExp') {\n throw TypeError('RegExp#exec called on incompatible receiver');\n }\n\n return regexpExec.call(R, S);\n};\n\n","module.exports = {};\n","'use strict';\nvar fixRegExpWellKnownSymbolLogic = require('../internals/fix-regexp-well-known-symbol-logic');\nvar isRegExp = require('../internals/is-regexp');\nvar anObject = require('../internals/an-object');\nvar requireObjectCoercible = require('../internals/require-object-coercible');\nvar speciesConstructor = require('../internals/species-constructor');\nvar advanceStringIndex = require('../internals/advance-string-index');\nvar toLength = require('../internals/to-length');\nvar callRegExpExec = require('../internals/regexp-exec-abstract');\nvar regexpExec = require('../internals/regexp-exec');\nvar fails = require('../internals/fails');\n\nvar arrayPush = [].push;\nvar min = Math.min;\nvar MAX_UINT32 = 0xFFFFFFFF;\n\n// babel-minify transpiles RegExp('x', 'y') -> /x/y and it causes SyntaxError\nvar SUPPORTS_Y = !fails(function () { return !RegExp(MAX_UINT32, 'y'); });\n\n// @@split logic\nfixRegExpWellKnownSymbolLogic('split', 2, function (SPLIT, nativeSplit, maybeCallNative) {\n var internalSplit;\n if (\n 'abbc'.split(/(b)*/)[1] == 'c' ||\n 'test'.split(/(?:)/, -1).length != 4 ||\n 'ab'.split(/(?:ab)*/).length != 2 ||\n '.'.split(/(.?)(.?)/).length != 4 ||\n '.'.split(/()()/).length > 1 ||\n ''.split(/.?/).length\n ) {\n // based on es5-shim implementation, need to rework it\n internalSplit = function (separator, limit) {\n var string = String(requireObjectCoercible(this));\n var lim = limit === undefined ? MAX_UINT32 : limit >>> 0;\n if (lim === 0) return [];\n if (separator === undefined) return [string];\n // If `separator` is not a regex, use native split\n if (!isRegExp(separator)) {\n return nativeSplit.call(string, separator, lim);\n }\n var output = [];\n var flags = (separator.ignoreCase ? 'i' : '') +\n (separator.multiline ? 'm' : '') +\n (separator.unicode ? 'u' : '') +\n (separator.sticky ? 'y' : '');\n var lastLastIndex = 0;\n // Make `global` and avoid `lastIndex` issues by working with a copy\n var separatorCopy = new RegExp(separator.source, flags + 'g');\n var match, lastIndex, lastLength;\n while (match = regexpExec.call(separatorCopy, string)) {\n lastIndex = separatorCopy.lastIndex;\n if (lastIndex > lastLastIndex) {\n output.push(string.slice(lastLastIndex, match.index));\n if (match.length > 1 && match.index < string.length) arrayPush.apply(output, match.slice(1));\n lastLength = match[0].length;\n lastLastIndex = lastIndex;\n if (output.length >= lim) break;\n }\n if (separatorCopy.lastIndex === match.index) separatorCopy.lastIndex++; // Avoid an infinite loop\n }\n if (lastLastIndex === string.length) {\n if (lastLength || !separatorCopy.test('')) output.push('');\n } else output.push(string.slice(lastLastIndex));\n return output.length > lim ? output.slice(0, lim) : output;\n };\n // Chakra, V8\n } else if ('0'.split(undefined, 0).length) {\n internalSplit = function (separator, limit) {\n return separator === undefined && limit === 0 ? [] : nativeSplit.call(this, separator, limit);\n };\n } else internalSplit = nativeSplit;\n\n return [\n // `String.prototype.split` method\n // https://tc39.github.io/ecma262/#sec-string.prototype.split\n function split(separator, limit) {\n var O = requireObjectCoercible(this);\n var splitter = separator == undefined ? undefined : separator[SPLIT];\n return splitter !== undefined\n ? splitter.call(separator, O, limit)\n : internalSplit.call(String(O), separator, limit);\n },\n // `RegExp.prototype[@@split]` method\n // https://tc39.github.io/ecma262/#sec-regexp.prototype-@@split\n //\n // NOTE: This cannot be properly polyfilled in engines that don't support\n // the 'y' flag.\n function (regexp, limit) {\n var res = maybeCallNative(internalSplit, regexp, this, limit, internalSplit !== nativeSplit);\n if (res.done) return res.value;\n\n var rx = anObject(regexp);\n var S = String(this);\n var C = speciesConstructor(rx, RegExp);\n\n var unicodeMatching = rx.unicode;\n var flags = (rx.ignoreCase ? 'i' : '') +\n (rx.multiline ? 'm' : '') +\n (rx.unicode ? 'u' : '') +\n (SUPPORTS_Y ? 'y' : 'g');\n\n // ^(? + rx + ) is needed, in combination with some S slicing, to\n // simulate the 'y' flag.\n var splitter = new C(SUPPORTS_Y ? rx : '^(?:' + rx.source + ')', flags);\n var lim = limit === undefined ? MAX_UINT32 : limit >>> 0;\n if (lim === 0) return [];\n if (S.length === 0) return callRegExpExec(splitter, S) === null ? [S] : [];\n var p = 0;\n var q = 0;\n var A = [];\n while (q < S.length) {\n splitter.lastIndex = SUPPORTS_Y ? q : 0;\n var z = callRegExpExec(splitter, SUPPORTS_Y ? S : S.slice(q));\n var e;\n if (\n z === null ||\n (e = min(toLength(splitter.lastIndex + (SUPPORTS_Y ? 0 : q)), S.length)) === p\n ) {\n q = advanceStringIndex(S, q, unicodeMatching);\n } else {\n A.push(S.slice(p, q));\n if (A.length === lim) return A;\n for (var i = 1; i <= z.length - 1; i++) {\n A.push(z[i]);\n if (A.length === lim) return A;\n }\n q = p = e;\n }\n }\n A.push(S.slice(p));\n return A;\n }\n ];\n}, !SUPPORTS_Y);\n","'use strict';\nvar nativePropertyIsEnumerable = {}.propertyIsEnumerable;\nvar getOwnPropertyDescriptor = Object.getOwnPropertyDescriptor;\n\n// Nashorn ~ JDK8 bug\nvar NASHORN_BUG = getOwnPropertyDescriptor && !nativePropertyIsEnumerable.call({ 1: 2 }, 1);\n\n// `Object.prototype.propertyIsEnumerable` method implementation\n// https://tc39.github.io/ecma262/#sec-object.prototype.propertyisenumerable\nexports.f = NASHORN_BUG ? function propertyIsEnumerable(V) {\n var descriptor = getOwnPropertyDescriptor(this, V);\n return !!descriptor && descriptor.enumerable;\n} : nativePropertyIsEnumerable;\n","var fails = require('../internals/fails');\nvar classof = require('../internals/classof-raw');\n\nvar split = ''.split;\n\n// fallback for non-array-like ES3 and non-enumerable old V8 strings\nmodule.exports = fails(function () {\n // throws an error in rhino, see https://github.com/mozilla/rhino/issues/346\n // eslint-disable-next-line no-prototype-builtins\n return !Object('z').propertyIsEnumerable(0);\n}) ? function (it) {\n return classof(it) == 'String' ? split.call(it, '') : Object(it);\n} : Object;\n","var isObject = require('../internals/is-object');\n\n// `ToPrimitive` abstract operation\n// https://tc39.github.io/ecma262/#sec-toprimitive\n// instead of the ES6 spec version, we didn't implement @@toPrimitive case\n// and the second argument - flag - preferred type is a string\nmodule.exports = function (input, PREFERRED_STRING) {\n if (!isObject(input)) return input;\n var fn, val;\n if (PREFERRED_STRING && typeof (fn = input.toString) == 'function' && !isObject(val = fn.call(input))) return val;\n if (typeof (fn = input.valueOf) == 'function' && !isObject(val = fn.call(input))) return val;\n if (!PREFERRED_STRING && typeof (fn = input.toString) == 'function' && !isObject(val = fn.call(input))) return val;\n throw TypeError(\"Can't convert object to primitive value\");\n};\n","var DESCRIPTORS = require('../internals/descriptors');\nvar fails = require('../internals/fails');\nvar createElement = require('../internals/document-create-element');\n\n// Thank's IE8 for his funny defineProperty\nmodule.exports = !DESCRIPTORS && !fails(function () {\n return Object.defineProperty(createElement('div'), 'a', {\n get: function () { return 7; }\n }).a != 7;\n});\n","var global = require('../internals/global');\nvar isObject = require('../internals/is-object');\n\nvar document = global.document;\n// typeof document.createElement is 'object' in old IE\nvar EXISTS = isObject(document) && isObject(document.createElement);\n\nmodule.exports = function (it) {\n return EXISTS ? document.createElement(it) : {};\n};\n","var store = require('../internals/shared-store');\n\nvar functionToString = Function.toString;\n\n// this helper broken in `3.4.1-3.4.4`, so we can't use `shared` helper\nif (typeof store.inspectSource != 'function') {\n store.inspectSource = function (it) {\n return functionToString.call(it);\n };\n}\n\nmodule.exports = store.inspectSource;\n","var global = require('../internals/global');\nvar setGlobal = require('../internals/set-global');\n\nvar SHARED = '__core-js_shared__';\nvar store = global[SHARED] || setGlobal(SHARED, {});\n\nmodule.exports = store;\n","var NATIVE_WEAK_MAP = require('../internals/native-weak-map');\nvar global = require('../internals/global');\nvar isObject = require('../internals/is-object');\nvar createNonEnumerableProperty = require('../internals/create-non-enumerable-property');\nvar objectHas = require('../internals/has');\nvar sharedKey = require('../internals/shared-key');\nvar hiddenKeys = require('../internals/hidden-keys');\n\nvar WeakMap = global.WeakMap;\nvar set, get, has;\n\nvar enforce = function (it) {\n return has(it) ? get(it) : set(it, {});\n};\n\nvar getterFor = function (TYPE) {\n return function (it) {\n var state;\n if (!isObject(it) || (state = get(it)).type !== TYPE) {\n throw TypeError('Incompatible receiver, ' + TYPE + ' required');\n } return state;\n };\n};\n\nif (NATIVE_WEAK_MAP) {\n var store = new WeakMap();\n var wmget = store.get;\n var wmhas = store.has;\n var wmset = store.set;\n set = function (it, metadata) {\n wmset.call(store, it, metadata);\n return metadata;\n };\n get = function (it) {\n return wmget.call(store, it) || {};\n };\n has = function (it) {\n return wmhas.call(store, it);\n };\n} else {\n var STATE = sharedKey('state');\n hiddenKeys[STATE] = true;\n set = function (it, metadata) {\n createNonEnumerableProperty(it, STATE, metadata);\n return metadata;\n };\n get = function (it) {\n return objectHas(it, STATE) ? it[STATE] : {};\n };\n has = function (it) {\n return objectHas(it, STATE);\n };\n}\n\nmodule.exports = {\n set: set,\n get: get,\n has: has,\n enforce: enforce,\n getterFor: getterFor\n};\n","var IS_PURE = require('../internals/is-pure');\nvar store = require('../internals/shared-store');\n\n(module.exports = function (key, value) {\n return store[key] || (store[key] = value !== undefined ? value : {});\n})('versions', []).push({\n version: '3.6.5',\n mode: IS_PURE ? 'pure' : 'global',\n copyright: '© 2020 Denis Pushkarev (zloirock.ru)'\n});\n","var id = 0;\nvar postfix = Math.random();\n\nmodule.exports = function (key) {\n return 'Symbol(' + String(key === undefined ? '' : key) + ')_' + (++id + postfix).toString(36);\n};\n","var path = require('../internals/path');\nvar global = require('../internals/global');\n\nvar aFunction = function (variable) {\n return typeof variable == 'function' ? variable : undefined;\n};\n\nmodule.exports = function (namespace, method) {\n return arguments.length < 2 ? aFunction(path[namespace]) || aFunction(global[namespace])\n : path[namespace] && path[namespace][method] || global[namespace] && global[namespace][method];\n};\n","var has = require('../internals/has');\nvar toIndexedObject = require('../internals/to-indexed-object');\nvar indexOf = require('../internals/array-includes').indexOf;\nvar hiddenKeys = require('../internals/hidden-keys');\n\nmodule.exports = function (object, names) {\n var O = toIndexedObject(object);\n var i = 0;\n var result = [];\n var key;\n for (key in O) !has(hiddenKeys, key) && has(O, key) && result.push(key);\n // Don't enum bug & hidden keys\n while (names.length > i) if (has(O, key = names[i++])) {\n ~indexOf(result, key) || result.push(key);\n }\n return result;\n};\n","exports.f = Object.getOwnPropertySymbols;\n","var internalObjectKeys = require('../internals/object-keys-internal');\nvar enumBugKeys = require('../internals/enum-bug-keys');\n\n// `Object.keys` method\n// https://tc39.github.io/ecma262/#sec-object.keys\nmodule.exports = Object.keys || function keys(O) {\n return internalObjectKeys(O, enumBugKeys);\n};\n","'use strict';\nvar anObject = require('../internals/an-object');\n\n// `RegExp.prototype.flags` getter implementation\n// https://tc39.github.io/ecma262/#sec-get-regexp.prototype.flags\nmodule.exports = function () {\n var that = anObject(this);\n var result = '';\n if (that.global) result += 'g';\n if (that.ignoreCase) result += 'i';\n if (that.multiline) result += 'm';\n if (that.dotAll) result += 's';\n if (that.unicode) result += 'u';\n if (that.sticky) result += 'y';\n return result;\n};\n","'use strict';\nvar fixRegExpWellKnownSymbolLogic = require('../internals/fix-regexp-well-known-symbol-logic');\nvar anObject = require('../internals/an-object');\nvar toLength = require('../internals/to-length');\nvar requireObjectCoercible = require('../internals/require-object-coercible');\nvar advanceStringIndex = require('../internals/advance-string-index');\nvar regExpExec = require('../internals/regexp-exec-abstract');\n\n// @@match logic\nfixRegExpWellKnownSymbolLogic('match', 1, function (MATCH, nativeMatch, maybeCallNative) {\n return [\n // `String.prototype.match` method\n // https://tc39.github.io/ecma262/#sec-string.prototype.match\n function match(regexp) {\n var O = requireObjectCoercible(this);\n var matcher = regexp == undefined ? undefined : regexp[MATCH];\n return matcher !== undefined ? matcher.call(regexp, O) : new RegExp(regexp)[MATCH](String(O));\n },\n // `RegExp.prototype[@@match]` method\n // https://tc39.github.io/ecma262/#sec-regexp.prototype-@@match\n function (regexp) {\n var res = maybeCallNative(nativeMatch, regexp, this);\n if (res.done) return res.value;\n\n var rx = anObject(regexp);\n var S = String(this);\n\n if (!rx.global) return regExpExec(rx, S);\n\n var fullUnicode = rx.unicode;\n rx.lastIndex = 0;\n var A = [];\n var n = 0;\n var result;\n while ((result = regExpExec(rx, S)) !== null) {\n var matchStr = String(result[0]);\n A[n] = matchStr;\n if (matchStr === '') rx.lastIndex = advanceStringIndex(S, toLength(rx.lastIndex), fullUnicode);\n n++;\n }\n return n === 0 ? null : A;\n }\n ];\n});\n","var fails = require('../internals/fails');\n\nmodule.exports = !!Object.getOwnPropertySymbols && !fails(function () {\n // Chrome 38 Symbol has incorrect toString conversion\n // eslint-disable-next-line no-undef\n return !String(Symbol());\n});\n","'use strict';\nvar $ = require('../internals/export');\nvar getOwnPropertyDescriptor = require('../internals/object-get-own-property-descriptor').f;\nvar toLength = require('../internals/to-length');\nvar notARegExp = require('../internals/not-a-regexp');\nvar requireObjectCoercible = require('../internals/require-object-coercible');\nvar correctIsRegExpLogic = require('../internals/correct-is-regexp-logic');\nvar IS_PURE = require('../internals/is-pure');\n\nvar nativeStartsWith = ''.startsWith;\nvar min = Math.min;\n\nvar CORRECT_IS_REGEXP_LOGIC = correctIsRegExpLogic('startsWith');\n// https://github.com/zloirock/core-js/pull/702\nvar MDN_POLYFILL_BUG = !IS_PURE && !CORRECT_IS_REGEXP_LOGIC && !!function () {\n var descriptor = getOwnPropertyDescriptor(String.prototype, 'startsWith');\n return descriptor && !descriptor.writable;\n}();\n\n// `String.prototype.startsWith` method\n// https://tc39.github.io/ecma262/#sec-string.prototype.startswith\n$({ target: 'String', proto: true, forced: !MDN_POLYFILL_BUG && !CORRECT_IS_REGEXP_LOGIC }, {\n startsWith: function startsWith(searchString /* , position = 0 */) {\n var that = String(requireObjectCoercible(this));\n notARegExp(searchString);\n var index = toLength(min(arguments.length > 1 ? arguments[1] : undefined, that.length));\n var search = String(searchString);\n return nativeStartsWith\n ? nativeStartsWith.call(that, search, index)\n : that.slice(index, index + search.length) === search;\n }\n});\n","var isObject = require('../internals/is-object');\nvar classof = require('../internals/classof-raw');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\n\nvar MATCH = wellKnownSymbol('match');\n\n// `IsRegExp` abstract operation\n// https://tc39.github.io/ecma262/#sec-isregexp\nmodule.exports = function (it) {\n var isRegExp;\n return isObject(it) && ((isRegExp = it[MATCH]) !== undefined ? !!isRegExp : classof(it) == 'RegExp');\n};\n","var anObject = require('../internals/an-object');\nvar defineProperties = require('../internals/object-define-properties');\nvar enumBugKeys = require('../internals/enum-bug-keys');\nvar hiddenKeys = require('../internals/hidden-keys');\nvar html = require('../internals/html');\nvar documentCreateElement = require('../internals/document-create-element');\nvar sharedKey = require('../internals/shared-key');\n\nvar GT = '>';\nvar LT = '<';\nvar PROTOTYPE = 'prototype';\nvar SCRIPT = 'script';\nvar IE_PROTO = sharedKey('IE_PROTO');\n\nvar EmptyConstructor = function () { /* empty */ };\n\nvar scriptTag = function (content) {\n return LT + SCRIPT + GT + content + LT + '/' + SCRIPT + GT;\n};\n\n// Create object with fake `null` prototype: use ActiveX Object with cleared prototype\nvar NullProtoObjectViaActiveX = function (activeXDocument) {\n activeXDocument.write(scriptTag(''));\n activeXDocument.close();\n var temp = activeXDocument.parentWindow.Object;\n activeXDocument = null; // avoid memory leak\n return temp;\n};\n\n// Create object with fake `null` prototype: use iframe Object with cleared prototype\nvar NullProtoObjectViaIFrame = function () {\n // Thrash, waste and sodomy: IE GC bug\n var iframe = documentCreateElement('iframe');\n var JS = 'java' + SCRIPT + ':';\n var iframeDocument;\n iframe.style.display = 'none';\n html.appendChild(iframe);\n // https://github.com/zloirock/core-js/issues/475\n iframe.src = String(JS);\n iframeDocument = iframe.contentWindow.document;\n iframeDocument.open();\n iframeDocument.write(scriptTag('document.F=Object'));\n iframeDocument.close();\n return iframeDocument.F;\n};\n\n// Check for document.domain and active x support\n// No need to use active x approach when document.domain is not set\n// see https://github.com/es-shims/es5-shim/issues/150\n// variation of https://github.com/kitcambridge/es5-shim/commit/4f738ac066346\n// avoid IE GC bug\nvar activeXDocument;\nvar NullProtoObject = function () {\n try {\n /* global ActiveXObject */\n activeXDocument = document.domain && new ActiveXObject('htmlfile');\n } catch (error) { /* ignore */ }\n NullProtoObject = activeXDocument ? NullProtoObjectViaActiveX(activeXDocument) : NullProtoObjectViaIFrame();\n var length = enumBugKeys.length;\n while (length--) delete NullProtoObject[PROTOTYPE][enumBugKeys[length]];\n return NullProtoObject();\n};\n\nhiddenKeys[IE_PROTO] = true;\n\n// `Object.create` method\n// https://tc39.github.io/ecma262/#sec-object.create\nmodule.exports = Object.create || function create(O, Properties) {\n var result;\n if (O !== null) {\n EmptyConstructor[PROTOTYPE] = anObject(O);\n result = new EmptyConstructor();\n EmptyConstructor[PROTOTYPE] = null;\n // add \"__proto__\" for Object.getPrototypeOf polyfill\n result[IE_PROTO] = O;\n } else result = NullProtoObject();\n return Properties === undefined ? result : defineProperties(result, Properties);\n};\n","'use strict';\nvar getPrototypeOf = require('../internals/object-get-prototype-of');\nvar createNonEnumerableProperty = require('../internals/create-non-enumerable-property');\nvar has = require('../internals/has');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\nvar IS_PURE = require('../internals/is-pure');\n\nvar ITERATOR = wellKnownSymbol('iterator');\nvar BUGGY_SAFARI_ITERATORS = false;\n\nvar returnThis = function () { return this; };\n\n// `%IteratorPrototype%` object\n// https://tc39.github.io/ecma262/#sec-%iteratorprototype%-object\nvar IteratorPrototype, PrototypeOfArrayIteratorPrototype, arrayIterator;\n\nif ([].keys) {\n arrayIterator = [].keys();\n // Safari 8 has buggy iterators w/o `next`\n if (!('next' in arrayIterator)) BUGGY_SAFARI_ITERATORS = true;\n else {\n PrototypeOfArrayIteratorPrototype = getPrototypeOf(getPrototypeOf(arrayIterator));\n if (PrototypeOfArrayIteratorPrototype !== Object.prototype) IteratorPrototype = PrototypeOfArrayIteratorPrototype;\n }\n}\n\nif (IteratorPrototype == undefined) IteratorPrototype = {};\n\n// 25.1.2.1.1 %IteratorPrototype%[@@iterator]()\nif (!IS_PURE && !has(IteratorPrototype, ITERATOR)) {\n createNonEnumerableProperty(IteratorPrototype, ITERATOR, returnThis);\n}\n\nmodule.exports = {\n IteratorPrototype: IteratorPrototype,\n BUGGY_SAFARI_ITERATORS: BUGGY_SAFARI_ITERATORS\n};\n","var has = require('../internals/has');\nvar toObject = require('../internals/to-object');\nvar sharedKey = require('../internals/shared-key');\nvar CORRECT_PROTOTYPE_GETTER = require('../internals/correct-prototype-getter');\n\nvar IE_PROTO = sharedKey('IE_PROTO');\nvar ObjectPrototype = Object.prototype;\n\n// `Object.getPrototypeOf` method\n// https://tc39.github.io/ecma262/#sec-object.getprototypeof\nmodule.exports = CORRECT_PROTOTYPE_GETTER ? Object.getPrototypeOf : function (O) {\n O = toObject(O);\n if (has(O, IE_PROTO)) return O[IE_PROTO];\n if (typeof O.constructor == 'function' && O instanceof O.constructor) {\n return O.constructor.prototype;\n } return O instanceof Object ? ObjectPrototype : null;\n};\n","var defineProperty = require('../internals/object-define-property').f;\nvar has = require('../internals/has');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\n\nvar TO_STRING_TAG = wellKnownSymbol('toStringTag');\n\nmodule.exports = function (it, TAG, STATIC) {\n if (it && !has(it = STATIC ? it : it.prototype, TO_STRING_TAG)) {\n defineProperty(it, TO_STRING_TAG, { configurable: true, value: TAG });\n }\n};\n","var g;\n\n// This works in non-strict mode\ng = (function() {\n\treturn this;\n})();\n\ntry {\n\t// This works if eval is allowed (see CSP)\n\tg = g || new Function(\"return this\")();\n} catch (e) {\n\t// This works if the window reference is available\n\tif (typeof window === \"object\") g = window;\n}\n\n// g can still be undefined, but nothing to do about it...\n// We return undefined, instead of nothing here, so it's\n// easier to handle this case. if(!global) { ...}\n\nmodule.exports = g;\n","var global = require('../internals/global');\nvar inspectSource = require('../internals/inspect-source');\n\nvar WeakMap = global.WeakMap;\n\nmodule.exports = typeof WeakMap === 'function' && /native code/.test(inspectSource(WeakMap));\n","var has = require('../internals/has');\nvar ownKeys = require('../internals/own-keys');\nvar getOwnPropertyDescriptorModule = require('../internals/object-get-own-property-descriptor');\nvar definePropertyModule = require('../internals/object-define-property');\n\nmodule.exports = function (target, source) {\n var keys = ownKeys(source);\n var defineProperty = definePropertyModule.f;\n var getOwnPropertyDescriptor = getOwnPropertyDescriptorModule.f;\n for (var i = 0; i < keys.length; i++) {\n var key = keys[i];\n if (!has(target, key)) defineProperty(target, key, getOwnPropertyDescriptor(source, key));\n }\n};\n","var getBuiltIn = require('../internals/get-built-in');\nvar getOwnPropertyNamesModule = require('../internals/object-get-own-property-names');\nvar getOwnPropertySymbolsModule = require('../internals/object-get-own-property-symbols');\nvar anObject = require('../internals/an-object');\n\n// all object keys, includes non-enumerable and symbols\nmodule.exports = getBuiltIn('Reflect', 'ownKeys') || function ownKeys(it) {\n var keys = getOwnPropertyNamesModule.f(anObject(it));\n var getOwnPropertySymbols = getOwnPropertySymbolsModule.f;\n return getOwnPropertySymbols ? keys.concat(getOwnPropertySymbols(it)) : keys;\n};\n","var global = require('../internals/global');\n\nmodule.exports = global;\n","var internalObjectKeys = require('../internals/object-keys-internal');\nvar enumBugKeys = require('../internals/enum-bug-keys');\n\nvar hiddenKeys = enumBugKeys.concat('length', 'prototype');\n\n// `Object.getOwnPropertyNames` method\n// https://tc39.github.io/ecma262/#sec-object.getownpropertynames\nexports.f = Object.getOwnPropertyNames || function getOwnPropertyNames(O) {\n return internalObjectKeys(O, hiddenKeys);\n};\n","var toIndexedObject = require('../internals/to-indexed-object');\nvar toLength = require('../internals/to-length');\nvar toAbsoluteIndex = require('../internals/to-absolute-index');\n\n// `Array.prototype.{ indexOf, includes }` methods implementation\nvar createMethod = function (IS_INCLUDES) {\n return function ($this, el, fromIndex) {\n var O = toIndexedObject($this);\n var length = toLength(O.length);\n var index = toAbsoluteIndex(fromIndex, length);\n var value;\n // Array#includes uses SameValueZero equality algorithm\n // eslint-disable-next-line no-self-compare\n if (IS_INCLUDES && el != el) while (length > index) {\n value = O[index++];\n // eslint-disable-next-line no-self-compare\n if (value != value) return true;\n // Array#indexOf ignores holes, Array#includes - not\n } else for (;length > index; index++) {\n if ((IS_INCLUDES || index in O) && O[index] === el) return IS_INCLUDES || index || 0;\n } return !IS_INCLUDES && -1;\n };\n};\n\nmodule.exports = {\n // `Array.prototype.includes` method\n // https://tc39.github.io/ecma262/#sec-array.prototype.includes\n includes: createMethod(true),\n // `Array.prototype.indexOf` method\n // https://tc39.github.io/ecma262/#sec-array.prototype.indexof\n indexOf: createMethod(false)\n};\n","var toInteger = require('../internals/to-integer');\n\nvar max = Math.max;\nvar min = Math.min;\n\n// Helper for a popular repeating case of the spec:\n// Let integer be ? ToInteger(index).\n// If integer < 0, let result be max((length + integer), 0); else let result be min(integer, length).\nmodule.exports = function (index, length) {\n var integer = toInteger(index);\n return integer < 0 ? max(integer + length, 0) : min(integer, length);\n};\n","var fails = require('../internals/fails');\n\nvar replacement = /#|\\.prototype\\./;\n\nvar isForced = function (feature, detection) {\n var value = data[normalize(feature)];\n return value == POLYFILL ? true\n : value == NATIVE ? false\n : typeof detection == 'function' ? fails(detection)\n : !!detection;\n};\n\nvar normalize = isForced.normalize = function (string) {\n return String(string).replace(replacement, '.').toLowerCase();\n};\n\nvar data = isForced.data = {};\nvar NATIVE = isForced.NATIVE = 'N';\nvar POLYFILL = isForced.POLYFILL = 'P';\n\nmodule.exports = isForced;\n","'use strict';\nvar DESCRIPTORS = require('../internals/descriptors');\nvar fails = require('../internals/fails');\nvar objectKeys = require('../internals/object-keys');\nvar getOwnPropertySymbolsModule = require('../internals/object-get-own-property-symbols');\nvar propertyIsEnumerableModule = require('../internals/object-property-is-enumerable');\nvar toObject = require('../internals/to-object');\nvar IndexedObject = require('../internals/indexed-object');\n\nvar nativeAssign = Object.assign;\nvar defineProperty = Object.defineProperty;\n\n// `Object.assign` method\n// https://tc39.github.io/ecma262/#sec-object.assign\nmodule.exports = !nativeAssign || fails(function () {\n // should have correct order of operations (Edge bug)\n if (DESCRIPTORS && nativeAssign({ b: 1 }, nativeAssign(defineProperty({}, 'a', {\n enumerable: true,\n get: function () {\n defineProperty(this, 'b', {\n value: 3,\n enumerable: false\n });\n }\n }), { b: 2 })).b !== 1) return true;\n // should work with symbols and should have deterministic property order (V8 bug)\n var A = {};\n var B = {};\n // eslint-disable-next-line no-undef\n var symbol = Symbol();\n var alphabet = 'abcdefghijklmnopqrst';\n A[symbol] = 7;\n alphabet.split('').forEach(function (chr) { B[chr] = chr; });\n return nativeAssign({}, A)[symbol] != 7 || objectKeys(nativeAssign({}, B)).join('') != alphabet;\n}) ? function assign(target, source) { // eslint-disable-line no-unused-vars\n var T = toObject(target);\n var argumentsLength = arguments.length;\n var index = 1;\n var getOwnPropertySymbols = getOwnPropertySymbolsModule.f;\n var propertyIsEnumerable = propertyIsEnumerableModule.f;\n while (argumentsLength > index) {\n var S = IndexedObject(arguments[index++]);\n var keys = getOwnPropertySymbols ? objectKeys(S).concat(getOwnPropertySymbols(S)) : objectKeys(S);\n var length = keys.length;\n var j = 0;\n var key;\n while (length > j) {\n key = keys[j++];\n if (!DESCRIPTORS || propertyIsEnumerable.call(S, key)) T[key] = S[key];\n }\n } return T;\n} : nativeAssign;\n","'use strict';\nvar $ = require('../internals/export');\nvar exec = require('../internals/regexp-exec');\n\n$({ target: 'RegExp', proto: true, forced: /./.exec !== exec }, {\n exec: exec\n});\n","'use strict';\n\nvar fails = require('./fails');\n\n// babel-minify transpiles RegExp('a', 'y') -> /a/y and it causes SyntaxError,\n// so we use an intermediate function.\nfunction RE(s, f) {\n return RegExp(s, f);\n}\n\nexports.UNSUPPORTED_Y = fails(function () {\n // babel-minify transpiles RegExp('a', 'y') -> /a/y and it causes SyntaxError\n var re = RE('a', 'y');\n re.lastIndex = 2;\n return re.exec('abcd') != null;\n});\n\nexports.BROKEN_CARET = fails(function () {\n // https://bugzilla.mozilla.org/show_bug.cgi?id=773687\n var re = RE('^r', 'gy');\n re.lastIndex = 2;\n return re.exec('str') != null;\n});\n","var NATIVE_SYMBOL = require('../internals/native-symbol');\n\nmodule.exports = NATIVE_SYMBOL\n // eslint-disable-next-line no-undef\n && !Symbol.sham\n // eslint-disable-next-line no-undef\n && typeof Symbol.iterator == 'symbol';\n","var toInteger = require('../internals/to-integer');\nvar requireObjectCoercible = require('../internals/require-object-coercible');\n\n// `String.prototype.{ codePointAt, at }` methods implementation\nvar createMethod = function (CONVERT_TO_STRING) {\n return function ($this, pos) {\n var S = String(requireObjectCoercible($this));\n var position = toInteger(pos);\n var size = S.length;\n var first, second;\n if (position < 0 || position >= size) return CONVERT_TO_STRING ? '' : undefined;\n first = S.charCodeAt(position);\n return first < 0xD800 || first > 0xDBFF || position + 1 === size\n || (second = S.charCodeAt(position + 1)) < 0xDC00 || second > 0xDFFF\n ? CONVERT_TO_STRING ? S.charAt(position) : first\n : CONVERT_TO_STRING ? S.slice(position, position + 2) : (first - 0xD800 << 10) + (second - 0xDC00) + 0x10000;\n };\n};\n\nmodule.exports = {\n // `String.prototype.codePointAt` method\n // https://tc39.github.io/ecma262/#sec-string.prototype.codepointat\n codeAt: createMethod(false),\n // `String.prototype.at` method\n // https://github.com/mathiasbynens/String.prototype.at\n charAt: createMethod(true)\n};\n","var isRegExp = require('../internals/is-regexp');\n\nmodule.exports = function (it) {\n if (isRegExp(it)) {\n throw TypeError(\"The method doesn't accept regular expressions\");\n } return it;\n};\n","var wellKnownSymbol = require('../internals/well-known-symbol');\n\nvar MATCH = wellKnownSymbol('match');\n\nmodule.exports = function (METHOD_NAME) {\n var regexp = /./;\n try {\n '/./'[METHOD_NAME](regexp);\n } catch (e) {\n try {\n regexp[MATCH] = false;\n return '/./'[METHOD_NAME](regexp);\n } catch (f) { /* empty */ }\n } return false;\n};\n","// iterable DOM collections\n// flag - `iterable` interface - 'entries', 'keys', 'values', 'forEach' methods\nmodule.exports = {\n CSSRuleList: 0,\n CSSStyleDeclaration: 0,\n CSSValueList: 0,\n ClientRectList: 0,\n DOMRectList: 0,\n DOMStringList: 0,\n DOMTokenList: 1,\n DataTransferItemList: 0,\n FileList: 0,\n HTMLAllCollection: 0,\n HTMLCollection: 0,\n HTMLFormElement: 0,\n HTMLSelectElement: 0,\n MediaList: 0,\n MimeTypeArray: 0,\n NamedNodeMap: 0,\n NodeList: 1,\n PaintRequestList: 0,\n Plugin: 0,\n PluginArray: 0,\n SVGLengthList: 0,\n SVGNumberList: 0,\n SVGPathSegList: 0,\n SVGPointList: 0,\n SVGStringList: 0,\n SVGTransformList: 0,\n SourceBufferList: 0,\n StyleSheetList: 0,\n TextTrackCueList: 0,\n TextTrackList: 0,\n TouchList: 0\n};\n","'use strict';\nvar toIndexedObject = require('../internals/to-indexed-object');\nvar addToUnscopables = require('../internals/add-to-unscopables');\nvar Iterators = require('../internals/iterators');\nvar InternalStateModule = require('../internals/internal-state');\nvar defineIterator = require('../internals/define-iterator');\n\nvar ARRAY_ITERATOR = 'Array Iterator';\nvar setInternalState = InternalStateModule.set;\nvar getInternalState = InternalStateModule.getterFor(ARRAY_ITERATOR);\n\n// `Array.prototype.entries` method\n// https://tc39.github.io/ecma262/#sec-array.prototype.entries\n// `Array.prototype.keys` method\n// https://tc39.github.io/ecma262/#sec-array.prototype.keys\n// `Array.prototype.values` method\n// https://tc39.github.io/ecma262/#sec-array.prototype.values\n// `Array.prototype[@@iterator]` method\n// https://tc39.github.io/ecma262/#sec-array.prototype-@@iterator\n// `CreateArrayIterator` internal method\n// https://tc39.github.io/ecma262/#sec-createarrayiterator\nmodule.exports = defineIterator(Array, 'Array', function (iterated, kind) {\n setInternalState(this, {\n type: ARRAY_ITERATOR,\n target: toIndexedObject(iterated), // target\n index: 0, // next index\n kind: kind // kind\n });\n// `%ArrayIteratorPrototype%.next` method\n// https://tc39.github.io/ecma262/#sec-%arrayiteratorprototype%.next\n}, function () {\n var state = getInternalState(this);\n var target = state.target;\n var kind = state.kind;\n var index = state.index++;\n if (!target || index >= target.length) {\n state.target = undefined;\n return { value: undefined, done: true };\n }\n if (kind == 'keys') return { value: index, done: false };\n if (kind == 'values') return { value: target[index], done: false };\n return { value: [index, target[index]], done: false };\n}, 'values');\n\n// argumentsList[@@iterator] is %ArrayProto_values%\n// https://tc39.github.io/ecma262/#sec-createunmappedargumentsobject\n// https://tc39.github.io/ecma262/#sec-createmappedargumentsobject\nIterators.Arguments = Iterators.Array;\n\n// https://tc39.github.io/ecma262/#sec-array.prototype-@@unscopables\naddToUnscopables('keys');\naddToUnscopables('values');\naddToUnscopables('entries');\n","var wellKnownSymbol = require('../internals/well-known-symbol');\nvar create = require('../internals/object-create');\nvar definePropertyModule = require('../internals/object-define-property');\n\nvar UNSCOPABLES = wellKnownSymbol('unscopables');\nvar ArrayPrototype = Array.prototype;\n\n// Array.prototype[@@unscopables]\n// https://tc39.github.io/ecma262/#sec-array.prototype-@@unscopables\nif (ArrayPrototype[UNSCOPABLES] == undefined) {\n definePropertyModule.f(ArrayPrototype, UNSCOPABLES, {\n configurable: true,\n value: create(null)\n });\n}\n\n// add a key to Array.prototype[@@unscopables]\nmodule.exports = function (key) {\n ArrayPrototype[UNSCOPABLES][key] = true;\n};\n","var DESCRIPTORS = require('../internals/descriptors');\nvar definePropertyModule = require('../internals/object-define-property');\nvar anObject = require('../internals/an-object');\nvar objectKeys = require('../internals/object-keys');\n\n// `Object.defineProperties` method\n// https://tc39.github.io/ecma262/#sec-object.defineproperties\nmodule.exports = DESCRIPTORS ? Object.defineProperties : function defineProperties(O, Properties) {\n anObject(O);\n var keys = objectKeys(Properties);\n var length = keys.length;\n var index = 0;\n var key;\n while (length > index) definePropertyModule.f(O, key = keys[index++], Properties[key]);\n return O;\n};\n","var getBuiltIn = require('../internals/get-built-in');\n\nmodule.exports = getBuiltIn('document', 'documentElement');\n","'use strict';\nvar $ = require('../internals/export');\nvar createIteratorConstructor = require('../internals/create-iterator-constructor');\nvar getPrototypeOf = require('../internals/object-get-prototype-of');\nvar setPrototypeOf = require('../internals/object-set-prototype-of');\nvar setToStringTag = require('../internals/set-to-string-tag');\nvar createNonEnumerableProperty = require('../internals/create-non-enumerable-property');\nvar redefine = require('../internals/redefine');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\nvar IS_PURE = require('../internals/is-pure');\nvar Iterators = require('../internals/iterators');\nvar IteratorsCore = require('../internals/iterators-core');\n\nvar IteratorPrototype = IteratorsCore.IteratorPrototype;\nvar BUGGY_SAFARI_ITERATORS = IteratorsCore.BUGGY_SAFARI_ITERATORS;\nvar ITERATOR = wellKnownSymbol('iterator');\nvar KEYS = 'keys';\nvar VALUES = 'values';\nvar ENTRIES = 'entries';\n\nvar returnThis = function () { return this; };\n\nmodule.exports = function (Iterable, NAME, IteratorConstructor, next, DEFAULT, IS_SET, FORCED) {\n createIteratorConstructor(IteratorConstructor, NAME, next);\n\n var getIterationMethod = function (KIND) {\n if (KIND === DEFAULT && defaultIterator) return defaultIterator;\n if (!BUGGY_SAFARI_ITERATORS && KIND in IterablePrototype) return IterablePrototype[KIND];\n switch (KIND) {\n case KEYS: return function keys() { return new IteratorConstructor(this, KIND); };\n case VALUES: return function values() { return new IteratorConstructor(this, KIND); };\n case ENTRIES: return function entries() { return new IteratorConstructor(this, KIND); };\n } return function () { return new IteratorConstructor(this); };\n };\n\n var TO_STRING_TAG = NAME + ' Iterator';\n var INCORRECT_VALUES_NAME = false;\n var IterablePrototype = Iterable.prototype;\n var nativeIterator = IterablePrototype[ITERATOR]\n || IterablePrototype['@@iterator']\n || DEFAULT && IterablePrototype[DEFAULT];\n var defaultIterator = !BUGGY_SAFARI_ITERATORS && nativeIterator || getIterationMethod(DEFAULT);\n var anyNativeIterator = NAME == 'Array' ? IterablePrototype.entries || nativeIterator : nativeIterator;\n var CurrentIteratorPrototype, methods, KEY;\n\n // fix native\n if (anyNativeIterator) {\n CurrentIteratorPrototype = getPrototypeOf(anyNativeIterator.call(new Iterable()));\n if (IteratorPrototype !== Object.prototype && CurrentIteratorPrototype.next) {\n if (!IS_PURE && getPrototypeOf(CurrentIteratorPrototype) !== IteratorPrototype) {\n if (setPrototypeOf) {\n setPrototypeOf(CurrentIteratorPrototype, IteratorPrototype);\n } else if (typeof CurrentIteratorPrototype[ITERATOR] != 'function') {\n createNonEnumerableProperty(CurrentIteratorPrototype, ITERATOR, returnThis);\n }\n }\n // Set @@toStringTag to native iterators\n setToStringTag(CurrentIteratorPrototype, TO_STRING_TAG, true, true);\n if (IS_PURE) Iterators[TO_STRING_TAG] = returnThis;\n }\n }\n\n // fix Array#{values, @@iterator}.name in V8 / FF\n if (DEFAULT == VALUES && nativeIterator && nativeIterator.name !== VALUES) {\n INCORRECT_VALUES_NAME = true;\n defaultIterator = function values() { return nativeIterator.call(this); };\n }\n\n // define iterator\n if ((!IS_PURE || FORCED) && IterablePrototype[ITERATOR] !== defaultIterator) {\n createNonEnumerableProperty(IterablePrototype, ITERATOR, defaultIterator);\n }\n Iterators[NAME] = defaultIterator;\n\n // export additional methods\n if (DEFAULT) {\n methods = {\n values: getIterationMethod(VALUES),\n keys: IS_SET ? defaultIterator : getIterationMethod(KEYS),\n entries: getIterationMethod(ENTRIES)\n };\n if (FORCED) for (KEY in methods) {\n if (BUGGY_SAFARI_ITERATORS || INCORRECT_VALUES_NAME || !(KEY in IterablePrototype)) {\n redefine(IterablePrototype, KEY, methods[KEY]);\n }\n } else $({ target: NAME, proto: true, forced: BUGGY_SAFARI_ITERATORS || INCORRECT_VALUES_NAME }, methods);\n }\n\n return methods;\n};\n","'use strict';\nvar IteratorPrototype = require('../internals/iterators-core').IteratorPrototype;\nvar create = require('../internals/object-create');\nvar createPropertyDescriptor = require('../internals/create-property-descriptor');\nvar setToStringTag = require('../internals/set-to-string-tag');\nvar Iterators = require('../internals/iterators');\n\nvar returnThis = function () { return this; };\n\nmodule.exports = function (IteratorConstructor, NAME, next) {\n var TO_STRING_TAG = NAME + ' Iterator';\n IteratorConstructor.prototype = create(IteratorPrototype, { next: createPropertyDescriptor(1, next) });\n setToStringTag(IteratorConstructor, TO_STRING_TAG, false, true);\n Iterators[TO_STRING_TAG] = returnThis;\n return IteratorConstructor;\n};\n","var fails = require('../internals/fails');\n\nmodule.exports = !fails(function () {\n function F() { /* empty */ }\n F.prototype.constructor = null;\n return Object.getPrototypeOf(new F()) !== F.prototype;\n});\n","var anObject = require('../internals/an-object');\nvar aPossiblePrototype = require('../internals/a-possible-prototype');\n\n// `Object.setPrototypeOf` method\n// https://tc39.github.io/ecma262/#sec-object.setprototypeof\n// Works with __proto__ only. Old v8 can't work with null proto objects.\n/* eslint-disable no-proto */\nmodule.exports = Object.setPrototypeOf || ('__proto__' in {} ? function () {\n var CORRECT_SETTER = false;\n var test = {};\n var setter;\n try {\n setter = Object.getOwnPropertyDescriptor(Object.prototype, '__proto__').set;\n setter.call(test, []);\n CORRECT_SETTER = test instanceof Array;\n } catch (error) { /* empty */ }\n return function setPrototypeOf(O, proto) {\n anObject(O);\n aPossiblePrototype(proto);\n if (CORRECT_SETTER) setter.call(O, proto);\n else O.__proto__ = proto;\n return O;\n };\n}() : undefined);\n","var isObject = require('../internals/is-object');\n\nmodule.exports = function (it) {\n if (!isObject(it) && it !== null) {\n throw TypeError(\"Can't set \" + String(it) + ' as a prototype');\n } return it;\n};\n","'use strict';\nvar fixRegExpWellKnownSymbolLogic = require('../internals/fix-regexp-well-known-symbol-logic');\nvar anObject = require('../internals/an-object');\nvar toObject = require('../internals/to-object');\nvar toLength = require('../internals/to-length');\nvar toInteger = require('../internals/to-integer');\nvar requireObjectCoercible = require('../internals/require-object-coercible');\nvar advanceStringIndex = require('../internals/advance-string-index');\nvar regExpExec = require('../internals/regexp-exec-abstract');\n\nvar max = Math.max;\nvar min = Math.min;\nvar floor = Math.floor;\nvar SUBSTITUTION_SYMBOLS = /\\$([$&'`]|\\d\\d?|<[^>]*>)/g;\nvar SUBSTITUTION_SYMBOLS_NO_NAMED = /\\$([$&'`]|\\d\\d?)/g;\n\nvar maybeToString = function (it) {\n return it === undefined ? it : String(it);\n};\n\n// @@replace logic\nfixRegExpWellKnownSymbolLogic('replace', 2, function (REPLACE, nativeReplace, maybeCallNative, reason) {\n var REGEXP_REPLACE_SUBSTITUTES_UNDEFINED_CAPTURE = reason.REGEXP_REPLACE_SUBSTITUTES_UNDEFINED_CAPTURE;\n var REPLACE_KEEPS_$0 = reason.REPLACE_KEEPS_$0;\n var UNSAFE_SUBSTITUTE = REGEXP_REPLACE_SUBSTITUTES_UNDEFINED_CAPTURE ? '$' : '$0';\n\n return [\n // `String.prototype.replace` method\n // https://tc39.github.io/ecma262/#sec-string.prototype.replace\n function replace(searchValue, replaceValue) {\n var O = requireObjectCoercible(this);\n var replacer = searchValue == undefined ? undefined : searchValue[REPLACE];\n return replacer !== undefined\n ? replacer.call(searchValue, O, replaceValue)\n : nativeReplace.call(String(O), searchValue, replaceValue);\n },\n // `RegExp.prototype[@@replace]` method\n // https://tc39.github.io/ecma262/#sec-regexp.prototype-@@replace\n function (regexp, replaceValue) {\n if (\n (!REGEXP_REPLACE_SUBSTITUTES_UNDEFINED_CAPTURE && REPLACE_KEEPS_$0) ||\n (typeof replaceValue === 'string' && replaceValue.indexOf(UNSAFE_SUBSTITUTE) === -1)\n ) {\n var res = maybeCallNative(nativeReplace, regexp, this, replaceValue);\n if (res.done) return res.value;\n }\n\n var rx = anObject(regexp);\n var S = String(this);\n\n var functionalReplace = typeof replaceValue === 'function';\n if (!functionalReplace) replaceValue = String(replaceValue);\n\n var global = rx.global;\n if (global) {\n var fullUnicode = rx.unicode;\n rx.lastIndex = 0;\n }\n var results = [];\n while (true) {\n var result = regExpExec(rx, S);\n if (result === null) break;\n\n results.push(result);\n if (!global) break;\n\n var matchStr = String(result[0]);\n if (matchStr === '') rx.lastIndex = advanceStringIndex(S, toLength(rx.lastIndex), fullUnicode);\n }\n\n var accumulatedResult = '';\n var nextSourcePosition = 0;\n for (var i = 0; i < results.length; i++) {\n result = results[i];\n\n var matched = String(result[0]);\n var position = max(min(toInteger(result.index), S.length), 0);\n var captures = [];\n // NOTE: This is equivalent to\n // captures = result.slice(1).map(maybeToString)\n // but for some reason `nativeSlice.call(result, 1, result.length)` (called in\n // the slice polyfill when slicing native arrays) \"doesn't work\" in safari 9 and\n // causes a crash (https://pastebin.com/N21QzeQA) when trying to debug it.\n for (var j = 1; j < result.length; j++) captures.push(maybeToString(result[j]));\n var namedCaptures = result.groups;\n if (functionalReplace) {\n var replacerArgs = [matched].concat(captures, position, S);\n if (namedCaptures !== undefined) replacerArgs.push(namedCaptures);\n var replacement = String(replaceValue.apply(undefined, replacerArgs));\n } else {\n replacement = getSubstitution(matched, S, position, captures, namedCaptures, replaceValue);\n }\n if (position >= nextSourcePosition) {\n accumulatedResult += S.slice(nextSourcePosition, position) + replacement;\n nextSourcePosition = position + matched.length;\n }\n }\n return accumulatedResult + S.slice(nextSourcePosition);\n }\n ];\n\n // https://tc39.github.io/ecma262/#sec-getsubstitution\n function getSubstitution(matched, str, position, captures, namedCaptures, replacement) {\n var tailPos = position + matched.length;\n var m = captures.length;\n var symbols = SUBSTITUTION_SYMBOLS_NO_NAMED;\n if (namedCaptures !== undefined) {\n namedCaptures = toObject(namedCaptures);\n symbols = SUBSTITUTION_SYMBOLS;\n }\n return nativeReplace.call(replacement, symbols, function (match, ch) {\n var capture;\n switch (ch.charAt(0)) {\n case '$': return '$';\n case '&': return matched;\n case '`': return str.slice(0, position);\n case \"'\": return str.slice(tailPos);\n case '<':\n capture = namedCaptures[ch.slice(1, -1)];\n break;\n default: // \\d\\d?\n var n = +ch;\n if (n === 0) return match;\n if (n > m) {\n var f = floor(n / 10);\n if (f === 0) return match;\n if (f <= m) return captures[f - 1] === undefined ? ch.charAt(1) : captures[f - 1] + ch.charAt(1);\n return match;\n }\n capture = captures[n - 1];\n }\n return capture === undefined ? '' : capture;\n });\n }\n});\n","var anObject = require('../internals/an-object');\nvar aFunction = require('../internals/a-function');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\n\nvar SPECIES = wellKnownSymbol('species');\n\n// `SpeciesConstructor` abstract operation\n// https://tc39.github.io/ecma262/#sec-speciesconstructor\nmodule.exports = function (O, defaultConstructor) {\n var C = anObject(O).constructor;\n var S;\n return C === undefined || (S = anObject(C)[SPECIES]) == undefined ? defaultConstructor : aFunction(S);\n};\n","module.exports = function (it) {\n if (typeof it != 'function') {\n throw TypeError(String(it) + ' is not a function');\n } return it;\n};\n","'use strict';\nvar $ = require('../internals/export');\nvar toInteger = require('../internals/to-integer');\nvar thisNumberValue = require('../internals/this-number-value');\nvar repeat = require('../internals/string-repeat');\nvar fails = require('../internals/fails');\n\nvar nativeToFixed = 1.0.toFixed;\nvar floor = Math.floor;\n\nvar pow = function (x, n, acc) {\n return n === 0 ? acc : n % 2 === 1 ? pow(x, n - 1, acc * x) : pow(x * x, n / 2, acc);\n};\n\nvar log = function (x) {\n var n = 0;\n var x2 = x;\n while (x2 >= 4096) {\n n += 12;\n x2 /= 4096;\n }\n while (x2 >= 2) {\n n += 1;\n x2 /= 2;\n } return n;\n};\n\nvar FORCED = nativeToFixed && (\n 0.00008.toFixed(3) !== '0.000' ||\n 0.9.toFixed(0) !== '1' ||\n 1.255.toFixed(2) !== '1.25' ||\n 1000000000000000128.0.toFixed(0) !== '1000000000000000128'\n) || !fails(function () {\n // V8 ~ Android 4.3-\n nativeToFixed.call({});\n});\n\n// `Number.prototype.toFixed` method\n// https://tc39.github.io/ecma262/#sec-number.prototype.tofixed\n$({ target: 'Number', proto: true, forced: FORCED }, {\n // eslint-disable-next-line max-statements\n toFixed: function toFixed(fractionDigits) {\n var number = thisNumberValue(this);\n var fractDigits = toInteger(fractionDigits);\n var data = [0, 0, 0, 0, 0, 0];\n var sign = '';\n var result = '0';\n var e, z, j, k;\n\n var multiply = function (n, c) {\n var index = -1;\n var c2 = c;\n while (++index < 6) {\n c2 += n * data[index];\n data[index] = c2 % 1e7;\n c2 = floor(c2 / 1e7);\n }\n };\n\n var divide = function (n) {\n var index = 6;\n var c = 0;\n while (--index >= 0) {\n c += data[index];\n data[index] = floor(c / n);\n c = (c % n) * 1e7;\n }\n };\n\n var dataToString = function () {\n var index = 6;\n var s = '';\n while (--index >= 0) {\n if (s !== '' || index === 0 || data[index] !== 0) {\n var t = String(data[index]);\n s = s === '' ? t : s + repeat.call('0', 7 - t.length) + t;\n }\n } return s;\n };\n\n if (fractDigits < 0 || fractDigits > 20) throw RangeError('Incorrect fraction digits');\n // eslint-disable-next-line no-self-compare\n if (number != number) return 'NaN';\n if (number <= -1e21 || number >= 1e21) return String(number);\n if (number < 0) {\n sign = '-';\n number = -number;\n }\n if (number > 1e-21) {\n e = log(number * pow(2, 69, 1)) - 69;\n z = e < 0 ? number * pow(2, -e, 1) : number / pow(2, e, 1);\n z *= 0x10000000000000;\n e = 52 - e;\n if (e > 0) {\n multiply(0, z);\n j = fractDigits;\n while (j >= 7) {\n multiply(1e7, 0);\n j -= 7;\n }\n multiply(pow(10, j, 1), 0);\n j = e - 1;\n while (j >= 23) {\n divide(1 << 23);\n j -= 23;\n }\n divide(1 << j);\n multiply(1, 1);\n divide(2);\n result = dataToString();\n } else {\n multiply(0, z);\n multiply(1 << -e, 0);\n result = dataToString() + repeat.call('0', fractDigits);\n }\n }\n if (fractDigits > 0) {\n k = result.length;\n result = sign + (k <= fractDigits\n ? '0.' + repeat.call('0', fractDigits - k) + result\n : result.slice(0, k - fractDigits) + '.' + result.slice(k - fractDigits));\n } else {\n result = sign + result;\n } return result;\n }\n});\n","var classof = require('../internals/classof-raw');\n\n// `thisNumberValue` abstract operation\n// https://tc39.github.io/ecma262/#sec-thisnumbervalue\nmodule.exports = function (value) {\n if (typeof value != 'number' && classof(value) != 'Number') {\n throw TypeError('Incorrect invocation');\n }\n return +value;\n};\n","'use strict';\nvar toInteger = require('../internals/to-integer');\nvar requireObjectCoercible = require('../internals/require-object-coercible');\n\n// `String.prototype.repeat` method implementation\n// https://tc39.github.io/ecma262/#sec-string.prototype.repeat\nmodule.exports = ''.repeat || function repeat(count) {\n var str = String(requireObjectCoercible(this));\n var result = '';\n var n = toInteger(count);\n if (n < 0 || n == Infinity) throw RangeError('Wrong number of repetitions');\n for (;n > 0; (n >>>= 1) && (str += str)) if (n & 1) result += str;\n return result;\n};\n","/* eslint-disable prefer-rest-params */\nfunction eventListener(method, elements, events, fn, options = {}) {\n\n // Normalize array\n if (elements instanceof HTMLCollection || elements instanceof NodeList) {\n elements = Array.from(elements);\n } else if (!Array.isArray(elements)) {\n elements = [elements];\n }\n\n if (!Array.isArray(events)) {\n events = [events];\n }\n\n for (const el of elements) {\n for (const ev of events) {\n el[method](ev, fn, {capture: false, ...options});\n }\n }\n\n return Array.prototype.slice.call(arguments, 1);\n}\n\n/**\n * Add event(s) to element(s).\n * @param elements DOM-Elements\n * @param events Event names\n * @param fn Callback\n * @param options Optional options\n * @return Array passed arguments\n */\nexport const on = eventListener.bind(null, 'addEventListener');\n\n/**\n * Remove event(s) from element(s).\n * @param elements DOM-Elements\n * @param events Event names\n * @param fn Callback\n * @param options Optional options\n * @return Array passed arguments\n */\nexport const off = eventListener.bind(null, 'removeEventListener');\n\n/**\n * Creates an DOM-Element out of a string (Single element).\n * @param html HTML representing a single element\n * @returns {Element | null} The element.\n */\nexport function createElementFromString(html) {\n const div = document.createElement('div');\n div.innerHTML = html.trim();\n return div.firstElementChild;\n}\n\n/**\n * Removes an attribute from a HTMLElement and returns the value.\n * @param el\n * @param name\n * @return {string}\n */\nexport function removeAttribute(el, name) {\n const value = el.getAttribute(name);\n el.removeAttribute(name);\n return value;\n}\n\n/**\n * Creates a new html element, every element which has\n * a ':ref' attribute will be saved in a object (which will be returned)\n * where the value of ':ref' is the object-key and the value the HTMLElement.\n *\n * It's possible to create a hierarchy if you add a ':obj' attribute. Every\n * sibling will be added to the object which will get the name from the 'data-con' attribute.\n *\n * If you want to create an Array out of multiple elements, you can use the ':arr' attribute,\n * the value defines the key and all elements, which has the same parent and the same 'data-arr' attribute,\n * would be added to it.\n *\n * @param str - The HTML String.\n */\nexport function createFromTemplate(str) {\n\n // Recursive function to resolve template\n function resolve(element, base = {}) {\n\n // Check key and container attribute\n const con = removeAttribute(element, ':obj');\n const key = removeAttribute(element, ':ref');\n const subtree = con ? (base[con] = {}) : base;\n\n // Check and save element\n key && (base[key] = element);\n for (const child of Array.from(element.children)) {\n const arr = removeAttribute(child, ':arr');\n const sub = resolve(child, arr ? {} : subtree);\n\n if (arr) {\n\n // Check if there is already an array and add element\n (subtree[arr] || (subtree[arr] = []))\n .push(Object.keys(sub).length ? sub : child);\n }\n }\n\n return base;\n }\n\n return resolve(createElementFromString(str));\n}\n\n/**\n * Polyfill for safari & firefox for the eventPath event property.\n * @param evt The event object.\n * @return [String] event path.\n */\nexport function eventPath(evt) {\n let path = evt.path || (evt.composedPath && evt.composedPath());\n if (path) {\n return path;\n }\n\n let el = evt.target.parentElement;\n path = [evt.target, el];\n while (el = el.parentElement) {\n path.push(el);\n }\n\n path.push(document, window);\n return path;\n}\n\n/**\n * Resolves a HTMLElement by query.\n * @param val\n * @returns {null|Document|Element}\n */\nexport function resolveElement(val) {\n if (val instanceof Element) {\n return val;\n } else if (typeof val === 'string') {\n return val.split(/>>/g).reduce((pv, cv, ci, a) => {\n pv = pv.querySelector(cv);\n return ci < a.length - 1 ? pv.shadowRoot : pv;\n }, document);\n }\n\n return null;\n}\n\n/**\n * Creates the ability to change numbers in an input field with the scroll-wheel.\n * @param el\n * @param mapper\n */\nexport function adjustableInputNumbers(el, mapper = v => v) {\n\n function handleScroll(e) {\n const inc = ([0.001, 0.01, 0.1])[Number(e.shiftKey || e.ctrlKey * 2)] * (e.deltaY < 0 ? 1 : -1);\n\n let index = 0;\n let off = el.selectionStart;\n el.value = el.value.replace(/[\\d.]+/g, (v, i) => {\n\n // Check if number is in cursor range and increase it\n if (i <= off && i + v.length >= off) {\n off = i;\n return mapper(Number(v), inc, index);\n }\n\n index++;\n return v;\n });\n\n el.focus();\n el.setSelectionRange(off, off);\n\n // Prevent default and trigger input event\n e.preventDefault();\n el.dispatchEvent(new Event('input'));\n }\n\n // Bind events\n on(el, 'focus', () => on(window, 'wheel', handleScroll, {passive: false}));\n on(el, 'blur', () => off(window, 'wheel', handleScroll));\n}\n","// Shorthands\nconst {min, max, floor, round} = Math;\n\n/**\n * Tries to convert a color name to rgb/a hex representation\n * @param name\n * @returns {string | CanvasGradient | CanvasPattern}\n */\nfunction standardizeColor(name) {\n\n // Since invalid color's will be parsed as black, filter them out\n if (name.toLowerCase() === 'black') {\n return '#000';\n }\n\n const ctx = document.createElement('canvas').getContext('2d');\n ctx.fillStyle = name;\n return ctx.fillStyle === '#000' ? null : ctx.fillStyle;\n}\n\n/**\n * Convert HSV spectrum to RGB.\n * @param h Hue\n * @param s Saturation\n * @param v Value\n * @returns {number[]} Array with rgb values.\n */\nexport function hsvToRgb(h, s, v) {\n h = (h / 360) * 6;\n s /= 100;\n v /= 100;\n\n const i = floor(h);\n\n const f = h - i;\n const p = v * (1 - s);\n const q = v * (1 - f * s);\n const t = v * (1 - (1 - f) * s);\n\n const mod = i % 6;\n const r = [v, q, p, p, t, v][mod];\n const g = [t, v, v, q, p, p][mod];\n const b = [p, p, t, v, v, q][mod];\n\n return [\n r * 255,\n g * 255,\n b * 255\n ];\n}\n\n/**\n * Convert HSV spectrum to Hex.\n * @param h Hue\n * @param s Saturation\n * @param v Value\n * @returns {string[]} Hex values\n */\nexport function hsvToHex(h, s, v) {\n return hsvToRgb(h, s, v).map(v =>\n round(v).toString(16).padStart(2, '0')\n );\n}\n\n/**\n * Convert HSV spectrum to CMYK.\n * @param h Hue\n * @param s Saturation\n * @param v Value\n * @returns {number[]} CMYK values\n */\nexport function hsvToCmyk(h, s, v) {\n const rgb = hsvToRgb(h, s, v);\n const r = rgb[0] / 255;\n const g = rgb[1] / 255;\n const b = rgb[2] / 255;\n\n const k = min(1 - r, 1 - g, 1 - b);\n const c = k === 1 ? 0 : (1 - r - k) / (1 - k);\n const m = k === 1 ? 0 : (1 - g - k) / (1 - k);\n const y = k === 1 ? 0 : (1 - b - k) / (1 - k);\n\n return [\n c * 100,\n m * 100,\n y * 100,\n k * 100\n ];\n}\n\n/**\n * Convert HSV spectrum to HSL.\n * @param h Hue\n * @param s Saturation\n * @param v Value\n * @returns {number[]} HSL values\n */\nexport function hsvToHsl(h, s, v) {\n s /= 100;\n v /= 100;\n\n const l = (2 - s) * v / 2;\n\n if (l !== 0) {\n if (l === 1) {\n s = 0;\n } else if (l < 0.5) {\n s = s * v / (l * 2);\n } else {\n s = s * v / (2 - l * 2);\n }\n }\n\n return [\n h,\n s * 100,\n l * 100\n ];\n}\n\n/**\n * Convert RGB to HSV.\n * @param r Red\n * @param g Green\n * @param b Blue\n * @return {number[]} HSV values.\n */\nfunction rgbToHsv(r, g, b) {\n r /= 255;\n g /= 255;\n b /= 255;\n\n const minVal = min(r, g, b);\n const maxVal = max(r, g, b);\n const delta = maxVal - minVal;\n\n let h, s;\n const v = maxVal;\n if (delta === 0) {\n h = s = 0;\n } else {\n s = delta / maxVal;\n const dr = (((maxVal - r) / 6) + (delta / 2)) / delta;\n const dg = (((maxVal - g) / 6) + (delta / 2)) / delta;\n const db = (((maxVal - b) / 6) + (delta / 2)) / delta;\n\n if (r === maxVal) {\n h = db - dg;\n } else if (g === maxVal) {\n h = (1 / 3) + dr - db;\n } else if (b === maxVal) {\n h = (2 / 3) + dg - dr;\n }\n\n if (h < 0) {\n h += 1;\n } else if (h > 1) {\n h -= 1;\n }\n }\n\n return [\n h * 360,\n s * 100,\n v * 100\n ];\n}\n\n/**\n * Convert CMYK to HSV.\n * @param c Cyan\n * @param m Magenta\n * @param y Yellow\n * @param k Key (Black)\n * @return {number[]} HSV values.\n */\nfunction cmykToHsv(c, m, y, k) {\n c /= 100;\n m /= 100;\n y /= 100;\n k /= 100;\n\n const r = (1 - min(1, c * (1 - k) + k)) * 255;\n const g = (1 - min(1, m * (1 - k) + k)) * 255;\n const b = (1 - min(1, y * (1 - k) + k)) * 255;\n\n return [...rgbToHsv(r, g, b)];\n}\n\n/**\n * Convert HSL to HSV.\n * @param h Hue\n * @param s Saturation\n * @param l Lightness\n * @return {number[]} HSV values.\n */\nfunction hslToHsv(h, s, l) {\n s /= 100;\n l /= 100;\n s *= l < 0.5 ? l : 1 - l;\n\n const ns = (2 * s / (l + s)) * 100;\n const v = (l + s) * 100;\n return [h, ns, v];\n}\n\n/**\n * Convert HEX to HSV.\n * @param hex Hexadecimal string of rgb colors, can have length 3 or 6.\n * @return {number[]} HSV values.\n */\nfunction hexToHsv(hex) {\n return rgbToHsv(...hex.match(/.{2}/g).map(v => parseInt(v, 16)));\n}\n\n/**\n * Try's to parse a string which represents a color to a HSV array.\n * Current supported types are cmyk, rgba, hsla and hexadecimal.\n * @param str\n * @return {*}\n */\nexport function parseToHSVA(str) {\n\n // Check if string is a color-name\n str = str.match(/^[a-zA-Z]+$/) ? standardizeColor(str) : str;\n\n // Regular expressions to match different types of color represention\n const regex = {\n cmyk: /^cmyk[\\D]+([\\d.]+)[\\D]+([\\d.]+)[\\D]+([\\d.]+)[\\D]+([\\d.]+)/i,\n rgba: /^((rgba)|rgb)[\\D]+([\\d.]+)[\\D]+([\\d.]+)[\\D]+([\\d.]+)[\\D]*?([\\d.]+|$)/i,\n hsla: /^((hsla)|hsl)[\\D]+([\\d.]+)[\\D]+([\\d.]+)[\\D]+([\\d.]+)[\\D]*?([\\d.]+|$)/i,\n hsva: /^((hsva)|hsv)[\\D]+([\\d.]+)[\\D]+([\\d.]+)[\\D]+([\\d.]+)[\\D]*?([\\d.]+|$)/i,\n hexa: /^#?(([\\dA-Fa-f]{3,4})|([\\dA-Fa-f]{6})|([\\dA-Fa-f]{8}))$/i\n };\n\n /**\n * Takes an Array of any type, convert strings which represents\n * a number to a number an anything else to undefined.\n * @param array\n * @return {*}\n */\n const numarize = array => array.map(v => /^(|\\d+)\\.\\d+|\\d+$/.test(v) ? Number(v) : undefined);\n\n let match;\n invalid: for (const type in regex) {\n\n // Check if current scheme passed\n if (!(match = regex[type].exec(str))) {\n continue;\n }\n\n // Match[2] does only contain a truly value if rgba, hsla, or hsla got matched\n const alphaValid = a => (!!match[2] === (typeof a === 'number'));\n\n // Try to convert\n switch (type) {\n case 'cmyk': {\n const [, c, m, y, k] = numarize(match);\n\n if (c > 100 || m > 100 || y > 100 || k > 100) {\n break invalid;\n }\n\n return {values: cmykToHsv(c, m, y, k), type};\n }\n case 'rgba': {\n const [, , , r, g, b, a] = numarize(match);\n\n if (r > 255 || g > 255 || b > 255 || a < 0 || a > 1 || !alphaValid(a)) {\n break invalid;\n }\n\n return {values: [...rgbToHsv(r, g, b), a], a, type};\n }\n case 'hexa': {\n let [, hex] = match;\n\n if (hex.length === 4 || hex.length === 3) {\n hex = hex.split('').map(v => v + v).join('');\n }\n\n const raw = hex.substring(0, 6);\n let a = hex.substring(6);\n\n // Convert 0 - 255 to 0 - 1 for opacity\n a = a ? (parseInt(a, 16) / 255) : undefined;\n\n return {values: [...hexToHsv(raw), a], a, type};\n }\n case 'hsla': {\n const [, , , h, s, l, a] = numarize(match);\n\n if (h > 360 || s > 100 || l > 100 || a < 0 || a > 1 || !alphaValid(a)) {\n break invalid;\n }\n\n return {values: [...hslToHsv(h, s, l), a], a, type};\n }\n case 'hsva': {\n const [, , , h, s, v, a] = numarize(match);\n\n if (h > 360 || s > 100 || v > 100 || a < 0 || a > 1 || !alphaValid(a)) {\n break invalid;\n }\n\n return {values: [h, s, v, a], a, type};\n }\n }\n }\n\n return {values: null, type: null};\n}\n","import {hsvToCmyk, hsvToHex, hsvToHsl, hsvToRgb} from './color';\n\n/**\n * Simple class which holds the properties\n * of the color represention model hsla (hue saturation lightness alpha)\n */\nexport function HSVaColor(h = 0, s = 0, v = 0, a = 1) {\n const mapper = (original, next) => (precision = -1) => {\n return next(~precision ? original.map(v => Number(v.toFixed(precision))) : original);\n };\n\n const that = {\n h, s, v, a,\n\n toHSVA() {\n const hsva = [that.h, that.s, that.v, that.a];\n hsva.toString = mapper(hsva, arr => `hsva(${arr[0]}, ${arr[1]}%, ${arr[2]}%, ${that.a})`);\n return hsva;\n },\n\n toHSLA() {\n const hsla = [...hsvToHsl(that.h, that.s, that.v), that.a];\n hsla.toString = mapper(hsla, arr => `hsla(${arr[0]}, ${arr[1]}%, ${arr[2]}%, ${that.a})`);\n return hsla;\n },\n\n toRGBA() {\n const rgba = [...hsvToRgb(that.h, that.s, that.v), that.a];\n rgba.toString = mapper(rgba, arr => `rgba(${arr[0]}, ${arr[1]}, ${arr[2]}, ${that.a})`);\n return rgba;\n },\n\n toCMYK() {\n const cmyk = hsvToCmyk(that.h, that.s, that.v);\n cmyk.toString = mapper(cmyk, arr => `cmyk(${arr[0]}%, ${arr[1]}%, ${arr[2]}%, ${arr[3]}%)`);\n return cmyk;\n },\n\n toHEXA() {\n const hex = hsvToHex(that.h, that.s, that.v);\n\n // Check if alpha channel make sense, convert it to 255 number space, convert\n // To hex and pad it with zeros if needet.\n const alpha = that.a >= 1 ? '' : Number((that.a * 255).toFixed(0))\n .toString(16)\n .toUpperCase().padStart(2, '0');\n\n alpha && hex.push(alpha);\n hex.toString = () => `#${hex.join('').toUpperCase()}`;\n return hex;\n },\n\n clone: () => HSVaColor(that.h, that.s, that.v, that.a)\n };\n\n return that;\n}\n","import * as _ from '../utils/utils';\n\nconst clamp = v => Math.max(Math.min(v, 1), 0);\nexport default function Moveable(opt) {\n\n const that = {\n\n // Assign default values\n options: Object.assign({\n lock: null,\n onchange: () => 0,\n onstop: () => 0\n }, opt),\n\n _keyboard(e) {\n const {options} = that;\n const {type, key} = e;\n\n // Check to see if the Movable is focused and then move it based on arrow key inputs\n // For improved accessibility\n if (document.activeElement === options.wrapper) {\n const {lock} = that.options;\n const up = key === 'ArrowUp';\n const right = key === 'ArrowRight';\n const down = key === 'ArrowDown';\n const left = key === 'ArrowLeft';\n\n if (type === 'keydown' && (up || right || down || left)) {\n let xm = 0;\n let ym = 0;\n\n if (lock === 'v') {\n xm = (up || right) ? 1 : -1;\n } else if (lock === 'h') {\n xm = (up || right) ? -1 : 1;\n } else {\n ym = up ? -1 : (down ? 1 : 0);\n xm = left ? -1 : (right ? 1 : 0);\n }\n\n that.update(\n clamp(that.cache.x + (0.01 * xm)),\n clamp(that.cache.y + (0.01 * ym))\n );\n e.preventDefault();\n } else if (key.startsWith('Arrow')) {\n that.options.onstop();\n e.preventDefault();\n }\n }\n },\n\n _tapstart(evt) {\n _.on(document, ['mouseup', 'touchend', 'touchcancel'], that._tapstop);\n _.on(document, ['mousemove', 'touchmove'], that._tapmove);\n\n // Prevent default touch event\n evt.preventDefault();\n\n // Trigger\n that._tapmove(evt);\n },\n\n _tapmove(evt) {\n const {options, cache} = that;\n const {lock, element, wrapper} = options;\n const b = wrapper.getBoundingClientRect();\n\n let x = 0, y = 0;\n if (evt) {\n const touch = evt && evt.touches && evt.touches[0];\n x = evt ? (touch || evt).clientX : 0;\n y = evt ? (touch || evt).clientY : 0;\n\n // Reset to bounds\n if (x < b.left) {\n x = b.left;\n } else if (x > b.left + b.width) {\n x = b.left + b.width;\n }\n if (y < b.top) {\n y = b.top;\n } else if (y > b.top + b.height) {\n y = b.top + b.height;\n }\n\n // Normalize\n x -= b.left;\n y -= b.top;\n } else if (cache) {\n x = cache.x * b.width;\n y = cache.y * b.height;\n }\n\n if (lock !== 'h') {\n element.style.left = `calc(${x / b.width * 100}% - ${element.offsetWidth / 2}px)`;\n }\n\n if (lock !== 'v') {\n element.style.top = `calc(${y / b.height * 100}% - ${element.offsetHeight / 2}px)`;\n }\n\n that.cache = {x: x / b.width, y: y / b.height};\n const cx = clamp(x / b.width);\n const cy = clamp(y / b.height);\n\n switch (lock) {\n case 'v':\n return options.onchange(cx);\n case 'h':\n return options.onchange(cy);\n default:\n return options.onchange(cx, cy);\n }\n },\n\n _tapstop() {\n that.options.onstop();\n _.off(document, ['mouseup', 'touchend', 'touchcancel'], that._tapstop);\n _.off(document, ['mousemove', 'touchmove'], that._tapmove);\n },\n\n trigger() {\n that._tapmove();\n },\n\n update(x = 0, y = 0) {\n const {left, top, width, height} = that.options.wrapper.getBoundingClientRect();\n\n if (that.options.lock === 'h') {\n y = x;\n }\n\n that._tapmove({\n clientX: left + width * x,\n clientY: top + height * y\n });\n },\n\n destroy() {\n const {options, _tapstart, _keyboard} = that;\n _.off(document, ['keydown', 'keyup'], _keyboard);\n _.off([options.wrapper, options.element], 'mousedown', _tapstart);\n _.off([options.wrapper, options.element], 'touchstart', _tapstart, {\n passive: false\n });\n }\n };\n\n // Initilize\n const {options, _tapstart, _keyboard} = that;\n _.on([options.wrapper, options.element], 'mousedown', _tapstart);\n _.on([options.wrapper, options.element], 'touchstart', _tapstart, {\n passive: false\n });\n\n _.on(document, ['keydown', 'keyup'], _keyboard);\n\n return that;\n}\n","import * as _ from '../utils/utils';\n\nexport default function Selectable(opt = {}) {\n opt = Object.assign({\n onchange: () => 0,\n className: '',\n elements: []\n }, opt);\n\n const onTap = _.on(opt.elements, 'click', evt => {\n opt.elements.forEach(e =>\n e.classList[evt.target === e ? 'add' : 'remove'](opt.className)\n );\n\n opt.onchange(evt);\n });\n\n return {\n destroy: () => _.off(...onTap)\n };\n}\n","/**\n * Micro positioning-engine\n * @param el\n * @param reference\n * @param pos\n * @param padding\n * @returns {{update(): void}}\n * @constructor\n */\nexport default function Nanopop({el, reference, padding = 8}) {\n\n // Positioning priorities for variants\n const vBehaviour = {\n start: 'sme',\n middle: 'mse',\n end: 'ems'\n };\n\n // Positioning priorities for general alignment\n const hBehaviour = {\n top: 'tbrl',\n right: 'rltb',\n bottom: 'btrl',\n left: 'lrbt'\n };\n\n const getInfo = ((cache = {}) => (pos, cached = cache[pos]) => {\n\n // Return cached value if possible\n if (cached) {\n return cached;\n }\n\n // Extract position and variant\n // Top-start -> top is \"position\" and \"start\" is the variant\n const [position, variant = 'middle'] = pos.split('-');\n\n // It's vertical if top or bottom is used as position\n const isVertical = (position === 'top' || position === 'bottom');\n\n // Cache value and return\n return cache[pos] = {\n position,\n variant,\n isVertical\n };\n })();\n\n return {\n\n /**\n * Re-aligns the element\n * @param pos Position string\n * @param useFallback If everything fails the element may be centered on the the entire screen ignoring the reference\n */\n update(pos, useFallback = false) {\n const {position, variant, isVertical} = getInfo(pos);\n const rb = reference.getBoundingClientRect();\n const eb = el.getBoundingClientRect();\n\n /**\n * Holds coordinates of top, left, bottom and right alignment\n */\n const positions = vertical => vertical ? {\n t: rb.top - eb.height - padding,\n b: rb.bottom + padding\n } : {\n r: rb.right + padding,\n l: rb.left - eb.width - padding\n };\n\n /**\n * Holds corresponding variants (start, middle, end)\n */\n const variants = vertical => vertical ? {\n s: rb.left + rb.width - eb.width,\n m: (-eb.width / 2) + (rb.left + rb.width / 2),\n e: rb.left\n } : {\n s: rb.bottom - eb.height,\n m: rb.bottom - rb.height / 2 - eb.height / 2,\n e: rb.bottom - rb.height\n };\n\n // Holds the last working positions\n const leastApplied = {};\n\n /**\n * Applies a position, example precedure with top-start: it'll\n * first try to satify the variant \"start\", if this fails it'll try\n * the remaining variants (in this case \"middle\" and \"end\")\n * @param positions Array of positions in the order they should be applied\n * @param positionVariants Variants, the first should be the one initially wanted\n * @param targetProperty The target property, defines if this is a horizontal or vertical aligment\n * @returns a value for targetProperty or null if none fits\n */\n const findFittingValue = (positions, positionVariants, targetProperty) => {\n const vertical = targetProperty === 'top';\n const elSize = vertical ? eb.height : eb.width;\n const winSize = window[vertical ? 'innerHeight' : 'innerWidth'];\n\n for (const posChar of positions) {\n const wantedValue = positionVariants[posChar];\n const wantedValueAsString = leastApplied[targetProperty] = `${wantedValue}px`;\n\n if (wantedValue > 0 && (wantedValue + elSize) < winSize) {\n return wantedValueAsString;\n }\n }\n\n return null;\n };\n\n\n for (const vertical of [isVertical, !isVertical]) {\n\n /**\n * Va and vb both define where the element is positioned (top, bottom, left, right)\n * and it's corresponding variant (start, middle, end). Since we're \"rotating\" the element\n * to ensure to (hopefully) find at least one fitting position the values need to be\n * defined during runtime.\n */\n const vaType = vertical ? 'top' : 'left';\n const vbType = vertical ? 'left' : 'top';\n\n // Actual values for top and bottom\n const vaValue = findFittingValue(hBehaviour[position], positions(vertical), vaType);\n const vbValue = findFittingValue(vBehaviour[variant], variants(vertical), vbType);\n\n // Both values work, apply them\n if (vaValue && vbValue) {\n el.style[vbType] = vbValue;\n el.style[vaType] = vaValue;\n return;\n }\n }\n\n // It failed to find a non-clipping position, if fallback is enable it'll use it - otherwise the last\n // Calculated values will be used.\n if (useFallback) {\n el.style.top = `${(window.innerHeight - eb.height) / 2}px`;\n el.style.left = `${(window.innerWidth - eb.width) / 2}px`;\n } else {\n el.style.left = leastApplied.left;\n el.style.top = leastApplied.top;\n }\n }\n };\n}\n","import * as _ from './utils/utils';\nimport {version} from '../../package';\nimport {parseToHSVA} from './utils/color';\nimport {HSVaColor} from './utils/hsvacolor';\nimport Moveable from './libs/moveable';\nimport Selectable from './libs/selectable';\nimport Nanopop from './libs/nanopop';\nimport buildPickr from './template';\n\nclass Pickr {\n\n // Will be used to prevent specific actions during initilization\n _initializingActive = true;\n\n // If the current color value should be recalculated\n _recalc = true;\n\n // Positioning engine and DOM-Tree\n _nanopop = null;\n _root = null;\n\n // Current and last color for comparison\n _color = HSVaColor();\n _lastColor = HSVaColor();\n _swatchColors = [];\n\n // Evenlistener name: [callbacks]\n _eventListener = {\n init: [],\n save: [],\n hide: [],\n show: [],\n clear: [],\n change: [],\n changestop: [],\n cancel: [],\n swatchselect: []\n };\n\n constructor(opt) {\n\n // Assign default values\n this.options = opt = Object.assign({\n appClass: null,\n theme: 'classic',\n useAsButton: false,\n padding: 8,\n disabled: false,\n comparison: true,\n closeOnScroll: false,\n outputPrecision: 0,\n lockOpacity: false,\n autoReposition: true,\n container: 'body',\n components: {\n interaction: {}\n },\n\n strings: {},\n swatches: null,\n inline: false,\n sliders: null,\n\n default: '#42445a',\n defaultRepresentation: null,\n position: 'bottom-middle',\n adjustableNumbers: true,\n showAlways: false,\n\n closeWithKey: 'Escape'\n }, opt);\n\n const {swatches, components, theme, sliders, lockOpacity, padding} = opt;\n\n if (['nano', 'monolith'].includes(theme) && !sliders) {\n opt.sliders = 'h';\n }\n\n // Check interaction section\n if (!components.interaction) {\n components.interaction = {};\n }\n\n // Overwrite palette if preview, opacity or hue are true\n const {preview, opacity, hue, palette} = components;\n components.opacity = (!lockOpacity && opacity);\n components.palette = palette || preview || opacity || hue;\n\n // Initialize picker\n this._preBuild();\n this._buildComponents();\n this._bindEvents();\n this._finalBuild();\n\n // Append pre-defined swatch colors\n if (swatches && swatches.length) {\n swatches.forEach(color => this.addSwatch(color));\n }\n\n // Initialize positioning engine\n const {button, app} = this._root;\n this._nanopop = Nanopop({\n reference: button,\n padding,\n el: app\n });\n\n // Initialize accessibility\n button.setAttribute('role', 'button');\n button.setAttribute('aria-label', 'toggle color picker dialog');\n\n // Initilization is finish, pickr is visible and ready for usage\n const that = this;\n requestAnimationFrame((function cb() {\n\n if (!app.offsetWidth && app.parentElement !== opt.container) {\n return requestAnimationFrame(cb);\n }\n\n // Apply default color\n that.setColor(opt.default);\n that._rePositioningPicker();\n\n // Initialize color representation\n if (opt.defaultRepresentation) {\n that._representation = opt.defaultRepresentation;\n that.setColorRepresentation(that._representation);\n }\n\n // Show pickr if locked\n if (opt.showAlways) {\n that.show();\n }\n\n // Initialization is done - pickr is usable, fire init event\n that._initializingActive = false;\n that._emit('init');\n }));\n }\n\n // Does only the absolutly basic thing to initialize the components\n _preBuild() {\n const opt = this.options;\n\n // Resolve elements\n for (const type of ['el', 'container']) {\n opt[type] = _.resolveElement(opt[type]);\n }\n\n // Create element and append it to body to\n // Prevent initialization errors\n this._root = buildPickr(opt);\n\n // Check if a custom button is used\n if (opt.useAsButton) {\n this._root.button = opt.el; // Replace button with customized button\n }\n\n opt.container.appendChild(this._root.root);\n }\n\n _finalBuild() {\n const opt = this.options;\n const root = this._root;\n\n // Remove from body\n opt.container.removeChild(root.root);\n\n if (opt.inline) {\n const parent = opt.el.parentElement;\n\n if (opt.el.nextSibling) {\n parent.insertBefore(root.app, opt.el.nextSibling);\n } else {\n parent.appendChild(root.app);\n }\n } else {\n opt.container.appendChild(root.app);\n }\n\n // Don't replace the the element if a custom button is used\n if (!opt.useAsButton) {\n\n // Replace element with actual color-picker\n opt.el.parentNode.replaceChild(root.root, opt.el);\n } else if (opt.inline) {\n opt.el.remove();\n }\n\n // Check if it should be immediatly disabled\n if (opt.disabled) {\n this.disable();\n }\n\n // Check if color comparison is disabled, if yes - remove transitions so everything keeps smoothly\n if (!opt.comparison) {\n root.button.style.transition = 'none';\n\n if (!opt.useAsButton) {\n root.preview.lastColor.style.transition = 'none';\n }\n }\n\n this.hide();\n }\n\n _buildComponents() {\n\n // Instance reference\n const inst = this;\n const cs = this.options.components;\n const sliders = (inst.options.sliders || 'v').repeat(2);\n const [so, sh] = sliders.match(/^[vh]+$/g) ? sliders : [];\n\n // Re-assign if null\n const getColor = () =>\n this._color || (this._color = this._lastColor.clone());\n\n const components = {\n\n palette: Moveable({\n element: inst._root.palette.picker,\n wrapper: inst._root.palette.palette,\n\n onstop: () => inst._emit('changestop', inst),\n onchange(x, y) {\n if (!cs.palette) {\n return;\n }\n\n const color = getColor();\n const {_root, options} = inst;\n const {lastColor, currentColor} = _root.preview;\n\n // Update the input field only if the user is currently not typing\n if (inst._recalc) {\n\n // Calculate saturation based on the position\n color.s = x * 100;\n\n // Calculate the value\n color.v = 100 - y * 100;\n\n // Prevent falling under zero\n color.v < 0 ? color.v = 0 : 0;\n inst._updateOutput();\n }\n\n // Set picker and gradient color\n const cssRGBaString = color.toRGBA().toString(0);\n this.element.style.background = cssRGBaString;\n this.wrapper.style.background = `\n linear-gradient(to top, rgba(0, 0, 0, ${color.a}), transparent),\n linear-gradient(to left, hsla(${color.h}, 100%, 50%, ${color.a}), rgba(255, 255, 255, ${color.a}))\n `;\n\n // Check if color is locked\n if (!options.comparison) {\n _root.button.style.color = cssRGBaString;\n\n // If the user changes the color, remove the cleared icon\n _root.button.classList.remove('clear');\n } else if (!options.useAsButton && !inst._lastColor) {\n\n // Apply color to both the last and current color since the current state is cleared\n lastColor.style.color = cssRGBaString;\n }\n\n // Check if there's a swatch which color matches the current one\n const hexa = color.toHEXA().toString();\n for (const {el, color} of inst._swatchColors) {\n el.classList[hexa === color.toHEXA().toString() ? 'add' : 'remove']('pcr-active');\n }\n\n // Change current color\n currentColor.style.color = cssRGBaString;\n }\n }),\n\n hue: Moveable({\n lock: sh === 'v' ? 'h' : 'v',\n element: inst._root.hue.picker,\n wrapper: inst._root.hue.slider,\n\n onstop: () => inst._emit('changestop', inst),\n onchange(v) {\n if (!cs.hue || !cs.palette) {\n return;\n }\n\n const color = getColor();\n\n // Calculate hue\n if (inst._recalc) {\n color.h = v * 360;\n }\n\n // Update color\n this.element.style.backgroundColor = `hsl(${color.h}, 100%, 50%)`;\n components.palette.trigger();\n }\n }),\n\n opacity: Moveable({\n lock: so === 'v' ? 'h' : 'v',\n element: inst._root.opacity.picker,\n wrapper: inst._root.opacity.slider,\n\n onstop: () => inst._emit('changestop', inst),\n onchange(v) {\n if (!cs.opacity || !cs.palette) {\n return;\n }\n\n const color = getColor();\n\n // Calculate opacity\n if (inst._recalc) {\n color.a = Math.round(v * 1e2) / 100;\n }\n\n // Update color\n this.element.style.background = `rgba(0, 0, 0, ${color.a})`;\n components.palette.trigger();\n }\n }),\n\n selectable: Selectable({\n elements: inst._root.interaction.options,\n className: 'active',\n\n onchange(e) {\n inst._representation = e.target.getAttribute('data-type').toUpperCase();\n inst._recalc && inst._updateOutput();\n }\n })\n };\n\n this._components = components;\n }\n\n _bindEvents() {\n const {_root, options} = this;\n\n const eventBindings = [\n\n // Clear color\n _.on(_root.interaction.clear, 'click', () => this._clearColor()),\n\n // Select last color on click\n _.on([\n _root.interaction.cancel,\n _root.preview.lastColor\n ], 'click', () => {\n this._emit('cancel', this);\n this.setHSVA(...(this._lastColor || this._color).toHSVA(), true);\n }),\n\n // Save color\n _.on(_root.interaction.save, 'click', () => {\n !this.applyColor() && !options.showAlways && this.hide();\n }),\n\n // User input\n _.on(_root.interaction.result, ['keyup', 'input'], e => {\n\n // Fire listener if initialization is finish and changed color was valid\n if (this.setColor(e.target.value, true) && !this._initializingActive) {\n this._emit('change', this._color);\n }\n\n e.stopImmediatePropagation();\n }),\n\n // Detect user input and disable auto-recalculation\n _.on(_root.interaction.result, ['focus', 'blur'], e => {\n this._recalc = e.type === 'blur';\n this._recalc && this._updateOutput();\n }),\n\n // Cancel input detection on color change\n _.on([\n _root.palette.palette,\n _root.palette.picker,\n _root.hue.slider,\n _root.hue.picker,\n _root.opacity.slider,\n _root.opacity.picker\n ], ['mousedown', 'touchstart'], () => this._recalc = true)\n ];\n\n // Provide hiding / showing abilities only if showAlways is false\n if (!options.showAlways) {\n const ck = options.closeWithKey;\n\n eventBindings.push(\n // Save and hide / show picker\n _.on(_root.button, 'click', () => this.isOpen() ? this.hide() : this.show()),\n\n // Close with escape key\n _.on(document, 'keyup', e => this.isOpen() && (e.key === ck || e.code === ck) && this.hide()),\n\n // Cancel selecting if the user taps behind the color picker\n _.on(document, ['touchstart', 'mousedown'], e => {\n if (this.isOpen() && !_.eventPath(e).some(el => el === _root.app || el === _root.button)) {\n this.hide();\n }\n }, {capture: true})\n );\n }\n\n // Make input adjustable if enabled\n if (options.adjustableNumbers) {\n const ranges = {\n rgba: [255, 255, 255, 1],\n hsva: [360, 100, 100, 1],\n hsla: [360, 100, 100, 1],\n cmyk: [100, 100, 100, 100]\n };\n\n _.adjustableInputNumbers(_root.interaction.result, (o, step, index) => {\n const range = ranges[this.getColorRepresentation().toLowerCase()];\n\n if (range) {\n const max = range[index];\n\n // Calculate next reasonable number\n const nv = o + (max >= 100 ? step * 1000 : step);\n\n // Apply range of zero up to max, fix floating-point issues\n return nv <= 0 ? 0 : Number((nv < max ? nv : max).toPrecision(3));\n }\n\n return o;\n });\n }\n\n if (options.autoReposition && !options.inline) {\n let timeout = null;\n const that = this;\n\n // Re-calc position on window resize, scroll and wheel\n eventBindings.push(\n _.on(window, ['scroll', 'resize'], () => {\n if (that.isOpen()) {\n\n if (options.closeOnScroll) {\n that.hide();\n }\n\n if (timeout === null) {\n timeout = setTimeout(() => timeout = null, 100);\n\n // Update position on every frame\n requestAnimationFrame(function rs() {\n that._rePositioningPicker();\n (timeout !== null) && requestAnimationFrame(rs);\n });\n } else {\n clearTimeout(timeout);\n timeout = setTimeout(() => timeout = null, 100);\n }\n }\n }, {capture: true})\n );\n }\n\n // Save bindings\n this._eventBindings = eventBindings;\n }\n\n _rePositioningPicker() {\n const {options} = this;\n\n // No repositioning needed if inline\n if (!options.inline) {\n this._nanopop.update(options.position, !this._recalc);\n }\n }\n\n _updateOutput() {\n const {_root, _color, options} = this;\n\n // Check if component is present\n if (_root.interaction.type()) {\n\n // Construct function name and call if present\n const method = `to${_root.interaction.type().getAttribute('data-type')}`;\n _root.interaction.result.value = typeof _color[method] === 'function' ?\n _color[method]().toString(options.outputPrecision) : '';\n }\n\n // Fire listener if initialization is finish\n if (!this._initializingActive && this._recalc) {\n this._emit('change', _color);\n }\n }\n\n _clearColor(silent = false) {\n const {_root, options} = this;\n\n // Change only the button color if it isn't customized\n if (!options.useAsButton) {\n _root.button.style.color = 'rgba(0, 0, 0, 0.15)';\n }\n\n _root.button.classList.add('clear');\n\n if (!options.showAlways) {\n this.hide();\n }\n\n this._lastColor = null;\n if (!this._initializingActive && !silent) {\n\n // Fire listener\n this._emit('save', null);\n this._emit('clear', this);\n }\n }\n\n _parseLocalColor(str) {\n const {values, type, a} = parseToHSVA(str);\n const {lockOpacity} = this.options;\n const alphaMakesAChange = a !== undefined && a !== 1;\n\n // If no opacity is applied, add undefined at the very end which gets\n // Set to 1 in setHSVA\n if (values && values.length === 3) {\n values[3] = undefined;\n }\n\n return {\n values: (!values || (lockOpacity && alphaMakesAChange)) ? null : values,\n type\n };\n }\n\n _emit(event, ...args) {\n this._eventListener[event].forEach(cb => cb(...args, this));\n }\n\n on(event, cb) {\n\n // Validate\n if (typeof cb === 'function' && typeof event === 'string' && event in this._eventListener) {\n this._eventListener[event].push(cb);\n }\n\n return this;\n }\n\n off(event, cb) {\n const callBacks = this._eventListener[event];\n\n if (callBacks) {\n const index = callBacks.indexOf(cb);\n\n if (~index) {\n callBacks.splice(index, 1);\n }\n }\n\n return this;\n }\n\n /**\n * Appends a color to the swatch palette\n * @param color\n * @returns {boolean}\n */\n addSwatch(color) {\n const {values} = this._parseLocalColor(color);\n\n if (values) {\n const {_swatchColors, _root} = this;\n const color = HSVaColor(...values);\n\n // Create new swatch HTMLElement\n const el = _.createElementFromString(\n `'}\n\n
\n
\n
\n \n
\n
\n\n
\n
\n
\n
\n\n
\n
\n
\n
\n\n
\n
\n
\n
\n
\n\n
\n\n
\n \n\n \n \n \n \n \n\n \n \n \n
\n
\n \n `);\n\n const int = root.interaction;\n\n // Select option which is not hidden\n int.options.find(o => !o.hidden && !o.classList.add('active'));\n\n // Create method to find currenlty active option\n int.type = () => int.options.find(e => e.classList.contains('active'));\n return root;\n}\n"],"sourceRoot":""} \ No newline at end of file diff --git a/dist/pickr.min.js.map b/dist/pickr.min.js.map index 78f6c7eb..679d7f7f 100644 --- a/dist/pickr.min.js.map +++ b/dist/pickr.min.js.map @@ -1 +1 @@ -{"version":3,"sources":["webpack:///webpack/universalModuleDefinition","webpack:///webpack/bootstrap","webpack:///./src/js/utils/utils.js","webpack:///./src/js/utils/color.js","webpack:///./src/js/utils/hsvacolor.js","webpack:///./src/js/libs/moveable.js","webpack:///./src/js/libs/selectable.js","webpack:///./src/js/libs/nanopop.js","webpack:///./src/js/pickr.js","webpack:///./src/js/template.js"],"names":["root","factory","exports","module","define","amd","window","installedModules","__webpack_require__","moduleId","i","l","modules","call","m","c","d","name","getter","o","Object","defineProperty","enumerable","get","r","Symbol","toStringTag","value","t","mode","__esModule","ns","create","key","bind","n","object","property","prototype","hasOwnProperty","p","s","eventListener","method","elements","events","fn","options","HTMLCollection","NodeList","Array","from","isArray","el","ev","capture","slice","arguments","on","off","createElementFromString","html","div","document","createElement","innerHTML","trim","firstElementChild","removeAttribute","getAttribute","createFromTemplate","str","resolve","element","base","con","subtree","child","children","arr","sub","push","keys","length","eventPath","evt","path","composedPath","target","parentElement","resolveElement","val","Element","split","reduce","pv","cv","ci","a","querySelector","shadowRoot","adjustableInputNumbers","mapper","v","handleScroll","e","inc","Number","shiftKey","ctrlKey","deltaY","index","selectionStart","replace","focus","setSelectionRange","preventDefault","dispatchEvent","Event","passive","min","max","floor","round","Math","hsvToRgb","h","f","q","mod","hsvToHsl","rgbToHsv","g","b","minVal","maxVal","delta","dr","dg","db","cmykToHsv","y","k","hslToHsv","hexToHsv","hex","match","map","parseInt","parseToHSVA","toLowerCase","ctx","getContext","fillStyle","standardizeColor","regex","cmyk","rgba","hsla","hsva","hexa","numarize","array","test","undefined","invalid","type","exec","alphaValid","values","join","raw","substring","HSVaColor","original","next","precision","toFixed","that","toHSVA","toString","toHSLA","toRGBA","toCMYK","rgb","hsvToCmyk","toHEXA","padStart","hsvToHex","alpha","toUpperCase","clone","clamp","Moveable","opt","assign","lock","onchange","onstop","_keyboard","activeElement","wrapper","up","right","down","left","xm","ym","update","cache","x","startsWith","_tapstart","_","_tapstop","_tapmove","getBoundingClientRect","touch","touches","clientX","clientY","width","top","height","style","offsetWidth","offsetHeight","cx","cy","trigger","destroy","Selectable","className","onTap","forEach","classList","Nanopop","reference","padding","vBehaviour","start","middle","end","hBehaviour","bottom","getInfo","pos","cached","position","variant","isVertical","useFallback","rb","eb","positions","vertical","variants","leastApplied","findFittingValue","positionVariants","targetProperty","elSize","winSize","posChar","wantedValue","wantedValueAsString","vaType","vbType","vaValue","vbValue","innerHeight","innerWidth","Pickr","constructor","init","save","hide","show","clear","change","changestop","cancel","swatchselect","this","appClass","theme","useAsButton","disabled","comparison","closeOnScroll","outputPrecision","lockOpacity","autoReposition","container","components","interaction","strings","swatches","inline","sliders","default","defaultRepresentation","adjustableNumbers","showAlways","closeWithKey","includes","preview","opacity","hue","palette","_preBuild","_buildComponents","_bindEvents","_finalBuild","color","addSwatch","button","app","_root","_nanopop","setAttribute","requestAnimationFrame","cb","setColor","_rePositioningPicker","_representation","setColorRepresentation","_initializingActive","_emit","lo","hidden","input","int","find","add","contains","buildPickr","appendChild","removeChild","parent","nextSibling","insertBefore","remove","parentNode","replaceChild","disable","transition","lastColor","inst","cs","repeat","so","sh","getColor","_color","_lastColor","picker","currentColor","_recalc","_updateOutput","cssRGBaString","background","_swatchColors","slider","backgroundColor","selectable","_components","eventBindings","_clearColor","setHSVA","applyColor","result","stopImmediatePropagation","ck","isOpen","code","some","ranges","step","range","getColorRepresentation","nv","toPrecision","timeout","setTimeout","rs","clearTimeout","_eventBindings","silent","_parseLocalColor","alphaMakesAChange","event","args","_eventListener","callBacks","indexOf","splice","removeSwatch","swatchColor","destroyAndRemove","recalc","string","utype","click","getSelectedColor","getRoot","enable","utils","libs","version"],"mappings":"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","file":"pickr.min.js","sourcesContent":["(function webpackUniversalModuleDefinition(root, factory) {\n\tif(typeof exports === 'object' && typeof module === 'object')\n\t\tmodule.exports = factory();\n\telse if(typeof define === 'function' && define.amd)\n\t\tdefine([], factory);\n\telse if(typeof exports === 'object')\n\t\texports[\"Pickr\"] = factory();\n\telse\n\t\troot[\"Pickr\"] = factory();\n})(window, function() {\nreturn "," \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, { enumerable: true, get: getter });\n \t\t}\n \t};\n\n \t// define __esModule on exports\n \t__webpack_require__.r = function(exports) {\n \t\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n \t\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n \t\t}\n \t\tObject.defineProperty(exports, '__esModule', { value: true });\n \t};\n\n \t// create a fake namespace object\n \t// mode & 1: value is a module id, require it\n \t// mode & 2: merge all properties of value into the ns\n \t// mode & 4: return value when already ns object\n \t// mode & 8|1: behave like require\n \t__webpack_require__.t = function(value, mode) {\n \t\tif(mode & 1) value = __webpack_require__(value);\n \t\tif(mode & 8) return value;\n \t\tif((mode & 4) && typeof value === 'object' && value && value.__esModule) return value;\n \t\tvar ns = Object.create(null);\n \t\t__webpack_require__.r(ns);\n \t\tObject.defineProperty(ns, 'default', { enumerable: true, value: value });\n \t\tif(mode & 2 && typeof value != 'string') for(var key in value) __webpack_require__.d(ns, key, function(key) { return value[key]; }.bind(null, key));\n \t\treturn ns;\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\n \t// Load entry module and return exports\n \treturn __webpack_require__(__webpack_require__.s = 1);\n","/* eslint-disable prefer-rest-params */\r\nfunction eventListener(method, elements, events, fn, options = {}) {\r\n\r\n // Normalize array\r\n if (elements instanceof HTMLCollection || elements instanceof NodeList) {\r\n elements = Array.from(elements);\r\n } else if (!Array.isArray(elements)) {\r\n elements = [elements];\r\n }\r\n\r\n if (!Array.isArray(events)) {\r\n events = [events];\r\n }\r\n\r\n for (const el of elements) {\r\n for (const ev of events) {\r\n el[method](ev, fn, {capture: false, ...options});\r\n }\r\n }\r\n\r\n return Array.prototype.slice.call(arguments, 1);\r\n}\r\n\r\n/**\r\n * Add event(s) to element(s).\r\n * @param elements DOM-Elements\r\n * @param events Event names\r\n * @param fn Callback\r\n * @param options Optional options\r\n * @return Array passed arguments\r\n */\r\nexport const on = eventListener.bind(null, 'addEventListener');\r\n\r\n/**\r\n * Remove event(s) from element(s).\r\n * @param elements DOM-Elements\r\n * @param events Event names\r\n * @param fn Callback\r\n * @param options Optional options\r\n * @return Array passed arguments\r\n */\r\nexport const off = eventListener.bind(null, 'removeEventListener');\r\n\r\n/**\r\n * Creates an DOM-Element out of a string (Single element).\r\n * @param html HTML representing a single element\r\n * @returns {Element | null} The element.\r\n */\r\nexport function createElementFromString(html) {\r\n const div = document.createElement('div');\r\n div.innerHTML = html.trim();\r\n return div.firstElementChild;\r\n}\r\n\r\n/**\r\n * Removes an attribute from a HTMLElement and returns the value.\r\n * @param el\r\n * @param name\r\n * @return {string}\r\n */\r\nexport function removeAttribute(el, name) {\r\n const value = el.getAttribute(name);\r\n el.removeAttribute(name);\r\n return value;\r\n}\r\n\r\n/**\r\n * Creates a new html element, every element which has\r\n * a ':ref' attribute will be saved in a object (which will be returned)\r\n * where the value of ':ref' is the object-key and the value the HTMLElement.\r\n *\r\n * It's possible to create a hierarchy if you add a ':obj' attribute. Every\r\n * sibling will be added to the object which will get the name from the 'data-con' attribute.\r\n *\r\n * If you want to create an Array out of multiple elements, you can use the ':arr' attribute,\r\n * the value defines the key and all elements, which has the same parent and the same 'data-arr' attribute,\r\n * would be added to it.\r\n *\r\n * @param str - The HTML String.\r\n */\r\nexport function createFromTemplate(str) {\r\n\r\n // Recursive function to resolve template\r\n function resolve(element, base = {}) {\r\n\r\n // Check key and container attribute\r\n const con = removeAttribute(element, ':obj');\r\n const key = removeAttribute(element, ':ref');\r\n const subtree = con ? (base[con] = {}) : base;\r\n\r\n // Check and save element\r\n key && (base[key] = element);\r\n for (const child of Array.from(element.children)) {\r\n const arr = removeAttribute(child, ':arr');\r\n const sub = resolve(child, arr ? {} : subtree);\r\n\r\n if (arr) {\r\n\r\n // Check if there is already an array and add element\r\n (subtree[arr] || (subtree[arr] = []))\r\n .push(Object.keys(sub).length ? sub : child);\r\n }\r\n }\r\n\r\n return base;\r\n }\r\n\r\n return resolve(createElementFromString(str));\r\n}\r\n\r\n/**\r\n * Polyfill for safari & firefox for the eventPath event property.\r\n * @param evt The event object.\r\n * @return [String] event path.\r\n */\r\nexport function eventPath(evt) {\r\n let path = evt.path || (evt.composedPath && evt.composedPath());\r\n if (path) {\r\n return path;\r\n }\r\n\r\n let el = evt.target.parentElement;\r\n path = [evt.target, el];\r\n while (el = el.parentElement) {\r\n path.push(el);\r\n }\r\n\r\n path.push(document, window);\r\n return path;\r\n}\r\n\r\n/**\r\n * Resolves a HTMLElement by query.\r\n * @param val\r\n * @returns {null|Document|Element}\r\n */\r\nexport function resolveElement(val) {\r\n if (val instanceof Element) {\r\n return val;\r\n } else if (typeof val === 'string') {\r\n return val.split(/>>/g).reduce((pv, cv, ci, a) => {\r\n pv = pv.querySelector(cv);\r\n return ci < a.length - 1 ? pv.shadowRoot : pv;\r\n }, document);\r\n }\r\n\r\n return null;\r\n}\r\n\r\n/**\r\n * Creates the ability to change numbers in an input field with the scroll-wheel.\r\n * @param el\r\n * @param mapper\r\n */\r\nexport function adjustableInputNumbers(el, mapper = v => v) {\r\n\r\n function handleScroll(e) {\r\n const inc = ([0.001, 0.01, 0.1])[Number(e.shiftKey || e.ctrlKey * 2)] * (e.deltaY < 0 ? 1 : -1);\r\n\r\n let index = 0;\r\n let off = el.selectionStart;\r\n el.value = el.value.replace(/[\\d.]+/g, (v, i) => {\r\n\r\n // Check if number is in cursor range and increase it\r\n if (i <= off && i + v.length >= off) {\r\n off = i;\r\n return mapper(Number(v), inc, index);\r\n }\r\n\r\n index++;\r\n return v;\r\n });\r\n\r\n el.focus();\r\n el.setSelectionRange(off, off);\r\n\r\n // Prevent default and trigger input event\r\n e.preventDefault();\r\n el.dispatchEvent(new Event('input'));\r\n }\r\n\r\n // Bind events\r\n on(el, 'focus', () => on(window, 'wheel', handleScroll, {passive: false}));\r\n on(el, 'blur', () => off(window, 'wheel', handleScroll));\r\n}\r\n","// Shorthands\r\nconst {min, max, floor, round} = Math;\r\n\r\n/**\r\n * Tries to convert a color name to rgb/a hex representation\r\n * @param name\r\n * @returns {string | CanvasGradient | CanvasPattern}\r\n */\r\nfunction standardizeColor(name) {\r\n\r\n // Since invalid color's will be parsed as black, filter them out\r\n if (name.toLowerCase() === 'black') {\r\n return '#000';\r\n }\r\n\r\n const ctx = document.createElement('canvas').getContext('2d');\r\n ctx.fillStyle = name;\r\n return ctx.fillStyle === '#000' ? null : ctx.fillStyle;\r\n}\r\n\r\n/**\r\n * Convert HSV spectrum to RGB.\r\n * @param h Hue\r\n * @param s Saturation\r\n * @param v Value\r\n * @returns {number[]} Array with rgb values.\r\n */\r\nexport function hsvToRgb(h, s, v) {\r\n h = (h / 360) * 6;\r\n s /= 100;\r\n v /= 100;\r\n\r\n const i = floor(h);\r\n\r\n const f = h - i;\r\n const p = v * (1 - s);\r\n const q = v * (1 - f * s);\r\n const t = v * (1 - (1 - f) * s);\r\n\r\n const mod = i % 6;\r\n const r = [v, q, p, p, t, v][mod];\r\n const g = [t, v, v, q, p, p][mod];\r\n const b = [p, p, t, v, v, q][mod];\r\n\r\n return [\r\n r * 255,\r\n g * 255,\r\n b * 255\r\n ];\r\n}\r\n\r\n/**\r\n * Convert HSV spectrum to Hex.\r\n * @param h Hue\r\n * @param s Saturation\r\n * @param v Value\r\n * @returns {string[]} Hex values\r\n */\r\nexport function hsvToHex(h, s, v) {\r\n return hsvToRgb(h, s, v).map(v =>\r\n round(v).toString(16).padStart(2, '0')\r\n );\r\n}\r\n\r\n/**\r\n * Convert HSV spectrum to CMYK.\r\n * @param h Hue\r\n * @param s Saturation\r\n * @param v Value\r\n * @returns {number[]} CMYK values\r\n */\r\nexport function hsvToCmyk(h, s, v) {\r\n const rgb = hsvToRgb(h, s, v);\r\n const r = rgb[0] / 255;\r\n const g = rgb[1] / 255;\r\n const b = rgb[2] / 255;\r\n\r\n const k = min(1 - r, 1 - g, 1 - b);\r\n const c = k === 1 ? 0 : (1 - r - k) / (1 - k);\r\n const m = k === 1 ? 0 : (1 - g - k) / (1 - k);\r\n const y = k === 1 ? 0 : (1 - b - k) / (1 - k);\r\n\r\n return [\r\n c * 100,\r\n m * 100,\r\n y * 100,\r\n k * 100\r\n ];\r\n}\r\n\r\n/**\r\n * Convert HSV spectrum to HSL.\r\n * @param h Hue\r\n * @param s Saturation\r\n * @param v Value\r\n * @returns {number[]} HSL values\r\n */\r\nexport function hsvToHsl(h, s, v) {\r\n s /= 100;\r\n v /= 100;\r\n\r\n const l = (2 - s) * v / 2;\r\n\r\n if (l !== 0) {\r\n if (l === 1) {\r\n s = 0;\r\n } else if (l < 0.5) {\r\n s = s * v / (l * 2);\r\n } else {\r\n s = s * v / (2 - l * 2);\r\n }\r\n }\r\n\r\n return [\r\n h,\r\n s * 100,\r\n l * 100\r\n ];\r\n}\r\n\r\n/**\r\n * Convert RGB to HSV.\r\n * @param r Red\r\n * @param g Green\r\n * @param b Blue\r\n * @return {number[]} HSV values.\r\n */\r\nfunction rgbToHsv(r, g, b) {\r\n r /= 255;\r\n g /= 255;\r\n b /= 255;\r\n\r\n const minVal = min(r, g, b);\r\n const maxVal = max(r, g, b);\r\n const delta = maxVal - minVal;\r\n\r\n let h, s;\r\n const v = maxVal;\r\n if (delta === 0) {\r\n h = s = 0;\r\n } else {\r\n s = delta / maxVal;\r\n const dr = (((maxVal - r) / 6) + (delta / 2)) / delta;\r\n const dg = (((maxVal - g) / 6) + (delta / 2)) / delta;\r\n const db = (((maxVal - b) / 6) + (delta / 2)) / delta;\r\n\r\n if (r === maxVal) {\r\n h = db - dg;\r\n } else if (g === maxVal) {\r\n h = (1 / 3) + dr - db;\r\n } else if (b === maxVal) {\r\n h = (2 / 3) + dg - dr;\r\n }\r\n\r\n if (h < 0) {\r\n h += 1;\r\n } else if (h > 1) {\r\n h -= 1;\r\n }\r\n }\r\n\r\n return [\r\n h * 360,\r\n s * 100,\r\n v * 100\r\n ];\r\n}\r\n\r\n/**\r\n * Convert CMYK to HSV.\r\n * @param c Cyan\r\n * @param m Magenta\r\n * @param y Yellow\r\n * @param k Key (Black)\r\n * @return {number[]} HSV values.\r\n */\r\nfunction cmykToHsv(c, m, y, k) {\r\n c /= 100;\r\n m /= 100;\r\n y /= 100;\r\n k /= 100;\r\n\r\n const r = (1 - min(1, c * (1 - k) + k)) * 255;\r\n const g = (1 - min(1, m * (1 - k) + k)) * 255;\r\n const b = (1 - min(1, y * (1 - k) + k)) * 255;\r\n\r\n return [...rgbToHsv(r, g, b)];\r\n}\r\n\r\n/**\r\n * Convert HSL to HSV.\r\n * @param h Hue\r\n * @param s Saturation\r\n * @param l Lightness\r\n * @return {number[]} HSV values.\r\n */\r\nfunction hslToHsv(h, s, l) {\r\n s /= 100;\r\n l /= 100;\r\n s *= l < 0.5 ? l : 1 - l;\r\n\r\n const ns = (2 * s / (l + s)) * 100;\r\n const v = (l + s) * 100;\r\n return [h, ns, v];\r\n}\r\n\r\n/**\r\n * Convert HEX to HSV.\r\n * @param hex Hexadecimal string of rgb colors, can have length 3 or 6.\r\n * @return {number[]} HSV values.\r\n */\r\nfunction hexToHsv(hex) {\r\n return rgbToHsv(...hex.match(/.{2}/g).map(v => parseInt(v, 16)));\r\n}\r\n\r\n/**\r\n * Try's to parse a string which represents a color to a HSV array.\r\n * Current supported types are cmyk, rgba, hsla and hexadecimal.\r\n * @param str\r\n * @return {*}\r\n */\r\nexport function parseToHSVA(str) {\r\n\r\n // Check if string is a color-name\r\n str = str.match(/^[a-zA-Z]+$/) ? standardizeColor(str) : str;\r\n\r\n // Regular expressions to match different types of color represention\r\n const regex = {\r\n cmyk: /^cmyk[\\D]+([\\d.]+)[\\D]+([\\d.]+)[\\D]+([\\d.]+)[\\D]+([\\d.]+)/i,\r\n rgba: /^((rgba)|rgb)[\\D]+([\\d.]+)[\\D]+([\\d.]+)[\\D]+([\\d.]+)[\\D]*?([\\d.]+|$)/i,\r\n hsla: /^((hsla)|hsl)[\\D]+([\\d.]+)[\\D]+([\\d.]+)[\\D]+([\\d.]+)[\\D]*?([\\d.]+|$)/i,\r\n hsva: /^((hsva)|hsv)[\\D]+([\\d.]+)[\\D]+([\\d.]+)[\\D]+([\\d.]+)[\\D]*?([\\d.]+|$)/i,\r\n hexa: /^#?(([\\dA-Fa-f]{3,4})|([\\dA-Fa-f]{6})|([\\dA-Fa-f]{8}))$/i\r\n };\r\n\r\n /**\r\n * Takes an Array of any type, convert strings which represents\r\n * a number to a number an anything else to undefined.\r\n * @param array\r\n * @return {*}\r\n */\r\n const numarize = array => array.map(v => /^(|\\d+)\\.\\d+|\\d+$/.test(v) ? Number(v) : undefined);\r\n\r\n let match;\r\n invalid: for (const type in regex) {\r\n\r\n // Check if current scheme passed\r\n if (!(match = regex[type].exec(str))) {\r\n continue;\r\n }\r\n\r\n // Match[2] does only contain a truly value if rgba, hsla, or hsla got matched\r\n const alphaValid = a => (!!match[2] === (typeof a === 'number'));\r\n\r\n // Try to convert\r\n switch (type) {\r\n case 'cmyk': {\r\n const [, c, m, y, k] = numarize(match);\r\n\r\n if (c > 100 || m > 100 || y > 100 || k > 100) {\r\n break invalid;\r\n }\r\n\r\n return {values: cmykToHsv(c, m, y, k), type};\r\n }\r\n case 'rgba': {\r\n const [, , , r, g, b, a] = numarize(match);\r\n\r\n if (r > 255 || g > 255 || b > 255 || a < 0 || a > 1 || !alphaValid(a)) {\r\n break invalid;\r\n }\r\n\r\n return {values: [...rgbToHsv(r, g, b), a], a, type};\r\n }\r\n case 'hexa': {\r\n let [, hex] = match;\r\n\r\n if (hex.length === 4 || hex.length === 3) {\r\n hex = hex.split('').map(v => v + v).join('');\r\n }\r\n\r\n const raw = hex.substring(0, 6);\r\n let a = hex.substring(6);\r\n\r\n // Convert 0 - 255 to 0 - 1 for opacity\r\n a = a ? (parseInt(a, 16) / 255) : undefined;\r\n\r\n return {values: [...hexToHsv(raw), a], a, type};\r\n }\r\n case 'hsla': {\r\n const [, , , h, s, l, a] = numarize(match);\r\n\r\n if (h > 360 || s > 100 || l > 100 || a < 0 || a > 1 || !alphaValid(a)) {\r\n break invalid;\r\n }\r\n\r\n return {values: [...hslToHsv(h, s, l), a], a, type};\r\n }\r\n case 'hsva': {\r\n const [, , , h, s, v, a] = numarize(match);\r\n\r\n if (h > 360 || s > 100 || v > 100 || a < 0 || a > 1 || !alphaValid(a)) {\r\n break invalid;\r\n }\r\n\r\n return {values: [h, s, v, a], a, type};\r\n }\r\n }\r\n }\r\n\r\n return {values: null, type: null};\r\n}\r\n","import {hsvToCmyk, hsvToHex, hsvToHsl, hsvToRgb} from './color';\r\n\r\n/**\r\n * Simple class which holds the properties\r\n * of the color represention model hsla (hue saturation lightness alpha)\r\n */\r\nexport function HSVaColor(h = 0, s = 0, v = 0, a = 1) {\r\n const mapper = (original, next) => (precision = -1) => {\r\n return next(~precision ? original.map(v => Number(v.toFixed(precision))) : original);\r\n };\r\n\r\n const that = {\r\n h, s, v, a,\r\n\r\n toHSVA() {\r\n const hsva = [that.h, that.s, that.v, that.a];\r\n hsva.toString = mapper(hsva, arr => `hsva(${arr[0]}, ${arr[1]}%, ${arr[2]}%, ${that.a})`);\r\n return hsva;\r\n },\r\n\r\n toHSLA() {\r\n const hsla = [...hsvToHsl(that.h, that.s, that.v), that.a];\r\n hsla.toString = mapper(hsla, arr => `hsla(${arr[0]}, ${arr[1]}%, ${arr[2]}%, ${that.a})`);\r\n return hsla;\r\n },\r\n\r\n toRGBA() {\r\n const rgba = [...hsvToRgb(that.h, that.s, that.v), that.a];\r\n rgba.toString = mapper(rgba, arr => `rgba(${arr[0]}, ${arr[1]}, ${arr[2]}, ${that.a})`);\r\n return rgba;\r\n },\r\n\r\n toCMYK() {\r\n const cmyk = hsvToCmyk(that.h, that.s, that.v);\r\n cmyk.toString = mapper(cmyk, arr => `cmyk(${arr[0]}%, ${arr[1]}%, ${arr[2]}%, ${arr[3]}%)`);\r\n return cmyk;\r\n },\r\n\r\n toHEXA() {\r\n const hex = hsvToHex(that.h, that.s, that.v);\r\n\r\n // Check if alpha channel make sense, convert it to 255 number space, convert\r\n // To hex and pad it with zeros if needet.\r\n const alpha = that.a >= 1 ? '' : Number((that.a * 255).toFixed(0))\r\n .toString(16)\r\n .toUpperCase().padStart(2, '0');\r\n\r\n alpha && hex.push(alpha);\r\n hex.toString = () => `#${hex.join('').toUpperCase()}`;\r\n return hex;\r\n },\r\n\r\n clone: () => HSVaColor(that.h, that.s, that.v, that.a)\r\n };\r\n\r\n return that;\r\n}\r\n","import * as _ from '../utils/utils';\r\n\r\nconst clamp = v => Math.max(Math.min(v, 1), 0);\r\nexport default function Moveable(opt) {\r\n\r\n const that = {\r\n\r\n // Assign default values\r\n options: Object.assign({\r\n lock: null,\r\n onchange: () => 0,\r\n onstop: () => 0\r\n }, opt),\r\n\r\n _keyboard(e) {\r\n const {options} = that;\r\n const {type, key} = e;\r\n\r\n // Check to see if the Movable is focused and then move it based on arrow key inputs\r\n // For improved accessibility\r\n if (document.activeElement === options.wrapper) {\r\n const {lock} = that.options;\r\n const up = key === 'ArrowUp';\r\n const right = key === 'ArrowRight';\r\n const down = key === 'ArrowDown';\r\n const left = key === 'ArrowLeft';\r\n\r\n if (type === 'keydown' && (up || right || down || left)) {\r\n let xm = 0;\r\n let ym = 0;\r\n\r\n if (lock === 'v') {\r\n xm = (up || right) ? 1 : -1;\r\n } else if (lock === 'h') {\r\n xm = (up || right) ? -1 : 1;\r\n } else {\r\n ym = up ? -1 : (down ? 1 : 0);\r\n xm = left ? -1 : (right ? 1 : 0);\r\n }\r\n\r\n that.update(\r\n clamp(that.cache.x + (0.01 * xm)),\r\n clamp(that.cache.y + (0.01 * ym))\r\n );\r\n e.preventDefault();\r\n } else if (key.startsWith('Arrow')) {\r\n that.options.onstop();\r\n e.preventDefault();\r\n }\r\n }\r\n },\r\n\r\n _tapstart(evt) {\r\n _.on(document, ['mouseup', 'touchend', 'touchcancel'], that._tapstop);\r\n _.on(document, ['mousemove', 'touchmove'], that._tapmove);\r\n\r\n // Prevent default touch event\r\n evt.preventDefault();\r\n\r\n // Trigger\r\n that._tapmove(evt);\r\n },\r\n\r\n _tapmove(evt) {\r\n const {options, cache} = that;\r\n const {lock, element, wrapper} = options;\r\n const b = wrapper.getBoundingClientRect();\r\n\r\n let x = 0, y = 0;\r\n if (evt) {\r\n const touch = evt && evt.touches && evt.touches[0];\r\n x = evt ? (touch || evt).clientX : 0;\r\n y = evt ? (touch || evt).clientY : 0;\r\n\r\n // Reset to bounds\r\n if (x < b.left) {\r\n x = b.left;\r\n } else if (x > b.left + b.width) {\r\n x = b.left + b.width;\r\n }\r\n if (y < b.top) {\r\n y = b.top;\r\n } else if (y > b.top + b.height) {\r\n y = b.top + b.height;\r\n }\r\n\r\n // Normalize\r\n x -= b.left;\r\n y -= b.top;\r\n } else if (cache) {\r\n x = cache.x * b.width;\r\n y = cache.y * b.height;\r\n }\r\n\r\n if (lock !== 'h') {\r\n element.style.left = `calc(${x / b.width * 100}% - ${element.offsetWidth / 2}px)`;\r\n }\r\n\r\n if (lock !== 'v') {\r\n element.style.top = `calc(${y / b.height * 100}% - ${element.offsetHeight / 2}px)`;\r\n }\r\n\r\n that.cache = {x: x / b.width, y: y / b.height};\r\n const cx = clamp(x / b.width);\r\n const cy = clamp(y / b.height);\r\n\r\n switch (lock) {\r\n case 'v':\r\n return options.onchange(cx);\r\n case 'h':\r\n return options.onchange(cy);\r\n default:\r\n return options.onchange(cx, cy);\r\n }\r\n },\r\n\r\n _tapstop() {\r\n that.options.onstop();\r\n _.off(document, ['mouseup', 'touchend', 'touchcancel'], that._tapstop);\r\n _.off(document, ['mousemove', 'touchmove'], that._tapmove);\r\n },\r\n\r\n trigger() {\r\n that._tapmove();\r\n },\r\n\r\n update(x = 0, y = 0) {\r\n const {left, top, width, height} = that.options.wrapper.getBoundingClientRect();\r\n\r\n if (that.options.lock === 'h') {\r\n y = x;\r\n }\r\n\r\n that._tapmove({\r\n clientX: left + width * x,\r\n clientY: top + height * y\r\n });\r\n },\r\n\r\n destroy() {\r\n const {options, _tapstart, _keyboard} = that;\r\n _.off(document, ['keydown', 'keyup'], _keyboard);\r\n _.off([options.wrapper, options.element], 'mousedown', _tapstart);\r\n _.off([options.wrapper, options.element], 'touchstart', _tapstart, {\r\n passive: false\r\n });\r\n }\r\n };\r\n\r\n // Initilize\r\n const {options, _tapstart, _keyboard} = that;\r\n _.on([options.wrapper, options.element], 'mousedown', _tapstart);\r\n _.on([options.wrapper, options.element], 'touchstart', _tapstart, {\r\n passive: false\r\n });\r\n\r\n _.on(document, ['keydown', 'keyup'], _keyboard);\r\n\r\n return that;\r\n}\r\n","import * as _ from '../utils/utils';\r\n\r\nexport default function Selectable(opt = {}) {\r\n opt = Object.assign({\r\n onchange: () => 0,\r\n className: '',\r\n elements: []\r\n }, opt);\r\n\r\n const onTap = _.on(opt.elements, 'click', evt => {\r\n opt.elements.forEach(e =>\r\n e.classList[evt.target === e ? 'add' : 'remove'](opt.className)\r\n );\r\n\r\n opt.onchange(evt);\r\n });\r\n\r\n return {\r\n destroy: () => _.off(...onTap)\r\n };\r\n}\r\n","/**\r\n * Micro positioning-engine\r\n * @param el\r\n * @param reference\r\n * @param pos\r\n * @param padding\r\n * @returns {{update(): void}}\r\n * @constructor\r\n */\r\nexport default function Nanopop({el, reference, padding = 8}) {\r\n\r\n // Positioning priorities for variants\r\n const vBehaviour = {\r\n start: 'sme',\r\n middle: 'mse',\r\n end: 'ems'\r\n };\r\n\r\n // Positioning priorities for general alignment\r\n const hBehaviour = {\r\n top: 'tbrl',\r\n right: 'rltb',\r\n bottom: 'btrl',\r\n left: 'lrbt'\r\n };\r\n\r\n const getInfo = ((cache = {}) => (pos, cached = cache[pos]) => {\r\n\r\n // Return cached value if possible\r\n if (cached) {\r\n return cached;\r\n }\r\n\r\n // Extract position and variant\r\n // Top-start -> top is \"position\" and \"start\" is the variant\r\n const [position, variant = 'middle'] = pos.split('-');\r\n\r\n // It's vertical if top or bottom is used as position\r\n const isVertical = (position === 'top' || position === 'bottom');\r\n\r\n // Cache value and return\r\n return cache[pos] = {\r\n position,\r\n variant,\r\n isVertical\r\n };\r\n })();\r\n\r\n return {\r\n\r\n /**\r\n * Re-aligns the element\r\n * @param pos Position string\r\n * @param useFallback If everything fails the element may be centered on the the entire screen ignoring the reference\r\n */\r\n update(pos, useFallback = false) {\r\n const {position, variant, isVertical} = getInfo(pos);\r\n const rb = reference.getBoundingClientRect();\r\n const eb = el.getBoundingClientRect();\r\n\r\n /**\r\n * Holds coordinates of top, left, bottom and right alignment\r\n */\r\n const positions = vertical => vertical ? {\r\n t: rb.top - eb.height - padding,\r\n b: rb.bottom + padding\r\n } : {\r\n r: rb.right + padding,\r\n l: rb.left - eb.width - padding\r\n };\r\n\r\n /**\r\n * Holds corresponding variants (start, middle, end)\r\n */\r\n const variants = vertical => vertical ? {\r\n s: rb.left + rb.width - eb.width,\r\n m: (-eb.width / 2) + (rb.left + rb.width / 2),\r\n e: rb.left\r\n } : {\r\n s: rb.bottom - eb.height,\r\n m: rb.bottom - rb.height / 2 - eb.height / 2,\r\n e: rb.bottom - rb.height\r\n };\r\n\r\n // Holds the last working positions\r\n const leastApplied = {};\r\n\r\n /**\r\n * Applies a position, example precedure with top-start: it'll\r\n * first try to satify the variant \"start\", if this fails it'll try\r\n * the remaining variants (in this case \"middle\" and \"end\")\r\n * @param positions Array of positions in the order they should be applied\r\n * @param positionVariants Variants, the first should be the one initially wanted\r\n * @param targetProperty The target property, defines if this is a horizontal or vertical aligment\r\n * @returns a value for targetProperty or null if none fits\r\n */\r\n const findFittingValue = (positions, positionVariants, targetProperty) => {\r\n const vertical = targetProperty === 'top';\r\n const elSize = vertical ? eb.height : eb.width;\r\n const winSize = window[vertical ? 'innerHeight' : 'innerWidth'];\r\n\r\n for (const posChar of positions) {\r\n const wantedValue = positionVariants[posChar];\r\n const wantedValueAsString = leastApplied[targetProperty] = `${wantedValue}px`;\r\n\r\n if (wantedValue > 0 && (wantedValue + elSize) < winSize) {\r\n return wantedValueAsString;\r\n }\r\n }\r\n\r\n return null;\r\n };\r\n\r\n\r\n for (const vertical of [isVertical, !isVertical]) {\r\n\r\n /**\r\n * Va and vb both define where the element is positioned (top, bottom, left, right)\r\n * and it's corresponding variant (start, middle, end). Since we're \"rotating\" the element\r\n * to ensure to (hopefully) find at least one fitting position the values need to be\r\n * defined during runtime.\r\n */\r\n const vaType = vertical ? 'top' : 'left';\r\n const vbType = vertical ? 'left' : 'top';\r\n\r\n // Actual values for top and bottom\r\n const vaValue = findFittingValue(hBehaviour[position], positions(vertical), vaType);\r\n const vbValue = findFittingValue(vBehaviour[variant], variants(vertical), vbType);\r\n\r\n // Both values work, apply them\r\n if (vaValue && vbValue) {\r\n el.style[vbType] = vbValue;\r\n el.style[vaType] = vaValue;\r\n return;\r\n }\r\n }\r\n\r\n // It failed to find a non-clipping position, if fallback is enable it'll use it - otherwise the last\r\n // Calculated values will be used.\r\n if (useFallback) {\r\n el.style.top = `${(window.innerHeight - eb.height) / 2}px`;\r\n el.style.left = `${(window.innerWidth - eb.width) / 2}px`;\r\n } else {\r\n el.style.left = leastApplied.left;\r\n el.style.top = leastApplied.top;\r\n }\r\n }\r\n };\r\n}\r\n","import * as _ from './utils/utils';\r\nimport {version} from '../../package';\r\nimport {parseToHSVA} from './utils/color';\r\nimport {HSVaColor} from './utils/hsvacolor';\r\nimport Moveable from './libs/moveable';\r\nimport Selectable from './libs/selectable';\r\nimport Nanopop from './libs/nanopop';\r\nimport buildPickr from './template';\r\n\r\nclass Pickr {\r\n\r\n // Will be used to prevent specific actions during initilization\r\n _initializingActive = true;\r\n\r\n // If the current color value should be recalculated\r\n _recalc = true;\r\n\r\n // Positioning engine and DOM-Tree\r\n _nanopop = null;\r\n _root = null;\r\n\r\n // Current and last color for comparison\r\n _color = HSVaColor();\r\n _lastColor = HSVaColor();\r\n _swatchColors = [];\r\n\r\n // Evenlistener name: [callbacks]\r\n _eventListener = {\r\n init: [],\r\n save: [],\r\n hide: [],\r\n show: [],\r\n clear: [],\r\n change: [],\r\n changestop: [],\r\n cancel: [],\r\n swatchselect: []\r\n };\r\n\r\n constructor(opt) {\r\n\r\n // Assign default values\r\n this.options = opt = Object.assign({\r\n appClass: null,\r\n theme: 'classic',\r\n useAsButton: false,\r\n padding: 8,\r\n disabled: false,\r\n comparison: true,\r\n closeOnScroll: false,\r\n outputPrecision: 0,\r\n lockOpacity: false,\r\n autoReposition: true,\r\n container: 'body',\r\n components: {\r\n interaction: {}\r\n },\r\n\r\n strings: {},\r\n swatches: null,\r\n inline: false,\r\n sliders: null,\r\n\r\n default: '#42445a',\r\n defaultRepresentation: null,\r\n position: 'bottom-middle',\r\n adjustableNumbers: true,\r\n showAlways: false,\r\n\r\n closeWithKey: 'Escape'\r\n }, opt);\r\n\r\n const {swatches, components, theme, sliders, lockOpacity, padding} = opt;\r\n\r\n if (['nano', 'monolith'].includes(theme) && !sliders) {\r\n opt.sliders = 'h';\r\n }\r\n\r\n // Check interaction section\r\n if (!components.interaction) {\r\n components.interaction = {};\r\n }\r\n\r\n // Overwrite palette if preview, opacity or hue are true\r\n const {preview, opacity, hue, palette} = components;\r\n components.opacity = (!lockOpacity && opacity);\r\n components.palette = palette || preview || opacity || hue;\r\n\r\n // Initialize picker\r\n this._preBuild();\r\n this._buildComponents();\r\n this._bindEvents();\r\n this._finalBuild();\r\n\r\n // Append pre-defined swatch colors\r\n if (swatches && swatches.length) {\r\n swatches.forEach(color => this.addSwatch(color));\r\n }\r\n\r\n // Initialize positioning engine\r\n const {button, app} = this._root;\r\n this._nanopop = Nanopop({\r\n reference: button,\r\n padding,\r\n el: app\r\n });\r\n\r\n // Initialize accessibility\r\n button.setAttribute('role', 'button');\r\n button.setAttribute('aria-label', 'toggle color picker dialog');\r\n\r\n // Initilization is finish, pickr is visible and ready for usage\r\n const that = this;\r\n requestAnimationFrame((function cb() {\r\n\r\n if (!app.offsetWidth && app.parentElement !== opt.container) {\r\n return requestAnimationFrame(cb);\r\n }\r\n\r\n // Apply default color\r\n that.setColor(opt.default);\r\n that._rePositioningPicker();\r\n\r\n // Initialize color representation\r\n if (opt.defaultRepresentation) {\r\n that._representation = opt.defaultRepresentation;\r\n that.setColorRepresentation(that._representation);\r\n }\r\n\r\n // Show pickr if locked\r\n if (opt.showAlways) {\r\n that.show();\r\n }\r\n\r\n // Initialization is done - pickr is usable, fire init event\r\n that._initializingActive = false;\r\n that._emit('init');\r\n }));\r\n }\r\n\r\n // Does only the absolutly basic thing to initialize the components\r\n _preBuild() {\r\n const opt = this.options;\r\n\r\n // Resolve elements\r\n for (const type of ['el', 'container']) {\r\n opt[type] = _.resolveElement(opt[type]);\r\n }\r\n\r\n // Create element and append it to body to\r\n // Prevent initialization errors\r\n this._root = buildPickr(opt);\r\n\r\n // Check if a custom button is used\r\n if (opt.useAsButton) {\r\n this._root.button = opt.el; // Replace button with customized button\r\n }\r\n\r\n opt.container.appendChild(this._root.root);\r\n }\r\n\r\n _finalBuild() {\r\n const opt = this.options;\r\n const root = this._root;\r\n\r\n // Remove from body\r\n opt.container.removeChild(root.root);\r\n\r\n if (opt.inline) {\r\n const parent = opt.el.parentElement;\r\n\r\n if (opt.el.nextSibling) {\r\n parent.insertBefore(root.app, opt.el.nextSibling);\r\n } else {\r\n parent.appendChild(root.app);\r\n }\r\n } else {\r\n opt.container.appendChild(root.app);\r\n }\r\n\r\n // Don't replace the the element if a custom button is used\r\n if (!opt.useAsButton) {\r\n\r\n // Replace element with actual color-picker\r\n opt.el.parentNode.replaceChild(root.root, opt.el);\r\n } else if (opt.inline) {\r\n opt.el.remove();\r\n }\r\n\r\n // Check if it should be immediatly disabled\r\n if (opt.disabled) {\r\n this.disable();\r\n }\r\n\r\n // Check if color comparison is disabled, if yes - remove transitions so everything keeps smoothly\r\n if (!opt.comparison) {\r\n root.button.style.transition = 'none';\r\n\r\n if (!opt.useAsButton) {\r\n root.preview.lastColor.style.transition = 'none';\r\n }\r\n }\r\n\r\n this.hide();\r\n }\r\n\r\n _buildComponents() {\r\n\r\n // Instance reference\r\n const inst = this;\r\n const cs = this.options.components;\r\n const sliders = (inst.options.sliders || 'v').repeat(2);\r\n const [so, sh] = sliders.match(/^[vh]+$/g) ? sliders : [];\r\n\r\n // Re-assign if null\r\n const getColor = () =>\r\n this._color || (this._color = this._lastColor.clone());\r\n\r\n const components = {\r\n\r\n palette: Moveable({\r\n element: inst._root.palette.picker,\r\n wrapper: inst._root.palette.palette,\r\n\r\n onstop: () => inst._emit('changestop', inst),\r\n onchange(x, y) {\r\n if (!cs.palette) {\r\n return;\r\n }\r\n\r\n const color = getColor();\r\n const {_root, options} = inst;\r\n const {lastColor, currentColor} = _root.preview;\r\n\r\n // Update the input field only if the user is currently not typing\r\n if (inst._recalc) {\r\n\r\n // Calculate saturation based on the position\r\n color.s = x * 100;\r\n\r\n // Calculate the value\r\n color.v = 100 - y * 100;\r\n\r\n // Prevent falling under zero\r\n color.v < 0 ? color.v = 0 : 0;\r\n inst._updateOutput();\r\n }\r\n\r\n // Set picker and gradient color\r\n const cssRGBaString = color.toRGBA().toString(0);\r\n this.element.style.background = cssRGBaString;\r\n this.wrapper.style.background = `\r\n linear-gradient(to top, rgba(0, 0, 0, ${color.a}), transparent),\r\n linear-gradient(to left, hsla(${color.h}, 100%, 50%, ${color.a}), rgba(255, 255, 255, ${color.a}))\r\n `;\r\n\r\n // Check if color is locked\r\n if (!options.comparison) {\r\n _root.button.style.color = cssRGBaString;\r\n\r\n // If the user changes the color, remove the cleared icon\r\n _root.button.classList.remove('clear');\r\n } else if (!options.useAsButton && !inst._lastColor) {\r\n\r\n // Apply color to both the last and current color since the current state is cleared\r\n lastColor.style.color = cssRGBaString;\r\n }\r\n\r\n // Check if there's a swatch which color matches the current one\r\n const hexa = color.toHEXA().toString();\r\n for (const {el, color} of inst._swatchColors) {\r\n el.classList[hexa === color.toHEXA().toString() ? 'add' : 'remove']('pcr-active');\r\n }\r\n\r\n // Change current color\r\n currentColor.style.color = cssRGBaString;\r\n }\r\n }),\r\n\r\n hue: Moveable({\r\n lock: sh === 'v' ? 'h' : 'v',\r\n element: inst._root.hue.picker,\r\n wrapper: inst._root.hue.slider,\r\n\r\n onstop: () => inst._emit('changestop', inst),\r\n onchange(v) {\r\n if (!cs.hue || !cs.palette) {\r\n return;\r\n }\r\n\r\n const color = getColor();\r\n\r\n // Calculate hue\r\n if (inst._recalc) {\r\n color.h = v * 360;\r\n }\r\n\r\n // Update color\r\n this.element.style.backgroundColor = `hsl(${color.h}, 100%, 50%)`;\r\n components.palette.trigger();\r\n }\r\n }),\r\n\r\n opacity: Moveable({\r\n lock: so === 'v' ? 'h' : 'v',\r\n element: inst._root.opacity.picker,\r\n wrapper: inst._root.opacity.slider,\r\n\r\n onstop: () => inst._emit('changestop', inst),\r\n onchange(v) {\r\n if (!cs.opacity || !cs.palette) {\r\n return;\r\n }\r\n\r\n const color = getColor();\r\n\r\n // Calculate opacity\r\n if (inst._recalc) {\r\n color.a = Math.round(v * 1e2) / 100;\r\n }\r\n\r\n // Update color\r\n this.element.style.background = `rgba(0, 0, 0, ${color.a})`;\r\n components.palette.trigger();\r\n }\r\n }),\r\n\r\n selectable: Selectable({\r\n elements: inst._root.interaction.options,\r\n className: 'active',\r\n\r\n onchange(e) {\r\n inst._representation = e.target.getAttribute('data-type').toUpperCase();\r\n inst._recalc && inst._updateOutput();\r\n }\r\n })\r\n };\r\n\r\n this._components = components;\r\n }\r\n\r\n _bindEvents() {\r\n const {_root, options} = this;\r\n\r\n const eventBindings = [\r\n\r\n // Clear color\r\n _.on(_root.interaction.clear, 'click', () => this._clearColor()),\r\n\r\n // Select last color on click\r\n _.on([\r\n _root.interaction.cancel,\r\n _root.preview.lastColor\r\n ], 'click', () => {\r\n this._emit('cancel', this);\r\n this.setHSVA(...(this._lastColor || this._color).toHSVA(), true);\r\n }),\r\n\r\n // Save color\r\n _.on(_root.interaction.save, 'click', () => {\r\n !this.applyColor() && !options.showAlways && this.hide();\r\n }),\r\n\r\n // User input\r\n _.on(_root.interaction.result, ['keyup', 'input'], e => {\r\n\r\n // Fire listener if initialization is finish and changed color was valid\r\n if (this.setColor(e.target.value, true) && !this._initializingActive) {\r\n this._emit('change', this._color);\r\n }\r\n\r\n e.stopImmediatePropagation();\r\n }),\r\n\r\n // Detect user input and disable auto-recalculation\r\n _.on(_root.interaction.result, ['focus', 'blur'], e => {\r\n this._recalc = e.type === 'blur';\r\n this._recalc && this._updateOutput();\r\n }),\r\n\r\n // Cancel input detection on color change\r\n _.on([\r\n _root.palette.palette,\r\n _root.palette.picker,\r\n _root.hue.slider,\r\n _root.hue.picker,\r\n _root.opacity.slider,\r\n _root.opacity.picker\r\n ], ['mousedown', 'touchstart'], () => this._recalc = true)\r\n ];\r\n\r\n // Provide hiding / showing abilities only if showAlways is false\r\n if (!options.showAlways) {\r\n const ck = options.closeWithKey;\r\n\r\n eventBindings.push(\r\n // Save and hide / show picker\r\n _.on(_root.button, 'click', () => this.isOpen() ? this.hide() : this.show()),\r\n\r\n // Close with escape key\r\n _.on(document, 'keyup', e => this.isOpen() && (e.key === ck || e.code === ck) && this.hide()),\r\n\r\n // Cancel selecting if the user taps behind the color picker\r\n _.on(document, ['touchstart', 'mousedown'], e => {\r\n if (this.isOpen() && !_.eventPath(e).some(el => el === _root.app || el === _root.button)) {\r\n this.hide();\r\n }\r\n }, {capture: true})\r\n );\r\n }\r\n\r\n // Make input adjustable if enabled\r\n if (options.adjustableNumbers) {\r\n const ranges = {\r\n rgba: [255, 255, 255, 1],\r\n hsva: [360, 100, 100, 1],\r\n hsla: [360, 100, 100, 1],\r\n cmyk: [100, 100, 100, 100]\r\n };\r\n\r\n _.adjustableInputNumbers(_root.interaction.result, (o, step, index) => {\r\n const range = ranges[this.getColorRepresentation().toLowerCase()];\r\n\r\n if (range) {\r\n const max = range[index];\r\n\r\n // Calculate next reasonable number\r\n const nv = o + (max >= 100 ? step * 1000 : step);\r\n\r\n // Apply range of zero up to max, fix floating-point issues\r\n return nv <= 0 ? 0 : Number((nv < max ? nv : max).toPrecision(3));\r\n }\r\n\r\n return o;\r\n });\r\n }\r\n\r\n if (options.autoReposition && !options.inline) {\r\n let timeout = null;\r\n const that = this;\r\n\r\n // Re-calc position on window resize, scroll and wheel\r\n eventBindings.push(\r\n _.on(window, ['scroll', 'resize'], () => {\r\n if (that.isOpen()) {\r\n\r\n if (options.closeOnScroll) {\r\n that.hide();\r\n }\r\n\r\n if (timeout === null) {\r\n timeout = setTimeout(() => timeout = null, 100);\r\n\r\n // Update position on every frame\r\n requestAnimationFrame(function rs() {\r\n that._rePositioningPicker();\r\n (timeout !== null) && requestAnimationFrame(rs);\r\n });\r\n } else {\r\n clearTimeout(timeout);\r\n timeout = setTimeout(() => timeout = null, 100);\r\n }\r\n }\r\n }, {capture: true})\r\n );\r\n }\r\n\r\n // Save bindings\r\n this._eventBindings = eventBindings;\r\n }\r\n\r\n _rePositioningPicker() {\r\n const {options} = this;\r\n\r\n // No repositioning needed if inline\r\n if (!options.inline) {\r\n this._nanopop.update(options.position, !this._recalc);\r\n }\r\n }\r\n\r\n _updateOutput() {\r\n const {_root, _color, options} = this;\r\n\r\n // Check if component is present\r\n if (_root.interaction.type()) {\r\n\r\n // Construct function name and call if present\r\n const method = `to${_root.interaction.type().getAttribute('data-type')}`;\r\n _root.interaction.result.value = typeof _color[method] === 'function' ?\r\n _color[method]().toString(options.outputPrecision) : '';\r\n }\r\n\r\n // Fire listener if initialization is finish\r\n if (!this._initializingActive && this._recalc) {\r\n this._emit('change', _color);\r\n }\r\n }\r\n\r\n _clearColor(silent = false) {\r\n const {_root, options} = this;\r\n\r\n // Change only the button color if it isn't customized\r\n if (!options.useAsButton) {\r\n _root.button.style.color = 'rgba(0, 0, 0, 0.15)';\r\n }\r\n\r\n _root.button.classList.add('clear');\r\n\r\n if (!options.showAlways) {\r\n this.hide();\r\n }\r\n\r\n this._lastColor = null;\r\n if (!this._initializingActive && !silent) {\r\n\r\n // Fire listener\r\n this._emit('save', null);\r\n this._emit('clear', this);\r\n }\r\n }\r\n\r\n _parseLocalColor(str) {\r\n const {values, type, a} = parseToHSVA(str);\r\n const {lockOpacity} = this.options;\r\n const alphaMakesAChange = a !== undefined && a !== 1;\r\n\r\n // If no opacity is applied, add undefined at the very end which gets\r\n // Set to 1 in setHSVA\r\n if (values && values.length === 3) {\r\n values[3] = undefined;\r\n }\r\n\r\n return {\r\n values: (!values || (lockOpacity && alphaMakesAChange)) ? null : values,\r\n type\r\n };\r\n }\r\n\r\n _emit(event, ...args) {\r\n this._eventListener[event].forEach(cb => cb(...args, this));\r\n }\r\n\r\n on(event, cb) {\r\n\r\n // Validate\r\n if (typeof cb === 'function' && typeof event === 'string' && event in this._eventListener) {\r\n this._eventListener[event].push(cb);\r\n }\r\n\r\n return this;\r\n }\r\n\r\n off(event, cb) {\r\n const callBacks = this._eventListener[event];\r\n\r\n if (callBacks) {\r\n const index = callBacks.indexOf(cb);\r\n\r\n if (~index) {\r\n callBacks.splice(index, 1);\r\n }\r\n }\r\n\r\n return this;\r\n }\r\n\r\n /**\r\n * Appends a color to the swatch palette\r\n * @param color\r\n * @returns {boolean}\r\n */\r\n addSwatch(color) {\r\n const {values} = this._parseLocalColor(color);\r\n\r\n if (values) {\r\n const {_swatchColors, _root} = this;\r\n const color = HSVaColor(...values);\r\n\r\n // Create new swatch HTMLElement\r\n const el = _.createElementFromString(\r\n `'}\r\n\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n\r\n
\r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n
\r\n
\r\n
\r\n\r\n
\r\n\r\n
\r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n
\r\n
\r\n \r\n `);\r\n\r\n const int = root.interaction;\r\n\r\n // Select option which is not hidden\r\n int.options.find(o => !o.hidden && !o.classList.add('active'));\r\n\r\n // Create method to find currenlty active option\r\n int.type = () => int.options.find(e => e.classList.contains('active'));\r\n return root;\r\n}\r\n"],"sourceRoot":""} \ No newline at end of file +{"version":3,"sources":["webpack:///webpack/universalModuleDefinition","webpack:///webpack/bootstrap","webpack:///./src/js/utils/utils.js","webpack:///./src/js/utils/color.js","webpack:///./src/js/utils/hsvacolor.js","webpack:///./src/js/libs/moveable.js","webpack:///./src/js/libs/selectable.js","webpack:///./src/js/libs/nanopop.js","webpack:///./src/js/pickr.js","webpack:///./src/js/template.js"],"names":["root","factory","exports","module","define","amd","window","installedModules","__webpack_require__","moduleId","i","l","modules","call","m","c","d","name","getter","o","Object","defineProperty","enumerable","get","r","Symbol","toStringTag","value","t","mode","__esModule","ns","create","key","bind","n","object","property","prototype","hasOwnProperty","p","s","eventListener","method","elements","events","fn","options","HTMLCollection","NodeList","Array","from","isArray","el","ev","capture","slice","arguments","on","off","createElementFromString","html","div","document","createElement","innerHTML","trim","firstElementChild","removeAttribute","getAttribute","createFromTemplate","str","resolve","element","base","con","subtree","child","children","arr","sub","push","keys","length","eventPath","evt","path","composedPath","target","parentElement","resolveElement","val","Element","split","reduce","pv","cv","ci","a","querySelector","shadowRoot","adjustableInputNumbers","mapper","v","handleScroll","e","inc","Number","shiftKey","ctrlKey","deltaY","index","selectionStart","replace","focus","setSelectionRange","preventDefault","dispatchEvent","Event","passive","min","max","floor","round","Math","hsvToRgb","h","f","q","mod","hsvToHsl","rgbToHsv","g","b","minVal","maxVal","delta","dr","dg","db","cmykToHsv","y","k","hslToHsv","hexToHsv","hex","match","map","parseInt","parseToHSVA","toLowerCase","ctx","getContext","fillStyle","standardizeColor","regex","cmyk","rgba","hsla","hsva","hexa","numarize","array","test","undefined","invalid","type","exec","alphaValid","values","join","raw","substring","HSVaColor","original","next","precision","toFixed","that","toHSVA","toString","toHSLA","toRGBA","toCMYK","rgb","hsvToCmyk","toHEXA","padStart","hsvToHex","alpha","toUpperCase","clone","clamp","Moveable","opt","assign","lock","onchange","onstop","_keyboard","activeElement","wrapper","up","right","down","left","xm","ym","update","cache","x","startsWith","_tapstart","_","_tapstop","_tapmove","getBoundingClientRect","touch","touches","clientX","clientY","width","top","height","style","offsetWidth","offsetHeight","cx","cy","trigger","destroy","Selectable","className","onTap","forEach","classList","Nanopop","reference","padding","vBehaviour","start","middle","end","hBehaviour","bottom","getInfo","pos","cached","position","variant","isVertical","useFallback","rb","eb","positions","vertical","variants","leastApplied","findFittingValue","positionVariants","targetProperty","elSize","winSize","posChar","wantedValue","wantedValueAsString","vaType","vbType","vaValue","vbValue","innerHeight","innerWidth","Pickr","constructor","init","save","hide","show","clear","change","changestop","cancel","swatchselect","this","appClass","theme","useAsButton","disabled","comparison","closeOnScroll","outputPrecision","lockOpacity","autoReposition","container","components","interaction","strings","swatches","inline","sliders","default","defaultRepresentation","adjustableNumbers","showAlways","closeWithKey","includes","preview","opacity","hue","palette","_preBuild","_buildComponents","_bindEvents","_finalBuild","color","addSwatch","button","app","_root","_nanopop","setAttribute","requestAnimationFrame","cb","setColor","_rePositioningPicker","_representation","setColorRepresentation","_initializingActive","_emit","lo","hidden","input","int","find","add","contains","buildPickr","appendChild","removeChild","parent","nextSibling","insertBefore","remove","parentNode","replaceChild","disable","transition","lastColor","inst","cs","repeat","so","sh","getColor","_color","_lastColor","picker","currentColor","_recalc","_updateOutput","cssRGBaString","background","_swatchColors","slider","backgroundColor","selectable","_components","eventBindings","_clearColor","setHSVA","applyColor","result","stopImmediatePropagation","ck","isOpen","code","some","ranges","step","range","getColorRepresentation","nv","toPrecision","timeout","setTimeout","rs","clearTimeout","_eventBindings","silent","_parseLocalColor","alphaMakesAChange","event","args","_eventListener","callBacks","indexOf","splice","removeSwatch","swatchColor","destroyAndRemove","recalc","string","utype","click","getSelectedColor","getRoot","enable","utils","libs","version"],"mappings":"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","file":"pickr.min.js","sourcesContent":["(function webpackUniversalModuleDefinition(root, factory) {\n\tif(typeof exports === 'object' && typeof module === 'object')\n\t\tmodule.exports = factory();\n\telse if(typeof define === 'function' && define.amd)\n\t\tdefine([], factory);\n\telse if(typeof exports === 'object')\n\t\texports[\"Pickr\"] = factory();\n\telse\n\t\troot[\"Pickr\"] = factory();\n})(window, function() {\nreturn "," \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, { enumerable: true, get: getter });\n \t\t}\n \t};\n\n \t// define __esModule on exports\n \t__webpack_require__.r = function(exports) {\n \t\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n \t\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n \t\t}\n \t\tObject.defineProperty(exports, '__esModule', { value: true });\n \t};\n\n \t// create a fake namespace object\n \t// mode & 1: value is a module id, require it\n \t// mode & 2: merge all properties of value into the ns\n \t// mode & 4: return value when already ns object\n \t// mode & 8|1: behave like require\n \t__webpack_require__.t = function(value, mode) {\n \t\tif(mode & 1) value = __webpack_require__(value);\n \t\tif(mode & 8) return value;\n \t\tif((mode & 4) && typeof value === 'object' && value && value.__esModule) return value;\n \t\tvar ns = Object.create(null);\n \t\t__webpack_require__.r(ns);\n \t\tObject.defineProperty(ns, 'default', { enumerable: true, value: value });\n \t\tif(mode & 2 && typeof value != 'string') for(var key in value) __webpack_require__.d(ns, key, function(key) { return value[key]; }.bind(null, key));\n \t\treturn ns;\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\n \t// Load entry module and return exports\n \treturn __webpack_require__(__webpack_require__.s = 1);\n","/* eslint-disable prefer-rest-params */\nfunction eventListener(method, elements, events, fn, options = {}) {\n\n // Normalize array\n if (elements instanceof HTMLCollection || elements instanceof NodeList) {\n elements = Array.from(elements);\n } else if (!Array.isArray(elements)) {\n elements = [elements];\n }\n\n if (!Array.isArray(events)) {\n events = [events];\n }\n\n for (const el of elements) {\n for (const ev of events) {\n el[method](ev, fn, {capture: false, ...options});\n }\n }\n\n return Array.prototype.slice.call(arguments, 1);\n}\n\n/**\n * Add event(s) to element(s).\n * @param elements DOM-Elements\n * @param events Event names\n * @param fn Callback\n * @param options Optional options\n * @return Array passed arguments\n */\nexport const on = eventListener.bind(null, 'addEventListener');\n\n/**\n * Remove event(s) from element(s).\n * @param elements DOM-Elements\n * @param events Event names\n * @param fn Callback\n * @param options Optional options\n * @return Array passed arguments\n */\nexport const off = eventListener.bind(null, 'removeEventListener');\n\n/**\n * Creates an DOM-Element out of a string (Single element).\n * @param html HTML representing a single element\n * @returns {Element | null} The element.\n */\nexport function createElementFromString(html) {\n const div = document.createElement('div');\n div.innerHTML = html.trim();\n return div.firstElementChild;\n}\n\n/**\n * Removes an attribute from a HTMLElement and returns the value.\n * @param el\n * @param name\n * @return {string}\n */\nexport function removeAttribute(el, name) {\n const value = el.getAttribute(name);\n el.removeAttribute(name);\n return value;\n}\n\n/**\n * Creates a new html element, every element which has\n * a ':ref' attribute will be saved in a object (which will be returned)\n * where the value of ':ref' is the object-key and the value the HTMLElement.\n *\n * It's possible to create a hierarchy if you add a ':obj' attribute. Every\n * sibling will be added to the object which will get the name from the 'data-con' attribute.\n *\n * If you want to create an Array out of multiple elements, you can use the ':arr' attribute,\n * the value defines the key and all elements, which has the same parent and the same 'data-arr' attribute,\n * would be added to it.\n *\n * @param str - The HTML String.\n */\nexport function createFromTemplate(str) {\n\n // Recursive function to resolve template\n function resolve(element, base = {}) {\n\n // Check key and container attribute\n const con = removeAttribute(element, ':obj');\n const key = removeAttribute(element, ':ref');\n const subtree = con ? (base[con] = {}) : base;\n\n // Check and save element\n key && (base[key] = element);\n for (const child of Array.from(element.children)) {\n const arr = removeAttribute(child, ':arr');\n const sub = resolve(child, arr ? {} : subtree);\n\n if (arr) {\n\n // Check if there is already an array and add element\n (subtree[arr] || (subtree[arr] = []))\n .push(Object.keys(sub).length ? sub : child);\n }\n }\n\n return base;\n }\n\n return resolve(createElementFromString(str));\n}\n\n/**\n * Polyfill for safari & firefox for the eventPath event property.\n * @param evt The event object.\n * @return [String] event path.\n */\nexport function eventPath(evt) {\n let path = evt.path || (evt.composedPath && evt.composedPath());\n if (path) {\n return path;\n }\n\n let el = evt.target.parentElement;\n path = [evt.target, el];\n while (el = el.parentElement) {\n path.push(el);\n }\n\n path.push(document, window);\n return path;\n}\n\n/**\n * Resolves a HTMLElement by query.\n * @param val\n * @returns {null|Document|Element}\n */\nexport function resolveElement(val) {\n if (val instanceof Element) {\n return val;\n } else if (typeof val === 'string') {\n return val.split(/>>/g).reduce((pv, cv, ci, a) => {\n pv = pv.querySelector(cv);\n return ci < a.length - 1 ? pv.shadowRoot : pv;\n }, document);\n }\n\n return null;\n}\n\n/**\n * Creates the ability to change numbers in an input field with the scroll-wheel.\n * @param el\n * @param mapper\n */\nexport function adjustableInputNumbers(el, mapper = v => v) {\n\n function handleScroll(e) {\n const inc = ([0.001, 0.01, 0.1])[Number(e.shiftKey || e.ctrlKey * 2)] * (e.deltaY < 0 ? 1 : -1);\n\n let index = 0;\n let off = el.selectionStart;\n el.value = el.value.replace(/[\\d.]+/g, (v, i) => {\n\n // Check if number is in cursor range and increase it\n if (i <= off && i + v.length >= off) {\n off = i;\n return mapper(Number(v), inc, index);\n }\n\n index++;\n return v;\n });\n\n el.focus();\n el.setSelectionRange(off, off);\n\n // Prevent default and trigger input event\n e.preventDefault();\n el.dispatchEvent(new Event('input'));\n }\n\n // Bind events\n on(el, 'focus', () => on(window, 'wheel', handleScroll, {passive: false}));\n on(el, 'blur', () => off(window, 'wheel', handleScroll));\n}\n","// Shorthands\nconst {min, max, floor, round} = Math;\n\n/**\n * Tries to convert a color name to rgb/a hex representation\n * @param name\n * @returns {string | CanvasGradient | CanvasPattern}\n */\nfunction standardizeColor(name) {\n\n // Since invalid color's will be parsed as black, filter them out\n if (name.toLowerCase() === 'black') {\n return '#000';\n }\n\n const ctx = document.createElement('canvas').getContext('2d');\n ctx.fillStyle = name;\n return ctx.fillStyle === '#000' ? null : ctx.fillStyle;\n}\n\n/**\n * Convert HSV spectrum to RGB.\n * @param h Hue\n * @param s Saturation\n * @param v Value\n * @returns {number[]} Array with rgb values.\n */\nexport function hsvToRgb(h, s, v) {\n h = (h / 360) * 6;\n s /= 100;\n v /= 100;\n\n const i = floor(h);\n\n const f = h - i;\n const p = v * (1 - s);\n const q = v * (1 - f * s);\n const t = v * (1 - (1 - f) * s);\n\n const mod = i % 6;\n const r = [v, q, p, p, t, v][mod];\n const g = [t, v, v, q, p, p][mod];\n const b = [p, p, t, v, v, q][mod];\n\n return [\n r * 255,\n g * 255,\n b * 255\n ];\n}\n\n/**\n * Convert HSV spectrum to Hex.\n * @param h Hue\n * @param s Saturation\n * @param v Value\n * @returns {string[]} Hex values\n */\nexport function hsvToHex(h, s, v) {\n return hsvToRgb(h, s, v).map(v =>\n round(v).toString(16).padStart(2, '0')\n );\n}\n\n/**\n * Convert HSV spectrum to CMYK.\n * @param h Hue\n * @param s Saturation\n * @param v Value\n * @returns {number[]} CMYK values\n */\nexport function hsvToCmyk(h, s, v) {\n const rgb = hsvToRgb(h, s, v);\n const r = rgb[0] / 255;\n const g = rgb[1] / 255;\n const b = rgb[2] / 255;\n\n const k = min(1 - r, 1 - g, 1 - b);\n const c = k === 1 ? 0 : (1 - r - k) / (1 - k);\n const m = k === 1 ? 0 : (1 - g - k) / (1 - k);\n const y = k === 1 ? 0 : (1 - b - k) / (1 - k);\n\n return [\n c * 100,\n m * 100,\n y * 100,\n k * 100\n ];\n}\n\n/**\n * Convert HSV spectrum to HSL.\n * @param h Hue\n * @param s Saturation\n * @param v Value\n * @returns {number[]} HSL values\n */\nexport function hsvToHsl(h, s, v) {\n s /= 100;\n v /= 100;\n\n const l = (2 - s) * v / 2;\n\n if (l !== 0) {\n if (l === 1) {\n s = 0;\n } else if (l < 0.5) {\n s = s * v / (l * 2);\n } else {\n s = s * v / (2 - l * 2);\n }\n }\n\n return [\n h,\n s * 100,\n l * 100\n ];\n}\n\n/**\n * Convert RGB to HSV.\n * @param r Red\n * @param g Green\n * @param b Blue\n * @return {number[]} HSV values.\n */\nfunction rgbToHsv(r, g, b) {\n r /= 255;\n g /= 255;\n b /= 255;\n\n const minVal = min(r, g, b);\n const maxVal = max(r, g, b);\n const delta = maxVal - minVal;\n\n let h, s;\n const v = maxVal;\n if (delta === 0) {\n h = s = 0;\n } else {\n s = delta / maxVal;\n const dr = (((maxVal - r) / 6) + (delta / 2)) / delta;\n const dg = (((maxVal - g) / 6) + (delta / 2)) / delta;\n const db = (((maxVal - b) / 6) + (delta / 2)) / delta;\n\n if (r === maxVal) {\n h = db - dg;\n } else if (g === maxVal) {\n h = (1 / 3) + dr - db;\n } else if (b === maxVal) {\n h = (2 / 3) + dg - dr;\n }\n\n if (h < 0) {\n h += 1;\n } else if (h > 1) {\n h -= 1;\n }\n }\n\n return [\n h * 360,\n s * 100,\n v * 100\n ];\n}\n\n/**\n * Convert CMYK to HSV.\n * @param c Cyan\n * @param m Magenta\n * @param y Yellow\n * @param k Key (Black)\n * @return {number[]} HSV values.\n */\nfunction cmykToHsv(c, m, y, k) {\n c /= 100;\n m /= 100;\n y /= 100;\n k /= 100;\n\n const r = (1 - min(1, c * (1 - k) + k)) * 255;\n const g = (1 - min(1, m * (1 - k) + k)) * 255;\n const b = (1 - min(1, y * (1 - k) + k)) * 255;\n\n return [...rgbToHsv(r, g, b)];\n}\n\n/**\n * Convert HSL to HSV.\n * @param h Hue\n * @param s Saturation\n * @param l Lightness\n * @return {number[]} HSV values.\n */\nfunction hslToHsv(h, s, l) {\n s /= 100;\n l /= 100;\n s *= l < 0.5 ? l : 1 - l;\n\n const ns = (2 * s / (l + s)) * 100;\n const v = (l + s) * 100;\n return [h, ns, v];\n}\n\n/**\n * Convert HEX to HSV.\n * @param hex Hexadecimal string of rgb colors, can have length 3 or 6.\n * @return {number[]} HSV values.\n */\nfunction hexToHsv(hex) {\n return rgbToHsv(...hex.match(/.{2}/g).map(v => parseInt(v, 16)));\n}\n\n/**\n * Try's to parse a string which represents a color to a HSV array.\n * Current supported types are cmyk, rgba, hsla and hexadecimal.\n * @param str\n * @return {*}\n */\nexport function parseToHSVA(str) {\n\n // Check if string is a color-name\n str = str.match(/^[a-zA-Z]+$/) ? standardizeColor(str) : str;\n\n // Regular expressions to match different types of color represention\n const regex = {\n cmyk: /^cmyk[\\D]+([\\d.]+)[\\D]+([\\d.]+)[\\D]+([\\d.]+)[\\D]+([\\d.]+)/i,\n rgba: /^((rgba)|rgb)[\\D]+([\\d.]+)[\\D]+([\\d.]+)[\\D]+([\\d.]+)[\\D]*?([\\d.]+|$)/i,\n hsla: /^((hsla)|hsl)[\\D]+([\\d.]+)[\\D]+([\\d.]+)[\\D]+([\\d.]+)[\\D]*?([\\d.]+|$)/i,\n hsva: /^((hsva)|hsv)[\\D]+([\\d.]+)[\\D]+([\\d.]+)[\\D]+([\\d.]+)[\\D]*?([\\d.]+|$)/i,\n hexa: /^#?(([\\dA-Fa-f]{3,4})|([\\dA-Fa-f]{6})|([\\dA-Fa-f]{8}))$/i\n };\n\n /**\n * Takes an Array of any type, convert strings which represents\n * a number to a number an anything else to undefined.\n * @param array\n * @return {*}\n */\n const numarize = array => array.map(v => /^(|\\d+)\\.\\d+|\\d+$/.test(v) ? Number(v) : undefined);\n\n let match;\n invalid: for (const type in regex) {\n\n // Check if current scheme passed\n if (!(match = regex[type].exec(str))) {\n continue;\n }\n\n // Match[2] does only contain a truly value if rgba, hsla, or hsla got matched\n const alphaValid = a => (!!match[2] === (typeof a === 'number'));\n\n // Try to convert\n switch (type) {\n case 'cmyk': {\n const [, c, m, y, k] = numarize(match);\n\n if (c > 100 || m > 100 || y > 100 || k > 100) {\n break invalid;\n }\n\n return {values: cmykToHsv(c, m, y, k), type};\n }\n case 'rgba': {\n const [, , , r, g, b, a] = numarize(match);\n\n if (r > 255 || g > 255 || b > 255 || a < 0 || a > 1 || !alphaValid(a)) {\n break invalid;\n }\n\n return {values: [...rgbToHsv(r, g, b), a], a, type};\n }\n case 'hexa': {\n let [, hex] = match;\n\n if (hex.length === 4 || hex.length === 3) {\n hex = hex.split('').map(v => v + v).join('');\n }\n\n const raw = hex.substring(0, 6);\n let a = hex.substring(6);\n\n // Convert 0 - 255 to 0 - 1 for opacity\n a = a ? (parseInt(a, 16) / 255) : undefined;\n\n return {values: [...hexToHsv(raw), a], a, type};\n }\n case 'hsla': {\n const [, , , h, s, l, a] = numarize(match);\n\n if (h > 360 || s > 100 || l > 100 || a < 0 || a > 1 || !alphaValid(a)) {\n break invalid;\n }\n\n return {values: [...hslToHsv(h, s, l), a], a, type};\n }\n case 'hsva': {\n const [, , , h, s, v, a] = numarize(match);\n\n if (h > 360 || s > 100 || v > 100 || a < 0 || a > 1 || !alphaValid(a)) {\n break invalid;\n }\n\n return {values: [h, s, v, a], a, type};\n }\n }\n }\n\n return {values: null, type: null};\n}\n","import {hsvToCmyk, hsvToHex, hsvToHsl, hsvToRgb} from './color';\n\n/**\n * Simple class which holds the properties\n * of the color represention model hsla (hue saturation lightness alpha)\n */\nexport function HSVaColor(h = 0, s = 0, v = 0, a = 1) {\n const mapper = (original, next) => (precision = -1) => {\n return next(~precision ? original.map(v => Number(v.toFixed(precision))) : original);\n };\n\n const that = {\n h, s, v, a,\n\n toHSVA() {\n const hsva = [that.h, that.s, that.v, that.a];\n hsva.toString = mapper(hsva, arr => `hsva(${arr[0]}, ${arr[1]}%, ${arr[2]}%, ${that.a})`);\n return hsva;\n },\n\n toHSLA() {\n const hsla = [...hsvToHsl(that.h, that.s, that.v), that.a];\n hsla.toString = mapper(hsla, arr => `hsla(${arr[0]}, ${arr[1]}%, ${arr[2]}%, ${that.a})`);\n return hsla;\n },\n\n toRGBA() {\n const rgba = [...hsvToRgb(that.h, that.s, that.v), that.a];\n rgba.toString = mapper(rgba, arr => `rgba(${arr[0]}, ${arr[1]}, ${arr[2]}, ${that.a})`);\n return rgba;\n },\n\n toCMYK() {\n const cmyk = hsvToCmyk(that.h, that.s, that.v);\n cmyk.toString = mapper(cmyk, arr => `cmyk(${arr[0]}%, ${arr[1]}%, ${arr[2]}%, ${arr[3]}%)`);\n return cmyk;\n },\n\n toHEXA() {\n const hex = hsvToHex(that.h, that.s, that.v);\n\n // Check if alpha channel make sense, convert it to 255 number space, convert\n // To hex and pad it with zeros if needet.\n const alpha = that.a >= 1 ? '' : Number((that.a * 255).toFixed(0))\n .toString(16)\n .toUpperCase().padStart(2, '0');\n\n alpha && hex.push(alpha);\n hex.toString = () => `#${hex.join('').toUpperCase()}`;\n return hex;\n },\n\n clone: () => HSVaColor(that.h, that.s, that.v, that.a)\n };\n\n return that;\n}\n","import * as _ from '../utils/utils';\n\nconst clamp = v => Math.max(Math.min(v, 1), 0);\nexport default function Moveable(opt) {\n\n const that = {\n\n // Assign default values\n options: Object.assign({\n lock: null,\n onchange: () => 0,\n onstop: () => 0\n }, opt),\n\n _keyboard(e) {\n const {options} = that;\n const {type, key} = e;\n\n // Check to see if the Movable is focused and then move it based on arrow key inputs\n // For improved accessibility\n if (document.activeElement === options.wrapper) {\n const {lock} = that.options;\n const up = key === 'ArrowUp';\n const right = key === 'ArrowRight';\n const down = key === 'ArrowDown';\n const left = key === 'ArrowLeft';\n\n if (type === 'keydown' && (up || right || down || left)) {\n let xm = 0;\n let ym = 0;\n\n if (lock === 'v') {\n xm = (up || right) ? 1 : -1;\n } else if (lock === 'h') {\n xm = (up || right) ? -1 : 1;\n } else {\n ym = up ? -1 : (down ? 1 : 0);\n xm = left ? -1 : (right ? 1 : 0);\n }\n\n that.update(\n clamp(that.cache.x + (0.01 * xm)),\n clamp(that.cache.y + (0.01 * ym))\n );\n e.preventDefault();\n } else if (key.startsWith('Arrow')) {\n that.options.onstop();\n e.preventDefault();\n }\n }\n },\n\n _tapstart(evt) {\n _.on(document, ['mouseup', 'touchend', 'touchcancel'], that._tapstop);\n _.on(document, ['mousemove', 'touchmove'], that._tapmove);\n\n // Prevent default touch event\n evt.preventDefault();\n\n // Trigger\n that._tapmove(evt);\n },\n\n _tapmove(evt) {\n const {options, cache} = that;\n const {lock, element, wrapper} = options;\n const b = wrapper.getBoundingClientRect();\n\n let x = 0, y = 0;\n if (evt) {\n const touch = evt && evt.touches && evt.touches[0];\n x = evt ? (touch || evt).clientX : 0;\n y = evt ? (touch || evt).clientY : 0;\n\n // Reset to bounds\n if (x < b.left) {\n x = b.left;\n } else if (x > b.left + b.width) {\n x = b.left + b.width;\n }\n if (y < b.top) {\n y = b.top;\n } else if (y > b.top + b.height) {\n y = b.top + b.height;\n }\n\n // Normalize\n x -= b.left;\n y -= b.top;\n } else if (cache) {\n x = cache.x * b.width;\n y = cache.y * b.height;\n }\n\n if (lock !== 'h') {\n element.style.left = `calc(${x / b.width * 100}% - ${element.offsetWidth / 2}px)`;\n }\n\n if (lock !== 'v') {\n element.style.top = `calc(${y / b.height * 100}% - ${element.offsetHeight / 2}px)`;\n }\n\n that.cache = {x: x / b.width, y: y / b.height};\n const cx = clamp(x / b.width);\n const cy = clamp(y / b.height);\n\n switch (lock) {\n case 'v':\n return options.onchange(cx);\n case 'h':\n return options.onchange(cy);\n default:\n return options.onchange(cx, cy);\n }\n },\n\n _tapstop() {\n that.options.onstop();\n _.off(document, ['mouseup', 'touchend', 'touchcancel'], that._tapstop);\n _.off(document, ['mousemove', 'touchmove'], that._tapmove);\n },\n\n trigger() {\n that._tapmove();\n },\n\n update(x = 0, y = 0) {\n const {left, top, width, height} = that.options.wrapper.getBoundingClientRect();\n\n if (that.options.lock === 'h') {\n y = x;\n }\n\n that._tapmove({\n clientX: left + width * x,\n clientY: top + height * y\n });\n },\n\n destroy() {\n const {options, _tapstart, _keyboard} = that;\n _.off(document, ['keydown', 'keyup'], _keyboard);\n _.off([options.wrapper, options.element], 'mousedown', _tapstart);\n _.off([options.wrapper, options.element], 'touchstart', _tapstart, {\n passive: false\n });\n }\n };\n\n // Initilize\n const {options, _tapstart, _keyboard} = that;\n _.on([options.wrapper, options.element], 'mousedown', _tapstart);\n _.on([options.wrapper, options.element], 'touchstart', _tapstart, {\n passive: false\n });\n\n _.on(document, ['keydown', 'keyup'], _keyboard);\n\n return that;\n}\n","import * as _ from '../utils/utils';\n\nexport default function Selectable(opt = {}) {\n opt = Object.assign({\n onchange: () => 0,\n className: '',\n elements: []\n }, opt);\n\n const onTap = _.on(opt.elements, 'click', evt => {\n opt.elements.forEach(e =>\n e.classList[evt.target === e ? 'add' : 'remove'](opt.className)\n );\n\n opt.onchange(evt);\n });\n\n return {\n destroy: () => _.off(...onTap)\n };\n}\n","/**\n * Micro positioning-engine\n * @param el\n * @param reference\n * @param pos\n * @param padding\n * @returns {{update(): void}}\n * @constructor\n */\nexport default function Nanopop({el, reference, padding = 8}) {\n\n // Positioning priorities for variants\n const vBehaviour = {\n start: 'sme',\n middle: 'mse',\n end: 'ems'\n };\n\n // Positioning priorities for general alignment\n const hBehaviour = {\n top: 'tbrl',\n right: 'rltb',\n bottom: 'btrl',\n left: 'lrbt'\n };\n\n const getInfo = ((cache = {}) => (pos, cached = cache[pos]) => {\n\n // Return cached value if possible\n if (cached) {\n return cached;\n }\n\n // Extract position and variant\n // Top-start -> top is \"position\" and \"start\" is the variant\n const [position, variant = 'middle'] = pos.split('-');\n\n // It's vertical if top or bottom is used as position\n const isVertical = (position === 'top' || position === 'bottom');\n\n // Cache value and return\n return cache[pos] = {\n position,\n variant,\n isVertical\n };\n })();\n\n return {\n\n /**\n * Re-aligns the element\n * @param pos Position string\n * @param useFallback If everything fails the element may be centered on the the entire screen ignoring the reference\n */\n update(pos, useFallback = false) {\n const {position, variant, isVertical} = getInfo(pos);\n const rb = reference.getBoundingClientRect();\n const eb = el.getBoundingClientRect();\n\n /**\n * Holds coordinates of top, left, bottom and right alignment\n */\n const positions = vertical => vertical ? {\n t: rb.top - eb.height - padding,\n b: rb.bottom + padding\n } : {\n r: rb.right + padding,\n l: rb.left - eb.width - padding\n };\n\n /**\n * Holds corresponding variants (start, middle, end)\n */\n const variants = vertical => vertical ? {\n s: rb.left + rb.width - eb.width,\n m: (-eb.width / 2) + (rb.left + rb.width / 2),\n e: rb.left\n } : {\n s: rb.bottom - eb.height,\n m: rb.bottom - rb.height / 2 - eb.height / 2,\n e: rb.bottom - rb.height\n };\n\n // Holds the last working positions\n const leastApplied = {};\n\n /**\n * Applies a position, example precedure with top-start: it'll\n * first try to satify the variant \"start\", if this fails it'll try\n * the remaining variants (in this case \"middle\" and \"end\")\n * @param positions Array of positions in the order they should be applied\n * @param positionVariants Variants, the first should be the one initially wanted\n * @param targetProperty The target property, defines if this is a horizontal or vertical aligment\n * @returns a value for targetProperty or null if none fits\n */\n const findFittingValue = (positions, positionVariants, targetProperty) => {\n const vertical = targetProperty === 'top';\n const elSize = vertical ? eb.height : eb.width;\n const winSize = window[vertical ? 'innerHeight' : 'innerWidth'];\n\n for (const posChar of positions) {\n const wantedValue = positionVariants[posChar];\n const wantedValueAsString = leastApplied[targetProperty] = `${wantedValue}px`;\n\n if (wantedValue > 0 && (wantedValue + elSize) < winSize) {\n return wantedValueAsString;\n }\n }\n\n return null;\n };\n\n\n for (const vertical of [isVertical, !isVertical]) {\n\n /**\n * Va and vb both define where the element is positioned (top, bottom, left, right)\n * and it's corresponding variant (start, middle, end). Since we're \"rotating\" the element\n * to ensure to (hopefully) find at least one fitting position the values need to be\n * defined during runtime.\n */\n const vaType = vertical ? 'top' : 'left';\n const vbType = vertical ? 'left' : 'top';\n\n // Actual values for top and bottom\n const vaValue = findFittingValue(hBehaviour[position], positions(vertical), vaType);\n const vbValue = findFittingValue(vBehaviour[variant], variants(vertical), vbType);\n\n // Both values work, apply them\n if (vaValue && vbValue) {\n el.style[vbType] = vbValue;\n el.style[vaType] = vaValue;\n return;\n }\n }\n\n // It failed to find a non-clipping position, if fallback is enable it'll use it - otherwise the last\n // Calculated values will be used.\n if (useFallback) {\n el.style.top = `${(window.innerHeight - eb.height) / 2}px`;\n el.style.left = `${(window.innerWidth - eb.width) / 2}px`;\n } else {\n el.style.left = leastApplied.left;\n el.style.top = leastApplied.top;\n }\n }\n };\n}\n","import * as _ from './utils/utils';\nimport {version} from '../../package';\nimport {parseToHSVA} from './utils/color';\nimport {HSVaColor} from './utils/hsvacolor';\nimport Moveable from './libs/moveable';\nimport Selectable from './libs/selectable';\nimport Nanopop from './libs/nanopop';\nimport buildPickr from './template';\n\nclass Pickr {\n\n // Will be used to prevent specific actions during initilization\n _initializingActive = true;\n\n // If the current color value should be recalculated\n _recalc = true;\n\n // Positioning engine and DOM-Tree\n _nanopop = null;\n _root = null;\n\n // Current and last color for comparison\n _color = HSVaColor();\n _lastColor = HSVaColor();\n _swatchColors = [];\n\n // Evenlistener name: [callbacks]\n _eventListener = {\n init: [],\n save: [],\n hide: [],\n show: [],\n clear: [],\n change: [],\n changestop: [],\n cancel: [],\n swatchselect: []\n };\n\n constructor(opt) {\n\n // Assign default values\n this.options = opt = Object.assign({\n appClass: null,\n theme: 'classic',\n useAsButton: false,\n padding: 8,\n disabled: false,\n comparison: true,\n closeOnScroll: false,\n outputPrecision: 0,\n lockOpacity: false,\n autoReposition: true,\n container: 'body',\n components: {\n interaction: {}\n },\n\n strings: {},\n swatches: null,\n inline: false,\n sliders: null,\n\n default: '#42445a',\n defaultRepresentation: null,\n position: 'bottom-middle',\n adjustableNumbers: true,\n showAlways: false,\n\n closeWithKey: 'Escape'\n }, opt);\n\n const {swatches, components, theme, sliders, lockOpacity, padding} = opt;\n\n if (['nano', 'monolith'].includes(theme) && !sliders) {\n opt.sliders = 'h';\n }\n\n // Check interaction section\n if (!components.interaction) {\n components.interaction = {};\n }\n\n // Overwrite palette if preview, opacity or hue are true\n const {preview, opacity, hue, palette} = components;\n components.opacity = (!lockOpacity && opacity);\n components.palette = palette || preview || opacity || hue;\n\n // Initialize picker\n this._preBuild();\n this._buildComponents();\n this._bindEvents();\n this._finalBuild();\n\n // Append pre-defined swatch colors\n if (swatches && swatches.length) {\n swatches.forEach(color => this.addSwatch(color));\n }\n\n // Initialize positioning engine\n const {button, app} = this._root;\n this._nanopop = Nanopop({\n reference: button,\n padding,\n el: app\n });\n\n // Initialize accessibility\n button.setAttribute('role', 'button');\n button.setAttribute('aria-label', 'toggle color picker dialog');\n\n // Initilization is finish, pickr is visible and ready for usage\n const that = this;\n requestAnimationFrame((function cb() {\n\n if (!app.offsetWidth && app.parentElement !== opt.container) {\n return requestAnimationFrame(cb);\n }\n\n // Apply default color\n that.setColor(opt.default);\n that._rePositioningPicker();\n\n // Initialize color representation\n if (opt.defaultRepresentation) {\n that._representation = opt.defaultRepresentation;\n that.setColorRepresentation(that._representation);\n }\n\n // Show pickr if locked\n if (opt.showAlways) {\n that.show();\n }\n\n // Initialization is done - pickr is usable, fire init event\n that._initializingActive = false;\n that._emit('init');\n }));\n }\n\n // Does only the absolutly basic thing to initialize the components\n _preBuild() {\n const opt = this.options;\n\n // Resolve elements\n for (const type of ['el', 'container']) {\n opt[type] = _.resolveElement(opt[type]);\n }\n\n // Create element and append it to body to\n // Prevent initialization errors\n this._root = buildPickr(opt);\n\n // Check if a custom button is used\n if (opt.useAsButton) {\n this._root.button = opt.el; // Replace button with customized button\n }\n\n opt.container.appendChild(this._root.root);\n }\n\n _finalBuild() {\n const opt = this.options;\n const root = this._root;\n\n // Remove from body\n opt.container.removeChild(root.root);\n\n if (opt.inline) {\n const parent = opt.el.parentElement;\n\n if (opt.el.nextSibling) {\n parent.insertBefore(root.app, opt.el.nextSibling);\n } else {\n parent.appendChild(root.app);\n }\n } else {\n opt.container.appendChild(root.app);\n }\n\n // Don't replace the the element if a custom button is used\n if (!opt.useAsButton) {\n\n // Replace element with actual color-picker\n opt.el.parentNode.replaceChild(root.root, opt.el);\n } else if (opt.inline) {\n opt.el.remove();\n }\n\n // Check if it should be immediatly disabled\n if (opt.disabled) {\n this.disable();\n }\n\n // Check if color comparison is disabled, if yes - remove transitions so everything keeps smoothly\n if (!opt.comparison) {\n root.button.style.transition = 'none';\n\n if (!opt.useAsButton) {\n root.preview.lastColor.style.transition = 'none';\n }\n }\n\n this.hide();\n }\n\n _buildComponents() {\n\n // Instance reference\n const inst = this;\n const cs = this.options.components;\n const sliders = (inst.options.sliders || 'v').repeat(2);\n const [so, sh] = sliders.match(/^[vh]+$/g) ? sliders : [];\n\n // Re-assign if null\n const getColor = () =>\n this._color || (this._color = this._lastColor.clone());\n\n const components = {\n\n palette: Moveable({\n element: inst._root.palette.picker,\n wrapper: inst._root.palette.palette,\n\n onstop: () => inst._emit('changestop', inst),\n onchange(x, y) {\n if (!cs.palette) {\n return;\n }\n\n const color = getColor();\n const {_root, options} = inst;\n const {lastColor, currentColor} = _root.preview;\n\n // Update the input field only if the user is currently not typing\n if (inst._recalc) {\n\n // Calculate saturation based on the position\n color.s = x * 100;\n\n // Calculate the value\n color.v = 100 - y * 100;\n\n // Prevent falling under zero\n color.v < 0 ? color.v = 0 : 0;\n inst._updateOutput();\n }\n\n // Set picker and gradient color\n const cssRGBaString = color.toRGBA().toString(0);\n this.element.style.background = cssRGBaString;\n this.wrapper.style.background = `\n linear-gradient(to top, rgba(0, 0, 0, ${color.a}), transparent),\n linear-gradient(to left, hsla(${color.h}, 100%, 50%, ${color.a}), rgba(255, 255, 255, ${color.a}))\n `;\n\n // Check if color is locked\n if (!options.comparison) {\n _root.button.style.color = cssRGBaString;\n\n // If the user changes the color, remove the cleared icon\n _root.button.classList.remove('clear');\n } else if (!options.useAsButton && !inst._lastColor) {\n\n // Apply color to both the last and current color since the current state is cleared\n lastColor.style.color = cssRGBaString;\n }\n\n // Check if there's a swatch which color matches the current one\n const hexa = color.toHEXA().toString();\n for (const {el, color} of inst._swatchColors) {\n el.classList[hexa === color.toHEXA().toString() ? 'add' : 'remove']('pcr-active');\n }\n\n // Change current color\n currentColor.style.color = cssRGBaString;\n }\n }),\n\n hue: Moveable({\n lock: sh === 'v' ? 'h' : 'v',\n element: inst._root.hue.picker,\n wrapper: inst._root.hue.slider,\n\n onstop: () => inst._emit('changestop', inst),\n onchange(v) {\n if (!cs.hue || !cs.palette) {\n return;\n }\n\n const color = getColor();\n\n // Calculate hue\n if (inst._recalc) {\n color.h = v * 360;\n }\n\n // Update color\n this.element.style.backgroundColor = `hsl(${color.h}, 100%, 50%)`;\n components.palette.trigger();\n }\n }),\n\n opacity: Moveable({\n lock: so === 'v' ? 'h' : 'v',\n element: inst._root.opacity.picker,\n wrapper: inst._root.opacity.slider,\n\n onstop: () => inst._emit('changestop', inst),\n onchange(v) {\n if (!cs.opacity || !cs.palette) {\n return;\n }\n\n const color = getColor();\n\n // Calculate opacity\n if (inst._recalc) {\n color.a = Math.round(v * 1e2) / 100;\n }\n\n // Update color\n this.element.style.background = `rgba(0, 0, 0, ${color.a})`;\n components.palette.trigger();\n }\n }),\n\n selectable: Selectable({\n elements: inst._root.interaction.options,\n className: 'active',\n\n onchange(e) {\n inst._representation = e.target.getAttribute('data-type').toUpperCase();\n inst._recalc && inst._updateOutput();\n }\n })\n };\n\n this._components = components;\n }\n\n _bindEvents() {\n const {_root, options} = this;\n\n const eventBindings = [\n\n // Clear color\n _.on(_root.interaction.clear, 'click', () => this._clearColor()),\n\n // Select last color on click\n _.on([\n _root.interaction.cancel,\n _root.preview.lastColor\n ], 'click', () => {\n this._emit('cancel', this);\n this.setHSVA(...(this._lastColor || this._color).toHSVA(), true);\n }),\n\n // Save color\n _.on(_root.interaction.save, 'click', () => {\n !this.applyColor() && !options.showAlways && this.hide();\n }),\n\n // User input\n _.on(_root.interaction.result, ['keyup', 'input'], e => {\n\n // Fire listener if initialization is finish and changed color was valid\n if (this.setColor(e.target.value, true) && !this._initializingActive) {\n this._emit('change', this._color);\n }\n\n e.stopImmediatePropagation();\n }),\n\n // Detect user input and disable auto-recalculation\n _.on(_root.interaction.result, ['focus', 'blur'], e => {\n this._recalc = e.type === 'blur';\n this._recalc && this._updateOutput();\n }),\n\n // Cancel input detection on color change\n _.on([\n _root.palette.palette,\n _root.palette.picker,\n _root.hue.slider,\n _root.hue.picker,\n _root.opacity.slider,\n _root.opacity.picker\n ], ['mousedown', 'touchstart'], () => this._recalc = true)\n ];\n\n // Provide hiding / showing abilities only if showAlways is false\n if (!options.showAlways) {\n const ck = options.closeWithKey;\n\n eventBindings.push(\n // Save and hide / show picker\n _.on(_root.button, 'click', () => this.isOpen() ? this.hide() : this.show()),\n\n // Close with escape key\n _.on(document, 'keyup', e => this.isOpen() && (e.key === ck || e.code === ck) && this.hide()),\n\n // Cancel selecting if the user taps behind the color picker\n _.on(document, ['touchstart', 'mousedown'], e => {\n if (this.isOpen() && !_.eventPath(e).some(el => el === _root.app || el === _root.button)) {\n this.hide();\n }\n }, {capture: true})\n );\n }\n\n // Make input adjustable if enabled\n if (options.adjustableNumbers) {\n const ranges = {\n rgba: [255, 255, 255, 1],\n hsva: [360, 100, 100, 1],\n hsla: [360, 100, 100, 1],\n cmyk: [100, 100, 100, 100]\n };\n\n _.adjustableInputNumbers(_root.interaction.result, (o, step, index) => {\n const range = ranges[this.getColorRepresentation().toLowerCase()];\n\n if (range) {\n const max = range[index];\n\n // Calculate next reasonable number\n const nv = o + (max >= 100 ? step * 1000 : step);\n\n // Apply range of zero up to max, fix floating-point issues\n return nv <= 0 ? 0 : Number((nv < max ? nv : max).toPrecision(3));\n }\n\n return o;\n });\n }\n\n if (options.autoReposition && !options.inline) {\n let timeout = null;\n const that = this;\n\n // Re-calc position on window resize, scroll and wheel\n eventBindings.push(\n _.on(window, ['scroll', 'resize'], () => {\n if (that.isOpen()) {\n\n if (options.closeOnScroll) {\n that.hide();\n }\n\n if (timeout === null) {\n timeout = setTimeout(() => timeout = null, 100);\n\n // Update position on every frame\n requestAnimationFrame(function rs() {\n that._rePositioningPicker();\n (timeout !== null) && requestAnimationFrame(rs);\n });\n } else {\n clearTimeout(timeout);\n timeout = setTimeout(() => timeout = null, 100);\n }\n }\n }, {capture: true})\n );\n }\n\n // Save bindings\n this._eventBindings = eventBindings;\n }\n\n _rePositioningPicker() {\n const {options} = this;\n\n // No repositioning needed if inline\n if (!options.inline) {\n this._nanopop.update(options.position, !this._recalc);\n }\n }\n\n _updateOutput() {\n const {_root, _color, options} = this;\n\n // Check if component is present\n if (_root.interaction.type()) {\n\n // Construct function name and call if present\n const method = `to${_root.interaction.type().getAttribute('data-type')}`;\n _root.interaction.result.value = typeof _color[method] === 'function' ?\n _color[method]().toString(options.outputPrecision) : '';\n }\n\n // Fire listener if initialization is finish\n if (!this._initializingActive && this._recalc) {\n this._emit('change', _color);\n }\n }\n\n _clearColor(silent = false) {\n const {_root, options} = this;\n\n // Change only the button color if it isn't customized\n if (!options.useAsButton) {\n _root.button.style.color = 'rgba(0, 0, 0, 0.15)';\n }\n\n _root.button.classList.add('clear');\n\n if (!options.showAlways) {\n this.hide();\n }\n\n this._lastColor = null;\n if (!this._initializingActive && !silent) {\n\n // Fire listener\n this._emit('save', null);\n this._emit('clear', this);\n }\n }\n\n _parseLocalColor(str) {\n const {values, type, a} = parseToHSVA(str);\n const {lockOpacity} = this.options;\n const alphaMakesAChange = a !== undefined && a !== 1;\n\n // If no opacity is applied, add undefined at the very end which gets\n // Set to 1 in setHSVA\n if (values && values.length === 3) {\n values[3] = undefined;\n }\n\n return {\n values: (!values || (lockOpacity && alphaMakesAChange)) ? null : values,\n type\n };\n }\n\n _emit(event, ...args) {\n this._eventListener[event].forEach(cb => cb(...args, this));\n }\n\n on(event, cb) {\n\n // Validate\n if (typeof cb === 'function' && typeof event === 'string' && event in this._eventListener) {\n this._eventListener[event].push(cb);\n }\n\n return this;\n }\n\n off(event, cb) {\n const callBacks = this._eventListener[event];\n\n if (callBacks) {\n const index = callBacks.indexOf(cb);\n\n if (~index) {\n callBacks.splice(index, 1);\n }\n }\n\n return this;\n }\n\n /**\n * Appends a color to the swatch palette\n * @param color\n * @returns {boolean}\n */\n addSwatch(color) {\n const {values} = this._parseLocalColor(color);\n\n if (values) {\n const {_swatchColors, _root} = this;\n const color = HSVaColor(...values);\n\n // Create new swatch HTMLElement\n const el = _.createElementFromString(\n `'}\n\n
\n
\n
\n \n
\n
\n\n
\n
\n
\n
\n\n
\n
\n
\n
\n\n
\n
\n
\n
\n
\n\n
\n\n
\n \n\n \n \n \n \n \n\n \n \n \n
\n
\n \n `);\n\n const int = root.interaction;\n\n // Select option which is not hidden\n int.options.find(o => !o.hidden && !o.classList.add('active'));\n\n // Create method to find currenlty active option\n int.type = () => int.options.find(e => e.classList.contains('active'));\n return root;\n}\n"],"sourceRoot":""} \ No newline at end of file diff --git a/dist/themes/classic.min.css b/dist/themes/classic.min.css index a06708a9..d87b3cac 100644 --- a/dist/themes/classic.min.css +++ b/dist/themes/classic.min.css @@ -1 +1 @@ -/*! Pickr 1.5.1 MIT | https://github.com/Simonwep/pickr */.pickr{position:relative;overflow:visible;transform:translateY(0)}.pickr *{box-sizing:border-box;outline:none;border:none;-webkit-appearance:none}.pickr .pcr-button{position:relative;height:2em;width:2em;padding:.5em;cursor:pointer;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;border-radius:.15em;background:url('data:image/svg+xml;utf8, ') no-repeat 50%;background-size:0;transition:all .3s}.pickr .pcr-button:before{background:url('data:image/svg+xml;utf8, ');background-size:.5em;z-index:-1;z-index:auto}.pickr .pcr-button:after,.pickr .pcr-button:before{position:absolute;content:"";top:0;left:0;width:100%;height:100%;border-radius:.15em}.pickr .pcr-button:after{transition:background .3s;background:currentColor}.pickr .pcr-button.clear{background-size:70%}.pickr .pcr-button.clear:before{opacity:0}.pickr .pcr-button.clear:focus{box-shadow:0 0 0 1px hsla(0,0%,100%,.85),0 0 0 3px currentColor}.pickr .pcr-button.disabled{cursor:not-allowed}.pcr-app *,.pickr *{box-sizing:border-box;outline:none;border:none;-webkit-appearance:none}.pcr-app button.pcr-active,.pcr-app button:focus,.pcr-app input.pcr-active,.pcr-app input:focus,.pickr button.pcr-active,.pickr button:focus,.pickr input.pcr-active,.pickr input:focus{box-shadow:0 0 0 1px hsla(0,0%,100%,.85),0 0 0 3px currentColor}.pcr-app .pcr-palette,.pcr-app .pcr-slider,.pickr .pcr-palette,.pickr .pcr-slider{transition:box-shadow .3s}.pcr-app .pcr-palette:focus,.pcr-app .pcr-slider:focus,.pickr .pcr-palette:focus,.pickr .pcr-slider:focus{box-shadow:0 0 0 1px hsla(0,0%,100%,.85),0 0 0 3px rgba(0,0,0,.25)}.pcr-app{position:fixed;display:flex;flex-direction:column;z-index:10000;border-radius:.1em;background:#fff;opacity:0;visibility:hidden;transition:opacity .3s,visibility 0s .3s;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;box-shadow:0 .15em 1.5em 0 rgba(0,0,0,.1),0 0 1em 0 rgba(0,0,0,.03);left:0;top:0}.pcr-app.visible{transition:opacity .3s;visibility:visible;opacity:1}.pcr-app .pcr-swatches{display:flex;flex-wrap:wrap;margin-top:.75em}.pcr-app .pcr-swatches.pcr-last{margin:0}@supports (display:grid){.pcr-app .pcr-swatches{display:grid;align-items:center;grid-template-columns:repeat(auto-fit,1.75em)}}.pcr-app .pcr-swatches>button{font-size:1em;position:relative;width:calc(1.75em - 5px);height:calc(1.75em - 5px);border-radius:.15em;cursor:pointer;margin:2.5px;flex-shrink:0;justify-self:center;transition:all .15s;overflow:hidden;background:transparent;z-index:1}.pcr-app .pcr-swatches>button:before{position:absolute;content:"";top:0;left:0;width:100%;height:100%;background:url('data:image/svg+xml;utf8, ');background-size:6px;border-radius:.15em;z-index:-1}.pcr-app .pcr-swatches>button:after{content:"";position:absolute;top:0;left:0;width:100%;height:100%;background:currentColor;border:1px solid rgba(0,0,0,.05);border-radius:.15em;box-sizing:border-box}.pcr-app .pcr-swatches>button:hover{-webkit-filter:brightness(1.05);filter:brightness(1.05)}.pcr-app .pcr-interaction{display:flex;flex-wrap:wrap;align-items:center;margin:0 -.2em}.pcr-app .pcr-interaction>*{margin:0 .2em}.pcr-app .pcr-interaction input{letter-spacing:.07em;font-size:.75em;text-align:center;cursor:pointer;color:#75797e;background:#f1f3f4;border-radius:.15em;transition:all .15s;padding:.45em .5em;margin-top:.75em}.pcr-app .pcr-interaction input:hover{-webkit-filter:brightness(.975);filter:brightness(.975)}.pcr-app .pcr-interaction input:focus{box-shadow:0 0 0 1px hsla(0,0%,100%,.85),0 0 0 3px rgba(66,133,244,.75)}.pcr-app .pcr-interaction .pcr-result{color:#75797e;text-align:left;flex:1 1 8em;min-width:8em;transition:all .2s;border-radius:.15em;background:#f1f3f4;cursor:text}.pcr-app .pcr-interaction .pcr-result::-moz-selection{background:#4285f4;color:#fff}.pcr-app .pcr-interaction .pcr-result::selection{background:#4285f4;color:#fff}.pcr-app .pcr-interaction .pcr-type.active{color:#fff;background:#4285f4}.pcr-app .pcr-interaction .pcr-cancel,.pcr-app .pcr-interaction .pcr-clear,.pcr-app .pcr-interaction .pcr-save{width:auto;color:#fff}.pcr-app .pcr-interaction .pcr-cancel:hover,.pcr-app .pcr-interaction .pcr-clear:hover,.pcr-app .pcr-interaction .pcr-save:hover{-webkit-filter:brightness(.925);filter:brightness(.925)}.pcr-app .pcr-interaction .pcr-save{background:#4285f4}.pcr-app .pcr-interaction .pcr-cancel,.pcr-app .pcr-interaction .pcr-clear{background:#f44250}.pcr-app .pcr-interaction .pcr-cancel:focus,.pcr-app .pcr-interaction .pcr-clear:focus{box-shadow:0 0 0 1px hsla(0,0%,100%,.85),0 0 0 3px rgba(244,66,80,.75)}.pcr-app .pcr-selection .pcr-picker{position:absolute;height:18px;width:18px;border:2px solid #fff;border-radius:100%;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.pcr-app .pcr-selection .pcr-color-chooser,.pcr-app .pcr-selection .pcr-color-opacity,.pcr-app .pcr-selection .pcr-color-palette{position:relative;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;display:flex;flex-direction:column;cursor:grab;cursor:-webkit-grab}.pcr-app .pcr-selection .pcr-color-chooser:active,.pcr-app .pcr-selection .pcr-color-opacity:active,.pcr-app .pcr-selection .pcr-color-palette:active{cursor:grabbing;cursor:-webkit-grabbing}.pcr-app[data-theme=classic]{width:28.5em;max-width:95vw;padding:.8em}.pcr-app[data-theme=classic] .pcr-selection{display:flex;justify-content:space-between;flex-grow:1}.pcr-app[data-theme=classic] .pcr-selection .pcr-color-preview{position:relative;z-index:1;width:2em;display:flex;flex-direction:column;justify-content:space-between;margin-right:.75em}.pcr-app[data-theme=classic] .pcr-selection .pcr-color-preview:before{position:absolute;content:"";top:0;left:0;width:100%;height:100%;background:url('data:image/svg+xml;utf8, ');background-size:.5em;border-radius:.15em;z-index:-1}.pcr-app[data-theme=classic] .pcr-selection .pcr-color-preview .pcr-last-color{cursor:pointer;transition:background-color .3s,box-shadow .3s;border-radius:.15em .15em 0 0;z-index:2}.pcr-app[data-theme=classic] .pcr-selection .pcr-color-preview .pcr-current-color{border-radius:0 0 .15em .15em}.pcr-app[data-theme=classic] .pcr-selection .pcr-color-preview .pcr-current-color,.pcr-app[data-theme=classic] .pcr-selection .pcr-color-preview .pcr-last-color{background:currentColor;width:100%;height:50%}.pcr-app[data-theme=classic] .pcr-selection .pcr-color-palette{width:100%;height:8em;z-index:1}.pcr-app[data-theme=classic] .pcr-selection .pcr-color-palette .pcr-palette{flex-grow:1;border-radius:.15em}.pcr-app[data-theme=classic] .pcr-selection .pcr-color-palette .pcr-palette:before{position:absolute;content:"";top:0;left:0;width:100%;height:100%;background:url('data:image/svg+xml;utf8, ');background-size:.5em;border-radius:.15em;z-index:-1}.pcr-app[data-theme=classic] .pcr-selection .pcr-color-chooser,.pcr-app[data-theme=classic] .pcr-selection .pcr-color-opacity{margin-left:.75em}.pcr-app[data-theme=classic] .pcr-selection .pcr-color-chooser .pcr-picker,.pcr-app[data-theme=classic] .pcr-selection .pcr-color-opacity .pcr-picker{left:50%;transform:translateX(-50%)}.pcr-app[data-theme=classic] .pcr-selection .pcr-color-chooser .pcr-slider,.pcr-app[data-theme=classic] .pcr-selection .pcr-color-opacity .pcr-slider{width:8px;flex-grow:1;border-radius:50em}.pcr-app[data-theme=classic] .pcr-selection .pcr-color-chooser .pcr-slider{background:linear-gradient(180deg,red,#ff0,#0f0,#0ff,#00f,#f0f,red)}.pcr-app[data-theme=classic] .pcr-selection .pcr-color-opacity .pcr-slider{background:linear-gradient(180deg,transparent,#000),url('data:image/svg+xml;utf8, ');background-size:100%,50%} \ No newline at end of file +/*! Pickr 1.5.1 MIT | https://github.com/Simonwep/pickr */.pickr{position:relative;overflow:visible;transform:translateY(0)}.pickr *{box-sizing:border-box;outline:none;border:none;-webkit-appearance:none}.pickr .pcr-button{position:relative;height:2em;width:2em;padding:.5em;cursor:pointer;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;border-radius:.15em;background:url('data:image/svg+xml;utf8, ') no-repeat 50%;background-size:0;transition:all .3s}.pickr .pcr-button:before{background:url('data:image/svg+xml;utf8, ');background-size:.5em;z-index:-1;z-index:auto}.pickr .pcr-button:after,.pickr .pcr-button:before{position:absolute;content:"";top:0;left:0;width:100%;height:100%;border-radius:.15em}.pickr .pcr-button:after{transition:background .3s;background:currentColor}.pickr .pcr-button.clear{background-size:70%}.pickr .pcr-button.clear:before{opacity:0}.pickr .pcr-button.clear:focus{box-shadow:0 0 0 1px hsla(0,0%,100%,.85),0 0 0 3px currentColor}.pickr .pcr-button.disabled{cursor:not-allowed}.pcr-app *,.pickr *{box-sizing:border-box;outline:none;border:none;-webkit-appearance:none}.pcr-app button.pcr-active,.pcr-app button:focus,.pcr-app input.pcr-active,.pcr-app input:focus,.pickr button.pcr-active,.pickr button:focus,.pickr input.pcr-active,.pickr input:focus{box-shadow:0 0 0 1px hsla(0,0%,100%,.85),0 0 0 3px currentColor}.pcr-app .pcr-palette,.pcr-app .pcr-slider,.pickr .pcr-palette,.pickr .pcr-slider{transition:box-shadow .3s}.pcr-app .pcr-palette:focus,.pcr-app .pcr-slider:focus,.pickr .pcr-palette:focus,.pickr .pcr-slider:focus{box-shadow:0 0 0 1px hsla(0,0%,100%,.85),0 0 0 3px rgba(0,0,0,.25)}.pcr-app{position:fixed;display:flex;flex-direction:column;z-index:10000;border-radius:.1em;background:#fff;opacity:0;visibility:hidden;transition:opacity .3s,visibility 0s .3s;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;box-shadow:0 .15em 1.5em 0 rgba(0,0,0,.1),0 0 1em 0 rgba(0,0,0,.03);left:0;top:0}.pcr-app.visible{transition:opacity .3s;visibility:visible;opacity:1}.pcr-app .pcr-swatches{display:flex;flex-wrap:wrap;margin-top:.75em}.pcr-app .pcr-swatches.pcr-last{margin:0}@supports (display:grid){.pcr-app .pcr-swatches{display:grid;align-items:center;grid-template-columns:repeat(auto-fit,1.75em)}}.pcr-app .pcr-swatches>button{font-size:1em;position:relative;width:calc(1.75em - 5px);height:calc(1.75em - 5px);border-radius:.15em;cursor:pointer;margin:2.5px;flex-shrink:0;justify-self:center;transition:all .15s;overflow:hidden;background:transparent;z-index:1}.pcr-app .pcr-swatches>button:before{position:absolute;content:"";top:0;left:0;width:100%;height:100%;background:url('data:image/svg+xml;utf8, ');background-size:6px;border-radius:.15em;z-index:-1}.pcr-app .pcr-swatches>button:after{content:"";position:absolute;top:0;left:0;width:100%;height:100%;background:currentColor;border:1px solid rgba(0,0,0,.05);border-radius:.15em;box-sizing:border-box}.pcr-app .pcr-swatches>button:hover{-webkit-filter:brightness(1.05);filter:brightness(1.05)}.pcr-app .pcr-swatches>button:not(.pcr-active){box-shadow:none}.pcr-app .pcr-interaction{display:flex;flex-wrap:wrap;align-items:center;margin:0 -.2em}.pcr-app .pcr-interaction>*{margin:0 .2em}.pcr-app .pcr-interaction input{letter-spacing:.07em;font-size:.75em;text-align:center;cursor:pointer;color:#75797e;background:#f1f3f4;border-radius:.15em;transition:all .15s;padding:.45em .5em;margin-top:.75em}.pcr-app .pcr-interaction input:hover{-webkit-filter:brightness(.975);filter:brightness(.975)}.pcr-app .pcr-interaction input:focus{box-shadow:0 0 0 1px hsla(0,0%,100%,.85),0 0 0 3px rgba(66,133,244,.75)}.pcr-app .pcr-interaction .pcr-result{color:#75797e;text-align:left;flex:1 1 8em;min-width:8em;transition:all .2s;border-radius:.15em;background:#f1f3f4;cursor:text}.pcr-app .pcr-interaction .pcr-result::-moz-selection{background:#4285f4;color:#fff}.pcr-app .pcr-interaction .pcr-result::selection{background:#4285f4;color:#fff}.pcr-app .pcr-interaction .pcr-type.active{color:#fff;background:#4285f4}.pcr-app .pcr-interaction .pcr-cancel,.pcr-app .pcr-interaction .pcr-clear,.pcr-app .pcr-interaction .pcr-save{width:auto;color:#fff}.pcr-app .pcr-interaction .pcr-cancel:hover,.pcr-app .pcr-interaction .pcr-clear:hover,.pcr-app .pcr-interaction .pcr-save:hover{-webkit-filter:brightness(.925);filter:brightness(.925)}.pcr-app .pcr-interaction .pcr-save{background:#4285f4}.pcr-app .pcr-interaction .pcr-cancel,.pcr-app .pcr-interaction .pcr-clear{background:#f44250}.pcr-app .pcr-interaction .pcr-cancel:focus,.pcr-app .pcr-interaction .pcr-clear:focus{box-shadow:0 0 0 1px hsla(0,0%,100%,.85),0 0 0 3px rgba(244,66,80,.75)}.pcr-app .pcr-selection .pcr-picker{position:absolute;height:18px;width:18px;border:2px solid #fff;border-radius:100%;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.pcr-app .pcr-selection .pcr-color-chooser,.pcr-app .pcr-selection .pcr-color-opacity,.pcr-app .pcr-selection .pcr-color-palette{position:relative;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;display:flex;flex-direction:column;cursor:grab;cursor:-webkit-grab}.pcr-app .pcr-selection .pcr-color-chooser:active,.pcr-app .pcr-selection .pcr-color-opacity:active,.pcr-app .pcr-selection .pcr-color-palette:active{cursor:grabbing;cursor:-webkit-grabbing}.pcr-app[data-theme=classic]{width:28.5em;max-width:95vw;padding:.8em}.pcr-app[data-theme=classic] .pcr-selection{display:flex;justify-content:space-between;flex-grow:1}.pcr-app[data-theme=classic] .pcr-selection .pcr-color-preview{position:relative;z-index:1;width:2em;display:flex;flex-direction:column;justify-content:space-between;margin-right:.75em}.pcr-app[data-theme=classic] .pcr-selection .pcr-color-preview:before{position:absolute;content:"";top:0;left:0;width:100%;height:100%;background:url('data:image/svg+xml;utf8, ');background-size:.5em;border-radius:.15em;z-index:-1}.pcr-app[data-theme=classic] .pcr-selection .pcr-color-preview .pcr-last-color{cursor:pointer;transition:background-color .3s,box-shadow .3s;border-radius:.15em .15em 0 0;z-index:2}.pcr-app[data-theme=classic] .pcr-selection .pcr-color-preview .pcr-current-color{border-radius:0 0 .15em .15em}.pcr-app[data-theme=classic] .pcr-selection .pcr-color-preview .pcr-current-color,.pcr-app[data-theme=classic] .pcr-selection .pcr-color-preview .pcr-last-color{background:currentColor;width:100%;height:50%}.pcr-app[data-theme=classic] .pcr-selection .pcr-color-palette{width:100%;height:8em;z-index:1}.pcr-app[data-theme=classic] .pcr-selection .pcr-color-palette .pcr-palette{flex-grow:1;border-radius:.15em}.pcr-app[data-theme=classic] .pcr-selection .pcr-color-palette .pcr-palette:before{position:absolute;content:"";top:0;left:0;width:100%;height:100%;background:url('data:image/svg+xml;utf8, ');background-size:.5em;border-radius:.15em;z-index:-1}.pcr-app[data-theme=classic] .pcr-selection .pcr-color-chooser,.pcr-app[data-theme=classic] .pcr-selection .pcr-color-opacity{margin-left:.75em}.pcr-app[data-theme=classic] .pcr-selection .pcr-color-chooser .pcr-picker,.pcr-app[data-theme=classic] .pcr-selection .pcr-color-opacity .pcr-picker{left:50%;transform:translateX(-50%)}.pcr-app[data-theme=classic] .pcr-selection .pcr-color-chooser .pcr-slider,.pcr-app[data-theme=classic] .pcr-selection .pcr-color-opacity .pcr-slider{width:8px;flex-grow:1;border-radius:50em}.pcr-app[data-theme=classic] .pcr-selection .pcr-color-chooser .pcr-slider{background:linear-gradient(180deg,red,#ff0,#0f0,#0ff,#00f,#f0f,red)}.pcr-app[data-theme=classic] .pcr-selection .pcr-color-opacity .pcr-slider{background:linear-gradient(180deg,transparent,#000),url('data:image/svg+xml;utf8, ');background-size:100%,50%} \ No newline at end of file diff --git a/dist/themes/monolith.min.css b/dist/themes/monolith.min.css index 4cced837..6c0a3779 100644 --- a/dist/themes/monolith.min.css +++ b/dist/themes/monolith.min.css @@ -1 +1 @@ -/*! Pickr 1.5.1 MIT | https://github.com/Simonwep/pickr */.pickr{position:relative;overflow:visible;transform:translateY(0)}.pickr *{box-sizing:border-box;outline:none;border:none;-webkit-appearance:none}.pickr .pcr-button{position:relative;height:2em;width:2em;padding:.5em;cursor:pointer;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;border-radius:.15em;background:url('data:image/svg+xml;utf8, ') no-repeat 50%;background-size:0;transition:all .3s}.pickr .pcr-button:before{background:url('data:image/svg+xml;utf8, ');background-size:.5em;z-index:-1;z-index:auto}.pickr .pcr-button:after,.pickr .pcr-button:before{position:absolute;content:"";top:0;left:0;width:100%;height:100%;border-radius:.15em}.pickr .pcr-button:after{transition:background .3s;background:currentColor}.pickr .pcr-button.clear{background-size:70%}.pickr .pcr-button.clear:before{opacity:0}.pickr .pcr-button.clear:focus{box-shadow:0 0 0 1px hsla(0,0%,100%,.85),0 0 0 3px currentColor}.pickr .pcr-button.disabled{cursor:not-allowed}.pcr-app *,.pickr *{box-sizing:border-box;outline:none;border:none;-webkit-appearance:none}.pcr-app button.pcr-active,.pcr-app button:focus,.pcr-app input.pcr-active,.pcr-app input:focus,.pickr button.pcr-active,.pickr button:focus,.pickr input.pcr-active,.pickr input:focus{box-shadow:0 0 0 1px hsla(0,0%,100%,.85),0 0 0 3px currentColor}.pcr-app .pcr-palette,.pcr-app .pcr-slider,.pickr .pcr-palette,.pickr .pcr-slider{transition:box-shadow .3s}.pcr-app .pcr-palette:focus,.pcr-app .pcr-slider:focus,.pickr .pcr-palette:focus,.pickr .pcr-slider:focus{box-shadow:0 0 0 1px hsla(0,0%,100%,.85),0 0 0 3px rgba(0,0,0,.25)}.pcr-app{position:fixed;display:flex;flex-direction:column;z-index:10000;border-radius:.1em;background:#fff;opacity:0;visibility:hidden;transition:opacity .3s,visibility 0s .3s;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;box-shadow:0 .15em 1.5em 0 rgba(0,0,0,.1),0 0 1em 0 rgba(0,0,0,.03);left:0;top:0}.pcr-app.visible{transition:opacity .3s;visibility:visible;opacity:1}.pcr-app .pcr-swatches{display:flex;flex-wrap:wrap;margin-top:.75em}.pcr-app .pcr-swatches.pcr-last{margin:0}@supports (display:grid){.pcr-app .pcr-swatches{display:grid;align-items:center;grid-template-columns:repeat(auto-fit,1.75em)}}.pcr-app .pcr-swatches>button{font-size:1em;position:relative;width:calc(1.75em - 5px);height:calc(1.75em - 5px);border-radius:.15em;cursor:pointer;margin:2.5px;flex-shrink:0;justify-self:center;transition:all .15s;overflow:hidden;background:transparent;z-index:1}.pcr-app .pcr-swatches>button:before{position:absolute;content:"";top:0;left:0;width:100%;height:100%;background:url('data:image/svg+xml;utf8, ');background-size:6px;border-radius:.15em;z-index:-1}.pcr-app .pcr-swatches>button:after{content:"";position:absolute;top:0;left:0;width:100%;height:100%;background:currentColor;border:1px solid rgba(0,0,0,.05);border-radius:.15em;box-sizing:border-box}.pcr-app .pcr-swatches>button:hover{-webkit-filter:brightness(1.05);filter:brightness(1.05)}.pcr-app .pcr-interaction{display:flex;flex-wrap:wrap;align-items:center;margin:0 -.2em}.pcr-app .pcr-interaction>*{margin:0 .2em}.pcr-app .pcr-interaction input{letter-spacing:.07em;font-size:.75em;text-align:center;cursor:pointer;color:#75797e;background:#f1f3f4;border-radius:.15em;transition:all .15s;padding:.45em .5em;margin-top:.75em}.pcr-app .pcr-interaction input:hover{-webkit-filter:brightness(.975);filter:brightness(.975)}.pcr-app .pcr-interaction input:focus{box-shadow:0 0 0 1px hsla(0,0%,100%,.85),0 0 0 3px rgba(66,133,244,.75)}.pcr-app .pcr-interaction .pcr-result{color:#75797e;text-align:left;flex:1 1 8em;min-width:8em;transition:all .2s;border-radius:.15em;background:#f1f3f4;cursor:text}.pcr-app .pcr-interaction .pcr-result::-moz-selection{background:#4285f4;color:#fff}.pcr-app .pcr-interaction .pcr-result::selection{background:#4285f4;color:#fff}.pcr-app .pcr-interaction .pcr-type.active{color:#fff;background:#4285f4}.pcr-app .pcr-interaction .pcr-cancel,.pcr-app .pcr-interaction .pcr-clear,.pcr-app .pcr-interaction .pcr-save{width:auto;color:#fff}.pcr-app .pcr-interaction .pcr-cancel:hover,.pcr-app .pcr-interaction .pcr-clear:hover,.pcr-app .pcr-interaction .pcr-save:hover{-webkit-filter:brightness(.925);filter:brightness(.925)}.pcr-app .pcr-interaction .pcr-save{background:#4285f4}.pcr-app .pcr-interaction .pcr-cancel,.pcr-app .pcr-interaction .pcr-clear{background:#f44250}.pcr-app .pcr-interaction .pcr-cancel:focus,.pcr-app .pcr-interaction .pcr-clear:focus{box-shadow:0 0 0 1px hsla(0,0%,100%,.85),0 0 0 3px rgba(244,66,80,.75)}.pcr-app .pcr-selection .pcr-picker{position:absolute;height:18px;width:18px;border:2px solid #fff;border-radius:100%;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.pcr-app .pcr-selection .pcr-color-chooser,.pcr-app .pcr-selection .pcr-color-opacity,.pcr-app .pcr-selection .pcr-color-palette{position:relative;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;display:flex;flex-direction:column;cursor:grab;cursor:-webkit-grab}.pcr-app .pcr-selection .pcr-color-chooser:active,.pcr-app .pcr-selection .pcr-color-opacity:active,.pcr-app .pcr-selection .pcr-color-palette:active{cursor:grabbing;cursor:-webkit-grabbing}.pcr-app[data-theme=monolith]{width:14.25em;max-width:95vw;padding:.8em}.pcr-app[data-theme=monolith] .pcr-selection{display:flex;flex-direction:column;justify-content:space-between;flex-grow:1}.pcr-app[data-theme=monolith] .pcr-selection .pcr-color-preview{position:relative;z-index:1;width:100%;height:1em;display:flex;flex-direction:row;justify-content:space-between;margin-bottom:.5em}.pcr-app[data-theme=monolith] .pcr-selection .pcr-color-preview:before{position:absolute;content:"";top:0;left:0;width:100%;height:100%;background:url('data:image/svg+xml;utf8, ');background-size:.5em;border-radius:.15em;z-index:-1}.pcr-app[data-theme=monolith] .pcr-selection .pcr-color-preview .pcr-last-color{cursor:pointer;transition:background-color .3s,box-shadow .3s;border-radius:.15em 0 0 .15em;z-index:2}.pcr-app[data-theme=monolith] .pcr-selection .pcr-color-preview .pcr-current-color{border-radius:0 .15em .15em 0}.pcr-app[data-theme=monolith] .pcr-selection .pcr-color-preview .pcr-current-color,.pcr-app[data-theme=monolith] .pcr-selection .pcr-color-preview .pcr-last-color{background:currentColor;width:50%;height:100%}.pcr-app[data-theme=monolith] .pcr-selection .pcr-color-palette{width:100%;height:8em;z-index:1}.pcr-app[data-theme=monolith] .pcr-selection .pcr-color-palette .pcr-palette{border-radius:.15em;width:100%;height:100%}.pcr-app[data-theme=monolith] .pcr-selection .pcr-color-palette .pcr-palette:before{position:absolute;content:"";top:0;left:0;width:100%;height:100%;background:url('data:image/svg+xml;utf8, ');background-size:.5em;border-radius:.15em;z-index:-1}.pcr-app[data-theme=monolith] .pcr-selection .pcr-color-chooser,.pcr-app[data-theme=monolith] .pcr-selection .pcr-color-opacity{height:.5em;margin-top:.75em}.pcr-app[data-theme=monolith] .pcr-selection .pcr-color-chooser .pcr-picker,.pcr-app[data-theme=monolith] .pcr-selection .pcr-color-opacity .pcr-picker{top:50%;transform:translateY(-50%)}.pcr-app[data-theme=monolith] .pcr-selection .pcr-color-chooser .pcr-slider,.pcr-app[data-theme=monolith] .pcr-selection .pcr-color-opacity .pcr-slider{flex-grow:1;border-radius:50em}.pcr-app[data-theme=monolith] .pcr-selection .pcr-color-chooser .pcr-slider{background:linear-gradient(90deg,red,#ff0,#0f0,#0ff,#00f,#f0f,red)}.pcr-app[data-theme=monolith] .pcr-selection .pcr-color-opacity .pcr-slider{background:linear-gradient(90deg,transparent,#000),url('data:image/svg+xml;utf8, ');background-size:100%,.25em} \ No newline at end of file +/*! Pickr 1.5.1 MIT | https://github.com/Simonwep/pickr */.pickr{position:relative;overflow:visible;transform:translateY(0)}.pickr *{box-sizing:border-box;outline:none;border:none;-webkit-appearance:none}.pickr .pcr-button{position:relative;height:2em;width:2em;padding:.5em;cursor:pointer;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;border-radius:.15em;background:url('data:image/svg+xml;utf8, ') no-repeat 50%;background-size:0;transition:all .3s}.pickr .pcr-button:before{background:url('data:image/svg+xml;utf8, ');background-size:.5em;z-index:-1;z-index:auto}.pickr .pcr-button:after,.pickr .pcr-button:before{position:absolute;content:"";top:0;left:0;width:100%;height:100%;border-radius:.15em}.pickr .pcr-button:after{transition:background .3s;background:currentColor}.pickr .pcr-button.clear{background-size:70%}.pickr .pcr-button.clear:before{opacity:0}.pickr .pcr-button.clear:focus{box-shadow:0 0 0 1px hsla(0,0%,100%,.85),0 0 0 3px currentColor}.pickr .pcr-button.disabled{cursor:not-allowed}.pcr-app *,.pickr *{box-sizing:border-box;outline:none;border:none;-webkit-appearance:none}.pcr-app button.pcr-active,.pcr-app button:focus,.pcr-app input.pcr-active,.pcr-app input:focus,.pickr button.pcr-active,.pickr button:focus,.pickr input.pcr-active,.pickr input:focus{box-shadow:0 0 0 1px hsla(0,0%,100%,.85),0 0 0 3px currentColor}.pcr-app .pcr-palette,.pcr-app .pcr-slider,.pickr .pcr-palette,.pickr .pcr-slider{transition:box-shadow .3s}.pcr-app .pcr-palette:focus,.pcr-app .pcr-slider:focus,.pickr .pcr-palette:focus,.pickr .pcr-slider:focus{box-shadow:0 0 0 1px hsla(0,0%,100%,.85),0 0 0 3px rgba(0,0,0,.25)}.pcr-app{position:fixed;display:flex;flex-direction:column;z-index:10000;border-radius:.1em;background:#fff;opacity:0;visibility:hidden;transition:opacity .3s,visibility 0s .3s;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;box-shadow:0 .15em 1.5em 0 rgba(0,0,0,.1),0 0 1em 0 rgba(0,0,0,.03);left:0;top:0}.pcr-app.visible{transition:opacity .3s;visibility:visible;opacity:1}.pcr-app .pcr-swatches{display:flex;flex-wrap:wrap;margin-top:.75em}.pcr-app .pcr-swatches.pcr-last{margin:0}@supports (display:grid){.pcr-app .pcr-swatches{display:grid;align-items:center;grid-template-columns:repeat(auto-fit,1.75em)}}.pcr-app .pcr-swatches>button{font-size:1em;position:relative;width:calc(1.75em - 5px);height:calc(1.75em - 5px);border-radius:.15em;cursor:pointer;margin:2.5px;flex-shrink:0;justify-self:center;transition:all .15s;overflow:hidden;background:transparent;z-index:1}.pcr-app .pcr-swatches>button:before{position:absolute;content:"";top:0;left:0;width:100%;height:100%;background:url('data:image/svg+xml;utf8, ');background-size:6px;border-radius:.15em;z-index:-1}.pcr-app .pcr-swatches>button:after{content:"";position:absolute;top:0;left:0;width:100%;height:100%;background:currentColor;border:1px solid rgba(0,0,0,.05);border-radius:.15em;box-sizing:border-box}.pcr-app .pcr-swatches>button:hover{-webkit-filter:brightness(1.05);filter:brightness(1.05)}.pcr-app .pcr-swatches>button:not(.pcr-active){box-shadow:none}.pcr-app .pcr-interaction{display:flex;flex-wrap:wrap;align-items:center;margin:0 -.2em}.pcr-app .pcr-interaction>*{margin:0 .2em}.pcr-app .pcr-interaction input{letter-spacing:.07em;font-size:.75em;text-align:center;cursor:pointer;color:#75797e;background:#f1f3f4;border-radius:.15em;transition:all .15s;padding:.45em .5em;margin-top:.75em}.pcr-app .pcr-interaction input:hover{-webkit-filter:brightness(.975);filter:brightness(.975)}.pcr-app .pcr-interaction input:focus{box-shadow:0 0 0 1px hsla(0,0%,100%,.85),0 0 0 3px rgba(66,133,244,.75)}.pcr-app .pcr-interaction .pcr-result{color:#75797e;text-align:left;flex:1 1 8em;min-width:8em;transition:all .2s;border-radius:.15em;background:#f1f3f4;cursor:text}.pcr-app .pcr-interaction .pcr-result::-moz-selection{background:#4285f4;color:#fff}.pcr-app .pcr-interaction .pcr-result::selection{background:#4285f4;color:#fff}.pcr-app .pcr-interaction .pcr-type.active{color:#fff;background:#4285f4}.pcr-app .pcr-interaction .pcr-cancel,.pcr-app .pcr-interaction .pcr-clear,.pcr-app .pcr-interaction .pcr-save{width:auto;color:#fff}.pcr-app .pcr-interaction .pcr-cancel:hover,.pcr-app .pcr-interaction .pcr-clear:hover,.pcr-app .pcr-interaction .pcr-save:hover{-webkit-filter:brightness(.925);filter:brightness(.925)}.pcr-app .pcr-interaction .pcr-save{background:#4285f4}.pcr-app .pcr-interaction .pcr-cancel,.pcr-app .pcr-interaction .pcr-clear{background:#f44250}.pcr-app .pcr-interaction .pcr-cancel:focus,.pcr-app .pcr-interaction .pcr-clear:focus{box-shadow:0 0 0 1px hsla(0,0%,100%,.85),0 0 0 3px rgba(244,66,80,.75)}.pcr-app .pcr-selection .pcr-picker{position:absolute;height:18px;width:18px;border:2px solid #fff;border-radius:100%;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.pcr-app .pcr-selection .pcr-color-chooser,.pcr-app .pcr-selection .pcr-color-opacity,.pcr-app .pcr-selection .pcr-color-palette{position:relative;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;display:flex;flex-direction:column;cursor:grab;cursor:-webkit-grab}.pcr-app .pcr-selection .pcr-color-chooser:active,.pcr-app .pcr-selection .pcr-color-opacity:active,.pcr-app .pcr-selection .pcr-color-palette:active{cursor:grabbing;cursor:-webkit-grabbing}.pcr-app[data-theme=monolith]{width:14.25em;max-width:95vw;padding:.8em}.pcr-app[data-theme=monolith] .pcr-selection{display:flex;flex-direction:column;justify-content:space-between;flex-grow:1}.pcr-app[data-theme=monolith] .pcr-selection .pcr-color-preview{position:relative;z-index:1;width:100%;height:1em;display:flex;flex-direction:row;justify-content:space-between;margin-bottom:.5em}.pcr-app[data-theme=monolith] .pcr-selection .pcr-color-preview:before{position:absolute;content:"";top:0;left:0;width:100%;height:100%;background:url('data:image/svg+xml;utf8, ');background-size:.5em;border-radius:.15em;z-index:-1}.pcr-app[data-theme=monolith] .pcr-selection .pcr-color-preview .pcr-last-color{cursor:pointer;transition:background-color .3s,box-shadow .3s;border-radius:.15em 0 0 .15em;z-index:2}.pcr-app[data-theme=monolith] .pcr-selection .pcr-color-preview .pcr-current-color{border-radius:0 .15em .15em 0}.pcr-app[data-theme=monolith] .pcr-selection .pcr-color-preview .pcr-current-color,.pcr-app[data-theme=monolith] .pcr-selection .pcr-color-preview .pcr-last-color{background:currentColor;width:50%;height:100%}.pcr-app[data-theme=monolith] .pcr-selection .pcr-color-palette{width:100%;height:8em;z-index:1}.pcr-app[data-theme=monolith] .pcr-selection .pcr-color-palette .pcr-palette{border-radius:.15em;width:100%;height:100%}.pcr-app[data-theme=monolith] .pcr-selection .pcr-color-palette .pcr-palette:before{position:absolute;content:"";top:0;left:0;width:100%;height:100%;background:url('data:image/svg+xml;utf8, ');background-size:.5em;border-radius:.15em;z-index:-1}.pcr-app[data-theme=monolith] .pcr-selection .pcr-color-chooser,.pcr-app[data-theme=monolith] .pcr-selection .pcr-color-opacity{height:.5em;margin-top:.75em}.pcr-app[data-theme=monolith] .pcr-selection .pcr-color-chooser .pcr-picker,.pcr-app[data-theme=monolith] .pcr-selection .pcr-color-opacity .pcr-picker{top:50%;transform:translateY(-50%)}.pcr-app[data-theme=monolith] .pcr-selection .pcr-color-chooser .pcr-slider,.pcr-app[data-theme=monolith] .pcr-selection .pcr-color-opacity .pcr-slider{flex-grow:1;border-radius:50em}.pcr-app[data-theme=monolith] .pcr-selection .pcr-color-chooser .pcr-slider{background:linear-gradient(90deg,red,#ff0,#0f0,#0ff,#00f,#f0f,red)}.pcr-app[data-theme=monolith] .pcr-selection .pcr-color-opacity .pcr-slider{background:linear-gradient(90deg,transparent,#000),url('data:image/svg+xml;utf8, ');background-size:100%,.25em} \ No newline at end of file diff --git a/dist/themes/nano.min.css b/dist/themes/nano.min.css index fb7e9608..acc32f21 100644 --- a/dist/themes/nano.min.css +++ b/dist/themes/nano.min.css @@ -1 +1 @@ -/*! Pickr 1.5.1 MIT | https://github.com/Simonwep/pickr */.pickr{position:relative;overflow:visible;transform:translateY(0)}.pickr *{box-sizing:border-box;outline:none;border:none;-webkit-appearance:none}.pickr .pcr-button{position:relative;height:2em;width:2em;padding:.5em;cursor:pointer;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;border-radius:.15em;background:url('data:image/svg+xml;utf8, ') no-repeat 50%;background-size:0;transition:all .3s}.pickr .pcr-button:before{background:url('data:image/svg+xml;utf8, ');background-size:.5em;z-index:-1;z-index:auto}.pickr .pcr-button:after,.pickr .pcr-button:before{position:absolute;content:"";top:0;left:0;width:100%;height:100%;border-radius:.15em}.pickr .pcr-button:after{transition:background .3s;background:currentColor}.pickr .pcr-button.clear{background-size:70%}.pickr .pcr-button.clear:before{opacity:0}.pickr .pcr-button.clear:focus{box-shadow:0 0 0 1px hsla(0,0%,100%,.85),0 0 0 3px currentColor}.pickr .pcr-button.disabled{cursor:not-allowed}.pcr-app *,.pickr *{box-sizing:border-box;outline:none;border:none;-webkit-appearance:none}.pcr-app button.pcr-active,.pcr-app button:focus,.pcr-app input.pcr-active,.pcr-app input:focus,.pickr button.pcr-active,.pickr button:focus,.pickr input.pcr-active,.pickr input:focus{box-shadow:0 0 0 1px hsla(0,0%,100%,.85),0 0 0 3px currentColor}.pcr-app .pcr-palette,.pcr-app .pcr-slider,.pickr .pcr-palette,.pickr .pcr-slider{transition:box-shadow .3s}.pcr-app .pcr-palette:focus,.pcr-app .pcr-slider:focus,.pickr .pcr-palette:focus,.pickr .pcr-slider:focus{box-shadow:0 0 0 1px hsla(0,0%,100%,.85),0 0 0 3px rgba(0,0,0,.25)}.pcr-app{position:fixed;display:flex;flex-direction:column;z-index:10000;border-radius:.1em;background:#fff;opacity:0;visibility:hidden;transition:opacity .3s,visibility 0s .3s;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;box-shadow:0 .15em 1.5em 0 rgba(0,0,0,.1),0 0 1em 0 rgba(0,0,0,.03);left:0;top:0}.pcr-app.visible{transition:opacity .3s;visibility:visible;opacity:1}.pcr-app .pcr-swatches{display:flex;flex-wrap:wrap;margin-top:.75em}.pcr-app .pcr-swatches.pcr-last{margin:0}@supports (display:grid){.pcr-app .pcr-swatches{display:grid;align-items:center;grid-template-columns:repeat(auto-fit,1.75em)}}.pcr-app .pcr-swatches>button{font-size:1em;position:relative;width:calc(1.75em - 5px);height:calc(1.75em - 5px);border-radius:.15em;cursor:pointer;margin:2.5px;flex-shrink:0;justify-self:center;transition:all .15s;overflow:hidden;background:transparent;z-index:1}.pcr-app .pcr-swatches>button:before{position:absolute;content:"";top:0;left:0;width:100%;height:100%;background:url('data:image/svg+xml;utf8, ');background-size:6px;border-radius:.15em;z-index:-1}.pcr-app .pcr-swatches>button:after{content:"";position:absolute;top:0;left:0;width:100%;height:100%;background:currentColor;border:1px solid rgba(0,0,0,.05);border-radius:.15em;box-sizing:border-box}.pcr-app .pcr-swatches>button:hover{-webkit-filter:brightness(1.05);filter:brightness(1.05)}.pcr-app .pcr-interaction{display:flex;flex-wrap:wrap;align-items:center;margin:0 -.2em}.pcr-app .pcr-interaction>*{margin:0 .2em}.pcr-app .pcr-interaction input{letter-spacing:.07em;font-size:.75em;text-align:center;cursor:pointer;color:#75797e;background:#f1f3f4;border-radius:.15em;transition:all .15s;padding:.45em .5em;margin-top:.75em}.pcr-app .pcr-interaction input:hover{-webkit-filter:brightness(.975);filter:brightness(.975)}.pcr-app .pcr-interaction input:focus{box-shadow:0 0 0 1px hsla(0,0%,100%,.85),0 0 0 3px rgba(66,133,244,.75)}.pcr-app .pcr-interaction .pcr-result{color:#75797e;text-align:left;flex:1 1 8em;min-width:8em;transition:all .2s;border-radius:.15em;background:#f1f3f4;cursor:text}.pcr-app .pcr-interaction .pcr-result::-moz-selection{background:#4285f4;color:#fff}.pcr-app .pcr-interaction .pcr-result::selection{background:#4285f4;color:#fff}.pcr-app .pcr-interaction .pcr-type.active{color:#fff;background:#4285f4}.pcr-app .pcr-interaction .pcr-cancel,.pcr-app .pcr-interaction .pcr-clear,.pcr-app .pcr-interaction .pcr-save{width:auto;color:#fff}.pcr-app .pcr-interaction .pcr-cancel:hover,.pcr-app .pcr-interaction .pcr-clear:hover,.pcr-app .pcr-interaction .pcr-save:hover{-webkit-filter:brightness(.925);filter:brightness(.925)}.pcr-app .pcr-interaction .pcr-save{background:#4285f4}.pcr-app .pcr-interaction .pcr-cancel,.pcr-app .pcr-interaction .pcr-clear{background:#f44250}.pcr-app .pcr-interaction .pcr-cancel:focus,.pcr-app .pcr-interaction .pcr-clear:focus{box-shadow:0 0 0 1px hsla(0,0%,100%,.85),0 0 0 3px rgba(244,66,80,.75)}.pcr-app .pcr-selection .pcr-picker{position:absolute;height:18px;width:18px;border:2px solid #fff;border-radius:100%;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.pcr-app .pcr-selection .pcr-color-chooser,.pcr-app .pcr-selection .pcr-color-opacity,.pcr-app .pcr-selection .pcr-color-palette{position:relative;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;display:flex;flex-direction:column;cursor:grab;cursor:-webkit-grab}.pcr-app .pcr-selection .pcr-color-chooser:active,.pcr-app .pcr-selection .pcr-color-opacity:active,.pcr-app .pcr-selection .pcr-color-palette:active{cursor:grabbing;cursor:-webkit-grabbing}.pcr-app[data-theme=nano]{width:14.25em;max-width:95vw}.pcr-app[data-theme=nano] .pcr-swatches{margin-top:.6em;padding:0 .6em}.pcr-app[data-theme=nano] .pcr-interaction{padding:0 .6em .6em}.pcr-app[data-theme=nano] .pcr-selection{display:grid;grid-gap:.6em;grid-template-columns:1fr 4fr;grid-template-rows:5fr auto auto;align-items:center;height:10.5em;width:100%;align-self:flex-start}.pcr-app[data-theme=nano] .pcr-selection .pcr-color-preview{grid-area:2/1/4/1;height:100%;width:100%;display:flex;flex-direction:row;justify-content:center;margin-left:.6em}.pcr-app[data-theme=nano] .pcr-selection .pcr-color-preview .pcr-last-color{display:none}.pcr-app[data-theme=nano] .pcr-selection .pcr-color-preview .pcr-current-color{position:relative;background:currentColor;width:2em;height:2em;border-radius:50em;overflow:hidden}.pcr-app[data-theme=nano] .pcr-selection .pcr-color-preview .pcr-current-color:before{position:absolute;content:"";top:0;left:0;width:100%;height:100%;background:url('data:image/svg+xml;utf8, ');background-size:.5em;border-radius:.15em;z-index:-1}.pcr-app[data-theme=nano] .pcr-selection .pcr-color-palette{grid-area:1/1/2/3;width:100%;height:100%;z-index:1}.pcr-app[data-theme=nano] .pcr-selection .pcr-color-palette .pcr-palette{border-radius:.15em;width:100%;height:100%}.pcr-app[data-theme=nano] .pcr-selection .pcr-color-palette .pcr-palette:before{position:absolute;content:"";top:0;left:0;width:100%;height:100%;background:url('data:image/svg+xml;utf8, ');background-size:.5em;border-radius:.15em;z-index:-1}.pcr-app[data-theme=nano] .pcr-selection .pcr-color-chooser{grid-area:2/2/2/2}.pcr-app[data-theme=nano] .pcr-selection .pcr-color-opacity{grid-area:3/2/3/2}.pcr-app[data-theme=nano] .pcr-selection .pcr-color-chooser,.pcr-app[data-theme=nano] .pcr-selection .pcr-color-opacity{height:.5em;margin:0 .6em}.pcr-app[data-theme=nano] .pcr-selection .pcr-color-chooser .pcr-picker,.pcr-app[data-theme=nano] .pcr-selection .pcr-color-opacity .pcr-picker{top:50%;transform:translateY(-50%)}.pcr-app[data-theme=nano] .pcr-selection .pcr-color-chooser .pcr-slider,.pcr-app[data-theme=nano] .pcr-selection .pcr-color-opacity .pcr-slider{flex-grow:1;border-radius:50em}.pcr-app[data-theme=nano] .pcr-selection .pcr-color-chooser .pcr-slider{background:linear-gradient(90deg,red,#ff0,#0f0,#0ff,#00f,#f0f,red)}.pcr-app[data-theme=nano] .pcr-selection .pcr-color-opacity .pcr-slider{background:linear-gradient(90deg,transparent,#000),url('data:image/svg+xml;utf8, ');background-size:100%,.25em} \ No newline at end of file +/*! Pickr 1.5.1 MIT | https://github.com/Simonwep/pickr */.pickr{position:relative;overflow:visible;transform:translateY(0)}.pickr *{box-sizing:border-box;outline:none;border:none;-webkit-appearance:none}.pickr .pcr-button{position:relative;height:2em;width:2em;padding:.5em;cursor:pointer;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;border-radius:.15em;background:url('data:image/svg+xml;utf8, ') no-repeat 50%;background-size:0;transition:all .3s}.pickr .pcr-button:before{background:url('data:image/svg+xml;utf8, ');background-size:.5em;z-index:-1;z-index:auto}.pickr .pcr-button:after,.pickr .pcr-button:before{position:absolute;content:"";top:0;left:0;width:100%;height:100%;border-radius:.15em}.pickr .pcr-button:after{transition:background .3s;background:currentColor}.pickr .pcr-button.clear{background-size:70%}.pickr .pcr-button.clear:before{opacity:0}.pickr .pcr-button.clear:focus{box-shadow:0 0 0 1px hsla(0,0%,100%,.85),0 0 0 3px currentColor}.pickr .pcr-button.disabled{cursor:not-allowed}.pcr-app *,.pickr *{box-sizing:border-box;outline:none;border:none;-webkit-appearance:none}.pcr-app button.pcr-active,.pcr-app button:focus,.pcr-app input.pcr-active,.pcr-app input:focus,.pickr button.pcr-active,.pickr button:focus,.pickr input.pcr-active,.pickr input:focus{box-shadow:0 0 0 1px hsla(0,0%,100%,.85),0 0 0 3px currentColor}.pcr-app .pcr-palette,.pcr-app .pcr-slider,.pickr .pcr-palette,.pickr .pcr-slider{transition:box-shadow .3s}.pcr-app .pcr-palette:focus,.pcr-app .pcr-slider:focus,.pickr .pcr-palette:focus,.pickr .pcr-slider:focus{box-shadow:0 0 0 1px hsla(0,0%,100%,.85),0 0 0 3px rgba(0,0,0,.25)}.pcr-app{position:fixed;display:flex;flex-direction:column;z-index:10000;border-radius:.1em;background:#fff;opacity:0;visibility:hidden;transition:opacity .3s,visibility 0s .3s;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;box-shadow:0 .15em 1.5em 0 rgba(0,0,0,.1),0 0 1em 0 rgba(0,0,0,.03);left:0;top:0}.pcr-app.visible{transition:opacity .3s;visibility:visible;opacity:1}.pcr-app .pcr-swatches{display:flex;flex-wrap:wrap;margin-top:.75em}.pcr-app .pcr-swatches.pcr-last{margin:0}@supports (display:grid){.pcr-app .pcr-swatches{display:grid;align-items:center;grid-template-columns:repeat(auto-fit,1.75em)}}.pcr-app .pcr-swatches>button{font-size:1em;position:relative;width:calc(1.75em - 5px);height:calc(1.75em - 5px);border-radius:.15em;cursor:pointer;margin:2.5px;flex-shrink:0;justify-self:center;transition:all .15s;overflow:hidden;background:transparent;z-index:1}.pcr-app .pcr-swatches>button:before{position:absolute;content:"";top:0;left:0;width:100%;height:100%;background:url('data:image/svg+xml;utf8, ');background-size:6px;border-radius:.15em;z-index:-1}.pcr-app .pcr-swatches>button:after{content:"";position:absolute;top:0;left:0;width:100%;height:100%;background:currentColor;border:1px solid rgba(0,0,0,.05);border-radius:.15em;box-sizing:border-box}.pcr-app .pcr-swatches>button:hover{-webkit-filter:brightness(1.05);filter:brightness(1.05)}.pcr-app .pcr-swatches>button:not(.pcr-active){box-shadow:none}.pcr-app .pcr-interaction{display:flex;flex-wrap:wrap;align-items:center;margin:0 -.2em}.pcr-app .pcr-interaction>*{margin:0 .2em}.pcr-app .pcr-interaction input{letter-spacing:.07em;font-size:.75em;text-align:center;cursor:pointer;color:#75797e;background:#f1f3f4;border-radius:.15em;transition:all .15s;padding:.45em .5em;margin-top:.75em}.pcr-app .pcr-interaction input:hover{-webkit-filter:brightness(.975);filter:brightness(.975)}.pcr-app .pcr-interaction input:focus{box-shadow:0 0 0 1px hsla(0,0%,100%,.85),0 0 0 3px rgba(66,133,244,.75)}.pcr-app .pcr-interaction .pcr-result{color:#75797e;text-align:left;flex:1 1 8em;min-width:8em;transition:all .2s;border-radius:.15em;background:#f1f3f4;cursor:text}.pcr-app .pcr-interaction .pcr-result::-moz-selection{background:#4285f4;color:#fff}.pcr-app .pcr-interaction .pcr-result::selection{background:#4285f4;color:#fff}.pcr-app .pcr-interaction .pcr-type.active{color:#fff;background:#4285f4}.pcr-app .pcr-interaction .pcr-cancel,.pcr-app .pcr-interaction .pcr-clear,.pcr-app .pcr-interaction .pcr-save{width:auto;color:#fff}.pcr-app .pcr-interaction .pcr-cancel:hover,.pcr-app .pcr-interaction .pcr-clear:hover,.pcr-app .pcr-interaction .pcr-save:hover{-webkit-filter:brightness(.925);filter:brightness(.925)}.pcr-app .pcr-interaction .pcr-save{background:#4285f4}.pcr-app .pcr-interaction .pcr-cancel,.pcr-app .pcr-interaction .pcr-clear{background:#f44250}.pcr-app .pcr-interaction .pcr-cancel:focus,.pcr-app .pcr-interaction .pcr-clear:focus{box-shadow:0 0 0 1px hsla(0,0%,100%,.85),0 0 0 3px rgba(244,66,80,.75)}.pcr-app .pcr-selection .pcr-picker{position:absolute;height:18px;width:18px;border:2px solid #fff;border-radius:100%;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.pcr-app .pcr-selection .pcr-color-chooser,.pcr-app .pcr-selection .pcr-color-opacity,.pcr-app .pcr-selection .pcr-color-palette{position:relative;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;display:flex;flex-direction:column;cursor:grab;cursor:-webkit-grab}.pcr-app .pcr-selection .pcr-color-chooser:active,.pcr-app .pcr-selection .pcr-color-opacity:active,.pcr-app .pcr-selection .pcr-color-palette:active{cursor:grabbing;cursor:-webkit-grabbing}.pcr-app[data-theme=nano]{width:14.25em;max-width:95vw}.pcr-app[data-theme=nano] .pcr-swatches{margin-top:.6em;padding:0 .6em}.pcr-app[data-theme=nano] .pcr-interaction{padding:0 .6em .6em}.pcr-app[data-theme=nano] .pcr-selection{display:grid;grid-gap:.6em;grid-template-columns:1fr 4fr;grid-template-rows:5fr auto auto;align-items:center;height:10.5em;width:100%;align-self:flex-start}.pcr-app[data-theme=nano] .pcr-selection .pcr-color-preview{grid-area:2/1/4/1;height:100%;width:100%;display:flex;flex-direction:row;justify-content:center;margin-left:.6em}.pcr-app[data-theme=nano] .pcr-selection .pcr-color-preview .pcr-last-color{display:none}.pcr-app[data-theme=nano] .pcr-selection .pcr-color-preview .pcr-current-color{position:relative;background:currentColor;width:2em;height:2em;border-radius:50em;overflow:hidden}.pcr-app[data-theme=nano] .pcr-selection .pcr-color-preview .pcr-current-color:before{position:absolute;content:"";top:0;left:0;width:100%;height:100%;background:url('data:image/svg+xml;utf8, ');background-size:.5em;border-radius:.15em;z-index:-1}.pcr-app[data-theme=nano] .pcr-selection .pcr-color-palette{grid-area:1/1/2/3;width:100%;height:100%;z-index:1}.pcr-app[data-theme=nano] .pcr-selection .pcr-color-palette .pcr-palette{border-radius:.15em;width:100%;height:100%}.pcr-app[data-theme=nano] .pcr-selection .pcr-color-palette .pcr-palette:before{position:absolute;content:"";top:0;left:0;width:100%;height:100%;background:url('data:image/svg+xml;utf8, ');background-size:.5em;border-radius:.15em;z-index:-1}.pcr-app[data-theme=nano] .pcr-selection .pcr-color-chooser{grid-area:2/2/2/2}.pcr-app[data-theme=nano] .pcr-selection .pcr-color-opacity{grid-area:3/2/3/2}.pcr-app[data-theme=nano] .pcr-selection .pcr-color-chooser,.pcr-app[data-theme=nano] .pcr-selection .pcr-color-opacity{height:.5em;margin:0 .6em}.pcr-app[data-theme=nano] .pcr-selection .pcr-color-chooser .pcr-picker,.pcr-app[data-theme=nano] .pcr-selection .pcr-color-opacity .pcr-picker{top:50%;transform:translateY(-50%)}.pcr-app[data-theme=nano] .pcr-selection .pcr-color-chooser .pcr-slider,.pcr-app[data-theme=nano] .pcr-selection .pcr-color-opacity .pcr-slider{flex-grow:1;border-radius:50em}.pcr-app[data-theme=nano] .pcr-selection .pcr-color-chooser .pcr-slider{background:linear-gradient(90deg,red,#ff0,#0f0,#0ff,#00f,#f0f,red)}.pcr-app[data-theme=nano] .pcr-selection .pcr-color-opacity .pcr-slider{background:linear-gradient(90deg,transparent,#000),url('data:image/svg+xml;utf8, ');background-size:100%,.25em} \ No newline at end of file diff --git a/src/scss/base.scss b/src/scss/base.scss index 93710152..edd8ef48 100644 --- a/src/scss/base.scss +++ b/src/scss/base.scss @@ -155,6 +155,10 @@ &:hover { filter: brightness(1.05); } + + &:not(.pcr-active) { + box-shadow: none; + } } }