@bigcommerce/checkout-sdk 1.960.0 → 1.960.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/cjs/checkout-button.js +1 -1
- package/dist/cjs/checkout-sdk-essential.js +1 -1
- package/dist/cjs/checkout-sdk.js +1 -1
- package/dist/cjs/hosted-form-v2-iframe-host.js +1 -1
- package/dist/cjs/integrations/amazon-pay.js +1 -1
- package/dist/cjs/integrations/bigcommerce-payments.js +1 -1
- package/dist/cjs/integrations/braintree.js +1 -1
- package/dist/cjs/integrations/google-pay.js +1 -1
- package/dist/cjs/integrations/klarna.js +1 -1
- package/dist/cjs/integrations/paypal-commerce.js +1 -1
- package/dist/cjs/integrations/paypal-express.js +1 -1
- package/dist/cjs/integrations/zip.js +1 -1
- package/dist/esm/checkout-button.js +1 -1
- package/dist/esm/checkout-sdk-essential.js +1 -1
- package/dist/esm/checkout-sdk.js +1 -1
- package/dist/esm/hosted-form-v2-iframe-host.js +1 -1
- package/dist/esm/integrations/amazon-pay.js +1 -1
- package/dist/esm/integrations/bigcommerce-payments.js +1 -1
- package/dist/esm/integrations/braintree.js +1 -1
- package/dist/esm/integrations/google-pay.js +1 -1
- package/dist/esm/integrations/klarna.js +1 -1
- package/dist/esm/integrations/paypal-commerce.js +1 -1
- package/dist/esm/integrations/paypal-express.js +1 -1
- package/dist/esm/integrations/zip.js +1 -1
- package/dist/types/checkout-sdk.d.ts +3 -1
- package/dist/types/internal-mappers.d.ts +3 -1
- package/docs/README.md +1 -0
- package/docs/interfaces/CustomerAddress.md +1 -1
- package/docs/type-aliases/CustomerAddressType.md +9 -0
- package/package.json +1 -1
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
(()=>{var e={9165(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e){var t=new r.default;return new i.default(t,e)};var r=n(9828),i=n(5470)},9828(e,t){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var n=function(){function e(){}return e.prototype.build=function(e,t,n){var r=this,i=document.createElement("form");return i.style.display="none",i.setAttribute("action",e),i.setAttribute("method","POST"),i.setAttribute("target",n||"_top"),Object.keys(t).forEach(function(e){var n=t[e];i.appendChild(r._createInput(n,e))}),i},e.prototype._createInput=function(e,t){var n=document.createElement("input");return n.setAttribute("name",t),n.setAttribute("type","hidden"),n.setAttribute("value",e),n},e}();t.default=n},5470(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=n(9783),i=function(){function e(e,t){this._formBuilder=e,this._options=t}return e.prototype.postForm=function(e,t,n,r){var i=this._formBuilder.build(this._prependHost(e),t,r);window.addEventListener("unload",function e(){window.removeEventListener("unload",e),n&&n()}),document.body.appendChild(i),i.submit()},e.prototype._prependHost=function(e){return this._options&&this._options.host&&!(0,r.isAbsoluteUrl)(e)?(0,r.joinPaths)(this._options.host,e):e},e}();t.default=i},8686(e,t,n){"use strict";t.createFormPoster=void 0;var r=n(9165);Object.defineProperty(t,"createFormPoster",{enumerable:!0,get:function(){return r.default}});n(5470)},9783(e,t){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.isAbsoluteUrl=function(e){return/^https?:\/\//.test(e)},t.joinPaths=function(e,t){return"".concat((n=e,n.replace(/\/$/,"")),"/").concat(function(e){return e.replace(/^\//,"")}(t));var n}},4325(e,t,n){"use strict";n.d(t,{g:()=>i});var r=n(5889),i=function(){function e(){this._cache={}}return e.prototype.read=function(e,t){var n=this.getKey(e,t.params);return this._cache[n]||null},e.prototype.write=function(e,t,n){var r=this.getKey(e,t.params);this._cache[r]=n},e.prototype.getKey=function(e,t){return void 0===t&&(t={}),0===Object.keys(t).length?e:"".concat(e,"?").concat(r.stringify(t))},e}()},321(e,t,n){"use strict";n.d(t,{A:()=>s});var r=n(168),i=n(1675),o=n(5861),a=n(4670);function s(e){return new a.A(new o.A,new i.A,r,e)}},6889(e,t,n){"use strict";n.d(t,{A:()=>i});var r=n(2024);function i(e){return new r.A(e)}},4043(e,t,n){"use strict";n.r(t),n.d(t,{RequestSender:()=>o.A,Timeout:()=>a.A,createRequestSender:()=>r.A,createTimeout:()=>i.A});var r=n(321),i=n(6889),o=n(4670),a=n(2024)},4843(e,t,n){"use strict";function r(e){return!!e&&("object"==typeof e||"function"==typeof e)&&"function"==typeof e.then}n.d(t,{A:()=>r})},1675(e,t,n){"use strict";n.d(t,{A:()=>s});var r=n(1635),i=n(710),o=/application\/(\w+\+)?json/,a=/application\/x-www-form-urlencoded/;const s=function(){function e(){}return e.prototype.toRequestBody=function(e){var t=e.headers?this._getHeader(e.headers,"Content-Type"):"";if(e.body){if(o.test(t))return JSON.stringify(e.body);if(a.test(t))return(0,i.A)(e.body)}return e.body},e.prototype.toResponse=function(e){var t=this._parseResponseHeaders(e.getAllResponseHeaders());return{body:this._parseResponseBody("response"in e?e.response:e.responseText,t),headers:t,status:e.status,statusText:e.statusText}},e.prototype._parseResponseBody=function(e,t){var n=this._getHeader(t,"Content-Type");return e&&o.test(n)?JSON.parse(e):e},e.prototype._parseResponseHeaders=function(e){return(e?e.replace(/\r?\n[\t ]+/g," ").split(/\r?\n/):[]).reduce(function(e,t){var n,i=t.split(":"),o=(i.shift()||"").trim();return o?(0,r.__assign)((0,r.__assign)({},e),((n={})[o.toLowerCase()]=i.join(":").trim(),n)):e},{})},e.prototype._getHeader=function(e,t){return e&&t&&(e[t]||e[t.toLowerCase()])||""},e}()},5861(e,t,n){"use strict";n.d(t,{A:()=>i});var r=n(5889);const i=function(){function e(){}return e.prototype.createRequest=function(e,t){var n=new XMLHttpRequest;return this._configureRequest(n,e,t),n},e.prototype._configureRequest=function(e,t,n){void 0===n&&(n={}),e.open(n.method||"GET",this._formatUrl(t,n.params,n.encodeParams),!0),n.headers&&this._configureRequestHeaders(e,n.headers),"boolean"==typeof n.credentials&&(e.withCredentials=n.credentials),"number"==typeof n.timeout&&(e.timeout=n.timeout)},e.prototype._configureRequestHeaders=function(e,t){Object.keys(t).filter(function(e){return null!==t[e]}).forEach(function(n){e.setRequestHeader(n,t[n])})},e.prototype._formatUrl=function(e,t,n){return void 0===n&&(n=!0),t&&0!==Object.keys(t).length?"".concat(e,"?").concat(r.stringify(t,{encode:n})):e},e}()},4670(e,t,n){"use strict";n.d(t,{A:()=>u});var r=n(1635),i=n(35),o=n.n(i),a=n(4325),s=n(4843),c=n(2024);const u=function(){function e(e,t,n,r){void 0===r&&(r={}),this._requestFactory=e,this._payloadTransformer=t,this._cookie=n,this._options=r,this._cache=this._options.cache||new a.g}return e.prototype.sendRequest=function(e,t){var n=this,r=this._mergeDefaultOptions(e,t),i=this._getCachedRequest(e,r);if(i)return Promise.resolve(i);var o=this._requestFactory.createRequest(this._prependHost(e),r);return new Promise(function(t,i){var a=function(){var a=n._payloadTransformer.toResponse(o);a.status>=200&&a.status<300?(n._cacheRequest(e,r,a),t(a)):i(a)};o.onload=a,o.onerror=a,o.onabort=a,o.ontimeout=a,r.timeout instanceof c.A&&(r.timeout.onComplete(function(){return o.abort()}),r.timeout.start()),(0,s.A)(r.timeout)&&r.timeout.then(function(){return o.abort()}),o.send(n._payloadTransformer.toRequestBody(r))})},e.prototype.get=function(e,t){return this.sendRequest(e,(0,r.__assign)((0,r.__assign)({},t),{method:"GET"}))},e.prototype.post=function(e,t){return this.sendRequest(e,(0,r.__assign)((0,r.__assign)({},t),{method:"POST"}))},e.prototype.put=function(e,t){return this.sendRequest(e,(0,r.__assign)((0,r.__assign)({},t),{method:"PUT"}))},e.prototype.patch=function(e,t){return this.sendRequest(e,(0,r.__assign)((0,r.__assign)({},t),{method:"PATCH"}))},e.prototype.delete=function(e,t){return this.sendRequest(e,(0,r.__assign)((0,r.__assign)({},t),{method:"DELETE"}))},e.prototype._mergeDefaultOptions=function(e,t){var n={credentials:!0,encodeParams:!0,headers:{Accept:"application/json, text/plain, */*"},method:"GET"},r=this._cookie.get("XSRF-TOKEN");return r&&n.headers&&!this._isAssetRequest(e,t)&&this._isLocalRequest(e)&&(n.headers["X-XSRF-TOKEN"]=r),t&&t.body&&n.headers&&(n.headers["Content-Type"]="application/json"),o()({},n,t)},e.prototype._prependHost=function(e){return!this._options.host||/^https?:\/\//.test(e)?e:"".concat(this._options.host.replace(/\/$/,""),"/").concat(e.replace(/^\//,""))},e.prototype._shouldCacheRequest=function(e){return"GET"===(e.method||"GET").toUpperCase()&&Boolean(e.cache)},e.prototype._getCachedRequest=function(e,t){return this._shouldCacheRequest(t)?this._cache.read(e,t):null},e.prototype._cacheRequest=function(e,t,n){this._shouldCacheRequest(t)&&this._cache.write(e,t,n)},e.prototype._isAssetRequest=function(e,t){return(!t||!t.method||"GET"===t.method.toUpperCase())&&/\.(png|gif|jpe?g|css|js|json|svg|html?)$/.test(e.split("?")[0])},e.prototype._isLocalRequest=function(e){return!!e.match(new RegExp("^(https?:)?//"+window.location.hostname))||!e.match(new RegExp("^(https?:)?//"))},e}()},2024(e,t,n){"use strict";n.d(t,{A:()=>r});const r=function(){function e(e){var t=this;this._delay=e,this._promise=new Promise(function(e){t._resolve=e})}return e.prototype.onComplete=function(e){this._promise.then(e)},e.prototype.complete=function(){this._resolve(),void 0!==this._timeoutToken&&clearTimeout(this._timeoutToken)},e.prototype.start=function(){var e=this;void 0!==this._delay&&(this._timeoutToken=setTimeout(function(){return e.complete()},this._delay))},e}()},710(e,t,n){"use strict";function r(e){return"object"!=typeof e||null===e?e:Object.keys(e).filter(function(t){return void 0!==e[t]}).map(function(t){var n=e[t];return"string"==typeof n?"".concat(t,"=").concat(encodeURIComponent(n)):"".concat(t,"=").concat(encodeURIComponent(JSON.stringify(n)||""))}).join("&")}n.d(t,{A:()=>r})},5889(e,t,n){"use strict";const r=n(803),i=n(1915),o=n(1657),a=n(3814);function s(e){if("string"!=typeof e||1!==e.length)throw new TypeError("arrayFormatSeparator must be single character string")}function c(e,t){return t.encode?t.strict?r(e):encodeURIComponent(e):e}function u(e,t){return t.decode?i(e):e}function l(e){return Array.isArray(e)?e.sort():"object"==typeof e?l(Object.keys(e)).sort((e,t)=>Number(e)-Number(t)).map(t=>e[t]):e}function d(e){const t=e.indexOf("#");return-1!==t&&(e=e.slice(0,t)),e}function h(e){const t=(e=d(e)).indexOf("?");return-1===t?"":e.slice(t+1)}function p(e,t){return t.parseNumbers&&!Number.isNaN(Number(e))&&"string"==typeof e&&""!==e.trim()?e=Number(e):!t.parseBooleans||null===e||"true"!==e.toLowerCase()&&"false"!==e.toLowerCase()||(e="true"===e.toLowerCase()),e}function f(e,t){s((t=Object.assign({decode:!0,sort:!0,arrayFormat:"none",arrayFormatSeparator:",",parseNumbers:!1,parseBooleans:!1},t)).arrayFormatSeparator);const n=function(e){let t;switch(e.arrayFormat){case"index":return(e,n,r)=>{t=/\[(\d*)\]$/.exec(e),e=e.replace(/\[\d*\]$/,""),t?(void 0===r[e]&&(r[e]={}),r[e][t[1]]=n):r[e]=n};case"bracket":return(e,n,r)=>{t=/(\[\])$/.exec(e),e=e.replace(/\[\]$/,""),t?void 0!==r[e]?r[e]=[].concat(r[e],n):r[e]=[n]:r[e]=n};case"comma":case"separator":return(t,n,r)=>{const i="string"==typeof n&&n.includes(e.arrayFormatSeparator),o="string"==typeof n&&!i&&u(n,e).includes(e.arrayFormatSeparator);n=o?u(n,e):n;const a=i||o?n.split(e.arrayFormatSeparator).map(t=>u(t,e)):null===n?n:u(n,e);r[t]=a};default:return(e,t,n)=>{void 0!==n[e]?n[e]=[].concat(n[e],t):n[e]=t}}}(t),r=Object.create(null);if("string"!=typeof e)return r;if(!(e=e.trim().replace(/^[?#&]/,"")))return r;for(const i of e.split("&")){if(""===i)continue;let[e,a]=o(t.decode?i.replace(/\+/g," "):i,"=");a=void 0===a?null:["comma","separator"].includes(t.arrayFormat)?a:u(a,t),n(u(e,t),a,r)}for(const e of Object.keys(r)){const n=r[e];if("object"==typeof n&&null!==n)for(const e of Object.keys(n))n[e]=p(n[e],t);else r[e]=p(n,t)}return!1===t.sort?r:(!0===t.sort?Object.keys(r).sort():Object.keys(r).sort(t.sort)).reduce((e,t)=>{const n=r[t];return Boolean(n)&&"object"==typeof n&&!Array.isArray(n)?e[t]=l(n):e[t]=n,e},Object.create(null))}t.extract=h,t.parse=f,t.stringify=(e,t)=>{if(!e)return"";s((t=Object.assign({encode:!0,strict:!0,arrayFormat:"none",arrayFormatSeparator:","},t)).arrayFormatSeparator);const n=n=>t.skipNull&&null==e[n]||t.skipEmptyString&&""===e[n],r=function(e){switch(e.arrayFormat){case"index":return t=>(n,r)=>{const i=n.length;return void 0===r||e.skipNull&&null===r||e.skipEmptyString&&""===r?n:null===r?[...n,[c(t,e),"[",i,"]"].join("")]:[...n,[c(t,e),"[",c(i,e),"]=",c(r,e)].join("")]};case"bracket":return t=>(n,r)=>void 0===r||e.skipNull&&null===r||e.skipEmptyString&&""===r?n:null===r?[...n,[c(t,e),"[]"].join("")]:[...n,[c(t,e),"[]=",c(r,e)].join("")];case"comma":case"separator":return t=>(n,r)=>null==r||0===r.length?n:0===n.length?[[c(t,e),"=",c(r,e)].join("")]:[[n,c(r,e)].join(e.arrayFormatSeparator)];default:return t=>(n,r)=>void 0===r||e.skipNull&&null===r||e.skipEmptyString&&""===r?n:null===r?[...n,c(t,e)]:[...n,[c(t,e),"=",c(r,e)].join("")]}}(t),i={};for(const t of Object.keys(e))n(t)||(i[t]=e[t]);const o=Object.keys(i);return!1!==t.sort&&o.sort(t.sort),o.map(n=>{const i=e[n];return void 0===i?"":null===i?c(n,t):Array.isArray(i)?i.reduce(r(n),[]).join("&"):c(n,t)+"="+c(i,t)}).filter(e=>e.length>0).join("&")},t.parseUrl=(e,t)=>{t=Object.assign({decode:!0},t);const[n,r]=o(e,"#");return Object.assign({url:n.split("?")[0]||"",query:f(h(e),t)},t&&t.parseFragmentIdentifier&&r?{fragmentIdentifier:u(r,t)}:{})},t.stringifyUrl=(e,n)=>{n=Object.assign({encode:!0,strict:!0},n);const r=d(e.url).split("?")[0]||"",i=t.extract(e.url),o=t.parse(i,{sort:!1}),a=Object.assign(o,e.query);let s=t.stringify(a,n);s&&(s=`?${s}`);let u=function(e){let t="";const n=e.indexOf("#");return-1!==n&&(t=e.slice(n)),t}(e.url);return e.fragmentIdentifier&&(u=`#${c(e.fragmentIdentifier,n)}`),`${r}${s}${u}`},t.pick=(e,n,r)=>{r=Object.assign({parseFragmentIdentifier:!0},r);const{url:i,query:o,fragmentIdentifier:s}=t.parseUrl(e,r);return t.stringifyUrl({url:i,query:a(o,n),fragmentIdentifier:s},r)},t.exclude=(e,n,r)=>{const i=Array.isArray(n)?e=>!n.includes(e):(e,t)=>!n(e,t);return t.pick(e,i,r)}},5477(e,t){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var n=function(){function e(){}return e.prototype.canSupportRel=function(e){var t=document.createElement("link");return!!(t.relList&&t.relList.supports&&t.relList.supports(e))},e}();t.default=n},471(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(){return new o.default(new i.default,(0,r.createRequestSender)())};var r=n(4043),i=n(5477),o=n(4886)},9722(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(){return new o.default(new i.default,(0,r.createRequestSender)())};var r=n(4043),i=n(5477),o=n(7995)},5895(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(){return r||(r=(0,i.default)()),r};var r,i=n(471)},282(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(){return r||(r=(0,i.default)()),r};var r,i=n(9722)},315(e,t,n){"use strict";t.vQ=t.Hb=void 0;n(4886);var r=n(471);Object.defineProperty(t,"Hb",{enumerable:!0,get:function(){return r.default}});var i=n(5895);Object.defineProperty(t,"vQ",{enumerable:!0,get:function(){return i.default}});n(7995),n(9722),n(282)},4886(e,t){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var n=function(){function e(e,t){this._browserSupport=e,this._requestSender=t,this._scripts={},this._preloadedScripts={}}return e.prototype.loadScript=function(e,t){var n=this;return this._scripts[e]||(this._scripts[e]=new Promise(function(r,i){var o=document.createElement("script"),a=t||{},s=a.async,c=void 0!==s&&s,u=a.attributes,l=void 0===u?{}:u;Object.keys(l).forEach(function(e){o.setAttribute(e,l[e])}),o.onload=function(){return r()},o.onreadystatechange=function(){return r()},o.onerror=function(t){delete n._scripts[e],i(t)},o.async=c,o.src=e,document.body.appendChild(o)})),this._scripts[e]},e.prototype.loadScripts=function(e,t){var n=this;return Promise.all(e.map(function(e){return n.loadScript(e,t)})).then(function(){})},e.prototype.preloadScript=function(e,t){var n=this;return this._preloadedScripts[e]||(this._preloadedScripts[e]=new Promise(function(r,i){var o=(t||{}).prefetch,a=void 0!==o&&o?"prefetch":"preload";if(n._browserSupport.canSupportRel(a)){var s=document.createElement("link");s.as="script",s.rel=a,s.href=e,s.onload=function(){r()},s.onerror=function(){delete n._preloadedScripts[e],i()},document.head.appendChild(s)}else n._requestSender.get(e,{credentials:!1,headers:{Accept:"application/javascript"}}).then(function(){return r()}).catch(i)})),this._preloadedScripts[e]},e.prototype.preloadScripts=function(e,t){var n=this;return Promise.all(e.map(function(e){return n.preloadScript(e,t)})).then(function(){})},e}();t.default=n},7995(e,t){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var n=function(){function e(e,t){this._browserSupport=e,this._requestSender=t,this._stylesheets={},this._preloadedStylesheets={}}return e.prototype.loadStylesheet=function(e,t){var n=this;return this._stylesheets[e]||(this._stylesheets[e]=new Promise(function(r,i){var o=document.createElement("link"),a=t||{},s=a.prepend,c=void 0!==s&&s,u=a.attributes,l=void 0===u?{}:u;Object.keys(l).forEach(function(e){o.setAttribute(e,l[e])}),o.onload=function(){return r()},o.onerror=function(t){delete n._stylesheets[e],i(t)},o.rel="stylesheet",o.href=e,c&&document.head.children[0]?document.head.insertBefore(o,document.head.children[0]):document.head.appendChild(o)})),this._stylesheets[e]},e.prototype.loadStylesheets=function(e,t){var n=this;return Promise.all(e.map(function(e){return n.loadStylesheet(e,t)})).then(function(){})},e.prototype.preloadStylesheet=function(e,t){var n=this;return this._preloadedStylesheets[e]||(this._preloadedStylesheets[e]=new Promise(function(r,i){var o=(t||{}).prefetch,a=void 0!==o&&o,s=a?"prefetch":"preload";if(n._browserSupport.canSupportRel(s)){var c=document.createElement("link");c.as="style",c.rel=a?"prefetch":"preload",c.href=e,c.onload=function(){r()},c.onerror=function(t){delete n._preloadedStylesheets[e],i(t)},document.head.appendChild(c)}else n._requestSender.get(e,{credentials:!1,headers:{Accept:"text/css"}}).then(function(){return r()}).catch(i)})),this._preloadedStylesheets[e]},e.prototype.preloadStylesheets=function(e,t){var n=this;return Promise.all(e.map(function(e){return n.preloadStylesheet(e,t)})).then(function(){})},e}();t.default=n},1915(e){"use strict";var t="%[a-f0-9]{2}",n=new RegExp("("+t+")|([^%]+?)","gi"),r=new RegExp("("+t+")+","gi");function i(e,t){try{return[decodeURIComponent(e.join(""))]}catch(e){}if(1===e.length)return e;t=t||1;var n=e.slice(0,t),r=e.slice(t);return Array.prototype.concat.call([],i(n),i(r))}function o(e){try{return decodeURIComponent(e)}catch(o){for(var t=e.match(n)||[],r=1;r<t.length;r++)t=(e=i(t,r).join("")).match(n)||[];return e}}e.exports=function(e){if("string"!=typeof e)throw new TypeError("Expected `encodedURI` to be of type `string`, got `"+typeof e+"`");try{return e=e.replace(/\+/g," "),decodeURIComponent(e)}catch(t){return function(e){for(var t={"%FE%FF":"��","%FF%FE":"��"},n=r.exec(e);n;){try{t[n[0]]=decodeURIComponent(n[0])}catch(e){var i=o(n[0]);i!==n[0]&&(t[n[0]]=i)}n=r.exec(e)}t["%C2"]="�";for(var a=Object.keys(t),s=0;s<a.length;s++){var c=a[s];e=e.replace(new RegExp(c,"g"),t[c])}return e}(e)}}},3814(e){"use strict";e.exports=function(e,t){for(var n={},r=Object.keys(e),i=Array.isArray(t),o=0;o<r.length;o++){var a=r[o],s=e[a];(i?-1!==t.indexOf(a):t(a,s,e))&&(n[a]=s)}return n}},168(e){var t;t=function(){function e(){for(var e=0,t={};e<arguments.length;e++){var n=arguments[e];for(var r in n)t[r]=n[r]}return t}function t(e){return e.replace(/(%[0-9A-Z]{2})+/g,decodeURIComponent)}return function n(r){function i(){}function o(t,n,o){if("undefined"!=typeof document){"number"==typeof(o=e({path:"/"},i.defaults,o)).expires&&(o.expires=new Date(1*new Date+864e5*o.expires)),o.expires=o.expires?o.expires.toUTCString():"";try{var a=JSON.stringify(n);/^[\{\[]/.test(a)&&(n=a)}catch(e){}n=r.write?r.write(n,t):encodeURIComponent(String(n)).replace(/%(23|24|26|2B|3A|3C|3E|3D|2F|3F|40|5B|5D|5E|60|7B|7D|7C)/g,decodeURIComponent),t=encodeURIComponent(String(t)).replace(/%(23|24|26|2B|5E|60|7C)/g,decodeURIComponent).replace(/[\(\)]/g,escape);var s="";for(var c in o)o[c]&&(s+="; "+c,!0!==o[c]&&(s+="="+o[c].split(";")[0]));return document.cookie=t+"="+n+s}}function a(e,n){if("undefined"!=typeof document){for(var i={},o=document.cookie?document.cookie.split("; "):[],a=0;a<o.length;a++){var s=o[a].split("="),c=s.slice(1).join("=");n||'"'!==c.charAt(0)||(c=c.slice(1,-1));try{var u=t(s[0]);if(c=(r.read||r)(c,u)||t(c),n)try{c=JSON.parse(c)}catch(e){}if(i[u]=c,e===u)break}catch(e){}}return e?i[e]:i}}return i.set=o,i.get=function(e){return a(e,!1)},i.getJSON=function(e){return a(e,!0)},i.remove=function(t,n){o(t,"",e(n,{expires:-1}))},i.defaults={},i.withConverter=n,i}(function(){})},"function"==typeof define&&define.amd&&define(t),e.exports=t()},35(e,t,n){e=n.nmd(e);var r="__lodash_hash_undefined__",i=9007199254740991,o="[object Arguments]",a="[object Function]",s="[object Object]",c=/^\[object .+?Constructor\]$/,u=/^(?:0|[1-9]\d*)$/,l={};l["[object Float32Array]"]=l["[object Float64Array]"]=l["[object Int8Array]"]=l["[object Int16Array]"]=l["[object Int32Array]"]=l["[object Uint8Array]"]=l["[object Uint8ClampedArray]"]=l["[object Uint16Array]"]=l["[object Uint32Array]"]=!0,l[o]=l["[object Array]"]=l["[object ArrayBuffer]"]=l["[object Boolean]"]=l["[object DataView]"]=l["[object Date]"]=l["[object Error]"]=l[a]=l["[object Map]"]=l["[object Number]"]=l[s]=l["[object RegExp]"]=l["[object Set]"]=l["[object String]"]=l["[object WeakMap]"]=!1;var d,h,p,f="object"==typeof n.g&&n.g&&n.g.Object===Object&&n.g,m="object"==typeof self&&self&&self.Object===Object&&self,y=f||m||Function("return this")(),g=t&&!t.nodeType&&t,v=g&&e&&!e.nodeType&&e,_=v&&v.exports===g,b=_&&f.process,P=function(){try{return v&&v.require&&v.require("util").types||b&&b.binding&&b.binding("util")}catch(e){}}(),S=P&&P.isTypedArray,w=Array.prototype,I=Function.prototype,C=Object.prototype,O=y["__core-js_shared__"],A=I.toString,E=C.hasOwnProperty,k=(d=/[^.]+$/.exec(O&&O.keys&&O.keys.IE_PROTO||""))?"Symbol(src)_1."+d:"",z=C.toString,T=A.call(Object),j=RegExp("^"+A.call(E).replace(/[\\^$.*+?()[\]{}|]/g,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$"),x=_?y.Buffer:void 0,B=y.Symbol,M=y.Uint8Array,F=(x&&x.allocUnsafe,h=Object.getPrototypeOf,p=Object,function(e){return h(p(e))}),N=Object.create,D=C.propertyIsEnumerable,U=w.splice,R=B?B.toStringTag:void 0,L=function(){try{var e=se(Object,"defineProperty");return e({},"",{}),e}catch(e){}}(),V=x?x.isBuffer:void 0,G=Math.max,W=Date.now,$=se(y,"Map"),q=se(Object,"create"),H=function(){function e(){}return function(t){if(!_e(t))return{};if(N)return N(t);e.prototype=t;var n=new e;return e.prototype=void 0,n}}();function K(e){var t=-1,n=null==e?0:e.length;for(this.clear();++t<n;){var r=e[t];this.set(r[0],r[1])}}function Y(e){var t=-1,n=null==e?0:e.length;for(this.clear();++t<n;){var r=e[t];this.set(r[0],r[1])}}function Z(e){var t=-1,n=null==e?0:e.length;for(this.clear();++t<n;){var r=e[t];this.set(r[0],r[1])}}function J(e){var t=this.__data__=new Y(e);this.size=t.size}function Q(e,t,n){(void 0!==n&&!he(e[t],n)||void 0===n&&!(t in e))&&te(e,t,n)}function X(e,t,n){var r=e[t];E.call(e,t)&&he(r,n)&&(void 0!==n||t in e)||te(e,t,n)}function ee(e,t){for(var n=e.length;n--;)if(he(e[n][0],t))return n;return-1}function te(e,t,n){"__proto__"==t&&L?L(e,t,{configurable:!0,enumerable:!0,value:n,writable:!0}):e[t]=n}K.prototype.clear=function(){this.__data__=q?q(null):{},this.size=0},K.prototype.delete=function(e){var t=this.has(e)&&delete this.__data__[e];return this.size-=t?1:0,t},K.prototype.get=function(e){var t=this.__data__;if(q){var n=t[e];return n===r?void 0:n}return E.call(t,e)?t[e]:void 0},K.prototype.has=function(e){var t=this.__data__;return q?void 0!==t[e]:E.call(t,e)},K.prototype.set=function(e,t){var n=this.__data__;return this.size+=this.has(e)?0:1,n[e]=q&&void 0===t?r:t,this},Y.prototype.clear=function(){this.__data__=[],this.size=0},Y.prototype.delete=function(e){var t=this.__data__,n=ee(t,e);return!(n<0||(n==t.length-1?t.pop():U.call(t,n,1),--this.size,0))},Y.prototype.get=function(e){var t=this.__data__,n=ee(t,e);return n<0?void 0:t[n][1]},Y.prototype.has=function(e){return ee(this.__data__,e)>-1},Y.prototype.set=function(e,t){var n=this.__data__,r=ee(n,e);return r<0?(++this.size,n.push([e,t])):n[r][1]=t,this},Z.prototype.clear=function(){this.size=0,this.__data__={hash:new K,map:new($||Y),string:new K}},Z.prototype.delete=function(e){var t=ae(this,e).delete(e);return this.size-=t?1:0,t},Z.prototype.get=function(e){return ae(this,e).get(e)},Z.prototype.has=function(e){return ae(this,e).has(e)},Z.prototype.set=function(e,t){var n=ae(this,e),r=n.size;return n.set(e,t),this.size+=n.size==r?0:1,this},J.prototype.clear=function(){this.__data__=new Y,this.size=0},J.prototype.delete=function(e){var t=this.__data__,n=t.delete(e);return this.size=t.size,n},J.prototype.get=function(e){return this.__data__.get(e)},J.prototype.has=function(e){return this.__data__.has(e)},J.prototype.set=function(e,t){var n=this.__data__;if(n instanceof Y){var r=n.__data__;if(!$||r.length<199)return r.push([e,t]),this.size=++n.size,this;n=this.__data__=new Z(r)}return n.set(e,t),this.size=n.size,this};function ne(e){return null==e?void 0===e?"[object Undefined]":"[object Null]":R&&R in Object(e)?function(e){var t=E.call(e,R),n=e[R];try{e[R]=void 0;var r=!0}catch(e){}var i=z.call(e);return r&&(t?e[R]=n:delete e[R]),i}(e):function(e){return z.call(e)}(e)}function re(e){return be(e)&&ne(e)==o}function ie(e,t,n,r,i){e!==t&&function(e,t,n){for(var r=-1,i=Object(e),o=n(e),a=o.length;a--;){var s=o[++r];if(!1===t(i[s],s,i))break}}(t,function(o,a){if(i||(i=new J),_e(o))!function(e,t,n,r,i,o,a){var c=le(e,n),u=le(t,n),l=a.get(u);if(l)Q(e,n,l);else{var d,h,p,f,m,y=o?o(c,u,n+"",e,t,a):void 0,g=void 0===y;if(g){var v=fe(u),_=!v&&ye(u),b=!v&&!_&&Pe(u);y=u,v||_||b?fe(c)?y=c:be(m=c)&&me(m)?y=function(e,t){var n=-1,r=e.length;for(t||(t=Array(r));++n<r;)t[n]=e[n];return t}(c):_?(g=!1,y=function(e){return e.slice()}(u)):b?(g=!1,f=new(p=(d=u).buffer).constructor(p.byteLength),new M(f).set(new M(p)),h=f,y=new d.constructor(h,d.byteOffset,d.length)):y=[]:function(e){if(!be(e)||ne(e)!=s)return!1;var t=F(e);if(null===t)return!0;var n=E.call(t,"constructor")&&t.constructor;return"function"==typeof n&&n instanceof n&&A.call(n)==T}(u)||pe(u)?(y=c,pe(c)?y=function(e){return function(e,t,n){var r=!n;n||(n={});for(var i=-1,o=t.length;++i<o;){var a=t[i],s=void 0;void 0===s&&(s=e[a]),r?te(n,a,s):X(n,a,s)}return n}(e,Se(e))}(c):_e(c)&&!ge(c)||(y=function(e){return"function"!=typeof e.constructor||ue(e)?{}:H(F(e))}(u))):g=!1}g&&(a.set(u,y),i(y,u,r,o,a),a.delete(u)),Q(e,n,y)}}(e,t,a,n,ie,r,i);else{var c=r?r(le(e,a),o,a+"",e,t,i):void 0;void 0===c&&(c=o),Q(e,a,c)}},Se)}var oe=L?function(e,t){return L(e,"toString",{configurable:!0,enumerable:!1,value:(n=t,function(){return n}),writable:!0});var n}:Ce;function ae(e,t){var n,r,i=e.__data__;return("string"==(r=typeof(n=t))||"number"==r||"symbol"==r||"boolean"==r?"__proto__"!==n:null===n)?i["string"==typeof t?"string":"hash"]:i.map}function se(e,t){var n=function(e,t){return null==e?void 0:e[t]}(e,t);return function(e){return!(!_e(e)||function(e){return!!k&&k in e}(e))&&(ge(e)?j:c).test(function(e){if(null!=e){try{return A.call(e)}catch(e){}try{return e+""}catch(e){}}return""}(e))}(n)?n:void 0}function ce(e,t){var n=typeof e;return!!(t=t??i)&&("number"==n||"symbol"!=n&&u.test(e))&&e>-1&&e%1==0&&e<t}function ue(e){var t=e&&e.constructor;return e===("function"==typeof t&&t.prototype||C)}function le(e,t){if(("constructor"!==t||"function"!=typeof e[t])&&"__proto__"!=t)return e[t]}var de=function(e){var t=0,n=0;return function(){var r=W(),i=16-(r-n);if(n=r,i>0){if(++t>=800)return arguments[0]}else t=0;return e.apply(void 0,arguments)}}(oe);function he(e,t){return e===t||e!=e&&t!=t}var pe=re(function(){return arguments}())?re:function(e){return be(e)&&E.call(e,"callee")&&!D.call(e,"callee")},fe=Array.isArray;function me(e){return null!=e&&ve(e.length)&&!ge(e)}var ye=V||function(){return!1};function ge(e){if(!_e(e))return!1;var t=ne(e);return t==a||"[object GeneratorFunction]"==t||"[object AsyncFunction]"==t||"[object Proxy]"==t}function ve(e){return"number"==typeof e&&e>-1&&e%1==0&&e<=i}function _e(e){var t=typeof e;return null!=e&&("object"==t||"function"==t)}function be(e){return null!=e&&"object"==typeof e}var Pe=S?function(e){return function(t){return e(t)}}(S):function(e){return be(e)&&ve(e.length)&&!!l[ne(e)]};function Se(e){return me(e)?function(e,t){var n=fe(e),r=!n&&pe(e),i=!n&&!r&&ye(e),o=!n&&!r&&!i&&Pe(e),a=n||r||i||o,s=a?function(e,t){for(var n=-1,r=Array(e);++n<e;)r[n]=t(n);return r}(e.length,String):[],c=s.length;for(var u in e)!t&&!E.call(e,u)||a&&("length"==u||i&&("offset"==u||"parent"==u)||o&&("buffer"==u||"byteLength"==u||"byteOffset"==u)||ce(u,c))||s.push(u);return s}(e,!0):function(e){if(!_e(e))return function(e){var t=[];if(null!=e)for(var n in Object(e))t.push(n);return t}(e);var t=ue(e),n=[];for(var r in e)("constructor"!=r||!t&&E.call(e,r))&&n.push(r);return n}(e)}var we,Ie=(we=function(e,t,n){ie(e,t,n)},function(e,t){return de(function(e,t,n){return t=G(void 0===t?e.length-1:t,0),function(){for(var r=arguments,i=-1,o=G(r.length-t,0),a=Array(o);++i<o;)a[i]=r[t+i];i=-1;for(var s=Array(t+1);++i<t;)s[i]=r[i];return s[t]=n(a),function(e,t,n){switch(n.length){case 0:return e.call(t);case 1:return e.call(t,n[0]);case 2:return e.call(t,n[0],n[1]);case 3:return e.call(t,n[0],n[1],n[2])}return e.apply(t,n)}(e,this,s)}}(e,t,Ce),e+"")}(function(e,t){var n=-1,r=t.length,i=r>1?t[r-1]:void 0,o=r>2?t[2]:void 0;for(i=we.length>3&&"function"==typeof i?(r--,i):void 0,o&&function(e,t,n){if(!_e(n))return!1;var r=typeof t;return!!("number"==r?me(n)&&ce(t,n.length):"string"==r&&t in n)&&he(n[t],e)}(t[0],t[1],o)&&(i=r<3?void 0:i,r=1),e=Object(e);++n<r;){var a=t[n];a&&we(e,a,n)}return e}));function Ce(e){return e}e.exports=Ie},9440(e,t,n){e=n.nmd(e),function(){var r,i="Expected a function",o="__lodash_hash_undefined__",a="__lodash_placeholder__",s=32,c=128,u=1/0,l=9007199254740991,d=NaN,h=4294967295,p=[["ary",c],["bind",1],["bindKey",2],["curry",8],["curryRight",16],["flip",512],["partial",s],["partialRight",64],["rearg",256]],f="[object Arguments]",m="[object Array]",y="[object Boolean]",g="[object Date]",v="[object Error]",_="[object Function]",b="[object GeneratorFunction]",P="[object Map]",S="[object Number]",w="[object Object]",I="[object Promise]",C="[object RegExp]",O="[object Set]",A="[object String]",E="[object Symbol]",k="[object WeakMap]",z="[object ArrayBuffer]",T="[object DataView]",j="[object Float32Array]",x="[object Float64Array]",B="[object Int8Array]",M="[object Int16Array]",F="[object Int32Array]",N="[object Uint8Array]",D="[object Uint8ClampedArray]",U="[object Uint16Array]",R="[object Uint32Array]",L=/\b__p \+= '';/g,V=/\b(__p \+=) '' \+/g,G=/(__e\(.*?\)|\b__t\)) \+\n'';/g,W=/&(?:amp|lt|gt|quot|#39);/g,$=/[&<>"']/g,q=RegExp(W.source),H=RegExp($.source),K=/<%-([\s\S]+?)%>/g,Y=/<%([\s\S]+?)%>/g,Z=/<%=([\s\S]+?)%>/g,J=/\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/,Q=/^\w*$/,X=/[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g,ee=/[\\^$.*+?()[\]{}|]/g,te=RegExp(ee.source),ne=/^\s+/,re=/\s/,ie=/\{(?:\n\/\* \[wrapped with .+\] \*\/)?\n?/,oe=/\{\n\/\* \[wrapped with (.+)\] \*/,ae=/,? & /,se=/[^\x00-\x2f\x3a-\x40\x5b-\x60\x7b-\x7f]+/g,ce=/[()=,{}\[\]\/\s]/,ue=/\\(\\)?/g,le=/\$\{([^\\}]*(?:\\.[^\\}]*)*)\}/g,de=/\w*$/,he=/^[-+]0x[0-9a-f]+$/i,pe=/^0b[01]+$/i,fe=/^\[object .+?Constructor\]$/,me=/^0o[0-7]+$/i,ye=/^(?:0|[1-9]\d*)$/,ge=/[\xc0-\xd6\xd8-\xf6\xf8-\xff\u0100-\u017f]/g,ve=/($^)/,_e=/['\n\r\u2028\u2029\\]/g,be="\\ud800-\\udfff",Pe="\\u0300-\\u036f\\ufe20-\\ufe2f\\u20d0-\\u20ff",Se="\\u2700-\\u27bf",we="a-z\\xdf-\\xf6\\xf8-\\xff",Ie="A-Z\\xc0-\\xd6\\xd8-\\xde",Ce="\\ufe0e\\ufe0f",Oe="\\xac\\xb1\\xd7\\xf7\\x00-\\x2f\\x3a-\\x40\\x5b-\\x60\\x7b-\\xbf\\u2000-\\u206f \\t\\x0b\\f\\xa0\\ufeff\\n\\r\\u2028\\u2029\\u1680\\u180e\\u2000\\u2001\\u2002\\u2003\\u2004\\u2005\\u2006\\u2007\\u2008\\u2009\\u200a\\u202f\\u205f\\u3000",Ae="["+be+"]",Ee="["+Oe+"]",ke="["+Pe+"]",ze="\\d+",Te="["+Se+"]",je="["+we+"]",xe="[^"+be+Oe+ze+Se+we+Ie+"]",Be="\\ud83c[\\udffb-\\udfff]",Me="[^"+be+"]",Fe="(?:\\ud83c[\\udde6-\\uddff]){2}",Ne="[\\ud800-\\udbff][\\udc00-\\udfff]",De="["+Ie+"]",Ue="\\u200d",Re="(?:"+je+"|"+xe+")",Le="(?:"+De+"|"+xe+")",Ve="(?:['’](?:d|ll|m|re|s|t|ve))?",Ge="(?:['’](?:D|LL|M|RE|S|T|VE))?",We="(?:"+ke+"|"+Be+")?",$e="["+Ce+"]?",qe=$e+We+"(?:"+Ue+"(?:"+[Me,Fe,Ne].join("|")+")"+$e+We+")*",He="(?:"+[Te,Fe,Ne].join("|")+")"+qe,Ke="(?:"+[Me+ke+"?",ke,Fe,Ne,Ae].join("|")+")",Ye=RegExp("['’]","g"),Ze=RegExp(ke,"g"),Je=RegExp(Be+"(?="+Be+")|"+Ke+qe,"g"),Qe=RegExp([De+"?"+je+"+"+Ve+"(?="+[Ee,De,"$"].join("|")+")",Le+"+"+Ge+"(?="+[Ee,De+Re,"$"].join("|")+")",De+"?"+Re+"+"+Ve,De+"+"+Ge,"\\d*(?:1ST|2ND|3RD|(?![123])\\dTH)(?=\\b|[a-z_])","\\d*(?:1st|2nd|3rd|(?![123])\\dth)(?=\\b|[A-Z_])",ze,He].join("|"),"g"),Xe=RegExp("["+Ue+be+Pe+Ce+"]"),et=/[a-z][A-Z]|[A-Z]{2}[a-z]|[0-9][a-zA-Z]|[a-zA-Z][0-9]|[^a-zA-Z0-9 ]/,tt=["Array","Buffer","DataView","Date","Error","Float32Array","Float64Array","Function","Int8Array","Int16Array","Int32Array","Map","Math","Object","Promise","RegExp","Set","String","Symbol","TypeError","Uint8Array","Uint8ClampedArray","Uint16Array","Uint32Array","WeakMap","_","clearTimeout","isFinite","parseInt","setTimeout"],nt=-1,rt={};rt[j]=rt[x]=rt[B]=rt[M]=rt[F]=rt[N]=rt[D]=rt[U]=rt[R]=!0,rt[f]=rt[m]=rt[z]=rt[y]=rt[T]=rt[g]=rt[v]=rt[_]=rt[P]=rt[S]=rt[w]=rt[C]=rt[O]=rt[A]=rt[k]=!1;var it={};it[f]=it[m]=it[z]=it[T]=it[y]=it[g]=it[j]=it[x]=it[B]=it[M]=it[F]=it[P]=it[S]=it[w]=it[C]=it[O]=it[A]=it[E]=it[N]=it[D]=it[U]=it[R]=!0,it[v]=it[_]=it[k]=!1;var ot={"\\":"\\","'":"'","\n":"n","\r":"r","\u2028":"u2028","\u2029":"u2029"},at=parseFloat,st=parseInt,ct="object"==typeof n.g&&n.g&&n.g.Object===Object&&n.g,ut="object"==typeof self&&self&&self.Object===Object&&self,lt=ct||ut||Function("return this")(),dt=t&&!t.nodeType&&t,ht=dt&&e&&!e.nodeType&&e,pt=ht&&ht.exports===dt,ft=pt&&ct.process,mt=function(){try{return ht&&ht.require&&ht.require("util").types||ft&&ft.binding&&ft.binding("util")}catch(e){}}(),yt=mt&&mt.isArrayBuffer,gt=mt&&mt.isDate,vt=mt&&mt.isMap,_t=mt&&mt.isRegExp,bt=mt&&mt.isSet,Pt=mt&&mt.isTypedArray;function St(e,t,n){switch(n.length){case 0:return e.call(t);case 1:return e.call(t,n[0]);case 2:return e.call(t,n[0],n[1]);case 3:return e.call(t,n[0],n[1],n[2])}return e.apply(t,n)}function wt(e,t,n,r){for(var i=-1,o=null==e?0:e.length;++i<o;){var a=e[i];t(r,a,n(a),e)}return r}function It(e,t){for(var n=-1,r=null==e?0:e.length;++n<r&&!1!==t(e[n],n,e););return e}function Ct(e,t){for(var n=null==e?0:e.length;n--&&!1!==t(e[n],n,e););return e}function Ot(e,t){for(var n=-1,r=null==e?0:e.length;++n<r;)if(!t(e[n],n,e))return!1;return!0}function At(e,t){for(var n=-1,r=null==e?0:e.length,i=0,o=[];++n<r;){var a=e[n];t(a,n,e)&&(o[i++]=a)}return o}function Et(e,t){return!(null==e||!e.length)&&Dt(e,t,0)>-1}function kt(e,t,n){for(var r=-1,i=null==e?0:e.length;++r<i;)if(n(t,e[r]))return!0;return!1}function zt(e,t){for(var n=-1,r=null==e?0:e.length,i=Array(r);++n<r;)i[n]=t(e[n],n,e);return i}function Tt(e,t){for(var n=-1,r=t.length,i=e.length;++n<r;)e[i+n]=t[n];return e}function jt(e,t,n,r){var i=-1,o=null==e?0:e.length;for(r&&o&&(n=e[++i]);++i<o;)n=t(n,e[i],i,e);return n}function xt(e,t,n,r){var i=null==e?0:e.length;for(r&&i&&(n=e[--i]);i--;)n=t(n,e[i],i,e);return n}function Bt(e,t){for(var n=-1,r=null==e?0:e.length;++n<r;)if(t(e[n],n,e))return!0;return!1}var Mt=Vt("length");function Ft(e,t,n){var r;return n(e,function(e,n,i){if(t(e,n,i))return r=n,!1}),r}function Nt(e,t,n,r){for(var i=e.length,o=n+(r?1:-1);r?o--:++o<i;)if(t(e[o],o,e))return o;return-1}function Dt(e,t,n){return t==t?function(e,t,n){for(var r=n-1,i=e.length;++r<i;)if(e[r]===t)return r;return-1}(e,t,n):Nt(e,Rt,n)}function Ut(e,t,n,r){for(var i=n-1,o=e.length;++i<o;)if(r(e[i],t))return i;return-1}function Rt(e){return e!=e}function Lt(e,t){var n=null==e?0:e.length;return n?$t(e,t)/n:d}function Vt(e){return function(t){return null==t?r:t[e]}}function Gt(e){return function(t){return null==e?r:e[t]}}function Wt(e,t,n,r,i){return i(e,function(e,i,o){n=r?(r=!1,e):t(n,e,i,o)}),n}function $t(e,t){for(var n,i=-1,o=e.length;++i<o;){var a=t(e[i]);a!==r&&(n=n===r?a:n+a)}return n}function qt(e,t){for(var n=-1,r=Array(e);++n<e;)r[n]=t(n);return r}function Ht(e){return e?e.slice(0,dn(e)+1).replace(ne,""):e}function Kt(e){return function(t){return e(t)}}function Yt(e,t){return zt(t,function(t){return e[t]})}function Zt(e,t){return e.has(t)}function Jt(e,t){for(var n=-1,r=e.length;++n<r&&Dt(t,e[n],0)>-1;);return n}function Qt(e,t){for(var n=e.length;n--&&Dt(t,e[n],0)>-1;);return n}var Xt=Gt({À:"A",Á:"A",Â:"A",Ã:"A",Ä:"A",Å:"A",à:"a",á:"a",â:"a",ã:"a",ä:"a",å:"a",Ç:"C",ç:"c",Ð:"D",ð:"d",È:"E",É:"E",Ê:"E",Ë:"E",è:"e",é:"e",ê:"e",ë:"e",Ì:"I",Í:"I",Î:"I",Ï:"I",ì:"i",í:"i",î:"i",ï:"i",Ñ:"N",ñ:"n",Ò:"O",Ó:"O",Ô:"O",Õ:"O",Ö:"O",Ø:"O",ò:"o",ó:"o",ô:"o",õ:"o",ö:"o",ø:"o",Ù:"U",Ú:"U",Û:"U",Ü:"U",ù:"u",ú:"u",û:"u",ü:"u",Ý:"Y",ý:"y",ÿ:"y",Æ:"Ae",æ:"ae",Þ:"Th",þ:"th",ß:"ss",Ā:"A",Ă:"A",Ą:"A",ā:"a",ă:"a",ą:"a",Ć:"C",Ĉ:"C",Ċ:"C",Č:"C",ć:"c",ĉ:"c",ċ:"c",č:"c",Ď:"D",Đ:"D",ď:"d",đ:"d",Ē:"E",Ĕ:"E",Ė:"E",Ę:"E",Ě:"E",ē:"e",ĕ:"e",ė:"e",ę:"e",ě:"e",Ĝ:"G",Ğ:"G",Ġ:"G",Ģ:"G",ĝ:"g",ğ:"g",ġ:"g",ģ:"g",Ĥ:"H",Ħ:"H",ĥ:"h",ħ:"h",Ĩ:"I",Ī:"I",Ĭ:"I",Į:"I",İ:"I",ĩ:"i",ī:"i",ĭ:"i",į:"i",ı:"i",Ĵ:"J",ĵ:"j",Ķ:"K",ķ:"k",ĸ:"k",Ĺ:"L",Ļ:"L",Ľ:"L",Ŀ:"L",Ł:"L",ĺ:"l",ļ:"l",ľ:"l",ŀ:"l",ł:"l",Ń:"N",Ņ:"N",Ň:"N",Ŋ:"N",ń:"n",ņ:"n",ň:"n",ŋ:"n",Ō:"O",Ŏ:"O",Ő:"O",ō:"o",ŏ:"o",ő:"o",Ŕ:"R",Ŗ:"R",Ř:"R",ŕ:"r",ŗ:"r",ř:"r",Ś:"S",Ŝ:"S",Ş:"S",Š:"S",ś:"s",ŝ:"s",ş:"s",š:"s",Ţ:"T",Ť:"T",Ŧ:"T",ţ:"t",ť:"t",ŧ:"t",Ũ:"U",Ū:"U",Ŭ:"U",Ů:"U",Ű:"U",Ų:"U",ũ:"u",ū:"u",ŭ:"u",ů:"u",ű:"u",ų:"u",Ŵ:"W",ŵ:"w",Ŷ:"Y",ŷ:"y",Ÿ:"Y",Ź:"Z",Ż:"Z",Ž:"Z",ź:"z",ż:"z",ž:"z",IJ:"IJ",ij:"ij",Œ:"Oe",œ:"oe",ʼn:"'n",ſ:"s"}),en=Gt({"&":"&","<":"<",">":">",'"':""","'":"'"});function tn(e){return"\\"+ot[e]}function nn(e){return Xe.test(e)}function rn(e){var t=-1,n=Array(e.size);return e.forEach(function(e,r){n[++t]=[r,e]}),n}function on(e,t){return function(n){return e(t(n))}}function an(e,t){for(var n=-1,r=e.length,i=0,o=[];++n<r;){var s=e[n];s!==t&&s!==a||(e[n]=a,o[i++]=n)}return o}function sn(e){var t=-1,n=Array(e.size);return e.forEach(function(e){n[++t]=e}),n}function cn(e){var t=-1,n=Array(e.size);return e.forEach(function(e){n[++t]=[e,e]}),n}function un(e){return nn(e)?function(e){for(var t=Je.lastIndex=0;Je.test(e);)++t;return t}(e):Mt(e)}function ln(e){return nn(e)?function(e){return e.match(Je)||[]}(e):function(e){return e.split("")}(e)}function dn(e){for(var t=e.length;t--&&re.test(e.charAt(t)););return t}var hn=Gt({"&":"&","<":"<",">":">",""":'"',"'":"'"}),pn=function e(t){var n,re=(t=null==t?lt:pn.defaults(lt.Object(),t,pn.pick(lt,tt))).Array,be=t.Date,Pe=t.Error,Se=t.Function,we=t.Math,Ie=t.Object,Ce=t.RegExp,Oe=t.String,Ae=t.TypeError,Ee=re.prototype,ke=Se.prototype,ze=Ie.prototype,Te=t["__core-js_shared__"],je=ke.toString,xe=ze.hasOwnProperty,Be=0,Me=(n=/[^.]+$/.exec(Te&&Te.keys&&Te.keys.IE_PROTO||""))?"Symbol(src)_1."+n:"",Fe=ze.toString,Ne=je.call(Ie),De=lt._,Ue=Ce("^"+je.call(xe).replace(ee,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$"),Re=pt?t.Buffer:r,Le=t.Symbol,Ve=t.Uint8Array,Ge=Re?Re.allocUnsafe:r,We=on(Ie.getPrototypeOf,Ie),$e=Ie.create,qe=ze.propertyIsEnumerable,He=Ee.splice,Ke=Le?Le.isConcatSpreadable:r,Je=Le?Le.iterator:r,Xe=Le?Le.toStringTag:r,ot=function(){try{var e=co(Ie,"defineProperty");return e({},"",{}),e}catch(e){}}(),ct=t.clearTimeout!==lt.clearTimeout&&t.clearTimeout,ut=be&&be.now!==lt.Date.now&&be.now,dt=t.setTimeout!==lt.setTimeout&&t.setTimeout,ht=we.ceil,ft=we.floor,mt=Ie.getOwnPropertySymbols,Mt=Re?Re.isBuffer:r,Gt=t.isFinite,fn=Ee.join,mn=on(Ie.keys,Ie),yn=we.max,gn=we.min,vn=be.now,_n=t.parseInt,bn=we.random,Pn=Ee.reverse,Sn=co(t,"DataView"),wn=co(t,"Map"),In=co(t,"Promise"),Cn=co(t,"Set"),On=co(t,"WeakMap"),An=co(Ie,"create"),En=On&&new On,kn={},zn=No(Sn),Tn=No(wn),jn=No(In),xn=No(Cn),Bn=No(On),Mn=Le?Le.prototype:r,Fn=Mn?Mn.valueOf:r,Nn=Mn?Mn.toString:r;function Dn(e){if(es(e)&&!Ga(e)&&!(e instanceof Vn)){if(e instanceof Ln)return e;if(xe.call(e,"__wrapped__"))return Do(e)}return new Ln(e)}var Un=function(){function e(){}return function(t){if(!Xa(t))return{};if($e)return $e(t);e.prototype=t;var n=new e;return e.prototype=r,n}}();function Rn(){}function Ln(e,t){this.__wrapped__=e,this.__actions__=[],this.__chain__=!!t,this.__index__=0,this.__values__=r}function Vn(e){this.__wrapped__=e,this.__actions__=[],this.__dir__=1,this.__filtered__=!1,this.__iteratees__=[],this.__takeCount__=h,this.__views__=[]}function Gn(e){var t=-1,n=null==e?0:e.length;for(this.clear();++t<n;){var r=e[t];this.set(r[0],r[1])}}function Wn(e){var t=-1,n=null==e?0:e.length;for(this.clear();++t<n;){var r=e[t];this.set(r[0],r[1])}}function $n(e){var t=-1,n=null==e?0:e.length;for(this.clear();++t<n;){var r=e[t];this.set(r[0],r[1])}}function qn(e){var t=-1,n=null==e?0:e.length;for(this.__data__=new $n;++t<n;)this.add(e[t])}function Hn(e){var t=this.__data__=new Wn(e);this.size=t.size}function Kn(e,t){var n=Ga(e),r=!n&&Va(e),i=!n&&!r&&Ha(e),o=!n&&!r&&!i&&cs(e),a=n||r||i||o,s=a?qt(e.length,Oe):[],c=s.length;for(var u in e)!t&&!xe.call(e,u)||a&&("length"==u||i&&("offset"==u||"parent"==u)||o&&("buffer"==u||"byteLength"==u||"byteOffset"==u)||yo(u,c))||s.push(u);return s}function Yn(e){var t=e.length;return t?e[$r(0,t-1)]:r}function Zn(e,t){return jo(Oi(e),or(t,0,e.length))}function Jn(e){return jo(Oi(e))}function Qn(e,t,n){(n!==r&&!Ua(e[t],n)||n===r&&!(t in e))&&rr(e,t,n)}function Xn(e,t,n){var i=e[t];xe.call(e,t)&&Ua(i,n)&&(n!==r||t in e)||rr(e,t,n)}function er(e,t){for(var n=e.length;n--;)if(Ua(e[n][0],t))return n;return-1}function tr(e,t,n,r){return lr(e,function(e,i,o){t(r,e,n(e),o)}),r}function nr(e,t){return e&&Ai(t,zs(t),e)}function rr(e,t,n){"__proto__"==t&&ot?ot(e,t,{configurable:!0,enumerable:!0,value:n,writable:!0}):e[t]=n}function ir(e,t){for(var n=-1,i=t.length,o=re(i),a=null==e;++n<i;)o[n]=a?r:Cs(e,t[n]);return o}function or(e,t,n){return e==e&&(n!==r&&(e=e<=n?e:n),t!==r&&(e=e>=t?e:t)),e}function ar(e,t,n,i,o,a){var s,c=1&t,u=2&t,l=4&t;if(n&&(s=o?n(e,i,o,a):n(e)),s!==r)return s;if(!Xa(e))return e;var d=Ga(e);if(d){if(s=function(e){var t=e.length,n=new e.constructor(t);return t&&"string"==typeof e[0]&&xe.call(e,"index")&&(n.index=e.index,n.input=e.input),n}(e),!c)return Oi(e,s)}else{var h=ho(e),p=h==_||h==b;if(Ha(e))return bi(e,c);if(h==w||h==f||p&&!o){if(s=u||p?{}:fo(e),!c)return u?function(e,t){return Ai(e,lo(e),t)}(e,function(e,t){return e&&Ai(t,Ts(t),e)}(s,e)):function(e,t){return Ai(e,uo(e),t)}(e,nr(s,e))}else{if(!it[h])return o?e:{};s=function(e,t,n){var r,i=e.constructor;switch(t){case z:return Pi(e);case y:case g:return new i(+e);case T:return function(e,t){var n=t?Pi(e.buffer):e.buffer;return new e.constructor(n,e.byteOffset,e.byteLength)}(e,n);case j:case x:case B:case M:case F:case N:case D:case U:case R:return Si(e,n);case P:return new i;case S:case A:return new i(e);case C:return function(e){var t=new e.constructor(e.source,de.exec(e));return t.lastIndex=e.lastIndex,t}(e);case O:return new i;case E:return r=e,Fn?Ie(Fn.call(r)):{}}}(e,h,c)}}a||(a=new Hn);var m=a.get(e);if(m)return m;a.set(e,s),os(e)?e.forEach(function(r){s.add(ar(r,t,n,r,e,a))}):ts(e)&&e.forEach(function(r,i){s.set(i,ar(r,t,n,i,e,a))});var v=d?r:(l?u?to:eo:u?Ts:zs)(e);return It(v||e,function(r,i){v&&(r=e[i=r]),Xn(s,i,ar(r,t,n,i,e,a))}),s}function sr(e,t,n){var i=n.length;if(null==e)return!i;for(e=Ie(e);i--;){var o=n[i],a=t[o],s=e[o];if(s===r&&!(o in e)||!a(s))return!1}return!0}function cr(e,t,n){if("function"!=typeof e)throw new Ae(i);return Eo(function(){e.apply(r,n)},t)}function ur(e,t,n,r){var i=-1,o=Et,a=!0,s=e.length,c=[],u=t.length;if(!s)return c;n&&(t=zt(t,Kt(n))),r?(o=kt,a=!1):t.length>=200&&(o=Zt,a=!1,t=new qn(t));e:for(;++i<s;){var l=e[i],d=null==n?l:n(l);if(l=r||0!==l?l:0,a&&d==d){for(var h=u;h--;)if(t[h]===d)continue e;c.push(l)}else o(t,d,r)||c.push(l)}return c}Dn.templateSettings={escape:K,evaluate:Y,interpolate:Z,variable:"",imports:{_:Dn}},Dn.prototype=Rn.prototype,Dn.prototype.constructor=Dn,Ln.prototype=Un(Rn.prototype),Ln.prototype.constructor=Ln,Vn.prototype=Un(Rn.prototype),Vn.prototype.constructor=Vn,Gn.prototype.clear=function(){this.__data__=An?An(null):{},this.size=0},Gn.prototype.delete=function(e){var t=this.has(e)&&delete this.__data__[e];return this.size-=t?1:0,t},Gn.prototype.get=function(e){var t=this.__data__;if(An){var n=t[e];return n===o?r:n}return xe.call(t,e)?t[e]:r},Gn.prototype.has=function(e){var t=this.__data__;return An?t[e]!==r:xe.call(t,e)},Gn.prototype.set=function(e,t){var n=this.__data__;return this.size+=this.has(e)?0:1,n[e]=An&&t===r?o:t,this},Wn.prototype.clear=function(){this.__data__=[],this.size=0},Wn.prototype.delete=function(e){var t=this.__data__,n=er(t,e);return!(n<0||(n==t.length-1?t.pop():He.call(t,n,1),--this.size,0))},Wn.prototype.get=function(e){var t=this.__data__,n=er(t,e);return n<0?r:t[n][1]},Wn.prototype.has=function(e){return er(this.__data__,e)>-1},Wn.prototype.set=function(e,t){var n=this.__data__,r=er(n,e);return r<0?(++this.size,n.push([e,t])):n[r][1]=t,this},$n.prototype.clear=function(){this.size=0,this.__data__={hash:new Gn,map:new(wn||Wn),string:new Gn}},$n.prototype.delete=function(e){var t=ao(this,e).delete(e);return this.size-=t?1:0,t},$n.prototype.get=function(e){return ao(this,e).get(e)},$n.prototype.has=function(e){return ao(this,e).has(e)},$n.prototype.set=function(e,t){var n=ao(this,e),r=n.size;return n.set(e,t),this.size+=n.size==r?0:1,this},qn.prototype.add=qn.prototype.push=function(e){return this.__data__.set(e,o),this},qn.prototype.has=function(e){return this.__data__.has(e)},Hn.prototype.clear=function(){this.__data__=new Wn,this.size=0},Hn.prototype.delete=function(e){var t=this.__data__,n=t.delete(e);return this.size=t.size,n},Hn.prototype.get=function(e){return this.__data__.get(e)},Hn.prototype.has=function(e){return this.__data__.has(e)},Hn.prototype.set=function(e,t){var n=this.__data__;if(n instanceof Wn){var r=n.__data__;if(!wn||r.length<199)return r.push([e,t]),this.size=++n.size,this;n=this.__data__=new $n(r)}return n.set(e,t),this.size=n.size,this};var lr=zi(vr),dr=zi(_r,!0);function hr(e,t){var n=!0;return lr(e,function(e,r,i){return n=!!t(e,r,i)}),n}function pr(e,t,n){for(var i=-1,o=e.length;++i<o;){var a=e[i],s=t(a);if(null!=s&&(c===r?s==s&&!ss(s):n(s,c)))var c=s,u=a}return u}function fr(e,t){var n=[];return lr(e,function(e,r,i){t(e,r,i)&&n.push(e)}),n}function mr(e,t,n,r,i){var o=-1,a=e.length;for(n||(n=mo),i||(i=[]);++o<a;){var s=e[o];t>0&&n(s)?t>1?mr(s,t-1,n,r,i):Tt(i,s):r||(i[i.length]=s)}return i}var yr=Ti(),gr=Ti(!0);function vr(e,t){return e&&yr(e,t,zs)}function _r(e,t){return e&&gr(e,t,zs)}function br(e,t){return At(t,function(t){return Za(e[t])})}function Pr(e,t){for(var n=0,i=(t=yi(t,e)).length;null!=e&&n<i;)e=e[Fo(t[n++])];return n&&n==i?e:r}function Sr(e,t,n){var r=t(e);return Ga(e)?r:Tt(r,n(e))}function wr(e){return null==e?e===r?"[object Undefined]":"[object Null]":Xe&&Xe in Ie(e)?function(e){var t=xe.call(e,Xe),n=e[Xe];try{e[Xe]=r;var i=!0}catch(e){}var o=Fe.call(e);return i&&(t?e[Xe]=n:delete e[Xe]),o}(e):function(e){return Fe.call(e)}(e)}function Ir(e,t){return e>t}function Cr(e,t){return null!=e&&xe.call(e,t)}function Or(e,t){return null!=e&&t in Ie(e)}function Ar(e,t,n){for(var i=n?kt:Et,o=e[0].length,a=e.length,s=a,c=re(a),u=1/0,l=[];s--;){var d=e[s];s&&t&&(d=zt(d,Kt(t))),u=gn(d.length,u),c[s]=!n&&(t||o>=120&&d.length>=120)?new qn(s&&d):r}d=e[0];var h=-1,p=c[0];e:for(;++h<o&&l.length<u;){var f=d[h],m=t?t(f):f;if(f=n||0!==f?f:0,!(p?Zt(p,m):i(l,m,n))){for(s=a;--s;){var y=c[s];if(!(y?Zt(y,m):i(e[s],m,n)))continue e}p&&p.push(m),l.push(f)}}return l}function Er(e,t,n){var i=null==(e=Co(e,t=yi(t,e)))?e:e[Fo(Yo(t))];return null==i?r:St(i,e,n)}function kr(e){return es(e)&&wr(e)==f}function zr(e,t,n,i,o){return e===t||(null==e||null==t||!es(e)&&!es(t)?e!=e&&t!=t:function(e,t,n,i,o,a){var s=Ga(e),c=Ga(t),u=s?m:ho(e),l=c?m:ho(t),d=(u=u==f?w:u)==w,h=(l=l==f?w:l)==w,p=u==l;if(p&&Ha(e)){if(!Ha(t))return!1;s=!0,d=!1}if(p&&!d)return a||(a=new Hn),s||cs(e)?Qi(e,t,n,i,o,a):function(e,t,n,r,i,o,a){switch(n){case T:if(e.byteLength!=t.byteLength||e.byteOffset!=t.byteOffset)return!1;e=e.buffer,t=t.buffer;case z:return!(e.byteLength!=t.byteLength||!o(new Ve(e),new Ve(t)));case y:case g:case S:return Ua(+e,+t);case v:return e.name==t.name&&e.message==t.message;case C:case A:return e==t+"";case P:var s=rn;case O:var c=1&r;if(s||(s=sn),e.size!=t.size&&!c)return!1;var u=a.get(e);if(u)return u==t;r|=2,a.set(e,t);var l=Qi(s(e),s(t),r,i,o,a);return a.delete(e),l;case E:if(Fn)return Fn.call(e)==Fn.call(t)}return!1}(e,t,u,n,i,o,a);if(!(1&n)){var _=d&&xe.call(e,"__wrapped__"),b=h&&xe.call(t,"__wrapped__");if(_||b){var I=_?e.value():e,k=b?t.value():t;return a||(a=new Hn),o(I,k,n,i,a)}}return!!p&&(a||(a=new Hn),function(e,t,n,i,o,a){var s=1&n,c=eo(e),u=c.length;if(u!=eo(t).length&&!s)return!1;for(var l=u;l--;){var d=c[l];if(!(s?d in t:xe.call(t,d)))return!1}var h=a.get(e),p=a.get(t);if(h&&p)return h==t&&p==e;var f=!0;a.set(e,t),a.set(t,e);for(var m=s;++l<u;){var y=e[d=c[l]],g=t[d];if(i)var v=s?i(g,y,d,t,e,a):i(y,g,d,e,t,a);if(!(v===r?y===g||o(y,g,n,i,a):v)){f=!1;break}m||(m="constructor"==d)}if(f&&!m){var _=e.constructor,b=t.constructor;_==b||!("constructor"in e)||!("constructor"in t)||"function"==typeof _&&_ instanceof _&&"function"==typeof b&&b instanceof b||(f=!1)}return a.delete(e),a.delete(t),f}(e,t,n,i,o,a))}(e,t,n,i,zr,o))}function Tr(e,t,n,i){var o=n.length,a=o,s=!i;if(null==e)return!a;for(e=Ie(e);o--;){var c=n[o];if(s&&c[2]?c[1]!==e[c[0]]:!(c[0]in e))return!1}for(;++o<a;){var u=(c=n[o])[0],l=e[u],d=c[1];if(s&&c[2]){if(l===r&&!(u in e))return!1}else{var h=new Hn;if(i)var p=i(l,d,u,e,t,h);if(!(p===r?zr(d,l,3,i,h):p))return!1}}return!0}function jr(e){return!(!Xa(e)||(t=e,Me&&Me in t))&&(Za(e)?Ue:fe).test(No(e));var t}function xr(e){return"function"==typeof e?e:null==e?nc:"object"==typeof e?Ga(e)?Dr(e[0],e[1]):Nr(e):dc(e)}function Br(e){if(!Po(e))return mn(e);var t=[];for(var n in Ie(e))xe.call(e,n)&&"constructor"!=n&&t.push(n);return t}function Mr(e,t){return e<t}function Fr(e,t){var n=-1,r=$a(e)?re(e.length):[];return lr(e,function(e,i,o){r[++n]=t(e,i,o)}),r}function Nr(e){var t=so(e);return 1==t.length&&t[0][2]?wo(t[0][0],t[0][1]):function(n){return n===e||Tr(n,e,t)}}function Dr(e,t){return vo(e)&&So(t)?wo(Fo(e),t):function(n){var i=Cs(n,e);return i===r&&i===t?Os(n,e):zr(t,i,3)}}function Ur(e,t,n,i,o){e!==t&&yr(t,function(a,s){if(o||(o=new Hn),Xa(a))!function(e,t,n,i,o,a,s){var c=Oo(e,n),u=Oo(t,n),l=s.get(u);if(l)Qn(e,n,l);else{var d=a?a(c,u,n+"",e,t,s):r,h=d===r;if(h){var p=Ga(u),f=!p&&Ha(u),m=!p&&!f&&cs(u);d=u,p||f||m?Ga(c)?d=c:qa(c)?d=Oi(c):f?(h=!1,d=bi(u,!0)):m?(h=!1,d=Si(u,!0)):d=[]:rs(u)||Va(u)?(d=c,Va(c)?d=ys(c):Xa(c)&&!Za(c)||(d=fo(u))):h=!1}h&&(s.set(u,d),o(d,u,i,a,s),s.delete(u)),Qn(e,n,d)}}(e,t,s,n,Ur,i,o);else{var c=i?i(Oo(e,s),a,s+"",e,t,o):r;c===r&&(c=a),Qn(e,s,c)}},Ts)}function Rr(e,t){var n=e.length;if(n)return yo(t+=t<0?n:0,n)?e[t]:r}function Lr(e,t,n){t=t.length?zt(t,function(e){return Ga(e)?function(t){return Pr(t,1===e.length?e[0]:e)}:e}):[nc];var r=-1;t=zt(t,Kt(oo()));var i=Fr(e,function(e,n,i){var o=zt(t,function(t){return t(e)});return{criteria:o,index:++r,value:e}});return function(e){var t=e.length;for(e.sort(function(e,t){return function(e,t,n){for(var r=-1,i=e.criteria,o=t.criteria,a=i.length,s=n.length;++r<a;){var c=wi(i[r],o[r]);if(c)return r>=s?c:c*("desc"==n[r]?-1:1)}return e.index-t.index}(e,t,n)});t--;)e[t]=e[t].value;return e}(i)}function Vr(e,t,n){for(var r=-1,i=t.length,o={};++r<i;){var a=t[r],s=Pr(e,a);n(s,a)&&Zr(o,yi(a,e),s)}return o}function Gr(e,t,n,r){var i=r?Ut:Dt,o=-1,a=t.length,s=e;for(e===t&&(t=Oi(t)),n&&(s=zt(e,Kt(n)));++o<a;)for(var c=0,u=t[o],l=n?n(u):u;(c=i(s,l,c,r))>-1;)s!==e&&He.call(s,c,1),He.call(e,c,1);return e}function Wr(e,t){for(var n=e?t.length:0,r=n-1;n--;){var i=t[n];if(n==r||i!==o){var o=i;yo(i)?He.call(e,i,1):ci(e,i)}}return e}function $r(e,t){return e+ft(bn()*(t-e+1))}function qr(e,t){var n="";if(!e||t<1||t>l)return n;do{t%2&&(n+=e),(t=ft(t/2))&&(e+=e)}while(t);return n}function Hr(e,t){return ko(Io(e,t,nc),e+"")}function Kr(e){return Yn(Us(e))}function Yr(e,t){var n=Us(e);return jo(n,or(t,0,n.length))}function Zr(e,t,n,i){if(!Xa(e))return e;for(var o=-1,a=(t=yi(t,e)).length,s=a-1,c=e;null!=c&&++o<a;){var u=Fo(t[o]),l=n;if("__proto__"===u||"constructor"===u||"prototype"===u)return e;if(o!=s){var d=c[u];(l=i?i(d,u,c):r)===r&&(l=Xa(d)?d:yo(t[o+1])?[]:{})}Xn(c,u,l),c=c[u]}return e}var Jr=En?function(e,t){return En.set(e,t),e}:nc,Qr=ot?function(e,t){return ot(e,"toString",{configurable:!0,enumerable:!1,value:Xs(t),writable:!0})}:nc;function Xr(e){return jo(Us(e))}function ei(e,t,n){var r=-1,i=e.length;t<0&&(t=-t>i?0:i+t),(n=n>i?i:n)<0&&(n+=i),i=t>n?0:n-t>>>0,t>>>=0;for(var o=re(i);++r<i;)o[r]=e[r+t];return o}function ti(e,t){var n;return lr(e,function(e,r,i){return!(n=t(e,r,i))}),!!n}function ni(e,t,n){var r=0,i=null==e?r:e.length;if("number"==typeof t&&t==t&&i<=2147483647){for(;r<i;){var o=r+i>>>1,a=e[o];null!==a&&!ss(a)&&(n?a<=t:a<t)?r=o+1:i=o}return i}return ri(e,t,nc,n)}function ri(e,t,n,i){var o=0,a=null==e?0:e.length;if(0===a)return 0;for(var s=(t=n(t))!=t,c=null===t,u=ss(t),l=t===r;o<a;){var d=ft((o+a)/2),h=n(e[d]),p=h!==r,f=null===h,m=h==h,y=ss(h);if(s)var g=i||m;else g=l?m&&(i||p):c?m&&p&&(i||!f):u?m&&p&&!f&&(i||!y):!f&&!y&&(i?h<=t:h<t);g?o=d+1:a=d}return gn(a,4294967294)}function ii(e,t){for(var n=-1,r=e.length,i=0,o=[];++n<r;){var a=e[n],s=t?t(a):a;if(!n||!Ua(s,c)){var c=s;o[i++]=0===a?0:a}}return o}function oi(e){return"number"==typeof e?e:ss(e)?d:+e}function ai(e){if("string"==typeof e)return e;if(Ga(e))return zt(e,ai)+"";if(ss(e))return Nn?Nn.call(e):"";var t=e+"";return"0"==t&&1/e==-1/0?"-0":t}function si(e,t,n){var r=-1,i=Et,o=e.length,a=!0,s=[],c=s;if(n)a=!1,i=kt;else if(o>=200){var u=t?null:qi(e);if(u)return sn(u);a=!1,i=Zt,c=new qn}else c=t?[]:s;e:for(;++r<o;){var l=e[r],d=t?t(l):l;if(l=n||0!==l?l:0,a&&d==d){for(var h=c.length;h--;)if(c[h]===d)continue e;t&&c.push(d),s.push(l)}else i(c,d,n)||(c!==s&&c.push(d),s.push(l))}return s}function ci(e,t){var n=-1,r=(t=yi(t,e)).length;if(!r)return!0;for(;++n<r;){var i=Fo(t[n]);if("__proto__"===i&&!xe.call(e,"__proto__"))return!1;if(("constructor"===i||"prototype"===i)&&n<r-1)return!1}var o=Co(e,t);return null==o||delete o[Fo(Yo(t))]}function ui(e,t,n,r){return Zr(e,t,n(Pr(e,t)),r)}function li(e,t,n,r){for(var i=e.length,o=r?i:-1;(r?o--:++o<i)&&t(e[o],o,e););return n?ei(e,r?0:o,r?o+1:i):ei(e,r?o+1:0,r?i:o)}function di(e,t){var n=e;return n instanceof Vn&&(n=n.value()),jt(t,function(e,t){return t.func.apply(t.thisArg,Tt([e],t.args))},n)}function hi(e,t,n){var r=e.length;if(r<2)return r?si(e[0]):[];for(var i=-1,o=re(r);++i<r;)for(var a=e[i],s=-1;++s<r;)s!=i&&(o[i]=ur(o[i]||a,e[s],t,n));return si(mr(o,1),t,n)}function pi(e,t,n){for(var i=-1,o=e.length,a=t.length,s={};++i<o;){var c=i<a?t[i]:r;n(s,e[i],c)}return s}function fi(e){return qa(e)?e:[]}function mi(e){return"function"==typeof e?e:nc}function yi(e,t){return Ga(e)?e:vo(e,t)?[e]:Mo(gs(e))}var gi=Hr;function vi(e,t,n){var i=e.length;return n=n===r?i:n,!t&&n>=i?e:ei(e,t,n)}var _i=ct||function(e){return lt.clearTimeout(e)};function bi(e,t){if(t)return e.slice();var n=e.length,r=Ge?Ge(n):new e.constructor(n);return e.copy(r),r}function Pi(e){var t=new e.constructor(e.byteLength);return new Ve(t).set(new Ve(e)),t}function Si(e,t){var n=t?Pi(e.buffer):e.buffer;return new e.constructor(n,e.byteOffset,e.length)}function wi(e,t){if(e!==t){var n=e!==r,i=null===e,o=e==e,a=ss(e),s=t!==r,c=null===t,u=t==t,l=ss(t);if(!c&&!l&&!a&&e>t||a&&s&&u&&!c&&!l||i&&s&&u||!n&&u||!o)return 1;if(!i&&!a&&!l&&e<t||l&&n&&o&&!i&&!a||c&&n&&o||!s&&o||!u)return-1}return 0}function Ii(e,t,n,r){for(var i=-1,o=e.length,a=n.length,s=-1,c=t.length,u=yn(o-a,0),l=re(c+u),d=!r;++s<c;)l[s]=t[s];for(;++i<a;)(d||i<o)&&(l[n[i]]=e[i]);for(;u--;)l[s++]=e[i++];return l}function Ci(e,t,n,r){for(var i=-1,o=e.length,a=-1,s=n.length,c=-1,u=t.length,l=yn(o-s,0),d=re(l+u),h=!r;++i<l;)d[i]=e[i];for(var p=i;++c<u;)d[p+c]=t[c];for(;++a<s;)(h||i<o)&&(d[p+n[a]]=e[i++]);return d}function Oi(e,t){var n=-1,r=e.length;for(t||(t=re(r));++n<r;)t[n]=e[n];return t}function Ai(e,t,n,i){var o=!n;n||(n={});for(var a=-1,s=t.length;++a<s;){var c=t[a],u=i?i(n[c],e[c],c,n,e):r;u===r&&(u=e[c]),o?rr(n,c,u):Xn(n,c,u)}return n}function Ei(e,t){return function(n,r){var i=Ga(n)?wt:tr,o=t?t():{};return i(n,e,oo(r,2),o)}}function ki(e){return Hr(function(t,n){var i=-1,o=n.length,a=o>1?n[o-1]:r,s=o>2?n[2]:r;for(a=e.length>3&&"function"==typeof a?(o--,a):r,s&&go(n[0],n[1],s)&&(a=o<3?r:a,o=1),t=Ie(t);++i<o;){var c=n[i];c&&e(t,c,i,a)}return t})}function zi(e,t){return function(n,r){if(null==n)return n;if(!$a(n))return e(n,r);for(var i=n.length,o=t?i:-1,a=Ie(n);(t?o--:++o<i)&&!1!==r(a[o],o,a););return n}}function Ti(e){return function(t,n,r){for(var i=-1,o=Ie(t),a=r(t),s=a.length;s--;){var c=a[e?s:++i];if(!1===n(o[c],c,o))break}return t}}function ji(e){return function(t){var n=nn(t=gs(t))?ln(t):r,i=n?n[0]:t.charAt(0),o=n?vi(n,1).join(""):t.slice(1);return i[e]()+o}}function xi(e){return function(t){return jt(Zs(Vs(t).replace(Ye,"")),e,"")}}function Bi(e){return function(){var t=arguments;switch(t.length){case 0:return new e;case 1:return new e(t[0]);case 2:return new e(t[0],t[1]);case 3:return new e(t[0],t[1],t[2]);case 4:return new e(t[0],t[1],t[2],t[3]);case 5:return new e(t[0],t[1],t[2],t[3],t[4]);case 6:return new e(t[0],t[1],t[2],t[3],t[4],t[5]);case 7:return new e(t[0],t[1],t[2],t[3],t[4],t[5],t[6])}var n=Un(e.prototype),r=e.apply(n,t);return Xa(r)?r:n}}function Mi(e){return function(t,n,i){var o=Ie(t);if(!$a(t)){var a=oo(n,3);t=zs(t),n=function(e){return a(o[e],e,o)}}var s=e(t,n,i);return s>-1?o[a?t[s]:s]:r}}function Fi(e){return Xi(function(t){var n=t.length,o=n,a=Ln.prototype.thru;for(e&&t.reverse();o--;){var s=t[o];if("function"!=typeof s)throw new Ae(i);if(a&&!c&&"wrapper"==ro(s))var c=new Ln([],!0)}for(o=c?o:n;++o<n;){var u=ro(s=t[o]),l="wrapper"==u?no(s):r;c=l&&_o(l[0])&&424==l[1]&&!l[4].length&&1==l[9]?c[ro(l[0])].apply(c,l[3]):1==s.length&&_o(s)?c[u]():c.thru(s)}return function(){var e=arguments,r=e[0];if(c&&1==e.length&&Ga(r))return c.plant(r).value();for(var i=0,o=n?t[i].apply(this,e):r;++i<n;)o=t[i].call(this,o);return o}})}function Ni(e,t,n,i,o,a,s,u,l,d){var h=t&c,p=1&t,f=2&t,m=24&t,y=512&t,g=f?r:Bi(e);return function c(){for(var v=arguments.length,_=re(v),b=v;b--;)_[b]=arguments[b];if(m)var P=io(c),S=function(e,t){for(var n=e.length,r=0;n--;)e[n]===t&&++r;return r}(_,P);if(i&&(_=Ii(_,i,o,m)),a&&(_=Ci(_,a,s,m)),v-=S,m&&v<d){var w=an(_,P);return Wi(e,t,Ni,c.placeholder,n,_,w,u,l,d-v)}var I=p?n:this,C=f?I[e]:e;return v=_.length,u?_=function(e,t){for(var n=e.length,i=gn(t.length,n),o=Oi(e);i--;){var a=t[i];e[i]=yo(a,n)?o[a]:r}return e}(_,u):y&&v>1&&_.reverse(),h&&l<v&&(_.length=l),this&&this!==lt&&this instanceof c&&(C=g||Bi(C)),C.apply(I,_)}}function Di(e,t){return function(n,r){return function(e,t,n,r){return vr(e,function(e,i,o){t(r,n(e),i,o)}),r}(n,e,t(r),{})}}function Ui(e,t){return function(n,i){var o;if(n===r&&i===r)return t;if(n!==r&&(o=n),i!==r){if(o===r)return i;"string"==typeof n||"string"==typeof i?(n=ai(n),i=ai(i)):(n=oi(n),i=oi(i)),o=e(n,i)}return o}}function Ri(e){return Xi(function(t){return t=zt(t,Kt(oo())),Hr(function(n){var r=this;return e(t,function(e){return St(e,r,n)})})})}function Li(e,t){var n=(t=t===r?" ":ai(t)).length;if(n<2)return n?qr(t,e):t;var i=qr(t,ht(e/un(t)));return nn(t)?vi(ln(i),0,e).join(""):i.slice(0,e)}function Vi(e){return function(t,n,i){return i&&"number"!=typeof i&&go(t,n,i)&&(n=i=r),t=hs(t),n===r?(n=t,t=0):n=hs(n),function(e,t,n,r){for(var i=-1,o=yn(ht((t-e)/(n||1)),0),a=re(o);o--;)a[r?o:++i]=e,e+=n;return a}(t,n,i=i===r?t<n?1:-1:hs(i),e)}}function Gi(e){return function(t,n){return"string"==typeof t&&"string"==typeof n||(t=ms(t),n=ms(n)),e(t,n)}}function Wi(e,t,n,i,o,a,c,u,l,d){var h=8&t;t|=h?s:64,4&(t&=~(h?64:s))||(t&=-4);var p=[e,t,o,h?a:r,h?c:r,h?r:a,h?r:c,u,l,d],f=n.apply(r,p);return _o(e)&&Ao(f,p),f.placeholder=i,zo(f,e,t)}function $i(e){var t=we[e];return function(e,n){if(e=ms(e),(n=null==n?0:gn(ps(n),292))&&Gt(e)){var r=(gs(e)+"e").split("e");return+((r=(gs(t(r[0]+"e"+(+r[1]+n)))+"e").split("e"))[0]+"e"+(+r[1]-n))}return t(e)}}var qi=Cn&&1/sn(new Cn([,-0]))[1]==u?function(e){return new Cn(e)}:sc;function Hi(e){return function(t){var n=ho(t);return n==P?rn(t):n==O?cn(t):function(e,t){return zt(t,function(t){return[t,e[t]]})}(t,e(t))}}function Ki(e,t,n,o,u,l,d,h){var p=2&t;if(!p&&"function"!=typeof e)throw new Ae(i);var f=o?o.length:0;if(f||(t&=-97,o=u=r),d=d===r?d:yn(ps(d),0),h=h===r?h:ps(h),f-=u?u.length:0,64&t){var m=o,y=u;o=u=r}var g=p?r:no(e),v=[e,t,n,o,u,m,y,l,d,h];if(g&&function(e,t){var n=e[1],r=t[1],i=n|r,o=i<131,s=r==c&&8==n||r==c&&256==n&&e[7].length<=t[8]||384==r&&t[7].length<=t[8]&&8==n;if(!o&&!s)return e;1&r&&(e[2]=t[2],i|=1&n?0:4);var u=t[3];if(u){var l=e[3];e[3]=l?Ii(l,u,t[4]):u,e[4]=l?an(e[3],a):t[4]}(u=t[5])&&(l=e[5],e[5]=l?Ci(l,u,t[6]):u,e[6]=l?an(e[5],a):t[6]),(u=t[7])&&(e[7]=u),r&c&&(e[8]=null==e[8]?t[8]:gn(e[8],t[8])),null==e[9]&&(e[9]=t[9]),e[0]=t[0],e[1]=i}(v,g),e=v[0],t=v[1],n=v[2],o=v[3],u=v[4],!(h=v[9]=v[9]===r?p?0:e.length:yn(v[9]-f,0))&&24&t&&(t&=-25),t&&1!=t)_=8==t||16==t?function(e,t,n){var i=Bi(e);return function o(){for(var a=arguments.length,s=re(a),c=a,u=io(o);c--;)s[c]=arguments[c];var l=a<3&&s[0]!==u&&s[a-1]!==u?[]:an(s,u);return(a-=l.length)<n?Wi(e,t,Ni,o.placeholder,r,s,l,r,r,n-a):St(this&&this!==lt&&this instanceof o?i:e,this,s)}}(e,t,h):t!=s&&33!=t||u.length?Ni.apply(r,v):function(e,t,n,r){var i=1&t,o=Bi(e);return function t(){for(var a=-1,s=arguments.length,c=-1,u=r.length,l=re(u+s),d=this&&this!==lt&&this instanceof t?o:e;++c<u;)l[c]=r[c];for(;s--;)l[c++]=arguments[++a];return St(d,i?n:this,l)}}(e,t,n,o);else var _=function(e,t,n){var r=1&t,i=Bi(e);return function t(){return(this&&this!==lt&&this instanceof t?i:e).apply(r?n:this,arguments)}}(e,t,n);return zo((g?Jr:Ao)(_,v),e,t)}function Yi(e,t,n,i){return e===r||Ua(e,ze[n])&&!xe.call(i,n)?t:e}function Zi(e,t,n,i,o,a){return Xa(e)&&Xa(t)&&(a.set(t,e),Ur(e,t,r,Zi,a),a.delete(t)),e}function Ji(e){return rs(e)?r:e}function Qi(e,t,n,i,o,a){var s=1&n,c=e.length,u=t.length;if(c!=u&&!(s&&u>c))return!1;var l=a.get(e),d=a.get(t);if(l&&d)return l==t&&d==e;var h=-1,p=!0,f=2&n?new qn:r;for(a.set(e,t),a.set(t,e);++h<c;){var m=e[h],y=t[h];if(i)var g=s?i(y,m,h,t,e,a):i(m,y,h,e,t,a);if(g!==r){if(g)continue;p=!1;break}if(f){if(!Bt(t,function(e,t){if(!Zt(f,t)&&(m===e||o(m,e,n,i,a)))return f.push(t)})){p=!1;break}}else if(m!==y&&!o(m,y,n,i,a)){p=!1;break}}return a.delete(e),a.delete(t),p}function Xi(e){return ko(Io(e,r,Wo),e+"")}function eo(e){return Sr(e,zs,uo)}function to(e){return Sr(e,Ts,lo)}var no=En?function(e){return En.get(e)}:sc;function ro(e){for(var t=e.name+"",n=kn[t],r=xe.call(kn,t)?n.length:0;r--;){var i=n[r],o=i.func;if(null==o||o==e)return i.name}return t}function io(e){return(xe.call(Dn,"placeholder")?Dn:e).placeholder}function oo(){var e=Dn.iteratee||rc;return e=e===rc?xr:e,arguments.length?e(arguments[0],arguments[1]):e}function ao(e,t){var n,r,i=e.__data__;return("string"==(r=typeof(n=t))||"number"==r||"symbol"==r||"boolean"==r?"__proto__"!==n:null===n)?i["string"==typeof t?"string":"hash"]:i.map}function so(e){for(var t=zs(e),n=t.length;n--;){var r=t[n],i=e[r];t[n]=[r,i,So(i)]}return t}function co(e,t){var n=function(e,t){return null==e?r:e[t]}(e,t);return jr(n)?n:r}var uo=mt?function(e){return null==e?[]:(e=Ie(e),At(mt(e),function(t){return qe.call(e,t)}))}:fc,lo=mt?function(e){for(var t=[];e;)Tt(t,uo(e)),e=We(e);return t}:fc,ho=wr;function po(e,t,n){for(var r=-1,i=(t=yi(t,e)).length,o=!1;++r<i;){var a=Fo(t[r]);if(!(o=null!=e&&n(e,a)))break;e=e[a]}return o||++r!=i?o:!!(i=null==e?0:e.length)&&Qa(i)&&yo(a,i)&&(Ga(e)||Va(e))}function fo(e){return"function"!=typeof e.constructor||Po(e)?{}:Un(We(e))}function mo(e){return Ga(e)||Va(e)||!!(Ke&&e&&e[Ke])}function yo(e,t){var n=typeof e;return!!(t=t??l)&&("number"==n||"symbol"!=n&&ye.test(e))&&e>-1&&e%1==0&&e<t}function go(e,t,n){if(!Xa(n))return!1;var r=typeof t;return!!("number"==r?$a(n)&&yo(t,n.length):"string"==r&&t in n)&&Ua(n[t],e)}function vo(e,t){if(Ga(e))return!1;var n=typeof e;return!("number"!=n&&"symbol"!=n&&"boolean"!=n&&null!=e&&!ss(e))||Q.test(e)||!J.test(e)||null!=t&&e in Ie(t)}function _o(e){var t=ro(e),n=Dn[t];if("function"!=typeof n||!(t in Vn.prototype))return!1;if(e===n)return!0;var r=no(n);return!!r&&e===r[0]}(Sn&&ho(new Sn(new ArrayBuffer(1)))!=T||wn&&ho(new wn)!=P||In&&ho(In.resolve())!=I||Cn&&ho(new Cn)!=O||On&&ho(new On)!=k)&&(ho=function(e){var t=wr(e),n=t==w?e.constructor:r,i=n?No(n):"";if(i)switch(i){case zn:return T;case Tn:return P;case jn:return I;case xn:return O;case Bn:return k}return t});var bo=Te?Za:mc;function Po(e){var t=e&&e.constructor;return e===("function"==typeof t&&t.prototype||ze)}function So(e){return e==e&&!Xa(e)}function wo(e,t){return function(n){return null!=n&&n[e]===t&&(t!==r||e in Ie(n))}}function Io(e,t,n){return t=yn(t===r?e.length-1:t,0),function(){for(var r=arguments,i=-1,o=yn(r.length-t,0),a=re(o);++i<o;)a[i]=r[t+i];i=-1;for(var s=re(t+1);++i<t;)s[i]=r[i];return s[t]=n(a),St(e,this,s)}}function Co(e,t){return t.length<2?e:Pr(e,ei(t,0,-1))}function Oo(e,t){if(("constructor"!==t||"function"!=typeof e[t])&&"__proto__"!=t)return e[t]}var Ao=To(Jr),Eo=dt||function(e,t){return lt.setTimeout(e,t)},ko=To(Qr);function zo(e,t,n){var r=t+"";return ko(e,function(e,t){var n=t.length;if(!n)return e;var r=n-1;return t[r]=(n>1?"& ":"")+t[r],t=t.join(n>2?", ":" "),e.replace(ie,"{\n/* [wrapped with "+t+"] */\n")}(r,function(e,t){return It(p,function(n){var r="_."+n[0];t&n[1]&&!Et(e,r)&&e.push(r)}),e.sort()}(function(e){var t=e.match(oe);return t?t[1].split(ae):[]}(r),n)))}function To(e){var t=0,n=0;return function(){var i=vn(),o=16-(i-n);if(n=i,o>0){if(++t>=800)return arguments[0]}else t=0;return e.apply(r,arguments)}}function jo(e,t){var n=-1,i=e.length,o=i-1;for(t=t===r?i:t;++n<t;){var a=$r(n,o),s=e[a];e[a]=e[n],e[n]=s}return e.length=t,e}var xo,Bo,Mo=(xo=xa(function(e){var t=[];return 46===e.charCodeAt(0)&&t.push(""),e.replace(X,function(e,n,r,i){t.push(r?i.replace(ue,"$1"):n||e)}),t},function(e){return 500===Bo.size&&Bo.clear(),e}),Bo=xo.cache,xo);function Fo(e){if("string"==typeof e||ss(e))return e;var t=e+"";return"0"==t&&1/e==-1/0?"-0":t}function No(e){if(null!=e){try{return je.call(e)}catch(e){}try{return e+""}catch(e){}}return""}function Do(e){if(e instanceof Vn)return e.clone();var t=new Ln(e.__wrapped__,e.__chain__);return t.__actions__=Oi(e.__actions__),t.__index__=e.__index__,t.__values__=e.__values__,t}var Uo=Hr(function(e,t){return qa(e)?ur(e,mr(t,1,qa,!0)):[]}),Ro=Hr(function(e,t){var n=Yo(t);return qa(n)&&(n=r),qa(e)?ur(e,mr(t,1,qa,!0),oo(n,2)):[]}),Lo=Hr(function(e,t){var n=Yo(t);return qa(n)&&(n=r),qa(e)?ur(e,mr(t,1,qa,!0),r,n):[]});function Vo(e,t,n){var r=null==e?0:e.length;if(!r)return-1;var i=null==n?0:ps(n);return i<0&&(i=yn(r+i,0)),Nt(e,oo(t,3),i)}function Go(e,t,n){var i=null==e?0:e.length;if(!i)return-1;var o=i-1;return n!==r&&(o=ps(n),o=n<0?yn(i+o,0):gn(o,i-1)),Nt(e,oo(t,3),o,!0)}function Wo(e){return null!=e&&e.length?mr(e,1):[]}function $o(e){return e&&e.length?e[0]:r}var qo=Hr(function(e){var t=zt(e,fi);return t.length&&t[0]===e[0]?Ar(t):[]}),Ho=Hr(function(e){var t=Yo(e),n=zt(e,fi);return t===Yo(n)?t=r:n.pop(),n.length&&n[0]===e[0]?Ar(n,oo(t,2)):[]}),Ko=Hr(function(e){var t=Yo(e),n=zt(e,fi);return(t="function"==typeof t?t:r)&&n.pop(),n.length&&n[0]===e[0]?Ar(n,r,t):[]});function Yo(e){var t=null==e?0:e.length;return t?e[t-1]:r}var Zo=Hr(Jo);function Jo(e,t){return e&&e.length&&t&&t.length?Gr(e,t):e}var Qo=Xi(function(e,t){var n=null==e?0:e.length,r=ir(e,t);return Wr(e,zt(t,function(e){return yo(e,n)?+e:e}).sort(wi)),r});function Xo(e){return null==e?e:Pn.call(e)}var ea=Hr(function(e){return si(mr(e,1,qa,!0))}),ta=Hr(function(e){var t=Yo(e);return qa(t)&&(t=r),si(mr(e,1,qa,!0),oo(t,2))}),na=Hr(function(e){var t=Yo(e);return t="function"==typeof t?t:r,si(mr(e,1,qa,!0),r,t)});function ra(e){if(!e||!e.length)return[];var t=0;return e=At(e,function(e){if(qa(e))return t=yn(e.length,t),!0}),qt(t,function(t){return zt(e,Vt(t))})}function ia(e,t){if(!e||!e.length)return[];var n=ra(e);return null==t?n:zt(n,function(e){return St(t,r,e)})}var oa=Hr(function(e,t){return qa(e)?ur(e,t):[]}),aa=Hr(function(e){return hi(At(e,qa))}),sa=Hr(function(e){var t=Yo(e);return qa(t)&&(t=r),hi(At(e,qa),oo(t,2))}),ca=Hr(function(e){var t=Yo(e);return t="function"==typeof t?t:r,hi(At(e,qa),r,t)}),ua=Hr(ra),la=Hr(function(e){var t=e.length,n=t>1?e[t-1]:r;return n="function"==typeof n?(e.pop(),n):r,ia(e,n)});function da(e){var t=Dn(e);return t.__chain__=!0,t}function ha(e,t){return t(e)}var pa=Xi(function(e){var t=e.length,n=t?e[0]:0,i=this.__wrapped__,o=function(t){return ir(t,e)};return!(t>1||this.__actions__.length)&&i instanceof Vn&&yo(n)?((i=i.slice(n,+n+(t?1:0))).__actions__.push({func:ha,args:[o],thisArg:r}),new Ln(i,this.__chain__).thru(function(e){return t&&!e.length&&e.push(r),e})):this.thru(o)}),fa=Ei(function(e,t,n){xe.call(e,n)?++e[n]:rr(e,n,1)}),ma=Mi(Vo),ya=Mi(Go);function ga(e,t){return(Ga(e)?It:lr)(e,oo(t,3))}function va(e,t){return(Ga(e)?Ct:dr)(e,oo(t,3))}var _a=Ei(function(e,t,n){xe.call(e,n)?e[n].push(t):rr(e,n,[t])}),ba=Hr(function(e,t,n){var r=-1,i="function"==typeof t,o=$a(e)?re(e.length):[];return lr(e,function(e){o[++r]=i?St(t,e,n):Er(e,t,n)}),o}),Pa=Ei(function(e,t,n){rr(e,n,t)});function Sa(e,t){return(Ga(e)?zt:Fr)(e,oo(t,3))}var wa=Ei(function(e,t,n){e[n?0:1].push(t)},function(){return[[],[]]}),Ia=Hr(function(e,t){if(null==e)return[];var n=t.length;return n>1&&go(e,t[0],t[1])?t=[]:n>2&&go(t[0],t[1],t[2])&&(t=[t[0]]),Lr(e,mr(t,1),[])}),Ca=ut||function(){return lt.Date.now()};function Oa(e,t,n){return t=n?r:t,t=e&&null==t?e.length:t,Ki(e,c,r,r,r,r,t)}function Aa(e,t){var n;if("function"!=typeof t)throw new Ae(i);return e=ps(e),function(){return--e>0&&(n=t.apply(this,arguments)),e<=1&&(t=r),n}}var Ea=Hr(function(e,t,n){var r=1;if(n.length){var i=an(n,io(Ea));r|=s}return Ki(e,r,t,n,i)}),ka=Hr(function(e,t,n){var r=3;if(n.length){var i=an(n,io(ka));r|=s}return Ki(t,r,e,n,i)});function za(e,t,n){var o,a,s,c,u,l,d=0,h=!1,p=!1,f=!0;if("function"!=typeof e)throw new Ae(i);function m(t){var n=o,i=a;return o=a=r,d=t,c=e.apply(i,n)}function y(e){var n=e-l;return l===r||n>=t||n<0||p&&e-d>=s}function g(){var e=Ca();if(y(e))return v(e);u=Eo(g,function(e){var n=t-(e-l);return p?gn(n,s-(e-d)):n}(e))}function v(e){return u=r,f&&o?m(e):(o=a=r,c)}function _(){var e=Ca(),n=y(e);if(o=arguments,a=this,l=e,n){if(u===r)return function(e){return d=e,u=Eo(g,t),h?m(e):c}(l);if(p)return _i(u),u=Eo(g,t),m(l)}return u===r&&(u=Eo(g,t)),c}return t=ms(t)||0,Xa(n)&&(h=!!n.leading,s=(p="maxWait"in n)?yn(ms(n.maxWait)||0,t):s,f="trailing"in n?!!n.trailing:f),_.cancel=function(){u!==r&&_i(u),d=0,o=l=a=u=r},_.flush=function(){return u===r?c:v(Ca())},_}var Ta=Hr(function(e,t){return cr(e,1,t)}),ja=Hr(function(e,t,n){return cr(e,ms(t)||0,n)});function xa(e,t){if("function"!=typeof e||null!=t&&"function"!=typeof t)throw new Ae(i);var n=function(){var r=arguments,i=t?t.apply(this,r):r[0],o=n.cache;if(o.has(i))return o.get(i);var a=e.apply(this,r);return n.cache=o.set(i,a)||o,a};return n.cache=new(xa.Cache||$n),n}function Ba(e){if("function"!=typeof e)throw new Ae(i);return function(){var t=arguments;switch(t.length){case 0:return!e.call(this);case 1:return!e.call(this,t[0]);case 2:return!e.call(this,t[0],t[1]);case 3:return!e.call(this,t[0],t[1],t[2])}return!e.apply(this,t)}}xa.Cache=$n;var Ma=gi(function(e,t){var n=(t=1==t.length&&Ga(t[0])?zt(t[0],Kt(oo())):zt(mr(t,1),Kt(oo()))).length;return Hr(function(r){for(var i=-1,o=gn(r.length,n);++i<o;)r[i]=t[i].call(this,r[i]);return St(e,this,r)})}),Fa=Hr(function(e,t){var n=an(t,io(Fa));return Ki(e,s,r,t,n)}),Na=Hr(function(e,t){var n=an(t,io(Na));return Ki(e,64,r,t,n)}),Da=Xi(function(e,t){return Ki(e,256,r,r,r,t)});function Ua(e,t){return e===t||e!=e&&t!=t}var Ra=Gi(Ir),La=Gi(function(e,t){return e>=t}),Va=kr(function(){return arguments}())?kr:function(e){return es(e)&&xe.call(e,"callee")&&!qe.call(e,"callee")},Ga=re.isArray,Wa=yt?Kt(yt):function(e){return es(e)&&wr(e)==z};function $a(e){return null!=e&&Qa(e.length)&&!Za(e)}function qa(e){return es(e)&&$a(e)}var Ha=Mt||mc,Ka=gt?Kt(gt):function(e){return es(e)&&wr(e)==g};function Ya(e){if(!es(e))return!1;var t=wr(e);return t==v||"[object DOMException]"==t||"string"==typeof e.message&&"string"==typeof e.name&&!rs(e)}function Za(e){if(!Xa(e))return!1;var t=wr(e);return t==_||t==b||"[object AsyncFunction]"==t||"[object Proxy]"==t}function Ja(e){return"number"==typeof e&&e==ps(e)}function Qa(e){return"number"==typeof e&&e>-1&&e%1==0&&e<=l}function Xa(e){var t=typeof e;return null!=e&&("object"==t||"function"==t)}function es(e){return null!=e&&"object"==typeof e}var ts=vt?Kt(vt):function(e){return es(e)&&ho(e)==P};function ns(e){return"number"==typeof e||es(e)&&wr(e)==S}function rs(e){if(!es(e)||wr(e)!=w)return!1;var t=We(e);if(null===t)return!0;var n=xe.call(t,"constructor")&&t.constructor;return"function"==typeof n&&n instanceof n&&je.call(n)==Ne}var is=_t?Kt(_t):function(e){return es(e)&&wr(e)==C},os=bt?Kt(bt):function(e){return es(e)&&ho(e)==O};function as(e){return"string"==typeof e||!Ga(e)&&es(e)&&wr(e)==A}function ss(e){return"symbol"==typeof e||es(e)&&wr(e)==E}var cs=Pt?Kt(Pt):function(e){return es(e)&&Qa(e.length)&&!!rt[wr(e)]},us=Gi(Mr),ls=Gi(function(e,t){return e<=t});function ds(e){if(!e)return[];if($a(e))return as(e)?ln(e):Oi(e);if(Je&&e[Je])return function(e){for(var t,n=[];!(t=e.next()).done;)n.push(t.value);return n}(e[Je]());var t=ho(e);return(t==P?rn:t==O?sn:Us)(e)}function hs(e){return e?(e=ms(e))===u||e===-1/0?17976931348623157e292*(e<0?-1:1):e==e?e:0:0===e?e:0}function ps(e){var t=hs(e),n=t%1;return t==t?n?t-n:t:0}function fs(e){return e?or(ps(e),0,h):0}function ms(e){if("number"==typeof e)return e;if(ss(e))return d;if(Xa(e)){var t="function"==typeof e.valueOf?e.valueOf():e;e=Xa(t)?t+"":t}if("string"!=typeof e)return 0===e?e:+e;e=Ht(e);var n=pe.test(e);return n||me.test(e)?st(e.slice(2),n?2:8):he.test(e)?d:+e}function ys(e){return Ai(e,Ts(e))}function gs(e){return null==e?"":ai(e)}var vs=ki(function(e,t){if(Po(t)||$a(t))Ai(t,zs(t),e);else for(var n in t)xe.call(t,n)&&Xn(e,n,t[n])}),_s=ki(function(e,t){Ai(t,Ts(t),e)}),bs=ki(function(e,t,n,r){Ai(t,Ts(t),e,r)}),Ps=ki(function(e,t,n,r){Ai(t,zs(t),e,r)}),Ss=Xi(ir),ws=Hr(function(e,t){e=Ie(e);var n=-1,i=t.length,o=i>2?t[2]:r;for(o&&go(t[0],t[1],o)&&(i=1);++n<i;)for(var a=t[n],s=Ts(a),c=-1,u=s.length;++c<u;){var l=s[c],d=e[l];(d===r||Ua(d,ze[l])&&!xe.call(e,l))&&(e[l]=a[l])}return e}),Is=Hr(function(e){return e.push(r,Zi),St(xs,r,e)});function Cs(e,t,n){var i=null==e?r:Pr(e,t);return i===r?n:i}function Os(e,t){return null!=e&&po(e,t,Or)}var As=Di(function(e,t,n){null!=t&&"function"!=typeof t.toString&&(t=Fe.call(t)),e[t]=n},Xs(nc)),Es=Di(function(e,t,n){null!=t&&"function"!=typeof t.toString&&(t=Fe.call(t)),xe.call(e,t)?e[t].push(n):e[t]=[n]},oo),ks=Hr(Er);function zs(e){return $a(e)?Kn(e):Br(e)}function Ts(e){return $a(e)?Kn(e,!0):function(e){if(!Xa(e))return function(e){var t=[];if(null!=e)for(var n in Ie(e))t.push(n);return t}(e);var t=Po(e),n=[];for(var r in e)("constructor"!=r||!t&&xe.call(e,r))&&n.push(r);return n}(e)}var js=ki(function(e,t,n){Ur(e,t,n)}),xs=ki(function(e,t,n,r){Ur(e,t,n,r)}),Bs=Xi(function(e,t){var n={};if(null==e)return n;var r=!1;t=zt(t,function(t){return t=yi(t,e),r||(r=t.length>1),t}),Ai(e,to(e),n),r&&(n=ar(n,7,Ji));for(var i=t.length;i--;)ci(n,t[i]);return n}),Ms=Xi(function(e,t){return null==e?{}:function(e,t){return Vr(e,t,function(t,n){return Os(e,n)})}(e,t)});function Fs(e,t){if(null==e)return{};var n=zt(to(e),function(e){return[e]});return t=oo(t),Vr(e,n,function(e,n){return t(e,n[0])})}var Ns=Hi(zs),Ds=Hi(Ts);function Us(e){return null==e?[]:Yt(e,zs(e))}var Rs=xi(function(e,t,n){return t=t.toLowerCase(),e+(n?Ls(t):t)});function Ls(e){return Ys(gs(e).toLowerCase())}function Vs(e){return(e=gs(e))&&e.replace(ge,Xt).replace(Ze,"")}var Gs=xi(function(e,t,n){return e+(n?"-":"")+t.toLowerCase()}),Ws=xi(function(e,t,n){return e+(n?" ":"")+t.toLowerCase()}),$s=ji("toLowerCase"),qs=xi(function(e,t,n){return e+(n?"_":"")+t.toLowerCase()}),Hs=xi(function(e,t,n){return e+(n?" ":"")+Ys(t)}),Ks=xi(function(e,t,n){return e+(n?" ":"")+t.toUpperCase()}),Ys=ji("toUpperCase");function Zs(e,t,n){return e=gs(e),(t=n?r:t)===r?function(e){return et.test(e)}(e)?function(e){return e.match(Qe)||[]}(e):function(e){return e.match(se)||[]}(e):e.match(t)||[]}var Js=Hr(function(e,t){try{return St(e,r,t)}catch(e){return Ya(e)?e:new Pe(e)}}),Qs=Xi(function(e,t){return It(t,function(t){t=Fo(t),rr(e,t,Ea(e[t],e))}),e});function Xs(e){return function(){return e}}var ec=Fi(),tc=Fi(!0);function nc(e){return e}function rc(e){return xr("function"==typeof e?e:ar(e,1))}var ic=Hr(function(e,t){return function(n){return Er(n,e,t)}}),oc=Hr(function(e,t){return function(n){return Er(e,n,t)}});function ac(e,t,n){var r=zs(t),i=br(t,r);null!=n||Xa(t)&&(i.length||!r.length)||(n=t,t=e,e=this,i=br(t,zs(t)));var o=!(Xa(n)&&"chain"in n&&!n.chain),a=Za(e);return It(i,function(n){var r=t[n];e[n]=r,a&&(e.prototype[n]=function(){var t=this.__chain__;if(o||t){var n=e(this.__wrapped__);return(n.__actions__=Oi(this.__actions__)).push({func:r,args:arguments,thisArg:e}),n.__chain__=t,n}return r.apply(e,Tt([this.value()],arguments))})}),e}function sc(){}var cc=Ri(zt),uc=Ri(Ot),lc=Ri(Bt);function dc(e){return vo(e)?Vt(Fo(e)):function(e){return function(t){return Pr(t,e)}}(e)}var hc=Vi(),pc=Vi(!0);function fc(){return[]}function mc(){return!1}var yc,gc=Ui(function(e,t){return e+t},0),vc=$i("ceil"),_c=Ui(function(e,t){return e/t},1),bc=$i("floor"),Pc=Ui(function(e,t){return e*t},1),Sc=$i("round"),wc=Ui(function(e,t){return e-t},0);return Dn.after=function(e,t){if("function"!=typeof t)throw new Ae(i);return e=ps(e),function(){if(--e<1)return t.apply(this,arguments)}},Dn.ary=Oa,Dn.assign=vs,Dn.assignIn=_s,Dn.assignInWith=bs,Dn.assignWith=Ps,Dn.at=Ss,Dn.before=Aa,Dn.bind=Ea,Dn.bindAll=Qs,Dn.bindKey=ka,Dn.castArray=function(){if(!arguments.length)return[];var e=arguments[0];return Ga(e)?e:[e]},Dn.chain=da,Dn.chunk=function(e,t,n){t=(n?go(e,t,n):t===r)?1:yn(ps(t),0);var i=null==e?0:e.length;if(!i||t<1)return[];for(var o=0,a=0,s=re(ht(i/t));o<i;)s[a++]=ei(e,o,o+=t);return s},Dn.compact=function(e){for(var t=-1,n=null==e?0:e.length,r=0,i=[];++t<n;){var o=e[t];o&&(i[r++]=o)}return i},Dn.concat=function(){var e=arguments.length;if(!e)return[];for(var t=re(e-1),n=arguments[0],r=e;r--;)t[r-1]=arguments[r];return Tt(Ga(n)?Oi(n):[n],mr(t,1))},Dn.cond=function(e){var t=null==e?0:e.length,n=oo();return e=t?zt(e,function(e){if("function"!=typeof e[1])throw new Ae(i);return[n(e[0]),e[1]]}):[],Hr(function(n){for(var r=-1;++r<t;){var i=e[r];if(St(i[0],this,n))return St(i[1],this,n)}})},Dn.conforms=function(e){return function(e){var t=zs(e);return function(n){return sr(n,e,t)}}(ar(e,1))},Dn.constant=Xs,Dn.countBy=fa,Dn.create=function(e,t){var n=Un(e);return null==t?n:nr(n,t)},Dn.curry=function e(t,n,i){var o=Ki(t,8,r,r,r,r,r,n=i?r:n);return o.placeholder=e.placeholder,o},Dn.curryRight=function e(t,n,i){var o=Ki(t,16,r,r,r,r,r,n=i?r:n);return o.placeholder=e.placeholder,o},Dn.debounce=za,Dn.defaults=ws,Dn.defaultsDeep=Is,Dn.defer=Ta,Dn.delay=ja,Dn.difference=Uo,Dn.differenceBy=Ro,Dn.differenceWith=Lo,Dn.drop=function(e,t,n){var i=null==e?0:e.length;return i?ei(e,(t=n||t===r?1:ps(t))<0?0:t,i):[]},Dn.dropRight=function(e,t,n){var i=null==e?0:e.length;return i?ei(e,0,(t=i-(t=n||t===r?1:ps(t)))<0?0:t):[]},Dn.dropRightWhile=function(e,t){return e&&e.length?li(e,oo(t,3),!0,!0):[]},Dn.dropWhile=function(e,t){return e&&e.length?li(e,oo(t,3),!0):[]},Dn.fill=function(e,t,n,i){var o=null==e?0:e.length;return o?(n&&"number"!=typeof n&&go(e,t,n)&&(n=0,i=o),function(e,t,n,i){var o=e.length;for((n=ps(n))<0&&(n=-n>o?0:o+n),(i=i===r||i>o?o:ps(i))<0&&(i+=o),i=n>i?0:fs(i);n<i;)e[n++]=t;return e}(e,t,n,i)):[]},Dn.filter=function(e,t){return(Ga(e)?At:fr)(e,oo(t,3))},Dn.flatMap=function(e,t){return mr(Sa(e,t),1)},Dn.flatMapDeep=function(e,t){return mr(Sa(e,t),u)},Dn.flatMapDepth=function(e,t,n){return n=n===r?1:ps(n),mr(Sa(e,t),n)},Dn.flatten=Wo,Dn.flattenDeep=function(e){return null!=e&&e.length?mr(e,u):[]},Dn.flattenDepth=function(e,t){return null!=e&&e.length?mr(e,t=t===r?1:ps(t)):[]},Dn.flip=function(e){return Ki(e,512)},Dn.flow=ec,Dn.flowRight=tc,Dn.fromPairs=function(e){for(var t=-1,n=null==e?0:e.length,r={};++t<n;){var i=e[t];rr(r,i[0],i[1])}return r},Dn.functions=function(e){return null==e?[]:br(e,zs(e))},Dn.functionsIn=function(e){return null==e?[]:br(e,Ts(e))},Dn.groupBy=_a,Dn.initial=function(e){return null!=e&&e.length?ei(e,0,-1):[]},Dn.intersection=qo,Dn.intersectionBy=Ho,Dn.intersectionWith=Ko,Dn.invert=As,Dn.invertBy=Es,Dn.invokeMap=ba,Dn.iteratee=rc,Dn.keyBy=Pa,Dn.keys=zs,Dn.keysIn=Ts,Dn.map=Sa,Dn.mapKeys=function(e,t){var n={};return t=oo(t,3),vr(e,function(e,r,i){rr(n,t(e,r,i),e)}),n},Dn.mapValues=function(e,t){var n={};return t=oo(t,3),vr(e,function(e,r,i){rr(n,r,t(e,r,i))}),n},Dn.matches=function(e){return Nr(ar(e,1))},Dn.matchesProperty=function(e,t){return Dr(e,ar(t,1))},Dn.memoize=xa,Dn.merge=js,Dn.mergeWith=xs,Dn.method=ic,Dn.methodOf=oc,Dn.mixin=ac,Dn.negate=Ba,Dn.nthArg=function(e){return e=ps(e),Hr(function(t){return Rr(t,e)})},Dn.omit=Bs,Dn.omitBy=function(e,t){return Fs(e,Ba(oo(t)))},Dn.once=function(e){return Aa(2,e)},Dn.orderBy=function(e,t,n,i){return null==e?[]:(Ga(t)||(t=null==t?[]:[t]),Ga(n=i?r:n)||(n=null==n?[]:[n]),Lr(e,t,n))},Dn.over=cc,Dn.overArgs=Ma,Dn.overEvery=uc,Dn.overSome=lc,Dn.partial=Fa,Dn.partialRight=Na,Dn.partition=wa,Dn.pick=Ms,Dn.pickBy=Fs,Dn.property=dc,Dn.propertyOf=function(e){return function(t){return null==e?r:Pr(e,t)}},Dn.pull=Zo,Dn.pullAll=Jo,Dn.pullAllBy=function(e,t,n){return e&&e.length&&t&&t.length?Gr(e,t,oo(n,2)):e},Dn.pullAllWith=function(e,t,n){return e&&e.length&&t&&t.length?Gr(e,t,r,n):e},Dn.pullAt=Qo,Dn.range=hc,Dn.rangeRight=pc,Dn.rearg=Da,Dn.reject=function(e,t){return(Ga(e)?At:fr)(e,Ba(oo(t,3)))},Dn.remove=function(e,t){var n=[];if(!e||!e.length)return n;var r=-1,i=[],o=e.length;for(t=oo(t,3);++r<o;){var a=e[r];t(a,r,e)&&(n.push(a),i.push(r))}return Wr(e,i),n},Dn.rest=function(e,t){if("function"!=typeof e)throw new Ae(i);return Hr(e,t=t===r?t:ps(t))},Dn.reverse=Xo,Dn.sampleSize=function(e,t,n){return t=(n?go(e,t,n):t===r)?1:ps(t),(Ga(e)?Zn:Yr)(e,t)},Dn.set=function(e,t,n){return null==e?e:Zr(e,t,n)},Dn.setWith=function(e,t,n,i){return i="function"==typeof i?i:r,null==e?e:Zr(e,t,n,i)},Dn.shuffle=function(e){return(Ga(e)?Jn:Xr)(e)},Dn.slice=function(e,t,n){var i=null==e?0:e.length;return i?(n&&"number"!=typeof n&&go(e,t,n)?(t=0,n=i):(t=null==t?0:ps(t),n=n===r?i:ps(n)),ei(e,t,n)):[]},Dn.sortBy=Ia,Dn.sortedUniq=function(e){return e&&e.length?ii(e):[]},Dn.sortedUniqBy=function(e,t){return e&&e.length?ii(e,oo(t,2)):[]},Dn.split=function(e,t,n){return n&&"number"!=typeof n&&go(e,t,n)&&(t=n=r),(n=n===r?h:n>>>0)?(e=gs(e))&&("string"==typeof t||null!=t&&!is(t))&&!(t=ai(t))&&nn(e)?vi(ln(e),0,n):e.split(t,n):[]},Dn.spread=function(e,t){if("function"!=typeof e)throw new Ae(i);return t=null==t?0:yn(ps(t),0),Hr(function(n){var r=n[t],i=vi(n,0,t);return r&&Tt(i,r),St(e,this,i)})},Dn.tail=function(e){var t=null==e?0:e.length;return t?ei(e,1,t):[]},Dn.take=function(e,t,n){return e&&e.length?ei(e,0,(t=n||t===r?1:ps(t))<0?0:t):[]},Dn.takeRight=function(e,t,n){var i=null==e?0:e.length;return i?ei(e,(t=i-(t=n||t===r?1:ps(t)))<0?0:t,i):[]},Dn.takeRightWhile=function(e,t){return e&&e.length?li(e,oo(t,3),!1,!0):[]},Dn.takeWhile=function(e,t){return e&&e.length?li(e,oo(t,3)):[]},Dn.tap=function(e,t){return t(e),e},Dn.throttle=function(e,t,n){var r=!0,o=!0;if("function"!=typeof e)throw new Ae(i);return Xa(n)&&(r="leading"in n?!!n.leading:r,o="trailing"in n?!!n.trailing:o),za(e,t,{leading:r,maxWait:t,trailing:o})},Dn.thru=ha,Dn.toArray=ds,Dn.toPairs=Ns,Dn.toPairsIn=Ds,Dn.toPath=function(e){return Ga(e)?zt(e,Fo):ss(e)?[e]:Oi(Mo(gs(e)))},Dn.toPlainObject=ys,Dn.transform=function(e,t,n){var r=Ga(e),i=r||Ha(e)||cs(e);if(t=oo(t,4),null==n){var o=e&&e.constructor;n=i?r?new o:[]:Xa(e)&&Za(o)?Un(We(e)):{}}return(i?It:vr)(e,function(e,r,i){return t(n,e,r,i)}),n},Dn.unary=function(e){return Oa(e,1)},Dn.union=ea,Dn.unionBy=ta,Dn.unionWith=na,Dn.uniq=function(e){return e&&e.length?si(e):[]},Dn.uniqBy=function(e,t){return e&&e.length?si(e,oo(t,2)):[]},Dn.uniqWith=function(e,t){return t="function"==typeof t?t:r,e&&e.length?si(e,r,t):[]},Dn.unset=function(e,t){return null==e||ci(e,t)},Dn.unzip=ra,Dn.unzipWith=ia,Dn.update=function(e,t,n){return null==e?e:ui(e,t,mi(n))},Dn.updateWith=function(e,t,n,i){return i="function"==typeof i?i:r,null==e?e:ui(e,t,mi(n),i)},Dn.values=Us,Dn.valuesIn=function(e){return null==e?[]:Yt(e,Ts(e))},Dn.without=oa,Dn.words=Zs,Dn.wrap=function(e,t){return Fa(mi(t),e)},Dn.xor=aa,Dn.xorBy=sa,Dn.xorWith=ca,Dn.zip=ua,Dn.zipObject=function(e,t){return pi(e||[],t||[],Xn)},Dn.zipObjectDeep=function(e,t){return pi(e||[],t||[],Zr)},Dn.zipWith=la,Dn.entries=Ns,Dn.entriesIn=Ds,Dn.extend=_s,Dn.extendWith=bs,ac(Dn,Dn),Dn.add=gc,Dn.attempt=Js,Dn.camelCase=Rs,Dn.capitalize=Ls,Dn.ceil=vc,Dn.clamp=function(e,t,n){return n===r&&(n=t,t=r),n!==r&&(n=(n=ms(n))==n?n:0),t!==r&&(t=(t=ms(t))==t?t:0),or(ms(e),t,n)},Dn.clone=function(e){return ar(e,4)},Dn.cloneDeep=function(e){return ar(e,5)},Dn.cloneDeepWith=function(e,t){return ar(e,5,t="function"==typeof t?t:r)},Dn.cloneWith=function(e,t){return ar(e,4,t="function"==typeof t?t:r)},Dn.conformsTo=function(e,t){return null==t||sr(e,t,zs(t))},Dn.deburr=Vs,Dn.defaultTo=function(e,t){return null==e||e!=e?t:e},Dn.divide=_c,Dn.endsWith=function(e,t,n){e=gs(e),t=ai(t);var i=e.length,o=n=n===r?i:or(ps(n),0,i);return(n-=t.length)>=0&&e.slice(n,o)==t},Dn.eq=Ua,Dn.escape=function(e){return(e=gs(e))&&H.test(e)?e.replace($,en):e},Dn.escapeRegExp=function(e){return(e=gs(e))&&te.test(e)?e.replace(ee,"\\$&"):e},Dn.every=function(e,t,n){var i=Ga(e)?Ot:hr;return n&&go(e,t,n)&&(t=r),i(e,oo(t,3))},Dn.find=ma,Dn.findIndex=Vo,Dn.findKey=function(e,t){return Ft(e,oo(t,3),vr)},Dn.findLast=ya,Dn.findLastIndex=Go,Dn.findLastKey=function(e,t){return Ft(e,oo(t,3),_r)},Dn.floor=bc,Dn.forEach=ga,Dn.forEachRight=va,Dn.forIn=function(e,t){return null==e?e:yr(e,oo(t,3),Ts)},Dn.forInRight=function(e,t){return null==e?e:gr(e,oo(t,3),Ts)},Dn.forOwn=function(e,t){return e&&vr(e,oo(t,3))},Dn.forOwnRight=function(e,t){return e&&_r(e,oo(t,3))},Dn.get=Cs,Dn.gt=Ra,Dn.gte=La,Dn.has=function(e,t){return null!=e&&po(e,t,Cr)},Dn.hasIn=Os,Dn.head=$o,Dn.identity=nc,Dn.includes=function(e,t,n,r){e=$a(e)?e:Us(e),n=n&&!r?ps(n):0;var i=e.length;return n<0&&(n=yn(i+n,0)),as(e)?n<=i&&e.indexOf(t,n)>-1:!!i&&Dt(e,t,n)>-1},Dn.indexOf=function(e,t,n){var r=null==e?0:e.length;if(!r)return-1;var i=null==n?0:ps(n);return i<0&&(i=yn(r+i,0)),Dt(e,t,i)},Dn.inRange=function(e,t,n){return t=hs(t),n===r?(n=t,t=0):n=hs(n),function(e,t,n){return e>=gn(t,n)&&e<yn(t,n)}(e=ms(e),t,n)},Dn.invoke=ks,Dn.isArguments=Va,Dn.isArray=Ga,Dn.isArrayBuffer=Wa,Dn.isArrayLike=$a,Dn.isArrayLikeObject=qa,Dn.isBoolean=function(e){return!0===e||!1===e||es(e)&&wr(e)==y},Dn.isBuffer=Ha,Dn.isDate=Ka,Dn.isElement=function(e){return es(e)&&1===e.nodeType&&!rs(e)},Dn.isEmpty=function(e){if(null==e)return!0;if($a(e)&&(Ga(e)||"string"==typeof e||"function"==typeof e.splice||Ha(e)||cs(e)||Va(e)))return!e.length;var t=ho(e);if(t==P||t==O)return!e.size;if(Po(e))return!Br(e).length;for(var n in e)if(xe.call(e,n))return!1;return!0},Dn.isEqual=function(e,t){return zr(e,t)},Dn.isEqualWith=function(e,t,n){var i=(n="function"==typeof n?n:r)?n(e,t):r;return i===r?zr(e,t,r,n):!!i},Dn.isError=Ya,Dn.isFinite=function(e){return"number"==typeof e&&Gt(e)},Dn.isFunction=Za,Dn.isInteger=Ja,Dn.isLength=Qa,Dn.isMap=ts,Dn.isMatch=function(e,t){return e===t||Tr(e,t,so(t))},Dn.isMatchWith=function(e,t,n){return n="function"==typeof n?n:r,Tr(e,t,so(t),n)},Dn.isNaN=function(e){return ns(e)&&e!=+e},Dn.isNative=function(e){if(bo(e))throw new Pe("Unsupported core-js use. Try https://npms.io/search?q=ponyfill.");return jr(e)},Dn.isNil=function(e){return null==e},Dn.isNull=function(e){return null===e},Dn.isNumber=ns,Dn.isObject=Xa,Dn.isObjectLike=es,Dn.isPlainObject=rs,Dn.isRegExp=is,Dn.isSafeInteger=function(e){return Ja(e)&&e>=-9007199254740991&&e<=l},Dn.isSet=os,Dn.isString=as,Dn.isSymbol=ss,Dn.isTypedArray=cs,Dn.isUndefined=function(e){return e===r},Dn.isWeakMap=function(e){return es(e)&&ho(e)==k},Dn.isWeakSet=function(e){return es(e)&&"[object WeakSet]"==wr(e)},Dn.join=function(e,t){return null==e?"":fn.call(e,t)},Dn.kebabCase=Gs,Dn.last=Yo,Dn.lastIndexOf=function(e,t,n){var i=null==e?0:e.length;if(!i)return-1;var o=i;return n!==r&&(o=(o=ps(n))<0?yn(i+o,0):gn(o,i-1)),t==t?function(e,t,n){for(var r=n+1;r--;)if(e[r]===t)return r;return r}(e,t,o):Nt(e,Rt,o,!0)},Dn.lowerCase=Ws,Dn.lowerFirst=$s,Dn.lt=us,Dn.lte=ls,Dn.max=function(e){return e&&e.length?pr(e,nc,Ir):r},Dn.maxBy=function(e,t){return e&&e.length?pr(e,oo(t,2),Ir):r},Dn.mean=function(e){return Lt(e,nc)},Dn.meanBy=function(e,t){return Lt(e,oo(t,2))},Dn.min=function(e){return e&&e.length?pr(e,nc,Mr):r},Dn.minBy=function(e,t){return e&&e.length?pr(e,oo(t,2),Mr):r},Dn.stubArray=fc,Dn.stubFalse=mc,Dn.stubObject=function(){return{}},Dn.stubString=function(){return""},Dn.stubTrue=function(){return!0},Dn.multiply=Pc,Dn.nth=function(e,t){return e&&e.length?Rr(e,ps(t)):r},Dn.noConflict=function(){return lt._===this&&(lt._=De),this},Dn.noop=sc,Dn.now=Ca,Dn.pad=function(e,t,n){e=gs(e);var r=(t=ps(t))?un(e):0;if(!t||r>=t)return e;var i=(t-r)/2;return Li(ft(i),n)+e+Li(ht(i),n)},Dn.padEnd=function(e,t,n){e=gs(e);var r=(t=ps(t))?un(e):0;return t&&r<t?e+Li(t-r,n):e},Dn.padStart=function(e,t,n){e=gs(e);var r=(t=ps(t))?un(e):0;return t&&r<t?Li(t-r,n)+e:e},Dn.parseInt=function(e,t,n){return n||null==t?t=0:t&&(t=+t),_n(gs(e).replace(ne,""),t||0)},Dn.random=function(e,t,n){if(n&&"boolean"!=typeof n&&go(e,t,n)&&(t=n=r),n===r&&("boolean"==typeof t?(n=t,t=r):"boolean"==typeof e&&(n=e,e=r)),e===r&&t===r?(e=0,t=1):(e=hs(e),t===r?(t=e,e=0):t=hs(t)),e>t){var i=e;e=t,t=i}if(n||e%1||t%1){var o=bn();return gn(e+o*(t-e+at("1e-"+((o+"").length-1))),t)}return $r(e,t)},Dn.reduce=function(e,t,n){var r=Ga(e)?jt:Wt,i=arguments.length<3;return r(e,oo(t,4),n,i,lr)},Dn.reduceRight=function(e,t,n){var r=Ga(e)?xt:Wt,i=arguments.length<3;return r(e,oo(t,4),n,i,dr)},Dn.repeat=function(e,t,n){return t=(n?go(e,t,n):t===r)?1:ps(t),qr(gs(e),t)},Dn.replace=function(){var e=arguments,t=gs(e[0]);return e.length<3?t:t.replace(e[1],e[2])},Dn.result=function(e,t,n){var i=-1,o=(t=yi(t,e)).length;for(o||(o=1,e=r);++i<o;){var a=null==e?r:e[Fo(t[i])];a===r&&(i=o,a=n),e=Za(a)?a.call(e):a}return e},Dn.round=Sc,Dn.runInContext=e,Dn.sample=function(e){return(Ga(e)?Yn:Kr)(e)},Dn.size=function(e){if(null==e)return 0;if($a(e))return as(e)?un(e):e.length;var t=ho(e);return t==P||t==O?e.size:Br(e).length},Dn.snakeCase=qs,Dn.some=function(e,t,n){var i=Ga(e)?Bt:ti;return n&&go(e,t,n)&&(t=r),i(e,oo(t,3))},Dn.sortedIndex=function(e,t){return ni(e,t)},Dn.sortedIndexBy=function(e,t,n){return ri(e,t,oo(n,2))},Dn.sortedIndexOf=function(e,t){var n=null==e?0:e.length;if(n){var r=ni(e,t);if(r<n&&Ua(e[r],t))return r}return-1},Dn.sortedLastIndex=function(e,t){return ni(e,t,!0)},Dn.sortedLastIndexBy=function(e,t,n){return ri(e,t,oo(n,2),!0)},Dn.sortedLastIndexOf=function(e,t){if(null!=e&&e.length){var n=ni(e,t,!0)-1;if(Ua(e[n],t))return n}return-1},Dn.startCase=Hs,Dn.startsWith=function(e,t,n){return e=gs(e),n=null==n?0:or(ps(n),0,e.length),t=ai(t),e.slice(n,n+t.length)==t},Dn.subtract=wc,Dn.sum=function(e){return e&&e.length?$t(e,nc):0},Dn.sumBy=function(e,t){return e&&e.length?$t(e,oo(t,2)):0},Dn.template=function(e,t,n){var i=Dn.templateSettings;n&&go(e,t,n)&&(t=r),e=gs(e),t=Ps({},t,i,Yi);var o=Ps({},t.imports,i.imports,Yi),a=zs(o),s=Yt(o,a);It(a,function(e){if(ce.test(e))throw new Pe("Invalid `imports` option passed into `_.template`")});var c,u,l=0,d=t.interpolate||ve,h="__p += '",p=Ce((t.escape||ve).source+"|"+d.source+"|"+(d===Z?le:ve).source+"|"+(t.evaluate||ve).source+"|$","g"),f="//# sourceURL="+(xe.call(t,"sourceURL")?(t.sourceURL+"").replace(/\s/g," "):"lodash.templateSources["+ ++nt+"]")+"\n";e.replace(p,function(t,n,r,i,o,a){return r||(r=i),h+=e.slice(l,a).replace(_e,tn),n&&(c=!0,h+="' +\n__e("+n+") +\n'"),o&&(u=!0,h+="';\n"+o+";\n__p += '"),r&&(h+="' +\n((__t = ("+r+")) == null ? '' : __t) +\n'"),l=a+t.length,t}),h+="';\n";var m=xe.call(t,"variable")&&t.variable;if(m){if(ce.test(m))throw new Pe("Invalid `variable` option passed into `_.template`")}else h="with (obj) {\n"+h+"\n}\n";h=(u?h.replace(L,""):h).replace(V,"$1").replace(G,"$1;"),h="function("+(m||"obj")+") {\n"+(m?"":"obj || (obj = {});\n")+"var __t, __p = ''"+(c?", __e = _.escape":"")+(u?", __j = Array.prototype.join;\nfunction print() { __p += __j.call(arguments, '') }\n":";\n")+h+"return __p\n}";var y=Js(function(){return Se(a,f+"return "+h).apply(r,s)});if(y.source=h,Ya(y))throw y;return y},Dn.times=function(e,t){if((e=ps(e))<1||e>l)return[];var n=h,r=gn(e,h);t=oo(t),e-=h;for(var i=qt(r,t);++n<e;)t(n);return i},Dn.toFinite=hs,Dn.toInteger=ps,Dn.toLength=fs,Dn.toLower=function(e){return gs(e).toLowerCase()},Dn.toNumber=ms,Dn.toSafeInteger=function(e){return e?or(ps(e),-9007199254740991,l):0===e?e:0},Dn.toString=gs,Dn.toUpper=function(e){return gs(e).toUpperCase()},Dn.trim=function(e,t,n){if((e=gs(e))&&(n||t===r))return Ht(e);if(!e||!(t=ai(t)))return e;var i=ln(e),o=ln(t);return vi(i,Jt(i,o),Qt(i,o)+1).join("")},Dn.trimEnd=function(e,t,n){if((e=gs(e))&&(n||t===r))return e.slice(0,dn(e)+1);if(!e||!(t=ai(t)))return e;var i=ln(e);return vi(i,0,Qt(i,ln(t))+1).join("")},Dn.trimStart=function(e,t,n){if((e=gs(e))&&(n||t===r))return e.replace(ne,"");if(!e||!(t=ai(t)))return e;var i=ln(e);return vi(i,Jt(i,ln(t))).join("")},Dn.truncate=function(e,t){var n=30,i="...";if(Xa(t)){var o="separator"in t?t.separator:o;n="length"in t?ps(t.length):n,i="omission"in t?ai(t.omission):i}var a=(e=gs(e)).length;if(nn(e)){var s=ln(e);a=s.length}if(n>=a)return e;var c=n-un(i);if(c<1)return i;var u=s?vi(s,0,c).join(""):e.slice(0,c);if(o===r)return u+i;if(s&&(c+=u.length-c),is(o)){if(e.slice(c).search(o)){var l,d=u;for(o.global||(o=Ce(o.source,gs(de.exec(o))+"g")),o.lastIndex=0;l=o.exec(d);)var h=l.index;u=u.slice(0,h===r?c:h)}}else if(e.indexOf(ai(o),c)!=c){var p=u.lastIndexOf(o);p>-1&&(u=u.slice(0,p))}return u+i},Dn.unescape=function(e){return(e=gs(e))&&q.test(e)?e.replace(W,hn):e},Dn.uniqueId=function(e){var t=++Be;return gs(e)+t},Dn.upperCase=Ks,Dn.upperFirst=Ys,Dn.each=ga,Dn.eachRight=va,Dn.first=$o,ac(Dn,(yc={},vr(Dn,function(e,t){xe.call(Dn.prototype,t)||(yc[t]=e)}),yc),{chain:!1}),Dn.VERSION="4.18.1",It(["bind","bindKey","curry","curryRight","partial","partialRight"],function(e){Dn[e].placeholder=Dn}),It(["drop","take"],function(e,t){Vn.prototype[e]=function(n){n=n===r?1:yn(ps(n),0);var i=this.__filtered__&&!t?new Vn(this):this.clone();return i.__filtered__?i.__takeCount__=gn(n,i.__takeCount__):i.__views__.push({size:gn(n,h),type:e+(i.__dir__<0?"Right":"")}),i},Vn.prototype[e+"Right"]=function(t){return this.reverse()[e](t).reverse()}}),It(["filter","map","takeWhile"],function(e,t){var n=t+1,r=1==n||3==n;Vn.prototype[e]=function(e){var t=this.clone();return t.__iteratees__.push({iteratee:oo(e,3),type:n}),t.__filtered__=t.__filtered__||r,t}}),It(["head","last"],function(e,t){var n="take"+(t?"Right":"");Vn.prototype[e]=function(){return this[n](1).value()[0]}}),It(["initial","tail"],function(e,t){var n="drop"+(t?"":"Right");Vn.prototype[e]=function(){return this.__filtered__?new Vn(this):this[n](1)}}),Vn.prototype.compact=function(){return this.filter(nc)},Vn.prototype.find=function(e){return this.filter(e).head()},Vn.prototype.findLast=function(e){return this.reverse().find(e)},Vn.prototype.invokeMap=Hr(function(e,t){return"function"==typeof e?new Vn(this):this.map(function(n){return Er(n,e,t)})}),Vn.prototype.reject=function(e){return this.filter(Ba(oo(e)))},Vn.prototype.slice=function(e,t){e=ps(e);var n=this;return n.__filtered__&&(e>0||t<0)?new Vn(n):(e<0?n=n.takeRight(-e):e&&(n=n.drop(e)),t!==r&&(n=(t=ps(t))<0?n.dropRight(-t):n.take(t-e)),n)},Vn.prototype.takeRightWhile=function(e){return this.reverse().takeWhile(e).reverse()},Vn.prototype.toArray=function(){return this.take(h)},vr(Vn.prototype,function(e,t){var n=/^(?:filter|find|map|reject)|While$/.test(t),i=/^(?:head|last)$/.test(t),o=Dn[i?"take"+("last"==t?"Right":""):t],a=i||/^find/.test(t);o&&(Dn.prototype[t]=function(){var t=this.__wrapped__,s=i?[1]:arguments,c=t instanceof Vn,u=s[0],l=c||Ga(t),d=function(e){var t=o.apply(Dn,Tt([e],s));return i&&h?t[0]:t};l&&n&&"function"==typeof u&&1!=u.length&&(c=l=!1);var h=this.__chain__,p=!!this.__actions__.length,f=a&&!h,m=c&&!p;if(!a&&l){t=m?t:new Vn(this);var y=e.apply(t,s);return y.__actions__.push({func:ha,args:[d],thisArg:r}),new Ln(y,h)}return f&&m?e.apply(this,s):(y=this.thru(d),f?i?y.value()[0]:y.value():y)})}),It(["pop","push","shift","sort","splice","unshift"],function(e){var t=Ee[e],n=/^(?:push|sort|unshift)$/.test(e)?"tap":"thru",r=/^(?:pop|shift)$/.test(e);Dn.prototype[e]=function(){var e=arguments;if(r&&!this.__chain__){var i=this.value();return t.apply(Ga(i)?i:[],e)}return this[n](function(n){return t.apply(Ga(n)?n:[],e)})}}),vr(Vn.prototype,function(e,t){var n=Dn[t];if(n){var r=n.name+"";xe.call(kn,r)||(kn[r]=[]),kn[r].push({name:t,func:n})}}),kn[Ni(r,2).name]=[{name:"wrapper",func:r}],Vn.prototype.clone=function(){var e=new Vn(this.__wrapped__);return e.__actions__=Oi(this.__actions__),e.__dir__=this.__dir__,e.__filtered__=this.__filtered__,e.__iteratees__=Oi(this.__iteratees__),e.__takeCount__=this.__takeCount__,e.__views__=Oi(this.__views__),e},Vn.prototype.reverse=function(){if(this.__filtered__){var e=new Vn(this);e.__dir__=-1,e.__filtered__=!0}else(e=this.clone()).__dir__*=-1;return e},Vn.prototype.value=function(){var e=this.__wrapped__.value(),t=this.__dir__,n=Ga(e),r=t<0,i=n?e.length:0,o=function(e,t,n){for(var r=-1,i=n.length;++r<i;){var o=n[r],a=o.size;switch(o.type){case"drop":e+=a;break;case"dropRight":t-=a;break;case"take":t=gn(t,e+a);break;case"takeRight":e=yn(e,t-a)}}return{start:e,end:t}}(0,i,this.__views__),a=o.start,s=o.end,c=s-a,u=r?s:a-1,l=this.__iteratees__,d=l.length,h=0,p=gn(c,this.__takeCount__);if(!n||!r&&i==c&&p==c)return di(e,this.__actions__);var f=[];e:for(;c--&&h<p;){for(var m=-1,y=e[u+=t];++m<d;){var g=l[m],v=g.iteratee,_=g.type,b=v(y);if(2==_)y=b;else if(!b){if(1==_)continue e;break e}}f[h++]=y}return f},Dn.prototype.at=pa,Dn.prototype.chain=function(){return da(this)},Dn.prototype.commit=function(){return new Ln(this.value(),this.__chain__)},Dn.prototype.next=function(){this.__values__===r&&(this.__values__=ds(this.value()));var e=this.__index__>=this.__values__.length;return{done:e,value:e?r:this.__values__[this.__index__++]}},Dn.prototype.plant=function(e){for(var t,n=this;n instanceof Rn;){var i=Do(n);i.__index__=0,i.__values__=r,t?o.__wrapped__=i:t=i;var o=i;n=n.__wrapped__}return o.__wrapped__=e,t},Dn.prototype.reverse=function(){var e=this.__wrapped__;if(e instanceof Vn){var t=e;return this.__actions__.length&&(t=new Vn(this)),(t=t.reverse()).__actions__.push({func:ha,args:[Xo],thisArg:r}),new Ln(t,this.__chain__)}return this.thru(Xo)},Dn.prototype.toJSON=Dn.prototype.valueOf=Dn.prototype.value=function(){return di(this.__wrapped__,this.__actions__)},Dn.prototype.first=Dn.prototype.head,Je&&(Dn.prototype[Je]=function(){return this}),Dn}();"function"==typeof define&&"object"==typeof define.amd&&define.amd?(lt._=pn,define(function(){return pn})):ht?((ht.exports=pn)._=pn,dt._=pn):lt._=pn}.call(this)},1657(e){"use strict";e.exports=(e,t)=>{if("string"!=typeof e||"string"!=typeof t)throw new TypeError("Expected the arguments to be of type `string`");if(""===t)return[e];const n=e.indexOf(t);return-1===n?[e]:[e.slice(0,n),e.slice(n+t.length)]}},803(e){"use strict";e.exports=e=>encodeURIComponent(e).replace(/[!'()*]/g,e=>`%${e.charCodeAt(0).toString(16).toUpperCase()}`)},1635(e,t,n){"use strict";n.d(t,{__assign:()=>r});var r=function(){return r=Object.assign||function(e){for(var t,n=1,r=arguments.length;n<r;n++)for(var i in t=arguments[n])Object.prototype.hasOwnProperty.call(t,i)&&(e[i]=t[i]);return e},r.apply(this,arguments)};Object.create,Object.create}},t={};function n(r){var i=t[r];if(void 0!==i)return i.exports;var o=t[r]={id:r,loaded:!1,exports:{}};return e[r].call(o.exports,o,o.exports,n),o.loaded=!0,o.exports}n.n=e=>{var t=e&&e.__esModule?()=>e.default:()=>e;return n.d(t,{a:t}),t},n.d=(e,t)=>{for(var r in t)n.o(t,r)&&!n.o(e,r)&&Object.defineProperty(e,r,{enumerable:!0,get:t[r]})},n.g=function(){if("object"==typeof globalThis)return globalThis;try{return this||new Function("return this")()}catch(e){if("object"==typeof window)return window}}(),n.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t),n.r=e=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},n.nmd=e=>(e.paths=[],e.children||(e.children=[]),e);var r={};(()=>{"use strict";n.r(r),n.d(r,{createBigCommercePaymentsAlternativeMethodsPaymentStrategy:()=>Le,createBigCommercePaymentsButtonStrategy:()=>st,createBigCommercePaymentsCreditCardsPaymentStrategy:()=>Me,createBigCommercePaymentsCustomerStrategy:()=>Ye,createBigCommercePaymentsFastlaneCustomerStrategy:()=>Qe,createBigCommercePaymentsFastlanePaymentStrategy:()=>ye,createBigCommercePaymentsInvoicesPaymentStrategy:()=>De,createBigCommercePaymentsPayLaterButtonStrategy:()=>lt,createBigCommercePaymentsPayLaterCustomerStrategy:()=>tt,createBigCommercePaymentsPayLaterPaymentStrategy:()=>be,createBigCommercePaymentsPayLaterWalletStrategy:()=>Ft,createBigCommercePaymentsPaymentStrategy:()=>Z,createBigCommercePaymentsRatePayPayPaymentStrategy:()=>Ie,createBigCommercePaymentsRedirectAlternativeMethodsPaymentStrategy:()=>Ge,createBigCommercePaymentsVenmoButtonStrategy:()=>pt,createBigCommercePaymentsVenmoCustomerStrategy:()=>it,createBigCommercePaymentsVenmoPaymentStrategy:()=>qe,createBigCommercePaymentsWalletStrategy:()=>xt});var e,t=n(315);class i extends Error{constructor(e){var t;super(e||"An unexpected error has occurred."),this.name="StandardError",this.type="standard",t=new.target.prototype,Object.setPrototypeOf?Object.setPrototypeOf(this,t):this.__proto__=t,"function"==typeof Error.captureStackTrace?Error.captureStackTrace(this,new.target):this.stack=new Error(this.message).stack}}class o extends i{constructor(e){super(e||"Unable to proceed because the client library of a payment method is not loaded or ready to be used."),this.name="PaymentMethodClientUnavailableError",this.type="payment_method_client_unavailable"}}!function(e){e[e.MissingBillingAddress=0]="MissingBillingAddress",e[e.MissingCart=1]="MissingCart",e[e.MissingCheckout=2]="MissingCheckout",e[e.MissingConsignments=3]="MissingConsignments",e[e.MissingCustomer=4]="MissingCustomer",e[e.MissingCheckoutConfig=5]="MissingCheckoutConfig",e[e.MissingOrder=6]="MissingOrder",e[e.MissingOrderConfig=7]="MissingOrderConfig",e[e.MissingOrderId=8]="MissingOrderId",e[e.MissingPayment=9]="MissingPayment",e[e.MissingPaymentId=10]="MissingPaymentId",e[e.MissingPaymentInstrument=11]="MissingPaymentInstrument",e[e.MissingPaymentMethod=12]="MissingPaymentMethod",e[e.MissingPaymentRedirectUrl=13]="MissingPaymentRedirectUrl",e[e.MissingPaymentStatus=14]="MissingPaymentStatus",e[e.MissingPaymentToken=15]="MissingPaymentToken",e[e.MissingShippingAddress=16]="MissingShippingAddress"}(e||(e={}));class a extends i{constructor(t){super(function(t){switch(t){case e.MissingBillingAddress:return"Unable to proceed because billing address data is unavailable.";case e.MissingCart:return"Unable to proceed because cart data is unavailable.";case e.MissingConsignments:return"Unable to proceed because consignments data is unavailable.";case e.MissingCheckout:return"Unable to proceed because checkout data is unavailable.";case e.MissingCustomer:return"Unable to proceed because customer data is unavailable.";case e.MissingCheckoutConfig:case e.MissingOrderConfig:return"Unable to proceed because configuration data is unavailable.";case e.MissingOrder:return"Unable to proceed because order data is unavailable.";case e.MissingOrderId:return"Unable to proceed because order ID is unavailable or not generated yet.";case e.MissingPayment:return"Unable to proceed because payment data is unavailable.";case e.MissingPaymentToken:return"Unable to proceed because the token required to submit a payment is missing.";case e.MissingPaymentMethod:return"Unable to proceed because payment method data is unavailable or not properly configured.";case e.MissingShippingAddress:return"Unable to proceed because shipping address data is unavailable.";default:return"Unable to proceed because the required data is unavailable."}}(t)),this.subtype=t,this.name="MissingDataError",this.type="missing_data"}}var s=function(e,t,n,r){return new(n||(n=Promise))(function(i,o){function a(e){try{c(r.next(e))}catch(e){o(e)}}function s(e){try{c(r.throw(e))}catch(e){o(e)}}function c(e){var t;e.done?i(e.value):(t=e.value,t instanceof n?t:new n(function(e){e(t)})).then(a,s)}c((r=r.apply(e,t||[])).next())})};class c{constructor(e){this.scriptLoader=e,this.window=window}getPayPalFastlaneSdk(e,t,n){return s(this,void 0,void 0,function*(){if(!this.window.bigCommercePaymentsFastlaneSdk){const r=this.getPayPalFastlaneSdkConfiguration(e,t,n);if(yield this.loadPayPalSdk(r),!this.window.bigCommercePaymentsFastlaneSdk)throw new o}return this.window.bigCommercePaymentsFastlaneSdk})}getPayPalGooglePaySdk(e,t,n,r){return s(this,void 0,void 0,function*(){if(!this.window.bigCommercePaymentsGooglePay||r){const r=this.getPayPalGooglePaySdkScriptConfigOrThrow(e,t,n);yield this.loadPayPalSdk(r)}if(!this.window.bigCommercePaymentsGooglePay)throw new o;return this.window.bigCommercePaymentsGooglePay})}getPayPalApmsSdk(e,t){return s(this,void 0,void 0,function*(){if(!this.window.bigCommercePaymentsApms){const n=this.getPayPalApmSdkConfiguration(e,t);if(yield this.loadPayPalSdk(n),!this.window.bigCommercePaymentsApms)throw new o}return this.window.bigCommercePaymentsApms})}getPayPalMessages(e,t){return s(this,void 0,void 0,function*(){if(!this.window.bigCommercePaymentsMessages){const n=this.getPayPalSdkMessagesConfiguration(e,t);yield this.loadPayPalSdk(n)}if(!this.window.bigCommercePaymentsMessages)throw new o;return this.window.bigCommercePaymentsMessages})}loadPayPalSdk(e){return s(this,arguments,void 0,function*({options:e,attributes:t}){const n=this.transformConfig(e),r=this.transformConfig(t),i=`https://www.paypal.com/sdk/js?${new URLSearchParams(n).toString()}`;yield this.scriptLoader.loadScript(i,{async:!0,attributes:r})})}getPayPalFastlaneSdkConfiguration(t,n,r){const{clientToken:i,initializationData:o}=t;if(!o||!o.clientId)throw new a(e.MissingPaymentMethod);const{intent:s,clientId:c,merchantId:u,attributionId:l}=o;return{options:{"client-id":c,"merchant-id":u,commit:!0,components:["fastlane","three-domain-secure"],currency:n,intent:s},attributes:{"data-client-metadata-id":r.replace(/-/g,""),"data-namespace":"bigCommercePaymentsFastlaneSdk","data-partner-attribution-id":l,"data-sdk-client-token":i}}}getPayPalGooglePaySdkScriptConfigOrThrow(t,n,r=!0){const{clientToken:i,initializationData:o}=t;if(!o||!o.clientId)throw new a(e.MissingPaymentMethod);const{intent:s,clientId:c,merchantId:u,buyerCountry:l,attributionId:d,isHostedCheckoutEnabled:h,isDeveloperModeApplicable:p}=o,f=h||r;return{options:Object.assign({"client-id":c,"merchant-id":u,commit:f,components:["googlepay"],currency:n,intent:s},p&&{"buyer-country":l}),attributes:{"data-partner-attribution-id":d,"data-client-token":i,"data-namespace":"bigCommercePaymentsGooglePay"}}}getPayPalApmSdkConfiguration(t,n){const{initializationData:r}=t;if(!r||!r.clientId)throw new a(e.MissingPaymentMethod);const{intent:i,clientId:o,merchantId:s,buyerCountry:c,attributionId:u,isDeveloperModeApplicable:l,availableAlternativePaymentMethods:d=[],enabledAlternativePaymentMethods:h=[]}=r,p=this.filterFundingOptions(h),f=this.filterFundingOptions(d.filter(e=>!h.includes(e)));return{options:Object.assign({"client-id":o,"merchant-id":s,"enable-funding":p.length>0?p:void 0,"disable-funding":f.length>0?f:void 0,commit:!0,components:["buttons","payment-fields"],currency:n,intent:i},l&&{"buyer-country":c}),attributes:{"data-partner-attribution-id":u,"data-namespace":"bigCommercePaymentsApms"}}}getPayPalSdkMessagesConfiguration(t,n){const{initializationData:r}=t;if(!r||!r.clientId)throw new a(e.MissingPaymentMethod);const{clientId:i,merchantId:o,attributionId:s,isDeveloperModeApplicable:c,buyerCountry:u}=r;return{options:Object.assign({"client-id":i,"merchant-id":o,components:["messages"],currency:n},c&&{"buyer-country":u}),attributes:{"data-namespace":"bigCommercePaymentsMessages","data-partner-attribution-id":s}}}filterFundingOptions(e){const t=["klarna","afterpay"];return e?e.filter(e=>!t.includes(e)):[]}transformConfig(e){let t={};return Object.keys(e).forEach(n=>{const r=e[n];null==r||""===r||Array.isArray(r)&&0===r.length||(t=Object.assign(Object.assign({},t),{[n]:Array.isArray(r)?r.join(","):r}))}),t}}function u(){return new c((0,t.Hb)())}function l(e,t){return Object.assign(e,{resolveIds:t})}const d={size:70,color:"#d9d9d9",backgroundColor:"#ffffff"},h="embedded-checkout-loading-indicator-rotation";class p{constructor(e){this.styles=Object.assign(Object.assign({},d),e&&e.styles),this.containerStyles=Object.assign({},e&&e.containerStyles),this.defineAnimation(),this.container=this.buildContainer(),this.indicator=this.buildIndicator(),this.container.appendChild(this.indicator)}show(e){if(e){const t=document.getElementById(e);if(!t)throw new Error("Unable to attach the loading indicator because the parent ID is not valid.");t.appendChild(this.container)}this.container.style.visibility="visible",this.container.style.opacity="1"}hide(){const e=()=>{this.container.style.visibility="hidden",this.container.removeEventListener("transitionend",e)};this.container.addEventListener("transitionend",e),this.container.style.opacity="0"}buildContainer(){const e=document.createElement("div");return e.style.display="block",e.style.bottom="0",e.style.left="0",e.style.height="100%",e.style.width="100%",e.style.position="absolute",e.style.right="0",e.style.top="0",e.style.transition="all 250ms ease-out",e.style.opacity="0",this.setStyleAttribute(e,this.containerStyles),e}buildIndicator(){const e=document.createElement("div");return e.style.display="block",e.style.width=`${this.styles.size}px`,e.style.height=`${this.styles.size}px`,e.style.borderRadius=`${this.styles.size}px`,e.style.border="solid 1px",e.style.borderColor=`${this.styles.backgroundColor} ${this.styles.backgroundColor} ${this.styles.color} ${this.styles.color}`,e.style.margin="0 auto",e.style.position="absolute",e.style.left="0",e.style.right="0",e.style.top="50%",e.style.transform="translateY(-50%) rotate(0deg)",e.style.transformStyle="preserve-3d",e.style.animation=`${h} 500ms infinite cubic-bezier(0.69, 0.31, 0.56, 0.83)`,e}setStyleAttribute(e,t){Object.keys(t).forEach(n=>{e.style.setProperty(n,t[n])})}defineAnimation(){var e;if(document.getElementById(h))return;const t=document.createElement("style");t.id=h,null===(e=document.head)||void 0===e||e.appendChild(t),t.sheet instanceof CSSStyleSheet&&t.sheet.insertRule(`\n @keyframes ${h} {\n 0% { transform: translateY(-50%) rotate(0deg); }\n 100% { transform: translateY(-50%) rotate(360deg); }\n }\n `,0)}}const f={"background-color":"rgba(0, 0, 0, 0.4)","z-index":"1000"};var m=n(8686),y=n(4043),g=n(9440);class v extends i{constructor(e){super(e||"An unexpected error has occurred during buy now cart creation process. Please try again later."),this.name="BuyNowCartCreationError",this.type="buy_now_cart_creation_error"}}const _={body:{},headers:{},status:0};class b extends i{constructor(e,{message:t,errors:n}={}){const{body:r,headers:i,status:o}=e||_;super(t||"An unexpected error has occurred."),this.name="RequestError",this.type="request",this.body=r,this.headers=i,this.status=o,this.errors=n||[]}}var P,S,w,I,C,O,A,E;!function(e){e.BuyNow="BUY_NOW",e.INVOICE="B2B_INVOICE"}(P||(P={})),function(e){e.Possible="POSSIBLE",e.No="NO",e.Unknown="UNKNOWN",e.Yes="YES"}(S||(S={})),function(e){e.AUTHORIZE="authorize",e.CAPTURE="capture"}(w||(w={})),function(e){e.paypal="paypal",e.checkout="checkout",e.buynow="buynow",e.pay="pay",e.installment="installment"}(I||(I={})),function(e){e.gold="gold",e.blue="blue",e.silver="silver",e.black="black",e.white="white"}(C||(C={})),function(e){e.pill="pill",e.rect="rect"}(O||(O={})),function(e){e.OXXO="oxxo"}(A||(A={})),function(e){e.Approved="APPROVED",e.Created="CREATED",e.PayerActionRequired="PAYER_ACTION_REQUIRED",e.PollingStop="POLLING_STOP",e.PollingError="POLLING_ERROR"}(E||(E={}));var k=function(e,t,n,r){return new(n||(n=Promise))(function(i,o){function a(e){try{c(r.next(e))}catch(e){o(e)}}function s(e){try{c(r.throw(e))}catch(e){o(e)}}function c(e){var t;e.done?i(e.value):(t=e.value,t instanceof n?t:new n(function(e){e(t)})).then(a,s)}c((r=r.apply(e,t||[])).next())})};class z{constructor(e,t,n,r){this.formPoster=e,this.paymentIntegrationService=t,this.bigCommercePaymentsRequestSender=n,this.bigCommercePaymentsScriptLoader=r}loadPayPalSdk(e,t,n,r){return k(this,void 0,void 0,function*(){const i=this.paymentIntegrationService.getState(),o=t||i.getCartOrThrow().currency.code,a=i.getPaymentMethodOrThrow(e);return this.paypalSdk=yield this.bigCommercePaymentsScriptLoader.getPayPalSDK(a,o,n,r),this.paypalSdk})}getPayPalSdkOrThrow(){if(!this.paypalSdk)throw new o;return this.paypalSdk}createBuyNowCartOrThrow(t){return k(this,void 0,void 0,function*(){const n=t.getBuyNowCartRequestBody();if(!n)throw new a(e.MissingCart);try{return yield this.paymentIntegrationService.createBuyNowCart(n)}catch(e){throw new v}})}createOrder(e,t){return k(this,void 0,void 0,function*(){const n=this.paymentIntegrationService.getState().getCartOrThrow().id,{orderId:r}=yield this.bigCommercePaymentsRequestSender.createOrder(e,Object.assign({cartId:n},t));return r})}createOrderCardFields(e,t){return k(this,void 0,void 0,function*(){const n=this.paymentIntegrationService.getState().getCartOrThrow().id,{orderId:r,setupToken:i}=yield this.bigCommercePaymentsRequestSender.createOrder(e,Object.assign({cartId:n},t));return Object.assign({orderId:r},i?{setupToken:i}:{})})}updateOrder(e){return k(this,void 0,void 0,function*(){const t=this.paymentIntegrationService.getState(),n=t.getCartOrThrow();let r;e||(r=t.getConsignmentsOrThrow()[0]);try{yield this.bigCommercePaymentsRequestSender.updateOrder({availableShippingOptions:e?[]:null==r?void 0:r.availableShippingOptions,cartId:n.id,selectedShippingOption:e?null:null==r?void 0:r.selectedShippingOption})}catch(e){throw new b}})}getOrderStatus(e,t){return k(this,void 0,void 0,function*(){try{const{status:n}=yield this.bigCommercePaymentsRequestSender.getOrderStatus(e,t);return n}catch(e){throw new b}})}tokenizePayment(t,n){const r=this.paymentIntegrationService.getState().getCartOrThrow();if(!n)throw new a(e.MissingOrderId);return this.formPoster.postForm("/checkout.php",Object.assign({payment_type:"paypal",action:"set_external_checkout",provider:t,order_id:n},r.source===P.BuyNow&&{cart_id:r.id}))}submitPayment(e,t,n){return k(this,void 0,void 0,function*(){const r={formattedPayload:{vault_payment_instrument:null,set_as_default_stored_instrument:null,device_info:null,method_id:e,paypal_account:{order_id:t}}};yield this.paymentIntegrationService.submitPayment(Object.assign({methodId:e,paymentData:r},n?{gatewayId:n}:{}))})}getShippingOptionOrThrow(e){const t=this.paymentIntegrationService.getState().getConsignmentsOrThrow()[0],n=t.availableShippingOptions||[],r=n.find(e=>e.isRecommended),i=(e?n.find(t=>t.id===e):n.find(e=>{var n;return e.id===(null===(n=t.selectedShippingOption)||void 0===n?void 0:n.id)}))||r||n[0];if(!i)throw new Error("Your order can't be shipped to this address");return i}getAddress(e){return{firstName:(null==e?void 0:e.firstName)||"",lastName:(null==e?void 0:e.lastName)||"",email:(null==e?void 0:e.email)||"",phone:(null==e?void 0:e.phone)||"",company:"",address1:(null==e?void 0:e.address1)||"",address2:(null==e?void 0:e.address2)||"",city:(null==e?void 0:e.city)||"",countryCode:(null==e?void 0:e.countryCode)||"",postalCode:(null==e?void 0:e.postalCode)||"",stateOrProvince:"",stateOrProvinceCode:(null==e?void 0:e.stateOrProvinceCode)||"",customFields:[]}}getBillingAddressFromOrderDetails({payer:e}){var t,n;return this.getAddress({firstName:e.name.given_name,lastName:e.name.surname,email:e.email_address,address1:e.address.address_line_1,address2:e.address.address_line_2,city:e.address.admin_area_2,countryCode:e.address.country_code,postalCode:e.address.postal_code,stateOrProvinceCode:e.address.admin_area_1,phone:null===(n=null===(t=e.phone)||void 0===t?void 0:t.phone_number)||void 0===n?void 0:n.national_number})}getShippingAddressFromOrderDetails(e){const{payer:t,purchase_units:n}=e,{address:r,name:{full_name:i}}=n[0].shipping,[o,...a]=i.split(" ");return this.getAddress({firstName:o,lastName:a.join(" "),email:t.email_address,address1:r.address_line_1,address2:r.address_line_2,city:r.admin_area_2,countryCode:r.country_code,postalCode:r.postal_code,stateOrProvinceCode:r.admin_area_1})}getValidButtonStyle(e){const{color:t,height:n,label:r,shape:i}=e||{},o={color:t&&C[t]?t:void 0,height:this.getValidHeight(n),label:r&&I[r]?r:void 0,shape:i&&O[i]?i:void 0};return(0,g.omitBy)(o,g.isNil)}getValidHeight(e){return e&&"number"==typeof e?e>55?55:e<25?25:e:40}removeElement(e){const t=e&&document.getElementById(e);t&&(t.style.display="none")}}const T="This API endpoint is for internal use only and may change in the future";var j;!function(e){e.Json="application/json",e.JsonV1="application/vnd.bc.v1+json"}(j||(j={}));const x=j,B={"X-Checkout-SDK-Version":"1.960.0"};var M=function(e,t,n,r){return new(n||(n=Promise))(function(i,o){function a(e){try{c(r.next(e))}catch(e){o(e)}}function s(e){try{c(r.throw(e))}catch(e){o(e)}}function c(e){var t;e.done?i(e.value):(t=e.value,t instanceof n?t:new n(function(e){e(t)})).then(a,s)}c((r=r.apply(e,t||[])).next())})};class F{constructor(e){this.requestSender=e}createOrder(e,t){return M(this,void 0,void 0,function*(){const n=`/api/storefront/payment/${e}`,r=t,i=Object.assign({"X-API-INTERNAL":T,"Content-Type":x.Json},B);return(yield this.requestSender.post(n,{headers:i,body:r})).body})}updateOrder(e){return M(this,void 0,void 0,function*(){const t=e,n=Object.assign({"X-API-INTERNAL":T,"Content-Type":x.Json},B);return(yield this.requestSender.put("/api/storefront/initialization/bigcommerce_payments",{headers:n,body:t})).body})}getOrderStatus(){return M(this,arguments,void 0,function*(e="bigcommerce_payments",t){const n=`/api/storefront/initialization/${e}`,r=Object.assign({"X-API-INTERNAL":T,"Content-Type":x.Json},B);return(yield this.requestSender.get(n,Object.assign({headers:r},t))).body})}}var N=function(e,t,n,r){return new(n||(n=Promise))(function(i,o){function a(e){try{c(r.next(e))}catch(e){o(e)}}function s(e){try{c(r.throw(e))}catch(e){o(e)}}function c(e){var t;e.done?i(e.value):(t=e.value,t instanceof n?t:new n(function(e){e(t)})).then(a,s)}c((r=r.apply(e,t||[])).next())})};class D{constructor(e){this.scriptLoader=e,this.window=window}getPayPalSDK(e,t,n,r){return N(this,void 0,void 0,function*(){const i=this.getPayPalSdkScriptConfigOrThrow(e,t,n);return this.loadPayPalSDK(i,r)})}loadPayPalSDK(e){return N(this,arguments,void 0,function*(e,t=!1){if(!this.window.bigCommercePaymentsPayPalSDK||t){const t=this.transformConfig(e.options),n=this.transformConfig(e.attributes),r=`https://www.paypal.com/sdk/js?${new URLSearchParams(t).toString()}`;yield this.scriptLoader.loadScript(r,{async:!0,attributes:n})}if(!this.window.bigCommercePaymentsPayPalSDK)throw new o;return this.window.bigCommercePaymentsPayPalSDK})}getPayPalSdkScriptConfigOrThrow(t,n,r=!0){const{id:i,clientToken:o,initializationData:s}=t;if(!(null==s?void 0:s.clientId))throw new a(e.MissingPaymentMethod);const{intent:c,clientId:u,merchantId:l,buyerCountry:d,attributionId:h,isVenmoEnabled:p,isHostedCheckoutEnabled:f,isPayPalCreditAvailable:m,isDeveloperModeApplicable:y,availableAlternativePaymentMethods:g=[],enabledAlternativePaymentMethods:v=[],isGooglePayEnabled:_}=s,b=f||r,P="bigcommerce_payments_creditcards"===i,S=P?["card"]:[],w=P?[]:["card"],I=m?["credit","paylater"]:[],C=m?[]:["credit","paylater"],O=p?["venmo"]:[],A=p?[]:["venmo"],E=g.filter(e=>!v.includes(e)),k=_?["googlepay"]:[],z=r?["card-fields"]:[],T=this.filterFundingOptions([...w,...C,...A,...E]),j=this.filterFundingOptions([...S,...I,...O,...v]);return{options:Object.assign({"client-id":u,"merchant-id":l,"enable-funding":j.length>0?j:void 0,"disable-funding":T.length>0?T:void 0,commit:b,components:["buttons","hosted-fields","payment-fields","legal",...k,...z],currency:n,intent:c},y&&{"buyer-country":d}),attributes:{"data-partner-attribution-id":h,"data-client-token":o,"data-namespace":"bigCommercePaymentsPayPalSDK"}}}filterFundingOptions(e){const t=["klarna","afterpay"];return e?e.filter(e=>!t.includes(e)):[]}transformConfig(e){let t={};return Object.keys(e).forEach(n=>{const r=e[n];null==r||""===r||Array.isArray(r)&&0===r.length||(t=Object.assign(Object.assign({},t),{[n]:Array.isArray(r)?r.join(","):r}))}),t}}const U=e=>{const{getHost:n}=e.getState();return new z((0,m.createFormPoster)(),e,new F((0,y.createRequestSender)({host:n()})),new D((0,t.vQ)()))},R=function({styles:e}){const t={};return e.color&&(t.color=e.color),e.layout&&(t.layout=e.layout),(e["logo-type"]||e["logo-position"])&&(t.logo={},e["logo-type"]&&(t.logo.type=e["logo-type"]),e["logo-position"]&&(t.logo.position=e["logo-position"])),e.ratio&&(t.ratio=e.ratio),(e["text-color"]||e["text-size"])&&(t.text={},e["text-color"]&&(t.text.color=e["text-color"]),e["text-size"]&&(t.text.size=+e["text-size"])),t};class L extends i{constructor(e){super(e||"Invalid arguments have been provided."),this.name="InvalidArgumentError",this.type="invalid_argument"}}class V extends L{constructor(e){let t="Unable to submit payment for the order because the payload is invalid.";e&&(t=`${t} Make sure the following fields are provided correctly: ${e.join(", ")}.`),super(t),this.name="PaymentArgumentInvalidError"}}class G extends b{constructor(e){super(e,{message:"There is a problem processing your payment. Please try again later."}),this.name="PaymentMethodInvalidError",this.type="payment_method_invalid"}}class W extends i{constructor(){super("The current order does not need to be finalized at this stage."),this.name="OrderFinalizationNotRequiredError",this.type="order_finalization_not_required"}}function $(e){return!("object"!=typeof e||null===e||void 0!==e.shouldSaveInstrument&&"boolean"!=typeof e.shouldSaveInstrument||void 0!==e.shouldSetAsDefaultInstrument&&"boolean"!=typeof e.shouldSetAsDefaultInstrument)}function q(e){return Boolean(e.instrumentId)}function H(e){return"object"==typeof e&&null!==e&&"bigpayToken"in e&&"defaultInstrument"in e&&"provider"in e&&"trustedShippingAddress"in e&&"method"in e&&"type"in e}var K=function(e,t,n,r){return new(n||(n=Promise))(function(i,o){function a(e){try{c(r.next(e))}catch(e){o(e)}}function s(e){try{c(r.throw(e))}catch(e){o(e)}}function c(e){var t;e.done?i(e.value):(t=e.value,t instanceof n?t:new n(function(e){e(t)})).then(a,s)}c((r=r.apply(e,t||[])).next())})};class Y{constructor(e,t,n,r){this.paymentIntegrationService=e,this.bigCommercePaymentsIntegrationService=t,this.paypalSdkHelper=n,this.loadingIndicator=r}initialize(e){return K(this,void 0,void 0,function*(){const{methodId:t,bigcommerce_payments:n}=e||{};if(this.bigcommerce_payments=n,!t)throw new L('Unable to initialize payment because "options.methodId" argument is not provided.');if(!n)throw new L('Unable to initialize payment because "options.bigcommerce_payments" argument is not provided.');yield this.paymentIntegrationService.loadPaymentMethod(t);const r=this.paymentIntegrationService.getState(),i=r.getPaymentMethodOrThrow(t),{container:o,bannerContainerId:a}=n,{orderId:s,paypalBNPLConfiguration:c=[],isPayPalCreditAvailable:u}=i.initializationData||{};if(void 0!==a){if(!document.getElementById(a))return void console.error("Unable to create banner without valid banner container ID.");const e=null==c?void 0:c.find(({id:e})=>"checkout"===e);if(u||!(null==e?void 0:e.status))return;const t=yield this.paypalSdkHelper.getPayPalMessages(i,r.getCartOrThrow().currency.code);return t&&"function"==typeof(null==t?void 0:t.Messages)?this.renderMessages(t,a,e):void console.error("[BC PayPalCommerce PayLater]: banner could not be rendered, due to issues with loading PayPal SDK")}s?this.orderId=s:(this.loadingIndicatorContainer=null==o?void 0:o.split("#")[1],yield this.bigCommercePaymentsIntegrationService.loadPayPalSdk(t),n.onInit&&"function"==typeof n.onInit&&n.onInit(()=>this.renderButton(t,n)),(void 0===n.shouldRenderPayPalButtonOnInitialization||n.shouldRenderPayPalButtonOnInitialization)&&this.renderButton(t,n))})}execute(e,t){return K(this,void 0,void 0,function*(){const{payment:n}=e,r=function(e,t){var n={};for(var r in e)Object.prototype.hasOwnProperty.call(e,r)&&t.indexOf(r)<0&&(n[r]=e[r]);if(null!=e&&"function"==typeof Object.getOwnPropertySymbols){var i=0;for(r=Object.getOwnPropertySymbols(e);i<r.length;i++)t.indexOf(r[i])<0&&Object.prototype.propertyIsEnumerable.call(e,r[i])&&(n[r[i]]=e[r[i]])}return n}(e,["payment"]),{onError:i}=this.bigcommerce_payments||{};if(!n)throw new V(["payment"]);const{methodId:o,paymentData:a}=n;if(this.isPayPalVaultedInstrumentPaymentData(a)&&!this.orderId&&(this.orderId=yield this.createOrder()),!this.orderId)throw new G;const s=this.isPayPalVaultedInstrumentPaymentData(a)?this.prepareVaultedInstrumentPaymentPayload(o,this.orderId,a):this.preparePaymentPayload(o,this.orderId,a);try{yield this.paymentIntegrationService.submitOrder(r,t),yield this.paymentIntegrationService.submitPayment(s)}catch(e){return this.isProviderError(e)&&(yield this.bigCommercePaymentsIntegrationService.loadPayPalSdk(n.methodId),yield new Promise((e,t)=>{var r;this.bigcommerce_payments&&(null===(r=this.paypalButton)||void 0===r||r.close(),this.renderButton(n.methodId,this.bigcommerce_payments),this.handleError(new Error("INSTRUMENT_DECLINED"),i)),t()})),this.handleError(e,i),Promise.reject()}})}finalize(){return Promise.reject(new W)}deinitialize(){var e;return this.orderId=void 0,null===(e=this.paypalButton)||void 0===e||e.close(),Promise.resolve()}prepareVaultedInstrumentPaymentPayload(e,t,n){const{instrumentId:r,shouldSetAsDefaultInstrument:i}=n,o=!this.isTrustedVaultingFlow(n);return o?{methodId:e,paymentData:{shouldSaveInstrument:o,shouldSetAsDefaultInstrument:i,formattedPayload:{paypal_account:{order_id:t}}}}:{methodId:e,paymentData:{instrumentId:r,shouldSetAsDefaultInstrument:i,formattedPayload:{paypal_account:{order_id:t},bigpay_token:{token:r}}}}}preparePaymentPayload(e,t,n){const{shouldSaveInstrument:r=!1,shouldSetAsDefaultInstrument:i=!1}=$(n)?n:{};return{methodId:e,paymentData:{shouldSaveInstrument:r,shouldSetAsDefaultInstrument:i,formattedPayload:{paypal_account:{order_id:t}}}}}renderButton(e,t){const n=this.bigCommercePaymentsIntegrationService.getPayPalSdkOrThrow(),r=this.paymentIntegrationService.getState().getPaymentMethodOrThrow(e),{paymentButtonStyles:i}=r.initializationData||{},{checkoutPaymentButtonStyles:o}=i||{},{container:a,onError:s,onRenderButton:c,onValidate:u,submitForm:l}=t;if(!a)throw new L('Unable to initialize payment because "container" argument is not provided.');const d={fundingSource:n.FUNDING.PAYPAL,style:this.bigCommercePaymentsIntegrationService.getValidButtonStyle(o),createOrder:()=>this.createOrder(),onClick:(e,t)=>this.handleClick(t,u),onApprove:e=>this.handleApprove(e,l),onError:e=>this.handleError(e,s),onCancel:()=>this.toggleLoadingIndicator(!1)};this.paypalButton=n.Buttons(d),this.paypalButton.isEligible()&&(c&&"function"==typeof c&&c(),this.paypalButton.render(a))}handleClick(e,t){return K(this,void 0,void 0,function*(){const{resolve:n,reject:r}=e;yield null==t?void 0:t(()=>(this.toggleLoadingIndicator(!0),n()),r)})}handleApprove({orderID:e},t){this.orderId=e,null==t||t()}handleError(e,t){this.toggleLoadingIndicator(!1),t&&"function"==typeof t&&t(e)}createOrder(){return K(this,void 0,void 0,function*(){const e=this.getFieldsValues();return this.bigCommercePaymentsIntegrationService.createOrder("bigcommerce_paymentscheckout",{shouldSaveInstrument:(null==e?void 0:e.shouldSaveInstrument)||!1})})}getFieldsValues(){const{getFieldsValues:e}=this.bigcommerce_payments||{};return"function"==typeof e?e():void 0}isTrustedVaultingFlow(e){if(e&&q(e)){const t=this.paymentIntegrationService.getState().getInstruments(),n=null==t?void 0:t.find(t=>H(t)&&t.bigpayToken===e.instrumentId);return!(H(n)&&!n.trustedShippingAddress)}return!1}toggleLoadingIndicator(e){e&&this.loadingIndicatorContainer?this.loadingIndicator.show(this.loadingIndicatorContainer):this.loadingIndicator.hide()}isPayPalVaultedInstrumentPaymentData(e){return!!e&&q(e)&&$(e)}renderMessages(e,t,n){const r={amount:this.paymentIntegrationService.getState().getCheckoutOrThrow().outstandingBalance,placement:"payment",style:R(n)};e.Messages(r).render(`#${t}`)}isProviderError(e){var t,n,r;return!!function(e){return"object"==typeof e&&null!==e&&"errors"in e}(e)&&"INSTRUMENT_DECLINED"===(null===(r=null===(n=((null===(t=null==e?void 0:e.errors)||void 0===t?void 0:t.filter(e=>e.provider_error))||[])[0])||void 0===n?void 0:n.provider_error)||void 0===r?void 0:r.code)}}const Z=l(e=>new Y(e,U(e),u(),new p({containerStyles:f})),[{id:"bigcommerce_payments"}]);var J,Q,X,ee,te,ne,re,ie,oe;!function(e){e.CVV="cvv",e.PAN="pan"}(J||(J={}));class ae{static get(e){const t=`${encodeURIComponent(`${e}`)}=`,n=document.cookie;let r=null;const i=n.indexOf(t);if(i>-1){let e=n.indexOf(";",i);-1===e&&(e=n.length),r=decodeURIComponent(n.substring(i+t.length,e))}return r}static set(e,t,n={secure:!0}){let r=`${encodeURIComponent(e)}=${encodeURIComponent(t)}`;const{expires:i,path:o,domain:a,secure:s}=n;if(i)r+=`; expires=${i.toUTCString()}`;else{const e=new Date,t=60;e.setTime(e.getTime()+60*t*1e3),r+=`; expires=${e.toUTCString()}`}o&&(r+=`; path=${o}`),a&&(r+=`; domain=${a}`),s&&(r+="; secure"),document.cookie=r}static remove(e,t){ae.set(e,"",Object.assign({expires:new Date(0)},t))}}!function(e){e.AUTHORIZE="authorize",e.CAPTURE="capture"}(Q||(Q={})),function(e){e.Possible="POSSIBLE",e.No="NO",e.Unknown="UNKNOWN",e.Yes="YES"}(X||(X={})),function(e){e.Always="SCA_ALWAYS"}(ee||(ee={})),function(e){e.Succeeded="succeeded",e.Cancelled="cancelled",e.Errored="errored"}(te||(te={})),function(e){e.paypal="paypal",e.checkout="checkout",e.buynow="buynow",e.pay="pay",e.installment="installment"}(ne||(ne={})),function(e){e.gold="gold",e.blue="blue",e.silver="silver",e.black="black",e.white="white"}(re||(re={})),function(e){e.pill="pill",e.rect="rect"}(ie||(ie={})),function(e){e.SUCCEEDED="succeeded",e.FAILED="failed",e.CANCELED="canceled",e.UNRECOGNIZED="unrecognized"}(oe||(oe={}));var se=function(e,t,n,r){return new(n||(n=Promise))(function(i,o){function a(e){try{c(r.next(e))}catch(e){o(e)}}function s(e){try{c(r.throw(e))}catch(e){o(e)}}function c(e){var t;e.done?i(e.value):(t=e.value,t instanceof n?t:new n(function(e){e(t)})).then(a,s)}c((r=r.apply(e,t||[])).next())})};class ce{constructor(){this.window=window}initializePayPalFastlane(e,t,n){return se(this,void 0,void 0,function*(){if(t&&(window.localStorage.setItem("fastlaneEnv","sandbox"),window.localStorage.setItem("axoEnv","sandbox")),!this.window.bigCommercePaymentsFastlane){const t={root:{backgroundColorPrimary:"transparent"}};this.window.bigCommercePaymentsFastlane=yield e.Fastlane({styles:n||t})}return this.window.bigCommercePaymentsFastlane})}getPayPalFastlaneOrThrow(){if(!this.window.bigCommercePaymentsFastlane)throw new o;return this.window.bigCommercePaymentsFastlane}lookupCustomerOrThrow(e){return se(this,void 0,void 0,function*(){return this.getPayPalFastlaneOrThrow().identity.lookupCustomerByEmail(e)})}triggerAuthenticationFlowOrThrow(e){return se(this,void 0,void 0,function*(){return e?this.getPayPalFastlaneOrThrow().identity.triggerAuthenticationFlow(e):{}})}updateStorageSessionId(e){const t=new Date;t.setDate(t.getDate()+14);const n={expires:t,secure:!0};ae.set("bc-fastlane-sessionId",e,n)}removeStorageSessionId(){ae.remove("bc-fastlane-sessionId")}getStorageSessionId(){return ae.get("bc-fastlane-sessionId")||""}mapPayPalFastlaneProfileToBcCustomerData(e,t){var n,r,i;const{authenticationState:o,profileData:a}=t,s=null===(i=null===(r=null===(n=null==a?void 0:a.card)||void 0===n?void 0:n.paymentSource)||void 0===r?void 0:r.card)||void 0===i?void 0:i.billingAddress,c=null==a?void 0:a.shippingAddress,u=null==a?void 0:a.name,l=null==a?void 0:a.card,d=c?this.mapPayPalToBcAddress(c.address,c.name,c.phoneNumber):void 0,h=s&&u?this.mapPayPalToBcAddress(s,u,null==c?void 0:c.phoneNumber):void 0,p=l?this.mapPayPalToBcInstrument(e,l):[],f=this.filterAddresses([d,h]);return{authenticationState:o||oe.UNRECOGNIZED,addresses:f,billingAddress:h,shippingAddress:d,instruments:p}}mapPayPalToBcInstrument(e,t){const{id:n,paymentSource:r}=t,{brand:i,expiry:o,lastDigits:a}=r.card,[s,c]=o.split("-");return[{bigpayToken:n,brand:i,defaultInstrument:!1,expiryMonth:c,expiryYear:s,iin:"",last4:a,method:e,provider:e,trustedShippingAddress:!1,untrustedShippingCardVerificationMode:J.PAN,type:"card"}]}mapBcToPayPalAddress(e){return{company:(null==e?void 0:e.company)||"",addressLine1:(null==e?void 0:e.address1)||"",addressLine2:(null==e?void 0:e.address2)||"",adminArea1:(null==e?void 0:e.stateOrProvinceCode)||(null==e?void 0:e.stateOrProvince)||"",adminArea2:(null==e?void 0:e.city)||"",postalCode:(null==e?void 0:e.postalCode)||"",countryCode:(null==e?void 0:e.countryCode)||""}}mapPayPalToBcAddress(e,t,n,r){const[i,o]=t.fullName.split(" "),a=(null==n?void 0:n.nationalNumber)||"",s=(null==n?void 0:n.countryCode)||"";return{id:Date.now(),type:"paypal-address",firstName:t.firstName||i||"",lastName:t.lastName||o||"",company:e.company||"",address1:e.addressLine1,address2:e.addressLine2||"",city:e.adminArea2,stateOrProvince:e.adminArea1,stateOrProvinceCode:e.adminArea1,country:e.countryCode||"",countryCode:e.countryCode||"",postalCode:e.postalCode,phone:s+a,customFields:r||[]}}filterAddresses(e){return e.reduce((e,t)=>t?e.some(e=>this.isEqualAddresses(e,t))?e:[...e,t]:e,[])}isEqualAddresses(e,t){return(0,g.isEqual)(this.normalizeAddress(e),this.normalizeAddress(t))}normalizeAddress(e){return(0,g.omit)(e,["id","phone"])}}function ue(){return new ce}function le(e){return"string"!=typeof e}function de(e,t){if(t||e)return function(e){var t,n;const r={},i=(0,g.omitBy)(e.root,le),o=(0,g.omitBy)(e.input,le),a=(0,g.omitBy)(e.toggle,le),s=(0,g.omitBy)(null===(t=e.text)||void 0===t?void 0:t.body,le),c=(0,g.omitBy)(null===(n=e.text)||void 0===n?void 0:n.caption,le),u=e.branding;return Object.keys(i).length&&(r.root=i),Object.keys(o).length&&(r.input=o),Object.keys(a).length&&(r.toggle=a),Object.keys(s).length&&(r.text={},r.text.body=s),Object.keys(c).length&&(r.text=Object.assign({},r.text),r.text.caption=c),u&&(r.branding=u),r}(function(e,t){var n,r,i,o,a,s,c,u,l,d,h,p,f,m,y,g,v,_,b,P,S,w;return{root:{backgroundColorPrimary:(null==e?void 0:e.fastlaneRootSettingsBackgroundColor)||(null===(n=null==t?void 0:t.root)||void 0===n?void 0:n.backgroundColorPrimary),errorColor:(null==e?void 0:e.fastlaneRootSettingsErrorColor)||(null===(r=null==t?void 0:t.root)||void 0===r?void 0:r.errorColor),fontFamily:(null==e?void 0:e.fastlaneRootSettingsFontFamily)||(null===(i=null==t?void 0:t.root)||void 0===i?void 0:i.fontFamily),fontSizeBase:(null==e?void 0:e.fastlaneRootSettingsFontSize)||(null===(o=null==t?void 0:t.root)||void 0===o?void 0:o.fontSizeBase),padding:(null==e?void 0:e.fastlaneRootSettingsPadding)||(null===(a=null==t?void 0:t.root)||void 0===a?void 0:a.padding),primaryColor:(null==e?void 0:e.fastlaneRootSettingsPrimaryColor)||(null===(s=null==t?void 0:t.root)||void 0===s?void 0:s.primaryColor)},input:{borderRadius:(null==e?void 0:e.fastlaneInputSettingsBorderRadius)||(null===(c=null==t?void 0:t.input)||void 0===c?void 0:c.borderRadius),borderColor:(null==e?void 0:e.fastlaneInputSettingsBorderColor)||(null===(u=null==t?void 0:t.input)||void 0===u?void 0:u.borderColor),focusBorderColor:(null==e?void 0:e.fastlaneInputSettingsFocusBorderBase)||(null===(l=null==t?void 0:t.input)||void 0===l?void 0:l.focusBorderColor),backgroundColor:(null==e?void 0:e.fastlaneInputSettingsBackgroundColor)||(null===(d=null==t?void 0:t.input)||void 0===d?void 0:d.backgroundColor),borderWidth:(null==e?void 0:e.fastlaneInputSettingsBorderWidth)||(null===(h=null==t?void 0:t.input)||void 0===h?void 0:h.borderWidth),textColorBase:(null==e?void 0:e.fastlaneInputSettingsTextColorBase)||(null===(p=null==t?void 0:t.input)||void 0===p?void 0:p.textColorBase)},toggle:{colorPrimary:(null==e?void 0:e.fastlaneToggleSettingsColorPrimary)||(null===(f=null==t?void 0:t.toggle)||void 0===f?void 0:f.colorPrimary),colorSecondary:(null==e?void 0:e.fastlaneToggleSettingsColorSecondary)||(null===(m=null==t?void 0:t.toggle)||void 0===m?void 0:m.colorSecondary)},text:{body:{color:(null==e?void 0:e.fastlaneTextBodySettingsColor)||(null===(g=null===(y=null==t?void 0:t.text)||void 0===y?void 0:y.body)||void 0===g?void 0:g.color),fontSize:(null==e?void 0:e.fastlaneTextBodySettingsFontSize)||(null===(_=null===(v=null==t?void 0:t.text)||void 0===v?void 0:v.body)||void 0===_?void 0:_.fontSize)},caption:{color:(null==e?void 0:e.fastlaneTextCaptionSettingsColor)||(null===(P=null===(b=null==t?void 0:t.text)||void 0===b?void 0:b.caption)||void 0===P?void 0:P.color),fontSize:(null==e?void 0:e.fastlaneTextCaptionSettingsFontSize)||(null===(w=null===(S=null==t?void 0:t.text)||void 0===S?void 0:S.caption)||void 0===w?void 0:w.fontSize)}},branding:(null==e?void 0:e.fastlaneBrandingSettings)||(null==t?void 0:t.branding)}}(e,t))}function he(e){return!!e&&("authenticationState"in e||"addresses"in e||"instruments"in e)}function pe(e,t,n=!0){var r;return null!==(r=e[t])&&void 0!==r?r:n}var fe=function(e,t,n,r){return new(n||(n=Promise))(function(i,o){function a(e){try{c(r.next(e))}catch(e){o(e)}}function s(e){try{c(r.throw(e))}catch(e){o(e)}}function c(e){var t;e.done?i(e.value):(t=e.value,t instanceof n?t:new n(function(e){e(t)})).then(a,s)}c((r=r.apply(e,t||[])).next())})};class me{constructor(e,t,n,r){this.paymentIntegrationService=e,this.bigCommercePaymentsRequestSender=t,this.bigCommercePaymentsSdk=n,this.bigCommercePaymentsFastlaneUtils=r}initialize(e){return fe(this,void 0,void 0,function*(){var t,n;const{methodId:r,bigcommerce_payments_fastlane:i}=e;if(!r)throw new L('Unable to initialize payment because "options.methodId" argument is not provided.');if(this.methodId=r,!i)throw new L('Unable to initialize payment because "options.bigcommerce_payments_fastlane" argument is not provided.');if(this.bigcommerce_payments_fastlane=i,!i.onInit||"function"!=typeof i.onInit)throw new L('Unable to initialize payment because "options.bigcommerce_payments_fastlane.onInit" argument is not provided or it is not a function.');if(!i.onChange||"function"!=typeof i.onChange)throw new L('Unable to initialize payment because "options.bigcommerce_payments_fastlane.onChange" argument is not provided or it is not a function.');yield this.paymentIntegrationService.loadPaymentMethod(r);const o=this.paymentIntegrationService.getState(),a=o.getCartOrThrow(),s=o.getPaymentMethodOrThrow(r),{isDeveloperModeApplicable:c,isFastlaneStylingEnabled:u}=s.initializationData||{};this.threeDSVerificationMethod=null===(t=s.initializationData)||void 0===t?void 0:t.threeDSVerificationMethod,this.paypalFastlaneSdk=yield this.bigCommercePaymentsSdk.getPayPalFastlaneSdk(s,a.currency.code,a.id);const l=de(u?null===(n=null==s?void 0:s.initializationData)||void 0===n?void 0:n.fastlaneStyles:{},null==i?void 0:i.styles);yield this.bigCommercePaymentsFastlaneUtils.initializePayPalFastlane(this.paypalFastlaneSdk,!!c,l),this.shouldRunAuthenticationFlow()&&(yield this.runPayPalAuthenticationFlowOrThrow(r)),yield this.initializePayPalPaymentComponent(),i.onInit(e=>this.renderPayPalPaymentComponent(e)),i.onChange(()=>this.handlePayPalStoredInstrumentChange(r))})}execute(e,t){return fe(this,void 0,void 0,function*(){const{payment:n}=e,r=function(e,t){var n={};for(var r in e)Object.prototype.hasOwnProperty.call(e,r)&&t.indexOf(r)<0&&(n[r]=e[r]);if(null!=e&&"function"==typeof Object.getOwnPropertySymbols){var i=0;for(r=Object.getOwnPropertySymbols(e);i<r.length;i++)t.indexOf(r[i])<0&&Object.prototype.propertyIsEnumerable.call(e,r[i])&&(n[r[i]]=e[r[i]])}return n}(e,["payment"]);if(!n)throw new V(["payment"]);const{paymentData:i,methodId:o}=n,a=i&&q(i);try{yield this.paymentIntegrationService.submitOrder(r,t);const e=a?yield this.prepareVaultedInstrumentPaymentPayload(o,i):yield this.preparePaymentPayload(o,i);yield this.paymentIntegrationService.submitPayment(e),this.bigCommercePaymentsFastlaneUtils.removeStorageSessionId()}catch(e){if(function(e){return"object"==typeof e&&null!==e&&"message"in e&&"response"in e&&"name"in e.response}(e)&&"INVALID_REQUEST"===e.response.name){const e={translationKey:"payment.errors.invalid_request_error"};return this.handleError(e),Promise.reject()}if(e instanceof Error&&"FastlaneError"!==e.name)throw e;return Promise.reject()}})}finalize(){return Promise.reject(new W)}deinitialize(){return fe(this,void 0,void 0,function*(){return Promise.resolve()})}shouldRunAuthenticationFlow(){const e=this.paymentIntegrationService.getState(),t=e.getCartOrThrow(),n=e.getCustomerOrThrow(),r=e.getPaymentProviderCustomer(),i=he(r)?r:{},o=this.bigCommercePaymentsFastlaneUtils.getStorageSessionId();return!(!n.isGuest||(null==i?void 0:i.authenticationState)===oe.CANCELED||(null==i?void 0:i.authenticationState)||o!==t.id)}runPayPalAuthenticationFlowOrThrow(e){return fe(this,void 0,void 0,function*(){try{const t=this.paymentIntegrationService.getState(),n=t.getCartOrThrow(),r=t.getCustomer(),i=t.getBillingAddress(),o=(null==r?void 0:r.email)||(null==i?void 0:i.email)||"",{customerContextId:a}=yield this.bigCommercePaymentsFastlaneUtils.lookupCustomerOrThrow(o),s=yield this.bigCommercePaymentsFastlaneUtils.triggerAuthenticationFlowOrThrow(a),{authenticationState:c,addresses:u,instruments:l}=this.bigCommercePaymentsFastlaneUtils.mapPayPalFastlaneProfileToBcCustomerData(e,s);yield this.paymentIntegrationService.updatePaymentProviderCustomer({authenticationState:c,addresses:u,instruments:l}),s.authenticationState===oe.CANCELED?this.bigCommercePaymentsFastlaneUtils.removeStorageSessionId():this.bigCommercePaymentsFastlaneUtils.updateStorageSessionId(n.id)}catch(e){this.handleErrorLog(e)}})}initializePayPalPaymentComponent(){return fe(this,void 0,void 0,function*(){const e=this.paymentIntegrationService.getState().getBillingAddressOrThrow(),t=e.phone,n=`${e.firstName} ${e.lastName}`.trim(),r=this.bigCommercePaymentsFastlaneUtils.getPayPalFastlaneOrThrow(),i={fields:Object.assign({cardholderName:{prefill:n,enabled:!0}},t&&{phoneNumber:{prefill:t}})};this.paypalComponentMethods=yield r.FastlaneCardComponent(i)})}renderPayPalPaymentComponent(e){const t=this.getPayPalComponentMethodsOrThrow();if(!e)throw new L('Unable to render card component because "container" argument is not provided.');t.render(e)}getPayPalComponentMethodsOrThrow(){if(!this.paypalComponentMethods)throw new o;return this.paypalComponentMethods}prepareVaultedInstrumentPaymentPayload(e,t){return fe(this,void 0,void 0,function*(){const{instrumentId:n}=t,r=this.paymentIntegrationService.getState().getPaymentMethodOrThrow(e),i=this.isBigcommercePaymentsFastlaneThreeDSAvailable()&&r.config.is3dsEnabled?yield this.get3DSNonce(n):n;return yield this.createOrder(i),{methodId:e,paymentData:{formattedPayload:{paypal_fastlane_token:{order_id:this.orderId,token:i}}}}})}preparePaymentPayload(e,t){return fe(this,void 0,void 0,function*(){const n=this.paymentIntegrationService.getState(),r=n.getBillingAddressOrThrow(),i=n.getPaymentMethodOrThrow(e),o=`${r.firstName} ${r.lastName}`.trim(),{getPaymentToken:a}=this.getPayPalComponentMethodsOrThrow(),{id:s}=yield a({name:{fullName:o},billingAddress:this.bigCommercePaymentsFastlaneUtils.mapBcToPayPalAddress(r)}),c=this.isBigcommercePaymentsFastlaneThreeDSAvailable()&&i.config.is3dsEnabled,{shouldSaveInstrument:u=!1,shouldSetAsDefaultInstrument:l=!1}=$(t)?t:{},d=c?yield this.get3DSNonce(s):s;return yield this.createOrder(d),{methodId:e,paymentData:Object.assign(Object.assign({},t),{shouldSaveInstrument:u,shouldSetAsDefaultInstrument:l,formattedPayload:{paypal_fastlane_token:{order_id:this.orderId,token:d}}})}})}createOrder(e){return fe(this,void 0,void 0,function*(){const t=this.paymentIntegrationService.getState().getCartOrThrow().id;if(this.methodId){const{orderId:n}=yield this.bigCommercePaymentsRequestSender.createOrder(this.methodId,{cartId:t,fastlaneToken:e});this.orderId=n}})}get3DSNonce(e){return fe(this,void 0,void 0,function*(){var t;const n=this.paymentIntegrationService.getState(),r=n.getCartOrThrow(),i=n.getOrderOrThrow(),a=n.getStoreConfigOrThrow().links.checkoutLink,s=null===(t=this.paypalFastlaneSdk)||void 0===t?void 0:t.ThreeDomainSecureClient;if(!s)throw new o;const c={amount:i.orderAmount.toFixed(2),currency:r.currency.code,nonce:e,threeDSRequested:this.threeDSVerificationMethod===ee.Always,transactionContext:{experience_context:{locale:"en-US",return_url:a,cancel_url:a}}},u=yield s.isEligible(c);if(this.threeDSVerificationMethod===ee.Always&&!u)throw new G;if(u){const{liabilityShift:e,authenticationState:t,nonce:n}=yield s.show();if(e===S.No||e===S.Unknown||t===te.Errored||t===te.Cancelled)throw new G;if(t===te.Succeeded&&[S.Yes,S.Possible].includes(e))return n}return e})}handlePayPalStoredInstrumentChange(e){return fe(this,void 0,void 0,function*(){const t=this.bigCommercePaymentsFastlaneUtils.getPayPalFastlaneOrThrow(),{selectionChanged:n,selectedCard:r}=yield t.profile.showCardSelector();if(n){const t=this.paymentIntegrationService.getState().getPaymentProviderCustomer(),n=he(t)?t:{},i=this.bigCommercePaymentsFastlaneUtils.mapPayPalToBcInstrument(e,r)[0];return yield this.paymentIntegrationService.updatePaymentProviderCustomer(Object.assign(Object.assign({},n),{instruments:[i]})),i}})}isBigcommercePaymentsFastlaneThreeDSAvailable(){return pe(this.paymentIntegrationService.getState().getStoreConfigOrThrow().checkoutSettings.features,"PROJECT-7080.bcp_fastlane_three_ds")}handleError(e){var t;(null===(t=this.bigcommerce_payments_fastlane)||void 0===t?void 0:t.onError)&&"function"==typeof this.bigcommerce_payments_fastlane.onError&&this.bigcommerce_payments_fastlane.onError(e)}handleErrorLog(e){var t;(null===(t=this.bigcommerce_payments_fastlane)||void 0===t?void 0:t.onErrorLog)&&"function"==typeof this.bigcommerce_payments_fastlane.onErrorLog&&this.bigcommerce_payments_fastlane.onErrorLog(e)}}const ye=l(e=>{const{getHost:t}=e.getState();return new me(e,new F((0,y.createRequestSender)({host:t()})),u(),ue())},[{id:"bigcommerce_payments_fastlane"}]);class ge extends i{constructor(e){super(e||"Not implemented."),this.name="NotImplementedError",this.type="not_implemented"}}var ve=function(e,t,n,r){return new(n||(n=Promise))(function(i,o){function a(e){try{c(r.next(e))}catch(e){o(e)}}function s(e){try{c(r.throw(e))}catch(e){o(e)}}function c(e){var t;e.done?i(e.value):(t=e.value,t instanceof n?t:new n(function(e){e(t)})).then(a,s)}c((r=r.apply(e,t||[])).next())})};class _e{constructor(e,t,n,r){this.paymentIntegrationService=e,this.bigCommercePaymentsIntegrationService=t,this.loadingIndicator=n,this.paypalSdkHelper=r}initialize(e){return ve(this,void 0,void 0,function*(){const{methodId:t,bigcommerce_payments_paylater:n}=e||{};if(!t)throw new L('Unable to initialize payment because "options.methodId" argument is not provided.');if(!n)throw new L('Unable to initialize payment because "options.bigcommerce_payments_paylater" argument is not provided.');yield this.paymentIntegrationService.loadPaymentMethod(t);const r=this.paymentIntegrationService.getState(),i=r.getPaymentMethodOrThrow(t),{paypalBNPLConfiguration:o=[],orderId:a}=i.initializationData||{},{bannerContainerId:s,container:c}=n;if(void 0!==s){if(!document.getElementById(s))return void console.error("Unable to create banner without valid banner container ID.");const e=o&&o.find(({id:e})=>"checkout"===e);if(!(null==e?void 0:e.status))return;const t=yield this.paypalSdkHelper.getPayPalMessages(i,r.getCartOrThrow().currency.code);return this.renderMessages(t,s,e)}a?this.orderId=a:(yield this.bigCommercePaymentsIntegrationService.loadPayPalSdk(t),this.loadingIndicatorContainer=null==c?void 0:c.split("#")[1],this.renderButton(t,n))})}execute(e,t){return ve(this,void 0,void 0,function*(){const{payment:n}=e,r=function(e,t){var n={};for(var r in e)Object.prototype.hasOwnProperty.call(e,r)&&t.indexOf(r)<0&&(n[r]=e[r]);if(null!=e&&"function"==typeof Object.getOwnPropertySymbols){var i=0;for(r=Object.getOwnPropertySymbols(e);i<r.length;i++)t.indexOf(r[i])<0&&Object.prototype.propertyIsEnumerable.call(e,r[i])&&(n[r[i]]=e[r[i]])}return n}(e,["payment"]);if(!n)throw new V(["payment"]);if(!this.orderId)throw new G;yield this.paymentIntegrationService.submitOrder(r,t),yield this.bigCommercePaymentsIntegrationService.submitPayment(n.methodId,this.orderId)})}finalize(){return Promise.reject(new W)}deinitialize(){var e;return this.orderId=void 0,null===(e=this.bigCommercePaymentsButtons)||void 0===e||e.close(),Promise.resolve()}renderButton(e,t){if(!(null==t?void 0:t.container))throw new L('Unable to initialize payment because "container" argument is not provided.');const n=this.bigCommercePaymentsIntegrationService.getPayPalSdkOrThrow(),r=this.paymentIntegrationService.getState().getPaymentMethodOrThrow(e),{paymentButtonStyles:i}=r.initializationData||{},{checkoutPaymentButtonStyles:o}=i||{},{container:a,onError:s,onRenderButton:c,onValidate:u,submitForm:l}=t,d=[n.FUNDING.PAYLATER,n.FUNDING.CREDIT];let h=!1;d.forEach(e=>{if(h)return;const t={fundingSource:e,style:this.bigCommercePaymentsIntegrationService.getValidButtonStyle(o),createOrder:()=>this.bigCommercePaymentsIntegrationService.createOrder("bigcommerce_payments_paylater"),onClick:(e,t)=>this.handleClick(t,u),onApprove:e=>this.handleApprove(e,l),onCancel:()=>this.toggleLoadingIndicator(!1),onError:e=>this.handleError(e,s)};if(this.bigCommercePaymentsButtons=n.Buttons(t),this.bigCommercePaymentsButtons.isEligible()||e!==n.FUNDING.PAYLATER){if(!this.bigCommercePaymentsButtons.isEligible()&&e===n.FUNDING.CREDIT)throw new ge(`BigCommercePayments ${e} is not available for your region. Please use BigCommercePayments Checkout instead.`);c&&"function"==typeof c&&c(),this.bigCommercePaymentsButtons.render(a),h=!0}})}handleClick(e,t){return ve(this,void 0,void 0,function*(){const{resolve:n,reject:r}=e;t&&"function"==typeof t&&(yield t(()=>(this.toggleLoadingIndicator(!0),n()),r))})}handleApprove({orderID:e},t){this.orderId=e,t&&"function"==typeof t&&t()}handleError(e,t){this.toggleLoadingIndicator(!1),t&&"function"==typeof t&&t(e)}toggleLoadingIndicator(e){e&&this.loadingIndicatorContainer?this.loadingIndicator.show(this.loadingIndicatorContainer):this.loadingIndicator.hide()}renderMessages(e,t,n){const r={amount:this.paymentIntegrationService.getState().getCheckoutOrThrow().outstandingBalance,placement:"payment",style:R(n)};e.Messages(r).render(`#${t}`)}}const be=l(e=>new _e(e,U(e),new p({containerStyles:f}),u()),[{id:"bigcommerce_payments_paylater"}]);class Pe extends b{constructor(e){super(e,{message:"The request has timed out or aborted."}),this.name="TimeoutError",this.type="timeout"}}var Se=function(e,t,n,r){return new(n||(n=Promise))(function(i,o){function a(e){try{c(r.next(e))}catch(e){o(e)}}function s(e){try{c(r.throw(e))}catch(e){o(e)}}function c(e){var t;e.done?i(e.value):(t=e.value,t instanceof n?t:new n(function(e){e(t)})).then(a,s)}c((r=r.apply(e,t||[])).next())})};class we{constructor(e,t,n,r=3e3,i=3e5){this.paymentIntegrationService=e,this.bigCommercePaymentsIntegrationService=t,this.loadingIndicator=n,this.pollingInterval=r,this.maxPollingIntervalTime=i,this.pollingTimer=0,this.stopPolling=g.noop}initialize(e){return Se(this,void 0,void 0,function*(){const{gatewayId:t,methodId:n,bigcommerce_payments_ratepay:r}=e;if(!n)throw new L('Unable to initialize payment because "options.methodId" argument is not provided.');if(!t)throw new L('Unable to initialize payment because "options.gatewayId" argument is not provided.');if(!r)throw new L('Unable to initialize payment because "options.bigcommerce_payments_ratepay" argument is not provided.');const{legalTextContainer:i,container:o,loadingContainerId:a}=r;if(!o)throw new L('Unable to initialize payment because "options.container" argument is not provided.');if(!i)throw new L('Unable to initialize payment because "options.legalTextContainer" argument is not provided.');if(!a)throw new L('Unable to initialize payment because "options.loadingContainerId" argument is not provided.');this.loadingIndicatorContainer=a;const s=this.paymentIntegrationService.getState().getPaymentMethodOrThrow(n,t),{merchantId:c}=s.initializationData||{};if(!c)throw new L("Unable to initialize payment because merchantId argument is not provided.");this.bigcommerce_payments_ratepay=r,yield this.bigCommercePaymentsIntegrationService.loadPayPalSdk(n),this.createFraudNetScript(c,n,t),this.loadFraudnetConfig(),this.renderLegalText(i,o)})}execute(e,t){return Se(this,void 0,void 0,function*(){const{payment:n}=e,r=function(e,t){var n={};for(var r in e)Object.prototype.hasOwnProperty.call(e,r)&&t.indexOf(r)<0&&(n[r]=e[r]);if(null!=e&&"function"==typeof Object.getOwnPropertySymbols){var i=0;for(r=Object.getOwnPropertySymbols(e);i<r.length;i++)t.indexOf(r[i])<0&&Object.prototype.propertyIsEnumerable.call(e,r[i])&&(n[r[i]]=e[r[i]])}return n}(e,["payment"]),{getFieldsValues:i}=this.bigcommerce_payments_ratepay||{};if(!n)throw new V(["payment"]);if(!i||"function"!=typeof i)throw new L('Unable to initialize payment because "options.getFieldsValues" argument is not provided.');this.toggleLoadingIndicator(!0);try{const e=yield this.bigCommercePaymentsIntegrationService.createOrder("bigcommerce_payments_apmscheckout",{metadataId:this.guid}),{ratepayBirthDate:o,ratepayPhoneNumber:a,ratepayPhoneCountryCode:s}=i(),c={formattedPayload:{vault_payment_instrument:null,set_as_default_stored_instrument:null,device_info:null,method_id:n.methodId,rate_pay:{birth_date:this.normalizeDate(o),phone:{national_number:a,country_code:s.split("+")[1]}},paypal_account:{order_id:e}}};return yield this.paymentIntegrationService.submitOrder(r,t),yield this.paymentIntegrationService.submitPayment({methodId:n.methodId,paymentData:c}),yield new Promise((e,t)=>{this.initializePollingMechanism(n.methodId,e,t,n.gatewayId)})}catch(e){return this.handleError(e),new Promise((e,t)=>t())}})}finalize(){return Promise.reject(new W)}deinitialize(){const{legalTextContainer:e}=this.bigcommerce_payments_ratepay||{},t=document.querySelectorAll('[data-id="fraudnetScript"]')[0],n=document.querySelectorAll('[data-id="fraudnetConfig"]')[0];if(this.deinitializePollingMechanism(),t.remove(),n.remove(),e){const t=document.getElementById(e);null==t||t.remove()}return Promise.resolve()}normalizeDate(e){const t=this.formatDate(e.getDate()),n=this.formatDate(e.getMonth()+1);return`${e.getFullYear()}-${n}-${t}`}formatDate(e){return`${e<10?0:""}${e}`}renderLegalText(e,t){const n=e,r=t.split("#")[1],i=document.getElementById(r),o=null==i?void 0:i.parentNode,a=document.createElement("div");a.style.marginBottom="20px",a.setAttribute("id",n),null==o||o.prepend(a);const s=this.bigCommercePaymentsIntegrationService.getPayPalSdkOrThrow(),c=s.Legal({fundingSource:s.Legal.FUNDING.PAY_UPON_INVOICE});if(!document.getElementById(n))throw new L('Unable to initialize payment because "legalTextContainerElement" argument is not found.');c.render(`#${n}`)}handleError(e){const{onError:t}=this.bigcommerce_payments_ratepay||{};this.resetPollingMechanism(),this.toggleLoadingIndicator(!1),t&&"function"==typeof t&&t(e)}createFraudNetScript(e,t,n){const r=this.paymentIntegrationService.getState().getPaymentMethodOrThrow(t,n),{testMode:i}=r.config,o=document.createElement("script");o.setAttribute("type","application/json"),o.setAttribute("fncls","fnparams-dede7cc5-15fd-4c75-a9f4-36c430ee3a99"),o.setAttribute("data-id","fraudnetScript"),this.guid=this.generateGUID();const a={f:this.guid,s:`${e}_checkout-page`,sandbox:i};o.innerHTML=JSON.stringify(a),document.body.appendChild(o)}generateGUID(){let e="";for(let t=0;t<32;t+=1)e+="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789"[Math.floor(62*Math.random())];return e}loadFraudnetConfig(){const e=document.createElement("script");e.setAttribute("data-id","fraudnetConfig"),e.src="https://c.paypal.com/da/r/fb.js",document.body.appendChild(e)}reinitializeStrategy(e){return Se(this,void 0,void 0,function*(){yield this.deinitialize(),yield this.initialize(e)})}initializePollingMechanism(e,t,n,r){return Se(this,void 0,void 0,function*(){yield new Promise((e,t)=>{const n=setTimeout(e,this.pollingInterval);this.stopPolling=()=>(clearTimeout(n),this.toggleLoadingIndicator(!1),t())});try{this.pollingTimer+=this.pollingInterval;const i=yield this.bigCommercePaymentsIntegrationService.getOrderStatus("bigcommerce_payments_apms",{params:{useMetadata:!0}}),o=i===E.PollingStop,a=i===E.PollingError;if(o)return this.deinitializePollingMechanism(),t();if(a)return n();if(!o&&this.pollingTimer<this.maxPollingIntervalTime)return yield this.initializePollingMechanism(e,t,n,r);yield this.reinitializeStrategy({methodId:e,gatewayId:r,bigcommerce_payments_ratepay:this.bigcommerce_payments_ratepay}),this.handleError(new Pe)}catch(e){this.handleError(e),n()}})}deinitializePollingMechanism(){this.stopPolling(),this.pollingTimer=0}resetPollingMechanism(){this.deinitializePollingMechanism()}toggleLoadingIndicator(e){e&&this.loadingIndicatorContainer?this.loadingIndicator.show(this.loadingIndicatorContainer):this.loadingIndicator.hide()}}const Ie=l(e=>new we(e,U(e),new p({containerStyles:Object.assign(Object.assign({},f),{position:"fixed"})})),[{gateway:"bigcommerce_payments_apms",id:"ratepay"}]);var Ce;!function(e){e.CardCode="cardCode",e.CardCodeVerification="cardCodeVerification",e.CardExpiry="cardExpiry",e.CardName="cardName",e.CardNumber="cardNumber",e.CardNumberVerification="cardNumberVerification",e.CardExpiryVerification="cardExpiryVerification"}(Ce||(Ce={}));const Oe=Ce;function Ae(e){return Oe.CardNumber in e&&Oe.CardName in e&&Oe.CardExpiry in e}function Ee(e){return Oe.CardNumberVerification in e&&Oe.CardCodeVerification in e&&Oe.CardExpiryVerification in e}class ke extends i{constructor(e){super(e||"Unable to proceed because the client library of a payment method has thrown an unexpected error."),this.name="PaymentMethodFailedError",this.type="payment_method_client_invalid"}}var ze;!function(e){e[e.CheckoutButtonNotInitialized=0]="CheckoutButtonNotInitialized",e[e.CustomerNotInitialized=1]="CustomerNotInitialized",e[e.PaymentNotInitialized=2]="PaymentNotInitialized",e[e.ShippingNotInitialized=3]="ShippingNotInitialized",e[e.SpamProtectionNotInitialized=4]="SpamProtectionNotInitialized"}(ze||(ze={}));class Te extends i{constructor(e){super(function(e){switch(e){case ze.CustomerNotInitialized:return"Unable to proceed because the customer step of checkout has not been initialized.";case ze.PaymentNotInitialized:return"Unable to proceed because the payment step of checkout has not been initialized.";case ze.ShippingNotInitialized:return"Unable to proceed because the shipping step of checkout has not been initialized.";case ze.SpamProtectionNotInitialized:return"Unable to proceed because the checkout spam protection has not been initialized.";default:return"Unable to proceed because the required component has not been initialized."}}(e)),this.subtype=e,this.name="NotInitializedError",this.type="not_initialized"}}class je extends i{constructor(e,t){super(t||"Unable to proceed because the payment form contains invalid data."),this.details=e,this.name="PaymentInvalidFormError",this.type="payment_invalid_form"}}var xe=function(e,t,n,r){return new(n||(n=Promise))(function(i,o){function a(e){try{c(r.next(e))}catch(e){o(e)}}function s(e){try{c(r.throw(e))}catch(e){o(e)}}function c(e){var t;e.done?i(e.value):(t=e.value,t instanceof n?t:new n(function(e){e(t)})).then(a,s)}c((r=r.apply(e,t||[])).next())})};class Be{constructor(e,t,n,r){this.paymentIntegrationService=e,this.bigCommercePaymentsIntegrationService=t,this.bigCommercePaymentsSdk=n,this.bigCommercePaymentsFastlaneUtils=r}initialize(e){return xe(this,void 0,void 0,function*(){const{methodId:t,bigcommerce_payments_creditcards:n}=e,r=n,{form:i,onCreditCardFieldsRenderingError:o,onLoadComplete:a}=r||{};if(!t)throw new L('Unable to initialize payment because "options.methodId" argument is not provided.');if(!i)throw new L('Unable to proceed because "options.bigcommerce_payments_creditcards.form" argument is not provided.');this.hostedFormOptions=i,this.isCreditCardForm=Ae(i.fields),this.isCreditCardVaultedForm=Ee(i.fields)&&!this.hasUndefinedValues(),yield this.paymentIntegrationService.loadPaymentMethod(t),yield this.bigCommercePaymentsIntegrationService.loadPayPalSdk(t,void 0,!0,!0),(this.isCreditCardForm||this.isCreditCardVaultedForm)&&(yield this.initializeFields(i,o)),null==a||a(),this.shouldInitializePayPalFastlane(t)&&(yield this.initializePayPalFastlaneOrThrow(t))})}execute(e,t){return xe(this,void 0,void 0,function*(){const{payment:n}=e,r=function(e,t){var n={};for(var r in e)Object.prototype.hasOwnProperty.call(e,r)&&t.indexOf(r)<0&&(n[r]=e[r]);if(null!=e&&"function"==typeof Object.getOwnPropertySymbols){var i=0;for(r=Object.getOwnPropertySymbols(e);i<r.length;i++)t.indexOf(r[i])<0&&Object.prototype.propertyIsEnumerable.call(e,r[i])&&(n[r[i]]=e[r[i]])}return n}(e,["payment"]),{methodId:i,paymentData:o}=n||{};if(!n||!i)throw new V(["payment"]);if(this.executionPaymentData=o,this.isCreditCardForm||this.isCreditCardVaultedForm)yield this.validateHostedFormOrThrow(),yield this.submitHostedForm();else{const{orderId:e}=yield this.bigCommercePaymentsIntegrationService.createOrderCardFields("bigcommerce_payments_creditcardscheckout",this.getInstrumentParams());this.returnedOrderId=e}const a=this.preparePaymentPayload(i,o,this.returnedOrderId,this.returnedVaultedToken);yield this.paymentIntegrationService.submitOrder(r,t),yield this.paymentIntegrationService.submitPayment(a)})}finalize(){return Promise.reject(new W)}deinitialize(){return xe(this,void 0,void 0,function*(){var e,t,n,r;return yield null===(e=this.cvvField)||void 0===e?void 0:e.close(),yield null===(t=this.expiryField)||void 0===t?void 0:t.close(),yield null===(n=this.numberField)||void 0===n?void 0:n.close(),yield null===(r=this.nameField)||void 0===r?void 0:r.close(),Promise.resolve()})}preparePaymentPayload(e,t,n,r){const{shouldSaveInstrument:i=!1,shouldSetAsDefaultInstrument:o=!1}=$(t)?t:{},a=t&&q(t)?t.instrumentId:void 0,s=(0,g.omitBy)({verification_nonce:r,token:a},g.isNil);return{methodId:e,paymentData:{shouldSaveInstrument:i,shouldSetAsDefaultInstrument:o,instrumentId:a,formattedPayload:Object.assign(Object.assign({},r||a?{bigpay_token:s}:{}),n?{card_with_order:{order_id:n}}:{})}}}initializeFields(e,t){return xe(this,void 0,void 0,function*(){const{fields:n,styles:r}=e,i=this.bigCommercePaymentsIntegrationService.getPayPalSdkOrThrow(),o=this.getExecuteCallback(n),a=Object.assign({style:this.getInputStyles(r),onApprove:({orderID:e,vaultSetupToken:t,liabilityShift:n})=>{if(n===S.No||n===S.Unknown)throw new Error;return this.handleApprove({orderID:e,vaultSetupToken:t})},onError:()=>{throw new ke},inputEvents:{onChange:t=>this.onChangeHandler(e,t),onFocus:t=>this.onFocusHandler(e,t),onBlur:t=>this.onBlurHandler(e,t),onInputSubmitRequest:t=>this.onInputSubmitRequest(e,t)}},o);if(this.cardFields=yield i.CardFields(a),!this.cardFields.isEligible())throw new Te(ze.PaymentNotInitialized);try{this.stylizeInputContainers(n),Ae(n)&&(yield this.renderFields(n)),Ee(n)&&(yield this.renderVaultedFields(n))}catch(e){"function"==typeof t&&t(e)}})}getExecuteCallback(e){return Ee(e)?this.createVaultSetupTokenCallback():this.createOrderCallback()}createVaultSetupTokenCallback(){return{createVaultSetupToken:()=>xe(this,void 0,void 0,function*(){const{setupToken:e}=(yield this.bigCommercePaymentsIntegrationService.createOrderCardFields("bigcommerce_payments_creditcardscheckout",Object.assign(Object.assign({},this.getInstrumentParams()),{setupToken:!0})))||{};return e})}}createOrderCallback(){return{createOrder:()=>xe(this,void 0,void 0,function*(){const{orderId:e}=(yield this.bigCommercePaymentsIntegrationService.createOrderCardFields("bigcommerce_payments_creditcardscheckout",this.getInstrumentParams()))||{};return e})}}handleApprove({orderID:e,vaultSetupToken:t}){e&&(this.returnedOrderId=e),t&&(this.returnedVaultedToken=t)}renderFields(e){return xe(this,void 0,void 0,function*(){var t,n,r,i;const o=this.getCardFieldsOrThrow();(null===(t=e.cardCode)||void 0===t?void 0:t.containerId)&&(this.cvvField=o.CVVField({placeholder:""}),yield this.cvvField.render(`#${e.cardCode.containerId}`)),(null===(n=e.cardExpiry)||void 0===n?void 0:n.containerId)&&(this.expiryField=o.ExpiryField(),yield this.expiryField.render(`#${e.cardExpiry.containerId}`)),(null===(r=e.cardName)||void 0===r?void 0:r.containerId)&&(this.nameField=o.NameField({placeholder:""}),yield this.nameField.render(`#${e.cardName.containerId}`)),(null===(i=e.cardNumber)||void 0===i?void 0:i.containerId)&&(this.numberField=o.NumberField({placeholder:""}),yield this.numberField.render(`#${e.cardNumber.containerId}`))})}renderVaultedFields(e){return xe(this,void 0,void 0,function*(){var t,n,r;const i=this.getCardFieldsOrThrow();(null===(t=e.cardCodeVerification)||void 0===t?void 0:t.containerId)&&(this.cvvField=i.CVVField({placeholder:""}),yield this.cvvField.render(`#${e.cardCodeVerification.containerId}`)),(null===(n=e.cardExpiryVerification)||void 0===n?void 0:n.containerId)&&(this.expiryField=i.ExpiryField(),yield this.expiryField.render(`#${e.cardExpiryVerification.containerId}`)),(null===(r=e.cardNumberVerification)||void 0===r?void 0:r.containerId)&&(this.numberField=i.NumberField({placeholder:""}),yield this.numberField.render(`#${e.cardNumberVerification.containerId}`))})}getInstrumentParams(){if(!this.executionPaymentData)return{};if($(this.executionPaymentData)){const{shouldSaveInstrument:e,shouldSetAsDefaultInstrument:t}=this.executionPaymentData;return{shouldSaveInstrument:e,shouldSetAsDefaultInstrument:t}}if(q(this.executionPaymentData)){const{instrumentId:e}=this.executionPaymentData;return{instrumentId:e}}return{}}getFieldTypeByEmittedField({emittedBy:e}){return{fieldType:this.mapFieldType(e)}}submitHostedForm(){return xe(this,void 0,void 0,function*(){const e=this.getCardFieldsOrThrow(),t=this.paymentIntegrationService.getState().getBillingAddressOrThrow(),n={billingAddress:{company:t.company,addressLine1:t.address1,addressLine2:t.address2,adminArea1:t.stateOrProvinceCode,adminArea2:t.city,postalCode:t.postalCode,countryCode:t.countryCode}};try{this.isCreditCardVaultedForm?yield e.submit():yield e.submit(n)}catch(e){throw new ke("Failed authentication. Please try to authorize again.")}})}validateHostedFormOrThrow(){return xe(this,void 0,void 0,function*(){var e,t;const n=this.getCardFieldsOrThrow(),r=yield n.getState().then(e=>e),i=this.getValidityData(r);if(!i.isValid)throw null===(t=null===(e=this.hostedFormOptions)||void 0===e?void 0:e.onValidate)||void 0===t||t.call(e,i),new je(this.mapValidationErrors(i.errors))})}getValidityData({fields:e}){const t=Object.assign({},e);delete t.cardNameField;const n=Object.keys(t);return{isValid:n.every(e=>{var n;return null===(n=t[e])||void 0===n?void 0:n.isValid}),errors:n.reduce((e,n)=>{var r;const i=this.mapFieldType(n);return Object.assign(Object.assign({},e),{[i]:(null===(r=t[n])||void 0===r?void 0:r.isValid)?void 0:[this.getInvalidErrorByFieldType(i)]})},{})}}getInvalidErrorByFieldType(e){switch(e){case Oe.CardCode:case Oe.CardCodeVerification:return{fieldType:e,message:"Invalid card code",type:"invalid_card_code"};case Oe.CardNumber:case Oe.CardNumberVerification:return{fieldType:e,message:"Invalid card number",type:"invalid_card_number"};case Oe.CardExpiry:case Oe.CardExpiryVerification:return{fieldType:e,message:"Invalid card expiry",type:"invalid_card_expiry"};default:return{fieldType:e,message:"Invalid field",type:"invalid"}}}mapValidationErrors(e={}){const t={};return Object.keys(e).forEach(n=>{var r,i;t[n]=[{message:(null===(i=null===(r=e[n])||void 0===r?void 0:r[0])||void 0===i?void 0:i.message)||"",type:n}]}),t}mapFieldType(e){switch(e){case"name":return Oe.CardName;case"cardNumberField":case"number":return this.isCreditCardForm?Oe.CardNumber:Oe.CardNumberVerification;case"cardExpiryField":case"expiry":return this.isCreditCardForm?Oe.CardExpiry:Oe.CardExpiryVerification;case"cardCvvField":case"cvv":return this.isCreditCardForm?Oe.CardCode:Oe.CardCodeVerification;default:throw new Error("Unexpected field type")}}getCardFieldsOrThrow(){if(!this.cardFields)throw new Te(ze.PaymentNotInitialized);return this.cardFields}getInputStyles(e){var t,n,r;const i={"font-size":(null===(t=null==e?void 0:e.default)||void 0===t?void 0:t.fontSize)||"1rem","font-family":(null===(n=null==e?void 0:e.default)||void 0===n?void 0:n.fontFamily)||"Montserrat, Arial, Helvetica, sans-serif","font-weight":(null===(r=null==e?void 0:e.default)||void 0===r?void 0:r.fontWeight)||"400",outline:"none",padding:"9px 13px"},o=Object.assign(Object.assign({},i),{color:"#333333"});return{input:o,".invalid":Object.assign(Object.assign({},i),{color:"red"}),".valid":o,":focus":o}}stylizeInputContainers(e){Object.values(e||{}).forEach(e=>{const t=document.getElementById(`${(null==e?void 0:e.containerId)||""}`);t&&(t.style.padding="0px",t.style.boxShadow="none",t.style.border="none",t.style.background="transparent",t.style.marginBottom="10px",t.style.marginLeft="-5px")})}hasUndefinedValues(){return!this.hostedFormOptions||Object.values(this.hostedFormOptions.fields).some(e=>void 0===e)}onChangeHandler(e,t){var n;null===(n=null==e?void 0:e.onValidate)||void 0===n||n.call(e,this.getValidityData(t))}onFocusHandler(e,t){var n;null===(n=null==e?void 0:e.onFocus)||void 0===n||n.call(e,this.getFieldTypeByEmittedField(t))}onBlurHandler(e,t){var n;null===(n=null==e?void 0:e.onBlur)||void 0===n||n.call(e,this.getFieldTypeByEmittedField(t))}onInputSubmitRequest(e,t){var n;null===(n=null==e?void 0:e.onEnter)||void 0===n||n.call(e,this.getFieldTypeByEmittedField(t))}shouldInitializePayPalFastlane(e){var t,n;const r=this.paymentIntegrationService.getState(),i=r.getPaymentMethodOrThrow(e),o=r.getPaymentProviderCustomer(),a=(s=o)&&("authenticationState"in s||"addresses"in s||"instruments"in s)?o:{};var s;return(null===(t=null==i?void 0:i.initializationData)||void 0===t?void 0:t.isAcceleratedCheckoutEnabled)&&(null===(n=null==i?void 0:i.initializationData)||void 0===n?void 0:n.isBigCommercePaymentsAnalyticsV2Enabled)&&!(null==a?void 0:a.authenticationState)}initializePayPalFastlaneOrThrow(e){return xe(this,void 0,void 0,function*(){try{const t=this.paymentIntegrationService.getState(),n=t.getCartOrThrow(),r=t.getPaymentMethodOrThrow(e),{initializationData:i}=r;if(!(null==i?void 0:i.connectClientToken))return;const o=yield this.bigCommercePaymentsSdk.getPayPalFastlaneSdk(r,n.currency.code,n.id);yield this.bigCommercePaymentsFastlaneUtils.initializePayPalFastlane(o,!!(null==i?void 0:i.isDeveloperModeApplicable))}catch(e){}})}}const Me=l(e=>new Be(e,U(e),u(),ue()),[{id:"bigcommerce_payments_creditcards"}]);var Fe=function(e,t,n,r){return new(n||(n=Promise))(function(i,o){function a(e){try{c(r.next(e))}catch(e){o(e)}}function s(e){try{c(r.throw(e))}catch(e){o(e)}}function c(e){var t;e.done?i(e.value):(t=e.value,t instanceof n?t:new n(function(e){e(t)})).then(a,s)}c((r=r.apply(e,t||[])).next())})};class Ne{constructor(e){this.paymentIntegrationService=e}initialize(){return Fe(this,void 0,void 0,function*(){return Promise.resolve()})}execute(e,t){return Fe(this,void 0,void 0,function*(){const{payment:n}=e,r=function(e,t){var n={};for(var r in e)Object.prototype.hasOwnProperty.call(e,r)&&t.indexOf(r)<0&&(n[r]=e[r]);if(null!=e&&"function"==typeof Object.getOwnPropertySymbols){var i=0;for(r=Object.getOwnPropertySymbols(e);i<r.length;i++)t.indexOf(r[i])<0&&Object.prototype.propertyIsEnumerable.call(e,r[i])&&(n[r[i]]=e[r[i]])}return n}(e,["payment"]),{methodId:i}=n||{};if(!n||!i)throw new V(["payment"]);const o={methodId:i,paymentData:{formattedPayload:{}}};yield this.paymentIntegrationService.submitOrder(r,t),yield this.paymentIntegrationService.submitPayment(o)})}finalize(){return Promise.reject(new W)}deinitialize(){return Promise.resolve()}}const De=l(e=>new Ne(e),[{id:"bigcommerce_payments_invoices"}]);var Ue=function(e,t,n,r){return new(n||(n=Promise))(function(i,o){function a(e){try{c(r.next(e))}catch(e){o(e)}}function s(e){try{c(r.throw(e))}catch(e){o(e)}}function c(e){var t;e.done?i(e.value):(t=e.value,t instanceof n?t:new n(function(e){e(t)})).then(a,s)}c((r=r.apply(e,t||[])).next())})};class Re{constructor(e,t,n,r,i=3e3,o=3e5){this.paymentIntegrationService=e,this.bigCommercePaymentsIntegrationService=t,this.bigCommercePaymentsSdkHelper=n,this.loadingIndicator=r,this.pollingInterval=i,this.maxPollingIntervalTime=o,this.pollingTimer=0,this.stopPolling=g.noop,this.isPollingEnabled=!1}initialize(e){return Ue(this,void 0,void 0,function*(){const{gatewayId:t,methodId:n,bigcommerce_payments_apms:r}=e;if(this.bigCommercePaymentsAlternativeMethods=r,!n)throw new L('Unable to initialize payment because "options.methodId" argument is not provided.');if(!t)throw new L('Unable to initialize payment because "options.gatewayId" argument is not provided.');if(!r)throw new L('Unable to initialize payment because "options.bigcommerce_payments_apms" argument is not provided.');const i=this.paymentIntegrationService.getState(),o=i.getPaymentMethodOrThrow(n,t),{orderId:a,shouldRenderFields:s}=o.initializationData||{},c=i.getStoreConfigOrThrow().checkoutSettings.features;this.isPollingEnabled=pe(c,"PAYPAL-5624.bcp_ideal_polling"),a?this.orderId=a:(this.paypalApms=yield this.bigCommercePaymentsSdkHelper.getPayPalApmsSdk(o,i.getCartOrThrow().currency.code),this.loadingIndicatorContainer=r.container.split("#")[1],this.renderButton(n,t,r),s&&this.renderFields(n,r))})}execute(e,t){return Ue(this,void 0,void 0,function*(){const{payment:n}=e,r=function(e,t){var n={};for(var r in e)Object.prototype.hasOwnProperty.call(e,r)&&t.indexOf(r)<0&&(n[r]=e[r]);if(null!=e&&"function"==typeof Object.getOwnPropertySymbols){var i=0;for(r=Object.getOwnPropertySymbols(e);i<r.length;i++)t.indexOf(r[i])<0&&Object.prototype.propertyIsEnumerable.call(e,r[i])&&(n[r[i]]=e[r[i]])}return n}(e,["payment"]);if(!n)throw new V(["payment"]);const{methodId:i,gatewayId:o}=n;if(!this.orderId)throw new G;this.isPollingEnabled&&"ideal"===i&&(yield new Promise((e,t)=>{this.initializePollingMechanism(i,e,t,o)})),this.isNonInstantPaymentMethod(i)||(yield this.paymentIntegrationService.submitOrder(r,t)),yield this.bigCommercePaymentsIntegrationService.submitPayment(i,this.orderId,o)})}finalize(){return Promise.reject(new W)}deinitialize(){var e;return this.orderId=void 0,this.isPollingEnabled&&this.resetPollingMechanism(),null===(e=this.bigCommercePaymentsButton)||void 0===e||e.close(),Promise.resolve()}initializePollingMechanism(e,t,n,r){return Ue(this,void 0,void 0,function*(){yield new Promise((e,t)=>{const n=setTimeout(e,this.pollingInterval);this.stopPolling=()=>(clearTimeout(n),this.toggleLoadingIndicator(!1),t())});try{this.pollingTimer+=this.pollingInterval;const i=yield this.bigCommercePaymentsIntegrationService.getOrderStatus(r),o=i===E.Approved,a=i===E.PollingError;if(o)return this.deInitializePollingMechanism(),t();if(a)return n();if(!o&&this.pollingTimer<this.maxPollingIntervalTime)return yield this.initializePollingMechanism(e,t,n,r);yield this.reinitializeStrategy({methodId:e,gatewayId:r,bigCommercePaymentsAlternativeMethods:this.bigCommercePaymentsAlternativeMethods}),this.handleError(new Pe)}catch(e){n()}})}deInitializePollingMechanism(){this.stopPolling(),this.pollingTimer=0}resetPollingMechanism(){this.deInitializePollingMechanism()}reinitializeStrategy(e){return Ue(this,void 0,void 0,function*(){yield this.deinitialize(),yield this.initialize(e)})}handleError(e){const{onError:t}=this.bigCommercePaymentsAlternativeMethods||{};this.isPollingEnabled&&this.resetPollingMechanism(),this.toggleLoadingIndicator(!1),t&&"function"==typeof t&&t(e)}renderButton(e,t,n){const r=this.getPaypalAmpsSdkOrThrow(),i=this.paymentIntegrationService.getState().getPaymentMethodOrThrow(e,t),{buttonStyle:o}=i.initializationData||{},{container:a,onError:s,onRenderButton:c,submitForm:u}=n,l={fundingSource:e,style:this.bigCommercePaymentsIntegrationService.getValidButtonStyle(o),onInit:(e,t)=>n.onInitButton(t),createOrder:()=>this.onCreateOrder(e,t,n),onApprove:e=>this.handleApprove(e,u),onCancel:()=>{this.toggleLoadingIndicator(!1),this.deInitializePollingMechanism()},onError:e=>{this.deInitializePollingMechanism(),this.handleFailure(e,s)},onClick:(e,t)=>Ue(this,void 0,void 0,function*(){return n.onValidate(t.resolve,t.reject)})};this.bigCommercePaymentsButton=r.Buttons(l),this.bigCommercePaymentsButton.isEligible()&&(c&&"function"==typeof c&&c(),this.bigCommercePaymentsButton.render(a))}onCreateOrder(e,t,n){return Ue(this,void 0,void 0,function*(){const{onValidate:r}=n;yield r(()=>(this.toggleLoadingIndicator(!0),()=>Promise.resolve()),g.noop);const i=yield this.bigCommercePaymentsIntegrationService.createOrder("bigcommerce_payments_apms");if(this.isNonInstantPaymentMethod(e)){const n={useStoreCredit:!1},r={params:{methodId:e,gatewayId:t}};yield this.paymentIntegrationService.submitOrder(n,r),yield this.bigCommercePaymentsIntegrationService.submitPayment(e,i,t)}return i})}handleApprove({orderID:e},t){this.orderId=e,t()}handleFailure(e,t){this.toggleLoadingIndicator(!1),t&&"function"==typeof t&&t(e)}renderFields(e,t){const n=this.getPaypalAmpsSdkOrThrow(),r=this.paymentIntegrationService.getState(),{firstName:i,lastName:o,email:a}=r.getBillingAddressOrThrow(),{apmFieldsContainer:s,apmFieldsStyles:c}=t;if(!s)throw new L('Unable to initialize payment because "options.bigcommerce_payments_apms" argument should contain "apmFieldsContainer".');const u=document.querySelector(s);u&&(u.innerHTML="");const l={fundingSource:e,style:c||{},fields:{name:{value:`${i} ${o}`},email:{value:a}}};n.PaymentFields(l).render(s)}toggleLoadingIndicator(e){e&&this.loadingIndicatorContainer?this.loadingIndicator.show(this.loadingIndicatorContainer):this.loadingIndicator.hide()}isNonInstantPaymentMethod(e){return e.toUpperCase()in A}getPaypalAmpsSdkOrThrow(){if(!this.paypalApms)throw new o;return this.paypalApms}}const Le=l(e=>new Re(e,U(e),u(),new p({containerStyles:f})),[{gateway:"bigcommerce_payments_apms"}]);class Ve{constructor(e,t){this.paymentIntegrationService=e,this.bigCommercePaymentsIntegrationService=t}initialize(e){const{gatewayId:t,methodId:n,bigcommerce_payments_apms:r}=e;if(this.bigCommercePaymentsAlternativeMethods=r,!n)throw new L('Unable to initialize payment because "options.methodId" argument is not provided.');if(!t)throw new L('Unable to initialize payment because "options.gatewayId" argument is not provided.');return Promise.resolve()}execute(e,t){return n=this,r=void 0,o=function*(){const{payment:n}=e,r=function(e,t){var n={};for(var r in e)Object.prototype.hasOwnProperty.call(e,r)&&t.indexOf(r)<0&&(n[r]=e[r]);if(null!=e&&"function"==typeof Object.getOwnPropertySymbols){var i=0;for(r=Object.getOwnPropertySymbols(e);i<r.length;i++)t.indexOf(r[i])<0&&Object.prototype.propertyIsEnumerable.call(e,r[i])&&(n[r[i]]=e[r[i]])}return n}(e,["payment"]);if(!n)throw new V(["payment"]);const{methodId:i,gatewayId:o}=n;try{const e={formattedPayload:{vault_payment_instrument:null,set_as_default_stored_instrument:null,device_info:null,method_id:i,paypal_account:{order_id:yield this.bigCommercePaymentsIntegrationService.createOrder("bigcommerce_payments_apms",{gatewayId:"bigcommerce_payments_apms",methodId:i})}}};yield this.paymentIntegrationService.submitOrder(r,t),yield this.paymentIntegrationService.submitPayment({methodId:i,gatewayId:o,paymentData:e})}catch(e){if(function(e){var t,n;return(e=>"object"==typeof e&&null!==e&&"body"in e)(e)&&(null===(n=null===(t=e.body)||void 0===t?void 0:t.additional_action_required)||void 0===n?void 0:n.data.redirect_url)}(e)){const t=e.body.additional_action_required.data.redirect_url;return new Promise((e,n)=>{window.location.replace(t),n()})}return this.handleError(e),Promise.reject(e)}},new((i=void 0)||(i=Promise))(function(e,t){function a(e){try{c(o.next(e))}catch(e){t(e)}}function s(e){try{c(o.throw(e))}catch(e){t(e)}}function c(t){var n;t.done?e(t.value):(n=t.value,n instanceof i?n:new i(function(e){e(n)})).then(a,s)}c((o=o.apply(n,r||[])).next())});var n,r,i,o}finalize(){return Promise.reject(new W)}deinitialize(){return Promise.resolve()}handleError(e){const{onError:t}=this.bigCommercePaymentsAlternativeMethods||{};t&&"function"==typeof t&&t(e)}}const Ge=l(e=>new Ve(e,U(e)),[{gateway:"bigcommerce_payments_apms",id:"klarna"},{gateway:"bigcommerce_payments_apms",id:"afterpay"}]);var We=function(e,t,n,r){return new(n||(n=Promise))(function(i,o){function a(e){try{c(r.next(e))}catch(e){o(e)}}function s(e){try{c(r.throw(e))}catch(e){o(e)}}function c(e){var t;e.done?i(e.value):(t=e.value,t instanceof n?t:new n(function(e){e(t)})).then(a,s)}c((r=r.apply(e,t||[])).next())})};class $e{constructor(e,t,n){this.paymentIntegrationService=e,this.bigCommercePaymentsIntegrationService=t,this.loadingIndicator=n}initialize(e){return We(this,void 0,void 0,function*(){var t,n;const{methodId:r,bigcommerce_payments_venmo:i}=e||{};if(!r)throw new L('Unable to initialize payment because "options.methodId" argument is not provided.');if(!i)throw new L('Unable to initialize payment because "options.bigcommerce_payments_venmo" argument is not provided.');yield this.paymentIntegrationService.loadPaymentMethod(r);const o=this.paymentIntegrationService.getState().getPaymentMethodOrThrow(r);(null===(t=o.initializationData)||void 0===t?void 0:t.orderId)?this.orderId=null===(n=o.initializationData)||void 0===n?void 0:n.orderId:(yield this.bigCommercePaymentsIntegrationService.loadPayPalSdk(r),this.loadingIndicatorContainer=i.container.split("#")[1],this.renderButton(r,i))})}execute(e,t){return We(this,void 0,void 0,function*(){const{payment:n}=e,r=function(e,t){var n={};for(var r in e)Object.prototype.hasOwnProperty.call(e,r)&&t.indexOf(r)<0&&(n[r]=e[r]);if(null!=e&&"function"==typeof Object.getOwnPropertySymbols){var i=0;for(r=Object.getOwnPropertySymbols(e);i<r.length;i++)t.indexOf(r[i])<0&&Object.prototype.propertyIsEnumerable.call(e,r[i])&&(n[r[i]]=e[r[i]])}return n}(e,["payment"]);if(!n)throw new V(["payment"]);if(!this.orderId)throw new G;yield this.paymentIntegrationService.submitOrder(r,t),yield this.bigCommercePaymentsIntegrationService.submitPayment(n.methodId,this.orderId)})}finalize(){return Promise.reject(new W)}deinitialize(){var e;return this.orderId=void 0,null===(e=this.paypalButton)||void 0===e||e.close(),Promise.resolve()}renderButton(e,t){const n=this.bigCommercePaymentsIntegrationService.getPayPalSdkOrThrow(),r=this.paymentIntegrationService.getState().getPaymentMethodOrThrow(e),{paymentButtonStyles:i}=r.initializationData||{},{checkoutPaymentButtonStyles:o}=i||{},{container:a,onError:s,onRenderButton:c,onValidate:u,submitForm:l}=t,d={fundingSource:n.FUNDING.VENMO,style:this.bigCommercePaymentsIntegrationService.getValidButtonStyle(o),createOrder:()=>this.bigCommercePaymentsIntegrationService.createOrder("bigcommerce_payments_venmocheckout"),onClick:(e,t)=>this.handleClick(t,u),onApprove:e=>this.handleApprove(e,l),onCancel:()=>this.toggleLoadingIndicator(!1),onError:e=>this.handleError(e,s)};if(this.paypalButton=n.Buttons(d),!this.paypalButton.isEligible())throw new ge("Venmo is not available for your region. Please another payment method instead.");c&&"function"==typeof c&&c(),this.paypalButton.render(a)}handleClick(e,t){return We(this,void 0,void 0,function*(){const{resolve:n,reject:r}=e;yield t(()=>(this.toggleLoadingIndicator(!0),n()),r)})}handleApprove({orderID:e},t){this.orderId=e,t(),this.toggleLoadingIndicator(!1)}handleError(e,t){this.toggleLoadingIndicator(!1),t&&"function"==typeof t&&t(e)}toggleLoadingIndicator(e){e&&this.loadingIndicatorContainer?this.loadingIndicator.show(this.loadingIndicatorContainer):this.loadingIndicator.hide()}}const qe=l(e=>new $e(e,U(e),new p({styles:{backgroundColor:"black"}})),[{id:"bigcommerce_payments_venmo"}]);var He=function(e,t,n,r){return new(n||(n=Promise))(function(i,o){function a(e){try{c(r.next(e))}catch(e){o(e)}}function s(e){try{c(r.throw(e))}catch(e){o(e)}}function c(e){var t;e.done?i(e.value):(t=e.value,t instanceof n?t:new n(function(e){e(t)})).then(a,s)}c((r=r.apply(e,t||[])).next())})};class Ke{constructor(e,t){this.paymentIntegrationService=e,this.bigCommercePaymentsIntegrationService=t,this.onError=g.noop}initialize(e){return He(this,void 0,void 0,function*(){const{bigcommerce_payments:t,methodId:n}=e;if(!n)throw new L('Unable to initialize payment because "options.methodId" argument is not provided.');if(!t)throw new L('Unable to initialize payment because "options.bigcommerce_payments" argument is not provided.');if(!t.container)throw new L('Unable to initialize payment because "options.bigcommerce_payments.container" argument is not provided.');if(t.onClick&&"function"!=typeof t.onClick)throw new L('Unable to initialize payment because "options.bigcommerce_payments.onClick" argument is not a function.');this.onError=t.onError||g.noop,this.paymentIntegrationService.getState().getPaymentMethod(n)||(yield this.paymentIntegrationService.loadPaymentMethod(n));const r=yield this.bigCommercePaymentsIntegrationService.loadPayPalSdk(n);r&&r.Buttons&&"function"==typeof r.Buttons?this.renderButton(n,t):console.error("[BC PayPal]: PayPal Button could not be rendered, due to issues with loading PayPal SDK")})}deinitialize(){return Promise.resolve()}signIn(e,t){return He(this,void 0,void 0,function*(){return yield this.paymentIntegrationService.signInCustomer(e,t),Promise.resolve()})}signOut(e){return He(this,void 0,void 0,function*(){return yield this.paymentIntegrationService.signOutCustomer(e),Promise.resolve()})}executePaymentMethodCheckout(e){var t;return null===(t=null==e?void 0:e.continueWithCheckoutCallback)||void 0===t||t.call(e),Promise.resolve()}renderButton(e,t){const{container:n,onClick:r,onComplete:i}=t,o=this.bigCommercePaymentsIntegrationService.getPayPalSdkOrThrow(),a=this.paymentIntegrationService.getState().getPaymentMethodOrThrow(e),{isHostedCheckoutEnabled:s,paymentButtonStyles:c,isServerSideShippingCallbacksEnabled:u}=a.initializationData||{},{checkoutTopButtonStyles:l}=c||{},d=Object.assign({createOrder:()=>this.bigCommercePaymentsIntegrationService.createOrder("bigcommerce_payments"),onApprove:({orderID:t})=>this.bigCommercePaymentsIntegrationService.tokenizePayment(e,t)},r&&{onClick:()=>r()}),h=Object.assign(Object.assign({},!u&&{onShippingAddressChange:e=>this.onShippingAddressChange(e),onShippingOptionsChange:e=>this.onShippingOptionsChange(e)}),{onApprove:(t,n)=>this.onHostedCheckoutApprove(t,n,e,i,u)}),p=Object.assign(Object.assign({fundingSource:o.FUNDING.PAYPAL,style:this.bigCommercePaymentsIntegrationService.getValidButtonStyle(Object.assign(Object.assign({},l),{height:40}))},d),s&&h),f=o.Buttons(p);f.isEligible()?f.render(`#${n}`):this.bigCommercePaymentsIntegrationService.removeElement(n)}onHostedCheckoutApprove(t,n,r,i,o){return He(this,void 0,void 0,function*(){if(!t.orderID)throw new a(e.MissingOrderId);const s=this.paymentIntegrationService.getState().getCartOrThrow();try{const e=s.lineItems.physicalItems.length>0;if(!o){const t=yield n.order.get(),r=this.bigCommercePaymentsIntegrationService.getBillingAddressFromOrderDetails(t);if(yield this.paymentIntegrationService.updateBillingAddress(r),e){const e=this.bigCommercePaymentsIntegrationService.getShippingAddressFromOrderDetails(t);yield this.paymentIntegrationService.updateShippingAddress(e)}}e&&(yield this.bigCommercePaymentsIntegrationService.updateOrder(o)),o&&(yield this.paymentIntegrationService.loadCheckout()),yield this.paymentIntegrationService.submitOrder({},{params:{methodId:r}}),yield this.bigCommercePaymentsIntegrationService.submitPayment(r,t.orderID),i&&"function"==typeof i&&i()}catch(e){this.handleError(e)}})}onShippingAddressChange(e){return He(this,void 0,void 0,function*(){const t=this.bigCommercePaymentsIntegrationService.getAddress({city:e.shippingAddress.city,countryCode:e.shippingAddress.countryCode,postalCode:e.shippingAddress.postalCode,stateOrProvinceCode:e.shippingAddress.state});try{yield this.paymentIntegrationService.updateBillingAddress(t),yield this.paymentIntegrationService.updateShippingAddress(t);const e=this.bigCommercePaymentsIntegrationService.getShippingOptionOrThrow();yield this.paymentIntegrationService.selectShippingOption(e.id),yield this.bigCommercePaymentsIntegrationService.updateOrder()}catch(e){this.handleError(e)}})}onShippingOptionsChange(e){return He(this,void 0,void 0,function*(){const t=this.bigCommercePaymentsIntegrationService.getShippingOptionOrThrow(e.selectedShippingOption.id);try{yield this.paymentIntegrationService.selectShippingOption(t.id),yield this.bigCommercePaymentsIntegrationService.updateOrder()}catch(e){this.handleError(e)}})}handleError(e){if("function"!=typeof this.onError)throw e;this.onError(e)}}const Ye=l(e=>new Ke(e,U(e)),[{id:"bigcommerce_payments"}]);var Ze=function(e,t,n,r){return new(n||(n=Promise))(function(i,o){function a(e){try{c(r.next(e))}catch(e){o(e)}}function s(e){try{c(r.throw(e))}catch(e){o(e)}}function c(e){var t;e.done?i(e.value):(t=e.value,t instanceof n?t:new n(function(e){e(t)})).then(a,s)}c((r=r.apply(e,t||[])).next())})};class Je{constructor(e,t,n){this.paymentIntegrationService=e,this.bigCommercePaymentsSdk=t,this.bigCommercePaymentsFastlaneUtils=n}initialize(e){return Ze(this,void 0,void 0,function*(){var t;const{methodId:n,bigcommerce_payments_fastlane:r}=e;if(this.options=e,!n)throw new L('Unable to proceed because "methodId" argument is not provided.');try{yield this.paymentIntegrationService.loadPaymentMethod(n);const e=this.paymentIntegrationService.getState(),i=e.getCartOrThrow(),o=e.getPaymentMethodOrThrow(n),a=!!(null===(t=o.initializationData)||void 0===t?void 0:t.isDeveloperModeApplicable),s=yield this.bigCommercePaymentsSdk.getPayPalFastlaneSdk(o,i.currency.code,i.id);yield this.bigCommercePaymentsFastlaneUtils.initializePayPalFastlane(s,a,this.getFastlaneStyles(n,r))}catch(e){this.handleErrorLog(e)}return Promise.resolve()})}deinitialize(){return Ze(this,void 0,void 0,function*(){return Promise.resolve()})}signIn(e,t){return Ze(this,void 0,void 0,function*(){yield this.paymentIntegrationService.signInCustomer(e,t),yield this.paymentIntegrationService.updatePaymentProviderCustomer({authenticationState:void 0,addresses:void 0,instruments:void 0}),this.bigCommercePaymentsFastlaneUtils.removeStorageSessionId()})}signOut(e){return Ze(this,void 0,void 0,function*(){yield this.paymentIntegrationService.signOutCustomer(e)})}executePaymentMethodCheckout(e){return Ze(this,void 0,void 0,function*(){const{checkoutPaymentMethodExecuted:t,continueWithCheckoutCallback:n,methodId:r}=e||{};if(!r)throw new L('Unable to proceed because "methodId" argument is not provided.');if("function"!=typeof n)throw new L('Unable to proceed because "continueWithCheckoutCallback" argument is not provided and it must be a function.');if(this.paymentIntegrationService.getState().getCustomerOrThrow().isGuest){t&&"function"==typeof t&&t();try{yield this.runPayPalAuthenticationFlowOrThrow(r)}catch(e){this.handleErrorLog(e)}}n()})}runPayPalAuthenticationFlowOrThrow(e){return Ze(this,void 0,void 0,function*(){const t=this.paymentIntegrationService.getState(),n=t.getCartOrThrow().id,r=t.getCustomer(),i=t.getBillingAddress(),o=(null==r?void 0:r.email)||(null==i?void 0:i.email)||"",{customerContextId:a}=yield this.bigCommercePaymentsFastlaneUtils.lookupCustomerOrThrow(o),s=yield this.bigCommercePaymentsFastlaneUtils.triggerAuthenticationFlowOrThrow(a),c=s.authenticationState===oe.CANCELED;yield this.updateCustomerDataState(e,s),c?this.bigCommercePaymentsFastlaneUtils.removeStorageSessionId():this.bigCommercePaymentsFastlaneUtils.updateStorageSessionId(n)})}updateCustomerDataState(e,t){return Ze(this,void 0,void 0,function*(){var n;const r=this.paymentIntegrationService.getState().getCartOrThrow(),{authenticationState:i,addresses:o,billingAddress:a,shippingAddress:s,instruments:c}=this.bigCommercePaymentsFastlaneUtils.mapPayPalFastlaneProfileToBcCustomerData(e,t);if(yield this.paymentIntegrationService.updatePaymentProviderCustomer({authenticationState:i,addresses:o,instruments:c}),a&&(yield this.paymentIntegrationService.updateBillingAddress(a)),s&&r.lineItems.physicalItems.length>0){const t=yield this.paymentIntegrationService.updateShippingAddress(s),r=t.getPaymentMethodOrThrow(e),{isFastlaneShippingOptionAutoSelectEnabled:i}=r.initializationData||{},o=(null===(n=(t.getConsignments()||[])[0])||void 0===n?void 0:n.availableShippingOptions)||[],a=o[0],c=o.find(e=>e.isRecommended);if((c||a)&&i){const e=(null==c?void 0:c.id)||a.id;yield this.paymentIntegrationService.selectShippingOption(e)}}})}getFastlaneStyles(e,t){const n=this.paymentIntegrationService.getState().getPaymentMethodOrThrow(e),{fastlaneStyles:r,isFastlaneStylingEnabled:i}=n.initializationData||{};return de(i?r:{},null==t?void 0:t.styles)}handleErrorLog(e){const{onErrorLog:t}=this.options||{};t&&"function"==typeof t&&t(e)}}const Qe=l(e=>new Je(e,u(),ue()),[{id:"bigcommerce_payments_fastlane"},{id:"bigcommerce_payments_creditcards"}]);var Xe=function(e,t,n,r){return new(n||(n=Promise))(function(i,o){function a(e){try{c(r.next(e))}catch(e){o(e)}}function s(e){try{c(r.throw(e))}catch(e){o(e)}}function c(e){var t;e.done?i(e.value):(t=e.value,t instanceof n?t:new n(function(e){e(t)})).then(a,s)}c((r=r.apply(e,t||[])).next())})};class et{constructor(e,t){this.paymentIntegrationService=e,this.bigCommercePaymentsIntegrationService=t,this.onError=g.noop}initialize(e){return Xe(this,void 0,void 0,function*(){const{bigcommerce_payments_paylater:t,methodId:n}=e;if(!n)throw new L('Unable to initialize payment because "options.methodId" argument is not provided.');if(!t)throw new L('Unable to initialize payment because "options.bigcommerce_payments_paylater" argument is not provided.');if(!t.container)throw new L('Unable to initialize payment because "options.bigcommerce_payments_paylater.container" argument is not provided.');if(t.onClick&&"function"!=typeof t.onClick)throw new L('Unable to initialize payment because "options.bigcommerce_payments_paylater.onClick" argument is not a function.');this.onError=t.onError||g.noop,this.paymentIntegrationService.getState().getPaymentMethod(n)||(yield this.paymentIntegrationService.loadPaymentMethod(n));const r=yield this.bigCommercePaymentsIntegrationService.loadPayPalSdk(n);r&&r.Buttons&&"function"==typeof r.Buttons?this.renderButton(n,t):console.error("[BC BigCommercePayments PayLater]: button could not be rendered, due to issues with loading PayPal SDK")})}deinitialize(){return Promise.resolve()}signIn(e,t){return Xe(this,void 0,void 0,function*(){yield this.paymentIntegrationService.signInCustomer(e,t)})}signOut(e){return Xe(this,void 0,void 0,function*(){yield this.paymentIntegrationService.signOutCustomer(e)})}executePaymentMethodCheckout(e){var t;return null===(t=null==e?void 0:e.continueWithCheckoutCallback)||void 0===t||t.call(e),Promise.resolve()}renderButton(e,t){const{container:n,onComplete:r,onClick:i}=t,o=this.bigCommercePaymentsIntegrationService.getPayPalSdkOrThrow(),a=this.paymentIntegrationService.getState().getPaymentMethodOrThrow(e),{isHostedCheckoutEnabled:s,paymentButtonStyles:c}=a.initializationData||{},{checkoutTopButtonStyles:u}=c||{},l=Object.assign({createOrder:()=>this.bigCommercePaymentsIntegrationService.createOrder("bigcommerce_payments_paylater"),onApprove:({orderID:t})=>this.bigCommercePaymentsIntegrationService.tokenizePayment(e,t)},i&&{onClick:()=>i()}),d={onShippingAddressChange:e=>this.onShippingAddressChange(e),onShippingOptionsChange:e=>this.onShippingOptionsChange(e),onApprove:(t,n)=>this.onHostedCheckoutApprove(t,n,e,r)},h=[o.FUNDING.PAYLATER,o.FUNDING.CREDIT];let p=!1;h.forEach(e=>{if(!p){const t=Object.assign(Object.assign({fundingSource:e,style:this.bigCommercePaymentsIntegrationService.getValidButtonStyle(Object.assign(Object.assign({},u),{height:40}))},l),s&&d),r=o.Buttons(t);r.isEligible()&&(r.render(`#${n}`),p=!0)}}),p||this.bigCommercePaymentsIntegrationService.removeElement(n)}onHostedCheckoutApprove(t,n,r,i){return Xe(this,void 0,void 0,function*(){if(!t.orderID)throw new a(e.MissingOrderId);const o=this.paymentIntegrationService.getState().getCartOrThrow(),s=yield n.order.get();try{const e=this.bigCommercePaymentsIntegrationService.getBillingAddressFromOrderDetails(s);if(yield this.paymentIntegrationService.updateBillingAddress(e),o.lineItems.physicalItems.length>0){const e=this.bigCommercePaymentsIntegrationService.getShippingAddressFromOrderDetails(s);yield this.paymentIntegrationService.updateShippingAddress(e),yield this.bigCommercePaymentsIntegrationService.updateOrder()}yield this.paymentIntegrationService.submitOrder({},{params:{methodId:r}}),yield this.bigCommercePaymentsIntegrationService.submitPayment(r,t.orderID),i&&"function"==typeof i&&i()}catch(e){this.handleError(e)}})}onShippingAddressChange(e){return Xe(this,void 0,void 0,function*(){const t=this.bigCommercePaymentsIntegrationService.getAddress({city:e.shippingAddress.city,countryCode:e.shippingAddress.countryCode,postalCode:e.shippingAddress.postalCode,stateOrProvinceCode:e.shippingAddress.state});try{yield this.paymentIntegrationService.updateBillingAddress(t),yield this.paymentIntegrationService.updateShippingAddress(t);const e=this.bigCommercePaymentsIntegrationService.getShippingOptionOrThrow();yield this.paymentIntegrationService.selectShippingOption(e.id),yield this.bigCommercePaymentsIntegrationService.updateOrder()}catch(e){this.handleError(e)}})}onShippingOptionsChange(e){return Xe(this,void 0,void 0,function*(){const t=this.bigCommercePaymentsIntegrationService.getShippingOptionOrThrow(e.selectedShippingOption.id);try{yield this.paymentIntegrationService.selectShippingOption(t.id),yield this.bigCommercePaymentsIntegrationService.updateOrder()}catch(e){this.handleError(e)}})}handleError(e){if("function"!=typeof this.onError)throw e;this.onError(e)}}const tt=l(e=>new et(e,U(e)),[{id:"bigcommerce_payments_paylater"}]);var nt=function(e,t,n,r){return new(n||(n=Promise))(function(i,o){function a(e){try{c(r.next(e))}catch(e){o(e)}}function s(e){try{c(r.throw(e))}catch(e){o(e)}}function c(e){var t;e.done?i(e.value):(t=e.value,t instanceof n?t:new n(function(e){e(t)})).then(a,s)}c((r=r.apply(e,t||[])).next())})};class rt{constructor(e,t){this.paymentIntegrationService=e,this.bigCommercePaymentsIntegrationService=t}initialize(e){return nt(this,void 0,void 0,function*(){const{bigcommerce_payments_venmo:t,methodId:n}=e;if(!n)throw new L('Unable to initialize payment because "options.methodId" argument is not provided.');if(!t)throw new L('Unable to initialize payment because "options.bigcommerce_payments_venmo" argument is not provided.');if(!t.container)throw new L('Unable to initialize payment because "options.bigcommerce_payments_venmo.container" argument is not provided.');if(t.onClick&&"function"!=typeof t.onClick)throw new L('Unable to initialize payment because "options.bigcommerce_payments_venmo.onClick" argument is not a function.');this.paymentIntegrationService.getState().getPaymentMethod(n)||(yield this.paymentIntegrationService.loadPaymentMethod(n));const r=yield this.bigCommercePaymentsIntegrationService.loadPayPalSdk(n);r&&r.Buttons&&"function"==typeof r.Buttons?this.renderButton(n,t):console.error("[BC Payments Venmo]: Button could not be rendered, due to issues with loading PayPal SDK")})}deinitialize(){return Promise.resolve()}signIn(e,t){return nt(this,void 0,void 0,function*(){yield this.paymentIntegrationService.signInCustomer(e,t)})}signOut(e){return nt(this,void 0,void 0,function*(){yield this.paymentIntegrationService.signOutCustomer(e)})}executePaymentMethodCheckout(e){var t;return null===(t=null==e?void 0:e.continueWithCheckoutCallback)||void 0===t||t.call(e),Promise.resolve()}renderButton(e,t){const{container:n,onClick:r}=t,i=this.bigCommercePaymentsIntegrationService.getPayPalSdkOrThrow(),o=this.paymentIntegrationService.getState().getPaymentMethodOrThrow(e),{paymentButtonStyles:a}=o.initializationData||{},{checkoutTopButtonStyles:s}=a||{},c=Object.assign({fundingSource:i.FUNDING.VENMO,style:this.bigCommercePaymentsIntegrationService.getValidButtonStyle(Object.assign(Object.assign({},s),{height:40})),createOrder:()=>this.bigCommercePaymentsIntegrationService.createOrder("bigcommerce_payments_venmo"),onApprove:({orderID:t})=>this.bigCommercePaymentsIntegrationService.tokenizePayment(e,t)},r&&{onClick:()=>r()}),u=i.Buttons(c);u.isEligible()?u.render(`#${n}`):this.bigCommercePaymentsIntegrationService.removeElement(n)}}const it=l(e=>new rt(e,U(e)),[{id:"bigcommerce_payments_venmo"}]);var ot=function(e,t,n,r){return new(n||(n=Promise))(function(i,o){function a(e){try{c(r.next(e))}catch(e){o(e)}}function s(e){try{c(r.throw(e))}catch(e){o(e)}}function c(e){var t;e.done?i(e.value):(t=e.value,t instanceof n?t:new n(function(e){e(t)})).then(a,s)}c((r=r.apply(e,t||[])).next())})};class at{constructor(e,t){this.paymentIntegrationService=e,this.bigCommercePaymentsIntegrationService=t}initialize(e){return ot(this,void 0,void 0,function*(){var t;const{bigcommerce_payments:n,containerId:r,methodId:i}=e,o=Boolean(null==n?void 0:n.buyNowInitializeOptions);if(!i)throw new L('Unable to initialize payment because "options.methodId" argument is not provided.');if(!r)throw new L('Unable to initialize payment because "options.containerId" argument is not provided.');if(!n)throw new L('Unable to initialize payment because "options.bigcommerce_payments" argument is not provided.');if(o&&!n.currencyCode)throw new L('Unable to initialize payment because "options.bigcommerce_payments.currencyCode" argument is not provided.');if(o&&"function"!=typeof(null===(t=n.buyNowInitializeOptions)||void 0===t?void 0:t.getBuyNowCartRequestBody))throw new L('Unable to initialize payment because "options.bigcommerce_payments.buyNowInitializeOptions.getBuyNowCartRequestBody" argument is not provided or it is not a function.');o||(yield this.paymentIntegrationService.loadDefaultCheckout());const a=o?n.currencyCode:this.paymentIntegrationService.getState().getCartOrThrow().currency.code;yield this.bigCommercePaymentsIntegrationService.loadPayPalSdk(i,a,!1),this.renderButton(r,i,n)})}deinitialize(){return Promise.resolve()}renderButton(e,t,n){const{buyNowInitializeOptions:r,style:i,onComplete:o,onEligibilityFailure:a}=n,s=this.bigCommercePaymentsIntegrationService.getPayPalSdkOrThrow(),c=this.paymentIntegrationService.getState().getPaymentMethodOrThrow(t),{isHostedCheckoutEnabled:u,isServerSideShippingCallbacksEnabled:l}=c.initializationData||{},d={createOrder:()=>this.bigCommercePaymentsIntegrationService.createOrder("bigcommerce_payments"),onApprove:({orderID:e})=>this.bigCommercePaymentsIntegrationService.tokenizePayment(t,e)},h={onClick:()=>this.handleClick(r),onCancel:()=>this.paymentIntegrationService.loadDefaultCheckout()},p=Object.assign(Object.assign({},!l&&{onShippingAddressChange:e=>this.onShippingAddressChange(e),onShippingOptionsChange:e=>this.onShippingOptionsChange(e)}),{onApprove:(e,n)=>this.onHostedCheckoutApprove(e,n,t,o,l)}),f=Object.assign(Object.assign(Object.assign({fundingSource:s.FUNDING.PAYPAL,style:this.bigCommercePaymentsIntegrationService.getValidButtonStyle(i)},d),r&&h),u&&p),m=s.Buttons(f);m.isEligible()?m.render(`#${e}`):a&&"function"==typeof a?a():this.bigCommercePaymentsIntegrationService.removeElement(e)}handleClick(e){return ot(this,void 0,void 0,function*(){if(e){const t=yield this.bigCommercePaymentsIntegrationService.createBuyNowCartOrThrow(e);yield this.paymentIntegrationService.loadCheckout(t.id)}})}onHostedCheckoutApprove(t,n,r,i,o){return ot(this,void 0,void 0,function*(){if(!t.orderID)throw new a(e.MissingOrderId);const s=this.paymentIntegrationService.getState().getCartOrThrow();try{const e=s.lineItems.physicalItems.length>0;if(!o){const t=yield n.order.get(),r=this.bigCommercePaymentsIntegrationService.getBillingAddressFromOrderDetails(t);if(yield this.paymentIntegrationService.updateBillingAddress(r),e){const e=this.bigCommercePaymentsIntegrationService.getShippingAddressFromOrderDetails(t);yield this.paymentIntegrationService.updateShippingAddress(e)}}return e&&(yield this.bigCommercePaymentsIntegrationService.updateOrder(o)),o&&(yield this.paymentIntegrationService.loadCheckout()),yield this.paymentIntegrationService.submitOrder({},{params:{methodId:r}}),yield this.bigCommercePaymentsIntegrationService.submitPayment(r,t.orderID),i&&"function"==typeof i&&i(),!0}catch(e){if("string"==typeof e)throw new Error(e);throw e}})}onShippingAddressChange(e){return ot(this,void 0,void 0,function*(){const t=this.bigCommercePaymentsIntegrationService.getAddress({city:e.shippingAddress.city,countryCode:e.shippingAddress.countryCode,postalCode:e.shippingAddress.postalCode,stateOrProvinceCode:e.shippingAddress.state});try{yield this.paymentIntegrationService.updateBillingAddress(t),yield this.paymentIntegrationService.updateShippingAddress(t);const e=this.bigCommercePaymentsIntegrationService.getShippingOptionOrThrow();yield this.paymentIntegrationService.selectShippingOption(e.id),yield this.bigCommercePaymentsIntegrationService.updateOrder()}catch(e){if("string"==typeof e)throw new Error(e);throw e}})}onShippingOptionsChange(e){return ot(this,void 0,void 0,function*(){const t=this.bigCommercePaymentsIntegrationService.getShippingOptionOrThrow(e.selectedShippingOption.id);try{yield this.paymentIntegrationService.selectShippingOption(t.id),yield this.bigCommercePaymentsIntegrationService.updateOrder()}catch(e){if("string"==typeof e)throw new Error(e);throw e}})}}const st=l(e=>new at(e,U(e)),[{id:"bigcommerce_payments"}]);var ct=function(e,t,n,r){return new(n||(n=Promise))(function(i,o){function a(e){try{c(r.next(e))}catch(e){o(e)}}function s(e){try{c(r.throw(e))}catch(e){o(e)}}function c(e){var t;e.done?i(e.value):(t=e.value,t instanceof n?t:new n(function(e){e(t)})).then(a,s)}c((r=r.apply(e,t||[])).next())})};class ut{constructor(e,t){this.paymentIntegrationService=e,this.bigCommercePaymentsIntegrationService=t}initialize(e){return ct(this,void 0,void 0,function*(){const{bigcommerce_payments_paylater:t,containerId:n,methodId:r}=e,{buyNowInitializeOptions:i,currencyCode:o}=t||{},a=!!i;if(!r)throw new L('Unable to initialize payment because "options.methodId" argument is not provided.');if(!n)throw new L('Unable to initialize payment because "options.containerId" argument is not provided.');if(!t)throw new L('Unable to initialize payment because "options.bigcommerce_payments_paylater" argument is not provided.');if(a&&!o)throw new L('Unable to initialize payment because "options.bigcommerce_payments_paylater.currencyCode" argument is not provided.');if(a&&"function"!=typeof(null==i?void 0:i.getBuyNowCartRequestBody))throw new L('Unable to initialize payment because "options.bigcommerce_payments_paylater.buyNowInitializeOptions.getBuyNowCartRequestBody" argument is not provided or it is not a function.');a||(yield this.paymentIntegrationService.loadDefaultCheckout());const s=this.paymentIntegrationService.getState(),c=a?o:s.getCartOrThrow().currency.code;yield this.bigCommercePaymentsIntegrationService.loadPayPalSdk(r,c,!1),this.renderButton(n,r,t)})}deinitialize(){return Promise.resolve()}renderButton(e,t,n){const{buyNowInitializeOptions:r,style:i,onComplete:o,onEligibilityFailure:a}=n,s=this.bigCommercePaymentsIntegrationService.getPayPalSdkOrThrow(),c=this.paymentIntegrationService.getState().getPaymentMethodOrThrow(t),{isHostedCheckoutEnabled:u}=c.initializationData||{},l={createOrder:()=>this.bigCommercePaymentsIntegrationService.createOrder("bigcommerce_payments_paylater"),onApprove:({orderID:e})=>this.bigCommercePaymentsIntegrationService.tokenizePayment(t,e)},d={onClick:()=>this.handleClick(r),onCancel:()=>this.paymentIntegrationService.loadDefaultCheckout()},h={onShippingAddressChange:e=>this.onShippingAddressChange(e),onShippingOptionsChange:e=>this.onShippingOptionsChange(e),onApprove:(e,n)=>this.onHostedCheckoutApprove(e,n,t,o)},p=[s.FUNDING.PAYLATER,s.FUNDING.CREDIT];let f=!1;p.forEach(t=>{if(!f){const n=Object.assign(Object.assign(Object.assign({fundingSource:t,style:this.bigCommercePaymentsIntegrationService.getValidButtonStyle(i)},l),r&&d),u&&h),o=s.Buttons(n);o.isEligible()?(o.render(`#${e}`),f=!0):a&&"function"==typeof a&&a()}}),f||this.bigCommercePaymentsIntegrationService.removeElement(e)}handleClick(e){return ct(this,void 0,void 0,function*(){if(e){const t=yield this.bigCommercePaymentsIntegrationService.createBuyNowCartOrThrow(e);yield this.paymentIntegrationService.loadCheckout(t.id)}})}onHostedCheckoutApprove(t,n,r,i){return ct(this,void 0,void 0,function*(){if(!t.orderID)throw new a(e.MissingOrderId);const o=this.paymentIntegrationService.getState().getCartOrThrow(),s=yield n.order.get();try{const e=this.bigCommercePaymentsIntegrationService.getBillingAddressFromOrderDetails(s);if(yield this.paymentIntegrationService.updateBillingAddress(e),o.lineItems.physicalItems.length>0){const e=this.bigCommercePaymentsIntegrationService.getShippingAddressFromOrderDetails(s);yield this.paymentIntegrationService.updateShippingAddress(e),yield this.bigCommercePaymentsIntegrationService.updateOrder()}return yield this.paymentIntegrationService.submitOrder({},{params:{methodId:r}}),yield this.bigCommercePaymentsIntegrationService.submitPayment(r,t.orderID),i&&"function"==typeof i&&i(),!0}catch(e){if("string"==typeof e)throw new Error(e);throw e}})}onShippingAddressChange(e){return ct(this,void 0,void 0,function*(){const t=this.bigCommercePaymentsIntegrationService.getAddress({city:e.shippingAddress.city,countryCode:e.shippingAddress.countryCode,postalCode:e.shippingAddress.postalCode,stateOrProvinceCode:e.shippingAddress.state});try{yield this.paymentIntegrationService.updateBillingAddress(t),yield this.paymentIntegrationService.updateShippingAddress(t);const e=this.bigCommercePaymentsIntegrationService.getShippingOptionOrThrow();yield this.paymentIntegrationService.selectShippingOption(e.id),yield this.bigCommercePaymentsIntegrationService.updateOrder()}catch(e){if("string"==typeof e)throw new Error(e);throw e}})}onShippingOptionsChange(e){return ct(this,void 0,void 0,function*(){const t=this.bigCommercePaymentsIntegrationService.getShippingOptionOrThrow(e.selectedShippingOption.id);try{yield this.paymentIntegrationService.selectShippingOption(t.id),yield this.bigCommercePaymentsIntegrationService.updateOrder()}catch(e){if("string"==typeof e)throw new Error(e);throw e}})}}const lt=l(e=>new ut(e,U(e)),[{id:"bigcommerce_payments_paylater"}]);var dt=function(e,t,n,r){return new(n||(n=Promise))(function(i,o){function a(e){try{c(r.next(e))}catch(e){o(e)}}function s(e){try{c(r.throw(e))}catch(e){o(e)}}function c(e){var t;e.done?i(e.value):(t=e.value,t instanceof n?t:new n(function(e){e(t)})).then(a,s)}c((r=r.apply(e,t||[])).next())})};class ht{constructor(e,t){this.paymentIntegrationService=e,this.bigCommercePaymentsIntegrationService=t}initialize(e){return dt(this,void 0,void 0,function*(){const{bigcommerce_payments_venmo:t,containerId:n,methodId:r}=e,{buyNowInitializeOptions:i,currencyCode:o}=t||{},a=!!i;if(!r)throw new L('Unable to initialize payment because "options.methodId" argument is not provided.');if(!n)throw new L('Unable to initialize payment because "options.containerId" argument is not provided.');if(!t)throw new L('Unable to initialize payment because "options.bigcommerce_payments_venmo" argument is not provided.');if(a&&!o)throw new L('Unable to initialize payment because "options.bigcommerce_payments_venmo.currencyCode" argument is not provided.');if(a&&"function"!=typeof(null==i?void 0:i.getBuyNowCartRequestBody))throw new L('Unable to initialize payment because "options.bigcommerce_payments_venmo.buyNowInitializeOptions.getBuyNowCartRequestBody" argument is not provided or it is not a function.');a||(yield this.paymentIntegrationService.loadDefaultCheckout());const s=a?o:this.paymentIntegrationService.getState().getCartOrThrow().currency.code;yield this.bigCommercePaymentsIntegrationService.loadPayPalSdk(r,s,!1),this.renderButton(n,r,t)})}deinitialize(){return Promise.resolve()}renderButton(e,t,n){const{buyNowInitializeOptions:r,style:i,onEligibilityFailure:o}=n,a=this.bigCommercePaymentsIntegrationService.getPayPalSdkOrThrow(),s=a.FUNDING.VENMO,c={createOrder:()=>this.bigCommercePaymentsIntegrationService.createOrder("bigcommerce_payments_venmo"),onApprove:({orderID:e})=>this.bigCommercePaymentsIntegrationService.tokenizePayment(t,e)},u={onClick:()=>this.handleClick(r),onCancel:()=>this.paymentIntegrationService.loadDefaultCheckout()},l=Object.assign(Object.assign({fundingSource:s,style:this.getValidVenmoButtonStyles(i)},c),r&&u),d=a.Buttons(l);d.isEligible()?d.render(`#${e}`):o&&"function"==typeof o?o():this.bigCommercePaymentsIntegrationService.removeElement(e)}getValidVenmoButtonStyles(e){const t=this.bigCommercePaymentsIntegrationService.getValidButtonStyle(e);return t.color===C.gold?Object.assign(Object.assign({},t),{color:void 0}):t}handleClick(e){return dt(this,void 0,void 0,function*(){if(e){const t=yield this.bigCommercePaymentsIntegrationService.createBuyNowCartOrThrow(e);yield this.paymentIntegrationService.loadCheckout(t.id)}})}}const pt=l(e=>new ht(e,U(e)),[{id:"bigcommerce_payments_venmo"}]);var ft,mt,yt,gt,vt,_t,bt,Pt,St,wt;!function(e){e.AUTHORIZE="authorize",e.CAPTURE="capture"}(ft||(ft={})),function(e){e.Always="SCA_ALWAYS"}(mt||(mt={})),function(e){e.Succeeded="succeeded",e.Cancelled="cancelled",e.Errored="errored"}(yt||(yt={})),function(e){e.Possible="POSSIBLE",e.No="NO",e.Unknown="UNKNOWN",e.Yes="YES"}(gt||(gt={})),function(e){e.paypal="paypal",e.checkout="checkout",e.buynow="buynow",e.pay="pay",e.installment="installment"}(vt||(vt={})),function(e){e.gold="gold",e.blue="blue",e.silver="silver",e.black="black",e.white="white"}(_t||(_t={})),function(e){e.pill="pill",e.rect="rect"}(bt||(bt={})),function(e){e.SUCCEEDED="succeeded",e.FAILED="failed",e.CANCELED="canceled",e.UNRECOGNIZED="unrecognized"}(Pt||(Pt={})),function(e){e.OXXO="oxxo"}(St||(St={})),function(e){e.Approved="APPROVED",e.Created="CREATED",e.PayerActionRequired="PAYER_ACTION_REQUIRED",e.PollingStop="POLLING_STOP",e.PollingError="POLLING_ERROR"}(wt||(wt={}));var It=function(e,t,n,r){return new(n||(n=Promise))(function(i,o){function a(e){try{c(r.next(e))}catch(e){o(e)}}function s(e){try{c(r.throw(e))}catch(e){o(e)}}function c(e){var t;e.done?i(e.value):(t=e.value,t instanceof n?t:new n(function(e){e(t)})).then(a,s)}c((r=r.apply(e,t||[])).next())})};class Ct{constructor(e,t,n="PayPalCommercePaymentWalletIntentData"){this.walletButtonIntegrationService=e,this.scriptLoader=t,this.intentTypename=n}loadPayPalSdk(e,t,n,r){return It(this,void 0,void 0,function*(){return this.paypalSdk=yield this.scriptLoader.getPayPalSDK(e,t,void 0,n,r),this.paypalSdk})}getPayPalSdkOrThrow(){if(!this.paypalSdk)throw new o;return this.paypalSdk}proxyTokenizationPayment(t,n,r,i){return It(this,void 0,void 0,function*(){var o;if(!i)throw new a(e.MissingOrderId);const s={paymentWalletData:{providerId:n,providerOrderId:i},cartEntityId:t,queryParams:[{key:"payment_type",value:"paypal"},{key:"action",value:"set_external_checkout"},{key:"provider",value:r},{key:"order_id",value:i}]},c=yield this.walletButtonIntegrationService.getRedirectToCheckoutUrl(s);if(!(null===(o=c.body.redirectUrls)||void 0===o?void 0:o.externalCheckoutUrl))throw new Error("Failed to redirection to checkout page");window.location.assign(c.body.redirectUrls.externalCheckoutUrl)})}createPaymentOrderIntent(e,t,n){return It(this,void 0,void 0,function*(){const r={cartEntityId:t,paymentWalletEntityId:e};return(yield this.walletButtonIntegrationService.createPaymentOrderIntent(r,this.intentTypename,n)).body.orderId})}addBillingAddress(e,t,n){return It(this,void 0,void 0,function*(){return this.walletButtonIntegrationService.addBillingAddress(e,t,n)})}mapOrderDetailsToBillingAddress({payer:e}){var t,n,r,i;return{firstName:e.name.given_name,lastName:e.name.surname,company:"",address1:e.address.address_line_1,address2:e.address.address_line_2,city:e.address.admin_area_2,email:e.email_address,stateOrProvince:null!==(t=e.address.admin_area_1)&&void 0!==t?t:"",stateOrProvinceCode:null!==(n=e.address.admin_area_1)&&void 0!==n?n:"",countryCode:e.address.country_code,postalCode:e.address.postal_code,phone:null!==(i=null===(r=e.phone)||void 0===r?void 0:r.phone_number.national_number)&&void 0!==i?i:"",shouldSaveAddress:!1}}getValidButtonStyle(e={}){const{color:t,height:n,label:r,shape:i}=e,o={color:t&&_t[t]?t:void 0,height:this.getValidHeight(n),label:r&&vt[r]?r:void 0,shape:i&&bt[i]?i:void 0};return(0,g.omitBy)(o,g.isNil)}getValidHeight(e){return e&&"number"==typeof e?e>55?55:e<25?25:e:40}removeElement(e){const t=e&&document.getElementById(e);t&&(t.style.display="none")}}const Ot=["ar_BH","ar_DZ","ar_EG","ar_JO","ar_KW","ar_MA","ar_OM","ar_QA","ar_SA","ar_TN","ar_YE","ar_AE","bg_BG","cs_CZ","da_DK","da_FO","da_GL","de_AT","de_CH","de_DE","de_LU","el_GR","en_AD","en_AE","en_AG","en_AI","en_AL","en_AM","en_AN","en_AO","en_AT","en_AU","en_AW","en_AZ","en_BB","en_BE","en_BH","en_BJ","en_BM","en_BN","en_BS","en_BT","en_BW","en_BY","en_BZ","en_C2","en_CA","en_CD","en_CG","en_CH","en_CI","en_CK","en_CL","en_CM","en_CN","en_CO","en_CR","en_CV","en_CY","en_CZ","en_DE","en_DJ","en_DK","en_DM","en_DO","en_DZ","en_EC","en_EE","en_EG","en_ER","en_ES","en_ET","en_FI","en_FJ","en_FK","en_FM","en_FO","en_FR","en_GA","en_GB","en_GD","en_GE","en_GF","en_GI","en_GL","en_GM","en_GN","en_GP","en_GR","en_GT","en_GW","en_GY","en_HK","en_HN","en_HR","en_HU","en_ID","en_IE","en_IL","en_IN","en_IS","en_IT","en_JM","en_JO","en_JP","en_KE","en_KG","en_KH","en_KI","en_KM","en_KN","en_KR","en_KW","en_KY","en_KZ","en_LA","en_LC","en_LI","en_LK","en_LS","en_LT","en_LU","en_LV","en_MA","en_MC","en_MD","en_ME","en_MG","en_MH","en_MK","en_ML","en_MN","en_MQ","en_MR","en_MS","en_MT","en_MU","en_MV","en_MW","en_MY","en_MZ","en_NA","en_NC","en_NE","en_NF","en_NG","en_NI","en_NL","en_NO","en_NP","en_NR","en_NU","en_NZ","en_OM","en_PA","en_PE","en_PF","en_PG","en_PH","en_PL","en_PM","en_PN","en_PT","en_PW","en_PY","en_QA","en_RE","en_RO","en_RS","en_RU","en_RW","en_SA","en_SB","en_SC","en_SE","en_SG","en_SH","en_SI","en_SJ","en_SK","en_SL","en_SM","en_SN","en_SO","en_SR","en_ST","en_SV","en_SZ","en_TC","en_TD","en_TG","en_TH","en_TJ","en_TM","en_TN","en_TO","en_TR","en_TT","en_TV","en_TW","en_TZ","en_UA","en_UG","en_US","en_UY","en_VA","en_VC","en_VE","en_VG","en_VN","en_VU","en_WF","en_WS","en_YE","en_YT","en_ZA","en_ZM","en_ZW","es_AD","es_AI","es_AO","es_AR","es_AW","es_BB","es_BJ","es_BM","es_BO","es_BS","es_BZ","es_CD","es_CG","es_CK","es_CL","es_CO","es_CR","es_CV","es_DJ","es_DM","es_DO","es_DZ","es_EC","es_EG","es_ER","es_ES","es_ET","es_FJ","es_FK","es_FO","es_GA","es_GD","es_GE","es_GI","es_GL","es_GM","es_GN","es_GT","es_GW","es_GY","es_HN","es_IE","es_JM","es_JO","es_KE","es_KG","es_KI","es_KM","es_KN","es_KW","es_KY","es_KZ","es_LC","es_LI","es_LS","es_LU","es_MA","es_MG","es_MH","es_ML","es_MR","es_MS","es_MU","es_MW","es_MX","es_MZ","es_NA","es_NC","es_NE","es_NF","es_NI","es_NR","es_NU","es_NZ","es_OM","es_PA","es_PE","es_PF","es_PG","es_PM","es_PN","es_PW","es_PY","es_QA","es_RS","es_RW","es_SA","es_SB","es_SC","es_SH","es_SJ","es_SL","es_SM","es_SN","es_SO","es_SR","es_ST","es_SV","es_SZ","es_TC","es_TD","es_TG","es_TJ","es_TM","es_TN","es_TT","es_TV","es_UA","es_UG","es_US","es_UY","es_VA","es_VC","es_VE","es_VG","es_VU","es_WF","es_YE","es_ZM","et_EE","fi_FI","fr_AD","fr_AE","fr_AI","fr_AM","fr_AO","fr_AW","fr_AZ","fr_BB","fr_BE","fr_BF","fr_BI","fr_BJ","fr_BM","fr_BS","fr_BZ","fr_CA","fr_CD","fr_CG","fr_CH","fr_CI","fr_CK","fr_CM","fr_CV","fr_DJ","fr_DM","fr_DO","fr_DZ","fr_EC","fr_ER","fr_ET","fr_FJ","fr_FK","fr_FO","fr_FR","fr_GA","fr_GD","fr_GE","fr_GF","fr_GI","fr_GL","fr_GM","fr_GN","fr_GP","fr_GT","fr_GW","fr_GY","fr_HN","fr_IE","fr_JM","fr_JO","fr_KE","fr_KG","fr_KI","fr_KM","fr_KN","fr_KW","fr_KY","fr_KZ","fr_LC","fr_LI","fr_LS","fr_LU","fr_MA","fr_MC","fr_MG","fr_MH","fr_ML","fr_MQ","fr_MR","fr_MS","fr_MU","fr_MW","fr_MZ","fr_NA","fr_NC","fr_NE","fr_NF","fr_NI","fr_NR","fr_NU","fr_NZ","fr_OM","fr_PA","fr_PE","fr_PF","fr_PG","fr_PM","fr_PN","fr_PW","fr_QA","fr_RE","fr_RS","fr_RW","fr_SA","fr_SB","fr_SC","fr_SH","fr_SJ","fr_SL","fr_SM","fr_SN","fr_SO","fr_SR","fr_ST","fr_SV","fr_SZ","fr_TC","fr_TD","fr_TG","fr_TJ","fr_TM","fr_TN","fr_TT","fr_TV","fr_UA","fr_UG","fr_US","fr_UY","fr_VA","fr_VC","fr_VE","fr_VG","fr_VU","fr_WF","fr_YE","fr_YT","fr_ZA","fr_ZM","he_IL","hu_HU","id_ID","it_IT","ja_JP","ko_KR","lv_LV","lt_LT","ms_BN","ms_MY","nl_BE","nl_NL","pl_PL","pt_BR","pt_PT","ro_RO","ru_EE","ru_LT","ru_LV","ru_RU","ru_UA","si_LK","sk_SK","sl_SI","sq_AL","sv_SE","tl_PH","th_TH","tr_TR","vi_VN","zh_C2","zh_CN","zh_HK","zh_TW","zh_AD","zh_AE","zh_AI","zh_AO","zh_AW","zh_BB","zh_BH","zh_BJ","zh_BM","zh_BS","zh_BZ","zh_CD","zh_CG","zh_CK","zh_CL","zh_CO","zh_CV","zh_DJ","zh_DM","zh_DO","zh_DZ","zh_EC","zh_EG","zh_ER","zh_ET","zh_FJ","zh_FK","zh_FO","zh_GA","zh_GD","zh_GE","zh_GI","zh_GL","zh_GM","zh_GN","zh_GT","zh_GW","zh_GY","zh_HN","zh_IE","zh_JM","zh_JO","zh_KE","zh_KG","zh_KI","zh_KM","zh_KN","zh_KW","zh_KY","zh_KZ","zh_LC","zh_LI","zh_LS","zh_LT","zh_LU","zh_MA","zh_MG","zh_MH","zh_ML","zh_MR","zh_MS","zh_MU","zh_MW","zh_MZ","zh_NA","zh_NC","zh_NE","zh_NF","zh_NI","zh_NR","zh_NU","zh_NZ","zh_OM","zh_PA","zh_PE","zh_PF","zh_PG","zh_PM","zh_PN","zh_PW","zh_QA","zh_RS","zh_RW","zh_SA","zh_SB","zh_SC","zh_SH","zh_SJ","zh_SL","zh_SM","zh_SN","zh_SO","zh_SR","zh_ST","zh_SV","zh_SZ","zh_TC","zh_TD","zh_TG","zh_TJ","zh_TM","zh_TN","zh_TT","zh_TV","zh_UA","zh_UG","zh_US","zh_UY","zh_VA","zh_VC","zh_VE","zh_VG","zh_VU","zh_WF","zh_YE","zh_ZA","zh_ZM"];function At(e){if(!e)return;let t;if(e.includes("-")){const[n,r]=e.split("-");t=`${n}_${r.toUpperCase()}`}else t=`${e}_${e.toUpperCase()}`;return Ot.includes(t)?t:void 0}var Et=function(e,t,n,r){return new(n||(n=Promise))(function(i,o){function a(e){try{c(r.next(e))}catch(e){o(e)}}function s(e){try{c(r.throw(e))}catch(e){o(e)}}function c(e){var t;e.done?i(e.value):(t=e.value,t instanceof n?t:new n(function(e){e(t)})).then(a,s)}c((r=r.apply(e,t||[])).next())})};class kt{constructor(e){this.scriptLoader=e,this.window=window}getPayPalSDK(e,t,n,r,i){return Et(this,void 0,void 0,function*(){if(!this.window.paypal||i){const i=this.getPayPalSdkScriptConfigOrThrow(e,t,n,r);if(yield this.loadPayPalSdk(i),!this.window.paypal)throw new o}return this.window.paypal})}getPayPalFastlaneSdk(e,t,n,r){return Et(this,void 0,void 0,function*(){if(!this.window.paypalFastlaneSdk){const i=this.getPayPalFastlaneSdkConfiguration(e,t,n,r);if(yield this.loadPayPalSdk(i),!this.window.paypalFastlaneSdk)throw new o}return this.window.paypalFastlaneSdk})}getPayPalGooglePaySdk(e,t,n,r,i){return Et(this,void 0,void 0,function*(){if(!this.window.paypalGooglePay||i){const i=this.getPayPalGooglePaySdkScriptConfigOrThrow(e,t,n,r);yield this.loadPayPalSdk(i)}if(!this.window.paypalGooglePay)throw new o;return this.window.paypalGooglePay})}getPayPalApmsSdk(e,t,n){return Et(this,void 0,void 0,function*(){if(!this.window.paypalApms){const r=this.getPayPalApmSdkConfiguration(e,t,n);if(yield this.loadPayPalSdk(r),!this.window.paypalApms)throw new o}return this.window.paypalApms})}getPayPalMessages(e,t,n){return Et(this,void 0,void 0,function*(){if(!this.window.paypalMessages){const r=this.getPayPalSdkMessagesConfiguration(e,t,n);yield this.loadPayPalSdk(r)}if(!this.window.paypalMessages)throw new o;return this.window.paypalMessages})}loadPayPalSdk(e){return Et(this,arguments,void 0,function*({options:e,attributes:t}){const n=this.transformConfig(e),r=this.transformConfig(t),i=`https://www.paypal.com/sdk/js?${new URLSearchParams(n).toString()}`;yield this.scriptLoader.loadScript(i,{async:!0,attributes:r})})}getPayPalSdkScriptConfigOrThrow(t,n,r,i=!0){const{id:o,clientToken:s,initializationData:c}=t;if(!c||!c.clientId)throw new a(e.MissingPaymentMethod);const{intent:u,clientId:l,merchantId:d,buyerCountry:h,attributionId:p,isVenmoEnabled:f,isHostedCheckoutEnabled:m,isPayPalCreditAvailable:y,isDeveloperModeApplicable:g,availableAlternativePaymentMethods:v=[],enabledAlternativePaymentMethods:_=[],isGooglePayEnabled:b}=c,P=m||i,S="paypalcommercecreditcards"===o||"bigcommerce_payments_creditcards"===o,w=S?["card"]:[],I=S?[]:["card"],C=y?["credit","paylater"]:[],O=y?[]:["credit","paylater"],A=f?["venmo"]:[],E=f?[]:["venmo"],k=v.filter(e=>!_.includes(e)),z=b?["googlepay"]:[],T=i?["card-fields"]:[],j=this.filterFundingOptions([...I,...O,...E,...k]),x=this.filterFundingOptions([...w,...C,...A,..._]),B=At(r);return{options:Object.assign(Object.assign({"client-id":l,"merchant-id":d,"enable-funding":x.length>0?x:void 0,"disable-funding":j.length>0?j:void 0,commit:P,components:["buttons","hosted-fields","payment-fields","legal",...z,...T],currency:n,intent:u},g&&{"buyer-country":h}),B&&{locale:B}),attributes:{"data-partner-attribution-id":p,"data-client-token":s}}}getPayPalFastlaneSdkConfiguration(t,n,r,i){const{clientToken:o,initializationData:s}=t;if(!s||!s.clientId)throw new a(e.MissingPaymentMethod);const{intent:c,clientId:u,merchantId:l,attributionId:d}=s,h=At(i);return{options:Object.assign(Object.assign({"client-id":u,"merchant-id":l,commit:!0,components:["fastlane","buttons","payment-fields","hosted-fields","three-domain-secure"],currency:n},h&&{locale:h}),{intent:c}),attributes:{"data-client-metadata-id":r.replace(/-/g,""),"data-namespace":"paypalFastlaneSdk","data-partner-attribution-id":d,"data-sdk-client-token":o}}}getPayPalGooglePaySdkScriptConfigOrThrow(t,n,r,i=!0){const{clientToken:o,initializationData:s}=t;if(!s||!s.clientId)throw new a(e.MissingPaymentMethod);const{intent:c,clientId:u,merchantId:l,buyerCountry:d,attributionId:h,isHostedCheckoutEnabled:p,isDeveloperModeApplicable:f}=s,m=p||i,y=At(r);return{options:Object.assign(Object.assign({"client-id":u,"merchant-id":l,commit:m,components:["googlepay"],currency:n,intent:c},f&&{"buyer-country":d}),y&&{locale:y}),attributes:{"data-partner-attribution-id":h,"data-client-token":o,"data-namespace":"paypalGooglePay"}}}getPayPalApmSdkConfiguration(t,n,r){const{initializationData:i}=t;if(!i||!i.clientId)throw new a(e.MissingPaymentMethod);const{intent:o,clientId:s,merchantId:c,buyerCountry:u,attributionId:l,isDeveloperModeApplicable:d,availableAlternativePaymentMethods:h=[],enabledAlternativePaymentMethods:p=[]}=i,f=this.filterFundingOptions(p),m=this.filterFundingOptions(h.filter(e=>!p.includes(e))),y=At(r);return{options:Object.assign(Object.assign({"client-id":s,"merchant-id":c,"enable-funding":f.length>0?f:void 0,"disable-funding":m.length>0?m:void 0,commit:!0,components:["buttons","payment-fields"],currency:n,intent:o},d&&{"buyer-country":u}),y&&{locale:y}),attributes:{"data-partner-attribution-id":l,"data-namespace":"paypalApms"}}}getPayPalSdkMessagesConfiguration(t,n,r){const{initializationData:i}=t;if(!i||!i.clientId)throw new a(e.MissingPaymentMethod);const{clientId:o,merchantId:s,attributionId:c,isDeveloperModeApplicable:u,buyerCountry:l}=i,d=At(r);return{options:Object.assign(Object.assign({"client-id":o,"merchant-id":s,components:["messages"],currency:n},u&&{"buyer-country":l}),d&&{locale:d}),attributes:{"data-namespace":"paypalMessages","data-partner-attribution-id":c}}}filterFundingOptions(e){const t=["klarna","afterpay"];return e?e.filter(e=>!t.includes(e)):[]}transformConfig(e){let t={};return Object.keys(e).forEach(n=>{const r=e[n];null==r||""===r||Array.isArray(r)&&0===r.length||(t=Object.assign(Object.assign({},t),{[n]:Array.isArray(r)?r.join(","):r}))}),t}}function zt(){return new kt((0,t.vQ)())}var Tt=function(e,t,n,r){return new(n||(n=Promise))(function(i,o){function a(e){try{c(r.next(e))}catch(e){o(e)}}function s(e){try{c(r.throw(e))}catch(e){o(e)}}function c(e){var t;e.done?i(e.value):(t=e.value,t instanceof n?t:new n(function(e){e(t)})).then(a,s)}c((r=r.apply(e,t||[])).next())})};class jt{constructor(e){this.bigCommercePaymentsWalletService=e}initialize(e){return Tt(this,void 0,void 0,function*(){var t,n;const{bigcommerce_paymentspaypal:r,containerId:i,methodId:o}=e;if(!o)throw new L('Unable to initialize payment because "options.methodId" argument is not provided.');if(!i)throw new L('Unable to initialize payment because "options.containerId" argument is not provided.');if(!r)throw new L('Unable to initialize payment because "options.bigcommerce_paymentspaypal" argument is not provided.');let a;try{a=JSON.parse(atob(r.initializationData))}catch(e){throw new L("Failed to parse payment method 'initializationData'.")}const s=null===(n=null===(t=a.initializationData)||void 0===t?void 0:t.paymentButtonStyles)||void 0===n?void 0:n.cartButtonStyles;yield this.bigCommercePaymentsWalletService.loadPayPalSdk(a,r.currency.code,!1),this.renderButton(i,"bigcommerce_payments.paypal",r.cartId,s)})}deinitialize(){return Promise.resolve()}renderButton(e,t,n,r){const i=this.bigCommercePaymentsWalletService.getPayPalSdkOrThrow(),o={createOrder:()=>this.bigCommercePaymentsWalletService.createPaymentOrderIntent(t,n),onApprove:(e,r)=>Tt(this,[e,r],void 0,function*({orderID:e},r){const i=yield r.order.get(),o=this.bigCommercePaymentsWalletService.mapOrderDetailsToBillingAddress(i);yield this.bigCommercePaymentsWalletService.addBillingAddress(n,o),yield this.bigCommercePaymentsWalletService.proxyTokenizationPayment(n,t,"bigcommerce_payments",e)})},a=Object.assign({fundingSource:i.FUNDING.PAYPAL,style:this.bigCommercePaymentsWalletService.getValidButtonStyle(r)},o),s=i.Buttons(a);s.isEligible()?s.render(`#${e}`):this.bigCommercePaymentsWalletService.removeElement(e)}}const xt=l(e=>new jt(new Ct(e,zt(),"BigcommercePaymentWalletIntentData")),[{id:"bigcommerce_paymentspaypal"}]);var Bt=function(e,t,n,r){return new(n||(n=Promise))(function(i,o){function a(e){try{c(r.next(e))}catch(e){o(e)}}function s(e){try{c(r.throw(e))}catch(e){o(e)}}function c(e){var t;e.done?i(e.value):(t=e.value,t instanceof n?t:new n(function(e){e(t)})).then(a,s)}c((r=r.apply(e,t||[])).next())})};class Mt{constructor(e){this.bigCommercePaymentsPayLaterWalletService=e}initialize(e){return Bt(this,void 0,void 0,function*(){var t,n;const{bigcommerce_paymentspaypalcredit:r,containerId:i,methodId:o}=e;if(!o)throw new L('Unable to initialize payment because "options.methodId" argument is not provided.');if(!i)throw new L('Unable to initialize payment because "options.containerId" argument is not provided.');if(!r)throw new L('Unable to initialize payment because "options.bigcommerce_paymentspaypalcredit" argument is not provided.');let a;try{a=JSON.parse(atob(r.initializationData))}catch(e){throw new L("Failed to parse payment method 'initializationData'.")}const s=null===(n=null===(t=a.initializationData)||void 0===t?void 0:t.paymentButtonStyles)||void 0===n?void 0:n.cartButtonStyles;yield this.bigCommercePaymentsPayLaterWalletService.loadPayPalSdk(a,r.currency.code,!1),this.renderButton(i,"bigcommerce_payments.paypalcredit",r.cartId,s)})}deinitialize(){return Promise.resolve()}renderButton(e,t,n,r){const i=this.bigCommercePaymentsPayLaterWalletService.getPayPalSdkOrThrow(),o=[i.FUNDING.PAYLATER,i.FUNDING.CREDIT],a={createOrder:()=>this.bigCommercePaymentsPayLaterWalletService.createPaymentOrderIntent(t,n),onApprove:(e,r)=>Bt(this,[e,r],void 0,function*({orderID:e},r){const i=yield r.order.get(),o=this.bigCommercePaymentsPayLaterWalletService.mapOrderDetailsToBillingAddress(i);yield this.bigCommercePaymentsPayLaterWalletService.addBillingAddress(n,o),yield this.bigCommercePaymentsPayLaterWalletService.proxyTokenizationPayment(n,t,"bigcommerce_payments_paylater",e)})};let s=!1;o.forEach(t=>{if(!s){const n=Object.assign({fundingSource:t,style:this.bigCommercePaymentsPayLaterWalletService.getValidButtonStyle(r)},a),o=i.Buttons(n);o.isEligible()&&(o.render(`#${e}`),s=!0)}}),s||this.bigCommercePaymentsPayLaterWalletService.removeElement(e)}}const Ft=l(e=>new Mt(new Ct(e,zt(),"BigcommercePaymentWalletIntentData")),[{id:"bigcommerce_paymentspaypalcredit"}])})(),module.exports=r})();
|
|
1
|
+
(()=>{var e={9165(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e){var t=new r.default;return new i.default(t,e)};var r=n(9828),i=n(5470)},9828(e,t){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var n=function(){function e(){}return e.prototype.build=function(e,t,n){var r=this,i=document.createElement("form");return i.style.display="none",i.setAttribute("action",e),i.setAttribute("method","POST"),i.setAttribute("target",n||"_top"),Object.keys(t).forEach(function(e){var n=t[e];i.appendChild(r._createInput(n,e))}),i},e.prototype._createInput=function(e,t){var n=document.createElement("input");return n.setAttribute("name",t),n.setAttribute("type","hidden"),n.setAttribute("value",e),n},e}();t.default=n},5470(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=n(9783),i=function(){function e(e,t){this._formBuilder=e,this._options=t}return e.prototype.postForm=function(e,t,n,r){var i=this._formBuilder.build(this._prependHost(e),t,r);window.addEventListener("unload",function e(){window.removeEventListener("unload",e),n&&n()}),document.body.appendChild(i),i.submit()},e.prototype._prependHost=function(e){return this._options&&this._options.host&&!(0,r.isAbsoluteUrl)(e)?(0,r.joinPaths)(this._options.host,e):e},e}();t.default=i},8686(e,t,n){"use strict";t.createFormPoster=void 0;var r=n(9165);Object.defineProperty(t,"createFormPoster",{enumerable:!0,get:function(){return r.default}});n(5470)},9783(e,t){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.isAbsoluteUrl=function(e){return/^https?:\/\//.test(e)},t.joinPaths=function(e,t){return"".concat((n=e,n.replace(/\/$/,"")),"/").concat(function(e){return e.replace(/^\//,"")}(t));var n}},4325(e,t,n){"use strict";n.d(t,{g:()=>i});var r=n(5889),i=function(){function e(){this._cache={}}return e.prototype.read=function(e,t){var n=this.getKey(e,t.params);return this._cache[n]||null},e.prototype.write=function(e,t,n){var r=this.getKey(e,t.params);this._cache[r]=n},e.prototype.getKey=function(e,t){return void 0===t&&(t={}),0===Object.keys(t).length?e:"".concat(e,"?").concat(r.stringify(t))},e}()},321(e,t,n){"use strict";n.d(t,{A:()=>s});var r=n(168),i=n(1675),o=n(5861),a=n(4670);function s(e){return new a.A(new o.A,new i.A,r,e)}},6889(e,t,n){"use strict";n.d(t,{A:()=>i});var r=n(2024);function i(e){return new r.A(e)}},4043(e,t,n){"use strict";n.r(t),n.d(t,{RequestSender:()=>o.A,Timeout:()=>a.A,createRequestSender:()=>r.A,createTimeout:()=>i.A});var r=n(321),i=n(6889),o=n(4670),a=n(2024)},4843(e,t,n){"use strict";function r(e){return!!e&&("object"==typeof e||"function"==typeof e)&&"function"==typeof e.then}n.d(t,{A:()=>r})},1675(e,t,n){"use strict";n.d(t,{A:()=>s});var r=n(1635),i=n(710),o=/application\/(\w+\+)?json/,a=/application\/x-www-form-urlencoded/;const s=function(){function e(){}return e.prototype.toRequestBody=function(e){var t=e.headers?this._getHeader(e.headers,"Content-Type"):"";if(e.body){if(o.test(t))return JSON.stringify(e.body);if(a.test(t))return(0,i.A)(e.body)}return e.body},e.prototype.toResponse=function(e){var t=this._parseResponseHeaders(e.getAllResponseHeaders());return{body:this._parseResponseBody("response"in e?e.response:e.responseText,t),headers:t,status:e.status,statusText:e.statusText}},e.prototype._parseResponseBody=function(e,t){var n=this._getHeader(t,"Content-Type");return e&&o.test(n)?JSON.parse(e):e},e.prototype._parseResponseHeaders=function(e){return(e?e.replace(/\r?\n[\t ]+/g," ").split(/\r?\n/):[]).reduce(function(e,t){var n,i=t.split(":"),o=(i.shift()||"").trim();return o?(0,r.__assign)((0,r.__assign)({},e),((n={})[o.toLowerCase()]=i.join(":").trim(),n)):e},{})},e.prototype._getHeader=function(e,t){return e&&t&&(e[t]||e[t.toLowerCase()])||""},e}()},5861(e,t,n){"use strict";n.d(t,{A:()=>i});var r=n(5889);const i=function(){function e(){}return e.prototype.createRequest=function(e,t){var n=new XMLHttpRequest;return this._configureRequest(n,e,t),n},e.prototype._configureRequest=function(e,t,n){void 0===n&&(n={}),e.open(n.method||"GET",this._formatUrl(t,n.params,n.encodeParams),!0),n.headers&&this._configureRequestHeaders(e,n.headers),"boolean"==typeof n.credentials&&(e.withCredentials=n.credentials),"number"==typeof n.timeout&&(e.timeout=n.timeout)},e.prototype._configureRequestHeaders=function(e,t){Object.keys(t).filter(function(e){return null!==t[e]}).forEach(function(n){e.setRequestHeader(n,t[n])})},e.prototype._formatUrl=function(e,t,n){return void 0===n&&(n=!0),t&&0!==Object.keys(t).length?"".concat(e,"?").concat(r.stringify(t,{encode:n})):e},e}()},4670(e,t,n){"use strict";n.d(t,{A:()=>u});var r=n(1635),i=n(35),o=n.n(i),a=n(4325),s=n(4843),c=n(2024);const u=function(){function e(e,t,n,r){void 0===r&&(r={}),this._requestFactory=e,this._payloadTransformer=t,this._cookie=n,this._options=r,this._cache=this._options.cache||new a.g}return e.prototype.sendRequest=function(e,t){var n=this,r=this._mergeDefaultOptions(e,t),i=this._getCachedRequest(e,r);if(i)return Promise.resolve(i);var o=this._requestFactory.createRequest(this._prependHost(e),r);return new Promise(function(t,i){var a=function(){var a=n._payloadTransformer.toResponse(o);a.status>=200&&a.status<300?(n._cacheRequest(e,r,a),t(a)):i(a)};o.onload=a,o.onerror=a,o.onabort=a,o.ontimeout=a,r.timeout instanceof c.A&&(r.timeout.onComplete(function(){return o.abort()}),r.timeout.start()),(0,s.A)(r.timeout)&&r.timeout.then(function(){return o.abort()}),o.send(n._payloadTransformer.toRequestBody(r))})},e.prototype.get=function(e,t){return this.sendRequest(e,(0,r.__assign)((0,r.__assign)({},t),{method:"GET"}))},e.prototype.post=function(e,t){return this.sendRequest(e,(0,r.__assign)((0,r.__assign)({},t),{method:"POST"}))},e.prototype.put=function(e,t){return this.sendRequest(e,(0,r.__assign)((0,r.__assign)({},t),{method:"PUT"}))},e.prototype.patch=function(e,t){return this.sendRequest(e,(0,r.__assign)((0,r.__assign)({},t),{method:"PATCH"}))},e.prototype.delete=function(e,t){return this.sendRequest(e,(0,r.__assign)((0,r.__assign)({},t),{method:"DELETE"}))},e.prototype._mergeDefaultOptions=function(e,t){var n={credentials:!0,encodeParams:!0,headers:{Accept:"application/json, text/plain, */*"},method:"GET"},r=this._cookie.get("XSRF-TOKEN");return r&&n.headers&&!this._isAssetRequest(e,t)&&this._isLocalRequest(e)&&(n.headers["X-XSRF-TOKEN"]=r),t&&t.body&&n.headers&&(n.headers["Content-Type"]="application/json"),o()({},n,t)},e.prototype._prependHost=function(e){return!this._options.host||/^https?:\/\//.test(e)?e:"".concat(this._options.host.replace(/\/$/,""),"/").concat(e.replace(/^\//,""))},e.prototype._shouldCacheRequest=function(e){return"GET"===(e.method||"GET").toUpperCase()&&Boolean(e.cache)},e.prototype._getCachedRequest=function(e,t){return this._shouldCacheRequest(t)?this._cache.read(e,t):null},e.prototype._cacheRequest=function(e,t,n){this._shouldCacheRequest(t)&&this._cache.write(e,t,n)},e.prototype._isAssetRequest=function(e,t){return(!t||!t.method||"GET"===t.method.toUpperCase())&&/\.(png|gif|jpe?g|css|js|json|svg|html?)$/.test(e.split("?")[0])},e.prototype._isLocalRequest=function(e){return!!e.match(new RegExp("^(https?:)?//"+window.location.hostname))||!e.match(new RegExp("^(https?:)?//"))},e}()},2024(e,t,n){"use strict";n.d(t,{A:()=>r});const r=function(){function e(e){var t=this;this._delay=e,this._promise=new Promise(function(e){t._resolve=e})}return e.prototype.onComplete=function(e){this._promise.then(e)},e.prototype.complete=function(){this._resolve(),void 0!==this._timeoutToken&&clearTimeout(this._timeoutToken)},e.prototype.start=function(){var e=this;void 0!==this._delay&&(this._timeoutToken=setTimeout(function(){return e.complete()},this._delay))},e}()},710(e,t,n){"use strict";function r(e){return"object"!=typeof e||null===e?e:Object.keys(e).filter(function(t){return void 0!==e[t]}).map(function(t){var n=e[t];return"string"==typeof n?"".concat(t,"=").concat(encodeURIComponent(n)):"".concat(t,"=").concat(encodeURIComponent(JSON.stringify(n)||""))}).join("&")}n.d(t,{A:()=>r})},5889(e,t,n){"use strict";const r=n(803),i=n(1915),o=n(1657),a=n(3814);function s(e){if("string"!=typeof e||1!==e.length)throw new TypeError("arrayFormatSeparator must be single character string")}function c(e,t){return t.encode?t.strict?r(e):encodeURIComponent(e):e}function u(e,t){return t.decode?i(e):e}function l(e){return Array.isArray(e)?e.sort():"object"==typeof e?l(Object.keys(e)).sort((e,t)=>Number(e)-Number(t)).map(t=>e[t]):e}function d(e){const t=e.indexOf("#");return-1!==t&&(e=e.slice(0,t)),e}function h(e){const t=(e=d(e)).indexOf("?");return-1===t?"":e.slice(t+1)}function p(e,t){return t.parseNumbers&&!Number.isNaN(Number(e))&&"string"==typeof e&&""!==e.trim()?e=Number(e):!t.parseBooleans||null===e||"true"!==e.toLowerCase()&&"false"!==e.toLowerCase()||(e="true"===e.toLowerCase()),e}function f(e,t){s((t=Object.assign({decode:!0,sort:!0,arrayFormat:"none",arrayFormatSeparator:",",parseNumbers:!1,parseBooleans:!1},t)).arrayFormatSeparator);const n=function(e){let t;switch(e.arrayFormat){case"index":return(e,n,r)=>{t=/\[(\d*)\]$/.exec(e),e=e.replace(/\[\d*\]$/,""),t?(void 0===r[e]&&(r[e]={}),r[e][t[1]]=n):r[e]=n};case"bracket":return(e,n,r)=>{t=/(\[\])$/.exec(e),e=e.replace(/\[\]$/,""),t?void 0!==r[e]?r[e]=[].concat(r[e],n):r[e]=[n]:r[e]=n};case"comma":case"separator":return(t,n,r)=>{const i="string"==typeof n&&n.includes(e.arrayFormatSeparator),o="string"==typeof n&&!i&&u(n,e).includes(e.arrayFormatSeparator);n=o?u(n,e):n;const a=i||o?n.split(e.arrayFormatSeparator).map(t=>u(t,e)):null===n?n:u(n,e);r[t]=a};default:return(e,t,n)=>{void 0!==n[e]?n[e]=[].concat(n[e],t):n[e]=t}}}(t),r=Object.create(null);if("string"!=typeof e)return r;if(!(e=e.trim().replace(/^[?#&]/,"")))return r;for(const i of e.split("&")){if(""===i)continue;let[e,a]=o(t.decode?i.replace(/\+/g," "):i,"=");a=void 0===a?null:["comma","separator"].includes(t.arrayFormat)?a:u(a,t),n(u(e,t),a,r)}for(const e of Object.keys(r)){const n=r[e];if("object"==typeof n&&null!==n)for(const e of Object.keys(n))n[e]=p(n[e],t);else r[e]=p(n,t)}return!1===t.sort?r:(!0===t.sort?Object.keys(r).sort():Object.keys(r).sort(t.sort)).reduce((e,t)=>{const n=r[t];return Boolean(n)&&"object"==typeof n&&!Array.isArray(n)?e[t]=l(n):e[t]=n,e},Object.create(null))}t.extract=h,t.parse=f,t.stringify=(e,t)=>{if(!e)return"";s((t=Object.assign({encode:!0,strict:!0,arrayFormat:"none",arrayFormatSeparator:","},t)).arrayFormatSeparator);const n=n=>t.skipNull&&null==e[n]||t.skipEmptyString&&""===e[n],r=function(e){switch(e.arrayFormat){case"index":return t=>(n,r)=>{const i=n.length;return void 0===r||e.skipNull&&null===r||e.skipEmptyString&&""===r?n:null===r?[...n,[c(t,e),"[",i,"]"].join("")]:[...n,[c(t,e),"[",c(i,e),"]=",c(r,e)].join("")]};case"bracket":return t=>(n,r)=>void 0===r||e.skipNull&&null===r||e.skipEmptyString&&""===r?n:null===r?[...n,[c(t,e),"[]"].join("")]:[...n,[c(t,e),"[]=",c(r,e)].join("")];case"comma":case"separator":return t=>(n,r)=>null==r||0===r.length?n:0===n.length?[[c(t,e),"=",c(r,e)].join("")]:[[n,c(r,e)].join(e.arrayFormatSeparator)];default:return t=>(n,r)=>void 0===r||e.skipNull&&null===r||e.skipEmptyString&&""===r?n:null===r?[...n,c(t,e)]:[...n,[c(t,e),"=",c(r,e)].join("")]}}(t),i={};for(const t of Object.keys(e))n(t)||(i[t]=e[t]);const o=Object.keys(i);return!1!==t.sort&&o.sort(t.sort),o.map(n=>{const i=e[n];return void 0===i?"":null===i?c(n,t):Array.isArray(i)?i.reduce(r(n),[]).join("&"):c(n,t)+"="+c(i,t)}).filter(e=>e.length>0).join("&")},t.parseUrl=(e,t)=>{t=Object.assign({decode:!0},t);const[n,r]=o(e,"#");return Object.assign({url:n.split("?")[0]||"",query:f(h(e),t)},t&&t.parseFragmentIdentifier&&r?{fragmentIdentifier:u(r,t)}:{})},t.stringifyUrl=(e,n)=>{n=Object.assign({encode:!0,strict:!0},n);const r=d(e.url).split("?")[0]||"",i=t.extract(e.url),o=t.parse(i,{sort:!1}),a=Object.assign(o,e.query);let s=t.stringify(a,n);s&&(s=`?${s}`);let u=function(e){let t="";const n=e.indexOf("#");return-1!==n&&(t=e.slice(n)),t}(e.url);return e.fragmentIdentifier&&(u=`#${c(e.fragmentIdentifier,n)}`),`${r}${s}${u}`},t.pick=(e,n,r)=>{r=Object.assign({parseFragmentIdentifier:!0},r);const{url:i,query:o,fragmentIdentifier:s}=t.parseUrl(e,r);return t.stringifyUrl({url:i,query:a(o,n),fragmentIdentifier:s},r)},t.exclude=(e,n,r)=>{const i=Array.isArray(n)?e=>!n.includes(e):(e,t)=>!n(e,t);return t.pick(e,i,r)}},5477(e,t){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var n=function(){function e(){}return e.prototype.canSupportRel=function(e){var t=document.createElement("link");return!!(t.relList&&t.relList.supports&&t.relList.supports(e))},e}();t.default=n},471(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(){return new o.default(new i.default,(0,r.createRequestSender)())};var r=n(4043),i=n(5477),o=n(4886)},9722(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(){return new o.default(new i.default,(0,r.createRequestSender)())};var r=n(4043),i=n(5477),o=n(7995)},5895(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(){return r||(r=(0,i.default)()),r};var r,i=n(471)},282(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(){return r||(r=(0,i.default)()),r};var r,i=n(9722)},315(e,t,n){"use strict";t.vQ=t.Hb=void 0;n(4886);var r=n(471);Object.defineProperty(t,"Hb",{enumerable:!0,get:function(){return r.default}});var i=n(5895);Object.defineProperty(t,"vQ",{enumerable:!0,get:function(){return i.default}});n(7995),n(9722),n(282)},4886(e,t){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var n=function(){function e(e,t){this._browserSupport=e,this._requestSender=t,this._scripts={},this._preloadedScripts={}}return e.prototype.loadScript=function(e,t){var n=this;return this._scripts[e]||(this._scripts[e]=new Promise(function(r,i){var o=document.createElement("script"),a=t||{},s=a.async,c=void 0!==s&&s,u=a.attributes,l=void 0===u?{}:u;Object.keys(l).forEach(function(e){o.setAttribute(e,l[e])}),o.onload=function(){return r()},o.onreadystatechange=function(){return r()},o.onerror=function(t){delete n._scripts[e],i(t)},o.async=c,o.src=e,document.body.appendChild(o)})),this._scripts[e]},e.prototype.loadScripts=function(e,t){var n=this;return Promise.all(e.map(function(e){return n.loadScript(e,t)})).then(function(){})},e.prototype.preloadScript=function(e,t){var n=this;return this._preloadedScripts[e]||(this._preloadedScripts[e]=new Promise(function(r,i){var o=(t||{}).prefetch,a=void 0!==o&&o?"prefetch":"preload";if(n._browserSupport.canSupportRel(a)){var s=document.createElement("link");s.as="script",s.rel=a,s.href=e,s.onload=function(){r()},s.onerror=function(){delete n._preloadedScripts[e],i()},document.head.appendChild(s)}else n._requestSender.get(e,{credentials:!1,headers:{Accept:"application/javascript"}}).then(function(){return r()}).catch(i)})),this._preloadedScripts[e]},e.prototype.preloadScripts=function(e,t){var n=this;return Promise.all(e.map(function(e){return n.preloadScript(e,t)})).then(function(){})},e}();t.default=n},7995(e,t){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var n=function(){function e(e,t){this._browserSupport=e,this._requestSender=t,this._stylesheets={},this._preloadedStylesheets={}}return e.prototype.loadStylesheet=function(e,t){var n=this;return this._stylesheets[e]||(this._stylesheets[e]=new Promise(function(r,i){var o=document.createElement("link"),a=t||{},s=a.prepend,c=void 0!==s&&s,u=a.attributes,l=void 0===u?{}:u;Object.keys(l).forEach(function(e){o.setAttribute(e,l[e])}),o.onload=function(){return r()},o.onerror=function(t){delete n._stylesheets[e],i(t)},o.rel="stylesheet",o.href=e,c&&document.head.children[0]?document.head.insertBefore(o,document.head.children[0]):document.head.appendChild(o)})),this._stylesheets[e]},e.prototype.loadStylesheets=function(e,t){var n=this;return Promise.all(e.map(function(e){return n.loadStylesheet(e,t)})).then(function(){})},e.prototype.preloadStylesheet=function(e,t){var n=this;return this._preloadedStylesheets[e]||(this._preloadedStylesheets[e]=new Promise(function(r,i){var o=(t||{}).prefetch,a=void 0!==o&&o,s=a?"prefetch":"preload";if(n._browserSupport.canSupportRel(s)){var c=document.createElement("link");c.as="style",c.rel=a?"prefetch":"preload",c.href=e,c.onload=function(){r()},c.onerror=function(t){delete n._preloadedStylesheets[e],i(t)},document.head.appendChild(c)}else n._requestSender.get(e,{credentials:!1,headers:{Accept:"text/css"}}).then(function(){return r()}).catch(i)})),this._preloadedStylesheets[e]},e.prototype.preloadStylesheets=function(e,t){var n=this;return Promise.all(e.map(function(e){return n.preloadStylesheet(e,t)})).then(function(){})},e}();t.default=n},1915(e){"use strict";var t="%[a-f0-9]{2}",n=new RegExp("("+t+")|([^%]+?)","gi"),r=new RegExp("("+t+")+","gi");function i(e,t){try{return[decodeURIComponent(e.join(""))]}catch(e){}if(1===e.length)return e;t=t||1;var n=e.slice(0,t),r=e.slice(t);return Array.prototype.concat.call([],i(n),i(r))}function o(e){try{return decodeURIComponent(e)}catch(o){for(var t=e.match(n)||[],r=1;r<t.length;r++)t=(e=i(t,r).join("")).match(n)||[];return e}}e.exports=function(e){if("string"!=typeof e)throw new TypeError("Expected `encodedURI` to be of type `string`, got `"+typeof e+"`");try{return e=e.replace(/\+/g," "),decodeURIComponent(e)}catch(t){return function(e){for(var t={"%FE%FF":"��","%FF%FE":"��"},n=r.exec(e);n;){try{t[n[0]]=decodeURIComponent(n[0])}catch(e){var i=o(n[0]);i!==n[0]&&(t[n[0]]=i)}n=r.exec(e)}t["%C2"]="�";for(var a=Object.keys(t),s=0;s<a.length;s++){var c=a[s];e=e.replace(new RegExp(c,"g"),t[c])}return e}(e)}}},3814(e){"use strict";e.exports=function(e,t){for(var n={},r=Object.keys(e),i=Array.isArray(t),o=0;o<r.length;o++){var a=r[o],s=e[a];(i?-1!==t.indexOf(a):t(a,s,e))&&(n[a]=s)}return n}},168(e){var t;t=function(){function e(){for(var e=0,t={};e<arguments.length;e++){var n=arguments[e];for(var r in n)t[r]=n[r]}return t}function t(e){return e.replace(/(%[0-9A-Z]{2})+/g,decodeURIComponent)}return function n(r){function i(){}function o(t,n,o){if("undefined"!=typeof document){"number"==typeof(o=e({path:"/"},i.defaults,o)).expires&&(o.expires=new Date(1*new Date+864e5*o.expires)),o.expires=o.expires?o.expires.toUTCString():"";try{var a=JSON.stringify(n);/^[\{\[]/.test(a)&&(n=a)}catch(e){}n=r.write?r.write(n,t):encodeURIComponent(String(n)).replace(/%(23|24|26|2B|3A|3C|3E|3D|2F|3F|40|5B|5D|5E|60|7B|7D|7C)/g,decodeURIComponent),t=encodeURIComponent(String(t)).replace(/%(23|24|26|2B|5E|60|7C)/g,decodeURIComponent).replace(/[\(\)]/g,escape);var s="";for(var c in o)o[c]&&(s+="; "+c,!0!==o[c]&&(s+="="+o[c].split(";")[0]));return document.cookie=t+"="+n+s}}function a(e,n){if("undefined"!=typeof document){for(var i={},o=document.cookie?document.cookie.split("; "):[],a=0;a<o.length;a++){var s=o[a].split("="),c=s.slice(1).join("=");n||'"'!==c.charAt(0)||(c=c.slice(1,-1));try{var u=t(s[0]);if(c=(r.read||r)(c,u)||t(c),n)try{c=JSON.parse(c)}catch(e){}if(i[u]=c,e===u)break}catch(e){}}return e?i[e]:i}}return i.set=o,i.get=function(e){return a(e,!1)},i.getJSON=function(e){return a(e,!0)},i.remove=function(t,n){o(t,"",e(n,{expires:-1}))},i.defaults={},i.withConverter=n,i}(function(){})},"function"==typeof define&&define.amd&&define(t),e.exports=t()},35(e,t,n){e=n.nmd(e);var r="__lodash_hash_undefined__",i=9007199254740991,o="[object Arguments]",a="[object Function]",s="[object Object]",c=/^\[object .+?Constructor\]$/,u=/^(?:0|[1-9]\d*)$/,l={};l["[object Float32Array]"]=l["[object Float64Array]"]=l["[object Int8Array]"]=l["[object Int16Array]"]=l["[object Int32Array]"]=l["[object Uint8Array]"]=l["[object Uint8ClampedArray]"]=l["[object Uint16Array]"]=l["[object Uint32Array]"]=!0,l[o]=l["[object Array]"]=l["[object ArrayBuffer]"]=l["[object Boolean]"]=l["[object DataView]"]=l["[object Date]"]=l["[object Error]"]=l[a]=l["[object Map]"]=l["[object Number]"]=l[s]=l["[object RegExp]"]=l["[object Set]"]=l["[object String]"]=l["[object WeakMap]"]=!1;var d,h,p,f="object"==typeof n.g&&n.g&&n.g.Object===Object&&n.g,m="object"==typeof self&&self&&self.Object===Object&&self,y=f||m||Function("return this")(),g=t&&!t.nodeType&&t,v=g&&e&&!e.nodeType&&e,_=v&&v.exports===g,b=_&&f.process,P=function(){try{return v&&v.require&&v.require("util").types||b&&b.binding&&b.binding("util")}catch(e){}}(),S=P&&P.isTypedArray,w=Array.prototype,I=Function.prototype,C=Object.prototype,O=y["__core-js_shared__"],A=I.toString,E=C.hasOwnProperty,k=(d=/[^.]+$/.exec(O&&O.keys&&O.keys.IE_PROTO||""))?"Symbol(src)_1."+d:"",z=C.toString,T=A.call(Object),j=RegExp("^"+A.call(E).replace(/[\\^$.*+?()[\]{}|]/g,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$"),x=_?y.Buffer:void 0,B=y.Symbol,M=y.Uint8Array,F=(x&&x.allocUnsafe,h=Object.getPrototypeOf,p=Object,function(e){return h(p(e))}),N=Object.create,D=C.propertyIsEnumerable,U=w.splice,R=B?B.toStringTag:void 0,L=function(){try{var e=se(Object,"defineProperty");return e({},"",{}),e}catch(e){}}(),V=x?x.isBuffer:void 0,G=Math.max,W=Date.now,$=se(y,"Map"),q=se(Object,"create"),H=function(){function e(){}return function(t){if(!_e(t))return{};if(N)return N(t);e.prototype=t;var n=new e;return e.prototype=void 0,n}}();function K(e){var t=-1,n=null==e?0:e.length;for(this.clear();++t<n;){var r=e[t];this.set(r[0],r[1])}}function Y(e){var t=-1,n=null==e?0:e.length;for(this.clear();++t<n;){var r=e[t];this.set(r[0],r[1])}}function Z(e){var t=-1,n=null==e?0:e.length;for(this.clear();++t<n;){var r=e[t];this.set(r[0],r[1])}}function J(e){var t=this.__data__=new Y(e);this.size=t.size}function Q(e,t,n){(void 0!==n&&!he(e[t],n)||void 0===n&&!(t in e))&&te(e,t,n)}function X(e,t,n){var r=e[t];E.call(e,t)&&he(r,n)&&(void 0!==n||t in e)||te(e,t,n)}function ee(e,t){for(var n=e.length;n--;)if(he(e[n][0],t))return n;return-1}function te(e,t,n){"__proto__"==t&&L?L(e,t,{configurable:!0,enumerable:!0,value:n,writable:!0}):e[t]=n}K.prototype.clear=function(){this.__data__=q?q(null):{},this.size=0},K.prototype.delete=function(e){var t=this.has(e)&&delete this.__data__[e];return this.size-=t?1:0,t},K.prototype.get=function(e){var t=this.__data__;if(q){var n=t[e];return n===r?void 0:n}return E.call(t,e)?t[e]:void 0},K.prototype.has=function(e){var t=this.__data__;return q?void 0!==t[e]:E.call(t,e)},K.prototype.set=function(e,t){var n=this.__data__;return this.size+=this.has(e)?0:1,n[e]=q&&void 0===t?r:t,this},Y.prototype.clear=function(){this.__data__=[],this.size=0},Y.prototype.delete=function(e){var t=this.__data__,n=ee(t,e);return!(n<0||(n==t.length-1?t.pop():U.call(t,n,1),--this.size,0))},Y.prototype.get=function(e){var t=this.__data__,n=ee(t,e);return n<0?void 0:t[n][1]},Y.prototype.has=function(e){return ee(this.__data__,e)>-1},Y.prototype.set=function(e,t){var n=this.__data__,r=ee(n,e);return r<0?(++this.size,n.push([e,t])):n[r][1]=t,this},Z.prototype.clear=function(){this.size=0,this.__data__={hash:new K,map:new($||Y),string:new K}},Z.prototype.delete=function(e){var t=ae(this,e).delete(e);return this.size-=t?1:0,t},Z.prototype.get=function(e){return ae(this,e).get(e)},Z.prototype.has=function(e){return ae(this,e).has(e)},Z.prototype.set=function(e,t){var n=ae(this,e),r=n.size;return n.set(e,t),this.size+=n.size==r?0:1,this},J.prototype.clear=function(){this.__data__=new Y,this.size=0},J.prototype.delete=function(e){var t=this.__data__,n=t.delete(e);return this.size=t.size,n},J.prototype.get=function(e){return this.__data__.get(e)},J.prototype.has=function(e){return this.__data__.has(e)},J.prototype.set=function(e,t){var n=this.__data__;if(n instanceof Y){var r=n.__data__;if(!$||r.length<199)return r.push([e,t]),this.size=++n.size,this;n=this.__data__=new Z(r)}return n.set(e,t),this.size=n.size,this};function ne(e){return null==e?void 0===e?"[object Undefined]":"[object Null]":R&&R in Object(e)?function(e){var t=E.call(e,R),n=e[R];try{e[R]=void 0;var r=!0}catch(e){}var i=z.call(e);return r&&(t?e[R]=n:delete e[R]),i}(e):function(e){return z.call(e)}(e)}function re(e){return be(e)&&ne(e)==o}function ie(e,t,n,r,i){e!==t&&function(e,t,n){for(var r=-1,i=Object(e),o=n(e),a=o.length;a--;){var s=o[++r];if(!1===t(i[s],s,i))break}}(t,function(o,a){if(i||(i=new J),_e(o))!function(e,t,n,r,i,o,a){var c=le(e,n),u=le(t,n),l=a.get(u);if(l)Q(e,n,l);else{var d,h,p,f,m,y=o?o(c,u,n+"",e,t,a):void 0,g=void 0===y;if(g){var v=fe(u),_=!v&&ye(u),b=!v&&!_&&Pe(u);y=u,v||_||b?fe(c)?y=c:be(m=c)&&me(m)?y=function(e,t){var n=-1,r=e.length;for(t||(t=Array(r));++n<r;)t[n]=e[n];return t}(c):_?(g=!1,y=function(e){return e.slice()}(u)):b?(g=!1,f=new(p=(d=u).buffer).constructor(p.byteLength),new M(f).set(new M(p)),h=f,y=new d.constructor(h,d.byteOffset,d.length)):y=[]:function(e){if(!be(e)||ne(e)!=s)return!1;var t=F(e);if(null===t)return!0;var n=E.call(t,"constructor")&&t.constructor;return"function"==typeof n&&n instanceof n&&A.call(n)==T}(u)||pe(u)?(y=c,pe(c)?y=function(e){return function(e,t,n){var r=!n;n||(n={});for(var i=-1,o=t.length;++i<o;){var a=t[i],s=void 0;void 0===s&&(s=e[a]),r?te(n,a,s):X(n,a,s)}return n}(e,Se(e))}(c):_e(c)&&!ge(c)||(y=function(e){return"function"!=typeof e.constructor||ue(e)?{}:H(F(e))}(u))):g=!1}g&&(a.set(u,y),i(y,u,r,o,a),a.delete(u)),Q(e,n,y)}}(e,t,a,n,ie,r,i);else{var c=r?r(le(e,a),o,a+"",e,t,i):void 0;void 0===c&&(c=o),Q(e,a,c)}},Se)}var oe=L?function(e,t){return L(e,"toString",{configurable:!0,enumerable:!1,value:(n=t,function(){return n}),writable:!0});var n}:Ce;function ae(e,t){var n,r,i=e.__data__;return("string"==(r=typeof(n=t))||"number"==r||"symbol"==r||"boolean"==r?"__proto__"!==n:null===n)?i["string"==typeof t?"string":"hash"]:i.map}function se(e,t){var n=function(e,t){return null==e?void 0:e[t]}(e,t);return function(e){return!(!_e(e)||function(e){return!!k&&k in e}(e))&&(ge(e)?j:c).test(function(e){if(null!=e){try{return A.call(e)}catch(e){}try{return e+""}catch(e){}}return""}(e))}(n)?n:void 0}function ce(e,t){var n=typeof e;return!!(t=t??i)&&("number"==n||"symbol"!=n&&u.test(e))&&e>-1&&e%1==0&&e<t}function ue(e){var t=e&&e.constructor;return e===("function"==typeof t&&t.prototype||C)}function le(e,t){if(("constructor"!==t||"function"!=typeof e[t])&&"__proto__"!=t)return e[t]}var de=function(e){var t=0,n=0;return function(){var r=W(),i=16-(r-n);if(n=r,i>0){if(++t>=800)return arguments[0]}else t=0;return e.apply(void 0,arguments)}}(oe);function he(e,t){return e===t||e!=e&&t!=t}var pe=re(function(){return arguments}())?re:function(e){return be(e)&&E.call(e,"callee")&&!D.call(e,"callee")},fe=Array.isArray;function me(e){return null!=e&&ve(e.length)&&!ge(e)}var ye=V||function(){return!1};function ge(e){if(!_e(e))return!1;var t=ne(e);return t==a||"[object GeneratorFunction]"==t||"[object AsyncFunction]"==t||"[object Proxy]"==t}function ve(e){return"number"==typeof e&&e>-1&&e%1==0&&e<=i}function _e(e){var t=typeof e;return null!=e&&("object"==t||"function"==t)}function be(e){return null!=e&&"object"==typeof e}var Pe=S?function(e){return function(t){return e(t)}}(S):function(e){return be(e)&&ve(e.length)&&!!l[ne(e)]};function Se(e){return me(e)?function(e,t){var n=fe(e),r=!n&&pe(e),i=!n&&!r&&ye(e),o=!n&&!r&&!i&&Pe(e),a=n||r||i||o,s=a?function(e,t){for(var n=-1,r=Array(e);++n<e;)r[n]=t(n);return r}(e.length,String):[],c=s.length;for(var u in e)!t&&!E.call(e,u)||a&&("length"==u||i&&("offset"==u||"parent"==u)||o&&("buffer"==u||"byteLength"==u||"byteOffset"==u)||ce(u,c))||s.push(u);return s}(e,!0):function(e){if(!_e(e))return function(e){var t=[];if(null!=e)for(var n in Object(e))t.push(n);return t}(e);var t=ue(e),n=[];for(var r in e)("constructor"!=r||!t&&E.call(e,r))&&n.push(r);return n}(e)}var we,Ie=(we=function(e,t,n){ie(e,t,n)},function(e,t){return de(function(e,t,n){return t=G(void 0===t?e.length-1:t,0),function(){for(var r=arguments,i=-1,o=G(r.length-t,0),a=Array(o);++i<o;)a[i]=r[t+i];i=-1;for(var s=Array(t+1);++i<t;)s[i]=r[i];return s[t]=n(a),function(e,t,n){switch(n.length){case 0:return e.call(t);case 1:return e.call(t,n[0]);case 2:return e.call(t,n[0],n[1]);case 3:return e.call(t,n[0],n[1],n[2])}return e.apply(t,n)}(e,this,s)}}(e,t,Ce),e+"")}(function(e,t){var n=-1,r=t.length,i=r>1?t[r-1]:void 0,o=r>2?t[2]:void 0;for(i=we.length>3&&"function"==typeof i?(r--,i):void 0,o&&function(e,t,n){if(!_e(n))return!1;var r=typeof t;return!!("number"==r?me(n)&&ce(t,n.length):"string"==r&&t in n)&&he(n[t],e)}(t[0],t[1],o)&&(i=r<3?void 0:i,r=1),e=Object(e);++n<r;){var a=t[n];a&&we(e,a,n)}return e}));function Ce(e){return e}e.exports=Ie},9440(e,t,n){e=n.nmd(e),function(){var r,i="Expected a function",o="__lodash_hash_undefined__",a="__lodash_placeholder__",s=32,c=128,u=1/0,l=9007199254740991,d=NaN,h=4294967295,p=[["ary",c],["bind",1],["bindKey",2],["curry",8],["curryRight",16],["flip",512],["partial",s],["partialRight",64],["rearg",256]],f="[object Arguments]",m="[object Array]",y="[object Boolean]",g="[object Date]",v="[object Error]",_="[object Function]",b="[object GeneratorFunction]",P="[object Map]",S="[object Number]",w="[object Object]",I="[object Promise]",C="[object RegExp]",O="[object Set]",A="[object String]",E="[object Symbol]",k="[object WeakMap]",z="[object ArrayBuffer]",T="[object DataView]",j="[object Float32Array]",x="[object Float64Array]",B="[object Int8Array]",M="[object Int16Array]",F="[object Int32Array]",N="[object Uint8Array]",D="[object Uint8ClampedArray]",U="[object Uint16Array]",R="[object Uint32Array]",L=/\b__p \+= '';/g,V=/\b(__p \+=) '' \+/g,G=/(__e\(.*?\)|\b__t\)) \+\n'';/g,W=/&(?:amp|lt|gt|quot|#39);/g,$=/[&<>"']/g,q=RegExp(W.source),H=RegExp($.source),K=/<%-([\s\S]+?)%>/g,Y=/<%([\s\S]+?)%>/g,Z=/<%=([\s\S]+?)%>/g,J=/\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/,Q=/^\w*$/,X=/[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g,ee=/[\\^$.*+?()[\]{}|]/g,te=RegExp(ee.source),ne=/^\s+/,re=/\s/,ie=/\{(?:\n\/\* \[wrapped with .+\] \*\/)?\n?/,oe=/\{\n\/\* \[wrapped with (.+)\] \*/,ae=/,? & /,se=/[^\x00-\x2f\x3a-\x40\x5b-\x60\x7b-\x7f]+/g,ce=/[()=,{}\[\]\/\s]/,ue=/\\(\\)?/g,le=/\$\{([^\\}]*(?:\\.[^\\}]*)*)\}/g,de=/\w*$/,he=/^[-+]0x[0-9a-f]+$/i,pe=/^0b[01]+$/i,fe=/^\[object .+?Constructor\]$/,me=/^0o[0-7]+$/i,ye=/^(?:0|[1-9]\d*)$/,ge=/[\xc0-\xd6\xd8-\xf6\xf8-\xff\u0100-\u017f]/g,ve=/($^)/,_e=/['\n\r\u2028\u2029\\]/g,be="\\ud800-\\udfff",Pe="\\u0300-\\u036f\\ufe20-\\ufe2f\\u20d0-\\u20ff",Se="\\u2700-\\u27bf",we="a-z\\xdf-\\xf6\\xf8-\\xff",Ie="A-Z\\xc0-\\xd6\\xd8-\\xde",Ce="\\ufe0e\\ufe0f",Oe="\\xac\\xb1\\xd7\\xf7\\x00-\\x2f\\x3a-\\x40\\x5b-\\x60\\x7b-\\xbf\\u2000-\\u206f \\t\\x0b\\f\\xa0\\ufeff\\n\\r\\u2028\\u2029\\u1680\\u180e\\u2000\\u2001\\u2002\\u2003\\u2004\\u2005\\u2006\\u2007\\u2008\\u2009\\u200a\\u202f\\u205f\\u3000",Ae="["+be+"]",Ee="["+Oe+"]",ke="["+Pe+"]",ze="\\d+",Te="["+Se+"]",je="["+we+"]",xe="[^"+be+Oe+ze+Se+we+Ie+"]",Be="\\ud83c[\\udffb-\\udfff]",Me="[^"+be+"]",Fe="(?:\\ud83c[\\udde6-\\uddff]){2}",Ne="[\\ud800-\\udbff][\\udc00-\\udfff]",De="["+Ie+"]",Ue="\\u200d",Re="(?:"+je+"|"+xe+")",Le="(?:"+De+"|"+xe+")",Ve="(?:['’](?:d|ll|m|re|s|t|ve))?",Ge="(?:['’](?:D|LL|M|RE|S|T|VE))?",We="(?:"+ke+"|"+Be+")?",$e="["+Ce+"]?",qe=$e+We+"(?:"+Ue+"(?:"+[Me,Fe,Ne].join("|")+")"+$e+We+")*",He="(?:"+[Te,Fe,Ne].join("|")+")"+qe,Ke="(?:"+[Me+ke+"?",ke,Fe,Ne,Ae].join("|")+")",Ye=RegExp("['’]","g"),Ze=RegExp(ke,"g"),Je=RegExp(Be+"(?="+Be+")|"+Ke+qe,"g"),Qe=RegExp([De+"?"+je+"+"+Ve+"(?="+[Ee,De,"$"].join("|")+")",Le+"+"+Ge+"(?="+[Ee,De+Re,"$"].join("|")+")",De+"?"+Re+"+"+Ve,De+"+"+Ge,"\\d*(?:1ST|2ND|3RD|(?![123])\\dTH)(?=\\b|[a-z_])","\\d*(?:1st|2nd|3rd|(?![123])\\dth)(?=\\b|[A-Z_])",ze,He].join("|"),"g"),Xe=RegExp("["+Ue+be+Pe+Ce+"]"),et=/[a-z][A-Z]|[A-Z]{2}[a-z]|[0-9][a-zA-Z]|[a-zA-Z][0-9]|[^a-zA-Z0-9 ]/,tt=["Array","Buffer","DataView","Date","Error","Float32Array","Float64Array","Function","Int8Array","Int16Array","Int32Array","Map","Math","Object","Promise","RegExp","Set","String","Symbol","TypeError","Uint8Array","Uint8ClampedArray","Uint16Array","Uint32Array","WeakMap","_","clearTimeout","isFinite","parseInt","setTimeout"],nt=-1,rt={};rt[j]=rt[x]=rt[B]=rt[M]=rt[F]=rt[N]=rt[D]=rt[U]=rt[R]=!0,rt[f]=rt[m]=rt[z]=rt[y]=rt[T]=rt[g]=rt[v]=rt[_]=rt[P]=rt[S]=rt[w]=rt[C]=rt[O]=rt[A]=rt[k]=!1;var it={};it[f]=it[m]=it[z]=it[T]=it[y]=it[g]=it[j]=it[x]=it[B]=it[M]=it[F]=it[P]=it[S]=it[w]=it[C]=it[O]=it[A]=it[E]=it[N]=it[D]=it[U]=it[R]=!0,it[v]=it[_]=it[k]=!1;var ot={"\\":"\\","'":"'","\n":"n","\r":"r","\u2028":"u2028","\u2029":"u2029"},at=parseFloat,st=parseInt,ct="object"==typeof n.g&&n.g&&n.g.Object===Object&&n.g,ut="object"==typeof self&&self&&self.Object===Object&&self,lt=ct||ut||Function("return this")(),dt=t&&!t.nodeType&&t,ht=dt&&e&&!e.nodeType&&e,pt=ht&&ht.exports===dt,ft=pt&&ct.process,mt=function(){try{return ht&&ht.require&&ht.require("util").types||ft&&ft.binding&&ft.binding("util")}catch(e){}}(),yt=mt&&mt.isArrayBuffer,gt=mt&&mt.isDate,vt=mt&&mt.isMap,_t=mt&&mt.isRegExp,bt=mt&&mt.isSet,Pt=mt&&mt.isTypedArray;function St(e,t,n){switch(n.length){case 0:return e.call(t);case 1:return e.call(t,n[0]);case 2:return e.call(t,n[0],n[1]);case 3:return e.call(t,n[0],n[1],n[2])}return e.apply(t,n)}function wt(e,t,n,r){for(var i=-1,o=null==e?0:e.length;++i<o;){var a=e[i];t(r,a,n(a),e)}return r}function It(e,t){for(var n=-1,r=null==e?0:e.length;++n<r&&!1!==t(e[n],n,e););return e}function Ct(e,t){for(var n=null==e?0:e.length;n--&&!1!==t(e[n],n,e););return e}function Ot(e,t){for(var n=-1,r=null==e?0:e.length;++n<r;)if(!t(e[n],n,e))return!1;return!0}function At(e,t){for(var n=-1,r=null==e?0:e.length,i=0,o=[];++n<r;){var a=e[n];t(a,n,e)&&(o[i++]=a)}return o}function Et(e,t){return!(null==e||!e.length)&&Dt(e,t,0)>-1}function kt(e,t,n){for(var r=-1,i=null==e?0:e.length;++r<i;)if(n(t,e[r]))return!0;return!1}function zt(e,t){for(var n=-1,r=null==e?0:e.length,i=Array(r);++n<r;)i[n]=t(e[n],n,e);return i}function Tt(e,t){for(var n=-1,r=t.length,i=e.length;++n<r;)e[i+n]=t[n];return e}function jt(e,t,n,r){var i=-1,o=null==e?0:e.length;for(r&&o&&(n=e[++i]);++i<o;)n=t(n,e[i],i,e);return n}function xt(e,t,n,r){var i=null==e?0:e.length;for(r&&i&&(n=e[--i]);i--;)n=t(n,e[i],i,e);return n}function Bt(e,t){for(var n=-1,r=null==e?0:e.length;++n<r;)if(t(e[n],n,e))return!0;return!1}var Mt=Vt("length");function Ft(e,t,n){var r;return n(e,function(e,n,i){if(t(e,n,i))return r=n,!1}),r}function Nt(e,t,n,r){for(var i=e.length,o=n+(r?1:-1);r?o--:++o<i;)if(t(e[o],o,e))return o;return-1}function Dt(e,t,n){return t==t?function(e,t,n){for(var r=n-1,i=e.length;++r<i;)if(e[r]===t)return r;return-1}(e,t,n):Nt(e,Rt,n)}function Ut(e,t,n,r){for(var i=n-1,o=e.length;++i<o;)if(r(e[i],t))return i;return-1}function Rt(e){return e!=e}function Lt(e,t){var n=null==e?0:e.length;return n?$t(e,t)/n:d}function Vt(e){return function(t){return null==t?r:t[e]}}function Gt(e){return function(t){return null==e?r:e[t]}}function Wt(e,t,n,r,i){return i(e,function(e,i,o){n=r?(r=!1,e):t(n,e,i,o)}),n}function $t(e,t){for(var n,i=-1,o=e.length;++i<o;){var a=t(e[i]);a!==r&&(n=n===r?a:n+a)}return n}function qt(e,t){for(var n=-1,r=Array(e);++n<e;)r[n]=t(n);return r}function Ht(e){return e?e.slice(0,dn(e)+1).replace(ne,""):e}function Kt(e){return function(t){return e(t)}}function Yt(e,t){return zt(t,function(t){return e[t]})}function Zt(e,t){return e.has(t)}function Jt(e,t){for(var n=-1,r=e.length;++n<r&&Dt(t,e[n],0)>-1;);return n}function Qt(e,t){for(var n=e.length;n--&&Dt(t,e[n],0)>-1;);return n}var Xt=Gt({À:"A",Á:"A",Â:"A",Ã:"A",Ä:"A",Å:"A",à:"a",á:"a",â:"a",ã:"a",ä:"a",å:"a",Ç:"C",ç:"c",Ð:"D",ð:"d",È:"E",É:"E",Ê:"E",Ë:"E",è:"e",é:"e",ê:"e",ë:"e",Ì:"I",Í:"I",Î:"I",Ï:"I",ì:"i",í:"i",î:"i",ï:"i",Ñ:"N",ñ:"n",Ò:"O",Ó:"O",Ô:"O",Õ:"O",Ö:"O",Ø:"O",ò:"o",ó:"o",ô:"o",õ:"o",ö:"o",ø:"o",Ù:"U",Ú:"U",Û:"U",Ü:"U",ù:"u",ú:"u",û:"u",ü:"u",Ý:"Y",ý:"y",ÿ:"y",Æ:"Ae",æ:"ae",Þ:"Th",þ:"th",ß:"ss",Ā:"A",Ă:"A",Ą:"A",ā:"a",ă:"a",ą:"a",Ć:"C",Ĉ:"C",Ċ:"C",Č:"C",ć:"c",ĉ:"c",ċ:"c",č:"c",Ď:"D",Đ:"D",ď:"d",đ:"d",Ē:"E",Ĕ:"E",Ė:"E",Ę:"E",Ě:"E",ē:"e",ĕ:"e",ė:"e",ę:"e",ě:"e",Ĝ:"G",Ğ:"G",Ġ:"G",Ģ:"G",ĝ:"g",ğ:"g",ġ:"g",ģ:"g",Ĥ:"H",Ħ:"H",ĥ:"h",ħ:"h",Ĩ:"I",Ī:"I",Ĭ:"I",Į:"I",İ:"I",ĩ:"i",ī:"i",ĭ:"i",į:"i",ı:"i",Ĵ:"J",ĵ:"j",Ķ:"K",ķ:"k",ĸ:"k",Ĺ:"L",Ļ:"L",Ľ:"L",Ŀ:"L",Ł:"L",ĺ:"l",ļ:"l",ľ:"l",ŀ:"l",ł:"l",Ń:"N",Ņ:"N",Ň:"N",Ŋ:"N",ń:"n",ņ:"n",ň:"n",ŋ:"n",Ō:"O",Ŏ:"O",Ő:"O",ō:"o",ŏ:"o",ő:"o",Ŕ:"R",Ŗ:"R",Ř:"R",ŕ:"r",ŗ:"r",ř:"r",Ś:"S",Ŝ:"S",Ş:"S",Š:"S",ś:"s",ŝ:"s",ş:"s",š:"s",Ţ:"T",Ť:"T",Ŧ:"T",ţ:"t",ť:"t",ŧ:"t",Ũ:"U",Ū:"U",Ŭ:"U",Ů:"U",Ű:"U",Ų:"U",ũ:"u",ū:"u",ŭ:"u",ů:"u",ű:"u",ų:"u",Ŵ:"W",ŵ:"w",Ŷ:"Y",ŷ:"y",Ÿ:"Y",Ź:"Z",Ż:"Z",Ž:"Z",ź:"z",ż:"z",ž:"z",IJ:"IJ",ij:"ij",Œ:"Oe",œ:"oe",ʼn:"'n",ſ:"s"}),en=Gt({"&":"&","<":"<",">":">",'"':""","'":"'"});function tn(e){return"\\"+ot[e]}function nn(e){return Xe.test(e)}function rn(e){var t=-1,n=Array(e.size);return e.forEach(function(e,r){n[++t]=[r,e]}),n}function on(e,t){return function(n){return e(t(n))}}function an(e,t){for(var n=-1,r=e.length,i=0,o=[];++n<r;){var s=e[n];s!==t&&s!==a||(e[n]=a,o[i++]=n)}return o}function sn(e){var t=-1,n=Array(e.size);return e.forEach(function(e){n[++t]=e}),n}function cn(e){var t=-1,n=Array(e.size);return e.forEach(function(e){n[++t]=[e,e]}),n}function un(e){return nn(e)?function(e){for(var t=Je.lastIndex=0;Je.test(e);)++t;return t}(e):Mt(e)}function ln(e){return nn(e)?function(e){return e.match(Je)||[]}(e):function(e){return e.split("")}(e)}function dn(e){for(var t=e.length;t--&&re.test(e.charAt(t)););return t}var hn=Gt({"&":"&","<":"<",">":">",""":'"',"'":"'"}),pn=function e(t){var n,re=(t=null==t?lt:pn.defaults(lt.Object(),t,pn.pick(lt,tt))).Array,be=t.Date,Pe=t.Error,Se=t.Function,we=t.Math,Ie=t.Object,Ce=t.RegExp,Oe=t.String,Ae=t.TypeError,Ee=re.prototype,ke=Se.prototype,ze=Ie.prototype,Te=t["__core-js_shared__"],je=ke.toString,xe=ze.hasOwnProperty,Be=0,Me=(n=/[^.]+$/.exec(Te&&Te.keys&&Te.keys.IE_PROTO||""))?"Symbol(src)_1."+n:"",Fe=ze.toString,Ne=je.call(Ie),De=lt._,Ue=Ce("^"+je.call(xe).replace(ee,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$"),Re=pt?t.Buffer:r,Le=t.Symbol,Ve=t.Uint8Array,Ge=Re?Re.allocUnsafe:r,We=on(Ie.getPrototypeOf,Ie),$e=Ie.create,qe=ze.propertyIsEnumerable,He=Ee.splice,Ke=Le?Le.isConcatSpreadable:r,Je=Le?Le.iterator:r,Xe=Le?Le.toStringTag:r,ot=function(){try{var e=co(Ie,"defineProperty");return e({},"",{}),e}catch(e){}}(),ct=t.clearTimeout!==lt.clearTimeout&&t.clearTimeout,ut=be&&be.now!==lt.Date.now&&be.now,dt=t.setTimeout!==lt.setTimeout&&t.setTimeout,ht=we.ceil,ft=we.floor,mt=Ie.getOwnPropertySymbols,Mt=Re?Re.isBuffer:r,Gt=t.isFinite,fn=Ee.join,mn=on(Ie.keys,Ie),yn=we.max,gn=we.min,vn=be.now,_n=t.parseInt,bn=we.random,Pn=Ee.reverse,Sn=co(t,"DataView"),wn=co(t,"Map"),In=co(t,"Promise"),Cn=co(t,"Set"),On=co(t,"WeakMap"),An=co(Ie,"create"),En=On&&new On,kn={},zn=No(Sn),Tn=No(wn),jn=No(In),xn=No(Cn),Bn=No(On),Mn=Le?Le.prototype:r,Fn=Mn?Mn.valueOf:r,Nn=Mn?Mn.toString:r;function Dn(e){if(es(e)&&!Ga(e)&&!(e instanceof Vn)){if(e instanceof Ln)return e;if(xe.call(e,"__wrapped__"))return Do(e)}return new Ln(e)}var Un=function(){function e(){}return function(t){if(!Xa(t))return{};if($e)return $e(t);e.prototype=t;var n=new e;return e.prototype=r,n}}();function Rn(){}function Ln(e,t){this.__wrapped__=e,this.__actions__=[],this.__chain__=!!t,this.__index__=0,this.__values__=r}function Vn(e){this.__wrapped__=e,this.__actions__=[],this.__dir__=1,this.__filtered__=!1,this.__iteratees__=[],this.__takeCount__=h,this.__views__=[]}function Gn(e){var t=-1,n=null==e?0:e.length;for(this.clear();++t<n;){var r=e[t];this.set(r[0],r[1])}}function Wn(e){var t=-1,n=null==e?0:e.length;for(this.clear();++t<n;){var r=e[t];this.set(r[0],r[1])}}function $n(e){var t=-1,n=null==e?0:e.length;for(this.clear();++t<n;){var r=e[t];this.set(r[0],r[1])}}function qn(e){var t=-1,n=null==e?0:e.length;for(this.__data__=new $n;++t<n;)this.add(e[t])}function Hn(e){var t=this.__data__=new Wn(e);this.size=t.size}function Kn(e,t){var n=Ga(e),r=!n&&Va(e),i=!n&&!r&&Ha(e),o=!n&&!r&&!i&&cs(e),a=n||r||i||o,s=a?qt(e.length,Oe):[],c=s.length;for(var u in e)!t&&!xe.call(e,u)||a&&("length"==u||i&&("offset"==u||"parent"==u)||o&&("buffer"==u||"byteLength"==u||"byteOffset"==u)||yo(u,c))||s.push(u);return s}function Yn(e){var t=e.length;return t?e[$r(0,t-1)]:r}function Zn(e,t){return jo(Oi(e),or(t,0,e.length))}function Jn(e){return jo(Oi(e))}function Qn(e,t,n){(n!==r&&!Ua(e[t],n)||n===r&&!(t in e))&&rr(e,t,n)}function Xn(e,t,n){var i=e[t];xe.call(e,t)&&Ua(i,n)&&(n!==r||t in e)||rr(e,t,n)}function er(e,t){for(var n=e.length;n--;)if(Ua(e[n][0],t))return n;return-1}function tr(e,t,n,r){return lr(e,function(e,i,o){t(r,e,n(e),o)}),r}function nr(e,t){return e&&Ai(t,zs(t),e)}function rr(e,t,n){"__proto__"==t&&ot?ot(e,t,{configurable:!0,enumerable:!0,value:n,writable:!0}):e[t]=n}function ir(e,t){for(var n=-1,i=t.length,o=re(i),a=null==e;++n<i;)o[n]=a?r:Cs(e,t[n]);return o}function or(e,t,n){return e==e&&(n!==r&&(e=e<=n?e:n),t!==r&&(e=e>=t?e:t)),e}function ar(e,t,n,i,o,a){var s,c=1&t,u=2&t,l=4&t;if(n&&(s=o?n(e,i,o,a):n(e)),s!==r)return s;if(!Xa(e))return e;var d=Ga(e);if(d){if(s=function(e){var t=e.length,n=new e.constructor(t);return t&&"string"==typeof e[0]&&xe.call(e,"index")&&(n.index=e.index,n.input=e.input),n}(e),!c)return Oi(e,s)}else{var h=ho(e),p=h==_||h==b;if(Ha(e))return bi(e,c);if(h==w||h==f||p&&!o){if(s=u||p?{}:fo(e),!c)return u?function(e,t){return Ai(e,lo(e),t)}(e,function(e,t){return e&&Ai(t,Ts(t),e)}(s,e)):function(e,t){return Ai(e,uo(e),t)}(e,nr(s,e))}else{if(!it[h])return o?e:{};s=function(e,t,n){var r,i=e.constructor;switch(t){case z:return Pi(e);case y:case g:return new i(+e);case T:return function(e,t){var n=t?Pi(e.buffer):e.buffer;return new e.constructor(n,e.byteOffset,e.byteLength)}(e,n);case j:case x:case B:case M:case F:case N:case D:case U:case R:return Si(e,n);case P:return new i;case S:case A:return new i(e);case C:return function(e){var t=new e.constructor(e.source,de.exec(e));return t.lastIndex=e.lastIndex,t}(e);case O:return new i;case E:return r=e,Fn?Ie(Fn.call(r)):{}}}(e,h,c)}}a||(a=new Hn);var m=a.get(e);if(m)return m;a.set(e,s),os(e)?e.forEach(function(r){s.add(ar(r,t,n,r,e,a))}):ts(e)&&e.forEach(function(r,i){s.set(i,ar(r,t,n,i,e,a))});var v=d?r:(l?u?to:eo:u?Ts:zs)(e);return It(v||e,function(r,i){v&&(r=e[i=r]),Xn(s,i,ar(r,t,n,i,e,a))}),s}function sr(e,t,n){var i=n.length;if(null==e)return!i;for(e=Ie(e);i--;){var o=n[i],a=t[o],s=e[o];if(s===r&&!(o in e)||!a(s))return!1}return!0}function cr(e,t,n){if("function"!=typeof e)throw new Ae(i);return Eo(function(){e.apply(r,n)},t)}function ur(e,t,n,r){var i=-1,o=Et,a=!0,s=e.length,c=[],u=t.length;if(!s)return c;n&&(t=zt(t,Kt(n))),r?(o=kt,a=!1):t.length>=200&&(o=Zt,a=!1,t=new qn(t));e:for(;++i<s;){var l=e[i],d=null==n?l:n(l);if(l=r||0!==l?l:0,a&&d==d){for(var h=u;h--;)if(t[h]===d)continue e;c.push(l)}else o(t,d,r)||c.push(l)}return c}Dn.templateSettings={escape:K,evaluate:Y,interpolate:Z,variable:"",imports:{_:Dn}},Dn.prototype=Rn.prototype,Dn.prototype.constructor=Dn,Ln.prototype=Un(Rn.prototype),Ln.prototype.constructor=Ln,Vn.prototype=Un(Rn.prototype),Vn.prototype.constructor=Vn,Gn.prototype.clear=function(){this.__data__=An?An(null):{},this.size=0},Gn.prototype.delete=function(e){var t=this.has(e)&&delete this.__data__[e];return this.size-=t?1:0,t},Gn.prototype.get=function(e){var t=this.__data__;if(An){var n=t[e];return n===o?r:n}return xe.call(t,e)?t[e]:r},Gn.prototype.has=function(e){var t=this.__data__;return An?t[e]!==r:xe.call(t,e)},Gn.prototype.set=function(e,t){var n=this.__data__;return this.size+=this.has(e)?0:1,n[e]=An&&t===r?o:t,this},Wn.prototype.clear=function(){this.__data__=[],this.size=0},Wn.prototype.delete=function(e){var t=this.__data__,n=er(t,e);return!(n<0||(n==t.length-1?t.pop():He.call(t,n,1),--this.size,0))},Wn.prototype.get=function(e){var t=this.__data__,n=er(t,e);return n<0?r:t[n][1]},Wn.prototype.has=function(e){return er(this.__data__,e)>-1},Wn.prototype.set=function(e,t){var n=this.__data__,r=er(n,e);return r<0?(++this.size,n.push([e,t])):n[r][1]=t,this},$n.prototype.clear=function(){this.size=0,this.__data__={hash:new Gn,map:new(wn||Wn),string:new Gn}},$n.prototype.delete=function(e){var t=ao(this,e).delete(e);return this.size-=t?1:0,t},$n.prototype.get=function(e){return ao(this,e).get(e)},$n.prototype.has=function(e){return ao(this,e).has(e)},$n.prototype.set=function(e,t){var n=ao(this,e),r=n.size;return n.set(e,t),this.size+=n.size==r?0:1,this},qn.prototype.add=qn.prototype.push=function(e){return this.__data__.set(e,o),this},qn.prototype.has=function(e){return this.__data__.has(e)},Hn.prototype.clear=function(){this.__data__=new Wn,this.size=0},Hn.prototype.delete=function(e){var t=this.__data__,n=t.delete(e);return this.size=t.size,n},Hn.prototype.get=function(e){return this.__data__.get(e)},Hn.prototype.has=function(e){return this.__data__.has(e)},Hn.prototype.set=function(e,t){var n=this.__data__;if(n instanceof Wn){var r=n.__data__;if(!wn||r.length<199)return r.push([e,t]),this.size=++n.size,this;n=this.__data__=new $n(r)}return n.set(e,t),this.size=n.size,this};var lr=zi(vr),dr=zi(_r,!0);function hr(e,t){var n=!0;return lr(e,function(e,r,i){return n=!!t(e,r,i)}),n}function pr(e,t,n){for(var i=-1,o=e.length;++i<o;){var a=e[i],s=t(a);if(null!=s&&(c===r?s==s&&!ss(s):n(s,c)))var c=s,u=a}return u}function fr(e,t){var n=[];return lr(e,function(e,r,i){t(e,r,i)&&n.push(e)}),n}function mr(e,t,n,r,i){var o=-1,a=e.length;for(n||(n=mo),i||(i=[]);++o<a;){var s=e[o];t>0&&n(s)?t>1?mr(s,t-1,n,r,i):Tt(i,s):r||(i[i.length]=s)}return i}var yr=Ti(),gr=Ti(!0);function vr(e,t){return e&&yr(e,t,zs)}function _r(e,t){return e&&gr(e,t,zs)}function br(e,t){return At(t,function(t){return Za(e[t])})}function Pr(e,t){for(var n=0,i=(t=yi(t,e)).length;null!=e&&n<i;)e=e[Fo(t[n++])];return n&&n==i?e:r}function Sr(e,t,n){var r=t(e);return Ga(e)?r:Tt(r,n(e))}function wr(e){return null==e?e===r?"[object Undefined]":"[object Null]":Xe&&Xe in Ie(e)?function(e){var t=xe.call(e,Xe),n=e[Xe];try{e[Xe]=r;var i=!0}catch(e){}var o=Fe.call(e);return i&&(t?e[Xe]=n:delete e[Xe]),o}(e):function(e){return Fe.call(e)}(e)}function Ir(e,t){return e>t}function Cr(e,t){return null!=e&&xe.call(e,t)}function Or(e,t){return null!=e&&t in Ie(e)}function Ar(e,t,n){for(var i=n?kt:Et,o=e[0].length,a=e.length,s=a,c=re(a),u=1/0,l=[];s--;){var d=e[s];s&&t&&(d=zt(d,Kt(t))),u=gn(d.length,u),c[s]=!n&&(t||o>=120&&d.length>=120)?new qn(s&&d):r}d=e[0];var h=-1,p=c[0];e:for(;++h<o&&l.length<u;){var f=d[h],m=t?t(f):f;if(f=n||0!==f?f:0,!(p?Zt(p,m):i(l,m,n))){for(s=a;--s;){var y=c[s];if(!(y?Zt(y,m):i(e[s],m,n)))continue e}p&&p.push(m),l.push(f)}}return l}function Er(e,t,n){var i=null==(e=Co(e,t=yi(t,e)))?e:e[Fo(Yo(t))];return null==i?r:St(i,e,n)}function kr(e){return es(e)&&wr(e)==f}function zr(e,t,n,i,o){return e===t||(null==e||null==t||!es(e)&&!es(t)?e!=e&&t!=t:function(e,t,n,i,o,a){var s=Ga(e),c=Ga(t),u=s?m:ho(e),l=c?m:ho(t),d=(u=u==f?w:u)==w,h=(l=l==f?w:l)==w,p=u==l;if(p&&Ha(e)){if(!Ha(t))return!1;s=!0,d=!1}if(p&&!d)return a||(a=new Hn),s||cs(e)?Qi(e,t,n,i,o,a):function(e,t,n,r,i,o,a){switch(n){case T:if(e.byteLength!=t.byteLength||e.byteOffset!=t.byteOffset)return!1;e=e.buffer,t=t.buffer;case z:return!(e.byteLength!=t.byteLength||!o(new Ve(e),new Ve(t)));case y:case g:case S:return Ua(+e,+t);case v:return e.name==t.name&&e.message==t.message;case C:case A:return e==t+"";case P:var s=rn;case O:var c=1&r;if(s||(s=sn),e.size!=t.size&&!c)return!1;var u=a.get(e);if(u)return u==t;r|=2,a.set(e,t);var l=Qi(s(e),s(t),r,i,o,a);return a.delete(e),l;case E:if(Fn)return Fn.call(e)==Fn.call(t)}return!1}(e,t,u,n,i,o,a);if(!(1&n)){var _=d&&xe.call(e,"__wrapped__"),b=h&&xe.call(t,"__wrapped__");if(_||b){var I=_?e.value():e,k=b?t.value():t;return a||(a=new Hn),o(I,k,n,i,a)}}return!!p&&(a||(a=new Hn),function(e,t,n,i,o,a){var s=1&n,c=eo(e),u=c.length;if(u!=eo(t).length&&!s)return!1;for(var l=u;l--;){var d=c[l];if(!(s?d in t:xe.call(t,d)))return!1}var h=a.get(e),p=a.get(t);if(h&&p)return h==t&&p==e;var f=!0;a.set(e,t),a.set(t,e);for(var m=s;++l<u;){var y=e[d=c[l]],g=t[d];if(i)var v=s?i(g,y,d,t,e,a):i(y,g,d,e,t,a);if(!(v===r?y===g||o(y,g,n,i,a):v)){f=!1;break}m||(m="constructor"==d)}if(f&&!m){var _=e.constructor,b=t.constructor;_==b||!("constructor"in e)||!("constructor"in t)||"function"==typeof _&&_ instanceof _&&"function"==typeof b&&b instanceof b||(f=!1)}return a.delete(e),a.delete(t),f}(e,t,n,i,o,a))}(e,t,n,i,zr,o))}function Tr(e,t,n,i){var o=n.length,a=o,s=!i;if(null==e)return!a;for(e=Ie(e);o--;){var c=n[o];if(s&&c[2]?c[1]!==e[c[0]]:!(c[0]in e))return!1}for(;++o<a;){var u=(c=n[o])[0],l=e[u],d=c[1];if(s&&c[2]){if(l===r&&!(u in e))return!1}else{var h=new Hn;if(i)var p=i(l,d,u,e,t,h);if(!(p===r?zr(d,l,3,i,h):p))return!1}}return!0}function jr(e){return!(!Xa(e)||(t=e,Me&&Me in t))&&(Za(e)?Ue:fe).test(No(e));var t}function xr(e){return"function"==typeof e?e:null==e?nc:"object"==typeof e?Ga(e)?Dr(e[0],e[1]):Nr(e):dc(e)}function Br(e){if(!Po(e))return mn(e);var t=[];for(var n in Ie(e))xe.call(e,n)&&"constructor"!=n&&t.push(n);return t}function Mr(e,t){return e<t}function Fr(e,t){var n=-1,r=$a(e)?re(e.length):[];return lr(e,function(e,i,o){r[++n]=t(e,i,o)}),r}function Nr(e){var t=so(e);return 1==t.length&&t[0][2]?wo(t[0][0],t[0][1]):function(n){return n===e||Tr(n,e,t)}}function Dr(e,t){return vo(e)&&So(t)?wo(Fo(e),t):function(n){var i=Cs(n,e);return i===r&&i===t?Os(n,e):zr(t,i,3)}}function Ur(e,t,n,i,o){e!==t&&yr(t,function(a,s){if(o||(o=new Hn),Xa(a))!function(e,t,n,i,o,a,s){var c=Oo(e,n),u=Oo(t,n),l=s.get(u);if(l)Qn(e,n,l);else{var d=a?a(c,u,n+"",e,t,s):r,h=d===r;if(h){var p=Ga(u),f=!p&&Ha(u),m=!p&&!f&&cs(u);d=u,p||f||m?Ga(c)?d=c:qa(c)?d=Oi(c):f?(h=!1,d=bi(u,!0)):m?(h=!1,d=Si(u,!0)):d=[]:rs(u)||Va(u)?(d=c,Va(c)?d=ys(c):Xa(c)&&!Za(c)||(d=fo(u))):h=!1}h&&(s.set(u,d),o(d,u,i,a,s),s.delete(u)),Qn(e,n,d)}}(e,t,s,n,Ur,i,o);else{var c=i?i(Oo(e,s),a,s+"",e,t,o):r;c===r&&(c=a),Qn(e,s,c)}},Ts)}function Rr(e,t){var n=e.length;if(n)return yo(t+=t<0?n:0,n)?e[t]:r}function Lr(e,t,n){t=t.length?zt(t,function(e){return Ga(e)?function(t){return Pr(t,1===e.length?e[0]:e)}:e}):[nc];var r=-1;t=zt(t,Kt(oo()));var i=Fr(e,function(e,n,i){var o=zt(t,function(t){return t(e)});return{criteria:o,index:++r,value:e}});return function(e){var t=e.length;for(e.sort(function(e,t){return function(e,t,n){for(var r=-1,i=e.criteria,o=t.criteria,a=i.length,s=n.length;++r<a;){var c=wi(i[r],o[r]);if(c)return r>=s?c:c*("desc"==n[r]?-1:1)}return e.index-t.index}(e,t,n)});t--;)e[t]=e[t].value;return e}(i)}function Vr(e,t,n){for(var r=-1,i=t.length,o={};++r<i;){var a=t[r],s=Pr(e,a);n(s,a)&&Zr(o,yi(a,e),s)}return o}function Gr(e,t,n,r){var i=r?Ut:Dt,o=-1,a=t.length,s=e;for(e===t&&(t=Oi(t)),n&&(s=zt(e,Kt(n)));++o<a;)for(var c=0,u=t[o],l=n?n(u):u;(c=i(s,l,c,r))>-1;)s!==e&&He.call(s,c,1),He.call(e,c,1);return e}function Wr(e,t){for(var n=e?t.length:0,r=n-1;n--;){var i=t[n];if(n==r||i!==o){var o=i;yo(i)?He.call(e,i,1):ci(e,i)}}return e}function $r(e,t){return e+ft(bn()*(t-e+1))}function qr(e,t){var n="";if(!e||t<1||t>l)return n;do{t%2&&(n+=e),(t=ft(t/2))&&(e+=e)}while(t);return n}function Hr(e,t){return ko(Io(e,t,nc),e+"")}function Kr(e){return Yn(Us(e))}function Yr(e,t){var n=Us(e);return jo(n,or(t,0,n.length))}function Zr(e,t,n,i){if(!Xa(e))return e;for(var o=-1,a=(t=yi(t,e)).length,s=a-1,c=e;null!=c&&++o<a;){var u=Fo(t[o]),l=n;if("__proto__"===u||"constructor"===u||"prototype"===u)return e;if(o!=s){var d=c[u];(l=i?i(d,u,c):r)===r&&(l=Xa(d)?d:yo(t[o+1])?[]:{})}Xn(c,u,l),c=c[u]}return e}var Jr=En?function(e,t){return En.set(e,t),e}:nc,Qr=ot?function(e,t){return ot(e,"toString",{configurable:!0,enumerable:!1,value:Xs(t),writable:!0})}:nc;function Xr(e){return jo(Us(e))}function ei(e,t,n){var r=-1,i=e.length;t<0&&(t=-t>i?0:i+t),(n=n>i?i:n)<0&&(n+=i),i=t>n?0:n-t>>>0,t>>>=0;for(var o=re(i);++r<i;)o[r]=e[r+t];return o}function ti(e,t){var n;return lr(e,function(e,r,i){return!(n=t(e,r,i))}),!!n}function ni(e,t,n){var r=0,i=null==e?r:e.length;if("number"==typeof t&&t==t&&i<=2147483647){for(;r<i;){var o=r+i>>>1,a=e[o];null!==a&&!ss(a)&&(n?a<=t:a<t)?r=o+1:i=o}return i}return ri(e,t,nc,n)}function ri(e,t,n,i){var o=0,a=null==e?0:e.length;if(0===a)return 0;for(var s=(t=n(t))!=t,c=null===t,u=ss(t),l=t===r;o<a;){var d=ft((o+a)/2),h=n(e[d]),p=h!==r,f=null===h,m=h==h,y=ss(h);if(s)var g=i||m;else g=l?m&&(i||p):c?m&&p&&(i||!f):u?m&&p&&!f&&(i||!y):!f&&!y&&(i?h<=t:h<t);g?o=d+1:a=d}return gn(a,4294967294)}function ii(e,t){for(var n=-1,r=e.length,i=0,o=[];++n<r;){var a=e[n],s=t?t(a):a;if(!n||!Ua(s,c)){var c=s;o[i++]=0===a?0:a}}return o}function oi(e){return"number"==typeof e?e:ss(e)?d:+e}function ai(e){if("string"==typeof e)return e;if(Ga(e))return zt(e,ai)+"";if(ss(e))return Nn?Nn.call(e):"";var t=e+"";return"0"==t&&1/e==-1/0?"-0":t}function si(e,t,n){var r=-1,i=Et,o=e.length,a=!0,s=[],c=s;if(n)a=!1,i=kt;else if(o>=200){var u=t?null:qi(e);if(u)return sn(u);a=!1,i=Zt,c=new qn}else c=t?[]:s;e:for(;++r<o;){var l=e[r],d=t?t(l):l;if(l=n||0!==l?l:0,a&&d==d){for(var h=c.length;h--;)if(c[h]===d)continue e;t&&c.push(d),s.push(l)}else i(c,d,n)||(c!==s&&c.push(d),s.push(l))}return s}function ci(e,t){var n=-1,r=(t=yi(t,e)).length;if(!r)return!0;for(;++n<r;){var i=Fo(t[n]);if("__proto__"===i&&!xe.call(e,"__proto__"))return!1;if(("constructor"===i||"prototype"===i)&&n<r-1)return!1}var o=Co(e,t);return null==o||delete o[Fo(Yo(t))]}function ui(e,t,n,r){return Zr(e,t,n(Pr(e,t)),r)}function li(e,t,n,r){for(var i=e.length,o=r?i:-1;(r?o--:++o<i)&&t(e[o],o,e););return n?ei(e,r?0:o,r?o+1:i):ei(e,r?o+1:0,r?i:o)}function di(e,t){var n=e;return n instanceof Vn&&(n=n.value()),jt(t,function(e,t){return t.func.apply(t.thisArg,Tt([e],t.args))},n)}function hi(e,t,n){var r=e.length;if(r<2)return r?si(e[0]):[];for(var i=-1,o=re(r);++i<r;)for(var a=e[i],s=-1;++s<r;)s!=i&&(o[i]=ur(o[i]||a,e[s],t,n));return si(mr(o,1),t,n)}function pi(e,t,n){for(var i=-1,o=e.length,a=t.length,s={};++i<o;){var c=i<a?t[i]:r;n(s,e[i],c)}return s}function fi(e){return qa(e)?e:[]}function mi(e){return"function"==typeof e?e:nc}function yi(e,t){return Ga(e)?e:vo(e,t)?[e]:Mo(gs(e))}var gi=Hr;function vi(e,t,n){var i=e.length;return n=n===r?i:n,!t&&n>=i?e:ei(e,t,n)}var _i=ct||function(e){return lt.clearTimeout(e)};function bi(e,t){if(t)return e.slice();var n=e.length,r=Ge?Ge(n):new e.constructor(n);return e.copy(r),r}function Pi(e){var t=new e.constructor(e.byteLength);return new Ve(t).set(new Ve(e)),t}function Si(e,t){var n=t?Pi(e.buffer):e.buffer;return new e.constructor(n,e.byteOffset,e.length)}function wi(e,t){if(e!==t){var n=e!==r,i=null===e,o=e==e,a=ss(e),s=t!==r,c=null===t,u=t==t,l=ss(t);if(!c&&!l&&!a&&e>t||a&&s&&u&&!c&&!l||i&&s&&u||!n&&u||!o)return 1;if(!i&&!a&&!l&&e<t||l&&n&&o&&!i&&!a||c&&n&&o||!s&&o||!u)return-1}return 0}function Ii(e,t,n,r){for(var i=-1,o=e.length,a=n.length,s=-1,c=t.length,u=yn(o-a,0),l=re(c+u),d=!r;++s<c;)l[s]=t[s];for(;++i<a;)(d||i<o)&&(l[n[i]]=e[i]);for(;u--;)l[s++]=e[i++];return l}function Ci(e,t,n,r){for(var i=-1,o=e.length,a=-1,s=n.length,c=-1,u=t.length,l=yn(o-s,0),d=re(l+u),h=!r;++i<l;)d[i]=e[i];for(var p=i;++c<u;)d[p+c]=t[c];for(;++a<s;)(h||i<o)&&(d[p+n[a]]=e[i++]);return d}function Oi(e,t){var n=-1,r=e.length;for(t||(t=re(r));++n<r;)t[n]=e[n];return t}function Ai(e,t,n,i){var o=!n;n||(n={});for(var a=-1,s=t.length;++a<s;){var c=t[a],u=i?i(n[c],e[c],c,n,e):r;u===r&&(u=e[c]),o?rr(n,c,u):Xn(n,c,u)}return n}function Ei(e,t){return function(n,r){var i=Ga(n)?wt:tr,o=t?t():{};return i(n,e,oo(r,2),o)}}function ki(e){return Hr(function(t,n){var i=-1,o=n.length,a=o>1?n[o-1]:r,s=o>2?n[2]:r;for(a=e.length>3&&"function"==typeof a?(o--,a):r,s&&go(n[0],n[1],s)&&(a=o<3?r:a,o=1),t=Ie(t);++i<o;){var c=n[i];c&&e(t,c,i,a)}return t})}function zi(e,t){return function(n,r){if(null==n)return n;if(!$a(n))return e(n,r);for(var i=n.length,o=t?i:-1,a=Ie(n);(t?o--:++o<i)&&!1!==r(a[o],o,a););return n}}function Ti(e){return function(t,n,r){for(var i=-1,o=Ie(t),a=r(t),s=a.length;s--;){var c=a[e?s:++i];if(!1===n(o[c],c,o))break}return t}}function ji(e){return function(t){var n=nn(t=gs(t))?ln(t):r,i=n?n[0]:t.charAt(0),o=n?vi(n,1).join(""):t.slice(1);return i[e]()+o}}function xi(e){return function(t){return jt(Zs(Vs(t).replace(Ye,"")),e,"")}}function Bi(e){return function(){var t=arguments;switch(t.length){case 0:return new e;case 1:return new e(t[0]);case 2:return new e(t[0],t[1]);case 3:return new e(t[0],t[1],t[2]);case 4:return new e(t[0],t[1],t[2],t[3]);case 5:return new e(t[0],t[1],t[2],t[3],t[4]);case 6:return new e(t[0],t[1],t[2],t[3],t[4],t[5]);case 7:return new e(t[0],t[1],t[2],t[3],t[4],t[5],t[6])}var n=Un(e.prototype),r=e.apply(n,t);return Xa(r)?r:n}}function Mi(e){return function(t,n,i){var o=Ie(t);if(!$a(t)){var a=oo(n,3);t=zs(t),n=function(e){return a(o[e],e,o)}}var s=e(t,n,i);return s>-1?o[a?t[s]:s]:r}}function Fi(e){return Xi(function(t){var n=t.length,o=n,a=Ln.prototype.thru;for(e&&t.reverse();o--;){var s=t[o];if("function"!=typeof s)throw new Ae(i);if(a&&!c&&"wrapper"==ro(s))var c=new Ln([],!0)}for(o=c?o:n;++o<n;){var u=ro(s=t[o]),l="wrapper"==u?no(s):r;c=l&&_o(l[0])&&424==l[1]&&!l[4].length&&1==l[9]?c[ro(l[0])].apply(c,l[3]):1==s.length&&_o(s)?c[u]():c.thru(s)}return function(){var e=arguments,r=e[0];if(c&&1==e.length&&Ga(r))return c.plant(r).value();for(var i=0,o=n?t[i].apply(this,e):r;++i<n;)o=t[i].call(this,o);return o}})}function Ni(e,t,n,i,o,a,s,u,l,d){var h=t&c,p=1&t,f=2&t,m=24&t,y=512&t,g=f?r:Bi(e);return function c(){for(var v=arguments.length,_=re(v),b=v;b--;)_[b]=arguments[b];if(m)var P=io(c),S=function(e,t){for(var n=e.length,r=0;n--;)e[n]===t&&++r;return r}(_,P);if(i&&(_=Ii(_,i,o,m)),a&&(_=Ci(_,a,s,m)),v-=S,m&&v<d){var w=an(_,P);return Wi(e,t,Ni,c.placeholder,n,_,w,u,l,d-v)}var I=p?n:this,C=f?I[e]:e;return v=_.length,u?_=function(e,t){for(var n=e.length,i=gn(t.length,n),o=Oi(e);i--;){var a=t[i];e[i]=yo(a,n)?o[a]:r}return e}(_,u):y&&v>1&&_.reverse(),h&&l<v&&(_.length=l),this&&this!==lt&&this instanceof c&&(C=g||Bi(C)),C.apply(I,_)}}function Di(e,t){return function(n,r){return function(e,t,n,r){return vr(e,function(e,i,o){t(r,n(e),i,o)}),r}(n,e,t(r),{})}}function Ui(e,t){return function(n,i){var o;if(n===r&&i===r)return t;if(n!==r&&(o=n),i!==r){if(o===r)return i;"string"==typeof n||"string"==typeof i?(n=ai(n),i=ai(i)):(n=oi(n),i=oi(i)),o=e(n,i)}return o}}function Ri(e){return Xi(function(t){return t=zt(t,Kt(oo())),Hr(function(n){var r=this;return e(t,function(e){return St(e,r,n)})})})}function Li(e,t){var n=(t=t===r?" ":ai(t)).length;if(n<2)return n?qr(t,e):t;var i=qr(t,ht(e/un(t)));return nn(t)?vi(ln(i),0,e).join(""):i.slice(0,e)}function Vi(e){return function(t,n,i){return i&&"number"!=typeof i&&go(t,n,i)&&(n=i=r),t=hs(t),n===r?(n=t,t=0):n=hs(n),function(e,t,n,r){for(var i=-1,o=yn(ht((t-e)/(n||1)),0),a=re(o);o--;)a[r?o:++i]=e,e+=n;return a}(t,n,i=i===r?t<n?1:-1:hs(i),e)}}function Gi(e){return function(t,n){return"string"==typeof t&&"string"==typeof n||(t=ms(t),n=ms(n)),e(t,n)}}function Wi(e,t,n,i,o,a,c,u,l,d){var h=8&t;t|=h?s:64,4&(t&=~(h?64:s))||(t&=-4);var p=[e,t,o,h?a:r,h?c:r,h?r:a,h?r:c,u,l,d],f=n.apply(r,p);return _o(e)&&Ao(f,p),f.placeholder=i,zo(f,e,t)}function $i(e){var t=we[e];return function(e,n){if(e=ms(e),(n=null==n?0:gn(ps(n),292))&&Gt(e)){var r=(gs(e)+"e").split("e");return+((r=(gs(t(r[0]+"e"+(+r[1]+n)))+"e").split("e"))[0]+"e"+(+r[1]-n))}return t(e)}}var qi=Cn&&1/sn(new Cn([,-0]))[1]==u?function(e){return new Cn(e)}:sc;function Hi(e){return function(t){var n=ho(t);return n==P?rn(t):n==O?cn(t):function(e,t){return zt(t,function(t){return[t,e[t]]})}(t,e(t))}}function Ki(e,t,n,o,u,l,d,h){var p=2&t;if(!p&&"function"!=typeof e)throw new Ae(i);var f=o?o.length:0;if(f||(t&=-97,o=u=r),d=d===r?d:yn(ps(d),0),h=h===r?h:ps(h),f-=u?u.length:0,64&t){var m=o,y=u;o=u=r}var g=p?r:no(e),v=[e,t,n,o,u,m,y,l,d,h];if(g&&function(e,t){var n=e[1],r=t[1],i=n|r,o=i<131,s=r==c&&8==n||r==c&&256==n&&e[7].length<=t[8]||384==r&&t[7].length<=t[8]&&8==n;if(!o&&!s)return e;1&r&&(e[2]=t[2],i|=1&n?0:4);var u=t[3];if(u){var l=e[3];e[3]=l?Ii(l,u,t[4]):u,e[4]=l?an(e[3],a):t[4]}(u=t[5])&&(l=e[5],e[5]=l?Ci(l,u,t[6]):u,e[6]=l?an(e[5],a):t[6]),(u=t[7])&&(e[7]=u),r&c&&(e[8]=null==e[8]?t[8]:gn(e[8],t[8])),null==e[9]&&(e[9]=t[9]),e[0]=t[0],e[1]=i}(v,g),e=v[0],t=v[1],n=v[2],o=v[3],u=v[4],!(h=v[9]=v[9]===r?p?0:e.length:yn(v[9]-f,0))&&24&t&&(t&=-25),t&&1!=t)_=8==t||16==t?function(e,t,n){var i=Bi(e);return function o(){for(var a=arguments.length,s=re(a),c=a,u=io(o);c--;)s[c]=arguments[c];var l=a<3&&s[0]!==u&&s[a-1]!==u?[]:an(s,u);return(a-=l.length)<n?Wi(e,t,Ni,o.placeholder,r,s,l,r,r,n-a):St(this&&this!==lt&&this instanceof o?i:e,this,s)}}(e,t,h):t!=s&&33!=t||u.length?Ni.apply(r,v):function(e,t,n,r){var i=1&t,o=Bi(e);return function t(){for(var a=-1,s=arguments.length,c=-1,u=r.length,l=re(u+s),d=this&&this!==lt&&this instanceof t?o:e;++c<u;)l[c]=r[c];for(;s--;)l[c++]=arguments[++a];return St(d,i?n:this,l)}}(e,t,n,o);else var _=function(e,t,n){var r=1&t,i=Bi(e);return function t(){return(this&&this!==lt&&this instanceof t?i:e).apply(r?n:this,arguments)}}(e,t,n);return zo((g?Jr:Ao)(_,v),e,t)}function Yi(e,t,n,i){return e===r||Ua(e,ze[n])&&!xe.call(i,n)?t:e}function Zi(e,t,n,i,o,a){return Xa(e)&&Xa(t)&&(a.set(t,e),Ur(e,t,r,Zi,a),a.delete(t)),e}function Ji(e){return rs(e)?r:e}function Qi(e,t,n,i,o,a){var s=1&n,c=e.length,u=t.length;if(c!=u&&!(s&&u>c))return!1;var l=a.get(e),d=a.get(t);if(l&&d)return l==t&&d==e;var h=-1,p=!0,f=2&n?new qn:r;for(a.set(e,t),a.set(t,e);++h<c;){var m=e[h],y=t[h];if(i)var g=s?i(y,m,h,t,e,a):i(m,y,h,e,t,a);if(g!==r){if(g)continue;p=!1;break}if(f){if(!Bt(t,function(e,t){if(!Zt(f,t)&&(m===e||o(m,e,n,i,a)))return f.push(t)})){p=!1;break}}else if(m!==y&&!o(m,y,n,i,a)){p=!1;break}}return a.delete(e),a.delete(t),p}function Xi(e){return ko(Io(e,r,Wo),e+"")}function eo(e){return Sr(e,zs,uo)}function to(e){return Sr(e,Ts,lo)}var no=En?function(e){return En.get(e)}:sc;function ro(e){for(var t=e.name+"",n=kn[t],r=xe.call(kn,t)?n.length:0;r--;){var i=n[r],o=i.func;if(null==o||o==e)return i.name}return t}function io(e){return(xe.call(Dn,"placeholder")?Dn:e).placeholder}function oo(){var e=Dn.iteratee||rc;return e=e===rc?xr:e,arguments.length?e(arguments[0],arguments[1]):e}function ao(e,t){var n,r,i=e.__data__;return("string"==(r=typeof(n=t))||"number"==r||"symbol"==r||"boolean"==r?"__proto__"!==n:null===n)?i["string"==typeof t?"string":"hash"]:i.map}function so(e){for(var t=zs(e),n=t.length;n--;){var r=t[n],i=e[r];t[n]=[r,i,So(i)]}return t}function co(e,t){var n=function(e,t){return null==e?r:e[t]}(e,t);return jr(n)?n:r}var uo=mt?function(e){return null==e?[]:(e=Ie(e),At(mt(e),function(t){return qe.call(e,t)}))}:fc,lo=mt?function(e){for(var t=[];e;)Tt(t,uo(e)),e=We(e);return t}:fc,ho=wr;function po(e,t,n){for(var r=-1,i=(t=yi(t,e)).length,o=!1;++r<i;){var a=Fo(t[r]);if(!(o=null!=e&&n(e,a)))break;e=e[a]}return o||++r!=i?o:!!(i=null==e?0:e.length)&&Qa(i)&&yo(a,i)&&(Ga(e)||Va(e))}function fo(e){return"function"!=typeof e.constructor||Po(e)?{}:Un(We(e))}function mo(e){return Ga(e)||Va(e)||!!(Ke&&e&&e[Ke])}function yo(e,t){var n=typeof e;return!!(t=t??l)&&("number"==n||"symbol"!=n&&ye.test(e))&&e>-1&&e%1==0&&e<t}function go(e,t,n){if(!Xa(n))return!1;var r=typeof t;return!!("number"==r?$a(n)&&yo(t,n.length):"string"==r&&t in n)&&Ua(n[t],e)}function vo(e,t){if(Ga(e))return!1;var n=typeof e;return!("number"!=n&&"symbol"!=n&&"boolean"!=n&&null!=e&&!ss(e))||Q.test(e)||!J.test(e)||null!=t&&e in Ie(t)}function _o(e){var t=ro(e),n=Dn[t];if("function"!=typeof n||!(t in Vn.prototype))return!1;if(e===n)return!0;var r=no(n);return!!r&&e===r[0]}(Sn&&ho(new Sn(new ArrayBuffer(1)))!=T||wn&&ho(new wn)!=P||In&&ho(In.resolve())!=I||Cn&&ho(new Cn)!=O||On&&ho(new On)!=k)&&(ho=function(e){var t=wr(e),n=t==w?e.constructor:r,i=n?No(n):"";if(i)switch(i){case zn:return T;case Tn:return P;case jn:return I;case xn:return O;case Bn:return k}return t});var bo=Te?Za:mc;function Po(e){var t=e&&e.constructor;return e===("function"==typeof t&&t.prototype||ze)}function So(e){return e==e&&!Xa(e)}function wo(e,t){return function(n){return null!=n&&n[e]===t&&(t!==r||e in Ie(n))}}function Io(e,t,n){return t=yn(t===r?e.length-1:t,0),function(){for(var r=arguments,i=-1,o=yn(r.length-t,0),a=re(o);++i<o;)a[i]=r[t+i];i=-1;for(var s=re(t+1);++i<t;)s[i]=r[i];return s[t]=n(a),St(e,this,s)}}function Co(e,t){return t.length<2?e:Pr(e,ei(t,0,-1))}function Oo(e,t){if(("constructor"!==t||"function"!=typeof e[t])&&"__proto__"!=t)return e[t]}var Ao=To(Jr),Eo=dt||function(e,t){return lt.setTimeout(e,t)},ko=To(Qr);function zo(e,t,n){var r=t+"";return ko(e,function(e,t){var n=t.length;if(!n)return e;var r=n-1;return t[r]=(n>1?"& ":"")+t[r],t=t.join(n>2?", ":" "),e.replace(ie,"{\n/* [wrapped with "+t+"] */\n")}(r,function(e,t){return It(p,function(n){var r="_."+n[0];t&n[1]&&!Et(e,r)&&e.push(r)}),e.sort()}(function(e){var t=e.match(oe);return t?t[1].split(ae):[]}(r),n)))}function To(e){var t=0,n=0;return function(){var i=vn(),o=16-(i-n);if(n=i,o>0){if(++t>=800)return arguments[0]}else t=0;return e.apply(r,arguments)}}function jo(e,t){var n=-1,i=e.length,o=i-1;for(t=t===r?i:t;++n<t;){var a=$r(n,o),s=e[a];e[a]=e[n],e[n]=s}return e.length=t,e}var xo,Bo,Mo=(xo=xa(function(e){var t=[];return 46===e.charCodeAt(0)&&t.push(""),e.replace(X,function(e,n,r,i){t.push(r?i.replace(ue,"$1"):n||e)}),t},function(e){return 500===Bo.size&&Bo.clear(),e}),Bo=xo.cache,xo);function Fo(e){if("string"==typeof e||ss(e))return e;var t=e+"";return"0"==t&&1/e==-1/0?"-0":t}function No(e){if(null!=e){try{return je.call(e)}catch(e){}try{return e+""}catch(e){}}return""}function Do(e){if(e instanceof Vn)return e.clone();var t=new Ln(e.__wrapped__,e.__chain__);return t.__actions__=Oi(e.__actions__),t.__index__=e.__index__,t.__values__=e.__values__,t}var Uo=Hr(function(e,t){return qa(e)?ur(e,mr(t,1,qa,!0)):[]}),Ro=Hr(function(e,t){var n=Yo(t);return qa(n)&&(n=r),qa(e)?ur(e,mr(t,1,qa,!0),oo(n,2)):[]}),Lo=Hr(function(e,t){var n=Yo(t);return qa(n)&&(n=r),qa(e)?ur(e,mr(t,1,qa,!0),r,n):[]});function Vo(e,t,n){var r=null==e?0:e.length;if(!r)return-1;var i=null==n?0:ps(n);return i<0&&(i=yn(r+i,0)),Nt(e,oo(t,3),i)}function Go(e,t,n){var i=null==e?0:e.length;if(!i)return-1;var o=i-1;return n!==r&&(o=ps(n),o=n<0?yn(i+o,0):gn(o,i-1)),Nt(e,oo(t,3),o,!0)}function Wo(e){return null!=e&&e.length?mr(e,1):[]}function $o(e){return e&&e.length?e[0]:r}var qo=Hr(function(e){var t=zt(e,fi);return t.length&&t[0]===e[0]?Ar(t):[]}),Ho=Hr(function(e){var t=Yo(e),n=zt(e,fi);return t===Yo(n)?t=r:n.pop(),n.length&&n[0]===e[0]?Ar(n,oo(t,2)):[]}),Ko=Hr(function(e){var t=Yo(e),n=zt(e,fi);return(t="function"==typeof t?t:r)&&n.pop(),n.length&&n[0]===e[0]?Ar(n,r,t):[]});function Yo(e){var t=null==e?0:e.length;return t?e[t-1]:r}var Zo=Hr(Jo);function Jo(e,t){return e&&e.length&&t&&t.length?Gr(e,t):e}var Qo=Xi(function(e,t){var n=null==e?0:e.length,r=ir(e,t);return Wr(e,zt(t,function(e){return yo(e,n)?+e:e}).sort(wi)),r});function Xo(e){return null==e?e:Pn.call(e)}var ea=Hr(function(e){return si(mr(e,1,qa,!0))}),ta=Hr(function(e){var t=Yo(e);return qa(t)&&(t=r),si(mr(e,1,qa,!0),oo(t,2))}),na=Hr(function(e){var t=Yo(e);return t="function"==typeof t?t:r,si(mr(e,1,qa,!0),r,t)});function ra(e){if(!e||!e.length)return[];var t=0;return e=At(e,function(e){if(qa(e))return t=yn(e.length,t),!0}),qt(t,function(t){return zt(e,Vt(t))})}function ia(e,t){if(!e||!e.length)return[];var n=ra(e);return null==t?n:zt(n,function(e){return St(t,r,e)})}var oa=Hr(function(e,t){return qa(e)?ur(e,t):[]}),aa=Hr(function(e){return hi(At(e,qa))}),sa=Hr(function(e){var t=Yo(e);return qa(t)&&(t=r),hi(At(e,qa),oo(t,2))}),ca=Hr(function(e){var t=Yo(e);return t="function"==typeof t?t:r,hi(At(e,qa),r,t)}),ua=Hr(ra),la=Hr(function(e){var t=e.length,n=t>1?e[t-1]:r;return n="function"==typeof n?(e.pop(),n):r,ia(e,n)});function da(e){var t=Dn(e);return t.__chain__=!0,t}function ha(e,t){return t(e)}var pa=Xi(function(e){var t=e.length,n=t?e[0]:0,i=this.__wrapped__,o=function(t){return ir(t,e)};return!(t>1||this.__actions__.length)&&i instanceof Vn&&yo(n)?((i=i.slice(n,+n+(t?1:0))).__actions__.push({func:ha,args:[o],thisArg:r}),new Ln(i,this.__chain__).thru(function(e){return t&&!e.length&&e.push(r),e})):this.thru(o)}),fa=Ei(function(e,t,n){xe.call(e,n)?++e[n]:rr(e,n,1)}),ma=Mi(Vo),ya=Mi(Go);function ga(e,t){return(Ga(e)?It:lr)(e,oo(t,3))}function va(e,t){return(Ga(e)?Ct:dr)(e,oo(t,3))}var _a=Ei(function(e,t,n){xe.call(e,n)?e[n].push(t):rr(e,n,[t])}),ba=Hr(function(e,t,n){var r=-1,i="function"==typeof t,o=$a(e)?re(e.length):[];return lr(e,function(e){o[++r]=i?St(t,e,n):Er(e,t,n)}),o}),Pa=Ei(function(e,t,n){rr(e,n,t)});function Sa(e,t){return(Ga(e)?zt:Fr)(e,oo(t,3))}var wa=Ei(function(e,t,n){e[n?0:1].push(t)},function(){return[[],[]]}),Ia=Hr(function(e,t){if(null==e)return[];var n=t.length;return n>1&&go(e,t[0],t[1])?t=[]:n>2&&go(t[0],t[1],t[2])&&(t=[t[0]]),Lr(e,mr(t,1),[])}),Ca=ut||function(){return lt.Date.now()};function Oa(e,t,n){return t=n?r:t,t=e&&null==t?e.length:t,Ki(e,c,r,r,r,r,t)}function Aa(e,t){var n;if("function"!=typeof t)throw new Ae(i);return e=ps(e),function(){return--e>0&&(n=t.apply(this,arguments)),e<=1&&(t=r),n}}var Ea=Hr(function(e,t,n){var r=1;if(n.length){var i=an(n,io(Ea));r|=s}return Ki(e,r,t,n,i)}),ka=Hr(function(e,t,n){var r=3;if(n.length){var i=an(n,io(ka));r|=s}return Ki(t,r,e,n,i)});function za(e,t,n){var o,a,s,c,u,l,d=0,h=!1,p=!1,f=!0;if("function"!=typeof e)throw new Ae(i);function m(t){var n=o,i=a;return o=a=r,d=t,c=e.apply(i,n)}function y(e){var n=e-l;return l===r||n>=t||n<0||p&&e-d>=s}function g(){var e=Ca();if(y(e))return v(e);u=Eo(g,function(e){var n=t-(e-l);return p?gn(n,s-(e-d)):n}(e))}function v(e){return u=r,f&&o?m(e):(o=a=r,c)}function _(){var e=Ca(),n=y(e);if(o=arguments,a=this,l=e,n){if(u===r)return function(e){return d=e,u=Eo(g,t),h?m(e):c}(l);if(p)return _i(u),u=Eo(g,t),m(l)}return u===r&&(u=Eo(g,t)),c}return t=ms(t)||0,Xa(n)&&(h=!!n.leading,s=(p="maxWait"in n)?yn(ms(n.maxWait)||0,t):s,f="trailing"in n?!!n.trailing:f),_.cancel=function(){u!==r&&_i(u),d=0,o=l=a=u=r},_.flush=function(){return u===r?c:v(Ca())},_}var Ta=Hr(function(e,t){return cr(e,1,t)}),ja=Hr(function(e,t,n){return cr(e,ms(t)||0,n)});function xa(e,t){if("function"!=typeof e||null!=t&&"function"!=typeof t)throw new Ae(i);var n=function(){var r=arguments,i=t?t.apply(this,r):r[0],o=n.cache;if(o.has(i))return o.get(i);var a=e.apply(this,r);return n.cache=o.set(i,a)||o,a};return n.cache=new(xa.Cache||$n),n}function Ba(e){if("function"!=typeof e)throw new Ae(i);return function(){var t=arguments;switch(t.length){case 0:return!e.call(this);case 1:return!e.call(this,t[0]);case 2:return!e.call(this,t[0],t[1]);case 3:return!e.call(this,t[0],t[1],t[2])}return!e.apply(this,t)}}xa.Cache=$n;var Ma=gi(function(e,t){var n=(t=1==t.length&&Ga(t[0])?zt(t[0],Kt(oo())):zt(mr(t,1),Kt(oo()))).length;return Hr(function(r){for(var i=-1,o=gn(r.length,n);++i<o;)r[i]=t[i].call(this,r[i]);return St(e,this,r)})}),Fa=Hr(function(e,t){var n=an(t,io(Fa));return Ki(e,s,r,t,n)}),Na=Hr(function(e,t){var n=an(t,io(Na));return Ki(e,64,r,t,n)}),Da=Xi(function(e,t){return Ki(e,256,r,r,r,t)});function Ua(e,t){return e===t||e!=e&&t!=t}var Ra=Gi(Ir),La=Gi(function(e,t){return e>=t}),Va=kr(function(){return arguments}())?kr:function(e){return es(e)&&xe.call(e,"callee")&&!qe.call(e,"callee")},Ga=re.isArray,Wa=yt?Kt(yt):function(e){return es(e)&&wr(e)==z};function $a(e){return null!=e&&Qa(e.length)&&!Za(e)}function qa(e){return es(e)&&$a(e)}var Ha=Mt||mc,Ka=gt?Kt(gt):function(e){return es(e)&&wr(e)==g};function Ya(e){if(!es(e))return!1;var t=wr(e);return t==v||"[object DOMException]"==t||"string"==typeof e.message&&"string"==typeof e.name&&!rs(e)}function Za(e){if(!Xa(e))return!1;var t=wr(e);return t==_||t==b||"[object AsyncFunction]"==t||"[object Proxy]"==t}function Ja(e){return"number"==typeof e&&e==ps(e)}function Qa(e){return"number"==typeof e&&e>-1&&e%1==0&&e<=l}function Xa(e){var t=typeof e;return null!=e&&("object"==t||"function"==t)}function es(e){return null!=e&&"object"==typeof e}var ts=vt?Kt(vt):function(e){return es(e)&&ho(e)==P};function ns(e){return"number"==typeof e||es(e)&&wr(e)==S}function rs(e){if(!es(e)||wr(e)!=w)return!1;var t=We(e);if(null===t)return!0;var n=xe.call(t,"constructor")&&t.constructor;return"function"==typeof n&&n instanceof n&&je.call(n)==Ne}var is=_t?Kt(_t):function(e){return es(e)&&wr(e)==C},os=bt?Kt(bt):function(e){return es(e)&&ho(e)==O};function as(e){return"string"==typeof e||!Ga(e)&&es(e)&&wr(e)==A}function ss(e){return"symbol"==typeof e||es(e)&&wr(e)==E}var cs=Pt?Kt(Pt):function(e){return es(e)&&Qa(e.length)&&!!rt[wr(e)]},us=Gi(Mr),ls=Gi(function(e,t){return e<=t});function ds(e){if(!e)return[];if($a(e))return as(e)?ln(e):Oi(e);if(Je&&e[Je])return function(e){for(var t,n=[];!(t=e.next()).done;)n.push(t.value);return n}(e[Je]());var t=ho(e);return(t==P?rn:t==O?sn:Us)(e)}function hs(e){return e?(e=ms(e))===u||e===-1/0?17976931348623157e292*(e<0?-1:1):e==e?e:0:0===e?e:0}function ps(e){var t=hs(e),n=t%1;return t==t?n?t-n:t:0}function fs(e){return e?or(ps(e),0,h):0}function ms(e){if("number"==typeof e)return e;if(ss(e))return d;if(Xa(e)){var t="function"==typeof e.valueOf?e.valueOf():e;e=Xa(t)?t+"":t}if("string"!=typeof e)return 0===e?e:+e;e=Ht(e);var n=pe.test(e);return n||me.test(e)?st(e.slice(2),n?2:8):he.test(e)?d:+e}function ys(e){return Ai(e,Ts(e))}function gs(e){return null==e?"":ai(e)}var vs=ki(function(e,t){if(Po(t)||$a(t))Ai(t,zs(t),e);else for(var n in t)xe.call(t,n)&&Xn(e,n,t[n])}),_s=ki(function(e,t){Ai(t,Ts(t),e)}),bs=ki(function(e,t,n,r){Ai(t,Ts(t),e,r)}),Ps=ki(function(e,t,n,r){Ai(t,zs(t),e,r)}),Ss=Xi(ir),ws=Hr(function(e,t){e=Ie(e);var n=-1,i=t.length,o=i>2?t[2]:r;for(o&&go(t[0],t[1],o)&&(i=1);++n<i;)for(var a=t[n],s=Ts(a),c=-1,u=s.length;++c<u;){var l=s[c],d=e[l];(d===r||Ua(d,ze[l])&&!xe.call(e,l))&&(e[l]=a[l])}return e}),Is=Hr(function(e){return e.push(r,Zi),St(xs,r,e)});function Cs(e,t,n){var i=null==e?r:Pr(e,t);return i===r?n:i}function Os(e,t){return null!=e&&po(e,t,Or)}var As=Di(function(e,t,n){null!=t&&"function"!=typeof t.toString&&(t=Fe.call(t)),e[t]=n},Xs(nc)),Es=Di(function(e,t,n){null!=t&&"function"!=typeof t.toString&&(t=Fe.call(t)),xe.call(e,t)?e[t].push(n):e[t]=[n]},oo),ks=Hr(Er);function zs(e){return $a(e)?Kn(e):Br(e)}function Ts(e){return $a(e)?Kn(e,!0):function(e){if(!Xa(e))return function(e){var t=[];if(null!=e)for(var n in Ie(e))t.push(n);return t}(e);var t=Po(e),n=[];for(var r in e)("constructor"!=r||!t&&xe.call(e,r))&&n.push(r);return n}(e)}var js=ki(function(e,t,n){Ur(e,t,n)}),xs=ki(function(e,t,n,r){Ur(e,t,n,r)}),Bs=Xi(function(e,t){var n={};if(null==e)return n;var r=!1;t=zt(t,function(t){return t=yi(t,e),r||(r=t.length>1),t}),Ai(e,to(e),n),r&&(n=ar(n,7,Ji));for(var i=t.length;i--;)ci(n,t[i]);return n}),Ms=Xi(function(e,t){return null==e?{}:function(e,t){return Vr(e,t,function(t,n){return Os(e,n)})}(e,t)});function Fs(e,t){if(null==e)return{};var n=zt(to(e),function(e){return[e]});return t=oo(t),Vr(e,n,function(e,n){return t(e,n[0])})}var Ns=Hi(zs),Ds=Hi(Ts);function Us(e){return null==e?[]:Yt(e,zs(e))}var Rs=xi(function(e,t,n){return t=t.toLowerCase(),e+(n?Ls(t):t)});function Ls(e){return Ys(gs(e).toLowerCase())}function Vs(e){return(e=gs(e))&&e.replace(ge,Xt).replace(Ze,"")}var Gs=xi(function(e,t,n){return e+(n?"-":"")+t.toLowerCase()}),Ws=xi(function(e,t,n){return e+(n?" ":"")+t.toLowerCase()}),$s=ji("toLowerCase"),qs=xi(function(e,t,n){return e+(n?"_":"")+t.toLowerCase()}),Hs=xi(function(e,t,n){return e+(n?" ":"")+Ys(t)}),Ks=xi(function(e,t,n){return e+(n?" ":"")+t.toUpperCase()}),Ys=ji("toUpperCase");function Zs(e,t,n){return e=gs(e),(t=n?r:t)===r?function(e){return et.test(e)}(e)?function(e){return e.match(Qe)||[]}(e):function(e){return e.match(se)||[]}(e):e.match(t)||[]}var Js=Hr(function(e,t){try{return St(e,r,t)}catch(e){return Ya(e)?e:new Pe(e)}}),Qs=Xi(function(e,t){return It(t,function(t){t=Fo(t),rr(e,t,Ea(e[t],e))}),e});function Xs(e){return function(){return e}}var ec=Fi(),tc=Fi(!0);function nc(e){return e}function rc(e){return xr("function"==typeof e?e:ar(e,1))}var ic=Hr(function(e,t){return function(n){return Er(n,e,t)}}),oc=Hr(function(e,t){return function(n){return Er(e,n,t)}});function ac(e,t,n){var r=zs(t),i=br(t,r);null!=n||Xa(t)&&(i.length||!r.length)||(n=t,t=e,e=this,i=br(t,zs(t)));var o=!(Xa(n)&&"chain"in n&&!n.chain),a=Za(e);return It(i,function(n){var r=t[n];e[n]=r,a&&(e.prototype[n]=function(){var t=this.__chain__;if(o||t){var n=e(this.__wrapped__);return(n.__actions__=Oi(this.__actions__)).push({func:r,args:arguments,thisArg:e}),n.__chain__=t,n}return r.apply(e,Tt([this.value()],arguments))})}),e}function sc(){}var cc=Ri(zt),uc=Ri(Ot),lc=Ri(Bt);function dc(e){return vo(e)?Vt(Fo(e)):function(e){return function(t){return Pr(t,e)}}(e)}var hc=Vi(),pc=Vi(!0);function fc(){return[]}function mc(){return!1}var yc,gc=Ui(function(e,t){return e+t},0),vc=$i("ceil"),_c=Ui(function(e,t){return e/t},1),bc=$i("floor"),Pc=Ui(function(e,t){return e*t},1),Sc=$i("round"),wc=Ui(function(e,t){return e-t},0);return Dn.after=function(e,t){if("function"!=typeof t)throw new Ae(i);return e=ps(e),function(){if(--e<1)return t.apply(this,arguments)}},Dn.ary=Oa,Dn.assign=vs,Dn.assignIn=_s,Dn.assignInWith=bs,Dn.assignWith=Ps,Dn.at=Ss,Dn.before=Aa,Dn.bind=Ea,Dn.bindAll=Qs,Dn.bindKey=ka,Dn.castArray=function(){if(!arguments.length)return[];var e=arguments[0];return Ga(e)?e:[e]},Dn.chain=da,Dn.chunk=function(e,t,n){t=(n?go(e,t,n):t===r)?1:yn(ps(t),0);var i=null==e?0:e.length;if(!i||t<1)return[];for(var o=0,a=0,s=re(ht(i/t));o<i;)s[a++]=ei(e,o,o+=t);return s},Dn.compact=function(e){for(var t=-1,n=null==e?0:e.length,r=0,i=[];++t<n;){var o=e[t];o&&(i[r++]=o)}return i},Dn.concat=function(){var e=arguments.length;if(!e)return[];for(var t=re(e-1),n=arguments[0],r=e;r--;)t[r-1]=arguments[r];return Tt(Ga(n)?Oi(n):[n],mr(t,1))},Dn.cond=function(e){var t=null==e?0:e.length,n=oo();return e=t?zt(e,function(e){if("function"!=typeof e[1])throw new Ae(i);return[n(e[0]),e[1]]}):[],Hr(function(n){for(var r=-1;++r<t;){var i=e[r];if(St(i[0],this,n))return St(i[1],this,n)}})},Dn.conforms=function(e){return function(e){var t=zs(e);return function(n){return sr(n,e,t)}}(ar(e,1))},Dn.constant=Xs,Dn.countBy=fa,Dn.create=function(e,t){var n=Un(e);return null==t?n:nr(n,t)},Dn.curry=function e(t,n,i){var o=Ki(t,8,r,r,r,r,r,n=i?r:n);return o.placeholder=e.placeholder,o},Dn.curryRight=function e(t,n,i){var o=Ki(t,16,r,r,r,r,r,n=i?r:n);return o.placeholder=e.placeholder,o},Dn.debounce=za,Dn.defaults=ws,Dn.defaultsDeep=Is,Dn.defer=Ta,Dn.delay=ja,Dn.difference=Uo,Dn.differenceBy=Ro,Dn.differenceWith=Lo,Dn.drop=function(e,t,n){var i=null==e?0:e.length;return i?ei(e,(t=n||t===r?1:ps(t))<0?0:t,i):[]},Dn.dropRight=function(e,t,n){var i=null==e?0:e.length;return i?ei(e,0,(t=i-(t=n||t===r?1:ps(t)))<0?0:t):[]},Dn.dropRightWhile=function(e,t){return e&&e.length?li(e,oo(t,3),!0,!0):[]},Dn.dropWhile=function(e,t){return e&&e.length?li(e,oo(t,3),!0):[]},Dn.fill=function(e,t,n,i){var o=null==e?0:e.length;return o?(n&&"number"!=typeof n&&go(e,t,n)&&(n=0,i=o),function(e,t,n,i){var o=e.length;for((n=ps(n))<0&&(n=-n>o?0:o+n),(i=i===r||i>o?o:ps(i))<0&&(i+=o),i=n>i?0:fs(i);n<i;)e[n++]=t;return e}(e,t,n,i)):[]},Dn.filter=function(e,t){return(Ga(e)?At:fr)(e,oo(t,3))},Dn.flatMap=function(e,t){return mr(Sa(e,t),1)},Dn.flatMapDeep=function(e,t){return mr(Sa(e,t),u)},Dn.flatMapDepth=function(e,t,n){return n=n===r?1:ps(n),mr(Sa(e,t),n)},Dn.flatten=Wo,Dn.flattenDeep=function(e){return null!=e&&e.length?mr(e,u):[]},Dn.flattenDepth=function(e,t){return null!=e&&e.length?mr(e,t=t===r?1:ps(t)):[]},Dn.flip=function(e){return Ki(e,512)},Dn.flow=ec,Dn.flowRight=tc,Dn.fromPairs=function(e){for(var t=-1,n=null==e?0:e.length,r={};++t<n;){var i=e[t];rr(r,i[0],i[1])}return r},Dn.functions=function(e){return null==e?[]:br(e,zs(e))},Dn.functionsIn=function(e){return null==e?[]:br(e,Ts(e))},Dn.groupBy=_a,Dn.initial=function(e){return null!=e&&e.length?ei(e,0,-1):[]},Dn.intersection=qo,Dn.intersectionBy=Ho,Dn.intersectionWith=Ko,Dn.invert=As,Dn.invertBy=Es,Dn.invokeMap=ba,Dn.iteratee=rc,Dn.keyBy=Pa,Dn.keys=zs,Dn.keysIn=Ts,Dn.map=Sa,Dn.mapKeys=function(e,t){var n={};return t=oo(t,3),vr(e,function(e,r,i){rr(n,t(e,r,i),e)}),n},Dn.mapValues=function(e,t){var n={};return t=oo(t,3),vr(e,function(e,r,i){rr(n,r,t(e,r,i))}),n},Dn.matches=function(e){return Nr(ar(e,1))},Dn.matchesProperty=function(e,t){return Dr(e,ar(t,1))},Dn.memoize=xa,Dn.merge=js,Dn.mergeWith=xs,Dn.method=ic,Dn.methodOf=oc,Dn.mixin=ac,Dn.negate=Ba,Dn.nthArg=function(e){return e=ps(e),Hr(function(t){return Rr(t,e)})},Dn.omit=Bs,Dn.omitBy=function(e,t){return Fs(e,Ba(oo(t)))},Dn.once=function(e){return Aa(2,e)},Dn.orderBy=function(e,t,n,i){return null==e?[]:(Ga(t)||(t=null==t?[]:[t]),Ga(n=i?r:n)||(n=null==n?[]:[n]),Lr(e,t,n))},Dn.over=cc,Dn.overArgs=Ma,Dn.overEvery=uc,Dn.overSome=lc,Dn.partial=Fa,Dn.partialRight=Na,Dn.partition=wa,Dn.pick=Ms,Dn.pickBy=Fs,Dn.property=dc,Dn.propertyOf=function(e){return function(t){return null==e?r:Pr(e,t)}},Dn.pull=Zo,Dn.pullAll=Jo,Dn.pullAllBy=function(e,t,n){return e&&e.length&&t&&t.length?Gr(e,t,oo(n,2)):e},Dn.pullAllWith=function(e,t,n){return e&&e.length&&t&&t.length?Gr(e,t,r,n):e},Dn.pullAt=Qo,Dn.range=hc,Dn.rangeRight=pc,Dn.rearg=Da,Dn.reject=function(e,t){return(Ga(e)?At:fr)(e,Ba(oo(t,3)))},Dn.remove=function(e,t){var n=[];if(!e||!e.length)return n;var r=-1,i=[],o=e.length;for(t=oo(t,3);++r<o;){var a=e[r];t(a,r,e)&&(n.push(a),i.push(r))}return Wr(e,i),n},Dn.rest=function(e,t){if("function"!=typeof e)throw new Ae(i);return Hr(e,t=t===r?t:ps(t))},Dn.reverse=Xo,Dn.sampleSize=function(e,t,n){return t=(n?go(e,t,n):t===r)?1:ps(t),(Ga(e)?Zn:Yr)(e,t)},Dn.set=function(e,t,n){return null==e?e:Zr(e,t,n)},Dn.setWith=function(e,t,n,i){return i="function"==typeof i?i:r,null==e?e:Zr(e,t,n,i)},Dn.shuffle=function(e){return(Ga(e)?Jn:Xr)(e)},Dn.slice=function(e,t,n){var i=null==e?0:e.length;return i?(n&&"number"!=typeof n&&go(e,t,n)?(t=0,n=i):(t=null==t?0:ps(t),n=n===r?i:ps(n)),ei(e,t,n)):[]},Dn.sortBy=Ia,Dn.sortedUniq=function(e){return e&&e.length?ii(e):[]},Dn.sortedUniqBy=function(e,t){return e&&e.length?ii(e,oo(t,2)):[]},Dn.split=function(e,t,n){return n&&"number"!=typeof n&&go(e,t,n)&&(t=n=r),(n=n===r?h:n>>>0)?(e=gs(e))&&("string"==typeof t||null!=t&&!is(t))&&!(t=ai(t))&&nn(e)?vi(ln(e),0,n):e.split(t,n):[]},Dn.spread=function(e,t){if("function"!=typeof e)throw new Ae(i);return t=null==t?0:yn(ps(t),0),Hr(function(n){var r=n[t],i=vi(n,0,t);return r&&Tt(i,r),St(e,this,i)})},Dn.tail=function(e){var t=null==e?0:e.length;return t?ei(e,1,t):[]},Dn.take=function(e,t,n){return e&&e.length?ei(e,0,(t=n||t===r?1:ps(t))<0?0:t):[]},Dn.takeRight=function(e,t,n){var i=null==e?0:e.length;return i?ei(e,(t=i-(t=n||t===r?1:ps(t)))<0?0:t,i):[]},Dn.takeRightWhile=function(e,t){return e&&e.length?li(e,oo(t,3),!1,!0):[]},Dn.takeWhile=function(e,t){return e&&e.length?li(e,oo(t,3)):[]},Dn.tap=function(e,t){return t(e),e},Dn.throttle=function(e,t,n){var r=!0,o=!0;if("function"!=typeof e)throw new Ae(i);return Xa(n)&&(r="leading"in n?!!n.leading:r,o="trailing"in n?!!n.trailing:o),za(e,t,{leading:r,maxWait:t,trailing:o})},Dn.thru=ha,Dn.toArray=ds,Dn.toPairs=Ns,Dn.toPairsIn=Ds,Dn.toPath=function(e){return Ga(e)?zt(e,Fo):ss(e)?[e]:Oi(Mo(gs(e)))},Dn.toPlainObject=ys,Dn.transform=function(e,t,n){var r=Ga(e),i=r||Ha(e)||cs(e);if(t=oo(t,4),null==n){var o=e&&e.constructor;n=i?r?new o:[]:Xa(e)&&Za(o)?Un(We(e)):{}}return(i?It:vr)(e,function(e,r,i){return t(n,e,r,i)}),n},Dn.unary=function(e){return Oa(e,1)},Dn.union=ea,Dn.unionBy=ta,Dn.unionWith=na,Dn.uniq=function(e){return e&&e.length?si(e):[]},Dn.uniqBy=function(e,t){return e&&e.length?si(e,oo(t,2)):[]},Dn.uniqWith=function(e,t){return t="function"==typeof t?t:r,e&&e.length?si(e,r,t):[]},Dn.unset=function(e,t){return null==e||ci(e,t)},Dn.unzip=ra,Dn.unzipWith=ia,Dn.update=function(e,t,n){return null==e?e:ui(e,t,mi(n))},Dn.updateWith=function(e,t,n,i){return i="function"==typeof i?i:r,null==e?e:ui(e,t,mi(n),i)},Dn.values=Us,Dn.valuesIn=function(e){return null==e?[]:Yt(e,Ts(e))},Dn.without=oa,Dn.words=Zs,Dn.wrap=function(e,t){return Fa(mi(t),e)},Dn.xor=aa,Dn.xorBy=sa,Dn.xorWith=ca,Dn.zip=ua,Dn.zipObject=function(e,t){return pi(e||[],t||[],Xn)},Dn.zipObjectDeep=function(e,t){return pi(e||[],t||[],Zr)},Dn.zipWith=la,Dn.entries=Ns,Dn.entriesIn=Ds,Dn.extend=_s,Dn.extendWith=bs,ac(Dn,Dn),Dn.add=gc,Dn.attempt=Js,Dn.camelCase=Rs,Dn.capitalize=Ls,Dn.ceil=vc,Dn.clamp=function(e,t,n){return n===r&&(n=t,t=r),n!==r&&(n=(n=ms(n))==n?n:0),t!==r&&(t=(t=ms(t))==t?t:0),or(ms(e),t,n)},Dn.clone=function(e){return ar(e,4)},Dn.cloneDeep=function(e){return ar(e,5)},Dn.cloneDeepWith=function(e,t){return ar(e,5,t="function"==typeof t?t:r)},Dn.cloneWith=function(e,t){return ar(e,4,t="function"==typeof t?t:r)},Dn.conformsTo=function(e,t){return null==t||sr(e,t,zs(t))},Dn.deburr=Vs,Dn.defaultTo=function(e,t){return null==e||e!=e?t:e},Dn.divide=_c,Dn.endsWith=function(e,t,n){e=gs(e),t=ai(t);var i=e.length,o=n=n===r?i:or(ps(n),0,i);return(n-=t.length)>=0&&e.slice(n,o)==t},Dn.eq=Ua,Dn.escape=function(e){return(e=gs(e))&&H.test(e)?e.replace($,en):e},Dn.escapeRegExp=function(e){return(e=gs(e))&&te.test(e)?e.replace(ee,"\\$&"):e},Dn.every=function(e,t,n){var i=Ga(e)?Ot:hr;return n&&go(e,t,n)&&(t=r),i(e,oo(t,3))},Dn.find=ma,Dn.findIndex=Vo,Dn.findKey=function(e,t){return Ft(e,oo(t,3),vr)},Dn.findLast=ya,Dn.findLastIndex=Go,Dn.findLastKey=function(e,t){return Ft(e,oo(t,3),_r)},Dn.floor=bc,Dn.forEach=ga,Dn.forEachRight=va,Dn.forIn=function(e,t){return null==e?e:yr(e,oo(t,3),Ts)},Dn.forInRight=function(e,t){return null==e?e:gr(e,oo(t,3),Ts)},Dn.forOwn=function(e,t){return e&&vr(e,oo(t,3))},Dn.forOwnRight=function(e,t){return e&&_r(e,oo(t,3))},Dn.get=Cs,Dn.gt=Ra,Dn.gte=La,Dn.has=function(e,t){return null!=e&&po(e,t,Cr)},Dn.hasIn=Os,Dn.head=$o,Dn.identity=nc,Dn.includes=function(e,t,n,r){e=$a(e)?e:Us(e),n=n&&!r?ps(n):0;var i=e.length;return n<0&&(n=yn(i+n,0)),as(e)?n<=i&&e.indexOf(t,n)>-1:!!i&&Dt(e,t,n)>-1},Dn.indexOf=function(e,t,n){var r=null==e?0:e.length;if(!r)return-1;var i=null==n?0:ps(n);return i<0&&(i=yn(r+i,0)),Dt(e,t,i)},Dn.inRange=function(e,t,n){return t=hs(t),n===r?(n=t,t=0):n=hs(n),function(e,t,n){return e>=gn(t,n)&&e<yn(t,n)}(e=ms(e),t,n)},Dn.invoke=ks,Dn.isArguments=Va,Dn.isArray=Ga,Dn.isArrayBuffer=Wa,Dn.isArrayLike=$a,Dn.isArrayLikeObject=qa,Dn.isBoolean=function(e){return!0===e||!1===e||es(e)&&wr(e)==y},Dn.isBuffer=Ha,Dn.isDate=Ka,Dn.isElement=function(e){return es(e)&&1===e.nodeType&&!rs(e)},Dn.isEmpty=function(e){if(null==e)return!0;if($a(e)&&(Ga(e)||"string"==typeof e||"function"==typeof e.splice||Ha(e)||cs(e)||Va(e)))return!e.length;var t=ho(e);if(t==P||t==O)return!e.size;if(Po(e))return!Br(e).length;for(var n in e)if(xe.call(e,n))return!1;return!0},Dn.isEqual=function(e,t){return zr(e,t)},Dn.isEqualWith=function(e,t,n){var i=(n="function"==typeof n?n:r)?n(e,t):r;return i===r?zr(e,t,r,n):!!i},Dn.isError=Ya,Dn.isFinite=function(e){return"number"==typeof e&&Gt(e)},Dn.isFunction=Za,Dn.isInteger=Ja,Dn.isLength=Qa,Dn.isMap=ts,Dn.isMatch=function(e,t){return e===t||Tr(e,t,so(t))},Dn.isMatchWith=function(e,t,n){return n="function"==typeof n?n:r,Tr(e,t,so(t),n)},Dn.isNaN=function(e){return ns(e)&&e!=+e},Dn.isNative=function(e){if(bo(e))throw new Pe("Unsupported core-js use. Try https://npms.io/search?q=ponyfill.");return jr(e)},Dn.isNil=function(e){return null==e},Dn.isNull=function(e){return null===e},Dn.isNumber=ns,Dn.isObject=Xa,Dn.isObjectLike=es,Dn.isPlainObject=rs,Dn.isRegExp=is,Dn.isSafeInteger=function(e){return Ja(e)&&e>=-9007199254740991&&e<=l},Dn.isSet=os,Dn.isString=as,Dn.isSymbol=ss,Dn.isTypedArray=cs,Dn.isUndefined=function(e){return e===r},Dn.isWeakMap=function(e){return es(e)&&ho(e)==k},Dn.isWeakSet=function(e){return es(e)&&"[object WeakSet]"==wr(e)},Dn.join=function(e,t){return null==e?"":fn.call(e,t)},Dn.kebabCase=Gs,Dn.last=Yo,Dn.lastIndexOf=function(e,t,n){var i=null==e?0:e.length;if(!i)return-1;var o=i;return n!==r&&(o=(o=ps(n))<0?yn(i+o,0):gn(o,i-1)),t==t?function(e,t,n){for(var r=n+1;r--;)if(e[r]===t)return r;return r}(e,t,o):Nt(e,Rt,o,!0)},Dn.lowerCase=Ws,Dn.lowerFirst=$s,Dn.lt=us,Dn.lte=ls,Dn.max=function(e){return e&&e.length?pr(e,nc,Ir):r},Dn.maxBy=function(e,t){return e&&e.length?pr(e,oo(t,2),Ir):r},Dn.mean=function(e){return Lt(e,nc)},Dn.meanBy=function(e,t){return Lt(e,oo(t,2))},Dn.min=function(e){return e&&e.length?pr(e,nc,Mr):r},Dn.minBy=function(e,t){return e&&e.length?pr(e,oo(t,2),Mr):r},Dn.stubArray=fc,Dn.stubFalse=mc,Dn.stubObject=function(){return{}},Dn.stubString=function(){return""},Dn.stubTrue=function(){return!0},Dn.multiply=Pc,Dn.nth=function(e,t){return e&&e.length?Rr(e,ps(t)):r},Dn.noConflict=function(){return lt._===this&&(lt._=De),this},Dn.noop=sc,Dn.now=Ca,Dn.pad=function(e,t,n){e=gs(e);var r=(t=ps(t))?un(e):0;if(!t||r>=t)return e;var i=(t-r)/2;return Li(ft(i),n)+e+Li(ht(i),n)},Dn.padEnd=function(e,t,n){e=gs(e);var r=(t=ps(t))?un(e):0;return t&&r<t?e+Li(t-r,n):e},Dn.padStart=function(e,t,n){e=gs(e);var r=(t=ps(t))?un(e):0;return t&&r<t?Li(t-r,n)+e:e},Dn.parseInt=function(e,t,n){return n||null==t?t=0:t&&(t=+t),_n(gs(e).replace(ne,""),t||0)},Dn.random=function(e,t,n){if(n&&"boolean"!=typeof n&&go(e,t,n)&&(t=n=r),n===r&&("boolean"==typeof t?(n=t,t=r):"boolean"==typeof e&&(n=e,e=r)),e===r&&t===r?(e=0,t=1):(e=hs(e),t===r?(t=e,e=0):t=hs(t)),e>t){var i=e;e=t,t=i}if(n||e%1||t%1){var o=bn();return gn(e+o*(t-e+at("1e-"+((o+"").length-1))),t)}return $r(e,t)},Dn.reduce=function(e,t,n){var r=Ga(e)?jt:Wt,i=arguments.length<3;return r(e,oo(t,4),n,i,lr)},Dn.reduceRight=function(e,t,n){var r=Ga(e)?xt:Wt,i=arguments.length<3;return r(e,oo(t,4),n,i,dr)},Dn.repeat=function(e,t,n){return t=(n?go(e,t,n):t===r)?1:ps(t),qr(gs(e),t)},Dn.replace=function(){var e=arguments,t=gs(e[0]);return e.length<3?t:t.replace(e[1],e[2])},Dn.result=function(e,t,n){var i=-1,o=(t=yi(t,e)).length;for(o||(o=1,e=r);++i<o;){var a=null==e?r:e[Fo(t[i])];a===r&&(i=o,a=n),e=Za(a)?a.call(e):a}return e},Dn.round=Sc,Dn.runInContext=e,Dn.sample=function(e){return(Ga(e)?Yn:Kr)(e)},Dn.size=function(e){if(null==e)return 0;if($a(e))return as(e)?un(e):e.length;var t=ho(e);return t==P||t==O?e.size:Br(e).length},Dn.snakeCase=qs,Dn.some=function(e,t,n){var i=Ga(e)?Bt:ti;return n&&go(e,t,n)&&(t=r),i(e,oo(t,3))},Dn.sortedIndex=function(e,t){return ni(e,t)},Dn.sortedIndexBy=function(e,t,n){return ri(e,t,oo(n,2))},Dn.sortedIndexOf=function(e,t){var n=null==e?0:e.length;if(n){var r=ni(e,t);if(r<n&&Ua(e[r],t))return r}return-1},Dn.sortedLastIndex=function(e,t){return ni(e,t,!0)},Dn.sortedLastIndexBy=function(e,t,n){return ri(e,t,oo(n,2),!0)},Dn.sortedLastIndexOf=function(e,t){if(null!=e&&e.length){var n=ni(e,t,!0)-1;if(Ua(e[n],t))return n}return-1},Dn.startCase=Hs,Dn.startsWith=function(e,t,n){return e=gs(e),n=null==n?0:or(ps(n),0,e.length),t=ai(t),e.slice(n,n+t.length)==t},Dn.subtract=wc,Dn.sum=function(e){return e&&e.length?$t(e,nc):0},Dn.sumBy=function(e,t){return e&&e.length?$t(e,oo(t,2)):0},Dn.template=function(e,t,n){var i=Dn.templateSettings;n&&go(e,t,n)&&(t=r),e=gs(e),t=Ps({},t,i,Yi);var o=Ps({},t.imports,i.imports,Yi),a=zs(o),s=Yt(o,a);It(a,function(e){if(ce.test(e))throw new Pe("Invalid `imports` option passed into `_.template`")});var c,u,l=0,d=t.interpolate||ve,h="__p += '",p=Ce((t.escape||ve).source+"|"+d.source+"|"+(d===Z?le:ve).source+"|"+(t.evaluate||ve).source+"|$","g"),f="//# sourceURL="+(xe.call(t,"sourceURL")?(t.sourceURL+"").replace(/\s/g," "):"lodash.templateSources["+ ++nt+"]")+"\n";e.replace(p,function(t,n,r,i,o,a){return r||(r=i),h+=e.slice(l,a).replace(_e,tn),n&&(c=!0,h+="' +\n__e("+n+") +\n'"),o&&(u=!0,h+="';\n"+o+";\n__p += '"),r&&(h+="' +\n((__t = ("+r+")) == null ? '' : __t) +\n'"),l=a+t.length,t}),h+="';\n";var m=xe.call(t,"variable")&&t.variable;if(m){if(ce.test(m))throw new Pe("Invalid `variable` option passed into `_.template`")}else h="with (obj) {\n"+h+"\n}\n";h=(u?h.replace(L,""):h).replace(V,"$1").replace(G,"$1;"),h="function("+(m||"obj")+") {\n"+(m?"":"obj || (obj = {});\n")+"var __t, __p = ''"+(c?", __e = _.escape":"")+(u?", __j = Array.prototype.join;\nfunction print() { __p += __j.call(arguments, '') }\n":";\n")+h+"return __p\n}";var y=Js(function(){return Se(a,f+"return "+h).apply(r,s)});if(y.source=h,Ya(y))throw y;return y},Dn.times=function(e,t){if((e=ps(e))<1||e>l)return[];var n=h,r=gn(e,h);t=oo(t),e-=h;for(var i=qt(r,t);++n<e;)t(n);return i},Dn.toFinite=hs,Dn.toInteger=ps,Dn.toLength=fs,Dn.toLower=function(e){return gs(e).toLowerCase()},Dn.toNumber=ms,Dn.toSafeInteger=function(e){return e?or(ps(e),-9007199254740991,l):0===e?e:0},Dn.toString=gs,Dn.toUpper=function(e){return gs(e).toUpperCase()},Dn.trim=function(e,t,n){if((e=gs(e))&&(n||t===r))return Ht(e);if(!e||!(t=ai(t)))return e;var i=ln(e),o=ln(t);return vi(i,Jt(i,o),Qt(i,o)+1).join("")},Dn.trimEnd=function(e,t,n){if((e=gs(e))&&(n||t===r))return e.slice(0,dn(e)+1);if(!e||!(t=ai(t)))return e;var i=ln(e);return vi(i,0,Qt(i,ln(t))+1).join("")},Dn.trimStart=function(e,t,n){if((e=gs(e))&&(n||t===r))return e.replace(ne,"");if(!e||!(t=ai(t)))return e;var i=ln(e);return vi(i,Jt(i,ln(t))).join("")},Dn.truncate=function(e,t){var n=30,i="...";if(Xa(t)){var o="separator"in t?t.separator:o;n="length"in t?ps(t.length):n,i="omission"in t?ai(t.omission):i}var a=(e=gs(e)).length;if(nn(e)){var s=ln(e);a=s.length}if(n>=a)return e;var c=n-un(i);if(c<1)return i;var u=s?vi(s,0,c).join(""):e.slice(0,c);if(o===r)return u+i;if(s&&(c+=u.length-c),is(o)){if(e.slice(c).search(o)){var l,d=u;for(o.global||(o=Ce(o.source,gs(de.exec(o))+"g")),o.lastIndex=0;l=o.exec(d);)var h=l.index;u=u.slice(0,h===r?c:h)}}else if(e.indexOf(ai(o),c)!=c){var p=u.lastIndexOf(o);p>-1&&(u=u.slice(0,p))}return u+i},Dn.unescape=function(e){return(e=gs(e))&&q.test(e)?e.replace(W,hn):e},Dn.uniqueId=function(e){var t=++Be;return gs(e)+t},Dn.upperCase=Ks,Dn.upperFirst=Ys,Dn.each=ga,Dn.eachRight=va,Dn.first=$o,ac(Dn,(yc={},vr(Dn,function(e,t){xe.call(Dn.prototype,t)||(yc[t]=e)}),yc),{chain:!1}),Dn.VERSION="4.18.1",It(["bind","bindKey","curry","curryRight","partial","partialRight"],function(e){Dn[e].placeholder=Dn}),It(["drop","take"],function(e,t){Vn.prototype[e]=function(n){n=n===r?1:yn(ps(n),0);var i=this.__filtered__&&!t?new Vn(this):this.clone();return i.__filtered__?i.__takeCount__=gn(n,i.__takeCount__):i.__views__.push({size:gn(n,h),type:e+(i.__dir__<0?"Right":"")}),i},Vn.prototype[e+"Right"]=function(t){return this.reverse()[e](t).reverse()}}),It(["filter","map","takeWhile"],function(e,t){var n=t+1,r=1==n||3==n;Vn.prototype[e]=function(e){var t=this.clone();return t.__iteratees__.push({iteratee:oo(e,3),type:n}),t.__filtered__=t.__filtered__||r,t}}),It(["head","last"],function(e,t){var n="take"+(t?"Right":"");Vn.prototype[e]=function(){return this[n](1).value()[0]}}),It(["initial","tail"],function(e,t){var n="drop"+(t?"":"Right");Vn.prototype[e]=function(){return this.__filtered__?new Vn(this):this[n](1)}}),Vn.prototype.compact=function(){return this.filter(nc)},Vn.prototype.find=function(e){return this.filter(e).head()},Vn.prototype.findLast=function(e){return this.reverse().find(e)},Vn.prototype.invokeMap=Hr(function(e,t){return"function"==typeof e?new Vn(this):this.map(function(n){return Er(n,e,t)})}),Vn.prototype.reject=function(e){return this.filter(Ba(oo(e)))},Vn.prototype.slice=function(e,t){e=ps(e);var n=this;return n.__filtered__&&(e>0||t<0)?new Vn(n):(e<0?n=n.takeRight(-e):e&&(n=n.drop(e)),t!==r&&(n=(t=ps(t))<0?n.dropRight(-t):n.take(t-e)),n)},Vn.prototype.takeRightWhile=function(e){return this.reverse().takeWhile(e).reverse()},Vn.prototype.toArray=function(){return this.take(h)},vr(Vn.prototype,function(e,t){var n=/^(?:filter|find|map|reject)|While$/.test(t),i=/^(?:head|last)$/.test(t),o=Dn[i?"take"+("last"==t?"Right":""):t],a=i||/^find/.test(t);o&&(Dn.prototype[t]=function(){var t=this.__wrapped__,s=i?[1]:arguments,c=t instanceof Vn,u=s[0],l=c||Ga(t),d=function(e){var t=o.apply(Dn,Tt([e],s));return i&&h?t[0]:t};l&&n&&"function"==typeof u&&1!=u.length&&(c=l=!1);var h=this.__chain__,p=!!this.__actions__.length,f=a&&!h,m=c&&!p;if(!a&&l){t=m?t:new Vn(this);var y=e.apply(t,s);return y.__actions__.push({func:ha,args:[d],thisArg:r}),new Ln(y,h)}return f&&m?e.apply(this,s):(y=this.thru(d),f?i?y.value()[0]:y.value():y)})}),It(["pop","push","shift","sort","splice","unshift"],function(e){var t=Ee[e],n=/^(?:push|sort|unshift)$/.test(e)?"tap":"thru",r=/^(?:pop|shift)$/.test(e);Dn.prototype[e]=function(){var e=arguments;if(r&&!this.__chain__){var i=this.value();return t.apply(Ga(i)?i:[],e)}return this[n](function(n){return t.apply(Ga(n)?n:[],e)})}}),vr(Vn.prototype,function(e,t){var n=Dn[t];if(n){var r=n.name+"";xe.call(kn,r)||(kn[r]=[]),kn[r].push({name:t,func:n})}}),kn[Ni(r,2).name]=[{name:"wrapper",func:r}],Vn.prototype.clone=function(){var e=new Vn(this.__wrapped__);return e.__actions__=Oi(this.__actions__),e.__dir__=this.__dir__,e.__filtered__=this.__filtered__,e.__iteratees__=Oi(this.__iteratees__),e.__takeCount__=this.__takeCount__,e.__views__=Oi(this.__views__),e},Vn.prototype.reverse=function(){if(this.__filtered__){var e=new Vn(this);e.__dir__=-1,e.__filtered__=!0}else(e=this.clone()).__dir__*=-1;return e},Vn.prototype.value=function(){var e=this.__wrapped__.value(),t=this.__dir__,n=Ga(e),r=t<0,i=n?e.length:0,o=function(e,t,n){for(var r=-1,i=n.length;++r<i;){var o=n[r],a=o.size;switch(o.type){case"drop":e+=a;break;case"dropRight":t-=a;break;case"take":t=gn(t,e+a);break;case"takeRight":e=yn(e,t-a)}}return{start:e,end:t}}(0,i,this.__views__),a=o.start,s=o.end,c=s-a,u=r?s:a-1,l=this.__iteratees__,d=l.length,h=0,p=gn(c,this.__takeCount__);if(!n||!r&&i==c&&p==c)return di(e,this.__actions__);var f=[];e:for(;c--&&h<p;){for(var m=-1,y=e[u+=t];++m<d;){var g=l[m],v=g.iteratee,_=g.type,b=v(y);if(2==_)y=b;else if(!b){if(1==_)continue e;break e}}f[h++]=y}return f},Dn.prototype.at=pa,Dn.prototype.chain=function(){return da(this)},Dn.prototype.commit=function(){return new Ln(this.value(),this.__chain__)},Dn.prototype.next=function(){this.__values__===r&&(this.__values__=ds(this.value()));var e=this.__index__>=this.__values__.length;return{done:e,value:e?r:this.__values__[this.__index__++]}},Dn.prototype.plant=function(e){for(var t,n=this;n instanceof Rn;){var i=Do(n);i.__index__=0,i.__values__=r,t?o.__wrapped__=i:t=i;var o=i;n=n.__wrapped__}return o.__wrapped__=e,t},Dn.prototype.reverse=function(){var e=this.__wrapped__;if(e instanceof Vn){var t=e;return this.__actions__.length&&(t=new Vn(this)),(t=t.reverse()).__actions__.push({func:ha,args:[Xo],thisArg:r}),new Ln(t,this.__chain__)}return this.thru(Xo)},Dn.prototype.toJSON=Dn.prototype.valueOf=Dn.prototype.value=function(){return di(this.__wrapped__,this.__actions__)},Dn.prototype.first=Dn.prototype.head,Je&&(Dn.prototype[Je]=function(){return this}),Dn}();"function"==typeof define&&"object"==typeof define.amd&&define.amd?(lt._=pn,define(function(){return pn})):ht?((ht.exports=pn)._=pn,dt._=pn):lt._=pn}.call(this)},1657(e){"use strict";e.exports=(e,t)=>{if("string"!=typeof e||"string"!=typeof t)throw new TypeError("Expected the arguments to be of type `string`");if(""===t)return[e];const n=e.indexOf(t);return-1===n?[e]:[e.slice(0,n),e.slice(n+t.length)]}},803(e){"use strict";e.exports=e=>encodeURIComponent(e).replace(/[!'()*]/g,e=>`%${e.charCodeAt(0).toString(16).toUpperCase()}`)},1635(e,t,n){"use strict";n.d(t,{__assign:()=>r});var r=function(){return r=Object.assign||function(e){for(var t,n=1,r=arguments.length;n<r;n++)for(var i in t=arguments[n])Object.prototype.hasOwnProperty.call(t,i)&&(e[i]=t[i]);return e},r.apply(this,arguments)};Object.create,Object.create}},t={};function n(r){var i=t[r];if(void 0!==i)return i.exports;var o=t[r]={id:r,loaded:!1,exports:{}};return e[r].call(o.exports,o,o.exports,n),o.loaded=!0,o.exports}n.n=e=>{var t=e&&e.__esModule?()=>e.default:()=>e;return n.d(t,{a:t}),t},n.d=(e,t)=>{for(var r in t)n.o(t,r)&&!n.o(e,r)&&Object.defineProperty(e,r,{enumerable:!0,get:t[r]})},n.g=function(){if("object"==typeof globalThis)return globalThis;try{return this||new Function("return this")()}catch(e){if("object"==typeof window)return window}}(),n.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t),n.r=e=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},n.nmd=e=>(e.paths=[],e.children||(e.children=[]),e);var r={};(()=>{"use strict";n.r(r),n.d(r,{createBigCommercePaymentsAlternativeMethodsPaymentStrategy:()=>Le,createBigCommercePaymentsButtonStrategy:()=>st,createBigCommercePaymentsCreditCardsPaymentStrategy:()=>Me,createBigCommercePaymentsCustomerStrategy:()=>Ye,createBigCommercePaymentsFastlaneCustomerStrategy:()=>Qe,createBigCommercePaymentsFastlanePaymentStrategy:()=>ye,createBigCommercePaymentsInvoicesPaymentStrategy:()=>De,createBigCommercePaymentsPayLaterButtonStrategy:()=>lt,createBigCommercePaymentsPayLaterCustomerStrategy:()=>tt,createBigCommercePaymentsPayLaterPaymentStrategy:()=>be,createBigCommercePaymentsPayLaterWalletStrategy:()=>Ft,createBigCommercePaymentsPaymentStrategy:()=>Z,createBigCommercePaymentsRatePayPayPaymentStrategy:()=>Ie,createBigCommercePaymentsRedirectAlternativeMethodsPaymentStrategy:()=>Ge,createBigCommercePaymentsVenmoButtonStrategy:()=>pt,createBigCommercePaymentsVenmoCustomerStrategy:()=>it,createBigCommercePaymentsVenmoPaymentStrategy:()=>qe,createBigCommercePaymentsWalletStrategy:()=>xt});var e,t=n(315);class i extends Error{constructor(e){var t;super(e||"An unexpected error has occurred."),this.name="StandardError",this.type="standard",t=new.target.prototype,Object.setPrototypeOf?Object.setPrototypeOf(this,t):this.__proto__=t,"function"==typeof Error.captureStackTrace?Error.captureStackTrace(this,new.target):this.stack=new Error(this.message).stack}}class o extends i{constructor(e){super(e||"Unable to proceed because the client library of a payment method is not loaded or ready to be used."),this.name="PaymentMethodClientUnavailableError",this.type="payment_method_client_unavailable"}}!function(e){e[e.MissingBillingAddress=0]="MissingBillingAddress",e[e.MissingCart=1]="MissingCart",e[e.MissingCheckout=2]="MissingCheckout",e[e.MissingConsignments=3]="MissingConsignments",e[e.MissingCustomer=4]="MissingCustomer",e[e.MissingCheckoutConfig=5]="MissingCheckoutConfig",e[e.MissingOrder=6]="MissingOrder",e[e.MissingOrderConfig=7]="MissingOrderConfig",e[e.MissingOrderId=8]="MissingOrderId",e[e.MissingPayment=9]="MissingPayment",e[e.MissingPaymentId=10]="MissingPaymentId",e[e.MissingPaymentInstrument=11]="MissingPaymentInstrument",e[e.MissingPaymentMethod=12]="MissingPaymentMethod",e[e.MissingPaymentRedirectUrl=13]="MissingPaymentRedirectUrl",e[e.MissingPaymentStatus=14]="MissingPaymentStatus",e[e.MissingPaymentToken=15]="MissingPaymentToken",e[e.MissingShippingAddress=16]="MissingShippingAddress"}(e||(e={}));class a extends i{constructor(t){super(function(t){switch(t){case e.MissingBillingAddress:return"Unable to proceed because billing address data is unavailable.";case e.MissingCart:return"Unable to proceed because cart data is unavailable.";case e.MissingConsignments:return"Unable to proceed because consignments data is unavailable.";case e.MissingCheckout:return"Unable to proceed because checkout data is unavailable.";case e.MissingCustomer:return"Unable to proceed because customer data is unavailable.";case e.MissingCheckoutConfig:case e.MissingOrderConfig:return"Unable to proceed because configuration data is unavailable.";case e.MissingOrder:return"Unable to proceed because order data is unavailable.";case e.MissingOrderId:return"Unable to proceed because order ID is unavailable or not generated yet.";case e.MissingPayment:return"Unable to proceed because payment data is unavailable.";case e.MissingPaymentToken:return"Unable to proceed because the token required to submit a payment is missing.";case e.MissingPaymentMethod:return"Unable to proceed because payment method data is unavailable or not properly configured.";case e.MissingShippingAddress:return"Unable to proceed because shipping address data is unavailable.";default:return"Unable to proceed because the required data is unavailable."}}(t)),this.subtype=t,this.name="MissingDataError",this.type="missing_data"}}var s=function(e,t,n,r){return new(n||(n=Promise))(function(i,o){function a(e){try{c(r.next(e))}catch(e){o(e)}}function s(e){try{c(r.throw(e))}catch(e){o(e)}}function c(e){var t;e.done?i(e.value):(t=e.value,t instanceof n?t:new n(function(e){e(t)})).then(a,s)}c((r=r.apply(e,t||[])).next())})};class c{constructor(e){this.scriptLoader=e,this.window=window}getPayPalFastlaneSdk(e,t,n){return s(this,void 0,void 0,function*(){if(!this.window.bigCommercePaymentsFastlaneSdk){const r=this.getPayPalFastlaneSdkConfiguration(e,t,n);if(yield this.loadPayPalSdk(r),!this.window.bigCommercePaymentsFastlaneSdk)throw new o}return this.window.bigCommercePaymentsFastlaneSdk})}getPayPalGooglePaySdk(e,t,n,r){return s(this,void 0,void 0,function*(){if(!this.window.bigCommercePaymentsGooglePay||r){const r=this.getPayPalGooglePaySdkScriptConfigOrThrow(e,t,n);yield this.loadPayPalSdk(r)}if(!this.window.bigCommercePaymentsGooglePay)throw new o;return this.window.bigCommercePaymentsGooglePay})}getPayPalApmsSdk(e,t){return s(this,void 0,void 0,function*(){if(!this.window.bigCommercePaymentsApms){const n=this.getPayPalApmSdkConfiguration(e,t);if(yield this.loadPayPalSdk(n),!this.window.bigCommercePaymentsApms)throw new o}return this.window.bigCommercePaymentsApms})}getPayPalMessages(e,t){return s(this,void 0,void 0,function*(){if(!this.window.bigCommercePaymentsMessages){const n=this.getPayPalSdkMessagesConfiguration(e,t);yield this.loadPayPalSdk(n)}if(!this.window.bigCommercePaymentsMessages)throw new o;return this.window.bigCommercePaymentsMessages})}loadPayPalSdk(e){return s(this,arguments,void 0,function*({options:e,attributes:t}){const n=this.transformConfig(e),r=this.transformConfig(t),i=`https://www.paypal.com/sdk/js?${new URLSearchParams(n).toString()}`;yield this.scriptLoader.loadScript(i,{async:!0,attributes:r})})}getPayPalFastlaneSdkConfiguration(t,n,r){const{clientToken:i,initializationData:o}=t;if(!o||!o.clientId)throw new a(e.MissingPaymentMethod);const{intent:s,clientId:c,merchantId:u,attributionId:l}=o;return{options:{"client-id":c,"merchant-id":u,commit:!0,components:["fastlane","three-domain-secure"],currency:n,intent:s},attributes:{"data-client-metadata-id":r.replace(/-/g,""),"data-namespace":"bigCommercePaymentsFastlaneSdk","data-partner-attribution-id":l,"data-sdk-client-token":i}}}getPayPalGooglePaySdkScriptConfigOrThrow(t,n,r=!0){const{clientToken:i,initializationData:o}=t;if(!o||!o.clientId)throw new a(e.MissingPaymentMethod);const{intent:s,clientId:c,merchantId:u,buyerCountry:l,attributionId:d,isHostedCheckoutEnabled:h,isDeveloperModeApplicable:p}=o,f=h||r;return{options:Object.assign({"client-id":c,"merchant-id":u,commit:f,components:["googlepay"],currency:n,intent:s},p&&{"buyer-country":l}),attributes:{"data-partner-attribution-id":d,"data-client-token":i,"data-namespace":"bigCommercePaymentsGooglePay"}}}getPayPalApmSdkConfiguration(t,n){const{initializationData:r}=t;if(!r||!r.clientId)throw new a(e.MissingPaymentMethod);const{intent:i,clientId:o,merchantId:s,buyerCountry:c,attributionId:u,isDeveloperModeApplicable:l,availableAlternativePaymentMethods:d=[],enabledAlternativePaymentMethods:h=[]}=r,p=this.filterFundingOptions(h),f=this.filterFundingOptions(d.filter(e=>!h.includes(e)));return{options:Object.assign({"client-id":o,"merchant-id":s,"enable-funding":p.length>0?p:void 0,"disable-funding":f.length>0?f:void 0,commit:!0,components:["buttons","payment-fields"],currency:n,intent:i},l&&{"buyer-country":c}),attributes:{"data-partner-attribution-id":u,"data-namespace":"bigCommercePaymentsApms"}}}getPayPalSdkMessagesConfiguration(t,n){const{initializationData:r}=t;if(!r||!r.clientId)throw new a(e.MissingPaymentMethod);const{clientId:i,merchantId:o,attributionId:s,isDeveloperModeApplicable:c,buyerCountry:u}=r;return{options:Object.assign({"client-id":i,"merchant-id":o,components:["messages"],currency:n},c&&{"buyer-country":u}),attributes:{"data-namespace":"bigCommercePaymentsMessages","data-partner-attribution-id":s}}}filterFundingOptions(e){const t=["klarna","afterpay"];return e?e.filter(e=>!t.includes(e)):[]}transformConfig(e){let t={};return Object.keys(e).forEach(n=>{const r=e[n];null==r||""===r||Array.isArray(r)&&0===r.length||(t=Object.assign(Object.assign({},t),{[n]:Array.isArray(r)?r.join(","):r}))}),t}}function u(){return new c((0,t.Hb)())}function l(e,t){return Object.assign(e,{resolveIds:t})}const d={size:70,color:"#d9d9d9",backgroundColor:"#ffffff"},h="embedded-checkout-loading-indicator-rotation";class p{constructor(e){this.styles=Object.assign(Object.assign({},d),e&&e.styles),this.containerStyles=Object.assign({},e&&e.containerStyles),this.defineAnimation(),this.container=this.buildContainer(),this.indicator=this.buildIndicator(),this.container.appendChild(this.indicator)}show(e){if(e){const t=document.getElementById(e);if(!t)throw new Error("Unable to attach the loading indicator because the parent ID is not valid.");t.appendChild(this.container)}this.container.style.visibility="visible",this.container.style.opacity="1"}hide(){const e=()=>{this.container.style.visibility="hidden",this.container.removeEventListener("transitionend",e)};this.container.addEventListener("transitionend",e),this.container.style.opacity="0"}buildContainer(){const e=document.createElement("div");return e.style.display="block",e.style.bottom="0",e.style.left="0",e.style.height="100%",e.style.width="100%",e.style.position="absolute",e.style.right="0",e.style.top="0",e.style.transition="all 250ms ease-out",e.style.opacity="0",this.setStyleAttribute(e,this.containerStyles),e}buildIndicator(){const e=document.createElement("div");return e.style.display="block",e.style.width=`${this.styles.size}px`,e.style.height=`${this.styles.size}px`,e.style.borderRadius=`${this.styles.size}px`,e.style.border="solid 1px",e.style.borderColor=`${this.styles.backgroundColor} ${this.styles.backgroundColor} ${this.styles.color} ${this.styles.color}`,e.style.margin="0 auto",e.style.position="absolute",e.style.left="0",e.style.right="0",e.style.top="50%",e.style.transform="translateY(-50%) rotate(0deg)",e.style.transformStyle="preserve-3d",e.style.animation=`${h} 500ms infinite cubic-bezier(0.69, 0.31, 0.56, 0.83)`,e}setStyleAttribute(e,t){Object.keys(t).forEach(n=>{e.style.setProperty(n,t[n])})}defineAnimation(){var e;if(document.getElementById(h))return;const t=document.createElement("style");t.id=h,null===(e=document.head)||void 0===e||e.appendChild(t),t.sheet instanceof CSSStyleSheet&&t.sheet.insertRule(`\n @keyframes ${h} {\n 0% { transform: translateY(-50%) rotate(0deg); }\n 100% { transform: translateY(-50%) rotate(360deg); }\n }\n `,0)}}const f={"background-color":"rgba(0, 0, 0, 0.4)","z-index":"1000"};var m=n(8686),y=n(4043),g=n(9440);class v extends i{constructor(e){super(e||"An unexpected error has occurred during buy now cart creation process. Please try again later."),this.name="BuyNowCartCreationError",this.type="buy_now_cart_creation_error"}}const _={body:{},headers:{},status:0};class b extends i{constructor(e,{message:t,errors:n}={}){const{body:r,headers:i,status:o}=e||_;super(t||"An unexpected error has occurred."),this.name="RequestError",this.type="request",this.body=r,this.headers=i,this.status=o,this.errors=n||[]}}var P,S,w,I,C,O,A,E;!function(e){e.BuyNow="BUY_NOW",e.INVOICE="B2B_INVOICE"}(P||(P={})),function(e){e.Possible="POSSIBLE",e.No="NO",e.Unknown="UNKNOWN",e.Yes="YES"}(S||(S={})),function(e){e.AUTHORIZE="authorize",e.CAPTURE="capture"}(w||(w={})),function(e){e.paypal="paypal",e.checkout="checkout",e.buynow="buynow",e.pay="pay",e.installment="installment"}(I||(I={})),function(e){e.gold="gold",e.blue="blue",e.silver="silver",e.black="black",e.white="white"}(C||(C={})),function(e){e.pill="pill",e.rect="rect"}(O||(O={})),function(e){e.OXXO="oxxo"}(A||(A={})),function(e){e.Approved="APPROVED",e.Created="CREATED",e.PayerActionRequired="PAYER_ACTION_REQUIRED",e.PollingStop="POLLING_STOP",e.PollingError="POLLING_ERROR"}(E||(E={}));var k=function(e,t,n,r){return new(n||(n=Promise))(function(i,o){function a(e){try{c(r.next(e))}catch(e){o(e)}}function s(e){try{c(r.throw(e))}catch(e){o(e)}}function c(e){var t;e.done?i(e.value):(t=e.value,t instanceof n?t:new n(function(e){e(t)})).then(a,s)}c((r=r.apply(e,t||[])).next())})};class z{constructor(e,t,n,r){this.formPoster=e,this.paymentIntegrationService=t,this.bigCommercePaymentsRequestSender=n,this.bigCommercePaymentsScriptLoader=r}loadPayPalSdk(e,t,n,r){return k(this,void 0,void 0,function*(){const i=this.paymentIntegrationService.getState(),o=t||i.getCartOrThrow().currency.code,a=i.getPaymentMethodOrThrow(e);return this.paypalSdk=yield this.bigCommercePaymentsScriptLoader.getPayPalSDK(a,o,n,r),this.paypalSdk})}getPayPalSdkOrThrow(){if(!this.paypalSdk)throw new o;return this.paypalSdk}createBuyNowCartOrThrow(t){return k(this,void 0,void 0,function*(){const n=t.getBuyNowCartRequestBody();if(!n)throw new a(e.MissingCart);try{return yield this.paymentIntegrationService.createBuyNowCart(n)}catch(e){throw new v}})}createOrder(e,t){return k(this,void 0,void 0,function*(){const n=this.paymentIntegrationService.getState().getCartOrThrow().id,{orderId:r}=yield this.bigCommercePaymentsRequestSender.createOrder(e,Object.assign({cartId:n},t));return r})}createOrderCardFields(e,t){return k(this,void 0,void 0,function*(){const n=this.paymentIntegrationService.getState().getCartOrThrow().id,{orderId:r,setupToken:i}=yield this.bigCommercePaymentsRequestSender.createOrder(e,Object.assign({cartId:n},t));return Object.assign({orderId:r},i?{setupToken:i}:{})})}updateOrder(e){return k(this,void 0,void 0,function*(){const t=this.paymentIntegrationService.getState(),n=t.getCartOrThrow();let r;e||(r=t.getConsignmentsOrThrow()[0]);try{yield this.bigCommercePaymentsRequestSender.updateOrder({availableShippingOptions:e?[]:null==r?void 0:r.availableShippingOptions,cartId:n.id,selectedShippingOption:e?null:null==r?void 0:r.selectedShippingOption})}catch(e){throw new b}})}getOrderStatus(e,t){return k(this,void 0,void 0,function*(){try{const{status:n}=yield this.bigCommercePaymentsRequestSender.getOrderStatus(e,t);return n}catch(e){throw new b}})}tokenizePayment(t,n){const r=this.paymentIntegrationService.getState().getCartOrThrow();if(!n)throw new a(e.MissingOrderId);return this.formPoster.postForm("/checkout.php",Object.assign({payment_type:"paypal",action:"set_external_checkout",provider:t,order_id:n},r.source===P.BuyNow&&{cart_id:r.id}))}submitPayment(e,t,n){return k(this,void 0,void 0,function*(){const r={formattedPayload:{vault_payment_instrument:null,set_as_default_stored_instrument:null,device_info:null,method_id:e,paypal_account:{order_id:t}}};yield this.paymentIntegrationService.submitPayment(Object.assign({methodId:e,paymentData:r},n?{gatewayId:n}:{}))})}getShippingOptionOrThrow(e){const t=this.paymentIntegrationService.getState().getConsignmentsOrThrow()[0],n=t.availableShippingOptions||[],r=n.find(e=>e.isRecommended),i=(e?n.find(t=>t.id===e):n.find(e=>{var n;return e.id===(null===(n=t.selectedShippingOption)||void 0===n?void 0:n.id)}))||r||n[0];if(!i)throw new Error("Your order can't be shipped to this address");return i}getAddress(e){return{firstName:(null==e?void 0:e.firstName)||"",lastName:(null==e?void 0:e.lastName)||"",email:(null==e?void 0:e.email)||"",phone:(null==e?void 0:e.phone)||"",company:"",address1:(null==e?void 0:e.address1)||"",address2:(null==e?void 0:e.address2)||"",city:(null==e?void 0:e.city)||"",countryCode:(null==e?void 0:e.countryCode)||"",postalCode:(null==e?void 0:e.postalCode)||"",stateOrProvince:"",stateOrProvinceCode:(null==e?void 0:e.stateOrProvinceCode)||"",customFields:[]}}getBillingAddressFromOrderDetails({payer:e}){var t,n;return this.getAddress({firstName:e.name.given_name,lastName:e.name.surname,email:e.email_address,address1:e.address.address_line_1,address2:e.address.address_line_2,city:e.address.admin_area_2,countryCode:e.address.country_code,postalCode:e.address.postal_code,stateOrProvinceCode:e.address.admin_area_1,phone:null===(n=null===(t=e.phone)||void 0===t?void 0:t.phone_number)||void 0===n?void 0:n.national_number})}getShippingAddressFromOrderDetails(e){const{payer:t,purchase_units:n}=e,{address:r,name:{full_name:i}}=n[0].shipping,[o,...a]=i.split(" ");return this.getAddress({firstName:o,lastName:a.join(" "),email:t.email_address,address1:r.address_line_1,address2:r.address_line_2,city:r.admin_area_2,countryCode:r.country_code,postalCode:r.postal_code,stateOrProvinceCode:r.admin_area_1})}getValidButtonStyle(e){const{color:t,height:n,label:r,shape:i}=e||{},o={color:t&&C[t]?t:void 0,height:this.getValidHeight(n),label:r&&I[r]?r:void 0,shape:i&&O[i]?i:void 0};return(0,g.omitBy)(o,g.isNil)}getValidHeight(e){return e&&"number"==typeof e?e>55?55:e<25?25:e:40}removeElement(e){const t=e&&document.getElementById(e);t&&(t.style.display="none")}}const T="This API endpoint is for internal use only and may change in the future";var j;!function(e){e.Json="application/json",e.JsonV1="application/vnd.bc.v1+json"}(j||(j={}));const x=j,B={"X-Checkout-SDK-Version":"1.960.1"};var M=function(e,t,n,r){return new(n||(n=Promise))(function(i,o){function a(e){try{c(r.next(e))}catch(e){o(e)}}function s(e){try{c(r.throw(e))}catch(e){o(e)}}function c(e){var t;e.done?i(e.value):(t=e.value,t instanceof n?t:new n(function(e){e(t)})).then(a,s)}c((r=r.apply(e,t||[])).next())})};class F{constructor(e){this.requestSender=e}createOrder(e,t){return M(this,void 0,void 0,function*(){const n=`/api/storefront/payment/${e}`,r=t,i=Object.assign({"X-API-INTERNAL":T,"Content-Type":x.Json},B);return(yield this.requestSender.post(n,{headers:i,body:r})).body})}updateOrder(e){return M(this,void 0,void 0,function*(){const t=e,n=Object.assign({"X-API-INTERNAL":T,"Content-Type":x.Json},B);return(yield this.requestSender.put("/api/storefront/initialization/bigcommerce_payments",{headers:n,body:t})).body})}getOrderStatus(){return M(this,arguments,void 0,function*(e="bigcommerce_payments",t){const n=`/api/storefront/initialization/${e}`,r=Object.assign({"X-API-INTERNAL":T,"Content-Type":x.Json},B);return(yield this.requestSender.get(n,Object.assign({headers:r},t))).body})}}var N=function(e,t,n,r){return new(n||(n=Promise))(function(i,o){function a(e){try{c(r.next(e))}catch(e){o(e)}}function s(e){try{c(r.throw(e))}catch(e){o(e)}}function c(e){var t;e.done?i(e.value):(t=e.value,t instanceof n?t:new n(function(e){e(t)})).then(a,s)}c((r=r.apply(e,t||[])).next())})};class D{constructor(e){this.scriptLoader=e,this.window=window}getPayPalSDK(e,t,n,r){return N(this,void 0,void 0,function*(){const i=this.getPayPalSdkScriptConfigOrThrow(e,t,n);return this.loadPayPalSDK(i,r)})}loadPayPalSDK(e){return N(this,arguments,void 0,function*(e,t=!1){if(!this.window.bigCommercePaymentsPayPalSDK||t){const t=this.transformConfig(e.options),n=this.transformConfig(e.attributes),r=`https://www.paypal.com/sdk/js?${new URLSearchParams(t).toString()}`;yield this.scriptLoader.loadScript(r,{async:!0,attributes:n})}if(!this.window.bigCommercePaymentsPayPalSDK)throw new o;return this.window.bigCommercePaymentsPayPalSDK})}getPayPalSdkScriptConfigOrThrow(t,n,r=!0){const{id:i,clientToken:o,initializationData:s}=t;if(!(null==s?void 0:s.clientId))throw new a(e.MissingPaymentMethod);const{intent:c,clientId:u,merchantId:l,buyerCountry:d,attributionId:h,isVenmoEnabled:p,isHostedCheckoutEnabled:f,isPayPalCreditAvailable:m,isDeveloperModeApplicable:y,availableAlternativePaymentMethods:g=[],enabledAlternativePaymentMethods:v=[],isGooglePayEnabled:_}=s,b=f||r,P="bigcommerce_payments_creditcards"===i,S=P?["card"]:[],w=P?[]:["card"],I=m?["credit","paylater"]:[],C=m?[]:["credit","paylater"],O=p?["venmo"]:[],A=p?[]:["venmo"],E=g.filter(e=>!v.includes(e)),k=_?["googlepay"]:[],z=r?["card-fields"]:[],T=this.filterFundingOptions([...w,...C,...A,...E]),j=this.filterFundingOptions([...S,...I,...O,...v]);return{options:Object.assign({"client-id":u,"merchant-id":l,"enable-funding":j.length>0?j:void 0,"disable-funding":T.length>0?T:void 0,commit:b,components:["buttons","hosted-fields","payment-fields","legal",...k,...z],currency:n,intent:c},y&&{"buyer-country":d}),attributes:{"data-partner-attribution-id":h,"data-client-token":o,"data-namespace":"bigCommercePaymentsPayPalSDK"}}}filterFundingOptions(e){const t=["klarna","afterpay"];return e?e.filter(e=>!t.includes(e)):[]}transformConfig(e){let t={};return Object.keys(e).forEach(n=>{const r=e[n];null==r||""===r||Array.isArray(r)&&0===r.length||(t=Object.assign(Object.assign({},t),{[n]:Array.isArray(r)?r.join(","):r}))}),t}}const U=e=>{const{getHost:n}=e.getState();return new z((0,m.createFormPoster)(),e,new F((0,y.createRequestSender)({host:n()})),new D((0,t.vQ)()))},R=function({styles:e}){const t={};return e.color&&(t.color=e.color),e.layout&&(t.layout=e.layout),(e["logo-type"]||e["logo-position"])&&(t.logo={},e["logo-type"]&&(t.logo.type=e["logo-type"]),e["logo-position"]&&(t.logo.position=e["logo-position"])),e.ratio&&(t.ratio=e.ratio),(e["text-color"]||e["text-size"])&&(t.text={},e["text-color"]&&(t.text.color=e["text-color"]),e["text-size"]&&(t.text.size=+e["text-size"])),t};class L extends i{constructor(e){super(e||"Invalid arguments have been provided."),this.name="InvalidArgumentError",this.type="invalid_argument"}}class V extends L{constructor(e){let t="Unable to submit payment for the order because the payload is invalid.";e&&(t=`${t} Make sure the following fields are provided correctly: ${e.join(", ")}.`),super(t),this.name="PaymentArgumentInvalidError"}}class G extends b{constructor(e){super(e,{message:"There is a problem processing your payment. Please try again later."}),this.name="PaymentMethodInvalidError",this.type="payment_method_invalid"}}class W extends i{constructor(){super("The current order does not need to be finalized at this stage."),this.name="OrderFinalizationNotRequiredError",this.type="order_finalization_not_required"}}function $(e){return!("object"!=typeof e||null===e||void 0!==e.shouldSaveInstrument&&"boolean"!=typeof e.shouldSaveInstrument||void 0!==e.shouldSetAsDefaultInstrument&&"boolean"!=typeof e.shouldSetAsDefaultInstrument)}function q(e){return Boolean(e.instrumentId)}function H(e){return"object"==typeof e&&null!==e&&"bigpayToken"in e&&"defaultInstrument"in e&&"provider"in e&&"trustedShippingAddress"in e&&"method"in e&&"type"in e}var K=function(e,t,n,r){return new(n||(n=Promise))(function(i,o){function a(e){try{c(r.next(e))}catch(e){o(e)}}function s(e){try{c(r.throw(e))}catch(e){o(e)}}function c(e){var t;e.done?i(e.value):(t=e.value,t instanceof n?t:new n(function(e){e(t)})).then(a,s)}c((r=r.apply(e,t||[])).next())})};class Y{constructor(e,t,n,r){this.paymentIntegrationService=e,this.bigCommercePaymentsIntegrationService=t,this.paypalSdkHelper=n,this.loadingIndicator=r}initialize(e){return K(this,void 0,void 0,function*(){const{methodId:t,bigcommerce_payments:n}=e||{};if(this.bigcommerce_payments=n,!t)throw new L('Unable to initialize payment because "options.methodId" argument is not provided.');if(!n)throw new L('Unable to initialize payment because "options.bigcommerce_payments" argument is not provided.');yield this.paymentIntegrationService.loadPaymentMethod(t);const r=this.paymentIntegrationService.getState(),i=r.getPaymentMethodOrThrow(t),{container:o,bannerContainerId:a}=n,{orderId:s,paypalBNPLConfiguration:c=[],isPayPalCreditAvailable:u}=i.initializationData||{};if(void 0!==a){if(!document.getElementById(a))return void console.error("Unable to create banner without valid banner container ID.");const e=null==c?void 0:c.find(({id:e})=>"checkout"===e);if(u||!(null==e?void 0:e.status))return;const t=yield this.paypalSdkHelper.getPayPalMessages(i,r.getCartOrThrow().currency.code);return t&&"function"==typeof(null==t?void 0:t.Messages)?this.renderMessages(t,a,e):void console.error("[BC PayPalCommerce PayLater]: banner could not be rendered, due to issues with loading PayPal SDK")}s?this.orderId=s:(this.loadingIndicatorContainer=null==o?void 0:o.split("#")[1],yield this.bigCommercePaymentsIntegrationService.loadPayPalSdk(t),n.onInit&&"function"==typeof n.onInit&&n.onInit(()=>this.renderButton(t,n)),(void 0===n.shouldRenderPayPalButtonOnInitialization||n.shouldRenderPayPalButtonOnInitialization)&&this.renderButton(t,n))})}execute(e,t){return K(this,void 0,void 0,function*(){const{payment:n}=e,r=function(e,t){var n={};for(var r in e)Object.prototype.hasOwnProperty.call(e,r)&&t.indexOf(r)<0&&(n[r]=e[r]);if(null!=e&&"function"==typeof Object.getOwnPropertySymbols){var i=0;for(r=Object.getOwnPropertySymbols(e);i<r.length;i++)t.indexOf(r[i])<0&&Object.prototype.propertyIsEnumerable.call(e,r[i])&&(n[r[i]]=e[r[i]])}return n}(e,["payment"]),{onError:i}=this.bigcommerce_payments||{};if(!n)throw new V(["payment"]);const{methodId:o,paymentData:a}=n;if(this.isPayPalVaultedInstrumentPaymentData(a)&&!this.orderId&&(this.orderId=yield this.createOrder()),!this.orderId)throw new G;const s=this.isPayPalVaultedInstrumentPaymentData(a)?this.prepareVaultedInstrumentPaymentPayload(o,this.orderId,a):this.preparePaymentPayload(o,this.orderId,a);try{yield this.paymentIntegrationService.submitOrder(r,t),yield this.paymentIntegrationService.submitPayment(s)}catch(e){return this.isProviderError(e)&&(yield this.bigCommercePaymentsIntegrationService.loadPayPalSdk(n.methodId),yield new Promise((e,t)=>{var r;this.bigcommerce_payments&&(null===(r=this.paypalButton)||void 0===r||r.close(),this.renderButton(n.methodId,this.bigcommerce_payments),this.handleError(new Error("INSTRUMENT_DECLINED"),i)),t()})),this.handleError(e,i),Promise.reject()}})}finalize(){return Promise.reject(new W)}deinitialize(){var e;return this.orderId=void 0,null===(e=this.paypalButton)||void 0===e||e.close(),Promise.resolve()}prepareVaultedInstrumentPaymentPayload(e,t,n){const{instrumentId:r,shouldSetAsDefaultInstrument:i}=n,o=!this.isTrustedVaultingFlow(n);return o?{methodId:e,paymentData:{shouldSaveInstrument:o,shouldSetAsDefaultInstrument:i,formattedPayload:{paypal_account:{order_id:t}}}}:{methodId:e,paymentData:{instrumentId:r,shouldSetAsDefaultInstrument:i,formattedPayload:{paypal_account:{order_id:t},bigpay_token:{token:r}}}}}preparePaymentPayload(e,t,n){const{shouldSaveInstrument:r=!1,shouldSetAsDefaultInstrument:i=!1}=$(n)?n:{};return{methodId:e,paymentData:{shouldSaveInstrument:r,shouldSetAsDefaultInstrument:i,formattedPayload:{paypal_account:{order_id:t}}}}}renderButton(e,t){const n=this.bigCommercePaymentsIntegrationService.getPayPalSdkOrThrow(),r=this.paymentIntegrationService.getState().getPaymentMethodOrThrow(e),{paymentButtonStyles:i}=r.initializationData||{},{checkoutPaymentButtonStyles:o}=i||{},{container:a,onError:s,onRenderButton:c,onValidate:u,submitForm:l}=t;if(!a)throw new L('Unable to initialize payment because "container" argument is not provided.');const d={fundingSource:n.FUNDING.PAYPAL,style:this.bigCommercePaymentsIntegrationService.getValidButtonStyle(o),createOrder:()=>this.createOrder(),onClick:(e,t)=>this.handleClick(t,u),onApprove:e=>this.handleApprove(e,l),onError:e=>this.handleError(e,s),onCancel:()=>this.toggleLoadingIndicator(!1)};this.paypalButton=n.Buttons(d),this.paypalButton.isEligible()&&(c&&"function"==typeof c&&c(),this.paypalButton.render(a))}handleClick(e,t){return K(this,void 0,void 0,function*(){const{resolve:n,reject:r}=e;yield null==t?void 0:t(()=>(this.toggleLoadingIndicator(!0),n()),r)})}handleApprove({orderID:e},t){this.orderId=e,null==t||t()}handleError(e,t){this.toggleLoadingIndicator(!1),t&&"function"==typeof t&&t(e)}createOrder(){return K(this,void 0,void 0,function*(){const e=this.getFieldsValues();return this.bigCommercePaymentsIntegrationService.createOrder("bigcommerce_paymentscheckout",{shouldSaveInstrument:(null==e?void 0:e.shouldSaveInstrument)||!1})})}getFieldsValues(){const{getFieldsValues:e}=this.bigcommerce_payments||{};return"function"==typeof e?e():void 0}isTrustedVaultingFlow(e){if(e&&q(e)){const t=this.paymentIntegrationService.getState().getInstruments(),n=null==t?void 0:t.find(t=>H(t)&&t.bigpayToken===e.instrumentId);return!(H(n)&&!n.trustedShippingAddress)}return!1}toggleLoadingIndicator(e){e&&this.loadingIndicatorContainer?this.loadingIndicator.show(this.loadingIndicatorContainer):this.loadingIndicator.hide()}isPayPalVaultedInstrumentPaymentData(e){return!!e&&q(e)&&$(e)}renderMessages(e,t,n){const r={amount:this.paymentIntegrationService.getState().getCheckoutOrThrow().outstandingBalance,placement:"payment",style:R(n)};e.Messages(r).render(`#${t}`)}isProviderError(e){var t,n,r;return!!function(e){return"object"==typeof e&&null!==e&&"errors"in e}(e)&&"INSTRUMENT_DECLINED"===(null===(r=null===(n=((null===(t=null==e?void 0:e.errors)||void 0===t?void 0:t.filter(e=>e.provider_error))||[])[0])||void 0===n?void 0:n.provider_error)||void 0===r?void 0:r.code)}}const Z=l(e=>new Y(e,U(e),u(),new p({containerStyles:f})),[{id:"bigcommerce_payments"}]);var J,Q,X,ee,te,ne,re,ie,oe;!function(e){e.CVV="cvv",e.PAN="pan"}(J||(J={}));class ae{static get(e){const t=`${encodeURIComponent(`${e}`)}=`,n=document.cookie;let r=null;const i=n.indexOf(t);if(i>-1){let e=n.indexOf(";",i);-1===e&&(e=n.length),r=decodeURIComponent(n.substring(i+t.length,e))}return r}static set(e,t,n={secure:!0}){let r=`${encodeURIComponent(e)}=${encodeURIComponent(t)}`;const{expires:i,path:o,domain:a,secure:s}=n;if(i)r+=`; expires=${i.toUTCString()}`;else{const e=new Date,t=60;e.setTime(e.getTime()+60*t*1e3),r+=`; expires=${e.toUTCString()}`}o&&(r+=`; path=${o}`),a&&(r+=`; domain=${a}`),s&&(r+="; secure"),document.cookie=r}static remove(e,t){ae.set(e,"",Object.assign({expires:new Date(0)},t))}}!function(e){e.AUTHORIZE="authorize",e.CAPTURE="capture"}(Q||(Q={})),function(e){e.Possible="POSSIBLE",e.No="NO",e.Unknown="UNKNOWN",e.Yes="YES"}(X||(X={})),function(e){e.Always="SCA_ALWAYS"}(ee||(ee={})),function(e){e.Succeeded="succeeded",e.Cancelled="cancelled",e.Errored="errored"}(te||(te={})),function(e){e.paypal="paypal",e.checkout="checkout",e.buynow="buynow",e.pay="pay",e.installment="installment"}(ne||(ne={})),function(e){e.gold="gold",e.blue="blue",e.silver="silver",e.black="black",e.white="white"}(re||(re={})),function(e){e.pill="pill",e.rect="rect"}(ie||(ie={})),function(e){e.SUCCEEDED="succeeded",e.FAILED="failed",e.CANCELED="canceled",e.UNRECOGNIZED="unrecognized"}(oe||(oe={}));var se=function(e,t,n,r){return new(n||(n=Promise))(function(i,o){function a(e){try{c(r.next(e))}catch(e){o(e)}}function s(e){try{c(r.throw(e))}catch(e){o(e)}}function c(e){var t;e.done?i(e.value):(t=e.value,t instanceof n?t:new n(function(e){e(t)})).then(a,s)}c((r=r.apply(e,t||[])).next())})};class ce{constructor(){this.window=window}initializePayPalFastlane(e,t,n){return se(this,void 0,void 0,function*(){if(t&&(window.localStorage.setItem("fastlaneEnv","sandbox"),window.localStorage.setItem("axoEnv","sandbox")),!this.window.bigCommercePaymentsFastlane){const t={root:{backgroundColorPrimary:"transparent"}};this.window.bigCommercePaymentsFastlane=yield e.Fastlane({styles:n||t})}return this.window.bigCommercePaymentsFastlane})}getPayPalFastlaneOrThrow(){if(!this.window.bigCommercePaymentsFastlane)throw new o;return this.window.bigCommercePaymentsFastlane}lookupCustomerOrThrow(e){return se(this,void 0,void 0,function*(){return this.getPayPalFastlaneOrThrow().identity.lookupCustomerByEmail(e)})}triggerAuthenticationFlowOrThrow(e){return se(this,void 0,void 0,function*(){return e?this.getPayPalFastlaneOrThrow().identity.triggerAuthenticationFlow(e):{}})}updateStorageSessionId(e){const t=new Date;t.setDate(t.getDate()+14);const n={expires:t,secure:!0};ae.set("bc-fastlane-sessionId",e,n)}removeStorageSessionId(){ae.remove("bc-fastlane-sessionId")}getStorageSessionId(){return ae.get("bc-fastlane-sessionId")||""}mapPayPalFastlaneProfileToBcCustomerData(e,t){var n,r,i;const{authenticationState:o,profileData:a}=t,s=null===(i=null===(r=null===(n=null==a?void 0:a.card)||void 0===n?void 0:n.paymentSource)||void 0===r?void 0:r.card)||void 0===i?void 0:i.billingAddress,c=null==a?void 0:a.shippingAddress,u=null==a?void 0:a.name,l=null==a?void 0:a.card,d=c?this.mapPayPalToBcAddress(c.address,c.name,c.phoneNumber):void 0,h=s&&u?this.mapPayPalToBcAddress(s,u,null==c?void 0:c.phoneNumber):void 0,p=l?this.mapPayPalToBcInstrument(e,l):[],f=this.filterAddresses([d,h]);return{authenticationState:o||oe.UNRECOGNIZED,addresses:f,billingAddress:h,shippingAddress:d,instruments:p}}mapPayPalToBcInstrument(e,t){const{id:n,paymentSource:r}=t,{brand:i,expiry:o,lastDigits:a}=r.card,[s,c]=o.split("-");return[{bigpayToken:n,brand:i,defaultInstrument:!1,expiryMonth:c,expiryYear:s,iin:"",last4:a,method:e,provider:e,trustedShippingAddress:!1,untrustedShippingCardVerificationMode:J.PAN,type:"card"}]}mapBcToPayPalAddress(e){return{company:(null==e?void 0:e.company)||"",addressLine1:(null==e?void 0:e.address1)||"",addressLine2:(null==e?void 0:e.address2)||"",adminArea1:(null==e?void 0:e.stateOrProvinceCode)||(null==e?void 0:e.stateOrProvince)||"",adminArea2:(null==e?void 0:e.city)||"",postalCode:(null==e?void 0:e.postalCode)||"",countryCode:(null==e?void 0:e.countryCode)||""}}mapPayPalToBcAddress(e,t,n,r){const[i,o]=t.fullName.split(" "),a=(null==n?void 0:n.nationalNumber)||"",s=(null==n?void 0:n.countryCode)||"";return{id:Date.now(),type:"paypal-address",firstName:t.firstName||i||"",lastName:t.lastName||o||"",company:e.company||"",address1:e.addressLine1,address2:e.addressLine2||"",city:e.adminArea2,stateOrProvince:e.adminArea1,stateOrProvinceCode:e.adminArea1,country:e.countryCode||"",countryCode:e.countryCode||"",postalCode:e.postalCode,phone:s+a,customFields:r||[]}}filterAddresses(e){return e.reduce((e,t)=>t?e.some(e=>this.isEqualAddresses(e,t))?e:[...e,t]:e,[])}isEqualAddresses(e,t){return(0,g.isEqual)(this.normalizeAddress(e),this.normalizeAddress(t))}normalizeAddress(e){return(0,g.omit)(e,["id","phone"])}}function ue(){return new ce}function le(e){return"string"!=typeof e}function de(e,t){if(t||e)return function(e){var t,n;const r={},i=(0,g.omitBy)(e.root,le),o=(0,g.omitBy)(e.input,le),a=(0,g.omitBy)(e.toggle,le),s=(0,g.omitBy)(null===(t=e.text)||void 0===t?void 0:t.body,le),c=(0,g.omitBy)(null===(n=e.text)||void 0===n?void 0:n.caption,le),u=e.branding;return Object.keys(i).length&&(r.root=i),Object.keys(o).length&&(r.input=o),Object.keys(a).length&&(r.toggle=a),Object.keys(s).length&&(r.text={},r.text.body=s),Object.keys(c).length&&(r.text=Object.assign({},r.text),r.text.caption=c),u&&(r.branding=u),r}(function(e,t){var n,r,i,o,a,s,c,u,l,d,h,p,f,m,y,g,v,_,b,P,S,w;return{root:{backgroundColorPrimary:(null==e?void 0:e.fastlaneRootSettingsBackgroundColor)||(null===(n=null==t?void 0:t.root)||void 0===n?void 0:n.backgroundColorPrimary),errorColor:(null==e?void 0:e.fastlaneRootSettingsErrorColor)||(null===(r=null==t?void 0:t.root)||void 0===r?void 0:r.errorColor),fontFamily:(null==e?void 0:e.fastlaneRootSettingsFontFamily)||(null===(i=null==t?void 0:t.root)||void 0===i?void 0:i.fontFamily),fontSizeBase:(null==e?void 0:e.fastlaneRootSettingsFontSize)||(null===(o=null==t?void 0:t.root)||void 0===o?void 0:o.fontSizeBase),padding:(null==e?void 0:e.fastlaneRootSettingsPadding)||(null===(a=null==t?void 0:t.root)||void 0===a?void 0:a.padding),primaryColor:(null==e?void 0:e.fastlaneRootSettingsPrimaryColor)||(null===(s=null==t?void 0:t.root)||void 0===s?void 0:s.primaryColor)},input:{borderRadius:(null==e?void 0:e.fastlaneInputSettingsBorderRadius)||(null===(c=null==t?void 0:t.input)||void 0===c?void 0:c.borderRadius),borderColor:(null==e?void 0:e.fastlaneInputSettingsBorderColor)||(null===(u=null==t?void 0:t.input)||void 0===u?void 0:u.borderColor),focusBorderColor:(null==e?void 0:e.fastlaneInputSettingsFocusBorderBase)||(null===(l=null==t?void 0:t.input)||void 0===l?void 0:l.focusBorderColor),backgroundColor:(null==e?void 0:e.fastlaneInputSettingsBackgroundColor)||(null===(d=null==t?void 0:t.input)||void 0===d?void 0:d.backgroundColor),borderWidth:(null==e?void 0:e.fastlaneInputSettingsBorderWidth)||(null===(h=null==t?void 0:t.input)||void 0===h?void 0:h.borderWidth),textColorBase:(null==e?void 0:e.fastlaneInputSettingsTextColorBase)||(null===(p=null==t?void 0:t.input)||void 0===p?void 0:p.textColorBase)},toggle:{colorPrimary:(null==e?void 0:e.fastlaneToggleSettingsColorPrimary)||(null===(f=null==t?void 0:t.toggle)||void 0===f?void 0:f.colorPrimary),colorSecondary:(null==e?void 0:e.fastlaneToggleSettingsColorSecondary)||(null===(m=null==t?void 0:t.toggle)||void 0===m?void 0:m.colorSecondary)},text:{body:{color:(null==e?void 0:e.fastlaneTextBodySettingsColor)||(null===(g=null===(y=null==t?void 0:t.text)||void 0===y?void 0:y.body)||void 0===g?void 0:g.color),fontSize:(null==e?void 0:e.fastlaneTextBodySettingsFontSize)||(null===(_=null===(v=null==t?void 0:t.text)||void 0===v?void 0:v.body)||void 0===_?void 0:_.fontSize)},caption:{color:(null==e?void 0:e.fastlaneTextCaptionSettingsColor)||(null===(P=null===(b=null==t?void 0:t.text)||void 0===b?void 0:b.caption)||void 0===P?void 0:P.color),fontSize:(null==e?void 0:e.fastlaneTextCaptionSettingsFontSize)||(null===(w=null===(S=null==t?void 0:t.text)||void 0===S?void 0:S.caption)||void 0===w?void 0:w.fontSize)}},branding:(null==e?void 0:e.fastlaneBrandingSettings)||(null==t?void 0:t.branding)}}(e,t))}function he(e){return!!e&&("authenticationState"in e||"addresses"in e||"instruments"in e)}function pe(e,t,n=!0){var r;return null!==(r=e[t])&&void 0!==r?r:n}var fe=function(e,t,n,r){return new(n||(n=Promise))(function(i,o){function a(e){try{c(r.next(e))}catch(e){o(e)}}function s(e){try{c(r.throw(e))}catch(e){o(e)}}function c(e){var t;e.done?i(e.value):(t=e.value,t instanceof n?t:new n(function(e){e(t)})).then(a,s)}c((r=r.apply(e,t||[])).next())})};class me{constructor(e,t,n,r){this.paymentIntegrationService=e,this.bigCommercePaymentsRequestSender=t,this.bigCommercePaymentsSdk=n,this.bigCommercePaymentsFastlaneUtils=r}initialize(e){return fe(this,void 0,void 0,function*(){var t,n;const{methodId:r,bigcommerce_payments_fastlane:i}=e;if(!r)throw new L('Unable to initialize payment because "options.methodId" argument is not provided.');if(this.methodId=r,!i)throw new L('Unable to initialize payment because "options.bigcommerce_payments_fastlane" argument is not provided.');if(this.bigcommerce_payments_fastlane=i,!i.onInit||"function"!=typeof i.onInit)throw new L('Unable to initialize payment because "options.bigcommerce_payments_fastlane.onInit" argument is not provided or it is not a function.');if(!i.onChange||"function"!=typeof i.onChange)throw new L('Unable to initialize payment because "options.bigcommerce_payments_fastlane.onChange" argument is not provided or it is not a function.');yield this.paymentIntegrationService.loadPaymentMethod(r);const o=this.paymentIntegrationService.getState(),a=o.getCartOrThrow(),s=o.getPaymentMethodOrThrow(r),{isDeveloperModeApplicable:c,isFastlaneStylingEnabled:u}=s.initializationData||{};this.threeDSVerificationMethod=null===(t=s.initializationData)||void 0===t?void 0:t.threeDSVerificationMethod,this.paypalFastlaneSdk=yield this.bigCommercePaymentsSdk.getPayPalFastlaneSdk(s,a.currency.code,a.id);const l=de(u?null===(n=null==s?void 0:s.initializationData)||void 0===n?void 0:n.fastlaneStyles:{},null==i?void 0:i.styles);yield this.bigCommercePaymentsFastlaneUtils.initializePayPalFastlane(this.paypalFastlaneSdk,!!c,l),this.shouldRunAuthenticationFlow()&&(yield this.runPayPalAuthenticationFlowOrThrow(r)),yield this.initializePayPalPaymentComponent(),i.onInit(e=>this.renderPayPalPaymentComponent(e)),i.onChange(()=>this.handlePayPalStoredInstrumentChange(r))})}execute(e,t){return fe(this,void 0,void 0,function*(){const{payment:n}=e,r=function(e,t){var n={};for(var r in e)Object.prototype.hasOwnProperty.call(e,r)&&t.indexOf(r)<0&&(n[r]=e[r]);if(null!=e&&"function"==typeof Object.getOwnPropertySymbols){var i=0;for(r=Object.getOwnPropertySymbols(e);i<r.length;i++)t.indexOf(r[i])<0&&Object.prototype.propertyIsEnumerable.call(e,r[i])&&(n[r[i]]=e[r[i]])}return n}(e,["payment"]);if(!n)throw new V(["payment"]);const{paymentData:i,methodId:o}=n,a=i&&q(i);try{yield this.paymentIntegrationService.submitOrder(r,t);const e=a?yield this.prepareVaultedInstrumentPaymentPayload(o,i):yield this.preparePaymentPayload(o,i);yield this.paymentIntegrationService.submitPayment(e),this.bigCommercePaymentsFastlaneUtils.removeStorageSessionId()}catch(e){if(function(e){return"object"==typeof e&&null!==e&&"message"in e&&"response"in e&&"name"in e.response}(e)&&"INVALID_REQUEST"===e.response.name){const e={translationKey:"payment.errors.invalid_request_error"};return this.handleError(e),Promise.reject()}if(e instanceof Error&&"FastlaneError"!==e.name)throw e;return Promise.reject()}})}finalize(){return Promise.reject(new W)}deinitialize(){return fe(this,void 0,void 0,function*(){return Promise.resolve()})}shouldRunAuthenticationFlow(){const e=this.paymentIntegrationService.getState(),t=e.getCartOrThrow(),n=e.getCustomerOrThrow(),r=e.getPaymentProviderCustomer(),i=he(r)?r:{},o=this.bigCommercePaymentsFastlaneUtils.getStorageSessionId();return!(!n.isGuest||(null==i?void 0:i.authenticationState)===oe.CANCELED||(null==i?void 0:i.authenticationState)||o!==t.id)}runPayPalAuthenticationFlowOrThrow(e){return fe(this,void 0,void 0,function*(){try{const t=this.paymentIntegrationService.getState(),n=t.getCartOrThrow(),r=t.getCustomer(),i=t.getBillingAddress(),o=(null==r?void 0:r.email)||(null==i?void 0:i.email)||"",{customerContextId:a}=yield this.bigCommercePaymentsFastlaneUtils.lookupCustomerOrThrow(o),s=yield this.bigCommercePaymentsFastlaneUtils.triggerAuthenticationFlowOrThrow(a),{authenticationState:c,addresses:u,instruments:l}=this.bigCommercePaymentsFastlaneUtils.mapPayPalFastlaneProfileToBcCustomerData(e,s);yield this.paymentIntegrationService.updatePaymentProviderCustomer({authenticationState:c,addresses:u,instruments:l}),s.authenticationState===oe.CANCELED?this.bigCommercePaymentsFastlaneUtils.removeStorageSessionId():this.bigCommercePaymentsFastlaneUtils.updateStorageSessionId(n.id)}catch(e){this.handleErrorLog(e)}})}initializePayPalPaymentComponent(){return fe(this,void 0,void 0,function*(){const e=this.paymentIntegrationService.getState().getBillingAddressOrThrow(),t=e.phone,n=`${e.firstName} ${e.lastName}`.trim(),r=this.bigCommercePaymentsFastlaneUtils.getPayPalFastlaneOrThrow(),i={fields:Object.assign({cardholderName:{prefill:n,enabled:!0}},t&&{phoneNumber:{prefill:t}})};this.paypalComponentMethods=yield r.FastlaneCardComponent(i)})}renderPayPalPaymentComponent(e){const t=this.getPayPalComponentMethodsOrThrow();if(!e)throw new L('Unable to render card component because "container" argument is not provided.');t.render(e)}getPayPalComponentMethodsOrThrow(){if(!this.paypalComponentMethods)throw new o;return this.paypalComponentMethods}prepareVaultedInstrumentPaymentPayload(e,t){return fe(this,void 0,void 0,function*(){const{instrumentId:n}=t,r=this.paymentIntegrationService.getState().getPaymentMethodOrThrow(e),i=this.isBigcommercePaymentsFastlaneThreeDSAvailable()&&r.config.is3dsEnabled?yield this.get3DSNonce(n):n;return yield this.createOrder(i),{methodId:e,paymentData:{formattedPayload:{paypal_fastlane_token:{order_id:this.orderId,token:i}}}}})}preparePaymentPayload(e,t){return fe(this,void 0,void 0,function*(){const n=this.paymentIntegrationService.getState(),r=n.getBillingAddressOrThrow(),i=n.getPaymentMethodOrThrow(e),o=`${r.firstName} ${r.lastName}`.trim(),{getPaymentToken:a}=this.getPayPalComponentMethodsOrThrow(),{id:s}=yield a({name:{fullName:o},billingAddress:this.bigCommercePaymentsFastlaneUtils.mapBcToPayPalAddress(r)}),c=this.isBigcommercePaymentsFastlaneThreeDSAvailable()&&i.config.is3dsEnabled,{shouldSaveInstrument:u=!1,shouldSetAsDefaultInstrument:l=!1}=$(t)?t:{},d=c?yield this.get3DSNonce(s):s;return yield this.createOrder(d),{methodId:e,paymentData:Object.assign(Object.assign({},t),{shouldSaveInstrument:u,shouldSetAsDefaultInstrument:l,formattedPayload:{paypal_fastlane_token:{order_id:this.orderId,token:d}}})}})}createOrder(e){return fe(this,void 0,void 0,function*(){const t=this.paymentIntegrationService.getState().getCartOrThrow().id;if(this.methodId){const{orderId:n}=yield this.bigCommercePaymentsRequestSender.createOrder(this.methodId,{cartId:t,fastlaneToken:e});this.orderId=n}})}get3DSNonce(e){return fe(this,void 0,void 0,function*(){var t;const n=this.paymentIntegrationService.getState(),r=n.getCartOrThrow(),i=n.getOrderOrThrow(),a=n.getStoreConfigOrThrow().links.checkoutLink,s=null===(t=this.paypalFastlaneSdk)||void 0===t?void 0:t.ThreeDomainSecureClient;if(!s)throw new o;const c={amount:i.orderAmount.toFixed(2),currency:r.currency.code,nonce:e,threeDSRequested:this.threeDSVerificationMethod===ee.Always,transactionContext:{experience_context:{locale:"en-US",return_url:a,cancel_url:a}}},u=yield s.isEligible(c);if(this.threeDSVerificationMethod===ee.Always&&!u)throw new G;if(u){const{liabilityShift:e,authenticationState:t,nonce:n}=yield s.show();if(e===S.No||e===S.Unknown||t===te.Errored||t===te.Cancelled)throw new G;if(t===te.Succeeded&&[S.Yes,S.Possible].includes(e))return n}return e})}handlePayPalStoredInstrumentChange(e){return fe(this,void 0,void 0,function*(){const t=this.bigCommercePaymentsFastlaneUtils.getPayPalFastlaneOrThrow(),{selectionChanged:n,selectedCard:r}=yield t.profile.showCardSelector();if(n){const t=this.paymentIntegrationService.getState().getPaymentProviderCustomer(),n=he(t)?t:{},i=this.bigCommercePaymentsFastlaneUtils.mapPayPalToBcInstrument(e,r)[0];return yield this.paymentIntegrationService.updatePaymentProviderCustomer(Object.assign(Object.assign({},n),{instruments:[i]})),i}})}isBigcommercePaymentsFastlaneThreeDSAvailable(){return pe(this.paymentIntegrationService.getState().getStoreConfigOrThrow().checkoutSettings.features,"PROJECT-7080.bcp_fastlane_three_ds")}handleError(e){var t;(null===(t=this.bigcommerce_payments_fastlane)||void 0===t?void 0:t.onError)&&"function"==typeof this.bigcommerce_payments_fastlane.onError&&this.bigcommerce_payments_fastlane.onError(e)}handleErrorLog(e){var t;(null===(t=this.bigcommerce_payments_fastlane)||void 0===t?void 0:t.onErrorLog)&&"function"==typeof this.bigcommerce_payments_fastlane.onErrorLog&&this.bigcommerce_payments_fastlane.onErrorLog(e)}}const ye=l(e=>{const{getHost:t}=e.getState();return new me(e,new F((0,y.createRequestSender)({host:t()})),u(),ue())},[{id:"bigcommerce_payments_fastlane"}]);class ge extends i{constructor(e){super(e||"Not implemented."),this.name="NotImplementedError",this.type="not_implemented"}}var ve=function(e,t,n,r){return new(n||(n=Promise))(function(i,o){function a(e){try{c(r.next(e))}catch(e){o(e)}}function s(e){try{c(r.throw(e))}catch(e){o(e)}}function c(e){var t;e.done?i(e.value):(t=e.value,t instanceof n?t:new n(function(e){e(t)})).then(a,s)}c((r=r.apply(e,t||[])).next())})};class _e{constructor(e,t,n,r){this.paymentIntegrationService=e,this.bigCommercePaymentsIntegrationService=t,this.loadingIndicator=n,this.paypalSdkHelper=r}initialize(e){return ve(this,void 0,void 0,function*(){const{methodId:t,bigcommerce_payments_paylater:n}=e||{};if(!t)throw new L('Unable to initialize payment because "options.methodId" argument is not provided.');if(!n)throw new L('Unable to initialize payment because "options.bigcommerce_payments_paylater" argument is not provided.');yield this.paymentIntegrationService.loadPaymentMethod(t);const r=this.paymentIntegrationService.getState(),i=r.getPaymentMethodOrThrow(t),{paypalBNPLConfiguration:o=[],orderId:a}=i.initializationData||{},{bannerContainerId:s,container:c}=n;if(void 0!==s){if(!document.getElementById(s))return void console.error("Unable to create banner without valid banner container ID.");const e=o&&o.find(({id:e})=>"checkout"===e);if(!(null==e?void 0:e.status))return;const t=yield this.paypalSdkHelper.getPayPalMessages(i,r.getCartOrThrow().currency.code);return this.renderMessages(t,s,e)}a?this.orderId=a:(yield this.bigCommercePaymentsIntegrationService.loadPayPalSdk(t),this.loadingIndicatorContainer=null==c?void 0:c.split("#")[1],this.renderButton(t,n))})}execute(e,t){return ve(this,void 0,void 0,function*(){const{payment:n}=e,r=function(e,t){var n={};for(var r in e)Object.prototype.hasOwnProperty.call(e,r)&&t.indexOf(r)<0&&(n[r]=e[r]);if(null!=e&&"function"==typeof Object.getOwnPropertySymbols){var i=0;for(r=Object.getOwnPropertySymbols(e);i<r.length;i++)t.indexOf(r[i])<0&&Object.prototype.propertyIsEnumerable.call(e,r[i])&&(n[r[i]]=e[r[i]])}return n}(e,["payment"]);if(!n)throw new V(["payment"]);if(!this.orderId)throw new G;yield this.paymentIntegrationService.submitOrder(r,t),yield this.bigCommercePaymentsIntegrationService.submitPayment(n.methodId,this.orderId)})}finalize(){return Promise.reject(new W)}deinitialize(){var e;return this.orderId=void 0,null===(e=this.bigCommercePaymentsButtons)||void 0===e||e.close(),Promise.resolve()}renderButton(e,t){if(!(null==t?void 0:t.container))throw new L('Unable to initialize payment because "container" argument is not provided.');const n=this.bigCommercePaymentsIntegrationService.getPayPalSdkOrThrow(),r=this.paymentIntegrationService.getState().getPaymentMethodOrThrow(e),{paymentButtonStyles:i}=r.initializationData||{},{checkoutPaymentButtonStyles:o}=i||{},{container:a,onError:s,onRenderButton:c,onValidate:u,submitForm:l}=t,d=[n.FUNDING.PAYLATER,n.FUNDING.CREDIT];let h=!1;d.forEach(e=>{if(h)return;const t={fundingSource:e,style:this.bigCommercePaymentsIntegrationService.getValidButtonStyle(o),createOrder:()=>this.bigCommercePaymentsIntegrationService.createOrder("bigcommerce_payments_paylater"),onClick:(e,t)=>this.handleClick(t,u),onApprove:e=>this.handleApprove(e,l),onCancel:()=>this.toggleLoadingIndicator(!1),onError:e=>this.handleError(e,s)};if(this.bigCommercePaymentsButtons=n.Buttons(t),this.bigCommercePaymentsButtons.isEligible()||e!==n.FUNDING.PAYLATER){if(!this.bigCommercePaymentsButtons.isEligible()&&e===n.FUNDING.CREDIT)throw new ge(`BigCommercePayments ${e} is not available for your region. Please use BigCommercePayments Checkout instead.`);c&&"function"==typeof c&&c(),this.bigCommercePaymentsButtons.render(a),h=!0}})}handleClick(e,t){return ve(this,void 0,void 0,function*(){const{resolve:n,reject:r}=e;t&&"function"==typeof t&&(yield t(()=>(this.toggleLoadingIndicator(!0),n()),r))})}handleApprove({orderID:e},t){this.orderId=e,t&&"function"==typeof t&&t()}handleError(e,t){this.toggleLoadingIndicator(!1),t&&"function"==typeof t&&t(e)}toggleLoadingIndicator(e){e&&this.loadingIndicatorContainer?this.loadingIndicator.show(this.loadingIndicatorContainer):this.loadingIndicator.hide()}renderMessages(e,t,n){const r={amount:this.paymentIntegrationService.getState().getCheckoutOrThrow().outstandingBalance,placement:"payment",style:R(n)};e.Messages(r).render(`#${t}`)}}const be=l(e=>new _e(e,U(e),new p({containerStyles:f}),u()),[{id:"bigcommerce_payments_paylater"}]);class Pe extends b{constructor(e){super(e,{message:"The request has timed out or aborted."}),this.name="TimeoutError",this.type="timeout"}}var Se=function(e,t,n,r){return new(n||(n=Promise))(function(i,o){function a(e){try{c(r.next(e))}catch(e){o(e)}}function s(e){try{c(r.throw(e))}catch(e){o(e)}}function c(e){var t;e.done?i(e.value):(t=e.value,t instanceof n?t:new n(function(e){e(t)})).then(a,s)}c((r=r.apply(e,t||[])).next())})};class we{constructor(e,t,n,r=3e3,i=3e5){this.paymentIntegrationService=e,this.bigCommercePaymentsIntegrationService=t,this.loadingIndicator=n,this.pollingInterval=r,this.maxPollingIntervalTime=i,this.pollingTimer=0,this.stopPolling=g.noop}initialize(e){return Se(this,void 0,void 0,function*(){const{gatewayId:t,methodId:n,bigcommerce_payments_ratepay:r}=e;if(!n)throw new L('Unable to initialize payment because "options.methodId" argument is not provided.');if(!t)throw new L('Unable to initialize payment because "options.gatewayId" argument is not provided.');if(!r)throw new L('Unable to initialize payment because "options.bigcommerce_payments_ratepay" argument is not provided.');const{legalTextContainer:i,container:o,loadingContainerId:a}=r;if(!o)throw new L('Unable to initialize payment because "options.container" argument is not provided.');if(!i)throw new L('Unable to initialize payment because "options.legalTextContainer" argument is not provided.');if(!a)throw new L('Unable to initialize payment because "options.loadingContainerId" argument is not provided.');this.loadingIndicatorContainer=a;const s=this.paymentIntegrationService.getState().getPaymentMethodOrThrow(n,t),{merchantId:c}=s.initializationData||{};if(!c)throw new L("Unable to initialize payment because merchantId argument is not provided.");this.bigcommerce_payments_ratepay=r,yield this.bigCommercePaymentsIntegrationService.loadPayPalSdk(n),this.createFraudNetScript(c,n,t),this.loadFraudnetConfig(),this.renderLegalText(i,o)})}execute(e,t){return Se(this,void 0,void 0,function*(){const{payment:n}=e,r=function(e,t){var n={};for(var r in e)Object.prototype.hasOwnProperty.call(e,r)&&t.indexOf(r)<0&&(n[r]=e[r]);if(null!=e&&"function"==typeof Object.getOwnPropertySymbols){var i=0;for(r=Object.getOwnPropertySymbols(e);i<r.length;i++)t.indexOf(r[i])<0&&Object.prototype.propertyIsEnumerable.call(e,r[i])&&(n[r[i]]=e[r[i]])}return n}(e,["payment"]),{getFieldsValues:i}=this.bigcommerce_payments_ratepay||{};if(!n)throw new V(["payment"]);if(!i||"function"!=typeof i)throw new L('Unable to initialize payment because "options.getFieldsValues" argument is not provided.');this.toggleLoadingIndicator(!0);try{const e=yield this.bigCommercePaymentsIntegrationService.createOrder("bigcommerce_payments_apmscheckout",{metadataId:this.guid}),{ratepayBirthDate:o,ratepayPhoneNumber:a,ratepayPhoneCountryCode:s}=i(),c={formattedPayload:{vault_payment_instrument:null,set_as_default_stored_instrument:null,device_info:null,method_id:n.methodId,rate_pay:{birth_date:this.normalizeDate(o),phone:{national_number:a,country_code:s.split("+")[1]}},paypal_account:{order_id:e}}};return yield this.paymentIntegrationService.submitOrder(r,t),yield this.paymentIntegrationService.submitPayment({methodId:n.methodId,paymentData:c}),yield new Promise((e,t)=>{this.initializePollingMechanism(n.methodId,e,t,n.gatewayId)})}catch(e){return this.handleError(e),new Promise((e,t)=>t())}})}finalize(){return Promise.reject(new W)}deinitialize(){const{legalTextContainer:e}=this.bigcommerce_payments_ratepay||{},t=document.querySelectorAll('[data-id="fraudnetScript"]')[0],n=document.querySelectorAll('[data-id="fraudnetConfig"]')[0];if(this.deinitializePollingMechanism(),t.remove(),n.remove(),e){const t=document.getElementById(e);null==t||t.remove()}return Promise.resolve()}normalizeDate(e){const t=this.formatDate(e.getDate()),n=this.formatDate(e.getMonth()+1);return`${e.getFullYear()}-${n}-${t}`}formatDate(e){return`${e<10?0:""}${e}`}renderLegalText(e,t){const n=e,r=t.split("#")[1],i=document.getElementById(r),o=null==i?void 0:i.parentNode,a=document.createElement("div");a.style.marginBottom="20px",a.setAttribute("id",n),null==o||o.prepend(a);const s=this.bigCommercePaymentsIntegrationService.getPayPalSdkOrThrow(),c=s.Legal({fundingSource:s.Legal.FUNDING.PAY_UPON_INVOICE});if(!document.getElementById(n))throw new L('Unable to initialize payment because "legalTextContainerElement" argument is not found.');c.render(`#${n}`)}handleError(e){const{onError:t}=this.bigcommerce_payments_ratepay||{};this.resetPollingMechanism(),this.toggleLoadingIndicator(!1),t&&"function"==typeof t&&t(e)}createFraudNetScript(e,t,n){const r=this.paymentIntegrationService.getState().getPaymentMethodOrThrow(t,n),{testMode:i}=r.config,o=document.createElement("script");o.setAttribute("type","application/json"),o.setAttribute("fncls","fnparams-dede7cc5-15fd-4c75-a9f4-36c430ee3a99"),o.setAttribute("data-id","fraudnetScript"),this.guid=this.generateGUID();const a={f:this.guid,s:`${e}_checkout-page`,sandbox:i};o.innerHTML=JSON.stringify(a),document.body.appendChild(o)}generateGUID(){let e="";for(let t=0;t<32;t+=1)e+="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789"[Math.floor(62*Math.random())];return e}loadFraudnetConfig(){const e=document.createElement("script");e.setAttribute("data-id","fraudnetConfig"),e.src="https://c.paypal.com/da/r/fb.js",document.body.appendChild(e)}reinitializeStrategy(e){return Se(this,void 0,void 0,function*(){yield this.deinitialize(),yield this.initialize(e)})}initializePollingMechanism(e,t,n,r){return Se(this,void 0,void 0,function*(){yield new Promise((e,t)=>{const n=setTimeout(e,this.pollingInterval);this.stopPolling=()=>(clearTimeout(n),this.toggleLoadingIndicator(!1),t())});try{this.pollingTimer+=this.pollingInterval;const i=yield this.bigCommercePaymentsIntegrationService.getOrderStatus("bigcommerce_payments_apms",{params:{useMetadata:!0}}),o=i===E.PollingStop,a=i===E.PollingError;if(o)return this.deinitializePollingMechanism(),t();if(a)return n();if(!o&&this.pollingTimer<this.maxPollingIntervalTime)return yield this.initializePollingMechanism(e,t,n,r);yield this.reinitializeStrategy({methodId:e,gatewayId:r,bigcommerce_payments_ratepay:this.bigcommerce_payments_ratepay}),this.handleError(new Pe)}catch(e){this.handleError(e),n()}})}deinitializePollingMechanism(){this.stopPolling(),this.pollingTimer=0}resetPollingMechanism(){this.deinitializePollingMechanism()}toggleLoadingIndicator(e){e&&this.loadingIndicatorContainer?this.loadingIndicator.show(this.loadingIndicatorContainer):this.loadingIndicator.hide()}}const Ie=l(e=>new we(e,U(e),new p({containerStyles:Object.assign(Object.assign({},f),{position:"fixed"})})),[{gateway:"bigcommerce_payments_apms",id:"ratepay"}]);var Ce;!function(e){e.CardCode="cardCode",e.CardCodeVerification="cardCodeVerification",e.CardExpiry="cardExpiry",e.CardName="cardName",e.CardNumber="cardNumber",e.CardNumberVerification="cardNumberVerification",e.CardExpiryVerification="cardExpiryVerification"}(Ce||(Ce={}));const Oe=Ce;function Ae(e){return Oe.CardNumber in e&&Oe.CardName in e&&Oe.CardExpiry in e}function Ee(e){return Oe.CardNumberVerification in e&&Oe.CardCodeVerification in e&&Oe.CardExpiryVerification in e}class ke extends i{constructor(e){super(e||"Unable to proceed because the client library of a payment method has thrown an unexpected error."),this.name="PaymentMethodFailedError",this.type="payment_method_client_invalid"}}var ze;!function(e){e[e.CheckoutButtonNotInitialized=0]="CheckoutButtonNotInitialized",e[e.CustomerNotInitialized=1]="CustomerNotInitialized",e[e.PaymentNotInitialized=2]="PaymentNotInitialized",e[e.ShippingNotInitialized=3]="ShippingNotInitialized",e[e.SpamProtectionNotInitialized=4]="SpamProtectionNotInitialized"}(ze||(ze={}));class Te extends i{constructor(e){super(function(e){switch(e){case ze.CustomerNotInitialized:return"Unable to proceed because the customer step of checkout has not been initialized.";case ze.PaymentNotInitialized:return"Unable to proceed because the payment step of checkout has not been initialized.";case ze.ShippingNotInitialized:return"Unable to proceed because the shipping step of checkout has not been initialized.";case ze.SpamProtectionNotInitialized:return"Unable to proceed because the checkout spam protection has not been initialized.";default:return"Unable to proceed because the required component has not been initialized."}}(e)),this.subtype=e,this.name="NotInitializedError",this.type="not_initialized"}}class je extends i{constructor(e,t){super(t||"Unable to proceed because the payment form contains invalid data."),this.details=e,this.name="PaymentInvalidFormError",this.type="payment_invalid_form"}}var xe=function(e,t,n,r){return new(n||(n=Promise))(function(i,o){function a(e){try{c(r.next(e))}catch(e){o(e)}}function s(e){try{c(r.throw(e))}catch(e){o(e)}}function c(e){var t;e.done?i(e.value):(t=e.value,t instanceof n?t:new n(function(e){e(t)})).then(a,s)}c((r=r.apply(e,t||[])).next())})};class Be{constructor(e,t,n,r){this.paymentIntegrationService=e,this.bigCommercePaymentsIntegrationService=t,this.bigCommercePaymentsSdk=n,this.bigCommercePaymentsFastlaneUtils=r}initialize(e){return xe(this,void 0,void 0,function*(){const{methodId:t,bigcommerce_payments_creditcards:n}=e,r=n,{form:i,onCreditCardFieldsRenderingError:o,onLoadComplete:a}=r||{};if(!t)throw new L('Unable to initialize payment because "options.methodId" argument is not provided.');if(!i)throw new L('Unable to proceed because "options.bigcommerce_payments_creditcards.form" argument is not provided.');this.hostedFormOptions=i,this.isCreditCardForm=Ae(i.fields),this.isCreditCardVaultedForm=Ee(i.fields)&&!this.hasUndefinedValues(),yield this.paymentIntegrationService.loadPaymentMethod(t),yield this.bigCommercePaymentsIntegrationService.loadPayPalSdk(t,void 0,!0,!0),(this.isCreditCardForm||this.isCreditCardVaultedForm)&&(yield this.initializeFields(i,o)),null==a||a(),this.shouldInitializePayPalFastlane(t)&&(yield this.initializePayPalFastlaneOrThrow(t))})}execute(e,t){return xe(this,void 0,void 0,function*(){const{payment:n}=e,r=function(e,t){var n={};for(var r in e)Object.prototype.hasOwnProperty.call(e,r)&&t.indexOf(r)<0&&(n[r]=e[r]);if(null!=e&&"function"==typeof Object.getOwnPropertySymbols){var i=0;for(r=Object.getOwnPropertySymbols(e);i<r.length;i++)t.indexOf(r[i])<0&&Object.prototype.propertyIsEnumerable.call(e,r[i])&&(n[r[i]]=e[r[i]])}return n}(e,["payment"]),{methodId:i,paymentData:o}=n||{};if(!n||!i)throw new V(["payment"]);if(this.executionPaymentData=o,this.isCreditCardForm||this.isCreditCardVaultedForm)yield this.validateHostedFormOrThrow(),yield this.submitHostedForm();else{const{orderId:e}=yield this.bigCommercePaymentsIntegrationService.createOrderCardFields("bigcommerce_payments_creditcardscheckout",this.getInstrumentParams());this.returnedOrderId=e}const a=this.preparePaymentPayload(i,o,this.returnedOrderId,this.returnedVaultedToken);yield this.paymentIntegrationService.submitOrder(r,t),yield this.paymentIntegrationService.submitPayment(a)})}finalize(){return Promise.reject(new W)}deinitialize(){return xe(this,void 0,void 0,function*(){var e,t,n,r;return yield null===(e=this.cvvField)||void 0===e?void 0:e.close(),yield null===(t=this.expiryField)||void 0===t?void 0:t.close(),yield null===(n=this.numberField)||void 0===n?void 0:n.close(),yield null===(r=this.nameField)||void 0===r?void 0:r.close(),Promise.resolve()})}preparePaymentPayload(e,t,n,r){const{shouldSaveInstrument:i=!1,shouldSetAsDefaultInstrument:o=!1}=$(t)?t:{},a=t&&q(t)?t.instrumentId:void 0,s=(0,g.omitBy)({verification_nonce:r,token:a},g.isNil);return{methodId:e,paymentData:{shouldSaveInstrument:i,shouldSetAsDefaultInstrument:o,instrumentId:a,formattedPayload:Object.assign(Object.assign({},r||a?{bigpay_token:s}:{}),n?{card_with_order:{order_id:n}}:{})}}}initializeFields(e,t){return xe(this,void 0,void 0,function*(){const{fields:n,styles:r}=e,i=this.bigCommercePaymentsIntegrationService.getPayPalSdkOrThrow(),o=this.getExecuteCallback(n),a=Object.assign({style:this.getInputStyles(r),onApprove:({orderID:e,vaultSetupToken:t,liabilityShift:n})=>{if(n===S.No||n===S.Unknown)throw new Error;return this.handleApprove({orderID:e,vaultSetupToken:t})},onError:()=>{throw new ke},inputEvents:{onChange:t=>this.onChangeHandler(e,t),onFocus:t=>this.onFocusHandler(e,t),onBlur:t=>this.onBlurHandler(e,t),onInputSubmitRequest:t=>this.onInputSubmitRequest(e,t)}},o);if(this.cardFields=yield i.CardFields(a),!this.cardFields.isEligible())throw new Te(ze.PaymentNotInitialized);try{this.stylizeInputContainers(n),Ae(n)&&(yield this.renderFields(n)),Ee(n)&&(yield this.renderVaultedFields(n))}catch(e){"function"==typeof t&&t(e)}})}getExecuteCallback(e){return Ee(e)?this.createVaultSetupTokenCallback():this.createOrderCallback()}createVaultSetupTokenCallback(){return{createVaultSetupToken:()=>xe(this,void 0,void 0,function*(){const{setupToken:e}=(yield this.bigCommercePaymentsIntegrationService.createOrderCardFields("bigcommerce_payments_creditcardscheckout",Object.assign(Object.assign({},this.getInstrumentParams()),{setupToken:!0})))||{};return e})}}createOrderCallback(){return{createOrder:()=>xe(this,void 0,void 0,function*(){const{orderId:e}=(yield this.bigCommercePaymentsIntegrationService.createOrderCardFields("bigcommerce_payments_creditcardscheckout",this.getInstrumentParams()))||{};return e})}}handleApprove({orderID:e,vaultSetupToken:t}){e&&(this.returnedOrderId=e),t&&(this.returnedVaultedToken=t)}renderFields(e){return xe(this,void 0,void 0,function*(){var t,n,r,i;const o=this.getCardFieldsOrThrow();(null===(t=e.cardCode)||void 0===t?void 0:t.containerId)&&(this.cvvField=o.CVVField({placeholder:""}),yield this.cvvField.render(`#${e.cardCode.containerId}`)),(null===(n=e.cardExpiry)||void 0===n?void 0:n.containerId)&&(this.expiryField=o.ExpiryField(),yield this.expiryField.render(`#${e.cardExpiry.containerId}`)),(null===(r=e.cardName)||void 0===r?void 0:r.containerId)&&(this.nameField=o.NameField({placeholder:""}),yield this.nameField.render(`#${e.cardName.containerId}`)),(null===(i=e.cardNumber)||void 0===i?void 0:i.containerId)&&(this.numberField=o.NumberField({placeholder:""}),yield this.numberField.render(`#${e.cardNumber.containerId}`))})}renderVaultedFields(e){return xe(this,void 0,void 0,function*(){var t,n,r;const i=this.getCardFieldsOrThrow();(null===(t=e.cardCodeVerification)||void 0===t?void 0:t.containerId)&&(this.cvvField=i.CVVField({placeholder:""}),yield this.cvvField.render(`#${e.cardCodeVerification.containerId}`)),(null===(n=e.cardExpiryVerification)||void 0===n?void 0:n.containerId)&&(this.expiryField=i.ExpiryField(),yield this.expiryField.render(`#${e.cardExpiryVerification.containerId}`)),(null===(r=e.cardNumberVerification)||void 0===r?void 0:r.containerId)&&(this.numberField=i.NumberField({placeholder:""}),yield this.numberField.render(`#${e.cardNumberVerification.containerId}`))})}getInstrumentParams(){if(!this.executionPaymentData)return{};if($(this.executionPaymentData)){const{shouldSaveInstrument:e,shouldSetAsDefaultInstrument:t}=this.executionPaymentData;return{shouldSaveInstrument:e,shouldSetAsDefaultInstrument:t}}if(q(this.executionPaymentData)){const{instrumentId:e}=this.executionPaymentData;return{instrumentId:e}}return{}}getFieldTypeByEmittedField({emittedBy:e}){return{fieldType:this.mapFieldType(e)}}submitHostedForm(){return xe(this,void 0,void 0,function*(){const e=this.getCardFieldsOrThrow(),t=this.paymentIntegrationService.getState().getBillingAddressOrThrow(),n={billingAddress:{company:t.company,addressLine1:t.address1,addressLine2:t.address2,adminArea1:t.stateOrProvinceCode,adminArea2:t.city,postalCode:t.postalCode,countryCode:t.countryCode}};try{this.isCreditCardVaultedForm?yield e.submit():yield e.submit(n)}catch(e){throw new ke("Failed authentication. Please try to authorize again.")}})}validateHostedFormOrThrow(){return xe(this,void 0,void 0,function*(){var e,t;const n=this.getCardFieldsOrThrow(),r=yield n.getState().then(e=>e),i=this.getValidityData(r);if(!i.isValid)throw null===(t=null===(e=this.hostedFormOptions)||void 0===e?void 0:e.onValidate)||void 0===t||t.call(e,i),new je(this.mapValidationErrors(i.errors))})}getValidityData({fields:e}){const t=Object.assign({},e);delete t.cardNameField;const n=Object.keys(t);return{isValid:n.every(e=>{var n;return null===(n=t[e])||void 0===n?void 0:n.isValid}),errors:n.reduce((e,n)=>{var r;const i=this.mapFieldType(n);return Object.assign(Object.assign({},e),{[i]:(null===(r=t[n])||void 0===r?void 0:r.isValid)?void 0:[this.getInvalidErrorByFieldType(i)]})},{})}}getInvalidErrorByFieldType(e){switch(e){case Oe.CardCode:case Oe.CardCodeVerification:return{fieldType:e,message:"Invalid card code",type:"invalid_card_code"};case Oe.CardNumber:case Oe.CardNumberVerification:return{fieldType:e,message:"Invalid card number",type:"invalid_card_number"};case Oe.CardExpiry:case Oe.CardExpiryVerification:return{fieldType:e,message:"Invalid card expiry",type:"invalid_card_expiry"};default:return{fieldType:e,message:"Invalid field",type:"invalid"}}}mapValidationErrors(e={}){const t={};return Object.keys(e).forEach(n=>{var r,i;t[n]=[{message:(null===(i=null===(r=e[n])||void 0===r?void 0:r[0])||void 0===i?void 0:i.message)||"",type:n}]}),t}mapFieldType(e){switch(e){case"name":return Oe.CardName;case"cardNumberField":case"number":return this.isCreditCardForm?Oe.CardNumber:Oe.CardNumberVerification;case"cardExpiryField":case"expiry":return this.isCreditCardForm?Oe.CardExpiry:Oe.CardExpiryVerification;case"cardCvvField":case"cvv":return this.isCreditCardForm?Oe.CardCode:Oe.CardCodeVerification;default:throw new Error("Unexpected field type")}}getCardFieldsOrThrow(){if(!this.cardFields)throw new Te(ze.PaymentNotInitialized);return this.cardFields}getInputStyles(e){var t,n,r;const i={"font-size":(null===(t=null==e?void 0:e.default)||void 0===t?void 0:t.fontSize)||"1rem","font-family":(null===(n=null==e?void 0:e.default)||void 0===n?void 0:n.fontFamily)||"Montserrat, Arial, Helvetica, sans-serif","font-weight":(null===(r=null==e?void 0:e.default)||void 0===r?void 0:r.fontWeight)||"400",outline:"none",padding:"9px 13px"},o=Object.assign(Object.assign({},i),{color:"#333333"});return{input:o,".invalid":Object.assign(Object.assign({},i),{color:"red"}),".valid":o,":focus":o}}stylizeInputContainers(e){Object.values(e||{}).forEach(e=>{const t=document.getElementById(`${(null==e?void 0:e.containerId)||""}`);t&&(t.style.padding="0px",t.style.boxShadow="none",t.style.border="none",t.style.background="transparent",t.style.marginBottom="10px",t.style.marginLeft="-5px")})}hasUndefinedValues(){return!this.hostedFormOptions||Object.values(this.hostedFormOptions.fields).some(e=>void 0===e)}onChangeHandler(e,t){var n;null===(n=null==e?void 0:e.onValidate)||void 0===n||n.call(e,this.getValidityData(t))}onFocusHandler(e,t){var n;null===(n=null==e?void 0:e.onFocus)||void 0===n||n.call(e,this.getFieldTypeByEmittedField(t))}onBlurHandler(e,t){var n;null===(n=null==e?void 0:e.onBlur)||void 0===n||n.call(e,this.getFieldTypeByEmittedField(t))}onInputSubmitRequest(e,t){var n;null===(n=null==e?void 0:e.onEnter)||void 0===n||n.call(e,this.getFieldTypeByEmittedField(t))}shouldInitializePayPalFastlane(e){var t,n;const r=this.paymentIntegrationService.getState(),i=r.getPaymentMethodOrThrow(e),o=r.getPaymentProviderCustomer(),a=(s=o)&&("authenticationState"in s||"addresses"in s||"instruments"in s)?o:{};var s;return(null===(t=null==i?void 0:i.initializationData)||void 0===t?void 0:t.isAcceleratedCheckoutEnabled)&&(null===(n=null==i?void 0:i.initializationData)||void 0===n?void 0:n.isBigCommercePaymentsAnalyticsV2Enabled)&&!(null==a?void 0:a.authenticationState)}initializePayPalFastlaneOrThrow(e){return xe(this,void 0,void 0,function*(){try{const t=this.paymentIntegrationService.getState(),n=t.getCartOrThrow(),r=t.getPaymentMethodOrThrow(e),{initializationData:i}=r;if(!(null==i?void 0:i.connectClientToken))return;const o=yield this.bigCommercePaymentsSdk.getPayPalFastlaneSdk(r,n.currency.code,n.id);yield this.bigCommercePaymentsFastlaneUtils.initializePayPalFastlane(o,!!(null==i?void 0:i.isDeveloperModeApplicable))}catch(e){}})}}const Me=l(e=>new Be(e,U(e),u(),ue()),[{id:"bigcommerce_payments_creditcards"}]);var Fe=function(e,t,n,r){return new(n||(n=Promise))(function(i,o){function a(e){try{c(r.next(e))}catch(e){o(e)}}function s(e){try{c(r.throw(e))}catch(e){o(e)}}function c(e){var t;e.done?i(e.value):(t=e.value,t instanceof n?t:new n(function(e){e(t)})).then(a,s)}c((r=r.apply(e,t||[])).next())})};class Ne{constructor(e){this.paymentIntegrationService=e}initialize(){return Fe(this,void 0,void 0,function*(){return Promise.resolve()})}execute(e,t){return Fe(this,void 0,void 0,function*(){const{payment:n}=e,r=function(e,t){var n={};for(var r in e)Object.prototype.hasOwnProperty.call(e,r)&&t.indexOf(r)<0&&(n[r]=e[r]);if(null!=e&&"function"==typeof Object.getOwnPropertySymbols){var i=0;for(r=Object.getOwnPropertySymbols(e);i<r.length;i++)t.indexOf(r[i])<0&&Object.prototype.propertyIsEnumerable.call(e,r[i])&&(n[r[i]]=e[r[i]])}return n}(e,["payment"]),{methodId:i}=n||{};if(!n||!i)throw new V(["payment"]);const o={methodId:i,paymentData:{formattedPayload:{}}};yield this.paymentIntegrationService.submitOrder(r,t),yield this.paymentIntegrationService.submitPayment(o)})}finalize(){return Promise.reject(new W)}deinitialize(){return Promise.resolve()}}const De=l(e=>new Ne(e),[{id:"bigcommerce_payments_invoices"}]);var Ue=function(e,t,n,r){return new(n||(n=Promise))(function(i,o){function a(e){try{c(r.next(e))}catch(e){o(e)}}function s(e){try{c(r.throw(e))}catch(e){o(e)}}function c(e){var t;e.done?i(e.value):(t=e.value,t instanceof n?t:new n(function(e){e(t)})).then(a,s)}c((r=r.apply(e,t||[])).next())})};class Re{constructor(e,t,n,r,i=3e3,o=3e5){this.paymentIntegrationService=e,this.bigCommercePaymentsIntegrationService=t,this.bigCommercePaymentsSdkHelper=n,this.loadingIndicator=r,this.pollingInterval=i,this.maxPollingIntervalTime=o,this.pollingTimer=0,this.stopPolling=g.noop,this.isPollingEnabled=!1}initialize(e){return Ue(this,void 0,void 0,function*(){const{gatewayId:t,methodId:n,bigcommerce_payments_apms:r}=e;if(this.bigCommercePaymentsAlternativeMethods=r,!n)throw new L('Unable to initialize payment because "options.methodId" argument is not provided.');if(!t)throw new L('Unable to initialize payment because "options.gatewayId" argument is not provided.');if(!r)throw new L('Unable to initialize payment because "options.bigcommerce_payments_apms" argument is not provided.');const i=this.paymentIntegrationService.getState(),o=i.getPaymentMethodOrThrow(n,t),{orderId:a,shouldRenderFields:s}=o.initializationData||{},c=i.getStoreConfigOrThrow().checkoutSettings.features;this.isPollingEnabled=pe(c,"PAYPAL-5624.bcp_ideal_polling"),a?this.orderId=a:(this.paypalApms=yield this.bigCommercePaymentsSdkHelper.getPayPalApmsSdk(o,i.getCartOrThrow().currency.code),this.loadingIndicatorContainer=r.container.split("#")[1],this.renderButton(n,t,r),s&&this.renderFields(n,r))})}execute(e,t){return Ue(this,void 0,void 0,function*(){const{payment:n}=e,r=function(e,t){var n={};for(var r in e)Object.prototype.hasOwnProperty.call(e,r)&&t.indexOf(r)<0&&(n[r]=e[r]);if(null!=e&&"function"==typeof Object.getOwnPropertySymbols){var i=0;for(r=Object.getOwnPropertySymbols(e);i<r.length;i++)t.indexOf(r[i])<0&&Object.prototype.propertyIsEnumerable.call(e,r[i])&&(n[r[i]]=e[r[i]])}return n}(e,["payment"]);if(!n)throw new V(["payment"]);const{methodId:i,gatewayId:o}=n;if(!this.orderId)throw new G;this.isPollingEnabled&&"ideal"===i&&(yield new Promise((e,t)=>{this.initializePollingMechanism(i,e,t,o)})),this.isNonInstantPaymentMethod(i)||(yield this.paymentIntegrationService.submitOrder(r,t)),yield this.bigCommercePaymentsIntegrationService.submitPayment(i,this.orderId,o)})}finalize(){return Promise.reject(new W)}deinitialize(){var e;return this.orderId=void 0,this.isPollingEnabled&&this.resetPollingMechanism(),null===(e=this.bigCommercePaymentsButton)||void 0===e||e.close(),Promise.resolve()}initializePollingMechanism(e,t,n,r){return Ue(this,void 0,void 0,function*(){yield new Promise((e,t)=>{const n=setTimeout(e,this.pollingInterval);this.stopPolling=()=>(clearTimeout(n),this.toggleLoadingIndicator(!1),t())});try{this.pollingTimer+=this.pollingInterval;const i=yield this.bigCommercePaymentsIntegrationService.getOrderStatus(r),o=i===E.Approved,a=i===E.PollingError;if(o)return this.deInitializePollingMechanism(),t();if(a)return n();if(!o&&this.pollingTimer<this.maxPollingIntervalTime)return yield this.initializePollingMechanism(e,t,n,r);yield this.reinitializeStrategy({methodId:e,gatewayId:r,bigCommercePaymentsAlternativeMethods:this.bigCommercePaymentsAlternativeMethods}),this.handleError(new Pe)}catch(e){n()}})}deInitializePollingMechanism(){this.stopPolling(),this.pollingTimer=0}resetPollingMechanism(){this.deInitializePollingMechanism()}reinitializeStrategy(e){return Ue(this,void 0,void 0,function*(){yield this.deinitialize(),yield this.initialize(e)})}handleError(e){const{onError:t}=this.bigCommercePaymentsAlternativeMethods||{};this.isPollingEnabled&&this.resetPollingMechanism(),this.toggleLoadingIndicator(!1),t&&"function"==typeof t&&t(e)}renderButton(e,t,n){const r=this.getPaypalAmpsSdkOrThrow(),i=this.paymentIntegrationService.getState().getPaymentMethodOrThrow(e,t),{buttonStyle:o}=i.initializationData||{},{container:a,onError:s,onRenderButton:c,submitForm:u}=n,l={fundingSource:e,style:this.bigCommercePaymentsIntegrationService.getValidButtonStyle(o),onInit:(e,t)=>n.onInitButton(t),createOrder:()=>this.onCreateOrder(e,t,n),onApprove:e=>this.handleApprove(e,u),onCancel:()=>{this.toggleLoadingIndicator(!1),this.deInitializePollingMechanism()},onError:e=>{this.deInitializePollingMechanism(),this.handleFailure(e,s)},onClick:(e,t)=>Ue(this,void 0,void 0,function*(){return n.onValidate(t.resolve,t.reject)})};this.bigCommercePaymentsButton=r.Buttons(l),this.bigCommercePaymentsButton.isEligible()&&(c&&"function"==typeof c&&c(),this.bigCommercePaymentsButton.render(a))}onCreateOrder(e,t,n){return Ue(this,void 0,void 0,function*(){const{onValidate:r}=n;yield r(()=>(this.toggleLoadingIndicator(!0),()=>Promise.resolve()),g.noop);const i=yield this.bigCommercePaymentsIntegrationService.createOrder("bigcommerce_payments_apms");if(this.isNonInstantPaymentMethod(e)){const n={useStoreCredit:!1},r={params:{methodId:e,gatewayId:t}};yield this.paymentIntegrationService.submitOrder(n,r),yield this.bigCommercePaymentsIntegrationService.submitPayment(e,i,t)}return i})}handleApprove({orderID:e},t){this.orderId=e,t()}handleFailure(e,t){this.toggleLoadingIndicator(!1),t&&"function"==typeof t&&t(e)}renderFields(e,t){const n=this.getPaypalAmpsSdkOrThrow(),r=this.paymentIntegrationService.getState(),{firstName:i,lastName:o,email:a}=r.getBillingAddressOrThrow(),{apmFieldsContainer:s,apmFieldsStyles:c}=t;if(!s)throw new L('Unable to initialize payment because "options.bigcommerce_payments_apms" argument should contain "apmFieldsContainer".');const u=document.querySelector(s);u&&(u.innerHTML="");const l={fundingSource:e,style:c||{},fields:{name:{value:`${i} ${o}`},email:{value:a}}};n.PaymentFields(l).render(s)}toggleLoadingIndicator(e){e&&this.loadingIndicatorContainer?this.loadingIndicator.show(this.loadingIndicatorContainer):this.loadingIndicator.hide()}isNonInstantPaymentMethod(e){return e.toUpperCase()in A}getPaypalAmpsSdkOrThrow(){if(!this.paypalApms)throw new o;return this.paypalApms}}const Le=l(e=>new Re(e,U(e),u(),new p({containerStyles:f})),[{gateway:"bigcommerce_payments_apms"}]);class Ve{constructor(e,t){this.paymentIntegrationService=e,this.bigCommercePaymentsIntegrationService=t}initialize(e){const{gatewayId:t,methodId:n,bigcommerce_payments_apms:r}=e;if(this.bigCommercePaymentsAlternativeMethods=r,!n)throw new L('Unable to initialize payment because "options.methodId" argument is not provided.');if(!t)throw new L('Unable to initialize payment because "options.gatewayId" argument is not provided.');return Promise.resolve()}execute(e,t){return n=this,r=void 0,o=function*(){const{payment:n}=e,r=function(e,t){var n={};for(var r in e)Object.prototype.hasOwnProperty.call(e,r)&&t.indexOf(r)<0&&(n[r]=e[r]);if(null!=e&&"function"==typeof Object.getOwnPropertySymbols){var i=0;for(r=Object.getOwnPropertySymbols(e);i<r.length;i++)t.indexOf(r[i])<0&&Object.prototype.propertyIsEnumerable.call(e,r[i])&&(n[r[i]]=e[r[i]])}return n}(e,["payment"]);if(!n)throw new V(["payment"]);const{methodId:i,gatewayId:o}=n;try{const e={formattedPayload:{vault_payment_instrument:null,set_as_default_stored_instrument:null,device_info:null,method_id:i,paypal_account:{order_id:yield this.bigCommercePaymentsIntegrationService.createOrder("bigcommerce_payments_apms",{gatewayId:"bigcommerce_payments_apms",methodId:i})}}};yield this.paymentIntegrationService.submitOrder(r,t),yield this.paymentIntegrationService.submitPayment({methodId:i,gatewayId:o,paymentData:e})}catch(e){if(function(e){var t,n;return(e=>"object"==typeof e&&null!==e&&"body"in e)(e)&&(null===(n=null===(t=e.body)||void 0===t?void 0:t.additional_action_required)||void 0===n?void 0:n.data.redirect_url)}(e)){const t=e.body.additional_action_required.data.redirect_url;return new Promise((e,n)=>{window.location.replace(t),n()})}return this.handleError(e),Promise.reject(e)}},new((i=void 0)||(i=Promise))(function(e,t){function a(e){try{c(o.next(e))}catch(e){t(e)}}function s(e){try{c(o.throw(e))}catch(e){t(e)}}function c(t){var n;t.done?e(t.value):(n=t.value,n instanceof i?n:new i(function(e){e(n)})).then(a,s)}c((o=o.apply(n,r||[])).next())});var n,r,i,o}finalize(){return Promise.reject(new W)}deinitialize(){return Promise.resolve()}handleError(e){const{onError:t}=this.bigCommercePaymentsAlternativeMethods||{};t&&"function"==typeof t&&t(e)}}const Ge=l(e=>new Ve(e,U(e)),[{gateway:"bigcommerce_payments_apms",id:"klarna"},{gateway:"bigcommerce_payments_apms",id:"afterpay"}]);var We=function(e,t,n,r){return new(n||(n=Promise))(function(i,o){function a(e){try{c(r.next(e))}catch(e){o(e)}}function s(e){try{c(r.throw(e))}catch(e){o(e)}}function c(e){var t;e.done?i(e.value):(t=e.value,t instanceof n?t:new n(function(e){e(t)})).then(a,s)}c((r=r.apply(e,t||[])).next())})};class $e{constructor(e,t,n){this.paymentIntegrationService=e,this.bigCommercePaymentsIntegrationService=t,this.loadingIndicator=n}initialize(e){return We(this,void 0,void 0,function*(){var t,n;const{methodId:r,bigcommerce_payments_venmo:i}=e||{};if(!r)throw new L('Unable to initialize payment because "options.methodId" argument is not provided.');if(!i)throw new L('Unable to initialize payment because "options.bigcommerce_payments_venmo" argument is not provided.');yield this.paymentIntegrationService.loadPaymentMethod(r);const o=this.paymentIntegrationService.getState().getPaymentMethodOrThrow(r);(null===(t=o.initializationData)||void 0===t?void 0:t.orderId)?this.orderId=null===(n=o.initializationData)||void 0===n?void 0:n.orderId:(yield this.bigCommercePaymentsIntegrationService.loadPayPalSdk(r),this.loadingIndicatorContainer=i.container.split("#")[1],this.renderButton(r,i))})}execute(e,t){return We(this,void 0,void 0,function*(){const{payment:n}=e,r=function(e,t){var n={};for(var r in e)Object.prototype.hasOwnProperty.call(e,r)&&t.indexOf(r)<0&&(n[r]=e[r]);if(null!=e&&"function"==typeof Object.getOwnPropertySymbols){var i=0;for(r=Object.getOwnPropertySymbols(e);i<r.length;i++)t.indexOf(r[i])<0&&Object.prototype.propertyIsEnumerable.call(e,r[i])&&(n[r[i]]=e[r[i]])}return n}(e,["payment"]);if(!n)throw new V(["payment"]);if(!this.orderId)throw new G;yield this.paymentIntegrationService.submitOrder(r,t),yield this.bigCommercePaymentsIntegrationService.submitPayment(n.methodId,this.orderId)})}finalize(){return Promise.reject(new W)}deinitialize(){var e;return this.orderId=void 0,null===(e=this.paypalButton)||void 0===e||e.close(),Promise.resolve()}renderButton(e,t){const n=this.bigCommercePaymentsIntegrationService.getPayPalSdkOrThrow(),r=this.paymentIntegrationService.getState().getPaymentMethodOrThrow(e),{paymentButtonStyles:i}=r.initializationData||{},{checkoutPaymentButtonStyles:o}=i||{},{container:a,onError:s,onRenderButton:c,onValidate:u,submitForm:l}=t,d={fundingSource:n.FUNDING.VENMO,style:this.bigCommercePaymentsIntegrationService.getValidButtonStyle(o),createOrder:()=>this.bigCommercePaymentsIntegrationService.createOrder("bigcommerce_payments_venmocheckout"),onClick:(e,t)=>this.handleClick(t,u),onApprove:e=>this.handleApprove(e,l),onCancel:()=>this.toggleLoadingIndicator(!1),onError:e=>this.handleError(e,s)};if(this.paypalButton=n.Buttons(d),!this.paypalButton.isEligible())throw new ge("Venmo is not available for your region. Please another payment method instead.");c&&"function"==typeof c&&c(),this.paypalButton.render(a)}handleClick(e,t){return We(this,void 0,void 0,function*(){const{resolve:n,reject:r}=e;yield t(()=>(this.toggleLoadingIndicator(!0),n()),r)})}handleApprove({orderID:e},t){this.orderId=e,t(),this.toggleLoadingIndicator(!1)}handleError(e,t){this.toggleLoadingIndicator(!1),t&&"function"==typeof t&&t(e)}toggleLoadingIndicator(e){e&&this.loadingIndicatorContainer?this.loadingIndicator.show(this.loadingIndicatorContainer):this.loadingIndicator.hide()}}const qe=l(e=>new $e(e,U(e),new p({styles:{backgroundColor:"black"}})),[{id:"bigcommerce_payments_venmo"}]);var He=function(e,t,n,r){return new(n||(n=Promise))(function(i,o){function a(e){try{c(r.next(e))}catch(e){o(e)}}function s(e){try{c(r.throw(e))}catch(e){o(e)}}function c(e){var t;e.done?i(e.value):(t=e.value,t instanceof n?t:new n(function(e){e(t)})).then(a,s)}c((r=r.apply(e,t||[])).next())})};class Ke{constructor(e,t){this.paymentIntegrationService=e,this.bigCommercePaymentsIntegrationService=t,this.onError=g.noop}initialize(e){return He(this,void 0,void 0,function*(){const{bigcommerce_payments:t,methodId:n}=e;if(!n)throw new L('Unable to initialize payment because "options.methodId" argument is not provided.');if(!t)throw new L('Unable to initialize payment because "options.bigcommerce_payments" argument is not provided.');if(!t.container)throw new L('Unable to initialize payment because "options.bigcommerce_payments.container" argument is not provided.');if(t.onClick&&"function"!=typeof t.onClick)throw new L('Unable to initialize payment because "options.bigcommerce_payments.onClick" argument is not a function.');this.onError=t.onError||g.noop,this.paymentIntegrationService.getState().getPaymentMethod(n)||(yield this.paymentIntegrationService.loadPaymentMethod(n));const r=yield this.bigCommercePaymentsIntegrationService.loadPayPalSdk(n);r&&r.Buttons&&"function"==typeof r.Buttons?this.renderButton(n,t):console.error("[BC PayPal]: PayPal Button could not be rendered, due to issues with loading PayPal SDK")})}deinitialize(){return Promise.resolve()}signIn(e,t){return He(this,void 0,void 0,function*(){return yield this.paymentIntegrationService.signInCustomer(e,t),Promise.resolve()})}signOut(e){return He(this,void 0,void 0,function*(){return yield this.paymentIntegrationService.signOutCustomer(e),Promise.resolve()})}executePaymentMethodCheckout(e){var t;return null===(t=null==e?void 0:e.continueWithCheckoutCallback)||void 0===t||t.call(e),Promise.resolve()}renderButton(e,t){const{container:n,onClick:r,onComplete:i}=t,o=this.bigCommercePaymentsIntegrationService.getPayPalSdkOrThrow(),a=this.paymentIntegrationService.getState().getPaymentMethodOrThrow(e),{isHostedCheckoutEnabled:s,paymentButtonStyles:c,isServerSideShippingCallbacksEnabled:u}=a.initializationData||{},{checkoutTopButtonStyles:l}=c||{},d=Object.assign({createOrder:()=>this.bigCommercePaymentsIntegrationService.createOrder("bigcommerce_payments"),onApprove:({orderID:t})=>this.bigCommercePaymentsIntegrationService.tokenizePayment(e,t)},r&&{onClick:()=>r()}),h=Object.assign(Object.assign({},!u&&{onShippingAddressChange:e=>this.onShippingAddressChange(e),onShippingOptionsChange:e=>this.onShippingOptionsChange(e)}),{onApprove:(t,n)=>this.onHostedCheckoutApprove(t,n,e,i,u)}),p=Object.assign(Object.assign({fundingSource:o.FUNDING.PAYPAL,style:this.bigCommercePaymentsIntegrationService.getValidButtonStyle(Object.assign(Object.assign({},l),{height:40}))},d),s&&h),f=o.Buttons(p);f.isEligible()?f.render(`#${n}`):this.bigCommercePaymentsIntegrationService.removeElement(n)}onHostedCheckoutApprove(t,n,r,i,o){return He(this,void 0,void 0,function*(){if(!t.orderID)throw new a(e.MissingOrderId);const s=this.paymentIntegrationService.getState().getCartOrThrow();try{const e=s.lineItems.physicalItems.length>0;if(!o){const t=yield n.order.get(),r=this.bigCommercePaymentsIntegrationService.getBillingAddressFromOrderDetails(t);if(yield this.paymentIntegrationService.updateBillingAddress(r),e){const e=this.bigCommercePaymentsIntegrationService.getShippingAddressFromOrderDetails(t);yield this.paymentIntegrationService.updateShippingAddress(e)}}e&&(yield this.bigCommercePaymentsIntegrationService.updateOrder(o)),o&&(yield this.paymentIntegrationService.loadCheckout()),yield this.paymentIntegrationService.submitOrder({},{params:{methodId:r}}),yield this.bigCommercePaymentsIntegrationService.submitPayment(r,t.orderID),i&&"function"==typeof i&&i()}catch(e){this.handleError(e)}})}onShippingAddressChange(e){return He(this,void 0,void 0,function*(){const t=this.bigCommercePaymentsIntegrationService.getAddress({city:e.shippingAddress.city,countryCode:e.shippingAddress.countryCode,postalCode:e.shippingAddress.postalCode,stateOrProvinceCode:e.shippingAddress.state});try{yield this.paymentIntegrationService.updateBillingAddress(t),yield this.paymentIntegrationService.updateShippingAddress(t);const e=this.bigCommercePaymentsIntegrationService.getShippingOptionOrThrow();yield this.paymentIntegrationService.selectShippingOption(e.id),yield this.bigCommercePaymentsIntegrationService.updateOrder()}catch(e){this.handleError(e)}})}onShippingOptionsChange(e){return He(this,void 0,void 0,function*(){const t=this.bigCommercePaymentsIntegrationService.getShippingOptionOrThrow(e.selectedShippingOption.id);try{yield this.paymentIntegrationService.selectShippingOption(t.id),yield this.bigCommercePaymentsIntegrationService.updateOrder()}catch(e){this.handleError(e)}})}handleError(e){if("function"!=typeof this.onError)throw e;this.onError(e)}}const Ye=l(e=>new Ke(e,U(e)),[{id:"bigcommerce_payments"}]);var Ze=function(e,t,n,r){return new(n||(n=Promise))(function(i,o){function a(e){try{c(r.next(e))}catch(e){o(e)}}function s(e){try{c(r.throw(e))}catch(e){o(e)}}function c(e){var t;e.done?i(e.value):(t=e.value,t instanceof n?t:new n(function(e){e(t)})).then(a,s)}c((r=r.apply(e,t||[])).next())})};class Je{constructor(e,t,n){this.paymentIntegrationService=e,this.bigCommercePaymentsSdk=t,this.bigCommercePaymentsFastlaneUtils=n}initialize(e){return Ze(this,void 0,void 0,function*(){var t;const{methodId:n,bigcommerce_payments_fastlane:r}=e;if(this.options=e,!n)throw new L('Unable to proceed because "methodId" argument is not provided.');try{yield this.paymentIntegrationService.loadPaymentMethod(n);const e=this.paymentIntegrationService.getState(),i=e.getCartOrThrow(),o=e.getPaymentMethodOrThrow(n),a=!!(null===(t=o.initializationData)||void 0===t?void 0:t.isDeveloperModeApplicable),s=yield this.bigCommercePaymentsSdk.getPayPalFastlaneSdk(o,i.currency.code,i.id);yield this.bigCommercePaymentsFastlaneUtils.initializePayPalFastlane(s,a,this.getFastlaneStyles(n,r))}catch(e){this.handleErrorLog(e)}return Promise.resolve()})}deinitialize(){return Ze(this,void 0,void 0,function*(){return Promise.resolve()})}signIn(e,t){return Ze(this,void 0,void 0,function*(){yield this.paymentIntegrationService.signInCustomer(e,t),yield this.paymentIntegrationService.updatePaymentProviderCustomer({authenticationState:void 0,addresses:void 0,instruments:void 0}),this.bigCommercePaymentsFastlaneUtils.removeStorageSessionId()})}signOut(e){return Ze(this,void 0,void 0,function*(){yield this.paymentIntegrationService.signOutCustomer(e)})}executePaymentMethodCheckout(e){return Ze(this,void 0,void 0,function*(){const{checkoutPaymentMethodExecuted:t,continueWithCheckoutCallback:n,methodId:r}=e||{};if(!r)throw new L('Unable to proceed because "methodId" argument is not provided.');if("function"!=typeof n)throw new L('Unable to proceed because "continueWithCheckoutCallback" argument is not provided and it must be a function.');if(this.paymentIntegrationService.getState().getCustomerOrThrow().isGuest){t&&"function"==typeof t&&t();try{yield this.runPayPalAuthenticationFlowOrThrow(r)}catch(e){this.handleErrorLog(e)}}n()})}runPayPalAuthenticationFlowOrThrow(e){return Ze(this,void 0,void 0,function*(){const t=this.paymentIntegrationService.getState(),n=t.getCartOrThrow().id,r=t.getCustomer(),i=t.getBillingAddress(),o=(null==r?void 0:r.email)||(null==i?void 0:i.email)||"",{customerContextId:a}=yield this.bigCommercePaymentsFastlaneUtils.lookupCustomerOrThrow(o),s=yield this.bigCommercePaymentsFastlaneUtils.triggerAuthenticationFlowOrThrow(a),c=s.authenticationState===oe.CANCELED;yield this.updateCustomerDataState(e,s),c?this.bigCommercePaymentsFastlaneUtils.removeStorageSessionId():this.bigCommercePaymentsFastlaneUtils.updateStorageSessionId(n)})}updateCustomerDataState(e,t){return Ze(this,void 0,void 0,function*(){var n;const r=this.paymentIntegrationService.getState().getCartOrThrow(),{authenticationState:i,addresses:o,billingAddress:a,shippingAddress:s,instruments:c}=this.bigCommercePaymentsFastlaneUtils.mapPayPalFastlaneProfileToBcCustomerData(e,t);if(yield this.paymentIntegrationService.updatePaymentProviderCustomer({authenticationState:i,addresses:o,instruments:c}),a&&(yield this.paymentIntegrationService.updateBillingAddress(a)),s&&r.lineItems.physicalItems.length>0){const t=yield this.paymentIntegrationService.updateShippingAddress(s),r=t.getPaymentMethodOrThrow(e),{isFastlaneShippingOptionAutoSelectEnabled:i}=r.initializationData||{},o=(null===(n=(t.getConsignments()||[])[0])||void 0===n?void 0:n.availableShippingOptions)||[],a=o[0],c=o.find(e=>e.isRecommended);if((c||a)&&i){const e=(null==c?void 0:c.id)||a.id;yield this.paymentIntegrationService.selectShippingOption(e)}}})}getFastlaneStyles(e,t){const n=this.paymentIntegrationService.getState().getPaymentMethodOrThrow(e),{fastlaneStyles:r,isFastlaneStylingEnabled:i}=n.initializationData||{};return de(i?r:{},null==t?void 0:t.styles)}handleErrorLog(e){const{onErrorLog:t}=this.options||{};t&&"function"==typeof t&&t(e)}}const Qe=l(e=>new Je(e,u(),ue()),[{id:"bigcommerce_payments_fastlane"},{id:"bigcommerce_payments_creditcards"}]);var Xe=function(e,t,n,r){return new(n||(n=Promise))(function(i,o){function a(e){try{c(r.next(e))}catch(e){o(e)}}function s(e){try{c(r.throw(e))}catch(e){o(e)}}function c(e){var t;e.done?i(e.value):(t=e.value,t instanceof n?t:new n(function(e){e(t)})).then(a,s)}c((r=r.apply(e,t||[])).next())})};class et{constructor(e,t){this.paymentIntegrationService=e,this.bigCommercePaymentsIntegrationService=t,this.onError=g.noop}initialize(e){return Xe(this,void 0,void 0,function*(){const{bigcommerce_payments_paylater:t,methodId:n}=e;if(!n)throw new L('Unable to initialize payment because "options.methodId" argument is not provided.');if(!t)throw new L('Unable to initialize payment because "options.bigcommerce_payments_paylater" argument is not provided.');if(!t.container)throw new L('Unable to initialize payment because "options.bigcommerce_payments_paylater.container" argument is not provided.');if(t.onClick&&"function"!=typeof t.onClick)throw new L('Unable to initialize payment because "options.bigcommerce_payments_paylater.onClick" argument is not a function.');this.onError=t.onError||g.noop,this.paymentIntegrationService.getState().getPaymentMethod(n)||(yield this.paymentIntegrationService.loadPaymentMethod(n));const r=yield this.bigCommercePaymentsIntegrationService.loadPayPalSdk(n);r&&r.Buttons&&"function"==typeof r.Buttons?this.renderButton(n,t):console.error("[BC BigCommercePayments PayLater]: button could not be rendered, due to issues with loading PayPal SDK")})}deinitialize(){return Promise.resolve()}signIn(e,t){return Xe(this,void 0,void 0,function*(){yield this.paymentIntegrationService.signInCustomer(e,t)})}signOut(e){return Xe(this,void 0,void 0,function*(){yield this.paymentIntegrationService.signOutCustomer(e)})}executePaymentMethodCheckout(e){var t;return null===(t=null==e?void 0:e.continueWithCheckoutCallback)||void 0===t||t.call(e),Promise.resolve()}renderButton(e,t){const{container:n,onComplete:r,onClick:i}=t,o=this.bigCommercePaymentsIntegrationService.getPayPalSdkOrThrow(),a=this.paymentIntegrationService.getState().getPaymentMethodOrThrow(e),{isHostedCheckoutEnabled:s,paymentButtonStyles:c}=a.initializationData||{},{checkoutTopButtonStyles:u}=c||{},l=Object.assign({createOrder:()=>this.bigCommercePaymentsIntegrationService.createOrder("bigcommerce_payments_paylater"),onApprove:({orderID:t})=>this.bigCommercePaymentsIntegrationService.tokenizePayment(e,t)},i&&{onClick:()=>i()}),d={onShippingAddressChange:e=>this.onShippingAddressChange(e),onShippingOptionsChange:e=>this.onShippingOptionsChange(e),onApprove:(t,n)=>this.onHostedCheckoutApprove(t,n,e,r)},h=[o.FUNDING.PAYLATER,o.FUNDING.CREDIT];let p=!1;h.forEach(e=>{if(!p){const t=Object.assign(Object.assign({fundingSource:e,style:this.bigCommercePaymentsIntegrationService.getValidButtonStyle(Object.assign(Object.assign({},u),{height:40}))},l),s&&d),r=o.Buttons(t);r.isEligible()&&(r.render(`#${n}`),p=!0)}}),p||this.bigCommercePaymentsIntegrationService.removeElement(n)}onHostedCheckoutApprove(t,n,r,i){return Xe(this,void 0,void 0,function*(){if(!t.orderID)throw new a(e.MissingOrderId);const o=this.paymentIntegrationService.getState().getCartOrThrow(),s=yield n.order.get();try{const e=this.bigCommercePaymentsIntegrationService.getBillingAddressFromOrderDetails(s);if(yield this.paymentIntegrationService.updateBillingAddress(e),o.lineItems.physicalItems.length>0){const e=this.bigCommercePaymentsIntegrationService.getShippingAddressFromOrderDetails(s);yield this.paymentIntegrationService.updateShippingAddress(e),yield this.bigCommercePaymentsIntegrationService.updateOrder()}yield this.paymentIntegrationService.submitOrder({},{params:{methodId:r}}),yield this.bigCommercePaymentsIntegrationService.submitPayment(r,t.orderID),i&&"function"==typeof i&&i()}catch(e){this.handleError(e)}})}onShippingAddressChange(e){return Xe(this,void 0,void 0,function*(){const t=this.bigCommercePaymentsIntegrationService.getAddress({city:e.shippingAddress.city,countryCode:e.shippingAddress.countryCode,postalCode:e.shippingAddress.postalCode,stateOrProvinceCode:e.shippingAddress.state});try{yield this.paymentIntegrationService.updateBillingAddress(t),yield this.paymentIntegrationService.updateShippingAddress(t);const e=this.bigCommercePaymentsIntegrationService.getShippingOptionOrThrow();yield this.paymentIntegrationService.selectShippingOption(e.id),yield this.bigCommercePaymentsIntegrationService.updateOrder()}catch(e){this.handleError(e)}})}onShippingOptionsChange(e){return Xe(this,void 0,void 0,function*(){const t=this.bigCommercePaymentsIntegrationService.getShippingOptionOrThrow(e.selectedShippingOption.id);try{yield this.paymentIntegrationService.selectShippingOption(t.id),yield this.bigCommercePaymentsIntegrationService.updateOrder()}catch(e){this.handleError(e)}})}handleError(e){if("function"!=typeof this.onError)throw e;this.onError(e)}}const tt=l(e=>new et(e,U(e)),[{id:"bigcommerce_payments_paylater"}]);var nt=function(e,t,n,r){return new(n||(n=Promise))(function(i,o){function a(e){try{c(r.next(e))}catch(e){o(e)}}function s(e){try{c(r.throw(e))}catch(e){o(e)}}function c(e){var t;e.done?i(e.value):(t=e.value,t instanceof n?t:new n(function(e){e(t)})).then(a,s)}c((r=r.apply(e,t||[])).next())})};class rt{constructor(e,t){this.paymentIntegrationService=e,this.bigCommercePaymentsIntegrationService=t}initialize(e){return nt(this,void 0,void 0,function*(){const{bigcommerce_payments_venmo:t,methodId:n}=e;if(!n)throw new L('Unable to initialize payment because "options.methodId" argument is not provided.');if(!t)throw new L('Unable to initialize payment because "options.bigcommerce_payments_venmo" argument is not provided.');if(!t.container)throw new L('Unable to initialize payment because "options.bigcommerce_payments_venmo.container" argument is not provided.');if(t.onClick&&"function"!=typeof t.onClick)throw new L('Unable to initialize payment because "options.bigcommerce_payments_venmo.onClick" argument is not a function.');this.paymentIntegrationService.getState().getPaymentMethod(n)||(yield this.paymentIntegrationService.loadPaymentMethod(n));const r=yield this.bigCommercePaymentsIntegrationService.loadPayPalSdk(n);r&&r.Buttons&&"function"==typeof r.Buttons?this.renderButton(n,t):console.error("[BC Payments Venmo]: Button could not be rendered, due to issues with loading PayPal SDK")})}deinitialize(){return Promise.resolve()}signIn(e,t){return nt(this,void 0,void 0,function*(){yield this.paymentIntegrationService.signInCustomer(e,t)})}signOut(e){return nt(this,void 0,void 0,function*(){yield this.paymentIntegrationService.signOutCustomer(e)})}executePaymentMethodCheckout(e){var t;return null===(t=null==e?void 0:e.continueWithCheckoutCallback)||void 0===t||t.call(e),Promise.resolve()}renderButton(e,t){const{container:n,onClick:r}=t,i=this.bigCommercePaymentsIntegrationService.getPayPalSdkOrThrow(),o=this.paymentIntegrationService.getState().getPaymentMethodOrThrow(e),{paymentButtonStyles:a}=o.initializationData||{},{checkoutTopButtonStyles:s}=a||{},c=Object.assign({fundingSource:i.FUNDING.VENMO,style:this.bigCommercePaymentsIntegrationService.getValidButtonStyle(Object.assign(Object.assign({},s),{height:40})),createOrder:()=>this.bigCommercePaymentsIntegrationService.createOrder("bigcommerce_payments_venmo"),onApprove:({orderID:t})=>this.bigCommercePaymentsIntegrationService.tokenizePayment(e,t)},r&&{onClick:()=>r()}),u=i.Buttons(c);u.isEligible()?u.render(`#${n}`):this.bigCommercePaymentsIntegrationService.removeElement(n)}}const it=l(e=>new rt(e,U(e)),[{id:"bigcommerce_payments_venmo"}]);var ot=function(e,t,n,r){return new(n||(n=Promise))(function(i,o){function a(e){try{c(r.next(e))}catch(e){o(e)}}function s(e){try{c(r.throw(e))}catch(e){o(e)}}function c(e){var t;e.done?i(e.value):(t=e.value,t instanceof n?t:new n(function(e){e(t)})).then(a,s)}c((r=r.apply(e,t||[])).next())})};class at{constructor(e,t){this.paymentIntegrationService=e,this.bigCommercePaymentsIntegrationService=t}initialize(e){return ot(this,void 0,void 0,function*(){var t;const{bigcommerce_payments:n,containerId:r,methodId:i}=e,o=Boolean(null==n?void 0:n.buyNowInitializeOptions);if(!i)throw new L('Unable to initialize payment because "options.methodId" argument is not provided.');if(!r)throw new L('Unable to initialize payment because "options.containerId" argument is not provided.');if(!n)throw new L('Unable to initialize payment because "options.bigcommerce_payments" argument is not provided.');if(o&&!n.currencyCode)throw new L('Unable to initialize payment because "options.bigcommerce_payments.currencyCode" argument is not provided.');if(o&&"function"!=typeof(null===(t=n.buyNowInitializeOptions)||void 0===t?void 0:t.getBuyNowCartRequestBody))throw new L('Unable to initialize payment because "options.bigcommerce_payments.buyNowInitializeOptions.getBuyNowCartRequestBody" argument is not provided or it is not a function.');o||(yield this.paymentIntegrationService.loadDefaultCheckout());const a=o?n.currencyCode:this.paymentIntegrationService.getState().getCartOrThrow().currency.code;yield this.bigCommercePaymentsIntegrationService.loadPayPalSdk(i,a,!1),this.renderButton(r,i,n)})}deinitialize(){return Promise.resolve()}renderButton(e,t,n){const{buyNowInitializeOptions:r,style:i,onComplete:o,onEligibilityFailure:a}=n,s=this.bigCommercePaymentsIntegrationService.getPayPalSdkOrThrow(),c=this.paymentIntegrationService.getState().getPaymentMethodOrThrow(t),{isHostedCheckoutEnabled:u,isServerSideShippingCallbacksEnabled:l}=c.initializationData||{},d={createOrder:()=>this.bigCommercePaymentsIntegrationService.createOrder("bigcommerce_payments"),onApprove:({orderID:e})=>this.bigCommercePaymentsIntegrationService.tokenizePayment(t,e)},h={onClick:()=>this.handleClick(r),onCancel:()=>this.paymentIntegrationService.loadDefaultCheckout()},p=Object.assign(Object.assign({},!l&&{onShippingAddressChange:e=>this.onShippingAddressChange(e),onShippingOptionsChange:e=>this.onShippingOptionsChange(e)}),{onApprove:(e,n)=>this.onHostedCheckoutApprove(e,n,t,o,l)}),f=Object.assign(Object.assign(Object.assign({fundingSource:s.FUNDING.PAYPAL,style:this.bigCommercePaymentsIntegrationService.getValidButtonStyle(i)},d),r&&h),u&&p),m=s.Buttons(f);m.isEligible()?m.render(`#${e}`):a&&"function"==typeof a?a():this.bigCommercePaymentsIntegrationService.removeElement(e)}handleClick(e){return ot(this,void 0,void 0,function*(){if(e){const t=yield this.bigCommercePaymentsIntegrationService.createBuyNowCartOrThrow(e);yield this.paymentIntegrationService.loadCheckout(t.id)}})}onHostedCheckoutApprove(t,n,r,i,o){return ot(this,void 0,void 0,function*(){if(!t.orderID)throw new a(e.MissingOrderId);const s=this.paymentIntegrationService.getState().getCartOrThrow();try{const e=s.lineItems.physicalItems.length>0;if(!o){const t=yield n.order.get(),r=this.bigCommercePaymentsIntegrationService.getBillingAddressFromOrderDetails(t);if(yield this.paymentIntegrationService.updateBillingAddress(r),e){const e=this.bigCommercePaymentsIntegrationService.getShippingAddressFromOrderDetails(t);yield this.paymentIntegrationService.updateShippingAddress(e)}}return e&&(yield this.bigCommercePaymentsIntegrationService.updateOrder(o)),o&&(yield this.paymentIntegrationService.loadCheckout()),yield this.paymentIntegrationService.submitOrder({},{params:{methodId:r}}),yield this.bigCommercePaymentsIntegrationService.submitPayment(r,t.orderID),i&&"function"==typeof i&&i(),!0}catch(e){if("string"==typeof e)throw new Error(e);throw e}})}onShippingAddressChange(e){return ot(this,void 0,void 0,function*(){const t=this.bigCommercePaymentsIntegrationService.getAddress({city:e.shippingAddress.city,countryCode:e.shippingAddress.countryCode,postalCode:e.shippingAddress.postalCode,stateOrProvinceCode:e.shippingAddress.state});try{yield this.paymentIntegrationService.updateBillingAddress(t),yield this.paymentIntegrationService.updateShippingAddress(t);const e=this.bigCommercePaymentsIntegrationService.getShippingOptionOrThrow();yield this.paymentIntegrationService.selectShippingOption(e.id),yield this.bigCommercePaymentsIntegrationService.updateOrder()}catch(e){if("string"==typeof e)throw new Error(e);throw e}})}onShippingOptionsChange(e){return ot(this,void 0,void 0,function*(){const t=this.bigCommercePaymentsIntegrationService.getShippingOptionOrThrow(e.selectedShippingOption.id);try{yield this.paymentIntegrationService.selectShippingOption(t.id),yield this.bigCommercePaymentsIntegrationService.updateOrder()}catch(e){if("string"==typeof e)throw new Error(e);throw e}})}}const st=l(e=>new at(e,U(e)),[{id:"bigcommerce_payments"}]);var ct=function(e,t,n,r){return new(n||(n=Promise))(function(i,o){function a(e){try{c(r.next(e))}catch(e){o(e)}}function s(e){try{c(r.throw(e))}catch(e){o(e)}}function c(e){var t;e.done?i(e.value):(t=e.value,t instanceof n?t:new n(function(e){e(t)})).then(a,s)}c((r=r.apply(e,t||[])).next())})};class ut{constructor(e,t){this.paymentIntegrationService=e,this.bigCommercePaymentsIntegrationService=t}initialize(e){return ct(this,void 0,void 0,function*(){const{bigcommerce_payments_paylater:t,containerId:n,methodId:r}=e,{buyNowInitializeOptions:i,currencyCode:o}=t||{},a=!!i;if(!r)throw new L('Unable to initialize payment because "options.methodId" argument is not provided.');if(!n)throw new L('Unable to initialize payment because "options.containerId" argument is not provided.');if(!t)throw new L('Unable to initialize payment because "options.bigcommerce_payments_paylater" argument is not provided.');if(a&&!o)throw new L('Unable to initialize payment because "options.bigcommerce_payments_paylater.currencyCode" argument is not provided.');if(a&&"function"!=typeof(null==i?void 0:i.getBuyNowCartRequestBody))throw new L('Unable to initialize payment because "options.bigcommerce_payments_paylater.buyNowInitializeOptions.getBuyNowCartRequestBody" argument is not provided or it is not a function.');a||(yield this.paymentIntegrationService.loadDefaultCheckout());const s=this.paymentIntegrationService.getState(),c=a?o:s.getCartOrThrow().currency.code;yield this.bigCommercePaymentsIntegrationService.loadPayPalSdk(r,c,!1),this.renderButton(n,r,t)})}deinitialize(){return Promise.resolve()}renderButton(e,t,n){const{buyNowInitializeOptions:r,style:i,onComplete:o,onEligibilityFailure:a}=n,s=this.bigCommercePaymentsIntegrationService.getPayPalSdkOrThrow(),c=this.paymentIntegrationService.getState().getPaymentMethodOrThrow(t),{isHostedCheckoutEnabled:u}=c.initializationData||{},l={createOrder:()=>this.bigCommercePaymentsIntegrationService.createOrder("bigcommerce_payments_paylater"),onApprove:({orderID:e})=>this.bigCommercePaymentsIntegrationService.tokenizePayment(t,e)},d={onClick:()=>this.handleClick(r),onCancel:()=>this.paymentIntegrationService.loadDefaultCheckout()},h={onShippingAddressChange:e=>this.onShippingAddressChange(e),onShippingOptionsChange:e=>this.onShippingOptionsChange(e),onApprove:(e,n)=>this.onHostedCheckoutApprove(e,n,t,o)},p=[s.FUNDING.PAYLATER,s.FUNDING.CREDIT];let f=!1;p.forEach(t=>{if(!f){const n=Object.assign(Object.assign(Object.assign({fundingSource:t,style:this.bigCommercePaymentsIntegrationService.getValidButtonStyle(i)},l),r&&d),u&&h),o=s.Buttons(n);o.isEligible()?(o.render(`#${e}`),f=!0):a&&"function"==typeof a&&a()}}),f||this.bigCommercePaymentsIntegrationService.removeElement(e)}handleClick(e){return ct(this,void 0,void 0,function*(){if(e){const t=yield this.bigCommercePaymentsIntegrationService.createBuyNowCartOrThrow(e);yield this.paymentIntegrationService.loadCheckout(t.id)}})}onHostedCheckoutApprove(t,n,r,i){return ct(this,void 0,void 0,function*(){if(!t.orderID)throw new a(e.MissingOrderId);const o=this.paymentIntegrationService.getState().getCartOrThrow(),s=yield n.order.get();try{const e=this.bigCommercePaymentsIntegrationService.getBillingAddressFromOrderDetails(s);if(yield this.paymentIntegrationService.updateBillingAddress(e),o.lineItems.physicalItems.length>0){const e=this.bigCommercePaymentsIntegrationService.getShippingAddressFromOrderDetails(s);yield this.paymentIntegrationService.updateShippingAddress(e),yield this.bigCommercePaymentsIntegrationService.updateOrder()}return yield this.paymentIntegrationService.submitOrder({},{params:{methodId:r}}),yield this.bigCommercePaymentsIntegrationService.submitPayment(r,t.orderID),i&&"function"==typeof i&&i(),!0}catch(e){if("string"==typeof e)throw new Error(e);throw e}})}onShippingAddressChange(e){return ct(this,void 0,void 0,function*(){const t=this.bigCommercePaymentsIntegrationService.getAddress({city:e.shippingAddress.city,countryCode:e.shippingAddress.countryCode,postalCode:e.shippingAddress.postalCode,stateOrProvinceCode:e.shippingAddress.state});try{yield this.paymentIntegrationService.updateBillingAddress(t),yield this.paymentIntegrationService.updateShippingAddress(t);const e=this.bigCommercePaymentsIntegrationService.getShippingOptionOrThrow();yield this.paymentIntegrationService.selectShippingOption(e.id),yield this.bigCommercePaymentsIntegrationService.updateOrder()}catch(e){if("string"==typeof e)throw new Error(e);throw e}})}onShippingOptionsChange(e){return ct(this,void 0,void 0,function*(){const t=this.bigCommercePaymentsIntegrationService.getShippingOptionOrThrow(e.selectedShippingOption.id);try{yield this.paymentIntegrationService.selectShippingOption(t.id),yield this.bigCommercePaymentsIntegrationService.updateOrder()}catch(e){if("string"==typeof e)throw new Error(e);throw e}})}}const lt=l(e=>new ut(e,U(e)),[{id:"bigcommerce_payments_paylater"}]);var dt=function(e,t,n,r){return new(n||(n=Promise))(function(i,o){function a(e){try{c(r.next(e))}catch(e){o(e)}}function s(e){try{c(r.throw(e))}catch(e){o(e)}}function c(e){var t;e.done?i(e.value):(t=e.value,t instanceof n?t:new n(function(e){e(t)})).then(a,s)}c((r=r.apply(e,t||[])).next())})};class ht{constructor(e,t){this.paymentIntegrationService=e,this.bigCommercePaymentsIntegrationService=t}initialize(e){return dt(this,void 0,void 0,function*(){const{bigcommerce_payments_venmo:t,containerId:n,methodId:r}=e,{buyNowInitializeOptions:i,currencyCode:o}=t||{},a=!!i;if(!r)throw new L('Unable to initialize payment because "options.methodId" argument is not provided.');if(!n)throw new L('Unable to initialize payment because "options.containerId" argument is not provided.');if(!t)throw new L('Unable to initialize payment because "options.bigcommerce_payments_venmo" argument is not provided.');if(a&&!o)throw new L('Unable to initialize payment because "options.bigcommerce_payments_venmo.currencyCode" argument is not provided.');if(a&&"function"!=typeof(null==i?void 0:i.getBuyNowCartRequestBody))throw new L('Unable to initialize payment because "options.bigcommerce_payments_venmo.buyNowInitializeOptions.getBuyNowCartRequestBody" argument is not provided or it is not a function.');a||(yield this.paymentIntegrationService.loadDefaultCheckout());const s=a?o:this.paymentIntegrationService.getState().getCartOrThrow().currency.code;yield this.bigCommercePaymentsIntegrationService.loadPayPalSdk(r,s,!1),this.renderButton(n,r,t)})}deinitialize(){return Promise.resolve()}renderButton(e,t,n){const{buyNowInitializeOptions:r,style:i,onEligibilityFailure:o}=n,a=this.bigCommercePaymentsIntegrationService.getPayPalSdkOrThrow(),s=a.FUNDING.VENMO,c={createOrder:()=>this.bigCommercePaymentsIntegrationService.createOrder("bigcommerce_payments_venmo"),onApprove:({orderID:e})=>this.bigCommercePaymentsIntegrationService.tokenizePayment(t,e)},u={onClick:()=>this.handleClick(r),onCancel:()=>this.paymentIntegrationService.loadDefaultCheckout()},l=Object.assign(Object.assign({fundingSource:s,style:this.getValidVenmoButtonStyles(i)},c),r&&u),d=a.Buttons(l);d.isEligible()?d.render(`#${e}`):o&&"function"==typeof o?o():this.bigCommercePaymentsIntegrationService.removeElement(e)}getValidVenmoButtonStyles(e){const t=this.bigCommercePaymentsIntegrationService.getValidButtonStyle(e);return t.color===C.gold?Object.assign(Object.assign({},t),{color:void 0}):t}handleClick(e){return dt(this,void 0,void 0,function*(){if(e){const t=yield this.bigCommercePaymentsIntegrationService.createBuyNowCartOrThrow(e);yield this.paymentIntegrationService.loadCheckout(t.id)}})}}const pt=l(e=>new ht(e,U(e)),[{id:"bigcommerce_payments_venmo"}]);var ft,mt,yt,gt,vt,_t,bt,Pt,St,wt;!function(e){e.AUTHORIZE="authorize",e.CAPTURE="capture"}(ft||(ft={})),function(e){e.Always="SCA_ALWAYS"}(mt||(mt={})),function(e){e.Succeeded="succeeded",e.Cancelled="cancelled",e.Errored="errored"}(yt||(yt={})),function(e){e.Possible="POSSIBLE",e.No="NO",e.Unknown="UNKNOWN",e.Yes="YES"}(gt||(gt={})),function(e){e.paypal="paypal",e.checkout="checkout",e.buynow="buynow",e.pay="pay",e.installment="installment"}(vt||(vt={})),function(e){e.gold="gold",e.blue="blue",e.silver="silver",e.black="black",e.white="white"}(_t||(_t={})),function(e){e.pill="pill",e.rect="rect"}(bt||(bt={})),function(e){e.SUCCEEDED="succeeded",e.FAILED="failed",e.CANCELED="canceled",e.UNRECOGNIZED="unrecognized"}(Pt||(Pt={})),function(e){e.OXXO="oxxo"}(St||(St={})),function(e){e.Approved="APPROVED",e.Created="CREATED",e.PayerActionRequired="PAYER_ACTION_REQUIRED",e.PollingStop="POLLING_STOP",e.PollingError="POLLING_ERROR"}(wt||(wt={}));var It=function(e,t,n,r){return new(n||(n=Promise))(function(i,o){function a(e){try{c(r.next(e))}catch(e){o(e)}}function s(e){try{c(r.throw(e))}catch(e){o(e)}}function c(e){var t;e.done?i(e.value):(t=e.value,t instanceof n?t:new n(function(e){e(t)})).then(a,s)}c((r=r.apply(e,t||[])).next())})};class Ct{constructor(e,t,n="PayPalCommercePaymentWalletIntentData"){this.walletButtonIntegrationService=e,this.scriptLoader=t,this.intentTypename=n}loadPayPalSdk(e,t,n,r){return It(this,void 0,void 0,function*(){return this.paypalSdk=yield this.scriptLoader.getPayPalSDK(e,t,void 0,n,r),this.paypalSdk})}getPayPalSdkOrThrow(){if(!this.paypalSdk)throw new o;return this.paypalSdk}proxyTokenizationPayment(t,n,r,i){return It(this,void 0,void 0,function*(){var o;if(!i)throw new a(e.MissingOrderId);const s={paymentWalletData:{providerId:n,providerOrderId:i},cartEntityId:t,queryParams:[{key:"payment_type",value:"paypal"},{key:"action",value:"set_external_checkout"},{key:"provider",value:r},{key:"order_id",value:i}]},c=yield this.walletButtonIntegrationService.getRedirectToCheckoutUrl(s);if(!(null===(o=c.body.redirectUrls)||void 0===o?void 0:o.externalCheckoutUrl))throw new Error("Failed to redirection to checkout page");window.location.assign(c.body.redirectUrls.externalCheckoutUrl)})}createPaymentOrderIntent(e,t,n){return It(this,void 0,void 0,function*(){const r={cartEntityId:t,paymentWalletEntityId:e};return(yield this.walletButtonIntegrationService.createPaymentOrderIntent(r,this.intentTypename,n)).body.orderId})}addBillingAddress(e,t,n){return It(this,void 0,void 0,function*(){return this.walletButtonIntegrationService.addBillingAddress(e,t,n)})}mapOrderDetailsToBillingAddress({payer:e}){var t,n,r,i;return{firstName:e.name.given_name,lastName:e.name.surname,company:"",address1:e.address.address_line_1,address2:e.address.address_line_2,city:e.address.admin_area_2,email:e.email_address,stateOrProvince:null!==(t=e.address.admin_area_1)&&void 0!==t?t:"",stateOrProvinceCode:null!==(n=e.address.admin_area_1)&&void 0!==n?n:"",countryCode:e.address.country_code,postalCode:e.address.postal_code,phone:null!==(i=null===(r=e.phone)||void 0===r?void 0:r.phone_number.national_number)&&void 0!==i?i:"",shouldSaveAddress:!1}}getValidButtonStyle(e={}){const{color:t,height:n,label:r,shape:i}=e,o={color:t&&_t[t]?t:void 0,height:this.getValidHeight(n),label:r&&vt[r]?r:void 0,shape:i&&bt[i]?i:void 0};return(0,g.omitBy)(o,g.isNil)}getValidHeight(e){return e&&"number"==typeof e?e>55?55:e<25?25:e:40}removeElement(e){const t=e&&document.getElementById(e);t&&(t.style.display="none")}}const Ot=["ar_BH","ar_DZ","ar_EG","ar_JO","ar_KW","ar_MA","ar_OM","ar_QA","ar_SA","ar_TN","ar_YE","ar_AE","bg_BG","cs_CZ","da_DK","da_FO","da_GL","de_AT","de_CH","de_DE","de_LU","el_GR","en_AD","en_AE","en_AG","en_AI","en_AL","en_AM","en_AN","en_AO","en_AT","en_AU","en_AW","en_AZ","en_BB","en_BE","en_BH","en_BJ","en_BM","en_BN","en_BS","en_BT","en_BW","en_BY","en_BZ","en_C2","en_CA","en_CD","en_CG","en_CH","en_CI","en_CK","en_CL","en_CM","en_CN","en_CO","en_CR","en_CV","en_CY","en_CZ","en_DE","en_DJ","en_DK","en_DM","en_DO","en_DZ","en_EC","en_EE","en_EG","en_ER","en_ES","en_ET","en_FI","en_FJ","en_FK","en_FM","en_FO","en_FR","en_GA","en_GB","en_GD","en_GE","en_GF","en_GI","en_GL","en_GM","en_GN","en_GP","en_GR","en_GT","en_GW","en_GY","en_HK","en_HN","en_HR","en_HU","en_ID","en_IE","en_IL","en_IN","en_IS","en_IT","en_JM","en_JO","en_JP","en_KE","en_KG","en_KH","en_KI","en_KM","en_KN","en_KR","en_KW","en_KY","en_KZ","en_LA","en_LC","en_LI","en_LK","en_LS","en_LT","en_LU","en_LV","en_MA","en_MC","en_MD","en_ME","en_MG","en_MH","en_MK","en_ML","en_MN","en_MQ","en_MR","en_MS","en_MT","en_MU","en_MV","en_MW","en_MY","en_MZ","en_NA","en_NC","en_NE","en_NF","en_NG","en_NI","en_NL","en_NO","en_NP","en_NR","en_NU","en_NZ","en_OM","en_PA","en_PE","en_PF","en_PG","en_PH","en_PL","en_PM","en_PN","en_PT","en_PW","en_PY","en_QA","en_RE","en_RO","en_RS","en_RU","en_RW","en_SA","en_SB","en_SC","en_SE","en_SG","en_SH","en_SI","en_SJ","en_SK","en_SL","en_SM","en_SN","en_SO","en_SR","en_ST","en_SV","en_SZ","en_TC","en_TD","en_TG","en_TH","en_TJ","en_TM","en_TN","en_TO","en_TR","en_TT","en_TV","en_TW","en_TZ","en_UA","en_UG","en_US","en_UY","en_VA","en_VC","en_VE","en_VG","en_VN","en_VU","en_WF","en_WS","en_YE","en_YT","en_ZA","en_ZM","en_ZW","es_AD","es_AI","es_AO","es_AR","es_AW","es_BB","es_BJ","es_BM","es_BO","es_BS","es_BZ","es_CD","es_CG","es_CK","es_CL","es_CO","es_CR","es_CV","es_DJ","es_DM","es_DO","es_DZ","es_EC","es_EG","es_ER","es_ES","es_ET","es_FJ","es_FK","es_FO","es_GA","es_GD","es_GE","es_GI","es_GL","es_GM","es_GN","es_GT","es_GW","es_GY","es_HN","es_IE","es_JM","es_JO","es_KE","es_KG","es_KI","es_KM","es_KN","es_KW","es_KY","es_KZ","es_LC","es_LI","es_LS","es_LU","es_MA","es_MG","es_MH","es_ML","es_MR","es_MS","es_MU","es_MW","es_MX","es_MZ","es_NA","es_NC","es_NE","es_NF","es_NI","es_NR","es_NU","es_NZ","es_OM","es_PA","es_PE","es_PF","es_PG","es_PM","es_PN","es_PW","es_PY","es_QA","es_RS","es_RW","es_SA","es_SB","es_SC","es_SH","es_SJ","es_SL","es_SM","es_SN","es_SO","es_SR","es_ST","es_SV","es_SZ","es_TC","es_TD","es_TG","es_TJ","es_TM","es_TN","es_TT","es_TV","es_UA","es_UG","es_US","es_UY","es_VA","es_VC","es_VE","es_VG","es_VU","es_WF","es_YE","es_ZM","et_EE","fi_FI","fr_AD","fr_AE","fr_AI","fr_AM","fr_AO","fr_AW","fr_AZ","fr_BB","fr_BE","fr_BF","fr_BI","fr_BJ","fr_BM","fr_BS","fr_BZ","fr_CA","fr_CD","fr_CG","fr_CH","fr_CI","fr_CK","fr_CM","fr_CV","fr_DJ","fr_DM","fr_DO","fr_DZ","fr_EC","fr_ER","fr_ET","fr_FJ","fr_FK","fr_FO","fr_FR","fr_GA","fr_GD","fr_GE","fr_GF","fr_GI","fr_GL","fr_GM","fr_GN","fr_GP","fr_GT","fr_GW","fr_GY","fr_HN","fr_IE","fr_JM","fr_JO","fr_KE","fr_KG","fr_KI","fr_KM","fr_KN","fr_KW","fr_KY","fr_KZ","fr_LC","fr_LI","fr_LS","fr_LU","fr_MA","fr_MC","fr_MG","fr_MH","fr_ML","fr_MQ","fr_MR","fr_MS","fr_MU","fr_MW","fr_MZ","fr_NA","fr_NC","fr_NE","fr_NF","fr_NI","fr_NR","fr_NU","fr_NZ","fr_OM","fr_PA","fr_PE","fr_PF","fr_PG","fr_PM","fr_PN","fr_PW","fr_QA","fr_RE","fr_RS","fr_RW","fr_SA","fr_SB","fr_SC","fr_SH","fr_SJ","fr_SL","fr_SM","fr_SN","fr_SO","fr_SR","fr_ST","fr_SV","fr_SZ","fr_TC","fr_TD","fr_TG","fr_TJ","fr_TM","fr_TN","fr_TT","fr_TV","fr_UA","fr_UG","fr_US","fr_UY","fr_VA","fr_VC","fr_VE","fr_VG","fr_VU","fr_WF","fr_YE","fr_YT","fr_ZA","fr_ZM","he_IL","hu_HU","id_ID","it_IT","ja_JP","ko_KR","lv_LV","lt_LT","ms_BN","ms_MY","nl_BE","nl_NL","pl_PL","pt_BR","pt_PT","ro_RO","ru_EE","ru_LT","ru_LV","ru_RU","ru_UA","si_LK","sk_SK","sl_SI","sq_AL","sv_SE","tl_PH","th_TH","tr_TR","vi_VN","zh_C2","zh_CN","zh_HK","zh_TW","zh_AD","zh_AE","zh_AI","zh_AO","zh_AW","zh_BB","zh_BH","zh_BJ","zh_BM","zh_BS","zh_BZ","zh_CD","zh_CG","zh_CK","zh_CL","zh_CO","zh_CV","zh_DJ","zh_DM","zh_DO","zh_DZ","zh_EC","zh_EG","zh_ER","zh_ET","zh_FJ","zh_FK","zh_FO","zh_GA","zh_GD","zh_GE","zh_GI","zh_GL","zh_GM","zh_GN","zh_GT","zh_GW","zh_GY","zh_HN","zh_IE","zh_JM","zh_JO","zh_KE","zh_KG","zh_KI","zh_KM","zh_KN","zh_KW","zh_KY","zh_KZ","zh_LC","zh_LI","zh_LS","zh_LT","zh_LU","zh_MA","zh_MG","zh_MH","zh_ML","zh_MR","zh_MS","zh_MU","zh_MW","zh_MZ","zh_NA","zh_NC","zh_NE","zh_NF","zh_NI","zh_NR","zh_NU","zh_NZ","zh_OM","zh_PA","zh_PE","zh_PF","zh_PG","zh_PM","zh_PN","zh_PW","zh_QA","zh_RS","zh_RW","zh_SA","zh_SB","zh_SC","zh_SH","zh_SJ","zh_SL","zh_SM","zh_SN","zh_SO","zh_SR","zh_ST","zh_SV","zh_SZ","zh_TC","zh_TD","zh_TG","zh_TJ","zh_TM","zh_TN","zh_TT","zh_TV","zh_UA","zh_UG","zh_US","zh_UY","zh_VA","zh_VC","zh_VE","zh_VG","zh_VU","zh_WF","zh_YE","zh_ZA","zh_ZM"];function At(e){if(!e)return;let t;if(e.includes("-")){const[n,r]=e.split("-");t=`${n}_${r.toUpperCase()}`}else t=`${e}_${e.toUpperCase()}`;return Ot.includes(t)?t:void 0}var Et=function(e,t,n,r){return new(n||(n=Promise))(function(i,o){function a(e){try{c(r.next(e))}catch(e){o(e)}}function s(e){try{c(r.throw(e))}catch(e){o(e)}}function c(e){var t;e.done?i(e.value):(t=e.value,t instanceof n?t:new n(function(e){e(t)})).then(a,s)}c((r=r.apply(e,t||[])).next())})};class kt{constructor(e){this.scriptLoader=e,this.window=window}getPayPalSDK(e,t,n,r,i){return Et(this,void 0,void 0,function*(){if(!this.window.paypal||i){const i=this.getPayPalSdkScriptConfigOrThrow(e,t,n,r);if(yield this.loadPayPalSdk(i),!this.window.paypal)throw new o}return this.window.paypal})}getPayPalFastlaneSdk(e,t,n,r){return Et(this,void 0,void 0,function*(){if(!this.window.paypalFastlaneSdk){const i=this.getPayPalFastlaneSdkConfiguration(e,t,n,r);if(yield this.loadPayPalSdk(i),!this.window.paypalFastlaneSdk)throw new o}return this.window.paypalFastlaneSdk})}getPayPalGooglePaySdk(e,t,n,r,i){return Et(this,void 0,void 0,function*(){if(!this.window.paypalGooglePay||i){const i=this.getPayPalGooglePaySdkScriptConfigOrThrow(e,t,n,r);yield this.loadPayPalSdk(i)}if(!this.window.paypalGooglePay)throw new o;return this.window.paypalGooglePay})}getPayPalApmsSdk(e,t,n){return Et(this,void 0,void 0,function*(){if(!this.window.paypalApms){const r=this.getPayPalApmSdkConfiguration(e,t,n);if(yield this.loadPayPalSdk(r),!this.window.paypalApms)throw new o}return this.window.paypalApms})}getPayPalMessages(e,t,n){return Et(this,void 0,void 0,function*(){if(!this.window.paypalMessages){const r=this.getPayPalSdkMessagesConfiguration(e,t,n);yield this.loadPayPalSdk(r)}if(!this.window.paypalMessages)throw new o;return this.window.paypalMessages})}loadPayPalSdk(e){return Et(this,arguments,void 0,function*({options:e,attributes:t}){const n=this.transformConfig(e),r=this.transformConfig(t),i=`https://www.paypal.com/sdk/js?${new URLSearchParams(n).toString()}`;yield this.scriptLoader.loadScript(i,{async:!0,attributes:r})})}getPayPalSdkScriptConfigOrThrow(t,n,r,i=!0){const{id:o,clientToken:s,initializationData:c}=t;if(!c||!c.clientId)throw new a(e.MissingPaymentMethod);const{intent:u,clientId:l,merchantId:d,buyerCountry:h,attributionId:p,isVenmoEnabled:f,isHostedCheckoutEnabled:m,isPayPalCreditAvailable:y,isDeveloperModeApplicable:g,availableAlternativePaymentMethods:v=[],enabledAlternativePaymentMethods:_=[],isGooglePayEnabled:b}=c,P=m||i,S="paypalcommercecreditcards"===o||"bigcommerce_payments_creditcards"===o,w=S?["card"]:[],I=S?[]:["card"],C=y?["credit","paylater"]:[],O=y?[]:["credit","paylater"],A=f?["venmo"]:[],E=f?[]:["venmo"],k=v.filter(e=>!_.includes(e)),z=b?["googlepay"]:[],T=i?["card-fields"]:[],j=this.filterFundingOptions([...I,...O,...E,...k]),x=this.filterFundingOptions([...w,...C,...A,..._]),B=At(r);return{options:Object.assign(Object.assign({"client-id":l,"merchant-id":d,"enable-funding":x.length>0?x:void 0,"disable-funding":j.length>0?j:void 0,commit:P,components:["buttons","hosted-fields","payment-fields","legal",...z,...T],currency:n,intent:u},g&&{"buyer-country":h}),B&&{locale:B}),attributes:{"data-partner-attribution-id":p,"data-client-token":s}}}getPayPalFastlaneSdkConfiguration(t,n,r,i){const{clientToken:o,initializationData:s}=t;if(!s||!s.clientId)throw new a(e.MissingPaymentMethod);const{intent:c,clientId:u,merchantId:l,attributionId:d}=s,h=At(i);return{options:Object.assign(Object.assign({"client-id":u,"merchant-id":l,commit:!0,components:["fastlane","buttons","payment-fields","hosted-fields","three-domain-secure"],currency:n},h&&{locale:h}),{intent:c}),attributes:{"data-client-metadata-id":r.replace(/-/g,""),"data-namespace":"paypalFastlaneSdk","data-partner-attribution-id":d,"data-sdk-client-token":o}}}getPayPalGooglePaySdkScriptConfigOrThrow(t,n,r,i=!0){const{clientToken:o,initializationData:s}=t;if(!s||!s.clientId)throw new a(e.MissingPaymentMethod);const{intent:c,clientId:u,merchantId:l,buyerCountry:d,attributionId:h,isHostedCheckoutEnabled:p,isDeveloperModeApplicable:f}=s,m=p||i,y=At(r);return{options:Object.assign(Object.assign({"client-id":u,"merchant-id":l,commit:m,components:["googlepay"],currency:n,intent:c},f&&{"buyer-country":d}),y&&{locale:y}),attributes:{"data-partner-attribution-id":h,"data-client-token":o,"data-namespace":"paypalGooglePay"}}}getPayPalApmSdkConfiguration(t,n,r){const{initializationData:i}=t;if(!i||!i.clientId)throw new a(e.MissingPaymentMethod);const{intent:o,clientId:s,merchantId:c,buyerCountry:u,attributionId:l,isDeveloperModeApplicable:d,availableAlternativePaymentMethods:h=[],enabledAlternativePaymentMethods:p=[]}=i,f=this.filterFundingOptions(p),m=this.filterFundingOptions(h.filter(e=>!p.includes(e))),y=At(r);return{options:Object.assign(Object.assign({"client-id":s,"merchant-id":c,"enable-funding":f.length>0?f:void 0,"disable-funding":m.length>0?m:void 0,commit:!0,components:["buttons","payment-fields"],currency:n,intent:o},d&&{"buyer-country":u}),y&&{locale:y}),attributes:{"data-partner-attribution-id":l,"data-namespace":"paypalApms"}}}getPayPalSdkMessagesConfiguration(t,n,r){const{initializationData:i}=t;if(!i||!i.clientId)throw new a(e.MissingPaymentMethod);const{clientId:o,merchantId:s,attributionId:c,isDeveloperModeApplicable:u,buyerCountry:l}=i,d=At(r);return{options:Object.assign(Object.assign({"client-id":o,"merchant-id":s,components:["messages"],currency:n},u&&{"buyer-country":l}),d&&{locale:d}),attributes:{"data-namespace":"paypalMessages","data-partner-attribution-id":c}}}filterFundingOptions(e){const t=["klarna","afterpay"];return e?e.filter(e=>!t.includes(e)):[]}transformConfig(e){let t={};return Object.keys(e).forEach(n=>{const r=e[n];null==r||""===r||Array.isArray(r)&&0===r.length||(t=Object.assign(Object.assign({},t),{[n]:Array.isArray(r)?r.join(","):r}))}),t}}function zt(){return new kt((0,t.vQ)())}var Tt=function(e,t,n,r){return new(n||(n=Promise))(function(i,o){function a(e){try{c(r.next(e))}catch(e){o(e)}}function s(e){try{c(r.throw(e))}catch(e){o(e)}}function c(e){var t;e.done?i(e.value):(t=e.value,t instanceof n?t:new n(function(e){e(t)})).then(a,s)}c((r=r.apply(e,t||[])).next())})};class jt{constructor(e){this.bigCommercePaymentsWalletService=e}initialize(e){return Tt(this,void 0,void 0,function*(){var t,n;const{bigcommerce_paymentspaypal:r,containerId:i,methodId:o}=e;if(!o)throw new L('Unable to initialize payment because "options.methodId" argument is not provided.');if(!i)throw new L('Unable to initialize payment because "options.containerId" argument is not provided.');if(!r)throw new L('Unable to initialize payment because "options.bigcommerce_paymentspaypal" argument is not provided.');let a;try{a=JSON.parse(atob(r.initializationData))}catch(e){throw new L("Failed to parse payment method 'initializationData'.")}const s=null===(n=null===(t=a.initializationData)||void 0===t?void 0:t.paymentButtonStyles)||void 0===n?void 0:n.cartButtonStyles;yield this.bigCommercePaymentsWalletService.loadPayPalSdk(a,r.currency.code,!1),this.renderButton(i,"bigcommerce_payments.paypal",r.cartId,s)})}deinitialize(){return Promise.resolve()}renderButton(e,t,n,r){const i=this.bigCommercePaymentsWalletService.getPayPalSdkOrThrow(),o={createOrder:()=>this.bigCommercePaymentsWalletService.createPaymentOrderIntent(t,n),onApprove:(e,r)=>Tt(this,[e,r],void 0,function*({orderID:e},r){const i=yield r.order.get(),o=this.bigCommercePaymentsWalletService.mapOrderDetailsToBillingAddress(i);yield this.bigCommercePaymentsWalletService.addBillingAddress(n,o),yield this.bigCommercePaymentsWalletService.proxyTokenizationPayment(n,t,"bigcommerce_payments",e)})},a=Object.assign({fundingSource:i.FUNDING.PAYPAL,style:this.bigCommercePaymentsWalletService.getValidButtonStyle(r)},o),s=i.Buttons(a);s.isEligible()?s.render(`#${e}`):this.bigCommercePaymentsWalletService.removeElement(e)}}const xt=l(e=>new jt(new Ct(e,zt(),"BigcommercePaymentWalletIntentData")),[{id:"bigcommerce_paymentspaypal"}]);var Bt=function(e,t,n,r){return new(n||(n=Promise))(function(i,o){function a(e){try{c(r.next(e))}catch(e){o(e)}}function s(e){try{c(r.throw(e))}catch(e){o(e)}}function c(e){var t;e.done?i(e.value):(t=e.value,t instanceof n?t:new n(function(e){e(t)})).then(a,s)}c((r=r.apply(e,t||[])).next())})};class Mt{constructor(e){this.bigCommercePaymentsPayLaterWalletService=e}initialize(e){return Bt(this,void 0,void 0,function*(){var t,n;const{bigcommerce_paymentspaypalcredit:r,containerId:i,methodId:o}=e;if(!o)throw new L('Unable to initialize payment because "options.methodId" argument is not provided.');if(!i)throw new L('Unable to initialize payment because "options.containerId" argument is not provided.');if(!r)throw new L('Unable to initialize payment because "options.bigcommerce_paymentspaypalcredit" argument is not provided.');let a;try{a=JSON.parse(atob(r.initializationData))}catch(e){throw new L("Failed to parse payment method 'initializationData'.")}const s=null===(n=null===(t=a.initializationData)||void 0===t?void 0:t.paymentButtonStyles)||void 0===n?void 0:n.cartButtonStyles;yield this.bigCommercePaymentsPayLaterWalletService.loadPayPalSdk(a,r.currency.code,!1),this.renderButton(i,"bigcommerce_payments.paypalcredit",r.cartId,s)})}deinitialize(){return Promise.resolve()}renderButton(e,t,n,r){const i=this.bigCommercePaymentsPayLaterWalletService.getPayPalSdkOrThrow(),o=[i.FUNDING.PAYLATER,i.FUNDING.CREDIT],a={createOrder:()=>this.bigCommercePaymentsPayLaterWalletService.createPaymentOrderIntent(t,n),onApprove:(e,r)=>Bt(this,[e,r],void 0,function*({orderID:e},r){const i=yield r.order.get(),o=this.bigCommercePaymentsPayLaterWalletService.mapOrderDetailsToBillingAddress(i);yield this.bigCommercePaymentsPayLaterWalletService.addBillingAddress(n,o),yield this.bigCommercePaymentsPayLaterWalletService.proxyTokenizationPayment(n,t,"bigcommerce_payments_paylater",e)})};let s=!1;o.forEach(t=>{if(!s){const n=Object.assign({fundingSource:t,style:this.bigCommercePaymentsPayLaterWalletService.getValidButtonStyle(r)},a),o=i.Buttons(n);o.isEligible()&&(o.render(`#${e}`),s=!0)}}),s||this.bigCommercePaymentsPayLaterWalletService.removeElement(e)}}const Ft=l(e=>new Mt(new Ct(e,zt(),"BigcommercePaymentWalletIntentData")),[{id:"bigcommerce_paymentspaypalcredit"}])})(),module.exports=r})();
|
|
2
2
|
//# sourceMappingURL=bigcommerce-payments.js.map
|