{"version":3,"file":"static/js/main.eec546e9.js","mappings":"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","sources":["../node_modules/prop-types/factoryWithThrowingShims.js","../node_modules/prop-types/index.js","../node_modules/prop-types/lib/ReactPropTypesSecret.js","../node_modules/react-dom/cjs/react-dom.production.min.js","../node_modules/react-dom/client.js","../node_modules/react-dom/index.js","../node_modules/react-signature-canvas/build/index.js","../node_modules/react/cjs/react-jsx-runtime.production.min.js","../node_modules/react/cjs/react.production.min.js","../node_modules/react/index.js","../node_modules/react/jsx-runtime.js","../node_modules/scheduler/cjs/scheduler.production.min.js","../node_modules/scheduler/index.js","../node_modules/trim-canvas/build/index.js","../node_modules/react-signature-canvas/node_modules/signature_pad/dist/signature_pad.mjs","../webpack/bootstrap","../webpack/runtime/compat get default export","../webpack/runtime/define property getters","../webpack/runtime/ensure chunk","../webpack/runtime/get javascript chunk filename","../webpack/runtime/get mini-css chunk filename","../webpack/runtime/hasOwnProperty shorthand","../webpack/runtime/load script","../webpack/runtime/make namespace object","../webpack/runtime/publicPath","../webpack/runtime/jsonp chunk loading","../node_modules/@babel/runtime/helpers/esm/typeof.js","../node_modules/@babel/runtime/helpers/esm/regeneratorRuntime.js","../node_modules/@babel/runtime/helpers/esm/asyncToGenerator.js","../node_modules/@babel/runtime/helpers/esm/toPropertyKey.js","../node_modules/@babel/runtime/helpers/esm/toPrimitive.js","../node_modules/@babel/runtime/helpers/esm/defineProperty.js","../node_modules/@babel/runtime/helpers/esm/objectSpread2.js","../node_modules/@babel/runtime/helpers/esm/arrayLikeToArray.js","../node_modules/@babel/runtime/helpers/esm/unsupportedIterableToArray.js","../node_modules/@babel/runtime/helpers/esm/slicedToArray.js","../node_modules/@babel/runtime/helpers/esm/arrayWithHoles.js","../node_modules/@babel/runtime/helpers/esm/iterableToArrayLimit.js","../node_modules/@babel/runtime/helpers/esm/nonIterableRest.js","Form/MarriageQualification.jsx","../node_modules/date-fns/esm/_lib/requiredArgs/index.js","../node_modules/date-fns/esm/isDate/index.js","../node_modules/date-fns/esm/toDate/index.js","../node_modules/date-fns/esm/isValid/index.js","../node_modules/date-fns/esm/_lib/toInteger/index.js","../node_modules/date-fns/esm/addMilliseconds/index.js","../node_modules/date-fns/esm/subMilliseconds/index.js","../node_modules/date-fns/esm/_lib/getUTCDayOfYear/index.js","../node_modules/date-fns/esm/_lib/startOfUTCISOWeek/index.js","../node_modules/date-fns/esm/_lib/getUTCISOWeekYear/index.js","../node_modules/date-fns/esm/_lib/startOfUTCISOWeekYear/index.js","../node_modules/date-fns/esm/_lib/getUTCISOWeek/index.js","../node_modules/date-fns/esm/_lib/defaultOptions/index.js","../node_modules/date-fns/esm/_lib/startOfUTCWeek/index.js","../node_modules/date-fns/esm/_lib/getUTCWeekYear/index.js","../node_modules/date-fns/esm/_lib/startOfUTCWeekYear/index.js","../node_modules/date-fns/esm/_lib/getUTCWeek/index.js","../node_modules/date-fns/esm/_lib/addLeadingZeros/index.js","../node_modules/date-fns/esm/_lib/format/lightFormatters/index.js","../node_modules/date-fns/esm/_lib/format/formatters/index.js","../node_modules/date-fns/esm/_lib/format/longFormatters/index.js","../node_modules/date-fns/esm/_lib/getTimezoneOffsetInMilliseconds/index.js","../node_modules/date-fns/esm/_lib/protectedTokens/index.js","../node_modules/date-fns/esm/locale/en-US/_lib/formatDistance/index.js","../node_modules/date-fns/esm/locale/_lib/buildFormatLongFn/index.js","../node_modules/date-fns/esm/locale/en-US/_lib/formatLong/index.js","../node_modules/date-fns/esm/locale/en-US/_lib/formatRelative/index.js","../node_modules/date-fns/esm/locale/_lib/buildLocalizeFn/index.js","../node_modules/date-fns/esm/locale/en-US/_lib/localize/index.js","../node_modules/date-fns/esm/locale/_lib/buildMatchFn/index.js","../node_modules/date-fns/esm/locale/en-US/_lib/match/index.js","../node_modules/date-fns/esm/locale/_lib/buildMatchPatternFn/index.js","../node_modules/date-fns/esm/_lib/defaultLocale/index.js","../node_modules/date-fns/esm/locale/en-US/index.js","../node_modules/date-fns/esm/format/index.js","Form/Details.jsx","../node_modules/reactjs-popup/src/hooks.tsx","../node_modules/reactjs-popup/src/styles.ts","../node_modules/reactjs-popup/src/Utils.ts","../node_modules/reactjs-popup/src/index.tsx","../node_modules/@babel/runtime/helpers/esm/extends.js","../node_modules/@babel/runtime/helpers/esm/objectWithoutPropertiesLoose.js","../node_modules/@babel/runtime/helpers/esm/setPrototypeOf.js","../node_modules/@babel/runtime/helpers/esm/inheritsLoose.js","../node_modules/dom-helpers/esm/removeClass.js","../node_modules/react-transition-group/esm/config.js","../node_modules/react-transition-group/esm/TransitionGroupContext.js","../node_modules/react-transition-group/esm/utils/reflow.js","../node_modules/react-transition-group/esm/Transition.js","../node_modules/react-transition-group/esm/CSSTransition.js","../node_modules/dom-helpers/esm/addClass.js","../node_modules/dom-helpers/esm/hasClass.js","Components/TermsConditions.jsx","../node_modules/@fortawesome/fontawesome-svg-core/index.mjs","../node_modules/@fortawesome/react-fontawesome/index.es.js","Form/Signature.jsx","Components/Formmodal.jsx","Form/PartnerDetails.jsx","Form/Address.jsx","../node_modules/@babel/runtime/helpers/esm/toConsumableArray.js","../node_modules/@babel/runtime/helpers/esm/arrayWithoutHoles.js","../node_modules/@babel/runtime/helpers/esm/iterableToArray.js","../node_modules/@babel/runtime/helpers/esm/nonIterableSpread.js","../node_modules/@smastrom/react-email-autocomplete/dist/index.mjs","Form/Contact.jsx","Form/PartnerAddress.jsx","Form/PartnerContact.jsx","Success.jsx","Footer.jsx","ErrorPage.jsx","App.js","Header/Header.jsx","reportWebVitals.js","../node_modules/@fortawesome/free-solid-svg-icons/index.mjs","index.js"],"sourcesContent":["/**\n * Copyright (c) 2013-present, Facebook, Inc.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\n'use strict';\n\nvar ReactPropTypesSecret = require('./lib/ReactPropTypesSecret');\n\nfunction emptyFunction() {}\nfunction emptyFunctionWithReset() {}\nemptyFunctionWithReset.resetWarningCache = emptyFunction;\n\nmodule.exports = function() {\n function shim(props, propName, componentName, location, propFullName, secret) {\n if (secret === ReactPropTypesSecret) {\n // It is still safe when called from React.\n return;\n }\n var err = new Error(\n 'Calling PropTypes validators directly is not supported by the `prop-types` package. ' +\n 'Use PropTypes.checkPropTypes() to call them. ' +\n 'Read more at http://fb.me/use-check-prop-types'\n );\n err.name = 'Invariant Violation';\n throw err;\n };\n shim.isRequired = shim;\n function getShim() {\n return shim;\n };\n // Important!\n // Keep this list in sync with production version in `./factoryWithTypeCheckers.js`.\n var ReactPropTypes = {\n array: shim,\n bigint: shim,\n bool: shim,\n func: shim,\n number: shim,\n object: shim,\n string: shim,\n symbol: shim,\n\n any: shim,\n arrayOf: getShim,\n element: shim,\n elementType: shim,\n instanceOf: getShim,\n node: shim,\n objectOf: getShim,\n oneOf: getShim,\n oneOfType: getShim,\n shape: getShim,\n exact: getShim,\n\n checkPropTypes: emptyFunctionWithReset,\n resetWarningCache: emptyFunction\n };\n\n ReactPropTypes.PropTypes = ReactPropTypes;\n\n return ReactPropTypes;\n};\n","/**\n * Copyright (c) 2013-present, Facebook, Inc.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\nif (process.env.NODE_ENV !== 'production') {\n var ReactIs = require('react-is');\n\n // By explicitly using `prop-types` you are opting into new development behavior.\n // http://fb.me/prop-types-in-prod\n var throwOnDirectAccess = true;\n module.exports = require('./factoryWithTypeCheckers')(ReactIs.isElement, throwOnDirectAccess);\n} else {\n // By explicitly using `prop-types` you are opting into new production behavior.\n // http://fb.me/prop-types-in-prod\n module.exports = require('./factoryWithThrowingShims')();\n}\n","/**\n * Copyright (c) 2013-present, Facebook, Inc.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\n'use strict';\n\nvar ReactPropTypesSecret = 'SECRET_DO_NOT_PASS_THIS_OR_YOU_WILL_BE_FIRED';\n\nmodule.exports = ReactPropTypesSecret;\n","/**\n * @license React\n * react-dom.production.min.js\n *\n * Copyright (c) Facebook, Inc. and its affiliates.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n/*\n Modernizr 3.0.0pre (Custom Build) | MIT\n*/\n'use strict';var aa=require(\"react\"),ca=require(\"scheduler\");function p(a){for(var b=\"https://reactjs.org/docs/error-decoder.html?invariant=\"+a,c=1;cb}return!1}function v(a,b,c,d,e,f,g){this.acceptsBooleans=2===b||3===b||4===b;this.attributeName=d;this.attributeNamespace=e;this.mustUseProperty=c;this.propertyName=a;this.type=b;this.sanitizeURL=f;this.removeEmptyString=g}var z={};\n\"children dangerouslySetInnerHTML defaultValue defaultChecked innerHTML suppressContentEditableWarning suppressHydrationWarning style\".split(\" \").forEach(function(a){z[a]=new v(a,0,!1,a,null,!1,!1)});[[\"acceptCharset\",\"accept-charset\"],[\"className\",\"class\"],[\"htmlFor\",\"for\"],[\"httpEquiv\",\"http-equiv\"]].forEach(function(a){var b=a[0];z[b]=new v(b,1,!1,a[1],null,!1,!1)});[\"contentEditable\",\"draggable\",\"spellCheck\",\"value\"].forEach(function(a){z[a]=new v(a,2,!1,a.toLowerCase(),null,!1,!1)});\n[\"autoReverse\",\"externalResourcesRequired\",\"focusable\",\"preserveAlpha\"].forEach(function(a){z[a]=new v(a,2,!1,a,null,!1,!1)});\"allowFullScreen async autoFocus autoPlay controls default defer disabled disablePictureInPicture disableRemotePlayback formNoValidate hidden loop noModule noValidate open playsInline readOnly required reversed scoped seamless itemScope\".split(\" \").forEach(function(a){z[a]=new v(a,3,!1,a.toLowerCase(),null,!1,!1)});\n[\"checked\",\"multiple\",\"muted\",\"selected\"].forEach(function(a){z[a]=new v(a,3,!0,a,null,!1,!1)});[\"capture\",\"download\"].forEach(function(a){z[a]=new v(a,4,!1,a,null,!1,!1)});[\"cols\",\"rows\",\"size\",\"span\"].forEach(function(a){z[a]=new v(a,6,!1,a,null,!1,!1)});[\"rowSpan\",\"start\"].forEach(function(a){z[a]=new v(a,5,!1,a.toLowerCase(),null,!1,!1)});var ra=/[\\-:]([a-z])/g;function sa(a){return a[1].toUpperCase()}\n\"accent-height alignment-baseline arabic-form baseline-shift cap-height clip-path clip-rule color-interpolation color-interpolation-filters color-profile color-rendering dominant-baseline enable-background fill-opacity fill-rule flood-color flood-opacity font-family font-size font-size-adjust font-stretch font-style font-variant font-weight glyph-name glyph-orientation-horizontal glyph-orientation-vertical horiz-adv-x horiz-origin-x image-rendering letter-spacing lighting-color marker-end marker-mid marker-start overline-position overline-thickness paint-order panose-1 pointer-events rendering-intent shape-rendering stop-color stop-opacity strikethrough-position strikethrough-thickness stroke-dasharray stroke-dashoffset stroke-linecap stroke-linejoin stroke-miterlimit stroke-opacity stroke-width text-anchor text-decoration text-rendering underline-position underline-thickness unicode-bidi unicode-range units-per-em v-alphabetic v-hanging v-ideographic v-mathematical vector-effect vert-adv-y vert-origin-x vert-origin-y word-spacing writing-mode xmlns:xlink x-height\".split(\" \").forEach(function(a){var b=a.replace(ra,\nsa);z[b]=new v(b,1,!1,a,null,!1,!1)});\"xlink:actuate xlink:arcrole xlink:role xlink:show xlink:title xlink:type\".split(\" \").forEach(function(a){var b=a.replace(ra,sa);z[b]=new v(b,1,!1,a,\"http://www.w3.org/1999/xlink\",!1,!1)});[\"xml:base\",\"xml:lang\",\"xml:space\"].forEach(function(a){var b=a.replace(ra,sa);z[b]=new v(b,1,!1,a,\"http://www.w3.org/XML/1998/namespace\",!1,!1)});[\"tabIndex\",\"crossOrigin\"].forEach(function(a){z[a]=new v(a,1,!1,a.toLowerCase(),null,!1,!1)});\nz.xlinkHref=new v(\"xlinkHref\",1,!1,\"xlink:href\",\"http://www.w3.org/1999/xlink\",!0,!1);[\"src\",\"href\",\"action\",\"formAction\"].forEach(function(a){z[a]=new v(a,1,!1,a.toLowerCase(),null,!0,!0)});\nfunction ta(a,b,c,d){var e=z.hasOwnProperty(b)?z[b]:null;if(null!==e?0!==e.type:d||!(2h||e[g]!==f[h]){var k=\"\\n\"+e[g].replace(\" at new \",\" at \");a.displayName&&k.includes(\"\")&&(k=k.replace(\"\",a.displayName));return k}while(1<=g&&0<=h)}break}}}finally{Na=!1,Error.prepareStackTrace=c}return(a=a?a.displayName||a.name:\"\")?Ma(a):\"\"}\nfunction Pa(a){switch(a.tag){case 5:return Ma(a.type);case 16:return Ma(\"Lazy\");case 13:return Ma(\"Suspense\");case 19:return Ma(\"SuspenseList\");case 0:case 2:case 15:return a=Oa(a.type,!1),a;case 11:return a=Oa(a.type.render,!1),a;case 1:return a=Oa(a.type,!0),a;default:return\"\"}}\nfunction Qa(a){if(null==a)return null;if(\"function\"===typeof a)return a.displayName||a.name||null;if(\"string\"===typeof a)return a;switch(a){case ya:return\"Fragment\";case wa:return\"Portal\";case Aa:return\"Profiler\";case za:return\"StrictMode\";case Ea:return\"Suspense\";case Fa:return\"SuspenseList\"}if(\"object\"===typeof a)switch(a.$$typeof){case Ca:return(a.displayName||\"Context\")+\".Consumer\";case Ba:return(a._context.displayName||\"Context\")+\".Provider\";case Da:var b=a.render;a=a.displayName;a||(a=b.displayName||\nb.name||\"\",a=\"\"!==a?\"ForwardRef(\"+a+\")\":\"ForwardRef\");return a;case Ga:return b=a.displayName||null,null!==b?b:Qa(a.type)||\"Memo\";case Ha:b=a._payload;a=a._init;try{return Qa(a(b))}catch(c){}}return null}\nfunction Ra(a){var b=a.type;switch(a.tag){case 24:return\"Cache\";case 9:return(b.displayName||\"Context\")+\".Consumer\";case 10:return(b._context.displayName||\"Context\")+\".Provider\";case 18:return\"DehydratedFragment\";case 11:return a=b.render,a=a.displayName||a.name||\"\",b.displayName||(\"\"!==a?\"ForwardRef(\"+a+\")\":\"ForwardRef\");case 7:return\"Fragment\";case 5:return b;case 4:return\"Portal\";case 3:return\"Root\";case 6:return\"Text\";case 16:return Qa(b);case 8:return b===za?\"StrictMode\":\"Mode\";case 22:return\"Offscreen\";\ncase 12:return\"Profiler\";case 21:return\"Scope\";case 13:return\"Suspense\";case 19:return\"SuspenseList\";case 25:return\"TracingMarker\";case 1:case 0:case 17:case 2:case 14:case 15:if(\"function\"===typeof b)return b.displayName||b.name||null;if(\"string\"===typeof b)return b}return null}function Sa(a){switch(typeof a){case \"boolean\":case \"number\":case \"string\":case \"undefined\":return a;case \"object\":return a;default:return\"\"}}\nfunction Ta(a){var b=a.type;return(a=a.nodeName)&&\"input\"===a.toLowerCase()&&(\"checkbox\"===b||\"radio\"===b)}\nfunction Ua(a){var b=Ta(a)?\"checked\":\"value\",c=Object.getOwnPropertyDescriptor(a.constructor.prototype,b),d=\"\"+a[b];if(!a.hasOwnProperty(b)&&\"undefined\"!==typeof c&&\"function\"===typeof c.get&&\"function\"===typeof c.set){var e=c.get,f=c.set;Object.defineProperty(a,b,{configurable:!0,get:function(){return e.call(this)},set:function(a){d=\"\"+a;f.call(this,a)}});Object.defineProperty(a,b,{enumerable:c.enumerable});return{getValue:function(){return d},setValue:function(a){d=\"\"+a},stopTracking:function(){a._valueTracker=\nnull;delete a[b]}}}}function Va(a){a._valueTracker||(a._valueTracker=Ua(a))}function Wa(a){if(!a)return!1;var b=a._valueTracker;if(!b)return!0;var c=b.getValue();var d=\"\";a&&(d=Ta(a)?a.checked?\"true\":\"false\":a.value);a=d;return a!==c?(b.setValue(a),!0):!1}function Xa(a){a=a||(\"undefined\"!==typeof document?document:void 0);if(\"undefined\"===typeof a)return null;try{return a.activeElement||a.body}catch(b){return a.body}}\nfunction Ya(a,b){var c=b.checked;return A({},b,{defaultChecked:void 0,defaultValue:void 0,value:void 0,checked:null!=c?c:a._wrapperState.initialChecked})}function Za(a,b){var c=null==b.defaultValue?\"\":b.defaultValue,d=null!=b.checked?b.checked:b.defaultChecked;c=Sa(null!=b.value?b.value:c);a._wrapperState={initialChecked:d,initialValue:c,controlled:\"checkbox\"===b.type||\"radio\"===b.type?null!=b.checked:null!=b.value}}function ab(a,b){b=b.checked;null!=b&&ta(a,\"checked\",b,!1)}\nfunction bb(a,b){ab(a,b);var c=Sa(b.value),d=b.type;if(null!=c)if(\"number\"===d){if(0===c&&\"\"===a.value||a.value!=c)a.value=\"\"+c}else a.value!==\"\"+c&&(a.value=\"\"+c);else if(\"submit\"===d||\"reset\"===d){a.removeAttribute(\"value\");return}b.hasOwnProperty(\"value\")?cb(a,b.type,c):b.hasOwnProperty(\"defaultValue\")&&cb(a,b.type,Sa(b.defaultValue));null==b.checked&&null!=b.defaultChecked&&(a.defaultChecked=!!b.defaultChecked)}\nfunction db(a,b,c){if(b.hasOwnProperty(\"value\")||b.hasOwnProperty(\"defaultValue\")){var d=b.type;if(!(\"submit\"!==d&&\"reset\"!==d||void 0!==b.value&&null!==b.value))return;b=\"\"+a._wrapperState.initialValue;c||b===a.value||(a.value=b);a.defaultValue=b}c=a.name;\"\"!==c&&(a.name=\"\");a.defaultChecked=!!a._wrapperState.initialChecked;\"\"!==c&&(a.name=c)}\nfunction cb(a,b,c){if(\"number\"!==b||Xa(a.ownerDocument)!==a)null==c?a.defaultValue=\"\"+a._wrapperState.initialValue:a.defaultValue!==\"\"+c&&(a.defaultValue=\"\"+c)}var eb=Array.isArray;\nfunction fb(a,b,c,d){a=a.options;if(b){b={};for(var e=0;e\"+b.valueOf().toString()+\"\";for(b=mb.firstChild;a.firstChild;)a.removeChild(a.firstChild);for(;b.firstChild;)a.appendChild(b.firstChild)}});\nfunction ob(a,b){if(b){var c=a.firstChild;if(c&&c===a.lastChild&&3===c.nodeType){c.nodeValue=b;return}}a.textContent=b}\nvar pb={animationIterationCount:!0,aspectRatio:!0,borderImageOutset:!0,borderImageSlice:!0,borderImageWidth:!0,boxFlex:!0,boxFlexGroup:!0,boxOrdinalGroup:!0,columnCount:!0,columns:!0,flex:!0,flexGrow:!0,flexPositive:!0,flexShrink:!0,flexNegative:!0,flexOrder:!0,gridArea:!0,gridRow:!0,gridRowEnd:!0,gridRowSpan:!0,gridRowStart:!0,gridColumn:!0,gridColumnEnd:!0,gridColumnSpan:!0,gridColumnStart:!0,fontWeight:!0,lineClamp:!0,lineHeight:!0,opacity:!0,order:!0,orphans:!0,tabSize:!0,widows:!0,zIndex:!0,\nzoom:!0,fillOpacity:!0,floodOpacity:!0,stopOpacity:!0,strokeDasharray:!0,strokeDashoffset:!0,strokeMiterlimit:!0,strokeOpacity:!0,strokeWidth:!0},qb=[\"Webkit\",\"ms\",\"Moz\",\"O\"];Object.keys(pb).forEach(function(a){qb.forEach(function(b){b=b+a.charAt(0).toUpperCase()+a.substring(1);pb[b]=pb[a]})});function rb(a,b,c){return null==b||\"boolean\"===typeof b||\"\"===b?\"\":c||\"number\"!==typeof b||0===b||pb.hasOwnProperty(a)&&pb[a]?(\"\"+b).trim():b+\"px\"}\nfunction sb(a,b){a=a.style;for(var c in b)if(b.hasOwnProperty(c)){var d=0===c.indexOf(\"--\"),e=rb(c,b[c],d);\"float\"===c&&(c=\"cssFloat\");d?a.setProperty(c,e):a[c]=e}}var tb=A({menuitem:!0},{area:!0,base:!0,br:!0,col:!0,embed:!0,hr:!0,img:!0,input:!0,keygen:!0,link:!0,meta:!0,param:!0,source:!0,track:!0,wbr:!0});\nfunction ub(a,b){if(b){if(tb[a]&&(null!=b.children||null!=b.dangerouslySetInnerHTML))throw Error(p(137,a));if(null!=b.dangerouslySetInnerHTML){if(null!=b.children)throw Error(p(60));if(\"object\"!==typeof b.dangerouslySetInnerHTML||!(\"__html\"in b.dangerouslySetInnerHTML))throw Error(p(61));}if(null!=b.style&&\"object\"!==typeof b.style)throw Error(p(62));}}\nfunction vb(a,b){if(-1===a.indexOf(\"-\"))return\"string\"===typeof b.is;switch(a){case \"annotation-xml\":case \"color-profile\":case \"font-face\":case \"font-face-src\":case \"font-face-uri\":case \"font-face-format\":case \"font-face-name\":case \"missing-glyph\":return!1;default:return!0}}var wb=null;function xb(a){a=a.target||a.srcElement||window;a.correspondingUseElement&&(a=a.correspondingUseElement);return 3===a.nodeType?a.parentNode:a}var yb=null,zb=null,Ab=null;\nfunction Bb(a){if(a=Cb(a)){if(\"function\"!==typeof yb)throw Error(p(280));var b=a.stateNode;b&&(b=Db(b),yb(a.stateNode,a.type,b))}}function Eb(a){zb?Ab?Ab.push(a):Ab=[a]:zb=a}function Fb(){if(zb){var a=zb,b=Ab;Ab=zb=null;Bb(a);if(b)for(a=0;a>>=0;return 0===a?32:31-(pc(a)/qc|0)|0}var rc=64,sc=4194304;\nfunction tc(a){switch(a&-a){case 1:return 1;case 2:return 2;case 4:return 4;case 8:return 8;case 16:return 16;case 32:return 32;case 64:case 128:case 256:case 512:case 1024:case 2048:case 4096:case 8192:case 16384:case 32768:case 65536:case 131072:case 262144:case 524288:case 1048576:case 2097152:return a&4194240;case 4194304:case 8388608:case 16777216:case 33554432:case 67108864:return a&130023424;case 134217728:return 134217728;case 268435456:return 268435456;case 536870912:return 536870912;case 1073741824:return 1073741824;\ndefault:return a}}function uc(a,b){var c=a.pendingLanes;if(0===c)return 0;var d=0,e=a.suspendedLanes,f=a.pingedLanes,g=c&268435455;if(0!==g){var h=g&~e;0!==h?d=tc(h):(f&=g,0!==f&&(d=tc(f)))}else g=c&~e,0!==g?d=tc(g):0!==f&&(d=tc(f));if(0===d)return 0;if(0!==b&&b!==d&&0===(b&e)&&(e=d&-d,f=b&-b,e>=f||16===e&&0!==(f&4194240)))return b;0!==(d&4)&&(d|=c&16);b=a.entangledLanes;if(0!==b)for(a=a.entanglements,b&=d;0c;c++)b.push(a);return b}\nfunction Ac(a,b,c){a.pendingLanes|=b;536870912!==b&&(a.suspendedLanes=0,a.pingedLanes=0);a=a.eventTimes;b=31-oc(b);a[b]=c}function Bc(a,b){var c=a.pendingLanes&~b;a.pendingLanes=b;a.suspendedLanes=0;a.pingedLanes=0;a.expiredLanes&=b;a.mutableReadLanes&=b;a.entangledLanes&=b;b=a.entanglements;var d=a.eventTimes;for(a=a.expirationTimes;0=be),ee=String.fromCharCode(32),fe=!1;\nfunction ge(a,b){switch(a){case \"keyup\":return-1!==$d.indexOf(b.keyCode);case \"keydown\":return 229!==b.keyCode;case \"keypress\":case \"mousedown\":case \"focusout\":return!0;default:return!1}}function he(a){a=a.detail;return\"object\"===typeof a&&\"data\"in a?a.data:null}var ie=!1;function je(a,b){switch(a){case \"compositionend\":return he(b);case \"keypress\":if(32!==b.which)return null;fe=!0;return ee;case \"textInput\":return a=b.data,a===ee&&fe?null:a;default:return null}}\nfunction ke(a,b){if(ie)return\"compositionend\"===a||!ae&&ge(a,b)?(a=nd(),md=ld=kd=null,ie=!1,a):null;switch(a){case \"paste\":return null;case \"keypress\":if(!(b.ctrlKey||b.altKey||b.metaKey)||b.ctrlKey&&b.altKey){if(b.char&&1=b)return{node:c,offset:b-a};a=d}a:{for(;c;){if(c.nextSibling){c=c.nextSibling;break a}c=c.parentNode}c=void 0}c=Je(c)}}function Le(a,b){return a&&b?a===b?!0:a&&3===a.nodeType?!1:b&&3===b.nodeType?Le(a,b.parentNode):\"contains\"in a?a.contains(b):a.compareDocumentPosition?!!(a.compareDocumentPosition(b)&16):!1:!1}\nfunction Me(){for(var a=window,b=Xa();b instanceof a.HTMLIFrameElement;){try{var c=\"string\"===typeof b.contentWindow.location.href}catch(d){c=!1}if(c)a=b.contentWindow;else break;b=Xa(a.document)}return b}function Ne(a){var b=a&&a.nodeName&&a.nodeName.toLowerCase();return b&&(\"input\"===b&&(\"text\"===a.type||\"search\"===a.type||\"tel\"===a.type||\"url\"===a.type||\"password\"===a.type)||\"textarea\"===b||\"true\"===a.contentEditable)}\nfunction Oe(a){var b=Me(),c=a.focusedElem,d=a.selectionRange;if(b!==c&&c&&c.ownerDocument&&Le(c.ownerDocument.documentElement,c)){if(null!==d&&Ne(c))if(b=d.start,a=d.end,void 0===a&&(a=b),\"selectionStart\"in c)c.selectionStart=b,c.selectionEnd=Math.min(a,c.value.length);else if(a=(b=c.ownerDocument||document)&&b.defaultView||window,a.getSelection){a=a.getSelection();var e=c.textContent.length,f=Math.min(d.start,e);d=void 0===d.end?f:Math.min(d.end,e);!a.extend&&f>d&&(e=d,d=f,f=e);e=Ke(c,f);var g=Ke(c,\nd);e&&g&&(1!==a.rangeCount||a.anchorNode!==e.node||a.anchorOffset!==e.offset||a.focusNode!==g.node||a.focusOffset!==g.offset)&&(b=b.createRange(),b.setStart(e.node,e.offset),a.removeAllRanges(),f>d?(a.addRange(b),a.extend(g.node,g.offset)):(b.setEnd(g.node,g.offset),a.addRange(b)))}b=[];for(a=c;a=a.parentNode;)1===a.nodeType&&b.push({element:a,left:a.scrollLeft,top:a.scrollTop});\"function\"===typeof c.focus&&c.focus();for(c=0;c=document.documentMode,Qe=null,Re=null,Se=null,Te=!1;\nfunction Ue(a,b,c){var d=c.window===c?c.document:9===c.nodeType?c:c.ownerDocument;Te||null==Qe||Qe!==Xa(d)||(d=Qe,\"selectionStart\"in d&&Ne(d)?d={start:d.selectionStart,end:d.selectionEnd}:(d=(d.ownerDocument&&d.ownerDocument.defaultView||window).getSelection(),d={anchorNode:d.anchorNode,anchorOffset:d.anchorOffset,focusNode:d.focusNode,focusOffset:d.focusOffset}),Se&&Ie(Se,d)||(Se=d,d=oe(Re,\"onSelect\"),0Tf||(a.current=Sf[Tf],Sf[Tf]=null,Tf--)}function G(a,b){Tf++;Sf[Tf]=a.current;a.current=b}var Vf={},H=Uf(Vf),Wf=Uf(!1),Xf=Vf;function Yf(a,b){var c=a.type.contextTypes;if(!c)return Vf;var d=a.stateNode;if(d&&d.__reactInternalMemoizedUnmaskedChildContext===b)return d.__reactInternalMemoizedMaskedChildContext;var e={},f;for(f in c)e[f]=b[f];d&&(a=a.stateNode,a.__reactInternalMemoizedUnmaskedChildContext=b,a.__reactInternalMemoizedMaskedChildContext=e);return e}\nfunction Zf(a){a=a.childContextTypes;return null!==a&&void 0!==a}function $f(){E(Wf);E(H)}function ag(a,b,c){if(H.current!==Vf)throw Error(p(168));G(H,b);G(Wf,c)}function bg(a,b,c){var d=a.stateNode;b=b.childContextTypes;if(\"function\"!==typeof d.getChildContext)return c;d=d.getChildContext();for(var e in d)if(!(e in b))throw Error(p(108,Ra(a)||\"Unknown\",e));return A({},c,d)}\nfunction cg(a){a=(a=a.stateNode)&&a.__reactInternalMemoizedMergedChildContext||Vf;Xf=H.current;G(H,a);G(Wf,Wf.current);return!0}function dg(a,b,c){var d=a.stateNode;if(!d)throw Error(p(169));c?(a=bg(a,b,Xf),d.__reactInternalMemoizedMergedChildContext=a,E(Wf),E(H),G(H,a)):E(Wf);G(Wf,c)}var eg=null,fg=!1,gg=!1;function hg(a){null===eg?eg=[a]:eg.push(a)}function ig(a){fg=!0;hg(a)}\nfunction jg(){if(!gg&&null!==eg){gg=!0;var a=0,b=C;try{var c=eg;for(C=1;a>=g;e-=g;rg=1<<32-oc(b)+e|c<w?(x=u,u=null):x=u.sibling;var n=r(e,u,h[w],k);if(null===n){null===u&&(u=x);break}a&&u&&null===n.alternate&&b(e,u);g=f(n,g,w);null===m?l=n:m.sibling=n;m=n;u=x}if(w===h.length)return c(e,u),I&&tg(e,w),l;if(null===u){for(;ww?(x=m,m=null):x=m.sibling;var t=r(e,m,n.value,k);if(null===t){null===m&&(m=x);break}a&&m&&null===t.alternate&&b(e,m);g=f(t,g,w);null===u?l=t:u.sibling=t;u=t;m=x}if(n.done)return c(e,\nm),I&&tg(e,w),l;if(null===m){for(;!n.done;w++,n=h.next())n=q(e,n.value,k),null!==n&&(g=f(n,g,w),null===u?l=n:u.sibling=n,u=n);I&&tg(e,w);return l}for(m=d(e,m);!n.done;w++,n=h.next())n=y(m,e,w,n.value,k),null!==n&&(a&&null!==n.alternate&&m.delete(null===n.key?w:n.key),g=f(n,g,w),null===u?l=n:u.sibling=n,u=n);a&&m.forEach(function(a){return b(e,a)});I&&tg(e,w);return l}function J(a,d,f,h){\"object\"===typeof f&&null!==f&&f.type===ya&&null===f.key&&(f=f.props.children);if(\"object\"===typeof f&&null!==f){switch(f.$$typeof){case va:a:{for(var k=\nf.key,l=d;null!==l;){if(l.key===k){k=f.type;if(k===ya){if(7===l.tag){c(a,l.sibling);d=e(l,f.props.children);d.return=a;a=d;break a}}else if(l.elementType===k||\"object\"===typeof k&&null!==k&&k.$$typeof===Ha&&uh(k)===l.type){c(a,l.sibling);d=e(l,f.props);d.ref=sh(a,l,f);d.return=a;a=d;break a}c(a,l);break}else b(a,l);l=l.sibling}f.type===ya?(d=Ah(f.props.children,a.mode,h,f.key),d.return=a,a=d):(h=yh(f.type,f.key,f.props,null,a.mode,h),h.ref=sh(a,d,f),h.return=a,a=h)}return g(a);case wa:a:{for(l=f.key;null!==\nd;){if(d.key===l)if(4===d.tag&&d.stateNode.containerInfo===f.containerInfo&&d.stateNode.implementation===f.implementation){c(a,d.sibling);d=e(d,f.children||[]);d.return=a;a=d;break a}else{c(a,d);break}else b(a,d);d=d.sibling}d=zh(f,a.mode,h);d.return=a;a=d}return g(a);case Ha:return l=f._init,J(a,d,l(f._payload),h)}if(eb(f))return n(a,d,f,h);if(Ka(f))return t(a,d,f,h);th(a,f)}return\"string\"===typeof f&&\"\"!==f||\"number\"===typeof f?(f=\"\"+f,null!==d&&6===d.tag?(c(a,d.sibling),d=e(d,f),d.return=a,a=d):\n(c(a,d),d=xh(f,a.mode,h),d.return=a,a=d),g(a)):c(a,d)}return J}var Bh=vh(!0),Ch=vh(!1),Dh={},Eh=Uf(Dh),Fh=Uf(Dh),Gh=Uf(Dh);function Hh(a){if(a===Dh)throw Error(p(174));return a}function Ih(a,b){G(Gh,b);G(Fh,a);G(Eh,Dh);a=b.nodeType;switch(a){case 9:case 11:b=(b=b.documentElement)?b.namespaceURI:lb(null,\"\");break;default:a=8===a?b.parentNode:b,b=a.namespaceURI||null,a=a.tagName,b=lb(b,a)}E(Eh);G(Eh,b)}function Jh(){E(Eh);E(Fh);E(Gh)}\nfunction Kh(a){Hh(Gh.current);var b=Hh(Eh.current);var c=lb(b,a.type);b!==c&&(G(Fh,a),G(Eh,c))}function Lh(a){Fh.current===a&&(E(Eh),E(Fh))}var M=Uf(0);\nfunction Mh(a){for(var b=a;null!==b;){if(13===b.tag){var c=b.memoizedState;if(null!==c&&(c=c.dehydrated,null===c||\"$?\"===c.data||\"$!\"===c.data))return b}else if(19===b.tag&&void 0!==b.memoizedProps.revealOrder){if(0!==(b.flags&128))return b}else if(null!==b.child){b.child.return=b;b=b.child;continue}if(b===a)break;for(;null===b.sibling;){if(null===b.return||b.return===a)return null;b=b.return}b.sibling.return=b.return;b=b.sibling}return null}var Nh=[];\nfunction Oh(){for(var a=0;ac?c:4;a(!0);var d=Qh.transition;Qh.transition={};try{a(!1),b()}finally{C=c,Qh.transition=d}}function Fi(){return di().memoizedState}\nfunction Gi(a,b,c){var d=lh(a);c={lane:d,action:c,hasEagerState:!1,eagerState:null,next:null};if(Hi(a))Ii(b,c);else if(c=Yg(a,b,c,d),null!==c){var e=L();mh(c,a,d,e);Ji(c,b,d)}}\nfunction ri(a,b,c){var d=lh(a),e={lane:d,action:c,hasEagerState:!1,eagerState:null,next:null};if(Hi(a))Ii(b,e);else{var f=a.alternate;if(0===a.lanes&&(null===f||0===f.lanes)&&(f=b.lastRenderedReducer,null!==f))try{var g=b.lastRenderedState,h=f(g,c);e.hasEagerState=!0;e.eagerState=h;if(He(h,g)){var k=b.interleaved;null===k?(e.next=e,Xg(b)):(e.next=k.next,k.next=e);b.interleaved=e;return}}catch(l){}finally{}c=Yg(a,b,e,d);null!==c&&(e=L(),mh(c,a,d,e),Ji(c,b,d))}}\nfunction Hi(a){var b=a.alternate;return a===N||null!==b&&b===N}function Ii(a,b){Th=Sh=!0;var c=a.pending;null===c?b.next=b:(b.next=c.next,c.next=b);a.pending=b}function Ji(a,b,c){if(0!==(c&4194240)){var d=b.lanes;d&=a.pendingLanes;c|=d;b.lanes=c;Cc(a,c)}}\nvar ai={readContext:Vg,useCallback:Q,useContext:Q,useEffect:Q,useImperativeHandle:Q,useInsertionEffect:Q,useLayoutEffect:Q,useMemo:Q,useReducer:Q,useRef:Q,useState:Q,useDebugValue:Q,useDeferredValue:Q,useTransition:Q,useMutableSource:Q,useSyncExternalStore:Q,useId:Q,unstable_isNewReconciler:!1},Yh={readContext:Vg,useCallback:function(a,b){ci().memoizedState=[a,void 0===b?null:b];return a},useContext:Vg,useEffect:vi,useImperativeHandle:function(a,b,c){c=null!==c&&void 0!==c?c.concat([a]):null;return ti(4194308,\n4,yi.bind(null,b,a),c)},useLayoutEffect:function(a,b){return ti(4194308,4,a,b)},useInsertionEffect:function(a,b){return ti(4,2,a,b)},useMemo:function(a,b){var c=ci();b=void 0===b?null:b;a=a();c.memoizedState=[a,b];return a},useReducer:function(a,b,c){var d=ci();b=void 0!==c?c(b):b;d.memoizedState=d.baseState=b;a={pending:null,interleaved:null,lanes:0,dispatch:null,lastRenderedReducer:a,lastRenderedState:b};d.queue=a;a=a.dispatch=Gi.bind(null,N,a);return[d.memoizedState,a]},useRef:function(a){var b=\nci();a={current:a};return b.memoizedState=a},useState:qi,useDebugValue:Ai,useDeferredValue:function(a){return ci().memoizedState=a},useTransition:function(){var a=qi(!1),b=a[0];a=Ei.bind(null,a[1]);ci().memoizedState=a;return[b,a]},useMutableSource:function(){},useSyncExternalStore:function(a,b,c){var d=N,e=ci();if(I){if(void 0===c)throw Error(p(407));c=c()}else{c=b();if(null===R)throw Error(p(349));0!==(Rh&30)||ni(d,b,c)}e.memoizedState=c;var f={value:c,getSnapshot:b};e.queue=f;vi(ki.bind(null,d,\nf,a),[a]);d.flags|=2048;li(9,mi.bind(null,d,f,c,b),void 0,null);return c},useId:function(){var a=ci(),b=R.identifierPrefix;if(I){var c=sg;var d=rg;c=(d&~(1<<32-oc(d)-1)).toString(32)+c;b=\":\"+b+\"R\"+c;c=Uh++;0\\x3c/script>\",a=a.removeChild(a.firstChild)):\n\"string\"===typeof d.is?a=g.createElement(c,{is:d.is}):(a=g.createElement(c),\"select\"===c&&(g=a,d.multiple?g.multiple=!0:d.size&&(g.size=d.size))):a=g.createElementNS(a,c);a[Of]=b;a[Pf]=d;Aj(a,b,!1,!1);b.stateNode=a;a:{g=vb(c,d);switch(c){case \"dialog\":D(\"cancel\",a);D(\"close\",a);e=d;break;case \"iframe\":case \"object\":case \"embed\":D(\"load\",a);e=d;break;case \"video\":case \"audio\":for(e=0;eHj&&(b.flags|=128,d=!0,Ej(f,!1),b.lanes=4194304)}else{if(!d)if(a=Mh(g),null!==a){if(b.flags|=128,d=!0,c=a.updateQueue,null!==c&&(b.updateQueue=c,b.flags|=4),Ej(f,!0),null===f.tail&&\"hidden\"===f.tailMode&&!g.alternate&&!I)return S(b),null}else 2*B()-f.renderingStartTime>Hj&&1073741824!==c&&(b.flags|=128,d=!0,Ej(f,!1),b.lanes=4194304);f.isBackwards?(g.sibling=b.child,b.child=g):(c=f.last,null!==c?c.sibling=g:b.child=g,f.last=g)}if(null!==f.tail)return b=f.tail,f.rendering=\nb,f.tail=b.sibling,f.renderingStartTime=B(),b.sibling=null,c=M.current,G(M,d?c&1|2:c&1),b;S(b);return null;case 22:case 23:return Ij(),d=null!==b.memoizedState,null!==a&&null!==a.memoizedState!==d&&(b.flags|=8192),d&&0!==(b.mode&1)?0!==(gj&1073741824)&&(S(b),b.subtreeFlags&6&&(b.flags|=8192)):S(b),null;case 24:return null;case 25:return null}throw Error(p(156,b.tag));}\nfunction Jj(a,b){wg(b);switch(b.tag){case 1:return Zf(b.type)&&$f(),a=b.flags,a&65536?(b.flags=a&-65537|128,b):null;case 3:return Jh(),E(Wf),E(H),Oh(),a=b.flags,0!==(a&65536)&&0===(a&128)?(b.flags=a&-65537|128,b):null;case 5:return Lh(b),null;case 13:E(M);a=b.memoizedState;if(null!==a&&null!==a.dehydrated){if(null===b.alternate)throw Error(p(340));Ig()}a=b.flags;return a&65536?(b.flags=a&-65537|128,b):null;case 19:return E(M),null;case 4:return Jh(),null;case 10:return Rg(b.type._context),null;case 22:case 23:return Ij(),\nnull;case 24:return null;default:return null}}var Kj=!1,U=!1,Lj=\"function\"===typeof WeakSet?WeakSet:Set,V=null;function Mj(a,b){var c=a.ref;if(null!==c)if(\"function\"===typeof c)try{c(null)}catch(d){W(a,b,d)}else c.current=null}function Nj(a,b,c){try{c()}catch(d){W(a,b,d)}}var Oj=!1;\nfunction Pj(a,b){Cf=dd;a=Me();if(Ne(a)){if(\"selectionStart\"in a)var c={start:a.selectionStart,end:a.selectionEnd};else a:{c=(c=a.ownerDocument)&&c.defaultView||window;var d=c.getSelection&&c.getSelection();if(d&&0!==d.rangeCount){c=d.anchorNode;var e=d.anchorOffset,f=d.focusNode;d=d.focusOffset;try{c.nodeType,f.nodeType}catch(F){c=null;break a}var g=0,h=-1,k=-1,l=0,m=0,q=a,r=null;b:for(;;){for(var y;;){q!==c||0!==e&&3!==q.nodeType||(h=g+e);q!==f||0!==d&&3!==q.nodeType||(k=g+d);3===q.nodeType&&(g+=\nq.nodeValue.length);if(null===(y=q.firstChild))break;r=q;q=y}for(;;){if(q===a)break b;r===c&&++l===e&&(h=g);r===f&&++m===d&&(k=g);if(null!==(y=q.nextSibling))break;q=r;r=q.parentNode}q=y}c=-1===h||-1===k?null:{start:h,end:k}}else c=null}c=c||{start:0,end:0}}else c=null;Df={focusedElem:a,selectionRange:c};dd=!1;for(V=b;null!==V;)if(b=V,a=b.child,0!==(b.subtreeFlags&1028)&&null!==a)a.return=b,V=a;else for(;null!==V;){b=V;try{var n=b.alternate;if(0!==(b.flags&1024))switch(b.tag){case 0:case 11:case 15:break;\ncase 1:if(null!==n){var t=n.memoizedProps,J=n.memoizedState,x=b.stateNode,w=x.getSnapshotBeforeUpdate(b.elementType===b.type?t:Lg(b.type,t),J);x.__reactInternalSnapshotBeforeUpdate=w}break;case 3:var u=b.stateNode.containerInfo;1===u.nodeType?u.textContent=\"\":9===u.nodeType&&u.documentElement&&u.removeChild(u.documentElement);break;case 5:case 6:case 4:case 17:break;default:throw Error(p(163));}}catch(F){W(b,b.return,F)}a=b.sibling;if(null!==a){a.return=b.return;V=a;break}V=b.return}n=Oj;Oj=!1;return n}\nfunction Qj(a,b,c){var d=b.updateQueue;d=null!==d?d.lastEffect:null;if(null!==d){var e=d=d.next;do{if((e.tag&a)===a){var f=e.destroy;e.destroy=void 0;void 0!==f&&Nj(b,c,f)}e=e.next}while(e!==d)}}function Rj(a,b){b=b.updateQueue;b=null!==b?b.lastEffect:null;if(null!==b){var c=b=b.next;do{if((c.tag&a)===a){var d=c.create;c.destroy=d()}c=c.next}while(c!==b)}}function Sj(a){var b=a.ref;if(null!==b){var c=a.stateNode;switch(a.tag){case 5:a=c;break;default:a=c}\"function\"===typeof b?b(a):b.current=a}}\nfunction Tj(a){var b=a.alternate;null!==b&&(a.alternate=null,Tj(b));a.child=null;a.deletions=null;a.sibling=null;5===a.tag&&(b=a.stateNode,null!==b&&(delete b[Of],delete b[Pf],delete b[of],delete b[Qf],delete b[Rf]));a.stateNode=null;a.return=null;a.dependencies=null;a.memoizedProps=null;a.memoizedState=null;a.pendingProps=null;a.stateNode=null;a.updateQueue=null}function Uj(a){return 5===a.tag||3===a.tag||4===a.tag}\nfunction Vj(a){a:for(;;){for(;null===a.sibling;){if(null===a.return||Uj(a.return))return null;a=a.return}a.sibling.return=a.return;for(a=a.sibling;5!==a.tag&&6!==a.tag&&18!==a.tag;){if(a.flags&2)continue a;if(null===a.child||4===a.tag)continue a;else a.child.return=a,a=a.child}if(!(a.flags&2))return a.stateNode}}\nfunction Wj(a,b,c){var d=a.tag;if(5===d||6===d)a=a.stateNode,b?8===c.nodeType?c.parentNode.insertBefore(a,b):c.insertBefore(a,b):(8===c.nodeType?(b=c.parentNode,b.insertBefore(a,c)):(b=c,b.appendChild(a)),c=c._reactRootContainer,null!==c&&void 0!==c||null!==b.onclick||(b.onclick=Bf));else if(4!==d&&(a=a.child,null!==a))for(Wj(a,b,c),a=a.sibling;null!==a;)Wj(a,b,c),a=a.sibling}\nfunction Xj(a,b,c){var d=a.tag;if(5===d||6===d)a=a.stateNode,b?c.insertBefore(a,b):c.appendChild(a);else if(4!==d&&(a=a.child,null!==a))for(Xj(a,b,c),a=a.sibling;null!==a;)Xj(a,b,c),a=a.sibling}var X=null,Yj=!1;function Zj(a,b,c){for(c=c.child;null!==c;)ak(a,b,c),c=c.sibling}\nfunction ak(a,b,c){if(lc&&\"function\"===typeof lc.onCommitFiberUnmount)try{lc.onCommitFiberUnmount(kc,c)}catch(h){}switch(c.tag){case 5:U||Mj(c,b);case 6:var d=X,e=Yj;X=null;Zj(a,b,c);X=d;Yj=e;null!==X&&(Yj?(a=X,c=c.stateNode,8===a.nodeType?a.parentNode.removeChild(c):a.removeChild(c)):X.removeChild(c.stateNode));break;case 18:null!==X&&(Yj?(a=X,c=c.stateNode,8===a.nodeType?Kf(a.parentNode,c):1===a.nodeType&&Kf(a,c),bd(a)):Kf(X,c.stateNode));break;case 4:d=X;e=Yj;X=c.stateNode.containerInfo;Yj=!0;\nZj(a,b,c);X=d;Yj=e;break;case 0:case 11:case 14:case 15:if(!U&&(d=c.updateQueue,null!==d&&(d=d.lastEffect,null!==d))){e=d=d.next;do{var f=e,g=f.destroy;f=f.tag;void 0!==g&&(0!==(f&2)?Nj(c,b,g):0!==(f&4)&&Nj(c,b,g));e=e.next}while(e!==d)}Zj(a,b,c);break;case 1:if(!U&&(Mj(c,b),d=c.stateNode,\"function\"===typeof d.componentWillUnmount))try{d.props=c.memoizedProps,d.state=c.memoizedState,d.componentWillUnmount()}catch(h){W(c,b,h)}Zj(a,b,c);break;case 21:Zj(a,b,c);break;case 22:c.mode&1?(U=(d=U)||null!==\nc.memoizedState,Zj(a,b,c),U=d):Zj(a,b,c);break;default:Zj(a,b,c)}}function bk(a){var b=a.updateQueue;if(null!==b){a.updateQueue=null;var c=a.stateNode;null===c&&(c=a.stateNode=new Lj);b.forEach(function(b){var d=ck.bind(null,a,b);c.has(b)||(c.add(b),b.then(d,d))})}}\nfunction dk(a,b){var c=b.deletions;if(null!==c)for(var d=0;de&&(e=g);d&=~f}d=e;d=B()-d;d=(120>d?120:480>d?480:1080>d?1080:1920>d?1920:3E3>d?3E3:4320>d?4320:1960*mk(d/1960))-d;if(10a?16:a;if(null===xk)var d=!1;else{a=xk;xk=null;yk=0;if(0!==(K&6))throw Error(p(331));var e=K;K|=4;for(V=a.current;null!==V;){var f=V,g=f.child;if(0!==(V.flags&16)){var h=f.deletions;if(null!==h){for(var k=0;kB()-gk?Lk(a,0):sk|=c);Ek(a,b)}function Zk(a,b){0===b&&(0===(a.mode&1)?b=1:(b=sc,sc<<=1,0===(sc&130023424)&&(sc=4194304)));var c=L();a=Zg(a,b);null!==a&&(Ac(a,b,c),Ek(a,c))}function vj(a){var b=a.memoizedState,c=0;null!==b&&(c=b.retryLane);Zk(a,c)}\nfunction ck(a,b){var c=0;switch(a.tag){case 13:var d=a.stateNode;var e=a.memoizedState;null!==e&&(c=e.retryLane);break;case 19:d=a.stateNode;break;default:throw Error(p(314));}null!==d&&d.delete(b);Zk(a,c)}var Wk;\nWk=function(a,b,c){if(null!==a)if(a.memoizedProps!==b.pendingProps||Wf.current)Ug=!0;else{if(0===(a.lanes&c)&&0===(b.flags&128))return Ug=!1,zj(a,b,c);Ug=0!==(a.flags&131072)?!0:!1}else Ug=!1,I&&0!==(b.flags&1048576)&&ug(b,ng,b.index);b.lanes=0;switch(b.tag){case 2:var d=b.type;jj(a,b);a=b.pendingProps;var e=Yf(b,H.current);Tg(b,c);e=Xh(null,b,d,a,e,c);var f=bi();b.flags|=1;\"object\"===typeof e&&null!==e&&\"function\"===typeof e.render&&void 0===e.$$typeof?(b.tag=1,b.memoizedState=null,b.updateQueue=\nnull,Zf(d)?(f=!0,cg(b)):f=!1,b.memoizedState=null!==e.state&&void 0!==e.state?e.state:null,ah(b),e.updater=nh,b.stateNode=e,e._reactInternals=b,rh(b,d,a,c),b=kj(null,b,d,!0,f,c)):(b.tag=0,I&&f&&vg(b),Yi(null,b,e,c),b=b.child);return b;case 16:d=b.elementType;a:{jj(a,b);a=b.pendingProps;e=d._init;d=e(d._payload);b.type=d;e=b.tag=$k(d);a=Lg(d,a);switch(e){case 0:b=dj(null,b,d,a,c);break a;case 1:b=ij(null,b,d,a,c);break a;case 11:b=Zi(null,b,d,a,c);break a;case 14:b=aj(null,b,d,Lg(d.type,a),c);break a}throw Error(p(306,\nd,\"\"));}return b;case 0:return d=b.type,e=b.pendingProps,e=b.elementType===d?e:Lg(d,e),dj(a,b,d,e,c);case 1:return d=b.type,e=b.pendingProps,e=b.elementType===d?e:Lg(d,e),ij(a,b,d,e,c);case 3:a:{lj(b);if(null===a)throw Error(p(387));d=b.pendingProps;f=b.memoizedState;e=f.element;bh(a,b);gh(b,d,null,c);var g=b.memoizedState;d=g.element;if(f.isDehydrated)if(f={element:d,isDehydrated:!1,cache:g.cache,pendingSuspenseBoundaries:g.pendingSuspenseBoundaries,transitions:g.transitions},b.updateQueue.baseState=\nf,b.memoizedState=f,b.flags&256){e=Ki(Error(p(423)),b);b=mj(a,b,d,c,e);break a}else if(d!==e){e=Ki(Error(p(424)),b);b=mj(a,b,d,c,e);break a}else for(yg=Lf(b.stateNode.containerInfo.firstChild),xg=b,I=!0,zg=null,c=Ch(b,null,d,c),b.child=c;c;)c.flags=c.flags&-3|4096,c=c.sibling;else{Ig();if(d===e){b=$i(a,b,c);break a}Yi(a,b,d,c)}b=b.child}return b;case 5:return Kh(b),null===a&&Eg(b),d=b.type,e=b.pendingProps,f=null!==a?a.memoizedProps:null,g=e.children,Ef(d,e)?g=null:null!==f&&Ef(d,f)&&(b.flags|=32),\nhj(a,b),Yi(a,b,g,c),b.child;case 6:return null===a&&Eg(b),null;case 13:return pj(a,b,c);case 4:return Ih(b,b.stateNode.containerInfo),d=b.pendingProps,null===a?b.child=Bh(b,null,d,c):Yi(a,b,d,c),b.child;case 11:return d=b.type,e=b.pendingProps,e=b.elementType===d?e:Lg(d,e),Zi(a,b,d,e,c);case 7:return Yi(a,b,b.pendingProps,c),b.child;case 8:return Yi(a,b,b.pendingProps.children,c),b.child;case 12:return Yi(a,b,b.pendingProps.children,c),b.child;case 10:a:{d=b.type._context;e=b.pendingProps;f=b.memoizedProps;\ng=e.value;G(Mg,d._currentValue);d._currentValue=g;if(null!==f)if(He(f.value,g)){if(f.children===e.children&&!Wf.current){b=$i(a,b,c);break a}}else for(f=b.child,null!==f&&(f.return=b);null!==f;){var h=f.dependencies;if(null!==h){g=f.child;for(var k=h.firstContext;null!==k;){if(k.context===d){if(1===f.tag){k=ch(-1,c&-c);k.tag=2;var l=f.updateQueue;if(null!==l){l=l.shared;var m=l.pending;null===m?k.next=k:(k.next=m.next,m.next=k);l.pending=k}}f.lanes|=c;k=f.alternate;null!==k&&(k.lanes|=c);Sg(f.return,\nc,b);h.lanes|=c;break}k=k.next}}else if(10===f.tag)g=f.type===b.type?null:f.child;else if(18===f.tag){g=f.return;if(null===g)throw Error(p(341));g.lanes|=c;h=g.alternate;null!==h&&(h.lanes|=c);Sg(g,c,b);g=f.sibling}else g=f.child;if(null!==g)g.return=f;else for(g=f;null!==g;){if(g===b){g=null;break}f=g.sibling;if(null!==f){f.return=g.return;g=f;break}g=g.return}f=g}Yi(a,b,e.children,c);b=b.child}return b;case 9:return e=b.type,d=b.pendingProps.children,Tg(b,c),e=Vg(e),d=d(e),b.flags|=1,Yi(a,b,d,c),\nb.child;case 14:return d=b.type,e=Lg(d,b.pendingProps),e=Lg(d.type,e),aj(a,b,d,e,c);case 15:return cj(a,b,b.type,b.pendingProps,c);case 17:return d=b.type,e=b.pendingProps,e=b.elementType===d?e:Lg(d,e),jj(a,b),b.tag=1,Zf(d)?(a=!0,cg(b)):a=!1,Tg(b,c),ph(b,d,e),rh(b,d,e,c),kj(null,b,d,!0,a,c);case 19:return yj(a,b,c);case 22:return ej(a,b,c)}throw Error(p(156,b.tag));};function Gk(a,b){return ac(a,b)}\nfunction al(a,b,c,d){this.tag=a;this.key=c;this.sibling=this.child=this.return=this.stateNode=this.type=this.elementType=null;this.index=0;this.ref=null;this.pendingProps=b;this.dependencies=this.memoizedState=this.updateQueue=this.memoizedProps=null;this.mode=d;this.subtreeFlags=this.flags=0;this.deletions=null;this.childLanes=this.lanes=0;this.alternate=null}function Bg(a,b,c,d){return new al(a,b,c,d)}function bj(a){a=a.prototype;return!(!a||!a.isReactComponent)}\nfunction $k(a){if(\"function\"===typeof a)return bj(a)?1:0;if(void 0!==a&&null!==a){a=a.$$typeof;if(a===Da)return 11;if(a===Ga)return 14}return 2}\nfunction wh(a,b){var c=a.alternate;null===c?(c=Bg(a.tag,b,a.key,a.mode),c.elementType=a.elementType,c.type=a.type,c.stateNode=a.stateNode,c.alternate=a,a.alternate=c):(c.pendingProps=b,c.type=a.type,c.flags=0,c.subtreeFlags=0,c.deletions=null);c.flags=a.flags&14680064;c.childLanes=a.childLanes;c.lanes=a.lanes;c.child=a.child;c.memoizedProps=a.memoizedProps;c.memoizedState=a.memoizedState;c.updateQueue=a.updateQueue;b=a.dependencies;c.dependencies=null===b?null:{lanes:b.lanes,firstContext:b.firstContext};\nc.sibling=a.sibling;c.index=a.index;c.ref=a.ref;return c}\nfunction yh(a,b,c,d,e,f){var g=2;d=a;if(\"function\"===typeof a)bj(a)&&(g=1);else if(\"string\"===typeof a)g=5;else a:switch(a){case ya:return Ah(c.children,e,f,b);case za:g=8;e|=8;break;case Aa:return a=Bg(12,c,b,e|2),a.elementType=Aa,a.lanes=f,a;case Ea:return a=Bg(13,c,b,e),a.elementType=Ea,a.lanes=f,a;case Fa:return a=Bg(19,c,b,e),a.elementType=Fa,a.lanes=f,a;case Ia:return qj(c,e,f,b);default:if(\"object\"===typeof a&&null!==a)switch(a.$$typeof){case Ba:g=10;break a;case Ca:g=9;break a;case Da:g=11;\nbreak a;case Ga:g=14;break a;case Ha:g=16;d=null;break a}throw Error(p(130,null==a?a:typeof a,\"\"));}b=Bg(g,c,b,e);b.elementType=a;b.type=d;b.lanes=f;return b}function Ah(a,b,c,d){a=Bg(7,a,d,b);a.lanes=c;return a}function qj(a,b,c,d){a=Bg(22,a,d,b);a.elementType=Ia;a.lanes=c;a.stateNode={isHidden:!1};return a}function xh(a,b,c){a=Bg(6,a,null,b);a.lanes=c;return a}\nfunction zh(a,b,c){b=Bg(4,null!==a.children?a.children:[],a.key,b);b.lanes=c;b.stateNode={containerInfo:a.containerInfo,pendingChildren:null,implementation:a.implementation};return b}\nfunction bl(a,b,c,d,e){this.tag=b;this.containerInfo=a;this.finishedWork=this.pingCache=this.current=this.pendingChildren=null;this.timeoutHandle=-1;this.callbackNode=this.pendingContext=this.context=null;this.callbackPriority=0;this.eventTimes=zc(0);this.expirationTimes=zc(-1);this.entangledLanes=this.finishedLanes=this.mutableReadLanes=this.expiredLanes=this.pingedLanes=this.suspendedLanes=this.pendingLanes=0;this.entanglements=zc(0);this.identifierPrefix=d;this.onRecoverableError=e;this.mutableSourceEagerHydrationData=\nnull}function cl(a,b,c,d,e,f,g,h,k){a=new bl(a,b,c,h,k);1===b?(b=1,!0===f&&(b|=8)):b=0;f=Bg(3,null,null,b);a.current=f;f.stateNode=a;f.memoizedState={element:d,isDehydrated:c,cache:null,transitions:null,pendingSuspenseBoundaries:null};ah(f);return a}function dl(a,b,c){var d=3=0||Object.prototype.hasOwnProperty.call(e,r)&&(n[r]=e[r]);return n}function o(e,t){if(!(e instanceof t))throw new TypeError(\"Cannot call a class as a function\")}function i(e,t){if(!e)throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\");return!t||\"object\"!=typeof t&&\"function\"!=typeof t?e:t}function u(e,t){if(\"function\"!=typeof t&&null!==t)throw new TypeError(\"Super expression must either be null or a function, not \"+typeof t);e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}}),t&&(Object.setPrototypeOf?Object.setPrototypeOf(e,t):e.__proto__=t)}Object.defineProperty(t,\"__esModule\",{value:!0});var s=Object.assign||function(e){for(var t=1;t>>1,e=a[d];if(0>>1;dg(C,c))ng(x,C)?(a[d]=x,a[n]=c,d=n):(a[d]=C,a[m]=c,d=m);else if(ng(x,c))a[d]=x,a[n]=c,d=n;else break a}}return b}\nfunction g(a,b){var c=a.sortIndex-b.sortIndex;return 0!==c?c:a.id-b.id}if(\"object\"===typeof performance&&\"function\"===typeof performance.now){var l=performance;exports.unstable_now=function(){return l.now()}}else{var p=Date,q=p.now();exports.unstable_now=function(){return p.now()-q}}var r=[],t=[],u=1,v=null,y=3,z=!1,A=!1,B=!1,D=\"function\"===typeof setTimeout?setTimeout:null,E=\"function\"===typeof clearTimeout?clearTimeout:null,F=\"undefined\"!==typeof setImmediate?setImmediate:null;\n\"undefined\"!==typeof navigator&&void 0!==navigator.scheduling&&void 0!==navigator.scheduling.isInputPending&&navigator.scheduling.isInputPending.bind(navigator.scheduling);function G(a){for(var b=h(t);null!==b;){if(null===b.callback)k(t);else if(b.startTime<=a)k(t),b.sortIndex=b.expirationTime,f(r,b);else break;b=h(t)}}function H(a){B=!1;G(a);if(!A)if(null!==h(r))A=!0,I(J);else{var b=h(t);null!==b&&K(H,b.startTime-a)}}\nfunction J(a,b){A=!1;B&&(B=!1,E(L),L=-1);z=!0;var c=y;try{G(b);for(v=h(r);null!==v&&(!(v.expirationTime>b)||a&&!M());){var d=v.callback;if(\"function\"===typeof d){v.callback=null;y=v.priorityLevel;var e=d(v.expirationTime<=b);b=exports.unstable_now();\"function\"===typeof e?v.callback=e:v===h(r)&&k(r);G(b)}else k(r);v=h(r)}if(null!==v)var w=!0;else{var m=h(t);null!==m&&K(H,m.startTime-b);w=!1}return w}finally{v=null,y=c,z=!1}}var N=!1,O=null,L=-1,P=5,Q=-1;\nfunction M(){return exports.unstable_now()-Qa||125d?(a.sortIndex=c,f(t,a),null===h(r)&&a===h(t)&&(B?(E(L),L=-1):B=!0,K(H,c-d))):(a.sortIndex=e,f(r,a),A||z||(A=!0,I(J)));return a};\nexports.unstable_shouldYield=M;exports.unstable_wrapCallback=function(a){var b=y;return function(){var c=y;y=b;try{return a.apply(this,arguments)}finally{y=c}}};\n","'use strict';\n\nif (process.env.NODE_ENV === 'production') {\n module.exports = require('./cjs/scheduler.production.min.js');\n} else {\n module.exports = require('./cjs/scheduler.development.js');\n}\n","!function(e,t){\"object\"==typeof exports&&\"object\"==typeof module?module.exports=t():\"function\"==typeof define&&define.amd?define([],t):\"object\"==typeof exports?exports.trimCanvas=t():e.trimCanvas=t()}(this,function(){return function(e){function t(n){if(r[n])return r[n].exports;var o=r[n]={exports:{},id:n,loaded:!1};return e[n].call(o.exports,o,o.exports,t),o.loaded=!0,o.exports}var r={};return t.m=e,t.c=r,t.p=\"\",t(0)}([function(e,t){\"use strict\";function r(e){var t=e.getContext(\"2d\"),r=e.width,n=e.height,o=t.getImageData(0,0,r,n).data,f=a(!0,r,n,o),i=a(!1,r,n,o),c=u(!0,r,n,o),d=u(!1,r,n,o),p=d-c+1,l=i-f+1,s=t.getImageData(c,f,p,l);return e.width=p,e.height=l,t.clearRect(0,0,p,l),t.putImageData(s,0,0),e}function n(e,t,r,n){return{red:n[4*(r*t+e)],green:n[4*(r*t+e)+1],blue:n[4*(r*t+e)+2],alpha:n[4*(r*t+e)+3]}}function o(e,t,r,o){return n(e,t,r,o).alpha}function a(e,t,r,n){for(var a=e?1:-1,u=e?0:r-1,f=u;e?f-1;f+=a)for(var i=0;i-1;f+=a)for(var i=0;i 0) {\n var xdiff = cx - px;\n var ydiff = cy - py;\n length += Math.sqrt(xdiff * xdiff + ydiff * ydiff);\n }\n px = cx;\n py = cy;\n }\n\n return length;\n};\n\n/* eslint-disable no-multi-spaces, space-in-parens */\nBezier.prototype._point = function (t, start, c1, c2, end) {\n return start * (1.0 - t) * (1.0 - t) * (1.0 - t) + 3.0 * c1 * (1.0 - t) * (1.0 - t) * t + 3.0 * c2 * (1.0 - t) * t * t + end * t * t * t;\n};\n\n/* eslint-disable */\n\n// http://stackoverflow.com/a/27078401/815507\nfunction throttle(func, wait, options) {\n var context, args, result;\n var timeout = null;\n var previous = 0;\n if (!options) options = {};\n var later = function later() {\n previous = options.leading === false ? 0 : Date.now();\n timeout = null;\n result = func.apply(context, args);\n if (!timeout) context = args = null;\n };\n return function () {\n var now = Date.now();\n if (!previous && options.leading === false) previous = now;\n var remaining = wait - (now - previous);\n context = this;\n args = arguments;\n if (remaining <= 0 || remaining > wait) {\n if (timeout) {\n clearTimeout(timeout);\n timeout = null;\n }\n previous = now;\n result = func.apply(context, args);\n if (!timeout) context = args = null;\n } else if (!timeout && options.trailing !== false) {\n timeout = setTimeout(later, remaining);\n }\n return result;\n };\n}\n\nfunction SignaturePad(canvas, options) {\n var self = this;\n var opts = options || {};\n\n this.velocityFilterWeight = opts.velocityFilterWeight || 0.7;\n this.minWidth = opts.minWidth || 0.5;\n this.maxWidth = opts.maxWidth || 2.5;\n this.throttle = 'throttle' in opts ? opts.throttle : 16; // in miliseconds\n this.minDistance = 'minDistance' in opts ? opts.minDistance : 5;\n\n if (this.throttle) {\n this._strokeMoveUpdate = throttle(SignaturePad.prototype._strokeUpdate, this.throttle);\n } else {\n this._strokeMoveUpdate = SignaturePad.prototype._strokeUpdate;\n }\n\n this.dotSize = opts.dotSize || function () {\n return (this.minWidth + this.maxWidth) / 2;\n };\n this.penColor = opts.penColor || 'black';\n this.backgroundColor = opts.backgroundColor || 'rgba(0,0,0,0)';\n this.onBegin = opts.onBegin;\n this.onEnd = opts.onEnd;\n\n this._canvas = canvas;\n this._ctx = canvas.getContext('2d');\n this.clear();\n\n // We need add these inline so they are available to unbind while still having\n // access to 'self' we could use _.bind but it's not worth adding a dependency.\n this._handleMouseDown = function (event) {\n if (event.which === 1) {\n self._mouseButtonDown = true;\n self._strokeBegin(event);\n }\n };\n\n this._handleMouseMove = function (event) {\n if (self._mouseButtonDown) {\n self._strokeMoveUpdate(event);\n }\n };\n\n this._handleMouseUp = function (event) {\n if (event.which === 1 && self._mouseButtonDown) {\n self._mouseButtonDown = false;\n self._strokeEnd(event);\n }\n };\n\n this._handleTouchStart = function (event) {\n if (event.targetTouches.length === 1) {\n var touch = event.changedTouches[0];\n self._strokeBegin(touch);\n }\n };\n\n this._handleTouchMove = function (event) {\n // Prevent scrolling.\n event.preventDefault();\n\n var touch = event.targetTouches[0];\n self._strokeMoveUpdate(touch);\n };\n\n this._handleTouchEnd = function (event) {\n var wasCanvasTouched = event.target === self._canvas;\n if (wasCanvasTouched) {\n event.preventDefault();\n self._strokeEnd(event);\n }\n };\n\n // Enable mouse and touch event handlers\n this.on();\n}\n\n// Public methods\nSignaturePad.prototype.clear = function () {\n var ctx = this._ctx;\n var canvas = this._canvas;\n\n ctx.fillStyle = this.backgroundColor;\n ctx.clearRect(0, 0, canvas.width, canvas.height);\n ctx.fillRect(0, 0, canvas.width, canvas.height);\n\n this._data = [];\n this._reset();\n this._isEmpty = true;\n};\n\nSignaturePad.prototype.fromDataURL = function (dataUrl) {\n var _this = this;\n\n var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n\n var image = new Image();\n var ratio = options.ratio || window.devicePixelRatio || 1;\n var width = options.width || this._canvas.width / ratio;\n var height = options.height || this._canvas.height / ratio;\n\n this._reset();\n image.src = dataUrl;\n image.onload = function () {\n _this._ctx.drawImage(image, 0, 0, width, height);\n };\n this._isEmpty = false;\n};\n\nSignaturePad.prototype.toDataURL = function (type) {\n var _canvas;\n\n switch (type) {\n case 'image/svg+xml':\n return this._toSVG();\n default:\n for (var _len = arguments.length, options = Array(_len > 1 ? _len - 1 : 0), _key = 1; _key < _len; _key++) {\n options[_key - 1] = arguments[_key];\n }\n\n return (_canvas = this._canvas).toDataURL.apply(_canvas, [type].concat(options));\n }\n};\n\nSignaturePad.prototype.on = function () {\n this._handleMouseEvents();\n this._handleTouchEvents();\n};\n\nSignaturePad.prototype.off = function () {\n this._canvas.removeEventListener('mousedown', this._handleMouseDown);\n this._canvas.removeEventListener('mousemove', this._handleMouseMove);\n document.removeEventListener('mouseup', this._handleMouseUp);\n\n this._canvas.removeEventListener('touchstart', this._handleTouchStart);\n this._canvas.removeEventListener('touchmove', this._handleTouchMove);\n this._canvas.removeEventListener('touchend', this._handleTouchEnd);\n};\n\nSignaturePad.prototype.isEmpty = function () {\n return this._isEmpty;\n};\n\n// Private methods\nSignaturePad.prototype._strokeBegin = function (event) {\n this._data.push([]);\n this._reset();\n this._strokeUpdate(event);\n\n if (typeof this.onBegin === 'function') {\n this.onBegin(event);\n }\n};\n\nSignaturePad.prototype._strokeUpdate = function (event) {\n var x = event.clientX;\n var y = event.clientY;\n\n var point = this._createPoint(x, y);\n var lastPointGroup = this._data[this._data.length - 1];\n var lastPoint = lastPointGroup && lastPointGroup[lastPointGroup.length - 1];\n var isLastPointTooClose = lastPoint && point.distanceTo(lastPoint) < this.minDistance;\n\n // Skip this point if it's too close to the previous one\n if (!(lastPoint && isLastPointTooClose)) {\n var _addPoint = this._addPoint(point),\n curve = _addPoint.curve,\n widths = _addPoint.widths;\n\n if (curve && widths) {\n this._drawCurve(curve, widths.start, widths.end);\n }\n\n this._data[this._data.length - 1].push({\n x: point.x,\n y: point.y,\n time: point.time,\n color: this.penColor\n });\n }\n};\n\nSignaturePad.prototype._strokeEnd = function (event) {\n var canDrawCurve = this.points.length > 2;\n var point = this.points[0]; // Point instance\n\n if (!canDrawCurve && point) {\n this._drawDot(point);\n }\n\n if (point) {\n var lastPointGroup = this._data[this._data.length - 1];\n var lastPoint = lastPointGroup[lastPointGroup.length - 1]; // plain object\n\n // When drawing a dot, there's only one point in a group, so without this check\n // such group would end up with exactly the same 2 points.\n if (!point.equals(lastPoint)) {\n lastPointGroup.push({\n x: point.x,\n y: point.y,\n time: point.time,\n color: this.penColor\n });\n }\n }\n\n if (typeof this.onEnd === 'function') {\n this.onEnd(event);\n }\n};\n\nSignaturePad.prototype._handleMouseEvents = function () {\n this._mouseButtonDown = false;\n\n this._canvas.addEventListener('mousedown', this._handleMouseDown);\n this._canvas.addEventListener('mousemove', this._handleMouseMove);\n document.addEventListener('mouseup', this._handleMouseUp);\n};\n\nSignaturePad.prototype._handleTouchEvents = function () {\n // Pass touch events to canvas element on mobile IE11 and Edge.\n this._canvas.style.msTouchAction = 'none';\n this._canvas.style.touchAction = 'none';\n\n this._canvas.addEventListener('touchstart', this._handleTouchStart);\n this._canvas.addEventListener('touchmove', this._handleTouchMove);\n this._canvas.addEventListener('touchend', this._handleTouchEnd);\n};\n\nSignaturePad.prototype._reset = function () {\n this.points = [];\n this._lastVelocity = 0;\n this._lastWidth = (this.minWidth + this.maxWidth) / 2;\n this._ctx.fillStyle = this.penColor;\n};\n\nSignaturePad.prototype._createPoint = function (x, y, time) {\n var rect = this._canvas.getBoundingClientRect();\n\n return new Point(x - rect.left, y - rect.top, time || new Date().getTime());\n};\n\nSignaturePad.prototype._addPoint = function (point) {\n var points = this.points;\n var tmp = void 0;\n\n points.push(point);\n\n if (points.length > 2) {\n // To reduce the initial lag make it work with 3 points\n // by copying the first point to the beginning.\n if (points.length === 3) points.unshift(points[0]);\n\n tmp = this._calculateCurveControlPoints(points[0], points[1], points[2]);\n var c2 = tmp.c2;\n tmp = this._calculateCurveControlPoints(points[1], points[2], points[3]);\n var c3 = tmp.c1;\n var curve = new Bezier(points[1], c2, c3, points[2]);\n var widths = this._calculateCurveWidths(curve);\n\n // Remove the first element from the list,\n // so that we always have no more than 4 points in points array.\n points.shift();\n\n return { curve: curve, widths: widths };\n }\n\n return {};\n};\n\nSignaturePad.prototype._calculateCurveControlPoints = function (s1, s2, s3) {\n var dx1 = s1.x - s2.x;\n var dy1 = s1.y - s2.y;\n var dx2 = s2.x - s3.x;\n var dy2 = s2.y - s3.y;\n\n var m1 = { x: (s1.x + s2.x) / 2.0, y: (s1.y + s2.y) / 2.0 };\n var m2 = { x: (s2.x + s3.x) / 2.0, y: (s2.y + s3.y) / 2.0 };\n\n var l1 = Math.sqrt(dx1 * dx1 + dy1 * dy1);\n var l2 = Math.sqrt(dx2 * dx2 + dy2 * dy2);\n\n var dxm = m1.x - m2.x;\n var dym = m1.y - m2.y;\n\n var k = l2 / (l1 + l2);\n var cm = { x: m2.x + dxm * k, y: m2.y + dym * k };\n\n var tx = s2.x - cm.x;\n var ty = s2.y - cm.y;\n\n return {\n c1: new Point(m1.x + tx, m1.y + ty),\n c2: new Point(m2.x + tx, m2.y + ty)\n };\n};\n\nSignaturePad.prototype._calculateCurveWidths = function (curve) {\n var startPoint = curve.startPoint;\n var endPoint = curve.endPoint;\n var widths = { start: null, end: null };\n\n var velocity = this.velocityFilterWeight * endPoint.velocityFrom(startPoint) + (1 - this.velocityFilterWeight) * this._lastVelocity;\n\n var newWidth = this._strokeWidth(velocity);\n\n widths.start = this._lastWidth;\n widths.end = newWidth;\n\n this._lastVelocity = velocity;\n this._lastWidth = newWidth;\n\n return widths;\n};\n\nSignaturePad.prototype._strokeWidth = function (velocity) {\n return Math.max(this.maxWidth / (velocity + 1), this.minWidth);\n};\n\nSignaturePad.prototype._drawPoint = function (x, y, size) {\n var ctx = this._ctx;\n\n ctx.moveTo(x, y);\n ctx.arc(x, y, size, 0, 2 * Math.PI, false);\n this._isEmpty = false;\n};\n\nSignaturePad.prototype._drawCurve = function (curve, startWidth, endWidth) {\n var ctx = this._ctx;\n var widthDelta = endWidth - startWidth;\n var drawSteps = Math.floor(curve.length());\n\n ctx.beginPath();\n\n for (var i = 0; i < drawSteps; i += 1) {\n // Calculate the Bezier (x, y) coordinate for this step.\n var t = i / drawSteps;\n var tt = t * t;\n var ttt = tt * t;\n var u = 1 - t;\n var uu = u * u;\n var uuu = uu * u;\n\n var x = uuu * curve.startPoint.x;\n x += 3 * uu * t * curve.control1.x;\n x += 3 * u * tt * curve.control2.x;\n x += ttt * curve.endPoint.x;\n\n var y = uuu * curve.startPoint.y;\n y += 3 * uu * t * curve.control1.y;\n y += 3 * u * tt * curve.control2.y;\n y += ttt * curve.endPoint.y;\n\n var width = startWidth + ttt * widthDelta;\n this._drawPoint(x, y, width);\n }\n\n ctx.closePath();\n ctx.fill();\n};\n\nSignaturePad.prototype._drawDot = function (point) {\n var ctx = this._ctx;\n var width = typeof this.dotSize === 'function' ? this.dotSize() : this.dotSize;\n\n ctx.beginPath();\n this._drawPoint(point.x, point.y, width);\n ctx.closePath();\n ctx.fill();\n};\n\nSignaturePad.prototype._fromData = function (pointGroups, drawCurve, drawDot) {\n for (var i = 0; i < pointGroups.length; i += 1) {\n var group = pointGroups[i];\n\n if (group.length > 1) {\n for (var j = 0; j < group.length; j += 1) {\n var rawPoint = group[j];\n var point = new Point(rawPoint.x, rawPoint.y, rawPoint.time);\n var color = rawPoint.color;\n\n if (j === 0) {\n // First point in a group. Nothing to draw yet.\n\n // All points in the group have the same color, so it's enough to set\n // penColor just at the beginning.\n this.penColor = color;\n this._reset();\n\n this._addPoint(point);\n } else if (j !== group.length - 1) {\n // Middle point in a group.\n var _addPoint2 = this._addPoint(point),\n curve = _addPoint2.curve,\n widths = _addPoint2.widths;\n\n if (curve && widths) {\n drawCurve(curve, widths, color);\n }\n } else {\n // Last point in a group. Do nothing.\n }\n }\n } else {\n this._reset();\n var _rawPoint = group[0];\n drawDot(_rawPoint);\n }\n }\n};\n\nSignaturePad.prototype._toSVG = function () {\n var _this2 = this;\n\n var pointGroups = this._data;\n var canvas = this._canvas;\n var ratio = Math.max(window.devicePixelRatio || 1, 1);\n var minX = 0;\n var minY = 0;\n var maxX = canvas.width / ratio;\n var maxY = canvas.height / ratio;\n var svg = document.createElementNS('http://www.w3.org/2000/svg', 'svg');\n\n svg.setAttributeNS(null, 'width', canvas.width);\n svg.setAttributeNS(null, 'height', canvas.height);\n\n this._fromData(pointGroups, function (curve, widths, color) {\n var path = document.createElement('path');\n\n // Need to check curve for NaN values, these pop up when drawing\n // lines on the canvas that are not continuous. E.g. Sharp corners\n // or stopping mid-stroke and than continuing without lifting mouse.\n if (!isNaN(curve.control1.x) && !isNaN(curve.control1.y) && !isNaN(curve.control2.x) && !isNaN(curve.control2.y)) {\n var attr = 'M ' + curve.startPoint.x.toFixed(3) + ',' + curve.startPoint.y.toFixed(3) + ' ' + ('C ' + curve.control1.x.toFixed(3) + ',' + curve.control1.y.toFixed(3) + ' ') + (curve.control2.x.toFixed(3) + ',' + curve.control2.y.toFixed(3) + ' ') + (curve.endPoint.x.toFixed(3) + ',' + curve.endPoint.y.toFixed(3));\n\n path.setAttribute('d', attr);\n path.setAttribute('stroke-width', (widths.end * 2.25).toFixed(3));\n path.setAttribute('stroke', color);\n path.setAttribute('fill', 'none');\n path.setAttribute('stroke-linecap', 'round');\n\n svg.appendChild(path);\n }\n }, function (rawPoint) {\n var circle = document.createElement('circle');\n var dotSize = typeof _this2.dotSize === 'function' ? _this2.dotSize() : _this2.dotSize;\n circle.setAttribute('r', dotSize);\n circle.setAttribute('cx', rawPoint.x);\n circle.setAttribute('cy', rawPoint.y);\n circle.setAttribute('fill', rawPoint.color);\n\n svg.appendChild(circle);\n });\n\n var prefix = 'data:image/svg+xml;base64,';\n var header = '';\n var body = svg.innerHTML;\n\n // IE hack for missing innerHTML property on SVGElement\n if (body === undefined) {\n var dummy = document.createElement('dummy');\n var nodes = svg.childNodes;\n dummy.innerHTML = '';\n\n for (var i = 0; i < nodes.length; i += 1) {\n dummy.appendChild(nodes[i].cloneNode(true));\n }\n\n body = dummy.innerHTML;\n }\n\n var footer = '';\n var data = header + body + footer;\n\n return prefix + btoa(data);\n};\n\nSignaturePad.prototype.fromData = function (pointGroups) {\n var _this3 = this;\n\n this.clear();\n\n this._fromData(pointGroups, function (curve, widths) {\n return _this3._drawCurve(curve, widths.start, widths.end);\n }, function (rawPoint) {\n return _this3._drawDot(rawPoint);\n });\n\n this._data = pointGroups;\n};\n\nSignaturePad.prototype.toData = function () {\n return this._data;\n};\n\nexport default SignaturePad;\n","// The module cache\nvar __webpack_module_cache__ = {};\n\n// The require function\nfunction __webpack_require__(moduleId) {\n\t// Check if module is in cache\n\tvar cachedModule = __webpack_module_cache__[moduleId];\n\tif (cachedModule !== undefined) {\n\t\treturn cachedModule.exports;\n\t}\n\t// Create a new module (and put it into the cache)\n\tvar module = __webpack_module_cache__[moduleId] = {\n\t\t// no module.id needed\n\t\t// no module.loaded needed\n\t\texports: {}\n\t};\n\n\t// Execute the module function\n\t__webpack_modules__[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n\n\t// Return the exports of the module\n\treturn module.exports;\n}\n\n// expose the modules object (__webpack_modules__)\n__webpack_require__.m = __webpack_modules__;\n\n","// getDefaultExport function for compatibility with non-harmony modules\n__webpack_require__.n = function(module) {\n\tvar getter = module && module.__esModule ?\n\t\tfunction() { return module['default']; } :\n\t\tfunction() { return module; };\n\t__webpack_require__.d(getter, { a: getter });\n\treturn getter;\n};","// define getter functions for harmony exports\n__webpack_require__.d = function(exports, definition) {\n\tfor(var key in definition) {\n\t\tif(__webpack_require__.o(definition, key) && !__webpack_require__.o(exports, key)) {\n\t\t\tObject.defineProperty(exports, key, { enumerable: true, get: definition[key] });\n\t\t}\n\t}\n};","__webpack_require__.f = {};\n// This file contains only the entry chunk.\n// The chunk loading function for additional chunks\n__webpack_require__.e = function(chunkId) {\n\treturn Promise.all(Object.keys(__webpack_require__.f).reduce(function(promises, key) {\n\t\t__webpack_require__.f[key](chunkId, promises);\n\t\treturn promises;\n\t}, []));\n};","// This function allow to reference async chunks\n__webpack_require__.u = function(chunkId) {\n\t// return url for filenames based on template\n\treturn \"static/js/\" + chunkId + \".\" + \"9f2f92c5\" + \".chunk.js\";\n};","// This function allow to reference async chunks\n__webpack_require__.miniCssF = function(chunkId) {\n\t// return url for filenames based on template\n\treturn undefined;\n};","__webpack_require__.o = function(obj, prop) { return Object.prototype.hasOwnProperty.call(obj, prop); }","var inProgress = {};\nvar dataWebpackPrefix = \"matrimony:\";\n// loadScript function to load a script via script tag\n__webpack_require__.l = function(url, done, key, chunkId) {\n\tif(inProgress[url]) { inProgress[url].push(done); return; }\n\tvar script, needAttach;\n\tif(key !== undefined) {\n\t\tvar scripts = document.getElementsByTagName(\"script\");\n\t\tfor(var i = 0; i < scripts.length; i++) {\n\t\t\tvar s = scripts[i];\n\t\t\tif(s.getAttribute(\"src\") == url || s.getAttribute(\"data-webpack\") == dataWebpackPrefix + key) { script = s; break; }\n\t\t}\n\t}\n\tif(!script) {\n\t\tneedAttach = true;\n\t\tscript = document.createElement('script');\n\n\t\tscript.charset = 'utf-8';\n\t\tscript.timeout = 120;\n\t\tif (__webpack_require__.nc) {\n\t\t\tscript.setAttribute(\"nonce\", __webpack_require__.nc);\n\t\t}\n\t\tscript.setAttribute(\"data-webpack\", dataWebpackPrefix + key);\n\t\tscript.src = url;\n\t}\n\tinProgress[url] = [done];\n\tvar onScriptComplete = function(prev, event) {\n\t\t// avoid mem leaks in IE.\n\t\tscript.onerror = script.onload = null;\n\t\tclearTimeout(timeout);\n\t\tvar doneFns = inProgress[url];\n\t\tdelete inProgress[url];\n\t\tscript.parentNode && script.parentNode.removeChild(script);\n\t\tdoneFns && doneFns.forEach(function(fn) { return fn(event); });\n\t\tif(prev) return prev(event);\n\t}\n\t;\n\tvar timeout = setTimeout(onScriptComplete.bind(null, undefined, { type: 'timeout', target: script }), 120000);\n\tscript.onerror = onScriptComplete.bind(null, script.onerror);\n\tscript.onload = onScriptComplete.bind(null, script.onload);\n\tneedAttach && document.head.appendChild(script);\n};","// define __esModule on exports\n__webpack_require__.r = function(exports) {\n\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n\t}\n\tObject.defineProperty(exports, '__esModule', { value: true });\n};","__webpack_require__.p = \"/\";","// no baseURI\n\n// object to store loaded and loading chunks\n// undefined = chunk not loaded, null = chunk preloaded/prefetched\n// [resolve, reject, Promise] = chunk loading, 0 = chunk loaded\nvar installedChunks = {\n\t179: 0\n};\n\n__webpack_require__.f.j = function(chunkId, promises) {\n\t\t// JSONP chunk loading for javascript\n\t\tvar installedChunkData = __webpack_require__.o(installedChunks, chunkId) ? installedChunks[chunkId] : undefined;\n\t\tif(installedChunkData !== 0) { // 0 means \"already installed\".\n\n\t\t\t// a Promise means \"currently loading\".\n\t\t\tif(installedChunkData) {\n\t\t\t\tpromises.push(installedChunkData[2]);\n\t\t\t} else {\n\t\t\t\tif(true) { // all chunks have JS\n\t\t\t\t\t// setup Promise in chunk cache\n\t\t\t\t\tvar promise = new Promise(function(resolve, reject) { installedChunkData = installedChunks[chunkId] = [resolve, reject]; });\n\t\t\t\t\tpromises.push(installedChunkData[2] = promise);\n\n\t\t\t\t\t// start chunk loading\n\t\t\t\t\tvar url = __webpack_require__.p + __webpack_require__.u(chunkId);\n\t\t\t\t\t// create error before stack unwound to get useful stacktrace later\n\t\t\t\t\tvar error = new Error();\n\t\t\t\t\tvar loadingEnded = function(event) {\n\t\t\t\t\t\tif(__webpack_require__.o(installedChunks, chunkId)) {\n\t\t\t\t\t\t\tinstalledChunkData = installedChunks[chunkId];\n\t\t\t\t\t\t\tif(installedChunkData !== 0) installedChunks[chunkId] = undefined;\n\t\t\t\t\t\t\tif(installedChunkData) {\n\t\t\t\t\t\t\t\tvar errorType = event && (event.type === 'load' ? 'missing' : event.type);\n\t\t\t\t\t\t\t\tvar realSrc = event && event.target && event.target.src;\n\t\t\t\t\t\t\t\terror.message = 'Loading chunk ' + chunkId + ' failed.\\n(' + errorType + ': ' + realSrc + ')';\n\t\t\t\t\t\t\t\terror.name = 'ChunkLoadError';\n\t\t\t\t\t\t\t\terror.type = errorType;\n\t\t\t\t\t\t\t\terror.request = realSrc;\n\t\t\t\t\t\t\t\tinstalledChunkData[1](error);\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}\n\t\t\t\t\t};\n\t\t\t\t\t__webpack_require__.l(url, loadingEnded, \"chunk-\" + chunkId, chunkId);\n\t\t\t\t} else installedChunks[chunkId] = 0;\n\t\t\t}\n\t\t}\n};\n\n// no prefetching\n\n// no preloaded\n\n// no HMR\n\n// no HMR manifest\n\n// no on chunks loaded\n\n// install a JSONP callback for chunk loading\nvar webpackJsonpCallback = function(parentChunkLoadingFunction, data) {\n\tvar chunkIds = data[0];\n\tvar moreModules = data[1];\n\tvar runtime = data[2];\n\t// add \"moreModules\" to the modules object,\n\t// then flag all \"chunkIds\" as loaded and fire callback\n\tvar moduleId, chunkId, i = 0;\n\tif(chunkIds.some(function(id) { return installedChunks[id] !== 0; })) {\n\t\tfor(moduleId in moreModules) {\n\t\t\tif(__webpack_require__.o(moreModules, moduleId)) {\n\t\t\t\t__webpack_require__.m[moduleId] = moreModules[moduleId];\n\t\t\t}\n\t\t}\n\t\tif(runtime) var result = runtime(__webpack_require__);\n\t}\n\tif(parentChunkLoadingFunction) parentChunkLoadingFunction(data);\n\tfor(;i < chunkIds.length; i++) {\n\t\tchunkId = chunkIds[i];\n\t\tif(__webpack_require__.o(installedChunks, chunkId) && installedChunks[chunkId]) {\n\t\t\tinstalledChunks[chunkId][0]();\n\t\t}\n\t\tinstalledChunks[chunkId] = 0;\n\t}\n\n}\n\nvar chunkLoadingGlobal = self[\"webpackChunkmatrimony\"] = self[\"webpackChunkmatrimony\"] || [];\nchunkLoadingGlobal.forEach(webpackJsonpCallback.bind(null, 0));\nchunkLoadingGlobal.push = webpackJsonpCallback.bind(null, chunkLoadingGlobal.push.bind(chunkLoadingGlobal));","export default function _typeof(obj) {\n \"@babel/helpers - typeof\";\n\n return _typeof = \"function\" == typeof Symbol && \"symbol\" == typeof Symbol.iterator ? function (obj) {\n return typeof obj;\n } : function (obj) {\n return obj && \"function\" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj;\n }, _typeof(obj);\n}","import _typeof from \"./typeof.js\";\nexport default function _regeneratorRuntime() {\n \"use strict\"; /*! regenerator-runtime -- Copyright (c) 2014-present, Facebook, Inc. -- license (MIT): https://github.com/facebook/regenerator/blob/main/LICENSE */\n _regeneratorRuntime = function _regeneratorRuntime() {\n return exports;\n };\n var exports = {},\n Op = Object.prototype,\n hasOwn = Op.hasOwnProperty,\n defineProperty = Object.defineProperty || function (obj, key, desc) {\n obj[key] = desc.value;\n },\n $Symbol = \"function\" == typeof Symbol ? Symbol : {},\n iteratorSymbol = $Symbol.iterator || \"@@iterator\",\n asyncIteratorSymbol = $Symbol.asyncIterator || \"@@asyncIterator\",\n toStringTagSymbol = $Symbol.toStringTag || \"@@toStringTag\";\n function define(obj, key, value) {\n return Object.defineProperty(obj, key, {\n value: value,\n enumerable: !0,\n configurable: !0,\n writable: !0\n }), obj[key];\n }\n try {\n define({}, \"\");\n } catch (err) {\n define = function define(obj, key, value) {\n return obj[key] = value;\n };\n }\n function wrap(innerFn, outerFn, self, tryLocsList) {\n var protoGenerator = outerFn && outerFn.prototype instanceof Generator ? outerFn : Generator,\n generator = Object.create(protoGenerator.prototype),\n context = new Context(tryLocsList || []);\n return defineProperty(generator, \"_invoke\", {\n value: makeInvokeMethod(innerFn, self, context)\n }), generator;\n }\n function tryCatch(fn, obj, arg) {\n try {\n return {\n type: \"normal\",\n arg: fn.call(obj, arg)\n };\n } catch (err) {\n return {\n type: \"throw\",\n arg: err\n };\n }\n }\n exports.wrap = wrap;\n var ContinueSentinel = {};\n function Generator() {}\n function GeneratorFunction() {}\n function GeneratorFunctionPrototype() {}\n var IteratorPrototype = {};\n define(IteratorPrototype, iteratorSymbol, function () {\n return this;\n });\n var getProto = Object.getPrototypeOf,\n NativeIteratorPrototype = getProto && getProto(getProto(values([])));\n NativeIteratorPrototype && NativeIteratorPrototype !== Op && hasOwn.call(NativeIteratorPrototype, iteratorSymbol) && (IteratorPrototype = NativeIteratorPrototype);\n var Gp = GeneratorFunctionPrototype.prototype = Generator.prototype = Object.create(IteratorPrototype);\n function defineIteratorMethods(prototype) {\n [\"next\", \"throw\", \"return\"].forEach(function (method) {\n define(prototype, method, function (arg) {\n return this._invoke(method, arg);\n });\n });\n }\n function AsyncIterator(generator, PromiseImpl) {\n function invoke(method, arg, resolve, reject) {\n var record = tryCatch(generator[method], generator, arg);\n if (\"throw\" !== record.type) {\n var result = record.arg,\n value = result.value;\n return value && \"object\" == _typeof(value) && hasOwn.call(value, \"__await\") ? PromiseImpl.resolve(value.__await).then(function (value) {\n invoke(\"next\", value, resolve, reject);\n }, function (err) {\n invoke(\"throw\", err, resolve, reject);\n }) : PromiseImpl.resolve(value).then(function (unwrapped) {\n result.value = unwrapped, resolve(result);\n }, function (error) {\n return invoke(\"throw\", error, resolve, reject);\n });\n }\n reject(record.arg);\n }\n var previousPromise;\n defineProperty(this, \"_invoke\", {\n value: function value(method, arg) {\n function callInvokeWithMethodAndArg() {\n return new PromiseImpl(function (resolve, reject) {\n invoke(method, arg, resolve, reject);\n });\n }\n return previousPromise = previousPromise ? previousPromise.then(callInvokeWithMethodAndArg, callInvokeWithMethodAndArg) : callInvokeWithMethodAndArg();\n }\n });\n }\n function makeInvokeMethod(innerFn, self, context) {\n var state = \"suspendedStart\";\n return function (method, arg) {\n if (\"executing\" === state) throw new Error(\"Generator is already running\");\n if (\"completed\" === state) {\n if (\"throw\" === method) throw arg;\n return doneResult();\n }\n for (context.method = method, context.arg = arg;;) {\n var delegate = context.delegate;\n if (delegate) {\n var delegateResult = maybeInvokeDelegate(delegate, context);\n if (delegateResult) {\n if (delegateResult === ContinueSentinel) continue;\n return delegateResult;\n }\n }\n if (\"next\" === context.method) context.sent = context._sent = context.arg;else if (\"throw\" === context.method) {\n if (\"suspendedStart\" === state) throw state = \"completed\", context.arg;\n context.dispatchException(context.arg);\n } else \"return\" === context.method && context.abrupt(\"return\", context.arg);\n state = \"executing\";\n var record = tryCatch(innerFn, self, context);\n if (\"normal\" === record.type) {\n if (state = context.done ? \"completed\" : \"suspendedYield\", record.arg === ContinueSentinel) continue;\n return {\n value: record.arg,\n done: context.done\n };\n }\n \"throw\" === record.type && (state = \"completed\", context.method = \"throw\", context.arg = record.arg);\n }\n };\n }\n function maybeInvokeDelegate(delegate, context) {\n var methodName = context.method,\n method = delegate.iterator[methodName];\n if (undefined === method) return context.delegate = null, \"throw\" === methodName && delegate.iterator[\"return\"] && (context.method = \"return\", context.arg = undefined, maybeInvokeDelegate(delegate, context), \"throw\" === context.method) || \"return\" !== methodName && (context.method = \"throw\", context.arg = new TypeError(\"The iterator does not provide a '\" + methodName + \"' method\")), ContinueSentinel;\n var record = tryCatch(method, delegate.iterator, context.arg);\n if (\"throw\" === record.type) return context.method = \"throw\", context.arg = record.arg, context.delegate = null, ContinueSentinel;\n var info = record.arg;\n return info ? info.done ? (context[delegate.resultName] = info.value, context.next = delegate.nextLoc, \"return\" !== context.method && (context.method = \"next\", context.arg = undefined), context.delegate = null, ContinueSentinel) : info : (context.method = \"throw\", context.arg = new TypeError(\"iterator result is not an object\"), context.delegate = null, ContinueSentinel);\n }\n function pushTryEntry(locs) {\n var entry = {\n tryLoc: locs[0]\n };\n 1 in locs && (entry.catchLoc = locs[1]), 2 in locs && (entry.finallyLoc = locs[2], entry.afterLoc = locs[3]), this.tryEntries.push(entry);\n }\n function resetTryEntry(entry) {\n var record = entry.completion || {};\n record.type = \"normal\", delete record.arg, entry.completion = record;\n }\n function Context(tryLocsList) {\n this.tryEntries = [{\n tryLoc: \"root\"\n }], tryLocsList.forEach(pushTryEntry, this), this.reset(!0);\n }\n function values(iterable) {\n if (iterable) {\n var iteratorMethod = iterable[iteratorSymbol];\n if (iteratorMethod) return iteratorMethod.call(iterable);\n if (\"function\" == typeof iterable.next) return iterable;\n if (!isNaN(iterable.length)) {\n var i = -1,\n next = function next() {\n for (; ++i < iterable.length;) if (hasOwn.call(iterable, i)) return next.value = iterable[i], next.done = !1, next;\n return next.value = undefined, next.done = !0, next;\n };\n return next.next = next;\n }\n }\n return {\n next: doneResult\n };\n }\n function doneResult() {\n return {\n value: undefined,\n done: !0\n };\n }\n return GeneratorFunction.prototype = GeneratorFunctionPrototype, defineProperty(Gp, \"constructor\", {\n value: GeneratorFunctionPrototype,\n configurable: !0\n }), defineProperty(GeneratorFunctionPrototype, \"constructor\", {\n value: GeneratorFunction,\n configurable: !0\n }), GeneratorFunction.displayName = define(GeneratorFunctionPrototype, toStringTagSymbol, \"GeneratorFunction\"), exports.isGeneratorFunction = function (genFun) {\n var ctor = \"function\" == typeof genFun && genFun.constructor;\n return !!ctor && (ctor === GeneratorFunction || \"GeneratorFunction\" === (ctor.displayName || ctor.name));\n }, exports.mark = function (genFun) {\n return Object.setPrototypeOf ? Object.setPrototypeOf(genFun, GeneratorFunctionPrototype) : (genFun.__proto__ = GeneratorFunctionPrototype, define(genFun, toStringTagSymbol, \"GeneratorFunction\")), genFun.prototype = Object.create(Gp), genFun;\n }, exports.awrap = function (arg) {\n return {\n __await: arg\n };\n }, defineIteratorMethods(AsyncIterator.prototype), define(AsyncIterator.prototype, asyncIteratorSymbol, function () {\n return this;\n }), exports.AsyncIterator = AsyncIterator, exports.async = function (innerFn, outerFn, self, tryLocsList, PromiseImpl) {\n void 0 === PromiseImpl && (PromiseImpl = Promise);\n var iter = new AsyncIterator(wrap(innerFn, outerFn, self, tryLocsList), PromiseImpl);\n return exports.isGeneratorFunction(outerFn) ? iter : iter.next().then(function (result) {\n return result.done ? result.value : iter.next();\n });\n }, defineIteratorMethods(Gp), define(Gp, toStringTagSymbol, \"Generator\"), define(Gp, iteratorSymbol, function () {\n return this;\n }), define(Gp, \"toString\", function () {\n return \"[object Generator]\";\n }), exports.keys = function (val) {\n var object = Object(val),\n keys = [];\n for (var key in object) keys.push(key);\n return keys.reverse(), function next() {\n for (; keys.length;) {\n var key = keys.pop();\n if (key in object) return next.value = key, next.done = !1, next;\n }\n return next.done = !0, next;\n };\n }, exports.values = values, Context.prototype = {\n constructor: Context,\n reset: function reset(skipTempReset) {\n if (this.prev = 0, this.next = 0, this.sent = this._sent = undefined, this.done = !1, this.delegate = null, this.method = \"next\", this.arg = undefined, this.tryEntries.forEach(resetTryEntry), !skipTempReset) for (var name in this) \"t\" === name.charAt(0) && hasOwn.call(this, name) && !isNaN(+name.slice(1)) && (this[name] = undefined);\n },\n stop: function stop() {\n this.done = !0;\n var rootRecord = this.tryEntries[0].completion;\n if (\"throw\" === rootRecord.type) throw rootRecord.arg;\n return this.rval;\n },\n dispatchException: function dispatchException(exception) {\n if (this.done) throw exception;\n var context = this;\n function handle(loc, caught) {\n return record.type = \"throw\", record.arg = exception, context.next = loc, caught && (context.method = \"next\", context.arg = undefined), !!caught;\n }\n for (var i = this.tryEntries.length - 1; i >= 0; --i) {\n var entry = this.tryEntries[i],\n record = entry.completion;\n if (\"root\" === entry.tryLoc) return handle(\"end\");\n if (entry.tryLoc <= this.prev) {\n var hasCatch = hasOwn.call(entry, \"catchLoc\"),\n hasFinally = hasOwn.call(entry, \"finallyLoc\");\n if (hasCatch && hasFinally) {\n if (this.prev < entry.catchLoc) return handle(entry.catchLoc, !0);\n if (this.prev < entry.finallyLoc) return handle(entry.finallyLoc);\n } else if (hasCatch) {\n if (this.prev < entry.catchLoc) return handle(entry.catchLoc, !0);\n } else {\n if (!hasFinally) throw new Error(\"try statement without catch or finally\");\n if (this.prev < entry.finallyLoc) return handle(entry.finallyLoc);\n }\n }\n }\n },\n abrupt: function abrupt(type, arg) {\n for (var i = this.tryEntries.length - 1; i >= 0; --i) {\n var entry = this.tryEntries[i];\n if (entry.tryLoc <= this.prev && hasOwn.call(entry, \"finallyLoc\") && this.prev < entry.finallyLoc) {\n var finallyEntry = entry;\n break;\n }\n }\n finallyEntry && (\"break\" === type || \"continue\" === type) && finallyEntry.tryLoc <= arg && arg <= finallyEntry.finallyLoc && (finallyEntry = null);\n var record = finallyEntry ? finallyEntry.completion : {};\n return record.type = type, record.arg = arg, finallyEntry ? (this.method = \"next\", this.next = finallyEntry.finallyLoc, ContinueSentinel) : this.complete(record);\n },\n complete: function complete(record, afterLoc) {\n if (\"throw\" === record.type) throw record.arg;\n return \"break\" === record.type || \"continue\" === record.type ? this.next = record.arg : \"return\" === record.type ? (this.rval = this.arg = record.arg, this.method = \"return\", this.next = \"end\") : \"normal\" === record.type && afterLoc && (this.next = afterLoc), ContinueSentinel;\n },\n finish: function finish(finallyLoc) {\n for (var i = this.tryEntries.length - 1; i >= 0; --i) {\n var entry = this.tryEntries[i];\n if (entry.finallyLoc === finallyLoc) return this.complete(entry.completion, entry.afterLoc), resetTryEntry(entry), ContinueSentinel;\n }\n },\n \"catch\": function _catch(tryLoc) {\n for (var i = this.tryEntries.length - 1; i >= 0; --i) {\n var entry = this.tryEntries[i];\n if (entry.tryLoc === tryLoc) {\n var record = entry.completion;\n if (\"throw\" === record.type) {\n var thrown = record.arg;\n resetTryEntry(entry);\n }\n return thrown;\n }\n }\n throw new Error(\"illegal catch attempt\");\n },\n delegateYield: function delegateYield(iterable, resultName, nextLoc) {\n return this.delegate = {\n iterator: values(iterable),\n resultName: resultName,\n nextLoc: nextLoc\n }, \"next\" === this.method && (this.arg = undefined), ContinueSentinel;\n }\n }, exports;\n}","function asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) {\n try {\n var info = gen[key](arg);\n var value = info.value;\n } catch (error) {\n reject(error);\n return;\n }\n if (info.done) {\n resolve(value);\n } else {\n Promise.resolve(value).then(_next, _throw);\n }\n}\nexport default function _asyncToGenerator(fn) {\n return function () {\n var self = this,\n args = arguments;\n return new Promise(function (resolve, reject) {\n var gen = fn.apply(self, args);\n function _next(value) {\n asyncGeneratorStep(gen, resolve, reject, _next, _throw, \"next\", value);\n }\n function _throw(err) {\n asyncGeneratorStep(gen, resolve, reject, _next, _throw, \"throw\", err);\n }\n _next(undefined);\n });\n };\n}","import _typeof from \"./typeof.js\";\nimport toPrimitive from \"./toPrimitive.js\";\nexport default function _toPropertyKey(arg) {\n var key = toPrimitive(arg, \"string\");\n return _typeof(key) === \"symbol\" ? key : String(key);\n}","import _typeof from \"./typeof.js\";\nexport default function _toPrimitive(input, hint) {\n if (_typeof(input) !== \"object\" || input === null) return input;\n var prim = input[Symbol.toPrimitive];\n if (prim !== undefined) {\n var res = prim.call(input, hint || \"default\");\n if (_typeof(res) !== \"object\") return res;\n throw new TypeError(\"@@toPrimitive must return a primitive value.\");\n }\n return (hint === \"string\" ? String : Number)(input);\n}","import toPropertyKey from \"./toPropertyKey.js\";\nexport default function _defineProperty(obj, key, value) {\n key = toPropertyKey(key);\n if (key in obj) {\n Object.defineProperty(obj, key, {\n value: value,\n enumerable: true,\n configurable: true,\n writable: true\n });\n } else {\n obj[key] = value;\n }\n return obj;\n}","import defineProperty from \"./defineProperty.js\";\nfunction ownKeys(object, enumerableOnly) {\n var keys = Object.keys(object);\n if (Object.getOwnPropertySymbols) {\n var symbols = Object.getOwnPropertySymbols(object);\n enumerableOnly && (symbols = symbols.filter(function (sym) {\n return Object.getOwnPropertyDescriptor(object, sym).enumerable;\n })), keys.push.apply(keys, symbols);\n }\n return keys;\n}\nexport default function _objectSpread2(target) {\n for (var i = 1; i < arguments.length; i++) {\n var source = null != arguments[i] ? arguments[i] : {};\n i % 2 ? ownKeys(Object(source), !0).forEach(function (key) {\n defineProperty(target, key, source[key]);\n }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) {\n Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key));\n });\n }\n return target;\n}","export default function _arrayLikeToArray(arr, len) {\n if (len == null || len > arr.length) len = arr.length;\n for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i];\n return arr2;\n}","import arrayLikeToArray from \"./arrayLikeToArray.js\";\nexport default function _unsupportedIterableToArray(o, minLen) {\n if (!o) return;\n if (typeof o === \"string\") return arrayLikeToArray(o, minLen);\n var n = Object.prototype.toString.call(o).slice(8, -1);\n if (n === \"Object\" && o.constructor) n = o.constructor.name;\n if (n === \"Map\" || n === \"Set\") return Array.from(o);\n if (n === \"Arguments\" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return arrayLikeToArray(o, minLen);\n}","import arrayWithHoles from \"./arrayWithHoles.js\";\nimport iterableToArrayLimit from \"./iterableToArrayLimit.js\";\nimport unsupportedIterableToArray from \"./unsupportedIterableToArray.js\";\nimport nonIterableRest from \"./nonIterableRest.js\";\nexport default function _slicedToArray(arr, i) {\n return arrayWithHoles(arr) || iterableToArrayLimit(arr, i) || unsupportedIterableToArray(arr, i) || nonIterableRest();\n}","export default function _arrayWithHoles(arr) {\n if (Array.isArray(arr)) return arr;\n}","export default function _iterableToArrayLimit(arr, i) {\n var _i = null == arr ? null : \"undefined\" != typeof Symbol && arr[Symbol.iterator] || arr[\"@@iterator\"];\n if (null != _i) {\n var _s,\n _e,\n _x,\n _r,\n _arr = [],\n _n = !0,\n _d = !1;\n try {\n if (_x = (_i = _i.call(arr)).next, 0 === i) {\n if (Object(_i) !== _i) return;\n _n = !1;\n } else for (; !(_n = (_s = _x.call(_i)).done) && (_arr.push(_s.value), _arr.length !== i); _n = !0);\n } catch (err) {\n _d = !0, _e = err;\n } finally {\n try {\n if (!_n && null != _i[\"return\"] && (_r = _i[\"return\"](), Object(_r) !== _r)) return;\n } finally {\n if (_d) throw _e;\n }\n }\n return _arr;\n }\n}","export default function _nonIterableRest() {\n throw new TypeError(\"Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\");\n}","import {useEffect} from 'react'\n\nfunction MarriageQualification({formData1 , setFormData1, validMarrDate, setValidMarrDate}) {\n\n useEffect(() => {\n window.scrollTo(0,0); \n }, [])\n \n const ValidateMarriageDate = () => {\n if ( validMarrDate === false){\n return

please enter a valid date

\n } else{\n return
\n }\n }\n\n\n return (\n <>\n
\n
\n
\n

We can claim marriage tax allowance on your behalf if:

\n
    \n
  • You have been married or in a civil partnership at any time in the last 4 years.
  • \n
  • One partners income, in the last 4 years, has to have been between £12,571 - £50,269 whilst\n the other partner has been either unemployed or had an income of less than £12,570.
  • \n
  • Both must have been born on or after 6 April 1935.
  • \n
\n
\n
\n
Are you married or in a civil partnership?
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
Please fill in the date of your marriage or civil partnership
\n
\n
\n
\n
\n
\n \n )\n}\n\nexport default MarriageQualification","export default function requiredArgs(required, args) {\n if (args.length < required) {\n throw new TypeError(required + ' argument' + (required > 1 ? 's' : '') + ' required, but only ' + args.length + ' present');\n }\n}","import _typeof from \"@babel/runtime/helpers/esm/typeof\";\nimport requiredArgs from \"../_lib/requiredArgs/index.js\";\n/**\n * @name isDate\n * @category Common Helpers\n * @summary Is the given value a date?\n *\n * @description\n * Returns true if the given value is an instance of Date. The function works for dates transferred across iframes.\n *\n * @param {*} value - the value to check\n * @returns {boolean} true if the given value is a date\n * @throws {TypeError} 1 arguments required\n *\n * @example\n * // For a valid date:\n * const result = isDate(new Date())\n * //=> true\n *\n * @example\n * // For an invalid date:\n * const result = isDate(new Date(NaN))\n * //=> true\n *\n * @example\n * // For some value:\n * const result = isDate('2014-02-31')\n * //=> false\n *\n * @example\n * // For an object:\n * const result = isDate({})\n * //=> false\n */\nexport default function isDate(value) {\n requiredArgs(1, arguments);\n return value instanceof Date || _typeof(value) === 'object' && Object.prototype.toString.call(value) === '[object Date]';\n}","import _typeof from \"@babel/runtime/helpers/esm/typeof\";\nimport requiredArgs from \"../_lib/requiredArgs/index.js\";\n/**\n * @name toDate\n * @category Common Helpers\n * @summary Convert the given argument to an instance of Date.\n *\n * @description\n * Convert the given argument to an instance of Date.\n *\n * If the argument is an instance of Date, the function returns its clone.\n *\n * If the argument is a number, it is treated as a timestamp.\n *\n * If the argument is none of the above, the function returns Invalid Date.\n *\n * **Note**: *all* Date arguments passed to any *date-fns* function is processed by `toDate`.\n *\n * @param {Date|Number} argument - the value to convert\n * @returns {Date} the parsed date in the local time zone\n * @throws {TypeError} 1 argument required\n *\n * @example\n * // Clone the date:\n * const result = toDate(new Date(2014, 1, 11, 11, 30, 30))\n * //=> Tue Feb 11 2014 11:30:30\n *\n * @example\n * // Convert the timestamp to date:\n * const result = toDate(1392098430000)\n * //=> Tue Feb 11 2014 11:30:30\n */\nexport default function toDate(argument) {\n requiredArgs(1, arguments);\n var argStr = Object.prototype.toString.call(argument);\n\n // Clone the date\n if (argument instanceof Date || _typeof(argument) === 'object' && argStr === '[object Date]') {\n // Prevent the date to lose the milliseconds when passed to new Date() in IE10\n return new Date(argument.getTime());\n } else if (typeof argument === 'number' || argStr === '[object Number]') {\n return new Date(argument);\n } else {\n if ((typeof argument === 'string' || argStr === '[object String]') && typeof console !== 'undefined') {\n // eslint-disable-next-line no-console\n console.warn(\"Starting with v2.0.0-beta.1 date-fns doesn't accept strings as date arguments. Please use `parseISO` to parse strings. See: https://github.com/date-fns/date-fns/blob/master/docs/upgradeGuide.md#string-arguments\");\n // eslint-disable-next-line no-console\n console.warn(new Error().stack);\n }\n return new Date(NaN);\n }\n}","import isDate from \"../isDate/index.js\";\nimport toDate from \"../toDate/index.js\";\nimport requiredArgs from \"../_lib/requiredArgs/index.js\";\n/**\n * @name isValid\n * @category Common Helpers\n * @summary Is the given date valid?\n *\n * @description\n * Returns false if argument is Invalid Date and true otherwise.\n * Argument is converted to Date using `toDate`. See [toDate]{@link https://date-fns.org/docs/toDate}\n * Invalid Date is a Date, whose time value is NaN.\n *\n * Time value of Date: http://es5.github.io/#x15.9.1.1\n *\n * @param {*} date - the date to check\n * @returns {Boolean} the date is valid\n * @throws {TypeError} 1 argument required\n *\n * @example\n * // For the valid date:\n * const result = isValid(new Date(2014, 1, 31))\n * //=> true\n *\n * @example\n * // For the value, convertable into a date:\n * const result = isValid(1393804800000)\n * //=> true\n *\n * @example\n * // For the invalid date:\n * const result = isValid(new Date(''))\n * //=> false\n */\nexport default function isValid(dirtyDate) {\n requiredArgs(1, arguments);\n if (!isDate(dirtyDate) && typeof dirtyDate !== 'number') {\n return false;\n }\n var date = toDate(dirtyDate);\n return !isNaN(Number(date));\n}","export default function toInteger(dirtyNumber) {\n if (dirtyNumber === null || dirtyNumber === true || dirtyNumber === false) {\n return NaN;\n }\n var number = Number(dirtyNumber);\n if (isNaN(number)) {\n return number;\n }\n return number < 0 ? Math.ceil(number) : Math.floor(number);\n}","import toInteger from \"../_lib/toInteger/index.js\";\nimport toDate from \"../toDate/index.js\";\nimport requiredArgs from \"../_lib/requiredArgs/index.js\";\n/**\n * @name addMilliseconds\n * @category Millisecond Helpers\n * @summary Add the specified number of milliseconds to the given date.\n *\n * @description\n * Add the specified number of milliseconds to the given date.\n *\n * @param {Date|Number} date - the date to be changed\n * @param {Number} amount - the amount of milliseconds to be added. Positive decimals will be rounded using `Math.floor`, decimals less than zero will be rounded using `Math.ceil`.\n * @returns {Date} the new date with the milliseconds added\n * @throws {TypeError} 2 arguments required\n *\n * @example\n * // Add 750 milliseconds to 10 July 2014 12:45:30.000:\n * const result = addMilliseconds(new Date(2014, 6, 10, 12, 45, 30, 0), 750)\n * //=> Thu Jul 10 2014 12:45:30.750\n */\nexport default function addMilliseconds(dirtyDate, dirtyAmount) {\n requiredArgs(2, arguments);\n var timestamp = toDate(dirtyDate).getTime();\n var amount = toInteger(dirtyAmount);\n return new Date(timestamp + amount);\n}","import addMilliseconds from \"../addMilliseconds/index.js\";\nimport requiredArgs from \"../_lib/requiredArgs/index.js\";\nimport toInteger from \"../_lib/toInteger/index.js\";\n/**\n * @name subMilliseconds\n * @category Millisecond Helpers\n * @summary Subtract the specified number of milliseconds from the given date.\n *\n * @description\n * Subtract the specified number of milliseconds from the given date.\n *\n * @param {Date|Number} date - the date to be changed\n * @param {Number} amount - the amount of milliseconds to be subtracted. Positive decimals will be rounded using `Math.floor`, decimals less than zero will be rounded using `Math.ceil`.\n * @returns {Date} the new date with the milliseconds subtracted\n * @throws {TypeError} 2 arguments required\n *\n * @example\n * // Subtract 750 milliseconds from 10 July 2014 12:45:30.000:\n * const result = subMilliseconds(new Date(2014, 6, 10, 12, 45, 30, 0), 750)\n * //=> Thu Jul 10 2014 12:45:29.250\n */\nexport default function subMilliseconds(dirtyDate, dirtyAmount) {\n requiredArgs(2, arguments);\n var amount = toInteger(dirtyAmount);\n return addMilliseconds(dirtyDate, -amount);\n}","import toDate from \"../../toDate/index.js\";\nimport requiredArgs from \"../requiredArgs/index.js\";\nvar MILLISECONDS_IN_DAY = 86400000;\nexport default function getUTCDayOfYear(dirtyDate) {\n requiredArgs(1, arguments);\n var date = toDate(dirtyDate);\n var timestamp = date.getTime();\n date.setUTCMonth(0, 1);\n date.setUTCHours(0, 0, 0, 0);\n var startOfYearTimestamp = date.getTime();\n var difference = timestamp - startOfYearTimestamp;\n return Math.floor(difference / MILLISECONDS_IN_DAY) + 1;\n}","import toDate from \"../../toDate/index.js\";\nimport requiredArgs from \"../requiredArgs/index.js\";\nexport default function startOfUTCISOWeek(dirtyDate) {\n requiredArgs(1, arguments);\n var weekStartsOn = 1;\n var date = toDate(dirtyDate);\n var day = date.getUTCDay();\n var diff = (day < weekStartsOn ? 7 : 0) + day - weekStartsOn;\n date.setUTCDate(date.getUTCDate() - diff);\n date.setUTCHours(0, 0, 0, 0);\n return date;\n}","import toDate from \"../../toDate/index.js\";\nimport requiredArgs from \"../requiredArgs/index.js\";\nimport startOfUTCISOWeek from \"../startOfUTCISOWeek/index.js\";\nexport default function getUTCISOWeekYear(dirtyDate) {\n requiredArgs(1, arguments);\n var date = toDate(dirtyDate);\n var year = date.getUTCFullYear();\n var fourthOfJanuaryOfNextYear = new Date(0);\n fourthOfJanuaryOfNextYear.setUTCFullYear(year + 1, 0, 4);\n fourthOfJanuaryOfNextYear.setUTCHours(0, 0, 0, 0);\n var startOfNextYear = startOfUTCISOWeek(fourthOfJanuaryOfNextYear);\n var fourthOfJanuaryOfThisYear = new Date(0);\n fourthOfJanuaryOfThisYear.setUTCFullYear(year, 0, 4);\n fourthOfJanuaryOfThisYear.setUTCHours(0, 0, 0, 0);\n var startOfThisYear = startOfUTCISOWeek(fourthOfJanuaryOfThisYear);\n if (date.getTime() >= startOfNextYear.getTime()) {\n return year + 1;\n } else if (date.getTime() >= startOfThisYear.getTime()) {\n return year;\n } else {\n return year - 1;\n }\n}","import getUTCISOWeekYear from \"../getUTCISOWeekYear/index.js\";\nimport startOfUTCISOWeek from \"../startOfUTCISOWeek/index.js\";\nimport requiredArgs from \"../requiredArgs/index.js\";\nexport default function startOfUTCISOWeekYear(dirtyDate) {\n requiredArgs(1, arguments);\n var year = getUTCISOWeekYear(dirtyDate);\n var fourthOfJanuary = new Date(0);\n fourthOfJanuary.setUTCFullYear(year, 0, 4);\n fourthOfJanuary.setUTCHours(0, 0, 0, 0);\n var date = startOfUTCISOWeek(fourthOfJanuary);\n return date;\n}","import toDate from \"../../toDate/index.js\";\nimport startOfUTCISOWeek from \"../startOfUTCISOWeek/index.js\";\nimport startOfUTCISOWeekYear from \"../startOfUTCISOWeekYear/index.js\";\nimport requiredArgs from \"../requiredArgs/index.js\";\nvar MILLISECONDS_IN_WEEK = 604800000;\nexport default function getUTCISOWeek(dirtyDate) {\n requiredArgs(1, arguments);\n var date = toDate(dirtyDate);\n var diff = startOfUTCISOWeek(date).getTime() - startOfUTCISOWeekYear(date).getTime();\n\n // Round the number of days to the nearest integer\n // because the number of milliseconds in a week is not constant\n // (e.g. it's different in the week of the daylight saving time clock shift)\n return Math.round(diff / MILLISECONDS_IN_WEEK) + 1;\n}","var defaultOptions = {};\nexport function getDefaultOptions() {\n return defaultOptions;\n}\nexport function setDefaultOptions(newOptions) {\n defaultOptions = newOptions;\n}","import toDate from \"../../toDate/index.js\";\nimport requiredArgs from \"../requiredArgs/index.js\";\nimport toInteger from \"../toInteger/index.js\";\nimport { getDefaultOptions } from \"../defaultOptions/index.js\";\nexport default function startOfUTCWeek(dirtyDate, options) {\n var _ref, _ref2, _ref3, _options$weekStartsOn, _options$locale, _options$locale$optio, _defaultOptions$local, _defaultOptions$local2;\n requiredArgs(1, arguments);\n var defaultOptions = getDefaultOptions();\n var weekStartsOn = toInteger((_ref = (_ref2 = (_ref3 = (_options$weekStartsOn = options === null || options === void 0 ? void 0 : options.weekStartsOn) !== null && _options$weekStartsOn !== void 0 ? _options$weekStartsOn : options === null || options === void 0 ? void 0 : (_options$locale = options.locale) === null || _options$locale === void 0 ? void 0 : (_options$locale$optio = _options$locale.options) === null || _options$locale$optio === void 0 ? void 0 : _options$locale$optio.weekStartsOn) !== null && _ref3 !== void 0 ? _ref3 : defaultOptions.weekStartsOn) !== null && _ref2 !== void 0 ? _ref2 : (_defaultOptions$local = defaultOptions.locale) === null || _defaultOptions$local === void 0 ? void 0 : (_defaultOptions$local2 = _defaultOptions$local.options) === null || _defaultOptions$local2 === void 0 ? void 0 : _defaultOptions$local2.weekStartsOn) !== null && _ref !== void 0 ? _ref : 0);\n\n // Test if weekStartsOn is between 0 and 6 _and_ is not NaN\n if (!(weekStartsOn >= 0 && weekStartsOn <= 6)) {\n throw new RangeError('weekStartsOn must be between 0 and 6 inclusively');\n }\n var date = toDate(dirtyDate);\n var day = date.getUTCDay();\n var diff = (day < weekStartsOn ? 7 : 0) + day - weekStartsOn;\n date.setUTCDate(date.getUTCDate() - diff);\n date.setUTCHours(0, 0, 0, 0);\n return date;\n}","import toDate from \"../../toDate/index.js\";\nimport requiredArgs from \"../requiredArgs/index.js\";\nimport startOfUTCWeek from \"../startOfUTCWeek/index.js\";\nimport toInteger from \"../toInteger/index.js\";\nimport { getDefaultOptions } from \"../defaultOptions/index.js\";\nexport default function getUTCWeekYear(dirtyDate, options) {\n var _ref, _ref2, _ref3, _options$firstWeekCon, _options$locale, _options$locale$optio, _defaultOptions$local, _defaultOptions$local2;\n requiredArgs(1, arguments);\n var date = toDate(dirtyDate);\n var year = date.getUTCFullYear();\n var defaultOptions = getDefaultOptions();\n var firstWeekContainsDate = toInteger((_ref = (_ref2 = (_ref3 = (_options$firstWeekCon = options === null || options === void 0 ? void 0 : options.firstWeekContainsDate) !== null && _options$firstWeekCon !== void 0 ? _options$firstWeekCon : options === null || options === void 0 ? void 0 : (_options$locale = options.locale) === null || _options$locale === void 0 ? void 0 : (_options$locale$optio = _options$locale.options) === null || _options$locale$optio === void 0 ? void 0 : _options$locale$optio.firstWeekContainsDate) !== null && _ref3 !== void 0 ? _ref3 : defaultOptions.firstWeekContainsDate) !== null && _ref2 !== void 0 ? _ref2 : (_defaultOptions$local = defaultOptions.locale) === null || _defaultOptions$local === void 0 ? void 0 : (_defaultOptions$local2 = _defaultOptions$local.options) === null || _defaultOptions$local2 === void 0 ? void 0 : _defaultOptions$local2.firstWeekContainsDate) !== null && _ref !== void 0 ? _ref : 1);\n\n // Test if weekStartsOn is between 1 and 7 _and_ is not NaN\n if (!(firstWeekContainsDate >= 1 && firstWeekContainsDate <= 7)) {\n throw new RangeError('firstWeekContainsDate must be between 1 and 7 inclusively');\n }\n var firstWeekOfNextYear = new Date(0);\n firstWeekOfNextYear.setUTCFullYear(year + 1, 0, firstWeekContainsDate);\n firstWeekOfNextYear.setUTCHours(0, 0, 0, 0);\n var startOfNextYear = startOfUTCWeek(firstWeekOfNextYear, options);\n var firstWeekOfThisYear = new Date(0);\n firstWeekOfThisYear.setUTCFullYear(year, 0, firstWeekContainsDate);\n firstWeekOfThisYear.setUTCHours(0, 0, 0, 0);\n var startOfThisYear = startOfUTCWeek(firstWeekOfThisYear, options);\n if (date.getTime() >= startOfNextYear.getTime()) {\n return year + 1;\n } else if (date.getTime() >= startOfThisYear.getTime()) {\n return year;\n } else {\n return year - 1;\n }\n}","import getUTCWeekYear from \"../getUTCWeekYear/index.js\";\nimport requiredArgs from \"../requiredArgs/index.js\";\nimport startOfUTCWeek from \"../startOfUTCWeek/index.js\";\nimport toInteger from \"../toInteger/index.js\";\nimport { getDefaultOptions } from \"../defaultOptions/index.js\";\nexport default function startOfUTCWeekYear(dirtyDate, options) {\n var _ref, _ref2, _ref3, _options$firstWeekCon, _options$locale, _options$locale$optio, _defaultOptions$local, _defaultOptions$local2;\n requiredArgs(1, arguments);\n var defaultOptions = getDefaultOptions();\n var firstWeekContainsDate = toInteger((_ref = (_ref2 = (_ref3 = (_options$firstWeekCon = options === null || options === void 0 ? void 0 : options.firstWeekContainsDate) !== null && _options$firstWeekCon !== void 0 ? _options$firstWeekCon : options === null || options === void 0 ? void 0 : (_options$locale = options.locale) === null || _options$locale === void 0 ? void 0 : (_options$locale$optio = _options$locale.options) === null || _options$locale$optio === void 0 ? void 0 : _options$locale$optio.firstWeekContainsDate) !== null && _ref3 !== void 0 ? _ref3 : defaultOptions.firstWeekContainsDate) !== null && _ref2 !== void 0 ? _ref2 : (_defaultOptions$local = defaultOptions.locale) === null || _defaultOptions$local === void 0 ? void 0 : (_defaultOptions$local2 = _defaultOptions$local.options) === null || _defaultOptions$local2 === void 0 ? void 0 : _defaultOptions$local2.firstWeekContainsDate) !== null && _ref !== void 0 ? _ref : 1);\n var year = getUTCWeekYear(dirtyDate, options);\n var firstWeek = new Date(0);\n firstWeek.setUTCFullYear(year, 0, firstWeekContainsDate);\n firstWeek.setUTCHours(0, 0, 0, 0);\n var date = startOfUTCWeek(firstWeek, options);\n return date;\n}","import toDate from \"../../toDate/index.js\";\nimport startOfUTCWeek from \"../startOfUTCWeek/index.js\";\nimport startOfUTCWeekYear from \"../startOfUTCWeekYear/index.js\";\nimport requiredArgs from \"../requiredArgs/index.js\";\nvar MILLISECONDS_IN_WEEK = 604800000;\nexport default function getUTCWeek(dirtyDate, options) {\n requiredArgs(1, arguments);\n var date = toDate(dirtyDate);\n var diff = startOfUTCWeek(date, options).getTime() - startOfUTCWeekYear(date, options).getTime();\n\n // Round the number of days to the nearest integer\n // because the number of milliseconds in a week is not constant\n // (e.g. it's different in the week of the daylight saving time clock shift)\n return Math.round(diff / MILLISECONDS_IN_WEEK) + 1;\n}","export default function addLeadingZeros(number, targetLength) {\n var sign = number < 0 ? '-' : '';\n var output = Math.abs(number).toString();\n while (output.length < targetLength) {\n output = '0' + output;\n }\n return sign + output;\n}","import addLeadingZeros from \"../../addLeadingZeros/index.js\";\n/*\n * | | Unit | | Unit |\n * |-----|--------------------------------|-----|--------------------------------|\n * | a | AM, PM | A* | |\n * | d | Day of month | D | |\n * | h | Hour [1-12] | H | Hour [0-23] |\n * | m | Minute | M | Month |\n * | s | Second | S | Fraction of second |\n * | y | Year (abs) | Y | |\n *\n * Letters marked by * are not implemented but reserved by Unicode standard.\n */\nvar formatters = {\n // Year\n y: function y(date, token) {\n // From http://www.unicode.org/reports/tr35/tr35-31/tr35-dates.html#Date_Format_tokens\n // | Year | y | yy | yyy | yyyy | yyyyy |\n // |----------|-------|----|-------|-------|-------|\n // | AD 1 | 1 | 01 | 001 | 0001 | 00001 |\n // | AD 12 | 12 | 12 | 012 | 0012 | 00012 |\n // | AD 123 | 123 | 23 | 123 | 0123 | 00123 |\n // | AD 1234 | 1234 | 34 | 1234 | 1234 | 01234 |\n // | AD 12345 | 12345 | 45 | 12345 | 12345 | 12345 |\n\n var signedYear = date.getUTCFullYear();\n // Returns 1 for 1 BC (which is year 0 in JavaScript)\n var year = signedYear > 0 ? signedYear : 1 - signedYear;\n return addLeadingZeros(token === 'yy' ? year % 100 : year, token.length);\n },\n // Month\n M: function M(date, token) {\n var month = date.getUTCMonth();\n return token === 'M' ? String(month + 1) : addLeadingZeros(month + 1, 2);\n },\n // Day of the month\n d: function d(date, token) {\n return addLeadingZeros(date.getUTCDate(), token.length);\n },\n // AM or PM\n a: function a(date, token) {\n var dayPeriodEnumValue = date.getUTCHours() / 12 >= 1 ? 'pm' : 'am';\n switch (token) {\n case 'a':\n case 'aa':\n return dayPeriodEnumValue.toUpperCase();\n case 'aaa':\n return dayPeriodEnumValue;\n case 'aaaaa':\n return dayPeriodEnumValue[0];\n case 'aaaa':\n default:\n return dayPeriodEnumValue === 'am' ? 'a.m.' : 'p.m.';\n }\n },\n // Hour [1-12]\n h: function h(date, token) {\n return addLeadingZeros(date.getUTCHours() % 12 || 12, token.length);\n },\n // Hour [0-23]\n H: function H(date, token) {\n return addLeadingZeros(date.getUTCHours(), token.length);\n },\n // Minute\n m: function m(date, token) {\n return addLeadingZeros(date.getUTCMinutes(), token.length);\n },\n // Second\n s: function s(date, token) {\n return addLeadingZeros(date.getUTCSeconds(), token.length);\n },\n // Fraction of second\n S: function S(date, token) {\n var numberOfDigits = token.length;\n var milliseconds = date.getUTCMilliseconds();\n var fractionalSeconds = Math.floor(milliseconds * Math.pow(10, numberOfDigits - 3));\n return addLeadingZeros(fractionalSeconds, token.length);\n }\n};\nexport default formatters;","import getUTCDayOfYear from \"../../../_lib/getUTCDayOfYear/index.js\";\nimport getUTCISOWeek from \"../../../_lib/getUTCISOWeek/index.js\";\nimport getUTCISOWeekYear from \"../../../_lib/getUTCISOWeekYear/index.js\";\nimport getUTCWeek from \"../../../_lib/getUTCWeek/index.js\";\nimport getUTCWeekYear from \"../../../_lib/getUTCWeekYear/index.js\";\nimport addLeadingZeros from \"../../addLeadingZeros/index.js\";\nimport lightFormatters from \"../lightFormatters/index.js\";\nvar dayPeriodEnum = {\n am: 'am',\n pm: 'pm',\n midnight: 'midnight',\n noon: 'noon',\n morning: 'morning',\n afternoon: 'afternoon',\n evening: 'evening',\n night: 'night'\n};\n/*\n * | | Unit | | Unit |\n * |-----|--------------------------------|-----|--------------------------------|\n * | a | AM, PM | A* | Milliseconds in day |\n * | b | AM, PM, noon, midnight | B | Flexible day period |\n * | c | Stand-alone local day of week | C* | Localized hour w/ day period |\n * | d | Day of month | D | Day of year |\n * | e | Local day of week | E | Day of week |\n * | f | | F* | Day of week in month |\n * | g* | Modified Julian day | G | Era |\n * | h | Hour [1-12] | H | Hour [0-23] |\n * | i! | ISO day of week | I! | ISO week of year |\n * | j* | Localized hour w/ day period | J* | Localized hour w/o day period |\n * | k | Hour [1-24] | K | Hour [0-11] |\n * | l* | (deprecated) | L | Stand-alone month |\n * | m | Minute | M | Month |\n * | n | | N | |\n * | o! | Ordinal number modifier | O | Timezone (GMT) |\n * | p! | Long localized time | P! | Long localized date |\n * | q | Stand-alone quarter | Q | Quarter |\n * | r* | Related Gregorian year | R! | ISO week-numbering year |\n * | s | Second | S | Fraction of second |\n * | t! | Seconds timestamp | T! | Milliseconds timestamp |\n * | u | Extended year | U* | Cyclic year |\n * | v* | Timezone (generic non-locat.) | V* | Timezone (location) |\n * | w | Local week of year | W* | Week of month |\n * | x | Timezone (ISO-8601 w/o Z) | X | Timezone (ISO-8601) |\n * | y | Year (abs) | Y | Local week-numbering year |\n * | z | Timezone (specific non-locat.) | Z* | Timezone (aliases) |\n *\n * Letters marked by * are not implemented but reserved by Unicode standard.\n *\n * Letters marked by ! are non-standard, but implemented by date-fns:\n * - `o` modifies the previous token to turn it into an ordinal (see `format` docs)\n * - `i` is ISO day of week. For `i` and `ii` is returns numeric ISO week days,\n * i.e. 7 for Sunday, 1 for Monday, etc.\n * - `I` is ISO week of year, as opposed to `w` which is local week of year.\n * - `R` is ISO week-numbering year, as opposed to `Y` which is local week-numbering year.\n * `R` is supposed to be used in conjunction with `I` and `i`\n * for universal ISO week-numbering date, whereas\n * `Y` is supposed to be used in conjunction with `w` and `e`\n * for week-numbering date specific to the locale.\n * - `P` is long localized date format\n * - `p` is long localized time format\n */\n\nvar formatters = {\n // Era\n G: function G(date, token, localize) {\n var era = date.getUTCFullYear() > 0 ? 1 : 0;\n switch (token) {\n // AD, BC\n case 'G':\n case 'GG':\n case 'GGG':\n return localize.era(era, {\n width: 'abbreviated'\n });\n // A, B\n case 'GGGGG':\n return localize.era(era, {\n width: 'narrow'\n });\n // Anno Domini, Before Christ\n case 'GGGG':\n default:\n return localize.era(era, {\n width: 'wide'\n });\n }\n },\n // Year\n y: function y(date, token, localize) {\n // Ordinal number\n if (token === 'yo') {\n var signedYear = date.getUTCFullYear();\n // Returns 1 for 1 BC (which is year 0 in JavaScript)\n var year = signedYear > 0 ? signedYear : 1 - signedYear;\n return localize.ordinalNumber(year, {\n unit: 'year'\n });\n }\n return lightFormatters.y(date, token);\n },\n // Local week-numbering year\n Y: function Y(date, token, localize, options) {\n var signedWeekYear = getUTCWeekYear(date, options);\n // Returns 1 for 1 BC (which is year 0 in JavaScript)\n var weekYear = signedWeekYear > 0 ? signedWeekYear : 1 - signedWeekYear;\n\n // Two digit year\n if (token === 'YY') {\n var twoDigitYear = weekYear % 100;\n return addLeadingZeros(twoDigitYear, 2);\n }\n\n // Ordinal number\n if (token === 'Yo') {\n return localize.ordinalNumber(weekYear, {\n unit: 'year'\n });\n }\n\n // Padding\n return addLeadingZeros(weekYear, token.length);\n },\n // ISO week-numbering year\n R: function R(date, token) {\n var isoWeekYear = getUTCISOWeekYear(date);\n\n // Padding\n return addLeadingZeros(isoWeekYear, token.length);\n },\n // Extended year. This is a single number designating the year of this calendar system.\n // The main difference between `y` and `u` localizers are B.C. years:\n // | Year | `y` | `u` |\n // |------|-----|-----|\n // | AC 1 | 1 | 1 |\n // | BC 1 | 1 | 0 |\n // | BC 2 | 2 | -1 |\n // Also `yy` always returns the last two digits of a year,\n // while `uu` pads single digit years to 2 characters and returns other years unchanged.\n u: function u(date, token) {\n var year = date.getUTCFullYear();\n return addLeadingZeros(year, token.length);\n },\n // Quarter\n Q: function Q(date, token, localize) {\n var quarter = Math.ceil((date.getUTCMonth() + 1) / 3);\n switch (token) {\n // 1, 2, 3, 4\n case 'Q':\n return String(quarter);\n // 01, 02, 03, 04\n case 'QQ':\n return addLeadingZeros(quarter, 2);\n // 1st, 2nd, 3rd, 4th\n case 'Qo':\n return localize.ordinalNumber(quarter, {\n unit: 'quarter'\n });\n // Q1, Q2, Q3, Q4\n case 'QQQ':\n return localize.quarter(quarter, {\n width: 'abbreviated',\n context: 'formatting'\n });\n // 1, 2, 3, 4 (narrow quarter; could be not numerical)\n case 'QQQQQ':\n return localize.quarter(quarter, {\n width: 'narrow',\n context: 'formatting'\n });\n // 1st quarter, 2nd quarter, ...\n case 'QQQQ':\n default:\n return localize.quarter(quarter, {\n width: 'wide',\n context: 'formatting'\n });\n }\n },\n // Stand-alone quarter\n q: function q(date, token, localize) {\n var quarter = Math.ceil((date.getUTCMonth() + 1) / 3);\n switch (token) {\n // 1, 2, 3, 4\n case 'q':\n return String(quarter);\n // 01, 02, 03, 04\n case 'qq':\n return addLeadingZeros(quarter, 2);\n // 1st, 2nd, 3rd, 4th\n case 'qo':\n return localize.ordinalNumber(quarter, {\n unit: 'quarter'\n });\n // Q1, Q2, Q3, Q4\n case 'qqq':\n return localize.quarter(quarter, {\n width: 'abbreviated',\n context: 'standalone'\n });\n // 1, 2, 3, 4 (narrow quarter; could be not numerical)\n case 'qqqqq':\n return localize.quarter(quarter, {\n width: 'narrow',\n context: 'standalone'\n });\n // 1st quarter, 2nd quarter, ...\n case 'qqqq':\n default:\n return localize.quarter(quarter, {\n width: 'wide',\n context: 'standalone'\n });\n }\n },\n // Month\n M: function M(date, token, localize) {\n var month = date.getUTCMonth();\n switch (token) {\n case 'M':\n case 'MM':\n return lightFormatters.M(date, token);\n // 1st, 2nd, ..., 12th\n case 'Mo':\n return localize.ordinalNumber(month + 1, {\n unit: 'month'\n });\n // Jan, Feb, ..., Dec\n case 'MMM':\n return localize.month(month, {\n width: 'abbreviated',\n context: 'formatting'\n });\n // J, F, ..., D\n case 'MMMMM':\n return localize.month(month, {\n width: 'narrow',\n context: 'formatting'\n });\n // January, February, ..., December\n case 'MMMM':\n default:\n return localize.month(month, {\n width: 'wide',\n context: 'formatting'\n });\n }\n },\n // Stand-alone month\n L: function L(date, token, localize) {\n var month = date.getUTCMonth();\n switch (token) {\n // 1, 2, ..., 12\n case 'L':\n return String(month + 1);\n // 01, 02, ..., 12\n case 'LL':\n return addLeadingZeros(month + 1, 2);\n // 1st, 2nd, ..., 12th\n case 'Lo':\n return localize.ordinalNumber(month + 1, {\n unit: 'month'\n });\n // Jan, Feb, ..., Dec\n case 'LLL':\n return localize.month(month, {\n width: 'abbreviated',\n context: 'standalone'\n });\n // J, F, ..., D\n case 'LLLLL':\n return localize.month(month, {\n width: 'narrow',\n context: 'standalone'\n });\n // January, February, ..., December\n case 'LLLL':\n default:\n return localize.month(month, {\n width: 'wide',\n context: 'standalone'\n });\n }\n },\n // Local week of year\n w: function w(date, token, localize, options) {\n var week = getUTCWeek(date, options);\n if (token === 'wo') {\n return localize.ordinalNumber(week, {\n unit: 'week'\n });\n }\n return addLeadingZeros(week, token.length);\n },\n // ISO week of year\n I: function I(date, token, localize) {\n var isoWeek = getUTCISOWeek(date);\n if (token === 'Io') {\n return localize.ordinalNumber(isoWeek, {\n unit: 'week'\n });\n }\n return addLeadingZeros(isoWeek, token.length);\n },\n // Day of the month\n d: function d(date, token, localize) {\n if (token === 'do') {\n return localize.ordinalNumber(date.getUTCDate(), {\n unit: 'date'\n });\n }\n return lightFormatters.d(date, token);\n },\n // Day of year\n D: function D(date, token, localize) {\n var dayOfYear = getUTCDayOfYear(date);\n if (token === 'Do') {\n return localize.ordinalNumber(dayOfYear, {\n unit: 'dayOfYear'\n });\n }\n return addLeadingZeros(dayOfYear, token.length);\n },\n // Day of week\n E: function E(date, token, localize) {\n var dayOfWeek = date.getUTCDay();\n switch (token) {\n // Tue\n case 'E':\n case 'EE':\n case 'EEE':\n return localize.day(dayOfWeek, {\n width: 'abbreviated',\n context: 'formatting'\n });\n // T\n case 'EEEEE':\n return localize.day(dayOfWeek, {\n width: 'narrow',\n context: 'formatting'\n });\n // Tu\n case 'EEEEEE':\n return localize.day(dayOfWeek, {\n width: 'short',\n context: 'formatting'\n });\n // Tuesday\n case 'EEEE':\n default:\n return localize.day(dayOfWeek, {\n width: 'wide',\n context: 'formatting'\n });\n }\n },\n // Local day of week\n e: function e(date, token, localize, options) {\n var dayOfWeek = date.getUTCDay();\n var localDayOfWeek = (dayOfWeek - options.weekStartsOn + 8) % 7 || 7;\n switch (token) {\n // Numerical value (Nth day of week with current locale or weekStartsOn)\n case 'e':\n return String(localDayOfWeek);\n // Padded numerical value\n case 'ee':\n return addLeadingZeros(localDayOfWeek, 2);\n // 1st, 2nd, ..., 7th\n case 'eo':\n return localize.ordinalNumber(localDayOfWeek, {\n unit: 'day'\n });\n case 'eee':\n return localize.day(dayOfWeek, {\n width: 'abbreviated',\n context: 'formatting'\n });\n // T\n case 'eeeee':\n return localize.day(dayOfWeek, {\n width: 'narrow',\n context: 'formatting'\n });\n // Tu\n case 'eeeeee':\n return localize.day(dayOfWeek, {\n width: 'short',\n context: 'formatting'\n });\n // Tuesday\n case 'eeee':\n default:\n return localize.day(dayOfWeek, {\n width: 'wide',\n context: 'formatting'\n });\n }\n },\n // Stand-alone local day of week\n c: function c(date, token, localize, options) {\n var dayOfWeek = date.getUTCDay();\n var localDayOfWeek = (dayOfWeek - options.weekStartsOn + 8) % 7 || 7;\n switch (token) {\n // Numerical value (same as in `e`)\n case 'c':\n return String(localDayOfWeek);\n // Padded numerical value\n case 'cc':\n return addLeadingZeros(localDayOfWeek, token.length);\n // 1st, 2nd, ..., 7th\n case 'co':\n return localize.ordinalNumber(localDayOfWeek, {\n unit: 'day'\n });\n case 'ccc':\n return localize.day(dayOfWeek, {\n width: 'abbreviated',\n context: 'standalone'\n });\n // T\n case 'ccccc':\n return localize.day(dayOfWeek, {\n width: 'narrow',\n context: 'standalone'\n });\n // Tu\n case 'cccccc':\n return localize.day(dayOfWeek, {\n width: 'short',\n context: 'standalone'\n });\n // Tuesday\n case 'cccc':\n default:\n return localize.day(dayOfWeek, {\n width: 'wide',\n context: 'standalone'\n });\n }\n },\n // ISO day of week\n i: function i(date, token, localize) {\n var dayOfWeek = date.getUTCDay();\n var isoDayOfWeek = dayOfWeek === 0 ? 7 : dayOfWeek;\n switch (token) {\n // 2\n case 'i':\n return String(isoDayOfWeek);\n // 02\n case 'ii':\n return addLeadingZeros(isoDayOfWeek, token.length);\n // 2nd\n case 'io':\n return localize.ordinalNumber(isoDayOfWeek, {\n unit: 'day'\n });\n // Tue\n case 'iii':\n return localize.day(dayOfWeek, {\n width: 'abbreviated',\n context: 'formatting'\n });\n // T\n case 'iiiii':\n return localize.day(dayOfWeek, {\n width: 'narrow',\n context: 'formatting'\n });\n // Tu\n case 'iiiiii':\n return localize.day(dayOfWeek, {\n width: 'short',\n context: 'formatting'\n });\n // Tuesday\n case 'iiii':\n default:\n return localize.day(dayOfWeek, {\n width: 'wide',\n context: 'formatting'\n });\n }\n },\n // AM or PM\n a: function a(date, token, localize) {\n var hours = date.getUTCHours();\n var dayPeriodEnumValue = hours / 12 >= 1 ? 'pm' : 'am';\n switch (token) {\n case 'a':\n case 'aa':\n return localize.dayPeriod(dayPeriodEnumValue, {\n width: 'abbreviated',\n context: 'formatting'\n });\n case 'aaa':\n return localize.dayPeriod(dayPeriodEnumValue, {\n width: 'abbreviated',\n context: 'formatting'\n }).toLowerCase();\n case 'aaaaa':\n return localize.dayPeriod(dayPeriodEnumValue, {\n width: 'narrow',\n context: 'formatting'\n });\n case 'aaaa':\n default:\n return localize.dayPeriod(dayPeriodEnumValue, {\n width: 'wide',\n context: 'formatting'\n });\n }\n },\n // AM, PM, midnight, noon\n b: function b(date, token, localize) {\n var hours = date.getUTCHours();\n var dayPeriodEnumValue;\n if (hours === 12) {\n dayPeriodEnumValue = dayPeriodEnum.noon;\n } else if (hours === 0) {\n dayPeriodEnumValue = dayPeriodEnum.midnight;\n } else {\n dayPeriodEnumValue = hours / 12 >= 1 ? 'pm' : 'am';\n }\n switch (token) {\n case 'b':\n case 'bb':\n return localize.dayPeriod(dayPeriodEnumValue, {\n width: 'abbreviated',\n context: 'formatting'\n });\n case 'bbb':\n return localize.dayPeriod(dayPeriodEnumValue, {\n width: 'abbreviated',\n context: 'formatting'\n }).toLowerCase();\n case 'bbbbb':\n return localize.dayPeriod(dayPeriodEnumValue, {\n width: 'narrow',\n context: 'formatting'\n });\n case 'bbbb':\n default:\n return localize.dayPeriod(dayPeriodEnumValue, {\n width: 'wide',\n context: 'formatting'\n });\n }\n },\n // in the morning, in the afternoon, in the evening, at night\n B: function B(date, token, localize) {\n var hours = date.getUTCHours();\n var dayPeriodEnumValue;\n if (hours >= 17) {\n dayPeriodEnumValue = dayPeriodEnum.evening;\n } else if (hours >= 12) {\n dayPeriodEnumValue = dayPeriodEnum.afternoon;\n } else if (hours >= 4) {\n dayPeriodEnumValue = dayPeriodEnum.morning;\n } else {\n dayPeriodEnumValue = dayPeriodEnum.night;\n }\n switch (token) {\n case 'B':\n case 'BB':\n case 'BBB':\n return localize.dayPeriod(dayPeriodEnumValue, {\n width: 'abbreviated',\n context: 'formatting'\n });\n case 'BBBBB':\n return localize.dayPeriod(dayPeriodEnumValue, {\n width: 'narrow',\n context: 'formatting'\n });\n case 'BBBB':\n default:\n return localize.dayPeriod(dayPeriodEnumValue, {\n width: 'wide',\n context: 'formatting'\n });\n }\n },\n // Hour [1-12]\n h: function h(date, token, localize) {\n if (token === 'ho') {\n var hours = date.getUTCHours() % 12;\n if (hours === 0) hours = 12;\n return localize.ordinalNumber(hours, {\n unit: 'hour'\n });\n }\n return lightFormatters.h(date, token);\n },\n // Hour [0-23]\n H: function H(date, token, localize) {\n if (token === 'Ho') {\n return localize.ordinalNumber(date.getUTCHours(), {\n unit: 'hour'\n });\n }\n return lightFormatters.H(date, token);\n },\n // Hour [0-11]\n K: function K(date, token, localize) {\n var hours = date.getUTCHours() % 12;\n if (token === 'Ko') {\n return localize.ordinalNumber(hours, {\n unit: 'hour'\n });\n }\n return addLeadingZeros(hours, token.length);\n },\n // Hour [1-24]\n k: function k(date, token, localize) {\n var hours = date.getUTCHours();\n if (hours === 0) hours = 24;\n if (token === 'ko') {\n return localize.ordinalNumber(hours, {\n unit: 'hour'\n });\n }\n return addLeadingZeros(hours, token.length);\n },\n // Minute\n m: function m(date, token, localize) {\n if (token === 'mo') {\n return localize.ordinalNumber(date.getUTCMinutes(), {\n unit: 'minute'\n });\n }\n return lightFormatters.m(date, token);\n },\n // Second\n s: function s(date, token, localize) {\n if (token === 'so') {\n return localize.ordinalNumber(date.getUTCSeconds(), {\n unit: 'second'\n });\n }\n return lightFormatters.s(date, token);\n },\n // Fraction of second\n S: function S(date, token) {\n return lightFormatters.S(date, token);\n },\n // Timezone (ISO-8601. If offset is 0, output is always `'Z'`)\n X: function X(date, token, _localize, options) {\n var originalDate = options._originalDate || date;\n var timezoneOffset = originalDate.getTimezoneOffset();\n if (timezoneOffset === 0) {\n return 'Z';\n }\n switch (token) {\n // Hours and optional minutes\n case 'X':\n return formatTimezoneWithOptionalMinutes(timezoneOffset);\n\n // Hours, minutes and optional seconds without `:` delimiter\n // Note: neither ISO-8601 nor JavaScript supports seconds in timezone offsets\n // so this token always has the same output as `XX`\n case 'XXXX':\n case 'XX':\n // Hours and minutes without `:` delimiter\n return formatTimezone(timezoneOffset);\n\n // Hours, minutes and optional seconds with `:` delimiter\n // Note: neither ISO-8601 nor JavaScript supports seconds in timezone offsets\n // so this token always has the same output as `XXX`\n case 'XXXXX':\n case 'XXX': // Hours and minutes with `:` delimiter\n default:\n return formatTimezone(timezoneOffset, ':');\n }\n },\n // Timezone (ISO-8601. If offset is 0, output is `'+00:00'` or equivalent)\n x: function x(date, token, _localize, options) {\n var originalDate = options._originalDate || date;\n var timezoneOffset = originalDate.getTimezoneOffset();\n switch (token) {\n // Hours and optional minutes\n case 'x':\n return formatTimezoneWithOptionalMinutes(timezoneOffset);\n\n // Hours, minutes and optional seconds without `:` delimiter\n // Note: neither ISO-8601 nor JavaScript supports seconds in timezone offsets\n // so this token always has the same output as `xx`\n case 'xxxx':\n case 'xx':\n // Hours and minutes without `:` delimiter\n return formatTimezone(timezoneOffset);\n\n // Hours, minutes and optional seconds with `:` delimiter\n // Note: neither ISO-8601 nor JavaScript supports seconds in timezone offsets\n // so this token always has the same output as `xxx`\n case 'xxxxx':\n case 'xxx': // Hours and minutes with `:` delimiter\n default:\n return formatTimezone(timezoneOffset, ':');\n }\n },\n // Timezone (GMT)\n O: function O(date, token, _localize, options) {\n var originalDate = options._originalDate || date;\n var timezoneOffset = originalDate.getTimezoneOffset();\n switch (token) {\n // Short\n case 'O':\n case 'OO':\n case 'OOO':\n return 'GMT' + formatTimezoneShort(timezoneOffset, ':');\n // Long\n case 'OOOO':\n default:\n return 'GMT' + formatTimezone(timezoneOffset, ':');\n }\n },\n // Timezone (specific non-location)\n z: function z(date, token, _localize, options) {\n var originalDate = options._originalDate || date;\n var timezoneOffset = originalDate.getTimezoneOffset();\n switch (token) {\n // Short\n case 'z':\n case 'zz':\n case 'zzz':\n return 'GMT' + formatTimezoneShort(timezoneOffset, ':');\n // Long\n case 'zzzz':\n default:\n return 'GMT' + formatTimezone(timezoneOffset, ':');\n }\n },\n // Seconds timestamp\n t: function t(date, token, _localize, options) {\n var originalDate = options._originalDate || date;\n var timestamp = Math.floor(originalDate.getTime() / 1000);\n return addLeadingZeros(timestamp, token.length);\n },\n // Milliseconds timestamp\n T: function T(date, token, _localize, options) {\n var originalDate = options._originalDate || date;\n var timestamp = originalDate.getTime();\n return addLeadingZeros(timestamp, token.length);\n }\n};\nfunction formatTimezoneShort(offset, dirtyDelimiter) {\n var sign = offset > 0 ? '-' : '+';\n var absOffset = Math.abs(offset);\n var hours = Math.floor(absOffset / 60);\n var minutes = absOffset % 60;\n if (minutes === 0) {\n return sign + String(hours);\n }\n var delimiter = dirtyDelimiter || '';\n return sign + String(hours) + delimiter + addLeadingZeros(minutes, 2);\n}\nfunction formatTimezoneWithOptionalMinutes(offset, dirtyDelimiter) {\n if (offset % 60 === 0) {\n var sign = offset > 0 ? '-' : '+';\n return sign + addLeadingZeros(Math.abs(offset) / 60, 2);\n }\n return formatTimezone(offset, dirtyDelimiter);\n}\nfunction formatTimezone(offset, dirtyDelimiter) {\n var delimiter = dirtyDelimiter || '';\n var sign = offset > 0 ? '-' : '+';\n var absOffset = Math.abs(offset);\n var hours = addLeadingZeros(Math.floor(absOffset / 60), 2);\n var minutes = addLeadingZeros(absOffset % 60, 2);\n return sign + hours + delimiter + minutes;\n}\nexport default formatters;","var dateLongFormatter = function dateLongFormatter(pattern, formatLong) {\n switch (pattern) {\n case 'P':\n return formatLong.date({\n width: 'short'\n });\n case 'PP':\n return formatLong.date({\n width: 'medium'\n });\n case 'PPP':\n return formatLong.date({\n width: 'long'\n });\n case 'PPPP':\n default:\n return formatLong.date({\n width: 'full'\n });\n }\n};\nvar timeLongFormatter = function timeLongFormatter(pattern, formatLong) {\n switch (pattern) {\n case 'p':\n return formatLong.time({\n width: 'short'\n });\n case 'pp':\n return formatLong.time({\n width: 'medium'\n });\n case 'ppp':\n return formatLong.time({\n width: 'long'\n });\n case 'pppp':\n default:\n return formatLong.time({\n width: 'full'\n });\n }\n};\nvar dateTimeLongFormatter = function dateTimeLongFormatter(pattern, formatLong) {\n var matchResult = pattern.match(/(P+)(p+)?/) || [];\n var datePattern = matchResult[1];\n var timePattern = matchResult[2];\n if (!timePattern) {\n return dateLongFormatter(pattern, formatLong);\n }\n var dateTimeFormat;\n switch (datePattern) {\n case 'P':\n dateTimeFormat = formatLong.dateTime({\n width: 'short'\n });\n break;\n case 'PP':\n dateTimeFormat = formatLong.dateTime({\n width: 'medium'\n });\n break;\n case 'PPP':\n dateTimeFormat = formatLong.dateTime({\n width: 'long'\n });\n break;\n case 'PPPP':\n default:\n dateTimeFormat = formatLong.dateTime({\n width: 'full'\n });\n break;\n }\n return dateTimeFormat.replace('{{date}}', dateLongFormatter(datePattern, formatLong)).replace('{{time}}', timeLongFormatter(timePattern, formatLong));\n};\nvar longFormatters = {\n p: timeLongFormatter,\n P: dateTimeLongFormatter\n};\nexport default longFormatters;","/**\n * Google Chrome as of 67.0.3396.87 introduced timezones with offset that includes seconds.\n * They usually appear for dates that denote time before the timezones were introduced\n * (e.g. for 'Europe/Prague' timezone the offset is GMT+00:57:44 before 1 October 1891\n * and GMT+01:00:00 after that date)\n *\n * Date#getTimezoneOffset returns the offset in minutes and would return 57 for the example above,\n * which would lead to incorrect calculations.\n *\n * This function returns the timezone offset in milliseconds that takes seconds in account.\n */\nexport default function getTimezoneOffsetInMilliseconds(date) {\n var utcDate = new Date(Date.UTC(date.getFullYear(), date.getMonth(), date.getDate(), date.getHours(), date.getMinutes(), date.getSeconds(), date.getMilliseconds()));\n utcDate.setUTCFullYear(date.getFullYear());\n return date.getTime() - utcDate.getTime();\n}","var protectedDayOfYearTokens = ['D', 'DD'];\nvar protectedWeekYearTokens = ['YY', 'YYYY'];\nexport function isProtectedDayOfYearToken(token) {\n return protectedDayOfYearTokens.indexOf(token) !== -1;\n}\nexport function isProtectedWeekYearToken(token) {\n return protectedWeekYearTokens.indexOf(token) !== -1;\n}\nexport function throwProtectedError(token, format, input) {\n if (token === 'YYYY') {\n throw new RangeError(\"Use `yyyy` instead of `YYYY` (in `\".concat(format, \"`) for formatting years to the input `\").concat(input, \"`; see: https://github.com/date-fns/date-fns/blob/master/docs/unicodeTokens.md\"));\n } else if (token === 'YY') {\n throw new RangeError(\"Use `yy` instead of `YY` (in `\".concat(format, \"`) for formatting years to the input `\").concat(input, \"`; see: https://github.com/date-fns/date-fns/blob/master/docs/unicodeTokens.md\"));\n } else if (token === 'D') {\n throw new RangeError(\"Use `d` instead of `D` (in `\".concat(format, \"`) for formatting days of the month to the input `\").concat(input, \"`; see: https://github.com/date-fns/date-fns/blob/master/docs/unicodeTokens.md\"));\n } else if (token === 'DD') {\n throw new RangeError(\"Use `dd` instead of `DD` (in `\".concat(format, \"`) for formatting days of the month to the input `\").concat(input, \"`; see: https://github.com/date-fns/date-fns/blob/master/docs/unicodeTokens.md\"));\n }\n}","var formatDistanceLocale = {\n lessThanXSeconds: {\n one: 'less than a second',\n other: 'less than {{count}} seconds'\n },\n xSeconds: {\n one: '1 second',\n other: '{{count}} seconds'\n },\n halfAMinute: 'half a minute',\n lessThanXMinutes: {\n one: 'less than a minute',\n other: 'less than {{count}} minutes'\n },\n xMinutes: {\n one: '1 minute',\n other: '{{count}} minutes'\n },\n aboutXHours: {\n one: 'about 1 hour',\n other: 'about {{count}} hours'\n },\n xHours: {\n one: '1 hour',\n other: '{{count}} hours'\n },\n xDays: {\n one: '1 day',\n other: '{{count}} days'\n },\n aboutXWeeks: {\n one: 'about 1 week',\n other: 'about {{count}} weeks'\n },\n xWeeks: {\n one: '1 week',\n other: '{{count}} weeks'\n },\n aboutXMonths: {\n one: 'about 1 month',\n other: 'about {{count}} months'\n },\n xMonths: {\n one: '1 month',\n other: '{{count}} months'\n },\n aboutXYears: {\n one: 'about 1 year',\n other: 'about {{count}} years'\n },\n xYears: {\n one: '1 year',\n other: '{{count}} years'\n },\n overXYears: {\n one: 'over 1 year',\n other: 'over {{count}} years'\n },\n almostXYears: {\n one: 'almost 1 year',\n other: 'almost {{count}} years'\n }\n};\nvar formatDistance = function formatDistance(token, count, options) {\n var result;\n var tokenValue = formatDistanceLocale[token];\n if (typeof tokenValue === 'string') {\n result = tokenValue;\n } else if (count === 1) {\n result = tokenValue.one;\n } else {\n result = tokenValue.other.replace('{{count}}', count.toString());\n }\n if (options !== null && options !== void 0 && options.addSuffix) {\n if (options.comparison && options.comparison > 0) {\n return 'in ' + result;\n } else {\n return result + ' ago';\n }\n }\n return result;\n};\nexport default formatDistance;","export default function buildFormatLongFn(args) {\n return function () {\n var options = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};\n // TODO: Remove String()\n var width = options.width ? String(options.width) : args.defaultWidth;\n var format = args.formats[width] || args.formats[args.defaultWidth];\n return format;\n };\n}","import buildFormatLongFn from \"../../../_lib/buildFormatLongFn/index.js\";\nvar dateFormats = {\n full: 'EEEE, MMMM do, y',\n long: 'MMMM do, y',\n medium: 'MMM d, y',\n short: 'MM/dd/yyyy'\n};\nvar timeFormats = {\n full: 'h:mm:ss a zzzz',\n long: 'h:mm:ss a z',\n medium: 'h:mm:ss a',\n short: 'h:mm a'\n};\nvar dateTimeFormats = {\n full: \"{{date}} 'at' {{time}}\",\n long: \"{{date}} 'at' {{time}}\",\n medium: '{{date}}, {{time}}',\n short: '{{date}}, {{time}}'\n};\nvar formatLong = {\n date: buildFormatLongFn({\n formats: dateFormats,\n defaultWidth: 'full'\n }),\n time: buildFormatLongFn({\n formats: timeFormats,\n defaultWidth: 'full'\n }),\n dateTime: buildFormatLongFn({\n formats: dateTimeFormats,\n defaultWidth: 'full'\n })\n};\nexport default formatLong;","var formatRelativeLocale = {\n lastWeek: \"'last' eeee 'at' p\",\n yesterday: \"'yesterday at' p\",\n today: \"'today at' p\",\n tomorrow: \"'tomorrow at' p\",\n nextWeek: \"eeee 'at' p\",\n other: 'P'\n};\nvar formatRelative = function formatRelative(token, _date, _baseDate, _options) {\n return formatRelativeLocale[token];\n};\nexport default formatRelative;","export default function buildLocalizeFn(args) {\n return function (dirtyIndex, options) {\n var context = options !== null && options !== void 0 && options.context ? String(options.context) : 'standalone';\n var valuesArray;\n if (context === 'formatting' && args.formattingValues) {\n var defaultWidth = args.defaultFormattingWidth || args.defaultWidth;\n var width = options !== null && options !== void 0 && options.width ? String(options.width) : defaultWidth;\n valuesArray = args.formattingValues[width] || args.formattingValues[defaultWidth];\n } else {\n var _defaultWidth = args.defaultWidth;\n var _width = options !== null && options !== void 0 && options.width ? String(options.width) : args.defaultWidth;\n valuesArray = args.values[_width] || args.values[_defaultWidth];\n }\n var index = args.argumentCallback ? args.argumentCallback(dirtyIndex) : dirtyIndex;\n // @ts-ignore: For some reason TypeScript just don't want to match it, no matter how hard we try. I challenge you to try to remove it!\n return valuesArray[index];\n };\n}","import buildLocalizeFn from \"../../../_lib/buildLocalizeFn/index.js\";\nvar eraValues = {\n narrow: ['B', 'A'],\n abbreviated: ['BC', 'AD'],\n wide: ['Before Christ', 'Anno Domini']\n};\nvar quarterValues = {\n narrow: ['1', '2', '3', '4'],\n abbreviated: ['Q1', 'Q2', 'Q3', 'Q4'],\n wide: ['1st quarter', '2nd quarter', '3rd quarter', '4th quarter']\n};\n\n// Note: in English, the names of days of the week and months are capitalized.\n// If you are making a new locale based on this one, check if the same is true for the language you're working on.\n// Generally, formatted dates should look like they are in the middle of a sentence,\n// e.g. in Spanish language the weekdays and months should be in the lowercase.\nvar monthValues = {\n narrow: ['J', 'F', 'M', 'A', 'M', 'J', 'J', 'A', 'S', 'O', 'N', 'D'],\n abbreviated: ['Jan', 'Feb', 'Mar', 'Apr', 'May', 'Jun', 'Jul', 'Aug', 'Sep', 'Oct', 'Nov', 'Dec'],\n wide: ['January', 'February', 'March', 'April', 'May', 'June', 'July', 'August', 'September', 'October', 'November', 'December']\n};\nvar dayValues = {\n narrow: ['S', 'M', 'T', 'W', 'T', 'F', 'S'],\n short: ['Su', 'Mo', 'Tu', 'We', 'Th', 'Fr', 'Sa'],\n abbreviated: ['Sun', 'Mon', 'Tue', 'Wed', 'Thu', 'Fri', 'Sat'],\n wide: ['Sunday', 'Monday', 'Tuesday', 'Wednesday', 'Thursday', 'Friday', 'Saturday']\n};\nvar dayPeriodValues = {\n narrow: {\n am: 'a',\n pm: 'p',\n midnight: 'mi',\n noon: 'n',\n morning: 'morning',\n afternoon: 'afternoon',\n evening: 'evening',\n night: 'night'\n },\n abbreviated: {\n am: 'AM',\n pm: 'PM',\n midnight: 'midnight',\n noon: 'noon',\n morning: 'morning',\n afternoon: 'afternoon',\n evening: 'evening',\n night: 'night'\n },\n wide: {\n am: 'a.m.',\n pm: 'p.m.',\n midnight: 'midnight',\n noon: 'noon',\n morning: 'morning',\n afternoon: 'afternoon',\n evening: 'evening',\n night: 'night'\n }\n};\nvar formattingDayPeriodValues = {\n narrow: {\n am: 'a',\n pm: 'p',\n midnight: 'mi',\n noon: 'n',\n morning: 'in the morning',\n afternoon: 'in the afternoon',\n evening: 'in the evening',\n night: 'at night'\n },\n abbreviated: {\n am: 'AM',\n pm: 'PM',\n midnight: 'midnight',\n noon: 'noon',\n morning: 'in the morning',\n afternoon: 'in the afternoon',\n evening: 'in the evening',\n night: 'at night'\n },\n wide: {\n am: 'a.m.',\n pm: 'p.m.',\n midnight: 'midnight',\n noon: 'noon',\n morning: 'in the morning',\n afternoon: 'in the afternoon',\n evening: 'in the evening',\n night: 'at night'\n }\n};\nvar ordinalNumber = function ordinalNumber(dirtyNumber, _options) {\n var number = Number(dirtyNumber);\n\n // If ordinal numbers depend on context, for example,\n // if they are different for different grammatical genders,\n // use `options.unit`.\n //\n // `unit` can be 'year', 'quarter', 'month', 'week', 'date', 'dayOfYear',\n // 'day', 'hour', 'minute', 'second'.\n\n var rem100 = number % 100;\n if (rem100 > 20 || rem100 < 10) {\n switch (rem100 % 10) {\n case 1:\n return number + 'st';\n case 2:\n return number + 'nd';\n case 3:\n return number + 'rd';\n }\n }\n return number + 'th';\n};\nvar localize = {\n ordinalNumber: ordinalNumber,\n era: buildLocalizeFn({\n values: eraValues,\n defaultWidth: 'wide'\n }),\n quarter: buildLocalizeFn({\n values: quarterValues,\n defaultWidth: 'wide',\n argumentCallback: function argumentCallback(quarter) {\n return quarter - 1;\n }\n }),\n month: buildLocalizeFn({\n values: monthValues,\n defaultWidth: 'wide'\n }),\n day: buildLocalizeFn({\n values: dayValues,\n defaultWidth: 'wide'\n }),\n dayPeriod: buildLocalizeFn({\n values: dayPeriodValues,\n defaultWidth: 'wide',\n formattingValues: formattingDayPeriodValues,\n defaultFormattingWidth: 'wide'\n })\n};\nexport default localize;","export default function buildMatchFn(args) {\n return function (string) {\n var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n var width = options.width;\n var matchPattern = width && args.matchPatterns[width] || args.matchPatterns[args.defaultMatchWidth];\n var matchResult = string.match(matchPattern);\n if (!matchResult) {\n return null;\n }\n var matchedString = matchResult[0];\n var parsePatterns = width && args.parsePatterns[width] || args.parsePatterns[args.defaultParseWidth];\n var key = Array.isArray(parsePatterns) ? findIndex(parsePatterns, function (pattern) {\n return pattern.test(matchedString);\n }) : findKey(parsePatterns, function (pattern) {\n return pattern.test(matchedString);\n });\n var value;\n value = args.valueCallback ? args.valueCallback(key) : key;\n value = options.valueCallback ? options.valueCallback(value) : value;\n var rest = string.slice(matchedString.length);\n return {\n value: value,\n rest: rest\n };\n };\n}\nfunction findKey(object, predicate) {\n for (var key in object) {\n if (object.hasOwnProperty(key) && predicate(object[key])) {\n return key;\n }\n }\n return undefined;\n}\nfunction findIndex(array, predicate) {\n for (var key = 0; key < array.length; key++) {\n if (predicate(array[key])) {\n return key;\n }\n }\n return undefined;\n}","import buildMatchFn from \"../../../_lib/buildMatchFn/index.js\";\nimport buildMatchPatternFn from \"../../../_lib/buildMatchPatternFn/index.js\";\nvar matchOrdinalNumberPattern = /^(\\d+)(th|st|nd|rd)?/i;\nvar parseOrdinalNumberPattern = /\\d+/i;\nvar matchEraPatterns = {\n narrow: /^(b|a)/i,\n abbreviated: /^(b\\.?\\s?c\\.?|b\\.?\\s?c\\.?\\s?e\\.?|a\\.?\\s?d\\.?|c\\.?\\s?e\\.?)/i,\n wide: /^(before christ|before common era|anno domini|common era)/i\n};\nvar parseEraPatterns = {\n any: [/^b/i, /^(a|c)/i]\n};\nvar matchQuarterPatterns = {\n narrow: /^[1234]/i,\n abbreviated: /^q[1234]/i,\n wide: /^[1234](th|st|nd|rd)? quarter/i\n};\nvar parseQuarterPatterns = {\n any: [/1/i, /2/i, /3/i, /4/i]\n};\nvar matchMonthPatterns = {\n narrow: /^[jfmasond]/i,\n abbreviated: /^(jan|feb|mar|apr|may|jun|jul|aug|sep|oct|nov|dec)/i,\n wide: /^(january|february|march|april|may|june|july|august|september|october|november|december)/i\n};\nvar parseMonthPatterns = {\n narrow: [/^j/i, /^f/i, /^m/i, /^a/i, /^m/i, /^j/i, /^j/i, /^a/i, /^s/i, /^o/i, /^n/i, /^d/i],\n any: [/^ja/i, /^f/i, /^mar/i, /^ap/i, /^may/i, /^jun/i, /^jul/i, /^au/i, /^s/i, /^o/i, /^n/i, /^d/i]\n};\nvar matchDayPatterns = {\n narrow: /^[smtwf]/i,\n short: /^(su|mo|tu|we|th|fr|sa)/i,\n abbreviated: /^(sun|mon|tue|wed|thu|fri|sat)/i,\n wide: /^(sunday|monday|tuesday|wednesday|thursday|friday|saturday)/i\n};\nvar parseDayPatterns = {\n narrow: [/^s/i, /^m/i, /^t/i, /^w/i, /^t/i, /^f/i, /^s/i],\n any: [/^su/i, /^m/i, /^tu/i, /^w/i, /^th/i, /^f/i, /^sa/i]\n};\nvar matchDayPeriodPatterns = {\n narrow: /^(a|p|mi|n|(in the|at) (morning|afternoon|evening|night))/i,\n any: /^([ap]\\.?\\s?m\\.?|midnight|noon|(in the|at) (morning|afternoon|evening|night))/i\n};\nvar parseDayPeriodPatterns = {\n any: {\n am: /^a/i,\n pm: /^p/i,\n midnight: /^mi/i,\n noon: /^no/i,\n morning: /morning/i,\n afternoon: /afternoon/i,\n evening: /evening/i,\n night: /night/i\n }\n};\nvar match = {\n ordinalNumber: buildMatchPatternFn({\n matchPattern: matchOrdinalNumberPattern,\n parsePattern: parseOrdinalNumberPattern,\n valueCallback: function valueCallback(value) {\n return parseInt(value, 10);\n }\n }),\n era: buildMatchFn({\n matchPatterns: matchEraPatterns,\n defaultMatchWidth: 'wide',\n parsePatterns: parseEraPatterns,\n defaultParseWidth: 'any'\n }),\n quarter: buildMatchFn({\n matchPatterns: matchQuarterPatterns,\n defaultMatchWidth: 'wide',\n parsePatterns: parseQuarterPatterns,\n defaultParseWidth: 'any',\n valueCallback: function valueCallback(index) {\n return index + 1;\n }\n }),\n month: buildMatchFn({\n matchPatterns: matchMonthPatterns,\n defaultMatchWidth: 'wide',\n parsePatterns: parseMonthPatterns,\n defaultParseWidth: 'any'\n }),\n day: buildMatchFn({\n matchPatterns: matchDayPatterns,\n defaultMatchWidth: 'wide',\n parsePatterns: parseDayPatterns,\n defaultParseWidth: 'any'\n }),\n dayPeriod: buildMatchFn({\n matchPatterns: matchDayPeriodPatterns,\n defaultMatchWidth: 'any',\n parsePatterns: parseDayPeriodPatterns,\n defaultParseWidth: 'any'\n })\n};\nexport default match;","export default function buildMatchPatternFn(args) {\n return function (string) {\n var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n var matchResult = string.match(args.matchPattern);\n if (!matchResult) return null;\n var matchedString = matchResult[0];\n var parseResult = string.match(args.parsePattern);\n if (!parseResult) return null;\n var value = args.valueCallback ? args.valueCallback(parseResult[0]) : parseResult[0];\n value = options.valueCallback ? options.valueCallback(value) : value;\n var rest = string.slice(matchedString.length);\n return {\n value: value,\n rest: rest\n };\n };\n}","import defaultLocale from \"../../locale/en-US/index.js\";\nexport default defaultLocale;","import formatDistance from \"./_lib/formatDistance/index.js\";\nimport formatLong from \"./_lib/formatLong/index.js\";\nimport formatRelative from \"./_lib/formatRelative/index.js\";\nimport localize from \"./_lib/localize/index.js\";\nimport match from \"./_lib/match/index.js\";\n/**\n * @type {Locale}\n * @category Locales\n * @summary English locale (United States).\n * @language English\n * @iso-639-2 eng\n * @author Sasha Koss [@kossnocorp]{@link https://github.com/kossnocorp}\n * @author Lesha Koss [@leshakoss]{@link https://github.com/leshakoss}\n */\nvar locale = {\n code: 'en-US',\n formatDistance: formatDistance,\n formatLong: formatLong,\n formatRelative: formatRelative,\n localize: localize,\n match: match,\n options: {\n weekStartsOn: 0 /* Sunday */,\n firstWeekContainsDate: 1\n }\n};\nexport default locale;","import isValid from \"../isValid/index.js\";\nimport subMilliseconds from \"../subMilliseconds/index.js\";\nimport toDate from \"../toDate/index.js\";\nimport formatters from \"../_lib/format/formatters/index.js\";\nimport longFormatters from \"../_lib/format/longFormatters/index.js\";\nimport getTimezoneOffsetInMilliseconds from \"../_lib/getTimezoneOffsetInMilliseconds/index.js\";\nimport { isProtectedDayOfYearToken, isProtectedWeekYearToken, throwProtectedError } from \"../_lib/protectedTokens/index.js\";\nimport toInteger from \"../_lib/toInteger/index.js\";\nimport requiredArgs from \"../_lib/requiredArgs/index.js\";\nimport { getDefaultOptions } from \"../_lib/defaultOptions/index.js\";\nimport defaultLocale from \"../_lib/defaultLocale/index.js\"; // This RegExp consists of three parts separated by `|`:\n// - [yYQqMLwIdDecihHKkms]o matches any available ordinal number token\n// (one of the certain letters followed by `o`)\n// - (\\w)\\1* matches any sequences of the same letter\n// - '' matches two quote characters in a row\n// - '(''|[^'])+('|$) matches anything surrounded by two quote characters ('),\n// except a single quote symbol, which ends the sequence.\n// Two quote characters do not end the sequence.\n// If there is no matching single quote\n// then the sequence will continue until the end of the string.\n// - . matches any single character unmatched by previous parts of the RegExps\nvar formattingTokensRegExp = /[yYQqMLwIdDecihHKkms]o|(\\w)\\1*|''|'(''|[^'])+('|$)|./g;\n\n// This RegExp catches symbols escaped by quotes, and also\n// sequences of symbols P, p, and the combinations like `PPPPPPPppppp`\nvar longFormattingTokensRegExp = /P+p+|P+|p+|''|'(''|[^'])+('|$)|./g;\nvar escapedStringRegExp = /^'([^]*?)'?$/;\nvar doubleQuoteRegExp = /''/g;\nvar unescapedLatinCharacterRegExp = /[a-zA-Z]/;\n\n/**\n * @name format\n * @category Common Helpers\n * @summary Format the date.\n *\n * @description\n * Return the formatted date string in the given format. The result may vary by locale.\n *\n * > ⚠️ Please note that the `format` tokens differ from Moment.js and other libraries.\n * > See: https://github.com/date-fns/date-fns/blob/master/docs/unicodeTokens.md\n *\n * The characters wrapped between two single quotes characters (') are escaped.\n * Two single quotes in a row, whether inside or outside a quoted sequence, represent a 'real' single quote.\n * (see the last example)\n *\n * Format of the string is based on Unicode Technical Standard #35:\n * https://www.unicode.org/reports/tr35/tr35-dates.html#Date_Field_Symbol_Table\n * with a few additions (see note 7 below the table).\n *\n * Accepted patterns:\n * | Unit | Pattern | Result examples | Notes |\n * |---------------------------------|---------|-----------------------------------|-------|\n * | Era | G..GGG | AD, BC | |\n * | | GGGG | Anno Domini, Before Christ | 2 |\n * | | GGGGG | A, B | |\n * | Calendar year | y | 44, 1, 1900, 2017 | 5 |\n * | | yo | 44th, 1st, 0th, 17th | 5,7 |\n * | | yy | 44, 01, 00, 17 | 5 |\n * | | yyy | 044, 001, 1900, 2017 | 5 |\n * | | yyyy | 0044, 0001, 1900, 2017 | 5 |\n * | | yyyyy | ... | 3,5 |\n * | Local week-numbering year | Y | 44, 1, 1900, 2017 | 5 |\n * | | Yo | 44th, 1st, 1900th, 2017th | 5,7 |\n * | | YY | 44, 01, 00, 17 | 5,8 |\n * | | YYY | 044, 001, 1900, 2017 | 5 |\n * | | YYYY | 0044, 0001, 1900, 2017 | 5,8 |\n * | | YYYYY | ... | 3,5 |\n * | ISO week-numbering year | R | -43, 0, 1, 1900, 2017 | 5,7 |\n * | | RR | -43, 00, 01, 1900, 2017 | 5,7 |\n * | | RRR | -043, 000, 001, 1900, 2017 | 5,7 |\n * | | RRRR | -0043, 0000, 0001, 1900, 2017 | 5,7 |\n * | | RRRRR | ... | 3,5,7 |\n * | Extended year | u | -43, 0, 1, 1900, 2017 | 5 |\n * | | uu | -43, 01, 1900, 2017 | 5 |\n * | | uuu | -043, 001, 1900, 2017 | 5 |\n * | | uuuu | -0043, 0001, 1900, 2017 | 5 |\n * | | uuuuu | ... | 3,5 |\n * | Quarter (formatting) | Q | 1, 2, 3, 4 | |\n * | | Qo | 1st, 2nd, 3rd, 4th | 7 |\n * | | QQ | 01, 02, 03, 04 | |\n * | | QQQ | Q1, Q2, Q3, Q4 | |\n * | | QQQQ | 1st quarter, 2nd quarter, ... | 2 |\n * | | QQQQQ | 1, 2, 3, 4 | 4 |\n * | Quarter (stand-alone) | q | 1, 2, 3, 4 | |\n * | | qo | 1st, 2nd, 3rd, 4th | 7 |\n * | | qq | 01, 02, 03, 04 | |\n * | | qqq | Q1, Q2, Q3, Q4 | |\n * | | qqqq | 1st quarter, 2nd quarter, ... | 2 |\n * | | qqqqq | 1, 2, 3, 4 | 4 |\n * | Month (formatting) | M | 1, 2, ..., 12 | |\n * | | Mo | 1st, 2nd, ..., 12th | 7 |\n * | | MM | 01, 02, ..., 12 | |\n * | | MMM | Jan, Feb, ..., Dec | |\n * | | MMMM | January, February, ..., December | 2 |\n * | | MMMMM | J, F, ..., D | |\n * | Month (stand-alone) | L | 1, 2, ..., 12 | |\n * | | Lo | 1st, 2nd, ..., 12th | 7 |\n * | | LL | 01, 02, ..., 12 | |\n * | | LLL | Jan, Feb, ..., Dec | |\n * | | LLLL | January, February, ..., December | 2 |\n * | | LLLLL | J, F, ..., D | |\n * | Local week of year | w | 1, 2, ..., 53 | |\n * | | wo | 1st, 2nd, ..., 53th | 7 |\n * | | ww | 01, 02, ..., 53 | |\n * | ISO week of year | I | 1, 2, ..., 53 | 7 |\n * | | Io | 1st, 2nd, ..., 53th | 7 |\n * | | II | 01, 02, ..., 53 | 7 |\n * | Day of month | d | 1, 2, ..., 31 | |\n * | | do | 1st, 2nd, ..., 31st | 7 |\n * | | dd | 01, 02, ..., 31 | |\n * | Day of year | D | 1, 2, ..., 365, 366 | 9 |\n * | | Do | 1st, 2nd, ..., 365th, 366th | 7 |\n * | | DD | 01, 02, ..., 365, 366 | 9 |\n * | | DDD | 001, 002, ..., 365, 366 | |\n * | | DDDD | ... | 3 |\n * | Day of week (formatting) | E..EEE | Mon, Tue, Wed, ..., Sun | |\n * | | EEEE | Monday, Tuesday, ..., Sunday | 2 |\n * | | EEEEE | M, T, W, T, F, S, S | |\n * | | EEEEEE | Mo, Tu, We, Th, Fr, Sa, Su | |\n * | ISO day of week (formatting) | i | 1, 2, 3, ..., 7 | 7 |\n * | | io | 1st, 2nd, ..., 7th | 7 |\n * | | ii | 01, 02, ..., 07 | 7 |\n * | | iii | Mon, Tue, Wed, ..., Sun | 7 |\n * | | iiii | Monday, Tuesday, ..., Sunday | 2,7 |\n * | | iiiii | M, T, W, T, F, S, S | 7 |\n * | | iiiiii | Mo, Tu, We, Th, Fr, Sa, Su | 7 |\n * | Local day of week (formatting) | e | 2, 3, 4, ..., 1 | |\n * | | eo | 2nd, 3rd, ..., 1st | 7 |\n * | | ee | 02, 03, ..., 01 | |\n * | | eee | Mon, Tue, Wed, ..., Sun | |\n * | | eeee | Monday, Tuesday, ..., Sunday | 2 |\n * | | eeeee | M, T, W, T, F, S, S | |\n * | | eeeeee | Mo, Tu, We, Th, Fr, Sa, Su | |\n * | Local day of week (stand-alone) | c | 2, 3, 4, ..., 1 | |\n * | | co | 2nd, 3rd, ..., 1st | 7 |\n * | | cc | 02, 03, ..., 01 | |\n * | | ccc | Mon, Tue, Wed, ..., Sun | |\n * | | cccc | Monday, Tuesday, ..., Sunday | 2 |\n * | | ccccc | M, T, W, T, F, S, S | |\n * | | cccccc | Mo, Tu, We, Th, Fr, Sa, Su | |\n * | AM, PM | a..aa | AM, PM | |\n * | | aaa | am, pm | |\n * | | aaaa | a.m., p.m. | 2 |\n * | | aaaaa | a, p | |\n * | AM, PM, noon, midnight | b..bb | AM, PM, noon, midnight | |\n * | | bbb | am, pm, noon, midnight | |\n * | | bbbb | a.m., p.m., noon, midnight | 2 |\n * | | bbbbb | a, p, n, mi | |\n * | Flexible day period | B..BBB | at night, in the morning, ... | |\n * | | BBBB | at night, in the morning, ... | 2 |\n * | | BBBBB | at night, in the morning, ... | |\n * | Hour [1-12] | h | 1, 2, ..., 11, 12 | |\n * | | ho | 1st, 2nd, ..., 11th, 12th | 7 |\n * | | hh | 01, 02, ..., 11, 12 | |\n * | Hour [0-23] | H | 0, 1, 2, ..., 23 | |\n * | | Ho | 0th, 1st, 2nd, ..., 23rd | 7 |\n * | | HH | 00, 01, 02, ..., 23 | |\n * | Hour [0-11] | K | 1, 2, ..., 11, 0 | |\n * | | Ko | 1st, 2nd, ..., 11th, 0th | 7 |\n * | | KK | 01, 02, ..., 11, 00 | |\n * | Hour [1-24] | k | 24, 1, 2, ..., 23 | |\n * | | ko | 24th, 1st, 2nd, ..., 23rd | 7 |\n * | | kk | 24, 01, 02, ..., 23 | |\n * | Minute | m | 0, 1, ..., 59 | |\n * | | mo | 0th, 1st, ..., 59th | 7 |\n * | | mm | 00, 01, ..., 59 | |\n * | Second | s | 0, 1, ..., 59 | |\n * | | so | 0th, 1st, ..., 59th | 7 |\n * | | ss | 00, 01, ..., 59 | |\n * | Fraction of second | S | 0, 1, ..., 9 | |\n * | | SS | 00, 01, ..., 99 | |\n * | | SSS | 000, 001, ..., 999 | |\n * | | SSSS | ... | 3 |\n * | Timezone (ISO-8601 w/ Z) | X | -08, +0530, Z | |\n * | | XX | -0800, +0530, Z | |\n * | | XXX | -08:00, +05:30, Z | |\n * | | XXXX | -0800, +0530, Z, +123456 | 2 |\n * | | XXXXX | -08:00, +05:30, Z, +12:34:56 | |\n * | Timezone (ISO-8601 w/o Z) | x | -08, +0530, +00 | |\n * | | xx | -0800, +0530, +0000 | |\n * | | xxx | -08:00, +05:30, +00:00 | 2 |\n * | | xxxx | -0800, +0530, +0000, +123456 | |\n * | | xxxxx | -08:00, +05:30, +00:00, +12:34:56 | |\n * | Timezone (GMT) | O...OOO | GMT-8, GMT+5:30, GMT+0 | |\n * | | OOOO | GMT-08:00, GMT+05:30, GMT+00:00 | 2 |\n * | Timezone (specific non-locat.) | z...zzz | GMT-8, GMT+5:30, GMT+0 | 6 |\n * | | zzzz | GMT-08:00, GMT+05:30, GMT+00:00 | 2,6 |\n * | Seconds timestamp | t | 512969520 | 7 |\n * | | tt | ... | 3,7 |\n * | Milliseconds timestamp | T | 512969520900 | 7 |\n * | | TT | ... | 3,7 |\n * | Long localized date | P | 04/29/1453 | 7 |\n * | | PP | Apr 29, 1453 | 7 |\n * | | PPP | April 29th, 1453 | 7 |\n * | | PPPP | Friday, April 29th, 1453 | 2,7 |\n * | Long localized time | p | 12:00 AM | 7 |\n * | | pp | 12:00:00 AM | 7 |\n * | | ppp | 12:00:00 AM GMT+2 | 7 |\n * | | pppp | 12:00:00 AM GMT+02:00 | 2,7 |\n * | Combination of date and time | Pp | 04/29/1453, 12:00 AM | 7 |\n * | | PPpp | Apr 29, 1453, 12:00:00 AM | 7 |\n * | | PPPppp | April 29th, 1453 at ... | 7 |\n * | | PPPPpppp| Friday, April 29th, 1453 at ... | 2,7 |\n * Notes:\n * 1. \"Formatting\" units (e.g. formatting quarter) in the default en-US locale\n * are the same as \"stand-alone\" units, but are different in some languages.\n * \"Formatting\" units are declined according to the rules of the language\n * in the context of a date. \"Stand-alone\" units are always nominative singular:\n *\n * `format(new Date(2017, 10, 6), 'do LLLL', {locale: cs}) //=> '6. listopad'`\n *\n * `format(new Date(2017, 10, 6), 'do MMMM', {locale: cs}) //=> '6. listopadu'`\n *\n * 2. Any sequence of the identical letters is a pattern, unless it is escaped by\n * the single quote characters (see below).\n * If the sequence is longer than listed in table (e.g. `EEEEEEEEEEE`)\n * the output will be the same as default pattern for this unit, usually\n * the longest one (in case of ISO weekdays, `EEEE`). Default patterns for units\n * are marked with \"2\" in the last column of the table.\n *\n * `format(new Date(2017, 10, 6), 'MMM') //=> 'Nov'`\n *\n * `format(new Date(2017, 10, 6), 'MMMM') //=> 'November'`\n *\n * `format(new Date(2017, 10, 6), 'MMMMM') //=> 'N'`\n *\n * `format(new Date(2017, 10, 6), 'MMMMMM') //=> 'November'`\n *\n * `format(new Date(2017, 10, 6), 'MMMMMMM') //=> 'November'`\n *\n * 3. Some patterns could be unlimited length (such as `yyyyyyyy`).\n * The output will be padded with zeros to match the length of the pattern.\n *\n * `format(new Date(2017, 10, 6), 'yyyyyyyy') //=> '00002017'`\n *\n * 4. `QQQQQ` and `qqqqq` could be not strictly numerical in some locales.\n * These tokens represent the shortest form of the quarter.\n *\n * 5. The main difference between `y` and `u` patterns are B.C. years:\n *\n * | Year | `y` | `u` |\n * |------|-----|-----|\n * | AC 1 | 1 | 1 |\n * | BC 1 | 1 | 0 |\n * | BC 2 | 2 | -1 |\n *\n * Also `yy` always returns the last two digits of a year,\n * while `uu` pads single digit years to 2 characters and returns other years unchanged:\n *\n * | Year | `yy` | `uu` |\n * |------|------|------|\n * | 1 | 01 | 01 |\n * | 14 | 14 | 14 |\n * | 376 | 76 | 376 |\n * | 1453 | 53 | 1453 |\n *\n * The same difference is true for local and ISO week-numbering years (`Y` and `R`),\n * except local week-numbering years are dependent on `options.weekStartsOn`\n * and `options.firstWeekContainsDate` (compare [getISOWeekYear]{@link https://date-fns.org/docs/getISOWeekYear}\n * and [getWeekYear]{@link https://date-fns.org/docs/getWeekYear}).\n *\n * 6. Specific non-location timezones are currently unavailable in `date-fns`,\n * so right now these tokens fall back to GMT timezones.\n *\n * 7. These patterns are not in the Unicode Technical Standard #35:\n * - `i`: ISO day of week\n * - `I`: ISO week of year\n * - `R`: ISO week-numbering year\n * - `t`: seconds timestamp\n * - `T`: milliseconds timestamp\n * - `o`: ordinal number modifier\n * - `P`: long localized date\n * - `p`: long localized time\n *\n * 8. `YY` and `YYYY` tokens represent week-numbering years but they are often confused with years.\n * You should enable `options.useAdditionalWeekYearTokens` to use them. See: https://github.com/date-fns/date-fns/blob/master/docs/unicodeTokens.md\n *\n * 9. `D` and `DD` tokens represent days of the year but they are often confused with days of the month.\n * You should enable `options.useAdditionalDayOfYearTokens` to use them. See: https://github.com/date-fns/date-fns/blob/master/docs/unicodeTokens.md\n *\n * @param {Date|Number} date - the original date\n * @param {String} format - the string of tokens\n * @param {Object} [options] - an object with options.\n * @param {Locale} [options.locale=defaultLocale] - the locale object. See [Locale]{@link https://date-fns.org/docs/Locale}\n * @param {0|1|2|3|4|5|6} [options.weekStartsOn=0] - the index of the first day of the week (0 - Sunday)\n * @param {Number} [options.firstWeekContainsDate=1] - the day of January, which is\n * @param {Boolean} [options.useAdditionalWeekYearTokens=false] - if true, allows usage of the week-numbering year tokens `YY` and `YYYY`;\n * see: https://github.com/date-fns/date-fns/blob/master/docs/unicodeTokens.md\n * @param {Boolean} [options.useAdditionalDayOfYearTokens=false] - if true, allows usage of the day of year tokens `D` and `DD`;\n * see: https://github.com/date-fns/date-fns/blob/master/docs/unicodeTokens.md\n * @returns {String} the formatted date string\n * @throws {TypeError} 2 arguments required\n * @throws {RangeError} `date` must not be Invalid Date\n * @throws {RangeError} `options.locale` must contain `localize` property\n * @throws {RangeError} `options.locale` must contain `formatLong` property\n * @throws {RangeError} `options.weekStartsOn` must be between 0 and 6\n * @throws {RangeError} `options.firstWeekContainsDate` must be between 1 and 7\n * @throws {RangeError} use `yyyy` instead of `YYYY` for formatting years using [format provided] to the input [input provided]; see: https://github.com/date-fns/date-fns/blob/master/docs/unicodeTokens.md\n * @throws {RangeError} use `yy` instead of `YY` for formatting years using [format provided] to the input [input provided]; see: https://github.com/date-fns/date-fns/blob/master/docs/unicodeTokens.md\n * @throws {RangeError} use `d` instead of `D` for formatting days of the month using [format provided] to the input [input provided]; see: https://github.com/date-fns/date-fns/blob/master/docs/unicodeTokens.md\n * @throws {RangeError} use `dd` instead of `DD` for formatting days of the month using [format provided] to the input [input provided]; see: https://github.com/date-fns/date-fns/blob/master/docs/unicodeTokens.md\n * @throws {RangeError} format string contains an unescaped latin alphabet character\n *\n * @example\n * // Represent 11 February 2014 in middle-endian format:\n * const result = format(new Date(2014, 1, 11), 'MM/dd/yyyy')\n * //=> '02/11/2014'\n *\n * @example\n * // Represent 2 July 2014 in Esperanto:\n * import { eoLocale } from 'date-fns/locale/eo'\n * const result = format(new Date(2014, 6, 2), \"do 'de' MMMM yyyy\", {\n * locale: eoLocale\n * })\n * //=> '2-a de julio 2014'\n *\n * @example\n * // Escape string by single quote characters:\n * const result = format(new Date(2014, 6, 2, 15), \"h 'o''clock'\")\n * //=> \"3 o'clock\"\n */\n\nexport default function format(dirtyDate, dirtyFormatStr, options) {\n var _ref, _options$locale, _ref2, _ref3, _ref4, _options$firstWeekCon, _options$locale2, _options$locale2$opti, _defaultOptions$local, _defaultOptions$local2, _ref5, _ref6, _ref7, _options$weekStartsOn, _options$locale3, _options$locale3$opti, _defaultOptions$local3, _defaultOptions$local4;\n requiredArgs(2, arguments);\n var formatStr = String(dirtyFormatStr);\n var defaultOptions = getDefaultOptions();\n var locale = (_ref = (_options$locale = options === null || options === void 0 ? void 0 : options.locale) !== null && _options$locale !== void 0 ? _options$locale : defaultOptions.locale) !== null && _ref !== void 0 ? _ref : defaultLocale;\n var firstWeekContainsDate = toInteger((_ref2 = (_ref3 = (_ref4 = (_options$firstWeekCon = options === null || options === void 0 ? void 0 : options.firstWeekContainsDate) !== null && _options$firstWeekCon !== void 0 ? _options$firstWeekCon : options === null || options === void 0 ? void 0 : (_options$locale2 = options.locale) === null || _options$locale2 === void 0 ? void 0 : (_options$locale2$opti = _options$locale2.options) === null || _options$locale2$opti === void 0 ? void 0 : _options$locale2$opti.firstWeekContainsDate) !== null && _ref4 !== void 0 ? _ref4 : defaultOptions.firstWeekContainsDate) !== null && _ref3 !== void 0 ? _ref3 : (_defaultOptions$local = defaultOptions.locale) === null || _defaultOptions$local === void 0 ? void 0 : (_defaultOptions$local2 = _defaultOptions$local.options) === null || _defaultOptions$local2 === void 0 ? void 0 : _defaultOptions$local2.firstWeekContainsDate) !== null && _ref2 !== void 0 ? _ref2 : 1);\n\n // Test if weekStartsOn is between 1 and 7 _and_ is not NaN\n if (!(firstWeekContainsDate >= 1 && firstWeekContainsDate <= 7)) {\n throw new RangeError('firstWeekContainsDate must be between 1 and 7 inclusively');\n }\n var weekStartsOn = toInteger((_ref5 = (_ref6 = (_ref7 = (_options$weekStartsOn = options === null || options === void 0 ? void 0 : options.weekStartsOn) !== null && _options$weekStartsOn !== void 0 ? _options$weekStartsOn : options === null || options === void 0 ? void 0 : (_options$locale3 = options.locale) === null || _options$locale3 === void 0 ? void 0 : (_options$locale3$opti = _options$locale3.options) === null || _options$locale3$opti === void 0 ? void 0 : _options$locale3$opti.weekStartsOn) !== null && _ref7 !== void 0 ? _ref7 : defaultOptions.weekStartsOn) !== null && _ref6 !== void 0 ? _ref6 : (_defaultOptions$local3 = defaultOptions.locale) === null || _defaultOptions$local3 === void 0 ? void 0 : (_defaultOptions$local4 = _defaultOptions$local3.options) === null || _defaultOptions$local4 === void 0 ? void 0 : _defaultOptions$local4.weekStartsOn) !== null && _ref5 !== void 0 ? _ref5 : 0);\n\n // Test if weekStartsOn is between 0 and 6 _and_ is not NaN\n if (!(weekStartsOn >= 0 && weekStartsOn <= 6)) {\n throw new RangeError('weekStartsOn must be between 0 and 6 inclusively');\n }\n if (!locale.localize) {\n throw new RangeError('locale must contain localize property');\n }\n if (!locale.formatLong) {\n throw new RangeError('locale must contain formatLong property');\n }\n var originalDate = toDate(dirtyDate);\n if (!isValid(originalDate)) {\n throw new RangeError('Invalid time value');\n }\n\n // Convert the date in system timezone to the same date in UTC+00:00 timezone.\n // This ensures that when UTC functions will be implemented, locales will be compatible with them.\n // See an issue about UTC functions: https://github.com/date-fns/date-fns/issues/376\n var timezoneOffset = getTimezoneOffsetInMilliseconds(originalDate);\n var utcDate = subMilliseconds(originalDate, timezoneOffset);\n var formatterOptions = {\n firstWeekContainsDate: firstWeekContainsDate,\n weekStartsOn: weekStartsOn,\n locale: locale,\n _originalDate: originalDate\n };\n var result = formatStr.match(longFormattingTokensRegExp).map(function (substring) {\n var firstCharacter = substring[0];\n if (firstCharacter === 'p' || firstCharacter === 'P') {\n var longFormatter = longFormatters[firstCharacter];\n return longFormatter(substring, locale.formatLong);\n }\n return substring;\n }).join('').match(formattingTokensRegExp).map(function (substring) {\n // Replace two single quote characters with one single quote character\n if (substring === \"''\") {\n return \"'\";\n }\n var firstCharacter = substring[0];\n if (firstCharacter === \"'\") {\n return cleanEscapedString(substring);\n }\n var formatter = formatters[firstCharacter];\n if (formatter) {\n if (!(options !== null && options !== void 0 && options.useAdditionalWeekYearTokens) && isProtectedWeekYearToken(substring)) {\n throwProtectedError(substring, dirtyFormatStr, String(dirtyDate));\n }\n if (!(options !== null && options !== void 0 && options.useAdditionalDayOfYearTokens) && isProtectedDayOfYearToken(substring)) {\n throwProtectedError(substring, dirtyFormatStr, String(dirtyDate));\n }\n return formatter(utcDate, substring, locale.localize, formatterOptions);\n }\n if (firstCharacter.match(unescapedLatinCharacterRegExp)) {\n throw new RangeError('Format string contains an unescaped latin alphabet character `' + firstCharacter + '`');\n }\n return substring;\n }).join('');\n return result;\n}\nfunction cleanEscapedString(input) {\n var matched = input.match(escapedStringRegExp);\n if (!matched) {\n return input;\n }\n return matched[1].replace(doubleQuoteRegExp, \"'\");\n}","import React, { forwardRef, useEffect, useState } from 'react'\nimport { format } from 'date-fns';\n\nfunction Details({formData3, setFormData3, isValid, fname, lname, clientId, marketingAudience,\n marketingChannel, shortcode, setShortcode,referenceBox, setReferenceBox, hideName, setHideName,\n currCustomer, setCurrCustomer, setCCounter, dob1Valid, setDob1Valid }, ref) {\n \n useEffect(() => {\n window.scrollTo(0,0); \n }, [])\n \n //url params\n useEffect( () => {\n if(clientId !== null){\n setCurrCustomer(true)\n setHideName(false) \n }\n if(marketingAudience === 'existing' && marketingChannel === \"Online Postal\" && clientId === null){\n setReferenceBox(true)\n setCurrCustomer(true)\n setHideName(false)\n }\n if(marketingChannel === 'Contact Centre' && clientId === null){\n setReferenceBox(true)\n }\n if(shortcode.length !== 0 && marketingChannel === 'Contact Centre'){\n setCurrCustomer(true)\n setHideName(true)\n }else if(shortcode.length === 0 && marketingChannel === 'Contact Centre'){\n setCurrCustomer(false)\n setHideName(false)\n }\n },[fname, lname, clientId, marketingAudience, marketingChannel, setReferenceBox, setCurrCustomer, setHideName, shortcode])\n\n //income counter\n useEffect(() => {\n if(formData3.clientdata.approximateAnnualIncome === \"£0 - £12,569\"){\n setCCounter(1)\n }\n if(formData3.clientdata.approximateAnnualIncome === \"£12,570 - £50,269\"){\n setCCounter(2)\n }\n if(formData3.clientdata.approximateAnnualIncome === \"£50,270 +\"){\n setCCounter(3)\n }\n },[formData3.clientdata.approximateAnnualIncome, setCCounter])\n\n const ValidateShortCode = () => {\n if(shortcode.length === 0 && currCustomer){\n return

please enter your shortcode

\n } else{\n return
\n }\n }\n\n const ValidateTitle = () =>{\n const title = formData3.title\n const isTitle = isValid[0];\n if ((title === '' || title === '-') && isTitle.valid === false){\n return

please enter your title

\n }\n }\n\n const ValidateFname = () =>{\n const firstName = formData3.firstname\n const isFname = isValid[1];\n if (firstName.length <= 1 && isFname.valid === false){\n return

please enter your first name

\n } else{\n return
\n }\n }\n\n const ValidateLname = () =>{\n const lastName = formData3.lastname\n const isLname = isValid[2];\n if (lastName.length <= 1 && isLname.valid === false){\n return

please enter your last name

\n } else{\n return
\n }\n }\n\n const ValidateDob = () =>{\n const isDob = isValid[3];\n if ((!dob1Valid || formData3.dob.length === 0) && isDob.valid === false){\n return

please enter a valid date of birth

\n } else{\n return
\n }\n }\n\n const ValidateNinumber = () =>{\n const niNumber = formData3.clientdata.nationalInsuranceNumber\n const isNino = isValid[4];\n const ValidNinumber = /^[A-CEGHJ-PR-TW-Za-ceghj-pr-tw-z]{1}[A-CEGHJ-NPR-TW-Za-ceghj-pr-tw-z]{1}[0-9]{6}[A-DFMa-dfm]{1}$/.test(niNumber.replace(/\\s/g, ''));\n if (!ValidNinumber && isNino.valid === false && niNumber.length >= 1 ){\n return

please enter a valid National Insurance Number

\n } else {\n
\n }\n }\n\n const ValidateIncome = () =>{\n const income = formData3.clientdata.approximateAnnualIncome\n const isIncome = isValid[5];\n if ((income === ''|| income === '-') && isIncome.valid === false){\n return

please enter your Approximate annual income

\n } else{\n return
\n }\n }\n\n // handling dob formatting\n const [dob,setDob] = useState('')\n const handleDob = (e) => {\n const selectedDate = e.target.value;\n const formattedDate = format(new Date(selectedDate), 'dd/MM/yyyy');\n setDob(e.target.value)\n setFormData3({...formData3, dob: formattedDate})\n const getAge = birthDate => Math.floor((new Date() - new Date(birthDate).getTime()) / 3.15576e+10)\n if(getAge(e.target.value) < 18){\n setDob1Valid(false)\n } else{\n setDob1Valid(true)\n }\n }\n return (\n <>\n
\n
\n {referenceBox &&
\n
\n
\n
Please enter your unique customer reference number
\n
\n
\n {setShortcode(e.target.value)} } \n value={shortcode}\n />\n \n
\n
\n
}\n {!currCustomer &&
\n
\n
\n
Title
\n
\n
\n \n \n
\n
\n
}\n { hideName === false && <>
\n
\n
\n
\n
\n
\n {setFormData3({...formData3, firstname: e.target.value}); }} \n value={formData3.firstname}\n />\n \n
\n
\n
\n
\n
\n
\n
\n
\n
\n {setFormData3({...formData3, lastname: e.target.value});}} \n value={formData3.lastname}\n />\n \n
\n
\n
}\n {!currCustomer &&
\n
\n
\n
\n
\n
\n \n \n
\n
\n
}\n
\n
\n
\n
\n
\n
\n {setFormData3({...formData3, clientdata:{...formData3.clientdata, nationalInsuranceNumber: e.target.value}}); }} \n value={formData3.clientdata.nationalInsuranceNumber}\n />\n \n
\n
\n
\n

Providing your national insurance number will help to speed up the process.

\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\nexport default forwardRef(Details);","import { useEffect, RefObject, useLayoutEffect } from 'react';\n\nexport const useOnEscape = (\n handler: (event: KeyboardEvent) => void,\n active = true\n) => {\n useEffect(() => {\n if (!active) return;\n const listener = (event: KeyboardEvent) => {\n // check if key is an Escape\n if (event.key === 'Escape') handler(event);\n };\n document.addEventListener('keyup', listener);\n\n return () => {\n if (!active) return;\n document.removeEventListener('keyup', listener);\n };\n }, [handler, active]);\n};\n\nexport const useRepositionOnResize = (handler: () => void, active = true) => {\n useEffect(() => {\n if (!active) return;\n const listener = () => {\n handler();\n };\n\n window.addEventListener('resize', listener);\n\n return () => {\n if (!active) return;\n window.removeEventListener('resize', listener);\n };\n }, [handler, active]);\n};\n\nexport const useOnClickOutside = (\n ref: RefObject | RefObject[],\n handler: (event: TouchEvent | MouseEvent) => void,\n active = true\n) => {\n useEffect(() => {\n if (!active) return;\n const listener = (event: TouchEvent | MouseEvent) => {\n // Do nothing if clicking ref's element or descendent elements\n const refs = Array.isArray(ref) ? ref : [ref];\n\n let contains = false;\n refs.forEach(r => {\n if (!r.current || r.current.contains(event.target as Node)) {\n contains = true;\n return;\n }\n });\n event.stopPropagation();\n if (!contains) handler(event);\n };\n\n document.addEventListener('mousedown', listener);\n document.addEventListener('touchstart', listener);\n\n return () => {\n if (!active) return;\n document.removeEventListener('mousedown', listener);\n document.removeEventListener('touchstart', listener);\n };\n }, [ref, handler, active]);\n};\n\n// Make sure that user is not able TAB out of the Modal content on Open\nexport const useTabbing = (\n contentRef: RefObject,\n active = true\n) => {\n useEffect(() => {\n if (!active) return;\n const listener = (event: KeyboardEvent) => {\n // check if key is an Tab\n if (event.keyCode === 9) {\n const els = contentRef?.current?.querySelectorAll(\n 'a[href], area[href], input:not([disabled]), select:not([disabled]), textarea:not([disabled]), button:not([disabled]), [tabindex=\"0\"]'\n );\n\n const focusableEls = Array.prototype.slice.call(els);\n if (focusableEls.length === 1) {\n event.preventDefault();\n return;\n }\n\n const firstFocusableEl = focusableEls[0];\n const lastFocusableEl = focusableEls[focusableEls.length - 1];\n if (event.shiftKey && document.activeElement === firstFocusableEl) {\n event.preventDefault();\n lastFocusableEl.focus();\n } else if (document.activeElement === lastFocusableEl) {\n event.preventDefault();\n firstFocusableEl.focus();\n }\n }\n };\n\n document.addEventListener('keydown', listener);\n\n return () => {\n if (!active) return;\n document.removeEventListener('keydown', listener);\n };\n }, [contentRef, active]);\n};\n\nexport const useIsomorphicLayoutEffect =\n typeof window !== 'undefined' ? useLayoutEffect : useEffect;\n","import React from 'react';\n\ntype PopupStyle = {\n popupContent: {\n tooltip: React.CSSProperties;\n modal: React.CSSProperties;\n };\n popupArrow: React.CSSProperties;\n overlay: {\n tooltip: React.CSSProperties;\n modal: React.CSSProperties;\n };\n};\n\nconst Style: PopupStyle = {\n popupContent: {\n tooltip: {\n position: 'absolute',\n zIndex: 999,\n },\n modal: {\n position: 'relative',\n margin: 'auto',\n },\n },\n popupArrow: {\n height: '8px',\n width: '16px',\n position: 'absolute',\n background: 'transparent',\n color: '#FFF',\n zIndex: -1,\n },\n overlay: {\n tooltip: {\n position: 'fixed',\n top: '0',\n bottom: '0',\n left: '0',\n right: '0',\n zIndex: 999,\n },\n modal: {\n position: 'fixed',\n top: '0',\n bottom: '0',\n left: '0',\n right: '0',\n display: 'flex',\n zIndex: 999,\n },\n },\n};\n\nexport default Style;\n","/* Algo to calculate position\n 1. center position for popup content : the center of the trigger will be the center of the content content\n so the popup content position will be like this :\n top => the y of the center for the trigger element : trigger.top + trigger.height/2\n left => the x of the center for the trigger element : trigger.left + trigger.width/2\n\n 2. translate position according to the first position attribute passed in the function argument\n for example :\n position = 'left top'\n we need to handle the first argument in the position: 'left' => that's mean we need to translate the popup content according to the X axis by - content.width/2\n\n 3.translate position according to the first position attribute passed in the function argument\n for example :\n position = 'left top'\n the second argument 'top' => translate popup content by + content.height*4/5\n\n 4. check if calculated position is going out of bounds of wrapper box or not. If yes repeat 1-3 for next position enum. By default wrapper box is window element\n*/\nimport { PopupPosition } from './types';\n\nexport const POSITION_TYPES: PopupPosition[] = [\n 'top left',\n 'top center',\n 'top right',\n 'right top',\n 'right center',\n 'right bottom',\n 'bottom left',\n 'bottom center',\n 'bottom right',\n 'left top',\n 'left center',\n 'left bottom',\n //'center center',\n];\n\ntype CordsType = {\n top: number;\n left: number;\n transform: string;\n arrowLeft: string;\n arrowTop: string;\n};\n\nconst getCoordinatesForPosition = (\n triggerBounding: DOMRect,\n ContentBounding: DOMRect,\n position: PopupPosition, //PopupPosition | PopupPosition[],\n arrow: boolean,\n { offsetX, offsetY }: { offsetX: number; offsetY: number }\n): CordsType => {\n const margin = arrow ? 8 : 0;\n const args = position.split(' ');\n // the step N 1 : center the popup content => ok\n const CenterTop = triggerBounding.top + triggerBounding.height / 2;\n const CenterLeft = triggerBounding.left + triggerBounding.width / 2;\n const { height, width } = ContentBounding;\n let top = CenterTop - height / 2;\n let left = CenterLeft - width / 2;\n let transform = '';\n let arrowTop = '0%';\n let arrowLeft = '0%';\n // the step N 2 : => ok\n switch (args[0]) {\n case 'top':\n top -= height / 2 + triggerBounding.height / 2 + margin;\n transform = `rotate(180deg) translateX(50%)`;\n arrowTop = '100%';\n arrowLeft = '50%';\n break;\n case 'bottom':\n top += height / 2 + triggerBounding.height / 2 + margin;\n transform = `rotate(0deg) translateY(-100%) translateX(-50%)`;\n arrowLeft = '50%';\n break;\n case 'left':\n left -= width / 2 + triggerBounding.width / 2 + margin;\n transform = ` rotate(90deg) translateY(50%) translateX(-25%)`;\n arrowLeft = '100%';\n arrowTop = '50%';\n break;\n case 'right':\n left += width / 2 + triggerBounding.width / 2 + margin;\n transform = `rotate(-90deg) translateY(-150%) translateX(25%)`;\n arrowTop = '50%';\n break;\n default:\n }\n switch (args[1]) {\n case 'top':\n top = triggerBounding.top;\n arrowTop = `${triggerBounding.height / 2}px`;\n break;\n case 'bottom':\n top = triggerBounding.top - height + triggerBounding.height;\n arrowTop = `${height - triggerBounding.height / 2}px`;\n break;\n case 'left':\n left = triggerBounding.left;\n arrowLeft = `${triggerBounding.width / 2}px`;\n break;\n case 'right':\n left = triggerBounding.left - width + triggerBounding.width;\n arrowLeft = `${width - triggerBounding.width / 2}px`;\n break;\n default:\n }\n\n top = args[0] === 'top' ? top - offsetY : top + offsetY;\n left = args[0] === 'left' ? left - offsetX : left + offsetX;\n\n return { top, left, transform, arrowLeft, arrowTop };\n};\n\nexport const getTooltipBoundary = (keepTooltipInside: string | Boolean) => {\n // add viewport\n let boundingBox = {\n top: 0,\n left: 0,\n /* eslint-disable-next-line no-undef */\n width: window.innerWidth,\n /* eslint-disable-next-line no-undef */\n height: window.innerHeight,\n };\n if (typeof keepTooltipInside === 'string') {\n /* eslint-disable-next-line no-undef */\n const selector = document.querySelector(keepTooltipInside);\n if (process.env.NODE_ENV !== 'production') {\n if (selector === null)\n throw new Error(\n `${keepTooltipInside} selector does not exist : keepTooltipInside must be a valid html selector 'class' or 'Id' or a boolean value`\n );\n }\n if (selector !== null) boundingBox = selector.getBoundingClientRect();\n }\n\n return boundingBox;\n};\n\nconst calculatePosition = (\n triggerBounding: DOMRect,\n ContentBounding: DOMRect,\n position: PopupPosition | PopupPosition[],\n arrow: boolean,\n { offsetX, offsetY }: { offsetX: number; offsetY: number },\n keepTooltipInside: string | boolean\n): CordsType => {\n let bestCoords: CordsType = {\n arrowLeft: '0%',\n arrowTop: '0%',\n left: 0,\n top: 0,\n transform: 'rotate(135deg)',\n };\n let i = 0;\n const wrapperBox = getTooltipBoundary(keepTooltipInside);\n let positions = Array.isArray(position) ? position : [position];\n\n // keepTooltipInside would be activated if the keepTooltipInside exist or the position is Array\n if (keepTooltipInside || Array.isArray(position))\n positions = [...positions, ...POSITION_TYPES];\n\n // add viewPort for WarpperBox\n // wrapperBox.top = wrapperBox.top + window.scrollY;\n // wrapperBox.left = wrapperBox.left + window.scrollX;\n\n while (i < positions.length) {\n bestCoords = getCoordinatesForPosition(\n triggerBounding,\n ContentBounding,\n positions[i],\n arrow,\n { offsetX, offsetY }\n );\n\n const contentBox = {\n top: bestCoords.top,\n left: bestCoords.left,\n width: ContentBounding.width,\n height: ContentBounding.height,\n };\n\n if (\n contentBox.top <= wrapperBox.top ||\n contentBox.left <= wrapperBox.left ||\n contentBox.top + contentBox.height >=\n wrapperBox.top + wrapperBox.height ||\n contentBox.left + contentBox.width >= wrapperBox.left + wrapperBox.width\n ) {\n i++;\n } else {\n break;\n }\n }\n\n return bestCoords;\n};\n\nexport default calculatePosition;\n","import React, {\n useState,\n useRef,\n useEffect,\n forwardRef,\n useImperativeHandle,\n} from 'react';\nimport ReactDOM from 'react-dom';\nimport { PopupProps, PopupActions } from './types';\nimport {\n useOnEscape,\n useRepositionOnResize,\n useOnClickOutside,\n useTabbing,\n useIsomorphicLayoutEffect,\n} from './hooks';\n\nimport './index.css';\n\nimport styles from './styles';\nimport calculatePosition from './Utils';\n\nlet popupIdCounter = 0;\n\nconst getRootPopup = () => {\n let PopupRoot = document.getElementById('popup-root');\n\n if (PopupRoot === null) {\n PopupRoot = document.createElement('div');\n PopupRoot.setAttribute('id', 'popup-root');\n document.body.appendChild(PopupRoot);\n }\n\n return PopupRoot;\n};\n\nexport const Popup = forwardRef(\n (\n {\n trigger = null,\n onOpen = () => {},\n onClose = () => {},\n defaultOpen = false,\n open = undefined,\n disabled = false,\n nested = false,\n closeOnDocumentClick = true,\n repositionOnResize = true,\n closeOnEscape = true,\n on = ['click'],\n contentStyle = {},\n arrowStyle = {},\n overlayStyle = {},\n className = '',\n position = 'bottom center',\n modal = false,\n lockScroll = false,\n arrow = true,\n offsetX = 0,\n offsetY = 0,\n mouseEnterDelay = 100,\n mouseLeaveDelay = 100,\n keepTooltipInside = false,\n children,\n },\n ref\n ) => {\n const [isOpen, setIsOpen] = useState(open || defaultOpen);\n const triggerRef = useRef(null);\n const contentRef = useRef(null);\n const arrowRef = useRef(null);\n const focusedElBeforeOpen = useRef(null);\n const popupId = useRef(`popup-${++popupIdCounter}`);\n\n const isModal = modal ? true : !trigger;\n const timeOut = useRef(0);\n\n useIsomorphicLayoutEffect(() => {\n if (isOpen) {\n focusedElBeforeOpen.current = document.activeElement;\n setPosition();\n focusContentOnOpen(); // for accessibility\n lockScrolll();\n } else {\n resetScroll();\n }\n return () => {\n clearTimeout(timeOut.current);\n };\n }, [isOpen]);\n\n // for uncontrolled popup we need to sync isOpen with open prop\n useEffect(() => {\n if (typeof open === 'boolean') {\n if (open) openPopup();\n else closePopup();\n }\n }, [open, disabled]);\n\n const openPopup = (event?: React.SyntheticEvent) => {\n if (isOpen || disabled) return;\n setIsOpen(true);\n setTimeout(() => onOpen(event), 0);\n };\n\n const closePopup = (\n event?: React.SyntheticEvent | KeyboardEvent | TouchEvent | MouseEvent\n ) => {\n if (!isOpen || disabled) return;\n setIsOpen(false);\n if (isModal) (focusedElBeforeOpen.current as HTMLElement)?.focus();\n setTimeout(() => onClose(event), 0);\n };\n\n const togglePopup = (event?: React.SyntheticEvent) => {\n event?.stopPropagation();\n if (!isOpen) openPopup(event);\n else closePopup(event);\n };\n\n const onMouseEnter = (event?: React.SyntheticEvent) => {\n clearTimeout(timeOut.current);\n timeOut.current = setTimeout(() => openPopup(event), mouseEnterDelay);\n };\n\n const onContextMenu = (event?: React.SyntheticEvent) => {\n event?.preventDefault();\n togglePopup();\n };\n\n const onMouseLeave = (event?: React.SyntheticEvent) => {\n clearTimeout(timeOut.current);\n timeOut.current = setTimeout(() => closePopup(event), mouseLeaveDelay);\n };\n\n const lockScrolll = () => {\n if (isModal && lockScroll)\n document.getElementsByTagName('body')[0].style.overflow = 'hidden'; // migrate to document.body\n };\n\n const resetScroll = () => {\n if (isModal && lockScroll)\n document.getElementsByTagName('body')[0].style.overflow = 'auto';\n };\n const focusContentOnOpen = () => {\n const focusableEls = contentRef?.current?.querySelectorAll(\n 'a[href], area[href], input:not([disabled]), select:not([disabled]), textarea:not([disabled]), button:not([disabled]), [tabindex=\"0\"]'\n );\n const firstEl = Array.prototype.slice.call(focusableEls)[0];\n firstEl?.focus();\n };\n\n useImperativeHandle(ref, () => ({\n open: () => {\n openPopup();\n },\n close: () => {\n closePopup();\n },\n toggle: () => {\n togglePopup();\n },\n }));\n\n // set Position\n const setPosition = () => {\n if (isModal || !isOpen) return;\n if (!triggerRef?.current || !triggerRef?.current || !contentRef?.current)\n return; /// show error as one of ref is undefined\n const trigger = triggerRef.current.getBoundingClientRect();\n const content = contentRef.current.getBoundingClientRect();\n\n const cords = calculatePosition(\n trigger,\n content,\n position,\n arrow,\n {\n offsetX,\n offsetY,\n },\n keepTooltipInside\n );\n contentRef.current.style.top = `${cords.top + window.scrollY}px`;\n contentRef.current.style.left = `${cords.left + window.scrollX}px`;\n if (arrow && !!arrowRef.current) {\n arrowRef.current.style.transform = cords.transform;\n arrowRef.current.style.setProperty('-ms-transform', cords.transform);\n arrowRef.current.style.setProperty(\n '-webkit-transform',\n cords.transform\n );\n arrowRef.current.style.top =\n arrowStyle.top?.toString() || cords.arrowTop;\n arrowRef.current.style.left =\n arrowStyle.left?.toString() || cords.arrowLeft;\n }\n };\n // hooks\n useOnEscape(closePopup, closeOnEscape); // can be optimized if we disabled for hover\n useTabbing(contentRef, isOpen && isModal);\n useRepositionOnResize(setPosition, repositionOnResize);\n useOnClickOutside(\n !!trigger ? [contentRef, triggerRef] : [contentRef],\n closePopup,\n closeOnDocumentClick && !nested\n ); // we need to add a ne\n // render the trigger element and add events\n const renderTrigger = () => {\n const triggerProps: any = {\n key: 'T',\n ref: triggerRef,\n 'aria-describedby': popupId.current,\n };\n const onAsArray = Array.isArray(on) ? on : [on];\n for (let i = 0, len = onAsArray.length; i < len; i++) {\n switch (onAsArray[i]) {\n case 'click':\n triggerProps.onClick = togglePopup;\n break;\n case 'right-click':\n triggerProps.onContextMenu = onContextMenu;\n break;\n case 'hover':\n triggerProps.onMouseEnter = onMouseEnter;\n triggerProps.onMouseLeave = onMouseLeave;\n break;\n case 'focus':\n triggerProps.onFocus = onMouseEnter;\n triggerProps.onBlur = onMouseLeave;\n break;\n default:\n }\n }\n\n if (typeof trigger === 'function') {\n const comp = trigger(isOpen);\n return !!trigger && React.cloneElement(comp, triggerProps);\n }\n\n return !!trigger && React.cloneElement(trigger, triggerProps);\n };\n\n const addWarperAction = () => {\n const popupContentStyle = isModal\n ? styles.popupContent.modal\n : styles.popupContent.tooltip;\n\n const childrenElementProps: any = {\n className: `popup-content ${\n className !== ''\n ? className\n .split(' ')\n .map(c => `${c}-content`)\n .join(' ')\n : ''\n }`,\n style: {\n ...popupContentStyle,\n ...contentStyle,\n pointerEvents: 'auto', //closeOnDocumentClick && nested ? 'auto' : 'none',\n },\n ref: contentRef,\n onClick: (e: any) => {\n e.stopPropagation();\n },\n };\n if (!modal && on.indexOf('hover') >= 0) {\n childrenElementProps.onMouseEnter = onMouseEnter;\n childrenElementProps.onMouseLeave = onMouseLeave;\n }\n return childrenElementProps;\n };\n\n const renderContent = () => {\n return (\n \n {arrow && !isModal && (\n
\n `${c}-arrow`)\n .join(' ')\n : ''\n }`}\n viewBox=\"0 0 32 16\"\n style={{\n position: 'absolute',\n ...arrowStyle,\n }}\n >\n \n \n
\n )}\n {children && typeof children === 'function'\n ? children(closePopup, isOpen)\n : children}\n \n );\n };\n\n const overlay = !(on.indexOf('hover') >= 0);\n const ovStyle = isModal ? styles.overlay.modal : styles.overlay.tooltip;\n\n const content = [\n overlay && (\n `${c}-overlay`)\n .join(' ')\n : ''\n }`}\n style={{\n ...ovStyle,\n ...overlayStyle,\n pointerEvents:\n (closeOnDocumentClick && nested) || isModal ? 'auto' : 'none',\n }}\n onClick={closeOnDocumentClick && nested ? closePopup : undefined}\n tabIndex={-1}\n >\n {isModal && renderContent()}\n \n ),\n\n !isModal && renderContent(),\n ];\n\n return (\n <>\n {renderTrigger()}\n {isOpen && ReactDOM.createPortal(content, getRootPopup())}\n \n );\n }\n);\n\nexport default Popup;\n","export default function _extends() {\n _extends = Object.assign ? Object.assign.bind() : function (target) {\n for (var i = 1; i < arguments.length; i++) {\n var source = arguments[i];\n for (var key in source) {\n if (Object.prototype.hasOwnProperty.call(source, key)) {\n target[key] = source[key];\n }\n }\n }\n return target;\n };\n return _extends.apply(this, arguments);\n}","export default function _objectWithoutPropertiesLoose(source, excluded) {\n if (source == null) return {};\n var target = {};\n var sourceKeys = Object.keys(source);\n var key, i;\n for (i = 0; i < sourceKeys.length; i++) {\n key = sourceKeys[i];\n if (excluded.indexOf(key) >= 0) continue;\n target[key] = source[key];\n }\n return target;\n}","export default function _setPrototypeOf(o, p) {\n _setPrototypeOf = Object.setPrototypeOf ? Object.setPrototypeOf.bind() : function _setPrototypeOf(o, p) {\n o.__proto__ = p;\n return o;\n };\n return _setPrototypeOf(o, p);\n}","import setPrototypeOf from \"./setPrototypeOf.js\";\nexport default function _inheritsLoose(subClass, superClass) {\n subClass.prototype = Object.create(superClass.prototype);\n subClass.prototype.constructor = subClass;\n setPrototypeOf(subClass, superClass);\n}","function replaceClassName(origClass, classToRemove) {\n return origClass.replace(new RegExp(\"(^|\\\\s)\" + classToRemove + \"(?:\\\\s|$)\", 'g'), '$1').replace(/\\s+/g, ' ').replace(/^\\s*|\\s*$/g, '');\n}\n/**\n * Removes a CSS class from a given element.\n * \n * @param element the element\n * @param className the CSS class name\n */\n\n\nexport default function removeClass(element, className) {\n if (element.classList) {\n element.classList.remove(className);\n } else if (typeof element.className === 'string') {\n element.className = replaceClassName(element.className, className);\n } else {\n element.setAttribute('class', replaceClassName(element.className && element.className.baseVal || '', className));\n }\n}","export default {\n disabled: false\n};","import React from 'react';\nexport default React.createContext(null);","export var forceReflow = function forceReflow(node) {\n return node.scrollTop;\n};","import _objectWithoutPropertiesLoose from \"@babel/runtime/helpers/esm/objectWithoutPropertiesLoose\";\nimport _inheritsLoose from \"@babel/runtime/helpers/esm/inheritsLoose\";\nimport PropTypes from 'prop-types';\nimport React from 'react';\nimport ReactDOM from 'react-dom';\nimport config from './config';\nimport { timeoutsShape } from './utils/PropTypes';\nimport TransitionGroupContext from './TransitionGroupContext';\nimport { forceReflow } from './utils/reflow';\nexport var UNMOUNTED = 'unmounted';\nexport var EXITED = 'exited';\nexport var ENTERING = 'entering';\nexport var ENTERED = 'entered';\nexport var EXITING = 'exiting';\n/**\n * The Transition component lets you describe a transition from one component\n * state to another _over time_ with a simple declarative API. Most commonly\n * it's used to animate the mounting and unmounting of a component, but can also\n * be used to describe in-place transition states as well.\n *\n * ---\n *\n * **Note**: `Transition` is a platform-agnostic base component. If you're using\n * transitions in CSS, you'll probably want to use\n * [`CSSTransition`](https://reactcommunity.org/react-transition-group/css-transition)\n * instead. It inherits all the features of `Transition`, but contains\n * additional features necessary to play nice with CSS transitions (hence the\n * name of the component).\n *\n * ---\n *\n * By default the `Transition` component does not alter the behavior of the\n * component it renders, it only tracks \"enter\" and \"exit\" states for the\n * components. It's up to you to give meaning and effect to those states. For\n * example we can add styles to a component when it enters or exits:\n *\n * ```jsx\n * import { Transition } from 'react-transition-group';\n *\n * const duration = 300;\n *\n * const defaultStyle = {\n * transition: `opacity ${duration}ms ease-in-out`,\n * opacity: 0,\n * }\n *\n * const transitionStyles = {\n * entering: { opacity: 1 },\n * entered: { opacity: 1 },\n * exiting: { opacity: 0 },\n * exited: { opacity: 0 },\n * };\n *\n * const Fade = ({ in: inProp }) => (\n * \n * {state => (\n *
\n * I'm a fade Transition!\n *
\n * )}\n *
\n * );\n * ```\n *\n * There are 4 main states a Transition can be in:\n * - `'entering'`\n * - `'entered'`\n * - `'exiting'`\n * - `'exited'`\n *\n * Transition state is toggled via the `in` prop. When `true` the component\n * begins the \"Enter\" stage. During this stage, the component will shift from\n * its current transition state, to `'entering'` for the duration of the\n * transition and then to the `'entered'` stage once it's complete. Let's take\n * the following example (we'll use the\n * [useState](https://reactjs.org/docs/hooks-reference.html#usestate) hook):\n *\n * ```jsx\n * function App() {\n * const [inProp, setInProp] = useState(false);\n * return (\n *
\n * \n * {state => (\n * // ...\n * )}\n * \n * \n *
\n * );\n * }\n * ```\n *\n * When the button is clicked the component will shift to the `'entering'` state\n * and stay there for 500ms (the value of `timeout`) before it finally switches\n * to `'entered'`.\n *\n * When `in` is `false` the same thing happens except the state moves from\n * `'exiting'` to `'exited'`.\n */\n\nvar Transition = /*#__PURE__*/function (_React$Component) {\n _inheritsLoose(Transition, _React$Component);\n\n function Transition(props, context) {\n var _this;\n\n _this = _React$Component.call(this, props, context) || this;\n var parentGroup = context; // In the context of a TransitionGroup all enters are really appears\n\n var appear = parentGroup && !parentGroup.isMounting ? props.enter : props.appear;\n var initialStatus;\n _this.appearStatus = null;\n\n if (props.in) {\n if (appear) {\n initialStatus = EXITED;\n _this.appearStatus = ENTERING;\n } else {\n initialStatus = ENTERED;\n }\n } else {\n if (props.unmountOnExit || props.mountOnEnter) {\n initialStatus = UNMOUNTED;\n } else {\n initialStatus = EXITED;\n }\n }\n\n _this.state = {\n status: initialStatus\n };\n _this.nextCallback = null;\n return _this;\n }\n\n Transition.getDerivedStateFromProps = function getDerivedStateFromProps(_ref, prevState) {\n var nextIn = _ref.in;\n\n if (nextIn && prevState.status === UNMOUNTED) {\n return {\n status: EXITED\n };\n }\n\n return null;\n } // getSnapshotBeforeUpdate(prevProps) {\n // let nextStatus = null\n // if (prevProps !== this.props) {\n // const { status } = this.state\n // if (this.props.in) {\n // if (status !== ENTERING && status !== ENTERED) {\n // nextStatus = ENTERING\n // }\n // } else {\n // if (status === ENTERING || status === ENTERED) {\n // nextStatus = EXITING\n // }\n // }\n // }\n // return { nextStatus }\n // }\n ;\n\n var _proto = Transition.prototype;\n\n _proto.componentDidMount = function componentDidMount() {\n this.updateStatus(true, this.appearStatus);\n };\n\n _proto.componentDidUpdate = function componentDidUpdate(prevProps) {\n var nextStatus = null;\n\n if (prevProps !== this.props) {\n var status = this.state.status;\n\n if (this.props.in) {\n if (status !== ENTERING && status !== ENTERED) {\n nextStatus = ENTERING;\n }\n } else {\n if (status === ENTERING || status === ENTERED) {\n nextStatus = EXITING;\n }\n }\n }\n\n this.updateStatus(false, nextStatus);\n };\n\n _proto.componentWillUnmount = function componentWillUnmount() {\n this.cancelNextCallback();\n };\n\n _proto.getTimeouts = function getTimeouts() {\n var timeout = this.props.timeout;\n var exit, enter, appear;\n exit = enter = appear = timeout;\n\n if (timeout != null && typeof timeout !== 'number') {\n exit = timeout.exit;\n enter = timeout.enter; // TODO: remove fallback for next major\n\n appear = timeout.appear !== undefined ? timeout.appear : enter;\n }\n\n return {\n exit: exit,\n enter: enter,\n appear: appear\n };\n };\n\n _proto.updateStatus = function updateStatus(mounting, nextStatus) {\n if (mounting === void 0) {\n mounting = false;\n }\n\n if (nextStatus !== null) {\n // nextStatus will always be ENTERING or EXITING.\n this.cancelNextCallback();\n\n if (nextStatus === ENTERING) {\n if (this.props.unmountOnExit || this.props.mountOnEnter) {\n var node = this.props.nodeRef ? this.props.nodeRef.current : ReactDOM.findDOMNode(this); // https://github.com/reactjs/react-transition-group/pull/749\n // With unmountOnExit or mountOnEnter, the enter animation should happen at the transition between `exited` and `entering`.\n // To make the animation happen, we have to separate each rendering and avoid being processed as batched.\n\n if (node) forceReflow(node);\n }\n\n this.performEnter(mounting);\n } else {\n this.performExit();\n }\n } else if (this.props.unmountOnExit && this.state.status === EXITED) {\n this.setState({\n status: UNMOUNTED\n });\n }\n };\n\n _proto.performEnter = function performEnter(mounting) {\n var _this2 = this;\n\n var enter = this.props.enter;\n var appearing = this.context ? this.context.isMounting : mounting;\n\n var _ref2 = this.props.nodeRef ? [appearing] : [ReactDOM.findDOMNode(this), appearing],\n maybeNode = _ref2[0],\n maybeAppearing = _ref2[1];\n\n var timeouts = this.getTimeouts();\n var enterTimeout = appearing ? timeouts.appear : timeouts.enter; // no enter animation skip right to ENTERED\n // if we are mounting and running this it means appear _must_ be set\n\n if (!mounting && !enter || config.disabled) {\n this.safeSetState({\n status: ENTERED\n }, function () {\n _this2.props.onEntered(maybeNode);\n });\n return;\n }\n\n this.props.onEnter(maybeNode, maybeAppearing);\n this.safeSetState({\n status: ENTERING\n }, function () {\n _this2.props.onEntering(maybeNode, maybeAppearing);\n\n _this2.onTransitionEnd(enterTimeout, function () {\n _this2.safeSetState({\n status: ENTERED\n }, function () {\n _this2.props.onEntered(maybeNode, maybeAppearing);\n });\n });\n });\n };\n\n _proto.performExit = function performExit() {\n var _this3 = this;\n\n var exit = this.props.exit;\n var timeouts = this.getTimeouts();\n var maybeNode = this.props.nodeRef ? undefined : ReactDOM.findDOMNode(this); // no exit animation skip right to EXITED\n\n if (!exit || config.disabled) {\n this.safeSetState({\n status: EXITED\n }, function () {\n _this3.props.onExited(maybeNode);\n });\n return;\n }\n\n this.props.onExit(maybeNode);\n this.safeSetState({\n status: EXITING\n }, function () {\n _this3.props.onExiting(maybeNode);\n\n _this3.onTransitionEnd(timeouts.exit, function () {\n _this3.safeSetState({\n status: EXITED\n }, function () {\n _this3.props.onExited(maybeNode);\n });\n });\n });\n };\n\n _proto.cancelNextCallback = function cancelNextCallback() {\n if (this.nextCallback !== null) {\n this.nextCallback.cancel();\n this.nextCallback = null;\n }\n };\n\n _proto.safeSetState = function safeSetState(nextState, callback) {\n // This shouldn't be necessary, but there are weird race conditions with\n // setState callbacks and unmounting in testing, so always make sure that\n // we can cancel any pending setState callbacks after we unmount.\n callback = this.setNextCallback(callback);\n this.setState(nextState, callback);\n };\n\n _proto.setNextCallback = function setNextCallback(callback) {\n var _this4 = this;\n\n var active = true;\n\n this.nextCallback = function (event) {\n if (active) {\n active = false;\n _this4.nextCallback = null;\n callback(event);\n }\n };\n\n this.nextCallback.cancel = function () {\n active = false;\n };\n\n return this.nextCallback;\n };\n\n _proto.onTransitionEnd = function onTransitionEnd(timeout, handler) {\n this.setNextCallback(handler);\n var node = this.props.nodeRef ? this.props.nodeRef.current : ReactDOM.findDOMNode(this);\n var doesNotHaveTimeoutOrListener = timeout == null && !this.props.addEndListener;\n\n if (!node || doesNotHaveTimeoutOrListener) {\n setTimeout(this.nextCallback, 0);\n return;\n }\n\n if (this.props.addEndListener) {\n var _ref3 = this.props.nodeRef ? [this.nextCallback] : [node, this.nextCallback],\n maybeNode = _ref3[0],\n maybeNextCallback = _ref3[1];\n\n this.props.addEndListener(maybeNode, maybeNextCallback);\n }\n\n if (timeout != null) {\n setTimeout(this.nextCallback, timeout);\n }\n };\n\n _proto.render = function render() {\n var status = this.state.status;\n\n if (status === UNMOUNTED) {\n return null;\n }\n\n var _this$props = this.props,\n children = _this$props.children,\n _in = _this$props.in,\n _mountOnEnter = _this$props.mountOnEnter,\n _unmountOnExit = _this$props.unmountOnExit,\n _appear = _this$props.appear,\n _enter = _this$props.enter,\n _exit = _this$props.exit,\n _timeout = _this$props.timeout,\n _addEndListener = _this$props.addEndListener,\n _onEnter = _this$props.onEnter,\n _onEntering = _this$props.onEntering,\n _onEntered = _this$props.onEntered,\n _onExit = _this$props.onExit,\n _onExiting = _this$props.onExiting,\n _onExited = _this$props.onExited,\n _nodeRef = _this$props.nodeRef,\n childProps = _objectWithoutPropertiesLoose(_this$props, [\"children\", \"in\", \"mountOnEnter\", \"unmountOnExit\", \"appear\", \"enter\", \"exit\", \"timeout\", \"addEndListener\", \"onEnter\", \"onEntering\", \"onEntered\", \"onExit\", \"onExiting\", \"onExited\", \"nodeRef\"]);\n\n return (\n /*#__PURE__*/\n // allows for nested Transitions\n React.createElement(TransitionGroupContext.Provider, {\n value: null\n }, typeof children === 'function' ? children(status, childProps) : React.cloneElement(React.Children.only(children), childProps))\n );\n };\n\n return Transition;\n}(React.Component);\n\nTransition.contextType = TransitionGroupContext;\nTransition.propTypes = process.env.NODE_ENV !== \"production\" ? {\n /**\n * A React reference to DOM element that need to transition:\n * https://stackoverflow.com/a/51127130/4671932\n *\n * - When `nodeRef` prop is used, `node` is not passed to callback functions\n * (e.g. `onEnter`) because user already has direct access to the node.\n * - When changing `key` prop of `Transition` in a `TransitionGroup` a new\n * `nodeRef` need to be provided to `Transition` with changed `key` prop\n * (see\n * [test/CSSTransition-test.js](https://github.com/reactjs/react-transition-group/blob/13435f897b3ab71f6e19d724f145596f5910581c/test/CSSTransition-test.js#L362-L437)).\n */\n nodeRef: PropTypes.shape({\n current: typeof Element === 'undefined' ? PropTypes.any : function (propValue, key, componentName, location, propFullName, secret) {\n var value = propValue[key];\n return PropTypes.instanceOf(value && 'ownerDocument' in value ? value.ownerDocument.defaultView.Element : Element)(propValue, key, componentName, location, propFullName, secret);\n }\n }),\n\n /**\n * A `function` child can be used instead of a React element. This function is\n * called with the current transition status (`'entering'`, `'entered'`,\n * `'exiting'`, `'exited'`), which can be used to apply context\n * specific props to a component.\n *\n * ```jsx\n * \n * {state => (\n * \n * )}\n * \n * ```\n */\n children: PropTypes.oneOfType([PropTypes.func.isRequired, PropTypes.element.isRequired]).isRequired,\n\n /**\n * Show the component; triggers the enter or exit states\n */\n in: PropTypes.bool,\n\n /**\n * By default the child component is mounted immediately along with\n * the parent `Transition` component. If you want to \"lazy mount\" the component on the\n * first `in={true}` you can set `mountOnEnter`. After the first enter transition the component will stay\n * mounted, even on \"exited\", unless you also specify `unmountOnExit`.\n */\n mountOnEnter: PropTypes.bool,\n\n /**\n * By default the child component stays mounted after it reaches the `'exited'` state.\n * Set `unmountOnExit` if you'd prefer to unmount the component after it finishes exiting.\n */\n unmountOnExit: PropTypes.bool,\n\n /**\n * By default the child component does not perform the enter transition when\n * it first mounts, regardless of the value of `in`. If you want this\n * behavior, set both `appear` and `in` to `true`.\n *\n * > **Note**: there are no special appear states like `appearing`/`appeared`, this prop\n * > only adds an additional enter transition. However, in the\n * > `` component that first enter transition does result in\n * > additional `.appear-*` classes, that way you can choose to style it\n * > differently.\n */\n appear: PropTypes.bool,\n\n /**\n * Enable or disable enter transitions.\n */\n enter: PropTypes.bool,\n\n /**\n * Enable or disable exit transitions.\n */\n exit: PropTypes.bool,\n\n /**\n * The duration of the transition, in milliseconds.\n * Required unless `addEndListener` is provided.\n *\n * You may specify a single timeout for all transitions:\n *\n * ```jsx\n * timeout={500}\n * ```\n *\n * or individually:\n *\n * ```jsx\n * timeout={{\n * appear: 500,\n * enter: 300,\n * exit: 500,\n * }}\n * ```\n *\n * - `appear` defaults to the value of `enter`\n * - `enter` defaults to `0`\n * - `exit` defaults to `0`\n *\n * @type {number | { enter?: number, exit?: number, appear?: number }}\n */\n timeout: function timeout(props) {\n var pt = timeoutsShape;\n if (!props.addEndListener) pt = pt.isRequired;\n\n for (var _len = arguments.length, args = new Array(_len > 1 ? _len - 1 : 0), _key = 1; _key < _len; _key++) {\n args[_key - 1] = arguments[_key];\n }\n\n return pt.apply(void 0, [props].concat(args));\n },\n\n /**\n * Add a custom transition end trigger. Called with the transitioning\n * DOM node and a `done` callback. Allows for more fine grained transition end\n * logic. Timeouts are still used as a fallback if provided.\n *\n * **Note**: when `nodeRef` prop is passed, `node` is not passed.\n *\n * ```jsx\n * addEndListener={(node, done) => {\n * // use the css transitionend event to mark the finish of a transition\n * node.addEventListener('transitionend', done, false);\n * }}\n * ```\n */\n addEndListener: PropTypes.func,\n\n /**\n * Callback fired before the \"entering\" status is applied. An extra parameter\n * `isAppearing` is supplied to indicate if the enter stage is occurring on the initial mount\n *\n * **Note**: when `nodeRef` prop is passed, `node` is not passed.\n *\n * @type Function(node: HtmlElement, isAppearing: bool) -> void\n */\n onEnter: PropTypes.func,\n\n /**\n * Callback fired after the \"entering\" status is applied. An extra parameter\n * `isAppearing` is supplied to indicate if the enter stage is occurring on the initial mount\n *\n * **Note**: when `nodeRef` prop is passed, `node` is not passed.\n *\n * @type Function(node: HtmlElement, isAppearing: bool)\n */\n onEntering: PropTypes.func,\n\n /**\n * Callback fired after the \"entered\" status is applied. An extra parameter\n * `isAppearing` is supplied to indicate if the enter stage is occurring on the initial mount\n *\n * **Note**: when `nodeRef` prop is passed, `node` is not passed.\n *\n * @type Function(node: HtmlElement, isAppearing: bool) -> void\n */\n onEntered: PropTypes.func,\n\n /**\n * Callback fired before the \"exiting\" status is applied.\n *\n * **Note**: when `nodeRef` prop is passed, `node` is not passed.\n *\n * @type Function(node: HtmlElement) -> void\n */\n onExit: PropTypes.func,\n\n /**\n * Callback fired after the \"exiting\" status is applied.\n *\n * **Note**: when `nodeRef` prop is passed, `node` is not passed.\n *\n * @type Function(node: HtmlElement) -> void\n */\n onExiting: PropTypes.func,\n\n /**\n * Callback fired after the \"exited\" status is applied.\n *\n * **Note**: when `nodeRef` prop is passed, `node` is not passed\n *\n * @type Function(node: HtmlElement) -> void\n */\n onExited: PropTypes.func\n} : {}; // Name the function so it is clearer in the documentation\n\nfunction noop() {}\n\nTransition.defaultProps = {\n in: false,\n mountOnEnter: false,\n unmountOnExit: false,\n appear: false,\n enter: true,\n exit: true,\n onEnter: noop,\n onEntering: noop,\n onEntered: noop,\n onExit: noop,\n onExiting: noop,\n onExited: noop\n};\nTransition.UNMOUNTED = UNMOUNTED;\nTransition.EXITED = EXITED;\nTransition.ENTERING = ENTERING;\nTransition.ENTERED = ENTERED;\nTransition.EXITING = EXITING;\nexport default Transition;","import _extends from \"@babel/runtime/helpers/esm/extends\";\nimport _objectWithoutPropertiesLoose from \"@babel/runtime/helpers/esm/objectWithoutPropertiesLoose\";\nimport _inheritsLoose from \"@babel/runtime/helpers/esm/inheritsLoose\";\nimport PropTypes from 'prop-types';\nimport addOneClass from 'dom-helpers/addClass';\nimport removeOneClass from 'dom-helpers/removeClass';\nimport React from 'react';\nimport Transition from './Transition';\nimport { classNamesShape } from './utils/PropTypes';\nimport { forceReflow } from './utils/reflow';\n\nvar _addClass = function addClass(node, classes) {\n return node && classes && classes.split(' ').forEach(function (c) {\n return addOneClass(node, c);\n });\n};\n\nvar removeClass = function removeClass(node, classes) {\n return node && classes && classes.split(' ').forEach(function (c) {\n return removeOneClass(node, c);\n });\n};\n/**\n * A transition component inspired by the excellent\n * [ng-animate](https://docs.angularjs.org/api/ngAnimate) library, you should\n * use it if you're using CSS transitions or animations. It's built upon the\n * [`Transition`](https://reactcommunity.org/react-transition-group/transition)\n * component, so it inherits all of its props.\n *\n * `CSSTransition` applies a pair of class names during the `appear`, `enter`,\n * and `exit` states of the transition. The first class is applied and then a\n * second `*-active` class in order to activate the CSS transition. After the\n * transition, matching `*-done` class names are applied to persist the\n * transition state.\n *\n * ```jsx\n * function App() {\n * const [inProp, setInProp] = useState(false);\n * return (\n *
\n * \n *
\n * {\"I'll receive my-node-* classes\"}\n *
\n *
\n * \n *
\n * );\n * }\n * ```\n *\n * When the `in` prop is set to `true`, the child component will first receive\n * the class `example-enter`, then the `example-enter-active` will be added in\n * the next tick. `CSSTransition` [forces a\n * reflow](https://github.com/reactjs/react-transition-group/blob/5007303e729a74be66a21c3e2205e4916821524b/src/CSSTransition.js#L208-L215)\n * between before adding the `example-enter-active`. This is an important trick\n * because it allows us to transition between `example-enter` and\n * `example-enter-active` even though they were added immediately one after\n * another. Most notably, this is what makes it possible for us to animate\n * _appearance_.\n *\n * ```css\n * .my-node-enter {\n * opacity: 0;\n * }\n * .my-node-enter-active {\n * opacity: 1;\n * transition: opacity 200ms;\n * }\n * .my-node-exit {\n * opacity: 1;\n * }\n * .my-node-exit-active {\n * opacity: 0;\n * transition: opacity 200ms;\n * }\n * ```\n *\n * `*-active` classes represent which styles you want to animate **to**, so it's\n * important to add `transition` declaration only to them, otherwise transitions\n * might not behave as intended! This might not be obvious when the transitions\n * are symmetrical, i.e. when `*-enter-active` is the same as `*-exit`, like in\n * the example above (minus `transition`), but it becomes apparent in more\n * complex transitions.\n *\n * **Note**: If you're using the\n * [`appear`](http://reactcommunity.org/react-transition-group/transition#Transition-prop-appear)\n * prop, make sure to define styles for `.appear-*` classes as well.\n */\n\n\nvar CSSTransition = /*#__PURE__*/function (_React$Component) {\n _inheritsLoose(CSSTransition, _React$Component);\n\n function CSSTransition() {\n var _this;\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 = _React$Component.call.apply(_React$Component, [this].concat(args)) || this;\n _this.appliedClasses = {\n appear: {},\n enter: {},\n exit: {}\n };\n\n _this.onEnter = function (maybeNode, maybeAppearing) {\n var _this$resolveArgument = _this.resolveArguments(maybeNode, maybeAppearing),\n node = _this$resolveArgument[0],\n appearing = _this$resolveArgument[1];\n\n _this.removeClasses(node, 'exit');\n\n _this.addClass(node, appearing ? 'appear' : 'enter', 'base');\n\n if (_this.props.onEnter) {\n _this.props.onEnter(maybeNode, maybeAppearing);\n }\n };\n\n _this.onEntering = function (maybeNode, maybeAppearing) {\n var _this$resolveArgument2 = _this.resolveArguments(maybeNode, maybeAppearing),\n node = _this$resolveArgument2[0],\n appearing = _this$resolveArgument2[1];\n\n var type = appearing ? 'appear' : 'enter';\n\n _this.addClass(node, type, 'active');\n\n if (_this.props.onEntering) {\n _this.props.onEntering(maybeNode, maybeAppearing);\n }\n };\n\n _this.onEntered = function (maybeNode, maybeAppearing) {\n var _this$resolveArgument3 = _this.resolveArguments(maybeNode, maybeAppearing),\n node = _this$resolveArgument3[0],\n appearing = _this$resolveArgument3[1];\n\n var type = appearing ? 'appear' : 'enter';\n\n _this.removeClasses(node, type);\n\n _this.addClass(node, type, 'done');\n\n if (_this.props.onEntered) {\n _this.props.onEntered(maybeNode, maybeAppearing);\n }\n };\n\n _this.onExit = function (maybeNode) {\n var _this$resolveArgument4 = _this.resolveArguments(maybeNode),\n node = _this$resolveArgument4[0];\n\n _this.removeClasses(node, 'appear');\n\n _this.removeClasses(node, 'enter');\n\n _this.addClass(node, 'exit', 'base');\n\n if (_this.props.onExit) {\n _this.props.onExit(maybeNode);\n }\n };\n\n _this.onExiting = function (maybeNode) {\n var _this$resolveArgument5 = _this.resolveArguments(maybeNode),\n node = _this$resolveArgument5[0];\n\n _this.addClass(node, 'exit', 'active');\n\n if (_this.props.onExiting) {\n _this.props.onExiting(maybeNode);\n }\n };\n\n _this.onExited = function (maybeNode) {\n var _this$resolveArgument6 = _this.resolveArguments(maybeNode),\n node = _this$resolveArgument6[0];\n\n _this.removeClasses(node, 'exit');\n\n _this.addClass(node, 'exit', 'done');\n\n if (_this.props.onExited) {\n _this.props.onExited(maybeNode);\n }\n };\n\n _this.resolveArguments = function (maybeNode, maybeAppearing) {\n return _this.props.nodeRef ? [_this.props.nodeRef.current, maybeNode] // here `maybeNode` is actually `appearing`\n : [maybeNode, maybeAppearing];\n };\n\n _this.getClassNames = function (type) {\n var classNames = _this.props.classNames;\n var isStringClassNames = typeof classNames === 'string';\n var prefix = isStringClassNames && classNames ? classNames + \"-\" : '';\n var baseClassName = isStringClassNames ? \"\" + prefix + type : classNames[type];\n var activeClassName = isStringClassNames ? baseClassName + \"-active\" : classNames[type + \"Active\"];\n var doneClassName = isStringClassNames ? baseClassName + \"-done\" : classNames[type + \"Done\"];\n return {\n baseClassName: baseClassName,\n activeClassName: activeClassName,\n doneClassName: doneClassName\n };\n };\n\n return _this;\n }\n\n var _proto = CSSTransition.prototype;\n\n _proto.addClass = function addClass(node, type, phase) {\n var className = this.getClassNames(type)[phase + \"ClassName\"];\n\n var _this$getClassNames = this.getClassNames('enter'),\n doneClassName = _this$getClassNames.doneClassName;\n\n if (type === 'appear' && phase === 'done' && doneClassName) {\n className += \" \" + doneClassName;\n } // This is to force a repaint,\n // which is necessary in order to transition styles when adding a class name.\n\n\n if (phase === 'active') {\n if (node) forceReflow(node);\n }\n\n if (className) {\n this.appliedClasses[type][phase] = className;\n\n _addClass(node, className);\n }\n };\n\n _proto.removeClasses = function removeClasses(node, type) {\n var _this$appliedClasses$ = this.appliedClasses[type],\n baseClassName = _this$appliedClasses$.base,\n activeClassName = _this$appliedClasses$.active,\n doneClassName = _this$appliedClasses$.done;\n this.appliedClasses[type] = {};\n\n if (baseClassName) {\n removeClass(node, baseClassName);\n }\n\n if (activeClassName) {\n removeClass(node, activeClassName);\n }\n\n if (doneClassName) {\n removeClass(node, doneClassName);\n }\n };\n\n _proto.render = function render() {\n var _this$props = this.props,\n _ = _this$props.classNames,\n props = _objectWithoutPropertiesLoose(_this$props, [\"classNames\"]);\n\n return /*#__PURE__*/React.createElement(Transition, _extends({}, props, {\n onEnter: this.onEnter,\n onEntered: this.onEntered,\n onEntering: this.onEntering,\n onExit: this.onExit,\n onExiting: this.onExiting,\n onExited: this.onExited\n }));\n };\n\n return CSSTransition;\n}(React.Component);\n\nCSSTransition.defaultProps = {\n classNames: ''\n};\nCSSTransition.propTypes = process.env.NODE_ENV !== \"production\" ? _extends({}, Transition.propTypes, {\n /**\n * The animation classNames applied to the component as it appears, enters,\n * exits or has finished the transition. A single name can be provided, which\n * will be suffixed for each stage, e.g. `classNames=\"fade\"` applies:\n *\n * - `fade-appear`, `fade-appear-active`, `fade-appear-done`\n * - `fade-enter`, `fade-enter-active`, `fade-enter-done`\n * - `fade-exit`, `fade-exit-active`, `fade-exit-done`\n *\n * A few details to note about how these classes are applied:\n *\n * 1. They are _joined_ with the ones that are already defined on the child\n * component, so if you want to add some base styles, you can use\n * `className` without worrying that it will be overridden.\n *\n * 2. If the transition component mounts with `in={false}`, no classes are\n * applied yet. You might be expecting `*-exit-done`, but if you think\n * about it, a component cannot finish exiting if it hasn't entered yet.\n *\n * 2. `fade-appear-done` and `fade-enter-done` will _both_ be applied. This\n * allows you to define different behavior for when appearing is done and\n * when regular entering is done, using selectors like\n * `.fade-enter-done:not(.fade-appear-done)`. For example, you could apply\n * an epic entrance animation when element first appears in the DOM using\n * [Animate.css](https://daneden.github.io/animate.css/). Otherwise you can\n * simply use `fade-enter-done` for defining both cases.\n *\n * Each individual classNames can also be specified independently like:\n *\n * ```js\n * classNames={{\n * appear: 'my-appear',\n * appearActive: 'my-active-appear',\n * appearDone: 'my-done-appear',\n * enter: 'my-enter',\n * enterActive: 'my-active-enter',\n * enterDone: 'my-done-enter',\n * exit: 'my-exit',\n * exitActive: 'my-active-exit',\n * exitDone: 'my-done-exit',\n * }}\n * ```\n *\n * If you want to set these classes using CSS Modules:\n *\n * ```js\n * import styles from './styles.css';\n * ```\n *\n * you might want to use camelCase in your CSS file, that way could simply\n * spread them instead of listing them one by one:\n *\n * ```js\n * classNames={{ ...styles }}\n * ```\n *\n * @type {string | {\n * appear?: string,\n * appearActive?: string,\n * appearDone?: string,\n * enter?: string,\n * enterActive?: string,\n * enterDone?: string,\n * exit?: string,\n * exitActive?: string,\n * exitDone?: string,\n * }}\n */\n classNames: classNamesShape,\n\n /**\n * A `` callback fired immediately after the 'enter' or 'appear' class is\n * applied.\n *\n * **Note**: when `nodeRef` prop is passed, `node` is not passed.\n *\n * @type Function(node: HtmlElement, isAppearing: bool)\n */\n onEnter: PropTypes.func,\n\n /**\n * A `` callback fired immediately after the 'enter-active' or\n * 'appear-active' class is applied.\n *\n * **Note**: when `nodeRef` prop is passed, `node` is not passed.\n *\n * @type Function(node: HtmlElement, isAppearing: bool)\n */\n onEntering: PropTypes.func,\n\n /**\n * A `` callback fired immediately after the 'enter' or\n * 'appear' classes are **removed** and the `done` class is added to the DOM node.\n *\n * **Note**: when `nodeRef` prop is passed, `node` is not passed.\n *\n * @type Function(node: HtmlElement, isAppearing: bool)\n */\n onEntered: PropTypes.func,\n\n /**\n * A `` callback fired immediately after the 'exit' class is\n * applied.\n *\n * **Note**: when `nodeRef` prop is passed, `node` is not passed\n *\n * @type Function(node: HtmlElement)\n */\n onExit: PropTypes.func,\n\n /**\n * A `` callback fired immediately after the 'exit-active' is applied.\n *\n * **Note**: when `nodeRef` prop is passed, `node` is not passed\n *\n * @type Function(node: HtmlElement)\n */\n onExiting: PropTypes.func,\n\n /**\n * A `` callback fired immediately after the 'exit' classes\n * are **removed** and the `exit-done` class is added to the DOM node.\n *\n * **Note**: when `nodeRef` prop is passed, `node` is not passed\n *\n * @type Function(node: HtmlElement)\n */\n onExited: PropTypes.func\n}) : {};\nexport default CSSTransition;","import hasClass from './hasClass';\n/**\n * Adds a CSS class to a given element.\n * \n * @param element the element\n * @param className the CSS class name\n */\n\nexport default function addClass(element, className) {\n if (element.classList) element.classList.add(className);else if (!hasClass(element, className)) if (typeof element.className === 'string') element.className = element.className + \" \" + className;else element.setAttribute('class', (element.className && element.className.baseVal || '') + \" \" + className);\n}","/**\n * Checks if a given element has a CSS class.\n * \n * @param element the element\n * @param className the CSS class name\n */\nexport default function hasClass(element, className) {\n if (element.classList) return !!className && element.classList.contains(className);\n return (\" \" + (element.className.baseVal || element.className) + \" \").indexOf(\" \" + className + \" \") !== -1;\n}","import {useState, useEffect, useRef} from 'react'\nimport { CSSTransition } from 'react-transition-group';\n\n\nfunction TermsConditions({setAgree, setFlag ,flag, checkbox1, setcheckbox1}) {\n\n useEffect(() =>{\n if(checkbox1 === true){\n setAgree(true)\n }else{\n setAgree(false)\n }\n\n },[checkbox1, setAgree]) \n\n const [openFacts, setOpenFacts] = useState(false);\n const nodeRef = useRef(null);\n\n\n const ImportantFacts = () =>{\n return <>\n

By signing above you consent for your digital signatures to be applied to a Letter of Authority which shall be\n submitted to HMRC to make a claim for Marriage Tax Allowance. Please use the links above to view the Letter of Authority,\n Terms and Conditions (which include details of the fees and cancellation policy) and Privacy Policy before\n signing. HMRC may consider other factors for each tax year which may result in a higher or a lower refund.\n

\n\n

Please note that if you are self-employed you should reclaim your tax allowances through your self-assessment\n tax return.\n

\n\n

We will use your contact details to keep in touch with regard to your claims. We will also send you future\n communications by post, telephone, email, text message or social media messaging (including WhatApp and Facebook\n Messenger). These communications will relate to similar claims products and services of Legal Ventures Limited,\n and its brands (which include Claims Advisory Services), including but not limited to, tax claims, flight delay\n claims and other types of consumer claims. To opt out of these communications at any time please email\n compliance-team@claimsadvisoryservices.co.uk or you can write to us at Compliance Team, Claims Advisory Services,\n 84 Salop Street, Wolverhampton, WV3 0SR.\n

\n\n \n }\n\n\n return (\n
\n

setcheckbox1(e.target.checked)}/> By ticking this box\n I/We confirm that I/We have read and agree to the Terms and Conditions, the Privacy Policy and for My/Our signatures to be applied to the Letter of Authority and for My/Our signatures\n to be reproduced on any documentation required for My/Our claim. I/We also confirm that I/We have read and agree to the “Important\n Facts” below and understand that the information I/We have provided will be submitted on My/Our behalf to HMRC who may prosecute if false information is given.

\n \n {flag &&

In order to proceed, you must tick the box above

}\n\n
\n {openFacts ? \"minus {setOpenFacts((v) => !v)}} />\n : \"plus {setOpenFacts((v) => !v)}} />}\n

{setOpenFacts((v) => !v)}}>PLEASE CLICK HERE TO READ IMPORTANT FACTS BEFORE SUBMISSION

\n
\n \n
\n \n
\n
\n\n
\n )\n}\n\nexport default TermsConditions;","function ownKeys(object, enumerableOnly) {\n var keys = Object.keys(object);\n\n if (Object.getOwnPropertySymbols) {\n var symbols = Object.getOwnPropertySymbols(object);\n enumerableOnly && (symbols = symbols.filter(function (sym) {\n return Object.getOwnPropertyDescriptor(object, sym).enumerable;\n })), keys.push.apply(keys, symbols);\n }\n\n return keys;\n}\n\nfunction _objectSpread2(target) {\n for (var i = 1; i < arguments.length; i++) {\n var source = null != arguments[i] ? arguments[i] : {};\n i % 2 ? ownKeys(Object(source), !0).forEach(function (key) {\n _defineProperty(target, key, source[key]);\n }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) {\n Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key));\n });\n }\n\n return target;\n}\n\nfunction _typeof(obj) {\n \"@babel/helpers - typeof\";\n\n return _typeof = \"function\" == typeof Symbol && \"symbol\" == typeof Symbol.iterator ? function (obj) {\n return typeof obj;\n } : function (obj) {\n return obj && \"function\" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj;\n }, _typeof(obj);\n}\n\nfunction _wrapRegExp() {\n _wrapRegExp = function (re, groups) {\n return new BabelRegExp(re, void 0, groups);\n };\n\n var _super = RegExp.prototype,\n _groups = new WeakMap();\n\n function BabelRegExp(re, flags, groups) {\n var _this = new RegExp(re, flags);\n\n return _groups.set(_this, groups || _groups.get(re)), _setPrototypeOf(_this, BabelRegExp.prototype);\n }\n\n function buildGroups(result, re) {\n var g = _groups.get(re);\n\n return Object.keys(g).reduce(function (groups, name) {\n return groups[name] = result[g[name]], groups;\n }, Object.create(null));\n }\n\n return _inherits(BabelRegExp, RegExp), BabelRegExp.prototype.exec = function (str) {\n var result = _super.exec.call(this, str);\n\n return result && (result.groups = buildGroups(result, this)), result;\n }, BabelRegExp.prototype[Symbol.replace] = function (str, substitution) {\n if (\"string\" == typeof substitution) {\n var groups = _groups.get(this);\n\n return _super[Symbol.replace].call(this, str, substitution.replace(/\\$<([^>]+)>/g, function (_, name) {\n return \"$\" + groups[name];\n }));\n }\n\n if (\"function\" == typeof substitution) {\n var _this = this;\n\n return _super[Symbol.replace].call(this, str, function () {\n var args = arguments;\n return \"object\" != typeof args[args.length - 1] && (args = [].slice.call(args)).push(buildGroups(args, _this)), substitution.apply(this, args);\n });\n }\n\n return _super[Symbol.replace].call(this, str, substitution);\n }, _wrapRegExp.apply(this, arguments);\n}\n\nfunction _classCallCheck(instance, Constructor) {\n if (!(instance instanceof Constructor)) {\n throw new TypeError(\"Cannot call a class as a function\");\n }\n}\n\nfunction _defineProperties(target, props) {\n for (var i = 0; i < props.length; i++) {\n var descriptor = props[i];\n descriptor.enumerable = descriptor.enumerable || false;\n descriptor.configurable = true;\n if (\"value\" in descriptor) descriptor.writable = true;\n Object.defineProperty(target, descriptor.key, descriptor);\n }\n}\n\nfunction _createClass(Constructor, protoProps, staticProps) {\n if (protoProps) _defineProperties(Constructor.prototype, protoProps);\n if (staticProps) _defineProperties(Constructor, staticProps);\n Object.defineProperty(Constructor, \"prototype\", {\n writable: false\n });\n return Constructor;\n}\n\nfunction _defineProperty(obj, key, value) {\n if (key in obj) {\n Object.defineProperty(obj, key, {\n value: value,\n enumerable: true,\n configurable: true,\n writable: true\n });\n } else {\n obj[key] = value;\n }\n\n return obj;\n}\n\nfunction _inherits(subClass, superClass) {\n if (typeof superClass !== \"function\" && superClass !== null) {\n throw new TypeError(\"Super expression must either be null or a function\");\n }\n\n subClass.prototype = Object.create(superClass && superClass.prototype, {\n constructor: {\n value: subClass,\n writable: true,\n configurable: true\n }\n });\n Object.defineProperty(subClass, \"prototype\", {\n writable: false\n });\n if (superClass) _setPrototypeOf(subClass, superClass);\n}\n\nfunction _setPrototypeOf(o, p) {\n _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) {\n o.__proto__ = p;\n return o;\n };\n\n return _setPrototypeOf(o, p);\n}\n\nfunction _slicedToArray(arr, i) {\n return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest();\n}\n\nfunction _toConsumableArray(arr) {\n return _arrayWithoutHoles(arr) || _iterableToArray(arr) || _unsupportedIterableToArray(arr) || _nonIterableSpread();\n}\n\nfunction _arrayWithoutHoles(arr) {\n if (Array.isArray(arr)) return _arrayLikeToArray(arr);\n}\n\nfunction _arrayWithHoles(arr) {\n if (Array.isArray(arr)) return arr;\n}\n\nfunction _iterableToArray(iter) {\n if (typeof Symbol !== \"undefined\" && iter[Symbol.iterator] != null || iter[\"@@iterator\"] != null) return Array.from(iter);\n}\n\nfunction _iterableToArrayLimit(arr, i) {\n var _i = arr == null ? null : typeof Symbol !== \"undefined\" && arr[Symbol.iterator] || arr[\"@@iterator\"];\n\n if (_i == null) return;\n var _arr = [];\n var _n = true;\n var _d = false;\n\n var _s, _e;\n\n try {\n for (_i = _i.call(arr); !(_n = (_s = _i.next()).done); _n = true) {\n _arr.push(_s.value);\n\n if (i && _arr.length === i) break;\n }\n } catch (err) {\n _d = true;\n _e = err;\n } finally {\n try {\n if (!_n && _i[\"return\"] != null) _i[\"return\"]();\n } finally {\n if (_d) throw _e;\n }\n }\n\n return _arr;\n}\n\nfunction _unsupportedIterableToArray(o, minLen) {\n if (!o) return;\n if (typeof o === \"string\") return _arrayLikeToArray(o, minLen);\n var n = Object.prototype.toString.call(o).slice(8, -1);\n if (n === \"Object\" && o.constructor) n = o.constructor.name;\n if (n === \"Map\" || n === \"Set\") return Array.from(o);\n if (n === \"Arguments\" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen);\n}\n\nfunction _arrayLikeToArray(arr, len) {\n if (len == null || len > arr.length) len = arr.length;\n\n for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i];\n\n return arr2;\n}\n\nfunction _nonIterableSpread() {\n throw new TypeError(\"Invalid attempt to spread non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\");\n}\n\nfunction _nonIterableRest() {\n throw new TypeError(\"Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\");\n}\n\nvar noop = function noop() {};\n\nvar _WINDOW = {};\nvar _DOCUMENT = {};\nvar _MUTATION_OBSERVER = null;\nvar _PERFORMANCE = {\n mark: noop,\n measure: noop\n};\n\ntry {\n if (typeof window !== 'undefined') _WINDOW = window;\n if (typeof document !== 'undefined') _DOCUMENT = document;\n if (typeof MutationObserver !== 'undefined') _MUTATION_OBSERVER = MutationObserver;\n if (typeof performance !== 'undefined') _PERFORMANCE = performance;\n} catch (e) {}\n\nvar _ref = _WINDOW.navigator || {},\n _ref$userAgent = _ref.userAgent,\n userAgent = _ref$userAgent === void 0 ? '' : _ref$userAgent;\nvar WINDOW = _WINDOW;\nvar DOCUMENT = _DOCUMENT;\nvar MUTATION_OBSERVER = _MUTATION_OBSERVER;\nvar PERFORMANCE = _PERFORMANCE;\nvar IS_BROWSER = !!WINDOW.document;\nvar IS_DOM = !!DOCUMENT.documentElement && !!DOCUMENT.head && typeof DOCUMENT.addEventListener === 'function' && typeof DOCUMENT.createElement === 'function';\nvar IS_IE = ~userAgent.indexOf('MSIE') || ~userAgent.indexOf('Trident/');\n\nvar _familyProxy, _familyProxy2, _familyProxy3, _familyProxy4, _familyProxy5;\n\nvar NAMESPACE_IDENTIFIER = '___FONT_AWESOME___';\nvar UNITS_IN_GRID = 16;\nvar DEFAULT_CSS_PREFIX = 'fa';\nvar DEFAULT_REPLACEMENT_CLASS = 'svg-inline--fa';\nvar DATA_FA_I2SVG = 'data-fa-i2svg';\nvar DATA_FA_PSEUDO_ELEMENT = 'data-fa-pseudo-element';\nvar DATA_FA_PSEUDO_ELEMENT_PENDING = 'data-fa-pseudo-element-pending';\nvar DATA_PREFIX = 'data-prefix';\nvar DATA_ICON = 'data-icon';\nvar HTML_CLASS_I2SVG_BASE_CLASS = 'fontawesome-i2svg';\nvar MUTATION_APPROACH_ASYNC = 'async';\nvar TAGNAMES_TO_SKIP_FOR_PSEUDOELEMENTS = ['HTML', 'HEAD', 'STYLE', 'SCRIPT'];\nvar PRODUCTION = function () {\n try {\n return process.env.NODE_ENV === 'production';\n } catch (e) {\n return false;\n }\n}();\nvar FAMILY_CLASSIC = 'classic';\nvar FAMILY_SHARP = 'sharp';\nvar FAMILIES = [FAMILY_CLASSIC, FAMILY_SHARP];\n\nfunction familyProxy(obj) {\n // Defaults to the classic family if family is not available\n return new Proxy(obj, {\n get: function get(target, prop) {\n return prop in target ? target[prop] : target[FAMILY_CLASSIC];\n }\n });\n}\nvar PREFIX_TO_STYLE = familyProxy((_familyProxy = {}, _defineProperty(_familyProxy, FAMILY_CLASSIC, {\n 'fa': 'solid',\n 'fas': 'solid',\n 'fa-solid': 'solid',\n 'far': 'regular',\n 'fa-regular': 'regular',\n 'fal': 'light',\n 'fa-light': 'light',\n 'fat': 'thin',\n 'fa-thin': 'thin',\n 'fad': 'duotone',\n 'fa-duotone': 'duotone',\n 'fab': 'brands',\n 'fa-brands': 'brands',\n 'fak': 'kit',\n 'fa-kit': 'kit'\n}), _defineProperty(_familyProxy, FAMILY_SHARP, {\n 'fa': 'solid',\n 'fass': 'solid',\n 'fa-solid': 'solid',\n 'fasr': 'regular',\n 'fa-regular': 'regular'\n}), _familyProxy));\nvar STYLE_TO_PREFIX = familyProxy((_familyProxy2 = {}, _defineProperty(_familyProxy2, FAMILY_CLASSIC, {\n 'solid': 'fas',\n 'regular': 'far',\n 'light': 'fal',\n 'thin': 'fat',\n 'duotone': 'fad',\n 'brands': 'fab',\n 'kit': 'fak'\n}), _defineProperty(_familyProxy2, FAMILY_SHARP, {\n 'solid': 'fass',\n 'regular': 'fasr'\n}), _familyProxy2));\nvar PREFIX_TO_LONG_STYLE = familyProxy((_familyProxy3 = {}, _defineProperty(_familyProxy3, FAMILY_CLASSIC, {\n 'fab': 'fa-brands',\n 'fad': 'fa-duotone',\n 'fak': 'fa-kit',\n 'fal': 'fa-light',\n 'far': 'fa-regular',\n 'fas': 'fa-solid',\n 'fat': 'fa-thin'\n}), _defineProperty(_familyProxy3, FAMILY_SHARP, {\n 'fass': 'fa-solid',\n 'fasr': 'fa-regular'\n}), _familyProxy3));\nvar LONG_STYLE_TO_PREFIX = familyProxy((_familyProxy4 = {}, _defineProperty(_familyProxy4, FAMILY_CLASSIC, {\n 'fa-brands': 'fab',\n 'fa-duotone': 'fad',\n 'fa-kit': 'fak',\n 'fa-light': 'fal',\n 'fa-regular': 'far',\n 'fa-solid': 'fas',\n 'fa-thin': 'fat'\n}), _defineProperty(_familyProxy4, FAMILY_SHARP, {\n 'fa-solid': 'fass',\n 'fa-regular': 'fasr'\n}), _familyProxy4));\nvar ICON_SELECTION_SYNTAX_PATTERN = /fa(s|r|l|t|d|b|k|ss|sr)?[\\-\\ ]/; // eslint-disable-line no-useless-escape\n\nvar LAYERS_TEXT_CLASSNAME = 'fa-layers-text';\nvar FONT_FAMILY_PATTERN = /Font ?Awesome ?([56 ]*)(Solid|Regular|Light|Thin|Duotone|Brands|Free|Pro|Sharp|Kit)?.*/i;\nvar FONT_WEIGHT_TO_PREFIX = familyProxy((_familyProxy5 = {}, _defineProperty(_familyProxy5, FAMILY_CLASSIC, {\n '900': 'fas',\n '400': 'far',\n 'normal': 'far',\n '300': 'fal',\n '100': 'fat'\n}), _defineProperty(_familyProxy5, FAMILY_SHARP, {\n '900': 'fass',\n '400': 'fasr'\n}), _familyProxy5));\nvar oneToTen = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10];\nvar oneToTwenty = oneToTen.concat([11, 12, 13, 14, 15, 16, 17, 18, 19, 20]);\nvar ATTRIBUTES_WATCHED_FOR_MUTATION = ['class', 'data-prefix', 'data-icon', 'data-fa-transform', 'data-fa-mask'];\nvar DUOTONE_CLASSES = {\n GROUP: 'duotone-group',\n SWAP_OPACITY: 'swap-opacity',\n PRIMARY: 'primary',\n SECONDARY: 'secondary'\n};\nvar prefixes = new Set();\nObject.keys(STYLE_TO_PREFIX[FAMILY_CLASSIC]).map(prefixes.add.bind(prefixes));\nObject.keys(STYLE_TO_PREFIX[FAMILY_SHARP]).map(prefixes.add.bind(prefixes));\nvar RESERVED_CLASSES = [].concat(FAMILIES, _toConsumableArray(prefixes), ['2xs', 'xs', 'sm', 'lg', 'xl', '2xl', 'beat', 'border', 'fade', 'beat-fade', 'bounce', 'flip-both', 'flip-horizontal', 'flip-vertical', 'flip', 'fw', 'inverse', 'layers-counter', 'layers-text', 'layers', 'li', 'pull-left', 'pull-right', 'pulse', 'rotate-180', 'rotate-270', 'rotate-90', 'rotate-by', 'shake', 'spin-pulse', 'spin-reverse', 'spin', 'stack-1x', 'stack-2x', 'stack', 'ul', DUOTONE_CLASSES.GROUP, DUOTONE_CLASSES.SWAP_OPACITY, DUOTONE_CLASSES.PRIMARY, DUOTONE_CLASSES.SECONDARY]).concat(oneToTen.map(function (n) {\n return \"\".concat(n, \"x\");\n})).concat(oneToTwenty.map(function (n) {\n return \"w-\".concat(n);\n}));\n\nvar initial = WINDOW.FontAwesomeConfig || {};\n\nfunction getAttrConfig(attr) {\n var element = DOCUMENT.querySelector('script[' + attr + ']');\n\n if (element) {\n return element.getAttribute(attr);\n }\n}\n\nfunction coerce(val) {\n // Getting an empty string will occur if the attribute is set on the HTML tag but without a value\n // We'll assume that this is an indication that it should be toggled to true\n if (val === '') return true;\n if (val === 'false') return false;\n if (val === 'true') return true;\n return val;\n}\n\nif (DOCUMENT && typeof DOCUMENT.querySelector === 'function') {\n var attrs = [['data-family-prefix', 'familyPrefix'], ['data-css-prefix', 'cssPrefix'], ['data-family-default', 'familyDefault'], ['data-style-default', 'styleDefault'], ['data-replacement-class', 'replacementClass'], ['data-auto-replace-svg', 'autoReplaceSvg'], ['data-auto-add-css', 'autoAddCss'], ['data-auto-a11y', 'autoA11y'], ['data-search-pseudo-elements', 'searchPseudoElements'], ['data-observe-mutations', 'observeMutations'], ['data-mutate-approach', 'mutateApproach'], ['data-keep-original-source', 'keepOriginalSource'], ['data-measure-performance', 'measurePerformance'], ['data-show-missing-icons', 'showMissingIcons']];\n attrs.forEach(function (_ref) {\n var _ref2 = _slicedToArray(_ref, 2),\n attr = _ref2[0],\n key = _ref2[1];\n\n var val = coerce(getAttrConfig(attr));\n\n if (val !== undefined && val !== null) {\n initial[key] = val;\n }\n });\n}\n\nvar _default = {\n styleDefault: 'solid',\n familyDefault: 'classic',\n cssPrefix: DEFAULT_CSS_PREFIX,\n replacementClass: DEFAULT_REPLACEMENT_CLASS,\n autoReplaceSvg: true,\n autoAddCss: true,\n autoA11y: true,\n searchPseudoElements: false,\n observeMutations: true,\n mutateApproach: 'async',\n keepOriginalSource: true,\n measurePerformance: false,\n showMissingIcons: true\n}; // familyPrefix is deprecated but we must still support it if present\n\nif (initial.familyPrefix) {\n initial.cssPrefix = initial.familyPrefix;\n}\n\nvar _config = _objectSpread2(_objectSpread2({}, _default), initial);\n\nif (!_config.autoReplaceSvg) _config.observeMutations = false;\nvar config = {};\nObject.keys(_default).forEach(function (key) {\n Object.defineProperty(config, key, {\n enumerable: true,\n set: function set(val) {\n _config[key] = val;\n\n _onChangeCb.forEach(function (cb) {\n return cb(config);\n });\n },\n get: function get() {\n return _config[key];\n }\n });\n}); // familyPrefix is deprecated as of 6.2.0 and should be removed in 7.0.0\n\nObject.defineProperty(config, 'familyPrefix', {\n enumerable: true,\n set: function set(val) {\n _config.cssPrefix = val;\n\n _onChangeCb.forEach(function (cb) {\n return cb(config);\n });\n },\n get: function get() {\n return _config.cssPrefix;\n }\n});\nWINDOW.FontAwesomeConfig = config;\nvar _onChangeCb = [];\nfunction onChange(cb) {\n _onChangeCb.push(cb);\n\n return function () {\n _onChangeCb.splice(_onChangeCb.indexOf(cb), 1);\n };\n}\n\nvar d = UNITS_IN_GRID;\nvar meaninglessTransform = {\n size: 16,\n x: 0,\n y: 0,\n rotate: 0,\n flipX: false,\n flipY: false\n};\nfunction insertCss(css) {\n if (!css || !IS_DOM) {\n return;\n }\n\n var style = DOCUMENT.createElement('style');\n style.setAttribute('type', 'text/css');\n style.innerHTML = css;\n var headChildren = DOCUMENT.head.childNodes;\n var beforeChild = null;\n\n for (var i = headChildren.length - 1; i > -1; i--) {\n var child = headChildren[i];\n var tagName = (child.tagName || '').toUpperCase();\n\n if (['STYLE', 'LINK'].indexOf(tagName) > -1) {\n beforeChild = child;\n }\n }\n\n DOCUMENT.head.insertBefore(style, beforeChild);\n return css;\n}\nvar idPool = '0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ';\nfunction nextUniqueId() {\n var size = 12;\n var id = '';\n\n while (size-- > 0) {\n id += idPool[Math.random() * 62 | 0];\n }\n\n return id;\n}\nfunction toArray(obj) {\n var array = [];\n\n for (var i = (obj || []).length >>> 0; i--;) {\n array[i] = obj[i];\n }\n\n return array;\n}\nfunction classArray(node) {\n if (node.classList) {\n return toArray(node.classList);\n } else {\n return (node.getAttribute('class') || '').split(' ').filter(function (i) {\n return i;\n });\n }\n}\nfunction htmlEscape(str) {\n return \"\".concat(str).replace(/&/g, '&').replace(/\"/g, '"').replace(/'/g, ''').replace(//g, '>');\n}\nfunction joinAttributes(attributes) {\n return Object.keys(attributes || {}).reduce(function (acc, attributeName) {\n return acc + \"\".concat(attributeName, \"=\\\"\").concat(htmlEscape(attributes[attributeName]), \"\\\" \");\n }, '').trim();\n}\nfunction joinStyles(styles) {\n return Object.keys(styles || {}).reduce(function (acc, styleName) {\n return acc + \"\".concat(styleName, \": \").concat(styles[styleName].trim(), \";\");\n }, '');\n}\nfunction transformIsMeaningful(transform) {\n return transform.size !== meaninglessTransform.size || transform.x !== meaninglessTransform.x || transform.y !== meaninglessTransform.y || transform.rotate !== meaninglessTransform.rotate || transform.flipX || transform.flipY;\n}\nfunction transformForSvg(_ref) {\n var transform = _ref.transform,\n containerWidth = _ref.containerWidth,\n iconWidth = _ref.iconWidth;\n var outer = {\n transform: \"translate(\".concat(containerWidth / 2, \" 256)\")\n };\n var innerTranslate = \"translate(\".concat(transform.x * 32, \", \").concat(transform.y * 32, \") \");\n var innerScale = \"scale(\".concat(transform.size / 16 * (transform.flipX ? -1 : 1), \", \").concat(transform.size / 16 * (transform.flipY ? -1 : 1), \") \");\n var innerRotate = \"rotate(\".concat(transform.rotate, \" 0 0)\");\n var inner = {\n transform: \"\".concat(innerTranslate, \" \").concat(innerScale, \" \").concat(innerRotate)\n };\n var path = {\n transform: \"translate(\".concat(iconWidth / 2 * -1, \" -256)\")\n };\n return {\n outer: outer,\n inner: inner,\n path: path\n };\n}\nfunction transformForCss(_ref2) {\n var transform = _ref2.transform,\n _ref2$width = _ref2.width,\n width = _ref2$width === void 0 ? UNITS_IN_GRID : _ref2$width,\n _ref2$height = _ref2.height,\n height = _ref2$height === void 0 ? UNITS_IN_GRID : _ref2$height,\n _ref2$startCentered = _ref2.startCentered,\n startCentered = _ref2$startCentered === void 0 ? false : _ref2$startCentered;\n var val = '';\n\n if (startCentered && IS_IE) {\n val += \"translate(\".concat(transform.x / d - width / 2, \"em, \").concat(transform.y / d - height / 2, \"em) \");\n } else if (startCentered) {\n val += \"translate(calc(-50% + \".concat(transform.x / d, \"em), calc(-50% + \").concat(transform.y / d, \"em)) \");\n } else {\n val += \"translate(\".concat(transform.x / d, \"em, \").concat(transform.y / d, \"em) \");\n }\n\n val += \"scale(\".concat(transform.size / d * (transform.flipX ? -1 : 1), \", \").concat(transform.size / d * (transform.flipY ? -1 : 1), \") \");\n val += \"rotate(\".concat(transform.rotate, \"deg) \");\n return val;\n}\n\nvar baseStyles = \":root, :host {\\n --fa-font-solid: normal 900 1em/1 \\\"Font Awesome 6 Solid\\\";\\n --fa-font-regular: normal 400 1em/1 \\\"Font Awesome 6 Regular\\\";\\n --fa-font-light: normal 300 1em/1 \\\"Font Awesome 6 Light\\\";\\n --fa-font-thin: normal 100 1em/1 \\\"Font Awesome 6 Thin\\\";\\n --fa-font-duotone: normal 900 1em/1 \\\"Font Awesome 6 Duotone\\\";\\n --fa-font-sharp-solid: normal 900 1em/1 \\\"Font Awesome 6 Sharp\\\";\\n --fa-font-sharp-regular: normal 400 1em/1 \\\"Font Awesome 6 Sharp\\\";\\n --fa-font-brands: normal 400 1em/1 \\\"Font Awesome 6 Brands\\\";\\n}\\n\\nsvg:not(:root).svg-inline--fa, svg:not(:host).svg-inline--fa {\\n overflow: visible;\\n box-sizing: content-box;\\n}\\n\\n.svg-inline--fa {\\n display: var(--fa-display, inline-block);\\n height: 1em;\\n overflow: visible;\\n vertical-align: -0.125em;\\n}\\n.svg-inline--fa.fa-2xs {\\n vertical-align: 0.1em;\\n}\\n.svg-inline--fa.fa-xs {\\n vertical-align: 0em;\\n}\\n.svg-inline--fa.fa-sm {\\n vertical-align: -0.0714285705em;\\n}\\n.svg-inline--fa.fa-lg {\\n vertical-align: -0.2em;\\n}\\n.svg-inline--fa.fa-xl {\\n vertical-align: -0.25em;\\n}\\n.svg-inline--fa.fa-2xl {\\n vertical-align: -0.3125em;\\n}\\n.svg-inline--fa.fa-pull-left {\\n margin-right: var(--fa-pull-margin, 0.3em);\\n width: auto;\\n}\\n.svg-inline--fa.fa-pull-right {\\n margin-left: var(--fa-pull-margin, 0.3em);\\n width: auto;\\n}\\n.svg-inline--fa.fa-li {\\n width: var(--fa-li-width, 2em);\\n top: 0.25em;\\n}\\n.svg-inline--fa.fa-fw {\\n width: var(--fa-fw-width, 1.25em);\\n}\\n\\n.fa-layers svg.svg-inline--fa {\\n bottom: 0;\\n left: 0;\\n margin: auto;\\n position: absolute;\\n right: 0;\\n top: 0;\\n}\\n\\n.fa-layers-counter, .fa-layers-text {\\n display: inline-block;\\n position: absolute;\\n text-align: center;\\n}\\n\\n.fa-layers {\\n display: inline-block;\\n height: 1em;\\n position: relative;\\n text-align: center;\\n vertical-align: -0.125em;\\n width: 1em;\\n}\\n.fa-layers svg.svg-inline--fa {\\n -webkit-transform-origin: center center;\\n transform-origin: center center;\\n}\\n\\n.fa-layers-text {\\n left: 50%;\\n top: 50%;\\n -webkit-transform: translate(-50%, -50%);\\n transform: translate(-50%, -50%);\\n -webkit-transform-origin: center center;\\n transform-origin: center center;\\n}\\n\\n.fa-layers-counter {\\n background-color: var(--fa-counter-background-color, #ff253a);\\n border-radius: var(--fa-counter-border-radius, 1em);\\n box-sizing: border-box;\\n color: var(--fa-inverse, #fff);\\n line-height: var(--fa-counter-line-height, 1);\\n max-width: var(--fa-counter-max-width, 5em);\\n min-width: var(--fa-counter-min-width, 1.5em);\\n overflow: hidden;\\n padding: var(--fa-counter-padding, 0.25em 0.5em);\\n right: var(--fa-right, 0);\\n text-overflow: ellipsis;\\n top: var(--fa-top, 0);\\n -webkit-transform: scale(var(--fa-counter-scale, 0.25));\\n transform: scale(var(--fa-counter-scale, 0.25));\\n -webkit-transform-origin: top right;\\n transform-origin: top right;\\n}\\n\\n.fa-layers-bottom-right {\\n bottom: var(--fa-bottom, 0);\\n right: var(--fa-right, 0);\\n top: auto;\\n -webkit-transform: scale(var(--fa-layers-scale, 0.25));\\n transform: scale(var(--fa-layers-scale, 0.25));\\n -webkit-transform-origin: bottom right;\\n transform-origin: bottom right;\\n}\\n\\n.fa-layers-bottom-left {\\n bottom: var(--fa-bottom, 0);\\n left: var(--fa-left, 0);\\n right: auto;\\n top: auto;\\n -webkit-transform: scale(var(--fa-layers-scale, 0.25));\\n transform: scale(var(--fa-layers-scale, 0.25));\\n -webkit-transform-origin: bottom left;\\n transform-origin: bottom left;\\n}\\n\\n.fa-layers-top-right {\\n top: var(--fa-top, 0);\\n right: var(--fa-right, 0);\\n -webkit-transform: scale(var(--fa-layers-scale, 0.25));\\n transform: scale(var(--fa-layers-scale, 0.25));\\n -webkit-transform-origin: top right;\\n transform-origin: top right;\\n}\\n\\n.fa-layers-top-left {\\n left: var(--fa-left, 0);\\n right: auto;\\n top: var(--fa-top, 0);\\n -webkit-transform: scale(var(--fa-layers-scale, 0.25));\\n transform: scale(var(--fa-layers-scale, 0.25));\\n -webkit-transform-origin: top left;\\n transform-origin: top left;\\n}\\n\\n.fa-1x {\\n font-size: 1em;\\n}\\n\\n.fa-2x {\\n font-size: 2em;\\n}\\n\\n.fa-3x {\\n font-size: 3em;\\n}\\n\\n.fa-4x {\\n font-size: 4em;\\n}\\n\\n.fa-5x {\\n font-size: 5em;\\n}\\n\\n.fa-6x {\\n font-size: 6em;\\n}\\n\\n.fa-7x {\\n font-size: 7em;\\n}\\n\\n.fa-8x {\\n font-size: 8em;\\n}\\n\\n.fa-9x {\\n font-size: 9em;\\n}\\n\\n.fa-10x {\\n font-size: 10em;\\n}\\n\\n.fa-2xs {\\n font-size: 0.625em;\\n line-height: 0.1em;\\n vertical-align: 0.225em;\\n}\\n\\n.fa-xs {\\n font-size: 0.75em;\\n line-height: 0.0833333337em;\\n vertical-align: 0.125em;\\n}\\n\\n.fa-sm {\\n font-size: 0.875em;\\n line-height: 0.0714285718em;\\n vertical-align: 0.0535714295em;\\n}\\n\\n.fa-lg {\\n font-size: 1.25em;\\n line-height: 0.05em;\\n vertical-align: -0.075em;\\n}\\n\\n.fa-xl {\\n font-size: 1.5em;\\n line-height: 0.0416666682em;\\n vertical-align: -0.125em;\\n}\\n\\n.fa-2xl {\\n font-size: 2em;\\n line-height: 0.03125em;\\n vertical-align: -0.1875em;\\n}\\n\\n.fa-fw {\\n text-align: center;\\n width: 1.25em;\\n}\\n\\n.fa-ul {\\n list-style-type: none;\\n margin-left: var(--fa-li-margin, 2.5em);\\n padding-left: 0;\\n}\\n.fa-ul > li {\\n position: relative;\\n}\\n\\n.fa-li {\\n left: calc(var(--fa-li-width, 2em) * -1);\\n position: absolute;\\n text-align: center;\\n width: var(--fa-li-width, 2em);\\n line-height: inherit;\\n}\\n\\n.fa-border {\\n border-color: var(--fa-border-color, #eee);\\n border-radius: var(--fa-border-radius, 0.1em);\\n border-style: var(--fa-border-style, solid);\\n border-width: var(--fa-border-width, 0.08em);\\n padding: var(--fa-border-padding, 0.2em 0.25em 0.15em);\\n}\\n\\n.fa-pull-left {\\n float: left;\\n margin-right: var(--fa-pull-margin, 0.3em);\\n}\\n\\n.fa-pull-right {\\n float: right;\\n margin-left: var(--fa-pull-margin, 0.3em);\\n}\\n\\n.fa-beat {\\n -webkit-animation-name: fa-beat;\\n animation-name: fa-beat;\\n -webkit-animation-delay: var(--fa-animation-delay, 0s);\\n animation-delay: var(--fa-animation-delay, 0s);\\n -webkit-animation-direction: var(--fa-animation-direction, normal);\\n animation-direction: var(--fa-animation-direction, normal);\\n -webkit-animation-duration: var(--fa-animation-duration, 1s);\\n animation-duration: var(--fa-animation-duration, 1s);\\n -webkit-animation-iteration-count: var(--fa-animation-iteration-count, infinite);\\n animation-iteration-count: var(--fa-animation-iteration-count, infinite);\\n -webkit-animation-timing-function: var(--fa-animation-timing, ease-in-out);\\n animation-timing-function: var(--fa-animation-timing, ease-in-out);\\n}\\n\\n.fa-bounce {\\n -webkit-animation-name: fa-bounce;\\n animation-name: fa-bounce;\\n -webkit-animation-delay: var(--fa-animation-delay, 0s);\\n animation-delay: var(--fa-animation-delay, 0s);\\n -webkit-animation-direction: var(--fa-animation-direction, normal);\\n animation-direction: var(--fa-animation-direction, normal);\\n -webkit-animation-duration: var(--fa-animation-duration, 1s);\\n animation-duration: var(--fa-animation-duration, 1s);\\n -webkit-animation-iteration-count: var(--fa-animation-iteration-count, infinite);\\n animation-iteration-count: var(--fa-animation-iteration-count, infinite);\\n -webkit-animation-timing-function: var(--fa-animation-timing, cubic-bezier(0.28, 0.84, 0.42, 1));\\n animation-timing-function: var(--fa-animation-timing, cubic-bezier(0.28, 0.84, 0.42, 1));\\n}\\n\\n.fa-fade {\\n -webkit-animation-name: fa-fade;\\n animation-name: fa-fade;\\n -webkit-animation-delay: var(--fa-animation-delay, 0s);\\n animation-delay: var(--fa-animation-delay, 0s);\\n -webkit-animation-direction: var(--fa-animation-direction, normal);\\n animation-direction: var(--fa-animation-direction, normal);\\n -webkit-animation-duration: var(--fa-animation-duration, 1s);\\n animation-duration: var(--fa-animation-duration, 1s);\\n -webkit-animation-iteration-count: var(--fa-animation-iteration-count, infinite);\\n animation-iteration-count: var(--fa-animation-iteration-count, infinite);\\n -webkit-animation-timing-function: var(--fa-animation-timing, cubic-bezier(0.4, 0, 0.6, 1));\\n animation-timing-function: var(--fa-animation-timing, cubic-bezier(0.4, 0, 0.6, 1));\\n}\\n\\n.fa-beat-fade {\\n -webkit-animation-name: fa-beat-fade;\\n animation-name: fa-beat-fade;\\n -webkit-animation-delay: var(--fa-animation-delay, 0s);\\n animation-delay: var(--fa-animation-delay, 0s);\\n -webkit-animation-direction: var(--fa-animation-direction, normal);\\n animation-direction: var(--fa-animation-direction, normal);\\n -webkit-animation-duration: var(--fa-animation-duration, 1s);\\n animation-duration: var(--fa-animation-duration, 1s);\\n -webkit-animation-iteration-count: var(--fa-animation-iteration-count, infinite);\\n animation-iteration-count: var(--fa-animation-iteration-count, infinite);\\n -webkit-animation-timing-function: var(--fa-animation-timing, cubic-bezier(0.4, 0, 0.6, 1));\\n animation-timing-function: var(--fa-animation-timing, cubic-bezier(0.4, 0, 0.6, 1));\\n}\\n\\n.fa-flip {\\n -webkit-animation-name: fa-flip;\\n animation-name: fa-flip;\\n -webkit-animation-delay: var(--fa-animation-delay, 0s);\\n animation-delay: var(--fa-animation-delay, 0s);\\n -webkit-animation-direction: var(--fa-animation-direction, normal);\\n animation-direction: var(--fa-animation-direction, normal);\\n -webkit-animation-duration: var(--fa-animation-duration, 1s);\\n animation-duration: var(--fa-animation-duration, 1s);\\n -webkit-animation-iteration-count: var(--fa-animation-iteration-count, infinite);\\n animation-iteration-count: var(--fa-animation-iteration-count, infinite);\\n -webkit-animation-timing-function: var(--fa-animation-timing, ease-in-out);\\n animation-timing-function: var(--fa-animation-timing, ease-in-out);\\n}\\n\\n.fa-shake {\\n -webkit-animation-name: fa-shake;\\n animation-name: fa-shake;\\n -webkit-animation-delay: var(--fa-animation-delay, 0s);\\n animation-delay: var(--fa-animation-delay, 0s);\\n -webkit-animation-direction: var(--fa-animation-direction, normal);\\n animation-direction: var(--fa-animation-direction, normal);\\n -webkit-animation-duration: var(--fa-animation-duration, 1s);\\n animation-duration: var(--fa-animation-duration, 1s);\\n -webkit-animation-iteration-count: var(--fa-animation-iteration-count, infinite);\\n animation-iteration-count: var(--fa-animation-iteration-count, infinite);\\n -webkit-animation-timing-function: var(--fa-animation-timing, linear);\\n animation-timing-function: var(--fa-animation-timing, linear);\\n}\\n\\n.fa-spin {\\n -webkit-animation-name: fa-spin;\\n animation-name: fa-spin;\\n -webkit-animation-delay: var(--fa-animation-delay, 0s);\\n animation-delay: var(--fa-animation-delay, 0s);\\n -webkit-animation-direction: var(--fa-animation-direction, normal);\\n animation-direction: var(--fa-animation-direction, normal);\\n -webkit-animation-duration: var(--fa-animation-duration, 2s);\\n animation-duration: var(--fa-animation-duration, 2s);\\n -webkit-animation-iteration-count: var(--fa-animation-iteration-count, infinite);\\n animation-iteration-count: var(--fa-animation-iteration-count, infinite);\\n -webkit-animation-timing-function: var(--fa-animation-timing, linear);\\n animation-timing-function: var(--fa-animation-timing, linear);\\n}\\n\\n.fa-spin-reverse {\\n --fa-animation-direction: reverse;\\n}\\n\\n.fa-pulse,\\n.fa-spin-pulse {\\n -webkit-animation-name: fa-spin;\\n animation-name: fa-spin;\\n -webkit-animation-direction: var(--fa-animation-direction, normal);\\n animation-direction: var(--fa-animation-direction, normal);\\n -webkit-animation-duration: var(--fa-animation-duration, 1s);\\n animation-duration: var(--fa-animation-duration, 1s);\\n -webkit-animation-iteration-count: var(--fa-animation-iteration-count, infinite);\\n animation-iteration-count: var(--fa-animation-iteration-count, infinite);\\n -webkit-animation-timing-function: var(--fa-animation-timing, steps(8));\\n animation-timing-function: var(--fa-animation-timing, steps(8));\\n}\\n\\n@media (prefers-reduced-motion: reduce) {\\n .fa-beat,\\n.fa-bounce,\\n.fa-fade,\\n.fa-beat-fade,\\n.fa-flip,\\n.fa-pulse,\\n.fa-shake,\\n.fa-spin,\\n.fa-spin-pulse {\\n -webkit-animation-delay: -1ms;\\n animation-delay: -1ms;\\n -webkit-animation-duration: 1ms;\\n animation-duration: 1ms;\\n -webkit-animation-iteration-count: 1;\\n animation-iteration-count: 1;\\n -webkit-transition-delay: 0s;\\n transition-delay: 0s;\\n -webkit-transition-duration: 0s;\\n transition-duration: 0s;\\n }\\n}\\n@-webkit-keyframes fa-beat {\\n 0%, 90% {\\n -webkit-transform: scale(1);\\n transform: scale(1);\\n }\\n 45% {\\n -webkit-transform: scale(var(--fa-beat-scale, 1.25));\\n transform: scale(var(--fa-beat-scale, 1.25));\\n }\\n}\\n@keyframes fa-beat {\\n 0%, 90% {\\n -webkit-transform: scale(1);\\n transform: scale(1);\\n }\\n 45% {\\n -webkit-transform: scale(var(--fa-beat-scale, 1.25));\\n transform: scale(var(--fa-beat-scale, 1.25));\\n }\\n}\\n@-webkit-keyframes fa-bounce {\\n 0% {\\n -webkit-transform: scale(1, 1) translateY(0);\\n transform: scale(1, 1) translateY(0);\\n }\\n 10% {\\n -webkit-transform: scale(var(--fa-bounce-start-scale-x, 1.1), var(--fa-bounce-start-scale-y, 0.9)) translateY(0);\\n transform: scale(var(--fa-bounce-start-scale-x, 1.1), var(--fa-bounce-start-scale-y, 0.9)) translateY(0);\\n }\\n 30% {\\n -webkit-transform: scale(var(--fa-bounce-jump-scale-x, 0.9), var(--fa-bounce-jump-scale-y, 1.1)) translateY(var(--fa-bounce-height, -0.5em));\\n transform: scale(var(--fa-bounce-jump-scale-x, 0.9), var(--fa-bounce-jump-scale-y, 1.1)) translateY(var(--fa-bounce-height, -0.5em));\\n }\\n 50% {\\n -webkit-transform: scale(var(--fa-bounce-land-scale-x, 1.05), var(--fa-bounce-land-scale-y, 0.95)) translateY(0);\\n transform: scale(var(--fa-bounce-land-scale-x, 1.05), var(--fa-bounce-land-scale-y, 0.95)) translateY(0);\\n }\\n 57% {\\n -webkit-transform: scale(1, 1) translateY(var(--fa-bounce-rebound, -0.125em));\\n transform: scale(1, 1) translateY(var(--fa-bounce-rebound, -0.125em));\\n }\\n 64% {\\n -webkit-transform: scale(1, 1) translateY(0);\\n transform: scale(1, 1) translateY(0);\\n }\\n 100% {\\n -webkit-transform: scale(1, 1) translateY(0);\\n transform: scale(1, 1) translateY(0);\\n }\\n}\\n@keyframes fa-bounce {\\n 0% {\\n -webkit-transform: scale(1, 1) translateY(0);\\n transform: scale(1, 1) translateY(0);\\n }\\n 10% {\\n -webkit-transform: scale(var(--fa-bounce-start-scale-x, 1.1), var(--fa-bounce-start-scale-y, 0.9)) translateY(0);\\n transform: scale(var(--fa-bounce-start-scale-x, 1.1), var(--fa-bounce-start-scale-y, 0.9)) translateY(0);\\n }\\n 30% {\\n -webkit-transform: scale(var(--fa-bounce-jump-scale-x, 0.9), var(--fa-bounce-jump-scale-y, 1.1)) translateY(var(--fa-bounce-height, -0.5em));\\n transform: scale(var(--fa-bounce-jump-scale-x, 0.9), var(--fa-bounce-jump-scale-y, 1.1)) translateY(var(--fa-bounce-height, -0.5em));\\n }\\n 50% {\\n -webkit-transform: scale(var(--fa-bounce-land-scale-x, 1.05), var(--fa-bounce-land-scale-y, 0.95)) translateY(0);\\n transform: scale(var(--fa-bounce-land-scale-x, 1.05), var(--fa-bounce-land-scale-y, 0.95)) translateY(0);\\n }\\n 57% {\\n -webkit-transform: scale(1, 1) translateY(var(--fa-bounce-rebound, -0.125em));\\n transform: scale(1, 1) translateY(var(--fa-bounce-rebound, -0.125em));\\n }\\n 64% {\\n -webkit-transform: scale(1, 1) translateY(0);\\n transform: scale(1, 1) translateY(0);\\n }\\n 100% {\\n -webkit-transform: scale(1, 1) translateY(0);\\n transform: scale(1, 1) translateY(0);\\n }\\n}\\n@-webkit-keyframes fa-fade {\\n 50% {\\n opacity: var(--fa-fade-opacity, 0.4);\\n }\\n}\\n@keyframes fa-fade {\\n 50% {\\n opacity: var(--fa-fade-opacity, 0.4);\\n }\\n}\\n@-webkit-keyframes fa-beat-fade {\\n 0%, 100% {\\n opacity: var(--fa-beat-fade-opacity, 0.4);\\n -webkit-transform: scale(1);\\n transform: scale(1);\\n }\\n 50% {\\n opacity: 1;\\n -webkit-transform: scale(var(--fa-beat-fade-scale, 1.125));\\n transform: scale(var(--fa-beat-fade-scale, 1.125));\\n }\\n}\\n@keyframes fa-beat-fade {\\n 0%, 100% {\\n opacity: var(--fa-beat-fade-opacity, 0.4);\\n -webkit-transform: scale(1);\\n transform: scale(1);\\n }\\n 50% {\\n opacity: 1;\\n -webkit-transform: scale(var(--fa-beat-fade-scale, 1.125));\\n transform: scale(var(--fa-beat-fade-scale, 1.125));\\n }\\n}\\n@-webkit-keyframes fa-flip {\\n 50% {\\n -webkit-transform: rotate3d(var(--fa-flip-x, 0), var(--fa-flip-y, 1), var(--fa-flip-z, 0), var(--fa-flip-angle, -180deg));\\n transform: rotate3d(var(--fa-flip-x, 0), var(--fa-flip-y, 1), var(--fa-flip-z, 0), var(--fa-flip-angle, -180deg));\\n }\\n}\\n@keyframes fa-flip {\\n 50% {\\n -webkit-transform: rotate3d(var(--fa-flip-x, 0), var(--fa-flip-y, 1), var(--fa-flip-z, 0), var(--fa-flip-angle, -180deg));\\n transform: rotate3d(var(--fa-flip-x, 0), var(--fa-flip-y, 1), var(--fa-flip-z, 0), var(--fa-flip-angle, -180deg));\\n }\\n}\\n@-webkit-keyframes fa-shake {\\n 0% {\\n -webkit-transform: rotate(-15deg);\\n transform: rotate(-15deg);\\n }\\n 4% {\\n -webkit-transform: rotate(15deg);\\n transform: rotate(15deg);\\n }\\n 8%, 24% {\\n -webkit-transform: rotate(-18deg);\\n transform: rotate(-18deg);\\n }\\n 12%, 28% {\\n -webkit-transform: rotate(18deg);\\n transform: rotate(18deg);\\n }\\n 16% {\\n -webkit-transform: rotate(-22deg);\\n transform: rotate(-22deg);\\n }\\n 20% {\\n -webkit-transform: rotate(22deg);\\n transform: rotate(22deg);\\n }\\n 32% {\\n -webkit-transform: rotate(-12deg);\\n transform: rotate(-12deg);\\n }\\n 36% {\\n -webkit-transform: rotate(12deg);\\n transform: rotate(12deg);\\n }\\n 40%, 100% {\\n -webkit-transform: rotate(0deg);\\n transform: rotate(0deg);\\n }\\n}\\n@keyframes fa-shake {\\n 0% {\\n -webkit-transform: rotate(-15deg);\\n transform: rotate(-15deg);\\n }\\n 4% {\\n -webkit-transform: rotate(15deg);\\n transform: rotate(15deg);\\n }\\n 8%, 24% {\\n -webkit-transform: rotate(-18deg);\\n transform: rotate(-18deg);\\n }\\n 12%, 28% {\\n -webkit-transform: rotate(18deg);\\n transform: rotate(18deg);\\n }\\n 16% {\\n -webkit-transform: rotate(-22deg);\\n transform: rotate(-22deg);\\n }\\n 20% {\\n -webkit-transform: rotate(22deg);\\n transform: rotate(22deg);\\n }\\n 32% {\\n -webkit-transform: rotate(-12deg);\\n transform: rotate(-12deg);\\n }\\n 36% {\\n -webkit-transform: rotate(12deg);\\n transform: rotate(12deg);\\n }\\n 40%, 100% {\\n -webkit-transform: rotate(0deg);\\n transform: rotate(0deg);\\n }\\n}\\n@-webkit-keyframes fa-spin {\\n 0% {\\n -webkit-transform: rotate(0deg);\\n transform: rotate(0deg);\\n }\\n 100% {\\n -webkit-transform: rotate(360deg);\\n transform: rotate(360deg);\\n }\\n}\\n@keyframes fa-spin {\\n 0% {\\n -webkit-transform: rotate(0deg);\\n transform: rotate(0deg);\\n }\\n 100% {\\n -webkit-transform: rotate(360deg);\\n transform: rotate(360deg);\\n }\\n}\\n.fa-rotate-90 {\\n -webkit-transform: rotate(90deg);\\n transform: rotate(90deg);\\n}\\n\\n.fa-rotate-180 {\\n -webkit-transform: rotate(180deg);\\n transform: rotate(180deg);\\n}\\n\\n.fa-rotate-270 {\\n -webkit-transform: rotate(270deg);\\n transform: rotate(270deg);\\n}\\n\\n.fa-flip-horizontal {\\n -webkit-transform: scale(-1, 1);\\n transform: scale(-1, 1);\\n}\\n\\n.fa-flip-vertical {\\n -webkit-transform: scale(1, -1);\\n transform: scale(1, -1);\\n}\\n\\n.fa-flip-both,\\n.fa-flip-horizontal.fa-flip-vertical {\\n -webkit-transform: scale(-1, -1);\\n transform: scale(-1, -1);\\n}\\n\\n.fa-rotate-by {\\n -webkit-transform: rotate(var(--fa-rotate-angle, none));\\n transform: rotate(var(--fa-rotate-angle, none));\\n}\\n\\n.fa-stack {\\n display: inline-block;\\n vertical-align: middle;\\n height: 2em;\\n position: relative;\\n width: 2.5em;\\n}\\n\\n.fa-stack-1x,\\n.fa-stack-2x {\\n bottom: 0;\\n left: 0;\\n margin: auto;\\n position: absolute;\\n right: 0;\\n top: 0;\\n z-index: var(--fa-stack-z-index, auto);\\n}\\n\\n.svg-inline--fa.fa-stack-1x {\\n height: 1em;\\n width: 1.25em;\\n}\\n.svg-inline--fa.fa-stack-2x {\\n height: 2em;\\n width: 2.5em;\\n}\\n\\n.fa-inverse {\\n color: var(--fa-inverse, #fff);\\n}\\n\\n.sr-only,\\n.fa-sr-only {\\n position: absolute;\\n width: 1px;\\n height: 1px;\\n padding: 0;\\n margin: -1px;\\n overflow: hidden;\\n clip: rect(0, 0, 0, 0);\\n white-space: nowrap;\\n border-width: 0;\\n}\\n\\n.sr-only-focusable:not(:focus),\\n.fa-sr-only-focusable:not(:focus) {\\n position: absolute;\\n width: 1px;\\n height: 1px;\\n padding: 0;\\n margin: -1px;\\n overflow: hidden;\\n clip: rect(0, 0, 0, 0);\\n white-space: nowrap;\\n border-width: 0;\\n}\\n\\n.svg-inline--fa .fa-primary {\\n fill: var(--fa-primary-color, currentColor);\\n opacity: var(--fa-primary-opacity, 1);\\n}\\n\\n.svg-inline--fa .fa-secondary {\\n fill: var(--fa-secondary-color, currentColor);\\n opacity: var(--fa-secondary-opacity, 0.4);\\n}\\n\\n.svg-inline--fa.fa-swap-opacity .fa-primary {\\n opacity: var(--fa-secondary-opacity, 0.4);\\n}\\n\\n.svg-inline--fa.fa-swap-opacity .fa-secondary {\\n opacity: var(--fa-primary-opacity, 1);\\n}\\n\\n.svg-inline--fa mask .fa-primary,\\n.svg-inline--fa mask .fa-secondary {\\n fill: black;\\n}\\n\\n.fad.fa-inverse,\\n.fa-duotone.fa-inverse {\\n color: var(--fa-inverse, #fff);\\n}\";\n\nfunction css() {\n var dcp = DEFAULT_CSS_PREFIX;\n var drc = DEFAULT_REPLACEMENT_CLASS;\n var fp = config.cssPrefix;\n var rc = config.replacementClass;\n var s = baseStyles;\n\n if (fp !== dcp || rc !== drc) {\n var dPatt = new RegExp(\"\\\\.\".concat(dcp, \"\\\\-\"), 'g');\n var customPropPatt = new RegExp(\"\\\\--\".concat(dcp, \"\\\\-\"), 'g');\n var rPatt = new RegExp(\"\\\\.\".concat(drc), 'g');\n s = s.replace(dPatt, \".\".concat(fp, \"-\")).replace(customPropPatt, \"--\".concat(fp, \"-\")).replace(rPatt, \".\".concat(rc));\n }\n\n return s;\n}\n\nvar _cssInserted = false;\n\nfunction ensureCss() {\n if (config.autoAddCss && !_cssInserted) {\n insertCss(css());\n _cssInserted = true;\n }\n}\n\nvar InjectCSS = {\n mixout: function mixout() {\n return {\n dom: {\n css: css,\n insertCss: ensureCss\n }\n };\n },\n hooks: function hooks() {\n return {\n beforeDOMElementCreation: function beforeDOMElementCreation() {\n ensureCss();\n },\n beforeI2svg: function beforeI2svg() {\n ensureCss();\n }\n };\n }\n};\n\nvar w = WINDOW || {};\nif (!w[NAMESPACE_IDENTIFIER]) w[NAMESPACE_IDENTIFIER] = {};\nif (!w[NAMESPACE_IDENTIFIER].styles) w[NAMESPACE_IDENTIFIER].styles = {};\nif (!w[NAMESPACE_IDENTIFIER].hooks) w[NAMESPACE_IDENTIFIER].hooks = {};\nif (!w[NAMESPACE_IDENTIFIER].shims) w[NAMESPACE_IDENTIFIER].shims = [];\nvar namespace = w[NAMESPACE_IDENTIFIER];\n\nvar functions = [];\n\nvar listener = function listener() {\n DOCUMENT.removeEventListener('DOMContentLoaded', listener);\n loaded = 1;\n functions.map(function (fn) {\n return fn();\n });\n};\n\nvar loaded = false;\n\nif (IS_DOM) {\n loaded = (DOCUMENT.documentElement.doScroll ? /^loaded|^c/ : /^loaded|^i|^c/).test(DOCUMENT.readyState);\n if (!loaded) DOCUMENT.addEventListener('DOMContentLoaded', listener);\n}\n\nfunction domready (fn) {\n if (!IS_DOM) return;\n loaded ? setTimeout(fn, 0) : functions.push(fn);\n}\n\nfunction toHtml(abstractNodes) {\n var tag = abstractNodes.tag,\n _abstractNodes$attrib = abstractNodes.attributes,\n attributes = _abstractNodes$attrib === void 0 ? {} : _abstractNodes$attrib,\n _abstractNodes$childr = abstractNodes.children,\n children = _abstractNodes$childr === void 0 ? [] : _abstractNodes$childr;\n\n if (typeof abstractNodes === 'string') {\n return htmlEscape(abstractNodes);\n } else {\n return \"<\".concat(tag, \" \").concat(joinAttributes(attributes), \">\").concat(children.map(toHtml).join(''), \"\");\n }\n}\n\nfunction iconFromMapping(mapping, prefix, iconName) {\n if (mapping && mapping[prefix] && mapping[prefix][iconName]) {\n return {\n prefix: prefix,\n iconName: iconName,\n icon: mapping[prefix][iconName]\n };\n }\n}\n\n/**\n * Internal helper to bind a function known to have 4 arguments\n * to a given context.\n */\n\nvar bindInternal4 = function bindInternal4(func, thisContext) {\n return function (a, b, c, d) {\n return func.call(thisContext, a, b, c, d);\n };\n};\n\n/**\n * # Reduce\n *\n * A fast object `.reduce()` implementation.\n *\n * @param {Object} subject The object to reduce over.\n * @param {Function} fn The reducer function.\n * @param {mixed} initialValue The initial value for the reducer, defaults to subject[0].\n * @param {Object} thisContext The context for the reducer.\n * @return {mixed} The final result.\n */\n\n\nvar reduce = function fastReduceObject(subject, fn, initialValue, thisContext) {\n var keys = Object.keys(subject),\n length = keys.length,\n iterator = thisContext !== undefined ? bindInternal4(fn, thisContext) : fn,\n i,\n key,\n result;\n\n if (initialValue === undefined) {\n i = 1;\n result = subject[keys[0]];\n } else {\n i = 0;\n result = initialValue;\n }\n\n for (; i < length; i++) {\n key = keys[i];\n result = iterator(result, subject[key], key, subject);\n }\n\n return result;\n};\n\n/**\n * ucs2decode() and codePointAt() are both works of Mathias Bynens and licensed under MIT\n *\n * Copyright Mathias Bynens \n\n * Permission is hereby granted, free of charge, to any person obtaining\n * a copy of this software and associated documentation files (the\n * \"Software\"), to deal in the Software without restriction, including\n * without limitation the rights to use, copy, modify, merge, publish,\n * distribute, sublicense, and/or sell copies of the Software, and to\n * permit persons to whom the Software is furnished to do so, subject to\n * the following conditions:\n\n * The above copyright notice and this permission notice shall be\n * included in all copies or substantial portions of the Software.\n\n * THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND,\n * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF\n * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND\n * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE\n * LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION\n * OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION\n * WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.\n */\nfunction ucs2decode(string) {\n var output = [];\n var counter = 0;\n var length = string.length;\n\n while (counter < length) {\n var value = string.charCodeAt(counter++);\n\n if (value >= 0xD800 && value <= 0xDBFF && counter < length) {\n var extra = string.charCodeAt(counter++);\n\n if ((extra & 0xFC00) == 0xDC00) {\n // eslint-disable-line eqeqeq\n output.push(((value & 0x3FF) << 10) + (extra & 0x3FF) + 0x10000);\n } else {\n output.push(value);\n counter--;\n }\n } else {\n output.push(value);\n }\n }\n\n return output;\n}\n\nfunction toHex(unicode) {\n var decoded = ucs2decode(unicode);\n return decoded.length === 1 ? decoded[0].toString(16) : null;\n}\nfunction codePointAt(string, index) {\n var size = string.length;\n var first = string.charCodeAt(index);\n var second;\n\n if (first >= 0xD800 && first <= 0xDBFF && size > index + 1) {\n second = string.charCodeAt(index + 1);\n\n if (second >= 0xDC00 && second <= 0xDFFF) {\n return (first - 0xD800) * 0x400 + second - 0xDC00 + 0x10000;\n }\n }\n\n return first;\n}\n\nfunction normalizeIcons(icons) {\n return Object.keys(icons).reduce(function (acc, iconName) {\n var icon = icons[iconName];\n var expanded = !!icon.icon;\n\n if (expanded) {\n acc[icon.iconName] = icon.icon;\n } else {\n acc[iconName] = icon;\n }\n\n return acc;\n }, {});\n}\n\nfunction defineIcons(prefix, icons) {\n var params = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};\n var _params$skipHooks = params.skipHooks,\n skipHooks = _params$skipHooks === void 0 ? false : _params$skipHooks;\n var normalized = normalizeIcons(icons);\n\n if (typeof namespace.hooks.addPack === 'function' && !skipHooks) {\n namespace.hooks.addPack(prefix, normalizeIcons(icons));\n } else {\n namespace.styles[prefix] = _objectSpread2(_objectSpread2({}, namespace.styles[prefix] || {}), normalized);\n }\n /**\n * Font Awesome 4 used the prefix of `fa` for all icons. With the introduction\n * of new styles we needed to differentiate between them. Prefix `fa` is now an alias\n * for `fas` so we'll ease the upgrade process for our users by automatically defining\n * this as well.\n */\n\n\n if (prefix === 'fas') {\n defineIcons('fa', icons);\n }\n}\n\nvar duotonePathRe = [/*#__PURE__*/_wrapRegExp(/path d=\"((?:(?!\")[\\s\\S])+)\".*path d=\"((?:(?!\")[\\s\\S])+)\"/, {\n d1: 1,\n d2: 2\n}), /*#__PURE__*/_wrapRegExp(/path class=\"((?:(?!\")[\\s\\S])+)\".*d=\"((?:(?!\")[\\s\\S])+)\".*path class=\"((?:(?!\")[\\s\\S])+)\".*d=\"((?:(?!\")[\\s\\S])+)\"/, {\n cls1: 1,\n d1: 2,\n cls2: 3,\n d2: 4\n}), /*#__PURE__*/_wrapRegExp(/path class=\"((?:(?!\")[\\s\\S])+)\".*d=\"((?:(?!\")[\\s\\S])+)\"/, {\n cls1: 1,\n d1: 2\n})];\n\nvar _LONG_STYLE, _PREFIXES, _PREFIXES_FOR_FAMILY;\nvar styles = namespace.styles,\n shims = namespace.shims;\nvar LONG_STYLE = (_LONG_STYLE = {}, _defineProperty(_LONG_STYLE, FAMILY_CLASSIC, Object.values(PREFIX_TO_LONG_STYLE[FAMILY_CLASSIC])), _defineProperty(_LONG_STYLE, FAMILY_SHARP, Object.values(PREFIX_TO_LONG_STYLE[FAMILY_SHARP])), _LONG_STYLE);\nvar _defaultUsablePrefix = null;\nvar _byUnicode = {};\nvar _byLigature = {};\nvar _byOldName = {};\nvar _byOldUnicode = {};\nvar _byAlias = {};\nvar PREFIXES = (_PREFIXES = {}, _defineProperty(_PREFIXES, FAMILY_CLASSIC, Object.keys(PREFIX_TO_STYLE[FAMILY_CLASSIC])), _defineProperty(_PREFIXES, FAMILY_SHARP, Object.keys(PREFIX_TO_STYLE[FAMILY_SHARP])), _PREFIXES);\n\nfunction isReserved(name) {\n return ~RESERVED_CLASSES.indexOf(name);\n}\n\nfunction getIconName(cssPrefix, cls) {\n var parts = cls.split('-');\n var prefix = parts[0];\n var iconName = parts.slice(1).join('-');\n\n if (prefix === cssPrefix && iconName !== '' && !isReserved(iconName)) {\n return iconName;\n } else {\n return null;\n }\n}\nvar build = function build() {\n var lookup = function lookup(reducer) {\n return reduce(styles, function (o, style, prefix) {\n o[prefix] = reduce(style, reducer, {});\n return o;\n }, {});\n };\n\n _byUnicode = lookup(function (acc, icon, iconName) {\n if (icon[3]) {\n acc[icon[3]] = iconName;\n }\n\n if (icon[2]) {\n var aliases = icon[2].filter(function (a) {\n return typeof a === 'number';\n });\n aliases.forEach(function (alias) {\n acc[alias.toString(16)] = iconName;\n });\n }\n\n return acc;\n });\n _byLigature = lookup(function (acc, icon, iconName) {\n acc[iconName] = iconName;\n\n if (icon[2]) {\n var aliases = icon[2].filter(function (a) {\n return typeof a === 'string';\n });\n aliases.forEach(function (alias) {\n acc[alias] = iconName;\n });\n }\n\n return acc;\n });\n _byAlias = lookup(function (acc, icon, iconName) {\n var aliases = icon[2];\n acc[iconName] = iconName;\n aliases.forEach(function (alias) {\n acc[alias] = iconName;\n });\n return acc;\n }); // If we have a Kit, we can't determine if regular is available since we\n // could be auto-fetching it. We'll have to assume that it is available.\n\n var hasRegular = 'far' in styles || config.autoFetchSvg;\n var shimLookups = reduce(shims, function (acc, shim) {\n var maybeNameMaybeUnicode = shim[0];\n var prefix = shim[1];\n var iconName = shim[2];\n\n if (prefix === 'far' && !hasRegular) {\n prefix = 'fas';\n }\n\n if (typeof maybeNameMaybeUnicode === 'string') {\n acc.names[maybeNameMaybeUnicode] = {\n prefix: prefix,\n iconName: iconName\n };\n }\n\n if (typeof maybeNameMaybeUnicode === 'number') {\n acc.unicodes[maybeNameMaybeUnicode.toString(16)] = {\n prefix: prefix,\n iconName: iconName\n };\n }\n\n return acc;\n }, {\n names: {},\n unicodes: {}\n });\n _byOldName = shimLookups.names;\n _byOldUnicode = shimLookups.unicodes;\n _defaultUsablePrefix = getCanonicalPrefix(config.styleDefault, {\n family: config.familyDefault\n });\n};\nonChange(function (c) {\n _defaultUsablePrefix = getCanonicalPrefix(c.styleDefault, {\n family: config.familyDefault\n });\n});\nbuild();\nfunction byUnicode(prefix, unicode) {\n return (_byUnicode[prefix] || {})[unicode];\n}\nfunction byLigature(prefix, ligature) {\n return (_byLigature[prefix] || {})[ligature];\n}\nfunction byAlias(prefix, alias) {\n return (_byAlias[prefix] || {})[alias];\n}\nfunction byOldName(name) {\n return _byOldName[name] || {\n prefix: null,\n iconName: null\n };\n}\nfunction byOldUnicode(unicode) {\n var oldUnicode = _byOldUnicode[unicode];\n var newUnicode = byUnicode('fas', unicode);\n return oldUnicode || (newUnicode ? {\n prefix: 'fas',\n iconName: newUnicode\n } : null) || {\n prefix: null,\n iconName: null\n };\n}\nfunction getDefaultUsablePrefix() {\n return _defaultUsablePrefix;\n}\nvar emptyCanonicalIcon = function emptyCanonicalIcon() {\n return {\n prefix: null,\n iconName: null,\n rest: []\n };\n};\nfunction getCanonicalPrefix(styleOrPrefix) {\n var params = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n var _params$family = params.family,\n family = _params$family === void 0 ? FAMILY_CLASSIC : _params$family;\n var style = PREFIX_TO_STYLE[family][styleOrPrefix];\n var prefix = STYLE_TO_PREFIX[family][styleOrPrefix] || STYLE_TO_PREFIX[family][style];\n var defined = styleOrPrefix in namespace.styles ? styleOrPrefix : null;\n return prefix || defined || null;\n}\nvar PREFIXES_FOR_FAMILY = (_PREFIXES_FOR_FAMILY = {}, _defineProperty(_PREFIXES_FOR_FAMILY, FAMILY_CLASSIC, Object.keys(PREFIX_TO_LONG_STYLE[FAMILY_CLASSIC])), _defineProperty(_PREFIXES_FOR_FAMILY, FAMILY_SHARP, Object.keys(PREFIX_TO_LONG_STYLE[FAMILY_SHARP])), _PREFIXES_FOR_FAMILY);\nfunction getCanonicalIcon(values) {\n var _famProps;\n\n var params = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n var _params$skipLookups = params.skipLookups,\n skipLookups = _params$skipLookups === void 0 ? false : _params$skipLookups;\n var famProps = (_famProps = {}, _defineProperty(_famProps, FAMILY_CLASSIC, \"\".concat(config.cssPrefix, \"-\").concat(FAMILY_CLASSIC)), _defineProperty(_famProps, FAMILY_SHARP, \"\".concat(config.cssPrefix, \"-\").concat(FAMILY_SHARP)), _famProps);\n var givenPrefix = null;\n var family = FAMILY_CLASSIC;\n\n if (values.includes(famProps[FAMILY_CLASSIC]) || values.some(function (v) {\n return PREFIXES_FOR_FAMILY[FAMILY_CLASSIC].includes(v);\n })) {\n family = FAMILY_CLASSIC;\n }\n\n if (values.includes(famProps[FAMILY_SHARP]) || values.some(function (v) {\n return PREFIXES_FOR_FAMILY[FAMILY_SHARP].includes(v);\n })) {\n family = FAMILY_SHARP;\n }\n\n var canonical = values.reduce(function (acc, cls) {\n var iconName = getIconName(config.cssPrefix, cls);\n\n if (styles[cls]) {\n cls = LONG_STYLE[family].includes(cls) ? LONG_STYLE_TO_PREFIX[family][cls] : cls;\n givenPrefix = cls;\n acc.prefix = cls;\n } else if (PREFIXES[family].indexOf(cls) > -1) {\n givenPrefix = cls;\n acc.prefix = getCanonicalPrefix(cls, {\n family: family\n });\n } else if (iconName) {\n acc.iconName = iconName;\n } else if (cls !== config.replacementClass && cls !== famProps[FAMILY_CLASSIC] && cls !== famProps[FAMILY_SHARP]) {\n acc.rest.push(cls);\n }\n\n if (!skipLookups && acc.prefix && acc.iconName) {\n var shim = givenPrefix === 'fa' ? byOldName(acc.iconName) : {};\n var aliasIconName = byAlias(acc.prefix, acc.iconName);\n\n if (shim.prefix) {\n givenPrefix = null;\n }\n\n acc.iconName = shim.iconName || aliasIconName || acc.iconName;\n acc.prefix = shim.prefix || acc.prefix;\n\n if (acc.prefix === 'far' && !styles['far'] && styles['fas'] && !config.autoFetchSvg) {\n // Allow a fallback from the regular style to solid if regular is not available\n // but only if we aren't auto-fetching SVGs\n acc.prefix = 'fas';\n }\n }\n\n return acc;\n }, emptyCanonicalIcon());\n\n if (values.includes('fa-brands') || values.includes('fab')) {\n canonical.prefix = 'fab';\n }\n\n if (values.includes('fa-duotone') || values.includes('fad')) {\n canonical.prefix = 'fad';\n }\n\n if (!canonical.prefix && family === FAMILY_SHARP && (styles['fass'] || config.autoFetchSvg)) {\n canonical.prefix = 'fass';\n canonical.iconName = byAlias(canonical.prefix, canonical.iconName) || canonical.iconName;\n }\n\n if (canonical.prefix === 'fa' || givenPrefix === 'fa') {\n // The fa prefix is not canonical. So if it has made it through until this point\n // we will shift it to the correct prefix.\n canonical.prefix = getDefaultUsablePrefix() || 'fas';\n }\n\n return canonical;\n}\n\nvar Library = /*#__PURE__*/function () {\n function Library() {\n _classCallCheck(this, Library);\n\n this.definitions = {};\n }\n\n _createClass(Library, [{\n key: \"add\",\n value: function add() {\n var _this = this;\n\n for (var _len = arguments.length, definitions = new Array(_len), _key = 0; _key < _len; _key++) {\n definitions[_key] = arguments[_key];\n }\n\n var additions = definitions.reduce(this._pullDefinitions, {});\n Object.keys(additions).forEach(function (key) {\n _this.definitions[key] = _objectSpread2(_objectSpread2({}, _this.definitions[key] || {}), additions[key]);\n defineIcons(key, additions[key]); // TODO can we stop doing this? We can't get the icons by 'fa-solid' any longer so this probably needs to change\n\n var longPrefix = PREFIX_TO_LONG_STYLE[FAMILY_CLASSIC][key];\n if (longPrefix) defineIcons(longPrefix, additions[key]);\n build();\n });\n }\n }, {\n key: \"reset\",\n value: function reset() {\n this.definitions = {};\n }\n }, {\n key: \"_pullDefinitions\",\n value: function _pullDefinitions(additions, definition) {\n var normalized = definition.prefix && definition.iconName && definition.icon ? {\n 0: definition\n } : definition;\n Object.keys(normalized).map(function (key) {\n var _normalized$key = normalized[key],\n prefix = _normalized$key.prefix,\n iconName = _normalized$key.iconName,\n icon = _normalized$key.icon;\n var aliases = icon[2];\n if (!additions[prefix]) additions[prefix] = {};\n\n if (aliases.length > 0) {\n aliases.forEach(function (alias) {\n if (typeof alias === 'string') {\n additions[prefix][alias] = icon;\n }\n });\n }\n\n additions[prefix][iconName] = icon;\n });\n return additions;\n }\n }]);\n\n return Library;\n}();\n\nvar _plugins = [];\nvar _hooks = {};\nvar providers = {};\nvar defaultProviderKeys = Object.keys(providers);\nfunction registerPlugins(nextPlugins, _ref) {\n var obj = _ref.mixoutsTo;\n _plugins = nextPlugins;\n _hooks = {};\n Object.keys(providers).forEach(function (k) {\n if (defaultProviderKeys.indexOf(k) === -1) {\n delete providers[k];\n }\n });\n\n _plugins.forEach(function (plugin) {\n var mixout = plugin.mixout ? plugin.mixout() : {};\n Object.keys(mixout).forEach(function (tk) {\n if (typeof mixout[tk] === 'function') {\n obj[tk] = mixout[tk];\n }\n\n if (_typeof(mixout[tk]) === 'object') {\n Object.keys(mixout[tk]).forEach(function (sk) {\n if (!obj[tk]) {\n obj[tk] = {};\n }\n\n obj[tk][sk] = mixout[tk][sk];\n });\n }\n });\n\n if (plugin.hooks) {\n var hooks = plugin.hooks();\n Object.keys(hooks).forEach(function (hook) {\n if (!_hooks[hook]) {\n _hooks[hook] = [];\n }\n\n _hooks[hook].push(hooks[hook]);\n });\n }\n\n if (plugin.provides) {\n plugin.provides(providers);\n }\n });\n\n return obj;\n}\nfunction chainHooks(hook, accumulator) {\n for (var _len = arguments.length, args = new Array(_len > 2 ? _len - 2 : 0), _key = 2; _key < _len; _key++) {\n args[_key - 2] = arguments[_key];\n }\n\n var hookFns = _hooks[hook] || [];\n hookFns.forEach(function (hookFn) {\n accumulator = hookFn.apply(null, [accumulator].concat(args)); // eslint-disable-line no-useless-call\n });\n return accumulator;\n}\nfunction callHooks(hook) {\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 var hookFns = _hooks[hook] || [];\n hookFns.forEach(function (hookFn) {\n hookFn.apply(null, args);\n });\n return undefined;\n}\nfunction callProvided() {\n var hook = arguments[0];\n var args = Array.prototype.slice.call(arguments, 1);\n return providers[hook] ? providers[hook].apply(null, args) : undefined;\n}\n\nfunction findIconDefinition(iconLookup) {\n if (iconLookup.prefix === 'fa') {\n iconLookup.prefix = 'fas';\n }\n\n var iconName = iconLookup.iconName;\n var prefix = iconLookup.prefix || getDefaultUsablePrefix();\n if (!iconName) return;\n iconName = byAlias(prefix, iconName) || iconName;\n return iconFromMapping(library.definitions, prefix, iconName) || iconFromMapping(namespace.styles, prefix, iconName);\n}\nvar library = new Library();\nvar noAuto = function noAuto() {\n config.autoReplaceSvg = false;\n config.observeMutations = false;\n callHooks('noAuto');\n};\nvar dom = {\n i2svg: function i2svg() {\n var params = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};\n\n if (IS_DOM) {\n callHooks('beforeI2svg', params);\n callProvided('pseudoElements2svg', params);\n return callProvided('i2svg', params);\n } else {\n return Promise.reject('Operation requires a DOM of some kind.');\n }\n },\n watch: function watch() {\n var params = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};\n var autoReplaceSvgRoot = params.autoReplaceSvgRoot;\n\n if (config.autoReplaceSvg === false) {\n config.autoReplaceSvg = true;\n }\n\n config.observeMutations = true;\n domready(function () {\n autoReplace({\n autoReplaceSvgRoot: autoReplaceSvgRoot\n });\n callHooks('watch', params);\n });\n }\n};\nvar parse = {\n icon: function icon(_icon) {\n if (_icon === null) {\n return null;\n }\n\n if (_typeof(_icon) === 'object' && _icon.prefix && _icon.iconName) {\n return {\n prefix: _icon.prefix,\n iconName: byAlias(_icon.prefix, _icon.iconName) || _icon.iconName\n };\n }\n\n if (Array.isArray(_icon) && _icon.length === 2) {\n var iconName = _icon[1].indexOf('fa-') === 0 ? _icon[1].slice(3) : _icon[1];\n var prefix = getCanonicalPrefix(_icon[0]);\n return {\n prefix: prefix,\n iconName: byAlias(prefix, iconName) || iconName\n };\n }\n\n if (typeof _icon === 'string' && (_icon.indexOf(\"\".concat(config.cssPrefix, \"-\")) > -1 || _icon.match(ICON_SELECTION_SYNTAX_PATTERN))) {\n var canonicalIcon = getCanonicalIcon(_icon.split(' '), {\n skipLookups: true\n });\n return {\n prefix: canonicalIcon.prefix || getDefaultUsablePrefix(),\n iconName: byAlias(canonicalIcon.prefix, canonicalIcon.iconName) || canonicalIcon.iconName\n };\n }\n\n if (typeof _icon === 'string') {\n var _prefix = getDefaultUsablePrefix();\n\n return {\n prefix: _prefix,\n iconName: byAlias(_prefix, _icon) || _icon\n };\n }\n }\n};\nvar api = {\n noAuto: noAuto,\n config: config,\n dom: dom,\n parse: parse,\n library: library,\n findIconDefinition: findIconDefinition,\n toHtml: toHtml\n};\n\nvar autoReplace = function autoReplace() {\n var params = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};\n var _params$autoReplaceSv = params.autoReplaceSvgRoot,\n autoReplaceSvgRoot = _params$autoReplaceSv === void 0 ? DOCUMENT : _params$autoReplaceSv;\n if ((Object.keys(namespace.styles).length > 0 || config.autoFetchSvg) && IS_DOM && config.autoReplaceSvg) api.dom.i2svg({\n node: autoReplaceSvgRoot\n });\n};\n\nfunction domVariants(val, abstractCreator) {\n Object.defineProperty(val, 'abstract', {\n get: abstractCreator\n });\n Object.defineProperty(val, 'html', {\n get: function get() {\n return val.abstract.map(function (a) {\n return toHtml(a);\n });\n }\n });\n Object.defineProperty(val, 'node', {\n get: function get() {\n if (!IS_DOM) return;\n var container = DOCUMENT.createElement('div');\n container.innerHTML = val.html;\n return container.children;\n }\n });\n return val;\n}\n\nfunction asIcon (_ref) {\n var children = _ref.children,\n main = _ref.main,\n mask = _ref.mask,\n attributes = _ref.attributes,\n styles = _ref.styles,\n transform = _ref.transform;\n\n if (transformIsMeaningful(transform) && main.found && !mask.found) {\n var width = main.width,\n height = main.height;\n var offset = {\n x: width / height / 2,\n y: 0.5\n };\n attributes['style'] = joinStyles(_objectSpread2(_objectSpread2({}, styles), {}, {\n 'transform-origin': \"\".concat(offset.x + transform.x / 16, \"em \").concat(offset.y + transform.y / 16, \"em\")\n }));\n }\n\n return [{\n tag: 'svg',\n attributes: attributes,\n children: children\n }];\n}\n\nfunction asSymbol (_ref) {\n var prefix = _ref.prefix,\n iconName = _ref.iconName,\n children = _ref.children,\n attributes = _ref.attributes,\n symbol = _ref.symbol;\n var id = symbol === true ? \"\".concat(prefix, \"-\").concat(config.cssPrefix, \"-\").concat(iconName) : symbol;\n return [{\n tag: 'svg',\n attributes: {\n style: 'display: none;'\n },\n children: [{\n tag: 'symbol',\n attributes: _objectSpread2(_objectSpread2({}, attributes), {}, {\n id: id\n }),\n children: children\n }]\n }];\n}\n\nfunction makeInlineSvgAbstract(params) {\n var _params$icons = params.icons,\n main = _params$icons.main,\n mask = _params$icons.mask,\n prefix = params.prefix,\n iconName = params.iconName,\n transform = params.transform,\n symbol = params.symbol,\n title = params.title,\n maskId = params.maskId,\n titleId = params.titleId,\n extra = params.extra,\n _params$watchable = params.watchable,\n watchable = _params$watchable === void 0 ? false : _params$watchable;\n\n var _ref = mask.found ? mask : main,\n width = _ref.width,\n height = _ref.height;\n\n var isUploadedIcon = prefix === 'fak';\n var attrClass = [config.replacementClass, iconName ? \"\".concat(config.cssPrefix, \"-\").concat(iconName) : ''].filter(function (c) {\n return extra.classes.indexOf(c) === -1;\n }).filter(function (c) {\n return c !== '' || !!c;\n }).concat(extra.classes).join(' ');\n var content = {\n children: [],\n attributes: _objectSpread2(_objectSpread2({}, extra.attributes), {}, {\n 'data-prefix': prefix,\n 'data-icon': iconName,\n 'class': attrClass,\n 'role': extra.attributes.role || 'img',\n 'xmlns': 'http://www.w3.org/2000/svg',\n 'viewBox': \"0 0 \".concat(width, \" \").concat(height)\n })\n };\n var uploadedIconWidthStyle = isUploadedIcon && !~extra.classes.indexOf('fa-fw') ? {\n width: \"\".concat(width / height * 16 * 0.0625, \"em\")\n } : {};\n\n if (watchable) {\n content.attributes[DATA_FA_I2SVG] = '';\n }\n\n if (title) {\n content.children.push({\n tag: 'title',\n attributes: {\n id: content.attributes['aria-labelledby'] || \"title-\".concat(titleId || nextUniqueId())\n },\n children: [title]\n });\n delete content.attributes.title;\n }\n\n var args = _objectSpread2(_objectSpread2({}, content), {}, {\n prefix: prefix,\n iconName: iconName,\n main: main,\n mask: mask,\n maskId: maskId,\n transform: transform,\n symbol: symbol,\n styles: _objectSpread2(_objectSpread2({}, uploadedIconWidthStyle), extra.styles)\n });\n\n var _ref2 = mask.found && main.found ? callProvided('generateAbstractMask', args) || {\n children: [],\n attributes: {}\n } : callProvided('generateAbstractIcon', args) || {\n children: [],\n attributes: {}\n },\n children = _ref2.children,\n attributes = _ref2.attributes;\n\n args.children = children;\n args.attributes = attributes;\n\n if (symbol) {\n return asSymbol(args);\n } else {\n return asIcon(args);\n }\n}\nfunction makeLayersTextAbstract(params) {\n var content = params.content,\n width = params.width,\n height = params.height,\n transform = params.transform,\n title = params.title,\n extra = params.extra,\n _params$watchable2 = params.watchable,\n watchable = _params$watchable2 === void 0 ? false : _params$watchable2;\n\n var attributes = _objectSpread2(_objectSpread2(_objectSpread2({}, extra.attributes), title ? {\n 'title': title\n } : {}), {}, {\n 'class': extra.classes.join(' ')\n });\n\n if (watchable) {\n attributes[DATA_FA_I2SVG] = '';\n }\n\n var styles = _objectSpread2({}, extra.styles);\n\n if (transformIsMeaningful(transform)) {\n styles['transform'] = transformForCss({\n transform: transform,\n startCentered: true,\n width: width,\n height: height\n });\n styles['-webkit-transform'] = styles['transform'];\n }\n\n var styleString = joinStyles(styles);\n\n if (styleString.length > 0) {\n attributes['style'] = styleString;\n }\n\n var val = [];\n val.push({\n tag: 'span',\n attributes: attributes,\n children: [content]\n });\n\n if (title) {\n val.push({\n tag: 'span',\n attributes: {\n class: 'sr-only'\n },\n children: [title]\n });\n }\n\n return val;\n}\nfunction makeLayersCounterAbstract(params) {\n var content = params.content,\n title = params.title,\n extra = params.extra;\n\n var attributes = _objectSpread2(_objectSpread2(_objectSpread2({}, extra.attributes), title ? {\n 'title': title\n } : {}), {}, {\n 'class': extra.classes.join(' ')\n });\n\n var styleString = joinStyles(extra.styles);\n\n if (styleString.length > 0) {\n attributes['style'] = styleString;\n }\n\n var val = [];\n val.push({\n tag: 'span',\n attributes: attributes,\n children: [content]\n });\n\n if (title) {\n val.push({\n tag: 'span',\n attributes: {\n class: 'sr-only'\n },\n children: [title]\n });\n }\n\n return val;\n}\n\nvar styles$1 = namespace.styles;\nfunction asFoundIcon(icon) {\n var width = icon[0];\n var height = icon[1];\n\n var _icon$slice = icon.slice(4),\n _icon$slice2 = _slicedToArray(_icon$slice, 1),\n vectorData = _icon$slice2[0];\n\n var element = null;\n\n if (Array.isArray(vectorData)) {\n element = {\n tag: 'g',\n attributes: {\n class: \"\".concat(config.cssPrefix, \"-\").concat(DUOTONE_CLASSES.GROUP)\n },\n children: [{\n tag: 'path',\n attributes: {\n class: \"\".concat(config.cssPrefix, \"-\").concat(DUOTONE_CLASSES.SECONDARY),\n fill: 'currentColor',\n d: vectorData[0]\n }\n }, {\n tag: 'path',\n attributes: {\n class: \"\".concat(config.cssPrefix, \"-\").concat(DUOTONE_CLASSES.PRIMARY),\n fill: 'currentColor',\n d: vectorData[1]\n }\n }]\n };\n } else {\n element = {\n tag: 'path',\n attributes: {\n fill: 'currentColor',\n d: vectorData\n }\n };\n }\n\n return {\n found: true,\n width: width,\n height: height,\n icon: element\n };\n}\nvar missingIconResolutionMixin = {\n found: false,\n width: 512,\n height: 512\n};\n\nfunction maybeNotifyMissing(iconName, prefix) {\n if (!PRODUCTION && !config.showMissingIcons && iconName) {\n console.error(\"Icon with name \\\"\".concat(iconName, \"\\\" and prefix \\\"\").concat(prefix, \"\\\" is missing.\"));\n }\n}\n\nfunction findIcon(iconName, prefix) {\n var givenPrefix = prefix;\n\n if (prefix === 'fa' && config.styleDefault !== null) {\n prefix = getDefaultUsablePrefix();\n }\n\n return new Promise(function (resolve, reject) {\n var val = {\n found: false,\n width: 512,\n height: 512,\n icon: callProvided('missingIconAbstract') || {}\n };\n\n if (givenPrefix === 'fa') {\n var shim = byOldName(iconName) || {};\n iconName = shim.iconName || iconName;\n prefix = shim.prefix || prefix;\n }\n\n if (iconName && prefix && styles$1[prefix] && styles$1[prefix][iconName]) {\n var icon = styles$1[prefix][iconName];\n return resolve(asFoundIcon(icon));\n }\n\n maybeNotifyMissing(iconName, prefix);\n resolve(_objectSpread2(_objectSpread2({}, missingIconResolutionMixin), {}, {\n icon: config.showMissingIcons && iconName ? callProvided('missingIconAbstract') || {} : {}\n }));\n });\n}\n\nvar noop$1 = function noop() {};\n\nvar p = config.measurePerformance && PERFORMANCE && PERFORMANCE.mark && PERFORMANCE.measure ? PERFORMANCE : {\n mark: noop$1,\n measure: noop$1\n};\nvar preamble = \"FA \\\"6.3.0\\\"\";\n\nvar begin = function begin(name) {\n p.mark(\"\".concat(preamble, \" \").concat(name, \" begins\"));\n return function () {\n return end(name);\n };\n};\n\nvar end = function end(name) {\n p.mark(\"\".concat(preamble, \" \").concat(name, \" ends\"));\n p.measure(\"\".concat(preamble, \" \").concat(name), \"\".concat(preamble, \" \").concat(name, \" begins\"), \"\".concat(preamble, \" \").concat(name, \" ends\"));\n};\n\nvar perf = {\n begin: begin,\n end: end\n};\n\nvar noop$2 = function noop() {};\n\nfunction isWatched(node) {\n var i2svg = node.getAttribute ? node.getAttribute(DATA_FA_I2SVG) : null;\n return typeof i2svg === 'string';\n}\n\nfunction hasPrefixAndIcon(node) {\n var prefix = node.getAttribute ? node.getAttribute(DATA_PREFIX) : null;\n var icon = node.getAttribute ? node.getAttribute(DATA_ICON) : null;\n return prefix && icon;\n}\n\nfunction hasBeenReplaced(node) {\n return node && node.classList && node.classList.contains && node.classList.contains(config.replacementClass);\n}\n\nfunction getMutator() {\n if (config.autoReplaceSvg === true) {\n return mutators.replace;\n }\n\n var mutator = mutators[config.autoReplaceSvg];\n return mutator || mutators.replace;\n}\n\nfunction createElementNS(tag) {\n return DOCUMENT.createElementNS('http://www.w3.org/2000/svg', tag);\n}\n\nfunction createElement(tag) {\n return DOCUMENT.createElement(tag);\n}\n\nfunction convertSVG(abstractObj) {\n var params = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n var _params$ceFn = params.ceFn,\n ceFn = _params$ceFn === void 0 ? abstractObj.tag === 'svg' ? createElementNS : createElement : _params$ceFn;\n\n if (typeof abstractObj === 'string') {\n return DOCUMENT.createTextNode(abstractObj);\n }\n\n var tag = ceFn(abstractObj.tag);\n Object.keys(abstractObj.attributes || []).forEach(function (key) {\n tag.setAttribute(key, abstractObj.attributes[key]);\n });\n var children = abstractObj.children || [];\n children.forEach(function (child) {\n tag.appendChild(convertSVG(child, {\n ceFn: ceFn\n }));\n });\n return tag;\n}\n\nfunction nodeAsComment(node) {\n var comment = \" \".concat(node.outerHTML, \" \");\n /* BEGIN.ATTRIBUTION */\n\n comment = \"\".concat(comment, \"Font Awesome fontawesome.com \");\n /* END.ATTRIBUTION */\n\n return comment;\n}\n\nvar mutators = {\n replace: function replace(mutation) {\n var node = mutation[0];\n\n if (node.parentNode) {\n mutation[1].forEach(function (_abstract) {\n node.parentNode.insertBefore(convertSVG(_abstract), node);\n });\n\n if (node.getAttribute(DATA_FA_I2SVG) === null && config.keepOriginalSource) {\n var comment = DOCUMENT.createComment(nodeAsComment(node));\n node.parentNode.replaceChild(comment, node);\n } else {\n node.remove();\n }\n }\n },\n nest: function nest(mutation) {\n var node = mutation[0];\n var _abstract2 = mutation[1]; // If we already have a replaced node we do not want to continue nesting within it.\n // Short-circuit to the standard replacement\n\n if (~classArray(node).indexOf(config.replacementClass)) {\n return mutators.replace(mutation);\n }\n\n var forSvg = new RegExp(\"\".concat(config.cssPrefix, \"-.*\"));\n delete _abstract2[0].attributes.id;\n\n if (_abstract2[0].attributes.class) {\n var splitClasses = _abstract2[0].attributes.class.split(' ').reduce(function (acc, cls) {\n if (cls === config.replacementClass || cls.match(forSvg)) {\n acc.toSvg.push(cls);\n } else {\n acc.toNode.push(cls);\n }\n\n return acc;\n }, {\n toNode: [],\n toSvg: []\n });\n\n _abstract2[0].attributes.class = splitClasses.toSvg.join(' ');\n\n if (splitClasses.toNode.length === 0) {\n node.removeAttribute('class');\n } else {\n node.setAttribute('class', splitClasses.toNode.join(' '));\n }\n }\n\n var newInnerHTML = _abstract2.map(function (a) {\n return toHtml(a);\n }).join('\\n');\n\n node.setAttribute(DATA_FA_I2SVG, '');\n node.innerHTML = newInnerHTML;\n }\n};\n\nfunction performOperationSync(op) {\n op();\n}\n\nfunction perform(mutations, callback) {\n var callbackFunction = typeof callback === 'function' ? callback : noop$2;\n\n if (mutations.length === 0) {\n callbackFunction();\n } else {\n var frame = performOperationSync;\n\n if (config.mutateApproach === MUTATION_APPROACH_ASYNC) {\n frame = WINDOW.requestAnimationFrame || performOperationSync;\n }\n\n frame(function () {\n var mutator = getMutator();\n var mark = perf.begin('mutate');\n mutations.map(mutator);\n mark();\n callbackFunction();\n });\n }\n}\nvar disabled = false;\nfunction disableObservation() {\n disabled = true;\n}\nfunction enableObservation() {\n disabled = false;\n}\nvar mo = null;\nfunction observe(options) {\n if (!MUTATION_OBSERVER) {\n return;\n }\n\n if (!config.observeMutations) {\n return;\n }\n\n var _options$treeCallback = options.treeCallback,\n treeCallback = _options$treeCallback === void 0 ? noop$2 : _options$treeCallback,\n _options$nodeCallback = options.nodeCallback,\n nodeCallback = _options$nodeCallback === void 0 ? noop$2 : _options$nodeCallback,\n _options$pseudoElemen = options.pseudoElementsCallback,\n pseudoElementsCallback = _options$pseudoElemen === void 0 ? noop$2 : _options$pseudoElemen,\n _options$observeMutat = options.observeMutationsRoot,\n observeMutationsRoot = _options$observeMutat === void 0 ? DOCUMENT : _options$observeMutat;\n mo = new MUTATION_OBSERVER(function (objects) {\n if (disabled) return;\n var defaultPrefix = getDefaultUsablePrefix();\n toArray(objects).forEach(function (mutationRecord) {\n if (mutationRecord.type === 'childList' && mutationRecord.addedNodes.length > 0 && !isWatched(mutationRecord.addedNodes[0])) {\n if (config.searchPseudoElements) {\n pseudoElementsCallback(mutationRecord.target);\n }\n\n treeCallback(mutationRecord.target);\n }\n\n if (mutationRecord.type === 'attributes' && mutationRecord.target.parentNode && config.searchPseudoElements) {\n pseudoElementsCallback(mutationRecord.target.parentNode);\n }\n\n if (mutationRecord.type === 'attributes' && isWatched(mutationRecord.target) && ~ATTRIBUTES_WATCHED_FOR_MUTATION.indexOf(mutationRecord.attributeName)) {\n if (mutationRecord.attributeName === 'class' && hasPrefixAndIcon(mutationRecord.target)) {\n var _getCanonicalIcon = getCanonicalIcon(classArray(mutationRecord.target)),\n prefix = _getCanonicalIcon.prefix,\n iconName = _getCanonicalIcon.iconName;\n\n mutationRecord.target.setAttribute(DATA_PREFIX, prefix || defaultPrefix);\n if (iconName) mutationRecord.target.setAttribute(DATA_ICON, iconName);\n } else if (hasBeenReplaced(mutationRecord.target)) {\n nodeCallback(mutationRecord.target);\n }\n }\n });\n });\n if (!IS_DOM) return;\n mo.observe(observeMutationsRoot, {\n childList: true,\n attributes: true,\n characterData: true,\n subtree: true\n });\n}\nfunction disconnect() {\n if (!mo) return;\n mo.disconnect();\n}\n\nfunction styleParser (node) {\n var style = node.getAttribute('style');\n var val = [];\n\n if (style) {\n val = style.split(';').reduce(function (acc, style) {\n var styles = style.split(':');\n var prop = styles[0];\n var value = styles.slice(1);\n\n if (prop && value.length > 0) {\n acc[prop] = value.join(':').trim();\n }\n\n return acc;\n }, {});\n }\n\n return val;\n}\n\nfunction classParser (node) {\n var existingPrefix = node.getAttribute('data-prefix');\n var existingIconName = node.getAttribute('data-icon');\n var innerText = node.innerText !== undefined ? node.innerText.trim() : '';\n var val = getCanonicalIcon(classArray(node));\n\n if (!val.prefix) {\n val.prefix = getDefaultUsablePrefix();\n }\n\n if (existingPrefix && existingIconName) {\n val.prefix = existingPrefix;\n val.iconName = existingIconName;\n }\n\n if (val.iconName && val.prefix) {\n return val;\n }\n\n if (val.prefix && innerText.length > 0) {\n val.iconName = byLigature(val.prefix, node.innerText) || byUnicode(val.prefix, toHex(node.innerText));\n }\n\n if (!val.iconName && config.autoFetchSvg && node.firstChild && node.firstChild.nodeType === Node.TEXT_NODE) {\n val.iconName = node.firstChild.data;\n }\n\n return val;\n}\n\nfunction attributesParser (node) {\n var extraAttributes = toArray(node.attributes).reduce(function (acc, attr) {\n if (acc.name !== 'class' && acc.name !== 'style') {\n acc[attr.name] = attr.value;\n }\n\n return acc;\n }, {});\n var title = node.getAttribute('title');\n var titleId = node.getAttribute('data-fa-title-id');\n\n if (config.autoA11y) {\n if (title) {\n extraAttributes['aria-labelledby'] = \"\".concat(config.replacementClass, \"-title-\").concat(titleId || nextUniqueId());\n } else {\n extraAttributes['aria-hidden'] = 'true';\n extraAttributes['focusable'] = 'false';\n }\n }\n\n return extraAttributes;\n}\n\nfunction blankMeta() {\n return {\n iconName: null,\n title: null,\n titleId: null,\n prefix: null,\n transform: meaninglessTransform,\n symbol: false,\n mask: {\n iconName: null,\n prefix: null,\n rest: []\n },\n maskId: null,\n extra: {\n classes: [],\n styles: {},\n attributes: {}\n }\n };\n}\nfunction parseMeta(node) {\n var parser = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {\n styleParser: true\n };\n\n var _classParser = classParser(node),\n iconName = _classParser.iconName,\n prefix = _classParser.prefix,\n extraClasses = _classParser.rest;\n\n var extraAttributes = attributesParser(node);\n var pluginMeta = chainHooks('parseNodeAttributes', {}, node);\n var extraStyles = parser.styleParser ? styleParser(node) : [];\n return _objectSpread2({\n iconName: iconName,\n title: node.getAttribute('title'),\n titleId: node.getAttribute('data-fa-title-id'),\n prefix: prefix,\n transform: meaninglessTransform,\n mask: {\n iconName: null,\n prefix: null,\n rest: []\n },\n maskId: null,\n symbol: false,\n extra: {\n classes: extraClasses,\n styles: extraStyles,\n attributes: extraAttributes\n }\n }, pluginMeta);\n}\n\nvar styles$2 = namespace.styles;\n\nfunction generateMutation(node) {\n var nodeMeta = config.autoReplaceSvg === 'nest' ? parseMeta(node, {\n styleParser: false\n }) : parseMeta(node);\n\n if (~nodeMeta.extra.classes.indexOf(LAYERS_TEXT_CLASSNAME)) {\n return callProvided('generateLayersText', node, nodeMeta);\n } else {\n return callProvided('generateSvgReplacementMutation', node, nodeMeta);\n }\n}\n\nvar knownPrefixes = new Set();\nFAMILIES.map(function (family) {\n knownPrefixes.add(\"fa-\".concat(family));\n});\nObject.keys(PREFIX_TO_STYLE[FAMILY_CLASSIC]).map(knownPrefixes.add.bind(knownPrefixes));\nObject.keys(PREFIX_TO_STYLE[FAMILY_SHARP]).map(knownPrefixes.add.bind(knownPrefixes));\nknownPrefixes = _toConsumableArray(knownPrefixes);\n\nfunction onTree(root) {\n var callback = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : null;\n if (!IS_DOM) return Promise.resolve();\n var htmlClassList = DOCUMENT.documentElement.classList;\n\n var hclAdd = function hclAdd(suffix) {\n return htmlClassList.add(\"\".concat(HTML_CLASS_I2SVG_BASE_CLASS, \"-\").concat(suffix));\n };\n\n var hclRemove = function hclRemove(suffix) {\n return htmlClassList.remove(\"\".concat(HTML_CLASS_I2SVG_BASE_CLASS, \"-\").concat(suffix));\n };\n\n var prefixes = config.autoFetchSvg ? knownPrefixes : FAMILIES.map(function (f) {\n return \"fa-\".concat(f);\n }).concat(Object.keys(styles$2));\n\n if (!prefixes.includes('fa')) {\n prefixes.push('fa');\n }\n\n var prefixesDomQuery = [\".\".concat(LAYERS_TEXT_CLASSNAME, \":not([\").concat(DATA_FA_I2SVG, \"])\")].concat(prefixes.map(function (p) {\n return \".\".concat(p, \":not([\").concat(DATA_FA_I2SVG, \"])\");\n })).join(', ');\n\n if (prefixesDomQuery.length === 0) {\n return Promise.resolve();\n }\n\n var candidates = [];\n\n try {\n candidates = toArray(root.querySelectorAll(prefixesDomQuery));\n } catch (e) {// noop\n }\n\n if (candidates.length > 0) {\n hclAdd('pending');\n hclRemove('complete');\n } else {\n return Promise.resolve();\n }\n\n var mark = perf.begin('onTree');\n var mutations = candidates.reduce(function (acc, node) {\n try {\n var mutation = generateMutation(node);\n\n if (mutation) {\n acc.push(mutation);\n }\n } catch (e) {\n if (!PRODUCTION) {\n if (e.name === 'MissingIcon') {\n console.error(e);\n }\n }\n }\n\n return acc;\n }, []);\n return new Promise(function (resolve, reject) {\n Promise.all(mutations).then(function (resolvedMutations) {\n perform(resolvedMutations, function () {\n hclAdd('active');\n hclAdd('complete');\n hclRemove('pending');\n if (typeof callback === 'function') callback();\n mark();\n resolve();\n });\n }).catch(function (e) {\n mark();\n reject(e);\n });\n });\n}\n\nfunction onNode(node) {\n var callback = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : null;\n generateMutation(node).then(function (mutation) {\n if (mutation) {\n perform([mutation], callback);\n }\n });\n}\n\nfunction resolveIcons(next) {\n return function (maybeIconDefinition) {\n var params = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n var iconDefinition = (maybeIconDefinition || {}).icon ? maybeIconDefinition : findIconDefinition(maybeIconDefinition || {});\n var mask = params.mask;\n\n if (mask) {\n mask = (mask || {}).icon ? mask : findIconDefinition(mask || {});\n }\n\n return next(iconDefinition, _objectSpread2(_objectSpread2({}, params), {}, {\n mask: mask\n }));\n };\n}\n\nvar render = function render(iconDefinition) {\n var params = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n var _params$transform = params.transform,\n transform = _params$transform === void 0 ? meaninglessTransform : _params$transform,\n _params$symbol = params.symbol,\n symbol = _params$symbol === void 0 ? false : _params$symbol,\n _params$mask = params.mask,\n mask = _params$mask === void 0 ? null : _params$mask,\n _params$maskId = params.maskId,\n maskId = _params$maskId === void 0 ? null : _params$maskId,\n _params$title = params.title,\n title = _params$title === void 0 ? null : _params$title,\n _params$titleId = params.titleId,\n titleId = _params$titleId === void 0 ? null : _params$titleId,\n _params$classes = params.classes,\n classes = _params$classes === void 0 ? [] : _params$classes,\n _params$attributes = params.attributes,\n attributes = _params$attributes === void 0 ? {} : _params$attributes,\n _params$styles = params.styles,\n styles = _params$styles === void 0 ? {} : _params$styles;\n if (!iconDefinition) return;\n var prefix = iconDefinition.prefix,\n iconName = iconDefinition.iconName,\n icon = iconDefinition.icon;\n return domVariants(_objectSpread2({\n type: 'icon'\n }, iconDefinition), function () {\n callHooks('beforeDOMElementCreation', {\n iconDefinition: iconDefinition,\n params: params\n });\n\n if (config.autoA11y) {\n if (title) {\n attributes['aria-labelledby'] = \"\".concat(config.replacementClass, \"-title-\").concat(titleId || nextUniqueId());\n } else {\n attributes['aria-hidden'] = 'true';\n attributes['focusable'] = 'false';\n }\n }\n\n return makeInlineSvgAbstract({\n icons: {\n main: asFoundIcon(icon),\n mask: mask ? asFoundIcon(mask.icon) : {\n found: false,\n width: null,\n height: null,\n icon: {}\n }\n },\n prefix: prefix,\n iconName: iconName,\n transform: _objectSpread2(_objectSpread2({}, meaninglessTransform), transform),\n symbol: symbol,\n title: title,\n maskId: maskId,\n titleId: titleId,\n extra: {\n attributes: attributes,\n styles: styles,\n classes: classes\n }\n });\n });\n};\nvar ReplaceElements = {\n mixout: function mixout() {\n return {\n icon: resolveIcons(render)\n };\n },\n hooks: function hooks() {\n return {\n mutationObserverCallbacks: function mutationObserverCallbacks(accumulator) {\n accumulator.treeCallback = onTree;\n accumulator.nodeCallback = onNode;\n return accumulator;\n }\n };\n },\n provides: function provides(providers$$1) {\n providers$$1.i2svg = function (params) {\n var _params$node = params.node,\n node = _params$node === void 0 ? DOCUMENT : _params$node,\n _params$callback = params.callback,\n callback = _params$callback === void 0 ? function () {} : _params$callback;\n return onTree(node, callback);\n };\n\n providers$$1.generateSvgReplacementMutation = function (node, nodeMeta) {\n var iconName = nodeMeta.iconName,\n title = nodeMeta.title,\n titleId = nodeMeta.titleId,\n prefix = nodeMeta.prefix,\n transform = nodeMeta.transform,\n symbol = nodeMeta.symbol,\n mask = nodeMeta.mask,\n maskId = nodeMeta.maskId,\n extra = nodeMeta.extra;\n return new Promise(function (resolve, reject) {\n Promise.all([findIcon(iconName, prefix), mask.iconName ? findIcon(mask.iconName, mask.prefix) : Promise.resolve({\n found: false,\n width: 512,\n height: 512,\n icon: {}\n })]).then(function (_ref) {\n var _ref2 = _slicedToArray(_ref, 2),\n main = _ref2[0],\n mask = _ref2[1];\n\n resolve([node, makeInlineSvgAbstract({\n icons: {\n main: main,\n mask: mask\n },\n prefix: prefix,\n iconName: iconName,\n transform: transform,\n symbol: symbol,\n maskId: maskId,\n title: title,\n titleId: titleId,\n extra: extra,\n watchable: true\n })]);\n }).catch(reject);\n });\n };\n\n providers$$1.generateAbstractIcon = function (_ref3) {\n var children = _ref3.children,\n attributes = _ref3.attributes,\n main = _ref3.main,\n transform = _ref3.transform,\n styles = _ref3.styles;\n var styleString = joinStyles(styles);\n\n if (styleString.length > 0) {\n attributes['style'] = styleString;\n }\n\n var nextChild;\n\n if (transformIsMeaningful(transform)) {\n nextChild = callProvided('generateAbstractTransformGrouping', {\n main: main,\n transform: transform,\n containerWidth: main.width,\n iconWidth: main.width\n });\n }\n\n children.push(nextChild || main.icon);\n return {\n children: children,\n attributes: attributes\n };\n };\n }\n};\n\nvar Layers = {\n mixout: function mixout() {\n return {\n layer: function layer(assembler) {\n var params = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n var _params$classes = params.classes,\n classes = _params$classes === void 0 ? [] : _params$classes;\n return domVariants({\n type: 'layer'\n }, function () {\n callHooks('beforeDOMElementCreation', {\n assembler: assembler,\n params: params\n });\n var children = [];\n assembler(function (args) {\n Array.isArray(args) ? args.map(function (a) {\n children = children.concat(a.abstract);\n }) : children = children.concat(args.abstract);\n });\n return [{\n tag: 'span',\n attributes: {\n class: [\"\".concat(config.cssPrefix, \"-layers\")].concat(_toConsumableArray(classes)).join(' ')\n },\n children: children\n }];\n });\n }\n };\n }\n};\n\nvar LayersCounter = {\n mixout: function mixout() {\n return {\n counter: function counter(content) {\n var params = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n var _params$title = params.title,\n title = _params$title === void 0 ? null : _params$title,\n _params$classes = params.classes,\n classes = _params$classes === void 0 ? [] : _params$classes,\n _params$attributes = params.attributes,\n attributes = _params$attributes === void 0 ? {} : _params$attributes,\n _params$styles = params.styles,\n styles = _params$styles === void 0 ? {} : _params$styles;\n return domVariants({\n type: 'counter',\n content: content\n }, function () {\n callHooks('beforeDOMElementCreation', {\n content: content,\n params: params\n });\n return makeLayersCounterAbstract({\n content: content.toString(),\n title: title,\n extra: {\n attributes: attributes,\n styles: styles,\n classes: [\"\".concat(config.cssPrefix, \"-layers-counter\")].concat(_toConsumableArray(classes))\n }\n });\n });\n }\n };\n }\n};\n\nvar LayersText = {\n mixout: function mixout() {\n return {\n text: function text(content) {\n var params = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n var _params$transform = params.transform,\n transform = _params$transform === void 0 ? meaninglessTransform : _params$transform,\n _params$title = params.title,\n title = _params$title === void 0 ? null : _params$title,\n _params$classes = params.classes,\n classes = _params$classes === void 0 ? [] : _params$classes,\n _params$attributes = params.attributes,\n attributes = _params$attributes === void 0 ? {} : _params$attributes,\n _params$styles = params.styles,\n styles = _params$styles === void 0 ? {} : _params$styles;\n return domVariants({\n type: 'text',\n content: content\n }, function () {\n callHooks('beforeDOMElementCreation', {\n content: content,\n params: params\n });\n return makeLayersTextAbstract({\n content: content,\n transform: _objectSpread2(_objectSpread2({}, meaninglessTransform), transform),\n title: title,\n extra: {\n attributes: attributes,\n styles: styles,\n classes: [\"\".concat(config.cssPrefix, \"-layers-text\")].concat(_toConsumableArray(classes))\n }\n });\n });\n }\n };\n },\n provides: function provides(providers$$1) {\n providers$$1.generateLayersText = function (node, nodeMeta) {\n var title = nodeMeta.title,\n transform = nodeMeta.transform,\n extra = nodeMeta.extra;\n var width = null;\n var height = null;\n\n if (IS_IE) {\n var computedFontSize = parseInt(getComputedStyle(node).fontSize, 10);\n var boundingClientRect = node.getBoundingClientRect();\n width = boundingClientRect.width / computedFontSize;\n height = boundingClientRect.height / computedFontSize;\n }\n\n if (config.autoA11y && !title) {\n extra.attributes['aria-hidden'] = 'true';\n }\n\n return Promise.resolve([node, makeLayersTextAbstract({\n content: node.innerHTML,\n width: width,\n height: height,\n transform: transform,\n title: title,\n extra: extra,\n watchable: true\n })]);\n };\n }\n};\n\nvar CLEAN_CONTENT_PATTERN = new RegExp(\"\\\"\", 'ug');\nvar SECONDARY_UNICODE_RANGE = [1105920, 1112319];\nfunction hexValueFromContent(content) {\n var cleaned = content.replace(CLEAN_CONTENT_PATTERN, '');\n var codePoint = codePointAt(cleaned, 0);\n var isPrependTen = codePoint >= SECONDARY_UNICODE_RANGE[0] && codePoint <= SECONDARY_UNICODE_RANGE[1];\n var isDoubled = cleaned.length === 2 ? cleaned[0] === cleaned[1] : false;\n return {\n value: isDoubled ? toHex(cleaned[0]) : toHex(cleaned),\n isSecondary: isPrependTen || isDoubled\n };\n}\n\nfunction replaceForPosition(node, position) {\n var pendingAttribute = \"\".concat(DATA_FA_PSEUDO_ELEMENT_PENDING).concat(position.replace(':', '-'));\n return new Promise(function (resolve, reject) {\n if (node.getAttribute(pendingAttribute) !== null) {\n // This node is already being processed\n return resolve();\n }\n\n var children = toArray(node.children);\n var alreadyProcessedPseudoElement = children.filter(function (c) {\n return c.getAttribute(DATA_FA_PSEUDO_ELEMENT) === position;\n })[0];\n var styles = WINDOW.getComputedStyle(node, position);\n var fontFamily = styles.getPropertyValue('font-family').match(FONT_FAMILY_PATTERN);\n var fontWeight = styles.getPropertyValue('font-weight');\n var content = styles.getPropertyValue('content');\n\n if (alreadyProcessedPseudoElement && !fontFamily) {\n // If we've already processed it but the current computed style does not result in a font-family,\n // that probably means that a class name that was previously present to make the icon has been\n // removed. So we now should delete the icon.\n node.removeChild(alreadyProcessedPseudoElement);\n return resolve();\n } else if (fontFamily && content !== 'none' && content !== '') {\n var _content = styles.getPropertyValue('content');\n\n var family = ~['Sharp'].indexOf(fontFamily[2]) ? FAMILY_SHARP : FAMILY_CLASSIC;\n var prefix = ~['Solid', 'Regular', 'Light', 'Thin', 'Duotone', 'Brands', 'Kit'].indexOf(fontFamily[2]) ? STYLE_TO_PREFIX[family][fontFamily[2].toLowerCase()] : FONT_WEIGHT_TO_PREFIX[family][fontWeight];\n\n var _hexValueFromContent = hexValueFromContent(_content),\n hexValue = _hexValueFromContent.value,\n isSecondary = _hexValueFromContent.isSecondary;\n\n var isV4 = fontFamily[0].startsWith('FontAwesome');\n var iconName = byUnicode(prefix, hexValue);\n var iconIdentifier = iconName;\n\n if (isV4) {\n var iconName4 = byOldUnicode(hexValue);\n\n if (iconName4.iconName && iconName4.prefix) {\n iconName = iconName4.iconName;\n prefix = iconName4.prefix;\n }\n } // Only convert the pseudo element in this ::before/::after position into an icon if we haven't\n // already done so with the same prefix and iconName\n\n\n if (iconName && !isSecondary && (!alreadyProcessedPseudoElement || alreadyProcessedPseudoElement.getAttribute(DATA_PREFIX) !== prefix || alreadyProcessedPseudoElement.getAttribute(DATA_ICON) !== iconIdentifier)) {\n node.setAttribute(pendingAttribute, iconIdentifier);\n\n if (alreadyProcessedPseudoElement) {\n // Delete the old one, since we're replacing it with a new one\n node.removeChild(alreadyProcessedPseudoElement);\n }\n\n var meta = blankMeta();\n var extra = meta.extra;\n extra.attributes[DATA_FA_PSEUDO_ELEMENT] = position;\n findIcon(iconName, prefix).then(function (main) {\n var _abstract = makeInlineSvgAbstract(_objectSpread2(_objectSpread2({}, meta), {}, {\n icons: {\n main: main,\n mask: emptyCanonicalIcon()\n },\n prefix: prefix,\n iconName: iconIdentifier,\n extra: extra,\n watchable: true\n }));\n\n var element = DOCUMENT.createElement('svg');\n\n if (position === '::before') {\n node.insertBefore(element, node.firstChild);\n } else {\n node.appendChild(element);\n }\n\n element.outerHTML = _abstract.map(function (a) {\n return toHtml(a);\n }).join('\\n');\n node.removeAttribute(pendingAttribute);\n resolve();\n }).catch(reject);\n } else {\n resolve();\n }\n } else {\n resolve();\n }\n });\n}\n\nfunction replace(node) {\n return Promise.all([replaceForPosition(node, '::before'), replaceForPosition(node, '::after')]);\n}\n\nfunction processable(node) {\n return node.parentNode !== document.head && !~TAGNAMES_TO_SKIP_FOR_PSEUDOELEMENTS.indexOf(node.tagName.toUpperCase()) && !node.getAttribute(DATA_FA_PSEUDO_ELEMENT) && (!node.parentNode || node.parentNode.tagName !== 'svg');\n}\n\nfunction searchPseudoElements(root) {\n if (!IS_DOM) return;\n return new Promise(function (resolve, reject) {\n var operations = toArray(root.querySelectorAll('*')).filter(processable).map(replace);\n var end = perf.begin('searchPseudoElements');\n disableObservation();\n Promise.all(operations).then(function () {\n end();\n enableObservation();\n resolve();\n }).catch(function () {\n end();\n enableObservation();\n reject();\n });\n });\n}\n\nvar PseudoElements = {\n hooks: function hooks() {\n return {\n mutationObserverCallbacks: function mutationObserverCallbacks(accumulator) {\n accumulator.pseudoElementsCallback = searchPseudoElements;\n return accumulator;\n }\n };\n },\n provides: function provides(providers$$1) {\n providers$$1.pseudoElements2svg = function (params) {\n var _params$node = params.node,\n node = _params$node === void 0 ? DOCUMENT : _params$node;\n\n if (config.searchPseudoElements) {\n searchPseudoElements(node);\n }\n };\n }\n};\n\nvar _unwatched = false;\nvar MutationObserver$1 = {\n mixout: function mixout() {\n return {\n dom: {\n unwatch: function unwatch() {\n disableObservation();\n _unwatched = true;\n }\n }\n };\n },\n hooks: function hooks() {\n return {\n bootstrap: function bootstrap() {\n observe(chainHooks('mutationObserverCallbacks', {}));\n },\n noAuto: function noAuto() {\n disconnect();\n },\n watch: function watch(params) {\n var observeMutationsRoot = params.observeMutationsRoot;\n\n if (_unwatched) {\n enableObservation();\n } else {\n observe(chainHooks('mutationObserverCallbacks', {\n observeMutationsRoot: observeMutationsRoot\n }));\n }\n }\n };\n }\n};\n\nvar parseTransformString = function parseTransformString(transformString) {\n var transform = {\n size: 16,\n x: 0,\n y: 0,\n flipX: false,\n flipY: false,\n rotate: 0\n };\n return transformString.toLowerCase().split(' ').reduce(function (acc, n) {\n var parts = n.toLowerCase().split('-');\n var first = parts[0];\n var rest = parts.slice(1).join('-');\n\n if (first && rest === 'h') {\n acc.flipX = true;\n return acc;\n }\n\n if (first && rest === 'v') {\n acc.flipY = true;\n return acc;\n }\n\n rest = parseFloat(rest);\n\n if (isNaN(rest)) {\n return acc;\n }\n\n switch (first) {\n case 'grow':\n acc.size = acc.size + rest;\n break;\n\n case 'shrink':\n acc.size = acc.size - rest;\n break;\n\n case 'left':\n acc.x = acc.x - rest;\n break;\n\n case 'right':\n acc.x = acc.x + rest;\n break;\n\n case 'up':\n acc.y = acc.y - rest;\n break;\n\n case 'down':\n acc.y = acc.y + rest;\n break;\n\n case 'rotate':\n acc.rotate = acc.rotate + rest;\n break;\n }\n\n return acc;\n }, transform);\n};\nvar PowerTransforms = {\n mixout: function mixout() {\n return {\n parse: {\n transform: function transform(transformString) {\n return parseTransformString(transformString);\n }\n }\n };\n },\n hooks: function hooks() {\n return {\n parseNodeAttributes: function parseNodeAttributes(accumulator, node) {\n var transformString = node.getAttribute('data-fa-transform');\n\n if (transformString) {\n accumulator.transform = parseTransformString(transformString);\n }\n\n return accumulator;\n }\n };\n },\n provides: function provides(providers) {\n providers.generateAbstractTransformGrouping = function (_ref) {\n var main = _ref.main,\n transform = _ref.transform,\n containerWidth = _ref.containerWidth,\n iconWidth = _ref.iconWidth;\n var outer = {\n transform: \"translate(\".concat(containerWidth / 2, \" 256)\")\n };\n var innerTranslate = \"translate(\".concat(transform.x * 32, \", \").concat(transform.y * 32, \") \");\n var innerScale = \"scale(\".concat(transform.size / 16 * (transform.flipX ? -1 : 1), \", \").concat(transform.size / 16 * (transform.flipY ? -1 : 1), \") \");\n var innerRotate = \"rotate(\".concat(transform.rotate, \" 0 0)\");\n var inner = {\n transform: \"\".concat(innerTranslate, \" \").concat(innerScale, \" \").concat(innerRotate)\n };\n var path = {\n transform: \"translate(\".concat(iconWidth / 2 * -1, \" -256)\")\n };\n var operations = {\n outer: outer,\n inner: inner,\n path: path\n };\n return {\n tag: 'g',\n attributes: _objectSpread2({}, operations.outer),\n children: [{\n tag: 'g',\n attributes: _objectSpread2({}, operations.inner),\n children: [{\n tag: main.icon.tag,\n children: main.icon.children,\n attributes: _objectSpread2(_objectSpread2({}, main.icon.attributes), operations.path)\n }]\n }]\n };\n };\n }\n};\n\nvar ALL_SPACE = {\n x: 0,\n y: 0,\n width: '100%',\n height: '100%'\n};\n\nfunction fillBlack(_abstract) {\n var force = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : true;\n\n if (_abstract.attributes && (_abstract.attributes.fill || force)) {\n _abstract.attributes.fill = 'black';\n }\n\n return _abstract;\n}\n\nfunction deGroup(_abstract2) {\n if (_abstract2.tag === 'g') {\n return _abstract2.children;\n } else {\n return [_abstract2];\n }\n}\n\nvar Masks = {\n hooks: function hooks() {\n return {\n parseNodeAttributes: function parseNodeAttributes(accumulator, node) {\n var maskData = node.getAttribute('data-fa-mask');\n var mask = !maskData ? emptyCanonicalIcon() : getCanonicalIcon(maskData.split(' ').map(function (i) {\n return i.trim();\n }));\n\n if (!mask.prefix) {\n mask.prefix = getDefaultUsablePrefix();\n }\n\n accumulator.mask = mask;\n accumulator.maskId = node.getAttribute('data-fa-mask-id');\n return accumulator;\n }\n };\n },\n provides: function provides(providers) {\n providers.generateAbstractMask = function (_ref) {\n var children = _ref.children,\n attributes = _ref.attributes,\n main = _ref.main,\n mask = _ref.mask,\n explicitMaskId = _ref.maskId,\n transform = _ref.transform;\n var mainWidth = main.width,\n mainPath = main.icon;\n var maskWidth = mask.width,\n maskPath = mask.icon;\n var trans = transformForSvg({\n transform: transform,\n containerWidth: maskWidth,\n iconWidth: mainWidth\n });\n var maskRect = {\n tag: 'rect',\n attributes: _objectSpread2(_objectSpread2({}, ALL_SPACE), {}, {\n fill: 'white'\n })\n };\n var maskInnerGroupChildrenMixin = mainPath.children ? {\n children: mainPath.children.map(fillBlack)\n } : {};\n var maskInnerGroup = {\n tag: 'g',\n attributes: _objectSpread2({}, trans.inner),\n children: [fillBlack(_objectSpread2({\n tag: mainPath.tag,\n attributes: _objectSpread2(_objectSpread2({}, mainPath.attributes), trans.path)\n }, maskInnerGroupChildrenMixin))]\n };\n var maskOuterGroup = {\n tag: 'g',\n attributes: _objectSpread2({}, trans.outer),\n children: [maskInnerGroup]\n };\n var maskId = \"mask-\".concat(explicitMaskId || nextUniqueId());\n var clipId = \"clip-\".concat(explicitMaskId || nextUniqueId());\n var maskTag = {\n tag: 'mask',\n attributes: _objectSpread2(_objectSpread2({}, ALL_SPACE), {}, {\n id: maskId,\n maskUnits: 'userSpaceOnUse',\n maskContentUnits: 'userSpaceOnUse'\n }),\n children: [maskRect, maskOuterGroup]\n };\n var defs = {\n tag: 'defs',\n children: [{\n tag: 'clipPath',\n attributes: {\n id: clipId\n },\n children: deGroup(maskPath)\n }, maskTag]\n };\n children.push(defs, {\n tag: 'rect',\n attributes: _objectSpread2({\n fill: 'currentColor',\n 'clip-path': \"url(#\".concat(clipId, \")\"),\n mask: \"url(#\".concat(maskId, \")\")\n }, ALL_SPACE)\n });\n return {\n children: children,\n attributes: attributes\n };\n };\n }\n};\n\nvar MissingIconIndicator = {\n provides: function provides(providers) {\n var reduceMotion = false;\n\n if (WINDOW.matchMedia) {\n reduceMotion = WINDOW.matchMedia('(prefers-reduced-motion: reduce)').matches;\n }\n\n providers.missingIconAbstract = function () {\n var gChildren = [];\n var FILL = {\n fill: 'currentColor'\n };\n var ANIMATION_BASE = {\n attributeType: 'XML',\n repeatCount: 'indefinite',\n dur: '2s'\n }; // Ring\n\n gChildren.push({\n tag: 'path',\n attributes: _objectSpread2(_objectSpread2({}, FILL), {}, {\n d: 'M156.5,447.7l-12.6,29.5c-18.7-9.5-35.9-21.2-51.5-34.9l22.7-22.7C127.6,430.5,141.5,440,156.5,447.7z M40.6,272H8.5 c1.4,21.2,5.4,41.7,11.7,61.1L50,321.2C45.1,305.5,41.8,289,40.6,272z M40.6,240c1.4-18.8,5.2-37,11.1-54.1l-29.5-12.6 C14.7,194.3,10,216.7,8.5,240H40.6z M64.3,156.5c7.8-14.9,17.2-28.8,28.1-41.5L69.7,92.3c-13.7,15.6-25.5,32.8-34.9,51.5 L64.3,156.5z M397,419.6c-13.9,12-29.4,22.3-46.1,30.4l11.9,29.8c20.7-9.9,39.8-22.6,56.9-37.6L397,419.6z M115,92.4 c13.9-12,29.4-22.3,46.1-30.4l-11.9-29.8c-20.7,9.9-39.8,22.6-56.8,37.6L115,92.4z M447.7,355.5c-7.8,14.9-17.2,28.8-28.1,41.5 l22.7,22.7c13.7-15.6,25.5-32.9,34.9-51.5L447.7,355.5z M471.4,272c-1.4,18.8-5.2,37-11.1,54.1l29.5,12.6 c7.5-21.1,12.2-43.5,13.6-66.8H471.4z M321.2,462c-15.7,5-32.2,8.2-49.2,9.4v32.1c21.2-1.4,41.7-5.4,61.1-11.7L321.2,462z M240,471.4c-18.8-1.4-37-5.2-54.1-11.1l-12.6,29.5c21.1,7.5,43.5,12.2,66.8,13.6V471.4z M462,190.8c5,15.7,8.2,32.2,9.4,49.2h32.1 c-1.4-21.2-5.4-41.7-11.7-61.1L462,190.8z M92.4,397c-12-13.9-22.3-29.4-30.4-46.1l-29.8,11.9c9.9,20.7,22.6,39.8,37.6,56.9 L92.4,397z M272,40.6c18.8,1.4,36.9,5.2,54.1,11.1l12.6-29.5C317.7,14.7,295.3,10,272,8.5V40.6z M190.8,50 c15.7-5,32.2-8.2,49.2-9.4V8.5c-21.2,1.4-41.7,5.4-61.1,11.7L190.8,50z M442.3,92.3L419.6,115c12,13.9,22.3,29.4,30.5,46.1 l29.8-11.9C470,128.5,457.3,109.4,442.3,92.3z M397,92.4l22.7-22.7c-15.6-13.7-32.8-25.5-51.5-34.9l-12.6,29.5 C370.4,72.1,384.4,81.5,397,92.4z'\n })\n });\n\n var OPACITY_ANIMATE = _objectSpread2(_objectSpread2({}, ANIMATION_BASE), {}, {\n attributeName: 'opacity'\n });\n\n var dot = {\n tag: 'circle',\n attributes: _objectSpread2(_objectSpread2({}, FILL), {}, {\n cx: '256',\n cy: '364',\n r: '28'\n }),\n children: []\n };\n\n if (!reduceMotion) {\n dot.children.push({\n tag: 'animate',\n attributes: _objectSpread2(_objectSpread2({}, ANIMATION_BASE), {}, {\n attributeName: 'r',\n values: '28;14;28;28;14;28;'\n })\n }, {\n tag: 'animate',\n attributes: _objectSpread2(_objectSpread2({}, OPACITY_ANIMATE), {}, {\n values: '1;0;1;1;0;1;'\n })\n });\n }\n\n gChildren.push(dot);\n gChildren.push({\n tag: 'path',\n attributes: _objectSpread2(_objectSpread2({}, FILL), {}, {\n opacity: '1',\n d: 'M263.7,312h-16c-6.6,0-12-5.4-12-12c0-71,77.4-63.9,77.4-107.8c0-20-17.8-40.2-57.4-40.2c-29.1,0-44.3,9.6-59.2,28.7 c-3.9,5-11.1,6-16.2,2.4l-13.1-9.2c-5.6-3.9-6.9-11.8-2.6-17.2c21.2-27.2,46.4-44.7,91.2-44.7c52.3,0,97.4,29.8,97.4,80.2 c0,67.6-77.4,63.5-77.4,107.8C275.7,306.6,270.3,312,263.7,312z'\n }),\n children: reduceMotion ? [] : [{\n tag: 'animate',\n attributes: _objectSpread2(_objectSpread2({}, OPACITY_ANIMATE), {}, {\n values: '1;0;0;0;0;1;'\n })\n }]\n });\n\n if (!reduceMotion) {\n // Exclamation\n gChildren.push({\n tag: 'path',\n attributes: _objectSpread2(_objectSpread2({}, FILL), {}, {\n opacity: '0',\n d: 'M232.5,134.5l7,168c0.3,6.4,5.6,11.5,12,11.5h9c6.4,0,11.7-5.1,12-11.5l7-168c0.3-6.8-5.2-12.5-12-12.5h-23 C237.7,122,232.2,127.7,232.5,134.5z'\n }),\n children: [{\n tag: 'animate',\n attributes: _objectSpread2(_objectSpread2({}, OPACITY_ANIMATE), {}, {\n values: '0;0;1;1;0;0;'\n })\n }]\n });\n }\n\n return {\n tag: 'g',\n attributes: {\n 'class': 'missing'\n },\n children: gChildren\n };\n };\n }\n};\n\nvar SvgSymbols = {\n hooks: function hooks() {\n return {\n parseNodeAttributes: function parseNodeAttributes(accumulator, node) {\n var symbolData = node.getAttribute('data-fa-symbol');\n var symbol = symbolData === null ? false : symbolData === '' ? true : symbolData;\n accumulator['symbol'] = symbol;\n return accumulator;\n }\n };\n }\n};\n\nvar plugins = [InjectCSS, ReplaceElements, Layers, LayersCounter, LayersText, PseudoElements, MutationObserver$1, PowerTransforms, Masks, MissingIconIndicator, SvgSymbols];\n\nregisterPlugins(plugins, {\n mixoutsTo: api\n});\nvar noAuto$1 = api.noAuto;\nvar config$1 = api.config;\nvar library$1 = api.library;\nvar dom$1 = api.dom;\nvar parse$1 = api.parse;\nvar findIconDefinition$1 = api.findIconDefinition;\nvar toHtml$1 = api.toHtml;\nvar icon = api.icon;\nvar layer = api.layer;\nvar text = api.text;\nvar counter = api.counter;\n\nexport { noAuto$1 as noAuto, config$1 as config, library$1 as library, dom$1 as dom, parse$1 as parse, findIconDefinition$1 as findIconDefinition, toHtml$1 as toHtml, icon, layer, text, counter, api };\n","import { parse, icon } from '@fortawesome/fontawesome-svg-core';\nimport PropTypes from 'prop-types';\nimport React from 'react';\n\nfunction ownKeys(object, enumerableOnly) {\n var keys = Object.keys(object);\n\n if (Object.getOwnPropertySymbols) {\n var symbols = Object.getOwnPropertySymbols(object);\n enumerableOnly && (symbols = symbols.filter(function (sym) {\n return Object.getOwnPropertyDescriptor(object, sym).enumerable;\n })), keys.push.apply(keys, symbols);\n }\n\n return keys;\n}\n\nfunction _objectSpread2(target) {\n for (var i = 1; i < arguments.length; i++) {\n var source = null != arguments[i] ? arguments[i] : {};\n i % 2 ? ownKeys(Object(source), !0).forEach(function (key) {\n _defineProperty(target, key, source[key]);\n }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) {\n Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key));\n });\n }\n\n return target;\n}\n\nfunction _typeof(obj) {\n \"@babel/helpers - typeof\";\n\n return _typeof = \"function\" == typeof Symbol && \"symbol\" == typeof Symbol.iterator ? function (obj) {\n return typeof obj;\n } : function (obj) {\n return obj && \"function\" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj;\n }, _typeof(obj);\n}\n\nfunction _defineProperty(obj, key, value) {\n if (key in obj) {\n Object.defineProperty(obj, key, {\n value: value,\n enumerable: true,\n configurable: true,\n writable: true\n });\n } else {\n obj[key] = value;\n }\n\n return obj;\n}\n\nfunction _objectWithoutPropertiesLoose(source, excluded) {\n if (source == null) return {};\n var target = {};\n var sourceKeys = Object.keys(source);\n var key, i;\n\n for (i = 0; i < sourceKeys.length; i++) {\n key = sourceKeys[i];\n if (excluded.indexOf(key) >= 0) continue;\n target[key] = source[key];\n }\n\n return target;\n}\n\nfunction _objectWithoutProperties(source, excluded) {\n if (source == null) return {};\n\n var target = _objectWithoutPropertiesLoose(source, excluded);\n\n var key, i;\n\n if (Object.getOwnPropertySymbols) {\n var sourceSymbolKeys = Object.getOwnPropertySymbols(source);\n\n for (i = 0; i < sourceSymbolKeys.length; i++) {\n key = sourceSymbolKeys[i];\n if (excluded.indexOf(key) >= 0) continue;\n if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue;\n target[key] = source[key];\n }\n }\n\n return target;\n}\n\nfunction _toConsumableArray(arr) {\n return _arrayWithoutHoles(arr) || _iterableToArray(arr) || _unsupportedIterableToArray(arr) || _nonIterableSpread();\n}\n\nfunction _arrayWithoutHoles(arr) {\n if (Array.isArray(arr)) return _arrayLikeToArray(arr);\n}\n\nfunction _iterableToArray(iter) {\n if (typeof Symbol !== \"undefined\" && iter[Symbol.iterator] != null || iter[\"@@iterator\"] != null) return Array.from(iter);\n}\n\nfunction _unsupportedIterableToArray(o, minLen) {\n if (!o) return;\n if (typeof o === \"string\") return _arrayLikeToArray(o, minLen);\n var n = Object.prototype.toString.call(o).slice(8, -1);\n if (n === \"Object\" && o.constructor) n = o.constructor.name;\n if (n === \"Map\" || n === \"Set\") return Array.from(o);\n if (n === \"Arguments\" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen);\n}\n\nfunction _arrayLikeToArray(arr, len) {\n if (len == null || len > arr.length) len = arr.length;\n\n for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i];\n\n return arr2;\n}\n\nfunction _nonIterableSpread() {\n throw new TypeError(\"Invalid attempt to spread non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\");\n}\n\n// Get CSS class list from a props object\nfunction classList(props) {\n var _classes;\n\n var beat = props.beat,\n fade = props.fade,\n beatFade = props.beatFade,\n bounce = props.bounce,\n shake = props.shake,\n flash = props.flash,\n spin = props.spin,\n spinPulse = props.spinPulse,\n spinReverse = props.spinReverse,\n pulse = props.pulse,\n fixedWidth = props.fixedWidth,\n inverse = props.inverse,\n border = props.border,\n listItem = props.listItem,\n flip = props.flip,\n size = props.size,\n rotation = props.rotation,\n pull = props.pull; // map of CSS class names to properties\n\n var classes = (_classes = {\n 'fa-beat': beat,\n 'fa-fade': fade,\n 'fa-beat-fade': beatFade,\n 'fa-bounce': bounce,\n 'fa-shake': shake,\n 'fa-flash': flash,\n 'fa-spin': spin,\n 'fa-spin-reverse': spinReverse,\n 'fa-spin-pulse': spinPulse,\n 'fa-pulse': pulse,\n 'fa-fw': fixedWidth,\n 'fa-inverse': inverse,\n 'fa-border': border,\n 'fa-li': listItem,\n 'fa-flip': flip === true,\n 'fa-flip-horizontal': flip === 'horizontal' || flip === 'both',\n 'fa-flip-vertical': flip === 'vertical' || flip === 'both'\n }, _defineProperty(_classes, \"fa-\".concat(size), typeof size !== 'undefined' && size !== null), _defineProperty(_classes, \"fa-rotate-\".concat(rotation), typeof rotation !== 'undefined' && rotation !== null && rotation !== 0), _defineProperty(_classes, \"fa-pull-\".concat(pull), typeof pull !== 'undefined' && pull !== null), _defineProperty(_classes, 'fa-swap-opacity', props.swapOpacity), _classes); // map over all the keys in the classes object\n // return an array of the keys where the value for the key is not null\n\n return Object.keys(classes).map(function (key) {\n return classes[key] ? key : null;\n }).filter(function (key) {\n return key;\n });\n}\n\n// Camelize taken from humps\n// humps is copyright © 2012+ Dom Christie\n// Released under the MIT license.\n// Performant way to determine if object coerces to a number\nfunction _isNumerical(obj) {\n obj = obj - 0; // eslint-disable-next-line no-self-compare\n\n return obj === obj;\n}\n\nfunction camelize(string) {\n if (_isNumerical(string)) {\n return string;\n } // eslint-disable-next-line no-useless-escape\n\n\n string = string.replace(/[\\-_\\s]+(.)?/g, function (match, chr) {\n return chr ? chr.toUpperCase() : '';\n }); // Ensure 1st char is always lowercase\n\n return string.substr(0, 1).toLowerCase() + string.substr(1);\n}\n\nvar _excluded = [\"style\"];\n\nfunction capitalize(val) {\n return val.charAt(0).toUpperCase() + val.slice(1);\n}\n\nfunction styleToObject(style) {\n return style.split(';').map(function (s) {\n return s.trim();\n }).filter(function (s) {\n return s;\n }).reduce(function (acc, pair) {\n var i = pair.indexOf(':');\n var prop = camelize(pair.slice(0, i));\n var value = pair.slice(i + 1).trim();\n prop.startsWith('webkit') ? acc[capitalize(prop)] = value : acc[prop] = value;\n return acc;\n }, {});\n}\n\nfunction convert(createElement, element) {\n var extraProps = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};\n\n if (typeof element === 'string') {\n return element;\n }\n\n var children = (element.children || []).map(function (child) {\n return convert(createElement, child);\n });\n /* eslint-disable dot-notation */\n\n var mixins = Object.keys(element.attributes || {}).reduce(function (acc, key) {\n var val = element.attributes[key];\n\n switch (key) {\n case 'class':\n acc.attrs['className'] = val;\n delete element.attributes['class'];\n break;\n\n case 'style':\n acc.attrs['style'] = styleToObject(val);\n break;\n\n default:\n if (key.indexOf('aria-') === 0 || key.indexOf('data-') === 0) {\n acc.attrs[key.toLowerCase()] = val;\n } else {\n acc.attrs[camelize(key)] = val;\n }\n\n }\n\n return acc;\n }, {\n attrs: {}\n });\n\n var _extraProps$style = extraProps.style,\n existingStyle = _extraProps$style === void 0 ? {} : _extraProps$style,\n remaining = _objectWithoutProperties(extraProps, _excluded);\n\n mixins.attrs['style'] = _objectSpread2(_objectSpread2({}, mixins.attrs['style']), existingStyle);\n /* eslint-enable */\n\n return createElement.apply(void 0, [element.tag, _objectSpread2(_objectSpread2({}, mixins.attrs), remaining)].concat(_toConsumableArray(children)));\n}\n\nvar PRODUCTION = false;\n\ntry {\n PRODUCTION = process.env.NODE_ENV === 'production';\n} catch (e) {}\n\nfunction log () {\n if (!PRODUCTION && console && typeof console.error === 'function') {\n var _console;\n\n (_console = console).error.apply(_console, arguments);\n }\n}\n\nfunction normalizeIconArgs(icon) {\n // this has everything that it needs to be rendered which means it was probably imported\n // directly from an icon svg package\n if (icon && _typeof(icon) === 'object' && icon.prefix && icon.iconName && icon.icon) {\n return icon;\n }\n\n if (parse.icon) {\n return parse.icon(icon);\n } // if the icon is null, there's nothing to do\n\n\n if (icon === null) {\n return null;\n } // if the icon is an object and has a prefix and an icon name, return it\n\n\n if (icon && _typeof(icon) === 'object' && icon.prefix && icon.iconName) {\n return icon;\n } // if it's an array with length of two\n\n\n if (Array.isArray(icon) && icon.length === 2) {\n // use the first item as prefix, second as icon name\n return {\n prefix: icon[0],\n iconName: icon[1]\n };\n } // if it's a string, use it as the icon name\n\n\n if (typeof icon === 'string') {\n return {\n prefix: 'fas',\n iconName: icon\n };\n }\n}\n\n// creates an object with a key of key\n// and a value of value\n// if certain conditions are met\nfunction objectWithKey(key, value) {\n // if the value is a non-empty array\n // or it's not an array but it is truthy\n // then create the object with the key and the value\n // if not, return an empty array\n return Array.isArray(value) && value.length > 0 || !Array.isArray(value) && value ? _defineProperty({}, key, value) : {};\n}\n\nvar FontAwesomeIcon = /*#__PURE__*/React.forwardRef(function (props, ref) {\n var iconArgs = props.icon,\n maskArgs = props.mask,\n symbol = props.symbol,\n className = props.className,\n title = props.title,\n titleId = props.titleId,\n maskId = props.maskId;\n var iconLookup = normalizeIconArgs(iconArgs);\n var classes = objectWithKey('classes', [].concat(_toConsumableArray(classList(props)), _toConsumableArray(className.split(' '))));\n var transform = objectWithKey('transform', typeof props.transform === 'string' ? parse.transform(props.transform) : props.transform);\n var mask = objectWithKey('mask', normalizeIconArgs(maskArgs));\n var renderedIcon = icon(iconLookup, _objectSpread2(_objectSpread2(_objectSpread2(_objectSpread2({}, classes), transform), mask), {}, {\n symbol: symbol,\n title: title,\n titleId: titleId,\n maskId: maskId\n }));\n\n if (!renderedIcon) {\n log('Could not find icon', iconLookup);\n return null;\n }\n\n var abstract = renderedIcon.abstract;\n var extraProps = {\n ref: ref\n };\n Object.keys(props).forEach(function (key) {\n // eslint-disable-next-line no-prototype-builtins\n if (!FontAwesomeIcon.defaultProps.hasOwnProperty(key)) {\n extraProps[key] = props[key];\n }\n });\n return convertCurry(abstract[0], extraProps);\n});\nFontAwesomeIcon.displayName = 'FontAwesomeIcon';\nFontAwesomeIcon.propTypes = {\n beat: PropTypes.bool,\n border: PropTypes.bool,\n beatFade: PropTypes.bool,\n bounce: PropTypes.bool,\n className: PropTypes.string,\n fade: PropTypes.bool,\n flash: PropTypes.bool,\n mask: PropTypes.oneOfType([PropTypes.object, PropTypes.array, PropTypes.string]),\n maskId: PropTypes.string,\n fixedWidth: PropTypes.bool,\n inverse: PropTypes.bool,\n flip: PropTypes.oneOf([true, false, 'horizontal', 'vertical', 'both']),\n icon: PropTypes.oneOfType([PropTypes.object, PropTypes.array, PropTypes.string]),\n listItem: PropTypes.bool,\n pull: PropTypes.oneOf(['right', 'left']),\n pulse: PropTypes.bool,\n rotation: PropTypes.oneOf([0, 90, 180, 270]),\n shake: PropTypes.bool,\n size: PropTypes.oneOf(['2xs', 'xs', 'sm', 'lg', 'xl', '2xl', '1x', '2x', '3x', '4x', '5x', '6x', '7x', '8x', '9x', '10x']),\n spin: PropTypes.bool,\n spinPulse: PropTypes.bool,\n spinReverse: PropTypes.bool,\n symbol: PropTypes.oneOfType([PropTypes.bool, PropTypes.string]),\n title: PropTypes.string,\n titleId: PropTypes.string,\n transform: PropTypes.oneOfType([PropTypes.string, PropTypes.object]),\n swapOpacity: PropTypes.bool\n};\nFontAwesomeIcon.defaultProps = {\n border: false,\n className: '',\n mask: null,\n maskId: null,\n fixedWidth: false,\n inverse: false,\n flip: false,\n icon: null,\n listItem: false,\n pull: null,\n pulse: false,\n rotation: null,\n size: null,\n spin: false,\n spinPulse: false,\n spinReverse: false,\n beat: false,\n fade: false,\n beatFade: false,\n bounce: false,\n shake: false,\n symbol: false,\n title: '',\n titleId: null,\n transform: null,\n swapOpacity: false\n};\nvar convertCurry = convert.bind(null, React.createElement);\n\nexport { FontAwesomeIcon };\n","import { useRef, useEffect } from \"react\";\nimport '../../node_modules/bootstrap/dist/css/bootstrap.min.css'\nimport SignatureCanvas from 'react-signature-canvas'\nimport Popup from \"reactjs-popup\";\nimport TermsConditions from \"../Components/TermsConditions\";\nimport { FontAwesomeIcon } from '@fortawesome/react-fontawesome'\n\nfunction Signature({signature1 , setSignature1, signature2, setSignature2, setAgree, setFlag,\n flag, formData3, formData4, checkbox1, setcheckbox1, marketingChannel, cCounter, pCounter}) {\n\n useEffect(() => {\n window.scrollTo(0,0); \n }, [])\n\n //setting useRef for the signature\n const sigCanvas1 = useRef({});\n const sigCanvas2 = useRef({});\n\n //Save signature as svg and base64 encoded\n const save1 = () =>\n setSignature1(sigCanvas1.current.toDataURL('image/svg+xml'));\n const save2 = () =>\n setSignature2(sigCanvas2.current.toDataURL('image/svg+xml'));\n \n //clear signature and signature preview\n const clear1 = () => {\n sigCanvas1.current.clear();\n setSignature1(false);\n }\n const clear2 = () => {\n sigCanvas2.current.clear();\n setSignature2(false);\n }\n\n const SignatureOrder = () => {\n\n if(cCounter <= pCounter){\n return <>\n
\n
\n

{formData3.firstname} {formData3.lastname} please sign below

\n {signature1 ? (\"signature\"/):(
)}\n Signature complete : } closeOnDocumentClick={false} lockScroll={true}>\n {close =>(\n <>
\n \n
\n
\n \n
\n
\n \n \n
\n \n )}\n
\n
\n
\n
\n
\n

{formData4.firstname} {formData4.lastname} please sign below

\n {signature2 ? (\"signature\"/):(
)}\n Signature complete : } closeOnDocumentClick={false} lockScroll={true}>\n {close =>(\n <>
\n \n
\n
\n \n
\n
\n \n \n
\n \n )}\n
\n
\n
\n \n } else {\n return <>\n
\n
\n

{formData4.firstname} {formData4.lastname} please sign below

\n {signature2 ? (\"signature\"/):(
)}\n Signature complete : } closeOnDocumentClick={false} lockScroll={true}>\n {close =>(\n <>
\n \n
\n
\n \n
\n
\n \n \n
\n \n )}\n
\n
\n
\n
\n
\n

{formData3.firstname} {formData3.lastname} please sign below

\n {signature1 ? (\"signature\"/):(
)}\n Signature complete : } closeOnDocumentClick={false} lockScroll={true}>\n {close =>(\n <>
\n \n
\n
\n \n
\n
\n \n \n
\n \n )}\n
\n
\n
\n \n }\n \n }\n \n return (\n <>\n
\n
\n
\n

Please Provide Your Signatures Below

\n
\n
\n
\n { marketingChannel !== 'Contact Centre' && <>\n
\n
\n \n
\n
}\n \n )\n}\n\nexport default Signature;","import { forwardRef } from 'react'\nimport './Formmodal.css'\n\nfunction Formmodal({setModalToggle}, ref) {\n\n return (\n
\n
\n
\n \n
\n
\n

Please answer all questions correctly.

\n
\n
\n )\n}\n\nexport default forwardRef(Formmodal);","import React, { forwardRef, useEffect, useState} from 'react'\nimport { format } from 'date-fns';\n\n\nfunction PartnerDetails({formData4, setFormData4, formData3, isValid, setPCounter, dob2Valid, setDob2Valid}, ref) {\n \n useEffect(() => {\n window.scrollTo(0,0); \n }, [])\n\n\n //income counter\n useEffect(() => {\n if(formData4.clientdata.approximateAnnualIncome === \"£0 - £12,569\"){\n setPCounter(1)\n }\n if(formData4.clientdata.approximateAnnualIncome === \"£12,570 - £50,269\"){\n setPCounter(2)\n }\n if(formData4.clientdata.approximateAnnualIncome === \"£50,270 +\"){\n setPCounter(3)\n }\n },[formData4.clientdata.approximateAnnualIncome, setPCounter])\n //Form Validation \n const ValidateTitle = () =>{\n const title = formData4.title\n const isTitle = isValid[0];\n if ((title === '' || title === '-')&& isTitle.valid === false){\n return

please enter your title

\n }\n }\n\n const ValidateFname = () =>{\n const firstName = formData4.firstname\n const isFname = isValid[1];\n if (firstName.length <= 1 && isFname.valid === false){\n return

please enter your first name

\n } else{\n return
\n }\n }\n\n const ValidateLname = () =>{\n const lastName = formData4.lastname\n const isLname = isValid[2];\n if (lastName.length <= 1 && isLname.valid === false){\n return

please enter your last name

\n } else{\n return
\n }\n }\n\n const ValidateDob = () =>{\n const isDob = isValid[3];\n if ((!dob2Valid || formData4.dob.length === 0) && isDob.valid === false){\n return

please enter your date of birth

\n } else{\n return
\n }\n }\n\n const ValidateNinumber = () =>{\n const niNumber = formData4.clientdata.nationalInsuranceNumber\n const isNino = isValid[4];\n const ValidNinumber = /^[A-CEGHJ-PR-TW-Z]{1}[A-CEGHJ-NPR-TW-Z]{1}[0-9]{6}[A-DFM]{1}$/.test(niNumber.replace(/\\s/g, ''));\n if (!ValidNinumber && isNino.valid === false && niNumber.length >= 1){\n return

please enter a valid National Insurance Number

\n } else if(formData3.clientdata.nationalInsuranceNumber === niNumber && niNumber.length >= 1) {\n return

You cannot add the same National Inusrance number in twice

\n } else{\n return
\n }\n }\n\n const ValidateIncome = () =>{\n const income = formData4.clientdata.approximateAnnualIncome\n const isIncome = isValid[5];\n if ((income === '-'|| income === '') && isIncome.valid === false){\n return

please enter your Approximate annual income

\n } else{\n return
\n }\n }\n // handling dob formatting\n const [dob,setDob] = useState('')\n const handleDob = (e) => {\n const selectedDate = e.target.value;\n const formattedDate = format(new Date(selectedDate), 'dd/MM/yyyy');\n setDob(e.target.value)\n setFormData4({...formData4, dob: formattedDate})\n const getAge = birthDate => Math.floor((new Date() - new Date(birthDate).getTime()) / 3.15576e+10)\n if(getAge(e.target.value) < 18){\n setDob2Valid(false)\n } else{\n setDob2Valid(true)\n }\n }\n return (\n <>\n
\n
\n
\n
\n
\n
Title
\n
\n
\n \n \n
\n
\n
\n
\n
\n
\n
\n
\n
\n {setFormData4({...formData4, firstname: e.target.value}); }} \n value={formData4.firstname}\n />\n \n
\n
\n
\n
\n
\n
\n
\n
\n
\n {setFormData4({...formData4, lastname: e.target.value});}} \n value={formData4.lastname}\n />\n \n
\n
\n
\n
\n
\n
\n
\n
\n
\n \n \n
\n
\n
\n
\n
\n
\n
\n
\n
\n {setFormData4({...formData4, clientdata: {...formData4.clientdata, nationalInsuranceNumber: e.target.value}}); }} \n value={formData4.clientdata.nationalInsuranceNumber}\n />\n \n
\n
\n
\n

Providing your national insurance number will help to speed up the process.

\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
£
\n
\n \n
\n \n
\n
\n
\n
\n
\n
\n \n )\n}\nexport default forwardRef(PartnerDetails);","import {useState, useEffect} from 'react'\n\nfunction Address({formData3, setFormData3, isValid, setIsValid, setSameAddress}) {\n \n useEffect(() => {\n window.scrollTo(0,0); \n }, [])\n\n const ValidatePostcode = () =>{\n const postcode = formData3.address.postcode\n const isPostcode = isValid[6]\n const ValidPostcode = /^[A-Za-z][A-Ha-hJ-Yj-y]?[0-9][A-Za-z0-9]? ?[0-9][A-Za-z]{2}|[Gg][Ii][Rr] ?0[Aa]{2}$/.test(postcode.replace(/\\s/g, ''));\n if (!ValidPostcode && isPostcode.valid === false){\n return

please enter a valid postcode

\n }else{\n return
\n }\n }\n\n const SelectAddress = () =>{\n return <>\n
\n
\n
Select Address:
\n \n
\n
\n \n }\n \n const ValidateSameAddress = () =>{\n const sameAddress = formData3.sameAddress\n const isSameAddrss = isValid[7]\n if (sameAddress === '' && isSameAddrss.valid === false){\n return

please enter answer yes or no

\n } else{\n return
\n }\n }\n\n // set select address state to conditonally render when postcode look up is successfull\n const [showField, setShowField] = useState(false);\n // set retreived addresses from the api to a useState array\n const [addressData, setAddressData] = useState([]);\n\n // fetch and request array of addresses from api\n const handleChange = () =>{\n const postcode = formData3.address.postcode\n const ValidPostcode = /^[A-Za-z][A-Ha-hJ-Yj-y]?[0-9][A-Za-z0-9]? ?[0-9][A-Za-z]{2}|[Gg][Ii][Rr] ?0[Aa]{2}$/.test(postcode.replace(/\\s/g, ''));\n //only fetch if postcode is in the correct format\n if(ValidPostcode){\n const pcode = formData3.address.postcode\n fetch(`/address/${pcode}`)\n .then((res) => res.json())\n .then((addressData) => setAddressData(addressData.results))\n .catch((err) => console.log(err));\n setShowField(true)\n } else{\n setIsValid(\n isValid.map((item) => {\n if(item.id === \"7\"){\n return {...item, valid: false};\n }else{\n return item;\n }\n }));\n }\n }\n \n return (\n <>\n
\n
\n
\n
\n
\n
\n {setFormData3({...formData3, address:{...formData3.address, postcode: e.target.value}})}} \n value={formData3.address.postcode}\n />\n
\n
\n \n
\n \n
\n
\n {showField && }\n
\n
\n {showField && <>\n
\n
\n
\n
Does your partner live at the same address?
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n \n
\n
\n }\n \n )\n}\n\nexport default Address","import arrayWithoutHoles from \"./arrayWithoutHoles.js\";\nimport iterableToArray from \"./iterableToArray.js\";\nimport unsupportedIterableToArray from \"./unsupportedIterableToArray.js\";\nimport nonIterableSpread from \"./nonIterableSpread.js\";\nexport default function _toConsumableArray(arr) {\n return arrayWithoutHoles(arr) || iterableToArray(arr) || unsupportedIterableToArray(arr) || nonIterableSpread();\n}","import arrayLikeToArray from \"./arrayLikeToArray.js\";\nexport default function _arrayWithoutHoles(arr) {\n if (Array.isArray(arr)) return arrayLikeToArray(arr);\n}","export default function _iterableToArray(iter) {\n if (typeof Symbol !== \"undefined\" && iter[Symbol.iterator] != null || iter[\"@@iterator\"] != null) return Array.from(iter);\n}","export default function _nonIterableSpread() {\n throw new TypeError(\"Invalid attempt to spread non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\");\n}","import { useState as e, useEffect as o, useLayoutEffect as t, useRef as n, forwardRef as r, useCallback as a } from \"react\";\nimport { jsxs as i, jsx as c } from \"react/jsx-runtime\";\nconst m = [\"aol.com\", \"att.net\", \"comcast.net\", \"facebook.com\", \"gmail.com\", \"gmx.com\", \"googlemail.com\", \"google.com\", \"hotmail.com\", \"hotmail.co.uk\", \"mac.com\", \"me.com\", \"mail.com\", \"msn.com\", \"live.com\", \"sbcglobal.net\", \"verizon.net\", \"yahoo.com\", \"yahoo.co.uk\", \"email.com\", \"fastmail.fm\", \"games.com\", \"gmx.net\", \"hush.com\", \"hushmail.com\", \"icloud.com\", \"iname.com\", \"inbox.com\", \"lavabit.com\", \"love.com\", \"outlook.com\", \"pobox.com\", \"protonmail.ch\", \"protonmail.com\", \"tutanota.de\", \"tutanota.com\", \"tutamail.com\", \"tuta.io\", \"keemail.me\", \"rocketmail.com\", \"safe-mail.net\", \"wow.com\", \"ygm.com\", \"ymail.com\", \"zoho.com\", \"bellsouth.net\", \"charter.net\", \"cox.net\", \"earthlink.net\", \"juno.com\", \"btinternet.com\", \"virginmedia.com\", \"blueyonder.co.uk\", \"live.co.uk\", \"ntlworld.com\", \"orange.net\", \"sky.com\", \"talktalk.co.uk\", \"tiscali.co.uk\", \"virgin.net\", \"bt.com\", \"sina.com\", \"sina.cn\", \"qq.com\", \"naver.com\", \"hanmail.net\", \"daum.net\", \"nate.com\", \"yahoo.co.jp\", \"yahoo.co.kr\", \"yahoo.co.id\", \"yahoo.co.in\", \"yahoo.com.sg\", \"yahoo.com.ph\", \"163.com\", \"yeah.net\", \"126.com\", \"21cn.com\", \"aliyun.com\", \"foxmail.com\", \"hotmail.fr\", \"live.fr\", \"laposte.net\", \"yahoo.fr\", \"wanadoo.fr\", \"orange.fr\", \"gmx.fr\", \"sfr.fr\", \"neuf.fr\", \"free.fr\", \"gmx.de\", \"hotmail.de\", \"live.de\", \"online.de\", \"t-online.de\", \"web.de\", \"yahoo.de\", \"libero.it\", \"virgilio.it\", \"hotmail.it\", \"aol.it\", \"tiscali.it\", \"alice.it\", \"live.it\", \"yahoo.it\", \"email.it\", \"tin.it\", \"poste.it\", \"teletu.it\", \"bk.ru\", \"inbox.ru\", \"list.ru\", \"mail.ru\", \"rambler.ru\", \"yandex.by\", \"yandex.com\", \"yandex.kz\", \"yandex.ru\", \"yandex.ua\", \"ya.ru\", \"hotmail.be\", \"live.be\", \"skynet.be\", \"voo.be\", \"tvcablenet.be\", \"telenet.be\", \"hotmail.com.ar\", \"live.com.ar\", \"yahoo.com.ar\", \"fibertel.com.ar\", \"speedy.com.ar\", \"arnet.com.ar\", \"yahoo.com.mx\", \"live.com.mx\", \"hotmail.es\", \"hotmail.com.mx\", \"prodigy.net.mx\", \"yahoo.ca\", \"hotmail.ca\", \"bell.net\", \"shaw.ca\", \"sympatico.ca\", \"rogers.com\", \"yahoo.com.br\", \"hotmail.com.br\", \"outlook.com.br\", \"uol.com.br\", \"bol.com.br\", \"terra.com.br\", \"ig.com.br\", \"r7.com\", \"zipmail.com.br\", \"globo.com\", \"globomail.com\", \"oi.com.br\"], l = (t2, n2) => {\n const r2 = n2 || (navigator == null ? void 0 : navigator.language), [a2, i2] = e(t2.default);\n return o(() => {\n const e2 = t2[r2];\n if (e2)\n return i2(e2);\n const o2 = r2.split(/[-_]/)[0], n3 = t2[o2];\n return n3 ? i2(n3) : void 0;\n }, [r2, t2]), a2;\n}, s = \"undefined\" != typeof window ? t : o, u = /^[a-z0-9]$/i;\nfunction d(e2) {\n return e2.replace(/\\s+/g, \"\").toLowerCase();\n}\nfunction p(e2, o2, t2) {\n return \"number\" == typeof e2 && Number.isInteger(e2) && e2 <= o2 ? e2 : t2;\n}\nfunction h(e2) {\n return \"function\" == typeof e2;\n}\nvar f = ((e2) => (e2.Wrapper = \"wrapper\", e2.Input = \"input\", e2.Dropdown = \"dropdown\", e2.Suggestion = \"suggestion\", e2.Username = \"username\", e2.Domain = \"domain\", e2))(f || {}), g = ((e2) => (e2[e2.Initial = 0] = \"Initial\", e2[e2.Top = 1] = \"Top\", e2[e2.Bottom = 2] = \"Bottom\", e2))(g || {});\nconst v = r(({ onChange: r2, value: m2, baseList: l2, refineList: v2 = [], maxResults: b = 6, minChars: x = 2, className: y, classNames: w, onSelect: I = () => {\n}, customPrefix: k = \"rbe_\", children: D, wrapperId: P, placement: E = \"auto\", onFocus: L, onBlur: B, onInput: C, onKeyDown: A = () => {\n}, id: T, name: z, placeholder: $, readOnly: S, disabled: N, required: R, pattern: U, isInvalid: q }, M) => {\n const j = (v2 == null ? void 0 : v2.length) > 0, F = p(b, 8, 6), K = p(x, 8, 2), O = l2.slice(0, F), W = \"auto\" === E, _ = n(false), V = n(\"\"), Y = `${k}${V.current}`, G = n(null), H = n(null), J = n(null), Q = n([]), X = n(true), [Z, ee] = e(O), [oe, te] = e(g.Initial), ne = function(e2) {\n const o2 = n();\n return t(() => {\n o2.current = e2;\n }), o2.current;\n }(oe), re = oe === g.Top, [ae, ie] = e({ focusedIndex: -1, hoveredIndex: -1 });\n function ce(e2 = -1, o2 = -1) {\n ie({ focusedIndex: e2, hoveredIndex: o2 });\n }\n function me({ isDecrement: e2 }) {\n const o2 = e2 ? -1 : 1;\n ie((e3) => ({ hoveredIndex: e3.hoveredIndex + o2, focusedIndex: e3.hoveredIndex + o2 }));\n }\n const le = \"string\" != typeof m2 ? \"\" : d(m2), [se] = le.split(\"@\"), ue = _.current && Z.length > 0 && se.length >= K, de = a(() => {\n ee([]), ce();\n }, []);\n function pe(e2, o2, t2) {\n e2.preventDefault(), e2.stopPropagation();\n const n2 = d(e2.currentTarget.textContent);\n r2(n2), de(), requestAnimationFrame(() => {\n I({ value: n2, keyboard: t2, position: o2 + 1 });\n });\n }\n function he(e2) {\n var _a, _b, _c, _d;\n if (u.test(e2.key))\n return e2.stopPropagation(), (_a = H == null ? void 0 : H.current) == null ? void 0 : _a.focus();\n switch (e2.code) {\n case \"Tab\":\n return e2.stopPropagation(), de();\n case \"Escape\":\n return e2.preventDefault(), e2.stopPropagation(), de(), void (H.current && (H.current.setSelectionRange(le.length, le.length), H.current.focus()));\n case \"Enter\":\n case \"Space\":\n return e2.preventDefault(), e2.stopPropagation(), pe(e2, ae.focusedIndex, true);\n case \"Backspace\":\n case \"ArrowLeft\":\n case \"ArrowRight\":\n return e2.stopPropagation(), (_b = H == null ? void 0 : H.current) == null ? void 0 : _b.focus();\n case \"ArrowUp\":\n if (e2.preventDefault(), e2.stopPropagation(), re && 0 === ae.hoveredIndex)\n return;\n me({ isDecrement: true }), oe === g.Bottom && 0 === ae.hoveredIndex && ((_c = H == null ? void 0 : H.current) == null ? void 0 : _c.focus());\n break;\n case \"ArrowDown\":\n e2.preventDefault(), e2.stopPropagation(), ae.hoveredIndex < Z.length - 1 && me({ isDecrement: false }), re && ae.hoveredIndex === Z.length - 1 && (ce(-1, -1), (_d = H == null ? void 0 : H.current) == null ? void 0 : _d.focus());\n }\n }\n function fe(e2, o2) {\n Q.current.some((o3) => o3 === e2.relatedTarget) && null != e2.relatedTarget || o2(e2);\n }\n function ge(e2) {\n return (w == null ? void 0 : w[e2]) ? { className: w[e2] } : {};\n }\n s(() => {\n V.current || (V.current = (Math.random() + 1).toString(36).substring(7));\n }, []), s(() => {\n const e2 = function(e3) {\n if (\"fixed\" === e3.style.position)\n return document.documentElement;\n let o3 = false, t3 = e3.parentElement;\n for (; !o3 && t3 && t3 !== document.documentElement; ) {\n const { overflow: e4, overflowY: n3 } = getComputedStyle(t3);\n if (o3 = /(auto|scroll)/.test(`${e4}${n3}`), o3)\n break;\n t3 = t3.parentElement;\n }\n return t3;\n }(H.current), o2 = e2 === document.documentElement, t2 = o2 ? document : e2, n2 = W ? function() {\n var _a;\n if (H.current && J.current && e2) {\n const t3 = ((_a = window.visualViewport) == null ? void 0 : _a.height) || 0, { bottom: n3 } = e2.getBoundingClientRect(), { height: r3 } = J.current.getBoundingClientRect(), { bottom: a2, height: i2 } = H.current.getBoundingClientRect(), c2 = (o2 ? t3 : n3) - a2 >= r3;\n J.current.style.removeProperty(\"top\"), c2 ? (te(g.Bottom), J.current.style.removeProperty(\"bottom\")) : (te(g.Top), J.current.style.bottom = `${i2 ?? 0}px`), X.current = false;\n }\n } : () => {\n };\n if (ue) {\n if (X.current) {\n if (!W)\n return X.current = false, te(g.Bottom);\n n2();\n }\n t2 == null ? void 0 : t2.addEventListener(\"scroll\", n2, { passive: true }), window.addEventListener(\"resize\", n2, { passive: true });\n } else\n X.current = true;\n return () => {\n t2 == null ? void 0 : t2.removeEventListener(\"scroll\", n2), window.removeEventListener(\"resize\", n2);\n };\n }, [ue, W]), s(() => {\n if (J.current && (J.current.dataset.placement = re ? \"top\" : \"bottom\"), W && void 0 !== ne && ne !== oe)\n return ne === g.Initial ? re ? ee((e2) => [...e2.reverse()]) : void 0 : ee((e2) => [...e2.reverse()]);\n }, [oe, ne, W, re]), o(() => {\n var _a;\n ae.focusedIndex >= 0 && ((_a = Q == null ? void 0 : Q.current[ae.focusedIndex]) == null ? void 0 : _a.focus());\n }, [ae.focusedIndex]), o(() => {\n function e2(e3) {\n var _a;\n ue && !((_a = G.current) == null ? void 0 : _a.contains(e3.target)) && de();\n }\n return ue || ce(), document.addEventListener(\"click\", e2), () => {\n document.removeEventListener(\"click\", e2);\n };\n }, [ue, de]);\n const ve = { id: T, name: z, placeholder: $, readOnly: S, required: R, disabled: N, pattern: U };\n return i(\"div\", { ref: G, id: P, className: `${y || \"\"} ${(w == null ? void 0 : w.wrapper) || \"\"}`.trim() || void 0, children: [c(\"input\", { ref: (e2) => {\n return o2 = e2, H.current = o2, void (M && (M.current = o2));\n var o2;\n }, onChange: (e2) => function(e3) {\n _.current = true;\n const o2 = d(e3.target.value), { hasUsername: t2, hasAt: n2, hasDomain: a2, domain: i2 } = function(e4, o3) {\n const [t3] = e4.split(\"@\"), n3 = e4.indexOf(\"@\"), r3 = n3 >= 0 ? e4.slice(n3 + 1) : \"\", a3 = t3.length >= o3;\n return { username: t3, domain: r3, hasUsername: a3, hasAt: a3 && e4.includes(\"@\"), hasDomain: a3 && r3.length >= 1 };\n }(o2, K);\n if (t2)\n if (j)\n if (a2) {\n const e4 = v2.filter((e5) => e5.startsWith(i2)).slice(0, F);\n e4.length > 0 ? e4[0] === i2 ? de() : ee(e4) : de();\n } else\n ee(O);\n else\n n2 ? de() : ee(O);\n r2(o2);\n }(e2), \"aria-expanded\": ue, value: le, type: \"text\", role: \"combobox\", autoComplete: \"off\", \"aria-autocomplete\": \"list\", \"aria-invalid\": q, ...ue ? { \"aria-controls\": Y } : {}, ...ge(f.Input), ...{ onKeyDown: (e2) => {\n !function(e3) {\n switch (e3.code) {\n case \"Tab\":\n case \"Escape\":\n return e3.stopPropagation(), de();\n case \"ArrowUp\":\n e3.preventDefault(), e3.stopPropagation(), ae.hoveredIndex >= 0 && me({ isDecrement: true }), re && ae.hoveredIndex < 0 && ce(Z.length - 1, Z.length - 1);\n break;\n case \"ArrowDown\":\n e3.preventDefault(), e3.stopPropagation(), ae.hoveredIndex >= 0 && me({ isDecrement: false }), ae.hoveredIndex < 0 && ce(0, 0);\n }\n }(e2), A(e2);\n }, ...h(C) ? { onInput: C } : {}, ...h(B) ? { onBlur: (e2) => fe(e2, B) } : {}, ...h(L) ? { onFocus: (e2) => fe(e2, L) } : {} }, ...ve }), ue && c(\"ul\", { role: \"listbox\", \"aria-label\": \"List\", ref: J, id: Y, ...ge(f.Dropdown), children: Z.map((e2, o2) => i(\"li\", { role: \"option\", ref: (e3) => Q.current[o2] = e3, onPointerMove: () => ce(-1, o2), onMouseMove: () => ce(-1, o2), onPointerLeave: () => ce(), onMouseLeave: () => ce(), onClick: (e3) => pe(e3, o2, false), onKeyDown: he, \"aria-posinset\": o2 + 1, \"aria-setsize\": Z.length, \"aria-selected\": o2 === ae.focusedIndex, \"data-active-email\": o2 === ae.hoveredIndex, tabIndex: -1, ...ge(f.Suggestion), children: [c(\"span\", { ...ge(f.Username), children: se }), i(\"span\", { ...ge(f.Domain), children: [\"@\", e2] })] }, e2)) }), D] });\n});\nv.displayName = \"Email\";\nexport {\n v as Email,\n m as domains,\n l as useLocalizedList\n};\n","import { useEffect, useState } from 'react';\nimport { Email, domains } from '@smastrom/react-email-autocomplete';\n\nfunction Contact({formData3, setFormData3, isValid}) {\n \n useEffect(() => {\n window.scrollTo(0,0); \n }, [])\n\n // Visual Form Validation\n const ValidatePrimary= () =>{\n const isPrimary = isValid[10];\n const validprimary = /^(?:0)(?:\\d\\s?){10}$/.test(formData3.phone.primary.replace(/\\s/g, ''))\n if (!validprimary && isPrimary.valid === false){\n return

please enter a valid contact number

\n } else{\n return
\n }\n }\n const ValidateSecondary = () =>{\n const isSecondary = isValid[11];\n const secondaryContact = formData3.phone.secondary\n const validsecondary = /^(?:0)(?:\\d\\s?){10}$/.test(formData3.phone.secondary.replace(/\\s/g, ''))\n if (!validsecondary && secondaryContact.length >=1 && isSecondary.valid === false){\n return

please enter a valid contact number

\n } else{\n return
\n }\n }\n\n const ValidateEmail = () =>{\n const email = formData3.email.primary\n const validEmail = /^\\S+@\\S+\\.\\S+$/.test(email.replace(/\\s/g, ''))\n const isEmail = isValid[9];\n if(!validEmail && isEmail.valid === false){\n return

Please enter a valid email address

\n }else{\n return
\n }\n }\n\n //making the email component a controlled variable\n const [email, setEmail] = useState('')\n const handleEmail = (value) => {\n setEmail(value)\n setFormData3(formData3 => ({...formData3, email:{...formData3.email, primary: value}}))\n }\n\n\n // Base List for Email Autocomplete\n const baseList = [\n 'gmail.com',\n 'yahoo.com',\n 'hotmail.com',\n 'aol.com',\n 'msn.com',\n 'proton.me'\n ];\n const classes = {\n wrapper: 'refineWrapper',\n dropdown: 'refineDropdown',\n input: 'refineInput',\n suggestion: 'refineSuggestion',\n domain: 'refineDomain'\n };\n \n return (\n <>\n
\n
\n
\n
\n
\n customSetter(newValue)\n value={email}\n />\n \n
\n
\n
\n
\n
\n {setFormData3({...formData3, phone:{...formData3.phone, primary: e.target.value}})}} \n value={formData3.phone.primary}\n />\n \n
\n
\n
\n
\n
\n {setFormData3({...formData3, phone:{...formData3.phone, secondary: e.target.value}})}} \n value={formData3.phone.secondary}\n />\n \n
\n
\n
\n
\n \n )\n}\n\nexport default Contact","import {useState, useEffect} from 'react'\n\nfunction PartnerAddress({formData4, setFormData4, isValid, setIsValid}) {\n\n useEffect(() => {\n window.scrollTo(0,0); \n }, [])\n\n const ValidatePostcode = () =>{\n const postcode = formData4.address.postcode\n const isPostcode = isValid[6]\n const ValidPostcode = /^[A-Za-z][A-Ha-hJ-Yj-y]?[0-9][A-Za-z0-9]? ?[0-9][A-Za-z]{2}|[Gg][Ii][Rr] ?0[Aa]{2}$/.test(postcode.replace(/\\s/g, ''));\n if (!ValidPostcode && isPostcode.valid === false){\n return

please enter a valid postcode

\n }else{\n return
\n }\n }\n\n const SelectAddress = () =>{\n return <>\n
\n
\n
Select Address:
\n \n
\n
\n \n }\n // set select address state to conditonally render when postcode look up is successfull\n const [showField, setShowField] = useState(false);\n // set retreived addresses from the api to a useState array\n const [addressData, setAddressData] = useState([]);\n\n // fetch and request array of addresses from api\n const handleChange = () =>{\n const postcode = formData4.address.postcode\n const ValidPostcode = /^[A-Za-z][A-Ha-hJ-Yj-y]?[0-9][A-Za-z0-9]? ?[0-9][A-Za-z]{2}|[Gg][Ii][Rr] ?0[Aa]{2}$/.test(postcode.replace(/\\s/g, ''));\n //only fetch if postcode is in the correct format\n if(ValidPostcode){\n const pcode = formData4.address.postcode\n fetch(`/address/${pcode}`)\n .then((res) => res.json())\n .then((addressData) => setAddressData(addressData.results))\n .catch((err) => console.log(err))\n setShowField(true)\n } else{\n setIsValid(\n isValid.map((item) => {\n if(item.id === \"7\"){\n return {...item, valid: false};\n }else{\n return item;\n }\n }));\n }\n }\n\n return (\n <>\n
\n
\n
\n
\n
\n
\n {setFormData4({...formData4, address:{...formData4.address, postcode: e.target.value}})}} \n value={formData4.address.postcode}\n />\n
\n
\n \n
\n \n
\n
\n {showField && }\n
\n
\n \n )\n}\n\nexport default PartnerAddress","import { useEffect, useState} from 'react'\nimport { Email, domains } from '@smastrom/react-email-autocomplete';\n\n\nfunction PartnerContact({formData4, setFormData4, isValid}) {\n\n useEffect(() => {\n window.scrollTo(0,0); \n }, [])\n \n const ValidatePrimary= () =>{\n const isPrimary = isValid[10];\n const validprimary = /^(?:0)(?:\\d\\s?){10}$/.test(formData4.phone.primary.replace(/\\s/g, ''))\n if (!validprimary && isPrimary.valid === false){\n return

please enter a valid contact number

\n } else{\n return
\n }\n }\n const ValidateSecondary = () =>{\n const isSecondary = isValid[11];\n const secondaryContact = formData4.phone.secondary\n const validsecondary = /^(?:0)(?:\\d\\s?){10}$/.test(formData4.phone.secondary.replace(/\\s/g, ''))\n if (!validsecondary && secondaryContact.length >=1 && isSecondary.valid === false){\n return

please enter a valid contact number

\n } else{\n return
\n }\n }\n const ValidateEmail = () =>{\n const email = formData4.email.primary\n const validEmail = /^\\S+@\\S+\\.\\S+$/.test(email.replace(/\\s/g, ''))\n const isEmail = isValid[9];\n if(!validEmail && isEmail.valid === false){\n return

Please enter a valid email address

\n }else{\n return
\n }\n }\n \n //making the email component a controlled variable\n const [email, setEmail] = useState('')\n const handleEmail = (value) => {\n setEmail(value)\n setFormData4(formData4 => ({...formData4, email:{...formData4.email, primary: value}}))\n }\n\n\n // Base List for Email Autocomplete\n const baseList = [\n 'gmail.com',\n 'yahoo.com',\n 'hotmail.com',\n 'aol.com',\n 'msn.com',\n 'proton.me'\n ];\n\n const classes = {\n wrapper: 'refineWrapper',\n dropdown: 'refineDropdown',\n input: 'refineInput',\n suggestion: 'refineSuggestion',\n domain: 'refineDomain'\n }\n\n \n\n return (\n <>\n
\n
\n
\n
\n
\n customSetter(newValue)\n value={email}\n />\n \n
\n
\n
\n
\n
\n {setFormData4({...formData4, phone: {...formData4.phone, primary: e.target.value}})}} \n value={formData4.phone.primary}\n />\n \n
\n
\n
\n
\n
\n {setFormData4({...formData4, phone: {...formData4.phone, secondary: e.target.value}})}} \n value={formData4.phone.secondary}\n />\n \n
\n
\n
\n
\n \n )\n}\n\nexport default PartnerContact","import {useEffect} from 'react'\n\nfunction Success() {\n\n useEffect(() => {\n window.scrollTo(0,0); \n }, [])\n\n return (\n\n
\n
\n \"Thank\n

Submission Successful!

\n
Thank you for submitting your application. We will be in touch soon!
\n \n \n
\n
\n\n )\n}\n\nexport default Success","import React from 'react'\n\nfunction Footer() {\n\n function CopyRight(){\n return<>\n
\n
\n

Claims Advisory Services is a trading style of Legal Ventures Ltd, registered at Swinford House,\n Albion St, Brierley Hill DY5 3EE and is registered in England and Wales (Company No 13100030 ) VAT\n registration number 431840906. ICO Reg No. ZA886718..

\n
\n
\n \n }\n\n return (\n
\n
\n
\n
\n \n
\n
\n
CONTACT US

\n

01902 955253**
\n contactus@claimsadvisoryservices.co.uk
\n 84 Salop Street, Wolverhampton WV3 0SR

\n
\n

**Standard rates apply.

\n
\n \n\n

\n

Copyright 2023 — Claims Advisory Services. All rights reserved.

\n
\n
\n
\n )\n}\n\nexport default Footer","import React from 'react'\n\nfunction ErrorPage() {\n return (\n <>\n
\n
\n

An Error Occured!

\n

Please refresh and try again or contact us.

\n
\n Email Us\n
\n
\n Call us\n
\n
\n
\n \n \n )\n}\n\nexport default ErrorPage","import { useState, useRef, useEffect } from 'react';\nimport './App.css';\nimport './Components/Formmodal.css'\nimport 'bootstrap/dist/css/bootstrap.min.css';\nimport MarriageQualification from './Form/MarriageQualification';\n//import HomeQualification from './Form/HomeQualification';\nimport Details from './Form/Details';\nimport Signature from './Form/Signature';\nimport Formmodal from './Components/Formmodal';\nimport PartnerDetails from './Form/PartnerDetails';\nimport Address from './Form/Address';\nimport Contact from './Form/Contact';\nimport PartnerAddress from './Form/PartnerAddress';\nimport PartnerContact from './Form/PartnerContact';\nimport Success from './Success';\nimport Footer from './Footer';\nimport ErrorPage from './ErrorPage';\n\nfunction App(props) {\n \n //used to monitor the forms step\n const [step, setStep] = useState(0);\n const [cCounter, setCCounter] = useState()\n const [pCounter, setPCounter] = useState()\n\n //set checkbox flag\n const [flag, setFlag] = useState(false);\n\n //log if all checkboxes are ticked \n const [checkbox1, setcheckbox1] = useState(false);\n\n //form modalt toggle\n const [modalToggle, setModalToggle] = useState(false);\n\n\n const modalContainer = useRef();\n\n useOnClickOutside(modalContainer, () => setModalToggle(false));\n\n function useOnClickOutside(ref, handler) {\n useEffect(\n () => {\n const listener = (event) => {\n // Do nothing if clicking ref's element or descendent elements\n if (!ref.current || ref.current.contains(event.target)) {\n return;\n }\n handler(event);\n };\n document.addEventListener(\"mousedown\", listener);\n document.addEventListener(\"touchstart\", listener);\n return () => {\n document.removeEventListener(\"mousedown\", listener);\n document.removeEventListener(\"touchstart\", listener);\n };\n },\n [ref, handler]\n );\n }\n\n\n //holding the form data in a state\n const [shortcode, setShortcode] = useState('')\n const [mtaxObject, setMtaxObject] = useState({\n clients:[{\n\n }],\n type:\"Marriage Tax\",\n campaignCode: \"CWEB0001\",\n casedata: {\n marriedOrCivilPartnership: \"\",\n dateOfMarriageOrCP: \"\",\n brand: \"CAS Legal Ventures\",\n },\n state: \"Client Claims Pack Received\",\n defendant: \"HM Revenue and Customs\"\n })\n const [claimantWfh, setClaimantWfh] = useState({\n clients: [{\n\n }],\n casedata:{\n \"yearsWorkedFromHome\": [\n\n ],\n brand: \"CAS Legal Ventures\",\n \"payeNumber20202021\": \"\",\n \"payeNumber20212022\": \"\",\n \"workedFromHome\": true \n },\n type:\"Work From Home Tax\",\n campaignCode: \"CWEB0001\",\n state: \"Client Claims Pack Received\",\n defendant: \"HM Revenue and Customs\"\n })\n const [partnerWfh, setPartnerWfh] = useState({\n clients: [{\n\n }],\n casedata:{\n \"yearsWorkedFromHome\": [\n\n ],\n brand: \"CAS Legal Ventures\",\n \"payeNumber20202021\": \"\",\n \"payeNumber20212022\": \"\",\n \"workedFromHome\": true \n },\n type:\"Work From Home Tax\",\n campaignCode: \"CWEB0001\",\n state: \"Client Claims Pack Received\",\n defendant: \"HM Revenue and Customs\"\n })\n const [formData1, setFormData1] = useState({\n marriedOrCivilPartnership: \"\",\n dateOfMarriageOrCP: \"\",\n }); \n\n const [validMarrDate, setValidMarrDate] = useState(true)\n\n /*const [formData2, setFormData2] = useState({\n q1: \"\",\n q2: \"\",\n q3: \"\",\n q4: \"\",\n }); */\n const [formData3, setFormData3] = useState({\n title: \"\",\n firstname: \"\",\n lastname: \"\",\n dob: \"\",\n email:{\n primary: \"\",\n },\n address: {\n line1: \"\",\n line2: \"\",\n city: \"\",\n postcode: \"\"\n },\n sameAddress: \"\",\n selectAddress: \"\",\n phone:{ \n primary: \"\",\n secondary: \"\"\n },\n payeNumber1: \"\",\n payeNumber2: \"\",\n clientdata: {\n nationalInsuranceNumber: \"\",\n approximateAnnualIncome: \"\",\n clientSignature: \"\",\n },\n });\n //marketing states\n const [currCustomer, setCurrCustomer] = useState(false)\n const [hideName, setHideName] = useState(false)\n const [referenceBox, setReferenceBox] = useState(false)\n\n //URL Params \n const fname = props.urlParams[\"firstname\"]\n const lname = props.urlParams[\"lastname\"]\n const clientId = props.urlParams[\"clientId\"]\n const marketingChannel = props.urlParams[\"marketingChannel\"]\n const marketingAudience = props.urlParams[\"marketingAudience\"]\n const marketingCampaign = props.urlParams[\"marketingCampaign\"]\n const marketingCreative = props.urlParams[\"marketingCreative\"]\n useEffect( () => {\n if(fname !== null && lname !== null && clientId !== null){\n setFormData3(formData3 => ({...formData3, firstname: fname}))\n setFormData3(formData3 => ({...formData3, lastname: lname}))\n setFormData3(formData3 => ({...formData3, title: '/'}))\n setFormData3(formData3 => ({...formData3, dob: '/'}))\n }\n if(marketingChannel !== null){\n setMtaxObject(mtaxObject => ({...mtaxObject, casedata: {...mtaxObject.casedata, marketingChannel: marketingChannel}}))\n setClaimantWfh(claimantWfh => ({...claimantWfh, casedata: {...claimantWfh.casedata, marketingChannel: marketingChannel}})) \n setPartnerWfh(partnerWfh => ({...partnerWfh, casedata: {...partnerWfh.casedata, marketingChannel: marketingChannel}})) \n }\n if(marketingCreative !== null){\n setMtaxObject(mtaxObject => ({...mtaxObject, casedata: {...mtaxObject.casedata, marketingCreative: marketingCreative}}))\n setClaimantWfh(claimantWfh => ({...claimantWfh, casedata: {...claimantWfh.casedata, marketingCreative: marketingCreative}}))\n setPartnerWfh(partnerWfh => ({...partnerWfh, casedata: {...partnerWfh.casedata, marketingCreative: marketingCreative}})) \n }\n if(marketingAudience !== null){\n setMtaxObject(mtaxObject => ({...mtaxObject, casedata: {...mtaxObject.casedata, marketingAudience: marketingAudience}}))\n setClaimantWfh(claimantWfh => ({...claimantWfh, casedata: {...claimantWfh.casedata, marketingAudience: marketingAudience}}))\n setPartnerWfh(partnerWfh => ({...partnerWfh, casedata: {...partnerWfh.casedata, marketingAudience: marketingAudience}})) \n }\n if(marketingCampaign !== null){\n setMtaxObject(mtaxObject => ({...mtaxObject, casedata: {...mtaxObject.casedata, marketingCampaignName: marketingCampaign}}))\n setClaimantWfh(claimantWfh => ({...claimantWfh, casedata: {...claimantWfh.casedata, marketingCampaignName: marketingCampaign}}))\n setPartnerWfh(partnerWfh => ({...partnerWfh, casedata: {...partnerWfh.casedata, marketingCampaignName: marketingCampaign}})) \n } \n if(marketingChannel === 'Contact Centre'){\n setMtaxObject(mtaxObject => ({...mtaxObject, state: \"Client Request for Information Received\"}))\n setSignature1(true)\n setSignature2(true)\n setAgree(true)\n }\n if(clientId === null && marketingChannel === null ){\n setMtaxObject(mtaxObject => ({...mtaxObject, casedata: {...mtaxObject.casedata, marketingChannel: \"Organic\"}}))\n setClaimantWfh(claimantWfh => ({...claimantWfh, casedata: {...claimantWfh.casedata, marketingChannel: \"Organic\"}})) \n setPartnerWfh(partnerWfh => ({...partnerWfh, casedata: {...partnerWfh.casedata, marketingChannel: \"Organic\"}})) \n } \n },[fname, lname, clientId, marketingCampaign, marketingCreative, marketingAudience, marketingChannel])\n\n //const [differentClaimantPAYE, setDifferentClaimantPAYE] = useState()\n // const [differentPartnerPAYE, setDifferentPartnerPAYE] = useState()\n //const [claimantEmail, setClaimantEmail] = useState('');\n\n // set fields to uppercase\n /* let claimantInsuranceN = formData3.clientdata.nationalInsuranceNumber.toUpperCase();\n let claimantPayeN1 = formData3.payeNumber1.toUpperCase(); \n let claimantPayeN2 = formData3.payeNumber2.toUpperCase();\n useEffect(() => {\n setFormData3(formData3 => ({...formData3, email:{primary: claimantEmail}}))\n\n setFormData3(formData3 => ({...formData3, clientdata: {...formData3.clientdata, nationalInsuranceNumber: claimantInsuranceN}}))\n setFormData3(formData3 => ({...formData3, payeNumber1: claimantPayeN1}))\n setFormData3(formData3 => ({...formData3, payeNumber2: claimantPayeN2}))\n if(differentClaimantPAYE === false){\n setClaimantWfh(claimantWfh => ({...claimantWfh, casedata: {...claimantWfh.casedata, payeNumber20212022: claimantPayeN1}}))\n }\n },[claimantEmail, claimantInsuranceN, claimantPayeN1, claimantPayeN2, differentClaimantPAYE])*/\n\n const [formData4, setFormData4] = useState({\n title: \"\",\n firstname: \"\",\n lastname: \"\",\n dob: \"\",\n email:{\n primary: \"\",\n },\n address: {\n line1: \"\",\n line2: \"\",\n city: \"\",\n postcode: \"\"\n },\n selectAddress: \"\",\n phone:{ \n primary: \"\",\n secondary: \"\"\n },\n payeNumber1: \"\",\n payeNumber2: \"\",\n clientdata: {\n nationalInsuranceNumber: \"\",\n approximateAnnualIncome: \"\",\n clientSignature: \"\",\n },\n });\n \n\n\n\n // set fields to uppercase\n /*let partnerInsuraceN = formData4.clientdata.nationalInsuranceNumber.toUpperCase();\n let partnerPayeN1 = formData4.payeNumber1.toUpperCase(); \n let partnerPayeN2 = formData4.payeNumber2.toUpperCase();\n\n useEffect(() => {\n setFormData4(formData4 => ({...formData4, email:{primary: partnerEmail}}))\n setFormData4(formData4 => ({...formData4, clientdata: {...formData4.clientdata, nationalInsuranceNumber: partnerInsuraceN}}))\n setFormData4(formData4 => ({...formData4, payeNumber1: partnerPayeN1}))\n setFormData4(formData4 => ({...formData4, payeNumber2: partnerPayeN2}))\n if(differentPartnerPAYE === false){\n setPartnerWfh(partnerWfh => ({...partnerWfh, casedata:{...partnerWfh.casedata, payeNumber20212022: partnerPayeN1}}))\n }\n },[ partnerEmail, partnerInsuraceN, partnerPayeN1, partnerPayeN2, differentPartnerPAYE])*/\n\n \n\n// setting whether the couple live at the same address\nconst [sameAddress, setSameAddress] = useState()\n\n//setting the signature to a state\nconst [signature1, setSignature1] = useState(false);\nconst [signature2, setSignature2] = useState(false);\n\n\n //Trigger Validation \n const validArray = [\n {id: \"1\", name: \"title\", valid: true},\n {id: \"2\", name: \"firstname\", valid: true},\n {id: \"3\", name: \"lastname\", valid: true},\n {id: \"4\", name: \"dob\", valid: true},\n {id: \"5\", name: \"nationalInsuranceNumber\", valid: true},\n {id: \"6\", name: \"approximateAnnualIncome\", valid: true},\n {id: \"7\", name: \"postcode\", valid: true},\n {id: \"8\", name: \"sameAddress\", valid: true},\n {id: \"9\", name: \"selectAddress\", valid: true},\n {id: \"10\", name: \"email\", valid: true},\n {id: \"11\", name: \"primary\", valid: true},\n {id: \"12\", name: \"secondary\", valid: true},\n {id: \"13\", name: \"payeNumber\", valid: true}\n ];\n const [isValid, setIsValid] = useState(validArray)\n\n //Paye Blank field validation\n // const [claimantAnsweredq1, setClaimantAnsweredq1] = useState(false);\n// const [claimantAnsweredq2, setClaimantAnsweredq2] = useState(false);\n// const [claimantAnsweredq3, setClaimantAnsweredq3] = useState(false);\n \n\n //set Agreement on change validation\n const [agree, setAgree] = useState(false);\n \n //form step logic\n const FormTitles = [\"\",\"Your Details\", \"Your Address Details\",\n \"Your Contact Details\", \"Your Partner's Details\",\"Your Partners Address Details\", \"Your Partners Contact Details\",\n \"\", \"\"];\n const stepDisplay = () =>{\n if (step === 0){\n return \n /*} else if(step === 1){\n return */\n } else if(step === 1){\n return
\n } else if(step === 2){\n return
\n } else if(step === 3){\n return \n } else if(step === 4){\n return \n } else if(step === 5){\n return \n } else if(step === 6){\n return \n } else if(step === 7){\n return \n } else if(step === 8){\n return \n } else{\n return \n }\n }\n\n //form validation \n\n // checking if fields in each step are blank\n // checking if fields in each step are blank\n const formError1 = [formData1.marriedOrCivilPartnership, formData1.dateOfMarriageOrCP];\n // const formError2 = [formData2.q4];\n const formError3 = [formData3.title, formData3.firstname, formData3.lastname, formData3.dob, formData3.clientdata.approximateAnnualIncome];\n const formError4 = [formData3.address.postcode, formData3.sameAddress];\n const formError5 = [formData4.title, formData4.firstname, formData4.lastname, formData4.dob, formData4.clientdata.approximateAnnualIncome];\n const formError6 = [formData4.address.postcode, formData4.selectAddress]\n\n //claimant details validation\n const title1 = formData3.title\n const firstName1 = formData3.firstname\n const lastName1 = formData3.lastname\n const [dob1Valid, setDob1Valid] = useState(true)\n const niNumber1 = formData3.clientdata.nationalInsuranceNumber\n const validNinumber1 = /^[A-CEGHJ-PR-TW-Za-ceghj-pr-tw-z]{1}[A-CEGHJ-NPR-TW-Za-ceghj-pr-tw-z]{1}[0-9]{6}[A-DFMa-dfm]{1}$/.test(niNumber1.replace(/\\s/g, ''));\n const income1 = formData3.clientdata.approximateAnnualIncome\n const email1 = formData3.email.primary\n const validEmail1 = /^\\S+@\\S+\\.\\S+$/.test(email1.replace(/\\s/g, ''))\n // const validapaye1 = /^\\d{3}\\/[A-Z0-9]{1,10}$/.test(formData3.payeNumber1.replace(/\\s/g, ''))\n // const validapaye2 = /^\\d{3}\\/[A-Z0-9]{1,10}$/.test(formData3.payeNumber2.replace(/\\s/g, ''))\n const postcode1 = formData3.address.postcode\n const address1 = formData3.selectAddress\n const validprimary1 = /^(?:0)(?:\\d\\s?){10}$/.test(formData3.phone.primary.replace(/\\s/g, ''))\n const validsecondary1 = /^(?:0)(?:\\d\\s?){10}$/.test(formData3.phone.secondary.replace(/\\s/g, ''))\n\n //partner details validation\n const title2 = formData4.title\n const firstName2 = formData4.firstname\n const lastName2 = formData4.lastname\n const [dob2Valid, setDob2Valid] = useState(true)\n const niNumber2 = formData4.clientdata.nationalInsuranceNumber\n const validNinumber2 = /^[A-CEGHJ-PR-TW-Za-ceghj-pr-tw-z]{1}[A-CEGHJ-NPR-TW-Za-ceghj-pr-tw-z]{1}[0-9]{6}[A-DFMa-dfm]{1}$/.test(niNumber2.replace(/\\s/g, ''));\n const income2 = formData4.clientdata.approximateAnnualIncome\n const email2 = formData4.email.primary\n const validEmail2 = /^\\S+@\\S+\\.\\S+$/.test(email2.replace(/\\s/g, ''))\n //const validapaye3 = /^\\d{3}\\/[A-Z0-9]{1,10}$/.test(formData4.payeNumber1.replace(/\\s/g, ''))\n // const validapaye4 = /^\\d{3}\\/[A-Z0-9]{1,10}$/.test(formData4.payeNumber2.replace(/\\s/g, ''))\n const postcode2 = formData4.address.postcode\n const address2 = formData4.selectAddress\n const validprimary2 = /^(?:0)(?:\\d\\s?){10}$/.test(formData4.phone.primary.replace(/\\s/g, ''))\n const validsecondary2 = /^(?:0)(?:\\d\\s?){10}$/.test(formData4.phone.secondary.replace(/\\s/g, ''))\n\n // set whether ni number is identical to claimant's\n const [sameNiNumber, setSameNiNumber] = useState(false);\n useEffect(()=>{\n if(niNumber1 === niNumber2 && niNumber1.length >=1){\n setSameNiNumber(true)\n }else{\n setSameNiNumber(false)\n }\n },[niNumber1, niNumber2])\n \n //Flag progression if below parameters are met\n const validateStep = () =>{\n //Home Qualification Validation\n if(step === 0 && formError1.includes('') === true){\n setModalToggle(true)\n }else if(step === 0 && validMarrDate !== true){\n setModalToggle(true) \n }else if (step === 0 && formError1.includes('') === false){ \n setMtaxObject({...mtaxObject, casedata:{...mtaxObject.casedata, \n marriedOrCivilPartnership: formData1.marriedOrCivilPartnership, \n dateOfMarriageOrCP: formData1.dateOfMarriageOrCP.replace(/-/gi, \"/\").split(\"/\").reverse().join(\"/\")}})\n setStep((currentPage) => currentPage + 1 )\n //Work From Home Qualification \n }\n /*else if(step === 1 && formData2.q1 === 'Yes' && claimantAnsweredq1 === false){\n setClaimantAnsweredq1(true)\n setModalToggle(false)\n }else if(step === 1 && formData2.q2 === 'Yes' && claimantAnsweredq2 === false){\n setClaimantAnsweredq2(true)\n setModalToggle(false)\n }else if(step === 1 && formData2.q3 === 'Yes' && claimantAnsweredq3 === false){\n setClaimantAnsweredq3(true)\n setModalToggle(false)\n }else if(step === 1 && (claimantAnsweredq3 === false || claimantAnsweredq2 === false || \n claimantAnsweredq1 === false || formError2.includes(''))){\n setModalToggle(true)\n }else if(step === 1 && formData2.q1 === 'Yes' && formData2.q2 === 'Yes' && differentClaimantPAYE !== true && differentClaimantPAYE !== false){\n setModalToggle(true)\n }else if(step === 1 && formData2.q3 === 'Yes' && formData2.q4 === 'Yes' && differentPartnerPAYE !== true && differentPartnerPAYE !== false){\n setModalToggle(true)\n } else if((step === 1 && formData3.payeNumber1.length !== 0 && !validapaye1) || (step === 1 && formData3.payeNumber2.length !== 0 && !validapaye2)\n || (step === 1 && formData4.payeNumber1.length !== 0 && !validapaye3) || (step === 1 && formData4.payeNumber2.length !== 0 && !validapaye4)){\n let toggleFalse = [];\n toggleFalse = isValid.map(item=>({...item, valid: false}));\n setIsValid(toggleFalse);\n //Claimant Personal Details\n }*/\n else if(step === 1 && formError3.includes('') && currCustomer === false && referenceBox === false){\n let toggleFalse = [];\n toggleFalse = isValid.map(item=>({...item, valid: false}));\n setIsValid(toggleFalse);\n scrollingTop(); \n console.log('1')\n } else if((step === 1) && (firstName1.length <= 1 || lastName1.length <= 1 || !dob1Valid || (!validNinumber1 && niNumber1.length >= 1) || income1.length === 0 || title1 === '-' )\n && (currCustomer === false) && referenceBox === false){\n let toggleFalse = [];\n toggleFalse = isValid.map(item=>({...item, valid: false}));\n setIsValid(toggleFalse);\n scrollingTop();\n console.log('2')\n }else if((step === 1 && currCustomer === false && referenceBox === true && shortcode.length === 0) && (firstName1.length <= 1 || lastName1.length <= 1 ||\n (!validNinumber1 && niNumber1.length >= 1) || income1.length === 0 || title1 === '-' ) ){\n let toggleFalse = [];\n toggleFalse = isValid.map(item=>({...item, valid: false}));\n setIsValid(toggleFalse);\n scrollingTop();\n console.log('3')\n }else if(step === 1 && currCustomer === true && marketingChannel !== 'Contact Centre' && ( firstName1.length <= 1 || lastName1.length <= 1 || (!validNinumber1 && niNumber1.length >= 1) || income1.length === 0)){\n let toggleFalse = [];\n toggleFalse = isValid.map(item=>({...item, valid: false}));\n setIsValid(toggleFalse);\n console.log('4')\n }else if(step === 1 && currCustomer === true && marketingChannel === 'Contact Centre' && ((!validNinumber1 && niNumber1.length >= 1) || income1.length === 0)){\n let toggleFalse = [];\n toggleFalse = isValid.map(item=>({...item, valid: false}));\n setIsValid(toggleFalse);\n console.log('5')\n }else if(step === 1 && firstName1.length >= 1 && lastName1.length >= 1 && income1.length !== 0 && title1 !== '-'\n && currCustomer === false && shortcode.length === 0){\n let toggleFalse = [];\n toggleFalse = isValid.map(item=>({...item, valid: true}));\n setIsValid(toggleFalse);\n setStep((currentPage) => currentPage + 1 )\n console.log('+1')\n }else if((step === 1 && currCustomer === true && income1.length !== 0) || (step === 2 && shortcode.length !== 0 && referenceBox === true && currCustomer === false)){\n console.log(currCustomer, shortcode.length !== 0)\n let toggleFalse = [];\n toggleFalse = isValid.map(item=>({...item, valid: true}));\n setIsValid(toggleFalse);\n setStep((currentPage) => currentPage + 3 )\n if(shortcode.length !== 0){\n setMtaxObject(mtaxObject => ({...mtaxObject, clients:[{clientid: shortcode, clientdata: {...mtaxObject.clients.clientdata, nationalInsuranceNumber:\n formData3.clientdata.nationalInsuranceNumber, approximateAnnualIncome: formData3.clientdata.approximateAnnualIncome}}]}))\n }\n if(clientId !== null){\n setMtaxObject(mtaxObject => ({...mtaxObject, clients:[{clientid: clientId, clientdata: {...mtaxObject.clients.clientdata, nationalInsuranceNumber:\n formData3.clientdata.nationalInsuranceNumber, approximateAnnualIncome: formData3.clientdata.approximateAnnualIncome}}]}))\n }\n //Claimant Address Details \n } else if(step === 2 && formError4.includes('')){\n let toggleFalse = [];\n toggleFalse = isValid.map(item=>({...item, valid: false}));\n setIsValid(toggleFalse);\n //Claimant Contact Details\n } else if(step === 3 && (!validprimary1 || (!validsecondary1 && formData3.phone.secondary.length >= 1))){\n let toggleFalse = [];\n toggleFalse = isValid.map(item=>({...item, valid: false}));\n setIsValid(toggleFalse);\n } else if ((step === 3) && !validEmail1){\n let toggleFalse = [];\n toggleFalse = isValid.map(item=>({...item, valid: false}));\n setIsValid(toggleFalse);\n //Partner Personal Details\n } else if(step === 4 && formError5.includes('')){\n let toggleFalse = [];\n toggleFalse = isValid.map(item=>({...item, valid: false}));\n setIsValid(toggleFalse);\n scrollingTop(); \n } else if((step === 4) && (firstName2.length <= 1 || lastName2.length <= 1 || (!validNinumber2 && niNumber2.length >=1)|| income2.length === 0 || !dob2Valid\n || title2 === '-' || sameNiNumber)){\n let toggleFalse = [];\n toggleFalse = isValid.map(item=>({...item, valid: false}));\n setIsValid(toggleFalse);\n scrollingTop();\n } else if(step === 4 && firstName2.length >= 1 && lastName2.length >= 1 && (validNinumber2 || niNumber2.length === 0) &&\n income2.length !== 0 && title2 !== '-' && !sameNiNumber && formError5.includes('') === false && sameAddress === true){\n let toggleFalse = [];\n toggleFalse = isValid.map(item=>({...item, valid: true}));\n setIsValid(toggleFalse);\n setStep((currentPage) => currentPage + 2 )\n //Partner Address Details\n } else if(step === 5 && formError6.includes('')){\n let toggleFalse = [];\n toggleFalse = isValid.map(item=>({...item, valid: false}));\n setIsValid(toggleFalse);\n //Partner Contact Details\n } else if(step === 6 && (!validprimary2 || (!validsecondary2 && formData4.phone.secondary.length >=1 ))){\n let toggleFalse = [];\n toggleFalse = isValid.map(item=>({...item, valid: false}));\n setIsValid(toggleFalse);\n } else if((step === 6) && !validEmail2){\n let toggleFalse = [];\n toggleFalse = isValid.map(item=>({...item, valid: false}));\n setIsValid(toggleFalse);\n //add clients to the Mtax JSON object\n } else if((step === 6 && validprimary2 && validEmail2) || (step === 7 && validprimary2 && validsecondary2 && validEmail2)){\n if(currCustomer === true || shortcode.length !== 0){\n if(cCounter <= pCounter){\n setMtaxObject({...mtaxObject, clients:[{...mtaxObject.clients[0]}, {...formData4}]})\n } else {\n setMtaxObject({...mtaxObject, clients:[{...formData4}, {...mtaxObject.clients[0]}]})\n }\n setClaimantWfh({...claimantWfh, clients:[{...mtaxObject.clients[0]}]})\n setPartnerWfh({...partnerWfh, clients:[{...formData4}]})\n }else{\n if(cCounter <= pCounter){\n setMtaxObject({...mtaxObject, clients:[{...formData3}, {...formData4}]})\n } else {\n setMtaxObject({...mtaxObject, clients:[{...formData4}, {...formData3}]})\n }\n setClaimantWfh({...claimantWfh, clients:[{...formData3}]})\n setPartnerWfh({...partnerWfh, clients:[{...formData4}]}) \n }\n let toggleFalse = [];\n toggleFalse = isValid.map(item=>({...item, valid: true}));\n setIsValid(toggleFalse);\n setStep((currentPage) => currentPage + 1 )\n }else{\n let toggleFalse = [];\n toggleFalse = isValid.map(item=>({...item, valid: true}));\n setIsValid(toggleFalse);\n setStep((currentPage) => currentPage + 1 )\n }\n }\n\n\n //Previous Step Validation\n const validatePrevStep = () => {\n //if shortcode/client id is present claimant details aren't required\n if((step === 5 && clientId !== null) || (step === 5 && shortcode.length >=1 )){\n setStep((currentPage) => currentPage - 3 )\n // if both Claimaints have the same Address skip partner address\n } else if(step === 6 && sameAddress === true) {\n setStep((currentPage) => currentPage - 2)\n }else{\n setStep((currentPage) => currentPage - 1 )\n }\n }\n \n //scroll to view on field error\n const targetElement = useRef();\n const scrollingTop = (event) => {\n const elmnt = targetElement;\n elmnt.current.scrollIntoView({\n behavior: \"smooth\",\n block: \"center\",\n inline: \"start\"\n });\n };\n\n //set formdata into Json object\n useEffect(() => {\n if(step === 4){\n setFormData3(formData3 => ({...formData3,\n address: {...formData3.address,\n line1: address1.split(\",\")[0],\n line2: address1.split(\",\")[1],\n city: address1.split(\",\")[2]\n }}))\n }\n if(sameAddress === true && step === 4){\n setFormData4(formData3 => ({...formData3,\n address: {...formData3.address,\n line1: address1.split(\",\")[0],\n line2: address1.split(\",\")[1],\n city: address1.split(\",\")[2],\n postcode: postcode1\n }}))\n }\n if(step === 7 && sameAddress !== true){\n setFormData4(formData4 => ({...formData4,\n address: {...formData4.address,\n line1: address2.split(\",\")[0],\n line2: address2.split(\",\")[1],\n city: address2.split(\",\")[2],\n postcode: postcode2\n }}))\n }\n if(signature1 !== false && marketingChannel !== 'Contact Centre'){\n if(cCounter <= pCounter){ \n setMtaxObject(mtaxObject => ({...mtaxObject, clients: [{...mtaxObject.clients[0], clientdata: {...mtaxObject.clients[0].clientdata, clientSignature: signature1.split(\",\")[1]}},{...mtaxObject.clients[1]}]}))\n } else{\n setMtaxObject(mtaxObject => ({...mtaxObject, clients: [{...mtaxObject.clients[0]}, {...mtaxObject.clients[1], clientdata: {...mtaxObject.clients[1].clientdata, clientSignature: signature1.split(\",\")[1]}}]}))\n }\n setClaimantWfh(claimantWfh => ({...claimantWfh, clients: [{...claimantWfh.clients[0], clientdata:{...claimantWfh.clients[0].clientdata, clientSignature: signature1.split(\",\")[1]} }]}))\n }\n if(signature2 !== false && marketingChannel !== 'Contact Centre'){\n if(cCounter <= pCounter){\n setMtaxObject(mtaxObject => ({...mtaxObject, clients: [{...mtaxObject.clients[0]}, {...mtaxObject.clients[1], clientdata: {...mtaxObject.clients[1].clientdata, clientSignature: signature2.split(\",\")[1]}}]}))\n } else{\n setMtaxObject(mtaxObject => ({...mtaxObject, clients: [{...mtaxObject.clients[0], clientdata: {...mtaxObject.clients[0].clientdata, clientSignature: signature2.split(\",\")[1]}},{...mtaxObject.clients[1]}]}))\n }\n setPartnerWfh(partnerWfh => ({...partnerWfh, clients: [{...partnerWfh.clients[0], clientdata:{...partnerWfh.clients[0].clientdata, clientSignature: signature2.split(\",\")[1]}}]}))\n }\n },[address1, address2, step, sameAddress, postcode1, postcode2, signature1, signature2, marketingChannel, cCounter, pCounter])\n \nconst [loading, setloading] = useState(false)\n\n //form submission\n/*const claimantWfhSumbit = async() =>{\n if(agree === false){\n setFlag(true)\n }else{ \n await fetch(\"/claimantwfhsubmit\", {\n method: 'POST',\n body: JSON.stringify(claimantWfh),\n headers: {\n 'Content-Type': 'application/json'\n },\n }).then((res) => res.json())\n .catch((err) => console.log(err))\n }\n}\nconst partnerWfhSumbit = async() =>{\n if(agree === false){\n setFlag(true)\n }else{ \n await fetch(\"/partnerwfhsubmit\", {\n method: 'POST',\n body: JSON.stringify(partnerWfh),\n headers: {\n 'Content-Type': 'application/json'\n },\n }).then((res) => res.json())\n .catch((err) => console.log(err))\n }\n}*/\nconst mtaxSubmit = async() => {\n if(agree === false){\n setFlag(true);\n setloading(false);\n }else{\n await fetch(\"/mtaxsubmit\", {\n method: 'POST',\n body: JSON.stringify(mtaxObject),\n headers: {\n 'Content-Type': 'application/json'\n },\n }).then((res) => res.json())\n .then((res) => {\n if(res.error === false){\n /*if(formData2.q1 === 'Yes' || formData2.q2 === 'Yes'){\n claimantWfhSumbit();\n }\n if(formData2.q3 === 'Yes' || formData2.q4 === 'Yes'){\n partnerWfhSumbit();\n }*/\n setloading(false)\n setStep((currentPage) => currentPage + 1 )\n }else{\n setloading(false)\n setStep((currentPage) => currentPage + 2 )\n }\n })\n .catch((err) =>{ \n setloading(false)\n setStep((currentPage) => currentPage + 2 );\n console.log(err)\n })\n }\n}\n\n\n return (\n <>\n { modalToggle && < Formmodal ref={modalContainer} setModalToggle={setModalToggle}/> } \n
\n
\n
\n
\n
\n

{FormTitles[step]}

\n {stepDisplay()}\n
\n \n \n { loading &&
}\n {step !==7 \n ? \n : }\n
\n
\n
\n