{"version":3,"sources":["webpack:///../node_modules/@babel/runtime/helpers/interopRequireDefault.js","webpack:///../node_modules/chain-function/index.js","webpack:///../node_modules/classnames/index.js","webpack:///../node_modules/dom-helpers/class/addClass.js","webpack:///../node_modules/dom-helpers/class/hasClass.js","webpack:///../node_modules/dom-helpers/class/removeClass.js","webpack:///../node_modules/dom-helpers/transition/properties.js","webpack:///../node_modules/dom-helpers/util/inDOM.js","webpack:///../node_modules/dom-helpers/util/requestAnimationFrame.js","webpack:///../node_modules/fontfaceobserver/fontfaceobserver.standalone.js","webpack:///../node_modules/lodash/_basePropertyOf.js","webpack:///../node_modules/lodash/_unescapeHtmlChar.js","webpack:///../node_modules/lodash/isNaN.js","webpack:///../node_modules/lodash/isNumber.js","webpack:///../node_modules/lodash/unescape.js","webpack:///../node_modules/pp-amount-field/dist/pp-amount-field.basic.v3.esm.js","webpack:///../node_modules/pp-amount-field/basic/v3.js","webpack:///../node_modules/react-transition-group/CSSTransitionGroup.js","webpack:///../node_modules/react-transition-group/CSSTransitionGroupChild.js","webpack:///../node_modules/react-transition-group/TransitionGroup.js","webpack:///../node_modules/react-transition-group/index.js","webpack:///../node_modules/react-transition-group/node_modules/warning/browser.js","webpack:///../node_modules/react-transition-group/utils/ChildMapping.js","webpack:///../node_modules/react-transition-group/utils/PropTypes.js"],"names":["module","exports","obj","__esModule","len","arguments","length","args","i","filter","fn","reduce","current","next","apply","this","hasOwn","hasOwnProperty","classNames","classes","arg","argType","push","Array","isArray","inner","toString","Object","prototype","key","call","join","default","_interopRequireDefault","element","className","classList","add","_hasClass","setAttribute","baseVal","contains","indexOf","replaceClassName","origClass","classToRemove","replace","RegExp","remove","animationEnd","animationDelay","animationTiming","animationDuration","animationName","transitionEnd","transitionDuration","transitionDelay","transitionTiming","transitionProperty","transform","prefix","_inDOM","_getTransitionPropert","style","document","createElement","vendorMap","O","e","toLowerCase","Moz","Webkit","ms","vendors","keys","vendor","getTransitionProperties","_default","end","property","timing","delay","duration","window","compatRaf","cancel","raf","curr","Date","getTime","Math","max","prev","req","setTimeout","getKey","k","toUpperCase","substr","some","rafKey","cb","id","p","a","c","addEventListener","attachEvent","w","g","appendChild","createTextNode","h","m","j","l","cssText","x","B","offsetWidth","b","width","scrollLeft","scrollWidth","C","parentNode","D","family","weight","stretch","context","E","F","G","H","M","fonts","N","font","q","load","J","Promise","K","L","test","navigator","exec","userAgent","parseInt","I","r","t","Error","then","n","P","race","clearTimeout","body","removeEventListener","readyState","detachEvent","u","d","y","z","A","f","removeChild","v","dir","hidden","object","undefined","unescapeHtmlChar","basePropertyOf","isNumber","value","baseGetTag","isObjectLike","reEscapedHtml","reHasEscapedHtml","source","string","replaceNonDigits","formatUserCentsInput","currencyCode","currencyDecimal","userInput","currencyPrecision","JPY","TWD","HUF","getCurrencyPrecision","stringVal","formattedValue","sliceDigitsBeforeCurrencyDecimal","sliceDigitsAfterCurrencyDecimal","slice","concat","formatInput","stringValue","amount","numOfZeroesToAdd","repeat","prependWithZeroes","calcNewValue","measureTextSizeWithStyle","_ref2","fontSize","hostElement","text","hostElementStyles","getComputedStyle","spanElem","_hostElementStyles$fo","fontWeight","fontFamily","paddingLeft","paddingRight","borderWidth","position","top","left","innerHTML","_document$body2","clientWidth","_document$body","cssMeasurementToNumber","measurement","Number","moveCursorToTheEnd","node","setSelectionRange","callAllEventHandlers","_len","fns","_key","event","_len2","_key2","preventPPAmountFieldDefault","callAll","_len3","_key3","_len4","_key4","Boolean","forEach","_excluded","_excluded2","ownKeys","enumerableOnly","getOwnPropertySymbols","symbols","sym","getOwnPropertyDescriptor","enumerable","_objectSpread","target","getOwnPropertyDescriptors","defineProperties","defineProperty","_createSuper","Derived","hasNativeReflectConstruct","Reflect","construct","sham","Proxy","valueOf","_isNativeReflectConstruct","result","Super","NewTarget","constructor","_Component","SingleAmountField","_super","_this","_ref","handleChange","_ref2$target","_ref2$target$value","_input","_objectSpread2","props","_props$refKey","refKey","ref","onChange","onFocus","onClick","rest","inputStyles","amountWidth","amountFontSize","autoComplete","type","autoFocus","readOnly","inputRef","handleInputChange","moveCursor","el","_objectSpread3","_props$refKey2","selectRef","handleSelectChange","currencyCodeWidth","_select","_this2","_isMounted","split","trim","catch","err","console","warn","forceUpdate","onFontLoaded","_ref3","_ref3$value","_ref3$currencyCode","cleanValue","numberValue","onInvalidInput","getInputProps","getSelectProps","_this$props","currencySymbolMap","fontSizeMapping","defaultFontSize","currencySymbol","getFormattedValue","digitCount","currencyCharCount","String","updateFontSize","ua","isFirefox","includes","isIE11","MSInputMethodContext","documentMode","isIE","extraSpaceToAccountForWeirdBrowserIssues","makeCalculations","children","getStateAndHelpers","_jsxFileName","_excluded$1","ownKeys$1","_objectSpread$1","_createSuper$1","_isNativeReflectConstruct$1","_React$Component","BasicAmountField","showInvalid","hideCursor","visible","setState","renderTimeoutId","_this3","_this$props$showConde","showCondensedUI","_this$props$renderAft","renderAfterInput","_this$props$arrowProp","arrowProps","_this$props$className","_this$props$inputProp","inputProps","_this$props$selectPro","selectProps","forwardToAmountField","_this$state","state","currencyCodeList","handleFontLoaded","__self","__source","fileName","lineNumber","columnNumber","inputWrapperClasses","currencySymbolClassNames","inputClassNames","dropdownWrapperClassNames","disabled","dropdownClassNames","visibility","color","name","required","onMouseDown","handleMouseDown","onMouseUp","handleMouseUp","map","code","ArrowIcon","Component","viewBox","preserveAspectRatio","height","fill","stroke","strokeWidth","paddingBottom","_createSuper$2","_isNativeReflectConstruct$2","AmountFieldWithCSS","version","stylesString","stylesId","head","querySelector","styles","append","arrowHeight","arrowWidth","_extends","assign","_react2","_propTypes2","_TransitionGroup2","_CSSTransitionGroupChild2","_PropTypes","_classCallCheck","instance","Constructor","TypeError","_possibleConstructorReturn","self","ReferenceError","nameShape","isRequired","bool","transitionTimeout","CSSTransitionGroup","_temp","_wrapChild","child","transitionName","appear","transitionAppear","enter","transitionEnter","leave","transitionLeave","appearTimeout","transitionAppearTimeout","enterTimeout","transitionEnterTimeout","leaveTimeout","transitionLeaveTimeout","subClass","superClass","create","writable","configurable","setPrototypeOf","__proto__","_inherits","render","childFactory","displayName","propTypes","defaultProps","_addClass2","_removeClass2","_requestAnimationFrame2","_properties","_reactDom","events","number","CSSTransitionGroupChild","componentWillAppear","done","transition","componentWillEnter","componentWillLeave","componentWillMount","classNameAndNodeQueue","transitionTimeouts","componentWillUnmount","unmounted","timeout","animationType","finishCallback","findDOMNode","activeClassName","timer","removeListeners","queueClassAndNode","finish","listener","addEndListener","rafHandle","flushClassNameAndNodeQueue","scrollTop","cloneElement","Children","only","_chainFunction2","_ChildMapping","any","func","TransitionGroup","performAppear","component","currentlyTransitioningKeys","_handleDoneAppearing","bind","componentDidAppear","currentChildMapping","getChildMapping","performLeave","performEnter","_handleDoneEntering","componentDidEnter","_handleDoneLeaving","componentDidLeave","keysToEnter","newChildren","childRefs","keysToLeave","componentDidMount","initialChildMapping","componentWillReceiveProps","nextProps","nextChildMapping","prevChildMapping","mergeChildMappings","hasPrev","hasNext","componentDidUpdate","childrenToRender","_loop","isCallbackRef","factoryChild","_CSSTransitionGroup2","_react","getValueForKey","nextKeysPending","pendingKeys","prevKey","childMapping","nextKey","pendingNextKey","transitionType","timeoutPropName","enabledPropName","oneOfType","shape","active","enterActive","leaveActive","appearActive"],"mappings":"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","file":"vendors~ppme-grab~ppme-settings~ppme-slug.bundle.js","sourcesContent":["function _interopRequireDefault(obj) {\n return obj && obj.__esModule ? obj : {\n \"default\": obj\n };\n}\nmodule.exports = _interopRequireDefault, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;","\nmodule.exports = function chain(){\n var len = arguments.length\n var args = [];\n\n for (var i = 0; i < len; i++)\n args[i] = arguments[i]\n\n args = args.filter(function(fn){ return fn != null })\n\n if (args.length === 0) return undefined\n if (args.length === 1) return args[0]\n\n return args.reduce(function(current, next){\n return function chainedFunction() {\n current.apply(this, arguments);\n next.apply(this, arguments);\n };\n })\n}\n","/*!\n Copyright (c) 2018 Jed Watson.\n Licensed under the MIT License (MIT), see\n http://jedwatson.github.io/classnames\n*/\n/* global define */\n\n(function () {\n\t'use strict';\n\n\tvar hasOwn = {}.hasOwnProperty;\n\n\tfunction classNames() {\n\t\tvar classes = [];\n\n\t\tfor (var i = 0; i < arguments.length; i++) {\n\t\t\tvar arg = arguments[i];\n\t\t\tif (!arg) continue;\n\n\t\t\tvar argType = typeof arg;\n\n\t\t\tif (argType === 'string' || argType === 'number') {\n\t\t\t\tclasses.push(arg);\n\t\t\t} else if (Array.isArray(arg)) {\n\t\t\t\tif (arg.length) {\n\t\t\t\t\tvar inner = classNames.apply(null, arg);\n\t\t\t\t\tif (inner) {\n\t\t\t\t\t\tclasses.push(inner);\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t} else if (argType === 'object') {\n\t\t\t\tif (arg.toString === Object.prototype.toString) {\n\t\t\t\t\tfor (var key in arg) {\n\t\t\t\t\t\tif (hasOwn.call(arg, key) && arg[key]) {\n\t\t\t\t\t\t\tclasses.push(key);\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t} else {\n\t\t\t\t\tclasses.push(arg.toString());\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\treturn classes.join(' ');\n\t}\n\n\tif (typeof module !== 'undefined' && module.exports) {\n\t\tclassNames.default = classNames;\n\t\tmodule.exports = classNames;\n\t} else if (typeof define === 'function' && typeof define.amd === 'object' && define.amd) {\n\t\t// register as 'classnames', consistent with npm package name\n\t\tdefine('classnames', [], function () {\n\t\t\treturn classNames;\n\t\t});\n\t} else {\n\t\twindow.classNames = classNames;\n\t}\n}());\n","\"use strict\";\n\nvar _interopRequireDefault = require(\"@babel/runtime/helpers/interopRequireDefault\");\n\nexports.__esModule = true;\nexports.default = addClass;\n\nvar _hasClass = _interopRequireDefault(require(\"./hasClass\"));\n\nfunction addClass(element, className) {\n if (element.classList) element.classList.add(className);else if (!(0, _hasClass.default)(element, className)) if (typeof element.className === 'string') element.className = element.className + ' ' + className;else element.setAttribute('class', (element.className && element.className.baseVal || '') + ' ' + className);\n}\n\nmodule.exports = exports[\"default\"];","\"use strict\";\n\nexports.__esModule = true;\nexports.default = hasClass;\n\nfunction hasClass(element, className) {\n if (element.classList) return !!className && element.classList.contains(className);else return (\" \" + (element.className.baseVal || element.className) + \" \").indexOf(\" \" + className + \" \") !== -1;\n}\n\nmodule.exports = exports[\"default\"];","'use strict';\n\nfunction replaceClassName(origClass, classToRemove) {\n return origClass.replace(new RegExp('(^|\\\\s)' + classToRemove + '(?:\\\\s|$)', 'g'), '$1').replace(/\\s+/g, ' ').replace(/^\\s*|\\s*$/g, '');\n}\n\nmodule.exports = function removeClass(element, className) {\n if (element.classList) element.classList.remove(className);else if (typeof element.className === 'string') element.className = replaceClassName(element.className, className);else element.setAttribute('class', replaceClassName(element.className && element.className.baseVal || '', className));\n};","\"use strict\";\n\nvar _interopRequireDefault = require(\"@babel/runtime/helpers/interopRequireDefault\");\n\nexports.__esModule = true;\nexports.default = exports.animationEnd = exports.animationDelay = exports.animationTiming = exports.animationDuration = exports.animationName = exports.transitionEnd = exports.transitionDuration = exports.transitionDelay = exports.transitionTiming = exports.transitionProperty = exports.transform = void 0;\n\nvar _inDOM = _interopRequireDefault(require(\"../util/inDOM\"));\n\nvar transform = 'transform';\nexports.transform = transform;\nvar prefix, transitionEnd, animationEnd;\nexports.animationEnd = animationEnd;\nexports.transitionEnd = transitionEnd;\nvar transitionProperty, transitionDuration, transitionTiming, transitionDelay;\nexports.transitionDelay = transitionDelay;\nexports.transitionTiming = transitionTiming;\nexports.transitionDuration = transitionDuration;\nexports.transitionProperty = transitionProperty;\nvar animationName, animationDuration, animationTiming, animationDelay;\nexports.animationDelay = animationDelay;\nexports.animationTiming = animationTiming;\nexports.animationDuration = animationDuration;\nexports.animationName = animationName;\n\nif (_inDOM.default) {\n var _getTransitionPropert = getTransitionProperties();\n\n prefix = _getTransitionPropert.prefix;\n exports.transitionEnd = transitionEnd = _getTransitionPropert.transitionEnd;\n exports.animationEnd = animationEnd = _getTransitionPropert.animationEnd;\n exports.transform = transform = prefix + \"-\" + transform;\n exports.transitionProperty = transitionProperty = prefix + \"-transition-property\";\n exports.transitionDuration = transitionDuration = prefix + \"-transition-duration\";\n exports.transitionDelay = transitionDelay = prefix + \"-transition-delay\";\n exports.transitionTiming = transitionTiming = prefix + \"-transition-timing-function\";\n exports.animationName = animationName = prefix + \"-animation-name\";\n exports.animationDuration = animationDuration = prefix + \"-animation-duration\";\n exports.animationTiming = animationTiming = prefix + \"-animation-delay\";\n exports.animationDelay = animationDelay = prefix + \"-animation-timing-function\";\n}\n\nvar _default = {\n transform: transform,\n end: transitionEnd,\n property: transitionProperty,\n timing: transitionTiming,\n delay: transitionDelay,\n duration: transitionDuration\n};\nexports.default = _default;\n\nfunction getTransitionProperties() {\n var style = document.createElement('div').style;\n var vendorMap = {\n O: function O(e) {\n return \"o\" + e.toLowerCase();\n },\n Moz: function Moz(e) {\n return e.toLowerCase();\n },\n Webkit: function Webkit(e) {\n return \"webkit\" + e;\n },\n ms: function ms(e) {\n return \"MS\" + e;\n }\n };\n var vendors = Object.keys(vendorMap);\n var transitionEnd, animationEnd;\n var prefix = '';\n\n for (var i = 0; i < vendors.length; i++) {\n var vendor = vendors[i];\n\n if (vendor + \"TransitionProperty\" in style) {\n prefix = \"-\" + vendor.toLowerCase();\n transitionEnd = vendorMap[vendor]('TransitionEnd');\n animationEnd = vendorMap[vendor]('AnimationEnd');\n break;\n }\n }\n\n if (!transitionEnd && 'transitionProperty' in style) transitionEnd = 'transitionend';\n if (!animationEnd && 'animationName' in style) animationEnd = 'animationend';\n style = null;\n return {\n animationEnd: animationEnd,\n transitionEnd: transitionEnd,\n prefix: prefix\n };\n}","\"use strict\";\n\nexports.__esModule = true;\nexports.default = void 0;\n\nvar _default = !!(typeof window !== 'undefined' && window.document && window.document.createElement);\n\nexports.default = _default;\nmodule.exports = exports[\"default\"];","\"use strict\";\n\nvar _interopRequireDefault = require(\"@babel/runtime/helpers/interopRequireDefault\");\n\nexports.__esModule = true;\nexports.default = void 0;\n\nvar _inDOM = _interopRequireDefault(require(\"./inDOM\"));\n\nvar vendors = ['', 'webkit', 'moz', 'o', 'ms'];\nvar cancel = 'clearTimeout';\nvar raf = fallback;\nvar compatRaf;\n\nvar getKey = function getKey(vendor, k) {\n return vendor + (!vendor ? k : k[0].toUpperCase() + k.substr(1)) + 'AnimationFrame';\n};\n\nif (_inDOM.default) {\n vendors.some(function (vendor) {\n var rafKey = getKey(vendor, 'request');\n\n if (rafKey in window) {\n cancel = getKey(vendor, 'cancel');\n return raf = function raf(cb) {\n return window[rafKey](cb);\n };\n }\n });\n}\n/* https://github.com/component/raf */\n\n\nvar prev = new Date().getTime();\n\nfunction fallback(fn) {\n var curr = new Date().getTime(),\n ms = Math.max(0, 16 - (curr - prev)),\n req = setTimeout(fn, ms);\n prev = curr;\n return req;\n}\n\ncompatRaf = function compatRaf(cb) {\n return raf(cb);\n};\n\ncompatRaf.cancel = function (id) {\n window[cancel] && typeof window[cancel] === 'function' && window[cancel](id);\n};\n\nvar _default = compatRaf;\nexports.default = _default;\nmodule.exports = exports[\"default\"];","/* Font Face Observer v2.3.0 - © Bram Stein. License: BSD-3-Clause */(function(){function p(a,c){document.addEventListener?a.addEventListener(\"scroll\",c,!1):a.attachEvent(\"scroll\",c)}function u(a){document.body?a():document.addEventListener?document.addEventListener(\"DOMContentLoaded\",function b(){document.removeEventListener(\"DOMContentLoaded\",b);a()}):document.attachEvent(\"onreadystatechange\",function g(){if(\"interactive\"==document.readyState||\"complete\"==document.readyState)document.detachEvent(\"onreadystatechange\",g),a()})};function w(a){this.g=document.createElement(\"div\");this.g.setAttribute(\"aria-hidden\",\"true\");this.g.appendChild(document.createTextNode(a));this.h=document.createElement(\"span\");this.i=document.createElement(\"span\");this.m=document.createElement(\"span\");this.j=document.createElement(\"span\");this.l=-1;this.h.style.cssText=\"max-width:none;display:inline-block;position:absolute;height:100%;width:100%;overflow:scroll;font-size:16px;\";this.i.style.cssText=\"max-width:none;display:inline-block;position:absolute;height:100%;width:100%;overflow:scroll;font-size:16px;\";\nthis.j.style.cssText=\"max-width:none;display:inline-block;position:absolute;height:100%;width:100%;overflow:scroll;font-size:16px;\";this.m.style.cssText=\"display:inline-block;width:200%;height:200%;font-size:16px;max-width:none;\";this.h.appendChild(this.m);this.i.appendChild(this.j);this.g.appendChild(this.h);this.g.appendChild(this.i)}\nfunction x(a,c){a.g.style.cssText=\"max-width:none;min-width:20px;min-height:20px;display:inline-block;overflow:hidden;position:absolute;width:auto;margin:0;padding:0;top:-999px;white-space:nowrap;font-synthesis:none;font:\"+c+\";\"}function B(a){var c=a.g.offsetWidth,b=c+100;a.j.style.width=b+\"px\";a.i.scrollLeft=b;a.h.scrollLeft=a.h.scrollWidth+100;return a.l!==c?(a.l=c,!0):!1}function C(a,c){function b(){var e=g;B(e)&&null!==e.g.parentNode&&c(e.l)}var g=a;p(a.h,b);p(a.i,b);B(a)};function D(a,c,b){c=c||{};b=b||window;this.family=a;this.style=c.style||\"normal\";this.weight=c.weight||\"normal\";this.stretch=c.stretch||\"normal\";this.context=b}var E=null,F=null,G=null,H=null;function I(a){null===F&&(M(a)&&/Apple/.test(window.navigator.vendor)?(a=/AppleWebKit\\/([0-9]+)(?:\\.([0-9]+))(?:\\.([0-9]+))/.exec(window.navigator.userAgent),F=!!a&&603>parseInt(a[1],10)):F=!1);return F}function M(a){null===H&&(H=!!a.document.fonts);return H}\nfunction N(a,c){var b=a.style,g=a.weight;if(null===G){var e=document.createElement(\"div\");try{e.style.font=\"condensed 100px sans-serif\"}catch(q){}G=\"\"!==e.style.font}return[b,g,G?a.stretch:\"\",\"100px\",c].join(\" \")}\nD.prototype.load=function(a,c){var b=this,g=a||\"BESbswy\",e=0,q=c||3E3,J=(new Date).getTime();return new Promise(function(K,L){if(M(b.context)&&!I(b.context)){var O=new Promise(function(r,t){function h(){(new Date).getTime()-J>=q?t(Error(\"\"+q+\"ms timeout exceeded\")):b.context.document.fonts.load(N(b,'\"'+b.family+'\"'),g).then(function(n){1<=n.length?r():setTimeout(h,25)},t)}h()}),P=new Promise(function(r,t){e=setTimeout(function(){t(Error(\"\"+q+\"ms timeout exceeded\"))},q)});Promise.race([P,O]).then(function(){clearTimeout(e);\nK(b)},L)}else u(function(){function r(){var d;if(d=-1!=k&&-1!=l||-1!=k&&-1!=m||-1!=l&&-1!=m)(d=k!=l&&k!=m&&l!=m)||(null===E&&(d=/AppleWebKit\\/([0-9]+)(?:\\.([0-9]+))/.exec(window.navigator.userAgent),E=!!d&&(536>parseInt(d[1],10)||536===parseInt(d[1],10)&&11>=parseInt(d[2],10))),d=E&&(k==y&&l==y&&m==y||k==z&&l==z&&m==z||k==A&&l==A&&m==A)),d=!d;d&&(null!==f.parentNode&&f.parentNode.removeChild(f),clearTimeout(e),K(b))}function t(){if((new Date).getTime()-J>=q)null!==f.parentNode&&f.parentNode.removeChild(f),\nL(Error(\"\"+q+\"ms timeout exceeded\"));else{var d=b.context.document.hidden;if(!0===d||void 0===d)k=h.g.offsetWidth,l=n.g.offsetWidth,m=v.g.offsetWidth,r();e=setTimeout(t,50)}}var h=new w(g),n=new w(g),v=new w(g),k=-1,l=-1,m=-1,y=-1,z=-1,A=-1,f=document.createElement(\"div\");f.dir=\"ltr\";x(h,N(b,\"sans-serif\"));x(n,N(b,\"serif\"));x(v,N(b,\"monospace\"));f.appendChild(h.g);f.appendChild(n.g);f.appendChild(v.g);b.context.document.body.appendChild(f);y=h.g.offsetWidth;z=n.g.offsetWidth;A=v.g.offsetWidth;t();\nC(h,function(d){k=d;r()});x(h,N(b,'\"'+b.family+'\",sans-serif'));C(n,function(d){l=d;r()});x(n,N(b,'\"'+b.family+'\",serif'));C(v,function(d){m=d;r()});x(v,N(b,'\"'+b.family+'\",monospace'))})})};\"object\"===typeof module?module.exports=D:(window.FontFaceObserver=D,window.FontFaceObserver.prototype.load=D.prototype.load);}());\n","/**\n * The base implementation of `_.propertyOf` without support for deep paths.\n *\n * @private\n * @param {Object} object The object to query.\n * @returns {Function} Returns the new accessor function.\n */\nfunction basePropertyOf(object) {\n return function(key) {\n return object == null ? undefined : object[key];\n };\n}\n\nmodule.exports = basePropertyOf;\n","var basePropertyOf = require('./_basePropertyOf');\n\n/** Used to map HTML entities to characters. */\nvar htmlUnescapes = {\n '&': '&',\n '<': '<',\n '>': '>',\n '"': '\"',\n ''': \"'\"\n};\n\n/**\n * Used by `_.unescape` to convert HTML entities to characters.\n *\n * @private\n * @param {string} chr The matched character to unescape.\n * @returns {string} Returns the unescaped character.\n */\nvar unescapeHtmlChar = basePropertyOf(htmlUnescapes);\n\nmodule.exports = unescapeHtmlChar;\n","var isNumber = require('./isNumber');\n\n/**\n * Checks if `value` is `NaN`.\n *\n * **Note:** This method is based on\n * [`Number.isNaN`](https://mdn.io/Number/isNaN) and is not the same as\n * global [`isNaN`](https://mdn.io/isNaN) which returns `true` for\n * `undefined` and other non-number values.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is `NaN`, else `false`.\n * @example\n *\n * _.isNaN(NaN);\n * // => true\n *\n * _.isNaN(new Number(NaN));\n * // => true\n *\n * isNaN(undefined);\n * // => true\n *\n * _.isNaN(undefined);\n * // => false\n */\nfunction isNaN(value) {\n // An `NaN` primitive is the only value that is not equal to itself.\n // Perform the `toStringTag` check first to avoid errors with some\n // ActiveX objects in IE.\n return isNumber(value) && value != +value;\n}\n\nmodule.exports = isNaN;\n","var baseGetTag = require('./_baseGetTag'),\n isObjectLike = require('./isObjectLike');\n\n/** `Object#toString` result references. */\nvar numberTag = '[object Number]';\n\n/**\n * Checks if `value` is classified as a `Number` primitive or object.\n *\n * **Note:** To exclude `Infinity`, `-Infinity`, and `NaN`, which are\n * classified as numbers, use the `_.isFinite` method.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a number, else `false`.\n * @example\n *\n * _.isNumber(3);\n * // => true\n *\n * _.isNumber(Number.MIN_VALUE);\n * // => true\n *\n * _.isNumber(Infinity);\n * // => true\n *\n * _.isNumber('3');\n * // => false\n */\nfunction isNumber(value) {\n return typeof value == 'number' ||\n (isObjectLike(value) && baseGetTag(value) == numberTag);\n}\n\nmodule.exports = isNumber;\n","var toString = require('./toString'),\n unescapeHtmlChar = require('./_unescapeHtmlChar');\n\n/** Used to match HTML entities and HTML characters. */\nvar reEscapedHtml = /&(?:amp|lt|gt|quot|#39);/g,\n reHasEscapedHtml = RegExp(reEscapedHtml.source);\n\n/**\n * The inverse of `_.escape`; this method converts the HTML entities\n * `&`, `<`, `>`, `"`, and `'` in `string` to\n * their corresponding characters.\n *\n * **Note:** No other HTML entities are unescaped. To unescape additional\n * HTML entities use a third-party library like [_he_](https://mths.be/he).\n *\n * @static\n * @memberOf _\n * @since 0.6.0\n * @category String\n * @param {string} [string=''] The string to unescape.\n * @returns {string} Returns the unescaped string.\n * @example\n *\n * _.unescape('fred, barney, & pebbles');\n * // => 'fred, barney, & pebbles'\n */\nfunction unescape(string) {\n string = toString(string);\n return (string && reHasEscapedHtml.test(string))\n ? string.replace(reEscapedHtml, unescapeHtmlChar)\n : string;\n}\n\nmodule.exports = unescape;\n","import FontFaceObserver from 'fontfaceobserver';\nimport _objectWithoutProperties from '@babel/runtime/helpers/esm/objectWithoutProperties';\nimport _classCallCheck from '@babel/runtime/helpers/esm/classCallCheck';\nimport _createClass from '@babel/runtime/helpers/esm/createClass';\nimport _assertThisInitialized from '@babel/runtime/helpers/esm/assertThisInitialized';\nimport _inherits from '@babel/runtime/helpers/esm/inherits';\nimport _possibleConstructorReturn from '@babel/runtime/helpers/esm/possibleConstructorReturn';\nimport _getPrototypeOf from '@babel/runtime/helpers/esm/getPrototypeOf';\nimport _defineProperty from '@babel/runtime/helpers/esm/defineProperty';\nimport _isNaN from 'lodash/isNaN';\nimport React, { Component } from 'react';\nimport _extends from '@babel/runtime/helpers/esm/extends';\nimport classNames from 'classnames';\n\n/*\n * This has a few utilities we need for the amount field.\n * If only the web supported what we need :-(\n */\n\nvar removeChild = function () {\n var _document$body;\n\n return document && document.body && document.body.removeChild && (_document$body = document.body).removeChild.apply(_document$body, arguments);\n};\n\nvar appendChild = function () {\n var _document$body2;\n\n return document && document.body && document.body.appendChild && (_document$body2 = document.body).appendChild.apply(_document$body2, arguments);\n};\n/**\n * A wrapper around the FontFaceObserver API because the FontFaceObserver is confusing and looks like it's going to do\n * the font loading based on the `load` function name, but it's just checking whether the font has loaded...\n * @param fontFamily - the font family to ensure is loaded\n * @param options - the options object passed to the FontFaceObserver constructor\n * @return a promise that resolves if the font loaded successfully, or rejects if it does not (default timeout is 3\n * seconds)\n */\n\n\nfunction isFontLoaded(fontFamily) {\n return new FontFaceObserver(fontFamily).load().catch(function (err) {\n // eslint-disable-next-line no-console\n console.warn(\"Could not load the font \\\"\".concat(fontFamily, \"\\\"\"));\n throw err;\n });\n}\n/**\n * Takes the entered value in the amount field\n * @param string - value entered in the amount field\n * @returns number - removes any non digits character and only returns numeric entry.\n * \\s is for removing spaces which is part of currency format for certain countries (Norwegian Krone etc.)\n */\n\n\nfunction replaceNonDigits(value) {\n return value && value.replace(/[\\.,٫\\s]/g, '') || '';\n}\n/**\n * Use to format user input. Combines getCurrencyPrecision, replaceNonDigits, calcNewValue, and formatInput because that's\n * used several places.\n * 'USD', '.', '1' -> '0.01'\n * 'JPY', '.', '53' -> '53'\n * 'CAD', ',', '5323' -> '53,23'\n * @param currencyCode the currency code (to get the precision)\n * @param currencyDecimal the decimal separator\n * @param userInput the user input number to format\n * @return the formatted input\n */\n\n\nfunction formatUserCentsInput(currencyCode, currencyDecimal, userInput) {\n var currencyPrecision = getCurrencyPrecision(currencyCode);\n var digitsOnlyValue = replaceNonDigits(userInput);\n var zeroPaddedValue = calcNewValue(currencyPrecision, digitsOnlyValue);\n return formatInput(currencyPrecision, currencyDecimal, zeroPaddedValue);\n}\n/**\n * This function helps catch currencies with different float rules.\n * Generally we display 2 ints past the decimal (i.e $1.25).\n * @param currencyCode - The new currency currencyCode\n * @returns currencyPrecision\n */\n\n\nfunction getCurrencyPrecision(currencyCode) {\n return {\n JPY: true,\n TWD: true,\n HUF: true\n }[currencyCode] ? 0 : 2;\n}\n/**\n * Calculates the amount entered.\n * ex: user enters 1, value will return 0001\n * strips off leading zeroes (returning 1)\n * calculates the total number of zeroes required to be prepended\n * returns 001\n * @param currencyPrecision - returns number of digits and decimal separator i.e. 2 for USD, 0 for JPY\n * @param value - returns the entered value\n * @returns {*}\n */\n\n\nfunction calcNewValue(currencyPrecision, value) {\n var stringValue = value; // strips off leading zeroes\n\n stringValue = stringValue.replace(/^0+/, ''); // calculates number of zeroes required to be prepended based on value length\n\n stringValue = prependWithZeroes(currencyPrecision, stringValue);\n return stringValue;\n}\n/**\n * Formats the input given the raw string value.\n * ex: raw string value returns 001 -> formats to 0.01\n * 012 -> formats to 0.12\n * 123 -> formats to 1.23\n * 1234 -> formats to 1234\n * @param currencyPrecision - number of digits after decimal separator i.e. 2 for USD, 0 for JPY\n * @param currencyDecimal - decimal separator string i.e. '.' for USD, ',' for EURO\n * @param stringVal - unformatted string value entered\n * @returns formattedValue (12.34)\n */\n\n\nfunction formatInput(currencyPrecision, currencyDecimal, stringVal) {\n var formattedValue;\n var sliceDigitsBeforeCurrencyDecimal = '';\n var sliceDigitsAfterCurrencyDecimal = '';\n\n if (currencyPrecision > 0) {\n sliceDigitsBeforeCurrencyDecimal = stringVal.slice(0, stringVal.length - 2);\n sliceDigitsAfterCurrencyDecimal = stringVal.slice(stringVal.length - 2);\n formattedValue = \"\".concat(sliceDigitsBeforeCurrencyDecimal).concat(currencyDecimal).concat(sliceDigitsAfterCurrencyDecimal);\n } else {\n formattedValue = parseInt(stringVal, 10).toString();\n }\n\n return formattedValue;\n}\n/**\n * Prepends the input digit amount with zeroes (\"1\" => \"001\")\n * @param {number} currencyPrecision - returns number of digits and decimal separator i.e. 2 for USD, 0 for JPY\n * @param {string} amount entered value i.e 12\n * @returns {string} formatted value with total number of zeroes prepended\n */\n\n\nfunction prependWithZeroes(currencyPrecision, amount) {\n var numOfZeroesToAdd = Math.max(0, currencyPrecision + 1 - amount.length);\n return '0'.repeat(numOfZeroesToAdd) + amount;\n}\n\n/**\n * updates Font Size on mapping digits entered length\n * @param value - formatted entered input\n * @param currencySymbol - the currency Symbol i.e. '$' for USD\n * @returns {*|number}\n */\nfunction updateFontSize(_ref) {\n var value = _ref.value,\n currencySymbol = _ref.currencySymbol,\n fontSizeMapping = _ref.fontSizeMapping,\n defaultFontSize = _ref.defaultFontSize;\n\n if (!fontSizeMapping) {\n return defaultFontSize || null;\n }\n\n var digitCount = value.replace(/[.,]/g, '').length;\n var currencyCharCount = currencySymbol.length;\n var digitMapping = fontSizeMapping[String(currencyCharCount)] || {};\n return digitMapping[String(digitCount)] || defaultFontSize || null;\n}\n/**\n * Computes the required width size for amount field expansion\n */\n\n\nfunction measureTextSizeWithStyle(_ref2) {\n var fontSize = _ref2.fontSize,\n hostElement = _ref2.hostElement,\n text = _ref2.text;\n // get the computed styles from the element and grab the font-family and font-weight\n // for accurate measurements, with sensible defaults\n var hostElementStyles = hostElement ? window.getComputedStyle(hostElement, null) : {}; // handle `null` as well as `undefined`\n\n var spanElem = document.createElement('span');\n var _hostElementStyles$fo = hostElementStyles.fontWeight,\n fontWeight = _hostElementStyles$fo === void 0 ? '300' : _hostElementStyles$fo,\n fontFamily = hostElementStyles.fontFamily,\n paddingLeft = hostElementStyles.paddingLeft,\n paddingRight = hostElementStyles.paddingRight,\n borderWidth = hostElementStyles.borderWidth;\n fontSize = fontSize || hostElementStyles.fontSize;\n spanElem.style.fontSize = typeof fontSize === 'number' ? \"\".concat(fontSize, \"px\") : fontSize;\n spanElem.style.fontFamily = fontFamily;\n spanElem.style.fontWeight = fontWeight;\n spanElem.style.position = 'fixed';\n spanElem.style.top = '-1000px';\n spanElem.style.left = '-1000px';\n spanElem.innerHTML = text;\n appendChild(spanElem);\n var width = spanElem.clientWidth;\n removeChild(spanElem);\n return (width || 0) + cssMeasurementToNumber(paddingLeft) + cssMeasurementToNumber(paddingRight) + cssMeasurementToNumber(borderWidth) * 2;\n}\n\nfunction cssMeasurementToNumber() {\n var measurement = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : '0px';\n return Number(measurement.replace(/[^0-9.]/g, ''));\n}\n/**\n * This moves the cursor position to the end of the text in the input node in a way\n * that works on iOS\n * @param {HTMLInputElement} node - the input to set the cursor position in\n */\n\n\nfunction moveCursorToTheEnd(node) {\n var length = node.value.length;\n node.setSelectionRange(length, length);\n}\n\n/**\n * This is intended to be used to call all given event handlers.\n * They are executed in order until one of them sets\n * `event.preventPPAmountFieldDefault = true`.\n * @param {Function} fns the event handler functions\n * @return {Function} the event handler to add to an element\n */\nfunction callAllEventHandlers() {\n for (var _len = arguments.length, fns = new Array(_len), _key = 0; _key < _len; _key++) {\n fns[_key] = arguments[_key];\n }\n\n return function (event) {\n for (var _len2 = arguments.length, args = new Array(_len2 > 1 ? _len2 - 1 : 0), _key2 = 1; _key2 < _len2; _key2++) {\n args[_key2 - 1] = arguments[_key2];\n }\n\n return fns.some(function (fn) {\n if (fn) {\n fn.apply(void 0, [event].concat(args));\n }\n\n return event.preventPPAmountFieldDefault;\n });\n };\n}\n/**\n * Function that returns a function which calls all given functions\n * with the given arguments arguments\n */\n\n\nfunction callAll() {\n for (var _len3 = arguments.length, fns = new Array(_len3), _key3 = 0; _key3 < _len3; _key3++) {\n fns[_key3] = arguments[_key3];\n }\n\n return function () {\n for (var _len4 = arguments.length, args = new Array(_len4), _key4 = 0; _key4 < _len4; _key4++) {\n args[_key4] = arguments[_key4];\n }\n\n return fns.filter(Boolean).forEach(function (fn) {\n if (fn) {\n fn.apply(void 0, args);\n }\n });\n };\n}\n/* eslint flowtype/no-weak-types:0 */\n\nvar _excluded = [\"refKey\", \"ref\", \"style\", \"onChange\", \"onFocus\", \"onClick\"],\n _excluded2 = [\"ref\", \"refKey\", \"onChange\", \"style\"];\n\nfunction ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }\n\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }\n\nfunction _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function () { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\n\nfunction _isNativeReflectConstruct() { if (typeof Reflect === \"undefined\" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === \"function\") return true; try { Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); return true; } catch (e) { return false; } }\nvar MAX_AMOUNT_LENGTH = 10;\n\nvar SingleAmountField = /*#__PURE__*/function (_Component) {\n _inherits(SingleAmountField, _Component);\n\n var _super = _createSuper(SingleAmountField);\n\n function SingleAmountField() {\n var _this;\n\n _classCallCheck(this, SingleAmountField);\n\n for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n _this = _super.call.apply(_super, [this].concat(args));\n\n _defineProperty(_assertThisInitialized(_this), \"_isMounted\", false);\n\n _defineProperty(_assertThisInitialized(_this), \"_input\", null);\n\n _defineProperty(_assertThisInitialized(_this), \"_select\", null);\n\n _defineProperty(_assertThisInitialized(_this), \"amountWidth\", -1);\n\n _defineProperty(_assertThisInitialized(_this), \"amountFontSize\", -1);\n\n _defineProperty(_assertThisInitialized(_this), \"currencyCodeWidth\", -1);\n\n _defineProperty(_assertThisInitialized(_this), \"formattedValue\", void 0);\n\n _defineProperty(_assertThisInitialized(_this), \"handleSelectChange\", function (_ref) {\n var currencyCode = _ref.target.value;\n return _this.handleChange({\n currencyCode: currencyCode\n });\n });\n\n _defineProperty(_assertThisInitialized(_this), \"handleInputChange\", function (_ref2) {\n var _ref2$target = _ref2.target;\n _ref2$target = _ref2$target === void 0 ? {} : _ref2$target;\n var _ref2$target$value = _ref2$target.value,\n value = _ref2$target$value === void 0 ? '' : _ref2$target$value;\n return _this.handleChange({\n value: value\n });\n });\n\n _defineProperty(_assertThisInitialized(_this), \"moveCursor\", function () {\n _this._input && moveCursorToTheEnd(_this._input);\n });\n\n _defineProperty(_assertThisInitialized(_this), \"getInputProps\", function () {\n var _objectSpread2;\n\n var props = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};\n\n var _props$refKey = props.refKey,\n refKey = _props$refKey === void 0 ? 'ref' : _props$refKey,\n ref = props.ref,\n style = props.style,\n onChange = props.onChange,\n onFocus = props.onFocus,\n onClick = props.onClick,\n rest = _objectWithoutProperties(props, _excluded);\n\n var inputStyles = {\n width: _this.amountWidth,\n fontSize: _this.amountFontSize\n };\n return _objectSpread(_objectSpread({\n value: _this.formattedValue,\n dir: 'ltr',\n autoComplete: 'off',\n type: 'tel',\n autoFocus: !rest.readOnly\n }, rest), {}, (_objectSpread2 = {\n style: _objectSpread(_objectSpread({}, inputStyles), style)\n }, _defineProperty(_objectSpread2, refKey, callAll(ref, _this.inputRef)), _defineProperty(_objectSpread2, \"onChange\", callAllEventHandlers(onChange, _this.handleInputChange)), _defineProperty(_objectSpread2, \"onFocus\", callAllEventHandlers(onFocus, _this.moveCursor)), _defineProperty(_objectSpread2, \"onClick\", callAllEventHandlers(onClick, _this.moveCursor)), _objectSpread2));\n });\n\n _defineProperty(_assertThisInitialized(_this), \"inputRef\", function (el) {\n return _this._input = el;\n });\n\n _defineProperty(_assertThisInitialized(_this), \"getSelectProps\", function () {\n var _objectSpread3;\n\n var props = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};\n\n var ref = props.ref,\n _props$refKey2 = props.refKey,\n refKey = _props$refKey2 === void 0 ? 'ref' : _props$refKey2,\n onChange = props.onChange,\n style = props.style,\n rest = _objectWithoutProperties(props, _excluded2);\n\n return _objectSpread(_objectSpread({\n value: _this.props.currencyCode\n }, rest), {}, (_objectSpread3 = {}, _defineProperty(_objectSpread3, refKey, callAll(ref, _this.selectRef)), _defineProperty(_objectSpread3, \"onChange\", callAllEventHandlers(onChange, _this.handleSelectChange)), _defineProperty(_objectSpread3, \"style\", _objectSpread(_objectSpread({}, style), {}, {\n width: _this.currencyCodeWidth\n })), _objectSpread3));\n });\n\n _defineProperty(_assertThisInitialized(_this), \"selectRef\", function (el) {\n return _this._select = el;\n });\n\n return _this;\n }\n\n _createClass(SingleAmountField, [{\n key: \"componentDidMount\",\n value: function componentDidMount() {\n var _this2 = this;\n\n this._isMounted = true;\n isFontLoaded(window.getComputedStyle(this._input)['font-family'].split(',')[0].trim()).then(function () {\n // it could have unmounted before this is resolved\n if (_this2._isMounted) {\n // once the font has been confirmed to be loaded, we need to recalculate the width of the input.\n // but we do it in a setTimeout because otherwise sometimes the width calculation was off by 2px.\n // And I have no idea why...\n setTimeout(function () {\n _this2.forceUpdate();\n\n _this2.moveCursor();\n\n _this2.props.onFontLoaded && _this2.props.onFontLoaded();\n }, 50);\n }\n }).catch(function () {// do absolutely nothing\n });\n }\n }, {\n key: \"componentWillUnmount\",\n value: function componentWillUnmount() {\n this._isMounted = false;\n }\n /**\n * This handles the value and currency change. Because a change in currency can cause a change in the value (due to\n * differences in precision), this will be called when the value or the currency is changed.\n *\n * We first strip out all non-digits then validate that the result is a real number. If it's not, then we don't do\n * anything (and the input value is not updated). If the result is equal to 0, then we'll call onAmountChange with an\n * empty string. Otherwise, we'll format it and if it's not the same as it was before, we'll call onAmountChange with\n * that.\n * @param {Object} changes holds the new value and the currencyCode\n */\n\n }, {\n key: \"handleChange\",\n value: function handleChange(_ref3) {\n var _ref3$value = _ref3.value,\n value = _ref3$value === void 0 ? this.props.value : _ref3$value,\n _ref3$currencyCode = _ref3.currencyCode,\n currencyCode = _ref3$currencyCode === void 0 ? this.props.currencyCode : _ref3$currencyCode;\n var cleanValue = replaceNonDigits(value); // convert value to number to remove leading zeros\n\n var numberValue = Number(cleanValue);\n\n if (_isNaN(numberValue) || cleanValue.length >= MAX_AMOUNT_LENGTH) {\n this.props.onInvalidInput();\n return;\n } else if (numberValue === 0) {\n this.props.onChange('', currencyCode);\n return;\n }\n\n var formattedValue = formatUserCentsInput(currencyCode, this.props.currencyDecimal, numberValue.toString());\n\n if (formattedValue !== this.props.value || currencyCode !== this.props.currencyCode) {\n this.props.onChange(formattedValue, currencyCode);\n }\n }\n }, {\n key: \"getStateAndHelpers\",\n value: function getStateAndHelpers() {\n return {\n amountWidth: this.amountWidth,\n currencyCodeWidth: this.currencyCodeWidth,\n amountFontSize: this.amountFontSize,\n getInputProps: this.getInputProps,\n getSelectProps: this.getSelectProps\n };\n }\n }, {\n key: \"makeCalculations\",\n value: function makeCalculations() {\n var _this$props = this.props,\n value = _this$props.value,\n currencyCode = _this$props.currencyCode,\n currencySymbolMap = _this$props.currencySymbolMap,\n fontSizeMapping = _this$props.fontSizeMapping,\n defaultFontSize = _this$props.defaultFontSize;\n var currencySymbol = currencySymbolMap[currencyCode];\n this.formattedValue = this.props.getFormattedValue(value || '0');\n this.amountFontSize = updateFontSize({\n value: this.formattedValue,\n currencySymbol: currencySymbol,\n fontSizeMapping: fontSizeMapping,\n defaultFontSize: defaultFontSize\n });\n this.amountWidth = measureTextSizeWithStyle({\n fontSize: this.amountFontSize,\n hostElement: this._input,\n text: this.formattedValue\n }) + 2; // sadly, firefox and IE both insert a few pixels to the left (or right in\n // the rtl case) of select inputs. This behavior is totally unobservable\n // (so it cannot be part of the width calculation).\n // So we'll add a few pixels to the width in IE and firefox to account\n // for this (as select is the main use case for this anyway).\n\n var ua = navigator.userAgent.toLowerCase();\n var isFirefox = ua.includes('firefox');\n var isIE11 = ua.includes('Trident/7') || !!window.MSInputMethodContext && !!document.documentMode;\n var isIE = ua.includes('msie') || isIE11;\n var extraSpaceToAccountForWeirdBrowserIssues = isFirefox || isIE ? 6 : 0;\n this.currencyCodeWidth = measureTextSizeWithStyle({\n fontSize: null,\n hostElement: this._select,\n text: currencyCode\n }) + extraSpaceToAccountForWeirdBrowserIssues;\n }\n }, {\n key: \"render\",\n value: function render() {\n this.makeCalculations();\n return this.props.children(this.getStateAndHelpers());\n }\n }]);\n\n return SingleAmountField;\n}(Component);\n/* eslint no-unused-expressions:0 */\n\nvar _jsxFileName = \"/Users/sdeepala/projects/pp-amount-field/src/basic/index.js\";\nvar _excluded$1 = [\"showCondensedUI\", \"renderAfterInput\", \"arrowProps\", \"className\", \"inputProps\", \"selectProps\", \"fontFamily\"];\n\nfunction ownKeys$1(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }\n\nfunction _objectSpread$1(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys$1(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys$1(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }\n\nfunction _createSuper$1(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct$1(); return function () { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\n\nfunction _isNativeReflectConstruct$1() { if (typeof Reflect === \"undefined\" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === \"function\") return true; try { Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); return true; } catch (e) { return false; } }\n\nvar BasicAmountField = /*#__PURE__*/function (_React$Component) {\n _inherits(BasicAmountField, _React$Component);\n\n var _super = _createSuper$1(BasicAmountField);\n\n function BasicAmountField() {\n var _this;\n\n _classCallCheck(this, BasicAmountField);\n\n for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n _this = _super.call.apply(_super, [this].concat(args));\n\n _defineProperty(_assertThisInitialized(_this), \"renderTimeoutId\", void 0);\n\n _defineProperty(_assertThisInitialized(_this), \"state\", {\n showInvalid: false,\n hideCursor: false,\n visible: false\n });\n\n _defineProperty(_assertThisInitialized(_this), \"handleMouseDown\", function () {\n return _this.setState({\n hideCursor: true\n });\n });\n\n _defineProperty(_assertThisInitialized(_this), \"handleMouseUp\", function () {\n return _this.setState({\n hideCursor: false\n });\n });\n\n _defineProperty(_assertThisInitialized(_this), \"showInvalid\", function () {\n _this.setState({\n showInvalid: true\n }, function () {\n setTimeout(function () {\n _this.setState({\n showInvalid: false\n });\n }, 300);\n });\n });\n\n _defineProperty(_assertThisInitialized(_this), \"handleFontLoaded\", function () {\n // we wait for the font to load and widths to be calculated before showing the input\n // otherwise we run into a flash of unstyled content on refresh.\n // In componentDidMount we have a timeout to ensure that we don't wait any longer than 500ms\n clearTimeout(_this.renderTimeoutId);\n\n _this.setState({\n visible: true\n });\n });\n\n return _this;\n }\n\n _createClass(BasicAmountField, [{\n key: \"componentDidMount\",\n value: function componentDidMount() {\n // this ensures that we don't wait any longer than a half a second to display the input\n this.renderTimeoutId = setTimeout(function () {\n this.setState({\n visible: true\n });\n }, 500);\n }\n }, {\n key: \"componentDidUpdate\",\n value: function componentDidUpdate() {\n if (this.props.showInvalid) {\n this.showInvalid();\n }\n }\n }, {\n key: \"render\",\n value: function render() {\n var _this3 = this;\n\n var _this$props = this.props,\n _this$props$showConde = _this$props.showCondensedUI,\n showCondensedUI = _this$props$showConde === void 0 ? false : _this$props$showConde,\n _this$props$renderAft = _this$props.renderAfterInput,\n renderAfterInput = _this$props$renderAft === void 0 ? function () {\n return null;\n } : _this$props$renderAft,\n _this$props$arrowProp = _this$props.arrowProps,\n arrowProps = _this$props$arrowProp === void 0 ? {} : _this$props$arrowProp,\n _this$props$className = _this$props.className,\n className = _this$props$className === void 0 ? '' : _this$props$className,\n _this$props$inputProp = _this$props.inputProps,\n inputProps = _this$props$inputProp === void 0 ? {} : _this$props$inputProp,\n _this$props$selectPro = _this$props.selectProps,\n selectProps = _this$props$selectPro === void 0 ? {} : _this$props$selectPro,\n fontFamily = _this$props.fontFamily,\n forwardToAmountField = _objectWithoutProperties(_this$props, _excluded$1);\n\n var _this$state = this.state,\n showInvalid = _this$state.showInvalid,\n visible = _this$state.visible,\n hideCursor = _this$state.hideCursor; // stuff we forward on, but also want to reference in this function\n\n var currencySymbolMap = forwardToAmountField.currencySymbolMap,\n currencyCode = forwardToAmountField.currencyCode;\n var currencyCodeList = [];\n\n if (this.props.currencyCodeList && this.props.currencyCodeList.length) {\n currencyCodeList = this.props.currencyCodeList;\n } else {\n currencyCodeList = Object.keys(currencySymbolMap);\n }\n\n return /*#__PURE__*/React.createElement(SingleAmountField, _extends({}, forwardToAmountField, {\n onFontLoaded: this.handleFontLoaded,\n onInvalidInput: callAll(this.props.onInvalidInput, this.showInvalid),\n __self: this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 103,\n columnNumber: 7\n }\n }), function (_ref) {\n var currencyCodeWidth = _ref.currencyCodeWidth,\n getSelectProps = _ref.getSelectProps,\n getInputProps = _ref.getInputProps;\n var currencySymbol = currencySymbolMap[currencyCode];\n var inputWrapperClasses = classNames('ppaf-input-wrapper', {\n 'ppaf-shake': showInvalid\n });\n var currencySymbolClassNames = classNames('ppaf-currency-symbol', showInvalid && 'ppaf-is-invalid');\n var inputClassNames = classNames('ppaf-input', hideCursor && 'ppaf-with-hidden-cursor', inputProps.readOnly && 'ppaf-read-only', // overrides cursor to default\n showInvalid && 'ppaf-is-invalid');\n var dropdownWrapperClassNames = classNames('ppaf-select-wrapper', showCondensedUI && 'ppaf-condensed', selectProps.disabled && 'ppaf-read-only' // overrides color to input default (black)\n );\n var dropdownClassNames = classNames('ppaf-select', selectProps.disabled && 'ppaf-read-only' // overrides cursor to default\n );\n return /*#__PURE__*/React.createElement(\"div\", {\n className: \"pp-amount-field \".concat(className || ''),\n style: {\n visibility: visible ? 'visible' : 'hidden'\n },\n __self: _this3,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 139,\n columnNumber: 13\n }\n }, /*#__PURE__*/React.createElement(\"div\", {\n className: inputWrapperClasses,\n __self: _this3,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 143,\n columnNumber: 15\n }\n }, /*#__PURE__*/React.createElement(\"div\", {\n className: currencySymbolClassNames,\n style: {\n color: inputProps.style ? inputProps.style.color : null,\n fontFamily: fontFamily\n },\n __self: _this3,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 144,\n columnNumber: 17\n }\n }, currencySymbol), /*#__PURE__*/React.createElement(\"input\", _extends({}, getInputProps(_objectSpread$1(_objectSpread$1({\n name: 'amount',\n required: true,\n className: inputClassNames\n }, inputProps), {}, {\n style: _objectSpread$1({\n fontFamily: fontFamily\n }, inputProps.style),\n onMouseDown: callAllEventHandlers(inputProps.onMouseDown, _this3.handleMouseDown),\n onMouseUp: callAllEventHandlers(inputProps.onMouseUp, _this3.handleMouseUp)\n })), {\n __self: _this3,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 153,\n columnNumber: 17\n }\n })), renderAfterInput(_this3.props)), currencyCodeList.length ? /*#__PURE__*/React.createElement(\"div\", {\n className: dropdownWrapperClassNames,\n style: {\n width: currencyCodeWidth,\n color: selectProps.style ? selectProps.style.color : null\n },\n __self: _this3,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 176,\n columnNumber: 17\n }\n }, /*#__PURE__*/React.createElement(\"select\", _extends({}, getSelectProps(_objectSpread$1(_objectSpread$1({\n name: 'currencies',\n className: dropdownClassNames\n }, selectProps), {}, {\n style: _objectSpread$1({\n fontFamily: fontFamily\n }, selectProps.style)\n })), {\n __self: _this3,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 183,\n columnNumber: 19\n }\n }), currencyCodeList.map(function (code) {\n return /*#__PURE__*/React.createElement(\"option\", {\n key: code,\n value: code,\n __self: _this3,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 195,\n columnNumber: 23\n }\n }, code);\n })), !selectProps.disabled && /*#__PURE__*/React.createElement(ArrowIcon, _extends({}, arrowProps, {\n style: _objectSpread$1({\n left: (currencyCodeWidth || 0) - 20\n }, arrowProps.style),\n __self: _this3,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 202,\n columnNumber: 21\n }\n }))) : null);\n });\n }\n }]);\n\n return BasicAmountField;\n}(React.Component);\n\nfunction ArrowIcon(props) {\n return /*#__PURE__*/React.createElement(\"svg\", _extends({\n className: \"ppaf-select-arrow\",\n viewBox: \"0 0 20 20\",\n preserveAspectRatio: \"none\",\n width: 14,\n height: 16,\n fill: \"transparent\",\n stroke: \"currentColor\",\n strokeWidth: \"2px\"\n }, props, {\n style: _objectSpread$1({\n paddingBottom: 2\n }, props.style),\n __self: this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 222,\n columnNumber: 5\n }\n }), /*#__PURE__*/React.createElement(\"path\", {\n d: \"M1,6 L10,15 L19,6\",\n __self: this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 234,\n columnNumber: 7\n }\n }));\n}\n\nvar _jsxFileName$1 = \"/Users/sdeepala/projects/pp-amount-field/src/basic/amount-field-with-css.js\";\n\nfunction _createSuper$2(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct$2(); return function () { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\n\nfunction _isNativeReflectConstruct$2() { if (typeof Reflect === \"undefined\" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === \"function\") return true; try { Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); return true; } catch (e) { return false; } }\n\nvar AmountFieldWithCSS = /*#__PURE__*/function (_React$Component) {\n _inherits(AmountFieldWithCSS, _React$Component);\n\n var _super = _createSuper$2(AmountFieldWithCSS);\n\n function AmountFieldWithCSS() {\n _classCallCheck(this, AmountFieldWithCSS);\n\n return _super.apply(this, arguments);\n }\n\n _createClass(AmountFieldWithCSS, [{\n key: \"componentDidMount\",\n value: function componentDidMount() {\n var _this$props = this.props,\n version = _this$props.version,\n stylesString = _this$props.stylesString;\n var stylesId = \"amount-field-basic-v\".concat(version);\n\n if (document.head && !document.head.querySelector(\"#\".concat(stylesId))) {\n var styles = document.createElement('style');\n styles.id = stylesId;\n styles.append(stylesString);\n document.head && document.head.appendChild(styles);\n }\n }\n }, {\n key: \"render\",\n value: function render() {\n return /*#__PURE__*/React.createElement(BasicAmountField, _extends({\n className: \"basic-v\".concat(this.props.version)\n }, this.props, {\n __self: this,\n __source: {\n fileName: _jsxFileName$1,\n lineNumber: 31,\n columnNumber: 7\n }\n }));\n }\n }]);\n\n return AmountFieldWithCSS;\n}(React.Component);\n/* eslint no-unused-expressions:0 */\n\nvar _jsxFileName$2 = \"/Users/sdeepala/projects/pp-amount-field/src/basic/v3.js\";\nvar stylesString = \".pp-amount-field .ppaf-input-wrapper{display:flex;justify-content:center}[dir=ltr] .pp-amount-field .ppaf-input-wrapper.ppaf-shake{-webkit-animation-duration:1s;animation-duration:1s;-webkit-animation-fill-mode:both;animation-fill-mode:both;-webkit-animation-name:ppaf-shake-ltr;animation-name:ppaf-shake-ltr}[dir=rtl] .pp-amount-field .ppaf-input-wrapper.ppaf-shake{-webkit-animation-duration:1s;animation-duration:1s;-webkit-animation-fill-mode:both;animation-fill-mode:both;-webkit-animation-name:ppaf-shake-rtl;animation-name:ppaf-shake-rtl}@-webkit-keyframes ppaf-shake-ltr{from,to{transform:translate3d(0,0,0)}10%,30%,50%,70%,90%{transform:translate3d(-10px,0,0)}20%,40%,60%,80%{transform:translate3d(10px,0,0)}}@keyframes ppaf-shake-ltr{from,to{transform:translate3d(0,0,0)}10%,30%,50%,70%,90%{transform:translate3d(-10px,0,0)}20%,40%,60%,80%{transform:translate3d(10px,0,0)}}@-webkit-keyframes ppaf-shake-rtl{from,to{transform:translate3d(0,0,0)}10%,30%,50%,70%,90%{transform:translate3d(10px,0,0)}20%,40%,60%,80%{transform:translate3d(-10px,0,0)}}@keyframes ppaf-shake-rtl{from,to{transform:translate3d(0,0,0)}10%,30%,50%,70%,90%{transform:translate3d(10px,0,0)}20%,40%,60%,80%{transform:translate3d(-10px,0,0)}}.pp-amount-field .ppaf-currency-symbol{color:#2c2e2f;font-weight:300;font-family:PayPal-Sans-Big,sans-serif;display:inline-block;vertical-align:top}[dir=ltr] .pp-amount-field .ppaf-currency-symbol{text-align:right}[dir=rtl] .pp-amount-field .ppaf-currency-symbol{text-align:left}.pp-amount-field .ppaf-input{color:#2c2e2f;text-overflow:clip;outline:0;letter-spacing:normal;line-height:1.4;font-weight:300;text-transform:none;font-family:PayPal-Sans-Big,sans-serif}[dir] .pp-amount-field .ppaf-input{background:0 0;border:none;text-align:center;padding:0;margin:0;cursor:pointer}.pp-amount-field .ppaf-input.ppaf-with-hidden-cursor{color:transparent}[dir] .pp-amount-field .ppaf-input.ppaf-with-hidden-cursor{text-shadow:#2c2e2f 0 0 0}[dir] .pp-amount-field .ppaf-input.ppaf-read-only{cursor:default}.pp-amount-field .ppaf-select-wrapper{position:relative}[dir=ltr] .pp-amount-field .ppaf-select-wrapper{margin-left:auto;margin-right:auto}[dir=rtl] .pp-amount-field .ppaf-select-wrapper{margin-right:auto;margin-left:auto}[dir] .pp-amount-field .ppaf-select-wrapper.ppaf-condensed{margin-top:0;margin-bottom:0}.pp-amount-field .ppaf-select{font-size:20px;position:absolute;appearance:none;-webkit-appearance:none;-moz-appearance:none;padding-top:4px;font-weight:700;padding-right:20px;padding-bottom:4px;padding-left:2px;background-color:transparent;color:inherit;top:0;left:-2px;z-index:2;cursor:pointer;font-family:PayPal-Sans-Big,sans-serif}.pp-amount-field .ppaf-select::-ms-expand{display:none}[dir] .pp-amount-field .ppaf-select.ppaf-read-only{cursor:default}.pp-amount-field .ppaf-select-arrow{position:absolute;z-index:1}.pp-amount-field .ppaf-first-time-user-tooltip-wrapper{line-height:77px}.pp-amount-field .ppaf-tooltip{font-size:24px;position:relative;color:#0070ba}[dir] .pp-amount-field .ppaf-tooltip{cursor:pointer}[dir=ltr] .pp-amount-field .ppaf-tooltip{margin-left:5px}[dir=rtl] .pp-amount-field .ppaf-tooltip{margin-right:5px}.pp-amount-field .ppaf-is-invalid{color:#d20000}\" + '\\n' + \".pp-amount-field.basic-v3 .ppaf-input{line-height:1.2}.pp-amount-field.basic-v3 .ppaf-currency-symbol{font-size:32px}[dir=ltr] .pp-amount-field.basic-v3 .ppaf-currency-symbol{margin-right:6px}[dir=rtl] .pp-amount-field.basic-v3 .ppaf-currency-symbol{margin-left:6px}.pp-amount-field.basic-v3 .ppaf-select-wrapper{height:24px}.pp-amount-field.basic-v3 .ppaf-select{border:0;font-size:14px;padding-left:8px;font-weight:300}.pp-amount-field.basic-v3 .ppaf-select-arrow{top:6px}[dir] .pp-amount-field.basic-v3 .ppaf-select-arrow{padding-bottom:2px}\";\nvar defaultFontSize = 60;\nvar fontSizeMapping = {\n '0': {\n '8': 57\n },\n '1': {\n '7': 57,\n '8': 51,\n '9': 47,\n '10': 45\n },\n '2': {\n '7': 53,\n '8': 49,\n '9': 46,\n '10': 44\n },\n '3': {\n '6': 53,\n '7': 47,\n '8': 42,\n '9': 40,\n '10': 38\n },\n '4': {\n '6': 53,\n '7': 47,\n '8': 42,\n '9': 40,\n '10': 38\n }\n};\n\nfunction V1AmountField(props) {\n return /*#__PURE__*/React.createElement(AmountFieldWithCSS, _extends({\n version: \"3\",\n stylesString: stylesString,\n fontSizeMapping: fontSizeMapping,\n defaultFontSize: defaultFontSize,\n arrowHeight: 12,\n arrowWidth: 12,\n arrowProps: {\n strokeWidth: '1px',\n width: 10,\n height: 12\n },\n fontFamily: \"'PayPal-Sans-Big', sans-serif\"\n }, props, {\n __self: this,\n __source: {\n fileName: _jsxFileName$2,\n lineNumber: 25,\n columnNumber: 5\n }\n }));\n}\n\nexport default V1AmountField;\n","// this allows people to: `import V3AmountField from 'pp-amount-field/basic/v3'`\nexport * from '../dist/pp-amount-field.basic.v3.esm'\nexport { default } from '../dist/pp-amount-field.basic.v3.esm'\n","'use strict';\n\nexports.__esModule = true;\n\nvar _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; };\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _propTypes = require('prop-types');\n\nvar _propTypes2 = _interopRequireDefault(_propTypes);\n\nvar _TransitionGroup = require('./TransitionGroup');\n\nvar _TransitionGroup2 = _interopRequireDefault(_TransitionGroup);\n\nvar _CSSTransitionGroupChild = require('./CSSTransitionGroupChild');\n\nvar _CSSTransitionGroupChild2 = _interopRequireDefault(_CSSTransitionGroupChild);\n\nvar _PropTypes = require('./utils/PropTypes');\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return call && (typeof call === \"object\" || typeof call === \"function\") ? call : self; }\n\nfunction _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function, not \" + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; }\n\nvar propTypes = {\n transitionName: _PropTypes.nameShape.isRequired,\n\n transitionAppear: _propTypes2.default.bool,\n transitionEnter: _propTypes2.default.bool,\n transitionLeave: _propTypes2.default.bool,\n transitionAppearTimeout: (0, _PropTypes.transitionTimeout)('Appear'),\n transitionEnterTimeout: (0, _PropTypes.transitionTimeout)('Enter'),\n transitionLeaveTimeout: (0, _PropTypes.transitionTimeout)('Leave')\n};\n\nvar defaultProps = {\n transitionAppear: false,\n transitionEnter: true,\n transitionLeave: true\n};\n\nvar CSSTransitionGroup = function (_React$Component) {\n _inherits(CSSTransitionGroup, _React$Component);\n\n function CSSTransitionGroup() {\n var _temp, _this, _ret;\n\n _classCallCheck(this, CSSTransitionGroup);\n\n for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n return _ret = (_temp = (_this = _possibleConstructorReturn(this, _React$Component.call.apply(_React$Component, [this].concat(args))), _this), _this._wrapChild = function (child) {\n return _react2.default.createElement(_CSSTransitionGroupChild2.default, {\n name: _this.props.transitionName,\n appear: _this.props.transitionAppear,\n enter: _this.props.transitionEnter,\n leave: _this.props.transitionLeave,\n appearTimeout: _this.props.transitionAppearTimeout,\n enterTimeout: _this.props.transitionEnterTimeout,\n leaveTimeout: _this.props.transitionLeaveTimeout\n }, child);\n }, _temp), _possibleConstructorReturn(_this, _ret);\n }\n\n // We need to provide this childFactory so that\n // ReactCSSTransitionGroupChild can receive updates to name, enter, and\n // leave while it is leaving.\n\n\n CSSTransitionGroup.prototype.render = function render() {\n return _react2.default.createElement(_TransitionGroup2.default, _extends({}, this.props, { childFactory: this._wrapChild }));\n };\n\n return CSSTransitionGroup;\n}(_react2.default.Component);\n\nCSSTransitionGroup.displayName = 'CSSTransitionGroup';\n\n\nCSSTransitionGroup.propTypes = process.env.NODE_ENV !== \"production\" ? propTypes : {};\nCSSTransitionGroup.defaultProps = defaultProps;\n\nexports.default = CSSTransitionGroup;\nmodule.exports = exports['default'];","'use strict';\n\nexports.__esModule = true;\n\nvar _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; };\n\nvar _addClass = require('dom-helpers/class/addClass');\n\nvar _addClass2 = _interopRequireDefault(_addClass);\n\nvar _removeClass = require('dom-helpers/class/removeClass');\n\nvar _removeClass2 = _interopRequireDefault(_removeClass);\n\nvar _requestAnimationFrame = require('dom-helpers/util/requestAnimationFrame');\n\nvar _requestAnimationFrame2 = _interopRequireDefault(_requestAnimationFrame);\n\nvar _properties = require('dom-helpers/transition/properties');\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _propTypes = require('prop-types');\n\nvar _propTypes2 = _interopRequireDefault(_propTypes);\n\nvar _reactDom = require('react-dom');\n\nvar _PropTypes = require('./utils/PropTypes');\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return call && (typeof call === \"object\" || typeof call === \"function\") ? call : self; }\n\nfunction _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function, not \" + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; }\n\nvar events = [];\nif (_properties.transitionEnd) events.push(_properties.transitionEnd);\nif (_properties.animationEnd) events.push(_properties.animationEnd);\n\nfunction addEndListener(node, listener) {\n if (events.length) {\n events.forEach(function (e) {\n return node.addEventListener(e, listener, false);\n });\n } else {\n setTimeout(listener, 0);\n }\n\n return function () {\n if (!events.length) return;\n events.forEach(function (e) {\n return node.removeEventListener(e, listener, false);\n });\n };\n}\n\nvar propTypes = {\n children: _propTypes2.default.node,\n name: _PropTypes.nameShape.isRequired,\n\n // Once we require timeouts to be specified, we can remove the\n // boolean flags (appear etc.) and just accept a number\n // or a bool for the timeout flags (appearTimeout etc.)\n appear: _propTypes2.default.bool,\n enter: _propTypes2.default.bool,\n leave: _propTypes2.default.bool,\n appearTimeout: _propTypes2.default.number,\n enterTimeout: _propTypes2.default.number,\n leaveTimeout: _propTypes2.default.number\n};\n\nvar CSSTransitionGroupChild = function (_React$Component) {\n _inherits(CSSTransitionGroupChild, _React$Component);\n\n function CSSTransitionGroupChild() {\n var _temp, _this, _ret;\n\n _classCallCheck(this, CSSTransitionGroupChild);\n\n for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n return _ret = (_temp = (_this = _possibleConstructorReturn(this, _React$Component.call.apply(_React$Component, [this].concat(args))), _this), _this.componentWillAppear = function (done) {\n if (_this.props.appear) {\n _this.transition('appear', done, _this.props.appearTimeout);\n } else {\n done();\n }\n }, _this.componentWillEnter = function (done) {\n if (_this.props.enter) {\n _this.transition('enter', done, _this.props.enterTimeout);\n } else {\n done();\n }\n }, _this.componentWillLeave = function (done) {\n if (_this.props.leave) {\n _this.transition('leave', done, _this.props.leaveTimeout);\n } else {\n done();\n }\n }, _temp), _possibleConstructorReturn(_this, _ret);\n }\n\n CSSTransitionGroupChild.prototype.componentWillMount = function componentWillMount() {\n this.classNameAndNodeQueue = [];\n this.transitionTimeouts = [];\n };\n\n CSSTransitionGroupChild.prototype.componentWillUnmount = function componentWillUnmount() {\n this.unmounted = true;\n\n if (this.timeout) {\n clearTimeout(this.timeout);\n }\n this.transitionTimeouts.forEach(function (timeout) {\n clearTimeout(timeout);\n });\n\n this.classNameAndNodeQueue.length = 0;\n };\n\n CSSTransitionGroupChild.prototype.transition = function transition(animationType, finishCallback, timeout) {\n var node = (0, _reactDom.findDOMNode)(this);\n\n if (!node) {\n if (finishCallback) {\n finishCallback();\n }\n return;\n }\n\n var className = this.props.name[animationType] || this.props.name + '-' + animationType;\n var activeClassName = this.props.name[animationType + 'Active'] || className + '-active';\n var timer = null;\n var removeListeners = void 0;\n\n (0, _addClass2.default)(node, className);\n\n // Need to do this to actually trigger a transition.\n this.queueClassAndNode(activeClassName, node);\n\n // Clean-up the animation after the specified delay\n var finish = function finish(e) {\n if (e && e.target !== node) {\n return;\n }\n\n clearTimeout(timer);\n if (removeListeners) removeListeners();\n\n (0, _removeClass2.default)(node, className);\n (0, _removeClass2.default)(node, activeClassName);\n\n if (removeListeners) removeListeners();\n\n // Usually this optional callback is used for informing an owner of\n // a leave animation and telling it to remove the child.\n if (finishCallback) {\n finishCallback();\n }\n };\n\n if (timeout) {\n timer = setTimeout(finish, timeout);\n this.transitionTimeouts.push(timer);\n } else if (_properties.transitionEnd) {\n removeListeners = addEndListener(node, finish);\n }\n };\n\n CSSTransitionGroupChild.prototype.queueClassAndNode = function queueClassAndNode(className, node) {\n var _this2 = this;\n\n this.classNameAndNodeQueue.push({\n className: className,\n node: node\n });\n\n if (!this.rafHandle) {\n this.rafHandle = (0, _requestAnimationFrame2.default)(function () {\n return _this2.flushClassNameAndNodeQueue();\n });\n }\n };\n\n CSSTransitionGroupChild.prototype.flushClassNameAndNodeQueue = function flushClassNameAndNodeQueue() {\n if (!this.unmounted) {\n this.classNameAndNodeQueue.forEach(function (obj) {\n // This is for to force a repaint,\n // which is necessary in order to transition styles when adding a class name.\n /* eslint-disable no-unused-expressions */\n obj.node.scrollTop;\n /* eslint-enable no-unused-expressions */\n (0, _addClass2.default)(obj.node, obj.className);\n });\n }\n this.classNameAndNodeQueue.length = 0;\n this.rafHandle = null;\n };\n\n CSSTransitionGroupChild.prototype.render = function render() {\n var props = _extends({}, this.props);\n delete props.name;\n delete props.appear;\n delete props.enter;\n delete props.leave;\n delete props.appearTimeout;\n delete props.enterTimeout;\n delete props.leaveTimeout;\n delete props.children;\n return _react2.default.cloneElement(_react2.default.Children.only(this.props.children), props);\n };\n\n return CSSTransitionGroupChild;\n}(_react2.default.Component);\n\nCSSTransitionGroupChild.displayName = 'CSSTransitionGroupChild';\n\n\nCSSTransitionGroupChild.propTypes = process.env.NODE_ENV !== \"production\" ? propTypes : {};\n\nexports.default = CSSTransitionGroupChild;\nmodule.exports = exports['default'];","'use strict';\n\nexports.__esModule = true;\n\nvar _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; };\n\nvar _chainFunction = require('chain-function');\n\nvar _chainFunction2 = _interopRequireDefault(_chainFunction);\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _propTypes = require('prop-types');\n\nvar _propTypes2 = _interopRequireDefault(_propTypes);\n\nvar _warning = require('warning');\n\nvar _warning2 = _interopRequireDefault(_warning);\n\nvar _ChildMapping = require('./utils/ChildMapping');\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return call && (typeof call === \"object\" || typeof call === \"function\") ? call : self; }\n\nfunction _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function, not \" + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; }\n\nvar propTypes = {\n component: _propTypes2.default.any,\n childFactory: _propTypes2.default.func,\n children: _propTypes2.default.node\n};\n\nvar defaultProps = {\n component: 'span',\n childFactory: function childFactory(child) {\n return child;\n }\n};\n\nvar TransitionGroup = function (_React$Component) {\n _inherits(TransitionGroup, _React$Component);\n\n function TransitionGroup(props, context) {\n _classCallCheck(this, TransitionGroup);\n\n var _this = _possibleConstructorReturn(this, _React$Component.call(this, props, context));\n\n _this.performAppear = function (key, component) {\n _this.currentlyTransitioningKeys[key] = true;\n\n if (component.componentWillAppear) {\n component.componentWillAppear(_this._handleDoneAppearing.bind(_this, key, component));\n } else {\n _this._handleDoneAppearing(key, component);\n }\n };\n\n _this._handleDoneAppearing = function (key, component) {\n if (component.componentDidAppear) {\n component.componentDidAppear();\n }\n\n delete _this.currentlyTransitioningKeys[key];\n\n var currentChildMapping = (0, _ChildMapping.getChildMapping)(_this.props.children);\n\n if (!currentChildMapping || !currentChildMapping.hasOwnProperty(key)) {\n // This was removed before it had fully appeared. Remove it.\n _this.performLeave(key, component);\n }\n };\n\n _this.performEnter = function (key, component) {\n _this.currentlyTransitioningKeys[key] = true;\n\n if (component.componentWillEnter) {\n component.componentWillEnter(_this._handleDoneEntering.bind(_this, key, component));\n } else {\n _this._handleDoneEntering(key, component);\n }\n };\n\n _this._handleDoneEntering = function (key, component) {\n if (component.componentDidEnter) {\n component.componentDidEnter();\n }\n\n delete _this.currentlyTransitioningKeys[key];\n\n var currentChildMapping = (0, _ChildMapping.getChildMapping)(_this.props.children);\n\n if (!currentChildMapping || !currentChildMapping.hasOwnProperty(key)) {\n // This was removed before it had fully entered. Remove it.\n _this.performLeave(key, component);\n }\n };\n\n _this.performLeave = function (key, component) {\n _this.currentlyTransitioningKeys[key] = true;\n\n if (component.componentWillLeave) {\n component.componentWillLeave(_this._handleDoneLeaving.bind(_this, key, component));\n } else {\n // Note that this is somewhat dangerous b/c it calls setState()\n // again, effectively mutating the component before all the work\n // is done.\n _this._handleDoneLeaving(key, component);\n }\n };\n\n _this._handleDoneLeaving = function (key, component) {\n if (component.componentDidLeave) {\n component.componentDidLeave();\n }\n\n delete _this.currentlyTransitioningKeys[key];\n\n var currentChildMapping = (0, _ChildMapping.getChildMapping)(_this.props.children);\n\n if (currentChildMapping && currentChildMapping.hasOwnProperty(key)) {\n // This entered again before it fully left. Add it again.\n _this.keysToEnter.push(key);\n } else {\n _this.setState(function (state) {\n var newChildren = _extends({}, state.children);\n delete newChildren[key];\n return { children: newChildren };\n });\n }\n };\n\n _this.childRefs = Object.create(null);\n\n _this.state = {\n children: (0, _ChildMapping.getChildMapping)(props.children)\n };\n return _this;\n }\n\n TransitionGroup.prototype.componentWillMount = function componentWillMount() {\n this.currentlyTransitioningKeys = {};\n this.keysToEnter = [];\n this.keysToLeave = [];\n };\n\n TransitionGroup.prototype.componentDidMount = function componentDidMount() {\n var initialChildMapping = this.state.children;\n for (var key in initialChildMapping) {\n if (initialChildMapping[key]) {\n this.performAppear(key, this.childRefs[key]);\n }\n }\n };\n\n TransitionGroup.prototype.componentWillReceiveProps = function componentWillReceiveProps(nextProps) {\n var nextChildMapping = (0, _ChildMapping.getChildMapping)(nextProps.children);\n var prevChildMapping = this.state.children;\n\n this.setState({\n children: (0, _ChildMapping.mergeChildMappings)(prevChildMapping, nextChildMapping)\n });\n\n for (var key in nextChildMapping) {\n var hasPrev = prevChildMapping && prevChildMapping.hasOwnProperty(key);\n if (nextChildMapping[key] && !hasPrev && !this.currentlyTransitioningKeys[key]) {\n this.keysToEnter.push(key);\n }\n }\n\n for (var _key in prevChildMapping) {\n var hasNext = nextChildMapping && nextChildMapping.hasOwnProperty(_key);\n if (prevChildMapping[_key] && !hasNext && !this.currentlyTransitioningKeys[_key]) {\n this.keysToLeave.push(_key);\n }\n }\n\n // If we want to someday check for reordering, we could do it here.\n };\n\n TransitionGroup.prototype.componentDidUpdate = function componentDidUpdate() {\n var _this2 = this;\n\n var keysToEnter = this.keysToEnter;\n this.keysToEnter = [];\n keysToEnter.forEach(function (key) {\n return _this2.performEnter(key, _this2.childRefs[key]);\n });\n\n var keysToLeave = this.keysToLeave;\n this.keysToLeave = [];\n keysToLeave.forEach(function (key) {\n return _this2.performLeave(key, _this2.childRefs[key]);\n });\n };\n\n TransitionGroup.prototype.render = function render() {\n var _this3 = this;\n\n // TODO: we could get rid of the need for the wrapper node\n // by cloning a single child\n var childrenToRender = [];\n\n var _loop = function _loop(key) {\n var child = _this3.state.children[key];\n if (child) {\n var isCallbackRef = typeof child.ref !== 'string';\n var factoryChild = _this3.props.childFactory(child);\n var ref = function ref(r) {\n _this3.childRefs[key] = r;\n };\n\n process.env.NODE_ENV !== 'production' ? (0, _warning2.default)(isCallbackRef, 'string refs are not supported on children of TransitionGroup and will be ignored. ' + 'Please use a callback ref instead: https://facebook.github.io/react/docs/refs-and-the-dom.html#the-ref-callback-attribute') : void 0;\n\n // Always chaining the refs leads to problems when the childFactory\n // wraps the child. The child ref callback gets called twice with the\n // wrapper and the child. So we only need to chain the ref if the\n // factoryChild is not different from child.\n if (factoryChild === child && isCallbackRef) {\n ref = (0, _chainFunction2.default)(child.ref, ref);\n }\n\n // You may need to apply reactive updates to a child as it is leaving.\n // The normal React way to do it won't work since the child will have\n // already been removed. In case you need this behavior you can provide\n // a childFactory function to wrap every child, even the ones that are\n // leaving.\n childrenToRender.push(_react2.default.cloneElement(factoryChild, {\n key: key,\n ref: ref\n }));\n }\n };\n\n for (var key in this.state.children) {\n _loop(key);\n }\n\n // Do not forward TransitionGroup props to primitive DOM nodes\n var props = _extends({}, this.props);\n delete props.transitionLeave;\n delete props.transitionName;\n delete props.transitionAppear;\n delete props.transitionEnter;\n delete props.childFactory;\n delete props.transitionLeaveTimeout;\n delete props.transitionEnterTimeout;\n delete props.transitionAppearTimeout;\n delete props.component;\n\n return _react2.default.createElement(this.props.component, props, childrenToRender);\n };\n\n return TransitionGroup;\n}(_react2.default.Component);\n\nTransitionGroup.displayName = 'TransitionGroup';\n\n\nTransitionGroup.propTypes = process.env.NODE_ENV !== \"production\" ? propTypes : {};\nTransitionGroup.defaultProps = defaultProps;\n\nexports.default = TransitionGroup;\nmodule.exports = exports['default'];","'use strict';\n\nvar _CSSTransitionGroup = require('./CSSTransitionGroup');\n\nvar _CSSTransitionGroup2 = _interopRequireDefault(_CSSTransitionGroup);\n\nvar _TransitionGroup = require('./TransitionGroup');\n\nvar _TransitionGroup2 = _interopRequireDefault(_TransitionGroup);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nmodule.exports = {\n TransitionGroup: _TransitionGroup2.default,\n CSSTransitionGroup: _CSSTransitionGroup2.default\n};","/**\n * Copyright 2014-2015, Facebook, Inc.\n * All rights reserved.\n *\n * This source code is licensed under the BSD-style license found in the\n * LICENSE file in the root directory of this source tree. An additional grant\n * of patent rights can be found in the PATENTS file in the same directory.\n */\n\n'use strict';\n\n/**\n * Similar to invariant but only logs a warning if the condition is not met.\n * This can be used to log issues in development environments in critical\n * paths. Removing the logging code for production environments will keep the\n * same logic and follow the same code paths.\n */\n\nvar warning = function() {};\n\nif (process.env.NODE_ENV !== 'production') {\n warning = function(condition, format, args) {\n var len = arguments.length;\n args = new Array(len > 2 ? len - 2 : 0);\n for (var key = 2; key < len; key++) {\n args[key - 2] = arguments[key];\n }\n if (format === undefined) {\n throw new Error(\n '`warning(condition, format, ...args)` requires a warning ' +\n 'message argument'\n );\n }\n\n if (format.length < 10 || (/^[s\\W]*$/).test(format)) {\n throw new Error(\n 'The warning format should be able to uniquely identify this ' +\n 'warning. Please, use a more descriptive format than: ' + format\n );\n }\n\n if (!condition) {\n var argIndex = 0;\n var message = 'Warning: ' +\n format.replace(/%s/g, function() {\n return args[argIndex++];\n });\n if (typeof console !== 'undefined') {\n console.error(message);\n }\n try {\n // This error was thrown as a convenience so that you can use this stack\n // to find the callsite that caused this warning to fire.\n throw new Error(message);\n } catch(x) {}\n }\n };\n}\n\nmodule.exports = warning;\n","'use strict';\n\nexports.__esModule = true;\nexports.getChildMapping = getChildMapping;\nexports.mergeChildMappings = mergeChildMappings;\n\nvar _react = require('react');\n\n/**\n * Given `this.props.children`, return an object mapping key to child.\n *\n * @param {*} children `this.props.children`\n * @return {object} Mapping of key to child\n */\nfunction getChildMapping(children) {\n if (!children) {\n return children;\n }\n var result = {};\n _react.Children.map(children, function (child) {\n return child;\n }).forEach(function (child) {\n result[child.key] = child;\n });\n return result;\n}\n\n/**\n * When you're adding or removing children some may be added or removed in the\n * same render pass. We want to show *both* since we want to simultaneously\n * animate elements in and out. This function takes a previous set of keys\n * and a new set of keys and merges them with its best guess of the correct\n * ordering. In the future we may expose some of the utilities in\n * ReactMultiChild to make this easy, but for now React itself does not\n * directly have this concept of the union of prevChildren and nextChildren\n * so we implement it here.\n *\n * @param {object} prev prev children as returned from\n * `ReactTransitionChildMapping.getChildMapping()`.\n * @param {object} next next children as returned from\n * `ReactTransitionChildMapping.getChildMapping()`.\n * @return {object} a key set that contains all keys in `prev` and all keys\n * in `next` in a reasonable order.\n */\nfunction mergeChildMappings(prev, next) {\n prev = prev || {};\n next = next || {};\n\n function getValueForKey(key) {\n if (next.hasOwnProperty(key)) {\n return next[key];\n }\n\n return prev[key];\n }\n\n // For each key of `next`, the list of keys to insert before that key in\n // the combined list\n var nextKeysPending = {};\n\n var pendingKeys = [];\n for (var prevKey in prev) {\n if (next.hasOwnProperty(prevKey)) {\n if (pendingKeys.length) {\n nextKeysPending[prevKey] = pendingKeys;\n pendingKeys = [];\n }\n } else {\n pendingKeys.push(prevKey);\n }\n }\n\n var i = void 0;\n var childMapping = {};\n for (var nextKey in next) {\n if (nextKeysPending.hasOwnProperty(nextKey)) {\n for (i = 0; i < nextKeysPending[nextKey].length; i++) {\n var pendingNextKey = nextKeysPending[nextKey][i];\n childMapping[nextKeysPending[nextKey][i]] = getValueForKey(pendingNextKey);\n }\n }\n childMapping[nextKey] = getValueForKey(nextKey);\n }\n\n // Finally, add the keys which didn't appear before any key in `next`\n for (i = 0; i < pendingKeys.length; i++) {\n childMapping[pendingKeys[i]] = getValueForKey(pendingKeys[i]);\n }\n\n return childMapping;\n}","'use strict';\n\nexports.__esModule = true;\nexports.nameShape = undefined;\nexports.transitionTimeout = transitionTimeout;\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _propTypes = require('prop-types');\n\nvar _propTypes2 = _interopRequireDefault(_propTypes);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction transitionTimeout(transitionType) {\n var timeoutPropName = 'transition' + transitionType + 'Timeout';\n var enabledPropName = 'transition' + transitionType;\n\n return function (props) {\n // If the transition is enabled\n if (props[enabledPropName]) {\n // If no timeout duration is provided\n if (props[timeoutPropName] == null) {\n return new Error(timeoutPropName + ' wasn\\'t supplied to CSSTransitionGroup: ' + 'this can cause unreliable animations and won\\'t be supported in ' + 'a future version of React. See ' + 'https://fb.me/react-animation-transition-group-timeout for more ' + 'information.');\n\n // If the duration isn't a number\n } else if (typeof props[timeoutPropName] !== 'number') {\n return new Error(timeoutPropName + ' must be a number (in milliseconds)');\n }\n }\n\n return null;\n };\n}\n\nvar nameShape = exports.nameShape = _propTypes2.default.oneOfType([_propTypes2.default.string, _propTypes2.default.shape({\n enter: _propTypes2.default.string,\n leave: _propTypes2.default.string,\n active: _propTypes2.default.string\n}), _propTypes2.default.shape({\n enter: _propTypes2.default.string,\n enterActive: _propTypes2.default.string,\n leave: _propTypes2.default.string,\n leaveActive: _propTypes2.default.string,\n appear: _propTypes2.default.string,\n appearActive: _propTypes2.default.string\n})]);"],"sourceRoot":""}