@moonbase.sh/storefront 3.8.0 → 3.8.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -16,7 +16,7 @@ Expected function or array of functions, received type ${typeof e}.`),Pt)}functi
16
16
  <path d="M25 5 a20 20 0 0 1 20 20" stroke="#ffffff" stroke-width="5" stroke-linecap="round">
17
17
  <animateTransform attributeName="transform" type="rotate" from="0 25 25" to="360 25 25" dur="0.8s" repeatCount="indefinite" />
18
18
  </path>
19
- </svg>`,qp=300;function Hp(){const e=document.createElement("div");return e.id=Vi,e.style.zIndex=Number.MAX_SAFE_INTEGER.toString(),e.style.setProperty("position","fixed","important"),e.style.setProperty("top","0px","important"),e.style.setProperty("left","0px","important"),e.style.setProperty("width","100vw","important"),e.style.setProperty("height","100vh","important"),e.style.setProperty("height","100dvh","important"),e.style.setProperty("max-width","none","important"),e.style.setProperty("max-height","none","important"),e.style.setProperty("min-width","0","important"),e.style.setProperty("min-height","0","important"),e.style.setProperty("overflow","hidden","important"),document.body.append(e),document.documentElement.style.overflow="hidden",Ps==null||Ps(),Ps=Up(e),e}function q_(){if(typeof window>"u"||document.getElementById(Vi))return;const e=Hp(),t=document.createElement("div");t.id=Ic,t.style.setProperty("position","absolute","important"),t.style.setProperty("inset","0","important"),t.style.setProperty("z-index","1","important"),t.style.setProperty("display","flex","important"),t.style.setProperty("align-items","center","important"),t.style.setProperty("justify-content","center","important"),t.style.setProperty("background-color","rgba(3, 7, 18, 0.75)","important"),t.style.setProperty("opacity","0","important"),t.style.setProperty("transition",`opacity ${qp}ms ease-out`,"important"),t.innerHTML=F_,e.append(t),t.getBoundingClientRect(),t.style.setProperty("opacity","1","important"),wl=Mp(zp)}function zp(){var e,t;typeof window>"u"||(wl==null||wl(),wl=void 0,(e=document.getElementById(Ic))==null||e.remove(),document.getElementById(yl)||((t=document.getElementById(Vi))==null||t.remove(),Tc()))}function Wp(){var e;const t=document.getElementById(yl);if(t instanceof HTMLIFrameElement){(e=t.contentWindow)==null||e.postMessage("close","*");return}const n=document.getElementById(Vi);n&&(n.remove(),Tc(),window.dispatchEvent(new CustomEvent("moonbase-checkout-closed",{detail:{source:"moonbase-checkout",event:"close",completed:!1}})))}function Li(e){var t,n,r;if(typeof window>"u"){console.warn("Can not mount checkout server side");return}if(document.getElementById(yl))return;const o=(t=document.head.querySelector('meta[name="color-scheme"]'))==null?void 0:t.getAttribute("content");o&&(e+=`${e.includes("?")?"&":"?"}color_scheme=${encodeURIComponent(o)}`),e=Pc(e);const s=(n=document.getElementById(Vi))!=null?n:Hp(),i=document.createElement("div");i.id="moonbase-checkout-scaler",i.style.setProperty("transform-origin","0 0","important"),i.style.setProperty("max-width","none","important"),i.style.setProperty("max-height","none","important");const a=document.createElement("iframe");a.id=yl,a.src=e,a.style.border="none",a.style.colorScheme="normal",a.style.backgroundColor="transparent",a.style.setProperty("width","100%","important"),a.style.setProperty("height","100%","important"),a.style.setProperty("max-width","none","important"),a.style.setProperty("max-height","none","important"),a.setAttribute("background","transparent"),a.setAttribute("frameborder","0"),a.setAttribute("allowtransparency","true"),a.setAttribute("allow","payment");const l=()=>{var b;const O=Fp();if(O===null){i.style.removeProperty("transform"),i.style.setProperty("width","100%","important"),i.style.setProperty("height","100%","important"),s.removeAttribute("data-moonbase-scale");return}const P=(b=Lp())!=null?b:window.innerHeight;i.style.setProperty("transform",`scale(${O})`,"important"),i.style.setProperty("width",`${window.innerWidth/O}px`,"important"),i.style.setProperty("height",`${P/O}px`,"important"),s.setAttribute("data-moonbase-scale",String(O))};l(),i.append(a),s.append(i),document.documentElement.style.overflow="hidden";const u=new MutationObserver(l);u.observe(document.head,{childList:!0,subtree:!0,attributes:!0,attributeFilter:["content","name"]}),window.addEventListener("resize",l),window.addEventListener("orientationchange",l),(r=window.visualViewport)==null||r.addEventListener("resize",l);const c=()=>{var b;u.disconnect(),window.removeEventListener("resize",l),window.removeEventListener("orientationchange",l),(b=window.visualViewport)==null||b.removeEventListener("resize",l)},d=document.getElementById(Ic);let f=!1,m,p;const g=()=>{f||(f=!0,clearTimeout(m),clearTimeout(p),!(!d||!document.contains(d))&&(d.style.setProperty("opacity","0","important"),setTimeout(()=>{document.contains(d)&&d.remove()},qp)))};d&&(a.addEventListener("load",()=>{f||(m=setTimeout(g,500))},{once:!0}),p=setTimeout(g,1e4)),window.onmessage=function(b){var O;try{const P=B_.parse(b.data);P.event==="ready"&&g(),P.event==="close"&&(g(),document.body.contains(s)&&(c(),Tc(),document.body.removeChild(s)),window.dispatchEvent(new CustomEvent("moonbase-checkout-closed",{detail:P}))),P.event==="billing-details-updated"&&window.dispatchEvent(new CustomEvent("moonbase-checkout-billing-details-updated",{detail:P})),P.event==="completed"&&window.dispatchEvent(new CustomEvent("moonbase-checkout-completed",{detail:P}))}catch(P){((O=b.data)==null?void 0:O.source)==="moonbase-checkout"&&console.error("Could not parse event:",b.data,P)}}}var H_=me({source:Xe("moonbase-subscription"),event:Xe("close"),completed:Le()}),z_=me({source:Xe("moonbase-subscription"),event:Xe("updated-payment-method")}),W_=Cn("event",[H_,z_]);function Zp(e){if(typeof window>"u"){console.warn("Can not mount subscription server side");return}if(document.getElementById("moonbase-subscription"))return;const t=document.createElement("iframe");t.id="moonbase-subscription",t.src=e,t.style.position="fixed",t.style.top="0px",t.style.left="0px",t.style.right="0px",t.style.border="none",t.style.colorScheme="normal",t.style.backgroundColor="transparent",t.style.zIndex=Number.MAX_SAFE_INTEGER.toString(),t.setAttribute("background","transparent"),t.setAttribute("frameborder","0"),t.setAttribute("allowtransparency","true"),t.setAttribute("allow","payment"),t.style.setProperty("height","100vh","important"),t.style.setProperty("height","100dvh","important"),t.width="100%",document.body.append(t),document.documentElement.style.overflow="hidden";const n=Up(t);window.onmessage=function(r){var o;try{const s=W_.parse(r.data);s.event==="close"&&(document.body.contains(t)&&(n(),document.documentElement.style.removeProperty("overflow"),document.body.removeChild(t)),window.dispatchEvent(new CustomEvent("moonbase-subscription-closed",{detail:s})))}catch(s){((o=r.data)==null?void 0:o.source)==="moonbase-subscription"&&console.error("Could not parse event:",r.data,s)}}}var Z_="mb_";function Wo(e){const t=new URL(e);for(const n of[...t.searchParams.keys()])n.startsWith(Z_)&&t.searchParams.delete(n);return t.href}function _l(){return typeof window>"u"||!window.location?"":Wo(window.location.href)}var Ri=class vt{constructor(t,n,r){if(this.configuration=t,this.client=n,this.stateFactory=r,this.autoApplyItemOffers=V(!1),this.closed=V(!1),this.currentUser=V(null),this.loadedUser=V(!1),this.refreshOrderAbortController=new AbortController,this.debouncedPushOrderContent=x_(m=>this.client.orders.pushContent(m,void 0,this.hasUtmOrReferrer?this.utm.value:void 0),500),typeof window>"u"){this.currentOrder=V({id:Ss(),status:Xn.Open,currency:"",items:[],couponsApplied:[]}),this.storefront=r(vt.storefrontKey,{suggestedCurrency:"",enabledCurrencies:[],bundles:[],products:[],offers:[],promotions:[]}),this.loadedStorefront=r(`${vt.storefrontKey}_loaded`,!1),this.utm=r(vt.utmKey,void 0);return}window.addEventListener("storage",m=>this.handleStorageUpdate(m));const o=new URLSearchParams(window.location.search),s={referrer:ny(window.document.referrer,window.location.origin),source:o.get("utm_source")||void 0,medium:o.get("utm_medium")||void 0,campaign:o.get("utm_campaign")||void 0,term:o.get("utm_term")||void 0,content:o.get("utm_content")||void 0};this.utm=r(vt.utmKey,s);const i=t.persistUtm?"local":"session";let a;const l=bl(vt.utmKey,i);if(l)try{a=JSON.parse(l)}catch(m){console.warn(`Could not parse cached UTM from ${vt.utmKey}`,m)}const u=ry(a,s);this.utm.value=u,this.hasUtmOrReferrer&&JSON.stringify(u)!==l&&Ho(vt.utmKey,JSON.stringify(u),i);const c=bl(vt.sessionKey);c?(this.currentOrder=V(JSON.parse(c)),this.refreshOrder()):(this.currentOrder=V({id:Ss(),status:Xn.Open,currency:"",items:[],couponsApplied:[]}),this.hasUtmOrReferrer&&this.pushOrderContent()),A_();const d=bl(vt.storefrontKey),f=d?vt.parseCachedStorefront(d):null;if(f?(this.storefront=r(vt.storefrontKey,f),this.loadedStorefront=r(`${vt.storefrontKey}_loaded`,!0)):(this.storefront=r(vt.storefrontKey,{suggestedCurrency:"",enabledCurrencies:[],bundles:[],products:[],offers:[],promotions:[]}),this.loadedStorefront=r(`${vt.storefrontKey}_loaded`,!1)),this.currentOrder.value.currency=qo(this.currentOrder.value,this.storefront.value),this.client.tokenStore.user)try{this.currentUser.value=fs.identity.userSchema.parse(this.client.tokenStore.user)}catch(m){console.warn("Could not read the stored Moonbase user, signing out",m),this.client.tokenStore.clear(),this.currentUser.value=null}if(this.updateStorefront(),this.updateUser(),window.location){const m=new URLSearchParams(window.location.search),p=m.get("mb_intent"),g=m.get("mb_endpoint");if(p==="checkout"&&m.get("mb_complete")&&g){const b=Object.fromEntries([...m.entries()].filter(([P])=>!P.startsWith("mb_"))),O=new URL(decodeURIComponent(g));for(const P of Object.keys(b))O.searchParams.append(P,b[P]);Li(O.toString()),window.history.replaceState(null,"",Wo(window.location.href))}if(p==="update_subscription"&&m.get("mb_complete")&&g){const b=Object.fromEntries([...m.entries()].filter(([P])=>!P.startsWith("mb_"))),O=new URL(decodeURIComponent(g));for(const P of Object.keys(b))O.searchParams.append(P,b[P]);Zp(O.toString()),window.history.replaceState(null,"",Wo(window.location.href))}}window.addEventListener("moonbase-checkout-billing-details-updated",()=>{this.updateStorefront(),this.updateUser()}),window.addEventListener("moonbase-checkout-completed",m=>{const p=m.detail.order;p.id===this.currentOrder.value.id&&this.resetOrder(),Sc(p.id),this.updateUser()})}get loadedStorefrontPromise(){return new Promise(t=>{We(this.loadedStorefront,n=>{n&&t()},{immediate:!0})})}get hasUtm(){return!!this.utm.value&&!!(this.utm.value.source||this.utm.value.medium||this.utm.value.campaign||this.utm.value.term||this.utm.value.content)}get hasUtmOrReferrer(){return!!this.utm.value&&Object.values(this.utm.value).some(t=>!!t)}get loadedUserPromise(){return new Promise(t=>{We(this.loadedUser,n=>{n&&t()},{immediate:!0})})}closeCheckout(){Wp()}onCheckoutInitiated(t){window.addEventListener("moonbase-checkout-initiated",n=>t(n.detail.order,n.detail.total))}onCheckoutCompleted(t){window.addEventListener("moonbase-checkout-completed",n=>t(n.detail.order))}onCheckoutClosed(t){window.addEventListener("moonbase-checkout-closed",n=>t(n.detail.intent))}onStorefrontUpdated(t){window.addEventListener("moonbase-storefront-updated",n=>t(n.detail.storefront))}install(t){t.provide(bt,this),console.log("Moonbase.sh storefront installed, learn more at https://moonbase.sh/docs")}async updateUser(){const t=this.client.tokenStore.user;try{this.currentUser.value=await this.client.identity.get()}catch(n){const r=this.client.tokenStore.user;if(r!==null&&r!==t)return this.currentUser.value;n instanceof ds||n instanceof Na||console.error("Could not load user",n),this.currentUser.value=null}finally{this.loadedUser.value=!0}return this.currentUser.value}async updateStorefront(){let t;try{t=await this.client.storefront.get(this.hasUtmOrReferrer?this.utm.value:void 0)}catch(n){if(!(n instanceof Na))throw n;return this.closeStore(),this.storefront.value}return t&&(Ho(vt.storefrontKey,JSON.stringify(t)),this.storefront.value=t,this.loadedStorefront.value=!0,this.currentOrder.value.currency=qo(this.currentOrder.value,t),this.currentOrder.value.items=this.enrichLineItems(this.currentOrder.value.items),this.reconcileCartOffer()&&this.currentOrder.value.items.length>0&&this.pushOrderContent(),typeof window<"u"&&window.dispatchEvent(new CustomEvent("moonbase-storefront-updated",{detail:{storefront:t}}))),t}closeStore(){this.closed.value=!0,to(vt.storefrontKey),this.storefront.value={suggestedCurrency:"",enabledCurrencies:[],bundles:[],products:[],offers:[],promotions:[]},this.loadedStorefront.value=!0,this.resetOrder(),this.client.tokenStore.clear(),this.currentUser.value=null}async pushOrderContent(){Ho(vt.sessionKey,JSON.stringify(this.currentOrder.value)),this.refreshOrderAbortController.abort(),this.refreshOrderAbortController=new AbortController,this.debouncedPushOrderContent(this.currentOrder.value)}static parseCachedStorefront(t){let n;try{n=JSON.parse(t)}catch(o){return console.warn("Could not parse the cached storefront; starting from an empty one",o),null}const r=fs.storefront.storefrontSchema.safeParse(n);return r.success?r.data:n}handleStorageUpdate(t){var n;switch(t.key){case vt.sessionKey:this.currentOrder.value=t.newValue?JSON.parse(t.newValue):{id:Ss(),currency:((n=this.storefront.value)==null?void 0:n.suggestedCurrency)||"",status:Xn.Open,items:[],couponsApplied:[]};break;case vt.storefrontKey:{const r=t.newValue?vt.parseCachedStorefront(t.newValue):null;r&&(this.storefront.value=r);break}case vt.utmKey:this.utm.value=JSON.parse(t.newValue);break;case Hf.storageKey:if(!t.newValue)this.currentUser.value=null,console.warn("User was removed");else try{this.currentUser.value=fs.identity.userSchema.parse(JSON.parse(t.newValue))}catch(r){console.warn("Could not read the updated Moonbase user",r)}}}async refreshOrder(){const t=this.currentOrder.value.id;try{const n=await this.client.orders.get(t,{abort:this.refreshOrderAbortController.signal});if(this.currentOrder.value.id!==t)return;n&&(n.status!==Xn.Open?this.resetOrder():(n.items=this.enrichLineItems(n.items,n),n.currency=qo(n,this.storefront.value),Ho(vt.sessionKey,JSON.stringify(n)),this.currentOrder.value=n,this.loadedStorefront.value&&this.reconcileCartOffer()&&n.items.length>0&&this.pushOrderContent()))}catch(n){n instanceof Pa&&this.currentOrder.value.id===t&&this.resetOrder()}}resetOrder(t){var n,r;const o=this.currentOrder.value,s=(n=t==null?void 0:t.keepItems)!=null?n:!1;this.currentOrder.value={id:Ss(),currency:((r=this.storefront.value)==null?void 0:r.suggestedCurrency)||"",status:Xn.Open,items:s?o.items:[],couponsApplied:[]},s&&this.currentOrder.value.items.length>0?Ho(vt.sessionKey,JSON.stringify(this.currentOrder.value)):to(vt.sessionKey)}async surrenderOrder(){try{await this.client.orders.removeBillingDetails(this.currentOrder.value.id)}catch(t){if(t instanceof wr)return;console.warn("Could not surrender order:",t)}}offerConditionContext(t=this.currentOrder.value){return zr.conditionContext(this.storefront.value,t,qo(t,this.storefront.value))}reconcileCartOffer(){const t=this.currentOrder.value;if(t.status!==Xn.Open)return!1;const n=zr.bestCartOffer(this.storefront.value,t,qo(t,this.storefront.value));return(n==null?void 0:n.id)===t.offerId?!1:(t.offerId=n==null?void 0:n.id,!0)}async removeCartOffer(){const t=this.currentOrder.value;t.status===Xn.Open&&(t.offerId=void 0),Ho(vt.sessionKey,JSON.stringify(t)),await this.client.orders.removeOffer(t.id)}enrichLineItems(t,n){if(this.storefront){const r=this.offerConditionContext(n);return t.map(o=>{var s,i,a;const l=(s=this.storefront.value.offers)==null?void 0:s.find(u=>u.id===o.offerId);if(o.type==="Product"){const u=this.storefront.value.products.find(f=>f.id===o.productId);let d=((u==null?void 0:u.variations)||[]).find(f=>f.id===o.variationId);return l&&d&&jt.eligible(l,r)&&(d=jt.applyToVariation(l,d)),{...o,product:u,variation:d,price:d==null?void 0:d.price,appliedDiscount:(i=d==null?void 0:d.discount)!=null?i:o.appliedDiscount}}else{const u=this.storefront.value.bundles.find(f=>f.id===o.bundleId);let d=((u==null?void 0:u.variations)||[]).find(f=>f.id===o.variationId);return l&&d&&jt.eligible(l,r)&&(d=jt.applyToVariation(l,d)),{...o,bundle:u,variation:d,price:d==null?void 0:d.price,appliedDiscount:(a=d==null?void 0:d.discount)!=null?a:o.appliedDiscount}}})}return t}};Ri.userKey="moonbase_user",Ri.sessionKey="moonbase_session",Ri.storefrontKey="moonbase_storefront",Ri.utmKey="moonbase_utm";var G_=Ri;function Y_(e,t){const n=oe(bt);if(!n)throw new Error("No storefront configured");const r=n.stateFactory(`activation-request-${Xr(e)}`,null),o=n.stateFactory(`activation-request-${Xr(e)}-error`,null),s=n.stateFactory(`activation-request-${Xr(e)}-loading`,!0),i=n.stateFactory(`activation-request-${Xr(e)}-fulfilling`,!1),a=n.stateFactory(`activation-request-${Xr(e)}-completing`,!1),l=n.stateFactory(`activation-request-${Xr(e)}-completion-timeout`,null),u=async()=>{if(!r.value)return;await n.client.activationRequests.isCompleted(r.value.id)&&r.value?(r.value.status=Sn.Completed,a.value=!1):l.value=setTimeout(u,1500)};return We(()=>Xr(e),async c=>{try{c&&c.length>0?(r.value=await n.client.activationRequests.get(c),r.value.status===Sn.Fulfilled&&(a.value=!0,u()),s.value=!1):console.warn("No token given to `useActivationRequest`")}catch(d){o.value=d.message,s.value=!1}},{immediate:!0}),nc(()=>{l.value&&clearTimeout(l.value)}),We(n.currentUser,async()=>{var c,d;const f=Xr(e);if(!(!f||(d=(c=r.value)==null?void 0:c.licenseEligibility)!=null&&d.eligible)){s.value=!0;try{r.value=await n.client.activationRequests.get(f),r.value.status===Sn.Fulfilled&&(a.value=!0,u())}catch(m){o.value=m.message}s.value=!1}}),{activationRequest:r,loading:s,fulfilling:i,completing:a,error:o,isInstalled:F(()=>{var c;return r&&((c=r.value)==null?void 0:c.status)===Sn.Completed}),fulfillLicense:async()=>{i.value=!0,r.value=await n.client.activationRequests.fulfillLicense(r.value.id),i.value=!1,a.value=!0,u()},fulfillTrial:async(c=!1)=>{i.value=!0;try{const d=n.currentUser.value;if(c&&d&&!d.communicationPreferences.newsletterOptIn){const{user:m}=await n.client.identity.update(d.name,d.email,void 0,{...d.communicationPreferences,newsletterOptIn:!0});n.currentUser.value=m}r.value=await n.client.activationRequests.fulfillTrial(r.value.id),i.value=!1,a.value=!0;const f=u()}catch(d){console.warn("Could not fulfill trial: ",d),d instanceof ds?o.value="You need to be signed in to do this":o.value=d.message,i.value=!1}},cancel:async()=>{!r.value||r.value.status===Sn.Cancelled||(r.value=await n.client.activationRequests.cancel(r.value.id))}}}function Ze(e){const t=e??oe(bt);if(!t)throw new Error("No storefront configured");return{user:t.currentUser,loaded:t.loadedUser,loadedPromise:t.loadedUserPromise,signIn:async(n,r)=>{const o=await t.client.identity.signIn(n,r);return t.currentUser.value=o,t.updateStorefront(),o},signUp:async(n,r,o,s,i,a,l,u)=>{const c=await t.client.identity.signUp(n,r,o,s,i,a,l,u);return c.status==="signed-in"&&(t.currentUser.value=c.user,t.updateStorefront()),c},signOut:async()=>{t.client.tokenStore.clear(),t.resetOrder({keepItems:!0}),Sc(),await t.updateStorefront(),t.currentUser.value=null},update:async(n,r,o,s)=>{const i=await t.client.identity.update(n,r,o,s);return t.currentUser.value&&(t.currentUser.value=i.user),i},setPassword:async(n,r)=>{await t.client.identity.setPassword(n,r)},forgotPassword:async n=>{await t.client.identity.forgotPassword(n)},resetPassword:async(n,r,o)=>{await t.client.identity.resetPassword(n,r,o)},confirmAccount:async(n,r)=>{const o=await t.client.identity.confirmAccount(n,r);return o.status==="SignedIn"&&(t.currentUser.value=t.client.tokenStore.user,t.updateStorefront()),o},confirmEmail:async(n,r)=>await t.client.identity.confirmEmail(n,r),confirmEmailChange:async(n,r)=>(await t.client.identity.confirmEmailChange(n,r),await t.updateUser()),getConnectionUrl:async(n,r,o)=>await t.client.identity.getConnectionUrl(n,r,o),disconnectAccount:async n=>(await t.client.identity.disconnectAccount(n),await t.updateUser()),refreshUser:async()=>await t.updateUser()}}function kl(e,t){const n=t??oe(bt);if(!n)throw new Error("No storefront configured");return F(()=>n.storefront.value.bundles.find(r=>r.id===e)||null)}function K_(e){const t=oe(bt);if(!t)throw new Error("No storefront configured");return F(()=>t.storefront.value.bundles)}async function Gp(e,t,n){if(n!=null&&n.length)try{await e.orders.joinGroups(t,n)}catch(r){console.warn("Moonbase: could not record checkout group enrollment",r)}}var Q_="mb_checkout_mode";function X_(e){return e===!0?"always":e===!1?"never":e}function J_(){if(typeof window>"u"||!window.location)return null;const e=new URLSearchParams(window.location.search).get(Q_);if(!e)return null;switch(e.toLowerCase()){case"auto":return"auto";case"always":case"redirect":case"true":return"always";case"never":case"overlay":case"false":return"never";default:return null}}function ek(){if(typeof navigator>"u")return{mobile:!1,reason:"no-navigator"};const e=navigator.userAgent,t=navigator.userAgentData;return typeof(t==null?void 0:t.mobile)=="boolean"?{mobile:t.mobile,reason:"ua-client-hint",userAgent:e}:{mobile:/iPhone|iPod/.test(e)||/Android/.test(e)&&/Mobile/.test(e),reason:"user-agent",userAgent:e}}function $c(e="auto"){const t=J_(),n=t??X_(e),r=t!==null;if(n!=="auto")return{redirect:n==="always",mode:n,reason:r?"url-override":"explicit",overridden:r};const o=ek();return{redirect:o.mobile,mode:n,reason:o.reason,overridden:r,userAgent:o.userAgent}}function Dc(e="auto"){return $c(e).redirect}function Yp(e,t){if(!e.hostedCheckoutUrl||!e.embeddedCheckoutUrl)return null;const n=new URL(e.hostedCheckoutUrl);n.searchParams.delete("email"),n.searchParams.delete("token"),n.searchParams.set("anonymous","1");const r=new URL(t);return r.searchParams.set("mb_intent","checkout"),r.searchParams.set("mb_complete","true"),r.searchParams.set("mb_endpoint",encodeURIComponent(e.embeddedCheckoutUrl)),n.searchParams.set("return",r.toString()),Pc(n.toString())}function Un(e){const t=e??oe(bt);if(!t)throw new Error("No storefront configured");const n=F(()=>qo(t.currentOrder.value,t.storefront.value)),r=F(()=>zr.total(t.storefront.value,t.currentOrder.value,n.value)),o=F(()=>({amount:r.value.amount,currency:r.value.currency}));function s(c,d,f,m){var p,g,b;if(c=v(c),d??(d=c.defaultVariation),!d)throw new Error("Added item does not have a default variation, and none have been specified");const O=`${c.type==="Bundle"?"b":"p"}/${c.id}/${d.id}`;let P=t==null?void 0:t.currentOrder.value.items.find(I=>I.id===O);if(P)P.quantity+=1,(b=P.offerId)!=null||(P.offerId=f==null?void 0:f.id),!P.variation&&d&&(P.variation=d),!P.price&&d&&(P.price=d.price),!P.appliedDiscount&&d.discount&&(P.appliedDiscount=d.discount),P.type==="Product"&&c.type==="Product"&&!P.product&&(P.product=c),P.type==="Bundle"&&c.type==="Bundle"&&!P.bundle&&(P.bundle=c);else if(c.type==="Bundle"){if(P={id:O,type:"Bundle",bundleId:c.id,bundle:c,quantity:1,variation:d,variationId:d.id,offerId:f==null?void 0:f.id,price:d.price,appliedDiscount:d.discount,isDefaultVariation:d.id===((p=c.defaultVariation)==null?void 0:p.id)},(m==null?void 0:m.bundleBehaviour)==="replace"){const I=t==null?void 0:t.currentOrder.value.items.filter(U=>U.type==="Product"&&c.products.some(B=>B.included&&B.id===U.productId));for(const U of I??[]){const B=t==null?void 0:t.currentOrder.value.items.findIndex(z=>z.id===U.id);B!==void 0&&(t==null||t.currentOrder.value.items.splice(B,1))}P.replaced=I==null?void 0:I.filter(U=>U.type==="Product").map(U=>`${U.productId}/${U.variationId}`)}t==null||t.currentOrder.value.items.push(P)}else if(c.type==="Product")P={id:O,type:"Product",productId:c.id,product:c,quantity:1,variation:d,variationId:d.id,offerId:f==null?void 0:f.id,price:d.price,appliedDiscount:d.discount,isDefaultVariation:d.id===((g=c.defaultVariation)==null?void 0:g.id)},t==null||t.currentOrder.value.items.push(P);else throw new Kt("Invalid input",`Could not handle item of type '${c.type}'`);return u(),P}function i(c,d){var f,m;if(t&&c.type==="Bundle"&&c.replaced&&c.replaced.length>0){let p=d;for(const{productId:g,variationId:b}of c.replaced.map(O=>({productId:O.split("/")[0],variationId:O.split("/")[1]}))){const O=t.storefront.value.products.find(I=>I.id===g),P=(f=O==null?void 0:O.variations)==null?void 0:f.find(I=>I.id===b);if(O&&P&&!t.currentOrder.value.items.some(I=>I.type==="Product"&&I.productId===g)){const U={id:`p/${O.id}/${b}`,type:"Product",productId:O.id,product:O,quantity:1,variation:P,variationId:b,price:P.price,appliedDiscount:P.discount,isDefaultVariation:P.id===((m=O.defaultVariation)==null?void 0:m.id)};p!==void 0?(t.currentOrder.value.items.splice(p,0,U),p++):t.currentOrder.value.items.push(U)}}}}function a(){var c;if(!t)return;const d=t.offerConditionContext();for(const f of t.currentOrder.value.items)if(f.offerId){const m=(c=t.storefront.value.offers)==null?void 0:c.find(p=>p.id===f.offerId);(!m||!jt.eligible(m,d))&&(f.offerId=void 0)}}function l(){var c;if(!t||((c=t.autoApplyItemOffers)==null?void 0:c.value)!==!0)return;const d=t.currentOrder.value;if(d.status!==Xn.Open)return;const f=t.offerConditionContext();for(const{itemId:m,offerId:p}of zr.assignItemOffers(t.storefront.value,d,n.value,f)){const g=d.items.find(b=>b.id===m);g&&(g.offerId=p)}}function u(){if(t)return a(),l(),t.reconcileCartOffer(),t.pushOrderContent()}return{items:F(()=>t.enrichLineItems(t.currentOrder.value.items)),currency:n,total:o,breakdown:r,cartOffer:F(()=>r.value.cartOffer),addToCart:s,setQuantity:(c,d)=>{const f=t.currentOrder.value.items.find(m=>m.id===c.id);if(!f)throw new Error("Cart item not found");if(f.quantity=d,f.quantity<=0){const m=t.currentOrder.value.items.findIndex(p=>p.id===f.id);t.currentOrder.value.items.splice(m,1),i(c,m)}return u(),c},removeFromCart:c=>{const d=t.currentOrder.value.items.findIndex(f=>f.id===c.id);t.currentOrder.value.items.splice(d,1),i(c,d),u()},checkout:async(c={})=>{var d;if(typeof window<"u"&&document.getElementById("moonbase-checkout-wrapper"))return new Promise(b=>window.addEventListener("moonbase-checkout-closed",O=>{const P=O;b({next:P.detail.intent,completed:P.detail.completed,redirected:!1})},{once:!0}));const f=Dc(c.redirect),m=Wo(new URL((d=c.returnUrl)!=null?d:_l(),document.baseURI).href);t.reconcileCartOffer();const p=await t.client.orders.pushContent(t.currentOrder.value,{returnUrl:m,embedded:!f},t.hasUtmOrReferrer?t.utm.value:void 0);await Gp(t.client,p.id,c.groupIds),p.items=t.enrichLineItems(p.items),window.dispatchEvent(new CustomEvent("moonbase-checkout-initiated",{detail:{order:p,total:o.value}}));const g=f?Yp(p,m):null;if(g&&typeof window<"u")return window.location.href=g,{next:void 0,completed:!1,redirected:!0};if(p.embeddedCheckoutUrl&&typeof window<"u"){const b=p.embeddedCheckoutUrl;return new Promise(O=>{Li(b),window.addEventListener("moonbase-checkout-closed",P=>{const I=P;O({next:I.detail.intent,completed:I.detail.completed,redirected:!1})},{once:!0})})}else throw new Error("No checkout URL found")}}}function tk(e){const t=Math.trunc(Number(e));return Number.isFinite(t)&&t>0?t:1}async function nk(e,t={},n){var r,o,s,i,a,l,u,c,d,f;const m=n??oe(bt);if(!m)throw new Error("No storefront configured");if(typeof window<"u"&&document.getElementById("moonbase-checkout-wrapper"))return new Promise(O=>window.addEventListener("moonbase-checkout-closed",P=>{const I=P;O({next:I.detail.intent,completed:I.detail.completed,redirected:!1})},{once:!0}));const p=Dc(t.redirect),g=[];for(const O of e){const P=v(O.item),I=(r=O.variation)!=null?r:P.defaultVariation;if(!I)throw new Error("Added item does not have a default variation, and none have been specified");const U=tk(O.quantity),B=`${P.type==="Bundle"?"b":"p"}/${P.id}/${I.id}`;if(P.type==="Bundle")g.push({id:B,type:"Bundle",bundleId:P.id,bundle:P,quantity:U,variation:I,variationId:I.id,price:I.price,appliedDiscount:I.discount});else if(P.type==="Product")g.push({id:B,type:"Product",productId:P.id,product:P,quantity:U,variation:I,variationId:I.id,price:I.price,appliedDiscount:I.discount});else throw new Kt("Invalid input",`Could not handle item of type '${O.type}'`)}const b=(s=(o=m.currentUser.value)==null?void 0:o.id)!=null?s:null;q_();try{const O=Wo(new URL((i=t.returnUrl)!=null?i:_l(),document.baseURI).href),P=T=>m.client.orders.pushContent({id:T,currency:m.storefront.value.suggestedCurrency,items:g},{returnUrl:O,embedded:!p},m.hasUtmOrReferrer?m.utm.value:void 0);let I=await O_(m.client,b,t.couponCode),U;try{U=await P((a=I==null?void 0:I.orderId)!=null?a:Ss())}catch(T){if(!I||!S_(T))throw T;Sc(I.orderId),I=null,U=await P(Ss())}await Gp(m.client,U.id,t.groupIds);let B=(l=I==null?void 0:I.couponCode)!=null?l:null;if(t.couponCode&&!C_(U,t.couponCode))try{const T=await m.client.orders.addCouponCode(U.id,t.couponCode);U={...T,checkoutUrl:(u=T.checkoutUrl)!=null?u:U.checkoutUrl,hostedCheckoutUrl:(c=T.hostedCheckoutUrl)!=null?c:U.hostedCheckoutUrl,embeddedCheckoutUrl:(d=T.embeddedCheckoutUrl)!=null?d:U.embeddedCheckoutUrl},B=t.couponCode}catch(T){(f=t.onCouponRejected)==null||f.call(t,t.couponCode,T)}if(N_(U.id,b,B),typeof window<"u"&&!document.getElementById("moonbase-checkout-wrapper"))return{next:void 0,completed:!1,redirected:!1};U.items=m.enrichLineItems(U.items);const z=zr.total(m.storefront.value,U,U.currency);window.dispatchEvent(new CustomEvent("moonbase-checkout-initiated",{detail:{order:U,total:{amount:z.amount,currency:z.currency}}}));const L=p?Yp(U,O):null;if(L&&typeof window<"u")return window.location.href=L,{next:void 0,completed:!1,redirected:!0};if(U.embeddedCheckoutUrl&&typeof window<"u"){const T=U.embeddedCheckoutUrl;return await new Promise(A=>{Li(T);const E=P_(U.id,Wp);window.addEventListener("moonbase-checkout-closed",w=>{E();const _=w;A({next:_.detail.intent,completed:_.detail.completed,redirected:!1})},{once:!0})})}else throw new Error("No checkout URL found")}catch(O){throw zp(),O}}function Mc(e){const t=oe(bt);if(!t)throw new Error("No storefront configured");return{subscribe:n=>t.client.communications.subscribe(n),confirm:(n,r)=>t.client.communications.confirm(n,r),get:(n,r)=>t.client.communications.getPreferences(n,r),update:(n,r,o)=>t.client.communications.updatePreferences(n,r,o),unsubscribe:(n,r)=>t.client.communications.unsubscribe(n,r)}}function Kp(e){const t=oe(bt);if(!t)throw new Error("No storefront configured");return{join:n=>t.client.groups.join(n)}}function Zo(e){const t=oe(bt);if(!t)throw new Error("No storefront configured");return{getLicenses:async n=>t.client.inventory.licenses.get(n),getLicenseActivations:async(n,r)=>t.client.inventory.licenses.getActivations(n,r),getProduct:async(n,r)=>t.client.inventory.products.get(n,r),getProducts:async n=>t.client.inventory.products.getOwned(n),getProductLicenses:async(n,r)=>t.client.inventory.products.getLicenses(n,r),getProductActivations:async(n,r)=>t.client.inventory.products.getActivations(n,r),revokeActivation:async n=>t.client.inventory.licenses.revokeActivation(n.licenseId,n.id),activateProduct:async(n,r)=>t.client.inventory.activation.activate(n,r),downloadProduct:async n=>{if(!n.path)throw new Error("Product is not downloadable");window.location.href=await t.client.inventory.products.getDownloadUrl(n.path)},getSubscriptions:async n=>t.client.inventory.subscriptions.get(n),getSubscription:async n=>t.client.inventory.subscriptions.getById(n),cancelSubscription:async(n,r)=>t.client.inventory.subscriptions.cancel(n,r),renewSubscription:async(n,r={})=>{var o;if(typeof window<"u"&&document.getElementById("moonbase-checkout-wrapper"))return new Promise(l=>window.addEventListener("moonbase-checkout-closed",u=>{const c=u;l({next:c.detail.intent,completed:c.detail.completed,redirected:!1})},{once:!0}));const s=Dc(r.redirect),i=Wo(new URL((o=r.returnUrl)!=null?o:_l(),document.baseURI).href),{location:a}=await t.client.inventory.subscriptions.renew(n,i,!s);return s?(window.location.href=Pc(a),{next:void 0,completed:!1,redirected:!0}):new Promise(l=>{Li(a),window.addEventListener("moonbase-checkout-closed",u=>{const c=u;l({next:c.detail.intent,completed:c.detail.completed,redirected:!1})},{once:!0})})},updateSubscriptionPaymentMethod:async(n,r={})=>{var o;const s=Wo(new URL((o=r.returnUrl)!=null?o:_l(),document.baseURI).href),i=await t.client.inventory.subscriptions.getById(n.id,{toUpdatePaymentMethod:!0,returnUrl:s});if(window.dispatchEvent(new CustomEvent("moonbase-subscription-payment-method-update-initiated",{detail:{subscription:Se(n)}})),i.embeddedUpdatePaymentUrl&&typeof window<"u"){const a=i.embeddedUpdatePaymentUrl;return new Promise(l=>{Zp(a),window.addEventListener("moonbase-subscription-closed",u=>{l({completed:u.detail.completed})},{once:!0})})}else throw new Error("No update URL found")}}}function rk(e,t){const n=oe(bt);if(!n)throw new Error("No storefront configured");return F(()=>{var r;return((r=n.storefront.value.offers)==null?void 0:r.find(o=>o.id===e))||null})}function ok(e){const t=oe(bt);if(!t)throw new Error("No storefront configured");return F(()=>{var n;const r=t.offerConditionContext();return((n=t.storefront.value.offers)!=null?n:[]).filter(o=>jt.eligible(o,r)&&!Qp(o,t.currentOrder.value)&&!Xp(o,t.currentOrder.value))})}function sk(e){const t=oe(bt);if(!t)throw new Error("No storefront configured");return F(()=>{var n;const r=t.currentOrder.value,o=t.offerConditionContext();return((n=t.storefront.value.offers)!=null?n:[]).filter(s=>s.scope!=="Cart"&&!Qp(s,r)&&!Xp(s,r)).map(s=>({offer:s,progress:jt.progress(s,o)})).filter(s=>s.progress!==null&&!s.progress.eligible&&s.progress.unit==="Money"&&s.progress.remaining>0).sort((s,i)=>i.progress.fraction-s.progress.fraction)})}function ik(e){const t=oe(bt);if(!t)throw new Error("No storefront configured");return F(()=>{var n,r;const o=t.currentOrder.value,s=t.storefront.value,i=qo(o,s),a=(n=s.offers)!=null?n:[];if(a.length===0||o.items.length===0)return null;const l=t.offerConditionContext(),u=zr.total(s,o,i),c=u.cartOffer?{offer:u.cartOffer.offer,saving:u.cartOffer.discount}:null,d=a.map(p=>({offer:p,progress:jt.progress(p,l)})).filter(p=>p.progress!==null&&!p.progress.eligible&&p.progress.remaining>0&&p.offer.scope==="Cart").sort((p,g)=>g.progress.fraction-p.progress.fraction),f=c?zr.cartOfferValue(s,o,c.offer,i,l):0,m=(r=c?d.find(p=>p.offer.scope==="Cart"&&zr.cartOfferValue(s,o,p.offer,i,l)>f):d[0])!=null?r:null;return!c&&!m?null:{applied:c,next:m,subtotal:u.subtotal,currency:i}})}function Qp(e,t){return t.items.some(n=>n.offerId===e.id)}function Xp(e,t){return jt.allTargetsInCart(e,t.items)}function Ui(e,t){const n=t??oe(bt);if(!n)throw new Error("No storefront configured");return F(()=>n.storefront.value.products.find(r=>r.id===e)||null)}function ak(e){const t=oe(bt);if(!t)throw new Error("No storefront configured");return F(()=>t.storefront.value.products)}function lk(e){const t=oe(bt);if(!t)throw new Error("No storefront configured");return F(()=>{var n;return(n=t.storefront.value.promotions)!=null?n:[]})}function Jp(e){const t=oe(bt);if(!t)throw new Error("No storefront configured");return{peek:async n=>{try{return await t.client.vouchers.peek(n)}catch(r){throw r instanceof wr?new Error("Voucher code invalid"):r}},redeem:async n=>{try{return await t.client.vouchers.redeem(n)}catch(r){throw r instanceof wr?new Error("Voucher code invalid"):r}}}}function uk(e,t,n){const r={endpoint:e};return new G_(r,new oy(r),(o,s)=>V(s))}function xl(e,t,n){return Array.isArray(e)?(e.length=Math.max(e.length,t),e.splice(t,1,n),n):(e[t]=n,n)}function Vc(e,t){if(Array.isArray(e)){e.splice(t,1);return}delete e[t]}function ck(){return ev().__VUE_DEVTOOLS_GLOBAL_HOOK__}function ev(){return typeof navigator<"u"&&typeof window<"u"?window:typeof globalThis<"u"?globalThis:{}}const dk=typeof Proxy=="function",fk="devtools-plugin:setup",mk="plugin:settings:set";let Ns,Lc;function hk(){var e;return Ns!==void 0||(typeof window<"u"&&window.performance?(Ns=!0,Lc=window.performance):typeof globalThis<"u"&&(!((e=globalThis.perf_hooks)===null||e===void 0)&&e.performance)?(Ns=!0,Lc=globalThis.perf_hooks.performance):Ns=!1),Ns}function pk(){return hk()?Lc.now():Date.now()}class vk{constructor(t,n){this.target=null,this.targetQueue=[],this.onQueue=[],this.plugin=t,this.hook=n;const r={};if(t.settings)for(const i in t.settings){const a=t.settings[i];r[i]=a.defaultValue}const o=`__vue-devtools-plugin-settings__${t.id}`;let s=Object.assign({},r);try{const i=localStorage.getItem(o),a=JSON.parse(i);Object.assign(s,a)}catch{}this.fallbacks={getSettings(){return s},setSettings(i){try{localStorage.setItem(o,JSON.stringify(i))}catch{}s=i},now(){return pk()}},n&&n.on(mk,(i,a)=>{i===this.plugin.id&&this.fallbacks.setSettings(a)}),this.proxiedOn=new Proxy({},{get:(i,a)=>this.target?this.target.on[a]:(...l)=>{this.onQueue.push({method:a,args:l})}}),this.proxiedTarget=new Proxy({},{get:(i,a)=>this.target?this.target[a]:a==="on"?this.proxiedOn:Object.keys(this.fallbacks).includes(a)?(...l)=>(this.targetQueue.push({method:a,args:l,resolve:()=>{}}),this.fallbacks[a](...l)):(...l)=>new Promise(u=>{this.targetQueue.push({method:a,args:l,resolve:u})})})}async setRealTarget(t){this.target=t;for(const n of this.onQueue)this.target.on[n.method](...n.args);for(const n of this.targetQueue)n.resolve(await this.target[n.method](...n.args))}}function tv(e,t){const n=e,r=ev(),o=ck(),s=dk&&n.enableEarlyProxy;if(o&&(r.__VUE_DEVTOOLS_PLUGIN_API_AVAILABLE__||!s))o.emit(fk,e,t);else{const i=s?new vk(n,o):null;(r.__VUE_DEVTOOLS_PLUGINS__=r.__VUE_DEVTOOLS_PLUGINS__||[]).push({pluginDescriptor:n,setupFn:t,proxy:i}),i&&t(i.proxiedTarget)}}var Je={};let ji;const Bi=e=>ji=e,nv=Je.NODE_ENV!=="production"?Symbol("pinia"):Symbol();function Go(e){return e&&typeof e=="object"&&Object.prototype.toString.call(e)==="[object Object]"&&typeof e.toJSON!="function"}var ir;(function(e){e.direct="direct",e.patchObject="patch object",e.patchFunction="patch function"})(ir||(ir={}));const no=typeof window<"u",rv=typeof window=="object"&&window.window===window?window:typeof self=="object"&&self.self===self?self:typeof global=="object"&&global.global===global?global:typeof globalThis=="object"?globalThis:{HTMLElement:null};function gk(e,{autoBom:t=!1}={}){return t&&/^\s*(?:text\/\S*|application\/xml|\S*\/\S*\+xml)\s*;.*charset\s*=\s*utf-8/i.test(e.type)?new Blob(["\uFEFF",e],{type:e.type}):e}function Rc(e,t,n){const r=new XMLHttpRequest;r.open("GET",e),r.responseType="blob",r.onload=function(){iv(r.response,t,n)},r.onerror=function(){console.error("could not download file")},r.send()}function ov(e){const t=new XMLHttpRequest;t.open("HEAD",e,!1);try{t.send()}catch{}return t.status>=200&&t.status<=299}function El(e){try{e.dispatchEvent(new MouseEvent("click"))}catch{const n=document.createEvent("MouseEvents");n.initMouseEvent("click",!0,!0,window,0,0,0,80,20,!1,!1,!1,!1,0,null),e.dispatchEvent(n)}}const Cl=typeof navigator=="object"?navigator:{userAgent:""},sv=/Macintosh/.test(Cl.userAgent)&&/AppleWebKit/.test(Cl.userAgent)&&!/Safari/.test(Cl.userAgent),iv=no?typeof HTMLAnchorElement<"u"&&"download"in HTMLAnchorElement.prototype&&!sv?bk:"msSaveOrOpenBlob"in Cl?yk:wk:()=>{};function bk(e,t="download",n){const r=document.createElement("a");r.download=t,r.rel="noopener",typeof e=="string"?(r.href=e,r.origin!==location.origin?ov(r.href)?Rc(e,t,n):(r.target="_blank",El(r)):El(r)):(r.href=URL.createObjectURL(e),setTimeout(function(){URL.revokeObjectURL(r.href)},4e4),setTimeout(function(){El(r)},0))}function yk(e,t="download",n){if(typeof e=="string")if(ov(e))Rc(e,t,n);else{const r=document.createElement("a");r.href=e,r.target="_blank",setTimeout(function(){El(r)})}else navigator.msSaveOrOpenBlob(gk(e,n),t)}function wk(e,t,n,r){if(r=r||open("","_blank"),r&&(r.document.title=r.document.body.innerText="downloading..."),typeof e=="string")return Rc(e,t,n);const o=e.type==="application/octet-stream",s=/constructor/i.test(String(rv.HTMLElement))||"safari"in rv,i=/CriOS\/[\d]+/.test(navigator.userAgent);if((i||o&&s||sv)&&typeof FileReader<"u"){const a=new FileReader;a.onloadend=function(){let l=a.result;if(typeof l!="string")throw r=null,new Error("Wrong reader.result type");l=i?l:l.replace(/^data:[^;]*;/,"data:attachment/file;"),r?r.location.href=l:location.assign(l),r=null},a.readAsDataURL(e)}else{const a=URL.createObjectURL(e);r?r.location.assign(a):location.href=a,r=null,setTimeout(function(){URL.revokeObjectURL(a)},4e4)}}function $t(e,t){const n="🍍 "+e;typeof __VUE_DEVTOOLS_TOAST__=="function"?__VUE_DEVTOOLS_TOAST__(n,t):t==="error"?console.error(n):t==="warn"?console.warn(n):console.log(n)}function Uc(e){return"_a"in e&&"install"in e}function av(){if(!("clipboard"in navigator))return $t("Your browser doesn't support the Clipboard API","error"),!0}function lv(e){return e instanceof Error&&e.message.toLowerCase().includes("document is not focused")?($t('You need to activate the "Emulate a focused page" setting in the "Rendering" panel of devtools.',"warn"),!0):!1}async function _k(e){if(!av())try{await navigator.clipboard.writeText(JSON.stringify(e.state.value)),$t("Global state copied to clipboard.")}catch(t){if(lv(t))return;$t("Failed to serialize the state. Check the console for more details.","error"),console.error(t)}}async function kk(e){if(!av())try{uv(e,JSON.parse(await navigator.clipboard.readText())),$t("Global state pasted from clipboard.")}catch(t){if(lv(t))return;$t("Failed to deserialize the state from clipboard. Check the console for more details.","error"),console.error(t)}}async function xk(e){try{iv(new Blob([JSON.stringify(e.state.value)],{type:"text/plain;charset=utf-8"}),"pinia-state.json")}catch(t){$t("Failed to export the state as JSON. Check the console for more details.","error"),console.error(t)}}let $r;function Ek(){$r||($r=document.createElement("input"),$r.type="file",$r.accept=".json");function e(){return new Promise((t,n)=>{$r.onchange=async()=>{const r=$r.files;if(!r)return t(null);const o=r.item(0);return t(o?{text:await o.text(),file:o}:null)},$r.oncancel=()=>t(null),$r.onerror=n,$r.click()})}return e}async function Ck(e){try{const n=await Ek()();if(!n)return;const{text:r,file:o}=n;uv(e,JSON.parse(r)),$t(`Global state imported from "${o.name}".`)}catch(t){$t("Failed to import the state from JSON. Check the console for more details.","error"),console.error(t)}}function uv(e,t){for(const n in t){const r=e.state.value[n];r?Object.assign(r,t[n]):e.state.value[n]=t[n]}}function jn(e){return{_custom:{display:e}}}const cv="🍍 Pinia (root)",Al="_root";function Ak(e){return Uc(e)?{id:Al,label:cv}:{id:e.$id,label:e.$id}}function Ok(e){if(Uc(e)){const n=Array.from(e._s.keys()),r=e._s;return{state:n.map(s=>({editable:!0,key:s,value:e.state.value[s]})),getters:n.filter(s=>r.get(s)._getters).map(s=>{const i=r.get(s);return{editable:!1,key:s,value:i._getters.reduce((a,l)=>(a[l]=i[l],a),{})}})}}const t={state:Object.keys(e.$state).map(n=>({editable:!0,key:n,value:e.$state[n]}))};return e._getters&&e._getters.length&&(t.getters=e._getters.map(n=>({editable:!1,key:n,value:e[n]}))),e._customProperties.size&&(t.customProperties=Array.from(e._customProperties).map(n=>({editable:!0,key:n,value:e[n]}))),t}function Sk(e){return e?Array.isArray(e)?e.reduce((t,n)=>(t.keys.push(n.key),t.operations.push(n.type),t.oldValue[n.key]=n.oldValue,t.newValue[n.key]=n.newValue,t),{oldValue:{},keys:[],operations:[],newValue:{}}):{operation:jn(e.type),key:jn(e.key),oldValue:e.oldValue,newValue:e.newValue}:{}}function Pk(e){switch(e){case ir.direct:return"mutation";case ir.patchFunction:return"$patch";case ir.patchObject:return"$patch";default:return"unknown"}}let Is=!0;const Ol=[],Yo="pinia:mutations",zt="pinia",{assign:Nk}=Object,Sl=e=>"🍍 "+e;function Ik(e,t){tv({id:"dev.esm.pinia",label:"Pinia 🍍",logo:"https://pinia.vuejs.org/logo.svg",packageName:"pinia",homepage:"https://pinia.vuejs.org",componentStateTypes:Ol,app:e},n=>{typeof n.now!="function"&&$t("You seem to be using an outdated version of Vue Devtools. Are you still using the Beta release instead of the stable one? You can find the links at https://devtools.vuejs.org/guide/installation.html."),n.addTimelineLayer({id:Yo,label:"Pinia 🍍",color:15064968}),n.addInspector({id:zt,label:"Pinia 🍍",icon:"storage",treeFilterPlaceholder:"Search stores",actions:[{icon:"content_copy",action:()=>{_k(t)},tooltip:"Serialize and copy the state"},{icon:"content_paste",action:async()=>{await kk(t),n.sendInspectorTree(zt),n.sendInspectorState(zt)},tooltip:"Replace the state with the content of your clipboard"},{icon:"save",action:()=>{xk(t)},tooltip:"Save the state as a JSON file"},{icon:"folder_open",action:async()=>{await Ck(t),n.sendInspectorTree(zt),n.sendInspectorState(zt)},tooltip:"Import the state from a JSON file"}],nodeActions:[{icon:"restore",tooltip:'Reset the state (with "$reset")',action:r=>{const o=t._s.get(r);o?typeof o.$reset!="function"?$t(`Cannot reset "${r}" store because it doesn't have a "$reset" method implemented.`,"warn"):(o.$reset(),$t(`Store "${r}" reset.`)):$t(`Cannot reset "${r}" store because it wasn't found.`,"warn")}}]}),n.on.inspectComponent((r,o)=>{const s=r.componentInstance&&r.componentInstance.proxy;if(s&&s._pStores){const i=r.componentInstance.proxy._pStores;Object.values(i).forEach(a=>{r.instanceData.state.push({type:Sl(a.$id),key:"state",editable:!0,value:a._isOptionsAPI?{_custom:{value:Se(a.$state),actions:[{icon:"restore",tooltip:"Reset the state of this store",action:()=>a.$reset()}]}}:Object.keys(a.$state).reduce((l,u)=>(l[u]=a.$state[u],l),{})}),a._getters&&a._getters.length&&r.instanceData.state.push({type:Sl(a.$id),key:"getters",editable:!1,value:a._getters.reduce((l,u)=>{try{l[u]=a[u]}catch(c){l[u]=c}return l},{})})})}}),n.on.getInspectorTree(r=>{if(r.app===e&&r.inspectorId===zt){let o=[t];o=o.concat(Array.from(t._s.values())),r.rootNodes=(r.filter?o.filter(s=>"$id"in s?s.$id.toLowerCase().includes(r.filter.toLowerCase()):cv.toLowerCase().includes(r.filter.toLowerCase())):o).map(Ak)}}),globalThis.$pinia=t,n.on.getInspectorState(r=>{if(r.app===e&&r.inspectorId===zt){const o=r.nodeId===Al?t:t._s.get(r.nodeId);if(!o)return;o&&(r.nodeId!==Al&&(globalThis.$store=Se(o)),r.state=Ok(o))}}),n.on.editInspectorState((r,o)=>{if(r.app===e&&r.inspectorId===zt){const s=r.nodeId===Al?t:t._s.get(r.nodeId);if(!s)return $t(`store "${r.nodeId}" not found`,"error");const{path:i}=r;Uc(s)?i.unshift("state"):(i.length!==1||!s._customProperties.has(i[0])||i[0]in s.$state)&&i.unshift("$state"),Is=!1,r.set(s,i,r.state.value),Is=!0}}),n.on.editComponentState(r=>{if(r.type.startsWith("🍍")){const o=r.type.replace(/^🍍\s*/,""),s=t._s.get(o);if(!s)return $t(`store "${o}" not found`,"error");const{path:i}=r;if(i[0]!=="state")return $t(`Invalid path for store "${o}":
19
+ </svg>`,qp=300;function Hp(){const e=document.createElement("div");return e.id=Vi,e.style.zIndex=Number.MAX_SAFE_INTEGER.toString(),e.style.setProperty("position","fixed","important"),e.style.setProperty("top","0px","important"),e.style.setProperty("left","0px","important"),e.style.setProperty("width","100vw","important"),e.style.setProperty("height","100vh","important"),e.style.setProperty("height","100dvh","important"),e.style.setProperty("max-width","none","important"),e.style.setProperty("max-height","none","important"),e.style.setProperty("min-width","0","important"),e.style.setProperty("min-height","0","important"),e.style.setProperty("overflow","hidden","important"),document.body.append(e),document.documentElement.style.overflow="hidden",Ps==null||Ps(),Ps=Up(e),e}function q_(){if(typeof window>"u"||document.getElementById(Vi))return;const e=Hp(),t=document.createElement("div");t.id=Ic,t.style.setProperty("position","absolute","important"),t.style.setProperty("inset","0","important"),t.style.setProperty("z-index","1","important"),t.style.setProperty("display","flex","important"),t.style.setProperty("align-items","center","important"),t.style.setProperty("justify-content","center","important"),t.style.setProperty("background-color","rgba(3, 7, 18, 0.75)","important"),t.style.setProperty("opacity","0","important"),t.style.setProperty("transition",`opacity ${qp}ms ease-out`,"important"),t.innerHTML=F_,e.append(t),t.getBoundingClientRect(),t.style.setProperty("opacity","1","important"),wl=Mp(zp)}function zp(){var e,t;typeof window>"u"||(wl==null||wl(),wl=void 0,(e=document.getElementById(Ic))==null||e.remove(),document.getElementById(yl)||((t=document.getElementById(Vi))==null||t.remove(),Tc()))}function Wp(){var e;const t=document.getElementById(yl);if(t instanceof HTMLIFrameElement){(e=t.contentWindow)==null||e.postMessage("close","*");return}const n=document.getElementById(Vi);n&&(n.remove(),Tc(),window.dispatchEvent(new CustomEvent("moonbase-checkout-closed",{detail:{source:"moonbase-checkout",event:"close",completed:!1}})))}function Li(e){var t,n,r;if(typeof window>"u"){console.warn("Can not mount checkout server side");return}if(document.getElementById(yl))return;const o=(t=document.head.querySelector('meta[name="color-scheme"]'))==null?void 0:t.getAttribute("content");o&&(e+=`${e.includes("?")?"&":"?"}color_scheme=${encodeURIComponent(o)}`),e=Pc(e);const s=(n=document.getElementById(Vi))!=null?n:Hp(),i=document.createElement("div");i.id="moonbase-checkout-scaler",i.style.setProperty("transform-origin","0 0","important"),i.style.setProperty("max-width","none","important"),i.style.setProperty("max-height","none","important");const a=document.createElement("iframe");a.id=yl,a.src=e,a.style.border="none",a.style.colorScheme="normal",a.style.backgroundColor="transparent",a.style.setProperty("width","100%","important"),a.style.setProperty("height","100%","important"),a.style.setProperty("max-width","none","important"),a.style.setProperty("max-height","none","important"),a.setAttribute("background","transparent"),a.setAttribute("frameborder","0"),a.setAttribute("allowtransparency","true"),a.setAttribute("allow","payment");const l=()=>{var b;const O=Fp();if(O===null){i.style.removeProperty("transform"),i.style.setProperty("width","100%","important"),i.style.setProperty("height","100%","important"),s.removeAttribute("data-moonbase-scale");return}const P=(b=Lp())!=null?b:window.innerHeight;i.style.setProperty("transform",`scale(${O})`,"important"),i.style.setProperty("width",`${window.innerWidth/O}px`,"important"),i.style.setProperty("height",`${P/O}px`,"important"),s.setAttribute("data-moonbase-scale",String(O))};l(),i.append(a),s.append(i),document.documentElement.style.overflow="hidden";const u=new MutationObserver(l);u.observe(document.head,{childList:!0,subtree:!0,attributes:!0,attributeFilter:["content","name"]}),window.addEventListener("resize",l),window.addEventListener("orientationchange",l),(r=window.visualViewport)==null||r.addEventListener("resize",l);const c=()=>{var b;u.disconnect(),window.removeEventListener("resize",l),window.removeEventListener("orientationchange",l),(b=window.visualViewport)==null||b.removeEventListener("resize",l)},d=document.getElementById(Ic);let f=!1,m,p;const g=()=>{f||(f=!0,clearTimeout(m),clearTimeout(p),!(!d||!document.contains(d))&&(d.style.setProperty("opacity","0","important"),setTimeout(()=>{document.contains(d)&&d.remove()},qp)))};d&&(a.addEventListener("load",()=>{f||(m=setTimeout(g,500))},{once:!0}),p=setTimeout(g,1e4)),window.onmessage=function(b){var O;try{const P=B_.parse(b.data);P.event==="ready"&&g(),P.event==="close"&&(g(),document.body.contains(s)&&(c(),Tc(),document.body.removeChild(s)),window.dispatchEvent(new CustomEvent("moonbase-checkout-closed",{detail:P}))),P.event==="billing-details-updated"&&window.dispatchEvent(new CustomEvent("moonbase-checkout-billing-details-updated",{detail:P})),P.event==="completed"&&window.dispatchEvent(new CustomEvent("moonbase-checkout-completed",{detail:P}))}catch(P){((O=b.data)==null?void 0:O.source)==="moonbase-checkout"&&console.error("Could not parse event:",b.data,P)}}}var H_=me({source:Xe("moonbase-subscription"),event:Xe("close"),completed:Le()}),z_=me({source:Xe("moonbase-subscription"),event:Xe("updated-payment-method")}),W_=Cn("event",[H_,z_]);function Zp(e){if(typeof window>"u"){console.warn("Can not mount subscription server side");return}if(document.getElementById("moonbase-subscription"))return;const t=document.createElement("iframe");t.id="moonbase-subscription",t.src=e,t.style.position="fixed",t.style.top="0px",t.style.left="0px",t.style.right="0px",t.style.border="none",t.style.colorScheme="normal",t.style.backgroundColor="transparent",t.style.zIndex=Number.MAX_SAFE_INTEGER.toString(),t.setAttribute("background","transparent"),t.setAttribute("frameborder","0"),t.setAttribute("allowtransparency","true"),t.setAttribute("allow","payment"),t.style.setProperty("height","100vh","important"),t.style.setProperty("height","100dvh","important"),t.width="100%",document.body.append(t),document.documentElement.style.overflow="hidden";const n=Up(t);window.onmessage=function(r){var o;try{const s=W_.parse(r.data);s.event==="close"&&(document.body.contains(t)&&(n(),document.documentElement.style.removeProperty("overflow"),document.body.removeChild(t)),window.dispatchEvent(new CustomEvent("moonbase-subscription-closed",{detail:s})))}catch(s){((o=r.data)==null?void 0:o.source)==="moonbase-subscription"&&console.error("Could not parse event:",r.data,s)}}}var Z_="mb_";function Wo(e){const t=new URL(e);for(const n of[...t.searchParams.keys()])n.startsWith(Z_)&&t.searchParams.delete(n);return t.href}function _l(){return typeof window>"u"||!window.location?"":Wo(window.location.href)}var Ri=class vt{constructor(t,n,r){if(this.configuration=t,this.client=n,this.stateFactory=r,this.autoApplyItemOffers=V(!1),this.closed=V(!1),this.currentUser=V(null),this.loadedUser=V(!1),this.refreshOrderAbortController=new AbortController,this.storefrontRefreshesStarted=0,this.storefrontRefreshLanded=0,this.debouncedPushOrderContent=x_(m=>this.client.orders.pushContent(m,void 0,this.hasUtmOrReferrer?this.utm.value:void 0),500),typeof window>"u"){this.currentOrder=V({id:Ss(),status:Xn.Open,currency:"",items:[],couponsApplied:[]}),this.storefront=r(vt.storefrontKey,{suggestedCurrency:"",enabledCurrencies:[],bundles:[],products:[],offers:[],promotions:[]}),this.loadedStorefront=r(`${vt.storefrontKey}_loaded`,!1),this.utm=r(vt.utmKey,void 0);return}window.addEventListener("storage",m=>this.handleStorageUpdate(m));const o=new URLSearchParams(window.location.search),s={referrer:ny(window.document.referrer,window.location.origin),source:o.get("utm_source")||void 0,medium:o.get("utm_medium")||void 0,campaign:o.get("utm_campaign")||void 0,term:o.get("utm_term")||void 0,content:o.get("utm_content")||void 0};this.utm=r(vt.utmKey,s);const i=t.persistUtm?"local":"session";let a;const l=bl(vt.utmKey,i);if(l)try{a=JSON.parse(l)}catch(m){console.warn(`Could not parse cached UTM from ${vt.utmKey}`,m)}const u=ry(a,s);this.utm.value=u,this.hasUtmOrReferrer&&JSON.stringify(u)!==l&&Ho(vt.utmKey,JSON.stringify(u),i);const c=bl(vt.sessionKey);c?(this.currentOrder=V(JSON.parse(c)),this.refreshOrder()):(this.currentOrder=V({id:Ss(),status:Xn.Open,currency:"",items:[],couponsApplied:[]}),this.hasUtmOrReferrer&&this.pushOrderContent()),A_();const d=bl(vt.storefrontKey),f=d?vt.parseCachedStorefront(d):null;if(f?(this.storefront=r(vt.storefrontKey,f),this.loadedStorefront=r(`${vt.storefrontKey}_loaded`,!0)):(this.storefront=r(vt.storefrontKey,{suggestedCurrency:"",enabledCurrencies:[],bundles:[],products:[],offers:[],promotions:[]}),this.loadedStorefront=r(`${vt.storefrontKey}_loaded`,!1)),this.currentOrder.value.currency=qo(this.currentOrder.value,this.storefront.value),this.client.tokenStore.user)try{this.currentUser.value=fs.identity.userSchema.parse(this.client.tokenStore.user)}catch(m){console.warn("Could not read the stored Moonbase user, signing out",m),this.client.tokenStore.clear(),this.currentUser.value=null}if(this.updateStorefront(),this.updateUser(),window.location){const m=new URLSearchParams(window.location.search),p=m.get("mb_intent"),g=m.get("mb_endpoint");if(p==="checkout"&&m.get("mb_complete")&&g){const b=Object.fromEntries([...m.entries()].filter(([P])=>!P.startsWith("mb_"))),O=new URL(decodeURIComponent(g));for(const P of Object.keys(b))O.searchParams.append(P,b[P]);Li(O.toString()),window.history.replaceState(null,"",Wo(window.location.href))}if(p==="update_subscription"&&m.get("mb_complete")&&g){const b=Object.fromEntries([...m.entries()].filter(([P])=>!P.startsWith("mb_"))),O=new URL(decodeURIComponent(g));for(const P of Object.keys(b))O.searchParams.append(P,b[P]);Zp(O.toString()),window.history.replaceState(null,"",Wo(window.location.href))}}window.addEventListener("moonbase-checkout-billing-details-updated",()=>{this.updateStorefront(),this.updateUser()}),window.addEventListener("moonbase-checkout-completed",m=>{const p=m.detail.order;p.id===this.currentOrder.value.id&&this.resetOrder(),Sc(p.id),this.updateStorefront(),this.updateUser()})}get loadedStorefrontPromise(){return new Promise(t=>{We(this.loadedStorefront,n=>{n&&t()},{immediate:!0})})}get hasUtm(){return!!this.utm.value&&!!(this.utm.value.source||this.utm.value.medium||this.utm.value.campaign||this.utm.value.term||this.utm.value.content)}get hasUtmOrReferrer(){return!!this.utm.value&&Object.values(this.utm.value).some(t=>!!t)}get loadedUserPromise(){return new Promise(t=>{We(this.loadedUser,n=>{n&&t()},{immediate:!0})})}closeCheckout(){Wp()}onCheckoutInitiated(t){window.addEventListener("moonbase-checkout-initiated",n=>t(n.detail.order,n.detail.total))}onCheckoutCompleted(t){window.addEventListener("moonbase-checkout-completed",n=>t(n.detail.order))}onCheckoutClosed(t){window.addEventListener("moonbase-checkout-closed",n=>t(n.detail.intent))}onStorefrontUpdated(t){window.addEventListener("moonbase-storefront-updated",n=>t(n.detail.storefront))}install(t){t.provide(bt,this),console.log("Moonbase.sh storefront installed, learn more at https://moonbase.sh/docs")}async updateUser(){const t=this.client.tokenStore.user;try{this.currentUser.value=await this.client.identity.get()}catch(n){const r=this.client.tokenStore.user;if(r!==null&&r!==t)return this.currentUser.value;n instanceof ds||n instanceof Na||console.error("Could not load user",n),this.currentUser.value=null}finally{this.loadedUser.value=!0}return this.currentUser.value}async updateStorefront(){const t=++this.storefrontRefreshesStarted;let n;try{n=await this.client.storefront.get(this.hasUtmOrReferrer?this.utm.value:void 0)}catch(r){if(!(r instanceof Na))throw r;return this.closeStore(),this.storefront.value}return t<this.storefrontRefreshLanded?this.storefront.value:(n&&(this.storefrontRefreshLanded=t,Ho(vt.storefrontKey,JSON.stringify(n)),this.storefront.value=n,this.loadedStorefront.value=!0,this.currentOrder.value.currency=qo(this.currentOrder.value,n),this.currentOrder.value.items=this.enrichLineItems(this.currentOrder.value.items),this.reconcileCartOffer()&&this.currentOrder.value.items.length>0&&this.pushOrderContent(),typeof window<"u"&&window.dispatchEvent(new CustomEvent("moonbase-storefront-updated",{detail:{storefront:n}}))),n)}closeStore(){this.closed.value=!0,to(vt.storefrontKey),this.storefront.value={suggestedCurrency:"",enabledCurrencies:[],bundles:[],products:[],offers:[],promotions:[]},this.loadedStorefront.value=!0,this.resetOrder(),this.client.tokenStore.clear(),this.currentUser.value=null}async pushOrderContent(){Ho(vt.sessionKey,JSON.stringify(this.currentOrder.value)),this.refreshOrderAbortController.abort(),this.refreshOrderAbortController=new AbortController,this.debouncedPushOrderContent(this.currentOrder.value)}static parseCachedStorefront(t){let n;try{n=JSON.parse(t)}catch(o){return console.warn("Could not parse the cached storefront; starting from an empty one",o),null}const r=fs.storefront.storefrontSchema.safeParse(n);return r.success?r.data:n}handleStorageUpdate(t){var n;switch(t.key){case vt.sessionKey:this.currentOrder.value=t.newValue?JSON.parse(t.newValue):{id:Ss(),currency:((n=this.storefront.value)==null?void 0:n.suggestedCurrency)||"",status:Xn.Open,items:[],couponsApplied:[]};break;case vt.storefrontKey:{const r=t.newValue?vt.parseCachedStorefront(t.newValue):null;r&&(this.storefront.value=r);break}case vt.utmKey:this.utm.value=JSON.parse(t.newValue);break;case Hf.storageKey:if(!t.newValue)this.currentUser.value=null,console.warn("User was removed");else try{this.currentUser.value=fs.identity.userSchema.parse(JSON.parse(t.newValue))}catch(r){console.warn("Could not read the updated Moonbase user",r)}}}async refreshOrder(){const t=this.currentOrder.value.id;try{const n=await this.client.orders.get(t,{abort:this.refreshOrderAbortController.signal});if(this.currentOrder.value.id!==t)return;n&&(n.status!==Xn.Open?this.resetOrder():(n.items=this.enrichLineItems(n.items,n),n.currency=qo(n,this.storefront.value),Ho(vt.sessionKey,JSON.stringify(n)),this.currentOrder.value=n,this.loadedStorefront.value&&this.reconcileCartOffer()&&n.items.length>0&&this.pushOrderContent()))}catch(n){n instanceof Pa&&this.currentOrder.value.id===t&&this.resetOrder()}}resetOrder(t){var n,r;const o=this.currentOrder.value,s=(n=t==null?void 0:t.keepItems)!=null?n:!1;this.currentOrder.value={id:Ss(),currency:((r=this.storefront.value)==null?void 0:r.suggestedCurrency)||"",status:Xn.Open,items:s?o.items:[],couponsApplied:[]},s&&this.currentOrder.value.items.length>0?Ho(vt.sessionKey,JSON.stringify(this.currentOrder.value)):to(vt.sessionKey)}async surrenderOrder(){try{await this.client.orders.removeBillingDetails(this.currentOrder.value.id)}catch(t){if(t instanceof wr)return;console.warn("Could not surrender order:",t)}}offerConditionContext(t=this.currentOrder.value){return zr.conditionContext(this.storefront.value,t,qo(t,this.storefront.value))}reconcileCartOffer(){const t=this.currentOrder.value;if(t.status!==Xn.Open)return!1;const n=zr.bestCartOffer(this.storefront.value,t,qo(t,this.storefront.value));return(n==null?void 0:n.id)===t.offerId?!1:(t.offerId=n==null?void 0:n.id,!0)}async removeCartOffer(){const t=this.currentOrder.value;t.status===Xn.Open&&(t.offerId=void 0),Ho(vt.sessionKey,JSON.stringify(t)),await this.client.orders.removeOffer(t.id)}enrichLineItems(t,n){if(this.storefront){const r=this.offerConditionContext(n);return t.map(o=>{var s,i,a;const l=(s=this.storefront.value.offers)==null?void 0:s.find(u=>u.id===o.offerId);if(o.type==="Product"){const u=this.storefront.value.products.find(f=>f.id===o.productId);let d=((u==null?void 0:u.variations)||[]).find(f=>f.id===o.variationId);return l&&d&&jt.eligible(l,r)&&(d=jt.applyToVariation(l,d)),{...o,product:u,variation:d,price:d==null?void 0:d.price,appliedDiscount:(i=d==null?void 0:d.discount)!=null?i:o.appliedDiscount}}else{const u=this.storefront.value.bundles.find(f=>f.id===o.bundleId);let d=((u==null?void 0:u.variations)||[]).find(f=>f.id===o.variationId);return l&&d&&jt.eligible(l,r)&&(d=jt.applyToVariation(l,d)),{...o,bundle:u,variation:d,price:d==null?void 0:d.price,appliedDiscount:(a=d==null?void 0:d.discount)!=null?a:o.appliedDiscount}}})}return t}};Ri.userKey="moonbase_user",Ri.sessionKey="moonbase_session",Ri.storefrontKey="moonbase_storefront",Ri.utmKey="moonbase_utm";var G_=Ri;function Y_(e,t){const n=oe(bt);if(!n)throw new Error("No storefront configured");const r=n.stateFactory(`activation-request-${Xr(e)}`,null),o=n.stateFactory(`activation-request-${Xr(e)}-error`,null),s=n.stateFactory(`activation-request-${Xr(e)}-loading`,!0),i=n.stateFactory(`activation-request-${Xr(e)}-fulfilling`,!1),a=n.stateFactory(`activation-request-${Xr(e)}-completing`,!1),l=n.stateFactory(`activation-request-${Xr(e)}-completion-timeout`,null),u=async()=>{if(!r.value)return;await n.client.activationRequests.isCompleted(r.value.id)&&r.value?(r.value.status=Sn.Completed,a.value=!1):l.value=setTimeout(u,1500)};return We(()=>Xr(e),async c=>{try{c&&c.length>0?(r.value=await n.client.activationRequests.get(c),r.value.status===Sn.Fulfilled&&(a.value=!0,u()),s.value=!1):console.warn("No token given to `useActivationRequest`")}catch(d){o.value=d.message,s.value=!1}},{immediate:!0}),nc(()=>{l.value&&clearTimeout(l.value)}),We(n.currentUser,async()=>{var c,d;const f=Xr(e);if(!(!f||(d=(c=r.value)==null?void 0:c.licenseEligibility)!=null&&d.eligible)){s.value=!0;try{r.value=await n.client.activationRequests.get(f),r.value.status===Sn.Fulfilled&&(a.value=!0,u())}catch(m){o.value=m.message}s.value=!1}}),{activationRequest:r,loading:s,fulfilling:i,completing:a,error:o,isInstalled:F(()=>{var c;return r&&((c=r.value)==null?void 0:c.status)===Sn.Completed}),fulfillLicense:async()=>{i.value=!0,r.value=await n.client.activationRequests.fulfillLicense(r.value.id),i.value=!1,a.value=!0,u()},fulfillTrial:async(c=!1)=>{i.value=!0;try{const d=n.currentUser.value;if(c&&d&&!d.communicationPreferences.newsletterOptIn){const{user:m}=await n.client.identity.update(d.name,d.email,void 0,{...d.communicationPreferences,newsletterOptIn:!0});n.currentUser.value=m}r.value=await n.client.activationRequests.fulfillTrial(r.value.id),i.value=!1,a.value=!0;const f=u()}catch(d){console.warn("Could not fulfill trial: ",d),d instanceof ds?o.value="You need to be signed in to do this":o.value=d.message,i.value=!1}},cancel:async()=>{!r.value||r.value.status===Sn.Cancelled||(r.value=await n.client.activationRequests.cancel(r.value.id))}}}function Ze(e){const t=e??oe(bt);if(!t)throw new Error("No storefront configured");return{user:t.currentUser,loaded:t.loadedUser,loadedPromise:t.loadedUserPromise,signIn:async(n,r)=>{const o=await t.client.identity.signIn(n,r);return t.currentUser.value=o,t.updateStorefront(),o},signUp:async(n,r,o,s,i,a,l,u)=>{const c=await t.client.identity.signUp(n,r,o,s,i,a,l,u);return c.status==="signed-in"&&(t.currentUser.value=c.user,t.updateStorefront()),c},signOut:async()=>{t.client.tokenStore.clear(),t.resetOrder({keepItems:!0}),Sc(),await t.updateStorefront(),t.currentUser.value=null},update:async(n,r,o,s)=>{const i=await t.client.identity.update(n,r,o,s);return t.currentUser.value&&(t.currentUser.value=i.user),i},setPassword:async(n,r)=>{await t.client.identity.setPassword(n,r)},forgotPassword:async n=>{await t.client.identity.forgotPassword(n)},resetPassword:async(n,r,o)=>{await t.client.identity.resetPassword(n,r,o)},confirmAccount:async(n,r)=>{const o=await t.client.identity.confirmAccount(n,r);return o.status==="SignedIn"&&(t.currentUser.value=t.client.tokenStore.user,t.updateStorefront()),o},confirmEmail:async(n,r)=>await t.client.identity.confirmEmail(n,r),confirmEmailChange:async(n,r)=>(await t.client.identity.confirmEmailChange(n,r),await t.updateUser()),getConnectionUrl:async(n,r,o)=>await t.client.identity.getConnectionUrl(n,r,o),disconnectAccount:async n=>(await t.client.identity.disconnectAccount(n),await t.updateUser()),refreshUser:async()=>await t.updateUser()}}function kl(e,t){const n=t??oe(bt);if(!n)throw new Error("No storefront configured");return F(()=>n.storefront.value.bundles.find(r=>r.id===e)||null)}function K_(e){const t=oe(bt);if(!t)throw new Error("No storefront configured");return F(()=>t.storefront.value.bundles)}async function Gp(e,t,n){if(n!=null&&n.length)try{await e.orders.joinGroups(t,n)}catch(r){console.warn("Moonbase: could not record checkout group enrollment",r)}}var Q_="mb_checkout_mode";function X_(e){return e===!0?"always":e===!1?"never":e}function J_(){if(typeof window>"u"||!window.location)return null;const e=new URLSearchParams(window.location.search).get(Q_);if(!e)return null;switch(e.toLowerCase()){case"auto":return"auto";case"always":case"redirect":case"true":return"always";case"never":case"overlay":case"false":return"never";default:return null}}function ek(){if(typeof navigator>"u")return{mobile:!1,reason:"no-navigator"};const e=navigator.userAgent,t=navigator.userAgentData;return typeof(t==null?void 0:t.mobile)=="boolean"?{mobile:t.mobile,reason:"ua-client-hint",userAgent:e}:{mobile:/iPhone|iPod/.test(e)||/Android/.test(e)&&/Mobile/.test(e),reason:"user-agent",userAgent:e}}function $c(e="auto"){const t=J_(),n=t??X_(e),r=t!==null;if(n!=="auto")return{redirect:n==="always",mode:n,reason:r?"url-override":"explicit",overridden:r};const o=ek();return{redirect:o.mobile,mode:n,reason:o.reason,overridden:r,userAgent:o.userAgent}}function Dc(e="auto"){return $c(e).redirect}function Yp(e,t){if(!e.hostedCheckoutUrl||!e.embeddedCheckoutUrl)return null;const n=new URL(e.hostedCheckoutUrl);n.searchParams.delete("email"),n.searchParams.delete("token"),n.searchParams.set("anonymous","1");const r=new URL(t);return r.searchParams.set("mb_intent","checkout"),r.searchParams.set("mb_complete","true"),r.searchParams.set("mb_endpoint",encodeURIComponent(e.embeddedCheckoutUrl)),n.searchParams.set("return",r.toString()),Pc(n.toString())}function Un(e){const t=e??oe(bt);if(!t)throw new Error("No storefront configured");const n=F(()=>qo(t.currentOrder.value,t.storefront.value)),r=F(()=>zr.total(t.storefront.value,t.currentOrder.value,n.value)),o=F(()=>({amount:r.value.amount,currency:r.value.currency}));function s(c,d,f,m){var p,g,b;if(c=v(c),d??(d=c.defaultVariation),!d)throw new Error("Added item does not have a default variation, and none have been specified");const O=`${c.type==="Bundle"?"b":"p"}/${c.id}/${d.id}`;let P=t==null?void 0:t.currentOrder.value.items.find(I=>I.id===O);if(P)P.quantity+=1,(b=P.offerId)!=null||(P.offerId=f==null?void 0:f.id),!P.variation&&d&&(P.variation=d),!P.price&&d&&(P.price=d.price),!P.appliedDiscount&&d.discount&&(P.appliedDiscount=d.discount),P.type==="Product"&&c.type==="Product"&&!P.product&&(P.product=c),P.type==="Bundle"&&c.type==="Bundle"&&!P.bundle&&(P.bundle=c);else if(c.type==="Bundle"){if(P={id:O,type:"Bundle",bundleId:c.id,bundle:c,quantity:1,variation:d,variationId:d.id,offerId:f==null?void 0:f.id,price:d.price,appliedDiscount:d.discount,isDefaultVariation:d.id===((p=c.defaultVariation)==null?void 0:p.id)},(m==null?void 0:m.bundleBehaviour)==="replace"){const I=t==null?void 0:t.currentOrder.value.items.filter(U=>U.type==="Product"&&c.products.some(B=>B.included&&B.id===U.productId));for(const U of I??[]){const B=t==null?void 0:t.currentOrder.value.items.findIndex(z=>z.id===U.id);B!==void 0&&(t==null||t.currentOrder.value.items.splice(B,1))}P.replaced=I==null?void 0:I.filter(U=>U.type==="Product").map(U=>`${U.productId}/${U.variationId}`)}t==null||t.currentOrder.value.items.push(P)}else if(c.type==="Product")P={id:O,type:"Product",productId:c.id,product:c,quantity:1,variation:d,variationId:d.id,offerId:f==null?void 0:f.id,price:d.price,appliedDiscount:d.discount,isDefaultVariation:d.id===((g=c.defaultVariation)==null?void 0:g.id)},t==null||t.currentOrder.value.items.push(P);else throw new Kt("Invalid input",`Could not handle item of type '${c.type}'`);return u(),P}function i(c,d){var f,m;if(t&&c.type==="Bundle"&&c.replaced&&c.replaced.length>0){let p=d;for(const{productId:g,variationId:b}of c.replaced.map(O=>({productId:O.split("/")[0],variationId:O.split("/")[1]}))){const O=t.storefront.value.products.find(I=>I.id===g),P=(f=O==null?void 0:O.variations)==null?void 0:f.find(I=>I.id===b);if(O&&P&&!t.currentOrder.value.items.some(I=>I.type==="Product"&&I.productId===g)){const U={id:`p/${O.id}/${b}`,type:"Product",productId:O.id,product:O,quantity:1,variation:P,variationId:b,price:P.price,appliedDiscount:P.discount,isDefaultVariation:P.id===((m=O.defaultVariation)==null?void 0:m.id)};p!==void 0?(t.currentOrder.value.items.splice(p,0,U),p++):t.currentOrder.value.items.push(U)}}}}function a(){var c;if(!t)return;const d=t.offerConditionContext();for(const f of t.currentOrder.value.items)if(f.offerId){const m=(c=t.storefront.value.offers)==null?void 0:c.find(p=>p.id===f.offerId);(!m||!jt.eligible(m,d))&&(f.offerId=void 0)}}function l(){var c;if(!t||((c=t.autoApplyItemOffers)==null?void 0:c.value)!==!0)return;const d=t.currentOrder.value;if(d.status!==Xn.Open)return;const f=t.offerConditionContext();for(const{itemId:m,offerId:p}of zr.assignItemOffers(t.storefront.value,d,n.value,f)){const g=d.items.find(b=>b.id===m);g&&(g.offerId=p)}}function u(){if(t)return a(),l(),t.reconcileCartOffer(),t.pushOrderContent()}return{items:F(()=>t.enrichLineItems(t.currentOrder.value.items)),currency:n,total:o,breakdown:r,cartOffer:F(()=>r.value.cartOffer),addToCart:s,setQuantity:(c,d)=>{const f=t.currentOrder.value.items.find(m=>m.id===c.id);if(!f)throw new Error("Cart item not found");if(f.quantity=d,f.quantity<=0){const m=t.currentOrder.value.items.findIndex(p=>p.id===f.id);t.currentOrder.value.items.splice(m,1),i(c,m)}return u(),c},removeFromCart:c=>{const d=t.currentOrder.value.items.findIndex(f=>f.id===c.id);t.currentOrder.value.items.splice(d,1),i(c,d),u()},checkout:async(c={})=>{var d;if(typeof window<"u"&&document.getElementById("moonbase-checkout-wrapper"))return new Promise(b=>window.addEventListener("moonbase-checkout-closed",O=>{const P=O;b({next:P.detail.intent,completed:P.detail.completed,redirected:!1})},{once:!0}));const f=Dc(c.redirect),m=Wo(new URL((d=c.returnUrl)!=null?d:_l(),document.baseURI).href);t.reconcileCartOffer();const p=await t.client.orders.pushContent(t.currentOrder.value,{returnUrl:m,embedded:!f},t.hasUtmOrReferrer?t.utm.value:void 0);await Gp(t.client,p.id,c.groupIds),p.items=t.enrichLineItems(p.items),window.dispatchEvent(new CustomEvent("moonbase-checkout-initiated",{detail:{order:p,total:o.value}}));const g=f?Yp(p,m):null;if(g&&typeof window<"u")return window.location.href=g,{next:void 0,completed:!1,redirected:!0};if(p.embeddedCheckoutUrl&&typeof window<"u"){const b=p.embeddedCheckoutUrl;return new Promise(O=>{Li(b),window.addEventListener("moonbase-checkout-closed",P=>{const I=P;O({next:I.detail.intent,completed:I.detail.completed,redirected:!1})},{once:!0})})}else throw new Error("No checkout URL found")}}}function tk(e){const t=Math.trunc(Number(e));return Number.isFinite(t)&&t>0?t:1}async function nk(e,t={},n){var r,o,s,i,a,l,u,c,d,f;const m=n??oe(bt);if(!m)throw new Error("No storefront configured");if(typeof window<"u"&&document.getElementById("moonbase-checkout-wrapper"))return new Promise(O=>window.addEventListener("moonbase-checkout-closed",P=>{const I=P;O({next:I.detail.intent,completed:I.detail.completed,redirected:!1})},{once:!0}));const p=Dc(t.redirect),g=[];for(const O of e){const P=v(O.item),I=(r=O.variation)!=null?r:P.defaultVariation;if(!I)throw new Error("Added item does not have a default variation, and none have been specified");const U=tk(O.quantity),B=`${P.type==="Bundle"?"b":"p"}/${P.id}/${I.id}`;if(P.type==="Bundle")g.push({id:B,type:"Bundle",bundleId:P.id,bundle:P,quantity:U,variation:I,variationId:I.id,price:I.price,appliedDiscount:I.discount});else if(P.type==="Product")g.push({id:B,type:"Product",productId:P.id,product:P,quantity:U,variation:I,variationId:I.id,price:I.price,appliedDiscount:I.discount});else throw new Kt("Invalid input",`Could not handle item of type '${O.type}'`)}const b=(s=(o=m.currentUser.value)==null?void 0:o.id)!=null?s:null;q_();try{const O=Wo(new URL((i=t.returnUrl)!=null?i:_l(),document.baseURI).href),P=T=>m.client.orders.pushContent({id:T,currency:m.storefront.value.suggestedCurrency,items:g},{returnUrl:O,embedded:!p},m.hasUtmOrReferrer?m.utm.value:void 0);let I=await O_(m.client,b,t.couponCode),U;try{U=await P((a=I==null?void 0:I.orderId)!=null?a:Ss())}catch(T){if(!I||!S_(T))throw T;Sc(I.orderId),I=null,U=await P(Ss())}await Gp(m.client,U.id,t.groupIds);let B=(l=I==null?void 0:I.couponCode)!=null?l:null;if(t.couponCode&&!C_(U,t.couponCode))try{const T=await m.client.orders.addCouponCode(U.id,t.couponCode);U={...T,checkoutUrl:(u=T.checkoutUrl)!=null?u:U.checkoutUrl,hostedCheckoutUrl:(c=T.hostedCheckoutUrl)!=null?c:U.hostedCheckoutUrl,embeddedCheckoutUrl:(d=T.embeddedCheckoutUrl)!=null?d:U.embeddedCheckoutUrl},B=t.couponCode}catch(T){(f=t.onCouponRejected)==null||f.call(t,t.couponCode,T)}if(N_(U.id,b,B),typeof window<"u"&&!document.getElementById("moonbase-checkout-wrapper"))return{next:void 0,completed:!1,redirected:!1};U.items=m.enrichLineItems(U.items);const z=zr.total(m.storefront.value,U,U.currency);window.dispatchEvent(new CustomEvent("moonbase-checkout-initiated",{detail:{order:U,total:{amount:z.amount,currency:z.currency}}}));const L=p?Yp(U,O):null;if(L&&typeof window<"u")return window.location.href=L,{next:void 0,completed:!1,redirected:!0};if(U.embeddedCheckoutUrl&&typeof window<"u"){const T=U.embeddedCheckoutUrl;return await new Promise(A=>{Li(T);const E=P_(U.id,Wp);window.addEventListener("moonbase-checkout-closed",w=>{E();const _=w;A({next:_.detail.intent,completed:_.detail.completed,redirected:!1})},{once:!0})})}else throw new Error("No checkout URL found")}catch(O){throw zp(),O}}function Mc(e){const t=oe(bt);if(!t)throw new Error("No storefront configured");return{subscribe:n=>t.client.communications.subscribe(n),confirm:(n,r)=>t.client.communications.confirm(n,r),get:(n,r)=>t.client.communications.getPreferences(n,r),update:(n,r,o)=>t.client.communications.updatePreferences(n,r,o),unsubscribe:(n,r)=>t.client.communications.unsubscribe(n,r)}}function Kp(e){const t=oe(bt);if(!t)throw new Error("No storefront configured");return{join:n=>t.client.groups.join(n)}}function Zo(e){const t=oe(bt);if(!t)throw new Error("No storefront configured");return{getLicenses:async n=>t.client.inventory.licenses.get(n),getLicenseActivations:async(n,r)=>t.client.inventory.licenses.getActivations(n,r),getProduct:async(n,r)=>t.client.inventory.products.get(n,r),getProducts:async n=>t.client.inventory.products.getOwned(n),getProductLicenses:async(n,r)=>t.client.inventory.products.getLicenses(n,r),getProductActivations:async(n,r)=>t.client.inventory.products.getActivations(n,r),revokeActivation:async n=>t.client.inventory.licenses.revokeActivation(n.licenseId,n.id),activateProduct:async(n,r)=>t.client.inventory.activation.activate(n,r),downloadProduct:async n=>{if(!n.path)throw new Error("Product is not downloadable");window.location.href=await t.client.inventory.products.getDownloadUrl(n.path)},getSubscriptions:async n=>t.client.inventory.subscriptions.get(n),getSubscription:async n=>t.client.inventory.subscriptions.getById(n),cancelSubscription:async(n,r)=>t.client.inventory.subscriptions.cancel(n,r),renewSubscription:async(n,r={})=>{var o;if(typeof window<"u"&&document.getElementById("moonbase-checkout-wrapper"))return new Promise(l=>window.addEventListener("moonbase-checkout-closed",u=>{const c=u;l({next:c.detail.intent,completed:c.detail.completed,redirected:!1})},{once:!0}));const s=Dc(r.redirect),i=Wo(new URL((o=r.returnUrl)!=null?o:_l(),document.baseURI).href),{location:a}=await t.client.inventory.subscriptions.renew(n,i,!s);return s?(window.location.href=Pc(a),{next:void 0,completed:!1,redirected:!0}):new Promise(l=>{Li(a),window.addEventListener("moonbase-checkout-closed",u=>{const c=u;l({next:c.detail.intent,completed:c.detail.completed,redirected:!1})},{once:!0})})},updateSubscriptionPaymentMethod:async(n,r={})=>{var o;const s=Wo(new URL((o=r.returnUrl)!=null?o:_l(),document.baseURI).href),i=await t.client.inventory.subscriptions.getById(n.id,{toUpdatePaymentMethod:!0,returnUrl:s});if(window.dispatchEvent(new CustomEvent("moonbase-subscription-payment-method-update-initiated",{detail:{subscription:Se(n)}})),i.embeddedUpdatePaymentUrl&&typeof window<"u"){const a=i.embeddedUpdatePaymentUrl;return new Promise(l=>{Zp(a),window.addEventListener("moonbase-subscription-closed",u=>{l({completed:u.detail.completed})},{once:!0})})}else throw new Error("No update URL found")}}}function rk(e,t){const n=oe(bt);if(!n)throw new Error("No storefront configured");return F(()=>{var r;return((r=n.storefront.value.offers)==null?void 0:r.find(o=>o.id===e))||null})}function ok(e){const t=oe(bt);if(!t)throw new Error("No storefront configured");return F(()=>{var n;const r=t.offerConditionContext();return((n=t.storefront.value.offers)!=null?n:[]).filter(o=>jt.eligible(o,r)&&!Qp(o,t.currentOrder.value)&&!Xp(o,t.currentOrder.value))})}function sk(e){const t=oe(bt);if(!t)throw new Error("No storefront configured");return F(()=>{var n;const r=t.currentOrder.value,o=t.offerConditionContext();return((n=t.storefront.value.offers)!=null?n:[]).filter(s=>s.scope!=="Cart"&&!Qp(s,r)&&!Xp(s,r)).map(s=>({offer:s,progress:jt.progress(s,o)})).filter(s=>s.progress!==null&&!s.progress.eligible&&s.progress.unit==="Money"&&s.progress.remaining>0).sort((s,i)=>i.progress.fraction-s.progress.fraction)})}function ik(e){const t=oe(bt);if(!t)throw new Error("No storefront configured");return F(()=>{var n,r;const o=t.currentOrder.value,s=t.storefront.value,i=qo(o,s),a=(n=s.offers)!=null?n:[];if(a.length===0||o.items.length===0)return null;const l=t.offerConditionContext(),u=zr.total(s,o,i),c=u.cartOffer?{offer:u.cartOffer.offer,saving:u.cartOffer.discount}:null,d=a.map(p=>({offer:p,progress:jt.progress(p,l)})).filter(p=>p.progress!==null&&!p.progress.eligible&&p.progress.remaining>0&&p.offer.scope==="Cart").sort((p,g)=>g.progress.fraction-p.progress.fraction),f=c?zr.cartOfferValue(s,o,c.offer,i,l):0,m=(r=c?d.find(p=>p.offer.scope==="Cart"&&zr.cartOfferValue(s,o,p.offer,i,l)>f):d[0])!=null?r:null;return!c&&!m?null:{applied:c,next:m,subtotal:u.subtotal,currency:i}})}function Qp(e,t){return t.items.some(n=>n.offerId===e.id)}function Xp(e,t){return jt.allTargetsInCart(e,t.items)}function Ui(e,t){const n=t??oe(bt);if(!n)throw new Error("No storefront configured");return F(()=>n.storefront.value.products.find(r=>r.id===e)||null)}function ak(e){const t=oe(bt);if(!t)throw new Error("No storefront configured");return F(()=>t.storefront.value.products)}function lk(e){const t=oe(bt);if(!t)throw new Error("No storefront configured");return F(()=>{var n;return(n=t.storefront.value.promotions)!=null?n:[]})}function Jp(e){const t=oe(bt);if(!t)throw new Error("No storefront configured");return{peek:async n=>{try{return await t.client.vouchers.peek(n)}catch(r){throw r instanceof wr?new Error("Voucher code invalid"):r}},redeem:async n=>{try{return await t.client.vouchers.redeem(n)}catch(r){throw r instanceof wr?new Error("Voucher code invalid"):r}}}}function uk(e,t,n){const r={endpoint:e};return new G_(r,new oy(r),(o,s)=>V(s))}function xl(e,t,n){return Array.isArray(e)?(e.length=Math.max(e.length,t),e.splice(t,1,n),n):(e[t]=n,n)}function Vc(e,t){if(Array.isArray(e)){e.splice(t,1);return}delete e[t]}function ck(){return ev().__VUE_DEVTOOLS_GLOBAL_HOOK__}function ev(){return typeof navigator<"u"&&typeof window<"u"?window:typeof globalThis<"u"?globalThis:{}}const dk=typeof Proxy=="function",fk="devtools-plugin:setup",mk="plugin:settings:set";let Ns,Lc;function hk(){var e;return Ns!==void 0||(typeof window<"u"&&window.performance?(Ns=!0,Lc=window.performance):typeof globalThis<"u"&&(!((e=globalThis.perf_hooks)===null||e===void 0)&&e.performance)?(Ns=!0,Lc=globalThis.perf_hooks.performance):Ns=!1),Ns}function pk(){return hk()?Lc.now():Date.now()}class vk{constructor(t,n){this.target=null,this.targetQueue=[],this.onQueue=[],this.plugin=t,this.hook=n;const r={};if(t.settings)for(const i in t.settings){const a=t.settings[i];r[i]=a.defaultValue}const o=`__vue-devtools-plugin-settings__${t.id}`;let s=Object.assign({},r);try{const i=localStorage.getItem(o),a=JSON.parse(i);Object.assign(s,a)}catch{}this.fallbacks={getSettings(){return s},setSettings(i){try{localStorage.setItem(o,JSON.stringify(i))}catch{}s=i},now(){return pk()}},n&&n.on(mk,(i,a)=>{i===this.plugin.id&&this.fallbacks.setSettings(a)}),this.proxiedOn=new Proxy({},{get:(i,a)=>this.target?this.target.on[a]:(...l)=>{this.onQueue.push({method:a,args:l})}}),this.proxiedTarget=new Proxy({},{get:(i,a)=>this.target?this.target[a]:a==="on"?this.proxiedOn:Object.keys(this.fallbacks).includes(a)?(...l)=>(this.targetQueue.push({method:a,args:l,resolve:()=>{}}),this.fallbacks[a](...l)):(...l)=>new Promise(u=>{this.targetQueue.push({method:a,args:l,resolve:u})})})}async setRealTarget(t){this.target=t;for(const n of this.onQueue)this.target.on[n.method](...n.args);for(const n of this.targetQueue)n.resolve(await this.target[n.method](...n.args))}}function tv(e,t){const n=e,r=ev(),o=ck(),s=dk&&n.enableEarlyProxy;if(o&&(r.__VUE_DEVTOOLS_PLUGIN_API_AVAILABLE__||!s))o.emit(fk,e,t);else{const i=s?new vk(n,o):null;(r.__VUE_DEVTOOLS_PLUGINS__=r.__VUE_DEVTOOLS_PLUGINS__||[]).push({pluginDescriptor:n,setupFn:t,proxy:i}),i&&t(i.proxiedTarget)}}var Je={};let ji;const Bi=e=>ji=e,nv=Je.NODE_ENV!=="production"?Symbol("pinia"):Symbol();function Go(e){return e&&typeof e=="object"&&Object.prototype.toString.call(e)==="[object Object]"&&typeof e.toJSON!="function"}var ir;(function(e){e.direct="direct",e.patchObject="patch object",e.patchFunction="patch function"})(ir||(ir={}));const no=typeof window<"u",rv=typeof window=="object"&&window.window===window?window:typeof self=="object"&&self.self===self?self:typeof global=="object"&&global.global===global?global:typeof globalThis=="object"?globalThis:{HTMLElement:null};function gk(e,{autoBom:t=!1}={}){return t&&/^\s*(?:text\/\S*|application\/xml|\S*\/\S*\+xml)\s*;.*charset\s*=\s*utf-8/i.test(e.type)?new Blob(["\uFEFF",e],{type:e.type}):e}function Rc(e,t,n){const r=new XMLHttpRequest;r.open("GET",e),r.responseType="blob",r.onload=function(){iv(r.response,t,n)},r.onerror=function(){console.error("could not download file")},r.send()}function ov(e){const t=new XMLHttpRequest;t.open("HEAD",e,!1);try{t.send()}catch{}return t.status>=200&&t.status<=299}function El(e){try{e.dispatchEvent(new MouseEvent("click"))}catch{const n=document.createEvent("MouseEvents");n.initMouseEvent("click",!0,!0,window,0,0,0,80,20,!1,!1,!1,!1,0,null),e.dispatchEvent(n)}}const Cl=typeof navigator=="object"?navigator:{userAgent:""},sv=/Macintosh/.test(Cl.userAgent)&&/AppleWebKit/.test(Cl.userAgent)&&!/Safari/.test(Cl.userAgent),iv=no?typeof HTMLAnchorElement<"u"&&"download"in HTMLAnchorElement.prototype&&!sv?bk:"msSaveOrOpenBlob"in Cl?yk:wk:()=>{};function bk(e,t="download",n){const r=document.createElement("a");r.download=t,r.rel="noopener",typeof e=="string"?(r.href=e,r.origin!==location.origin?ov(r.href)?Rc(e,t,n):(r.target="_blank",El(r)):El(r)):(r.href=URL.createObjectURL(e),setTimeout(function(){URL.revokeObjectURL(r.href)},4e4),setTimeout(function(){El(r)},0))}function yk(e,t="download",n){if(typeof e=="string")if(ov(e))Rc(e,t,n);else{const r=document.createElement("a");r.href=e,r.target="_blank",setTimeout(function(){El(r)})}else navigator.msSaveOrOpenBlob(gk(e,n),t)}function wk(e,t,n,r){if(r=r||open("","_blank"),r&&(r.document.title=r.document.body.innerText="downloading..."),typeof e=="string")return Rc(e,t,n);const o=e.type==="application/octet-stream",s=/constructor/i.test(String(rv.HTMLElement))||"safari"in rv,i=/CriOS\/[\d]+/.test(navigator.userAgent);if((i||o&&s||sv)&&typeof FileReader<"u"){const a=new FileReader;a.onloadend=function(){let l=a.result;if(typeof l!="string")throw r=null,new Error("Wrong reader.result type");l=i?l:l.replace(/^data:[^;]*;/,"data:attachment/file;"),r?r.location.href=l:location.assign(l),r=null},a.readAsDataURL(e)}else{const a=URL.createObjectURL(e);r?r.location.assign(a):location.href=a,r=null,setTimeout(function(){URL.revokeObjectURL(a)},4e4)}}function $t(e,t){const n="🍍 "+e;typeof __VUE_DEVTOOLS_TOAST__=="function"?__VUE_DEVTOOLS_TOAST__(n,t):t==="error"?console.error(n):t==="warn"?console.warn(n):console.log(n)}function Uc(e){return"_a"in e&&"install"in e}function av(){if(!("clipboard"in navigator))return $t("Your browser doesn't support the Clipboard API","error"),!0}function lv(e){return e instanceof Error&&e.message.toLowerCase().includes("document is not focused")?($t('You need to activate the "Emulate a focused page" setting in the "Rendering" panel of devtools.',"warn"),!0):!1}async function _k(e){if(!av())try{await navigator.clipboard.writeText(JSON.stringify(e.state.value)),$t("Global state copied to clipboard.")}catch(t){if(lv(t))return;$t("Failed to serialize the state. Check the console for more details.","error"),console.error(t)}}async function kk(e){if(!av())try{uv(e,JSON.parse(await navigator.clipboard.readText())),$t("Global state pasted from clipboard.")}catch(t){if(lv(t))return;$t("Failed to deserialize the state from clipboard. Check the console for more details.","error"),console.error(t)}}async function xk(e){try{iv(new Blob([JSON.stringify(e.state.value)],{type:"text/plain;charset=utf-8"}),"pinia-state.json")}catch(t){$t("Failed to export the state as JSON. Check the console for more details.","error"),console.error(t)}}let $r;function Ek(){$r||($r=document.createElement("input"),$r.type="file",$r.accept=".json");function e(){return new Promise((t,n)=>{$r.onchange=async()=>{const r=$r.files;if(!r)return t(null);const o=r.item(0);return t(o?{text:await o.text(),file:o}:null)},$r.oncancel=()=>t(null),$r.onerror=n,$r.click()})}return e}async function Ck(e){try{const n=await Ek()();if(!n)return;const{text:r,file:o}=n;uv(e,JSON.parse(r)),$t(`Global state imported from "${o.name}".`)}catch(t){$t("Failed to import the state from JSON. Check the console for more details.","error"),console.error(t)}}function uv(e,t){for(const n in t){const r=e.state.value[n];r?Object.assign(r,t[n]):e.state.value[n]=t[n]}}function jn(e){return{_custom:{display:e}}}const cv="🍍 Pinia (root)",Al="_root";function Ak(e){return Uc(e)?{id:Al,label:cv}:{id:e.$id,label:e.$id}}function Ok(e){if(Uc(e)){const n=Array.from(e._s.keys()),r=e._s;return{state:n.map(s=>({editable:!0,key:s,value:e.state.value[s]})),getters:n.filter(s=>r.get(s)._getters).map(s=>{const i=r.get(s);return{editable:!1,key:s,value:i._getters.reduce((a,l)=>(a[l]=i[l],a),{})}})}}const t={state:Object.keys(e.$state).map(n=>({editable:!0,key:n,value:e.$state[n]}))};return e._getters&&e._getters.length&&(t.getters=e._getters.map(n=>({editable:!1,key:n,value:e[n]}))),e._customProperties.size&&(t.customProperties=Array.from(e._customProperties).map(n=>({editable:!0,key:n,value:e[n]}))),t}function Sk(e){return e?Array.isArray(e)?e.reduce((t,n)=>(t.keys.push(n.key),t.operations.push(n.type),t.oldValue[n.key]=n.oldValue,t.newValue[n.key]=n.newValue,t),{oldValue:{},keys:[],operations:[],newValue:{}}):{operation:jn(e.type),key:jn(e.key),oldValue:e.oldValue,newValue:e.newValue}:{}}function Pk(e){switch(e){case ir.direct:return"mutation";case ir.patchFunction:return"$patch";case ir.patchObject:return"$patch";default:return"unknown"}}let Is=!0;const Ol=[],Yo="pinia:mutations",zt="pinia",{assign:Nk}=Object,Sl=e=>"🍍 "+e;function Ik(e,t){tv({id:"dev.esm.pinia",label:"Pinia 🍍",logo:"https://pinia.vuejs.org/logo.svg",packageName:"pinia",homepage:"https://pinia.vuejs.org",componentStateTypes:Ol,app:e},n=>{typeof n.now!="function"&&$t("You seem to be using an outdated version of Vue Devtools. Are you still using the Beta release instead of the stable one? You can find the links at https://devtools.vuejs.org/guide/installation.html."),n.addTimelineLayer({id:Yo,label:"Pinia 🍍",color:15064968}),n.addInspector({id:zt,label:"Pinia 🍍",icon:"storage",treeFilterPlaceholder:"Search stores",actions:[{icon:"content_copy",action:()=>{_k(t)},tooltip:"Serialize and copy the state"},{icon:"content_paste",action:async()=>{await kk(t),n.sendInspectorTree(zt),n.sendInspectorState(zt)},tooltip:"Replace the state with the content of your clipboard"},{icon:"save",action:()=>{xk(t)},tooltip:"Save the state as a JSON file"},{icon:"folder_open",action:async()=>{await Ck(t),n.sendInspectorTree(zt),n.sendInspectorState(zt)},tooltip:"Import the state from a JSON file"}],nodeActions:[{icon:"restore",tooltip:'Reset the state (with "$reset")',action:r=>{const o=t._s.get(r);o?typeof o.$reset!="function"?$t(`Cannot reset "${r}" store because it doesn't have a "$reset" method implemented.`,"warn"):(o.$reset(),$t(`Store "${r}" reset.`)):$t(`Cannot reset "${r}" store because it wasn't found.`,"warn")}}]}),n.on.inspectComponent((r,o)=>{const s=r.componentInstance&&r.componentInstance.proxy;if(s&&s._pStores){const i=r.componentInstance.proxy._pStores;Object.values(i).forEach(a=>{r.instanceData.state.push({type:Sl(a.$id),key:"state",editable:!0,value:a._isOptionsAPI?{_custom:{value:Se(a.$state),actions:[{icon:"restore",tooltip:"Reset the state of this store",action:()=>a.$reset()}]}}:Object.keys(a.$state).reduce((l,u)=>(l[u]=a.$state[u],l),{})}),a._getters&&a._getters.length&&r.instanceData.state.push({type:Sl(a.$id),key:"getters",editable:!1,value:a._getters.reduce((l,u)=>{try{l[u]=a[u]}catch(c){l[u]=c}return l},{})})})}}),n.on.getInspectorTree(r=>{if(r.app===e&&r.inspectorId===zt){let o=[t];o=o.concat(Array.from(t._s.values())),r.rootNodes=(r.filter?o.filter(s=>"$id"in s?s.$id.toLowerCase().includes(r.filter.toLowerCase()):cv.toLowerCase().includes(r.filter.toLowerCase())):o).map(Ak)}}),globalThis.$pinia=t,n.on.getInspectorState(r=>{if(r.app===e&&r.inspectorId===zt){const o=r.nodeId===Al?t:t._s.get(r.nodeId);if(!o)return;o&&(r.nodeId!==Al&&(globalThis.$store=Se(o)),r.state=Ok(o))}}),n.on.editInspectorState((r,o)=>{if(r.app===e&&r.inspectorId===zt){const s=r.nodeId===Al?t:t._s.get(r.nodeId);if(!s)return $t(`store "${r.nodeId}" not found`,"error");const{path:i}=r;Uc(s)?i.unshift("state"):(i.length!==1||!s._customProperties.has(i[0])||i[0]in s.$state)&&i.unshift("$state"),Is=!1,r.set(s,i,r.state.value),Is=!0}}),n.on.editComponentState(r=>{if(r.type.startsWith("🍍")){const o=r.type.replace(/^🍍\s*/,""),s=t._s.get(o);if(!s)return $t(`store "${o}" not found`,"error");const{path:i}=r;if(i[0]!=="state")return $t(`Invalid path for store "${o}":
20
20
  ${i}
21
21
  Only state can be modified.`);i[0]="$state",Is=!1,r.set(s,i,r.state.value),Is=!0}})})}function Tk(e,t){Ol.includes(Sl(t.$id))||Ol.push(Sl(t.$id)),tv({id:"dev.esm.pinia",label:"Pinia 🍍",logo:"https://pinia.vuejs.org/logo.svg",packageName:"pinia",homepage:"https://pinia.vuejs.org",componentStateTypes:Ol,app:e,settings:{logStoreChanges:{label:"Notify about new/deleted stores",type:"boolean",defaultValue:!0}}},n=>{const r=typeof n.now=="function"?n.now.bind(n):Date.now;t.$onAction(({after:i,onError:a,name:l,args:u})=>{const c=dv++;n.addTimelineEvent({layerId:Yo,event:{time:r(),title:"🛫 "+l,subtitle:"start",data:{store:jn(t.$id),action:jn(l),args:u},groupId:c}}),i(d=>{ro=void 0,n.addTimelineEvent({layerId:Yo,event:{time:r(),title:"🛬 "+l,subtitle:"end",data:{store:jn(t.$id),action:jn(l),args:u,result:d},groupId:c}})}),a(d=>{ro=void 0,n.addTimelineEvent({layerId:Yo,event:{time:r(),logType:"error",title:"💥 "+l,subtitle:"end",data:{store:jn(t.$id),action:jn(l),args:u,error:d},groupId:c}})})},!0),t._customProperties.forEach(i=>{We(()=>v(t[i]),(a,l)=>{n.notifyComponentUpdate(),n.sendInspectorState(zt),Is&&n.addTimelineEvent({layerId:Yo,event:{time:r(),title:"Change",subtitle:i,data:{newValue:a,oldValue:l},groupId:ro}})},{deep:!0})}),t.$subscribe(({events:i,type:a},l)=>{if(n.notifyComponentUpdate(),n.sendInspectorState(zt),!Is)return;const u={time:r(),title:Pk(a),data:Nk({store:jn(t.$id)},Sk(i)),groupId:ro};a===ir.patchFunction?u.subtitle="⤵️":a===ir.patchObject?u.subtitle="🧩":i&&!Array.isArray(i)&&(u.subtitle=i.type),i&&(u.data["rawEvent(s)"]={_custom:{display:"DebuggerEvent",type:"object",tooltip:"raw DebuggerEvent[]",value:i}}),n.addTimelineEvent({layerId:Yo,event:u})},{detached:!0,flush:"sync"});const o=t._hotUpdate;t._hotUpdate=Qr(i=>{o(i),n.addTimelineEvent({layerId:Yo,event:{time:r(),title:"🔥 "+t.$id,subtitle:"HMR update",data:{store:jn(t.$id),info:jn("HMR update")}}}),n.notifyComponentUpdate(),n.sendInspectorTree(zt),n.sendInspectorState(zt)});const{$dispose:s}=t;t.$dispose=()=>{s(),n.notifyComponentUpdate(),n.sendInspectorTree(zt),n.sendInspectorState(zt),n.getSettings().logStoreChanges&&$t(`Disposed "${t.$id}" store 🗑`)},n.notifyComponentUpdate(),n.sendInspectorTree(zt),n.sendInspectorState(zt),n.getSettings().logStoreChanges&&$t(`"${t.$id}" store installed 🆕`)})}let dv=0,ro;function fv(e,t,n){const r=t.reduce((o,s)=>(o[s]=Se(e)[s],o),{});for(const o in r)e[o]=function(){const s=dv,i=n?new Proxy(e,{get(...l){return ro=s,Reflect.get(...l)},set(...l){return ro=s,Reflect.set(...l)}}):e;ro=s;const a=r[o].apply(i,arguments);return ro=void 0,a}}function $k({app:e,store:t,options:n}){if(!t.$id.startsWith("__hot:")){if(t._isOptionsAPI=!!n.state,!t._p._testing){fv(t,Object.keys(n.actions),t._isOptionsAPI);const r=t._hotUpdate;Se(t)._hotUpdate=function(o){r.apply(this,arguments),fv(t,Object.keys(o._hmrPayload.actions),!!t._isOptionsAPI)}}Tk(e,t)}}function Dk(){const e=mm(!0),t=e.run(()=>V({}));let n=[],r=[];const o=Qr({install(s){Bi(o),o._a=s,s.provide(nv,o),s.config.globalProperties.$pinia=o,Je.NODE_ENV!=="production"&&Je.NODE_ENV!=="test"&&no&&Ik(s,o),r.forEach(i=>n.push(i)),r=[]},use(s){return this._a?n.push(s):r.push(s),this},_p:n,_a:null,_e:e,_s:new Map,state:t});return Je.NODE_ENV!=="production"&&Je.NODE_ENV!=="test"&&no&&typeof Proxy<"u"&&o.use($k),o}function mv(e,t){for(const n in t){const r=t[n];if(!(n in e))continue;const o=e[n];Go(o)&&Go(r)&&!lt(r)&&!un(r)?e[n]=mv(o,r):e[n]=r}return e}const hv=()=>{};function pv(e,t,n,r=hv){e.push(t);const o=()=>{const s=e.indexOf(t);s>-1&&(e.splice(s,1),r())};return!n&&Tu()&&vs(o),o}function Ts(e,...t){e.slice().forEach(n=>{n(...t)})}const Mk=e=>e(),vv=Symbol(),jc=Symbol();function Bc(e,t){e instanceof Map&&t instanceof Map?t.forEach((n,r)=>e.set(r,n)):e instanceof Set&&t instanceof Set&&t.forEach(e.add,e);for(const n in t){if(!t.hasOwnProperty(n))continue;const r=t[n],o=e[n];Go(o)&&Go(r)&&e.hasOwnProperty(n)&&!lt(r)&&!un(r)?e[n]=Bc(o,r):e[n]=r}return e}const Vk=Je.NODE_ENV!=="production"?Symbol("pinia:skipHydration"):Symbol();function Lk(e){return!Go(e)||!e.hasOwnProperty(Vk)}const{assign:wn}=Object;function gv(e){return!!(lt(e)&&e.effect)}function bv(e,t,n,r){const{state:o,actions:s,getters:i}=t,a=n.state.value[e];let l;function u(){!a&&(Je.NODE_ENV==="production"||!r)&&(n.state.value[e]=o?o():{});const c=Je.NODE_ENV!=="production"&&r?Mm(V(o?o():{}).value):Mm(n.state.value[e]);return wn(c,s,Object.keys(i||{}).reduce((d,f)=>(Je.NODE_ENV!=="production"&&f in c&&console.warn(`[🍍]: A getter cannot have the same name as another state property. Rename one of them. Found with "${f}" in store "${e}".`),d[f]=Qr(F(()=>{Bi(n);const m=n._s.get(e);return i[f].call(m,m)})),d),{}))}return l=Fc(e,u,t,n,r,!0),l}function Fc(e,t,n={},r,o,s){let i;const a=wn({actions:{}},n);if(Je.NODE_ENV!=="production"&&!r._e.active)throw new Error("Pinia destroyed");const l={deep:!0};Je.NODE_ENV!=="production"&&(l.onTrigger=E=>{u?m=E:u==!1&&!L._hotUpdating&&(Array.isArray(m)?m.push(E):console.error("🍍 debuggerEvents should be an array. This is most likely an internal Pinia bug."))});let u,c,d=[],f=[],m;const p=r.state.value[e];!s&&!p&&(Je.NODE_ENV==="production"||!o)&&(r.state.value[e]={});const g=V({});let b;function O(E){let w;u=c=!1,Je.NODE_ENV!=="production"&&(m=[]),typeof E=="function"?(E(r.state.value[e]),w={type:ir.patchFunction,storeId:e,events:m}):(Bc(r.state.value[e],E),w={type:ir.patchObject,payload:E,storeId:e,events:m});const _=b=Symbol();Xa().then(()=>{b===_&&(u=!0)}),c=!0,Ts(d,w,r.state.value[e])}const P=s?function(){const{state:w}=n,_=w?w():{};this.$patch(D=>{wn(D,_)})}:Je.NODE_ENV!=="production"?()=>{throw new Error(`🍍: Store "${e}" is built using the setup syntax and does not implement $reset().`)}:hv;function I(){i.stop(),d=[],f=[],r._s.delete(e)}const U=(E,w="")=>{if(vv in E)return E[jc]=w,E;const _=function(){Bi(r);const D=Array.from(arguments),ne=[],he=[];function be(le){ne.push(le)}function fe(le){he.push(le)}Ts(f,{args:D,name:_[jc],store:L,after:be,onError:fe});let ye;try{ye=E.apply(this&&this.$id===e?this:L,D)}catch(le){throw Ts(he,le),le}return ye instanceof Promise?ye.then(le=>(Ts(ne,le),le)).catch(le=>(Ts(he,le),Promise.reject(le))):(Ts(ne,ye),ye)};return _[vv]=!0,_[jc]=w,_},B=Qr({actions:{},getters:{},state:[],hotState:g}),z={_p:r,$id:e,$onAction:pv.bind(null,f),$patch:O,$reset:P,$subscribe(E,w={}){const _=pv(d,E,w.detached,()=>D()),D=i.run(()=>We(()=>r.state.value[e],ne=>{(w.flush==="sync"?c:u)&&E({storeId:e,type:ir.direct,events:m},ne)},wn({},l,w)));return _},$dispose:I},L=Po(Je.NODE_ENV!=="production"||Je.NODE_ENV!=="production"&&Je.NODE_ENV!=="test"&&no?wn({_hmrPayload:B,_customProperties:Qr(new Set)},z):z);r._s.set(e,L);const A=(r._a&&r._a.runWithContext||Mk)(()=>r._e.run(()=>(i=mm()).run(()=>t({action:U}))));for(const E in A){const w=A[E];if(lt(w)&&!gv(w)||un(w))Je.NODE_ENV!=="production"&&o?xl(g.value,E,Hu(A,E)):s||(p&&Lk(w)&&(lt(w)?w.value=p[E]:Bc(w,p[E])),r.state.value[e][E]=w),Je.NODE_ENV!=="production"&&B.state.push(E);else if(typeof w=="function"){const _=Je.NODE_ENV!=="production"&&o?w:U(w,E);A[E]=_,Je.NODE_ENV!=="production"&&(B.actions[E]=w),a.actions[E]=w}else Je.NODE_ENV!=="production"&&gv(w)&&(B.getters[E]=s?n.getters[E]:w,no&&(A._getters||(A._getters=Qr([]))).push(E))}if(wn(L,A),wn(Se(L),A),Object.defineProperty(L,"$state",{get:()=>Je.NODE_ENV!=="production"&&o?g.value:r.state.value[e],set:E=>{if(Je.NODE_ENV!=="production"&&o)throw new Error("cannot set hotState");O(w=>{wn(w,E)})}}),Je.NODE_ENV!=="production"&&(L._hotUpdate=Qr(E=>{L._hotUpdating=!0,E._hmrPayload.state.forEach(w=>{if(w in L.$state){const _=E.$state[w],D=L.$state[w];typeof _=="object"&&Go(_)&&Go(D)?mv(_,D):E.$state[w]=D}xl(L,w,Hu(E.$state,w))}),Object.keys(L.$state).forEach(w=>{w in E.$state||Vc(L,w)}),u=!1,c=!1,r.state.value[e]=Hu(E._hmrPayload,"hotState"),c=!0,Xa().then(()=>{u=!0});for(const w in E._hmrPayload.actions){const _=E[w];xl(L,w,U(_,w))}for(const w in E._hmrPayload.getters){const _=E._hmrPayload.getters[w],D=s?F(()=>(Bi(r),_.call(L,L))):_;xl(L,w,D)}Object.keys(L._hmrPayload.getters).forEach(w=>{w in E._hmrPayload.getters||Vc(L,w)}),Object.keys(L._hmrPayload.actions).forEach(w=>{w in E._hmrPayload.actions||Vc(L,w)}),L._hmrPayload=E._hmrPayload,L._getters=E._getters,L._hotUpdating=!1})),Je.NODE_ENV!=="production"&&Je.NODE_ENV!=="test"&&no){const E={writable:!0,configurable:!0,enumerable:!1};["_p","_hmrPayload","_getters","_customProperties"].forEach(w=>{Object.defineProperty(L,w,wn({value:L[w]},E))})}return r._p.forEach(E=>{if(Je.NODE_ENV!=="production"&&Je.NODE_ENV!=="test"&&no){const w=i.run(()=>E({store:L,app:r._a,pinia:r,options:a}));Object.keys(w||{}).forEach(_=>L._customProperties.add(_)),wn(L,w)}else wn(L,i.run(()=>E({store:L,app:r._a,pinia:r,options:a})))}),Je.NODE_ENV!=="production"&&L.$state&&typeof L.$state=="object"&&typeof L.$state.constructor=="function"&&!L.$state.constructor.toString().includes("[native code]")&&console.warn(`[🍍]: The "state" must be a plain object. It cannot be
22
22
  state: () => new MyClass()
@@ -39,4 +39,4 @@ This will fail in production.`);a=ji,a._s.has(r)||(s?Fc(r,t,o,a):bv(r,o,a),Je.NO
39
39
  * You can read more about the APCA Readability Criterion at
40
40
  * https://readtech.org/ARC/
41
41
  */const Ig=.027,aC=5e-4,lC=.1,Tg=1.14,ql=.022,$g=1.414,uC=(e,t)=>{e=new te(e),t=new te(t),e.alpha()<1&&(e=Bs(t,e,e.alpha(),"rgb"));const n=Dg(...e.rgb()),r=Dg(...t.rgb()),o=n>=ql?n:n+Math.pow(ql-n,$g),s=r>=ql?r:r+Math.pow(ql-r,$g),i=Math.pow(s,.56)-Math.pow(o,.57),a=Math.pow(s,.65)-Math.pow(o,.62),l=Math.abs(s-o)<aC?0:o<s?i*Tg:a*Tg;return(Math.abs(l)<lC?0:l>0?l-Ig:l+Ig)*100};function Dg(e,t,n){return .2126729*Math.pow(e/255,2.4)+.7151522*Math.pow(t/255,2.4)+.072175*Math.pow(n/255,2.4)}const{sqrt:Lr,pow:At,min:cC,max:dC,atan2:Mg,abs:Vg,cos:Hl,sin:Lg,exp:fC,PI:Rg}=Math;function mC(e,t,n=1,r=1,o=1){var s=function(xe){return 360*xe/(2*Rg)},i=function(xe){return 2*Rg*xe/360};e=new te(e),t=new te(t);const[a,l,u]=Array.from(e.lab()),[c,d,f]=Array.from(t.lab()),m=(a+c)/2,p=Lr(At(l,2)+At(u,2)),g=Lr(At(d,2)+At(f,2)),b=(p+g)/2,O=.5*(1-Lr(At(b,7)/(At(b,7)+At(25,7)))),P=l*(1+O),I=d*(1+O),U=Lr(At(P,2)+At(u,2)),B=Lr(At(I,2)+At(f,2)),z=(U+B)/2,L=s(Mg(u,P)),T=s(Mg(f,I)),A=L>=0?L:L+360,E=T>=0?T:T+360,w=Vg(A-E)>180?(A+E+360)/2:(A+E)/2,_=1-.17*Hl(i(w-30))+.24*Hl(i(2*w))+.32*Hl(i(3*w+6))-.2*Hl(i(4*w-63));let D=E-A;D=Vg(D)<=180?D:E<=A?D+360:D-360,D=2*Lr(U*B)*Lg(i(D)/2);const ne=c-a,he=B-U,be=1+.015*At(m-50,2)/Lr(20+At(m-50,2)),fe=1+.045*z,ye=1+.015*z*_,le=30*fC(-At((w-275)/25,2)),De=-(2*Lr(At(z,7)/(At(z,7)+At(25,7))))*Lg(2*i(le)),Ne=Lr(At(ne/(n*be),2)+At(he/(r*fe),2)+At(D/(o*ye),2)+De*(he/(r*fe))*(D/(o*ye)));return dC(0,cC(100,Ne))}function hC(e,t,n="lab"){e=new te(e),t=new te(t);const r=e.get(n),o=t.get(n);let s=0;for(let i in r){const a=(r[i]||0)-(o[i]||0);s+=a*a}return Math.sqrt(s)}const pC=(...e)=>{try{return new te(...e),!0}catch{return!1}},vC={cool(){return Fl([Be.hsl(180,1,.9),Be.hsl(250,.7,.4)])},hot(){return Fl(["#000","#f00","#ff0","#fff"]).mode("rgb")}},Pd={OrRd:["#fff7ec","#fee8c8","#fdd49e","#fdbb84","#fc8d59","#ef6548","#d7301f","#b30000","#7f0000"],PuBu:["#fff7fb","#ece7f2","#d0d1e6","#a6bddb","#74a9cf","#3690c0","#0570b0","#045a8d","#023858"],BuPu:["#f7fcfd","#e0ecf4","#bfd3e6","#9ebcda","#8c96c6","#8c6bb1","#88419d","#810f7c","#4d004b"],Oranges:["#fff5eb","#fee6ce","#fdd0a2","#fdae6b","#fd8d3c","#f16913","#d94801","#a63603","#7f2704"],BuGn:["#f7fcfd","#e5f5f9","#ccece6","#99d8c9","#66c2a4","#41ae76","#238b45","#006d2c","#00441b"],YlOrBr:["#ffffe5","#fff7bc","#fee391","#fec44f","#fe9929","#ec7014","#cc4c02","#993404","#662506"],YlGn:["#ffffe5","#f7fcb9","#d9f0a3","#addd8e","#78c679","#41ab5d","#238443","#006837","#004529"],Reds:["#fff5f0","#fee0d2","#fcbba1","#fc9272","#fb6a4a","#ef3b2c","#cb181d","#a50f15","#67000d"],RdPu:["#fff7f3","#fde0dd","#fcc5c0","#fa9fb5","#f768a1","#dd3497","#ae017e","#7a0177","#49006a"],Greens:["#f7fcf5","#e5f5e0","#c7e9c0","#a1d99b","#74c476","#41ab5d","#238b45","#006d2c","#00441b"],YlGnBu:["#ffffd9","#edf8b1","#c7e9b4","#7fcdbb","#41b6c4","#1d91c0","#225ea8","#253494","#081d58"],Purples:["#fcfbfd","#efedf5","#dadaeb","#bcbddc","#9e9ac8","#807dba","#6a51a3","#54278f","#3f007d"],GnBu:["#f7fcf0","#e0f3db","#ccebc5","#a8ddb5","#7bccc4","#4eb3d3","#2b8cbe","#0868ac","#084081"],Greys:["#ffffff","#f0f0f0","#d9d9d9","#bdbdbd","#969696","#737373","#525252","#252525","#000000"],YlOrRd:["#ffffcc","#ffeda0","#fed976","#feb24c","#fd8d3c","#fc4e2a","#e31a1c","#bd0026","#800026"],PuRd:["#f7f4f9","#e7e1ef","#d4b9da","#c994c7","#df65b0","#e7298a","#ce1256","#980043","#67001f"],Blues:["#f7fbff","#deebf7","#c6dbef","#9ecae1","#6baed6","#4292c6","#2171b5","#08519c","#08306b"],PuBuGn:["#fff7fb","#ece2f0","#d0d1e6","#a6bddb","#67a9cf","#3690c0","#02818a","#016c59","#014636"],Viridis:["#440154","#482777","#3f4a8a","#31678e","#26838f","#1f9d8a","#6cce5a","#b6de2b","#fee825"],Spectral:["#9e0142","#d53e4f","#f46d43","#fdae61","#fee08b","#ffffbf","#e6f598","#abdda4","#66c2a5","#3288bd","#5e4fa2"],RdYlGn:["#a50026","#d73027","#f46d43","#fdae61","#fee08b","#ffffbf","#d9ef8b","#a6d96a","#66bd63","#1a9850","#006837"],RdBu:["#67001f","#b2182b","#d6604d","#f4a582","#fddbc7","#f7f7f7","#d1e5f0","#92c5de","#4393c3","#2166ac","#053061"],PiYG:["#8e0152","#c51b7d","#de77ae","#f1b6da","#fde0ef","#f7f7f7","#e6f5d0","#b8e186","#7fbc41","#4d9221","#276419"],PRGn:["#40004b","#762a83","#9970ab","#c2a5cf","#e7d4e8","#f7f7f7","#d9f0d3","#a6dba0","#5aae61","#1b7837","#00441b"],RdYlBu:["#a50026","#d73027","#f46d43","#fdae61","#fee090","#ffffbf","#e0f3f8","#abd9e9","#74add1","#4575b4","#313695"],BrBG:["#543005","#8c510a","#bf812d","#dfc27d","#f6e8c3","#f5f5f5","#c7eae5","#80cdc1","#35978f","#01665e","#003c30"],RdGy:["#67001f","#b2182b","#d6604d","#f4a582","#fddbc7","#ffffff","#e0e0e0","#bababa","#878787","#4d4d4d","#1a1a1a"],PuOr:["#7f3b08","#b35806","#e08214","#fdb863","#fee0b6","#f7f7f7","#d8daeb","#b2abd2","#8073ac","#542788","#2d004b"],Set2:["#66c2a5","#fc8d62","#8da0cb","#e78ac3","#a6d854","#ffd92f","#e5c494","#b3b3b3"],Accent:["#7fc97f","#beaed4","#fdc086","#ffff99","#386cb0","#f0027f","#bf5b17","#666666"],Set1:["#e41a1c","#377eb8","#4daf4a","#984ea3","#ff7f00","#ffff33","#a65628","#f781bf","#999999"],Set3:["#8dd3c7","#ffffb3","#bebada","#fb8072","#80b1d3","#fdb462","#b3de69","#fccde5","#d9d9d9","#bc80bd","#ccebc5","#ffed6f"],Dark2:["#1b9e77","#d95f02","#7570b3","#e7298a","#66a61e","#e6ab02","#a6761d","#666666"],Paired:["#a6cee3","#1f78b4","#b2df8a","#33a02c","#fb9a99","#e31a1c","#fdbf6f","#ff7f00","#cab2d6","#6a3d9a","#ffff99","#b15928"],Pastel2:["#b3e2cd","#fdcdac","#cbd5e8","#f4cae4","#e6f5c9","#fff2ae","#f1e2cc","#cccccc"],Pastel1:["#fbb4ae","#b3cde3","#ccebc5","#decbe4","#fed9a6","#ffffcc","#e5d8bd","#fddaec","#f2f2f2"]},Ug=Object.keys(Pd),jg=new Map(Ug.map(e=>[e.toLowerCase(),e])),gC=typeof Proxy=="function"?new Proxy(Pd,{get(e,t){const n=t.toLowerCase();if(jg.has(n))return e[jg.get(n)]},getOwnPropertyNames(){return Object.getOwnPropertyNames(Ug)}}):Pd,bC=(...e)=>{e=Ue(e,"cmyk");const[t,n,r,o]=e,s=e.length>4?e[4]:1;return o===1?[0,0,0,s]:[t>=1?0:255*(1-t)*(1-o),n>=1?0:255*(1-n)*(1-o),r>=1?0:255*(1-r)*(1-o),s]},{max:Bg}=Math,yC=(...e)=>{let[t,n,r]=Ue(e,"rgb");t=t/255,n=n/255,r=r/255;const o=1-Bg(t,Bg(n,r)),s=o<1?1/(1-o):0,i=(1-t-o)*s,a=(1-n-o)*s,l=(1-r-o)*s;return[i,a,l,o]};te.prototype.cmyk=function(){return yC(this._rgb)},Object.assign(Be,{cmyk:(...e)=>new te(...e,"cmyk")}),Re.format.cmyk=bC,Re.autodetect.push({p:2,test:(...e)=>{if(e=Ue(e,"cmyk"),Ge(e)==="array"&&e.length===4)return"cmyk"}});const wC=(...e)=>{const t=Ue(e,"hsla");let n=Us(e)||"lsa";return t[0]=xn(t[0]||0)+"deg",t[1]=xn(t[1]*100)+"%",t[2]=xn(t[2]*100)+"%",n==="hsla"||t.length>3&&t[3]<1?(t[3]="/ "+(t.length>3?t[3]:1),n="hsla"):t.length=3,`${n.substr(0,3)}(${t.join(" ")})`},_C=(...e)=>{const t=Ue(e,"lab");let n=Us(e)||"lab";return t[0]=xn(t[0])+"%",t[1]=xn(t[1]),t[2]=xn(t[2]),n==="laba"||t.length>3&&t[3]<1?t[3]="/ "+(t.length>3?t[3]:1):t.length=3,`lab(${t.join(" ")})`},kC=(...e)=>{const t=Ue(e,"lch");let n=Us(e)||"lab";return t[0]=xn(t[0])+"%",t[1]=xn(t[1]),t[2]=isNaN(t[2])?"none":xn(t[2])+"deg",n==="lcha"||t.length>3&&t[3]<1?t[3]="/ "+(t.length>3?t[3]:1):t.length=3,`lch(${t.join(" ")})`},xC=(...e)=>{const t=Ue(e,"lab");return t[0]=xn(t[0]*100)+"%",t[1]=md(t[1]),t[2]=md(t[2]),t.length>3&&t[3]<1?t[3]="/ "+(t.length>3?t[3]:1):t.length=3,`oklab(${t.join(" ")})`},Fg=(...e)=>{const[t,n,r,...o]=Ue(e,"rgb"),[s,i,a]=Cd(t,n,r),[l,u,c]=kg(s,i,a);return[l,u,c,...o.length>0&&o[0]<1?[o[0]]:[]]},EC=(...e)=>{const t=Ue(e,"lch");return t[0]=xn(t[0]*100)+"%",t[1]=md(t[1]),t[2]=isNaN(t[2])?"none":xn(t[2])+"deg",t.length>3&&t[3]<1?t[3]="/ "+(t.length>3?t[3]:1):t.length=3,`oklch(${t.join(" ")})`},{round:Nd}=Math,CC=(...e)=>{const t=Ue(e,"rgba");let n=Us(e)||"rgb";if(n.substr(0,3)==="hsl")return wC(Eg(t),n);if(n.substr(0,3)==="lab"){const r=Ji();Vr("d50");const o=_C(gd(t),n);return Vr(r),o}if(n.substr(0,3)==="lch"){const r=Ji();Vr("d50");const o=kC(_d(t),n);return Vr(r),o}return n.substr(0,5)==="oklab"?xC(Cd(t)):n.substr(0,5)==="oklch"?EC(Fg(t)):(t[0]=Nd(t[0]),t[1]=Nd(t[1]),t[2]=Nd(t[2]),(n==="rgba"||t.length>3&&t[3]<1)&&(t[3]="/ "+(t.length>3?t[3]:1),n="rgba"),`${n.substr(0,3)}(${t.slice(0,n==="rgb"?3:4).join(" ")})`)},qg=(...e)=>{e=Ue(e,"lch");const[t,n,r,...o]=e,[s,i,a]=_g(t,n,r),[l,u,c]=Ed(s,i,a);return[l,u,c,...o.length>0&&o[0]<1?[o[0]]:[]]},Rr=/((?:-?\d+)|(?:-?\d+(?:\.\d+)?)%|none)/.source,Hn=/((?:-?(?:\d+(?:\.\d*)?|\.\d+)%?)|none)/.source,zl=/((?:-?(?:\d+(?:\.\d*)?|\.\d+)%)|none)/.source,En=/\s*/.source,zs=/\s+/.source,Id=/\s*,\s*/.source,Wl=/((?:-?(?:\d+(?:\.\d*)?|\.\d+)(?:deg)?)|none)/.source,Ws=/\s*(?:\/\s*((?:[01]|[01]?\.\d+)|\d+(?:\.\d+)?%))?/.source,Hg=new RegExp("^rgba?\\("+En+[Rr,Rr,Rr].join(zs)+Ws+"\\)$"),zg=new RegExp("^rgb\\("+En+[Rr,Rr,Rr].join(Id)+En+"\\)$"),Wg=new RegExp("^rgba\\("+En+[Rr,Rr,Rr,Hn].join(Id)+En+"\\)$"),Zg=new RegExp("^hsla?\\("+En+[Wl,zl,zl].join(zs)+Ws+"\\)$"),Gg=new RegExp("^hsl?\\("+En+[Wl,zl,zl].join(Id)+En+"\\)$"),Yg=/^hsla\(\s*(-?\d+(?:\.\d+)?),\s*(-?\d+(?:\.\d+)?)%\s*,\s*(-?\d+(?:\.\d+)?)%\s*,\s*([01]|[01]?\.\d+)\)$/,Kg=new RegExp("^lab\\("+En+[Hn,Hn,Hn].join(zs)+Ws+"\\)$"),Qg=new RegExp("^lch\\("+En+[Hn,Hn,Wl].join(zs)+Ws+"\\)$"),Xg=new RegExp("^oklab\\("+En+[Hn,Hn,Hn].join(zs)+Ws+"\\)$"),Jg=new RegExp("^oklch\\("+En+[Hn,Hn,Wl].join(zs)+Ws+"\\)$"),{round:e0}=Math,Zs=e=>e.map((t,n)=>n<=2?es(e0(t),0,255):t),Ot=(e,t=0,n=100,r=!1)=>(typeof e=="string"&&e.endsWith("%")&&(e=parseFloat(e.substring(0,e.length-1))/100,r?e=t+(e+1)*.5*(n-t):e=t+e*(n-t)),+e),en=(e,t)=>e==="none"?t:e,Td=e=>{if(e=e.toLowerCase().trim(),e==="transparent")return[0,0,0,0];let t;if(Re.format.named)try{return Re.format.named(e)}catch{}if((t=e.match(Hg))||(t=e.match(zg))){let n=t.slice(1,4);for(let o=0;o<3;o++)n[o]=+Ot(en(n[o],0),0,255);n=Zs(n);const r=t[4]!==void 0?+Ot(t[4],0,1):1;return n[3]=r,n}if(t=e.match(Wg)){const n=t.slice(1,5);for(let r=0;r<4;r++)n[r]=+Ot(n[r],0,255);return n}if((t=e.match(Zg))||(t=e.match(Gg))){const n=t.slice(1,4);n[0]=+en(n[0].replace("deg",""),0),n[1]=+Ot(en(n[1],0),0,100)*.01,n[2]=+Ot(en(n[2],0),0,100)*.01;const r=Zs(xd(n)),o=t[4]!==void 0?+Ot(t[4],0,1):1;return r[3]=o,r}if(t=e.match(Yg)){const n=t.slice(1,4);n[1]*=.01,n[2]*=.01;const r=xd(n);for(let o=0;o<3;o++)r[o]=e0(r[o]);return r[3]=+t[4],r}if(t=e.match(Kg)){const n=t.slice(1,4);n[0]=Ot(en(n[0],0),0,100),n[1]=Ot(en(n[1],0),-125,125,!0),n[2]=Ot(en(n[2],0),-125,125,!0);const r=Ji();Vr("d50");const o=Zs(pd(n));Vr(r);const s=t[4]!==void 0?+Ot(t[4],0,1):1;return o[3]=s,o}if(t=e.match(Qg)){const n=t.slice(1,4);n[0]=Ot(n[0],0,100),n[1]=Ot(en(n[1],0),0,150,!1),n[2]=+en(n[2].replace("deg",""),0);const r=Ji();Vr("d50");const o=Zs(wd(n));Vr(r);const s=t[4]!==void 0?+Ot(t[4],0,1):1;return o[3]=s,o}if(t=e.match(Xg)){const n=t.slice(1,4);n[0]=Ot(en(n[0],0),0,1),n[1]=Ot(en(n[1],0),-.4,.4,!0),n[2]=Ot(en(n[2],0),-.4,.4,!0);const r=Zs(Ed(n)),o=t[4]!==void 0?+Ot(t[4],0,1):1;return r[3]=o,r}if(t=e.match(Jg)){const n=t.slice(1,4);n[0]=Ot(en(n[0],0),0,1),n[1]=Ot(en(n[1],0),0,.4,!1),n[2]=+en(n[2].replace("deg",""),0);const r=Zs(qg(n)),o=t[4]!==void 0?+Ot(t[4],0,1):1;return r[3]=o,r}};Td.test=e=>Hg.test(e)||Zg.test(e)||Kg.test(e)||Qg.test(e)||Xg.test(e)||Jg.test(e)||zg.test(e)||Wg.test(e)||Gg.test(e)||Yg.test(e)||e==="transparent",te.prototype.css=function(e){return CC(this._rgb,e)};const AC=(...e)=>new te(...e,"css");Be.css=AC,Re.format.css=Td,Re.autodetect.push({p:5,test:(e,...t)=>{if(!t.length&&Ge(e)==="string"&&Td.test(e))return"css"}}),Re.format.gl=(...e)=>{const t=Ue(e,"rgba");return t[0]*=255,t[1]*=255,t[2]*=255,t};const OC=(...e)=>new te(...e,"gl");Be.gl=OC,te.prototype.gl=function(){const e=this._rgb;return[e[0]/255,e[1]/255,e[2]/255,e[3]]},te.prototype.hex=function(e){return bg(this._rgb,e)};const SC=(...e)=>new te(...e,"hex");Be.hex=SC,Re.format.hex=gg,Re.autodetect.push({p:4,test:(e,...t)=>{if(!t.length&&Ge(e)==="string"&&[3,4,5,6,7,8,9].indexOf(e.length)>=0)return"hex"}});const{log:Zl}=Math,t0=e=>{const t=e/100;let n,r,o;return t<66?(n=255,r=t<6?0:-155.25485562709179-.44596950469579133*(r=t-2)+104.49216199393888*Zl(r),o=t<20?0:-254.76935184120902+.8274096064007395*(o=t-10)+115.67994401066147*Zl(o)):(n=351.97690566805693+.114206453784165*(n=t-55)-40.25366309332127*Zl(n),r=325.4494125711974+.07943456536662342*(r=t-50)-28.0852963507957*Zl(r),o=255),[n,r,o,1]},{round:PC}=Math,NC=(...e)=>{const t=Ue(e,"rgb"),n=t[0],r=t[2];let o=1e3,s=4e4;const i=.4;let a;for(;s-o>i;){a=(s+o)*.5;const l=t0(a);l[2]/l[0]>=r/n?s=a:o=a}return PC(a)};te.prototype.temp=te.prototype.kelvin=te.prototype.temperature=function(){return NC(this._rgb)};const $d=(...e)=>new te(...e,"temp");Object.assign(Be,{temp:$d,kelvin:$d,temperature:$d}),Re.format.temp=Re.format.kelvin=Re.format.temperature=t0,te.prototype.oklch=function(){return Fg(this._rgb)},Object.assign(Be,{oklch:(...e)=>new te(...e,"oklch")}),Re.format.oklch=qg,Re.autodetect.push({p:2,test:(...e)=>{if(e=Ue(e,"oklch"),Ge(e)==="array"&&e.length===3)return"oklch"}}),Object.assign(Be,{analyze:Pg,average:DE,bezier:jE,blend:qn,brewer:gC,Color:te,colors:js,contrast:iC,contrastAPCA:uC,cubehelix:XE,deltaE:mC,distance:hC,input:Re,interpolate:Bs,limits:Ng,mix:Bs,random:nC,scale:Fl,scales:vC,valid:pC});const IC=[{name:"Slate",id:"slate",reference:!1,shades:[{number:50,hexcode:"#f8fafc"},{number:100,hexcode:"#f1f5f9"},{number:200,hexcode:"#e2e8f0"},{number:300,hexcode:"#cbd5e1"},{number:400,hexcode:"#94a3b8"},{number:500,hexcode:"#64748b"},{number:600,hexcode:"#475569"},{number:700,hexcode:"#334155"},{number:800,hexcode:"#1e293b"},{number:900,hexcode:"#0f172a"},{number:950,hexcode:"#020617"}]},{name:"Gray",id:"gray",reference:!1,shades:[{number:50,hexcode:"#f9fafb"},{number:100,hexcode:"#f3f4f6"},{number:200,hexcode:"#e5e7eb"},{number:300,hexcode:"#d1d5db"},{number:400,hexcode:"#9ca3af"},{number:500,hexcode:"#6b7280"},{number:600,hexcode:"#4b5563"},{number:700,hexcode:"#374151"},{number:800,hexcode:"#1f2937"},{number:900,hexcode:"#111827"},{number:950,hexcode:"#030712"}]},{name:"Zinc",id:"zinc",reference:!1,shades:[{number:50,hexcode:"#fafafa"},{number:100,hexcode:"#f4f4f5"},{number:200,hexcode:"#e4e4e7"},{number:300,hexcode:"#d4d4d8"},{number:400,hexcode:"#a1a1aa"},{number:500,hexcode:"#71717a"},{number:600,hexcode:"#52525b"},{number:700,hexcode:"#3f3f46"},{number:800,hexcode:"#27272a"},{number:900,hexcode:"#18181b"},{number:950,hexcode:"#09090b"}]},{name:"Neutral",id:"neutral",reference:!1,shades:[{number:50,hexcode:"#fafafa"},{number:100,hexcode:"#f5f5f5"},{number:200,hexcode:"#e5e5e5"},{number:300,hexcode:"#d4d4d4"},{number:400,hexcode:"#a3a3a3"},{number:500,hexcode:"#737373"},{number:600,hexcode:"#525252"},{number:700,hexcode:"#404040"},{number:800,hexcode:"#262626"},{number:900,hexcode:"#171717"},{number:950,hexcode:"#0a0a0a"}]},{name:"Stone",id:"stone",reference:!1,shades:[{number:50,hexcode:"#fafaf9"},{number:100,hexcode:"#f5f5f4"},{number:200,hexcode:"#e7e5e4"},{number:300,hexcode:"#d6d3d1"},{number:400,hexcode:"#a8a29e"},{number:500,hexcode:"#78716c"},{number:600,hexcode:"#57534e"},{number:700,hexcode:"#44403c"},{number:800,hexcode:"#292524"},{number:900,hexcode:"#1c1917"},{number:950,hexcode:"#0c0a09"}]},{name:"Red",id:"red",reference:!0,shades:[{number:50,hexcode:"#fef2f2"},{number:100,hexcode:"#fee2e2"},{number:200,hexcode:"#fecaca"},{number:300,hexcode:"#fca5a5"},{number:400,hexcode:"#f87171"},{number:500,hexcode:"#ef4444"},{number:600,hexcode:"#dc2626"},{number:700,hexcode:"#b91c1c"},{number:800,hexcode:"#991b1b"},{number:900,hexcode:"#7f1d1d"},{number:950,hexcode:"#450a0a"}]},{name:"Orange",id:"orange",reference:!0,shades:[{number:50,hexcode:"#fff7ed"},{number:100,hexcode:"#ffedd5"},{number:200,hexcode:"#fed7aa"},{number:300,hexcode:"#fdba74"},{number:400,hexcode:"#fb923c"},{number:500,hexcode:"#f97316"},{number:600,hexcode:"#ea580c"},{number:700,hexcode:"#c2410c"},{number:800,hexcode:"#9a3412"},{number:900,hexcode:"#7c2d12"},{number:950,hexcode:"#431407"}]},{name:"Amber",id:"amber",reference:!0,shades:[{number:50,hexcode:"#fffbeb"},{number:100,hexcode:"#fef3c7"},{number:200,hexcode:"#fde68a"},{number:300,hexcode:"#fcd34d"},{number:400,hexcode:"#fbbf24"},{number:500,hexcode:"#f59e0b"},{number:600,hexcode:"#d97706"},{number:700,hexcode:"#b45309"},{number:800,hexcode:"#92400e"},{number:900,hexcode:"#78350f"},{number:950,hexcode:"#451a03"}]},{name:"Yellow",id:"yellow",reference:!0,shades:[{number:50,hexcode:"#fefce8"},{number:100,hexcode:"#fef9c3"},{number:200,hexcode:"#fef08a"},{number:300,hexcode:"#fde047"},{number:400,hexcode:"#facc15"},{number:500,hexcode:"#eab308"},{number:600,hexcode:"#ca8a04"},{number:700,hexcode:"#a16207"},{number:800,hexcode:"#854d0e"},{number:900,hexcode:"#713f12"},{number:950,hexcode:"#422006"}]},{name:"Lime",id:"lime",reference:!0,shades:[{number:50,hexcode:"#f7fee7"},{number:100,hexcode:"#ecfccb"},{number:200,hexcode:"#d9f99d"},{number:300,hexcode:"#bef264"},{number:400,hexcode:"#a3e635"},{number:500,hexcode:"#84cc16"},{number:600,hexcode:"#65a30d"},{number:700,hexcode:"#4d7c0f"},{number:800,hexcode:"#3f6212"},{number:900,hexcode:"#365314"},{number:950,hexcode:"#1a2e05"}]},{name:"Green",id:"green",reference:!0,shades:[{number:50,hexcode:"#f0fdf4"},{number:100,hexcode:"#dcfce7"},{number:200,hexcode:"#bbf7d0"},{number:300,hexcode:"#86efac"},{number:400,hexcode:"#4ade80"},{number:500,hexcode:"#22c55e"},{number:600,hexcode:"#16a34a"},{number:700,hexcode:"#15803d"},{number:800,hexcode:"#166534"},{number:900,hexcode:"#14532d"},{number:950,hexcode:"#052e16"}]},{name:"Emerald",id:"emerald",reference:!0,shades:[{number:50,hexcode:"#ecfdf5"},{number:100,hexcode:"#d1fae5"},{number:200,hexcode:"#a7f3d0"},{number:300,hexcode:"#6ee7b7"},{number:400,hexcode:"#34d399"},{number:500,hexcode:"#10b981"},{number:600,hexcode:"#059669"},{number:700,hexcode:"#047857"},{number:800,hexcode:"#065f46"},{number:900,hexcode:"#064e3b"},{number:950,hexcode:"#022c22"}]},{name:"Teal",id:"teal",reference:!0,shades:[{number:50,hexcode:"#f0fdfa"},{number:100,hexcode:"#ccfbf1"},{number:200,hexcode:"#99f6e4"},{number:300,hexcode:"#5eead4"},{number:400,hexcode:"#2dd4bf"},{number:500,hexcode:"#14b8a6"},{number:600,hexcode:"#0d9488"},{number:700,hexcode:"#0f766e"},{number:800,hexcode:"#115e59"},{number:900,hexcode:"#134e4a"},{number:950,hexcode:"#042f2e"}]},{name:"Cyan",id:"cyan",reference:!0,shades:[{number:50,hexcode:"#ecfeff"},{number:100,hexcode:"#cffafe"},{number:200,hexcode:"#a5f3fc"},{number:300,hexcode:"#67e8f9"},{number:400,hexcode:"#22d3ee"},{number:500,hexcode:"#06b6d4"},{number:600,hexcode:"#0891b2"},{number:700,hexcode:"#0e7490"},{number:800,hexcode:"#155e75"},{number:900,hexcode:"#164e63"},{number:950,hexcode:"#083344"}]},{name:"Sky",id:"sky",reference:!0,shades:[{number:50,hexcode:"#f0f9ff"},{number:100,hexcode:"#e0f2fe"},{number:200,hexcode:"#bae6fd"},{number:300,hexcode:"#7dd3fc"},{number:400,hexcode:"#38bdf8"},{number:500,hexcode:"#0ea5e9"},{number:600,hexcode:"#0284c7"},{number:700,hexcode:"#0369a1"},{number:800,hexcode:"#075985"},{number:900,hexcode:"#0c4a6e"},{number:950,hexcode:"#082f49"}]},{name:"Blue",id:"blue",reference:!0,shades:[{number:50,hexcode:"#eff6ff"},{number:100,hexcode:"#dbeafe"},{number:200,hexcode:"#bfdbfe"},{number:300,hexcode:"#93c5fd"},{number:400,hexcode:"#60a5fa"},{number:500,hexcode:"#3b82f6"},{number:600,hexcode:"#2563eb"},{number:700,hexcode:"#1d4ed8"},{number:800,hexcode:"#1e40af"},{number:900,hexcode:"#1e3a8a"},{number:950,hexcode:"#172554"}]},{name:"Indigo",id:"indigo",reference:!0,shades:[{number:50,hexcode:"#eef2ff"},{number:100,hexcode:"#e0e7ff"},{number:200,hexcode:"#c7d2fe"},{number:300,hexcode:"#a5b4fc"},{number:400,hexcode:"#818cf8"},{number:500,hexcode:"#6366f1"},{number:600,hexcode:"#4f46e5"},{number:700,hexcode:"#4338ca"},{number:800,hexcode:"#3730a3"},{number:900,hexcode:"#312e81"},{number:950,hexcode:"#1e1b4b"}]},{name:"Violet",id:"violet",reference:!0,shades:[{number:50,hexcode:"#f5f3ff"},{number:100,hexcode:"#ede9fe"},{number:200,hexcode:"#ddd6fe"},{number:300,hexcode:"#c4b5fd"},{number:400,hexcode:"#a78bfa"},{number:500,hexcode:"#8b5cf6"},{number:600,hexcode:"#7c3aed"},{number:700,hexcode:"#6d28d9"},{number:800,hexcode:"#5b21b6"},{number:900,hexcode:"#4c1d95"},{number:950,hexcode:"#2e1065"}]},{name:"Purple",id:"purple",reference:!0,shades:[{number:50,hexcode:"#faf5ff"},{number:100,hexcode:"#f3e8ff"},{number:200,hexcode:"#e9d5ff"},{number:300,hexcode:"#d8b4fe"},{number:400,hexcode:"#c084fc"},{number:500,hexcode:"#a855f7"},{number:600,hexcode:"#9333ea"},{number:700,hexcode:"#7e22ce"},{number:800,hexcode:"#6b21a8"},{number:900,hexcode:"#581c87"},{number:950,hexcode:"#3b0764"}]},{name:"Fuchsia",id:"fuchsia",reference:!0,shades:[{number:50,hexcode:"#fdf4ff"},{number:100,hexcode:"#fae8ff"},{number:200,hexcode:"#f5d0fe"},{number:300,hexcode:"#f0abfc"},{number:400,hexcode:"#e879f9"},{number:500,hexcode:"#d946ef"},{number:600,hexcode:"#c026d3"},{number:700,hexcode:"#a21caf"},{number:800,hexcode:"#86198f"},{number:900,hexcode:"#701a75"},{number:950,hexcode:"#4a044e"}]},{name:"Pink",id:"pink",reference:!0,shades:[{number:50,hexcode:"#fdf2f8"},{number:100,hexcode:"#fce7f3"},{number:200,hexcode:"#fbcfe8"},{number:300,hexcode:"#f9a8d4"},{number:400,hexcode:"#f472b6"},{number:500,hexcode:"#ec4899"},{number:600,hexcode:"#db2777"},{number:700,hexcode:"#be185d"},{number:800,hexcode:"#9d174d"},{number:900,hexcode:"#831843"},{number:950,hexcode:"#500724"}]},{name:"Rose",id:"rose",reference:!0,shades:[{number:50,hexcode:"#fff1f2"},{number:100,hexcode:"#ffe4e6"},{number:200,hexcode:"#fecdd3"},{number:300,hexcode:"#fda4af"},{number:400,hexcode:"#fb7185"},{number:500,hexcode:"#f43f5e"},{number:600,hexcode:"#e11d48"},{number:700,hexcode:"#be123c"},{number:800,hexcode:"#9f1239"},{number:900,hexcode:"#881337"},{number:950,hexcode:"#4c0519"}]}];function TC(e){const r=IC.filter(i=>i.reference).map(i=>({...i,shades:i.shades.map(a=>({...a,delta:Be.deltaE(e,a.hexcode)}))})).map(i=>({...i,closestShade:i.shades.reduce((a,l)=>a.delta<l.delta?a:l)})).reduce((i,a)=>i.closestShade.delta<a.closestShade.delta?i:a),o=r.shades.map(i=>({...i,lightnessDifference:Math.abs(Be(i.hexcode).get("hsl.l")-e.get("hsl.l"))})),s=o.reduce((i,a)=>i.lightnessDifference<a.lightnessDifference?i:a);return{...r,shades:o,closestShade:s}}function $C(e){const t=Be(e),n=TC(t),r=t.get("hsl.h"),o=Be(n.closestShade.hexcode).get("hsl.h"),s=r-o,i=s===0?o.toString():s>0?`+${s}`:s.toString(),a=t.get("hsl.s")/Be(n.closestShade.hexcode).get("hsl.s");return n.shades.map(u=>{if(u.number===n.closestShade.number)return{number:u.number,hexcode:t.hex()};let c=Be(u.hexcode);const d=c.get("hsl.s")*a;return c=c.set("hsl.s",d),c=c.set("hsl.h",i),{number:u.number,hexcode:c.hex()}})}const n0=Symbol("keep-working");class ts extends Error{constructor(){super(),this.name="IndiscriminateError"}}const DC={},MC={fill:"none",viewBox:"0 0 24 24"};function VC(e,t){return h(),k("svg",MC,[...t[0]||(t[0]=[$("circle",{class:"opacity-25",cx:"12",cy:"12",r:"10",stroke:"currentColor","stroke-width":"4"},null,-1),$("path",{class:"opacity-75",fill:"currentColor",d:"M4 12a8 8 0 018-8V0C5.373 0 0 5.373 0 12h4zm2 5.291A7.962 7.962 0 014 12H0c0 3.042 1.135 5.824 3 7.938l3-2.647z"},null,-1)])])}const It=Dr(DC,[["render",VC],["__scopeId","data-v-687bcaf0"]]),LC={"aria-hidden":"true"},ea=ae({__name:"MoonButtonBase",props:{label:{},successLabel:{},errorLabel:{},icon:{},variant:{},size:{},working:{type:Boolean},success:{type:Boolean},error:{type:Boolean},disabled:{type:Boolean},type:{}},emits:["click"],setup(e){const t=e,n=oe(qe),r=F(()=>t.success?t.successLabel??t.label:t.error?t.errorLabel??t.label:t.label),o=F(()=>t.variant?t.variant==="secondary"?`secondary-${(n==null?void 0:n.value.theme.buttons)??"light"}`:t.variant:"primary");return(s,i)=>{var a,l;return h(),j(rc(e.type==="anchor"?"a":"button"),{class:"moonbase:button",type:e.type||"button",disabled:e.success||e.error||e.working||e.disabled,"data-success":e.success||void 0,"data-error":e.error||void 0,"data-working":e.working||void 0,"data-variant":o.value,"data-size":e.size||"large","data-corners":(a=v(n))==null?void 0:a.theme.corners,"data-background":(l=v(n))==null?void 0:l.theme.colors.background,"data-icon-visible":e.working||e.success||e.error||!!e.icon||void 0,onClick:i[0]||(i[0]=u=>s.$emit("click",u))},{default:x(()=>[$("div",LC,[e.working?(h(),j(It,{key:0})):e.success?(h(),j(v(Hk),{key:1})):e.error?(h(),j(v(Gk),{key:2})):e.icon?(h(),j(rc(e.icon),{key:3})):q("",!0)]),S(" "+N(r.value),1)]),_:1},8,["type","disabled","data-success","data-error","data-working","data-variant","data-size","data-corners","data-background","data-icon-visible"])}}}),Oe=ae({__name:"MoonButton",props:{handler:{type:Function},label:{},success:{},error:{},icon:{},variant:{},size:{},noReset:{type:Boolean},disabled:{type:Boolean}},setup(e){const t=e,n=V(!1),r=V(!1),o=V(!1);let s;xt(()=>s==null?void 0:s());async function i(){try{const a=t.handler();if(a instanceof Promise){if(n.value=!0,await a===n0){s=Mp(()=>n.value=!1);return}n.value=!1,r.value=!0,await Zt(2500),t.noReset||(r.value=!1)}}catch(a){if(n.value=!1,a instanceof ts)return;o.value=!0,await Zt(2500),o.value=!1}}return(a,l)=>(h(),j(ea,{label:e.label,working:n.value,"success-label":e.success,success:r.value,"error-label":e.error,error:o.value,icon:e.icon,disabled:e.disabled,variant:e.variant,size:e.size,onClick:i},null,8,["label","working","success-label","success","error-label","error","icon","disabled","variant","size"]))}}),RC={},UC={class:"moonbase:text-body"};function jC(e,t){return h(),k("span",UC,[qt(e.$slots,"default")])}const ze=Dr(RC,[["render",jC]]),BC={},FC={class:"moonbase:text-subtext"};function qC(e,t){return h(),k("span",FC,[qt(e.$slots,"default")])}const ke=Dr(BC,[["render",qC]]),HC={},zC={class:"moonbase:text-subtext-bold"};function WC(e,t){return h(),k("span",zC,[qt(e.$slots,"default")])}const ot=Dr(HC,[["render",WC]]),ZC=/not[^a-z0-9]*a[^a-z0-9]*brand/i,GC=[{name:"Edge",pattern:/Edg(?:e|A|iOS)?\/([\d.]+)/},{name:"Opera",pattern:/(?:OPR|OPiOS|OPT)\/([\d.]+)/},{name:"Vivaldi",pattern:/Vivaldi\/([\d.]+)/},{name:"Samsung Internet",pattern:/SamsungBrowser\/([\d.]+)/},{name:"Firefox",pattern:/(?:Firefox|FxiOS)\/([\d.]+)/},{name:"Chrome",pattern:/(?:Chrome|CriOS)\/([\d.]+)/},{name:"Safari",pattern:/Version\/([\d.]+)\s.*\bSafari\//}],YC={"10.0":"10 or 11","6.3":"8.1","6.2":"8","6.1":"7"};function Gs(e,t=2){if(!e)return"";const n=e.split(".").slice(0,t);for(;n.length>1&&n[n.length-1]==="0";)n.pop();return n.join(".")}function KC(e){const t=(e??[]).filter(n=>!ZC.test(n.brand));return t.find(n=>n.brand!=="Chromium")??t[0]}function QC(e){const t=Number.parseInt((e==null?void 0:e.split(".")[0])??"",10);return Number.isNaN(t)?"":t>=13?"11":t>=1?"10":"8.1 or older"}function XC({userAgent:e,hints:t}){const n=KC((t==null?void 0:t.fullVersionList)??(t==null?void 0:t.brands));if(n)return`${n.brand} ${Gs(n.version)}`.trim();for(const{name:r,pattern:o}of GC){const s=o.exec(e);if(s)return`${r} ${Gs(s[1])}`.trim()}return"Unknown browser"}function JC({userAgent:e,hints:t,maxTouchPoints:n=0}){if(t!=null&&t.platform&&t.platform!=="Unknown")return t.platform==="Windows"?`Windows ${QC(t.platformVersion)}`.trim():`${t.platform} ${Gs(t.platformVersion)}`.trim();const r=/Windows NT ([\d.]+)/.exec(e);if(r)return`Windows ${YC[r[1]]??r[1]}`;const o=/(?:iPhone|iPad|iPod).*?OS (\d+(?:[_.]\d+)*)/.exec(e);if(o)return`${e.includes("iPad")?"iPadOS":"iOS"} ${Gs(o[1].replace(/_/g,"."))}`;const s=/Mac OS X (\d+(?:[_.]\d+)*)/.exec(e);if(s)return n>1?"iPadOS":`macOS ${Gs(s[1].replace(/_/g,"."))}`;const i=/Android (\d+(?:\.\d+)*)/.exec(e);return i?`Android ${Gs(i[1])}`:/CrOS/.test(e)?"Chrome OS":/Linux|X11/.test(e)?"Linux":"Unknown OS"}const e4="Unknown";function r0(){const e=Math.round((window.devicePixelRatio||1)*100)/100;return`${window.innerWidth} × ${window.innerHeight} · ${e}× DPR`}function t4(){const e=-new Date().getTimezoneOffset(),t=e<0?"-":"+",n=Math.abs(e),r=`UTC${t}${String(Math.floor(n/60)).padStart(2,"0")}:${String(n%60).padStart(2,"0")}`,o=Intl.DateTimeFormat().resolvedOptions().timeZone;return o?`${o} (${r})`:r}function n4(e){var d,f;const t=oe(bt),n=V((d=navigator.userAgentData)==null?void 0:d.toJSON());(f=navigator.userAgentData)==null||f.getHighEntropyValues(["platformVersion","model","fullVersionList"]).then(m=>{n.value={...n.value,...m}}).catch(()=>{});const r=V(r0()),o=()=>r.value=r0();window.addEventListener("resize",o),vs(()=>window.removeEventListener("resize",o));const s=F(()=>{var g,b;const p=[((g=n.value)==null?void 0:g.mobile)??/Mobi|Android|iPhone|iPod/.test(navigator.userAgent)?"Mobile":"Desktop"];return(b=n.value)!=null&&b.model&&p.push(n.value.model),p.join(" · ")}),i=F(()=>(t==null?void 0:t.configuration.endpoint.replace(/^https?:\/\//,""))??"Not configured"),a=F(()=>t!=null&&t.loadedUser.value?t.currentUser.value?"Signed in":"Guest":"Loading…"),l=t4(),u=F(()=>{var m;return[{label:"Browser",value:XC({userAgent:navigator.userAgent,hints:n.value})},{label:"System",value:JC({userAgent:navigator.userAgent,hints:n.value,maxTouchPoints:navigator.maxTouchPoints})},{label:"Device",value:s.value},{label:"Viewport",value:r.value},{label:"Language",value:navigator.language||e4},{label:"Time zone",value:l},{label:"Storefront",value:i.value},{label:"Account",value:a.value},{label:"Customer",value:((m=t==null?void 0:t.currentUser.value)==null?void 0:m.id)??"—"},{label:"Cart",value:(t==null?void 0:t.currentOrder.value.id)??"None"}]}),c=F(()=>[`Moonbase Embedded Storefront ${e}`,`Captured ${new Date().toISOString()}`,"",...u.value.map(m=>`${m.label}: ${m.value}`)].join(`
42
- `));return{entries:u,copy:()=>navigator.clipboard.writeText(c.value)}}const r4={class:"moonbase:about"},o4={key:0,class:"moonbase:about-prerelease","data-testid":"moonbase-about-prerelease"},s4={class:"moonbase:about-diagnostics","data-testid":"moonbase-about-diagnostics"},i4=["title"],a4=ae({__name:"About",setup(e){const t=ge(),n=typeof window<"u"&&window.__moonbaseTestVersionOverride||"3.8.0",r=F(()=>{const i=n.match(/-(next)-/);if(i)return i[1];const a=n.match(/-(pr-\d+)-/);return a?a[1]:null}),{entries:o,copy:s}=n4(n);return(i,a)=>(h(),k("div",r4,[a[3]||(a[3]=Jh('<svg viewBox="0 0 512 512" height="56px" width="56px"><g><path fill="currentColor" d="m493.17795,174.6135c6.257,75.3 -30.577,150.948 -100.579,190.758c-66.292,37.697 -145.001,33.405 -205.402,-4.415c0.409,-1.248 0.638,-2.577 0.638,-3.96c0,-7.026 -5.717,-12.743 -12.743,-12.743c-2.876,0 -5.524,0.969 -7.659,2.582c-18.813,-15.259 -35.159,-34.207 -47.856,-56.534c-54.663,-96.122 -21.054,-218.358 75.069,-273.021a201.218,201.218 0 0 1 33.302,-15.124c-32.428,3.667 -64.663,13.809 -94.827,30.962c-104.526,59.443 -149.511,183.241 -113.473,293.249c-3.376,3.057 -5.513,7.459 -5.513,12.362c0,9.207 7.491,16.698 16.698,16.698c0.136,0 0.267,-0.017 0.401,-0.02a252.205,252.205 0 0 0 8.683,16.691c67.869,119.344 219.635,161.073 338.98,93.204a250.416,250.416 0 0 0 32.893,-22.333c1.045,0.331 2.157,0.513 3.311,0.513c6.047,0 10.968,-4.921 10.968,-10.968c0,-0.605 -0.063,-1.196 -0.157,-1.775c69.545,-64.988 96.008,-165.054 67.266,-256.126m-446.526,25.112a5.071,5.071 0 0 1 -5.066,-5.066a5.072,5.072 0 0 1 5.066,-5.067a5.073,5.073 0 0 1 5.066,5.067a5.072,5.072 0 0 1 -5.066,5.066m-15.819,153.944c-8.238,0 -14.94,-6.702 -14.94,-14.94c0,-8.239 6.702,-14.941 14.94,-14.941c8.239,0 14.941,6.702 14.941,14.941c-0.001,8.238 -6.703,14.94 -14.941,14.94m144.258,-7.659c6.057,0 10.985,4.928 10.985,10.986c0,6.058 -4.928,10.985 -10.985,10.985c-6.058,0 -10.986,-4.928 -10.986,-10.985c0.001,-6.059 4.928,-10.986 10.986,-10.986m70.829,133.004c-5.079,0 -9.21,-4.132 -9.21,-9.21c0,-5.079 4.131,-9.21 9.21,-9.21c5.078,0 9.209,4.131 9.209,9.21c0,5.078 -4.13,9.21 -9.209,9.21m169.18,-37.289c-5.078,0 -9.209,-4.132 -9.209,-9.21s4.131,-9.209 9.209,-9.209s9.21,4.131 9.21,9.209s-4.132,9.21 -9.21,9.21"></path><path fill="currentColor" d="m144.78195,275.9675c46.746,82.201 151.278,110.943 233.48,64.197c59.864,-34.044 91.363,-98.736 86.013,-163.13a170.094,170.094 0 0 0 -5.515,-31.052c-23.045,0.567 -63.864,10.137 -104.194,61.671c-52.045,66.5 -186.285,49.153 -228.855,17.372c3.503,17.443 9.796,34.632 19.071,50.942m233.513,-65.677a8.663,8.663 0 1 1 -8.663,8.663a8.662,8.662 0 0 1 8.663,-8.663m-37.006,62.618c7.02,0 12.712,5.691 12.712,12.712s-5.692,12.712 -12.712,12.712c-7.021,0 -12.712,-5.691 -12.712,-12.712s5.691,-12.712 12.712,-12.712m-102.544,12.712a6.78,6.78 0 1 1 0,13.56a6.78,6.78 0 0 1 0,-13.56"></path><ellipse fill="currentColor" ry="7.3075" rx="7.3075" cy="152.05851" cx="251.33138"></ellipse><ellipse fill="currentColor" ry="5.35076" rx="5.35076" cy="210.31151" cx="204.89499"></ellipse><ellipse fill="currentColor" ry="12.09273" rx="12.09273" cy="200.15625" cx="302.28597"></ellipse></g></svg>',1)),y(v(qv),{as:"h3"},{default:x(()=>[...a[0]||(a[0]=[S(" Moonbase Embedded Storefront ",-1)])]),_:1}),y(ke,{"data-testid":"moonbase-about-version"},{default:x(()=>[S(" Version "+N(v(n)),1)]),_:1}),r.value?(h(),k("span",o4," Prerelease · "+N(r.value)+" channel ",1)):q("",!0),y(ze,null,{default:x(()=>[...a[1]||(a[1]=[S(" This store is using the ",-1),$("a",{href:"https://moonbase.sh/solutions/payments",target:"_blank"},"Moonbase Embedded Storefront",-1),S(" module to accept payments, provide authentication and power software licensing. ",-1)])]),_:1}),y(Oe,{label:"Close",variant:"primary",handler:()=>v(t).reset()},null,8,["handler"]),$("div",s4,[$("header",null,[y(ot,null,{default:x(()=>[...a[2]||(a[2]=[S("Diagnostics",-1)])]),_:1}),y(Oe,{label:"Copy",success:"Copied",error:"Couldn't copy",variant:"subtle",size:"small",icon:v(zk),handler:v(s)},null,8,["icon","handler"])]),$("dl",null,[(h(!0),k(ee,null,ct(v(o),l=>(h(),k(ee,{key:l.label},[$("dt",null,N(l.label),1),$("dd",{title:l.value},N(l.value),9,i4)],64))),128))])])]))}}),l4={class:"moonbase:checkbox"},u4=["id","name","checked","disabled","aria-invalid","aria-describedby"],c4={class:"moonbase:checkbox-description"},d4=["for"],f4=["id"],m4=["id"],lo=ae({inheritAttrs:!1,__name:"MoonCheckbox",props:{name:{},label:{},error:{},hint:{},disabled:{type:Boolean},modelValue:{type:Boolean}},emits:["update:modelValue"],setup(e){return(t,n)=>(h(),k("div",l4,[$("input",gc({id:`mb-${e.name}`,type:"checkbox",name:`mb-${e.name}`,checked:e.modelValue,disabled:e.disabled,"aria-invalid":!!e.error,"aria-describedby":e.error?`mb-${e.name}-error`:e.hint?`mb-${e.name}-hint`:void 0},t.$attrs,{onChange:n[0]||(n[0]=r=>{var o;return t.$emit("update:modelValue",(o=r.target)==null?void 0:o.checked)})}),null,16,u4),$("div",c4,[$("label",{for:`mb-${e.name}`},N(e.label),9,d4),e.error?(h(),k("p",{key:0,id:`mb-${e.name}-error`,"data-type":"error"},N(e.error),9,f4)):e.hint?(h(),k("p",{key:1,id:`mb-${e.name}-hint`},N(e.hint),9,m4)):q("",!0)])]))}}),h4=["data-corners","data-variant"],p4={class:"moonbase:card-content"},rn=ae({__name:"MoonCard",setup(e){const t=oe(qe);return(n,r)=>{var o,s;return h(),k("div",{class:"moonbase:card","data-corners":(o=v(t))==null?void 0:o.theme.corners,"data-variant":(s=v(t))==null?void 0:s.theme.cards},[$("div",p4,[qt(n.$slots,"default")]),qt(n.$slots,"addon")],8,h4)}}}),v4=["data-corners"],g4=["href"],b4=["src"],y4=["src"],w4={key:2,class:"moonbase:image-placeholder"},Mt=ae({__name:"ProductIcon",props:{url:{},href:{},size:{}},setup(e){const t=oe(qe);return(n,r)=>{var o;return h(),k("div",{class:"moonbase:product-icon",style:Gr({width:`${e.size}px`,height:`${e.size}px`}),"data-corners":(o=v(t))==null?void 0:o.theme.corners},[e.href&&e.url?(h(),k("a",{key:0,href:e.href},[$("img",{src:e.url,alt:""},null,8,b4)],8,g4)):e.url?(h(),k("img",{key:1,src:e.url,alt:""},null,8,y4)):(h(),k("div",w4,[y(v(Wk))]))],12,v4)}}}),_4={},k4={class:"moonbase:text-title"};function x4(e,t){return h(),k("h4",k4,[qt(e.$slots,"default")])}const ur=Dr(_4,[["render",x4]]),E4={class:"moonbase:product-card-content"},C4=["href"],o0=ae({__name:"ProductCard",props:{product:{}},setup(e){const t=oe(qe);return(n,r)=>(h(),j(rn,{class:"moonbase:product-card"},{default:x(()=>{var o,s,i;return[y(Mt,{url:e.product.iconUrl,size:72},null,8,["url"]),$("div",E4,[y(ur,null,{default:x(()=>{var a;return[S(N((a=e.product)==null?void 0:a.name),1)]}),_:1}),(o=e.product)!=null&&o.tagline?(h(),j(ke,{key:0},{default:x(()=>{var a;return[S(N((a=e.product)==null?void 0:a.tagline),1)]}),_:1})):q("",!0),(s=v(t))!=null&&s.activation.websiteLink.enabled&&e.product.website?(h(),k("a",{key:1,class:"moonbase:product-card-website",href:e.product.website,target:"_blank",rel:"noopener noreferrer"},[y(v(qc)),S(" "+N((i=v(t))==null?void 0:i.activation.websiteLink.label),1)],8,C4)):q("",!0),qt(n.$slots,"description")]),qt(n.$slots,"default")]}),_:3}))}}),A4={class:"moonbase:auto-activation"},O4={key:0,class:"moonbase:loader"},S4={key:1,class:"moonbase:loader"},P4={key:2,class:"moonbase:loader"},N4={key:3},I4={key:1,class:"moonbase:loader"},T4={key:2,class:"moonbase:loader"},$4={key:3,class:"moonbase:loader"},D4={key:4,class:"moonbase:auto-activation-content"},M4={key:0,class:"moonbase:auto-activation-option"},V4={class:"moonbase:auto-activation-cta"},L4={key:1,class:"moonbase:auto-activation-option"},R4={class:"moonbase:auto-activation-cta"},U4={key:2,class:"moonbase:auto-activation-option"},j4={key:3,class:"moonbase:auto-activation-option"},B4={class:"moonbase:auto-activation-cta"},F4={key:4,class:"moonbase:auto-activation-option"},q4={key:4,class:"moonbase:auto-activation-cta"},H4={key:5,class:"moonbase:auto-activation-cta"},z4=ae({__name:"AutoActivation",setup(e){const t=ge(),{user:n,loaded:r,signOut:o}=Ze(),s=oe(zn),i=Fn(),a=t.getParameter("token"),{activationRequest:l,loading:u,fulfilling:c,completing:d,error:f,fulfillLicense:m,fulfillTrial:p}=Y_(a),g=oe(bt),b=V(!1);We(l,_=>{var D;!c.value&&!d.value&&(_==null?void 0:_.status)===Sn.Requested&&((D=_==null?void 0:_.licenseEligibility)!=null&&D.eligible)&&m(),(_==null?void 0:_.status)===Sn.Completed&&(s==null||s(Ce.ActivatedProduct,{product:_.product,fulfillmentType:_.fulfillmentType,user:n.value}))},{deep:!0});const O=F(()=>{if(l.value)return v(Ui(l.value.product.id))}),P=F(()=>O.value&&O.value.defaultVariation),I=F(()=>{var _,D,ne;return!!((D=(_=l.value)==null?void 0:_.trialEligibility)!=null&&D.requiresNewsletterOptIn)&&!((ne=n.value)!=null&&ne.communicationPreferences.newsletterOptIn)}),{currency:U,addToCart:B,setQuantity:z}=Un();function L(){t.show(G.Product,W.ViewProduct,{product_id:l.value.product.id})}function T(){t.enqueue(G.Activation,W.ActivateProduct,t.parameters??void 0),t.show(G.Authentication,W.SignIn)}async function A(){const _={...n.value};await o(),s==null||s(Ce.SignedOut,{user:_})}function E(){if(!O.value)return;const _=B(O.value);z(_,1),t.enqueue(G.Activation,W.ActivateProduct,t.parameters),t.show(G.Cart,W.ViewCart)}function w(){var _;t.enqueue(G.Activation,W.ActivateProduct,{...t.parameters,product_id:((_=l.value)==null?void 0:_.product.id)??""}),n.value?t.show(G.Customer,W.RedeemVoucher):t.show(G.Redeem,W.RedeemVoucher)}return(_,D)=>{var ne,he,be,fe,ye,le,Ie;return h(),k("div",A4,[v(u)||!v(r)||!((ne=v(g))!=null&&ne.loadedStorefront.value)?(h(),k("div",O4,[y(It)])):v(f)?(h(),k("div",S4,[y(Ye,null,{default:x(()=>[...D[1]||(D[1]=[S(" Uh oh ",-1)])]),_:1}),y(ze,null,{default:x(()=>[S(N(v(f)),1)]),_:1})])):v(l)?(h(),k("div",N4,[v(l).product?(h(),j(o0,{key:0,product:v(l).product},null,8,["product"])):q("",!0),((he=v(l))==null?void 0:he.status)===v(Sn).Cancelled?(h(),k("div",I4,[y(Ye,null,{default:x(()=>[...D[4]||(D[4]=[S(" Uh oh ",-1)])]),_:1}),y(ze,null,{default:x(()=>[...D[5]||(D[5]=[S(" This activation request was cancelled, open your app to try again. ",-1)])]),_:1})])):v(c)||v(d)?(h(),k("div",T4,[y(It),y(ze,null,{default:x(()=>[S(" Activating "+N(v(l).product.name)+"... ",1)]),_:1})])):((be=v(l))==null?void 0:be.status)===v(Sn).Completed?(h(),k("div",$4,[y(Ye,null,{default:x(()=>[...D[6]||(D[6]=[S(" Done! ",-1)])]),_:1}),y(ze,null,{default:x(()=>[...D[7]||(D[7]=[S(" Your product is activated. ",-1),$("br",null,null,-1),S(" You may close this window and return to the app. ",-1)])]),_:1})])):(h(),k("div",D4,[P.value?(h(),k("div",M4,[y(Ye,null,{default:x(()=>[...D[8]||(D[8]=[S(" Option 1: Purchase product ",-1)])]),_:1}),y(ze,null,{default:x(()=>[S(" Buy a copy of "+N(O.value.name)+" for ",1),$("strong",null,N(v(i)(O.value.defaultVariation.price[v(U)],v(U))),1),D[9]||(D[9]=S(". ",-1))]),_:1}),$("span",V4,[y(Oe,{label:"Purchase",variant:"primary",handler:()=>E()},null,8,["handler"])])])):q("",!0),v(n)?!v(n).ownedProducts||!((fe=v(n).ownedProducts)!=null&&fe.includes(v(l).product.id))&&!v(n).subscribedProducts||!((ye=v(n).subscribedProducts)!=null&&ye.includes(v(l).product.id))?(h(),k("div",U4,[y(Ye,null,{default:x(()=>[S(" Option "+N(P.value?"2":"1")+": Use license ",1)]),_:1}),y(ze,null,{default:x(()=>[...D[11]||(D[11]=[S(" You don't own any licenses for this product. ",-1)])]),_:1}),y(ke,{class:"moonbase:auto-activation-signed-in"},{default:x(()=>[S(" Signed in as "+N(v(n).email)+". Not you? ",1),$("button",{type:"button",onClick:A}," Sign out ")]),_:1})])):(le=v(n).ownedProducts)!=null&&le.includes(v(l).product.id)||(Ie=v(n).subscribedProducts)!=null&&Ie.includes(v(l).product.id)?(h(),k("div",j4,[y(Ye,null,{default:x(()=>[S(" Option "+N(P.value?"2":"1")+": Use license ",1)]),_:1}),y(ze,null,{default:x(()=>[...D[12]||(D[12]=[S(" You don't have enough free seats on your licenses to activate this device. Either free up a seat or purchase additional licenses. ",-1)])]),_:1}),$("span",B4,[y(Oe,{label:"Licenses",variant:"secondary",handler:()=>L()},null,8,["handler"])])])):q("",!0):(h(),k("div",L4,[y(Ye,null,{default:x(()=>[S(" Option "+N(P.value?"2":"1")+": Use license ",1)]),_:1}),y(ze,null,{default:x(()=>[...D[10]||(D[10]=[S(" Please sign in to use a license for this product. ",-1)])]),_:1}),$("span",R4,[y(Oe,{label:"Sign in",variant:"secondary",handler:()=>T()},null,8,["handler"])])])),v(l).trialEligibility?(h(),k("div",F4,[y(Ye,null,{default:x(()=>[S(" Option "+N(P.value?"3":"2")+": Start trial ",1)]),_:1}),v(l).trialEligibility.eligible&&v(l).trialEligibility.requiresAccount&&!v(n)?(h(),j(ze,{key:0},{default:x(()=>[...D[13]||(D[13]=[S(" You need to be signed in to start a trial for this product. ",-1)])]),_:1})):v(l).trialEligibility.eligible&&v(l).trialEligibility.existing?(h(),j(ze,{key:1},{default:x(()=>[S(" You are eligible for a "+N(v(l).trialEligibility.numberOfDaysPerProduct)+" day trial of which you have "+N(v(l).trialEligibility.numberOfDaysRemaining)+" days remaining. ",1)]),_:1})):v(l).trialEligibility.eligible?(h(),j(ze,{key:2},{default:x(()=>[S(" You are eligible for a "+N(v(l).trialEligibility.numberOfDaysPerProduct)+" day trial. ",1)]),_:1})):(h(),j(ze,{key:3},{default:x(()=>[...D[14]||(D[14]=[S(" This device or product is not eligible for a trial. ",-1)])]),_:1})),v(l).trialEligibility.eligible&&v(l).trialEligibility.requiresAccount&&!v(n)?(h(),k("span",q4,[y(Oe,{label:"Sign in",variant:"secondary",handler:()=>T()},null,8,["handler"])])):v(l).trialEligibility.eligible?(h(),k("span",H4,[I.value?(h(),j(lo,{key:0,modelValue:b.value,"onUpdate:modelValue":D[0]||(D[0]=De=>b.value=De),label:"Receive updates and offers by email",hint:"Subscribing to the newsletter is required to start a trial.",name:"newsletter-opt-in"},null,8,["modelValue"])):q("",!0),y(Oe,{label:"Start trial",variant:"secondary",disabled:I.value&&!b.value,handler:()=>v(p)(b.value)},null,8,["disabled","handler"])])):q("",!0)])):q("",!0),D[16]||(D[16]=$("div",{class:"moonbase:grow"},null,-1)),y(ke,{class:"moonbase:auto-activation-redeem"},{default:x(()=>[D[15]||(D[15]=S(" Have a voucher code? ",-1)),$("button",{type:"button",onClick:w}," Redeem now ")]),_:1})]))])):(h(),k("div",P4,[y(Ye,null,{default:x(()=>[...D[2]||(D[2]=[S(" Uh oh ",-1)])]),_:1}),y(ze,null,{default:x(()=>[...D[3]||(D[3]=[S(" Could not find activation request ",-1)])]),_:1})]))])}}}),W4={},Z4={class:"moonbase:text-caption"};function G4(e,t){return h(),k("span",Z4,[qt(e.$slots,"default")])}const St=Dr(W4,[["render",G4]]),Y4=["data-corners"],K4=["accept"],Q4={"data-error":""},X4=ae({__name:"DeviceTokenInput",props:{error:{}},emits:["input","error"],setup(e,{emit:t}){const n=t,r=oe(qe),o=V(!1),s=F(()=>{let u=".dt";return r!=null&&r.value&&(u=r.value.activation.deviceTokenFileExtension),u.startsWith(".")?u:`.${u}`});function i(u){const c=new FileReader;c.onload=d=>{var f;n("input",(f=d.target)==null?void 0:f.result)},c.readAsText(u)}function a(u){var d;o.value=!1;const c=(d=u.dataTransfer)==null?void 0:d.files;if(!c||c.length!==1){n("error",new Error("Only one file can be uploaded at a time!"));return}i(c[0])}function l(u){const c=u.target,d=c==null?void 0:c.files;if(!d||d.length!==1){n("error",new Error("Only one file can be uploaded at a time!"));return}i(d[0])}return(u,c)=>{var d,f;return h(),k("div",{class:li(["moonbase:device-token-input",{"moonbase:device-token-input--hovering":o.value}]),"data-corners":(d=v(r))==null?void 0:d.theme.corners,onDrag:c[0]||(c[0]=Nr(()=>{},["prevent","stop"])),onDragstart:c[1]||(c[1]=Nr(()=>{},["prevent","stop"])),onDragend:c[2]||(c[2]=Nr(m=>o.value=!1,["prevent","stop"])),onDragover:c[3]||(c[3]=Nr(m=>o.value=!0,["prevent","stop"])),onDragenter:c[4]||(c[4]=Nr(m=>o.value=!0,["prevent","stop"])),onDragleave:c[5]||(c[5]=Nr(m=>o.value=!1,["prevent","stop"])),onDrop:Nr(a,["prevent","stop"])},[y(v(Zk)),c[6]||(c[6]=$("label",{for:"fallback-input"},[$("span",{class:"moonbase:underline"},"Choose a machine file"),S(" or drag here to upload ")],-1)),$("input",{id:"fallback-input",type:"file",accept:s.value,class:"moonbase:sr-only",onChange:l},null,40,K4),$("p",Q4,N((f=e.error)==null?void 0:f.message),1)],42,Y4)}}}),J4={class:"moonbase:manual-activation"},eA={key:1,class:"moonbase:loader"},tA={key:2,class:"moonbase:manual-activation-content"},nA=ae({__name:"ManualActivation",setup(e){const t=oe(qe),{activateProduct:n}=Zo(),r=$a.Offline,o=V(0),s=V(null),i=V(null);async function a(l){o.value=1;try{i.value=await n(l,r),o.value=2}catch(u){s.value=u,o.value=0}}return(l,u)=>(h(),k("div",J4,[y(ze,null,{default:x(()=>[...u[2]||(u[2]=[S(" Upload your machine file here to get a license file for activating offline devices. The machine file can be generated in the installed app. ",-1)])]),_:1}),y(As,{mode:"out-in",name:"moonbase:slide-left"},{default:x(()=>[o.value===0?(h(),j(X4,{key:0,error:s.value,onInput:u[0]||(u[0]=c=>a(c)),onError:u[1]||(u[1]=c=>s.value=c)},null,8,["error"])):o.value===1?(h(),k("div",eA,[y(It)])):o.value===2&&i.value?(h(),k("div",tA,[y(Ye,null,{default:x(()=>[...u[3]||(u[3]=[S(" Success! ",-1)])]),_:1}),y(ze,null,{default:x(()=>[...u[4]||(u[4]=[S(" Your license can be downloaded below: ",-1)])]),_:1}),i.value.license.product?(h(),j(o0,{key:0,product:i.value.license.product},{description:x(()=>[y(St,null,{default:x(()=>[S(N(i.value.license.activeNumberOfActivations)+" of "+N(i.value.license.maxNumberOfActivations)+" devices activated ",1)]),_:1})]),default:x(()=>{var c;return[y(Ls,{href:i.value.url,target:"_blank",download:((c=v(t))==null?void 0:c.activation.licenseTokenFileName)??"license-file.mb",class:"moonbase:manual-activation-download-button"},{default:x(()=>[y(v(wv))]),_:1},8,["href","download"])]}),_:1},8,["product"])):q("",!0),u[5]||(u[5]=$("div",null,null,-1)),u[6]||(u[6]=$("div",null,null,-1))])):q("",!0)]),_:1})]))}}),rA={class:"moonbase:activation"},oA=ae({__name:"Activation",setup(e){const t=ge();return(n,r)=>(h(),k("div",rA,[v(t).getParameter("token")?(h(),j(z4,{key:0})):(h(),j(nA,{key:1}))]))}}),sA=["disabled"],s0=Symbol("form-state"),hn=ae({__name:"MoonForm",props:{handler:{type:Function},disabled:{type:Boolean},noReset:{type:Boolean}},setup(e){const t=e,n=V(!1),r=V(!1),o=V(!1),s=F(()=>t.disabled||n.value||r.value||!1);nn(s0,{working:n,isSuccess:r,isError:o,disabled:s});async function i(){n.value=!0;try{await t.handler(),n.value=!1,r.value=!0,await Zt(2500),t.noReset||(r.value=!1)}catch{n.value=!1,o.value=!0,await Zt(2500),o.value=!1}}return(a,l)=>(h(),k("form",{disabled:s.value,onSubmit:Nr(i,["prevent"])},[qt(a.$slots,"default",{working:n.value,isSuccess:r.value,isError:o.value,disabled:n.value||r.value})],40,sA))}}),iA=["hidden","data-revealable"],aA=["for"],lA={class:"moonbase:input-field"},uA=["id","type","name","placeholder","value","disabled","aria-invalid","aria-describedby","data-corners"],cA=["aria-label","aria-pressed","tabindex","disabled"],dA=["id"],fA=["id"],Tt=ae({inheritAttrs:!1,__name:"MoonInput",props:{name:{},label:{},placeholder:{},type:{},error:{},hint:{},disabled:{type:Boolean},modelValue:{},hidden:{type:Boolean},revealable:{type:Boolean}},emits:["update:modelValue"],setup(e){const t=e,n=oe(qe),r=V(!1),o=F(()=>t.revealable&&r.value?"text":t.type??"text");return(s,i)=>{var a;return h(),k("div",{class:"moonbase:input",hidden:e.hidden||void 0,"data-revealable":e.revealable||void 0},[$("label",{for:`mb-${e.name}`},N(e.label),9,aA),$("div",lA,[$("input",gc({id:`mb-${e.name}`,type:o.value,name:`mb-${e.name}`,placeholder:e.placeholder,value:e.modelValue,disabled:e.disabled,"aria-invalid":!!e.error,"aria-describedby":e.error?`mb-${e.name}-error`:e.hint?`mb-${e.name}-hint`:void 0,"data-corners":(a=v(n))==null?void 0:a.theme.corners},s.$attrs,{onInput:i[0]||(i[0]=l=>{var u;return s.$emit("update:modelValue",(u=l.target)==null?void 0:u.value)})}),null,16,uA),e.revealable?(h(),k("button",{key:0,type:"button",class:"moonbase:input-toggle","aria-label":r.value?"Hide password":"Show password","aria-pressed":r.value,tabindex:e.disabled?-1:0,disabled:e.disabled,"data-action":"toggle-password-visibility",onMousedown:i[1]||(i[1]=Nr(()=>{},["prevent"])),onClick:i[2]||(i[2]=l=>r.value=!r.value)},[r.value?(h(),j(v(Yk),{key:0})):(h(),j(v(Kk),{key:1}))],40,cA)):q("",!0)]),e.error?(h(),k("p",{key:0,id:`mb-${e.name}-error`,class:"moonbase:input-hint","data-type":"error"},N(e.error),9,dA)):e.hint?(h(),k("p",{key:1,id:`mb-${e.name}-hint`,class:"moonbase:input-hint"},N(e.hint),9,fA)):q("",!0)],8,iA)}}}),pn=ae({__name:"MoonSubmitButton",props:{label:{},success:{},error:{},variant:{},size:{}},setup(e){const{working:t,isSuccess:n,isError:r,disabled:o}=oe(s0);return(s,i)=>(h(),j(ea,{label:e.label,working:v(t),"success-label":e.success,success:v(n),"error-label":e.error,error:v(r),type:"submit",disabled:v(o),variant:e.variant,size:e.size},null,8,["label","working","success-label","success","error-label","error","disabled","variant","size"]))}}),mA=["data-visible"],hA={class:"moonbase:sign-in-actions"},pA=["data-corners"],vA=ae({__name:"SignIn",emits:["signedIn"],setup(e,{emit:t}){const n=t,r=ge(),o=Ze(),s=oe(qe),i=oe(zn),a=V(r.getParameter("email")??""),l=V(""),u=V(null);async function c(){u.value=null;try{const d=await o.signIn(a.value,l.value);i==null||i(Ce.SignedIn,{user:d}),Zt(1500).then(()=>n("signedIn",d))}catch(d){throw d instanceof wr?u.value="User not found":u.value=d.message,d}}return(d,f)=>(h(),j(hn,{handler:c,class:"moonbase:sign-in"},{default:x(()=>{var m,p,g;return[y(Tt,{modelValue:a.value,"onUpdate:modelValue":f[0]||(f[0]=b=>a.value=b),label:"Email address",name:"email",type:"email",placeholder:"Email address",autocomplete:"email",required:""},null,8,["modelValue"]),y(Tt,{modelValue:l.value,"onUpdate:modelValue":f[1]||(f[1]=b=>l.value=b),label:"Password",name:"password",type:"password",placeholder:"Password",autocomplete:"current-password",required:"",revealable:""},null,8,["modelValue"]),$("span",{class:"moonbase:error","data-visible":!!u.value||void 0},N(u.value),9,mA),y(pn,{success:"Signed in",label:"Sign in",error:"Error"}),$("div",hA,[(m=v(s))!=null&&m.auth.signUp.enabled?(h(),j(Oe,{key:0,label:"Create account",variant:"subtle",handler:()=>v(r).show(v(G).Authentication,v(W).SignUp,{email:a.value})},null,8,["handler"])):q("",!0),y(Oe,{label:"Forgot password",variant:"subtle",handler:()=>v(r).show(v(G).Authentication,v(W).ForgotPassword,{email:a.value})},null,8,["handler"])]),(p=v(s))!=null&&p.auth.signIn.hint?(h(),k("div",{key:0,class:"moonbase:sign-in-hint","data-corners":(g=v(s))==null?void 0:g.theme.corners},[y(v(Qk)),y(ke,null,{default:x(()=>[S(N(v(s).auth.signIn.hint),1)]),_:1})],8,pA)):q("",!0)]}),_:1}))}}),Gl="data:image/png;base64,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",Yl={default:[{title:"Password must be at least 6 characters long",test:e=>e.length>=6},{title:"Password must contain uppercase letters",test:e=>/[A-Z]/.test(e)},{title:"Password must contain lowercase letters",test:e=>/[a-z]/.test(e)},{title:"Password must contain at least one number",test:e=>/\d/.test(e)},{title:"Password must contain at least one special character",test:e=>/[=+\-^$*.[\\\]{}()?!@#%&/,><':;|_~`]/.test(e)}],lax:[{title:"Password must be at least 6 characters long",test:e=>e.length>=6}]},gA={key:0,class:"moonbase:loader"},bA={key:1,class:"moonbase:confirm-failure"},yA={class:"moonbase:error","data-visible":""},wA={class:"moonbase:recovery-actions"},_A={class:"moonbase:connectable-providers"},kA={class:"moonbase:provider-info"},xA=["src","alt"],EA={key:0,class:"moonbase:password-validation"},CA=["data-visible"],AA=ae({__name:"ConfirmAccount",emits:["confirmedAccount"],setup(e,{emit:t}){const n=t,r=ge(),{user:o,confirmAccount:s,resetPassword:i,signIn:a}=Ze(),l=oe(qe),u=V(!0),c=V(null),d=V(!1),f=V(null),m=V(""),p=V(!1),g=V(null),b=F(()=>{var E;return(((E=f.value)==null?void 0:E.connectedAccounts)??[]).filter(w=>!w.isConnected)}),O=F(()=>Yl[(l==null?void 0:l.value.auth.passwords)??"default"]),P=F(()=>O.value.some(E=>!E.test(m.value)));Fe(async()=>{try{const E=r.getParameter("email"),w=r.getParameter("code");if(!E||!w)throw new Error("Link is broken");const _=await s(E,w);if(c.value=_,_.status==="SignedIn"){const D=o.value;D&&((D.connectedAccounts??[]).some(he=>!he.isConnected)?(f.value=D,d.value=!0):Zt(1500).then(()=>n("confirmedAccount",D)))}}catch(E){E instanceof wr?g.value="Could not find a user to confirm":g.value=E.message}u.value=!1});async function I(){var E,w;if(g.value=null,!!((E=c.value)!=null&&E.resetPasswordToken))try{const _=r.getParameter("email");await i(_,m.value,(w=c.value)==null?void 0:w.resetPasswordToken);const D=await a(_,m.value);if((D.connectedAccounts??[]).some(he=>!he.isConnected)){f.value=D,d.value=!0;return}Zt(1500).then(()=>n("confirmedAccount",D))}catch(_){throw g.value=_.message,_}}function U(E){switch(E){case"iLok":return"iLok"}}function B(E){switch(E){case"iLok":return"Link your iLok account to streamline license delivery and activation."}}function z(E){switch(E){case"iLok":return Gl}}function L(E){const w=r.getParameter("email");r.show(G.Authentication,E,w?{email:w}:void 0)}function T(E){r.show(G.Customer,W.ConnectAccount,{provider_id:E})}function A(){f.value&&n("confirmedAccount",f.value)}return(E,w)=>(h(),j(hn,{handler:I,disabled:P.value,class:"moonbase:confirm-account"},{default:x(()=>[u.value?(h(),k("div",gA,[y(It)])):c.value?(h(),k(ee,{key:2},[d.value?(h(),k(ee,{key:0},[y(ur,null,{default:x(()=>[...w[2]||(w[2]=[S("Connect your accounts",-1)])]),_:1}),y(ze,null,{default:x(()=>[...w[3]||(w[3]=[S(" You can connect these external account providers now or later from your account settings. ",-1)])]),_:1}),$("ul",_A,[(h(!0),k(ee,null,ct(b.value,_=>(h(),k("li",{key:_.provider},[$("div",kA,[z(_.provider)?(h(),k("img",{key:0,src:z(_.provider),alt:U(_.provider),class:"moonbase:provider-logo"},null,8,xA)):q("",!0),$("div",null,[y(Ye,null,{default:x(()=>[S(N(U(_.provider)),1)]),_:2},1024),y(ke,null,{default:x(()=>[S(N(B(_.provider)),1)]),_:2},1024)])]),y(Oe,{label:"Connect",handler:()=>T(_.provider)},null,8,["handler"])]))),128))]),y(Oe,{label:"Continue",variant:"secondary",handler:A})],64)):c.value.status==="SignedIn"?(h(),k(ee,{key:1},[y(ur,null,{default:x(()=>[S(" Welcome back, "+N(c.value.name)+"! ",1)]),_:1}),y(ze,null,{default:x(()=>[...w[4]||(w[4]=[S(" You're signed in. ",-1)])]),_:1})],64)):(h(),k(ee,{key:2},[y(ur,null,{default:x(()=>[S(" Hi "+N(c.value.name)+", ",1)]),_:1}),y(ze,null,{default:x(()=>[...w[5]||(w[5]=[S(" Please create a new password for your account: ",-1)])]),_:1}),y(Tt,{"model-value":v(r).getParameter("email"),hidden:"",label:"Email address",name:"email",type:"email",placeholder:"Email address",autocomplete:"email",required:""},null,8,["model-value"]),y(Tt,{modelValue:m.value,"onUpdate:modelValue":w[0]||(w[0]=_=>m.value=_),label:"Password",name:"password",type:"password",placeholder:"Password",autocomplete:"new-password",required:"",onBlur:w[1]||(w[1]=_=>p.value=!0)},null,8,["modelValue"]),p.value&&P.value?(h(),k("div",EA,[(h(!0),k(ee,null,ct(O.value.filter(_=>!_.test(m.value)),_=>(h(),j(ke,{key:_.title,"data-error":""},{default:x(()=>[S(N(_.title),1)]),_:2},1024))),128))])):q("",!0),y(pn,{success:"Password saved",label:"Save password",error:"Error"}),$("span",{class:"moonbase:error","data-visible":!!g.value||void 0},N(g.value),9,CA)],64))],64)):(h(),k("div",bA,[$("span",yA,N(g.value),1),$("div",wA,[y(Oe,{label:"Sign in",handler:()=>L(v(W).SignIn)},null,8,["handler"]),y(Oe,{label:"Forgot password",variant:"subtle",handler:()=>L(v(W).ForgotPassword)},null,8,["handler"])])]))]),_:1},8,["disabled"]))}}),OA={class:"moonbase:confirm-email"},SA={key:0,class:"moonbase:loader"},PA={key:1,class:"moonbase:confirm-failure"},NA={class:"moonbase:error","data-visible":""},IA={class:"moonbase:recovery-actions"},TA=ae({__name:"ConfirmEmail",emits:["confirmed"],setup(e,{emit:t}){const n=t,r=ge(),{user:o,confirmEmail:s}=Ze(),i=V(!0),a=V(null);function l(u){const c=r.getParameter("email");r.show(G.Authentication,u,c?{email:c}:void 0)}return Fe(async()=>{try{const u=r.getParameter("email"),c=r.getParameter("code");if(!u||!c)throw new Error("Link is broken");await s(u,c),Zt(1500).then(()=>n("confirmed"))}catch(u){a.value=u.message}i.value=!1}),(u,c)=>(h(),k("div",OA,[i.value?(h(),k("div",SA,[y(It)])):a.value?(h(),k("div",PA,[$("span",NA,N(a.value),1),$("div",IA,[v(o)?(h(),j(Oe,{key:0,label:"Continue",handler:()=>v(r).show(v(G).Customer,v(W).ViewAccount,void 0,!0)},null,8,["handler"])):(h(),k(ee,{key:1},[y(Oe,{label:"Sign in",handler:()=>l(v(W).SignIn)},null,8,["handler"]),y(Oe,{label:"Forgot password",variant:"subtle",handler:()=>l(v(W).ForgotPassword)},null,8,["handler"])],64))])])):(h(),k(ee,{key:2},[y(Ye,null,{default:x(()=>[...c[0]||(c[0]=[S(" Success! ",-1)])]),_:1}),c[1]||(c[1]=$("p",null," Thanks for confirming your new email. ",-1)),v(o)?(h(),j(Oe,{key:0,handler:()=>v(r).show(v(G).Customer,v(W).ViewAccount,void 0,!0),label:"Continue"},null,8,["handler"])):q("",!0)],64))]))}}),$A={class:"moonbase:confirm-email-change"},DA={key:0,class:"moonbase:loader"},MA={key:1,class:"moonbase:confirm-failure"},VA={class:"moonbase:error","data-visible":""},LA={class:"moonbase:recovery-actions"},RA=ae({__name:"ConfirmEmailChange",emits:["confirmed"],setup(e,{emit:t}){const n=t,r=ge(),{user:o,confirmEmailChange:s}=Ze(),i=V(!0),a=V(null),l=V(!1);function u(){r.enqueue(G.Authentication,W.ConfirmEmailChange,r.parameters),r.show(G.Authentication,W.SignIn)}return Fe(async()=>{try{const c=r.getParameter("email"),d=r.getParameter("code");if(!c||!d)throw new Error("Link is broken");await s(c,d),Zt(1500).then(()=>n("confirmed"))}catch(c){l.value=c instanceof ds,a.value=l.value?"Your session ended before we could confirm the change":c.message}i.value=!1}),(c,d)=>{var f;return h(),k("div",$A,[i.value?(h(),k("div",DA,[y(It)])):a.value?(h(),k("div",MA,[$("span",VA,N(a.value),1),$("div",LA,[v(o)&&!l.value?(h(),j(Oe,{key:0,label:"Go to your account",handler:()=>v(r).show(v(G).Customer,v(W).ViewAccount,void 0,!0)},null,8,["handler"])):(h(),j(Oe,{key:1,label:"Sign in",handler:u}))])])):(h(),k(ee,{key:2},[$("h3",null," Hi "+N(((f=v(o))==null?void 0:f.name)||"there")+", ",1),d[0]||(d[0]=$("p",null," Thanks for confirming your new email. You can now sign in using this new address. ",-1))],64))])}}}),UA=["data-visible"],jA=ae({__name:"ForgotPassword",setup(e){const t=ge(),n=Ze(),r=V(t.getParameter("email")??""),o=V(null),s=V(!1);async function i(){o.value=null;try{await n.forgotPassword(r.value),Zt(1500).then(()=>{s.value=!0})}catch(a){throw a instanceof wr?o.value="User not found":o.value=a.message,a}}return(a,l)=>(h(),j(hn,{handler:i,class:"moonbase:sign-in","no-reset":""},{default:x(({disabled:u})=>[l[1]||(l[1]=$("p",null," Please enter your email address below. You will receive an email message with instructions on how to reset your password. ",-1)),y(Tt,{modelValue:r.value,"onUpdate:modelValue":l[0]||(l[0]=c=>r.value=c),label:"Email address",name:"email",type:"email",placeholder:"Email address",autocomplete:"email",required:"",disabled:u},null,8,["modelValue","disabled"]),y(pn,{success:"Email sent",label:"Reset password",error:"Error"}),$("span",{class:"moonbase:error","data-visible":!!o.value||void 0},N(o.value),9,UA)]),_:1}))}}),BA={key:0,class:"moonbase:password-validation"},FA=["data-visible"],qA=ae({__name:"ResetPassword",emits:["passwordReset"],setup(e,{emit:t}){const n=t,r=ge(),o=Ze(),s=oe(qe),i=F(()=>r.getParameter("email")),a=V(""),l=V(!1),u=V(null),c=F(()=>!i.value||!r.getParameter("code")),d=F(()=>Yl[(s==null?void 0:s.value.auth.passwords)??"default"]),f=F(()=>d.value.some(g=>!g.test(a.value)));function m(){r.show(G.Authentication,W.ForgotPassword,i.value?{email:i.value}:void 0)}async function p(){u.value=null;const g=r.getParameter("code");if(g)try{await o.resetPassword(i.value,a.value,g);const b=await o.signIn(i.value,a.value);Zt(1500).then(()=>n("passwordReset",b))}catch(b){throw u.value=b.message,b}}return(g,b)=>(h(),j(hn,{handler:p,disabled:f.value,class:"moonbase:reset-password"},{default:x(()=>[c.value?(h(),k(ee,{key:0},[b[2]||(b[2]=$("span",{class:"moonbase:error","data-visible":""}," Link broken, please try again ",-1)),y(Oe,{label:"Request a new link",handler:m})],64)):(h(),k(ee,{key:1},[$("h3",null," Hi "+N(i.value)+", ",1),b[3]||(b[3]=$("p",null," Please create a new password for your account: ",-1)),y(Tt,{"model-value":i.value,hidden:"",label:"Email address",name:"email",type:"email",placeholder:"Email address",autocomplete:"email",required:""},null,8,["model-value"]),y(Tt,{modelValue:a.value,"onUpdate:modelValue":b[0]||(b[0]=O=>a.value=O),label:"Password",name:"password",type:"password",placeholder:"Password",autocomplete:"new-password",required:"",revealable:"",onBlur:b[1]||(b[1]=O=>l.value=!0)},null,8,["modelValue"]),l.value&&f.value?(h(),k("div",BA,[(h(!0),k(ee,null,ct(d.value.filter(O=>!O.test(a.value)),O=>(h(),j(ke,{key:O.title,"data-error":""},{default:x(()=>[S(N(O.title),1)]),_:2},1024))),128))])):q("",!0),y(pn,{success:"Password saved",label:"Save password",error:"Error"}),$("span",{class:"moonbase:error","data-visible":!!u.value||void 0},N(u.value),9,FA),u.value?(h(),j(Oe,{key:1,label:"Request a new link",variant:"subtle",handler:m})):q("",!0)],64))]),_:1},8,["disabled"]))}}),HA={key:0,class:"moonbase:sign-up moonbase:sign-up-pending"},zA={key:0,class:"moonbase:password-validation"},WA=["href"],ZA=["href"],GA=["data-visible"],YA=ae({__name:"SignUp",emits:["signedUp"],setup(e,{emit:t}){const n=t,r=ge(),o=Ze(),s=oe(ou),i=oe(zn),a=oe(qe),l=V(""),u=V(r.getParameter("email")??""),c=V(""),d=V(!1),f=V((a==null?void 0:a.value.auth.signUp.marketingConsent)===as.OptOut||(a==null?void 0:a.value.auth.signUp.marketingConsent)===as.OptedInByDefault),m=V(null),p=V(null),g=F(()=>{var I;return cs([...(a==null?void 0:a.value.groups.signUp)??[],...((I=r.getParameter("groups"))==null?void 0:I.split(","))??[]])}),b=F(()=>Yl[(a==null?void 0:a.value.auth.passwords)??"default"]),O=F(()=>b.value.some(I=>!I.test(c.value)));async function P(){m.value=null;try{const I=await o.signUp(l.value,u.value,c.value,null,!0,!0,f.value,{groupIds:g.value});if(I.status==="activation-pending"){p.value=I.email;return}i==null||i(Ce.SignedUp,{user:I.user}),Zt(1500).then(()=>n("signedUp",I.user))}catch(I){throw m.value=I.message,I}}return(I,U)=>p.value?(h(),k("div",HA,[y(Ye,null,{default:x(()=>[...U[5]||(U[5]=[S(" Confirm your email ",-1)])]),_:1}),y(ze,null,{default:x(()=>[U[6]||(U[6]=S(" We sent a confirmation link to ",-1)),$("strong",null,N(p.value),1),U[7]||(U[7]=S(". Click it to finish creating your account. You'll be signed in automatically. ",-1))]),_:1})])):(h(),j(hn,{key:1,handler:P,disabled:O.value,class:"moonbase:sign-up"},{default:x(()=>{var B;return[y(Tt,{modelValue:l.value,"onUpdate:modelValue":U[0]||(U[0]=z=>l.value=z),label:"Full name",name:"name",type:"text",placeholder:"Full name",autocomplete:"name",required:""},null,8,["modelValue"]),y(Tt,{modelValue:u.value,"onUpdate:modelValue":U[1]||(U[1]=z=>u.value=z),label:"Email address",name:"email",type:"email",placeholder:"Email address",autocomplete:"email",required:""},null,8,["modelValue"]),y(Tt,{modelValue:c.value,"onUpdate:modelValue":U[2]||(U[2]=z=>c.value=z),label:"Password",name:"password",type:"password",placeholder:"Password",autocomplete:"current-password",required:"",revealable:"",onBlur:U[3]||(U[3]=z=>d.value=!0)},null,8,["modelValue"]),d.value&&O.value?(h(),k("div",zA,[(h(!0),k(ee,null,ct(b.value.filter(z=>!z.test(c.value)),z=>(h(),j(ke,{key:z.title,"data-error":""},{default:x(()=>[S(N(z.title),1)]),_:2},1024))),128))])):q("",!0),((B=v(a))==null?void 0:B.auth.signUp.marketingConsent)!==v(as).OptOut?(h(),j(lo,{key:1,modelValue:f.value,"onUpdate:modelValue":U[4]||(U[4]=z=>f.value=z),label:"Receive updates and offers by email",name:"newsletter-opt-in"},null,8,["modelValue"])):q("",!0),y(ke,null,{default:x(()=>{var z;return[U[8]||(U[8]=S(" By signing up, you accept our ",-1)),$("a",{href:`${v(s)}/terms-of-use`,target:"_blank",rel:"noopener"},"terms",8,WA),U[9]||(U[9]=S(" and ",-1)),$("a",{href:`${v(s)}/privacy-policy`,target:"_blank",rel:"noopener"},"privacy policy",8,ZA),U[10]||(U[10]=S(". ",-1)),((z=v(a))==null?void 0:z.auth.signUp.marketingConsent)===v(as).OptOut?(h(),k(ee,{key:0},[S(" You also agree to receive updates and offers by email. ")],64)):q("",!0)]}),_:1}),y(pn,{success:"Signed up",label:"Sign up",error:"Error"}),$("span",{class:"moonbase:error","data-visible":!!m.value||void 0},N(m.value),9,GA),y(Oe,{label:"I already have an account",variant:"subtle",handler:()=>v(r).show(v(G).Authentication,v(W).SignIn,{email:u.value})},null,8,["handler"])]}),_:1},8,["disabled"]))}}),KA={class:"moonbase:authentication"},QA={key:0,class:"moonbase:loader"},XA=ae({__name:"Authentication",setup(e){const t=ge(),{loaded:n}=Ze();return(r,o)=>(h(),k("div",KA,[y(As,{name:v(t).direction===v(Nl).Forward?"moonbase:slide-left":"moonbase:slide-right",mode:"out-in"},{default:x(()=>[v(n)?v(t).intent===v(W).SignIn?(h(),j(vA,{key:1,onSignedIn:o[0]||(o[0]=s=>v(t).dequeue())})):v(t).intent===v(W).SignUp?(h(),j(YA,{key:2,onSignedUp:o[1]||(o[1]=s=>v(t).next?v(t).dequeue():v(t).show(v(G).Customer,v(W).ViewAccount,void 0,!0))})):v(t).intent===v(W).ConfirmAccount?(h(),j(AA,{key:3,onConfirmedAccount:o[2]||(o[2]=s=>v(t).show(v(G).Customer,v(W).ViewProducts,void 0,!0))})):v(t).intent===v(W).ConfirmEmail?(h(),j(TA,{key:4})):v(t).intent===v(W).ConfirmEmailChange?(h(),j(RA,{key:5})):v(t).intent===v(W).ForgotPassword?(h(),j(jA,{key:6})):v(t).intent===v(W).ResetPassword?(h(),j(qA,{key:7,onPasswordReset:o[3]||(o[3]=s=>v(t).show(v(G).Customer,v(W).ViewAccount,void 0))})):q("",!0):(h(),k("div",QA,[y(It)]))]),_:1},8,["name"])]))}});function Kl(){const e=oe(bt);return e||console.warn("No storefront injectable"),{reportProblem:async(t,n)=>{try{await(e==null?void 0:e.client.api.fetch(`/api/customer/insights/${t}`,null,{method:"POST",body:{origin:window==null?void 0:window.location.href,...n}}))}catch{}}}}const JA=1e-6;function i0(e,t,n){if(!t.currency)return null;const r=e[t.currency];if(typeof r!="number"||!Number.isFinite(r)||r<=0)return null;const o=t.amount;return n>0&&o<=0||r-o<JA?null:{currency:t.currency,current:o,target:r,remaining:r-o,fraction:Math.min(1,Math.max(0,o/r))}}const eO=["data-corners","data-cards"],a0=ae({__name:"Counter",props:{modelValue:{}},emits:["update:modelValue"],setup(e){const t=oe(qe);return(n,r)=>{var o,s;return h(),k("div",{class:"moonbase:counter","data-corners":(o=v(t))==null?void 0:o.theme.corners,"data-cards":(s=v(t))==null?void 0:s.theme.cards},[$("button",{onClick:r[0]||(r[0]=i=>n.$emit("update:modelValue",e.modelValue-1))},[y(v(Xk))]),y(ke,null,{default:x(()=>[S(N(e.modelValue.toString().padStart(2,"0")),1)]),_:1}),$("button",{onClick:r[1]||(r[1]=i=>n.$emit("update:modelValue",e.modelValue+1))},[y(v(Jk))])],8,eO)}}});function ta(e){switch(e){case qr.Daily:return"day";case qr.Weekly:return"week";case qr.Monthly:return"month";case qr.Quarterly:return"quarter";case qr.Yearly:return"year"}throw new Error("Unknown cycle length")}function l0(e,t){var r;const n=((r=e==null?void 0:e.pricingTiers)==null?void 0:r.filter(o=>t>=o.minQuantity))??[];return n.length>0?n[n.length-1]:null}function u0(e,t,n){var s;const r=e==null?void 0:e.price[n];if(r===void 0)return;const o=(s=l0(e,t))==null?void 0:s.price[n];return o===void 0?r:Math.min(o,r)}function c0(e,t,n){var o;const r=(o=l0(e,t))==null?void 0:o.price[n];return r!==void 0&&(e==null?void 0:e.price[n])!==void 0&&r<e.price[n]}const tO={class:"moonbase:bundle-cart-item-content"},nO={key:0,class:"moonbase:bundle-cart-item-total"},rO={key:0,class:"moonbase:discount"},oO={class:"moonbase:bundle-cart-item-summary"},sO=["data-open"],iO=["data-open"],aO={class:"moonbase:bundle-cart-item-product-list-item-content"},lO={key:0,fill:"none",viewBox:"0 0 24 24","stroke-width":"1.5",stroke:"currentColor"},uO=ae({__name:"BundleCartItem",props:{lineItem:{},currency:{}},setup(e){const t=e,n=kl(t.lineItem.bundleId),r=oe(qe),o=Fn(),s=Un(),i=V(!1),a=V(null),l=F(()=>{var u;return((u=t.lineItem.price)==null?void 0:u[s.currency.value])===0});return We(i,u=>{a.value&&(a.value.style.height=u?`${a.value.scrollHeight}px`:"0px")}),(u,c)=>{var d;return h(),j(rn,{class:"moonbase:bundle-cart-item"},xi({default:x(()=>{var f,m,p,g,b,O,P,I;return[y(Mt,{url:(f=e.lineItem.bundle)==null?void 0:f.iconUrl,size:72},null,8,["url"]),$("div",tO,[y(ot,null,{default:x(()=>{var U;return[S(N((U=e.lineItem.bundle)==null?void 0:U.name),1)]}),_:1}),(m=e.lineItem.bundle)!=null&&m.tagline?(h(),j(ke,{key:0,class:"moonbase:bundle-cart-item-tagline","data-truncate":e.lineItem.variation&&e.lineItem.variation.id!==((g=(p=v(n))==null?void 0:p.defaultVariation)==null?void 0:g.id)||void 0},{default:x(()=>{var U;return[S(N((U=e.lineItem.bundle)==null?void 0:U.tagline),1)]}),_:1},8,["data-truncate"])):q("",!0),e.lineItem.variation&&e.lineItem.variation.id!==((O=(b=v(n))==null?void 0:b.defaultVariation)==null?void 0:O.id)?(h(),j(ke,{key:1,class:"moonbase:bundle-cart-item-variation"},{default:x(()=>[S(N(e.lineItem.variation.name),1)]),_:1})):q("",!0)]),e.lineItem.variation?(h(),k("div",nO,[y(Bn,null,{default:x(()=>{var U;return[e.lineItem.variation.hasDiscount||v(c0)(e.lineItem.variation,e.lineItem.quantity,e.currency)?(h(),k("span",rO,N(v(o)(e.lineItem.variation.originalPrice[e.currency]*e.lineItem.quantity,e.currency)),1)):q("",!0),S(" "+N(v(o)((v(u0)(e.lineItem.variation,e.lineItem.quantity,e.currency)??0)*e.lineItem.quantity,e.currency))+" ",1),((U=e.lineItem.variation)==null?void 0:U.recurrence.type)==="Recurring"?(h(),j(ze,{key:1},{default:x(()=>[S(" / "+N(v(ta)(e.lineItem.variation.recurrence.cycleLength)),1)]),_:1})):q("",!0)]}),_:1}),(l.value?((P=v(r))==null?void 0:P.cart.leadMagnets.quantity)==="selectable":((I=v(r))==null?void 0:I.cart.quantity)==="selectable")?(h(),j(a0,{key:0,"model-value":e.lineItem.quantity,"onUpdate:modelValue":c[0]||(c[0]=U=>v(s).setQuantity(e.lineItem,U))},null,8,["model-value"])):(h(),j(Oe,{key:1,label:"Remove",variant:"subtle-danger",size:"small",handler:()=>v(s).setQuantity(e.lineItem,0)},null,8,["handler"]))])):q("",!0)]}),_:2},[(d=v(r))!=null&&d.cart.bundles.showProducts?{name:"addon",fn:x(()=>{var f;return[$("div",oO,[e.lineItem.bundle?(h(),k("button",{key:0,onClick:c[1]||(c[1]=m=>i.value=!i.value)},[y(ot,null,{default:x(()=>{var m,p,g;return[S(N((m=e.lineItem.bundle)==null?void 0:m.products.filter(b=>b.included).length)+" ",1),(p=e.lineItem.bundle)!=null&&p.products.some(b=>!b.included)?(h(),k(ee,{key:0},[S(" of "+N((g=e.lineItem.bundle)==null?void 0:g.products.length),1)],64)):q("",!0),c[2]||(c[2]=S(" products ",-1))]}),_:1}),y(ke,null,{default:x(()=>[S(N(i.value?"Hide":"Show")+" ",1),(h(),k("svg",{"data-open":i.value||void 0,fill:"none",viewBox:"0 0 24 24","stroke-width":"1.5",stroke:"currentColor"},[...c[3]||(c[3]=[$("path",{"stroke-linecap":"round","stroke-linejoin":"round",d:"m19.5 8.25-7.5 7.5-7.5-7.5"},null,-1)])],8,sO))]),_:1})])):q("",!0)]),$("div",{ref_key:"productListRef",ref:a,class:"moonbase:bundle-cart-item-product-list",style:{height:"0px"},"data-open":i.value||void 0},[(h(!0),k(ee,null,ct(((f=e.lineItem.bundle)==null?void 0:f.products)||[],m=>(h(),k("div",{key:m.id,class:"moonbase:bundle-cart-item-product-list-item"},[y(Mt,{url:m==null?void 0:m.iconUrl,size:48},null,8,["url"]),$("div",aO,[y(ot,{"data-included":m.included||void 0},{default:x(()=>[m.included?(h(),k("svg",lO,[...c[4]||(c[4]=[$("path",{"stroke-linecap":"round","stroke-linejoin":"round",d:"m4.5 12.75 6 6 9-13.5"},null,-1)])])):q("",!0),S(" "+N(m==null?void 0:m.name),1)]),_:2},1032,["data-included"]),m.included?m!=null&&m.tagline?(h(),j(ke,{key:1},{default:x(()=>[S(N(m.tagline),1)]),_:2},1024)):q("",!0):(h(),j(ke,{key:0},{default:x(()=>[...c[5]||(c[5]=[S(" You already own this ",-1)])]),_:1}))])]))),128))],8,iO)]}),key:"0"}:void 0]),1024)}}}),cO=["data-corners"],dO=["aria-valuenow","aria-valuetext"],fO={"aria-live":"polite"},mO=ae({__name:"CartMinimumProgress",props:{shortfall:{}},setup(e){const t=e,n=oe(qe),r=Fn(),o=F(()=>`${Math.round(t.shortfall.fraction*1e3)/10}%`),s=F(()=>{const{current:a,remaining:l,currency:u}=t.shortfall;return a>0?`Spend ${r(l,u)} more to check out`:`Spend ${r(l,u)} to check out`}),i=F(()=>{const{current:a,target:l,currency:u}=t.shortfall;return`${r(a,u)} of ${r(l,u)}`});return(a,l)=>{var u;return h(),k("div",{class:"moonbase:cart-minimum","data-corners":(u=v(n))==null?void 0:u.theme.corners},[$("div",{class:"moonbase:cart-minimum-bar",role:"progressbar","aria-label":"Minimum order","aria-valuemin":0,"aria-valuemax":100,"aria-valuenow":Math.round(e.shortfall.fraction*100),"aria-valuetext":i.value},[$("div",{style:Gr({width:o.value})},null,4)],8,dO),$("span",fO,N(s.value),1)],8,cO)}}});function hO(e,t){return h(),k("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 24 24",fill:"currentColor","aria-hidden":"true","data-slot":"icon"},[$("path",{"fill-rule":"evenodd",d:"M8.603 3.799A4.49 4.49 0 0 1 12 2.25c1.357 0 2.573.6 3.397 1.549a4.49 4.49 0 0 1 3.498 1.307 4.491 4.491 0 0 1 1.307 3.497A4.49 4.49 0 0 1 21.75 12a4.49 4.49 0 0 1-1.549 3.397 4.491 4.491 0 0 1-1.307 3.497 4.491 4.491 0 0 1-3.497 1.307A4.49 4.49 0 0 1 12 21.75a4.49 4.49 0 0 1-3.397-1.549 4.49 4.49 0 0 1-3.498-1.306 4.491 4.491 0 0 1-1.307-3.498A4.49 4.49 0 0 1 2.25 12c0-1.357.6-2.573 1.549-3.397a4.49 4.49 0 0 1 1.307-3.497 4.49 4.49 0 0 1 3.497-1.307Zm7.007 6.387a.75.75 0 1 0-1.22-.872l-3.236 4.53L9.53 12.22a.75.75 0 0 0-1.06 1.06l2.25 2.25a.75.75 0 0 0 1.14-.094l3.75-5.25Z","clip-rule":"evenodd"})])}function Ql(e,t){return h(),k("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 24 24",fill:"currentColor","aria-hidden":"true","data-slot":"icon"},[$("path",{"fill-rule":"evenodd",d:"M2.25 12c0-5.385 4.365-9.75 9.75-9.75s9.75 4.365 9.75 9.75-4.365 9.75-9.75 9.75S2.25 17.385 2.25 12Zm13.36-1.814a.75.75 0 1 0-1.22-.872l-3.236 4.53L9.53 12.22a.75.75 0 0 0-1.06 1.06l2.25 2.25a.75.75 0 0 0 1.14-.094l3.75-5.25Z","clip-rule":"evenodd"})])}function pO(e,t){return h(),k("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 24 24",fill:"currentColor","aria-hidden":"true","data-slot":"icon"},[$("path",{"fill-rule":"evenodd",d:"M9.401 3.003c1.155-2 4.043-2 5.197 0l7.355 12.748c1.154 2-.29 4.5-2.599 4.5H4.645c-2.309 0-3.752-2.5-2.598-4.5L9.4 3.003ZM12 8.25a.75.75 0 0 1 .75.75v3.75a.75.75 0 0 1-1.5 0V9a.75.75 0 0 1 .75-.75Zm0 8.25a.75.75 0 1 0 0-1.5.75.75 0 0 0 0 1.5Z","clip-rule":"evenodd"})])}const vO=["data-corners","data-background","aria-label","aria-valuenow","aria-valuetext"],Dd=ae({__name:"OfferProgressBar",props:{fraction:{},label:{},valueText:{}},setup(e){const t=e,n=oe(qe),r=F(()=>`${Math.round(t.fraction*1e3)/10}%`);return(o,s)=>{var i,a;return h(),k("div",{class:"moonbase:offer-progress-bar","data-corners":(i=v(n))==null?void 0:i.theme.corners,"data-background":(a=v(n))==null?void 0:a.theme.colors.background,role:"progressbar","aria-label":e.label,"aria-valuemin":0,"aria-valuemax":100,"aria-valuenow":Math.round(e.fraction*100),"aria-valuetext":e.valueText},[$("div",{style:Gr({width:r.value})},null,4)],8,vO)}}}),gO=["data-background"],bO={class:"moonbase:cart-offer-progress-body"},yO={class:"moonbase:cart-offer-progress-heading"},wO=ae({__name:"CartOfferProgress",props:{cartOffer:{}},setup(e){const t=e,n=oe(qe),r=Fn();function o(p){const g=p.discount;return g.type==="PercentageOffDiscount"?`${Number((g.percentage*100).toFixed(2))}%`:g.name}const s=F(()=>{const{applied:p,next:g}=t.cartOffer;return p?g?"advancing":"applied":"in-progress"}),i=F(()=>(t.cartOffer.applied??t.cartOffer.next).offer),a=F(()=>i.value.discount.name),l=F(()=>i.value.discount.description),u=F(()=>i.value.targets.map(p=>p.item).slice(0,2)),c=F(()=>{var p;return((p=t.cartOffer.next)==null?void 0:p.progress.fraction)??1}),d=F(()=>{const{next:p,currency:g}=t.cartOffer;return p?p.progress.unit==="Money"?`${r(p.progress.current,g)} / ${r(p.progress.target,g)}`:`${p.progress.current} / ${p.progress.target} items`:`${o(t.cartOffer.applied.offer)} off`});function f(p){return p.unit==="Money"?`Spend ${r(p.remaining,t.cartOffer.currency)} more`:`Add ${p.remaining} more ${p.remaining===1?"item":"items"}`}const m=F(()=>{const{applied:p,next:g,currency:b}=t.cartOffer;if(p&&g)return`${o(p.offer)} off applied. ${f(g.progress)} for ${o(g.offer)} off`;if(p)return p.saving>0?`${o(p.offer)} off applied, saving ${r(p.saving,b)}`:`${o(p.offer)} off applied to your order`;const O=g.offer.scope==="Cart"?`${o(g.offer)} off your order`:"this offer";return`${f(g.progress)} to get ${O}`});return(p,g)=>(h(),j(rn,{class:"moonbase:cart-offer-progress","data-state":s.value},{default:x(()=>{var b;return[u.value.length>0?(h(),k("div",{key:0,class:"moonbase:cart-offer-progress-icons","data-background":(b=v(n))==null?void 0:b.theme.colors.background},[(h(!0),k(ee,null,ct(u.value,O=>(h(),j(Mt,{key:`${O.type}/${O.id}`,url:O.iconUrl,size:40},null,8,["url"]))),128))],8,gO)):q("",!0),$("div",bO,[$("div",yO,[y(ot,{class:"moonbase:cart-offer-progress-name"},{default:x(()=>[e.cartOffer.applied?(h(),j(v(Ql),{key:0,class:"moonbase:success-icon"})):q("",!0),S(" "+N(a.value),1)]),_:1}),y(St,{class:"moonbase:cart-offer-progress-value"},{default:x(()=>[S(N(d.value),1)]),_:1})]),l.value?(h(),j(St,{key:0,class:"moonbase:cart-offer-progress-description"},{default:x(()=>[S(N(l.value),1)]),_:1})):q("",!0),y(Dd,{fraction:c.value,label:a.value,"value-text":d.value},null,8,["fraction","label","value-text"]),y(St,{class:"moonbase:cart-offer-progress-message","aria-live":"polite"},{default:x(()=>[S(N(m.value),1)]),_:1})])]}),_:1},8,["data-state"]))}}),_O={class:"moonbase:cart-offer-target-list-item"},kO={class:"moonbase:cart-offer-target-list-item-content"},xO=["href"],EO={class:"moonbase:cart-offer-target-list-item-cta"},CO={key:0,class:"moonbase:discount"},AO=ae({__name:"OfferMultiTargetItem",props:{offer:{},target:{},variation:{}},setup(e){const t=e,n=oe(qe),r=Fn(),{addToCart:o,currency:s}=Un(),i=F(()=>t.variation.originalPrice),a=F(()=>Eu.subtract(t.variation.price,ms.apply(t.offer.discount,t.variation.price))),l=F(()=>!Zc(i.value,a.value)),u=F(()=>t.variation.name||t.target.tagline);return(c,d)=>(h(),k("div",_O,[y(Mt,{url:e.target.iconUrl,href:e.target.type==="Product"?e.target.website:void 0,size:48},null,8,["url","href"]),$("div",kO,[y(ot,null,{default:x(()=>[e.target.type==="Product"&&e.target.website?(h(),k("a",{key:0,href:e.target.website},N(e.target.name),9,xO)):(h(),k(ee,{key:1},[S(N(e.target.name),1)],64))]),_:1}),u.value?(h(),j(ke,{key:0},{default:x(()=>[S(N(u.value),1)]),_:1})):q("",!0)]),$("div",EO,[a.value?(h(),j(Bn,{key:0},{default:x(()=>[l.value&&i.value?(h(),k("span",CO,N(v(r)(i.value[v(s)],v(s))),1)):q("",!0),S(" "+N(v(r)(a.value[v(s)],v(s))),1)]),_:1})):q("",!0),y(Oe,{label:"Add to cart",variant:"secondary",size:"small",handler:()=>{var f;return v(o)(e.target,e.variation,e.offer,{bundleBehaviour:(f=v(n))==null?void 0:f.cart.bundles.onAdd})}},null,8,["handler"])])]))}}),OO={class:"moonbase:cart-offer--multi-target-icons"},SO={class:"moonbase:cart-offer--multi-target-content"},PO=["data-open"],d0=ae({__name:"OfferMultiTargetUpsell",props:{offer:{},entries:{},progress:{}},setup(e){const t=e,n=Fn(),{currency:r}=Un(),o=F(()=>{const c=t.progress;return c?c.unit==="Money"?`${n(c.current,r.value)} / ${n(c.target,r.value)}`:`${c.current} / ${c.target} items`:""}),s=F(()=>{const c=t.progress;return c?c.unit==="Money"?`Spend ${n(c.remaining,r.value)} more to unlock`:`Add ${c.remaining} more ${c.remaining===1?"item":"items"} to unlock`:""}),i=V(!1),a=V(null);We(i,c=>{a.value&&(a.value.style.height=c?`${a.value.scrollHeight}px`:"0px")});const l=F(()=>{const c=new Set;return t.entries.map(d=>d.target).filter(d=>{const f=`${d.type}/${d.id}`;return c.has(f)?!1:(c.add(f),!0)})}),u=F(()=>Math.min(96,Math.max(36,96/Math.max(1,l.value.length)*1.5)));return(c,d)=>(h(),j(rn,{class:"moonbase:cart-offer--multi-target"},xi({default:x(()=>[$("div",OO,[(h(!0),k(ee,null,ct(l.value,(f,m)=>(h(),j(Mt,{key:`${f.type}/${f.id}`,url:f.iconUrl,size:u.value,style:Gr({position:"absolute",top:`${m*(96-u.value)/Math.max(1,l.value.length-1)}px`,left:`${m*(96-u.value)/Math.max(1,l.value.length-1)}px`,zIndex:m})},null,8,["url","size","style"]))),128))]),$("div",SO,[y(ot,{class:"moonbase:cart-offer--multi-target-name"},{default:x(()=>[S(N(e.offer.discount.name),1)]),_:1}),e.offer.discount.description?(h(),j(ke,{key:0,class:"moonbase:cart-offer--multi-target-description"},{default:x(()=>[S(N(e.offer.discount.description),1)]),_:1})):q("",!0),e.progress?(h(),k(ee,{key:1},[y(Dd,{fraction:e.progress.fraction,label:e.offer.discount.name,"value-text":o.value},null,8,["fraction","label","value-text"]),y(ke,{class:"moonbase:cart-offer--multi-target-locked-message","aria-live":"polite"},{default:x(()=>[S(N(s.value),1)]),_:1})],64)):(h(),j(Oe,{key:2,label:"Select product",variant:i.value?"primary":"secondary",size:"small",handler:()=>i.value=!i.value},null,8,["variant","handler"]))])]),_:2},[e.progress?void 0:{name:"addon",fn:x(()=>[$("div",{ref_key:"targetListRef",ref:a,class:"moonbase:cart-offer-target-list",style:{height:"0px"},"data-open":i.value||void 0},[(h(!0),k(ee,null,ct(e.entries,f=>(h(),j(AO,{key:`${f.target.type}/${f.target.id}/${f.variation.id}`,target:f.target,variation:f.variation,offer:e.offer},null,8,["target","variation","offer"]))),128))],8,PO)]),key:"0"}]),1024))}}),NO={class:"moonbase:cart-offer-content"},IO=["href"],TO={key:0,class:"moonbase:cart-offer-cta"},$O={key:0,class:"moonbase:discount"},DO={class:"moonbase:cart-offer-bundle-summary"},MO=["data-open"],VO=["data-open"],LO={class:"moonbase:cart-offer-bundle-product-list-item-content"},RO={key:0,fill:"none",viewBox:"0 0 24 24","stroke-width":"1.5",stroke:"currentColor"},UO=["href"],f0=ae({__name:"OfferUpsell",props:{offer:{},target:{},variation:{},progress:{}},setup(e){const t=e,n=oe(qe),r=Fn(),{addToCart:o,currency:s}=Un(),i=V(!1),a=V(null);We(i,m=>{a.value&&(a.value.style.height=m?`${a.value.scrollHeight}px`:"0px")});const l=F(()=>t.variation.originalPrice),u=F(()=>Eu.subtract(t.variation.price,ms.apply(t.offer.discount,t.variation.price))),c=F(()=>!Zc(l.value,u.value)),d=F(()=>{const m=t.progress;return m?m.unit==="Money"?`${r(m.current,s.value)} / ${r(m.target,s.value)}`:`${m.current} / ${m.target} items`:""}),f=F(()=>{const m=t.progress;return m?m.unit==="Money"?`Spend ${r(m.remaining,s.value)} more to unlock`:`Add ${m.remaining} more ${m.remaining===1?"item":"items"} to unlock`:""});return(m,p)=>(h(),j(rn,{class:"moonbase:cart-offer"},xi({default:x(()=>[y(Mt,{url:e.target.iconUrl,href:e.target.type==="Product"?e.target.website:void 0,size:64},null,8,["url","href"]),$("div",NO,[y(ot,{class:"moonbase:cart-offer-name"},{default:x(()=>[e.target.type==="Product"&&e.target.website?(h(),k("a",{key:0,href:e.target.website},N(e.offer.discount.name),9,IO)):(h(),k(ee,{key:1},[S(N(e.offer.discount.name),1)],64))]),_:1}),e.offer.discount.description?(h(),j(ke,{key:0,class:"moonbase:cart-offer-description"},{default:x(()=>[S(N(e.offer.discount.description),1)]),_:1})):q("",!0),e.progress?(h(),k(ee,{key:1},[y(Dd,{fraction:e.progress.fraction,label:e.offer.discount.name,"value-text":d.value},null,8,["fraction","label","value-text"]),y(ke,{class:"moonbase:cart-offer-locked-message","aria-live":"polite"},{default:x(()=>[S(N(f.value),1)]),_:1})],64)):q("",!0)]),e.progress?q("",!0):(h(),k("div",TO,[u.value?(h(),j(Bn,{key:0},{default:x(()=>[c.value&&l.value?(h(),k("span",$O,N(v(r)(l.value[v(s)],v(s))),1)):q("",!0),S(" "+N(v(r)(u.value[v(s)],v(s))),1)]),_:1})):q("",!0),y(Oe,{label:"Add to cart",variant:"secondary",size:"small",handler:()=>{var g;return v(o)(e.target,e.variation,e.offer,{bundleBehaviour:(g=v(n))==null?void 0:g.cart.bundles.onAdd})}},null,8,["handler"])]))]),_:2},[e.target.type==="Bundle"?{name:"addon",fn:x(()=>{var g;return[$("div",DO,[e.target?(h(),k("button",{key:0,onClick:p[0]||(p[0]=b=>i.value=!i.value)},[y(ot,null,{default:x(()=>{var b,O,P;return[S(" Contains "+N((b=e.target)==null?void 0:b.products.filter(I=>I.included).length)+" ",1),(O=e.target)!=null&&O.products.some(I=>!I.included)?(h(),k(ee,{key:0},[S(" of "+N((P=e.target)==null?void 0:P.products.length),1)],64)):q("",!0),p[1]||(p[1]=S(" products ",-1))]}),_:1}),y(ke,null,{default:x(()=>[S(N(i.value?"Hide":"Show")+" ",1),(h(),k("svg",{"data-open":i.value||void 0,fill:"none",viewBox:"0 0 24 24","stroke-width":"1.5",stroke:"currentColor"},[...p[2]||(p[2]=[$("path",{"stroke-linecap":"round","stroke-linejoin":"round",d:"m19.5 8.25-7.5 7.5-7.5-7.5"},null,-1)])],8,MO))]),_:1})])):q("",!0)]),$("div",{ref_key:"productListRef",ref:a,class:"moonbase:cart-offer-bundle-product-list",style:{height:"0px"},"data-open":i.value||void 0},[(h(!0),k(ee,null,ct(((g=e.target)==null?void 0:g.products)||[],b=>(h(),k("div",{key:b.id,class:"moonbase:cart-offer-bundle-product-list-item"},[y(Mt,{url:b.iconUrl,href:b.website,size:48},null,8,["url","href"]),$("div",LO,[y(ot,{"data-included":b.included||void 0},{default:x(()=>[b.included?(h(),k("svg",RO,[...p[3]||(p[3]=[$("path",{"stroke-linecap":"round","stroke-linejoin":"round",d:"m4.5 12.75 6 6 9-13.5"},null,-1)])])):q("",!0),b.website?(h(),k("a",{key:1,href:b.website},N(b.name),9,UO)):(h(),k(ee,{key:2},[S(N(b.name),1)],64))]),_:2},1032,["data-included"]),b.included?b.tagline?(h(),j(ke,{key:1},{default:x(()=>[S(N(b.tagline),1)]),_:2},1024)):q("",!0):(h(),j(ke,{key:0},{default:x(()=>[...p[4]||(p[4]=[S(" You already own this ",-1)])]),_:1}))])]))),128))],8,VO)]}),key:"0"}:void 0]),1024))}}),jO={class:"moonbase:product-cart-item-content"},BO={class:"moonbase:product-cart-item-total"},FO={key:0,class:"moonbase:discount"},qO=ae({__name:"ProductCartItem",props:{lineItem:{},currency:{}},setup(e){const t=e,n=Ui(t.lineItem.productId),r=oe(qe),o=Fn(),s=Un(),i=F(()=>{var u;return((u=t.lineItem.price)==null?void 0:u[s.currency.value])===0});function a(u){if(!u.variation)throw new Error("No variation found");return u0(u.variation,u.quantity,t.currency)??0}function l(u){return c0(u.variation,u.quantity,t.currency)}return(u,c)=>(h(),j(rn,{class:"moonbase:product-cart-item"},{default:x(()=>{var d,f,m,p,g,b,O,P;return[y(Mt,{url:(d=e.lineItem.product)==null?void 0:d.iconUrl,size:72},null,8,["url"]),$("div",jO,[y(ot,null,{default:x(()=>{var I;return[S(N((I=e.lineItem.product)==null?void 0:I.name),1)]}),_:1}),(f=e.lineItem.product)!=null&&f.tagline?(h(),j(ke,{key:0,class:"moonbase:product-cart-item-tagline","data-truncate":e.lineItem.variation&&e.lineItem.variation.id!==((p=(m=v(n))==null?void 0:m.defaultVariation)==null?void 0:p.id)||void 0},{default:x(()=>{var I;return[S(N((I=e.lineItem.product)==null?void 0:I.tagline),1)]}),_:1},8,["data-truncate"])):q("",!0),e.lineItem.variation&&e.lineItem.variation.id!==((b=(g=v(n))==null?void 0:g.defaultVariation)==null?void 0:b.id)?(h(),j(ke,{key:1,class:"moonbase:product-cart-item-variation"},{default:x(()=>[S(N(e.lineItem.variation.name),1)]),_:1})):q("",!0)]),$("div",BO,[e.lineItem.variation?(h(),j(Bn,{key:0},{default:x(()=>{var I;return[e.lineItem.variation.hasDiscount||l(e.lineItem)?(h(),k("span",FO,N(v(o)(e.lineItem.variation.originalPrice[e.currency]*e.lineItem.quantity,e.currency)),1)):q("",!0),S(" "+N(v(o)(a(e.lineItem)*e.lineItem.quantity,e.currency))+" ",1),((I=e.lineItem.variation)==null?void 0:I.recurrence.type)==="Recurring"?(h(),j(ze,{key:1},{default:x(()=>[S(" / "+N(v(ta)(e.lineItem.variation.recurrence.cycleLength)),1)]),_:1})):q("",!0)]}),_:1})):q("",!0),(i.value?((O=v(r))==null?void 0:O.cart.leadMagnets.quantity)==="selectable":((P=v(r))==null?void 0:P.cart.quantity)==="selectable")?(h(),j(a0,{key:1,"model-value":e.lineItem.quantity,"onUpdate:modelValue":c[0]||(c[0]=I=>v(s).setQuantity(e.lineItem,I))},null,8,["model-value"])):(h(),j(Oe,{key:2,label:"Remove",variant:"subtle-danger",size:"small",handler:()=>v(s).setQuantity(e.lineItem,0)},null,8,["handler"]))])]}),_:1}))}}),HO={class:"moonbase:cart"},zO=["data-background"],WO={key:0,class:"moonbase:grow"},ZO={key:1},GO={key:2},YO={key:3},KO=["data-corners"],QO={class:"moonbase:cart-total"},XO={"data-row":"subtotal"},JO={"data-row":"saving"},e3={"data-row":"saving"},t3={"data-error":""},n3=ae({__name:"Cart",setup(e){const t=Kl(),{items:n,total:r,breakdown:o,currency:s,checkout:i}=Un(),a=oe(qe),l=Fn(),u=ok(),c=ik(),d=sk(),f=F(()=>u.value.filter(B=>B.scope!=="Cart")),m=F(()=>f.value.find(B=>B.targets.some(z=>!z.item.owned))||f.value[0]||null),p=F(()=>m.value?jt.relevantTargetVariations(m.value,n.value):[]),g=F(()=>!!c.value&&!!(a!=null&&a.value.cart.offers.cartWide.showProgress)),b=F(()=>{if(m.value&&p.value.length>0)return null;for(const B of d.value){const z=jt.relevantTargetVariations(B.offer,n.value);if(z.length>0)return{...B,entries:z}}return null}),O=F(()=>n.value.length>0&&o.value.discount>0),P=F(()=>i0((a==null?void 0:a.value.cart.minimumTotal)??{},r.value,n.value.length)),I=V(null);async function U(){I.value=null;try{const B=await i({redirect:(a==null?void 0:a.value.checkout.redirect)??"auto",groupIds:a==null?void 0:a.value.groups.checkout});if(B!=null&&B.redirected)return n0;if(!(B!=null&&B.completed))throw new ts}catch(B){if(I.value=B.message,!(B instanceof ts))if(B instanceof Kt)t.reportProblem("error",{type:B.name,title:B.title,detail:B.detail,status:B.status,errors:B.errors?Object.fromEntries(Object.entries(B.errors).map(([z,L])=>[z,[L]])):void 0,instance:"Cart.vue:startCheckout"});else{const z=B;t.reportProblem("error",{type:z.name,title:z.message,instance:"Cart.vue:startCheckout"})}throw B}}return(B,z)=>{var L,T,A,E,w;return h(),k("div",HO,[v(n).length>0?(h(),k("ul",{key:0,role:"list",class:"moonbase:cart-items","data-background":(L=v(a))==null?void 0:L.theme.colors.background},[(h(!0),k(ee,null,ct(v(n),_=>(h(),k("li",{key:_.id},[_.type==="Product"?(h(),j(qO,{key:0,"line-item":_,currency:v(s)},null,8,["line-item","currency"])):_.type==="Bundle"?(h(),j(uO,{key:1,"line-item":_,currency:v(s)},null,8,["line-item","currency"])):q("",!0)]))),128)),g.value||b.value||m.value&&p.value.length>0?(h(),k("li",WO)):q("",!0),g.value?(h(),k("li",ZO,[y(wO,{"cart-offer":v(c)},null,8,["cart-offer"])])):q("",!0),b.value?(h(),k("li",GO,[(T=v(a))!=null&&T.cart.offers.label?(h(),j(ot,{key:0},{default:x(()=>{var _;return[S(N((_=v(a))==null?void 0:_.cart.offers.label),1)]}),_:1})):q("",!0),b.value.entries.length>1?(h(),j(d0,{key:1,offer:b.value.offer,entries:b.value.entries,progress:b.value.progress},null,8,["offer","entries","progress"])):(h(),j(f0,{key:2,offer:b.value.offer,target:b.value.entries[0].target,variation:b.value.entries[0].variation,progress:b.value.progress},null,8,["offer","target","variation","progress"]))])):q("",!0),m.value&&p.value.length>0?(h(),k("li",YO,[(A=v(a))!=null&&A.cart.offers.label?(h(),j(ot,{key:0},{default:x(()=>{var _;return[S(N((_=v(a))==null?void 0:_.cart.offers.label),1)]}),_:1})):q("",!0),p.value.length>1?(h(),j(d0,{key:1,offer:m.value,entries:p.value},null,8,["offer","entries"])):(h(),j(f0,{key:2,offer:m.value,target:p.value[0].target,variation:p.value[0].variation},null,8,["offer","target","variation"]))])):q("",!0)],8,zO)):(h(),k("div",{key:1,class:"moonbase:cart-empty","data-corners":(E=v(a))==null?void 0:E.theme.corners},[y(v(e2)),y(ot,null,{default:x(()=>[...z[0]||(z[0]=[S(" Your cart is empty ",-1)])]),_:1})],8,KO)),$("div",QO,[O.value?(h(),k(ee,{key:0},[z[1]||(z[1]=$("label",{"data-row":"subtotal"}," Subtotal ",-1)),$("span",XO,N(v(l)(v(o).original,v(o).currency)),1),$("label",JO,N((w=v(a))==null?void 0:w.cart.offers.cartWide.savingLabel),1),$("span",e3," -"+N(v(l)(v(o).discount,v(o).currency)),1)],64)):q("",!0),z[2]||(z[2]=$("label",null," Total ",-1)),$("span",null,N(v(l)(v(r).amount,v(r).currency)),1),z[3]||(z[3]=$("p",null," Sales tax to be calculated at checkout ",-1)),$("p",t3,N(I.value),1)]),P.value?(h(),j(mO,{key:2,shortfall:P.value},null,8,["shortfall"])):(h(),j(Oe,{key:3,handler:U,disabled:v(n).length===0,label:"Checkout",error:I.value?"Error":"Cancelled",variant:"primary"},null,8,["disabled","error"]))])}}}),r3={class:"moonbase:confirm-communication-preferences"},o3={key:0,class:"moonbase:loader"},s3={key:1,class:"moonbase:error","data-visible":""},i3=ae({__name:"ConfirmCommunicationPreferences",setup(e){const t=ge(),{confirm:n}=Mc(),r=V(!0),o=V(null);return Fe(async()=>{try{const s=t.getParameter("email"),i=t.getParameter("token");if(!s||!i)throw new Error("This link is missing required information.");await n(s,i)}catch(s){o.value=s.message||"This link has expired or has already been used."}r.value=!1}),(s,i)=>(h(),k("div",r3,[r.value?(h(),k("div",o3,[y(It)])):o.value?(h(),k("div",s3,N(o.value),1)):(h(),k(ee,{key:2},[y(Ye,null,{default:x(()=>[...i[0]||(i[0]=[S(" You're subscribed! ",-1)])]),_:1}),y(ze,null,{default:x(()=>[...i[1]||(i[1]=[S(" Thanks for confirming. You'll start receiving updates by email. ",-1)])]),_:1})],64))]))}}),a3={class:"moonbase:manage-communication-preferences"},l3={key:0,class:"moonbase:loader"},u3={key:1,class:"moonbase:error","data-visible":""},c3={key:2,class:"moonbase:error"},d3=ae({__name:"ManageCommunicationPreferences",setup(e){const t=ge(),{get:n,update:r}=Mc(),o=oe(qe),s=V(0),i=V(null),a=Po({newsletter:!1,productUpdates:!1}),l=V(null),u=V(null),c=F(()=>!a.newsletter&&!a.productUpdates);Fe(async()=>{if(l.value=t.getParameter("email"),u.value=t.getParameter("token"),!l.value||!u.value){i.value="This link is missing required information. Please use the link from a recent email.",s.value=3;return}try{const f=await n(l.value,u.value);a.newsletter=f.newsletter,a.productUpdates=f.productUpdates,s.value=1}catch(f){i.value=f.message||"This link has expired.",s.value=3}});async function d(){if(!(!l.value||!u.value))try{const f=await r(l.value,u.value,{newsletter:a.newsletter,productUpdates:a.productUpdates});a.newsletter=f.newsletter,a.productUpdates=f.productUpdates,s.value=2}catch(f){throw i.value=f.message,f}}return(f,m)=>(h(),k("div",a3,[s.value===0?(h(),k("div",l3,[y(It)])):s.value===3?(h(),k("div",u3,N(i.value),1)):s.value===1?(h(),k(ee,{key:2},[y(ze,null,{default:x(()=>[...m[2]||(m[2]=[S(" Choose which emails you want to receive. Save to apply your changes. ",-1)])]),_:1}),y(hn,{handler:d},{default:x(()=>{var p,g;return[(p=v(o))!=null&&p.communicationPreferences.show.newsletter?(h(),j(lo,{key:0,modelValue:a.newsletter,"onUpdate:modelValue":m[0]||(m[0]=b=>a.newsletter=b),label:"Newsletter",name:"newsletter",hint:"News, articles, and product launches"},null,8,["modelValue"])):q("",!0),(g=v(o))!=null&&g.communicationPreferences.show.productUpdates?(h(),j(lo,{key:1,modelValue:a.productUpdates,"onUpdate:modelValue":m[1]||(m[1]=b=>a.productUpdates=b),label:"Product updates",name:"product-updates",hint:"Releases, fixes, and important changes for products you own"},null,8,["modelValue"])):q("",!0),y(pn,{label:"Save preferences",error:"Error",success:"Saved"}),i.value?(h(),k("p",c3,N(i.value),1)):q("",!0)]}),_:1})],64)):s.value===2?(h(),k(ee,{key:3},[y(Ye,null,{default:x(()=>[S(N(c.value?"You've been unsubscribed":"Preferences saved"),1)]),_:1}),y(ze,null,{default:x(()=>[c.value?(h(),k(ee,{key:0},[S(" You won't receive newsletter or product update emails from us anymore. ")],64)):(h(),k(ee,{key:1},[S(" We've updated your email preferences. ")],64))]),_:1})],64)):q("",!0)]))}}),f3={class:"moonbase:subscribe"},m3=["href"],h3={key:0,class:"moonbase:error"},p3={key:2,class:"moonbase:error"},v3=ae({__name:"Subscribe",setup(e){var T,A;const t=ge(),{user:n,update:r}=Ze(),{subscribe:o}=ug("drawer"),{join:s}=Kp(),i=oe(ou),a=oe(qe),l=F(()=>dd(a==null?void 0:a.value).newsletter),u=F(()=>dd(a==null?void 0:a.value).productUpdates),c=F(()=>{var E;return((E=t.getParameter("groups"))==null?void 0:E.split(","))??[]}),d=F(()=>ag(a==null?void 0:a.value,c.value)),f=F(()=>l.value&&u.value?"newsletter and product update emails":l.value?"newsletter emails":u.value?"product update emails":"emails from us");function m(){switch(t.getParameter("status")){case"subscribed":return 1;case"confirmation_sent":return 2;case"error":return 0}return n.value?3:0}const p=V(m()),g=V(t.getParameter("name")??""),b=V(t.getParameter("email")??""),O=V(t.getParameter("error")),P=V(t.getParameter("email")??""),I=Po({newsletterOptIn:((T=n.value)==null?void 0:T.communicationPreferences.newsletterOptIn)??!1,productUpdatesOptIn:((A=n.value)==null?void 0:A.communicationPreferences.productUpdatesOptIn)??!1}),U=V(null);async function B(){O.value=null;try{const E=b.value.trim(),w=await o({email:E,name:g.value,groupIds:c.value});P.value=E,p.value=w.status==="subscribed"?1:2}catch(E){throw O.value=lg(E),E}}async function z(){const E=d.value??[];(await Promise.allSettled(E.map(_=>s(_)))).forEach((_,D)=>{_.status==="rejected"&&console.warn(`Moonbase: could not join group '${E[D]}'`,_.reason)})}async function L(){U.value=null;try{if(!n.value)throw new Error("Not signed in");await r(n.value.name,n.value.email,void 0,{newsletterOptIn:I.newsletterOptIn,productUpdatesOptIn:I.productUpdatesOptIn}),await z(),p.value=4}catch(E){throw U.value=E.message,E}}return(E,w)=>(h(),k("div",f3,[p.value===0?(h(),k(ee,{key:0},[y(ze,null,{default:x(()=>[...w[4]||(w[4]=[S(" Get news, articles, and product launches in your inbox. ",-1)])]),_:1}),y(hn,{handler:B},{default:x(()=>[y(Tt,{modelValue:g.value,"onUpdate:modelValue":w[0]||(w[0]=_=>g.value=_),label:"Full name",name:"subscribe-name",type:"text",placeholder:"Your name (optional)",autocomplete:"name",maxlength:"200"},null,8,["modelValue"]),y(Tt,{modelValue:b.value,"onUpdate:modelValue":w[1]||(w[1]=_=>b.value=_),label:"Email address",name:"subscribe-email",type:"email",placeholder:"you@example.com",autocomplete:"email",required:""},null,8,["modelValue"]),y(ke,null,{default:x(()=>[S(" By subscribing you agree to receive "+N(f.value)+". You can unsubscribe at any time using the link in the footer of any email we send. ",1),v(i)?(h(),k(ee,{key:0},[w[5]||(w[5]=S(" See our ",-1)),$("a",{href:`${v(i)}/privacy-policy`,target:"_blank",rel:"noopener"},"privacy policy",8,m3),w[6]||(w[6]=S(". ",-1))],64)):q("",!0)]),_:1}),y(pn,{success:"Subscribed",label:"Subscribe",error:"Error"}),O.value?(h(),k("p",h3,N(O.value),1)):q("",!0)]),_:1})],64)):p.value===1?(h(),k(ee,{key:1},[y(Ye,null,{default:x(()=>[...w[7]||(w[7]=[S(" You're subscribed! ",-1)])]),_:1}),y(ze,null,{default:x(()=>[S(" Thanks"+N(g.value?`, ${g.value}`:"")+". We'll be in touch at ",1),$("strong",null,N(P.value),1),w[8]||(w[8]=S(". ",-1))]),_:1})],64)):p.value===2?(h(),k(ee,{key:2},[y(Ye,null,{default:x(()=>[...w[9]||(w[9]=[S(" Check your email to finish ",-1)])]),_:1}),y(ze,null,{default:x(()=>[w[10]||(w[10]=S(" We sent a confirmation link to ",-1)),$("strong",null,N(P.value),1),w[11]||(w[11]=S(". Click it to finish subscribing. ",-1))]),_:1})],64)):p.value===3?(h(),k(ee,{key:3},[y(ze,null,{default:x(()=>[...w[12]||(w[12]=[S(" Choose which emails you want to receive. ",-1)])]),_:1}),y(hn,{handler:L},{default:x(()=>[l.value?(h(),j(lo,{key:0,modelValue:I.newsletterOptIn,"onUpdate:modelValue":w[2]||(w[2]=_=>I.newsletterOptIn=_),label:"Newsletter",name:"newsletter-opt-in",hint:"News, articles, and product launches"},null,8,["modelValue"])):q("",!0),u.value?(h(),j(lo,{key:1,modelValue:I.productUpdatesOptIn,"onUpdate:modelValue":w[3]||(w[3]=_=>I.productUpdatesOptIn=_),label:"Product updates",name:"product-updates-opt-in",hint:"Releases, fixes, and important changes for products you own"},null,8,["modelValue"])):q("",!0),y(pn,{success:"Saved",label:"Save preferences",error:"Error"}),U.value?(h(),k("p",p3,N(U.value),1)):q("",!0)]),_:1})],64)):p.value===4?(h(),k(ee,{key:4},[y(Ye,null,{default:x(()=>[...w[13]||(w[13]=[S(" Preferences saved ",-1)])]),_:1}),y(ze,null,{default:x(()=>[...w[14]||(w[14]=[S(" We've updated your email preferences. ",-1)])]),_:1})],64)):q("",!0)]))}}),g3={class:"moonbase:communication-preferences"},b3={key:0,class:"moonbase:loader"},y3=ae({__name:"CommunicationPreferences",setup(e){const t=ge(),{loaded:n}=Ze();return(r,o)=>(h(),k("div",g3,[y(As,{name:v(t).direction===v(Nl).Forward?"moonbase:slide-left":"moonbase:slide-right",mode:"out-in"},{default:x(()=>[v(n)?v(t).intent===v(W).Subscribe?(h(),j(v3,{key:JSON.stringify(v(t).parameters)})):v(t).intent===v(W).ConfirmCommunicationPreferences?(h(),j(i3,{key:2})):v(t).intent===v(W).ManageCommunicationPreferences?(h(),j(d3,{key:3})):q("",!0):(h(),k("div",b3,[y(It)]))]),_:1},8,["name"])]))}}),w3={class:"moonbase:connected-account-card"},_3={class:"moonbase:account-provider"},k3=["src","alt"],x3={key:0,class:"moonbase:pending-fulfillments"},E3=ae({__name:"ConnectedAccountCard",props:{account:{}},setup(e){const t=e,n=ge(),{disconnectAccount:r}=Ze(),o=V(!1),s=V(null);function i(d){switch(d){case"iLok":return"iLok"}}function a(d){switch(d){case"iLok":return Gl}}function l(d){switch(d){case"iLok":return"Link your iLok account to streamline license delivery and activation."}}async function u(){s.value=null,o.value=!0;try{await r(t.account.provider)}catch(d){s.value=d}finally{o.value=!1}}function c(){n.show(G.Customer,W.ConnectAccount,{provider_id:t.account.provider})}return(d,f)=>(h(),k("li",w3,[$("div",_3,[a(e.account.provider)?(h(),k("img",{key:0,src:a(e.account.provider),alt:i(e.account.provider)},null,8,k3)):q("",!0),$("div",null,[y(Ye,null,{default:x(()=>[S(N(i(e.account.provider)),1)]),_:1}),e.account.isConnected?(h(),k(ee,{key:0},[e.account.accountId?(h(),j(ke,{key:0},{default:x(()=>[S(" Account ID: "+N(e.account.accountId),1)]),_:1})):q("",!0)],64)):(h(),j(ke,{key:1},{default:x(()=>[S(N(l(e.account.provider)),1)]),_:1}))])]),e.account.pendingLicenseFulfillments?(h(),k("div",x3,[y(v(pO)),y(ke,null,{default:x(()=>[...f[0]||(f[0]=[S(" You have pending iLok licenses, connect your account to receive them. ",-1)])]),_:1})])):q("",!0),e.account.isConnected?(h(),j(Oe,{key:1,label:o.value?"Disconnecting...":"Disconnect",variant:"danger",handler:u,disabled:o.value},null,8,["label","disabled"])):q("",!0),s.value?(h(),j(Bn,{key:2,class:"moonbase:disconnect-error"},{default:x(()=>[S(N(s.value.message),1)]),_:1})):q("",!0),e.account.isConnected?q("",!0):(h(),j(Oe,{key:3,label:"Connect",variant:"secondary",handler:c}))]))}}),C3={class:"moonbase:account"},A3={key:2,class:"moonbase:error"},O3={key:3,class:"moonbase:notification"},S3={key:0,class:"moonbase:password-validation"},P3={key:1,class:"moonbase:error"},N3={key:0,class:"moonbase:connected-accounts"},I3=ae({__name:"Account",setup(e){var L,T,A;const t=ge(),{user:n,update:r,setPassword:o,signOut:s}=Ze(),i=oe(zn),a=oe(qe),l=V(((L=n.value)==null?void 0:L.name)??""),u=V(((T=n.value)==null?void 0:T.email)??""),c=V(((A=n.value)==null?void 0:A.communicationPreferences)??{newsletterOptIn:!1,productUpdatesOptIn:!1}),d=V(null),f=V(!1),m=V(""),p=V(""),g=V(!1),b=V(null),O=F(()=>{var E;return((E=n.value)==null?void 0:E.connectedAccounts)??[]}),P=F(()=>Yl[(a==null?void 0:a.value.auth.passwords)??"default"]),I=F(()=>P.value.some(E=>!E.test(p.value)));async function U(){d.value=null,f.value=!1;try{(await r(l.value,u.value,void 0,c.value)).needsEmailConfirmationToken&&(f.value=!0)}catch(E){throw d.value=E,E}}async function B(){b.value=null;try{await o(m.value,p.value),m.value="",p.value="",g.value=!1}catch(E){throw b.value=E,E}}async function z(){const E={...n.value};await s(),i==null||i(Ce.SignedOut,{user:E}),t.reset()}return(E,w)=>(h(),k("div",C3,[y(hn,{handler:U},{default:x(()=>{var _,D;return[y(Tt,{modelValue:l.value,"onUpdate:modelValue":w[0]||(w[0]=ne=>l.value=ne),label:"Full name",name:"name",autocomplete:"name",required:""},null,8,["modelValue"]),y(Tt,{modelValue:u.value,"onUpdate:modelValue":w[1]||(w[1]=ne=>u.value=ne),label:"Email address",name:"email",type:"email",autocomplete:"email",required:""},null,8,["modelValue"]),(_=v(a))!=null&&_.communicationPreferences.show.newsletter?(h(),j(lo,{key:0,modelValue:c.value.newsletterOptIn,"onUpdate:modelValue":w[2]||(w[2]=ne=>c.value.newsletterOptIn=ne),label:"Newsletter subscription",name:"newsletter-opt-in",hint:"Receive updates and offers by email"},null,8,["modelValue"])):q("",!0),(D=v(a))!=null&&D.communicationPreferences.show.productUpdates?(h(),j(lo,{key:1,modelValue:c.value.productUpdatesOptIn,"onUpdate:modelValue":w[3]||(w[3]=ne=>c.value.productUpdatesOptIn=ne),label:"Product updates",name:"product-updates-opt-in",hint:"Releases, fixes, and important changes for products you own"},null,8,["modelValue"])):q("",!0),y(pn,{label:"Update",error:"Error",success:"Updated"}),d.value?(h(),k("p",A3,N(d.value.message),1)):f.value?(h(),k("p",O3," You need to confirm your new email address, please check your inbox ")):q("",!0)]}),_:1}),y(hn,{handler:B,disabled:I.value},{default:x(()=>[y(Tt,{modelValue:m.value,"onUpdate:modelValue":w[4]||(w[4]=_=>m.value=_),label:"Current password",name:"old-password",type:"password",autocomplete:"current-password",required:"",revealable:""},null,8,["modelValue"]),y(Tt,{modelValue:p.value,"onUpdate:modelValue":w[5]||(w[5]=_=>p.value=_),label:"New password",name:"new-password",type:"password",autocomplete:"new-password",required:"",revealable:"",onBlur:w[6]||(w[6]=_=>g.value=!0)},null,8,["modelValue"]),g.value&&I.value?(h(),k("div",S3,[(h(!0),k(ee,null,ct(P.value.filter(_=>!_.test(p.value)),_=>(h(),j(ke,{key:_.title,"data-error":""},{default:x(()=>[S(N(_.title),1)]),_:2},1024))),128))])):q("",!0),y(pn,{label:"Change password",error:"Error",success:"Password changed"}),b.value?(h(),k("p",P3,N(b.value.message),1)):q("",!0)]),_:1},8,["disabled"]),y(Oe,{label:"Log out",success:"Logged out",error:"Error",variant:"subtle",handler:z}),O.value.length>0?(h(),k("section",N3,[y(ur,null,{default:x(()=>[...w[7]||(w[7]=[S("Connected accounts",-1)])]),_:1}),y(ze,null,{default:x(()=>[...w[8]||(w[8]=[S(" Connect your account with external providers to enable additional features. ",-1)])]),_:1}),$("ul",null,[(h(!0),k(ee,null,ct(O.value,_=>(h(),j(E3,{key:`${_.provider}-${_.accountId}`,account:_},null,8,["account"]))),128))])])):q("",!0)]))}}),T3={key:0,class:"moonbase:connect-account"},$3={class:"moonbase:provider-header"},D3=["src","alt"],M3={key:0,class:"moonbase:loader"},V3={key:0,class:"moonbase:connected-status"},L3={key:0,class:"moonbase:depositing"},R3={key:1,class:"moonbase:licenses-deposited"},U3=ae({__name:"ConnectAccount",setup(e){const t=ge(),{user:n,getConnectionUrl:r,refreshUser:o}=Ze(),s=V(!0),i=V(!1),a=V(!1),l=V(null),u=V(""),c=t.getParameter("provider_id"),d=F(()=>{var I;return((I=n.value)==null?void 0:I.connectedAccounts.some(U=>U.provider===c&&U.isConnected))??!1}),f=F(()=>{var I;return((I=n.value)==null?void 0:I.connectedAccounts.some(U=>c&&[ri.iLok].includes(c)&&U.pendingLicenseFulfillments))??!1});Fe(async()=>{if(c&&(await o(),s.value=!1,d.value&&f.value)){for(i.value=!0;f.value;)await Zt(2e3),await o();i.value=!1,a.value=!0}});function m(I){switch(I){case"iLok":return"iLok"}}function p(I){switch(I){case"iLok":return Gl}}function g(I){switch(I){case"iLok":return"Link your iLok account to streamline license delivery and activation for all your purchases."}}function b(I){switch(I){case"iLok":return!0;default:return!1}}async function O(){if(c){l.value=null;try{if(b(c)&&!u.value){l.value=new Error("Please enter your login ID");return}const I=window.location.href.split("?")[0],U=await r(c,I,u.value||void 0);window.location.href=U}catch(I){throw l.value=I,I}}}function P(){t.history.length>0?t.back():t.show(G.Customer,W.ViewAccount,void 0,!0)}return(I,U)=>v(c)?(h(),k("div",T3,[$("div",$3,[p(v(c))?(h(),k("img",{key:0,src:p(v(c)),alt:m(v(c)),class:"moonbase:provider-logo"},null,8,D3)):q("",!0),y(Ye,null,{default:x(()=>[S(N(m(v(c))),1)]),_:1})]),y(ke,{class:"moonbase:description"},{default:x(()=>[S(N(g(v(c))),1)]),_:1}),s.value?(h(),k("div",M3,[y(It)])):(h(),k(ee,{key:1},[d.value?(h(),k("div",V3,[y(ot,{class:"moonbase:success"},{default:x(()=>[S(" Successfully connected your "+N(m(v(c)))+" account. ",1)]),_:1}),i.value?(h(),k("div",L3,[y(It),y(ke,null,{default:x(()=>[...U[1]||(U[1]=[S("Depositing licenses to your account...",-1)])]),_:1})])):a.value?(h(),k("div",R3,[y(v(Ql)),y(ke,null,{default:x(()=>[...U[2]||(U[2]=[S("Licenses deposited to your account.",-1)])]),_:1})])):q("",!0),y(Oe,{label:"Back to account",handler:P})])):(h(),j(hn,{key:1,handler:O,class:"moonbase:connect-form"},{default:x(()=>[b(v(c))?(h(),j(Tt,{key:0,modelValue:u.value,"onUpdate:modelValue":U[0]||(U[0]=B=>u.value=B),label:`${m(v(c))} Login ID`,name:`${v(c)}-login-id`,placeholder:`Enter your ${m(v(c))} username`},null,8,["modelValue","label","name","placeholder"])):q("",!0),y(pn,{label:"Connect"}),y(ea,{type:"anchor",label:"Create account",variant:"subtle",href:"https://www.ilok.com/#!registration",icon:v(qc),target:"_blank",rel:"noopener noreferrer"},null,8,["icon"])]),_:1})),l.value?(h(),j(ot,{key:2,class:"moonbase:error"},{default:x(()=>[S(N(l.value.message),1)]),_:1})):q("",!0)],64))])):q("",!0)}}),m0=e=>e.includes("."),j3={class:"moonbase:products"},B3={key:0,class:"moonbase:loader"},F3={key:1,class:"moonbase:loader"},q3=["data-is-sub-product"],H3={key:0,class:"moonbase:products-item-sub-product-icon"},z3={class:"moonbase:products-item-content"},W3=ae({__name:"Products",setup(e){const t=ge(),{getProducts:n}=Zo(),r=V(null);return Fe(async()=>{let o=await n();for(r.value=o.items;o.hasMore&&o.next;)o=await n(o.next),r.value.push(...o.items)}),(o,s)=>(h(),k("div",j3,[r.value?r.value.length===0?(h(),k("div",F3," No products found ")):q("",!0):(h(),k("div",B3,[y(It),s[0]||(s[0]=S(" Loading products.. ",-1))])),(h(!0),k(ee,null,ct(r.value||[],i=>(h(),k("div",{key:i.id,class:"moonbase:products-item","data-is-sub-product":v(m0)(i.id)||void 0},[v(m0)(i.id)?(h(),k("div",H3,[...s[1]||(s[1]=[$("svg",{xmlns:"http://www.w3.org/2000/svg",fill:"none",viewBox:"0 0 24 24","stroke-width":"1.5",stroke:"currentColor"},[$("path",{"stroke-linecap":"round","stroke-linejoin":"round",d:"m16.49 12 3.75 3.75m0 0-3.75 3.75m3.75-3.75H3.74V4.499"})],-1)])])):q("",!0),y(Mt,{url:i.iconUrl,size:48},null,8,["url"]),$("div",z3,[y(ot,null,{default:x(()=>[S(N(i.name),1)]),_:2},1024),i.numberOfLicenses||i.subscriptionLicenses?(h(),j(ke,{key:0},{default:x(()=>[S(N((i.numberOfLicenses??0)+(i.subscriptionLicenses??0))+" licenses ",1)]),_:2},1024)):q("",!0)]),$("div",null,[y(Ls,{variant:"subtle",onClick:a=>v(t).show(v(G).Product,v(W).ViewProduct,{product_id:i.id})},{default:x(()=>[y(v(yv)),s[2]||(s[2]=$("span",{class:"moonbase:clickable"},null,-1))]),_:1},8,["onClick"])])],8,q3))),128))]))}}),Z3={class:"moonbase:bundle-redemption-item-content"},G3={class:"moonbase:bundle-redemption-item-summary"},Y3=["data-open"],K3=["data-open"],h0=ae({__name:"BundleRedemptionItem",props:{bundle:{},quantity:{}},setup(e){const t=V(!1),n=V(null);return We(t,r=>{n.value&&(n.value.style.height=r?`${n.value.scrollHeight}px`:"0px")}),(r,o)=>(h(),j(rn,{class:"moonbase:bundle-redemption-item"},{addon:x(()=>{var s;return[$("div",G3,[e.bundle?(h(),k("button",{key:0,onClick:o[0]||(o[0]=i=>t.value=!t.value)},[y(ot,null,{default:x(()=>{var i;return[S(N((i=e.bundle)==null?void 0:i.products.length)+" products ",1)]}),_:1}),y(ke,null,{default:x(()=>[S(N(t.value?"Hide":"Show")+" ",1),(h(),k("svg",{"data-open":t.value||void 0,fill:"none",viewBox:"0 0 24 24","stroke-width":"1.5",stroke:"currentColor"},[...o[1]||(o[1]=[$("path",{"stroke-linecap":"round","stroke-linejoin":"round",d:"m19.5 8.25-7.5 7.5-7.5-7.5"},null,-1)])],8,Y3))]),_:1})])):q("",!0)]),$("div",{ref_key:"productListRef",ref:n,class:"moonbase:bundle-redemption-item-product-list",style:{height:"0px"},"data-open":t.value||void 0},[(h(!0),k(ee,null,ct(((s=e.bundle)==null?void 0:s.products)||[],i=>(h(),k("div",{key:i.id},[y(Mt,{url:i.iconUrl,size:48},null,8,["url"]),$("div",null,[y(ot,null,{default:x(()=>[S(N(i.name),1)]),_:2},1024),i.tagline?(h(),j(ke,{key:0},{default:x(()=>[S(N(i.tagline),1)]),_:2},1024)):q("",!0)])]))),128))],8,K3)]}),default:x(()=>{var s;return[y(Mt,{url:e.bundle.iconUrl,size:72},null,8,["url"]),$("div",Z3,[y(ot,null,{default:x(()=>{var i;return[S(N((i=e.bundle)==null?void 0:i.name),1)]}),_:1}),(s=e.bundle)!=null&&s.tagline?(h(),j(ke,{key:0,class:"moonbase:bundle-redemption-item-tagline"},{default:x(()=>{var i;return[S(N((i=e.bundle)==null?void 0:i.tagline),1)]}),_:1})):q("",!0)])]}),_:1}))}}),Q3={class:"moonbase:product-redemption-item-content"},p0=ae({__name:"ProductRedemptionItem",props:{product:{},quantity:{}},setup(e){return(t,n)=>(h(),j(rn,{class:"moonbase:product-redemption-item"},{default:x(()=>{var r;return[y(Mt,{url:e.product.iconUrl,size:72},null,8,["url"]),$("div",Q3,[y(ot,null,{default:x(()=>{var o;return[S(N((o=e.product)==null?void 0:o.name),1)]}),_:1}),(r=e.product)!=null&&r.tagline?(h(),j(ke,{key:0,class:"moonbase:product-redemption-item-tagline"},{default:x(()=>{var o;return[S(N((o=e.product)==null?void 0:o.tagline),1)]}),_:1})):q("",!0)])]}),_:1}))}}),X3={class:"moonbase:redeem"},J3=["data-visible"],eS={key:1,class:"moonbase:redeem-voucher"},tS={key:0,class:"moonbase:redeem-voucher-content"},nS={key:1,class:"moonbase:redeem-voucher-return"},rS=ae({__name:"Redeem",setup(e){const{redeem:t}=Jp(),n=ge(),r=Ze(),o=oe(zn),s=V(null),i=V(null),a=V(n.getParameter("code")||"");async function l(){i.value=null;try{const u=await t(a.value);s.value=u,o==null||o(Ce.RedeemedVoucher,{voucher:u,user:r.user.value})}catch(u){throw i.value=u,u}}return(u,c)=>(h(),k("div",X3,[y(As,{mode:"out-in",name:"moonbase:slide-left"},{default:x(()=>[s.value?(h(),k("div",eS,[$("div",null,[y(ur,null,{default:x(()=>[S(N(s.value.name),1)]),_:1}),s.value.description?(h(),j(Ye,{key:0},{default:x(()=>[S(' "'+N(s.value.description)+'" ',1)]),_:1})):q("",!0),y(ke,null,{default:x(()=>[y(v(qk)),c[2]||(c[2]=S(" Licenses have been added to your account. ",-1))]),_:1}),y(ke,null,{default:x(()=>[c[3]||(c[3]=S(" Code: ",-1)),$("strong",null,N(s.value.code),1)]),_:1})]),y(Ye,null,{default:x(()=>[...c[4]||(c[4]=[S(" Voucher summary ",-1)])]),_:1}),s.value.redeemsProducts.length>0||s.value.redeemsBundles.length>0?(h(),k("div",tS,[(h(!0),k(ee,null,ct(s.value.redeemsProducts,({value:d,quantity:f})=>(h(),j(p0,{key:d.id,product:d,quantity:f},null,8,["product","quantity"]))),128)),(h(!0),k(ee,null,ct(s.value.redeemsBundles,({value:d,quantity:f})=>(h(),j(h0,{key:d.id,bundle:d,quantity:f},null,8,["bundle","quantity"]))),128))])):q("",!0),v(n).next&&v(n).next[0]===v(G).Activation&&(s.value.redeemsProducts.some(d=>{var f,m;return d.value.id===((m=(f=v(n).next)==null?void 0:f[2])==null?void 0:m.product_id)})||s.value.redeemsBundles.some(d=>d.value.products.some(f=>{var m,p;return f.id===((p=(m=v(n).next)==null?void 0:m[2])==null?void 0:p.product_id)})))?(h(),k("div",nS,[y(Oe,{label:"Return to activation",variant:"primary",icon:v(Bk),handler:()=>v(n).dequeue()},null,8,["icon","handler"])])):q("",!0)])):(h(),j(hn,{key:0,handler:l},{default:x(()=>{var d;return[y(ze,null,{default:x(()=>[...c[1]||(c[1]=[S(" Do you have a voucher you want to redeem? ",-1),$("br",null,null,-1),S(" Please enter the code below: ",-1)])]),_:1}),y(Tt,{modelValue:a.value,"onUpdate:modelValue":c[0]||(c[0]=f=>a.value=f),label:"Voucher code",name:"code",required:"",placeholder:"0000-0000-0000-0000"},null,8,["modelValue"]),y(pn,{label:"Redeem voucher",error:"Error"}),$("span",{class:"moonbase:error","data-visible":!!i.value||void 0},N((d=i.value)==null?void 0:d.message),9,J3)]}),_:1}))]),_:1})]))}}),oS=["data-status"],sS=["data-fulfilled"],v0=ae({__name:"MilestoneProgressBar",props:{progress:{}},setup(e){return(t,n)=>(h(),k("div",{class:"moonbase:milestone-progress-bar",style:Gr({gridTemplateColumns:`repeat(${e.progress.toNormalizedCycleNumber-e.progress.fromNormalizedCycleNumber+1}, 1fr)`})},[(h(!0),k(ee,null,ct(Array(e.progress.toNormalizedCycleNumber-e.progress.fromNormalizedCycleNumber+1),(r,o)=>(h(),k("div",{key:o},[$("div",{"data-status":o+1<e.progress.currentNormalizedCycleNumber+(e.progress.currentCycleIsCompleted?1:0)?"done":o+1===e.progress.currentNormalizedCycleNumber+(e.progress.currentCycleIsCompleted?1:0)?"in-progress":"future"},null,8,oS),e.progress.events[o+1]?(h(),k("span",{key:0,"data-fulfilled":e.progress.events[o+1].some(s=>s.fulfilled)||void 0},null,8,sS)):q("",!0)]))),128))],4))}}),g0=6048e5,iS=864e5,Xl=43200,b0=1440,Jl=Symbol.for("constructDateFrom");function uo(e,t){return typeof e=="function"?e(t):typeof e=="object"&&Jl in e?e[Jl](t):e instanceof Date?new e.constructor(t):new Date(t)}function Vt(e,t){if(t)return t(e);const n=Object.prototype.toString.call(e);return typeof e=="object"&&Jl in e?e[Jl](e):e instanceof Date||typeof e=="object"&&n==="[object Date]"?new e.constructor(+e):typeof e=="number"||n==="[object Number]"||typeof e=="string"||n==="[object String]"?new Date(e):new Date(NaN)}let aS={};function na(){return aS}function ra(e,t){var a,l,u,c;const n=na(),r=(t==null?void 0:t.weekStartsOn)??((l=(a=t==null?void 0:t.locale)==null?void 0:a.options)==null?void 0:l.weekStartsOn)??n.weekStartsOn??((c=(u=n.locale)==null?void 0:u.options)==null?void 0:c.weekStartsOn)??0,o=Vt(e,t==null?void 0:t.in),s=o.getDay(),i=(s<r?7:0)+s-r;return o.setDate(o.getDate()-i),o.setHours(0,0,0,0),o}function eu(e,t){return ra(e,{...t,weekStartsOn:1})}function y0(e,t){const n=Vt(e,t==null?void 0:t.in),r=n.getFullYear(),o=uo(n,0);o.setFullYear(r+1,0,4),o.setHours(0,0,0,0);const s=eu(o),i=uo(n,0);i.setFullYear(r,0,4),i.setHours(0,0,0,0);const a=eu(i);return n.getTime()>=s.getTime()?r+1:n.getTime()>=a.getTime()?r:r-1}function tu(e){const t=Vt(e),n=new Date(Date.UTC(t.getFullYear(),t.getMonth(),t.getDate(),t.getHours(),t.getMinutes(),t.getSeconds(),t.getMilliseconds()));return n.setUTCFullYear(t.getFullYear()),+e-+n}function nu(e,...t){const n=e||uo.bind(null,t.find(r=>typeof r=="object"));return t.map(n)}function w0(e,t){const n=Vt(e,t==null?void 0:t.in);return n.setHours(0,0,0,0),n}function lS(e,t,n){const[r,o]=nu(n==null?void 0:n.in,e,t),s=w0(r),i=w0(o),a=+s-tu(s),l=+i-tu(i);return Math.round((a-l)/iS)}function uS(e,t){const n=y0(e,t),r=uo(e,0);return r.setFullYear(n,0,4),r.setHours(0,0,0,0),eu(r)}function ru(e,t){const n=+Vt(e)-+Vt(t);return n<0?-1:n>0?1:n}function cS(e){return uo(e,Date.now())}function dS(e){return e instanceof Date||typeof e=="object"&&Object.prototype.toString.call(e)==="[object Date]"}function fS(e){return!(!dS(e)&&typeof e!="number"||isNaN(+Vt(e)))}function mS(e,t,n){const[r,o]=nu(n==null?void 0:n.in,e,t),s=r.getFullYear()-o.getFullYear(),i=r.getMonth()-o.getMonth();return s*12+i}function hS(e){return t=>{const r=(e?Math[e]:Math.trunc)(t);return r===0?0:r}}function pS(e,t){return+Vt(e)-+Vt(t)}function vS(e,t){const n=Vt(e,t==null?void 0:t.in);return n.setHours(23,59,59,999),n}function gS(e,t){const n=Vt(e,t==null?void 0:t.in),r=n.getMonth();return n.setFullYear(n.getFullYear(),r+1,0),n.setHours(23,59,59,999),n}function bS(e,t){const n=Vt(e,t==null?void 0:t.in);return+vS(n,t)==+gS(n,t)}function yS(e,t,n){const[r,o,s]=nu(n==null?void 0:n.in,e,e,t),i=ru(o,s),a=Math.abs(mS(o,s));if(a<1)return 0;o.getMonth()===1&&o.getDate()>27&&o.setDate(30),o.setMonth(o.getMonth()-i*a);let l=ru(o,s)===-i;bS(r)&&a===1&&ru(r,s)===1&&(l=!1);const u=i*(a-+l);return u===0?0:u}function wS(e,t,n){const r=pS(e,t)/1e3;return hS(n==null?void 0:n.roundingMethod)(r)}function _S(e,t){const n=Vt(e,t==null?void 0:t.in);return n.setFullYear(n.getFullYear(),0,1),n.setHours(0,0,0,0),n}const kS={lessThanXSeconds:{one:"less than a second",other:"less than {{count}} seconds"},xSeconds:{one:"1 second",other:"{{count}} seconds"},halfAMinute:"half a minute",lessThanXMinutes:{one:"less than a minute",other:"less than {{count}} minutes"},xMinutes:{one:"1 minute",other:"{{count}} minutes"},aboutXHours:{one:"about 1 hour",other:"about {{count}} hours"},xHours:{one:"1 hour",other:"{{count}} hours"},xDays:{one:"1 day",other:"{{count}} days"},aboutXWeeks:{one:"about 1 week",other:"about {{count}} weeks"},xWeeks:{one:"1 week",other:"{{count}} weeks"},aboutXMonths:{one:"about 1 month",other:"about {{count}} months"},xMonths:{one:"1 month",other:"{{count}} months"},aboutXYears:{one:"about 1 year",other:"about {{count}} years"},xYears:{one:"1 year",other:"{{count}} years"},overXYears:{one:"over 1 year",other:"over {{count}} years"},almostXYears:{one:"almost 1 year",other:"almost {{count}} years"}},xS=(e,t,n)=>{let r;const o=kS[e];return typeof o=="string"?r=o:t===1?r=o.one:r=o.other.replace("{{count}}",t.toString()),n!=null&&n.addSuffix?n.comparison&&n.comparison>0?"in "+r:r+" ago":r};function Md(e){return(t={})=>{const n=t.width?String(t.width):e.defaultWidth;return e.formats[n]||e.formats[e.defaultWidth]}}const ES={full:"EEEE, MMMM do, y",long:"MMMM do, y",medium:"MMM d, y",short:"MM/dd/yyyy"},CS={full:"h:mm:ss a zzzz",long:"h:mm:ss a z",medium:"h:mm:ss a",short:"h:mm a"},AS={full:"{{date}} 'at' {{time}}",long:"{{date}} 'at' {{time}}",medium:"{{date}}, {{time}}",short:"{{date}}, {{time}}"},OS={date:Md({formats:ES,defaultWidth:"full"}),time:Md({formats:CS,defaultWidth:"full"}),dateTime:Md({formats:AS,defaultWidth:"full"})},SS={lastWeek:"'last' eeee 'at' p",yesterday:"'yesterday at' p",today:"'today at' p",tomorrow:"'tomorrow at' p",nextWeek:"eeee 'at' p",other:"P"},PS=(e,t,n,r)=>SS[e];function oa(e){return(t,n)=>{const r=n!=null&&n.context?String(n.context):"standalone";let o;if(r==="formatting"&&e.formattingValues){const i=e.defaultFormattingWidth||e.defaultWidth,a=n!=null&&n.width?String(n.width):i;o=e.formattingValues[a]||e.formattingValues[i]}else{const i=e.defaultWidth,a=n!=null&&n.width?String(n.width):e.defaultWidth;o=e.values[a]||e.values[i]}const s=e.argumentCallback?e.argumentCallback(t):t;return o[s]}}const NS={narrow:["B","A"],abbreviated:["BC","AD"],wide:["Before Christ","Anno Domini"]},IS={narrow:["1","2","3","4"],abbreviated:["Q1","Q2","Q3","Q4"],wide:["1st quarter","2nd quarter","3rd quarter","4th quarter"]},TS={narrow:["J","F","M","A","M","J","J","A","S","O","N","D"],abbreviated:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],wide:["January","February","March","April","May","June","July","August","September","October","November","December"]},$S={narrow:["S","M","T","W","T","F","S"],short:["Su","Mo","Tu","We","Th","Fr","Sa"],abbreviated:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],wide:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"]},DS={narrow:{am:"a",pm:"p",midnight:"mi",noon:"n",morning:"morning",afternoon:"afternoon",evening:"evening",night:"night"},abbreviated:{am:"AM",pm:"PM",midnight:"midnight",noon:"noon",morning:"morning",afternoon:"afternoon",evening:"evening",night:"night"},wide:{am:"a.m.",pm:"p.m.",midnight:"midnight",noon:"noon",morning:"morning",afternoon:"afternoon",evening:"evening",night:"night"}},MS={narrow:{am:"a",pm:"p",midnight:"mi",noon:"n",morning:"in the morning",afternoon:"in the afternoon",evening:"in the evening",night:"at night"},abbreviated:{am:"AM",pm:"PM",midnight:"midnight",noon:"noon",morning:"in the morning",afternoon:"in the afternoon",evening:"in the evening",night:"at night"},wide:{am:"a.m.",pm:"p.m.",midnight:"midnight",noon:"noon",morning:"in the morning",afternoon:"in the afternoon",evening:"in the evening",night:"at night"}},VS={ordinalNumber:(e,t)=>{const n=Number(e),r=n%100;if(r>20||r<10)switch(r%10){case 1:return n+"st";case 2:return n+"nd";case 3:return n+"rd"}return n+"th"},era:oa({values:NS,defaultWidth:"wide"}),quarter:oa({values:IS,defaultWidth:"wide",argumentCallback:e=>e-1}),month:oa({values:TS,defaultWidth:"wide"}),day:oa({values:$S,defaultWidth:"wide"}),dayPeriod:oa({values:DS,defaultWidth:"wide",formattingValues:MS,defaultFormattingWidth:"wide"})};function sa(e){return(t,n={})=>{const r=n.width,o=r&&e.matchPatterns[r]||e.matchPatterns[e.defaultMatchWidth],s=t.match(o);if(!s)return null;const i=s[0],a=r&&e.parsePatterns[r]||e.parsePatterns[e.defaultParseWidth],l=Array.isArray(a)?RS(a,d=>d.test(i)):LS(a,d=>d.test(i));let u;u=e.valueCallback?e.valueCallback(l):l,u=n.valueCallback?n.valueCallback(u):u;const c=t.slice(i.length);return{value:u,rest:c}}}function LS(e,t){for(const n in e)if(Object.prototype.hasOwnProperty.call(e,n)&&t(e[n]))return n}function RS(e,t){for(let n=0;n<e.length;n++)if(t(e[n]))return n}function US(e){return(t,n={})=>{const r=t.match(e.matchPattern);if(!r)return null;const o=r[0],s=t.match(e.parsePattern);if(!s)return null;let i=e.valueCallback?e.valueCallback(s[0]):s[0];i=n.valueCallback?n.valueCallback(i):i;const a=t.slice(o.length);return{value:i,rest:a}}}const jS=/^(\d+)(th|st|nd|rd)?/i,BS=/\d+/i,FS={narrow:/^(b|a)/i,abbreviated:/^(b\.?\s?c\.?|b\.?\s?c\.?\s?e\.?|a\.?\s?d\.?|c\.?\s?e\.?)/i,wide:/^(before christ|before common era|anno domini|common era)/i},qS={any:[/^b/i,/^(a|c)/i]},HS={narrow:/^[1234]/i,abbreviated:/^q[1234]/i,wide:/^[1234](th|st|nd|rd)? quarter/i},zS={any:[/1/i,/2/i,/3/i,/4/i]},WS={narrow:/^[jfmasond]/i,abbreviated:/^(jan|feb|mar|apr|may|jun|jul|aug|sep|oct|nov|dec)/i,wide:/^(january|february|march|april|may|june|july|august|september|october|november|december)/i},ZS={narrow:[/^j/i,/^f/i,/^m/i,/^a/i,/^m/i,/^j/i,/^j/i,/^a/i,/^s/i,/^o/i,/^n/i,/^d/i],any:[/^ja/i,/^f/i,/^mar/i,/^ap/i,/^may/i,/^jun/i,/^jul/i,/^au/i,/^s/i,/^o/i,/^n/i,/^d/i]},GS={narrow:/^[smtwf]/i,short:/^(su|mo|tu|we|th|fr|sa)/i,abbreviated:/^(sun|mon|tue|wed|thu|fri|sat)/i,wide:/^(sunday|monday|tuesday|wednesday|thursday|friday|saturday)/i},YS={narrow:[/^s/i,/^m/i,/^t/i,/^w/i,/^t/i,/^f/i,/^s/i],any:[/^su/i,/^m/i,/^tu/i,/^w/i,/^th/i,/^f/i,/^sa/i]},KS={narrow:/^(a|p|mi|n|(in the|at) (morning|afternoon|evening|night))/i,any:/^([ap]\.?\s?m\.?|midnight|noon|(in the|at) (morning|afternoon|evening|night))/i},QS={any:{am:/^a/i,pm:/^p/i,midnight:/^mi/i,noon:/^no/i,morning:/morning/i,afternoon:/afternoon/i,evening:/evening/i,night:/night/i}},XS={ordinalNumber:US({matchPattern:jS,parsePattern:BS,valueCallback:e=>parseInt(e,10)}),era:sa({matchPatterns:FS,defaultMatchWidth:"wide",parsePatterns:qS,defaultParseWidth:"any"}),quarter:sa({matchPatterns:HS,defaultMatchWidth:"wide",parsePatterns:zS,defaultParseWidth:"any",valueCallback:e=>e+1}),month:sa({matchPatterns:WS,defaultMatchWidth:"wide",parsePatterns:ZS,defaultParseWidth:"any"}),day:sa({matchPatterns:GS,defaultMatchWidth:"wide",parsePatterns:YS,defaultParseWidth:"any"}),dayPeriod:sa({matchPatterns:KS,defaultMatchWidth:"any",parsePatterns:QS,defaultParseWidth:"any"})},_0={code:"en-US",formatDistance:xS,formatLong:OS,formatRelative:PS,localize:VS,match:XS,options:{weekStartsOn:0,firstWeekContainsDate:1}};function JS(e,t){const n=Vt(e,t==null?void 0:t.in);return lS(n,_S(n))+1}function eP(e,t){const n=Vt(e,t==null?void 0:t.in),r=+eu(n)-+uS(n);return Math.round(r/g0)+1}function k0(e,t){var c,d,f,m;const n=Vt(e,t==null?void 0:t.in),r=n.getFullYear(),o=na(),s=(t==null?void 0:t.firstWeekContainsDate)??((d=(c=t==null?void 0:t.locale)==null?void 0:c.options)==null?void 0:d.firstWeekContainsDate)??o.firstWeekContainsDate??((m=(f=o.locale)==null?void 0:f.options)==null?void 0:m.firstWeekContainsDate)??1,i=uo((t==null?void 0:t.in)||e,0);i.setFullYear(r+1,0,s),i.setHours(0,0,0,0);const a=ra(i,t),l=uo((t==null?void 0:t.in)||e,0);l.setFullYear(r,0,s),l.setHours(0,0,0,0);const u=ra(l,t);return+n>=+a?r+1:+n>=+u?r:r-1}function tP(e,t){var a,l,u,c;const n=na(),r=(t==null?void 0:t.firstWeekContainsDate)??((l=(a=t==null?void 0:t.locale)==null?void 0:a.options)==null?void 0:l.firstWeekContainsDate)??n.firstWeekContainsDate??((c=(u=n.locale)==null?void 0:u.options)==null?void 0:c.firstWeekContainsDate)??1,o=k0(e,t),s=uo((t==null?void 0:t.in)||e,0);return s.setFullYear(o,0,r),s.setHours(0,0,0,0),ra(s,t)}function nP(e,t){const n=Vt(e,t==null?void 0:t.in),r=+ra(n,t)-+tP(n,t);return Math.round(r/g0)+1}function dt(e,t){const n=e<0?"-":"",r=Math.abs(e).toString().padStart(t,"0");return n+r}const co={y(e,t){const n=e.getFullYear(),r=n>0?n:1-n;return dt(t==="yy"?r%100:r,t.length)},M(e,t){const n=e.getMonth();return t==="M"?String(n+1):dt(n+1,2)},d(e,t){return dt(e.getDate(),t.length)},a(e,t){const n=e.getHours()/12>=1?"pm":"am";switch(t){case"a":case"aa":return n.toUpperCase();case"aaa":return n;case"aaaaa":return n[0];case"aaaa":default:return n==="am"?"a.m.":"p.m."}},h(e,t){return dt(e.getHours()%12||12,t.length)},H(e,t){return dt(e.getHours(),t.length)},m(e,t){return dt(e.getMinutes(),t.length)},s(e,t){return dt(e.getSeconds(),t.length)},S(e,t){const n=t.length,r=e.getMilliseconds(),o=Math.trunc(r*Math.pow(10,n-3));return dt(o,t.length)}},Ys={midnight:"midnight",noon:"noon",morning:"morning",afternoon:"afternoon",evening:"evening",night:"night"},x0={G:function(e,t,n){const r=e.getFullYear()>0?1:0;switch(t){case"G":case"GG":case"GGG":return n.era(r,{width:"abbreviated"});case"GGGGG":return n.era(r,{width:"narrow"});case"GGGG":default:return n.era(r,{width:"wide"})}},y:function(e,t,n){if(t==="yo"){const r=e.getFullYear(),o=r>0?r:1-r;return n.ordinalNumber(o,{unit:"year"})}return co.y(e,t)},Y:function(e,t,n,r){const o=k0(e,r),s=o>0?o:1-o;if(t==="YY"){const i=s%100;return dt(i,2)}return t==="Yo"?n.ordinalNumber(s,{unit:"year"}):dt(s,t.length)},R:function(e,t){const n=y0(e);return dt(n,t.length)},u:function(e,t){const n=e.getFullYear();return dt(n,t.length)},Q:function(e,t,n){const r=Math.ceil((e.getMonth()+1)/3);switch(t){case"Q":return String(r);case"QQ":return dt(r,2);case"Qo":return n.ordinalNumber(r,{unit:"quarter"});case"QQQ":return n.quarter(r,{width:"abbreviated",context:"formatting"});case"QQQQQ":return n.quarter(r,{width:"narrow",context:"formatting"});case"QQQQ":default:return n.quarter(r,{width:"wide",context:"formatting"})}},q:function(e,t,n){const r=Math.ceil((e.getMonth()+1)/3);switch(t){case"q":return String(r);case"qq":return dt(r,2);case"qo":return n.ordinalNumber(r,{unit:"quarter"});case"qqq":return n.quarter(r,{width:"abbreviated",context:"standalone"});case"qqqqq":return n.quarter(r,{width:"narrow",context:"standalone"});case"qqqq":default:return n.quarter(r,{width:"wide",context:"standalone"})}},M:function(e,t,n){const r=e.getMonth();switch(t){case"M":case"MM":return co.M(e,t);case"Mo":return n.ordinalNumber(r+1,{unit:"month"});case"MMM":return n.month(r,{width:"abbreviated",context:"formatting"});case"MMMMM":return n.month(r,{width:"narrow",context:"formatting"});case"MMMM":default:return n.month(r,{width:"wide",context:"formatting"})}},L:function(e,t,n){const r=e.getMonth();switch(t){case"L":return String(r+1);case"LL":return dt(r+1,2);case"Lo":return n.ordinalNumber(r+1,{unit:"month"});case"LLL":return n.month(r,{width:"abbreviated",context:"standalone"});case"LLLLL":return n.month(r,{width:"narrow",context:"standalone"});case"LLLL":default:return n.month(r,{width:"wide",context:"standalone"})}},w:function(e,t,n,r){const o=nP(e,r);return t==="wo"?n.ordinalNumber(o,{unit:"week"}):dt(o,t.length)},I:function(e,t,n){const r=eP(e);return t==="Io"?n.ordinalNumber(r,{unit:"week"}):dt(r,t.length)},d:function(e,t,n){return t==="do"?n.ordinalNumber(e.getDate(),{unit:"date"}):co.d(e,t)},D:function(e,t,n){const r=JS(e);return t==="Do"?n.ordinalNumber(r,{unit:"dayOfYear"}):dt(r,t.length)},E:function(e,t,n){const r=e.getDay();switch(t){case"E":case"EE":case"EEE":return n.day(r,{width:"abbreviated",context:"formatting"});case"EEEEE":return n.day(r,{width:"narrow",context:"formatting"});case"EEEEEE":return n.day(r,{width:"short",context:"formatting"});case"EEEE":default:return n.day(r,{width:"wide",context:"formatting"})}},e:function(e,t,n,r){const o=e.getDay(),s=(o-r.weekStartsOn+8)%7||7;switch(t){case"e":return String(s);case"ee":return dt(s,2);case"eo":return n.ordinalNumber(s,{unit:"day"});case"eee":return n.day(o,{width:"abbreviated",context:"formatting"});case"eeeee":return n.day(o,{width:"narrow",context:"formatting"});case"eeeeee":return n.day(o,{width:"short",context:"formatting"});case"eeee":default:return n.day(o,{width:"wide",context:"formatting"})}},c:function(e,t,n,r){const o=e.getDay(),s=(o-r.weekStartsOn+8)%7||7;switch(t){case"c":return String(s);case"cc":return dt(s,t.length);case"co":return n.ordinalNumber(s,{unit:"day"});case"ccc":return n.day(o,{width:"abbreviated",context:"standalone"});case"ccccc":return n.day(o,{width:"narrow",context:"standalone"});case"cccccc":return n.day(o,{width:"short",context:"standalone"});case"cccc":default:return n.day(o,{width:"wide",context:"standalone"})}},i:function(e,t,n){const r=e.getDay(),o=r===0?7:r;switch(t){case"i":return String(o);case"ii":return dt(o,t.length);case"io":return n.ordinalNumber(o,{unit:"day"});case"iii":return n.day(r,{width:"abbreviated",context:"formatting"});case"iiiii":return n.day(r,{width:"narrow",context:"formatting"});case"iiiiii":return n.day(r,{width:"short",context:"formatting"});case"iiii":default:return n.day(r,{width:"wide",context:"formatting"})}},a:function(e,t,n){const o=e.getHours()/12>=1?"pm":"am";switch(t){case"a":case"aa":return n.dayPeriod(o,{width:"abbreviated",context:"formatting"});case"aaa":return n.dayPeriod(o,{width:"abbreviated",context:"formatting"}).toLowerCase();case"aaaaa":return n.dayPeriod(o,{width:"narrow",context:"formatting"});case"aaaa":default:return n.dayPeriod(o,{width:"wide",context:"formatting"})}},b:function(e,t,n){const r=e.getHours();let o;switch(r===12?o=Ys.noon:r===0?o=Ys.midnight:o=r/12>=1?"pm":"am",t){case"b":case"bb":return n.dayPeriod(o,{width:"abbreviated",context:"formatting"});case"bbb":return n.dayPeriod(o,{width:"abbreviated",context:"formatting"}).toLowerCase();case"bbbbb":return n.dayPeriod(o,{width:"narrow",context:"formatting"});case"bbbb":default:return n.dayPeriod(o,{width:"wide",context:"formatting"})}},B:function(e,t,n){const r=e.getHours();let o;switch(r>=17?o=Ys.evening:r>=12?o=Ys.afternoon:r>=4?o=Ys.morning:o=Ys.night,t){case"B":case"BB":case"BBB":return n.dayPeriod(o,{width:"abbreviated",context:"formatting"});case"BBBBB":return n.dayPeriod(o,{width:"narrow",context:"formatting"});case"BBBB":default:return n.dayPeriod(o,{width:"wide",context:"formatting"})}},h:function(e,t,n){if(t==="ho"){let r=e.getHours()%12;return r===0&&(r=12),n.ordinalNumber(r,{unit:"hour"})}return co.h(e,t)},H:function(e,t,n){return t==="Ho"?n.ordinalNumber(e.getHours(),{unit:"hour"}):co.H(e,t)},K:function(e,t,n){const r=e.getHours()%12;return t==="Ko"?n.ordinalNumber(r,{unit:"hour"}):dt(r,t.length)},k:function(e,t,n){let r=e.getHours();return r===0&&(r=24),t==="ko"?n.ordinalNumber(r,{unit:"hour"}):dt(r,t.length)},m:function(e,t,n){return t==="mo"?n.ordinalNumber(e.getMinutes(),{unit:"minute"}):co.m(e,t)},s:function(e,t,n){return t==="so"?n.ordinalNumber(e.getSeconds(),{unit:"second"}):co.s(e,t)},S:function(e,t){return co.S(e,t)},X:function(e,t,n){const r=e.getTimezoneOffset();if(r===0)return"Z";switch(t){case"X":return C0(r);case"XXXX":case"XX":return ns(r);case"XXXXX":case"XXX":default:return ns(r,":")}},x:function(e,t,n){const r=e.getTimezoneOffset();switch(t){case"x":return C0(r);case"xxxx":case"xx":return ns(r);case"xxxxx":case"xxx":default:return ns(r,":")}},O:function(e,t,n){const r=e.getTimezoneOffset();switch(t){case"O":case"OO":case"OOO":return"GMT"+E0(r,":");case"OOOO":default:return"GMT"+ns(r,":")}},z:function(e,t,n){const r=e.getTimezoneOffset();switch(t){case"z":case"zz":case"zzz":return"GMT"+E0(r,":");case"zzzz":default:return"GMT"+ns(r,":")}},t:function(e,t,n){const r=Math.trunc(e.getTime()/1e3);return dt(r,t.length)},T:function(e,t,n){const r=e.getTime();return dt(r,t.length)}};function E0(e,t=""){const n=e>0?"-":"+",r=Math.abs(e),o=Math.trunc(r/60),s=r%60;return s===0?n+String(o):n+String(o)+t+dt(s,2)}function C0(e,t){return e%60===0?(e>0?"-":"+")+dt(Math.abs(e)/60,2):ns(e,t)}function ns(e,t=""){const n=e>0?"-":"+",r=Math.abs(e),o=dt(Math.trunc(r/60),2),s=dt(r%60,2);return n+o+t+s}const A0=(e,t)=>{switch(e){case"P":return t.date({width:"short"});case"PP":return t.date({width:"medium"});case"PPP":return t.date({width:"long"});case"PPPP":default:return t.date({width:"full"})}},O0=(e,t)=>{switch(e){case"p":return t.time({width:"short"});case"pp":return t.time({width:"medium"});case"ppp":return t.time({width:"long"});case"pppp":default:return t.time({width:"full"})}},rP={p:O0,P:(e,t)=>{const n=e.match(/(P+)(p+)?/)||[],r=n[1],o=n[2];if(!o)return A0(e,t);let s;switch(r){case"P":s=t.dateTime({width:"short"});break;case"PP":s=t.dateTime({width:"medium"});break;case"PPP":s=t.dateTime({width:"long"});break;case"PPPP":default:s=t.dateTime({width:"full"});break}return s.replace("{{date}}",A0(r,t)).replace("{{time}}",O0(o,t))}},oP=/^D+$/,sP=/^Y+$/,iP=["D","DD","YY","YYYY"];function aP(e){return oP.test(e)}function lP(e){return sP.test(e)}function uP(e,t,n){const r=cP(e,t,n);if(console.warn(r),iP.includes(e))throw new RangeError(r)}function cP(e,t,n){const r=e[0]==="Y"?"years":"days of the month";return`Use \`${e.toLowerCase()}\` instead of \`${e}\` (in \`${t}\`) for formatting ${r} to the input \`${n}\`; see: https://github.com/date-fns/date-fns/blob/master/docs/unicodeTokens.md`}const dP=/[yYQqMLwIdDecihHKkms]o|(\w)\1*|''|'(''|[^'])+('|$)|./g,fP=/P+p+|P+|p+|''|'(''|[^'])+('|$)|./g,mP=/^'([^]*?)'?$/,hP=/''/g,pP=/[a-zA-Z]/;function vP(e,t,n){var c,d,f,m;const r=na(),o=r.locale??_0,s=r.firstWeekContainsDate??((d=(c=r.locale)==null?void 0:c.options)==null?void 0:d.firstWeekContainsDate)??1,i=r.weekStartsOn??((m=(f=r.locale)==null?void 0:f.options)==null?void 0:m.weekStartsOn)??0,a=Vt(e);if(!fS(a))throw new RangeError("Invalid time value");let l=t.match(fP).map(p=>{const g=p[0];if(g==="p"||g==="P"){const b=rP[g];return b(p,o.formatLong)}return p}).join("").match(dP).map(p=>{if(p==="''")return{isToken:!1,value:"'"};const g=p[0];if(g==="'")return{isToken:!1,value:gP(p)};if(x0[g])return{isToken:!0,value:p};if(g.match(pP))throw new RangeError("Format string contains an unescaped latin alphabet character `"+g+"`");return{isToken:!1,value:p}});o.localize.preprocessor&&(l=o.localize.preprocessor(a,l));const u={firstWeekContainsDate:s,weekStartsOn:i,locale:o};return l.map(p=>{if(!p.isToken)return p.value;const g=p.value;(lP(g)||aP(g))&&uP(g,t,String(e));const b=x0[g[0]];return b(a,g,o.localize,u)}).join("")}function gP(e){const t=e.match(mP);return t?t[1].replace(hP,"'"):e}function bP(e,t,n){const r=na(),o=(n==null?void 0:n.locale)??r.locale??_0,s=2520,i=ru(e,t);if(isNaN(i))throw new RangeError("Invalid time value");const a=Object.assign({},n,{addSuffix:n==null?void 0:n.addSuffix,comparison:i}),[l,u]=nu(n==null?void 0:n.in,...i>0?[t,e]:[e,t]),c=wS(u,l),d=(tu(u)-tu(l))/1e3,f=Math.round((c-d)/60);let m;if(f<2)return n!=null&&n.includeSeconds?c<5?o.formatDistance("lessThanXSeconds",5,a):c<10?o.formatDistance("lessThanXSeconds",10,a):c<20?o.formatDistance("lessThanXSeconds",20,a):c<40?o.formatDistance("halfAMinute",0,a):c<60?o.formatDistance("lessThanXMinutes",1,a):o.formatDistance("xMinutes",1,a):f===0?o.formatDistance("lessThanXMinutes",1,a):o.formatDistance("xMinutes",f,a);if(f<45)return o.formatDistance("xMinutes",f,a);if(f<90)return o.formatDistance("aboutXHours",1,a);if(f<b0){const p=Math.round(f/60);return o.formatDistance("aboutXHours",p,a)}else{if(f<s)return o.formatDistance("xDays",1,a);if(f<Xl){const p=Math.round(f/b0);return o.formatDistance("xDays",p,a)}else if(f<Xl*2)return m=Math.round(f/Xl),o.formatDistance("aboutXMonths",m,a)}if(m=yS(u,l),m<12){const p=Math.round(f/Xl);return o.formatDistance("xMonths",p,a)}else{const p=m%12,g=Math.trunc(m/12);return p<3?o.formatDistance("aboutXYears",g,a):p<9?o.formatDistance("overXYears",g,a):o.formatDistance("almostXYears",g+1,a)}}function yP(e,t){return bP(e,cS(e),t)}function wP(e){return yP(e,{addSuffix:!0})}function rs(e,t){return vP(e,t||"PPP")}const _P={class:"moonbase:subscriptions"},kP={key:0,class:"moonbase:loader"},xP={key:1,class:"moonbase:loader"},EP=["data-subscription-status"],CP={class:"moonbase:subscriptions-item-content"},AP={class:"moonbase:subscriptions-item-content"},OP={key:0,class:"moonbase:subscriptions-item-milestone-progress"},SP={class:"moonbase:subscriptions-item-milestone-progress-title"},PP=ae({__name:"Subscriptions",setup(e){const t=ge(),{getSubscriptions:n}=Zo(),r=V(new Date),o=V(null);return Fe(async()=>{let s=await n();for(o.value=s.items;s.hasMore&&s.next;)s=await n(s.next),o.value.push(...s.items)}),(s,i)=>(h(),k("div",_P,[o.value?o.value.length===0?(h(),k("div",xP," No subscriptions found ")):q("",!0):(h(),k("div",kP,[y(It),i[0]||(i[0]=S(" Loading subscriptions.. ",-1))])),(h(!0),k(ee,null,ct(o.value||[],a=>(h(),k(ee,{key:a.id},[$("div",{"data-subscription-status":a.status,class:"moonbase:subscriptions-item"},[a.content.type==="Product"?(h(),k(ee,{key:0},[y(Mt,{url:a.content.product.iconUrl,size:48},null,8,["url"]),$("div",CP,[y(ot,null,{default:x(()=>[S(N(a.content.quantity)+" x "+N(a.content.product.name),1)]),_:2},1024),y(ke,null,{default:x(()=>[S(N(a.status===v(Hr).Active?"Renews":a.expiresAt>r.value?"Expires":"Expired")+" "+N(v(rs)(a.expiresAt)),1)]),_:2},1024)])],64)):(h(),k(ee,{key:1},[y(Mt,{url:a.content.bundle.iconUrl,size:48},null,8,["url"]),$("div",AP,[y(ot,null,{default:x(()=>[S(N(a.content.quantity)+" x "+N(a.content.bundle.name),1)]),_:2},1024),y(ke,null,{default:x(()=>[S(N(a.status===v(Hr).Active?"Renews":a.expiresAt>r.value?"Expires":"Expired")+" "+N(v(rs)(a.expiresAt)),1)]),_:2},1024)])],64)),$("div",null,[y(Ls,{variant:"subtle",onClick:l=>v(t).show(v(G).Subscription,v(W).ManageSubscription,{subscription_id:a.id})},{default:x(()=>[y(v(yv)),i[1]||(i[1]=$("span",{class:"moonbase:clickable"},null,-1))]),_:1},8,["onClick"])])],8,EP),a.milestoneProgress?(h(),k("div",OP,[$("div",SP,[y(ot,null,{default:x(()=>[S(N(a.milestoneProgress.title),1)]),_:2},1024),y(St,null,{default:x(()=>[S(N(a.milestoneProgress.currentNormalizedCycleNumber-(a.milestoneProgress.currentCycleIsCompleted?0:1))+" / "+N(a.milestoneProgress.toNormalizedCycleNumber)+" "+N(v(ta)(a.cycleLength))+"s ",1)]),_:2},1024)]),y(v0,{progress:a.milestoneProgress},null,8,["progress"])])):q("",!0)],64))),128))]))}}),NP={class:"moonbase:customer"},IP=ae({__name:"Customer",setup(e){const t=ge(),{user:n}=Ze(),r=oe(qe),o=F(()=>[{intent:W.ViewProducts,title:"Products",content:W3},{intent:W.ViewSubscriptions,title:"Subscriptions",content:PP,predicate:()=>{var l;return((l=n.value)==null?void 0:l.hasSubscriptions)??!1}},{intent:W.ViewAccount,title:"Account",content:I3},{intent:W.RedeemVoucher,title:"Redeem",content:rS}].filter(l=>l.predicate===void 0||l.predicate())),s=F(()=>t.intent===W.ConnectAccount),i=F(()=>o.value.findIndex(l=>l.intent===t.intent));function a(l){t.intent=o.value[l].intent}return(l,u)=>(h(),k("div",NP,[s.value?(h(),j(U3,{key:0})):(h(),j(v(ex),{key:1,"selected-index":i.value,onChange:a},{default:x(()=>{var c,d;return[y(v(tx),{"data-corners":(c=v(r))==null?void 0:c.theme.corners,"data-background":(d=v(r))==null?void 0:d.theme.colors.background},{default:x(()=>[(h(!0),k(ee,null,ct(o.value,f=>(h(),j(v(nx),{key:f.intent},{default:x(()=>[S(N(f.title),1)]),_:2},1024))),128))]),_:1},8,["data-corners","data-background"]),y(v(rx),null,{default:x(()=>[(h(!0),k(ee,null,ct(o.value,f=>(h(),j(v(ox),{key:f.intent},{default:x(()=>[(h(),j(rc(f.content)))]),_:2},1024))),128))]),_:1})]}),_:1},8,["selected-index"]))]))}}),TP={class:"moonbase:join-group"},$P={key:0,class:"moonbase:loader"},DP={key:1,class:"moonbase:join-failure"},MP={class:"moonbase:error","data-visible":""},VP={class:"moonbase:join-group-actions"},LP={class:"moonbase:join-group-actions"},RP=ae({__name:"JoinGroup",setup(e){const t=ge(),{user:n}=Ze(),{join:r}=Kp(),o=oe(zn),s=V(!0),i=V(null),a=V(!1),l=V(!1);function u(){t.enqueue(G.Groups,W.JoinGroup,t.parameters??void 0),t.show(G.Authentication,W.SignIn)}async function c(){s.value=!0,i.value=null,a.value=!1,l.value=!1;const m=t.getParameter("group_id");if(!m){i.value="This link is no longer valid.",s.value=!1;return}try{await r(m),n.value&&(o==null||o(Ce.JoinedGroup,{groupId:m,user:n.value}))}catch(p){p instanceof wr?i.value="This link is no longer valid.":p instanceof ds?(a.value=!0,i.value="Your session ended before we could add you to the list"):(l.value=!0,i.value=p.message)}s.value=!1}Fe(c);function d(){c()}function f(){t.show(G.Customer,W.ViewAccount)}return(m,p)=>(h(),k("div",TP,[s.value?(h(),k("div",$P,[y(It)])):i.value?(h(),k("div",DP,[$("span",MP,N(i.value),1),$("div",VP,[a.value?(h(),j(Oe,{key:0,label:"Sign in",handler:u})):l.value?(h(),j(Oe,{key:1,label:"Try again",handler:d})):(h(),j(Oe,{key:2,label:"Go to your account",handler:f}))])])):(h(),k(ee,{key:2},[y(Ye,null,{default:x(()=>[...p[0]||(p[0]=[S(" You're on the list ",-1)])]),_:1}),y(ze,null,{default:x(()=>[...p[1]||(p[1]=[S(" We've added you. You'll hear from us when there's something worth sending. ",-1)])]),_:1}),$("div",LP,[y(Oe,{label:"Go to your account",variant:"secondary",handler:f})])],64))]))}}),UP={class:"moonbase:product-card-content"},jP=["data-open"],BP=ae({__name:"ProductCard",props:{product:{}},setup(e){const t=V(!1),n=V(null),r=F(()=>n.value&&n.value.$el&&n.value.$el.scrollHeight>n.value.$el.clientHeight);return(o,s)=>(h(),j(rn,{class:"moonbase:product-card"},{addon:x(()=>[e.product.description?(h(),k("div",{key:0,class:"moonbase:product-card-description","data-open":t.value||void 0},[y(ke,{ref_key:"descriptionRef",ref:n},{default:x(()=>[S(N(e.product.description),1)]),_:1},512),!t.value&&r.value?(h(),k("button",{key:0,onClick:s[0]||(s[0]=i=>t.value=!0)},[y(ot,null,{default:x(()=>[...s[1]||(s[1]=[S(" read more ",-1)])]),_:1})])):q("",!0)],8,jP)):q("",!0)]),default:x(()=>{var i;return[y(Mt,{url:e.product.iconUrl,size:72},null,8,["url"]),$("div",UP,[y(ur,null,{default:x(()=>{var a;return[S(N((a=e.product)==null?void 0:a.name),1)]}),_:1}),(i=e.product)!=null&&i.tagline?(h(),j(ke,{key:0,class:"moonbase:product-card-tagline"},{default:x(()=>{var a;return[S(N((a=e.product)==null?void 0:a.tagline),1)]}),_:1})):q("",!0)])]}),_:1}))}});function FP(e){const t=["B","KB","MB","GB","TB","PB","EB","ZB","YB"];if(e<1)return`${e} B`;const n=Math.min(Math.floor(Math.log(e)/Math.log(1024)),t.length-1);e=Number(e/1024**n);const r=t[n];return e>=10||e%1===0?`${e.toFixed(0)} ${r}`:`${e.toFixed(1)} ${r}`}function qP(e){return e instanceof Pa}function HP(e,t){return e.downloadsAllowed?null:t?e.downloadsNeedsOwnership&&!(e.numberOfLicenses||e.subscriptionLicenses)?"ownership":"unavailable":"account"}const zP={class:"moonbase:product-downloads"},WP=["data-open"],ZP={key:1,class:"moonbase:product-downloads-content"},GP={key:2,class:"moonbase:product-downloads-content"},YP={class:"moonbase:product-downloads-list"},KP={class:"moonbase:product-downloads-download-actions"},QP=ae({__name:"ProductDownloads",props:{product:{}},setup(e){const t=e,n=ge(),r=Ze(),o=Kl(),s=oe(qe),i=oe(zn),{downloadProduct:a}=Zo(),l=V(!1),u=V(null),c=V(!1),d={account:"This product requires an account to download",ownership:"This product requires ownership to download",unavailable:"You don't have access to download this product"},f=F(()=>c.value?"unavailable":HP(t.product,!!r.user.value)),m=F(()=>u.value&&u.value.$el&&u.value.$el.scrollHeight>u.value.$el.clientHeight);function p(){n.enqueue(G.Product,W.DownloadProduct,n.parameters??void 0),n.show(G.Authentication,W.SignIn)}function g(){n.enqueue(G.Product,W.DownloadProduct,n.parameters??void 0),n.show(G.Authentication,W.SignUp)}const b=[bn.Windows,bn.Mac,bn.Linux,bn.Universal];function O(){var w;const E=(((w=navigator.userAgentData)==null?void 0:w.platform)??navigator.platform??"Unknown").toLowerCase();return/mac/.test(E)?bn.Mac:/win/.test(E)?bn.Windows:/linux/.test(E)?bn.Linux:bn.Universal}const P=O(),I=[P,...b.filter(E=>E!==P)],U=V(null);Fe(async()=>{var E;try{const w=await((E=navigator.userAgentData)==null?void 0:E.getHighEntropyValues(["architecture","bitness"]));if(!(w!=null&&w.architecture)||!w.bitness)return;w.architecture==="arm"?U.value=w.bitness==="64"?Ut.Arm64:Ut.Arm:w.architecture==="x86"&&(U.value=w.bitness==="64"?Ut.X64:Ut.X86)}catch{}});function B(E){return U.value?!E.arch||E.arch===Ut.Universal||E.arch===Ut.Unknown?1:E.arch===U.value?0:2:0}const z=F(()=>I.flatMap(E=>(t.product.downloads??[]).filter(w=>w.platform===E).slice().sort((w,_)=>B(w)-B(_)))),L=F(()=>{const E=(t.product.downloads??[]).filter(_=>_.platform===P);if(E.length===0)return new Set;const w=Math.min(...E.map(B));return new Set(E.filter(_=>B(_)===w))});function T(E){if(!E.arch||E.arch===Ut.Universal||E.arch===Ut.Unknown)return null;if(E.platform===bn.Mac){if(E.arch===Ut.Arm64)return"Apple Silicon";if(E.arch===Ut.X64)return"Intel"}switch(E.arch){case Ut.X86:return"x86";case Ut.X64:return"x64";case Ut.Arm:return"ARM";case Ut.Arm64:return"ARM64";default:return null}}async function A(E){try{await a(E),i==null||i(Ce.DownloadedProduct,{product:t.product,download:E,user:r.user.value})}catch(w){if(qP(w))throw c.value=!0,new ts;if(w instanceof Kt)o.reportProblem("error",{type:w.name,title:w.title,detail:w.detail,status:w.status,errors:w.errors?Object.fromEntries(Object.entries(w.errors).map(([_,D])=>[_,[D]])):void 0,instance:"ProductDownloads.vue:startDownload"});else{const _=w;o.reportProblem("error",{type:_.name,title:_.message,instance:"ProductDownloads.vue:startDownload"})}throw w}}return(E,w)=>{var _;return h(),k("div",zP,[y(Ye,null,{default:x(()=>[w[1]||(w[1]=S(" Downloads ",-1)),y(ke,null,{default:x(()=>[S(" Version "+N(e.product.version),1)]),_:1})]),_:1}),e.product.releaseDescription?(h(),k("div",{key:0,class:"moonbase:product-downloads-description","data-open":l.value||void 0},[y(ke,{ref_key:"descriptionRef",ref:u},{default:x(()=>[S(N(e.product.releaseDescription),1)]),_:1},512),!l.value&&m.value?(h(),k("button",{key:0,onClick:w[0]||(w[0]=D=>l.value=!0)},[y(ot,null,{default:x(()=>[...w[2]||(w[2]=[S(" read more ",-1)])]),_:1})])):q("",!0)],8,WP)):q("",!0),f.value?(h(),k("div",ZP,[y(ze,{"data-center":""},{default:x(()=>[S(N(d[f.value]),1)]),_:1}),f.value==="account"?(h(),k(ee,{key:0},[y(Oe,{label:"Sign in",handler:p}),(_=v(s))!=null&&_.auth.signUp.enabled?(h(),j(Oe,{key:0,label:"Create account",variant:"subtle",handler:g})):q("",!0)],64)):q("",!0)])):(h(),k("div",GP,[$("div",YP,[(h(!0),k(ee,null,ct(z.value,D=>(h(),j(rn,{key:D.key,class:"moonbase:product-downloads-download"},{addon:x(()=>[$("div",KP,[y(Oe,{label:D.platform===v(bn).Universal?"Download":`Download for ${D.platform}`,variant:L.value.has(D)?"primary":"secondary","no-reset":!0,handler:()=>A(D),icon:v(Uk)},null,8,["label","variant","handler","icon"])])]),default:x(()=>[$("div",null,[y(Ye,null,{default:x(()=>[S(N(D.name),1)]),_:2},1024),y(St,null,{default:x(()=>[S(N(D.platform)+N(T(D)?` (${T(D)})`:"")+" - "+N(v(FP)(D.size)),1)]),_:2},1024)])]),_:2},1024))),128))]),z.value.length===0?(h(),j(ze,{key:0,"data-center":""},{default:x(()=>[...w[3]||(w[3]=[S(" No downloadable files found ",-1)])]),_:1})):q("",!0)]))])}}}),XP=["href"],JP=ae({__name:"LinkifiedText",props:{text:{}},setup(e){const t=e,n=/\b((?:https?:\/\/|www\.)[^\s<>"'`]+?)(?=[)\]}>,.!?;:'"]?(?:\s|$))/gi;function r(i){return/^www\./i.test(i)?`https://${i}`:i}function o(i){const a=[];if(!i)return a;let l=0;for(const u of i.matchAll(n)){const c=u[0],d=u.index??0;d>l&&a.push({type:"text",text:i.slice(l,d)});const f=c.replace(/[)\]}>,.!?;:'"]+$/g,()=>""),m=f,p=r(f);m.length>0&&a.push({type:"url",text:m,href:p});const g=c.slice(f.length);g&&a.push({type:"text",text:g}),l=d+c.length}return l<i.length&&a.push({type:"text",text:i.slice(l)}),a}const s=F(()=>o(t.text));return(i,a)=>(h(!0),k(ee,null,ct(s.value,(l,u)=>(h(),k(ee,{key:u},[l.type==="url"?(h(),k("a",{key:0,href:l.href,target:"_blank",rel:"noopener noreferrer nofollow"},N(l.text),9,XP)):(h(),k(ee,{key:1},[S(N(l.text),1)],64))],64))),128))}}),e6={key:0,class:"moonbase:product-license-external-content"},t6={key:1,class:"moonbase:product-license-external-content"},n6={key:2,class:"moonbase:product-license-external-content"},r6={key:3,class:"moonbase:product-license-account-connection"},o6={class:"moonbase:account-provider"},s6=["src"],i6=["data-open"],a6=ae({__name:"ProductLicense",props:{license:{},product:{}},setup(e){const t=ge(),n=V(!1),r=V(null),o=F(()=>r.value&&r.value.$el&&r.value.$el.scrollHeight>r.value.$el.clientHeight);return(s,i)=>(h(),j(rn,{class:"moonbase:product-license"},xi({default:x(()=>[$("div",null,[y(St,null,{default:x(()=>[S(N(e.product.name)+" license ",1)]),_:1}),!e.license.externalFulfillment&&!e.license.requiredConnectedAccount?(h(),j(Ye,{key:0},{default:x(()=>[S(N(e.license.id),1)]),_:1})):q("",!0)])]),_:2},[e.license.externalFulfillment||e.license.fulfillmentMessage||e.license.requiredConnectedAccount?{name:"addon",fn:x(()=>{var a,l;return[typeof e.license.externalFulfillment=="string"?(h(),k("div",e6,[y(Bn,null,{default:x(()=>[...i[1]||(i[1]=[S(" Key code: ",-1)])]),_:1}),$("code",null,N(e.license.externalFulfillment),1)])):((a=e.license.externalFulfillment)==null?void 0:a.type)==="file"?(h(),k("div",t6,[y(Bn,null,{default:x(()=>[...i[2]||(i[2]=[S(" License file ",-1)])]),_:1}),y(ea,{type:"anchor",href:`data:${e.license.externalFulfillment.contentType};base64,${e.license.externalFulfillment.data}`,download:e.license.externalFulfillment.fileName,label:`Download ${e.license.externalFulfillment.fileName}`,variant:"secondary",icon:v(wv)},null,8,["href","download","label","icon"])])):((l=e.license.externalFulfillment)==null?void 0:l.type)==="iLok"?(h(),k("div",n6,[y(Bn,null,{default:x(()=>[y(v(hO)),i[3]||(i[3]=S(" Deposited to your iLok account ",-1))]),_:1})])):e.license.status===v(bu).Pending&&e.license.requiredConnectedAccount==="iLok"?(h(),k("div",r6,[$("div",o6,[$("img",{src:v(Gl),alt:"iLok"},null,8,s6),$("div",null,[y(Ye,null,{default:x(()=>[...i[4]||(i[4]=[S("iLok",-1)])]),_:1}),y(ke,null,{default:x(()=>[...i[5]||(i[5]=[S("Connect your account to receive your license",-1)])]),_:1})])]),y(Oe,{handler:()=>v(t).show(v(G).Customer,v(W).ConnectAccount,{provider_id:v(ri).iLok}),label:"Connect",variant:"primary"},null,8,["handler"])])):q("",!0),e.license.fulfillmentMessage?(h(),k("div",{key:4,class:"moonbase:product-license-fulfillment-message","data-open":n.value||void 0},[y(ke,{ref_key:"messageRef",ref:r},{default:x(()=>[y(JP,{text:e.license.fulfillmentMessage},null,8,["text"])]),_:1},512),!n.value&&o.value?(h(),k("button",{key:0,onClick:i[0]||(i[0]=u=>n.value=!0)},[y(ot,null,{default:x(()=>[...i[6]||(i[6]=[S(" read more ",-1)])]),_:1})])):q("",!0)],8,i6)):q("",!0)]}),key:"0"}:void 0]),1024))}}),l6={class:"moonbase:product-licenses"},u6={key:0,class:"moonbase:loader"},c6={key:1,class:"moonbase:empty"},d6={key:0,class:"moonbase:loader"},f6={key:1,class:"moonbase:product-licenses-activations"},m6={key:0},h6={class:"moonbase:product-licenses-activation-actions"},p6={key:2,class:"moonbase:loader"},v6={key:3,class:"moonbase:product-licenses-licenses"},g6=ae({__name:"ProductLicenses",props:{product:{}},emits:["revoked"],setup(e,{emit:t}){const n=e,r=t,{getProductActivations:o,getProductLicenses:s,revokeActivation:i}=Zo(),a=Kl(),l=V(null),u=V(null),c=V(!0);Fe(async()=>{if(n.product.maxActivations){let f=await o(n.product.id);for(l.value=f.items.map(m=>({...m,revoking:!1}));f.hasMore&&f.next;)f=await o(n.product.id,f.next),l.value.push(...f.items.map(m=>({...m,revoking:!1})))}if(n.product.externalLicenses){let f=await s(n.product.id);for(u.value=f.items;f.hasMore&&f.next;)f=await s(n.product.id,f.next),u.value.push(...f.items)}c.value=!1});async function d(f){try{await i(f),r("revoked",f),l.value&&Zt(1e3).then(()=>{var m,p;return(p=l.value)==null?void 0:p.splice((m=l.value)==null?void 0:m.indexOf(f),1)})}catch(m){if(m instanceof Kt)a.reportProblem("error",{type:m.name,title:m.title,detail:m.detail,status:m.status,errors:m.errors?Object.fromEntries(Object.entries(m.errors).map(([p,g])=>[p,[g]])):void 0,instance:"ProductLicenses.vue:revoke"});else{const p=m;a.reportProblem("error",{type:p.name,title:p.message,instance:"ProductLicenses.vue:revoke"})}throw m}}return(f,m)=>(h(),k("div",l6,[y(Ye,null,{default:x(()=>[m[0]||(m[0]=S(" Licenses ",-1)),e.product.maxActivations&&e.product.maxActivations>0?(h(),j(ke,{key:0},{default:x(()=>[S(N(e.product.currentActivations??0)+" of "+N(e.product.maxActivations)+" seats used ",1)]),_:1})):q("",!0)]),_:1}),c.value?(h(),k("div",u6,[y(It)])):!e.product.numberOfLicenses&&!e.product.subscriptionLicenses?(h(),k("div",c6,[y(ze,null,{default:x(()=>[...m[1]||(m[1]=[S(" You don't own any licenses for this product yet ",-1)])]),_:1}),e.product&&e.product.website?(h(),j(ea,{key:0,type:"anchor",href:e.product.website,label:"Purchase",icon:v(qc)},null,8,["href","icon"])):q("",!0)])):q("",!0),c.value?q("",!0):(h(),k(ee,{key:2},[e.product.maxActivations&&e.product.maxActivations>0&&!e.product.currentActivations?(h(),k("div",d6,[y(v(_v)),y(Ye,null,{default:x(()=>[...m[2]||(m[2]=[S(" No activations yet ",-1)])]),_:1})])):q("",!0),e.product.maxActivations&&l.value?(h(),k("div",f6,[(h(!0),k(ee,null,ct(l.value??[],p=>(h(),j(rn,{key:p.id,class:"moonbase:product-licenses-activation"},xi({default:x(()=>[$("div",null,[y(St,null,{default:x(()=>[...m[3]||(m[3]=[S(" Device ",-1)])]),_:1}),y(Ye,null,{default:x(()=>[S(N(p.name),1)]),_:2},1024)]),$("div",null,[y(St,null,{default:x(()=>[...m[4]||(m[4]=[S(" Activation ",-1)])]),_:1}),y(Ye,null,{default:x(()=>[S(N(p.activationMethod),1)]),_:2},1024)]),p.lastValidatedAt?(h(),k("div",m6,[y(St,null,{default:x(()=>[...m[5]||(m[5]=[S(" First activated ",-1)])]),_:1}),y(Ye,null,{default:x(()=>[S(N(v(wP)(p.firstValidatedAt)),1)]),_:2},1024)])):q("",!0)]),_:2},[p.activationMethod===v($a).Online?{name:"addon",fn:x(()=>[$("div",h6,[y(Oe,{label:"Revoke",variant:"secondary","no-reset":!0,handler:()=>d(p)},null,8,["handler"])])]),key:"0"}:void 0]),1024))),128))])):q("",!0),(!u.value||u.value.length===0)&&!e.product.maxActivations&&(e.product.numberOfLicenses||e.product.subscriptionLicenses)?(h(),k("div",p6,[y(v(_v)),e.product.numberOfLicenses?(h(),j(Ye,{key:0},{default:x(()=>[S(" You own "+N(e.product.numberOfLicenses)+" license"+N(e.product.numberOfLicenses!==1?"s":"")+" for this product ",1)]),_:1})):q("",!0),e.product.subscriptionLicenses?(h(),j(Ye,{key:1},{default:x(()=>[S(" You have "+N(e.product.subscriptionLicenses)+" subscription license"+N(e.product.subscriptionLicenses!==1?"s":"")+" for this product ",1)]),_:1})):q("",!0)])):e.product.externalLicenses&&u.value?(h(),k("div",v6,[(h(!0),k(ee,null,ct((u.value??[]).filter(p=>p.externalFulfillment||p.requiredConnectedAccount),p=>(h(),j(a6,{key:p.id,license:p,product:e.product},null,8,["license","product"]))),128))])):q("",!0)],64))]))}}),b6={class:"moonbase:download-product"},y6={key:0,class:"moonbase:loader"},w6={key:1,class:"moonbase:loader"},_6={key:2,class:"moonbase:loader"},k6={key:3},x6=ae({__name:"Product",setup(e){const t=ge(),n=Ze(),{loaded:r}=Ze(),{getProduct:o}=Zo(),s=V(null),i=V(null),a=V(!0);return Fe(async()=>{const l=t.getParameter("product_id"),u=t.getParameter("version");if(!l){i.value="Link is broken";return}try{s.value=await o(l,u||void 0)}catch(c){i.value=c.message}a.value=!1}),(l,u)=>(h(),k("div",b6,[a.value||!v(r)?(h(),k("div",y6,[y(It)])):i.value?(h(),k("div",w6,N(i.value),1)):s.value?(h(),k("div",k6,[y(BP,{product:s.value},null,8,["product"]),s.value.downloads?(h(),j(QP,{key:0,product:s.value},null,8,["product"])):q("",!0),v(n).user.value?(h(),j(g6,{key:1,product:s.value,onRevoked:u[0]||(u[0]=c=>s.value.currentActivations=(s.value.currentActivations??1)-1)},null,8,["product"])):q("",!0)])):(h(),k("div",_6," Could not find product "))]))}}),E6={class:"moonbase:peek"},C6=["data-visible"],A6={key:1,class:"moonbase:peek-voucher"},O6={key:0,class:"moonbase:peek-voucher-content"},S6={class:"moonbase:peek-voucher-auth"},P6=ae({__name:"Redeem",setup(e){const{peek:t}=Jp(),n=ge(),r=V(null),o=V(null),s=V(n.getParameter("code")||"");async function i(){o.value=null;try{r.value=await t(s.value),n.parameters={code:r.value.code}}catch(u){throw o.value=u,u}}function a(){n.enqueue(G.Customer,W.RedeemVoucher,{code:s.value}),n.show(G.Authentication,W.SignIn)}function l(){n.enqueue(G.Customer,W.RedeemVoucher,{code:s.value}),n.show(G.Authentication,W.SignUp)}return(u,c)=>(h(),k("div",E6,[y(As,{mode:"out-in",name:"moonbase:slide-left"},{default:x(()=>[r.value?(h(),k("div",A6,[$("div",null,[y(ur,null,{default:x(()=>[S(N(r.value.name),1)]),_:1}),r.value.description?(h(),j(Ye,{key:0},{default:x(()=>[S(' "'+N(r.value.description)+'" ',1)]),_:1})):q("",!0),y(ke,null,{default:x(()=>[c[2]||(c[2]=S(" Code: ",-1)),$("strong",null,N(r.value.code),1)]),_:1})]),y(Ye,null,{default:x(()=>[...c[3]||(c[3]=[S(" Voucher summary ",-1)])]),_:1}),r.value.redeemsProducts.length>0||r.value.redeemsBundles.length>0?(h(),k("div",O6,[(h(!0),k(ee,null,ct(r.value.redeemsProducts,({value:d,quantity:f})=>(h(),j(p0,{key:d.id,product:d,quantity:f},null,8,["product","quantity"]))),128)),(h(!0),k(ee,null,ct(r.value.redeemsBundles,({value:d,quantity:f})=>(h(),j(h0,{key:d.id,bundle:d,quantity:f},null,8,["bundle","quantity"]))),128))])):q("",!0),$("div",S6,[y(ze,null,{default:x(()=>[...c[4]||(c[4]=[S(" Sign in or create an account to redeem products ",-1)])]),_:1}),y(Oe,{label:"Sign in",variant:"primary",handler:a}),y(Oe,{label:"Create account",variant:"subtle",handler:l})])])):(h(),j(hn,{key:0,handler:i},{default:x(()=>{var d;return[y(ze,null,{default:x(()=>[...c[1]||(c[1]=[S(" Do you have a voucher you want to redeem? ",-1),$("br",null,null,-1),S(" Please enter the code below: ",-1)])]),_:1}),y(Tt,{modelValue:s.value,"onUpdate:modelValue":c[0]||(c[0]=f=>s.value=f),label:"Voucher code",name:"code",required:"",placeholder:"0000-0000-0000-0000"},null,8,["modelValue"]),y(pn,{label:"Redeem voucher",error:"Error"}),$("span",{class:"moonbase:error","data-visible":!!o.value||void 0},N((d=o.value)==null?void 0:d.message),9,C6)]}),_:1}))]),_:1})]))}}),N6={class:"moonbase:store-closed","data-testid":"moonbase-store-closed"},I6=ae({__name:"StoreClosed",setup(e){const t=ge();return(n,r)=>(h(),k("div",N6,[y(v(Fk)),y(ze,null,{default:x(()=>[...r[0]||(r[0]=[S(" This store has closed. Purchases, downloads and accounts are no longer available here. ",-1)])]),_:1}),y(Oe,{label:"Close",variant:"primary",handler:()=>v(t).reset()},null,8,["handler"])]))}}),T6={class:"moonbase:subscription-content-card-content"},$6=["data-open"],D6={class:"moonbase:subscription-content-card-content"},M6=["data-open"],V6=ae({__name:"ContentCard",props:{subscription:{}},setup(e){const t=V(new Date),n=V(!1),r=V(null),o=F(()=>r.value&&r.value.$el&&r.value.$el.scrollHeight>r.value.$el.clientHeight);return(s,i)=>e.subscription.content.type==="Product"?(h(),j(rn,{key:0,class:"moonbase:subscription-content-card"},{addon:x(()=>[e.subscription.content.product.description?(h(),k("div",{key:0,class:"moonbase:subscription-content-card-description","data-open":n.value||void 0},[y(ke,{ref_key:"descriptionRef",ref:r},{default:x(()=>[S(N(e.subscription.content.product.description),1)]),_:1},512),!n.value&&o.value?(h(),k("button",{key:0,onClick:i[0]||(i[0]=a=>n.value=!0)},[y(ot,null,{default:x(()=>[...i[2]||(i[2]=[S(" read more ",-1)])]),_:1})])):q("",!0)],8,$6)):q("",!0)]),default:x(()=>{var a;return[y(Mt,{url:e.subscription.content.product.iconUrl,size:72},null,8,["url"]),$("div",T6,[y(ur,null,{default:x(()=>{var l;return[S(N((l=e.subscription.content.product)==null?void 0:l.name),1)]}),_:1}),(a=e.subscription.content.product)!=null&&a.tagline?(h(),j(ke,{key:0,class:"moonbase:subscription-content-card-tagline"},{default:x(()=>{var l;return[S(N((l=e.subscription.content.product)==null?void 0:l.tagline),1)]}),_:1})):q("",!0),y(ke,{class:"moonbase:subscription-content-card-expiry"},{default:x(()=>[S(N(e.subscription.status===v(Hr).Active?"Renews":e.subscription.expiresAt>t.value?"Expires":"Expired")+" ",1),$("strong",null,N(v(rs)(e.subscription.expiresAt)),1)]),_:1})])]}),_:1})):(h(),j(rn,{key:1,class:"moonbase:subscription-content-card"},{addon:x(()=>[e.subscription.content.bundle.description?(h(),k("div",{key:0,class:"moonbase:subscription-content-card-description","data-open":n.value||void 0},[y(ke,{ref_key:"descriptionRef",ref:r},{default:x(()=>[S(N(e.subscription.content.bundle.description),1)]),_:1},512),!n.value&&o.value?(h(),k("button",{key:0,onClick:i[1]||(i[1]=a=>n.value=!0)},[y(ot,null,{default:x(()=>[...i[3]||(i[3]=[S(" read more ",-1)])]),_:1})])):q("",!0)],8,M6)):q("",!0)]),default:x(()=>{var a;return[y(Mt,{url:e.subscription.content.bundle.iconUrl,size:72},null,8,["url"]),$("div",D6,[y(ur,null,{default:x(()=>{var l;return[S(N((l=e.subscription.content.bundle)==null?void 0:l.name),1)]}),_:1}),(a=e.subscription.content.bundle)!=null&&a.tagline?(h(),j(ke,{key:0,class:"moonbase:subscription-content-card-tagline"},{default:x(()=>{var l;return[S(N((l=e.subscription.content.bundle)==null?void 0:l.tagline),1)]}),_:1})):q("",!0),y(ke,{class:"moonbase:subscription-content-card-expiry"},{default:x(()=>[S(N(e.subscription.status===v(Hr).Active?"Renews":e.subscription.expiresAt>t.value?"Expires":"Expired")+" ",1),$("strong",null,N(v(rs)(e.subscription.expiresAt)),1)]),_:1})])]}),_:1}))}}),L6={class:"moonbase:milestone-rewards"},R6={class:"moonbase:milestone-rewards-list"},U6={key:0},j6={key:1},B6=ae({__name:"MilestoneRewards",props:{progress:{}},setup(e){return(t,n)=>(h(),k("div",L6,[y(ot,null,{default:x(()=>[...n[0]||(n[0]=[S(" Rewards: ",-1)])]),_:1}),$("div",R6,[(h(!0),k(ee,null,ct(Object.values(e.progress.events).flatMap(r=>r).filter(r=>r.fulfilled),r=>(h(),k("div",{key:r.milestoneId,class:"moonbase:milestone-rewards-item"},[y(ke,null,{default:x(()=>[S(N(r.message),1)]),_:2},1024),r.type==="CouponCodeMilestone"&&r.fulfilled&&r.code?(h(),k("div",U6,[y(St,null,{default:x(()=>[...n[1]||(n[1]=[S(" Your coupon code: ",-1)])]),_:1}),n[2]||(n[2]=$("br",null,null,-1)),$("code",null,N(r.code),1)])):r.type==="PerpetualLicenseConversionMilestone"&&r.fulfilled?(h(),k("div",j6,[y(St,null,{default:x(()=>[y(v(Ql),{class:"moonbase:success-icon"}),n[3]||(n[3]=S(" Your licenses have been converted to perpetual licenses. ",-1))]),_:1})])):q("",!0)]))),128))])]))}}),F6={class:"moonbase:subscription"},q6={key:0,class:"moonbase:loader"},H6={key:1,class:"moonbase:loader"},z6={key:2,class:"moonbase:loader"},W6={key:3},Z6={key:0,class:"moonbase:subscription-milestones"},G6={class:"moonbase:subscription-milestone-progress-title"},Y6={class:"moonbase:subscription-actions"},K6={class:"moonbase:subscription-cancel"},Q6={class:"moonbase:subscription-cancel-reasons"},X6=["value"],J6=["data-corners"],eN=ae({__name:"Subscription",setup(e){const t=ge(),{loaded:n}=Ze(),r=Kl(),o=Fn(),{getSubscription:s,renewSubscription:i,cancelSubscription:a,updateSubscriptionPaymentMethod:l}=Zo(),u=V(null),c=V(new Date),d=V(null),f=V(!0),m=oe(qe),p=V(!1),g=V(null),b=V(""),O=[{value:Eo.TooExpensive,label:"It's too expensive"},{value:Eo.Unused,label:"I don't use it enough"},{value:Eo.MissingFeatures,label:"It's missing something I need"},{value:Eo.TechnicalIssues,label:"I ran into technical problems"},{value:Eo.SwitchedService,label:"I switched to something else"},{value:Eo.Other,label:"Something else"}];Fe(async()=>{const z=t.getParameter("subscription_id");if(!z){d.value="Link is broken";return}try{u.value=await s(z)}catch(L){d.value=L.message}f.value=!1});async function P(){if(!u.value)return;if((await i(u.value.id,{redirect:!1})).completed){const L=await s(u.value.id);Zt(1500).then(()=>u.value=L)}else throw new ts}function I(){g.value=null,b.value="",p.value=!0}async function U(){u.value&&(u.value=await a(u.value.id,{reason:g.value,comment:b.value}),p.value=!1)}async function B(){if(u.value){d.value=null;try{const z=await l(u.value,{returnUrl:`${window.location.pathname}?mb_intent=${W.ManageSubscription}&mb_subscription_id=${u.value.id}`});if(z!=null&&z.completed)u.value=await s(u.value.id);else throw new ts}catch(z){if(d.value=z.message,!(z instanceof ts))if(z instanceof Kt)r.reportProblem("error",{type:z.name,title:z.title,detail:z.detail,status:z.status,errors:z.errors?Object.fromEntries(Object.entries(z.errors).map(([L,T])=>[L,[T]])):void 0,instance:"Subscription.vue:startUpdate"});else{const L=z;r.reportProblem("error",{type:L.name,title:L.message,instance:"Subscription.vue:startUpdate"})}throw z}}}return(z,L)=>{var T;return h(),k("div",F6,[f.value||!v(n)?(h(),k("div",q6,[y(It)])):d.value?(h(),k("div",H6,N(d.value),1)):u.value?(h(),k("div",W6,[y(V6,{subscription:u.value},null,8,["subscription"]),u.value.milestoneProgress?(h(),k("div",Z6,[$("div",G6,[y(ot,null,{default:x(()=>[S(N(u.value.milestoneProgress.title),1)]),_:1}),y(St,null,{default:x(()=>[S(N(u.value.milestoneProgress.currentNormalizedCycleNumber-(u.value.milestoneProgress.currentCycleIsCompleted?0:1))+" / "+N(u.value.milestoneProgress.toNormalizedCycleNumber)+" "+N(v(ta)(u.value.cycleLength))+"s ",1)]),_:1})]),y(v0,{progress:u.value.milestoneProgress},null,8,["progress"]),u.value.milestoneProgress.description?(h(),j(St,{key:0},{default:x(()=>[S(N(u.value.milestoneProgress.description),1)]),_:1})):q("",!0),Object.values(u.value.milestoneProgress.events).flatMap(A=>A).some(A=>A.fulfilled)?(h(),j(B6,{key:1,progress:u.value.milestoneProgress},null,8,["progress"])):q("",!0)])):q("",!0),$("div",Y6,[p.value?(h(),k(ee,{key:0},[$("fieldset",K6,[$("legend",null,[y(ot,null,{default:x(()=>[...L[2]||(L[2]=[S("Mind telling us why you're cancelling?",-1)])]),_:1})]),y(St,null,{default:x(()=>[...L[3]||(L[3]=[S("It's optional, and it helps us improve.",-1)])]),_:1}),$("div",Q6,[(h(),k(ee,null,ct(O,A=>$("label",{key:A.value},[Qm($("input",{"onUpdate:modelValue":L[0]||(L[0]=E=>g.value=E),type:"radio",name:"mb-cancellation-reason",value:A.value},null,8,X6),[[a_,g.value]]),$("span",null,N(A.label),1)])),64))]),L[4]||(L[4]=$("label",{for:"mb-cancellation-comment",class:"moonbase:sr-only"},"Anything else you'd like to share?",-1)),Qm($("textarea",{id:"mb-cancellation-comment","onUpdate:modelValue":L[1]||(L[1]=A=>b.value=A),name:"mb-cancellation-comment",rows:"3",maxlength:"1000",placeholder:"Anything else you'd like to share?","data-corners":(T=v(m))==null?void 0:T.theme.corners},null,8,J6),[[i_,b.value]])]),y(Oe,{label:"Cancel subscription",variant:"danger",handler:U}),y(Oe,{label:"Keep subscription",variant:"secondary",handler:()=>p.value=!1},null,8,["handler"]),y(St,null,{default:x(()=>[S(" You can keep using the products until "+N(v(rs)(u.value.expiresAt))+", and you won't be charged again. ",1)]),_:1})],64)):u.value.status===v(Hr).Active?(h(),k(ee,{key:1},[y(Oe,{label:"Update payment method",variant:"secondary",handler:B}),y(Oe,{label:"Cancel subscription",variant:"danger",handler:I}),y(St,null,{default:x(()=>[L[6]||(L[6]=S(" Cancelling a subscription will let you use the products to the end of the current period, after which you will lose access. If you want to continue using the products later, you may simply renew this subscription whenever you wish. You are currently paying ",-1)),$("strong",null,N(v(o)(u.value.total.due)),1),S(" per "+N(v(ta)(u.value.cycleLength))+" for this subscription",1),u.value.paymentMethod?(h(),k(ee,{key:0},[L[5]||(L[5]=S(" using payment method ",-1)),$("strong",null,N(u.value.paymentMethod),1)],64)):q("",!0),L[7]||(L[7]=S(". ",-1))]),_:1})],64)):u.value.status===v(Hr).Completed?(h(),j(St,{key:2},{default:x(()=>[y(v(Ql),{class:"moonbase:success-icon"}),L[8]||(L[8]=S(" This subscription has been completed, and cannot be renewed. ",-1))]),_:1})):(h(),k(ee,{key:3},[u.value.nextPaymentScheduledAt&&u.value.cancellable?(h(),k(ee,{key:0},[y(Oe,{label:"Continue subscription",variant:"primary",handler:P}),y(Oe,{label:"Cancel subscription",variant:"danger",handler:I}),y(St,null,{default:x(()=>[S(" We could not renew this subscription on the expiry date, the next attempt will be "+N(v(rs)(u.value.nextPaymentScheduledAt))+". To make sure you can use your products un-interrupted, continue the subscription, or cancel it if you do not wish to keep using these products. ",1)]),_:1})],64)):(h(),k(ee,{key:1},[y(Oe,{label:"Continue subscription",variant:"primary",handler:P}),y(St,null,{default:x(()=>[S(" This subscription has been stopped, and "+N(u.value.expiresAt>c.value?"expires":"expired")+" "+N(v(rs)(u.value.expiresAt))+". If you want to continue using the products after this date, you may continue the subscription to regain access. ",1)]),_:1})],64))],64))])])):(h(),k("div",z6," Could not find subscription "))])}}}),tN=ae({__name:"App",setup(e){const t=oe(qe),n=oe(bt),r=ge();We(()=>[r.active,r.intent,r.parameters],([s,i,a])=>{_e("UI updated",{view:s,intent:i,parameters:Se(a)})}),We(()=>t==null?void 0:t.value.theme.colors.primary,s=>{if(!s)return;let i=s;typeof i=="string"&&(i=Object.fromEntries($C(i).map(a=>[a.number<=100||a.number===950?a.number-50:a.number-100,a.hexcode]))),document.documentElement.style.setProperty("--moonbase-brand-50",i[50]??""),document.documentElement.style.setProperty("--moonbase-brand-100",i[100]??""),document.documentElement.style.setProperty("--moonbase-brand-200",i[200]??""),document.documentElement.style.setProperty("--moonbase-brand-300",i[300]??""),document.documentElement.style.setProperty("--moonbase-brand-400",i[400]??""),document.documentElement.style.setProperty("--moonbase-brand-500",i[500]??""),document.documentElement.style.setProperty("--moonbase-brand-600",i[600]??""),document.documentElement.style.setProperty("--moonbase-brand-700",i[700]??""),document.documentElement.style.setProperty("--moonbase-brand-800",i[800]??""),document.documentElement.style.setProperty("--moonbase-brand-900",i[900]??"")},{immediate:!0}),We(()=>t==null?void 0:t.value.theme.dark,s=>{s?document.documentElement.classList.add("moonbase:dark"):document.documentElement.classList.remove("moonbase:dark")},{immediate:!0}),We(()=>r.active!==G.None,s=>{s?document.body.classList.add("moonbase:drawer-open"):document.body.classList.remove("moonbase:drawer-open")},{immediate:!0});const{promotionSlot:o}=k5();return M5(),I5(),s5(),o5(),r5(),(s,i)=>{var a;return h(),k(ee,null,[(a=v(t))!=null&&a.toolbar.enabled?(h(),j(t5,{key:0})):q("",!0),y(Zx,{container:v(o)},null,8,["container"]),y(Ex,null,{default:x(()=>{var l;return[(l=v(n))!=null&&l.closed.value?(h(),j(I6,{key:0})):v(r).active===v(G).Cart?(h(),j(n3,{key:1})):v(r).active===v(G).Authentication?(h(),j(XA,{key:2})):v(r).active===v(G).CommunicationPreferences?(h(),j(y3,{key:3})):v(r).active===v(G).Activation?(h(),j(oA,{key:4})):v(r).active===v(G).Product?(h(),j(x6,{key:5})):v(r).active===v(G).Subscription?(h(),j(eN,{key:6})):v(r).active===v(G).Customer?(h(),j(IP,{key:7})):v(r).active===v(G).Redeem?(h(),j(P6,{key:8})):v(r).active===v(G).Groups?(h(),j(RP,{key:9})):v(r).active===v(G).About?(h(),j(a4,{key:10})):q("",!0)]}),_:1})],64)}}});function nN(e){return!!e&&typeof e=="object"&&e.__moonbaseStub===!0&&Array.isArray(e.__queue)}function S0(e,t){const n=t;for(const r of Object.keys(t)){if(r==="__moonbaseStub"||r==="__queue")continue;const o=e[r];typeof o=="function"&&(n[r]=(...s)=>o.apply(e,s))}}function Vd(e,t){try{const n=e[t.method];if(typeof n!="function"){t.reject(new Error(`Moonbase.${t.method} is not a function`));return}Promise.resolve(n.apply(e,t.args)).then(t.resolve,t.reject)}catch(n){t.reject(n)}}async function rN(e,t){const n=t.__queue,r=n.findIndex(f=>f.method==="setup"),o=n.filter(f=>f.method==="on"),s=r>=0?n.slice(0,r).filter(f=>f.method==="configure"):[],i=n.filter(f=>f.method==="setup"),a=new Set(s),l=n.filter(f=>f.method!=="on"&&f.method!=="setup"&&!a.has(f));o.forEach(f=>Vd(e,f)),typeof document<"u"&&document.readyState==="loading"&&await new Promise(f=>{document.addEventListener("DOMContentLoaded",()=>f(),{once:!0})});for(const f of s)Vd(e,f);i.length>1&&console.warn("Multiple Moonbase.setup() calls queued; only the first will be honored");const[u,...c]=i;let d;if(u)try{await Promise.resolve(e.setup(...u.args)),u.resolve(void 0)}catch(f){d=f,u.reject(f)}for(const f of c)f.reject(new Error("Moonbase.setup() was already called"));if(d){for(const f of l)f.reject(d);S0(e,t);return}l.forEach(f=>Vd(e,f)),S0(e,t)}function oN(e){const t=e==null?void 0:e.__heldForms;if(!(!e||!t)){e.__heldForms=void 0;for(const n of t)n.isConnected&&(typeof n.requestSubmit=="function"?n.requestSubmit():n.dispatchEvent(new Event("submit",{bubbles:!0,cancelable:!0})))}}function Ld(e,t){var r,o;const n=(r=e.total)==null?void 0:r.due.amount;return typeof n=="number"&&e.quantity>0?n/e.quantity:((o=e.price)==null?void 0:o[t])??0}function Ks(e,t){var n,r;return e.type==="Bundle"?{id:e.bundleId,name:((n=e.bundle)==null?void 0:n.name)??e.bundleId,price:Ld(e,t),quantity:e.quantity,variationId:e.variationId}:{id:e.productId,name:((r=e.product)==null?void 0:r.name)??e.productId,price:Ld(e,t),quantity:e.quantity,variationId:e.variationId}}function cr(e){const t=e.currency;return e.items.map(n=>Ks(n,t))}function ia(e){return Ld(e.item,e.currency)*e.item.quantity}function aa(e){var t;return((t=e.total)==null?void 0:t.due.amount)??0}function la(e){var t;return((t=e.order.total)==null?void 0:t.due.amount)??e.total.amount}const P0=new Set;function Ur(e,t){P0.has(e)||(P0.add(e),console.warn(`[moonbase] Integration "${e}" is enabled but ${t} was not found on the page when an event fired. If your consent layer loads it later, this is expected and forwarding will resume once it appears. Otherwise, check that the ${t} snippet is installed.`))}function ut(e,t){const n=r=>t(r.detail);return window.addEventListener(`moonbase-storefront-${e}`,n),()=>window.removeEventListener(`moonbase-storefront-${e}`,n)}function N0(){const e=window.gtag;return typeof e=="function"?e:void 0}function Rd(e){return e.map(t=>({item_id:t.id,item_name:t.name,price:t.price,quantity:t.quantity,...t.variationId?{item_variant:t.variationId}:{}}))}function sN(e){const t=[];function n(o,s){const i=N0();if(!i){Ur("googleAnalytics","window.gtag"),_e(`GA4: window.gtag missing, skipping ${o}`);return}i("event",o,s)}function r(o){const s=N0();if(!s){Ur("googleAnalytics","window.gtag"),_e("GA4: window.gtag missing, skipping user_id config");return}s("config",e.measurementId,{user_id:o})}return{start(){t.push(ut(Ce.AddedToCart,o=>{const s=Ks(o.item,o.currency);n("add_to_cart",{currency:o.currency,value:ia(o),items:Rd([s])})})),t.push(ut(Ce.CheckoutInitiated,o=>{n("begin_checkout",{currency:o.total.currency,value:la(o),items:Rd(cr(o.order))})})),t.push(ut(Ce.CheckoutCompleted,o=>{n("purchase",{transaction_id:o.order.id,currency:o.order.currency,value:aa(o.order),items:Rd(cr(o.order))})})),t.push(ut(Ce.SignedIn,o=>{o.user.id&&r(o.user.id),n("login",{method:"moonbase"})})),t.push(ut(Ce.SignedUp,o=>{o.user.id&&r(o.user.id),n("sign_up",{method:"moonbase"})})),t.push(ut(Ce.SignedOut,()=>{r(null)}))},stop(){for(const o of t)o();t.length=0}}}function iN(){const e=window.dataLayer;if(!(!e||typeof e.push!="function"))return e}function Ud(e){return e.map(t=>({item_id:t.id,item_name:t.name,price:t.price,quantity:t.quantity,...t.variationId?{item_variant:t.variationId}:{}}))}function aN(e){const t=[];function n(r){const o=iN();if(!o){Ur("googleTagManager","window.dataLayer"),_e(`GTM: window.dataLayer missing, skipping ${String(r.event)}`);return}"ecommerce"in r&&o.push({ecommerce:null}),o.push(r)}return{start(){t.push(ut(Ce.AddedToCart,r=>{const o=Ks(r.item,r.currency);n({event:"add_to_cart",ecommerce:{currency:r.currency,value:ia(r),items:Ud([o])}})})),t.push(ut(Ce.CheckoutInitiated,r=>{n({event:"begin_checkout",ecommerce:{currency:r.total.currency,value:la(r),items:Ud(cr(r.order))}})})),t.push(ut(Ce.CheckoutCompleted,r=>{n({event:"purchase",ecommerce:{transaction_id:r.order.id,currency:r.order.currency,value:aa(r.order),items:Ud(cr(r.order))}})})),t.push(ut(Ce.SignedIn,r=>{n({event:"login",method:"moonbase",user_id:r.user.id})})),t.push(ut(Ce.SignedUp,r=>{n({event:"sign_up",method:"moonbase",user_id:r.user.id})})),t.push(ut(Ce.SignedOut,()=>{n({event:"logout",user_id:null})}))},stop(){for(const r of t)r();t.length=0}}}function I0(){const e=window.klaviyo;if(!e)return;const t=typeof e.identify=="function"&&typeof e.track=="function",n=typeof e.push=="function";return t||n?e:void 0}function lN(e){const t=[];function n(o,s){var a;const i=I0();if(!i){Ur("klaviyo","window.klaviyo"),_e(`Klaviyo: window.klaviyo missing, skipping ${o}`);return}typeof i.track=="function"?i.track(o,s):(a=i.push)==null||a.call(i,["track",o,s])}function r(o){var i;if(!o.email)return;const s=I0();if(!s){Ur("klaviyo","window.klaviyo"),_e("Klaviyo: window.klaviyo missing, skipping identify");return}typeof s.identify=="function"?s.identify({email:o.email,...o.name?{first_name:o.name}:{},...o.id?{external_id:o.id}:{}}):(i=s.push)==null||i.call(s,["identify",{$email:o.email,...o.name?{$first_name:o.name}:{},...o.id?{$id:o.id}:{}}])}return{start(){t.push(ut(Ce.AddedToCart,o=>{const s=Ks(o.item,o.currency);n("Added to Cart",{$value:ia(o),AddedItemProductName:s.name,AddedItemProductID:s.id,AddedItemQuantity:s.quantity,AddedItemPrice:s.price,Currency:o.currency})})),t.push(ut(Ce.CheckoutInitiated,o=>{const s=cr(o.order);n("Started Checkout",{$event_id:o.order.id,$value:la(o),ItemNames:s.map(i=>i.name),ProductIDs:s.map(i=>i.id),Items:s,Currency:o.total.currency})})),t.push(ut(Ce.CheckoutCompleted,o=>{const s=cr(o.order);n("Placed Order",{$event_id:o.order.id,$value:aa(o.order),ItemNames:s.map(i=>i.name),ProductIDs:s.map(i=>i.id),Items:s,Currency:o.order.currency})})),t.push(ut(Ce.SignedIn,o=>{r({email:o.user.email,name:o.user.name??void 0,id:o.user.id})})),t.push(ut(Ce.SignedUp,o=>{r({email:o.user.email,name:o.user.name??void 0,id:o.user.id})})),t.push(ut(Ce.SignedOut,()=>{_e("Klaviyo: sign-out received; onsite profile persists (no identify reset API)")}))},stop(){for(const o of t)o();t.length=0}}}function T0(){const e=window.fbq;return typeof e=="function"?e:void 0}function uN(e){const t=[];function n(o,s,i){const a=T0();if(!a){Ur("metaPixel","window.fbq"),_e(`Meta Pixel: window.fbq missing, skipping ${o}`);return}i?a("track",o,s,i):a("track",o,s)}function r(o){if(!o)return;const s=T0();if(!s){Ur("metaPixel","window.fbq"),_e("Meta Pixel: window.fbq missing, skipping advanced match");return}s("init",e.pixelId,{em:o})}return{start(){t.push(ut(Ce.AddedToCart,o=>{const s=Ks(o.item,o.currency);n("AddToCart",{value:ia(o),currency:o.currency,content_ids:[s.id],content_type:"product_group",contents:[{id:s.id,quantity:s.quantity,item_price:s.price}]})})),t.push(ut(Ce.CheckoutInitiated,o=>{const s=cr(o.order);n("InitiateCheckout",{value:la(o),currency:o.total.currency,num_items:s.reduce((i,a)=>i+a.quantity,0),content_ids:s.map(i=>i.id),contents:s.map(i=>({id:i.id,quantity:i.quantity,item_price:i.price}))},{eventID:o.order.id})})),t.push(ut(Ce.CheckoutCompleted,o=>{const s=cr(o.order);n("Purchase",{value:aa(o.order),currency:o.order.currency,content_ids:s.map(i=>i.id),contents:s.map(i=>({id:i.id,quantity:i.quantity,item_price:i.price}))},{eventID:o.order.id})})),t.push(ut(Ce.SignedIn,o=>{r(o.user.email)})),t.push(ut(Ce.SignedUp,o=>{r(o.user.email),n("CompleteRegistration")})),t.push(ut(Ce.SignedOut,()=>{_e("Meta Pixel: sign-out received; advanced-match identity persists (no per-user logout API)")}))},stop(){for(const o of t)o();t.length=0}}}function $0(){const e=window.ttq;if(!(!e||typeof e.track!="function"||typeof e.identify!="function"))return e}function jd(e){return e.map(t=>({content_id:t.id,content_name:t.name,quantity:t.quantity,price:t.price}))}function cN(e){const t=[];function n(o,s,i){const a=$0();if(!a){Ur("tiktokPixel","window.ttq"),_e(`TikTok Pixel: window.ttq missing, skipping ${o}`);return}i?a.track(o,s,i):a.track(o,s)}function r(o){if(!o.email)return;const s=$0();if(!s){Ur("tiktokPixel","window.ttq"),_e("TikTok Pixel: window.ttq missing, skipping identify");return}s.identify({email:o.email,external_id:o.id})}return{start(){const o="product_group";t.push(ut(Ce.AddedToCart,s=>{const i=Ks(s.item,s.currency);n("AddToCart",{value:ia(s),currency:s.currency,content_type:o,contents:jd([i])})})),t.push(ut(Ce.CheckoutInitiated,s=>{n("InitiateCheckout",{value:la(s),currency:s.total.currency,content_type:o,order_id:s.order.id,contents:jd(cr(s.order))},{event_id:s.order.id})})),t.push(ut(Ce.CheckoutCompleted,s=>{n("CompletePayment",{value:aa(s.order),currency:s.order.currency,content_type:o,order_id:s.order.id,contents:jd(cr(s.order))},{event_id:s.order.id})})),t.push(ut(Ce.SignedIn,s=>{r({email:s.user.email,id:s.user.id})})),t.push(ut(Ce.SignedUp,s=>{r({email:s.user.email,id:s.user.id}),n("CompleteRegistration")})),t.push(ut(Ce.SignedOut,()=>{_e("TikTok Pixel: sign-out received; identity persists (no logout API)")}))},stop(){for(const o of t)o();t.length=0}}}const D0={metaPixel:uN,googleAnalytics:sN,googleTagManager:aN,klaviyo:lN,tiktokPixel:cN};class dN{constructor(){Wn(this,"active",new Map)}sync(t){const n=Object.keys(D0);for(const r of n){const o=t[r],s=this.active.get(r);if(!o){s&&(_e(`Stopping integration: ${r}`),s.instance.stop(),this.active.delete(r));continue}const i=JSON.stringify(o);if(s&&s.configKey===i)continue;s?(_e(`Restarting integration with new config: ${r}`),s.instance.stop()):_e(`Starting integration: ${r}`);const a=D0[r],l=a(o);l.start(),this.active.set(r,{configKey:i,instance:l})}}stopAll(){for(const[t,n]of this.active)_e(`Stopping integration: ${t}`),n.instance.stop();this.active.clear()}}function fN(e,t){let n;try{n=new URL(e)}catch{return null}if(n.protocol!=="https:"&&n.protocol!=="http:")return null;const r=n.hostname,o=r==="localhost"||r==="127.0.0.1";let s=!1;if(t)try{s=new URL(t).origin===n.origin}catch{}return!s&&!o?null:n.toString()}const mN=/^(https:\/\/[a-z0-9-]+\.(?:beta\.)?moonbase\.sh)[/?#]/;function hN(e){const t=mN.exec(e);return(t==null?void 0:t[1])??e}const ou=Symbol("url"),M0=Symbol("moonbase_instance"),dr=(e,t)=>window.dispatchEvent(new CustomEvent(`moonbase-storefront-${e}`,{detail:Av(t)})),zn=Symbol("event-emitter");let V0;class pN{constructor(){Wn(this,"initialized",!1);Wn(this,"pinia");Wn(this,"storefront");Wn(this,"url");Wn(this,"options");Wn(this,"integrations",new dN);Wn(this,"completedOrderIds",new Set)}async setup(t,n){var u,c;if(typeof window>"u")throw console.error("Moonbase setup must be done client-side"),new Error("Moonbase setup must be done client-side");if(globalThis.MoonbaseCSS&&globalThis.MoonbaseCSS.inject(),document.getElementById("moonbase")){console.warn("Moonbase has already been initialized!");return}document.querySelector('meta[name="viewport"]')||console.warn('Moonbase: no <meta name="viewport"> on the host page. The widget may render unexpectedly on mobile devices.'),_e("Given options:",n),this.options=V(Cv(((u=this.options)==null?void 0:u.value)??Ev,n)),_e("Merged options:",this.options.value),We(()=>{var d;return(d=this.options)==null?void 0:d.value.pricing},d=>{I_(d&&{...d})},{immediate:!0,deep:!0});const r=document.createElement("div");r.id="moonbase",r.classList.add("moonbase");const o=this.options.value.target??document.body;_e("Mounting to target element",o),o.append(r);const s=hN(t);s!==t&&console.warn(`Moonbase url set up incorrectly, should be ${s}, was ${t}`),this.storefront=uk(s),We(()=>{var d;return((d=this.options)==null?void 0:d.value.cart.offers.autoApply)??!1},d=>{var f;(f=this.storefront)!=null&&f.autoApplyItemOffers&&(this.storefront.autoApplyItemOffers.value=d)},{immediate:!0}),this.url=s,_e("Captured UTM + referrer:",this.storefront.utm.value),this.pinia=Dk(),m_(tN).use(this.storefront).use(this.pinia).provide(qe,this.options).provide(ou,s.replace(/\/$/,"")).provide(zn,dr).provide(M0,this).mount("#moonbase"),this.initialized=!0,window&&window.location&&this.handleLocationIntent(window.location);const a=ge(this.pinia),l=Ze(this.storefront);this.storefront.onStorefrontUpdated(d=>{dr(Ce.StorefrontUpdated,{storefront:d,user:l.user.value})}),(c=this.storefront)==null||c.onCheckoutInitiated((d,f)=>{dr(Ce.CheckoutInitiated,{order:d,total:f,user:l.user.value})}),this.storefront.onCheckoutClosed(d=>{dr(Ce.CheckoutClosed,{order:this.storefront.currentOrder.value,user:l.user.value}),d===W.ViewProducts&&(l.user.value?a.show(G.Customer,W.ViewProducts):a.show(G.Cart,W.ViewCart))}),this.storefront.onCheckoutCompleted(d=>{if(this.completedOrderIds.has(d.id)){_e("Ignoring duplicate checkout-completed for order",d.id);return}this.completedOrderIds.add(d.id),dr(Ce.CheckoutCompleted,{order:d,user:l.user.value})}),this.integrations.sync(this.options.value.integrations),oN(V0)}configure(t){var r;_e("Given options:",t);const n=Cv(((r=this.options)==null?void 0:r.value)??Ev,t);_e("Merged options:",n),this.options?this.options.value=n:this.options=V(n),this.integrations.sync(n.integrations)}on(t,n){window.addEventListener(`moonbase-storefront-${t}`,r=>n(r.detail))}handleLocationIntent(t){const n=new URLSearchParams(t.search),r=n.get("mb_intent");if(r&&Object.values(W).includes(r)){const o=dg(n);if(r===W.Checkout&&o.complete)return;this[r](o);for(const i of Object.keys(o))n.delete(`mb_${i}`);const s=new URL(t.href);s.search=n.toString(),window.history.replaceState(null,"",s.toString())}}sign_in(t){if(!this.initialized)throw new Error("Moonbase has not been set up yet");ge(this.pinia).show(G.Authentication,W.SignIn,t)}sign_up(t){var r;if(!this.initialized)throw new Error("Moonbase has not been set up yet");if(!((r=this.options)!=null&&r.value.auth.signUp.enabled))throw new Error("Sign ups are not enabled");ge(this.pinia).show(G.Authentication,W.SignUp,t)}forgot_password(t){if(!this.initialized)throw new Error("Moonbase has not been set up yet");ge(this.pinia).show(G.Authentication,W.ForgotPassword,t)}reset_password(t){if(!this.initialized)throw new Error("Moonbase has not been set up yet");ge(this.pinia).show(G.Authentication,W.ResetPassword,t)}confirm_account(t){if(!this.initialized)throw new Error("Moonbase has not been set up yet");ge(this.pinia).show(G.Authentication,W.ConfirmAccount,t)}confirm_email(t){if(!this.initialized)throw new Error("Moonbase has not been set up yet");ge(this.pinia).show(G.Authentication,W.ConfirmEmail,t)}confirm_email_change(t){if(!this.initialized)throw new Error("Moonbase has not been set up yet");const n=ge(this.pinia);Ze(this.storefront).user.value?n.show(G.Authentication,W.ConfirmEmailChange,t):(n.enqueue(G.Authentication,W.ConfirmEmailChange,t),n.show(G.Authentication,W.SignIn))}subscribe(t){if(!this.initialized)throw new Error("Moonbase has not been set up yet");ge(this.pinia).show(G.CommunicationPreferences,W.Subscribe,P5(t))}confirm_communication_preferences(t){if(!this.initialized)throw new Error("Moonbase has not been set up yet");ge(this.pinia).show(G.CommunicationPreferences,W.ConfirmCommunicationPreferences,t)}manage_communication_preferences(t){if(!this.initialized)throw new Error("Moonbase has not been set up yet");ge(this.pinia).show(G.CommunicationPreferences,W.ManageCommunicationPreferences,t)}connect_account(t){if(!this.initialized)throw new Error("Moonbase has not been set up yet");if(t!=null&&t.provider_id){const s=Object.values(ri).find(i=>i.toLowerCase()===t.provider_id.toLowerCase());s&&(t.provider_id=s)}const n=ge(this.pinia),r=Ze(this.storefront),o=t;r.user.value?n.show(G.Customer,W.ConnectAccount,o):(n.enqueue(G.Customer,W.ConnectAccount,o),n.show(G.Authentication,W.SignIn))}join_group(t){if(!this.initialized)throw new Error("Moonbase has not been set up yet");const n=ge(this.pinia),r=Ze(this.storefront),o=t;r.user.value?n.show(G.Groups,W.JoinGroup,o):(n.enqueue(G.Groups,W.JoinGroup,o),n.show(G.Authentication,W.SignIn))}view_account(){if(!this.initialized)throw new Error("Moonbase has not been set up yet");const t=ge(this.pinia);Ze(this.storefront).user.value?t.show(G.Customer,W.ViewAccount):(t.enqueue(G.Customer,W.ViewAccount),t.show(G.Authentication,W.SignIn))}view_products(){if(!this.initialized)throw new Error("Moonbase has not been set up yet");const t=ge(this.pinia);Ze(this.storefront).user.value?t.show(G.Customer,W.ViewProducts):(t.enqueue(G.Customer,W.ViewProducts),t.show(G.Authentication,W.SignIn))}view_subscriptions(){if(!this.initialized)throw new Error("Moonbase has not been set up yet");const t=ge(this.pinia);Ze(this.storefront).user.value?t.show(G.Customer,W.ViewSubscriptions):(t.enqueue(G.Customer,W.ViewSubscriptions),t.show(G.Authentication,W.SignIn))}redeem_voucher(t){if(!this.initialized)throw new Error("Moonbase has not been set up yet");const n=ge(this.pinia);Ze(this.storefront).user.value?n.show(G.Customer,W.RedeemVoucher,t):n.show(G.Redeem,W.RedeemVoucher,t)}view_product(t){if(!this.initialized)throw new Error("Moonbase has not been set up yet");ge(this.pinia).show(G.Product,W.ViewProduct,t)}download_product(t){if(!this.initialized)throw new Error("Moonbase has not been set up yet");ge(this.pinia).show(G.Product,W.DownloadProduct,t)}activate_product(t){if(!this.initialized)throw new Error("Moonbase has not been set up yet");const n=ge(this.pinia),r=Ze(this.storefront);!(t!=null&&t.token)&&!r.user.value?(n.enqueue(G.Activation,W.ActivateProduct,t),n.show(G.Authentication,W.SignIn)):n.show(G.Activation,W.ActivateProduct,t)}manage_subscription(t){if(!this.initialized)throw new Error("Moonbase has not been set up yet");const n=ge(this.pinia);Ze(this.storefront).user.value?n.show(G.Subscription,W.ManageSubscription,t):(n.enqueue(G.Subscription,W.ManageSubscription,t),n.show(G.Authentication,W.SignIn))}view_cart(){if(!this.initialized)throw new Error("Moonbase has not been set up yet");ge(this.pinia).show(G.Cart,W.ViewCart)}async add_to_cart(t){var s,i,a,l,u,c,d,f,m,p,g,b,O,P,I,U,B,z;if(!this.initialized)throw new Error("Moonbase has not been set up yet");if(!(t!=null&&t.product_id)&&!(t!=null&&t.bundle_id))throw new Error("You need to provide a product or bundle ID when adding to cart");const n=Un(this.storefront),r=Ze(this.storefront),o=t.offer_id?rk(t.offer_id):null;if(t!=null&&t.product_id){const L=Ui(t.product_id,this.storefront);if(L.value){let T=n.addToCart(L.value,(s=L.value.variations)==null?void 0:s.find(E=>E.id===t.variation_id),(o==null?void 0:o.value)||void 0);const A=((i=T.price)==null?void 0:i[n.currency.value])===0;t!=null&&t.quantity&&(T=n.setQuantity(T,T.quantity+t.quantity-1)),(A?((a=this.options)==null?void 0:a.value.cart.leadMagnets.quantity)==="single":((l=this.options)==null?void 0:l.value.cart.quantity)==="single")&&(T=n.setQuantity(T,1)),dr(Ce.AddedToCart,{item:T,currency:n.currency.value,user:r.user.value})}else{await this.storefront.loadedStorefrontPromise;const T=Ui(t.product_id,this.storefront);if(T.value){let A=n.addToCart(T.value,(u=T.value.variations)==null?void 0:u.find(w=>w.id===t.variation_id),(o==null?void 0:o.value)||void 0);const E=((c=A.price)==null?void 0:c[n.currency.value])===0;t!=null&&t.quantity&&(A=n.setQuantity(A,A.quantity+t.quantity-1)),(E?((d=this.options)==null?void 0:d.value.cart.leadMagnets.quantity)==="single":((f=this.options)==null?void 0:f.value.cart.quantity)==="single")&&(A=n.setQuantity(A,1)),dr(Ce.AddedToCart,{item:A,currency:n.currency.value,user:r.user.value})}else throw new Error(`Product '${t.product_id}' not found`)}}if(t!=null&&t.bundle_id){const L=kl(t.bundle_id,this.storefront);if(L.value){const T=(m=L.value.variations)==null?void 0:m.find(w=>w.id===t.variation_id);let A=n.addToCart(L.value,T,(o==null?void 0:o.value)||void 0,{bundleBehaviour:(p=this.options)==null?void 0:p.value.cart.bundles.onAdd});const E=((g=A.price)==null?void 0:g[n.currency.value])===0;t!=null&&t.quantity&&(A=n.setQuantity(A,A.quantity+t.quantity-1)),(E?((b=this.options)==null?void 0:b.value.cart.leadMagnets.quantity)==="single":((O=this.options)==null?void 0:O.value.cart.quantity)==="single")&&(A=n.setQuantity(A,1)),dr(Ce.AddedToCart,{item:A,currency:n.currency.value,user:r.user.value})}else{await this.storefront.loadedStorefrontPromise;const T=kl(t.bundle_id,this.storefront);if(T.value){const A=(P=T.value.variations)==null?void 0:P.find(_=>_.id===t.variation_id);let E=n.addToCart(T.value,A,(o==null?void 0:o.value)||void 0,{bundleBehaviour:(I=this.options)==null?void 0:I.value.cart.bundles.onAdd});const w=((U=E.price)==null?void 0:U[n.currency.value])===0;t!=null&&t.quantity&&(E=n.setQuantity(E,E.quantity+t.quantity-1)),(w?((B=this.options)==null?void 0:B.value.cart.leadMagnets.quantity)==="single":((z=this.options)==null?void 0:z.value.cart.quantity)==="single")&&(E=n.setQuantity(E,1)),dr(Ce.AddedToCart,{item:E,currency:n.currency.value,user:r.user.value})}else throw new Error(`Bundle '${t.bundle_id}' not found`)}}(t==null?void 0:t.show_cart)!==!1&&ge(this.pinia).show(G.Cart,W.AddToCart)}async purchase(t){var a,l,u,c,d,f,m,p;if(!this.initialized)throw new Error("Moonbase has not been set up yet");(a=this.storefront)!=null&&a.loadedStorefront.value||await((l=this.storefront)==null?void 0:l.loadedStorefrontPromise);const n=t?Array.isArray(t)?t:[t]:[];if(n.length===0)throw new Error("No items given to purchase");const r=(u=n.find(g=>g.coupon_code))==null?void 0:u.coupon_code,o=[];for(const g of n){if(!g.product_id&&!g.bundle_id)throw new Error("You need to provide a product or bundle ID when purchasing");if(g.product_id){const b=Ui(g.product_id,this.storefront);if(b.value)o.push({item:b.value,variation:(c=b.value.variations)==null?void 0:c.find(O=>O.id===g.variation_id),quantity:g.quantity});else throw new Error(`Product '${g.product_id}' not found`)}if(g.bundle_id){const b=kl(g.bundle_id,this.storefront);if(b.value)o.push({item:b.value,variation:(d=b.value.variations)==null?void 0:d.find(O=>O.id===g.variation_id),quantity:g.quantity});else throw new Error(`Bundle '${g.bundle_id}' not found`)}}const s=Ze(this.storefront),i=((f=this.options)==null?void 0:f.value.checkout.redirect)??"auto";_e("Purchase intent:",{items:o,utm:(m=this.storefront)==null?void 0:m.utm.value,checkout:$c(i),couponCode:r}),await nk(o,{redirect:i,couponCode:r,groupIds:(p=this.options)==null?void 0:p.value.groups.checkout,onCouponRejected:(g,b)=>{_e("Coupon rejected at purchase time:",g,b),dr(Ce.CouponRejected,{code:g,user:s.user.value})}},this.storefront)}checkout(t){if(!this.initialized)throw new Error("Moonbase has not been set up yet");if(!(t!=null&&t.complete)){if(t!=null&&t.url){const n=fN(t.url,this.url);if(!n){console.error("Moonbase: refusing to host checkout URL from a disallowed origin:",t.url);return}_e("Checkout intent (hosted URL):",n),Li(n);return}this.checkoutCart()}}async checkoutCart(){var s,i,a,l,u,c;const t=((s=this.options)==null?void 0:s.value.cart.minimumTotal)??{};Object.keys(t).length>0&&await((i=this.storefront)==null?void 0:i.loadedStorefrontPromise);const n=Un(this.storefront),r=i0(t,n.total.value,n.items.value.length);if(r){_e("Checkout intent below the minimum total, showing the cart instead:",r),ge(this.pinia).show(G.Cart,W.Checkout);return}const o=((a=this.options)==null?void 0:a.value.checkout.redirect)??"auto";_e("Checkout intent:",{order:(l=this.storefront)==null?void 0:l.currentOrder.value,utm:(u=this.storefront)==null?void 0:u.utm.value,checkout:$c(o)}),n.checkout({redirect:o,groupIds:(c=this.options)==null?void 0:c.value.groups.checkout})}close_checkout(){var t;if(!this.initialized)throw new Error("Moonbase has not been set up yet");(t=this.storefront)==null||t.closeCheckout()}view_about(){if(!this.initialized)throw new Error("Moonbase has not been set up yet");ge(this.pinia).show(G.About,W.ViewAbout)}}const Qs=new pN;if(typeof globalThis<"u"){const e=globalThis.Moonbase;nN(e)?(globalThis.Moonbase=Qs,V0=e,rN(Qs,e)):e?console.warn("Multiple instances of Moonbase detected, only one will be initialized"):globalThis.Moonbase=Qs}Lt.MoonbaseEvent=Ce,Lt.MoonbaseIntent=W,Lt.default=Qs,Lt.eventEmitterKey=zn,Lt.instanceKey=M0,Lt.urlKey=ou,Object.defineProperties(Lt,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}})});
42
+ `));return{entries:u,copy:()=>navigator.clipboard.writeText(c.value)}}const r4={class:"moonbase:about"},o4={key:0,class:"moonbase:about-prerelease","data-testid":"moonbase-about-prerelease"},s4={class:"moonbase:about-diagnostics","data-testid":"moonbase-about-diagnostics"},i4=["title"],a4=ae({__name:"About",setup(e){const t=ge(),n=typeof window<"u"&&window.__moonbaseTestVersionOverride||"3.8.1",r=F(()=>{const i=n.match(/-(next)-/);if(i)return i[1];const a=n.match(/-(pr-\d+)-/);return a?a[1]:null}),{entries:o,copy:s}=n4(n);return(i,a)=>(h(),k("div",r4,[a[3]||(a[3]=Jh('<svg viewBox="0 0 512 512" height="56px" width="56px"><g><path fill="currentColor" d="m493.17795,174.6135c6.257,75.3 -30.577,150.948 -100.579,190.758c-66.292,37.697 -145.001,33.405 -205.402,-4.415c0.409,-1.248 0.638,-2.577 0.638,-3.96c0,-7.026 -5.717,-12.743 -12.743,-12.743c-2.876,0 -5.524,0.969 -7.659,2.582c-18.813,-15.259 -35.159,-34.207 -47.856,-56.534c-54.663,-96.122 -21.054,-218.358 75.069,-273.021a201.218,201.218 0 0 1 33.302,-15.124c-32.428,3.667 -64.663,13.809 -94.827,30.962c-104.526,59.443 -149.511,183.241 -113.473,293.249c-3.376,3.057 -5.513,7.459 -5.513,12.362c0,9.207 7.491,16.698 16.698,16.698c0.136,0 0.267,-0.017 0.401,-0.02a252.205,252.205 0 0 0 8.683,16.691c67.869,119.344 219.635,161.073 338.98,93.204a250.416,250.416 0 0 0 32.893,-22.333c1.045,0.331 2.157,0.513 3.311,0.513c6.047,0 10.968,-4.921 10.968,-10.968c0,-0.605 -0.063,-1.196 -0.157,-1.775c69.545,-64.988 96.008,-165.054 67.266,-256.126m-446.526,25.112a5.071,5.071 0 0 1 -5.066,-5.066a5.072,5.072 0 0 1 5.066,-5.067a5.073,5.073 0 0 1 5.066,5.067a5.072,5.072 0 0 1 -5.066,5.066m-15.819,153.944c-8.238,0 -14.94,-6.702 -14.94,-14.94c0,-8.239 6.702,-14.941 14.94,-14.941c8.239,0 14.941,6.702 14.941,14.941c-0.001,8.238 -6.703,14.94 -14.941,14.94m144.258,-7.659c6.057,0 10.985,4.928 10.985,10.986c0,6.058 -4.928,10.985 -10.985,10.985c-6.058,0 -10.986,-4.928 -10.986,-10.985c0.001,-6.059 4.928,-10.986 10.986,-10.986m70.829,133.004c-5.079,0 -9.21,-4.132 -9.21,-9.21c0,-5.079 4.131,-9.21 9.21,-9.21c5.078,0 9.209,4.131 9.209,9.21c0,5.078 -4.13,9.21 -9.209,9.21m169.18,-37.289c-5.078,0 -9.209,-4.132 -9.209,-9.21s4.131,-9.209 9.209,-9.209s9.21,4.131 9.21,9.209s-4.132,9.21 -9.21,9.21"></path><path fill="currentColor" d="m144.78195,275.9675c46.746,82.201 151.278,110.943 233.48,64.197c59.864,-34.044 91.363,-98.736 86.013,-163.13a170.094,170.094 0 0 0 -5.515,-31.052c-23.045,0.567 -63.864,10.137 -104.194,61.671c-52.045,66.5 -186.285,49.153 -228.855,17.372c3.503,17.443 9.796,34.632 19.071,50.942m233.513,-65.677a8.663,8.663 0 1 1 -8.663,8.663a8.662,8.662 0 0 1 8.663,-8.663m-37.006,62.618c7.02,0 12.712,5.691 12.712,12.712s-5.692,12.712 -12.712,12.712c-7.021,0 -12.712,-5.691 -12.712,-12.712s5.691,-12.712 12.712,-12.712m-102.544,12.712a6.78,6.78 0 1 1 0,13.56a6.78,6.78 0 0 1 0,-13.56"></path><ellipse fill="currentColor" ry="7.3075" rx="7.3075" cy="152.05851" cx="251.33138"></ellipse><ellipse fill="currentColor" ry="5.35076" rx="5.35076" cy="210.31151" cx="204.89499"></ellipse><ellipse fill="currentColor" ry="12.09273" rx="12.09273" cy="200.15625" cx="302.28597"></ellipse></g></svg>',1)),y(v(qv),{as:"h3"},{default:x(()=>[...a[0]||(a[0]=[S(" Moonbase Embedded Storefront ",-1)])]),_:1}),y(ke,{"data-testid":"moonbase-about-version"},{default:x(()=>[S(" Version "+N(v(n)),1)]),_:1}),r.value?(h(),k("span",o4," Prerelease · "+N(r.value)+" channel ",1)):q("",!0),y(ze,null,{default:x(()=>[...a[1]||(a[1]=[S(" This store is using the ",-1),$("a",{href:"https://moonbase.sh/solutions/payments",target:"_blank"},"Moonbase Embedded Storefront",-1),S(" module to accept payments, provide authentication and power software licensing. ",-1)])]),_:1}),y(Oe,{label:"Close",variant:"primary",handler:()=>v(t).reset()},null,8,["handler"]),$("div",s4,[$("header",null,[y(ot,null,{default:x(()=>[...a[2]||(a[2]=[S("Diagnostics",-1)])]),_:1}),y(Oe,{label:"Copy",success:"Copied",error:"Couldn't copy",variant:"subtle",size:"small",icon:v(zk),handler:v(s)},null,8,["icon","handler"])]),$("dl",null,[(h(!0),k(ee,null,ct(v(o),l=>(h(),k(ee,{key:l.label},[$("dt",null,N(l.label),1),$("dd",{title:l.value},N(l.value),9,i4)],64))),128))])])]))}}),l4={class:"moonbase:checkbox"},u4=["id","name","checked","disabled","aria-invalid","aria-describedby"],c4={class:"moonbase:checkbox-description"},d4=["for"],f4=["id"],m4=["id"],lo=ae({inheritAttrs:!1,__name:"MoonCheckbox",props:{name:{},label:{},error:{},hint:{},disabled:{type:Boolean},modelValue:{type:Boolean}},emits:["update:modelValue"],setup(e){return(t,n)=>(h(),k("div",l4,[$("input",gc({id:`mb-${e.name}`,type:"checkbox",name:`mb-${e.name}`,checked:e.modelValue,disabled:e.disabled,"aria-invalid":!!e.error,"aria-describedby":e.error?`mb-${e.name}-error`:e.hint?`mb-${e.name}-hint`:void 0},t.$attrs,{onChange:n[0]||(n[0]=r=>{var o;return t.$emit("update:modelValue",(o=r.target)==null?void 0:o.checked)})}),null,16,u4),$("div",c4,[$("label",{for:`mb-${e.name}`},N(e.label),9,d4),e.error?(h(),k("p",{key:0,id:`mb-${e.name}-error`,"data-type":"error"},N(e.error),9,f4)):e.hint?(h(),k("p",{key:1,id:`mb-${e.name}-hint`},N(e.hint),9,m4)):q("",!0)])]))}}),h4=["data-corners","data-variant"],p4={class:"moonbase:card-content"},rn=ae({__name:"MoonCard",setup(e){const t=oe(qe);return(n,r)=>{var o,s;return h(),k("div",{class:"moonbase:card","data-corners":(o=v(t))==null?void 0:o.theme.corners,"data-variant":(s=v(t))==null?void 0:s.theme.cards},[$("div",p4,[qt(n.$slots,"default")]),qt(n.$slots,"addon")],8,h4)}}}),v4=["data-corners"],g4=["href"],b4=["src"],y4=["src"],w4={key:2,class:"moonbase:image-placeholder"},Mt=ae({__name:"ProductIcon",props:{url:{},href:{},size:{}},setup(e){const t=oe(qe);return(n,r)=>{var o;return h(),k("div",{class:"moonbase:product-icon",style:Gr({width:`${e.size}px`,height:`${e.size}px`}),"data-corners":(o=v(t))==null?void 0:o.theme.corners},[e.href&&e.url?(h(),k("a",{key:0,href:e.href},[$("img",{src:e.url,alt:""},null,8,b4)],8,g4)):e.url?(h(),k("img",{key:1,src:e.url,alt:""},null,8,y4)):(h(),k("div",w4,[y(v(Wk))]))],12,v4)}}}),_4={},k4={class:"moonbase:text-title"};function x4(e,t){return h(),k("h4",k4,[qt(e.$slots,"default")])}const ur=Dr(_4,[["render",x4]]),E4={class:"moonbase:product-card-content"},C4=["href"],o0=ae({__name:"ProductCard",props:{product:{}},setup(e){const t=oe(qe);return(n,r)=>(h(),j(rn,{class:"moonbase:product-card"},{default:x(()=>{var o,s,i;return[y(Mt,{url:e.product.iconUrl,size:72},null,8,["url"]),$("div",E4,[y(ur,null,{default:x(()=>{var a;return[S(N((a=e.product)==null?void 0:a.name),1)]}),_:1}),(o=e.product)!=null&&o.tagline?(h(),j(ke,{key:0},{default:x(()=>{var a;return[S(N((a=e.product)==null?void 0:a.tagline),1)]}),_:1})):q("",!0),(s=v(t))!=null&&s.activation.websiteLink.enabled&&e.product.website?(h(),k("a",{key:1,class:"moonbase:product-card-website",href:e.product.website,target:"_blank",rel:"noopener noreferrer"},[y(v(qc)),S(" "+N((i=v(t))==null?void 0:i.activation.websiteLink.label),1)],8,C4)):q("",!0),qt(n.$slots,"description")]),qt(n.$slots,"default")]}),_:3}))}}),A4={class:"moonbase:auto-activation"},O4={key:0,class:"moonbase:loader"},S4={key:1,class:"moonbase:loader"},P4={key:2,class:"moonbase:loader"},N4={key:3},I4={key:1,class:"moonbase:loader"},T4={key:2,class:"moonbase:loader"},$4={key:3,class:"moonbase:loader"},D4={key:4,class:"moonbase:auto-activation-content"},M4={key:0,class:"moonbase:auto-activation-option"},V4={class:"moonbase:auto-activation-cta"},L4={key:1,class:"moonbase:auto-activation-option"},R4={class:"moonbase:auto-activation-cta"},U4={key:2,class:"moonbase:auto-activation-option"},j4={key:3,class:"moonbase:auto-activation-option"},B4={class:"moonbase:auto-activation-cta"},F4={key:4,class:"moonbase:auto-activation-option"},q4={key:4,class:"moonbase:auto-activation-cta"},H4={key:5,class:"moonbase:auto-activation-cta"},z4=ae({__name:"AutoActivation",setup(e){const t=ge(),{user:n,loaded:r,signOut:o}=Ze(),s=oe(zn),i=Fn(),a=t.getParameter("token"),{activationRequest:l,loading:u,fulfilling:c,completing:d,error:f,fulfillLicense:m,fulfillTrial:p}=Y_(a),g=oe(bt),b=V(!1);We(l,_=>{var D;!c.value&&!d.value&&(_==null?void 0:_.status)===Sn.Requested&&((D=_==null?void 0:_.licenseEligibility)!=null&&D.eligible)&&m(),(_==null?void 0:_.status)===Sn.Completed&&(s==null||s(Ce.ActivatedProduct,{product:_.product,fulfillmentType:_.fulfillmentType,user:n.value}))},{deep:!0});const O=F(()=>{if(l.value)return v(Ui(l.value.product.id))}),P=F(()=>O.value&&O.value.defaultVariation),I=F(()=>{var _,D,ne;return!!((D=(_=l.value)==null?void 0:_.trialEligibility)!=null&&D.requiresNewsletterOptIn)&&!((ne=n.value)!=null&&ne.communicationPreferences.newsletterOptIn)}),{currency:U,addToCart:B,setQuantity:z}=Un();function L(){t.show(G.Product,W.ViewProduct,{product_id:l.value.product.id})}function T(){t.enqueue(G.Activation,W.ActivateProduct,t.parameters??void 0),t.show(G.Authentication,W.SignIn)}async function A(){const _={...n.value};await o(),s==null||s(Ce.SignedOut,{user:_})}function E(){if(!O.value)return;const _=B(O.value);z(_,1),t.enqueue(G.Activation,W.ActivateProduct,t.parameters),t.show(G.Cart,W.ViewCart)}function w(){var _;t.enqueue(G.Activation,W.ActivateProduct,{...t.parameters,product_id:((_=l.value)==null?void 0:_.product.id)??""}),n.value?t.show(G.Customer,W.RedeemVoucher):t.show(G.Redeem,W.RedeemVoucher)}return(_,D)=>{var ne,he,be,fe,ye,le,Ie;return h(),k("div",A4,[v(u)||!v(r)||!((ne=v(g))!=null&&ne.loadedStorefront.value)?(h(),k("div",O4,[y(It)])):v(f)?(h(),k("div",S4,[y(Ye,null,{default:x(()=>[...D[1]||(D[1]=[S(" Uh oh ",-1)])]),_:1}),y(ze,null,{default:x(()=>[S(N(v(f)),1)]),_:1})])):v(l)?(h(),k("div",N4,[v(l).product?(h(),j(o0,{key:0,product:v(l).product},null,8,["product"])):q("",!0),((he=v(l))==null?void 0:he.status)===v(Sn).Cancelled?(h(),k("div",I4,[y(Ye,null,{default:x(()=>[...D[4]||(D[4]=[S(" Uh oh ",-1)])]),_:1}),y(ze,null,{default:x(()=>[...D[5]||(D[5]=[S(" This activation request was cancelled, open your app to try again. ",-1)])]),_:1})])):v(c)||v(d)?(h(),k("div",T4,[y(It),y(ze,null,{default:x(()=>[S(" Activating "+N(v(l).product.name)+"... ",1)]),_:1})])):((be=v(l))==null?void 0:be.status)===v(Sn).Completed?(h(),k("div",$4,[y(Ye,null,{default:x(()=>[...D[6]||(D[6]=[S(" Done! ",-1)])]),_:1}),y(ze,null,{default:x(()=>[...D[7]||(D[7]=[S(" Your product is activated. ",-1),$("br",null,null,-1),S(" You may close this window and return to the app. ",-1)])]),_:1})])):(h(),k("div",D4,[P.value?(h(),k("div",M4,[y(Ye,null,{default:x(()=>[...D[8]||(D[8]=[S(" Option 1: Purchase product ",-1)])]),_:1}),y(ze,null,{default:x(()=>[S(" Buy a copy of "+N(O.value.name)+" for ",1),$("strong",null,N(v(i)(O.value.defaultVariation.price[v(U)],v(U))),1),D[9]||(D[9]=S(". ",-1))]),_:1}),$("span",V4,[y(Oe,{label:"Purchase",variant:"primary",handler:()=>E()},null,8,["handler"])])])):q("",!0),v(n)?!v(n).ownedProducts||!((fe=v(n).ownedProducts)!=null&&fe.includes(v(l).product.id))&&!v(n).subscribedProducts||!((ye=v(n).subscribedProducts)!=null&&ye.includes(v(l).product.id))?(h(),k("div",U4,[y(Ye,null,{default:x(()=>[S(" Option "+N(P.value?"2":"1")+": Use license ",1)]),_:1}),y(ze,null,{default:x(()=>[...D[11]||(D[11]=[S(" You don't own any licenses for this product. ",-1)])]),_:1}),y(ke,{class:"moonbase:auto-activation-signed-in"},{default:x(()=>[S(" Signed in as "+N(v(n).email)+". Not you? ",1),$("button",{type:"button",onClick:A}," Sign out ")]),_:1})])):(le=v(n).ownedProducts)!=null&&le.includes(v(l).product.id)||(Ie=v(n).subscribedProducts)!=null&&Ie.includes(v(l).product.id)?(h(),k("div",j4,[y(Ye,null,{default:x(()=>[S(" Option "+N(P.value?"2":"1")+": Use license ",1)]),_:1}),y(ze,null,{default:x(()=>[...D[12]||(D[12]=[S(" You don't have enough free seats on your licenses to activate this device. Either free up a seat or purchase additional licenses. ",-1)])]),_:1}),$("span",B4,[y(Oe,{label:"Licenses",variant:"secondary",handler:()=>L()},null,8,["handler"])])])):q("",!0):(h(),k("div",L4,[y(Ye,null,{default:x(()=>[S(" Option "+N(P.value?"2":"1")+": Use license ",1)]),_:1}),y(ze,null,{default:x(()=>[...D[10]||(D[10]=[S(" Please sign in to use a license for this product. ",-1)])]),_:1}),$("span",R4,[y(Oe,{label:"Sign in",variant:"secondary",handler:()=>T()},null,8,["handler"])])])),v(l).trialEligibility?(h(),k("div",F4,[y(Ye,null,{default:x(()=>[S(" Option "+N(P.value?"3":"2")+": Start trial ",1)]),_:1}),v(l).trialEligibility.eligible&&v(l).trialEligibility.requiresAccount&&!v(n)?(h(),j(ze,{key:0},{default:x(()=>[...D[13]||(D[13]=[S(" You need to be signed in to start a trial for this product. ",-1)])]),_:1})):v(l).trialEligibility.eligible&&v(l).trialEligibility.existing?(h(),j(ze,{key:1},{default:x(()=>[S(" You are eligible for a "+N(v(l).trialEligibility.numberOfDaysPerProduct)+" day trial of which you have "+N(v(l).trialEligibility.numberOfDaysRemaining)+" days remaining. ",1)]),_:1})):v(l).trialEligibility.eligible?(h(),j(ze,{key:2},{default:x(()=>[S(" You are eligible for a "+N(v(l).trialEligibility.numberOfDaysPerProduct)+" day trial. ",1)]),_:1})):(h(),j(ze,{key:3},{default:x(()=>[...D[14]||(D[14]=[S(" This device or product is not eligible for a trial. ",-1)])]),_:1})),v(l).trialEligibility.eligible&&v(l).trialEligibility.requiresAccount&&!v(n)?(h(),k("span",q4,[y(Oe,{label:"Sign in",variant:"secondary",handler:()=>T()},null,8,["handler"])])):v(l).trialEligibility.eligible?(h(),k("span",H4,[I.value?(h(),j(lo,{key:0,modelValue:b.value,"onUpdate:modelValue":D[0]||(D[0]=De=>b.value=De),label:"Receive updates and offers by email",hint:"Subscribing to the newsletter is required to start a trial.",name:"newsletter-opt-in"},null,8,["modelValue"])):q("",!0),y(Oe,{label:"Start trial",variant:"secondary",disabled:I.value&&!b.value,handler:()=>v(p)(b.value)},null,8,["disabled","handler"])])):q("",!0)])):q("",!0),D[16]||(D[16]=$("div",{class:"moonbase:grow"},null,-1)),y(ke,{class:"moonbase:auto-activation-redeem"},{default:x(()=>[D[15]||(D[15]=S(" Have a voucher code? ",-1)),$("button",{type:"button",onClick:w}," Redeem now ")]),_:1})]))])):(h(),k("div",P4,[y(Ye,null,{default:x(()=>[...D[2]||(D[2]=[S(" Uh oh ",-1)])]),_:1}),y(ze,null,{default:x(()=>[...D[3]||(D[3]=[S(" Could not find activation request ",-1)])]),_:1})]))])}}}),W4={},Z4={class:"moonbase:text-caption"};function G4(e,t){return h(),k("span",Z4,[qt(e.$slots,"default")])}const St=Dr(W4,[["render",G4]]),Y4=["data-corners"],K4=["accept"],Q4={"data-error":""},X4=ae({__name:"DeviceTokenInput",props:{error:{}},emits:["input","error"],setup(e,{emit:t}){const n=t,r=oe(qe),o=V(!1),s=F(()=>{let u=".dt";return r!=null&&r.value&&(u=r.value.activation.deviceTokenFileExtension),u.startsWith(".")?u:`.${u}`});function i(u){const c=new FileReader;c.onload=d=>{var f;n("input",(f=d.target)==null?void 0:f.result)},c.readAsText(u)}function a(u){var d;o.value=!1;const c=(d=u.dataTransfer)==null?void 0:d.files;if(!c||c.length!==1){n("error",new Error("Only one file can be uploaded at a time!"));return}i(c[0])}function l(u){const c=u.target,d=c==null?void 0:c.files;if(!d||d.length!==1){n("error",new Error("Only one file can be uploaded at a time!"));return}i(d[0])}return(u,c)=>{var d,f;return h(),k("div",{class:li(["moonbase:device-token-input",{"moonbase:device-token-input--hovering":o.value}]),"data-corners":(d=v(r))==null?void 0:d.theme.corners,onDrag:c[0]||(c[0]=Nr(()=>{},["prevent","stop"])),onDragstart:c[1]||(c[1]=Nr(()=>{},["prevent","stop"])),onDragend:c[2]||(c[2]=Nr(m=>o.value=!1,["prevent","stop"])),onDragover:c[3]||(c[3]=Nr(m=>o.value=!0,["prevent","stop"])),onDragenter:c[4]||(c[4]=Nr(m=>o.value=!0,["prevent","stop"])),onDragleave:c[5]||(c[5]=Nr(m=>o.value=!1,["prevent","stop"])),onDrop:Nr(a,["prevent","stop"])},[y(v(Zk)),c[6]||(c[6]=$("label",{for:"fallback-input"},[$("span",{class:"moonbase:underline"},"Choose a machine file"),S(" or drag here to upload ")],-1)),$("input",{id:"fallback-input",type:"file",accept:s.value,class:"moonbase:sr-only",onChange:l},null,40,K4),$("p",Q4,N((f=e.error)==null?void 0:f.message),1)],42,Y4)}}}),J4={class:"moonbase:manual-activation"},eA={key:1,class:"moonbase:loader"},tA={key:2,class:"moonbase:manual-activation-content"},nA=ae({__name:"ManualActivation",setup(e){const t=oe(qe),{activateProduct:n}=Zo(),r=$a.Offline,o=V(0),s=V(null),i=V(null);async function a(l){o.value=1;try{i.value=await n(l,r),o.value=2}catch(u){s.value=u,o.value=0}}return(l,u)=>(h(),k("div",J4,[y(ze,null,{default:x(()=>[...u[2]||(u[2]=[S(" Upload your machine file here to get a license file for activating offline devices. The machine file can be generated in the installed app. ",-1)])]),_:1}),y(As,{mode:"out-in",name:"moonbase:slide-left"},{default:x(()=>[o.value===0?(h(),j(X4,{key:0,error:s.value,onInput:u[0]||(u[0]=c=>a(c)),onError:u[1]||(u[1]=c=>s.value=c)},null,8,["error"])):o.value===1?(h(),k("div",eA,[y(It)])):o.value===2&&i.value?(h(),k("div",tA,[y(Ye,null,{default:x(()=>[...u[3]||(u[3]=[S(" Success! ",-1)])]),_:1}),y(ze,null,{default:x(()=>[...u[4]||(u[4]=[S(" Your license can be downloaded below: ",-1)])]),_:1}),i.value.license.product?(h(),j(o0,{key:0,product:i.value.license.product},{description:x(()=>[y(St,null,{default:x(()=>[S(N(i.value.license.activeNumberOfActivations)+" of "+N(i.value.license.maxNumberOfActivations)+" devices activated ",1)]),_:1})]),default:x(()=>{var c;return[y(Ls,{href:i.value.url,target:"_blank",download:((c=v(t))==null?void 0:c.activation.licenseTokenFileName)??"license-file.mb",class:"moonbase:manual-activation-download-button"},{default:x(()=>[y(v(wv))]),_:1},8,["href","download"])]}),_:1},8,["product"])):q("",!0),u[5]||(u[5]=$("div",null,null,-1)),u[6]||(u[6]=$("div",null,null,-1))])):q("",!0)]),_:1})]))}}),rA={class:"moonbase:activation"},oA=ae({__name:"Activation",setup(e){const t=ge();return(n,r)=>(h(),k("div",rA,[v(t).getParameter("token")?(h(),j(z4,{key:0})):(h(),j(nA,{key:1}))]))}}),sA=["disabled"],s0=Symbol("form-state"),hn=ae({__name:"MoonForm",props:{handler:{type:Function},disabled:{type:Boolean},noReset:{type:Boolean}},setup(e){const t=e,n=V(!1),r=V(!1),o=V(!1),s=F(()=>t.disabled||n.value||r.value||!1);nn(s0,{working:n,isSuccess:r,isError:o,disabled:s});async function i(){n.value=!0;try{await t.handler(),n.value=!1,r.value=!0,await Zt(2500),t.noReset||(r.value=!1)}catch{n.value=!1,o.value=!0,await Zt(2500),o.value=!1}}return(a,l)=>(h(),k("form",{disabled:s.value,onSubmit:Nr(i,["prevent"])},[qt(a.$slots,"default",{working:n.value,isSuccess:r.value,isError:o.value,disabled:n.value||r.value})],40,sA))}}),iA=["hidden","data-revealable"],aA=["for"],lA={class:"moonbase:input-field"},uA=["id","type","name","placeholder","value","disabled","aria-invalid","aria-describedby","data-corners"],cA=["aria-label","aria-pressed","tabindex","disabled"],dA=["id"],fA=["id"],Tt=ae({inheritAttrs:!1,__name:"MoonInput",props:{name:{},label:{},placeholder:{},type:{},error:{},hint:{},disabled:{type:Boolean},modelValue:{},hidden:{type:Boolean},revealable:{type:Boolean}},emits:["update:modelValue"],setup(e){const t=e,n=oe(qe),r=V(!1),o=F(()=>t.revealable&&r.value?"text":t.type??"text");return(s,i)=>{var a;return h(),k("div",{class:"moonbase:input",hidden:e.hidden||void 0,"data-revealable":e.revealable||void 0},[$("label",{for:`mb-${e.name}`},N(e.label),9,aA),$("div",lA,[$("input",gc({id:`mb-${e.name}`,type:o.value,name:`mb-${e.name}`,placeholder:e.placeholder,value:e.modelValue,disabled:e.disabled,"aria-invalid":!!e.error,"aria-describedby":e.error?`mb-${e.name}-error`:e.hint?`mb-${e.name}-hint`:void 0,"data-corners":(a=v(n))==null?void 0:a.theme.corners},s.$attrs,{onInput:i[0]||(i[0]=l=>{var u;return s.$emit("update:modelValue",(u=l.target)==null?void 0:u.value)})}),null,16,uA),e.revealable?(h(),k("button",{key:0,type:"button",class:"moonbase:input-toggle","aria-label":r.value?"Hide password":"Show password","aria-pressed":r.value,tabindex:e.disabled?-1:0,disabled:e.disabled,"data-action":"toggle-password-visibility",onMousedown:i[1]||(i[1]=Nr(()=>{},["prevent"])),onClick:i[2]||(i[2]=l=>r.value=!r.value)},[r.value?(h(),j(v(Yk),{key:0})):(h(),j(v(Kk),{key:1}))],40,cA)):q("",!0)]),e.error?(h(),k("p",{key:0,id:`mb-${e.name}-error`,class:"moonbase:input-hint","data-type":"error"},N(e.error),9,dA)):e.hint?(h(),k("p",{key:1,id:`mb-${e.name}-hint`,class:"moonbase:input-hint"},N(e.hint),9,fA)):q("",!0)],8,iA)}}}),pn=ae({__name:"MoonSubmitButton",props:{label:{},success:{},error:{},variant:{},size:{}},setup(e){const{working:t,isSuccess:n,isError:r,disabled:o}=oe(s0);return(s,i)=>(h(),j(ea,{label:e.label,working:v(t),"success-label":e.success,success:v(n),"error-label":e.error,error:v(r),type:"submit",disabled:v(o),variant:e.variant,size:e.size},null,8,["label","working","success-label","success","error-label","error","disabled","variant","size"]))}}),mA=["data-visible"],hA={class:"moonbase:sign-in-actions"},pA=["data-corners"],vA=ae({__name:"SignIn",emits:["signedIn"],setup(e,{emit:t}){const n=t,r=ge(),o=Ze(),s=oe(qe),i=oe(zn),a=V(r.getParameter("email")??""),l=V(""),u=V(null);async function c(){u.value=null;try{const d=await o.signIn(a.value,l.value);i==null||i(Ce.SignedIn,{user:d}),Zt(1500).then(()=>n("signedIn",d))}catch(d){throw d instanceof wr?u.value="User not found":u.value=d.message,d}}return(d,f)=>(h(),j(hn,{handler:c,class:"moonbase:sign-in"},{default:x(()=>{var m,p,g;return[y(Tt,{modelValue:a.value,"onUpdate:modelValue":f[0]||(f[0]=b=>a.value=b),label:"Email address",name:"email",type:"email",placeholder:"Email address",autocomplete:"email",required:""},null,8,["modelValue"]),y(Tt,{modelValue:l.value,"onUpdate:modelValue":f[1]||(f[1]=b=>l.value=b),label:"Password",name:"password",type:"password",placeholder:"Password",autocomplete:"current-password",required:"",revealable:""},null,8,["modelValue"]),$("span",{class:"moonbase:error","data-visible":!!u.value||void 0},N(u.value),9,mA),y(pn,{success:"Signed in",label:"Sign in",error:"Error"}),$("div",hA,[(m=v(s))!=null&&m.auth.signUp.enabled?(h(),j(Oe,{key:0,label:"Create account",variant:"subtle",handler:()=>v(r).show(v(G).Authentication,v(W).SignUp,{email:a.value})},null,8,["handler"])):q("",!0),y(Oe,{label:"Forgot password",variant:"subtle",handler:()=>v(r).show(v(G).Authentication,v(W).ForgotPassword,{email:a.value})},null,8,["handler"])]),(p=v(s))!=null&&p.auth.signIn.hint?(h(),k("div",{key:0,class:"moonbase:sign-in-hint","data-corners":(g=v(s))==null?void 0:g.theme.corners},[y(v(Qk)),y(ke,null,{default:x(()=>[S(N(v(s).auth.signIn.hint),1)]),_:1})],8,pA)):q("",!0)]}),_:1}))}}),Gl="data:image/png;base64,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",Yl={default:[{title:"Password must be at least 6 characters long",test:e=>e.length>=6},{title:"Password must contain uppercase letters",test:e=>/[A-Z]/.test(e)},{title:"Password must contain lowercase letters",test:e=>/[a-z]/.test(e)},{title:"Password must contain at least one number",test:e=>/\d/.test(e)},{title:"Password must contain at least one special character",test:e=>/[=+\-^$*.[\\\]{}()?!@#%&/,><':;|_~`]/.test(e)}],lax:[{title:"Password must be at least 6 characters long",test:e=>e.length>=6}]},gA={key:0,class:"moonbase:loader"},bA={key:1,class:"moonbase:confirm-failure"},yA={class:"moonbase:error","data-visible":""},wA={class:"moonbase:recovery-actions"},_A={class:"moonbase:connectable-providers"},kA={class:"moonbase:provider-info"},xA=["src","alt"],EA={key:0,class:"moonbase:password-validation"},CA=["data-visible"],AA=ae({__name:"ConfirmAccount",emits:["confirmedAccount"],setup(e,{emit:t}){const n=t,r=ge(),{user:o,confirmAccount:s,resetPassword:i,signIn:a}=Ze(),l=oe(qe),u=V(!0),c=V(null),d=V(!1),f=V(null),m=V(""),p=V(!1),g=V(null),b=F(()=>{var E;return(((E=f.value)==null?void 0:E.connectedAccounts)??[]).filter(w=>!w.isConnected)}),O=F(()=>Yl[(l==null?void 0:l.value.auth.passwords)??"default"]),P=F(()=>O.value.some(E=>!E.test(m.value)));Fe(async()=>{try{const E=r.getParameter("email"),w=r.getParameter("code");if(!E||!w)throw new Error("Link is broken");const _=await s(E,w);if(c.value=_,_.status==="SignedIn"){const D=o.value;D&&((D.connectedAccounts??[]).some(he=>!he.isConnected)?(f.value=D,d.value=!0):Zt(1500).then(()=>n("confirmedAccount",D)))}}catch(E){E instanceof wr?g.value="Could not find a user to confirm":g.value=E.message}u.value=!1});async function I(){var E,w;if(g.value=null,!!((E=c.value)!=null&&E.resetPasswordToken))try{const _=r.getParameter("email");await i(_,m.value,(w=c.value)==null?void 0:w.resetPasswordToken);const D=await a(_,m.value);if((D.connectedAccounts??[]).some(he=>!he.isConnected)){f.value=D,d.value=!0;return}Zt(1500).then(()=>n("confirmedAccount",D))}catch(_){throw g.value=_.message,_}}function U(E){switch(E){case"iLok":return"iLok"}}function B(E){switch(E){case"iLok":return"Link your iLok account to streamline license delivery and activation."}}function z(E){switch(E){case"iLok":return Gl}}function L(E){const w=r.getParameter("email");r.show(G.Authentication,E,w?{email:w}:void 0)}function T(E){r.show(G.Customer,W.ConnectAccount,{provider_id:E})}function A(){f.value&&n("confirmedAccount",f.value)}return(E,w)=>(h(),j(hn,{handler:I,disabled:P.value,class:"moonbase:confirm-account"},{default:x(()=>[u.value?(h(),k("div",gA,[y(It)])):c.value?(h(),k(ee,{key:2},[d.value?(h(),k(ee,{key:0},[y(ur,null,{default:x(()=>[...w[2]||(w[2]=[S("Connect your accounts",-1)])]),_:1}),y(ze,null,{default:x(()=>[...w[3]||(w[3]=[S(" You can connect these external account providers now or later from your account settings. ",-1)])]),_:1}),$("ul",_A,[(h(!0),k(ee,null,ct(b.value,_=>(h(),k("li",{key:_.provider},[$("div",kA,[z(_.provider)?(h(),k("img",{key:0,src:z(_.provider),alt:U(_.provider),class:"moonbase:provider-logo"},null,8,xA)):q("",!0),$("div",null,[y(Ye,null,{default:x(()=>[S(N(U(_.provider)),1)]),_:2},1024),y(ke,null,{default:x(()=>[S(N(B(_.provider)),1)]),_:2},1024)])]),y(Oe,{label:"Connect",handler:()=>T(_.provider)},null,8,["handler"])]))),128))]),y(Oe,{label:"Continue",variant:"secondary",handler:A})],64)):c.value.status==="SignedIn"?(h(),k(ee,{key:1},[y(ur,null,{default:x(()=>[S(" Welcome back, "+N(c.value.name)+"! ",1)]),_:1}),y(ze,null,{default:x(()=>[...w[4]||(w[4]=[S(" You're signed in. ",-1)])]),_:1})],64)):(h(),k(ee,{key:2},[y(ur,null,{default:x(()=>[S(" Hi "+N(c.value.name)+", ",1)]),_:1}),y(ze,null,{default:x(()=>[...w[5]||(w[5]=[S(" Please create a new password for your account: ",-1)])]),_:1}),y(Tt,{"model-value":v(r).getParameter("email"),hidden:"",label:"Email address",name:"email",type:"email",placeholder:"Email address",autocomplete:"email",required:""},null,8,["model-value"]),y(Tt,{modelValue:m.value,"onUpdate:modelValue":w[0]||(w[0]=_=>m.value=_),label:"Password",name:"password",type:"password",placeholder:"Password",autocomplete:"new-password",required:"",onBlur:w[1]||(w[1]=_=>p.value=!0)},null,8,["modelValue"]),p.value&&P.value?(h(),k("div",EA,[(h(!0),k(ee,null,ct(O.value.filter(_=>!_.test(m.value)),_=>(h(),j(ke,{key:_.title,"data-error":""},{default:x(()=>[S(N(_.title),1)]),_:2},1024))),128))])):q("",!0),y(pn,{success:"Password saved",label:"Save password",error:"Error"}),$("span",{class:"moonbase:error","data-visible":!!g.value||void 0},N(g.value),9,CA)],64))],64)):(h(),k("div",bA,[$("span",yA,N(g.value),1),$("div",wA,[y(Oe,{label:"Sign in",handler:()=>L(v(W).SignIn)},null,8,["handler"]),y(Oe,{label:"Forgot password",variant:"subtle",handler:()=>L(v(W).ForgotPassword)},null,8,["handler"])])]))]),_:1},8,["disabled"]))}}),OA={class:"moonbase:confirm-email"},SA={key:0,class:"moonbase:loader"},PA={key:1,class:"moonbase:confirm-failure"},NA={class:"moonbase:error","data-visible":""},IA={class:"moonbase:recovery-actions"},TA=ae({__name:"ConfirmEmail",emits:["confirmed"],setup(e,{emit:t}){const n=t,r=ge(),{user:o,confirmEmail:s}=Ze(),i=V(!0),a=V(null);function l(u){const c=r.getParameter("email");r.show(G.Authentication,u,c?{email:c}:void 0)}return Fe(async()=>{try{const u=r.getParameter("email"),c=r.getParameter("code");if(!u||!c)throw new Error("Link is broken");await s(u,c),Zt(1500).then(()=>n("confirmed"))}catch(u){a.value=u.message}i.value=!1}),(u,c)=>(h(),k("div",OA,[i.value?(h(),k("div",SA,[y(It)])):a.value?(h(),k("div",PA,[$("span",NA,N(a.value),1),$("div",IA,[v(o)?(h(),j(Oe,{key:0,label:"Continue",handler:()=>v(r).show(v(G).Customer,v(W).ViewAccount,void 0,!0)},null,8,["handler"])):(h(),k(ee,{key:1},[y(Oe,{label:"Sign in",handler:()=>l(v(W).SignIn)},null,8,["handler"]),y(Oe,{label:"Forgot password",variant:"subtle",handler:()=>l(v(W).ForgotPassword)},null,8,["handler"])],64))])])):(h(),k(ee,{key:2},[y(Ye,null,{default:x(()=>[...c[0]||(c[0]=[S(" Success! ",-1)])]),_:1}),c[1]||(c[1]=$("p",null," Thanks for confirming your new email. ",-1)),v(o)?(h(),j(Oe,{key:0,handler:()=>v(r).show(v(G).Customer,v(W).ViewAccount,void 0,!0),label:"Continue"},null,8,["handler"])):q("",!0)],64))]))}}),$A={class:"moonbase:confirm-email-change"},DA={key:0,class:"moonbase:loader"},MA={key:1,class:"moonbase:confirm-failure"},VA={class:"moonbase:error","data-visible":""},LA={class:"moonbase:recovery-actions"},RA=ae({__name:"ConfirmEmailChange",emits:["confirmed"],setup(e,{emit:t}){const n=t,r=ge(),{user:o,confirmEmailChange:s}=Ze(),i=V(!0),a=V(null),l=V(!1);function u(){r.enqueue(G.Authentication,W.ConfirmEmailChange,r.parameters),r.show(G.Authentication,W.SignIn)}return Fe(async()=>{try{const c=r.getParameter("email"),d=r.getParameter("code");if(!c||!d)throw new Error("Link is broken");await s(c,d),Zt(1500).then(()=>n("confirmed"))}catch(c){l.value=c instanceof ds,a.value=l.value?"Your session ended before we could confirm the change":c.message}i.value=!1}),(c,d)=>{var f;return h(),k("div",$A,[i.value?(h(),k("div",DA,[y(It)])):a.value?(h(),k("div",MA,[$("span",VA,N(a.value),1),$("div",LA,[v(o)&&!l.value?(h(),j(Oe,{key:0,label:"Go to your account",handler:()=>v(r).show(v(G).Customer,v(W).ViewAccount,void 0,!0)},null,8,["handler"])):(h(),j(Oe,{key:1,label:"Sign in",handler:u}))])])):(h(),k(ee,{key:2},[$("h3",null," Hi "+N(((f=v(o))==null?void 0:f.name)||"there")+", ",1),d[0]||(d[0]=$("p",null," Thanks for confirming your new email. You can now sign in using this new address. ",-1))],64))])}}}),UA=["data-visible"],jA=ae({__name:"ForgotPassword",setup(e){const t=ge(),n=Ze(),r=V(t.getParameter("email")??""),o=V(null),s=V(!1);async function i(){o.value=null;try{await n.forgotPassword(r.value),Zt(1500).then(()=>{s.value=!0})}catch(a){throw a instanceof wr?o.value="User not found":o.value=a.message,a}}return(a,l)=>(h(),j(hn,{handler:i,class:"moonbase:sign-in","no-reset":""},{default:x(({disabled:u})=>[l[1]||(l[1]=$("p",null," Please enter your email address below. You will receive an email message with instructions on how to reset your password. ",-1)),y(Tt,{modelValue:r.value,"onUpdate:modelValue":l[0]||(l[0]=c=>r.value=c),label:"Email address",name:"email",type:"email",placeholder:"Email address",autocomplete:"email",required:"",disabled:u},null,8,["modelValue","disabled"]),y(pn,{success:"Email sent",label:"Reset password",error:"Error"}),$("span",{class:"moonbase:error","data-visible":!!o.value||void 0},N(o.value),9,UA)]),_:1}))}}),BA={key:0,class:"moonbase:password-validation"},FA=["data-visible"],qA=ae({__name:"ResetPassword",emits:["passwordReset"],setup(e,{emit:t}){const n=t,r=ge(),o=Ze(),s=oe(qe),i=F(()=>r.getParameter("email")),a=V(""),l=V(!1),u=V(null),c=F(()=>!i.value||!r.getParameter("code")),d=F(()=>Yl[(s==null?void 0:s.value.auth.passwords)??"default"]),f=F(()=>d.value.some(g=>!g.test(a.value)));function m(){r.show(G.Authentication,W.ForgotPassword,i.value?{email:i.value}:void 0)}async function p(){u.value=null;const g=r.getParameter("code");if(g)try{await o.resetPassword(i.value,a.value,g);const b=await o.signIn(i.value,a.value);Zt(1500).then(()=>n("passwordReset",b))}catch(b){throw u.value=b.message,b}}return(g,b)=>(h(),j(hn,{handler:p,disabled:f.value,class:"moonbase:reset-password"},{default:x(()=>[c.value?(h(),k(ee,{key:0},[b[2]||(b[2]=$("span",{class:"moonbase:error","data-visible":""}," Link broken, please try again ",-1)),y(Oe,{label:"Request a new link",handler:m})],64)):(h(),k(ee,{key:1},[$("h3",null," Hi "+N(i.value)+", ",1),b[3]||(b[3]=$("p",null," Please create a new password for your account: ",-1)),y(Tt,{"model-value":i.value,hidden:"",label:"Email address",name:"email",type:"email",placeholder:"Email address",autocomplete:"email",required:""},null,8,["model-value"]),y(Tt,{modelValue:a.value,"onUpdate:modelValue":b[0]||(b[0]=O=>a.value=O),label:"Password",name:"password",type:"password",placeholder:"Password",autocomplete:"new-password",required:"",revealable:"",onBlur:b[1]||(b[1]=O=>l.value=!0)},null,8,["modelValue"]),l.value&&f.value?(h(),k("div",BA,[(h(!0),k(ee,null,ct(d.value.filter(O=>!O.test(a.value)),O=>(h(),j(ke,{key:O.title,"data-error":""},{default:x(()=>[S(N(O.title),1)]),_:2},1024))),128))])):q("",!0),y(pn,{success:"Password saved",label:"Save password",error:"Error"}),$("span",{class:"moonbase:error","data-visible":!!u.value||void 0},N(u.value),9,FA),u.value?(h(),j(Oe,{key:1,label:"Request a new link",variant:"subtle",handler:m})):q("",!0)],64))]),_:1},8,["disabled"]))}}),HA={key:0,class:"moonbase:sign-up moonbase:sign-up-pending"},zA={key:0,class:"moonbase:password-validation"},WA=["href"],ZA=["href"],GA=["data-visible"],YA=ae({__name:"SignUp",emits:["signedUp"],setup(e,{emit:t}){const n=t,r=ge(),o=Ze(),s=oe(ou),i=oe(zn),a=oe(qe),l=V(""),u=V(r.getParameter("email")??""),c=V(""),d=V(!1),f=V((a==null?void 0:a.value.auth.signUp.marketingConsent)===as.OptOut||(a==null?void 0:a.value.auth.signUp.marketingConsent)===as.OptedInByDefault),m=V(null),p=V(null),g=F(()=>{var I;return cs([...(a==null?void 0:a.value.groups.signUp)??[],...((I=r.getParameter("groups"))==null?void 0:I.split(","))??[]])}),b=F(()=>Yl[(a==null?void 0:a.value.auth.passwords)??"default"]),O=F(()=>b.value.some(I=>!I.test(c.value)));async function P(){m.value=null;try{const I=await o.signUp(l.value,u.value,c.value,null,!0,!0,f.value,{groupIds:g.value});if(I.status==="activation-pending"){p.value=I.email;return}i==null||i(Ce.SignedUp,{user:I.user}),Zt(1500).then(()=>n("signedUp",I.user))}catch(I){throw m.value=I.message,I}}return(I,U)=>p.value?(h(),k("div",HA,[y(Ye,null,{default:x(()=>[...U[5]||(U[5]=[S(" Confirm your email ",-1)])]),_:1}),y(ze,null,{default:x(()=>[U[6]||(U[6]=S(" We sent a confirmation link to ",-1)),$("strong",null,N(p.value),1),U[7]||(U[7]=S(". Click it to finish creating your account. You'll be signed in automatically. ",-1))]),_:1})])):(h(),j(hn,{key:1,handler:P,disabled:O.value,class:"moonbase:sign-up"},{default:x(()=>{var B;return[y(Tt,{modelValue:l.value,"onUpdate:modelValue":U[0]||(U[0]=z=>l.value=z),label:"Full name",name:"name",type:"text",placeholder:"Full name",autocomplete:"name",required:""},null,8,["modelValue"]),y(Tt,{modelValue:u.value,"onUpdate:modelValue":U[1]||(U[1]=z=>u.value=z),label:"Email address",name:"email",type:"email",placeholder:"Email address",autocomplete:"email",required:""},null,8,["modelValue"]),y(Tt,{modelValue:c.value,"onUpdate:modelValue":U[2]||(U[2]=z=>c.value=z),label:"Password",name:"password",type:"password",placeholder:"Password",autocomplete:"current-password",required:"",revealable:"",onBlur:U[3]||(U[3]=z=>d.value=!0)},null,8,["modelValue"]),d.value&&O.value?(h(),k("div",zA,[(h(!0),k(ee,null,ct(b.value.filter(z=>!z.test(c.value)),z=>(h(),j(ke,{key:z.title,"data-error":""},{default:x(()=>[S(N(z.title),1)]),_:2},1024))),128))])):q("",!0),((B=v(a))==null?void 0:B.auth.signUp.marketingConsent)!==v(as).OptOut?(h(),j(lo,{key:1,modelValue:f.value,"onUpdate:modelValue":U[4]||(U[4]=z=>f.value=z),label:"Receive updates and offers by email",name:"newsletter-opt-in"},null,8,["modelValue"])):q("",!0),y(ke,null,{default:x(()=>{var z;return[U[8]||(U[8]=S(" By signing up, you accept our ",-1)),$("a",{href:`${v(s)}/terms-of-use`,target:"_blank",rel:"noopener"},"terms",8,WA),U[9]||(U[9]=S(" and ",-1)),$("a",{href:`${v(s)}/privacy-policy`,target:"_blank",rel:"noopener"},"privacy policy",8,ZA),U[10]||(U[10]=S(". ",-1)),((z=v(a))==null?void 0:z.auth.signUp.marketingConsent)===v(as).OptOut?(h(),k(ee,{key:0},[S(" You also agree to receive updates and offers by email. ")],64)):q("",!0)]}),_:1}),y(pn,{success:"Signed up",label:"Sign up",error:"Error"}),$("span",{class:"moonbase:error","data-visible":!!m.value||void 0},N(m.value),9,GA),y(Oe,{label:"I already have an account",variant:"subtle",handler:()=>v(r).show(v(G).Authentication,v(W).SignIn,{email:u.value})},null,8,["handler"])]}),_:1},8,["disabled"]))}}),KA={class:"moonbase:authentication"},QA={key:0,class:"moonbase:loader"},XA=ae({__name:"Authentication",setup(e){const t=ge(),{loaded:n}=Ze();return(r,o)=>(h(),k("div",KA,[y(As,{name:v(t).direction===v(Nl).Forward?"moonbase:slide-left":"moonbase:slide-right",mode:"out-in"},{default:x(()=>[v(n)?v(t).intent===v(W).SignIn?(h(),j(vA,{key:1,onSignedIn:o[0]||(o[0]=s=>v(t).dequeue())})):v(t).intent===v(W).SignUp?(h(),j(YA,{key:2,onSignedUp:o[1]||(o[1]=s=>v(t).next?v(t).dequeue():v(t).show(v(G).Customer,v(W).ViewAccount,void 0,!0))})):v(t).intent===v(W).ConfirmAccount?(h(),j(AA,{key:3,onConfirmedAccount:o[2]||(o[2]=s=>v(t).show(v(G).Customer,v(W).ViewProducts,void 0,!0))})):v(t).intent===v(W).ConfirmEmail?(h(),j(TA,{key:4})):v(t).intent===v(W).ConfirmEmailChange?(h(),j(RA,{key:5})):v(t).intent===v(W).ForgotPassword?(h(),j(jA,{key:6})):v(t).intent===v(W).ResetPassword?(h(),j(qA,{key:7,onPasswordReset:o[3]||(o[3]=s=>v(t).show(v(G).Customer,v(W).ViewAccount,void 0))})):q("",!0):(h(),k("div",QA,[y(It)]))]),_:1},8,["name"])]))}});function Kl(){const e=oe(bt);return e||console.warn("No storefront injectable"),{reportProblem:async(t,n)=>{try{await(e==null?void 0:e.client.api.fetch(`/api/customer/insights/${t}`,null,{method:"POST",body:{origin:window==null?void 0:window.location.href,...n}}))}catch{}}}}const JA=1e-6;function i0(e,t,n){if(!t.currency)return null;const r=e[t.currency];if(typeof r!="number"||!Number.isFinite(r)||r<=0)return null;const o=t.amount;return n>0&&o<=0||r-o<JA?null:{currency:t.currency,current:o,target:r,remaining:r-o,fraction:Math.min(1,Math.max(0,o/r))}}const eO=["data-corners","data-cards"],a0=ae({__name:"Counter",props:{modelValue:{}},emits:["update:modelValue"],setup(e){const t=oe(qe);return(n,r)=>{var o,s;return h(),k("div",{class:"moonbase:counter","data-corners":(o=v(t))==null?void 0:o.theme.corners,"data-cards":(s=v(t))==null?void 0:s.theme.cards},[$("button",{onClick:r[0]||(r[0]=i=>n.$emit("update:modelValue",e.modelValue-1))},[y(v(Xk))]),y(ke,null,{default:x(()=>[S(N(e.modelValue.toString().padStart(2,"0")),1)]),_:1}),$("button",{onClick:r[1]||(r[1]=i=>n.$emit("update:modelValue",e.modelValue+1))},[y(v(Jk))])],8,eO)}}});function ta(e){switch(e){case qr.Daily:return"day";case qr.Weekly:return"week";case qr.Monthly:return"month";case qr.Quarterly:return"quarter";case qr.Yearly:return"year"}throw new Error("Unknown cycle length")}function l0(e,t){var r;const n=((r=e==null?void 0:e.pricingTiers)==null?void 0:r.filter(o=>t>=o.minQuantity))??[];return n.length>0?n[n.length-1]:null}function u0(e,t,n){var s;const r=e==null?void 0:e.price[n];if(r===void 0)return;const o=(s=l0(e,t))==null?void 0:s.price[n];return o===void 0?r:Math.min(o,r)}function c0(e,t,n){var o;const r=(o=l0(e,t))==null?void 0:o.price[n];return r!==void 0&&(e==null?void 0:e.price[n])!==void 0&&r<e.price[n]}const tO={class:"moonbase:bundle-cart-item-content"},nO={key:0,class:"moonbase:bundle-cart-item-total"},rO={key:0,class:"moonbase:discount"},oO={class:"moonbase:bundle-cart-item-summary"},sO=["data-open"],iO=["data-open"],aO={class:"moonbase:bundle-cart-item-product-list-item-content"},lO={key:0,fill:"none",viewBox:"0 0 24 24","stroke-width":"1.5",stroke:"currentColor"},uO=ae({__name:"BundleCartItem",props:{lineItem:{},currency:{}},setup(e){const t=e,n=kl(t.lineItem.bundleId),r=oe(qe),o=Fn(),s=Un(),i=V(!1),a=V(null),l=F(()=>{var u;return((u=t.lineItem.price)==null?void 0:u[s.currency.value])===0});return We(i,u=>{a.value&&(a.value.style.height=u?`${a.value.scrollHeight}px`:"0px")}),(u,c)=>{var d;return h(),j(rn,{class:"moonbase:bundle-cart-item"},xi({default:x(()=>{var f,m,p,g,b,O,P,I;return[y(Mt,{url:(f=e.lineItem.bundle)==null?void 0:f.iconUrl,size:72},null,8,["url"]),$("div",tO,[y(ot,null,{default:x(()=>{var U;return[S(N((U=e.lineItem.bundle)==null?void 0:U.name),1)]}),_:1}),(m=e.lineItem.bundle)!=null&&m.tagline?(h(),j(ke,{key:0,class:"moonbase:bundle-cart-item-tagline","data-truncate":e.lineItem.variation&&e.lineItem.variation.id!==((g=(p=v(n))==null?void 0:p.defaultVariation)==null?void 0:g.id)||void 0},{default:x(()=>{var U;return[S(N((U=e.lineItem.bundle)==null?void 0:U.tagline),1)]}),_:1},8,["data-truncate"])):q("",!0),e.lineItem.variation&&e.lineItem.variation.id!==((O=(b=v(n))==null?void 0:b.defaultVariation)==null?void 0:O.id)?(h(),j(ke,{key:1,class:"moonbase:bundle-cart-item-variation"},{default:x(()=>[S(N(e.lineItem.variation.name),1)]),_:1})):q("",!0)]),e.lineItem.variation?(h(),k("div",nO,[y(Bn,null,{default:x(()=>{var U;return[e.lineItem.variation.hasDiscount||v(c0)(e.lineItem.variation,e.lineItem.quantity,e.currency)?(h(),k("span",rO,N(v(o)(e.lineItem.variation.originalPrice[e.currency]*e.lineItem.quantity,e.currency)),1)):q("",!0),S(" "+N(v(o)((v(u0)(e.lineItem.variation,e.lineItem.quantity,e.currency)??0)*e.lineItem.quantity,e.currency))+" ",1),((U=e.lineItem.variation)==null?void 0:U.recurrence.type)==="Recurring"?(h(),j(ze,{key:1},{default:x(()=>[S(" / "+N(v(ta)(e.lineItem.variation.recurrence.cycleLength)),1)]),_:1})):q("",!0)]}),_:1}),(l.value?((P=v(r))==null?void 0:P.cart.leadMagnets.quantity)==="selectable":((I=v(r))==null?void 0:I.cart.quantity)==="selectable")?(h(),j(a0,{key:0,"model-value":e.lineItem.quantity,"onUpdate:modelValue":c[0]||(c[0]=U=>v(s).setQuantity(e.lineItem,U))},null,8,["model-value"])):(h(),j(Oe,{key:1,label:"Remove",variant:"subtle-danger",size:"small",handler:()=>v(s).setQuantity(e.lineItem,0)},null,8,["handler"]))])):q("",!0)]}),_:2},[(d=v(r))!=null&&d.cart.bundles.showProducts?{name:"addon",fn:x(()=>{var f;return[$("div",oO,[e.lineItem.bundle?(h(),k("button",{key:0,onClick:c[1]||(c[1]=m=>i.value=!i.value)},[y(ot,null,{default:x(()=>{var m,p,g;return[S(N((m=e.lineItem.bundle)==null?void 0:m.products.filter(b=>b.included).length)+" ",1),(p=e.lineItem.bundle)!=null&&p.products.some(b=>!b.included)?(h(),k(ee,{key:0},[S(" of "+N((g=e.lineItem.bundle)==null?void 0:g.products.length),1)],64)):q("",!0),c[2]||(c[2]=S(" products ",-1))]}),_:1}),y(ke,null,{default:x(()=>[S(N(i.value?"Hide":"Show")+" ",1),(h(),k("svg",{"data-open":i.value||void 0,fill:"none",viewBox:"0 0 24 24","stroke-width":"1.5",stroke:"currentColor"},[...c[3]||(c[3]=[$("path",{"stroke-linecap":"round","stroke-linejoin":"round",d:"m19.5 8.25-7.5 7.5-7.5-7.5"},null,-1)])],8,sO))]),_:1})])):q("",!0)]),$("div",{ref_key:"productListRef",ref:a,class:"moonbase:bundle-cart-item-product-list",style:{height:"0px"},"data-open":i.value||void 0},[(h(!0),k(ee,null,ct(((f=e.lineItem.bundle)==null?void 0:f.products)||[],m=>(h(),k("div",{key:m.id,class:"moonbase:bundle-cart-item-product-list-item"},[y(Mt,{url:m==null?void 0:m.iconUrl,size:48},null,8,["url"]),$("div",aO,[y(ot,{"data-included":m.included||void 0},{default:x(()=>[m.included?(h(),k("svg",lO,[...c[4]||(c[4]=[$("path",{"stroke-linecap":"round","stroke-linejoin":"round",d:"m4.5 12.75 6 6 9-13.5"},null,-1)])])):q("",!0),S(" "+N(m==null?void 0:m.name),1)]),_:2},1032,["data-included"]),m.included?m!=null&&m.tagline?(h(),j(ke,{key:1},{default:x(()=>[S(N(m.tagline),1)]),_:2},1024)):q("",!0):(h(),j(ke,{key:0},{default:x(()=>[...c[5]||(c[5]=[S(" You already own this ",-1)])]),_:1}))])]))),128))],8,iO)]}),key:"0"}:void 0]),1024)}}}),cO=["data-corners"],dO=["aria-valuenow","aria-valuetext"],fO={"aria-live":"polite"},mO=ae({__name:"CartMinimumProgress",props:{shortfall:{}},setup(e){const t=e,n=oe(qe),r=Fn(),o=F(()=>`${Math.round(t.shortfall.fraction*1e3)/10}%`),s=F(()=>{const{current:a,remaining:l,currency:u}=t.shortfall;return a>0?`Spend ${r(l,u)} more to check out`:`Spend ${r(l,u)} to check out`}),i=F(()=>{const{current:a,target:l,currency:u}=t.shortfall;return`${r(a,u)} of ${r(l,u)}`});return(a,l)=>{var u;return h(),k("div",{class:"moonbase:cart-minimum","data-corners":(u=v(n))==null?void 0:u.theme.corners},[$("div",{class:"moonbase:cart-minimum-bar",role:"progressbar","aria-label":"Minimum order","aria-valuemin":0,"aria-valuemax":100,"aria-valuenow":Math.round(e.shortfall.fraction*100),"aria-valuetext":i.value},[$("div",{style:Gr({width:o.value})},null,4)],8,dO),$("span",fO,N(s.value),1)],8,cO)}}});function hO(e,t){return h(),k("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 24 24",fill:"currentColor","aria-hidden":"true","data-slot":"icon"},[$("path",{"fill-rule":"evenodd",d:"M8.603 3.799A4.49 4.49 0 0 1 12 2.25c1.357 0 2.573.6 3.397 1.549a4.49 4.49 0 0 1 3.498 1.307 4.491 4.491 0 0 1 1.307 3.497A4.49 4.49 0 0 1 21.75 12a4.49 4.49 0 0 1-1.549 3.397 4.491 4.491 0 0 1-1.307 3.497 4.491 4.491 0 0 1-3.497 1.307A4.49 4.49 0 0 1 12 21.75a4.49 4.49 0 0 1-3.397-1.549 4.49 4.49 0 0 1-3.498-1.306 4.491 4.491 0 0 1-1.307-3.498A4.49 4.49 0 0 1 2.25 12c0-1.357.6-2.573 1.549-3.397a4.49 4.49 0 0 1 1.307-3.497 4.49 4.49 0 0 1 3.497-1.307Zm7.007 6.387a.75.75 0 1 0-1.22-.872l-3.236 4.53L9.53 12.22a.75.75 0 0 0-1.06 1.06l2.25 2.25a.75.75 0 0 0 1.14-.094l3.75-5.25Z","clip-rule":"evenodd"})])}function Ql(e,t){return h(),k("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 24 24",fill:"currentColor","aria-hidden":"true","data-slot":"icon"},[$("path",{"fill-rule":"evenodd",d:"M2.25 12c0-5.385 4.365-9.75 9.75-9.75s9.75 4.365 9.75 9.75-4.365 9.75-9.75 9.75S2.25 17.385 2.25 12Zm13.36-1.814a.75.75 0 1 0-1.22-.872l-3.236 4.53L9.53 12.22a.75.75 0 0 0-1.06 1.06l2.25 2.25a.75.75 0 0 0 1.14-.094l3.75-5.25Z","clip-rule":"evenodd"})])}function pO(e,t){return h(),k("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 24 24",fill:"currentColor","aria-hidden":"true","data-slot":"icon"},[$("path",{"fill-rule":"evenodd",d:"M9.401 3.003c1.155-2 4.043-2 5.197 0l7.355 12.748c1.154 2-.29 4.5-2.599 4.5H4.645c-2.309 0-3.752-2.5-2.598-4.5L9.4 3.003ZM12 8.25a.75.75 0 0 1 .75.75v3.75a.75.75 0 0 1-1.5 0V9a.75.75 0 0 1 .75-.75Zm0 8.25a.75.75 0 1 0 0-1.5.75.75 0 0 0 0 1.5Z","clip-rule":"evenodd"})])}const vO=["data-corners","data-background","aria-label","aria-valuenow","aria-valuetext"],Dd=ae({__name:"OfferProgressBar",props:{fraction:{},label:{},valueText:{}},setup(e){const t=e,n=oe(qe),r=F(()=>`${Math.round(t.fraction*1e3)/10}%`);return(o,s)=>{var i,a;return h(),k("div",{class:"moonbase:offer-progress-bar","data-corners":(i=v(n))==null?void 0:i.theme.corners,"data-background":(a=v(n))==null?void 0:a.theme.colors.background,role:"progressbar","aria-label":e.label,"aria-valuemin":0,"aria-valuemax":100,"aria-valuenow":Math.round(e.fraction*100),"aria-valuetext":e.valueText},[$("div",{style:Gr({width:r.value})},null,4)],8,vO)}}}),gO=["data-background"],bO={class:"moonbase:cart-offer-progress-body"},yO={class:"moonbase:cart-offer-progress-heading"},wO=ae({__name:"CartOfferProgress",props:{cartOffer:{}},setup(e){const t=e,n=oe(qe),r=Fn();function o(p){const g=p.discount;return g.type==="PercentageOffDiscount"?`${Number((g.percentage*100).toFixed(2))}%`:g.name}const s=F(()=>{const{applied:p,next:g}=t.cartOffer;return p?g?"advancing":"applied":"in-progress"}),i=F(()=>(t.cartOffer.applied??t.cartOffer.next).offer),a=F(()=>i.value.discount.name),l=F(()=>i.value.discount.description),u=F(()=>i.value.targets.map(p=>p.item).slice(0,2)),c=F(()=>{var p;return((p=t.cartOffer.next)==null?void 0:p.progress.fraction)??1}),d=F(()=>{const{next:p,currency:g}=t.cartOffer;return p?p.progress.unit==="Money"?`${r(p.progress.current,g)} / ${r(p.progress.target,g)}`:`${p.progress.current} / ${p.progress.target} items`:`${o(t.cartOffer.applied.offer)} off`});function f(p){return p.unit==="Money"?`Spend ${r(p.remaining,t.cartOffer.currency)} more`:`Add ${p.remaining} more ${p.remaining===1?"item":"items"}`}const m=F(()=>{const{applied:p,next:g,currency:b}=t.cartOffer;if(p&&g)return`${o(p.offer)} off applied. ${f(g.progress)} for ${o(g.offer)} off`;if(p)return p.saving>0?`${o(p.offer)} off applied, saving ${r(p.saving,b)}`:`${o(p.offer)} off applied to your order`;const O=g.offer.scope==="Cart"?`${o(g.offer)} off your order`:"this offer";return`${f(g.progress)} to get ${O}`});return(p,g)=>(h(),j(rn,{class:"moonbase:cart-offer-progress","data-state":s.value},{default:x(()=>{var b;return[u.value.length>0?(h(),k("div",{key:0,class:"moonbase:cart-offer-progress-icons","data-background":(b=v(n))==null?void 0:b.theme.colors.background},[(h(!0),k(ee,null,ct(u.value,O=>(h(),j(Mt,{key:`${O.type}/${O.id}`,url:O.iconUrl,size:40},null,8,["url"]))),128))],8,gO)):q("",!0),$("div",bO,[$("div",yO,[y(ot,{class:"moonbase:cart-offer-progress-name"},{default:x(()=>[e.cartOffer.applied?(h(),j(v(Ql),{key:0,class:"moonbase:success-icon"})):q("",!0),S(" "+N(a.value),1)]),_:1}),y(St,{class:"moonbase:cart-offer-progress-value"},{default:x(()=>[S(N(d.value),1)]),_:1})]),l.value?(h(),j(St,{key:0,class:"moonbase:cart-offer-progress-description"},{default:x(()=>[S(N(l.value),1)]),_:1})):q("",!0),y(Dd,{fraction:c.value,label:a.value,"value-text":d.value},null,8,["fraction","label","value-text"]),y(St,{class:"moonbase:cart-offer-progress-message","aria-live":"polite"},{default:x(()=>[S(N(m.value),1)]),_:1})])]}),_:1},8,["data-state"]))}}),_O={class:"moonbase:cart-offer-target-list-item"},kO={class:"moonbase:cart-offer-target-list-item-content"},xO=["href"],EO={class:"moonbase:cart-offer-target-list-item-cta"},CO={key:0,class:"moonbase:discount"},AO=ae({__name:"OfferMultiTargetItem",props:{offer:{},target:{},variation:{}},setup(e){const t=e,n=oe(qe),r=Fn(),{addToCart:o,currency:s}=Un(),i=F(()=>t.variation.originalPrice),a=F(()=>Eu.subtract(t.variation.price,ms.apply(t.offer.discount,t.variation.price))),l=F(()=>!Zc(i.value,a.value)),u=F(()=>t.variation.name||t.target.tagline);return(c,d)=>(h(),k("div",_O,[y(Mt,{url:e.target.iconUrl,href:e.target.type==="Product"?e.target.website:void 0,size:48},null,8,["url","href"]),$("div",kO,[y(ot,null,{default:x(()=>[e.target.type==="Product"&&e.target.website?(h(),k("a",{key:0,href:e.target.website},N(e.target.name),9,xO)):(h(),k(ee,{key:1},[S(N(e.target.name),1)],64))]),_:1}),u.value?(h(),j(ke,{key:0},{default:x(()=>[S(N(u.value),1)]),_:1})):q("",!0)]),$("div",EO,[a.value?(h(),j(Bn,{key:0},{default:x(()=>[l.value&&i.value?(h(),k("span",CO,N(v(r)(i.value[v(s)],v(s))),1)):q("",!0),S(" "+N(v(r)(a.value[v(s)],v(s))),1)]),_:1})):q("",!0),y(Oe,{label:"Add to cart",variant:"secondary",size:"small",handler:()=>{var f;return v(o)(e.target,e.variation,e.offer,{bundleBehaviour:(f=v(n))==null?void 0:f.cart.bundles.onAdd})}},null,8,["handler"])])]))}}),OO={class:"moonbase:cart-offer--multi-target-icons"},SO={class:"moonbase:cart-offer--multi-target-content"},PO=["data-open"],d0=ae({__name:"OfferMultiTargetUpsell",props:{offer:{},entries:{},progress:{}},setup(e){const t=e,n=Fn(),{currency:r}=Un(),o=F(()=>{const c=t.progress;return c?c.unit==="Money"?`${n(c.current,r.value)} / ${n(c.target,r.value)}`:`${c.current} / ${c.target} items`:""}),s=F(()=>{const c=t.progress;return c?c.unit==="Money"?`Spend ${n(c.remaining,r.value)} more to unlock`:`Add ${c.remaining} more ${c.remaining===1?"item":"items"} to unlock`:""}),i=V(!1),a=V(null);We(i,c=>{a.value&&(a.value.style.height=c?`${a.value.scrollHeight}px`:"0px")});const l=F(()=>{const c=new Set;return t.entries.map(d=>d.target).filter(d=>{const f=`${d.type}/${d.id}`;return c.has(f)?!1:(c.add(f),!0)})}),u=F(()=>Math.min(96,Math.max(36,96/Math.max(1,l.value.length)*1.5)));return(c,d)=>(h(),j(rn,{class:"moonbase:cart-offer--multi-target"},xi({default:x(()=>[$("div",OO,[(h(!0),k(ee,null,ct(l.value,(f,m)=>(h(),j(Mt,{key:`${f.type}/${f.id}`,url:f.iconUrl,size:u.value,style:Gr({position:"absolute",top:`${m*(96-u.value)/Math.max(1,l.value.length-1)}px`,left:`${m*(96-u.value)/Math.max(1,l.value.length-1)}px`,zIndex:m})},null,8,["url","size","style"]))),128))]),$("div",SO,[y(ot,{class:"moonbase:cart-offer--multi-target-name"},{default:x(()=>[S(N(e.offer.discount.name),1)]),_:1}),e.offer.discount.description?(h(),j(ke,{key:0,class:"moonbase:cart-offer--multi-target-description"},{default:x(()=>[S(N(e.offer.discount.description),1)]),_:1})):q("",!0),e.progress?(h(),k(ee,{key:1},[y(Dd,{fraction:e.progress.fraction,label:e.offer.discount.name,"value-text":o.value},null,8,["fraction","label","value-text"]),y(ke,{class:"moonbase:cart-offer--multi-target-locked-message","aria-live":"polite"},{default:x(()=>[S(N(s.value),1)]),_:1})],64)):(h(),j(Oe,{key:2,label:"Select product",variant:i.value?"primary":"secondary",size:"small",handler:()=>i.value=!i.value},null,8,["variant","handler"]))])]),_:2},[e.progress?void 0:{name:"addon",fn:x(()=>[$("div",{ref_key:"targetListRef",ref:a,class:"moonbase:cart-offer-target-list",style:{height:"0px"},"data-open":i.value||void 0},[(h(!0),k(ee,null,ct(e.entries,f=>(h(),j(AO,{key:`${f.target.type}/${f.target.id}/${f.variation.id}`,target:f.target,variation:f.variation,offer:e.offer},null,8,["target","variation","offer"]))),128))],8,PO)]),key:"0"}]),1024))}}),NO={class:"moonbase:cart-offer-content"},IO=["href"],TO={key:0,class:"moonbase:cart-offer-cta"},$O={key:0,class:"moonbase:discount"},DO={class:"moonbase:cart-offer-bundle-summary"},MO=["data-open"],VO=["data-open"],LO={class:"moonbase:cart-offer-bundle-product-list-item-content"},RO={key:0,fill:"none",viewBox:"0 0 24 24","stroke-width":"1.5",stroke:"currentColor"},UO=["href"],f0=ae({__name:"OfferUpsell",props:{offer:{},target:{},variation:{},progress:{}},setup(e){const t=e,n=oe(qe),r=Fn(),{addToCart:o,currency:s}=Un(),i=V(!1),a=V(null);We(i,m=>{a.value&&(a.value.style.height=m?`${a.value.scrollHeight}px`:"0px")});const l=F(()=>t.variation.originalPrice),u=F(()=>Eu.subtract(t.variation.price,ms.apply(t.offer.discount,t.variation.price))),c=F(()=>!Zc(l.value,u.value)),d=F(()=>{const m=t.progress;return m?m.unit==="Money"?`${r(m.current,s.value)} / ${r(m.target,s.value)}`:`${m.current} / ${m.target} items`:""}),f=F(()=>{const m=t.progress;return m?m.unit==="Money"?`Spend ${r(m.remaining,s.value)} more to unlock`:`Add ${m.remaining} more ${m.remaining===1?"item":"items"} to unlock`:""});return(m,p)=>(h(),j(rn,{class:"moonbase:cart-offer"},xi({default:x(()=>[y(Mt,{url:e.target.iconUrl,href:e.target.type==="Product"?e.target.website:void 0,size:64},null,8,["url","href"]),$("div",NO,[y(ot,{class:"moonbase:cart-offer-name"},{default:x(()=>[e.target.type==="Product"&&e.target.website?(h(),k("a",{key:0,href:e.target.website},N(e.offer.discount.name),9,IO)):(h(),k(ee,{key:1},[S(N(e.offer.discount.name),1)],64))]),_:1}),e.offer.discount.description?(h(),j(ke,{key:0,class:"moonbase:cart-offer-description"},{default:x(()=>[S(N(e.offer.discount.description),1)]),_:1})):q("",!0),e.progress?(h(),k(ee,{key:1},[y(Dd,{fraction:e.progress.fraction,label:e.offer.discount.name,"value-text":d.value},null,8,["fraction","label","value-text"]),y(ke,{class:"moonbase:cart-offer-locked-message","aria-live":"polite"},{default:x(()=>[S(N(f.value),1)]),_:1})],64)):q("",!0)]),e.progress?q("",!0):(h(),k("div",TO,[u.value?(h(),j(Bn,{key:0},{default:x(()=>[c.value&&l.value?(h(),k("span",$O,N(v(r)(l.value[v(s)],v(s))),1)):q("",!0),S(" "+N(v(r)(u.value[v(s)],v(s))),1)]),_:1})):q("",!0),y(Oe,{label:"Add to cart",variant:"secondary",size:"small",handler:()=>{var g;return v(o)(e.target,e.variation,e.offer,{bundleBehaviour:(g=v(n))==null?void 0:g.cart.bundles.onAdd})}},null,8,["handler"])]))]),_:2},[e.target.type==="Bundle"?{name:"addon",fn:x(()=>{var g;return[$("div",DO,[e.target?(h(),k("button",{key:0,onClick:p[0]||(p[0]=b=>i.value=!i.value)},[y(ot,null,{default:x(()=>{var b,O,P;return[S(" Contains "+N((b=e.target)==null?void 0:b.products.filter(I=>I.included).length)+" ",1),(O=e.target)!=null&&O.products.some(I=>!I.included)?(h(),k(ee,{key:0},[S(" of "+N((P=e.target)==null?void 0:P.products.length),1)],64)):q("",!0),p[1]||(p[1]=S(" products ",-1))]}),_:1}),y(ke,null,{default:x(()=>[S(N(i.value?"Hide":"Show")+" ",1),(h(),k("svg",{"data-open":i.value||void 0,fill:"none",viewBox:"0 0 24 24","stroke-width":"1.5",stroke:"currentColor"},[...p[2]||(p[2]=[$("path",{"stroke-linecap":"round","stroke-linejoin":"round",d:"m19.5 8.25-7.5 7.5-7.5-7.5"},null,-1)])],8,MO))]),_:1})])):q("",!0)]),$("div",{ref_key:"productListRef",ref:a,class:"moonbase:cart-offer-bundle-product-list",style:{height:"0px"},"data-open":i.value||void 0},[(h(!0),k(ee,null,ct(((g=e.target)==null?void 0:g.products)||[],b=>(h(),k("div",{key:b.id,class:"moonbase:cart-offer-bundle-product-list-item"},[y(Mt,{url:b.iconUrl,href:b.website,size:48},null,8,["url","href"]),$("div",LO,[y(ot,{"data-included":b.included||void 0},{default:x(()=>[b.included?(h(),k("svg",RO,[...p[3]||(p[3]=[$("path",{"stroke-linecap":"round","stroke-linejoin":"round",d:"m4.5 12.75 6 6 9-13.5"},null,-1)])])):q("",!0),b.website?(h(),k("a",{key:1,href:b.website},N(b.name),9,UO)):(h(),k(ee,{key:2},[S(N(b.name),1)],64))]),_:2},1032,["data-included"]),b.included?b.tagline?(h(),j(ke,{key:1},{default:x(()=>[S(N(b.tagline),1)]),_:2},1024)):q("",!0):(h(),j(ke,{key:0},{default:x(()=>[...p[4]||(p[4]=[S(" You already own this ",-1)])]),_:1}))])]))),128))],8,VO)]}),key:"0"}:void 0]),1024))}}),jO={class:"moonbase:product-cart-item-content"},BO={class:"moonbase:product-cart-item-total"},FO={key:0,class:"moonbase:discount"},qO=ae({__name:"ProductCartItem",props:{lineItem:{},currency:{}},setup(e){const t=e,n=Ui(t.lineItem.productId),r=oe(qe),o=Fn(),s=Un(),i=F(()=>{var u;return((u=t.lineItem.price)==null?void 0:u[s.currency.value])===0});function a(u){if(!u.variation)throw new Error("No variation found");return u0(u.variation,u.quantity,t.currency)??0}function l(u){return c0(u.variation,u.quantity,t.currency)}return(u,c)=>(h(),j(rn,{class:"moonbase:product-cart-item"},{default:x(()=>{var d,f,m,p,g,b,O,P;return[y(Mt,{url:(d=e.lineItem.product)==null?void 0:d.iconUrl,size:72},null,8,["url"]),$("div",jO,[y(ot,null,{default:x(()=>{var I;return[S(N((I=e.lineItem.product)==null?void 0:I.name),1)]}),_:1}),(f=e.lineItem.product)!=null&&f.tagline?(h(),j(ke,{key:0,class:"moonbase:product-cart-item-tagline","data-truncate":e.lineItem.variation&&e.lineItem.variation.id!==((p=(m=v(n))==null?void 0:m.defaultVariation)==null?void 0:p.id)||void 0},{default:x(()=>{var I;return[S(N((I=e.lineItem.product)==null?void 0:I.tagline),1)]}),_:1},8,["data-truncate"])):q("",!0),e.lineItem.variation&&e.lineItem.variation.id!==((b=(g=v(n))==null?void 0:g.defaultVariation)==null?void 0:b.id)?(h(),j(ke,{key:1,class:"moonbase:product-cart-item-variation"},{default:x(()=>[S(N(e.lineItem.variation.name),1)]),_:1})):q("",!0)]),$("div",BO,[e.lineItem.variation?(h(),j(Bn,{key:0},{default:x(()=>{var I;return[e.lineItem.variation.hasDiscount||l(e.lineItem)?(h(),k("span",FO,N(v(o)(e.lineItem.variation.originalPrice[e.currency]*e.lineItem.quantity,e.currency)),1)):q("",!0),S(" "+N(v(o)(a(e.lineItem)*e.lineItem.quantity,e.currency))+" ",1),((I=e.lineItem.variation)==null?void 0:I.recurrence.type)==="Recurring"?(h(),j(ze,{key:1},{default:x(()=>[S(" / "+N(v(ta)(e.lineItem.variation.recurrence.cycleLength)),1)]),_:1})):q("",!0)]}),_:1})):q("",!0),(i.value?((O=v(r))==null?void 0:O.cart.leadMagnets.quantity)==="selectable":((P=v(r))==null?void 0:P.cart.quantity)==="selectable")?(h(),j(a0,{key:1,"model-value":e.lineItem.quantity,"onUpdate:modelValue":c[0]||(c[0]=I=>v(s).setQuantity(e.lineItem,I))},null,8,["model-value"])):(h(),j(Oe,{key:2,label:"Remove",variant:"subtle-danger",size:"small",handler:()=>v(s).setQuantity(e.lineItem,0)},null,8,["handler"]))])]}),_:1}))}}),HO={class:"moonbase:cart"},zO=["data-background"],WO={key:0,class:"moonbase:grow"},ZO={key:1},GO={key:2},YO={key:3},KO=["data-corners"],QO={class:"moonbase:cart-total"},XO={"data-row":"subtotal"},JO={"data-row":"saving"},e3={"data-row":"saving"},t3={"data-error":""},n3=ae({__name:"Cart",setup(e){const t=Kl(),{items:n,total:r,breakdown:o,currency:s,checkout:i}=Un(),a=oe(qe),l=Fn(),u=ok(),c=ik(),d=sk(),f=F(()=>u.value.filter(B=>B.scope!=="Cart")),m=F(()=>f.value.find(B=>B.targets.some(z=>!z.item.owned))||f.value[0]||null),p=F(()=>m.value?jt.relevantTargetVariations(m.value,n.value):[]),g=F(()=>!!c.value&&!!(a!=null&&a.value.cart.offers.cartWide.showProgress)),b=F(()=>{if(m.value&&p.value.length>0)return null;for(const B of d.value){const z=jt.relevantTargetVariations(B.offer,n.value);if(z.length>0)return{...B,entries:z}}return null}),O=F(()=>n.value.length>0&&o.value.discount>0),P=F(()=>i0((a==null?void 0:a.value.cart.minimumTotal)??{},r.value,n.value.length)),I=V(null);async function U(){I.value=null;try{const B=await i({redirect:(a==null?void 0:a.value.checkout.redirect)??"auto",groupIds:a==null?void 0:a.value.groups.checkout});if(B!=null&&B.redirected)return n0;if(!(B!=null&&B.completed))throw new ts}catch(B){if(I.value=B.message,!(B instanceof ts))if(B instanceof Kt)t.reportProblem("error",{type:B.name,title:B.title,detail:B.detail,status:B.status,errors:B.errors?Object.fromEntries(Object.entries(B.errors).map(([z,L])=>[z,[L]])):void 0,instance:"Cart.vue:startCheckout"});else{const z=B;t.reportProblem("error",{type:z.name,title:z.message,instance:"Cart.vue:startCheckout"})}throw B}}return(B,z)=>{var L,T,A,E,w;return h(),k("div",HO,[v(n).length>0?(h(),k("ul",{key:0,role:"list",class:"moonbase:cart-items","data-background":(L=v(a))==null?void 0:L.theme.colors.background},[(h(!0),k(ee,null,ct(v(n),_=>(h(),k("li",{key:_.id},[_.type==="Product"?(h(),j(qO,{key:0,"line-item":_,currency:v(s)},null,8,["line-item","currency"])):_.type==="Bundle"?(h(),j(uO,{key:1,"line-item":_,currency:v(s)},null,8,["line-item","currency"])):q("",!0)]))),128)),g.value||b.value||m.value&&p.value.length>0?(h(),k("li",WO)):q("",!0),g.value?(h(),k("li",ZO,[y(wO,{"cart-offer":v(c)},null,8,["cart-offer"])])):q("",!0),b.value?(h(),k("li",GO,[(T=v(a))!=null&&T.cart.offers.label?(h(),j(ot,{key:0},{default:x(()=>{var _;return[S(N((_=v(a))==null?void 0:_.cart.offers.label),1)]}),_:1})):q("",!0),b.value.entries.length>1?(h(),j(d0,{key:1,offer:b.value.offer,entries:b.value.entries,progress:b.value.progress},null,8,["offer","entries","progress"])):(h(),j(f0,{key:2,offer:b.value.offer,target:b.value.entries[0].target,variation:b.value.entries[0].variation,progress:b.value.progress},null,8,["offer","target","variation","progress"]))])):q("",!0),m.value&&p.value.length>0?(h(),k("li",YO,[(A=v(a))!=null&&A.cart.offers.label?(h(),j(ot,{key:0},{default:x(()=>{var _;return[S(N((_=v(a))==null?void 0:_.cart.offers.label),1)]}),_:1})):q("",!0),p.value.length>1?(h(),j(d0,{key:1,offer:m.value,entries:p.value},null,8,["offer","entries"])):(h(),j(f0,{key:2,offer:m.value,target:p.value[0].target,variation:p.value[0].variation},null,8,["offer","target","variation"]))])):q("",!0)],8,zO)):(h(),k("div",{key:1,class:"moonbase:cart-empty","data-corners":(E=v(a))==null?void 0:E.theme.corners},[y(v(e2)),y(ot,null,{default:x(()=>[...z[0]||(z[0]=[S(" Your cart is empty ",-1)])]),_:1})],8,KO)),$("div",QO,[O.value?(h(),k(ee,{key:0},[z[1]||(z[1]=$("label",{"data-row":"subtotal"}," Subtotal ",-1)),$("span",XO,N(v(l)(v(o).original,v(o).currency)),1),$("label",JO,N((w=v(a))==null?void 0:w.cart.offers.cartWide.savingLabel),1),$("span",e3," -"+N(v(l)(v(o).discount,v(o).currency)),1)],64)):q("",!0),z[2]||(z[2]=$("label",null," Total ",-1)),$("span",null,N(v(l)(v(r).amount,v(r).currency)),1),z[3]||(z[3]=$("p",null," Sales tax to be calculated at checkout ",-1)),$("p",t3,N(I.value),1)]),P.value?(h(),j(mO,{key:2,shortfall:P.value},null,8,["shortfall"])):(h(),j(Oe,{key:3,handler:U,disabled:v(n).length===0,label:"Checkout",error:I.value?"Error":"Cancelled",variant:"primary"},null,8,["disabled","error"]))])}}}),r3={class:"moonbase:confirm-communication-preferences"},o3={key:0,class:"moonbase:loader"},s3={key:1,class:"moonbase:error","data-visible":""},i3=ae({__name:"ConfirmCommunicationPreferences",setup(e){const t=ge(),{confirm:n}=Mc(),r=V(!0),o=V(null);return Fe(async()=>{try{const s=t.getParameter("email"),i=t.getParameter("token");if(!s||!i)throw new Error("This link is missing required information.");await n(s,i)}catch(s){o.value=s.message||"This link has expired or has already been used."}r.value=!1}),(s,i)=>(h(),k("div",r3,[r.value?(h(),k("div",o3,[y(It)])):o.value?(h(),k("div",s3,N(o.value),1)):(h(),k(ee,{key:2},[y(Ye,null,{default:x(()=>[...i[0]||(i[0]=[S(" You're subscribed! ",-1)])]),_:1}),y(ze,null,{default:x(()=>[...i[1]||(i[1]=[S(" Thanks for confirming. You'll start receiving updates by email. ",-1)])]),_:1})],64))]))}}),a3={class:"moonbase:manage-communication-preferences"},l3={key:0,class:"moonbase:loader"},u3={key:1,class:"moonbase:error","data-visible":""},c3={key:2,class:"moonbase:error"},d3=ae({__name:"ManageCommunicationPreferences",setup(e){const t=ge(),{get:n,update:r}=Mc(),o=oe(qe),s=V(0),i=V(null),a=Po({newsletter:!1,productUpdates:!1}),l=V(null),u=V(null),c=F(()=>!a.newsletter&&!a.productUpdates);Fe(async()=>{if(l.value=t.getParameter("email"),u.value=t.getParameter("token"),!l.value||!u.value){i.value="This link is missing required information. Please use the link from a recent email.",s.value=3;return}try{const f=await n(l.value,u.value);a.newsletter=f.newsletter,a.productUpdates=f.productUpdates,s.value=1}catch(f){i.value=f.message||"This link has expired.",s.value=3}});async function d(){if(!(!l.value||!u.value))try{const f=await r(l.value,u.value,{newsletter:a.newsletter,productUpdates:a.productUpdates});a.newsletter=f.newsletter,a.productUpdates=f.productUpdates,s.value=2}catch(f){throw i.value=f.message,f}}return(f,m)=>(h(),k("div",a3,[s.value===0?(h(),k("div",l3,[y(It)])):s.value===3?(h(),k("div",u3,N(i.value),1)):s.value===1?(h(),k(ee,{key:2},[y(ze,null,{default:x(()=>[...m[2]||(m[2]=[S(" Choose which emails you want to receive. Save to apply your changes. ",-1)])]),_:1}),y(hn,{handler:d},{default:x(()=>{var p,g;return[(p=v(o))!=null&&p.communicationPreferences.show.newsletter?(h(),j(lo,{key:0,modelValue:a.newsletter,"onUpdate:modelValue":m[0]||(m[0]=b=>a.newsletter=b),label:"Newsletter",name:"newsletter",hint:"News, articles, and product launches"},null,8,["modelValue"])):q("",!0),(g=v(o))!=null&&g.communicationPreferences.show.productUpdates?(h(),j(lo,{key:1,modelValue:a.productUpdates,"onUpdate:modelValue":m[1]||(m[1]=b=>a.productUpdates=b),label:"Product updates",name:"product-updates",hint:"Releases, fixes, and important changes for products you own"},null,8,["modelValue"])):q("",!0),y(pn,{label:"Save preferences",error:"Error",success:"Saved"}),i.value?(h(),k("p",c3,N(i.value),1)):q("",!0)]}),_:1})],64)):s.value===2?(h(),k(ee,{key:3},[y(Ye,null,{default:x(()=>[S(N(c.value?"You've been unsubscribed":"Preferences saved"),1)]),_:1}),y(ze,null,{default:x(()=>[c.value?(h(),k(ee,{key:0},[S(" You won't receive newsletter or product update emails from us anymore. ")],64)):(h(),k(ee,{key:1},[S(" We've updated your email preferences. ")],64))]),_:1})],64)):q("",!0)]))}}),f3={class:"moonbase:subscribe"},m3=["href"],h3={key:0,class:"moonbase:error"},p3={key:2,class:"moonbase:error"},v3=ae({__name:"Subscribe",setup(e){var T,A;const t=ge(),{user:n,update:r}=Ze(),{subscribe:o}=ug("drawer"),{join:s}=Kp(),i=oe(ou),a=oe(qe),l=F(()=>dd(a==null?void 0:a.value).newsletter),u=F(()=>dd(a==null?void 0:a.value).productUpdates),c=F(()=>{var E;return((E=t.getParameter("groups"))==null?void 0:E.split(","))??[]}),d=F(()=>ag(a==null?void 0:a.value,c.value)),f=F(()=>l.value&&u.value?"newsletter and product update emails":l.value?"newsletter emails":u.value?"product update emails":"emails from us");function m(){switch(t.getParameter("status")){case"subscribed":return 1;case"confirmation_sent":return 2;case"error":return 0}return n.value?3:0}const p=V(m()),g=V(t.getParameter("name")??""),b=V(t.getParameter("email")??""),O=V(t.getParameter("error")),P=V(t.getParameter("email")??""),I=Po({newsletterOptIn:((T=n.value)==null?void 0:T.communicationPreferences.newsletterOptIn)??!1,productUpdatesOptIn:((A=n.value)==null?void 0:A.communicationPreferences.productUpdatesOptIn)??!1}),U=V(null);async function B(){O.value=null;try{const E=b.value.trim(),w=await o({email:E,name:g.value,groupIds:c.value});P.value=E,p.value=w.status==="subscribed"?1:2}catch(E){throw O.value=lg(E),E}}async function z(){const E=d.value??[];(await Promise.allSettled(E.map(_=>s(_)))).forEach((_,D)=>{_.status==="rejected"&&console.warn(`Moonbase: could not join group '${E[D]}'`,_.reason)})}async function L(){U.value=null;try{if(!n.value)throw new Error("Not signed in");await r(n.value.name,n.value.email,void 0,{newsletterOptIn:I.newsletterOptIn,productUpdatesOptIn:I.productUpdatesOptIn}),await z(),p.value=4}catch(E){throw U.value=E.message,E}}return(E,w)=>(h(),k("div",f3,[p.value===0?(h(),k(ee,{key:0},[y(ze,null,{default:x(()=>[...w[4]||(w[4]=[S(" Get news, articles, and product launches in your inbox. ",-1)])]),_:1}),y(hn,{handler:B},{default:x(()=>[y(Tt,{modelValue:g.value,"onUpdate:modelValue":w[0]||(w[0]=_=>g.value=_),label:"Full name",name:"subscribe-name",type:"text",placeholder:"Your name (optional)",autocomplete:"name",maxlength:"200"},null,8,["modelValue"]),y(Tt,{modelValue:b.value,"onUpdate:modelValue":w[1]||(w[1]=_=>b.value=_),label:"Email address",name:"subscribe-email",type:"email",placeholder:"you@example.com",autocomplete:"email",required:""},null,8,["modelValue"]),y(ke,null,{default:x(()=>[S(" By subscribing you agree to receive "+N(f.value)+". You can unsubscribe at any time using the link in the footer of any email we send. ",1),v(i)?(h(),k(ee,{key:0},[w[5]||(w[5]=S(" See our ",-1)),$("a",{href:`${v(i)}/privacy-policy`,target:"_blank",rel:"noopener"},"privacy policy",8,m3),w[6]||(w[6]=S(". ",-1))],64)):q("",!0)]),_:1}),y(pn,{success:"Subscribed",label:"Subscribe",error:"Error"}),O.value?(h(),k("p",h3,N(O.value),1)):q("",!0)]),_:1})],64)):p.value===1?(h(),k(ee,{key:1},[y(Ye,null,{default:x(()=>[...w[7]||(w[7]=[S(" You're subscribed! ",-1)])]),_:1}),y(ze,null,{default:x(()=>[S(" Thanks"+N(g.value?`, ${g.value}`:"")+". We'll be in touch at ",1),$("strong",null,N(P.value),1),w[8]||(w[8]=S(". ",-1))]),_:1})],64)):p.value===2?(h(),k(ee,{key:2},[y(Ye,null,{default:x(()=>[...w[9]||(w[9]=[S(" Check your email to finish ",-1)])]),_:1}),y(ze,null,{default:x(()=>[w[10]||(w[10]=S(" We sent a confirmation link to ",-1)),$("strong",null,N(P.value),1),w[11]||(w[11]=S(". Click it to finish subscribing. ",-1))]),_:1})],64)):p.value===3?(h(),k(ee,{key:3},[y(ze,null,{default:x(()=>[...w[12]||(w[12]=[S(" Choose which emails you want to receive. ",-1)])]),_:1}),y(hn,{handler:L},{default:x(()=>[l.value?(h(),j(lo,{key:0,modelValue:I.newsletterOptIn,"onUpdate:modelValue":w[2]||(w[2]=_=>I.newsletterOptIn=_),label:"Newsletter",name:"newsletter-opt-in",hint:"News, articles, and product launches"},null,8,["modelValue"])):q("",!0),u.value?(h(),j(lo,{key:1,modelValue:I.productUpdatesOptIn,"onUpdate:modelValue":w[3]||(w[3]=_=>I.productUpdatesOptIn=_),label:"Product updates",name:"product-updates-opt-in",hint:"Releases, fixes, and important changes for products you own"},null,8,["modelValue"])):q("",!0),y(pn,{success:"Saved",label:"Save preferences",error:"Error"}),U.value?(h(),k("p",p3,N(U.value),1)):q("",!0)]),_:1})],64)):p.value===4?(h(),k(ee,{key:4},[y(Ye,null,{default:x(()=>[...w[13]||(w[13]=[S(" Preferences saved ",-1)])]),_:1}),y(ze,null,{default:x(()=>[...w[14]||(w[14]=[S(" We've updated your email preferences. ",-1)])]),_:1})],64)):q("",!0)]))}}),g3={class:"moonbase:communication-preferences"},b3={key:0,class:"moonbase:loader"},y3=ae({__name:"CommunicationPreferences",setup(e){const t=ge(),{loaded:n}=Ze();return(r,o)=>(h(),k("div",g3,[y(As,{name:v(t).direction===v(Nl).Forward?"moonbase:slide-left":"moonbase:slide-right",mode:"out-in"},{default:x(()=>[v(n)?v(t).intent===v(W).Subscribe?(h(),j(v3,{key:JSON.stringify(v(t).parameters)})):v(t).intent===v(W).ConfirmCommunicationPreferences?(h(),j(i3,{key:2})):v(t).intent===v(W).ManageCommunicationPreferences?(h(),j(d3,{key:3})):q("",!0):(h(),k("div",b3,[y(It)]))]),_:1},8,["name"])]))}}),w3={class:"moonbase:connected-account-card"},_3={class:"moonbase:account-provider"},k3=["src","alt"],x3={key:0,class:"moonbase:pending-fulfillments"},E3=ae({__name:"ConnectedAccountCard",props:{account:{}},setup(e){const t=e,n=ge(),{disconnectAccount:r}=Ze(),o=V(!1),s=V(null);function i(d){switch(d){case"iLok":return"iLok"}}function a(d){switch(d){case"iLok":return Gl}}function l(d){switch(d){case"iLok":return"Link your iLok account to streamline license delivery and activation."}}async function u(){s.value=null,o.value=!0;try{await r(t.account.provider)}catch(d){s.value=d}finally{o.value=!1}}function c(){n.show(G.Customer,W.ConnectAccount,{provider_id:t.account.provider})}return(d,f)=>(h(),k("li",w3,[$("div",_3,[a(e.account.provider)?(h(),k("img",{key:0,src:a(e.account.provider),alt:i(e.account.provider)},null,8,k3)):q("",!0),$("div",null,[y(Ye,null,{default:x(()=>[S(N(i(e.account.provider)),1)]),_:1}),e.account.isConnected?(h(),k(ee,{key:0},[e.account.accountId?(h(),j(ke,{key:0},{default:x(()=>[S(" Account ID: "+N(e.account.accountId),1)]),_:1})):q("",!0)],64)):(h(),j(ke,{key:1},{default:x(()=>[S(N(l(e.account.provider)),1)]),_:1}))])]),e.account.pendingLicenseFulfillments?(h(),k("div",x3,[y(v(pO)),y(ke,null,{default:x(()=>[...f[0]||(f[0]=[S(" You have pending iLok licenses, connect your account to receive them. ",-1)])]),_:1})])):q("",!0),e.account.isConnected?(h(),j(Oe,{key:1,label:o.value?"Disconnecting...":"Disconnect",variant:"danger",handler:u,disabled:o.value},null,8,["label","disabled"])):q("",!0),s.value?(h(),j(Bn,{key:2,class:"moonbase:disconnect-error"},{default:x(()=>[S(N(s.value.message),1)]),_:1})):q("",!0),e.account.isConnected?q("",!0):(h(),j(Oe,{key:3,label:"Connect",variant:"secondary",handler:c}))]))}}),C3={class:"moonbase:account"},A3={key:2,class:"moonbase:error"},O3={key:3,class:"moonbase:notification"},S3={key:0,class:"moonbase:password-validation"},P3={key:1,class:"moonbase:error"},N3={key:0,class:"moonbase:connected-accounts"},I3=ae({__name:"Account",setup(e){var L,T,A;const t=ge(),{user:n,update:r,setPassword:o,signOut:s}=Ze(),i=oe(zn),a=oe(qe),l=V(((L=n.value)==null?void 0:L.name)??""),u=V(((T=n.value)==null?void 0:T.email)??""),c=V(((A=n.value)==null?void 0:A.communicationPreferences)??{newsletterOptIn:!1,productUpdatesOptIn:!1}),d=V(null),f=V(!1),m=V(""),p=V(""),g=V(!1),b=V(null),O=F(()=>{var E;return((E=n.value)==null?void 0:E.connectedAccounts)??[]}),P=F(()=>Yl[(a==null?void 0:a.value.auth.passwords)??"default"]),I=F(()=>P.value.some(E=>!E.test(p.value)));async function U(){d.value=null,f.value=!1;try{(await r(l.value,u.value,void 0,c.value)).needsEmailConfirmationToken&&(f.value=!0)}catch(E){throw d.value=E,E}}async function B(){b.value=null;try{await o(m.value,p.value),m.value="",p.value="",g.value=!1}catch(E){throw b.value=E,E}}async function z(){const E={...n.value};await s(),i==null||i(Ce.SignedOut,{user:E}),t.reset()}return(E,w)=>(h(),k("div",C3,[y(hn,{handler:U},{default:x(()=>{var _,D;return[y(Tt,{modelValue:l.value,"onUpdate:modelValue":w[0]||(w[0]=ne=>l.value=ne),label:"Full name",name:"name",autocomplete:"name",required:""},null,8,["modelValue"]),y(Tt,{modelValue:u.value,"onUpdate:modelValue":w[1]||(w[1]=ne=>u.value=ne),label:"Email address",name:"email",type:"email",autocomplete:"email",required:""},null,8,["modelValue"]),(_=v(a))!=null&&_.communicationPreferences.show.newsletter?(h(),j(lo,{key:0,modelValue:c.value.newsletterOptIn,"onUpdate:modelValue":w[2]||(w[2]=ne=>c.value.newsletterOptIn=ne),label:"Newsletter subscription",name:"newsletter-opt-in",hint:"Receive updates and offers by email"},null,8,["modelValue"])):q("",!0),(D=v(a))!=null&&D.communicationPreferences.show.productUpdates?(h(),j(lo,{key:1,modelValue:c.value.productUpdatesOptIn,"onUpdate:modelValue":w[3]||(w[3]=ne=>c.value.productUpdatesOptIn=ne),label:"Product updates",name:"product-updates-opt-in",hint:"Releases, fixes, and important changes for products you own"},null,8,["modelValue"])):q("",!0),y(pn,{label:"Update",error:"Error",success:"Updated"}),d.value?(h(),k("p",A3,N(d.value.message),1)):f.value?(h(),k("p",O3," You need to confirm your new email address, please check your inbox ")):q("",!0)]}),_:1}),y(hn,{handler:B,disabled:I.value},{default:x(()=>[y(Tt,{modelValue:m.value,"onUpdate:modelValue":w[4]||(w[4]=_=>m.value=_),label:"Current password",name:"old-password",type:"password",autocomplete:"current-password",required:"",revealable:""},null,8,["modelValue"]),y(Tt,{modelValue:p.value,"onUpdate:modelValue":w[5]||(w[5]=_=>p.value=_),label:"New password",name:"new-password",type:"password",autocomplete:"new-password",required:"",revealable:"",onBlur:w[6]||(w[6]=_=>g.value=!0)},null,8,["modelValue"]),g.value&&I.value?(h(),k("div",S3,[(h(!0),k(ee,null,ct(P.value.filter(_=>!_.test(p.value)),_=>(h(),j(ke,{key:_.title,"data-error":""},{default:x(()=>[S(N(_.title),1)]),_:2},1024))),128))])):q("",!0),y(pn,{label:"Change password",error:"Error",success:"Password changed"}),b.value?(h(),k("p",P3,N(b.value.message),1)):q("",!0)]),_:1},8,["disabled"]),y(Oe,{label:"Log out",success:"Logged out",error:"Error",variant:"subtle",handler:z}),O.value.length>0?(h(),k("section",N3,[y(ur,null,{default:x(()=>[...w[7]||(w[7]=[S("Connected accounts",-1)])]),_:1}),y(ze,null,{default:x(()=>[...w[8]||(w[8]=[S(" Connect your account with external providers to enable additional features. ",-1)])]),_:1}),$("ul",null,[(h(!0),k(ee,null,ct(O.value,_=>(h(),j(E3,{key:`${_.provider}-${_.accountId}`,account:_},null,8,["account"]))),128))])])):q("",!0)]))}}),T3={key:0,class:"moonbase:connect-account"},$3={class:"moonbase:provider-header"},D3=["src","alt"],M3={key:0,class:"moonbase:loader"},V3={key:0,class:"moonbase:connected-status"},L3={key:0,class:"moonbase:depositing"},R3={key:1,class:"moonbase:licenses-deposited"},U3=ae({__name:"ConnectAccount",setup(e){const t=ge(),{user:n,getConnectionUrl:r,refreshUser:o}=Ze(),s=V(!0),i=V(!1),a=V(!1),l=V(null),u=V(""),c=t.getParameter("provider_id"),d=F(()=>{var I;return((I=n.value)==null?void 0:I.connectedAccounts.some(U=>U.provider===c&&U.isConnected))??!1}),f=F(()=>{var I;return((I=n.value)==null?void 0:I.connectedAccounts.some(U=>c&&[ri.iLok].includes(c)&&U.pendingLicenseFulfillments))??!1});Fe(async()=>{if(c&&(await o(),s.value=!1,d.value&&f.value)){for(i.value=!0;f.value;)await Zt(2e3),await o();i.value=!1,a.value=!0}});function m(I){switch(I){case"iLok":return"iLok"}}function p(I){switch(I){case"iLok":return Gl}}function g(I){switch(I){case"iLok":return"Link your iLok account to streamline license delivery and activation for all your purchases."}}function b(I){switch(I){case"iLok":return!0;default:return!1}}async function O(){if(c){l.value=null;try{if(b(c)&&!u.value){l.value=new Error("Please enter your login ID");return}const I=window.location.href.split("?")[0],U=await r(c,I,u.value||void 0);window.location.href=U}catch(I){throw l.value=I,I}}}function P(){t.history.length>0?t.back():t.show(G.Customer,W.ViewAccount,void 0,!0)}return(I,U)=>v(c)?(h(),k("div",T3,[$("div",$3,[p(v(c))?(h(),k("img",{key:0,src:p(v(c)),alt:m(v(c)),class:"moonbase:provider-logo"},null,8,D3)):q("",!0),y(Ye,null,{default:x(()=>[S(N(m(v(c))),1)]),_:1})]),y(ke,{class:"moonbase:description"},{default:x(()=>[S(N(g(v(c))),1)]),_:1}),s.value?(h(),k("div",M3,[y(It)])):(h(),k(ee,{key:1},[d.value?(h(),k("div",V3,[y(ot,{class:"moonbase:success"},{default:x(()=>[S(" Successfully connected your "+N(m(v(c)))+" account. ",1)]),_:1}),i.value?(h(),k("div",L3,[y(It),y(ke,null,{default:x(()=>[...U[1]||(U[1]=[S("Depositing licenses to your account...",-1)])]),_:1})])):a.value?(h(),k("div",R3,[y(v(Ql)),y(ke,null,{default:x(()=>[...U[2]||(U[2]=[S("Licenses deposited to your account.",-1)])]),_:1})])):q("",!0),y(Oe,{label:"Back to account",handler:P})])):(h(),j(hn,{key:1,handler:O,class:"moonbase:connect-form"},{default:x(()=>[b(v(c))?(h(),j(Tt,{key:0,modelValue:u.value,"onUpdate:modelValue":U[0]||(U[0]=B=>u.value=B),label:`${m(v(c))} Login ID`,name:`${v(c)}-login-id`,placeholder:`Enter your ${m(v(c))} username`},null,8,["modelValue","label","name","placeholder"])):q("",!0),y(pn,{label:"Connect"}),y(ea,{type:"anchor",label:"Create account",variant:"subtle",href:"https://www.ilok.com/#!registration",icon:v(qc),target:"_blank",rel:"noopener noreferrer"},null,8,["icon"])]),_:1})),l.value?(h(),j(ot,{key:2,class:"moonbase:error"},{default:x(()=>[S(N(l.value.message),1)]),_:1})):q("",!0)],64))])):q("",!0)}}),m0=e=>e.includes("."),j3={class:"moonbase:products"},B3={key:0,class:"moonbase:loader"},F3={key:1,class:"moonbase:loader"},q3=["data-is-sub-product"],H3={key:0,class:"moonbase:products-item-sub-product-icon"},z3={class:"moonbase:products-item-content"},W3=ae({__name:"Products",setup(e){const t=ge(),{getProducts:n}=Zo(),r=V(null);return Fe(async()=>{let o=await n();for(r.value=o.items;o.hasMore&&o.next;)o=await n(o.next),r.value.push(...o.items)}),(o,s)=>(h(),k("div",j3,[r.value?r.value.length===0?(h(),k("div",F3," No products found ")):q("",!0):(h(),k("div",B3,[y(It),s[0]||(s[0]=S(" Loading products.. ",-1))])),(h(!0),k(ee,null,ct(r.value||[],i=>(h(),k("div",{key:i.id,class:"moonbase:products-item","data-is-sub-product":v(m0)(i.id)||void 0},[v(m0)(i.id)?(h(),k("div",H3,[...s[1]||(s[1]=[$("svg",{xmlns:"http://www.w3.org/2000/svg",fill:"none",viewBox:"0 0 24 24","stroke-width":"1.5",stroke:"currentColor"},[$("path",{"stroke-linecap":"round","stroke-linejoin":"round",d:"m16.49 12 3.75 3.75m0 0-3.75 3.75m3.75-3.75H3.74V4.499"})],-1)])])):q("",!0),y(Mt,{url:i.iconUrl,size:48},null,8,["url"]),$("div",z3,[y(ot,null,{default:x(()=>[S(N(i.name),1)]),_:2},1024),i.numberOfLicenses||i.subscriptionLicenses?(h(),j(ke,{key:0},{default:x(()=>[S(N((i.numberOfLicenses??0)+(i.subscriptionLicenses??0))+" licenses ",1)]),_:2},1024)):q("",!0)]),$("div",null,[y(Ls,{variant:"subtle",onClick:a=>v(t).show(v(G).Product,v(W).ViewProduct,{product_id:i.id})},{default:x(()=>[y(v(yv)),s[2]||(s[2]=$("span",{class:"moonbase:clickable"},null,-1))]),_:1},8,["onClick"])])],8,q3))),128))]))}}),Z3={class:"moonbase:bundle-redemption-item-content"},G3={class:"moonbase:bundle-redemption-item-summary"},Y3=["data-open"],K3=["data-open"],h0=ae({__name:"BundleRedemptionItem",props:{bundle:{},quantity:{}},setup(e){const t=V(!1),n=V(null);return We(t,r=>{n.value&&(n.value.style.height=r?`${n.value.scrollHeight}px`:"0px")}),(r,o)=>(h(),j(rn,{class:"moonbase:bundle-redemption-item"},{addon:x(()=>{var s;return[$("div",G3,[e.bundle?(h(),k("button",{key:0,onClick:o[0]||(o[0]=i=>t.value=!t.value)},[y(ot,null,{default:x(()=>{var i;return[S(N((i=e.bundle)==null?void 0:i.products.length)+" products ",1)]}),_:1}),y(ke,null,{default:x(()=>[S(N(t.value?"Hide":"Show")+" ",1),(h(),k("svg",{"data-open":t.value||void 0,fill:"none",viewBox:"0 0 24 24","stroke-width":"1.5",stroke:"currentColor"},[...o[1]||(o[1]=[$("path",{"stroke-linecap":"round","stroke-linejoin":"round",d:"m19.5 8.25-7.5 7.5-7.5-7.5"},null,-1)])],8,Y3))]),_:1})])):q("",!0)]),$("div",{ref_key:"productListRef",ref:n,class:"moonbase:bundle-redemption-item-product-list",style:{height:"0px"},"data-open":t.value||void 0},[(h(!0),k(ee,null,ct(((s=e.bundle)==null?void 0:s.products)||[],i=>(h(),k("div",{key:i.id},[y(Mt,{url:i.iconUrl,size:48},null,8,["url"]),$("div",null,[y(ot,null,{default:x(()=>[S(N(i.name),1)]),_:2},1024),i.tagline?(h(),j(ke,{key:0},{default:x(()=>[S(N(i.tagline),1)]),_:2},1024)):q("",!0)])]))),128))],8,K3)]}),default:x(()=>{var s;return[y(Mt,{url:e.bundle.iconUrl,size:72},null,8,["url"]),$("div",Z3,[y(ot,null,{default:x(()=>{var i;return[S(N((i=e.bundle)==null?void 0:i.name),1)]}),_:1}),(s=e.bundle)!=null&&s.tagline?(h(),j(ke,{key:0,class:"moonbase:bundle-redemption-item-tagline"},{default:x(()=>{var i;return[S(N((i=e.bundle)==null?void 0:i.tagline),1)]}),_:1})):q("",!0)])]}),_:1}))}}),Q3={class:"moonbase:product-redemption-item-content"},p0=ae({__name:"ProductRedemptionItem",props:{product:{},quantity:{}},setup(e){return(t,n)=>(h(),j(rn,{class:"moonbase:product-redemption-item"},{default:x(()=>{var r;return[y(Mt,{url:e.product.iconUrl,size:72},null,8,["url"]),$("div",Q3,[y(ot,null,{default:x(()=>{var o;return[S(N((o=e.product)==null?void 0:o.name),1)]}),_:1}),(r=e.product)!=null&&r.tagline?(h(),j(ke,{key:0,class:"moonbase:product-redemption-item-tagline"},{default:x(()=>{var o;return[S(N((o=e.product)==null?void 0:o.tagline),1)]}),_:1})):q("",!0)])]}),_:1}))}}),X3={class:"moonbase:redeem"},J3=["data-visible"],eS={key:1,class:"moonbase:redeem-voucher"},tS={key:0,class:"moonbase:redeem-voucher-content"},nS={key:1,class:"moonbase:redeem-voucher-return"},rS=ae({__name:"Redeem",setup(e){const{redeem:t}=Jp(),n=ge(),r=Ze(),o=oe(zn),s=V(null),i=V(null),a=V(n.getParameter("code")||"");async function l(){i.value=null;try{const u=await t(a.value);s.value=u,o==null||o(Ce.RedeemedVoucher,{voucher:u,user:r.user.value})}catch(u){throw i.value=u,u}}return(u,c)=>(h(),k("div",X3,[y(As,{mode:"out-in",name:"moonbase:slide-left"},{default:x(()=>[s.value?(h(),k("div",eS,[$("div",null,[y(ur,null,{default:x(()=>[S(N(s.value.name),1)]),_:1}),s.value.description?(h(),j(Ye,{key:0},{default:x(()=>[S(' "'+N(s.value.description)+'" ',1)]),_:1})):q("",!0),y(ke,null,{default:x(()=>[y(v(qk)),c[2]||(c[2]=S(" Licenses have been added to your account. ",-1))]),_:1}),y(ke,null,{default:x(()=>[c[3]||(c[3]=S(" Code: ",-1)),$("strong",null,N(s.value.code),1)]),_:1})]),y(Ye,null,{default:x(()=>[...c[4]||(c[4]=[S(" Voucher summary ",-1)])]),_:1}),s.value.redeemsProducts.length>0||s.value.redeemsBundles.length>0?(h(),k("div",tS,[(h(!0),k(ee,null,ct(s.value.redeemsProducts,({value:d,quantity:f})=>(h(),j(p0,{key:d.id,product:d,quantity:f},null,8,["product","quantity"]))),128)),(h(!0),k(ee,null,ct(s.value.redeemsBundles,({value:d,quantity:f})=>(h(),j(h0,{key:d.id,bundle:d,quantity:f},null,8,["bundle","quantity"]))),128))])):q("",!0),v(n).next&&v(n).next[0]===v(G).Activation&&(s.value.redeemsProducts.some(d=>{var f,m;return d.value.id===((m=(f=v(n).next)==null?void 0:f[2])==null?void 0:m.product_id)})||s.value.redeemsBundles.some(d=>d.value.products.some(f=>{var m,p;return f.id===((p=(m=v(n).next)==null?void 0:m[2])==null?void 0:p.product_id)})))?(h(),k("div",nS,[y(Oe,{label:"Return to activation",variant:"primary",icon:v(Bk),handler:()=>v(n).dequeue()},null,8,["icon","handler"])])):q("",!0)])):(h(),j(hn,{key:0,handler:l},{default:x(()=>{var d;return[y(ze,null,{default:x(()=>[...c[1]||(c[1]=[S(" Do you have a voucher you want to redeem? ",-1),$("br",null,null,-1),S(" Please enter the code below: ",-1)])]),_:1}),y(Tt,{modelValue:a.value,"onUpdate:modelValue":c[0]||(c[0]=f=>a.value=f),label:"Voucher code",name:"code",required:"",placeholder:"0000-0000-0000-0000"},null,8,["modelValue"]),y(pn,{label:"Redeem voucher",error:"Error"}),$("span",{class:"moonbase:error","data-visible":!!i.value||void 0},N((d=i.value)==null?void 0:d.message),9,J3)]}),_:1}))]),_:1})]))}}),oS=["data-status"],sS=["data-fulfilled"],v0=ae({__name:"MilestoneProgressBar",props:{progress:{}},setup(e){return(t,n)=>(h(),k("div",{class:"moonbase:milestone-progress-bar",style:Gr({gridTemplateColumns:`repeat(${e.progress.toNormalizedCycleNumber-e.progress.fromNormalizedCycleNumber+1}, 1fr)`})},[(h(!0),k(ee,null,ct(Array(e.progress.toNormalizedCycleNumber-e.progress.fromNormalizedCycleNumber+1),(r,o)=>(h(),k("div",{key:o},[$("div",{"data-status":o+1<e.progress.currentNormalizedCycleNumber+(e.progress.currentCycleIsCompleted?1:0)?"done":o+1===e.progress.currentNormalizedCycleNumber+(e.progress.currentCycleIsCompleted?1:0)?"in-progress":"future"},null,8,oS),e.progress.events[o+1]?(h(),k("span",{key:0,"data-fulfilled":e.progress.events[o+1].some(s=>s.fulfilled)||void 0},null,8,sS)):q("",!0)]))),128))],4))}}),g0=6048e5,iS=864e5,Xl=43200,b0=1440,Jl=Symbol.for("constructDateFrom");function uo(e,t){return typeof e=="function"?e(t):typeof e=="object"&&Jl in e?e[Jl](t):e instanceof Date?new e.constructor(t):new Date(t)}function Vt(e,t){if(t)return t(e);const n=Object.prototype.toString.call(e);return typeof e=="object"&&Jl in e?e[Jl](e):e instanceof Date||typeof e=="object"&&n==="[object Date]"?new e.constructor(+e):typeof e=="number"||n==="[object Number]"||typeof e=="string"||n==="[object String]"?new Date(e):new Date(NaN)}let aS={};function na(){return aS}function ra(e,t){var a,l,u,c;const n=na(),r=(t==null?void 0:t.weekStartsOn)??((l=(a=t==null?void 0:t.locale)==null?void 0:a.options)==null?void 0:l.weekStartsOn)??n.weekStartsOn??((c=(u=n.locale)==null?void 0:u.options)==null?void 0:c.weekStartsOn)??0,o=Vt(e,t==null?void 0:t.in),s=o.getDay(),i=(s<r?7:0)+s-r;return o.setDate(o.getDate()-i),o.setHours(0,0,0,0),o}function eu(e,t){return ra(e,{...t,weekStartsOn:1})}function y0(e,t){const n=Vt(e,t==null?void 0:t.in),r=n.getFullYear(),o=uo(n,0);o.setFullYear(r+1,0,4),o.setHours(0,0,0,0);const s=eu(o),i=uo(n,0);i.setFullYear(r,0,4),i.setHours(0,0,0,0);const a=eu(i);return n.getTime()>=s.getTime()?r+1:n.getTime()>=a.getTime()?r:r-1}function tu(e){const t=Vt(e),n=new Date(Date.UTC(t.getFullYear(),t.getMonth(),t.getDate(),t.getHours(),t.getMinutes(),t.getSeconds(),t.getMilliseconds()));return n.setUTCFullYear(t.getFullYear()),+e-+n}function nu(e,...t){const n=e||uo.bind(null,t.find(r=>typeof r=="object"));return t.map(n)}function w0(e,t){const n=Vt(e,t==null?void 0:t.in);return n.setHours(0,0,0,0),n}function lS(e,t,n){const[r,o]=nu(n==null?void 0:n.in,e,t),s=w0(r),i=w0(o),a=+s-tu(s),l=+i-tu(i);return Math.round((a-l)/iS)}function uS(e,t){const n=y0(e,t),r=uo(e,0);return r.setFullYear(n,0,4),r.setHours(0,0,0,0),eu(r)}function ru(e,t){const n=+Vt(e)-+Vt(t);return n<0?-1:n>0?1:n}function cS(e){return uo(e,Date.now())}function dS(e){return e instanceof Date||typeof e=="object"&&Object.prototype.toString.call(e)==="[object Date]"}function fS(e){return!(!dS(e)&&typeof e!="number"||isNaN(+Vt(e)))}function mS(e,t,n){const[r,o]=nu(n==null?void 0:n.in,e,t),s=r.getFullYear()-o.getFullYear(),i=r.getMonth()-o.getMonth();return s*12+i}function hS(e){return t=>{const r=(e?Math[e]:Math.trunc)(t);return r===0?0:r}}function pS(e,t){return+Vt(e)-+Vt(t)}function vS(e,t){const n=Vt(e,t==null?void 0:t.in);return n.setHours(23,59,59,999),n}function gS(e,t){const n=Vt(e,t==null?void 0:t.in),r=n.getMonth();return n.setFullYear(n.getFullYear(),r+1,0),n.setHours(23,59,59,999),n}function bS(e,t){const n=Vt(e,t==null?void 0:t.in);return+vS(n,t)==+gS(n,t)}function yS(e,t,n){const[r,o,s]=nu(n==null?void 0:n.in,e,e,t),i=ru(o,s),a=Math.abs(mS(o,s));if(a<1)return 0;o.getMonth()===1&&o.getDate()>27&&o.setDate(30),o.setMonth(o.getMonth()-i*a);let l=ru(o,s)===-i;bS(r)&&a===1&&ru(r,s)===1&&(l=!1);const u=i*(a-+l);return u===0?0:u}function wS(e,t,n){const r=pS(e,t)/1e3;return hS(n==null?void 0:n.roundingMethod)(r)}function _S(e,t){const n=Vt(e,t==null?void 0:t.in);return n.setFullYear(n.getFullYear(),0,1),n.setHours(0,0,0,0),n}const kS={lessThanXSeconds:{one:"less than a second",other:"less than {{count}} seconds"},xSeconds:{one:"1 second",other:"{{count}} seconds"},halfAMinute:"half a minute",lessThanXMinutes:{one:"less than a minute",other:"less than {{count}} minutes"},xMinutes:{one:"1 minute",other:"{{count}} minutes"},aboutXHours:{one:"about 1 hour",other:"about {{count}} hours"},xHours:{one:"1 hour",other:"{{count}} hours"},xDays:{one:"1 day",other:"{{count}} days"},aboutXWeeks:{one:"about 1 week",other:"about {{count}} weeks"},xWeeks:{one:"1 week",other:"{{count}} weeks"},aboutXMonths:{one:"about 1 month",other:"about {{count}} months"},xMonths:{one:"1 month",other:"{{count}} months"},aboutXYears:{one:"about 1 year",other:"about {{count}} years"},xYears:{one:"1 year",other:"{{count}} years"},overXYears:{one:"over 1 year",other:"over {{count}} years"},almostXYears:{one:"almost 1 year",other:"almost {{count}} years"}},xS=(e,t,n)=>{let r;const o=kS[e];return typeof o=="string"?r=o:t===1?r=o.one:r=o.other.replace("{{count}}",t.toString()),n!=null&&n.addSuffix?n.comparison&&n.comparison>0?"in "+r:r+" ago":r};function Md(e){return(t={})=>{const n=t.width?String(t.width):e.defaultWidth;return e.formats[n]||e.formats[e.defaultWidth]}}const ES={full:"EEEE, MMMM do, y",long:"MMMM do, y",medium:"MMM d, y",short:"MM/dd/yyyy"},CS={full:"h:mm:ss a zzzz",long:"h:mm:ss a z",medium:"h:mm:ss a",short:"h:mm a"},AS={full:"{{date}} 'at' {{time}}",long:"{{date}} 'at' {{time}}",medium:"{{date}}, {{time}}",short:"{{date}}, {{time}}"},OS={date:Md({formats:ES,defaultWidth:"full"}),time:Md({formats:CS,defaultWidth:"full"}),dateTime:Md({formats:AS,defaultWidth:"full"})},SS={lastWeek:"'last' eeee 'at' p",yesterday:"'yesterday at' p",today:"'today at' p",tomorrow:"'tomorrow at' p",nextWeek:"eeee 'at' p",other:"P"},PS=(e,t,n,r)=>SS[e];function oa(e){return(t,n)=>{const r=n!=null&&n.context?String(n.context):"standalone";let o;if(r==="formatting"&&e.formattingValues){const i=e.defaultFormattingWidth||e.defaultWidth,a=n!=null&&n.width?String(n.width):i;o=e.formattingValues[a]||e.formattingValues[i]}else{const i=e.defaultWidth,a=n!=null&&n.width?String(n.width):e.defaultWidth;o=e.values[a]||e.values[i]}const s=e.argumentCallback?e.argumentCallback(t):t;return o[s]}}const NS={narrow:["B","A"],abbreviated:["BC","AD"],wide:["Before Christ","Anno Domini"]},IS={narrow:["1","2","3","4"],abbreviated:["Q1","Q2","Q3","Q4"],wide:["1st quarter","2nd quarter","3rd quarter","4th quarter"]},TS={narrow:["J","F","M","A","M","J","J","A","S","O","N","D"],abbreviated:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],wide:["January","February","March","April","May","June","July","August","September","October","November","December"]},$S={narrow:["S","M","T","W","T","F","S"],short:["Su","Mo","Tu","We","Th","Fr","Sa"],abbreviated:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],wide:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"]},DS={narrow:{am:"a",pm:"p",midnight:"mi",noon:"n",morning:"morning",afternoon:"afternoon",evening:"evening",night:"night"},abbreviated:{am:"AM",pm:"PM",midnight:"midnight",noon:"noon",morning:"morning",afternoon:"afternoon",evening:"evening",night:"night"},wide:{am:"a.m.",pm:"p.m.",midnight:"midnight",noon:"noon",morning:"morning",afternoon:"afternoon",evening:"evening",night:"night"}},MS={narrow:{am:"a",pm:"p",midnight:"mi",noon:"n",morning:"in the morning",afternoon:"in the afternoon",evening:"in the evening",night:"at night"},abbreviated:{am:"AM",pm:"PM",midnight:"midnight",noon:"noon",morning:"in the morning",afternoon:"in the afternoon",evening:"in the evening",night:"at night"},wide:{am:"a.m.",pm:"p.m.",midnight:"midnight",noon:"noon",morning:"in the morning",afternoon:"in the afternoon",evening:"in the evening",night:"at night"}},VS={ordinalNumber:(e,t)=>{const n=Number(e),r=n%100;if(r>20||r<10)switch(r%10){case 1:return n+"st";case 2:return n+"nd";case 3:return n+"rd"}return n+"th"},era:oa({values:NS,defaultWidth:"wide"}),quarter:oa({values:IS,defaultWidth:"wide",argumentCallback:e=>e-1}),month:oa({values:TS,defaultWidth:"wide"}),day:oa({values:$S,defaultWidth:"wide"}),dayPeriod:oa({values:DS,defaultWidth:"wide",formattingValues:MS,defaultFormattingWidth:"wide"})};function sa(e){return(t,n={})=>{const r=n.width,o=r&&e.matchPatterns[r]||e.matchPatterns[e.defaultMatchWidth],s=t.match(o);if(!s)return null;const i=s[0],a=r&&e.parsePatterns[r]||e.parsePatterns[e.defaultParseWidth],l=Array.isArray(a)?RS(a,d=>d.test(i)):LS(a,d=>d.test(i));let u;u=e.valueCallback?e.valueCallback(l):l,u=n.valueCallback?n.valueCallback(u):u;const c=t.slice(i.length);return{value:u,rest:c}}}function LS(e,t){for(const n in e)if(Object.prototype.hasOwnProperty.call(e,n)&&t(e[n]))return n}function RS(e,t){for(let n=0;n<e.length;n++)if(t(e[n]))return n}function US(e){return(t,n={})=>{const r=t.match(e.matchPattern);if(!r)return null;const o=r[0],s=t.match(e.parsePattern);if(!s)return null;let i=e.valueCallback?e.valueCallback(s[0]):s[0];i=n.valueCallback?n.valueCallback(i):i;const a=t.slice(o.length);return{value:i,rest:a}}}const jS=/^(\d+)(th|st|nd|rd)?/i,BS=/\d+/i,FS={narrow:/^(b|a)/i,abbreviated:/^(b\.?\s?c\.?|b\.?\s?c\.?\s?e\.?|a\.?\s?d\.?|c\.?\s?e\.?)/i,wide:/^(before christ|before common era|anno domini|common era)/i},qS={any:[/^b/i,/^(a|c)/i]},HS={narrow:/^[1234]/i,abbreviated:/^q[1234]/i,wide:/^[1234](th|st|nd|rd)? quarter/i},zS={any:[/1/i,/2/i,/3/i,/4/i]},WS={narrow:/^[jfmasond]/i,abbreviated:/^(jan|feb|mar|apr|may|jun|jul|aug|sep|oct|nov|dec)/i,wide:/^(january|february|march|april|may|june|july|august|september|october|november|december)/i},ZS={narrow:[/^j/i,/^f/i,/^m/i,/^a/i,/^m/i,/^j/i,/^j/i,/^a/i,/^s/i,/^o/i,/^n/i,/^d/i],any:[/^ja/i,/^f/i,/^mar/i,/^ap/i,/^may/i,/^jun/i,/^jul/i,/^au/i,/^s/i,/^o/i,/^n/i,/^d/i]},GS={narrow:/^[smtwf]/i,short:/^(su|mo|tu|we|th|fr|sa)/i,abbreviated:/^(sun|mon|tue|wed|thu|fri|sat)/i,wide:/^(sunday|monday|tuesday|wednesday|thursday|friday|saturday)/i},YS={narrow:[/^s/i,/^m/i,/^t/i,/^w/i,/^t/i,/^f/i,/^s/i],any:[/^su/i,/^m/i,/^tu/i,/^w/i,/^th/i,/^f/i,/^sa/i]},KS={narrow:/^(a|p|mi|n|(in the|at) (morning|afternoon|evening|night))/i,any:/^([ap]\.?\s?m\.?|midnight|noon|(in the|at) (morning|afternoon|evening|night))/i},QS={any:{am:/^a/i,pm:/^p/i,midnight:/^mi/i,noon:/^no/i,morning:/morning/i,afternoon:/afternoon/i,evening:/evening/i,night:/night/i}},XS={ordinalNumber:US({matchPattern:jS,parsePattern:BS,valueCallback:e=>parseInt(e,10)}),era:sa({matchPatterns:FS,defaultMatchWidth:"wide",parsePatterns:qS,defaultParseWidth:"any"}),quarter:sa({matchPatterns:HS,defaultMatchWidth:"wide",parsePatterns:zS,defaultParseWidth:"any",valueCallback:e=>e+1}),month:sa({matchPatterns:WS,defaultMatchWidth:"wide",parsePatterns:ZS,defaultParseWidth:"any"}),day:sa({matchPatterns:GS,defaultMatchWidth:"wide",parsePatterns:YS,defaultParseWidth:"any"}),dayPeriod:sa({matchPatterns:KS,defaultMatchWidth:"any",parsePatterns:QS,defaultParseWidth:"any"})},_0={code:"en-US",formatDistance:xS,formatLong:OS,formatRelative:PS,localize:VS,match:XS,options:{weekStartsOn:0,firstWeekContainsDate:1}};function JS(e,t){const n=Vt(e,t==null?void 0:t.in);return lS(n,_S(n))+1}function eP(e,t){const n=Vt(e,t==null?void 0:t.in),r=+eu(n)-+uS(n);return Math.round(r/g0)+1}function k0(e,t){var c,d,f,m;const n=Vt(e,t==null?void 0:t.in),r=n.getFullYear(),o=na(),s=(t==null?void 0:t.firstWeekContainsDate)??((d=(c=t==null?void 0:t.locale)==null?void 0:c.options)==null?void 0:d.firstWeekContainsDate)??o.firstWeekContainsDate??((m=(f=o.locale)==null?void 0:f.options)==null?void 0:m.firstWeekContainsDate)??1,i=uo((t==null?void 0:t.in)||e,0);i.setFullYear(r+1,0,s),i.setHours(0,0,0,0);const a=ra(i,t),l=uo((t==null?void 0:t.in)||e,0);l.setFullYear(r,0,s),l.setHours(0,0,0,0);const u=ra(l,t);return+n>=+a?r+1:+n>=+u?r:r-1}function tP(e,t){var a,l,u,c;const n=na(),r=(t==null?void 0:t.firstWeekContainsDate)??((l=(a=t==null?void 0:t.locale)==null?void 0:a.options)==null?void 0:l.firstWeekContainsDate)??n.firstWeekContainsDate??((c=(u=n.locale)==null?void 0:u.options)==null?void 0:c.firstWeekContainsDate)??1,o=k0(e,t),s=uo((t==null?void 0:t.in)||e,0);return s.setFullYear(o,0,r),s.setHours(0,0,0,0),ra(s,t)}function nP(e,t){const n=Vt(e,t==null?void 0:t.in),r=+ra(n,t)-+tP(n,t);return Math.round(r/g0)+1}function dt(e,t){const n=e<0?"-":"",r=Math.abs(e).toString().padStart(t,"0");return n+r}const co={y(e,t){const n=e.getFullYear(),r=n>0?n:1-n;return dt(t==="yy"?r%100:r,t.length)},M(e,t){const n=e.getMonth();return t==="M"?String(n+1):dt(n+1,2)},d(e,t){return dt(e.getDate(),t.length)},a(e,t){const n=e.getHours()/12>=1?"pm":"am";switch(t){case"a":case"aa":return n.toUpperCase();case"aaa":return n;case"aaaaa":return n[0];case"aaaa":default:return n==="am"?"a.m.":"p.m."}},h(e,t){return dt(e.getHours()%12||12,t.length)},H(e,t){return dt(e.getHours(),t.length)},m(e,t){return dt(e.getMinutes(),t.length)},s(e,t){return dt(e.getSeconds(),t.length)},S(e,t){const n=t.length,r=e.getMilliseconds(),o=Math.trunc(r*Math.pow(10,n-3));return dt(o,t.length)}},Ys={midnight:"midnight",noon:"noon",morning:"morning",afternoon:"afternoon",evening:"evening",night:"night"},x0={G:function(e,t,n){const r=e.getFullYear()>0?1:0;switch(t){case"G":case"GG":case"GGG":return n.era(r,{width:"abbreviated"});case"GGGGG":return n.era(r,{width:"narrow"});case"GGGG":default:return n.era(r,{width:"wide"})}},y:function(e,t,n){if(t==="yo"){const r=e.getFullYear(),o=r>0?r:1-r;return n.ordinalNumber(o,{unit:"year"})}return co.y(e,t)},Y:function(e,t,n,r){const o=k0(e,r),s=o>0?o:1-o;if(t==="YY"){const i=s%100;return dt(i,2)}return t==="Yo"?n.ordinalNumber(s,{unit:"year"}):dt(s,t.length)},R:function(e,t){const n=y0(e);return dt(n,t.length)},u:function(e,t){const n=e.getFullYear();return dt(n,t.length)},Q:function(e,t,n){const r=Math.ceil((e.getMonth()+1)/3);switch(t){case"Q":return String(r);case"QQ":return dt(r,2);case"Qo":return n.ordinalNumber(r,{unit:"quarter"});case"QQQ":return n.quarter(r,{width:"abbreviated",context:"formatting"});case"QQQQQ":return n.quarter(r,{width:"narrow",context:"formatting"});case"QQQQ":default:return n.quarter(r,{width:"wide",context:"formatting"})}},q:function(e,t,n){const r=Math.ceil((e.getMonth()+1)/3);switch(t){case"q":return String(r);case"qq":return dt(r,2);case"qo":return n.ordinalNumber(r,{unit:"quarter"});case"qqq":return n.quarter(r,{width:"abbreviated",context:"standalone"});case"qqqqq":return n.quarter(r,{width:"narrow",context:"standalone"});case"qqqq":default:return n.quarter(r,{width:"wide",context:"standalone"})}},M:function(e,t,n){const r=e.getMonth();switch(t){case"M":case"MM":return co.M(e,t);case"Mo":return n.ordinalNumber(r+1,{unit:"month"});case"MMM":return n.month(r,{width:"abbreviated",context:"formatting"});case"MMMMM":return n.month(r,{width:"narrow",context:"formatting"});case"MMMM":default:return n.month(r,{width:"wide",context:"formatting"})}},L:function(e,t,n){const r=e.getMonth();switch(t){case"L":return String(r+1);case"LL":return dt(r+1,2);case"Lo":return n.ordinalNumber(r+1,{unit:"month"});case"LLL":return n.month(r,{width:"abbreviated",context:"standalone"});case"LLLLL":return n.month(r,{width:"narrow",context:"standalone"});case"LLLL":default:return n.month(r,{width:"wide",context:"standalone"})}},w:function(e,t,n,r){const o=nP(e,r);return t==="wo"?n.ordinalNumber(o,{unit:"week"}):dt(o,t.length)},I:function(e,t,n){const r=eP(e);return t==="Io"?n.ordinalNumber(r,{unit:"week"}):dt(r,t.length)},d:function(e,t,n){return t==="do"?n.ordinalNumber(e.getDate(),{unit:"date"}):co.d(e,t)},D:function(e,t,n){const r=JS(e);return t==="Do"?n.ordinalNumber(r,{unit:"dayOfYear"}):dt(r,t.length)},E:function(e,t,n){const r=e.getDay();switch(t){case"E":case"EE":case"EEE":return n.day(r,{width:"abbreviated",context:"formatting"});case"EEEEE":return n.day(r,{width:"narrow",context:"formatting"});case"EEEEEE":return n.day(r,{width:"short",context:"formatting"});case"EEEE":default:return n.day(r,{width:"wide",context:"formatting"})}},e:function(e,t,n,r){const o=e.getDay(),s=(o-r.weekStartsOn+8)%7||7;switch(t){case"e":return String(s);case"ee":return dt(s,2);case"eo":return n.ordinalNumber(s,{unit:"day"});case"eee":return n.day(o,{width:"abbreviated",context:"formatting"});case"eeeee":return n.day(o,{width:"narrow",context:"formatting"});case"eeeeee":return n.day(o,{width:"short",context:"formatting"});case"eeee":default:return n.day(o,{width:"wide",context:"formatting"})}},c:function(e,t,n,r){const o=e.getDay(),s=(o-r.weekStartsOn+8)%7||7;switch(t){case"c":return String(s);case"cc":return dt(s,t.length);case"co":return n.ordinalNumber(s,{unit:"day"});case"ccc":return n.day(o,{width:"abbreviated",context:"standalone"});case"ccccc":return n.day(o,{width:"narrow",context:"standalone"});case"cccccc":return n.day(o,{width:"short",context:"standalone"});case"cccc":default:return n.day(o,{width:"wide",context:"standalone"})}},i:function(e,t,n){const r=e.getDay(),o=r===0?7:r;switch(t){case"i":return String(o);case"ii":return dt(o,t.length);case"io":return n.ordinalNumber(o,{unit:"day"});case"iii":return n.day(r,{width:"abbreviated",context:"formatting"});case"iiiii":return n.day(r,{width:"narrow",context:"formatting"});case"iiiiii":return n.day(r,{width:"short",context:"formatting"});case"iiii":default:return n.day(r,{width:"wide",context:"formatting"})}},a:function(e,t,n){const o=e.getHours()/12>=1?"pm":"am";switch(t){case"a":case"aa":return n.dayPeriod(o,{width:"abbreviated",context:"formatting"});case"aaa":return n.dayPeriod(o,{width:"abbreviated",context:"formatting"}).toLowerCase();case"aaaaa":return n.dayPeriod(o,{width:"narrow",context:"formatting"});case"aaaa":default:return n.dayPeriod(o,{width:"wide",context:"formatting"})}},b:function(e,t,n){const r=e.getHours();let o;switch(r===12?o=Ys.noon:r===0?o=Ys.midnight:o=r/12>=1?"pm":"am",t){case"b":case"bb":return n.dayPeriod(o,{width:"abbreviated",context:"formatting"});case"bbb":return n.dayPeriod(o,{width:"abbreviated",context:"formatting"}).toLowerCase();case"bbbbb":return n.dayPeriod(o,{width:"narrow",context:"formatting"});case"bbbb":default:return n.dayPeriod(o,{width:"wide",context:"formatting"})}},B:function(e,t,n){const r=e.getHours();let o;switch(r>=17?o=Ys.evening:r>=12?o=Ys.afternoon:r>=4?o=Ys.morning:o=Ys.night,t){case"B":case"BB":case"BBB":return n.dayPeriod(o,{width:"abbreviated",context:"formatting"});case"BBBBB":return n.dayPeriod(o,{width:"narrow",context:"formatting"});case"BBBB":default:return n.dayPeriod(o,{width:"wide",context:"formatting"})}},h:function(e,t,n){if(t==="ho"){let r=e.getHours()%12;return r===0&&(r=12),n.ordinalNumber(r,{unit:"hour"})}return co.h(e,t)},H:function(e,t,n){return t==="Ho"?n.ordinalNumber(e.getHours(),{unit:"hour"}):co.H(e,t)},K:function(e,t,n){const r=e.getHours()%12;return t==="Ko"?n.ordinalNumber(r,{unit:"hour"}):dt(r,t.length)},k:function(e,t,n){let r=e.getHours();return r===0&&(r=24),t==="ko"?n.ordinalNumber(r,{unit:"hour"}):dt(r,t.length)},m:function(e,t,n){return t==="mo"?n.ordinalNumber(e.getMinutes(),{unit:"minute"}):co.m(e,t)},s:function(e,t,n){return t==="so"?n.ordinalNumber(e.getSeconds(),{unit:"second"}):co.s(e,t)},S:function(e,t){return co.S(e,t)},X:function(e,t,n){const r=e.getTimezoneOffset();if(r===0)return"Z";switch(t){case"X":return C0(r);case"XXXX":case"XX":return ns(r);case"XXXXX":case"XXX":default:return ns(r,":")}},x:function(e,t,n){const r=e.getTimezoneOffset();switch(t){case"x":return C0(r);case"xxxx":case"xx":return ns(r);case"xxxxx":case"xxx":default:return ns(r,":")}},O:function(e,t,n){const r=e.getTimezoneOffset();switch(t){case"O":case"OO":case"OOO":return"GMT"+E0(r,":");case"OOOO":default:return"GMT"+ns(r,":")}},z:function(e,t,n){const r=e.getTimezoneOffset();switch(t){case"z":case"zz":case"zzz":return"GMT"+E0(r,":");case"zzzz":default:return"GMT"+ns(r,":")}},t:function(e,t,n){const r=Math.trunc(e.getTime()/1e3);return dt(r,t.length)},T:function(e,t,n){const r=e.getTime();return dt(r,t.length)}};function E0(e,t=""){const n=e>0?"-":"+",r=Math.abs(e),o=Math.trunc(r/60),s=r%60;return s===0?n+String(o):n+String(o)+t+dt(s,2)}function C0(e,t){return e%60===0?(e>0?"-":"+")+dt(Math.abs(e)/60,2):ns(e,t)}function ns(e,t=""){const n=e>0?"-":"+",r=Math.abs(e),o=dt(Math.trunc(r/60),2),s=dt(r%60,2);return n+o+t+s}const A0=(e,t)=>{switch(e){case"P":return t.date({width:"short"});case"PP":return t.date({width:"medium"});case"PPP":return t.date({width:"long"});case"PPPP":default:return t.date({width:"full"})}},O0=(e,t)=>{switch(e){case"p":return t.time({width:"short"});case"pp":return t.time({width:"medium"});case"ppp":return t.time({width:"long"});case"pppp":default:return t.time({width:"full"})}},rP={p:O0,P:(e,t)=>{const n=e.match(/(P+)(p+)?/)||[],r=n[1],o=n[2];if(!o)return A0(e,t);let s;switch(r){case"P":s=t.dateTime({width:"short"});break;case"PP":s=t.dateTime({width:"medium"});break;case"PPP":s=t.dateTime({width:"long"});break;case"PPPP":default:s=t.dateTime({width:"full"});break}return s.replace("{{date}}",A0(r,t)).replace("{{time}}",O0(o,t))}},oP=/^D+$/,sP=/^Y+$/,iP=["D","DD","YY","YYYY"];function aP(e){return oP.test(e)}function lP(e){return sP.test(e)}function uP(e,t,n){const r=cP(e,t,n);if(console.warn(r),iP.includes(e))throw new RangeError(r)}function cP(e,t,n){const r=e[0]==="Y"?"years":"days of the month";return`Use \`${e.toLowerCase()}\` instead of \`${e}\` (in \`${t}\`) for formatting ${r} to the input \`${n}\`; see: https://github.com/date-fns/date-fns/blob/master/docs/unicodeTokens.md`}const dP=/[yYQqMLwIdDecihHKkms]o|(\w)\1*|''|'(''|[^'])+('|$)|./g,fP=/P+p+|P+|p+|''|'(''|[^'])+('|$)|./g,mP=/^'([^]*?)'?$/,hP=/''/g,pP=/[a-zA-Z]/;function vP(e,t,n){var c,d,f,m;const r=na(),o=r.locale??_0,s=r.firstWeekContainsDate??((d=(c=r.locale)==null?void 0:c.options)==null?void 0:d.firstWeekContainsDate)??1,i=r.weekStartsOn??((m=(f=r.locale)==null?void 0:f.options)==null?void 0:m.weekStartsOn)??0,a=Vt(e);if(!fS(a))throw new RangeError("Invalid time value");let l=t.match(fP).map(p=>{const g=p[0];if(g==="p"||g==="P"){const b=rP[g];return b(p,o.formatLong)}return p}).join("").match(dP).map(p=>{if(p==="''")return{isToken:!1,value:"'"};const g=p[0];if(g==="'")return{isToken:!1,value:gP(p)};if(x0[g])return{isToken:!0,value:p};if(g.match(pP))throw new RangeError("Format string contains an unescaped latin alphabet character `"+g+"`");return{isToken:!1,value:p}});o.localize.preprocessor&&(l=o.localize.preprocessor(a,l));const u={firstWeekContainsDate:s,weekStartsOn:i,locale:o};return l.map(p=>{if(!p.isToken)return p.value;const g=p.value;(lP(g)||aP(g))&&uP(g,t,String(e));const b=x0[g[0]];return b(a,g,o.localize,u)}).join("")}function gP(e){const t=e.match(mP);return t?t[1].replace(hP,"'"):e}function bP(e,t,n){const r=na(),o=(n==null?void 0:n.locale)??r.locale??_0,s=2520,i=ru(e,t);if(isNaN(i))throw new RangeError("Invalid time value");const a=Object.assign({},n,{addSuffix:n==null?void 0:n.addSuffix,comparison:i}),[l,u]=nu(n==null?void 0:n.in,...i>0?[t,e]:[e,t]),c=wS(u,l),d=(tu(u)-tu(l))/1e3,f=Math.round((c-d)/60);let m;if(f<2)return n!=null&&n.includeSeconds?c<5?o.formatDistance("lessThanXSeconds",5,a):c<10?o.formatDistance("lessThanXSeconds",10,a):c<20?o.formatDistance("lessThanXSeconds",20,a):c<40?o.formatDistance("halfAMinute",0,a):c<60?o.formatDistance("lessThanXMinutes",1,a):o.formatDistance("xMinutes",1,a):f===0?o.formatDistance("lessThanXMinutes",1,a):o.formatDistance("xMinutes",f,a);if(f<45)return o.formatDistance("xMinutes",f,a);if(f<90)return o.formatDistance("aboutXHours",1,a);if(f<b0){const p=Math.round(f/60);return o.formatDistance("aboutXHours",p,a)}else{if(f<s)return o.formatDistance("xDays",1,a);if(f<Xl){const p=Math.round(f/b0);return o.formatDistance("xDays",p,a)}else if(f<Xl*2)return m=Math.round(f/Xl),o.formatDistance("aboutXMonths",m,a)}if(m=yS(u,l),m<12){const p=Math.round(f/Xl);return o.formatDistance("xMonths",p,a)}else{const p=m%12,g=Math.trunc(m/12);return p<3?o.formatDistance("aboutXYears",g,a):p<9?o.formatDistance("overXYears",g,a):o.formatDistance("almostXYears",g+1,a)}}function yP(e,t){return bP(e,cS(e),t)}function wP(e){return yP(e,{addSuffix:!0})}function rs(e,t){return vP(e,t||"PPP")}const _P={class:"moonbase:subscriptions"},kP={key:0,class:"moonbase:loader"},xP={key:1,class:"moonbase:loader"},EP=["data-subscription-status"],CP={class:"moonbase:subscriptions-item-content"},AP={class:"moonbase:subscriptions-item-content"},OP={key:0,class:"moonbase:subscriptions-item-milestone-progress"},SP={class:"moonbase:subscriptions-item-milestone-progress-title"},PP=ae({__name:"Subscriptions",setup(e){const t=ge(),{getSubscriptions:n}=Zo(),r=V(new Date),o=V(null);return Fe(async()=>{let s=await n();for(o.value=s.items;s.hasMore&&s.next;)s=await n(s.next),o.value.push(...s.items)}),(s,i)=>(h(),k("div",_P,[o.value?o.value.length===0?(h(),k("div",xP," No subscriptions found ")):q("",!0):(h(),k("div",kP,[y(It),i[0]||(i[0]=S(" Loading subscriptions.. ",-1))])),(h(!0),k(ee,null,ct(o.value||[],a=>(h(),k(ee,{key:a.id},[$("div",{"data-subscription-status":a.status,class:"moonbase:subscriptions-item"},[a.content.type==="Product"?(h(),k(ee,{key:0},[y(Mt,{url:a.content.product.iconUrl,size:48},null,8,["url"]),$("div",CP,[y(ot,null,{default:x(()=>[S(N(a.content.quantity)+" x "+N(a.content.product.name),1)]),_:2},1024),y(ke,null,{default:x(()=>[S(N(a.status===v(Hr).Active?"Renews":a.expiresAt>r.value?"Expires":"Expired")+" "+N(v(rs)(a.expiresAt)),1)]),_:2},1024)])],64)):(h(),k(ee,{key:1},[y(Mt,{url:a.content.bundle.iconUrl,size:48},null,8,["url"]),$("div",AP,[y(ot,null,{default:x(()=>[S(N(a.content.quantity)+" x "+N(a.content.bundle.name),1)]),_:2},1024),y(ke,null,{default:x(()=>[S(N(a.status===v(Hr).Active?"Renews":a.expiresAt>r.value?"Expires":"Expired")+" "+N(v(rs)(a.expiresAt)),1)]),_:2},1024)])],64)),$("div",null,[y(Ls,{variant:"subtle",onClick:l=>v(t).show(v(G).Subscription,v(W).ManageSubscription,{subscription_id:a.id})},{default:x(()=>[y(v(yv)),i[1]||(i[1]=$("span",{class:"moonbase:clickable"},null,-1))]),_:1},8,["onClick"])])],8,EP),a.milestoneProgress?(h(),k("div",OP,[$("div",SP,[y(ot,null,{default:x(()=>[S(N(a.milestoneProgress.title),1)]),_:2},1024),y(St,null,{default:x(()=>[S(N(a.milestoneProgress.currentNormalizedCycleNumber-(a.milestoneProgress.currentCycleIsCompleted?0:1))+" / "+N(a.milestoneProgress.toNormalizedCycleNumber)+" "+N(v(ta)(a.cycleLength))+"s ",1)]),_:2},1024)]),y(v0,{progress:a.milestoneProgress},null,8,["progress"])])):q("",!0)],64))),128))]))}}),NP={class:"moonbase:customer"},IP=ae({__name:"Customer",setup(e){const t=ge(),{user:n}=Ze(),r=oe(qe),o=F(()=>[{intent:W.ViewProducts,title:"Products",content:W3},{intent:W.ViewSubscriptions,title:"Subscriptions",content:PP,predicate:()=>{var l;return((l=n.value)==null?void 0:l.hasSubscriptions)??!1}},{intent:W.ViewAccount,title:"Account",content:I3},{intent:W.RedeemVoucher,title:"Redeem",content:rS}].filter(l=>l.predicate===void 0||l.predicate())),s=F(()=>t.intent===W.ConnectAccount),i=F(()=>o.value.findIndex(l=>l.intent===t.intent));function a(l){t.intent=o.value[l].intent}return(l,u)=>(h(),k("div",NP,[s.value?(h(),j(U3,{key:0})):(h(),j(v(ex),{key:1,"selected-index":i.value,onChange:a},{default:x(()=>{var c,d;return[y(v(tx),{"data-corners":(c=v(r))==null?void 0:c.theme.corners,"data-background":(d=v(r))==null?void 0:d.theme.colors.background},{default:x(()=>[(h(!0),k(ee,null,ct(o.value,f=>(h(),j(v(nx),{key:f.intent},{default:x(()=>[S(N(f.title),1)]),_:2},1024))),128))]),_:1},8,["data-corners","data-background"]),y(v(rx),null,{default:x(()=>[(h(!0),k(ee,null,ct(o.value,f=>(h(),j(v(ox),{key:f.intent},{default:x(()=>[(h(),j(rc(f.content)))]),_:2},1024))),128))]),_:1})]}),_:1},8,["selected-index"]))]))}}),TP={class:"moonbase:join-group"},$P={key:0,class:"moonbase:loader"},DP={key:1,class:"moonbase:join-failure"},MP={class:"moonbase:error","data-visible":""},VP={class:"moonbase:join-group-actions"},LP={class:"moonbase:join-group-actions"},RP=ae({__name:"JoinGroup",setup(e){const t=ge(),{user:n}=Ze(),{join:r}=Kp(),o=oe(zn),s=V(!0),i=V(null),a=V(!1),l=V(!1);function u(){t.enqueue(G.Groups,W.JoinGroup,t.parameters??void 0),t.show(G.Authentication,W.SignIn)}async function c(){s.value=!0,i.value=null,a.value=!1,l.value=!1;const m=t.getParameter("group_id");if(!m){i.value="This link is no longer valid.",s.value=!1;return}try{await r(m),n.value&&(o==null||o(Ce.JoinedGroup,{groupId:m,user:n.value}))}catch(p){p instanceof wr?i.value="This link is no longer valid.":p instanceof ds?(a.value=!0,i.value="Your session ended before we could add you to the list"):(l.value=!0,i.value=p.message)}s.value=!1}Fe(c);function d(){c()}function f(){t.show(G.Customer,W.ViewAccount)}return(m,p)=>(h(),k("div",TP,[s.value?(h(),k("div",$P,[y(It)])):i.value?(h(),k("div",DP,[$("span",MP,N(i.value),1),$("div",VP,[a.value?(h(),j(Oe,{key:0,label:"Sign in",handler:u})):l.value?(h(),j(Oe,{key:1,label:"Try again",handler:d})):(h(),j(Oe,{key:2,label:"Go to your account",handler:f}))])])):(h(),k(ee,{key:2},[y(Ye,null,{default:x(()=>[...p[0]||(p[0]=[S(" You're on the list ",-1)])]),_:1}),y(ze,null,{default:x(()=>[...p[1]||(p[1]=[S(" We've added you. You'll hear from us when there's something worth sending. ",-1)])]),_:1}),$("div",LP,[y(Oe,{label:"Go to your account",variant:"secondary",handler:f})])],64))]))}}),UP={class:"moonbase:product-card-content"},jP=["data-open"],BP=ae({__name:"ProductCard",props:{product:{}},setup(e){const t=V(!1),n=V(null),r=F(()=>n.value&&n.value.$el&&n.value.$el.scrollHeight>n.value.$el.clientHeight);return(o,s)=>(h(),j(rn,{class:"moonbase:product-card"},{addon:x(()=>[e.product.description?(h(),k("div",{key:0,class:"moonbase:product-card-description","data-open":t.value||void 0},[y(ke,{ref_key:"descriptionRef",ref:n},{default:x(()=>[S(N(e.product.description),1)]),_:1},512),!t.value&&r.value?(h(),k("button",{key:0,onClick:s[0]||(s[0]=i=>t.value=!0)},[y(ot,null,{default:x(()=>[...s[1]||(s[1]=[S(" read more ",-1)])]),_:1})])):q("",!0)],8,jP)):q("",!0)]),default:x(()=>{var i;return[y(Mt,{url:e.product.iconUrl,size:72},null,8,["url"]),$("div",UP,[y(ur,null,{default:x(()=>{var a;return[S(N((a=e.product)==null?void 0:a.name),1)]}),_:1}),(i=e.product)!=null&&i.tagline?(h(),j(ke,{key:0,class:"moonbase:product-card-tagline"},{default:x(()=>{var a;return[S(N((a=e.product)==null?void 0:a.tagline),1)]}),_:1})):q("",!0)])]}),_:1}))}});function FP(e){const t=["B","KB","MB","GB","TB","PB","EB","ZB","YB"];if(e<1)return`${e} B`;const n=Math.min(Math.floor(Math.log(e)/Math.log(1024)),t.length-1);e=Number(e/1024**n);const r=t[n];return e>=10||e%1===0?`${e.toFixed(0)} ${r}`:`${e.toFixed(1)} ${r}`}function qP(e){return e instanceof Pa}function HP(e,t){return e.downloadsAllowed?null:t?e.downloadsNeedsOwnership&&!(e.numberOfLicenses||e.subscriptionLicenses)?"ownership":"unavailable":"account"}const zP={class:"moonbase:product-downloads"},WP=["data-open"],ZP={key:1,class:"moonbase:product-downloads-content"},GP={key:2,class:"moonbase:product-downloads-content"},YP={class:"moonbase:product-downloads-list"},KP={class:"moonbase:product-downloads-download-actions"},QP=ae({__name:"ProductDownloads",props:{product:{}},setup(e){const t=e,n=ge(),r=Ze(),o=Kl(),s=oe(qe),i=oe(zn),{downloadProduct:a}=Zo(),l=V(!1),u=V(null),c=V(!1),d={account:"This product requires an account to download",ownership:"This product requires ownership to download",unavailable:"You don't have access to download this product"},f=F(()=>c.value?"unavailable":HP(t.product,!!r.user.value)),m=F(()=>u.value&&u.value.$el&&u.value.$el.scrollHeight>u.value.$el.clientHeight);function p(){n.enqueue(G.Product,W.DownloadProduct,n.parameters??void 0),n.show(G.Authentication,W.SignIn)}function g(){n.enqueue(G.Product,W.DownloadProduct,n.parameters??void 0),n.show(G.Authentication,W.SignUp)}const b=[bn.Windows,bn.Mac,bn.Linux,bn.Universal];function O(){var w;const E=(((w=navigator.userAgentData)==null?void 0:w.platform)??navigator.platform??"Unknown").toLowerCase();return/mac/.test(E)?bn.Mac:/win/.test(E)?bn.Windows:/linux/.test(E)?bn.Linux:bn.Universal}const P=O(),I=[P,...b.filter(E=>E!==P)],U=V(null);Fe(async()=>{var E;try{const w=await((E=navigator.userAgentData)==null?void 0:E.getHighEntropyValues(["architecture","bitness"]));if(!(w!=null&&w.architecture)||!w.bitness)return;w.architecture==="arm"?U.value=w.bitness==="64"?Ut.Arm64:Ut.Arm:w.architecture==="x86"&&(U.value=w.bitness==="64"?Ut.X64:Ut.X86)}catch{}});function B(E){return U.value?!E.arch||E.arch===Ut.Universal||E.arch===Ut.Unknown?1:E.arch===U.value?0:2:0}const z=F(()=>I.flatMap(E=>(t.product.downloads??[]).filter(w=>w.platform===E).slice().sort((w,_)=>B(w)-B(_)))),L=F(()=>{const E=(t.product.downloads??[]).filter(_=>_.platform===P);if(E.length===0)return new Set;const w=Math.min(...E.map(B));return new Set(E.filter(_=>B(_)===w))});function T(E){if(!E.arch||E.arch===Ut.Universal||E.arch===Ut.Unknown)return null;if(E.platform===bn.Mac){if(E.arch===Ut.Arm64)return"Apple Silicon";if(E.arch===Ut.X64)return"Intel"}switch(E.arch){case Ut.X86:return"x86";case Ut.X64:return"x64";case Ut.Arm:return"ARM";case Ut.Arm64:return"ARM64";default:return null}}async function A(E){try{await a(E),i==null||i(Ce.DownloadedProduct,{product:t.product,download:E,user:r.user.value})}catch(w){if(qP(w))throw c.value=!0,new ts;if(w instanceof Kt)o.reportProblem("error",{type:w.name,title:w.title,detail:w.detail,status:w.status,errors:w.errors?Object.fromEntries(Object.entries(w.errors).map(([_,D])=>[_,[D]])):void 0,instance:"ProductDownloads.vue:startDownload"});else{const _=w;o.reportProblem("error",{type:_.name,title:_.message,instance:"ProductDownloads.vue:startDownload"})}throw w}}return(E,w)=>{var _;return h(),k("div",zP,[y(Ye,null,{default:x(()=>[w[1]||(w[1]=S(" Downloads ",-1)),y(ke,null,{default:x(()=>[S(" Version "+N(e.product.version),1)]),_:1})]),_:1}),e.product.releaseDescription?(h(),k("div",{key:0,class:"moonbase:product-downloads-description","data-open":l.value||void 0},[y(ke,{ref_key:"descriptionRef",ref:u},{default:x(()=>[S(N(e.product.releaseDescription),1)]),_:1},512),!l.value&&m.value?(h(),k("button",{key:0,onClick:w[0]||(w[0]=D=>l.value=!0)},[y(ot,null,{default:x(()=>[...w[2]||(w[2]=[S(" read more ",-1)])]),_:1})])):q("",!0)],8,WP)):q("",!0),f.value?(h(),k("div",ZP,[y(ze,{"data-center":""},{default:x(()=>[S(N(d[f.value]),1)]),_:1}),f.value==="account"?(h(),k(ee,{key:0},[y(Oe,{label:"Sign in",handler:p}),(_=v(s))!=null&&_.auth.signUp.enabled?(h(),j(Oe,{key:0,label:"Create account",variant:"subtle",handler:g})):q("",!0)],64)):q("",!0)])):(h(),k("div",GP,[$("div",YP,[(h(!0),k(ee,null,ct(z.value,D=>(h(),j(rn,{key:D.key,class:"moonbase:product-downloads-download"},{addon:x(()=>[$("div",KP,[y(Oe,{label:D.platform===v(bn).Universal?"Download":`Download for ${D.platform}`,variant:L.value.has(D)?"primary":"secondary","no-reset":!0,handler:()=>A(D),icon:v(Uk)},null,8,["label","variant","handler","icon"])])]),default:x(()=>[$("div",null,[y(Ye,null,{default:x(()=>[S(N(D.name),1)]),_:2},1024),y(St,null,{default:x(()=>[S(N(D.platform)+N(T(D)?` (${T(D)})`:"")+" - "+N(v(FP)(D.size)),1)]),_:2},1024)])]),_:2},1024))),128))]),z.value.length===0?(h(),j(ze,{key:0,"data-center":""},{default:x(()=>[...w[3]||(w[3]=[S(" No downloadable files found ",-1)])]),_:1})):q("",!0)]))])}}}),XP=["href"],JP=ae({__name:"LinkifiedText",props:{text:{}},setup(e){const t=e,n=/\b((?:https?:\/\/|www\.)[^\s<>"'`]+?)(?=[)\]}>,.!?;:'"]?(?:\s|$))/gi;function r(i){return/^www\./i.test(i)?`https://${i}`:i}function o(i){const a=[];if(!i)return a;let l=0;for(const u of i.matchAll(n)){const c=u[0],d=u.index??0;d>l&&a.push({type:"text",text:i.slice(l,d)});const f=c.replace(/[)\]}>,.!?;:'"]+$/g,()=>""),m=f,p=r(f);m.length>0&&a.push({type:"url",text:m,href:p});const g=c.slice(f.length);g&&a.push({type:"text",text:g}),l=d+c.length}return l<i.length&&a.push({type:"text",text:i.slice(l)}),a}const s=F(()=>o(t.text));return(i,a)=>(h(!0),k(ee,null,ct(s.value,(l,u)=>(h(),k(ee,{key:u},[l.type==="url"?(h(),k("a",{key:0,href:l.href,target:"_blank",rel:"noopener noreferrer nofollow"},N(l.text),9,XP)):(h(),k(ee,{key:1},[S(N(l.text),1)],64))],64))),128))}}),e6={key:0,class:"moonbase:product-license-external-content"},t6={key:1,class:"moonbase:product-license-external-content"},n6={key:2,class:"moonbase:product-license-external-content"},r6={key:3,class:"moonbase:product-license-account-connection"},o6={class:"moonbase:account-provider"},s6=["src"],i6=["data-open"],a6=ae({__name:"ProductLicense",props:{license:{},product:{}},setup(e){const t=ge(),n=V(!1),r=V(null),o=F(()=>r.value&&r.value.$el&&r.value.$el.scrollHeight>r.value.$el.clientHeight);return(s,i)=>(h(),j(rn,{class:"moonbase:product-license"},xi({default:x(()=>[$("div",null,[y(St,null,{default:x(()=>[S(N(e.product.name)+" license ",1)]),_:1}),!e.license.externalFulfillment&&!e.license.requiredConnectedAccount?(h(),j(Ye,{key:0},{default:x(()=>[S(N(e.license.id),1)]),_:1})):q("",!0)])]),_:2},[e.license.externalFulfillment||e.license.fulfillmentMessage||e.license.requiredConnectedAccount?{name:"addon",fn:x(()=>{var a,l;return[typeof e.license.externalFulfillment=="string"?(h(),k("div",e6,[y(Bn,null,{default:x(()=>[...i[1]||(i[1]=[S(" Key code: ",-1)])]),_:1}),$("code",null,N(e.license.externalFulfillment),1)])):((a=e.license.externalFulfillment)==null?void 0:a.type)==="file"?(h(),k("div",t6,[y(Bn,null,{default:x(()=>[...i[2]||(i[2]=[S(" License file ",-1)])]),_:1}),y(ea,{type:"anchor",href:`data:${e.license.externalFulfillment.contentType};base64,${e.license.externalFulfillment.data}`,download:e.license.externalFulfillment.fileName,label:`Download ${e.license.externalFulfillment.fileName}`,variant:"secondary",icon:v(wv)},null,8,["href","download","label","icon"])])):((l=e.license.externalFulfillment)==null?void 0:l.type)==="iLok"?(h(),k("div",n6,[y(Bn,null,{default:x(()=>[y(v(hO)),i[3]||(i[3]=S(" Deposited to your iLok account ",-1))]),_:1})])):e.license.status===v(bu).Pending&&e.license.requiredConnectedAccount==="iLok"?(h(),k("div",r6,[$("div",o6,[$("img",{src:v(Gl),alt:"iLok"},null,8,s6),$("div",null,[y(Ye,null,{default:x(()=>[...i[4]||(i[4]=[S("iLok",-1)])]),_:1}),y(ke,null,{default:x(()=>[...i[5]||(i[5]=[S("Connect your account to receive your license",-1)])]),_:1})])]),y(Oe,{handler:()=>v(t).show(v(G).Customer,v(W).ConnectAccount,{provider_id:v(ri).iLok}),label:"Connect",variant:"primary"},null,8,["handler"])])):q("",!0),e.license.fulfillmentMessage?(h(),k("div",{key:4,class:"moonbase:product-license-fulfillment-message","data-open":n.value||void 0},[y(ke,{ref_key:"messageRef",ref:r},{default:x(()=>[y(JP,{text:e.license.fulfillmentMessage},null,8,["text"])]),_:1},512),!n.value&&o.value?(h(),k("button",{key:0,onClick:i[0]||(i[0]=u=>n.value=!0)},[y(ot,null,{default:x(()=>[...i[6]||(i[6]=[S(" read more ",-1)])]),_:1})])):q("",!0)],8,i6)):q("",!0)]}),key:"0"}:void 0]),1024))}}),l6={class:"moonbase:product-licenses"},u6={key:0,class:"moonbase:loader"},c6={key:1,class:"moonbase:empty"},d6={key:0,class:"moonbase:loader"},f6={key:1,class:"moonbase:product-licenses-activations"},m6={key:0},h6={class:"moonbase:product-licenses-activation-actions"},p6={key:2,class:"moonbase:loader"},v6={key:3,class:"moonbase:product-licenses-licenses"},g6=ae({__name:"ProductLicenses",props:{product:{}},emits:["revoked"],setup(e,{emit:t}){const n=e,r=t,{getProductActivations:o,getProductLicenses:s,revokeActivation:i}=Zo(),a=Kl(),l=V(null),u=V(null),c=V(!0);Fe(async()=>{if(n.product.maxActivations){let f=await o(n.product.id);for(l.value=f.items.map(m=>({...m,revoking:!1}));f.hasMore&&f.next;)f=await o(n.product.id,f.next),l.value.push(...f.items.map(m=>({...m,revoking:!1})))}if(n.product.externalLicenses){let f=await s(n.product.id);for(u.value=f.items;f.hasMore&&f.next;)f=await s(n.product.id,f.next),u.value.push(...f.items)}c.value=!1});async function d(f){try{await i(f),r("revoked",f),l.value&&Zt(1e3).then(()=>{var m,p;return(p=l.value)==null?void 0:p.splice((m=l.value)==null?void 0:m.indexOf(f),1)})}catch(m){if(m instanceof Kt)a.reportProblem("error",{type:m.name,title:m.title,detail:m.detail,status:m.status,errors:m.errors?Object.fromEntries(Object.entries(m.errors).map(([p,g])=>[p,[g]])):void 0,instance:"ProductLicenses.vue:revoke"});else{const p=m;a.reportProblem("error",{type:p.name,title:p.message,instance:"ProductLicenses.vue:revoke"})}throw m}}return(f,m)=>(h(),k("div",l6,[y(Ye,null,{default:x(()=>[m[0]||(m[0]=S(" Licenses ",-1)),e.product.maxActivations&&e.product.maxActivations>0?(h(),j(ke,{key:0},{default:x(()=>[S(N(e.product.currentActivations??0)+" of "+N(e.product.maxActivations)+" seats used ",1)]),_:1})):q("",!0)]),_:1}),c.value?(h(),k("div",u6,[y(It)])):!e.product.numberOfLicenses&&!e.product.subscriptionLicenses?(h(),k("div",c6,[y(ze,null,{default:x(()=>[...m[1]||(m[1]=[S(" You don't own any licenses for this product yet ",-1)])]),_:1}),e.product&&e.product.website?(h(),j(ea,{key:0,type:"anchor",href:e.product.website,label:"Purchase",icon:v(qc)},null,8,["href","icon"])):q("",!0)])):q("",!0),c.value?q("",!0):(h(),k(ee,{key:2},[e.product.maxActivations&&e.product.maxActivations>0&&!e.product.currentActivations?(h(),k("div",d6,[y(v(_v)),y(Ye,null,{default:x(()=>[...m[2]||(m[2]=[S(" No activations yet ",-1)])]),_:1})])):q("",!0),e.product.maxActivations&&l.value?(h(),k("div",f6,[(h(!0),k(ee,null,ct(l.value??[],p=>(h(),j(rn,{key:p.id,class:"moonbase:product-licenses-activation"},xi({default:x(()=>[$("div",null,[y(St,null,{default:x(()=>[...m[3]||(m[3]=[S(" Device ",-1)])]),_:1}),y(Ye,null,{default:x(()=>[S(N(p.name),1)]),_:2},1024)]),$("div",null,[y(St,null,{default:x(()=>[...m[4]||(m[4]=[S(" Activation ",-1)])]),_:1}),y(Ye,null,{default:x(()=>[S(N(p.activationMethod),1)]),_:2},1024)]),p.lastValidatedAt?(h(),k("div",m6,[y(St,null,{default:x(()=>[...m[5]||(m[5]=[S(" First activated ",-1)])]),_:1}),y(Ye,null,{default:x(()=>[S(N(v(wP)(p.firstValidatedAt)),1)]),_:2},1024)])):q("",!0)]),_:2},[p.activationMethod===v($a).Online?{name:"addon",fn:x(()=>[$("div",h6,[y(Oe,{label:"Revoke",variant:"secondary","no-reset":!0,handler:()=>d(p)},null,8,["handler"])])]),key:"0"}:void 0]),1024))),128))])):q("",!0),(!u.value||u.value.length===0)&&!e.product.maxActivations&&(e.product.numberOfLicenses||e.product.subscriptionLicenses)?(h(),k("div",p6,[y(v(_v)),e.product.numberOfLicenses?(h(),j(Ye,{key:0},{default:x(()=>[S(" You own "+N(e.product.numberOfLicenses)+" license"+N(e.product.numberOfLicenses!==1?"s":"")+" for this product ",1)]),_:1})):q("",!0),e.product.subscriptionLicenses?(h(),j(Ye,{key:1},{default:x(()=>[S(" You have "+N(e.product.subscriptionLicenses)+" subscription license"+N(e.product.subscriptionLicenses!==1?"s":"")+" for this product ",1)]),_:1})):q("",!0)])):e.product.externalLicenses&&u.value?(h(),k("div",v6,[(h(!0),k(ee,null,ct((u.value??[]).filter(p=>p.externalFulfillment||p.requiredConnectedAccount),p=>(h(),j(a6,{key:p.id,license:p,product:e.product},null,8,["license","product"]))),128))])):q("",!0)],64))]))}}),b6={class:"moonbase:download-product"},y6={key:0,class:"moonbase:loader"},w6={key:1,class:"moonbase:loader"},_6={key:2,class:"moonbase:loader"},k6={key:3},x6=ae({__name:"Product",setup(e){const t=ge(),n=Ze(),{loaded:r}=Ze(),{getProduct:o}=Zo(),s=V(null),i=V(null),a=V(!0);return Fe(async()=>{const l=t.getParameter("product_id"),u=t.getParameter("version");if(!l){i.value="Link is broken";return}try{s.value=await o(l,u||void 0)}catch(c){i.value=c.message}a.value=!1}),(l,u)=>(h(),k("div",b6,[a.value||!v(r)?(h(),k("div",y6,[y(It)])):i.value?(h(),k("div",w6,N(i.value),1)):s.value?(h(),k("div",k6,[y(BP,{product:s.value},null,8,["product"]),s.value.downloads?(h(),j(QP,{key:0,product:s.value},null,8,["product"])):q("",!0),v(n).user.value?(h(),j(g6,{key:1,product:s.value,onRevoked:u[0]||(u[0]=c=>s.value.currentActivations=(s.value.currentActivations??1)-1)},null,8,["product"])):q("",!0)])):(h(),k("div",_6," Could not find product "))]))}}),E6={class:"moonbase:peek"},C6=["data-visible"],A6={key:1,class:"moonbase:peek-voucher"},O6={key:0,class:"moonbase:peek-voucher-content"},S6={class:"moonbase:peek-voucher-auth"},P6=ae({__name:"Redeem",setup(e){const{peek:t}=Jp(),n=ge(),r=V(null),o=V(null),s=V(n.getParameter("code")||"");async function i(){o.value=null;try{r.value=await t(s.value),n.parameters={code:r.value.code}}catch(u){throw o.value=u,u}}function a(){n.enqueue(G.Customer,W.RedeemVoucher,{code:s.value}),n.show(G.Authentication,W.SignIn)}function l(){n.enqueue(G.Customer,W.RedeemVoucher,{code:s.value}),n.show(G.Authentication,W.SignUp)}return(u,c)=>(h(),k("div",E6,[y(As,{mode:"out-in",name:"moonbase:slide-left"},{default:x(()=>[r.value?(h(),k("div",A6,[$("div",null,[y(ur,null,{default:x(()=>[S(N(r.value.name),1)]),_:1}),r.value.description?(h(),j(Ye,{key:0},{default:x(()=>[S(' "'+N(r.value.description)+'" ',1)]),_:1})):q("",!0),y(ke,null,{default:x(()=>[c[2]||(c[2]=S(" Code: ",-1)),$("strong",null,N(r.value.code),1)]),_:1})]),y(Ye,null,{default:x(()=>[...c[3]||(c[3]=[S(" Voucher summary ",-1)])]),_:1}),r.value.redeemsProducts.length>0||r.value.redeemsBundles.length>0?(h(),k("div",O6,[(h(!0),k(ee,null,ct(r.value.redeemsProducts,({value:d,quantity:f})=>(h(),j(p0,{key:d.id,product:d,quantity:f},null,8,["product","quantity"]))),128)),(h(!0),k(ee,null,ct(r.value.redeemsBundles,({value:d,quantity:f})=>(h(),j(h0,{key:d.id,bundle:d,quantity:f},null,8,["bundle","quantity"]))),128))])):q("",!0),$("div",S6,[y(ze,null,{default:x(()=>[...c[4]||(c[4]=[S(" Sign in or create an account to redeem products ",-1)])]),_:1}),y(Oe,{label:"Sign in",variant:"primary",handler:a}),y(Oe,{label:"Create account",variant:"subtle",handler:l})])])):(h(),j(hn,{key:0,handler:i},{default:x(()=>{var d;return[y(ze,null,{default:x(()=>[...c[1]||(c[1]=[S(" Do you have a voucher you want to redeem? ",-1),$("br",null,null,-1),S(" Please enter the code below: ",-1)])]),_:1}),y(Tt,{modelValue:s.value,"onUpdate:modelValue":c[0]||(c[0]=f=>s.value=f),label:"Voucher code",name:"code",required:"",placeholder:"0000-0000-0000-0000"},null,8,["modelValue"]),y(pn,{label:"Redeem voucher",error:"Error"}),$("span",{class:"moonbase:error","data-visible":!!o.value||void 0},N((d=o.value)==null?void 0:d.message),9,C6)]}),_:1}))]),_:1})]))}}),N6={class:"moonbase:store-closed","data-testid":"moonbase-store-closed"},I6=ae({__name:"StoreClosed",setup(e){const t=ge();return(n,r)=>(h(),k("div",N6,[y(v(Fk)),y(ze,null,{default:x(()=>[...r[0]||(r[0]=[S(" This store has closed. Purchases, downloads and accounts are no longer available here. ",-1)])]),_:1}),y(Oe,{label:"Close",variant:"primary",handler:()=>v(t).reset()},null,8,["handler"])]))}}),T6={class:"moonbase:subscription-content-card-content"},$6=["data-open"],D6={class:"moonbase:subscription-content-card-content"},M6=["data-open"],V6=ae({__name:"ContentCard",props:{subscription:{}},setup(e){const t=V(new Date),n=V(!1),r=V(null),o=F(()=>r.value&&r.value.$el&&r.value.$el.scrollHeight>r.value.$el.clientHeight);return(s,i)=>e.subscription.content.type==="Product"?(h(),j(rn,{key:0,class:"moonbase:subscription-content-card"},{addon:x(()=>[e.subscription.content.product.description?(h(),k("div",{key:0,class:"moonbase:subscription-content-card-description","data-open":n.value||void 0},[y(ke,{ref_key:"descriptionRef",ref:r},{default:x(()=>[S(N(e.subscription.content.product.description),1)]),_:1},512),!n.value&&o.value?(h(),k("button",{key:0,onClick:i[0]||(i[0]=a=>n.value=!0)},[y(ot,null,{default:x(()=>[...i[2]||(i[2]=[S(" read more ",-1)])]),_:1})])):q("",!0)],8,$6)):q("",!0)]),default:x(()=>{var a;return[y(Mt,{url:e.subscription.content.product.iconUrl,size:72},null,8,["url"]),$("div",T6,[y(ur,null,{default:x(()=>{var l;return[S(N((l=e.subscription.content.product)==null?void 0:l.name),1)]}),_:1}),(a=e.subscription.content.product)!=null&&a.tagline?(h(),j(ke,{key:0,class:"moonbase:subscription-content-card-tagline"},{default:x(()=>{var l;return[S(N((l=e.subscription.content.product)==null?void 0:l.tagline),1)]}),_:1})):q("",!0),y(ke,{class:"moonbase:subscription-content-card-expiry"},{default:x(()=>[S(N(e.subscription.status===v(Hr).Active?"Renews":e.subscription.expiresAt>t.value?"Expires":"Expired")+" ",1),$("strong",null,N(v(rs)(e.subscription.expiresAt)),1)]),_:1})])]}),_:1})):(h(),j(rn,{key:1,class:"moonbase:subscription-content-card"},{addon:x(()=>[e.subscription.content.bundle.description?(h(),k("div",{key:0,class:"moonbase:subscription-content-card-description","data-open":n.value||void 0},[y(ke,{ref_key:"descriptionRef",ref:r},{default:x(()=>[S(N(e.subscription.content.bundle.description),1)]),_:1},512),!n.value&&o.value?(h(),k("button",{key:0,onClick:i[1]||(i[1]=a=>n.value=!0)},[y(ot,null,{default:x(()=>[...i[3]||(i[3]=[S(" read more ",-1)])]),_:1})])):q("",!0)],8,M6)):q("",!0)]),default:x(()=>{var a;return[y(Mt,{url:e.subscription.content.bundle.iconUrl,size:72},null,8,["url"]),$("div",D6,[y(ur,null,{default:x(()=>{var l;return[S(N((l=e.subscription.content.bundle)==null?void 0:l.name),1)]}),_:1}),(a=e.subscription.content.bundle)!=null&&a.tagline?(h(),j(ke,{key:0,class:"moonbase:subscription-content-card-tagline"},{default:x(()=>{var l;return[S(N((l=e.subscription.content.bundle)==null?void 0:l.tagline),1)]}),_:1})):q("",!0),y(ke,{class:"moonbase:subscription-content-card-expiry"},{default:x(()=>[S(N(e.subscription.status===v(Hr).Active?"Renews":e.subscription.expiresAt>t.value?"Expires":"Expired")+" ",1),$("strong",null,N(v(rs)(e.subscription.expiresAt)),1)]),_:1})])]}),_:1}))}}),L6={class:"moonbase:milestone-rewards"},R6={class:"moonbase:milestone-rewards-list"},U6={key:0},j6={key:1},B6=ae({__name:"MilestoneRewards",props:{progress:{}},setup(e){return(t,n)=>(h(),k("div",L6,[y(ot,null,{default:x(()=>[...n[0]||(n[0]=[S(" Rewards: ",-1)])]),_:1}),$("div",R6,[(h(!0),k(ee,null,ct(Object.values(e.progress.events).flatMap(r=>r).filter(r=>r.fulfilled),r=>(h(),k("div",{key:r.milestoneId,class:"moonbase:milestone-rewards-item"},[y(ke,null,{default:x(()=>[S(N(r.message),1)]),_:2},1024),r.type==="CouponCodeMilestone"&&r.fulfilled&&r.code?(h(),k("div",U6,[y(St,null,{default:x(()=>[...n[1]||(n[1]=[S(" Your coupon code: ",-1)])]),_:1}),n[2]||(n[2]=$("br",null,null,-1)),$("code",null,N(r.code),1)])):r.type==="PerpetualLicenseConversionMilestone"&&r.fulfilled?(h(),k("div",j6,[y(St,null,{default:x(()=>[y(v(Ql),{class:"moonbase:success-icon"}),n[3]||(n[3]=S(" Your licenses have been converted to perpetual licenses. ",-1))]),_:1})])):q("",!0)]))),128))])]))}}),F6={class:"moonbase:subscription"},q6={key:0,class:"moonbase:loader"},H6={key:1,class:"moonbase:loader"},z6={key:2,class:"moonbase:loader"},W6={key:3},Z6={key:0,class:"moonbase:subscription-milestones"},G6={class:"moonbase:subscription-milestone-progress-title"},Y6={class:"moonbase:subscription-actions"},K6={class:"moonbase:subscription-cancel"},Q6={class:"moonbase:subscription-cancel-reasons"},X6=["value"],J6=["data-corners"],eN=ae({__name:"Subscription",setup(e){const t=ge(),{loaded:n}=Ze(),r=Kl(),o=Fn(),{getSubscription:s,renewSubscription:i,cancelSubscription:a,updateSubscriptionPaymentMethod:l}=Zo(),u=V(null),c=V(new Date),d=V(null),f=V(!0),m=oe(qe),p=V(!1),g=V(null),b=V(""),O=[{value:Eo.TooExpensive,label:"It's too expensive"},{value:Eo.Unused,label:"I don't use it enough"},{value:Eo.MissingFeatures,label:"It's missing something I need"},{value:Eo.TechnicalIssues,label:"I ran into technical problems"},{value:Eo.SwitchedService,label:"I switched to something else"},{value:Eo.Other,label:"Something else"}];Fe(async()=>{const z=t.getParameter("subscription_id");if(!z){d.value="Link is broken";return}try{u.value=await s(z)}catch(L){d.value=L.message}f.value=!1});async function P(){if(!u.value)return;if((await i(u.value.id,{redirect:!1})).completed){const L=await s(u.value.id);Zt(1500).then(()=>u.value=L)}else throw new ts}function I(){g.value=null,b.value="",p.value=!0}async function U(){u.value&&(u.value=await a(u.value.id,{reason:g.value,comment:b.value}),p.value=!1)}async function B(){if(u.value){d.value=null;try{const z=await l(u.value,{returnUrl:`${window.location.pathname}?mb_intent=${W.ManageSubscription}&mb_subscription_id=${u.value.id}`});if(z!=null&&z.completed)u.value=await s(u.value.id);else throw new ts}catch(z){if(d.value=z.message,!(z instanceof ts))if(z instanceof Kt)r.reportProblem("error",{type:z.name,title:z.title,detail:z.detail,status:z.status,errors:z.errors?Object.fromEntries(Object.entries(z.errors).map(([L,T])=>[L,[T]])):void 0,instance:"Subscription.vue:startUpdate"});else{const L=z;r.reportProblem("error",{type:L.name,title:L.message,instance:"Subscription.vue:startUpdate"})}throw z}}}return(z,L)=>{var T;return h(),k("div",F6,[f.value||!v(n)?(h(),k("div",q6,[y(It)])):d.value?(h(),k("div",H6,N(d.value),1)):u.value?(h(),k("div",W6,[y(V6,{subscription:u.value},null,8,["subscription"]),u.value.milestoneProgress?(h(),k("div",Z6,[$("div",G6,[y(ot,null,{default:x(()=>[S(N(u.value.milestoneProgress.title),1)]),_:1}),y(St,null,{default:x(()=>[S(N(u.value.milestoneProgress.currentNormalizedCycleNumber-(u.value.milestoneProgress.currentCycleIsCompleted?0:1))+" / "+N(u.value.milestoneProgress.toNormalizedCycleNumber)+" "+N(v(ta)(u.value.cycleLength))+"s ",1)]),_:1})]),y(v0,{progress:u.value.milestoneProgress},null,8,["progress"]),u.value.milestoneProgress.description?(h(),j(St,{key:0},{default:x(()=>[S(N(u.value.milestoneProgress.description),1)]),_:1})):q("",!0),Object.values(u.value.milestoneProgress.events).flatMap(A=>A).some(A=>A.fulfilled)?(h(),j(B6,{key:1,progress:u.value.milestoneProgress},null,8,["progress"])):q("",!0)])):q("",!0),$("div",Y6,[p.value?(h(),k(ee,{key:0},[$("fieldset",K6,[$("legend",null,[y(ot,null,{default:x(()=>[...L[2]||(L[2]=[S("Mind telling us why you're cancelling?",-1)])]),_:1})]),y(St,null,{default:x(()=>[...L[3]||(L[3]=[S("It's optional, and it helps us improve.",-1)])]),_:1}),$("div",Q6,[(h(),k(ee,null,ct(O,A=>$("label",{key:A.value},[Qm($("input",{"onUpdate:modelValue":L[0]||(L[0]=E=>g.value=E),type:"radio",name:"mb-cancellation-reason",value:A.value},null,8,X6),[[a_,g.value]]),$("span",null,N(A.label),1)])),64))]),L[4]||(L[4]=$("label",{for:"mb-cancellation-comment",class:"moonbase:sr-only"},"Anything else you'd like to share?",-1)),Qm($("textarea",{id:"mb-cancellation-comment","onUpdate:modelValue":L[1]||(L[1]=A=>b.value=A),name:"mb-cancellation-comment",rows:"3",maxlength:"1000",placeholder:"Anything else you'd like to share?","data-corners":(T=v(m))==null?void 0:T.theme.corners},null,8,J6),[[i_,b.value]])]),y(Oe,{label:"Cancel subscription",variant:"danger",handler:U}),y(Oe,{label:"Keep subscription",variant:"secondary",handler:()=>p.value=!1},null,8,["handler"]),y(St,null,{default:x(()=>[S(" You can keep using the products until "+N(v(rs)(u.value.expiresAt))+", and you won't be charged again. ",1)]),_:1})],64)):u.value.status===v(Hr).Active?(h(),k(ee,{key:1},[y(Oe,{label:"Update payment method",variant:"secondary",handler:B}),y(Oe,{label:"Cancel subscription",variant:"danger",handler:I}),y(St,null,{default:x(()=>[L[6]||(L[6]=S(" Cancelling a subscription will let you use the products to the end of the current period, after which you will lose access. If you want to continue using the products later, you may simply renew this subscription whenever you wish. You are currently paying ",-1)),$("strong",null,N(v(o)(u.value.total.due)),1),S(" per "+N(v(ta)(u.value.cycleLength))+" for this subscription",1),u.value.paymentMethod?(h(),k(ee,{key:0},[L[5]||(L[5]=S(" using payment method ",-1)),$("strong",null,N(u.value.paymentMethod),1)],64)):q("",!0),L[7]||(L[7]=S(". ",-1))]),_:1})],64)):u.value.status===v(Hr).Completed?(h(),j(St,{key:2},{default:x(()=>[y(v(Ql),{class:"moonbase:success-icon"}),L[8]||(L[8]=S(" This subscription has been completed, and cannot be renewed. ",-1))]),_:1})):(h(),k(ee,{key:3},[u.value.nextPaymentScheduledAt&&u.value.cancellable?(h(),k(ee,{key:0},[y(Oe,{label:"Continue subscription",variant:"primary",handler:P}),y(Oe,{label:"Cancel subscription",variant:"danger",handler:I}),y(St,null,{default:x(()=>[S(" We could not renew this subscription on the expiry date, the next attempt will be "+N(v(rs)(u.value.nextPaymentScheduledAt))+". To make sure you can use your products un-interrupted, continue the subscription, or cancel it if you do not wish to keep using these products. ",1)]),_:1})],64)):(h(),k(ee,{key:1},[y(Oe,{label:"Continue subscription",variant:"primary",handler:P}),y(St,null,{default:x(()=>[S(" This subscription has been stopped, and "+N(u.value.expiresAt>c.value?"expires":"expired")+" "+N(v(rs)(u.value.expiresAt))+". If you want to continue using the products after this date, you may continue the subscription to regain access. ",1)]),_:1})],64))],64))])])):(h(),k("div",z6," Could not find subscription "))])}}}),tN=ae({__name:"App",setup(e){const t=oe(qe),n=oe(bt),r=ge();We(()=>[r.active,r.intent,r.parameters],([s,i,a])=>{_e("UI updated",{view:s,intent:i,parameters:Se(a)})}),We(()=>t==null?void 0:t.value.theme.colors.primary,s=>{if(!s)return;let i=s;typeof i=="string"&&(i=Object.fromEntries($C(i).map(a=>[a.number<=100||a.number===950?a.number-50:a.number-100,a.hexcode]))),document.documentElement.style.setProperty("--moonbase-brand-50",i[50]??""),document.documentElement.style.setProperty("--moonbase-brand-100",i[100]??""),document.documentElement.style.setProperty("--moonbase-brand-200",i[200]??""),document.documentElement.style.setProperty("--moonbase-brand-300",i[300]??""),document.documentElement.style.setProperty("--moonbase-brand-400",i[400]??""),document.documentElement.style.setProperty("--moonbase-brand-500",i[500]??""),document.documentElement.style.setProperty("--moonbase-brand-600",i[600]??""),document.documentElement.style.setProperty("--moonbase-brand-700",i[700]??""),document.documentElement.style.setProperty("--moonbase-brand-800",i[800]??""),document.documentElement.style.setProperty("--moonbase-brand-900",i[900]??"")},{immediate:!0}),We(()=>t==null?void 0:t.value.theme.dark,s=>{s?document.documentElement.classList.add("moonbase:dark"):document.documentElement.classList.remove("moonbase:dark")},{immediate:!0}),We(()=>r.active!==G.None,s=>{s?document.body.classList.add("moonbase:drawer-open"):document.body.classList.remove("moonbase:drawer-open")},{immediate:!0});const{promotionSlot:o}=k5();return M5(),I5(),s5(),o5(),r5(),(s,i)=>{var a;return h(),k(ee,null,[(a=v(t))!=null&&a.toolbar.enabled?(h(),j(t5,{key:0})):q("",!0),y(Zx,{container:v(o)},null,8,["container"]),y(Ex,null,{default:x(()=>{var l;return[(l=v(n))!=null&&l.closed.value?(h(),j(I6,{key:0})):v(r).active===v(G).Cart?(h(),j(n3,{key:1})):v(r).active===v(G).Authentication?(h(),j(XA,{key:2})):v(r).active===v(G).CommunicationPreferences?(h(),j(y3,{key:3})):v(r).active===v(G).Activation?(h(),j(oA,{key:4})):v(r).active===v(G).Product?(h(),j(x6,{key:5})):v(r).active===v(G).Subscription?(h(),j(eN,{key:6})):v(r).active===v(G).Customer?(h(),j(IP,{key:7})):v(r).active===v(G).Redeem?(h(),j(P6,{key:8})):v(r).active===v(G).Groups?(h(),j(RP,{key:9})):v(r).active===v(G).About?(h(),j(a4,{key:10})):q("",!0)]}),_:1})],64)}}});function nN(e){return!!e&&typeof e=="object"&&e.__moonbaseStub===!0&&Array.isArray(e.__queue)}function S0(e,t){const n=t;for(const r of Object.keys(t)){if(r==="__moonbaseStub"||r==="__queue")continue;const o=e[r];typeof o=="function"&&(n[r]=(...s)=>o.apply(e,s))}}function Vd(e,t){try{const n=e[t.method];if(typeof n!="function"){t.reject(new Error(`Moonbase.${t.method} is not a function`));return}Promise.resolve(n.apply(e,t.args)).then(t.resolve,t.reject)}catch(n){t.reject(n)}}async function rN(e,t){const n=t.__queue,r=n.findIndex(f=>f.method==="setup"),o=n.filter(f=>f.method==="on"),s=r>=0?n.slice(0,r).filter(f=>f.method==="configure"):[],i=n.filter(f=>f.method==="setup"),a=new Set(s),l=n.filter(f=>f.method!=="on"&&f.method!=="setup"&&!a.has(f));o.forEach(f=>Vd(e,f)),typeof document<"u"&&document.readyState==="loading"&&await new Promise(f=>{document.addEventListener("DOMContentLoaded",()=>f(),{once:!0})});for(const f of s)Vd(e,f);i.length>1&&console.warn("Multiple Moonbase.setup() calls queued; only the first will be honored");const[u,...c]=i;let d;if(u)try{await Promise.resolve(e.setup(...u.args)),u.resolve(void 0)}catch(f){d=f,u.reject(f)}for(const f of c)f.reject(new Error("Moonbase.setup() was already called"));if(d){for(const f of l)f.reject(d);S0(e,t);return}l.forEach(f=>Vd(e,f)),S0(e,t)}function oN(e){const t=e==null?void 0:e.__heldForms;if(!(!e||!t)){e.__heldForms=void 0;for(const n of t)n.isConnected&&(typeof n.requestSubmit=="function"?n.requestSubmit():n.dispatchEvent(new Event("submit",{bubbles:!0,cancelable:!0})))}}function Ld(e,t){var r,o;const n=(r=e.total)==null?void 0:r.due.amount;return typeof n=="number"&&e.quantity>0?n/e.quantity:((o=e.price)==null?void 0:o[t])??0}function Ks(e,t){var n,r;return e.type==="Bundle"?{id:e.bundleId,name:((n=e.bundle)==null?void 0:n.name)??e.bundleId,price:Ld(e,t),quantity:e.quantity,variationId:e.variationId}:{id:e.productId,name:((r=e.product)==null?void 0:r.name)??e.productId,price:Ld(e,t),quantity:e.quantity,variationId:e.variationId}}function cr(e){const t=e.currency;return e.items.map(n=>Ks(n,t))}function ia(e){return Ld(e.item,e.currency)*e.item.quantity}function aa(e){var t;return((t=e.total)==null?void 0:t.due.amount)??0}function la(e){var t;return((t=e.order.total)==null?void 0:t.due.amount)??e.total.amount}const P0=new Set;function Ur(e,t){P0.has(e)||(P0.add(e),console.warn(`[moonbase] Integration "${e}" is enabled but ${t} was not found on the page when an event fired. If your consent layer loads it later, this is expected and forwarding will resume once it appears. Otherwise, check that the ${t} snippet is installed.`))}function ut(e,t){const n=r=>t(r.detail);return window.addEventListener(`moonbase-storefront-${e}`,n),()=>window.removeEventListener(`moonbase-storefront-${e}`,n)}function N0(){const e=window.gtag;return typeof e=="function"?e:void 0}function Rd(e){return e.map(t=>({item_id:t.id,item_name:t.name,price:t.price,quantity:t.quantity,...t.variationId?{item_variant:t.variationId}:{}}))}function sN(e){const t=[];function n(o,s){const i=N0();if(!i){Ur("googleAnalytics","window.gtag"),_e(`GA4: window.gtag missing, skipping ${o}`);return}i("event",o,s)}function r(o){const s=N0();if(!s){Ur("googleAnalytics","window.gtag"),_e("GA4: window.gtag missing, skipping user_id config");return}s("config",e.measurementId,{user_id:o})}return{start(){t.push(ut(Ce.AddedToCart,o=>{const s=Ks(o.item,o.currency);n("add_to_cart",{currency:o.currency,value:ia(o),items:Rd([s])})})),t.push(ut(Ce.CheckoutInitiated,o=>{n("begin_checkout",{currency:o.total.currency,value:la(o),items:Rd(cr(o.order))})})),t.push(ut(Ce.CheckoutCompleted,o=>{n("purchase",{transaction_id:o.order.id,currency:o.order.currency,value:aa(o.order),items:Rd(cr(o.order))})})),t.push(ut(Ce.SignedIn,o=>{o.user.id&&r(o.user.id),n("login",{method:"moonbase"})})),t.push(ut(Ce.SignedUp,o=>{o.user.id&&r(o.user.id),n("sign_up",{method:"moonbase"})})),t.push(ut(Ce.SignedOut,()=>{r(null)}))},stop(){for(const o of t)o();t.length=0}}}function iN(){const e=window.dataLayer;if(!(!e||typeof e.push!="function"))return e}function Ud(e){return e.map(t=>({item_id:t.id,item_name:t.name,price:t.price,quantity:t.quantity,...t.variationId?{item_variant:t.variationId}:{}}))}function aN(e){const t=[];function n(r){const o=iN();if(!o){Ur("googleTagManager","window.dataLayer"),_e(`GTM: window.dataLayer missing, skipping ${String(r.event)}`);return}"ecommerce"in r&&o.push({ecommerce:null}),o.push(r)}return{start(){t.push(ut(Ce.AddedToCart,r=>{const o=Ks(r.item,r.currency);n({event:"add_to_cart",ecommerce:{currency:r.currency,value:ia(r),items:Ud([o])}})})),t.push(ut(Ce.CheckoutInitiated,r=>{n({event:"begin_checkout",ecommerce:{currency:r.total.currency,value:la(r),items:Ud(cr(r.order))}})})),t.push(ut(Ce.CheckoutCompleted,r=>{n({event:"purchase",ecommerce:{transaction_id:r.order.id,currency:r.order.currency,value:aa(r.order),items:Ud(cr(r.order))}})})),t.push(ut(Ce.SignedIn,r=>{n({event:"login",method:"moonbase",user_id:r.user.id})})),t.push(ut(Ce.SignedUp,r=>{n({event:"sign_up",method:"moonbase",user_id:r.user.id})})),t.push(ut(Ce.SignedOut,()=>{n({event:"logout",user_id:null})}))},stop(){for(const r of t)r();t.length=0}}}function I0(){const e=window.klaviyo;if(!e)return;const t=typeof e.identify=="function"&&typeof e.track=="function",n=typeof e.push=="function";return t||n?e:void 0}function lN(e){const t=[];function n(o,s){var a;const i=I0();if(!i){Ur("klaviyo","window.klaviyo"),_e(`Klaviyo: window.klaviyo missing, skipping ${o}`);return}typeof i.track=="function"?i.track(o,s):(a=i.push)==null||a.call(i,["track",o,s])}function r(o){var i;if(!o.email)return;const s=I0();if(!s){Ur("klaviyo","window.klaviyo"),_e("Klaviyo: window.klaviyo missing, skipping identify");return}typeof s.identify=="function"?s.identify({email:o.email,...o.name?{first_name:o.name}:{},...o.id?{external_id:o.id}:{}}):(i=s.push)==null||i.call(s,["identify",{$email:o.email,...o.name?{$first_name:o.name}:{},...o.id?{$id:o.id}:{}}])}return{start(){t.push(ut(Ce.AddedToCart,o=>{const s=Ks(o.item,o.currency);n("Added to Cart",{$value:ia(o),AddedItemProductName:s.name,AddedItemProductID:s.id,AddedItemQuantity:s.quantity,AddedItemPrice:s.price,Currency:o.currency})})),t.push(ut(Ce.CheckoutInitiated,o=>{const s=cr(o.order);n("Started Checkout",{$event_id:o.order.id,$value:la(o),ItemNames:s.map(i=>i.name),ProductIDs:s.map(i=>i.id),Items:s,Currency:o.total.currency})})),t.push(ut(Ce.CheckoutCompleted,o=>{const s=cr(o.order);n("Placed Order",{$event_id:o.order.id,$value:aa(o.order),ItemNames:s.map(i=>i.name),ProductIDs:s.map(i=>i.id),Items:s,Currency:o.order.currency})})),t.push(ut(Ce.SignedIn,o=>{r({email:o.user.email,name:o.user.name??void 0,id:o.user.id})})),t.push(ut(Ce.SignedUp,o=>{r({email:o.user.email,name:o.user.name??void 0,id:o.user.id})})),t.push(ut(Ce.SignedOut,()=>{_e("Klaviyo: sign-out received; onsite profile persists (no identify reset API)")}))},stop(){for(const o of t)o();t.length=0}}}function T0(){const e=window.fbq;return typeof e=="function"?e:void 0}function uN(e){const t=[];function n(o,s,i){const a=T0();if(!a){Ur("metaPixel","window.fbq"),_e(`Meta Pixel: window.fbq missing, skipping ${o}`);return}i?a("track",o,s,i):a("track",o,s)}function r(o){if(!o)return;const s=T0();if(!s){Ur("metaPixel","window.fbq"),_e("Meta Pixel: window.fbq missing, skipping advanced match");return}s("init",e.pixelId,{em:o})}return{start(){t.push(ut(Ce.AddedToCart,o=>{const s=Ks(o.item,o.currency);n("AddToCart",{value:ia(o),currency:o.currency,content_ids:[s.id],content_type:"product_group",contents:[{id:s.id,quantity:s.quantity,item_price:s.price}]})})),t.push(ut(Ce.CheckoutInitiated,o=>{const s=cr(o.order);n("InitiateCheckout",{value:la(o),currency:o.total.currency,num_items:s.reduce((i,a)=>i+a.quantity,0),content_ids:s.map(i=>i.id),contents:s.map(i=>({id:i.id,quantity:i.quantity,item_price:i.price}))},{eventID:o.order.id})})),t.push(ut(Ce.CheckoutCompleted,o=>{const s=cr(o.order);n("Purchase",{value:aa(o.order),currency:o.order.currency,content_ids:s.map(i=>i.id),contents:s.map(i=>({id:i.id,quantity:i.quantity,item_price:i.price}))},{eventID:o.order.id})})),t.push(ut(Ce.SignedIn,o=>{r(o.user.email)})),t.push(ut(Ce.SignedUp,o=>{r(o.user.email),n("CompleteRegistration")})),t.push(ut(Ce.SignedOut,()=>{_e("Meta Pixel: sign-out received; advanced-match identity persists (no per-user logout API)")}))},stop(){for(const o of t)o();t.length=0}}}function $0(){const e=window.ttq;if(!(!e||typeof e.track!="function"||typeof e.identify!="function"))return e}function jd(e){return e.map(t=>({content_id:t.id,content_name:t.name,quantity:t.quantity,price:t.price}))}function cN(e){const t=[];function n(o,s,i){const a=$0();if(!a){Ur("tiktokPixel","window.ttq"),_e(`TikTok Pixel: window.ttq missing, skipping ${o}`);return}i?a.track(o,s,i):a.track(o,s)}function r(o){if(!o.email)return;const s=$0();if(!s){Ur("tiktokPixel","window.ttq"),_e("TikTok Pixel: window.ttq missing, skipping identify");return}s.identify({email:o.email,external_id:o.id})}return{start(){const o="product_group";t.push(ut(Ce.AddedToCart,s=>{const i=Ks(s.item,s.currency);n("AddToCart",{value:ia(s),currency:s.currency,content_type:o,contents:jd([i])})})),t.push(ut(Ce.CheckoutInitiated,s=>{n("InitiateCheckout",{value:la(s),currency:s.total.currency,content_type:o,order_id:s.order.id,contents:jd(cr(s.order))},{event_id:s.order.id})})),t.push(ut(Ce.CheckoutCompleted,s=>{n("CompletePayment",{value:aa(s.order),currency:s.order.currency,content_type:o,order_id:s.order.id,contents:jd(cr(s.order))},{event_id:s.order.id})})),t.push(ut(Ce.SignedIn,s=>{r({email:s.user.email,id:s.user.id})})),t.push(ut(Ce.SignedUp,s=>{r({email:s.user.email,id:s.user.id}),n("CompleteRegistration")})),t.push(ut(Ce.SignedOut,()=>{_e("TikTok Pixel: sign-out received; identity persists (no logout API)")}))},stop(){for(const o of t)o();t.length=0}}}const D0={metaPixel:uN,googleAnalytics:sN,googleTagManager:aN,klaviyo:lN,tiktokPixel:cN};class dN{constructor(){Wn(this,"active",new Map)}sync(t){const n=Object.keys(D0);for(const r of n){const o=t[r],s=this.active.get(r);if(!o){s&&(_e(`Stopping integration: ${r}`),s.instance.stop(),this.active.delete(r));continue}const i=JSON.stringify(o);if(s&&s.configKey===i)continue;s?(_e(`Restarting integration with new config: ${r}`),s.instance.stop()):_e(`Starting integration: ${r}`);const a=D0[r],l=a(o);l.start(),this.active.set(r,{configKey:i,instance:l})}}stopAll(){for(const[t,n]of this.active)_e(`Stopping integration: ${t}`),n.instance.stop();this.active.clear()}}function fN(e,t){let n;try{n=new URL(e)}catch{return null}if(n.protocol!=="https:"&&n.protocol!=="http:")return null;const r=n.hostname,o=r==="localhost"||r==="127.0.0.1";let s=!1;if(t)try{s=new URL(t).origin===n.origin}catch{}return!s&&!o?null:n.toString()}const mN=/^(https:\/\/[a-z0-9-]+\.(?:beta\.)?moonbase\.sh)[/?#]/;function hN(e){const t=mN.exec(e);return(t==null?void 0:t[1])??e}const ou=Symbol("url"),M0=Symbol("moonbase_instance"),dr=(e,t)=>window.dispatchEvent(new CustomEvent(`moonbase-storefront-${e}`,{detail:Av(t)})),zn=Symbol("event-emitter");let V0;class pN{constructor(){Wn(this,"initialized",!1);Wn(this,"pinia");Wn(this,"storefront");Wn(this,"url");Wn(this,"options");Wn(this,"integrations",new dN);Wn(this,"completedOrderIds",new Set)}async setup(t,n){var u,c;if(typeof window>"u")throw console.error("Moonbase setup must be done client-side"),new Error("Moonbase setup must be done client-side");if(globalThis.MoonbaseCSS&&globalThis.MoonbaseCSS.inject(),document.getElementById("moonbase")){console.warn("Moonbase has already been initialized!");return}document.querySelector('meta[name="viewport"]')||console.warn('Moonbase: no <meta name="viewport"> on the host page. The widget may render unexpectedly on mobile devices.'),_e("Given options:",n),this.options=V(Cv(((u=this.options)==null?void 0:u.value)??Ev,n)),_e("Merged options:",this.options.value),We(()=>{var d;return(d=this.options)==null?void 0:d.value.pricing},d=>{I_(d&&{...d})},{immediate:!0,deep:!0});const r=document.createElement("div");r.id="moonbase",r.classList.add("moonbase");const o=this.options.value.target??document.body;_e("Mounting to target element",o),o.append(r);const s=hN(t);s!==t&&console.warn(`Moonbase url set up incorrectly, should be ${s}, was ${t}`),this.storefront=uk(s),We(()=>{var d;return((d=this.options)==null?void 0:d.value.cart.offers.autoApply)??!1},d=>{var f;(f=this.storefront)!=null&&f.autoApplyItemOffers&&(this.storefront.autoApplyItemOffers.value=d)},{immediate:!0}),this.url=s,_e("Captured UTM + referrer:",this.storefront.utm.value),this.pinia=Dk(),m_(tN).use(this.storefront).use(this.pinia).provide(qe,this.options).provide(ou,s.replace(/\/$/,"")).provide(zn,dr).provide(M0,this).mount("#moonbase"),this.initialized=!0,window&&window.location&&this.handleLocationIntent(window.location);const a=ge(this.pinia),l=Ze(this.storefront);this.storefront.onStorefrontUpdated(d=>{dr(Ce.StorefrontUpdated,{storefront:d,user:l.user.value})}),(c=this.storefront)==null||c.onCheckoutInitiated((d,f)=>{dr(Ce.CheckoutInitiated,{order:d,total:f,user:l.user.value})}),this.storefront.onCheckoutClosed(d=>{dr(Ce.CheckoutClosed,{order:this.storefront.currentOrder.value,user:l.user.value}),d===W.ViewProducts&&(l.user.value?a.show(G.Customer,W.ViewProducts):a.show(G.Cart,W.ViewCart))}),this.storefront.onCheckoutCompleted(d=>{if(this.completedOrderIds.has(d.id)){_e("Ignoring duplicate checkout-completed for order",d.id);return}this.completedOrderIds.add(d.id),dr(Ce.CheckoutCompleted,{order:d,user:l.user.value})}),this.integrations.sync(this.options.value.integrations),oN(V0)}configure(t){var r;_e("Given options:",t);const n=Cv(((r=this.options)==null?void 0:r.value)??Ev,t);_e("Merged options:",n),this.options?this.options.value=n:this.options=V(n),this.integrations.sync(n.integrations)}on(t,n){window.addEventListener(`moonbase-storefront-${t}`,r=>n(r.detail))}handleLocationIntent(t){const n=new URLSearchParams(t.search),r=n.get("mb_intent");if(r&&Object.values(W).includes(r)){const o=dg(n);if(r===W.Checkout&&o.complete)return;this[r](o);for(const i of Object.keys(o))n.delete(`mb_${i}`);const s=new URL(t.href);s.search=n.toString(),window.history.replaceState(null,"",s.toString())}}sign_in(t){if(!this.initialized)throw new Error("Moonbase has not been set up yet");ge(this.pinia).show(G.Authentication,W.SignIn,t)}sign_up(t){var r;if(!this.initialized)throw new Error("Moonbase has not been set up yet");if(!((r=this.options)!=null&&r.value.auth.signUp.enabled))throw new Error("Sign ups are not enabled");ge(this.pinia).show(G.Authentication,W.SignUp,t)}forgot_password(t){if(!this.initialized)throw new Error("Moonbase has not been set up yet");ge(this.pinia).show(G.Authentication,W.ForgotPassword,t)}reset_password(t){if(!this.initialized)throw new Error("Moonbase has not been set up yet");ge(this.pinia).show(G.Authentication,W.ResetPassword,t)}confirm_account(t){if(!this.initialized)throw new Error("Moonbase has not been set up yet");ge(this.pinia).show(G.Authentication,W.ConfirmAccount,t)}confirm_email(t){if(!this.initialized)throw new Error("Moonbase has not been set up yet");ge(this.pinia).show(G.Authentication,W.ConfirmEmail,t)}confirm_email_change(t){if(!this.initialized)throw new Error("Moonbase has not been set up yet");const n=ge(this.pinia);Ze(this.storefront).user.value?n.show(G.Authentication,W.ConfirmEmailChange,t):(n.enqueue(G.Authentication,W.ConfirmEmailChange,t),n.show(G.Authentication,W.SignIn))}subscribe(t){if(!this.initialized)throw new Error("Moonbase has not been set up yet");ge(this.pinia).show(G.CommunicationPreferences,W.Subscribe,P5(t))}confirm_communication_preferences(t){if(!this.initialized)throw new Error("Moonbase has not been set up yet");ge(this.pinia).show(G.CommunicationPreferences,W.ConfirmCommunicationPreferences,t)}manage_communication_preferences(t){if(!this.initialized)throw new Error("Moonbase has not been set up yet");ge(this.pinia).show(G.CommunicationPreferences,W.ManageCommunicationPreferences,t)}connect_account(t){if(!this.initialized)throw new Error("Moonbase has not been set up yet");if(t!=null&&t.provider_id){const s=Object.values(ri).find(i=>i.toLowerCase()===t.provider_id.toLowerCase());s&&(t.provider_id=s)}const n=ge(this.pinia),r=Ze(this.storefront),o=t;r.user.value?n.show(G.Customer,W.ConnectAccount,o):(n.enqueue(G.Customer,W.ConnectAccount,o),n.show(G.Authentication,W.SignIn))}join_group(t){if(!this.initialized)throw new Error("Moonbase has not been set up yet");const n=ge(this.pinia),r=Ze(this.storefront),o=t;r.user.value?n.show(G.Groups,W.JoinGroup,o):(n.enqueue(G.Groups,W.JoinGroup,o),n.show(G.Authentication,W.SignIn))}view_account(){if(!this.initialized)throw new Error("Moonbase has not been set up yet");const t=ge(this.pinia);Ze(this.storefront).user.value?t.show(G.Customer,W.ViewAccount):(t.enqueue(G.Customer,W.ViewAccount),t.show(G.Authentication,W.SignIn))}view_products(){if(!this.initialized)throw new Error("Moonbase has not been set up yet");const t=ge(this.pinia);Ze(this.storefront).user.value?t.show(G.Customer,W.ViewProducts):(t.enqueue(G.Customer,W.ViewProducts),t.show(G.Authentication,W.SignIn))}view_subscriptions(){if(!this.initialized)throw new Error("Moonbase has not been set up yet");const t=ge(this.pinia);Ze(this.storefront).user.value?t.show(G.Customer,W.ViewSubscriptions):(t.enqueue(G.Customer,W.ViewSubscriptions),t.show(G.Authentication,W.SignIn))}redeem_voucher(t){if(!this.initialized)throw new Error("Moonbase has not been set up yet");const n=ge(this.pinia);Ze(this.storefront).user.value?n.show(G.Customer,W.RedeemVoucher,t):n.show(G.Redeem,W.RedeemVoucher,t)}view_product(t){if(!this.initialized)throw new Error("Moonbase has not been set up yet");ge(this.pinia).show(G.Product,W.ViewProduct,t)}download_product(t){if(!this.initialized)throw new Error("Moonbase has not been set up yet");ge(this.pinia).show(G.Product,W.DownloadProduct,t)}activate_product(t){if(!this.initialized)throw new Error("Moonbase has not been set up yet");const n=ge(this.pinia),r=Ze(this.storefront);!(t!=null&&t.token)&&!r.user.value?(n.enqueue(G.Activation,W.ActivateProduct,t),n.show(G.Authentication,W.SignIn)):n.show(G.Activation,W.ActivateProduct,t)}manage_subscription(t){if(!this.initialized)throw new Error("Moonbase has not been set up yet");const n=ge(this.pinia);Ze(this.storefront).user.value?n.show(G.Subscription,W.ManageSubscription,t):(n.enqueue(G.Subscription,W.ManageSubscription,t),n.show(G.Authentication,W.SignIn))}view_cart(){if(!this.initialized)throw new Error("Moonbase has not been set up yet");ge(this.pinia).show(G.Cart,W.ViewCart)}async add_to_cart(t){var s,i,a,l,u,c,d,f,m,p,g,b,O,P,I,U,B,z;if(!this.initialized)throw new Error("Moonbase has not been set up yet");if(!(t!=null&&t.product_id)&&!(t!=null&&t.bundle_id))throw new Error("You need to provide a product or bundle ID when adding to cart");const n=Un(this.storefront),r=Ze(this.storefront),o=t.offer_id?rk(t.offer_id):null;if(t!=null&&t.product_id){const L=Ui(t.product_id,this.storefront);if(L.value){let T=n.addToCart(L.value,(s=L.value.variations)==null?void 0:s.find(E=>E.id===t.variation_id),(o==null?void 0:o.value)||void 0);const A=((i=T.price)==null?void 0:i[n.currency.value])===0;t!=null&&t.quantity&&(T=n.setQuantity(T,T.quantity+t.quantity-1)),(A?((a=this.options)==null?void 0:a.value.cart.leadMagnets.quantity)==="single":((l=this.options)==null?void 0:l.value.cart.quantity)==="single")&&(T=n.setQuantity(T,1)),dr(Ce.AddedToCart,{item:T,currency:n.currency.value,user:r.user.value})}else{await this.storefront.loadedStorefrontPromise;const T=Ui(t.product_id,this.storefront);if(T.value){let A=n.addToCart(T.value,(u=T.value.variations)==null?void 0:u.find(w=>w.id===t.variation_id),(o==null?void 0:o.value)||void 0);const E=((c=A.price)==null?void 0:c[n.currency.value])===0;t!=null&&t.quantity&&(A=n.setQuantity(A,A.quantity+t.quantity-1)),(E?((d=this.options)==null?void 0:d.value.cart.leadMagnets.quantity)==="single":((f=this.options)==null?void 0:f.value.cart.quantity)==="single")&&(A=n.setQuantity(A,1)),dr(Ce.AddedToCart,{item:A,currency:n.currency.value,user:r.user.value})}else throw new Error(`Product '${t.product_id}' not found`)}}if(t!=null&&t.bundle_id){const L=kl(t.bundle_id,this.storefront);if(L.value){const T=(m=L.value.variations)==null?void 0:m.find(w=>w.id===t.variation_id);let A=n.addToCart(L.value,T,(o==null?void 0:o.value)||void 0,{bundleBehaviour:(p=this.options)==null?void 0:p.value.cart.bundles.onAdd});const E=((g=A.price)==null?void 0:g[n.currency.value])===0;t!=null&&t.quantity&&(A=n.setQuantity(A,A.quantity+t.quantity-1)),(E?((b=this.options)==null?void 0:b.value.cart.leadMagnets.quantity)==="single":((O=this.options)==null?void 0:O.value.cart.quantity)==="single")&&(A=n.setQuantity(A,1)),dr(Ce.AddedToCart,{item:A,currency:n.currency.value,user:r.user.value})}else{await this.storefront.loadedStorefrontPromise;const T=kl(t.bundle_id,this.storefront);if(T.value){const A=(P=T.value.variations)==null?void 0:P.find(_=>_.id===t.variation_id);let E=n.addToCart(T.value,A,(o==null?void 0:o.value)||void 0,{bundleBehaviour:(I=this.options)==null?void 0:I.value.cart.bundles.onAdd});const w=((U=E.price)==null?void 0:U[n.currency.value])===0;t!=null&&t.quantity&&(E=n.setQuantity(E,E.quantity+t.quantity-1)),(w?((B=this.options)==null?void 0:B.value.cart.leadMagnets.quantity)==="single":((z=this.options)==null?void 0:z.value.cart.quantity)==="single")&&(E=n.setQuantity(E,1)),dr(Ce.AddedToCart,{item:E,currency:n.currency.value,user:r.user.value})}else throw new Error(`Bundle '${t.bundle_id}' not found`)}}(t==null?void 0:t.show_cart)!==!1&&ge(this.pinia).show(G.Cart,W.AddToCart)}async purchase(t){var a,l,u,c,d,f,m,p;if(!this.initialized)throw new Error("Moonbase has not been set up yet");(a=this.storefront)!=null&&a.loadedStorefront.value||await((l=this.storefront)==null?void 0:l.loadedStorefrontPromise);const n=t?Array.isArray(t)?t:[t]:[];if(n.length===0)throw new Error("No items given to purchase");const r=(u=n.find(g=>g.coupon_code))==null?void 0:u.coupon_code,o=[];for(const g of n){if(!g.product_id&&!g.bundle_id)throw new Error("You need to provide a product or bundle ID when purchasing");if(g.product_id){const b=Ui(g.product_id,this.storefront);if(b.value)o.push({item:b.value,variation:(c=b.value.variations)==null?void 0:c.find(O=>O.id===g.variation_id),quantity:g.quantity});else throw new Error(`Product '${g.product_id}' not found`)}if(g.bundle_id){const b=kl(g.bundle_id,this.storefront);if(b.value)o.push({item:b.value,variation:(d=b.value.variations)==null?void 0:d.find(O=>O.id===g.variation_id),quantity:g.quantity});else throw new Error(`Bundle '${g.bundle_id}' not found`)}}const s=Ze(this.storefront),i=((f=this.options)==null?void 0:f.value.checkout.redirect)??"auto";_e("Purchase intent:",{items:o,utm:(m=this.storefront)==null?void 0:m.utm.value,checkout:$c(i),couponCode:r}),await nk(o,{redirect:i,couponCode:r,groupIds:(p=this.options)==null?void 0:p.value.groups.checkout,onCouponRejected:(g,b)=>{_e("Coupon rejected at purchase time:",g,b),dr(Ce.CouponRejected,{code:g,user:s.user.value})}},this.storefront)}checkout(t){if(!this.initialized)throw new Error("Moonbase has not been set up yet");if(!(t!=null&&t.complete)){if(t!=null&&t.url){const n=fN(t.url,this.url);if(!n){console.error("Moonbase: refusing to host checkout URL from a disallowed origin:",t.url);return}_e("Checkout intent (hosted URL):",n),Li(n);return}this.checkoutCart()}}async checkoutCart(){var s,i,a,l,u,c;const t=((s=this.options)==null?void 0:s.value.cart.minimumTotal)??{};Object.keys(t).length>0&&await((i=this.storefront)==null?void 0:i.loadedStorefrontPromise);const n=Un(this.storefront),r=i0(t,n.total.value,n.items.value.length);if(r){_e("Checkout intent below the minimum total, showing the cart instead:",r),ge(this.pinia).show(G.Cart,W.Checkout);return}const o=((a=this.options)==null?void 0:a.value.checkout.redirect)??"auto";_e("Checkout intent:",{order:(l=this.storefront)==null?void 0:l.currentOrder.value,utm:(u=this.storefront)==null?void 0:u.utm.value,checkout:$c(o)}),n.checkout({redirect:o,groupIds:(c=this.options)==null?void 0:c.value.groups.checkout})}close_checkout(){var t;if(!this.initialized)throw new Error("Moonbase has not been set up yet");(t=this.storefront)==null||t.closeCheckout()}view_about(){if(!this.initialized)throw new Error("Moonbase has not been set up yet");ge(this.pinia).show(G.About,W.ViewAbout)}}const Qs=new pN;if(typeof globalThis<"u"){const e=globalThis.Moonbase;nN(e)?(globalThis.Moonbase=Qs,V0=e,rN(Qs,e)):e?console.warn("Multiple instances of Moonbase detected, only one will be initialized"):globalThis.Moonbase=Qs}Lt.MoonbaseEvent=Ce,Lt.MoonbaseIntent=W,Lt.default=Qs,Lt.eventEmitterKey=zn,Lt.instanceKey=M0,Lt.urlKey=ou,Object.defineProperties(Lt,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}})});