@insure-os/client 0.0.77 → 0.0.79
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/bundle-sizes.json +11 -11
- package/dist/index.cjs +1 -1
- package/dist/index.cjs.map +1 -1
- package/dist/index.esm.js +1 -1
- package/dist/index.esm.js.map +1 -1
- package/dist/index.umd.js +1 -1
- package/dist/index.umd.js.map +1 -1
- package/package.json +1 -1
package/dist/index.umd.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
!function(e,t){"object"==typeof exports&&"undefined"!=typeof module?t(exports):"function"==typeof define&&define.amd?define(["exports"],t):t((e="undefined"!=typeof globalThis?globalThis:e||self).InsureOSScripts={})}(this,function(e){"use strict";const t=()=>{globalThis.insureOSDebug};var n,r,i,o,s,a,l,c,d,u,h,m,f,p,g,y,v={},w=[],b=/acit|ex(?:s|g|n|p|$)|rph|grid|ows|mnc|ntw|ine[ch]|zoo|^ord|itera/i,x=Array.isArray;function k(e,t){for(var n in t)e[n]=t[n];return e}function N(e){e&&e.parentNode&&e.parentNode.removeChild(e)}function S(e,t,r){var i,o,s,a={};for(s in t)"key"==s?i=t[s]:"ref"==s?o=t[s]:a[s]=t[s];if(arguments.length>2&&(a.children=arguments.length>3?n.call(arguments,2):r),"function"==typeof e&&null!=e.defaultProps)for(s in e.defaultProps)void 0===a[s]&&(a[s]=e.defaultProps[s]);return C(e,a,i,o,null)}function C(e,t,n,o,s){var a={type:e,props:t,key:n,ref:o,i:null,m:null,p:0,v:null,k:null,constructor:void 0,N:null==s?++i:s,C:-1,_:0};return null==s&&null!=r.vnode&&r.vnode(a),a}function _(e){return e.children}function $(e,t){this.props=e,this.context=t}function I(e,t){if(null==t)return e.m?I(e.m,e.C+1):null;for(var n;t<e.i.length;t++)if(null!=(n=e.i[t])&&null!=n.v)return n.v;return"function"==typeof e.type?I(e):null}function T(e){if(e.I&&e.P){var t=e.N,n=t.v,i=[],o=[],s=k({},t);s.N=t.N+1,r.vnode&&r.vnode(s),L(e.I,s,t,e.R,e.I.namespaceURI,32&t._?[n]:null,i,null==n?I(t):n,!!(32&t._),o),s.N=t.N,s.m.i[s.C]=s,q(i,s,o),t.v=t.m=null,s.v!=n&&E(s)}}function E(e){if(null!=(e=e.m)&&null!=e.k)return e.v=e.k.base=null,e.i.some(function(t){if(null!=t&&null!=t.v)return e.v=e.k.base=t.v}),E(e)}function P(e){(!e.P&&(e.P=!0)&&o.push(e)&&!z.O++||s!=r.debounceRendering)&&((s=r.debounceRendering)||a)(z)}function z(){try{for(var e,t=1;o.length;)o.length>t&&o.sort(l),e=o.shift(),t=o.length,T(e)}finally{o.length=z.O=0}}function D(e,t,n,r,i,o,s,a,l,c,d){var u,h,m,f,p,g,y,b=r&&r.i||w,x=t.length;for(l=R(n,t,b,l,x),u=0;u<x;u++)null!=(m=n.i[u])&&(h=-1!=m.C&&b[m.C]||v,m.C=u,g=L(e,m,h,i,o,s,a,l,c,d),f=m.v,m.ref&&h.ref!=m.ref&&(h.ref&&U(h.ref,null,m),d.push(m.ref,m.k||f,m)),null==p&&null!=f&&(p=f),(y=!!(4&m._))||h.i===m.i?(l=M(m,l,e,y),y&&h.v&&(h.v=null)):"function"==typeof m.type&&void 0!==g?l=g:f&&(l=f.nextSibling),m._&=-7);return n.v=p,l}function R(e,t,n,r,i){var o,s,a,l,c,d=n.length,u=d,h=0;for(e.i=new Array(i),o=0;o<i;o++)null!=(s=t[o])&&"boolean"!=typeof s&&"function"!=typeof s?("string"==typeof s||"number"==typeof s||"bigint"==typeof s||s.constructor==String?s=e.i[o]=C(null,s,null,null,null):x(s)?s=e.i[o]=C(_,{children:s},null,null,null):void 0===s.constructor&&s.p>0?s=e.i[o]=C(s.type,s.props,s.key,s.ref?s.ref:null,s.N):e.i[o]=s,l=o+h,s.m=e,s.p=e.p+1,a=null,-1!=(c=s.C=O(s,n,l,u))&&(u--,(a=n[c])&&(a._|=2)),null==a||null==a.N?(-1==c&&(i>d?h--:i<d&&h++),"function"!=typeof s.type&&(s._|=4)):c!=l&&(c==l-1?h--:c==l+1?h++:(c>l?h--:h++,s._|=4))):e.i[o]=null;if(u)for(o=0;o<d;o++)null!=(a=n[o])&&!(2&a._)&&(a.v==r&&(r=I(a)),Y(a,a));return r}function M(e,t,n,r){var i,o;if("function"==typeof e.type){for(i=e.i,o=0;i&&o<i.length;o++)i[o]&&(i[o].m=e,t=M(i[o],t,n,r));return t}e.v!=t&&(r&&(t&&e.type&&!t.parentNode&&(t=I(e)),n.insertBefore(e.v,t||null)),t=e.v);do{t=t&&t.nextSibling}while(null!=t&&8==t.nodeType);return t}function O(e,t,n,r){var i,o,s,a=e.key,l=e.type,c=t[n],d=null!=c&&!(2&c._);if(null===c&&null==a||d&&a==c.key&&l==c.type)return n;if(r>(d?1:0))for(i=n-1,o=n+1;i>=0||o<t.length;)if(null!=(c=t[s=i>=0?i--:o++])&&!(2&c._)&&a==c.key&&l==c.type)return s;return-1}function j(e,t,n){"-"==t[0]?e.setProperty(t,null==n?"":n):e[t]=null==n?"":"number"!=typeof n||b.test(t)?n:n+"px"}function W(e,t,n,r,i){var o,s;e:if("style"==t)if("string"==typeof n)e.style.cssText=n;else{if("string"==typeof r&&(e.style.cssText=r=""),r)for(t in r)n&&t in n||j(e.style,t,"");if(n)for(t in n)r&&n[t]==r[t]||j(e.style,t,n[t])}else if("o"==t[0]&&"n"==t[1])o=t!=(t=t.replace(h,"$1")),s=t.toLowerCase(),t=s in e||"onFocusOut"==t||"onFocusIn"==t?s.slice(2):t.slice(2),e.l||(e.l={}),e.l[t+o]=n,n?r?n[u]=r[u]:(n[u]=m,e.addEventListener(t,o?p:f,o)):e.removeEventListener(t,o?p:f,o);else{if("http://www.w3.org/2000/svg"==i)t=t.replace(/xlink(H|:h)/,"h").replace(/sName$/,"s");else if("width"!=t&&"height"!=t&&"href"!=t&&"list"!=t&&"form"!=t&&"tabIndex"!=t&&"download"!=t&&"rowSpan"!=t&&"colSpan"!=t&&"role"!=t&&"popover"!=t&&t in e)try{e[t]=null==n?"":n;break e}catch(e){}"function"==typeof n||(null==n||!1===n&&"-"!=t[4]?e.removeAttribute(t):e.setAttribute(t,"popover"==t&&1==n?"":n))}}function A(e){return function(t){if(this.l){var n=this.l[t.type+e];if(null==t[d])t[d]=m++;else if(t[d]<n[u])return;return n(r.event?r.event(t):t)}}}function L(e,t,n,i,o,s,a,l,c,d){var u,h,m,f,p,g,y,v,b,S,C,I,T,E,P,z=t.type;if(void 0!==t.constructor)return null;128&n._&&(c=!!(32&n._),s=[l=t.v=n.v]),(u=r.p)&&u(t);e:if("function"==typeof z)try{if(v=t.props,b=z.prototype&&z.prototype.render,S=(u=z.contextType)&&i[u.k],C=u?S?S.props.value:u.m:i,n.k?y=(h=t.k=n.k).m=h.j:(b?t.k=h=new z(v,C):(t.k=h=new $(v,C),h.constructor=z,h.render=Z),S&&S.sub(h),h.state||(h.state={}),h.R=i,m=h.P=!0,h.W=[],h.A=[]),b&&null==h.L&&(h.L=h.state),b&&null!=z.getDerivedStateFromProps&&(h.L==h.state&&(h.L=k({},h.L)),k(h.L,z.getDerivedStateFromProps(v,h.L))),f=h.props,p=h.state,h.N=t,m)b&&null==z.getDerivedStateFromProps&&null!=h.componentWillMount&&h.componentWillMount(),b&&null!=h.componentDidMount&&h.W.push(h.componentDidMount);else{if(b&&null==z.getDerivedStateFromProps&&v!==f&&null!=h.componentWillReceiveProps&&h.componentWillReceiveProps(v,C),t.N==n.N||!h.v&&null!=h.shouldComponentUpdate&&!1===h.shouldComponentUpdate(v,h.L,C)){t.N!=n.N&&(h.props=v,h.state=h.L,h.P=!1),t.v=n.v,t.i=n.i,t.i.some(function(e){e&&(e.m=t)}),w.push.apply(h.W,h.A),h.A=[],h.W.length&&a.push(h);break e}null!=h.componentWillUpdate&&h.componentWillUpdate(v,h.L,C),b&&null!=h.componentDidUpdate&&h.W.push(function(){h.componentDidUpdate(f,p,g)})}if(h.context=C,h.props=v,h.I=e,h.v=!1,I=r.O,T=0,b)h.state=h.L,h.P=!1,I&&I(t),u=h.render(h.props,h.state,h.context),w.push.apply(h.W,h.A),h.A=[];else do{h.P=!1,I&&I(t),u=h.render(h.props,h.state,h.context),h.state=h.L}while(h.P&&++T<25);h.state=h.L,null!=h.getChildContext&&(i=k(k({},i),h.getChildContext())),b&&!m&&null!=h.getSnapshotBeforeUpdate&&(g=h.getSnapshotBeforeUpdate(f,p)),E=null!=u&&u.type===_&&null==u.key?F(u.props.children):u,l=D(e,x(E)?E:[E],t,n,i,o,s,a,l,c,d),h.base=t.v,t._&=-161,h.W.length&&a.push(h),y&&(h.j=h.m=null)}catch(e){if(t.N=null,c||null!=s)if(e.then){for(t._|=c?160:128;l&&8==l.nodeType&&l.nextSibling;)l=l.nextSibling;s[s.indexOf(l)]=null,t.v=l}else{for(P=s.length;P--;)N(s[P]);B(t)}else t.v=n.v,t.i=n.i,e.then||B(t);r.v(e,t,n)}else null==s&&t.N==n.N?(t.i=n.i,t.v=n.v):l=t.v=H(n.v,t,n,i,o,s,a,c,d);return(u=r.diffed)&&u(t),128&t._?void 0:l}function B(e){e&&(e.k&&(e.k.v=!0),e.i&&e.i.some(B))}function q(e,t,n){for(var i=0;i<n.length;i++)U(n[i],n[++i],n[++i]);r.k&&r.k(t,e),e.some(function(t){try{e=t.W,t.W=[],e.some(function(e){e.call(t)})}catch(e){r.v(e,t.N)}})}function F(e){return"object"!=typeof e||null==e||e.p>0?e:x(e)?e.map(F):k({},e)}function H(e,t,i,o,s,a,l,c,d){var u,h,m,f,p,g,y,w=i.props||v,b=t.props,k=t.type;if("svg"==k?s="http://www.w3.org/2000/svg":"math"==k?s="http://www.w3.org/1998/Math/MathML":s||(s="http://www.w3.org/1999/xhtml"),null!=a)for(u=0;u<a.length;u++)if((p=a[u])&&"setAttribute"in p==!!k&&(k?p.localName==k:3==p.nodeType)){e=p,a[u]=null;break}if(null==e){if(null==k)return document.createTextNode(b);e=document.createElementNS(s,k,b.is&&b),c&&(r.B&&r.B(t,a),c=!1),a=null}if(null==k)w===b||c&&e.data==b||(e.data=b);else{if(a=a&&n.call(e.childNodes),!c&&null!=a)for(w={},u=0;u<e.attributes.length;u++)w[(p=e.attributes[u]).name]=p.value;for(u in w)p=w[u],"dangerouslySetInnerHTML"==u?m=p:"children"==u||u in b||"value"==u&&"defaultValue"in b||"checked"==u&&"defaultChecked"in b||W(e,u,null,p,s);for(u in b)p=b[u],"children"==u?f=p:"dangerouslySetInnerHTML"==u?h=p:"value"==u?g=p:"checked"==u?y=p:c&&"function"!=typeof p||w[u]===p||W(e,u,p,w[u],s);if(h)c||m&&(h.H==m.H||h.H==e.innerHTML)||(e.innerHTML=h.H),t.i=[];else if(m&&(e.innerHTML=""),D("template"==t.type?e.content:e,x(f)?f:[f],t,i,o,"foreignObject"==k?"http://www.w3.org/1999/xhtml":s,a,l,a?a[0]:i.i&&I(i,0),c,d),null!=a)for(u=a.length;u--;)N(a[u]);c||(u="value","progress"==k&&null==g?e.removeAttribute("value"):null!=g&&(g!==e[u]||"progress"==k&&!g||"option"==k&&g!=w[u])&&W(e,u,g,w[u],s),u="checked",null!=y&&y!=e[u]&&W(e,u,y,w[u],s))}return e}function U(e,t,n){try{if("function"==typeof e){var i="function"==typeof e._;i&&e._(),i&&null==t||(e._=e(t))}else e.current=t}catch(e){r.v(e,n)}}function Y(e,t,n){var i,o;if(r.unmount&&r.unmount(e),(i=e.ref)&&(i.current&&i.current!=e.v||U(i,null,t)),null!=(i=e.k)){if(i.componentWillUnmount)try{i.componentWillUnmount()}catch(e){r.v(e,t)}i.base=i.I=null}if(i=e.i)for(o=0;o<i.length;o++)i[o]&&Y(i[o],t,n||"function"!=typeof e.type);n||N(e.v),e.k=e.m=e.v=void 0}function Z(e,t,n){return this.constructor(e,n)}n=w.slice,r={v:function(e,t,n,r){for(var i,o,s;t=t.m;)if((i=t.k)&&!i.m)try{if((o=i.constructor)&&null!=o.getDerivedStateFromError&&(i.setState(o.getDerivedStateFromError(e)),s=i.P),null!=i.componentDidCatch&&(i.componentDidCatch(e,r||{}),s=i.P),s)return i.j=i}catch(t){e=t}throw e}},i=0,$.prototype.setState=function(e,t){var n;n=null!=this.L&&this.L!=this.state?this.L:this.L=k({},this.state),"function"==typeof e&&(e=e(k({},n),this.props)),e&&k(n,e),null!=e&&this.N&&(t&&this.A.push(t),P(this))},$.prototype.forceUpdate=function(e){this.N&&(this.v=!0,e&&this.W.push(e),P(this))},$.prototype.render=_,o=[],a="function"==typeof Promise?Promise.prototype.then.bind(Promise.resolve()):setTimeout,l=function(e,t){return e.N.p-t.N.p},z.O=0,c=Math.random().toString(8),d="__d"+c,u="__a"+c,h=/(PointerCapture)$|Capture$/i,m=0,f=A(!1),p=A(!0),g=0,e.ErrorType=void 0,(y=e.ErrorType||(e.ErrorType={})).NETWORK_ERROR="NETWORK_ERROR",y.API_ERROR="API_ERROR",y.VALIDATION_ERROR="VALIDATION_ERROR",y.STORAGE_ERROR="STORAGE_ERROR",y.TIMEOUT_ERROR="TIMEOUT_ERROR",y.MAINTENANCE_ERROR="MAINTENANCE_ERROR";class G extends Error{constructor(e,t,n=!1,r,i,o,s){super(t),this.type=e,this.retryable=n,this.statusCode=r,this.retryAfter=i,this.validationErrors=o,this.organisation=s,this.name="InsureOSError"}}class V{constructor(e){this.config=e}shouldRetry(e,t){return!(t>=this.config.maxRetries)&&this.isRetryableError(e)}getDelay(e,t){if(t){const e=parseInt(t,10);if(!isNaN(e))return 1e3*e}const n=this.config.baseDelay*Math.pow(2,e);return Math.min(n,this.config.maxDelay)}isRetryableError(e){return e instanceof G?e.retryable:!("TypeError"!==e.name||!e.message.includes("fetch"))||"AbortError"===e.name}}class Q{constructor(e){this.config=e,this.retryStrategy=new V(e.retryConfig)}getBaseUrl(){return this.config.apiBaseUrl||"https://api.os.insure"}async makeRequest({url:t,method:n,body:r,skipOrgHeader:i=!1}){return this.executeWithRetry(async()=>{const o=new AbortController,s=setTimeout(()=>o.abort(),this.config.timeout);try{const e={"Content-Type":"application/json"},a=t.includes("signed=");i||a||(e["X-Organisation-ID"]=this.config.orgId);const l={method:n,headers:e,signal:o.signal};r&&(l.body=JSON.stringify(r));const c=await fetch(t,l);if(clearTimeout(s),!c.ok)throw await this.handleApiError(c);const d=await c.json();return d.data||d}catch(t){if(clearTimeout(s),t instanceof G)throw t;if(t instanceof Error&&"AbortError"===t.name)throw new G(e.ErrorType.TIMEOUT_ERROR,"Request timed out",!0);if(t instanceof TypeError&&t.message.includes("fetch"))throw new G(e.ErrorType.NETWORK_ERROR,"Network connection failed. Please check your internet connection.",!0);throw t}})}getQuoteIntent(e){return this.makeRequest({url:e,method:"GET"})}async fetchAvailableProducts(e){var n;const r=null==e?void 0:e.includes("*"),i=!e||0===e.length,o=`${this.config.apiBaseUrl}/products`,s=await this.makeRequest({url:o,method:"GET"}),a=s.products||[],l=null===(n=s.organisation)||void 0===n?void 0:n.client_settings;let c=a;if(r)t(),c=a;else if(e&&e.length>0)c=a.filter(t=>e.includes(t.code));else if(i&&(null==l?void 0:l.products)&&l.products.length>0){const e=l.products.map(e=>e.code);c=e.map(e=>a.find(t=>t.code===e)).filter(e=>void 0!==e),t((a.length,c.length))}else i&&(t(),c=a);return{products:c,organisation:s.organisation}}createQuoteIntent(e){return this.makeRequest({url:`${this.config.apiBaseUrl}/quote-intents`,method:"POST",body:e})}updateQuoteIntent(e,t){return this.makeRequest({url:e,method:"PUT",body:t})}deleteQuoteIntent(e){return this.makeRequest({url:e,method:"DELETE"})}calculateQuoteIntent(e){return this.makeRequest({url:e,method:"POST"})}calculateQuoteIntentV2(e){return this.makeRequest({url:e,method:"POST"})}repriceQuoteIntentV2(e,t){return this.makeRequest({url:e,method:"POST",body:t})}bindQuoteIntentV2(e,t){return this.makeRequest({url:e,method:"POST",body:t})}deleteCalculations(e){return this.makeRequest({url:e,method:"DELETE"})}initiatePayment(e,t){const n="string"==typeof t?t:t.code;return this.makeRequest({url:`${this.config.apiBaseUrl}/payments/initiate`,method:"POST",body:{...e,gateway_code:n}})}getPaymentStatus(e,t){return this.makeRequest({url:`${this.config.apiBaseUrl}/payments/status/${e}`,method:"GET"})}createQuotePaymentLink(e,t){return this.makeRequest({url:`${this.config.apiBaseUrl}/quote-intents/${e}/payment-link`,method:"POST",body:t})}continueLater(e,t){return this.makeRequest({url:`${this.config.apiBaseUrl}/quote-intents/${e}/continue-later`,method:"POST",body:{email:t}})}resumeQuoteIntent(e){return this.makeRequest({url:`${this.config.apiBaseUrl}/quote-intents/${e}/resume`,method:"GET"})}getPaymentLinkDetails(e){return this.makeRequest({url:e,method:"GET",skipOrgHeader:!0})}getPaymentLinkById(e){return this.makeRequest({url:`${this.config.apiBaseUrl}/payment-links/${e}`,method:"GET"})}initiateFixedPayment(e,t,n,r){return this.makeRequest({url:`${this.config.apiBaseUrl}/payment-links/${e}/pay`,method:"POST",body:{gateway_code:t,client_name:n,...r?{gateway_method:r}:{}}})}validateCoverStartDate(e,t){return this.makeRequest({url:`${this.config.apiBaseUrl}/payment-links/${e}/validate-cover-date`,method:"POST",body:{cover_start_date:t}})}validateQuoteCoverStartDate(e,t){return this.makeRequest({url:`${this.config.apiBaseUrl}/quote-intents/${e}/validate-cover-date`,method:"POST",body:{cover_start_date:t}})}resolvePaymentTransaction(e){return this.makeRequest({url:`${this.config.apiBaseUrl}/payments/${e}/resolve`,method:"POST",body:{}})}validatePromoCode(e,t){return this.makeRequest({url:`${this.config.apiBaseUrl}/quote-intents/${e}/validate-promo-code`,method:"POST",body:{code:t}})}async executeWithRetry(e){let n;for(let r=0;r<=this.config.retryConfig.maxRetries;r++)try{return t(this.config.retryConfig.maxRetries),await e()}catch(e){n=e;const i=this.retryStrategy.shouldRetry(n,r);if(t(e instanceof G&&(e.type,e.message)),t(this.config.retryConfig.maxRetries),r===this.config.retryConfig.maxRetries||!i)throw t(),n;const o=e instanceof G?e.retryAfter:void 0,s=this.retryStrategy.getDelay(r,o);t(),await new Promise(e=>setTimeout(e,s))}throw n}async handleApiError(n){var r,i;const o=n.headers.get("retry-after"),s=await n.json().catch(()=>({}));if(t(),this.captureApiErrorToSentry(n,s),503===n.status)return new G(e.ErrorType.MAINTENANCE_ERROR,s.message||"We're performing scheduled maintenance. Please check back in a few minutes.",!1,n.status,void 0,void 0,null!==(r=s.organisation)&&void 0!==r?r:null);if(429===n.status)return new G(e.ErrorType.API_ERROR,"Too many requests. Please wait a moment and try again.",!1,n.status,o||void 0);if(n.status>=500){const t=s.message||"Service temporarily unavailable. Please try again in a moment.";return new G(e.ErrorType.API_ERROR,t,!1,n.status)}if(422===n.status)try{const t=s;return t.error&&t.error.details&&t.error.details.form_data?new G(e.ErrorType.VALIDATION_ERROR,"Form validation failed. Please check your inputs.",!1,n.status,void 0,t.error.details):new G(e.ErrorType.VALIDATION_ERROR,t.message||"Validation failed. Please check your inputs.",!1,n.status,void 0,null===(i=t.error)||void 0===i?void 0:i.details)}catch(t){return new G(e.ErrorType.VALIDATION_ERROR,"Validation failed. Please check your inputs.",!1,n.status)}if(400===n.status)try{const t=s;return t.errors?new G(e.ErrorType.VALIDATION_ERROR,t.message||"Form validation failed. Please check your inputs.",!1,n.status,void 0,t.errors):new G(e.ErrorType.API_ERROR,t.message||"Invalid request. Please check your input and try again.",!1,n.status)}catch(t){return new G(e.ErrorType.API_ERROR,"Invalid request. Please refresh the page and try again.",!1,n.status)}if(n.status>=400&&n.status<500){const t=s.message||"Invalid request. Please refresh the page and try again.";return new G(e.ErrorType.API_ERROR,t,!1,n.status)}return new G(e.ErrorType.API_ERROR,`Request failed: ${n.statusText}`,this.config.retryConfig.retryableStatusCodes.includes(n.status),n.status)}captureApiErrorToSentry(e,t){try{(e.status>=500||429===e.status)&&Promise.resolve().then(function(){return Ih}).then(({captureMessage:n,addBreadcrumb:r,isSentryInitialized:i})=>{i()&&(r({message:`API Error: ${e.status} ${e.statusText}`,category:"http",level:"error",data:{url:e.url,status:e.status,statusText:e.statusText}}),n(`API Error: ${e.status} - ${e.url}`,"error",{http:{status_code:e.status,url:e.url,method:"Unknown"},response:t}))}).catch(()=>{})}catch(e){}}}class J{constructor(){this.available=this.checkAvailability()}get(e){if(!this.available)return null;try{return localStorage.getItem(e)}catch(e){return null}}set(e,t){if(this.available)try{localStorage.setItem(e,t)}catch(e){}}remove(e){if(this.available)try{localStorage.removeItem(e)}catch(e){}}clear(){if(this.available)try{localStorage.clear()}catch(e){}}isAvailable(){return this.available}checkAvailability(){try{if("undefined"==typeof window||!window.localStorage)return!1;const e="__insure_os_storage_test__";return localStorage.setItem(e,"test"),localStorage.removeItem(e),!0}catch(e){return!1}}}class K{constructor(){this.available=this.checkAvailability()}get(e){if(!this.available)return null;try{return sessionStorage.getItem(e)}catch(e){return null}}set(e,t){if(this.available)try{sessionStorage.setItem(e,t)}catch(e){}}remove(e){if(this.available)try{sessionStorage.removeItem(e)}catch(e){}}clear(){if(this.available)try{sessionStorage.clear()}catch(e){}}isAvailable(){return this.available}checkAvailability(){try{if("undefined"==typeof window||!window.sessionStorage)return!1;const e="__insure_os_storage_test__";return sessionStorage.setItem(e,"test"),sessionStorage.removeItem(e),!0}catch(e){return!1}}}class X{static generateKey(e,t,n){const r=[this.KEY_PREFIX+e,t];return n&&r.push(n),r.join(this.SEPARATOR)}static serialize(e){try{return JSON.stringify({data:e,timestamp:Date.now(),version:"1.0"})}catch(e){throw new Error(`Failed to serialize data: ${e}`)}}static deserialize(e){try{const t=JSON.parse(e);return t&&"object"==typeof t&&t.data?t.data:null}catch(e){return null}}static getTimestamp(e){try{return JSON.parse(e).timestamp||null}catch(e){return null}}static isExpired(e,t){const n=this.getTimestamp(e);return!n||Date.now()-n>t}}X.KEY_PREFIX="insure_os_",X.SEPARATOR="_";class ee{constructor(e,t={}){this.storageAdapter=e,this.config={defaultExpirationMs:t.defaultExpirationMs||ee.DEFAULT_EXPIRATION_MS,namespace:t.namespace||ee.DEFAULT_NAMESPACE}}saveQuoteIntent(e,t){if(this.storageAdapter.isAvailable())try{t.payment_transactions&&t.payment_transactions.length;const n=this.generateStorageKey(e),r=X.serialize(t);this.storageAdapter.set(n,r)}catch(e){}}getQuoteIntent(e){if(!this.storageAdapter.isAvailable())return null;try{const t=this.generateStorageKey(e),n=this.storageAdapter.get(t);if(!n)return null;const r=X.deserialize(n);return(null==r?void 0:r.payment_transactions)&&r.payment_transactions.length,r&&this.isQuoteIntentValid(r)?r:(this.removeQuoteIntent(e),null)}catch(e){return null}}removeQuoteIntent(e){if(this.storageAdapter.isAvailable())try{const t=this.generateStorageKey(e);this.storageAdapter.remove(t)}catch(e){}}isQuoteIntentValid(e){if(!e||"object"!=typeof e)return!1;if(!e.id||!e.url||!e.org_id)return!1;const t=Date.now();return!(e.expires_at&&t>e.expires_at||e.created_at&&t-e.created_at>this.config.defaultExpirationMs)}getAllQuoteIntents(){return{}}cleanupExpiredQuoteIntents(){}isStorageAvailable(){return this.storageAdapter.isAvailable()}generateStorageKey(e){return X.generateKey(this.config.namespace,e)}}ee.DEFAULT_EXPIRATION_MS=864e5,ee.DEFAULT_NAMESPACE="quote_intent";class te{constructor(e){this.stateManager=e}async getOrCreateQuoteIntent(e,t,n){const r=this.stateManager.getQuoteIntent(e);if(r&&this.stateManager.isQuoteIntentValid(r)){const t=await n(r.url);return this.stateManager.saveQuoteIntent(e,t),t}try{const n=await t();return this.stateManager.saveQuoteIntent(e,n),n}catch(t){throw r&&this.stateManager.removeQuoteIntent(e),t}}updateQuoteIntent(e,t){const n=this.stateManager.getQuoteIntent(e);if(!n)return null;const r={...n,...t};return this.stateManager.saveQuoteIntent(e,r),r}clearQuoteIntent(e){this.stateManager.removeQuoteIntent(e)}clearExpiredQuoteIntents(){this.stateManager.cleanupExpiredQuoteIntents()}hasValidQuoteIntent(e){const t=this.stateManager.getQuoteIntent(e);return null!==t&&this.stateManager.isQuoteIntentValid(t)}getQuoteIntentUrl(e){const t=this.stateManager.getQuoteIntent(e);return(null==t?void 0:t.url)||null}isStorageAvailable(){return this.stateManager.isStorageAvailable()}}class ne{constructor(e,t){this.saveCallback=t,this.isPaused=!1,this.consecutiveFailures=0,this.lastErrorTime=0,this.isUserTyping=!1,this.config=e}start(){this.intervalId&&this.stop(),this.isPaused=!1,this.consecutiveFailures=0,this.lastErrorTime=0,this.config.autoSave&&(this.intervalId=window.setInterval(()=>{this.isPaused||this.isUserTyping||!this.shouldAttemptSave()||this.saveCallback().catch(this.handleSaveError.bind(this))},this.config.autoSaveInterval))}stop(){this.intervalId&&(clearInterval(this.intervalId),this.intervalId=void 0),this.typingTimeoutId&&(clearTimeout(this.typingTimeoutId),this.typingTimeoutId=void 0)}pause(){this.isPaused=!0,setTimeout(()=>this.resume(),6e4)}resume(){this.isPaused=!1,this.consecutiveFailures=0}shouldAttemptSave(){return!!this.config.autoSave&&(0===this.lastErrorTime||Date.now()-this.lastErrorTime>=this.config.retryDelay*Math.pow(2,this.consecutiveFailures-1))}handleSaveError(e){this.lastErrorTime=Date.now(),this.consecutiveFailures++,this.consecutiveFailures>=3&&(this.pause(),this.dispatchErrorEvent(e))}dispatchErrorEvent(e){if("undefined"!=typeof window){const t=new CustomEvent("form-autosave-error",{detail:{error:e,message:"Auto-save has been paused due to repeated failures."}});window.dispatchEvent(t)}}onSaveSuccess(){this.consecutiveFailures=0,this.lastErrorTime=0,this.isPaused&&this.resume()}startTyping(){this.isUserTyping=!0,this.typingTimeoutId&&clearTimeout(this.typingTimeoutId),this.typingTimeoutId=window.setTimeout(()=>{this.stopTyping()},500)}stopTyping(){this.isUserTyping=!1,this.typingTimeoutId&&(clearTimeout(this.typingTimeoutId),this.typingTimeoutId=void 0)}get status(){return{isPaused:this.isPaused,consecutiveFailures:this.consecutiveFailures,isActive:!!this.intervalId,isUserTyping:this.isUserTyping}}}function re(e,t){const n=t.operator,r=t.value,i=null==r?"":String(r),o=null==e?"":String(e);switch(n){case"=":return o===i;case"!=":return o!==i;case"contains":return o.includes(i);case"not_contains":return!o.includes(i);case"starts_with":return o.startsWith(i);case"ends_with":return o.endsWith(i);case"is_empty":return void 0===e||null==e||""===e||""===e.trim();case"is_not_empty":return void 0!==e&&null!=e&&""!==e&&!(""===e.trim());default:throw new Error(`Unsupported text operator: ${n}`)}}function ie(e,t){const n=t.operator,r=null==t.value?0:Number(t.value),i=null==e?0:Number(e.toString().replace(/,/g,"").trim());switch(n){case">":return i>r;case">=":return i>=r;case"<":return i<r;case"<=":return i<=r;case"=":return i===r;case"!=":return i!==r;case"is_empty":return void 0===e||null==e||""===e||""===e.toString().trim();case"is_not_empty":return void 0!==e&&null!=e&&""!==e&&!(""===e.toString().trim());default:throw new Error(`Unsupported numeric operator: ${n}`)}}function oe(e){if(!0===e||1===e)return!0;if("string"==typeof e){const t=e.toLowerCase();return"true"===t||"yes"===t}return!1}function se(e,t){const n=t.operator;switch(t.operator){case"true":case"=":return oe(e);case"false":return function(e){if(!1===e||0===e||void 0===e)return!0;if("string"==typeof e){const t=e.toLowerCase();return"false"===t||"no"===t}return!1}(e);case"!=":return!oe(e);default:throw new Error(`Unsupported boolean operator: ${n}`)}}function ae(e,t){const n=t.operator,r=t.value,i=null==r?0:Number(t.value);if(null==e||""===e.toString().trim())return"is_empty"===n;const o=e.toString().trim(),s=/^\d{4}$/.test(o)&&Number(o)>=1900&&Number(o)<=2100?new Date(Number(o),0,1).getTime():Date.parse(o),a=Math.floor((Date.now()-s)/315576e5),l=Math.floor((Date.now()-s)/864e5),c=new Date(s),d=new Date,u=12*(d.getFullYear()-c.getFullYear())+(d.getMonth()-c.getMonth());switch(n){case">":return s>Date.parse(r);case">=":return s>=Date.parse(r);case"<":return s<Date.parse(r);case"<=":return s<=Date.parse(r);case"age_less_than":return a<i;case"age_less_than_or_equal":return a<=i;case"age_greater_than":return a>i;case"age_greater_than_or_equal":return a>=i;case"age_days_less_than":return l<i;case"age_days_less_than_or_equal":return l<=i;case"age_days_greater_than":return l>i;case"age_days_greater_than_or_equal":return l>=i;case"age_months_less_than":return u<i;case"age_months_less_than_or_equal":return u<=i;case"age_months_greater_than":return u>i;case"age_months_greater_than_or_equal":return u>=i;default:throw new Error(`Unsupported date operator: ${n}`)}}class le{static create(e){switch(e){case"string":case"text":case"select":return re;case"numeric":return ie;case"boolean":return se;case"date":return ae;default:throw new Error(`Unsupported condition type: ${e}`)}}}function ce(e,t){const n=t.condition_type||"and";if(!t.conditions||0===t.conditions.length)return{matched:!0,conditions:[]};const r={matched:!1,conditions:t.conditions.map(t=>{const n={...t,matched:de(e,t),string:`${t.field} ${t.operator}`};return t.value&&(n.string+=` ${t.value}`),n})};return"none"===n&&(r.matched=!0),"and"===n&&(r.matched=r.conditions.every(e=>e.matched)),"or"===n&&(r.matched=r.conditions.some(e=>e.matched)),"not"===n&&(r.matched=r.conditions.every(e=>!e.matched)),r}function de(e,t){if("expression"===t.type)throw new Error("Expression conditions should not be evaluated through matchesCondition");if(!t.field)throw new Error("Field is required for non-expression conditions");const n=e[t.field],r=le.create(t.type);if(!r)throw new Error(`Unsupported condition type: ${t.type}`);return r(n,t)}var ue=Object.freeze({__proto__:null,TypeConditionEvaluatorFactory:le,booleanMatchesCondition:se,checkSimpleConditions:ce,dateMatchesCondition:ae,numericMatchesCondition:ie,textMatchesCondition:re});function he(e,t){var n;const r=[];if("checkbox"===e.type&&e.required&&!0!==t&&"true"!==t)return r.push({field:e.code||e.id,message:`${e.label} must be accepted`}),r;"boolean"===e.type&&(null===(n=e.boolean_config)||void 0===n?void 0:n.enable_details_textbox)&&("yes"===e.boolean_config.show_details_on&&(!0===t||"true"===t)||e.boolean_config.show_details_on),"email"===e.type&&"string"==typeof t&&(t=t.trim());const i="boolean"===e.type?null==t:null==t||""===t;if(e.required&&i&&!0!==e.add_null_option)return r.push({field:e.code||e.id,message:`${e.label} is required`}),r;if(!e.required&&i)return r;const o=e.validation;if(!o)return r;const s=String(t),a="number"==typeof t?t:parseFloat(s);if(o.pattern&&("text"===e.type||"email"===e.type)){const t=new RegExp(o.pattern),n=s.trim();t.test(n)||r.push({field:e.code||e.id,message:`${e.label} format is invalid`})}if(o.minLength&&s.length<o.minLength&&r.push({field:e.code||e.id,message:`${e.label} must be at least ${o.minLength} characters`}),o.maxLength&&s.length>o.maxLength&&r.push({field:e.code||e.id,message:`${e.label} must be no more than ${o.maxLength} characters`}),"number"!==e.type||isNaN(a)||(void 0!==o.min&&a<o.min&&r.push({field:e.code||e.id,message:`${e.label} must be at least ${o.min}`}),void 0!==o.max&&a>o.max&&r.push({field:e.code||e.id,message:`${e.label} must be no more than ${o.max}`}),void 0!==o.step&&a%o.step!==0&&r.push({field:e.code||e.id,message:`${e.label} must be in increments of ${o.step}`})),("date"===e.type||"year"===e.type||"monthyear"===e.type)&&!1===o.canBeFuture){const t=new Date,n=t.getFullYear();let i=!1;if("year"===e.type){const e=parseInt(s,10);!isNaN(e)&&e>n&&(i=!0)}else if("date"===e.type){const e=new Date(s);if(!isNaN(e.getTime())){const n=new Date(t.getFullYear(),t.getMonth(),t.getDate());new Date(e.getFullYear(),e.getMonth(),e.getDate())>n&&(i=!0)}}else if("monthyear"===e.type){const e=s.split("-");if(2===e.length){const n=parseInt(e[0],10),r=parseInt(e[1],10)-1;isNaN(n)||isNaN(r)||new Date(n,r,1)>new Date(t.getFullYear(),t.getMonth(),1)&&(i=!0)}}i&&r.push({field:e.code||e.id,message:`${e.label} cannot be in the future`})}return r}function me(e,t){var n,r;const i=[];for(const r of e.fields){const e=r.code||r.id;let o=!0;if(r.visibility){const e=ce(t,{condition_type:r.visibility.condition_type,conditions:r.visibility.conditions});o="show"===r.visibility.action?e.matched:!e.matched}if(!o)continue;const s=t[e],a=he(r,s);if(i.push(...a),"boolean"===r.type&&(null===(n=r.boolean_config)||void 0===n?void 0:n.enable_details_textbox)&&("yes"===r.boolean_config.show_details_on&&(!0===s||"true"===s)||"no"===r.boolean_config.show_details_on&&(!1===s||"false"===s))){const n=(t.U||{})[e];n&&""!==n.trim()||i.push({field:e,message:r.boolean_config.details_label||"Please provide details"})}}if(null===(r=e.validation)||void 0===r?void 0:r.required_fields)for(const n of e.validation.required_fields){const r=e.fields.find(e=>(e.code||e.id)===n),o=t[n];if(r){const e=r.code||r.id,n=i.find(t=>t.field===e);if(n)continue;let s=!0;if(r.visibility){const e=ce(t,{condition_type:r.visibility.condition_type,conditions:r.visibility.conditions});s="show"===r.visibility.action?e.matched:!e.matched}if(!s)continue;if("checkbox"===r.type){!0!==o&&"true"!==o&&i.push({field:e,message:`${r.label} must be accepted`});continue}("boolean"===r.type?null==o:null==o||""===o)&&(!0===r.add_null_option||i.push({field:e,message:`${r.label} is required`}))}}return{isValid:0===i.length,errors:i}}function fe(e){const t=[];let n;if("object"==typeof e&&null!==e&&("validation_errors"in e&&e.validation_errors&&"object"==typeof e.validation_errors?n=e.validation_errors:"errors"in e&&e.errors&&"object"==typeof e.errors?n=e.errors:"message"in e||"validation_errors"in e||"errors"in e||(n=e)),n)for(const[e,r]of Object.entries(n))if(Array.isArray(r))for(const n of r)t.push({field:e,message:n});return t}class pe{constructor(e,t,n){this.httpClient=e,this.definition=t,this.quoteIntentStore=n}async load(e,t){if(this.quoteIntentStore&&this.quoteIntentStore.getQuoteIntentUrl(e)){const e=await this.httpClient.getQuoteIntent(t);if(e.quote_intent.form_data)return e.quote_intent.form_data}return(await this.httpClient.getQuoteIntent(t)).quote_intent.form_data||this.createEmptyFormData()}async save(e,t,n,r){try{const e=this.prepareSavePayload(n,r);return await this.httpClient.updateQuoteIntent(t,e),{success:!0}}catch(e){if(e&&"object"==typeof e&&"validationErrors"in e){const t=e.validationErrors;if(t&&"object"==typeof t)return{success:!1,validationErrors:fe(t)}}throw e}}prepareSavePayload(e,t){const n=this.getCurrentPageId(e);return{current_page_index:e.current_page,current_page_id:n,page_data:e.page_data,save_type:t.saveType}}getCurrentPageId(e){const t=this.definition;if(!t||!e.page_data)return;const n=e.current_page;if(n<0||n>=t.pages.length)return;const r=t.pages[n];return r&&r.id?r.id:void 0}createEmptyFormData(){return{current_page:0,completed_pages:[],page_data:{},last_updated:(new Date).toISOString()}}}class ge{constructor(e,t,n,r){this.formDefinition=e,this.getFormData=t,this.updateFormData=n,this.saveCallback=r}canNavigateToPage(e){const t=this.getFormData().current_page;if(e<=t)return!0;if(this.hasActiveBlocker(t))return!1;if(this.isStagingEnvironment())return!0;const n=this.getFormData().completed_pages;for(let r=0;r<e;r++)if(r!==t&&!n.includes(r))return!1;return!0}async navigateToPage(e){if(e<0||e>=this.getTotalPages())return!1;if(!this.canNavigateToPage(e))return!1;const t=this.getFormData().current_page;if(e>t)try{await this.saveCallback(!0,"page")}catch(e){return e&&"object"==typeof e&&e.isValidationError,!1}return e>t&&this.markPageCompleted(t),this.updateFormData({current_page:e,last_updated:(new Date).toISOString()}),!0}navigateToNext(){const e=this.getFormData().current_page;return this.navigateToPage(e+1)}navigateToPrevious(){const e=this.getFormData().current_page;return this.navigateToPage(e-1)}markPageCompleted(e){const t=this.getFormData();if(!t.completed_pages.includes(e)){const n=[...t.completed_pages,e].sort((e,t)=>e-t);this.updateFormData({completed_pages:n})}}getTotalPages(){return this.formDefinition.pages.length}getCompletionStatus(){const e=this.getFormData(),t=this.getTotalPages(),n=[...e.completed_pages];return{totalPages:t,currentPage:e.current_page,completedPages:n,percentComplete:n.length/t*100}}hasActiveBlocker(e){var t;const n=this.formDefinition.pages[e];if(!n)return!1;const r=(null===(t=this.getFormData().page_data)||void 0===t?void 0:t[n.id])||{};for(const e of n.fields)if(e.blocker)if(e.blocker.conditions&&e.blocker.conditions.length>0){if(ce(r,{condition_type:e.blocker.condition_type||"or",conditions:e.blocker.conditions}).matched)return!0}else if(void 0!==e.blocker.trigger_value){const t=r[e.code||e.id];if(void 0!==t&&String(t)===String(e.blocker.trigger_value))return!0}return!1}isStagingEnvironment(){const e=window.location.hostname;return"localhost"===e||e.endsWith(".test")||e.includes("staging")}}class ye{constructor(e){this.httpClient=e}async calculateQuote(e){const n=await this.httpClient.calculateQuoteIntent(e);return t(),n}}class ve{constructor(e){this.httpClient=e}async calculate(e){const n=await this.httpClient.calculateQuoteIntentV2(e);return t(),n}async reprice(e,n){const r={selection:n},i=await this.httpClient.repriceQuoteIntentV2(e,r);return t(),i}async bind(e,n){const r=await this.httpClient.bindQuoteIntentV2(e,n);return t(),r}}function we(e,t,n){var r,i,o,s,a,l,c,d,u;const h=Date.now(),m=`${e}-${h}`;if(function(e,t,n){try{Promise.resolve().then(function(){return Ih}).then(({captureException:r,addBreadcrumb:i,isSentryInitialized:o})=>{o()&&(i({message:`Error occurred: ${t}`,category:"error",level:"error",data:{errorType:t,customMessage:n}}),r(e,{errorType:t,customMessage:n}))}).catch(()=>{})}catch(e){}}(t,e,n),t&&"object"==typeof t){const f=null!==(o=null!==(r=t.organisation)&&void 0!==r?r:null===(i=t.data)||void 0===i?void 0:i.organisation)&&void 0!==o?o:null===(a=null===(s=t.response)||void 0===s?void 0:s.data)||void 0===a?void 0:a.organisation;if("statusCode"in t||"status"in t)return be(m,e,t.statusCode||t.status||500,t.message||(null===(l=t.data)||void 0===l?void 0:l.message)||"Server error occurred",n,h,f);if("response"in t)return be(m,e,(null===(c=t.response)||void 0===c?void 0:c.status)||500,(null===(u=null===(d=t.response)||void 0===d?void 0:d.data)||void 0===u?void 0:u.message)||t.message||"Network error occurred",n,h,f);if(t.message)return{id:m,type:e,severity:ke(e),title:xe(e),message:n||Se(e),details:t.message,retryable:Ce(e,0),timestamp:h,trackingId:m}}const f="string"==typeof t?t:"An unexpected error occurred";return{id:m,type:e,severity:ke(e),title:xe(e),message:n||f,retryable:Ce(e,0),timestamp:h,trackingId:m}}function be(e,t,n,r,i,o,s){const a=n>=500?"critical":n>=400?"error":"warning",l=Ce(t,n);return{id:e,type:t,severity:a,statusCode:n,title:xe(t,n),message:i||Ne(t,n,r),details:r,retryable:l,timestamp:o,organisation:null!=s?s:void 0}}function xe(e,t){if(t){if(404===t)return"Not Found";if(503===t)return"Under Maintenance";if(t>=500)return"Something Went Wrong";if(t>=400)return"Invalid Request"}switch(e){case"initialization":default:return"Something Went Wrong";case"calculation":return"Calculation Error";case"network":return"Connection Problem";case"validation":return"Please Check Your Details";case"maintenance":return"Under Maintenance"}}function ke(e){switch(e){case"initialization":case"maintenance":return"critical";case"calculation":case"network":default:return"error";case"validation":return"warning"}}function Ne(e,t,n){return"calculation"===e&&(n.toLowerCase().includes("no matching values found")||n.toLowerCase().includes("rating table")||n.toLowerCase().includes("not supported"))?n:n.toLowerCase().includes("no matching values found")?"The entered value is not supported by our calculator. Please try a different amount.":n.toLowerCase().includes("rating table")?"Unable to calculate with the provided information. Please check your entries and try again.":404===t?"initialization"===e?"The requested form could not be found. Please check the URL or contact support.":"The requested resource was not found.":503===t?"We're performing scheduled maintenance. Please check back in a few minutes.":t>=500?"calculation"===e?"We're experiencing technical difficulties with the calculation. Please try again in a moment.":"We're experiencing technical difficulties. Please try again in a moment.":429===t?"Too many requests. Please wait a moment and try again.":t>=400?"There was an issue with your request. Please adjust your details and re-submit.":"An unexpected error occurred. Please try again."}function Se(e){switch(e){case"initialization":return"We're unable to load the application at this time. Please try again.";case"calculation":return"We couldn't complete the calculation. Please check your details and try again.";case"network":return"We're having trouble connecting. Please check your internet connection and try again.";case"validation":return"Please check your details and try again.";case"maintenance":return"We're performing scheduled maintenance. Please check back in a few minutes.";default:return"An unexpected error occurred. Please try again."}}function Ce(e,t){return"validation"!==e&&"maintenance"!==e&&404!==t&&503!==t&&!(t>=400&&t<500&&429!==t)&&("network"===e||"calculation"===e||t>=500&&503!==t||429===t)}function _e(e){return"maintenance"===e.type||503===e.statusCode}function $e(e){return e.trackingId?`If this problem persists, please contact support and reference error ID: ${e.trackingId.slice(0,8).toUpperCase()}`:"critical"===e.severity?"If this problem persists, please contact support with the error details.":"If you continue to experience issues, please contact support."}let Ie=null;function Te(e){Ie=e}function Ee(e,t){var n,r;return{event:t,quote_id:e.id,organisation_slug:null===(n=e.organisation)||void 0===n?void 0:n.slug,organisation_name:null===(r=e.organisation)||void 0===r?void 0:r.name,timestamp:(new Date).toISOString()}}function Pe(e){var t,n;if(!(null==Ie?void 0:Ie.isEnabled()))return;const r={...Ee(e,"quote_started"),quote_status:e.status,total_pages:null===(n=null===(t=e.form_definition)||void 0===t?void 0:t.pages)||void 0===n?void 0:n.length};Ie.push(r)}function ze(e,t,n,r){var i,o;if(!(null==Ie?void 0:Ie.isEnabled()))return;const s=(null===(o=null===(i=e.form_definition)||void 0===i?void 0:i.pages)||void 0===o?void 0:o.length)||0,a=s>0?Math.round(n.length/s*100):0,l={...Ee(e,"quote_form_progress"),current_page:t,total_pages:s,completed_pages:n.length,completion_percentage:a,page_title:r};Ie.push(l)}function De(e,t){if(!(null==Ie?void 0:Ie.isEnabled()))return;const n=t.calculations||[],r=t.payment_options||[],i=n.find(e=>e.id===t.default_excess_id),o=n.map(e=>e.premium_total),s=o.length>0?Math.min(...o):void 0,a=o.length>0?Math.max(...o):void 0,l=r.some(e=>"monthly"===e.amount.frequency),c={...Ee(e,"quote_calculated"),excess_id:null==i?void 0:i.id,excess_amount:null==i?void 0:i.excess_amount,premium_subtotal:null==i?void 0:i.premium_subtotal,premium_total:null==i?void 0:i.premium_total,excess_options_count:n.length,payment_options_count:r.length,has_installments:l,min_premium:s,max_premium:a};Ie.push(c)}function Re(e,t,n,r,i){if(!(null==Ie?void 0:Ie.isEnabled()))return;const o={...Ee(e,"quote_at_checkout"),excess_id:t.id,excess_amount:t.excess_amount,premium_subtotal:t.premium_subtotal,premium_total:t.premium_total,payment_options_count:n,has_installments:r,form_completion:i,fees:t.fees};Ie.push(o)}function Me(e,t){if(!(null==Ie?void 0:Ie.isEnabled()))return;const n=t.referrals||[],r={...Ee(e,"quote_referred"),referral_reason:t.referral_reason,referrals_count:n.length,referral_ids:n.map(e=>e.id)};Ie.push(r)}function Oe(e,t,n,r){if(!(null==Ie?void 0:Ie.isEnabled()))return;const i={...Ee(e,"payment_initiated"),payment_amount:t.amount.dueToday,payment_gateway:t.gateway_id,payment_gateway_name:n,excess_amount:r||0,payment_frequency:t.amount.frequency,amount_due_today:t.amount.dueToday,installments_count:t.amount.numberOfInstallments};Ie.push(i)}function je(e,t,n,r,i,o){if(!(null==Ie?void 0:Ie.isEnabled()))return;const s={...Ee(e,"payment_completed"),transaction_id:t,payment_amount:n,payment_gateway:r,premium_total:i||n,excess_amount:o||0};Ie.push(s)}function We(e,t,n,r,i,o){if(!(null==Ie?void 0:Ie.isEnabled()))return;const s={...Ee(e,"payment_failed"),transaction_id:t,payment_amount:n,payment_gateway:r,payment_status:i,failure_reason:o};Ie.push(s)}class Ae{constructor(e,t,n,r={}){this.quoteIntent=e,this.httpClient=t,this.subscribers=new Set,this.pendingChanges={},this.isCalculating=!1,this.isRepricing=!1,this.isSaving=!1,this.selectedExcessId=null,this.selectedPaymentOption=null,this.selectionV2=null,this.validationErrors=[],this.serverValidationErrors=[],this.generalErrors=[],this.lastCalculationFailed=!1,this.config={autoSaveInterval:r.autoSaveInterval||1e3,autoSave:!1!==r.autoSave,maxRetryAttempts:r.maxRetryAttempts||3,retryDelay:r.retryDelay||2e3},this.formData=this.createEmptyFormData(),this.quoteIntentStore=n,this.lastCalculationFailed=this.getPersistedCalculationFailureState();const i=e.form_definition;this.persistenceManager=new pe(t,i,n),this.autoSaveManager=new ne(this.config,this.saveFormData.bind(this)),this.navigationManager=new ge(i,this.getFormProgress.bind(this),this.updateFormDataInternal.bind(this),this.saveFormData.bind(this)),this.calculationManager=new ye(t),this.calculationManagerV2=new ve(t),this.config.autoSave&&this.autoSaveManager.start()}subscribe(e){return this.subscribers.add(e),()=>this.subscribers.delete(e)}async loadFormProgress(){var e,t;return this.formData=await this.persistenceManager.load(this.quoteIntent.id,this.quoteIntent.url),this.lastCalculationFailed=!0===(null===(t=null===(e=this.formData.page_data)||void 0===e?void 0:e.Y)||void 0===t?void 0:t.lastCalculationFailed),this.config.autoSave=!1,this.autoSaveManager.stop(),this.notify(),this.formData}updatePageData(e,t){this.pendingChanges[e]={...this.pendingChanges[e],...t},this.formData.page_data={...this.formData.page_data,[e]:{...this.formData.page_data[e],...t}},this.formData.last_updated=(new Date).toISOString(),this.notify()}updateFieldValue(e,t,n){if(this.autoSaveManager.startTyping(),"string"==typeof n){const r=this.getFormDefinition().pages.find(t=>t.id===e),i=null==r?void 0:r.fields.find(e=>(e.code||e.id)===t);i&&"email"===i.type&&(n=n.trim())}this.pendingChanges[e]||(this.pendingChanges[e]={}),this.pendingChanges[e][t]=n,this.formData.page_data[e]||(this.formData.page_data[e]={}),this.formData.page_data[e][t]=n,this.formData.last_updated=(new Date).toISOString(),this.validateField(e,t,n),this.notify()}updateFieldAnswer(e,n,r,i){if(this.autoSaveManager.startTyping(),this.formData.page_data[e]||(this.formData.page_data[e]={}),this.formData.page_data[e].U||(this.formData.page_data[e].U={}),this.formData.page_data[e].U[n]=r,i){const n=this.getRatingFactorCodeById(i);n&&(this.formData.page_data[e][n]=r,t())}this.formData.last_updated=(new Date).toISOString(),this.notify()}restoreFormProgress(e){var n;if(this.isUserTyping())return;const r=e.completed_pages||[],i=(null===(n=this.quoteIntent.form_definition)||void 0===n?void 0:n.pages.length)||0;let o=0;for(let e=0;e<i;e++)if(!r.includes(e)){o=e;break}r.length===i&&i>0&&(o=i-1),t(e.current_page),this.formData={...e,current_page:o},this.notify()}restoreCalculationResult(e){t(),t(e.outcome_type),this.calculationResult=e,e.default_excess_id&&(this.selectedExcessId=e.default_excess_id),t(),this.notify(),t()}getRatingFactorCodeById(e){const n=this.getFormDefinition();for(const t of n.pages)for(const n of t.fields){if(n.rating_factor_id===e)return n.code||n.id;if(n.rating_factor_mappings)for(const t of n.rating_factor_mappings)if(t.rating_factor_id===e)return t.rating_factor_code||n.code||n.id}return t(),null}processRatingFactorMappings(e){const t=this.getFormDefinition(),n={};return t.pages.forEach(t=>{const r=e.page_data[t.id]||{};t.fields.forEach(e=>{const t=r[e.code||e.id];null!=t&&""!==t&&e.rating_factor_mappings&&e.rating_factor_mappings.length>0&&e.rating_factor_mappings.forEach(r=>{if("derived"===r.type&&r.derivation_rule){const i=this.applyDerivationRule(t,r.derivation_rule,r.metadata),o=r.rating_factor_code||`${e.code||e.id}_${r.derivation_rule}`;n[o]=i}})})}),n}applyDerivationRule(e,n,r){switch(t(JSON.stringify(r)),n){case"calculate_age":return this.calculateAge(e,r);case"invert_yes_no":return this.invertYesNo(e);default:return null}}invertYesNo(e){return"Yes"===e?"No":"Yes"}calculateAge(e,t){try{const n=new Date(e),r="current_date"===(null==t?void 0:t.reference_date)?new Date:new Date((null==t?void 0:t.reference_date)||Date.now());let i=r.getFullYear()-n.getFullYear();const o=r.getMonth()-n.getMonth();return(o<0||0===o&&r.getDate()<n.getDate())&&i--,i}catch(e){return null}}async saveFormData(e=!1,n="auto-save"){if(!e&&0===Object.keys(this.pendingChanges).length)return;this.isSaving=!0,this.notify();const r={...this.formData},i=this.processRatingFactorMappings(this.formData);t();const o={...this.formData,page_data:{...this.formData.page_data,V:i}};try{const t=await this.persistenceManager.save(this.quoteIntent.id,this.quoteIntent.url,o,{force:e,saveType:n});if(!t.success){if(t.validationErrors){this.setServerValidationErrors(t.validationErrors),this.notify();const e=new Error("Validation failed");throw e.isValidationError=!0,e}throw new Error("Failed to save form data")}{this.pendingChanges={},this.autoSaveManager.onSaveSuccess(),this.clearServerValidationErrors(),this.clearGeneralErrors();const e=this.formData;r.current_page===e.current_page?this.formData=o:this.formData={...o,current_page:e.current_page,completed_pages:e.completed_pages,last_updated:e.last_updated},this.notify()}}catch(e){if(e&&"object"==typeof e&&"type"in e&&"message"in e){const t=e;if(!t.validationErrors||0===Object.keys(t.validationErrors).length){const e=we("validation",t);this.addGeneralError(e),this.notify()}}throw e}finally{this.isSaving=!1,this.notify()}}canNavigateToPage(e){return this.navigationManager.canNavigateToPage(e)}navigateToPage(e){return this.navigationManager.navigateToPage(e)}async navigateToNextPage(){var e,t;const n=await this.navigationManager.navigateToNext();if(n){const n=this.formData.current_page,r=this.formData.completed_pages||[],i=null===(t=null===(e=this.quoteIntent.form_definition)||void 0===e?void 0:e.pages[n-1])||void 0===t?void 0:t.title;ze(this.quoteIntent,n,r,i)}return n}navigateToPreviousPage(){return this.navigationManager.navigateToPrevious()}getPageCompletionStatus(){return this.navigationManager.getCompletionStatus()}getFormProgress(){return this.formData}getFormDefinition(){return this.quoteIntent.form_definition}getTotalPages(){return this.navigationManager.getTotalPages()}getCurrentPageIndex(){return this.formData.current_page}isAutoSavePaused(){return this.autoSaveManager.status.isPaused}isUserTyping(){return this.autoSaveManager.status.isUserTyping}getIsCalculating(){return this.isCalculating}getIsRepricing(){return this.isRepricing}getIsSaving(){return this.isSaving}hasCalculationResponse(){return Boolean(this.calculationResult)}getCalculationResult(){return this.calculationResult}getConsecutiveFailures(){return this.autoSaveManager.status.consecutiveFailures}getSelectedExcessId(){return this.selectedExcessId}setSelectedExcessId(e){this.selectedExcessId=e,this.selectedPaymentOption=null,this.notify()}getSelectedPaymentOption(){return this.selectedPaymentOption}setSelectedPaymentOption(e){this.selectedPaymentOption=e,this.notify()}hasPendingChanges(){return Object.keys(this.pendingChanges).length>0}validateCurrentPage(){const e=this.getCurrentPageIndex(),t=this.getFormDefinition().pages[e];if(!t)return[];const n=me(t,this.getAllFormDataFlattened());return this.validationErrors=n.errors,this.notify(),n.errors}validateField(e,t,n){const r=this.getFormDefinition().pages.find(t=>t.id===e),i=null==r?void 0:r.fields.find(e=>(e.code||e.id)===t);if(!i)return[];const o=he(i,n);return this.validationErrors=this.validationErrors.filter(e=>e.field!==t),this.validationErrors.push(...o),this.notify(),o}getValidationErrors(){return[...this.validationErrors,...this.serverValidationErrors]}getFieldErrors(e){return this.getValidationErrors().filter(t=>t.field===e)}hasErrors(){return this.validationErrors.length>0||this.serverValidationErrors.length>0}hasFieldErrors(e){return this.getFieldErrors(e).length>0}clearValidationErrors(){this.validationErrors=[],this.notify()}setServerValidationErrors(e){this.serverValidationErrors=e,this.notify()}clearServerValidationErrors(){this.serverValidationErrors=[],this.notify()}getGeneralErrors(){const e=this.generalErrors.filter(e=>!e.dismissed);return e.length>0?[e[e.length-1]]:[]}addGeneralError(e){this.generalErrors.push(e),this.notify()}dismissGeneralError(e){const t=this.generalErrors.find(t=>t.id===e);t&&(t.dismissed=!0,this.notify())}clearGeneralErrors(){this.generalErrors=[],this.notify()}hasGeneralErrors(){return this.getGeneralErrors().length>0}hasLastCalculationFailed(){return this.lastCalculationFailed}dispose(){this.autoSaveManager.stop(),Object.keys(this.pendingChanges).length>0&&!this.isAutoSavePaused()&&this.saveFormData(!0).catch(console.error),this.subscribers.clear()}async filterHiddenFieldsAndSave(){const e=this.getFormDefinition(),t={...this.formData},{checkSimpleConditions:n}=await Promise.resolve().then(function(){return ue}),r=this.getAllFormDataFlattened();e.pages.forEach(e=>{const i=this.formData.page_data[e.id]||{},o={};Object.keys(i).forEach(e=>{e.startsWith("__")&&e.endsWith("__")&&(o[e]=i[e])}),e.fields.forEach(e=>{const t=e.code||e.id,s=i[t];let a=!0;if(e.visibility){const t=n(r,{condition_type:e.visibility.condition_type,conditions:e.visibility.conditions});a="show"===e.visibility.action?t.matched:!t.matched}a&&void 0!==s&&(o[t]=s)}),t.page_data[e.id]=o});const i=this.processRatingFactorMappings(t),o={...t,page_data:{...t.page_data,V:i}};await this.persistenceManager.save(this.quoteIntent.id,this.quoteIntent.url,o,{force:!0,saveType:"full"})}async calculateQuote(){t();const e=this.getFormDefinition(),n=[],r=this.getAllFormDataFlattened();for(const i of e.pages){const e=me(i,r);t(i.title,e.errors.length>0&&e.errors),n.push(...e.errors)}if(n.length>0)throw t(),this.validationErrors=n,this.notify(),new Error("Form validation failed");t(),await this.filterHiddenFieldsAndSave();try{if(this.isCalculating=!0,this.notify(),2===this.quoteIntent.calculator_version&&this.quoteIntent.calculate_url_v2){const e=await this.calculationManagerV2.calculate(this.quoteIntent.calculate_url_v2);if("referral"===e.outcome_type){this.calculationResultV2=void 0,this.selectionV2=null,this.selectedExcessId=null;const t=this.buildV1CompatResponseFromV2(e);return this.calculationResult=t,this.lastCalculationFailed=!1,this.persistCalculationFailureState(),Me(this.quoteIntent,t),t}this.calculationResultV2=e,this.selectionV2=e.selection;const t=this.buildV1CompatResponseFromV2(e);this.calculationResult=t,this.selectedExcessId=e.selection.excess_id,this.lastCalculationFailed=!1,this.persistCalculationFailureState();const n=this.generalErrors.filter(e=>"calculation"===e.type);return n.forEach(e=>this.dismissGeneralError(e.id)),"calculation"===t.outcome_type?De(this.quoteIntent,t):"referral"===t.outcome_type&&Me(this.quoteIntent,t),t}const e=await this.calculationManager.calculateQuote(this.quoteIntent.calculate_url);this.calculationResult=e,this.selectedExcessId=e.default_excess_id||null,this.lastCalculationFailed=!1,this.persistCalculationFailureState();const t=this.generalErrors.filter(e=>"calculation"===e.type);return t.forEach(e=>this.dismissGeneralError(e.id)),"calculation"===e.outcome_type?De(this.quoteIntent,e):"referral"===e.outcome_type&&Me(this.quoteIntent,e),e}catch(e){this.lastCalculationFailed=!0,this.persistCalculationFailureState();const t={outcome_type:"referral",referral_reason:"Your quote requires further review.",quote_intent:this.quoteIntent};return this.calculationResult=t,t}finally{this.isCalculating=!1,this.notify()}}async clearCalculationResults(){t();try{await this.httpClient.deleteCalculations(this.quoteIntent.delete_calculations_url),this.calculationResult=void 0,this.calculationResultV2=void 0,this.selectionV2=null,this.selectedExcessId=null,this.selectedPaymentOption=null,this.notify(),t()}catch(e){throw t(),e}}getCalculationResultV2(){return this.calculationResultV2}getSelectionV2(){return this.selectionV2}setV2Selection(e){var t,n,r,i;if(!this.calculationResultV2||!this.selectionV2)return;const o={cover_type_id:null!==(t=e.cover_type_id)&&void 0!==t?t:this.selectionV2.cover_type_id,excess_id:null!==(n=e.excess_id)&&void 0!==n?n:this.selectionV2.excess_id,coverage_option_ids:null!==(r=e.coverage_option_ids)&&void 0!==r?r:this.selectionV2.coverage_option_ids};if(e.cover_type_id&&e.cover_type_id!==this.selectionV2.cover_type_id){const e=this.calculationResultV2.variants.filter(e=>e.cover_type_id===o.cover_type_id),t=e.some(e=>e.excess_id===o.excess_id);if(!t){const t=null!==(i=e.find(e=>e.excess_id===this.calculationResultV2.default_excess_id))&&void 0!==i?i:e[0];t&&(o.excess_id=t.excess_id)}}this.selectionV2=o,this.selectedExcessId=o.excess_id,this.calculationResult=this.buildV1CompatResponseFromV2(this.calculationResultV2),this.notify()}async toggleV2CoverageOption(e){if(!this.calculationResultV2||!this.selectionV2||!this.quoteIntent.reprice_url_v2)return;const t=this.calculationResultV2.policy_coverage_options.find(t=>t.id===e);if(!t)return;const n=this.selectionV2.coverage_option_ids,r=n.includes(e)?n.filter(t=>t!==e):[...n,e],i={...this.selectionV2,coverage_option_ids:r};try{this.isRepricing=!0,this.notify();const e=await this.calculationManagerV2.reprice(this.quoteIntent.reprice_url_v2,i);this.calculationResultV2={...this.calculationResultV2,variants:e.variants,policy_coverage_options:e.policy_coverage_options},this.selectionV2=e.selection,this.calculationResult=this.buildV1CompatResponseFromV2(this.calculationResultV2)}catch(e){}finally{this.isRepricing=!1,this.notify()}}getV2DisplayedTotal(){if(!this.calculationResultV2||!this.selectionV2)return 0;const e=this.calculationResultV2.variants.find(e=>e.cover_type_id===this.selectionV2.cover_type_id&&e.excess_id===this.selectionV2.excess_id);return e?Math.round(100*e.pricing.total_payable)/100:0}async bindV2(e){if(!this.quoteIntent.bind_url_v2||!this.selectionV2)throw new Error("v2 bind unavailable — missing bind URL or selection");const t=this.getV2DisplayedTotal();return this.calculationManagerV2.bind(this.quoteIntent.bind_url_v2,{selection:this.selectionV2,client_claimed_total:t,email:e})}buildV1CompatResponseFromV2(e){var t;const n=null!==(t=this.selectionV2)&&void 0!==t?t:e.selection,r=e.variants.filter(e=>e.cover_type_id===n.cover_type_id),i=r.map(t=>{var n;const r=e.excess_options.find(e=>e.id===t.excess_id);return{id:t.excess_id,calculation_id:e.id,excess_amount:null!==(n=null==r?void 0:r.excess_amount)&&void 0!==n?n:0,excess_label:null==r?void 0:r.excess_label,description:void 0,premium_base:t.pricing.subtotal-t.pricing.fees,premium_subtotal:t.pricing.subtotal,premium_total:t.pricing.total_payable,fees:[]}});return{quote_intent:e.quote_intent,product_name:e.product_name,default_excess_id:e.default_excess_id,default_coverage_options:n.coverage_option_ids,outcome_type:e.outcome_type,referral_reason:e.referral_reason,calculations:i,referrals:e.referrals.map(e=>({id:e.id,reason:e.reason})),clauses:e.clauses,payment_options:[],payment_gateways:e.payment_gateways}}notify(){this.subscribers.forEach(e=>e(this))}getAllFormDataFlattened(){const e={};return Object.values(this.formData.page_data).forEach(t=>{const{U:n,...r}=t;Object.assign(e,r),n&&Object.keys(n).length>0&&(e.U||(e.U={}),Object.assign(e.U,n))}),e}updateFormDataInternal(e){if(this.isUserTyping()&&e.page_data){const t={...e};delete t.page_data,this.formData={...this.formData,...t}}else this.formData={...this.formData,...e};this.notify()}createEmptyFormData(){return{current_page:0,completed_pages:[],page_data:{},last_updated:(new Date).toISOString()}}getPersistedCalculationFailureState(){var e,t,n;return!!(null===(n=null===(t=null===(e=this.quoteIntent.form_data)||void 0===e?void 0:e.page_data)||void 0===t?void 0:t.Y)||void 0===n?void 0:n.lastCalculationFailed)&&!0===this.quoteIntent.form_data.page_data.Y.lastCalculationFailed}persistCalculationFailureState(){this.formData.page_data.Y||(this.formData.page_data.Y={}),this.formData.page_data.Y.lastCalculationFailed=this.lastCalculationFailed,this.formData.last_updated=(new Date).toISOString(),this.saveFormData(!0,"auto-save").catch(()=>{})}reset(){localStorage.clear();const e=new URL(window.location.href);e.searchParams.delete("url"),window.history.replaceState({},document.title,e.toString()),window.location.reload()}getQuoteIntent(){return this.quoteIntent}updateQuoteIntent(e){if(this.quoteIntentStore){const t=this.quoteIntentStore.updateQuoteIntent(this.quoteIntent.org_id,e);t&&(this.quoteIntent=t,this.notify())}}clearStoredQuoteIntent(){this.quoteIntentStore&&this.quoteIntentStore.clearQuoteIntent(this.quoteIntent.org_id)}async initiatePayment(e){var n,r,i;const o=((null===(n=this.calculationResult)||void 0===n?void 0:n.payment_gateways)||[]).find(t=>t.id===e.gatewayId);if(!o)throw new Error("Selected payment gateway not found in calculation response");t();const s=((null===(r=this.calculationResult)||void 0===r?void 0:r.payment_options)||[]).find(t=>t.gateway_id===e.gatewayId&&t.calculation_id===e.calculationId),a=((null===(i=this.calculationResult)||void 0===i?void 0:i.calculations)||[]).find(t=>t.id===e.calculationId);try{const t=await this.httpClient.initiatePayment(e,o);return s&&Oe(this.quoteIntent,s,o.name,null==a?void 0:a.excess_amount),this.notify(),t}catch(e){throw e}}async getPaymentStatus(e){var t;const n=this.getSelectedPaymentOption();if(!n)throw new Error("No payment option selected");const r=((null===(t=this.calculationResult)||void 0===t?void 0:t.payment_gateways)||[]).find(e=>e.id===n.gateway_id);if(!r)throw new Error("Selected payment gateway not found in calculation response");try{const t=await this.httpClient.getPaymentStatus(e,r);return this.notify(),t}catch(e){throw e}}startPaymentStatusPolling(e,t,n=30){let r=0,i=!1;const o=async()=>{if(!(i||r>=n))try{const s=await this.getPaymentStatus(e);t(s),"pending"!==s.status&&"initiated"!==s.status||(r++,r<n&&!i&&setTimeout(o,1e4))}catch(e){r++,r<n&&!i&&setTimeout(o,1e4)}};return o(),()=>{i=!0}}}class Le{constructor(e,t){this.httpClient=e,this.response=t}async get(){return await this.httpClient.getQuoteIntent(this.response.url)}async update(e){var t;const n=this.response.product.form_definition,r={...this.response.quote_intent.form_data};r.page_data||(r.page_data={});for(const i of n.pages){const n=r.page_data[i.id]||{};for(const r of i.fields){const i=r.code||r.id;if(e.hasOwnProperty(i)?n[i]=e[i]:("text"===r.type&&(n[i]="sample"),"number"===r.type&&(n[i]=1),"checkbox"===r.type&&(n[i]=!0)),"boolean"===r.type&&(null===(t=r.boolean_config)||void 0===t?void 0:t.enable_details_textbox)){const e="yes"===r.boolean_config.show_details_on,t=n[i];(t===e||t===String(e))&&(n.U||(n.U={}),n.U[i]=`Sample details for: ${i}`)}}r.page_data[i.id]=n}const i={current_page_index:0,save_type:"full",page_data:{...r.page_data}};return await this.httpClient.updateQuoteIntent(this.response.url,i)}}class Be{constructor(e){this.httpClient=e}async createQuoteIntent(e,t){const n=await this.httpClient.createQuoteIntent({code:e,...t});return new Le(this.httpClient,n)}}var qe=0;function Fe(e,t,n,i,o,s){t||(t={});var a,l,c=t;if("ref"in c)for(l in c={},t)"ref"==l?a=t[l]:c[l]=t[l];var d={type:e,props:c,key:n,ref:a,i:null,m:null,p:0,v:null,k:null,constructor:void 0,N:--qe,C:-1,_:0,J:o,K:s};if("function"==typeof e&&(a=e.defaultProps))for(l in a)void 0===c[l]&&(c[l]=a[l]);return r.vnode&&r.vnode(d),d}var He,Ue,Ye,Ze,Ge=0,Ve=[],Qe=r,Je=Qe.p,Ke=Qe.O,Xe=Qe.diffed,et=Qe.k,tt=Qe.unmount,nt=Qe.m;function rt(e,t){Qe.W&&Qe.W(Ue,e,Ge||t),Ge=0;var n=Ue.X||(Ue.X={m:[],W:[]});return e>=n.m.length&&n.m.push({}),n.m[e]}function it(e){return Ge=1,function(e,t){var n=rt(He++,2);if(n.t=e,!n.k&&(n.m=[pt(void 0,t),function(e){var t=n.ee?n.ee[0]:n.m[0],r=n.t(t,e);t!==r&&(n.ee=[r,n.m[1]],n.k.setState({}))}],n.k=Ue,!Ue.te)){var r=function(e,t,r){if(!n.k.X)return!0;var o=n.k.X.m.filter(function(e){return e.k});if(o.every(function(e){return!e.ee}))return!i||i.call(this,e,t,r);var s=n.k.props!==e;return o.some(function(e){if(e.ee){var t=e.m[0];e.m=e.ee,e.ee=void 0,t!==e.m[0]&&(s=!0)}}),i&&i.call(this,e,t,r)||s};Ue.te=!0;var i=Ue.shouldComponentUpdate,o=Ue.componentWillUpdate;Ue.componentWillUpdate=function(e,t,n){if(this.v){var s=i;i=void 0,r(e,t,n),i=s}o&&o.call(this,e,t,n)},Ue.shouldComponentUpdate=r}return n.ee||n.m}(pt,e)}function ot(e,t){var n=rt(He++,3);!Qe.L&&ft(n.X,t)&&(n.m=e,n.u=t,Ue.X.W.push(n))}function st(e){return Ge=5,at(function(){return{current:e}},[])}function at(e,t){var n=rt(He++,7);return ft(n.X,t)&&(n.m=e(),n.X=t,n.W=e),n.m}function lt(e,t){return Ge=8,at(function(){return e},t)}function ct(){for(var e;e=Ve.shift();){var t=e.X;if(e.I&&t)try{t.W.some(ht),t.W.some(mt),t.W=[]}catch(n){t.W=[],Qe.v(n,e.N)}}}Qe.p=function(e){Ue=null,Je&&Je(e)},Qe.m=function(e,t){e&&t.i&&t.i.B&&(e.B=t.i.B),nt&&nt(e,t)},Qe.O=function(e){Ke&&Ke(e),He=0;var t=(Ue=e.k).X;t&&(Ye===Ue?(t.W=[],Ue.W=[],t.m.some(function(e){e.ee&&(e.m=e.ee),e.u=e.ee=void 0})):(t.W.some(ht),t.W.some(mt),t.W=[],He=0)),Ye=Ue},Qe.diffed=function(e){Xe&&Xe(e);var t=e.k;t&&t.X&&(t.X.W.length&&(1!==Ve.push(t)&&Ze===Qe.requestAnimationFrame||((Ze=Qe.requestAnimationFrame)||ut)(ct)),t.X.m.some(function(e){e.u&&(e.X=e.u),e.u=void 0})),Ye=Ue=null},Qe.k=function(e,t){t.some(function(e){try{e.W.some(ht),e.W=e.W.filter(function(e){return!e.m||mt(e)})}catch(n){t.some(function(e){e.W&&(e.W=[])}),t=[],Qe.v(n,e.N)}}),et&&et(e,t)},Qe.unmount=function(e){tt&&tt(e);var t,n=e.k;n&&n.X&&(n.X.m.some(function(e){try{ht(e)}catch(e){t=e}}),n.X=void 0,t&&Qe.v(t,n.N))};var dt="function"==typeof requestAnimationFrame;function ut(e){var t,n=function(){clearTimeout(r),dt&&cancelAnimationFrame(t),setTimeout(e)},r=setTimeout(n,35);dt&&(t=requestAnimationFrame(n))}function ht(e){var t=Ue,n=e.k;"function"==typeof n&&(e.k=void 0,n()),Ue=t}function mt(e){var t=Ue;e.k=e.m(),Ue=t}function ft(e,t){return!e||e.length!==t.length||t.some(function(t,n){return t!==e[n]})}function pt(e,t){return"function"==typeof t?t(e):t}const gt="insure-os";let yt=!1;const vt=new Map,wt={[`--${gt}-radius`]:"0.75rem",[`--${gt}-radius-sm`]:"0.5rem",[`--${gt}-radius-lg`]:"1rem",[`--${gt}-background`]:"oklch(0.955 0 0)",[`--${gt}-foreground`]:"oklch(0.145 0 0)",[`--${gt}-card`]:"oklch(1 0 0)",[`--${gt}-card-foreground`]:"oklch(0.145 0 0)",[`--${gt}-popover`]:"oklch(1 0 0)",[`--${gt}-popover-foreground`]:"oklch(0.145 0 0)",[`--${gt}-primary`]:"oklch(0.205 0 0)",[`--${gt}-primary-foreground`]:"oklch(0.985 0 0)",[`--${gt}-secondary`]:"oklch(0.97 0 0)",[`--${gt}-secondary-foreground`]:"oklch(0.205 0 0)",[`--${gt}-muted`]:"oklch(0.97 0 0)",[`--${gt}-muted-foreground`]:"oklch(0.556 0 0)",[`--${gt}-accent`]:"oklch(0.97 0 0)",[`--${gt}-accent-foreground`]:"oklch(0.205 0 0)",[`--${gt}-destructive`]:"oklch(0.577 0.245 27.325)",[`--${gt}-border`]:"oklch(0.9 0 0)",[`--${gt}-input`]:"oklch(0.9 0 0)",[`--${gt}-ring`]:"oklch(0.708 0 0)",[`--${gt}-font-family`]:"system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif",[`--${gt}-font-size-large`]:"18px",[`--${gt}-font-size-small`]:"14px",[`--${gt}-font-size`]:"16px",[`--${gt}-border-width`]:"1px",[`--${gt}-transition-duration`]:"200ms",[`--${gt}-transition-timing-function`]:"cubic-bezier(0.4, 0, 0.2, 1)",[`--${gt}-shadow-sm`]:"0 1px 2px 0 rgba(0, 0, 0, 0.05)",[`--${gt}-shadow`]:"0 1px 3px 0 rgba(0, 0, 0, 0.1), 0 1px 2px -1px rgba(0, 0, 0, 0.1)",[`--${gt}-shadow-md`]:"0 4px 6px -1px rgba(0, 0, 0, 0.1), 0 2px 4px -2px rgba(0, 0, 0, 0.1)",[`--${gt}-shadow-lg`]:"0 10px 15px -3px rgba(0, 0, 0, 0.1), 0 4px 6px -4px rgba(0, 0, 0, 0.1)",[`--${gt}-spacing-sm`]:"0.75rem",[`--${gt}-spacing`]:"1rem",[`--${gt}-spacing-md`]:"1.5rem",[`--${gt}-spacing-lg`]:"2rem",[`--${gt}-spacing-xl`]:"3rem"},bt={colors:{background:`var(--${gt}-background)`,foreground:`var(--${gt}-foreground)`,card:`var(--${gt}-card)`,popover:`var(--${gt}-popover)`,popoverForeground:`var(--${gt}-popover-foreground)`,primary:`var(--${gt}-primary)`,primaryForeground:`var(--${gt}-primary-foreground)`,secondary:`var(--${gt}-secondary)`,muted:`var(--${gt}-muted)`,mutedForeground:`var(--${gt}-muted-foreground)`,accent:`var(--${gt}-accent)`,accentForeground:`var(--${gt}-accent-foreground)`,destructive:`var(--${gt}-destructive)`,border:`var(--${gt}-border)`,input:`var(--${gt}-input)`},fontSize:{small:`var(--${gt}-font-size-small)`,default:`var(--${gt}-font-size)`,large:`var(--${gt}-font-size-large)`},radius:{small:`var(--${gt}-radius-sm)`,default:`var(--${gt}-radius)`,large:`var(--${gt}-radius-lg)`},shadow:{sm:`var(--${gt}-shadow-sm)`,md:`var(--${gt}-shadow-md)`},spacing:{sm:`var(--${gt}-spacing-sm)`,default:`var(--${gt}-spacing)`,md:`var(--${gt}-spacing-md)`,lg:`var(--${gt}-spacing-lg)`,xl:`var(--${gt}-spacing-xl)`},fontFamily:`var(--${gt}-font-family)`,borderWidth:`var(--${gt}-border-width)`,transition:`var(--${gt}-transition-duration) var(--${gt}-transition-timing-function)`},xt=new Set;let kt=!1;function Nt(){kt||(St(`\n/* InsureOS Style Isolation Reset */\n.${gt}-root {\n all: revert;\n /* Re-apply our base styles after reset */\n font-family: var(--${gt}-font-family);\n background-color: var(--${gt}-background);\n color: var(--${gt}-foreground);\n font-size: var(--${gt}-font-size);\n line-height: 1.5;\n -webkit-font-smoothing: antialiased;\n -moz-osx-font-smoothing: grayscale;\n}\n\n.${gt}-root *,\n.${gt}-root *::before,\n.${gt}-root *::after {\n box-sizing: border-box;\n}\n\n.${gt}-root img,\n.${gt}-root picture,\n.${gt}-root video,\n.${gt}-root canvas,\n.${gt}-root svg {\n display: block;\n max-width: 100%;\n}\n\n.${gt}-root button,\n.${gt}-root input,\n.${gt}-root select,\n.${gt}-root textarea {\n font: inherit;\n color: inherit;\n background: none;\n border: none;\n padding: 0;\n margin: 0;\n}\n\n.${gt}-root button {\n cursor: pointer;\n}\n\n.${gt}-root a {\n color: inherit;\n text-decoration: inherit;\n}\n\n.${gt}-root h1,\n.${gt}-root h2,\n.${gt}-root h3,\n.${gt}-root h4,\n.${gt}-root h5,\n.${gt}-root h6 {\n font-size: inherit;\n font-weight: inherit;\n margin: 0;\n}\n\n.${gt}-root p,\n.${gt}-root ul,\n.${gt}-root ol,\n.${gt}-root blockquote,\n.${gt}-root figure {\n margin: 0;\n padding: 0;\n}\n\n.${gt}-root ul,\n.${gt}-root ol {\n list-style: none;\n}\n\n.${gt}-root table {\n border-collapse: collapse;\n border-spacing: 0;\n}\n\n.${gt}-root hr {\n margin: 0;\n border: none;\n border-top: 1px solid var(--${gt}-border);\n height: 0;\n}\n`),kt=!0,t())}function St(e){if(!document.getElementById(`${gt}-styles`)){const e=document.createElement("style");e.id=`${gt}-styles`,document.head.appendChild(e)}document.getElementById(`${gt}-styles`).textContent+=e+"\n"}function Ct(e){return Object.entries(e).map(([e,t])=>{return`${n=e,n.replace(/([a-z0-9]|(?=[A-Z]))([A-Z])/g,"$1-$2").toLowerCase()}: ${t}`;var n}).join("; ")}function _t(){yt||(St(`:root {\n${Object.entries(wt).map(([e,t])=>` ${e}: ${t};`).join("\n")}\n}`),yt=!0)}const $t={name:e=>`${gt}-${e}`,selector(e){return`.${this.name(e)}`},create(e,t,n){_t();const r=Ct(t),i=function(e){let t=0;for(let n=0;n<e.length;n++)t=(t<<5)-t+e.charCodeAt(n),t&=t;return Math.abs(t).toString(36)}(`${e}:${r}:${n?JSON.stringify(n):""}`),o=`${e}-${i}`,s=vt.get(o);if(s)return s.fullClassName;let a=e;const l=this.name(a);return xt.has(a)||(St(`.${l} { ${r} }`),xt.add(a)),vt.set(o,{contentHash:i,fullClassName:l}),n&&Object.entries(n).forEach(([e,t])=>{this.media(e,{[a]:t})}),l},keyframes(e,t){const n=`${gt}-${e}`;return xt.has(`keyframes-${e}`)||(St(`@keyframes ${n} {\n${Object.entries(t).map(([e,t])=>` ${e} { ${Ct(t)} }`).join("\n")}\n}`),xt.add(`keyframes-${e}`)),n},media(e,t){const n=`media-${e}`;St(`@media ${e} {\n${Object.entries(t).map(([e,t])=>` .${gt}-${e} { ${Ct(t)} }`).join("\n")}\n}`),xt.add(n)},pseudoElement(e,t,n){const r=`${gt}-${e}`,i=`${e}-${t}`;return xt.has(i)||(St(`.${r}${t} { ${Ct(n)} }`),xt.add(i)),r}};var It=Object.freeze({__proto__:null,baseVariables:wt,injectIsolationStyles:Nt,styles:$t,theme:bt,updateBaseVariables:function(e){t(),Object.assign(wt,e);const n=document.getElementById(`${gt}-styles`);if(n){const e=n.textContent||"",r=`:root {\n${Object.entries(wt).map(([e,t])=>` ${e}: ${t};`).join("\n")}\n}`,i=e.includes(":root {")?e.replace(/:root\s*\{[^}]*\}/g,r):r+"\n"+e;n.textContent=i,t()}else _t()}});function Tt(e){return e&&e.ne&&{}.hasOwnProperty.call(e,"default")?e.default:e}var Et,Pt={exports:{}};function zt(){return Et||(Et=1,function(e){!function(){var t={}.hasOwnProperty;function n(){for(var e="",t=0;t<arguments.length;t++){var n=arguments[t];n&&(e=i(e,r(n)))}return e}function r(e){if("string"==typeof e||"number"==typeof e)return e;if("object"!=typeof e)return"";if(Array.isArray(e))return n.apply(null,e);if(e.toString!=={}.toString&&!e.toString.toString().includes("[native code]"))return e.toString();var r="";for(var o in e)t.call(e,o)&&e[o]&&(r=i(r,o));return r}function i(e,t){return t?e?e+" "+t:e+t:e}e.exports?(n.default=n,e.exports=n):window.classNames=n}()}(Pt)),Pt.exports}var Dt=Tt(zt());function Rt({size:e="small"}){const t=$t.create("spinner-small",{width:"16px",height:"16px"}),n=$t.create("spinner-large",{width:"64px",height:"64px"}),r="small"===e?t:n;return $t.keyframes("spin",{"0%":{transform:"rotate(0deg)"},"100%":{transform:"rotate(360deg)"}}),Fe("div",{className:$t.create("loading-spinner",{display:"flex",justifyContent:"center",alignItems:"center",animation:"insure-os-spin 1s linear infinite"}),children:Fe("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor","stroke-width":"2","stroke-linecap":"round","stroke-linejoin":"round",className:Dt(r),children:Fe("path",{d:"M21 12a9 9 0 1 1-6.219-8.56"})})})}function Mt({className:e,children:t,size:n="md"}){const r={sm:bt.spacing.sm,md:bt.spacing.md,lg:bt.spacing.lg,xl:bt.spacing.xl},i=$t.create(`padding-${n}`,{padding:r[n]},{"(max-width: 950px)":{padding:"xl"===n?bt.spacing.lg:"lg"===n?bt.spacing.md:r[n]},"(max-width: 480px)":{padding:bt.spacing.sm}});return Fe("div",{className:Dt(i,e),children:t})}const Ot=function(){function e(t){var n,r;return this.getChildContext||(n=new Set,(r={})[e.k]=this,this.getChildContext=function(){return r},this.componentWillUnmount=function(){n=null},this.shouldComponentUpdate=function(e){this.props.value!=e.value&&n.forEach(function(e){e.v=!0,P(e)})},this.sub=function(e){n.add(e);var t=e.componentWillUnmount;e.componentWillUnmount=function(){n&&n.delete(e),t&&t.call(e)}}),t.children}return e.k="__cC"+g++,e.m=null,e.Provider=e.re=(e.Consumer=function(e,t){return e.children(t)}).contextType=e,e}();function jt({children:e,httpClient:t,stateManager:n,quoteIntentStore:r,formStateManager:i,paymentLinkConfig:o,availableProducts:s,productCodes:a,urlPromoCode:l}){return Fe(Ot.Provider,{value:{httpClient:t,stateManager:n,quoteIntentStore:r,formStateManager:i,paymentLinkConfig:o,availableProducts:s,productCodes:a,urlPromoCode:l,currentRetryAttempt:0,maxRetryAttempts:3},children:e})}function Wt(){const e=function(e){var t=Ue.context[e.k],n=rt(He++,9);return n.c=e,t?(null==n.m&&(n.m=!0,t.sub(Ue)),t.props.value):e.m}(Ot);if(!e)throw new Error("useFormContext must be used within a FormContext provider");return e}function At(e){const t=Wt(),{formStateManager:n}=t;if(!n||"function"!=typeof n.subscribe)throw new Error("useQuoteForm can only be used in quote mode. If you're in payment link mode, use usePaymentLink instead.");const[r,i]=it(()=>e(n));return ot(()=>n.subscribe(()=>{i(e(n))}),[n,e]),{...r,fsm:n}}class Lt extends Error{}class Bt extends Lt{constructor(e){super(`Invalid DateTime: ${e.toMessage()}`)}}class qt extends Lt{constructor(e){super(`Invalid Interval: ${e.toMessage()}`)}}class Ft extends Lt{constructor(e){super(`Invalid Duration: ${e.toMessage()}`)}}class Ht extends Lt{}class Ut extends Lt{constructor(e){super(`Invalid unit ${e}`)}}class Yt extends Lt{}class Zt extends Lt{constructor(){super("Zone is an abstract class")}}const Gt="numeric",Vt="short",Qt="long",Jt={year:Gt,month:Gt,day:Gt},Kt={year:Gt,month:Vt,day:Gt},Xt={year:Gt,month:Vt,day:Gt,weekday:Vt},en={year:Gt,month:Qt,day:Gt},tn={year:Gt,month:Qt,day:Gt,weekday:Qt},nn={hour:Gt,minute:Gt},rn={hour:Gt,minute:Gt,second:Gt},on={hour:Gt,minute:Gt,second:Gt,timeZoneName:Vt},sn={hour:Gt,minute:Gt,second:Gt,timeZoneName:Qt},an={hour:Gt,minute:Gt,hourCycle:"h23"},ln={hour:Gt,minute:Gt,second:Gt,hourCycle:"h23"},cn={hour:Gt,minute:Gt,second:Gt,hourCycle:"h23",timeZoneName:Vt},dn={hour:Gt,minute:Gt,second:Gt,hourCycle:"h23",timeZoneName:Qt},un={year:Gt,month:Gt,day:Gt,hour:Gt,minute:Gt},hn={year:Gt,month:Gt,day:Gt,hour:Gt,minute:Gt,second:Gt},mn={year:Gt,month:Vt,day:Gt,hour:Gt,minute:Gt},fn={year:Gt,month:Vt,day:Gt,hour:Gt,minute:Gt,second:Gt},pn={year:Gt,month:Vt,day:Gt,weekday:Vt,hour:Gt,minute:Gt},gn={year:Gt,month:Qt,day:Gt,hour:Gt,minute:Gt,timeZoneName:Vt},yn={year:Gt,month:Qt,day:Gt,hour:Gt,minute:Gt,second:Gt,timeZoneName:Vt},vn={year:Gt,month:Qt,day:Gt,weekday:Qt,hour:Gt,minute:Gt,timeZoneName:Qt},wn={year:Gt,month:Qt,day:Gt,weekday:Qt,hour:Gt,minute:Gt,second:Gt,timeZoneName:Qt};class bn{get type(){throw new Zt}get name(){throw new Zt}get ianaName(){return this.name}get isUniversal(){throw new Zt}offsetName(e,t){throw new Zt}formatOffset(e,t){throw new Zt}offset(e){throw new Zt}equals(e){throw new Zt}get isValid(){throw new Zt}}let xn=null;class kn extends bn{static get instance(){return null===xn&&(xn=new kn),xn}get type(){return"system"}get name(){return(new Intl.DateTimeFormat).resolvedOptions().timeZone}get isUniversal(){return!1}offsetName(e,{format:t,locale:n}){return qr(e,t,n)}formatOffset(e,t){return Yr(this.offset(e),t)}offset(e){return-new Date(e).getTimezoneOffset()}equals(e){return"system"===e.type}get isValid(){return!0}}const Nn=new Map,Sn={year:0,month:1,day:2,era:3,hour:4,minute:5,second:6},Cn=new Map;class _n extends bn{static create(e){let t=Cn.get(e);return void 0===t&&Cn.set(e,t=new _n(e)),t}static resetCache(){Cn.clear(),Nn.clear()}static isValidSpecifier(e){return this.isValidZone(e)}static isValidZone(e){if(!e)return!1;try{return new Intl.DateTimeFormat("en-US",{timeZone:e}).format(),!0}catch(e){return!1}}constructor(e){super(),this.zoneName=e,this.valid=_n.isValidZone(e)}get type(){return"iana"}get name(){return this.zoneName}get isUniversal(){return!1}offsetName(e,{format:t,locale:n}){return qr(e,t,n,this.name)}formatOffset(e,t){return Yr(this.offset(e),t)}offset(e){if(!this.valid)return NaN;const t=new Date(e);if(isNaN(t))return NaN;const n=function(e){let t=Nn.get(e);return void 0===t&&(t=new Intl.DateTimeFormat("en-US",{hour12:!1,timeZone:e,year:"numeric",month:"2-digit",day:"2-digit",hour:"2-digit",minute:"2-digit",second:"2-digit",era:"short"}),Nn.set(e,t)),t}(this.name);let[r,i,o,s,a,l,c]=n.formatToParts?function(e,t){const n=e.formatToParts(t),r=[];for(let e=0;e<n.length;e++){const{type:t,value:i}=n[e],o=Sn[t];"era"===t?r[o]=i:xr(o)||(r[o]=parseInt(i,10))}return r}(n,t):function(e,t){const n=e.format(t).replace(/\u200E/g,""),r=/(\d+)\/(\d+)\/(\d+) (AD|BC),? (\d+):(\d+):(\d+)/.exec(n),[,i,o,s,a,l,c,d]=r;return[s,i,o,a,l,c,d]}(n,t);"BC"===s&&(r=1-Math.abs(r));let d=+t;const u=d%1e3;return d-=u>=0?u:1e3+u,(Wr({year:r,month:i,day:o,hour:24===a?0:a,minute:l,second:c,millisecond:0})-d)/6e4}equals(e){return"iana"===e.type&&e.name===this.name}get isValid(){return this.valid}}let $n={};const In=new Map;function Tn(e,t={}){const n=JSON.stringify([e,t]);let r=In.get(n);return void 0===r&&(r=new Intl.DateTimeFormat(e,t),In.set(n,r)),r}const En=new Map,Pn=new Map;let zn=null;const Dn=new Map;function Rn(e){let t=Dn.get(e);return void 0===t&&(t=new Intl.DateTimeFormat(e).resolvedOptions(),Dn.set(e,t)),t}const Mn=new Map;function On(e,t,n,r){const i=e.listingMode();return"error"===i?null:"en"===i?n(t):r(t)}class jn{constructor(e,t,n){this.padTo=n.padTo||0,this.floor=n.floor||!1;const{padTo:r,floor:i,...o}=n;if(!t||Object.keys(o).length>0){const t={useGrouping:!1,...n};n.padTo>0&&(t.minimumIntegerDigits=n.padTo),this.inf=function(e,t={}){const n=JSON.stringify([e,t]);let r=En.get(n);return void 0===r&&(r=new Intl.NumberFormat(e,t),En.set(n,r)),r}(e,t)}}format(e){if(this.inf){const t=this.floor?Math.floor(e):e;return this.inf.format(t)}return Er(this.floor?Math.floor(e):Rr(e,3),this.padTo)}}class Wn{constructor(e,t,n){let r;if(this.opts=n,this.originalZone=void 0,this.opts.timeZone)this.dt=e;else if("fixed"===e.zone.type){const t=e.offset/60*-1,n=t>=0?`Etc/GMT+${t}`:`Etc/GMT${t}`;0!==e.offset&&_n.create(n).valid?(r=n,this.dt=e):(r="UTC",this.dt=0===e.offset?e:e.setZone("UTC").plus({minutes:e.offset}),this.originalZone=e.zone)}else"system"===e.zone.type?this.dt=e:"iana"===e.zone.type?(this.dt=e,r=e.zone.name):(r="UTC",this.dt=e.setZone("UTC").plus({minutes:e.offset}),this.originalZone=e.zone);const i={...this.opts};i.timeZone=i.timeZone||r,this.dtf=Tn(t,i)}format(){return this.originalZone?this.formatToParts().map(({value:e})=>e).join(""):this.dtf.format(this.dt.toJSDate())}formatToParts(){const e=this.dtf.formatToParts(this.dt.toJSDate());return this.originalZone?e.map(e=>{if("timeZoneName"===e.type){const t=this.originalZone.offsetName(this.dt.ts,{locale:this.dt.locale,format:this.opts.timeZoneName});return{...e,value:t}}return e}):e}resolvedOptions(){return this.dtf.resolvedOptions()}}class An{constructor(e,t,n){this.opts={style:"long",...n},!t&&Sr()&&(this.rtf=function(e,t={}){const{base:n,...r}=t,i=JSON.stringify([e,r]);let o=Pn.get(i);return void 0===o&&(o=new Intl.RelativeTimeFormat(e,t),Pn.set(i,o)),o}(e,n))}format(e,t){return this.rtf?this.rtf.format(e,t):function(e,t,n="always",r=!1){const i={years:["year","yr."],quarters:["quarter","qtr."],months:["month","mo."],weeks:["week","wk."],days:["day","day","days"],hours:["hour","hr."],minutes:["minute","min."],seconds:["second","sec."]},o=-1===["hours","minutes","seconds"].indexOf(e);if("auto"===n&&o){const n="days"===e;switch(t){case 1:return n?"tomorrow":`next ${i[e][0]}`;case-1:return n?"yesterday":`last ${i[e][0]}`;case 0:return n?"today":`this ${i[e][0]}`}}const s=Object.is(t,-0)||t<0,a=Math.abs(t),l=1===a,c=i[e],d=r?l?c[1]:c[2]||c[1]:l?i[e][0]:e;return s?`${a} ${d} ago`:`in ${a} ${d}`}(t,e,this.opts.numeric,"long"!==this.opts.style)}formatToParts(e,t){return this.rtf?this.rtf.formatToParts(e,t):[]}}const Ln={firstDay:1,minimalDays:4,weekend:[6,7]};class Bn{static fromOpts(e){return Bn.create(e.locale,e.numberingSystem,e.outputCalendar,e.weekSettings,e.defaultToEN)}static create(e,t,n,r,i=!1){const o=e||or.defaultLocale,s=o||(i?"en-US":zn||(zn=(new Intl.DateTimeFormat).resolvedOptions().locale,zn)),a=t||or.defaultNumberingSystem,l=n||or.defaultOutputCalendar,c=Ir(r)||or.defaultWeekSettings;return new Bn(s,a,l,c,o)}static resetCache(){zn=null,In.clear(),En.clear(),Pn.clear(),Dn.clear(),Mn.clear()}static fromObject({locale:e,numberingSystem:t,outputCalendar:n,weekSettings:r}={}){return Bn.create(e,t,n,r)}constructor(e,t,n,r,i){const[o,s,a]=function(e){const t=e.indexOf("-x-");-1!==t&&(e=e.substring(0,t));const n=e.indexOf("-u-");if(-1===n)return[e];{let t,r;try{t=Tn(e).resolvedOptions(),r=e}catch(i){const o=e.substring(0,n);t=Tn(o).resolvedOptions(),r=o}const{numberingSystem:i,calendar:o}=t;return[r,i,o]}}(e);this.locale=o,this.numberingSystem=t||s||null,this.outputCalendar=n||a||null,this.weekSettings=r,this.intl=function(e,t,n){return n||t?(e.includes("-u-")||(e+="-u"),n&&(e+=`-ca-${n}`),t&&(e+=`-nu-${t}`),e):e}(this.locale,this.numberingSystem,this.outputCalendar),this.weekdaysCache={format:{},standalone:{}},this.monthsCache={format:{},standalone:{}},this.meridiemCache=null,this.eraCache={},this.specifiedLocale=i,this.fastNumbersCached=null}get fastNumbers(){var e;return null==this.fastNumbersCached&&(this.fastNumbersCached=(!(e=this).numberingSystem||"latn"===e.numberingSystem)&&("latn"===e.numberingSystem||!e.locale||e.locale.startsWith("en")||"latn"===Rn(e.locale).numberingSystem)),this.fastNumbersCached}listingMode(){const e=this.isEnglish(),t=!(null!==this.numberingSystem&&"latn"!==this.numberingSystem||null!==this.outputCalendar&&"gregory"!==this.outputCalendar);return e&&t?"en":"intl"}clone(e){return e&&0!==Object.getOwnPropertyNames(e).length?Bn.create(e.locale||this.specifiedLocale,e.numberingSystem||this.numberingSystem,e.outputCalendar||this.outputCalendar,Ir(e.weekSettings)||this.weekSettings,e.defaultToEN||!1):this}redefaultToEN(e={}){return this.clone({...e,defaultToEN:!0})}redefaultToSystem(e={}){return this.clone({...e,defaultToEN:!1})}months(e,t=!1){return On(this,e,Jr,()=>{const n="ja"===this.intl||this.intl.startsWith("ja-"),r=(t&=!n)?{month:e,day:"numeric"}:{month:e},i=t?"format":"standalone";if(!this.monthsCache[i][e]){const t=n?e=>this.dtFormatter(e,r).format():e=>this.extract(e,r,"month");this.monthsCache[i][e]=function(e){const t=[];for(let n=1;n<=12;n++){const r=es.utc(2009,n,1);t.push(e(r))}return t}(t)}return this.monthsCache[i][e]})}weekdays(e,t=!1){return On(this,e,ti,()=>{const n=t?{weekday:e,year:"numeric",month:"long",day:"numeric"}:{weekday:e},r=t?"format":"standalone";return this.weekdaysCache[r][e]||(this.weekdaysCache[r][e]=function(e){const t=[];for(let n=1;n<=7;n++){const r=es.utc(2016,11,13+n);t.push(e(r))}return t}(e=>this.extract(e,n,"weekday"))),this.weekdaysCache[r][e]})}meridiems(){return On(this,void 0,()=>ni,()=>{if(!this.meridiemCache){const e={hour:"numeric",hourCycle:"h12"};this.meridiemCache=[es.utc(2016,11,13,9),es.utc(2016,11,13,19)].map(t=>this.extract(t,e,"dayperiod"))}return this.meridiemCache})}eras(e){return On(this,e,si,()=>{const t={era:e};return this.eraCache[e]||(this.eraCache[e]=[es.utc(-40,1,1),es.utc(2017,1,1)].map(e=>this.extract(e,t,"era"))),this.eraCache[e]})}extract(e,t,n){const r=this.dtFormatter(e,t).formatToParts().find(e=>e.type.toLowerCase()===n);return r?r.value:null}numberFormatter(e={}){return new jn(this.intl,e.forceSimple||this.fastNumbers,e)}dtFormatter(e,t={}){return new Wn(e,this.intl,t)}relFormatter(e={}){return new An(this.intl,this.isEnglish(),e)}listFormatter(e={}){return function(e,t={}){const n=JSON.stringify([e,t]);let r=$n[n];return r||(r=new Intl.ListFormat(e,t),$n[n]=r),r}(this.intl,e)}isEnglish(){return"en"===this.locale||"en-us"===this.locale.toLowerCase()||Rn(this.intl).locale.startsWith("en-us")}getWeekSettings(){return this.weekSettings?this.weekSettings:Cr()?function(e){let t=Mn.get(e);if(!t){const n=new Intl.Locale(e);t="getWeekInfo"in n?n.getWeekInfo():n.weekInfo,"minimalDays"in t||(t={...Ln,...t}),Mn.set(e,t)}return t}(this.locale):Ln}getStartOfWeek(){return this.getWeekSettings().firstDay}getMinDaysInFirstWeek(){return this.getWeekSettings().minimalDays}getWeekendDays(){return this.getWeekSettings().weekend}equals(e){return this.locale===e.locale&&this.numberingSystem===e.numberingSystem&&this.outputCalendar===e.outputCalendar}toString(){return`Locale(${this.locale}, ${this.numberingSystem}, ${this.outputCalendar})`}}let qn=null;class Fn extends bn{static get utcInstance(){return null===qn&&(qn=new Fn(0)),qn}static instance(e){return 0===e?Fn.utcInstance:new Fn(e)}static parseSpecifier(e){if(e){const t=e.match(/^utc(?:([+-]\d{1,2})(?::(\d{2}))?)?$/i);if(t)return new Fn(Fr(t[1],t[2]))}return null}constructor(e){super(),this.fixed=e}get type(){return"fixed"}get name(){return 0===this.fixed?"UTC":`UTC${Yr(this.fixed,"narrow")}`}get ianaName(){return 0===this.fixed?"Etc/UTC":`Etc/GMT${Yr(-this.fixed,"narrow")}`}offsetName(){return this.name}formatOffset(e,t){return Yr(this.fixed,t)}get isUniversal(){return!0}offset(){return this.fixed}equals(e){return"fixed"===e.type&&e.fixed===this.fixed}get isValid(){return!0}}class Hn extends bn{constructor(e){super(),this.zoneName=e}get type(){return"invalid"}get name(){return this.zoneName}get isUniversal(){return!1}offsetName(){return null}formatOffset(){return""}offset(){return NaN}equals(){return!1}get isValid(){return!1}}function Un(e,t){if(xr(e)||null===e)return t;if(e instanceof bn)return e;if(function(e){return"string"==typeof e}(e)){const n=e.toLowerCase();return"default"===n?t:"local"===n||"system"===n?kn.instance:"utc"===n||"gmt"===n?Fn.utcInstance:Fn.parseSpecifier(n)||_n.create(e)}return kr(e)?Fn.instance(e):"object"==typeof e&&"offset"in e&&"function"==typeof e.offset?e:new Hn(e)}const Yn={arab:"[٠-٩]",arabext:"[۰-۹]",bali:"[᭐-᭙]",beng:"[০-৯]",deva:"[०-९]",fullwide:"[0-9]",gujr:"[૦-૯]",hanidec:"[〇|一|二|三|四|五|六|七|八|九]",khmr:"[០-៩]",knda:"[೦-೯]",laoo:"[໐-໙]",limb:"[᥆-᥏]",mlym:"[൦-൯]",mong:"[᠐-᠙]",mymr:"[၀-၉]",orya:"[୦-୯]",tamldec:"[௦-௯]",telu:"[౦-౯]",thai:"[๐-๙]",tibt:"[༠-༩]",latn:"\\d"},Zn={arab:[1632,1641],arabext:[1776,1785],bali:[6992,7001],beng:[2534,2543],deva:[2406,2415],fullwide:[65296,65303],gujr:[2790,2799],khmr:[6112,6121],knda:[3302,3311],laoo:[3792,3801],limb:[6470,6479],mlym:[3430,3439],mong:[6160,6169],mymr:[4160,4169],orya:[2918,2927],tamldec:[3046,3055],telu:[3174,3183],thai:[3664,3673],tibt:[3872,3881]},Gn=Yn.hanidec.replace(/[\[|\]]/g,"").split(""),Vn=new Map;function Qn({numberingSystem:e},t=""){const n=e||"latn";let r=Vn.get(n);void 0===r&&(r=new Map,Vn.set(n,r));let i=r.get(t);return void 0===i&&(i=new RegExp(`${Yn[n]}${t}`),r.set(t,i)),i}let Jn,Kn=()=>Date.now(),Xn="system",er=null,tr=null,nr=null,rr=60,ir=null;class or{static get now(){return Kn}static set now(e){Kn=e}static set defaultZone(e){Xn=e}static get defaultZone(){return Un(Xn,kn.instance)}static get defaultLocale(){return er}static set defaultLocale(e){er=e}static get defaultNumberingSystem(){return tr}static set defaultNumberingSystem(e){tr=e}static get defaultOutputCalendar(){return nr}static set defaultOutputCalendar(e){nr=e}static get defaultWeekSettings(){return ir}static set defaultWeekSettings(e){ir=Ir(e)}static get twoDigitCutoffYear(){return rr}static set twoDigitCutoffYear(e){rr=e%100}static get throwOnInvalid(){return Jn}static set throwOnInvalid(e){Jn=e}static resetCaches(){Bn.resetCache(),_n.resetCache(),es.resetCache(),Vn.clear()}}class sr{constructor(e,t){this.reason=e,this.explanation=t}toMessage(){return this.explanation?`${this.reason}: ${this.explanation}`:this.reason}}const ar=[0,31,59,90,120,151,181,212,243,273,304,334],lr=[0,31,60,91,121,152,182,213,244,274,305,335];function cr(e,t){return new sr("unit out of range",`you specified ${t} (of type ${typeof t}) as a ${e}, which is invalid`)}function dr(e,t,n){const r=new Date(Date.UTC(e,t-1,n));e<100&&e>=0&&r.setUTCFullYear(r.getUTCFullYear()-1900);const i=r.getUTCDay();return 0===i?7:i}function ur(e,t,n){return n+(Mr(e)?lr:ar)[t-1]}function hr(e,t){const n=Mr(e)?lr:ar,r=n.findIndex(e=>e<t);return{month:r+1,day:t-n[r]}}function mr(e,t){return(e-t+7)%7+1}function fr(e,t=4,n=1){const{year:r,month:i,day:o}=e,s=ur(r,i,o),a=mr(dr(r,i,o),n);let l,c=Math.floor((s-a+14-t)/7);return c<1?(l=r-1,c=Lr(l,t,n)):c>Lr(r,t,n)?(l=r+1,c=1):l=r,{weekYear:l,weekNumber:c,weekday:a,...Zr(e)}}function pr(e,t=4,n=1){const{weekYear:r,weekNumber:i,weekday:o}=e,s=mr(dr(r,1,t),n),a=Or(r);let l,c=7*i+o-s-7+t;c<1?(l=r-1,c+=Or(l)):c>a?(l=r+1,c-=Or(r)):l=r;const{month:d,day:u}=hr(l,c);return{year:l,month:d,day:u,...Zr(e)}}function gr(e){const{year:t,month:n,day:r}=e;return{year:t,ordinal:ur(t,n,r),...Zr(e)}}function yr(e){const{year:t,ordinal:n}=e,{month:r,day:i}=hr(t,n);return{year:t,month:r,day:i,...Zr(e)}}function vr(e,t){if(!xr(e.localWeekday)||!xr(e.localWeekNumber)||!xr(e.localWeekYear)){if(!xr(e.weekday)||!xr(e.weekNumber)||!xr(e.weekYear))throw new Ht("Cannot mix locale-based week fields with ISO-based week fields");return xr(e.localWeekday)||(e.weekday=e.localWeekday),xr(e.localWeekNumber)||(e.weekNumber=e.localWeekNumber),xr(e.localWeekYear)||(e.weekYear=e.localWeekYear),delete e.localWeekday,delete e.localWeekNumber,delete e.localWeekYear,{minDaysInFirstWeek:t.getMinDaysInFirstWeek(),startOfWeek:t.getStartOfWeek()}}return{minDaysInFirstWeek:4,startOfWeek:1}}function wr(e){const t=Nr(e.year),n=Tr(e.month,1,12),r=Tr(e.day,1,jr(e.year,e.month));return t?n?!r&&cr("day",e.day):cr("month",e.month):cr("year",e.year)}function br(e){const{hour:t,minute:n,second:r,millisecond:i}=e,o=Tr(t,0,23)||24===t&&0===n&&0===r&&0===i,s=Tr(n,0,59),a=Tr(r,0,59),l=Tr(i,0,999);return o?s?a?!l&&cr("millisecond",i):cr("second",r):cr("minute",n):cr("hour",t)}function xr(e){return void 0===e}function kr(e){return"number"==typeof e}function Nr(e){return"number"==typeof e&&e%1==0}function Sr(){try{return"undefined"!=typeof Intl&&!!Intl.RelativeTimeFormat}catch(e){return!1}}function Cr(){try{return"undefined"!=typeof Intl&&!!Intl.Locale&&("weekInfo"in Intl.Locale.prototype||"getWeekInfo"in Intl.Locale.prototype)}catch(e){return!1}}function _r(e,t,n){if(0!==e.length)return e.reduce((e,r)=>{const i=[t(r),r];return e&&n(e[0],i[0])===e[0]?e:i},null)[1]}function $r(e,t){return{}.hasOwnProperty.call(e,t)}function Ir(e){if(null==e)return null;if("object"!=typeof e)throw new Yt("Week settings must be an object");if(!Tr(e.firstDay,1,7)||!Tr(e.minimalDays,1,7)||!Array.isArray(e.weekend)||e.weekend.some(e=>!Tr(e,1,7)))throw new Yt("Invalid week settings");return{firstDay:e.firstDay,minimalDays:e.minimalDays,weekend:Array.from(e.weekend)}}function Tr(e,t,n){return Nr(e)&&e>=t&&e<=n}function Er(e,t=2){let n;return n=e<0?"-"+(""+-e).padStart(t,"0"):(""+e).padStart(t,"0"),n}function Pr(e){return xr(e)||null===e||""===e?void 0:parseInt(e,10)}function zr(e){return xr(e)||null===e||""===e?void 0:parseFloat(e)}function Dr(e){if(!xr(e)&&null!==e&&""!==e){const t=1e3*parseFloat("0."+e);return Math.floor(t)}}function Rr(e,t,n="round"){const r=10**t;switch(n){case"expand":return e>0?Math.ceil(e*r)/r:Math.floor(e*r)/r;case"trunc":return Math.trunc(e*r)/r;case"round":return Math.round(e*r)/r;case"floor":return Math.floor(e*r)/r;case"ceil":return Math.ceil(e*r)/r;default:throw new RangeError(`Value rounding ${n} is out of range`)}}function Mr(e){return e%4==0&&(e%100!=0||e%400==0)}function Or(e){return Mr(e)?366:365}function jr(e,t){const n=(r=t-1)-12*Math.floor(r/12)+1;var r;return 2===n?Mr(e+(t-n)/12)?29:28:[31,null,31,30,31,30,31,31,30,31,30,31][n-1]}function Wr(e){let t=Date.UTC(e.year,e.month-1,e.day,e.hour,e.minute,e.second,e.millisecond);return e.year<100&&e.year>=0&&(t=new Date(t),t.setUTCFullYear(e.year,e.month-1,e.day)),+t}function Ar(e,t,n){return-mr(dr(e,1,t),n)+t-1}function Lr(e,t=4,n=1){const r=Ar(e,t,n),i=Ar(e+1,t,n);return(Or(e)-r+i)/7}function Br(e){return e>99?e:e>or.twoDigitCutoffYear?1900+e:2e3+e}function qr(e,t,n,r=null){const i=new Date(e),o={hourCycle:"h23",year:"numeric",month:"2-digit",day:"2-digit",hour:"2-digit",minute:"2-digit"};r&&(o.timeZone=r);const s={timeZoneName:t,...o},a=new Intl.DateTimeFormat(n,s).formatToParts(i).find(e=>"timezonename"===e.type.toLowerCase());return a?a.value:null}function Fr(e,t){let n=parseInt(e,10);Number.isNaN(n)&&(n=0);const r=parseInt(t,10)||0;return 60*n+(n<0||Object.is(n,-0)?-r:r)}function Hr(e){const t=Number(e);if("boolean"==typeof e||""===e||!Number.isFinite(t))throw new Yt(`Invalid unit value ${e}`);return t}function Ur(e,t){const n={};for(const r in e)if($r(e,r)){const i=e[r];if(null==i)continue;n[t(r)]=Hr(i)}return n}function Yr(e,t){const n=Math.trunc(Math.abs(e/60)),r=Math.trunc(Math.abs(e%60)),i=e>=0?"+":"-";switch(t){case"short":return`${i}${Er(n,2)}:${Er(r,2)}`;case"narrow":return`${i}${n}${r>0?`:${r}`:""}`;case"techie":return`${i}${Er(n,2)}${Er(r,2)}`;default:throw new RangeError(`Value format ${t} is out of range for property format`)}}function Zr(e){return function(e){return["hour","minute","second","millisecond"].reduce((t,n)=>(t[n]=e[n],t),{})}(e)}const Gr=["January","February","March","April","May","June","July","August","September","October","November","December"],Vr=["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],Qr=["J","F","M","A","M","J","J","A","S","O","N","D"];function Jr(e){switch(e){case"narrow":return[...Qr];case"short":return[...Vr];case"long":return[...Gr];case"numeric":return["1","2","3","4","5","6","7","8","9","10","11","12"];case"2-digit":return["01","02","03","04","05","06","07","08","09","10","11","12"];default:return null}}const Kr=["Monday","Tuesday","Wednesday","Thursday","Friday","Saturday","Sunday"],Xr=["Mon","Tue","Wed","Thu","Fri","Sat","Sun"],ei=["M","T","W","T","F","S","S"];function ti(e){switch(e){case"narrow":return[...ei];case"short":return[...Xr];case"long":return[...Kr];case"numeric":return["1","2","3","4","5","6","7"];default:return null}}const ni=["AM","PM"],ri=["Before Christ","Anno Domini"],ii=["BC","AD"],oi=["B","A"];function si(e){switch(e){case"narrow":return[...oi];case"short":return[...ii];case"long":return[...ri];default:return null}}function ai(e,t){let n="";for(const r of e)r.literal?n+=r.val:n+=t(r.val);return n}const li={D:Jt,DD:Kt,DDD:en,DDDD:tn,t:nn,tt:rn,ttt:on,tttt:sn,T:an,TT:ln,TTT:cn,TTTT:dn,f:un,ff:mn,fff:gn,ffff:vn,F:hn,FF:fn,FFF:yn,FFFF:wn};class ci{static create(e,t={}){return new ci(e,t)}static parseFormat(e){let t=null,n="",r=!1;const i=[];for(let o=0;o<e.length;o++){const s=e.charAt(o);"'"===s?((n.length>0||r)&&i.push({literal:r||/^\s+$/.test(n),val:""===n?"'":n}),t=null,n="",r=!r):r||s===t?n+=s:(n.length>0&&i.push({literal:/^\s+$/.test(n),val:n}),n=s,t=s)}return n.length>0&&i.push({literal:r||/^\s+$/.test(n),val:n}),i}static macroTokenToFormatOpts(e){return li[e]}constructor(e,t){this.opts=t,this.loc=e,this.systemLoc=null}formatWithSystemDefault(e,t){return null===this.systemLoc&&(this.systemLoc=this.loc.redefaultToSystem()),this.systemLoc.dtFormatter(e,{...this.opts,...t}).format()}dtFormatter(e,t={}){return this.loc.dtFormatter(e,{...this.opts,...t})}formatDateTime(e,t){return this.dtFormatter(e,t).format()}formatDateTimeParts(e,t){return this.dtFormatter(e,t).formatToParts()}formatInterval(e,t){return this.dtFormatter(e.start,t).dtf.formatRange(e.start.toJSDate(),e.end.toJSDate())}resolvedOptions(e,t){return this.dtFormatter(e,t).resolvedOptions()}num(e,t=0,n){if(this.opts.forceSimple)return Er(e,t);const r={...this.opts};return t>0&&(r.padTo=t),n&&(r.signDisplay=n),this.loc.numberFormatter(r).format(e)}formatDateTimeFromString(e,t){const n="en"===this.loc.listingMode(),r=this.loc.outputCalendar&&"gregory"!==this.loc.outputCalendar,i=(t,n)=>this.loc.extract(e,t,n),o=t=>e.isOffsetFixed&&0===e.offset&&t.allowZ?"Z":e.isValid?e.zone.formatOffset(e.ts,t.format):"",s=(t,r)=>n?function(e,t){return Jr(t)[e.month-1]}(e,t):i(r?{month:t}:{month:t,day:"numeric"},"month"),a=(t,r)=>n?function(e,t){return ti(t)[e.weekday-1]}(e,t):i(r?{weekday:t}:{weekday:t,month:"long",day:"numeric"},"weekday"),l=t=>{const n=ci.macroTokenToFormatOpts(t);return n?this.formatWithSystemDefault(e,n):t},c=t=>n?function(e,t){return si(t)[e.year<0?0:1]}(e,t):i({era:t},"era");return ai(ci.parseFormat(t),t=>{switch(t){case"S":return this.num(e.millisecond);case"u":case"SSS":return this.num(e.millisecond,3);case"s":return this.num(e.second);case"ss":return this.num(e.second,2);case"uu":return this.num(Math.floor(e.millisecond/10),2);case"uuu":return this.num(Math.floor(e.millisecond/100));case"m":return this.num(e.minute);case"mm":return this.num(e.minute,2);case"h":return this.num(e.hour%12==0?12:e.hour%12);case"hh":return this.num(e.hour%12==0?12:e.hour%12,2);case"H":return this.num(e.hour);case"HH":return this.num(e.hour,2);case"Z":return o({format:"narrow",allowZ:this.opts.allowZ});case"ZZ":return o({format:"short",allowZ:this.opts.allowZ});case"ZZZ":return o({format:"techie",allowZ:this.opts.allowZ});case"ZZZZ":return e.zone.offsetName(e.ts,{format:"short",locale:this.loc.locale});case"ZZZZZ":return e.zone.offsetName(e.ts,{format:"long",locale:this.loc.locale});case"z":return e.zoneName;case"a":return n?function(e){return ni[e.hour<12?0:1]}(e):i({hour:"numeric",hourCycle:"h12"},"dayperiod");case"d":return r?i({day:"numeric"},"day"):this.num(e.day);case"dd":return r?i({day:"2-digit"},"day"):this.num(e.day,2);case"c":case"E":return this.num(e.weekday);case"ccc":return a("short",!0);case"cccc":return a("long",!0);case"ccccc":return a("narrow",!0);case"EEE":return a("short",!1);case"EEEE":return a("long",!1);case"EEEEE":return a("narrow",!1);case"L":return r?i({month:"numeric",day:"numeric"},"month"):this.num(e.month);case"LL":return r?i({month:"2-digit",day:"numeric"},"month"):this.num(e.month,2);case"LLL":return s("short",!0);case"LLLL":return s("long",!0);case"LLLLL":return s("narrow",!0);case"M":return r?i({month:"numeric"},"month"):this.num(e.month);case"MM":return r?i({month:"2-digit"},"month"):this.num(e.month,2);case"MMM":return s("short",!1);case"MMMM":return s("long",!1);case"MMMMM":return s("narrow",!1);case"y":return r?i({year:"numeric"},"year"):this.num(e.year);case"yy":return r?i({year:"2-digit"},"year"):this.num(e.year.toString().slice(-2),2);case"yyyy":return r?i({year:"numeric"},"year"):this.num(e.year,4);case"yyyyyy":return r?i({year:"numeric"},"year"):this.num(e.year,6);case"G":return c("short");case"GG":return c("long");case"GGGGG":return c("narrow");case"kk":return this.num(e.weekYear.toString().slice(-2),2);case"kkkk":return this.num(e.weekYear,4);case"W":return this.num(e.weekNumber);case"WW":return this.num(e.weekNumber,2);case"n":return this.num(e.localWeekNumber);case"nn":return this.num(e.localWeekNumber,2);case"ii":return this.num(e.localWeekYear.toString().slice(-2),2);case"iiii":return this.num(e.localWeekYear,4);case"o":return this.num(e.ordinal);case"ooo":return this.num(e.ordinal,3);case"q":return this.num(e.quarter);case"qq":return this.num(e.quarter,2);case"X":return this.num(Math.floor(e.ts/1e3));case"x":return this.num(e.ts);default:return l(t)}})}formatDurationFromString(e,t){const n="negativeLargestOnly"===this.opts.signMode?-1:1,r=e=>{switch(e[0]){case"S":return"milliseconds";case"s":return"seconds";case"m":return"minutes";case"h":return"hours";case"d":return"days";case"w":return"weeks";case"M":return"months";case"y":return"years";default:return null}},i=ci.parseFormat(t),o=i.reduce((e,{literal:t,val:n})=>t?e:e.concat(n),[]),s=e.shiftTo(...o.map(r).filter(e=>e));return ai(i,((e,t)=>i=>{const o=r(i);if(o){const r=t.isNegativeDuration&&o!==t.largestUnit?n:1;let s;return s="negativeLargestOnly"===this.opts.signMode&&o!==t.largestUnit?"never":"all"===this.opts.signMode?"always":"auto",this.num(e.get(o)*r,i.length,s)}return i})(s,{isNegativeDuration:s<0,largestUnit:Object.keys(s.values)[0]}))}}const di=/[A-Za-z_+-]{1,256}(?::?\/[A-Za-z0-9_+-]{1,256}(?:\/[A-Za-z0-9_+-]{1,256})?)?/;function ui(...e){const t=e.reduce((e,t)=>e+t.source,"");return RegExp(`^${t}$`)}function hi(...e){return t=>e.reduce(([e,n,r],i)=>{const[o,s,a]=i(t,r);return[{...e,...o},s||n,a]},[{},null,1]).slice(0,2)}function mi(e,...t){if(null==e)return[null,null];for(const[n,r]of t){const t=n.exec(e);if(t)return r(t)}return[null,null]}function fi(...e){return(t,n)=>{const r={};let i;for(i=0;i<e.length;i++)r[e[i]]=Pr(t[n+i]);return[r,null,n+i]}}const pi=/(?:([Zz])|([+-]\d\d)(?::?(\d\d))?)/,gi=/(\d\d)(?::?(\d\d)(?::?(\d\d)(?:[.,](\d{1,30}))?)?)?/,yi=RegExp(`${gi.source}(?:${pi.source}?(?:\\[(${di.source})\\])?)?`),vi=RegExp(`(?:[Tt]${yi.source})?`),wi=fi("weekYear","weekNumber","weekDay"),bi=fi("year","ordinal"),xi=RegExp(`${gi.source} ?(?:${pi.source}|(${di.source}))?`),ki=RegExp(`(?: ${xi.source})?`);function Ni(e,t,n){const r=e[t];return xr(r)?n:Pr(r)}function Si(e,t){return[{hours:Ni(e,t,0),minutes:Ni(e,t+1,0),seconds:Ni(e,t+2,0),milliseconds:Dr(e[t+3])},null,t+4]}function Ci(e,t){const n=!e[t]&&!e[t+1],r=Fr(e[t+1],e[t+2]);return[{},n?null:Fn.instance(r),t+3]}function _i(e,t){return[{},e[t]?_n.create(e[t]):null,t+1]}const $i=RegExp(`^T?${gi.source}$`),Ii=/^-?P(?:(?:(-?\d{1,20}(?:\.\d{1,20})?)Y)?(?:(-?\d{1,20}(?:\.\d{1,20})?)M)?(?:(-?\d{1,20}(?:\.\d{1,20})?)W)?(?:(-?\d{1,20}(?:\.\d{1,20})?)D)?(?:T(?:(-?\d{1,20}(?:\.\d{1,20})?)H)?(?:(-?\d{1,20}(?:\.\d{1,20})?)M)?(?:(-?\d{1,20})(?:[.,](-?\d{1,20}))?S)?)?)$/;function Ti(e){const[t,n,r,i,o,s,a,l,c]=e,d="-"===t[0],u=l&&"-"===l[0],h=(e,t=!1)=>void 0!==e&&(t||e&&d)?-e:e;return[{years:h(zr(n)),months:h(zr(r)),weeks:h(zr(i)),days:h(zr(o)),hours:h(zr(s)),minutes:h(zr(a)),seconds:h(zr(l),"-0"===l),milliseconds:h(Dr(c),u)}]}const Ei={GMT:0,EDT:-240,EST:-300,CDT:-300,CST:-360,MDT:-360,MST:-420,PDT:-420,PST:-480};function Pi(e,t,n,r,i,o,s){const a={year:2===t.length?Br(Pr(t)):Pr(t),month:Vr.indexOf(n)+1,day:Pr(r),hour:Pr(i),minute:Pr(o)};return s&&(a.second=Pr(s)),e&&(a.weekday=e.length>3?Kr.indexOf(e)+1:Xr.indexOf(e)+1),a}const zi=/^(?:(Mon|Tue|Wed|Thu|Fri|Sat|Sun),\s)?(\d{1,2})\s(Jan|Feb|Mar|Apr|May|Jun|Jul|Aug|Sep|Oct|Nov|Dec)\s(\d{2,4})\s(\d\d):(\d\d)(?::(\d\d))?\s(?:(UT|GMT|[ECMP][SD]T)|([Zz])|(?:([+-]\d\d)(\d\d)))$/;function Di(e){const[,t,n,r,i,o,s,a,l,c,d,u]=e,h=Pi(t,i,r,n,o,s,a);let m;return m=l?Ei[l]:c?0:Fr(d,u),[h,new Fn(m)]}const Ri=/^(Mon|Tue|Wed|Thu|Fri|Sat|Sun), (\d\d) (Jan|Feb|Mar|Apr|May|Jun|Jul|Aug|Sep|Oct|Nov|Dec) (\d{4}) (\d\d):(\d\d):(\d\d) GMT$/,Mi=/^(Monday|Tuesday|Wednesday|Thursday|Friday|Saturday|Sunday), (\d\d)-(Jan|Feb|Mar|Apr|May|Jun|Jul|Aug|Sep|Oct|Nov|Dec)-(\d\d) (\d\d):(\d\d):(\d\d) GMT$/,Oi=/^(Mon|Tue|Wed|Thu|Fri|Sat|Sun) (Jan|Feb|Mar|Apr|May|Jun|Jul|Aug|Sep|Oct|Nov|Dec) ( \d|\d\d) (\d\d):(\d\d):(\d\d) (\d{4})$/;function ji(e){const[,t,n,r,i,o,s,a]=e;return[Pi(t,i,r,n,o,s,a),Fn.utcInstance]}function Wi(e){const[,t,n,r,i,o,s,a]=e;return[Pi(t,a,n,r,i,o,s),Fn.utcInstance]}const Ai=ui(/([+-]\d{6}|\d{4})(?:-?(\d\d)(?:-?(\d\d))?)?/,vi),Li=ui(/(\d{4})-?W(\d\d)(?:-?(\d))?/,vi),Bi=ui(/(\d{4})-?(\d{3})/,vi),qi=ui(yi),Fi=hi(function(e,t){return[{year:Ni(e,t),month:Ni(e,t+1,1),day:Ni(e,t+2,1)},null,t+3]},Si,Ci,_i),Hi=hi(wi,Si,Ci,_i),Ui=hi(bi,Si,Ci,_i),Yi=hi(Si,Ci,_i),Zi=hi(Si),Gi=ui(/(\d{4})-(\d\d)-(\d\d)/,ki),Vi=ui(xi),Qi=hi(Si,Ci,_i),Ji="Invalid Duration",Ki={weeks:{days:7,hours:168,minutes:10080,seconds:604800,milliseconds:6048e5},days:{hours:24,minutes:1440,seconds:86400,milliseconds:864e5},hours:{minutes:60,seconds:3600,milliseconds:36e5},minutes:{seconds:60,milliseconds:6e4},seconds:{milliseconds:1e3}},Xi={years:{quarters:4,months:12,weeks:52,days:365,hours:8760,minutes:525600,seconds:31536e3,milliseconds:31536e6},quarters:{months:3,weeks:13,days:91,hours:2184,minutes:131040,seconds:7862400,milliseconds:78624e5},months:{weeks:4,days:30,hours:720,minutes:43200,seconds:2592e3,milliseconds:2592e6},...Ki},eo={years:{quarters:4,months:12,weeks:52.1775,days:365.2425,hours:8765.82,minutes:525949.2,seconds:525949.2*60,milliseconds:525949.2*60*1e3},quarters:{months:3,weeks:13.044375,days:91.310625,hours:2191.455,minutes:131487.3,seconds:525949.2*60/4,milliseconds:7889237999.999999},months:{weeks:4.3481250000000005,days:30.436875,hours:730.485,minutes:43829.1,seconds:2629746,milliseconds:2629746e3},...Ki},to=["years","quarters","months","weeks","days","hours","minutes","seconds","milliseconds"],no=to.slice(0).reverse();function ro(e,t,n=!1){const r={values:n?t.values:{...e.values,...t.values||{}},loc:e.loc.clone(t.loc),conversionAccuracy:t.conversionAccuracy||e.conversionAccuracy,matrix:t.matrix||e.matrix};return new ao(r)}function io(e,t){let n=t.milliseconds??0;for(const r of no.slice(1))t[r]&&(n+=t[r]*e[r].milliseconds);return n}function oo(e,t){const n=io(e,t)<0?-1:1;to.reduceRight((r,i)=>{if(xr(t[i]))return r;if(r){const o=t[r]*n,s=e[i][r],a=Math.floor(o/s);t[i]+=a*n,t[r]-=a*s*n}return i},null),to.reduce((n,r)=>{if(xr(t[r]))return n;if(n){const i=t[n]%1;t[n]-=i,t[r]+=i*e[n][r]}return r},null)}function so(e){const t={};for(const[n,r]of Object.entries(e))0!==r&&(t[n]=r);return t}class ao{constructor(e){const t="longterm"===e.conversionAccuracy||!1;let n=t?eo:Xi;e.matrix&&(n=e.matrix),this.values=e.values,this.loc=e.loc||Bn.create(),this.conversionAccuracy=t?"longterm":"casual",this.invalid=e.invalid||null,this.matrix=n,this.isLuxonDuration=!0}static fromMillis(e,t){return ao.fromObject({milliseconds:e},t)}static fromObject(e,t={}){if(null==e||"object"!=typeof e)throw new Yt("Duration.fromObject: argument expected to be an object, got "+(null===e?"null":typeof e));return new ao({values:Ur(e,ao.normalizeUnit),loc:Bn.fromObject(t),conversionAccuracy:t.conversionAccuracy,matrix:t.matrix})}static fromDurationLike(e){if(kr(e))return ao.fromMillis(e);if(ao.isDuration(e))return e;if("object"==typeof e)return ao.fromObject(e);throw new Yt(`Unknown duration argument ${e} of type ${typeof e}`)}static fromISO(e,t){const[n]=function(e){return mi(e,[Ii,Ti])}(e);return n?ao.fromObject(n,t):ao.invalid("unparsable",`the input "${e}" can't be parsed as ISO 8601`)}static fromISOTime(e,t){const[n]=function(e){return mi(e,[$i,Zi])}(e);return n?ao.fromObject(n,t):ao.invalid("unparsable",`the input "${e}" can't be parsed as ISO 8601`)}static invalid(e,t=null){if(!e)throw new Yt("need to specify a reason the Duration is invalid");const n=e instanceof sr?e:new sr(e,t);if(or.throwOnInvalid)throw new Ft(n);return new ao({invalid:n})}static normalizeUnit(e){const t={year:"years",years:"years",quarter:"quarters",quarters:"quarters",month:"months",months:"months",week:"weeks",weeks:"weeks",day:"days",days:"days",hour:"hours",hours:"hours",minute:"minutes",minutes:"minutes",second:"seconds",seconds:"seconds",millisecond:"milliseconds",milliseconds:"milliseconds"}[e?e.toLowerCase():e];if(!t)throw new Ut(e);return t}static isDuration(e){return e&&e.isLuxonDuration||!1}get locale(){return this.isValid?this.loc.locale:null}get numberingSystem(){return this.isValid?this.loc.numberingSystem:null}toFormat(e,t={}){const n={...t,floor:!1!==t.round&&!1!==t.floor};return this.isValid?ci.create(this.loc,n).formatDurationFromString(this,e):Ji}toHuman(e={}){if(!this.isValid)return Ji;const t=!1!==e.showZeros,n=to.map(n=>{const r=this.values[n];return xr(r)||0===r&&!t?null:this.loc.numberFormatter({style:"unit",unitDisplay:"long",...e,unit:n.slice(0,-1)}).format(r)}).filter(e=>e);return this.loc.listFormatter({type:"conjunction",style:e.listStyle||"narrow",...e}).format(n)}toObject(){return this.isValid?{...this.values}:{}}toISO(){if(!this.isValid)return null;let e="P";return 0!==this.years&&(e+=this.years+"Y"),0===this.months&&0===this.quarters||(e+=this.months+3*this.quarters+"M"),0!==this.weeks&&(e+=this.weeks+"W"),0!==this.days&&(e+=this.days+"D"),0===this.hours&&0===this.minutes&&0===this.seconds&&0===this.milliseconds||(e+="T"),0!==this.hours&&(e+=this.hours+"H"),0!==this.minutes&&(e+=this.minutes+"M"),0===this.seconds&&0===this.milliseconds||(e+=Rr(this.seconds+this.milliseconds/1e3,3)+"S"),"P"===e&&(e+="T0S"),e}toISOTime(e={}){if(!this.isValid)return null;const t=this.toMillis();return t<0||t>=864e5?null:(e={suppressMilliseconds:!1,suppressSeconds:!1,includePrefix:!1,format:"extended",...e,includeOffset:!1},es.fromMillis(t,{zone:"UTC"}).toISOTime(e))}toJSON(){return this.toISO()}toString(){return this.toISO()}[Symbol.for("nodejs.util.inspect.custom")](){return this.isValid?`Duration { values: ${JSON.stringify(this.values)} }`:`Duration { Invalid, reason: ${this.invalidReason} }`}toMillis(){return this.isValid?io(this.matrix,this.values):NaN}valueOf(){return this.toMillis()}plus(e){if(!this.isValid)return this;const t=ao.fromDurationLike(e),n={};for(const e of to)($r(t.values,e)||$r(this.values,e))&&(n[e]=t.get(e)+this.get(e));return ro(this,{values:n},!0)}minus(e){if(!this.isValid)return this;const t=ao.fromDurationLike(e);return this.plus(t.negate())}mapUnits(e){if(!this.isValid)return this;const t={};for(const n of Object.keys(this.values))t[n]=Hr(e(this.values[n],n));return ro(this,{values:t},!0)}get(e){return this[ao.normalizeUnit(e)]}set(e){return this.isValid?ro(this,{values:{...this.values,...Ur(e,ao.normalizeUnit)}}):this}reconfigure({locale:e,numberingSystem:t,conversionAccuracy:n,matrix:r}={}){return ro(this,{loc:this.loc.clone({locale:e,numberingSystem:t}),matrix:r,conversionAccuracy:n})}as(e){return this.isValid?this.shiftTo(e).get(e):NaN}normalize(){if(!this.isValid)return this;const e=this.toObject();return oo(this.matrix,e),ro(this,{values:e},!0)}rescale(){return this.isValid?ro(this,{values:so(this.normalize().shiftToAll().toObject())},!0):this}shiftTo(...e){if(!this.isValid)return this;if(0===e.length)return this;e=e.map(e=>ao.normalizeUnit(e));const t={},n={},r=this.toObject();let i;for(const o of to)if(e.indexOf(o)>=0){i=o;let e=0;for(const t in n)e+=this.matrix[t][o]*n[t],n[t]=0;kr(r[o])&&(e+=r[o]);const s=Math.trunc(e);t[o]=s,n[o]=(1e3*e-1e3*s)/1e3}else kr(r[o])&&(n[o]=r[o]);for(const e in n)0!==n[e]&&(t[i]+=e===i?n[e]:n[e]/this.matrix[i][e]);return oo(this.matrix,t),ro(this,{values:t},!0)}shiftToAll(){return this.isValid?this.shiftTo("years","months","weeks","days","hours","minutes","seconds","milliseconds"):this}negate(){if(!this.isValid)return this;const e={};for(const t of Object.keys(this.values))e[t]=0===this.values[t]?0:-this.values[t];return ro(this,{values:e},!0)}removeZeros(){return this.isValid?ro(this,{values:so(this.values)},!0):this}get years(){return this.isValid?this.values.years||0:NaN}get quarters(){return this.isValid?this.values.quarters||0:NaN}get months(){return this.isValid?this.values.months||0:NaN}get weeks(){return this.isValid?this.values.weeks||0:NaN}get days(){return this.isValid?this.values.days||0:NaN}get hours(){return this.isValid?this.values.hours||0:NaN}get minutes(){return this.isValid?this.values.minutes||0:NaN}get seconds(){return this.isValid?this.values.seconds||0:NaN}get milliseconds(){return this.isValid?this.values.milliseconds||0:NaN}get isValid(){return null===this.invalid}get invalidReason(){return this.invalid?this.invalid.reason:null}get invalidExplanation(){return this.invalid?this.invalid.explanation:null}equals(e){if(!this.isValid||!e.isValid)return!1;if(!this.loc.equals(e.loc))return!1;function t(e,t){return void 0===e||0===e?void 0===t||0===t:e===t}for(const n of to)if(!t(this.values[n],e.values[n]))return!1;return!0}}const lo="Invalid Interval";class co{constructor(e){this.s=e.start,this.e=e.end,this.invalid=e.invalid||null,this.isLuxonInterval=!0}static invalid(e,t=null){if(!e)throw new Yt("need to specify a reason the Interval is invalid");const n=e instanceof sr?e:new sr(e,t);if(or.throwOnInvalid)throw new qt(n);return new co({invalid:n})}static fromDateTimes(e,t){const n=ts(e),r=ts(t),i=function(e,t){return e&&e.isValid?t&&t.isValid?t<e?co.invalid("end before start",`The end of an interval must be after its start, but you had start=${e.toISO()} and end=${t.toISO()}`):null:co.invalid("missing or invalid end"):co.invalid("missing or invalid start")}(n,r);return null==i?new co({start:n,end:r}):i}static after(e,t){const n=ao.fromDurationLike(t),r=ts(e);return co.fromDateTimes(r,r.plus(n))}static before(e,t){const n=ao.fromDurationLike(t),r=ts(e);return co.fromDateTimes(r.minus(n),r)}static fromISO(e,t){const[n,r]=(e||"").split("/",2);if(n&&r){let e,i,o,s;try{e=es.fromISO(n,t),i=e.isValid}catch(r){i=!1}try{o=es.fromISO(r,t),s=o.isValid}catch(r){s=!1}if(i&&s)return co.fromDateTimes(e,o);if(i){const n=ao.fromISO(r,t);if(n.isValid)return co.after(e,n)}else if(s){const e=ao.fromISO(n,t);if(e.isValid)return co.before(o,e)}}return co.invalid("unparsable",`the input "${e}" can't be parsed as ISO 8601`)}static isInterval(e){return e&&e.isLuxonInterval||!1}get start(){return this.isValid?this.s:null}get end(){return this.isValid?this.e:null}get lastDateTime(){return this.isValid&&this.e?this.e.minus(1):null}get isValid(){return null===this.invalidReason}get invalidReason(){return this.invalid?this.invalid.reason:null}get invalidExplanation(){return this.invalid?this.invalid.explanation:null}length(e="milliseconds"){return this.isValid?this.toDuration(e).get(e):NaN}count(e="milliseconds",t){if(!this.isValid)return NaN;const n=this.start.startOf(e,t);let r;return r=t?.useLocaleWeeks?this.end.reconfigure({locale:n.locale}):this.end,r=r.startOf(e,t),Math.floor(r.diff(n,e).get(e))+(r.valueOf()!==this.end.valueOf())}hasSame(e){return!!this.isValid&&(this.isEmpty()||this.e.minus(1).hasSame(this.s,e))}isEmpty(){return this.s.valueOf()===this.e.valueOf()}isAfter(e){return!!this.isValid&&this.s>e}isBefore(e){return!!this.isValid&&this.e<=e}contains(e){return!!this.isValid&&this.s<=e&&this.e>e}set({start:e,end:t}={}){return this.isValid?co.fromDateTimes(e||this.s,t||this.e):this}splitAt(...e){if(!this.isValid)return[];const t=e.map(ts).filter(e=>this.contains(e)).sort((e,t)=>e.toMillis()-t.toMillis()),n=[];let{s:r}=this,i=0;for(;r<this.e;){const e=t[i]||this.e,o=+e>+this.e?this.e:e;n.push(co.fromDateTimes(r,o)),r=o,i+=1}return n}splitBy(e){const t=ao.fromDurationLike(e);if(!this.isValid||!t.isValid||0===t.as("milliseconds"))return[];let n,{s:r}=this,i=1;const o=[];for(;r<this.e;){const e=this.start.plus(t.mapUnits(e=>e*i));n=+e>+this.e?this.e:e,o.push(co.fromDateTimes(r,n)),r=n,i+=1}return o}divideEqually(e){return this.isValid?this.splitBy(this.length()/e).slice(0,e):[]}overlaps(e){return this.e>e.s&&this.s<e.e}abutsStart(e){return!!this.isValid&&+this.e===+e.s}abutsEnd(e){return!!this.isValid&&+e.e===+this.s}engulfs(e){return!!this.isValid&&this.s<=e.s&&this.e>=e.e}equals(e){return!(!this.isValid||!e.isValid)&&this.s.equals(e.s)&&this.e.equals(e.e)}intersection(e){if(!this.isValid)return this;const t=this.s>e.s?this.s:e.s,n=this.e<e.e?this.e:e.e;return t>=n?null:co.fromDateTimes(t,n)}union(e){if(!this.isValid)return this;const t=this.s<e.s?this.s:e.s,n=this.e>e.e?this.e:e.e;return co.fromDateTimes(t,n)}static merge(e){const[t,n]=e.sort((e,t)=>e.s-t.s).reduce(([e,t],n)=>t?t.overlaps(n)||t.abutsStart(n)?[e,t.union(n)]:[e.concat([t]),n]:[e,n],[[],null]);return n&&t.push(n),t}static xor(e){let t=null,n=0;const r=[],i=e.map(e=>[{time:e.s,type:"s"},{time:e.e,type:"e"}]),o=[].concat(...i).sort((e,t)=>e.time-t.time);for(const e of o)n+="s"===e.type?1:-1,1===n?t=e.time:(t&&+t!==+e.time&&r.push(co.fromDateTimes(t,e.time)),t=null);return co.merge(r)}difference(...e){return co.xor([this].concat(e)).map(e=>this.intersection(e)).filter(e=>e&&!e.isEmpty())}toString(){return this.isValid?`[${this.s.toISO()} – ${this.e.toISO()})`:lo}[Symbol.for("nodejs.util.inspect.custom")](){return this.isValid?`Interval { start: ${this.s.toISO()}, end: ${this.e.toISO()} }`:`Interval { Invalid, reason: ${this.invalidReason} }`}toLocaleString(e=Jt,t={}){return this.isValid?ci.create(this.s.loc.clone(t),e).formatInterval(this):lo}toISO(e){return this.isValid?`${this.s.toISO(e)}/${this.e.toISO(e)}`:lo}toISODate(){return this.isValid?`${this.s.toISODate()}/${this.e.toISODate()}`:lo}toISOTime(e){return this.isValid?`${this.s.toISOTime(e)}/${this.e.toISOTime(e)}`:lo}toFormat(e,{separator:t=" – "}={}){return this.isValid?`${this.s.toFormat(e)}${t}${this.e.toFormat(e)}`:lo}toDuration(e,t){return this.isValid?this.e.diff(this.s,e,t):ao.invalid(this.invalidReason)}mapEndpoints(e){return co.fromDateTimes(e(this.s),e(this.e))}}class uo{static hasDST(e=or.defaultZone){const t=es.now().setZone(e).set({month:12});return!e.isUniversal&&t.offset!==t.set({month:6}).offset}static isValidIANAZone(e){return _n.isValidZone(e)}static normalizeZone(e){return Un(e,or.defaultZone)}static getStartOfWeek({locale:e=null,locObj:t=null}={}){return(t||Bn.create(e)).getStartOfWeek()}static getMinimumDaysInFirstWeek({locale:e=null,locObj:t=null}={}){return(t||Bn.create(e)).getMinDaysInFirstWeek()}static getWeekendWeekdays({locale:e=null,locObj:t=null}={}){return(t||Bn.create(e)).getWeekendDays().slice()}static months(e="long",{locale:t=null,numberingSystem:n=null,locObj:r=null,outputCalendar:i="gregory"}={}){return(r||Bn.create(t,n,i)).months(e)}static monthsFormat(e="long",{locale:t=null,numberingSystem:n=null,locObj:r=null,outputCalendar:i="gregory"}={}){return(r||Bn.create(t,n,i)).months(e,!0)}static weekdays(e="long",{locale:t=null,numberingSystem:n=null,locObj:r=null}={}){return(r||Bn.create(t,n,null)).weekdays(e)}static weekdaysFormat(e="long",{locale:t=null,numberingSystem:n=null,locObj:r=null}={}){return(r||Bn.create(t,n,null)).weekdays(e,!0)}static meridiems({locale:e=null}={}){return Bn.create(e).meridiems()}static eras(e="short",{locale:t=null}={}){return Bn.create(t,null,"gregory").eras(e)}static features(){return{relative:Sr(),localeWeek:Cr()}}}function ho(e,t){const n=e=>e.toUTC(0,{keepLocalTime:!0}).startOf("day").valueOf(),r=n(t)-n(e);return Math.floor(ao.fromMillis(r).as("days"))}function mo(e,t=e=>e){return{regex:e,deser:([e])=>t(function(e){let t=parseInt(e,10);if(isNaN(t)){t="";for(let n=0;n<e.length;n++){const r=e.charCodeAt(n);if(-1!==e[n].search(Yn.hanidec))t+=Gn.indexOf(e[n]);else for(const e in Zn){const[n,i]=Zn[e];r>=n&&r<=i&&(t+=r-n)}}return parseInt(t,10)}return t}(e))}}const fo=`[ ${String.fromCharCode(160)}]`,po=new RegExp(fo,"g");function go(e){return e.replace(/\./g,"\\.?").replace(po,fo)}function yo(e){return e.replace(/\./g,"").replace(po," ").toLowerCase()}function vo(e,t){return null===e?null:{regex:RegExp(e.map(go).join("|")),deser:([n])=>e.findIndex(e=>yo(n)===yo(e))+t}}function wo(e,t){return{regex:e,deser:([,e,t])=>Fr(e,t),groups:t}}function bo(e){return{regex:e,deser:([e])=>e}}const xo={year:{"2-digit":"yy",numeric:"yyyyy"},month:{numeric:"M","2-digit":"MM",short:"MMM",long:"MMMM"},day:{numeric:"d","2-digit":"dd"},weekday:{short:"EEE",long:"EEEE"},dayperiod:"a",dayPeriod:"a",hour12:{numeric:"h","2-digit":"hh"},hour24:{numeric:"H","2-digit":"HH"},minute:{numeric:"m","2-digit":"mm"},second:{numeric:"s","2-digit":"ss"},timeZoneName:{long:"ZZZZZ",short:"ZZZ"}};let ko=null;function No(e,t){return[].concat(...e.map(e=>function(e,t){if(e.literal)return e;const n=_o(ci.macroTokenToFormatOpts(e.val),t);return null==n||n.includes(void 0)?e:n}(e,t)))}class So{constructor(e,t){if(this.locale=e,this.format=t,this.tokens=No(ci.parseFormat(t),e),this.units=this.tokens.map(t=>function(e,t){const n=Qn(t),r=Qn(t,"{2}"),i=Qn(t,"{3}"),o=Qn(t,"{4}"),s=Qn(t,"{6}"),a=Qn(t,"{1,2}"),l=Qn(t,"{1,3}"),c=Qn(t,"{1,6}"),d=Qn(t,"{1,9}"),u=Qn(t,"{2,4}"),h=Qn(t,"{4,6}"),m=e=>{return{regex:RegExp((t=e.val,t.replace(/[\-\[\]{}()*+?.,\\\^$|#\s]/g,"\\$&"))),deser:([e])=>e,literal:!0};var t},f=(f=>{if(e.literal)return m(f);switch(f.val){case"G":return vo(t.eras("short"),0);case"GG":return vo(t.eras("long"),0);case"y":return mo(c);case"yy":case"kk":return mo(u,Br);case"yyyy":case"kkkk":return mo(o);case"yyyyy":return mo(h);case"yyyyyy":return mo(s);case"M":case"L":case"d":case"H":case"h":case"m":case"q":case"s":case"W":return mo(a);case"MM":case"LL":case"dd":case"HH":case"hh":case"mm":case"qq":case"ss":case"WW":return mo(r);case"MMM":return vo(t.months("short",!0),1);case"MMMM":return vo(t.months("long",!0),1);case"LLL":return vo(t.months("short",!1),1);case"LLLL":return vo(t.months("long",!1),1);case"o":case"S":return mo(l);case"ooo":case"SSS":return mo(i);case"u":return bo(d);case"uu":return bo(a);case"uuu":case"E":case"c":return mo(n);case"a":return vo(t.meridiems(),0);case"EEE":return vo(t.weekdays("short",!1),1);case"EEEE":return vo(t.weekdays("long",!1),1);case"ccc":return vo(t.weekdays("short",!0),1);case"cccc":return vo(t.weekdays("long",!0),1);case"Z":case"ZZ":return wo(new RegExp(`([+-]${a.source})(?::(${r.source}))?`),2);case"ZZZ":return wo(new RegExp(`([+-]${a.source})(${r.source})?`),2);case"z":return bo(/[a-z_+-/]{1,256}?/i);case" ":return bo(/[^\S\n\r]/);default:return m(f)}})(e)||{invalidReason:"missing Intl.DateTimeFormat.formatToParts support"};return f.token=e,f}(t,e)),this.disqualifyingUnit=this.units.find(e=>e.invalidReason),!this.disqualifyingUnit){const[e,t]=function(e){const t=e.map(e=>e.regex).reduce((e,t)=>`${e}(${t.source})`,"");return[`^${t}$`,e]}(this.units);this.regex=RegExp(e,"i"),this.handlers=t}}explainFromTokens(e){if(this.isValid){const[t,n]=function(e,t,n){const r=e.match(t);if(r){const e={};let t=1;for(const i in n)if($r(n,i)){const o=n[i],s=o.groups?o.groups+1:1;!o.literal&&o.token&&(e[o.token.val[0]]=o.deser(r.slice(t,t+s))),t+=s}return[r,e]}return[r,{}]}(e,this.regex,this.handlers),[r,i,o]=n?function(e){let t,n=null;xr(e.z)||(n=_n.create(e.z)),xr(e.Z)||(n||(n=new Fn(e.Z)),t=e.Z),xr(e.q)||(e.M=3*(e.q-1)+1),xr(e.h)||(e.h<12&&1===e.a?e.h+=12:12===e.h&&0===e.a&&(e.h=0)),0===e.G&&e.y&&(e.y=-e.y),xr(e.u)||(e.S=Dr(e.u));const r=Object.keys(e).reduce((t,n)=>{const r=(e=>{switch(e){case"S":return"millisecond";case"s":return"second";case"m":return"minute";case"h":case"H":return"hour";case"d":return"day";case"o":return"ordinal";case"L":case"M":return"month";case"y":return"year";case"E":case"c":return"weekday";case"W":return"weekNumber";case"k":return"weekYear";case"q":return"quarter";default:return null}})(n);return r&&(t[r]=e[n]),t},{});return[r,n,t]}(n):[null,null,void 0];if($r(n,"a")&&$r(n,"H"))throw new Ht("Can't include meridiem when specifying 24-hour format");return{input:e,tokens:this.tokens,regex:this.regex,rawMatches:t,matches:n,result:r,zone:i,specificOffset:o}}return{input:e,tokens:this.tokens,invalidReason:this.invalidReason}}get isValid(){return!this.disqualifyingUnit}get invalidReason(){return this.disqualifyingUnit?this.disqualifyingUnit.invalidReason:null}}function Co(e,t,n){return new So(e,n).explainFromTokens(t)}function _o(e,t){if(!e)return null;const n=ci.create(t,e).dtFormatter((ko||(ko=es.fromMillis(1555555555555)),ko)),r=n.formatToParts(),i=n.resolvedOptions();return r.map(t=>function(e,t,n){const{type:r,value:i}=e;if("literal"===r){const e=/^\s+$/.test(i);return{literal:!e,val:e?" ":i}}const o=t[r];let s=r;"hour"===r&&(s=null!=t.hour12?t.hour12?"hour12":"hour24":null!=t.hourCycle?"h11"===t.hourCycle||"h12"===t.hourCycle?"hour12":"hour24":n.hour12?"hour12":"hour24");let a=xo[s];if("object"==typeof a&&(a=a[o]),a)return{literal:!1,val:a}}(t,e,i))}const $o="Invalid DateTime",Io=864e13;function To(e){return new sr("unsupported zone",`the zone "${e.name}" is not supported`)}function Eo(e){return null===e.weekData&&(e.weekData=fr(e.c)),e.weekData}function Po(e){return null===e.localWeekData&&(e.localWeekData=fr(e.c,e.loc.getMinDaysInFirstWeek(),e.loc.getStartOfWeek())),e.localWeekData}function zo(e,t){const n={ts:e.ts,zone:e.zone,c:e.c,o:e.o,loc:e.loc,invalid:e.invalid};return new es({...n,...t,old:n})}function Do(e,t,n){let r=e-60*t*1e3;const i=n.offset(r);if(t===i)return[r,t];r-=60*(i-t)*1e3;const o=n.offset(r);return i===o?[r,i]:[e-60*Math.min(i,o)*1e3,Math.max(i,o)]}function Ro(e,t){const n=new Date(e+=60*t*1e3);return{year:n.getUTCFullYear(),month:n.getUTCMonth()+1,day:n.getUTCDate(),hour:n.getUTCHours(),minute:n.getUTCMinutes(),second:n.getUTCSeconds(),millisecond:n.getUTCMilliseconds()}}function Mo(e,t,n){return Do(Wr(e),t,n)}function Oo(e,t){const n=e.o,r=e.c.year+Math.trunc(t.years),i=e.c.month+Math.trunc(t.months)+3*Math.trunc(t.quarters),o={...e.c,year:r,month:i,day:Math.min(e.c.day,jr(r,i))+Math.trunc(t.days)+7*Math.trunc(t.weeks)},s=ao.fromObject({years:t.years-Math.trunc(t.years),quarters:t.quarters-Math.trunc(t.quarters),months:t.months-Math.trunc(t.months),weeks:t.weeks-Math.trunc(t.weeks),days:t.days-Math.trunc(t.days),hours:t.hours,minutes:t.minutes,seconds:t.seconds,milliseconds:t.milliseconds}).as("milliseconds"),a=Wr(o);let[l,c]=Do(a,n,e.zone);return 0!==s&&(l+=s,c=e.zone.offset(l)),{ts:l,o:c}}function jo(e,t,n,r,i,o){const{setZone:s,zone:a}=n;if(e&&0!==Object.keys(e).length||t){const r=t||a,i=es.fromObject(e,{...n,zone:r,specificOffset:o});return s?i:i.setZone(a)}return es.invalid(new sr("unparsable",`the input "${i}" can't be parsed as ${r}`))}function Wo(e,t,n=!0){return e.isValid?ci.create(Bn.create("en-US"),{allowZ:n,forceSimple:!0}).formatDateTimeFromString(e,t):null}function Ao(e,t,n){const r=e.c.year>9999||e.c.year<0;let i="";if(r&&e.c.year>=0&&(i+="+"),i+=Er(e.c.year,r?6:4),"year"===n)return i;if(t){if(i+="-",i+=Er(e.c.month),"month"===n)return i;i+="-"}else if(i+=Er(e.c.month),"month"===n)return i;return i+=Er(e.c.day),i}function Lo(e,t,n,r,i,o,s){let a=!n||0!==e.c.millisecond||0!==e.c.second,l="";switch(s){case"day":case"month":case"year":break;default:if(l+=Er(e.c.hour),"hour"===s)break;if(t){if(l+=":",l+=Er(e.c.minute),"minute"===s)break;a&&(l+=":",l+=Er(e.c.second))}else{if(l+=Er(e.c.minute),"minute"===s)break;a&&(l+=Er(e.c.second))}if("second"===s)break;!a||r&&0===e.c.millisecond||(l+=".",l+=Er(e.c.millisecond,3))}return i&&(e.isOffsetFixed&&0===e.offset&&!o?l+="Z":e.o<0?(l+="-",l+=Er(Math.trunc(-e.o/60)),l+=":",l+=Er(Math.trunc(-e.o%60))):(l+="+",l+=Er(Math.trunc(e.o/60)),l+=":",l+=Er(Math.trunc(e.o%60)))),o&&(l+="["+e.zone.ianaName+"]"),l}const Bo={month:1,day:1,hour:0,minute:0,second:0,millisecond:0},qo={weekNumber:1,weekday:1,hour:0,minute:0,second:0,millisecond:0},Fo={ordinal:1,hour:0,minute:0,second:0,millisecond:0},Ho=["year","month","day","hour","minute","second","millisecond"],Uo=["weekYear","weekNumber","weekday","hour","minute","second","millisecond"],Yo=["year","ordinal","hour","minute","second","millisecond"];function Zo(e){const t={year:"year",years:"year",month:"month",months:"month",day:"day",days:"day",hour:"hour",hours:"hour",minute:"minute",minutes:"minute",quarter:"quarter",quarters:"quarter",second:"second",seconds:"second",millisecond:"millisecond",milliseconds:"millisecond",weekday:"weekday",weekdays:"weekday",weeknumber:"weekNumber",weeksnumber:"weekNumber",weeknumbers:"weekNumber",weekyear:"weekYear",weekyears:"weekYear",ordinal:"ordinal"}[e.toLowerCase()];if(!t)throw new Ut(e);return t}function Go(e){switch(e.toLowerCase()){case"localweekday":case"localweekdays":return"localWeekday";case"localweeknumber":case"localweeknumbers":return"localWeekNumber";case"localweekyear":case"localweekyears":return"localWeekYear";default:return Zo(e)}}function Vo(e,t){const n=Un(t.zone,or.defaultZone);if(!n.isValid)return es.invalid(To(n));const r=Bn.fromObject(t);let i,o;if(xr(e.year))i=or.now();else{for(const t of Ho)xr(e[t])&&(e[t]=Bo[t]);const t=wr(e)||br(e);if(t)return es.invalid(t);const r=function(e){if(void 0===Ko&&(Ko=or.now()),"iana"!==e.type)return e.offset(Ko);const t=e.name;let n=Xo.get(t);return void 0===n&&(n=e.offset(Ko),Xo.set(t,n)),n}(n);[i,o]=Mo(e,r,n)}return new es({ts:i,zone:n,loc:r,o:o})}function Qo(e,t,n){const r=!!xr(n.round)||n.round,i=xr(n.rounding)?"trunc":n.rounding,o=(e,o)=>(e=Rr(e,r||n.calendary?0:2,n.calendary?"round":i),t.loc.clone(n).relFormatter(n).format(e,o)),s=r=>n.calendary?t.hasSame(e,r)?0:t.startOf(r).diff(e.startOf(r),r).get(r):t.diff(e,r).get(r);if(n.unit)return o(s(n.unit),n.unit);for(const e of n.units){const t=s(e);if(Math.abs(t)>=1)return o(t,e)}return o(e>t?-0:0,n.units[n.units.length-1])}function Jo(e){let t,n={};return e.length>0&&"object"==typeof e[e.length-1]?(n=e[e.length-1],t=Array.from(e).slice(0,e.length-1)):t=Array.from(e),[n,t]}let Ko;const Xo=new Map;class es{constructor(e){const t=e.zone||or.defaultZone;let n=e.invalid||(Number.isNaN(e.ts)?new sr("invalid input"):null)||(t.isValid?null:To(t));this.ts=xr(e.ts)?or.now():e.ts;let r=null,i=null;if(!n)if(e.old&&e.old.ts===this.ts&&e.old.zone.equals(t))[r,i]=[e.old.c,e.old.o];else{const o=kr(e.o)&&!e.old?e.o:t.offset(this.ts);r=Ro(this.ts,o),n=Number.isNaN(r.year)?new sr("invalid input"):null,r=n?null:r,i=n?null:o}this.ie=t,this.loc=e.loc||Bn.create(),this.invalid=n,this.weekData=null,this.localWeekData=null,this.c=r,this.o=i,this.isLuxonDateTime=!0}static now(){return new es({})}static local(){const[e,t]=Jo(arguments),[n,r,i,o,s,a,l]=t;return Vo({year:n,month:r,day:i,hour:o,minute:s,second:a,millisecond:l},e)}static utc(){const[e,t]=Jo(arguments),[n,r,i,o,s,a,l]=t;return e.zone=Fn.utcInstance,Vo({year:n,month:r,day:i,hour:o,minute:s,second:a,millisecond:l},e)}static fromJSDate(e,t={}){const n=function(e){return"[object Date]"==={}.toString.call(e)}(e)?e.valueOf():NaN;if(Number.isNaN(n))return es.invalid("invalid input");const r=Un(t.zone,or.defaultZone);return r.isValid?new es({ts:n,zone:r,loc:Bn.fromObject(t)}):es.invalid(To(r))}static fromMillis(e,t={}){if(kr(e))return e<-Io||e>Io?es.invalid("Timestamp out of range"):new es({ts:e,zone:Un(t.zone,or.defaultZone),loc:Bn.fromObject(t)});throw new Yt(`fromMillis requires a numerical input, but received a ${typeof e} with value ${e}`)}static fromSeconds(e,t={}){if(kr(e))return new es({ts:1e3*e,zone:Un(t.zone,or.defaultZone),loc:Bn.fromObject(t)});throw new Yt("fromSeconds requires a numerical input")}static fromObject(e,t={}){e=e||{};const n=Un(t.zone,or.defaultZone);if(!n.isValid)return es.invalid(To(n));const r=Bn.fromObject(t),i=Ur(e,Go),{minDaysInFirstWeek:o,startOfWeek:s}=vr(i,r),a=or.now(),l=xr(t.specificOffset)?n.offset(a):t.specificOffset,c=!xr(i.ordinal),d=!xr(i.year),u=!xr(i.month)||!xr(i.day),h=d||u,m=i.weekYear||i.weekNumber;if((h||c)&&m)throw new Ht("Can't mix weekYear/weekNumber units with year/month/day or ordinals");if(u&&c)throw new Ht("Can't mix ordinal dates with month/day");const f=m||i.weekday&&!h;let p,g,y=Ro(a,l);f?(p=Uo,g=qo,y=fr(y,o,s)):c?(p=Yo,g=Fo,y=gr(y)):(p=Ho,g=Bo);let v=!1;for(const e of p)xr(i[e])?i[e]=v?g[e]:y[e]:v=!0;const w=f?function(e,t=4,n=1){const r=Nr(e.weekYear),i=Tr(e.weekNumber,1,Lr(e.weekYear,t,n)),o=Tr(e.weekday,1,7);return r?i?!o&&cr("weekday",e.weekday):cr("week",e.weekNumber):cr("weekYear",e.weekYear)}(i,o,s):c?function(e){const t=Nr(e.year),n=Tr(e.ordinal,1,Or(e.year));return t?!n&&cr("ordinal",e.ordinal):cr("year",e.year)}(i):wr(i),b=w||br(i);if(b)return es.invalid(b);const x=f?pr(i,o,s):c?yr(i):i,[k,N]=Mo(x,l,n),S=new es({ts:k,zone:n,o:N,loc:r});return i.weekday&&h&&e.weekday!==S.weekday?es.invalid("mismatched weekday",`you can't specify both a weekday of ${i.weekday} and a date of ${S.toISO()}`):S.isValid?S:es.invalid(S.invalid)}static fromISO(e,t={}){const[n,r]=function(e){return mi(e,[Ai,Fi],[Li,Hi],[Bi,Ui],[qi,Yi])}(e);return jo(n,r,t,"ISO 8601",e)}static fromRFC2822(e,t={}){const[n,r]=function(e){return mi(function(e){return e.replace(/\([^()]*\)|[\n\t]/g," ").replace(/(\s\s+)/g," ").trim()}(e),[zi,Di])}(e);return jo(n,r,t,"RFC 2822",e)}static fromHTTP(e,t={}){const[n,r]=function(e){return mi(e,[Ri,ji],[Mi,ji],[Oi,Wi])}(e);return jo(n,r,t,"HTTP",t)}static fromFormat(e,t,n={}){if(xr(e)||xr(t))throw new Yt("fromFormat requires an input string and a format");const{locale:r=null,numberingSystem:i=null}=n,o=Bn.fromOpts({locale:r,numberingSystem:i,defaultToEN:!0}),[s,a,l,c]=function(e,t,n){const{result:r,zone:i,specificOffset:o,invalidReason:s}=Co(e,t,n);return[r,i,o,s]}(o,e,t);return c?es.invalid(c):jo(s,a,n,`format ${t}`,e,l)}static fromString(e,t,n={}){return es.fromFormat(e,t,n)}static fromSQL(e,t={}){const[n,r]=function(e){return mi(e,[Gi,Fi],[Vi,Qi])}(e);return jo(n,r,t,"SQL",e)}static invalid(e,t=null){if(!e)throw new Yt("need to specify a reason the DateTime is invalid");const n=e instanceof sr?e:new sr(e,t);if(or.throwOnInvalid)throw new Bt(n);return new es({invalid:n})}static isDateTime(e){return e&&e.isLuxonDateTime||!1}static parseFormatForOpts(e,t={}){const n=_o(e,Bn.fromObject(t));return n?n.map(e=>e?e.val:null).join(""):null}static expandFormat(e,t={}){return No(ci.parseFormat(e),Bn.fromObject(t)).map(e=>e.val).join("")}static resetCache(){Ko=void 0,Xo.clear()}get(e){return this[e]}get isValid(){return null===this.invalid}get invalidReason(){return this.invalid?this.invalid.reason:null}get invalidExplanation(){return this.invalid?this.invalid.explanation:null}get locale(){return this.isValid?this.loc.locale:null}get numberingSystem(){return this.isValid?this.loc.numberingSystem:null}get outputCalendar(){return this.isValid?this.loc.outputCalendar:null}get zone(){return this.ie}get zoneName(){return this.isValid?this.zone.name:null}get year(){return this.isValid?this.c.year:NaN}get quarter(){return this.isValid?Math.ceil(this.c.month/3):NaN}get month(){return this.isValid?this.c.month:NaN}get day(){return this.isValid?this.c.day:NaN}get hour(){return this.isValid?this.c.hour:NaN}get minute(){return this.isValid?this.c.minute:NaN}get second(){return this.isValid?this.c.second:NaN}get millisecond(){return this.isValid?this.c.millisecond:NaN}get weekYear(){return this.isValid?Eo(this).weekYear:NaN}get weekNumber(){return this.isValid?Eo(this).weekNumber:NaN}get weekday(){return this.isValid?Eo(this).weekday:NaN}get isWeekend(){return this.isValid&&this.loc.getWeekendDays().includes(this.weekday)}get localWeekday(){return this.isValid?Po(this).weekday:NaN}get localWeekNumber(){return this.isValid?Po(this).weekNumber:NaN}get localWeekYear(){return this.isValid?Po(this).weekYear:NaN}get ordinal(){return this.isValid?gr(this.c).ordinal:NaN}get monthShort(){return this.isValid?uo.months("short",{locObj:this.loc})[this.month-1]:null}get monthLong(){return this.isValid?uo.months("long",{locObj:this.loc})[this.month-1]:null}get weekdayShort(){return this.isValid?uo.weekdays("short",{locObj:this.loc})[this.weekday-1]:null}get weekdayLong(){return this.isValid?uo.weekdays("long",{locObj:this.loc})[this.weekday-1]:null}get offset(){return this.isValid?+this.o:NaN}get offsetNameShort(){return this.isValid?this.zone.offsetName(this.ts,{format:"short",locale:this.locale}):null}get offsetNameLong(){return this.isValid?this.zone.offsetName(this.ts,{format:"long",locale:this.locale}):null}get isOffsetFixed(){return this.isValid?this.zone.isUniversal:null}get isInDST(){return!this.isOffsetFixed&&(this.offset>this.set({month:1,day:1}).offset||this.offset>this.set({month:5}).offset)}getPossibleOffsets(){if(!this.isValid||this.isOffsetFixed)return[this];const e=864e5,t=6e4,n=Wr(this.c),r=this.zone.offset(n-e),i=this.zone.offset(n+e),o=this.zone.offset(n-r*t),s=this.zone.offset(n-i*t);if(o===s)return[this];const a=n-o*t,l=n-s*t,c=Ro(a,o),d=Ro(l,s);return c.hour===d.hour&&c.minute===d.minute&&c.second===d.second&&c.millisecond===d.millisecond?[zo(this,{ts:a}),zo(this,{ts:l})]:[this]}get isInLeapYear(){return Mr(this.year)}get daysInMonth(){return jr(this.year,this.month)}get daysInYear(){return this.isValid?Or(this.year):NaN}get weeksInWeekYear(){return this.isValid?Lr(this.weekYear):NaN}get weeksInLocalWeekYear(){return this.isValid?Lr(this.localWeekYear,this.loc.getMinDaysInFirstWeek(),this.loc.getStartOfWeek()):NaN}resolvedLocaleOptions(e={}){const{locale:t,numberingSystem:n,calendar:r}=ci.create(this.loc.clone(e),e).resolvedOptions(this);return{locale:t,numberingSystem:n,outputCalendar:r}}toUTC(e=0,t={}){return this.setZone(Fn.instance(e),t)}toLocal(){return this.setZone(or.defaultZone)}setZone(e,{keepLocalTime:t=!1,keepCalendarTime:n=!1}={}){if((e=Un(e,or.defaultZone)).equals(this.zone))return this;if(e.isValid){let r=this.ts;if(t||n){const t=e.offset(this.ts),n=this.toObject();[r]=Mo(n,t,e)}return zo(this,{ts:r,zone:e})}return es.invalid(To(e))}reconfigure({locale:e,numberingSystem:t,outputCalendar:n}={}){return zo(this,{loc:this.loc.clone({locale:e,numberingSystem:t,outputCalendar:n})})}setLocale(e){return this.reconfigure({locale:e})}set(e){if(!this.isValid)return this;const t=Ur(e,Go),{minDaysInFirstWeek:n,startOfWeek:r}=vr(t,this.loc),i=!xr(t.weekYear)||!xr(t.weekNumber)||!xr(t.weekday),o=!xr(t.ordinal),s=!xr(t.year),a=!xr(t.month)||!xr(t.day),l=s||a,c=t.weekYear||t.weekNumber;if((l||o)&&c)throw new Ht("Can't mix weekYear/weekNumber units with year/month/day or ordinals");if(a&&o)throw new Ht("Can't mix ordinal dates with month/day");let d;i?d=pr({...fr(this.c,n,r),...t},n,r):xr(t.ordinal)?(d={...this.toObject(),...t},xr(t.day)&&(d.day=Math.min(jr(d.year,d.month),d.day))):d=yr({...gr(this.c),...t});const[u,h]=Mo(d,this.o,this.zone);return zo(this,{ts:u,o:h})}plus(e){return this.isValid?zo(this,Oo(this,ao.fromDurationLike(e))):this}minus(e){return this.isValid?zo(this,Oo(this,ao.fromDurationLike(e).negate())):this}startOf(e,{useLocaleWeeks:t=!1}={}){if(!this.isValid)return this;const n={},r=ao.normalizeUnit(e);switch(r){case"years":n.month=1;case"quarters":case"months":n.day=1;case"weeks":case"days":n.hour=0;case"hours":n.minute=0;case"minutes":n.second=0;case"seconds":n.millisecond=0}if("weeks"===r)if(t){const e=this.loc.getStartOfWeek(),{weekday:t}=this;t<e&&(n.weekNumber=this.weekNumber-1),n.weekday=e}else n.weekday=1;if("quarters"===r){const e=Math.ceil(this.month/3);n.month=3*(e-1)+1}return this.set(n)}endOf(e,t){return this.isValid?this.plus({[e]:1}).startOf(e,t).minus(1):this}toFormat(e,t={}){return this.isValid?ci.create(this.loc.redefaultToEN(t)).formatDateTimeFromString(this,e):$o}toLocaleString(e=Jt,t={}){return this.isValid?ci.create(this.loc.clone(t),e).formatDateTime(this):$o}toLocaleParts(e={}){return this.isValid?ci.create(this.loc.clone(e),e).formatDateTimeParts(this):[]}toISO({format:e="extended",suppressSeconds:t=!1,suppressMilliseconds:n=!1,includeOffset:r=!0,extendedZone:i=!1,precision:o="milliseconds"}={}){if(!this.isValid)return null;const s="extended"===e;let a=Ao(this,s,o=Zo(o));return Ho.indexOf(o)>=3&&(a+="T"),a+=Lo(this,s,t,n,r,i,o),a}toISODate({format:e="extended",precision:t="day"}={}){return this.isValid?Ao(this,"extended"===e,Zo(t)):null}toISOWeekDate(){return Wo(this,"kkkk-'W'WW-c")}toISOTime({suppressMilliseconds:e=!1,suppressSeconds:t=!1,includeOffset:n=!0,includePrefix:r=!1,extendedZone:i=!1,format:o="extended",precision:s="milliseconds"}={}){return this.isValid?(s=Zo(s),(r&&Ho.indexOf(s)>=3?"T":"")+Lo(this,"extended"===o,t,e,n,i,s)):null}toRFC2822(){return Wo(this,"EEE, dd LLL yyyy HH:mm:ss ZZZ",!1)}toHTTP(){return Wo(this.toUTC(),"EEE, dd LLL yyyy HH:mm:ss 'GMT'")}toSQLDate(){return this.isValid?Ao(this,!0):null}toSQLTime({includeOffset:e=!0,includeZone:t=!1,includeOffsetSpace:n=!0}={}){let r="HH:mm:ss.SSS";return(t||e)&&(n&&(r+=" "),t?r+="z":e&&(r+="ZZ")),Wo(this,r,!0)}toSQL(e={}){return this.isValid?`${this.toSQLDate()} ${this.toSQLTime(e)}`:null}toString(){return this.isValid?this.toISO():$o}[Symbol.for("nodejs.util.inspect.custom")](){return this.isValid?`DateTime { ts: ${this.toISO()}, zone: ${this.zone.name}, locale: ${this.locale} }`:`DateTime { Invalid, reason: ${this.invalidReason} }`}valueOf(){return this.toMillis()}toMillis(){return this.isValid?this.ts:NaN}toSeconds(){return this.isValid?this.ts/1e3:NaN}toUnixInteger(){return this.isValid?Math.floor(this.ts/1e3):NaN}toJSON(){return this.toISO()}toBSON(){return this.toJSDate()}toObject(e={}){if(!this.isValid)return{};const t={...this.c};return e.includeConfig&&(t.outputCalendar=this.outputCalendar,t.numberingSystem=this.loc.numberingSystem,t.locale=this.loc.locale),t}toJSDate(){return new Date(this.isValid?this.ts:NaN)}diff(e,t="milliseconds",n={}){if(!this.isValid||!e.isValid)return ao.invalid("created by diffing an invalid DateTime");const r={locale:this.locale,numberingSystem:this.numberingSystem,...n},i=(a=t,Array.isArray(a)?a:[a]).map(ao.normalizeUnit),o=e.valueOf()>this.valueOf(),s=function(e,t,n,r){let[i,o,s,a]=function(e,t,n){const r=[["years",(e,t)=>t.year-e.year],["quarters",(e,t)=>t.quarter-e.quarter+4*(t.year-e.year)],["months",(e,t)=>t.month-e.month+12*(t.year-e.year)],["weeks",(e,t)=>{const n=ho(e,t);return(n-n%7)/7}],["days",ho]],i={},o=e;let s,a;for(const[l,c]of r)n.indexOf(l)>=0&&(s=l,i[l]=c(e,t),a=o.plus(i),a>t?(i[l]--,(e=o.plus(i))>t&&(a=e,i[l]--,e=o.plus(i))):e=a);return[e,i,a,s]}(e,t,n);const l=t-i,c=n.filter(e=>["hours","minutes","seconds","milliseconds"].indexOf(e)>=0);0===c.length&&(s<t&&(s=i.plus({[a]:1})),s!==i&&(o[a]=(o[a]||0)+l/(s-i)));const d=ao.fromObject(o,r);return c.length>0?ao.fromMillis(l,r).shiftTo(...c).plus(d):d}(o?this:e,o?e:this,i,r);var a;return o?s.negate():s}diffNow(e="milliseconds",t={}){return this.diff(es.now(),e,t)}until(e){return this.isValid?co.fromDateTimes(this,e):this}hasSame(e,t,n){if(!this.isValid)return!1;const r=e.valueOf(),i=this.setZone(e.zone,{keepLocalTime:!0});return i.startOf(t,n)<=r&&r<=i.endOf(t,n)}equals(e){return this.isValid&&e.isValid&&this.valueOf()===e.valueOf()&&this.zone.equals(e.zone)&&this.loc.equals(e.loc)}toRelative(e={}){if(!this.isValid)return null;const t=e.base||es.fromObject({},{zone:this.zone}),n=e.padding?this<t?-e.padding:e.padding:0;let r=["years","months","days","hours","minutes","seconds"],i=e.unit;return Array.isArray(e.unit)&&(r=e.unit,i=void 0),Qo(t,this.plus(n),{...e,numeric:"always",units:r,unit:i})}toRelativeCalendar(e={}){return this.isValid?Qo(e.base||es.fromObject({},{zone:this.zone}),this,{...e,numeric:"auto",units:["years","months","days"],calendary:!0}):null}static min(...e){if(!e.every(es.isDateTime))throw new Yt("min requires all arguments be DateTimes");return _r(e,e=>e.valueOf(),Math.min)}static max(...e){if(!e.every(es.isDateTime))throw new Yt("max requires all arguments be DateTimes");return _r(e,e=>e.valueOf(),Math.max)}static fromFormatExplain(e,t,n={}){const{locale:r=null,numberingSystem:i=null}=n;return Co(Bn.fromOpts({locale:r,numberingSystem:i,defaultToEN:!0}),e,t)}static fromStringExplain(e,t,n={}){return es.fromFormatExplain(e,t,n)}static buildFormatParser(e,t={}){const{locale:n=null,numberingSystem:r=null}=t,i=Bn.fromOpts({locale:n,numberingSystem:r,defaultToEN:!0});return new So(i,e)}static fromFormatParser(e,t,n={}){if(xr(e)||xr(t))throw new Yt("fromFormatParser requires an input string and a format parser");const{locale:r=null,numberingSystem:i=null}=n,o=Bn.fromOpts({locale:r,numberingSystem:i,defaultToEN:!0});if(!o.equals(t.locale))throw new Yt(`fromFormatParser called with a locale of ${o}, but the format parser was created for ${t.locale}`);const{result:s,zone:a,specificOffset:l,invalidReason:c}=t.explainFromTokens(e);return c?es.invalid(c):jo(s,a,n,`format ${t.format}`,e,l)}static get DATE_SHORT(){return Jt}static get DATE_MED(){return Kt}static get DATE_MED_WITH_WEEKDAY(){return Xt}static get DATE_FULL(){return en}static get DATE_HUGE(){return tn}static get TIME_SIMPLE(){return nn}static get TIME_WITH_SECONDS(){return rn}static get TIME_WITH_SHORT_OFFSET(){return on}static get TIME_WITH_LONG_OFFSET(){return sn}static get TIME_24_SIMPLE(){return an}static get TIME_24_WITH_SECONDS(){return ln}static get TIME_24_WITH_SHORT_OFFSET(){return cn}static get TIME_24_WITH_LONG_OFFSET(){return dn}static get DATETIME_SHORT(){return un}static get DATETIME_SHORT_WITH_SECONDS(){return hn}static get DATETIME_MED(){return mn}static get DATETIME_MED_WITH_SECONDS(){return fn}static get DATETIME_MED_WITH_WEEKDAY(){return pn}static get DATETIME_FULL(){return gn}static get DATETIME_FULL_WITH_SECONDS(){return yn}static get DATETIME_HUGE(){return vn}static get DATETIME_HUGE_WITH_SECONDS(){return wn}}function ts(e){if(es.isDateTime(e))return e;if(e&&e.valueOf&&kr(e.valueOf()))return es.fromJSDate(e);if(e&&"object"==typeof e)return es.fromObject(e);throw new Yt(`Unknown datetime argument: ${e}, of type ${typeof e}`)}function ns({title:e,description:t,children:n,noSubscription:r,hideHeader:i}){return Fe("div",{className:$t.create("page-container",{minHeight:"100vh",display:"flex",flexDirection:"column",backgroundColor:bt.colors.accent}),children:Fe("div",{className:$t.create("page-content-container",{maxWidth:"1200px",margin:"0 auto",width:"100%",flex:"1",boxSizing:"border-box",overflowX:"hidden"}),children:[!i&&Fe("div",{className:$t.create("page-heading-wrapper",{width:"100%",marginBottom:bt.spacing.lg}),children:Fe(Mt,{children:Fe("div",{className:$t.create("page-heading-container",{backgroundColor:bt.colors.primary,color:bt.colors.primaryForeground,borderRadius:bt.radius.large,padding:`${bt.spacing.lg} ${bt.spacing.xl}`,boxShadow:bt.shadow.md}),children:Fe("div",{className:$t.create("page-heading-content",{display:"flex",alignItems:"center",justifyContent:"space-between",gap:bt.spacing.lg}),children:Fe("div",{className:$t.create("page-heading-text",{flex:"1",minWidth:"0"}),children:[Fe("h1",{className:$t.create("page-template-title",{margin:"0",fontSize:"1.5rem",fontWeight:"700",lineHeight:"1.3",color:bt.colors.primaryForeground,letterSpacing:"-0.025em"}),children:e}),t&&Fe("p",{className:$t.create("page-template-description",{margin:"0",marginTop:bt.spacing.sm,fontSize:bt.fontSize.small,lineHeight:"1.5",color:bt.colors.primaryForeground,opacity:"0.85"}),children:t})]})})})})}),n]})})}function rs({title:e="Loading",message:t}){const n=$t.create("loading-container",{display:"flex",flexDirection:"column",justifyContent:"center",alignItems:"center",gap:bt.spacing.md,minHeight:"500px"}),r=$t.create("loading-title",{margin:"0",fontSize:"1.125rem",fontWeight:"600",color:bt.colors.foreground,letterSpacing:"-0.01em"}),i=$t.create("loading-message",{margin:"0",fontSize:bt.fontSize.small,color:bt.colors.mutedForeground}),o=$t.create("loading-text-group",{display:"flex",flexDirection:"column",alignItems:"center",gap:"0.25rem",textAlign:"center"});return Fe(ns,{title:"Loading",noSubscription:!0,hideHeader:!0,children:Fe(Mt,{children:Fe("div",{className:n,children:[Fe(Rt,{size:"large"}),Fe("div",{className:o,children:[Fe("p",{className:r,children:e}),t&&Fe("p",{className:i,children:t})]})]})})})}function is({variant:e="primary",type:t="button",onClick:n,disabled:r,loading:i=!1,children:o,className:s,...a}){const l={primary:{backgroundColor:bt.colors.primary,color:bt.colors.primaryForeground,boxShadow:bt.shadow.sm},outline:{border:`${bt.borderWidth} solid ${bt.colors.primary}`,backgroundColor:bt.colors.card,color:bt.colors.primary,boxShadow:bt.shadow.sm}},c=$t.create("button",{height:"2.75rem",paddingLeft:"1.5rem",paddingRight:"1.5rem",paddingTop:"0.625rem",paddingBottom:"0.625rem",border:"none",borderRadius:bt.radius.default,cursor:"pointer",fontSize:bt.fontSize.default,fontWeight:"500",transition:bt.transition,fontFamily:bt.fontFamily,display:"flex",alignItems:"center",justifyContent:"center",gap:"0.5rem"},{"(max-width: 600px)":{fontSize:"14px",paddingLeft:"1.25rem",paddingRight:"1.25rem"}}),d=$t.pseudoElement("button",":disabled",{opacity:"50%",cursor:"not-allowed"});$t.pseudoElement(`button-${e}`,":hover:not(:disabled)",{transform:"translateY(-1px)",boxShadow:bt.shadow.md}),$t.pseudoElement(`button-${e}`,":active:not(:disabled)",{transform:"translateY(0)",boxShadow:bt.shadow.sm});const u=$t.create(`button-${e}`,{...l[e]});return Fe("button",{type:t,className:Dt(c,d,u,s),onClick:r||i?void 0:n,disabled:r||i,...a,children:[i&&Fe(Rt,{size:"small"}),o]})}function os({error:e}){const t=e||{title:"Something Went Wrong",message:"We're unable to load the application at this time."},n=t.trackingId?t.trackingId.replace(/[^a-zA-Z0-9]/g,"").slice(0,8).toUpperCase():null;return Fe(ns,{title:t.title,noSubscription:!0,hideHeader:!0,children:Fe(Mt,{children:Fe("div",{className:$t.create("error-page-layout",{display:"flex",justifyContent:"center",width:"100%"}),children:Fe("div",{className:$t.create("error-page-card",{backgroundColor:bt.colors.card,boxShadow:bt.shadow.sm,borderRadius:bt.radius.large,display:"flex",flexDirection:"column",width:"100%",maxWidth:"500px"}),children:[Fe("div",{className:$t.create("error-page-header",{paddingInline:bt.spacing.xl,paddingTop:bt.spacing.xl,paddingBottom:bt.spacing.lg,textAlign:"center"},{"(max-width: 768px)":{paddingInline:bt.spacing.lg,paddingTop:bt.spacing.lg},"(max-width: 480px)":{paddingInline:bt.spacing.md,paddingTop:bt.spacing.md}}),children:[Fe("div",{className:$t.create("error-page-icon-wrapper",{display:"flex",justifyContent:"center",marginBottom:bt.spacing.lg}),children:Fe("div",{className:$t.create("error-page-icon-circle",{width:"4rem",height:"4rem",borderRadius:"50%",backgroundColor:"rgba(239, 68, 68, 0.1)",display:"flex",alignItems:"center",justifyContent:"center"}),children:Fe("svg",{className:$t.create("error-page-icon",{width:"2rem",height:"2rem",color:bt.colors.destructive}),fill:"none",viewBox:"0 0 24 24",stroke:"currentColor",strokeWidth:2,children:Fe("path",{strokeLinecap:"round",strokeLinejoin:"round",d:"M12 9v2m0 4h.01m-6.938 4h13.856c1.54 0 2.502-1.667 1.732-3L13.732 4c-.77-1.333-2.694-1.333-3.464 0L3.34 16c-.77 1.333.192 3 1.732 3z"})})})}),Fe("h2",{className:$t.create("error-page-title",{margin:"0",marginBottom:bt.spacing.sm,fontSize:"1.75rem",fontWeight:"700",color:bt.colors.primary,lineHeight:"1.1",letterSpacing:"-0.025em"},{"(max-width: 768px)":{fontSize:"1.5rem"},"(max-width: 480px)":{fontSize:"1.25rem"}}),children:t.title}),Fe("p",{className:$t.create("error-page-description",{margin:"0",marginTop:bt.spacing.sm,fontSize:bt.fontSize.default,lineHeight:"1.6",color:bt.colors.mutedForeground}),children:t.message})]}),Fe("div",{className:$t.create("error-page-content",{paddingInline:bt.spacing.xl,paddingBottom:bt.spacing.xl},{"(max-width: 768px)":{paddingInline:bt.spacing.lg,paddingBottom:bt.spacing.lg},"(max-width: 480px)":{paddingInline:bt.spacing.md,paddingBottom:bt.spacing.md}}),children:[n&&Fe("p",{className:$t.create("error-page-support",{margin:"0",marginBottom:bt.spacing.lg,fontSize:bt.fontSize.small,lineHeight:"1.5",color:bt.colors.mutedForeground,textAlign:"center"}),children:["If this problem persists, please contact support with reference"," ",Fe("span",{className:$t.create("error-page-ref",{fontFamily:"monospace",fontWeight:"600",color:bt.colors.foreground}),children:n})]}),Fe(is,{onClick:()=>{window.location.reload()},className:$t.create("error-page-button",{width:"100%"}),children:"Try Again"})]})]})})})})}function ss({className:e,children:t}){const n=$t.create("center",{display:"flex",flexDirection:"column",justifyContent:"center",alignItems:"center",minHeight:"500px"});return Fe("div",{className:Dt(n,e),children:t})}function as({message:e,estimatedTime:t,organisation:n}){const r=(null==n?void 0:n.name)||null,i=(null==n?void 0:n.admin_email)||null,o=(null==n?void 0:n.phone)||null,s=Boolean(i||o),a=$t.create("maintenance-card",{backgroundColor:bt.colors.card,borderRadius:bt.radius.large,padding:bt.spacing.xl,boxShadow:bt.shadow.sm,maxWidth:"42rem",margin:"0 auto"},{"(max-width: 768px)":{padding:bt.spacing.lg},"(max-width: 480px)":{padding:bt.spacing.md}}),l=$t.create("maintenance-icon-container",{display:"flex",justifyContent:"center",marginBottom:bt.spacing.lg}),c=$t.create("maintenance-icon",{width:"4rem",height:"4rem",color:bt.colors.primary}),d=$t.create("maintenance-header",{textAlign:"center",marginBottom:bt.spacing.xl}),u=$t.create("maintenance-title",{fontSize:"2rem",fontWeight:"700",color:bt.colors.primary,marginBottom:bt.spacing.sm,lineHeight:"1.2",letterSpacing:"-0.025em"},{"(max-width: 768px)":{fontSize:"1.75rem"},"(max-width: 480px)":{fontSize:"1.5rem"}}),h=$t.create("maintenance-subtitle",{fontSize:bt.fontSize.default,color:bt.colors.foreground,lineHeight:"1.6",opacity:"0.8"}),m=$t.create("maintenance-estimated-time",{fontSize:bt.fontSize.small,color:bt.colors.mutedForeground,marginTop:bt.spacing.sm}),f=$t.create("maintenance-refresh-actions",{display:"flex",justifyContent:"center",marginBottom:s?"0":bt.spacing.sm}),p=$t.create("maintenance-contact-section",{borderTop:`1px solid ${bt.colors.border}`,paddingTop:bt.spacing.xl,marginTop:bt.spacing.xl,textAlign:"center"}),g=$t.create("maintenance-contact-text",{fontSize:bt.fontSize.default,color:bt.colors.foreground,marginBottom:bt.spacing.lg}),y=$t.create("maintenance-contact-actions",{display:"flex",gap:bt.spacing.md,flexWrap:"wrap",justifyContent:"center"});return Fe(ns,{title:"We'll be right back",description:"Quotes are temporarily unavailable",noSubscription:!0,hideHeader:!0,children:Fe(Mt,{children:Fe(ss,{children:Fe("div",{className:a,children:[Fe("div",{className:l,children:Fe(()=>Fe("svg",{xmlns:"http://www.w3.org/2000/svg",width:"24",height:"24",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor","stroke-width":"2","stroke-linecap":"round","stroke-linejoin":"round",className:c,children:Fe("path",{d:"M14.7 6.3a1 1 0 0 0 0 1.4l1.6 1.6a1 1 0 0 0 1.4 0l3.77-3.77a6 6 0 0 1-7.94 7.94l-6.91 6.91a2.12 2.12 0 0 1-3-3l6.91-6.91a6 6 0 0 1 7.94-7.94l-3.76 3.76z"})}),{})}),Fe("div",{className:d,children:[Fe("h1",{className:u,children:"We'll be right back"}),Fe("p",{className:h,children:e||"We're temporarily unable to issue new quotes. Please try again shortly."}),t&&Fe("p",{className:m,children:[Fe("strong",{children:"Estimated time:"})," ",t]})]}),Fe("div",{className:f,children:Fe(is,{onClick:()=>{window.location.reload()},children:"Refresh Page"})}),s&&Fe("div",{className:p,children:[Fe("p",{className:g,children:r?`Need assistance? Contact ${r}`:"Need assistance? Contact us"}),Fe("div",{className:y,children:[o&&Fe(is,{variant:"outline",onClick:()=>window.open(`tel:${o}`),children:[Fe(()=>Fe("svg",{xmlns:"http://www.w3.org/2000/svg",width:"16",height:"16",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor","stroke-width":"2","stroke-linecap":"round","stroke-linejoin":"round",style:{marginRight:"0.5rem"},children:Fe("path",{d:"M22 16.92v3a2 2 0 0 1-2.18 2 19.79 19.79 0 0 1-8.63-3.07 19.5 19.5 0 0 1-6-6 19.79 19.79 0 0 1-3.07-8.67A2 2 0 0 1 4.11 2h3a2 2 0 0 1 2 1.72 12.84 12.84 0 0 0 .7 2.81 2 2 0 0 1-.45 2.11L8.09 9.91a16 16 0 0 0 6 6l1.27-1.27a2 2 0 0 1 2.11-.45 12.84 12.84 0 0 0 2.81.7A2 2 0 0 1 22 16.92z"})}),{}),"Call Us"]}),i&&Fe(is,{variant:"outline",onClick:()=>window.open(`mailto:${i}`),children:[Fe(()=>Fe("svg",{xmlns:"http://www.w3.org/2000/svg",width:"16",height:"16",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor","stroke-width":"2","stroke-linecap":"round","stroke-linejoin":"round",style:{marginRight:"0.5rem"},children:[Fe("rect",{width:"20",height:"16",x:"2",y:"4",rx:"2"}),Fe("path",{d:"m22 7-8.97 5.7a1.94 1.94 0 0 1-2.06 0L2 7"})]}),{}),"Email Us"]})]})]})]})})})})}function ls({size:e="default",style:t="normal",className:n,children:r}){const i=$t.create("text",{marginTop:"0",marginBottom:"0"}),o=$t.create("text-small",{fontSize:bt.fontSize.small}),s=$t.create("text-default",{fontSize:bt.fontSize.default}),a=$t.create("text-italic",{fontStyle:"italic"}),l=$t.create("text-bold",{fontWeight:"bold"}),c=$t.create("text-underline",{textDecoration:"underline"}),d=Dt({[a]:"italic"===t,[l]:"bold"===t,[c]:"underline"===t}),u=Dt({[o]:"small"===e,[s]:"default"===e});return Fe("p",{className:Dt(i,u,d,n),children:r})}function cs({title:e,description:t}){return Fe("div",{className:$t.create("section-header",{}),children:[Fe("h3",{className:$t.create("section-title",{fontSize:bt.fontSize.large,fontWeight:"600",margin:"0",color:bt.colors.foreground}),children:e}),t&&Fe(ls,{className:$t.create("section-description",{color:bt.colors.mutedForeground,margin:"0.25rem 0 0 0"}),children:"Choose your excess amount - the amount you'll pay if you need to make a claim"})]})}function ds({selected:e}){return Fe("div",{className:Dt($t.create("selected-indicator",{height:"14px",width:"14px",borderRadius:"100%",border:`${bt.borderWidth} solid transparent`}),e?$t.create("selected-indicator-selected",{backgroundColor:bt.colors.primary}):$t.create("selected-indicator-unselected",{border:`${bt.borderWidth} solid ${bt.colors.border}`}))})}function us({excessOptions:e,selectedExcessId:t,onExcessSelect:n}){const r=[...e].sort((e,t)=>e.excess_amount-t.excess_amount),i=e.find(e=>e.id===t);return Fe("div",{className:$t.create("checkout-section",{display:"flex",flexDirection:"column",gap:"1rem"}),children:[Fe(cs,{title:1===e.length?"Excess":"Excess Options"}),Fe("div",{className:$t.create("excess-options-grid",{display:"flex",flexDirection:"row",flexWrap:"wrap",gap:"1rem"}),children:r.map(e=>{const r=e.id===t;return Fe("div",{className:Dt($t.create("excess-option-card",{borderRadius:bt.radius.default,minWidth:"125px",padding:"0.5rem 1rem 0.5rem 0.5rem",cursor:"pointer",transition:"all 150ms ease",display:"flex",flexDirection:"row",alignItems:"center",gap:"1rem"}),r?$t.create("excess-option-card-selected",{border:`2px solid ${bt.colors.primary}`,backgroundColor:bt.colors.accent}):$t.create("excess-option-card-unselected",{border:`2px solid ${bt.colors.border}`,backgroundColor:bt.colors.card})),onClick:()=>n(e.id),children:[Fe(ds,{selected:r}),Fe("div",{className:$t.create("excess-amount",{color:bt.colors.foreground}),children:[e.excess_label||`$${Number(e.excess_amount).toFixed(0)}`,e.description?"*":""]})]},e.id)})}),(null==i?void 0:i.description)&&Fe("div",{className:$t.create("excess-description",{padding:"0.75rem",backgroundColor:bt.colors.muted,borderRadius:bt.radius.default,border:`1px solid ${bt.colors.border}`}),children:Fe(ls,{className:$t.create("excess-description-text",{fontSize:bt.fontSize.small,color:bt.colors.foreground,margin:"0"}),children:i.description})})]})}function hs(e,t="NZD",n="en-NZ"){return new Intl.NumberFormat(n,{style:"currency",currency:t}).format(e)}function ms(e,t){return"bank_transfer"===t?"Bank Transfer":"one-time"===e?"Online Payment":"monthly"===e?"Monthly Installments":`${e.charAt(0).toUpperCase()}${e.slice(1)} Installments`}function fs({paymentOptions:e,paymentGateways:t,selectedExcessId:n,selectedPaymentOption:r,onPaymentSelect:i}){const o=at(()=>{if(!n)return[];const r=e.filter(e=>e.excess_id===n).map(e=>{const n=t.find(t=>t.id===e.gateway_id);if(!n)throw new Error(`Gateway not found for option: ${e.gateway_id}`);return{...e,gateway:n}});return r.sort((e,t)=>{var n,r;return e.amount.success!==t.amount.success?e.amount.success?-1:1:("one-time"===e.amount.frequency?Number(e.amount.dueToday):Number(null!==(n=e.amount.installmentAmount)&&void 0!==n?n:0))-("one-time"===t.amount.frequency?Number(t.amount.dueToday):Number(null!==(r=t.amount.installmentAmount)&&void 0!==r?r:0))})},[e,t,n]);return n?Fe(ps,{sortedOptions:o,selectedPaymentOption:r,onPaymentSelect:i}):Fe("div",{className:$t.create("payment-section-disabled",{opacity:"0.5",pointerEvents:"none"}),children:Fe(ps,{sortedOptions:[],selectedPaymentOption:null,onPaymentSelect:i})})}function ps({sortedOptions:e,selectedPaymentOption:t,onPaymentSelect:n}){const r=e.length>0;return Fe("div",{className:$t.create("checkout-section",{display:"flex",flexDirection:"column",gap:"1rem",width:"100%"}),children:[Fe(cs,{title:"Payment Options"}),Fe("div",r?{className:$t.create("payment-options-container",{display:"flex",flexDirection:"column",gap:"0.5rem"}),children:e.map(e=>{var r;return Fe(gs,{option:e,selectedPaymentOption:t,onPaymentSelect:n},`${e.gateway_id}-${null!==(r=e.gateway_method)&&void 0!==r?r:"default"}-${e.excess_id}`)})}:{className:$t.create("no-options-placeholder",{padding:"2rem",textAlign:"center",border:`1px dashed ${bt.colors.border}`,borderRadius:bt.radius.default,backgroundColor:bt.colors.muted}),children:Fe(ls,{className:$t.create("placeholder-text",{color:bt.colors.mutedForeground,margin:"0"}),children:"Payment options will appear here after selecting an excess amount"})})]})}function gs({option:e,selectedPaymentOption:t,onPaymentSelect:n}){var r,i,o,s,a,l;const c=(null!==(r=null==t?void 0:t.gateway_method)&&void 0!==r?r:null)===(null!==(i=e.gateway_method)&&void 0!==i?i:null)&&(null==t?void 0:t.gateway_id)===e.gateway_id&&(null==t?void 0:t.excess_id)===e.excess_id,d=e.amount.success,u=null!==(s=null!==(o=e.display_title)&&void 0!==o?o:e.gateway.display_title)&&void 0!==s?s:null,h=null!==(l=null!==(a=e.description)&&void 0!==a?a:e.gateway.description)&&void 0!==l?l:null,m=()=>d?"one-time"===e.amount.frequency?hs(e.amount.dueToday):`${hs(e.amount.installmentAmount||0)} x ${e.amount.numberOfInstallments}`:"Currently Unavailable",f=()=>h||("bank_transfer"===e.gateway.code?"Manual":`via ${e.gateway.name}`);return Fe("div",{className:Dt($t.create("payment-option-row",{borderRadius:bt.radius.default,padding:"0.75rem 1rem",cursor:d?"pointer":"not-allowed",transition:"all 150ms ease",display:"flex",alignItems:"center",justifyContent:"space-between",gap:"1rem",opacity:d?"1":"0.6"},{"(max-width: 950px)":{padding:"0.75rem",flexDirection:"column",alignItems:"stretch",gap:"0.25rem"}}),c?$t.create("payment-option-row-selected",{border:`2px solid ${bt.colors.primary}`,backgroundColor:bt.colors.accent}):$t.create("payment-option-row-unselected",{border:`2px solid ${bt.colors.border}`,backgroundColor:bt.colors.card})),onClick:()=>d&&n(e),children:[Fe("div",{className:$t.create("payment-option-desktop-wrapper",{display:"flex",flexDirection:"column",flex:"1"},{"(max-width: 950px)":{display:"none"}}),children:[Fe("div",{className:$t.create("frequency-title",{fontSize:bt.fontSize.default,fontWeight:"500",color:bt.colors.foreground}),children:u||ms(e.amount.frequency,e.gateway.code)}),Fe("div",{className:$t.create("gateway-description",{fontSize:bt.fontSize.small,color:bt.colors.mutedForeground}),children:f()})]}),Fe("div",{className:$t.create("payment-option-amount-desktop",{display:"flex",flexDirection:"column",alignItems:"flex-end"},{"(max-width: 950px)":{display:"none"}}),children:[Fe(ls,{className:d?$t.create("amount-text",{textAlign:"right",color:bt.colors.foreground,fontStyle:"normal"}):$t.create("amount-text-unavailable",{textAlign:"right",color:bt.colors.mutedForeground,fontStyle:"italic"}),children:m()}),d&&Fe(ls,{size:"small",className:$t.create("gateway-fee-text",{textAlign:"right",color:bt.colors.mutedForeground}),children:"bank_transfer"!==e.gateway.code&&e.amount.gatewayFee>0?`${hs(e.amount.gatewayFee)} fee`:"No fees"})]}),Fe("div",{className:$t.create("payment-option-mobile-wrapper",{display:"none"},{"(max-width: 950px)":{display:"flex",flexDirection:"column",gap:"0.125rem"}}),children:[Fe("div",{className:$t.create("payment-option-title-mobile",{fontSize:bt.fontSize.default,fontWeight:"500",color:bt.colors.foreground}),children:u||ms(e.amount.frequency,e.gateway.code)}),Fe(ls,{className:d?$t.create("amount-text-mobile",{fontWeight:"500",color:bt.colors.foreground,fontStyle:"normal"}):$t.create("amount-text-mobile-unavailable",{fontWeight:"500",color:bt.colors.mutedForeground,fontStyle:"italic"}),children:[m(),d&&e.amount.gatewayFee>0&&Fe("span",{className:$t.create("gateway-fee-inline",{fontWeight:"400",fontSize:bt.fontSize.small,color:bt.colors.mutedForeground,marginLeft:"0.375rem"}),children:["(",hs(e.amount.gatewayFee)," fee)"]})]}),Fe("div",{className:$t.create("gateway-description-mobile",{fontSize:bt.fontSize.small,color:bt.colors.mutedForeground}),children:f()})]})]})}const ys=e=>{try{return new Date(e).toLocaleDateString("en-NZ",{year:"numeric",month:"long",day:"numeric"})}catch(t){return e}};function vs({excessOptions:e,selectedExcessId:t,onEditQuote:n,isEditingQuote:r=!1,productName:i,quoteIntent:o,embedded:s=!1}){const a=at(()=>t?e.find(e=>e.id===t):null,[e,t]),l=(null==a?void 0:a.line_item_display)||[],{formProgress:c}=At(e=>({formProgress:e.getFormProgress()})),d=at(()=>{var e;const t=(null==c?void 0:c.page_data)||(null===(e=null==o?void 0:o.form_data)||void 0===e?void 0:e.page_data);if(!t)return null;let n={};for(const e in t){const r=t[e];r&&"object"==typeof r&&(r.client_first_name&&(n.firstName=r.client_first_name),r.client_last_name&&(n.lastName=r.client_last_name),r.client_email&&(n.email=r.client_email),r.client_phone&&(n.phone=r.client_phone),r.client_dob&&(n.dob=r.client_dob))}return Object.keys(n).length>0?n:null},[c,o]);return Fe("div",{className:$t.create(s?"cart-summary-container-embedded":"cart-summary-container",s?{}:{backgroundColor:bt.colors.card,borderRadius:bt.radius.large,padding:bt.spacing.lg,boxShadow:bt.shadow.sm},s?{}:{"(max-width: 768px)":{padding:bt.spacing.md}}),children:[Fe("h3",{className:$t.create("cart-summary-title",{fontSize:bt.fontSize.large,fontWeight:"600",marginBottom:bt.spacing.md,color:bt.colors.foreground}),children:"Insurance Details"}),d&&Fe(_,{children:[Fe("div",{className:$t.create("cart-client-details",{display:"flex",flexDirection:"column",gap:bt.spacing.sm,marginBottom:bt.spacing.md}),children:[d.firstName&&d.lastName&&Fe("div",{className:$t.create("detail-row",{display:"flex",justifyContent:"space-between",alignItems:"center"}),children:[Fe("span",{className:$t.create("detail-label",{color:bt.colors.mutedForeground,fontSize:bt.fontSize.small}),children:"Name"}),Fe("span",{className:$t.create("detail-value",{fontWeight:"500",color:bt.colors.foreground,fontSize:bt.fontSize.small}),children:[d.firstName," ",d.lastName]})]}),d.email&&Fe("div",{className:$t.create("detail-row",{display:"flex",justifyContent:"space-between",alignItems:"center"}),children:[Fe("span",{className:$t.create("detail-label",{color:bt.colors.mutedForeground,fontSize:bt.fontSize.small}),children:"Email"}),Fe("span",{className:$t.create("detail-value",{fontWeight:"500",color:bt.colors.foreground,fontSize:bt.fontSize.small}),children:d.email})]}),d.phone&&Fe("div",{className:$t.create("detail-row",{display:"flex",justifyContent:"space-between",alignItems:"center"}),children:[Fe("span",{className:$t.create("detail-label",{color:bt.colors.mutedForeground,fontSize:bt.fontSize.small}),children:"Phone"}),Fe("span",{className:$t.create("detail-value",{fontWeight:"500",color:bt.colors.foreground,fontSize:bt.fontSize.small}),children:d.phone})]}),d.dob&&Fe("div",{className:$t.create("detail-row",{display:"flex",justifyContent:"space-between",alignItems:"center"}),children:[Fe("span",{className:$t.create("detail-label",{color:bt.colors.mutedForeground,fontSize:bt.fontSize.small}),children:"Date of Birth"}),Fe("span",{className:$t.create("detail-value",{fontWeight:"500",color:bt.colors.foreground,fontSize:bt.fontSize.small}),children:ys(d.dob)})]})]}),Fe("hr",{className:$t.create("divider",{border:"none",borderTop:`1px solid ${bt.colors.border}`,margin:`${bt.spacing.md} 0`})})]}),Fe("div",{className:$t.create("cart-product-section",{display:"flex",flexDirection:"column",gap:bt.spacing.sm,marginBottom:bt.spacing.lg}),children:l.map((e,t)=>Fe("div",{className:$t.create("cart-item",{display:"flex",flexDirection:"column",gap:bt.spacing.sm}),children:[Fe("div",{className:$t.create("cart-item-description",{fontSize:bt.fontSize.small,fontWeight:"500",color:bt.colors.foreground}),children:e.description}),e.show_sum_insured&&e.sum_insured&&Fe("div",{className:$t.create("cart-item-sum-insured",{fontSize:bt.fontSize.small,color:bt.colors.mutedForeground}),children:["Sum Insured: ",hs(e.sum_insured)]})]},t))}),Fe(is,{onClick:n,disabled:r,variant:"outline",className:$t.create("edit-quote-button",{width:"100%"}),children:r?"Clearing quote...":"Edit details"})]})}function ws({clauses:e}){const[t,n]=it(!0);return 0===e.length?null:Fe("div",{className:$t.create("policy-clauses-section",{borderRadius:bt.radius.default,border:`1px solid ${bt.colors.border}`,overflow:"hidden"}),children:[Fe("button",{type:"button",onClick:()=>n(!t),className:$t.create("policy-clauses-toggle",{display:"flex",alignItems:"center",justifyContent:"space-between",width:"100%",padding:`${bt.spacing.sm} ${bt.spacing.md}`,background:"none",border:"none",cursor:"pointer",fontFamily:"inherit",textAlign:"left"}),children:[Fe("div",{className:$t.create("policy-clauses-header",{display:"flex",alignItems:"center",gap:bt.spacing.sm}),children:[Fe("svg",{width:"16",height:"16",viewBox:"0 0 24 24",fill:"none",stroke:bt.colors.mutedForeground,"stroke-width":"2","stroke-linecap":"round","stroke-linejoin":"round",children:[Fe("path",{d:"M14 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V8z"}),Fe("polyline",{points:"14 2 14 8 20 8"}),Fe("line",{x1:"16",y1:"13",x2:"8",y2:"13"}),Fe("line",{x1:"16",y1:"17",x2:"8",y2:"17"}),Fe("polyline",{points:"10 9 9 9 8 9"})]}),Fe("span",{className:$t.create("policy-clauses-title",{fontSize:bt.fontSize.small,fontWeight:"500",color:bt.colors.foreground,opacity:"0.7"}),children:"Policy Clauses"})]}),Fe("svg",{width:"14",height:"14",viewBox:"0 0 24 24",fill:"none",stroke:bt.colors.mutedForeground,"stroke-width":"2","stroke-linecap":"round","stroke-linejoin":"round",style:{transition:"transform 0.2s ease",transform:t?"rotate(180deg)":"rotate(0deg)"},children:Fe("polyline",{points:"6 9 12 15 18 9"})})]}),t&&Fe("div",{className:$t.create("policy-clauses-content",{padding:`0 ${bt.spacing.md} ${bt.spacing.md}`,borderTop:`1px solid ${bt.colors.border}`,paddingTop:bt.spacing.md}),children:Fe("ul",{className:$t.create("policy-clauses-list",{margin:"0",padding:"0",listStyle:"none",display:"flex",flexDirection:"column",gap:bt.spacing.sm}),children:e.map((e,t)=>Fe("li",{className:$t.create("policy-clause-item",{fontSize:bt.fontSize.small,color:bt.colors.foreground,opacity:"0.7",lineHeight:"1.5",paddingLeft:bt.spacing.md,position:"relative"}),children:[Fe("span",{className:$t.create("policy-clause-bullet",{position:"absolute",left:"0",top:"0.6em",width:"4px",height:"4px",borderRadius:"50%",backgroundColor:bt.colors.mutedForeground,opacity:"0.5"})}),e.note||e.reference||""]},t))})})]})}function bs({label:e,value:t,isTotal:n=!1,className:r}){return Fe("div",{className:Dt($t.create("summary-item",{display:"flex",justifyContent:"space-between",alignItems:"center"}),r),children:[Fe("span",{className:$t.create("summary-label",{color:bt.colors.mutedForeground,fontSize:bt.fontSize.small}),children:e}),Fe("span",{className:$t.create("summary-value",{fontWeight:n?"600":"500",color:bt.colors.foreground,fontSize:n?bt.fontSize.large:"inherit"}),children:t})]})}function xs({excessOptions:e,paymentGateways:t,selectedExcessId:n,selectedPaymentOption:r,onPurchase:i,canPurchase:o,onContinueLater:s,continueLaterLoading:a=!1,showContinueLaterSuccess:l=!1}){var c;at(()=>n?e.find(e=>e.id===n):null,[e,n]);const d=at(()=>r?t.find(e=>e.id===r.gateway_id):null,[t,r]);return Fe("div",{className:$t.create("payment-summary",{display:"flex",flex:"1",flexDirection:"column",gap:"1rem"}),children:[r&&Fe("div",{className:$t.create("summary-section",{paddingBottom:"1rem"}),children:Fe("div",{className:$t.create("payment-breakdown",{display:"flex",flexDirection:"column",gap:"0.5rem"}),children:"one-time"===r.amount.frequency?Fe(_,{children:[r.amount.gatewayFee>0&&Fe(bs,{label:"windcave"===(null==d?void 0:d.code)?"Credit card surcharge:":"Provider Fee:",value:hs(r.amount.gatewayFee)}),Fe(bs,{label:"Due Today:",value:hs(Number(r.amount.dueToday)+Number(r.amount.gatewayFee)),isTotal:!0})]}):Fe(_,{children:[r.amount.gatewayFee>0&&Fe(bs,{label:"windcave"===(null==d?void 0:d.code)?"Credit card surcharge:":"Provider Fee:",value:hs(r.amount.gatewayFee)}),r.amount.totalRepayable&&Fe(bs,{label:"Total Payable:",value:hs(Number(r.amount.totalRepayable)+Number(null!==(c=r.amount.gatewayFee)&&void 0!==c?c:0))}),Fe(bs,{label:"Due Today:",value:hs(r.amount.dueToday)}),r.amount.installmentAmount&&r.amount.numberOfInstallments&&r.amount.numberOfInstallments>1&&Fe(bs,{label:"Remaining payments:",value:`${r.amount.numberOfInstallments-1} x ${hs(r.amount.installmentAmount)}`})]})})}),s&&Fe(is,{onClick:s,disabled:a||l,variant:"outline",className:$t.create("continue-later-button",{width:"100%",height:"2.75rem",fontSize:bt.fontSize.default,fontWeight:"500"},{"(max-width: 380px)":{fontSize:bt.fontSize.small,height:"2.5rem"}}),children:l?"Email sent":a?"Sending...":"Continue Later"}),Fe(is,{onClick:i,disabled:!o,className:$t.create("purchase-button",{width:"100%",height:"3rem",fontSize:bt.fontSize.default,fontWeight:"600"},{"(max-width: 380px)":{fontSize:bt.fontSize.small,height:"2.75rem"}}),children:o?"Go to Payment":n?"Select Payment Option":"Select Excess"})]})}function ks({details:e,onClose:t}){const n=(e,t)=>{navigator.clipboard.writeText(e).then(()=>{alert(`${t} copied to clipboard!`)}).catch(()=>{})};return Fe("div",{className:$t.create("bank-transfer-container",{display:"flex",flexDirection:"column",gap:bt.spacing.lg}),children:[Fe("div",{className:$t.create("success-message",{backgroundColor:bt.colors.accent,border:`2px solid ${bt.colors.primary}`,borderRadius:bt.radius.default,padding:bt.spacing.lg,textAlign:"center"}),children:[Fe("div",{className:$t.create("success-icon",{fontSize:"3rem",marginBottom:bt.spacing.sm}),children:"✓"}),Fe("h3",{className:$t.create("success-title",{margin:"0",marginBottom:bt.spacing.sm,color:bt.colors.primary,fontSize:bt.fontSize.large,fontWeight:"600"}),children:"Quote Reserved"}),Fe(ls,{className:$t.create("success-description",{margin:"0",color:bt.colors.foreground,opacity:"0.9"}),children:"Your quote has been reserved. Please complete the bank transfer to finalize your coverage."})]}),Fe("div",{className:$t.create("transfer-instructions",{backgroundColor:bt.colors.card,border:`1px solid ${bt.colors.border}`,borderRadius:bt.radius.default,padding:bt.spacing.lg}),children:[Fe("h4",{className:$t.create("instructions-title",{margin:"0",marginBottom:bt.spacing.md,fontSize:bt.fontSize.default,fontWeight:"600",color:bt.colors.foreground}),children:"Bank Transfer Instructions"}),Fe("div",{className:$t.create("instructions-grid",{display:"grid",gap:bt.spacing.md}),children:[Fe("div",{className:$t.create("detail-row-highlighted",{backgroundColor:bt.colors.accent,border:`2px solid ${bt.colors.primary}`,borderRadius:bt.radius.default,padding:bt.spacing.md}),children:[Fe("div",{className:$t.create("detail-label",{fontSize:bt.fontSize.small,color:bt.colors.mutedForeground,marginBottom:"0.25rem",fontWeight:"500"}),children:"Reference Number (IMPORTANT)"}),Fe("div",{className:$t.create("detail-value-wrapper",{display:"flex",alignItems:"center",gap:"0.5rem"}),children:[Fe("code",{className:$t.create("detail-value-code",{fontFamily:"monospace",fontSize:bt.fontSize.large,fontWeight:"700",color:bt.colors.primary,letterSpacing:"0.05em"}),children:e.reference}),Fe("button",{onClick:()=>n(e.reference,"Reference"),className:$t.create("copy-button",{background:"transparent",border:`1px solid ${bt.colors.primary}`,borderRadius:bt.radius.small,padding:"0.25rem 0.5rem",cursor:"pointer",fontSize:bt.fontSize.small,color:bt.colors.primary,transition:"all 150ms ease"}),children:"Copy"})]}),Fe(ls,{size:"small",className:$t.create("reference-note",{marginTop:"0.5rem",marginBottom:"0",color:bt.colors.foreground,fontWeight:"500"}),children:"⚠️ Please include this reference in your transfer particulars"})]}),Fe("div",{className:$t.create("detail-row",{}),children:[Fe("div",{className:$t.create("detail-label",{fontSize:bt.fontSize.small,color:bt.colors.mutedForeground,marginBottom:"0.25rem"}),children:"Amount"}),Fe("div",{className:$t.create("detail-value",{fontSize:bt.fontSize.large,fontWeight:"600",color:bt.colors.foreground}),children:["$",e.amount.toFixed(2)," ",e.currency]})]}),Fe("div",{className:$t.create("detail-row",{}),children:[Fe("div",{className:$t.create("detail-label",{fontSize:bt.fontSize.small,color:bt.colors.mutedForeground,marginBottom:"0.25rem"}),children:"Account Name"}),Fe("div",{className:$t.create("detail-value-wrapper",{display:"flex",alignItems:"center",gap:"0.5rem"}),children:[Fe("span",{className:$t.create("detail-value",{fontFamily:"monospace",fontSize:bt.fontSize.default,color:bt.colors.foreground}),children:e.bank_account_name}),Fe("button",{onClick:()=>n(e.bank_account_name,"Account name"),className:$t.create("copy-button-small",{background:"transparent",border:`1px solid ${bt.colors.border}`,borderRadius:bt.radius.small,padding:"0.125rem 0.375rem",cursor:"pointer",fontSize:bt.fontSize.small,color:bt.colors.mutedForeground,transition:"all 150ms ease"}),children:"Copy"})]})]}),Fe("div",{className:$t.create("detail-row",{}),children:[Fe("div",{className:$t.create("detail-label",{fontSize:bt.fontSize.small,color:bt.colors.mutedForeground,marginBottom:"0.25rem"}),children:"Account Number"}),Fe("div",{className:$t.create("detail-value-wrapper",{display:"flex",alignItems:"center",gap:"0.5rem"}),children:[Fe("span",{className:$t.create("detail-value",{fontFamily:"monospace",fontSize:bt.fontSize.default,color:bt.colors.foreground}),children:e.bank_account_number}),Fe("button",{onClick:()=>n(e.bank_account_number,"Account number"),className:$t.create("copy-button-small",{background:"transparent",border:`1px solid ${bt.colors.border}`,borderRadius:bt.radius.small,padding:"0.125rem 0.375rem",cursor:"pointer",fontSize:bt.fontSize.small,color:bt.colors.mutedForeground,transition:"all 150ms ease"}),children:"Copy"})]})]})]}),e.instructions_html&&Fe("div",{className:$t.create("additional-instructions",{marginTop:bt.spacing.md,paddingTop:bt.spacing.md,borderTop:`1px solid ${bt.colors.border}`}),children:Fe("div",{className:$t.create("instructions-content",{fontSize:bt.fontSize.small,color:bt.colors.foreground,lineHeight:"1.6"}),dangerouslySetInnerHTML:{H:e.instructions_html}})})]}),Fe("div",{className:$t.create("important-note",{backgroundColor:bt.colors.muted,border:`1px solid ${bt.colors.border}`,borderRadius:bt.radius.default,padding:bt.spacing.md}),children:Fe(ls,{size:"small",className:$t.create("note-text",{margin:"0",color:bt.colors.foreground,lineHeight:"1.5"}),children:[Fe("strong",{children:"Important:"})," Your coverage will be activated once we verify receipt of your payment. This typically takes 1-2 business days. We'll send you a confirmation email once your payment is processed."]})}),Fe("div",{className:$t.create("actions",{display:"flex",justifyContent:"center"}),children:Fe(is,{onClick:t,variant:"primary",children:"I've Made the Transfer"})})]})}function Ns({isOpen:e,onClose:t,onSuccess:n,paymentRequest:r}){const{fsm:i}=At(()=>({})),[o,s]=it("initiating"),[a,l]=it(null),[c,d]=it(null),[u,h]=it(null),[m,f]=it(null);ot(()=>{e&&r&&p()},[e,r]);const p=async()=>{if(r)try{s("initiating"),l(null);const e={...r,returnUrl:window.location.href},t=await i.initiatePayment(e);if(h(t.transaction_id),t.bank_account_name&&t.reference){s("bank_transfer");const e=i.getQuoteIntent(),t=await i.httpClient.getQuoteIntent(e.url);i.updateQuoteIntent({status:t.quote_intent.status,payment_transactions:t.payment_transactions}),i.getQuoteIntent(),setTimeout(()=>{g()},500)}else{if(!t.gateway_acceptance_url)throw new Error("Invalid payment response");s("redirecting"),window.location.href=t.gateway_acceptance_url}}catch(e){l(e.message||"Failed to initiate payment"),s("failed")}},g=()=>{c&&!c.closed&&c.close(),s("initiating"),l(null),h(null),d(null),f(null),t()},y=()=>{g(),n()};return e?Fe("div","bank_transfer"===o&&m?{className:$t.create("modal-overlay",{position:"fixed",top:"0",left:"0",width:"100%",height:"100%",backgroundColor:"rgba(0, 0, 0, 0.5)",display:"flex",alignItems:"center",justifyContent:"center",zIndex:"1000",overflowY:"auto",padding:"1rem"}),onClick:e=>{e.target===e.currentTarget&&y()},children:Fe("div",{className:$t.create("modal-content",{backgroundColor:bt.colors.background,borderRadius:bt.radius.large,padding:"2rem",maxWidth:"600px",width:"100%",boxShadow:"0 10px 25px rgba(0, 0, 0, 0.2)",border:`1px solid ${bt.colors.border}`,margin:"auto"}),onClick:e=>e.stopPropagation(),children:Fe(ks,{details:m,onClose:y})})}:{className:$t.create("modal-overlay",{position:"fixed",top:"0",left:"0",width:"100%",height:"100%",backgroundColor:"rgba(0, 0, 0, 0.5)",display:"flex",alignItems:"center",justifyContent:"center",zIndex:"1000"}),children:[Fe("div",{className:$t.create("modal-content",{backgroundColor:bt.colors.card,borderRadius:bt.radius.large,padding:"2rem",minWidth:"400px",maxWidth:"500px",boxShadow:"0 10px 25px rgba(0, 0, 0, 0.2)",border:`1px solid ${bt.colors.border}`}),children:[Fe("div",{className:$t.create("modal-header",{textAlign:"center",marginBottom:"1.5rem"}),children:[Fe("div",{className:$t.create("status-icon",{fontSize:"3rem",marginBottom:"1rem"}),children:(()=>{switch(o){case"completed":return"✅";case"cancelled":return"❌";case"failed":return"⚠️";default:return"⏳"}})()}),Fe("h2",{className:$t.create("modal-title",{margin:"0",color:bt.colors.foreground,fontSize:bt.fontSize.large}),children:"Payment Processing"})]}),Fe("div",{className:$t.create("modal-body",{textAlign:"center",marginBottom:"2rem"}),children:[Fe(ls,{className:$t.create("status-message",{fontSize:bt.fontSize.default,color:bt.colors.mutedForeground,marginBottom:"1rem"}),children:(()=>{switch(o){case"initiating":return"Setting up your payment...";case"redirecting":return"Redirecting to payment portal...";case"processing":default:return"Processing payment...";case"polling":return"Checking payment status...";case"completed":return"Payment completed successfully!";case"cancelled":return"Payment was cancelled";case"failed":return"Payment failed"}})()}),a&&Fe(ls,{className:$t.create("error-message",{color:bt.colors.destructive,fontSize:bt.fontSize.small,padding:"0.75rem",backgroundColor:bt.colors.destructive+"10",borderRadius:bt.radius.default,border:`1px solid ${bt.colors.destructive}30`}),children:a}),("redirecting"===o||"initiating"===o)&&Fe("div",{className:$t.create("loading-indicator",{display:"inline-block",width:"20px",height:"20px",marginTop:"1rem",border:`3px solid ${bt.colors.border}`,borderTop:`3px solid ${bt.colors.primary}`,borderRadius:"50%",animation:"spin 1s linear infinite"})})]}),Fe("div",{className:$t.create("modal-actions",{display:"flex",gap:"1rem",justifyContent:"center"}),children:"failed"===o||"cancelled"===o?Fe(_,{children:[Fe(is,{onClick:g,variant:"outline",children:"Close"}),"cancelled"===o&&Fe(is,{onClick:()=>{s("initiating"),l(null),p()},children:"Try Again"})]}):Fe(is,"completed"===o?{onClick:g,children:"Continue"}:{onClick:g,variant:"outline",disabled:"initiating"===o,children:"Cancel"})})]}),Fe("style",{children:"\n @keyframes spin {\n 0% { transform: rotate(0deg); }\n 100% { transform: rotate(360deg); }\n }\n "})]}):null}function Ss({type:e,transactionId:t,isOpen:n,onClose:r}){if(!n)return null;const i=(()=>{switch(e){case"success":return{title:"Payment Successful!",message:"Your payment has been processed successfully and your policy is now active.",icon:Fe("svg",{xmlns:"http://www.w3.org/2000/svg",width:"48",height:"48",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor","stroke-width":"2","stroke-linecap":"round","stroke-linejoin":"round",style:{color:bt.colors.primary||"#10b981"},children:Fe("path",{d:"M20 6 9 17l-5-5"})}),buttonText:"Close"};case"declined":return{title:"Payment Declined",message:"Your payment was declined by the payment processor. Please try a different payment method or contact your bank.",icon:Fe("svg",{xmlns:"http://www.w3.org/2000/svg",width:"48",height:"48",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor","stroke-width":"2","stroke-linecap":"round","stroke-linejoin":"round",style:{color:bt.colors.destructive},children:[Fe("circle",{cx:"12",cy:"12",r:"10"}),Fe("path",{d:"m15 9-6 6"}),Fe("path",{d:"m9 9 6 6"})]}),buttonText:"Close"};case"cancelled":return{title:"Payment Cancelled",message:"You cancelled the payment process. You can try again when you're ready.",icon:Fe("svg",{xmlns:"http://www.w3.org/2000/svg",width:"48",height:"48",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor","stroke-width":"2","stroke-linecap":"round","stroke-linejoin":"round",style:{color:bt.colors.secondary},children:[Fe("circle",{cx:"12",cy:"12",r:"10"}),Fe("path",{d:"m15 9-6 6"}),Fe("path",{d:"m9 9 6 6"})]}),buttonText:"Continue"};default:return{title:"Payment Error",message:"There was an issue processing your payment. Please try again or contact support if the problem persists.",icon:Fe("svg",{xmlns:"http://www.w3.org/2000/svg",width:"48",height:"48",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor","stroke-width":"2","stroke-linecap":"round","stroke-linejoin":"round",style:{color:bt.colors.destructive},children:[Fe("circle",{cx:"12",cy:"12",r:"10"}),Fe("path",{d:"M12 8v4"}),Fe("path",{d:"m12 16 .01 0"})]}),buttonText:"Try Again"}}})(),o=$t.create("modal-overlay",{position:"fixed",top:"0",left:"0",right:"0",bottom:"0",backgroundColor:"rgba(0, 0, 0, 0.5)",display:"flex",alignItems:"center",justifyContent:"center",zIndex:"1000",padding:"1rem"}),s=$t.create("modal-content",{backgroundColor:bt.colors.background,borderRadius:bt.radius.default,padding:"2rem",maxWidth:"400px",width:"100%",boxShadow:"0 10px 25px rgba(0, 0, 0, 0.15)",border:`${bt.borderWidth} solid ${bt.colors.border}`}),a=$t.create("modal-body",{display:"flex",flexDirection:"column",alignItems:"center",gap:"1.5rem",textAlign:"center"}),l=$t.create("modal-title",{fontSize:"1.25rem",fontWeight:"600",color:bt.colors.foreground,margin:"0"}),c=$t.create("modal-message",{color:bt.colors.foreground,lineHeight:"1.5",margin:"0"});$t.create("transaction-info",{backgroundColor:bt.colors.muted||"#f8f9fa",padding:"0.75rem",borderRadius:bt.radius.small,border:`${bt.borderWidth} solid ${bt.colors.border}`,fontSize:bt.fontSize.small,color:bt.colors.mutedForeground,wordBreak:"break-all"});const d=$t.create("modal-button",{backgroundColor:bt.colors.primary,color:bt.colors.primaryForeground,border:"none",borderRadius:bt.radius.default,padding:"0.75rem 1.5rem",fontSize:bt.fontSize.default,fontWeight:"500",cursor:"pointer",minWidth:"120px",transition:"background-color 0.2s"}),u=$t.create("message-container",{display:"flex",flexDirection:"column",alignItems:"center",gap:"1rem",marginTop:"0.5rem"});return Fe("div",{className:o,onClick:r,children:Fe("div",{className:s,onClick:e=>e.stopPropagation(),children:Fe("div",{className:a,children:[i.icon,Fe("div",{className:u,children:[Fe("h2",{className:l,children:i.title}),Fe("p",{className:c,children:i.message})]}),Fe("button",{className:d,onClick:r,children:i.buttonText})]})})})}function Cs({httpClient:e,transactionId:t,onResolved:n,onError:r}){const[i,o]=it(!1),s=st(!1);return ot(()=>{if(s.current)return;s.current=!0;let i=!1;return(async()=>{var s;try{const r=await e.resolvePaymentTransaction(t);if(i)return;n(r.status,r.recovery,r.fallback)}catch(e){if(i)return;r(null!==(s=null==e?void 0:e.message)&&void 0!==s?s:"Failed to confirm payment status"),o(!0)}})(),()=>{i=!0}},[e,t]),Fe("div",{role:"status","aria-live":"polite",className:$t.create("payment-processing-overlay",{position:"fixed",top:"0",left:"0",right:"0",bottom:"0",backgroundColor:"rgba(0, 0, 0, 0.5)",zIndex:"1000",display:"flex",alignItems:"center",justifyContent:"center",padding:"1rem"}),children:Fe("div",{className:$t.create("payment-processing-card",{backgroundColor:bt.colors.background,borderRadius:bt.radius.default,border:`${bt.borderWidth} solid ${bt.colors.border}`,boxShadow:"0 10px 25px rgba(0, 0, 0, 0.15)",padding:"2rem",maxWidth:"400px",width:"100%",textAlign:"center",display:"flex",flexDirection:"column",alignItems:"center",gap:bt.spacing.md}),children:[Fe(_s,{}),Fe("h2",{className:$t.create("payment-processing-title",{margin:"0",fontSize:bt.fontSize.large,fontWeight:"600",color:bt.colors.foreground}),children:"Payment Processing"}),Fe(ls,{children:i?"Just a moment, we're still finishing up. Hang tight, this page will update automatically.":"Hang tight, we're finalising your payment. This page will update automatically in a few seconds."})]})})}function _s(){return $t.keyframes("payment-processing-spin",{"0%":{transform:"rotate(0deg)"},"100%":{transform:"rotate(360deg)"}}),Fe("span",{"aria-hidden":"true",className:$t.create("payment-processing-spinner",{width:"2.5rem",height:"2.5rem",borderRadius:"50%",border:`3px solid ${bt.colors.border}`,borderTopColor:bt.colors.primary,animation:"insure-os-payment-processing-spin 0.9s linear infinite",display:"block"})})}function $s({isOpen:e,onClose:t,title:n,description:r,children:i,footer:o,width:s="440px"}){if(ot(()=>{if(e)return window.addEventListener("keydown",n),()=>window.removeEventListener("keydown",n);function n(e){"Escape"===e.key&&t()}},[e,t]),!e)return null;const a=$t.create("modal-overlay",{position:"fixed",top:"0",left:"0",right:"0",bottom:"0",backgroundColor:"rgba(0, 0, 0, 0.5)",display:"flex",alignItems:"center",justifyContent:"center",zIndex:"1000",padding:"1rem"}),l=$t.create("modal-content-card",{backgroundColor:bt.colors.background,borderRadius:bt.radius.large,boxShadow:"0 10px 25px rgba(0, 0, 0, 0.15)",border:`${bt.borderWidth} solid ${bt.colors.border}`,width:"100%",maxWidth:s,display:"flex",flexDirection:"column",gap:bt.spacing.md,padding:bt.spacing.lg}),c=$t.create("modal-card-header-row",{display:"flex",alignItems:"flex-start",justifyContent:"space-between",gap:bt.spacing.md}),d=$t.create("modal-card-title",{margin:"0",fontSize:"1.125rem",fontWeight:"600",color:bt.colors.foreground}),u=$t.create("modal-card-description",{margin:"0",fontSize:bt.fontSize.small,color:bt.colors.mutedForeground,lineHeight:"1.5"}),h=$t.create("modal-card-body",{display:"flex",flexDirection:"column",gap:bt.spacing.sm}),m=$t.create("modal-card-footer",{display:"flex",gap:bt.spacing.sm,marginTop:bt.spacing.sm,flexWrap:"wrap",justifyContent:"flex-end"}),f=$t.create("modal-card-close",{background:"none",border:"none",padding:"0.25rem",margin:"-0.25rem -0.25rem 0 0",color:bt.colors.mutedForeground,cursor:"pointer",display:"flex",alignItems:"center",justifyContent:"center",borderRadius:bt.radius.default,lineHeight:"0"});return $t.pseudoElement("modal-card-close",":hover",{color:bt.colors.foreground,backgroundColor:bt.colors.muted}),Fe("div",{className:a,onClick:t,children:Fe("div",{className:l,onClick:e=>e.stopPropagation(),children:[Fe("div",{className:h,children:[Fe("div",{className:c,children:[Fe("h2",{className:d,children:n}),Fe("button",{type:"button",onClick:t,"aria-label":"Close",className:f,children:Fe("svg",{xmlns:"http://www.w3.org/2000/svg",width:"18",height:"18",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor","stroke-width":"2","stroke-linecap":"round","stroke-linejoin":"round",children:[Fe("path",{d:"M18 6 6 18"}),Fe("path",{d:"m6 6 12 12"})]})})]}),r&&Fe("p",{className:u,children:r}),i]}),o&&Fe("div",{className:m,children:o})]})})}function Is({isOpen:e,onClose:t,status:n,onSendEmail:r,onCopyLink:i,email:o}){const s="sending"===n.kind,a="sent"===n.kind,l=s||a,c=$t.create("continue-later-status",{margin:"0",fontSize:bt.fontSize.small,color:bt.colors.primary}),d=$t.create("continue-later-status-error",{margin:"0",fontSize:bt.fontSize.small,color:bt.colors.destructive});let u=null;return"sent"===n.kind?u=Fe("p",{className:c,children:o?`A link will be sent to ${o} shortly.`:"A link will be sent to your email shortly."}):"copied"===n.kind?u=Fe("p",{className:c,children:"Link copied to your clipboard."}):"error"===n.kind&&(u=Fe("p",{className:d,children:n.message})),Fe($s,{isOpen:e,onClose:t,title:"Save and continue later",description:"We'll save your progress and give you a link to come back to. Your details stay safe and only the people you share the link with can resume.",footer:Fe(_,{children:[Fe(is,{variant:"outline",onClick:i,disabled:s,children:"Copy link"}),Fe(is,{onClick:r,disabled:l,loading:s,children:a?"Email sent":o?"Email me a link":"Send email"})]}),children:u})}function Ts(e=0){const t=new Date;return t.setDate(t.getDate()+e),`${t.getFullYear()}-${String(t.getMonth()+1).padStart(2,"0")}-${String(t.getDate()).padStart(2,"0")}`}function Es({results:e}){const{fsm:t,selectedExcessId:n,selectedPaymentOption:r,quoteIntent:i,httpClient:o}=At(e=>({selectedExcessId:e.getSelectedExcessId(),selectedPaymentOption:e.getSelectedPaymentOption(),quoteIntent:e.getQuoteIntent(),httpClient:e.httpClient})),[s,a]=it(!1),[l,c]=it(null),[d,u]=it(!1),[h,m]=it({kind:"idle"}),[f,p]=it(!1),g=at(()=>{var e,t;const n=null!==(t=null===(e=null==i?void 0:i.form_data)||void 0===e?void 0:e.page_data)&&void 0!==t?t:{};for(const e of Object.values(n))if(e&&"object"==typeof e&&e.cover_start_date)return String(e.cover_start_date);return null},[null==i?void 0:i.form_data]),y=at(()=>{if(!g)return!1;const e=new Date(g);if(Number.isNaN(e.getTime()))return!1;e.setHours(0,0,0,0);const t=new Date;return t.setHours(0,0,0,0),e<t},[g]),v=Ts(),[w,b]=it(()=>y?v:null!=g?g:v),[x,k]=it(null),[N,S]=it(null),[C,_]=it(!1),[$,I]=it(!y),T=new URLSearchParams(window.location.search),E=T.get("status"),P=T.get("transactionId")||T.get("transaction_id"),[z,D]=it(null),[R,M]=it(null),O="processing"===E&&!!P&&!z&&!R,j=null!=z?z:E,[W,A]=it(!(!E||"failed"!==E&&"declined"!==E&&"cancelled"!==E)),L=e.calculations,B=e.payment_options,q=e.payment_gateways;ot(()=>{const e=L.find(e=>e.id===n);if(e&&i){const n=B.some(e=>"monthly"===e.amount.frequency),r=t.getPageCompletionStatus(),o=Math.round(r.completedPages.length/r.totalPages*100);Re(i,e,B.length,n,o)}},[]),ot(()=>{if(!r||!n)return;const e=L.find(e=>e.id===n);if(!e)return;if(r.calculation_id===e.calculation_id)return;const i=B.find(t=>t.gateway_id===r.gateway_id&&t.calculation_id===e.calculation_id&&t.amount.frequency===r.amount.frequency);i?t.setSelectedPaymentOption(i):t.setSelectedPaymentOption(null)},[n,r,L,B,t]);const F=async e=>{var t,n,r;if(o&&(null==i?void 0:i.id)){_(!0),k(null),S(null);try{const r=await o.validateQuoteCoverStartDate(i.id,e);r.valid?I(!0):(I(!1),k(null!==(t=r.message)&&void 0!==t?t:"Cover start date is invalid"),S(null!==(n=r.quote_page_url)&&void 0!==n?n:null))}catch(e){I(!1),k(null!==(r=null==e?void 0:e.message)&&void 0!==r?r:"Failed to validate cover start date")}finally{_(!1)}}},H=e=>{b(e),I(!1),k(null),S(null),e&&F(e)};ot(()=>{y&&w&&!$&&!C&&F(w)},[y,null==i?void 0:i.id]);const U=()=>{if(!n||!r)return void alert("Please select both an excess amount and payment option");if(y&&!$)return void alert("Please choose and validate a new cover start date before continuing.");const t={quoteIntentId:e.quote_intent.id,excessId:n,gatewayId:r.gateway_id,calculationId:r.calculation_id,clientDetails:{legalName:"Test"},...r.gateway_method?{gateway_method:r.gateway_method}:{},...y&&w?{coverStartDate:w}:{}};c(t),a(!0)},Y=async()=>{try{p(!0),await t.clearCalculationResults()}catch(e){alert("Failed to edit quote. Please try again.")}finally{p(!1)}},Z=()=>{const e=null==i?void 0:i.form_data;if(!(null==e?void 0:e.page_data))return null;for(const t in e.page_data){const n=e.page_data[t];if(n&&"object"==typeof n&&n.client_email)return n.client_email}return null},G=()=>{m(e=>"sent"===e.kind?e:{kind:"idle"}),u(!0)},V=Boolean(n&&r&&(!y||$)),Q=null==i?void 0:i.payment_return,J=Q&&("declined"===Q.paymentStatus||"cancelled"===Q.paymentStatus||"error"===Q.paymentStatus)||W,K=(null==Q?void 0:Q.paymentStatus)||("failed"===j?"declined":"cancelled"===j?"cancelled":"error"),X=(null==Q?void 0:Q.paymentTransactionId)||P||void 0;return Fe(ns,{title:"Complete Your Purchase",description:"Choose your coverage and payment options",hideHeader:!0,children:[O&&o&&P&&Fe(Cs,{httpClient:o,transactionId:P,onResolved:async e=>{const n="completed"===e?"approved":"cancelled"===e?"cancelled":"failed"===e?"declined":"error",r=new URL(window.location.href);if(r.searchParams.set("status",n),P&&r.searchParams.set("transactionId",P),window.history.replaceState({},"",r.toString()),"completed"===e&&o&&(null==i?void 0:i.url))try{const e=await o.getQuoteIntent(i.url);t.updateQuoteIntent({status:e.quote_intent.status,payment_transactions:e.payment_transactions})}catch(e){}D(n),"declined"!==n&&"cancelled"!==n&&"error"!==n||A(!0)},onError:e=>{M(e),A(!0)}}),Fe(Mt,{children:[Fe("div",{className:$t.create("checkout-layout",{display:"grid",gridTemplateColumns:"1fr 380px",gap:bt.spacing.lg},{"(max-width: 950px)":{display:"none"}}),children:[Fe("div",{className:$t.create("checkout-main-wrapper",{minWidth:"0",backgroundColor:bt.colors.card,boxShadow:bt.shadow.sm,borderRadius:bt.radius.large,display:"flex",flexDirection:"column",alignSelf:"start"}),children:[Fe("div",{className:$t.create("checkout-header",{paddingInline:bt.spacing.xl,paddingTop:bt.spacing.xl,paddingBottom:bt.spacing.lg},{"(max-width: 768px)":{paddingInline:bt.spacing.lg,paddingTop:bt.spacing.lg},"(max-width: 480px)":{paddingInline:bt.spacing.md,paddingTop:bt.spacing.md}}),children:[Fe("h2",{className:$t.create("checkout-title",{margin:"0",marginBottom:bt.spacing.md,fontSize:"1.75rem",fontWeight:"700",color:bt.colors.primary,lineHeight:"1.1",letterSpacing:"-0.025em"},{"(max-width: 768px)":{fontSize:"1.5rem"},"(max-width: 480px)":{fontSize:"1.25rem"}}),children:"Complete Your Purchase"}),Fe("p",{className:$t.create("checkout-description",{margin:"0",fontSize:bt.fontSize.default,lineHeight:"1.6",color:bt.colors.foreground,opacity:"0.9"}),children:L.length>1?"Choose your excess amount and payment option to secure your coverage.":"Choose your payment method to secure your coverage."}),(null==i?void 0:i.reference)&&Fe("p",{className:$t.create("checkout-quote-reference",{margin:"0",marginTop:bt.spacing.sm,fontSize:bt.fontSize.small,color:bt.colors.mutedForeground}),children:["Quote reference: ",Fe("strong",{style:{color:bt.colors.foreground,fontWeight:600},children:i.reference})]}),Fe("hr",{className:$t.create("checkout-header-border",{marginTop:bt.spacing.lg,border:"0",borderTop:`1px solid ${bt.colors.border}`,height:"0"})})]}),Fe("div",{className:$t.create("checkout-sections",{paddingInline:bt.spacing.xl,paddingBottom:bt.spacing.xl,display:"flex",flexDirection:"column",gap:bt.spacing.lg},{"(max-width: 768px)":{paddingInline:bt.spacing.lg,paddingBottom:bt.spacing.lg},"(max-width: 480px)":{paddingInline:bt.spacing.md,paddingBottom:bt.spacing.md}}),children:[e.clauses&&e.clauses.length>0&&Fe(ws,{clauses:e.clauses}),y&&Fe(Ps,{value:w,onChange:H,validating:C,validated:$,error:x,quotePageUrl:N}),Fe(us,{excessOptions:L,selectedExcessId:n,onExcessSelect:e=>t.setSelectedExcessId(e)}),Fe(fs,{paymentOptions:B,paymentGateways:q,selectedExcessId:n,selectedPaymentOption:r,onPaymentSelect:e=>t.setSelectedPaymentOption(e)})]})]}),Fe("div",{className:$t.create("checkout-sidebar",{display:"flex",flexDirection:"column"},{"(max-width: 950px)":{display:"block"}}),children:Fe("div",{className:$t.create("checkout-sidebar-sticky",{}),children:[Fe(vs,{excessOptions:L,selectedExcessId:n,onEditQuote:Y,isEditingQuote:f,productName:e.product_name,quoteIntent:i}),Fe("div",{className:$t.create("checkout-sidebar-spacer",{height:bt.spacing.lg},{"(max-width: 950px)":{height:bt.spacing.md}})}),Fe("div",{className:$t.create("checkout-sidebar-card",{backgroundColor:bt.colors.card,borderRadius:bt.radius.large,boxShadow:bt.shadow.sm,padding:bt.spacing.lg},{"(max-width: 768px)":{padding:bt.spacing.md}}),children:Fe(xs,{excessOptions:L,paymentGateways:q,selectedExcessId:n,selectedPaymentOption:r,onPurchase:U,canPurchase:V,onContinueLater:G,continueLaterLoading:"sending"===h.kind,showContinueLaterSuccess:"sent"===h.kind})})]})})]}),Fe("div",{className:$t.create("checkout-mobile-layout",{display:"none"},{"(max-width: 950px)":{display:"flex",flexDirection:"column",gap:bt.spacing.md}}),children:[Fe("div",{className:$t.create("mobile-card-summary",{backgroundColor:bt.colors.card,boxShadow:bt.shadow.sm,borderRadius:bt.radius.large,padding:bt.spacing.md}),children:[Fe("h2",{className:$t.create("mobile-checkout-title",{margin:"0",marginBottom:bt.spacing.md,fontSize:"1.5rem",fontWeight:"700",color:bt.colors.primary,lineHeight:"1.1",letterSpacing:"-0.025em"},{"(max-width: 480px)":{fontSize:"1.25rem"}}),children:"Complete Your Purchase"}),Fe("p",{className:$t.create("mobile-checkout-description",{margin:"0",fontSize:bt.fontSize.default,lineHeight:"1.6",color:bt.colors.foreground,opacity:"0.9"}),children:L.length>1?"Choose your excess amount and payment option to secure your coverage.":"Choose your payment method to secure your coverage."}),Fe("hr",{className:$t.create("mobile-summary-divider",{marginTop:bt.spacing.md,marginBottom:bt.spacing.md,borderColor:bt.colors.border})}),Fe(vs,{excessOptions:L,selectedExcessId:n,onEditQuote:Y,isEditingQuote:f,productName:e.product_name,quoteIntent:i,embedded:!0})]}),e.clauses&&e.clauses.length>0&&Fe("div",{className:$t.create("mobile-card-clauses",{backgroundColor:bt.colors.card,boxShadow:bt.shadow.sm,borderRadius:bt.radius.large,padding:bt.spacing.md}),children:Fe(ws,{clauses:e.clauses})}),Fe("div",{className:$t.create("mobile-card-options",{backgroundColor:bt.colors.card,boxShadow:bt.shadow.sm,borderRadius:bt.radius.large,padding:bt.spacing.md}),children:[y&&Fe(Ps,{value:w,onChange:H,validating:C,validated:$,error:x,quotePageUrl:N}),Fe(us,{excessOptions:L,selectedExcessId:n,onExcessSelect:e=>t.setSelectedExcessId(e)})]}),Fe("div",{className:$t.create("mobile-card-payment",{backgroundColor:bt.colors.card,boxShadow:bt.shadow.sm,borderRadius:bt.radius.large,padding:bt.spacing.md}),children:[Fe(fs,{paymentOptions:B,paymentGateways:q,selectedExcessId:n,selectedPaymentOption:r,onPaymentSelect:e=>t.setSelectedPaymentOption(e)}),Fe("hr",{className:$t.create("mobile-payment-divider",{border:"none",borderTop:`1px solid ${bt.colors.border}`,margin:`${bt.spacing.md} 0`})}),Fe(xs,{excessOptions:L,paymentGateways:q,selectedExcessId:n,selectedPaymentOption:r,onPurchase:U,canPurchase:V,onContinueLater:G,continueLaterLoading:"sending"===h.kind,showContinueLaterSuccess:"sent"===h.kind})]})]}),J&&Fe(Ss,{type:K,transactionId:X,isOpen:!0,onClose:()=>{t.updateQuoteIntent({payment_return:void 0}),A(!1);const e=new URL(window.location.href);e.searchParams.delete("status"),e.searchParams.delete("transactionId"),e.searchParams.delete("transaction_id"),window.history.replaceState({},"",e.toString())}}),Fe(Ns,{isOpen:s,onClose:()=>{a(!1),c(null)},onSuccess:()=>{a(!1),c(null),alert("Payment completed successfully!")},onError:e=>{alert("Payment failed: "+e)},paymentRequest:l}),Fe(Is,{isOpen:d,onClose:()=>u(!1),status:h,onSendEmail:async()=>{const t=Z();if(!t)return void m({kind:"error",message:"Email address not found. Please fill in your email first."});const n=e.quote_intent.id;try{m({kind:"sending"}),await o.continueLater(n,t),m({kind:"sent"})}catch(e){m({kind:"error",message:"Failed to send link. Please try again."})}},onCopyLink:async()=>{var t;const n=(e=>{var t;const n=null===(t=null==i?void 0:i.organisation)||void 0===t?void 0:t.quote_page_url;if(n){const t=n.replace(/\/+$/,""),r=t.includes("?")?"&":"?";return`${t}${r}q=${e}`}return`${window.location.origin}${window.location.pathname}?q=${e}`})(e.quote_intent.id);try{if(null===(t=null===navigator||void 0===navigator?void 0:navigator.clipboard)||void 0===t?void 0:t.writeText)await navigator.clipboard.writeText(n);else{const e=document.createElement("textarea");e.value=n,e.style.position="fixed",e.style.opacity="0",document.body.appendChild(e),e.select(),document.execCommand("copy"),document.body.removeChild(e)}m({kind:"copied"})}catch(e){m({kind:"error",message:"Could not copy link. Please copy manually."})}},email:Z()})]})]})}function Ps({value:e,onChange:t,validating:n,validated:r,error:i,quotePageUrl:o}){const s=Ts(),a=Ts(30);return Fe("div",{className:$t.create("cover-date-field",{}),children:[Fe(cs,{title:"Cover Start Date"}),Fe("div",{className:$t.create("cover-date-row",{display:"flex",alignItems:"center",gap:bt.spacing.sm,marginTop:bt.spacing.sm}),children:[Fe("input",{type:"date",value:e,min:s,max:a,onChange:e=>t(e.target.value),className:$t.create("cover-date-input",{padding:"0.5rem 1rem",border:`1px solid ${i?"#dc2626":bt.colors.border}`,borderRadius:bt.radius.large,fontSize:bt.fontSize.default,backgroundColor:bt.colors.card,color:bt.colors.foreground,boxSizing:"border-box",width:"auto",maxWidth:"16rem"})}),!n&&r&&!i&&Fe("span",{"aria-label":"Date confirmed",className:$t.create("cover-date-tick",{display:"inline-flex",alignItems:"center",justifyContent:"center",width:"1.75rem",height:"1.75rem",borderRadius:"9999px",backgroundColor:bt.colors.primary,color:bt.colors.card,flexShrink:"0"}),children:Fe("svg",{xmlns:"http://www.w3.org/2000/svg",width:"14",height:"14",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor","stroke-width":"3","stroke-linecap":"round","stroke-linejoin":"round",children:Fe("polyline",{points:"20 6 9 17 4 12"})})})]}),!n&&i&&Fe("div",{className:$t.create("cover-date-error",{marginTop:bt.spacing.sm}),children:[Fe("p",{className:$t.create("cover-date-error-text",{margin:"0",fontSize:bt.fontSize.small,color:"#dc2626",lineHeight:"1.5"}),children:i}),o&&Fe("a",{href:o,className:$t.create("cover-date-new-quote",{display:"inline-block",marginTop:bt.spacing.sm,fontSize:bt.fontSize.small,color:bt.colors.primary,textDecoration:"underline"}),children:"Start a new quote"})]})]})}function zs({coverTypes:e,selectedCoverTypeId:t,onCoverTypeSelect:n}){const r=[...e].sort((e,t)=>e.sort_order-t.sort_order),i=e.find(e=>e.id===t);return Fe("div",{className:$t.create("checkout-section",{display:"flex",flexDirection:"column",gap:"1rem"}),children:[Fe(cs,{title:"Cover Type"}),Fe("div",{className:$t.create("cover-type-options-grid",{display:"flex",flexDirection:"row",flexWrap:"wrap",gap:"1rem"}),children:r.map(e=>{const r=e.id===t;return Fe("div",{className:Dt($t.create("cover-type-card",{borderRadius:bt.radius.default,minWidth:"180px",padding:"0.5rem 1rem 0.5rem 0.5rem",cursor:"pointer",transition:"all 150ms ease",display:"flex",flexDirection:"row",alignItems:"center",gap:"1rem"}),r?$t.create("cover-type-card-selected",{border:`2px solid ${bt.colors.primary}`,backgroundColor:bt.colors.accent}):$t.create("cover-type-card-unselected",{border:`2px solid ${bt.colors.border}`,backgroundColor:bt.colors.card})),onClick:()=>n(e.id),children:[Fe(ds,{selected:r}),Fe("div",{className:$t.create("cover-type-label",{color:bt.colors.foreground}),children:[e.label,e.description?"*":""]})]},e.id)})}),(null==i?void 0:i.description)&&Fe("div",{className:$t.create("cover-type-description",{padding:"0.75rem",backgroundColor:bt.colors.muted,borderRadius:bt.radius.default,border:`1px solid ${bt.colors.border}`}),children:Fe(ls,{className:$t.create("cover-type-description-text",{fontSize:bt.fontSize.small,color:bt.colors.foreground,margin:"0"}),children:i.description})})]})}function Ds({offers:e,selectedIds:t,onToggle:n,isCalculating:r}){if(0===e.length)return null;const i=[...e].sort((e,t)=>e.sort_order-t.sort_order);return Fe("div",{className:$t.create("checkout-section",{display:"flex",flexDirection:"column",gap:"1rem"}),children:[Fe(cs,{title:"Add-ons"}),Fe("div",{className:$t.create("coverage-options-grid",{display:"flex",flexDirection:"column",gap:"0.75rem"}),children:i.map(e=>{const i=t.includes(e.id),o=null!=e.delta_total;return Fe("div",{onClick:()=>!r&&n(e.id),className:Dt($t.create("coverage-option-card",{borderRadius:bt.radius.default,padding:"0.75rem 1rem",cursor:r?"wait":"pointer",transition:"all 150ms ease",display:"flex",flexDirection:"row",alignItems:"flex-start",gap:"1rem",opacity:r?"0.6":"1"}),i?$t.create("coverage-option-card-selected",{border:`2px solid ${bt.colors.primary}`,backgroundColor:bt.colors.accent}):$t.create("coverage-option-card-unselected",{border:`2px solid ${bt.colors.border}`,backgroundColor:bt.colors.card})),children:[Fe("div",{className:$t.create("coverage-option-indicator",{marginTop:"0.125rem"}),children:Fe(ds,{selected:i})}),Fe("div",{className:$t.create("coverage-option-body",{flex:"1",display:"flex",flexDirection:"column",gap:"0.25rem",minWidth:"0"}),children:[Fe("div",{className:$t.create("coverage-option-label",{fontWeight:"600",color:bt.colors.foreground}),children:e.label}),e.description&&Fe(ls,{className:$t.create("coverage-option-description",{fontSize:bt.fontSize.small,color:bt.colors.mutedForeground,margin:"0"}),children:e.description}),!o&&Fe(ls,{className:$t.create("coverage-option-roundtrip",{fontSize:bt.fontSize.small,color:bt.colors.mutedForeground,fontStyle:"italic",margin:"0"}),children:"Price updates when you toggle this option."})]}),Fe("div",{className:$t.create("coverage-option-price",{fontWeight:"600",whiteSpace:"nowrap",color:bt.colors.foreground}),children:o?`+${hs(e.delta_total)}`:"See total"})]},e.id)})})]})}function Rs({value:e,className:t,durationMs:n=500}){const[r,i]=it(e),o=st(e),s=st(null);return ot(()=>{if(null!==s.current&&(cancelAnimationFrame(s.current),s.current=null),"undefined"!=typeof window&&"function"==typeof window.matchMedia&&window.matchMedia("(prefers-reduced-motion: reduce)").matches||o.current===e)return o.current=e,void i(e);const t=o.current,r=e,a=performance.now(),l=e=>{const c=e-a,d=Math.min(1,c/n);i(t+(r-t)*(1-(1-d)*(1-d))),d<1?s.current=requestAnimationFrame(l):(o.current=r,s.current=null)};return s.current=requestAnimationFrame(l),()=>{null!==s.current&&(cancelAnimationFrame(s.current),s.current=null)}},[e,n]),Fe("span",{className:t,children:hs(r)})}function Ms(){var e,t;const{fsm:n,v2Result:r,selection:i,isCalculating:o,isRepricing:s,selectedExcessId:a,quoteIntent:l,calculationResult:c}=At(e=>({v2Result:e.getCalculationResultV2(),selection:e.getSelectionV2(),isCalculating:e.getIsCalculating(),isRepricing:e.getIsRepricing(),selectedExcessId:e.getSelectedExcessId(),quoteIntent:e.getQuoteIntent(),calculationResult:e.getCalculationResult()})),[d,u]=it(null),[h,m]=it(!1),[f,p]=it(!1),g=at(()=>{var e;return null!==(e=null==c?void 0:c.calculations)&&void 0!==e?e:[]},[c]);if(ot(()=>{u(null)},[null==i?void 0:i.cover_type_id,null==i?void 0:i.excess_id,null==i?void 0:i.coverage_option_ids.join(",")]),!r||!i)return Fe(ns,{title:"Complete Your Purchase",description:"Choose your coverage and payment options",hideHeader:!0,children:Fe(Mt,{children:Fe("p",{style:{color:bt.colors.mutedForeground},children:"Loading calculation…"})})});const y=null!==(t=null!==(e=r.product_name)&&void 0!==e?e:null==l?void 0:l.product_name)&&void 0!==t?t:"Insurance",v=r.cover_types.length>1,w=g.length>1,b=!(!i.cover_type_id||!i.excess_id||o||s),x=async()=>{m(!0);try{const e=await n.bindV2();u(e)}catch(e){}finally{m(!1)}},k=async()=>{try{p(!0),await n.clearCalculationResults()}catch(e){}finally{p(!1)}};return Fe(ns,{title:"Complete Your Purchase",description:"Choose your coverage and payment options",hideHeader:!0,children:Fe(Mt,{children:[Fe("div",{className:$t.create("checkout-layout",{display:"grid",gridTemplateColumns:"1fr 380px",gap:bt.spacing.lg},{"(max-width: 950px)":{display:"none"}}),children:[Fe("div",{className:$t.create("checkout-main-wrapper",{minWidth:"0",backgroundColor:bt.colors.card,boxShadow:bt.shadow.sm,borderRadius:bt.radius.large,display:"flex",flexDirection:"column",alignSelf:"start"}),children:[Fe(Os,{showCoverType:v,showExcess:w}),Fe("div",{className:$t.create("checkout-sections",{paddingInline:bt.spacing.xl,paddingBottom:bt.spacing.xl,display:"flex",flexDirection:"column",gap:bt.spacing.lg},{"(max-width: 768px)":{paddingInline:bt.spacing.lg,paddingBottom:bt.spacing.lg},"(max-width: 480px)":{paddingInline:bt.spacing.md,paddingBottom:bt.spacing.md}}),children:[(null==c?void 0:c.clauses)&&c.clauses.length>0&&Fe(ws,{clauses:c.clauses}),v&&Fe(zs,{coverTypes:r.cover_types,selectedCoverTypeId:i.cover_type_id,onCoverTypeSelect:e=>n.setV2Selection({cover_type_id:e})}),w&&Fe(us,{excessOptions:g,selectedExcessId:a,onExcessSelect:e=>n.setV2Selection({excess_id:e})}),Fe(Ds,{offers:r.policy_coverage_options,selectedIds:i.coverage_option_ids,onToggle:e=>n.toggleV2CoverageOption(e),isCalculating:s})]})]}),Fe("div",{className:$t.create("checkout-sidebar",{display:"flex",flexDirection:"column"}),children:Fe("div",{className:$t.create("checkout-sidebar-sticky",{position:"sticky",top:bt.spacing.lg}),children:[Fe(vs,{excessOptions:g,selectedExcessId:a,onEditQuote:k,isEditingQuote:f,productName:y,quoteIntent:l}),Fe("div",{className:$t.create("checkout-sidebar-spacer",{height:bt.spacing.lg})}),Fe("div",{className:$t.create("checkout-sidebar-card",{backgroundColor:bt.colors.card,borderRadius:bt.radius.large,boxShadow:bt.shadow.sm,padding:bt.spacing.lg},{"(max-width: 768px)":{padding:bt.spacing.md}}),children:Fe(js,{fsm:n,onBind:x,binding:h,canContinue:b,bindOutcome:d,isRepricing:s})})]})})]}),Fe("div",{className:$t.create("checkout-mobile-layout",{display:"none"},{"(max-width: 950px)":{display:"flex",flexDirection:"column",gap:bt.spacing.md}}),children:[Fe("div",{className:$t.create("mobile-card-summary",{backgroundColor:bt.colors.card,boxShadow:bt.shadow.sm,borderRadius:bt.radius.large,padding:bt.spacing.md}),children:[Fe("h2",{className:$t.create("mobile-checkout-title",{margin:"0",marginBottom:bt.spacing.md,fontSize:"1.5rem",fontWeight:"700",color:bt.colors.primary,lineHeight:"1.1",letterSpacing:"-0.025em"},{"(max-width: 480px)":{fontSize:"1.25rem"}}),children:"Complete Your Purchase"}),Fe("p",{className:$t.create("mobile-checkout-description",{margin:"0",fontSize:bt.fontSize.default,lineHeight:"1.6",color:bt.colors.foreground,opacity:"0.9"}),children:v||w?"Choose your cover and add-ons to secure your policy.":"Review your cover and add-ons to secure your policy."}),Fe("hr",{className:$t.create("mobile-summary-divider",{marginTop:bt.spacing.md,marginBottom:bt.spacing.md,borderColor:bt.colors.border})}),Fe(vs,{excessOptions:g,selectedExcessId:a,onEditQuote:k,isEditingQuote:f,productName:y,quoteIntent:l,embedded:!0})]}),(null==c?void 0:c.clauses)&&c.clauses.length>0&&Fe("div",{className:$t.create("mobile-card-clauses",{backgroundColor:bt.colors.card,boxShadow:bt.shadow.sm,borderRadius:bt.radius.large,padding:bt.spacing.md}),children:Fe(ws,{clauses:c.clauses})}),Fe("div",{className:$t.create("mobile-card-options",{backgroundColor:bt.colors.card,boxShadow:bt.shadow.sm,borderRadius:bt.radius.large,padding:bt.spacing.md,display:"flex",flexDirection:"column",gap:bt.spacing.lg}),children:[v&&Fe(zs,{coverTypes:r.cover_types,selectedCoverTypeId:i.cover_type_id,onCoverTypeSelect:e=>n.setV2Selection({cover_type_id:e})}),w&&Fe(us,{excessOptions:g,selectedExcessId:a,onExcessSelect:e=>n.setV2Selection({excess_id:e})}),Fe(Ds,{offers:r.policy_coverage_options,selectedIds:i.coverage_option_ids,onToggle:e=>n.toggleV2CoverageOption(e),isCalculating:o})]}),Fe("div",{className:$t.create("mobile-card-payment",{backgroundColor:bt.colors.card,boxShadow:bt.shadow.sm,borderRadius:bt.radius.large,padding:bt.spacing.md}),children:Fe(js,{fsm:n,onBind:x,binding:h,canContinue:b,bindOutcome:d,isRepricing:s})})]})]})})}function Os({showCoverType:e,showExcess:t}){let n="Review your cover and add-ons to secure your policy.";return e&&t?n="Choose your cover type, excess amount, and add-ons to secure your policy.":e?n="Choose your cover type and add-ons to secure your policy.":t&&(n="Choose your excess amount and add-ons to secure your policy."),Fe("div",{className:$t.create("checkout-header",{paddingInline:bt.spacing.xl,paddingTop:bt.spacing.xl,paddingBottom:bt.spacing.lg},{"(max-width: 768px)":{paddingInline:bt.spacing.lg,paddingTop:bt.spacing.lg},"(max-width: 480px)":{paddingInline:bt.spacing.md,paddingTop:bt.spacing.md}}),children:[Fe("h2",{className:$t.create("checkout-title",{margin:"0",marginBottom:bt.spacing.sm,fontSize:"1.75rem",fontWeight:"700",color:bt.colors.primary,lineHeight:"1.1",letterSpacing:"-0.025em"},{"(max-width: 768px)":{fontSize:"1.5rem"},"(max-width: 480px)":{fontSize:"1.125rem"}}),children:"Complete Your Purchase"}),Fe("p",{className:$t.create("checkout-description",{margin:"0",fontSize:bt.fontSize.default,lineHeight:"1.6",color:bt.colors.foreground,opacity:"0.9"}),children:n}),Fe("hr",{className:$t.create("checkout-header-border",{marginTop:bt.spacing.lg,borderColor:bt.colors.border})})]})}function js({fsm:e,onBind:t,binding:n,canContinue:r,bindOutcome:i,isRepricing:o}){const s=e.getV2DisplayedTotal();return Fe("div",{className:$t.create("payment-summary",{display:"flex",flex:"1",flexDirection:"column",gap:"1rem"}),children:[Fe(cs,{title:"Payment"}),Fe("div",{className:$t.create("summary-item",{display:"flex",justifyContent:"space-between",alignItems:"center"}),children:[Fe("span",{className:$t.create("summary-label",{display:"flex",alignItems:"center",gap:"0.5rem",color:bt.colors.mutedForeground,fontSize:bt.fontSize.small}),children:["Total payable",Fe("span",{className:$t.create("summary-label-spinner",{display:"inline-flex",color:bt.colors.mutedForeground,opacity:o?"1":"0",transition:"opacity 200ms ease"}),"aria-hidden":!o,children:Fe(Rt,{size:"small"})})]}),Fe(Rs,{value:s,className:$t.create("summary-value-total",{fontWeight:"600",fontSize:bt.fontSize.large,color:bt.colors.foreground,fontVariantNumeric:"tabular-nums"})})]}),"verified"===(null==i?void 0:i.status)&&Fe("div",{className:$t.create("verified-banner",{padding:"0.75rem 1rem",border:`1px solid ${bt.colors.primary}`,borderRadius:bt.radius.default,backgroundColor:bt.colors.accent,fontSize:bt.fontSize.small}),children:["Verified at ",hs(i.server_total),". Payment gateway integration for v2 is pending — quote is ready."]}),"mismatch"===(null==i?void 0:i.status)&&Fe("div",{className:$t.create("mismatch-banner",{padding:"0.75rem 1rem",border:`1px solid ${bt.colors.destructive}`,borderRadius:bt.radius.default,color:bt.colors.destructive,fontSize:bt.fontSize.small}),children:[Fe("strong",{children:"Price updated."})," The server calculated ",hs(i.server_total),". Please review and try again."]}),Fe(is,{onClick:t,disabled:!r||n,children:n?"Verifying…":"verified"===(null==i?void 0:i.status)?"Continue to payment":"Verify & continue"}),Fe(ls,{className:$t.create("payment-footer-note",{fontSize:bt.fontSize.small,color:bt.colors.mutedForeground,margin:"0"}),children:'Payment gateway integration for v2 products is scoped for a later phase. The "verify" step confirms your selection against the server.'})]})}function Ws({results:e}){var t,n,r;const{quoteIntent:i,fsm:o}=At(e=>({quoteIntent:null==e?void 0:e.getQuoteIntent()})),s=null===(t=null==i?void 0:i.organisation)||void 0===t?void 0:t.admin_email,a=null===(n=null==i?void 0:i.organisation)||void 0===n?void 0:n.phone,l=s||a,c=$t.create("referral-card",{backgroundColor:bt.colors.card,borderRadius:bt.radius.large,padding:bt.spacing.xl,boxShadow:bt.shadow.sm,maxWidth:"42rem",margin:"0 auto"},{"(max-width: 768px)":{padding:bt.spacing.lg},"(max-width: 480px)":{padding:bt.spacing.md}}),d=$t.create("referral-icon-container",{display:"flex",justifyContent:"center",marginBottom:bt.spacing.lg}),u=$t.create("referral-icon",{width:"4rem",height:"4rem",color:bt.colors.primary}),h=$t.create("referral-header",{textAlign:"center",marginBottom:bt.spacing.xl}),m=$t.create("referral-title",{fontSize:"2rem",fontWeight:"700",color:bt.colors.primary,marginBottom:bt.spacing.sm,lineHeight:"1.2",letterSpacing:"-0.025em"},{"(max-width: 768px)":{fontSize:"1.75rem"},"(max-width: 480px)":{fontSize:"1.5rem"}}),f=$t.create("referral-subtitle",{fontSize:bt.fontSize.default,color:bt.colors.foreground,lineHeight:"1.6",opacity:"0.8"}),p=$t.create("referral-process-box",{backgroundColor:bt.colors.accent,borderRadius:bt.radius.default,padding:bt.spacing.lg,marginBottom:bt.spacing.xl}),g=$t.create("referral-process-title",{fontSize:"1.125rem",fontWeight:"600",color:bt.colors.accentForeground,marginBottom:bt.spacing.md,marginTop:"0"}),y=$t.create("referral-process-list",{listStyle:"none",padding:"0",margin:"0",display:"flex",flexDirection:"column",gap:bt.spacing.sm}),v=$t.create("referral-process-item",{display:"flex",alignItems:"flex-start",fontSize:bt.fontSize.small,color:bt.colors.accentForeground,lineHeight:"1.6"}),w=$t.create("referral-bullet",{width:"1.5rem",height:"1.5rem",backgroundColor:bt.colors.primary,color:bt.colors.primaryForeground,borderRadius:"50%",marginRight:bt.spacing.sm,flexShrink:"0",display:"flex",alignItems:"center",justifyContent:"center",fontSize:"0.75rem",fontWeight:"600"}),b=$t.create("referral-contact-section",{borderTop:`1px solid ${bt.colors.border}`,paddingTop:bt.spacing.xl,marginTop:bt.spacing.xl,textAlign:"center"}),x=$t.create("referral-contact-text",{fontSize:bt.fontSize.default,color:bt.colors.foreground,marginBottom:bt.spacing.lg}),k=$t.create("referral-actions",{display:"flex",gap:bt.spacing.md,flexWrap:"wrap",justifyContent:"center",marginBottom:bt.spacing.lg}),N=$t.create("referral-reference",{fontSize:bt.fontSize.small,color:bt.colors.mutedForeground,marginTop:bt.spacing.md}),S=$t.create("referral-new-request",{textAlign:"center",marginTop:bt.spacing.md}),C=$t.create("referral-new-request-link",{fontSize:bt.fontSize.small,color:bt.colors.mutedForeground,textDecoration:"underline",cursor:"pointer",background:"none",border:"none",padding:"0",fontFamily:"inherit"});return Fe(ns,{title:"Quote Under Review",description:"We'll get back to you",hideHeader:!0,children:Fe(Mt,{children:Fe(ss,{children:Fe("div",{className:c,children:[Fe("div",{className:d,children:Fe(()=>Fe("svg",{xmlns:"http://www.w3.org/2000/svg",width:"24",height:"24",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor","stroke-width":"2","stroke-linecap":"round","stroke-linejoin":"round",className:u,children:[Fe("path",{d:"M7 10v12"}),Fe("path",{d:"M15 5.88 14 10h5.83a2 2 0 0 1 1.92 2.56l-2.33 8A2 2 0 0 1 17.5 22H4a2 2 0 0 1-2-2v-8a2 2 0 0 1 2-2h2.76a2 2 0 0 0 1.79-1.11L12 2a3.13 3.13 0 0 1 3 3.88Z"})]}),{})}),Fe("div",{className:h,children:[Fe("h1",{className:m,children:"Thanks for your quote request!"}),Fe("p",{className:f,children:"Our team is reviewing your details and will come back to you with a personalised quote."})]}),Fe("div",{className:p,children:[Fe("h3",{className:g,children:"What happens next?"}),Fe("ul",{className:y,children:[Fe("li",{className:v,children:[Fe("span",{className:w,children:"1"}),Fe("span",{children:"Our team will review your application within 1-2 business days"})]}),Fe("li",{className:v,children:[Fe("span",{className:w,children:"2"}),Fe("span",{children:"We'll contact you with either approval or additional requirements"})]}),Fe("li",{className:v,children:[Fe("span",{className:w,children:"3"}),Fe("span",{children:"If approved, we'll provide you with payment options to complete your purchase"})]})]})]}),l&&Fe("div",{className:b,children:[Fe("p",{className:x,children:"Need to speak with someone about your quote?"}),Fe("div",{className:k,children:[a&&Fe(is,{variant:"outline",onClick:()=>window.open(`tel:${a}`),children:[Fe("svg",{xmlns:"http://www.w3.org/2000/svg",width:"16",height:"16",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor","stroke-width":"2","stroke-linecap":"round","stroke-linejoin":"round",style:{marginRight:"0.5rem"},children:Fe("path",{d:"M22 16.92v3a2 2 0 0 1-2.18 2 19.79 19.79 0 0 1-8.63-3.07 19.5 19.5 0 0 1-6-6 19.79 19.79 0 0 1-3.07-8.67A2 2 0 0 1 4.11 2h3a2 2 0 0 1 2 1.72 12.84 12.84 0 0 0 .7 2.81 2 2 0 0 1-.45 2.11L8.09 9.91a16 16 0 0 0 6 6l1.27-1.27a2 2 0 0 1 2.11-.45 12.84 12.84 0 0 0 2.81.7A2 2 0 0 1 22 16.92z"})}),"Call Us"]}),s&&Fe(is,{variant:"outline",onClick:()=>window.open(`mailto:${s}`),children:[Fe("svg",{xmlns:"http://www.w3.org/2000/svg",width:"16",height:"16",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor","stroke-width":"2","stroke-linecap":"round","stroke-linejoin":"round",style:{marginRight:"0.5rem"},children:[Fe("rect",{width:"20",height:"16",x:"2",y:"4",rx:"2"}),Fe("path",{d:"m22 7-8.97 5.7a1.94 1.94 0 0 1-2.06 0L2 7"})]}),"Email Us"]})]}),(null===(r=e.quote_intent)||void 0===r?void 0:r.reference)&&Fe("div",{className:N,children:["Quote Reference: ",Fe("strong",{children:e.quote_intent.reference})]})]}),Fe("div",{className:S,children:Fe("button",{type:"button",className:C,onClick:()=>null==o?void 0:o.reset(),children:"Start a new quote"})})]})})})})}function As({results:e}){const{calculationResultV2:t}=At(e=>({calculationResultV2:e.getCalculationResultV2()}));return"referral"===e.outcome_type?Fe(Ws,{results:e}):t?Fe(Ms,{}):Fe(Es,{results:e})}function Ls({value:e,onChange:t,name:n,id:r,placeholder:i,required:o,disabled:s,className:a,hasError:l,prefix:c="$"}){const d=st(null),[u,h]=it("");function m(e){if(!e)return"";const t=e.replace(/[^\d.]/g,"");if(!t)return"";const n=t.split(".");let r=n[0];const i=n[1];r=r.replace(/^0+/,"")||"0";const o=r.replace(/\B(?=(\d{3})+(?!\d))/g,",");return void 0!==i?o+"."+i:o}ot(()=>{h(null!=e&&""!==e?m(e):"")},[e]);const f=$t.create("money-input-wrapper",{position:"relative",display:"flex",alignItems:"center"}),p=$t.create("money-input-prefix",{position:"absolute",left:"1rem",color:bt.colors.mutedForeground,pointerEvents:"none",fontSize:"14px",userSelect:"none"}),g=$t.create("money-input-with-prefix",{paddingLeft:c?"2rem":"1rem"});return Fe("div",{className:f,children:[c&&Fe("span",{className:p,children:c}),Fe("input",{ref:d,type:"text",inputMode:"decimal",name:n,id:r,value:u,onInput:function(e){const n=e.currentTarget,r=n.selectionStart||0,i=u,o=n.value.replace(/[^\d.]/g,""),s=m(o);h(s),t(o),requestAnimationFrame(()=>{if(d.current){const e=function(e,t,n){let r=n+(t.length-e.length);return r=Math.max(0,Math.min(r,t.length)),r}(i,s,r);d.current.setSelectionRange(e,e)}})},onBlur:function(){u&&u.includes(".")},placeholder:i,required:o,disabled:s,className:Dt(a,c&&g)})]})}function Bs(e,t){return n=(null==e?void 0:e.use_custom_options)?t||(null==e?void 0:e.options)||[]:(null==e?void 0:e.options)||t||[],(r=null==e?void 0:e.options_sort)&&"default"!==r?[...n].sort((e,t)=>e.label.localeCompare(t.label,void 0,"numerical"===r?{numeric:!0}:void 0)):[...n];var n,r}function qs(e){var t,n;const r=$t.create("input",{width:"100%",maxWidth:"100%",minWidth:"0",boxSizing:"border-box",height:"2.75rem",paddingLeft:"1.25rem",paddingRight:"1.25rem",paddingTop:"0.625rem",paddingBottom:"0.625rem",border:`${bt.borderWidth} solid ${bt.colors.input}`,borderRadius:bt.radius.default,fontSize:bt.fontSize.default,backgroundColor:bt.colors.card,color:bt.colors.foreground,transition:bt.transition,outline:"none",boxShadow:"none"},{"(max-width: 480px)":{paddingLeft:"0.75rem",paddingRight:"0.75rem"}}),i=$t.create("input-error",{border:`${bt.borderWidth} solid ${bt.colors.destructive}`,boxShadow:`0 0 0 3px color-mix(in srgb, ${bt.colors.destructive} 20%, transparent)`}),o=e.hasError?`${r} ${i}`:r,s=$t.name("input");$t.pseudoElement("input",":focus",{border:`${bt.borderWidth} solid ${bt.colors.primary}`,boxShadow:`0 0 0 3px color-mix(in srgb, ${bt.colors.primary} 20%, transparent)`,borderRadius:bt.radius.default});const a=$t.create("select",{width:"100%",minWidth:"0",boxSizing:"border-box",height:`calc(2.75rem - (${bt.borderWidth} * 2))`,paddingLeft:"1.25rem",paddingRight:"2.5rem",paddingTop:"0.625rem",paddingBottom:"0.625rem",border:"none",fontSize:bt.fontSize.default,backgroundColor:"transparent",color:bt.colors.foreground,outline:"none",WebkitAppearance:"none",appearance:"none",textOverflow:"ellipsis"},{"(max-width: 480px)":{paddingLeft:"0.75rem",paddingRight:"2rem"}}),l=$t.create("select-wrapper",{position:"relative",minWidth:"0",border:`${bt.borderWidth} solid ${bt.colors.input}`,borderRadius:bt.radius.default,backgroundColor:bt.colors.card,transition:bt.transition,outline:"none",boxShadow:"none"}),c=$t.create("select-wrapper-error",{border:`${bt.borderWidth} solid ${bt.colors.destructive}`,boxShadow:`0 0 0 3px color-mix(in srgb, ${bt.colors.destructive} 20%, transparent)`}),d=e.hasError?`${l} ${c}`:l,u=$t.name("select-wrapper");$t.pseudoElement("select-wrapper",":focus-within",{border:`${bt.borderWidth} solid ${bt.colors.primary}`,boxShadow:`0 0 0 3px color-mix(in srgb, ${bt.colors.primary} 20%, transparent)`,borderRadius:bt.radius.default});const{onChange:h,onBlur:m,onKeyDown:f,className:p,validation:g,errors:y,suffix:v,...w}=e;function b(e){h(e.currentTarget.value)}function x(e){h(e.currentTarget.value)}function k(e){m&&m(e.currentTarget.value)}if("select"===e.type){const N=e.null_option_label||"N/A",S=Bs(e.validation,e.options),C=!w.value&&!e.add_null_option,_=$t.create("select-placeholder",{color:bt.colors.mutedForeground}),$=$t.create("select-chevron",{position:"absolute",right:"0.75rem",top:"50%",transform:"translateY(-50%)",pointerEvents:"none",color:bt.colors.mutedForeground});return Fe("div",{className:Dt(d,u),children:[Fe("select",{...w,onChange:b,className:Dt(a,C&&_),children:[C&&Fe("option",{value:"",disabled:!0,selected:!0,children:"Select..."}),e.add_null_option&&Fe("option",{value:"",children:N}),S.map(e=>Fe("option",{value:e.value,children:e.label},e.value))]}),Fe("svg",{className:$,xmlns:"http://www.w3.org/2000/svg",width:"16",height:"16",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor","stroke-width":"2","stroke-linecap":"round","stroke-linejoin":"round",children:Fe("path",{d:"M6 9l6 6 6-6"})})]})}if("radio"===e.type){const I=e.null_option_label||"N/A",T=Bs(e.validation,e.options),E=$t.create(e.inline?"radio-container-inline":"radio-container",{display:"flex",flexDirection:e.inline?"row":"column",gap:e.inline?"1rem":"0.5rem",flexWrap:e.inline?"wrap":"nowrap"}),P=$t.create("radio-label",{display:"flex",alignItems:"center",gap:"0.5rem",cursor:"pointer",fontSize:bt.fontSize.default,color:bt.colors.foreground}),z=$t.create("radio-input",{accentColor:bt.colors.primary,width:"1.25rem",height:"1.25rem",cursor:"pointer",marginRight:"0.25rem"}),D=$t.name("radio-input");return $t.pseudoElement("radio-input",":focus",{outline:`3px solid color-mix(in srgb, ${bt.colors.primary} 30%, transparent)`,outlineOffset:"2px"}),Fe("div",{className:E,children:[e.add_null_option&&Fe("label",{className:P,children:[Fe("input",{type:"radio",name:e.name,value:"",checked:""===e.value,onChange:()=>h(""),className:Dt(z,D)}),Fe("span",{children:I})]}),T.map(t=>Fe("label",{className:P,children:[Fe("input",{type:"radio",name:e.name,value:t.value,checked:e.value===t.value,onChange:()=>h(t.value),className:Dt(z,D)}),Fe("span",{children:t.label})]},t.value))]})}if("date"===e.type){const R=$t.create("input-date",{height:"2.75rem",minHeight:"2.75rem",maxHeight:"2.75rem",WebkitAppearance:"none",appearance:"none"});return Fe("input",{...w,type:"date",min:null===(t=e.validation)||void 0===t?void 0:t.minDate,max:null===(n=e.validation)||void 0===n?void 0:n.maxDate,onInput:x,onChange:b,className:Dt(o,s,R,p)})}if("monthyear"===e.type)return Fe(Hs,{id:e.id,name:e.name,value:e.value,required:e.required,disabled:e.disabled,hasError:e.hasError,onChange:h,selectWrapperBaseClass:l,selectWrapperErrorClass:c,selectWrapperBaseClassName:u,selectBaseClassName:a});if("year"===e.type){const M=(new Date).getFullYear();return Fe("input",{...w,type:"number",min:M-100,max:M,placeholder:"YYYY",onInput:x,onChange:b,className:Dt(o,s,p)})}if("money"===e.type)return Fe(Ls,{value:e.value,onChange:h,name:e.name,id:e.id,placeholder:e.placeholder,required:e.required,disabled:e.disabled,className:Dt(o,s,p),hasError:e.hasError});if("checkbox"===e.type){const O=!0===e.value||"true"===e.value||"true"===e.value,j=$t.create("checkbox-wrapper",{position:"relative",display:"inline-flex",alignItems:"center",justifyContent:"center",width:"1.25rem",height:"1.25rem",flexShrink:"0"}),W=$t.create("checkbox-"+(O?"checked":"unchecked"),{appearance:"none",width:"1.25rem",height:"1.25rem",border:`2px solid ${O?bt.colors.primary:e.hasError?bt.colors.destructive:bt.colors.input}`,borderRadius:"0.375rem",cursor:"pointer",backgroundColor:O?bt.colors.primary:bt.colors.card,transition:bt.transition,position:"absolute"}),A=$t.name("checkbox-"+(O?"checked":"unchecked"));function L(e){e.preventDefault(),h(O?"false":"true")}return $t.pseudoElement("checkbox-"+(O?"checked":"unchecked"),":focus",{outline:"none",boxShadow:`0 0 0 3px color-mix(in srgb, ${bt.colors.primary} 20%, transparent)`,borderRadius:"0.375rem"}),Fe("div",{className:j,children:[Fe("input",{type:"checkbox",id:e.id,name:e.name,checked:O,onClick:L,className:Dt(W,A,p),required:e.required,readOnly:!0}),O&&Fe("svg",{xmlns:"http://www.w3.org/2000/svg",width:"14",height:"14",viewBox:"0 0 24 24",fill:"none",stroke:bt.colors.primaryForeground,"stroke-width":"3","stroke-linecap":"round","stroke-linejoin":"round",style:{pointerEvents:"none",position:"relative",zIndex:1},children:Fe("path",{d:"M20 6 9 17l-5-5"})})]})}if("boolean"===e.type){const B=$t.create("boolean-container",{display:"flex",flexDirection:"column",gap:"1rem"}),q=$t.create("boolean-radio-group",{display:"flex",gap:"1rem"}),F=$t.create("boolean-radio-label",{display:"flex",alignItems:"center",gap:"0.5rem",cursor:"pointer"}),H=$t.create("boolean-radio",{accentColor:bt.colors.primary,width:"1.25rem",height:"1.25rem",cursor:"pointer",marginRight:"0.25rem"}),U=$t.name("boolean-radio");$t.pseudoElement("boolean-radio",":focus",{outline:`3px solid color-mix(in srgb, ${bt.colors.primary} 30%, transparent)`,outlineOffset:"2px"});const Y=$t.create("boolean-textarea",{width:"100%",boxSizing:"border-box",minHeight:"5rem",padding:"1rem",border:`${bt.borderWidth} solid ${bt.colors.input}`,borderRadius:bt.radius.default,fontSize:bt.fontSize.default,backgroundColor:bt.colors.card,color:bt.colors.foreground,transition:bt.transition,outline:"none",boxShadow:"none",resize:"vertical",fontFamily:bt.fontFamily}),Z=$t.create("boolean-textarea-error",{border:`${bt.borderWidth} solid ${bt.colors.destructive}`,boxShadow:`0 0 0 3px color-mix(in srgb, ${bt.colors.destructive} 20%, transparent)`}),G=e.hasError?`${Y} ${Z}`:Y,V=$t.name("boolean-textarea");$t.pseudoElement("boolean-textarea",":focus",{border:`${bt.borderWidth} solid ${bt.colors.primary}`,boxShadow:`0 0 0 3px color-mix(in srgb, ${bt.colors.primary} 20%, transparent)`,borderRadius:bt.radius.default});const Q=!0===e.value||"true"===e.value,J=!1===e.value||"false"===e.value,K=e.answer||"",X=e.booleanConfig,ee=(null==X?void 0:X.enable_details_textbox)&&("yes"===X.show_details_on&&Q||"no"===X.show_details_on&&J);function te(t){h(t),(!(null==X?void 0:X.enable_details_textbox)||!("yes"===X.show_details_on&&"true"===t||"no"===X.show_details_on&&"false"===t))&&e.onAnswerChange&&K&&e.onAnswerChange("")}return Fe("div",{className:Dt(B,p),children:[Fe("div",{className:q,children:[Fe("label",{className:F,children:[Fe("input",{type:"radio",name:e.name,checked:Q,onChange:()=>te("true"),className:Dt(H,U)}),Fe("span",{children:"Yes"})]}),Fe("label",{className:F,children:[Fe("input",{type:"radio",name:e.name,checked:J,onChange:()=>te("false"),className:Dt(H,U)}),Fe("span",{children:"No"})]})]}),ee&&Fe("textarea",{placeholder:(null==X?void 0:X.details_placeholder)||"Please provide details",value:K,required:!0,onInput:t=>{return n=t.target.value,void(e.onAnswerChange&&e.onAnswerChange(n));var n},className:Dt(G,V)})]})}return v?Fe("div",{className:$t.create("input-with-suffix",{display:"flex",alignItems:"center",gap:bt.spacing.sm,minWidth:"0",maxWidth:"100%"}),children:[Fe("input",{...w,onInput:x,onChange:b,onBlur:k,onKeyDown:f,className:Dt(o,s,p),style:{flex:1,minWidth:0}}),v]}):Fe("input",{...w,onInput:x,onChange:b,onBlur:k,onKeyDown:f,className:Dt(o,s,p)})}const Fs=[{value:"01",label:"January"},{value:"02",label:"February"},{value:"03",label:"March"},{value:"04",label:"April"},{value:"05",label:"May"},{value:"06",label:"June"},{value:"07",label:"July"},{value:"08",label:"August"},{value:"09",label:"September"},{value:"10",label:"October"},{value:"11",label:"November"},{value:"12",label:"December"}];function Hs(e){const t=e.value||"",n=t.length>=7?t.substring(5,7):"",r=t.length>=4?t.substring(0,4):"",[i,o]=it(n),[s,a]=it(r),[l,c]=it(!1),[d,u]=it(!1),[h,m]=it(!(!n||!r));ot(()=>{o(n),a(r),m(!(!n||!r))},[e.value]);const f=(new Date).getFullYear(),p=[];for(let e=f;e>=f-100;e--)p.push(e);function g(t,n){if(t&&n)return m(!0),void e.onChange(`${n}-${t}-01`);h&&e.onChange("")}const y=!!i!=!!s&&l&&d&&!e.required,v=!i&&l&&(e.hasError||y),w=!s&&d&&(e.hasError||y),b=v?`${e.selectWrapperBaseClass} ${e.selectWrapperErrorClass}`:e.selectWrapperBaseClass,x=w?`${e.selectWrapperBaseClass} ${e.selectWrapperErrorClass}`:e.selectWrapperBaseClass,k=$t.create("monthyear-row",{display:"flex",gap:bt.spacing.sm,minWidth:"0"}),N=$t.create("monthyear-item",{flex:"1 1 0",minWidth:"0"}),S=$t.create("monthyear-placeholder",{color:bt.colors.mutedForeground}),C=$t.create("monthyear-chevron",{position:"absolute",right:"0.75rem",top:"50%",transform:"translateY(-50%)",pointerEvents:"none",color:bt.colors.mutedForeground}),_=$t.create("monthyear-partial-error",{marginTop:bt.spacing.sm,fontSize:bt.fontSize.small,color:bt.colors.destructive}),$=Fe("svg",{className:C,xmlns:"http://www.w3.org/2000/svg",width:"16",height:"16",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor","stroke-width":"2","stroke-linecap":"round","stroke-linejoin":"round",children:Fe("path",{d:"M6 9l6 6 6-6"})}),I=!i,T=!s,E=!e.required;return Fe("div",{children:[Fe("div",{className:k,children:[Fe("div",{className:Dt(b,e.selectWrapperBaseClassName,N),children:[Fe("select",{id:e.id,name:e.name,required:e.required,disabled:e.disabled,value:i,onChange:function(e){const t=e.currentTarget.value;o(t),c(!0),g(t,s)},onBlur:function(){c(!0)},className:Dt(e.selectBaseClassName,I&&S),children:[I?Fe("option",{value:"",disabled:!0,selected:!0,children:"Month"}):E&&Fe("option",{value:"",children:"— None —"}),Fs.map(e=>Fe("option",{value:e.value,children:e.label},e.value))]}),$]}),Fe("div",{className:Dt(x,e.selectWrapperBaseClassName,N),children:[Fe("select",{id:`${e.id}__year`,required:e.required,disabled:e.disabled,value:s,onChange:function(e){const t=e.currentTarget.value;a(t),u(!0),g(i,t)},onBlur:function(){u(!0)},className:Dt(e.selectBaseClassName,T&&S),children:[T?Fe("option",{value:"",disabled:!0,selected:!0,children:"Year"}):E&&Fe("option",{value:"",children:"— None —"}),p.map(e=>Fe("option",{value:String(e),children:e},e))]}),$]})]}),y&&Fe("div",{className:_,children:"Please select both month and year, or clear both."})]})}function Us(e,t){const{fsm:n,lastUpdated:r}=At(e=>{var t,n;return{lastUpdated:null!==(n=null===(t=e.getFormProgress())||void 0===t?void 0:t.last_updated)&&void 0!==n?n:null}}),[i,o]=it({kind:"idle"}),s=at(()=>{var t;for(let n=0;n<e.length;n++)if((null!==(t=e[n].fields)&&void 0!==t?t:[]).some(e=>"client_email"===e.code))return n;return-1},[e]);return{showContinueLater:s>=0&&t.includes(s),lastUpdated:r,continueLaterStatus:i,sendContinueLaterEmail:async function(){var e,t;const r=function(){const e=null==n?void 0:n.getFormProgress(),t=null==e?void 0:e.page_data;if(!t)return null;for(const e in t){const n=t[e];if(null==n?void 0:n.client_email)return n.client_email}return null}();if(!r)return void o({kind:"error",message:"Email address not found. Please fill in your email first."});const i=null===(e=null==n?void 0:n.getQuoteIntent())||void 0===e?void 0:e.id;if(i)try{o({kind:"sending"}),await(null===(t=null==n?void 0:n.httpClient)||void 0===t?void 0:t.continueLater(i,r)),o({kind:"sent"})}catch(e){o({kind:"error",message:"Failed to send link. Please try again."})}},copyContinueLaterLink:async function(){var e,t;const r=null===(e=null==n?void 0:n.getQuoteIntent())||void 0===e?void 0:e.id;if(!r)return;const i=function(e){var t,r;const i=null===(r=null===(t=null==n?void 0:n.getQuoteIntent())||void 0===t?void 0:t.organisation)||void 0===r?void 0:r.quote_page_url;if(i){const t=i.replace(/\/+$/,""),n=t.includes("?")?"&":"?";return`${t}${n}q=${e}`}return`${window.location.origin}${window.location.pathname}?q=${e}`}(r);try{if(null===(t=null===navigator||void 0===navigator?void 0:navigator.clipboard)||void 0===t?void 0:t.writeText)await navigator.clipboard.writeText(i);else{const e=document.createElement("textarea");e.value=i,e.style.position="fixed",e.style.opacity="0",document.body.appendChild(e),e.select(),document.execCommand("copy"),document.body.removeChild(e)}o({kind:"copied"})}catch(e){o({kind:"error",message:"Could not copy link. Please copy manually."})}},resetContinueLaterStatus:function(){o({kind:"idle"})},clearTransientStatus:function(){o(e=>"sent"===e.kind?e:{kind:"idle"})},confirmReset:function(){null==n||n.reset()}}}function Ys({isOpen:e,onClose:t,onConfirm:n}){return Fe($s,{isOpen:e,onClose:t,title:"Reset your progress?",description:"This will clear everything you've entered so far and start the form over. This cannot be undone.",footer:Fe(_,{children:[Fe(is,{variant:"outline",onClick:t,children:"Cancel"}),Fe(is,{onClick:function(){n(),t()},children:"Reset progress"})]})})}function Zs({pages:e,currentPageIndex:n,completedPages:r}){const{fsm:i,isSaving:o}=At(e=>({isSaving:e.getIsSaving()})),{showContinueLater:s,lastUpdated:a,continueLaterStatus:l,sendContinueLaterEmail:c,copyContinueLaterLink:d,clearTransientStatus:u,confirmReset:h}=Us(e,r),[m,f]=it(!1),[p,g]=it(!1),y=st(null),v=st(null);t(e.length),t(e.map((e,t)=>({index:t,id:e.id,title:e.title})));const w=(()=>{var e;const t=null===(e=null==i?void 0:i.getFormProgress())||void 0===e?void 0:e.page_data;if(!t)return null;for(const e in t){const n=t[e];if(null==n?void 0:n.client_email)return n.client_email}return null})();ot(()=>{if(y.current&&v.current){const e=v.current,t=y.current,n=e.getBoundingClientRect(),r=t.getBoundingClientRect();(r.top<n.top||r.bottom>n.bottom)&&t.scrollIntoView({behavior:"smooth",block:"nearest"})}},[n]);const b=Math.round((n+1)/e.length*100),x=$t.create("sidebar-nav-item-base",{display:"flex",alignItems:"flex-start",gap:bt.spacing.sm,padding:`${bt.spacing.sm} ${bt.spacing.sm}`,borderRadius:bt.radius.default,border:"none",backgroundColor:"transparent",color:bt.colors.foreground,cursor:"pointer",transition:bt.transition,textAlign:"left",width:"100%",fontFamily:bt.fontFamily,fontSize:bt.fontSize.small,opacity:"1"}),k=$t.create("sidebar-nav-item-active",{backgroundColor:bt.colors.accent,color:bt.colors.accentForeground}),N=$t.create("sidebar-nav-item-disabled",{cursor:"not-allowed",opacity:"0.5"});$t.pseudoElement("sidebar-nav-item-base",":hover",{backgroundColor:bt.colors.muted}),$t.pseudoElement("sidebar-nav-item-active",":hover",{backgroundColor:bt.colors.accent});const S=$t.create("sidebar-indicator-base",{width:"1.25rem",height:"1.25rem",borderRadius:"50%",display:"flex",alignItems:"center",justifyContent:"center",flexShrink:"0",marginTop:"0.125rem",backgroundColor:bt.colors.muted,color:bt.colors.mutedForeground,fontSize:"0.75rem",fontWeight:"600"}),C=$t.create("sidebar-indicator-active",{backgroundColor:bt.colors.accentForeground,color:bt.colors.accent}),_=$t.create("sidebar-indicator-completed",{backgroundColor:bt.colors.primary,color:bt.colors.primaryForeground}),$=$t.create("sidebar-page-title-base",{fontWeight:"500",fontSize:"0.875rem",lineHeight:"1.7",wordWrap:"break-word",overflowWrap:"break-word"}),I=$t.create("sidebar-page-title-active",{fontWeight:"600"});return Fe("div",{className:$t.create("sidebar-navigation",{backgroundColor:bt.colors.card,borderRadius:bt.radius.large,padding:bt.spacing.lg,boxShadow:bt.shadow.sm,alignSelf:"flex-start",display:"flex",flexDirection:"column",gap:bt.spacing.lg}),children:[Fe("div",{className:$t.create("sidebar-progress-container",{display:"flex",flexDirection:"column",gap:bt.spacing.sm}),children:[Fe("span",{className:$t.create("sidebar-progress-text",{fontSize:bt.fontSize.small,fontWeight:"600",color:bt.colors.foreground}),children:["Step ",n+1," of ",e.length]}),Fe("div",{className:$t.create("sidebar-progress-bg",{width:"100%",height:"0.5rem",backgroundColor:bt.colors.muted,borderRadius:bt.radius.small,overflow:"hidden"}),children:Fe("div",{className:$t.create("sidebar-progress-fill",{height:"100%",backgroundColor:bt.colors.primary,borderRadius:bt.radius.small,transition:bt.transition}),style:{width:`${b}%`}})})]}),Fe("hr",{className:$t.create("sidebar-divider",{borderColor:bt.colors.border})}),Fe("nav",{ref:v,className:$t.create("sidebar-nav",{display:"flex",flexDirection:"column",gap:bt.spacing.sm,maxHeight:"calc(100vh - 400px)",overflowY:"auto",overflowX:"hidden",paddingRight:bt.spacing.sm}),children:e.map((e,s)=>{const a=s===n,l=r.includes(s),c=i.canNavigateToPage(s);s===n&&t(e.title);const d=[x];a&&d.push(k),c&&!o||d.push(N);const u=d.join(" "),h=[S];l?h.push(_):a&&h.push(C);const m=h.join(" ");return Fe("button",{ref:a?y:null,onClick:()=>{return e=s,void((null==i?void 0:i.canNavigateToPage(e))&&i.navigateToPage(e));var e},disabled:!c||o,className:u,children:[Fe("div",{className:m,children:l?Fe("svg",{xmlns:"http://www.w3.org/2000/svg",width:"12",height:"12",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor","stroke-width":"3","stroke-linecap":"round","stroke-linejoin":"round",children:Fe("path",{d:"M20 6 9 17l-5-5"})}):s+1}),Fe("div",{className:$t.create("sidebar-nav-text",{display:"flex",flexDirection:"column",gap:"0.125rem",flex:"1",minWidth:"0"}),children:Fe("span",{className:a?`${$} ${I}`:$,children:e.title})})]},e.id)})}),a&&Fe("div",{className:$t.create("sidebar-footer",{display:"flex",flexDirection:"column",alignItems:"center",gap:"4px"}),children:[Fe("div",{className:$t.create("sidebar-last-saved",{fontSize:"0.6875rem",color:bt.colors.mutedForeground,textAlign:"center",opacity:"0.6",fontStyle:"italic"}),children:["Last saved: ",es.fromJSDate(new Date(a)).toFormat("T")]}),Fe("button",{onClick:()=>g(!0),className:$t.create("sidebar-reset-link",{background:"none",border:"none",padding:"0",fontSize:"0.6875rem",color:bt.colors.mutedForeground,opacity:"0.5",cursor:"pointer",textDecoration:"underline",fontFamily:bt.fontFamily}),children:"Reset progress"})]}),s&&Fe("button",{onClick:()=>{u(),f(!0)},className:$t.create("sidebar-continue-later-button",{padding:`${bt.spacing.sm} ${bt.spacing.md}`,border:`${bt.borderWidth} solid ${bt.colors.border}`,borderRadius:bt.radius.default,backgroundColor:"transparent",color:bt.colors.mutedForeground,fontSize:bt.fontSize.small,fontFamily:bt.fontFamily,cursor:"pointer",transition:bt.transition,textAlign:"center",width:"100%"}),children:"Continue Later"}),Fe(Is,{isOpen:m,onClose:()=>f(!1),status:l,onSendEmail:c,onCopyLink:d,email:w}),Fe(Ys,{isOpen:p,onClose:()=>g(!1),onConfirm:h})]})}function Gs({pages:e,currentPageIndex:t,completedPages:n}){const{fsm:r,isSaving:i}=At(e=>({fsm:e,isSaving:null==e?void 0:e.getIsSaving()})),[o,s]=it(!1),a=Math.round((t+1)/e.length*100),l=$t.create("mobile-sidebar-item-base",{display:"flex",alignItems:"center",gap:bt.spacing.sm,padding:bt.spacing.sm,border:"none",borderRadius:bt.radius.default,backgroundColor:"transparent",color:bt.colors.foreground,cursor:"pointer",opacity:"1",transition:bt.transition,width:"100%",textAlign:"left",fontFamily:bt.fontFamily}),c=$t.create("mobile-sidebar-item-active",{backgroundColor:bt.colors.accent,color:bt.colors.accentForeground}),d=$t.create("mobile-sidebar-item-disabled",{cursor:"not-allowed",opacity:"0.5"}),u=$t.create("mobile-sidebar-indicator-base",{width:"1.25rem",height:"1.25rem",borderRadius:"50%",display:"flex",alignItems:"center",justifyContent:"center",flexShrink:"0",backgroundColor:bt.colors.muted,color:bt.colors.mutedForeground,fontSize:"0.75rem",fontWeight:"600"}),h=$t.create("mobile-sidebar-indicator-active",{backgroundColor:bt.colors.accentForeground,color:bt.colors.accent}),m=$t.create("mobile-sidebar-indicator-completed",{backgroundColor:bt.colors.primary,color:bt.colors.primaryForeground}),f=$t.create("mobile-sidebar-page-title-base",{fontSize:bt.fontSize.small,fontWeight:"500"}),p=$t.create("mobile-sidebar-page-title-active",{fontWeight:"600"});return Fe("div",{className:$t.create("mobile-sidebar",{overflow:"hidden"}),children:[Fe("button",{onClick:()=>s(!o),className:$t.create("mobile-sidebar-header",{width:"100%",padding:bt.spacing.md,border:"none",backgroundColor:"transparent",cursor:"pointer",display:"flex",flexDirection:"column",gap:bt.spacing.sm}),children:[Fe("div",{className:$t.create("mobile-sidebar-header-row",{display:"flex",alignItems:"center",justifyContent:"space-between"}),children:[Fe("span",{className:$t.create("mobile-sidebar-step-text",{fontSize:bt.fontSize.small,fontWeight:"600",color:bt.colors.foreground}),children:["Step ",t+1," of ",e.length]}),Fe("svg",{xmlns:"http://www.w3.org/2000/svg",width:"20",height:"20",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor","stroke-width":"2","stroke-linecap":"round","stroke-linejoin":"round",className:$t.create("mobile-sidebar-chevron",{transition:bt.transition,transform:o?"rotate(180deg)":"rotate(0deg)",color:bt.colors.mutedForeground}),children:Fe("path",{d:"m6 9 6 6 6-6"})})]}),Fe("div",{className:$t.create("mobile-sidebar-progress-bg",{width:"100%",height:"0.5rem",backgroundColor:bt.colors.muted,borderRadius:bt.radius.small,overflow:"hidden"}),children:Fe("div",{className:$t.create("mobile-sidebar-progress-fill",{height:"100%",backgroundColor:bt.colors.primary,borderRadius:bt.radius.small,transition:bt.transition}),style:{width:`${a}%`}})})]}),Fe("hr",{className:$t.create("mobile-sidebar-border",{borderColor:bt.colors.border})}),o&&Fe("div",{className:$t.create("mobile-sidebar-content",{padding:bt.spacing.sm,display:"flex",flexDirection:"column",gap:"0.25rem",maxHeight:"300px",overflowY:"auto"}),children:e.map((e,o)=>{const a=o===t,g=n.includes(o),y=r.canNavigateToPage(o),v=[l];a&&v.push(c),y&&!i||v.push(d);const w=v.join(" "),b=[u];g?b.push(m):a&&b.push(h);const x=b.join(" ");return Fe("button",{onClick:()=>{return e=o,void((null==r?void 0:r.canNavigateToPage(e))&&(r.navigateToPage(e),s(!1)));var e},disabled:!y||i,className:w,children:[Fe("div",{className:x,children:g?Fe("svg",{xmlns:"http://www.w3.org/2000/svg",width:"12",height:"12",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor","stroke-width":"3","stroke-linecap":"round","stroke-linejoin":"round",children:Fe("path",{d:"M20 6 9 17l-5-5"})}):o+1}),Fe("span",{className:a?`${f} ${p}`:f,children:e.title})]},e.id)})})]})}function Vs({pages:e,completedPages:t}){const{fsm:n}=At(()=>({})),{showContinueLater:r,lastUpdated:i,continueLaterStatus:o,sendContinueLaterEmail:s,copyContinueLaterLink:a,clearTransientStatus:l,confirmReset:c}=Us(e,t),[d,u]=it(!1),[h,m]=it(!1);if(!i&&!r)return null;const f=(()=>{var e;const t=null===(e=null==n?void 0:n.getFormProgress())||void 0===e?void 0:e.page_data;if(!t)return null;for(const e in t){const n=t[e];if(null==n?void 0:n.client_email)return n.client_email}return null})(),p=$t.create("mobile-form-actions-container",{display:"flex",justifyContent:"center",alignItems:"center",gap:bt.spacing.lg,paddingTop:bt.spacing.sm,paddingBottom:bt.spacing.sm}),g=$t.create("mobile-form-actions-link",{background:"none",border:"none",padding:"0",fontSize:"0.75rem",color:bt.colors.mutedForeground,opacity:"0.6",cursor:"pointer",textDecoration:"underline",fontFamily:bt.fontFamily});return Fe("div",{className:p,children:[i&&Fe("button",{type:"button",onClick:()=>m(!0),className:g,children:"Reset progress"}),r&&Fe("button",{type:"button",onClick:()=>{l(),u(!0)},className:g,children:"Continue later"}),Fe(Is,{isOpen:d,onClose:()=>u(!1),status:o,onSendEmail:s,onCopyLink:a,email:f}),Fe(Ys,{isOpen:h,onClose:()=>m(!1),onConfirm:c})]})}function Qs({organisation:e}){return Fe("div",{className:$t.create("welcome-card",{paddingInline:bt.spacing.lg,paddingTop:bt.spacing.lg},{"(max-width: 950px)":{paddingInline:bt.spacing.lg,paddingTop:bt.spacing.lg},"(max-width: 480px)":{paddingInline:bt.spacing.md,paddingTop:bt.spacing.md}}),children:[Fe("h2",{className:$t.create("welcome-title",{margin:"0",marginBottom:bt.spacing.md,fontSize:"1.75rem",fontWeight:"700",color:bt.colors.primary,lineHeight:"1.1",letterSpacing:"-0.025em"},{"(max-width: 950px)":{fontSize:"1.5rem"},"(max-width: 480px)":{fontSize:"1.25rem",marginBottom:bt.spacing.sm}}),children:["Thank you for choosing ",e.name,"."]}),Fe("p",{className:$t.create("welcome-text",{margin:"0",fontSize:bt.fontSize.default,lineHeight:"1.6",color:bt.colors.foreground,opacity:"0.9"}),children:"Getting a quote online is quick and easy. Simply complete the form below with your details, and we'll provide you with a personalied quote. Our secure platform ensures your information is protected every step of the way."}),Fe("hr",{className:$t.create("welcome-border",{marginTop:bt.spacing.lg,borderColor:bt.colors.border})})]})}function Js({title:e,description:t}){return Fe(ns,{title:e,description:t,children:Fe(Mt,{children:Fe(ss,{className:$t.name("error-container"),children:Fe("svg",{xmlns:"http://www.w3.org/2000/svg",width:"64",height:"64",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor","stroke-width":"2","stroke-linecap":"round","stroke-linejoin":"round",className:"lucide lucide-ban-icon lucide-ban",children:[Fe("path",{d:"M4.929 4.929 19.07 19.071"}),Fe("circle",{cx:"12",cy:"12",r:"10"})]})})})})}function Ks({errors:e,className:t}){return e&&0!==e.length?Fe("div",{className:$t.create("field-error",{color:bt.colors.destructive,fontSize:bt.fontSize.small,marginTop:"0.25rem",display:"flex",flexDirection:"column",gap:"0.125rem"}),children:e.map((e,t)=>Fe("span",{className:$t.create("field-error-message",{lineHeight:"1.4"}),children:e.message},t))}):null}function Xs({htmlFor:e,label:t,children:n,required:r,tooltip:i,...o}){const[s,a]=it({visible:!1,top:0,left:0,flipped:!1}),l=st(null),c=lt(()=>{const e=l.current;if(!e)return;const t=e.getBoundingClientRect(),n=!(t.top>68),r=n?t.bottom+8:t.top-8,i=t.left+t.width/2;a({visible:!0,top:r,left:i,flipped:n})},[]),d=lt(()=>{a(e=>({...e,visible:!1}))},[]);return Fe("label",{for:e,className:$t.create("label",{display:"flex",flexDirection:"column",minWidth:"0"}),...o,children:[Fe("span",{className:$t.create("label-text",{marginBottom:bt.spacing.sm,fontSize:bt.fontSize.default,fontWeight:"600",display:"flex",alignItems:"center",gap:bt.spacing.sm,color:bt.colors.foreground}),children:[Fe("span",{children:r?Fe(_,{children:[t.includes(" ")?t.substring(0,t.lastIndexOf(" ")+1):"",Fe("span",{style:{whiteSpace:"nowrap"},children:[t.includes(" ")?t.substring(t.lastIndexOf(" ")+1):t,Fe("span",{className:$t.create("label-required-indicator",{color:bt.colors.destructive}),children:"*"})]})]}):t}),i&&Fe("span",{ref:l,className:$t.create("tooltip-container",{position:"relative",display:"inline-flex"}),onMouseEnter:c,onMouseLeave:d,children:[Fe("svg",{className:$t.create("tooltip-icon",{width:"1rem",height:"1rem",color:bt.colors.mutedForeground,cursor:"help"}),fill:"none",stroke:"currentColor",viewBox:"0 0 24 24",children:[Fe("circle",{cx:"12",cy:"12",r:"10",strokeWidth:"2"}),Fe("path",{d:"M9.09 9a3 3 0 0 1 5.83 1c0 2-3 3-3 3",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round"}),Fe("circle",{cx:"12",cy:"17",r:"0.5",fill:"currentColor",strokeWidth:"0"})]}),s.visible&&Fe("span",{style:{position:"fixed",top:`${s.top}px`,left:`${s.left}px`,transform:s.flipped?"translateX(-50%)":"translateX(-50%) translateY(-100%)",padding:"0.5rem 0.75rem",backgroundColor:bt.colors.popover,color:bt.colors.popoverForeground,fontSize:"0.875rem",borderRadius:bt.radius.default,whiteSpace:"normal",boxShadow:"0 2px 8px rgba(0, 0, 0, 0.15)",zIndex:1e4,minWidth:"200px",maxWidth:"300px",pointerEvents:"none"},children:[i,Fe("span",{style:{position:"absolute",left:"50%",transform:"translateX(-50%)",width:"0",height:"0",borderLeft:"6px solid transparent",borderRight:"6px solid transparent",...s.flipped?{bottom:"100%",borderBottom:`6px solid ${bt.colors.popover}`}:{top:"100%",borderTop:`6px solid ${bt.colors.popover}`}}})]})]})]}),n]})}function ea(e){const t={"(max-width: 600px)":{gridColumn:"span 12 / span 12"}};switch(null!=e?e:100){case 25:return $t.create("field-wrapper-25",{gridColumn:"span 3 / span 3"},t);case 33:return $t.create("field-wrapper-33",{gridColumn:"span 4 / span 4"},t);case 50:return $t.create("field-wrapper-50",{gridColumn:"span 6 / span 6"},t);case 66:return $t.create("field-wrapper-66",{gridColumn:"span 8 / span 8"},t);case 75:return $t.create("field-wrapper-75",{gridColumn:"span 9 / span 9"},t);default:return $t.create("field-wrapper-100",{gridColumn:"span 12 / span 12"})}}function ta(e){return e?e.replace(/\[([^\]]+)\]\(([^)]+)\)/g,(e,t,n)=>{const r=n.trim();return r.match(/^(https?:\/\/|mailto:)/i)?`<a href="${r}" target="_blank" rel="noopener noreferrer" class="text-blue-600 hover:text-blue-800 underline">${t}</a>`:e}):""}function na({field:e,errors:t,children:n,className:r}){const i=e.code||e.id,o=(null==t?void 0:t.filter(e=>e.field===i))||[],s=$t.create("validated-field",{display:"flex",flexDirection:"column",gap:bt.spacing.sm,minWidth:"0"});if("notice"===e.type){const t=$t.create("notice-field",{display:"flex",gap:bt.spacing.sm,padding:bt.spacing.md,backgroundColor:bt.colors.accent,borderRadius:bt.radius.default,border:`1px solid ${bt.colors.border}`}),n=$t.create("notice-icon",{flexShrink:"0",fontSize:bt.fontSize.default,lineHeight:"1.6"}),r=$t.create("notice-text",{fontSize:bt.fontSize.small,color:bt.colors.foreground,lineHeight:"1.6"});return Fe("div",{className:Dt(ea(e.width)),children:Fe("div",{className:t,children:[Fe("span",{className:n,children:"ⓘ"}),Fe("div",{className:r,children:[e.label&&Fe("strong",{children:e.label}),e.label&&e.description&&Fe("br",{}),e.description&&Fe("span",{children:e.description})]})]})})}if("section"===e.type){const t=$t.create("section-separator",{display:"flex",alignItems:"center",gap:bt.spacing.md}),n=$t.create("section-line",{flex:"1",height:"1px",backgroundColor:bt.colors.border}),r=$t.create("section-title",{fontSize:bt.fontSize.small,fontWeight:"600",color:bt.colors.mutedForeground,whiteSpace:"nowrap"});return Fe("div",{className:Dt(ea(e.width)),children:Fe("div",{className:t,children:e.label?Fe(_,{children:[Fe("div",{className:n}),Fe("span",{className:r,children:e.label}),Fe("div",{className:n})]}):Fe("div",{className:n})})})}if("checkbox"===e.type){const t=$t.create("checkbox-field-container",{display:"flex",flexDirection:"column",gap:bt.spacing.sm}),a=$t.create("checkbox-field-row",{display:"flex",alignItems:"flex-start",gap:"0.75rem",cursor:"pointer"}),l=$t.create("checkbox-field-label",{display:"flex",flexDirection:"column",gap:"0.25rem",flex:"1"}),c=$t.create("checkbox-label-text",{fontSize:bt.fontSize.default,fontWeight:"600",color:bt.colors.foreground,display:"flex",alignItems:"center",gap:"0.25rem"});return Fe("div",{className:Dt(s,ea(e.width),r),children:[Fe("div",{className:t,children:Fe("div",{className:a,children:[Fe("label",{htmlFor:i,style:{display:"flex",cursor:"pointer"},children:n}),Fe("label",{htmlFor:i,className:l,children:[Fe("span",{className:c,children:[e.label,e.required&&Fe("span",{className:$t.create("checkbox-required-indicator",{color:bt.colors.destructive}),children:"*"})]}),e.description&&Fe("div",{className:$t.create("checkbox-field-description",{fontSize:bt.fontSize.small,color:bt.colors.mutedForeground,lineHeight:"1.6"}),dangerouslySetInnerHTML:{H:ta(e.description)}})]})]})}),Fe(Ks,{errors:o})]})}return Fe("div",{className:Dt(s,ea(e.width),r),children:[Fe(Xs,{htmlFor:i,label:e.label,required:e.required,tooltip:e.tooltip,children:[e.description&&Fe("div",{className:$t.create("field-description",{fontSize:bt.fontSize.small,color:bt.colors.mutedForeground,marginBottom:bt.spacing.sm,lineHeight:"1.6"}),dangerouslySetInnerHTML:{H:ta(e.description)}}),n]}),Fe(Ks,{errors:o})]})}function ra({error:e,onDismiss:t,className:n}){const r=globalThis.insureOSDebug,i={warning:{backgroundColor:bt.colors.secondary+"08",borderColor:bt.colors.secondary+"30",iconColor:bt.colors.secondary,titleColor:bt.colors.foreground},error:{backgroundColor:bt.colors.destructive+"08",borderColor:bt.colors.destructive,iconColor:bt.colors.destructive,titleColor:bt.colors.destructive},critical:{backgroundColor:bt.colors.destructive+"10",borderColor:bt.colors.destructive,iconColor:bt.colors.destructive,titleColor:bt.colors.destructive}}[e.severity],o=$t.create("error-card",{padding:bt.spacing.md,borderRadius:bt.radius.default,border:`2px solid ${i.borderColor}`,backgroundColor:i.backgroundColor,margin:bt.spacing.lg,boxShadow:"0 1px 3px rgba(0, 0, 0, 0.06)"}),s=$t.create("error-card-header",{display:"flex",alignItems:"flex-start",gap:"0.75rem"}),a=$t.create("error-card-icon",{width:"1.25rem",height:"1.25rem",color:i.iconColor,flexShrink:"0",marginTop:"0.125rem"}),l=$t.create("error-card-content-wrapper",{flex:"1",minWidth:"0",display:"flex",justifyContent:"space-between",alignItems:"flex-start",gap:"0.75rem"}),c=$t.create("error-card-content",{flex:"1",minWidth:"0",display:"flex",flexDirection:"column",gap:"0.5rem"}),d=$t.create("error-card-title",{fontSize:bt.fontSize.default,fontWeight:"600",color:i.titleColor,lineHeight:"1.4"}),u=$t.create("error-card-message",{fontSize:bt.fontSize.small,color:bt.colors.foreground,lineHeight:"1.5",opacity:"0.9"}),h=$t.create("error-card-details",{fontSize:"0.8125rem",color:bt.colors.mutedForeground,fontFamily:"monospace",backgroundColor:bt.colors.muted,padding:"0.625rem",borderRadius:bt.radius.small,wordBreak:"break-word",lineHeight:"1.4"}),m=$t.create("error-card-support",{fontSize:"0.8125rem",color:bt.colors.mutedForeground,lineHeight:"1.4"}),f=$t.create("error-card-dismiss",{padding:"0.25rem",border:"none",backgroundColor:"transparent",color:bt.colors.mutedForeground,cursor:"pointer",borderRadius:bt.radius.small,lineHeight:"1",display:"flex",alignItems:"center",justifyContent:"center",width:"1.75rem",height:"1.75rem",flexShrink:"0",transition:bt.transition});return $t.pseudoElement("error-card-dismiss",":hover",{backgroundColor:bt.colors.muted,color:bt.colors.foreground}),Fe("div",{className:Dt(o,n),children:Fe("div",{className:s,children:[Fe(()=>"warning"===e.severity?Fe("svg",{className:a,fill:"currentColor",viewBox:"0 0 20 20",children:Fe("path",{fillRule:"evenodd",d:"M8.257 3.099c.765-1.36 2.722-1.36 3.486 0l5.58 9.92c.75 1.334-.213 2.98-1.742 2.98H4.42c-1.53 0-2.493-1.646-1.743-2.98l5.58-9.92zM11 13a1 1 0 11-2 0 1 1 0 012 0zm-1-8a1 1 0 00-1 1v3a1 1 0 002 0V6a1 1 0 00-1-1z",clipRule:"evenodd"})}):Fe("svg",{className:a,fill:"currentColor",viewBox:"0 0 20 20",children:Fe("path",{fillRule:"evenodd",d:"M10 18a8 8 0 100-16 8 8 0 000 16zM8.707 7.293a1 1 0 00-1.414 1.414L8.586 10l-1.293 1.293a1 1 0 101.414 1.414L10 11.414l1.293 1.293a1 1 0 001.414-1.414L11.414 10l1.293-1.293a1 1 0 00-1.414-1.414L10 8.586 8.707 7.293z",clipRule:"evenodd"})}),{}),Fe("div",{className:l,children:[Fe("div",{className:c,children:[Fe("div",{className:d,children:e.title}),Fe("div",{className:u,children:e.message}),r&&e.details&&Fe("div",{className:h,children:e.details}),Fe("div",{className:m,children:$e(e)})]}),t&&Fe("button",{className:f,onClick:e=>{e.preventDefault(),e.stopPropagation(),t()},"aria-label":"Dismiss error",title:"Dismiss",type:"button",children:Fe("svg",{xmlns:"http://www.w3.org/2000/svg",width:"16",height:"16",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor","stroke-width":"2","stroke-linecap":"round","stroke-linejoin":"round",style:{pointerEvents:"none"},children:[Fe("path",{d:"M18 6 6 18"}),Fe("path",{d:"m6 6 12 12"})]})})]})]})})}function ia(){const{definition:e,currentPageIndex:n,totalPages:r,validationErrors:i,generalErrors:o,quoteIntent:s,isSaving:a,fsm:l}=At(e=>({definition:e.getFormDefinition(),currentPageIndex:e.getCurrentPageIndex(),totalPages:e.getTotalPages(),results:e.getCalculationResult(),validationErrors:e.getValidationErrors(),generalErrors:e.getGeneralErrors(),quoteIntent:e.getQuoteIntent(),isSaving:e.getIsSaving()})),{httpClient:c,urlPromoCode:d}=Wt(),[u,h]=it({status:"idle"}),[m,f]=it(""),p=lt(async e=>{const n=null!=e?e:m;if(n&&n.trim()){if((null==s?void 0:s.id)&&c){h({status:"validating"});try{const e=await c.validatePromoCode(s.id,n.trim());e.valid?h({status:"valid",name:e.name||n}):h({status:"invalid",message:e.message})}catch(e){t(),h({status:"invalid",message:"Unable to validate promo code"})}}}else h({status:"idle"})},[null==s?void 0:s.id,c,m]),g=lt(e=>{"Enter"===e.key&&(e.preventDefault(),p())},[p]),y=st(!1);ot(()=>{d&&!y.current&&(null==s?void 0:s.id)&&c&&(y.current=!0,f(d),(async()=>{try{const e=await c.validatePromoCode(s.id,d.trim());if(e.valid){h({status:"valid",name:e.name||d});const t=l.getFormDefinition().pages.find(e=>e.fields.some(e=>"promo_code"===(e.code||e.id)));t&&l.updateFieldValue(t.id,"promo_code",d)}else{f("");const e=l.getFormDefinition().pages.find(e=>e.fields.some(e=>"promo_code"===(e.code||e.id)));e&&l.updateFieldValue(e.id,"promo_code","")}}catch(e){f("")}})())},[d,null==s?void 0:s.id,c]);const v=e.pages[n];if(!v)return Fe(Js,{title:"Unexpected Error",description:"No page available"});const w=st(new Map),b=(e,t)=>{var n;const r=l.getFormProgress().page_data[v.id],i=null==r?void 0:r[e];if(null!=i&&""!==i)return i;if(t&&("date"===t.type||"monthyear"===t.type)&&(null===(n=t.validation)||void 0===n?void 0:n.defaultDate)){const n=x(t.validation.defaultDate,"monthyear"===t.type);if(n)return l.updateFieldValue(v.id,e,n),n}return""},x=(e,t)=>{var n;const r=(null===(n=null==s?void 0:s.organisation)||void 0===n?void 0:n.timezone)||"Pacific/Auckland",i=(new Date).toLocaleString("en-US",{timeZone:r}),o=new Date(i);let a=new Date(i);switch(e){case"today":a=o;break;case"+1week":a.setDate(o.getDate()+7);break;case"+1month":a.setMonth(o.getMonth()+1);break;case"+1year":a.setFullYear(o.getFullYear()+1);break;default:return""}const l=a.getFullYear(),c=String(a.getMonth()+1).padStart(2,"0"),d=String(a.getDate()).padStart(2,"0");return t?`${l}-${c}-01`:`${l}-${c}-${d}`},k=e=>{const t=l.getFormProgress().page_data[v.id];return((null==t?void 0:t.U)||{})[e]||""},N=l.getFormProgress(),S={};Object.values(N.page_data).forEach(e=>{const{U:t,...n}=e;Object.assign(S,n),t&&Object.keys(t).length>0&&(S.U||(S.U={}),Object.assign(S.U,t))});const C=e=>{if(!e.visibility)return!0;const n=e.visibility.conditions.map(e=>"field"in e?e.field:null).filter(Boolean);n.length>0&&(t((e.label,e.code)),t(Object.keys(S)),n.forEach(e=>{e&&t((S[e],S[e]))}));const r=ce(S,{condition_type:e.visibility.condition_type,conditions:e.visibility.conditions}),i="show"===e.visibility.action?r.matched:!r.matched;return w.current.get(e.id)!==i&&(t((e.label,e.code)),t(),w.current.set(e.id,i)),i},_=(()=>{for(const e of v.fields)if(e.blocker&&C(e))if(e.blocker.conditions&&e.blocker.conditions.length>0){if(ce(S,{condition_type:e.blocker.condition_type||"or",conditions:e.blocker.conditions}).matched)return{field:e,config:e.blocker}}else if(void 0!==e.blocker.trigger_value){const t=e.code||e.id,n=b(t,e);if(String(n)===String(e.blocker.trigger_value))return{field:e,config:e.blocker}}return null})(),$=null==s?void 0:s.payment_return,I=$&&("declined"===$.paymentStatus||"cancelled"===$.paymentStatus||"error"===$.paymentStatus),T=l.getFormProgress().completed_pages||[];return Fe(ns,{title:v.title,description:v.description,hideHeader:!0,children:Fe("div",{children:[I&&Fe(Ss,{type:$.paymentStatus,transactionId:$.paymentTransactionId||void 0,isOpen:!0,onClose:()=>{l.updateQuoteIntent({payment_return:void 0})}}),Fe(Mt,{children:[Fe("div",{className:$t.create("form-layout",{display:"grid",gridTemplateColumns:"1fr 320px",gap:bt.spacing.lg},{"(max-width: 950px)":{display:"flex",flexDirection:"column",gap:bt.spacing.sm}}),children:[Fe("div",{className:$t.create("form-content-wrapper",{minWidth:"0",backgroundColor:bt.colors.card,boxShadow:bt.shadow.sm,borderRadius:bt.radius.large,display:"flex",flexDirection:"column",minHeight:"100%"},{"(max-width: 950px)":{minHeight:"auto"}}),children:[Fe("div",{className:$t.create("mobile-sidebar-container",{display:"none"},{"(max-width: 950px)":{display:"block"}}),children:Fe(Gs,{pages:e.pages,currentPageIndex:n,completedPages:T})}),n>0&&Fe("div",{className:$t.create("page-heading-container",{paddingInline:bt.spacing.lg,paddingTop:bt.spacing.lg},{"(max-width: 950px)":{paddingInline:bt.spacing.lg,paddingTop:bt.spacing.lg},"(max-width: 480px)":{paddingInline:bt.spacing.md,paddingTop:bt.spacing.md}}),children:[Fe("div",{className:$t.create("page-heading-content",{display:"flex",alignItems:"center",justifyContent:"space-between",gap:bt.spacing.lg}),children:Fe("div",{className:$t.create("page-heading-text",{flex:"1",minWidth:"0"}),children:[Fe("h1",{className:$t.create("page-template-title",{margin:"0",fontSize:"1.5rem",fontWeight:"700",lineHeight:"1.3",color:bt.colors.primary,letterSpacing:"-0.025em"},{"(max-width: 480px)":{fontSize:"1.25rem"}}),children:v.title}),v.description&&Fe("p",{className:$t.create("page-template-description",{margin:"0",marginTop:bt.spacing.sm,fontSize:bt.fontSize.small,lineHeight:"1.5",color:bt.colors.foreground,opacity:"0.7"}),children:v.description})]})}),Fe("hr",{className:$t.create("page-heading-border",{marginTop:bt.spacing.lg,border:"0",borderTop:`1px solid ${bt.colors.border}`,height:"0"})})]}),0===n&&(null==s?void 0:s.organisation)&&Fe(Qs,{organisation:s.organisation}),o.length>0&&o.map(e=>Fe(ra,{error:e,onDismiss:()=>l.dismissGeneralError(e.id)},e.id)),Fe("div",{className:$t.create("form-card",{backgroundColor:bt.colors.card,borderRadius:bt.radius.large,padding:bt.spacing.lg,boxShadow:bt.shadow.sm,display:"flex",flexDirection:"column",gap:bt.spacing.xl,flex:"1",minWidth:"0",overflow:"hidden"},{"(max-width: 950px)":{padding:bt.spacing.md,gap:bt.spacing.lg,flex:"initial"},"(max-width: 480px)":{padding:bt.spacing.md,gap:bt.spacing.md}}),children:[Fe("form",{onSubmit:e=>e.preventDefault(),className:$t.create("form-fields-container",{flex:"1"},{"(max-width: 950px)":{flex:"initial"}}),children:Fe("div",{className:$t.create("form-content-page",{display:"grid",gap:bt.spacing.md,rowGap:bt.spacing.lg,gridTemplateColumns:"repeat(12, minmax(0, 1fr))",minWidth:"0"},{"(max-width: 600px)":{display:"flex",flexDirection:"column"}}),children:v.fields.map(e=>{const t=e.code||e.id,n="promo_code"===t;if(!C(e))return null;if("section"===e.type)return Fe(na,{field:e,errors:[],children:Fe("span",{})},e.id);if("notice"===e.type)return Fe(na,{field:e,errors:[],children:Fe("span",{})},e.id);const r="validating"===u.status,o=n?Fe("button",{type:"button",onClick:()=>p(),disabled:!m.trim()||r,style:{height:"2.75rem",minWidth:"5rem",padding:"0 1rem",fontSize:bt.fontSize.small,backgroundColor:bt.colors.primary,color:bt.colors.primaryForeground,border:"none",borderRadius:bt.radius.default,cursor:m.trim()&&!r?"pointer":"not-allowed",opacity:m.trim()&&!r?1:.5,whiteSpace:"nowrap"},children:r?Fe(Rt,{size:"small"}):"Apply"}):void 0,s=!n||"valid"!==u.status&&"invalid"!==u.status?null:Fe("div",{style:{marginTop:"0.5rem"},children:["valid"===u.status&&Fe("span",{style:{color:"#22c55e",fontSize:bt.fontSize.small,display:"flex",alignItems:"center",gap:"0.25rem"},children:[Fe("svg",{width:"16",height:"16",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round",children:Fe("path",{d:"M20 6 9 17l-5-5"})}),'Promo code "',u.name,'" applied']}),"invalid"===u.status&&Fe("span",{style:{color:bt.colors.destructive,fontSize:bt.fontSize.small,display:"flex",alignItems:"center",gap:"0.25rem"},children:[Fe("svg",{width:"16",height:"16",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round",children:[Fe("circle",{cx:"12",cy:"12",r:"10"}),Fe("line",{x1:"15",y1:"9",x2:"9",y2:"15"}),Fe("line",{x1:"9",y1:"9",x2:"15",y2:"15"})]}),u.message]})]});return Fe(na,{field:e,errors:i,children:[Fe(qs,{value:b(t,e).toString(),onChange:r=>{let i=r;"boolean"!==e.type&&"checkbox"!==e.type||(i="true"===r),l.updateFieldValue(v.id,t,i),n&&(f(r),h({status:"idle"}))},onKeyDown:n?g:void 0,answer:k(t),onAnswerChange:n=>{var r;l.updateFieldAnswer(v.id,t,n,null===(r=e.boolean_config)||void 0===r?void 0:r.details_rating_factor_id)},id:t,name:t,type:e.type,placeholder:e.placeholder,required:e.required,options:e.options,validation:e.validation,booleanConfig:e.boolean_config,add_null_option:e.add_null_option,null_option_label:e.null_option_label,inline:e.inline,hasError:l.hasFieldErrors(t),errors:l.getFieldErrors(t),suffix:o}),s]},e.id)})})}),_&&Fe("div",{className:$t.create("form-blocker",{backgroundColor:bt.colors.accent,borderRadius:bt.radius.default,padding:bt.spacing.lg,borderLeft:`4px solid ${bt.colors.primary}`}),children:[Fe("h3",{className:$t.create("form-blocker-title",{margin:"0",marginBottom:bt.spacing.sm,fontSize:"1.125rem",fontWeight:"600",color:bt.colors.accentForeground}),children:_.config.title}),Fe("p",{className:$t.create("form-blocker-message",{margin:"0",fontSize:bt.fontSize.default,lineHeight:"1.6",color:bt.colors.accentForeground,opacity:"0.9"}),children:_.config.message}),_.config.link&&Fe("a",{href:_.config.link.url,target:"_blank",rel:"noopener noreferrer",className:$t.create("form-blocker-link",{display:"inline-flex",alignItems:"center",gap:"0.375rem",marginTop:bt.spacing.md,fontSize:bt.fontSize.default,fontWeight:"600",color:bt.colors.primary,textDecoration:"none"}),children:[_.config.link.label,Fe("svg",{width:"16",height:"16",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round",children:[Fe("path",{d:"M18 13v6a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V8a2 2 0 0 1 2-2h6"}),Fe("polyline",{points:"15 3 21 3 21 9"}),Fe("line",{x1:"10",y1:"14",x2:"21",y2:"3"})]})]})]}),Fe("hr",{className:$t.create("form-navigation-border",{border:"0",borderTop:`1px solid ${bt.colors.border}`,height:"0"})}),Fe("div",{className:0===n?$t.create("form-navigation-inline-first",{paddingTop:bt.spacing.lg,display:"flex",alignItems:"center",justifyContent:"flex-end"}):$t.create("form-navigation-inline",{paddingTop:bt.spacing.lg,display:"flex",alignItems:"center",justifyContent:"space-between"}),children:[n>0&&Fe(is,{onClick:()=>null==l?void 0:l.navigateToPreviousPage(),variant:"outline",children:"Back"}),!_&&Fe(is,{onClick:async function(){l.validateCurrentPage().length>0||(n===r-1?await(null==l?void 0:l.calculateQuote()):await(null==l?void 0:l.navigateToNextPage()))},disabled:a,loading:a,children:n===r-1?"Get Quote":"Continue"})]})]})]}),Fe("div",{className:$t.create("form-sidebar",{display:"block"},{"(max-width: 950px)":{display:"none"}}),children:Fe(Zs,{pages:e.pages,currentPageIndex:n,completedPages:T})}),Fe("div",{className:$t.create("form-mobile-actions",{display:"none"},{"(max-width: 950px)":{display:"block"}}),children:Fe(Vs,{pages:e.pages,completedPages:T})})]}),(null==s?void 0:s.reference)&&Fe("p",{className:$t.create("form-quote-reference",{margin:"0",marginTop:bt.spacing.md,textAlign:"center",fontSize:bt.fontSize.small,color:bt.colors.mutedForeground}),children:["Quote reference: ",Fe("strong",{style:{color:bt.colors.foreground,fontWeight:600},children:s.reference})]})]})]})})}function oa(){var e,t,n;const{quoteIntent:r,fsm:i}=At(e=>({quoteIntent:e.getQuoteIntent(),fsm:e})),o=null==r?void 0:r.payment_return,s=null==o?void 0:o.paymentTransactionId,a=null==o?void 0:o.transactionStatus,l=null===(e=null==r?void 0:r.organisation)||void 0===e?void 0:e.name,c=null===(t=null==r?void 0:r.organisation)||void 0===t?void 0:t.admin_email,d=null===(n=null==r?void 0:r.organisation)||void 0===n?void 0:n.phone,u=c||d;ot(()=>{if(s&&r){const e=null==o?void 0:o.paymentStatus,t=null==a?void 0:a.amount;"success"===e&&a?je(r,s,t||0,a.gateway_code,t,void 0):e&&["declined","cancelled","error"].includes(e)&&We(r,s,t,null==a?void 0:a.gateway_code,e,null==a?void 0:a.status)}const e=setTimeout(()=>{null==i||i.clearStoredQuoteIntent()},2e3);return()=>clearTimeout(e)},[i,s,o,r]);const h=$t.create("success-card",{backgroundColor:bt.colors.card,borderRadius:bt.radius.large,padding:bt.spacing.xl,boxShadow:bt.shadow.sm,maxWidth:"42rem",margin:"0 auto"},{"(max-width: 768px)":{padding:bt.spacing.lg},"(max-width: 480px)":{padding:bt.spacing.md}}),m=$t.create("success-icon-container",{display:"flex",justifyContent:"center",marginBottom:bt.spacing.lg}),f=$t.create("success-icon",{width:"5rem",height:"5rem",borderRadius:"50%",backgroundColor:"#10b981",color:"white",display:"flex",alignItems:"center",justifyContent:"center"}),p=$t.create("success-header",{textAlign:"center",marginBottom:bt.spacing.xl}),g=$t.create("success-title",{margin:"0",marginBottom:bt.spacing.sm,fontSize:"2rem",fontWeight:"700",color:bt.colors.primary,lineHeight:"1.2",letterSpacing:"-0.025em"},{"(max-width: 768px)":{fontSize:"1.75rem"},"(max-width: 480px)":{fontSize:"1.5rem"}}),y=$t.create("success-message",{fontSize:bt.fontSize.default,lineHeight:"1.6",color:bt.colors.foreground,opacity:"0.9",margin:"0"}),v=$t.create("success-contact-section",{borderTop:`1px solid ${bt.colors.border}`,paddingTop:bt.spacing.xl,marginTop:bt.spacing.xl}),w=$t.create("success-contact-title",{fontSize:"1.125rem",fontWeight:"600",color:bt.colors.foreground,marginBottom:bt.spacing.md,textAlign:"center"}),b=$t.create("success-contact-details",{backgroundColor:bt.colors.accent,borderRadius:bt.radius.default,padding:bt.spacing.md,display:"flex",flexDirection:"column",gap:bt.spacing.sm,marginBottom:bt.spacing.lg}),x=$t.create("success-contact-item",{display:"flex",alignItems:"center",gap:bt.spacing.sm,fontSize:bt.fontSize.small,color:bt.colors.accentForeground}),k=$t.create("success-actions",{display:"flex",gap:bt.spacing.md,flexWrap:"wrap",justifyContent:"center"}),N=$t.create("success-reference",{fontSize:bt.fontSize.small,color:bt.colors.mutedForeground,textAlign:"center",marginTop:bt.spacing.md});return Fe(ns,{title:"Payment Successful",description:"Your payment has been processed successfully",noSubscription:!0,hideHeader:!0,children:Fe(Mt,{children:Fe(ss,{children:Fe("div",{className:h,children:[Fe("div",{className:m,children:Fe("div",{className:f,children:Fe("svg",{xmlns:"http://www.w3.org/2000/svg",width:"48",height:"48",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor","stroke-width":"2","stroke-linecap":"round","stroke-linejoin":"round",children:Fe("path",{d:"M20 6 9 17l-5-5"})})})}),Fe("div",{className:p,children:[Fe("h1",{className:g,children:"Payment Complete!"}),Fe("p",{className:y,children:["Your payment has been processed successfully and your policy is being set up. You will receive your policy documentation by email."," ","For now, you can relax knowing you're ",l?`covered by ${l}`:"covered","."]})]}),u&&Fe("div",{className:v,children:[Fe("h3",{className:w,children:"Need assistance?"}),Fe("div",{className:b,children:[c&&Fe("div",{className:x,children:[Fe("svg",{xmlns:"http://www.w3.org/2000/svg",width:"16",height:"16",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor","stroke-width":"2","stroke-linecap":"round","stroke-linejoin":"round",children:[Fe("rect",{width:"20",height:"16",x:"2",y:"4",rx:"2"}),Fe("path",{d:"m22 7-8.97 5.7a1.94 1.94 0 0 1-2.06 0L2 7"})]}),Fe("span",{children:c})]}),d&&Fe("div",{className:x,children:[Fe("svg",{xmlns:"http://www.w3.org/2000/svg",width:"16",height:"16",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor","stroke-width":"2","stroke-linecap":"round","stroke-linejoin":"round",children:Fe("path",{d:"M22 16.92v3a2 2 0 0 1-2.18 2 19.79 19.79 0 0 1-8.63-3.07 19.5 19.5 0 0 1-6-6 19.79 19.79 0 0 1-3.07-8.67A2 2 0 0 1 4.11 2h3a2 2 0 0 1 2 1.72 12.84 12.84 0 0 0 .7 2.81 2 2 0 0 1-.45 2.11L8.09 9.91a16 16 0 0 0 6 6l1.27-1.27a2 2 0 0 1 2.11-.45 12.84 12.84 0 0 0 2.81.7A2 2 0 0 1 22 16.92z"})}),Fe("span",{children:d})]})]}),Fe("div",{className:k,children:[d&&Fe(is,{variant:"outline",onClick:()=>window.open(`tel:${d}`),children:[Fe("svg",{xmlns:"http://www.w3.org/2000/svg",width:"16",height:"16",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor","stroke-width":"2","stroke-linecap":"round","stroke-linejoin":"round",style:{marginRight:"0.5rem"},children:Fe("path",{d:"M22 16.92v3a2 2 0 0 1-2.18 2 19.79 19.79 0 0 1-8.63-3.07 19.5 19.5 0 0 1-6-6 19.79 19.79 0 0 1-3.07-8.67A2 2 0 0 1 4.11 2h3a2 2 0 0 1 2 1.72 12.84 12.84 0 0 0 .7 2.81 2 2 0 0 1-.45 2.11L8.09 9.91a16 16 0 0 0 6 6l1.27-1.27a2 2 0 0 1 2.11-.45 12.84 12.84 0 0 0 2.81.7A2 2 0 0 1 22 16.92z"})}),"Call Us"]}),c&&Fe(is,{variant:"outline",onClick:()=>window.open(`mailto:${c}`),children:[Fe("svg",{xmlns:"http://www.w3.org/2000/svg",width:"16",height:"16",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor","stroke-width":"2","stroke-linecap":"round","stroke-linejoin":"round",style:{marginRight:"0.5rem"},children:[Fe("rect",{width:"20",height:"16",x:"2",y:"4",rx:"2"}),Fe("path",{d:"m22 7-8.97 5.7a1.94 1.94 0 0 1-2.06 0L2 7"})]}),"Email Us"]})]})]}),r.reference&&Fe("div",{className:N,children:["Quote Reference: ",Fe("strong",{children:r.reference})]})]})})})})}function sa({isOpen:e,onClose:t,onSuccess:n,paymentRequest:r,httpClient:i}){const[o,s]=it("initiating"),[a,l]=it(null),[c,d]=it(null),[u,h]=it(null);ot(()=>{e&&r&&m()},[e,r]);const m=async()=>{var e;if(r)try{s("initiating"),l(null);const t={...r,returnUrl:window.location.href},n=null===(e=r.metadata)||void 0===e?void 0:e.gateway;if(!n)throw new Error("Payment gateway not found");const o=await i.initiatePayment(t,n);h(o.transaction_id),s("redirecting"),window.location.href=o.gateway_acceptance_url}catch(e){l(e.message||"Failed to initiate payment"),s("failed")}},f=()=>{c&&!c.closed&&c.close(),s("initiating"),l(null),h(null),d(null),t()};return e?Fe("div",{className:$t.create("modal-overlay",{position:"fixed",top:"0",left:"0",width:"100%",height:"100%",backgroundColor:"rgba(0, 0, 0, 0.5)",display:"flex",alignItems:"center",justifyContent:"center",zIndex:"1000"}),children:[Fe("div",{className:$t.create("modal-content",{backgroundColor:bt.colors.card,borderRadius:bt.radius.large,padding:"2rem",minWidth:"400px",maxWidth:"500px",boxShadow:"0 10px 25px rgba(0, 0, 0, 0.2)",border:`1px solid ${bt.colors.border}`}),children:[Fe("div",{className:$t.create("modal-header",{textAlign:"center",marginBottom:"1.5rem"}),children:[Fe("div",{className:$t.create("status-icon",{fontSize:"3rem",marginBottom:"1rem"}),children:(()=>{switch(o){case"completed":return"✅";case"cancelled":return"❌";case"failed":return"⚠️";default:return"⏳"}})()}),Fe("h2",{className:$t.create("modal-title",{margin:"0",color:bt.colors.foreground,fontSize:bt.fontSize.large}),children:"Payment Processing"})]}),Fe("div",{className:$t.create("modal-body",{textAlign:"center",marginBottom:"2rem"}),children:[Fe(ls,{className:$t.create("status-message",{fontSize:bt.fontSize.default,color:bt.colors.mutedForeground,marginBottom:"1rem"}),children:(()=>{switch(o){case"initiating":return"Setting up your payment...";case"redirecting":return"Redirecting to payment portal...";case"processing":default:return"Processing payment...";case"polling":return"Checking payment status...";case"completed":return"Payment completed successfully!";case"cancelled":return"Payment was cancelled";case"failed":return"Payment failed"}})()}),a&&Fe(ls,{className:$t.create("error-message",{color:bt.colors.destructive,fontSize:bt.fontSize.small,padding:"0.75rem",backgroundColor:bt.colors.destructive+"10",borderRadius:bt.radius.default,border:`1px solid ${bt.colors.destructive}30`}),children:a}),("redirecting"===o||"initiating"===o)&&Fe("div",{className:$t.create("loading-indicator",{display:"inline-block",width:"20px",height:"20px",marginTop:"1rem",border:`3px solid ${bt.colors.border}`,borderTop:`3px solid ${bt.colors.primary}`,borderRadius:"50%",animation:"spin 1s linear infinite"})})]}),Fe("div",{className:$t.create("modal-actions",{display:"flex",gap:"1rem",justifyContent:"center"}),children:"failed"===o||"cancelled"===o?Fe(_,{children:[Fe(is,{onClick:f,variant:"outline",children:"Close"}),"cancelled"===o&&Fe(is,{onClick:()=>{s("initiating"),l(null),m()},children:"Try Again"})]}):Fe(is,"completed"===o?{onClick:f,children:"Continue"}:{onClick:f,variant:"outline",disabled:"initiating"===o,children:"Cancel"})})]}),Fe("style",{children:"\n @keyframes spin {\n 0% { transform: rotate(0deg); }\n 100% { transform: rotate(360deg); }\n }\n "})]}):null}function aa({transactionId:e,organisationId:t,allowCancel:n=!0}){const{httpClient:r}=Wt(),[i,o]=it(!0),[s,a]=it(null),[l,c]=it(null),[d,u]=it(!1),[h,m]=it(!1),[f,p]=it(!1);ot(()=>{g()},[e]);const g=async()=>{try{if(o(!0),a(null),!r)throw new Error("HTTP client not available");const n=r.getBaseUrl(),i=await fetch(`${n}/payments/bank-transfer/${e}?orgId=${t}`);if(!i.ok)throw new Error(`Failed to load bank transfer details: ${i.statusText}`);const s=await i.json(),l=s.data||s;c({bank_account_name:l.bank_account_name,bank_account_number:l.bank_account_number,instructions_html:l.instructions_html,reference:l.reference,amount:Number(l.amount),currency:l.currency})}catch(e){a(e.message||"Failed to load bank transfer details")}finally{o(!1)}};return i?Fe(rs,{message:"Loading payment details..."}):s?Fe(ns,{title:"Error",description:"Failed to load bank transfer details",noSubscription:!0,hideHeader:!0,children:Fe(Mt,{children:Fe(ss,{children:Fe("div",{className:$t.create("error-card",{backgroundColor:bt.colors.card,borderRadius:bt.radius.large,padding:bt.spacing.xl,boxShadow:bt.shadow.sm,maxWidth:"42rem",margin:"0 auto",textAlign:"center"},{"(max-width: 480px)":{padding:bt.spacing.lg}}),children:[Fe("div",{className:$t.create("error-icon",{fontSize:"3rem",marginBottom:bt.spacing.md,color:bt.colors.destructive}),children:"⚠️"}),Fe("h2",{className:$t.create("error-title",{margin:"0",marginBottom:bt.spacing.sm,color:bt.colors.foreground}),children:"Error Loading Payment Details"}),Fe("p",{className:$t.create("error-message",{color:bt.colors.mutedForeground}),children:s})]})})})}):l?Fe(ns,{title:"Bank Transfer Payment",description:"Complete your payment via bank transfer",noSubscription:!0,hideHeader:!0,children:Fe(Mt,{children:[Fe(ss,{children:Fe("div",{className:$t.create("bank-transfer-container",{backgroundColor:bt.colors.card,borderRadius:bt.radius.large,maxWidth:"42rem",margin:"0 auto",overflow:"hidden",boxShadow:"0 20px 60px rgba(0,0,0,0.1)"}),children:[Fe("div",{style:{backgroundColor:bt.colors.primary},className:$t.create("bank-transfer-header",{color:"white",padding:"2.5rem 2rem",textAlign:"center"},{"(max-width: 480px)":{padding:"1.5rem 1rem"}}),children:[Fe("h1",{className:$t.create("header-title",{fontSize:"1.75rem",fontWeight:"700",margin:"0",marginBottom:"0.5rem"},{"(max-width: 480px)":{fontSize:"1.25rem",marginBottom:"0.25rem"}}),children:"Bank Transfer Payment"}),Fe("p",{className:$t.create("header-subtitle",{fontSize:"1rem",margin:"0",opacity:"0.9"},{"(max-width: 480px)":{fontSize:bt.fontSize.small}}),children:"Complete your payment using the details below"})]}),Fe("div",{className:$t.create("bank-transfer-content",{padding:"2rem"},{"(max-width: 480px)":{padding:"1rem"}}),children:[Fe("div",{className:$t.create("payment-details-card",{backgroundColor:"#f9fafb",border:"1px solid #e5e7eb",borderRadius:bt.radius.default,padding:"1.5rem",marginBottom:"1.5rem"},{"(max-width: 480px)":{padding:"1rem",marginBottom:"1rem"}}),children:[Fe("div",{className:$t.create("detail-row-amount",{display:"flex",justifyContent:"space-between",alignItems:"center",padding:"0.75rem 0",borderBottom:"1px solid #e5e7eb"},{"(max-width: 480px)":{flexDirection:"column",alignItems:"flex-start",gap:"0.5rem"}}),children:[Fe("span",{className:$t.create("detail-label",{color:"#6b7280",fontSize:bt.fontSize.default}),children:"Amount to Transfer"}),Fe("span",{className:$t.create("detail-value-amount",{color:bt.colors.primary,fontSize:"1.5rem",fontWeight:"700"},{"(max-width: 480px)":{fontSize:"1.25rem"}}),children:["$",l.amount.toFixed(2)," ",l.currency]})]}),Fe("div",{className:$t.create("detail-row-name",{display:"flex",justifyContent:"space-between",alignItems:"center",padding:"0.75rem 0",borderBottom:"1px solid #e5e7eb"},{"(max-width: 480px)":{flexDirection:"column",alignItems:"flex-start",gap:"0.25rem"}}),children:[Fe("span",{className:$t.create("detail-label-name",{color:"#6b7280",fontSize:bt.fontSize.default}),children:"Account Name"}),Fe("span",{className:$t.create("detail-value-name",{color:bt.colors.foreground,fontSize:bt.fontSize.default,fontWeight:"600"}),children:l.bank_account_name})]}),Fe("div",{className:$t.create("detail-row-number",{display:"flex",justifyContent:"space-between",alignItems:"center",padding:"0.75rem 0",borderBottom:"1px solid #e5e7eb"},{"(max-width: 480px)":{flexDirection:"column",alignItems:"flex-start",gap:"0.25rem"}}),children:[Fe("span",{className:$t.create("detail-label-number",{color:"#6b7280",fontSize:bt.fontSize.default}),children:"Account Number"}),Fe("span",{className:$t.create("detail-value-number",{color:bt.colors.foreground,fontSize:bt.fontSize.default,fontWeight:"600"}),children:l.bank_account_number})]}),Fe("div",{className:$t.create("detail-row-ref",{display:"flex",justifyContent:"space-between",alignItems:"center",padding:"0.75rem 0"},{"(max-width: 480px)":{flexDirection:"column",alignItems:"flex-start",gap:"0.25rem"}}),children:[Fe("span",{className:$t.create("detail-label-ref",{color:"#6b7280",fontSize:bt.fontSize.default}),children:"Payment Reference"}),Fe("span",{className:$t.create("detail-value-ref",{color:bt.colors.foreground,fontSize:bt.fontSize.default,fontWeight:"600"}),children:l.reference})]})]}),Fe("div",{className:$t.create("instructions-card",{backgroundColor:bt.colors.muted,border:`1px solid ${bt.colors.border}`,borderRadius:bt.radius.default,padding:"1.25rem",marginBottom:"1.5rem"},{"(max-width: 480px)":{padding:"1rem",marginBottom:"1rem"}}),children:[Fe("h3",{className:$t.create("instructions-title",{margin:"0 0 0.75rem 0",fontSize:bt.fontSize.default,fontWeight:"600",color:bt.colors.foreground}),children:"Payment Instructions"}),Fe("p",{className:$t.create("instructions-text",{margin:"0 0 0.75rem 0",fontSize:bt.fontSize.small,lineHeight:"1.6",color:bt.colors.foreground}),children:[Fe("strong",{children:"Important:"})," Please include the payment reference when making your transfer to ensure your payment is processed correctly."]}),Fe("p",{className:$t.create("instructions-text",{margin:"0",fontSize:bt.fontSize.small,lineHeight:"1.6",color:bt.colors.foreground}),children:"Once we receive your payment, we'll process your quote and send you a confirmation email."})]}),Fe("div",{className:$t.create("button-wrapper",{textAlign:"center",marginBottom:"1.5rem",display:"flex",gap:"1rem",justifyContent:"center",flexWrap:"wrap"},{"(max-width: 480px)":{flexDirection:"column",gap:"0.75rem",marginBottom:"1rem"}}),children:[Fe("button",{onClick:()=>{u(!0)},style:{backgroundColor:bt.colors.primary},className:$t.create("confirm-button",{color:"white",border:"none",borderRadius:bt.radius.default,padding:"0.75rem 2rem",fontSize:bt.fontSize.default,fontWeight:"600",cursor:"pointer",transition:"opacity 150ms ease"},{"(max-width: 480px)":{width:"100%",padding:"0.625rem 1.5rem"}}),children:"I've Made the Transfer"}),n&&Fe("button",{onClick:()=>{m(!0)},className:$t.create("cancel-button",{color:"#6b7280",backgroundColor:"white",border:"2px solid #e5e7eb",borderRadius:bt.radius.default,padding:"0.75rem 2rem",fontSize:bt.fontSize.default,fontWeight:"600",cursor:"pointer",transition:"all 150ms ease"},{"(max-width: 480px)":{width:"100%",padding:"0.625rem 1.5rem"}}),children:"Cancel"})]}),Fe("p",{className:$t.create("footer-text",{textAlign:"center",color:"#6b7280",fontSize:bt.fontSize.small,margin:"0"}),children:"Your quote has been saved. We'll process it once payment is received."})]})]})}),h&&Fe("div",{className:$t.create("modal-overlay",{position:"fixed",top:"0",left:"0",width:"100%",height:"100%",backgroundColor:"rgba(0, 0, 0, 0.5)",display:"flex",alignItems:"center",justifyContent:"center",zIndex:"1000"}),onClick:()=>!f&&m(!1),children:Fe("div",{className:$t.create("modal-content",{backgroundColor:bt.colors.card,borderRadius:bt.radius.large,padding:bt.spacing.xl,maxWidth:"400px",boxShadow:"0 10px 25px rgba(0, 0, 0, 0.2)",border:`1px solid ${bt.colors.border}`,textAlign:"center"},{"(max-width: 480px)":{padding:bt.spacing.lg,margin:"0 1rem"}}),onClick:e=>e.stopPropagation(),children:[Fe("div",{className:$t.create("warning-icon",{fontSize:"4rem",marginBottom:bt.spacing.md}),children:"⚠️"}),Fe("h3",{className:$t.create("modal-title",{margin:"0",marginBottom:bt.spacing.sm,color:bt.colors.foreground,fontSize:bt.fontSize.large,fontWeight:"600"}),children:"Are you sure?"}),Fe("p",{className:$t.create("modal-message",{margin:"0",marginBottom:bt.spacing.lg,color:bt.colors.foreground,lineHeight:"1.6"}),children:"This will take you back to the checkout page."}),Fe("div",{className:$t.create("modal-buttons",{display:"flex",flexDirection:"column-reverse",gap:"0.75rem",justifyContent:"center"}),children:[Fe("button",{onClick:()=>m(!1),disabled:f,className:$t.create("no-button",{backgroundColor:"#f3f4f6",color:bt.colors.foreground,border:"none",borderRadius:bt.radius.default,padding:`${bt.spacing.sm} ${bt.spacing.lg}`,fontSize:bt.fontSize.default,fontWeight:"500",cursor:f?"not-allowed":"pointer",transition:"opacity 150ms ease",opacity:f?"0.5":"1",width:"100%"}),children:"No, Go Back"}),Fe("button",{onClick:async()=>{if(r)try{p(!0);const n=r.getBaseUrl();if(!(await fetch(`${n}/payments/${e}/cancel-bank-transfer?orgId=${t}`,{method:"POST",headers:{"Content-Type":"application/json"}})).ok)throw new Error("Failed to cancel payment");window.location.reload()}catch(e){a("Failed to cancel payment. Please try again."),m(!1),p(!1)}},disabled:f,className:$t.create("yes-button",{backgroundColor:"#ef4444",color:"white",border:"none",borderRadius:bt.radius.default,padding:`${bt.spacing.sm} ${bt.spacing.lg}`,fontSize:bt.fontSize.default,fontWeight:"500",cursor:f?"not-allowed":"pointer",transition:"opacity 150ms ease",opacity:f?"0.5":"1",width:"100%"}),children:f?"Cancelling...":"Yes, Cancel Payment"})]})]})}),d&&Fe("div",{className:$t.create("modal-overlay",{position:"fixed",top:"0",left:"0",width:"100%",height:"100%",backgroundColor:"rgba(0, 0, 0, 0.5)",display:"flex",alignItems:"center",justifyContent:"center",zIndex:"1000"}),onClick:()=>u(!1),children:Fe("div",{className:$t.create("modal-content",{backgroundColor:bt.colors.card,borderRadius:bt.radius.large,padding:bt.spacing.xl,maxWidth:"400px",boxShadow:"0 10px 25px rgba(0, 0, 0, 0.2)",border:`1px solid ${bt.colors.border}`,textAlign:"center"},{"(max-width: 480px)":{padding:bt.spacing.lg,margin:"0 1rem"}}),onClick:e=>e.stopPropagation(),children:[Fe("div",{className:$t.create("success-icon",{fontSize:"4rem",marginBottom:bt.spacing.md}),children:"✓"}),Fe("h3",{className:$t.create("modal-title",{margin:"0",marginBottom:bt.spacing.sm,color:bt.colors.primary,fontSize:bt.fontSize.large,fontWeight:"600"}),children:"Thank You!"}),Fe("p",{className:$t.create("modal-message",{margin:"0",marginBottom:bt.spacing.lg,color:bt.colors.foreground,lineHeight:"1.6"}),children:"We'll process your payment as soon as we receive it. You'll receive a confirmation email once your coverage is activated."}),Fe("button",{onClick:()=>u(!1),className:$t.create("close-button",{backgroundColor:bt.colors.primary,color:"white",border:"none",borderRadius:bt.radius.default,padding:`${bt.spacing.sm} ${bt.spacing.lg}`,fontSize:bt.fontSize.default,fontWeight:"500",cursor:"pointer",transition:"opacity 150ms ease"}),children:"Close"})]})})]})}):null}$t.pseudoElement("sidebar-continue-later-button",":hover",{backgroundColor:bt.colors.muted,borderColor:bt.colors.primary,color:bt.colors.primary});class la{static async loadTheme(e){try{if(t(e.slug),t(e.theme_url),this.loadedThemes.has(e.slug))return void t(e.slug);const n=await fetch(e.theme_url,{method:"GET",headers:{Accept:"text/css"}});if(!n.ok)throw new Error(`Failed to load theme: ${n.status} ${n.statusText}`);const r=await n.text();t(r.substring(0,200));const i=this.parseCSSContent(r);t(i.mappedVariables),t(i.classRules.length),this.applyParsedTheme(e.slug,i),this.loadedThemes.add(e.slug),t(e.slug)}catch(n){throw t(e.slug),n}}static parseCSSContent(e){t();const n={},r={};let i="";const o=e.match(/:root\s*\{([^}]+)\}/);if(o){const e=o[1];t(null==e||e.substring(0,100));const i=/--([\w-]+):\s*([^;]+);/g;let s;for(;null!==(s=i.exec(e));){const e=`--${s[1]}`,i=s[2].trim();n[e]=i;const o=this.variableMapping[e];o?(r[o]=i,t()):t()}}else t();return i=e.replace(/:root\s*\{[^}]+\}/,"").replace(/\/\*[\s\S]*?\*\//g,"").trim(),i&&t(i.substring(0,100)),{variables:n,classRules:i,mappedVariables:r}}static applyParsedTheme(e,n){t(),Promise.resolve().then(function(){return It}).then(({updateBaseVariables:e})=>{Object.keys(n.mappedVariables).length>0&&(t(n.mappedVariables),e(n.mappedVariables))}).catch(()=>{t()}),n.classRules&&this.applyClassRules(e,n.classRules),this.injectOriginalCSS(e,n)}static applyClassRules(e,n){const r=document.getElementById(`insure-os-theme-classes-${e}`);if(r&&r.remove(),n.trim()){const r=document.createElement("style");r.id=`insure-os-theme-classes-${e}`,r.type="text/css",r.textContent=n,document.head.appendChild(r),t()}}static injectOriginalCSS(e,n){const r=document.getElementById(`insure-os-theme-original-${e}`);r&&r.remove();const i={};for(const[e,t]of Object.entries(n.variables))this.variableMapping[e]||(i[e]=t);if(Object.keys(i).length>0){const n=`:root {\n${Object.entries(i).map(([e,t])=>` ${e}: ${t};`).join("\n")}\n}`,r=document.createElement("style");r.id=`insure-os-theme-original-${e}`,r.type="text/css",r.textContent=n,document.head.appendChild(r),t()}}static removeTheme(e){let n=!1;[`insure-os-theme-classes-${e}`,`insure-os-theme-original-${e}`].forEach(e=>{const t=document.getElementById(e);t&&(t.remove(),n=!0)}),n&&(this.loadedThemes.delete(e),t())}static isThemeLoaded(e){return this.loadedThemes.has(e)}static getLoadedThemes(){return Array.from(this.loadedThemes)}}la.loadedThemes=new Set,la.variableMapping={"--color-primary":"--insure-os-primary","--color-primary-foreground":"--insure-os-primary-foreground","--color-secondary":"--insure-os-secondary","--color-secondary-foreground":"--insure-os-secondary-foreground","--color-accent":"--insure-os-accent","--color-accent-foreground":"--insure-os-accent-foreground","--color-background":"--insure-os-background","--color-foreground":"--insure-os-foreground","--color-card":"--insure-os-card","--color-card-foreground":"--insure-os-card-foreground","--color-popover":"--insure-os-popover","--color-popover-foreground":"--insure-os-popover-foreground","--color-muted":"--insure-os-muted","--color-muted-foreground":"--insure-os-muted-foreground","--color-destructive":"--insure-os-destructive","--color-border":"--insure-os-border","--color-input":"--insure-os-input","--color-ring":"--insure-os-ring","--font-sans":"--insure-os-font-family","--radius":"--insure-os-radius","--radius-sm":"--insure-os-radius-sm","--radius-lg":"--insure-os-radius-lg"};var ca=Object.freeze({__proto__:null,ThemeLoader:la});function da(e,t){return"windcave"!==e?"Provider Fee:":"account2account"===t?"Account2Account surcharge:":"Credit card surcharge:"}function ua(e){var t;return(null===(t=e.metadata)||void 0===t?void 0:t.gateway_method)?`${e.gateway_code}:${e.metadata.gateway_method}`:e.gateway_code}function ha({paymentLinkId:e,signedUrl:n}){var r,i,o,s,a,l,c,d,u,h,m,f,p,g;const y=Wt().httpClient,[v,w]=it(null),[b,x]=it(!0),[k,N]=it(null),[S,C]=it(!1),[$,I]=it(null),[T,E]=it(null),[P,z]=it(null),[D,R]=it(!1),[M,O]=it(null),[j,W]=it(null),[A,L]=it(!0),B="undefined"!=typeof window?new URLSearchParams(window.location.search):new URLSearchParams,[q,F]=it("processing"===B.get("status")?B.get("transactionId"):null),[H,U]=it(()=>Ts()),[Y,Z]=it(null),[G,V]=it(!1),[Q,J]=it(null),[K,X]=it(null),[ee,te]=it(null);ot(()=>{ne()},[e]);const ne=async()=>{var r,i,o;try{x(!0);const s=new URLSearchParams(window.location.search),a=s.get("transactionId"),l=s.get("status"),c=s.get("gateway_code"),d=s.get("method"),u=s.get("excess_id");a&&l&&(R(!0),O(l),W(a)),c&&z(d?`${c}:${d}`:c);const h=n?await y.getPaymentLinkDetails(n):await y.getPaymentLinkById(e);if(h.organisation&&h.organisation.theme)try{await la.loadTheme({slug:h.organisation.slug,theme_url:h.organisation.theme.css_url})}catch(e){t()}if("paid"===h.status&&!D&&(!a||"completed"!==l&&"success"!==l))return w(h),void N("This payment link has already been used.");if("superseded"===h.status)return w(h),void N("This payment link has been replaced by a newer one. Please use the latest link you received.");if("confirmed"===h.status)return w(h),void X({message:"Your renewal is confirmed. Your premium funding will continue automatically on the policy start date.",effectiveDate:null===(r=h.metadata)||void 0===r?void 0:r.effective_date});if("expired"===h.status)return w(h),void N("This payment link has expired.");if("cancelled"===h.status)return w(h),void N("This payment link has been cancelled.");if("outdated"===h.status)return w(h),void N("This payment link is no longer valid because the quote has been updated. Please request a new payment link.");if("awaiting_payment"===h.status&&h.pending_bank_transfer){const e=h.pending_bank_transfer;return t(),void te({transactionId:e.transaction_id,organisationId:(null===(i=h.organisation)||void 0===i?void 0:i.id)||""})}if(u){const e=h.calculations.find(e=>e.excess_id===u);e?E(e.id):1===h.calculations.length&&h.calculations[0]&&E(h.calculations[0].id)}else 1===h.calculations.length&&h.calculations[0]&&E(h.calculations[0].id);!c&&1===h.payment_options.length&&h.payment_options[0]&&z(ua(h.payment_options[0])),w(h),(null===(o=h.organisation)||void 0===o?void 0:o.quote_page_url)&&J(h.organisation.quote_page_url)}catch(e){N("Failed to load payment details. Please check your link.")}finally{x(!1)}},re=at(()=>v&&T?v.calculations.find(e=>e.id===T):null,[v,T]),ie=at(()=>v&&P?v.payment_options.find(e=>ua(e)===P):null,[v,P]);if(ee)return Fe(aa,{transactionId:ee.transactionId,organisationId:ee.organisationId,allowCancel:!0});if(K){const e=null==v?void 0:v.organisation,t=null==e?void 0:e.admin_email,n=null==e?void 0:e.phone,r=t||n;return Fe(ns,{title:"Renewal Confirmed",noSubscription:!0,hideHeader:!0,children:Fe(Mt,{children:Fe("div",{className:$t.create("auto-renew-success-card",{backgroundColor:bt.colors.card,borderRadius:bt.radius.large,padding:bt.spacing.xl,boxShadow:bt.shadow.sm,maxWidth:"42rem",margin:"0 auto"}),children:[Fe("div",{className:$t.create("success-icon-container",{display:"flex",justifyContent:"center",marginBottom:bt.spacing.lg}),children:Fe("div",{className:$t.create("success-icon",{width:"5rem",height:"5rem",borderRadius:"50%",backgroundColor:"#10b981",color:"white",display:"flex",alignItems:"center",justifyContent:"center"}),children:Fe("svg",{xmlns:"http://www.w3.org/2000/svg",width:"48",height:"48",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor","stroke-width":"2","stroke-linecap":"round","stroke-linejoin":"round",children:Fe("path",{d:"M20 6 9 17l-5-5"})})})}),Fe("div",{className:$t.create("success-header",{textAlign:"center",marginBottom:bt.spacing.xl}),children:[Fe("h1",{className:$t.create("success-title",{margin:"0",marginBottom:bt.spacing.sm,fontSize:"2rem",fontWeight:"700",color:bt.colors.primary,lineHeight:"1.2",letterSpacing:"-0.025em"}),children:"Renewal Confirmed"}),Fe("p",{className:$t.create("success-message",{fontSize:bt.fontSize.default,lineHeight:"1.6",color:bt.colors.foreground,opacity:"0.9",margin:"0"}),children:K.message})]}),K.effectiveDate&&Fe("div",{className:$t.create("payment-date-box",{backgroundColor:bt.colors.accent,borderRadius:bt.radius.default,padding:bt.spacing.lg,marginBottom:bt.spacing.lg,textAlign:"center"}),children:[Fe("p",{className:$t.create("payment-date-label",{fontSize:bt.fontSize.small,color:bt.colors.mutedForeground,margin:"0",marginBottom:bt.spacing.sm}),children:"Your first payment will be on"}),Fe("p",{className:$t.create("payment-date-value",{fontSize:"1.25rem",fontWeight:"600",color:bt.colors.foreground,margin:"0"}),children:new Date(K.effectiveDate).toLocaleDateString("en-NZ",{weekday:"long",year:"numeric",month:"long",day:"numeric"})})]}),Fe("div",{className:$t.create("info-box",{backgroundColor:bt.colors.muted,borderRadius:bt.radius.default,padding:bt.spacing.md,marginBottom:bt.spacing.lg}),children:Fe("p",{className:$t.create("info-text",{fontSize:bt.fontSize.small,color:bt.colors.mutedForeground,margin:"0",textAlign:"center"}),children:"No further action is required. Your monthly payments will continue as normal."})}),r&&Fe("div",{className:$t.create("contact-section",{borderTop:`1px solid ${bt.colors.border}`,paddingTop:bt.spacing.xl,marginTop:bt.spacing.xl}),children:[Fe("h3",{className:$t.create("contact-title",{fontSize:"1.125rem",fontWeight:"600",color:bt.colors.foreground,marginBottom:bt.spacing.md,textAlign:"center"}),children:"Need assistance?"}),Fe("div",{className:$t.create("contact-details",{backgroundColor:bt.colors.accent,borderRadius:bt.radius.default,padding:bt.spacing.md,display:"flex",flexDirection:"column",gap:bt.spacing.sm}),children:[t&&Fe("div",{className:$t.create("contact-item",{display:"flex",alignItems:"center",gap:bt.spacing.sm,fontSize:bt.fontSize.small,color:bt.colors.accentForeground}),children:Fe("span",{children:["Email: ",t]})}),n&&Fe("div",{className:$t.create("contact-item",{display:"flex",alignItems:"center",gap:bt.spacing.sm,fontSize:bt.fontSize.small,color:bt.colors.accentForeground}),children:Fe("span",{children:["Phone: ",n]})})]})]})]})})})}if(q&&y)return Fe(ns,{title:"Payment Processing",noSubscription:!0,hideHeader:!0,children:Fe(Cs,{httpClient:y,transactionId:q,onResolved:async e=>{const t="completed"===e?"success":"cancelled"===e?"cancelled":"failed"===e?"declined":"error",n=new URL(window.location.href);n.searchParams.set("status",t),q&&n.searchParams.set("transactionId",q),window.history.replaceState({},"",n.toString()),F(null),await ne()},onError:async()=>{const e=new URL(window.location.href);e.searchParams.set("status","error"),window.history.replaceState({},"",e.toString()),F(null),await ne()}})});if(b)return Fe(rs,{message:"Loading payment details..."});if(k){const e=null==v?void 0:v.organisation,t=null==e?void 0:e.quote_page_url,n=null==e?void 0:e.name,r=null==e?void 0:e.admin_email,i=null==e?void 0:e.phone,o=r||i,s="paid"===(null==v?void 0:v.status),a=s?"Payment Completed":"Payment Link Unavailable",l=s?"Thank you, your payment was received.":k,c=$t.create("pl-error-card",{backgroundColor:bt.colors.card,borderRadius:bt.radius.large,padding:bt.spacing.xl,boxShadow:bt.shadow.sm,maxWidth:"42rem",margin:"0 auto"},{"(max-width: 768px)":{padding:bt.spacing.lg},"(max-width: 480px)":{padding:bt.spacing.md}}),d=$t.create("pl-error-icon-container",{display:"flex",justifyContent:"center",marginBottom:bt.spacing.lg}),u=$t.create("pl-error-icon",{width:"4rem",height:"4rem",color:bt.colors.primary}),h=$t.create("pl-error-header",{textAlign:"center",marginBottom:bt.spacing.xl}),m=$t.create("pl-error-title",{fontSize:"2rem",fontWeight:"700",color:bt.colors.primary,marginBottom:bt.spacing.sm,lineHeight:"1.2",letterSpacing:"-0.025em"},{"(max-width: 768px)":{fontSize:"1.75rem"},"(max-width: 480px)":{fontSize:"1.5rem"}}),f=$t.create("pl-error-subtitle",{fontSize:bt.fontSize.default,color:bt.colors.foreground,lineHeight:"1.6",opacity:"0.8"}),p=$t.create("pl-error-contact-section",{borderTop:`1px solid ${bt.colors.border}`,paddingTop:bt.spacing.xl,marginTop:bt.spacing.xl,textAlign:"center"}),g=$t.create("pl-error-contact-text",{fontSize:bt.fontSize.default,color:bt.colors.foreground,marginBottom:bt.spacing.lg}),y=$t.create("pl-error-actions",{display:"flex",gap:bt.spacing.md,flexWrap:"wrap",justifyContent:"center",marginBottom:bt.spacing.lg}),w=()=>Fe("svg",{xmlns:"http://www.w3.org/2000/svg",width:"24",height:"24",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor","stroke-width":"2","stroke-linecap":"round","stroke-linejoin":"round",className:u,children:[Fe("circle",{cx:"12",cy:"12",r:"10"}),Fe("line",{x1:"12",y1:"8",x2:"12",y2:"12"}),Fe("line",{x1:"12",y1:"16",x2:"12.01",y2:"16"})]}),b=()=>Fe("svg",{xmlns:"http://www.w3.org/2000/svg",width:"24",height:"24",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor","stroke-width":"2","stroke-linecap":"round","stroke-linejoin":"round",className:u,children:[Fe("circle",{cx:"12",cy:"12",r:"10"}),Fe("polyline",{points:"8 12.5 11 15.5 16 9.5"})]});return Fe(ns,{title:"Payment Link",noSubscription:!0,hideHeader:!0,children:Fe(Mt,{children:Fe(ss,{children:Fe("div",{className:c,children:[Fe("div",{className:d,children:Fe(s?b:w,{})}),Fe("div",{className:h,children:[Fe("h1",{className:m,children:a}),Fe("p",{className:f,children:l})]}),t&&Fe("div",{className:$t.create("pl-error-quote-action",{display:"flex",justifyContent:"center",marginBottom:o?"0":bt.spacing.sm}),children:Fe(is,{variant:"primary",onClick:()=>{window.location.href=t},children:"Start a New Quote"})}),o&&Fe("div",{className:p,children:[Fe("p",{className:g,children:n?`Need assistance? Contact ${n}`:"Need assistance? Contact us"}),Fe("div",{className:y,children:[i&&Fe(is,{variant:"outline",onClick:()=>window.open(`tel:${i}`),children:[Fe("svg",{xmlns:"http://www.w3.org/2000/svg",width:"16",height:"16",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor","stroke-width":"2","stroke-linecap":"round","stroke-linejoin":"round",style:{marginRight:"0.5rem"},children:Fe("path",{d:"M22 16.92v3a2 2 0 0 1-2.18 2 19.79 19.79 0 0 1-8.63-3.07 19.5 19.5 0 0 1-6-6 19.79 19.79 0 0 1-3.07-8.67A2 2 0 0 1 4.11 2h3a2 2 0 0 1 2 1.72 12.84 12.84 0 0 0 .7 2.81 2 2 0 0 1-.45 2.11L8.09 9.91a16 16 0 0 0 6 6l1.27-1.27a2 2 0 0 1 2.11-.45 12.84 12.84 0 0 0 2.81.7A2 2 0 0 1 22 16.92z"})}),"Call Us"]}),r&&Fe(is,{variant:"outline",onClick:()=>window.open(`mailto:${r}`),children:[Fe("svg",{xmlns:"http://www.w3.org/2000/svg",width:"16",height:"16",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor","stroke-width":"2","stroke-linecap":"round","stroke-linejoin":"round",style:{marginRight:"0.5rem"},children:[Fe("rect",{width:"20",height:"16",x:"2",y:"4",rx:"2"}),Fe("path",{d:"m22 7-8.97 5.7a1.94 1.94 0 0 1-2.06 0L2 7"})]}),"Email Us"]})]})]})]})})})})}if(!v)return null;const oe=new URLSearchParams(window.location.search),se=oe.get("transactionId"),ae=oe.get("status"),le=se&&ae;if("paid"===v.status&&("completed"===ae||"success"===ae||le||D||"completed"===M)){const e=null===(r=v.organisation)||void 0===r?void 0:r.admin_email,t=null===(i=v.organisation)||void 0===i?void 0:i.phone,n=e||t;return Fe(ns,{title:"Payment Successful",noSubscription:!0,hideHeader:!0,children:Fe(Mt,{children:Fe("div",{className:$t.create("payment-success-card",{backgroundColor:bt.colors.card,borderRadius:bt.radius.large,padding:bt.spacing.xl,boxShadow:bt.shadow.sm,maxWidth:"42rem",margin:"0 auto"}),children:[Fe("div",{className:$t.create("success-icon-container",{display:"flex",justifyContent:"center",marginBottom:bt.spacing.lg}),children:Fe("div",{className:$t.create("success-icon",{width:"5rem",height:"5rem",borderRadius:"50%",backgroundColor:"#10b981",color:"white",display:"flex",alignItems:"center",justifyContent:"center"}),children:Fe("svg",{xmlns:"http://www.w3.org/2000/svg",width:"48",height:"48",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor","stroke-width":"2","stroke-linecap":"round","stroke-linejoin":"round",children:Fe("path",{d:"M20 6 9 17l-5-5"})})})}),Fe("div",{className:$t.create("success-header",{textAlign:"center",marginBottom:bt.spacing.xl}),children:[Fe("h1",{className:$t.create("success-title",{margin:"0",marginBottom:bt.spacing.sm,fontSize:"2rem",fontWeight:"700",color:bt.colors.primary,lineHeight:"1.2",letterSpacing:"-0.025em"}),children:"Payment Complete!"}),Fe("p",{className:$t.create("success-message",{fontSize:bt.fontSize.default,lineHeight:"1.6",color:bt.colors.foreground,opacity:"0.9",margin:"0"}),children:"Your payment has been processed successfully! You will receive your documentation by email."})]}),n&&Fe("div",{className:$t.create("contact-section",{borderTop:`1px solid ${bt.colors.border}`,paddingTop:bt.spacing.xl,marginTop:bt.spacing.xl}),children:[Fe("h3",{className:$t.create("contact-title",{fontSize:"1.125rem",fontWeight:"600",color:bt.colors.foreground,marginBottom:bt.spacing.md,textAlign:"center"}),children:"Need assistance?"}),Fe("div",{className:$t.create("contact-details",{backgroundColor:bt.colors.accent,borderRadius:bt.radius.default,padding:bt.spacing.md,display:"flex",flexDirection:"column",gap:bt.spacing.sm,marginBottom:bt.spacing.lg}),children:[e&&Fe("div",{className:$t.create("contact-item",{display:"flex",alignItems:"center",gap:bt.spacing.sm,fontSize:bt.fontSize.small,color:bt.colors.accentForeground}),children:Fe("span",{children:["Email: ",e]})}),t&&Fe("div",{className:$t.create("contact-item",{display:"flex",alignItems:"center",gap:bt.spacing.sm,fontSize:bt.fontSize.small,color:bt.colors.accentForeground}),children:Fe("span",{children:["Phone: ",t]})})]}),(j||se)&&Fe("div",{className:$t.create("reference",{fontSize:bt.fontSize.small,color:bt.colors.mutedForeground,textAlign:"center",marginTop:bt.spacing.md}),children:["Transaction ID: ",Fe("strong",{children:null===(o=j||se)||void 0===o?void 0:o.slice(0,8).toUpperCase()})]})]})]})})})}const ce=A&&le&&("failed"===ae||"declined"===ae||"cancelled"===ae||"failed"===M||"declined"===M||"cancelled"===M),de="cancelled"===ae||"cancelled"===M?"cancelled":"failed"===ae||"declined"===ae||"failed"===M||"declined"===M?"declined":"error",ue=v.calculations,he=ue.length>1,me=ue.length>0,fe=me,pe=(null===(s=v.metadata)||void 0===s?void 0:s.product_name)||(null===(a=v.policy_details)||void 0===a?void 0:a.product_name)||"Payment",ge=Boolean(null===(l=null==v?void 0:v.metadata)||void 0===l?void 0:l.quote_intent_id),ye=Boolean((!me||T)&&P&&!Y&&!G),ve=at(()=>{var e,t;const n=null===(e=null==v?void 0:v.metadata)||void 0===e?void 0:e.client_details;if(n)return{firstName:n.first_name,lastName:n.last_name,email:n.email,phone:n.phone};const r=null===(t=null==v?void 0:v.policy_details)||void 0===t?void 0:t.client_name;if(r){const e=r.trim().split(/\s+/);return{firstName:e[0]||r,lastName:e.slice(1).join(" ")||"",email:void 0,phone:void 0}}return null},[v]),we=at(()=>{var e;const t=null==v?void 0:v.policy_details;if(!t)return null;const n=e=>{if(!e)return null;const t=new Date(e);return Number.isNaN(t.getTime())?null:t.toLocaleDateString()},r=n(t.insured_from),i=n(t.insured_to),o=r&&i?`${r} – ${i}`:r||i||null,s=null!=t.sum_insured&&t.sum_insured>0?t.sum_insured:null,a=null!=t.excess&&t.excess>=0?t.excess:null;return t.external_policy_number||o||null!=s||null!=a?{externalPolicyNumber:null!==(e=t.external_policy_number)&&void 0!==e?e:null,insurancePeriod:o,sumInsured:s,excess:a}:null},[v]),be=at(()=>re&&re.line_item_display||null,[re]),xe=null===(c=null==v?void 0:v.metadata)||void 0===c?void 0:c.type,ke="renewal"===xe?"Complete Your Renewal":"endorsement"===xe?"Complete Your Payment":"Complete Your Purchase";return Fe(ns,{title:ke,noSubscription:!0,hideHeader:!0,children:Fe(Mt,{children:[Fe("div",{className:$t.create("checkout-layout",{display:"grid",gridTemplateColumns:"1fr 380px",gap:bt.spacing.lg},{"(max-width: 950px)":{display:"flex",flexDirection:"column"},"(max-width: 480px)":{gap:bt.spacing.md}}),children:[Fe("div",{className:$t.create("checkout-main-wrapper",{minWidth:"0",backgroundColor:bt.colors.card,boxShadow:bt.shadow.sm,borderRadius:bt.radius.large,display:"flex",flexDirection:"column"}),children:[Fe("div",{className:$t.create("checkout-header",{paddingInline:bt.spacing.xl,paddingTop:bt.spacing.xl,paddingBottom:bt.spacing.lg},{"(max-width: 768px)":{paddingInline:bt.spacing.lg,paddingTop:bt.spacing.lg},"(max-width: 480px)":{paddingInline:bt.spacing.md,paddingTop:bt.spacing.md}}),children:[Fe("h2",{className:$t.create("checkout-title",{margin:"0",marginBottom:bt.spacing.md,fontSize:"1.75rem",fontWeight:"700",color:bt.colors.primary,lineHeight:"1.1",letterSpacing:"-0.025em"},{"(max-width: 768px)":{fontSize:"1.5rem"},"(max-width: 480px)":{fontSize:"1.25rem"}}),children:ke}),Fe("p",{className:$t.create("checkout-description",{margin:"0",fontSize:bt.fontSize.default,lineHeight:"1.6",color:bt.colors.foreground,opacity:"0.9"}),children:me?he?"Choose your excess amount and payment option to secure your coverage.":"Choose your payment method to secure your coverage.":"Choose your payment option to complete your purchase."}),Fe("hr",{className:$t.create("checkout-header-border",{marginTop:bt.spacing.lg,border:"0",borderTop:`1px solid ${bt.colors.border}`,height:"0"})})]}),Fe("div",{className:$t.create("checkout-sections",{paddingInline:bt.spacing.xl,paddingBottom:bt.spacing.xl,display:"flex",flexDirection:"column",gap:bt.spacing.lg},{"(max-width: 768px)":{paddingInline:bt.spacing.lg,paddingBottom:bt.spacing.lg},"(max-width: 480px)":{paddingInline:bt.spacing.md,paddingBottom:bt.spacing.md}}),children:[ge&&Fe("div",{className:$t.create("checkout-section",{display:"flex",flexDirection:"column",gap:"1rem"}),children:[Fe(cs,{title:"Cover Start Date"}),Fe("div",{className:$t.create("cover-date-container",{display:"flex",flexDirection:"column",gap:"0.75rem"}),children:[Fe("input",{type:"date",value:H,onChange:e=>{return t=e.target.value,U(t),void(async e=>{var t;if(v&&y&&(null===(t=v.metadata)||void 0===t?void 0:t.quote_intent_id)){V(!0),Z(null);try{const t=await y.validateCoverStartDate(v.payment_link_id,e);t.valid?Z(null):(Z(t.message||"This cover start date is not valid."),t.quote_page_url&&J(t.quote_page_url))}catch(e){Z("Failed to validate cover date. Please try again.")}finally{V(!1)}}})(t);var t},min:Ts(),max:Ts(30),disabled:G,className:$t.create("cover-date-input",{padding:"0.75rem 1rem",fontSize:bt.fontSize.default,border:`2px solid ${Y?bt.colors.destructive:bt.colors.border}`,borderRadius:bt.radius.default,backgroundColor:bt.colors.background,color:bt.colors.foreground,width:"auto",maxWidth:"200px",cursor:G?"wait":"pointer"})}),G&&Fe("p",{className:$t.create("validating-text",{fontSize:bt.fontSize.small,color:bt.colors.mutedForeground,margin:"0"}),children:"Validating..."}),Y&&Fe("div",{className:$t.create("cover-date-error",{backgroundColor:`${bt.colors.destructive}10`,border:`1px solid ${bt.colors.destructive}`,borderRadius:bt.radius.default,padding:"1rem"}),children:[Fe("p",{className:$t.create("error-message",{color:bt.colors.destructive,fontSize:bt.fontSize.small,margin:"0",marginBottom:Q?bt.spacing.md:"0"}),children:Y}),Q&&Fe("a",{href:Q,className:$t.create("new-quote-link",{display:"inline-flex",alignItems:"center",gap:"0.5rem",color:bt.colors.primary,fontSize:bt.fontSize.small,fontWeight:"500",textDecoration:"none"}),children:["Start New Quote",Fe("svg",{xmlns:"http://www.w3.org/2000/svg",width:"16",height:"16",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor","stroke-width":"2","stroke-linecap":"round","stroke-linejoin":"round",children:[Fe("path",{d:"M5 12h14"}),Fe("path",{d:"m12 5 7 7-7 7"})]})]})]})]})]}),fe&&me&&Fe("div",{className:$t.create("checkout-section",{display:"flex",flexDirection:"column",gap:"1rem"}),children:[Fe(cs,{title:1===ue.length?"Excess":"Excess Options"}),Fe("div",{className:$t.create("excess-options-grid",{display:"flex",flexDirection:"row",flexWrap:"wrap",gap:"1rem"}),children:[...ue].sort((e,t)=>e.excess_amount-t.excess_amount).map(e=>{const t=e.id===T;return Fe("div",{className:Dt($t.create("excess-option-card",{borderRadius:bt.radius.default,minWidth:"125px",padding:"0.5rem 1rem 0.5rem 0.5rem",cursor:"pointer",transition:"all 150ms ease",display:"flex",flexDirection:"row",alignItems:"center",gap:"1rem"}),t?$t.create("excess-option-card-selected",{border:`2px solid ${bt.colors.primary}`,backgroundColor:bt.colors.accent}):$t.create("excess-option-card-unselected",{border:`2px solid ${bt.colors.border}`,backgroundColor:bt.colors.card})),onClick:()=>E(e.id),children:[Fe(ds,{selected:t}),Fe("div",{className:$t.create("excess-amount",{color:bt.colors.foreground}),children:[e.excess_label||`$${Number(e.excess_amount).toFixed(0)}`,e.description?"*":""]})]},e.id)})}),(null==re?void 0:re.description)&&Fe("div",{className:$t.create("excess-description",{padding:"0.75rem",backgroundColor:bt.colors.muted,borderRadius:bt.radius.default,border:`1px solid ${bt.colors.border}`}),children:Fe(ls,{className:$t.create("excess-description-text",{fontSize:bt.fontSize.small,color:bt.colors.foreground,margin:"0"}),children:re.description})})]}),v.payment_options.length>0&&Fe("div",{className:$t.create("checkout-section",{display:"flex",flexDirection:"column",gap:"1rem",width:"100%"}),children:[Fe(cs,{title:"Payment Options"}),Fe("div",{className:$t.create("payment-options-container",{display:"flex",flexDirection:"column",gap:"0.5rem"}),children:v.payment_options.map(e=>{var t;const n=ua(e),r=P===n,i="monthly"===e.payment_frequency,o=!!((null===(t=e.metadata)||void 0===t?void 0:t.gateway_fee)&&parseFloat(e.metadata.gateway_fee)>0),s=()=>{var t;return i&&e.amount.monthly?`${hs(parseFloat(e.amount.monthly))} x ${(null===(t=e.metadata)||void 0===t?void 0:t.number_of_instalments)||12}`:hs(parseFloat(e.amount.due_today))},a=()=>e.description?e.description:"bank_transfer"===e.gateway_code?"Manual":`via ${e.gateway_name}`;return Fe("div",{className:Dt($t.create("payment-option-row",{borderRadius:bt.radius.default,padding:"0.75rem 1rem",cursor:"pointer",transition:"all 150ms ease",display:"flex",alignItems:"center",justifyContent:"space-between",gap:"1rem"},{"(max-width: 480px)":{padding:"0.625rem 0.75rem",gap:"0.25rem",flexWrap:"wrap",alignItems:"flex-start"}}),r?$t.create("payment-option-row-selected",{border:`2px solid ${bt.colors.primary}`,backgroundColor:bt.colors.accent}):$t.create("payment-option-row-unselected",{border:`2px solid ${bt.colors.border}`,backgroundColor:bt.colors.card})),onClick:()=>z(n),children:[Fe("div",{className:$t.create("payment-option-desktop-wrapper",{display:"flex",alignItems:"center",gap:"1rem",flex:"1"},{"(max-width: 480px)":{display:"none"}}),children:[Fe(ds,{selected:r}),Fe("div",{className:$t.create("payment-option-info-desktop",{display:"flex",flexDirection:"column",flex:"1"}),children:[Fe("div",{className:$t.create("frequency-title",{fontSize:bt.fontSize.default,fontWeight:"500",color:bt.colors.foreground}),children:e.display_title||ms(i?"monthly":"one-time",e.gateway_code)}),Fe("div",{className:$t.create("gateway-description",{fontSize:bt.fontSize.small,color:bt.colors.mutedForeground}),children:a()})]})]}),Fe("div",{className:$t.create("payment-option-amount-desktop",{display:"flex",flexDirection:"column",alignItems:"flex-end"},{"(max-width: 480px)":{display:"none"}}),children:[Fe(ls,{className:$t.create("amount-text",{textAlign:"right",color:bt.colors.foreground}),children:s()}),Fe(ls,{size:"small",className:$t.create("gateway-fee-text",{textAlign:"right",color:bt.colors.mutedForeground}),children:o?`${(()=>{var t;return"bank_transfer"===e.gateway_code?null:(null===(t=e.metadata)||void 0===t?void 0:t.gateway_fee)?hs(parseFloat(e.metadata.gateway_fee)):hs(0)})()} fee`:"No fees"})]}),Fe("div",{className:$t.create("payment-option-title-mobile-wrapper",{display:"none"},{"(max-width: 480px)":{display:"flex",alignItems:"center",gap:"0.5rem",flex:"1 1 100%"}}),children:[Fe(ds,{selected:r}),Fe("div",{className:$t.create("payment-option-title-mobile",{fontSize:bt.fontSize.default,fontWeight:"500",color:bt.colors.foreground}),children:e.display_title||ms(i?"monthly":"one-time",e.gateway_code)})]}),Fe("div",{className:$t.create("payment-option-bottom-mobile",{display:"none"},{"(max-width: 480px)":{display:"flex",flex:"1 1 100%",justifyContent:"space-between",alignItems:"center",paddingLeft:"1.5rem"}}),children:[Fe("div",{className:$t.create("gateway-description-mobile",{fontSize:bt.fontSize.small,color:bt.colors.mutedForeground}),children:a()}),Fe(ls,{className:$t.create("amount-text-mobile",{fontWeight:"500",color:bt.colors.foreground}),children:s()})]})]},n)})})]})]})]}),Fe("div",{className:$t.create("checkout-sidebar",{display:"flex",flexDirection:"column"},{"(max-width: 950px)":{display:"block"}}),children:Fe("div",{className:$t.create("checkout-sidebar-sticky",{}),children:[(ve||we||be&&be.length>0)&&Fe("div",{className:$t.create("insurance-details-card",{backgroundColor:bt.colors.card,borderRadius:bt.radius.large,padding:bt.spacing.lg,boxShadow:bt.shadow.sm},{"(max-width: 768px)":{padding:bt.spacing.md}}),children:[Fe("h3",{className:$t.create("cart-summary-title",{fontSize:bt.fontSize.large,fontWeight:"600",marginBottom:bt.spacing.md,color:bt.colors.foreground}),children:"Insurance Details"}),(ve||we||"Payment"!==pe)&&Fe(_,{children:[Fe("div",{className:$t.create("client-details",{display:"flex",flexDirection:"column",gap:bt.spacing.sm}),children:[(null==ve?void 0:ve.firstName)&&(null==ve?void 0:ve.lastName)&&Fe("div",{className:$t.create("detail-row",{display:"flex",justifyContent:"space-between",alignItems:"center"}),children:[Fe("span",{className:$t.create("detail-label",{color:bt.colors.mutedForeground,fontSize:bt.fontSize.small}),children:"Name"}),Fe("span",{className:$t.create("detail-value",{fontWeight:"500",color:bt.colors.foreground,fontSize:bt.fontSize.small}),children:[null==ve?void 0:ve.firstName," ",null==ve?void 0:ve.lastName]})]}),(null==ve?void 0:ve.email)&&Fe("div",{className:$t.create("detail-row",{display:"flex",justifyContent:"space-between",alignItems:"center"}),children:[Fe("span",{className:$t.create("detail-label",{color:bt.colors.mutedForeground,fontSize:bt.fontSize.small}),children:"Email"}),Fe("span",{className:$t.create("detail-value",{fontWeight:"500",color:bt.colors.foreground,fontSize:bt.fontSize.small}),children:null==ve?void 0:ve.email})]}),(null==ve?void 0:ve.phone)&&Fe("div",{className:$t.create("detail-row",{display:"flex",justifyContent:"space-between",alignItems:"center"}),children:[Fe("span",{className:$t.create("detail-label",{color:bt.colors.mutedForeground,fontSize:bt.fontSize.small}),children:"Phone"}),Fe("span",{className:$t.create("detail-value",{fontWeight:"500",color:bt.colors.foreground,fontSize:bt.fontSize.small}),children:null==ve?void 0:ve.phone})]}),"Payment"!==pe&&Fe("div",{className:$t.create("detail-row",{display:"flex",justifyContent:"space-between",alignItems:"center"}),children:[Fe("span",{className:$t.create("detail-label",{color:bt.colors.mutedForeground,fontSize:bt.fontSize.small}),children:"Product"}),Fe("span",{className:$t.create("detail-value",{fontWeight:"500",color:bt.colors.foreground,fontSize:bt.fontSize.small}),children:pe})]}),(null==we?void 0:we.externalPolicyNumber)&&Fe("div",{className:$t.create("detail-row",{display:"flex",justifyContent:"space-between",alignItems:"center"}),children:[Fe("span",{className:$t.create("detail-label",{color:bt.colors.mutedForeground,fontSize:bt.fontSize.small}),children:"Policy Number"}),Fe("span",{className:$t.create("detail-value",{fontWeight:"500",color:bt.colors.foreground,fontSize:bt.fontSize.small}),children:we.externalPolicyNumber})]}),(null==v?void 0:v.quote_reference)&&Fe("div",{className:$t.create("detail-row",{display:"flex",justifyContent:"space-between",alignItems:"center"}),children:[Fe("span",{className:$t.create("detail-label",{color:bt.colors.mutedForeground,fontSize:bt.fontSize.small}),children:"Quote Reference"}),Fe("span",{className:$t.create("detail-value",{fontWeight:"500",color:bt.colors.foreground,fontSize:bt.fontSize.small}),children:v.quote_reference})]}),null!=(null==we?void 0:we.sumInsured)&&Fe("div",{className:$t.create("detail-row",{display:"flex",justifyContent:"space-between",alignItems:"center"}),children:[Fe("span",{className:$t.create("detail-label",{color:bt.colors.mutedForeground,fontSize:bt.fontSize.small}),children:"Sum Insured"}),Fe("span",{className:$t.create("detail-value",{fontWeight:"500",color:bt.colors.foreground,fontSize:bt.fontSize.small}),children:hs(we.sumInsured)})]}),null!=(null==we?void 0:we.excess)&&Fe("div",{className:$t.create("detail-row",{display:"flex",justifyContent:"space-between",alignItems:"center"}),children:[Fe("span",{className:$t.create("detail-label",{color:bt.colors.mutedForeground,fontSize:bt.fontSize.small}),children:"Excess"}),Fe("span",{className:$t.create("detail-value",{fontWeight:"500",color:bt.colors.foreground,fontSize:bt.fontSize.small}),children:hs(we.excess)})]})]}),be&&be.length>0&&Fe("hr",{className:$t.create("divider",{border:"none",borderTop:`1px solid ${bt.colors.border}`,margin:`${bt.spacing.md} 0`})})]}),be&&be.length>0&&Fe("div",{className:$t.create("line-items-section",{display:"flex",flexDirection:"column",gap:bt.spacing.md}),children:be.map((e,t)=>Fe("div",{className:$t.create("line-item",{}),children:[Fe("div",{className:$t.create("line-item-description",{fontSize:bt.fontSize.small,fontWeight:"500",color:bt.colors.foreground}),children:e.description}),e.show_sum_insured&&null!=e.sum_insured&&e.sum_insured>0&&Fe("div",{className:$t.create("line-item-sum-insured",{fontSize:bt.fontSize.small,color:bt.colors.mutedForeground,marginTop:bt.spacing.sm}),children:["Sum Insured: ",hs(e.sum_insured)]})]},t))})]}),(ve||we||be&&be.length>0)&&Fe("div",{className:$t.create("checkout-sidebar-spacer",{height:bt.spacing.lg},{"(max-width: 950px)":{height:bt.spacing.md}})}),Fe("div",{className:$t.create("checkout-sidebar-card",{backgroundColor:bt.colors.card,borderRadius:bt.radius.large,boxShadow:bt.shadow.sm,padding:bt.spacing.lg},{"(max-width: 768px)":{padding:bt.spacing.md}}),children:Fe("div",{className:$t.create("payment-summary",{display:"flex",flex:"1",flexDirection:"column",gap:"1rem"}),children:[Fe("h3",{className:$t.create("cart-summary-title",{fontSize:bt.fontSize.large,fontWeight:"600",marginBottom:bt.spacing.sm,color:bt.colors.foreground}),children:"Payment Details"}),ie&&Fe("div",{className:$t.create("summary-section",{paddingBottom:"1rem"}),children:Fe("div",{className:$t.create("payment-breakdown",{display:"flex",flexDirection:"column",gap:"0.5rem"}),children:"monthly"!==ie.payment_frequency?Fe(_,{children:[(null===(d=ie.metadata)||void 0===d?void 0:d.gateway_fee)&&parseFloat(ie.metadata.gateway_fee)>0&&Fe(ma,{label:da(ie.gateway_code,null===(u=ie.metadata)||void 0===u?void 0:u.gateway_method),value:hs(parseFloat(ie.metadata.gateway_fee))}),Fe(ma,{label:"Total Due Today:",value:hs(parseFloat(ie.amount.due_today)),isTotal:!0})]}):Fe(_,{children:[(null===(h=ie.metadata)||void 0===h?void 0:h.gateway_fee)&&parseFloat(ie.metadata.gateway_fee)>0&&Fe(ma,{label:da(ie.gateway_code,null===(m=ie.metadata)||void 0===m?void 0:m.gateway_method),value:hs(parseFloat(ie.metadata.gateway_fee))}),ie.amount.total&&Fe(ma,{label:"Total Payable:",value:hs(parseFloat(ie.amount.total)+parseFloat(null!==(p=null===(f=ie.metadata)||void 0===f?void 0:f.gateway_fee)&&void 0!==p?p:"0"))}),Fe(ma,{label:"Due Today:",value:hs(parseFloat(ie.amount.due_today))}),ie.amount.monthly&&(null===(g=ie.metadata)||void 0===g?void 0:g.number_of_instalments)&&ie.metadata.number_of_instalments>1&&Fe(ma,{label:"Remaining payments:",value:`${ie.metadata.number_of_instalments-1} x ${hs(parseFloat(ie.amount.monthly))}`})]})})}),Fe(is,{onClick:async()=>{var e,t,n,r,i,o;if(!v)return;const s=v.calculations.length>0,a=!s;if(s&&!T)return void alert("Please select an excess amount before proceeding.");if(!P)return void alert("Please select a payment method before proceeding.");const l=s?v.calculations.find(e=>e.id===T):null;if(s&&!l)return void alert("Payment configuration error. Please try again.");const c=v.payment_options.find(e=>ua(e)===P);if(!c)return void alert("Payment method not available. Please try again.");const d=c.gateway_code,u=null===(e=c.metadata)||void 0===e?void 0:e.gateway_method;let h="Customer";if(null===(t=v.metadata)||void 0===t?void 0:t.client_name)h=v.metadata.client_name;else if(null===(n=v.metadata)||void 0===n?void 0:n.client_details){const e=v.metadata.client_details;e.first_name&&(h=`${e.first_name} ${e.last_name||""}`.trim())}if(a){if(!y)return void alert("Payment service not available. Please try again.");try{x(!0);const e=await y.initiateFixedPayment(v.payment_link_id,d,h,u);if("auto_renew_confirmed"===e.status)return void X({message:e.message||"Your renewal is confirmed. Your premium funding will continue automatically on the policy start date.",effectiveDate:e.effective_date});if("bank_transfer"===d&&e.transaction_id)return void te({transactionId:e.transaction_id,organisationId:(null===(r=v.organisation)||void 0===r?void 0:r.id)||""});e.gateway_acceptance_url?window.location.href=e.gateway_acceptance_url:alert("Payment initiated successfully")}catch(e){alert(e.message||"Failed to initiate payment")}finally{x(!1)}return}const m=null===(i=v.metadata)||void 0===i?void 0:i.quote_intent_id,f={...m?{quoteIntentId:m}:{paymentLinkId:v.payment_link_id},paymentLinkId:v.payment_link_id,excessId:(null==l?void 0:l.excess_id)||"",gatewayId:d,calculationId:T||"",clientDetails:{legalName:h},metadata:{payment_link_id:v.payment_link_id,payment_type:m?"quote":"rate",gateway_code:d,gateway:d,...u?{gateway_method:u}:{}},...ge&&H?{coverStartDate:H}:{}};if("bank_transfer"!==d)I(f),C(!0);else{if(!y)return void alert("Payment service not available. Please try again.");try{x(!0);const e={...f,returnUrl:window.location.href},t=await y.initiatePayment(e,d);if(!(t.bank_account_name&&t.reference&&t.transaction_id))throw new Error("Invalid bank transfer response");te({transactionId:t.transaction_id,organisationId:(null===(o=v.organisation)||void 0===o?void 0:o.id)||""})}catch(e){alert(e.message||"Failed to initiate bank transfer")}finally{x(!1)}}},disabled:!ye,className:$t.create("purchase-button",{width:"100%",height:"3rem",fontSize:bt.fontSize.default,fontWeight:"600"}),children:ye?"Go to Payment":"Select Options to Continue"})]})})]})})]}),S&&$&&y&&Fe(sa,{isOpen:S,onClose:()=>{C(!1),I(null)},onSuccess:()=>{C(!1),I(null),alert("Payment completed successfully!")},paymentRequest:$,httpClient:y}),ce&&Fe(Ss,{type:de,transactionId:se||j||void 0,isOpen:!0,onClose:()=>{L(!1);const e=new URL(window.location.href);e.searchParams.delete("status"),e.searchParams.delete("transactionId"),e.searchParams.delete("transaction_id"),window.history.replaceState({},"",e.toString())}})]})})}function ma({label:e,value:t,isTotal:n=!1,className:r}){return Fe("div",{className:Dt($t.create("summary-item",{display:"flex",justifyContent:"space-between",alignItems:"center"}),r),children:[Fe("span",{className:$t.create("summary-label",{color:bt.colors.mutedForeground,fontSize:bt.fontSize.small}),children:e}),Fe("span",{className:$t.create("summary-value",{fontWeight:n?"600":"500",color:bt.colors.foreground,fontSize:n?bt.fontSize.large:"inherit"}),children:t})]})}function fa({products:e,onSelectProduct:t}){const[n,r]=it(null),i=(e,t)=>{t&&(t.preventDefault(),t.stopPropagation()),r(e)};return Fe(ns,{title:"Select cover",noSubscription:!0,hideHeader:!0,children:Fe(Mt,{children:Fe("div",{className:$t.create("product-selection-layout",{display:"flex",justifyContent:"center",width:"100%"}),children:Fe("div",{className:$t.create("product-selection-card",{backgroundColor:bt.colors.card,boxShadow:bt.shadow.sm,borderRadius:bt.radius.large,display:"flex",flexDirection:"column",width:"100%",maxWidth:"600px"}),children:[Fe("div",{className:$t.create("product-selection-header",{paddingInline:bt.spacing.xl,paddingTop:bt.spacing.xl,paddingBottom:bt.spacing.lg},{"(max-width: 768px)":{paddingInline:bt.spacing.lg,paddingTop:bt.spacing.lg},"(max-width: 480px)":{paddingInline:bt.spacing.md,paddingTop:bt.spacing.md}}),children:[Fe("h2",{className:$t.create("product-selection-title",{margin:"0",marginBottom:bt.spacing.sm,fontSize:"1.75rem",fontWeight:"700",color:bt.colors.primary,lineHeight:"1.1",letterSpacing:"-0.025em"},{"(max-width: 768px)":{fontSize:"1.5rem"},"(max-width: 480px)":{fontSize:"1.125rem"}}),children:"Select Your Cover"}),Fe("p",{className:$t.create("product-selection-description",{margin:"0",fontSize:bt.fontSize.default,lineHeight:"1.6",color:bt.colors.foreground,opacity:"0.9"}),children:"What type of vessel are you insuring?"}),Fe("hr",{className:$t.create("product-selection-header-border",{marginTop:bt.spacing.lg,borderColor:bt.colors.border})})]}),Fe("div",{className:$t.create("product-selection-content",{paddingInline:bt.spacing.xl,paddingBottom:bt.spacing.xl},{"(max-width: 768px)":{paddingInline:bt.spacing.lg,paddingBottom:bt.spacing.lg},"(max-width: 480px)":{paddingInline:bt.spacing.md,paddingBottom:bt.spacing.md}}),children:[0===e.length?Fe("div",{className:$t.create("no-products-placeholder",{padding:"2rem",textAlign:"center",border:`1px dashed ${bt.colors.border}`,borderRadius:bt.radius.default,backgroundColor:bt.colors.muted}),children:[Fe("div",{style:{marginBottom:bt.spacing.default},children:Fe("svg",{width:"48",height:"48",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",style:{margin:"0 auto",opacity:.5},children:[Fe("path",{d:"M14 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V8z"}),Fe("polyline",{points:"14 2 14 8 20 8"})]})}),Fe("p",{className:$t.create("placeholder-text",{color:bt.colors.mutedForeground,margin:"0"}),children:"No products available for quoting."})]}):Fe("div",{className:$t.create("product-options-container",{display:"flex",flexDirection:"column",gap:"0.5rem"}),children:e.map(e=>Fe(pa,{product:e,isSelected:(null==n?void 0:n.id)===e.id,onSelect:i},e.id))}),e.length>0&&Fe("div",{className:$t.create("product-selection-actions",{marginTop:bt.spacing.lg}),children:Fe(is,{onClick:()=>{n&&t(n)},disabled:!n,className:$t.create("product-selection-continue-button",{width:"100%"}),children:"Continue"})})]})]})})})})}function pa({product:e,isSelected:t,onSelect:n}){return Fe("div",{className:Dt($t.create("product-option-row",{borderRadius:bt.radius.default,padding:"0.75rem 1rem",cursor:"pointer",transition:"all 150ms ease",display:"flex",alignItems:"center",gap:"1rem"},{"(max-width: 480px)":{padding:"0.625rem 0.75rem"}}),t?$t.create("product-option-row-selected",{border:`2px solid ${bt.colors.primary}`,backgroundColor:bt.colors.accent}):$t.create("product-option-row-unselected",{border:`2px solid ${bt.colors.border}`,backgroundColor:bt.colors.card})),onClick:t=>n(e,t),role:"button",tabIndex:0,onKeyPress:t=>{"Enter"!==t.key&&" "!==t.key||n(e,t)},children:[Fe(ds,{selected:t}),Fe("div",{className:$t.create("product-option-content",{display:"flex",alignItems:"center",justifyContent:"space-between",flex:"1",gap:"1rem"}),children:[Fe("div",{className:$t.create("product-option-info",{display:"flex",flexDirection:"column"}),children:[e.description&&Fe("div",{className:$t.create("product-option-description",{fontSize:bt.fontSize.default,fontWeight:"500",color:bt.colors.foreground}),children:e.description}),Fe("div",{className:$t.create("product-option-name",{fontSize:bt.fontSize.small,color:bt.colors.mutedForeground}),children:e.name})]}),e.icon_svg&&Fe("div",{className:$t.create("product-option-icon",{width:"2.5rem",height:"2.5rem",flexShrink:"0",display:"flex",alignItems:"center",justifyContent:"center",color:t?bt.colors.primary:bt.colors.mutedForeground,transition:"color 150ms ease"}),dangerouslySetInnerHTML:{H:e.icon_svg.replace(/^<svg(?![^>]*\bwidth\b)/,'<svg width="100%" height="100%"')}})]})]})}function ga(){var e,t;const n=Wt(),{paymentLinkConfig:r,availableProducts:i,formStateManager:o}=n;if(i&&!o)return Fe(fa,{products:i,onSelectProduct:()=>{}});if(r)return Fe(ha,{paymentLinkId:r.paymentLinkId,signedUrl:r.signedUrl});const s=new URLSearchParams(window.location.search),a=s.get("p")||s.get("pl_ref");if(a&&!o)return Fe(ha,{paymentLinkId:a});const l=window.location.pathname,c=l.match(/\/pay\/([a-f0-9-]+)/);if(c&&c[1])return Fe(ha,{paymentLinkId:c[1],signedUrl:window.location.href});const d=l.match(/\/payments\/bank-transfer\/([a-f0-9-]+)/),u=s.get("orgId");if(d&&d[1]&&u)return Fe(aa,{transactionId:d[1],organisationId:u});const{isCalculating:h,results:m,quoteIntent:f}=At(e=>({isCalculating:null==e?void 0:e.getIsCalculating(),results:null==e?void 0:e.getCalculationResult(),quoteIntent:null==e?void 0:e.getQuoteIntent(),fsm:e})),p="hold"===(null==f?void 0:f.status),g=null===(e=null==f?void 0:f.payment_transactions)||void 0===e?void 0:e.find(e=>"bank_transfer"===e.gateway_code&&"pending"===e.status),y="paid"===(null==f?void 0:f.status)||"completed"===(null==f?void 0:f.status);return h?Fe(rs,{title:"Calculating premium",message:"Crunching the numbers now"}):p&&g&&(null===(t=null==f?void 0:f.organisation)||void 0===t?void 0:t.id)?Fe(aa,{transactionId:g.id,organisationId:f.organisation.id,allowCancel:!0}):y?Fe(oa,{}):m?Fe(As,{results:m}):Fe(ia,{})}function ya(e){return Fe(jt,{...e,children:Fe(ga,{})})}function va({reference:e,productName:t,firstName:n,lastUpdated:r,onContinue:i,onStartFresh:o}){const[s,a]=it(null);return Fe(ns,{title:"Resume Quote",noSubscription:!0,hideHeader:!0,children:Fe(Mt,{children:Fe("div",{className:$t.create("resume-prompt-layout",{display:"flex",justifyContent:"center",width:"100%"}),children:Fe("div",{className:$t.create("resume-prompt-card",{backgroundColor:bt.colors.card,boxShadow:bt.shadow.sm,borderRadius:bt.radius.large,display:"flex",flexDirection:"column",width:"100%",maxWidth:"600px"}),children:[Fe("div",{className:$t.create("resume-prompt-header",{paddingInline:bt.spacing.xl,paddingTop:bt.spacing.xl,paddingBottom:bt.spacing.lg},{"(max-width: 768px)":{paddingInline:bt.spacing.lg,paddingTop:bt.spacing.lg},"(max-width: 480px)":{paddingInline:bt.spacing.md,paddingTop:bt.spacing.md}}),children:[Fe("h2",{className:$t.create("resume-prompt-title",{margin:"0",marginBottom:bt.spacing.sm,fontSize:"1.75rem",fontWeight:"700",color:bt.colors.primary,lineHeight:"1.1",letterSpacing:"-0.025em"},{"(max-width: 768px)":{fontSize:"1.5rem"},"(max-width: 480px)":{fontSize:"1.125rem"}}),children:"Existing Quote Found"}),Fe("p",{className:$t.create("resume-prompt-description",{margin:"0",fontSize:bt.fontSize.default,lineHeight:"1.6",color:bt.colors.foreground,opacity:"0.9"}),children:"There is a quote in progress. Would you like to continue where you left off or start a new quote?"}),(e||t||n||r)&&Fe("div",{className:$t.create("resume-prompt-details",{marginTop:bt.spacing.md,padding:bt.spacing.md,backgroundColor:bt.colors.background,borderRadius:bt.radius.default,display:"flex",flexDirection:"column",gap:bt.spacing.sm}),children:[t&&Fe("div",{className:$t.create("resume-prompt-detail-row",{display:"flex",justifyContent:"space-between",alignItems:"center"}),children:[Fe("span",{className:$t.create("resume-prompt-detail-label",{fontSize:bt.fontSize.small,color:bt.colors.foreground,opacity:"0.6"}),children:"Product"}),Fe("span",{className:$t.create("resume-prompt-detail-value",{fontSize:bt.fontSize.small,fontWeight:"600",color:bt.colors.foreground}),children:t})]}),n&&Fe("div",{className:$t.create("resume-prompt-detail-row-name",{display:"flex",justifyContent:"space-between",alignItems:"center"}),children:[Fe("span",{className:$t.create("resume-prompt-detail-label-name",{fontSize:bt.fontSize.small,color:bt.colors.foreground,opacity:"0.6"}),children:"Client"}),Fe("span",{className:$t.create("resume-prompt-detail-value-name",{fontSize:bt.fontSize.small,fontWeight:"600",color:bt.colors.foreground}),children:n})]}),e&&Fe("div",{className:$t.create("resume-prompt-detail-row-ref",{display:"flex",justifyContent:"space-between",alignItems:"center"}),children:[Fe("span",{className:$t.create("resume-prompt-detail-label-ref",{fontSize:bt.fontSize.small,color:bt.colors.foreground,opacity:"0.6"}),children:"Reference"}),Fe("span",{className:$t.create("resume-prompt-detail-value-ref",{fontSize:bt.fontSize.small,fontWeight:"600",color:bt.colors.foreground}),children:e})]}),r&&Fe("div",{className:$t.create("resume-prompt-detail-row-date",{display:"flex",justifyContent:"space-between",alignItems:"center"}),children:[Fe("span",{className:$t.create("resume-prompt-detail-label-date",{fontSize:bt.fontSize.small,color:bt.colors.foreground,opacity:"0.6"}),children:"Last updated"}),Fe("span",{className:$t.create("resume-prompt-detail-value-date",{fontSize:bt.fontSize.small,fontWeight:"600",color:bt.colors.foreground}),children:r})]})]}),Fe("hr",{className:$t.create("resume-prompt-header-border",{marginTop:bt.spacing.lg,borderColor:bt.colors.border})})]}),Fe("div",{className:$t.create("resume-prompt-content",{paddingInline:bt.spacing.xl,paddingBottom:bt.spacing.xl,display:"flex",flexDirection:"column",gap:bt.spacing.md},{"(max-width: 768px)":{paddingInline:bt.spacing.lg,paddingBottom:bt.spacing.lg},"(max-width: 480px)":{paddingInline:bt.spacing.md,paddingBottom:bt.spacing.md}}),children:[Fe(is,{onClick:()=>{a("continue"),i()},loading:"continue"===s,disabled:null!==s,className:$t.create("resume-prompt-continue-btn",{width:"100%"}),children:"Continue where I left off"}),Fe(is,{variant:"outline",onClick:()=>{a("fresh"),o()},loading:"fresh"===s,disabled:null!==s,className:$t.create("resume-prompt-fresh-btn",{width:"100%"}),children:"Start a new quote"})]})]})})})})}class wa extends ${constructor(e){super(e),this.state={hasError:!1}}componentDidCatch(e,n){t();try{Promise.resolve().then(function(){return Ih}).then(({captureException:t,addBreadcrumb:r,isSentryInitialized:i})=>{i()&&(r({message:"Component error",category:"ui",level:"error",data:{componentStack:n.componentStack}}),t(e,{componentStack:n.componentStack}))}).catch(()=>{})}catch(e){}const r=we("initialization",e,"A component error occurred");this.setState({hasError:!0,error:r})}render(){if(this.state.hasError){const e=this.state.error;return _e(e)?Fe(as,{message:e.message,organisation:e.organisation}):Fe(os,{error:e})}return this.props.children}}function ba({config:e,initializeFormContext:n}){const[r,i]=it({type:"loading",message:"Loading application..."}),o=n=>{if(n.resumePrompt)return t(),void i({type:"resume_prompt",resumeData:n.resumePrompt});const r=n.availableProducts&&n.availableProducts.length>0;if(r&&!n.formStateManager)return t(),void i({type:"product_selection",products:n.availableProducts});if(!("payment"===e.mode||n.paymentLinkConfig||r||n.formStateManager&&"function"==typeof n.formStateManager.getFormProgress))throw new Error("FormStateManager was not properly initialized");t(),i({type:"success",formContextProps:n})},s=async(r="Loading application...")=>{i({type:"loading",message:r});try{t();const r=await n(e);o(r)}catch(e){let n;t(),n=e&&"object"==typeof e&&"type"in e&&"MAINTENANCE_ERROR"===e.type||e&&"object"==typeof e&&"statusCode"in e&&503===e.statusCode||e&&"object"==typeof e&&"status"in e&&503===e.status?we("maintenance",e):we("initialization",e),t((n.type,n.severity,n.statusCode)),i({type:"error",error:n})}};ot(()=>{e.isolateStyles&&Nt(),s()},[e,n]);const a=async e=>{if("resume_prompt"!==r.type)return;const{onContinue:n,onStartFresh:s}=r.resumeData;i({type:"loading",message:"continue"===e?"Loading your quote...":"Starting a new quote..."});try{const t="continue"===e?await n():await s();o(t)}catch(e){t();const n=we("initialization",e);i({type:"error",error:n})}},l=async e=>{t(e.code),localStorage.setItem("insure-os-selected-product",e.code),await s("Loading...")};return Fe(wa,{children:Fe("div",{className:$t.create("root",{fontFamily:bt.fontFamily,backgroundColor:bt.colors.background,minHeight:"100vh",color:bt.colors.foreground,maxWidth:"100vw",overflowX:"hidden",WebkitFontSmoothing:"antialiased",MozOsxFontSmoothing:"grayscale"}),children:function(){switch(r.type){case"loading":return Fe(rs,{message:r.message});case"error":return _e(r.error)?Fe(as,{message:r.error.message,organisation:r.error.organisation}):Fe(os,{error:r.error});case"product_selection":return Fe(fa,{products:r.products,onSelectProduct:l});case"resume_prompt":return Fe(va,{reference:r.resumeData.reference,productName:r.resumeData.productName,firstName:r.resumeData.firstName,lastUpdated:r.resumeData.lastUpdated,onContinue:()=>a("continue"),onStartFresh:()=>a("fresh")});case"success":return Fe(ya,{...r.formContextProps});default:return Fe(os,{})}}()})})}const xa="undefined"==typeof __SENTRY_DEBUG__||__SENTRY_DEBUG__,ka=globalThis,Na="10.48.0";function Sa(){return Ca(ka),ka}function Ca(e){const t=e.oe=e.oe||{};return t.version=t.version||Na,t[Na]=t[Na]||{}}function _a(e,t,n=ka){const r=n.oe=n.oe||{},i=r[Na]=r[Na]||{};return i[e]||(i[e]=t())}const $a=["debug","info","warn","error","log","assert","trace"],Ia={};function Ta(e){if(!("console"in ka))return e();const t=ka.console,n={},r=Object.keys(Ia);r.forEach(e=>{const r=Ia[e];n[e]=t[e],t[e]=r});try{return e()}finally{r.forEach(e=>{t[e]=n[e]})}}function Ea(){return za().enabled}function Pa(e,...t){xa&&Ea()&&Ta(()=>{ka.console[e](`Sentry Logger [${e}]:`,...t)})}function za(){return xa?_a("loggerSettings",()=>({enabled:!1})):{enabled:!1}}const Da=function(){za().enabled=!0},Ra=function(...e){Pa("log",...e)},Ma=function(...e){Pa("warn",...e)},Oa=function(...e){Pa("error",...e)},ja="?",Wa=/\(error: (.*)\)/,Aa=/captureMessage|captureException/;function La(...e){const t=e.sort((e,t)=>e[0]-t[0]).map(e=>e[1]);return(e,n=0,r=0)=>{const i=[],o=e.split("\n");for(let e=n;e<o.length;e++){let n=o[e];n.length>1024&&(n=n.slice(0,1024));const s=Wa.test(n)?n.replace(Wa,"$1"):n;if(!s.includes("Error: ")){for(const e of t){const t=e(s);if(t){i.push(t);break}}if(i.length>=50+r)break}}return function(e){if(!e.length)return[];const t=Array.from(e);return/sentryWrapped/.test(Ba(t).function||"")&&t.pop(),t.reverse(),Aa.test(Ba(t).function||"")&&(t.pop(),Aa.test(Ba(t).function||"")&&t.pop()),t.slice(0,50).map(e=>({...e,filename:e.filename||Ba(t).filename,function:e.function||ja}))}(i.slice(r))}}function Ba(e){return e[e.length-1]||{}}const qa="<anonymous>";function Fa(e){try{return e&&"function"==typeof e&&e.name||qa}catch{return qa}}function Ha(e){const t=e.exception;if(t){const e=[];try{return t.values.forEach(t=>{t.stacktrace.frames&&e.push(...t.stacktrace.frames)}),e}catch{return}}}function Ua(e){return"se"in e&&e.se?"[VueVNode]":"[VueViewModel]"}const Ya={},Za={};function Ga(e,t){Ya[e]=Ya[e]||[],Ya[e].push(t)}function Va(e,t){if(!Za[e]){Za[e]=!0;try{t()}catch(t){xa&&Oa(`Error while instrumenting ${e}`,t)}}}function Qa(e,t){const n=e&&Ya[e];if(n)for(const r of n)try{r(t)}catch(t){xa&&Oa(`Error while triggering instrumentation handler.\nType: ${e}\nName: ${Fa(r)}\nError:`,t)}}let Ja=null;function Ka(){Ja=ka.onerror,ka.onerror=function(e,t,n,r,i){return Qa("error",{column:r,error:i,line:n,msg:e,url:t}),!!Ja&&Ja.apply(this,arguments)},ka.onerror.ae=!0}let Xa=null;function el(){Xa=ka.onunhandledrejection,ka.onunhandledrejection=function(e){return Qa("unhandledrejection",e),!Xa||Xa.apply(this,arguments)},ka.onunhandledrejection.ae=!0}const tl={}.toString;function nl(e){switch(tl.call(e)){case"[object Error]":case"[object Exception]":case"[object DOMException]":case"[object WebAssembly.Exception]":return!0;default:return hl(e,Error)}}function rl(e,t){return tl.call(e)===`[object ${t}]`}function il(e){return rl(e,"ErrorEvent")}function ol(e){return rl(e,"DOMError")}function sl(e){return rl(e,"String")}function al(e){return"object"==typeof e&&null!==e&&"le"in e&&"ce"in e}function ll(e){return null===e||al(e)||"object"!=typeof e&&"function"!=typeof e}function cl(e){return rl(e,"Object")}function dl(e){return"undefined"!=typeof Event&&hl(e,Event)}function ul(e){return Boolean(e?.then&&"function"==typeof e.then)}function hl(e,t){try{return e instanceof t}catch{return!1}}function ml(e){return!("object"!=typeof e||null===e||!(e.de||e.ue||e.se))}function fl(e){return"undefined"!=typeof Request&&hl(e,Request)}const pl=ka;function gl(e,t={}){if(!e)return"<unknown>";try{let n=e;const r=5,i=[];let o=0,s=0;const a=" > ",l=a.length;let c;const d=Array.isArray(t)?t:t.keyAttrs,u=!Array.isArray(t)&&t.maxStringLength||80;for(;n&&o++<r&&(c=yl(n,d),!("html"===c||o>1&&s+i.length*l+c.length>=u));)i.push(c),s+=c.length,n=n.parentNode;return i.reverse().join(a)}catch{return"<unknown>"}}function yl(e,t){const n=e,r=[];if(!n?.tagName)return"";if(pl.HTMLElement&&n instanceof HTMLElement&&n.dataset){if(n.dataset.sentryComponent)return n.dataset.sentryComponent;if(n.dataset.sentryElement)return n.dataset.sentryElement}r.push(n.tagName.toLowerCase());const i=t?.length?t.filter(e=>n.getAttribute(e)).map(e=>[e,n.getAttribute(e)]):null;if(i?.length)i.forEach(e=>{r.push(`[${e[0]}="${e[1]}"]`)});else{n.id&&r.push(`#${n.id}`);const e=n.className;if(e&&sl(e)){const t=e.split(/\s+/);for(const e of t)r.push(`.${e}`)}}for(const e of["aria-label","type","name","title","alt"]){const t=n.getAttribute(e);t&&r.push(`[${e}="${t}"]`)}return r.join("")}function vl(){try{return pl.document.location.href}catch{return""}}function wl(e,t,n){if(!(t in e))return;const r=e[t];if("function"!=typeof r)return;const i=n(r);"function"==typeof i&&xl(i,r);try{e[t]=i}catch{xa&&Ra(`Failed to replace method "${t}" in object`,e)}}function bl(e,t,n){try{Object.defineProperty(e,t,{value:n,writable:!0,configurable:!0})}catch{xa&&Ra(`Failed to add non-enumerable property "${t}" to object`,e)}}function xl(e,t){try{const n=t.prototype||{};e.prototype=t.prototype=n,bl(e,"__sentry_original__",t)}catch{}}function kl(e){return e.he}function Nl(e){if(nl(e))return{message:e.message,name:e.name,stack:e.stack,...Cl(e)};if(dl(e)){const t={type:e.type,target:Sl(e.target),currentTarget:Sl(e.currentTarget),...Cl(e)};return"undefined"!=typeof CustomEvent&&hl(e,CustomEvent)&&(t.detail=e.detail),t}return e}function Sl(e){try{return"undefined"!=typeof Element&&hl(e,Element)?gl(e):{}.toString.call(e)}catch{return"<unknown>"}}function Cl(e){return"object"==typeof e&&null!==e?Object.fromEntries(Object.entries(e)):{}}let _l,$l,Il;function Tl(e){if(void 0!==_l)return _l?_l(e):e();const t=Symbol.for("__SENTRY_SAFE_RANDOM_ID_WRAPPER__"),n=ka;return t in n&&"function"==typeof n[t]?(_l=n[t],_l(e)):(_l=null,e())}function El(){return Tl(()=>Math.random())}function Pl(){return Tl(()=>Date.now())}function zl(e,t=0){return"string"!=typeof e||0===t||e.length<=t?e:`${e.slice(0,t)}...`}function Dl(e,t){if(!Array.isArray(e))return"";const n=[];for(let t=0;t<e.length;t++){const r=e[t];try{ml(r)?n.push(Ua(r)):n.push(String(r))}catch{n.push("[value cannot be serialized]")}}return n.join(t)}function Rl(e,t,n=!1){return!!sl(e)&&(rl(t,"RegExp")?t.test(e):sl(t)?n?e===t:e.includes(t):"function"==typeof t&&t(e))}function Ml(e,t=[],n=!1){return t.some(t=>Rl(e,t,n))}function Ol(e=function(){const e=ka;return e.crypto||e.msCrypto}()){try{if(e?.randomUUID)return Tl(()=>e.randomUUID()).replace(/-/g,"")}catch{}return $l||($l=[1e7]+1e3+4e3+8e3+1e11),$l.replace(/[018]/g,e=>(e^(16*El()&15)>>e/4).toString(16))}function jl(e){return e.exception?.values?.[0]}function Wl(e){const{message:t,event_id:n}=e;if(t)return t;const r=jl(e);return r?r.type&&r.value?`${r.type}: ${r.value}`:r.type||r.value||n||"<unknown>":n||"<unknown>"}function Al(e,t){const n=e.exception=e.exception||{},r=n.values=n.values||[],i=r[0]=r[0]||{};i.value||(i.value=t||""),i.type||(i.type="Error")}function Ll(e,t){const n=jl(e);if(!n)return;const r=n.mechanism;if(n.mechanism={type:"generic",handled:!0,...r,...t},t&&"data"in t){const e={...r?.data,...t.data};n.mechanism.data=e}}function Bl(e){if(function(e){try{return e.me}catch{}}(e))return!0;try{bl(e,"__sentry_captured__",!0)}catch{}return!1}function ql(){return Pl()/1e3}function Fl(){return(Il??(Il=function(){const{performance:e}=ka;if(!e?.now||!e.timeOrigin)return ql;const t=e.timeOrigin;return()=>(t+Tl(()=>e.now()))/1e3}()))()}function Hl(e,t={}){if(t.user&&(!e.ipAddress&&t.user.ip_address&&(e.ipAddress=t.user.ip_address),e.did||t.did||(e.did=t.user.id||t.user.email||t.user.username)),e.timestamp=t.timestamp||Fl(),t.abnormal_mechanism&&(e.abnormal_mechanism=t.abnormal_mechanism),t.ignoreDuration&&(e.ignoreDuration=t.ignoreDuration),t.sid&&(e.sid=32===t.sid.length?t.sid:Ol()),void 0!==t.init&&(e.init=t.init),!e.did&&t.did&&(e.did=`${t.did}`),"number"==typeof t.started&&(e.started=t.started),e.ignoreDuration)e.duration=void 0;else if("number"==typeof t.duration)e.duration=t.duration;else{const t=e.timestamp-e.started;e.duration=t>=0?t:0}t.release&&(e.release=t.release),t.environment&&(e.environment=t.environment),!e.ipAddress&&t.ipAddress&&(e.ipAddress=t.ipAddress),!e.userAgent&&t.userAgent&&(e.userAgent=t.userAgent),"number"==typeof t.errors&&(e.errors=t.errors),t.status&&(e.status=t.status)}function Ul(e,t,n=2){if(!t||"object"!=typeof t||n<=0)return t;if(e&&0===Object.keys(t).length)return e;const r={...e};for(const e in t)({}).hasOwnProperty.call(t,e)&&(r[e]=Ul(r[e],t[e],n-1));return r}function Yl(){return Ol()}function Zl(){return Ol().substring(16)}const Gl="_sentrySpan";function Vl(e,t){t?bl(e,Gl,t):delete e[Gl]}function Ql(e){return e[Gl]}class Jl{constructor(){this.fe=!1,this.pe=[],this.ge=[],this.ye=[],this.ve=[],this.we={},this.be={},this.xe={},this.ke={},this.Ne={},this.Se={},this.Ce={traceId:Yl(),sampleRand:El()}}clone(){const e=new Jl;return e.ye=[...this.ye],e.be={...this.be},e.xe={...this.xe},e.ke={...this.ke},e.Ne={...this.Ne},this.Ne.flags&&(e.Ne.flags={values:[...this.Ne.flags.values]}),e.we=this.we,e._e=this._e,e.$e=this.$e,e.Ie=this.Ie,e.Te=this.Te,e.ge=[...this.ge],e.ve=[...this.ve],e.Se={...this.Se},e.Ce={...this.Ce},e.Ee=this.Ee,e.Pe=this.Pe,e.ze=this.ze,Vl(e,Ql(this)),e}setClient(e){this.Ee=e}setLastEventId(e){this.Pe=e}getClient(){return this.Ee}lastEventId(){return this.Pe}addScopeListener(e){this.pe.push(e)}addEventProcessor(e){return this.ge.push(e),this}setUser(e){return this.we=e||{email:void 0,id:void 0,ip_address:void 0,username:void 0},this.$e&&Hl(this.$e,{user:e}),this.De(),this}getUser(){return this.we}setConversationId(e){return this.ze=e||void 0,this.De(),this}setTags(e){return this.be={...this.be,...e},this.De(),this}setTag(e,t){return this.setTags({[e]:t})}setAttributes(e){return this.xe={...this.xe,...e},this.De(),this}setAttribute(e,t){return this.setAttributes({[e]:t})}removeAttribute(e){return e in this.xe&&(delete this.xe[e],this.De()),this}setExtras(e){return this.ke={...this.ke,...e},this.De(),this}setExtra(e,t){return this.ke={...this.ke,[e]:t},this.De(),this}setFingerprint(e){return this.Te=e,this.De(),this}setLevel(e){return this._e=e,this.De(),this}setTransactionName(e){return this.Ie=e,this.De(),this}setContext(e,t){return null===t?delete this.Ne[e]:this.Ne[e]=t,this.De(),this}setSession(e){return e?this.$e=e:delete this.$e,this.De(),this}getSession(){return this.$e}update(e){if(!e)return this;const t="function"==typeof e?e(this):e,n=t instanceof Jl?t.getScopeData():cl(t)?e:void 0,{tags:r,attributes:i,extra:o,user:s,contexts:a,level:l,fingerprint:c=[],propagationContext:d,conversationId:u}=n||{};return this.be={...this.be,...r},this.xe={...this.xe,...i},this.ke={...this.ke,...o},this.Ne={...this.Ne,...a},s&&Object.keys(s).length&&(this.we=s),l&&(this._e=l),c.length&&(this.Te=c),d&&(this.Ce=d),u&&(this.ze=u),this}clear(){return this.ye=[],this.be={},this.xe={},this.ke={},this.we={},this.Ne={},this._e=void 0,this.Ie=void 0,this.Te=void 0,this.$e=void 0,this.ze=void 0,Vl(this,void 0),this.ve=[],this.setPropagationContext({traceId:Yl(),sampleRand:El()}),this.De(),this}addBreadcrumb(e,t){const n="number"==typeof t?t:100;if(n<=0)return this;const r={timestamp:ql(),...e,message:e.message?zl(e.message,2048):e.message};return this.ye.push(r),this.ye.length>n&&(this.ye=this.ye.slice(-n),this.Ee?.recordDroppedEvent("buffer_overflow","log_item")),this.De(),this}getLastBreadcrumb(){return this.ye[this.ye.length-1]}clearBreadcrumbs(){return this.ye=[],this.De(),this}addAttachment(e){return this.ve.push(e),this}clearAttachments(){return this.ve=[],this}getScopeData(){return{breadcrumbs:this.ye,attachments:this.ve,contexts:this.Ne,tags:this.be,attributes:this.xe,extra:this.ke,user:this.we,level:this._e,fingerprint:this.Te||[],eventProcessors:this.ge,propagationContext:this.Ce,sdkProcessingMetadata:this.Se,transactionName:this.Ie,span:Ql(this),conversationId:this.ze}}setSDKProcessingMetadata(e){return this.Se=Ul(this.Se,e,2),this}setPropagationContext(e){return this.Ce=e,this}getPropagationContext(){return this.Ce}captureException(e,t){const n=t?.event_id||Ol();if(!this.Ee)return xa&&Ma("No client configured on scope - will not capture exception!"),n;const r=new Error("Sentry syntheticException");return this.Ee.captureException(e,{originalException:e,syntheticException:r,...t,event_id:n},this),n}captureMessage(e,t,n){const r=n?.event_id||Ol();if(!this.Ee)return xa&&Ma("No client configured on scope - will not capture message!"),r;const i=n?.syntheticException??new Error(e);return this.Ee.captureMessage(e,t,{originalException:e,syntheticException:i,...n,event_id:r},this),r}captureEvent(e,t){const n=e.event_id||t?.event_id||Ol();return this.Ee?(this.Ee.captureEvent(e,{...t,event_id:n},this),n):(xa&&Ma("No client configured on scope - will not capture event!"),n)}De(){this.fe||(this.fe=!0,this.pe.forEach(e=>{e(this)}),this.fe=!1)}}const Kl=e=>e instanceof Promise&&!e[Xl],Xl=Symbol("chained PromiseLike");class ec{constructor(e,t){let n,r;n=e||new Jl,r=t||new Jl,this.Re=[{scope:n}],this.Me=r}withScope(e){const t=this.Oe();let n;try{n=e(t)}catch(e){throw this.je(),e}return ul(n)?((e,t,n)=>{const r=e.then(e=>(t(),e),e=>{throw n(),e});return Kl(r)&&Kl(e)?r:((e,t)=>{let n=!1;for(const r in e){if(r in t)continue;n=!0;const i=e[r];"function"==typeof i?Object.defineProperty(t,r,{value:(...t)=>i.apply(e,t),enumerable:!0,configurable:!0,writable:!0}):t[r]=i}return n&&Object.assign(t,{[Xl]:!0}),t})(e,r)})(n,()=>this.je(),()=>this.je()):(this.je(),n)}getClient(){return this.getStackTop().client}getScope(){return this.getStackTop().scope}getIsolationScope(){return this.Me}getStackTop(){return this.Re[this.Re.length-1]}Oe(){const e=this.getScope().clone();return this.Re.push({client:this.getClient(),scope:e}),e}je(){return!(this.Re.length<=1||!this.Re.pop())}}function tc(){const e=Ca(Sa());return e.stack=e.stack||new ec(_a("defaultCurrentScope",()=>new Jl),_a("defaultIsolationScope",()=>new Jl))}function nc(e){return tc().withScope(e)}function rc(e,t){const n=tc();return n.withScope(()=>(n.getStackTop().scope=e,t(e)))}function ic(e){return tc().withScope(()=>e(tc().getIsolationScope()))}function oc(e){const t=Ca(e);return t.acs?t.acs:{withIsolationScope:ic,withScope:nc,withSetScope:rc,withSetIsolationScope:(e,t)=>ic(t),getCurrentScope:()=>tc().getScope(),getIsolationScope:()=>tc().getIsolationScope()}}function sc(){return oc(Sa()).getCurrentScope()}function ac(){return oc(Sa()).getIsolationScope()}function lc(...e){const t=oc(Sa());if(2===e.length){const[n,r]=e;return n?t.withSetScope(n,r):t.withScope(r)}return t.withScope(e[0])}function cc(){return sc().getClient()}function dc(e){const t=e.getPropagationContext(),{traceId:n,parentSpanId:r,propagationSpanId:i}=t,o={trace_id:n,span_id:i||Zl()};return r&&(o.parent_span_id=r),o}const uc="sentry.profile_id",hc="sentry.exclusive_time";function mc(e){if(e){if("object"==typeof e&&"deref"in e&&"function"==typeof e.deref)try{return e.deref()}catch{return}return e}}function fc(e){const t=e;return{scope:t.We,isolationScope:mc(t.Ae)}}function pc(e){return e.split(",").map(e=>{const t=e.indexOf("=");return-1===t?[]:[e.slice(0,t),e.slice(t+1)].map(e=>{try{return decodeURIComponent(e.trim())}catch{return}})}).reduce((e,[t,n])=>(t&&n&&(e[t]=n),e),{})}const gc=/^o(\d+)\./,yc=/^(?:(\w+):)\/\/(?:(\w+)(?::(\w+)?)?@)((?:\[[:.%\w]+\]|[\w.-]+))(?::(\d+))?\/(.+)/;function vc(e,t=!1){const{host:n,path:r,pass:i,port:o,projectId:s,protocol:a,publicKey:l}=e;return`${a}://${l}${t&&i?`:${i}`:""}@${n}${o?`:${o}`:""}/${r?`${r}/`:r}${s}`}function wc(e){return{protocol:e.protocol,publicKey:e.publicKey||"",pass:e.pass||"",host:e.host,port:e.port||"",path:e.path||"",projectId:e.projectId}}function bc(e){const t=e.getOptions(),{host:n}=e.getDsn()||{};let r;return t.orgId?r=String(t.orgId):n&&(r=function(e){const t=e.match(gc);return t?.[1]}(n)),r}let xc=!1;function kc(e){const{spanId:t,traceId:n,isRemote:r}=e.spanContext(),i=r?t:_c(e).parent_span_id,o=fc(e).scope;return{parent_span_id:i,span_id:r?o?.getPropagationContext().propagationSpanId||Zl():t,trace_id:n}}function Nc(e){return e&&e.length>0?e.map(({context:{spanId:e,traceId:t,traceFlags:n,...r},attributes:i})=>({span_id:e,trace_id:t,sampled:1===n,attributes:i,...r})):void 0}function Sc(e){return"number"==typeof e?Cc(e):Array.isArray(e)?e[0]+e[1]/1e9:e instanceof Date?Cc(e.getTime()):Fl()}function Cc(e){return e>9999999999?e/1e3:e}function _c(e){if(function(e){return"function"==typeof e.getSpanJSON}(e))return e.getSpanJSON();const{spanId:t,traceId:n}=e.spanContext();if(function(e){const t=e;return!!(t.attributes&&t.startTime&&t.name&&t.endTime&&t.status)}(e)){const{attributes:r,startTime:i,name:o,endTime:s,status:a,links:l}=e;return{span_id:t,trace_id:n,data:r,description:o,parent_span_id:$c(e),start_timestamp:Sc(i),timestamp:Sc(s)||void 0,status:Ic(a),op:r["sentry.op"],origin:r["sentry.origin"],links:Nc(l)}}return{span_id:t,trace_id:n,start_timestamp:0,data:{}}}function $c(e){return"parentSpanId"in e?e.parentSpanId:"parentSpanContext"in e?e.parentSpanContext?.spanId:void 0}function Ic(e){if(e&&0!==e.code)return 1===e.code?"ok":e.message||"internal_error"}const Tc=function(e){return e.Le||e};function Ec(){xc||(Ta(()=>{}),xc=!0)}function Pc(e){Ra(`Ignoring span ${e.op} - ${e.description} because it matches \`ignoreSpans\`.`)}function zc(e,t){if(!t?.length||!e.description)return!1;for(const n of t){if(Rc(n)){if(Rl(e.description,n))return xa&&Pc(e),!0;continue}if(!n.name&&!n.op)continue;const t=!n.name||Rl(e.description,n.name),r=!n.op||e.op&&Rl(e.op,n.op);if(t&&r)return xa&&Pc(e),!0}return!1}function Dc(e,t){const n=t.parent_span_id,r=t.span_id;if(n)for(const t of e)t.parent_span_id===r&&(t.parent_span_id=n)}function Rc(e){return"string"==typeof e||e instanceof RegExp}const Mc="production";function Oc(e,t){const n=t.getOptions(),{publicKey:r}=t.getDsn()||{},i={environment:n.environment||Mc,release:n.release,public_key:r,trace_id:e,org_id:bc(t)};return t.emit("createDsc",i),i}function jc(e){const t=cc();if(!t)return{};const n=Tc(e),r=_c(n),i=r.data,o=n.spanContext().traceState,s=o?.get("sentry.sample_rate")??i["sentry.sample_rate"]??i["sentry.previous_trace_sample_rate"];function a(e){return"number"!=typeof s&&"string"!=typeof s||(e.sample_rate=`${s}`),e}const l=n.Be;if(l)return a(l);const c=o?.get("sentry.dsc"),d=c&&function(e){const t=function(e){if(e&&(sl(e)||Array.isArray(e)))return Array.isArray(e)?e.reduce((e,t)=>{const n=pc(t);return Object.entries(n).forEach(([t,n])=>{e[t]=n}),e},{}):pc(e)}(e);if(!t)return;const n=Object.entries(t).reduce((e,[t,n])=>(t.startsWith("sentry-")&&(e[t.slice(7)]=n),e),{});return Object.keys(n).length>0?n:void 0}(c);if(d)return a(d);const u=Oc(e.spanContext().traceId,t),h=i["sentry.source"]??i["sentry.span.source"],m=r.description;return"url"!==h&&m&&(u.transaction=m),function(){if("boolean"==typeof __SENTRY_TRACING__&&!__SENTRY_TRACING__)return!1;const e=cc()?.getOptions();return!(!e||null==e.tracesSampleRate&&!e.tracesSampler)}()&&(u.sampled=String(function(e){const{traceFlags:t}=e.spanContext();return 1===t}(n)),u.sample_rand=o?.get("sentry.sample_rand")??fc(n).scope?.getPropagationContext().sampleRand.toString()),a(u),t.emit("createDsc",u,n),u}function Wc(e,t=100,n=1/0){try{return Lc("",e,t,n)}catch(e){return{ERROR:`**non-serializable** (${e})`}}}function Ac(e,t=3,n=102400){const r=Wc(e,t);return i=r,function(e){return~-encodeURI(e).split(/%..|./).length}(JSON.stringify(i))>n?Ac(e,t-1,n):r;var i}function Lc(e,t,n=1/0,r=1/0,i=function(){const e=new WeakSet;return[function(t){return!!e.has(t)||(e.add(t),!1)},function(t){e.delete(t)}]}()){const[o,s]=i;if(null==t||["boolean","string"].includes(typeof t)||"number"==typeof t&&Number.isFinite(t))return t;const a=function(e,t){try{if("domain"===e&&t&&"object"==typeof t&&t.qe)return"[Domain]";if("domainEmitter"===e)return"[DomainEmitter]";if("undefined"!=typeof global&&t===global)return"[Global]";if("undefined"!=typeof window&&t===window)return"[Window]";if("undefined"!=typeof document&&t===document)return"[Document]";if(ml(t))return Ua(t);if(cl(n=t)&&"nativeEvent"in n&&"preventDefault"in n&&"stopPropagation"in n)return"[SyntheticEvent]";if("number"==typeof t&&!Number.isFinite(t))return`[${t}]`;if("function"==typeof t)return`[Function: ${Fa(t)}]`;if("symbol"==typeof t)return`[${String(t)}]`;if("bigint"==typeof t)return`[BigInt: ${String(t)}]`;const r=function(e){const t=Object.getPrototypeOf(e);return t?.constructor?t.constructor.name:"null prototype"}(t);return/^HTML(\w*)Element$/.test(r)?`[HTMLElement: ${r}]`:`[object ${r}]`}catch(e){return`**non-serializable** (${e})`}var n}(e,t);if(!a.startsWith("[object "))return a;if(t.Fe)return t;const l="number"==typeof t.He?t.He:n;if(0===l)return a.replace("object ","");if(o(t))return"[Circular ~]";const c=t;if(c&&"function"==typeof c.toJSON)try{return Lc("",c.toJSON(),l-1,r,i)}catch{}const d=Array.isArray(t)?[]:{};let u=0;const h=Nl(t);for(const e in h){if(!{}.hasOwnProperty.call(h,e))continue;if(u>=r){d[e]="[MaxProperties ~]";break}const t=h[e];d[e]=Lc(e,t,l-1,r,i),u++}return s(t),d}function Bc(e,t=[]){return[e,t]}function qc(e,t){const[n,r]=e;return[n,[...r,t]]}function Fc(e,t){const n=e[1];for(const e of n)if(t(e,e[0].type))return!0;return!1}function Hc(e){const t=Ca(ka);return t.encodePolyfill?t.encodePolyfill(e):(new TextEncoder).encode(e)}function Uc(e){const[t,n]=e;let r=JSON.stringify(t);function i(e){"string"==typeof r?r="string"==typeof e?r+e:[Hc(r),e]:r.push("string"==typeof e?Hc(e):e)}for(const e of n){const[t,n]=e;if(i(`\n${JSON.stringify(t)}\n`),"string"==typeof n||n instanceof Uint8Array)i(n);else{let e;try{e=JSON.stringify(n)}catch{e=JSON.stringify(Wc(n))}i(e)}}return"string"==typeof r?r:function(e){const t=e.reduce((e,t)=>e+t.length,0),n=new Uint8Array(t);let r=0;for(const t of e)n.set(t,r),r+=t.length;return n}(r)}function Yc(e){const t="string"==typeof e.data?Hc(e.data):e.data;return[{type:"attachment",length:t.length,filename:e.filename,content_type:e.contentType,attachment_type:e.attachmentType},t]}const Zc={sessions:"session",event:"error",client_report:"internal",user_report:"default",profile_chunk:"profile",replay_event:"replay",replay_recording:"replay",check_in:"monitor",raw_security:"security",log:"log_item",trace_metric:"metric"};function Gc(e){return function(e){return e in Zc}(e)?Zc[e]:e}function Vc(e){if(!e?.sdk)return;const{name:t,version:n}=e.sdk;return{name:t,version:n}}function Qc(e,t){const{extra:n,tags:r,attributes:i,user:o,contexts:s,level:a,sdkProcessingMetadata:l,breadcrumbs:c,fingerprint:d,eventProcessors:u,attachments:h,propagationContext:m,transactionName:f,span:p}=t;Jc(e,"extra",n),Jc(e,"tags",r),Jc(e,"attributes",i),Jc(e,"user",o),Jc(e,"contexts",s),e.sdkProcessingMetadata=Ul(e.sdkProcessingMetadata,l,2),a&&(e.level=a),f&&(e.transactionName=f),p&&(e.span=p),c.length&&(e.breadcrumbs=[...e.breadcrumbs,...c]),d.length&&(e.fingerprint=[...e.fingerprint,...d]),u.length&&(e.eventProcessors=[...e.eventProcessors,...u]),h.length&&(e.attachments=[...e.attachments,...h]),e.propagationContext={...e.propagationContext,...m}}function Jc(e,t,n){e[t]=Ul(e[t],n,1)}function Kc(e,t){const n=_a("globalScope",()=>new Jl).getScopeData();return e&&Qc(n,e.getScopeData()),t&&Qc(n,t.getScopeData()),n}function Xc(e){return new td(t=>{t(e)})}function ed(e){return new td((t,n)=>{n(e)})}class td{constructor(e){this.Ue=0,this.Ye=[],this.Ze(e)}then(e,t){return new td((n,r)=>{this.Ye.push([!1,t=>{if(e)try{n(e(t))}catch(e){r(e)}else n(t)},e=>{if(t)try{n(t(e))}catch(e){r(e)}else r(e)}]),this.Ge()})}catch(e){return this.then(e=>e,e)}finally(e){return new td((t,n)=>{let r,i;return this.then(t=>{i=!1,r=t,e&&e()},t=>{i=!0,r=t,e&&e()}).then(()=>{i?n(r):t(r)})})}Ge(){if(0===this.Ue)return;const e=this.Ye.slice();this.Ye=[],e.forEach(e=>{e[0]||(1===this.Ue&&e[1](this.Ve),2===this.Ue&&e[2](this.Ve),e[0]=!0)})}Ze(e){const t=(e,t)=>{0===this.Ue&&(ul(t)?t.then(n,r):(this.Ue=e,this.Ve=t,this.Ge()))},n=e=>{t(1,e)},r=e=>{t(2,e)};try{e(n,r)}catch(e){r(e)}}}function nd(e,t,n,r=0){try{const i=rd(t,n,e,r);return ul(i)?i:Xc(i)}catch(e){return ed(e)}}function rd(e,t,n,r){const i=n[r];if(!e||!i)return e;const o=i({...e},t);return xa&&null===o&&Ra(`Event processor "${i.id||"?"}" dropped event`),ul(o)?o.then(e=>rd(e,t,n,r+1)):rd(o,t,n,r+1)}let id,od,sd,ad;function ld(e,t,n,r,i,o){const{normalizeDepth:s=3,normalizeMaxBreadth:a=1e3}=e,l={...t,event_id:t.event_id||n.event_id||Ol(),timestamp:t.timestamp||ql()},c=n.integrations||e.integrations.map(e=>e.name);!function(e,t){const{environment:n,release:r,dist:i,maxValueLength:o}=t;e.environment=e.environment||n||Mc,!e.release&&r&&(e.release=r),!e.dist&&i&&(e.dist=i);const s=e.request;s?.url&&o&&(s.url=zl(s.url,o)),o&&e.exception?.values?.forEach(e=>{e.value&&(e.value=zl(e.value,o))})}(l,e),function(e,t){t.length>0&&(e.sdk=e.sdk||{},e.sdk.integrations=[...e.sdk.integrations||[],...t])}(l,c),i&&i.emit("applyFrameMetadata",t),void 0===t.type&&function(e,t){const n=function(e){const t=ka.Qe,n=ka.Je;if(!t&&!n)return{};const r=t?Object.keys(t):[],i=n?Object.keys(n):[];if(ad&&r.length===od&&i.length===sd)return ad;od=r.length,sd=i.length,ad={},id||(id={});const o=(t,n)=>{for(const r of t){const t=n[r],i=id?.[r];if(i&&ad&&t)ad[i[0]]=t,id&&(id[r]=[i[0],t]);else if(t){const n=e(r);for(let e=n.length-1;e>=0;e--){const i=n[e],o=i?.filename;if(o&&ad&&id){ad[o]=t,id[r]=[o,t];break}}}}};return t&&o(r,t),n&&o(i,n),ad}(t);e.exception?.values?.forEach(e=>{e.stacktrace?.frames?.forEach(e=>{e.filename&&(e.debug_id=n[e.filename])})})}(l,e.stackParser);const d=function(e,t){if(!t)return e;const n=e?e.clone():new Jl;return n.update(t),n}(r,n.captureContext);n.mechanism&&Ll(l,n.mechanism);const u=i?i.getEventProcessors():[],h=Kc(o,d),m=[...n.attachments||[],...h.attachments];m.length&&(n.attachments=m),function(e,t){const{fingerprint:n,span:r,breadcrumbs:i,sdkProcessingMetadata:o}=t;!function(e,t){const{extra:n,tags:r,user:i,contexts:o,level:s,transactionName:a}=t;Object.keys(n).length&&(e.extra={...n,...e.extra}),Object.keys(r).length&&(e.tags={...r,...e.tags}),Object.keys(i).length&&(e.user={...i,...e.user}),Object.keys(o).length&&(e.contexts={...o,...e.contexts}),s&&(e.level=s),a&&"transaction"!==e.type&&(e.transaction=a)}(e,t),r&&function(e,t){e.contexts={trace:kc(t),...e.contexts},e.sdkProcessingMetadata={dynamicSamplingContext:jc(t),...e.sdkProcessingMetadata};const n=_c(Tc(t)).description;n&&!e.transaction&&"transaction"===e.type&&(e.transaction=n)}(e,r),function(e,t){e.fingerprint=e.fingerprint?Array.isArray(e.fingerprint)?e.fingerprint:[e.fingerprint]:[],t&&(e.fingerprint=e.fingerprint.concat(t)),e.fingerprint.length||delete e.fingerprint}(e,n),function(e,t){const n=[...e.breadcrumbs||[],...t];e.breadcrumbs=n.length?n:void 0}(e,i),function(e,t){e.sdkProcessingMetadata={...e.sdkProcessingMetadata,...t}}(e,o)}(l,h);const f=[...u,...h.eventProcessors];return(n.data&&!0===n.data.Ke?Xc(l):nd(f,l,n)).then(e=>(e&&function(e){const t={};if(e.exception?.values?.forEach(e=>{e.stacktrace?.frames?.forEach(e=>{e.debug_id&&(e.abs_path?t[e.abs_path]=e.debug_id:e.filename&&(t[e.filename]=e.debug_id),delete e.debug_id)})}),0===Object.keys(t).length)return;e.debug_meta=e.debug_meta||{},e.debug_meta.images=e.debug_meta.images||[];const n=e.debug_meta.images;Object.entries(t).forEach(([e,t])=>{n.push({type:"sourcemap",code_file:e,debug_id:t})})}(e),"number"==typeof s&&s>0?function(e,t,n){if(!e)return null;const r={...e,...e.breadcrumbs&&{breadcrumbs:e.breadcrumbs.map(e=>({...e,...e.data&&{data:Wc(e.data,t,n)}}))},...e.user&&{user:Wc(e.user,t,n)},...e.contexts&&{contexts:Wc(e.contexts,t,n)},...e.extra&&{extra:Wc(e.extra,t,n)}};return e.contexts?.trace&&r.contexts&&(r.contexts.trace=e.contexts.trace,e.contexts.trace.data&&(r.contexts.trace.data=Wc(e.contexts.trace.data,t,n))),e.spans&&(r.spans=e.spans.map(e=>({...e,...e.data&&{data:Wc(e.data,t,n)}}))),e.contexts?.flags&&r.contexts&&(r.contexts.flags=Wc(e.contexts.flags,3,n)),r}(e,s,a):e))}function cd(e){return sc().captureException(e,void 0)}function dd(e,t){const n="string"==typeof t?t:void 0,r="string"!=typeof t?{captureContext:t}:void 0;return sc().captureMessage(e,n,r)}function ud(e,t){return sc().captureEvent(e,t)}function hd(e){const t=ac(),{user:n}=Kc(t,sc()),{userAgent:r}=ka.navigator||{},i=function(e){const t=Fl(),n={sid:Ol(),init:!0,timestamp:t,started:t,duration:0,status:"ok",errors:0,ignoreDuration:!1,toJSON:()=>function(e){return{sid:`${e.sid}`,init:e.init,started:new Date(1e3*e.started).toISOString(),timestamp:new Date(1e3*e.timestamp).toISOString(),status:e.status,errors:e.errors,did:"number"==typeof e.did||"string"==typeof e.did?`${e.did}`:void 0,duration:e.duration,abnormal_mechanism:e.abnormal_mechanism,attrs:{release:e.release,environment:e.environment,ip_address:e.ipAddress,user_agent:e.userAgent}}}(n)};return e&&Hl(n,e),n}({user:n,...r&&{userAgent:r},...e}),o=t.getSession();return"ok"===o?.status&&Hl(o,{status:"exited"}),md(),t.setSession(i),i}function md(){const e=ac(),t=sc().getSession()||e.getSession();t&&function(e){let t={};"ok"===e.status&&(t={status:"exited"}),Hl(e,t)}(t),fd(),e.setSession()}function fd(){const e=ac(),t=cc(),n=e.getSession();n&&t&&t.captureSession(n)}function pd(e=!1){e?md():fd()}const gd=[];function yd(e){const t=e.defaultIntegrations||[],n=e.integrations;let r;if(t.forEach(e=>{e.isDefaultInstance=!0}),Array.isArray(n))r=[...t,...n];else if("function"==typeof n){const e=n(t);r=Array.isArray(e)?e:[e]}else r=t;return function(e){const t={};return e.forEach(e=>{const{name:n}=e,r=t[n];r&&!r.isDefaultInstance&&e.isDefaultInstance||(t[n]=e)}),Object.values(t)}(r)}function vd(e,t){for(const n of t)n?.afterAllSetup&&n.afterAllSetup(e)}function wd(e,t,n){if(n[t.name])xa&&Ra(`Integration skipped because it was already installed: ${t.name}`);else{if(n[t.name]=t,gd.includes(t.name)||"function"!=typeof t.setupOnce||(t.setupOnce(),gd.push(t.name)),t.setup&&"function"==typeof t.setup&&t.setup(e),"function"==typeof t.preprocessEvent){const n=t.preprocessEvent.bind(t);e.on("preprocessEvent",(t,r)=>n(t,r,e))}if("function"==typeof t.processEvent){const n=t.processEvent.bind(t),r=Object.assign((t,r)=>n(t,r,e),{id:t.name});e.addEventProcessor(r)}xa&&Ra(`Integration installed: ${t.name}`)}}function bd(e,t){const n=t??function(e){return xd().get(e)}(e)??[];if(0===n.length)return;const r=e.getOptions(),i=function(e,t,n,r){const i={};return t?.sdk&&(i.sdk={name:t.sdk.name,version:t.sdk.version}),n&&r&&(i.dsn=vc(r)),Bc(i,[(o=e,[{type:"log",item_count:o.length,content_type:"application/vnd.sentry.items.log+json"},{items:o}])]);var o}(n,r.Xe,r.tunnel,e.getDsn());xd().set(e,[]),e.emit("flushLogs"),e.sendEnvelope(i)}function xd(){return _a("clientToLogBufferMap",()=>new WeakMap)}function kd(e,t){const n=t??function(e){return Nd().get(e)}(e)??[];if(0===n.length)return;const r=e.getOptions(),i=function(e,t,n,r){const i={};return t?.sdk&&(i.sdk={name:t.sdk.name,version:t.sdk.version}),n&&r&&(i.dsn=vc(r)),Bc(i,[(o=e,[{type:"trace_metric",item_count:o.length,content_type:"application/vnd.sentry.items.trace-metric+json"},{items:o}])]);var o}(n,r.Xe,r.tunnel,e.getDsn());Nd().set(e,[]),e.emit("flushMetrics"),e.sendEnvelope(i)}function Nd(){return _a("clientToMetricBufferMap",()=>new WeakMap)}function Sd(e){return"object"==typeof e&&"function"==typeof e.unref&&e.unref(),e}const Cd=Symbol.for("SentryBufferFullError");function _d(e=100){const t=new Set;function n(e){t.delete(e)}return{get $(){return Array.from(t)},add:function(r){if(!(t.size<e))return ed(Cd);const i=r();return t.add(i),i.then(()=>n(i),()=>n(i)),i},drain:function(e){if(!t.size)return Xc(!0);const n=Promise.allSettled(Array.from(t)).then(()=>!0);if(!e)return n;const r=[n,new Promise(t=>Sd(setTimeout(()=>t(!1),e)))];return Promise.race(r)}}}function $d(e,t,n=_d(e.bufferSize||64)){let r={};return{send:function(i){const o=[];if(Fc(i,(t,n)=>{const i=Gc(n);!function(e,t,n=Pl()){return function(e,t){return e[t]||e.all||0}(e,t)>n}(r,i)?o.push(t):e.recordDroppedEvent("ratelimit_backoff",i)}),0===o.length)return Promise.resolve({});const s=Bc(i[0],o),a=t=>{!function(e,t){return Fc(e,(e,n)=>t.includes(n))}(s,["client_report"])?Fc(s,(n,r)=>{e.recordDroppedEvent(t,Gc(r))}):xa&&Ma(`Dropping client report. Will not send outcomes (reason: ${t}).`)};return n.add(()=>t({body:Uc(s)}).then(e=>413===e.statusCode?(xa&&Oa("Sentry responded with status code 413. Envelope was discarded due to exceeding size limits."),a("send_error"),e):(xa&&void 0!==e.statusCode&&(e.statusCode<200||e.statusCode>=300)&&Ma(`Sentry responded with status code ${e.statusCode} to sent event.`),r=function(e,{statusCode:t,headers:n},r=Pl()){const i={...e},o=n?.["x-sentry-rate-limits"],s=n?.["retry-after"];if(o)for(const e of o.trim().split(",")){const[t,n,,,o]=e.split(":",5),s=parseInt(t,10),a=1e3*(isNaN(s)?60:s);if(n)for(const e of n.split(";"))"metric_bucket"===e&&o&&!o.split(";").includes("custom")||(i[e]=r+a);else i.all=r+a}else s?i.all=r+function(e,t=Pl()){const n=parseInt(`${e}`,10);if(!isNaN(n))return 1e3*n;const r=Date.parse(`${e}`);return isNaN(r)?6e4:r-t}(s,r):429===t&&(i.all=r+6e4);return i}(r,e),e),e=>{throw a("network_error"),xa&&Oa("Encountered error running transport request:",e),e})).then(e=>e,e=>{if(e===Cd)return xa&&Oa("Skipped sending event because buffer is full."),a("queue_overflow"),Promise.resolve({});throw e})},flush:e=>n.drain(e)}}function Id(e){const t=[];e.message&&t.push(e.message);try{const n=e.exception.values[e.exception.values.length-1];n?.value&&(t.push(n.value),n.type&&t.push(`${n.type}: ${n.value}`))}catch{}return t}const Td="Not capturing exception because it's already been captured.",Ed="Discarded session because of missing or non-string release",Pd=Symbol.for("SentryInternalError"),zd=Symbol.for("SentryDoNotSendEventError");function Dd(e){return{message:e,[Pd]:!0}}function Rd(e){return{message:e,[zd]:!0}}function Md(e){return!!e&&"object"==typeof e&&Pd in e}function Od(e){return!!e&&"object"==typeof e&&zd in e}function jd(e,t,n,r,i){let o,s=0,a=!1;e.on(n,()=>{s=0,clearTimeout(o),a=!1}),e.on(t,t=>{s+=r(t),s>=8e5?i(e):a||(a=!0,o=Sd(setTimeout(()=>{i(e)},5e3)))}),e.on("flush",()=>{i(e)})}class Wd{constructor(e){if(this.et=e,this.nt={},this.rt=0,this.it={},this.ot={},this.ge=[],this.st=_d(e.transportOptions?.bufferSize??64),e.dsn?this.lt=function(e){const t="string"==typeof e?function(e){const t=yc.exec(e);if(!t)return void Ta(()=>{});const[n,r,i="",o="",s="",a=""]=t.slice(1);let l="",c=a;const d=c.split("/");if(d.length>1&&(l=d.slice(0,-1).join("/"),c=d.pop()),c){const e=c.match(/^\d+/);e&&(c=e[0])}return wc({host:o,pass:i,path:l,projectId:c,port:s,protocol:n,publicKey:r})}(e):wc(e);if(t&&function(e){if(!xa)return!0;const{port:t,projectId:n,protocol:r}=e;return!(["protocol","publicKey","host","projectId"].find(t=>!e[t]&&(Oa(`Invalid Sentry Dsn: ${t} missing`),!0))||(n.match(/^\d+$/)?function(e){return"http"===e||"https"===e}(r)?t&&isNaN(parseInt(t,10))&&(Oa(`Invalid Sentry Dsn: Invalid port ${t}`),1):(Oa(`Invalid Sentry Dsn: Invalid protocol ${r}`),1):(Oa(`Invalid Sentry Dsn: Invalid projectId ${n}`),1)))}(t))return t}(e.dsn):xa&&Ma("No DSN provided, client will not send events."),this.lt){const i=(t=this.lt,n=e.tunnel,r=e.Xe?e.Xe.sdk:void 0,n||`${function(e){return`${function(e){const t=e.protocol?`${e.protocol}:`:"",n=e.port?`:${e.port}`:"";return`${t}//${e.host}${n}${e.path?`/${e.path}`:""}/api/`}(e)}${e.projectId}/envelope/`}(t)}?${function(e,t){const n={sentry_version:"7"};return e.publicKey&&(n.sentry_key=e.publicKey),t&&(n.sentry_client=`${t.name}/${t.version}`),new URLSearchParams(n).toString()}(t,r)}`);this.ct=e.transport({tunnel:this.et.tunnel,recordDroppedEvent:this.recordDroppedEvent.bind(this),...e.transportOptions,url:i})}var t,n,r;this.et.enableLogs=this.et.enableLogs??this.et.ut?.enableLogs,this.et.enableLogs&&jd(this,"afterCaptureLog","flushLogs",Fd,bd),(this.et.enableMetrics??this.et.ut?.enableMetrics??1)&&jd(this,"afterCaptureMetric","flushMetrics",qd,kd)}captureException(e,t,n){const r=Ol();if(Bl(e))return xa&&Ra(Td),r;const i={event_id:r,...t};return this.ht(()=>this.eventFromException(e,i).then(e=>this.ft(e,i,n)).then(e=>e),"error"),i.event_id}captureMessage(e,t,n,r){const i={event_id:Ol(),...n},o=al(e)?e:String(e),s=ll(e),a=s?this.eventFromMessage(o,t,i):this.eventFromException(e,i);return this.ht(()=>a.then(e=>this.ft(e,i,r)),s?"unknown":"error"),i.event_id}captureEvent(e,t,n){const r=Ol();if(t?.originalException&&Bl(t.originalException))return xa&&Ra(Td),r;const i={event_id:r,...t},o=e.sdkProcessingMetadata||{},s=o.capturedSpanScope,a=o.capturedSpanIsolationScope,l=Ad(e.type);return this.ht(()=>this.ft(e,i,s||n,a),l),i.event_id}captureSession(e){this.sendSession(e),Hl(e,{init:!1})}getDsn(){return this.lt}getOptions(){return this.et}getSdkMetadata(){return this.et.Xe}getTransport(){return this.ct}async flush(e){const t=this.ct;if(!t)return!0;this.emit("flush");const n=await this.gt(e),r=await t.flush(e);return n&&r}async close(e){bd(this);const t=await this.flush(e);return this.getOptions().enabled=!1,this.emit("close"),t}getEventProcessors(){return this.ge}addEventProcessor(e){this.ge.push(e)}init(){(this.yt()||this.et.integrations.some(({name:e})=>e.startsWith("Spotlight")))&&this.vt()}getIntegrationByName(e){return this.nt[e]}addIntegration(e){const t=this.nt[e.name];!t&&e.beforeSetup&&e.beforeSetup(this),wd(this,e,this.nt),t||vd(this,[e])}sendEvent(e,t={}){this.emit("beforeSendEvent",e,t);let n=function(e,t,n,r){const i=Vc(n),o=e.type&&"replay_event"!==e.type?e.type:"event";!function(e,t){if(!t)return e;const n=e.sdk||{};e.sdk={...n,name:n.name||t.name,version:n.version||t.version,integrations:[...e.sdk?.integrations||[],...t.integrations||[]],packages:[...e.sdk?.packages||[],...t.packages||[]],settings:e.sdk?.settings||t.settings?{...e.sdk?.settings,...t.settings}:void 0}}(e,n?.sdk);const s=function(e,t,n,r){const i=e.sdkProcessingMetadata?.dynamicSamplingContext;return{event_id:e.event_id,sent_at:(new Date).toISOString(),...t&&{sdk:t},...!!n&&r&&{dsn:vc(r)},...i&&{trace:i}}}(e,i,r,t);return delete e.sdkProcessingMetadata,Bc(s,[[{type:o},e]])}(e,this.lt,this.et.Xe,this.et.tunnel);for(const e of t.attachments||[])n=qc(n,Yc(e));this.sendEnvelope(n).then(t=>this.emit("afterSendEvent",e,t))}sendSession(e){const{release:t,environment:n=Mc}=this.et;if("aggregates"in e){const r=e.attrs||{};if(!r.release&&!t)return void(xa&&Ma(Ed));r.release=r.release||t,r.environment=r.environment||n,e.attrs=r}else{if(!e.release&&!t)return void(xa&&Ma(Ed));e.release=e.release||t,e.environment=e.environment||n}this.emit("beforeSendSession",e);const r=function(e,t,n,r){const i=Vc(n);return Bc({sent_at:(new Date).toISOString(),...i&&{sdk:i},...!!r&&t&&{dsn:vc(t)}},["aggregates"in e?[{type:"sessions"},e]:[{type:"session"},e.toJSON()]])}(e,this.lt,this.et.Xe,this.et.tunnel);this.sendEnvelope(r)}recordDroppedEvent(e,t,n=1){if(this.et.sendClientReports){const r=`${e}:${t}`;xa&&Ra(`Recording outcome: "${r}"${n>1?` (${n} times)`:""}`),this.it[r]=(this.it[r]||0)+n}}on(e,t){const n=this.ot[e]=this.ot[e]||new Set,r=(...e)=>t(...e);return n.add(r),()=>{n.delete(r)}}emit(e,...t){const n=this.ot[e];n&&n.forEach(e=>e(...t))}async sendEnvelope(e){if(this.emit("beforeEnvelope",e),this.yt()&&this.ct)try{return await this.ct.send(e)}catch(e){return xa&&Oa("Error while sending envelope:",e),{}}return xa&&Oa("Transport disabled"),{}}dispose(){}vt(){const{integrations:e}=this.et;this.nt=function(e,t){const n={};return t.forEach(t=>{t?.beforeSetup&&t.beforeSetup(e)}),t.forEach(t=>{t&&wd(e,t,n)}),n}(this,e),vd(this,e)}wt(e,t){let n="fatal"===t.level,r=!1;const i=t.exception?.values;if(i){r=!0,n=!1;for(const e of i)if(!1===e.mechanism?.handled){n=!0;break}}const o="ok"===e.status;(o&&0===e.errors||o&&n)&&(Hl(e,{...n&&{status:"crashed"},errors:e.errors||Number(r||n)}),this.captureSession(e))}async gt(e){let t=0;for(;!e||t<e;){if(await new Promise(e=>setTimeout(e,1)),!this.rt)return!0;t++}return!1}yt(){return!1!==this.getOptions().enabled&&void 0!==this.ct}bt(e,t,n,r){const i=this.getOptions(),o=Object.keys(this.nt);return!t.integrations&&o?.length&&(t.integrations=o),this.emit("preprocessEvent",e,t),e.type||r.setLastEventId(e.event_id||t.event_id),ld(i,e,t,n,this,r).then(e=>{if(null===e)return e;this.emit("postprocessEvent",e,t),e.contexts={trace:{...e.contexts?.trace,...dc(n)},...e.contexts};const r=function(e,t){const n=t.getPropagationContext();return n.dsc||Oc(n.traceId,e)}(this,n);return e.sdkProcessingMetadata={dynamicSamplingContext:r,...e.sdkProcessingMetadata},e})}ft(e,t={},n=sc(),r=ac()){return xa&&Ld(e)&&Ra(`Captured error event \`${Id(e)[0]||"<unknown>"}\``),this.xt(e,t,n,r).then(e=>e.event_id,e=>{xa&&(Od(e)?Ra(e.message):Md(e)?Ma(e.message):Ma(e))})}xt(e,t,n,r){const i=this.getOptions(),{sampleRate:o}=i,s=Bd(e),a=Ld(e),l=`before send for type \`${e.type||"error"}\``,c=void 0===o?void 0:function(e){if("boolean"==typeof e)return Number(e);const t="string"==typeof e?parseFloat(e):e;return"number"!=typeof t||isNaN(t)||t<0||t>1?void 0:t}(o);if(a&&"number"==typeof c&&El()>c)return this.recordDroppedEvent("sample_rate","error"),ed(Rd(`Discarding event because it's not included in the random sample (sampling rate = ${o})`));const d=Ad(e.type);return this.bt(e,t,n,r).then(e=>{if(null===e)throw this.recordDroppedEvent("event_processor",d),Rd("An event processor returned `null`, will not send event.");if(!0===t.data?.Ke)return e;const n=function(e,t,n,r){const{beforeSend:i,beforeSendTransaction:o,ignoreSpans:s}=t,a=!((l=t.beforeSendSpan)&&"function"==typeof l&&"kt"in l&&l.kt)&&t.beforeSendSpan;var l;let c=n;if(Ld(c)&&i)return i(c,r);if(Bd(c)){if(a||s){const t=function(e){const{trace_id:t,parent_span_id:n,span_id:r,status:i,origin:o,data:s,op:a}=e.contexts?.trace??{};return{data:s??{},description:e.transaction,op:a,parent_span_id:n,span_id:r??"",start_timestamp:e.start_timestamp??0,status:i,timestamp:e.timestamp,trace_id:t??"",origin:o,profile_id:s?.[uc],exclusive_time:s?.[hc],measurements:e.measurements,is_segment:!0}}(c);if(s?.length&&zc(t,s))return null;if(a){const e=a(t);e?c=Ul(n,{type:"transaction",timestamp:(d=e).timestamp,start_timestamp:d.start_timestamp,transaction:d.description,contexts:{trace:{trace_id:d.trace_id,span_id:d.span_id,parent_span_id:d.parent_span_id,op:d.op,status:d.status,origin:d.origin,data:{...d.data,...d.profile_id&&{[uc]:d.profile_id},...d.exclusive_time&&{[hc]:d.exclusive_time}}}},measurements:d.measurements}):Ec()}if(c.spans){const t=[],n=c.spans;for(const e of n)if(s?.length&&zc(e,s))Dc(n,e);else if(a){const n=a(e);n?t.push(n):(Ec(),t.push(e))}else t.push(e);const r=c.spans.length-t.length;r&&e.recordDroppedEvent("before_send","span",r),c.spans=t}}if(o){if(c.spans){const e=c.spans.length;c.sdkProcessingMetadata={...n.sdkProcessingMetadata,spanCountBeforeProcessing:e}}return o(c,r)}}var d;return c}(this,i,e,t);return function(e,t){const n=`${t} must return \`null\` or a valid event.`;if(ul(e))return e.then(e=>{if(!cl(e)&&null!==e)throw Dd(n);return e},e=>{throw Dd(`${t} rejected with ${e}`)});if(!cl(e)&&null!==e)throw Dd(n);return e}(n,l)}).then(i=>{if(null===i){if(this.recordDroppedEvent("before_send",d),s){const t=1+(e.spans||[]).length;this.recordDroppedEvent("before_send","span",t)}throw Rd(`${l} returned \`null\`, will not send event.`)}const o=n.getSession()||r.getSession();if(a&&o&&this.wt(o,i),s){const e=(i.sdkProcessingMetadata?.spanCountBeforeProcessing||0)-(i.spans?i.spans.length:0);e>0&&this.recordDroppedEvent("before_send","span",e)}const c=i.transaction_info;if(s&&c&&i.transaction!==e.transaction){const e="custom";i.transaction_info={...c,source:e}}return this.sendEvent(i,t),i}).then(null,e=>{if(Od(e)||Md(e))throw e;throw this.captureException(e,{mechanism:{handled:!1,type:"internal"},data:{Ke:!0},originalException:e}),Dd(`Event processing pipeline threw an error, original event will not be sent. Details have been sent as a new event.\nReason: ${e}`)})}ht(e,t){this.rt++,this.st.add(e).then(e=>(this.rt--,e),e=>(this.rt--,e===Cd&&this.recordDroppedEvent("queue_overflow",t),e))}Nt(){const e=this.it;return this.it={},Object.entries(e).map(([e,t])=>{const[n,r]=e.split(":");return{reason:n,category:r,quantity:t}})}St(){xa&&Ra("Flushing outcomes...");const e=this.Nt();if(0===e.length)return void(xa&&Ra("No outcomes to send"));if(!this.lt)return void(xa&&Ra("No dsn provided, will not send outcomes"));xa&&Ra("Sending outcomes:",e);const t=(n=e,Bc((r=this.et.tunnel&&vc(this.lt))?{dsn:r}:{},[[{type:"client_report"},{timestamp:ql(),discarded_events:n}]]));var n,r;this.sendEnvelope(t)}}function Ad(e){return"replay_event"===e?"replay":e||"error"}function Ld(e){return void 0===e.type}function Bd(e){return"transaction"===e.type}function qd(e){let t=0;return e.name&&(t+=2*e.name.length),t+=8,t+Hd(e.attributes)}function Fd(e){let t=0;return e.message&&(t+=2*e.message.length),t+Hd(e.attributes)}function Hd(e){if(!e)return 0;let t=0;return Object.values(e).forEach(e=>{Array.isArray(e)?t+=e.length*Ud(e[0]):ll(e)?t+=Ud(e):t+=100}),t}function Ud(e){return"string"==typeof e?2*e.length:"number"==typeof e?8:"boolean"==typeof e?4:0}function Yd(e){return function(e){return nl(e)&&"Ct"in e&&"string"==typeof e.Ct}(e)?`${e.message} (${e.Ct})`:e.message}function Zd(e){if(!e)return{};const t=e.match(/^(([^:/?#]+):)?(\/\/([^/?#]*))?([^?#]*)(\?([^#]*))?(#(.*))?$/);if(!t)return{};const n=t[6]||"",r=t[8]||"";return{host:t[4],path:t[5],protocol:t[2],search:n,hash:r,relative:t[5]+n+r}}function Gd(e){"aggregates"in e?void 0===e.attrs?.ip_address&&(e.attrs={...e.attrs,ip_address:"{{auto}}"}):void 0===e.ipAddress&&(e.ipAddress="{{auto}}")}const Vd=100;function Qd(e,t){const n=cc(),r=ac();if(!n)return;const{beforeBreadcrumb:i=null,maxBreadcrumbs:o=Vd}=n.getOptions();if(o<=0)return;const s={timestamp:ql(),...e},a=i?Ta(()=>i(s,t)):s;null!==a&&(n.emit&&n.emit("beforeAddBreadcrumb",a,t),r.addBreadcrumb(a,o))}let Jd;const Kd=new WeakMap,Xd=()=>({name:"FunctionToString",setupOnce(){Jd=function(){}.toString;try{Function.prototype.toString=function(...e){const t=kl(this),n=Kd.has(cc())&&void 0!==t?t:this;return Jd.apply(n,e)}}catch{}},setup(e){Kd.set(e,!0)}}),eu=[/^Script error\.?$/,/^Javascript error: Script error\.? on line 0$/,/^ResizeObserver loop completed with undelivered notifications.$/,/^Cannot redefine property: googletag$/,/^Can't find variable: gmo$/,/^undefined is not an object \(evaluating 'a\.[A-Z]'\)$/,/can't redefine non-configurable property "solana"/,/vv\(\)\.getRestrictions is not a function/,/Can't find variable: _AutofillCallbackHandler/,/Object Not Found Matching Id:\d+, MethodName:simulateEvent/,/^Java exception was raised during method invocation$/],tu=(e={})=>{let t;return{name:"EventFilters",setup(n){const r=n.getOptions();t=ru(e,r)},processEvent(n,r,i){if(!t){const n=i.getOptions();t=ru(e,n)}return function(e,t){if(e.type){if("transaction"===e.type&&function(e,t){if(!t?.length)return!1;const n=e.transaction;return!!n&&Ml(n,t)}(e,t.ignoreTransactions))return xa&&Ma(`Event dropped due to being matched by \`ignoreTransactions\` option.\nEvent: ${Wl(e)}`),!0}else{if(function(e,t){return!!t?.length&&Id(e).some(e=>Ml(e,t))}(e,t.ignoreErrors))return xa&&Ma(`Event dropped due to being matched by \`ignoreErrors\` option.\nEvent: ${Wl(e)}`),!0;if(function(e){return!!e.exception?.values?.length&&(!e.message&&!e.exception.values.some(e=>e.stacktrace||e.type&&"Error"!==e.type||e.value))}(e))return xa&&Ma(`Event dropped due to not having an error message, error type or stacktrace.\nEvent: ${Wl(e)}`),!0;if(function(e,t){if(!t?.length)return!1;const n=iu(e);return!!n&&Ml(n,t)}(e,t.denyUrls))return xa&&Ma(`Event dropped due to being matched by \`denyUrls\` option.\nEvent: ${Wl(e)}.\nUrl: ${iu(e)}`),!0;if(!function(e,t){if(!t?.length)return!0;const n=iu(e);return!n||Ml(n,t)}(e,t.allowUrls))return xa&&Ma(`Event dropped due to not being matched by \`allowUrls\` option.\nEvent: ${Wl(e)}.\nUrl: ${iu(e)}`),!0}return!1}(n,t)?null:n}}},nu=(e={})=>({...tu(e),name:"InboundFilters"});function ru(e={},t={}){return{allowUrls:[...e.allowUrls||[],...t.allowUrls||[]],denyUrls:[...e.denyUrls||[],...t.denyUrls||[]],ignoreErrors:[...e.ignoreErrors||[],...t.ignoreErrors||[],...e.disableErrorDefaults?[]:eu],ignoreTransactions:[...e.ignoreTransactions||[],...t.ignoreTransactions||[]]}}function iu(e){try{const t=[...e.exception?.values??[]].reverse().find(e=>void 0===e.mechanism?.parent_id&&e.stacktrace?.frames?.length),n=t?.stacktrace?.frames;return n?function(e=[]){for(let t=e.length-1;t>=0;t--){const n=e[t];if(n&&"<anonymous>"!==n.filename&&"[native code]"!==n.filename)return n.filename||null}return null}(n):null}catch{return xa&&Oa(`Cannot extract url for event ${Wl(e)}`),null}}function ou(e,t,n,r,i,o){if(!i.exception?.values||!o||!hl(o.originalException,Error))return;const s=i.exception.values.length>0?i.exception.values[i.exception.values.length-1]:void 0;s&&(i.exception.values=su(e,t,r,o.originalException,n,i.exception.values,s,0))}function su(e,t,n,r,i,o,s,a){if(o.length>=n+1)return o;let l=[...o];if(hl(r[i],Error)){lu(s,a,r);const o=e(t,r[i]),c=l.length;cu(o,i,c,a),l=su(e,t,n,r[i],i,[o,...l],o,c)}return au(r)&&r.errors.forEach((o,c)=>{if(hl(o,Error)){lu(s,a,r);const d=e(t,o),u=l.length;cu(d,`errors[${c}]`,u,a),l=su(e,t,n,o,i,[d,...l],d,u)}}),l}function au(e){return Array.isArray(e.errors)}function lu(e,t,n){e.mechanism={handled:!0,type:"auto.core.linked_errors",...au(n)&&{is_exception_group:!0},...e.mechanism,exception_id:t}}function cu(e,t,n,r){e.mechanism={handled:!0,...e.mechanism,type:"chained",source:t,exception_id:n,parent_id:r}}function du(){"console"in ka&&$a.forEach(function(e){e in ka.console&&wl(ka.console,e,function(t){return Ia[e]=t,function(...t){Qa("console",{args:t,level:e});const n=Ia[e];n?.apply(ka.console,t)}})})}const uu=()=>{let e;return{name:"Dedupe",processEvent(t){if(t.type)return t;try{if(function(e,t){return!!t&&(!!function(e,t){const n=e.message,r=t.message;return!(!n&&!r)&&(!(n&&!r||!n&&r)&&(n===r&&(!!mu(e,t)&&!!hu(e,t))))}(e,t)||!!function(e,t){const n=fu(t),r=fu(e);return!(!n||!r)&&(n.type===r.type&&n.value===r.value&&(!!mu(e,t)&&!!hu(e,t)))}(e,t))}(t,e))return xa&&Ma("Event dropped due to being a duplicate of previously captured event."),null}catch{}return e=t}}};function hu(e,t){let n=Ha(e),r=Ha(t);if(!n&&!r)return!0;if(n&&!r||!n&&r)return!1;if(r.length!==n.length)return!1;for(let e=0;e<r.length;e++){const t=r[e],i=n[e];if(t.filename!==i.filename||t.lineno!==i.lineno||t.colno!==i.colno||t.function!==i.function)return!1}return!0}function mu(e,t){let n=e.fingerprint,r=t.fingerprint;if(!n&&!r)return!0;if(n&&!r||!n&&r)return!1;try{return!(n.join("")!==r.join(""))}catch{return!1}}function fu(e){return e.exception?.values?.[0]}function pu(e){return void 0===e?void 0:e>=400&&e<500?"warning":e>=500?"error":void 0}const gu=ka;function yu(e){return e&&/^function\s+\w+\(\)\s+\{\s+\[native code\]\s+\}$/.test(e.toString())}function vu(e,t){const n="fetch";Ga(n,e),Va(n,()=>function(e,t=!1){t&&!function(){if("string"==typeof EdgeRuntime)return!0;if(!function(){if(!("fetch"in gu))return!1;try{return new Headers,new Request("data:,"),new Response,!0}catch{return!1}}())return!1;if(yu(gu.fetch))return!0;let e=!1;const t=gu.document;if(t&&"function"==typeof t.createElement)try{const n=t.createElement("iframe");n.hidden=!0,t.head.appendChild(n),n.contentWindow?.fetch&&(e=yu(n.contentWindow.fetch)),t.head.removeChild(n)}catch(e){xa&&Ma("Could not create sandbox iframe for pure fetch check, bailing to window.fetch: ",e)}return e}()||wl(ka,"fetch",function(e){return function(...t){const n=new Error,{method:r,url:i}=function(e){if(0===e.length)return{method:"GET",url:""};if(2===e.length){const[t,n]=e;return{url:bu(t),method:wu(n,"method")?String(n.method).toUpperCase():fl(t)&&wu(t,"method")?String(t.method).toUpperCase():"GET"}}const t=e[0];return{url:bu(t),method:wu(t,"method")?String(t.method).toUpperCase():"GET"}}(t),o={args:t,fetchData:{method:r,url:i},startTimestamp:1e3*Fl(),virtualError:n,headers:xu(t)};return Qa("fetch",{...o}),e.apply(ka,t).then(async e=>(Qa("fetch",{...o,endTimestamp:1e3*Fl(),response:e}),e),e=>{Qa("fetch",{...o,endTimestamp:1e3*Fl(),error:e}),nl(e)&&void 0===e.stack&&(e.stack=n.stack,bl(e,"framesToPop",1));const t=cc(),r=t?.getOptions().enhanceFetchErrorMessages??"always";if(!1!==r&&e instanceof TypeError&&("Failed to fetch"===e.message||"Load failed"===e.message||"NetworkError when attempting to fetch resource."===e.message))try{const t=new URL(o.fetchData.url).host;"always"===r?e.message=`${e.message} (${t})`:bl(e,"__sentry_fetch_url_host__",t)}catch{}throw e})}})}(0,t))}function wu(e,t){return!!e&&"object"==typeof e&&!!e[t]}function bu(e){return"string"==typeof e?e:e?wu(e,"url")?e.url:e.toString?e.toString():"":""}function xu(e){const[t,n]=e;try{if("object"==typeof n&&null!==n&&"headers"in n&&n.headers)return new Headers(n.headers);if(fl(t))return new Headers(t.headers)}catch{}}const ku=ka;let Nu=0;function Su(){return Nu>0}function Cu(e,t={}){if(!function(e){return"function"==typeof e}(e))return e;try{const t=e._t;if(t)return"function"==typeof t?t:e;if(kl(e))return e}catch{return e}const n=function(...n){try{const r=n.map(e=>Cu(e,t));return e.apply(this,r)}catch(e){throw Nu++,setTimeout(()=>{Nu--}),lc(r=>{r.addEventProcessor(e=>(t.mechanism&&(Al(e,void 0),Ll(e,t.mechanism)),e.extra={...e.extra,arguments:n},e)),cd(e)}),e}};try{for(const t in e)({}).hasOwnProperty.call(e,t)&&(n[t]=e[t])}catch{}xl(n,e),bl(e,"__sentry_wrapped__",n);try{Object.getOwnPropertyDescriptor(n,"name").configurable&&Object.defineProperty(n,"name",{get:()=>e.name})}catch{}return n}function _u(e,t){const n=Iu(e,t),r={type:Pu(t),value:zu(t)};return n.length&&(r.stacktrace={frames:n}),void 0===r.type&&""===r.value&&(r.value="Unrecoverable error caught"),r}function $u(e,t){return{exception:{values:[_u(e,t)]}}}function Iu(e,t){const n=t.stacktrace||t.stack||"",r=function(e){return e&&Tu.test(e.message)?1:0}(t),i=function(e){return"number"==typeof e.framesToPop?e.framesToPop:0}(t);try{return e(n,r,i)}catch{}return[]}const Tu=/Minified React error #\d+;/i;function Eu(e){return"undefined"!=typeof WebAssembly&&void 0!==WebAssembly.Exception&&e instanceof WebAssembly.Exception}function Pu(e){const t=e?.name;return!t&&Eu(e)?e.message&&Array.isArray(e.message)&&2==e.message.length?e.message[0]:"WebAssembly.Exception":t}function zu(e){const t=e?.message;return Eu(e)?Array.isArray(e.message)&&2==e.message.length?e.message[1]:"wasm exception":t?t.error&&"string"==typeof t.error.message?Yd(t.error):Yd(e):"No error message"}function Du(e,t,n,r,i){let o;if(il(t)&&t.error)return $u(e,t.error);if(ol(t)||rl(t,"DOMException")){const i=t;if("stack"in t)o=$u(e,t);else{const t=i.name||(ol(i)?"DOMError":"DOMException"),s=i.message?`${t}: ${i.message}`:t;o=Ru(e,s,n,r),Al(o,s)}return"code"in i&&(o.tags={...o.tags,"DOMException.code":`${i.code}`}),o}return nl(t)?$u(e,t):cl(t)||dl(t)?(o=function(e,t,n,r){const i=cc(),o=i?.getOptions().normalizeDepth,s=(a=t,Object.values(a).find(e=>e instanceof Error));var a;const l={$t:Ac(t,o)};if(s)return{exception:{values:[_u(e,s)]},extra:l};const c={exception:{values:[{type:dl(t)?t.constructor.name:r?"UnhandledRejection":"Error",value:Mu(t,{isUnhandledRejection:r})}]},extra:l};if(n){const t=Iu(e,n);t.length&&(c.exception.values[0].stacktrace={frames:t})}return c}(e,t,n,i),Ll(o,{synthetic:!0}),o):(o=Ru(e,t,n,r),Al(o,`${t}`),Ll(o,{synthetic:!0}),o)}function Ru(e,t,n,r){const i={};if(r&&n){const r=Iu(e,n);r.length&&(i.exception={values:[{value:t,stacktrace:{frames:r}}]}),Ll(i,{synthetic:!0})}if(al(t)){const{le:e,ce:n}=t;return i.logentry={message:e,params:n},i}return i.message=t,i}function Mu(e,{isUnhandledRejection:t}){const n=function(e){const t=Object.keys(Nl(e));return t.sort(),t[0]?t.join(", "):"[object has no keys]"}(e),r=t?"promise rejection":"exception";return il(e)?`Event \`ErrorEvent\` captured as ${r} with message \`${e.message}\``:dl(e)?`Event \`${function(e){try{const t=Object.getPrototypeOf(e);return t?t.constructor.name:void 0}catch{}}(e)}\` (type=${e.type}) captured as ${r}`:`Object captured as ${r} with keys: ${n}`}class Ou extends Wd{constructor(e){const t=(n=e,{release:"string"==typeof __SENTRY_RELEASE__?__SENTRY_RELEASE__:ku.SENTRY_RELEASE?.id,sendClientReports:!0,parentSpanIsAlwaysRootSpan:!0,...n});var n;!function(e,t,n=[t],r="npm"){const i=(e.Xe=e.Xe||{}).sdk=e.Xe.sdk||{};i.name||(i.name=`sentry.javascript.${t}`,i.packages=n.map(e=>({name:`${r}:@sentry/${e}`,version:Na})),i.version=Na)}(t,"browser",["browser"],ku.SENTRY_SDK_SOURCE||"npm"),t.Xe?.sdk&&(t.Xe.sdk.settings={infer_ip:t.sendDefaultPii?"auto":"never",...t.Xe.sdk.settings}),super(t);const{sendDefaultPii:r,sendClientReports:i,enableLogs:o,ut:s,enableMetrics:a}=this.et,l=a??s?.enableMetrics??!0;ku.document&&(i||o||l)&&ku.document.addEventListener("visibilitychange",()=>{"hidden"===ku.document.visibilityState&&(i&&this.St(),o&&bd(this),l&&kd(this))}),r&&this.on("beforeSendSession",Gd)}eventFromException(e,t){return function(e,t,n,r){const i=Du(e,t,n?.syntheticException||void 0,r);return Ll(i),i.level="error",n?.event_id&&(i.event_id=n.event_id),Xc(i)}(this.et.stackParser,e,t,this.et.attachStacktrace)}eventFromMessage(e,t="info",n){return function(e,t,n="info",r,i){const o=Ru(e,t,r?.syntheticException||void 0,i);return o.level=n,r?.event_id&&(o.event_id=r.event_id),Xc(o)}(this.et.stackParser,e,t,n,this.et.attachStacktrace)}bt(e,t,n,r){return e.platform=e.platform||"javascript",super.bt(e,t,n,r)}}const ju="undefined"==typeof __SENTRY_DEBUG__||__SENTRY_DEBUG__,Wu=ka;let Au,Lu,Bu,qu;function Fu(){if(!Wu.document)return;const e=Qa.bind(null,"dom"),t=Hu(e,!0);Wu.document.addEventListener("click",t,!1),Wu.document.addEventListener("keypress",t,!1),["EventTarget","Node"].forEach(t=>{const n=Wu,r=n[t]?.prototype;r?.hasOwnProperty?.("addEventListener")&&(wl(r,"addEventListener",function(t){return function(n,r,i){if("click"===n||"keypress"==n)try{const r=this.It=this.It||{},o=r[n]=r[n]||{refCount:0};if(!o.handler){const r=Hu(e);o.handler=r,t.call(this,n,r,i)}o.refCount++}catch{}return t.call(this,n,r,i)}}),wl(r,"removeEventListener",function(e){return function(t,n,r){if("click"===t||"keypress"==t)try{const n=this.It||{},i=n[t];i&&(i.refCount--,i.refCount<=0&&(e.call(this,t,i.handler,r),i.handler=void 0,delete n[t]),0===Object.keys(n).length&&delete this.It)}catch{}return e.call(this,t,n,r)}}))})}function Hu(e,t=!1){return n=>{if(!n||n.Tt)return;const r=function(e){try{return e.target}catch{return null}}(n);if(function(e,t){return"keypress"===e&&(!t?.tagName||"INPUT"!==t.tagName&&"TEXTAREA"!==t.tagName&&!t.isContentEditable)}(n.type,r))return;bl(n,"_sentryCaptured",!0),r&&!r.Et&&bl(r,"_sentryId",Ol());const i="keypress"===n.type?"input":n.type;(function(e){if(e.type!==Lu)return!1;try{if(!e.target||e.target.Et!==Bu)return!1}catch{}return!0})(n)||(e({event:n,name:i,global:t}),Lu=n.type,Bu=r?r.Et:void 0),clearTimeout(Au),Au=Wu.setTimeout(()=>{Bu=void 0,Lu=void 0},1e3)}}function Uu(e){const t="history";Ga(t,e),Va(t,Yu)}function Yu(){function e(e){return function(...t){const n=t.length>2?t[2]:void 0;if(n){const r=qu,i=function(e){try{return new URL(e,Wu.location.origin).toString()}catch{return e}}(String(n));if(qu=i,r===i)return e.apply(this,t);Qa("history",{from:r,to:i})}return e.apply(this,t)}}Wu.addEventListener("popstate",()=>{const e=Wu.location.href,t=qu;qu=e,t!==e&&Qa("history",{from:t,to:e})}),"history"in gu&&gu.history&&(wl(Wu.history,"pushState",e),wl(Wu.history,"replaceState",e))}const Zu={},Gu="__sentry_xhr_v3__";function Vu(){if(!Wu.XMLHttpRequest)return;const e=XMLHttpRequest.prototype;e.open=new Proxy(e.open,{apply(e,t,n){const r=new Error,i=1e3*Fl(),o=sl(n[0])?n[0].toUpperCase():void 0,s=function(e){if(sl(e))return e;try{return e.toString()}catch{}}(n[1]);if(!o||!s)return e.apply(t,n);t[Gu]={method:o,url:s,request_headers:{}},"POST"===o&&s.match(/sentry_key/)&&(t.Pt=!0);const a=()=>{const e=t[Gu];if(e&&4===t.readyState){try{e.status_code=t.status}catch{}Qa("xhr",{endTimestamp:1e3*Fl(),startTimestamp:i,xhr:t,virtualError:r})}};return"onreadystatechange"in t&&"function"==typeof t.onreadystatechange?t.onreadystatechange=new Proxy(t.onreadystatechange,{apply:(e,t,n)=>(a(),e.apply(t,n))}):t.addEventListener("readystatechange",a),t.setRequestHeader=new Proxy(t.setRequestHeader,{apply(e,t,n){const[r,i]=n,o=t[Gu];return o&&sl(r)&&sl(i)&&(o.request_headers[r.toLowerCase()]=i),e.apply(t,n)}}),e.apply(t,n)}}),e.send=new Proxy(e.send,{apply(e,t,n){const r=t[Gu];return r?(void 0!==n[0]&&(r.body=n[0]),Qa("xhr",{startTimestamp:1e3*Fl(),xhr:t}),e.apply(t,n)):e.apply(t,n)}})}function Qu(e,t=function(e){const t=Zu[e];if(t)return t;let n=Wu[e];if(yu(n))return Zu[e]=n.bind(Wu);const r=Wu.document;if(r&&"function"==typeof r.createElement)try{const t=r.createElement("iframe");t.hidden=!0,r.head.appendChild(t);const i=t.contentWindow;i?.[e]&&(n=i[e]),r.head.removeChild(t)}catch(t){ju&&Ma(`Could not create sandbox iframe for ${e} check, bailing to window.${e}: `,t)}return n?Zu[e]=n.bind(Wu):n}("fetch")){let n=0,r=0;return $d(e,async function(i){const o=i.body.length;n+=o,r++;const s={body:i.body,method:"POST",referrerPolicy:"strict-origin",headers:e.headers,keepalive:n<=6e4&&r<15,...e.fetchOptions};try{const n=await t(e.url,s);return{statusCode:n.status,headers:{"x-sentry-rate-limits":n.headers.get("X-Sentry-Rate-Limits"),"retry-after":n.headers.get("Retry-After")}}}catch(e){throw Zu.fetch=void 0,e}finally{n-=o,r--}},_d(e.bufferSize||40))}const Ju="undefined"==typeof __SENTRY_DEBUG__||__SENTRY_DEBUG__;function Ku(e,t,n,r){const i={filename:e,function:"<anonymous>"===t?ja:t,in_app:!0};return void 0!==n&&(i.lineno=n),void 0!==r&&(i.colno=r),i}const Xu=/^\s*at (\S+?)(?::(\d+))(?::(\d+))\s*$/i,eh=/^\s*at (?:(.+?\)(?: \[.+\])?|.*?) ?\((?:address at )?)?(?:async )?((?:<anonymous>|[-a-z]+:|.*bundle|\/)?.*?)(?::(\d+))?(?::(\d+))?\)?\s*$/i,th=/\((\S*)(?::(\d+))(?::(\d+))\)/,nh=/at (.+?) ?\(data:(.+?),/,rh=/^\s*(.*?)(?:\((.*?)\))?(?:^|@)?((?:[-a-z]+)?:\/.*?|\[native code\]|[^@]*(?:bundle|\d+\.js)|\/[\w\-. /=]+)(?::(\d+))?(?::(\d+))?\s*$/i,ih=/(\S+) line (\d+)(?: > eval line \d+)* > eval/i,oh=La([30,e=>{const t=e.match(nh);if(t)return{filename:`<data:${t[2]}>`,function:t[1]};const n=Xu.exec(e);if(n){const[,e,t,r]=n;return Ku(e,ja,+t,+r)}const r=eh.exec(e);if(r){if(0===r[2]?.indexOf("eval")){const e=th.exec(r[2]);e&&(r[2]=e[1],r[3]=e[2],r[4]=e[3])}const[e,t]=sh(r[1]||ja,r[2]);return Ku(t,e,r[3]?+r[3]:void 0,r[4]?+r[4]:void 0)}}],[50,e=>{const t=rh.exec(e);if(t){if(t[3]&&t[3].indexOf(" > eval")>-1){const e=ih.exec(t[3]);e&&(t[1]=t[1]||"eval",t[3]=e[1],t[4]=e[2],t[5]="")}let e=t[3],n=t[1]||ja;return[n,e]=sh(n,e),Ku(e,n,t[4]?+t[4]:void 0,t[5]?+t[5]:void 0)}}]),sh=(e,t)=>{const n=-1!==e.indexOf("safari-extension"),r=-1!==e.indexOf("safari-web-extension");return n||r?[-1!==e.indexOf("@")?e.split("@")[0]:ja,n?`safari-extension:${t}`:`safari-web-extension:${t}`]:[e,t]},ah=(e={})=>{const t={console:!0,dom:!0,fetch:!0,history:!0,sentry:!0,xhr:!0,...e};return{name:"Breadcrumbs",setup(e){var n;t.console&&function(e){const t="console";Ga(t,e),Va(t,du)}(function(e){return function(t){if(cc()!==e)return;const n={category:"console",data:{arguments:t.args,logger:"console"},level:(r=t.level,"warn"===r?"warning":["fatal","error","warning","log","info","debug"].includes(r)?r:"log"),message:Dl(t.args," ")};var r;if("assert"===t.level){if(!1!==t.args[0])return;n.message=`Assertion failed: ${Dl(t.args.slice(1)," ")||"console.assert"}`,n.data.arguments=t.args.slice(1)}Qd(n,{input:t.args,level:t.level})}}(e)),t.dom&&(n=function(e,t){return function(n){if(cc()!==e)return;let r,i,o="object"==typeof t?t.serializeAttribute:void 0,s="object"==typeof t&&"number"==typeof t.maxStringLength?t.maxStringLength:void 0;s&&s>1024&&(Ju&&Ma(`\`dom.maxStringLength\` cannot exceed 1024, but a value of ${s} was configured. Sentry will use 1024 instead.`),s=1024),"string"==typeof o&&(o=[o]);try{const e=n.event,t=function(e){return!!e&&!!e.target}(e)?e.target:e;r=gl(t,{keyAttrs:o,maxStringLength:s}),i=function(e){if(!pl.HTMLElement)return null;let t=e;for(let e=0;e<5;e++){if(!t)return null;if(t instanceof HTMLElement){if(t.dataset.sentryComponent)return t.dataset.sentryComponent;if(t.dataset.sentryElement)return t.dataset.sentryElement}t=t.parentNode}return null}(t)}catch{r="<unknown>"}if(0===r.length)return;const a={category:`ui.${n.name}`,message:r};i&&(a.data={"ui.component_name":i}),Qd(a,{event:n.event,name:n.name,global:n.global})}}(e,t.dom),Ga("dom",n),Va("dom",Fu)),t.xhr&&function(e){Ga("xhr",e),Va("xhr",Vu)}(function(e){return function(t){if(cc()!==e)return;const{startTimestamp:n,endTimestamp:r}=t,i=t.xhr[Gu];if(!n||!r||!i)return;const{method:o,url:s,status_code:a,body:l}=i,c={method:o,url:s,status_code:a},d={xhr:t.xhr,input:l,startTimestamp:n,endTimestamp:r},u={category:"xhr",data:c,type:"http",level:pu(a)};e.emit("beforeOutgoingRequestBreadcrumb",u,d),Qd(u,d)}}(e)),t.fetch&&vu(function(e){return function(t){if(cc()!==e)return;const{startTimestamp:n,endTimestamp:r}=t;if(r&&(!t.fetchData.url.match(/sentry_key/)||"POST"!==t.fetchData.method))if(t.error){const i={data:t.error,input:t.args,startTimestamp:n,endTimestamp:r},o={category:"fetch",data:t.fetchData,level:"error",type:"http"};e.emit("beforeOutgoingRequestBreadcrumb",o,i),Qd(o,i)}else{const i=t.response,o={...t.fetchData,status_code:i?.status},s={input:t.args,response:i,startTimestamp:n,endTimestamp:r},a={category:"fetch",data:o,type:"http",level:pu(o.status_code)};e.emit("beforeOutgoingRequestBreadcrumb",a,s),Qd(a,s)}}}(e)),t.history&&Uu(function(e){return function(t){if(cc()!==e)return;let n=t.from,r=t.to;const i=Zd(ku.location.href);let o=n?Zd(n):void 0;const s=Zd(r);o?.path||(o=i),i.protocol===s.protocol&&i.host===s.host&&(r=s.relative),i.protocol===o.protocol&&i.host===o.host&&(n=o.relative),Qd({category:"navigation",data:{from:n,to:r}})}}(e)),t.sentry&&e.on("beforeSendEvent",function(e){return function(t){cc()===e&&Qd({category:"sentry."+("transaction"===t.type?"transaction":"event"),event_id:t.event_id,level:t.level,message:Wl(t)},{event:t})}}(e))}}},lh="EventTarget,Window,Node,ApplicationCache,AudioTrackList,BroadcastChannel,ChannelMergerNode,CryptoOperation,EventSource,FileReader,HTMLUnknownElement,IDBDatabase,IDBRequest,IDBTransaction,KeyOperation,MediaController,MessagePort,ModalWindow,Notification,SVGElementInstance,Screen,SharedWorker,TextTrack,TextTrackCue,TextTrackList,WebSocket,WebSocketWorker,Worker,XMLHttpRequest,XMLHttpRequestEventTarget,XMLHttpRequestUpload".split(","),ch=(e={})=>{const t={XMLHttpRequest:!0,eventTarget:!0,requestAnimationFrame:!0,setInterval:!0,setTimeout:!0,unregisterOriginalCallbacks:!1,...e};return{name:"BrowserApiErrors",setupOnce(){t.setTimeout&&wl(ku,"setTimeout",dh),t.setInterval&&wl(ku,"setInterval",dh),t.requestAnimationFrame&&wl(ku,"requestAnimationFrame",uh),t.XMLHttpRequest&&"XMLHttpRequest"in ku&&wl(XMLHttpRequest.prototype,"send",hh);const e=t.eventTarget;e&&(Array.isArray(e)?e:lh).forEach(e=>function(e,t){const n=ku,r=n[e]?.prototype;r?.hasOwnProperty?.("addEventListener")&&(wl(r,"addEventListener",function(n){return function(r,i,o){try{"function"==typeof i.handleEvent&&(i.handleEvent=Cu(i.handleEvent,{mechanism:{data:{handler:Fa(i),target:e},handled:!1,type:"auto.browser.browserapierrors.handleEvent"}}))}catch{}return t.unregisterOriginalCallbacks&&function(e,t,n){e&&"object"==typeof e&&"removeEventListener"in e&&"function"==typeof e.removeEventListener&&e.removeEventListener(t,n)}(this,r,i),n.apply(this,[r,Cu(i,{mechanism:{data:{handler:Fa(i),target:e},handled:!1,type:"auto.browser.browserapierrors.addEventListener"}}),o])}}),wl(r,"removeEventListener",function(e){return function(t,n,r){try{const i=n._t;i&&e.call(this,t,i,r)}catch{}return e.call(this,t,n,r)}}))}(e,t))}}};function dh(e){return function(...t){const n=t[0];return t[0]=Cu(n,{mechanism:{handled:!1,type:`auto.browser.browserapierrors.${Fa(e)}`}}),e.apply(this,t)}}function uh(e){return function(t){return e.apply(this,[Cu(t,{mechanism:{data:{handler:Fa(e)},handled:!1,type:"auto.browser.browserapierrors.requestAnimationFrame"}})])}}function hh(e){return function(...t){const n=this;return["onload","onerror","onprogress","onreadystatechange"].forEach(e=>{e in n&&"function"==typeof n[e]&&wl(n,e,function(t){const n={mechanism:{data:{handler:Fa(t)},handled:!1,type:`auto.browser.browserapierrors.xhr.${e}`}},r=kl(t);return r&&(n.mechanism.data.handler=Fa(r)),Cu(t,n)})}),e.apply(this,t)}}const mh=(e={})=>{const t=e.lifecycle??"route";return{name:"BrowserSession",setupOnce(){if(void 0===ku.document)return void(Ju&&Ma("Using the `browserSessionIntegration` in non-browser environments is not supported."));hd({ignoreDuration:!0}),pd();const e=ac();let n=e.getUser();e.addScopeListener(e=>{const t=e.getUser();n?.id===t?.id&&n?.ip_address===t?.ip_address||(pd(),n=t)}),"route"===t&&Uu(({from:e,to:t})=>{e!==t&&(hd({ignoreDuration:!0}),pd())})}}},fh=(e={})=>{const t={onerror:!0,onunhandledrejection:!0,...e};return{name:"GlobalHandlers",setupOnce(){Error.stackTraceLimit=50},setup(e){t.onerror&&(function(e){!function(){const t="error";Ga(t,t=>{const{stackParser:n,attachStacktrace:r}=gh();if(cc()!==e||Su())return;const{msg:i,url:o,line:s,column:a,error:l}=t,c=function(e,t,n,r){const i=e.exception=e.exception||{},o=i.values=i.values||[],s=o[0]=o[0]||{},a=s.stacktrace=s.stacktrace||{},l=a.frames=a.frames||[];return 0===l.length&&l.push({colno:r,lineno:n,filename:yh(t)??vl(),function:ja,in_app:!0}),e}(Du(n,l||i,void 0,r,!1),o,s,a);c.level="error",ud(c,{originalException:l,mechanism:{handled:!1,type:"auto.browser.global_handlers.onerror"}})}),Va(t,Ka)}()}(e),ph("onerror")),t.onunhandledrejection&&(function(e){!function(){const t="unhandledrejection";Ga(t,t=>{const{stackParser:n,attachStacktrace:r}=gh();if(cc()!==e||Su())return;const i=function(e){if(ll(e))return e;try{if("reason"in e)return e.reason;if("detail"in e&&"reason"in e.detail)return e.detail.reason}catch{}return e}(t),o=ll(i)?{exception:{values:[{type:"UnhandledRejection",value:`Non-Error promise rejection captured with value: ${String(i)}`}]}}:Du(n,i,void 0,r,!0);o.level="error",ud(o,{originalException:i,mechanism:{handled:!1,type:"auto.browser.global_handlers.onunhandledrejection"}})}),Va(t,el)}()}(e),ph("onunhandledrejection"))}}};function ph(e){Ju&&Ra(`Global Handler attached: ${e}`)}function gh(){const e=cc();return e?.getOptions()||{stackParser:()=>[],attachStacktrace:!1}}function yh(e){if(sl(e)&&0!==e.length)return e.startsWith("data:")?`<${function(e,t=!0){if(e.startsWith("data:")){const n=e.match(/^data:([^;,]+)/),r=n?n[1]:"text/plain",i=e.includes(";base64,"),o=e.indexOf(",");let s="";if(t&&-1!==o){const t=e.slice(o+1);s=t.length>10?`${t.slice(0,10)}... [truncated]`:t}return`data:${r}${i?",base64":""}${s?`,${s}`:""}`}return e}(e,!1)}>`:e}const vh=(e={})=>{const t=e.limit||5,n=e.key||"cause";return{name:"LinkedErrors",preprocessEvent(e,r,i){ou(_u,i.getOptions().stackParser,n,t,e,r)}}};function wh(e={}){const t=!e.skipBrowserExtensionCheck&&!!function(){if(void 0===ku.window)return!1;const e=ku;if(e.nw)return!1;const t=e.chrome||e.browser;if(!t?.runtime?.id)return!1;const n=vl();return!(ku===ku.top&&/^(?:chrome-extension|moz-extension|ms-browser-extension|safari-web-extension):\/\//.test(n))}()&&(Ju&&Ta(()=>{}),!0);let n=null==e.defaultIntegrations?[nu(),Xd(),{name:"ConversationId",setup(e){e.on("spanStart",e=>{const t=sc().getScopeData(),n=ac().getScopeData(),r=t.conversationId||n.conversationId;r&&e.setAttribute("gen_ai.conversation.id",r)})}},ch(),ah(),fh(),vh(),uu(),{name:"HttpContext",preprocessEvent(e){if(!ku.navigator&&!ku.location&&!ku.document)return;const t=function(){const e=vl(),{referrer:t}=ku.document||{},{userAgent:n}=ku.navigator||{};return{url:e,headers:{...t&&{Referer:t},...n&&{"User-Agent":n}}}}(),n={...t.headers,...e.request?.headers};e.request={...t,...e.request,headers:n}}},{name:"CultureContext",preprocessEvent(e){const t=function(){try{const e=ku.Intl;if(!e)return;const t=e.DateTimeFormat().resolvedOptions();return{locale:t.locale,timezone:t.timeZone,calendar:t.calendar}}catch{return}}();t&&(e.contexts={...e.contexts,culture:{...t,...e.contexts?.culture}})}},mh()]:e.defaultIntegrations;const r={...e,enabled:!t&&e.enabled,stackParser:(i=e.stackParser||oh,Array.isArray(i)?La(...i):i),integrations:yd({integrations:e.integrations,defaultIntegrations:n}),transport:e.transport||Qu};var i;return function(e,t){!0===t.debug&&(xa?Da():Ta(()=>{})),sc().update(t.initialScope);const n=new e(t);return function(e){sc().setClient(e)}(n),n.init(),n}(Ou,r)}let bh=!1;function xh(e){if(bh)t();else if(e.enabled&&e.dsn)try{const n=e.bundleUrlPatterns||[/cdn\.insure-os\.com/,/api\.os\.insure.*\/dist/,/localhost:\d+\/dist/,/index\.(esm|umd|cjs)\.js/];wh({dsn:e.dsn,environment:e.environment||"production",release:e.release,beforeSend:e=>function(e,t){var n,r,i,o;const s=null===(o=null===(i=null===(r=null===(n=e.exception)||void 0===n?void 0:n.values)||void 0===r?void 0:r[0])||void 0===i?void 0:i.stacktrace)||void 0===o?void 0:o.frames;if(!s||0===s.length)return!0;return s.some(e=>!!e.filename&&t.some(t=>t.test(e.filename||"")))}(e,n)?(e.tags={...e.tags,source:"insureos-widget"},t(e.exception),e):(t(e.exception),null),allowUrls:n,sampleRate:e.sampleRate||1,tracesSampleRate:e.tracesSampleRate||.1,integrations:[ah({console:!0,dom:!0,fetch:!0,history:!1,xhr:!0}),uu()],ignoreErrors:["top.GLOBALS","originalCreateNotification","canvas.contentDocument","MyApp_RemoveAllHighlights","atomicFindClose","Can't find variable: ZiteReader","jigsaw is not defined","ComboSearch is not defined","ResizeObserver loop limit exceeded","ResizeObserver loop completed with undelivered notifications"]}),bh=!0,t()}catch(e){}else t()}function kh(e,n){if(bh)try{n?lc(t=>{Object.entries(n).forEach(([e,n])=>{t.setContext(e,n)}),cd(e)}):cd(e)}catch(e){t()}}function Nh(e,n="info",r){if(bh)try{r?lc(t=>{Object.entries(r).forEach(([e,n])=>{t.setContext(e,n)}),dd(e,n)}):dd(e,n)}catch(e){t()}}function Sh(e){if(bh)try{!function(e){ac().setUser(e)}(e)}catch(e){t()}}function Ch(e){if(bh)try{Qd(e)}catch(e){t()}}function _h(e,n){if(bh)try{!function(e,t){ac().setTag(e,t)}(e,n)}catch(e){t()}}function $h(){return bh}var Ih=Object.freeze({__proto__:null,addBreadcrumb:Ch,captureException:kh,captureMessage:Nh,initializeSentry:xh,isSentryInitialized:$h,setTag:_h,setUser:Sh});const Th="https://a73b48791ca06287db6bc587f376f7b9@o490277.ingest.us.sentry.io/4510139918450688",Eh="production",Ph="insureos-scripts",zh=!0,Dh=1,Rh=.1;class Mh{constructor(e={}){var t,n,r,i;this.dataLayerAvailable=!1,this.config={enabled:null===(t=e.enabled)||void 0===t||t,customDataLayer:null!==(n=e.customDataLayer)&&void 0!==n?n:"dataLayer",includePersonalData:null!==(r=e.includePersonalData)&&void 0!==r&&r,debug:null!==(i=e.debug)&&void 0!==i&&i},"undefined"!=typeof window?this.initializeDataLayer():this.dataLayerAvailable=!1}initializeDataLayer(){try{const e=this.config.customDataLayer;window[e]||(window[e]=[],this.logDebug(`Created new ${e} array`)),Array.isArray(window[e])?(this.dataLayerAvailable=!0,this.logDebug(`✅ Data layer '${e}' is available and ready`)):(this.dataLayerAvailable=!1,this.logDebug(`⚠️ Data layer '${e}' exists but is not an array`))}catch(e){this.dataLayerAvailable=!1,this.logDebug("⚠️ Failed to initialize data layer:",e)}}isEnabled(){return this.config.enabled&&this.dataLayerAvailable}getDataLayer(){if(!this.isEnabled())return null;try{const e=window[this.config.customDataLayer];return Array.isArray(e)?e:null}catch(e){return this.logDebug("Failed to get data layer:",e),null}}push(e){if(!this.isEnabled())return void this.logDebug("📊 Analytics disabled or data layer not available, skipping event:",e.event);const t=this.getDataLayer();if(t)try{const n=this.config.includePersonalData?e:this.removePII(e);t.push(n),this.logDebug("📊 Pushed event to data layer:",n)}catch(e){this.logDebug("❌ Failed to push event to data layer:",e)}else this.logDebug("⚠️ Data layer not available, skipping event:",e.event)}removePII(e){const t={...e},n=["email","phone","name","address","client_name","client_email"];for(const e of n)e in t&&delete t[e];return t}logDebug(...e){this.config.debug&&t("[Analytics]",...e)}clear(){if(this.dataLayerAvailable)try{window[this.config.customDataLayer]=[],this.logDebug("🧹 Cleared data layer")}catch(e){this.logDebug("Failed to clear data layer:",e)}}getConfig(){return{...this.config}}updateConfig(e){this.config={...this.config,...e},(e.customDataLayer||void 0!==e.enabled)&&this.initializeDataLayer(),this.logDebug("Updated analytics configuration:",this.config)}}class Oh{constructor(){this.sentryInitialized=!1,this.analyticsManager=null,this.pendingPromoCodes=new Map}initializeSentryOnce(){if(!this.sentryInitialized)try{xh({dsn:Th,environment:Eh,release:Ph,enabled:zh,sampleRate:Dh,tracesSampleRate:Rh}),this.sentryInitialized=!0,t()}catch(e){t()}}validateConfig(e){if(!e.orgId)throw new Error("orgId is required");if("payment"===e.mode&&!e.paymentLinkId)throw new Error("paymentLinkId is required when mode is 'payment'")}initializeAnalyticsOnce(e){var n,r,i,o,s;if(!this.analyticsManager)try{this.analyticsManager=new Mh({enabled:null===(n=e.analyticsConfig)||void 0===n?void 0:n.enabled,customDataLayer:null===(r=e.analyticsConfig)||void 0===r?void 0:r.customDataLayer,includePersonalData:null===(i=e.analyticsConfig)||void 0===i?void 0:i.includePersonalData,debug:null!==(s=null===(o=e.analyticsConfig)||void 0===o?void 0:o.debug)&&void 0!==s?s:e.debug}),Te(this.analyticsManager),t()}catch(e){t()}}async mount(e,t){t.debug&&(globalThis.insureOSDebug=!0),this.validateConfig(t),this.initializeSentryOnce(),this.initializeAnalyticsOnce(t),function(e,t){var i,o,s;t==document&&(t=document.documentElement),r.m&&r.m(e,t),i=t.i,o=[],s=[],L(t,e=t.i=S(_,null,[e]),i||v,v,t.namespaceURI,i?null:t.firstChild?n.call(t.childNodes):null,o,i?i.v:t.firstChild,!1,s),q(o,e,s)}(S(ba,{config:t,initializeFormContext:this.initializeFormContext.bind(this)}),e)}createHttpClient(e){var t,n,r,i,o,s,a,l,c,d;if(!e.orgId)throw new Error("orgId is required");const u=e.apiBaseUrl||"https://api.os.insure";return new Q({orgId:e.orgId,apiBaseUrl:u,timeout:(null===(t=e.httpConfig)||void 0===t?void 0:t.timeout)||1e4,retryConfig:{maxRetries:(null===(r=null===(n=e.httpConfig)||void 0===n?void 0:n.retryConfig)||void 0===r?void 0:r.maxRetries)||3,baseDelay:(null===(o=null===(i=e.httpConfig)||void 0===i?void 0:i.retryConfig)||void 0===o?void 0:o.baseDelay)||1e3,maxDelay:(null===(a=null===(s=e.httpConfig)||void 0===s?void 0:s.retryConfig)||void 0===a?void 0:a.maxDelay)||1e4,retryableStatusCodes:(null===(c=null===(l=e.httpConfig)||void 0===l?void 0:l.retryConfig)||void 0===c?void 0:c.retryableStatusCodes)||[429,500,502,503,504],...null===(d=e.httpConfig)||void 0===d?void 0:d.retryConfig}})}createClient(e){const t=this.createHttpClient(e);return new Be(t)}clearQuoteStateForOrg(e){try{if(window.localStorage){window.localStorage.removeItem("insure-os-selected-product"),window.localStorage.removeItem(`insure_os_quote_intent_${e}`),window.localStorage.removeItem(`insure-os-pending-promo-${e}`);for(let t=window.localStorage.length-1;t>=0;t--){const n=window.localStorage.key(t);n&&n.startsWith("insure_os_")&&n.endsWith(e)&&window.localStorage.removeItem(n)}}window.sessionStorage&&window.sessionStorage.removeItem(`insure_os_quote_intent_${e}`)}catch(e){}}async initializeFormContext(e){var n,r,i,o,s;const a=this.createHttpClient(e),l=new URLSearchParams(window.location.search),c=l.get("p")||l.get("pl_ref");if(c)return t(),this.clearQuoteStateForOrg(e.orgId),{httpClient:a,stateManager:null,quoteIntent:null,quoteIntentStore:null,formStateManager:null,paymentLinkConfig:{paymentLinkId:c,signedUrl:void 0}};const d=l.get("q")||l.get("qi");if(d){t();try{const e=await a.resumeQuoteIntent(d);if("redirect"===(null==e?void 0:e.mode)&&e.payment_link_short_code){const n=window.location.pathname+`?p=${encodeURIComponent(e.payment_link_short_code)}`;return t(),window.location.replace(n),new Promise(()=>{})}}catch(e){t(null==e||e.message)}e.quoteIntentUrl=`${e.apiBaseUrl}/quote-intents/${d}`,this.clearQuoteStateForOrg(e.orgId)}if("payment"===e.mode)return t(),{httpClient:a,stateManager:null,quoteIntent:null,quoteIntentStore:null,formStateManager:null,paymentLinkConfig:{paymentLinkId:e.paymentLinkId,signedUrl:e.signedUrl}};const u="sessionStorage"===e.storageType?new K:new J;u.isAvailable()?t(u.constructor.name):t();const h=new ee(u),m=new te(h),f=e.products,p=null==f?void 0:f.includes("*"),g=!f||0===f.length,y=g||p||f&&f.length>1,v=f&&1===f.length&&!p,w=localStorage.getItem("insure-os-selected-product"),b=new URLSearchParams(window.location.search),x=!!(b.get("transactionId")||b.get("transaction_id")||b.get("payment_id")),k=b.get("code");if("1"===b.get("clear")){t(),localStorage.clear(),b.delete("clear");const e=b.toString()?`${window.location.pathname}?${b.toString()}`:window.location.pathname;window.history.replaceState({},"",e),t()}const N=`insure-os-pending-promo-${e.orgId}`,S="skipPendingPromoCode"in e&&!0===e.skipPendingPromoCode;if(k&&!x&&!S){const n={code:k,ts:Date.now()};localStorage.setItem(N,JSON.stringify(n)),this.pendingPromoCodes.set(e.orgId,k),t(),b.delete("code");const r=b.toString()?`${window.location.pathname}?${b.toString()}`:window.location.pathname;window.history.replaceState({},"",r)}const C="promoCode"in e?e.promoCode:void 0;let _=null;if(!S)try{const e=localStorage.getItem(N);if(e){const t=JSON.parse(e);"object"==typeof t&&t.code&&Date.now()-t.ts<36e5?_=t.code:"string"==typeof t?_=t:localStorage.removeItem(N)}}catch(e){localStorage.removeItem(N)}const $=S?void 0:this.pendingPromoCodes.get(e.orgId),I=k||C||_||$||null;if(t(),I&&!x){const i=h.getQuoteIntent(e.orgId);if(null===(n=null==i?void 0:i.form_data)||void 0===n?void 0:n.page_data){const n=i.form_data.page_data,o=null===(r=Object.values(n).find(e=>e&&"object"==typeof e&&"promo_code"in e))||void 0===r?void 0:r.promo_code;o&&o!==I&&(t(),m.clearQuoteIntent(e.orgId))}}const T=async n=>{var r;t(n.id);const i=new Ae(n,a,m,{autoSave:!1,autoSaveInterval:n.form_definition.settings.autoSaveInterval});if("prefillFormData"in e&&e.prefillFormData){const o=(null===(r=n.form_definition)||void 0===r?void 0:r.pages.length)||0,s=Array.from({length:o},(e,t)=>t);i.restoreFormProgress({page_data:e.prefillFormData,current_page:o-1,completed_pages:s,last_updated:(new Date).toISOString()}),t()}else n.form_data&&i.restoreFormProgress(n.form_data);if(I){const e=i.getFormDefinition().pages.find(e=>e.fields.some(e=>"promo_code"===(e.code||e.id)));e?(i.updateFieldValue(e.id,"promo_code",I),t(e.id)):t()}if(n.cached_result&&(t(),i.restoreCalculationResult(n.cached_result)),n.organisation&&n.organisation.theme)try{await la.loadTheme({slug:n.organisation.slug,theme_url:n.organisation.theme.css_url})}catch(e){t()}const o="skipAutoCalculation"in e&&!!e.skipAutoCalculation;return await this.handleAutoCalculationIfComplete(i,o),{httpClient:a,stateManager:h,quoteIntent:n,quoteIntentStore:m,formStateManager:i,urlPromoCode:I||void 0}};if(y&&!e.quoteIntentUrl&&!w){const n=x?null:h.getQuoteIntent(e.orgId);if(n)try{const r=await a.getQuoteIntent(n.url),l={id:r.quote_intent.id,url:r.url,calculate_url:r.calculate_url,delete_calculations_url:r.delete_calculations_url,expires_at:new Date(r.quote_intent.expires_at).getTime(),updated_at:new Date(r.quote_intent.updated_at).getTime(),created_at:new Date(r.quote_intent.created_at).getTime(),org_id:e.orgId,product_id:r.product.id,product_name:r.product.description||r.product.name,form_definition:r.product.form_definition,form_data:r.quote_intent.form_data,status:r.quote_intent.status,reference:r.quote_intent.reference,organisation:r.organisation,cached_result:r.cached_result};if(h.saveQuoteIntent(e.orgId,l),null===(o=null===(i=l.form_data)||void 0===i?void 0:i.completed_pages)||void 0===o?void 0:o.length){if(t(),null===(s=l.organisation)||void 0===s?void 0:s.theme)try{await la.loadTheme({slug:l.organisation.slug,theme_url:l.organisation.theme.css_url})}catch(e){t()}const{firstName:n,lastUpdated:r}=(e=>{var t;const n=["client_first_name","first_name","firstName","fname","given_name"],r=null===(t=e.form_data)||void 0===t?void 0:t.page_data;let i=null;if(r)for(const e of Object.values(r)){if(!e||"object"!=typeof e)continue;const t=e;for(const e of n)if(t[e]){i=String(t[e]);break}if(i)break}return{firstName:i,lastUpdated:e.updated_at?new Date(e.updated_at).toLocaleDateString(void 0,{day:"numeric",month:"short",year:"numeric"}):null}})(l);return{httpClient:a,stateManager:h,quoteIntent:null,quoteIntentStore:m,formStateManager:null,resumePrompt:{reference:l.reference||null,productName:l.product_name||null,firstName:n,lastUpdated:r,onContinue:async()=>T(l),onStartFresh:async()=>{m.clearQuoteIntent(e.orgId);const t=await a.fetchAvailableProducts(g?void 0:f);return{httpClient:a,stateManager:h,quoteIntent:null,quoteIntentStore:m,formStateManager:null,availableProducts:t.products,productCodes:f}}}}}}catch(n){t(),m.clearQuoteIntent(e.orgId)}t();const r=await a.fetchAvailableProducts(g?void 0:f);if(t(),r.organisation&&r.organisation.theme)try{const e=await Promise.resolve().then(function(){return ca}).then(e=>e.ThemeLoader);await e.loadTheme({slug:r.organisation.slug,theme_url:r.organisation.theme.css_url}),t()}catch(e){t()}return{httpClient:a,stateManager:h,quoteIntent:null,quoteIntentStore:m,formStateManager:null,availableProducts:r.products,productCodes:f}}let E;w?(t(),E=w,localStorage.removeItem("insure-os-selected-product")):v&&(E=f[0]);const P=async()=>{t();const n=e.quoteIntentUrl?await a.getQuoteIntent(e.quoteIntentUrl):await a.createQuoteIntent({code:E,...e.dealerOrganisationId&&{dealer_organisation_id:e.dealerOrganisationId}});return t(),{id:n.quote_intent.id,url:n.url,calculate_url:n.calculate_url,delete_calculations_url:n.delete_calculations_url,calculate_url_v2:n.calculate_url_v2,reprice_url_v2:n.reprice_url_v2,bind_url_v2:n.bind_url_v2,calculator_version:n.product.calculator_version,expires_at:new Date(n.quote_intent.expires_at).getTime(),updated_at:new Date(n.quote_intent.updated_at).getTime(),created_at:new Date(n.quote_intent.created_at).getTime(),org_id:e.orgId,product_id:n.product.id,product_name:n.product.description||n.product.name,form_definition:n.product.form_definition,form_data:n.quote_intent.form_data,status:n.quote_intent.status,reference:n.quote_intent.reference,organisation:n.organisation,cached_result:n.cached_result}},z=async t=>{var n;const r=new URLSearchParams(window.location.search),i=r.get("transaction_id")||r.get("payment_id")||r.get("transactionId"),o=await a.getQuoteIntent(t);let s;const l=r.get("status");if(i&&"processing"!==l){const e=null===(n=o.payment_transactions)||void 0===n?void 0:n.find(e=>e.id===i);if(e){let t="unknown";switch(e.status){case"completed":t="success";break;case"failed":t="declined";break;case"cancelled":t="cancelled";break;default:t="error"}s={paymentTransactionId:e.id,paymentStatus:t,transactionStatus:e}}else if(l){let e="error";switch(l.toLowerCase()){case"success":case"completed":e="success";break;case"failed":case"declined":e="declined";break;case"cancelled":case"canceled":e="cancelled";break;default:e="error"}s={paymentTransactionId:i,paymentStatus:e,transactionStatus:void 0}}}const c={id:o.quote_intent.id,url:o.url,calculate_url:o.calculate_url,delete_calculations_url:o.delete_calculations_url,calculate_url_v2:o.calculate_url_v2,reprice_url_v2:o.reprice_url_v2,bind_url_v2:o.bind_url_v2,calculator_version:o.product.calculator_version,expires_at:new Date(o.quote_intent.expires_at).getTime(),updated_at:new Date(o.quote_intent.updated_at).getTime(),created_at:new Date(o.quote_intent.created_at).getTime(),org_id:e.orgId,product_id:o.product.id,product_name:o.product.description||o.product.name,form_definition:o.product.form_definition,form_data:o.quote_intent.form_data,status:o.quote_intent.status,reference:o.quote_intent.reference,organisation:o.organisation,payment_return:s,payment_transactions:o.payment_transactions,cached_result:o.cached_result};return s&&h.saveQuoteIntent(e.orgId,c),c};return(async()=>{let t=null,n=!1;try{const r=h.getQuoteIntent(e.orgId),i=await m.getOrCreateQuoteIntent(e.orgId,P,z);i.payment_return&&h.saveQuoteIntent(e.orgId,i),t=i,n=!r}catch(r){if(!(r instanceof G&&404===r.statusCode))throw r;m.clearQuoteIntent(e.orgId),t=await m.getOrCreateQuoteIntent(e.orgId,P,z),n=!0}if(n&&t&&Pe(t),!t)throw new Error("Failed to initialize quote intent state");return T(t)})()}async handleAutoCalculationIfComplete(e,n=!1){try{if(n)return void t();const r=e.getQuoteIntent();if("paid"===r.status||"completed"===r.status)return void t();if(e.hasCalculationResponse())return void t();if(e.hasLastCalculationFailed())return void t();const i=e.getPageCompletionStatus(),{totalPages:o,completedPages:s}=i,a=s.length===o;t((s.length,e.getIsCalculating(),e.hasLastCalculationFailed())),a&&!e.getIsCalculating()&&(t(),await e.calculateQuote(),t())}catch(e){t()}}}const jh=new Oh;"undefined"!=typeof window&&(window.InsureOS=jh,function(){const e=document.querySelectorAll('script[src*="insureos"]'),t=e[e.length-1];if(t&&t.src){const e=new URL(t.src),n=e.searchParams.get("orgId"),r=e.searchParams.get("productCode"),i=e.searchParams.get("productCodes"),o=i?i.split(","):r?[r]:null;if(n&&o){const t=e.searchParams.get("container"),r=t?document.getElementById(t):document.body;if(r){const e={orgId:n,products:o};r.dataset.insureosConfig=JSON.stringify(e);const t=async()=>{try{await jh.mount(r,e)}catch(e){}};"loading"===document.readyState?document.addEventListener("DOMContentLoaded",t):t()}}}}());class Wh{constructor(){if(this.measurements=new Map,this.completedMeasurements=new Map,this.apiCallMetrics=[],this.initializationTime=0,Wh.instance)return Wh.instance;Wh.instance=this}startMeasurement(e){this.measurements.set(e,this.now())}endMeasurement(e){const t=this.measurements.get(e);if(void 0===t)throw new Error(`No measurement started for: ${e}`);const n=this.now()-t;return this.measurements.delete(e),this.completedMeasurements.has(e)||this.completedMeasurements.set(e,[]),this.completedMeasurements.get(e).push(n),"initialization"===e&&(this.initializationTime=n),n}async measureApiCall(e,t){const n=this.now();let r,i=!1;try{const e=await t();return i=!0,e}catch(e){throw i=!1,r=e instanceof Error?e.message:"Unknown error",e}finally{const t=this.now()-n;this.apiCallMetrics.push({operation:e,duration:t,timestamp:Date.now(),success:i,error:r})}}measureMemoryUsage(){return"undefined"!=typeof performance&&"memory"in performance&&performance.memory.usedJSHeapSize||0}getDetailedMemoryInfo(){if("undefined"!=typeof performance&&"memory"in performance){const e=performance.memory;return{usedJSHeapSize:e.usedJSHeapSize||0,totalJSHeapSize:e.totalJSHeapSize||0,jsHeapSizeLimit:e.jsHeapSizeLimit||0}}return null}getMetrics(){var e;const t=this.apiCallMetrics.filter(e=>e.success).map(e=>e.duration),n=t.length>0?t.reduce((e,t)=>e+t,0)/t.length:0,r={};return this.completedMeasurements.forEach((e,t)=>{r[t]=[...e]}),{bundleSize:{esm:0,umd:0,cjs:0,gzipped:{esm:0,umd:0,cjs:0}},runtime:{initializationTime:this.initializationTime,apiCallTime:t.length>0&&null!==(e=t[t.length-1])&&void 0!==e?e:0,memoryUsage:this.measureMemoryUsage(),averageApiCallTime:n,totalApiCalls:this.apiCallMetrics.length},measurements:r}}getApiCallMetrics(){return[...this.apiCallMetrics]}clearMetrics(){this.completedMeasurements.clear(),this.apiCallMetrics=[],this.initializationTime=0}generateReport(){const e=this.getMetrics(),t=this.getDetailedMemoryInfo();let n="=== Performance Report ===\n\n";if(n+="Runtime Performance:\n",n+=` Initialization Time: ${e.runtime.initializationTime.toFixed(2)}ms\n`,n+=` Total API Calls: ${e.runtime.totalApiCalls}\n`,n+=` Average API Call Time: ${e.runtime.averageApiCallTime.toFixed(2)}ms\n`,n+=` Current Memory Usage: ${(e.runtime.memoryUsage/1024/1024).toFixed(2)}MB\n\n`,t&&(n+="Memory Details:\n",n+=` Used Heap: ${(t.usedJSHeapSize/1024/1024).toFixed(2)}MB\n`,n+=` Total Heap: ${(t.totalJSHeapSize/1024/1024).toFixed(2)}MB\n`,n+=` Heap Limit: ${(t.jsHeapSizeLimit/1024/1024).toFixed(2)}MB\n\n`),this.apiCallMetrics.length>0){n+="API Call Breakdown:\n";const e=new Map;this.apiCallMetrics.forEach(t=>{e.has(t.operation)||e.set(t.operation,{count:0,totalTime:0,errors:0});const n=e.get(t.operation);n.count++,n.totalTime+=t.duration,t.success||n.errors++}),e.forEach((e,t)=>{const r=e.totalTime/e.count,i=(e.errors/e.count*100).toFixed(1);n+=` ${t}: ${e.count} calls, ${r.toFixed(2)}ms avg, ${i}% errors\n`})}return n}static async getBundleSizes(){return{esm:0,umd:0,cjs:0,gzipped:{esm:0,umd:0,cjs:0}}}now(){return"undefined"!=typeof performance&&performance.now?performance.now():Date.now()}static startMeasurement(e){(new Wh).startMeasurement(e)}static endMeasurement(e){return(new Wh).endMeasurement(e)}static measureMemoryUsage(){return(new Wh).measureMemoryUsage()}static async measureApiCall(e,t){return(new Wh).measureApiCall(e,t)}static getMetrics(){return(new Wh).getMetrics()}static generateReport(){return(new Wh).generateReport()}}let Ah=class e{constructor(t){this.headers=new Map,t&&(Array.isArray(t)?t.forEach(([e,t])=>this.set(e,t)):t instanceof e?t.forEach((e,t)=>this.set(t,e)):Object.entries(t).forEach(([e,t])=>this.set(e,t)))}append(e,t){const n=this.get(e);this.set(e,n?`${n}, ${t}`:t)}delete(e){this.headers.delete(e.toLowerCase())}get(e){return this.headers.get(e.toLowerCase())||null}has(e){return this.headers.has(e.toLowerCase())}set(e,t){this.headers.set(e.toLowerCase(),t)}forEach(e){this.headers.forEach(e)}},Lh=class{constructor(e,t={}){var n;"string"==typeof e?(this.url=e,this.method=t.method||"GET",this.headers=new Ah(t.headers),this.body=t.body||null,this.signal=t.signal||void 0):(this.url=e.url,this.method=t.method||e.method,this.headers=new Ah(t.headers||e.headers),this.body=void 0!==t.body?t.body:e.body,this.signal=void 0!==t.signal?null!==(n=t.signal)&&void 0!==n?n:void 0:e.signal)}},Bh=class{constructor(e="",t={}){this.status=t.status||200,this.statusText=t.statusText||"OK",this.headers=new Ah(t.headers),this.ok=this.status>=200&&this.status<300,this.zt=e}async text(){return this.zt}async json(){return JSON.parse(this.zt)}};var qh=Object.freeze({__proto__:null,Headers:Ah,Request:Lh,Response:Bh,fetch:async function(e,t={}){return new Promise((n,r)=>{const i=new Lh(e,t),o=new XMLHttpRequest;i.signal&&i.signal.addEventListener("abort",()=>{o.abort(),r(new Error("Request aborted"))}),o.open(i.method,i.url),i.headers.forEach((e,t)=>{o.setRequestHeader(t,e)}),o.onload=()=>{const e=new Ah;o.getAllResponseHeaders().split("\r\n").forEach(t=>{const[n,r]=t.split(": ");n&&r&&e.set(n,r)});const t=new Bh(o.responseText,{status:o.status,statusText:o.statusText,headers:e});n(t)},o.onerror=()=>{r(new TypeError("Network request failed"))},o.ontimeout=()=>{r(new TypeError("Network request timed out"))},o.send(i.body)})}});class Fh{constructor(e){this.state="pending",this.onFulfilledCallbacks=[],this.onRejectedCallbacks=[];try{e(this.resolve.bind(this),this.reject.bind(this))}catch(e){this.reject(e)}}resolve(e){"pending"===this.state&&(this.state="fulfilled",this.value=e,this.onFulfilledCallbacks.forEach(t=>{setTimeout(()=>t(e),0)}))}reject(e){"pending"===this.state&&(this.state="rejected",this.reason=e,this.onRejectedCallbacks.forEach(t=>{setTimeout(()=>t(e),0)}))}then(e,t){return new Fh((n,r)=>{const i=t=>{try{if(e){const i=e(t);i instanceof Fh?i.then(n,r):n(i)}else n(t)}catch(e){r(e)}},o=e=>{try{if(t){const i=t(e);i instanceof Fh?i.then(n,r):n(i)}else r(e)}catch(e){r(e)}};"fulfilled"===this.state?setTimeout(()=>i(this.value),0):"rejected"===this.state?setTimeout(()=>o(this.reason),0):(this.onFulfilledCallbacks.push(i),this.onRejectedCallbacks.push(o))})}catch(e){return this.then(void 0,e)}static resolve(e){return new Fh(t=>t(e))}static reject(e){return new Fh((t,n)=>n(e))}static all(e){return new Fh((t,n)=>{if(0===e.length)return void t([]);const r=[];let i=0;e.forEach((o,s)=>{o.then(n=>{r[s]=n,i++,i===e.length&&t(r)},n)})})}}var Hh=Object.freeze({__proto__:null,PromisePolyfill:Fh});class Uh{constructor(e){this.params=new Map,"string"==typeof e?this.parseString(e):e&&"object"==typeof e&&"forEach"in e&&"function"==typeof e.forEach?e.forEach((e,t)=>this.append(t,e)):e&&"object"==typeof e&&Object.entries(e).forEach(([e,t])=>this.set(e,t))}parseString(e){const t=e.startsWith("?")?e.slice(1):e;t&&t.split("&").forEach(e=>{if(!e)return;const t=e.indexOf("=");let n,r;-1===t?(n=e,r=""):(n=e.substring(0,t),r=e.substring(t+1)),n&&this.append(decodeURIComponent(n),decodeURIComponent(r))})}append(e,t){const n=this.params.get(e)||[];n.push(t),this.params.set(e,n)}delete(e){this.params.delete(e)}get(e){var t;const n=this.params.get(e);return n&&n.length>0&&null!==(t=n[0])&&void 0!==t?t:null}getAll(e){return this.params.get(e)||[]}has(e){return this.params.has(e)}set(e,t){this.params.set(e,[t])}forEach(e){this.params.forEach((t,n)=>{t.forEach(t=>e(t,n))})}toString(){const e=[];return this.params.forEach((t,n)=>{t.forEach(t=>{e.push(`${encodeURIComponent(n)}=${encodeURIComponent(t)}`)})}),e.join("&")}}var Yh=Object.freeze({__proto__:null,URLPolyfill:class{constructor(e,t){const n=this.parseUrl(e,t);this.protocol=n.protocol,this.hostname=n.hostname,this.port=n.port,this.pathname=n.pathname,this.search=n.search,this.hash=n.hash,this.host=this.port?`${this.hostname}:${this.port}`:this.hostname,this.origin=`${this.protocol}//${this.host}`,this.href=this.toString(),this.searchParams=new Uh(this.search)}parseUrl(e,t){const n=document.createElement("a");if(t){const r=document.createElement("a");r.href=t,n.href=this.resolveUrl(e,r.href)}else n.href=e;return{protocol:n.protocol,hostname:n.hostname,port:n.port,pathname:n.pathname,search:n.search,hash:n.hash}}resolveUrl(e,t){if(e.includes("://"))return e;if(e.startsWith("/")){const n=document.createElement("a");return n.href=t,`${n.protocol}//${n.host}${e}`}return`${t.split("/").slice(0,-1).join("/")}/${e}`}toString(){return`${this.protocol}//${this.host}${this.pathname}${this.search}${this.hash}`}},URLSearchParamsPolyfill:Uh});e.DataLayerManager=Mh,e.EnhancedHttpClient=Q,e.ErrorHandlingStrategy=class{handleNetworkError(t){return new G(e.ErrorType.NETWORK_ERROR,"Network connection failed. Please check your internet connection.",!0)}handleApiError(t){if(503===t.status)return new G(e.ErrorType.MAINTENANCE_ERROR,"We're performing scheduled maintenance. Please check back in a few minutes.",!1,t.status);const n=t.status>=500||429===t.status;return 429===t.status?new G(e.ErrorType.API_ERROR,"Too many requests. Please wait a moment and try again.",!0,t.status):t.status>=400&&t.status<500?new G(e.ErrorType.API_ERROR,"Invalid request. Please refresh the page and try again.",!1,t.status):t.status>=500?new G(e.ErrorType.API_ERROR,"Service temporarily unavailable. Please try again in a moment.",!0,t.status):new G(e.ErrorType.API_ERROR,`Request failed: ${t.statusText}`,n,t.status)}handleStorageError(t){return new G(e.ErrorType.STORAGE_ERROR,"Unable to save progress. The quote will still work, but progress won't be saved.",!1)}shouldRetry(e){return e.retryable}getUserFriendlyMessage(t){switch(t.type){case e.ErrorType.NETWORK_ERROR:return"Connection failed. Please check your internet connection and try again.";case e.ErrorType.MAINTENANCE_ERROR:return"We're performing scheduled maintenance. Please check back in a few minutes.";case e.ErrorType.API_ERROR:return 429===t.statusCode?"Too many requests. Please wait a moment and try again.":t.statusCode&&t.statusCode>=400&&t.statusCode<500?"Invalid request. Please refresh the page and try again.":t.statusCode&&t.statusCode>=500?"Service temporarily unavailable. Please try again in a moment.":"Request failed. Please try again.";case e.ErrorType.STORAGE_ERROR:return"Unable to save progress. The quote will still work, but progress won't be saved.";case e.ErrorType.TIMEOUT_ERROR:return"Request timed out. Please try again.";case e.ErrorType.VALIDATION_ERROR:return t.validationErrors&&Object.keys(t.validationErrors).length>0?"There were validation errors in your form. Please check your inputs and try again.":"Invalid data provided. Please check your input and try again.";default:return"An unexpected error occurred. Please try again."}}},e.FormStateManager=Ae,e.InsureOS=jh,e.InsureOSClient=Oh,e.InsureOSError=G,e.LocalStateManager=ee,e.LocalStorageAdapter=J,e.MemoryStorageAdapter=class{constructor(){this.storage=new Map}get(e){return this.storage.get(e)||null}set(e,t){this.storage.set(e,t)}remove(e){this.storage.delete(e)}clear(){this.storage.clear()}isAvailable(){return!0}},e.PerformanceMonitor=Wh,e.PolyfillManager=class{constructor(e={}){var t,n,r;this.detectionResults=null,this.config={fetch:null===(t=e.fetch)||void 0===t||t,promise:null===(n=e.promise)||void 0===n||n,url:null===(r=e.url)||void 0===r||r}}async loadPolyfills(){this.detectionResults=this.detectFeatures(),this.config.fetch&&this.detectionResults.fetch&&await this.loadFetchPolyfill(),this.config.promise&&this.detectionResults.promise&&await this.loadPromisePolyfill(),this.config.url&&this.detectionResults.url&&await this.loadUrlPolyfill()}getDetectionResults(){return this.detectionResults}detectFeatures(){return{fetch:this.needsFetchPolyfill(),promise:this.needsPromisePolyfill(),url:this.needsUrlPolyfill()}}needsFetchPolyfill(){if("undefined"==typeof fetch)return!0;if("undefined"==typeof Headers||"undefined"==typeof Request||"undefined"==typeof Response)return!0;try{return new Headers,new Request("http://example.com"),new Response,!1}catch(e){return!0}}needsPromisePolyfill(){if("undefined"==typeof Promise)return!0;if("function"!=typeof Promise.resolve||"function"!=typeof Promise.reject||"function"!=typeof Promise.all)return!0;try{const e=Promise.resolve(42);return"function"!=typeof e.then||"function"!=typeof e.catch}catch(e){return!0}}needsUrlPolyfill(){if("undefined"==typeof URL)return!0;try{const e=new URL("http://example.com/path?param=value#hash");if("string"!=typeof e.protocol||"string"!=typeof e.hostname||"string"!=typeof e.pathname||"string"!=typeof e.search||"string"!=typeof e.hash)return!0;if("undefined"==typeof URLSearchParams)return!0;const t=new URLSearchParams("param=value");return"function"!=typeof t.get||"function"!=typeof t.set}catch(e){return!0}}async loadFetchPolyfill(){if(this.needsFetchPolyfill())try{const{fetch:e,Headers:t,Request:n,Response:r}=await Promise.resolve().then(function(){return qh});void 0===globalThis.fetch&&(globalThis.fetch=e),void 0===globalThis.Headers&&(globalThis.Headers=t),void 0===globalThis.Request&&(globalThis.Request=n),void 0===globalThis.Response&&(globalThis.Response=r)}catch(e){}}async loadPromisePolyfill(){if(this.needsPromisePolyfill())try{const{PromisePolyfill:e}=await Promise.resolve().then(function(){return Hh});void 0===globalThis.Promise&&(globalThis.Promise=e)}catch(e){}}async loadUrlPolyfill(){if(this.needsUrlPolyfill())try{const{URLPolyfill:e,URLSearchParamsPolyfill:t}=await Promise.resolve().then(function(){return Yh});void 0===globalThis.URL&&(globalThis.URL=e),void 0===globalThis.URLSearchParams&&(globalThis.URLSearchParams=t)}catch(e){}}},e.RetryStrategy=V,e.SessionStorageAdapter=K,e.ThemeLoader=la,e.addBreadcrumb=Ch,e.captureException=kh,e.captureMessage=Nh,e.createAppError=we,e.getAnalytics=function(){return Ie},e.getSupportMessage=$e,e.groupErrorsByField=function(e){return e.reduce((e,t)=>(e[t.field]||(e[t.field]=[]),e[t.field].push(t),e),{})},e.initializeAnalytics=Te,e.initializeSentry=xh,e.isSentryInitialized=$h,e.parseServerValidationErrors=fe,e.setTag=_h,e.setUser=Sh,e.shouldShowErrorPage=function(e){return"initialization"===e.type&&"critical"===e.severity},e.shouldShowMaintenancePage=_e,e.trackFormProgress=ze,e.trackPaymentCompleted=je,e.trackPaymentFailed=We,e.trackPaymentInitiated=Oe,e.trackQuoteAtCheckout=Re,e.trackQuoteCalculated=De,e.trackQuoteReferred=Me,e.trackQuoteStarted=Pe,e.validateField=he,e.validatePage=me});
|
|
1
|
+
!function(e,t){"object"==typeof exports&&"undefined"!=typeof module?t(exports):"function"==typeof define&&define.amd?define(["exports"],t):t((e="undefined"!=typeof globalThis?globalThis:e||self).InsureOSScripts={})}(this,function(e){"use strict";const t=()=>{globalThis.insureOSDebug};var n,r,i,o,s,a,l,c,d,u,h,m,f,p,g,y,v={},w=[],b=/acit|ex(?:s|g|n|p|$)|rph|grid|ows|mnc|ntw|ine[ch]|zoo|^ord|itera/i,x=Array.isArray;function k(e,t){for(var n in t)e[n]=t[n];return e}function N(e){e&&e.parentNode&&e.parentNode.removeChild(e)}function S(e,t,r){var i,o,s,a={};for(s in t)"key"==s?i=t[s]:"ref"==s?o=t[s]:a[s]=t[s];if(arguments.length>2&&(a.children=arguments.length>3?n.call(arguments,2):r),"function"==typeof e&&null!=e.defaultProps)for(s in e.defaultProps)void 0===a[s]&&(a[s]=e.defaultProps[s]);return C(e,a,i,o,null)}function C(e,t,n,o,s){var a={type:e,props:t,key:n,ref:o,i:null,m:null,p:0,v:null,k:null,constructor:void 0,N:null==s?++i:s,C:-1,_:0};return null==s&&null!=r.vnode&&r.vnode(a),a}function _(e){return e.children}function $(e,t){this.props=e,this.context=t}function I(e,t){if(null==t)return e.m?I(e.m,e.C+1):null;for(var n;t<e.i.length;t++)if(null!=(n=e.i[t])&&null!=n.v)return n.v;return"function"==typeof e.type?I(e):null}function T(e){if(e.I&&e.P){var t=e.N,n=t.v,i=[],o=[],s=k({},t);s.N=t.N+1,r.vnode&&r.vnode(s),L(e.I,s,t,e.R,e.I.namespaceURI,32&t._?[n]:null,i,null==n?I(t):n,!!(32&t._),o),s.N=t.N,s.m.i[s.C]=s,q(i,s,o),t.v=t.m=null,s.v!=n&&E(s)}}function E(e){if(null!=(e=e.m)&&null!=e.k)return e.v=e.k.base=null,e.i.some(function(t){if(null!=t&&null!=t.v)return e.v=e.k.base=t.v}),E(e)}function P(e){(!e.P&&(e.P=!0)&&o.push(e)&&!z.O++||s!=r.debounceRendering)&&((s=r.debounceRendering)||a)(z)}function z(){try{for(var e,t=1;o.length;)o.length>t&&o.sort(l),e=o.shift(),t=o.length,T(e)}finally{o.length=z.O=0}}function D(e,t,n,r,i,o,s,a,l,c,d){var u,h,m,f,p,g,y,b=r&&r.i||w,x=t.length;for(l=R(n,t,b,l,x),u=0;u<x;u++)null!=(m=n.i[u])&&(h=-1!=m.C&&b[m.C]||v,m.C=u,g=L(e,m,h,i,o,s,a,l,c,d),f=m.v,m.ref&&h.ref!=m.ref&&(h.ref&&U(h.ref,null,m),d.push(m.ref,m.k||f,m)),null==p&&null!=f&&(p=f),(y=!!(4&m._))||h.i===m.i?(l=M(m,l,e,y),y&&h.v&&(h.v=null)):"function"==typeof m.type&&void 0!==g?l=g:f&&(l=f.nextSibling),m._&=-7);return n.v=p,l}function R(e,t,n,r,i){var o,s,a,l,c,d=n.length,u=d,h=0;for(e.i=new Array(i),o=0;o<i;o++)null!=(s=t[o])&&"boolean"!=typeof s&&"function"!=typeof s?("string"==typeof s||"number"==typeof s||"bigint"==typeof s||s.constructor==String?s=e.i[o]=C(null,s,null,null,null):x(s)?s=e.i[o]=C(_,{children:s},null,null,null):void 0===s.constructor&&s.p>0?s=e.i[o]=C(s.type,s.props,s.key,s.ref?s.ref:null,s.N):e.i[o]=s,l=o+h,s.m=e,s.p=e.p+1,a=null,-1!=(c=s.C=O(s,n,l,u))&&(u--,(a=n[c])&&(a._|=2)),null==a||null==a.N?(-1==c&&(i>d?h--:i<d&&h++),"function"!=typeof s.type&&(s._|=4)):c!=l&&(c==l-1?h--:c==l+1?h++:(c>l?h--:h++,s._|=4))):e.i[o]=null;if(u)for(o=0;o<d;o++)null!=(a=n[o])&&!(2&a._)&&(a.v==r&&(r=I(a)),Y(a,a));return r}function M(e,t,n,r){var i,o;if("function"==typeof e.type){for(i=e.i,o=0;i&&o<i.length;o++)i[o]&&(i[o].m=e,t=M(i[o],t,n,r));return t}e.v!=t&&(r&&(t&&e.type&&!t.parentNode&&(t=I(e)),n.insertBefore(e.v,t||null)),t=e.v);do{t=t&&t.nextSibling}while(null!=t&&8==t.nodeType);return t}function O(e,t,n,r){var i,o,s,a=e.key,l=e.type,c=t[n],d=null!=c&&!(2&c._);if(null===c&&null==a||d&&a==c.key&&l==c.type)return n;if(r>(d?1:0))for(i=n-1,o=n+1;i>=0||o<t.length;)if(null!=(c=t[s=i>=0?i--:o++])&&!(2&c._)&&a==c.key&&l==c.type)return s;return-1}function j(e,t,n){"-"==t[0]?e.setProperty(t,null==n?"":n):e[t]=null==n?"":"number"!=typeof n||b.test(t)?n:n+"px"}function W(e,t,n,r,i){var o,s;e:if("style"==t)if("string"==typeof n)e.style.cssText=n;else{if("string"==typeof r&&(e.style.cssText=r=""),r)for(t in r)n&&t in n||j(e.style,t,"");if(n)for(t in n)r&&n[t]==r[t]||j(e.style,t,n[t])}else if("o"==t[0]&&"n"==t[1])o=t!=(t=t.replace(h,"$1")),s=t.toLowerCase(),t=s in e||"onFocusOut"==t||"onFocusIn"==t?s.slice(2):t.slice(2),e.l||(e.l={}),e.l[t+o]=n,n?r?n[u]=r[u]:(n[u]=m,e.addEventListener(t,o?p:f,o)):e.removeEventListener(t,o?p:f,o);else{if("http://www.w3.org/2000/svg"==i)t=t.replace(/xlink(H|:h)/,"h").replace(/sName$/,"s");else if("width"!=t&&"height"!=t&&"href"!=t&&"list"!=t&&"form"!=t&&"tabIndex"!=t&&"download"!=t&&"rowSpan"!=t&&"colSpan"!=t&&"role"!=t&&"popover"!=t&&t in e)try{e[t]=null==n?"":n;break e}catch(e){}"function"==typeof n||(null==n||!1===n&&"-"!=t[4]?e.removeAttribute(t):e.setAttribute(t,"popover"==t&&1==n?"":n))}}function A(e){return function(t){if(this.l){var n=this.l[t.type+e];if(null==t[d])t[d]=m++;else if(t[d]<n[u])return;return n(r.event?r.event(t):t)}}}function L(e,t,n,i,o,s,a,l,c,d){var u,h,m,f,p,g,y,v,b,S,C,I,T,E,P,z=t.type;if(void 0!==t.constructor)return null;128&n._&&(c=!!(32&n._),s=[l=t.v=n.v]),(u=r.p)&&u(t);e:if("function"==typeof z)try{if(v=t.props,b=z.prototype&&z.prototype.render,S=(u=z.contextType)&&i[u.k],C=u?S?S.props.value:u.m:i,n.k?y=(h=t.k=n.k).m=h.j:(b?t.k=h=new z(v,C):(t.k=h=new $(v,C),h.constructor=z,h.render=Z),S&&S.sub(h),h.state||(h.state={}),h.R=i,m=h.P=!0,h.W=[],h.A=[]),b&&null==h.L&&(h.L=h.state),b&&null!=z.getDerivedStateFromProps&&(h.L==h.state&&(h.L=k({},h.L)),k(h.L,z.getDerivedStateFromProps(v,h.L))),f=h.props,p=h.state,h.N=t,m)b&&null==z.getDerivedStateFromProps&&null!=h.componentWillMount&&h.componentWillMount(),b&&null!=h.componentDidMount&&h.W.push(h.componentDidMount);else{if(b&&null==z.getDerivedStateFromProps&&v!==f&&null!=h.componentWillReceiveProps&&h.componentWillReceiveProps(v,C),t.N==n.N||!h.v&&null!=h.shouldComponentUpdate&&!1===h.shouldComponentUpdate(v,h.L,C)){t.N!=n.N&&(h.props=v,h.state=h.L,h.P=!1),t.v=n.v,t.i=n.i,t.i.some(function(e){e&&(e.m=t)}),w.push.apply(h.W,h.A),h.A=[],h.W.length&&a.push(h);break e}null!=h.componentWillUpdate&&h.componentWillUpdate(v,h.L,C),b&&null!=h.componentDidUpdate&&h.W.push(function(){h.componentDidUpdate(f,p,g)})}if(h.context=C,h.props=v,h.I=e,h.v=!1,I=r.O,T=0,b)h.state=h.L,h.P=!1,I&&I(t),u=h.render(h.props,h.state,h.context),w.push.apply(h.W,h.A),h.A=[];else do{h.P=!1,I&&I(t),u=h.render(h.props,h.state,h.context),h.state=h.L}while(h.P&&++T<25);h.state=h.L,null!=h.getChildContext&&(i=k(k({},i),h.getChildContext())),b&&!m&&null!=h.getSnapshotBeforeUpdate&&(g=h.getSnapshotBeforeUpdate(f,p)),E=null!=u&&u.type===_&&null==u.key?F(u.props.children):u,l=D(e,x(E)?E:[E],t,n,i,o,s,a,l,c,d),h.base=t.v,t._&=-161,h.W.length&&a.push(h),y&&(h.j=h.m=null)}catch(e){if(t.N=null,c||null!=s)if(e.then){for(t._|=c?160:128;l&&8==l.nodeType&&l.nextSibling;)l=l.nextSibling;s[s.indexOf(l)]=null,t.v=l}else{for(P=s.length;P--;)N(s[P]);B(t)}else t.v=n.v,t.i=n.i,e.then||B(t);r.v(e,t,n)}else null==s&&t.N==n.N?(t.i=n.i,t.v=n.v):l=t.v=H(n.v,t,n,i,o,s,a,c,d);return(u=r.diffed)&&u(t),128&t._?void 0:l}function B(e){e&&(e.k&&(e.k.v=!0),e.i&&e.i.some(B))}function q(e,t,n){for(var i=0;i<n.length;i++)U(n[i],n[++i],n[++i]);r.k&&r.k(t,e),e.some(function(t){try{e=t.W,t.W=[],e.some(function(e){e.call(t)})}catch(e){r.v(e,t.N)}})}function F(e){return"object"!=typeof e||null==e||e.p>0?e:x(e)?e.map(F):k({},e)}function H(e,t,i,o,s,a,l,c,d){var u,h,m,f,p,g,y,w=i.props||v,b=t.props,k=t.type;if("svg"==k?s="http://www.w3.org/2000/svg":"math"==k?s="http://www.w3.org/1998/Math/MathML":s||(s="http://www.w3.org/1999/xhtml"),null!=a)for(u=0;u<a.length;u++)if((p=a[u])&&"setAttribute"in p==!!k&&(k?p.localName==k:3==p.nodeType)){e=p,a[u]=null;break}if(null==e){if(null==k)return document.createTextNode(b);e=document.createElementNS(s,k,b.is&&b),c&&(r.B&&r.B(t,a),c=!1),a=null}if(null==k)w===b||c&&e.data==b||(e.data=b);else{if(a=a&&n.call(e.childNodes),!c&&null!=a)for(w={},u=0;u<e.attributes.length;u++)w[(p=e.attributes[u]).name]=p.value;for(u in w)p=w[u],"dangerouslySetInnerHTML"==u?m=p:"children"==u||u in b||"value"==u&&"defaultValue"in b||"checked"==u&&"defaultChecked"in b||W(e,u,null,p,s);for(u in b)p=b[u],"children"==u?f=p:"dangerouslySetInnerHTML"==u?h=p:"value"==u?g=p:"checked"==u?y=p:c&&"function"!=typeof p||w[u]===p||W(e,u,p,w[u],s);if(h)c||m&&(h.H==m.H||h.H==e.innerHTML)||(e.innerHTML=h.H),t.i=[];else if(m&&(e.innerHTML=""),D("template"==t.type?e.content:e,x(f)?f:[f],t,i,o,"foreignObject"==k?"http://www.w3.org/1999/xhtml":s,a,l,a?a[0]:i.i&&I(i,0),c,d),null!=a)for(u=a.length;u--;)N(a[u]);c||(u="value","progress"==k&&null==g?e.removeAttribute("value"):null!=g&&(g!==e[u]||"progress"==k&&!g||"option"==k&&g!=w[u])&&W(e,u,g,w[u],s),u="checked",null!=y&&y!=e[u]&&W(e,u,y,w[u],s))}return e}function U(e,t,n){try{if("function"==typeof e){var i="function"==typeof e._;i&&e._(),i&&null==t||(e._=e(t))}else e.current=t}catch(e){r.v(e,n)}}function Y(e,t,n){var i,o;if(r.unmount&&r.unmount(e),(i=e.ref)&&(i.current&&i.current!=e.v||U(i,null,t)),null!=(i=e.k)){if(i.componentWillUnmount)try{i.componentWillUnmount()}catch(e){r.v(e,t)}i.base=i.I=null}if(i=e.i)for(o=0;o<i.length;o++)i[o]&&Y(i[o],t,n||"function"!=typeof e.type);n||N(e.v),e.k=e.m=e.v=void 0}function Z(e,t,n){return this.constructor(e,n)}n=w.slice,r={v:function(e,t,n,r){for(var i,o,s;t=t.m;)if((i=t.k)&&!i.m)try{if((o=i.constructor)&&null!=o.getDerivedStateFromError&&(i.setState(o.getDerivedStateFromError(e)),s=i.P),null!=i.componentDidCatch&&(i.componentDidCatch(e,r||{}),s=i.P),s)return i.j=i}catch(t){e=t}throw e}},i=0,$.prototype.setState=function(e,t){var n;n=null!=this.L&&this.L!=this.state?this.L:this.L=k({},this.state),"function"==typeof e&&(e=e(k({},n),this.props)),e&&k(n,e),null!=e&&this.N&&(t&&this.A.push(t),P(this))},$.prototype.forceUpdate=function(e){this.N&&(this.v=!0,e&&this.W.push(e),P(this))},$.prototype.render=_,o=[],a="function"==typeof Promise?Promise.prototype.then.bind(Promise.resolve()):setTimeout,l=function(e,t){return e.N.p-t.N.p},z.O=0,c=Math.random().toString(8),d="__d"+c,u="__a"+c,h=/(PointerCapture)$|Capture$/i,m=0,f=A(!1),p=A(!0),g=0,e.ErrorType=void 0,(y=e.ErrorType||(e.ErrorType={})).NETWORK_ERROR="NETWORK_ERROR",y.API_ERROR="API_ERROR",y.VALIDATION_ERROR="VALIDATION_ERROR",y.STORAGE_ERROR="STORAGE_ERROR",y.TIMEOUT_ERROR="TIMEOUT_ERROR",y.MAINTENANCE_ERROR="MAINTENANCE_ERROR";class G extends Error{constructor(e,t,n=!1,r,i,o,s){super(t),this.type=e,this.retryable=n,this.statusCode=r,this.retryAfter=i,this.validationErrors=o,this.organisation=s,this.name="InsureOSError"}}class V{constructor(e){this.config=e}shouldRetry(e,t){return!(t>=this.config.maxRetries)&&this.isRetryableError(e)}getDelay(e,t){if(t){const e=parseInt(t,10);if(!isNaN(e))return 1e3*e}const n=this.config.baseDelay*Math.pow(2,e);return Math.min(n,this.config.maxDelay)}isRetryableError(e){return e instanceof G?e.retryable:!("TypeError"!==e.name||!e.message.includes("fetch"))||"AbortError"===e.name}}class Q{constructor(e){this.config=e,this.retryStrategy=new V(e.retryConfig)}getBaseUrl(){return this.config.apiBaseUrl||"https://api.os.insure"}async makeRequest({url:t,method:n,body:r,skipOrgHeader:i=!1}){return this.executeWithRetry(async()=>{const o=new AbortController,s=setTimeout(()=>o.abort(),this.config.timeout);try{const e={"Content-Type":"application/json"},a=t.includes("signed=");i||a||(e["X-Organisation-ID"]=this.config.orgId);const l={method:n,headers:e,signal:o.signal};r&&(l.body=JSON.stringify(r));const c=await fetch(t,l);if(clearTimeout(s),!c.ok)throw await this.handleApiError(c);const d=await c.json();return d.data||d}catch(t){if(clearTimeout(s),t instanceof G)throw t;if(t instanceof Error&&"AbortError"===t.name)throw new G(e.ErrorType.TIMEOUT_ERROR,"Request timed out",!0);if(t instanceof TypeError&&t.message.includes("fetch"))throw new G(e.ErrorType.NETWORK_ERROR,"Network connection failed. Please check your internet connection.",!0);throw t}})}getQuoteIntent(e){return this.makeRequest({url:e,method:"GET"})}async fetchAvailableProducts(e){var n;const r=null==e?void 0:e.includes("*"),i=!e||0===e.length,o=`${this.config.apiBaseUrl}/products`,s=await this.makeRequest({url:o,method:"GET"}),a=s.products||[],l=null===(n=s.organisation)||void 0===n?void 0:n.client_settings;let c=a;if(r)t(),c=a;else if(e&&e.length>0)c=a.filter(t=>e.includes(t.code));else if(i&&(null==l?void 0:l.products)&&l.products.length>0){const e=l.products.map(e=>e.code);c=e.map(e=>a.find(t=>t.code===e)).filter(e=>void 0!==e),t((a.length,c.length))}else i&&(t(),c=a);return{products:c,organisation:s.organisation}}createQuoteIntent(e){return this.makeRequest({url:`${this.config.apiBaseUrl}/quote-intents`,method:"POST",body:e})}updateQuoteIntent(e,t){return this.makeRequest({url:e,method:"PUT",body:t})}deleteQuoteIntent(e){return this.makeRequest({url:e,method:"DELETE"})}calculateQuoteIntent(e){return this.makeRequest({url:e,method:"POST"})}calculateQuoteIntentV2(e){return this.makeRequest({url:e,method:"POST"})}repriceQuoteIntentV2(e,t){return this.makeRequest({url:e,method:"POST",body:t})}bindQuoteIntentV2(e,t){return this.makeRequest({url:e,method:"POST",body:t})}deleteCalculations(e){return this.makeRequest({url:e,method:"DELETE"})}initiatePayment(e,t){const n="string"==typeof t?t:t.code;return this.makeRequest({url:`${this.config.apiBaseUrl}/payments/initiate`,method:"POST",body:{...e,gateway_code:n}})}getPaymentStatus(e,t){return this.makeRequest({url:`${this.config.apiBaseUrl}/payments/status/${e}`,method:"GET"})}createQuotePaymentLink(e,t){return this.makeRequest({url:`${this.config.apiBaseUrl}/quote-intents/${e}/payment-link`,method:"POST",body:t})}continueLater(e,t){return this.makeRequest({url:`${this.config.apiBaseUrl}/quote-intents/${e}/continue-later`,method:"POST",body:{email:t}})}resumeQuoteIntent(e){return this.makeRequest({url:`${this.config.apiBaseUrl}/quote-intents/${e}/resume`,method:"GET"})}getPaymentLinkDetails(e){return this.makeRequest({url:e,method:"GET",skipOrgHeader:!0})}getPaymentLinkById(e){return this.makeRequest({url:`${this.config.apiBaseUrl}/payment-links/${e}`,method:"GET"})}initiateFixedPayment(e,t,n,r){return this.makeRequest({url:`${this.config.apiBaseUrl}/payment-links/${e}/pay`,method:"POST",body:{gateway_code:t,client_name:n,...r?{gateway_method:r}:{}}})}validateCoverStartDate(e,t){return this.makeRequest({url:`${this.config.apiBaseUrl}/payment-links/${e}/validate-cover-date`,method:"POST",body:{cover_start_date:t}})}validateQuoteCoverStartDate(e,t){return this.makeRequest({url:`${this.config.apiBaseUrl}/quote-intents/${e}/validate-cover-date`,method:"POST",body:{cover_start_date:t}})}resolvePaymentTransaction(e){return this.makeRequest({url:`${this.config.apiBaseUrl}/payments/${e}/resolve`,method:"POST",body:{}})}validatePromoCode(e,t){return this.makeRequest({url:`${this.config.apiBaseUrl}/quote-intents/${e}/validate-promo-code`,method:"POST",body:{code:t}})}async executeWithRetry(e){let n;for(let r=0;r<=this.config.retryConfig.maxRetries;r++)try{return t(this.config.retryConfig.maxRetries),await e()}catch(e){n=e;const i=this.retryStrategy.shouldRetry(n,r);if(t(e instanceof G&&(e.type,e.message)),t(this.config.retryConfig.maxRetries),r===this.config.retryConfig.maxRetries||!i)throw t(),n;const o=e instanceof G?e.retryAfter:void 0,s=this.retryStrategy.getDelay(r,o);t(),await new Promise(e=>setTimeout(e,s))}throw n}async handleApiError(n){var r,i;const o=n.headers.get("retry-after"),s=await n.json().catch(()=>({}));if(t(),this.captureApiErrorToSentry(n,s),503===n.status)return new G(e.ErrorType.MAINTENANCE_ERROR,s.message||"We're performing scheduled maintenance. Please check back in a few minutes.",!1,n.status,void 0,void 0,null!==(r=s.organisation)&&void 0!==r?r:null);if(429===n.status)return new G(e.ErrorType.API_ERROR,"Too many requests. Please wait a moment and try again.",!1,n.status,o||void 0);if(n.status>=500){const t=s.message||"Service temporarily unavailable. Please try again in a moment.";return new G(e.ErrorType.API_ERROR,t,!1,n.status)}if(422===n.status)try{const t=s;return t.error&&t.error.details&&t.error.details.form_data?new G(e.ErrorType.VALIDATION_ERROR,"Form validation failed. Please check your inputs.",!1,n.status,void 0,t.error.details):new G(e.ErrorType.VALIDATION_ERROR,t.message||"Validation failed. Please check your inputs.",!1,n.status,void 0,null===(i=t.error)||void 0===i?void 0:i.details)}catch(t){return new G(e.ErrorType.VALIDATION_ERROR,"Validation failed. Please check your inputs.",!1,n.status)}if(400===n.status)try{const t=s;return t.errors?new G(e.ErrorType.VALIDATION_ERROR,t.message||"Form validation failed. Please check your inputs.",!1,n.status,void 0,t.errors):new G(e.ErrorType.API_ERROR,t.message||"Invalid request. Please check your input and try again.",!1,n.status)}catch(t){return new G(e.ErrorType.API_ERROR,"Invalid request. Please refresh the page and try again.",!1,n.status)}if(n.status>=400&&n.status<500){const t=s.message||"Invalid request. Please refresh the page and try again.";return new G(e.ErrorType.API_ERROR,t,!1,n.status)}return new G(e.ErrorType.API_ERROR,`Request failed: ${n.statusText}`,this.config.retryConfig.retryableStatusCodes.includes(n.status),n.status)}captureApiErrorToSentry(e,t){try{(e.status>=500||429===e.status)&&Promise.resolve().then(function(){return Ih}).then(({captureMessage:n,addBreadcrumb:r,isSentryInitialized:i})=>{i()&&(r({message:`API Error: ${e.status} ${e.statusText}`,category:"http",level:"error",data:{url:e.url,status:e.status,statusText:e.statusText}}),n(`API Error: ${e.status} - ${e.url}`,"error",{http:{status_code:e.status,url:e.url,method:"Unknown"},response:t}))}).catch(()=>{})}catch(e){}}}class J{constructor(){this.available=this.checkAvailability()}get(e){if(!this.available)return null;try{return localStorage.getItem(e)}catch(e){return null}}set(e,t){if(this.available)try{localStorage.setItem(e,t)}catch(e){}}remove(e){if(this.available)try{localStorage.removeItem(e)}catch(e){}}clear(){if(this.available)try{localStorage.clear()}catch(e){}}isAvailable(){return this.available}checkAvailability(){try{if("undefined"==typeof window||!window.localStorage)return!1;const e="__insure_os_storage_test__";return localStorage.setItem(e,"test"),localStorage.removeItem(e),!0}catch(e){return!1}}}class K{constructor(){this.available=this.checkAvailability()}get(e){if(!this.available)return null;try{return sessionStorage.getItem(e)}catch(e){return null}}set(e,t){if(this.available)try{sessionStorage.setItem(e,t)}catch(e){}}remove(e){if(this.available)try{sessionStorage.removeItem(e)}catch(e){}}clear(){if(this.available)try{sessionStorage.clear()}catch(e){}}isAvailable(){return this.available}checkAvailability(){try{if("undefined"==typeof window||!window.sessionStorage)return!1;const e="__insure_os_storage_test__";return sessionStorage.setItem(e,"test"),sessionStorage.removeItem(e),!0}catch(e){return!1}}}class X{static generateKey(e,t,n){const r=[this.KEY_PREFIX+e,t];return n&&r.push(n),r.join(this.SEPARATOR)}static serialize(e){try{return JSON.stringify({data:e,timestamp:Date.now(),version:"1.0"})}catch(e){throw new Error(`Failed to serialize data: ${e}`)}}static deserialize(e){try{const t=JSON.parse(e);return t&&"object"==typeof t&&t.data?t.data:null}catch(e){return null}}static getTimestamp(e){try{return JSON.parse(e).timestamp||null}catch(e){return null}}static isExpired(e,t){const n=this.getTimestamp(e);return!n||Date.now()-n>t}}X.KEY_PREFIX="insure_os_",X.SEPARATOR="_";class ee{constructor(e,t={}){this.storageAdapter=e,this.config={defaultExpirationMs:t.defaultExpirationMs||ee.DEFAULT_EXPIRATION_MS,namespace:t.namespace||ee.DEFAULT_NAMESPACE}}saveQuoteIntent(e,t){if(this.storageAdapter.isAvailable())try{t.payment_transactions&&t.payment_transactions.length;const n=this.generateStorageKey(e),r=X.serialize(t);this.storageAdapter.set(n,r)}catch(e){}}getQuoteIntent(e){if(!this.storageAdapter.isAvailable())return null;try{const t=this.generateStorageKey(e),n=this.storageAdapter.get(t);if(!n)return null;const r=X.deserialize(n);return(null==r?void 0:r.payment_transactions)&&r.payment_transactions.length,r&&this.isQuoteIntentValid(r)?r:(this.removeQuoteIntent(e),null)}catch(e){return null}}removeQuoteIntent(e){if(this.storageAdapter.isAvailable())try{const t=this.generateStorageKey(e);this.storageAdapter.remove(t)}catch(e){}}isQuoteIntentValid(e){if(!e||"object"!=typeof e)return!1;if(!e.id||!e.url||!e.org_id)return!1;const t=Date.now();return!(e.expires_at&&t>e.expires_at||e.created_at&&t-e.created_at>this.config.defaultExpirationMs)}getAllQuoteIntents(){return{}}cleanupExpiredQuoteIntents(){}isStorageAvailable(){return this.storageAdapter.isAvailable()}generateStorageKey(e){return X.generateKey(this.config.namespace,e)}}ee.DEFAULT_EXPIRATION_MS=864e5,ee.DEFAULT_NAMESPACE="quote_intent";class te{constructor(e){this.stateManager=e}async getOrCreateQuoteIntent(e,t,n){const r=this.stateManager.getQuoteIntent(e);if(r&&this.stateManager.isQuoteIntentValid(r)){const t=await n(r.url);return this.stateManager.saveQuoteIntent(e,t),t}try{const n=await t();return this.stateManager.saveQuoteIntent(e,n),n}catch(t){throw r&&this.stateManager.removeQuoteIntent(e),t}}updateQuoteIntent(e,t){const n=this.stateManager.getQuoteIntent(e);if(!n)return null;const r={...n,...t};return this.stateManager.saveQuoteIntent(e,r),r}clearQuoteIntent(e){this.stateManager.removeQuoteIntent(e)}clearExpiredQuoteIntents(){this.stateManager.cleanupExpiredQuoteIntents()}hasValidQuoteIntent(e){const t=this.stateManager.getQuoteIntent(e);return null!==t&&this.stateManager.isQuoteIntentValid(t)}getQuoteIntentUrl(e){const t=this.stateManager.getQuoteIntent(e);return(null==t?void 0:t.url)||null}isStorageAvailable(){return this.stateManager.isStorageAvailable()}}class ne{constructor(e,t){this.saveCallback=t,this.isPaused=!1,this.consecutiveFailures=0,this.lastErrorTime=0,this.isUserTyping=!1,this.config=e}start(){this.intervalId&&this.stop(),this.isPaused=!1,this.consecutiveFailures=0,this.lastErrorTime=0,this.config.autoSave&&(this.intervalId=window.setInterval(()=>{this.isPaused||this.isUserTyping||!this.shouldAttemptSave()||this.saveCallback().catch(this.handleSaveError.bind(this))},this.config.autoSaveInterval))}stop(){this.intervalId&&(clearInterval(this.intervalId),this.intervalId=void 0),this.typingTimeoutId&&(clearTimeout(this.typingTimeoutId),this.typingTimeoutId=void 0)}pause(){this.isPaused=!0,setTimeout(()=>this.resume(),6e4)}resume(){this.isPaused=!1,this.consecutiveFailures=0}shouldAttemptSave(){return!!this.config.autoSave&&(0===this.lastErrorTime||Date.now()-this.lastErrorTime>=this.config.retryDelay*Math.pow(2,this.consecutiveFailures-1))}handleSaveError(e){this.lastErrorTime=Date.now(),this.consecutiveFailures++,this.consecutiveFailures>=3&&(this.pause(),this.dispatchErrorEvent(e))}dispatchErrorEvent(e){if("undefined"!=typeof window){const t=new CustomEvent("form-autosave-error",{detail:{error:e,message:"Auto-save has been paused due to repeated failures."}});window.dispatchEvent(t)}}onSaveSuccess(){this.consecutiveFailures=0,this.lastErrorTime=0,this.isPaused&&this.resume()}startTyping(){this.isUserTyping=!0,this.typingTimeoutId&&clearTimeout(this.typingTimeoutId),this.typingTimeoutId=window.setTimeout(()=>{this.stopTyping()},500)}stopTyping(){this.isUserTyping=!1,this.typingTimeoutId&&(clearTimeout(this.typingTimeoutId),this.typingTimeoutId=void 0)}get status(){return{isPaused:this.isPaused,consecutiveFailures:this.consecutiveFailures,isActive:!!this.intervalId,isUserTyping:this.isUserTyping}}}function re(e,t){const n=t.operator,r=t.value,i=null==r?"":String(r),o=null==e?"":String(e);switch(n){case"=":return o===i;case"!=":return o!==i;case"contains":return o.includes(i);case"not_contains":return!o.includes(i);case"starts_with":return o.startsWith(i);case"ends_with":return o.endsWith(i);case"is_empty":return void 0===e||null==e||""===e||""===e.trim();case"is_not_empty":return void 0!==e&&null!=e&&""!==e&&!(""===e.trim());default:throw new Error(`Unsupported text operator: ${n}`)}}function ie(e,t){const n=t.operator,r=null==t.value?0:Number(t.value),i=null==e?0:Number(e.toString().replace(/,/g,"").trim());switch(n){case">":return i>r;case">=":return i>=r;case"<":return i<r;case"<=":return i<=r;case"=":return i===r;case"!=":return i!==r;case"is_empty":return void 0===e||null==e||""===e||""===e.toString().trim();case"is_not_empty":return void 0!==e&&null!=e&&""!==e&&!(""===e.toString().trim());default:throw new Error(`Unsupported numeric operator: ${n}`)}}function oe(e){if(!0===e||1===e)return!0;if("string"==typeof e){const t=e.toLowerCase();return"true"===t||"yes"===t}return!1}function se(e,t){const n=t.operator;switch(t.operator){case"true":case"=":return oe(e);case"false":return function(e){if(!1===e||0===e||void 0===e)return!0;if("string"==typeof e){const t=e.toLowerCase();return"false"===t||"no"===t}return!1}(e);case"!=":return!oe(e);default:throw new Error(`Unsupported boolean operator: ${n}`)}}function ae(e,t){const n=t.operator,r=t.value,i=null==r?0:Number(t.value);if(null==e||""===e.toString().trim())return"is_empty"===n;const o=e.toString().trim(),s=/^\d{4}$/.test(o)&&Number(o)>=1900&&Number(o)<=2100?new Date(Number(o),0,1).getTime():Date.parse(o),a=Math.floor((Date.now()-s)/315576e5),l=Math.floor((Date.now()-s)/864e5),c=new Date(s),d=new Date,u=12*(d.getFullYear()-c.getFullYear())+(d.getMonth()-c.getMonth());switch(n){case">":return s>Date.parse(r);case">=":return s>=Date.parse(r);case"<":return s<Date.parse(r);case"<=":return s<=Date.parse(r);case"age_less_than":return a<i;case"age_less_than_or_equal":return a<=i;case"age_greater_than":return a>i;case"age_greater_than_or_equal":return a>=i;case"age_days_less_than":return l<i;case"age_days_less_than_or_equal":return l<=i;case"age_days_greater_than":return l>i;case"age_days_greater_than_or_equal":return l>=i;case"age_months_less_than":return u<i;case"age_months_less_than_or_equal":return u<=i;case"age_months_greater_than":return u>i;case"age_months_greater_than_or_equal":return u>=i;default:throw new Error(`Unsupported date operator: ${n}`)}}class le{static create(e){switch(e){case"string":case"text":case"select":return re;case"numeric":return ie;case"boolean":return se;case"date":return ae;default:throw new Error(`Unsupported condition type: ${e}`)}}}function ce(e,t){const n=t.condition_type||"and";if(!t.conditions||0===t.conditions.length)return{matched:!0,conditions:[]};const r={matched:!1,conditions:t.conditions.map(t=>{const n={...t,matched:de(e,t),string:`${t.field} ${t.operator}`};return t.value&&(n.string+=` ${t.value}`),n})};return"none"===n&&(r.matched=!0),"and"===n&&(r.matched=r.conditions.every(e=>e.matched)),"or"===n&&(r.matched=r.conditions.some(e=>e.matched)),"not"===n&&(r.matched=r.conditions.every(e=>!e.matched)),r}function de(e,t){if("expression"===t.type)throw new Error("Expression conditions should not be evaluated through matchesCondition");if(!t.field)throw new Error("Field is required for non-expression conditions");const n=e[t.field],r=le.create(t.type);if(!r)throw new Error(`Unsupported condition type: ${t.type}`);return r(n,t)}var ue=Object.freeze({__proto__:null,TypeConditionEvaluatorFactory:le,booleanMatchesCondition:se,checkSimpleConditions:ce,dateMatchesCondition:ae,numericMatchesCondition:ie,textMatchesCondition:re});function he(e,t){var n;const r=[];if("checkbox"===e.type&&e.required&&!0!==t&&"true"!==t)return r.push({field:e.code||e.id,message:`${e.label} must be accepted`}),r;"boolean"===e.type&&(null===(n=e.boolean_config)||void 0===n?void 0:n.enable_details_textbox)&&("yes"===e.boolean_config.show_details_on&&(!0===t||"true"===t)||e.boolean_config.show_details_on),"email"===e.type&&"string"==typeof t&&(t=t.trim());const i="boolean"===e.type?null==t:null==t||""===t;if(e.required&&i&&!0!==e.add_null_option)return r.push({field:e.code||e.id,message:`${e.label} is required`}),r;if(!e.required&&i)return r;const o=e.validation;if(!o)return r;const s=String(t),a="number"==typeof t?t:parseFloat(s);if(o.pattern&&("text"===e.type||"email"===e.type)){const t=new RegExp(o.pattern),n=s.trim();t.test(n)||r.push({field:e.code||e.id,message:`${e.label} format is invalid`})}if(o.minLength&&s.length<o.minLength&&r.push({field:e.code||e.id,message:`${e.label} must be at least ${o.minLength} characters`}),o.maxLength&&s.length>o.maxLength&&r.push({field:e.code||e.id,message:`${e.label} must be no more than ${o.maxLength} characters`}),"number"!==e.type||isNaN(a)||(void 0!==o.min&&a<o.min&&r.push({field:e.code||e.id,message:`${e.label} must be at least ${o.min}`}),void 0!==o.max&&a>o.max&&r.push({field:e.code||e.id,message:`${e.label} must be no more than ${o.max}`}),void 0!==o.step&&a%o.step!==0&&r.push({field:e.code||e.id,message:`${e.label} must be in increments of ${o.step}`})),("date"===e.type||"year"===e.type||"monthyear"===e.type)&&!1===o.canBeFuture){const t=new Date,n=t.getFullYear();let i=!1;if("year"===e.type){const e=parseInt(s,10);!isNaN(e)&&e>n&&(i=!0)}else if("date"===e.type){const e=new Date(s);if(!isNaN(e.getTime())){const n=new Date(t.getFullYear(),t.getMonth(),t.getDate());new Date(e.getFullYear(),e.getMonth(),e.getDate())>n&&(i=!0)}}else if("monthyear"===e.type){const e=s.split("-");if(2===e.length){const n=parseInt(e[0],10),r=parseInt(e[1],10)-1;isNaN(n)||isNaN(r)||new Date(n,r,1)>new Date(t.getFullYear(),t.getMonth(),1)&&(i=!0)}}i&&r.push({field:e.code||e.id,message:`${e.label} cannot be in the future`})}return r}function me(e,t){var n,r;const i=[];for(const r of e.fields){const e=r.code||r.id;let o=!0;if(r.visibility){const e=ce(t,{condition_type:r.visibility.condition_type,conditions:r.visibility.conditions});o="show"===r.visibility.action?e.matched:!e.matched}if(!o)continue;const s=t[e],a=he(r,s);if(i.push(...a),"boolean"===r.type&&(null===(n=r.boolean_config)||void 0===n?void 0:n.enable_details_textbox)&&("yes"===r.boolean_config.show_details_on&&(!0===s||"true"===s)||"no"===r.boolean_config.show_details_on&&(!1===s||"false"===s))){const n=(t.U||{})[e];n&&""!==n.trim()||i.push({field:e,message:r.boolean_config.details_label||"Please provide details"})}}if(null===(r=e.validation)||void 0===r?void 0:r.required_fields)for(const n of e.validation.required_fields){const r=e.fields.find(e=>(e.code||e.id)===n),o=t[n];if(r){const e=r.code||r.id,n=i.find(t=>t.field===e);if(n)continue;let s=!0;if(r.visibility){const e=ce(t,{condition_type:r.visibility.condition_type,conditions:r.visibility.conditions});s="show"===r.visibility.action?e.matched:!e.matched}if(!s)continue;if("checkbox"===r.type){!0!==o&&"true"!==o&&i.push({field:e,message:`${r.label} must be accepted`});continue}("boolean"===r.type?null==o:null==o||""===o)&&(!0===r.add_null_option||i.push({field:e,message:`${r.label} is required`}))}}return{isValid:0===i.length,errors:i}}function fe(e){const t=[];let n;if("object"==typeof e&&null!==e&&("validation_errors"in e&&e.validation_errors&&"object"==typeof e.validation_errors?n=e.validation_errors:"errors"in e&&e.errors&&"object"==typeof e.errors?n=e.errors:"message"in e||"validation_errors"in e||"errors"in e||(n=e)),n)for(const[e,r]of Object.entries(n))if(Array.isArray(r))for(const n of r)t.push({field:e,message:n});return t}class pe{constructor(e,t,n){this.httpClient=e,this.definition=t,this.quoteIntentStore=n}async load(e,t){if(this.quoteIntentStore&&this.quoteIntentStore.getQuoteIntentUrl(e)){const e=await this.httpClient.getQuoteIntent(t);if(e.quote_intent.form_data)return e.quote_intent.form_data}return(await this.httpClient.getQuoteIntent(t)).quote_intent.form_data||this.createEmptyFormData()}async save(e,t,n,r){try{const e=this.prepareSavePayload(n,r);return await this.httpClient.updateQuoteIntent(t,e),{success:!0}}catch(e){if(e&&"object"==typeof e&&"validationErrors"in e){const t=e.validationErrors;if(t&&"object"==typeof t)return{success:!1,validationErrors:fe(t)}}throw e}}prepareSavePayload(e,t){const n=this.getCurrentPageId(e);return{current_page_index:e.current_page,current_page_id:n,page_data:e.page_data,save_type:t.saveType}}getCurrentPageId(e){const t=this.definition;if(!t||!e.page_data)return;const n=e.current_page;if(n<0||n>=t.pages.length)return;const r=t.pages[n];return r&&r.id?r.id:void 0}createEmptyFormData(){return{current_page:0,completed_pages:[],page_data:{},last_updated:(new Date).toISOString()}}}class ge{constructor(e,t,n,r){this.formDefinition=e,this.getFormData=t,this.updateFormData=n,this.saveCallback=r}canNavigateToPage(e){const t=this.getFormData().current_page;if(e<=t)return!0;if(this.hasActiveBlocker(t))return!1;if(this.isStagingEnvironment())return!0;const n=this.getFormData().completed_pages;for(let r=0;r<e;r++)if(r!==t&&!n.includes(r))return!1;return!0}async navigateToPage(e){if(e<0||e>=this.getTotalPages())return!1;if(!this.canNavigateToPage(e))return!1;const t=this.getFormData().current_page;if(e>t)try{await this.saveCallback(!0,"page")}catch(e){return e&&"object"==typeof e&&e.isValidationError,!1}return e>t&&this.markPageCompleted(t),this.updateFormData({current_page:e,last_updated:(new Date).toISOString()}),!0}navigateToNext(){const e=this.getFormData().current_page;return this.navigateToPage(e+1)}navigateToPrevious(){const e=this.getFormData().current_page;return this.navigateToPage(e-1)}markPageCompleted(e){const t=this.getFormData();if(!t.completed_pages.includes(e)){const n=[...t.completed_pages,e].sort((e,t)=>e-t);this.updateFormData({completed_pages:n})}}getTotalPages(){return this.formDefinition.pages.length}getCompletionStatus(){const e=this.getFormData(),t=this.getTotalPages(),n=[...e.completed_pages];return{totalPages:t,currentPage:e.current_page,completedPages:n,percentComplete:n.length/t*100}}hasActiveBlocker(e){var t;const n=this.formDefinition.pages[e];if(!n)return!1;const r=(null===(t=this.getFormData().page_data)||void 0===t?void 0:t[n.id])||{};for(const e of n.fields)if(e.blocker)if(e.blocker.conditions&&e.blocker.conditions.length>0){if(ce(r,{condition_type:e.blocker.condition_type||"or",conditions:e.blocker.conditions}).matched)return!0}else if(void 0!==e.blocker.trigger_value){const t=r[e.code||e.id];if(void 0!==t&&String(t)===String(e.blocker.trigger_value))return!0}return!1}isStagingEnvironment(){const e=window.location.hostname;return"localhost"===e||e.endsWith(".test")||e.includes("staging")}}class ye{constructor(e){this.httpClient=e}async calculateQuote(e){const n=await this.httpClient.calculateQuoteIntent(e);return t(),n}}class ve{constructor(e){this.httpClient=e}async calculate(e){const n=await this.httpClient.calculateQuoteIntentV2(e);return t(),n}async reprice(e,n){const r={selection:n},i=await this.httpClient.repriceQuoteIntentV2(e,r);return t(),i}async bind(e,n){const r=await this.httpClient.bindQuoteIntentV2(e,n);return t(),r}}function we(e,t,n){var r,i,o,s,a,l,c,d,u;const h=Date.now(),m=`${e}-${h}`;if(function(e,t,n){try{Promise.resolve().then(function(){return Ih}).then(({captureException:r,addBreadcrumb:i,isSentryInitialized:o})=>{o()&&(i({message:`Error occurred: ${t}`,category:"error",level:"error",data:{errorType:t,customMessage:n}}),r(e,{errorType:t,customMessage:n}))}).catch(()=>{})}catch(e){}}(t,e,n),t&&"object"==typeof t){const f=null!==(o=null!==(r=t.organisation)&&void 0!==r?r:null===(i=t.data)||void 0===i?void 0:i.organisation)&&void 0!==o?o:null===(a=null===(s=t.response)||void 0===s?void 0:s.data)||void 0===a?void 0:a.organisation;if("statusCode"in t||"status"in t)return be(m,e,t.statusCode||t.status||500,t.message||(null===(l=t.data)||void 0===l?void 0:l.message)||"Server error occurred",n,h,f);if("response"in t)return be(m,e,(null===(c=t.response)||void 0===c?void 0:c.status)||500,(null===(u=null===(d=t.response)||void 0===d?void 0:d.data)||void 0===u?void 0:u.message)||t.message||"Network error occurred",n,h,f);if(t.message)return{id:m,type:e,severity:ke(e),title:xe(e),message:n||Se(e),details:t.message,retryable:Ce(e,0),timestamp:h,trackingId:m}}const f="string"==typeof t?t:"An unexpected error occurred";return{id:m,type:e,severity:ke(e),title:xe(e),message:n||f,retryable:Ce(e,0),timestamp:h,trackingId:m}}function be(e,t,n,r,i,o,s){const a=n>=500?"critical":n>=400?"error":"warning",l=Ce(t,n);return{id:e,type:t,severity:a,statusCode:n,title:xe(t,n),message:i||Ne(t,n,r),details:r,retryable:l,timestamp:o,organisation:null!=s?s:void 0}}function xe(e,t){if(t){if(404===t)return"Not Found";if(503===t)return"Under Maintenance";if(t>=500)return"Something Went Wrong";if(t>=400)return"Invalid Request"}switch(e){case"initialization":default:return"Something Went Wrong";case"calculation":return"Calculation Error";case"network":return"Connection Problem";case"validation":return"Please Check Your Details";case"maintenance":return"Under Maintenance"}}function ke(e){switch(e){case"initialization":case"maintenance":return"critical";case"calculation":case"network":default:return"error";case"validation":return"warning"}}function Ne(e,t,n){return"calculation"===e&&(n.toLowerCase().includes("no matching values found")||n.toLowerCase().includes("rating table")||n.toLowerCase().includes("not supported"))?n:n.toLowerCase().includes("no matching values found")?"The entered value is not supported by our calculator. Please try a different amount.":n.toLowerCase().includes("rating table")?"Unable to calculate with the provided information. Please check your entries and try again.":404===t?"initialization"===e?"The requested form could not be found. Please check the URL or contact support.":"The requested resource was not found.":503===t?"We're performing scheduled maintenance. Please check back in a few minutes.":t>=500?"calculation"===e?"We're experiencing technical difficulties with the calculation. Please try again in a moment.":"We're experiencing technical difficulties. Please try again in a moment.":429===t?"Too many requests. Please wait a moment and try again.":t>=400?"There was an issue with your request. Please adjust your details and re-submit.":"An unexpected error occurred. Please try again."}function Se(e){switch(e){case"initialization":return"We're unable to load the application at this time. Please try again.";case"calculation":return"We couldn't complete the calculation. Please check your details and try again.";case"network":return"We're having trouble connecting. Please check your internet connection and try again.";case"validation":return"Please check your details and try again.";case"maintenance":return"We're performing scheduled maintenance. Please check back in a few minutes.";default:return"An unexpected error occurred. Please try again."}}function Ce(e,t){return"validation"!==e&&"maintenance"!==e&&404!==t&&503!==t&&!(t>=400&&t<500&&429!==t)&&("network"===e||"calculation"===e||t>=500&&503!==t||429===t)}function _e(e){return"maintenance"===e.type||503===e.statusCode}function $e(e){return e.trackingId?`If this problem persists, please contact support and reference error ID: ${e.trackingId.slice(0,8).toUpperCase()}`:"critical"===e.severity?"If this problem persists, please contact support with the error details.":"If you continue to experience issues, please contact support."}let Ie=null;function Te(e){Ie=e}function Ee(e,t){var n,r;return{event:t,quote_id:e.id,organisation_slug:null===(n=e.organisation)||void 0===n?void 0:n.slug,organisation_name:null===(r=e.organisation)||void 0===r?void 0:r.name,timestamp:(new Date).toISOString()}}function Pe(e){var t,n;if(!(null==Ie?void 0:Ie.isEnabled()))return;const r={...Ee(e,"quote_started"),quote_status:e.status,total_pages:null===(n=null===(t=e.form_definition)||void 0===t?void 0:t.pages)||void 0===n?void 0:n.length};Ie.push(r)}function ze(e,t,n,r){var i,o;if(!(null==Ie?void 0:Ie.isEnabled()))return;const s=(null===(o=null===(i=e.form_definition)||void 0===i?void 0:i.pages)||void 0===o?void 0:o.length)||0,a=s>0?Math.round(n.length/s*100):0,l={...Ee(e,"quote_form_progress"),current_page:t,total_pages:s,completed_pages:n.length,completion_percentage:a,page_title:r};Ie.push(l)}function De(e,t){if(!(null==Ie?void 0:Ie.isEnabled()))return;const n=t.calculations||[],r=t.payment_options||[],i=n.find(e=>e.id===t.default_excess_id),o=n.map(e=>e.premium_total),s=o.length>0?Math.min(...o):void 0,a=o.length>0?Math.max(...o):void 0,l=r.some(e=>"monthly"===e.amount.frequency),c={...Ee(e,"quote_calculated"),excess_id:null==i?void 0:i.id,excess_amount:null==i?void 0:i.excess_amount,premium_subtotal:null==i?void 0:i.premium_subtotal,premium_total:null==i?void 0:i.premium_total,excess_options_count:n.length,payment_options_count:r.length,has_installments:l,min_premium:s,max_premium:a};Ie.push(c)}function Re(e,t,n,r,i){if(!(null==Ie?void 0:Ie.isEnabled()))return;const o={...Ee(e,"quote_at_checkout"),excess_id:t.id,excess_amount:t.excess_amount,premium_subtotal:t.premium_subtotal,premium_total:t.premium_total,payment_options_count:n,has_installments:r,form_completion:i,fees:t.fees};Ie.push(o)}function Me(e,t){if(!(null==Ie?void 0:Ie.isEnabled()))return;const n=t.referrals||[],r={...Ee(e,"quote_referred"),referral_reason:t.referral_reason,referrals_count:n.length,referral_ids:n.map(e=>e.id)};Ie.push(r)}function Oe(e,t,n,r){if(!(null==Ie?void 0:Ie.isEnabled()))return;const i={...Ee(e,"payment_initiated"),payment_amount:t.amount.dueToday,payment_gateway:t.gateway_id,payment_gateway_name:n,excess_amount:r||0,payment_frequency:t.amount.frequency,amount_due_today:t.amount.dueToday,installments_count:t.amount.numberOfInstallments};Ie.push(i)}function je(e,t,n,r,i,o){if(!(null==Ie?void 0:Ie.isEnabled()))return;const s={...Ee(e,"payment_completed"),transaction_id:t,payment_amount:n,payment_gateway:r,premium_total:i||n,excess_amount:o||0};Ie.push(s)}function We(e,t,n,r,i,o){if(!(null==Ie?void 0:Ie.isEnabled()))return;const s={...Ee(e,"payment_failed"),transaction_id:t,payment_amount:n,payment_gateway:r,payment_status:i,failure_reason:o};Ie.push(s)}class Ae{constructor(e,t,n,r={}){this.quoteIntent=e,this.httpClient=t,this.subscribers=new Set,this.pendingChanges={},this.isCalculating=!1,this.isRepricing=!1,this.isSaving=!1,this.selectedExcessId=null,this.selectedPaymentOption=null,this.selectionV2=null,this.validationErrors=[],this.serverValidationErrors=[],this.generalErrors=[],this.lastCalculationFailed=!1,this.config={autoSaveInterval:r.autoSaveInterval||1e3,autoSave:!1!==r.autoSave,maxRetryAttempts:r.maxRetryAttempts||3,retryDelay:r.retryDelay||2e3},this.formData=this.createEmptyFormData(),this.quoteIntentStore=n,this.lastCalculationFailed=this.getPersistedCalculationFailureState();const i=e.form_definition;this.persistenceManager=new pe(t,i,n),this.autoSaveManager=new ne(this.config,this.saveFormData.bind(this)),this.navigationManager=new ge(i,this.getFormProgress.bind(this),this.updateFormDataInternal.bind(this),this.saveFormData.bind(this)),this.calculationManager=new ye(t),this.calculationManagerV2=new ve(t),this.config.autoSave&&this.autoSaveManager.start()}subscribe(e){return this.subscribers.add(e),()=>this.subscribers.delete(e)}async loadFormProgress(){var e,t;return this.formData=await this.persistenceManager.load(this.quoteIntent.id,this.quoteIntent.url),this.lastCalculationFailed=!0===(null===(t=null===(e=this.formData.page_data)||void 0===e?void 0:e.Y)||void 0===t?void 0:t.lastCalculationFailed),this.config.autoSave=!1,this.autoSaveManager.stop(),this.notify(),this.formData}updatePageData(e,t){this.pendingChanges[e]={...this.pendingChanges[e],...t},this.formData.page_data={...this.formData.page_data,[e]:{...this.formData.page_data[e],...t}},this.formData.last_updated=(new Date).toISOString(),this.notify()}updateFieldValue(e,t,n){if(this.autoSaveManager.startTyping(),"string"==typeof n){const r=this.getFormDefinition().pages.find(t=>t.id===e),i=null==r?void 0:r.fields.find(e=>(e.code||e.id)===t);i&&"email"===i.type&&(n=n.trim())}this.pendingChanges[e]||(this.pendingChanges[e]={}),this.pendingChanges[e][t]=n,this.formData.page_data[e]||(this.formData.page_data[e]={}),this.formData.page_data[e][t]=n,this.formData.last_updated=(new Date).toISOString(),this.validateField(e,t,n),this.notify()}updateFieldAnswer(e,n,r,i){if(this.autoSaveManager.startTyping(),this.formData.page_data[e]||(this.formData.page_data[e]={}),this.formData.page_data[e].U||(this.formData.page_data[e].U={}),this.formData.page_data[e].U[n]=r,i){const n=this.getRatingFactorCodeById(i);n&&(this.formData.page_data[e][n]=r,t())}this.formData.last_updated=(new Date).toISOString(),this.notify()}restoreFormProgress(e){var n;if(this.isUserTyping())return;const r=e.completed_pages||[],i=(null===(n=this.quoteIntent.form_definition)||void 0===n?void 0:n.pages.length)||0;let o=0;for(let e=0;e<i;e++)if(!r.includes(e)){o=e;break}r.length===i&&i>0&&(o=i-1),t(e.current_page),this.formData={...e,current_page:o},this.notify()}restoreCalculationResult(e){t(),t(e.outcome_type),this.calculationResult=e,e.default_excess_id&&(this.selectedExcessId=e.default_excess_id),t(),this.notify(),t()}getRatingFactorCodeById(e){const n=this.getFormDefinition();for(const t of n.pages)for(const n of t.fields){if(n.rating_factor_id===e)return n.code||n.id;if(n.rating_factor_mappings)for(const t of n.rating_factor_mappings)if(t.rating_factor_id===e)return t.rating_factor_code||n.code||n.id}return t(),null}processRatingFactorMappings(e){const t=this.getFormDefinition(),n={};return t.pages.forEach(t=>{const r=e.page_data[t.id]||{};t.fields.forEach(e=>{const t=r[e.code||e.id];null!=t&&""!==t&&e.rating_factor_mappings&&e.rating_factor_mappings.length>0&&e.rating_factor_mappings.forEach(r=>{if("derived"===r.type&&r.derivation_rule){const i=this.applyDerivationRule(t,r.derivation_rule,r.metadata),o=r.rating_factor_code||`${e.code||e.id}_${r.derivation_rule}`;n[o]=i}})})}),n}applyDerivationRule(e,n,r){switch(t(JSON.stringify(r)),n){case"calculate_age":return this.calculateAge(e,r);case"invert_yes_no":return this.invertYesNo(e);default:return null}}invertYesNo(e){return"Yes"===e?"No":"Yes"}calculateAge(e,t){try{const n=new Date(e),r="current_date"===(null==t?void 0:t.reference_date)?new Date:new Date((null==t?void 0:t.reference_date)||Date.now());let i=r.getFullYear()-n.getFullYear();const o=r.getMonth()-n.getMonth();return(o<0||0===o&&r.getDate()<n.getDate())&&i--,i}catch(e){return null}}async saveFormData(e=!1,n="auto-save"){if(!e&&0===Object.keys(this.pendingChanges).length)return;this.isSaving=!0,this.notify();const r={...this.formData},i=this.processRatingFactorMappings(this.formData);t();const o={...this.formData,page_data:{...this.formData.page_data,V:i}};try{const t=await this.persistenceManager.save(this.quoteIntent.id,this.quoteIntent.url,o,{force:e,saveType:n});if(!t.success){if(t.validationErrors){this.setServerValidationErrors(t.validationErrors),this.notify();const e=new Error("Validation failed");throw e.isValidationError=!0,e}throw new Error("Failed to save form data")}{this.pendingChanges={},this.autoSaveManager.onSaveSuccess(),this.clearServerValidationErrors(),this.clearGeneralErrors();const e=this.formData;r.current_page===e.current_page?this.formData=o:this.formData={...o,current_page:e.current_page,completed_pages:e.completed_pages,last_updated:e.last_updated},this.notify()}}catch(e){if(e&&"object"==typeof e&&"type"in e&&"message"in e){const t=e;if(!t.validationErrors||0===Object.keys(t.validationErrors).length){const e=we("validation",t);this.addGeneralError(e),this.notify()}}throw e}finally{this.isSaving=!1,this.notify()}}canNavigateToPage(e){return this.navigationManager.canNavigateToPage(e)}navigateToPage(e){return this.navigationManager.navigateToPage(e)}async navigateToNextPage(){var e,t;const n=await this.navigationManager.navigateToNext();if(n){const n=this.formData.current_page,r=this.formData.completed_pages||[],i=null===(t=null===(e=this.quoteIntent.form_definition)||void 0===e?void 0:e.pages[n-1])||void 0===t?void 0:t.title;ze(this.quoteIntent,n,r,i)}return n}navigateToPreviousPage(){return this.navigationManager.navigateToPrevious()}getPageCompletionStatus(){return this.navigationManager.getCompletionStatus()}getFormProgress(){return this.formData}getFormDefinition(){return this.quoteIntent.form_definition}getTotalPages(){return this.navigationManager.getTotalPages()}getCurrentPageIndex(){return this.formData.current_page}isAutoSavePaused(){return this.autoSaveManager.status.isPaused}isUserTyping(){return this.autoSaveManager.status.isUserTyping}getIsCalculating(){return this.isCalculating}getIsRepricing(){return this.isRepricing}getIsSaving(){return this.isSaving}hasCalculationResponse(){return Boolean(this.calculationResult)}getCalculationResult(){return this.calculationResult}getConsecutiveFailures(){return this.autoSaveManager.status.consecutiveFailures}getSelectedExcessId(){return this.selectedExcessId}setSelectedExcessId(e){this.selectedExcessId=e,this.selectedPaymentOption=null,this.notify()}getSelectedPaymentOption(){return this.selectedPaymentOption}setSelectedPaymentOption(e){this.selectedPaymentOption=e,this.notify()}hasPendingChanges(){return Object.keys(this.pendingChanges).length>0}validateCurrentPage(){const e=this.getCurrentPageIndex(),t=this.getFormDefinition().pages[e];if(!t)return[];const n=me(t,this.getAllFormDataFlattened());return this.validationErrors=n.errors,this.notify(),n.errors}validateField(e,t,n){const r=this.getFormDefinition().pages.find(t=>t.id===e),i=null==r?void 0:r.fields.find(e=>(e.code||e.id)===t);if(!i)return[];const o=he(i,n);return this.validationErrors=this.validationErrors.filter(e=>e.field!==t),this.validationErrors.push(...o),this.notify(),o}getValidationErrors(){return[...this.validationErrors,...this.serverValidationErrors]}getFieldErrors(e){return this.getValidationErrors().filter(t=>t.field===e)}hasErrors(){return this.validationErrors.length>0||this.serverValidationErrors.length>0}hasFieldErrors(e){return this.getFieldErrors(e).length>0}clearValidationErrors(){this.validationErrors=[],this.notify()}setServerValidationErrors(e){this.serverValidationErrors=e,this.notify()}clearServerValidationErrors(){this.serverValidationErrors=[],this.notify()}getGeneralErrors(){const e=this.generalErrors.filter(e=>!e.dismissed);return e.length>0?[e[e.length-1]]:[]}addGeneralError(e){this.generalErrors.push(e),this.notify()}dismissGeneralError(e){const t=this.generalErrors.find(t=>t.id===e);t&&(t.dismissed=!0,this.notify())}clearGeneralErrors(){this.generalErrors=[],this.notify()}hasGeneralErrors(){return this.getGeneralErrors().length>0}hasLastCalculationFailed(){return this.lastCalculationFailed}dispose(){this.autoSaveManager.stop(),Object.keys(this.pendingChanges).length>0&&!this.isAutoSavePaused()&&this.saveFormData(!0).catch(console.error),this.subscribers.clear()}async filterHiddenFieldsAndSave(){const e=this.getFormDefinition(),t={...this.formData},{checkSimpleConditions:n}=await Promise.resolve().then(function(){return ue}),r=this.getAllFormDataFlattened();e.pages.forEach(e=>{const i=this.formData.page_data[e.id]||{},o={};Object.keys(i).forEach(e=>{e.startsWith("__")&&e.endsWith("__")&&(o[e]=i[e])}),e.fields.forEach(e=>{const t=e.code||e.id,s=i[t];let a=!0;if(e.visibility){const t=n(r,{condition_type:e.visibility.condition_type,conditions:e.visibility.conditions});a="show"===e.visibility.action?t.matched:!t.matched}a&&void 0!==s&&(o[t]=s)}),t.page_data[e.id]=o});const i=this.processRatingFactorMappings(t),o={...t,page_data:{...t.page_data,V:i}};await this.persistenceManager.save(this.quoteIntent.id,this.quoteIntent.url,o,{force:!0,saveType:"full"})}async calculateQuote(){t();const e=this.getFormDefinition(),n=[],r=this.getAllFormDataFlattened();for(const i of e.pages){const e=me(i,r);t(i.title,e.errors.length>0&&e.errors),n.push(...e.errors)}if(n.length>0)throw t(),this.validationErrors=n,this.notify(),new Error("Form validation failed");t(),await this.filterHiddenFieldsAndSave();try{if(this.isCalculating=!0,this.notify(),2===this.quoteIntent.calculator_version&&this.quoteIntent.calculate_url_v2){const e=await this.calculationManagerV2.calculate(this.quoteIntent.calculate_url_v2);if("referral"===e.outcome_type){this.calculationResultV2=void 0,this.selectionV2=null,this.selectedExcessId=null;const t=this.buildV1CompatResponseFromV2(e);return this.calculationResult=t,this.lastCalculationFailed=!1,this.persistCalculationFailureState(),Me(this.quoteIntent,t),t}this.calculationResultV2=e,this.selectionV2=e.selection;const t=this.buildV1CompatResponseFromV2(e);this.calculationResult=t,this.selectedExcessId=e.selection.excess_id,this.lastCalculationFailed=!1,this.persistCalculationFailureState();const n=this.generalErrors.filter(e=>"calculation"===e.type);return n.forEach(e=>this.dismissGeneralError(e.id)),"calculation"===t.outcome_type?De(this.quoteIntent,t):"referral"===t.outcome_type&&Me(this.quoteIntent,t),t}const e=await this.calculationManager.calculateQuote(this.quoteIntent.calculate_url);this.calculationResult=e,this.selectedExcessId=e.default_excess_id||null,this.lastCalculationFailed=!1,this.persistCalculationFailureState();const t=this.generalErrors.filter(e=>"calculation"===e.type);return t.forEach(e=>this.dismissGeneralError(e.id)),"calculation"===e.outcome_type?De(this.quoteIntent,e):"referral"===e.outcome_type&&Me(this.quoteIntent,e),e}catch(e){this.lastCalculationFailed=!0,this.persistCalculationFailureState();const t={outcome_type:"referral",referral_reason:"Your quote requires further review.",quote_intent:this.quoteIntent};return this.calculationResult=t,t}finally{this.isCalculating=!1,this.notify()}}async clearCalculationResults(){t();try{await this.httpClient.deleteCalculations(this.quoteIntent.delete_calculations_url),this.calculationResult=void 0,this.calculationResultV2=void 0,this.selectionV2=null,this.selectedExcessId=null,this.selectedPaymentOption=null,this.notify(),t()}catch(e){throw t(),e}}getCalculationResultV2(){return this.calculationResultV2}getSelectionV2(){return this.selectionV2}setV2Selection(e){var t,n,r,i;if(!this.calculationResultV2||!this.selectionV2)return;const o={cover_type_id:null!==(t=e.cover_type_id)&&void 0!==t?t:this.selectionV2.cover_type_id,excess_id:null!==(n=e.excess_id)&&void 0!==n?n:this.selectionV2.excess_id,coverage_option_ids:null!==(r=e.coverage_option_ids)&&void 0!==r?r:this.selectionV2.coverage_option_ids};if(e.cover_type_id&&e.cover_type_id!==this.selectionV2.cover_type_id){const e=this.calculationResultV2.variants.filter(e=>e.cover_type_id===o.cover_type_id),t=e.some(e=>e.excess_id===o.excess_id);if(!t){const t=null!==(i=e.find(e=>e.excess_id===this.calculationResultV2.default_excess_id))&&void 0!==i?i:e[0];t&&(o.excess_id=t.excess_id)}}this.selectionV2=o,this.selectedExcessId=o.excess_id,this.calculationResult=this.buildV1CompatResponseFromV2(this.calculationResultV2),this.notify()}async toggleV2CoverageOption(e){if(!this.calculationResultV2||!this.selectionV2||!this.quoteIntent.reprice_url_v2)return;const t=this.calculationResultV2.policy_coverage_options.find(t=>t.id===e);if(!t)return;const n=this.selectionV2.coverage_option_ids,r=n.includes(e)?n.filter(t=>t!==e):[...n,e],i={...this.selectionV2,coverage_option_ids:r};try{this.isRepricing=!0,this.notify();const e=await this.calculationManagerV2.reprice(this.quoteIntent.reprice_url_v2,i);this.calculationResultV2={...this.calculationResultV2,variants:e.variants,policy_coverage_options:e.policy_coverage_options},this.selectionV2=e.selection,this.calculationResult=this.buildV1CompatResponseFromV2(this.calculationResultV2)}catch(e){}finally{this.isRepricing=!1,this.notify()}}getV2DisplayedTotal(){if(!this.calculationResultV2||!this.selectionV2)return 0;const e=this.calculationResultV2.variants.find(e=>e.cover_type_id===this.selectionV2.cover_type_id&&e.excess_id===this.selectionV2.excess_id);return e?Math.round(100*e.pricing.total_payable)/100:0}async bindV2(e){if(!this.quoteIntent.bind_url_v2||!this.selectionV2)throw new Error("v2 bind unavailable — missing bind URL or selection");const t=this.getV2DisplayedTotal();return this.calculationManagerV2.bind(this.quoteIntent.bind_url_v2,{selection:this.selectionV2,client_claimed_total:t,email:e})}buildV1CompatResponseFromV2(e){var t;const n=null!==(t=this.selectionV2)&&void 0!==t?t:e.selection,r=e.variants.filter(e=>e.cover_type_id===n.cover_type_id),i=r.map(t=>{var n;const r=e.excess_options.find(e=>e.id===t.excess_id);return{id:t.excess_id,calculation_id:e.id,excess_amount:null!==(n=null==r?void 0:r.excess_amount)&&void 0!==n?n:0,excess_label:null==r?void 0:r.excess_label,description:void 0,premium_base:t.pricing.subtotal-t.pricing.fees,premium_subtotal:t.pricing.subtotal,premium_total:t.pricing.total_payable,fees:[]}});return{quote_intent:e.quote_intent,product_name:e.product_name,default_excess_id:e.default_excess_id,default_coverage_options:n.coverage_option_ids,outcome_type:e.outcome_type,referral_reason:e.referral_reason,calculations:i,referrals:e.referrals.map(e=>({id:e.id,reason:e.reason})),clauses:e.clauses,payment_options:[],payment_gateways:e.payment_gateways}}notify(){this.subscribers.forEach(e=>e(this))}getAllFormDataFlattened(){const e={};return Object.values(this.formData.page_data).forEach(t=>{const{U:n,...r}=t;Object.assign(e,r),n&&Object.keys(n).length>0&&(e.U||(e.U={}),Object.assign(e.U,n))}),e}updateFormDataInternal(e){if(this.isUserTyping()&&e.page_data){const t={...e};delete t.page_data,this.formData={...this.formData,...t}}else this.formData={...this.formData,...e};this.notify()}createEmptyFormData(){return{current_page:0,completed_pages:[],page_data:{},last_updated:(new Date).toISOString()}}getPersistedCalculationFailureState(){var e,t,n;return!!(null===(n=null===(t=null===(e=this.quoteIntent.form_data)||void 0===e?void 0:e.page_data)||void 0===t?void 0:t.Y)||void 0===n?void 0:n.lastCalculationFailed)&&!0===this.quoteIntent.form_data.page_data.Y.lastCalculationFailed}persistCalculationFailureState(){this.formData.page_data.Y||(this.formData.page_data.Y={}),this.formData.page_data.Y.lastCalculationFailed=this.lastCalculationFailed,this.formData.last_updated=(new Date).toISOString(),this.saveFormData(!0,"auto-save").catch(()=>{})}reset(){localStorage.clear();const e=new URL(window.location.href);e.searchParams.delete("url"),window.history.replaceState({},document.title,e.toString()),window.location.reload()}getQuoteIntent(){return this.quoteIntent}updateQuoteIntent(e){if(this.quoteIntentStore){const t=this.quoteIntentStore.updateQuoteIntent(this.quoteIntent.org_id,e);t&&(this.quoteIntent=t,this.notify())}}clearStoredQuoteIntent(){this.quoteIntentStore&&this.quoteIntentStore.clearQuoteIntent(this.quoteIntent.org_id)}async initiatePayment(e){var n,r,i;const o=((null===(n=this.calculationResult)||void 0===n?void 0:n.payment_gateways)||[]).find(t=>t.id===e.gatewayId);if(!o)throw new Error("Selected payment gateway not found in calculation response");t();const s=((null===(r=this.calculationResult)||void 0===r?void 0:r.payment_options)||[]).find(t=>t.gateway_id===e.gatewayId&&t.calculation_id===e.calculationId),a=((null===(i=this.calculationResult)||void 0===i?void 0:i.calculations)||[]).find(t=>t.id===e.calculationId);try{const t=await this.httpClient.initiatePayment(e,o);return s&&Oe(this.quoteIntent,s,o.name,null==a?void 0:a.excess_amount),this.notify(),t}catch(e){throw e}}async getPaymentStatus(e){var t;const n=this.getSelectedPaymentOption();if(!n)throw new Error("No payment option selected");const r=((null===(t=this.calculationResult)||void 0===t?void 0:t.payment_gateways)||[]).find(e=>e.id===n.gateway_id);if(!r)throw new Error("Selected payment gateway not found in calculation response");try{const t=await this.httpClient.getPaymentStatus(e,r);return this.notify(),t}catch(e){throw e}}startPaymentStatusPolling(e,t,n=30){let r=0,i=!1;const o=async()=>{if(!(i||r>=n))try{const s=await this.getPaymentStatus(e);t(s),"pending"!==s.status&&"initiated"!==s.status||(r++,r<n&&!i&&setTimeout(o,1e4))}catch(e){r++,r<n&&!i&&setTimeout(o,1e4)}};return o(),()=>{i=!0}}}class Le{constructor(e,t){this.httpClient=e,this.response=t}async get(){return await this.httpClient.getQuoteIntent(this.response.url)}async update(e){var t;const n=this.response.product.form_definition,r={...this.response.quote_intent.form_data};r.page_data||(r.page_data={});for(const i of n.pages){const n=r.page_data[i.id]||{};for(const r of i.fields){const i=r.code||r.id;if(e.hasOwnProperty(i)?n[i]=e[i]:("text"===r.type&&(n[i]="sample"),"number"===r.type&&(n[i]=1),"checkbox"===r.type&&(n[i]=!0)),"boolean"===r.type&&(null===(t=r.boolean_config)||void 0===t?void 0:t.enable_details_textbox)){const e="yes"===r.boolean_config.show_details_on,t=n[i];(t===e||t===String(e))&&(n.U||(n.U={}),n.U[i]=`Sample details for: ${i}`)}}r.page_data[i.id]=n}const i={current_page_index:0,save_type:"full",page_data:{...r.page_data}};return await this.httpClient.updateQuoteIntent(this.response.url,i)}}class Be{constructor(e){this.httpClient=e}async createQuoteIntent(e,t){const n=await this.httpClient.createQuoteIntent({code:e,...t});return new Le(this.httpClient,n)}}var qe=0;function Fe(e,t,n,i,o,s){t||(t={});var a,l,c=t;if("ref"in c)for(l in c={},t)"ref"==l?a=t[l]:c[l]=t[l];var d={type:e,props:c,key:n,ref:a,i:null,m:null,p:0,v:null,k:null,constructor:void 0,N:--qe,C:-1,_:0,J:o,K:s};if("function"==typeof e&&(a=e.defaultProps))for(l in a)void 0===c[l]&&(c[l]=a[l]);return r.vnode&&r.vnode(d),d}var He,Ue,Ye,Ze,Ge=0,Ve=[],Qe=r,Je=Qe.p,Ke=Qe.O,Xe=Qe.diffed,et=Qe.k,tt=Qe.unmount,nt=Qe.m;function rt(e,t){Qe.W&&Qe.W(Ue,e,Ge||t),Ge=0;var n=Ue.X||(Ue.X={m:[],W:[]});return e>=n.m.length&&n.m.push({}),n.m[e]}function it(e){return Ge=1,function(e,t){var n=rt(He++,2);if(n.t=e,!n.k&&(n.m=[pt(void 0,t),function(e){var t=n.ee?n.ee[0]:n.m[0],r=n.t(t,e);t!==r&&(n.ee=[r,n.m[1]],n.k.setState({}))}],n.k=Ue,!Ue.te)){var r=function(e,t,r){if(!n.k.X)return!0;var o=n.k.X.m.filter(function(e){return e.k});if(o.every(function(e){return!e.ee}))return!i||i.call(this,e,t,r);var s=n.k.props!==e;return o.some(function(e){if(e.ee){var t=e.m[0];e.m=e.ee,e.ee=void 0,t!==e.m[0]&&(s=!0)}}),i&&i.call(this,e,t,r)||s};Ue.te=!0;var i=Ue.shouldComponentUpdate,o=Ue.componentWillUpdate;Ue.componentWillUpdate=function(e,t,n){if(this.v){var s=i;i=void 0,r(e,t,n),i=s}o&&o.call(this,e,t,n)},Ue.shouldComponentUpdate=r}return n.ee||n.m}(pt,e)}function ot(e,t){var n=rt(He++,3);!Qe.L&&ft(n.X,t)&&(n.m=e,n.u=t,Ue.X.W.push(n))}function st(e){return Ge=5,at(function(){return{current:e}},[])}function at(e,t){var n=rt(He++,7);return ft(n.X,t)&&(n.m=e(),n.X=t,n.W=e),n.m}function lt(e,t){return Ge=8,at(function(){return e},t)}function ct(){for(var e;e=Ve.shift();){var t=e.X;if(e.I&&t)try{t.W.some(ht),t.W.some(mt),t.W=[]}catch(n){t.W=[],Qe.v(n,e.N)}}}Qe.p=function(e){Ue=null,Je&&Je(e)},Qe.m=function(e,t){e&&t.i&&t.i.B&&(e.B=t.i.B),nt&&nt(e,t)},Qe.O=function(e){Ke&&Ke(e),He=0;var t=(Ue=e.k).X;t&&(Ye===Ue?(t.W=[],Ue.W=[],t.m.some(function(e){e.ee&&(e.m=e.ee),e.u=e.ee=void 0})):(t.W.some(ht),t.W.some(mt),t.W=[],He=0)),Ye=Ue},Qe.diffed=function(e){Xe&&Xe(e);var t=e.k;t&&t.X&&(t.X.W.length&&(1!==Ve.push(t)&&Ze===Qe.requestAnimationFrame||((Ze=Qe.requestAnimationFrame)||ut)(ct)),t.X.m.some(function(e){e.u&&(e.X=e.u),e.u=void 0})),Ye=Ue=null},Qe.k=function(e,t){t.some(function(e){try{e.W.some(ht),e.W=e.W.filter(function(e){return!e.m||mt(e)})}catch(n){t.some(function(e){e.W&&(e.W=[])}),t=[],Qe.v(n,e.N)}}),et&&et(e,t)},Qe.unmount=function(e){tt&&tt(e);var t,n=e.k;n&&n.X&&(n.X.m.some(function(e){try{ht(e)}catch(e){t=e}}),n.X=void 0,t&&Qe.v(t,n.N))};var dt="function"==typeof requestAnimationFrame;function ut(e){var t,n=function(){clearTimeout(r),dt&&cancelAnimationFrame(t),setTimeout(e)},r=setTimeout(n,35);dt&&(t=requestAnimationFrame(n))}function ht(e){var t=Ue,n=e.k;"function"==typeof n&&(e.k=void 0,n()),Ue=t}function mt(e){var t=Ue;e.k=e.m(),Ue=t}function ft(e,t){return!e||e.length!==t.length||t.some(function(t,n){return t!==e[n]})}function pt(e,t){return"function"==typeof t?t(e):t}const gt="insure-os";let yt=!1;const vt=new Map,wt={[`--${gt}-radius`]:"0.75rem",[`--${gt}-radius-sm`]:"0.5rem",[`--${gt}-radius-lg`]:"1rem",[`--${gt}-background`]:"oklch(0.955 0 0)",[`--${gt}-foreground`]:"oklch(0.145 0 0)",[`--${gt}-card`]:"oklch(1 0 0)",[`--${gt}-card-foreground`]:"oklch(0.145 0 0)",[`--${gt}-popover`]:"oklch(1 0 0)",[`--${gt}-popover-foreground`]:"oklch(0.145 0 0)",[`--${gt}-primary`]:"oklch(0.205 0 0)",[`--${gt}-primary-foreground`]:"oklch(0.985 0 0)",[`--${gt}-secondary`]:"oklch(0.97 0 0)",[`--${gt}-secondary-foreground`]:"oklch(0.205 0 0)",[`--${gt}-muted`]:"oklch(0.97 0 0)",[`--${gt}-muted-foreground`]:"oklch(0.556 0 0)",[`--${gt}-accent`]:"oklch(0.97 0 0)",[`--${gt}-accent-foreground`]:"oklch(0.205 0 0)",[`--${gt}-destructive`]:"oklch(0.577 0.245 27.325)",[`--${gt}-border`]:"oklch(0.9 0 0)",[`--${gt}-input`]:"oklch(0.9 0 0)",[`--${gt}-ring`]:"oklch(0.708 0 0)",[`--${gt}-font-family`]:"system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif",[`--${gt}-font-size-large`]:"18px",[`--${gt}-font-size-small`]:"14px",[`--${gt}-font-size`]:"16px",[`--${gt}-border-width`]:"1px",[`--${gt}-transition-duration`]:"200ms",[`--${gt}-transition-timing-function`]:"cubic-bezier(0.4, 0, 0.2, 1)",[`--${gt}-shadow-sm`]:"0 1px 2px 0 rgba(0, 0, 0, 0.05)",[`--${gt}-shadow`]:"0 1px 3px 0 rgba(0, 0, 0, 0.1), 0 1px 2px -1px rgba(0, 0, 0, 0.1)",[`--${gt}-shadow-md`]:"0 4px 6px -1px rgba(0, 0, 0, 0.1), 0 2px 4px -2px rgba(0, 0, 0, 0.1)",[`--${gt}-shadow-lg`]:"0 10px 15px -3px rgba(0, 0, 0, 0.1), 0 4px 6px -4px rgba(0, 0, 0, 0.1)",[`--${gt}-spacing-sm`]:"0.75rem",[`--${gt}-spacing`]:"1rem",[`--${gt}-spacing-md`]:"1.5rem",[`--${gt}-spacing-lg`]:"2rem",[`--${gt}-spacing-xl`]:"3rem"},bt={colors:{background:`var(--${gt}-background)`,foreground:`var(--${gt}-foreground)`,card:`var(--${gt}-card)`,popover:`var(--${gt}-popover)`,popoverForeground:`var(--${gt}-popover-foreground)`,primary:`var(--${gt}-primary)`,primaryForeground:`var(--${gt}-primary-foreground)`,secondary:`var(--${gt}-secondary)`,muted:`var(--${gt}-muted)`,mutedForeground:`var(--${gt}-muted-foreground)`,accent:`var(--${gt}-accent)`,accentForeground:`var(--${gt}-accent-foreground)`,destructive:`var(--${gt}-destructive)`,border:`var(--${gt}-border)`,input:`var(--${gt}-input)`},fontSize:{small:`var(--${gt}-font-size-small)`,default:`var(--${gt}-font-size)`,large:`var(--${gt}-font-size-large)`},radius:{small:`var(--${gt}-radius-sm)`,default:`var(--${gt}-radius)`,large:`var(--${gt}-radius-lg)`},shadow:{sm:`var(--${gt}-shadow-sm)`,md:`var(--${gt}-shadow-md)`},spacing:{sm:`var(--${gt}-spacing-sm)`,default:`var(--${gt}-spacing)`,md:`var(--${gt}-spacing-md)`,lg:`var(--${gt}-spacing-lg)`,xl:`var(--${gt}-spacing-xl)`},fontFamily:`var(--${gt}-font-family)`,borderWidth:`var(--${gt}-border-width)`,transition:`var(--${gt}-transition-duration) var(--${gt}-transition-timing-function)`},xt=new Set;let kt=!1;function Nt(){kt||(St(`\n/* InsureOS Style Isolation Reset */\n.${gt}-root {\n all: revert;\n /* Re-apply our base styles after reset */\n font-family: var(--${gt}-font-family);\n background-color: var(--${gt}-background);\n color: var(--${gt}-foreground);\n font-size: var(--${gt}-font-size);\n line-height: 1.5;\n -webkit-font-smoothing: antialiased;\n -moz-osx-font-smoothing: grayscale;\n}\n\n.${gt}-root *,\n.${gt}-root *::before,\n.${gt}-root *::after {\n box-sizing: border-box;\n}\n\n.${gt}-root img,\n.${gt}-root picture,\n.${gt}-root video,\n.${gt}-root canvas,\n.${gt}-root svg {\n display: block;\n max-width: 100%;\n}\n\n.${gt}-root button,\n.${gt}-root input,\n.${gt}-root select,\n.${gt}-root textarea {\n font: inherit;\n color: inherit;\n background: none;\n border: none;\n padding: 0;\n margin: 0;\n}\n\n.${gt}-root button {\n cursor: pointer;\n}\n\n.${gt}-root a {\n color: inherit;\n text-decoration: inherit;\n}\n\n.${gt}-root h1,\n.${gt}-root h2,\n.${gt}-root h3,\n.${gt}-root h4,\n.${gt}-root h5,\n.${gt}-root h6 {\n font-size: inherit;\n font-weight: inherit;\n margin: 0;\n}\n\n.${gt}-root p,\n.${gt}-root ul,\n.${gt}-root ol,\n.${gt}-root blockquote,\n.${gt}-root figure {\n margin: 0;\n padding: 0;\n}\n\n.${gt}-root ul,\n.${gt}-root ol {\n list-style: none;\n}\n\n.${gt}-root table {\n border-collapse: collapse;\n border-spacing: 0;\n}\n\n.${gt}-root hr {\n margin: 0;\n border: none;\n border-top: 1px solid var(--${gt}-border);\n height: 0;\n}\n`),kt=!0,t())}function St(e){if(!document.getElementById(`${gt}-styles`)){const e=document.createElement("style");e.id=`${gt}-styles`,document.head.appendChild(e)}document.getElementById(`${gt}-styles`).textContent+=e+"\n"}function Ct(e){return Object.entries(e).map(([e,t])=>{return`${n=e,n.replace(/([a-z0-9]|(?=[A-Z]))([A-Z])/g,"$1-$2").toLowerCase()}: ${t}`;var n}).join("; ")}function _t(){yt||(St(`:root {\n${Object.entries(wt).map(([e,t])=>` ${e}: ${t};`).join("\n")}\n}`),yt=!0)}const $t={name:e=>`${gt}-${e}`,selector(e){return`.${this.name(e)}`},create(e,t,n){_t();const r=Ct(t),i=function(e){let t=0;for(let n=0;n<e.length;n++)t=(t<<5)-t+e.charCodeAt(n),t&=t;return Math.abs(t).toString(36)}(`${e}:${r}:${n?JSON.stringify(n):""}`),o=`${e}-${i}`,s=vt.get(o);if(s)return s.fullClassName;let a=e;const l=this.name(a);return xt.has(a)||(St(`.${l} { ${r} }`),xt.add(a)),vt.set(o,{contentHash:i,fullClassName:l}),n&&Object.entries(n).forEach(([e,t])=>{this.media(e,{[a]:t})}),l},keyframes(e,t){const n=`${gt}-${e}`;return xt.has(`keyframes-${e}`)||(St(`@keyframes ${n} {\n${Object.entries(t).map(([e,t])=>` ${e} { ${Ct(t)} }`).join("\n")}\n}`),xt.add(`keyframes-${e}`)),n},media(e,t){const n=`media-${e}`;St(`@media ${e} {\n${Object.entries(t).map(([e,t])=>` .${gt}-${e} { ${Ct(t)} }`).join("\n")}\n}`),xt.add(n)},pseudoElement(e,t,n){const r=`${gt}-${e}`,i=`${e}-${t}`;return xt.has(i)||(St(`.${r}${t} { ${Ct(n)} }`),xt.add(i)),r}};var It=Object.freeze({__proto__:null,baseVariables:wt,injectIsolationStyles:Nt,styles:$t,theme:bt,updateBaseVariables:function(e){t(),Object.assign(wt,e);const n=document.getElementById(`${gt}-styles`);if(n){const e=n.textContent||"",r=`:root {\n${Object.entries(wt).map(([e,t])=>` ${e}: ${t};`).join("\n")}\n}`,i=e.includes(":root {")?e.replace(/:root\s*\{[^}]*\}/g,r):r+"\n"+e;n.textContent=i,t()}else _t()}});function Tt(e){return e&&e.ne&&{}.hasOwnProperty.call(e,"default")?e.default:e}var Et,Pt={exports:{}};function zt(){return Et||(Et=1,function(e){!function(){var t={}.hasOwnProperty;function n(){for(var e="",t=0;t<arguments.length;t++){var n=arguments[t];n&&(e=i(e,r(n)))}return e}function r(e){if("string"==typeof e||"number"==typeof e)return e;if("object"!=typeof e)return"";if(Array.isArray(e))return n.apply(null,e);if(e.toString!=={}.toString&&!e.toString.toString().includes("[native code]"))return e.toString();var r="";for(var o in e)t.call(e,o)&&e[o]&&(r=i(r,o));return r}function i(e,t){return t?e?e+" "+t:e+t:e}e.exports?(n.default=n,e.exports=n):window.classNames=n}()}(Pt)),Pt.exports}var Dt=Tt(zt());function Rt({size:e="small"}){const t=$t.create("spinner-small",{width:"16px",height:"16px"}),n=$t.create("spinner-large",{width:"64px",height:"64px"}),r="small"===e?t:n;return $t.keyframes("spin",{"0%":{transform:"rotate(0deg)"},"100%":{transform:"rotate(360deg)"}}),Fe("div",{className:$t.create("loading-spinner",{display:"flex",justifyContent:"center",alignItems:"center",animation:"insure-os-spin 1s linear infinite"}),children:Fe("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor","stroke-width":"2","stroke-linecap":"round","stroke-linejoin":"round",className:Dt(r),children:Fe("path",{d:"M21 12a9 9 0 1 1-6.219-8.56"})})})}function Mt({className:e,children:t,size:n="md"}){const r={sm:bt.spacing.sm,md:bt.spacing.md,lg:bt.spacing.lg,xl:bt.spacing.xl},i=$t.create(`padding-${n}`,{padding:r[n]},{"(max-width: 950px)":{padding:"xl"===n?bt.spacing.lg:"lg"===n?bt.spacing.md:r[n]},"(max-width: 480px)":{padding:bt.spacing.sm}});return Fe("div",{className:Dt(i,e),children:t})}const Ot=function(){function e(t){var n,r;return this.getChildContext||(n=new Set,(r={})[e.k]=this,this.getChildContext=function(){return r},this.componentWillUnmount=function(){n=null},this.shouldComponentUpdate=function(e){this.props.value!=e.value&&n.forEach(function(e){e.v=!0,P(e)})},this.sub=function(e){n.add(e);var t=e.componentWillUnmount;e.componentWillUnmount=function(){n&&n.delete(e),t&&t.call(e)}}),t.children}return e.k="__cC"+g++,e.m=null,e.Provider=e.re=(e.Consumer=function(e,t){return e.children(t)}).contextType=e,e}();function jt({children:e,httpClient:t,stateManager:n,quoteIntentStore:r,formStateManager:i,paymentLinkConfig:o,availableProducts:s,productCodes:a,urlPromoCode:l}){return Fe(Ot.Provider,{value:{httpClient:t,stateManager:n,quoteIntentStore:r,formStateManager:i,paymentLinkConfig:o,availableProducts:s,productCodes:a,urlPromoCode:l,currentRetryAttempt:0,maxRetryAttempts:3},children:e})}function Wt(){const e=function(e){var t=Ue.context[e.k],n=rt(He++,9);return n.c=e,t?(null==n.m&&(n.m=!0,t.sub(Ue)),t.props.value):e.m}(Ot);if(!e)throw new Error("useFormContext must be used within a FormContext provider");return e}function At(e){const t=Wt(),{formStateManager:n}=t;if(!n||"function"!=typeof n.subscribe)throw new Error("useQuoteForm can only be used in quote mode. If you're in payment link mode, use usePaymentLink instead.");const[r,i]=it(()=>e(n));return ot(()=>n.subscribe(()=>{i(e(n))}),[n,e]),{...r,fsm:n}}class Lt extends Error{}class Bt extends Lt{constructor(e){super(`Invalid DateTime: ${e.toMessage()}`)}}class qt extends Lt{constructor(e){super(`Invalid Interval: ${e.toMessage()}`)}}class Ft extends Lt{constructor(e){super(`Invalid Duration: ${e.toMessage()}`)}}class Ht extends Lt{}class Ut extends Lt{constructor(e){super(`Invalid unit ${e}`)}}class Yt extends Lt{}class Zt extends Lt{constructor(){super("Zone is an abstract class")}}const Gt="numeric",Vt="short",Qt="long",Jt={year:Gt,month:Gt,day:Gt},Kt={year:Gt,month:Vt,day:Gt},Xt={year:Gt,month:Vt,day:Gt,weekday:Vt},en={year:Gt,month:Qt,day:Gt},tn={year:Gt,month:Qt,day:Gt,weekday:Qt},nn={hour:Gt,minute:Gt},rn={hour:Gt,minute:Gt,second:Gt},on={hour:Gt,minute:Gt,second:Gt,timeZoneName:Vt},sn={hour:Gt,minute:Gt,second:Gt,timeZoneName:Qt},an={hour:Gt,minute:Gt,hourCycle:"h23"},ln={hour:Gt,minute:Gt,second:Gt,hourCycle:"h23"},cn={hour:Gt,minute:Gt,second:Gt,hourCycle:"h23",timeZoneName:Vt},dn={hour:Gt,minute:Gt,second:Gt,hourCycle:"h23",timeZoneName:Qt},un={year:Gt,month:Gt,day:Gt,hour:Gt,minute:Gt},hn={year:Gt,month:Gt,day:Gt,hour:Gt,minute:Gt,second:Gt},mn={year:Gt,month:Vt,day:Gt,hour:Gt,minute:Gt},fn={year:Gt,month:Vt,day:Gt,hour:Gt,minute:Gt,second:Gt},pn={year:Gt,month:Vt,day:Gt,weekday:Vt,hour:Gt,minute:Gt},gn={year:Gt,month:Qt,day:Gt,hour:Gt,minute:Gt,timeZoneName:Vt},yn={year:Gt,month:Qt,day:Gt,hour:Gt,minute:Gt,second:Gt,timeZoneName:Vt},vn={year:Gt,month:Qt,day:Gt,weekday:Qt,hour:Gt,minute:Gt,timeZoneName:Qt},wn={year:Gt,month:Qt,day:Gt,weekday:Qt,hour:Gt,minute:Gt,second:Gt,timeZoneName:Qt};class bn{get type(){throw new Zt}get name(){throw new Zt}get ianaName(){return this.name}get isUniversal(){throw new Zt}offsetName(e,t){throw new Zt}formatOffset(e,t){throw new Zt}offset(e){throw new Zt}equals(e){throw new Zt}get isValid(){throw new Zt}}let xn=null;class kn extends bn{static get instance(){return null===xn&&(xn=new kn),xn}get type(){return"system"}get name(){return(new Intl.DateTimeFormat).resolvedOptions().timeZone}get isUniversal(){return!1}offsetName(e,{format:t,locale:n}){return qr(e,t,n)}formatOffset(e,t){return Yr(this.offset(e),t)}offset(e){return-new Date(e).getTimezoneOffset()}equals(e){return"system"===e.type}get isValid(){return!0}}const Nn=new Map,Sn={year:0,month:1,day:2,era:3,hour:4,minute:5,second:6},Cn=new Map;class _n extends bn{static create(e){let t=Cn.get(e);return void 0===t&&Cn.set(e,t=new _n(e)),t}static resetCache(){Cn.clear(),Nn.clear()}static isValidSpecifier(e){return this.isValidZone(e)}static isValidZone(e){if(!e)return!1;try{return new Intl.DateTimeFormat("en-US",{timeZone:e}).format(),!0}catch(e){return!1}}constructor(e){super(),this.zoneName=e,this.valid=_n.isValidZone(e)}get type(){return"iana"}get name(){return this.zoneName}get isUniversal(){return!1}offsetName(e,{format:t,locale:n}){return qr(e,t,n,this.name)}formatOffset(e,t){return Yr(this.offset(e),t)}offset(e){if(!this.valid)return NaN;const t=new Date(e);if(isNaN(t))return NaN;const n=function(e){let t=Nn.get(e);return void 0===t&&(t=new Intl.DateTimeFormat("en-US",{hour12:!1,timeZone:e,year:"numeric",month:"2-digit",day:"2-digit",hour:"2-digit",minute:"2-digit",second:"2-digit",era:"short"}),Nn.set(e,t)),t}(this.name);let[r,i,o,s,a,l,c]=n.formatToParts?function(e,t){const n=e.formatToParts(t),r=[];for(let e=0;e<n.length;e++){const{type:t,value:i}=n[e],o=Sn[t];"era"===t?r[o]=i:xr(o)||(r[o]=parseInt(i,10))}return r}(n,t):function(e,t){const n=e.format(t).replace(/\u200E/g,""),r=/(\d+)\/(\d+)\/(\d+) (AD|BC),? (\d+):(\d+):(\d+)/.exec(n),[,i,o,s,a,l,c,d]=r;return[s,i,o,a,l,c,d]}(n,t);"BC"===s&&(r=1-Math.abs(r));let d=+t;const u=d%1e3;return d-=u>=0?u:1e3+u,(Wr({year:r,month:i,day:o,hour:24===a?0:a,minute:l,second:c,millisecond:0})-d)/6e4}equals(e){return"iana"===e.type&&e.name===this.name}get isValid(){return this.valid}}let $n={};const In=new Map;function Tn(e,t={}){const n=JSON.stringify([e,t]);let r=In.get(n);return void 0===r&&(r=new Intl.DateTimeFormat(e,t),In.set(n,r)),r}const En=new Map,Pn=new Map;let zn=null;const Dn=new Map;function Rn(e){let t=Dn.get(e);return void 0===t&&(t=new Intl.DateTimeFormat(e).resolvedOptions(),Dn.set(e,t)),t}const Mn=new Map;function On(e,t,n,r){const i=e.listingMode();return"error"===i?null:"en"===i?n(t):r(t)}class jn{constructor(e,t,n){this.padTo=n.padTo||0,this.floor=n.floor||!1;const{padTo:r,floor:i,...o}=n;if(!t||Object.keys(o).length>0){const t={useGrouping:!1,...n};n.padTo>0&&(t.minimumIntegerDigits=n.padTo),this.inf=function(e,t={}){const n=JSON.stringify([e,t]);let r=En.get(n);return void 0===r&&(r=new Intl.NumberFormat(e,t),En.set(n,r)),r}(e,t)}}format(e){if(this.inf){const t=this.floor?Math.floor(e):e;return this.inf.format(t)}return Er(this.floor?Math.floor(e):Rr(e,3),this.padTo)}}class Wn{constructor(e,t,n){let r;if(this.opts=n,this.originalZone=void 0,this.opts.timeZone)this.dt=e;else if("fixed"===e.zone.type){const t=e.offset/60*-1,n=t>=0?`Etc/GMT+${t}`:`Etc/GMT${t}`;0!==e.offset&&_n.create(n).valid?(r=n,this.dt=e):(r="UTC",this.dt=0===e.offset?e:e.setZone("UTC").plus({minutes:e.offset}),this.originalZone=e.zone)}else"system"===e.zone.type?this.dt=e:"iana"===e.zone.type?(this.dt=e,r=e.zone.name):(r="UTC",this.dt=e.setZone("UTC").plus({minutes:e.offset}),this.originalZone=e.zone);const i={...this.opts};i.timeZone=i.timeZone||r,this.dtf=Tn(t,i)}format(){return this.originalZone?this.formatToParts().map(({value:e})=>e).join(""):this.dtf.format(this.dt.toJSDate())}formatToParts(){const e=this.dtf.formatToParts(this.dt.toJSDate());return this.originalZone?e.map(e=>{if("timeZoneName"===e.type){const t=this.originalZone.offsetName(this.dt.ts,{locale:this.dt.locale,format:this.opts.timeZoneName});return{...e,value:t}}return e}):e}resolvedOptions(){return this.dtf.resolvedOptions()}}class An{constructor(e,t,n){this.opts={style:"long",...n},!t&&Sr()&&(this.rtf=function(e,t={}){const{base:n,...r}=t,i=JSON.stringify([e,r]);let o=Pn.get(i);return void 0===o&&(o=new Intl.RelativeTimeFormat(e,t),Pn.set(i,o)),o}(e,n))}format(e,t){return this.rtf?this.rtf.format(e,t):function(e,t,n="always",r=!1){const i={years:["year","yr."],quarters:["quarter","qtr."],months:["month","mo."],weeks:["week","wk."],days:["day","day","days"],hours:["hour","hr."],minutes:["minute","min."],seconds:["second","sec."]},o=-1===["hours","minutes","seconds"].indexOf(e);if("auto"===n&&o){const n="days"===e;switch(t){case 1:return n?"tomorrow":`next ${i[e][0]}`;case-1:return n?"yesterday":`last ${i[e][0]}`;case 0:return n?"today":`this ${i[e][0]}`}}const s=Object.is(t,-0)||t<0,a=Math.abs(t),l=1===a,c=i[e],d=r?l?c[1]:c[2]||c[1]:l?i[e][0]:e;return s?`${a} ${d} ago`:`in ${a} ${d}`}(t,e,this.opts.numeric,"long"!==this.opts.style)}formatToParts(e,t){return this.rtf?this.rtf.formatToParts(e,t):[]}}const Ln={firstDay:1,minimalDays:4,weekend:[6,7]};class Bn{static fromOpts(e){return Bn.create(e.locale,e.numberingSystem,e.outputCalendar,e.weekSettings,e.defaultToEN)}static create(e,t,n,r,i=!1){const o=e||or.defaultLocale,s=o||(i?"en-US":zn||(zn=(new Intl.DateTimeFormat).resolvedOptions().locale,zn)),a=t||or.defaultNumberingSystem,l=n||or.defaultOutputCalendar,c=Ir(r)||or.defaultWeekSettings;return new Bn(s,a,l,c,o)}static resetCache(){zn=null,In.clear(),En.clear(),Pn.clear(),Dn.clear(),Mn.clear()}static fromObject({locale:e,numberingSystem:t,outputCalendar:n,weekSettings:r}={}){return Bn.create(e,t,n,r)}constructor(e,t,n,r,i){const[o,s,a]=function(e){const t=e.indexOf("-x-");-1!==t&&(e=e.substring(0,t));const n=e.indexOf("-u-");if(-1===n)return[e];{let t,r;try{t=Tn(e).resolvedOptions(),r=e}catch(i){const o=e.substring(0,n);t=Tn(o).resolvedOptions(),r=o}const{numberingSystem:i,calendar:o}=t;return[r,i,o]}}(e);this.locale=o,this.numberingSystem=t||s||null,this.outputCalendar=n||a||null,this.weekSettings=r,this.intl=function(e,t,n){return n||t?(e.includes("-u-")||(e+="-u"),n&&(e+=`-ca-${n}`),t&&(e+=`-nu-${t}`),e):e}(this.locale,this.numberingSystem,this.outputCalendar),this.weekdaysCache={format:{},standalone:{}},this.monthsCache={format:{},standalone:{}},this.meridiemCache=null,this.eraCache={},this.specifiedLocale=i,this.fastNumbersCached=null}get fastNumbers(){var e;return null==this.fastNumbersCached&&(this.fastNumbersCached=(!(e=this).numberingSystem||"latn"===e.numberingSystem)&&("latn"===e.numberingSystem||!e.locale||e.locale.startsWith("en")||"latn"===Rn(e.locale).numberingSystem)),this.fastNumbersCached}listingMode(){const e=this.isEnglish(),t=!(null!==this.numberingSystem&&"latn"!==this.numberingSystem||null!==this.outputCalendar&&"gregory"!==this.outputCalendar);return e&&t?"en":"intl"}clone(e){return e&&0!==Object.getOwnPropertyNames(e).length?Bn.create(e.locale||this.specifiedLocale,e.numberingSystem||this.numberingSystem,e.outputCalendar||this.outputCalendar,Ir(e.weekSettings)||this.weekSettings,e.defaultToEN||!1):this}redefaultToEN(e={}){return this.clone({...e,defaultToEN:!0})}redefaultToSystem(e={}){return this.clone({...e,defaultToEN:!1})}months(e,t=!1){return On(this,e,Jr,()=>{const n="ja"===this.intl||this.intl.startsWith("ja-"),r=(t&=!n)?{month:e,day:"numeric"}:{month:e},i=t?"format":"standalone";if(!this.monthsCache[i][e]){const t=n?e=>this.dtFormatter(e,r).format():e=>this.extract(e,r,"month");this.monthsCache[i][e]=function(e){const t=[];for(let n=1;n<=12;n++){const r=es.utc(2009,n,1);t.push(e(r))}return t}(t)}return this.monthsCache[i][e]})}weekdays(e,t=!1){return On(this,e,ti,()=>{const n=t?{weekday:e,year:"numeric",month:"long",day:"numeric"}:{weekday:e},r=t?"format":"standalone";return this.weekdaysCache[r][e]||(this.weekdaysCache[r][e]=function(e){const t=[];for(let n=1;n<=7;n++){const r=es.utc(2016,11,13+n);t.push(e(r))}return t}(e=>this.extract(e,n,"weekday"))),this.weekdaysCache[r][e]})}meridiems(){return On(this,void 0,()=>ni,()=>{if(!this.meridiemCache){const e={hour:"numeric",hourCycle:"h12"};this.meridiemCache=[es.utc(2016,11,13,9),es.utc(2016,11,13,19)].map(t=>this.extract(t,e,"dayperiod"))}return this.meridiemCache})}eras(e){return On(this,e,si,()=>{const t={era:e};return this.eraCache[e]||(this.eraCache[e]=[es.utc(-40,1,1),es.utc(2017,1,1)].map(e=>this.extract(e,t,"era"))),this.eraCache[e]})}extract(e,t,n){const r=this.dtFormatter(e,t).formatToParts().find(e=>e.type.toLowerCase()===n);return r?r.value:null}numberFormatter(e={}){return new jn(this.intl,e.forceSimple||this.fastNumbers,e)}dtFormatter(e,t={}){return new Wn(e,this.intl,t)}relFormatter(e={}){return new An(this.intl,this.isEnglish(),e)}listFormatter(e={}){return function(e,t={}){const n=JSON.stringify([e,t]);let r=$n[n];return r||(r=new Intl.ListFormat(e,t),$n[n]=r),r}(this.intl,e)}isEnglish(){return"en"===this.locale||"en-us"===this.locale.toLowerCase()||Rn(this.intl).locale.startsWith("en-us")}getWeekSettings(){return this.weekSettings?this.weekSettings:Cr()?function(e){let t=Mn.get(e);if(!t){const n=new Intl.Locale(e);t="getWeekInfo"in n?n.getWeekInfo():n.weekInfo,"minimalDays"in t||(t={...Ln,...t}),Mn.set(e,t)}return t}(this.locale):Ln}getStartOfWeek(){return this.getWeekSettings().firstDay}getMinDaysInFirstWeek(){return this.getWeekSettings().minimalDays}getWeekendDays(){return this.getWeekSettings().weekend}equals(e){return this.locale===e.locale&&this.numberingSystem===e.numberingSystem&&this.outputCalendar===e.outputCalendar}toString(){return`Locale(${this.locale}, ${this.numberingSystem}, ${this.outputCalendar})`}}let qn=null;class Fn extends bn{static get utcInstance(){return null===qn&&(qn=new Fn(0)),qn}static instance(e){return 0===e?Fn.utcInstance:new Fn(e)}static parseSpecifier(e){if(e){const t=e.match(/^utc(?:([+-]\d{1,2})(?::(\d{2}))?)?$/i);if(t)return new Fn(Fr(t[1],t[2]))}return null}constructor(e){super(),this.fixed=e}get type(){return"fixed"}get name(){return 0===this.fixed?"UTC":`UTC${Yr(this.fixed,"narrow")}`}get ianaName(){return 0===this.fixed?"Etc/UTC":`Etc/GMT${Yr(-this.fixed,"narrow")}`}offsetName(){return this.name}formatOffset(e,t){return Yr(this.fixed,t)}get isUniversal(){return!0}offset(){return this.fixed}equals(e){return"fixed"===e.type&&e.fixed===this.fixed}get isValid(){return!0}}class Hn extends bn{constructor(e){super(),this.zoneName=e}get type(){return"invalid"}get name(){return this.zoneName}get isUniversal(){return!1}offsetName(){return null}formatOffset(){return""}offset(){return NaN}equals(){return!1}get isValid(){return!1}}function Un(e,t){if(xr(e)||null===e)return t;if(e instanceof bn)return e;if(function(e){return"string"==typeof e}(e)){const n=e.toLowerCase();return"default"===n?t:"local"===n||"system"===n?kn.instance:"utc"===n||"gmt"===n?Fn.utcInstance:Fn.parseSpecifier(n)||_n.create(e)}return kr(e)?Fn.instance(e):"object"==typeof e&&"offset"in e&&"function"==typeof e.offset?e:new Hn(e)}const Yn={arab:"[٠-٩]",arabext:"[۰-۹]",bali:"[᭐-᭙]",beng:"[০-৯]",deva:"[०-९]",fullwide:"[0-9]",gujr:"[૦-૯]",hanidec:"[〇|一|二|三|四|五|六|七|八|九]",khmr:"[០-៩]",knda:"[೦-೯]",laoo:"[໐-໙]",limb:"[᥆-᥏]",mlym:"[൦-൯]",mong:"[᠐-᠙]",mymr:"[၀-၉]",orya:"[୦-୯]",tamldec:"[௦-௯]",telu:"[౦-౯]",thai:"[๐-๙]",tibt:"[༠-༩]",latn:"\\d"},Zn={arab:[1632,1641],arabext:[1776,1785],bali:[6992,7001],beng:[2534,2543],deva:[2406,2415],fullwide:[65296,65303],gujr:[2790,2799],khmr:[6112,6121],knda:[3302,3311],laoo:[3792,3801],limb:[6470,6479],mlym:[3430,3439],mong:[6160,6169],mymr:[4160,4169],orya:[2918,2927],tamldec:[3046,3055],telu:[3174,3183],thai:[3664,3673],tibt:[3872,3881]},Gn=Yn.hanidec.replace(/[\[|\]]/g,"").split(""),Vn=new Map;function Qn({numberingSystem:e},t=""){const n=e||"latn";let r=Vn.get(n);void 0===r&&(r=new Map,Vn.set(n,r));let i=r.get(t);return void 0===i&&(i=new RegExp(`${Yn[n]}${t}`),r.set(t,i)),i}let Jn,Kn=()=>Date.now(),Xn="system",er=null,tr=null,nr=null,rr=60,ir=null;class or{static get now(){return Kn}static set now(e){Kn=e}static set defaultZone(e){Xn=e}static get defaultZone(){return Un(Xn,kn.instance)}static get defaultLocale(){return er}static set defaultLocale(e){er=e}static get defaultNumberingSystem(){return tr}static set defaultNumberingSystem(e){tr=e}static get defaultOutputCalendar(){return nr}static set defaultOutputCalendar(e){nr=e}static get defaultWeekSettings(){return ir}static set defaultWeekSettings(e){ir=Ir(e)}static get twoDigitCutoffYear(){return rr}static set twoDigitCutoffYear(e){rr=e%100}static get throwOnInvalid(){return Jn}static set throwOnInvalid(e){Jn=e}static resetCaches(){Bn.resetCache(),_n.resetCache(),es.resetCache(),Vn.clear()}}class sr{constructor(e,t){this.reason=e,this.explanation=t}toMessage(){return this.explanation?`${this.reason}: ${this.explanation}`:this.reason}}const ar=[0,31,59,90,120,151,181,212,243,273,304,334],lr=[0,31,60,91,121,152,182,213,244,274,305,335];function cr(e,t){return new sr("unit out of range",`you specified ${t} (of type ${typeof t}) as a ${e}, which is invalid`)}function dr(e,t,n){const r=new Date(Date.UTC(e,t-1,n));e<100&&e>=0&&r.setUTCFullYear(r.getUTCFullYear()-1900);const i=r.getUTCDay();return 0===i?7:i}function ur(e,t,n){return n+(Mr(e)?lr:ar)[t-1]}function hr(e,t){const n=Mr(e)?lr:ar,r=n.findIndex(e=>e<t);return{month:r+1,day:t-n[r]}}function mr(e,t){return(e-t+7)%7+1}function fr(e,t=4,n=1){const{year:r,month:i,day:o}=e,s=ur(r,i,o),a=mr(dr(r,i,o),n);let l,c=Math.floor((s-a+14-t)/7);return c<1?(l=r-1,c=Lr(l,t,n)):c>Lr(r,t,n)?(l=r+1,c=1):l=r,{weekYear:l,weekNumber:c,weekday:a,...Zr(e)}}function pr(e,t=4,n=1){const{weekYear:r,weekNumber:i,weekday:o}=e,s=mr(dr(r,1,t),n),a=Or(r);let l,c=7*i+o-s-7+t;c<1?(l=r-1,c+=Or(l)):c>a?(l=r+1,c-=Or(r)):l=r;const{month:d,day:u}=hr(l,c);return{year:l,month:d,day:u,...Zr(e)}}function gr(e){const{year:t,month:n,day:r}=e;return{year:t,ordinal:ur(t,n,r),...Zr(e)}}function yr(e){const{year:t,ordinal:n}=e,{month:r,day:i}=hr(t,n);return{year:t,month:r,day:i,...Zr(e)}}function vr(e,t){if(!xr(e.localWeekday)||!xr(e.localWeekNumber)||!xr(e.localWeekYear)){if(!xr(e.weekday)||!xr(e.weekNumber)||!xr(e.weekYear))throw new Ht("Cannot mix locale-based week fields with ISO-based week fields");return xr(e.localWeekday)||(e.weekday=e.localWeekday),xr(e.localWeekNumber)||(e.weekNumber=e.localWeekNumber),xr(e.localWeekYear)||(e.weekYear=e.localWeekYear),delete e.localWeekday,delete e.localWeekNumber,delete e.localWeekYear,{minDaysInFirstWeek:t.getMinDaysInFirstWeek(),startOfWeek:t.getStartOfWeek()}}return{minDaysInFirstWeek:4,startOfWeek:1}}function wr(e){const t=Nr(e.year),n=Tr(e.month,1,12),r=Tr(e.day,1,jr(e.year,e.month));return t?n?!r&&cr("day",e.day):cr("month",e.month):cr("year",e.year)}function br(e){const{hour:t,minute:n,second:r,millisecond:i}=e,o=Tr(t,0,23)||24===t&&0===n&&0===r&&0===i,s=Tr(n,0,59),a=Tr(r,0,59),l=Tr(i,0,999);return o?s?a?!l&&cr("millisecond",i):cr("second",r):cr("minute",n):cr("hour",t)}function xr(e){return void 0===e}function kr(e){return"number"==typeof e}function Nr(e){return"number"==typeof e&&e%1==0}function Sr(){try{return"undefined"!=typeof Intl&&!!Intl.RelativeTimeFormat}catch(e){return!1}}function Cr(){try{return"undefined"!=typeof Intl&&!!Intl.Locale&&("weekInfo"in Intl.Locale.prototype||"getWeekInfo"in Intl.Locale.prototype)}catch(e){return!1}}function _r(e,t,n){if(0!==e.length)return e.reduce((e,r)=>{const i=[t(r),r];return e&&n(e[0],i[0])===e[0]?e:i},null)[1]}function $r(e,t){return{}.hasOwnProperty.call(e,t)}function Ir(e){if(null==e)return null;if("object"!=typeof e)throw new Yt("Week settings must be an object");if(!Tr(e.firstDay,1,7)||!Tr(e.minimalDays,1,7)||!Array.isArray(e.weekend)||e.weekend.some(e=>!Tr(e,1,7)))throw new Yt("Invalid week settings");return{firstDay:e.firstDay,minimalDays:e.minimalDays,weekend:Array.from(e.weekend)}}function Tr(e,t,n){return Nr(e)&&e>=t&&e<=n}function Er(e,t=2){let n;return n=e<0?"-"+(""+-e).padStart(t,"0"):(""+e).padStart(t,"0"),n}function Pr(e){return xr(e)||null===e||""===e?void 0:parseInt(e,10)}function zr(e){return xr(e)||null===e||""===e?void 0:parseFloat(e)}function Dr(e){if(!xr(e)&&null!==e&&""!==e){const t=1e3*parseFloat("0."+e);return Math.floor(t)}}function Rr(e,t,n="round"){const r=10**t;switch(n){case"expand":return e>0?Math.ceil(e*r)/r:Math.floor(e*r)/r;case"trunc":return Math.trunc(e*r)/r;case"round":return Math.round(e*r)/r;case"floor":return Math.floor(e*r)/r;case"ceil":return Math.ceil(e*r)/r;default:throw new RangeError(`Value rounding ${n} is out of range`)}}function Mr(e){return e%4==0&&(e%100!=0||e%400==0)}function Or(e){return Mr(e)?366:365}function jr(e,t){const n=(r=t-1)-12*Math.floor(r/12)+1;var r;return 2===n?Mr(e+(t-n)/12)?29:28:[31,null,31,30,31,30,31,31,30,31,30,31][n-1]}function Wr(e){let t=Date.UTC(e.year,e.month-1,e.day,e.hour,e.minute,e.second,e.millisecond);return e.year<100&&e.year>=0&&(t=new Date(t),t.setUTCFullYear(e.year,e.month-1,e.day)),+t}function Ar(e,t,n){return-mr(dr(e,1,t),n)+t-1}function Lr(e,t=4,n=1){const r=Ar(e,t,n),i=Ar(e+1,t,n);return(Or(e)-r+i)/7}function Br(e){return e>99?e:e>or.twoDigitCutoffYear?1900+e:2e3+e}function qr(e,t,n,r=null){const i=new Date(e),o={hourCycle:"h23",year:"numeric",month:"2-digit",day:"2-digit",hour:"2-digit",minute:"2-digit"};r&&(o.timeZone=r);const s={timeZoneName:t,...o},a=new Intl.DateTimeFormat(n,s).formatToParts(i).find(e=>"timezonename"===e.type.toLowerCase());return a?a.value:null}function Fr(e,t){let n=parseInt(e,10);Number.isNaN(n)&&(n=0);const r=parseInt(t,10)||0;return 60*n+(n<0||Object.is(n,-0)?-r:r)}function Hr(e){const t=Number(e);if("boolean"==typeof e||""===e||!Number.isFinite(t))throw new Yt(`Invalid unit value ${e}`);return t}function Ur(e,t){const n={};for(const r in e)if($r(e,r)){const i=e[r];if(null==i)continue;n[t(r)]=Hr(i)}return n}function Yr(e,t){const n=Math.trunc(Math.abs(e/60)),r=Math.trunc(Math.abs(e%60)),i=e>=0?"+":"-";switch(t){case"short":return`${i}${Er(n,2)}:${Er(r,2)}`;case"narrow":return`${i}${n}${r>0?`:${r}`:""}`;case"techie":return`${i}${Er(n,2)}${Er(r,2)}`;default:throw new RangeError(`Value format ${t} is out of range for property format`)}}function Zr(e){return function(e){return["hour","minute","second","millisecond"].reduce((t,n)=>(t[n]=e[n],t),{})}(e)}const Gr=["January","February","March","April","May","June","July","August","September","October","November","December"],Vr=["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],Qr=["J","F","M","A","M","J","J","A","S","O","N","D"];function Jr(e){switch(e){case"narrow":return[...Qr];case"short":return[...Vr];case"long":return[...Gr];case"numeric":return["1","2","3","4","5","6","7","8","9","10","11","12"];case"2-digit":return["01","02","03","04","05","06","07","08","09","10","11","12"];default:return null}}const Kr=["Monday","Tuesday","Wednesday","Thursday","Friday","Saturday","Sunday"],Xr=["Mon","Tue","Wed","Thu","Fri","Sat","Sun"],ei=["M","T","W","T","F","S","S"];function ti(e){switch(e){case"narrow":return[...ei];case"short":return[...Xr];case"long":return[...Kr];case"numeric":return["1","2","3","4","5","6","7"];default:return null}}const ni=["AM","PM"],ri=["Before Christ","Anno Domini"],ii=["BC","AD"],oi=["B","A"];function si(e){switch(e){case"narrow":return[...oi];case"short":return[...ii];case"long":return[...ri];default:return null}}function ai(e,t){let n="";for(const r of e)r.literal?n+=r.val:n+=t(r.val);return n}const li={D:Jt,DD:Kt,DDD:en,DDDD:tn,t:nn,tt:rn,ttt:on,tttt:sn,T:an,TT:ln,TTT:cn,TTTT:dn,f:un,ff:mn,fff:gn,ffff:vn,F:hn,FF:fn,FFF:yn,FFFF:wn};class ci{static create(e,t={}){return new ci(e,t)}static parseFormat(e){let t=null,n="",r=!1;const i=[];for(let o=0;o<e.length;o++){const s=e.charAt(o);"'"===s?((n.length>0||r)&&i.push({literal:r||/^\s+$/.test(n),val:""===n?"'":n}),t=null,n="",r=!r):r||s===t?n+=s:(n.length>0&&i.push({literal:/^\s+$/.test(n),val:n}),n=s,t=s)}return n.length>0&&i.push({literal:r||/^\s+$/.test(n),val:n}),i}static macroTokenToFormatOpts(e){return li[e]}constructor(e,t){this.opts=t,this.loc=e,this.systemLoc=null}formatWithSystemDefault(e,t){return null===this.systemLoc&&(this.systemLoc=this.loc.redefaultToSystem()),this.systemLoc.dtFormatter(e,{...this.opts,...t}).format()}dtFormatter(e,t={}){return this.loc.dtFormatter(e,{...this.opts,...t})}formatDateTime(e,t){return this.dtFormatter(e,t).format()}formatDateTimeParts(e,t){return this.dtFormatter(e,t).formatToParts()}formatInterval(e,t){return this.dtFormatter(e.start,t).dtf.formatRange(e.start.toJSDate(),e.end.toJSDate())}resolvedOptions(e,t){return this.dtFormatter(e,t).resolvedOptions()}num(e,t=0,n){if(this.opts.forceSimple)return Er(e,t);const r={...this.opts};return t>0&&(r.padTo=t),n&&(r.signDisplay=n),this.loc.numberFormatter(r).format(e)}formatDateTimeFromString(e,t){const n="en"===this.loc.listingMode(),r=this.loc.outputCalendar&&"gregory"!==this.loc.outputCalendar,i=(t,n)=>this.loc.extract(e,t,n),o=t=>e.isOffsetFixed&&0===e.offset&&t.allowZ?"Z":e.isValid?e.zone.formatOffset(e.ts,t.format):"",s=(t,r)=>n?function(e,t){return Jr(t)[e.month-1]}(e,t):i(r?{month:t}:{month:t,day:"numeric"},"month"),a=(t,r)=>n?function(e,t){return ti(t)[e.weekday-1]}(e,t):i(r?{weekday:t}:{weekday:t,month:"long",day:"numeric"},"weekday"),l=t=>{const n=ci.macroTokenToFormatOpts(t);return n?this.formatWithSystemDefault(e,n):t},c=t=>n?function(e,t){return si(t)[e.year<0?0:1]}(e,t):i({era:t},"era");return ai(ci.parseFormat(t),t=>{switch(t){case"S":return this.num(e.millisecond);case"u":case"SSS":return this.num(e.millisecond,3);case"s":return this.num(e.second);case"ss":return this.num(e.second,2);case"uu":return this.num(Math.floor(e.millisecond/10),2);case"uuu":return this.num(Math.floor(e.millisecond/100));case"m":return this.num(e.minute);case"mm":return this.num(e.minute,2);case"h":return this.num(e.hour%12==0?12:e.hour%12);case"hh":return this.num(e.hour%12==0?12:e.hour%12,2);case"H":return this.num(e.hour);case"HH":return this.num(e.hour,2);case"Z":return o({format:"narrow",allowZ:this.opts.allowZ});case"ZZ":return o({format:"short",allowZ:this.opts.allowZ});case"ZZZ":return o({format:"techie",allowZ:this.opts.allowZ});case"ZZZZ":return e.zone.offsetName(e.ts,{format:"short",locale:this.loc.locale});case"ZZZZZ":return e.zone.offsetName(e.ts,{format:"long",locale:this.loc.locale});case"z":return e.zoneName;case"a":return n?function(e){return ni[e.hour<12?0:1]}(e):i({hour:"numeric",hourCycle:"h12"},"dayperiod");case"d":return r?i({day:"numeric"},"day"):this.num(e.day);case"dd":return r?i({day:"2-digit"},"day"):this.num(e.day,2);case"c":case"E":return this.num(e.weekday);case"ccc":return a("short",!0);case"cccc":return a("long",!0);case"ccccc":return a("narrow",!0);case"EEE":return a("short",!1);case"EEEE":return a("long",!1);case"EEEEE":return a("narrow",!1);case"L":return r?i({month:"numeric",day:"numeric"},"month"):this.num(e.month);case"LL":return r?i({month:"2-digit",day:"numeric"},"month"):this.num(e.month,2);case"LLL":return s("short",!0);case"LLLL":return s("long",!0);case"LLLLL":return s("narrow",!0);case"M":return r?i({month:"numeric"},"month"):this.num(e.month);case"MM":return r?i({month:"2-digit"},"month"):this.num(e.month,2);case"MMM":return s("short",!1);case"MMMM":return s("long",!1);case"MMMMM":return s("narrow",!1);case"y":return r?i({year:"numeric"},"year"):this.num(e.year);case"yy":return r?i({year:"2-digit"},"year"):this.num(e.year.toString().slice(-2),2);case"yyyy":return r?i({year:"numeric"},"year"):this.num(e.year,4);case"yyyyyy":return r?i({year:"numeric"},"year"):this.num(e.year,6);case"G":return c("short");case"GG":return c("long");case"GGGGG":return c("narrow");case"kk":return this.num(e.weekYear.toString().slice(-2),2);case"kkkk":return this.num(e.weekYear,4);case"W":return this.num(e.weekNumber);case"WW":return this.num(e.weekNumber,2);case"n":return this.num(e.localWeekNumber);case"nn":return this.num(e.localWeekNumber,2);case"ii":return this.num(e.localWeekYear.toString().slice(-2),2);case"iiii":return this.num(e.localWeekYear,4);case"o":return this.num(e.ordinal);case"ooo":return this.num(e.ordinal,3);case"q":return this.num(e.quarter);case"qq":return this.num(e.quarter,2);case"X":return this.num(Math.floor(e.ts/1e3));case"x":return this.num(e.ts);default:return l(t)}})}formatDurationFromString(e,t){const n="negativeLargestOnly"===this.opts.signMode?-1:1,r=e=>{switch(e[0]){case"S":return"milliseconds";case"s":return"seconds";case"m":return"minutes";case"h":return"hours";case"d":return"days";case"w":return"weeks";case"M":return"months";case"y":return"years";default:return null}},i=ci.parseFormat(t),o=i.reduce((e,{literal:t,val:n})=>t?e:e.concat(n),[]),s=e.shiftTo(...o.map(r).filter(e=>e));return ai(i,((e,t)=>i=>{const o=r(i);if(o){const r=t.isNegativeDuration&&o!==t.largestUnit?n:1;let s;return s="negativeLargestOnly"===this.opts.signMode&&o!==t.largestUnit?"never":"all"===this.opts.signMode?"always":"auto",this.num(e.get(o)*r,i.length,s)}return i})(s,{isNegativeDuration:s<0,largestUnit:Object.keys(s.values)[0]}))}}const di=/[A-Za-z_+-]{1,256}(?::?\/[A-Za-z0-9_+-]{1,256}(?:\/[A-Za-z0-9_+-]{1,256})?)?/;function ui(...e){const t=e.reduce((e,t)=>e+t.source,"");return RegExp(`^${t}$`)}function hi(...e){return t=>e.reduce(([e,n,r],i)=>{const[o,s,a]=i(t,r);return[{...e,...o},s||n,a]},[{},null,1]).slice(0,2)}function mi(e,...t){if(null==e)return[null,null];for(const[n,r]of t){const t=n.exec(e);if(t)return r(t)}return[null,null]}function fi(...e){return(t,n)=>{const r={};let i;for(i=0;i<e.length;i++)r[e[i]]=Pr(t[n+i]);return[r,null,n+i]}}const pi=/(?:([Zz])|([+-]\d\d)(?::?(\d\d))?)/,gi=/(\d\d)(?::?(\d\d)(?::?(\d\d)(?:[.,](\d{1,30}))?)?)?/,yi=RegExp(`${gi.source}(?:${pi.source}?(?:\\[(${di.source})\\])?)?`),vi=RegExp(`(?:[Tt]${yi.source})?`),wi=fi("weekYear","weekNumber","weekDay"),bi=fi("year","ordinal"),xi=RegExp(`${gi.source} ?(?:${pi.source}|(${di.source}))?`),ki=RegExp(`(?: ${xi.source})?`);function Ni(e,t,n){const r=e[t];return xr(r)?n:Pr(r)}function Si(e,t){return[{hours:Ni(e,t,0),minutes:Ni(e,t+1,0),seconds:Ni(e,t+2,0),milliseconds:Dr(e[t+3])},null,t+4]}function Ci(e,t){const n=!e[t]&&!e[t+1],r=Fr(e[t+1],e[t+2]);return[{},n?null:Fn.instance(r),t+3]}function _i(e,t){return[{},e[t]?_n.create(e[t]):null,t+1]}const $i=RegExp(`^T?${gi.source}$`),Ii=/^-?P(?:(?:(-?\d{1,20}(?:\.\d{1,20})?)Y)?(?:(-?\d{1,20}(?:\.\d{1,20})?)M)?(?:(-?\d{1,20}(?:\.\d{1,20})?)W)?(?:(-?\d{1,20}(?:\.\d{1,20})?)D)?(?:T(?:(-?\d{1,20}(?:\.\d{1,20})?)H)?(?:(-?\d{1,20}(?:\.\d{1,20})?)M)?(?:(-?\d{1,20})(?:[.,](-?\d{1,20}))?S)?)?)$/;function Ti(e){const[t,n,r,i,o,s,a,l,c]=e,d="-"===t[0],u=l&&"-"===l[0],h=(e,t=!1)=>void 0!==e&&(t||e&&d)?-e:e;return[{years:h(zr(n)),months:h(zr(r)),weeks:h(zr(i)),days:h(zr(o)),hours:h(zr(s)),minutes:h(zr(a)),seconds:h(zr(l),"-0"===l),milliseconds:h(Dr(c),u)}]}const Ei={GMT:0,EDT:-240,EST:-300,CDT:-300,CST:-360,MDT:-360,MST:-420,PDT:-420,PST:-480};function Pi(e,t,n,r,i,o,s){const a={year:2===t.length?Br(Pr(t)):Pr(t),month:Vr.indexOf(n)+1,day:Pr(r),hour:Pr(i),minute:Pr(o)};return s&&(a.second=Pr(s)),e&&(a.weekday=e.length>3?Kr.indexOf(e)+1:Xr.indexOf(e)+1),a}const zi=/^(?:(Mon|Tue|Wed|Thu|Fri|Sat|Sun),\s)?(\d{1,2})\s(Jan|Feb|Mar|Apr|May|Jun|Jul|Aug|Sep|Oct|Nov|Dec)\s(\d{2,4})\s(\d\d):(\d\d)(?::(\d\d))?\s(?:(UT|GMT|[ECMP][SD]T)|([Zz])|(?:([+-]\d\d)(\d\d)))$/;function Di(e){const[,t,n,r,i,o,s,a,l,c,d,u]=e,h=Pi(t,i,r,n,o,s,a);let m;return m=l?Ei[l]:c?0:Fr(d,u),[h,new Fn(m)]}const Ri=/^(Mon|Tue|Wed|Thu|Fri|Sat|Sun), (\d\d) (Jan|Feb|Mar|Apr|May|Jun|Jul|Aug|Sep|Oct|Nov|Dec) (\d{4}) (\d\d):(\d\d):(\d\d) GMT$/,Mi=/^(Monday|Tuesday|Wednesday|Thursday|Friday|Saturday|Sunday), (\d\d)-(Jan|Feb|Mar|Apr|May|Jun|Jul|Aug|Sep|Oct|Nov|Dec)-(\d\d) (\d\d):(\d\d):(\d\d) GMT$/,Oi=/^(Mon|Tue|Wed|Thu|Fri|Sat|Sun) (Jan|Feb|Mar|Apr|May|Jun|Jul|Aug|Sep|Oct|Nov|Dec) ( \d|\d\d) (\d\d):(\d\d):(\d\d) (\d{4})$/;function ji(e){const[,t,n,r,i,o,s,a]=e;return[Pi(t,i,r,n,o,s,a),Fn.utcInstance]}function Wi(e){const[,t,n,r,i,o,s,a]=e;return[Pi(t,a,n,r,i,o,s),Fn.utcInstance]}const Ai=ui(/([+-]\d{6}|\d{4})(?:-?(\d\d)(?:-?(\d\d))?)?/,vi),Li=ui(/(\d{4})-?W(\d\d)(?:-?(\d))?/,vi),Bi=ui(/(\d{4})-?(\d{3})/,vi),qi=ui(yi),Fi=hi(function(e,t){return[{year:Ni(e,t),month:Ni(e,t+1,1),day:Ni(e,t+2,1)},null,t+3]},Si,Ci,_i),Hi=hi(wi,Si,Ci,_i),Ui=hi(bi,Si,Ci,_i),Yi=hi(Si,Ci,_i),Zi=hi(Si),Gi=ui(/(\d{4})-(\d\d)-(\d\d)/,ki),Vi=ui(xi),Qi=hi(Si,Ci,_i),Ji="Invalid Duration",Ki={weeks:{days:7,hours:168,minutes:10080,seconds:604800,milliseconds:6048e5},days:{hours:24,minutes:1440,seconds:86400,milliseconds:864e5},hours:{minutes:60,seconds:3600,milliseconds:36e5},minutes:{seconds:60,milliseconds:6e4},seconds:{milliseconds:1e3}},Xi={years:{quarters:4,months:12,weeks:52,days:365,hours:8760,minutes:525600,seconds:31536e3,milliseconds:31536e6},quarters:{months:3,weeks:13,days:91,hours:2184,minutes:131040,seconds:7862400,milliseconds:78624e5},months:{weeks:4,days:30,hours:720,minutes:43200,seconds:2592e3,milliseconds:2592e6},...Ki},eo={years:{quarters:4,months:12,weeks:52.1775,days:365.2425,hours:8765.82,minutes:525949.2,seconds:525949.2*60,milliseconds:525949.2*60*1e3},quarters:{months:3,weeks:13.044375,days:91.310625,hours:2191.455,minutes:131487.3,seconds:525949.2*60/4,milliseconds:7889237999.999999},months:{weeks:4.3481250000000005,days:30.436875,hours:730.485,minutes:43829.1,seconds:2629746,milliseconds:2629746e3},...Ki},to=["years","quarters","months","weeks","days","hours","minutes","seconds","milliseconds"],no=to.slice(0).reverse();function ro(e,t,n=!1){const r={values:n?t.values:{...e.values,...t.values||{}},loc:e.loc.clone(t.loc),conversionAccuracy:t.conversionAccuracy||e.conversionAccuracy,matrix:t.matrix||e.matrix};return new ao(r)}function io(e,t){let n=t.milliseconds??0;for(const r of no.slice(1))t[r]&&(n+=t[r]*e[r].milliseconds);return n}function oo(e,t){const n=io(e,t)<0?-1:1;to.reduceRight((r,i)=>{if(xr(t[i]))return r;if(r){const o=t[r]*n,s=e[i][r],a=Math.floor(o/s);t[i]+=a*n,t[r]-=a*s*n}return i},null),to.reduce((n,r)=>{if(xr(t[r]))return n;if(n){const i=t[n]%1;t[n]-=i,t[r]+=i*e[n][r]}return r},null)}function so(e){const t={};for(const[n,r]of Object.entries(e))0!==r&&(t[n]=r);return t}class ao{constructor(e){const t="longterm"===e.conversionAccuracy||!1;let n=t?eo:Xi;e.matrix&&(n=e.matrix),this.values=e.values,this.loc=e.loc||Bn.create(),this.conversionAccuracy=t?"longterm":"casual",this.invalid=e.invalid||null,this.matrix=n,this.isLuxonDuration=!0}static fromMillis(e,t){return ao.fromObject({milliseconds:e},t)}static fromObject(e,t={}){if(null==e||"object"!=typeof e)throw new Yt("Duration.fromObject: argument expected to be an object, got "+(null===e?"null":typeof e));return new ao({values:Ur(e,ao.normalizeUnit),loc:Bn.fromObject(t),conversionAccuracy:t.conversionAccuracy,matrix:t.matrix})}static fromDurationLike(e){if(kr(e))return ao.fromMillis(e);if(ao.isDuration(e))return e;if("object"==typeof e)return ao.fromObject(e);throw new Yt(`Unknown duration argument ${e} of type ${typeof e}`)}static fromISO(e,t){const[n]=function(e){return mi(e,[Ii,Ti])}(e);return n?ao.fromObject(n,t):ao.invalid("unparsable",`the input "${e}" can't be parsed as ISO 8601`)}static fromISOTime(e,t){const[n]=function(e){return mi(e,[$i,Zi])}(e);return n?ao.fromObject(n,t):ao.invalid("unparsable",`the input "${e}" can't be parsed as ISO 8601`)}static invalid(e,t=null){if(!e)throw new Yt("need to specify a reason the Duration is invalid");const n=e instanceof sr?e:new sr(e,t);if(or.throwOnInvalid)throw new Ft(n);return new ao({invalid:n})}static normalizeUnit(e){const t={year:"years",years:"years",quarter:"quarters",quarters:"quarters",month:"months",months:"months",week:"weeks",weeks:"weeks",day:"days",days:"days",hour:"hours",hours:"hours",minute:"minutes",minutes:"minutes",second:"seconds",seconds:"seconds",millisecond:"milliseconds",milliseconds:"milliseconds"}[e?e.toLowerCase():e];if(!t)throw new Ut(e);return t}static isDuration(e){return e&&e.isLuxonDuration||!1}get locale(){return this.isValid?this.loc.locale:null}get numberingSystem(){return this.isValid?this.loc.numberingSystem:null}toFormat(e,t={}){const n={...t,floor:!1!==t.round&&!1!==t.floor};return this.isValid?ci.create(this.loc,n).formatDurationFromString(this,e):Ji}toHuman(e={}){if(!this.isValid)return Ji;const t=!1!==e.showZeros,n=to.map(n=>{const r=this.values[n];return xr(r)||0===r&&!t?null:this.loc.numberFormatter({style:"unit",unitDisplay:"long",...e,unit:n.slice(0,-1)}).format(r)}).filter(e=>e);return this.loc.listFormatter({type:"conjunction",style:e.listStyle||"narrow",...e}).format(n)}toObject(){return this.isValid?{...this.values}:{}}toISO(){if(!this.isValid)return null;let e="P";return 0!==this.years&&(e+=this.years+"Y"),0===this.months&&0===this.quarters||(e+=this.months+3*this.quarters+"M"),0!==this.weeks&&(e+=this.weeks+"W"),0!==this.days&&(e+=this.days+"D"),0===this.hours&&0===this.minutes&&0===this.seconds&&0===this.milliseconds||(e+="T"),0!==this.hours&&(e+=this.hours+"H"),0!==this.minutes&&(e+=this.minutes+"M"),0===this.seconds&&0===this.milliseconds||(e+=Rr(this.seconds+this.milliseconds/1e3,3)+"S"),"P"===e&&(e+="T0S"),e}toISOTime(e={}){if(!this.isValid)return null;const t=this.toMillis();return t<0||t>=864e5?null:(e={suppressMilliseconds:!1,suppressSeconds:!1,includePrefix:!1,format:"extended",...e,includeOffset:!1},es.fromMillis(t,{zone:"UTC"}).toISOTime(e))}toJSON(){return this.toISO()}toString(){return this.toISO()}[Symbol.for("nodejs.util.inspect.custom")](){return this.isValid?`Duration { values: ${JSON.stringify(this.values)} }`:`Duration { Invalid, reason: ${this.invalidReason} }`}toMillis(){return this.isValid?io(this.matrix,this.values):NaN}valueOf(){return this.toMillis()}plus(e){if(!this.isValid)return this;const t=ao.fromDurationLike(e),n={};for(const e of to)($r(t.values,e)||$r(this.values,e))&&(n[e]=t.get(e)+this.get(e));return ro(this,{values:n},!0)}minus(e){if(!this.isValid)return this;const t=ao.fromDurationLike(e);return this.plus(t.negate())}mapUnits(e){if(!this.isValid)return this;const t={};for(const n of Object.keys(this.values))t[n]=Hr(e(this.values[n],n));return ro(this,{values:t},!0)}get(e){return this[ao.normalizeUnit(e)]}set(e){return this.isValid?ro(this,{values:{...this.values,...Ur(e,ao.normalizeUnit)}}):this}reconfigure({locale:e,numberingSystem:t,conversionAccuracy:n,matrix:r}={}){return ro(this,{loc:this.loc.clone({locale:e,numberingSystem:t}),matrix:r,conversionAccuracy:n})}as(e){return this.isValid?this.shiftTo(e).get(e):NaN}normalize(){if(!this.isValid)return this;const e=this.toObject();return oo(this.matrix,e),ro(this,{values:e},!0)}rescale(){return this.isValid?ro(this,{values:so(this.normalize().shiftToAll().toObject())},!0):this}shiftTo(...e){if(!this.isValid)return this;if(0===e.length)return this;e=e.map(e=>ao.normalizeUnit(e));const t={},n={},r=this.toObject();let i;for(const o of to)if(e.indexOf(o)>=0){i=o;let e=0;for(const t in n)e+=this.matrix[t][o]*n[t],n[t]=0;kr(r[o])&&(e+=r[o]);const s=Math.trunc(e);t[o]=s,n[o]=(1e3*e-1e3*s)/1e3}else kr(r[o])&&(n[o]=r[o]);for(const e in n)0!==n[e]&&(t[i]+=e===i?n[e]:n[e]/this.matrix[i][e]);return oo(this.matrix,t),ro(this,{values:t},!0)}shiftToAll(){return this.isValid?this.shiftTo("years","months","weeks","days","hours","minutes","seconds","milliseconds"):this}negate(){if(!this.isValid)return this;const e={};for(const t of Object.keys(this.values))e[t]=0===this.values[t]?0:-this.values[t];return ro(this,{values:e},!0)}removeZeros(){return this.isValid?ro(this,{values:so(this.values)},!0):this}get years(){return this.isValid?this.values.years||0:NaN}get quarters(){return this.isValid?this.values.quarters||0:NaN}get months(){return this.isValid?this.values.months||0:NaN}get weeks(){return this.isValid?this.values.weeks||0:NaN}get days(){return this.isValid?this.values.days||0:NaN}get hours(){return this.isValid?this.values.hours||0:NaN}get minutes(){return this.isValid?this.values.minutes||0:NaN}get seconds(){return this.isValid?this.values.seconds||0:NaN}get milliseconds(){return this.isValid?this.values.milliseconds||0:NaN}get isValid(){return null===this.invalid}get invalidReason(){return this.invalid?this.invalid.reason:null}get invalidExplanation(){return this.invalid?this.invalid.explanation:null}equals(e){if(!this.isValid||!e.isValid)return!1;if(!this.loc.equals(e.loc))return!1;function t(e,t){return void 0===e||0===e?void 0===t||0===t:e===t}for(const n of to)if(!t(this.values[n],e.values[n]))return!1;return!0}}const lo="Invalid Interval";class co{constructor(e){this.s=e.start,this.e=e.end,this.invalid=e.invalid||null,this.isLuxonInterval=!0}static invalid(e,t=null){if(!e)throw new Yt("need to specify a reason the Interval is invalid");const n=e instanceof sr?e:new sr(e,t);if(or.throwOnInvalid)throw new qt(n);return new co({invalid:n})}static fromDateTimes(e,t){const n=ts(e),r=ts(t),i=function(e,t){return e&&e.isValid?t&&t.isValid?t<e?co.invalid("end before start",`The end of an interval must be after its start, but you had start=${e.toISO()} and end=${t.toISO()}`):null:co.invalid("missing or invalid end"):co.invalid("missing or invalid start")}(n,r);return null==i?new co({start:n,end:r}):i}static after(e,t){const n=ao.fromDurationLike(t),r=ts(e);return co.fromDateTimes(r,r.plus(n))}static before(e,t){const n=ao.fromDurationLike(t),r=ts(e);return co.fromDateTimes(r.minus(n),r)}static fromISO(e,t){const[n,r]=(e||"").split("/",2);if(n&&r){let e,i,o,s;try{e=es.fromISO(n,t),i=e.isValid}catch(r){i=!1}try{o=es.fromISO(r,t),s=o.isValid}catch(r){s=!1}if(i&&s)return co.fromDateTimes(e,o);if(i){const n=ao.fromISO(r,t);if(n.isValid)return co.after(e,n)}else if(s){const e=ao.fromISO(n,t);if(e.isValid)return co.before(o,e)}}return co.invalid("unparsable",`the input "${e}" can't be parsed as ISO 8601`)}static isInterval(e){return e&&e.isLuxonInterval||!1}get start(){return this.isValid?this.s:null}get end(){return this.isValid?this.e:null}get lastDateTime(){return this.isValid&&this.e?this.e.minus(1):null}get isValid(){return null===this.invalidReason}get invalidReason(){return this.invalid?this.invalid.reason:null}get invalidExplanation(){return this.invalid?this.invalid.explanation:null}length(e="milliseconds"){return this.isValid?this.toDuration(e).get(e):NaN}count(e="milliseconds",t){if(!this.isValid)return NaN;const n=this.start.startOf(e,t);let r;return r=t?.useLocaleWeeks?this.end.reconfigure({locale:n.locale}):this.end,r=r.startOf(e,t),Math.floor(r.diff(n,e).get(e))+(r.valueOf()!==this.end.valueOf())}hasSame(e){return!!this.isValid&&(this.isEmpty()||this.e.minus(1).hasSame(this.s,e))}isEmpty(){return this.s.valueOf()===this.e.valueOf()}isAfter(e){return!!this.isValid&&this.s>e}isBefore(e){return!!this.isValid&&this.e<=e}contains(e){return!!this.isValid&&this.s<=e&&this.e>e}set({start:e,end:t}={}){return this.isValid?co.fromDateTimes(e||this.s,t||this.e):this}splitAt(...e){if(!this.isValid)return[];const t=e.map(ts).filter(e=>this.contains(e)).sort((e,t)=>e.toMillis()-t.toMillis()),n=[];let{s:r}=this,i=0;for(;r<this.e;){const e=t[i]||this.e,o=+e>+this.e?this.e:e;n.push(co.fromDateTimes(r,o)),r=o,i+=1}return n}splitBy(e){const t=ao.fromDurationLike(e);if(!this.isValid||!t.isValid||0===t.as("milliseconds"))return[];let n,{s:r}=this,i=1;const o=[];for(;r<this.e;){const e=this.start.plus(t.mapUnits(e=>e*i));n=+e>+this.e?this.e:e,o.push(co.fromDateTimes(r,n)),r=n,i+=1}return o}divideEqually(e){return this.isValid?this.splitBy(this.length()/e).slice(0,e):[]}overlaps(e){return this.e>e.s&&this.s<e.e}abutsStart(e){return!!this.isValid&&+this.e===+e.s}abutsEnd(e){return!!this.isValid&&+e.e===+this.s}engulfs(e){return!!this.isValid&&this.s<=e.s&&this.e>=e.e}equals(e){return!(!this.isValid||!e.isValid)&&this.s.equals(e.s)&&this.e.equals(e.e)}intersection(e){if(!this.isValid)return this;const t=this.s>e.s?this.s:e.s,n=this.e<e.e?this.e:e.e;return t>=n?null:co.fromDateTimes(t,n)}union(e){if(!this.isValid)return this;const t=this.s<e.s?this.s:e.s,n=this.e>e.e?this.e:e.e;return co.fromDateTimes(t,n)}static merge(e){const[t,n]=e.sort((e,t)=>e.s-t.s).reduce(([e,t],n)=>t?t.overlaps(n)||t.abutsStart(n)?[e,t.union(n)]:[e.concat([t]),n]:[e,n],[[],null]);return n&&t.push(n),t}static xor(e){let t=null,n=0;const r=[],i=e.map(e=>[{time:e.s,type:"s"},{time:e.e,type:"e"}]),o=[].concat(...i).sort((e,t)=>e.time-t.time);for(const e of o)n+="s"===e.type?1:-1,1===n?t=e.time:(t&&+t!==+e.time&&r.push(co.fromDateTimes(t,e.time)),t=null);return co.merge(r)}difference(...e){return co.xor([this].concat(e)).map(e=>this.intersection(e)).filter(e=>e&&!e.isEmpty())}toString(){return this.isValid?`[${this.s.toISO()} – ${this.e.toISO()})`:lo}[Symbol.for("nodejs.util.inspect.custom")](){return this.isValid?`Interval { start: ${this.s.toISO()}, end: ${this.e.toISO()} }`:`Interval { Invalid, reason: ${this.invalidReason} }`}toLocaleString(e=Jt,t={}){return this.isValid?ci.create(this.s.loc.clone(t),e).formatInterval(this):lo}toISO(e){return this.isValid?`${this.s.toISO(e)}/${this.e.toISO(e)}`:lo}toISODate(){return this.isValid?`${this.s.toISODate()}/${this.e.toISODate()}`:lo}toISOTime(e){return this.isValid?`${this.s.toISOTime(e)}/${this.e.toISOTime(e)}`:lo}toFormat(e,{separator:t=" – "}={}){return this.isValid?`${this.s.toFormat(e)}${t}${this.e.toFormat(e)}`:lo}toDuration(e,t){return this.isValid?this.e.diff(this.s,e,t):ao.invalid(this.invalidReason)}mapEndpoints(e){return co.fromDateTimes(e(this.s),e(this.e))}}class uo{static hasDST(e=or.defaultZone){const t=es.now().setZone(e).set({month:12});return!e.isUniversal&&t.offset!==t.set({month:6}).offset}static isValidIANAZone(e){return _n.isValidZone(e)}static normalizeZone(e){return Un(e,or.defaultZone)}static getStartOfWeek({locale:e=null,locObj:t=null}={}){return(t||Bn.create(e)).getStartOfWeek()}static getMinimumDaysInFirstWeek({locale:e=null,locObj:t=null}={}){return(t||Bn.create(e)).getMinDaysInFirstWeek()}static getWeekendWeekdays({locale:e=null,locObj:t=null}={}){return(t||Bn.create(e)).getWeekendDays().slice()}static months(e="long",{locale:t=null,numberingSystem:n=null,locObj:r=null,outputCalendar:i="gregory"}={}){return(r||Bn.create(t,n,i)).months(e)}static monthsFormat(e="long",{locale:t=null,numberingSystem:n=null,locObj:r=null,outputCalendar:i="gregory"}={}){return(r||Bn.create(t,n,i)).months(e,!0)}static weekdays(e="long",{locale:t=null,numberingSystem:n=null,locObj:r=null}={}){return(r||Bn.create(t,n,null)).weekdays(e)}static weekdaysFormat(e="long",{locale:t=null,numberingSystem:n=null,locObj:r=null}={}){return(r||Bn.create(t,n,null)).weekdays(e,!0)}static meridiems({locale:e=null}={}){return Bn.create(e).meridiems()}static eras(e="short",{locale:t=null}={}){return Bn.create(t,null,"gregory").eras(e)}static features(){return{relative:Sr(),localeWeek:Cr()}}}function ho(e,t){const n=e=>e.toUTC(0,{keepLocalTime:!0}).startOf("day").valueOf(),r=n(t)-n(e);return Math.floor(ao.fromMillis(r).as("days"))}function mo(e,t=e=>e){return{regex:e,deser:([e])=>t(function(e){let t=parseInt(e,10);if(isNaN(t)){t="";for(let n=0;n<e.length;n++){const r=e.charCodeAt(n);if(-1!==e[n].search(Yn.hanidec))t+=Gn.indexOf(e[n]);else for(const e in Zn){const[n,i]=Zn[e];r>=n&&r<=i&&(t+=r-n)}}return parseInt(t,10)}return t}(e))}}const fo=`[ ${String.fromCharCode(160)}]`,po=new RegExp(fo,"g");function go(e){return e.replace(/\./g,"\\.?").replace(po,fo)}function yo(e){return e.replace(/\./g,"").replace(po," ").toLowerCase()}function vo(e,t){return null===e?null:{regex:RegExp(e.map(go).join("|")),deser:([n])=>e.findIndex(e=>yo(n)===yo(e))+t}}function wo(e,t){return{regex:e,deser:([,e,t])=>Fr(e,t),groups:t}}function bo(e){return{regex:e,deser:([e])=>e}}const xo={year:{"2-digit":"yy",numeric:"yyyyy"},month:{numeric:"M","2-digit":"MM",short:"MMM",long:"MMMM"},day:{numeric:"d","2-digit":"dd"},weekday:{short:"EEE",long:"EEEE"},dayperiod:"a",dayPeriod:"a",hour12:{numeric:"h","2-digit":"hh"},hour24:{numeric:"H","2-digit":"HH"},minute:{numeric:"m","2-digit":"mm"},second:{numeric:"s","2-digit":"ss"},timeZoneName:{long:"ZZZZZ",short:"ZZZ"}};let ko=null;function No(e,t){return[].concat(...e.map(e=>function(e,t){if(e.literal)return e;const n=_o(ci.macroTokenToFormatOpts(e.val),t);return null==n||n.includes(void 0)?e:n}(e,t)))}class So{constructor(e,t){if(this.locale=e,this.format=t,this.tokens=No(ci.parseFormat(t),e),this.units=this.tokens.map(t=>function(e,t){const n=Qn(t),r=Qn(t,"{2}"),i=Qn(t,"{3}"),o=Qn(t,"{4}"),s=Qn(t,"{6}"),a=Qn(t,"{1,2}"),l=Qn(t,"{1,3}"),c=Qn(t,"{1,6}"),d=Qn(t,"{1,9}"),u=Qn(t,"{2,4}"),h=Qn(t,"{4,6}"),m=e=>{return{regex:RegExp((t=e.val,t.replace(/[\-\[\]{}()*+?.,\\\^$|#\s]/g,"\\$&"))),deser:([e])=>e,literal:!0};var t},f=(f=>{if(e.literal)return m(f);switch(f.val){case"G":return vo(t.eras("short"),0);case"GG":return vo(t.eras("long"),0);case"y":return mo(c);case"yy":case"kk":return mo(u,Br);case"yyyy":case"kkkk":return mo(o);case"yyyyy":return mo(h);case"yyyyyy":return mo(s);case"M":case"L":case"d":case"H":case"h":case"m":case"q":case"s":case"W":return mo(a);case"MM":case"LL":case"dd":case"HH":case"hh":case"mm":case"qq":case"ss":case"WW":return mo(r);case"MMM":return vo(t.months("short",!0),1);case"MMMM":return vo(t.months("long",!0),1);case"LLL":return vo(t.months("short",!1),1);case"LLLL":return vo(t.months("long",!1),1);case"o":case"S":return mo(l);case"ooo":case"SSS":return mo(i);case"u":return bo(d);case"uu":return bo(a);case"uuu":case"E":case"c":return mo(n);case"a":return vo(t.meridiems(),0);case"EEE":return vo(t.weekdays("short",!1),1);case"EEEE":return vo(t.weekdays("long",!1),1);case"ccc":return vo(t.weekdays("short",!0),1);case"cccc":return vo(t.weekdays("long",!0),1);case"Z":case"ZZ":return wo(new RegExp(`([+-]${a.source})(?::(${r.source}))?`),2);case"ZZZ":return wo(new RegExp(`([+-]${a.source})(${r.source})?`),2);case"z":return bo(/[a-z_+-/]{1,256}?/i);case" ":return bo(/[^\S\n\r]/);default:return m(f)}})(e)||{invalidReason:"missing Intl.DateTimeFormat.formatToParts support"};return f.token=e,f}(t,e)),this.disqualifyingUnit=this.units.find(e=>e.invalidReason),!this.disqualifyingUnit){const[e,t]=function(e){const t=e.map(e=>e.regex).reduce((e,t)=>`${e}(${t.source})`,"");return[`^${t}$`,e]}(this.units);this.regex=RegExp(e,"i"),this.handlers=t}}explainFromTokens(e){if(this.isValid){const[t,n]=function(e,t,n){const r=e.match(t);if(r){const e={};let t=1;for(const i in n)if($r(n,i)){const o=n[i],s=o.groups?o.groups+1:1;!o.literal&&o.token&&(e[o.token.val[0]]=o.deser(r.slice(t,t+s))),t+=s}return[r,e]}return[r,{}]}(e,this.regex,this.handlers),[r,i,o]=n?function(e){let t,n=null;xr(e.z)||(n=_n.create(e.z)),xr(e.Z)||(n||(n=new Fn(e.Z)),t=e.Z),xr(e.q)||(e.M=3*(e.q-1)+1),xr(e.h)||(e.h<12&&1===e.a?e.h+=12:12===e.h&&0===e.a&&(e.h=0)),0===e.G&&e.y&&(e.y=-e.y),xr(e.u)||(e.S=Dr(e.u));const r=Object.keys(e).reduce((t,n)=>{const r=(e=>{switch(e){case"S":return"millisecond";case"s":return"second";case"m":return"minute";case"h":case"H":return"hour";case"d":return"day";case"o":return"ordinal";case"L":case"M":return"month";case"y":return"year";case"E":case"c":return"weekday";case"W":return"weekNumber";case"k":return"weekYear";case"q":return"quarter";default:return null}})(n);return r&&(t[r]=e[n]),t},{});return[r,n,t]}(n):[null,null,void 0];if($r(n,"a")&&$r(n,"H"))throw new Ht("Can't include meridiem when specifying 24-hour format");return{input:e,tokens:this.tokens,regex:this.regex,rawMatches:t,matches:n,result:r,zone:i,specificOffset:o}}return{input:e,tokens:this.tokens,invalidReason:this.invalidReason}}get isValid(){return!this.disqualifyingUnit}get invalidReason(){return this.disqualifyingUnit?this.disqualifyingUnit.invalidReason:null}}function Co(e,t,n){return new So(e,n).explainFromTokens(t)}function _o(e,t){if(!e)return null;const n=ci.create(t,e).dtFormatter((ko||(ko=es.fromMillis(1555555555555)),ko)),r=n.formatToParts(),i=n.resolvedOptions();return r.map(t=>function(e,t,n){const{type:r,value:i}=e;if("literal"===r){const e=/^\s+$/.test(i);return{literal:!e,val:e?" ":i}}const o=t[r];let s=r;"hour"===r&&(s=null!=t.hour12?t.hour12?"hour12":"hour24":null!=t.hourCycle?"h11"===t.hourCycle||"h12"===t.hourCycle?"hour12":"hour24":n.hour12?"hour12":"hour24");let a=xo[s];if("object"==typeof a&&(a=a[o]),a)return{literal:!1,val:a}}(t,e,i))}const $o="Invalid DateTime",Io=864e13;function To(e){return new sr("unsupported zone",`the zone "${e.name}" is not supported`)}function Eo(e){return null===e.weekData&&(e.weekData=fr(e.c)),e.weekData}function Po(e){return null===e.localWeekData&&(e.localWeekData=fr(e.c,e.loc.getMinDaysInFirstWeek(),e.loc.getStartOfWeek())),e.localWeekData}function zo(e,t){const n={ts:e.ts,zone:e.zone,c:e.c,o:e.o,loc:e.loc,invalid:e.invalid};return new es({...n,...t,old:n})}function Do(e,t,n){let r=e-60*t*1e3;const i=n.offset(r);if(t===i)return[r,t];r-=60*(i-t)*1e3;const o=n.offset(r);return i===o?[r,i]:[e-60*Math.min(i,o)*1e3,Math.max(i,o)]}function Ro(e,t){const n=new Date(e+=60*t*1e3);return{year:n.getUTCFullYear(),month:n.getUTCMonth()+1,day:n.getUTCDate(),hour:n.getUTCHours(),minute:n.getUTCMinutes(),second:n.getUTCSeconds(),millisecond:n.getUTCMilliseconds()}}function Mo(e,t,n){return Do(Wr(e),t,n)}function Oo(e,t){const n=e.o,r=e.c.year+Math.trunc(t.years),i=e.c.month+Math.trunc(t.months)+3*Math.trunc(t.quarters),o={...e.c,year:r,month:i,day:Math.min(e.c.day,jr(r,i))+Math.trunc(t.days)+7*Math.trunc(t.weeks)},s=ao.fromObject({years:t.years-Math.trunc(t.years),quarters:t.quarters-Math.trunc(t.quarters),months:t.months-Math.trunc(t.months),weeks:t.weeks-Math.trunc(t.weeks),days:t.days-Math.trunc(t.days),hours:t.hours,minutes:t.minutes,seconds:t.seconds,milliseconds:t.milliseconds}).as("milliseconds"),a=Wr(o);let[l,c]=Do(a,n,e.zone);return 0!==s&&(l+=s,c=e.zone.offset(l)),{ts:l,o:c}}function jo(e,t,n,r,i,o){const{setZone:s,zone:a}=n;if(e&&0!==Object.keys(e).length||t){const r=t||a,i=es.fromObject(e,{...n,zone:r,specificOffset:o});return s?i:i.setZone(a)}return es.invalid(new sr("unparsable",`the input "${i}" can't be parsed as ${r}`))}function Wo(e,t,n=!0){return e.isValid?ci.create(Bn.create("en-US"),{allowZ:n,forceSimple:!0}).formatDateTimeFromString(e,t):null}function Ao(e,t,n){const r=e.c.year>9999||e.c.year<0;let i="";if(r&&e.c.year>=0&&(i+="+"),i+=Er(e.c.year,r?6:4),"year"===n)return i;if(t){if(i+="-",i+=Er(e.c.month),"month"===n)return i;i+="-"}else if(i+=Er(e.c.month),"month"===n)return i;return i+=Er(e.c.day),i}function Lo(e,t,n,r,i,o,s){let a=!n||0!==e.c.millisecond||0!==e.c.second,l="";switch(s){case"day":case"month":case"year":break;default:if(l+=Er(e.c.hour),"hour"===s)break;if(t){if(l+=":",l+=Er(e.c.minute),"minute"===s)break;a&&(l+=":",l+=Er(e.c.second))}else{if(l+=Er(e.c.minute),"minute"===s)break;a&&(l+=Er(e.c.second))}if("second"===s)break;!a||r&&0===e.c.millisecond||(l+=".",l+=Er(e.c.millisecond,3))}return i&&(e.isOffsetFixed&&0===e.offset&&!o?l+="Z":e.o<0?(l+="-",l+=Er(Math.trunc(-e.o/60)),l+=":",l+=Er(Math.trunc(-e.o%60))):(l+="+",l+=Er(Math.trunc(e.o/60)),l+=":",l+=Er(Math.trunc(e.o%60)))),o&&(l+="["+e.zone.ianaName+"]"),l}const Bo={month:1,day:1,hour:0,minute:0,second:0,millisecond:0},qo={weekNumber:1,weekday:1,hour:0,minute:0,second:0,millisecond:0},Fo={ordinal:1,hour:0,minute:0,second:0,millisecond:0},Ho=["year","month","day","hour","minute","second","millisecond"],Uo=["weekYear","weekNumber","weekday","hour","minute","second","millisecond"],Yo=["year","ordinal","hour","minute","second","millisecond"];function Zo(e){const t={year:"year",years:"year",month:"month",months:"month",day:"day",days:"day",hour:"hour",hours:"hour",minute:"minute",minutes:"minute",quarter:"quarter",quarters:"quarter",second:"second",seconds:"second",millisecond:"millisecond",milliseconds:"millisecond",weekday:"weekday",weekdays:"weekday",weeknumber:"weekNumber",weeksnumber:"weekNumber",weeknumbers:"weekNumber",weekyear:"weekYear",weekyears:"weekYear",ordinal:"ordinal"}[e.toLowerCase()];if(!t)throw new Ut(e);return t}function Go(e){switch(e.toLowerCase()){case"localweekday":case"localweekdays":return"localWeekday";case"localweeknumber":case"localweeknumbers":return"localWeekNumber";case"localweekyear":case"localweekyears":return"localWeekYear";default:return Zo(e)}}function Vo(e,t){const n=Un(t.zone,or.defaultZone);if(!n.isValid)return es.invalid(To(n));const r=Bn.fromObject(t);let i,o;if(xr(e.year))i=or.now();else{for(const t of Ho)xr(e[t])&&(e[t]=Bo[t]);const t=wr(e)||br(e);if(t)return es.invalid(t);const r=function(e){if(void 0===Ko&&(Ko=or.now()),"iana"!==e.type)return e.offset(Ko);const t=e.name;let n=Xo.get(t);return void 0===n&&(n=e.offset(Ko),Xo.set(t,n)),n}(n);[i,o]=Mo(e,r,n)}return new es({ts:i,zone:n,loc:r,o:o})}function Qo(e,t,n){const r=!!xr(n.round)||n.round,i=xr(n.rounding)?"trunc":n.rounding,o=(e,o)=>(e=Rr(e,r||n.calendary?0:2,n.calendary?"round":i),t.loc.clone(n).relFormatter(n).format(e,o)),s=r=>n.calendary?t.hasSame(e,r)?0:t.startOf(r).diff(e.startOf(r),r).get(r):t.diff(e,r).get(r);if(n.unit)return o(s(n.unit),n.unit);for(const e of n.units){const t=s(e);if(Math.abs(t)>=1)return o(t,e)}return o(e>t?-0:0,n.units[n.units.length-1])}function Jo(e){let t,n={};return e.length>0&&"object"==typeof e[e.length-1]?(n=e[e.length-1],t=Array.from(e).slice(0,e.length-1)):t=Array.from(e),[n,t]}let Ko;const Xo=new Map;class es{constructor(e){const t=e.zone||or.defaultZone;let n=e.invalid||(Number.isNaN(e.ts)?new sr("invalid input"):null)||(t.isValid?null:To(t));this.ts=xr(e.ts)?or.now():e.ts;let r=null,i=null;if(!n)if(e.old&&e.old.ts===this.ts&&e.old.zone.equals(t))[r,i]=[e.old.c,e.old.o];else{const o=kr(e.o)&&!e.old?e.o:t.offset(this.ts);r=Ro(this.ts,o),n=Number.isNaN(r.year)?new sr("invalid input"):null,r=n?null:r,i=n?null:o}this.ie=t,this.loc=e.loc||Bn.create(),this.invalid=n,this.weekData=null,this.localWeekData=null,this.c=r,this.o=i,this.isLuxonDateTime=!0}static now(){return new es({})}static local(){const[e,t]=Jo(arguments),[n,r,i,o,s,a,l]=t;return Vo({year:n,month:r,day:i,hour:o,minute:s,second:a,millisecond:l},e)}static utc(){const[e,t]=Jo(arguments),[n,r,i,o,s,a,l]=t;return e.zone=Fn.utcInstance,Vo({year:n,month:r,day:i,hour:o,minute:s,second:a,millisecond:l},e)}static fromJSDate(e,t={}){const n=function(e){return"[object Date]"==={}.toString.call(e)}(e)?e.valueOf():NaN;if(Number.isNaN(n))return es.invalid("invalid input");const r=Un(t.zone,or.defaultZone);return r.isValid?new es({ts:n,zone:r,loc:Bn.fromObject(t)}):es.invalid(To(r))}static fromMillis(e,t={}){if(kr(e))return e<-Io||e>Io?es.invalid("Timestamp out of range"):new es({ts:e,zone:Un(t.zone,or.defaultZone),loc:Bn.fromObject(t)});throw new Yt(`fromMillis requires a numerical input, but received a ${typeof e} with value ${e}`)}static fromSeconds(e,t={}){if(kr(e))return new es({ts:1e3*e,zone:Un(t.zone,or.defaultZone),loc:Bn.fromObject(t)});throw new Yt("fromSeconds requires a numerical input")}static fromObject(e,t={}){e=e||{};const n=Un(t.zone,or.defaultZone);if(!n.isValid)return es.invalid(To(n));const r=Bn.fromObject(t),i=Ur(e,Go),{minDaysInFirstWeek:o,startOfWeek:s}=vr(i,r),a=or.now(),l=xr(t.specificOffset)?n.offset(a):t.specificOffset,c=!xr(i.ordinal),d=!xr(i.year),u=!xr(i.month)||!xr(i.day),h=d||u,m=i.weekYear||i.weekNumber;if((h||c)&&m)throw new Ht("Can't mix weekYear/weekNumber units with year/month/day or ordinals");if(u&&c)throw new Ht("Can't mix ordinal dates with month/day");const f=m||i.weekday&&!h;let p,g,y=Ro(a,l);f?(p=Uo,g=qo,y=fr(y,o,s)):c?(p=Yo,g=Fo,y=gr(y)):(p=Ho,g=Bo);let v=!1;for(const e of p)xr(i[e])?i[e]=v?g[e]:y[e]:v=!0;const w=f?function(e,t=4,n=1){const r=Nr(e.weekYear),i=Tr(e.weekNumber,1,Lr(e.weekYear,t,n)),o=Tr(e.weekday,1,7);return r?i?!o&&cr("weekday",e.weekday):cr("week",e.weekNumber):cr("weekYear",e.weekYear)}(i,o,s):c?function(e){const t=Nr(e.year),n=Tr(e.ordinal,1,Or(e.year));return t?!n&&cr("ordinal",e.ordinal):cr("year",e.year)}(i):wr(i),b=w||br(i);if(b)return es.invalid(b);const x=f?pr(i,o,s):c?yr(i):i,[k,N]=Mo(x,l,n),S=new es({ts:k,zone:n,o:N,loc:r});return i.weekday&&h&&e.weekday!==S.weekday?es.invalid("mismatched weekday",`you can't specify both a weekday of ${i.weekday} and a date of ${S.toISO()}`):S.isValid?S:es.invalid(S.invalid)}static fromISO(e,t={}){const[n,r]=function(e){return mi(e,[Ai,Fi],[Li,Hi],[Bi,Ui],[qi,Yi])}(e);return jo(n,r,t,"ISO 8601",e)}static fromRFC2822(e,t={}){const[n,r]=function(e){return mi(function(e){return e.replace(/\([^()]*\)|[\n\t]/g," ").replace(/(\s\s+)/g," ").trim()}(e),[zi,Di])}(e);return jo(n,r,t,"RFC 2822",e)}static fromHTTP(e,t={}){const[n,r]=function(e){return mi(e,[Ri,ji],[Mi,ji],[Oi,Wi])}(e);return jo(n,r,t,"HTTP",t)}static fromFormat(e,t,n={}){if(xr(e)||xr(t))throw new Yt("fromFormat requires an input string and a format");const{locale:r=null,numberingSystem:i=null}=n,o=Bn.fromOpts({locale:r,numberingSystem:i,defaultToEN:!0}),[s,a,l,c]=function(e,t,n){const{result:r,zone:i,specificOffset:o,invalidReason:s}=Co(e,t,n);return[r,i,o,s]}(o,e,t);return c?es.invalid(c):jo(s,a,n,`format ${t}`,e,l)}static fromString(e,t,n={}){return es.fromFormat(e,t,n)}static fromSQL(e,t={}){const[n,r]=function(e){return mi(e,[Gi,Fi],[Vi,Qi])}(e);return jo(n,r,t,"SQL",e)}static invalid(e,t=null){if(!e)throw new Yt("need to specify a reason the DateTime is invalid");const n=e instanceof sr?e:new sr(e,t);if(or.throwOnInvalid)throw new Bt(n);return new es({invalid:n})}static isDateTime(e){return e&&e.isLuxonDateTime||!1}static parseFormatForOpts(e,t={}){const n=_o(e,Bn.fromObject(t));return n?n.map(e=>e?e.val:null).join(""):null}static expandFormat(e,t={}){return No(ci.parseFormat(e),Bn.fromObject(t)).map(e=>e.val).join("")}static resetCache(){Ko=void 0,Xo.clear()}get(e){return this[e]}get isValid(){return null===this.invalid}get invalidReason(){return this.invalid?this.invalid.reason:null}get invalidExplanation(){return this.invalid?this.invalid.explanation:null}get locale(){return this.isValid?this.loc.locale:null}get numberingSystem(){return this.isValid?this.loc.numberingSystem:null}get outputCalendar(){return this.isValid?this.loc.outputCalendar:null}get zone(){return this.ie}get zoneName(){return this.isValid?this.zone.name:null}get year(){return this.isValid?this.c.year:NaN}get quarter(){return this.isValid?Math.ceil(this.c.month/3):NaN}get month(){return this.isValid?this.c.month:NaN}get day(){return this.isValid?this.c.day:NaN}get hour(){return this.isValid?this.c.hour:NaN}get minute(){return this.isValid?this.c.minute:NaN}get second(){return this.isValid?this.c.second:NaN}get millisecond(){return this.isValid?this.c.millisecond:NaN}get weekYear(){return this.isValid?Eo(this).weekYear:NaN}get weekNumber(){return this.isValid?Eo(this).weekNumber:NaN}get weekday(){return this.isValid?Eo(this).weekday:NaN}get isWeekend(){return this.isValid&&this.loc.getWeekendDays().includes(this.weekday)}get localWeekday(){return this.isValid?Po(this).weekday:NaN}get localWeekNumber(){return this.isValid?Po(this).weekNumber:NaN}get localWeekYear(){return this.isValid?Po(this).weekYear:NaN}get ordinal(){return this.isValid?gr(this.c).ordinal:NaN}get monthShort(){return this.isValid?uo.months("short",{locObj:this.loc})[this.month-1]:null}get monthLong(){return this.isValid?uo.months("long",{locObj:this.loc})[this.month-1]:null}get weekdayShort(){return this.isValid?uo.weekdays("short",{locObj:this.loc})[this.weekday-1]:null}get weekdayLong(){return this.isValid?uo.weekdays("long",{locObj:this.loc})[this.weekday-1]:null}get offset(){return this.isValid?+this.o:NaN}get offsetNameShort(){return this.isValid?this.zone.offsetName(this.ts,{format:"short",locale:this.locale}):null}get offsetNameLong(){return this.isValid?this.zone.offsetName(this.ts,{format:"long",locale:this.locale}):null}get isOffsetFixed(){return this.isValid?this.zone.isUniversal:null}get isInDST(){return!this.isOffsetFixed&&(this.offset>this.set({month:1,day:1}).offset||this.offset>this.set({month:5}).offset)}getPossibleOffsets(){if(!this.isValid||this.isOffsetFixed)return[this];const e=864e5,t=6e4,n=Wr(this.c),r=this.zone.offset(n-e),i=this.zone.offset(n+e),o=this.zone.offset(n-r*t),s=this.zone.offset(n-i*t);if(o===s)return[this];const a=n-o*t,l=n-s*t,c=Ro(a,o),d=Ro(l,s);return c.hour===d.hour&&c.minute===d.minute&&c.second===d.second&&c.millisecond===d.millisecond?[zo(this,{ts:a}),zo(this,{ts:l})]:[this]}get isInLeapYear(){return Mr(this.year)}get daysInMonth(){return jr(this.year,this.month)}get daysInYear(){return this.isValid?Or(this.year):NaN}get weeksInWeekYear(){return this.isValid?Lr(this.weekYear):NaN}get weeksInLocalWeekYear(){return this.isValid?Lr(this.localWeekYear,this.loc.getMinDaysInFirstWeek(),this.loc.getStartOfWeek()):NaN}resolvedLocaleOptions(e={}){const{locale:t,numberingSystem:n,calendar:r}=ci.create(this.loc.clone(e),e).resolvedOptions(this);return{locale:t,numberingSystem:n,outputCalendar:r}}toUTC(e=0,t={}){return this.setZone(Fn.instance(e),t)}toLocal(){return this.setZone(or.defaultZone)}setZone(e,{keepLocalTime:t=!1,keepCalendarTime:n=!1}={}){if((e=Un(e,or.defaultZone)).equals(this.zone))return this;if(e.isValid){let r=this.ts;if(t||n){const t=e.offset(this.ts),n=this.toObject();[r]=Mo(n,t,e)}return zo(this,{ts:r,zone:e})}return es.invalid(To(e))}reconfigure({locale:e,numberingSystem:t,outputCalendar:n}={}){return zo(this,{loc:this.loc.clone({locale:e,numberingSystem:t,outputCalendar:n})})}setLocale(e){return this.reconfigure({locale:e})}set(e){if(!this.isValid)return this;const t=Ur(e,Go),{minDaysInFirstWeek:n,startOfWeek:r}=vr(t,this.loc),i=!xr(t.weekYear)||!xr(t.weekNumber)||!xr(t.weekday),o=!xr(t.ordinal),s=!xr(t.year),a=!xr(t.month)||!xr(t.day),l=s||a,c=t.weekYear||t.weekNumber;if((l||o)&&c)throw new Ht("Can't mix weekYear/weekNumber units with year/month/day or ordinals");if(a&&o)throw new Ht("Can't mix ordinal dates with month/day");let d;i?d=pr({...fr(this.c,n,r),...t},n,r):xr(t.ordinal)?(d={...this.toObject(),...t},xr(t.day)&&(d.day=Math.min(jr(d.year,d.month),d.day))):d=yr({...gr(this.c),...t});const[u,h]=Mo(d,this.o,this.zone);return zo(this,{ts:u,o:h})}plus(e){return this.isValid?zo(this,Oo(this,ao.fromDurationLike(e))):this}minus(e){return this.isValid?zo(this,Oo(this,ao.fromDurationLike(e).negate())):this}startOf(e,{useLocaleWeeks:t=!1}={}){if(!this.isValid)return this;const n={},r=ao.normalizeUnit(e);switch(r){case"years":n.month=1;case"quarters":case"months":n.day=1;case"weeks":case"days":n.hour=0;case"hours":n.minute=0;case"minutes":n.second=0;case"seconds":n.millisecond=0}if("weeks"===r)if(t){const e=this.loc.getStartOfWeek(),{weekday:t}=this;t<e&&(n.weekNumber=this.weekNumber-1),n.weekday=e}else n.weekday=1;if("quarters"===r){const e=Math.ceil(this.month/3);n.month=3*(e-1)+1}return this.set(n)}endOf(e,t){return this.isValid?this.plus({[e]:1}).startOf(e,t).minus(1):this}toFormat(e,t={}){return this.isValid?ci.create(this.loc.redefaultToEN(t)).formatDateTimeFromString(this,e):$o}toLocaleString(e=Jt,t={}){return this.isValid?ci.create(this.loc.clone(t),e).formatDateTime(this):$o}toLocaleParts(e={}){return this.isValid?ci.create(this.loc.clone(e),e).formatDateTimeParts(this):[]}toISO({format:e="extended",suppressSeconds:t=!1,suppressMilliseconds:n=!1,includeOffset:r=!0,extendedZone:i=!1,precision:o="milliseconds"}={}){if(!this.isValid)return null;const s="extended"===e;let a=Ao(this,s,o=Zo(o));return Ho.indexOf(o)>=3&&(a+="T"),a+=Lo(this,s,t,n,r,i,o),a}toISODate({format:e="extended",precision:t="day"}={}){return this.isValid?Ao(this,"extended"===e,Zo(t)):null}toISOWeekDate(){return Wo(this,"kkkk-'W'WW-c")}toISOTime({suppressMilliseconds:e=!1,suppressSeconds:t=!1,includeOffset:n=!0,includePrefix:r=!1,extendedZone:i=!1,format:o="extended",precision:s="milliseconds"}={}){return this.isValid?(s=Zo(s),(r&&Ho.indexOf(s)>=3?"T":"")+Lo(this,"extended"===o,t,e,n,i,s)):null}toRFC2822(){return Wo(this,"EEE, dd LLL yyyy HH:mm:ss ZZZ",!1)}toHTTP(){return Wo(this.toUTC(),"EEE, dd LLL yyyy HH:mm:ss 'GMT'")}toSQLDate(){return this.isValid?Ao(this,!0):null}toSQLTime({includeOffset:e=!0,includeZone:t=!1,includeOffsetSpace:n=!0}={}){let r="HH:mm:ss.SSS";return(t||e)&&(n&&(r+=" "),t?r+="z":e&&(r+="ZZ")),Wo(this,r,!0)}toSQL(e={}){return this.isValid?`${this.toSQLDate()} ${this.toSQLTime(e)}`:null}toString(){return this.isValid?this.toISO():$o}[Symbol.for("nodejs.util.inspect.custom")](){return this.isValid?`DateTime { ts: ${this.toISO()}, zone: ${this.zone.name}, locale: ${this.locale} }`:`DateTime { Invalid, reason: ${this.invalidReason} }`}valueOf(){return this.toMillis()}toMillis(){return this.isValid?this.ts:NaN}toSeconds(){return this.isValid?this.ts/1e3:NaN}toUnixInteger(){return this.isValid?Math.floor(this.ts/1e3):NaN}toJSON(){return this.toISO()}toBSON(){return this.toJSDate()}toObject(e={}){if(!this.isValid)return{};const t={...this.c};return e.includeConfig&&(t.outputCalendar=this.outputCalendar,t.numberingSystem=this.loc.numberingSystem,t.locale=this.loc.locale),t}toJSDate(){return new Date(this.isValid?this.ts:NaN)}diff(e,t="milliseconds",n={}){if(!this.isValid||!e.isValid)return ao.invalid("created by diffing an invalid DateTime");const r={locale:this.locale,numberingSystem:this.numberingSystem,...n},i=(a=t,Array.isArray(a)?a:[a]).map(ao.normalizeUnit),o=e.valueOf()>this.valueOf(),s=function(e,t,n,r){let[i,o,s,a]=function(e,t,n){const r=[["years",(e,t)=>t.year-e.year],["quarters",(e,t)=>t.quarter-e.quarter+4*(t.year-e.year)],["months",(e,t)=>t.month-e.month+12*(t.year-e.year)],["weeks",(e,t)=>{const n=ho(e,t);return(n-n%7)/7}],["days",ho]],i={},o=e;let s,a;for(const[l,c]of r)n.indexOf(l)>=0&&(s=l,i[l]=c(e,t),a=o.plus(i),a>t?(i[l]--,(e=o.plus(i))>t&&(a=e,i[l]--,e=o.plus(i))):e=a);return[e,i,a,s]}(e,t,n);const l=t-i,c=n.filter(e=>["hours","minutes","seconds","milliseconds"].indexOf(e)>=0);0===c.length&&(s<t&&(s=i.plus({[a]:1})),s!==i&&(o[a]=(o[a]||0)+l/(s-i)));const d=ao.fromObject(o,r);return c.length>0?ao.fromMillis(l,r).shiftTo(...c).plus(d):d}(o?this:e,o?e:this,i,r);var a;return o?s.negate():s}diffNow(e="milliseconds",t={}){return this.diff(es.now(),e,t)}until(e){return this.isValid?co.fromDateTimes(this,e):this}hasSame(e,t,n){if(!this.isValid)return!1;const r=e.valueOf(),i=this.setZone(e.zone,{keepLocalTime:!0});return i.startOf(t,n)<=r&&r<=i.endOf(t,n)}equals(e){return this.isValid&&e.isValid&&this.valueOf()===e.valueOf()&&this.zone.equals(e.zone)&&this.loc.equals(e.loc)}toRelative(e={}){if(!this.isValid)return null;const t=e.base||es.fromObject({},{zone:this.zone}),n=e.padding?this<t?-e.padding:e.padding:0;let r=["years","months","days","hours","minutes","seconds"],i=e.unit;return Array.isArray(e.unit)&&(r=e.unit,i=void 0),Qo(t,this.plus(n),{...e,numeric:"always",units:r,unit:i})}toRelativeCalendar(e={}){return this.isValid?Qo(e.base||es.fromObject({},{zone:this.zone}),this,{...e,numeric:"auto",units:["years","months","days"],calendary:!0}):null}static min(...e){if(!e.every(es.isDateTime))throw new Yt("min requires all arguments be DateTimes");return _r(e,e=>e.valueOf(),Math.min)}static max(...e){if(!e.every(es.isDateTime))throw new Yt("max requires all arguments be DateTimes");return _r(e,e=>e.valueOf(),Math.max)}static fromFormatExplain(e,t,n={}){const{locale:r=null,numberingSystem:i=null}=n;return Co(Bn.fromOpts({locale:r,numberingSystem:i,defaultToEN:!0}),e,t)}static fromStringExplain(e,t,n={}){return es.fromFormatExplain(e,t,n)}static buildFormatParser(e,t={}){const{locale:n=null,numberingSystem:r=null}=t,i=Bn.fromOpts({locale:n,numberingSystem:r,defaultToEN:!0});return new So(i,e)}static fromFormatParser(e,t,n={}){if(xr(e)||xr(t))throw new Yt("fromFormatParser requires an input string and a format parser");const{locale:r=null,numberingSystem:i=null}=n,o=Bn.fromOpts({locale:r,numberingSystem:i,defaultToEN:!0});if(!o.equals(t.locale))throw new Yt(`fromFormatParser called with a locale of ${o}, but the format parser was created for ${t.locale}`);const{result:s,zone:a,specificOffset:l,invalidReason:c}=t.explainFromTokens(e);return c?es.invalid(c):jo(s,a,n,`format ${t.format}`,e,l)}static get DATE_SHORT(){return Jt}static get DATE_MED(){return Kt}static get DATE_MED_WITH_WEEKDAY(){return Xt}static get DATE_FULL(){return en}static get DATE_HUGE(){return tn}static get TIME_SIMPLE(){return nn}static get TIME_WITH_SECONDS(){return rn}static get TIME_WITH_SHORT_OFFSET(){return on}static get TIME_WITH_LONG_OFFSET(){return sn}static get TIME_24_SIMPLE(){return an}static get TIME_24_WITH_SECONDS(){return ln}static get TIME_24_WITH_SHORT_OFFSET(){return cn}static get TIME_24_WITH_LONG_OFFSET(){return dn}static get DATETIME_SHORT(){return un}static get DATETIME_SHORT_WITH_SECONDS(){return hn}static get DATETIME_MED(){return mn}static get DATETIME_MED_WITH_SECONDS(){return fn}static get DATETIME_MED_WITH_WEEKDAY(){return pn}static get DATETIME_FULL(){return gn}static get DATETIME_FULL_WITH_SECONDS(){return yn}static get DATETIME_HUGE(){return vn}static get DATETIME_HUGE_WITH_SECONDS(){return wn}}function ts(e){if(es.isDateTime(e))return e;if(e&&e.valueOf&&kr(e.valueOf()))return es.fromJSDate(e);if(e&&"object"==typeof e)return es.fromObject(e);throw new Yt(`Unknown datetime argument: ${e}, of type ${typeof e}`)}function ns({title:e,description:t,children:n,noSubscription:r,hideHeader:i}){return Fe("div",{className:$t.create("page-container",{minHeight:"100vh",display:"flex",flexDirection:"column",backgroundColor:bt.colors.accent}),children:Fe("div",{className:$t.create("page-content-container",{maxWidth:"1200px",margin:"0 auto",width:"100%",flex:"1",boxSizing:"border-box",overflowX:"hidden"}),children:[!i&&Fe("div",{className:$t.create("page-heading-wrapper",{width:"100%",marginBottom:bt.spacing.lg}),children:Fe(Mt,{children:Fe("div",{className:$t.create("page-heading-container",{backgroundColor:bt.colors.primary,color:bt.colors.primaryForeground,borderRadius:bt.radius.large,padding:`${bt.spacing.lg} ${bt.spacing.xl}`,boxShadow:bt.shadow.md}),children:Fe("div",{className:$t.create("page-heading-content",{display:"flex",alignItems:"center",justifyContent:"space-between",gap:bt.spacing.lg}),children:Fe("div",{className:$t.create("page-heading-text",{flex:"1",minWidth:"0"}),children:[Fe("h1",{className:$t.create("page-template-title",{margin:"0",fontSize:"1.5rem",fontWeight:"700",lineHeight:"1.3",color:bt.colors.primaryForeground,letterSpacing:"-0.025em"}),children:e}),t&&Fe("p",{className:$t.create("page-template-description",{margin:"0",marginTop:bt.spacing.sm,fontSize:bt.fontSize.small,lineHeight:"1.5",color:bt.colors.primaryForeground,opacity:"0.85"}),children:t})]})})})})}),n]})})}function rs({title:e="Loading",message:t}){const n=$t.create("loading-container",{display:"flex",flexDirection:"column",justifyContent:"center",alignItems:"center",gap:bt.spacing.md,minHeight:"500px"}),r=$t.create("loading-title",{margin:"0",fontSize:"1.125rem",fontWeight:"600",color:bt.colors.foreground,letterSpacing:"-0.01em"}),i=$t.create("loading-message",{margin:"0",fontSize:bt.fontSize.small,color:bt.colors.mutedForeground}),o=$t.create("loading-text-group",{display:"flex",flexDirection:"column",alignItems:"center",gap:"0.25rem",textAlign:"center"});return Fe(ns,{title:"Loading",noSubscription:!0,hideHeader:!0,children:Fe(Mt,{children:Fe("div",{className:n,children:[Fe(Rt,{size:"large"}),Fe("div",{className:o,children:[Fe("p",{className:r,children:e}),t&&Fe("p",{className:i,children:t})]})]})})})}function is({variant:e="primary",type:t="button",onClick:n,disabled:r,loading:i=!1,children:o,className:s,...a}){const l={primary:{backgroundColor:bt.colors.primary,color:bt.colors.primaryForeground,boxShadow:bt.shadow.sm},outline:{border:`${bt.borderWidth} solid ${bt.colors.primary}`,backgroundColor:bt.colors.card,color:bt.colors.primary,boxShadow:bt.shadow.sm}},c=$t.create("button",{height:"2.75rem",paddingLeft:"1.5rem",paddingRight:"1.5rem",paddingTop:"0.625rem",paddingBottom:"0.625rem",border:"none",borderRadius:bt.radius.default,cursor:"pointer",fontSize:bt.fontSize.default,fontWeight:"500",transition:bt.transition,fontFamily:bt.fontFamily,display:"flex",alignItems:"center",justifyContent:"center",gap:"0.5rem"},{"(max-width: 600px)":{fontSize:"14px",paddingLeft:"1.25rem",paddingRight:"1.25rem"}}),d=$t.pseudoElement("button",":disabled",{opacity:"50%",cursor:"not-allowed"});$t.pseudoElement(`button-${e}`,":hover:not(:disabled)",{transform:"translateY(-1px)",boxShadow:bt.shadow.md}),$t.pseudoElement(`button-${e}`,":active:not(:disabled)",{transform:"translateY(0)",boxShadow:bt.shadow.sm});const u=$t.create(`button-${e}`,{...l[e]});return Fe("button",{type:t,className:Dt(c,d,u,s),onClick:r||i?void 0:n,disabled:r||i,...a,children:[i&&Fe(Rt,{size:"small"}),o]})}function os({error:e}){const t=e||{title:"Something Went Wrong",message:"We're unable to load the application at this time."},n=t.trackingId?t.trackingId.replace(/[^a-zA-Z0-9]/g,"").slice(0,8).toUpperCase():null;return Fe(ns,{title:t.title,noSubscription:!0,hideHeader:!0,children:Fe(Mt,{children:Fe("div",{className:$t.create("error-page-layout",{display:"flex",justifyContent:"center",width:"100%"}),children:Fe("div",{className:$t.create("error-page-card",{backgroundColor:bt.colors.card,boxShadow:bt.shadow.sm,borderRadius:bt.radius.large,display:"flex",flexDirection:"column",width:"100%",maxWidth:"500px"}),children:[Fe("div",{className:$t.create("error-page-header",{paddingInline:bt.spacing.xl,paddingTop:bt.spacing.xl,paddingBottom:bt.spacing.lg,textAlign:"center"},{"(max-width: 768px)":{paddingInline:bt.spacing.lg,paddingTop:bt.spacing.lg},"(max-width: 480px)":{paddingInline:bt.spacing.md,paddingTop:bt.spacing.md}}),children:[Fe("div",{className:$t.create("error-page-icon-wrapper",{display:"flex",justifyContent:"center",marginBottom:bt.spacing.lg}),children:Fe("div",{className:$t.create("error-page-icon-circle",{width:"4rem",height:"4rem",borderRadius:"50%",backgroundColor:"rgba(239, 68, 68, 0.1)",display:"flex",alignItems:"center",justifyContent:"center"}),children:Fe("svg",{className:$t.create("error-page-icon",{width:"2rem",height:"2rem",color:bt.colors.destructive}),fill:"none",viewBox:"0 0 24 24",stroke:"currentColor",strokeWidth:2,children:Fe("path",{strokeLinecap:"round",strokeLinejoin:"round",d:"M12 9v2m0 4h.01m-6.938 4h13.856c1.54 0 2.502-1.667 1.732-3L13.732 4c-.77-1.333-2.694-1.333-3.464 0L3.34 16c-.77 1.333.192 3 1.732 3z"})})})}),Fe("h2",{className:$t.create("error-page-title",{margin:"0",marginBottom:bt.spacing.sm,fontSize:"1.75rem",fontWeight:"700",color:bt.colors.primary,lineHeight:"1.1",letterSpacing:"-0.025em"},{"(max-width: 768px)":{fontSize:"1.5rem"},"(max-width: 480px)":{fontSize:"1.25rem"}}),children:t.title}),Fe("p",{className:$t.create("error-page-description",{margin:"0",marginTop:bt.spacing.sm,fontSize:bt.fontSize.default,lineHeight:"1.6",color:bt.colors.mutedForeground}),children:t.message})]}),Fe("div",{className:$t.create("error-page-content",{paddingInline:bt.spacing.xl,paddingBottom:bt.spacing.xl},{"(max-width: 768px)":{paddingInline:bt.spacing.lg,paddingBottom:bt.spacing.lg},"(max-width: 480px)":{paddingInline:bt.spacing.md,paddingBottom:bt.spacing.md}}),children:[n&&Fe("p",{className:$t.create("error-page-support",{margin:"0",marginBottom:bt.spacing.lg,fontSize:bt.fontSize.small,lineHeight:"1.5",color:bt.colors.mutedForeground,textAlign:"center"}),children:["If this problem persists, please contact support with reference"," ",Fe("span",{className:$t.create("error-page-ref",{fontFamily:"monospace",fontWeight:"600",color:bt.colors.foreground}),children:n})]}),Fe(is,{onClick:()=>{window.location.reload()},className:$t.create("error-page-button",{width:"100%"}),children:"Try Again"})]})]})})})})}function ss({className:e,children:t}){const n=$t.create("center",{display:"flex",flexDirection:"column",justifyContent:"center",alignItems:"center",minHeight:"500px"});return Fe("div",{className:Dt(n,e),children:t})}function as({message:e,estimatedTime:t,organisation:n}){const r=(null==n?void 0:n.name)||null,i=(null==n?void 0:n.admin_email)||null,o=(null==n?void 0:n.phone)||null,s=Boolean(i||o),a=$t.create("maintenance-card",{backgroundColor:bt.colors.card,borderRadius:bt.radius.large,padding:bt.spacing.xl,boxShadow:bt.shadow.sm,maxWidth:"42rem",margin:"0 auto"},{"(max-width: 768px)":{padding:bt.spacing.lg},"(max-width: 480px)":{padding:bt.spacing.md}}),l=$t.create("maintenance-icon-container",{display:"flex",justifyContent:"center",marginBottom:bt.spacing.lg}),c=$t.create("maintenance-icon",{width:"4rem",height:"4rem",color:bt.colors.primary}),d=$t.create("maintenance-header",{textAlign:"center",marginBottom:bt.spacing.xl}),u=$t.create("maintenance-title",{fontSize:"2rem",fontWeight:"700",color:bt.colors.primary,marginBottom:bt.spacing.sm,lineHeight:"1.2",letterSpacing:"-0.025em"},{"(max-width: 768px)":{fontSize:"1.75rem"},"(max-width: 480px)":{fontSize:"1.5rem"}}),h=$t.create("maintenance-subtitle",{fontSize:bt.fontSize.default,color:bt.colors.foreground,lineHeight:"1.6",opacity:"0.8"}),m=$t.create("maintenance-estimated-time",{fontSize:bt.fontSize.small,color:bt.colors.mutedForeground,marginTop:bt.spacing.sm}),f=$t.create("maintenance-refresh-actions",{display:"flex",justifyContent:"center",marginBottom:s?"0":bt.spacing.sm}),p=$t.create("maintenance-contact-section",{borderTop:`1px solid ${bt.colors.border}`,paddingTop:bt.spacing.xl,marginTop:bt.spacing.xl,textAlign:"center"}),g=$t.create("maintenance-contact-text",{fontSize:bt.fontSize.default,color:bt.colors.foreground,marginBottom:bt.spacing.lg}),y=$t.create("maintenance-contact-actions",{display:"flex",gap:bt.spacing.md,flexWrap:"wrap",justifyContent:"center"});return Fe(ns,{title:"We'll be right back",description:"Quotes are temporarily unavailable",noSubscription:!0,hideHeader:!0,children:Fe(Mt,{children:Fe(ss,{children:Fe("div",{className:a,children:[Fe("div",{className:l,children:Fe(()=>Fe("svg",{xmlns:"http://www.w3.org/2000/svg",width:"24",height:"24",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor","stroke-width":"2","stroke-linecap":"round","stroke-linejoin":"round",className:c,children:Fe("path",{d:"M14.7 6.3a1 1 0 0 0 0 1.4l1.6 1.6a1 1 0 0 0 1.4 0l3.77-3.77a6 6 0 0 1-7.94 7.94l-6.91 6.91a2.12 2.12 0 0 1-3-3l6.91-6.91a6 6 0 0 1 7.94-7.94l-3.76 3.76z"})}),{})}),Fe("div",{className:d,children:[Fe("h1",{className:u,children:"We'll be right back"}),Fe("p",{className:h,children:e||"We're temporarily unable to issue new quotes. Please try again shortly."}),t&&Fe("p",{className:m,children:[Fe("strong",{children:"Estimated time:"})," ",t]})]}),Fe("div",{className:f,children:Fe(is,{onClick:()=>{window.location.reload()},children:"Refresh Page"})}),s&&Fe("div",{className:p,children:[Fe("p",{className:g,children:r?`Need assistance? Contact ${r}`:"Need assistance? Contact us"}),Fe("div",{className:y,children:[o&&Fe(is,{variant:"outline",onClick:()=>window.open(`tel:${o}`),children:[Fe(()=>Fe("svg",{xmlns:"http://www.w3.org/2000/svg",width:"16",height:"16",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor","stroke-width":"2","stroke-linecap":"round","stroke-linejoin":"round",style:{marginRight:"0.5rem"},children:Fe("path",{d:"M22 16.92v3a2 2 0 0 1-2.18 2 19.79 19.79 0 0 1-8.63-3.07 19.5 19.5 0 0 1-6-6 19.79 19.79 0 0 1-3.07-8.67A2 2 0 0 1 4.11 2h3a2 2 0 0 1 2 1.72 12.84 12.84 0 0 0 .7 2.81 2 2 0 0 1-.45 2.11L8.09 9.91a16 16 0 0 0 6 6l1.27-1.27a2 2 0 0 1 2.11-.45 12.84 12.84 0 0 0 2.81.7A2 2 0 0 1 22 16.92z"})}),{}),"Call Us"]}),i&&Fe(is,{variant:"outline",onClick:()=>window.open(`mailto:${i}`),children:[Fe(()=>Fe("svg",{xmlns:"http://www.w3.org/2000/svg",width:"16",height:"16",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor","stroke-width":"2","stroke-linecap":"round","stroke-linejoin":"round",style:{marginRight:"0.5rem"},children:[Fe("rect",{width:"20",height:"16",x:"2",y:"4",rx:"2"}),Fe("path",{d:"m22 7-8.97 5.7a1.94 1.94 0 0 1-2.06 0L2 7"})]}),{}),"Email Us"]})]})]})]})})})})}function ls({size:e="default",style:t="normal",className:n,children:r}){const i=$t.create("text",{marginTop:"0",marginBottom:"0"}),o=$t.create("text-small",{fontSize:bt.fontSize.small}),s=$t.create("text-default",{fontSize:bt.fontSize.default}),a=$t.create("text-italic",{fontStyle:"italic"}),l=$t.create("text-bold",{fontWeight:"bold"}),c=$t.create("text-underline",{textDecoration:"underline"}),d=Dt({[a]:"italic"===t,[l]:"bold"===t,[c]:"underline"===t}),u=Dt({[o]:"small"===e,[s]:"default"===e});return Fe("p",{className:Dt(i,u,d,n),children:r})}function cs({title:e,description:t}){return Fe("div",{className:$t.create("section-header",{}),children:[Fe("h3",{className:$t.create("section-title",{fontSize:bt.fontSize.large,fontWeight:"600",margin:"0",color:bt.colors.foreground}),children:e}),t&&Fe(ls,{className:$t.create("section-description",{color:bt.colors.mutedForeground,margin:"0.25rem 0 0 0"}),children:"Choose your excess amount - the amount you'll pay if you need to make a claim"})]})}function ds({selected:e}){return Fe("div",{className:Dt($t.create("selected-indicator",{height:"14px",width:"14px",borderRadius:"100%",border:`${bt.borderWidth} solid transparent`}),e?$t.create("selected-indicator-selected",{backgroundColor:bt.colors.primary}):$t.create("selected-indicator-unselected",{border:`${bt.borderWidth} solid ${bt.colors.border}`}))})}function us({excessOptions:e,selectedExcessId:t,onExcessSelect:n}){const r=[...e].sort((e,t)=>e.excess_amount-t.excess_amount),i=e.find(e=>e.id===t);return Fe("div",{className:$t.create("checkout-section",{display:"flex",flexDirection:"column",gap:"1rem"}),children:[Fe(cs,{title:1===e.length?"Excess":"Excess Options"}),Fe("div",{className:$t.create("excess-options-grid",{display:"flex",flexDirection:"row",flexWrap:"wrap",gap:"1rem"}),children:r.map(e=>{const r=e.id===t;return Fe("div",{className:Dt($t.create("excess-option-card",{borderRadius:bt.radius.default,minWidth:"125px",padding:"0.5rem 1rem 0.5rem 0.5rem",cursor:"pointer",transition:"all 150ms ease",display:"flex",flexDirection:"row",alignItems:"center",gap:"1rem"}),r?$t.create("excess-option-card-selected",{border:`2px solid ${bt.colors.primary}`,backgroundColor:bt.colors.accent}):$t.create("excess-option-card-unselected",{border:`2px solid ${bt.colors.border}`,backgroundColor:bt.colors.card})),onClick:()=>n(e.id),children:[Fe(ds,{selected:r}),Fe("div",{className:$t.create("excess-amount",{color:bt.colors.foreground}),children:[e.excess_label||`$${Number(e.excess_amount).toFixed(0)}`,e.description?"*":""]})]},e.id)})}),(null==i?void 0:i.description)&&Fe("div",{className:$t.create("excess-description",{padding:"0.75rem",backgroundColor:bt.colors.muted,borderRadius:bt.radius.default,border:`1px solid ${bt.colors.border}`}),children:Fe(ls,{className:$t.create("excess-description-text",{fontSize:bt.fontSize.small,color:bt.colors.foreground,margin:"0"}),children:i.description})})]})}function hs(e,t="NZD",n="en-NZ"){return new Intl.NumberFormat(n,{style:"currency",currency:t}).format(e)}function ms(e,t){return"bank_transfer"===t?"Bank Transfer":"one-time"===e?"Online Payment":"monthly"===e?"Monthly Installments":`${e.charAt(0).toUpperCase()}${e.slice(1)} Installments`}function fs({paymentOptions:e,paymentGateways:t,selectedExcessId:n,selectedPaymentOption:r,onPaymentSelect:i}){const o=at(()=>{if(!n)return[];const r=e.filter(e=>e.excess_id===n).map(e=>{const n=t.find(t=>t.id===e.gateway_id);if(!n)throw new Error(`Gateway not found for option: ${e.gateway_id}`);return{...e,gateway:n}});return r.sort((e,t)=>{var n,r;return e.amount.success!==t.amount.success?e.amount.success?-1:1:("one-time"===e.amount.frequency?Number(e.amount.dueToday):Number(null!==(n=e.amount.installmentAmount)&&void 0!==n?n:0))-("one-time"===t.amount.frequency?Number(t.amount.dueToday):Number(null!==(r=t.amount.installmentAmount)&&void 0!==r?r:0))})},[e,t,n]);return n?Fe(ps,{sortedOptions:o,selectedPaymentOption:r,onPaymentSelect:i}):Fe("div",{className:$t.create("payment-section-disabled",{opacity:"0.5",pointerEvents:"none"}),children:Fe(ps,{sortedOptions:[],selectedPaymentOption:null,onPaymentSelect:i})})}function ps({sortedOptions:e,selectedPaymentOption:t,onPaymentSelect:n}){const r=e.length>0;return Fe("div",{className:$t.create("checkout-section",{display:"flex",flexDirection:"column",gap:"1rem",width:"100%"}),children:[Fe(cs,{title:"Payment Options"}),Fe("div",r?{className:$t.create("payment-options-container",{display:"flex",flexDirection:"column",gap:"0.5rem"}),children:e.map(e=>{var r;return Fe(gs,{option:e,selectedPaymentOption:t,onPaymentSelect:n},`${e.gateway_id}-${null!==(r=e.gateway_method)&&void 0!==r?r:"default"}-${e.excess_id}`)})}:{className:$t.create("no-options-placeholder",{padding:"2rem",textAlign:"center",border:`1px dashed ${bt.colors.border}`,borderRadius:bt.radius.default,backgroundColor:bt.colors.muted}),children:Fe(ls,{className:$t.create("placeholder-text",{color:bt.colors.mutedForeground,margin:"0"}),children:"Payment options will appear here after selecting an excess amount"})})]})}function gs({option:e,selectedPaymentOption:t,onPaymentSelect:n}){var r,i,o,s,a,l;const c=(null!==(r=null==t?void 0:t.gateway_method)&&void 0!==r?r:null)===(null!==(i=e.gateway_method)&&void 0!==i?i:null)&&(null==t?void 0:t.gateway_id)===e.gateway_id&&(null==t?void 0:t.excess_id)===e.excess_id,d=e.amount.success,u=null!==(s=null!==(o=e.display_title)&&void 0!==o?o:e.gateway.display_title)&&void 0!==s?s:null,h=null!==(l=null!==(a=e.description)&&void 0!==a?a:e.gateway.description)&&void 0!==l?l:null,m=()=>d?"one-time"===e.amount.frequency?hs(e.amount.dueToday):`${hs(e.amount.installmentAmount||0)} x ${e.amount.numberOfInstallments}`:"Currently Unavailable",f=()=>h||("bank_transfer"===e.gateway.code?"Manual":`via ${e.gateway.name}`);return Fe("div",{className:Dt($t.create("payment-option-row",{borderRadius:bt.radius.default,padding:"0.75rem 1rem",cursor:d?"pointer":"not-allowed",transition:"all 150ms ease",display:"flex",alignItems:"center",justifyContent:"space-between",gap:"1rem",opacity:d?"1":"0.6"},{"(max-width: 950px)":{padding:"0.75rem",flexDirection:"column",alignItems:"stretch",gap:"0.25rem"}}),c?$t.create("payment-option-row-selected",{border:`2px solid ${bt.colors.primary}`,backgroundColor:bt.colors.accent}):$t.create("payment-option-row-unselected",{border:`2px solid ${bt.colors.border}`,backgroundColor:bt.colors.card})),onClick:()=>d&&n(e),children:[Fe("div",{className:$t.create("payment-option-desktop-wrapper",{display:"flex",flexDirection:"column",flex:"1"},{"(max-width: 950px)":{display:"none"}}),children:[Fe("div",{className:$t.create("frequency-title",{fontSize:bt.fontSize.default,fontWeight:"500",color:bt.colors.foreground}),children:u||ms(e.amount.frequency,e.gateway.code)}),Fe("div",{className:$t.create("gateway-description",{fontSize:bt.fontSize.small,color:bt.colors.mutedForeground}),children:f()})]}),Fe("div",{className:$t.create("payment-option-amount-desktop",{display:"flex",flexDirection:"column",alignItems:"flex-end"},{"(max-width: 950px)":{display:"none"}}),children:[Fe(ls,{className:d?$t.create("amount-text",{textAlign:"right",color:bt.colors.foreground,fontStyle:"normal"}):$t.create("amount-text-unavailable",{textAlign:"right",color:bt.colors.mutedForeground,fontStyle:"italic"}),children:m()}),d&&Fe(ls,{size:"small",className:$t.create("gateway-fee-text",{textAlign:"right",color:bt.colors.mutedForeground}),children:"bank_transfer"!==e.gateway.code&&e.amount.gatewayFee>0?`${hs(e.amount.gatewayFee)} fee`:"No fees"})]}),Fe("div",{className:$t.create("payment-option-mobile-wrapper",{display:"none"},{"(max-width: 950px)":{display:"flex",flexDirection:"column",gap:"0.125rem"}}),children:[Fe("div",{className:$t.create("payment-option-title-mobile",{fontSize:bt.fontSize.default,fontWeight:"500",color:bt.colors.foreground}),children:u||ms(e.amount.frequency,e.gateway.code)}),Fe(ls,{className:d?$t.create("amount-text-mobile",{fontWeight:"500",color:bt.colors.foreground,fontStyle:"normal"}):$t.create("amount-text-mobile-unavailable",{fontWeight:"500",color:bt.colors.mutedForeground,fontStyle:"italic"}),children:[m(),d&&e.amount.gatewayFee>0&&Fe("span",{className:$t.create("gateway-fee-inline",{fontWeight:"400",fontSize:bt.fontSize.small,color:bt.colors.mutedForeground,marginLeft:"0.375rem"}),children:["(",hs(e.amount.gatewayFee)," fee)"]})]}),Fe("div",{className:$t.create("gateway-description-mobile",{fontSize:bt.fontSize.small,color:bt.colors.mutedForeground}),children:f()})]})]})}const ys=e=>{try{return new Date(e).toLocaleDateString("en-NZ",{year:"numeric",month:"long",day:"numeric"})}catch(t){return e}};function vs({excessOptions:e,selectedExcessId:t,onEditQuote:n,isEditingQuote:r=!1,productName:i,quoteIntent:o,embedded:s=!1}){const a=at(()=>t?e.find(e=>e.id===t):null,[e,t]),l=(null==a?void 0:a.line_item_display)||[],{formProgress:c}=At(e=>({formProgress:e.getFormProgress()})),d=at(()=>{var e;const t=(null==c?void 0:c.page_data)||(null===(e=null==o?void 0:o.form_data)||void 0===e?void 0:e.page_data);if(!t)return null;let n={};for(const e in t){const r=t[e];r&&"object"==typeof r&&(r.client_first_name&&(n.firstName=r.client_first_name),r.client_last_name&&(n.lastName=r.client_last_name),r.client_email&&(n.email=r.client_email),r.client_phone&&(n.phone=r.client_phone),r.client_dob&&(n.dob=r.client_dob))}return Object.keys(n).length>0?n:null},[c,o]);return Fe("div",{className:$t.create(s?"cart-summary-container-embedded":"cart-summary-container",s?{}:{backgroundColor:bt.colors.card,borderRadius:bt.radius.large,padding:bt.spacing.lg,boxShadow:bt.shadow.sm},s?{}:{"(max-width: 768px)":{padding:bt.spacing.md}}),children:[Fe("h3",{className:$t.create("cart-summary-title",{fontSize:bt.fontSize.large,fontWeight:"600",marginBottom:bt.spacing.md,color:bt.colors.foreground}),children:"Insurance Details"}),d&&Fe(_,{children:[Fe("div",{className:$t.create("cart-client-details",{display:"flex",flexDirection:"column",gap:bt.spacing.sm,marginBottom:bt.spacing.md}),children:[d.firstName&&d.lastName&&Fe("div",{className:$t.create("detail-row",{display:"flex",justifyContent:"space-between",alignItems:"center"}),children:[Fe("span",{className:$t.create("detail-label",{color:bt.colors.mutedForeground,fontSize:bt.fontSize.small}),children:"Name"}),Fe("span",{className:$t.create("detail-value",{fontWeight:"500",color:bt.colors.foreground,fontSize:bt.fontSize.small}),children:[d.firstName," ",d.lastName]})]}),d.email&&Fe("div",{className:$t.create("detail-row",{display:"flex",justifyContent:"space-between",alignItems:"center"}),children:[Fe("span",{className:$t.create("detail-label",{color:bt.colors.mutedForeground,fontSize:bt.fontSize.small}),children:"Email"}),Fe("span",{className:$t.create("detail-value",{fontWeight:"500",color:bt.colors.foreground,fontSize:bt.fontSize.small}),children:d.email})]}),d.phone&&Fe("div",{className:$t.create("detail-row",{display:"flex",justifyContent:"space-between",alignItems:"center"}),children:[Fe("span",{className:$t.create("detail-label",{color:bt.colors.mutedForeground,fontSize:bt.fontSize.small}),children:"Phone"}),Fe("span",{className:$t.create("detail-value",{fontWeight:"500",color:bt.colors.foreground,fontSize:bt.fontSize.small}),children:d.phone})]}),d.dob&&Fe("div",{className:$t.create("detail-row",{display:"flex",justifyContent:"space-between",alignItems:"center"}),children:[Fe("span",{className:$t.create("detail-label",{color:bt.colors.mutedForeground,fontSize:bt.fontSize.small}),children:"Date of Birth"}),Fe("span",{className:$t.create("detail-value",{fontWeight:"500",color:bt.colors.foreground,fontSize:bt.fontSize.small}),children:ys(d.dob)})]})]}),Fe("hr",{className:$t.create("divider",{border:"none",borderTop:`1px solid ${bt.colors.border}`,margin:`${bt.spacing.md} 0`})})]}),Fe("div",{className:$t.create("cart-product-section",{display:"flex",flexDirection:"column",gap:bt.spacing.sm,marginBottom:bt.spacing.lg}),children:l.map((e,t)=>Fe("div",{className:$t.create("cart-item",{display:"flex",flexDirection:"column",gap:bt.spacing.sm}),children:[Fe("div",{className:$t.create("cart-item-description",{fontSize:bt.fontSize.small,fontWeight:"500",color:bt.colors.foreground}),children:e.description}),e.show_sum_insured&&e.sum_insured&&Fe("div",{className:$t.create("cart-item-sum-insured",{fontSize:bt.fontSize.small,color:bt.colors.mutedForeground}),children:["Sum Insured: ",hs(e.sum_insured)]})]},t))}),Fe(is,{onClick:n,disabled:r,variant:"outline",className:$t.create("edit-quote-button",{width:"100%"}),children:r?"Clearing quote...":"Edit details"})]})}function ws({clauses:e}){const[t,n]=it(!0);return 0===e.length?null:Fe("div",{className:$t.create("policy-clauses-section",{borderRadius:bt.radius.default,border:`1px solid ${bt.colors.border}`,overflow:"hidden"}),children:[Fe("button",{type:"button",onClick:()=>n(!t),className:$t.create("policy-clauses-toggle",{display:"flex",alignItems:"center",justifyContent:"space-between",width:"100%",padding:`${bt.spacing.sm} ${bt.spacing.md}`,background:"none",border:"none",cursor:"pointer",fontFamily:"inherit",textAlign:"left"}),children:[Fe("div",{className:$t.create("policy-clauses-header",{display:"flex",alignItems:"center",gap:bt.spacing.sm}),children:[Fe("svg",{width:"16",height:"16",viewBox:"0 0 24 24",fill:"none",stroke:bt.colors.mutedForeground,"stroke-width":"2","stroke-linecap":"round","stroke-linejoin":"round",children:[Fe("path",{d:"M14 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V8z"}),Fe("polyline",{points:"14 2 14 8 20 8"}),Fe("line",{x1:"16",y1:"13",x2:"8",y2:"13"}),Fe("line",{x1:"16",y1:"17",x2:"8",y2:"17"}),Fe("polyline",{points:"10 9 9 9 8 9"})]}),Fe("span",{className:$t.create("policy-clauses-title",{fontSize:bt.fontSize.small,fontWeight:"500",color:bt.colors.foreground,opacity:"0.7"}),children:"Policy Clauses"})]}),Fe("svg",{width:"14",height:"14",viewBox:"0 0 24 24",fill:"none",stroke:bt.colors.mutedForeground,"stroke-width":"2","stroke-linecap":"round","stroke-linejoin":"round",style:{transition:"transform 0.2s ease",transform:t?"rotate(180deg)":"rotate(0deg)"},children:Fe("polyline",{points:"6 9 12 15 18 9"})})]}),t&&Fe("div",{className:$t.create("policy-clauses-content",{padding:`0 ${bt.spacing.md} ${bt.spacing.md}`,borderTop:`1px solid ${bt.colors.border}`,paddingTop:bt.spacing.md}),children:Fe("ul",{className:$t.create("policy-clauses-list",{margin:"0",padding:"0",listStyle:"none",display:"flex",flexDirection:"column",gap:bt.spacing.sm}),children:e.map((e,t)=>Fe("li",{className:$t.create("policy-clause-item",{fontSize:bt.fontSize.small,color:bt.colors.foreground,opacity:"0.7",lineHeight:"1.5",paddingLeft:bt.spacing.md,position:"relative"}),children:[Fe("span",{className:$t.create("policy-clause-bullet",{position:"absolute",left:"0",top:"0.6em",width:"4px",height:"4px",borderRadius:"50%",backgroundColor:bt.colors.mutedForeground,opacity:"0.5"})}),e.note||e.reference||""]},t))})})]})}function bs({label:e,value:t,isTotal:n=!1,className:r}){return Fe("div",{className:Dt($t.create("summary-item",{display:"flex",justifyContent:"space-between",alignItems:"center"}),r),children:[Fe("span",{className:$t.create("summary-label",{color:bt.colors.mutedForeground,fontSize:bt.fontSize.small}),children:e}),Fe("span",{className:$t.create("summary-value",{fontWeight:n?"600":"500",color:bt.colors.foreground,fontSize:n?bt.fontSize.large:"inherit"}),children:t})]})}function xs({excessOptions:e,paymentGateways:t,selectedExcessId:n,selectedPaymentOption:r,onPurchase:i,canPurchase:o,onContinueLater:s,continueLaterLoading:a=!1,showContinueLaterSuccess:l=!1}){var c;at(()=>n?e.find(e=>e.id===n):null,[e,n]);const d=at(()=>r?t.find(e=>e.id===r.gateway_id):null,[t,r]);return Fe("div",{className:$t.create("payment-summary",{display:"flex",flex:"1",flexDirection:"column",gap:"1rem"}),children:[r&&Fe("div",{className:$t.create("summary-section",{paddingBottom:"1rem"}),children:Fe("div",{className:$t.create("payment-breakdown",{display:"flex",flexDirection:"column",gap:"0.5rem"}),children:"one-time"===r.amount.frequency?Fe(_,{children:[r.amount.gatewayFee>0&&Fe(bs,{label:"windcave"===(null==d?void 0:d.code)?"Credit card surcharge:":"Provider Fee:",value:hs(r.amount.gatewayFee)}),Fe(bs,{label:"Due Today:",value:hs(Number(r.amount.dueToday)+Number(r.amount.gatewayFee)),isTotal:!0})]}):Fe(_,{children:[r.amount.gatewayFee>0&&Fe(bs,{label:"windcave"===(null==d?void 0:d.code)?"Credit card surcharge:":"Provider Fee:",value:hs(r.amount.gatewayFee)}),r.amount.totalRepayable&&Fe(bs,{label:"Total Payable:",value:hs(Number(r.amount.totalRepayable)+Number(null!==(c=r.amount.gatewayFee)&&void 0!==c?c:0))}),Fe(bs,{label:"Due Today:",value:hs(r.amount.dueToday)}),r.amount.installmentAmount&&r.amount.numberOfInstallments&&r.amount.numberOfInstallments>1&&Fe(bs,{label:"Remaining payments:",value:`${r.amount.numberOfInstallments-1} x ${hs(r.amount.installmentAmount)}`})]})})}),s&&Fe(is,{onClick:s,disabled:a||l,variant:"outline",className:$t.create("continue-later-button",{width:"100%",height:"2.75rem",fontSize:bt.fontSize.default,fontWeight:"500"},{"(max-width: 380px)":{fontSize:bt.fontSize.small,height:"2.5rem"}}),children:l?"Email sent":a?"Sending...":"Continue Later"}),Fe(is,{onClick:i,disabled:!o,className:$t.create("purchase-button",{width:"100%",height:"3rem",fontSize:bt.fontSize.default,fontWeight:"600"},{"(max-width: 380px)":{fontSize:bt.fontSize.small,height:"2.75rem"}}),children:o?"Go to Payment":n?"Select Payment Option":"Select Excess"})]})}function ks({details:e,onClose:t}){const n=(e,t)=>{navigator.clipboard.writeText(e).then(()=>{alert(`${t} copied to clipboard!`)}).catch(()=>{})};return Fe("div",{className:$t.create("bank-transfer-container",{display:"flex",flexDirection:"column",gap:bt.spacing.lg}),children:[Fe("div",{className:$t.create("success-message",{backgroundColor:bt.colors.accent,border:`2px solid ${bt.colors.primary}`,borderRadius:bt.radius.default,padding:bt.spacing.lg,textAlign:"center"}),children:[Fe("div",{className:$t.create("success-icon",{fontSize:"3rem",marginBottom:bt.spacing.sm}),children:"✓"}),Fe("h3",{className:$t.create("success-title",{margin:"0",marginBottom:bt.spacing.sm,color:bt.colors.primary,fontSize:bt.fontSize.large,fontWeight:"600"}),children:"Quote Reserved"}),Fe(ls,{className:$t.create("success-description",{margin:"0",color:bt.colors.foreground,opacity:"0.9"}),children:"Your quote has been reserved. Please complete the bank transfer to finalize your coverage."})]}),Fe("div",{className:$t.create("transfer-instructions",{backgroundColor:bt.colors.card,border:`1px solid ${bt.colors.border}`,borderRadius:bt.radius.default,padding:bt.spacing.lg}),children:[Fe("h4",{className:$t.create("instructions-title",{margin:"0",marginBottom:bt.spacing.md,fontSize:bt.fontSize.default,fontWeight:"600",color:bt.colors.foreground}),children:"Bank Transfer Instructions"}),Fe("div",{className:$t.create("instructions-grid",{display:"grid",gap:bt.spacing.md}),children:[Fe("div",{className:$t.create("detail-row-highlighted",{backgroundColor:bt.colors.accent,border:`2px solid ${bt.colors.primary}`,borderRadius:bt.radius.default,padding:bt.spacing.md}),children:[Fe("div",{className:$t.create("detail-label",{fontSize:bt.fontSize.small,color:bt.colors.mutedForeground,marginBottom:"0.25rem",fontWeight:"500"}),children:"Reference Number (IMPORTANT)"}),Fe("div",{className:$t.create("detail-value-wrapper",{display:"flex",alignItems:"center",gap:"0.5rem"}),children:[Fe("code",{className:$t.create("detail-value-code",{fontFamily:"monospace",fontSize:bt.fontSize.large,fontWeight:"700",color:bt.colors.primary,letterSpacing:"0.05em"}),children:e.reference}),Fe("button",{onClick:()=>n(e.reference,"Reference"),className:$t.create("copy-button",{background:"transparent",border:`1px solid ${bt.colors.primary}`,borderRadius:bt.radius.small,padding:"0.25rem 0.5rem",cursor:"pointer",fontSize:bt.fontSize.small,color:bt.colors.primary,transition:"all 150ms ease"}),children:"Copy"})]}),Fe(ls,{size:"small",className:$t.create("reference-note",{marginTop:"0.5rem",marginBottom:"0",color:bt.colors.foreground,fontWeight:"500"}),children:"⚠️ Please include this reference in your transfer particulars"})]}),Fe("div",{className:$t.create("detail-row",{}),children:[Fe("div",{className:$t.create("detail-label",{fontSize:bt.fontSize.small,color:bt.colors.mutedForeground,marginBottom:"0.25rem"}),children:"Amount"}),Fe("div",{className:$t.create("detail-value",{fontSize:bt.fontSize.large,fontWeight:"600",color:bt.colors.foreground}),children:["$",e.amount.toFixed(2)," ",e.currency]})]}),Fe("div",{className:$t.create("detail-row",{}),children:[Fe("div",{className:$t.create("detail-label",{fontSize:bt.fontSize.small,color:bt.colors.mutedForeground,marginBottom:"0.25rem"}),children:"Account Name"}),Fe("div",{className:$t.create("detail-value-wrapper",{display:"flex",alignItems:"center",gap:"0.5rem"}),children:[Fe("span",{className:$t.create("detail-value",{fontFamily:"monospace",fontSize:bt.fontSize.default,color:bt.colors.foreground}),children:e.bank_account_name}),Fe("button",{onClick:()=>n(e.bank_account_name,"Account name"),className:$t.create("copy-button-small",{background:"transparent",border:`1px solid ${bt.colors.border}`,borderRadius:bt.radius.small,padding:"0.125rem 0.375rem",cursor:"pointer",fontSize:bt.fontSize.small,color:bt.colors.mutedForeground,transition:"all 150ms ease"}),children:"Copy"})]})]}),Fe("div",{className:$t.create("detail-row",{}),children:[Fe("div",{className:$t.create("detail-label",{fontSize:bt.fontSize.small,color:bt.colors.mutedForeground,marginBottom:"0.25rem"}),children:"Account Number"}),Fe("div",{className:$t.create("detail-value-wrapper",{display:"flex",alignItems:"center",gap:"0.5rem"}),children:[Fe("span",{className:$t.create("detail-value",{fontFamily:"monospace",fontSize:bt.fontSize.default,color:bt.colors.foreground}),children:e.bank_account_number}),Fe("button",{onClick:()=>n(e.bank_account_number,"Account number"),className:$t.create("copy-button-small",{background:"transparent",border:`1px solid ${bt.colors.border}`,borderRadius:bt.radius.small,padding:"0.125rem 0.375rem",cursor:"pointer",fontSize:bt.fontSize.small,color:bt.colors.mutedForeground,transition:"all 150ms ease"}),children:"Copy"})]})]})]}),e.instructions_html&&Fe("div",{className:$t.create("additional-instructions",{marginTop:bt.spacing.md,paddingTop:bt.spacing.md,borderTop:`1px solid ${bt.colors.border}`}),children:Fe("div",{className:$t.create("instructions-content",{fontSize:bt.fontSize.small,color:bt.colors.foreground,lineHeight:"1.6"}),dangerouslySetInnerHTML:{H:e.instructions_html}})})]}),Fe("div",{className:$t.create("important-note",{backgroundColor:bt.colors.muted,border:`1px solid ${bt.colors.border}`,borderRadius:bt.radius.default,padding:bt.spacing.md}),children:Fe(ls,{size:"small",className:$t.create("note-text",{margin:"0",color:bt.colors.foreground,lineHeight:"1.5"}),children:[Fe("strong",{children:"Important:"})," Your coverage will be activated once we verify receipt of your payment. This typically takes 1-2 business days. We'll send you a confirmation email once your payment is processed."]})}),Fe("div",{className:$t.create("actions",{display:"flex",justifyContent:"center"}),children:Fe(is,{onClick:t,variant:"primary",children:"I've Made the Transfer"})})]})}function Ns({isOpen:e,onClose:t,onSuccess:n,paymentRequest:r}){const{fsm:i}=At(()=>({})),[o,s]=it("initiating"),[a,l]=it(null),[c,d]=it(null),[u,h]=it(null),[m,f]=it(null);ot(()=>{e&&r&&p()},[e,r]);const p=async()=>{if(r)try{s("initiating"),l(null);const e={...r,returnUrl:window.location.href},t=await i.initiatePayment(e);if(h(t.transaction_id),t.bank_account_name&&t.reference){s("bank_transfer");const e=i.getQuoteIntent(),t=await i.httpClient.getQuoteIntent(e.url);i.updateQuoteIntent({status:t.quote_intent.status,payment_transactions:t.payment_transactions}),i.getQuoteIntent(),setTimeout(()=>{g()},500)}else{if(!t.gateway_acceptance_url)throw new Error("Invalid payment response");s("redirecting"),window.location.href=t.gateway_acceptance_url}}catch(e){l(e.message||"Failed to initiate payment"),s("failed")}},g=()=>{c&&!c.closed&&c.close(),s("initiating"),l(null),h(null),d(null),f(null),t()},y=()=>{g(),n()};return e?Fe("div","bank_transfer"===o&&m?{className:$t.create("modal-overlay",{position:"fixed",top:"0",left:"0",width:"100%",height:"100%",backgroundColor:"rgba(0, 0, 0, 0.5)",display:"flex",alignItems:"center",justifyContent:"center",zIndex:"1000",overflowY:"auto",padding:"1rem"}),onClick:e=>{e.target===e.currentTarget&&y()},children:Fe("div",{className:$t.create("modal-content",{backgroundColor:bt.colors.background,borderRadius:bt.radius.large,padding:"2rem",maxWidth:"600px",width:"100%",boxShadow:"0 10px 25px rgba(0, 0, 0, 0.2)",border:`1px solid ${bt.colors.border}`,margin:"auto"}),onClick:e=>e.stopPropagation(),children:Fe(ks,{details:m,onClose:y})})}:{className:$t.create("modal-overlay",{position:"fixed",top:"0",left:"0",width:"100%",height:"100%",backgroundColor:"rgba(0, 0, 0, 0.5)",display:"flex",alignItems:"center",justifyContent:"center",zIndex:"1000"}),children:[Fe("div",{className:$t.create("modal-content",{backgroundColor:bt.colors.card,borderRadius:bt.radius.large,padding:"2rem",minWidth:"400px",maxWidth:"500px",boxShadow:"0 10px 25px rgba(0, 0, 0, 0.2)",border:`1px solid ${bt.colors.border}`}),children:[Fe("div",{className:$t.create("modal-header",{textAlign:"center",marginBottom:"1.5rem"}),children:[Fe("div",{className:$t.create("status-icon",{fontSize:"3rem",marginBottom:"1rem"}),children:(()=>{switch(o){case"completed":return"✅";case"cancelled":return"❌";case"failed":return"⚠️";default:return"⏳"}})()}),Fe("h2",{className:$t.create("modal-title",{margin:"0",color:bt.colors.foreground,fontSize:bt.fontSize.large}),children:"Payment Processing"})]}),Fe("div",{className:$t.create("modal-body",{textAlign:"center",marginBottom:"2rem"}),children:[Fe(ls,{className:$t.create("status-message",{fontSize:bt.fontSize.default,color:bt.colors.mutedForeground,marginBottom:"1rem"}),children:(()=>{switch(o){case"initiating":return"Setting up your payment...";case"redirecting":return"Redirecting to payment portal...";case"processing":default:return"Processing payment...";case"polling":return"Checking payment status...";case"completed":return"Payment completed successfully!";case"cancelled":return"Payment was cancelled";case"failed":return"Payment failed"}})()}),a&&Fe(ls,{className:$t.create("error-message",{color:bt.colors.destructive,fontSize:bt.fontSize.small,padding:"0.75rem",backgroundColor:bt.colors.destructive+"10",borderRadius:bt.radius.default,border:`1px solid ${bt.colors.destructive}30`}),children:a}),("redirecting"===o||"initiating"===o)&&Fe("div",{className:$t.create("loading-indicator",{display:"inline-block",width:"20px",height:"20px",marginTop:"1rem",border:`3px solid ${bt.colors.border}`,borderTop:`3px solid ${bt.colors.primary}`,borderRadius:"50%",animation:"spin 1s linear infinite"})})]}),Fe("div",{className:$t.create("modal-actions",{display:"flex",gap:"1rem",justifyContent:"center"}),children:"failed"===o||"cancelled"===o?Fe(_,{children:[Fe(is,{onClick:g,variant:"outline",children:"Close"}),"cancelled"===o&&Fe(is,{onClick:()=>{s("initiating"),l(null),p()},children:"Try Again"})]}):Fe(is,"completed"===o?{onClick:g,children:"Continue"}:{onClick:g,variant:"outline",disabled:"initiating"===o,children:"Cancel"})})]}),Fe("style",{children:"\n @keyframes spin {\n 0% { transform: rotate(0deg); }\n 100% { transform: rotate(360deg); }\n }\n "})]}):null}function Ss({type:e,transactionId:t,isOpen:n,onClose:r}){if(!n)return null;const i=(()=>{switch(e){case"success":return{title:"Payment Successful!",message:"Your payment has been processed successfully and your policy is now active.",icon:Fe("svg",{xmlns:"http://www.w3.org/2000/svg",width:"48",height:"48",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor","stroke-width":"2","stroke-linecap":"round","stroke-linejoin":"round",style:{color:bt.colors.primary||"#10b981"},children:Fe("path",{d:"M20 6 9 17l-5-5"})}),buttonText:"Close"};case"declined":return{title:"Payment Declined",message:"Your payment was declined by the payment processor. Please try a different payment method or contact your bank.",icon:Fe("svg",{xmlns:"http://www.w3.org/2000/svg",width:"48",height:"48",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor","stroke-width":"2","stroke-linecap":"round","stroke-linejoin":"round",style:{color:bt.colors.destructive},children:[Fe("circle",{cx:"12",cy:"12",r:"10"}),Fe("path",{d:"m15 9-6 6"}),Fe("path",{d:"m9 9 6 6"})]}),buttonText:"Close"};case"cancelled":return{title:"Payment Cancelled",message:"You cancelled the payment process. You can try again when you're ready.",icon:Fe("svg",{xmlns:"http://www.w3.org/2000/svg",width:"48",height:"48",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor","stroke-width":"2","stroke-linecap":"round","stroke-linejoin":"round",style:{color:bt.colors.secondary},children:[Fe("circle",{cx:"12",cy:"12",r:"10"}),Fe("path",{d:"m15 9-6 6"}),Fe("path",{d:"m9 9 6 6"})]}),buttonText:"Continue"};default:return{title:"Payment Error",message:"There was an issue processing your payment. Please try again or contact support if the problem persists.",icon:Fe("svg",{xmlns:"http://www.w3.org/2000/svg",width:"48",height:"48",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor","stroke-width":"2","stroke-linecap":"round","stroke-linejoin":"round",style:{color:bt.colors.destructive},children:[Fe("circle",{cx:"12",cy:"12",r:"10"}),Fe("path",{d:"M12 8v4"}),Fe("path",{d:"m12 16 .01 0"})]}),buttonText:"Try Again"}}})(),o=$t.create("modal-overlay",{position:"fixed",top:"0",left:"0",right:"0",bottom:"0",backgroundColor:"rgba(0, 0, 0, 0.5)",display:"flex",alignItems:"center",justifyContent:"center",zIndex:"1000",padding:"1rem"}),s=$t.create("modal-content",{backgroundColor:bt.colors.background,borderRadius:bt.radius.default,padding:"2rem",maxWidth:"400px",width:"100%",boxShadow:"0 10px 25px rgba(0, 0, 0, 0.15)",border:`${bt.borderWidth} solid ${bt.colors.border}`}),a=$t.create("modal-body",{display:"flex",flexDirection:"column",alignItems:"center",gap:"1.5rem",textAlign:"center"}),l=$t.create("modal-title",{fontSize:"1.25rem",fontWeight:"600",color:bt.colors.foreground,margin:"0"}),c=$t.create("modal-message",{color:bt.colors.foreground,lineHeight:"1.5",margin:"0"});$t.create("transaction-info",{backgroundColor:bt.colors.muted||"#f8f9fa",padding:"0.75rem",borderRadius:bt.radius.small,border:`${bt.borderWidth} solid ${bt.colors.border}`,fontSize:bt.fontSize.small,color:bt.colors.mutedForeground,wordBreak:"break-all"});const d=$t.create("modal-button",{backgroundColor:bt.colors.primary,color:bt.colors.primaryForeground,border:"none",borderRadius:bt.radius.default,padding:"0.75rem 1.5rem",fontSize:bt.fontSize.default,fontWeight:"500",cursor:"pointer",minWidth:"120px",transition:"background-color 0.2s"}),u=$t.create("message-container",{display:"flex",flexDirection:"column",alignItems:"center",gap:"1rem",marginTop:"0.5rem"});return Fe("div",{className:o,onClick:r,children:Fe("div",{className:s,onClick:e=>e.stopPropagation(),children:Fe("div",{className:a,children:[i.icon,Fe("div",{className:u,children:[Fe("h2",{className:l,children:i.title}),Fe("p",{className:c,children:i.message})]}),Fe("button",{className:d,onClick:r,children:i.buttonText})]})})})}function Cs({httpClient:e,transactionId:t,onResolved:n,onError:r}){const[i,o]=it(!1),s=st(!1);return ot(()=>{if(s.current)return;s.current=!0;let i=!1;return(async()=>{var s;try{const r=await e.resolvePaymentTransaction(t);if(i)return;n(r.status,r.recovery,r.fallback)}catch(e){if(i)return;r(null!==(s=null==e?void 0:e.message)&&void 0!==s?s:"Failed to confirm payment status"),o(!0)}})(),()=>{i=!0}},[e,t]),Fe("div",{role:"status","aria-live":"polite",className:$t.create("payment-processing-overlay",{position:"fixed",top:"0",left:"0",right:"0",bottom:"0",backgroundColor:"rgba(0, 0, 0, 0.5)",zIndex:"1000",display:"flex",alignItems:"center",justifyContent:"center",padding:"1rem"}),children:Fe("div",{className:$t.create("payment-processing-card",{backgroundColor:bt.colors.background,borderRadius:bt.radius.default,border:`${bt.borderWidth} solid ${bt.colors.border}`,boxShadow:"0 10px 25px rgba(0, 0, 0, 0.15)",padding:"2rem",maxWidth:"400px",width:"100%",textAlign:"center",display:"flex",flexDirection:"column",alignItems:"center",gap:bt.spacing.md}),children:[Fe(_s,{}),Fe("h2",{className:$t.create("payment-processing-title",{margin:"0",fontSize:bt.fontSize.large,fontWeight:"600",color:bt.colors.foreground}),children:"Payment Processing"}),Fe(ls,{children:i?"Just a moment, we're still finishing up. Hang tight, this page will update automatically.":"Hang tight, we're finalising your payment. This page will update automatically in a few seconds."})]})})}function _s(){return $t.keyframes("payment-processing-spin",{"0%":{transform:"rotate(0deg)"},"100%":{transform:"rotate(360deg)"}}),Fe("span",{"aria-hidden":"true",className:$t.create("payment-processing-spinner",{width:"2.5rem",height:"2.5rem",borderRadius:"50%",border:`3px solid ${bt.colors.border}`,borderTopColor:bt.colors.primary,animation:"insure-os-payment-processing-spin 0.9s linear infinite",display:"block"})})}function $s({isOpen:e,onClose:t,title:n,description:r,children:i,footer:o,width:s="440px"}){if(ot(()=>{if(e)return window.addEventListener("keydown",n),()=>window.removeEventListener("keydown",n);function n(e){"Escape"===e.key&&t()}},[e,t]),!e)return null;const a=$t.create("modal-overlay",{position:"fixed",top:"0",left:"0",right:"0",bottom:"0",backgroundColor:"rgba(0, 0, 0, 0.5)",display:"flex",alignItems:"center",justifyContent:"center",zIndex:"1000",padding:"1rem"}),l=$t.create("modal-content-card",{backgroundColor:bt.colors.background,borderRadius:bt.radius.large,boxShadow:"0 10px 25px rgba(0, 0, 0, 0.15)",border:`${bt.borderWidth} solid ${bt.colors.border}`,width:"100%",maxWidth:s,display:"flex",flexDirection:"column",gap:bt.spacing.md,padding:bt.spacing.lg}),c=$t.create("modal-card-header-row",{display:"flex",alignItems:"flex-start",justifyContent:"space-between",gap:bt.spacing.md}),d=$t.create("modal-card-title",{margin:"0",fontSize:"1.125rem",fontWeight:"600",color:bt.colors.foreground}),u=$t.create("modal-card-description",{margin:"0",fontSize:bt.fontSize.small,color:bt.colors.mutedForeground,lineHeight:"1.5"}),h=$t.create("modal-card-body",{display:"flex",flexDirection:"column",gap:bt.spacing.sm}),m=$t.create("modal-card-footer",{display:"flex",gap:bt.spacing.sm,marginTop:bt.spacing.sm,flexWrap:"wrap",justifyContent:"flex-end"}),f=$t.create("modal-card-close",{background:"none",border:"none",padding:"0.25rem",margin:"-0.25rem -0.25rem 0 0",color:bt.colors.mutedForeground,cursor:"pointer",display:"flex",alignItems:"center",justifyContent:"center",borderRadius:bt.radius.default,lineHeight:"0"});return $t.pseudoElement("modal-card-close",":hover",{color:bt.colors.foreground,backgroundColor:bt.colors.muted}),Fe("div",{className:a,onClick:t,children:Fe("div",{className:l,onClick:e=>e.stopPropagation(),children:[Fe("div",{className:h,children:[Fe("div",{className:c,children:[Fe("h2",{className:d,children:n}),Fe("button",{type:"button",onClick:t,"aria-label":"Close",className:f,children:Fe("svg",{xmlns:"http://www.w3.org/2000/svg",width:"18",height:"18",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor","stroke-width":"2","stroke-linecap":"round","stroke-linejoin":"round",children:[Fe("path",{d:"M18 6 6 18"}),Fe("path",{d:"m6 6 12 12"})]})})]}),r&&Fe("p",{className:u,children:r}),i]}),o&&Fe("div",{className:m,children:o})]})})}function Is({isOpen:e,onClose:t,status:n,onSendEmail:r,onCopyLink:i,email:o}){const s="sending"===n.kind,a="sent"===n.kind,l=s||a,c=$t.create("continue-later-status",{margin:"0",fontSize:bt.fontSize.small,color:bt.colors.primary}),d=$t.create("continue-later-status-error",{margin:"0",fontSize:bt.fontSize.small,color:bt.colors.destructive});let u=null;return"sent"===n.kind?u=Fe("p",{className:c,children:o?`A link will be sent to ${o} shortly.`:"A link will be sent to your email shortly."}):"copied"===n.kind?u=Fe("p",{className:c,children:"Link copied to your clipboard."}):"error"===n.kind&&(u=Fe("p",{className:d,children:n.message})),Fe($s,{isOpen:e,onClose:t,title:"Save and continue later",description:"We'll save your progress and give you a link to come back to. Your details stay safe and only the people you share the link with can resume.",footer:Fe(_,{children:[Fe(is,{variant:"outline",onClick:i,disabled:s,children:"Copy link"}),Fe(is,{onClick:r,disabled:l,loading:s,children:a?"Email sent":o?"Email me a link":"Send email"})]}),children:u})}function Ts(e=0){const t=new Date;return t.setDate(t.getDate()+e),`${t.getFullYear()}-${String(t.getMonth()+1).padStart(2,"0")}-${String(t.getDate()).padStart(2,"0")}`}function Es({results:e}){const{fsm:t,selectedExcessId:n,selectedPaymentOption:r,quoteIntent:i,httpClient:o}=At(e=>({selectedExcessId:e.getSelectedExcessId(),selectedPaymentOption:e.getSelectedPaymentOption(),quoteIntent:e.getQuoteIntent(),httpClient:e.httpClient})),[s,a]=it(!1),[l,c]=it(null),[d,u]=it(!1),[h,m]=it({kind:"idle"}),[f,p]=it(!1),g=at(()=>{var e,t;const n=null!==(t=null===(e=null==i?void 0:i.form_data)||void 0===e?void 0:e.page_data)&&void 0!==t?t:{};for(const e of Object.values(n))if(e&&"object"==typeof e&&e.cover_start_date)return String(e.cover_start_date);return null},[null==i?void 0:i.form_data]),y=at(()=>{if(!g)return!1;const e=new Date(g);if(Number.isNaN(e.getTime()))return!1;e.setHours(0,0,0,0);const t=new Date;return t.setHours(0,0,0,0),e<t},[g]),v=Ts(),[w,b]=it(()=>y?v:null!=g?g:v),[x,k]=it(null),[N,S]=it(null),[C,_]=it(!1),[$,I]=it(!y),T=new URLSearchParams(window.location.search),E=T.get("status"),P=T.get("transactionId")||T.get("transaction_id"),[z,D]=it(null),[R,M]=it(null),O="processing"===E&&!!P&&!z&&!R,j=null!=z?z:E,[W,A]=it(!(!E||"failed"!==E&&"declined"!==E&&"cancelled"!==E)),L=e.calculations,B=e.payment_options,q=e.payment_gateways;ot(()=>{const e=L.find(e=>e.id===n);if(e&&i){const n=B.some(e=>"monthly"===e.amount.frequency),r=t.getPageCompletionStatus(),o=Math.round(r.completedPages.length/r.totalPages*100);Re(i,e,B.length,n,o)}},[]),ot(()=>{if(!r||!n)return;const e=L.find(e=>e.id===n);if(!e)return;if(r.calculation_id===e.calculation_id)return;const i=B.find(t=>t.gateway_id===r.gateway_id&&t.calculation_id===e.calculation_id&&t.amount.frequency===r.amount.frequency);i?t.setSelectedPaymentOption(i):t.setSelectedPaymentOption(null)},[n,r,L,B,t]);const F=async e=>{var t,n,r;if(o&&(null==i?void 0:i.id)){_(!0),k(null),S(null);try{const r=await o.validateQuoteCoverStartDate(i.id,e);r.valid?I(!0):(I(!1),k(null!==(t=r.message)&&void 0!==t?t:"Cover start date is invalid"),S(null!==(n=r.quote_page_url)&&void 0!==n?n:null))}catch(e){I(!1),k(null!==(r=null==e?void 0:e.message)&&void 0!==r?r:"Failed to validate cover start date")}finally{_(!1)}}},H=e=>{b(e),I(!1),k(null),S(null),e&&F(e)};ot(()=>{y&&w&&!$&&!C&&F(w)},[y,null==i?void 0:i.id]);const U=()=>{if(!n||!r)return void alert("Please select both an excess amount and payment option");if(y&&!$)return void alert("Please choose and validate a new cover start date before continuing.");const t={quoteIntentId:e.quote_intent.id,excessId:n,gatewayId:r.gateway_id,calculationId:r.calculation_id,clientDetails:{legalName:"Test"},...r.gateway_method?{gateway_method:r.gateway_method}:{},...y&&w?{coverStartDate:w}:{}};c(t),a(!0)},Y=async()=>{try{p(!0),await t.clearCalculationResults()}catch(e){alert("Failed to edit quote. Please try again.")}finally{p(!1)}},Z=()=>{const e=null==i?void 0:i.form_data;if(!(null==e?void 0:e.page_data))return null;for(const t in e.page_data){const n=e.page_data[t];if(n&&"object"==typeof n&&n.client_email)return n.client_email}return null},G=()=>{m(e=>"sent"===e.kind?e:{kind:"idle"}),u(!0)},V=Boolean(n&&r&&(!y||$)),Q=null==i?void 0:i.payment_return,J=Q&&("declined"===Q.paymentStatus||"cancelled"===Q.paymentStatus||"error"===Q.paymentStatus)||W,K=(null==Q?void 0:Q.paymentStatus)||("failed"===j?"declined":"cancelled"===j?"cancelled":"error"),X=(null==Q?void 0:Q.paymentTransactionId)||P||void 0;return Fe(ns,{title:"Complete Your Purchase",description:"Choose your coverage and payment options",hideHeader:!0,children:[O&&o&&P&&Fe(Cs,{httpClient:o,transactionId:P,onResolved:async e=>{const n="completed"===e?"approved":"cancelled"===e?"cancelled":"failed"===e?"declined":"error",r=new URL(window.location.href);if(r.searchParams.set("status",n),P&&r.searchParams.set("transactionId",P),window.history.replaceState({},"",r.toString()),"completed"===e&&o&&(null==i?void 0:i.url))try{const e=await o.getQuoteIntent(i.url);t.updateQuoteIntent({status:e.quote_intent.status,payment_transactions:e.payment_transactions})}catch(e){}D(n),"declined"!==n&&"cancelled"!==n&&"error"!==n||A(!0)},onError:e=>{M(e),A(!0)}}),Fe(Mt,{children:[Fe("div",{className:$t.create("checkout-layout",{display:"grid",gridTemplateColumns:"1fr 380px",gap:bt.spacing.lg},{"(max-width: 950px)":{display:"none"}}),children:[Fe("div",{className:$t.create("checkout-main-wrapper",{minWidth:"0",backgroundColor:bt.colors.card,boxShadow:bt.shadow.sm,borderRadius:bt.radius.large,display:"flex",flexDirection:"column",alignSelf:"start"}),children:[Fe("div",{className:$t.create("checkout-header",{paddingInline:bt.spacing.xl,paddingTop:bt.spacing.xl,paddingBottom:bt.spacing.lg},{"(max-width: 768px)":{paddingInline:bt.spacing.lg,paddingTop:bt.spacing.lg},"(max-width: 480px)":{paddingInline:bt.spacing.md,paddingTop:bt.spacing.md}}),children:[Fe("h2",{className:$t.create("checkout-title",{margin:"0",marginBottom:bt.spacing.md,fontSize:"1.75rem",fontWeight:"700",color:bt.colors.primary,lineHeight:"1.1",letterSpacing:"-0.025em"},{"(max-width: 768px)":{fontSize:"1.5rem"},"(max-width: 480px)":{fontSize:"1.25rem"}}),children:"Complete Your Purchase"}),Fe("p",{className:$t.create("checkout-description",{margin:"0",fontSize:bt.fontSize.default,lineHeight:"1.6",color:bt.colors.foreground,opacity:"0.9"}),children:L.length>1?"Choose your excess amount and payment option to secure your coverage.":"Choose your payment method to secure your coverage."}),(null==i?void 0:i.reference)&&Fe("p",{className:$t.create("checkout-quote-reference",{margin:"0",marginTop:bt.spacing.sm,fontSize:bt.fontSize.small,color:bt.colors.mutedForeground}),children:["Quote reference: ",Fe("strong",{style:{color:bt.colors.foreground,fontWeight:600},children:i.reference})]}),Fe("hr",{className:$t.create("checkout-header-border",{marginTop:bt.spacing.lg,border:"0",borderTop:`1px solid ${bt.colors.border}`,height:"0"})})]}),Fe("div",{className:$t.create("checkout-sections",{paddingInline:bt.spacing.xl,paddingBottom:bt.spacing.xl,display:"flex",flexDirection:"column",gap:bt.spacing.lg},{"(max-width: 768px)":{paddingInline:bt.spacing.lg,paddingBottom:bt.spacing.lg},"(max-width: 480px)":{paddingInline:bt.spacing.md,paddingBottom:bt.spacing.md}}),children:[e.clauses&&e.clauses.length>0&&Fe(ws,{clauses:e.clauses}),y&&Fe(Ps,{value:w,onChange:H,validating:C,validated:$,error:x,quotePageUrl:N}),Fe(us,{excessOptions:L,selectedExcessId:n,onExcessSelect:e=>t.setSelectedExcessId(e)}),Fe(fs,{paymentOptions:B,paymentGateways:q,selectedExcessId:n,selectedPaymentOption:r,onPaymentSelect:e=>t.setSelectedPaymentOption(e)})]})]}),Fe("div",{className:$t.create("checkout-sidebar",{display:"flex",flexDirection:"column"},{"(max-width: 950px)":{display:"block"}}),children:Fe("div",{className:$t.create("checkout-sidebar-sticky",{}),children:[Fe(vs,{excessOptions:L,selectedExcessId:n,onEditQuote:Y,isEditingQuote:f,productName:e.product_name,quoteIntent:i}),Fe("div",{className:$t.create("checkout-sidebar-spacer",{height:bt.spacing.lg},{"(max-width: 950px)":{height:bt.spacing.md}})}),Fe("div",{className:$t.create("checkout-sidebar-card",{backgroundColor:bt.colors.card,borderRadius:bt.radius.large,boxShadow:bt.shadow.sm,padding:bt.spacing.lg},{"(max-width: 768px)":{padding:bt.spacing.md}}),children:Fe(xs,{excessOptions:L,paymentGateways:q,selectedExcessId:n,selectedPaymentOption:r,onPurchase:U,canPurchase:V,onContinueLater:G,continueLaterLoading:"sending"===h.kind,showContinueLaterSuccess:"sent"===h.kind})})]})})]}),Fe("div",{className:$t.create("checkout-mobile-layout",{display:"none"},{"(max-width: 950px)":{display:"flex",flexDirection:"column",gap:bt.spacing.md}}),children:[Fe("div",{className:$t.create("mobile-card-summary",{backgroundColor:bt.colors.card,boxShadow:bt.shadow.sm,borderRadius:bt.radius.large,padding:bt.spacing.md}),children:[Fe("h2",{className:$t.create("mobile-checkout-title",{margin:"0",marginBottom:bt.spacing.md,fontSize:"1.5rem",fontWeight:"700",color:bt.colors.primary,lineHeight:"1.1",letterSpacing:"-0.025em"},{"(max-width: 480px)":{fontSize:"1.25rem"}}),children:"Complete Your Purchase"}),Fe("p",{className:$t.create("mobile-checkout-description",{margin:"0",fontSize:bt.fontSize.default,lineHeight:"1.6",color:bt.colors.foreground,opacity:"0.9"}),children:L.length>1?"Choose your excess amount and payment option to secure your coverage.":"Choose your payment method to secure your coverage."}),Fe("hr",{className:$t.create("mobile-summary-divider",{marginTop:bt.spacing.md,marginBottom:bt.spacing.md,borderColor:bt.colors.border})}),Fe(vs,{excessOptions:L,selectedExcessId:n,onEditQuote:Y,isEditingQuote:f,productName:e.product_name,quoteIntent:i,embedded:!0})]}),e.clauses&&e.clauses.length>0&&Fe("div",{className:$t.create("mobile-card-clauses",{backgroundColor:bt.colors.card,boxShadow:bt.shadow.sm,borderRadius:bt.radius.large,padding:bt.spacing.md}),children:Fe(ws,{clauses:e.clauses})}),Fe("div",{className:$t.create("mobile-card-options",{backgroundColor:bt.colors.card,boxShadow:bt.shadow.sm,borderRadius:bt.radius.large,padding:bt.spacing.md}),children:[y&&Fe(Ps,{value:w,onChange:H,validating:C,validated:$,error:x,quotePageUrl:N}),Fe(us,{excessOptions:L,selectedExcessId:n,onExcessSelect:e=>t.setSelectedExcessId(e)})]}),Fe("div",{className:$t.create("mobile-card-payment",{backgroundColor:bt.colors.card,boxShadow:bt.shadow.sm,borderRadius:bt.radius.large,padding:bt.spacing.md}),children:[Fe(fs,{paymentOptions:B,paymentGateways:q,selectedExcessId:n,selectedPaymentOption:r,onPaymentSelect:e=>t.setSelectedPaymentOption(e)}),Fe("hr",{className:$t.create("mobile-payment-divider",{border:"none",borderTop:`1px solid ${bt.colors.border}`,margin:`${bt.spacing.md} 0`})}),Fe(xs,{excessOptions:L,paymentGateways:q,selectedExcessId:n,selectedPaymentOption:r,onPurchase:U,canPurchase:V,onContinueLater:G,continueLaterLoading:"sending"===h.kind,showContinueLaterSuccess:"sent"===h.kind})]})]}),J&&Fe(Ss,{type:K,transactionId:X,isOpen:!0,onClose:()=>{t.updateQuoteIntent({payment_return:void 0}),A(!1);const e=new URL(window.location.href);e.searchParams.delete("status"),e.searchParams.delete("transactionId"),e.searchParams.delete("transaction_id"),window.history.replaceState({},"",e.toString())}}),Fe(Ns,{isOpen:s,onClose:()=>{a(!1),c(null)},onSuccess:()=>{a(!1),c(null),alert("Payment completed successfully!")},onError:e=>{alert("Payment failed: "+e)},paymentRequest:l}),Fe(Is,{isOpen:d,onClose:()=>u(!1),status:h,onSendEmail:async()=>{const t=Z();if(!t)return void m({kind:"error",message:"Email address not found. Please fill in your email first."});const n=e.quote_intent.id;try{m({kind:"sending"}),await o.continueLater(n,t),m({kind:"sent"})}catch(e){m({kind:"error",message:"Failed to send link. Please try again."})}},onCopyLink:async()=>{var t;const n=(e=>{var t;const n=null===(t=null==i?void 0:i.organisation)||void 0===t?void 0:t.quote_page_url;if(n){const t=n.replace(/\/+$/,""),r=t.includes("?")?"&":"?";return`${t}${r}q=${e}`}return`${window.location.origin}${window.location.pathname}?q=${e}`})(e.quote_intent.id);try{if(null===(t=null===navigator||void 0===navigator?void 0:navigator.clipboard)||void 0===t?void 0:t.writeText)await navigator.clipboard.writeText(n);else{const e=document.createElement("textarea");e.value=n,e.style.position="fixed",e.style.opacity="0",document.body.appendChild(e),e.select(),document.execCommand("copy"),document.body.removeChild(e)}m({kind:"copied"})}catch(e){m({kind:"error",message:"Could not copy link. Please copy manually."})}},email:Z()})]})]})}function Ps({value:e,onChange:t,validating:n,validated:r,error:i,quotePageUrl:o}){const s=Ts(),a=Ts(30);return Fe("div",{className:$t.create("cover-date-field",{}),children:[Fe(cs,{title:"Cover Start Date"}),Fe("div",{className:$t.create("cover-date-row",{display:"flex",alignItems:"center",gap:bt.spacing.sm,marginTop:bt.spacing.sm}),children:[Fe("input",{type:"date",value:e,min:s,max:a,onChange:e=>t(e.target.value),className:$t.create("cover-date-input",{padding:"0.5rem 1rem",border:`1px solid ${i?"#dc2626":bt.colors.border}`,borderRadius:bt.radius.large,fontSize:bt.fontSize.default,backgroundColor:bt.colors.card,color:bt.colors.foreground,boxSizing:"border-box",width:"auto",maxWidth:"16rem"})}),!n&&r&&!i&&Fe("span",{"aria-label":"Date confirmed",className:$t.create("cover-date-tick",{display:"inline-flex",alignItems:"center",justifyContent:"center",width:"1.75rem",height:"1.75rem",borderRadius:"9999px",backgroundColor:bt.colors.primary,color:bt.colors.card,flexShrink:"0"}),children:Fe("svg",{xmlns:"http://www.w3.org/2000/svg",width:"14",height:"14",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor","stroke-width":"3","stroke-linecap":"round","stroke-linejoin":"round",children:Fe("polyline",{points:"20 6 9 17 4 12"})})})]}),!n&&i&&Fe("div",{className:$t.create("cover-date-error",{marginTop:bt.spacing.sm}),children:[Fe("p",{className:$t.create("cover-date-error-text",{margin:"0",fontSize:bt.fontSize.small,color:"#dc2626",lineHeight:"1.5"}),children:i}),o&&Fe("a",{href:o,className:$t.create("cover-date-new-quote",{display:"inline-block",marginTop:bt.spacing.sm,fontSize:bt.fontSize.small,color:bt.colors.primary,textDecoration:"underline"}),children:"Start a new quote"})]})]})}function zs({coverTypes:e,selectedCoverTypeId:t,onCoverTypeSelect:n}){const r=[...e].sort((e,t)=>e.sort_order-t.sort_order),i=e.find(e=>e.id===t);return Fe("div",{className:$t.create("checkout-section",{display:"flex",flexDirection:"column",gap:"1rem"}),children:[Fe(cs,{title:"Cover Type"}),Fe("div",{className:$t.create("cover-type-options-grid",{display:"flex",flexDirection:"row",flexWrap:"wrap",gap:"1rem"}),children:r.map(e=>{const r=e.id===t;return Fe("div",{className:Dt($t.create("cover-type-card",{borderRadius:bt.radius.default,minWidth:"180px",padding:"0.5rem 1rem 0.5rem 0.5rem",cursor:"pointer",transition:"all 150ms ease",display:"flex",flexDirection:"row",alignItems:"center",gap:"1rem"}),r?$t.create("cover-type-card-selected",{border:`2px solid ${bt.colors.primary}`,backgroundColor:bt.colors.accent}):$t.create("cover-type-card-unselected",{border:`2px solid ${bt.colors.border}`,backgroundColor:bt.colors.card})),onClick:()=>n(e.id),children:[Fe(ds,{selected:r}),Fe("div",{className:$t.create("cover-type-label",{color:bt.colors.foreground}),children:[e.label,e.description?"*":""]})]},e.id)})}),(null==i?void 0:i.description)&&Fe("div",{className:$t.create("cover-type-description",{padding:"0.75rem",backgroundColor:bt.colors.muted,borderRadius:bt.radius.default,border:`1px solid ${bt.colors.border}`}),children:Fe(ls,{className:$t.create("cover-type-description-text",{fontSize:bt.fontSize.small,color:bt.colors.foreground,margin:"0"}),children:i.description})})]})}function Ds({offers:e,selectedIds:t,onToggle:n,isCalculating:r}){if(0===e.length)return null;const i=[...e].sort((e,t)=>e.sort_order-t.sort_order);return Fe("div",{className:$t.create("checkout-section",{display:"flex",flexDirection:"column",gap:"1rem"}),children:[Fe(cs,{title:"Add-ons"}),Fe("div",{className:$t.create("coverage-options-grid",{display:"flex",flexDirection:"column",gap:"0.75rem"}),children:i.map(e=>{const i=t.includes(e.id),o=null!=e.delta_total;return Fe("div",{onClick:()=>!r&&n(e.id),className:Dt($t.create("coverage-option-card",{borderRadius:bt.radius.default,padding:"0.75rem 1rem",cursor:r?"wait":"pointer",transition:"all 150ms ease",display:"flex",flexDirection:"row",alignItems:"flex-start",gap:"1rem",opacity:r?"0.6":"1"}),i?$t.create("coverage-option-card-selected",{border:`2px solid ${bt.colors.primary}`,backgroundColor:bt.colors.accent}):$t.create("coverage-option-card-unselected",{border:`2px solid ${bt.colors.border}`,backgroundColor:bt.colors.card})),children:[Fe("div",{className:$t.create("coverage-option-indicator",{marginTop:"0.125rem"}),children:Fe(ds,{selected:i})}),Fe("div",{className:$t.create("coverage-option-body",{flex:"1",display:"flex",flexDirection:"column",gap:"0.25rem",minWidth:"0"}),children:[Fe("div",{className:$t.create("coverage-option-label",{fontWeight:"600",color:bt.colors.foreground}),children:e.label}),e.description&&Fe(ls,{className:$t.create("coverage-option-description",{fontSize:bt.fontSize.small,color:bt.colors.mutedForeground,margin:"0"}),children:e.description}),!o&&Fe(ls,{className:$t.create("coverage-option-roundtrip",{fontSize:bt.fontSize.small,color:bt.colors.mutedForeground,fontStyle:"italic",margin:"0"}),children:"Price updates when you toggle this option."})]}),Fe("div",{className:$t.create("coverage-option-price",{fontWeight:"600",whiteSpace:"nowrap",color:bt.colors.foreground}),children:o?`+${hs(e.delta_total)}`:"See total"})]},e.id)})})]})}function Rs({value:e,className:t,durationMs:n=500}){const[r,i]=it(e),o=st(e),s=st(null);return ot(()=>{if(null!==s.current&&(cancelAnimationFrame(s.current),s.current=null),"undefined"!=typeof window&&"function"==typeof window.matchMedia&&window.matchMedia("(prefers-reduced-motion: reduce)").matches||o.current===e)return o.current=e,void i(e);const t=o.current,r=e,a=performance.now(),l=e=>{const c=e-a,d=Math.min(1,c/n);i(t+(r-t)*(1-(1-d)*(1-d))),d<1?s.current=requestAnimationFrame(l):(o.current=r,s.current=null)};return s.current=requestAnimationFrame(l),()=>{null!==s.current&&(cancelAnimationFrame(s.current),s.current=null)}},[e,n]),Fe("span",{className:t,children:hs(r)})}function Ms(){var e,t;const{fsm:n,v2Result:r,selection:i,isCalculating:o,isRepricing:s,selectedExcessId:a,quoteIntent:l,calculationResult:c}=At(e=>({v2Result:e.getCalculationResultV2(),selection:e.getSelectionV2(),isCalculating:e.getIsCalculating(),isRepricing:e.getIsRepricing(),selectedExcessId:e.getSelectedExcessId(),quoteIntent:e.getQuoteIntent(),calculationResult:e.getCalculationResult()})),[d,u]=it(null),[h,m]=it(!1),[f,p]=it(!1),g=at(()=>{var e;return null!==(e=null==c?void 0:c.calculations)&&void 0!==e?e:[]},[c]);if(ot(()=>{u(null)},[null==i?void 0:i.cover_type_id,null==i?void 0:i.excess_id,null==i?void 0:i.coverage_option_ids.join(",")]),!r||!i)return Fe(ns,{title:"Complete Your Purchase",description:"Choose your coverage and payment options",hideHeader:!0,children:Fe(Mt,{children:Fe("p",{style:{color:bt.colors.mutedForeground},children:"Loading calculation…"})})});const y=null!==(t=null!==(e=r.product_name)&&void 0!==e?e:null==l?void 0:l.product_name)&&void 0!==t?t:"Insurance",v=r.cover_types.length>1,w=g.length>1,b=!(!i.cover_type_id||!i.excess_id||o||s),x=async()=>{m(!0);try{const e=await n.bindV2();u(e)}catch(e){}finally{m(!1)}},k=async()=>{try{p(!0),await n.clearCalculationResults()}catch(e){}finally{p(!1)}};return Fe(ns,{title:"Complete Your Purchase",description:"Choose your coverage and payment options",hideHeader:!0,children:Fe(Mt,{children:[Fe("div",{className:$t.create("checkout-layout",{display:"grid",gridTemplateColumns:"1fr 380px",gap:bt.spacing.lg},{"(max-width: 950px)":{display:"none"}}),children:[Fe("div",{className:$t.create("checkout-main-wrapper",{minWidth:"0",backgroundColor:bt.colors.card,boxShadow:bt.shadow.sm,borderRadius:bt.radius.large,display:"flex",flexDirection:"column",alignSelf:"start"}),children:[Fe(Os,{showCoverType:v,showExcess:w}),Fe("div",{className:$t.create("checkout-sections",{paddingInline:bt.spacing.xl,paddingBottom:bt.spacing.xl,display:"flex",flexDirection:"column",gap:bt.spacing.lg},{"(max-width: 768px)":{paddingInline:bt.spacing.lg,paddingBottom:bt.spacing.lg},"(max-width: 480px)":{paddingInline:bt.spacing.md,paddingBottom:bt.spacing.md}}),children:[(null==c?void 0:c.clauses)&&c.clauses.length>0&&Fe(ws,{clauses:c.clauses}),v&&Fe(zs,{coverTypes:r.cover_types,selectedCoverTypeId:i.cover_type_id,onCoverTypeSelect:e=>n.setV2Selection({cover_type_id:e})}),w&&Fe(us,{excessOptions:g,selectedExcessId:a,onExcessSelect:e=>n.setV2Selection({excess_id:e})}),Fe(Ds,{offers:r.policy_coverage_options,selectedIds:i.coverage_option_ids,onToggle:e=>n.toggleV2CoverageOption(e),isCalculating:s})]})]}),Fe("div",{className:$t.create("checkout-sidebar",{display:"flex",flexDirection:"column"}),children:Fe("div",{className:$t.create("checkout-sidebar-sticky",{position:"sticky",top:bt.spacing.lg}),children:[Fe(vs,{excessOptions:g,selectedExcessId:a,onEditQuote:k,isEditingQuote:f,productName:y,quoteIntent:l}),Fe("div",{className:$t.create("checkout-sidebar-spacer",{height:bt.spacing.lg})}),Fe("div",{className:$t.create("checkout-sidebar-card",{backgroundColor:bt.colors.card,borderRadius:bt.radius.large,boxShadow:bt.shadow.sm,padding:bt.spacing.lg},{"(max-width: 768px)":{padding:bt.spacing.md}}),children:Fe(js,{fsm:n,onBind:x,binding:h,canContinue:b,bindOutcome:d,isRepricing:s})})]})})]}),Fe("div",{className:$t.create("checkout-mobile-layout",{display:"none"},{"(max-width: 950px)":{display:"flex",flexDirection:"column",gap:bt.spacing.md}}),children:[Fe("div",{className:$t.create("mobile-card-summary",{backgroundColor:bt.colors.card,boxShadow:bt.shadow.sm,borderRadius:bt.radius.large,padding:bt.spacing.md}),children:[Fe("h2",{className:$t.create("mobile-checkout-title",{margin:"0",marginBottom:bt.spacing.md,fontSize:"1.5rem",fontWeight:"700",color:bt.colors.primary,lineHeight:"1.1",letterSpacing:"-0.025em"},{"(max-width: 480px)":{fontSize:"1.25rem"}}),children:"Complete Your Purchase"}),Fe("p",{className:$t.create("mobile-checkout-description",{margin:"0",fontSize:bt.fontSize.default,lineHeight:"1.6",color:bt.colors.foreground,opacity:"0.9"}),children:v||w?"Choose your cover and add-ons to secure your policy.":"Review your cover and add-ons to secure your policy."}),Fe("hr",{className:$t.create("mobile-summary-divider",{marginTop:bt.spacing.md,marginBottom:bt.spacing.md,borderColor:bt.colors.border})}),Fe(vs,{excessOptions:g,selectedExcessId:a,onEditQuote:k,isEditingQuote:f,productName:y,quoteIntent:l,embedded:!0})]}),(null==c?void 0:c.clauses)&&c.clauses.length>0&&Fe("div",{className:$t.create("mobile-card-clauses",{backgroundColor:bt.colors.card,boxShadow:bt.shadow.sm,borderRadius:bt.radius.large,padding:bt.spacing.md}),children:Fe(ws,{clauses:c.clauses})}),Fe("div",{className:$t.create("mobile-card-options",{backgroundColor:bt.colors.card,boxShadow:bt.shadow.sm,borderRadius:bt.radius.large,padding:bt.spacing.md,display:"flex",flexDirection:"column",gap:bt.spacing.lg}),children:[v&&Fe(zs,{coverTypes:r.cover_types,selectedCoverTypeId:i.cover_type_id,onCoverTypeSelect:e=>n.setV2Selection({cover_type_id:e})}),w&&Fe(us,{excessOptions:g,selectedExcessId:a,onExcessSelect:e=>n.setV2Selection({excess_id:e})}),Fe(Ds,{offers:r.policy_coverage_options,selectedIds:i.coverage_option_ids,onToggle:e=>n.toggleV2CoverageOption(e),isCalculating:o})]}),Fe("div",{className:$t.create("mobile-card-payment",{backgroundColor:bt.colors.card,boxShadow:bt.shadow.sm,borderRadius:bt.radius.large,padding:bt.spacing.md}),children:Fe(js,{fsm:n,onBind:x,binding:h,canContinue:b,bindOutcome:d,isRepricing:s})})]})]})})}function Os({showCoverType:e,showExcess:t}){let n="Review your cover and add-ons to secure your policy.";return e&&t?n="Choose your cover type, excess amount, and add-ons to secure your policy.":e?n="Choose your cover type and add-ons to secure your policy.":t&&(n="Choose your excess amount and add-ons to secure your policy."),Fe("div",{className:$t.create("checkout-header",{paddingInline:bt.spacing.xl,paddingTop:bt.spacing.xl,paddingBottom:bt.spacing.lg},{"(max-width: 768px)":{paddingInline:bt.spacing.lg,paddingTop:bt.spacing.lg},"(max-width: 480px)":{paddingInline:bt.spacing.md,paddingTop:bt.spacing.md}}),children:[Fe("h2",{className:$t.create("checkout-title",{margin:"0",marginBottom:bt.spacing.sm,fontSize:"1.75rem",fontWeight:"700",color:bt.colors.primary,lineHeight:"1.1",letterSpacing:"-0.025em"},{"(max-width: 768px)":{fontSize:"1.5rem"},"(max-width: 480px)":{fontSize:"1.125rem"}}),children:"Complete Your Purchase"}),Fe("p",{className:$t.create("checkout-description",{margin:"0",fontSize:bt.fontSize.default,lineHeight:"1.6",color:bt.colors.foreground,opacity:"0.9"}),children:n}),Fe("hr",{className:$t.create("checkout-header-border",{marginTop:bt.spacing.lg,borderColor:bt.colors.border})})]})}function js({fsm:e,onBind:t,binding:n,canContinue:r,bindOutcome:i,isRepricing:o}){const s=e.getV2DisplayedTotal();return Fe("div",{className:$t.create("payment-summary",{display:"flex",flex:"1",flexDirection:"column",gap:"1rem"}),children:[Fe(cs,{title:"Payment"}),Fe("div",{className:$t.create("summary-item",{display:"flex",justifyContent:"space-between",alignItems:"center"}),children:[Fe("span",{className:$t.create("summary-label",{display:"flex",alignItems:"center",gap:"0.5rem",color:bt.colors.mutedForeground,fontSize:bt.fontSize.small}),children:["Total payable",Fe("span",{className:$t.create("summary-label-spinner",{display:"inline-flex",color:bt.colors.mutedForeground,opacity:o?"1":"0",transition:"opacity 200ms ease"}),"aria-hidden":!o,children:Fe(Rt,{size:"small"})})]}),Fe(Rs,{value:s,className:$t.create("summary-value-total",{fontWeight:"600",fontSize:bt.fontSize.large,color:bt.colors.foreground,fontVariantNumeric:"tabular-nums"})})]}),"verified"===(null==i?void 0:i.status)&&Fe("div",{className:$t.create("verified-banner",{padding:"0.75rem 1rem",border:`1px solid ${bt.colors.primary}`,borderRadius:bt.radius.default,backgroundColor:bt.colors.accent,fontSize:bt.fontSize.small}),children:["Verified at ",hs(i.server_total),". Payment gateway integration for v2 is pending — quote is ready."]}),"mismatch"===(null==i?void 0:i.status)&&Fe("div",{className:$t.create("mismatch-banner",{padding:"0.75rem 1rem",border:`1px solid ${bt.colors.destructive}`,borderRadius:bt.radius.default,color:bt.colors.destructive,fontSize:bt.fontSize.small}),children:[Fe("strong",{children:"Price updated."})," The server calculated ",hs(i.server_total),". Please review and try again."]}),Fe(is,{onClick:t,disabled:!r||n,children:n?"Verifying…":"verified"===(null==i?void 0:i.status)?"Continue to payment":"Verify & continue"}),Fe(ls,{className:$t.create("payment-footer-note",{fontSize:bt.fontSize.small,color:bt.colors.mutedForeground,margin:"0"}),children:'Payment gateway integration for v2 products is scoped for a later phase. The "verify" step confirms your selection against the server.'})]})}function Ws({results:e}){var t,n,r;const{quoteIntent:i,fsm:o}=At(e=>({quoteIntent:null==e?void 0:e.getQuoteIntent()})),s=null===(t=null==i?void 0:i.organisation)||void 0===t?void 0:t.admin_email,a=null===(n=null==i?void 0:i.organisation)||void 0===n?void 0:n.phone,l=s||a,c=$t.create("referral-card",{backgroundColor:bt.colors.card,borderRadius:bt.radius.large,padding:bt.spacing.xl,boxShadow:bt.shadow.sm,maxWidth:"42rem",margin:"0 auto"},{"(max-width: 768px)":{padding:bt.spacing.lg},"(max-width: 480px)":{padding:bt.spacing.md}}),d=$t.create("referral-icon-container",{display:"flex",justifyContent:"center",marginBottom:bt.spacing.lg}),u=$t.create("referral-icon",{width:"4rem",height:"4rem",color:bt.colors.primary}),h=$t.create("referral-header",{textAlign:"center",marginBottom:bt.spacing.xl}),m=$t.create("referral-title",{fontSize:"2rem",fontWeight:"700",color:bt.colors.primary,marginBottom:bt.spacing.sm,lineHeight:"1.2",letterSpacing:"-0.025em"},{"(max-width: 768px)":{fontSize:"1.75rem"},"(max-width: 480px)":{fontSize:"1.5rem"}}),f=$t.create("referral-subtitle",{fontSize:bt.fontSize.default,color:bt.colors.foreground,lineHeight:"1.6",opacity:"0.8"}),p=$t.create("referral-process-box",{backgroundColor:bt.colors.accent,borderRadius:bt.radius.default,padding:bt.spacing.lg,marginBottom:bt.spacing.xl}),g=$t.create("referral-process-title",{fontSize:"1.125rem",fontWeight:"600",color:bt.colors.accentForeground,marginBottom:bt.spacing.md,marginTop:"0"}),y=$t.create("referral-process-list",{listStyle:"none",padding:"0",margin:"0",display:"flex",flexDirection:"column",gap:bt.spacing.sm}),v=$t.create("referral-process-item",{display:"flex",alignItems:"flex-start",fontSize:bt.fontSize.small,color:bt.colors.accentForeground,lineHeight:"1.6"}),w=$t.create("referral-bullet",{width:"1.5rem",height:"1.5rem",backgroundColor:bt.colors.primary,color:bt.colors.primaryForeground,borderRadius:"50%",marginRight:bt.spacing.sm,flexShrink:"0",display:"flex",alignItems:"center",justifyContent:"center",fontSize:"0.75rem",fontWeight:"600"}),b=$t.create("referral-contact-section",{borderTop:`1px solid ${bt.colors.border}`,paddingTop:bt.spacing.xl,marginTop:bt.spacing.xl,textAlign:"center"}),x=$t.create("referral-contact-text",{fontSize:bt.fontSize.default,color:bt.colors.foreground,marginBottom:bt.spacing.lg}),k=$t.create("referral-actions",{display:"flex",gap:bt.spacing.md,flexWrap:"wrap",justifyContent:"center",marginBottom:bt.spacing.lg}),N=$t.create("referral-reference",{fontSize:bt.fontSize.small,color:bt.colors.mutedForeground,marginTop:bt.spacing.md}),S=$t.create("referral-new-request",{textAlign:"center",marginTop:bt.spacing.md}),C=$t.create("referral-new-request-link",{fontSize:bt.fontSize.small,color:bt.colors.mutedForeground,textDecoration:"underline",cursor:"pointer",background:"none",border:"none",padding:"0",fontFamily:"inherit"});return Fe(ns,{title:"Quote Under Review",description:"We'll get back to you",hideHeader:!0,children:Fe(Mt,{children:Fe(ss,{children:Fe("div",{className:c,children:[Fe("div",{className:d,children:Fe(()=>Fe("svg",{xmlns:"http://www.w3.org/2000/svg",width:"24",height:"24",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor","stroke-width":"2","stroke-linecap":"round","stroke-linejoin":"round",className:u,children:[Fe("path",{d:"M7 10v12"}),Fe("path",{d:"M15 5.88 14 10h5.83a2 2 0 0 1 1.92 2.56l-2.33 8A2 2 0 0 1 17.5 22H4a2 2 0 0 1-2-2v-8a2 2 0 0 1 2-2h2.76a2 2 0 0 0 1.79-1.11L12 2a3.13 3.13 0 0 1 3 3.88Z"})]}),{})}),Fe("div",{className:h,children:[Fe("h1",{className:m,children:"Thanks for your quote request!"}),Fe("p",{className:f,children:"Our team is reviewing your details and will come back to you with a personalised quote."})]}),Fe("div",{className:p,children:[Fe("h3",{className:g,children:"What happens next?"}),Fe("ul",{className:y,children:[Fe("li",{className:v,children:[Fe("span",{className:w,children:"1"}),Fe("span",{children:"Our team will review your application within 1-2 business days"})]}),Fe("li",{className:v,children:[Fe("span",{className:w,children:"2"}),Fe("span",{children:"We'll contact you with either approval or additional requirements"})]}),Fe("li",{className:v,children:[Fe("span",{className:w,children:"3"}),Fe("span",{children:"If approved, we'll provide you with payment options to complete your purchase"})]})]})]}),l&&Fe("div",{className:b,children:[Fe("p",{className:x,children:"Need to speak with someone about your quote?"}),Fe("div",{className:k,children:[a&&Fe(is,{variant:"outline",onClick:()=>window.open(`tel:${a}`),children:[Fe("svg",{xmlns:"http://www.w3.org/2000/svg",width:"16",height:"16",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor","stroke-width":"2","stroke-linecap":"round","stroke-linejoin":"round",style:{marginRight:"0.5rem"},children:Fe("path",{d:"M22 16.92v3a2 2 0 0 1-2.18 2 19.79 19.79 0 0 1-8.63-3.07 19.5 19.5 0 0 1-6-6 19.79 19.79 0 0 1-3.07-8.67A2 2 0 0 1 4.11 2h3a2 2 0 0 1 2 1.72 12.84 12.84 0 0 0 .7 2.81 2 2 0 0 1-.45 2.11L8.09 9.91a16 16 0 0 0 6 6l1.27-1.27a2 2 0 0 1 2.11-.45 12.84 12.84 0 0 0 2.81.7A2 2 0 0 1 22 16.92z"})}),"Call Us"]}),s&&Fe(is,{variant:"outline",onClick:()=>window.open(`mailto:${s}`),children:[Fe("svg",{xmlns:"http://www.w3.org/2000/svg",width:"16",height:"16",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor","stroke-width":"2","stroke-linecap":"round","stroke-linejoin":"round",style:{marginRight:"0.5rem"},children:[Fe("rect",{width:"20",height:"16",x:"2",y:"4",rx:"2"}),Fe("path",{d:"m22 7-8.97 5.7a1.94 1.94 0 0 1-2.06 0L2 7"})]}),"Email Us"]})]}),(null===(r=e.quote_intent)||void 0===r?void 0:r.reference)&&Fe("div",{className:N,children:["Quote Reference: ",Fe("strong",{children:e.quote_intent.reference})]})]}),Fe("div",{className:S,children:Fe("button",{type:"button",className:C,onClick:()=>null==o?void 0:o.reset(),children:"Start a new quote"})})]})})})})}function As({results:e}){const{calculationResultV2:t}=At(e=>({calculationResultV2:e.getCalculationResultV2()}));return"referral"===e.outcome_type?Fe(Ws,{results:e}):t?Fe(Ms,{}):Fe(Es,{results:e})}function Ls({value:e,onChange:t,name:n,id:r,placeholder:i,required:o,disabled:s,className:a,hasError:l,prefix:c="$"}){const d=st(null),[u,h]=it("");function m(e){if(!e)return"";const t=e.replace(/[^\d.]/g,"");if(!t)return"";const n=t.split(".");let r=n[0];const i=n[1];r=r.replace(/^0+/,"")||"0";const o=r.replace(/\B(?=(\d{3})+(?!\d))/g,",");return void 0!==i?o+"."+i:o}ot(()=>{h(null!=e&&""!==e?m(e):"")},[e]);const f=$t.create("money-input-wrapper",{position:"relative",display:"flex",alignItems:"center"}),p=$t.create("money-input-prefix",{position:"absolute",left:"1rem",color:bt.colors.mutedForeground,pointerEvents:"none",fontSize:"14px",userSelect:"none"}),g=$t.create("money-input-with-prefix",{paddingLeft:c?"2rem":"1rem"});return Fe("div",{className:f,children:[c&&Fe("span",{className:p,children:c}),Fe("input",{ref:d,type:"text",inputMode:"decimal",name:n,id:r,value:u,onInput:function(e){const n=e.currentTarget,r=n.selectionStart||0,i=u,o=n.value.replace(/[^\d.]/g,""),s=m(o);h(s),t(o),requestAnimationFrame(()=>{if(d.current){const e=function(e,t,n){let r=n+(t.length-e.length);return r=Math.max(0,Math.min(r,t.length)),r}(i,s,r);d.current.setSelectionRange(e,e)}})},onBlur:function(){u&&u.includes(".")},placeholder:i,required:o,disabled:s,className:Dt(a,c&&g)})]})}function Bs(e,t){return n=(null==e?void 0:e.use_custom_options)?t||(null==e?void 0:e.options)||[]:(null==e?void 0:e.options)||t||[],(r=null==e?void 0:e.options_sort)&&"default"!==r?[...n].sort((e,t)=>e.label.localeCompare(t.label,void 0,"numerical"===r?{numeric:!0}:void 0)):[...n];var n,r}function qs(e){var t,n;const r=$t.create("input",{width:"100%",maxWidth:"100%",minWidth:"0",boxSizing:"border-box",height:"2.75rem",paddingLeft:"1.25rem",paddingRight:"1.25rem",paddingTop:"0.625rem",paddingBottom:"0.625rem",border:`${bt.borderWidth} solid ${bt.colors.input}`,borderRadius:bt.radius.default,fontSize:bt.fontSize.default,backgroundColor:bt.colors.card,color:bt.colors.foreground,transition:bt.transition,outline:"none",boxShadow:"none"},{"(max-width: 480px)":{paddingLeft:"0.75rem",paddingRight:"0.75rem"}}),i=$t.create("input-error",{border:`${bt.borderWidth} solid ${bt.colors.destructive}`,boxShadow:`0 0 0 3px color-mix(in srgb, ${bt.colors.destructive} 20%, transparent)`}),o=e.hasError?`${r} ${i}`:r,s=$t.name("input");$t.pseudoElement("input",":focus",{border:`${bt.borderWidth} solid ${bt.colors.primary}`,boxShadow:`0 0 0 3px color-mix(in srgb, ${bt.colors.primary} 20%, transparent)`,borderRadius:bt.radius.default});const a=$t.create("select",{width:"100%",minWidth:"0",boxSizing:"border-box",height:`calc(2.75rem - (${bt.borderWidth} * 2))`,paddingLeft:"1.25rem",paddingRight:"2.5rem",paddingTop:"0.625rem",paddingBottom:"0.625rem",border:"none",fontSize:bt.fontSize.default,backgroundColor:"transparent",color:bt.colors.foreground,outline:"none",WebkitAppearance:"none",appearance:"none",textOverflow:"ellipsis"},{"(max-width: 480px)":{paddingLeft:"0.75rem",paddingRight:"2rem"}}),l=$t.create("select-wrapper",{position:"relative",minWidth:"0",border:`${bt.borderWidth} solid ${bt.colors.input}`,borderRadius:bt.radius.default,backgroundColor:bt.colors.card,transition:bt.transition,outline:"none",boxShadow:"none"}),c=$t.create("select-wrapper-error",{border:`${bt.borderWidth} solid ${bt.colors.destructive}`,boxShadow:`0 0 0 3px color-mix(in srgb, ${bt.colors.destructive} 20%, transparent)`}),d=e.hasError?`${l} ${c}`:l,u=$t.name("select-wrapper");$t.pseudoElement("select-wrapper",":focus-within",{border:`${bt.borderWidth} solid ${bt.colors.primary}`,boxShadow:`0 0 0 3px color-mix(in srgb, ${bt.colors.primary} 20%, transparent)`,borderRadius:bt.radius.default});const{onChange:h,onBlur:m,onKeyDown:f,className:p,validation:g,errors:y,suffix:v,...w}=e;function b(e){h(e.currentTarget.value)}function x(e){h(e.currentTarget.value)}function k(e){m&&m(e.currentTarget.value)}if("select"===e.type){const N=e.null_option_label||"N/A",S=Bs(e.validation,e.options),C=!w.value&&!e.add_null_option,_=$t.create("select-placeholder",{color:bt.colors.mutedForeground}),$=$t.create("select-chevron",{position:"absolute",right:"0.75rem",top:"50%",transform:"translateY(-50%)",pointerEvents:"none",color:bt.colors.mutedForeground});return Fe("div",{className:Dt(d,u),children:[Fe("select",{...w,onChange:b,className:Dt(a,C&&_),children:[C&&Fe("option",{value:"",disabled:!0,selected:!0,children:"Select..."}),e.add_null_option&&Fe("option",{value:"",children:N}),S.map(e=>Fe("option",{value:e.value,children:e.label},e.value))]}),Fe("svg",{className:$,xmlns:"http://www.w3.org/2000/svg",width:"16",height:"16",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor","stroke-width":"2","stroke-linecap":"round","stroke-linejoin":"round",children:Fe("path",{d:"M6 9l6 6 6-6"})})]})}if("radio"===e.type){const I=e.null_option_label||"N/A",T=Bs(e.validation,e.options),E=$t.create(e.inline?"radio-container-inline":"radio-container",{display:"flex",flexDirection:e.inline?"row":"column",gap:e.inline?"1rem":"0.5rem",flexWrap:e.inline?"wrap":"nowrap"}),P=$t.create("radio-label",{display:"flex",alignItems:"center",gap:"0.5rem",cursor:"pointer",fontSize:bt.fontSize.default,color:bt.colors.foreground}),z=$t.create("radio-input",{accentColor:bt.colors.primary,width:"1.25rem",height:"1.25rem",cursor:"pointer",marginRight:"0.25rem"}),D=$t.name("radio-input");return $t.pseudoElement("radio-input",":focus",{outline:`3px solid color-mix(in srgb, ${bt.colors.primary} 30%, transparent)`,outlineOffset:"2px"}),Fe("div",{className:E,children:[e.add_null_option&&Fe("label",{className:P,children:[Fe("input",{type:"radio",name:e.name,value:"",checked:""===e.value,onChange:()=>h(""),className:Dt(z,D)}),Fe("span",{children:I})]}),T.map(t=>Fe("label",{className:P,children:[Fe("input",{type:"radio",name:e.name,value:t.value,checked:e.value===t.value,onChange:()=>h(t.value),className:Dt(z,D)}),Fe("span",{children:t.label})]},t.value))]})}if("date"===e.type){const R=$t.create("input-date",{height:"2.75rem",minHeight:"2.75rem",maxHeight:"2.75rem",WebkitAppearance:"none",appearance:"none"});return Fe("input",{...w,type:"date",min:null===(t=e.validation)||void 0===t?void 0:t.minDate,max:null===(n=e.validation)||void 0===n?void 0:n.maxDate,onInput:x,onChange:b,className:Dt(o,s,R,p)})}if("monthyear"===e.type)return Fe(Hs,{id:e.id,name:e.name,value:e.value,required:e.required,disabled:e.disabled,hasError:e.hasError,onChange:h,selectWrapperBaseClass:l,selectWrapperErrorClass:c,selectWrapperBaseClassName:u,selectBaseClassName:a});if("year"===e.type){const M=(new Date).getFullYear();return Fe("input",{...w,type:"number",min:M-100,max:M,placeholder:"YYYY",onInput:x,onChange:b,className:Dt(o,s,p)})}if("money"===e.type)return Fe(Ls,{value:e.value,onChange:h,name:e.name,id:e.id,placeholder:e.placeholder,required:e.required,disabled:e.disabled,className:Dt(o,s,p),hasError:e.hasError});if("checkbox"===e.type){const O=!0===e.value||"true"===e.value||"true"===e.value,j=$t.create("checkbox-wrapper",{position:"relative",display:"inline-flex",alignItems:"center",justifyContent:"center",width:"1.25rem",height:"1.25rem",flexShrink:"0"}),W=$t.create("checkbox-"+(O?"checked":"unchecked"),{appearance:"none",width:"1.25rem",height:"1.25rem",border:`2px solid ${O?bt.colors.primary:e.hasError?bt.colors.destructive:bt.colors.input}`,borderRadius:"0.375rem",cursor:"pointer",backgroundColor:O?bt.colors.primary:bt.colors.card,transition:bt.transition,position:"absolute"}),A=$t.name("checkbox-"+(O?"checked":"unchecked"));function L(e){e.preventDefault(),h(O?"false":"true")}return $t.pseudoElement("checkbox-"+(O?"checked":"unchecked"),":focus",{outline:"none",boxShadow:`0 0 0 3px color-mix(in srgb, ${bt.colors.primary} 20%, transparent)`,borderRadius:"0.375rem"}),Fe("div",{className:j,children:[Fe("input",{type:"checkbox",id:e.id,name:e.name,checked:O,onClick:L,className:Dt(W,A,p),required:e.required,readOnly:!0}),O&&Fe("svg",{xmlns:"http://www.w3.org/2000/svg",width:"14",height:"14",viewBox:"0 0 24 24",fill:"none",stroke:bt.colors.primaryForeground,"stroke-width":"3","stroke-linecap":"round","stroke-linejoin":"round",style:{pointerEvents:"none",position:"relative",zIndex:1},children:Fe("path",{d:"M20 6 9 17l-5-5"})})]})}if("boolean"===e.type){const B=$t.create("boolean-container",{display:"flex",flexDirection:"column",gap:"1rem"}),q=$t.create("boolean-radio-group",{display:"flex",gap:"1rem"}),F=$t.create("boolean-radio-label",{display:"flex",alignItems:"center",gap:"0.5rem",cursor:"pointer"}),H=$t.create("boolean-radio",{accentColor:bt.colors.primary,width:"1.25rem",height:"1.25rem",cursor:"pointer",marginRight:"0.25rem"}),U=$t.name("boolean-radio");$t.pseudoElement("boolean-radio",":focus",{outline:`3px solid color-mix(in srgb, ${bt.colors.primary} 30%, transparent)`,outlineOffset:"2px"});const Y=$t.create("boolean-textarea",{width:"100%",boxSizing:"border-box",minHeight:"5rem",padding:"1rem",border:`${bt.borderWidth} solid ${bt.colors.input}`,borderRadius:bt.radius.default,fontSize:bt.fontSize.default,backgroundColor:bt.colors.card,color:bt.colors.foreground,transition:bt.transition,outline:"none",boxShadow:"none",resize:"vertical",fontFamily:bt.fontFamily}),Z=$t.create("boolean-textarea-error",{border:`${bt.borderWidth} solid ${bt.colors.destructive}`,boxShadow:`0 0 0 3px color-mix(in srgb, ${bt.colors.destructive} 20%, transparent)`}),G=e.hasError?`${Y} ${Z}`:Y,V=$t.name("boolean-textarea");$t.pseudoElement("boolean-textarea",":focus",{border:`${bt.borderWidth} solid ${bt.colors.primary}`,boxShadow:`0 0 0 3px color-mix(in srgb, ${bt.colors.primary} 20%, transparent)`,borderRadius:bt.radius.default});const Q=!0===e.value||"true"===e.value,J=!1===e.value||"false"===e.value,K=e.answer||"",X=e.booleanConfig,ee=(null==X?void 0:X.enable_details_textbox)&&("yes"===X.show_details_on&&Q||"no"===X.show_details_on&&J);function te(t){h(t),(!(null==X?void 0:X.enable_details_textbox)||!("yes"===X.show_details_on&&"true"===t||"no"===X.show_details_on&&"false"===t))&&e.onAnswerChange&&K&&e.onAnswerChange("")}return Fe("div",{className:Dt(B,p),children:[Fe("div",{className:q,children:[Fe("label",{className:F,children:[Fe("input",{type:"radio",name:e.name,checked:Q,onChange:()=>te("true"),className:Dt(H,U)}),Fe("span",{children:"Yes"})]}),Fe("label",{className:F,children:[Fe("input",{type:"radio",name:e.name,checked:J,onChange:()=>te("false"),className:Dt(H,U)}),Fe("span",{children:"No"})]})]}),ee&&Fe("textarea",{placeholder:(null==X?void 0:X.details_placeholder)||"Please provide details",value:K,required:!0,onInput:t=>{return n=t.target.value,void(e.onAnswerChange&&e.onAnswerChange(n));var n},className:Dt(G,V)})]})}return v?Fe("div",{className:$t.create("input-with-suffix",{display:"flex",alignItems:"center",gap:bt.spacing.sm,minWidth:"0",maxWidth:"100%"}),children:[Fe("input",{...w,onInput:x,onChange:b,onBlur:k,onKeyDown:f,className:Dt(o,s,p),style:{flex:1,minWidth:0}}),v]}):Fe("input",{...w,onInput:x,onChange:b,onBlur:k,onKeyDown:f,className:Dt(o,s,p)})}const Fs=[{value:"01",label:"January"},{value:"02",label:"February"},{value:"03",label:"March"},{value:"04",label:"April"},{value:"05",label:"May"},{value:"06",label:"June"},{value:"07",label:"July"},{value:"08",label:"August"},{value:"09",label:"September"},{value:"10",label:"October"},{value:"11",label:"November"},{value:"12",label:"December"}];function Hs(e){const t=e.value||"",n=t.length>=7?t.substring(5,7):"",r=t.length>=4?t.substring(0,4):"",[i,o]=it(n),[s,a]=it(r),[l,c]=it(!1),[d,u]=it(!1),[h,m]=it(!(!n||!r));ot(()=>{o(n),a(r),m(!(!n||!r))},[e.value]);const f=(new Date).getFullYear(),p=[];for(let e=f;e>=f-100;e--)p.push(e);function g(t,n){if(t&&n)return m(!0),void e.onChange(`${n}-${t}-01`);h&&e.onChange("")}const y=!!i!=!!s&&l&&d&&!e.required,v=!i&&l&&(e.hasError||y),w=!s&&d&&(e.hasError||y),b=v?`${e.selectWrapperBaseClass} ${e.selectWrapperErrorClass}`:e.selectWrapperBaseClass,x=w?`${e.selectWrapperBaseClass} ${e.selectWrapperErrorClass}`:e.selectWrapperBaseClass,k=$t.create("monthyear-row",{display:"flex",gap:bt.spacing.sm,minWidth:"0"}),N=$t.create("monthyear-item",{flex:"1 1 0",minWidth:"0"}),S=$t.create("monthyear-placeholder",{color:bt.colors.mutedForeground}),C=$t.create("monthyear-chevron",{position:"absolute",right:"0.75rem",top:"50%",transform:"translateY(-50%)",pointerEvents:"none",color:bt.colors.mutedForeground}),_=$t.create("monthyear-partial-error",{marginTop:bt.spacing.sm,fontSize:bt.fontSize.small,color:bt.colors.destructive}),$=Fe("svg",{className:C,xmlns:"http://www.w3.org/2000/svg",width:"16",height:"16",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor","stroke-width":"2","stroke-linecap":"round","stroke-linejoin":"round",children:Fe("path",{d:"M6 9l6 6 6-6"})}),I=!i,T=!s,E=!e.required;return Fe("div",{children:[Fe("div",{className:k,children:[Fe("div",{className:Dt(b,e.selectWrapperBaseClassName,N),children:[Fe("select",{id:e.id,name:e.name,required:e.required,disabled:e.disabled,value:i,onChange:function(e){const t=e.currentTarget.value;o(t),c(!0),g(t,s)},onBlur:function(){c(!0)},className:Dt(e.selectBaseClassName,I&&S),children:[I?Fe("option",{value:"",disabled:!0,selected:!0,children:"Month"}):E&&Fe("option",{value:"",children:"— None —"}),Fs.map(e=>Fe("option",{value:e.value,children:e.label},e.value))]}),$]}),Fe("div",{className:Dt(x,e.selectWrapperBaseClassName,N),children:[Fe("select",{id:`${e.id}__year`,required:e.required,disabled:e.disabled,value:s,onChange:function(e){const t=e.currentTarget.value;a(t),u(!0),g(i,t)},onBlur:function(){u(!0)},className:Dt(e.selectBaseClassName,T&&S),children:[T?Fe("option",{value:"",disabled:!0,selected:!0,children:"Year"}):E&&Fe("option",{value:"",children:"— None —"}),p.map(e=>Fe("option",{value:String(e),children:e},e))]}),$]})]}),y&&Fe("div",{className:_,children:"Please select both month and year, or clear both."})]})}function Us(e,t){const{fsm:n,lastUpdated:r}=At(e=>{var t,n;return{lastUpdated:null!==(n=null===(t=e.getFormProgress())||void 0===t?void 0:t.last_updated)&&void 0!==n?n:null}}),[i,o]=it({kind:"idle"}),s=at(()=>{var t;for(let n=0;n<e.length;n++)if((null!==(t=e[n].fields)&&void 0!==t?t:[]).some(e=>"client_email"===e.code))return n;return-1},[e]);return{showContinueLater:s>=0&&t.includes(s),lastUpdated:r,continueLaterStatus:i,sendContinueLaterEmail:async function(){var e,t;const r=function(){const e=null==n?void 0:n.getFormProgress(),t=null==e?void 0:e.page_data;if(!t)return null;for(const e in t){const n=t[e];if(null==n?void 0:n.client_email)return n.client_email}return null}();if(!r)return void o({kind:"error",message:"Email address not found. Please fill in your email first."});const i=null===(e=null==n?void 0:n.getQuoteIntent())||void 0===e?void 0:e.id;if(i)try{o({kind:"sending"}),await(null===(t=null==n?void 0:n.httpClient)||void 0===t?void 0:t.continueLater(i,r)),o({kind:"sent"})}catch(e){o({kind:"error",message:"Failed to send link. Please try again."})}},copyContinueLaterLink:async function(){var e,t;const r=null===(e=null==n?void 0:n.getQuoteIntent())||void 0===e?void 0:e.id;if(!r)return;const i=function(e){var t,r;const i=null===(r=null===(t=null==n?void 0:n.getQuoteIntent())||void 0===t?void 0:t.organisation)||void 0===r?void 0:r.quote_page_url;if(i){const t=i.replace(/\/+$/,""),n=t.includes("?")?"&":"?";return`${t}${n}q=${e}`}return`${window.location.origin}${window.location.pathname}?q=${e}`}(r);try{if(null===(t=null===navigator||void 0===navigator?void 0:navigator.clipboard)||void 0===t?void 0:t.writeText)await navigator.clipboard.writeText(i);else{const e=document.createElement("textarea");e.value=i,e.style.position="fixed",e.style.opacity="0",document.body.appendChild(e),e.select(),document.execCommand("copy"),document.body.removeChild(e)}o({kind:"copied"})}catch(e){o({kind:"error",message:"Could not copy link. Please copy manually."})}},resetContinueLaterStatus:function(){o({kind:"idle"})},clearTransientStatus:function(){o(e=>"sent"===e.kind?e:{kind:"idle"})},confirmReset:function(){null==n||n.reset()}}}function Ys({isOpen:e,onClose:t,onConfirm:n}){return Fe($s,{isOpen:e,onClose:t,title:"Reset your progress?",description:"This will clear everything you've entered so far and start the form over. This cannot be undone.",footer:Fe(_,{children:[Fe(is,{variant:"outline",onClick:t,children:"Cancel"}),Fe(is,{onClick:function(){n(),t()},children:"Reset progress"})]})})}function Zs({pages:e,currentPageIndex:n,completedPages:r}){const{fsm:i,isSaving:o}=At(e=>({isSaving:e.getIsSaving()})),{showContinueLater:s,lastUpdated:a,continueLaterStatus:l,sendContinueLaterEmail:c,copyContinueLaterLink:d,clearTransientStatus:u,confirmReset:h}=Us(e,r),[m,f]=it(!1),[p,g]=it(!1),y=st(null),v=st(null);t(e.length),t(e.map((e,t)=>({index:t,id:e.id,title:e.title})));const w=(()=>{var e;const t=null===(e=null==i?void 0:i.getFormProgress())||void 0===e?void 0:e.page_data;if(!t)return null;for(const e in t){const n=t[e];if(null==n?void 0:n.client_email)return n.client_email}return null})();ot(()=>{if(y.current&&v.current){const e=v.current,t=y.current,n=e.getBoundingClientRect(),r=t.getBoundingClientRect();(r.top<n.top||r.bottom>n.bottom)&&t.scrollIntoView({behavior:"smooth",block:"nearest"})}},[n]);const b=Math.round((n+1)/e.length*100),x=$t.create("sidebar-nav-item-base",{display:"flex",alignItems:"flex-start",gap:bt.spacing.sm,padding:`${bt.spacing.sm} ${bt.spacing.sm}`,borderRadius:bt.radius.default,border:"none",backgroundColor:"transparent",color:bt.colors.foreground,cursor:"pointer",transition:bt.transition,textAlign:"left",width:"100%",fontFamily:bt.fontFamily,fontSize:bt.fontSize.small,opacity:"1"}),k=$t.create("sidebar-nav-item-active",{backgroundColor:bt.colors.accent,color:bt.colors.accentForeground}),N=$t.create("sidebar-nav-item-disabled",{cursor:"not-allowed",opacity:"0.5"});$t.pseudoElement("sidebar-nav-item-base",":hover",{backgroundColor:bt.colors.muted}),$t.pseudoElement("sidebar-nav-item-active",":hover",{backgroundColor:bt.colors.accent});const S=$t.create("sidebar-indicator-base",{width:"1.25rem",height:"1.25rem",borderRadius:"50%",display:"flex",alignItems:"center",justifyContent:"center",flexShrink:"0",marginTop:"0.125rem",backgroundColor:bt.colors.muted,color:bt.colors.mutedForeground,fontSize:"0.75rem",fontWeight:"600"}),C=$t.create("sidebar-indicator-active",{backgroundColor:bt.colors.accentForeground,color:bt.colors.accent}),_=$t.create("sidebar-indicator-completed",{backgroundColor:bt.colors.primary,color:bt.colors.primaryForeground}),$=$t.create("sidebar-page-title-base",{fontWeight:"500",fontSize:"0.875rem",lineHeight:"1.7",wordWrap:"break-word",overflowWrap:"break-word"}),I=$t.create("sidebar-page-title-active",{fontWeight:"600"});return Fe("div",{className:$t.create("sidebar-navigation",{backgroundColor:bt.colors.card,borderRadius:bt.radius.large,padding:bt.spacing.lg,boxShadow:bt.shadow.sm,alignSelf:"flex-start",display:"flex",flexDirection:"column",gap:bt.spacing.lg}),children:[Fe("div",{className:$t.create("sidebar-progress-container",{display:"flex",flexDirection:"column",gap:bt.spacing.sm}),children:[Fe("span",{className:$t.create("sidebar-progress-text",{fontSize:bt.fontSize.small,fontWeight:"600",color:bt.colors.foreground}),children:["Step ",n+1," of ",e.length]}),Fe("div",{className:$t.create("sidebar-progress-bg",{width:"100%",height:"0.5rem",backgroundColor:bt.colors.muted,borderRadius:bt.radius.small,overflow:"hidden"}),children:Fe("div",{className:$t.create("sidebar-progress-fill",{height:"100%",backgroundColor:bt.colors.primary,borderRadius:bt.radius.small,transition:bt.transition}),style:{width:`${b}%`}})})]}),Fe("hr",{className:$t.create("sidebar-divider",{borderColor:bt.colors.border})}),Fe("nav",{ref:v,className:$t.create("sidebar-nav",{display:"flex",flexDirection:"column",gap:bt.spacing.sm,maxHeight:"calc(100vh - 400px)",overflowY:"auto",overflowX:"hidden",paddingRight:bt.spacing.sm}),children:e.map((e,s)=>{const a=s===n,l=r.includes(s),c=i.canNavigateToPage(s);s===n&&t(e.title);const d=[x];a&&d.push(k),c&&!o||d.push(N);const u=d.join(" "),h=[S];l?h.push(_):a&&h.push(C);const m=h.join(" ");return Fe("button",{ref:a?y:null,onClick:()=>{return e=s,void((null==i?void 0:i.canNavigateToPage(e))&&i.navigateToPage(e));var e},disabled:!c||o,className:u,children:[Fe("div",{className:m,children:l?Fe("svg",{xmlns:"http://www.w3.org/2000/svg",width:"12",height:"12",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor","stroke-width":"3","stroke-linecap":"round","stroke-linejoin":"round",children:Fe("path",{d:"M20 6 9 17l-5-5"})}):s+1}),Fe("div",{className:$t.create("sidebar-nav-text",{display:"flex",flexDirection:"column",gap:"0.125rem",flex:"1",minWidth:"0"}),children:Fe("span",{className:a?`${$} ${I}`:$,children:e.title})})]},e.id)})}),a&&Fe("div",{className:$t.create("sidebar-footer",{display:"flex",flexDirection:"column",alignItems:"center",gap:"4px"}),children:[Fe("div",{className:$t.create("sidebar-last-saved",{fontSize:"0.6875rem",color:bt.colors.mutedForeground,textAlign:"center",opacity:"0.6",fontStyle:"italic"}),children:["Last saved: ",es.fromJSDate(new Date(a)).toFormat("T")]}),Fe("button",{onClick:()=>g(!0),className:$t.create("sidebar-reset-link",{background:"none",border:"none",padding:"0",fontSize:"0.6875rem",color:bt.colors.mutedForeground,opacity:"0.5",cursor:"pointer",textDecoration:"underline",fontFamily:bt.fontFamily}),children:"Reset progress"})]}),s&&Fe("button",{onClick:()=>{u(),f(!0)},className:$t.create("sidebar-continue-later-button",{padding:`${bt.spacing.sm} ${bt.spacing.md}`,border:`${bt.borderWidth} solid ${bt.colors.border}`,borderRadius:bt.radius.default,backgroundColor:"transparent",color:bt.colors.mutedForeground,fontSize:bt.fontSize.small,fontFamily:bt.fontFamily,cursor:"pointer",transition:bt.transition,textAlign:"center",width:"100%"}),children:"Continue Later"}),Fe(Is,{isOpen:m,onClose:()=>f(!1),status:l,onSendEmail:c,onCopyLink:d,email:w}),Fe(Ys,{isOpen:p,onClose:()=>g(!1),onConfirm:h})]})}function Gs({pages:e,currentPageIndex:t,completedPages:n}){const{fsm:r,isSaving:i}=At(e=>({fsm:e,isSaving:null==e?void 0:e.getIsSaving()})),[o,s]=it(!1),a=Math.round((t+1)/e.length*100),l=$t.create("mobile-sidebar-item-base",{display:"flex",alignItems:"center",gap:bt.spacing.sm,padding:bt.spacing.sm,border:"none",borderRadius:bt.radius.default,backgroundColor:"transparent",color:bt.colors.foreground,cursor:"pointer",opacity:"1",transition:bt.transition,width:"100%",textAlign:"left",fontFamily:bt.fontFamily}),c=$t.create("mobile-sidebar-item-active",{backgroundColor:bt.colors.accent,color:bt.colors.accentForeground}),d=$t.create("mobile-sidebar-item-disabled",{cursor:"not-allowed",opacity:"0.5"}),u=$t.create("mobile-sidebar-indicator-base",{width:"1.25rem",height:"1.25rem",borderRadius:"50%",display:"flex",alignItems:"center",justifyContent:"center",flexShrink:"0",backgroundColor:bt.colors.muted,color:bt.colors.mutedForeground,fontSize:"0.75rem",fontWeight:"600"}),h=$t.create("mobile-sidebar-indicator-active",{backgroundColor:bt.colors.accentForeground,color:bt.colors.accent}),m=$t.create("mobile-sidebar-indicator-completed",{backgroundColor:bt.colors.primary,color:bt.colors.primaryForeground}),f=$t.create("mobile-sidebar-page-title-base",{fontSize:bt.fontSize.small,fontWeight:"500"}),p=$t.create("mobile-sidebar-page-title-active",{fontWeight:"600"});return Fe("div",{className:$t.create("mobile-sidebar",{overflow:"hidden"}),children:[Fe("button",{onClick:()=>s(!o),className:$t.create("mobile-sidebar-header",{width:"100%",padding:bt.spacing.md,border:"none",backgroundColor:"transparent",cursor:"pointer",display:"flex",flexDirection:"column",gap:bt.spacing.sm}),children:[Fe("div",{className:$t.create("mobile-sidebar-header-row",{display:"flex",alignItems:"center",justifyContent:"space-between"}),children:[Fe("span",{className:$t.create("mobile-sidebar-step-text",{fontSize:bt.fontSize.small,fontWeight:"600",color:bt.colors.foreground}),children:["Step ",t+1," of ",e.length]}),Fe("svg",{xmlns:"http://www.w3.org/2000/svg",width:"20",height:"20",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor","stroke-width":"2","stroke-linecap":"round","stroke-linejoin":"round",className:$t.create("mobile-sidebar-chevron",{transition:bt.transition,transform:o?"rotate(180deg)":"rotate(0deg)",color:bt.colors.mutedForeground}),children:Fe("path",{d:"m6 9 6 6 6-6"})})]}),Fe("div",{className:$t.create("mobile-sidebar-progress-bg",{width:"100%",height:"0.5rem",backgroundColor:bt.colors.muted,borderRadius:bt.radius.small,overflow:"hidden"}),children:Fe("div",{className:$t.create("mobile-sidebar-progress-fill",{height:"100%",backgroundColor:bt.colors.primary,borderRadius:bt.radius.small,transition:bt.transition}),style:{width:`${a}%`}})})]}),Fe("hr",{className:$t.create("mobile-sidebar-border",{borderColor:bt.colors.border})}),o&&Fe("div",{className:$t.create("mobile-sidebar-content",{padding:bt.spacing.sm,display:"flex",flexDirection:"column",gap:"0.25rem",maxHeight:"300px",overflowY:"auto"}),children:e.map((e,o)=>{const a=o===t,g=n.includes(o),y=r.canNavigateToPage(o),v=[l];a&&v.push(c),y&&!i||v.push(d);const w=v.join(" "),b=[u];g?b.push(m):a&&b.push(h);const x=b.join(" ");return Fe("button",{onClick:()=>{return e=o,void((null==r?void 0:r.canNavigateToPage(e))&&(r.navigateToPage(e),s(!1)));var e},disabled:!y||i,className:w,children:[Fe("div",{className:x,children:g?Fe("svg",{xmlns:"http://www.w3.org/2000/svg",width:"12",height:"12",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor","stroke-width":"3","stroke-linecap":"round","stroke-linejoin":"round",children:Fe("path",{d:"M20 6 9 17l-5-5"})}):o+1}),Fe("span",{className:a?`${f} ${p}`:f,children:e.title})]},e.id)})})]})}function Vs({pages:e,completedPages:t}){const{fsm:n}=At(()=>({})),{showContinueLater:r,lastUpdated:i,continueLaterStatus:o,sendContinueLaterEmail:s,copyContinueLaterLink:a,clearTransientStatus:l,confirmReset:c}=Us(e,t),[d,u]=it(!1),[h,m]=it(!1);if(!i&&!r)return null;const f=(()=>{var e;const t=null===(e=null==n?void 0:n.getFormProgress())||void 0===e?void 0:e.page_data;if(!t)return null;for(const e in t){const n=t[e];if(null==n?void 0:n.client_email)return n.client_email}return null})(),p=$t.create("mobile-form-actions-container",{display:"flex",justifyContent:"center",alignItems:"center",gap:bt.spacing.lg,paddingTop:bt.spacing.sm,paddingBottom:bt.spacing.sm}),g=$t.create("mobile-form-actions-link",{background:"none",border:"none",padding:"0",fontSize:"0.75rem",color:bt.colors.mutedForeground,opacity:"0.6",cursor:"pointer",textDecoration:"underline",fontFamily:bt.fontFamily});return Fe("div",{className:p,children:[i&&Fe("button",{type:"button",onClick:()=>m(!0),className:g,children:"Reset progress"}),r&&Fe("button",{type:"button",onClick:()=>{l(),u(!0)},className:g,children:"Continue later"}),Fe(Is,{isOpen:d,onClose:()=>u(!1),status:o,onSendEmail:s,onCopyLink:a,email:f}),Fe(Ys,{isOpen:h,onClose:()=>m(!1),onConfirm:c})]})}function Qs({organisation:e}){return Fe("div",{className:$t.create("welcome-card",{paddingInline:bt.spacing.lg,paddingTop:bt.spacing.lg},{"(max-width: 950px)":{paddingInline:bt.spacing.lg,paddingTop:bt.spacing.lg},"(max-width: 480px)":{paddingInline:bt.spacing.md,paddingTop:bt.spacing.md}}),children:[Fe("h2",{className:$t.create("welcome-title",{margin:"0",marginBottom:bt.spacing.md,fontSize:"1.75rem",fontWeight:"700",color:bt.colors.primary,lineHeight:"1.1",letterSpacing:"-0.025em"},{"(max-width: 950px)":{fontSize:"1.5rem"},"(max-width: 480px)":{fontSize:"1.25rem",marginBottom:bt.spacing.sm}}),children:["Thank you for choosing ",e.name,"."]}),Fe("p",{className:$t.create("welcome-text",{margin:"0",fontSize:bt.fontSize.default,lineHeight:"1.6",color:bt.colors.foreground,opacity:"0.9"}),children:"Getting a quote online is quick and easy. Simply complete the form below with your details, and we'll provide you with a personalied quote. Our secure platform ensures your information is protected every step of the way."}),Fe("hr",{className:$t.create("welcome-border",{marginTop:bt.spacing.lg,borderColor:bt.colors.border})})]})}function Js({title:e,description:t}){return Fe(ns,{title:e,description:t,children:Fe(Mt,{children:Fe(ss,{className:$t.name("error-container"),children:Fe("svg",{xmlns:"http://www.w3.org/2000/svg",width:"64",height:"64",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor","stroke-width":"2","stroke-linecap":"round","stroke-linejoin":"round",className:"lucide lucide-ban-icon lucide-ban",children:[Fe("path",{d:"M4.929 4.929 19.07 19.071"}),Fe("circle",{cx:"12",cy:"12",r:"10"})]})})})})}function Ks({errors:e,className:t}){return e&&0!==e.length?Fe("div",{className:$t.create("field-error",{color:bt.colors.destructive,fontSize:bt.fontSize.small,marginTop:"0.25rem",display:"flex",flexDirection:"column",gap:"0.125rem"}),children:e.map((e,t)=>Fe("span",{className:$t.create("field-error-message",{lineHeight:"1.4"}),children:e.message},t))}):null}function Xs({htmlFor:e,label:t,children:n,required:r,tooltip:i,...o}){const[s,a]=it({visible:!1,top:0,left:0,flipped:!1}),l=st(null),c=lt(()=>{const e=l.current;if(!e)return;const t=e.getBoundingClientRect(),n=!(t.top>68),r=n?t.bottom+8:t.top-8,i=t.left+t.width/2;a({visible:!0,top:r,left:i,flipped:n})},[]),d=lt(()=>{a(e=>({...e,visible:!1}))},[]);return Fe("label",{for:e,className:$t.create("label",{display:"flex",flexDirection:"column",minWidth:"0"}),...o,children:[Fe("span",{className:$t.create("label-text",{marginBottom:bt.spacing.sm,fontSize:bt.fontSize.default,fontWeight:"600",display:"flex",alignItems:"center",gap:bt.spacing.sm,color:bt.colors.foreground}),children:[Fe("span",{children:r?Fe(_,{children:[t.includes(" ")?t.substring(0,t.lastIndexOf(" ")+1):"",Fe("span",{style:{whiteSpace:"nowrap"},children:[t.includes(" ")?t.substring(t.lastIndexOf(" ")+1):t,Fe("span",{className:$t.create("label-required-indicator",{color:bt.colors.destructive}),children:"*"})]})]}):t}),i&&Fe("span",{ref:l,className:$t.create("tooltip-container",{position:"relative",display:"inline-flex"}),onMouseEnter:c,onMouseLeave:d,children:[Fe("svg",{className:$t.create("tooltip-icon",{width:"1rem",height:"1rem",color:bt.colors.mutedForeground,cursor:"help"}),fill:"none",stroke:"currentColor",viewBox:"0 0 24 24",children:[Fe("circle",{cx:"12",cy:"12",r:"10",strokeWidth:"2"}),Fe("path",{d:"M9.09 9a3 3 0 0 1 5.83 1c0 2-3 3-3 3",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round"}),Fe("circle",{cx:"12",cy:"17",r:"0.5",fill:"currentColor",strokeWidth:"0"})]}),s.visible&&Fe("span",{style:{position:"fixed",top:`${s.top}px`,left:`${s.left}px`,transform:s.flipped?"translateX(-50%)":"translateX(-50%) translateY(-100%)",padding:"0.5rem 0.75rem",backgroundColor:bt.colors.popover,color:bt.colors.popoverForeground,fontSize:"0.875rem",borderRadius:bt.radius.default,whiteSpace:"normal",boxShadow:"0 2px 8px rgba(0, 0, 0, 0.15)",zIndex:1e4,minWidth:"200px",maxWidth:"300px",pointerEvents:"none"},children:[i,Fe("span",{style:{position:"absolute",left:"50%",transform:"translateX(-50%)",width:"0",height:"0",borderLeft:"6px solid transparent",borderRight:"6px solid transparent",...s.flipped?{bottom:"100%",borderBottom:`6px solid ${bt.colors.popover}`}:{top:"100%",borderTop:`6px solid ${bt.colors.popover}`}}})]})]})]}),n]})}function ea(e){const t={"(max-width: 600px)":{gridColumn:"span 12 / span 12"}};switch(null!=e?e:100){case 25:return $t.create("field-wrapper-25",{gridColumn:"span 3 / span 3"},t);case 33:return $t.create("field-wrapper-33",{gridColumn:"span 4 / span 4"},t);case 50:return $t.create("field-wrapper-50",{gridColumn:"span 6 / span 6"},t);case 66:return $t.create("field-wrapper-66",{gridColumn:"span 8 / span 8"},t);case 75:return $t.create("field-wrapper-75",{gridColumn:"span 9 / span 9"},t);default:return $t.create("field-wrapper-100",{gridColumn:"span 12 / span 12"})}}function ta(e){return e?e.replace(/\[([^\]]+)\]\(([^)]+)\)/g,(e,t,n)=>{const r=n.trim();return r.match(/^(https?:\/\/|mailto:)/i)?`<a href="${r}" target="_blank" rel="noopener noreferrer" class="text-blue-600 hover:text-blue-800 underline">${t}</a>`:e}):""}function na({field:e,errors:t,children:n,className:r}){const i=e.code||e.id,o=(null==t?void 0:t.filter(e=>e.field===i))||[],s=$t.create("validated-field",{display:"flex",flexDirection:"column",gap:bt.spacing.sm,minWidth:"0"});if("notice"===e.type){const t=$t.create("notice-field",{display:"flex",gap:bt.spacing.sm,padding:bt.spacing.md,backgroundColor:bt.colors.accent,borderRadius:bt.radius.default,border:`1px solid ${bt.colors.border}`}),n=$t.create("notice-icon",{flexShrink:"0",fontSize:bt.fontSize.default,lineHeight:"1.6"}),r=$t.create("notice-text",{fontSize:bt.fontSize.small,color:bt.colors.foreground,lineHeight:"1.6"});return Fe("div",{className:Dt(ea(e.width)),children:Fe("div",{className:t,children:[Fe("span",{className:n,children:"ⓘ"}),Fe("div",{className:r,children:[e.label&&Fe("strong",{children:e.label}),e.label&&e.description&&Fe("br",{}),e.description&&Fe("span",{children:e.description})]})]})})}if("section"===e.type){const t=$t.create("section-separator",{display:"flex",alignItems:"center",gap:bt.spacing.md}),n=$t.create("section-line",{flex:"1",height:"1px",backgroundColor:bt.colors.border}),r=$t.create("section-title",{fontSize:bt.fontSize.small,fontWeight:"600",color:bt.colors.mutedForeground,whiteSpace:"nowrap"});return Fe("div",{className:Dt(ea(e.width)),children:Fe("div",{className:t,children:e.label?Fe(_,{children:[Fe("div",{className:n}),Fe("span",{className:r,children:e.label}),Fe("div",{className:n})]}):Fe("div",{className:n})})})}if("checkbox"===e.type){const t=$t.create("checkbox-field-container",{display:"flex",flexDirection:"column",gap:bt.spacing.sm}),a=$t.create("checkbox-field-row",{display:"flex",alignItems:"flex-start",gap:"0.75rem",cursor:"pointer"}),l=$t.create("checkbox-field-label",{display:"flex",flexDirection:"column",gap:"0.25rem",flex:"1"}),c=$t.create("checkbox-label-text",{fontSize:bt.fontSize.default,fontWeight:"600",color:bt.colors.foreground,display:"flex",alignItems:"center",gap:"0.25rem"});return Fe("div",{className:Dt(s,ea(e.width),r),children:[Fe("div",{className:t,children:Fe("div",{className:a,children:[Fe("label",{htmlFor:i,style:{display:"flex",cursor:"pointer"},children:n}),Fe("label",{htmlFor:i,className:l,children:[Fe("span",{className:c,children:[e.label,e.required&&Fe("span",{className:$t.create("checkbox-required-indicator",{color:bt.colors.destructive}),children:"*"})]}),e.description&&Fe("div",{className:$t.create("checkbox-field-description",{fontSize:bt.fontSize.small,color:bt.colors.mutedForeground,lineHeight:"1.6"}),dangerouslySetInnerHTML:{H:ta(e.description)}})]})]})}),Fe(Ks,{errors:o})]})}return Fe("div",{className:Dt(s,ea(e.width),r),children:[Fe(Xs,{htmlFor:i,label:e.label,required:e.required,tooltip:e.tooltip,children:[e.description&&Fe("div",{className:$t.create("field-description",{fontSize:bt.fontSize.small,color:bt.colors.mutedForeground,marginBottom:bt.spacing.sm,lineHeight:"1.6"}),dangerouslySetInnerHTML:{H:ta(e.description)}}),n]}),Fe(Ks,{errors:o})]})}function ra({error:e,onDismiss:t,className:n}){const r=globalThis.insureOSDebug,i={warning:{backgroundColor:bt.colors.secondary+"08",borderColor:bt.colors.secondary+"30",iconColor:bt.colors.secondary,titleColor:bt.colors.foreground},error:{backgroundColor:bt.colors.destructive+"08",borderColor:bt.colors.destructive,iconColor:bt.colors.destructive,titleColor:bt.colors.destructive},critical:{backgroundColor:bt.colors.destructive+"10",borderColor:bt.colors.destructive,iconColor:bt.colors.destructive,titleColor:bt.colors.destructive}}[e.severity],o=$t.create("error-card",{padding:bt.spacing.md,borderRadius:bt.radius.default,border:`2px solid ${i.borderColor}`,backgroundColor:i.backgroundColor,margin:bt.spacing.lg,boxShadow:"0 1px 3px rgba(0, 0, 0, 0.06)"}),s=$t.create("error-card-header",{display:"flex",alignItems:"flex-start",gap:"0.75rem"}),a=$t.create("error-card-icon",{width:"1.25rem",height:"1.25rem",color:i.iconColor,flexShrink:"0",marginTop:"0.125rem"}),l=$t.create("error-card-content-wrapper",{flex:"1",minWidth:"0",display:"flex",justifyContent:"space-between",alignItems:"flex-start",gap:"0.75rem"}),c=$t.create("error-card-content",{flex:"1",minWidth:"0",display:"flex",flexDirection:"column",gap:"0.5rem"}),d=$t.create("error-card-title",{fontSize:bt.fontSize.default,fontWeight:"600",color:i.titleColor,lineHeight:"1.4"}),u=$t.create("error-card-message",{fontSize:bt.fontSize.small,color:bt.colors.foreground,lineHeight:"1.5",opacity:"0.9"}),h=$t.create("error-card-details",{fontSize:"0.8125rem",color:bt.colors.mutedForeground,fontFamily:"monospace",backgroundColor:bt.colors.muted,padding:"0.625rem",borderRadius:bt.radius.small,wordBreak:"break-word",lineHeight:"1.4"}),m=$t.create("error-card-support",{fontSize:"0.8125rem",color:bt.colors.mutedForeground,lineHeight:"1.4"}),f=$t.create("error-card-dismiss",{padding:"0.25rem",border:"none",backgroundColor:"transparent",color:bt.colors.mutedForeground,cursor:"pointer",borderRadius:bt.radius.small,lineHeight:"1",display:"flex",alignItems:"center",justifyContent:"center",width:"1.75rem",height:"1.75rem",flexShrink:"0",transition:bt.transition});return $t.pseudoElement("error-card-dismiss",":hover",{backgroundColor:bt.colors.muted,color:bt.colors.foreground}),Fe("div",{className:Dt(o,n),children:Fe("div",{className:s,children:[Fe(()=>"warning"===e.severity?Fe("svg",{className:a,fill:"currentColor",viewBox:"0 0 20 20",children:Fe("path",{fillRule:"evenodd",d:"M8.257 3.099c.765-1.36 2.722-1.36 3.486 0l5.58 9.92c.75 1.334-.213 2.98-1.742 2.98H4.42c-1.53 0-2.493-1.646-1.743-2.98l5.58-9.92zM11 13a1 1 0 11-2 0 1 1 0 012 0zm-1-8a1 1 0 00-1 1v3a1 1 0 002 0V6a1 1 0 00-1-1z",clipRule:"evenodd"})}):Fe("svg",{className:a,fill:"currentColor",viewBox:"0 0 20 20",children:Fe("path",{fillRule:"evenodd",d:"M10 18a8 8 0 100-16 8 8 0 000 16zM8.707 7.293a1 1 0 00-1.414 1.414L8.586 10l-1.293 1.293a1 1 0 101.414 1.414L10 11.414l1.293 1.293a1 1 0 001.414-1.414L11.414 10l1.293-1.293a1 1 0 00-1.414-1.414L10 8.586 8.707 7.293z",clipRule:"evenodd"})}),{}),Fe("div",{className:l,children:[Fe("div",{className:c,children:[Fe("div",{className:d,children:e.title}),Fe("div",{className:u,children:e.message}),r&&e.details&&Fe("div",{className:h,children:e.details}),Fe("div",{className:m,children:$e(e)})]}),t&&Fe("button",{className:f,onClick:e=>{e.preventDefault(),e.stopPropagation(),t()},"aria-label":"Dismiss error",title:"Dismiss",type:"button",children:Fe("svg",{xmlns:"http://www.w3.org/2000/svg",width:"16",height:"16",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor","stroke-width":"2","stroke-linecap":"round","stroke-linejoin":"round",style:{pointerEvents:"none"},children:[Fe("path",{d:"M18 6 6 18"}),Fe("path",{d:"m6 6 12 12"})]})})]})]})})}function ia(){const{definition:e,currentPageIndex:n,totalPages:r,validationErrors:i,generalErrors:o,quoteIntent:s,isSaving:a,fsm:l}=At(e=>({definition:e.getFormDefinition(),currentPageIndex:e.getCurrentPageIndex(),totalPages:e.getTotalPages(),results:e.getCalculationResult(),validationErrors:e.getValidationErrors(),generalErrors:e.getGeneralErrors(),quoteIntent:e.getQuoteIntent(),isSaving:e.getIsSaving()})),{httpClient:c,urlPromoCode:d}=Wt(),[u,h]=it({status:"idle"}),[m,f]=it(""),p=lt(async e=>{const n=null!=e?e:m;if(n&&n.trim()){if((null==s?void 0:s.id)&&c){h({status:"validating"});try{const e=await c.validatePromoCode(s.id,n.trim());e.valid?h({status:"valid",name:e.name||n}):h({status:"invalid",message:e.message})}catch(e){t(),h({status:"invalid",message:"Unable to validate promo code"})}}}else h({status:"idle"})},[null==s?void 0:s.id,c,m]),g=lt(e=>{"Enter"===e.key&&(e.preventDefault(),p())},[p]),y=st(!1);ot(()=>{d&&!y.current&&(null==s?void 0:s.id)&&c&&(y.current=!0,f(d),(async()=>{try{const e=await c.validatePromoCode(s.id,d.trim());if(e.valid){h({status:"valid",name:e.name||d});const t=l.getFormDefinition().pages.find(e=>e.fields.some(e=>"promo_code"===(e.code||e.id)));t&&l.updateFieldValue(t.id,"promo_code",d)}else{f("");const e=l.getFormDefinition().pages.find(e=>e.fields.some(e=>"promo_code"===(e.code||e.id)));e&&l.updateFieldValue(e.id,"promo_code","")}}catch(e){f("")}})())},[d,null==s?void 0:s.id,c]);const v=e.pages[n];if(!v)return Fe(Js,{title:"Unexpected Error",description:"No page available"});const w=st(new Map),b=(e,t)=>{var n;const r=l.getFormProgress().page_data[v.id],i=null==r?void 0:r[e];if(null!=i&&""!==i)return i;if(t&&("date"===t.type||"monthyear"===t.type)&&(null===(n=t.validation)||void 0===n?void 0:n.defaultDate)){const n=x(t.validation.defaultDate,"monthyear"===t.type);if(n)return l.updateFieldValue(v.id,e,n),n}return""},x=(e,t)=>{var n;const r=(null===(n=null==s?void 0:s.organisation)||void 0===n?void 0:n.timezone)||"Pacific/Auckland",i=(new Date).toLocaleString("en-US",{timeZone:r}),o=new Date(i);let a=new Date(i);switch(e){case"today":a=o;break;case"+1week":a.setDate(o.getDate()+7);break;case"+1month":a.setMonth(o.getMonth()+1);break;case"+1year":a.setFullYear(o.getFullYear()+1);break;default:return""}const l=a.getFullYear(),c=String(a.getMonth()+1).padStart(2,"0"),d=String(a.getDate()).padStart(2,"0");return t?`${l}-${c}-01`:`${l}-${c}-${d}`},k=e=>{const t=l.getFormProgress().page_data[v.id];return((null==t?void 0:t.U)||{})[e]||""},N=l.getFormProgress(),S={};Object.values(N.page_data).forEach(e=>{const{U:t,...n}=e;Object.assign(S,n),t&&Object.keys(t).length>0&&(S.U||(S.U={}),Object.assign(S.U,t))});const C=e=>{if(!e.visibility)return!0;const n=e.visibility.conditions.map(e=>"field"in e?e.field:null).filter(Boolean);n.length>0&&(t((e.label,e.code)),t(Object.keys(S)),n.forEach(e=>{e&&t((S[e],S[e]))}));const r=ce(S,{condition_type:e.visibility.condition_type,conditions:e.visibility.conditions}),i="show"===e.visibility.action?r.matched:!r.matched;return w.current.get(e.id)!==i&&(t((e.label,e.code)),t(),w.current.set(e.id,i)),i},_=(()=>{for(const e of v.fields)if(e.blocker&&C(e))if(e.blocker.conditions&&e.blocker.conditions.length>0){if(ce(S,{condition_type:e.blocker.condition_type||"or",conditions:e.blocker.conditions}).matched)return{field:e,config:e.blocker}}else if(void 0!==e.blocker.trigger_value){const t=e.code||e.id,n=b(t,e);if(String(n)===String(e.blocker.trigger_value))return{field:e,config:e.blocker}}return null})(),$=null==s?void 0:s.payment_return,I=$&&("declined"===$.paymentStatus||"cancelled"===$.paymentStatus||"error"===$.paymentStatus),T=l.getFormProgress().completed_pages||[];return Fe(ns,{title:v.title,description:v.description,hideHeader:!0,children:Fe("div",{children:[I&&Fe(Ss,{type:$.paymentStatus,transactionId:$.paymentTransactionId||void 0,isOpen:!0,onClose:()=>{l.updateQuoteIntent({payment_return:void 0})}}),Fe(Mt,{children:[Fe("div",{className:$t.create("form-layout",{display:"grid",gridTemplateColumns:"1fr 320px",gap:bt.spacing.lg},{"(max-width: 950px)":{display:"flex",flexDirection:"column",gap:bt.spacing.sm}}),children:[Fe("div",{className:$t.create("form-content-wrapper",{minWidth:"0",backgroundColor:bt.colors.card,boxShadow:bt.shadow.sm,borderRadius:bt.radius.large,display:"flex",flexDirection:"column",minHeight:"100%"},{"(max-width: 950px)":{minHeight:"auto"}}),children:[Fe("div",{className:$t.create("mobile-sidebar-container",{display:"none"},{"(max-width: 950px)":{display:"block"}}),children:Fe(Gs,{pages:e.pages,currentPageIndex:n,completedPages:T})}),n>0&&Fe("div",{className:$t.create("page-heading-container",{paddingInline:bt.spacing.lg,paddingTop:bt.spacing.lg},{"(max-width: 950px)":{paddingInline:bt.spacing.lg,paddingTop:bt.spacing.lg},"(max-width: 480px)":{paddingInline:bt.spacing.md,paddingTop:bt.spacing.md}}),children:[Fe("div",{className:$t.create("page-heading-content",{display:"flex",alignItems:"center",justifyContent:"space-between",gap:bt.spacing.lg}),children:Fe("div",{className:$t.create("page-heading-text",{flex:"1",minWidth:"0"}),children:[Fe("h1",{className:$t.create("page-template-title",{margin:"0",fontSize:"1.5rem",fontWeight:"700",lineHeight:"1.3",color:bt.colors.primary,letterSpacing:"-0.025em"},{"(max-width: 480px)":{fontSize:"1.25rem"}}),children:v.title}),v.description&&Fe("p",{className:$t.create("page-template-description",{margin:"0",marginTop:bt.spacing.sm,fontSize:bt.fontSize.small,lineHeight:"1.5",color:bt.colors.foreground,opacity:"0.7"}),children:v.description})]})}),Fe("hr",{className:$t.create("page-heading-border",{marginTop:bt.spacing.lg,border:"0",borderTop:`1px solid ${bt.colors.border}`,height:"0"})})]}),0===n&&(null==s?void 0:s.organisation)&&Fe(Qs,{organisation:s.organisation}),o.length>0&&o.map(e=>Fe(ra,{error:e,onDismiss:()=>l.dismissGeneralError(e.id)},e.id)),Fe("div",{className:$t.create("form-card",{backgroundColor:bt.colors.card,borderRadius:bt.radius.large,padding:bt.spacing.lg,boxShadow:bt.shadow.sm,display:"flex",flexDirection:"column",gap:bt.spacing.xl,flex:"1",minWidth:"0",overflow:"hidden"},{"(max-width: 950px)":{padding:bt.spacing.md,gap:bt.spacing.lg,flex:"initial"},"(max-width: 480px)":{padding:bt.spacing.md,gap:bt.spacing.md}}),children:[Fe("form",{onSubmit:e=>e.preventDefault(),className:$t.create("form-fields-container",{flex:"1"},{"(max-width: 950px)":{flex:"initial"}}),children:Fe("div",{className:$t.create("form-content-page",{display:"grid",gap:bt.spacing.md,rowGap:bt.spacing.lg,gridTemplateColumns:"repeat(12, minmax(0, 1fr))",minWidth:"0"},{"(max-width: 600px)":{display:"flex",flexDirection:"column"}}),children:v.fields.map(e=>{const t=e.code||e.id,n="promo_code"===t;if(!C(e))return null;if("section"===e.type)return Fe(na,{field:e,errors:[],children:Fe("span",{})},e.id);if("notice"===e.type)return Fe(na,{field:e,errors:[],children:Fe("span",{})},e.id);const r="validating"===u.status,o=n?Fe("button",{type:"button",onClick:()=>p(),disabled:!m.trim()||r,style:{height:"2.75rem",minWidth:"5rem",padding:"0 1rem",fontSize:bt.fontSize.small,backgroundColor:bt.colors.primary,color:bt.colors.primaryForeground,border:"none",borderRadius:bt.radius.default,cursor:m.trim()&&!r?"pointer":"not-allowed",opacity:m.trim()&&!r?1:.5,whiteSpace:"nowrap"},children:r?Fe(Rt,{size:"small"}):"Apply"}):void 0,s=!n||"valid"!==u.status&&"invalid"!==u.status?null:Fe("div",{style:{marginTop:"0.5rem"},children:["valid"===u.status&&Fe("span",{style:{color:"#22c55e",fontSize:bt.fontSize.small,display:"flex",alignItems:"center",gap:"0.25rem"},children:[Fe("svg",{width:"16",height:"16",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round",children:Fe("path",{d:"M20 6 9 17l-5-5"})}),'Promo code "',u.name,'" applied']}),"invalid"===u.status&&Fe("span",{style:{color:bt.colors.destructive,fontSize:bt.fontSize.small,display:"flex",alignItems:"center",gap:"0.25rem"},children:[Fe("svg",{width:"16",height:"16",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round",children:[Fe("circle",{cx:"12",cy:"12",r:"10"}),Fe("line",{x1:"15",y1:"9",x2:"9",y2:"15"}),Fe("line",{x1:"9",y1:"9",x2:"15",y2:"15"})]}),u.message]})]});return Fe(na,{field:e,errors:i,children:[Fe(qs,{value:b(t,e).toString(),onChange:r=>{let i=r;"boolean"!==e.type&&"checkbox"!==e.type||(i="true"===r),l.updateFieldValue(v.id,t,i),n&&(f(r),h({status:"idle"}))},onKeyDown:n?g:void 0,answer:k(t),onAnswerChange:n=>{var r;l.updateFieldAnswer(v.id,t,n,null===(r=e.boolean_config)||void 0===r?void 0:r.details_rating_factor_id)},id:t,name:t,type:e.type,placeholder:e.placeholder,required:e.required,options:e.options,validation:e.validation,booleanConfig:e.boolean_config,add_null_option:e.add_null_option,null_option_label:e.null_option_label,inline:e.inline,hasError:l.hasFieldErrors(t),errors:l.getFieldErrors(t),suffix:o}),s]},e.id)})})}),_&&Fe("div",{className:$t.create("form-blocker",{backgroundColor:bt.colors.accent,borderRadius:bt.radius.default,padding:bt.spacing.lg,borderLeft:`4px solid ${bt.colors.primary}`}),children:[Fe("h3",{className:$t.create("form-blocker-title",{margin:"0",marginBottom:bt.spacing.sm,fontSize:"1.125rem",fontWeight:"600",color:bt.colors.accentForeground}),children:_.config.title}),Fe("p",{className:$t.create("form-blocker-message",{margin:"0",fontSize:bt.fontSize.default,lineHeight:"1.6",color:bt.colors.accentForeground,opacity:"0.9"}),children:_.config.message}),_.config.link&&Fe("a",{href:_.config.link.url,target:"_blank",rel:"noopener noreferrer",className:$t.create("form-blocker-link",{display:"inline-flex",alignItems:"center",gap:"0.375rem",marginTop:bt.spacing.md,fontSize:bt.fontSize.default,fontWeight:"600",color:bt.colors.primary,textDecoration:"none"}),children:[_.config.link.label,Fe("svg",{width:"16",height:"16",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round",children:[Fe("path",{d:"M18 13v6a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V8a2 2 0 0 1 2-2h6"}),Fe("polyline",{points:"15 3 21 3 21 9"}),Fe("line",{x1:"10",y1:"14",x2:"21",y2:"3"})]})]})]}),Fe("hr",{className:$t.create("form-navigation-border",{border:"0",borderTop:`1px solid ${bt.colors.border}`,height:"0"})}),Fe("div",{className:0===n?$t.create("form-navigation-inline-first",{paddingTop:bt.spacing.lg,display:"flex",alignItems:"center",justifyContent:"flex-end"}):$t.create("form-navigation-inline",{paddingTop:bt.spacing.lg,display:"flex",alignItems:"center",justifyContent:"space-between"}),children:[n>0&&Fe(is,{onClick:()=>null==l?void 0:l.navigateToPreviousPage(),variant:"outline",children:"Back"}),!_&&Fe(is,{onClick:async function(){l.validateCurrentPage().length>0||(n===r-1?await(null==l?void 0:l.calculateQuote()):await(null==l?void 0:l.navigateToNextPage()))},disabled:a,loading:a,children:n===r-1?"Get Quote":"Continue"})]})]})]}),Fe("div",{className:$t.create("form-sidebar",{display:"block"},{"(max-width: 950px)":{display:"none"}}),children:Fe(Zs,{pages:e.pages,currentPageIndex:n,completedPages:T})}),Fe("div",{className:$t.create("form-mobile-actions",{display:"none"},{"(max-width: 950px)":{display:"block"}}),children:Fe(Vs,{pages:e.pages,completedPages:T})})]}),(null==s?void 0:s.reference)&&Fe("p",{className:$t.create("form-quote-reference",{margin:"0",marginTop:bt.spacing.md,textAlign:"center",fontSize:bt.fontSize.small,color:bt.colors.mutedForeground}),children:["Quote reference: ",Fe("strong",{style:{color:bt.colors.foreground,fontWeight:600},children:s.reference})]})]})]})})}function oa(){var e,t,n;const{quoteIntent:r,fsm:i}=At(e=>({quoteIntent:e.getQuoteIntent(),fsm:e})),o=null==r?void 0:r.payment_return,s=null==o?void 0:o.paymentTransactionId,a=null==o?void 0:o.transactionStatus,l=null===(e=null==r?void 0:r.organisation)||void 0===e?void 0:e.name,c=null===(t=null==r?void 0:r.organisation)||void 0===t?void 0:t.admin_email,d=null===(n=null==r?void 0:r.organisation)||void 0===n?void 0:n.phone,u=c||d;ot(()=>{if(s&&r){const e=null==o?void 0:o.paymentStatus,t=null==a?void 0:a.amount;"success"===e&&a?je(r,s,t||0,a.gateway_code,t,void 0):e&&["declined","cancelled","error"].includes(e)&&We(r,s,t,null==a?void 0:a.gateway_code,e,null==a?void 0:a.status)}const e=setTimeout(()=>{null==i||i.clearStoredQuoteIntent()},2e3);return()=>clearTimeout(e)},[i,s,o,r]);const h=$t.create("success-card",{backgroundColor:bt.colors.card,borderRadius:bt.radius.large,padding:bt.spacing.xl,boxShadow:bt.shadow.sm,maxWidth:"42rem",margin:"0 auto"},{"(max-width: 768px)":{padding:bt.spacing.lg},"(max-width: 480px)":{padding:bt.spacing.md}}),m=$t.create("success-icon-container",{display:"flex",justifyContent:"center",marginBottom:bt.spacing.lg}),f=$t.create("success-icon",{width:"5rem",height:"5rem",borderRadius:"50%",backgroundColor:"#10b981",color:"white",display:"flex",alignItems:"center",justifyContent:"center"}),p=$t.create("success-header",{textAlign:"center",marginBottom:bt.spacing.xl}),g=$t.create("success-title",{margin:"0",marginBottom:bt.spacing.sm,fontSize:"2rem",fontWeight:"700",color:bt.colors.primary,lineHeight:"1.2",letterSpacing:"-0.025em"},{"(max-width: 768px)":{fontSize:"1.75rem"},"(max-width: 480px)":{fontSize:"1.5rem"}}),y=$t.create("success-message",{fontSize:bt.fontSize.default,lineHeight:"1.6",color:bt.colors.foreground,opacity:"0.9",margin:"0"}),v=$t.create("success-contact-section",{borderTop:`1px solid ${bt.colors.border}`,paddingTop:bt.spacing.xl,marginTop:bt.spacing.xl}),w=$t.create("success-contact-title",{fontSize:"1.125rem",fontWeight:"600",color:bt.colors.foreground,marginBottom:bt.spacing.md,textAlign:"center"}),b=$t.create("success-contact-details",{backgroundColor:bt.colors.accent,borderRadius:bt.radius.default,padding:bt.spacing.md,display:"flex",flexDirection:"column",gap:bt.spacing.sm,marginBottom:bt.spacing.lg}),x=$t.create("success-contact-item",{display:"flex",alignItems:"center",gap:bt.spacing.sm,fontSize:bt.fontSize.small,color:bt.colors.accentForeground}),k=$t.create("success-actions",{display:"flex",gap:bt.spacing.md,flexWrap:"wrap",justifyContent:"center"}),N=$t.create("success-reference",{fontSize:bt.fontSize.small,color:bt.colors.mutedForeground,textAlign:"center",marginTop:bt.spacing.md});return Fe(ns,{title:"Payment Successful",description:"Your payment has been processed successfully",noSubscription:!0,hideHeader:!0,children:Fe(Mt,{children:Fe(ss,{children:Fe("div",{className:h,children:[Fe("div",{className:m,children:Fe("div",{className:f,children:Fe("svg",{xmlns:"http://www.w3.org/2000/svg",width:"48",height:"48",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor","stroke-width":"2","stroke-linecap":"round","stroke-linejoin":"round",children:Fe("path",{d:"M20 6 9 17l-5-5"})})})}),Fe("div",{className:p,children:[Fe("h1",{className:g,children:"Payment Complete!"}),Fe("p",{className:y,children:["Your payment has been processed successfully and your policy is being set up. You will receive your policy documentation by email."," ","For now, you can relax knowing you're ",l?`covered by ${l}`:"covered","."]})]}),u&&Fe("div",{className:v,children:[Fe("h3",{className:w,children:"Need assistance?"}),Fe("div",{className:b,children:[c&&Fe("div",{className:x,children:[Fe("svg",{xmlns:"http://www.w3.org/2000/svg",width:"16",height:"16",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor","stroke-width":"2","stroke-linecap":"round","stroke-linejoin":"round",children:[Fe("rect",{width:"20",height:"16",x:"2",y:"4",rx:"2"}),Fe("path",{d:"m22 7-8.97 5.7a1.94 1.94 0 0 1-2.06 0L2 7"})]}),Fe("span",{children:c})]}),d&&Fe("div",{className:x,children:[Fe("svg",{xmlns:"http://www.w3.org/2000/svg",width:"16",height:"16",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor","stroke-width":"2","stroke-linecap":"round","stroke-linejoin":"round",children:Fe("path",{d:"M22 16.92v3a2 2 0 0 1-2.18 2 19.79 19.79 0 0 1-8.63-3.07 19.5 19.5 0 0 1-6-6 19.79 19.79 0 0 1-3.07-8.67A2 2 0 0 1 4.11 2h3a2 2 0 0 1 2 1.72 12.84 12.84 0 0 0 .7 2.81 2 2 0 0 1-.45 2.11L8.09 9.91a16 16 0 0 0 6 6l1.27-1.27a2 2 0 0 1 2.11-.45 12.84 12.84 0 0 0 2.81.7A2 2 0 0 1 22 16.92z"})}),Fe("span",{children:d})]})]}),Fe("div",{className:k,children:[d&&Fe(is,{variant:"outline",onClick:()=>window.open(`tel:${d}`),children:[Fe("svg",{xmlns:"http://www.w3.org/2000/svg",width:"16",height:"16",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor","stroke-width":"2","stroke-linecap":"round","stroke-linejoin":"round",style:{marginRight:"0.5rem"},children:Fe("path",{d:"M22 16.92v3a2 2 0 0 1-2.18 2 19.79 19.79 0 0 1-8.63-3.07 19.5 19.5 0 0 1-6-6 19.79 19.79 0 0 1-3.07-8.67A2 2 0 0 1 4.11 2h3a2 2 0 0 1 2 1.72 12.84 12.84 0 0 0 .7 2.81 2 2 0 0 1-.45 2.11L8.09 9.91a16 16 0 0 0 6 6l1.27-1.27a2 2 0 0 1 2.11-.45 12.84 12.84 0 0 0 2.81.7A2 2 0 0 1 22 16.92z"})}),"Call Us"]}),c&&Fe(is,{variant:"outline",onClick:()=>window.open(`mailto:${c}`),children:[Fe("svg",{xmlns:"http://www.w3.org/2000/svg",width:"16",height:"16",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor","stroke-width":"2","stroke-linecap":"round","stroke-linejoin":"round",style:{marginRight:"0.5rem"},children:[Fe("rect",{width:"20",height:"16",x:"2",y:"4",rx:"2"}),Fe("path",{d:"m22 7-8.97 5.7a1.94 1.94 0 0 1-2.06 0L2 7"})]}),"Email Us"]})]})]}),r.reference&&Fe("div",{className:N,children:["Quote Reference: ",Fe("strong",{children:r.reference})]})]})})})})}function sa({isOpen:e,onClose:t,onSuccess:n,paymentRequest:r,httpClient:i}){const[o,s]=it("initiating"),[a,l]=it(null),[c,d]=it(null),[u,h]=it(null);ot(()=>{e&&r&&m()},[e,r]);const m=async()=>{var e;if(r)try{s("initiating"),l(null);const t={...r,returnUrl:window.location.href},n=null===(e=r.metadata)||void 0===e?void 0:e.gateway;if(!n)throw new Error("Payment gateway not found");const o=await i.initiatePayment(t,n);h(o.transaction_id),s("redirecting"),window.location.href=o.gateway_acceptance_url}catch(e){l(e.message||"Failed to initiate payment"),s("failed")}},f=()=>{c&&!c.closed&&c.close(),s("initiating"),l(null),h(null),d(null),t()};return e?Fe("div",{className:$t.create("modal-overlay",{position:"fixed",top:"0",left:"0",width:"100%",height:"100%",backgroundColor:"rgba(0, 0, 0, 0.5)",display:"flex",alignItems:"center",justifyContent:"center",zIndex:"1000"}),children:[Fe("div",{className:$t.create("modal-content",{backgroundColor:bt.colors.card,borderRadius:bt.radius.large,padding:"2rem",minWidth:"400px",maxWidth:"500px",boxShadow:"0 10px 25px rgba(0, 0, 0, 0.2)",border:`1px solid ${bt.colors.border}`}),children:[Fe("div",{className:$t.create("modal-header",{textAlign:"center",marginBottom:"1.5rem"}),children:[Fe("div",{className:$t.create("status-icon",{fontSize:"3rem",marginBottom:"1rem"}),children:(()=>{switch(o){case"completed":return"✅";case"cancelled":return"❌";case"failed":return"⚠️";default:return"⏳"}})()}),Fe("h2",{className:$t.create("modal-title",{margin:"0",color:bt.colors.foreground,fontSize:bt.fontSize.large}),children:"Payment Processing"})]}),Fe("div",{className:$t.create("modal-body",{textAlign:"center",marginBottom:"2rem"}),children:[Fe(ls,{className:$t.create("status-message",{fontSize:bt.fontSize.default,color:bt.colors.mutedForeground,marginBottom:"1rem"}),children:(()=>{switch(o){case"initiating":return"Setting up your payment...";case"redirecting":return"Redirecting to payment portal...";case"processing":default:return"Processing payment...";case"polling":return"Checking payment status...";case"completed":return"Payment completed successfully!";case"cancelled":return"Payment was cancelled";case"failed":return"Payment failed"}})()}),a&&Fe(ls,{className:$t.create("error-message",{color:bt.colors.destructive,fontSize:bt.fontSize.small,padding:"0.75rem",backgroundColor:bt.colors.destructive+"10",borderRadius:bt.radius.default,border:`1px solid ${bt.colors.destructive}30`}),children:a}),("redirecting"===o||"initiating"===o)&&Fe("div",{className:$t.create("loading-indicator",{display:"inline-block",width:"20px",height:"20px",marginTop:"1rem",border:`3px solid ${bt.colors.border}`,borderTop:`3px solid ${bt.colors.primary}`,borderRadius:"50%",animation:"spin 1s linear infinite"})})]}),Fe("div",{className:$t.create("modal-actions",{display:"flex",gap:"1rem",justifyContent:"center"}),children:"failed"===o||"cancelled"===o?Fe(_,{children:[Fe(is,{onClick:f,variant:"outline",children:"Close"}),"cancelled"===o&&Fe(is,{onClick:()=>{s("initiating"),l(null),m()},children:"Try Again"})]}):Fe(is,"completed"===o?{onClick:f,children:"Continue"}:{onClick:f,variant:"outline",disabled:"initiating"===o,children:"Cancel"})})]}),Fe("style",{children:"\n @keyframes spin {\n 0% { transform: rotate(0deg); }\n 100% { transform: rotate(360deg); }\n }\n "})]}):null}function aa({transactionId:e,organisationId:t,allowCancel:n=!0}){const{httpClient:r}=Wt(),[i,o]=it(!0),[s,a]=it(null),[l,c]=it(null),[d,u]=it(!1),[h,m]=it(!1),[f,p]=it(!1);ot(()=>{g()},[e]);const g=async()=>{try{if(o(!0),a(null),!r)throw new Error("HTTP client not available");const n=r.getBaseUrl(),i=await fetch(`${n}/payments/bank-transfer/${e}?orgId=${t}`);if(!i.ok)throw new Error(`Failed to load bank transfer details: ${i.statusText}`);const s=await i.json(),l=s.data||s;c({bank_account_name:l.bank_account_name,bank_account_number:l.bank_account_number,instructions_html:l.instructions_html,reference:l.reference,amount:Number(l.amount),currency:l.currency})}catch(e){a(e.message||"Failed to load bank transfer details")}finally{o(!1)}};return i?Fe(rs,{message:"Loading payment details..."}):s?Fe(ns,{title:"Error",description:"Failed to load bank transfer details",noSubscription:!0,hideHeader:!0,children:Fe(Mt,{children:Fe(ss,{children:Fe("div",{className:$t.create("error-card",{backgroundColor:bt.colors.card,borderRadius:bt.radius.large,padding:bt.spacing.xl,boxShadow:bt.shadow.sm,maxWidth:"42rem",margin:"0 auto",textAlign:"center"},{"(max-width: 480px)":{padding:bt.spacing.lg}}),children:[Fe("div",{className:$t.create("error-icon",{fontSize:"3rem",marginBottom:bt.spacing.md,color:bt.colors.destructive}),children:"⚠️"}),Fe("h2",{className:$t.create("error-title",{margin:"0",marginBottom:bt.spacing.sm,color:bt.colors.foreground}),children:"Error Loading Payment Details"}),Fe("p",{className:$t.create("error-message",{color:bt.colors.mutedForeground}),children:s})]})})})}):l?Fe(ns,{title:"Bank Transfer Payment",description:"Complete your payment via bank transfer",noSubscription:!0,hideHeader:!0,children:Fe(Mt,{children:[Fe(ss,{children:Fe("div",{className:$t.create("bank-transfer-container",{backgroundColor:bt.colors.card,borderRadius:bt.radius.large,maxWidth:"42rem",margin:"0 auto",overflow:"hidden",boxShadow:"0 20px 60px rgba(0,0,0,0.1)"}),children:[Fe("div",{style:{backgroundColor:bt.colors.primary},className:$t.create("bank-transfer-header",{color:"white",padding:"2.5rem 2rem",textAlign:"center"},{"(max-width: 480px)":{padding:"1.5rem 1rem"}}),children:[Fe("h1",{className:$t.create("header-title",{fontSize:"1.75rem",fontWeight:"700",margin:"0",marginBottom:"0.5rem"},{"(max-width: 480px)":{fontSize:"1.25rem",marginBottom:"0.25rem"}}),children:"Bank Transfer Payment"}),Fe("p",{className:$t.create("header-subtitle",{fontSize:"1rem",margin:"0",opacity:"0.9"},{"(max-width: 480px)":{fontSize:bt.fontSize.small}}),children:"Complete your payment using the details below"})]}),Fe("div",{className:$t.create("bank-transfer-content",{padding:"2rem"},{"(max-width: 480px)":{padding:"1rem"}}),children:[Fe("div",{className:$t.create("payment-details-card",{backgroundColor:"#f9fafb",border:"1px solid #e5e7eb",borderRadius:bt.radius.default,padding:"1.5rem",marginBottom:"1.5rem"},{"(max-width: 480px)":{padding:"1rem",marginBottom:"1rem"}}),children:[Fe("div",{className:$t.create("detail-row-amount",{display:"flex",justifyContent:"space-between",alignItems:"center",padding:"0.75rem 0",borderBottom:"1px solid #e5e7eb"},{"(max-width: 480px)":{flexDirection:"column",alignItems:"flex-start",gap:"0.5rem"}}),children:[Fe("span",{className:$t.create("detail-label",{color:"#6b7280",fontSize:bt.fontSize.default}),children:"Amount to Transfer"}),Fe("span",{className:$t.create("detail-value-amount",{color:bt.colors.primary,fontSize:"1.5rem",fontWeight:"700"},{"(max-width: 480px)":{fontSize:"1.25rem"}}),children:["$",l.amount.toFixed(2)," ",l.currency]})]}),Fe("div",{className:$t.create("detail-row-name",{display:"flex",justifyContent:"space-between",alignItems:"center",padding:"0.75rem 0",borderBottom:"1px solid #e5e7eb"},{"(max-width: 480px)":{flexDirection:"column",alignItems:"flex-start",gap:"0.25rem"}}),children:[Fe("span",{className:$t.create("detail-label-name",{color:"#6b7280",fontSize:bt.fontSize.default}),children:"Account Name"}),Fe("span",{className:$t.create("detail-value-name",{color:bt.colors.foreground,fontSize:bt.fontSize.default,fontWeight:"600"}),children:l.bank_account_name})]}),Fe("div",{className:$t.create("detail-row-number",{display:"flex",justifyContent:"space-between",alignItems:"center",padding:"0.75rem 0",borderBottom:"1px solid #e5e7eb"},{"(max-width: 480px)":{flexDirection:"column",alignItems:"flex-start",gap:"0.25rem"}}),children:[Fe("span",{className:$t.create("detail-label-number",{color:"#6b7280",fontSize:bt.fontSize.default}),children:"Account Number"}),Fe("span",{className:$t.create("detail-value-number",{color:bt.colors.foreground,fontSize:bt.fontSize.default,fontWeight:"600"}),children:l.bank_account_number})]}),Fe("div",{className:$t.create("detail-row-ref",{display:"flex",justifyContent:"space-between",alignItems:"center",padding:"0.75rem 0"},{"(max-width: 480px)":{flexDirection:"column",alignItems:"flex-start",gap:"0.25rem"}}),children:[Fe("span",{className:$t.create("detail-label-ref",{color:"#6b7280",fontSize:bt.fontSize.default}),children:"Payment Reference"}),Fe("span",{className:$t.create("detail-value-ref",{color:bt.colors.foreground,fontSize:bt.fontSize.default,fontWeight:"600"}),children:l.reference})]})]}),Fe("div",{className:$t.create("instructions-card",{backgroundColor:bt.colors.muted,border:`1px solid ${bt.colors.border}`,borderRadius:bt.radius.default,padding:"1.25rem",marginBottom:"1.5rem"},{"(max-width: 480px)":{padding:"1rem",marginBottom:"1rem"}}),children:[Fe("h3",{className:$t.create("instructions-title",{margin:"0 0 0.75rem 0",fontSize:bt.fontSize.default,fontWeight:"600",color:bt.colors.foreground}),children:"Payment Instructions"}),Fe("p",{className:$t.create("instructions-text",{margin:"0 0 0.75rem 0",fontSize:bt.fontSize.small,lineHeight:"1.6",color:bt.colors.foreground}),children:[Fe("strong",{children:"Important:"})," Please include the payment reference when making your transfer to ensure your payment is processed correctly."]}),Fe("p",{className:$t.create("instructions-text",{margin:"0",fontSize:bt.fontSize.small,lineHeight:"1.6",color:bt.colors.foreground}),children:"Once we receive your payment, we'll process your quote and send you a confirmation email."})]}),Fe("div",{className:$t.create("button-wrapper",{textAlign:"center",marginBottom:"1.5rem",display:"flex",gap:"1rem",justifyContent:"center",flexWrap:"wrap"},{"(max-width: 480px)":{flexDirection:"column",gap:"0.75rem",marginBottom:"1rem"}}),children:[Fe("button",{onClick:()=>{u(!0)},style:{backgroundColor:bt.colors.primary},className:$t.create("confirm-button",{color:"white",border:"none",borderRadius:bt.radius.default,padding:"0.75rem 2rem",fontSize:bt.fontSize.default,fontWeight:"600",cursor:"pointer",transition:"opacity 150ms ease"},{"(max-width: 480px)":{width:"100%",padding:"0.625rem 1.5rem"}}),children:"I've Made the Transfer"}),n&&Fe("button",{onClick:()=>{m(!0)},className:$t.create("cancel-button",{color:"#6b7280",backgroundColor:"white",border:"2px solid #e5e7eb",borderRadius:bt.radius.default,padding:"0.75rem 2rem",fontSize:bt.fontSize.default,fontWeight:"600",cursor:"pointer",transition:"all 150ms ease"},{"(max-width: 480px)":{width:"100%",padding:"0.625rem 1.5rem"}}),children:"Cancel"})]}),Fe("p",{className:$t.create("footer-text",{textAlign:"center",color:"#6b7280",fontSize:bt.fontSize.small,margin:"0"}),children:"Your quote has been saved. We'll process it once payment is received."})]})]})}),h&&Fe("div",{className:$t.create("modal-overlay",{position:"fixed",top:"0",left:"0",width:"100%",height:"100%",backgroundColor:"rgba(0, 0, 0, 0.5)",display:"flex",alignItems:"center",justifyContent:"center",zIndex:"1000"}),onClick:()=>!f&&m(!1),children:Fe("div",{className:$t.create("modal-content",{backgroundColor:bt.colors.card,borderRadius:bt.radius.large,padding:bt.spacing.xl,maxWidth:"400px",boxShadow:"0 10px 25px rgba(0, 0, 0, 0.2)",border:`1px solid ${bt.colors.border}`,textAlign:"center"},{"(max-width: 480px)":{padding:bt.spacing.lg,margin:"0 1rem"}}),onClick:e=>e.stopPropagation(),children:[Fe("div",{className:$t.create("warning-icon",{fontSize:"4rem",marginBottom:bt.spacing.md}),children:"⚠️"}),Fe("h3",{className:$t.create("modal-title",{margin:"0",marginBottom:bt.spacing.sm,color:bt.colors.foreground,fontSize:bt.fontSize.large,fontWeight:"600"}),children:"Are you sure?"}),Fe("p",{className:$t.create("modal-message",{margin:"0",marginBottom:bt.spacing.lg,color:bt.colors.foreground,lineHeight:"1.6"}),children:"This will take you back to the checkout page."}),Fe("div",{className:$t.create("modal-buttons",{display:"flex",flexDirection:"column-reverse",gap:"0.75rem",justifyContent:"center"}),children:[Fe("button",{onClick:()=>m(!1),disabled:f,className:$t.create("no-button",{backgroundColor:"#f3f4f6",color:bt.colors.foreground,border:"none",borderRadius:bt.radius.default,padding:`${bt.spacing.sm} ${bt.spacing.lg}`,fontSize:bt.fontSize.default,fontWeight:"500",cursor:f?"not-allowed":"pointer",transition:"opacity 150ms ease",opacity:f?"0.5":"1",width:"100%"}),children:"No, Go Back"}),Fe("button",{onClick:async()=>{if(r)try{p(!0);const n=r.getBaseUrl();if(!(await fetch(`${n}/payments/${e}/cancel-bank-transfer?orgId=${t}`,{method:"POST",headers:{"Content-Type":"application/json"}})).ok)throw new Error("Failed to cancel payment");window.location.reload()}catch(e){a("Failed to cancel payment. Please try again."),m(!1),p(!1)}},disabled:f,className:$t.create("yes-button",{backgroundColor:"#ef4444",color:"white",border:"none",borderRadius:bt.radius.default,padding:`${bt.spacing.sm} ${bt.spacing.lg}`,fontSize:bt.fontSize.default,fontWeight:"500",cursor:f?"not-allowed":"pointer",transition:"opacity 150ms ease",opacity:f?"0.5":"1",width:"100%"}),children:f?"Cancelling...":"Yes, Cancel Payment"})]})]})}),d&&Fe("div",{className:$t.create("modal-overlay",{position:"fixed",top:"0",left:"0",width:"100%",height:"100%",backgroundColor:"rgba(0, 0, 0, 0.5)",display:"flex",alignItems:"center",justifyContent:"center",zIndex:"1000"}),onClick:()=>u(!1),children:Fe("div",{className:$t.create("modal-content",{backgroundColor:bt.colors.card,borderRadius:bt.radius.large,padding:bt.spacing.xl,maxWidth:"400px",boxShadow:"0 10px 25px rgba(0, 0, 0, 0.2)",border:`1px solid ${bt.colors.border}`,textAlign:"center"},{"(max-width: 480px)":{padding:bt.spacing.lg,margin:"0 1rem"}}),onClick:e=>e.stopPropagation(),children:[Fe("div",{className:$t.create("success-icon",{fontSize:"4rem",marginBottom:bt.spacing.md}),children:"✓"}),Fe("h3",{className:$t.create("modal-title",{margin:"0",marginBottom:bt.spacing.sm,color:bt.colors.primary,fontSize:bt.fontSize.large,fontWeight:"600"}),children:"Thank You!"}),Fe("p",{className:$t.create("modal-message",{margin:"0",marginBottom:bt.spacing.lg,color:bt.colors.foreground,lineHeight:"1.6"}),children:"We'll process your payment as soon as we receive it. You'll receive a confirmation email once your coverage is activated."}),Fe("button",{onClick:()=>u(!1),className:$t.create("close-button",{backgroundColor:bt.colors.primary,color:"white",border:"none",borderRadius:bt.radius.default,padding:`${bt.spacing.sm} ${bt.spacing.lg}`,fontSize:bt.fontSize.default,fontWeight:"500",cursor:"pointer",transition:"opacity 150ms ease"}),children:"Close"})]})})]})}):null}$t.pseudoElement("sidebar-continue-later-button",":hover",{backgroundColor:bt.colors.muted,borderColor:bt.colors.primary,color:bt.colors.primary});class la{static async loadTheme(e){try{if(t(e.slug),t(e.theme_url),this.loadedThemes.has(e.slug))return void t(e.slug);const n=await fetch(e.theme_url,{method:"GET",headers:{Accept:"text/css"}});if(!n.ok)throw new Error(`Failed to load theme: ${n.status} ${n.statusText}`);const r=await n.text();t(r.substring(0,200));const i=this.parseCSSContent(r);t(i.mappedVariables),t(i.classRules.length),this.applyParsedTheme(e.slug,i),this.loadedThemes.add(e.slug),t(e.slug)}catch(n){throw t(e.slug),n}}static parseCSSContent(e){t();const n={},r={};let i="";const o=e.match(/:root\s*\{([^}]+)\}/);if(o){const e=o[1];t(null==e||e.substring(0,100));const i=/--([\w-]+):\s*([^;]+);/g;let s;for(;null!==(s=i.exec(e));){const e=`--${s[1]}`,i=s[2].trim();n[e]=i;const o=this.variableMapping[e];o?(r[o]=i,t()):t()}}else t();return i=e.replace(/:root\s*\{[^}]+\}/,"").replace(/\/\*[\s\S]*?\*\//g,"").trim(),i&&t(i.substring(0,100)),{variables:n,classRules:i,mappedVariables:r}}static applyParsedTheme(e,n){t(),Promise.resolve().then(function(){return It}).then(({updateBaseVariables:e})=>{Object.keys(n.mappedVariables).length>0&&(t(n.mappedVariables),e(n.mappedVariables))}).catch(()=>{t()}),n.classRules&&this.applyClassRules(e,n.classRules),this.injectOriginalCSS(e,n)}static applyClassRules(e,n){const r=document.getElementById(`insure-os-theme-classes-${e}`);if(r&&r.remove(),n.trim()){const r=document.createElement("style");r.id=`insure-os-theme-classes-${e}`,r.type="text/css",r.textContent=n,document.head.appendChild(r),t()}}static injectOriginalCSS(e,n){const r=document.getElementById(`insure-os-theme-original-${e}`);r&&r.remove();const i={};for(const[e,t]of Object.entries(n.variables))this.variableMapping[e]||(i[e]=t);if(Object.keys(i).length>0){const n=`:root {\n${Object.entries(i).map(([e,t])=>` ${e}: ${t};`).join("\n")}\n}`,r=document.createElement("style");r.id=`insure-os-theme-original-${e}`,r.type="text/css",r.textContent=n,document.head.appendChild(r),t()}}static removeTheme(e){let n=!1;[`insure-os-theme-classes-${e}`,`insure-os-theme-original-${e}`].forEach(e=>{const t=document.getElementById(e);t&&(t.remove(),n=!0)}),n&&(this.loadedThemes.delete(e),t())}static isThemeLoaded(e){return this.loadedThemes.has(e)}static getLoadedThemes(){return Array.from(this.loadedThemes)}}la.loadedThemes=new Set,la.variableMapping={"--color-primary":"--insure-os-primary","--color-primary-foreground":"--insure-os-primary-foreground","--color-secondary":"--insure-os-secondary","--color-secondary-foreground":"--insure-os-secondary-foreground","--color-accent":"--insure-os-accent","--color-accent-foreground":"--insure-os-accent-foreground","--color-background":"--insure-os-background","--color-foreground":"--insure-os-foreground","--color-card":"--insure-os-card","--color-card-foreground":"--insure-os-card-foreground","--color-popover":"--insure-os-popover","--color-popover-foreground":"--insure-os-popover-foreground","--color-muted":"--insure-os-muted","--color-muted-foreground":"--insure-os-muted-foreground","--color-destructive":"--insure-os-destructive","--color-border":"--insure-os-border","--color-input":"--insure-os-input","--color-ring":"--insure-os-ring","--font-sans":"--insure-os-font-family","--radius":"--insure-os-radius","--radius-sm":"--insure-os-radius-sm","--radius-lg":"--insure-os-radius-lg"};var ca=Object.freeze({__proto__:null,ThemeLoader:la});function da(e,t){return"windcave"!==e?"Provider Fee:":"account2account"===t?"Account2Account surcharge:":"Credit card surcharge:"}function ua(e){var t;return(null===(t=e.metadata)||void 0===t?void 0:t.gateway_method)?`${e.gateway_code}:${e.metadata.gateway_method}`:e.gateway_code}function ha({paymentLinkId:e,signedUrl:n}){var r,i,o,s,a,l,c,d,u,h,m,f,p,g;const y=Wt().httpClient,[v,w]=it(null),[b,x]=it(!0),[k,N]=it(null),[S,C]=it(!1),[$,I]=it(null),[T,E]=it(null),[P,z]=it(null),[D,R]=it(!1),[M,O]=it(null),[j,W]=it(null),[A,L]=it(!0),B="undefined"!=typeof window?new URLSearchParams(window.location.search):new URLSearchParams,[q,F]=it("processing"===B.get("status")?B.get("transactionId"):null),[H,U]=it(()=>Ts()),[Y,Z]=it(null),[G,V]=it(!1),[Q,J]=it(null),[K,X]=it(null),[ee,te]=it(null);ot(()=>{ne()},[e]);const ne=async()=>{var r,i,o;try{x(!0);const s=new URLSearchParams(window.location.search),a=s.get("transactionId"),l=s.get("status"),c=s.get("gateway_code"),d=s.get("method"),u=s.get("excess_id");a&&l&&(R(!0),O(l),W(a)),c&&z(d?`${c}:${d}`:c);const h=n?await y.getPaymentLinkDetails(n):await y.getPaymentLinkById(e);if(h.organisation&&h.organisation.theme)try{await la.loadTheme({slug:h.organisation.slug,theme_url:h.organisation.theme.css_url})}catch(e){t()}if("paid"===h.status&&!D&&(!a||"completed"!==l&&"success"!==l))return w(h),void N("This payment link has already been used.");if("superseded"===h.status)return w(h),void N("This payment link has been replaced by a newer one. Please use the latest link you received.");if("confirmed"===h.status)return w(h),void X({message:"Your renewal is confirmed. Your premium funding will continue automatically on the policy start date.",effectiveDate:null===(r=h.metadata)||void 0===r?void 0:r.effective_date});if("expired"===h.status)return w(h),void N("This payment link has expired.");if("cancelled"===h.status)return w(h),void N("This payment link has been cancelled.");if("outdated"===h.status)return w(h),void N("This payment link is no longer valid because the quote has been updated. Please request a new payment link.");if("awaiting_payment"===h.status&&h.pending_bank_transfer){const e=h.pending_bank_transfer;return t(),void te({transactionId:e.transaction_id,organisationId:(null===(i=h.organisation)||void 0===i?void 0:i.id)||""})}if(u){const e=h.calculations.find(e=>e.excess_id===u);e?E(e.id):1===h.calculations.length&&h.calculations[0]&&E(h.calculations[0].id)}else 1===h.calculations.length&&h.calculations[0]&&E(h.calculations[0].id);!c&&1===h.payment_options.length&&h.payment_options[0]&&z(ua(h.payment_options[0])),w(h),(null===(o=h.organisation)||void 0===o?void 0:o.quote_page_url)&&J(h.organisation.quote_page_url)}catch(e){N("Failed to load payment details. Please check your link.")}finally{x(!1)}},re=at(()=>v&&T?v.calculations.find(e=>e.id===T):null,[v,T]),ie=at(()=>v&&P?v.payment_options.find(e=>ua(e)===P):null,[v,P]);if(ee)return Fe(aa,{transactionId:ee.transactionId,organisationId:ee.organisationId,allowCancel:!0});if(K){const e=null==v?void 0:v.organisation,t=null==e?void 0:e.admin_email,n=null==e?void 0:e.phone,r=t||n;return Fe(ns,{title:"Renewal Confirmed",noSubscription:!0,hideHeader:!0,children:Fe(Mt,{children:Fe("div",{className:$t.create("auto-renew-success-card",{backgroundColor:bt.colors.card,borderRadius:bt.radius.large,padding:bt.spacing.xl,boxShadow:bt.shadow.sm,maxWidth:"42rem",margin:"0 auto"}),children:[Fe("div",{className:$t.create("success-icon-container",{display:"flex",justifyContent:"center",marginBottom:bt.spacing.lg}),children:Fe("div",{className:$t.create("success-icon",{width:"5rem",height:"5rem",borderRadius:"50%",backgroundColor:"#10b981",color:"white",display:"flex",alignItems:"center",justifyContent:"center"}),children:Fe("svg",{xmlns:"http://www.w3.org/2000/svg",width:"48",height:"48",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor","stroke-width":"2","stroke-linecap":"round","stroke-linejoin":"round",children:Fe("path",{d:"M20 6 9 17l-5-5"})})})}),Fe("div",{className:$t.create("success-header",{textAlign:"center",marginBottom:bt.spacing.xl}),children:[Fe("h1",{className:$t.create("success-title",{margin:"0",marginBottom:bt.spacing.sm,fontSize:"2rem",fontWeight:"700",color:bt.colors.primary,lineHeight:"1.2",letterSpacing:"-0.025em"}),children:"Renewal Confirmed"}),Fe("p",{className:$t.create("success-message",{fontSize:bt.fontSize.default,lineHeight:"1.6",color:bt.colors.foreground,opacity:"0.9",margin:"0"}),children:K.message})]}),K.effectiveDate&&Fe("div",{className:$t.create("payment-date-box",{backgroundColor:bt.colors.accent,borderRadius:bt.radius.default,padding:bt.spacing.lg,marginBottom:bt.spacing.lg,textAlign:"center"}),children:[Fe("p",{className:$t.create("payment-date-label",{fontSize:bt.fontSize.small,color:bt.colors.mutedForeground,margin:"0",marginBottom:bt.spacing.sm}),children:"Your first payment will be on"}),Fe("p",{className:$t.create("payment-date-value",{fontSize:"1.25rem",fontWeight:"600",color:bt.colors.foreground,margin:"0"}),children:new Date(K.effectiveDate).toLocaleDateString("en-NZ",{weekday:"long",year:"numeric",month:"long",day:"numeric"})})]}),Fe("div",{className:$t.create("info-box",{backgroundColor:bt.colors.muted,borderRadius:bt.radius.default,padding:bt.spacing.md,marginBottom:bt.spacing.lg}),children:Fe("p",{className:$t.create("info-text",{fontSize:bt.fontSize.small,color:bt.colors.mutedForeground,margin:"0",textAlign:"center"}),children:"No further action is required. Your monthly payments will continue as normal."})}),r&&Fe("div",{className:$t.create("contact-section",{borderTop:`1px solid ${bt.colors.border}`,paddingTop:bt.spacing.xl,marginTop:bt.spacing.xl}),children:[Fe("h3",{className:$t.create("contact-title",{fontSize:"1.125rem",fontWeight:"600",color:bt.colors.foreground,marginBottom:bt.spacing.md,textAlign:"center"}),children:"Need assistance?"}),Fe("div",{className:$t.create("contact-details",{backgroundColor:bt.colors.accent,borderRadius:bt.radius.default,padding:bt.spacing.md,display:"flex",flexDirection:"column",gap:bt.spacing.sm}),children:[t&&Fe("div",{className:$t.create("contact-item",{display:"flex",alignItems:"center",gap:bt.spacing.sm,fontSize:bt.fontSize.small,color:bt.colors.accentForeground}),children:Fe("span",{children:["Email: ",t]})}),n&&Fe("div",{className:$t.create("contact-item",{display:"flex",alignItems:"center",gap:bt.spacing.sm,fontSize:bt.fontSize.small,color:bt.colors.accentForeground}),children:Fe("span",{children:["Phone: ",n]})})]})]})]})})})}if(q&&y)return Fe(ns,{title:"Payment Processing",noSubscription:!0,hideHeader:!0,children:Fe(Cs,{httpClient:y,transactionId:q,onResolved:async e=>{const t="completed"===e?"success":"cancelled"===e?"cancelled":"failed"===e?"declined":"error",n=new URL(window.location.href);n.searchParams.set("status",t),q&&n.searchParams.set("transactionId",q),window.history.replaceState({},"",n.toString()),F(null),await ne()},onError:async()=>{const e=new URL(window.location.href);e.searchParams.set("status","error"),window.history.replaceState({},"",e.toString()),F(null),await ne()}})});if(b)return Fe(rs,{message:"Loading payment details..."});if(k){const e=null==v?void 0:v.organisation,t=null==e?void 0:e.quote_page_url,n=null==e?void 0:e.name,r=null==e?void 0:e.admin_email,i=null==e?void 0:e.phone,o=r||i,s="paid"===(null==v?void 0:v.status),a=s?"Payment Completed":"Payment Link Unavailable",l=s?"Thank you, your payment was received.":k,c=$t.create("pl-error-card",{backgroundColor:bt.colors.card,borderRadius:bt.radius.large,padding:bt.spacing.xl,boxShadow:bt.shadow.sm,maxWidth:"42rem",margin:"0 auto"},{"(max-width: 768px)":{padding:bt.spacing.lg},"(max-width: 480px)":{padding:bt.spacing.md}}),d=$t.create("pl-error-icon-container",{display:"flex",justifyContent:"center",marginBottom:bt.spacing.lg}),u=$t.create("pl-error-icon",{width:"4rem",height:"4rem",color:bt.colors.primary}),h=$t.create("pl-error-header",{textAlign:"center",marginBottom:bt.spacing.xl}),m=$t.create("pl-error-title",{fontSize:"2rem",fontWeight:"700",color:bt.colors.primary,marginBottom:bt.spacing.sm,lineHeight:"1.2",letterSpacing:"-0.025em"},{"(max-width: 768px)":{fontSize:"1.75rem"},"(max-width: 480px)":{fontSize:"1.5rem"}}),f=$t.create("pl-error-subtitle",{fontSize:bt.fontSize.default,color:bt.colors.foreground,lineHeight:"1.6",opacity:"0.8"}),p=$t.create("pl-error-contact-section",{borderTop:`1px solid ${bt.colors.border}`,paddingTop:bt.spacing.xl,marginTop:bt.spacing.xl,textAlign:"center"}),g=$t.create("pl-error-contact-text",{fontSize:bt.fontSize.default,color:bt.colors.foreground,marginBottom:bt.spacing.lg}),y=$t.create("pl-error-actions",{display:"flex",gap:bt.spacing.md,flexWrap:"wrap",justifyContent:"center",marginBottom:bt.spacing.lg}),w=()=>Fe("svg",{xmlns:"http://www.w3.org/2000/svg",width:"24",height:"24",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor","stroke-width":"2","stroke-linecap":"round","stroke-linejoin":"round",className:u,children:[Fe("circle",{cx:"12",cy:"12",r:"10"}),Fe("line",{x1:"12",y1:"8",x2:"12",y2:"12"}),Fe("line",{x1:"12",y1:"16",x2:"12.01",y2:"16"})]}),b=()=>Fe("svg",{xmlns:"http://www.w3.org/2000/svg",width:"24",height:"24",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor","stroke-width":"2","stroke-linecap":"round","stroke-linejoin":"round",className:u,children:[Fe("circle",{cx:"12",cy:"12",r:"10"}),Fe("polyline",{points:"8 12.5 11 15.5 16 9.5"})]});return Fe(ns,{title:"Payment Link",noSubscription:!0,hideHeader:!0,children:Fe(Mt,{children:Fe(ss,{children:Fe("div",{className:c,children:[Fe("div",{className:d,children:Fe(s?b:w,{})}),Fe("div",{className:h,children:[Fe("h1",{className:m,children:a}),Fe("p",{className:f,children:l})]}),t&&Fe("div",{className:$t.create("pl-error-quote-action",{display:"flex",justifyContent:"center",marginBottom:o?"0":bt.spacing.sm}),children:Fe(is,{variant:"primary",onClick:()=>{window.location.href=t},children:"Start a New Quote"})}),o&&Fe("div",{className:p,children:[Fe("p",{className:g,children:n?`Need assistance? Contact ${n}`:"Need assistance? Contact us"}),Fe("div",{className:y,children:[i&&Fe(is,{variant:"outline",onClick:()=>window.open(`tel:${i}`),children:[Fe("svg",{xmlns:"http://www.w3.org/2000/svg",width:"16",height:"16",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor","stroke-width":"2","stroke-linecap":"round","stroke-linejoin":"round",style:{marginRight:"0.5rem"},children:Fe("path",{d:"M22 16.92v3a2 2 0 0 1-2.18 2 19.79 19.79 0 0 1-8.63-3.07 19.5 19.5 0 0 1-6-6 19.79 19.79 0 0 1-3.07-8.67A2 2 0 0 1 4.11 2h3a2 2 0 0 1 2 1.72 12.84 12.84 0 0 0 .7 2.81 2 2 0 0 1-.45 2.11L8.09 9.91a16 16 0 0 0 6 6l1.27-1.27a2 2 0 0 1 2.11-.45 12.84 12.84 0 0 0 2.81.7A2 2 0 0 1 22 16.92z"})}),"Call Us"]}),r&&Fe(is,{variant:"outline",onClick:()=>window.open(`mailto:${r}`),children:[Fe("svg",{xmlns:"http://www.w3.org/2000/svg",width:"16",height:"16",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor","stroke-width":"2","stroke-linecap":"round","stroke-linejoin":"round",style:{marginRight:"0.5rem"},children:[Fe("rect",{width:"20",height:"16",x:"2",y:"4",rx:"2"}),Fe("path",{d:"m22 7-8.97 5.7a1.94 1.94 0 0 1-2.06 0L2 7"})]}),"Email Us"]})]})]})]})})})})}if(!v)return null;const oe=new URLSearchParams(window.location.search),se=oe.get("transactionId"),ae=oe.get("status"),le=se&&ae;if("paid"===v.status&&("completed"===ae||"success"===ae||le||D||"completed"===M)){const e=null===(r=v.organisation)||void 0===r?void 0:r.admin_email,t=null===(i=v.organisation)||void 0===i?void 0:i.phone,n=e||t;return Fe(ns,{title:"Payment Successful",noSubscription:!0,hideHeader:!0,children:Fe(Mt,{children:Fe("div",{className:$t.create("payment-success-card",{backgroundColor:bt.colors.card,borderRadius:bt.radius.large,padding:bt.spacing.xl,boxShadow:bt.shadow.sm,maxWidth:"42rem",margin:"0 auto"}),children:[Fe("div",{className:$t.create("success-icon-container",{display:"flex",justifyContent:"center",marginBottom:bt.spacing.lg}),children:Fe("div",{className:$t.create("success-icon",{width:"5rem",height:"5rem",borderRadius:"50%",backgroundColor:"#10b981",color:"white",display:"flex",alignItems:"center",justifyContent:"center"}),children:Fe("svg",{xmlns:"http://www.w3.org/2000/svg",width:"48",height:"48",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor","stroke-width":"2","stroke-linecap":"round","stroke-linejoin":"round",children:Fe("path",{d:"M20 6 9 17l-5-5"})})})}),Fe("div",{className:$t.create("success-header",{textAlign:"center",marginBottom:bt.spacing.xl}),children:[Fe("h1",{className:$t.create("success-title",{margin:"0",marginBottom:bt.spacing.sm,fontSize:"2rem",fontWeight:"700",color:bt.colors.primary,lineHeight:"1.2",letterSpacing:"-0.025em"}),children:"Payment Complete!"}),Fe("p",{className:$t.create("success-message",{fontSize:bt.fontSize.default,lineHeight:"1.6",color:bt.colors.foreground,opacity:"0.9",margin:"0"}),children:"Your payment has been processed successfully! You will receive your documentation by email."})]}),n&&Fe("div",{className:$t.create("contact-section",{borderTop:`1px solid ${bt.colors.border}`,paddingTop:bt.spacing.xl,marginTop:bt.spacing.xl}),children:[Fe("h3",{className:$t.create("contact-title",{fontSize:"1.125rem",fontWeight:"600",color:bt.colors.foreground,marginBottom:bt.spacing.md,textAlign:"center"}),children:"Need assistance?"}),Fe("div",{className:$t.create("contact-details",{backgroundColor:bt.colors.accent,borderRadius:bt.radius.default,padding:bt.spacing.md,display:"flex",flexDirection:"column",gap:bt.spacing.sm,marginBottom:bt.spacing.lg}),children:[e&&Fe("div",{className:$t.create("contact-item",{display:"flex",alignItems:"center",gap:bt.spacing.sm,fontSize:bt.fontSize.small,color:bt.colors.accentForeground}),children:Fe("span",{children:["Email: ",e]})}),t&&Fe("div",{className:$t.create("contact-item",{display:"flex",alignItems:"center",gap:bt.spacing.sm,fontSize:bt.fontSize.small,color:bt.colors.accentForeground}),children:Fe("span",{children:["Phone: ",t]})})]}),(j||se)&&Fe("div",{className:$t.create("reference",{fontSize:bt.fontSize.small,color:bt.colors.mutedForeground,textAlign:"center",marginTop:bt.spacing.md}),children:["Transaction ID: ",Fe("strong",{children:null===(o=j||se)||void 0===o?void 0:o.slice(0,8).toUpperCase()})]})]})]})})})}const ce=A&&le&&("failed"===ae||"declined"===ae||"cancelled"===ae||"failed"===M||"declined"===M||"cancelled"===M),de="cancelled"===ae||"cancelled"===M?"cancelled":"failed"===ae||"declined"===ae||"failed"===M||"declined"===M?"declined":"error",ue=v.calculations,he=ue.length>1,me=ue.length>0,fe=me,pe=(null===(s=v.metadata)||void 0===s?void 0:s.product_name)||(null===(a=v.policy_details)||void 0===a?void 0:a.product_name)||"Payment",ge=Boolean(null===(l=null==v?void 0:v.metadata)||void 0===l?void 0:l.quote_intent_id),ye=Boolean((!me||T)&&P&&!Y&&!G),ve=at(()=>{var e,t;const n=null===(e=null==v?void 0:v.metadata)||void 0===e?void 0:e.client_details;if(n)return{firstName:n.first_name,lastName:n.last_name,email:n.email,phone:n.phone};const r=null===(t=null==v?void 0:v.policy_details)||void 0===t?void 0:t.client_name;if(r){const e=r.trim().split(/\s+/);return{firstName:e[0]||r,lastName:e.slice(1).join(" ")||"",email:void 0,phone:void 0}}return null},[v]),we=at(()=>{var e;const t=null==v?void 0:v.policy_details;if(!t)return null;const n=e=>{if(!e)return null;const t=new Date(e);return Number.isNaN(t.getTime())?null:t.toLocaleDateString()},r=n(t.insured_from),i=n(t.insured_to),o=r&&i?`${r} – ${i}`:r||i||null,s=null!=t.sum_insured&&t.sum_insured>0?t.sum_insured:null,a=null!=t.excess&&t.excess>=0?t.excess:null;return t.external_policy_number||o||null!=s||null!=a?{externalPolicyNumber:null!==(e=t.external_policy_number)&&void 0!==e?e:null,insurancePeriod:o,sumInsured:s,excess:a}:null},[v]),be=at(()=>re&&re.line_item_display||null,[re]),xe=null===(c=null==v?void 0:v.metadata)||void 0===c?void 0:c.type,ke="renewal"===xe?"Complete Your Renewal":"endorsement"===xe?"Complete Your Payment":"Complete Your Purchase";return Fe(ns,{title:ke,noSubscription:!0,hideHeader:!0,children:Fe(Mt,{children:[Fe("div",{className:$t.create("checkout-layout",{display:"grid",gridTemplateColumns:"1fr 380px",gap:bt.spacing.lg},{"(max-width: 950px)":{display:"flex",flexDirection:"column"},"(max-width: 480px)":{gap:bt.spacing.md}}),children:[Fe("div",{className:$t.create("checkout-main-wrapper",{minWidth:"0",backgroundColor:bt.colors.card,boxShadow:bt.shadow.sm,borderRadius:bt.radius.large,display:"flex",flexDirection:"column"}),children:[Fe("div",{className:$t.create("checkout-header",{paddingInline:bt.spacing.xl,paddingTop:bt.spacing.xl,paddingBottom:bt.spacing.lg},{"(max-width: 768px)":{paddingInline:bt.spacing.lg,paddingTop:bt.spacing.lg},"(max-width: 480px)":{paddingInline:bt.spacing.md,paddingTop:bt.spacing.md}}),children:[Fe("h2",{className:$t.create("checkout-title",{margin:"0",marginBottom:bt.spacing.md,fontSize:"1.75rem",fontWeight:"700",color:bt.colors.primary,lineHeight:"1.1",letterSpacing:"-0.025em"},{"(max-width: 768px)":{fontSize:"1.5rem"},"(max-width: 480px)":{fontSize:"1.25rem"}}),children:ke}),Fe("p",{className:$t.create("checkout-description",{margin:"0",fontSize:bt.fontSize.default,lineHeight:"1.6",color:bt.colors.foreground,opacity:"0.9"}),children:me?he?"Choose your excess amount and payment option to secure your coverage.":"Choose your payment method to secure your coverage.":"Choose your payment option to complete your purchase."}),Fe("hr",{className:$t.create("checkout-header-border",{marginTop:bt.spacing.lg,border:"0",borderTop:`1px solid ${bt.colors.border}`,height:"0"})})]}),Fe("div",{className:$t.create("checkout-sections",{paddingInline:bt.spacing.xl,paddingBottom:bt.spacing.xl,display:"flex",flexDirection:"column",gap:bt.spacing.lg},{"(max-width: 768px)":{paddingInline:bt.spacing.lg,paddingBottom:bt.spacing.lg},"(max-width: 480px)":{paddingInline:bt.spacing.md,paddingBottom:bt.spacing.md}}),children:[ge&&Fe("div",{className:$t.create("checkout-section",{display:"flex",flexDirection:"column",gap:"1rem"}),children:[Fe(cs,{title:"Cover Start Date"}),Fe("div",{className:$t.create("cover-date-container",{display:"flex",flexDirection:"column",gap:"0.75rem"}),children:[Fe("input",{type:"date",value:H,onChange:e=>{return t=e.target.value,U(t),void(async e=>{var t;if(v&&y&&(null===(t=v.metadata)||void 0===t?void 0:t.quote_intent_id)){V(!0),Z(null);try{const t=await y.validateCoverStartDate(v.payment_link_id,e);t.valid?Z(null):(Z(t.message||"This cover start date is not valid."),t.quote_page_url&&J(t.quote_page_url))}catch(e){Z("Failed to validate cover date. Please try again.")}finally{V(!1)}}})(t);var t},min:Ts(),max:Ts(30),disabled:G,className:$t.create("cover-date-input",{padding:"0.75rem 1rem",fontSize:bt.fontSize.default,border:`2px solid ${Y?bt.colors.destructive:bt.colors.border}`,borderRadius:bt.radius.default,backgroundColor:bt.colors.background,color:bt.colors.foreground,width:"auto",maxWidth:"200px",cursor:G?"wait":"pointer"})}),G&&Fe("p",{className:$t.create("validating-text",{fontSize:bt.fontSize.small,color:bt.colors.mutedForeground,margin:"0"}),children:"Validating..."}),Y&&Fe("div",{className:$t.create("cover-date-error",{backgroundColor:`${bt.colors.destructive}10`,border:`1px solid ${bt.colors.destructive}`,borderRadius:bt.radius.default,padding:"1rem"}),children:[Fe("p",{className:$t.create("error-message",{color:bt.colors.destructive,fontSize:bt.fontSize.small,margin:"0",marginBottom:Q?bt.spacing.md:"0"}),children:Y}),Q&&Fe("a",{href:Q,className:$t.create("new-quote-link",{display:"inline-flex",alignItems:"center",gap:"0.5rem",color:bt.colors.primary,fontSize:bt.fontSize.small,fontWeight:"500",textDecoration:"none"}),children:["Start New Quote",Fe("svg",{xmlns:"http://www.w3.org/2000/svg",width:"16",height:"16",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor","stroke-width":"2","stroke-linecap":"round","stroke-linejoin":"round",children:[Fe("path",{d:"M5 12h14"}),Fe("path",{d:"m12 5 7 7-7 7"})]})]})]})]})]}),fe&&me&&Fe("div",{className:$t.create("checkout-section",{display:"flex",flexDirection:"column",gap:"1rem"}),children:[Fe(cs,{title:1===ue.length?"Excess":"Excess Options"}),Fe("div",{className:$t.create("excess-options-grid",{display:"flex",flexDirection:"row",flexWrap:"wrap",gap:"1rem"}),children:[...ue].sort((e,t)=>e.excess_amount-t.excess_amount).map(e=>{const t=e.id===T;return Fe("div",{className:Dt($t.create("excess-option-card",{borderRadius:bt.radius.default,minWidth:"125px",padding:"0.5rem 1rem 0.5rem 0.5rem",cursor:"pointer",transition:"all 150ms ease",display:"flex",flexDirection:"row",alignItems:"center",gap:"1rem"}),t?$t.create("excess-option-card-selected",{border:`2px solid ${bt.colors.primary}`,backgroundColor:bt.colors.accent}):$t.create("excess-option-card-unselected",{border:`2px solid ${bt.colors.border}`,backgroundColor:bt.colors.card})),onClick:()=>E(e.id),children:[Fe(ds,{selected:t}),Fe("div",{className:$t.create("excess-amount",{color:bt.colors.foreground}),children:[e.excess_label||`$${Number(e.excess_amount).toFixed(0)}`,e.description?"*":""]})]},e.id)})}),(null==re?void 0:re.description)&&Fe("div",{className:$t.create("excess-description",{padding:"0.75rem",backgroundColor:bt.colors.muted,borderRadius:bt.radius.default,border:`1px solid ${bt.colors.border}`}),children:Fe(ls,{className:$t.create("excess-description-text",{fontSize:bt.fontSize.small,color:bt.colors.foreground,margin:"0"}),children:re.description})})]}),v.payment_options.length>0&&Fe("div",{className:$t.create("checkout-section",{display:"flex",flexDirection:"column",gap:"1rem",width:"100%"}),children:[Fe(cs,{title:"Payment Options"}),Fe("div",{className:$t.create("payment-options-container",{display:"flex",flexDirection:"column",gap:"0.5rem"}),children:v.payment_options.map(e=>{var t,n;const r=ua(e),i=P===r,o="monthly"===e.payment_frequency,s=!!((null===(t=e.metadata)||void 0===t?void 0:t.gateway_fee)&&parseFloat(e.metadata.gateway_fee)>0),a=!0===(null===(n=e.metadata)||void 0===n?void 0:n.unavailable),l=()=>{var t;return a?"Currently Unavailable":o&&e.amount.monthly?`${hs(parseFloat(e.amount.monthly))} x ${(null===(t=e.metadata)||void 0===t?void 0:t.number_of_instalments)||12}`:hs(parseFloat(e.amount.due_today))},c=()=>e.description?e.description:"bank_transfer"===e.gateway_code?"Manual":`via ${e.gateway_name}`;return Fe("div",{title:a?"Currently Unavailable":void 0,className:Dt($t.create("payment-option-row",{borderRadius:bt.radius.default,padding:"0.75rem 1rem",cursor:a?"not-allowed":"pointer",opacity:a?"0.55":"1",transition:"all 150ms ease",display:"flex",alignItems:"center",justifyContent:"space-between",gap:"1rem"},{"(max-width: 480px)":{padding:"0.625rem 0.75rem",gap:"0.25rem",flexWrap:"wrap",alignItems:"flex-start"}}),i?$t.create("payment-option-row-selected",{border:`2px solid ${bt.colors.primary}`,backgroundColor:bt.colors.accent}):$t.create("payment-option-row-unselected",{border:`2px solid ${bt.colors.border}`,backgroundColor:bt.colors.card})),onClick:()=>{a||z(r)},children:[Fe("div",{className:$t.create("payment-option-desktop-wrapper",{display:"flex",alignItems:"center",gap:"1rem",flex:"1"},{"(max-width: 480px)":{display:"none"}}),children:[Fe(ds,{selected:i}),Fe("div",{className:$t.create("payment-option-info-desktop",{display:"flex",flexDirection:"column",flex:"1"}),children:[Fe("div",{className:$t.create("frequency-title",{fontSize:bt.fontSize.default,fontWeight:"500",color:bt.colors.foreground}),children:e.display_title||ms(o?"monthly":"one-time",e.gateway_code)}),Fe("div",{className:$t.create("gateway-description",{fontSize:bt.fontSize.small,color:bt.colors.mutedForeground}),children:c()})]})]}),Fe("div",{className:$t.create("payment-option-amount-desktop",{display:"flex",flexDirection:"column",alignItems:"flex-end"},{"(max-width: 480px)":{display:"none"}}),children:[Fe(ls,{className:$t.create("amount-text",{textAlign:"right",color:bt.colors.foreground}),children:l()}),!a&&Fe(ls,{size:"small",className:$t.create("gateway-fee-text",{textAlign:"right",color:bt.colors.mutedForeground}),children:s?`${(()=>{var t;return"bank_transfer"===e.gateway_code?null:(null===(t=e.metadata)||void 0===t?void 0:t.gateway_fee)?hs(parseFloat(e.metadata.gateway_fee)):hs(0)})()} fee`:"No fees"})]}),Fe("div",{className:$t.create("payment-option-title-mobile-wrapper",{display:"none"},{"(max-width: 480px)":{display:"flex",alignItems:"center",gap:"0.5rem",flex:"1 1 100%"}}),children:[Fe(ds,{selected:i}),Fe("div",{className:$t.create("payment-option-title-mobile",{fontSize:bt.fontSize.default,fontWeight:"500",color:bt.colors.foreground}),children:e.display_title||ms(o?"monthly":"one-time",e.gateway_code)})]}),Fe("div",{className:$t.create("payment-option-bottom-mobile",{display:"none"},{"(max-width: 480px)":{display:"flex",flex:"1 1 100%",justifyContent:"space-between",alignItems:"center",paddingLeft:"1.5rem"}}),children:[Fe("div",{className:$t.create("gateway-description-mobile",{fontSize:bt.fontSize.small,color:bt.colors.mutedForeground}),children:c()}),Fe(ls,{className:$t.create("amount-text-mobile",{fontWeight:"500",color:bt.colors.foreground}),children:l()})]})]},r)})})]})]})]}),Fe("div",{className:$t.create("checkout-sidebar",{display:"flex",flexDirection:"column"},{"(max-width: 950px)":{display:"block"}}),children:Fe("div",{className:$t.create("checkout-sidebar-sticky",{}),children:[(ve||we||be&&be.length>0)&&Fe("div",{className:$t.create("insurance-details-card",{backgroundColor:bt.colors.card,borderRadius:bt.radius.large,padding:bt.spacing.lg,boxShadow:bt.shadow.sm},{"(max-width: 768px)":{padding:bt.spacing.md}}),children:[Fe("h3",{className:$t.create("cart-summary-title",{fontSize:bt.fontSize.large,fontWeight:"600",marginBottom:bt.spacing.md,color:bt.colors.foreground}),children:"Insurance Details"}),(ve||we||"Payment"!==pe)&&Fe(_,{children:[Fe("div",{className:$t.create("client-details",{display:"flex",flexDirection:"column",gap:bt.spacing.sm}),children:[(null==ve?void 0:ve.firstName)&&(null==ve?void 0:ve.lastName)&&Fe("div",{className:$t.create("detail-row",{display:"flex",justifyContent:"space-between",alignItems:"center"}),children:[Fe("span",{className:$t.create("detail-label",{color:bt.colors.mutedForeground,fontSize:bt.fontSize.small}),children:"Name"}),Fe("span",{className:$t.create("detail-value",{fontWeight:"500",color:bt.colors.foreground,fontSize:bt.fontSize.small}),children:[null==ve?void 0:ve.firstName," ",null==ve?void 0:ve.lastName]})]}),(null==ve?void 0:ve.email)&&Fe("div",{className:$t.create("detail-row",{display:"flex",justifyContent:"space-between",alignItems:"center"}),children:[Fe("span",{className:$t.create("detail-label",{color:bt.colors.mutedForeground,fontSize:bt.fontSize.small}),children:"Email"}),Fe("span",{className:$t.create("detail-value",{fontWeight:"500",color:bt.colors.foreground,fontSize:bt.fontSize.small}),children:null==ve?void 0:ve.email})]}),(null==ve?void 0:ve.phone)&&Fe("div",{className:$t.create("detail-row",{display:"flex",justifyContent:"space-between",alignItems:"center"}),children:[Fe("span",{className:$t.create("detail-label",{color:bt.colors.mutedForeground,fontSize:bt.fontSize.small}),children:"Phone"}),Fe("span",{className:$t.create("detail-value",{fontWeight:"500",color:bt.colors.foreground,fontSize:bt.fontSize.small}),children:null==ve?void 0:ve.phone})]}),"Payment"!==pe&&Fe("div",{className:$t.create("detail-row",{display:"flex",justifyContent:"space-between",alignItems:"center"}),children:[Fe("span",{className:$t.create("detail-label",{color:bt.colors.mutedForeground,fontSize:bt.fontSize.small}),children:"Product"}),Fe("span",{className:$t.create("detail-value",{fontWeight:"500",color:bt.colors.foreground,fontSize:bt.fontSize.small}),children:pe})]}),(null==we?void 0:we.externalPolicyNumber)&&Fe("div",{className:$t.create("detail-row",{display:"flex",justifyContent:"space-between",alignItems:"center"}),children:[Fe("span",{className:$t.create("detail-label",{color:bt.colors.mutedForeground,fontSize:bt.fontSize.small}),children:"Policy Number"}),Fe("span",{className:$t.create("detail-value",{fontWeight:"500",color:bt.colors.foreground,fontSize:bt.fontSize.small}),children:we.externalPolicyNumber})]}),(null==v?void 0:v.quote_reference)&&Fe("div",{className:$t.create("detail-row",{display:"flex",justifyContent:"space-between",alignItems:"center"}),children:[Fe("span",{className:$t.create("detail-label",{color:bt.colors.mutedForeground,fontSize:bt.fontSize.small}),children:"Quote Reference"}),Fe("span",{className:$t.create("detail-value",{fontWeight:"500",color:bt.colors.foreground,fontSize:bt.fontSize.small}),children:v.quote_reference})]}),null!=(null==we?void 0:we.sumInsured)&&Fe("div",{className:$t.create("detail-row",{display:"flex",justifyContent:"space-between",alignItems:"center"}),children:[Fe("span",{className:$t.create("detail-label",{color:bt.colors.mutedForeground,fontSize:bt.fontSize.small}),children:"Sum Insured"}),Fe("span",{className:$t.create("detail-value",{fontWeight:"500",color:bt.colors.foreground,fontSize:bt.fontSize.small}),children:hs(we.sumInsured)})]}),null!=(null==we?void 0:we.excess)&&Fe("div",{className:$t.create("detail-row",{display:"flex",justifyContent:"space-between",alignItems:"center"}),children:[Fe("span",{className:$t.create("detail-label",{color:bt.colors.mutedForeground,fontSize:bt.fontSize.small}),children:"Excess"}),Fe("span",{className:$t.create("detail-value",{fontWeight:"500",color:bt.colors.foreground,fontSize:bt.fontSize.small}),children:hs(we.excess)})]})]}),be&&be.length>0&&Fe("hr",{className:$t.create("divider",{border:"none",borderTop:`1px solid ${bt.colors.border}`,margin:`${bt.spacing.md} 0`})})]}),be&&be.length>0&&Fe("div",{className:$t.create("line-items-section",{display:"flex",flexDirection:"column",gap:bt.spacing.md}),children:be.map((e,t)=>Fe("div",{className:$t.create("line-item",{}),children:[Fe("div",{className:$t.create("line-item-description",{fontSize:bt.fontSize.small,fontWeight:"500",color:bt.colors.foreground}),children:e.description}),e.show_sum_insured&&null!=e.sum_insured&&e.sum_insured>0&&Fe("div",{className:$t.create("line-item-sum-insured",{fontSize:bt.fontSize.small,color:bt.colors.mutedForeground,marginTop:bt.spacing.sm}),children:["Sum Insured: ",hs(e.sum_insured)]})]},t))})]}),(ve||we||be&&be.length>0)&&Fe("div",{className:$t.create("checkout-sidebar-spacer",{height:bt.spacing.lg},{"(max-width: 950px)":{height:bt.spacing.md}})}),Fe("div",{className:$t.create("checkout-sidebar-card",{backgroundColor:bt.colors.card,borderRadius:bt.radius.large,boxShadow:bt.shadow.sm,padding:bt.spacing.lg},{"(max-width: 768px)":{padding:bt.spacing.md}}),children:Fe("div",{className:$t.create("payment-summary",{display:"flex",flex:"1",flexDirection:"column",gap:"1rem"}),children:[Fe("h3",{className:$t.create("cart-summary-title",{fontSize:bt.fontSize.large,fontWeight:"600",marginBottom:bt.spacing.sm,color:bt.colors.foreground}),children:"Payment Details"}),ie&&Fe("div",{className:$t.create("summary-section",{paddingBottom:"1rem"}),children:Fe("div",{className:$t.create("payment-breakdown",{display:"flex",flexDirection:"column",gap:"0.5rem"}),children:"monthly"!==ie.payment_frequency?Fe(_,{children:[(null===(d=ie.metadata)||void 0===d?void 0:d.gateway_fee)&&parseFloat(ie.metadata.gateway_fee)>0&&Fe(ma,{label:da(ie.gateway_code,null===(u=ie.metadata)||void 0===u?void 0:u.gateway_method),value:hs(parseFloat(ie.metadata.gateway_fee))}),Fe(ma,{label:"Total Due Today:",value:hs(parseFloat(ie.amount.due_today)),isTotal:!0})]}):Fe(_,{children:[(null===(h=ie.metadata)||void 0===h?void 0:h.gateway_fee)&&parseFloat(ie.metadata.gateway_fee)>0&&Fe(ma,{label:da(ie.gateway_code,null===(m=ie.metadata)||void 0===m?void 0:m.gateway_method),value:hs(parseFloat(ie.metadata.gateway_fee))}),ie.amount.total&&Fe(ma,{label:"Total Payable:",value:hs(parseFloat(ie.amount.total)+parseFloat(null!==(p=null===(f=ie.metadata)||void 0===f?void 0:f.gateway_fee)&&void 0!==p?p:"0"))}),Fe(ma,{label:"Due Today:",value:hs(parseFloat(ie.amount.due_today))}),ie.amount.monthly&&(null===(g=ie.metadata)||void 0===g?void 0:g.number_of_instalments)&&ie.metadata.number_of_instalments>1&&Fe(ma,{label:"Remaining payments:",value:`${ie.metadata.number_of_instalments-1} x ${hs(parseFloat(ie.amount.monthly))}`})]})})}),Fe(is,{onClick:async()=>{var e,t,n,r,i,o;if(!v)return;const s=v.calculations.length>0,a=!s;if(s&&!T)return void alert("Please select an excess amount before proceeding.");if(!P)return void alert("Please select a payment method before proceeding.");const l=s?v.calculations.find(e=>e.id===T):null;if(s&&!l)return void alert("Payment configuration error. Please try again.");const c=v.payment_options.find(e=>ua(e)===P);if(!c)return void alert("Payment method not available. Please try again.");const d=c.gateway_code,u=null===(e=c.metadata)||void 0===e?void 0:e.gateway_method;let h="Customer";if(null===(t=v.metadata)||void 0===t?void 0:t.client_name)h=v.metadata.client_name;else if(null===(n=v.metadata)||void 0===n?void 0:n.client_details){const e=v.metadata.client_details;e.first_name&&(h=`${e.first_name} ${e.last_name||""}`.trim())}if(a){if(!y)return void alert("Payment service not available. Please try again.");try{x(!0);const e=await y.initiateFixedPayment(v.payment_link_id,d,h,u);if("auto_renew_confirmed"===e.status)return void X({message:e.message||"Your renewal is confirmed. Your premium funding will continue automatically on the policy start date.",effectiveDate:e.effective_date});if("bank_transfer"===d&&e.transaction_id)return void te({transactionId:e.transaction_id,organisationId:(null===(r=v.organisation)||void 0===r?void 0:r.id)||""});e.gateway_acceptance_url?window.location.href=e.gateway_acceptance_url:alert("Payment initiated successfully")}catch(e){alert(e.message||"Failed to initiate payment")}finally{x(!1)}return}const m=null===(i=v.metadata)||void 0===i?void 0:i.quote_intent_id,f={...m?{quoteIntentId:m}:{paymentLinkId:v.payment_link_id},paymentLinkId:v.payment_link_id,excessId:(null==l?void 0:l.excess_id)||"",gatewayId:d,calculationId:T||"",clientDetails:{legalName:h},metadata:{payment_link_id:v.payment_link_id,payment_type:m?"quote":"rate",gateway_code:d,gateway:d,...u?{gateway_method:u}:{}},...ge&&H?{coverStartDate:H}:{}};if("bank_transfer"!==d)I(f),C(!0);else{if(!y)return void alert("Payment service not available. Please try again.");try{x(!0);const e={...f,returnUrl:window.location.href},t=await y.initiatePayment(e,d);if(!(t.bank_account_name&&t.reference&&t.transaction_id))throw new Error("Invalid bank transfer response");te({transactionId:t.transaction_id,organisationId:(null===(o=v.organisation)||void 0===o?void 0:o.id)||""})}catch(e){alert(e.message||"Failed to initiate bank transfer")}finally{x(!1)}}},disabled:!ye,className:$t.create("purchase-button",{width:"100%",height:"3rem",fontSize:bt.fontSize.default,fontWeight:"600"}),children:ye?"Go to Payment":"Select Options to Continue"})]})})]})})]}),S&&$&&y&&Fe(sa,{isOpen:S,onClose:()=>{C(!1),I(null)},onSuccess:()=>{C(!1),I(null),alert("Payment completed successfully!")},paymentRequest:$,httpClient:y}),ce&&Fe(Ss,{type:de,transactionId:se||j||void 0,isOpen:!0,onClose:()=>{L(!1);const e=new URL(window.location.href);e.searchParams.delete("status"),e.searchParams.delete("transactionId"),e.searchParams.delete("transaction_id"),window.history.replaceState({},"",e.toString())}})]})})}function ma({label:e,value:t,isTotal:n=!1,className:r}){return Fe("div",{className:Dt($t.create("summary-item",{display:"flex",justifyContent:"space-between",alignItems:"center"}),r),children:[Fe("span",{className:$t.create("summary-label",{color:bt.colors.mutedForeground,fontSize:bt.fontSize.small}),children:e}),Fe("span",{className:$t.create("summary-value",{fontWeight:n?"600":"500",color:bt.colors.foreground,fontSize:n?bt.fontSize.large:"inherit"}),children:t})]})}function fa({products:e,onSelectProduct:t}){const[n,r]=it(null),i=(e,t)=>{t&&(t.preventDefault(),t.stopPropagation()),r(e)};return Fe(ns,{title:"Select cover",noSubscription:!0,hideHeader:!0,children:Fe(Mt,{children:Fe("div",{className:$t.create("product-selection-layout",{display:"flex",justifyContent:"center",width:"100%"}),children:Fe("div",{className:$t.create("product-selection-card",{backgroundColor:bt.colors.card,boxShadow:bt.shadow.sm,borderRadius:bt.radius.large,display:"flex",flexDirection:"column",width:"100%",maxWidth:"600px"}),children:[Fe("div",{className:$t.create("product-selection-header",{paddingInline:bt.spacing.xl,paddingTop:bt.spacing.xl,paddingBottom:bt.spacing.lg},{"(max-width: 768px)":{paddingInline:bt.spacing.lg,paddingTop:bt.spacing.lg},"(max-width: 480px)":{paddingInline:bt.spacing.md,paddingTop:bt.spacing.md}}),children:[Fe("h2",{className:$t.create("product-selection-title",{margin:"0",marginBottom:bt.spacing.sm,fontSize:"1.75rem",fontWeight:"700",color:bt.colors.primary,lineHeight:"1.1",letterSpacing:"-0.025em"},{"(max-width: 768px)":{fontSize:"1.5rem"},"(max-width: 480px)":{fontSize:"1.125rem"}}),children:"Select Your Cover"}),Fe("p",{className:$t.create("product-selection-description",{margin:"0",fontSize:bt.fontSize.default,lineHeight:"1.6",color:bt.colors.foreground,opacity:"0.9"}),children:"What type of vessel are you insuring?"}),Fe("hr",{className:$t.create("product-selection-header-border",{marginTop:bt.spacing.lg,borderColor:bt.colors.border})})]}),Fe("div",{className:$t.create("product-selection-content",{paddingInline:bt.spacing.xl,paddingBottom:bt.spacing.xl},{"(max-width: 768px)":{paddingInline:bt.spacing.lg,paddingBottom:bt.spacing.lg},"(max-width: 480px)":{paddingInline:bt.spacing.md,paddingBottom:bt.spacing.md}}),children:[0===e.length?Fe("div",{className:$t.create("no-products-placeholder",{padding:"2rem",textAlign:"center",border:`1px dashed ${bt.colors.border}`,borderRadius:bt.radius.default,backgroundColor:bt.colors.muted}),children:[Fe("div",{style:{marginBottom:bt.spacing.default},children:Fe("svg",{width:"48",height:"48",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",style:{margin:"0 auto",opacity:.5},children:[Fe("path",{d:"M14 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V8z"}),Fe("polyline",{points:"14 2 14 8 20 8"})]})}),Fe("p",{className:$t.create("placeholder-text",{color:bt.colors.mutedForeground,margin:"0"}),children:"No products available for quoting."})]}):Fe("div",{className:$t.create("product-options-container",{display:"flex",flexDirection:"column",gap:"0.5rem"}),children:e.map(e=>Fe(pa,{product:e,isSelected:(null==n?void 0:n.id)===e.id,onSelect:i},e.id))}),e.length>0&&Fe("div",{className:$t.create("product-selection-actions",{marginTop:bt.spacing.lg}),children:Fe(is,{onClick:()=>{n&&t(n)},disabled:!n,className:$t.create("product-selection-continue-button",{width:"100%"}),children:"Continue"})})]})]})})})})}function pa({product:e,isSelected:t,onSelect:n}){return Fe("div",{className:Dt($t.create("product-option-row",{borderRadius:bt.radius.default,padding:"0.75rem 1rem",cursor:"pointer",transition:"all 150ms ease",display:"flex",alignItems:"center",gap:"1rem"},{"(max-width: 480px)":{padding:"0.625rem 0.75rem"}}),t?$t.create("product-option-row-selected",{border:`2px solid ${bt.colors.primary}`,backgroundColor:bt.colors.accent}):$t.create("product-option-row-unselected",{border:`2px solid ${bt.colors.border}`,backgroundColor:bt.colors.card})),onClick:t=>n(e,t),role:"button",tabIndex:0,onKeyPress:t=>{"Enter"!==t.key&&" "!==t.key||n(e,t)},children:[Fe(ds,{selected:t}),Fe("div",{className:$t.create("product-option-content",{display:"flex",alignItems:"center",justifyContent:"space-between",flex:"1",gap:"1rem"}),children:[Fe("div",{className:$t.create("product-option-info",{display:"flex",flexDirection:"column"}),children:[e.description&&Fe("div",{className:$t.create("product-option-description",{fontSize:bt.fontSize.default,fontWeight:"500",color:bt.colors.foreground}),children:e.description}),Fe("div",{className:$t.create("product-option-name",{fontSize:bt.fontSize.small,color:bt.colors.mutedForeground}),children:e.name})]}),e.icon_svg&&Fe("div",{className:$t.create("product-option-icon",{width:"2.5rem",height:"2.5rem",flexShrink:"0",display:"flex",alignItems:"center",justifyContent:"center",color:t?bt.colors.primary:bt.colors.mutedForeground,transition:"color 150ms ease"}),dangerouslySetInnerHTML:{H:e.icon_svg.replace(/^<svg(?![^>]*\bwidth\b)/,'<svg width="100%" height="100%"')}})]})]})}function ga(){var e,t;const n=Wt(),{paymentLinkConfig:r,availableProducts:i,formStateManager:o}=n;if(i&&!o)return Fe(fa,{products:i,onSelectProduct:()=>{}});if(r)return Fe(ha,{paymentLinkId:r.paymentLinkId,signedUrl:r.signedUrl});const s=new URLSearchParams(window.location.search),a=s.get("p")||s.get("pl_ref");if(a&&!o)return Fe(ha,{paymentLinkId:a});const l=window.location.pathname,c=l.match(/\/pay\/([a-f0-9-]+)/);if(c&&c[1])return Fe(ha,{paymentLinkId:c[1],signedUrl:window.location.href});const d=l.match(/\/payments\/bank-transfer\/([a-f0-9-]+)/),u=s.get("orgId");if(d&&d[1]&&u)return Fe(aa,{transactionId:d[1],organisationId:u});const{isCalculating:h,results:m,quoteIntent:f}=At(e=>({isCalculating:null==e?void 0:e.getIsCalculating(),results:null==e?void 0:e.getCalculationResult(),quoteIntent:null==e?void 0:e.getQuoteIntent(),fsm:e})),p="hold"===(null==f?void 0:f.status),g=null===(e=null==f?void 0:f.payment_transactions)||void 0===e?void 0:e.find(e=>"bank_transfer"===e.gateway_code&&"pending"===e.status),y="paid"===(null==f?void 0:f.status)||"completed"===(null==f?void 0:f.status);return h?Fe(rs,{title:"Calculating premium",message:"Crunching the numbers now"}):p&&g&&(null===(t=null==f?void 0:f.organisation)||void 0===t?void 0:t.id)?Fe(aa,{transactionId:g.id,organisationId:f.organisation.id,allowCancel:!0}):y?Fe(oa,{}):m?Fe(As,{results:m}):Fe(ia,{})}function ya(e){return Fe(jt,{...e,children:Fe(ga,{})})}function va({reference:e,productName:t,firstName:n,lastUpdated:r,onContinue:i,onStartFresh:o}){const[s,a]=it(null);return Fe(ns,{title:"Resume Quote",noSubscription:!0,hideHeader:!0,children:Fe(Mt,{children:Fe("div",{className:$t.create("resume-prompt-layout",{display:"flex",justifyContent:"center",width:"100%"}),children:Fe("div",{className:$t.create("resume-prompt-card",{backgroundColor:bt.colors.card,boxShadow:bt.shadow.sm,borderRadius:bt.radius.large,display:"flex",flexDirection:"column",width:"100%",maxWidth:"600px"}),children:[Fe("div",{className:$t.create("resume-prompt-header",{paddingInline:bt.spacing.xl,paddingTop:bt.spacing.xl,paddingBottom:bt.spacing.lg},{"(max-width: 768px)":{paddingInline:bt.spacing.lg,paddingTop:bt.spacing.lg},"(max-width: 480px)":{paddingInline:bt.spacing.md,paddingTop:bt.spacing.md}}),children:[Fe("h2",{className:$t.create("resume-prompt-title",{margin:"0",marginBottom:bt.spacing.sm,fontSize:"1.75rem",fontWeight:"700",color:bt.colors.primary,lineHeight:"1.1",letterSpacing:"-0.025em"},{"(max-width: 768px)":{fontSize:"1.5rem"},"(max-width: 480px)":{fontSize:"1.125rem"}}),children:"Existing Quote Found"}),Fe("p",{className:$t.create("resume-prompt-description",{margin:"0",fontSize:bt.fontSize.default,lineHeight:"1.6",color:bt.colors.foreground,opacity:"0.9"}),children:"There is a quote in progress. Would you like to continue where you left off or start a new quote?"}),(e||t||n||r)&&Fe("div",{className:$t.create("resume-prompt-details",{marginTop:bt.spacing.md,padding:bt.spacing.md,backgroundColor:bt.colors.background,borderRadius:bt.radius.default,display:"flex",flexDirection:"column",gap:bt.spacing.sm}),children:[t&&Fe("div",{className:$t.create("resume-prompt-detail-row",{display:"flex",justifyContent:"space-between",alignItems:"center"}),children:[Fe("span",{className:$t.create("resume-prompt-detail-label",{fontSize:bt.fontSize.small,color:bt.colors.foreground,opacity:"0.6"}),children:"Product"}),Fe("span",{className:$t.create("resume-prompt-detail-value",{fontSize:bt.fontSize.small,fontWeight:"600",color:bt.colors.foreground}),children:t})]}),n&&Fe("div",{className:$t.create("resume-prompt-detail-row-name",{display:"flex",justifyContent:"space-between",alignItems:"center"}),children:[Fe("span",{className:$t.create("resume-prompt-detail-label-name",{fontSize:bt.fontSize.small,color:bt.colors.foreground,opacity:"0.6"}),children:"Client"}),Fe("span",{className:$t.create("resume-prompt-detail-value-name",{fontSize:bt.fontSize.small,fontWeight:"600",color:bt.colors.foreground}),children:n})]}),e&&Fe("div",{className:$t.create("resume-prompt-detail-row-ref",{display:"flex",justifyContent:"space-between",alignItems:"center"}),children:[Fe("span",{className:$t.create("resume-prompt-detail-label-ref",{fontSize:bt.fontSize.small,color:bt.colors.foreground,opacity:"0.6"}),children:"Reference"}),Fe("span",{className:$t.create("resume-prompt-detail-value-ref",{fontSize:bt.fontSize.small,fontWeight:"600",color:bt.colors.foreground}),children:e})]}),r&&Fe("div",{className:$t.create("resume-prompt-detail-row-date",{display:"flex",justifyContent:"space-between",alignItems:"center"}),children:[Fe("span",{className:$t.create("resume-prompt-detail-label-date",{fontSize:bt.fontSize.small,color:bt.colors.foreground,opacity:"0.6"}),children:"Last updated"}),Fe("span",{className:$t.create("resume-prompt-detail-value-date",{fontSize:bt.fontSize.small,fontWeight:"600",color:bt.colors.foreground}),children:r})]})]}),Fe("hr",{className:$t.create("resume-prompt-header-border",{marginTop:bt.spacing.lg,borderColor:bt.colors.border})})]}),Fe("div",{className:$t.create("resume-prompt-content",{paddingInline:bt.spacing.xl,paddingBottom:bt.spacing.xl,display:"flex",flexDirection:"column",gap:bt.spacing.md},{"(max-width: 768px)":{paddingInline:bt.spacing.lg,paddingBottom:bt.spacing.lg},"(max-width: 480px)":{paddingInline:bt.spacing.md,paddingBottom:bt.spacing.md}}),children:[Fe(is,{onClick:()=>{a("continue"),i()},loading:"continue"===s,disabled:null!==s,className:$t.create("resume-prompt-continue-btn",{width:"100%"}),children:"Continue where I left off"}),Fe(is,{variant:"outline",onClick:()=>{a("fresh"),o()},loading:"fresh"===s,disabled:null!==s,className:$t.create("resume-prompt-fresh-btn",{width:"100%"}),children:"Start a new quote"})]})]})})})})}class wa extends ${constructor(e){super(e),this.state={hasError:!1}}componentDidCatch(e,n){t();try{Promise.resolve().then(function(){return Ih}).then(({captureException:t,addBreadcrumb:r,isSentryInitialized:i})=>{i()&&(r({message:"Component error",category:"ui",level:"error",data:{componentStack:n.componentStack}}),t(e,{componentStack:n.componentStack}))}).catch(()=>{})}catch(e){}const r=we("initialization",e,"A component error occurred");this.setState({hasError:!0,error:r})}render(){if(this.state.hasError){const e=this.state.error;return _e(e)?Fe(as,{message:e.message,organisation:e.organisation}):Fe(os,{error:e})}return this.props.children}}function ba({config:e,initializeFormContext:n}){const[r,i]=it({type:"loading",message:"Loading application..."}),o=n=>{if(n.resumePrompt)return t(),void i({type:"resume_prompt",resumeData:n.resumePrompt});const r=n.availableProducts&&n.availableProducts.length>0;if(r&&!n.formStateManager)return t(),void i({type:"product_selection",products:n.availableProducts});if(!("payment"===e.mode||n.paymentLinkConfig||r||n.formStateManager&&"function"==typeof n.formStateManager.getFormProgress))throw new Error("FormStateManager was not properly initialized");t(),i({type:"success",formContextProps:n})},s=async(r="Loading application...")=>{i({type:"loading",message:r});try{t();const r=await n(e);o(r)}catch(e){let n;t(),n=e&&"object"==typeof e&&"type"in e&&"MAINTENANCE_ERROR"===e.type||e&&"object"==typeof e&&"statusCode"in e&&503===e.statusCode||e&&"object"==typeof e&&"status"in e&&503===e.status?we("maintenance",e):we("initialization",e),t((n.type,n.severity,n.statusCode)),i({type:"error",error:n})}};ot(()=>{e.isolateStyles&&Nt(),s()},[e,n]);const a=async e=>{if("resume_prompt"!==r.type)return;const{onContinue:n,onStartFresh:s}=r.resumeData;i({type:"loading",message:"continue"===e?"Loading your quote...":"Starting a new quote..."});try{const t="continue"===e?await n():await s();o(t)}catch(e){t();const n=we("initialization",e);i({type:"error",error:n})}},l=async e=>{t(e.code),localStorage.setItem("insure-os-selected-product",e.code),await s("Loading...")};return Fe(wa,{children:Fe("div",{className:$t.create("root",{fontFamily:bt.fontFamily,backgroundColor:bt.colors.background,minHeight:"100vh",color:bt.colors.foreground,maxWidth:"100vw",overflowX:"hidden",WebkitFontSmoothing:"antialiased",MozOsxFontSmoothing:"grayscale"}),children:function(){switch(r.type){case"loading":return Fe(rs,{message:r.message});case"error":return _e(r.error)?Fe(as,{message:r.error.message,organisation:r.error.organisation}):Fe(os,{error:r.error});case"product_selection":return Fe(fa,{products:r.products,onSelectProduct:l});case"resume_prompt":return Fe(va,{reference:r.resumeData.reference,productName:r.resumeData.productName,firstName:r.resumeData.firstName,lastUpdated:r.resumeData.lastUpdated,onContinue:()=>a("continue"),onStartFresh:()=>a("fresh")});case"success":return Fe(ya,{...r.formContextProps});default:return Fe(os,{})}}()})})}const xa="undefined"==typeof __SENTRY_DEBUG__||__SENTRY_DEBUG__,ka=globalThis,Na="10.48.0";function Sa(){return Ca(ka),ka}function Ca(e){const t=e.oe=e.oe||{};return t.version=t.version||Na,t[Na]=t[Na]||{}}function _a(e,t,n=ka){const r=n.oe=n.oe||{},i=r[Na]=r[Na]||{};return i[e]||(i[e]=t())}const $a=["debug","info","warn","error","log","assert","trace"],Ia={};function Ta(e){if(!("console"in ka))return e();const t=ka.console,n={},r=Object.keys(Ia);r.forEach(e=>{const r=Ia[e];n[e]=t[e],t[e]=r});try{return e()}finally{r.forEach(e=>{t[e]=n[e]})}}function Ea(){return za().enabled}function Pa(e,...t){xa&&Ea()&&Ta(()=>{ka.console[e](`Sentry Logger [${e}]:`,...t)})}function za(){return xa?_a("loggerSettings",()=>({enabled:!1})):{enabled:!1}}const Da=function(){za().enabled=!0},Ra=function(...e){Pa("log",...e)},Ma=function(...e){Pa("warn",...e)},Oa=function(...e){Pa("error",...e)},ja="?",Wa=/\(error: (.*)\)/,Aa=/captureMessage|captureException/;function La(...e){const t=e.sort((e,t)=>e[0]-t[0]).map(e=>e[1]);return(e,n=0,r=0)=>{const i=[],o=e.split("\n");for(let e=n;e<o.length;e++){let n=o[e];n.length>1024&&(n=n.slice(0,1024));const s=Wa.test(n)?n.replace(Wa,"$1"):n;if(!s.includes("Error: ")){for(const e of t){const t=e(s);if(t){i.push(t);break}}if(i.length>=50+r)break}}return function(e){if(!e.length)return[];const t=Array.from(e);return/sentryWrapped/.test(Ba(t).function||"")&&t.pop(),t.reverse(),Aa.test(Ba(t).function||"")&&(t.pop(),Aa.test(Ba(t).function||"")&&t.pop()),t.slice(0,50).map(e=>({...e,filename:e.filename||Ba(t).filename,function:e.function||ja}))}(i.slice(r))}}function Ba(e){return e[e.length-1]||{}}const qa="<anonymous>";function Fa(e){try{return e&&"function"==typeof e&&e.name||qa}catch{return qa}}function Ha(e){const t=e.exception;if(t){const e=[];try{return t.values.forEach(t=>{t.stacktrace.frames&&e.push(...t.stacktrace.frames)}),e}catch{return}}}function Ua(e){return"se"in e&&e.se?"[VueVNode]":"[VueViewModel]"}const Ya={},Za={};function Ga(e,t){Ya[e]=Ya[e]||[],Ya[e].push(t)}function Va(e,t){if(!Za[e]){Za[e]=!0;try{t()}catch(t){xa&&Oa(`Error while instrumenting ${e}`,t)}}}function Qa(e,t){const n=e&&Ya[e];if(n)for(const r of n)try{r(t)}catch(t){xa&&Oa(`Error while triggering instrumentation handler.\nType: ${e}\nName: ${Fa(r)}\nError:`,t)}}let Ja=null;function Ka(){Ja=ka.onerror,ka.onerror=function(e,t,n,r,i){return Qa("error",{column:r,error:i,line:n,msg:e,url:t}),!!Ja&&Ja.apply(this,arguments)},ka.onerror.ae=!0}let Xa=null;function el(){Xa=ka.onunhandledrejection,ka.onunhandledrejection=function(e){return Qa("unhandledrejection",e),!Xa||Xa.apply(this,arguments)},ka.onunhandledrejection.ae=!0}const tl={}.toString;function nl(e){switch(tl.call(e)){case"[object Error]":case"[object Exception]":case"[object DOMException]":case"[object WebAssembly.Exception]":return!0;default:return hl(e,Error)}}function rl(e,t){return tl.call(e)===`[object ${t}]`}function il(e){return rl(e,"ErrorEvent")}function ol(e){return rl(e,"DOMError")}function sl(e){return rl(e,"String")}function al(e){return"object"==typeof e&&null!==e&&"le"in e&&"ce"in e}function ll(e){return null===e||al(e)||"object"!=typeof e&&"function"!=typeof e}function cl(e){return rl(e,"Object")}function dl(e){return"undefined"!=typeof Event&&hl(e,Event)}function ul(e){return Boolean(e?.then&&"function"==typeof e.then)}function hl(e,t){try{return e instanceof t}catch{return!1}}function ml(e){return!("object"!=typeof e||null===e||!(e.de||e.ue||e.se))}function fl(e){return"undefined"!=typeof Request&&hl(e,Request)}const pl=ka;function gl(e,t={}){if(!e)return"<unknown>";try{let n=e;const r=5,i=[];let o=0,s=0;const a=" > ",l=a.length;let c;const d=Array.isArray(t)?t:t.keyAttrs,u=!Array.isArray(t)&&t.maxStringLength||80;for(;n&&o++<r&&(c=yl(n,d),!("html"===c||o>1&&s+i.length*l+c.length>=u));)i.push(c),s+=c.length,n=n.parentNode;return i.reverse().join(a)}catch{return"<unknown>"}}function yl(e,t){const n=e,r=[];if(!n?.tagName)return"";if(pl.HTMLElement&&n instanceof HTMLElement&&n.dataset){if(n.dataset.sentryComponent)return n.dataset.sentryComponent;if(n.dataset.sentryElement)return n.dataset.sentryElement}r.push(n.tagName.toLowerCase());const i=t?.length?t.filter(e=>n.getAttribute(e)).map(e=>[e,n.getAttribute(e)]):null;if(i?.length)i.forEach(e=>{r.push(`[${e[0]}="${e[1]}"]`)});else{n.id&&r.push(`#${n.id}`);const e=n.className;if(e&&sl(e)){const t=e.split(/\s+/);for(const e of t)r.push(`.${e}`)}}for(const e of["aria-label","type","name","title","alt"]){const t=n.getAttribute(e);t&&r.push(`[${e}="${t}"]`)}return r.join("")}function vl(){try{return pl.document.location.href}catch{return""}}function wl(e,t,n){if(!(t in e))return;const r=e[t];if("function"!=typeof r)return;const i=n(r);"function"==typeof i&&xl(i,r);try{e[t]=i}catch{xa&&Ra(`Failed to replace method "${t}" in object`,e)}}function bl(e,t,n){try{Object.defineProperty(e,t,{value:n,writable:!0,configurable:!0})}catch{xa&&Ra(`Failed to add non-enumerable property "${t}" to object`,e)}}function xl(e,t){try{const n=t.prototype||{};e.prototype=t.prototype=n,bl(e,"__sentry_original__",t)}catch{}}function kl(e){return e.he}function Nl(e){if(nl(e))return{message:e.message,name:e.name,stack:e.stack,...Cl(e)};if(dl(e)){const t={type:e.type,target:Sl(e.target),currentTarget:Sl(e.currentTarget),...Cl(e)};return"undefined"!=typeof CustomEvent&&hl(e,CustomEvent)&&(t.detail=e.detail),t}return e}function Sl(e){try{return"undefined"!=typeof Element&&hl(e,Element)?gl(e):{}.toString.call(e)}catch{return"<unknown>"}}function Cl(e){return"object"==typeof e&&null!==e?Object.fromEntries(Object.entries(e)):{}}let _l,$l,Il;function Tl(e){if(void 0!==_l)return _l?_l(e):e();const t=Symbol.for("__SENTRY_SAFE_RANDOM_ID_WRAPPER__"),n=ka;return t in n&&"function"==typeof n[t]?(_l=n[t],_l(e)):(_l=null,e())}function El(){return Tl(()=>Math.random())}function Pl(){return Tl(()=>Date.now())}function zl(e,t=0){return"string"!=typeof e||0===t||e.length<=t?e:`${e.slice(0,t)}...`}function Dl(e,t){if(!Array.isArray(e))return"";const n=[];for(let t=0;t<e.length;t++){const r=e[t];try{ml(r)?n.push(Ua(r)):n.push(String(r))}catch{n.push("[value cannot be serialized]")}}return n.join(t)}function Rl(e,t,n=!1){return!!sl(e)&&(rl(t,"RegExp")?t.test(e):sl(t)?n?e===t:e.includes(t):"function"==typeof t&&t(e))}function Ml(e,t=[],n=!1){return t.some(t=>Rl(e,t,n))}function Ol(e=function(){const e=ka;return e.crypto||e.msCrypto}()){try{if(e?.randomUUID)return Tl(()=>e.randomUUID()).replace(/-/g,"")}catch{}return $l||($l=[1e7]+1e3+4e3+8e3+1e11),$l.replace(/[018]/g,e=>(e^(16*El()&15)>>e/4).toString(16))}function jl(e){return e.exception?.values?.[0]}function Wl(e){const{message:t,event_id:n}=e;if(t)return t;const r=jl(e);return r?r.type&&r.value?`${r.type}: ${r.value}`:r.type||r.value||n||"<unknown>":n||"<unknown>"}function Al(e,t){const n=e.exception=e.exception||{},r=n.values=n.values||[],i=r[0]=r[0]||{};i.value||(i.value=t||""),i.type||(i.type="Error")}function Ll(e,t){const n=jl(e);if(!n)return;const r=n.mechanism;if(n.mechanism={type:"generic",handled:!0,...r,...t},t&&"data"in t){const e={...r?.data,...t.data};n.mechanism.data=e}}function Bl(e){if(function(e){try{return e.me}catch{}}(e))return!0;try{bl(e,"__sentry_captured__",!0)}catch{}return!1}function ql(){return Pl()/1e3}function Fl(){return(Il??(Il=function(){const{performance:e}=ka;if(!e?.now||!e.timeOrigin)return ql;const t=e.timeOrigin;return()=>(t+Tl(()=>e.now()))/1e3}()))()}function Hl(e,t={}){if(t.user&&(!e.ipAddress&&t.user.ip_address&&(e.ipAddress=t.user.ip_address),e.did||t.did||(e.did=t.user.id||t.user.email||t.user.username)),e.timestamp=t.timestamp||Fl(),t.abnormal_mechanism&&(e.abnormal_mechanism=t.abnormal_mechanism),t.ignoreDuration&&(e.ignoreDuration=t.ignoreDuration),t.sid&&(e.sid=32===t.sid.length?t.sid:Ol()),void 0!==t.init&&(e.init=t.init),!e.did&&t.did&&(e.did=`${t.did}`),"number"==typeof t.started&&(e.started=t.started),e.ignoreDuration)e.duration=void 0;else if("number"==typeof t.duration)e.duration=t.duration;else{const t=e.timestamp-e.started;e.duration=t>=0?t:0}t.release&&(e.release=t.release),t.environment&&(e.environment=t.environment),!e.ipAddress&&t.ipAddress&&(e.ipAddress=t.ipAddress),!e.userAgent&&t.userAgent&&(e.userAgent=t.userAgent),"number"==typeof t.errors&&(e.errors=t.errors),t.status&&(e.status=t.status)}function Ul(e,t,n=2){if(!t||"object"!=typeof t||n<=0)return t;if(e&&0===Object.keys(t).length)return e;const r={...e};for(const e in t)({}).hasOwnProperty.call(t,e)&&(r[e]=Ul(r[e],t[e],n-1));return r}function Yl(){return Ol()}function Zl(){return Ol().substring(16)}const Gl="_sentrySpan";function Vl(e,t){t?bl(e,Gl,t):delete e[Gl]}function Ql(e){return e[Gl]}class Jl{constructor(){this.fe=!1,this.pe=[],this.ge=[],this.ye=[],this.ve=[],this.we={},this.be={},this.xe={},this.ke={},this.Ne={},this.Se={},this.Ce={traceId:Yl(),sampleRand:El()}}clone(){const e=new Jl;return e.ye=[...this.ye],e.be={...this.be},e.xe={...this.xe},e.ke={...this.ke},e.Ne={...this.Ne},this.Ne.flags&&(e.Ne.flags={values:[...this.Ne.flags.values]}),e.we=this.we,e._e=this._e,e.$e=this.$e,e.Ie=this.Ie,e.Te=this.Te,e.ge=[...this.ge],e.ve=[...this.ve],e.Se={...this.Se},e.Ce={...this.Ce},e.Ee=this.Ee,e.Pe=this.Pe,e.ze=this.ze,Vl(e,Ql(this)),e}setClient(e){this.Ee=e}setLastEventId(e){this.Pe=e}getClient(){return this.Ee}lastEventId(){return this.Pe}addScopeListener(e){this.pe.push(e)}addEventProcessor(e){return this.ge.push(e),this}setUser(e){return this.we=e||{email:void 0,id:void 0,ip_address:void 0,username:void 0},this.$e&&Hl(this.$e,{user:e}),this.De(),this}getUser(){return this.we}setConversationId(e){return this.ze=e||void 0,this.De(),this}setTags(e){return this.be={...this.be,...e},this.De(),this}setTag(e,t){return this.setTags({[e]:t})}setAttributes(e){return this.xe={...this.xe,...e},this.De(),this}setAttribute(e,t){return this.setAttributes({[e]:t})}removeAttribute(e){return e in this.xe&&(delete this.xe[e],this.De()),this}setExtras(e){return this.ke={...this.ke,...e},this.De(),this}setExtra(e,t){return this.ke={...this.ke,[e]:t},this.De(),this}setFingerprint(e){return this.Te=e,this.De(),this}setLevel(e){return this._e=e,this.De(),this}setTransactionName(e){return this.Ie=e,this.De(),this}setContext(e,t){return null===t?delete this.Ne[e]:this.Ne[e]=t,this.De(),this}setSession(e){return e?this.$e=e:delete this.$e,this.De(),this}getSession(){return this.$e}update(e){if(!e)return this;const t="function"==typeof e?e(this):e,n=t instanceof Jl?t.getScopeData():cl(t)?e:void 0,{tags:r,attributes:i,extra:o,user:s,contexts:a,level:l,fingerprint:c=[],propagationContext:d,conversationId:u}=n||{};return this.be={...this.be,...r},this.xe={...this.xe,...i},this.ke={...this.ke,...o},this.Ne={...this.Ne,...a},s&&Object.keys(s).length&&(this.we=s),l&&(this._e=l),c.length&&(this.Te=c),d&&(this.Ce=d),u&&(this.ze=u),this}clear(){return this.ye=[],this.be={},this.xe={},this.ke={},this.we={},this.Ne={},this._e=void 0,this.Ie=void 0,this.Te=void 0,this.$e=void 0,this.ze=void 0,Vl(this,void 0),this.ve=[],this.setPropagationContext({traceId:Yl(),sampleRand:El()}),this.De(),this}addBreadcrumb(e,t){const n="number"==typeof t?t:100;if(n<=0)return this;const r={timestamp:ql(),...e,message:e.message?zl(e.message,2048):e.message};return this.ye.push(r),this.ye.length>n&&(this.ye=this.ye.slice(-n),this.Ee?.recordDroppedEvent("buffer_overflow","log_item")),this.De(),this}getLastBreadcrumb(){return this.ye[this.ye.length-1]}clearBreadcrumbs(){return this.ye=[],this.De(),this}addAttachment(e){return this.ve.push(e),this}clearAttachments(){return this.ve=[],this}getScopeData(){return{breadcrumbs:this.ye,attachments:this.ve,contexts:this.Ne,tags:this.be,attributes:this.xe,extra:this.ke,user:this.we,level:this._e,fingerprint:this.Te||[],eventProcessors:this.ge,propagationContext:this.Ce,sdkProcessingMetadata:this.Se,transactionName:this.Ie,span:Ql(this),conversationId:this.ze}}setSDKProcessingMetadata(e){return this.Se=Ul(this.Se,e,2),this}setPropagationContext(e){return this.Ce=e,this}getPropagationContext(){return this.Ce}captureException(e,t){const n=t?.event_id||Ol();if(!this.Ee)return xa&&Ma("No client configured on scope - will not capture exception!"),n;const r=new Error("Sentry syntheticException");return this.Ee.captureException(e,{originalException:e,syntheticException:r,...t,event_id:n},this),n}captureMessage(e,t,n){const r=n?.event_id||Ol();if(!this.Ee)return xa&&Ma("No client configured on scope - will not capture message!"),r;const i=n?.syntheticException??new Error(e);return this.Ee.captureMessage(e,t,{originalException:e,syntheticException:i,...n,event_id:r},this),r}captureEvent(e,t){const n=e.event_id||t?.event_id||Ol();return this.Ee?(this.Ee.captureEvent(e,{...t,event_id:n},this),n):(xa&&Ma("No client configured on scope - will not capture event!"),n)}De(){this.fe||(this.fe=!0,this.pe.forEach(e=>{e(this)}),this.fe=!1)}}const Kl=e=>e instanceof Promise&&!e[Xl],Xl=Symbol("chained PromiseLike");class ec{constructor(e,t){let n,r;n=e||new Jl,r=t||new Jl,this.Re=[{scope:n}],this.Me=r}withScope(e){const t=this.Oe();let n;try{n=e(t)}catch(e){throw this.je(),e}return ul(n)?((e,t,n)=>{const r=e.then(e=>(t(),e),e=>{throw n(),e});return Kl(r)&&Kl(e)?r:((e,t)=>{let n=!1;for(const r in e){if(r in t)continue;n=!0;const i=e[r];"function"==typeof i?Object.defineProperty(t,r,{value:(...t)=>i.apply(e,t),enumerable:!0,configurable:!0,writable:!0}):t[r]=i}return n&&Object.assign(t,{[Xl]:!0}),t})(e,r)})(n,()=>this.je(),()=>this.je()):(this.je(),n)}getClient(){return this.getStackTop().client}getScope(){return this.getStackTop().scope}getIsolationScope(){return this.Me}getStackTop(){return this.Re[this.Re.length-1]}Oe(){const e=this.getScope().clone();return this.Re.push({client:this.getClient(),scope:e}),e}je(){return!(this.Re.length<=1||!this.Re.pop())}}function tc(){const e=Ca(Sa());return e.stack=e.stack||new ec(_a("defaultCurrentScope",()=>new Jl),_a("defaultIsolationScope",()=>new Jl))}function nc(e){return tc().withScope(e)}function rc(e,t){const n=tc();return n.withScope(()=>(n.getStackTop().scope=e,t(e)))}function ic(e){return tc().withScope(()=>e(tc().getIsolationScope()))}function oc(e){const t=Ca(e);return t.acs?t.acs:{withIsolationScope:ic,withScope:nc,withSetScope:rc,withSetIsolationScope:(e,t)=>ic(t),getCurrentScope:()=>tc().getScope(),getIsolationScope:()=>tc().getIsolationScope()}}function sc(){return oc(Sa()).getCurrentScope()}function ac(){return oc(Sa()).getIsolationScope()}function lc(...e){const t=oc(Sa());if(2===e.length){const[n,r]=e;return n?t.withSetScope(n,r):t.withScope(r)}return t.withScope(e[0])}function cc(){return sc().getClient()}function dc(e){const t=e.getPropagationContext(),{traceId:n,parentSpanId:r,propagationSpanId:i}=t,o={trace_id:n,span_id:i||Zl()};return r&&(o.parent_span_id=r),o}const uc="sentry.profile_id",hc="sentry.exclusive_time";function mc(e){if(e){if("object"==typeof e&&"deref"in e&&"function"==typeof e.deref)try{return e.deref()}catch{return}return e}}function fc(e){const t=e;return{scope:t.We,isolationScope:mc(t.Ae)}}function pc(e){return e.split(",").map(e=>{const t=e.indexOf("=");return-1===t?[]:[e.slice(0,t),e.slice(t+1)].map(e=>{try{return decodeURIComponent(e.trim())}catch{return}})}).reduce((e,[t,n])=>(t&&n&&(e[t]=n),e),{})}const gc=/^o(\d+)\./,yc=/^(?:(\w+):)\/\/(?:(\w+)(?::(\w+)?)?@)((?:\[[:.%\w]+\]|[\w.-]+))(?::(\d+))?\/(.+)/;function vc(e,t=!1){const{host:n,path:r,pass:i,port:o,projectId:s,protocol:a,publicKey:l}=e;return`${a}://${l}${t&&i?`:${i}`:""}@${n}${o?`:${o}`:""}/${r?`${r}/`:r}${s}`}function wc(e){return{protocol:e.protocol,publicKey:e.publicKey||"",pass:e.pass||"",host:e.host,port:e.port||"",path:e.path||"",projectId:e.projectId}}function bc(e){const t=e.getOptions(),{host:n}=e.getDsn()||{};let r;return t.orgId?r=String(t.orgId):n&&(r=function(e){const t=e.match(gc);return t?.[1]}(n)),r}let xc=!1;function kc(e){const{spanId:t,traceId:n,isRemote:r}=e.spanContext(),i=r?t:_c(e).parent_span_id,o=fc(e).scope;return{parent_span_id:i,span_id:r?o?.getPropagationContext().propagationSpanId||Zl():t,trace_id:n}}function Nc(e){return e&&e.length>0?e.map(({context:{spanId:e,traceId:t,traceFlags:n,...r},attributes:i})=>({span_id:e,trace_id:t,sampled:1===n,attributes:i,...r})):void 0}function Sc(e){return"number"==typeof e?Cc(e):Array.isArray(e)?e[0]+e[1]/1e9:e instanceof Date?Cc(e.getTime()):Fl()}function Cc(e){return e>9999999999?e/1e3:e}function _c(e){if(function(e){return"function"==typeof e.getSpanJSON}(e))return e.getSpanJSON();const{spanId:t,traceId:n}=e.spanContext();if(function(e){const t=e;return!!(t.attributes&&t.startTime&&t.name&&t.endTime&&t.status)}(e)){const{attributes:r,startTime:i,name:o,endTime:s,status:a,links:l}=e;return{span_id:t,trace_id:n,data:r,description:o,parent_span_id:$c(e),start_timestamp:Sc(i),timestamp:Sc(s)||void 0,status:Ic(a),op:r["sentry.op"],origin:r["sentry.origin"],links:Nc(l)}}return{span_id:t,trace_id:n,start_timestamp:0,data:{}}}function $c(e){return"parentSpanId"in e?e.parentSpanId:"parentSpanContext"in e?e.parentSpanContext?.spanId:void 0}function Ic(e){if(e&&0!==e.code)return 1===e.code?"ok":e.message||"internal_error"}const Tc=function(e){return e.Le||e};function Ec(){xc||(Ta(()=>{}),xc=!0)}function Pc(e){Ra(`Ignoring span ${e.op} - ${e.description} because it matches \`ignoreSpans\`.`)}function zc(e,t){if(!t?.length||!e.description)return!1;for(const n of t){if(Rc(n)){if(Rl(e.description,n))return xa&&Pc(e),!0;continue}if(!n.name&&!n.op)continue;const t=!n.name||Rl(e.description,n.name),r=!n.op||e.op&&Rl(e.op,n.op);if(t&&r)return xa&&Pc(e),!0}return!1}function Dc(e,t){const n=t.parent_span_id,r=t.span_id;if(n)for(const t of e)t.parent_span_id===r&&(t.parent_span_id=n)}function Rc(e){return"string"==typeof e||e instanceof RegExp}const Mc="production";function Oc(e,t){const n=t.getOptions(),{publicKey:r}=t.getDsn()||{},i={environment:n.environment||Mc,release:n.release,public_key:r,trace_id:e,org_id:bc(t)};return t.emit("createDsc",i),i}function jc(e){const t=cc();if(!t)return{};const n=Tc(e),r=_c(n),i=r.data,o=n.spanContext().traceState,s=o?.get("sentry.sample_rate")??i["sentry.sample_rate"]??i["sentry.previous_trace_sample_rate"];function a(e){return"number"!=typeof s&&"string"!=typeof s||(e.sample_rate=`${s}`),e}const l=n.Be;if(l)return a(l);const c=o?.get("sentry.dsc"),d=c&&function(e){const t=function(e){if(e&&(sl(e)||Array.isArray(e)))return Array.isArray(e)?e.reduce((e,t)=>{const n=pc(t);return Object.entries(n).forEach(([t,n])=>{e[t]=n}),e},{}):pc(e)}(e);if(!t)return;const n=Object.entries(t).reduce((e,[t,n])=>(t.startsWith("sentry-")&&(e[t.slice(7)]=n),e),{});return Object.keys(n).length>0?n:void 0}(c);if(d)return a(d);const u=Oc(e.spanContext().traceId,t),h=i["sentry.source"]??i["sentry.span.source"],m=r.description;return"url"!==h&&m&&(u.transaction=m),function(){if("boolean"==typeof __SENTRY_TRACING__&&!__SENTRY_TRACING__)return!1;const e=cc()?.getOptions();return!(!e||null==e.tracesSampleRate&&!e.tracesSampler)}()&&(u.sampled=String(function(e){const{traceFlags:t}=e.spanContext();return 1===t}(n)),u.sample_rand=o?.get("sentry.sample_rand")??fc(n).scope?.getPropagationContext().sampleRand.toString()),a(u),t.emit("createDsc",u,n),u}function Wc(e,t=100,n=1/0){try{return Lc("",e,t,n)}catch(e){return{ERROR:`**non-serializable** (${e})`}}}function Ac(e,t=3,n=102400){const r=Wc(e,t);return i=r,function(e){return~-encodeURI(e).split(/%..|./).length}(JSON.stringify(i))>n?Ac(e,t-1,n):r;var i}function Lc(e,t,n=1/0,r=1/0,i=function(){const e=new WeakSet;return[function(t){return!!e.has(t)||(e.add(t),!1)},function(t){e.delete(t)}]}()){const[o,s]=i;if(null==t||["boolean","string"].includes(typeof t)||"number"==typeof t&&Number.isFinite(t))return t;const a=function(e,t){try{if("domain"===e&&t&&"object"==typeof t&&t.qe)return"[Domain]";if("domainEmitter"===e)return"[DomainEmitter]";if("undefined"!=typeof global&&t===global)return"[Global]";if("undefined"!=typeof window&&t===window)return"[Window]";if("undefined"!=typeof document&&t===document)return"[Document]";if(ml(t))return Ua(t);if(cl(n=t)&&"nativeEvent"in n&&"preventDefault"in n&&"stopPropagation"in n)return"[SyntheticEvent]";if("number"==typeof t&&!Number.isFinite(t))return`[${t}]`;if("function"==typeof t)return`[Function: ${Fa(t)}]`;if("symbol"==typeof t)return`[${String(t)}]`;if("bigint"==typeof t)return`[BigInt: ${String(t)}]`;const r=function(e){const t=Object.getPrototypeOf(e);return t?.constructor?t.constructor.name:"null prototype"}(t);return/^HTML(\w*)Element$/.test(r)?`[HTMLElement: ${r}]`:`[object ${r}]`}catch(e){return`**non-serializable** (${e})`}var n}(e,t);if(!a.startsWith("[object "))return a;if(t.Fe)return t;const l="number"==typeof t.He?t.He:n;if(0===l)return a.replace("object ","");if(o(t))return"[Circular ~]";const c=t;if(c&&"function"==typeof c.toJSON)try{return Lc("",c.toJSON(),l-1,r,i)}catch{}const d=Array.isArray(t)?[]:{};let u=0;const h=Nl(t);for(const e in h){if(!{}.hasOwnProperty.call(h,e))continue;if(u>=r){d[e]="[MaxProperties ~]";break}const t=h[e];d[e]=Lc(e,t,l-1,r,i),u++}return s(t),d}function Bc(e,t=[]){return[e,t]}function qc(e,t){const[n,r]=e;return[n,[...r,t]]}function Fc(e,t){const n=e[1];for(const e of n)if(t(e,e[0].type))return!0;return!1}function Hc(e){const t=Ca(ka);return t.encodePolyfill?t.encodePolyfill(e):(new TextEncoder).encode(e)}function Uc(e){const[t,n]=e;let r=JSON.stringify(t);function i(e){"string"==typeof r?r="string"==typeof e?r+e:[Hc(r),e]:r.push("string"==typeof e?Hc(e):e)}for(const e of n){const[t,n]=e;if(i(`\n${JSON.stringify(t)}\n`),"string"==typeof n||n instanceof Uint8Array)i(n);else{let e;try{e=JSON.stringify(n)}catch{e=JSON.stringify(Wc(n))}i(e)}}return"string"==typeof r?r:function(e){const t=e.reduce((e,t)=>e+t.length,0),n=new Uint8Array(t);let r=0;for(const t of e)n.set(t,r),r+=t.length;return n}(r)}function Yc(e){const t="string"==typeof e.data?Hc(e.data):e.data;return[{type:"attachment",length:t.length,filename:e.filename,content_type:e.contentType,attachment_type:e.attachmentType},t]}const Zc={sessions:"session",event:"error",client_report:"internal",user_report:"default",profile_chunk:"profile",replay_event:"replay",replay_recording:"replay",check_in:"monitor",raw_security:"security",log:"log_item",trace_metric:"metric"};function Gc(e){return function(e){return e in Zc}(e)?Zc[e]:e}function Vc(e){if(!e?.sdk)return;const{name:t,version:n}=e.sdk;return{name:t,version:n}}function Qc(e,t){const{extra:n,tags:r,attributes:i,user:o,contexts:s,level:a,sdkProcessingMetadata:l,breadcrumbs:c,fingerprint:d,eventProcessors:u,attachments:h,propagationContext:m,transactionName:f,span:p}=t;Jc(e,"extra",n),Jc(e,"tags",r),Jc(e,"attributes",i),Jc(e,"user",o),Jc(e,"contexts",s),e.sdkProcessingMetadata=Ul(e.sdkProcessingMetadata,l,2),a&&(e.level=a),f&&(e.transactionName=f),p&&(e.span=p),c.length&&(e.breadcrumbs=[...e.breadcrumbs,...c]),d.length&&(e.fingerprint=[...e.fingerprint,...d]),u.length&&(e.eventProcessors=[...e.eventProcessors,...u]),h.length&&(e.attachments=[...e.attachments,...h]),e.propagationContext={...e.propagationContext,...m}}function Jc(e,t,n){e[t]=Ul(e[t],n,1)}function Kc(e,t){const n=_a("globalScope",()=>new Jl).getScopeData();return e&&Qc(n,e.getScopeData()),t&&Qc(n,t.getScopeData()),n}function Xc(e){return new td(t=>{t(e)})}function ed(e){return new td((t,n)=>{n(e)})}class td{constructor(e){this.Ue=0,this.Ye=[],this.Ze(e)}then(e,t){return new td((n,r)=>{this.Ye.push([!1,t=>{if(e)try{n(e(t))}catch(e){r(e)}else n(t)},e=>{if(t)try{n(t(e))}catch(e){r(e)}else r(e)}]),this.Ge()})}catch(e){return this.then(e=>e,e)}finally(e){return new td((t,n)=>{let r,i;return this.then(t=>{i=!1,r=t,e&&e()},t=>{i=!0,r=t,e&&e()}).then(()=>{i?n(r):t(r)})})}Ge(){if(0===this.Ue)return;const e=this.Ye.slice();this.Ye=[],e.forEach(e=>{e[0]||(1===this.Ue&&e[1](this.Ve),2===this.Ue&&e[2](this.Ve),e[0]=!0)})}Ze(e){const t=(e,t)=>{0===this.Ue&&(ul(t)?t.then(n,r):(this.Ue=e,this.Ve=t,this.Ge()))},n=e=>{t(1,e)},r=e=>{t(2,e)};try{e(n,r)}catch(e){r(e)}}}function nd(e,t,n,r=0){try{const i=rd(t,n,e,r);return ul(i)?i:Xc(i)}catch(e){return ed(e)}}function rd(e,t,n,r){const i=n[r];if(!e||!i)return e;const o=i({...e},t);return xa&&null===o&&Ra(`Event processor "${i.id||"?"}" dropped event`),ul(o)?o.then(e=>rd(e,t,n,r+1)):rd(o,t,n,r+1)}let id,od,sd,ad;function ld(e,t,n,r,i,o){const{normalizeDepth:s=3,normalizeMaxBreadth:a=1e3}=e,l={...t,event_id:t.event_id||n.event_id||Ol(),timestamp:t.timestamp||ql()},c=n.integrations||e.integrations.map(e=>e.name);!function(e,t){const{environment:n,release:r,dist:i,maxValueLength:o}=t;e.environment=e.environment||n||Mc,!e.release&&r&&(e.release=r),!e.dist&&i&&(e.dist=i);const s=e.request;s?.url&&o&&(s.url=zl(s.url,o)),o&&e.exception?.values?.forEach(e=>{e.value&&(e.value=zl(e.value,o))})}(l,e),function(e,t){t.length>0&&(e.sdk=e.sdk||{},e.sdk.integrations=[...e.sdk.integrations||[],...t])}(l,c),i&&i.emit("applyFrameMetadata",t),void 0===t.type&&function(e,t){const n=function(e){const t=ka.Qe,n=ka.Je;if(!t&&!n)return{};const r=t?Object.keys(t):[],i=n?Object.keys(n):[];if(ad&&r.length===od&&i.length===sd)return ad;od=r.length,sd=i.length,ad={},id||(id={});const o=(t,n)=>{for(const r of t){const t=n[r],i=id?.[r];if(i&&ad&&t)ad[i[0]]=t,id&&(id[r]=[i[0],t]);else if(t){const n=e(r);for(let e=n.length-1;e>=0;e--){const i=n[e],o=i?.filename;if(o&&ad&&id){ad[o]=t,id[r]=[o,t];break}}}}};return t&&o(r,t),n&&o(i,n),ad}(t);e.exception?.values?.forEach(e=>{e.stacktrace?.frames?.forEach(e=>{e.filename&&(e.debug_id=n[e.filename])})})}(l,e.stackParser);const d=function(e,t){if(!t)return e;const n=e?e.clone():new Jl;return n.update(t),n}(r,n.captureContext);n.mechanism&&Ll(l,n.mechanism);const u=i?i.getEventProcessors():[],h=Kc(o,d),m=[...n.attachments||[],...h.attachments];m.length&&(n.attachments=m),function(e,t){const{fingerprint:n,span:r,breadcrumbs:i,sdkProcessingMetadata:o}=t;!function(e,t){const{extra:n,tags:r,user:i,contexts:o,level:s,transactionName:a}=t;Object.keys(n).length&&(e.extra={...n,...e.extra}),Object.keys(r).length&&(e.tags={...r,...e.tags}),Object.keys(i).length&&(e.user={...i,...e.user}),Object.keys(o).length&&(e.contexts={...o,...e.contexts}),s&&(e.level=s),a&&"transaction"!==e.type&&(e.transaction=a)}(e,t),r&&function(e,t){e.contexts={trace:kc(t),...e.contexts},e.sdkProcessingMetadata={dynamicSamplingContext:jc(t),...e.sdkProcessingMetadata};const n=_c(Tc(t)).description;n&&!e.transaction&&"transaction"===e.type&&(e.transaction=n)}(e,r),function(e,t){e.fingerprint=e.fingerprint?Array.isArray(e.fingerprint)?e.fingerprint:[e.fingerprint]:[],t&&(e.fingerprint=e.fingerprint.concat(t)),e.fingerprint.length||delete e.fingerprint}(e,n),function(e,t){const n=[...e.breadcrumbs||[],...t];e.breadcrumbs=n.length?n:void 0}(e,i),function(e,t){e.sdkProcessingMetadata={...e.sdkProcessingMetadata,...t}}(e,o)}(l,h);const f=[...u,...h.eventProcessors];return(n.data&&!0===n.data.Ke?Xc(l):nd(f,l,n)).then(e=>(e&&function(e){const t={};if(e.exception?.values?.forEach(e=>{e.stacktrace?.frames?.forEach(e=>{e.debug_id&&(e.abs_path?t[e.abs_path]=e.debug_id:e.filename&&(t[e.filename]=e.debug_id),delete e.debug_id)})}),0===Object.keys(t).length)return;e.debug_meta=e.debug_meta||{},e.debug_meta.images=e.debug_meta.images||[];const n=e.debug_meta.images;Object.entries(t).forEach(([e,t])=>{n.push({type:"sourcemap",code_file:e,debug_id:t})})}(e),"number"==typeof s&&s>0?function(e,t,n){if(!e)return null;const r={...e,...e.breadcrumbs&&{breadcrumbs:e.breadcrumbs.map(e=>({...e,...e.data&&{data:Wc(e.data,t,n)}}))},...e.user&&{user:Wc(e.user,t,n)},...e.contexts&&{contexts:Wc(e.contexts,t,n)},...e.extra&&{extra:Wc(e.extra,t,n)}};return e.contexts?.trace&&r.contexts&&(r.contexts.trace=e.contexts.trace,e.contexts.trace.data&&(r.contexts.trace.data=Wc(e.contexts.trace.data,t,n))),e.spans&&(r.spans=e.spans.map(e=>({...e,...e.data&&{data:Wc(e.data,t,n)}}))),e.contexts?.flags&&r.contexts&&(r.contexts.flags=Wc(e.contexts.flags,3,n)),r}(e,s,a):e))}function cd(e){return sc().captureException(e,void 0)}function dd(e,t){const n="string"==typeof t?t:void 0,r="string"!=typeof t?{captureContext:t}:void 0;return sc().captureMessage(e,n,r)}function ud(e,t){return sc().captureEvent(e,t)}function hd(e){const t=ac(),{user:n}=Kc(t,sc()),{userAgent:r}=ka.navigator||{},i=function(e){const t=Fl(),n={sid:Ol(),init:!0,timestamp:t,started:t,duration:0,status:"ok",errors:0,ignoreDuration:!1,toJSON:()=>function(e){return{sid:`${e.sid}`,init:e.init,started:new Date(1e3*e.started).toISOString(),timestamp:new Date(1e3*e.timestamp).toISOString(),status:e.status,errors:e.errors,did:"number"==typeof e.did||"string"==typeof e.did?`${e.did}`:void 0,duration:e.duration,abnormal_mechanism:e.abnormal_mechanism,attrs:{release:e.release,environment:e.environment,ip_address:e.ipAddress,user_agent:e.userAgent}}}(n)};return e&&Hl(n,e),n}({user:n,...r&&{userAgent:r},...e}),o=t.getSession();return"ok"===o?.status&&Hl(o,{status:"exited"}),md(),t.setSession(i),i}function md(){const e=ac(),t=sc().getSession()||e.getSession();t&&function(e){let t={};"ok"===e.status&&(t={status:"exited"}),Hl(e,t)}(t),fd(),e.setSession()}function fd(){const e=ac(),t=cc(),n=e.getSession();n&&t&&t.captureSession(n)}function pd(e=!1){e?md():fd()}const gd=[];function yd(e){const t=e.defaultIntegrations||[],n=e.integrations;let r;if(t.forEach(e=>{e.isDefaultInstance=!0}),Array.isArray(n))r=[...t,...n];else if("function"==typeof n){const e=n(t);r=Array.isArray(e)?e:[e]}else r=t;return function(e){const t={};return e.forEach(e=>{const{name:n}=e,r=t[n];r&&!r.isDefaultInstance&&e.isDefaultInstance||(t[n]=e)}),Object.values(t)}(r)}function vd(e,t){for(const n of t)n?.afterAllSetup&&n.afterAllSetup(e)}function wd(e,t,n){if(n[t.name])xa&&Ra(`Integration skipped because it was already installed: ${t.name}`);else{if(n[t.name]=t,gd.includes(t.name)||"function"!=typeof t.setupOnce||(t.setupOnce(),gd.push(t.name)),t.setup&&"function"==typeof t.setup&&t.setup(e),"function"==typeof t.preprocessEvent){const n=t.preprocessEvent.bind(t);e.on("preprocessEvent",(t,r)=>n(t,r,e))}if("function"==typeof t.processEvent){const n=t.processEvent.bind(t),r=Object.assign((t,r)=>n(t,r,e),{id:t.name});e.addEventProcessor(r)}xa&&Ra(`Integration installed: ${t.name}`)}}function bd(e,t){const n=t??function(e){return xd().get(e)}(e)??[];if(0===n.length)return;const r=e.getOptions(),i=function(e,t,n,r){const i={};return t?.sdk&&(i.sdk={name:t.sdk.name,version:t.sdk.version}),n&&r&&(i.dsn=vc(r)),Bc(i,[(o=e,[{type:"log",item_count:o.length,content_type:"application/vnd.sentry.items.log+json"},{items:o}])]);var o}(n,r.Xe,r.tunnel,e.getDsn());xd().set(e,[]),e.emit("flushLogs"),e.sendEnvelope(i)}function xd(){return _a("clientToLogBufferMap",()=>new WeakMap)}function kd(e,t){const n=t??function(e){return Nd().get(e)}(e)??[];if(0===n.length)return;const r=e.getOptions(),i=function(e,t,n,r){const i={};return t?.sdk&&(i.sdk={name:t.sdk.name,version:t.sdk.version}),n&&r&&(i.dsn=vc(r)),Bc(i,[(o=e,[{type:"trace_metric",item_count:o.length,content_type:"application/vnd.sentry.items.trace-metric+json"},{items:o}])]);var o}(n,r.Xe,r.tunnel,e.getDsn());Nd().set(e,[]),e.emit("flushMetrics"),e.sendEnvelope(i)}function Nd(){return _a("clientToMetricBufferMap",()=>new WeakMap)}function Sd(e){return"object"==typeof e&&"function"==typeof e.unref&&e.unref(),e}const Cd=Symbol.for("SentryBufferFullError");function _d(e=100){const t=new Set;function n(e){t.delete(e)}return{get $(){return Array.from(t)},add:function(r){if(!(t.size<e))return ed(Cd);const i=r();return t.add(i),i.then(()=>n(i),()=>n(i)),i},drain:function(e){if(!t.size)return Xc(!0);const n=Promise.allSettled(Array.from(t)).then(()=>!0);if(!e)return n;const r=[n,new Promise(t=>Sd(setTimeout(()=>t(!1),e)))];return Promise.race(r)}}}function $d(e,t,n=_d(e.bufferSize||64)){let r={};return{send:function(i){const o=[];if(Fc(i,(t,n)=>{const i=Gc(n);!function(e,t,n=Pl()){return function(e,t){return e[t]||e.all||0}(e,t)>n}(r,i)?o.push(t):e.recordDroppedEvent("ratelimit_backoff",i)}),0===o.length)return Promise.resolve({});const s=Bc(i[0],o),a=t=>{!function(e,t){return Fc(e,(e,n)=>t.includes(n))}(s,["client_report"])?Fc(s,(n,r)=>{e.recordDroppedEvent(t,Gc(r))}):xa&&Ma(`Dropping client report. Will not send outcomes (reason: ${t}).`)};return n.add(()=>t({body:Uc(s)}).then(e=>413===e.statusCode?(xa&&Oa("Sentry responded with status code 413. Envelope was discarded due to exceeding size limits."),a("send_error"),e):(xa&&void 0!==e.statusCode&&(e.statusCode<200||e.statusCode>=300)&&Ma(`Sentry responded with status code ${e.statusCode} to sent event.`),r=function(e,{statusCode:t,headers:n},r=Pl()){const i={...e},o=n?.["x-sentry-rate-limits"],s=n?.["retry-after"];if(o)for(const e of o.trim().split(",")){const[t,n,,,o]=e.split(":",5),s=parseInt(t,10),a=1e3*(isNaN(s)?60:s);if(n)for(const e of n.split(";"))"metric_bucket"===e&&o&&!o.split(";").includes("custom")||(i[e]=r+a);else i.all=r+a}else s?i.all=r+function(e,t=Pl()){const n=parseInt(`${e}`,10);if(!isNaN(n))return 1e3*n;const r=Date.parse(`${e}`);return isNaN(r)?6e4:r-t}(s,r):429===t&&(i.all=r+6e4);return i}(r,e),e),e=>{throw a("network_error"),xa&&Oa("Encountered error running transport request:",e),e})).then(e=>e,e=>{if(e===Cd)return xa&&Oa("Skipped sending event because buffer is full."),a("queue_overflow"),Promise.resolve({});throw e})},flush:e=>n.drain(e)}}function Id(e){const t=[];e.message&&t.push(e.message);try{const n=e.exception.values[e.exception.values.length-1];n?.value&&(t.push(n.value),n.type&&t.push(`${n.type}: ${n.value}`))}catch{}return t}const Td="Not capturing exception because it's already been captured.",Ed="Discarded session because of missing or non-string release",Pd=Symbol.for("SentryInternalError"),zd=Symbol.for("SentryDoNotSendEventError");function Dd(e){return{message:e,[Pd]:!0}}function Rd(e){return{message:e,[zd]:!0}}function Md(e){return!!e&&"object"==typeof e&&Pd in e}function Od(e){return!!e&&"object"==typeof e&&zd in e}function jd(e,t,n,r,i){let o,s=0,a=!1;e.on(n,()=>{s=0,clearTimeout(o),a=!1}),e.on(t,t=>{s+=r(t),s>=8e5?i(e):a||(a=!0,o=Sd(setTimeout(()=>{i(e)},5e3)))}),e.on("flush",()=>{i(e)})}class Wd{constructor(e){if(this.et=e,this.nt={},this.rt=0,this.it={},this.ot={},this.ge=[],this.st=_d(e.transportOptions?.bufferSize??64),e.dsn?this.lt=function(e){const t="string"==typeof e?function(e){const t=yc.exec(e);if(!t)return void Ta(()=>{});const[n,r,i="",o="",s="",a=""]=t.slice(1);let l="",c=a;const d=c.split("/");if(d.length>1&&(l=d.slice(0,-1).join("/"),c=d.pop()),c){const e=c.match(/^\d+/);e&&(c=e[0])}return wc({host:o,pass:i,path:l,projectId:c,port:s,protocol:n,publicKey:r})}(e):wc(e);if(t&&function(e){if(!xa)return!0;const{port:t,projectId:n,protocol:r}=e;return!(["protocol","publicKey","host","projectId"].find(t=>!e[t]&&(Oa(`Invalid Sentry Dsn: ${t} missing`),!0))||(n.match(/^\d+$/)?function(e){return"http"===e||"https"===e}(r)?t&&isNaN(parseInt(t,10))&&(Oa(`Invalid Sentry Dsn: Invalid port ${t}`),1):(Oa(`Invalid Sentry Dsn: Invalid protocol ${r}`),1):(Oa(`Invalid Sentry Dsn: Invalid projectId ${n}`),1)))}(t))return t}(e.dsn):xa&&Ma("No DSN provided, client will not send events."),this.lt){const i=(t=this.lt,n=e.tunnel,r=e.Xe?e.Xe.sdk:void 0,n||`${function(e){return`${function(e){const t=e.protocol?`${e.protocol}:`:"",n=e.port?`:${e.port}`:"";return`${t}//${e.host}${n}${e.path?`/${e.path}`:""}/api/`}(e)}${e.projectId}/envelope/`}(t)}?${function(e,t){const n={sentry_version:"7"};return e.publicKey&&(n.sentry_key=e.publicKey),t&&(n.sentry_client=`${t.name}/${t.version}`),new URLSearchParams(n).toString()}(t,r)}`);this.ct=e.transport({tunnel:this.et.tunnel,recordDroppedEvent:this.recordDroppedEvent.bind(this),...e.transportOptions,url:i})}var t,n,r;this.et.enableLogs=this.et.enableLogs??this.et.ut?.enableLogs,this.et.enableLogs&&jd(this,"afterCaptureLog","flushLogs",Fd,bd),(this.et.enableMetrics??this.et.ut?.enableMetrics??1)&&jd(this,"afterCaptureMetric","flushMetrics",qd,kd)}captureException(e,t,n){const r=Ol();if(Bl(e))return xa&&Ra(Td),r;const i={event_id:r,...t};return this.ht(()=>this.eventFromException(e,i).then(e=>this.ft(e,i,n)).then(e=>e),"error"),i.event_id}captureMessage(e,t,n,r){const i={event_id:Ol(),...n},o=al(e)?e:String(e),s=ll(e),a=s?this.eventFromMessage(o,t,i):this.eventFromException(e,i);return this.ht(()=>a.then(e=>this.ft(e,i,r)),s?"unknown":"error"),i.event_id}captureEvent(e,t,n){const r=Ol();if(t?.originalException&&Bl(t.originalException))return xa&&Ra(Td),r;const i={event_id:r,...t},o=e.sdkProcessingMetadata||{},s=o.capturedSpanScope,a=o.capturedSpanIsolationScope,l=Ad(e.type);return this.ht(()=>this.ft(e,i,s||n,a),l),i.event_id}captureSession(e){this.sendSession(e),Hl(e,{init:!1})}getDsn(){return this.lt}getOptions(){return this.et}getSdkMetadata(){return this.et.Xe}getTransport(){return this.ct}async flush(e){const t=this.ct;if(!t)return!0;this.emit("flush");const n=await this.gt(e),r=await t.flush(e);return n&&r}async close(e){bd(this);const t=await this.flush(e);return this.getOptions().enabled=!1,this.emit("close"),t}getEventProcessors(){return this.ge}addEventProcessor(e){this.ge.push(e)}init(){(this.yt()||this.et.integrations.some(({name:e})=>e.startsWith("Spotlight")))&&this.vt()}getIntegrationByName(e){return this.nt[e]}addIntegration(e){const t=this.nt[e.name];!t&&e.beforeSetup&&e.beforeSetup(this),wd(this,e,this.nt),t||vd(this,[e])}sendEvent(e,t={}){this.emit("beforeSendEvent",e,t);let n=function(e,t,n,r){const i=Vc(n),o=e.type&&"replay_event"!==e.type?e.type:"event";!function(e,t){if(!t)return e;const n=e.sdk||{};e.sdk={...n,name:n.name||t.name,version:n.version||t.version,integrations:[...e.sdk?.integrations||[],...t.integrations||[]],packages:[...e.sdk?.packages||[],...t.packages||[]],settings:e.sdk?.settings||t.settings?{...e.sdk?.settings,...t.settings}:void 0}}(e,n?.sdk);const s=function(e,t,n,r){const i=e.sdkProcessingMetadata?.dynamicSamplingContext;return{event_id:e.event_id,sent_at:(new Date).toISOString(),...t&&{sdk:t},...!!n&&r&&{dsn:vc(r)},...i&&{trace:i}}}(e,i,r,t);return delete e.sdkProcessingMetadata,Bc(s,[[{type:o},e]])}(e,this.lt,this.et.Xe,this.et.tunnel);for(const e of t.attachments||[])n=qc(n,Yc(e));this.sendEnvelope(n).then(t=>this.emit("afterSendEvent",e,t))}sendSession(e){const{release:t,environment:n=Mc}=this.et;if("aggregates"in e){const r=e.attrs||{};if(!r.release&&!t)return void(xa&&Ma(Ed));r.release=r.release||t,r.environment=r.environment||n,e.attrs=r}else{if(!e.release&&!t)return void(xa&&Ma(Ed));e.release=e.release||t,e.environment=e.environment||n}this.emit("beforeSendSession",e);const r=function(e,t,n,r){const i=Vc(n);return Bc({sent_at:(new Date).toISOString(),...i&&{sdk:i},...!!r&&t&&{dsn:vc(t)}},["aggregates"in e?[{type:"sessions"},e]:[{type:"session"},e.toJSON()]])}(e,this.lt,this.et.Xe,this.et.tunnel);this.sendEnvelope(r)}recordDroppedEvent(e,t,n=1){if(this.et.sendClientReports){const r=`${e}:${t}`;xa&&Ra(`Recording outcome: "${r}"${n>1?` (${n} times)`:""}`),this.it[r]=(this.it[r]||0)+n}}on(e,t){const n=this.ot[e]=this.ot[e]||new Set,r=(...e)=>t(...e);return n.add(r),()=>{n.delete(r)}}emit(e,...t){const n=this.ot[e];n&&n.forEach(e=>e(...t))}async sendEnvelope(e){if(this.emit("beforeEnvelope",e),this.yt()&&this.ct)try{return await this.ct.send(e)}catch(e){return xa&&Oa("Error while sending envelope:",e),{}}return xa&&Oa("Transport disabled"),{}}dispose(){}vt(){const{integrations:e}=this.et;this.nt=function(e,t){const n={};return t.forEach(t=>{t?.beforeSetup&&t.beforeSetup(e)}),t.forEach(t=>{t&&wd(e,t,n)}),n}(this,e),vd(this,e)}wt(e,t){let n="fatal"===t.level,r=!1;const i=t.exception?.values;if(i){r=!0,n=!1;for(const e of i)if(!1===e.mechanism?.handled){n=!0;break}}const o="ok"===e.status;(o&&0===e.errors||o&&n)&&(Hl(e,{...n&&{status:"crashed"},errors:e.errors||Number(r||n)}),this.captureSession(e))}async gt(e){let t=0;for(;!e||t<e;){if(await new Promise(e=>setTimeout(e,1)),!this.rt)return!0;t++}return!1}yt(){return!1!==this.getOptions().enabled&&void 0!==this.ct}bt(e,t,n,r){const i=this.getOptions(),o=Object.keys(this.nt);return!t.integrations&&o?.length&&(t.integrations=o),this.emit("preprocessEvent",e,t),e.type||r.setLastEventId(e.event_id||t.event_id),ld(i,e,t,n,this,r).then(e=>{if(null===e)return e;this.emit("postprocessEvent",e,t),e.contexts={trace:{...e.contexts?.trace,...dc(n)},...e.contexts};const r=function(e,t){const n=t.getPropagationContext();return n.dsc||Oc(n.traceId,e)}(this,n);return e.sdkProcessingMetadata={dynamicSamplingContext:r,...e.sdkProcessingMetadata},e})}ft(e,t={},n=sc(),r=ac()){return xa&&Ld(e)&&Ra(`Captured error event \`${Id(e)[0]||"<unknown>"}\``),this.xt(e,t,n,r).then(e=>e.event_id,e=>{xa&&(Od(e)?Ra(e.message):Md(e)?Ma(e.message):Ma(e))})}xt(e,t,n,r){const i=this.getOptions(),{sampleRate:o}=i,s=Bd(e),a=Ld(e),l=`before send for type \`${e.type||"error"}\``,c=void 0===o?void 0:function(e){if("boolean"==typeof e)return Number(e);const t="string"==typeof e?parseFloat(e):e;return"number"!=typeof t||isNaN(t)||t<0||t>1?void 0:t}(o);if(a&&"number"==typeof c&&El()>c)return this.recordDroppedEvent("sample_rate","error"),ed(Rd(`Discarding event because it's not included in the random sample (sampling rate = ${o})`));const d=Ad(e.type);return this.bt(e,t,n,r).then(e=>{if(null===e)throw this.recordDroppedEvent("event_processor",d),Rd("An event processor returned `null`, will not send event.");if(!0===t.data?.Ke)return e;const n=function(e,t,n,r){const{beforeSend:i,beforeSendTransaction:o,ignoreSpans:s}=t,a=!((l=t.beforeSendSpan)&&"function"==typeof l&&"kt"in l&&l.kt)&&t.beforeSendSpan;var l;let c=n;if(Ld(c)&&i)return i(c,r);if(Bd(c)){if(a||s){const t=function(e){const{trace_id:t,parent_span_id:n,span_id:r,status:i,origin:o,data:s,op:a}=e.contexts?.trace??{};return{data:s??{},description:e.transaction,op:a,parent_span_id:n,span_id:r??"",start_timestamp:e.start_timestamp??0,status:i,timestamp:e.timestamp,trace_id:t??"",origin:o,profile_id:s?.[uc],exclusive_time:s?.[hc],measurements:e.measurements,is_segment:!0}}(c);if(s?.length&&zc(t,s))return null;if(a){const e=a(t);e?c=Ul(n,{type:"transaction",timestamp:(d=e).timestamp,start_timestamp:d.start_timestamp,transaction:d.description,contexts:{trace:{trace_id:d.trace_id,span_id:d.span_id,parent_span_id:d.parent_span_id,op:d.op,status:d.status,origin:d.origin,data:{...d.data,...d.profile_id&&{[uc]:d.profile_id},...d.exclusive_time&&{[hc]:d.exclusive_time}}}},measurements:d.measurements}):Ec()}if(c.spans){const t=[],n=c.spans;for(const e of n)if(s?.length&&zc(e,s))Dc(n,e);else if(a){const n=a(e);n?t.push(n):(Ec(),t.push(e))}else t.push(e);const r=c.spans.length-t.length;r&&e.recordDroppedEvent("before_send","span",r),c.spans=t}}if(o){if(c.spans){const e=c.spans.length;c.sdkProcessingMetadata={...n.sdkProcessingMetadata,spanCountBeforeProcessing:e}}return o(c,r)}}var d;return c}(this,i,e,t);return function(e,t){const n=`${t} must return \`null\` or a valid event.`;if(ul(e))return e.then(e=>{if(!cl(e)&&null!==e)throw Dd(n);return e},e=>{throw Dd(`${t} rejected with ${e}`)});if(!cl(e)&&null!==e)throw Dd(n);return e}(n,l)}).then(i=>{if(null===i){if(this.recordDroppedEvent("before_send",d),s){const t=1+(e.spans||[]).length;this.recordDroppedEvent("before_send","span",t)}throw Rd(`${l} returned \`null\`, will not send event.`)}const o=n.getSession()||r.getSession();if(a&&o&&this.wt(o,i),s){const e=(i.sdkProcessingMetadata?.spanCountBeforeProcessing||0)-(i.spans?i.spans.length:0);e>0&&this.recordDroppedEvent("before_send","span",e)}const c=i.transaction_info;if(s&&c&&i.transaction!==e.transaction){const e="custom";i.transaction_info={...c,source:e}}return this.sendEvent(i,t),i}).then(null,e=>{if(Od(e)||Md(e))throw e;throw this.captureException(e,{mechanism:{handled:!1,type:"internal"},data:{Ke:!0},originalException:e}),Dd(`Event processing pipeline threw an error, original event will not be sent. Details have been sent as a new event.\nReason: ${e}`)})}ht(e,t){this.rt++,this.st.add(e).then(e=>(this.rt--,e),e=>(this.rt--,e===Cd&&this.recordDroppedEvent("queue_overflow",t),e))}Nt(){const e=this.it;return this.it={},Object.entries(e).map(([e,t])=>{const[n,r]=e.split(":");return{reason:n,category:r,quantity:t}})}St(){xa&&Ra("Flushing outcomes...");const e=this.Nt();if(0===e.length)return void(xa&&Ra("No outcomes to send"));if(!this.lt)return void(xa&&Ra("No dsn provided, will not send outcomes"));xa&&Ra("Sending outcomes:",e);const t=(n=e,Bc((r=this.et.tunnel&&vc(this.lt))?{dsn:r}:{},[[{type:"client_report"},{timestamp:ql(),discarded_events:n}]]));var n,r;this.sendEnvelope(t)}}function Ad(e){return"replay_event"===e?"replay":e||"error"}function Ld(e){return void 0===e.type}function Bd(e){return"transaction"===e.type}function qd(e){let t=0;return e.name&&(t+=2*e.name.length),t+=8,t+Hd(e.attributes)}function Fd(e){let t=0;return e.message&&(t+=2*e.message.length),t+Hd(e.attributes)}function Hd(e){if(!e)return 0;let t=0;return Object.values(e).forEach(e=>{Array.isArray(e)?t+=e.length*Ud(e[0]):ll(e)?t+=Ud(e):t+=100}),t}function Ud(e){return"string"==typeof e?2*e.length:"number"==typeof e?8:"boolean"==typeof e?4:0}function Yd(e){return function(e){return nl(e)&&"Ct"in e&&"string"==typeof e.Ct}(e)?`${e.message} (${e.Ct})`:e.message}function Zd(e){if(!e)return{};const t=e.match(/^(([^:/?#]+):)?(\/\/([^/?#]*))?([^?#]*)(\?([^#]*))?(#(.*))?$/);if(!t)return{};const n=t[6]||"",r=t[8]||"";return{host:t[4],path:t[5],protocol:t[2],search:n,hash:r,relative:t[5]+n+r}}function Gd(e){"aggregates"in e?void 0===e.attrs?.ip_address&&(e.attrs={...e.attrs,ip_address:"{{auto}}"}):void 0===e.ipAddress&&(e.ipAddress="{{auto}}")}const Vd=100;function Qd(e,t){const n=cc(),r=ac();if(!n)return;const{beforeBreadcrumb:i=null,maxBreadcrumbs:o=Vd}=n.getOptions();if(o<=0)return;const s={timestamp:ql(),...e},a=i?Ta(()=>i(s,t)):s;null!==a&&(n.emit&&n.emit("beforeAddBreadcrumb",a,t),r.addBreadcrumb(a,o))}let Jd;const Kd=new WeakMap,Xd=()=>({name:"FunctionToString",setupOnce(){Jd=function(){}.toString;try{Function.prototype.toString=function(...e){const t=kl(this),n=Kd.has(cc())&&void 0!==t?t:this;return Jd.apply(n,e)}}catch{}},setup(e){Kd.set(e,!0)}}),eu=[/^Script error\.?$/,/^Javascript error: Script error\.? on line 0$/,/^ResizeObserver loop completed with undelivered notifications.$/,/^Cannot redefine property: googletag$/,/^Can't find variable: gmo$/,/^undefined is not an object \(evaluating 'a\.[A-Z]'\)$/,/can't redefine non-configurable property "solana"/,/vv\(\)\.getRestrictions is not a function/,/Can't find variable: _AutofillCallbackHandler/,/Object Not Found Matching Id:\d+, MethodName:simulateEvent/,/^Java exception was raised during method invocation$/],tu=(e={})=>{let t;return{name:"EventFilters",setup(n){const r=n.getOptions();t=ru(e,r)},processEvent(n,r,i){if(!t){const n=i.getOptions();t=ru(e,n)}return function(e,t){if(e.type){if("transaction"===e.type&&function(e,t){if(!t?.length)return!1;const n=e.transaction;return!!n&&Ml(n,t)}(e,t.ignoreTransactions))return xa&&Ma(`Event dropped due to being matched by \`ignoreTransactions\` option.\nEvent: ${Wl(e)}`),!0}else{if(function(e,t){return!!t?.length&&Id(e).some(e=>Ml(e,t))}(e,t.ignoreErrors))return xa&&Ma(`Event dropped due to being matched by \`ignoreErrors\` option.\nEvent: ${Wl(e)}`),!0;if(function(e){return!!e.exception?.values?.length&&(!e.message&&!e.exception.values.some(e=>e.stacktrace||e.type&&"Error"!==e.type||e.value))}(e))return xa&&Ma(`Event dropped due to not having an error message, error type or stacktrace.\nEvent: ${Wl(e)}`),!0;if(function(e,t){if(!t?.length)return!1;const n=iu(e);return!!n&&Ml(n,t)}(e,t.denyUrls))return xa&&Ma(`Event dropped due to being matched by \`denyUrls\` option.\nEvent: ${Wl(e)}.\nUrl: ${iu(e)}`),!0;if(!function(e,t){if(!t?.length)return!0;const n=iu(e);return!n||Ml(n,t)}(e,t.allowUrls))return xa&&Ma(`Event dropped due to not being matched by \`allowUrls\` option.\nEvent: ${Wl(e)}.\nUrl: ${iu(e)}`),!0}return!1}(n,t)?null:n}}},nu=(e={})=>({...tu(e),name:"InboundFilters"});function ru(e={},t={}){return{allowUrls:[...e.allowUrls||[],...t.allowUrls||[]],denyUrls:[...e.denyUrls||[],...t.denyUrls||[]],ignoreErrors:[...e.ignoreErrors||[],...t.ignoreErrors||[],...e.disableErrorDefaults?[]:eu],ignoreTransactions:[...e.ignoreTransactions||[],...t.ignoreTransactions||[]]}}function iu(e){try{const t=[...e.exception?.values??[]].reverse().find(e=>void 0===e.mechanism?.parent_id&&e.stacktrace?.frames?.length),n=t?.stacktrace?.frames;return n?function(e=[]){for(let t=e.length-1;t>=0;t--){const n=e[t];if(n&&"<anonymous>"!==n.filename&&"[native code]"!==n.filename)return n.filename||null}return null}(n):null}catch{return xa&&Oa(`Cannot extract url for event ${Wl(e)}`),null}}function ou(e,t,n,r,i,o){if(!i.exception?.values||!o||!hl(o.originalException,Error))return;const s=i.exception.values.length>0?i.exception.values[i.exception.values.length-1]:void 0;s&&(i.exception.values=su(e,t,r,o.originalException,n,i.exception.values,s,0))}function su(e,t,n,r,i,o,s,a){if(o.length>=n+1)return o;let l=[...o];if(hl(r[i],Error)){lu(s,a,r);const o=e(t,r[i]),c=l.length;cu(o,i,c,a),l=su(e,t,n,r[i],i,[o,...l],o,c)}return au(r)&&r.errors.forEach((o,c)=>{if(hl(o,Error)){lu(s,a,r);const d=e(t,o),u=l.length;cu(d,`errors[${c}]`,u,a),l=su(e,t,n,o,i,[d,...l],d,u)}}),l}function au(e){return Array.isArray(e.errors)}function lu(e,t,n){e.mechanism={handled:!0,type:"auto.core.linked_errors",...au(n)&&{is_exception_group:!0},...e.mechanism,exception_id:t}}function cu(e,t,n,r){e.mechanism={handled:!0,...e.mechanism,type:"chained",source:t,exception_id:n,parent_id:r}}function du(){"console"in ka&&$a.forEach(function(e){e in ka.console&&wl(ka.console,e,function(t){return Ia[e]=t,function(...t){Qa("console",{args:t,level:e});const n=Ia[e];n?.apply(ka.console,t)}})})}const uu=()=>{let e;return{name:"Dedupe",processEvent(t){if(t.type)return t;try{if(function(e,t){return!!t&&(!!function(e,t){const n=e.message,r=t.message;return!(!n&&!r)&&(!(n&&!r||!n&&r)&&(n===r&&(!!mu(e,t)&&!!hu(e,t))))}(e,t)||!!function(e,t){const n=fu(t),r=fu(e);return!(!n||!r)&&(n.type===r.type&&n.value===r.value&&(!!mu(e,t)&&!!hu(e,t)))}(e,t))}(t,e))return xa&&Ma("Event dropped due to being a duplicate of previously captured event."),null}catch{}return e=t}}};function hu(e,t){let n=Ha(e),r=Ha(t);if(!n&&!r)return!0;if(n&&!r||!n&&r)return!1;if(r.length!==n.length)return!1;for(let e=0;e<r.length;e++){const t=r[e],i=n[e];if(t.filename!==i.filename||t.lineno!==i.lineno||t.colno!==i.colno||t.function!==i.function)return!1}return!0}function mu(e,t){let n=e.fingerprint,r=t.fingerprint;if(!n&&!r)return!0;if(n&&!r||!n&&r)return!1;try{return!(n.join("")!==r.join(""))}catch{return!1}}function fu(e){return e.exception?.values?.[0]}function pu(e){return void 0===e?void 0:e>=400&&e<500?"warning":e>=500?"error":void 0}const gu=ka;function yu(e){return e&&/^function\s+\w+\(\)\s+\{\s+\[native code\]\s+\}$/.test(e.toString())}function vu(e,t){const n="fetch";Ga(n,e),Va(n,()=>function(e,t=!1){t&&!function(){if("string"==typeof EdgeRuntime)return!0;if(!function(){if(!("fetch"in gu))return!1;try{return new Headers,new Request("data:,"),new Response,!0}catch{return!1}}())return!1;if(yu(gu.fetch))return!0;let e=!1;const t=gu.document;if(t&&"function"==typeof t.createElement)try{const n=t.createElement("iframe");n.hidden=!0,t.head.appendChild(n),n.contentWindow?.fetch&&(e=yu(n.contentWindow.fetch)),t.head.removeChild(n)}catch(e){xa&&Ma("Could not create sandbox iframe for pure fetch check, bailing to window.fetch: ",e)}return e}()||wl(ka,"fetch",function(e){return function(...t){const n=new Error,{method:r,url:i}=function(e){if(0===e.length)return{method:"GET",url:""};if(2===e.length){const[t,n]=e;return{url:bu(t),method:wu(n,"method")?String(n.method).toUpperCase():fl(t)&&wu(t,"method")?String(t.method).toUpperCase():"GET"}}const t=e[0];return{url:bu(t),method:wu(t,"method")?String(t.method).toUpperCase():"GET"}}(t),o={args:t,fetchData:{method:r,url:i},startTimestamp:1e3*Fl(),virtualError:n,headers:xu(t)};return Qa("fetch",{...o}),e.apply(ka,t).then(async e=>(Qa("fetch",{...o,endTimestamp:1e3*Fl(),response:e}),e),e=>{Qa("fetch",{...o,endTimestamp:1e3*Fl(),error:e}),nl(e)&&void 0===e.stack&&(e.stack=n.stack,bl(e,"framesToPop",1));const t=cc(),r=t?.getOptions().enhanceFetchErrorMessages??"always";if(!1!==r&&e instanceof TypeError&&("Failed to fetch"===e.message||"Load failed"===e.message||"NetworkError when attempting to fetch resource."===e.message))try{const t=new URL(o.fetchData.url).host;"always"===r?e.message=`${e.message} (${t})`:bl(e,"__sentry_fetch_url_host__",t)}catch{}throw e})}})}(0,t))}function wu(e,t){return!!e&&"object"==typeof e&&!!e[t]}function bu(e){return"string"==typeof e?e:e?wu(e,"url")?e.url:e.toString?e.toString():"":""}function xu(e){const[t,n]=e;try{if("object"==typeof n&&null!==n&&"headers"in n&&n.headers)return new Headers(n.headers);if(fl(t))return new Headers(t.headers)}catch{}}const ku=ka;let Nu=0;function Su(){return Nu>0}function Cu(e,t={}){if(!function(e){return"function"==typeof e}(e))return e;try{const t=e._t;if(t)return"function"==typeof t?t:e;if(kl(e))return e}catch{return e}const n=function(...n){try{const r=n.map(e=>Cu(e,t));return e.apply(this,r)}catch(e){throw Nu++,setTimeout(()=>{Nu--}),lc(r=>{r.addEventProcessor(e=>(t.mechanism&&(Al(e,void 0),Ll(e,t.mechanism)),e.extra={...e.extra,arguments:n},e)),cd(e)}),e}};try{for(const t in e)({}).hasOwnProperty.call(e,t)&&(n[t]=e[t])}catch{}xl(n,e),bl(e,"__sentry_wrapped__",n);try{Object.getOwnPropertyDescriptor(n,"name").configurable&&Object.defineProperty(n,"name",{get:()=>e.name})}catch{}return n}function _u(e,t){const n=Iu(e,t),r={type:Pu(t),value:zu(t)};return n.length&&(r.stacktrace={frames:n}),void 0===r.type&&""===r.value&&(r.value="Unrecoverable error caught"),r}function $u(e,t){return{exception:{values:[_u(e,t)]}}}function Iu(e,t){const n=t.stacktrace||t.stack||"",r=function(e){return e&&Tu.test(e.message)?1:0}(t),i=function(e){return"number"==typeof e.framesToPop?e.framesToPop:0}(t);try{return e(n,r,i)}catch{}return[]}const Tu=/Minified React error #\d+;/i;function Eu(e){return"undefined"!=typeof WebAssembly&&void 0!==WebAssembly.Exception&&e instanceof WebAssembly.Exception}function Pu(e){const t=e?.name;return!t&&Eu(e)?e.message&&Array.isArray(e.message)&&2==e.message.length?e.message[0]:"WebAssembly.Exception":t}function zu(e){const t=e?.message;return Eu(e)?Array.isArray(e.message)&&2==e.message.length?e.message[1]:"wasm exception":t?t.error&&"string"==typeof t.error.message?Yd(t.error):Yd(e):"No error message"}function Du(e,t,n,r,i){let o;if(il(t)&&t.error)return $u(e,t.error);if(ol(t)||rl(t,"DOMException")){const i=t;if("stack"in t)o=$u(e,t);else{const t=i.name||(ol(i)?"DOMError":"DOMException"),s=i.message?`${t}: ${i.message}`:t;o=Ru(e,s,n,r),Al(o,s)}return"code"in i&&(o.tags={...o.tags,"DOMException.code":`${i.code}`}),o}return nl(t)?$u(e,t):cl(t)||dl(t)?(o=function(e,t,n,r){const i=cc(),o=i?.getOptions().normalizeDepth,s=(a=t,Object.values(a).find(e=>e instanceof Error));var a;const l={$t:Ac(t,o)};if(s)return{exception:{values:[_u(e,s)]},extra:l};const c={exception:{values:[{type:dl(t)?t.constructor.name:r?"UnhandledRejection":"Error",value:Mu(t,{isUnhandledRejection:r})}]},extra:l};if(n){const t=Iu(e,n);t.length&&(c.exception.values[0].stacktrace={frames:t})}return c}(e,t,n,i),Ll(o,{synthetic:!0}),o):(o=Ru(e,t,n,r),Al(o,`${t}`),Ll(o,{synthetic:!0}),o)}function Ru(e,t,n,r){const i={};if(r&&n){const r=Iu(e,n);r.length&&(i.exception={values:[{value:t,stacktrace:{frames:r}}]}),Ll(i,{synthetic:!0})}if(al(t)){const{le:e,ce:n}=t;return i.logentry={message:e,params:n},i}return i.message=t,i}function Mu(e,{isUnhandledRejection:t}){const n=function(e){const t=Object.keys(Nl(e));return t.sort(),t[0]?t.join(", "):"[object has no keys]"}(e),r=t?"promise rejection":"exception";return il(e)?`Event \`ErrorEvent\` captured as ${r} with message \`${e.message}\``:dl(e)?`Event \`${function(e){try{const t=Object.getPrototypeOf(e);return t?t.constructor.name:void 0}catch{}}(e)}\` (type=${e.type}) captured as ${r}`:`Object captured as ${r} with keys: ${n}`}class Ou extends Wd{constructor(e){const t=(n=e,{release:"string"==typeof __SENTRY_RELEASE__?__SENTRY_RELEASE__:ku.SENTRY_RELEASE?.id,sendClientReports:!0,parentSpanIsAlwaysRootSpan:!0,...n});var n;!function(e,t,n=[t],r="npm"){const i=(e.Xe=e.Xe||{}).sdk=e.Xe.sdk||{};i.name||(i.name=`sentry.javascript.${t}`,i.packages=n.map(e=>({name:`${r}:@sentry/${e}`,version:Na})),i.version=Na)}(t,"browser",["browser"],ku.SENTRY_SDK_SOURCE||"npm"),t.Xe?.sdk&&(t.Xe.sdk.settings={infer_ip:t.sendDefaultPii?"auto":"never",...t.Xe.sdk.settings}),super(t);const{sendDefaultPii:r,sendClientReports:i,enableLogs:o,ut:s,enableMetrics:a}=this.et,l=a??s?.enableMetrics??!0;ku.document&&(i||o||l)&&ku.document.addEventListener("visibilitychange",()=>{"hidden"===ku.document.visibilityState&&(i&&this.St(),o&&bd(this),l&&kd(this))}),r&&this.on("beforeSendSession",Gd)}eventFromException(e,t){return function(e,t,n,r){const i=Du(e,t,n?.syntheticException||void 0,r);return Ll(i),i.level="error",n?.event_id&&(i.event_id=n.event_id),Xc(i)}(this.et.stackParser,e,t,this.et.attachStacktrace)}eventFromMessage(e,t="info",n){return function(e,t,n="info",r,i){const o=Ru(e,t,r?.syntheticException||void 0,i);return o.level=n,r?.event_id&&(o.event_id=r.event_id),Xc(o)}(this.et.stackParser,e,t,n,this.et.attachStacktrace)}bt(e,t,n,r){return e.platform=e.platform||"javascript",super.bt(e,t,n,r)}}const ju="undefined"==typeof __SENTRY_DEBUG__||__SENTRY_DEBUG__,Wu=ka;let Au,Lu,Bu,qu;function Fu(){if(!Wu.document)return;const e=Qa.bind(null,"dom"),t=Hu(e,!0);Wu.document.addEventListener("click",t,!1),Wu.document.addEventListener("keypress",t,!1),["EventTarget","Node"].forEach(t=>{const n=Wu,r=n[t]?.prototype;r?.hasOwnProperty?.("addEventListener")&&(wl(r,"addEventListener",function(t){return function(n,r,i){if("click"===n||"keypress"==n)try{const r=this.It=this.It||{},o=r[n]=r[n]||{refCount:0};if(!o.handler){const r=Hu(e);o.handler=r,t.call(this,n,r,i)}o.refCount++}catch{}return t.call(this,n,r,i)}}),wl(r,"removeEventListener",function(e){return function(t,n,r){if("click"===t||"keypress"==t)try{const n=this.It||{},i=n[t];i&&(i.refCount--,i.refCount<=0&&(e.call(this,t,i.handler,r),i.handler=void 0,delete n[t]),0===Object.keys(n).length&&delete this.It)}catch{}return e.call(this,t,n,r)}}))})}function Hu(e,t=!1){return n=>{if(!n||n.Tt)return;const r=function(e){try{return e.target}catch{return null}}(n);if(function(e,t){return"keypress"===e&&(!t?.tagName||"INPUT"!==t.tagName&&"TEXTAREA"!==t.tagName&&!t.isContentEditable)}(n.type,r))return;bl(n,"_sentryCaptured",!0),r&&!r.Et&&bl(r,"_sentryId",Ol());const i="keypress"===n.type?"input":n.type;(function(e){if(e.type!==Lu)return!1;try{if(!e.target||e.target.Et!==Bu)return!1}catch{}return!0})(n)||(e({event:n,name:i,global:t}),Lu=n.type,Bu=r?r.Et:void 0),clearTimeout(Au),Au=Wu.setTimeout(()=>{Bu=void 0,Lu=void 0},1e3)}}function Uu(e){const t="history";Ga(t,e),Va(t,Yu)}function Yu(){function e(e){return function(...t){const n=t.length>2?t[2]:void 0;if(n){const r=qu,i=function(e){try{return new URL(e,Wu.location.origin).toString()}catch{return e}}(String(n));if(qu=i,r===i)return e.apply(this,t);Qa("history",{from:r,to:i})}return e.apply(this,t)}}Wu.addEventListener("popstate",()=>{const e=Wu.location.href,t=qu;qu=e,t!==e&&Qa("history",{from:t,to:e})}),"history"in gu&&gu.history&&(wl(Wu.history,"pushState",e),wl(Wu.history,"replaceState",e))}const Zu={},Gu="__sentry_xhr_v3__";function Vu(){if(!Wu.XMLHttpRequest)return;const e=XMLHttpRequest.prototype;e.open=new Proxy(e.open,{apply(e,t,n){const r=new Error,i=1e3*Fl(),o=sl(n[0])?n[0].toUpperCase():void 0,s=function(e){if(sl(e))return e;try{return e.toString()}catch{}}(n[1]);if(!o||!s)return e.apply(t,n);t[Gu]={method:o,url:s,request_headers:{}},"POST"===o&&s.match(/sentry_key/)&&(t.Pt=!0);const a=()=>{const e=t[Gu];if(e&&4===t.readyState){try{e.status_code=t.status}catch{}Qa("xhr",{endTimestamp:1e3*Fl(),startTimestamp:i,xhr:t,virtualError:r})}};return"onreadystatechange"in t&&"function"==typeof t.onreadystatechange?t.onreadystatechange=new Proxy(t.onreadystatechange,{apply:(e,t,n)=>(a(),e.apply(t,n))}):t.addEventListener("readystatechange",a),t.setRequestHeader=new Proxy(t.setRequestHeader,{apply(e,t,n){const[r,i]=n,o=t[Gu];return o&&sl(r)&&sl(i)&&(o.request_headers[r.toLowerCase()]=i),e.apply(t,n)}}),e.apply(t,n)}}),e.send=new Proxy(e.send,{apply(e,t,n){const r=t[Gu];return r?(void 0!==n[0]&&(r.body=n[0]),Qa("xhr",{startTimestamp:1e3*Fl(),xhr:t}),e.apply(t,n)):e.apply(t,n)}})}function Qu(e,t=function(e){const t=Zu[e];if(t)return t;let n=Wu[e];if(yu(n))return Zu[e]=n.bind(Wu);const r=Wu.document;if(r&&"function"==typeof r.createElement)try{const t=r.createElement("iframe");t.hidden=!0,r.head.appendChild(t);const i=t.contentWindow;i?.[e]&&(n=i[e]),r.head.removeChild(t)}catch(t){ju&&Ma(`Could not create sandbox iframe for ${e} check, bailing to window.${e}: `,t)}return n?Zu[e]=n.bind(Wu):n}("fetch")){let n=0,r=0;return $d(e,async function(i){const o=i.body.length;n+=o,r++;const s={body:i.body,method:"POST",referrerPolicy:"strict-origin",headers:e.headers,keepalive:n<=6e4&&r<15,...e.fetchOptions};try{const n=await t(e.url,s);return{statusCode:n.status,headers:{"x-sentry-rate-limits":n.headers.get("X-Sentry-Rate-Limits"),"retry-after":n.headers.get("Retry-After")}}}catch(e){throw Zu.fetch=void 0,e}finally{n-=o,r--}},_d(e.bufferSize||40))}const Ju="undefined"==typeof __SENTRY_DEBUG__||__SENTRY_DEBUG__;function Ku(e,t,n,r){const i={filename:e,function:"<anonymous>"===t?ja:t,in_app:!0};return void 0!==n&&(i.lineno=n),void 0!==r&&(i.colno=r),i}const Xu=/^\s*at (\S+?)(?::(\d+))(?::(\d+))\s*$/i,eh=/^\s*at (?:(.+?\)(?: \[.+\])?|.*?) ?\((?:address at )?)?(?:async )?((?:<anonymous>|[-a-z]+:|.*bundle|\/)?.*?)(?::(\d+))?(?::(\d+))?\)?\s*$/i,th=/\((\S*)(?::(\d+))(?::(\d+))\)/,nh=/at (.+?) ?\(data:(.+?),/,rh=/^\s*(.*?)(?:\((.*?)\))?(?:^|@)?((?:[-a-z]+)?:\/.*?|\[native code\]|[^@]*(?:bundle|\d+\.js)|\/[\w\-. /=]+)(?::(\d+))?(?::(\d+))?\s*$/i,ih=/(\S+) line (\d+)(?: > eval line \d+)* > eval/i,oh=La([30,e=>{const t=e.match(nh);if(t)return{filename:`<data:${t[2]}>`,function:t[1]};const n=Xu.exec(e);if(n){const[,e,t,r]=n;return Ku(e,ja,+t,+r)}const r=eh.exec(e);if(r){if(0===r[2]?.indexOf("eval")){const e=th.exec(r[2]);e&&(r[2]=e[1],r[3]=e[2],r[4]=e[3])}const[e,t]=sh(r[1]||ja,r[2]);return Ku(t,e,r[3]?+r[3]:void 0,r[4]?+r[4]:void 0)}}],[50,e=>{const t=rh.exec(e);if(t){if(t[3]&&t[3].indexOf(" > eval")>-1){const e=ih.exec(t[3]);e&&(t[1]=t[1]||"eval",t[3]=e[1],t[4]=e[2],t[5]="")}let e=t[3],n=t[1]||ja;return[n,e]=sh(n,e),Ku(e,n,t[4]?+t[4]:void 0,t[5]?+t[5]:void 0)}}]),sh=(e,t)=>{const n=-1!==e.indexOf("safari-extension"),r=-1!==e.indexOf("safari-web-extension");return n||r?[-1!==e.indexOf("@")?e.split("@")[0]:ja,n?`safari-extension:${t}`:`safari-web-extension:${t}`]:[e,t]},ah=(e={})=>{const t={console:!0,dom:!0,fetch:!0,history:!0,sentry:!0,xhr:!0,...e};return{name:"Breadcrumbs",setup(e){var n;t.console&&function(e){const t="console";Ga(t,e),Va(t,du)}(function(e){return function(t){if(cc()!==e)return;const n={category:"console",data:{arguments:t.args,logger:"console"},level:(r=t.level,"warn"===r?"warning":["fatal","error","warning","log","info","debug"].includes(r)?r:"log"),message:Dl(t.args," ")};var r;if("assert"===t.level){if(!1!==t.args[0])return;n.message=`Assertion failed: ${Dl(t.args.slice(1)," ")||"console.assert"}`,n.data.arguments=t.args.slice(1)}Qd(n,{input:t.args,level:t.level})}}(e)),t.dom&&(n=function(e,t){return function(n){if(cc()!==e)return;let r,i,o="object"==typeof t?t.serializeAttribute:void 0,s="object"==typeof t&&"number"==typeof t.maxStringLength?t.maxStringLength:void 0;s&&s>1024&&(Ju&&Ma(`\`dom.maxStringLength\` cannot exceed 1024, but a value of ${s} was configured. Sentry will use 1024 instead.`),s=1024),"string"==typeof o&&(o=[o]);try{const e=n.event,t=function(e){return!!e&&!!e.target}(e)?e.target:e;r=gl(t,{keyAttrs:o,maxStringLength:s}),i=function(e){if(!pl.HTMLElement)return null;let t=e;for(let e=0;e<5;e++){if(!t)return null;if(t instanceof HTMLElement){if(t.dataset.sentryComponent)return t.dataset.sentryComponent;if(t.dataset.sentryElement)return t.dataset.sentryElement}t=t.parentNode}return null}(t)}catch{r="<unknown>"}if(0===r.length)return;const a={category:`ui.${n.name}`,message:r};i&&(a.data={"ui.component_name":i}),Qd(a,{event:n.event,name:n.name,global:n.global})}}(e,t.dom),Ga("dom",n),Va("dom",Fu)),t.xhr&&function(e){Ga("xhr",e),Va("xhr",Vu)}(function(e){return function(t){if(cc()!==e)return;const{startTimestamp:n,endTimestamp:r}=t,i=t.xhr[Gu];if(!n||!r||!i)return;const{method:o,url:s,status_code:a,body:l}=i,c={method:o,url:s,status_code:a},d={xhr:t.xhr,input:l,startTimestamp:n,endTimestamp:r},u={category:"xhr",data:c,type:"http",level:pu(a)};e.emit("beforeOutgoingRequestBreadcrumb",u,d),Qd(u,d)}}(e)),t.fetch&&vu(function(e){return function(t){if(cc()!==e)return;const{startTimestamp:n,endTimestamp:r}=t;if(r&&(!t.fetchData.url.match(/sentry_key/)||"POST"!==t.fetchData.method))if(t.error){const i={data:t.error,input:t.args,startTimestamp:n,endTimestamp:r},o={category:"fetch",data:t.fetchData,level:"error",type:"http"};e.emit("beforeOutgoingRequestBreadcrumb",o,i),Qd(o,i)}else{const i=t.response,o={...t.fetchData,status_code:i?.status},s={input:t.args,response:i,startTimestamp:n,endTimestamp:r},a={category:"fetch",data:o,type:"http",level:pu(o.status_code)};e.emit("beforeOutgoingRequestBreadcrumb",a,s),Qd(a,s)}}}(e)),t.history&&Uu(function(e){return function(t){if(cc()!==e)return;let n=t.from,r=t.to;const i=Zd(ku.location.href);let o=n?Zd(n):void 0;const s=Zd(r);o?.path||(o=i),i.protocol===s.protocol&&i.host===s.host&&(r=s.relative),i.protocol===o.protocol&&i.host===o.host&&(n=o.relative),Qd({category:"navigation",data:{from:n,to:r}})}}(e)),t.sentry&&e.on("beforeSendEvent",function(e){return function(t){cc()===e&&Qd({category:"sentry."+("transaction"===t.type?"transaction":"event"),event_id:t.event_id,level:t.level,message:Wl(t)},{event:t})}}(e))}}},lh="EventTarget,Window,Node,ApplicationCache,AudioTrackList,BroadcastChannel,ChannelMergerNode,CryptoOperation,EventSource,FileReader,HTMLUnknownElement,IDBDatabase,IDBRequest,IDBTransaction,KeyOperation,MediaController,MessagePort,ModalWindow,Notification,SVGElementInstance,Screen,SharedWorker,TextTrack,TextTrackCue,TextTrackList,WebSocket,WebSocketWorker,Worker,XMLHttpRequest,XMLHttpRequestEventTarget,XMLHttpRequestUpload".split(","),ch=(e={})=>{const t={XMLHttpRequest:!0,eventTarget:!0,requestAnimationFrame:!0,setInterval:!0,setTimeout:!0,unregisterOriginalCallbacks:!1,...e};return{name:"BrowserApiErrors",setupOnce(){t.setTimeout&&wl(ku,"setTimeout",dh),t.setInterval&&wl(ku,"setInterval",dh),t.requestAnimationFrame&&wl(ku,"requestAnimationFrame",uh),t.XMLHttpRequest&&"XMLHttpRequest"in ku&&wl(XMLHttpRequest.prototype,"send",hh);const e=t.eventTarget;e&&(Array.isArray(e)?e:lh).forEach(e=>function(e,t){const n=ku,r=n[e]?.prototype;r?.hasOwnProperty?.("addEventListener")&&(wl(r,"addEventListener",function(n){return function(r,i,o){try{"function"==typeof i.handleEvent&&(i.handleEvent=Cu(i.handleEvent,{mechanism:{data:{handler:Fa(i),target:e},handled:!1,type:"auto.browser.browserapierrors.handleEvent"}}))}catch{}return t.unregisterOriginalCallbacks&&function(e,t,n){e&&"object"==typeof e&&"removeEventListener"in e&&"function"==typeof e.removeEventListener&&e.removeEventListener(t,n)}(this,r,i),n.apply(this,[r,Cu(i,{mechanism:{data:{handler:Fa(i),target:e},handled:!1,type:"auto.browser.browserapierrors.addEventListener"}}),o])}}),wl(r,"removeEventListener",function(e){return function(t,n,r){try{const i=n._t;i&&e.call(this,t,i,r)}catch{}return e.call(this,t,n,r)}}))}(e,t))}}};function dh(e){return function(...t){const n=t[0];return t[0]=Cu(n,{mechanism:{handled:!1,type:`auto.browser.browserapierrors.${Fa(e)}`}}),e.apply(this,t)}}function uh(e){return function(t){return e.apply(this,[Cu(t,{mechanism:{data:{handler:Fa(e)},handled:!1,type:"auto.browser.browserapierrors.requestAnimationFrame"}})])}}function hh(e){return function(...t){const n=this;return["onload","onerror","onprogress","onreadystatechange"].forEach(e=>{e in n&&"function"==typeof n[e]&&wl(n,e,function(t){const n={mechanism:{data:{handler:Fa(t)},handled:!1,type:`auto.browser.browserapierrors.xhr.${e}`}},r=kl(t);return r&&(n.mechanism.data.handler=Fa(r)),Cu(t,n)})}),e.apply(this,t)}}const mh=(e={})=>{const t=e.lifecycle??"route";return{name:"BrowserSession",setupOnce(){if(void 0===ku.document)return void(Ju&&Ma("Using the `browserSessionIntegration` in non-browser environments is not supported."));hd({ignoreDuration:!0}),pd();const e=ac();let n=e.getUser();e.addScopeListener(e=>{const t=e.getUser();n?.id===t?.id&&n?.ip_address===t?.ip_address||(pd(),n=t)}),"route"===t&&Uu(({from:e,to:t})=>{e!==t&&(hd({ignoreDuration:!0}),pd())})}}},fh=(e={})=>{const t={onerror:!0,onunhandledrejection:!0,...e};return{name:"GlobalHandlers",setupOnce(){Error.stackTraceLimit=50},setup(e){t.onerror&&(function(e){!function(){const t="error";Ga(t,t=>{const{stackParser:n,attachStacktrace:r}=gh();if(cc()!==e||Su())return;const{msg:i,url:o,line:s,column:a,error:l}=t,c=function(e,t,n,r){const i=e.exception=e.exception||{},o=i.values=i.values||[],s=o[0]=o[0]||{},a=s.stacktrace=s.stacktrace||{},l=a.frames=a.frames||[];return 0===l.length&&l.push({colno:r,lineno:n,filename:yh(t)??vl(),function:ja,in_app:!0}),e}(Du(n,l||i,void 0,r,!1),o,s,a);c.level="error",ud(c,{originalException:l,mechanism:{handled:!1,type:"auto.browser.global_handlers.onerror"}})}),Va(t,Ka)}()}(e),ph("onerror")),t.onunhandledrejection&&(function(e){!function(){const t="unhandledrejection";Ga(t,t=>{const{stackParser:n,attachStacktrace:r}=gh();if(cc()!==e||Su())return;const i=function(e){if(ll(e))return e;try{if("reason"in e)return e.reason;if("detail"in e&&"reason"in e.detail)return e.detail.reason}catch{}return e}(t),o=ll(i)?{exception:{values:[{type:"UnhandledRejection",value:`Non-Error promise rejection captured with value: ${String(i)}`}]}}:Du(n,i,void 0,r,!0);o.level="error",ud(o,{originalException:i,mechanism:{handled:!1,type:"auto.browser.global_handlers.onunhandledrejection"}})}),Va(t,el)}()}(e),ph("onunhandledrejection"))}}};function ph(e){Ju&&Ra(`Global Handler attached: ${e}`)}function gh(){const e=cc();return e?.getOptions()||{stackParser:()=>[],attachStacktrace:!1}}function yh(e){if(sl(e)&&0!==e.length)return e.startsWith("data:")?`<${function(e,t=!0){if(e.startsWith("data:")){const n=e.match(/^data:([^;,]+)/),r=n?n[1]:"text/plain",i=e.includes(";base64,"),o=e.indexOf(",");let s="";if(t&&-1!==o){const t=e.slice(o+1);s=t.length>10?`${t.slice(0,10)}... [truncated]`:t}return`data:${r}${i?",base64":""}${s?`,${s}`:""}`}return e}(e,!1)}>`:e}const vh=(e={})=>{const t=e.limit||5,n=e.key||"cause";return{name:"LinkedErrors",preprocessEvent(e,r,i){ou(_u,i.getOptions().stackParser,n,t,e,r)}}};function wh(e={}){const t=!e.skipBrowserExtensionCheck&&!!function(){if(void 0===ku.window)return!1;const e=ku;if(e.nw)return!1;const t=e.chrome||e.browser;if(!t?.runtime?.id)return!1;const n=vl();return!(ku===ku.top&&/^(?:chrome-extension|moz-extension|ms-browser-extension|safari-web-extension):\/\//.test(n))}()&&(Ju&&Ta(()=>{}),!0);let n=null==e.defaultIntegrations?[nu(),Xd(),{name:"ConversationId",setup(e){e.on("spanStart",e=>{const t=sc().getScopeData(),n=ac().getScopeData(),r=t.conversationId||n.conversationId;r&&e.setAttribute("gen_ai.conversation.id",r)})}},ch(),ah(),fh(),vh(),uu(),{name:"HttpContext",preprocessEvent(e){if(!ku.navigator&&!ku.location&&!ku.document)return;const t=function(){const e=vl(),{referrer:t}=ku.document||{},{userAgent:n}=ku.navigator||{};return{url:e,headers:{...t&&{Referer:t},...n&&{"User-Agent":n}}}}(),n={...t.headers,...e.request?.headers};e.request={...t,...e.request,headers:n}}},{name:"CultureContext",preprocessEvent(e){const t=function(){try{const e=ku.Intl;if(!e)return;const t=e.DateTimeFormat().resolvedOptions();return{locale:t.locale,timezone:t.timeZone,calendar:t.calendar}}catch{return}}();t&&(e.contexts={...e.contexts,culture:{...t,...e.contexts?.culture}})}},mh()]:e.defaultIntegrations;const r={...e,enabled:!t&&e.enabled,stackParser:(i=e.stackParser||oh,Array.isArray(i)?La(...i):i),integrations:yd({integrations:e.integrations,defaultIntegrations:n}),transport:e.transport||Qu};var i;return function(e,t){!0===t.debug&&(xa?Da():Ta(()=>{})),sc().update(t.initialScope);const n=new e(t);return function(e){sc().setClient(e)}(n),n.init(),n}(Ou,r)}let bh=!1;function xh(e){if(bh)t();else if(e.enabled&&e.dsn)try{const n=e.bundleUrlPatterns||[/cdn\.insure-os\.com/,/api\.os\.insure.*\/dist/,/localhost:\d+\/dist/,/index\.(esm|umd|cjs)\.js/];wh({dsn:e.dsn,environment:e.environment||"production",release:e.release,beforeSend:e=>function(e,t){var n,r,i,o;const s=null===(o=null===(i=null===(r=null===(n=e.exception)||void 0===n?void 0:n.values)||void 0===r?void 0:r[0])||void 0===i?void 0:i.stacktrace)||void 0===o?void 0:o.frames;if(!s||0===s.length)return!0;return s.some(e=>!!e.filename&&t.some(t=>t.test(e.filename||"")))}(e,n)?(e.tags={...e.tags,source:"insureos-widget"},t(e.exception),e):(t(e.exception),null),allowUrls:n,sampleRate:e.sampleRate||1,tracesSampleRate:e.tracesSampleRate||.1,integrations:[ah({console:!0,dom:!0,fetch:!0,history:!1,xhr:!0}),uu()],ignoreErrors:["top.GLOBALS","originalCreateNotification","canvas.contentDocument","MyApp_RemoveAllHighlights","atomicFindClose","Can't find variable: ZiteReader","jigsaw is not defined","ComboSearch is not defined","ResizeObserver loop limit exceeded","ResizeObserver loop completed with undelivered notifications"]}),bh=!0,t()}catch(e){}else t()}function kh(e,n){if(bh)try{n?lc(t=>{Object.entries(n).forEach(([e,n])=>{t.setContext(e,n)}),cd(e)}):cd(e)}catch(e){t()}}function Nh(e,n="info",r){if(bh)try{r?lc(t=>{Object.entries(r).forEach(([e,n])=>{t.setContext(e,n)}),dd(e,n)}):dd(e,n)}catch(e){t()}}function Sh(e){if(bh)try{!function(e){ac().setUser(e)}(e)}catch(e){t()}}function Ch(e){if(bh)try{Qd(e)}catch(e){t()}}function _h(e,n){if(bh)try{!function(e,t){ac().setTag(e,t)}(e,n)}catch(e){t()}}function $h(){return bh}var Ih=Object.freeze({__proto__:null,addBreadcrumb:Ch,captureException:kh,captureMessage:Nh,initializeSentry:xh,isSentryInitialized:$h,setTag:_h,setUser:Sh});const Th="https://a73b48791ca06287db6bc587f376f7b9@o490277.ingest.us.sentry.io/4510139918450688",Eh="production",Ph="insureos-scripts",zh=!0,Dh=1,Rh=.1;class Mh{constructor(e={}){var t,n,r,i;this.dataLayerAvailable=!1,this.config={enabled:null===(t=e.enabled)||void 0===t||t,customDataLayer:null!==(n=e.customDataLayer)&&void 0!==n?n:"dataLayer",includePersonalData:null!==(r=e.includePersonalData)&&void 0!==r&&r,debug:null!==(i=e.debug)&&void 0!==i&&i},"undefined"!=typeof window?this.initializeDataLayer():this.dataLayerAvailable=!1}initializeDataLayer(){try{const e=this.config.customDataLayer;window[e]||(window[e]=[],this.logDebug(`Created new ${e} array`)),Array.isArray(window[e])?(this.dataLayerAvailable=!0,this.logDebug(`✅ Data layer '${e}' is available and ready`)):(this.dataLayerAvailable=!1,this.logDebug(`⚠️ Data layer '${e}' exists but is not an array`))}catch(e){this.dataLayerAvailable=!1,this.logDebug("⚠️ Failed to initialize data layer:",e)}}isEnabled(){return this.config.enabled&&this.dataLayerAvailable}getDataLayer(){if(!this.isEnabled())return null;try{const e=window[this.config.customDataLayer];return Array.isArray(e)?e:null}catch(e){return this.logDebug("Failed to get data layer:",e),null}}push(e){if(!this.isEnabled())return void this.logDebug("📊 Analytics disabled or data layer not available, skipping event:",e.event);const t=this.getDataLayer();if(t)try{const n=this.config.includePersonalData?e:this.removePII(e);t.push(n),this.logDebug("📊 Pushed event to data layer:",n)}catch(e){this.logDebug("❌ Failed to push event to data layer:",e)}else this.logDebug("⚠️ Data layer not available, skipping event:",e.event)}removePII(e){const t={...e},n=["email","phone","name","address","client_name","client_email"];for(const e of n)e in t&&delete t[e];return t}logDebug(...e){this.config.debug&&t("[Analytics]",...e)}clear(){if(this.dataLayerAvailable)try{window[this.config.customDataLayer]=[],this.logDebug("🧹 Cleared data layer")}catch(e){this.logDebug("Failed to clear data layer:",e)}}getConfig(){return{...this.config}}updateConfig(e){this.config={...this.config,...e},(e.customDataLayer||void 0!==e.enabled)&&this.initializeDataLayer(),this.logDebug("Updated analytics configuration:",this.config)}}class Oh{constructor(){this.sentryInitialized=!1,this.analyticsManager=null,this.pendingPromoCodes=new Map}initializeSentryOnce(){if(!this.sentryInitialized)try{xh({dsn:Th,environment:Eh,release:Ph,enabled:zh,sampleRate:Dh,tracesSampleRate:Rh}),this.sentryInitialized=!0,t()}catch(e){t()}}validateConfig(e){if(!e.orgId)throw new Error("orgId is required");if("payment"===e.mode&&!e.paymentLinkId)throw new Error("paymentLinkId is required when mode is 'payment'")}initializeAnalyticsOnce(e){var n,r,i,o,s;if(!this.analyticsManager)try{this.analyticsManager=new Mh({enabled:null===(n=e.analyticsConfig)||void 0===n?void 0:n.enabled,customDataLayer:null===(r=e.analyticsConfig)||void 0===r?void 0:r.customDataLayer,includePersonalData:null===(i=e.analyticsConfig)||void 0===i?void 0:i.includePersonalData,debug:null!==(s=null===(o=e.analyticsConfig)||void 0===o?void 0:o.debug)&&void 0!==s?s:e.debug}),Te(this.analyticsManager),t()}catch(e){t()}}async mount(e,t){t.debug&&(globalThis.insureOSDebug=!0),this.validateConfig(t),this.initializeSentryOnce(),this.initializeAnalyticsOnce(t),function(e,t){var i,o,s;t==document&&(t=document.documentElement),r.m&&r.m(e,t),i=t.i,o=[],s=[],L(t,e=t.i=S(_,null,[e]),i||v,v,t.namespaceURI,i?null:t.firstChild?n.call(t.childNodes):null,o,i?i.v:t.firstChild,!1,s),q(o,e,s)}(S(ba,{config:t,initializeFormContext:this.initializeFormContext.bind(this)}),e)}createHttpClient(e){var t,n,r,i,o,s,a,l,c,d;if(!e.orgId)throw new Error("orgId is required");const u=e.apiBaseUrl||"https://api.os.insure";return new Q({orgId:e.orgId,apiBaseUrl:u,timeout:(null===(t=e.httpConfig)||void 0===t?void 0:t.timeout)||1e4,retryConfig:{maxRetries:(null===(r=null===(n=e.httpConfig)||void 0===n?void 0:n.retryConfig)||void 0===r?void 0:r.maxRetries)||3,baseDelay:(null===(o=null===(i=e.httpConfig)||void 0===i?void 0:i.retryConfig)||void 0===o?void 0:o.baseDelay)||1e3,maxDelay:(null===(a=null===(s=e.httpConfig)||void 0===s?void 0:s.retryConfig)||void 0===a?void 0:a.maxDelay)||1e4,retryableStatusCodes:(null===(c=null===(l=e.httpConfig)||void 0===l?void 0:l.retryConfig)||void 0===c?void 0:c.retryableStatusCodes)||[429,500,502,503,504],...null===(d=e.httpConfig)||void 0===d?void 0:d.retryConfig}})}createClient(e){const t=this.createHttpClient(e);return new Be(t)}clearQuoteStateForOrg(e){try{if(window.localStorage){window.localStorage.removeItem("insure-os-selected-product"),window.localStorage.removeItem(`insure_os_quote_intent_${e}`),window.localStorage.removeItem(`insure-os-pending-promo-${e}`);for(let t=window.localStorage.length-1;t>=0;t--){const n=window.localStorage.key(t);n&&n.startsWith("insure_os_")&&n.endsWith(e)&&window.localStorage.removeItem(n)}}window.sessionStorage&&window.sessionStorage.removeItem(`insure_os_quote_intent_${e}`)}catch(e){}}async initializeFormContext(e){var n,r,i,o,s;const a=this.createHttpClient(e),l=new URLSearchParams(window.location.search),c=l.get("p")||l.get("pl_ref");if(c)return t(),this.clearQuoteStateForOrg(e.orgId),{httpClient:a,stateManager:null,quoteIntent:null,quoteIntentStore:null,formStateManager:null,paymentLinkConfig:{paymentLinkId:c,signedUrl:void 0}};const d=l.get("q")||l.get("qi");if(d){t();try{const e=await a.resumeQuoteIntent(d);if("redirect"===(null==e?void 0:e.mode)&&e.payment_link_short_code){const n=window.location.pathname+`?p=${encodeURIComponent(e.payment_link_short_code)}`;return t(),window.location.replace(n),new Promise(()=>{})}}catch(e){t(null==e||e.message)}e.quoteIntentUrl=`${e.apiBaseUrl}/quote-intents/${d}`,this.clearQuoteStateForOrg(e.orgId)}if("payment"===e.mode)return t(),{httpClient:a,stateManager:null,quoteIntent:null,quoteIntentStore:null,formStateManager:null,paymentLinkConfig:{paymentLinkId:e.paymentLinkId,signedUrl:e.signedUrl}};const u="sessionStorage"===e.storageType?new K:new J;u.isAvailable()?t(u.constructor.name):t();const h=new ee(u),m=new te(h),f=e.products,p=null==f?void 0:f.includes("*"),g=!f||0===f.length,y=g||p||f&&f.length>1,v=f&&1===f.length&&!p,w=localStorage.getItem("insure-os-selected-product"),b=new URLSearchParams(window.location.search),x=!!(b.get("transactionId")||b.get("transaction_id")||b.get("payment_id")),k=b.get("code");if("1"===b.get("clear")){t(),localStorage.clear(),b.delete("clear");const e=b.toString()?`${window.location.pathname}?${b.toString()}`:window.location.pathname;window.history.replaceState({},"",e),t()}const N=`insure-os-pending-promo-${e.orgId}`,S="skipPendingPromoCode"in e&&!0===e.skipPendingPromoCode;if(k&&!x&&!S){const n={code:k,ts:Date.now()};localStorage.setItem(N,JSON.stringify(n)),this.pendingPromoCodes.set(e.orgId,k),t(),b.delete("code");const r=b.toString()?`${window.location.pathname}?${b.toString()}`:window.location.pathname;window.history.replaceState({},"",r)}const C="promoCode"in e?e.promoCode:void 0;let _=null;if(!S)try{const e=localStorage.getItem(N);if(e){const t=JSON.parse(e);"object"==typeof t&&t.code&&Date.now()-t.ts<36e5?_=t.code:"string"==typeof t?_=t:localStorage.removeItem(N)}}catch(e){localStorage.removeItem(N)}const $=S?void 0:this.pendingPromoCodes.get(e.orgId),I=k||C||_||$||null;if(t(),I&&!x){const i=h.getQuoteIntent(e.orgId);if(null===(n=null==i?void 0:i.form_data)||void 0===n?void 0:n.page_data){const n=i.form_data.page_data,o=null===(r=Object.values(n).find(e=>e&&"object"==typeof e&&"promo_code"in e))||void 0===r?void 0:r.promo_code;o&&o!==I&&(t(),m.clearQuoteIntent(e.orgId))}}const T=async n=>{var r;t(n.id);const i=new Ae(n,a,m,{autoSave:!1,autoSaveInterval:n.form_definition.settings.autoSaveInterval});if("prefillFormData"in e&&e.prefillFormData){const o=(null===(r=n.form_definition)||void 0===r?void 0:r.pages.length)||0,s=Array.from({length:o},(e,t)=>t);i.restoreFormProgress({page_data:e.prefillFormData,current_page:o-1,completed_pages:s,last_updated:(new Date).toISOString()}),t()}else n.form_data&&i.restoreFormProgress(n.form_data);if(I){const e=i.getFormDefinition().pages.find(e=>e.fields.some(e=>"promo_code"===(e.code||e.id)));e?(i.updateFieldValue(e.id,"promo_code",I),t(e.id)):t()}if(n.cached_result&&(t(),i.restoreCalculationResult(n.cached_result)),n.organisation&&n.organisation.theme)try{await la.loadTheme({slug:n.organisation.slug,theme_url:n.organisation.theme.css_url})}catch(e){t()}const o="skipAutoCalculation"in e&&!!e.skipAutoCalculation;return await this.handleAutoCalculationIfComplete(i,o),{httpClient:a,stateManager:h,quoteIntent:n,quoteIntentStore:m,formStateManager:i,urlPromoCode:I||void 0}};if(y&&!e.quoteIntentUrl&&!w){const n=x?null:h.getQuoteIntent(e.orgId);if(n)try{const r=await a.getQuoteIntent(n.url),l={id:r.quote_intent.id,url:r.url,calculate_url:r.calculate_url,delete_calculations_url:r.delete_calculations_url,expires_at:new Date(r.quote_intent.expires_at).getTime(),updated_at:new Date(r.quote_intent.updated_at).getTime(),created_at:new Date(r.quote_intent.created_at).getTime(),org_id:e.orgId,product_id:r.product.id,product_name:r.product.description||r.product.name,form_definition:r.product.form_definition,form_data:r.quote_intent.form_data,status:r.quote_intent.status,reference:r.quote_intent.reference,organisation:r.organisation,cached_result:r.cached_result};if(h.saveQuoteIntent(e.orgId,l),null===(o=null===(i=l.form_data)||void 0===i?void 0:i.completed_pages)||void 0===o?void 0:o.length){if(t(),null===(s=l.organisation)||void 0===s?void 0:s.theme)try{await la.loadTheme({slug:l.organisation.slug,theme_url:l.organisation.theme.css_url})}catch(e){t()}const{firstName:n,lastUpdated:r}=(e=>{var t;const n=["client_first_name","first_name","firstName","fname","given_name"],r=null===(t=e.form_data)||void 0===t?void 0:t.page_data;let i=null;if(r)for(const e of Object.values(r)){if(!e||"object"!=typeof e)continue;const t=e;for(const e of n)if(t[e]){i=String(t[e]);break}if(i)break}return{firstName:i,lastUpdated:e.updated_at?new Date(e.updated_at).toLocaleDateString(void 0,{day:"numeric",month:"short",year:"numeric"}):null}})(l);return{httpClient:a,stateManager:h,quoteIntent:null,quoteIntentStore:m,formStateManager:null,resumePrompt:{reference:l.reference||null,productName:l.product_name||null,firstName:n,lastUpdated:r,onContinue:async()=>T(l),onStartFresh:async()=>{m.clearQuoteIntent(e.orgId);const t=await a.fetchAvailableProducts(g?void 0:f);return{httpClient:a,stateManager:h,quoteIntent:null,quoteIntentStore:m,formStateManager:null,availableProducts:t.products,productCodes:f}}}}}}catch(n){t(),m.clearQuoteIntent(e.orgId)}t();const r=await a.fetchAvailableProducts(g?void 0:f);if(t(),r.organisation&&r.organisation.theme)try{const e=await Promise.resolve().then(function(){return ca}).then(e=>e.ThemeLoader);await e.loadTheme({slug:r.organisation.slug,theme_url:r.organisation.theme.css_url}),t()}catch(e){t()}return{httpClient:a,stateManager:h,quoteIntent:null,quoteIntentStore:m,formStateManager:null,availableProducts:r.products,productCodes:f}}let E;w?(t(),E=w,localStorage.removeItem("insure-os-selected-product")):v&&(E=f[0]);const P=async()=>{t();const n=e.quoteIntentUrl?await a.getQuoteIntent(e.quoteIntentUrl):await a.createQuoteIntent({code:E,...e.dealerOrganisationId&&{dealer_organisation_id:e.dealerOrganisationId}});return t(),{id:n.quote_intent.id,url:n.url,calculate_url:n.calculate_url,delete_calculations_url:n.delete_calculations_url,calculate_url_v2:n.calculate_url_v2,reprice_url_v2:n.reprice_url_v2,bind_url_v2:n.bind_url_v2,calculator_version:n.product.calculator_version,expires_at:new Date(n.quote_intent.expires_at).getTime(),updated_at:new Date(n.quote_intent.updated_at).getTime(),created_at:new Date(n.quote_intent.created_at).getTime(),org_id:e.orgId,product_id:n.product.id,product_name:n.product.description||n.product.name,form_definition:n.product.form_definition,form_data:n.quote_intent.form_data,status:n.quote_intent.status,reference:n.quote_intent.reference,organisation:n.organisation,cached_result:n.cached_result}},z=async t=>{var n;const r=new URLSearchParams(window.location.search),i=r.get("transaction_id")||r.get("payment_id")||r.get("transactionId"),o=await a.getQuoteIntent(t);let s;const l=r.get("status");if(i&&"processing"!==l){const e=null===(n=o.payment_transactions)||void 0===n?void 0:n.find(e=>e.id===i);if(e){let t="unknown";switch(e.status){case"completed":t="success";break;case"failed":t="declined";break;case"cancelled":t="cancelled";break;default:t="error"}s={paymentTransactionId:e.id,paymentStatus:t,transactionStatus:e}}else if(l){let e="error";switch(l.toLowerCase()){case"success":case"completed":e="success";break;case"failed":case"declined":e="declined";break;case"cancelled":case"canceled":e="cancelled";break;default:e="error"}s={paymentTransactionId:i,paymentStatus:e,transactionStatus:void 0}}}const c={id:o.quote_intent.id,url:o.url,calculate_url:o.calculate_url,delete_calculations_url:o.delete_calculations_url,calculate_url_v2:o.calculate_url_v2,reprice_url_v2:o.reprice_url_v2,bind_url_v2:o.bind_url_v2,calculator_version:o.product.calculator_version,expires_at:new Date(o.quote_intent.expires_at).getTime(),updated_at:new Date(o.quote_intent.updated_at).getTime(),created_at:new Date(o.quote_intent.created_at).getTime(),org_id:e.orgId,product_id:o.product.id,product_name:o.product.description||o.product.name,form_definition:o.product.form_definition,form_data:o.quote_intent.form_data,status:o.quote_intent.status,reference:o.quote_intent.reference,organisation:o.organisation,payment_return:s,payment_transactions:o.payment_transactions,cached_result:o.cached_result};return s&&h.saveQuoteIntent(e.orgId,c),c};return(async()=>{let t=null,n=!1;try{const r=h.getQuoteIntent(e.orgId),i=await m.getOrCreateQuoteIntent(e.orgId,P,z);i.payment_return&&h.saveQuoteIntent(e.orgId,i),t=i,n=!r}catch(r){if(!(r instanceof G&&404===r.statusCode))throw r;m.clearQuoteIntent(e.orgId),t=await m.getOrCreateQuoteIntent(e.orgId,P,z),n=!0}if(n&&t&&Pe(t),!t)throw new Error("Failed to initialize quote intent state");return T(t)})()}async handleAutoCalculationIfComplete(e,n=!1){try{if(n)return void t();const r=e.getQuoteIntent();if("paid"===r.status||"completed"===r.status)return void t();if(e.hasCalculationResponse())return void t();if(e.hasLastCalculationFailed())return void t();const i=e.getPageCompletionStatus(),{totalPages:o,completedPages:s}=i,a=s.length===o;t((s.length,e.getIsCalculating(),e.hasLastCalculationFailed())),a&&!e.getIsCalculating()&&(t(),await e.calculateQuote(),t())}catch(e){t()}}}const jh=new Oh;"undefined"!=typeof window&&(window.InsureOS=jh,function(){const e=document.querySelectorAll('script[src*="insureos"]'),t=e[e.length-1];if(t&&t.src){const e=new URL(t.src),n=e.searchParams.get("orgId"),r=e.searchParams.get("productCode"),i=e.searchParams.get("productCodes"),o=i?i.split(","):r?[r]:null;if(n&&o){const t=e.searchParams.get("container"),r=t?document.getElementById(t):document.body;if(r){const e={orgId:n,products:o};r.dataset.insureosConfig=JSON.stringify(e);const t=async()=>{try{await jh.mount(r,e)}catch(e){}};"loading"===document.readyState?document.addEventListener("DOMContentLoaded",t):t()}}}}());class Wh{constructor(){if(this.measurements=new Map,this.completedMeasurements=new Map,this.apiCallMetrics=[],this.initializationTime=0,Wh.instance)return Wh.instance;Wh.instance=this}startMeasurement(e){this.measurements.set(e,this.now())}endMeasurement(e){const t=this.measurements.get(e);if(void 0===t)throw new Error(`No measurement started for: ${e}`);const n=this.now()-t;return this.measurements.delete(e),this.completedMeasurements.has(e)||this.completedMeasurements.set(e,[]),this.completedMeasurements.get(e).push(n),"initialization"===e&&(this.initializationTime=n),n}async measureApiCall(e,t){const n=this.now();let r,i=!1;try{const e=await t();return i=!0,e}catch(e){throw i=!1,r=e instanceof Error?e.message:"Unknown error",e}finally{const t=this.now()-n;this.apiCallMetrics.push({operation:e,duration:t,timestamp:Date.now(),success:i,error:r})}}measureMemoryUsage(){return"undefined"!=typeof performance&&"memory"in performance&&performance.memory.usedJSHeapSize||0}getDetailedMemoryInfo(){if("undefined"!=typeof performance&&"memory"in performance){const e=performance.memory;return{usedJSHeapSize:e.usedJSHeapSize||0,totalJSHeapSize:e.totalJSHeapSize||0,jsHeapSizeLimit:e.jsHeapSizeLimit||0}}return null}getMetrics(){var e;const t=this.apiCallMetrics.filter(e=>e.success).map(e=>e.duration),n=t.length>0?t.reduce((e,t)=>e+t,0)/t.length:0,r={};return this.completedMeasurements.forEach((e,t)=>{r[t]=[...e]}),{bundleSize:{esm:0,umd:0,cjs:0,gzipped:{esm:0,umd:0,cjs:0}},runtime:{initializationTime:this.initializationTime,apiCallTime:t.length>0&&null!==(e=t[t.length-1])&&void 0!==e?e:0,memoryUsage:this.measureMemoryUsage(),averageApiCallTime:n,totalApiCalls:this.apiCallMetrics.length},measurements:r}}getApiCallMetrics(){return[...this.apiCallMetrics]}clearMetrics(){this.completedMeasurements.clear(),this.apiCallMetrics=[],this.initializationTime=0}generateReport(){const e=this.getMetrics(),t=this.getDetailedMemoryInfo();let n="=== Performance Report ===\n\n";if(n+="Runtime Performance:\n",n+=` Initialization Time: ${e.runtime.initializationTime.toFixed(2)}ms\n`,n+=` Total API Calls: ${e.runtime.totalApiCalls}\n`,n+=` Average API Call Time: ${e.runtime.averageApiCallTime.toFixed(2)}ms\n`,n+=` Current Memory Usage: ${(e.runtime.memoryUsage/1024/1024).toFixed(2)}MB\n\n`,t&&(n+="Memory Details:\n",n+=` Used Heap: ${(t.usedJSHeapSize/1024/1024).toFixed(2)}MB\n`,n+=` Total Heap: ${(t.totalJSHeapSize/1024/1024).toFixed(2)}MB\n`,n+=` Heap Limit: ${(t.jsHeapSizeLimit/1024/1024).toFixed(2)}MB\n\n`),this.apiCallMetrics.length>0){n+="API Call Breakdown:\n";const e=new Map;this.apiCallMetrics.forEach(t=>{e.has(t.operation)||e.set(t.operation,{count:0,totalTime:0,errors:0});const n=e.get(t.operation);n.count++,n.totalTime+=t.duration,t.success||n.errors++}),e.forEach((e,t)=>{const r=e.totalTime/e.count,i=(e.errors/e.count*100).toFixed(1);n+=` ${t}: ${e.count} calls, ${r.toFixed(2)}ms avg, ${i}% errors\n`})}return n}static async getBundleSizes(){return{esm:0,umd:0,cjs:0,gzipped:{esm:0,umd:0,cjs:0}}}now(){return"undefined"!=typeof performance&&performance.now?performance.now():Date.now()}static startMeasurement(e){(new Wh).startMeasurement(e)}static endMeasurement(e){return(new Wh).endMeasurement(e)}static measureMemoryUsage(){return(new Wh).measureMemoryUsage()}static async measureApiCall(e,t){return(new Wh).measureApiCall(e,t)}static getMetrics(){return(new Wh).getMetrics()}static generateReport(){return(new Wh).generateReport()}}let Ah=class e{constructor(t){this.headers=new Map,t&&(Array.isArray(t)?t.forEach(([e,t])=>this.set(e,t)):t instanceof e?t.forEach((e,t)=>this.set(t,e)):Object.entries(t).forEach(([e,t])=>this.set(e,t)))}append(e,t){const n=this.get(e);this.set(e,n?`${n}, ${t}`:t)}delete(e){this.headers.delete(e.toLowerCase())}get(e){return this.headers.get(e.toLowerCase())||null}has(e){return this.headers.has(e.toLowerCase())}set(e,t){this.headers.set(e.toLowerCase(),t)}forEach(e){this.headers.forEach(e)}},Lh=class{constructor(e,t={}){var n;"string"==typeof e?(this.url=e,this.method=t.method||"GET",this.headers=new Ah(t.headers),this.body=t.body||null,this.signal=t.signal||void 0):(this.url=e.url,this.method=t.method||e.method,this.headers=new Ah(t.headers||e.headers),this.body=void 0!==t.body?t.body:e.body,this.signal=void 0!==t.signal?null!==(n=t.signal)&&void 0!==n?n:void 0:e.signal)}},Bh=class{constructor(e="",t={}){this.status=t.status||200,this.statusText=t.statusText||"OK",this.headers=new Ah(t.headers),this.ok=this.status>=200&&this.status<300,this.zt=e}async text(){return this.zt}async json(){return JSON.parse(this.zt)}};var qh=Object.freeze({__proto__:null,Headers:Ah,Request:Lh,Response:Bh,fetch:async function(e,t={}){return new Promise((n,r)=>{const i=new Lh(e,t),o=new XMLHttpRequest;i.signal&&i.signal.addEventListener("abort",()=>{o.abort(),r(new Error("Request aborted"))}),o.open(i.method,i.url),i.headers.forEach((e,t)=>{o.setRequestHeader(t,e)}),o.onload=()=>{const e=new Ah;o.getAllResponseHeaders().split("\r\n").forEach(t=>{const[n,r]=t.split(": ");n&&r&&e.set(n,r)});const t=new Bh(o.responseText,{status:o.status,statusText:o.statusText,headers:e});n(t)},o.onerror=()=>{r(new TypeError("Network request failed"))},o.ontimeout=()=>{r(new TypeError("Network request timed out"))},o.send(i.body)})}});class Fh{constructor(e){this.state="pending",this.onFulfilledCallbacks=[],this.onRejectedCallbacks=[];try{e(this.resolve.bind(this),this.reject.bind(this))}catch(e){this.reject(e)}}resolve(e){"pending"===this.state&&(this.state="fulfilled",this.value=e,this.onFulfilledCallbacks.forEach(t=>{setTimeout(()=>t(e),0)}))}reject(e){"pending"===this.state&&(this.state="rejected",this.reason=e,this.onRejectedCallbacks.forEach(t=>{setTimeout(()=>t(e),0)}))}then(e,t){return new Fh((n,r)=>{const i=t=>{try{if(e){const i=e(t);i instanceof Fh?i.then(n,r):n(i)}else n(t)}catch(e){r(e)}},o=e=>{try{if(t){const i=t(e);i instanceof Fh?i.then(n,r):n(i)}else r(e)}catch(e){r(e)}};"fulfilled"===this.state?setTimeout(()=>i(this.value),0):"rejected"===this.state?setTimeout(()=>o(this.reason),0):(this.onFulfilledCallbacks.push(i),this.onRejectedCallbacks.push(o))})}catch(e){return this.then(void 0,e)}static resolve(e){return new Fh(t=>t(e))}static reject(e){return new Fh((t,n)=>n(e))}static all(e){return new Fh((t,n)=>{if(0===e.length)return void t([]);const r=[];let i=0;e.forEach((o,s)=>{o.then(n=>{r[s]=n,i++,i===e.length&&t(r)},n)})})}}var Hh=Object.freeze({__proto__:null,PromisePolyfill:Fh});class Uh{constructor(e){this.params=new Map,"string"==typeof e?this.parseString(e):e&&"object"==typeof e&&"forEach"in e&&"function"==typeof e.forEach?e.forEach((e,t)=>this.append(t,e)):e&&"object"==typeof e&&Object.entries(e).forEach(([e,t])=>this.set(e,t))}parseString(e){const t=e.startsWith("?")?e.slice(1):e;t&&t.split("&").forEach(e=>{if(!e)return;const t=e.indexOf("=");let n,r;-1===t?(n=e,r=""):(n=e.substring(0,t),r=e.substring(t+1)),n&&this.append(decodeURIComponent(n),decodeURIComponent(r))})}append(e,t){const n=this.params.get(e)||[];n.push(t),this.params.set(e,n)}delete(e){this.params.delete(e)}get(e){var t;const n=this.params.get(e);return n&&n.length>0&&null!==(t=n[0])&&void 0!==t?t:null}getAll(e){return this.params.get(e)||[]}has(e){return this.params.has(e)}set(e,t){this.params.set(e,[t])}forEach(e){this.params.forEach((t,n)=>{t.forEach(t=>e(t,n))})}toString(){const e=[];return this.params.forEach((t,n)=>{t.forEach(t=>{e.push(`${encodeURIComponent(n)}=${encodeURIComponent(t)}`)})}),e.join("&")}}var Yh=Object.freeze({__proto__:null,URLPolyfill:class{constructor(e,t){const n=this.parseUrl(e,t);this.protocol=n.protocol,this.hostname=n.hostname,this.port=n.port,this.pathname=n.pathname,this.search=n.search,this.hash=n.hash,this.host=this.port?`${this.hostname}:${this.port}`:this.hostname,this.origin=`${this.protocol}//${this.host}`,this.href=this.toString(),this.searchParams=new Uh(this.search)}parseUrl(e,t){const n=document.createElement("a");if(t){const r=document.createElement("a");r.href=t,n.href=this.resolveUrl(e,r.href)}else n.href=e;return{protocol:n.protocol,hostname:n.hostname,port:n.port,pathname:n.pathname,search:n.search,hash:n.hash}}resolveUrl(e,t){if(e.includes("://"))return e;if(e.startsWith("/")){const n=document.createElement("a");return n.href=t,`${n.protocol}//${n.host}${e}`}return`${t.split("/").slice(0,-1).join("/")}/${e}`}toString(){return`${this.protocol}//${this.host}${this.pathname}${this.search}${this.hash}`}},URLSearchParamsPolyfill:Uh});e.DataLayerManager=Mh,e.EnhancedHttpClient=Q,e.ErrorHandlingStrategy=class{handleNetworkError(t){return new G(e.ErrorType.NETWORK_ERROR,"Network connection failed. Please check your internet connection.",!0)}handleApiError(t){if(503===t.status)return new G(e.ErrorType.MAINTENANCE_ERROR,"We're performing scheduled maintenance. Please check back in a few minutes.",!1,t.status);const n=t.status>=500||429===t.status;return 429===t.status?new G(e.ErrorType.API_ERROR,"Too many requests. Please wait a moment and try again.",!0,t.status):t.status>=400&&t.status<500?new G(e.ErrorType.API_ERROR,"Invalid request. Please refresh the page and try again.",!1,t.status):t.status>=500?new G(e.ErrorType.API_ERROR,"Service temporarily unavailable. Please try again in a moment.",!0,t.status):new G(e.ErrorType.API_ERROR,`Request failed: ${t.statusText}`,n,t.status)}handleStorageError(t){return new G(e.ErrorType.STORAGE_ERROR,"Unable to save progress. The quote will still work, but progress won't be saved.",!1)}shouldRetry(e){return e.retryable}getUserFriendlyMessage(t){switch(t.type){case e.ErrorType.NETWORK_ERROR:return"Connection failed. Please check your internet connection and try again.";case e.ErrorType.MAINTENANCE_ERROR:return"We're performing scheduled maintenance. Please check back in a few minutes.";case e.ErrorType.API_ERROR:return 429===t.statusCode?"Too many requests. Please wait a moment and try again.":t.statusCode&&t.statusCode>=400&&t.statusCode<500?"Invalid request. Please refresh the page and try again.":t.statusCode&&t.statusCode>=500?"Service temporarily unavailable. Please try again in a moment.":"Request failed. Please try again.";case e.ErrorType.STORAGE_ERROR:return"Unable to save progress. The quote will still work, but progress won't be saved.";case e.ErrorType.TIMEOUT_ERROR:return"Request timed out. Please try again.";case e.ErrorType.VALIDATION_ERROR:return t.validationErrors&&Object.keys(t.validationErrors).length>0?"There were validation errors in your form. Please check your inputs and try again.":"Invalid data provided. Please check your input and try again.";default:return"An unexpected error occurred. Please try again."}}},e.FormStateManager=Ae,e.InsureOS=jh,e.InsureOSClient=Oh,e.InsureOSError=G,e.LocalStateManager=ee,e.LocalStorageAdapter=J,e.MemoryStorageAdapter=class{constructor(){this.storage=new Map}get(e){return this.storage.get(e)||null}set(e,t){this.storage.set(e,t)}remove(e){this.storage.delete(e)}clear(){this.storage.clear()}isAvailable(){return!0}},e.PerformanceMonitor=Wh,e.PolyfillManager=class{constructor(e={}){var t,n,r;this.detectionResults=null,this.config={fetch:null===(t=e.fetch)||void 0===t||t,promise:null===(n=e.promise)||void 0===n||n,url:null===(r=e.url)||void 0===r||r}}async loadPolyfills(){this.detectionResults=this.detectFeatures(),this.config.fetch&&this.detectionResults.fetch&&await this.loadFetchPolyfill(),this.config.promise&&this.detectionResults.promise&&await this.loadPromisePolyfill(),this.config.url&&this.detectionResults.url&&await this.loadUrlPolyfill()}getDetectionResults(){return this.detectionResults}detectFeatures(){return{fetch:this.needsFetchPolyfill(),promise:this.needsPromisePolyfill(),url:this.needsUrlPolyfill()}}needsFetchPolyfill(){if("undefined"==typeof fetch)return!0;if("undefined"==typeof Headers||"undefined"==typeof Request||"undefined"==typeof Response)return!0;try{return new Headers,new Request("http://example.com"),new Response,!1}catch(e){return!0}}needsPromisePolyfill(){if("undefined"==typeof Promise)return!0;if("function"!=typeof Promise.resolve||"function"!=typeof Promise.reject||"function"!=typeof Promise.all)return!0;try{const e=Promise.resolve(42);return"function"!=typeof e.then||"function"!=typeof e.catch}catch(e){return!0}}needsUrlPolyfill(){if("undefined"==typeof URL)return!0;try{const e=new URL("http://example.com/path?param=value#hash");if("string"!=typeof e.protocol||"string"!=typeof e.hostname||"string"!=typeof e.pathname||"string"!=typeof e.search||"string"!=typeof e.hash)return!0;if("undefined"==typeof URLSearchParams)return!0;const t=new URLSearchParams("param=value");return"function"!=typeof t.get||"function"!=typeof t.set}catch(e){return!0}}async loadFetchPolyfill(){if(this.needsFetchPolyfill())try{const{fetch:e,Headers:t,Request:n,Response:r}=await Promise.resolve().then(function(){return qh});void 0===globalThis.fetch&&(globalThis.fetch=e),void 0===globalThis.Headers&&(globalThis.Headers=t),void 0===globalThis.Request&&(globalThis.Request=n),void 0===globalThis.Response&&(globalThis.Response=r)}catch(e){}}async loadPromisePolyfill(){if(this.needsPromisePolyfill())try{const{PromisePolyfill:e}=await Promise.resolve().then(function(){return Hh});void 0===globalThis.Promise&&(globalThis.Promise=e)}catch(e){}}async loadUrlPolyfill(){if(this.needsUrlPolyfill())try{const{URLPolyfill:e,URLSearchParamsPolyfill:t}=await Promise.resolve().then(function(){return Yh});void 0===globalThis.URL&&(globalThis.URL=e),void 0===globalThis.URLSearchParams&&(globalThis.URLSearchParams=t)}catch(e){}}},e.RetryStrategy=V,e.SessionStorageAdapter=K,e.ThemeLoader=la,e.addBreadcrumb=Ch,e.captureException=kh,e.captureMessage=Nh,e.createAppError=we,e.getAnalytics=function(){return Ie},e.getSupportMessage=$e,e.groupErrorsByField=function(e){return e.reduce((e,t)=>(e[t.field]||(e[t.field]=[]),e[t.field].push(t),e),{})},e.initializeAnalytics=Te,e.initializeSentry=xh,e.isSentryInitialized=$h,e.parseServerValidationErrors=fe,e.setTag=_h,e.setUser=Sh,e.shouldShowErrorPage=function(e){return"initialization"===e.type&&"critical"===e.severity},e.shouldShowMaintenancePage=_e,e.trackFormProgress=ze,e.trackPaymentCompleted=je,e.trackPaymentFailed=We,e.trackPaymentInitiated=Oe,e.trackQuoteAtCheckout=Re,e.trackQuoteCalculated=De,e.trackQuoteReferred=Me,e.trackQuoteStarted=Pe,e.validateField=he,e.validatePage=me});
|
|
2
2
|
//# sourceMappingURL=index.umd.js.map
|