@moonbase.sh/storefront 0.2.77 → 0.2.78

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/moonbase.js CHANGED
@@ -12672,7 +12672,8 @@ const vs = "DC8F892D-2EBD-447C-A4C8-A03058436FF4", ff = /* @__PURE__ */ he({
12672
12672
  initialFocus: { type: Object, default: null },
12673
12673
  id: { type: String, default: () => `moonbase-dialog-${Rt()}` },
12674
12674
  role: { type: String, default: "dialog" },
12675
- makeInert: { type: Boolean, default: !0 }
12675
+ makeInert: { type: Boolean, default: !0 },
12676
+ lockScroll: { type: Boolean, default: !0 }
12676
12677
  },
12677
12678
  emits: { close: (e) => !0 },
12678
12679
  setup(e, { emit: t, attrs: n, slots: r, expose: o }) {
@@ -12759,7 +12760,7 @@ const vs = "DC8F892D-2EBD-447C-A4C8-A03058436FF4", ff = /* @__PURE__ */ he({
12759
12760
  sl((me = f.value) == null ? void 0 : me.defaultView, "keydown", (ae) => {
12760
12761
  ee.value && (ae.defaultPrevented || ae.key === Qe.Escape && (ae.preventDefault(), ae.stopPropagation(), I.close()));
12761
12762
  });
12762
- const se = J(() => !(A.value || E.value !== 0 || $));
12763
+ const se = J(() => !(!e.lockScroll || A.value || E.value !== 0 || $));
12763
12764
  return Ob(f, se, (ae) => ({
12764
12765
  containers: [...ae.containers ?? [], L]
12765
12766
  })), mt((ae) => {
@@ -13999,29 +14000,30 @@ const xf = Yn.RenderStrategy, Zo = /* @__PURE__ */ he({
13999
14000
  show: n.open
14000
14001
  }, {
14001
14002
  default: _e(() => {
14002
- var o, s;
14003
+ var o, s, i;
14003
14004
  return [
14004
14005
  z(_(ff), {
14005
14006
  as: "div",
14006
14007
  class: "moonbase:modal",
14007
14008
  "data-contain": !!((o = _(t)) != null && o.target) || void 0,
14008
14009
  "make-inert": !((s = _(t)) != null && s.target),
14009
- onClose: r[0] || (r[0] = (i) => n.$emit("close"))
14010
+ "lock-scroll": !((i = _(t)) != null && i.target),
14011
+ onClose: r[0] || (r[0] = (a) => n.$emit("close"))
14010
14012
  }, {
14011
14013
  default: _e(() => {
14012
- var i;
14014
+ var a;
14013
14015
  return [
14014
14016
  S("div", {
14015
14017
  class: "moonbase:modal-container",
14016
- "data-contain": !!((i = _(t)) != null && i.target) || void 0
14018
+ "data-contain": !!((a = _(t)) != null && a.target) || void 0
14017
14019
  }, [
14018
14020
  z(_(Zo), { as: "template" }, {
14019
14021
  default: _e(() => {
14020
- var a;
14022
+ var l;
14021
14023
  return [
14022
14024
  z(_(pf), {
14023
14025
  class: "moonbase:modal-overlay",
14024
- "data-contain": !!((a = _(t)) != null && a.target) || void 0
14026
+ "data-contain": !!((l = _(t)) != null && l.target) || void 0
14025
14027
  }, null, 8, ["data-contain"])
14026
14028
  ];
14027
14029
  }),
@@ -14042,7 +14044,7 @@ const xf = Yn.RenderStrategy, Zo = /* @__PURE__ */ he({
14042
14044
  ];
14043
14045
  }),
14044
14046
  _: 3
14045
- }, 8, ["data-contain", "make-inert"])
14047
+ }, 8, ["data-contain", "make-inert", "lock-scroll"])
14046
14048
  ];
14047
14049
  }),
14048
14050
  _: 3
@@ -14380,29 +14382,30 @@ const Xb = { class: "moonbase:product-cart-item" }, Qb = ["src"], e_ = {
14380
14382
  show: n.open
14381
14383
  }, {
14382
14384
  default: _e(() => {
14383
- var o, s;
14385
+ var o, s, i;
14384
14386
  return [
14385
14387
  z(_(ff), {
14386
14388
  as: "div",
14387
14389
  class: "moonbase:cart-modal",
14388
14390
  "data-contain": !!((o = _(t)) != null && o.target) || void 0,
14389
14391
  "make-inert": !((s = _(t)) != null && s.target),
14390
- onClose: r[0] || (r[0] = (i) => n.$emit("close"))
14392
+ "lock-scroll": !((i = _(t)) != null && i.target),
14393
+ onClose: r[0] || (r[0] = (a) => n.$emit("close"))
14391
14394
  }, {
14392
14395
  default: _e(() => {
14393
- var i;
14396
+ var a;
14394
14397
  return [
14395
14398
  S("div", {
14396
14399
  class: "moonbase:cart-modal-container",
14397
- "data-contain": !!((i = _(t)) != null && i.target) || void 0
14400
+ "data-contain": !!((a = _(t)) != null && a.target) || void 0
14398
14401
  }, [
14399
14402
  z(_(Zo), { as: "template" }, {
14400
14403
  default: _e(() => {
14401
- var a;
14404
+ var l;
14402
14405
  return [
14403
14406
  z(_(pf), {
14404
14407
  class: "moonbase:cart-modal-overlay",
14405
- "data-contain": !!((a = _(t)) != null && a.target) || void 0
14408
+ "data-contain": !!((l = _(t)) != null && l.target) || void 0
14406
14409
  }, null, 8, ["data-contain"])
14407
14410
  ];
14408
14411
  }),
@@ -14410,11 +14413,11 @@ const Xb = { class: "moonbase:product-cart-item" }, Qb = ["src"], e_ = {
14410
14413
  }),
14411
14414
  z(_(Zo), { as: "template" }, {
14412
14415
  default: _e(() => {
14413
- var a;
14416
+ var l;
14414
14417
  return [
14415
14418
  z(_(hf), {
14416
14419
  class: "moonbase:cart-modal-content",
14417
- "data-contain": !!((a = _(t)) != null && a.target) || void 0
14420
+ "data-contain": !!((l = _(t)) != null && l.target) || void 0
14418
14421
  }, {
14419
14422
  default: _e(() => [
14420
14423
  Wa(n.$slots, "default")
@@ -14429,7 +14432,7 @@ const Xb = { class: "moonbase:product-cart-item" }, Qb = ["src"], e_ = {
14429
14432
  ];
14430
14433
  }),
14431
14434
  _: 3
14432
- }, 8, ["data-contain", "make-inert"])
14435
+ }, 8, ["data-contain", "make-inert", "lock-scroll"])
14433
14436
  ];
14434
14437
  }),
14435
14438
  _: 3
@@ -21,4 +21,4 @@ See https://pinia.vuejs.org/core-concepts/outside-component-usage.html for help.
21
21
  This will fail in production.`);a=Wo,a._s.has(r)||(s?Ka(r,t,o,a):Rd(r,o,a),Pe.NODE_ENV!=="production"&&(i._pinia=a));const c=a._s.get(r);if(Pe.NODE_ENV!=="production"&&l){const d="__hot:"+r,f=s?Ka(d,t,o,a,!0):Rd(d,jt({},o),a,!0);l._hotUpdate(f),delete a.state.value[d],a._s.delete(d)}if(Pe.NODE_ENV!=="production"&&Er){const d=Ks();if(d&&d.proxy&&!l){const f=d.proxy,m="_pStores"in f?f._pStores:f._pStores={};m[r]=c}}return c}return i.$id=r,i}var ue=(e=>(e.SignIn="sign_in",e.SignUp="sign_up",e.ForgotPassword="forgot_password",e.ResetPassword="reset_password",e.ConfirmAccount="confirm_account",e.ConfirmEmail="confirm_email",e.ConfirmEmailChange="confirm_email_change",e.ViewAccount="view_account",e.ViewProducts="view_products",e.RedeemVoucher="redeem_voucher",e.DownloadProduct="download_product",e.ActivateProduct="activate_product",e.ViewCart="view_cart",e.AddToCart="add_to_cart",e.Checkout="checkout",e.CloseCheckout="close_checkout",e))(ue||{});const py={toolbar:{enabled:!0,location:"bottom-right",show:{cart:!0,account:!0,moonbase:!0}},auth:{signUp:{enabled:!0}},checkout:{redirect:!1},target:void 0},Nr=Symbol("options");var Ne=(e=>(e.None="None",e.Authentication="Authentication",e.Customer="Customer",e.Cart="Cart",e.Activation="Activation",e.Download="Download",e))(Ne||{});const je=fy("ui",()=>{const e=R("None"),t=R(null),n=R(null),r=R(null);function o(u,c,d){n.value=d??null,t.value=c,e.value=u}function s(u,c,d){r.value=[u,c,d]}function i(){e.value="None",n.value=null,r.value=null}function a(){const u=r.value;i(),To(()=>{if(u){const[c,d,f]=u;n.value=f??null,t.value=d,e.value=c}})}function l(u){return n.value===null||!n.value[u]?null:n.value[u]}return{active:e,intent:t,parameters:n,next:r,show:o,reset:i,enqueue:s,dequeue:a,getParameter:l}}),Kt=e=>new Promise(t=>setTimeout(t,e)),hy=["data-visible","data-contain","data-location"],my={key:0,href:"https://moonbase.sh",target:"_blank",class:"moonbase:toolbar-action","data-action-width":"narrow"},vy=["disabled"],gy=he({__name:"Toolbar",setup(e){const t=R(!1),n=je(),r=wt(),o=Se(Nr);return Re(()=>{Kt(100).then(()=>t.value=!0)}),(s,i)=>{var a,l,u,c,d,f;return w(),C("div",{class:"moonbase:toolbar","data-visible":t.value&&_(n).active===_(Ne).None?"true":void 0,"data-contain":!!((a=_(o))!=null&&a.target)||void 0,"data-location":_(o).toolbar.location},[(l=_(o))!=null&&l.toolbar.show.moonbase?(w(),C("a",my,i[3]||(i[3]=[Sv('<svg viewBox="0 0 512 512" height="18px" width="18px"><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)]))):fe("",!0),(u=_(o))!=null&&u.toolbar.show.cart?(w(),C("button",{key:1,class:"moonbase:toolbar-action",type:"button",onClick:i[0]||(i[0]=m=>_(n).show(_(Ne).Cart,_(ue).AddToCart))}," Cart ")):fe("",!0),(c=_(o))!=null&&c.toolbar.show.account&&!_(r).user.value?(w(),C("button",{key:2,class:"moonbase:toolbar-action",type:"button",disabled:!_(r).loaded,onClick:i[1]||(i[1]=m=>_(n).show(_(Ne).Authentication,_(ue).SignIn))}," Log in ",8,vy)):(d=_(o))!=null&&d.toolbar.show.account?(w(),C("button",{key:3,class:"moonbase:toolbar-action",type:"button",onClick:i[2]||(i[2]=m=>_(n).show(_(Ne).Customer,_(ue).ViewAccount))},J((f=_(r).user.value)==null?void 0:f.name),1)):fe("",!0)],8,hy)}}}),yy=["hidden"],by=["for"],_y=["id","type","name","placeholder","value","disabled","aria-invalid","aria-describedby"],wy=["id"],Ey=["id"],Et=he({inheritAttrs:!1,__name:"MoonInput",props:{name:{},label:{},placeholder:{},type:{},error:{},hint:{},disabled:{type:Boolean},modelValue:{},hidden:{type:Boolean}},emits:["update:modelValue"],setup(e){return(t,n)=>(w(),C("div",{class:"moonbase:input",hidden:t.hidden||void 0},[x("label",{for:`mb-${t.name}`},J(t.label),9,by),x("input",$a({id:`mb-${t.name}`,type:t.type??"text",name:`mb-${t.name}`,placeholder:t.placeholder,value:t.modelValue,disabled:t.disabled,"aria-invalid":!!t.error,"aria-describedby":t.error?`mb-${t.name}-error`:t.hint?`mb-${t.name}-hint`:void 0},t.$attrs,{onInput:n[0]||(n[0]=r=>{var o;return t.$emit("update:modelValue",(o=r.target)==null?void 0:o.value)})}),null,16,_y),t.error?(w(),C("p",{key:0,id:`mb-${t.name}-error`,class:"moonbase:input-hint","data-type":"error"},J(t.error),9,wy)):t.hint?(w(),C("p",{key:1,id:`mb-${t.name}-hint`,class:"moonbase:input-hint"},J(t.hint),9,Ey)):fe("",!0)],8,yy))}}),Jr=(e,t)=>{const n=e.__vccOpts||e;for(const[r,o]of t)n[r]=o;return n},Oy={},Ny={fill:"none",viewBox:"0 0 24 24"};function xy(e,t){return w(),C("svg",Ny,t[0]||(t[0]=[x("circle",{class:"opacity-25",cx:"12",cy:"12",r:"10",stroke:"currentColor","stroke-width":"4"},null,-1),x("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 Mt=Jr(Oy,[["render",xy],["__scopeId","data-v-687bcaf0"]]),Sy=["disabled"],jd=Symbol("form-state"),Jn=he({__name:"MoonForm",props:{handler:{type:Function},noReset:{type:Boolean}},setup(e){const t=e,n=R(!1),r=R(!1),o=R(!1);ft(jd,{working:n,isSuccess:r,isError:o});async function s(){n.value=!0;try{await t.handler(),n.value=!1,r.value=!0,await Kt(2500),t.noReset||(r.value=!1)}catch{n.value=!1,o.value=!0,await Kt(2500),o.value=!1}}return(i,a)=>(w(),C("form",{disabled:n.value||r.value,onSubmit:hg(s,["prevent"])},[ma(i.$slots,"default",{working:n.value,isSuccess:r.value,isError:o.value,disabled:n.value||r.value})],40,Sy))}}),ky=["disabled","data-success","data-error","data-working"],Cy=["data-visible"],Yn=Jr(he({__name:"MoonSubmitButton",props:{label:{},success:{},error:{}},setup(e){const t=e,{working:n,isSuccess:r,isError:o}=Se(jd),s=Y(()=>r.value?t.success:o.value?t.error:t.label);return(i,a)=>(w(),C("button",{class:"moonbase:submit-button",type:"submit",disabled:_(r)||_(o)||_(n),"data-success":_(r)||void 0,"data-error":_(o)||void 0,"data-working":_(n)||void 0},[x("div",{"data-visible":_(n)||void 0,"aria-hidden":"true"},[_(n)?(w(),ke(Mt,{key:0})):fe("",!0)],8,Cy),Te(" "+J(s.value),1)],8,ky))}}),[["__scopeId","data-v-91242842"]]),Ty={class:"moonbase:checkbox"},Py={class:"moonbase:checkbox-container"},$y=["id","name","value","disabled","aria-invalid","aria-describedby"],Dy={class:"moonbase:checkbox-description"},Iy=["for"],Ay=["id"],Vy=["id"],Md=he({inheritAttrs:!1,__name:"MoonCheckbox",props:{name:{},label:{},error:{},hint:{},disabled:{type:Boolean},modelValue:{type:Boolean}},emits:["update:modelValue"],setup(e){return(t,n)=>(w(),C("div",Ty,[x("div",Py,[x("input",$a({id:`mb-${t.name}`,type:"checkbox",name:`mb-${t.name}`,value:t.modelValue,disabled:t.disabled,"aria-invalid":!!t.error,"aria-describedby":t.error?`mb-${t.name}-error`:t.hint?`mb-${t.name}-hint`:void 0},t.$attrs,{onChecked:n[0]||(n[0]=r=>{var o;return t.$emit("update:modelValue",(o=r.target)==null?void 0:o.checked)})}),null,16,$y)]),x("div",Dy,[x("label",{for:`mb-${t.name}`},J(t.label),9,Iy),t.error?(w(),C("p",{key:0,id:`mb-${t.name}-error`,"data-type":"error"},J(t.error),9,Ay)):t.hint?(w(),C("p",{key:1,id:`mb-${t.name}-hint`},J(t.hint),9,Vy)):fe("",!0)])]))}}),Ry=["data-visible"],jy=he({__name:"SignUp",emits:["signedUp"],setup(e,{emit:t}){const n=t,r=je(),o=wt(),s=R(""),i=R(r.getParameter("email")??""),a=R(""),l=R(!1),u=R(null);async function c(){u.value=null;try{const d=await o.signUp(s.value,i.value,a.value,null,!0,!0,l.value);Kt(1500).then(()=>n("signedUp",d))}catch(d){throw u.value=d.message,d}}return(d,f)=>(w(),ke(Jn,{handler:c,class:"moonbase:sign-up"},{default:we(()=>[z(Et,{modelValue:s.value,"onUpdate:modelValue":f[0]||(f[0]=m=>s.value=m),label:"Full name",name:"name",type:"text",placeholder:"Full name",autocomplete:"name",required:""},null,8,["modelValue"]),z(Et,{modelValue:i.value,"onUpdate:modelValue":f[1]||(f[1]=m=>i.value=m),label:"Email address",name:"email",type:"email",placeholder:"Email address",autocomplete:"email",required:""},null,8,["modelValue"]),z(Et,{modelValue:a.value,"onUpdate:modelValue":f[2]||(f[2]=m=>a.value=m),label:"Password",name:"password",type:"password",placeholder:"Password",autocomplete:"current-password",required:""},null,8,["modelValue"]),z(Md,{modelValue:l.value,"onUpdate:modelValue":f[3]||(f[3]=m=>l.value=m),label:"Receive updates and offers by email",name:"newsletter-opt-in"},null,8,["modelValue"]),z(Yn,{success:"Signed up",label:"Sign up",error:"Error"}),x("span",{class:"moonbase:error","data-visible":!!u.value||void 0},J(u.value),9,Ry),x("button",{type:"button",onClick:f[4]||(f[4]=m=>_(r).show(_(Ne).Authentication,_(ue).SignIn,{email:i.value}))}," I already have an account ")]),_:1}))}}),My={key:0,class:"moonbase:loader"},Ly={key:1,class:"moonbase:error","data-visible":""},Uy=["data-visible"],Fy=he({__name:"ConfirmAccount",emits:["confirmedAccount"],setup(e,{emit:t}){const n=t,r=je(),o=wt(),s=R(!0),i=R(null),a=R(""),l=R(null);Re(async()=>{try{const c=r.getParameter("email"),d=r.getParameter("code");if(!c||!d)throw new Error("Link is broken");i.value=await o.confirmAccount(c,d)}catch(c){c instanceof Vn?l.value="Could not find a user to confirm":l.value=c.message}s.value=!1});async function u(){var c,d;if(l.value=null,!!((c=i.value)!=null&&c.resetPasswordToken))try{const f=r.getParameter("email");await o.resetPassword(f,a.value,(d=i.value)==null?void 0:d.resetPasswordToken);const m=await o.signIn(f,a.value);Kt(1500).then(()=>n("confirmedAccount",m))}catch(f){throw l.value=f.message,f}}return(c,d)=>(w(),ke(Jn,{handler:u,class:"moonbase:confirm-account"},{default:we(()=>[s.value?(w(),C("div",My,[z(Mt)])):i.value?(w(),C(Ce,{key:2},[x("h3",null," Hi "+J(i.value.name)+", ",1),d[1]||(d[1]=x("p",null," Please create a new password for your account: ",-1)),z(Et,{"model-value":_(r).getParameter("email"),hidden:"",label:"Email address",name:"email",type:"email",placeholder:"Email address",autocomplete:"email",required:""},null,8,["model-value"]),z(Et,{modelValue:a.value,"onUpdate:modelValue":d[0]||(d[0]=f=>a.value=f),label:"Password",name:"password",type:"password",placeholder:"Password",autocomplete:"new-password",required:""},null,8,["modelValue"]),z(Yn,{success:"Password saved",label:"Save password",error:"Error"}),x("span",{class:"moonbase:error","data-visible":!!l.value||void 0},J(l.value),9,Uy)],64)):(w(),C("div",Ly,J(l.value),1))]),_:1}))}}),By=["data-visible"],Hy=he({__name:"ForgotPassword",setup(e){const t=je(),n=wt(),r=R(t.getParameter("email")??""),o=R(null),s=R(!1);async function i(){o.value=null;try{await n.forgotPassword(r.value),Kt(1500).then(()=>{s.value=!0})}catch(a){throw a instanceof Vn?o.value="User not found":o.value=a.message,a}}return(a,l)=>(w(),ke(Jn,{handler:i,class:"moonbase:sign-in","no-reset":""},{default:we(({disabled:u})=>[l[1]||(l[1]=x("h3",null," Forgot your password? ",-1)),l[2]||(l[2]=x("p",null," Please enter your email for a reset link: ",-1)),z(Et,{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"]),z(Yn,{success:"Email sent",label:"Reset password",error:"Error"}),x("span",{class:"moonbase:error","data-visible":!!o.value||void 0},J(o.value),9,By)]),_:1}))}}),Zy=["data-visible"],qy=he({__name:"ResetPassword",emits:["passwordReset"],setup(e,{emit:t}){const n=t,r=je(),o=wt(),s=Y(()=>r.getParameter("email")),i=R(""),a=R(null);Re(()=>{(!r.getParameter("email")||!r.getParameter("code"))&&(a.value="Link broken, please try again")});async function l(){a.value=null;const u=r.getParameter("code");if(u)try{await o.resetPassword(s.value,i.value,u);const c=await o.signIn(s.value,i.value);Kt(1500).then(()=>n("passwordReset",c))}catch(c){throw a.value=c.message,c}}return(u,c)=>(w(),ke(Jn,{handler:l,class:"moonbase:reset-password"},{default:we(()=>[x("h3",null," Hi "+J(s.value)+", ",1),c[1]||(c[1]=x("p",null," Please create a new password for your account: ",-1)),z(Et,{"model-value":_(r).getParameter("email"),hidden:"",label:"Email address",name:"email",type:"email",placeholder:"Email address",autocomplete:"email",required:""},null,8,["model-value"]),z(Et,{modelValue:i.value,"onUpdate:modelValue":c[0]||(c[0]=d=>i.value=d),label:"Password",name:"password",type:"password",placeholder:"Password",autocomplete:"new-password",required:""},null,8,["modelValue"]),z(Yn,{success:"Password saved",label:"Save password",error:"Error"}),x("span",{class:"moonbase:error","data-visible":!!a.value||void 0},J(a.value),9,Zy)]),_:1}))}}),Wy={class:"moonbase:confirm-email-change"},zy={key:0,class:"moonbase:loader"},Ky={key:1,class:"moonbase:error","data-visible":""},Gy=he({__name:"ConfirmEmailChange",emits:["confirmed"],setup(e,{emit:t}){const n=t,r=je(),{user:o,confirmEmailChange:s}=wt(),i=R(!0),a=R(null);return Re(async()=>{try{const l=r.getParameter("email"),u=r.getParameter("code");if(!l||!u)throw new Error("Link is broken");await s(l,u),Kt(1500).then(()=>n("confirmed"))}catch(l){a.value=l.message}i.value=!1}),(l,u)=>{var c;return w(),C("div",Wy,[i.value?(w(),C("div",zy,[z(Mt)])):a.value?(w(),C("div",Ky,J(a.value),1)):(w(),C(Ce,{key:2},[x("h3",null," Hi "+J((c=_(o))==null?void 0:c.name)+", ",1),u[0]||(u[0]=x("p",null," Thanks for confirming your new email. You can now sign in using this new address. ",-1))],64))])}}});class Jy{constructor(){Tr(this,"current",this.detect());Tr(this,"currentId",0)}set(t){this.current!==t&&(this.currentId=0,this.current=t)}reset(){this.set(this.detect())}nextId(){return++this.currentId}get isServer(){return this.current==="server"}get isClient(){return this.current==="client"}detect(){return typeof window>"u"||typeof document>"u"?"server":"client"}}let Ko=new Jy;function Ga(e,t,n,r){Ko.isServer||pt(o=>{e=e??window,e.addEventListener(t,n,r),o(()=>e.removeEventListener(t,n,r))})}function Ld(e,t,n,r){Ko.isServer||pt(o=>{e.value&&(window.addEventListener(t,n,r),o(()=>window.removeEventListener(t,n,r)))})}var $t=(e=>(e[e.Forwards=0]="Forwards",e[e.Backwards=1]="Backwards",e))($t||{});function Ja(){const e=R(0),t=R(!0);return Ld(t,"keydown",n=>{n.key==="Tab"&&(e.value=n.shiftKey?1:0)}),e}function nt(e,t,...n){if(e in t){const o=t[e];return typeof o=="function"?o(...n):o}throw new Error(`Tried to handle "${e}" but there is no handler defined. Only defined handlers are: ${Object.keys(t).map(o=>`"${o}"`).join(", ")}.`)}var Xn=(e=>(e[e.None=0]="None",e[e.RenderStrategy=1]="RenderStrategy",e[e.Static=2]="Static",e))(Xn||{}),Qn=(e=>(e[e.Unmount=0]="Unmount",e[e.Hidden=1]="Hidden",e))(Qn||{});function rt({visible:e=!0,features:t=0,ourProps:n,theirProps:r,...o}){const s=Fd(r,n),i=Object.assign(o,{props:s});if(e||t&2&&s.static)return ui(i);if(t&1){const a=s.unmount??!0?0:1;return nt(a,{0(){return null},1(){return ui({...o,props:{...s,hidden:!0,style:{display:"none"}}})}})}return ui(i)}function ui({props:e,attrs:t,slots:n,slot:r,name:o}){var u;const{as:s,...i}=Ya(e,["unmount","static"]);let a=(u=n.default)==null?void 0:u.call(n,r);const l={};if(r){let c=!1;const d=[];for(const[f,m]of Object.entries(r))typeof m=="boolean"&&(c=!0),m===!0&&d.push(f);c&&(l["data-moonbase-state"]=d.join(" "))}if(s==="template"){if(a=Ud(a??[]),Object.keys(i).length>0||Object.keys(t).length>0){const[c,...d]=a??[];if(!Yy(c)||d.length>0)throw new Error(['Passing props on "template"!',"",`The current component <${o} /> is rendering a "template".`,"However we need to passthrough the following props:",Object.keys(i).concat(Object.keys(t)).map(E=>E.trim()).filter((E,N,O)=>O.indexOf(E)===N).sort((E,N)=>E.localeCompare(N)).map(E=>` - ${E}`).join(`
22
22
  `),"","You can apply a few solutions:",['Add an `as="..."` prop, to ensure that we render an actual element instead of a "template".',"Render a single element as the child so that we can forward the props onto that element."].map(E=>` - ${E}`).join(`
23
23
  `)].join(`
24
- `));const f=Fd(c.props??{},i,l),m=qt(c,f,!0);for(const E in f)E.startsWith("on")&&(m.props||(m.props={}),m.props[E]=f[E]);return m}return Array.isArray(a)&&a.length===1?a[0]:a}return Ue(s,Object.assign({},i,l),{default:()=>a})}function Ud(e){return e.flatMap(t=>t.type===Ce?Ud(t.children):[t])}function Fd(...e){if(e.length===0)return{};if(e.length===1)return e[0];const t={},n={};for(const r of e)for(const o in r)o.startsWith("on")&&typeof r[o]=="function"?(n[o]??(n[o]=[]),n[o].push(r[o])):t[o]=r[o];if(t.disabled||t["aria-disabled"])return Object.assign(t,Object.fromEntries(Object.keys(n).map(r=>[r,void 0])));for(const r in n)Object.assign(t,{[r](o,...s){const i=n[r];for(const a of i){if(o instanceof Event&&o.defaultPrevented)return;a(o,...s)}}});return t}function Ya(e,t=[]){const n=Object.assign({},e);for(const r of t)r in n&&delete n[r];return n}function Yy(e){return e==null?!1:typeof e.type=="string"||typeof e.type=="object"||typeof e.type=="function"}var er=(e=>(e[e.None=1]="None",e[e.Focusable=2]="Focusable",e[e.Hidden=4]="Hidden",e))(er||{});let tr=he({name:"Hidden",props:{as:{type:[Object,String],default:"div"},features:{type:Number,default:1}},setup(e,{slots:t,attrs:n}){return()=>{let{features:r,...o}=e,s={"aria-hidden":(r&2)===2?!0:o["aria-hidden"]??void 0,hidden:(r&4)===4?!0:void 0,style:{position:"fixed",top:1,left:1,width:1,height:0,padding:0,margin:-1,overflow:"hidden",clip:"rect(0, 0, 0, 0)",whiteSpace:"nowrap",borderWidth:"0",...(r&4)===4&&(r&2)!==2&&{display:"none"}}};return rt({ourProps:s,theirProps:o,slot:{},attrs:n,slots:t,name:"Hidden"})}}});function Xy(e){function t(){document.readyState!=="loading"&&(e(),document.removeEventListener("DOMContentLoaded",t))}typeof window<"u"&&typeof document<"u"&&(document.addEventListener("DOMContentLoaded",t),t())}function X(e){if(e==null||e.value==null)return null;let t=e.value.$el??e.value;return t instanceof Node?t:null}function kn(e){if(Ko.isServer)return null;if(e instanceof Node)return e.ownerDocument;if(e&&Object.prototype.hasOwnProperty.call(e,"value")){const t=X(e);if(t)return t.ownerDocument}return document}const ci=["[contentEditable=true]","[tabindex]","a[href]","area[href]","button:not([disabled])","iframe","input:not([disabled])","select:not([disabled])","textarea:not([disabled])"].map(e=>`${e}:not([tabindex='-1'])`).join(",");var We=(e=>(e[e.First=1]="First",e[e.Previous=2]="Previous",e[e.Next=4]="Next",e[e.Last=8]="Last",e[e.WrapAround=16]="WrapAround",e[e.NoScroll=32]="NoScroll",e))(We||{}),Cn=(e=>(e[e.Error=0]="Error",e[e.Overflow=1]="Overflow",e[e.Success=2]="Success",e[e.Underflow=3]="Underflow",e))(Cn||{});function di(e=document.body){return e==null?[]:Array.from(e.querySelectorAll(ci)).sort((t,n)=>Math.sign((t.tabIndex||Number.MAX_SAFE_INTEGER)-(n.tabIndex||Number.MAX_SAFE_INTEGER)))}var Xa=(e=>(e[e.Strict=0]="Strict",e[e.Loose=1]="Loose",e))(Xa||{});function Bd(e,t=0){var n;return e===((n=kn(e))==null?void 0:n.body)?!1:nt(t,{0(){return e.matches(ci)},1(){let r=e;for(;r!==null;){if(r.matches(ci))return!0;r=r.parentElement}return!1}})}typeof window<"u"&&typeof document<"u"&&(document.addEventListener("keydown",e=>{e.metaKey||e.altKey||e.ctrlKey||(document.documentElement.dataset.moonbaseFocusVisible="")},!0),document.addEventListener("click",e=>{e.detail===1?delete document.documentElement.dataset.moonbaseFocusVisible:e.detail===0&&(document.documentElement.dataset.moonbaseFocusVisible="")},!0));function xr(e){e==null||e.focus({preventScroll:!0})}const Qy=["textarea","input"].join(",");function eb(e){var t;return((t=e==null?void 0:e.matches)==null?void 0:t.call(e,Qy))??!1}function Yr(e,t=n=>n){return e.slice().sort((n,r)=>{const o=t(n),s=t(r);if(o===null||s===null)return 0;const i=o.compareDocumentPosition(s);return i&Node.DOCUMENT_POSITION_FOLLOWING?-1:i&Node.DOCUMENT_POSITION_PRECEDING?1:0})}function at(e,t,{sorted:n=!0,relativeTo:r=null,skipElements:o=[]}={}){const s=(Array.isArray(e)?e.length>0?e[0].ownerDocument:document:e==null?void 0:e.ownerDocument)??document;let i=Array.isArray(e)?n?Yr(e):e:di(e);o.length>0&&i.length>1&&(i=i.filter(m=>!o.includes(m))),r=r??s.activeElement;const a=(()=>{if(t&5)return 1;if(t&10)return-1;throw new Error("Missing Focus.First, Focus.Previous, Focus.Next or Focus.Last")})(),l=(()=>{if(t&1)return 0;if(t&2)return Math.max(0,i.indexOf(r))-1;if(t&4)return Math.max(0,i.indexOf(r))+1;if(t&8)return i.length-1;throw new Error("Missing Focus.First, Focus.Previous, Focus.Next or Focus.Last")})(),u=t&32?{preventScroll:!0}:{};let c=0;const d=i.length;let f;do{if(c>=d||c+d<=0)return 0;let m=l+c;if(t&16)m=(m+d)%d;else{if(m<0)return 3;if(m>=d)return 1}f=i[m],f==null||f.focus(u),c+=a}while(f!==s.activeElement);return t&6&&eb(f)&&f.select(),2}let Sr=[];Xy(()=>{function e(t){if(!(t.target instanceof HTMLElement)||t.target===document.body||Sr[0]===t.target)return;let n=t.target;n=n.closest(ci),Sr.unshift(n??t.target),Sr=Sr.filter(r=>r!=null&&r.isConnected),Sr.splice(10)}window.addEventListener("click",e,{capture:!0}),window.addEventListener("mousedown",e,{capture:!0}),window.addEventListener("focus",e,{capture:!0}),document.body.addEventListener("click",e,{capture:!0}),document.body.addEventListener("mousedown",e,{capture:!0}),document.body.addEventListener("focus",e,{capture:!0})});function fi(e){typeof queueMicrotask=="function"?queueMicrotask(e):Promise.resolve().then(e).catch(t=>setTimeout(()=>{throw t}))}function Hd(e){if(!e)return new Set;if(typeof e=="function")return new Set(e());const t=new Set;for(const n of e.value){const r=X(n);r instanceof HTMLElement&&t.add(r)}return t}var Zd=(e=>(e[e.None=1]="None",e[e.InitialFocus=2]="InitialFocus",e[e.TabLock=4]="TabLock",e[e.FocusLock=8]="FocusLock",e[e.RestoreFocus=16]="RestoreFocus",e[e.All=30]="All",e))(Zd||{});const Go=Object.assign(he({name:"FocusTrap",props:{as:{type:[Object,String],default:"div"},initialFocus:{type:Object,default:null},features:{type:Number,default:30},containers:{type:[Object,Function],default:R(new Set)}},inheritAttrs:!1,setup(e,{attrs:t,slots:n,expose:r}){const o=R(null);r({el:o,$el:o});const s=Y(()=>kn(o)),i=R(!1);Re(()=>i.value=!0),dt(()=>i.value=!1),nb({ownerDocument:s},Y(()=>i.value&&!!(e.features&16)));const a=rb({ownerDocument:s,container:o,initialFocus:Y(()=>e.initialFocus)},Y(()=>i.value&&!!(e.features&2)));ob({ownerDocument:s,container:o,containers:e.containers,previousActiveElement:a},Y(()=>i.value&&!!(e.features&8)));const l=Ja();function u(m){const E=X(o);if(!E)return;(O=>O())(()=>{nt(l.value,{[$t.Forwards]:()=>{at(E,We.First,{skipElements:[m.relatedTarget]})},[$t.Backwards]:()=>{at(E,We.Last,{skipElements:[m.relatedTarget]})}})})}const c=R(!1);function d(m){m.key==="Tab"&&(c.value=!0,requestAnimationFrame(()=>{c.value=!1}))}function f(m){if(!i.value)return;const E=Hd(e.containers);X(o)instanceof HTMLElement&&E.add(X(o));const N=m.relatedTarget;N instanceof HTMLElement&&N.dataset.moonbaseFocusGuard!=="true"&&(qd(E,N)||(c.value?at(X(o),nt(l.value,{[$t.Forwards]:()=>We.Next,[$t.Backwards]:()=>We.Previous})|We.WrapAround,{relativeTo:m.target}):m.target instanceof HTMLElement&&xr(m.target)))}return()=>{const m={},E={ref:o,onKeydown:d,onFocusout:f},{features:N,initialFocus:O,containers:I,...j}=e;return Ue(Ce,[!!(N&4)&&Ue(tr,{as:"button",type:"button","data-moonbase-focus-guard":!0,onFocus:u,features:er.Focusable}),rt({ourProps:E,theirProps:{...t,...j},slot:m,attrs:t,slots:n,name:"FocusTrap"}),!!(N&4)&&Ue(tr,{as:"button",type:"button","data-moonbase-focus-guard":!0,onFocus:u,features:er.Focusable})])}}}),{features:Zd});function tb(e){const t=R(Sr.slice());return ze([e],([n],[r])=>{r===!0&&n===!1?fi(()=>{t.value.splice(0)}):r===!1&&n===!0&&(t.value=Sr.slice())},{flush:"post"}),()=>t.value.find(n=>n!=null&&n.isConnected)??null}function nb({ownerDocument:e},t){const n=tb(t);Re(()=>{pt(()=>{var r,o;t.value||((r=e.value)==null?void 0:r.activeElement)===((o=e.value)==null?void 0:o.body)&&xr(n())},{flush:"post"})}),dt(()=>{t.value&&xr(n())})}function rb({ownerDocument:e,container:t,initialFocus:n},r){const o=R(null),s=R(!1);return Re(()=>s.value=!0),dt(()=>s.value=!1),Re(()=>{ze([t,n,r],(i,a)=>{if(i.every((u,c)=>(a==null?void 0:a[c])===u)||!r.value)return;const l=X(t);l&&fi(()=>{var d,f;if(!s.value)return;const u=X(n),c=(d=e.value)==null?void 0:d.activeElement;if(u){if(u===c){o.value=c;return}}else if(l.contains(c)){o.value=c;return}u?xr(u):at(l,We.First|We.NoScroll)===Cn.Error&&console.warn("There are no focusable elements inside the <FocusTrap />"),o.value=(f=e.value)==null?void 0:f.activeElement})},{immediate:!0,flush:"post"})}),o}function ob({ownerDocument:e,container:t,containers:n,previousActiveElement:r},o){var s;Ga((s=e.value)==null?void 0:s.defaultView,"focus",i=>{if(!o.value)return;const a=Hd(n);X(t)instanceof HTMLElement&&a.add(X(t));const l=r.value;if(!l)return;const u=i.target;u&&u instanceof HTMLElement?qd(a,u)?(r.value=u,xr(u)):(i.preventDefault(),i.stopPropagation(),xr(l)):xr(r.value)},!0)}function qd(e,t){for(const n of e)if(n.contains(t))return!0;return!1}function sb(e){const t=Bh(e.getSnapshot());return dt(e.subscribe(()=>{t.value=e.getSnapshot()})),t}function Jo(){const e=[],t={addEventListener(n,r,o,s){return n.addEventListener(r,o,s),t.add(()=>n.removeEventListener(r,o,s))},requestAnimationFrame(...n){const r=requestAnimationFrame(...n);t.add(()=>cancelAnimationFrame(r))},nextFrame(...n){t.requestAnimationFrame(()=>{t.requestAnimationFrame(...n)})},setTimeout(...n){const r=setTimeout(...n);t.add(()=>clearTimeout(r))},microTask(...n){const r={current:!0};return fi(()=>{r.current&&n[0]()}),t.add(()=>{r.current=!1})},style(n,r,o){const s=n.style.getPropertyValue(r);return Object.assign(n.style,{[r]:o}),this.add(()=>{Object.assign(n.style,{[r]:s})})},group(n){const r=Jo();return n(r),this.add(()=>r.dispose())},add(n){return e.push(n),()=>{const r=e.indexOf(n);if(r>=0)for(const o of e.splice(r,1))o()}},dispose(){for(const n of e.splice(0))n()}};return t}function ib(e,t){let n=e(),r=new Set;return{getSnapshot(){return n},subscribe(o){return r.add(o),()=>r.delete(o)},dispatch(o,...s){let i=t[o].call(n,...s);i&&(n=i,r.forEach(a=>a()))}}}function ab(){let e;return{before({doc:t}){const n=t.documentElement,r=t.defaultView??window;e=Math.max(0,r.innerWidth-n.clientWidth)},after({doc:t,d:n}){const r=t.documentElement,o=Math.max(0,r.clientWidth-r.offsetWidth),s=Math.max(0,e-o);n.style(r,"paddingRight",`${s}px`)}}}function Wd(){return/iPhone/gi.test(window.navigator.platform)||/Mac/gi.test(window.navigator.platform)&&window.navigator.maxTouchPoints>0}function lb(){return/Android/gi.test(window.navigator.userAgent)}function ub(){return Wd()||lb()}function cb(){return Wd()?{before({doc:e,d:t,meta:n}){function r(o){return n.containers.flatMap(s=>s()).some(s=>s.contains(o))}t.microTask(()=>{if(window.getComputedStyle(e.documentElement).scrollBehavior!=="auto"){const i=Jo();i.style(e.documentElement,"scrollBehavior","auto"),t.add(()=>t.microTask(()=>i.dispose()))}const o=window.scrollY??window.pageYOffset;let s=null;t.addEventListener(e,"click",i=>{if(i.target instanceof HTMLElement)try{const a=i.target.closest("a");if(!a)return;const{hash:l}=new URL(a.href),u=e.querySelector(l);u&&!r(u)&&(s=u)}catch{}},!0),t.addEventListener(e,"touchstart",i=>{if(i.target instanceof HTMLElement)if(r(i.target)){let a=i.target;for(;a.parentElement&&r(a.parentElement);)a=a.parentElement;t.style(a,"overscrollBehavior","contain")}else t.style(i.target,"touchAction","none")}),t.addEventListener(e,"touchmove",i=>{if(i.target instanceof HTMLElement){if(i.target.tagName==="INPUT")return;if(r(i.target)){let a=i.target;for(;a.parentElement&&a.dataset.moonbasePortal!==""&&!(a.scrollHeight>a.clientHeight||a.scrollWidth>a.clientWidth);)a=a.parentElement;a.dataset.moonbasePortal===""&&i.preventDefault()}else i.preventDefault()}},{passive:!1}),t.add(()=>{const i=window.scrollY??window.pageYOffset;o!==i&&window.scrollTo(0,o),s&&s.isConnected&&(s.scrollIntoView({block:"nearest"}),s=null)})})}}:{}}function db(){return{before({doc:e,d:t}){t.style(e.documentElement,"overflow","hidden")}}}function fb(e){const t={};for(const n of e)Object.assign(t,n(t));return t}const kr=ib(()=>new Map,{PUSH(e,t){const n=this.get(e)??{doc:e,count:0,d:Jo(),meta:new Set};return n.count++,n.meta.add(t),this.set(e,n),this},POP(e,t){const n=this.get(e);return n&&(n.count--,n.meta.delete(t)),this},SCROLL_PREVENT({doc:e,d:t,meta:n}){const r={doc:e,d:t,meta:fb(n)},o=[cb(),ab(),db()];o.forEach(({before:s})=>s==null?void 0:s(r)),o.forEach(({after:s})=>s==null?void 0:s(r))},SCROLL_ALLOW({d:e}){e.dispose()},TEARDOWN({doc:e}){this.delete(e)}});kr.subscribe(()=>{const e=kr.getSnapshot(),t=new Map;for(const[n]of e)t.set(n,n.documentElement.style.overflow);for(const n of e.values()){const r=t.get(n.doc)==="hidden",o=n.count!==0;(o&&!r||!o&&r)&&kr.dispatch(n.count>0?"SCROLL_PREVENT":"SCROLL_ALLOW",n),n.count===0&&kr.dispatch("TEARDOWN",n)}});function pb(e,t,n){const r=sb(kr),o=Y(()=>{const s=e.value?r.value.get(e.value):void 0;return s?s.count>0:!1});return ze([e,t],([s,i],[a],l)=>{if(!s||!i)return;kr.dispatch("PUSH",s,n);let u=!1;l(()=>{u||(kr.dispatch("POP",a??s,n),u=!0)})},{immediate:!0}),o}let hb=0;function mb(){return++hb}function Lt(){return mb()}const Qa=new Map,Yo=new Map;function zd(e,t=R(!0)){pt(n=>{if(!t.value)return;const r=X(e);if(!r)return;n(()=>{if(!r)return;const s=Yo.get(r)??1;if(s===1?Yo.delete(r):Yo.set(r,s-1),s!==1)return;const i=Qa.get(r);i&&(i["aria-hidden"]===null?r.removeAttribute("aria-hidden"):r.setAttribute("aria-hidden",i["aria-hidden"]),r.inert=i.inert,Qa.delete(r))});const o=Yo.get(r)??0;Yo.set(r,o+1),o===0&&(Qa.set(r,{"aria-hidden":r.getAttribute("aria-hidden"),inert:r.inert}),r.setAttribute("aria-hidden","true"),r.inert=!0)})}function Xo(e,t,n,r){Ko.isServer||pt(o=>{e.value&&(document.addEventListener(t,n,r),o(()=>document.removeEventListener(t,n,r)))})}const Kd=30;function Gd(e,t,n=Y(()=>!0)){function r(i,a){if(i.defaultPrevented)return;const l=a(i);if(l===null||!l.getRootNode().contains(l))return;const u=function c(d){return typeof d=="function"?c(d()):Array.isArray(d)||d instanceof Set?d:[d]}(e);for(const c of u){if(c===null)continue;const d=c instanceof HTMLElement?c:X(c);if(d!=null&&d.contains(l)||i.composed&&i.composedPath().includes(d))return}return!Bd(l,Xa.Loose)&&l.tabIndex!==-1&&i.preventDefault(),t(i,l)}const o=R(null);Xo(n,"pointerdown",i=>{var a,l;o.value=((l=(a=i.composedPath)==null?void 0:a.call(i))==null?void 0:l[0])||i.target},!0),Xo(n,"mousedown",i=>{var a,l;o.value=((l=(a=i.composedPath)==null?void 0:a.call(i))==null?void 0:l[0])||i.target},!0),Xo(n,"click",i=>{ub()||o.value&&(r(i,()=>o.value),o.value=null)},!0);const s={x:0,y:0};Xo(n,"touchstart",i=>{s.x=i.touches[0].clientX,s.y=i.touches[0].clientY},!0),Xo(n,"touchend",i=>{const a={x:i.changedTouches[0].clientX,y:i.changedTouches[0].clientY};if(!(Math.abs(a.x-s.x)>=Kd||Math.abs(a.y-s.y)>=Kd))return r(i,()=>i.target instanceof HTMLElement?i.target:null)},!0),Ld(n,"blur",i=>r(i,()=>window.document.activeElement instanceof HTMLIFrameElement?window.document.activeElement:null),!0)}function Jd({defaultContainers:e=[],portals:t,mainTreeNodeRef:n}={}){const r=R(null),o=kn(r);function s(){var a,l;const i=[];for(const u of e)u!==null&&(u instanceof HTMLElement?i.push(u):"value"in u&&u.value instanceof HTMLElement&&i.push(u.value));if(t!=null&&t.value)for(const u of t.value)i.push(u);for(const u of(o==null?void 0:o.querySelectorAll("html > *, body > *"))??[])u!==document.body&&u!==document.head&&u instanceof HTMLElement&&u.id!=="moonbase"&&(u.contains(X(r))||u.contains((l=(a=X(r))==null?void 0:a.getRootNode())==null?void 0:l.host)||i.some(c=>u.contains(c))||i.push(u));return i}return{resolveContainers:s,contains(i){return s().some(a=>a.contains(i))},mainTreeNodeRef:r,MainTreeNode(){return n!=null?null:Ue(tr,{features:er.Hidden,ref:r})}}}let Yd=Symbol("Context");var lt=(e=>(e[e.Open=1]="Open",e[e.Closed=2]="Closed",e[e.Closing=4]="Closing",e[e.Opening=8]="Opening",e))(lt||{});function vb(){return pi()!==null}function pi(){return Se(Yd,null)}function Xd(e){ft(Yd,e)}const Qd=Symbol("ForcePortalRootContext");function gb(){return Se(Qd,!1)}const ef=he({name:"ForcePortalRoot",props:{as:{type:[Object,String],default:"template"},force:{type:Boolean,default:!1}},setup(e,{slots:t,attrs:n}){return ft(Qd,e.force),()=>{const{force:r,...o}=e;return rt({theirProps:o,ourProps:{},slot:{},slots:t,attrs:n,name:"ForcePortalRoot"})}}});let tf=Symbol("StackContext");var el=(e=>(e[e.Add=0]="Add",e[e.Remove=1]="Remove",e))(el||{});function yb(){return Se(tf,()=>{})}function bb({type:e,enabled:t,element:n,onUpdate:r}){let o=yb();function s(...i){r==null||r(...i),o(...i)}Re(()=>{ze(t,(i,a)=>{i?s(0,e,n):a===!0&&s(1,e,n)},{immediate:!0,flush:"sync"})}),dt(()=>{t.value&&s(1,e,n)}),ft(tf,s)}var ot=(e=>(e.Space=" ",e.Enter="Enter",e.Escape="Escape",e.Backspace="Backspace",e.Delete="Delete",e.ArrowLeft="ArrowLeft",e.ArrowUp="ArrowUp",e.ArrowRight="ArrowRight",e.ArrowDown="ArrowDown",e.Home="Home",e.End="End",e.PageUp="PageUp",e.PageDown="PageDown",e.Tab="Tab",e))(ot||{});let _b=Symbol("DescriptionContext");function wb({slot:e=R({}),name:t="Description",props:n={}}={}){let r=R([]);function o(s){return r.value.push(s),()=>{let i=r.value.indexOf(s);i!==-1&&r.value.splice(i,1)}}return ft(_b,{register:o,slot:e,name:t,props:n}),Y(()=>r.value.length>0?r.value.join(" "):void 0)}function nf(e){const t=kn(e);if(!t){if(e===null)return null;throw new Error(`[Moonbase]: Cannot find ownerDocument for contextElement: ${e}`)}const n=t.getElementById("moonbase");if(n)return n;throw new Error("[Moonbase]: Cannot find existing root element")}const tl=Symbol("PortalParentContext"),rf=Symbol("PortalGroupContext"),Eb=he({name:"Portal",props:{as:{type:[Object,String],default:"div"}},setup(e,{slots:t,attrs:n}){const r=R(null),o=gb(),s=Se(rf,null),i=R(o===!0||s==null?nf(r.value):s.resolveTarget()),a=R(!1);Re(()=>{a.value=!0}),pt(()=>{o||s!=null&&(i.value=s.resolveTarget())});const l=Se(tl,null);let u=!1;const c=Ks();return ze(r,()=>{if(u||!l)return;const d=X(r);d&&(dt(l.register(d),c),u=!0)}),()=>{if(!a.value||i.value===null)return null;const d={ref:r,"data-moonbase-portal":""};return Ue(_m,{to:i.value},rt({ourProps:d,theirProps:e,slot:{},attrs:n,slots:t,name:"Portal"}))}}});function of(){const e=Se(tl,null),t=R([]);function n(s){return t.value.push(s),e&&e.register(s),()=>r(s)}function r(s){const i=t.value.indexOf(s);i!==-1&&t.value.splice(i,1),e&&e.unregister(s)}const o={register:n,unregister:r,portals:t};return[t,he({name:"PortalWrapper",setup(s,{slots:i}){return ft(tl,o),()=>{var a;return(a=i.default)==null?void 0:a.call(i)}}})]}const Ob=he({name:"PortalGroup",props:{as:{type:[Object,String],default:"template"},target:{type:Object,default:null}},setup(e,{attrs:t,slots:n}){const r=xo({resolveTarget(){return e.target}});return ft(rf,r),()=>{const{target:o,...s}=e;return rt({theirProps:s,ourProps:{},slot:{},attrs:t,slots:n,name:"PortalGroup"})}}}),nl=Symbol("DialogContext");function rl(e){const t=Se(nl,null);if(t===null)throw new Error(`<${e} /> is missing a parent <Dialog /> component.`);return t}const hi="DC8F892D-2EBD-447C-A4C8-A03058436FF4",sf=he({name:"Dialog",inheritAttrs:!1,props:{as:{type:[Object,String],default:"div"},static:{type:Boolean,default:!1},unmount:{type:Boolean,default:!0},open:{type:[Boolean,String],default:hi},initialFocus:{type:Object,default:null},id:{type:String,default:()=>`moonbase-dialog-${Lt()}`},role:{type:String,default:"dialog"},makeInert:{type:Boolean,default:!0}},emits:{close:e=>!0},setup(e,{emit:t,attrs:n,slots:r,expose:o}){var ve;const s=R(!1);Re(()=>{s.value=!0});let i=!1;const a=Y(()=>e.role==="dialog"||e.role==="alertdialog"?e.role:(i||(i=!0,console.warn(`Invalid role [${a}] passed to <Dialog />. Only \`dialog\` and and \`alertdialog\` are supported. Using \`dialog\` instead.`)),"dialog")),l=R(0),u=pi(),c=Y(()=>e.open===hi&&u!==null?(u.value&lt.Open)===lt.Open:e.open),d=R(null),f=Y(()=>kn(d));if(o({el:d,$el:d}),!(e.open!==hi||u!==null))throw new Error("You forgot to provide an `open` prop to the `Dialog`.");if(typeof c.value!="boolean")throw new TypeError(`You provided an \`open\` prop to the \`Dialog\`, but the value is not a boolean. Received: ${c.value===hi?void 0:e.open}`);const E=Y(()=>s.value&&c.value?0:1),N=Y(()=>E.value===0),O=R(null),I={titleId:O,panelRef:R(null),dialogState:E,setTitleId(ae){O.value!==ae&&(O.value=ae)},close(){t("close",!1)}},j=Y(()=>l.value>1),$=Se(nl,null)!==null,[W,y]=of(),{resolveContainers:M,mainTreeNodeRef:P,MainTreeNode:re}=Jd({portals:W,defaultContainers:[Y(()=>I.panelRef.value??d.value)]}),S=Y(()=>j.value?"parent":"leaf"),A=Y(()=>u!==null?(u.value&lt.Closing)===lt.Closing:!1),D=Y(()=>!e.makeInert||$||A.value?!1:N.value),k=Y(()=>{var ae;return Array.from(((ae=f.value)==null?void 0:ae.querySelectorAll("body > *"))??[]).find(Fe=>Fe.id==="moonbase"?!1:Fe.contains(X(P))&&Fe instanceof HTMLElement)??null});zd(k,D);const L=Y(()=>j.value?!0:N.value),ne=Y(()=>{var ae;return Array.from(((ae=f.value)==null?void 0:ae.querySelectorAll("[data-moonbase-portal]"))??[]).find(Fe=>Fe.contains(X(P))&&Fe instanceof HTMLElement)??null});zd(ne,L),bb({type:"Dialog",enabled:Y(()=>E.value===0),element:d,onUpdate:(ae,Fe)=>{if(Fe==="Dialog")return nt(ae,{[el.Add]:()=>l.value+=1,[el.Remove]:()=>l.value-=1})}});const h=wb({name:"DialogDescription",slot:Y(()=>({open:c.value}))});ft(nl,I);const V=Y(()=>!(!N.value||j.value));Gd(M,(ae,Fe)=>{ae.preventDefault(),I.close(),To(()=>Fe==null?void 0:Fe.focus())},V);const ee=Y(()=>!(j.value||E.value!==0));Ga((ve=f.value)==null?void 0:ve.defaultView,"keydown",ae=>{ee.value&&(ae.defaultPrevented||ae.key===ot.Escape&&(ae.preventDefault(),ae.stopPropagation(),I.close()))});const ie=Y(()=>!(A.value||E.value!==0||$));return pb(f,ie,ae=>({containers:[...ae.containers??[],M]})),pt(ae=>{if(E.value!==0)return;const Fe=X(d);if(!Fe)return;const mt=new ResizeObserver(Be=>{for(const St of Be){const nr=St.target.getBoundingClientRect();nr.x===0&&nr.y===0&&nr.width===0&&nr.height===0&&I.close()}});mt.observe(Fe),ae(()=>mt.disconnect())}),()=>{const{id:ae,open:Fe,initialFocus:mt,...Be}=e,St={...n,ref:d,id:ae,role:a.value,"aria-modal":E.value===0?!0:void 0,"aria-labelledby":O.value,"aria-describedby":h.value},nr={open:E.value===0};return Ue(ef,{force:!0},()=>[Ue(Eb,()=>Ue(Ob,{target:d.value},()=>Ue(ef,{force:!1},()=>Ue(Go,{initialFocus:mt,containers:M,features:N.value?nt(S.value,{parent:Go.features.RestoreFocus,leaf:Go.features.All&~Go.features.FocusLock}):Go.features.None},()=>Ue(y,{},()=>rt({ourProps:St,theirProps:{...Be,...n},slot:nr,attrs:n,slots:r,visible:E.value===0,features:Xn.RenderStrategy|Xn.Static,name:"Dialog"})))))),Ue(re)])}}}),af=he({name:"DialogOverlay",props:{as:{type:[Object,String],default:"div"},id:{type:String,default:()=>`moonbase-dialog-overlay-${Lt()}`}},setup(e,{attrs:t,slots:n}){const r=rl("DialogOverlay");function o(s){s.target===s.currentTarget&&(s.preventDefault(),s.stopPropagation(),r.close())}return()=>{const{id:s,...i}=e;return rt({ourProps:{id:s,"aria-hidden":!0,onClick:o},theirProps:i,slot:{open:r.dialogState.value===0},attrs:t,slots:n,name:"DialogOverlay"})}}}),lf=he({name:"DialogPanel",props:{as:{type:[Object,String],default:"div"},id:{type:String,default:()=>`moonbase-dialog-panel-${Lt()}`}},setup(e,{attrs:t,slots:n,expose:r}){const o=rl("DialogPanel");r({el:o.panelRef,$el:o.panelRef});function s(i){i.stopPropagation()}return()=>{const{id:i,...a}=e,l={id:i,ref:o.panelRef,onClick:s};return rt({ourProps:l,theirProps:a,slot:{open:o.dialogState.value===0},attrs:t,slots:n,name:"DialogPanel"})}}}),mi=he({name:"DialogTitle",props:{as:{type:[Object,String],default:"h2"},id:{type:String,default:()=>`moonbase-dialog-title-${Lt()}`}},setup(e,{attrs:t,slots:n}){const r=rl("DialogTitle");return Re(()=>{r.setTitleId(e.id),dt(()=>r.setTitleId(null))}),()=>{const{id:o,...s}=e;return rt({ourProps:{id:o},theirProps:s,slot:{open:r.dialogState.value===0},attrs:t,slots:n,name:"DialogTitle"})}}});function uf(e,t){if(e)return e;const n=t??"button";if(typeof n=="string"&&n.toLowerCase()==="button")return"button"}function cf(e,t){const n=R(uf(e.value.type,e.value.as));return Re(()=>{n.value=uf(e.value.type,e.value.as)}),pt(()=>{var r;n.value||X(t)&&X(t)instanceof HTMLButtonElement&&!((r=X(t))!=null&&r.hasAttribute("type"))&&(n.value="button")}),n}const df=Symbol("PopoverContext");function ff(e){const t=Se(df,null);if(t===null)throw new Error(`<${e} /> is missing a parent <Popover /> component.`);return t}const Nb=Symbol("PopoverGroupContext");function pf(){return Se(Nb,null)}const hf=Symbol("PopoverPanelContext");function xb(){return Se(hf,null)}const mf=he({name:"Popover",inheritAttrs:!1,props:{as:{type:[Object,String],default:"div"}},setup(e,{slots:t,attrs:n,expose:r}){var W;const o=R(null);r({el:o,$el:o});const s=R(1),i=R(null),a=R(null),l=R(null),u=R(null),c=Y(()=>kn(o)),d=Y(()=>{var D,k;if(!X(i)||!X(u))return!1;for(const L of document.querySelectorAll("body > *"))if(Number(L==null?void 0:L.contains(X(i)))^Number(L==null?void 0:L.contains(X(u))))return!0;const y=di(),M=y.indexOf(X(i)),P=(M+y.length-1)%y.length,re=(M+1)%y.length,S=y[P],A=y[re];return!((D=X(u))!=null&&D.contains(S))&&!((k=X(u))!=null&&k.contains(A))}),f={popoverState:s,buttonId:R(null),panelId:R(null),panel:u,button:i,isPortalled:d,beforePanelSentinel:a,afterPanelSentinel:l,togglePopover(){s.value=nt(s.value,{0:1,1:0})},closePopover(){s.value!==1&&(s.value=1)},close(y){f.closePopover();const M=y?y instanceof HTMLElement?y:y.value instanceof HTMLElement?X(y):X(f.button):X(f.button);M==null||M.focus()}};ft(df,f),Xd(Y(()=>nt(s.value,{0:lt.Open,1:lt.Closed})));const m={buttonId:f.buttonId,panelId:f.panelId,close(){f.closePopover()}},E=pf(),N=E==null?void 0:E.registerPopover,[O,I]=of(),j=Jd({mainTreeNodeRef:E==null?void 0:E.mainTreeNodeRef,portals:O,defaultContainers:[i,u]});function $(){var y,M,P;return(E==null?void 0:E.isFocusWithinPopoverGroup())??(((y=c.value)==null?void 0:y.activeElement)&&(((M=X(i))==null?void 0:M.contains(c.value.activeElement))||((P=X(u))==null?void 0:P.contains(c.value.activeElement))))}return pt(()=>N==null?void 0:N(m)),Ga((W=c.value)==null?void 0:W.defaultView,"focus",y=>{var M,P;y.target!==window&&y.target instanceof HTMLElement&&s.value===0&&($()||i&&u&&(j.contains(y.target)||(M=X(f.beforePanelSentinel))!=null&&M.contains(y.target)||(P=X(f.afterPanelSentinel))!=null&&P.contains(y.target)||f.closePopover()))},!0),Gd(j.resolveContainers,(y,M)=>{var P;f.closePopover(),Bd(M,Xa.Loose)||(y.preventDefault(),(P=X(i))==null||P.focus())},Y(()=>s.value===0)),()=>{const y={open:s.value===0,close:f.close};return Ue(Ce,[Ue(I,{},()=>rt({theirProps:{...e,...n},ourProps:{ref:o},slot:y,slots:t,attrs:n,name:"Popover"})),Ue(j.MainTreeNode)])}}}),vf=he({name:"PopoverButton",props:{as:{type:[Object,String],default:"button"},disabled:{type:[Boolean],default:!1},id:{type:String,default:()=>`moonbase-popover-button-${Lt()}`}},inheritAttrs:!1,setup(e,{attrs:t,slots:n,expose:r}){const o=ff("PopoverButton"),s=Y(()=>kn(o.button));r({el:o.button,$el:o.button}),Re(()=>{o.buttonId.value=e.id}),dt(()=>{o.buttonId.value=null});const i=pf(),a=i==null?void 0:i.closeOthers,l=xb(),u=Y(()=>l===null?!1:l.value===o.panelId.value),c=R(null),d=`moonbase-focus-sentinel-${Lt()}`;u.value||pt(()=>{o.button.value=X(c)});const f=cf(Y(()=>({as:e.as,type:t.type})),c);function m($){var W,y,M,P,re;if(u.value){if(o.popoverState.value===1)return;switch($.key){case ot.Space:case ot.Enter:$.preventDefault(),(y=(W=$.target).click)==null||y.call(W),o.closePopover(),(M=X(o.button))==null||M.focus();break}}else switch($.key){case ot.Space:case ot.Enter:$.preventDefault(),$.stopPropagation(),o.popoverState.value===1&&(a==null||a(o.buttonId.value)),o.togglePopover();break;case ot.Escape:if(o.popoverState.value!==0)return a==null?void 0:a(o.buttonId.value);if(!X(o.button)||(P=s.value)!=null&&P.activeElement&&!((re=X(o.button))!=null&&re.contains(s.value.activeElement)))return;$.preventDefault(),$.stopPropagation(),o.closePopover();break}}function E($){u.value||$.key===ot.Space&&$.preventDefault()}function N($){var W,y;e.disabled||(u.value?(o.closePopover(),(W=X(o.button))==null||W.focus()):($.preventDefault(),$.stopPropagation(),o.popoverState.value===1&&(a==null||a(o.buttonId.value)),o.togglePopover(),(y=X(o.button))==null||y.focus()))}function O($){$.preventDefault(),$.stopPropagation()}const I=Ja();function j(){const $=X(o.panel);if(!$)return;function W(){nt(I.value,{[$t.Forwards]:()=>at($,We.First),[$t.Backwards]:()=>at($,We.Last)})===Cn.Error&&at(di().filter(M=>M.dataset.moonbaseFocusGuard!=="true"),nt(I.value,{[$t.Forwards]:We.Next,[$t.Backwards]:We.Previous}),{relativeTo:X(o.button)})}W()}return()=>{const $=o.popoverState.value===0,W={open:$},{id:y,...M}=e,P=u.value?{ref:c,type:f.value,onKeydown:m,onClick:N}:{ref:c,id:y,type:f.value,"aria-expanded":o.popoverState.value===0,"aria-controls":X(o.panel)?o.panelId.value:void 0,disabled:e.disabled?!0:void 0,onKeydown:m,onKeyup:E,onClick:N,onMousedown:O};return Ue(Ce,[rt({ourProps:P,theirProps:{...t,...M},slot:W,attrs:t,slots:n,name:"PopoverButton"}),$&&!u.value&&o.isPortalled.value&&Ue(tr,{id:d,features:er.Focusable,"data-moonbase-focus-guard":!0,as:"button",type:"button",onFocus:j})])}}}),gf=he({name:"PopoverPanel",props:{as:{type:[Object,String],default:"div"},static:{type:Boolean,default:!1},unmount:{type:Boolean,default:!0},focus:{type:Boolean,default:!1},id:{type:String,default:()=>`moonbase-popover-panel-${Lt()}`}},inheritAttrs:!1,setup(e,{attrs:t,slots:n,expose:r}){const{focus:o}=e,s=ff("PopoverPanel"),i=Y(()=>kn(s.panel)),a=`moonbase-focus-sentinel-before-${Lt()}`,l=`moonbase-focus-sentinel-after-${Lt()}`;r({el:s.panel,$el:s.panel}),Re(()=>{s.panelId.value=e.id}),dt(()=>{s.panelId.value=null}),ft(hf,s.panelId),pt(()=>{var I,j;if(!o||s.popoverState.value!==0||!s.panel)return;const O=(I=i.value)==null?void 0:I.activeElement;(j=X(s.panel))!=null&&j.contains(O)||at(X(s.panel),We.First)});const u=pi(),c=Y(()=>u!==null?(u.value&lt.Open)===lt.Open:s.popoverState.value===0);function d(O){var I,j;switch(O.key){case ot.Escape:if(s.popoverState.value!==0||!X(s.panel)||i.value&&!((I=X(s.panel))!=null&&I.contains(i.value.activeElement)))return;O.preventDefault(),O.stopPropagation(),s.closePopover(),(j=X(s.button))==null||j.focus();break}}function f(O){var j,$,W,y,M;const I=O.relatedTarget;I&&X(s.panel)&&((j=X(s.panel))!=null&&j.contains(I)||(s.closePopover(),((W=($=X(s.beforePanelSentinel))==null?void 0:$.contains)!=null&&W.call($,I)||(M=(y=X(s.afterPanelSentinel))==null?void 0:y.contains)!=null&&M.call(y,I))&&I.focus({preventScroll:!0})))}const m=Ja();function E(){const O=X(s.panel);if(!O)return;function I(){nt(m.value,{[$t.Forwards]:()=>{var $;at(O,We.First)===Cn.Error&&(($=X(s.afterPanelSentinel))==null||$.focus())},[$t.Backwards]:()=>{var j;(j=X(s.button))==null||j.focus({preventScroll:!0})}})}I()}function N(){const O=X(s.panel);if(!O)return;function I(){nt(m.value,{[$t.Forwards]:()=>{const j=X(s.button),$=X(s.panel);if(!j)return;const W=di(),y=W.indexOf(j),M=W.slice(0,y+1),re=[...W.slice(y+1),...M];for(const S of re.slice())if(S.dataset.moonbaseFocusGuard==="true"||$!=null&&$.contains(S)){const A=re.indexOf(S);A!==-1&&re.splice(A,1)}at(re,We.First,{sorted:!1})},[$t.Backwards]:()=>{var $;at(O,We.Previous)===Cn.Error&&(($=X(s.button))==null||$.focus())}})}I()}return()=>{const O={open:s.popoverState.value===0,close:s.close},{id:I,focus:j,...$}=e,W={ref:s.panel,id:I,onKeydown:d,onFocusout:o&&s.popoverState.value===0?f:void 0,tabIndex:-1};return rt({ourProps:W,theirProps:{...t,...$},attrs:t,slot:O,slots:{...n,default:(...y)=>{var M;return[Ue(Ce,[c.value&&s.isPortalled.value&&Ue(tr,{id:a,ref:s.beforePanelSentinel,features:er.Focusable,"data-moonbase-focus-guard":!0,as:"button",type:"button",onFocus:E}),(M=n.default)==null?void 0:M.call(n,...y),c.value&&s.isPortalled.value&&Ue(tr,{id:l,ref:s.afterPanelSentinel,features:er.Focusable,"data-moonbase-focus-guard":!0,as:"button",type:"button",onFocus:N})])]}},features:Xn.RenderStrategy|Xn.Static,visible:c.value,name:"PopoverPanel"})}}});let Sb=he({props:{onFocus:{type:Function,required:!0}},setup(e){let t=R(!0);return()=>t.value?Ue(tr,{as:"button",type:"button",features:er.Focusable,onFocus(n){n.preventDefault();let r,o=50;function s(){var i;if(o--<=0){r&&cancelAnimationFrame(r);return}if((i=e.onFocus)!=null&&i.call(e)){t.value=!1,cancelAnimationFrame(r);return}r=requestAnimationFrame(s)}r=requestAnimationFrame(s)}}):null}});const yf=Symbol("TabsContext");function vi(e){const t=Se(yf,null);if(t===null)throw new Error(`<${e} /> is missing a parent <TabGroup /> component.`);return t}const ol=Symbol("TabsSSRContext"),kb=he({name:"TabGroup",emits:{change:e=>!0},props:{as:{type:[Object,String],default:"template"},selectedIndex:{type:[Number],default:null},defaultIndex:{type:[Number],default:0},vertical:{type:[Boolean],default:!1},manual:{type:[Boolean],default:!1}},inheritAttrs:!1,setup(e,{slots:t,attrs:n,emit:r}){const o=R(e.selectedIndex??e.defaultIndex),s=R([]),i=R([]),a=Y(()=>e.selectedIndex!==null),l=Y(()=>a.value?e.selectedIndex:o.value),u={selectedIndex:Y(()=>o.value??e.defaultIndex??null),orientation:Y(()=>e.vertical?"vertical":"horizontal"),activation:Y(()=>e.manual?"manual":"auto"),tabs:s,panels:i,setSelectedIndex(E){l.value!==E&&r("change",E),a.value||c(E)},registerTab(E){if(s.value.includes(E))return;const N=s.value[o.value];if(s.value.push(E),s.value=Yr(s.value,X),!a.value){const O=s.value.indexOf(N)??o.value;O!==-1&&(o.value=O)}},unregisterTab(E){const N=s.value.indexOf(E);N!==-1&&s.value.splice(N,1)},registerPanel(E){i.value.includes(E)||(i.value.push(E),i.value=Yr(i.value,X))},unregisterPanel(E){const N=i.value.indexOf(E);N!==-1&&i.value.splice(N,1)}};function c(E){const N=Yr(u.tabs.value,X),O=Yr(u.panels.value,X),I=N.filter(j=>{var $;return!(($=X(j))!=null&&$.hasAttribute("disabled"))});if(E<0||E>N.length-1){const j=nt(o.value===null?0:Math.sign(E-o.value),{[-1]:()=>1,0:()=>nt(Math.sign(E),{[-1]:()=>0,0:()=>0,1:()=>1}),1:()=>0}),$=nt(j,{0:()=>N.indexOf(I[0]),1:()=>N.indexOf(I[I.length-1])});$!==-1&&(o.value=$),u.tabs.value=N,u.panels.value=O}else{const j=N.slice(0,E),W=[...N.slice(E),...j].find(M=>I.includes(M));if(!W)return;let y=N.indexOf(W)??u.selectedIndex.value;y===-1&&(y=u.selectedIndex.value),o.value=y,u.tabs.value=N,u.panels.value=O}}ft(yf,u);const d=R({tabs:[],panels:[]}),f=R(!1);Re(()=>{f.value=!0}),ft(ol,Y(()=>f.value?null:d.value));const m=Y(()=>e.selectedIndex);return Re(()=>{ze([m],()=>c(e.selectedIndex??e.defaultIndex),{immediate:!0})}),pt(()=>{if(!a.value||l.value==null||u.tabs.value.length<=0)return;const E=Yr(u.tabs.value,X);E.some((O,I)=>X(u.tabs.value[I])!==X(O))&&u.setSelectedIndex(E.findIndex(O=>X(O)===X(u.tabs.value[l.value])))}),()=>{const E={selectedIndex:o.value};return Ue(Ce,[s.value.length<=0&&Ue(Sb,{onFocus:()=>{for(const N of s.value){const O=X(N);if((O==null?void 0:O.tabIndex)===0)return O.focus(),!0}return!1}}),rt({theirProps:{...n,...Ya(e,["selectedIndex","defaultIndex","manual","vertical","onChange"])},ourProps:{},slot:E,slots:t,attrs:n,name:"TabGroup"})])}}}),Cb=he({name:"TabList",props:{as:{type:[Object,String],default:"div"}},setup(e,{attrs:t,slots:n}){const r=vi("TabList");return()=>{const o={selectedIndex:r.selectedIndex.value},s={role:"tablist","aria-orientation":r.orientation.value};return rt({ourProps:s,theirProps:e,slot:o,attrs:t,slots:n,name:"TabList"})}}}),sl=he({name:"Tab",props:{as:{type:[Object,String],default:"button"},disabled:{type:[Boolean],default:!1},id:{type:String,default:()=>`moonbase-tabs-tab-${Lt()}`}},setup(e,{attrs:t,slots:n,expose:r}){const o=vi("Tab"),s=R(null);r({el:s,$el:s}),Re(()=>o.registerTab(s)),dt(()=>o.unregisterTab(s));const i=Se(ol),a=Y(()=>{if(i.value){const O=i.value.tabs.indexOf(e.id);return O===-1?i.value.tabs.push(e.id)-1:O}return-1}),l=Y(()=>{const O=o.tabs.value.indexOf(s);return O===-1?a.value:O}),u=Y(()=>l.value===o.selectedIndex.value);function c(O){var j;const I=O();if(I===Cn.Success&&o.activation.value==="auto"){const $=(j=kn(s))==null?void 0:j.activeElement,W=o.tabs.value.findIndex(y=>X(y)===$);W!==-1&&o.setSelectedIndex(W)}return I}function d(O){const I=o.tabs.value.map($=>X($)).filter(Boolean);if(O.key===ot.Space||O.key===ot.Enter){O.preventDefault(),O.stopPropagation(),o.setSelectedIndex(l.value);return}switch(O.key){case ot.Home:case ot.PageUp:return O.preventDefault(),O.stopPropagation(),c(()=>at(I,We.First));case ot.End:case ot.PageDown:return O.preventDefault(),O.stopPropagation(),c(()=>at(I,We.Last))}if(c(()=>nt(o.orientation.value,{vertical(){return O.key===ot.ArrowUp?at(I,We.Previous|We.WrapAround):O.key===ot.ArrowDown?at(I,We.Next|We.WrapAround):Cn.Error},horizontal(){return O.key===ot.ArrowLeft?at(I,We.Previous|We.WrapAround):O.key===ot.ArrowRight?at(I,We.Next|We.WrapAround):Cn.Error}}))===Cn.Success)return O.preventDefault()}const f=R(!1);function m(){var O;f.value||(f.value=!0,!e.disabled&&((O=X(s))==null||O.focus({preventScroll:!0}),o.setSelectedIndex(l.value),fi(()=>{f.value=!1})))}function E(O){O.preventDefault()}const N=cf(Y(()=>({as:e.as,type:t.type})),s);return()=>{var W;const O={selected:u.value,disabled:e.disabled??!1},{id:I,...j}=e,$={ref:s,onKeydown:d,onMousedown:E,onClick:m,id:I,role:"tab",type:N.value,"aria-controls":(W=X(o.panels.value[l.value]))==null?void 0:W.id,"aria-selected":u.value,tabIndex:u.value?0:-1,disabled:e.disabled?!0:void 0};return rt({ourProps:$,theirProps:j,slot:O,attrs:t,slots:n,name:"Tab"})}}}),Tb=he({name:"TabPanels",props:{as:{type:[Object,String],default:"div"}},setup(e,{slots:t,attrs:n}){const r=vi("TabPanels");return()=>{const o={selectedIndex:r.selectedIndex.value};return rt({theirProps:e,ourProps:{},slot:o,attrs:n,slots:t,name:"TabPanels"})}}}),il=he({name:"TabPanel",props:{as:{type:[Object,String],default:"div"},static:{type:Boolean,default:!1},unmount:{type:Boolean,default:!0},id:{type:String,default:()=>`moonbase-tabs-panel-${Lt()}`},tabIndex:{type:Number,default:0}},setup(e,{attrs:t,slots:n,expose:r}){const o=vi("TabPanel"),s=R(null);r({el:s,$el:s}),Re(()=>o.registerPanel(s)),dt(()=>o.unregisterPanel(s));const i=Se(ol),a=Y(()=>{if(i.value){const c=i.value.panels.indexOf(e.id);return c===-1?i.value.panels.push(e.id)-1:c}return-1}),l=Y(()=>{const c=o.panels.value.indexOf(s);return c===-1?a.value:c}),u=Y(()=>l.value===o.selectedIndex.value);return()=>{var N;const c={selected:u.value},{id:d,tabIndex:f,...m}=e,E={ref:s,id:d,role:"tabpanel","aria-labelledby":(N=X(o.tabs.value[l.value]))==null?void 0:N.id,tabIndex:u.value?f:-1};return!u.value&&e.unmount&&!e.static?Ue(tr,{as:"span","aria-hidden":!0,...E}):rt({ourProps:E,theirProps:m,slot:c,attrs:t,slots:n,features:Xn.Static|Xn.RenderStrategy,visible:u.value,name:"TabPanel"})}}});function Pb(e){let t={called:!1};return(...n)=>{if(!t.called)return t.called=!0,e(...n)}}function al(e,...t){e&&t.length>0&&!e.dataset.transition?e.dataset.transition=t.join(" "):e&&t.length>0&&e.dataset.transition&&(e.dataset.transition=[...e.dataset.transition.split(" "),...t].join(" "))}function gi(e,...t){e&&t.length>0&&e.dataset.transition&&(e.dataset.transition=e.dataset.transition.split(" ").filter(n=>!t.includes(n)).join(" "))}var ll=(e=>(e.Finished="finished",e.Cancelled="cancelled",e))(ll||{});function $b(e,t){const n=Jo();if(!e)return n.dispose;const{transitionDuration:r,transitionDelay:o}=getComputedStyle(e),[s,i]=[r,o].map(a=>{const[l=0]=a.split(",").filter(Boolean).map(u=>u.includes("ms")?Number.parseFloat(u):Number.parseFloat(u)*1e3).sort((u,c)=>c-u);return l});return s!==0?n.setTimeout(()=>t("finished"),s+i):t("finished"),n.add(()=>t("cancelled")),n.dispose}function bf(e,t,n,r,o,s){const i=Jo(),a=s!==void 0?Pb(s):()=>{};return gi(e,...o),al(e,...t,...n),i.nextFrame(()=>{gi(e,...n),al(e,...r),i.add($b(e,l=>(gi(e,...r,...t),al(e,...o),a(l))))}),i.add(()=>gi(e,...t,...n,...r,...o)),i.add(()=>a("cancelled")),i.dispose}function Cr(e=""){return e.split(/\s+/).filter(t=>t.length>1)}const ul=Symbol("TransitionContext");function Db(){return Se(ul,null)!==null}function Ib(){const e=Se(ul,null);if(e===null)throw new Error("A <TransitionChild /> is used but it is missing a parent <TransitionRoot />.");return e}const cl=Symbol("NestingContext");function Ab(){const e=Se(cl,null);if(e===null)throw new Error("A <TransitionChild /> is used but it is missing a parent <TransitionRoot />.");return e}function yi(e){return"children"in e?yi(e.children):e.value.filter(({state:t})=>t==="visible").length>0}function _f(e){const t=R([]),n=R(!1);Re(()=>n.value=!0),dt(()=>n.value=!1);function r(s,i=Qn.Hidden){const a=t.value.findIndex(({id:l})=>l===s);a!==-1&&(nt(i,{[Qn.Unmount](){t.value.splice(a,1)},[Qn.Hidden](){t.value[a].state="hidden"}}),!yi(t)&&n.value&&(e==null||e()))}function o(s){const i=t.value.find(({id:a})=>a===s);return i?i.state!=="visible"&&(i.state="visible"):t.value.push({id:s,state:"visible"}),()=>r(s,Qn.Unmount)}return{children:t,register:o,unregister:r}}const wf=Xn.RenderStrategy,Qo=he({props:{as:{type:[Object,String],default:"div"},show:{type:[Boolean],default:null},unmount:{type:[Boolean],default:!0},appear:{type:[Boolean],default:!1},enter:{type:[String],default:"enter"},enterFrom:{type:[String],default:"enter-from"},enterTo:{type:[String],default:"enter-to"},entered:{type:[String],default:"entered"},leave:{type:[String],default:"leave"},leaveFrom:{type:[String],default:"leave-from"},leaveTo:{type:[String],default:"leave-to"}},emits:{beforeEnter:()=>!0,afterEnter:()=>!0,beforeLeave:()=>!0,afterLeave:()=>!0},setup(e,{emit:t,attrs:n,slots:r,expose:o}){const s=R(0);function i(){s.value|=lt.Opening,t("beforeEnter")}function a(){s.value&=~lt.Opening,t("afterEnter")}function l(){s.value|=lt.Closing,t("beforeLeave")}function u(){s.value&=~lt.Closing,t("afterLeave")}if(!Db()&&vb())return()=>Ue(dl,{...e,onBeforeEnter:i,onAfterEnter:a,onBeforeLeave:l,onAfterLeave:u},r);const c=R(null),d=Y(()=>e.unmount?Qn.Unmount:Qn.Hidden);o({el:c,$el:c});const{show:f,appear:m}=Ib(),{register:E,unregister:N}=Ab(),O=R(f.value?"visible":"hidden"),I={value:!0},j=Lt(),$={value:!1},W=_f(()=>{!$.value&&O.value!=="hidden"&&(O.value="hidden",N(j),u())});Re(()=>{const L=E(j);dt(L)}),pt(()=>{if(d.value===Qn.Hidden&&j){if(f.value&&O.value!=="visible"){O.value="visible";return}nt(O.value,{hidden:()=>N(j),visible:()=>E(j)})}});const y=Cr(e.enter),M=Cr(e.enterFrom),P=Cr(e.enterTo),re=Cr(e.entered),S=Cr(e.leave),A=Cr(e.leaveFrom),D=Cr(e.leaveTo);Re(()=>{pt(()=>{if(O.value==="visible"){const L=X(c);if(L instanceof Comment&&L.data==="")throw new Error("Did you forget to passthrough the `ref` to the actual DOM node?")}})});function k(L){const ne=I.value&&!m.value,h=X(c);!h||!(h instanceof HTMLElement)||ne||($.value=!0,f.value&&i(),f.value||l(),L(f.value?bf(h,y,M,P,re,V=>{$.value=!1,V===ll.Finished&&a()}):bf(h,S,A,D,re,V=>{$.value=!1,V===ll.Finished&&(yi(W)||(O.value="hidden",N(j),u()))})))}return Re(()=>{ze([f],(L,ne,h)=>{k(h),I.value=!1},{immediate:!0})}),ft(cl,W),Xd(Y(()=>nt(O.value,{visible:lt.Open,hidden:lt.Closed})|s.value)),()=>{const{appear:L,show:ne,enter:h,enterFrom:V,enterTo:ee,entered:ie,leave:ve,leaveFrom:ae,leaveTo:Fe,...mt}=e,Be={ref:c},St={...mt,...m.value&&f.value&&Ko.isServer?{class:_s([n.class,mt.class,...y,...M])}:{}};return rt({theirProps:St,ourProps:Be,slot:{},slots:r,attrs:n,features:wf,visible:O.value==="visible",name:"TransitionChild"})}}}),Vb=Qo,dl=he({inheritAttrs:!1,props:{as:{type:[Object,String],default:"div"},show:{type:[Boolean],default:null},unmount:{type:[Boolean],default:!0},appear:{type:[Boolean],default:!1},enter:{type:[String],default:""},enterFrom:{type:[String],default:""},enterTo:{type:[String],default:""},entered:{type:[String],default:""},leave:{type:[String],default:""},leaveFrom:{type:[String],default:""},leaveTo:{type:[String],default:""}},emits:{beforeEnter:()=>!0,afterEnter:()=>!0,beforeLeave:()=>!0,afterLeave:()=>!0},setup(e,{emit:t,attrs:n,slots:r}){const o=pi(),s=Y(()=>e.show===null&&o!==null?(o.value&lt.Open)===lt.Open:e.show);pt(()=>{if(![!0,!1].includes(s.value))throw new Error('A <Transition /> is used but it is missing a `:show="true | false"` prop.')});const i=R(s.value?"visible":"hidden"),a=_f(()=>{i.value="hidden"}),l=R(!0),u={show:s,appear:Y(()=>e.appear||!l.value)};return Re(()=>{pt(()=>{l.value=!1,s.value?i.value="visible":yi(a)||(i.value="hidden")})}),ft(cl,a),ft(ul,u),()=>{const c=Ya(e,["show","appear","unmount","onBeforeEnter","onBeforeLeave","onAfterEnter","onAfterLeave"]),d={unmount:e.unmount};return rt({ourProps:{...d,as:"template"},theirProps:{},slot:{},slots:{...r,default:()=>[Ue(Vb,{onBeforeEnter:()=>t("beforeEnter"),onAfterEnter:()=>t("afterEnter"),onBeforeLeave:()=>t("beforeLeave"),onAfterLeave:()=>t("afterLeave"),...n,...d,...c},r.default)]},attrs:{},features:wf,visible:i.value==="visible",name:"Transition"})}}}),Rb=["data-contain"],bi=he({__name:"Modal",props:{open:{type:Boolean}},emits:["close"],setup(e){const t=Se(Nr);return(n,r)=>(w(),ke(_(dl),{as:"template",show:n.open},{default:we(()=>{var o,s;return[z(_(sf),{as:"div",class:"moonbase:modal","data-contain":!!((o=_(t))!=null&&o.target)||void 0,"make-inert":!((s=_(t))!=null&&s.target),onClose:r[0]||(r[0]=i=>n.$emit("close"))},{default:we(()=>{var i;return[x("div",{class:"moonbase:modal-container","data-contain":!!((i=_(t))!=null&&i.target)||void 0},[z(_(Qo),{as:"template"},{default:we(()=>{var a;return[z(_(af),{class:"moonbase:modal-overlay","data-contain":!!((a=_(t))!=null&&a.target)||void 0},null,8,["data-contain"])]}),_:1}),z(_(Qo),{as:"template"},{default:we(()=>[z(_(lf),{class:"moonbase:modal-content"},{default:we(()=>[ma(n.$slots,"default")]),_:3})]),_:3})],8,Rb)]}),_:3},8,["data-contain","make-inert"])]}),_:3},8,["show"]))}}),jb=["data-visible"],Mb=he({__name:"SignIn",emits:["signedIn"],setup(e,{emit:t}){const n=t,r=je(),o=wt(),s=Se(Nr),i=R(r.getParameter("email")??""),a=R(""),l=R(null);async function u(){l.value=null;try{const c=await o.signIn(i.value,a.value);Kt(1500).then(()=>n("signedIn",c))}catch(c){throw c instanceof Vn?l.value="User not found":l.value=c.message,c}}return(c,d)=>(w(),ke(Jn,{handler:u,class:"moonbase:sign-in"},{default:we(()=>{var f;return[z(Et,{modelValue:i.value,"onUpdate:modelValue":d[0]||(d[0]=m=>i.value=m),label:"Email address",name:"email",type:"email",placeholder:"Email address",autocomplete:"email",required:""},null,8,["modelValue"]),z(Et,{modelValue:a.value,"onUpdate:modelValue":d[1]||(d[1]=m=>a.value=m),label:"Password",name:"password",type:"password",placeholder:"Password",autocomplete:"current-password",required:""},null,8,["modelValue"]),z(Yn,{success:"Signed in",label:"Sign in",error:"Error"}),x("span",{class:"moonbase:error","data-visible":!!l.value||void 0},J(l.value),9,jb),(f=_(s))!=null&&f.auth.signUp.enabled?(w(),C("button",{key:0,type:"button",onClick:d[2]||(d[2]=m=>_(r).show(_(Ne).Authentication,_(ue).SignUp,{email:i.value}))}," Create account ")):fe("",!0),x("button",{type:"button",onClick:d[3]||(d[3]=m=>_(r).show(_(Ne).Authentication,_(ue).ForgotPassword,{email:i.value}))}," Forgot password ")]}),_:1}))}});function fl(...e){}const Lb={class:"moonbase:authentication"},Ub={key:0,class:"moonbase:loader"},Fb=he({__name:"Authentication",props:{open:{type:Boolean}},setup(e){const t=je(),{loaded:n}=wt(),r=Y(()=>{switch(t.intent){case ue.SignIn:return"Sign in";case ue.SignUp:return"Sign up";case ue.ConfirmAccount:return"Confirm account";case ue.ConfirmEmailChange:return"Confirm email change";case ue.ForgotPassword:return"Forgot password";case ue.ResetPassword:return"Reset password"}return"Authentication"}),o=Y(()=>{if(t.intent===ue.SignIn&&t.next){const[i,a,l]=t.next;if(i===Ne.Authentication&&a===ue.ConfirmEmailChange)return"to confirm email"}return null});function s(){t.reset()}return(i,a)=>(w(),ke(bi,{open:i.open,onClose:s},{default:we(()=>[x("div",Lb,[z(_(mi),{as:"h3"},{default:we(()=>[Te(J(r.value)+" "+J(o.value),1)]),_:1}),_(n)?_(t).intent===_(ue).SignIn?(w(),ke(Mb,{key:1,onSignedIn:a[0]||(a[0]=l=>_(t).dequeue())})):_(t).intent===_(ue).SignUp?(w(),ke(jy,{key:2,onSignedUp:a[1]||(a[1]=l=>_(t).show(_(Ne).Customer,_(ue).ViewAccount))})):_(t).intent===_(ue).ConfirmAccount?(w(),ke(Fy,{key:3,onConfirmedAccount:a[2]||(a[2]=l=>_(t).show(_(Ne).Customer,_(ue).ViewAccount))})):_(t).intent===_(ue).ConfirmEmailChange?(w(),ke(Gy,{key:4})):_(t).intent===_(ue).ForgotPassword?(w(),ke(Hy,{key:5})):_(t).intent===_(ue).ResetPassword?(w(),ke(qy,{key:6,onPasswordReset:a[3]||(a[3]=l=>_(t).show(_(Ne).Customer,_(ue).ViewAccount))})):fe("",!0):(w(),C("div",Ub,[z(Mt)]))])]),_:1},8,["open"]))}});function Dt(e,t){return new Intl.NumberFormat(void 0,{style:"currency",currency:t,currencyDisplay:"narrowSymbol",maximumFractionDigits:2,minimumFractionDigits:2}).format(e)}const Bb={class:"moonbase:product-cart-item"},Hb=["src"],Zb={key:1,class:"moonbase:image-placeholder"},qb={class:"moonbase:product-cart-item-content"},Wb={key:0,class:"moonbase:cart-item-discount"},zb={class:"font-semibold"},Kb={key:0,class:"ml-0.5"},Gb={key:2,class:"moonbase:product-cart-item-total"},Jb={key:0,class:"moonbase:discount"},Yb={key:1},Xb=he({__name:"ProductCartItem",props:{lineItem:{},currency:{}},setup(e){return(t,n)=>{var r,o,s;return w(),C("div",Bb,[(r=t.lineItem.product)!=null&&r.iconUrl?(w(),C("img",{key:0,src:t.lineItem.product.iconUrl,alt:""},null,8,Hb)):(w(),C("div",Zb)),x("div",qb,[x("h3",null,J((o=t.lineItem.product)==null?void 0:o.name),1),x("p",null,J((s=t.lineItem.product)==null?void 0:s.tagline),1),t.lineItem.appliedDiscount?(w(),C("p",Wb,[n[0]||(n[0]=Te(" Discount applied: ")),x("span",zb,J(t.lineItem.appliedDiscount.name),1),t.lineItem.appliedDiscount.total?(w(),C("span",Kb," (-"+J(_(Dt)(t.lineItem.appliedDiscount.total[t.currency],t.currency))+") ",1)):fe("",!0)])):fe("",!0),x("p",null,J(t.lineItem.quantity)+" in cart",1)]),t.lineItem.variation?(w(),C("div",Gb,[t.lineItem.variation.hasDiscount?(w(),C("span",Jb,J(_(Dt)(t.lineItem.variation.originalPrice[t.currency],t.currency)),1)):fe("",!0),t.lineItem.quantity!==1?(w(),C("span",Yb,J(t.lineItem.quantity)+" x "+J(_(Dt)(t.lineItem.variation.price[t.currency],t.currency)),1)):fe("",!0),Te(" "+J(_(Dt)(t.lineItem.variation.price[t.currency]*t.lineItem.quantity,t.currency)),1)])):fe("",!0)])}}}),Qb={class:"moonbase:bundle-cart-item"},e_=["src"],t_={key:1,class:"moonbase:image-placeholder"},n_={class:"moonbase:bundle-cart-item-content"},r_={key:0,class:"moonbase:cart-item-discount"},o_={class:"font-semibold"},s_={key:0,class:"ml-0.5"},i_={class:"moonbase:bundle-cart-item-summary"},a_=["data-open"],l_={key:2,class:"moonbase:product-cart-item-total"},u_={key:0,class:"moonbase:discount"},c_={key:1},d_=["src"],f_={key:1,class:"moonbase:image-placeholder"},p_=["data-included"],h_={key:0,fill:"none",viewBox:"0 0 24 24","stroke-width":"1.5",stroke:"currentColor"},m_={key:0,class:"truncate italic"},v_={key:1,class:"truncate"},g_=he({__name:"BundleCartItem",props:{lineItem:{},currency:{}},setup(e){const t=R(!1),n=R(null);return ze(t,r=>{n.value&&(n.value.style.height=r?`${n.value.scrollHeight}px`:"0px")}),(r,o)=>{var s,i,a,l,u,c,d;return w(),C("div",null,[x("div",Qb,[(s=r.lineItem.bundle)!=null&&s.iconUrl?(w(),C("img",{key:0,src:r.lineItem.bundle.iconUrl,alt:""},null,8,e_)):(w(),C("div",t_)),x("div",n_,[x("h3",null,J((i=r.lineItem.bundle)==null?void 0:i.name),1),x("p",null,J((a=r.lineItem.bundle)==null?void 0:a.tagline),1),r.lineItem.appliedDiscount?(w(),C("p",r_,[o[1]||(o[1]=Te(" Discount applied: ")),x("span",o_,J(r.lineItem.appliedDiscount.name),1),r.lineItem.appliedDiscount.total?(w(),C("span",s_," (-"+J(_(Dt)(r.lineItem.appliedDiscount.total[r.currency],r.currency))+") ",1)):fe("",!0)])):fe("",!0),x("div",i_,[x("span",null,J(r.lineItem.quantity)+" in cart",1),r.lineItem.bundle?(w(),C("button",{key:0,onClick:o[0]||(o[0]=f=>t.value=!t.value)},[x("span",null,[Te(" Including "+J((l=r.lineItem.bundle)==null?void 0:l.products.filter(f=>f.included).length)+" ",1),(u=r.lineItem.bundle)!=null&&u.products.some(f=>!f.included)?(w(),C(Ce,{key:0},[Te("of "+J((c=r.lineItem.bundle)==null?void 0:c.products.length),1)],64)):fe("",!0),o[2]||(o[2]=Te(" products "))]),(w(),C("svg",{"data-open":t.value||void 0,fill:"none",viewBox:"0 0 24 24","stroke-width":"1.5",stroke:"currentColor"},o[3]||(o[3]=[x("path",{"stroke-linecap":"round","stroke-linejoin":"round",d:"m19.5 8.25-7.5 7.5-7.5-7.5"},null,-1)]),8,a_))])):fe("",!0)])]),r.lineItem.variation?(w(),C("div",l_,[r.lineItem.variation.hasDiscount?(w(),C("span",u_,J(_(Dt)(r.lineItem.variation.originalPrice[r.currency],r.currency)),1)):fe("",!0),r.lineItem.quantity!==1?(w(),C("span",c_,J(r.lineItem.quantity)+" x "+J(_(Dt)(r.lineItem.variation.price[r.currency],r.currency)),1)):fe("",!0),Te(" "+J(_(Dt)(r.lineItem.variation.price[r.currency]*r.lineItem.quantity,r.currency)),1)])):fe("",!0)]),x("div",{ref_key:"productListRef",ref:n,class:"moonbase:bundle-cart-item-product-list",style:{height:"0px"}},[(w(!0),C(Ce,null,an(((d=r.lineItem.bundle)==null?void 0:d.products)||[],f=>(w(),C("div",{key:f.id},[f!=null&&f.iconUrl?(w(),C("img",{key:0,src:f.iconUrl,alt:""},null,8,d_)):(w(),C("div",f_)),x("div",null,[x("h3",{"data-included":f.included||void 0},[f.included?(w(),C("svg",h_,o[4]||(o[4]=[x("path",{"stroke-linecap":"round","stroke-linejoin":"round",d:"m4.5 12.75 6 6 9-13.5"},null,-1)]))):fe("",!0),Te(" "+J(f==null?void 0:f.name),1)],8,p_),f.included?f!=null&&f.tagline?(w(),C("p",v_,J(f.tagline),1)):fe("",!0):(w(),C("p",m_," You already own this "))])]))),128))],512)])}}}),y_=["data-contain"],b_=he({__name:"CartModal",props:{open:{type:Boolean}},emits:["close"],setup(e){const t=Se(Nr);return(n,r)=>(w(),ke(_(dl),{as:"template",show:n.open},{default:we(()=>{var o,s;return[z(_(sf),{as:"div",class:"moonbase:cart-modal","data-contain":!!((o=_(t))!=null&&o.target)||void 0,"make-inert":!((s=_(t))!=null&&s.target),onClose:r[0]||(r[0]=i=>n.$emit("close"))},{default:we(()=>{var i;return[x("div",{class:"moonbase:cart-modal-container","data-contain":!!((i=_(t))!=null&&i.target)||void 0},[z(_(Qo),{as:"template"},{default:we(()=>{var a;return[z(_(af),{class:"moonbase:cart-modal-overlay","data-contain":!!((a=_(t))!=null&&a.target)||void 0},null,8,["data-contain"])]}),_:1}),z(_(Qo),{as:"template"},{default:we(()=>{var a;return[z(_(lf),{class:"moonbase:cart-modal-content","data-contain":!!((a=_(t))!=null&&a.target)||void 0},{default:we(()=>[ma(n.$slots,"default")]),_:3},8,["data-contain"])]}),_:3})],8,y_)]}),_:3},8,["data-contain","make-inert"])]}),_:3},8,["show"]))}}),__=["disabled","data-success","data-error","data-working","data-variant"],w_=["data-visible"],Ef=he({__name:"MoonButton",props:{handler:{type:Function},label:{},success:{},error:{},variant:{},noReset:{type:Boolean}},setup(e){const t=e,n=R(!1),r=R(!1),o=R(!1),s=Y(()=>r.value?t.success??t.label:o.value?t.error:t.label);async function i(){try{const a=t.handler();if(a instanceof Promise){if(n.value=!0,await a,n.value=!1,!t.success)return;r.value=!0,await Kt(2500),t.noReset||(r.value=!1)}}catch{n.value=!1,o.value=!0,await Kt(2500),o.value=!1}}return(a,l)=>(w(),C("button",{class:"moonbase:button",type:"button",disabled:r.value||o.value||n.value,"data-success":r.value&&a.success||void 0,"data-error":o.value||void 0,"data-working":n.value||void 0,"data-variant":a.variant,onClick:i},[x("div",{"data-visible":n.value||void 0,"aria-hidden":"true"},[n.value?(w(),ke(Mt,{key:0})):fe("",!0)],8,w_),Te(" "+J(s.value),1)],8,__))}}),E_={class:"moonbase:cart"},O_={key:0,role:"list",class:"moonbase:cart-items"},N_={key:1,class:"moonbase:cart-empty"},x_={key:2,class:"moonbase:cart-total"},S_=he({__name:"Cart",props:{open:{type:Boolean}},setup(e){const t=je(),{items:n,total:r,currency:o,checkout:s}=ni(),i=Se(Nr);async function a(){if(!await s({redirect:(i==null?void 0:i.checkout.redirect)??!1,returnUrl:`${window.location.pathname}?mb_intent=view_products`}))throw new Error("Cancelled checkout")}return(l,u)=>(w(),ke(b_,{open:l.open,onClose:u[0]||(u[0]=c=>_(t).reset())},{default:we(()=>[x("div",E_,[z(_(mi),{as:"h3"},{default:we(()=>u[1]||(u[1]=[Te(" Cart ")])),_:1}),_(n).length>0?(w(),C("ul",O_,[(w(!0),C(Ce,null,an(_(n),c=>(w(),C("li",{key:c.id},[c.type==="Product"?(w(),ke(Xb,{key:0,"line-item":c,currency:_(o)},null,8,["line-item","currency"])):c.type==="Bundle"?(w(),ke(g_,{key:1,"line-item":c,currency:_(o)},null,8,["line-item","currency"])):fe("",!0)]))),128))])):(w(),C("div",N_," Your cart is empty! ")),_(n).length>0?(w(),C("div",x_,[u[2]||(u[2]=x("label",null," Total ",-1)),x("span",null,J(_(Dt)(_(r).amount,_(r).currency)),1),u[3]||(u[3]=x("p",null," Sales tax to be calculated at checkout ",-1))])):fe("",!0),_(n).length>0?(w(),ke(Ef,{key:3,handler:a,label:"Checkout",error:"Cancelled"})):fe("",!0)])]),_:1},8,["open"]))}}),k_={class:"moonbase:account"},C_={key:0,class:"moonbase:error"},T_={key:1,class:"moonbase:notification"},P_={key:0,class:"moonbase:error"},$_=he({__name:"Account",setup(e){var j,$,W;const t=je(),{user:n,update:r,setPassword:o,signOut:s}=wt(),i=R(((j=n.value)==null?void 0:j.name)??""),a=R((($=n.value)==null?void 0:$.email)??""),l=R(((W=n.value)==null?void 0:W.communicationPreferences)??{newsletterOptIn:!1}),u=R(null),c=R(!1),d=R(""),f=R(""),m=R(null),E=R(!1);async function N(){u.value=null,c.value=!1;try{(await r(i.value,a.value,void 0,l.value)).needsEmailConfirmationToken&&(c.value=!0)}catch(y){throw u.value=y,y}}async function O(){m.value=null;try{await o(d.value,f.value),d.value="",f.value=""}catch(y){throw m.value=y,y}}async function I(){E.value=!0,await s(),t.reset()}return(y,M)=>(w(),C("div",k_,[z(Jn,{handler:N},{default:we(()=>[z(Et,{modelValue:i.value,"onUpdate:modelValue":M[0]||(M[0]=P=>i.value=P),label:"Full name",name:"name",autocomplete:"name",required:""},null,8,["modelValue"]),z(Et,{modelValue:a.value,"onUpdate:modelValue":M[1]||(M[1]=P=>a.value=P),label:"Email address",name:"email",type:"email",autocomplete:"email",required:""},null,8,["modelValue"]),z(Md,{modelValue:l.value.newsletterOptIn,"onUpdate:modelValue":M[2]||(M[2]=P=>l.value.newsletterOptIn=P),label:"Newsletter subscription",name:"newsletter-opt-in",hint:"Receive updates and offers by email"},null,8,["modelValue"]),z(Yn,{label:"Save",error:"Error",success:"Saved"}),u.value?(w(),C("p",C_,J(u.value.message),1)):c.value?(w(),C("p",T_," You need to confirm your new email address, please check your inbox ")):fe("",!0)]),_:1}),z(Jn,{handler:O},{default:we(()=>[z(Et,{modelValue:d.value,"onUpdate:modelValue":M[3]||(M[3]=P=>d.value=P),label:"Current password",name:"old-password",type:"password",autocomplete:"current-password",required:""},null,8,["modelValue"]),z(Et,{modelValue:f.value,"onUpdate:modelValue":M[4]||(M[4]=P=>f.value=P),label:"New password",name:"new-password",type:"password",autocomplete:"new-password",required:""},null,8,["modelValue"]),z(Yn,{label:"Save",error:"Error",success:"Saved"}),m.value?(w(),C("p",P_,J(m.value.message),1)):fe("",!0)]),_:1}),z(Ef,{label:"Log out",success:"Logged out",error:"Error",variant:"secondary",handler:I})]))}}),D_={},I_={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 512 512"};function A_(e,t){return w(),C("svg",I_,t[0]||(t[0]=[x("path",{d:"M320 336h76c55 0 100-21.21 100-75.6s-53-73.47-96-75.6C391.11 99.74 329 48 256 48c-69 0-113.44 45.79-128 91.2-60 5.7-112 35.88-112 98.4S70 336 136 336h56M192 400.1l64 63.9 64-63.9M256 224v224.03",fill:"none",stroke:"currentColor","stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"32"},null,-1)]))}const Of=Jr(D_,[["render",A_]]),V_={},R_={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 512 512"};function j_(e,t){return w(),C("svg",R_,t[0]||(t[0]=[x("path",{d:"M480 265H232v179l248 36V265zM216 265H32v150l184 26.7V265zM480 32L232 67.4V249h248V32zM216 69.7L32 96v153h184V69.7z",fill:"currentColor"},null,-1)]))}const Nf=Jr(V_,[["render",j_]]),M_={},L_={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 512 512"};function U_(e,t){return w(),C("svg",L_,t[0]||(t[0]=[x("path",{d:"M443.66 405.05c-1.46-.79-2.85-1.54-4-2.2-6.47-3.83-13-10.52-11.85-17.83 2.42-15.94 2.89-23.47-.49-28.79a15.61 15.61 0 0 0-7.67-6.2v-.06c1.41-2.56 2.26-5.66 2.83-10.12 1.44-11-5-44-13.7-70.7-8.08-24.68-29.24-50-44.7-68.56l-3.61-4.34c-23.88-28.93-24.34-38.19-26.55-82.67-.32-6.47-.69-13.8-1.17-22C329.87 41.43 304 16 256 16c-25.2 0-44.62 7.15-57.72 21.26C187.79 48.55 182 64 182 80.78c0 29.52 2 53 2.15 54.29 1.4 35.7 1 41.22-8.31 57.55-2.23 3.93-8.38 10.87-14.89 18.21-8.48 9.57-18.09 20.41-23.36 29.22-3.77 6.31-5.88 12.63-8.11 19.33-3.4 10.21-7.26 21.78-18.15 36.57-12.57 17.07-15.52 29.61-11 47.45-4.94 6.45-4.83 14.37-4.75 20.23a25.84 25.84 0 0 1-.3 6.09c-2.29 7.59-12.42 9.4-22 10.18-1.58.12-3.1.21-4.55.29-7.26.39-13.53.74-17.13 6.3-3.47 5.36-1.12 13.8 2.14 25.48.72 2.58 1.46 5.25 2.19 8.06 1.83 7-.16 10.48-2.68 14.84-2.44 4.21-5.21 9-5.21 17.55 0 14.67 20 18 43.05 21.94 7.36 1.24 15 2.53 22.63 4.24a225.58 225.58 0 0 1 34.08 10.68c9.72 3.73 17.4 6.68 26.43 6.68 16.18 0 28.25-9.77 39.92-19.21l2.15-1.75c5.53-4.49 21.5-4 34.34-3.64 3.46.1 6.73.2 9.65.2h6.22c13.48-.08 31.94-.18 42.23 2.5 3.75 1 6.2 3.72 9.29 7.19 5.87 6.56 13.17 14.75 33.39 14.75 19.39 0 29.55-8.71 41.32-18.8 7.16-6.13 14.56-12.48 25.07-17.86 3.92-2 7.62-3.87 11.08-5.61 22.64-11.38 35.11-17.65 35.11-27.82 0-9.91-12.24-16.5-20.34-20.86zM211.11 88.38a13.91 13.91 0 0 1 12.47 9c1.95 5.55 1.81 10.42.21 12.94 0 0-.22-1-.36-1.44a14.85 14.85 0 0 0-6.44-8.59 11.35 11.35 0 0 0-8.94-1.47c-4.26 1.13-8.41 5-8.91 18.79-5.16-10.47-2.31-18 .92-23 2.31-3.73 7.47-6.33 11.05-6.23zm-17.5 375C192 479.24 175.2 479 170.09 478.59c-9.81-.82-21.66-4.69-33.13-8.43-4.52-1.47-9.19-3-13.73-4.34-13.2-3.89-30.12-6.74-43.72-9-3.22-.55-6.27-1.06-9.05-1.55s-4.61-1.27-5.2-2.3c-1-1.65.38-5.25 1.93-9.41C69.27 438 72.11 430.34 72 421c0-3.91-1.47-8.3-2.84-12.56-1.62-5-3.28-10.17-1.93-12.62 1.23-2.23 6.75-2.49 11.6-2.49h2.26c3.55 0 6.62.06 8.75-.53 6.51-1.81 14.86-6.92 17.81-13.88.9-2.17 1.37-6.94 2-14 .37-4.12.74-8.37 1.22-10.58a3.55 3.55 0 0 1 2.11-2.55c1.65-.77 6.78-1.91 18.63 4.08 11.18 5.65 22.88 25.84 34.2 45.37 3.56 6.14 6.92 11.94 10.3 17.36 14.04 22.54 18.83 31.6 17.5 44.8zm128.84-31.56a68.74 68.74 0 0 1-4.55 10.9.58.58 0 0 1-1.08-.42 56.61 56.61 0 0 0 2.11-18.43c-.25-4.73-.4-7.59-2.66-8.51s-4.26.83-9.45 5.54c-1.1 1-2.36 2.14-3.78 3.4-10.8 9.47-26.88 20.68-55.61 23.37-16.84 1.59-27.59-4.63-30.92-8.14a2.16 2.16 0 0 0-3.07-.08 2.23 2.23 0 0 0-.51 2.29c2.12 6.84 1.2 12.26-.49 16.19-.95 2.2-1.85 2.05-2-.34-.25-4.64-1-9.88-3-14.19-3.11-6.94-7-14.34-8.89-17.88v-.05c3.24-1.49 8.86-4.83 11.37-10.88s4.48-18-9.82-31.74c-6.28-6.05-22.1-17.16-36.06-27-10.9-7.65-22.17-15.56-23.65-17.51-4.49-5.89-6.37-9.3-6.94-19.65.07-2.3.13-4.59.19-6.89l.27-2.49a.58.58 0 0 1 1.15 0 63.07 63.07 0 0 0 2 9.72c1.08 3.73 2.4 7.58 3.62 9.18 3.19 4.22 7.56 7.39 11.67 8.49a5.48 5.48 0 0 0 5-.72c2.93-2.33 2.65-7.6 2.19-16.34-.47-9-1.11-21.34 1.85-34.55 5.62-25 10.91-32.51 17.61-42 .86-1.22 1.75-2.47 2.65-3.79 1.44-2.08 3-4.1 4.67-6.23 7.47-9.61 15.93-20.49 13.92-40.95-.51-5.19-.76-8.83-.86-11.39a1 1 0 0 1 1.88-.59l.49.77 1.21 2c4.86 8 13.64 22.57 25.1 22.57a13.62 13.62 0 0 0 2.36-.21c23.39-3.93 51.9-30.25 52.17-30.51 3.12-3 2.84-6.14 1.64-7.91a5.18 5.18 0 0 0-6.45-1.72c-3.29 1.4-7.14 3.15-11.22 5-13.82 6.27-37 16.75-42.25 14.34a23.11 23.11 0 0 1-6.32-5.13 1 1 0 0 1 1.14-1.65c5.59 2.29 9.55 1.45 14.2-.08l1-.34c9.37-3.09 14.2-4.77 30.76-12.08a97.55 97.55 0 0 1 16.26-5.93c4-1 6.42-1.63 7.71-4.34a6.65 6.65 0 0 0-.5-7.13c-1.53-1.87-4.07-2.57-7-1.9-3.22.75-4.7 3-6.41 4.49-2.4 2.05-5 4.16-17.19 8.65-27 10-34.58 10.61-45.21 3.43-9.84-6.69-15.15-13.23-15.15-16 0-2.13 5.45-5.7 8.71-7.84 1.33-.87 2.59-1.69 3.62-2.46 4.34-3.22 13-11.39 13.38-11.73 5.4-5.41 17.91-2.18 25 2.58a2.23 2.23 0 0 0 1.72.41 2.14 2.14 0 0 0 1.68-2.58c-4.2-17.46-.13-27.34 4-32.55a22.58 22.58 0 0 1 17.48-8.48c12.81 0 21.76 10 21.76 24.42 0 11-2.82 16.79-5.48 20.3a1.73 1.73 0 0 1-2.58.18 1.78 1.78 0 0 1-.24-2.2A24.61 24.61 0 0 0 290 114a16.58 16.58 0 0 0-16.84-16.67c-3.94 0-13.48 1.5-16.77 15.44a29.81 29.81 0 0 0-.34 11.07l.08.71c.9 7.38 15.3 12.51 27.23 15.51 11.36 2.85 13 6.22 8.84 19.63s3.11 26.23 5.7 29.57a78.3 78.3 0 0 1 8.31 12.47 93.8 93.8 0 0 1 6.62 16.48c2.17 6.79 4.05 12.65 10.63 21.22 11.07 14.4 17.66 48.64 15 78-.21 2.41-.53 4.29-.77 5.67-.43 2.53-.72 4.2.66 5.38s3.16.7 7.26-.63l3.43-1.09a109.33 109.33 0 0 1 12.58-2.8 2.15 2.15 0 0 0 1.59-1.16c3.43-6.91 3.85-15.22 4-22.47q0-1.31.06-2.79c.19-7.77.45-18.93-2.95-32a1 1 0 0 1 1.93-.64 93 93 0 0 1 6.66 25.55c2.55 22.58-1.9 32.09-1.94 32.17a1.61 1.61 0 0 0 .95 2.25 17.12 17.12 0 0 1 6.95 4.67c1.46 1.66.93 2.4-1.14 1.62a36.26 36.26 0 0 0-12.77-2.29c-10.4 0-18.09 4.95-21.51 9.19-3.19 3.94-3.7 7.67-3.83 11.27l-.06.05c-7.48-.75-12.94 1.21-17.47 6.21l-.08.09c-6.26 7.75-4 24.63-1.29 38.48 1.28 6.45 5.59 25.52 1.73 37.68zm96.1 10.07c-15.71 6.71-25.43 14.51-34 21.39-5.65 4.53-11 8.81-17.28 12.14-10.12 5.34-24.91 6.53-33.27-7.7-2.37-4-.71-9.86 1.58-17.95 3.05-10.75 7.23-25.46 3.71-44.65-.94-5.12-1.77-9.51-2.49-13.31C334 377 332.9 371.43 334 367c.63-2.45 3.43-3 5.87-3a20.83 20.83 0 0 1 2.63.19 29.51 29.51 0 0 0 7 12.1c5.7 5.86 13.63 8.83 23.56 8.85 2.1.17 25.94 1.55 36.54-22.4 1.46.18 3.65.7 4.3 2.3 1.28 3.19-.27 8.91-1.52 13.5-.9 3.31-1.68 6.16-1.63 8.37.31 16 11 22.78 25.83 32.16 1.79 1.13 3.66 2.31 5.55 3.54S445 425 445 426c-.52 4.79-20 13.16-26.45 15.91z",fill:"currentColor"},null,-1)]))}const xf=Jr(M_,[["render",U_]]),F_={},B_={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 512 512"};function H_(e,t){return w(),C("svg",B_,t[0]||(t[0]=[x("path",{d:"M349.13 136.86c-40.32 0-57.36 19.24-85.44 19.24-28.79 0-50.75-19.1-85.69-19.1-34.2 0-70.67 20.88-93.83 56.45-32.52 50.16-27 144.63 25.67 225.11 18.84 28.81 44 61.12 77 61.47h.6c28.68 0 37.2-18.78 76.67-19h.6c38.88 0 46.68 18.89 75.24 18.89h.6c33-.35 59.51-36.15 78.35-64.85 13.56-20.64 18.6-31 29-54.35-76.19-28.92-88.43-136.93-13.08-178.34-23-28.8-55.32-45.48-85.79-45.48z",fill:"currentColor"},null,-1),x("path",{d:"M340.25 32c-24 1.63-52 16.91-68.4 36.86-14.88 18.08-27.12 44.9-22.32 70.91h1.92c25.56 0 51.72-15.39 67-35.11 14.72-18.77 25.88-45.37 21.8-72.66z",fill:"currentColor"},null,-1)]))}const Sf=Jr(F_,[["render",H_]]),Z_={class:"moonbase:product-downloads"},q_=["data-last","onClick"],W_={class:"moonbase:sr-only"},z_={class:"moonbase:sr-only"},K_=["onClick"],G_=he({__name:"ProductDownloads",props:{downloads:{}},setup(e){const t=e,n={[Qt.Universal]:()=>Of,[Qt.Windows]:()=>Nf,[Qt.Linux]:()=>xf,[Qt.Mac]:()=>Sf},{downloadProduct:r}=ti(),o=Y(()=>t.downloads.reduce((s,i)=>({...s,[i.platform]:(s[i.platform]||[]).concat({...i,icon:n[i.platform]})}),{}));return(s,i)=>(w(),C("span",Z_,[(w(!0),C(Ce,null,an(o.value,(a,l,u)=>(w(),C(Ce,{key:l},[a.length===1?(w(),C("button",{key:0,type:"button",role:"button","data-last":u===Object.keys(o.value).length-1||void 0,onClick:c=>_(r)(a[0])},[x("span",W_,J(l.toString()),1),(w(),ke(ha(a[0].icon()),{class:"h-5 w-5 text-white","aria-hidden":"true"}))],8,q_)):(w(),ke(_(mf),{key:1,as:"div","data-last":u===Object.keys(o.value).length-1||void 0,class:"moonbase:product-downloads-group"},{default:we(()=>[z(_(vf),null,{default:we(()=>[x("span",z_,J(l.toString()),1),(w(),ke(ha(a[0].icon()),{"aria-hidden":"true"})),i[0]||(i[0]=x("svg",{fill:"none",viewBox:"0 0 24 24","stroke-width":"1.5",stroke:"currentColor","aria-hidden":"true"},[x("path",{"stroke-linecap":"round","stroke-linejoin":"round",d:"m19.5 8.25-7.5 7.5-7.5-7.5"})],-1))]),_:2},1024),z(Ma,{name:"moonbase:scale"},{default:we(()=>[z(_(gf),{class:"moonbase:product-downloads-list"},{default:we(()=>[(w(!0),C(Ce,null,an(a,c=>(w(),C("button",{key:c.key,type:"button",role:"button",onClick:d=>_(r)(c)},[x("span",null,J(c.name),1)],8,K_))),128))]),_:2},1024)]),_:2},1024)]),_:2},1032,["data-last"]))],64))),128))]))}}),J_={class:"moonbase:product-activations"},Y_={key:0,scope:"col"},X_={key:0},Q_={colspan:"3"},e1={key:1},t1={key:0},n1=["onClick"],r1=he({__name:"ProductActivations",props:{productId:{}},emits:["revoked"],setup(e,{emit:t}){const n=e,r=t,{getProductActivations:o,revokeActivation:s}=ti(),i=R(null);Re(async()=>{let u=await o(n.productId);for(i.value=u.items.map(c=>({...c,revoking:!1}));u.hasMore&&u.next;)u=await o(n.productId,u.next),i.value.push(...u.items.map(c=>({...c,revoking:!1})))});const a=Y(()=>i.value&&i.value.some(u=>u.activationMethod===Ai.Online));async function l(u){u.revoking=!0,await s(u),r("revoked",u),i.value&&i.value.splice(i.value.indexOf(u),1)}return(u,c)=>(w(),C("table",J_,[x("thead",null,[x("tr",null,[c[1]||(c[1]=x("th",{scope:"col"}," Device ",-1)),c[2]||(c[2]=x("th",{scope:"col"}," Activation Method ",-1)),c[3]||(c[3]=x("th",{scope:"col"}," Last Online ",-1)),a.value?(w(),C("th",Y_,c[0]||(c[0]=[x("span",{class:"sr-only"},"Actions",-1)]))):fe("",!0)])]),x("tbody",null,[i.value?i.value.length===0?(w(),C("tr",e1,c[6]||(c[6]=[x("td",{colspan:"3"}," No activations found ",-1)]))):fe("",!0):(w(),C("tr",X_,[x("td",Q_,[z(Mt),c[4]||(c[4]=Te(" Loading activations.. "))]),c[5]||(c[5]=x("td",null,null,-1))])),(w(!0),C(Ce,null,an(i.value,d=>{var f;return w(),C("tr",{key:d.id},[x("td",null,J(d.name),1),x("td",null,J(d.activationMethod),1),x("td",null,J((f=d.lastValidatedAt)==null?void 0:f.toLocaleDateString()),1),a.value?(w(),C("td",t1,[x("button",{class:"text-red-400 flex whitespace-nowrap items-center",onClick:m=>l(d)},[d.revoking?(w(),ke(Mt,{key:0})):fe("",!0),c[7]||(c[7]=Te(" Revoke "))],8,n1)])):fe("",!0)])}),128))])]))}}),o1={class:"moonbase:products"},s1={key:0,scope:"col"},i1={key:1,scope:"col"},a1={key:0},l1={key:1},u1=["src"],c1={key:1,class:"moonbase:image-placeholder"},d1={key:1},f1={key:2},p1={key:0},h1=he({__name:"Products",setup(e){const{getProducts:t}=ti(),n=R(null);Re(async()=>{let s=await t();for(n.value=s.items;s.hasMore&&s.next;)s=await t(s.next),n.value.push(...s.items)});const r=Y(()=>n.value&&n.value.some(s=>s.downloads)),o=Y(()=>n.value&&n.value.some(s=>s.maxActivations&&s.maxActivations>0));return(s,i)=>(w(),C("table",o1,[x("thead",null,[x("tr",null,[i[0]||(i[0]=x("th",{scope:"col"}," Product ",-1)),o.value?(w(),C("th",s1," Activations ")):fe("",!0),r.value?(w(),C("th",i1," Downloads ")):fe("",!0)])]),x("tbody",null,[n.value?n.value.length===0?(w(),C("tr",l1,i[3]||(i[3]=[x("td",{colspan:"3"}," No products found ",-1)]))):fe("",!0):(w(),C("tr",a1,[x("td",null,[z(Mt),i[1]||(i[1]=Te(" Loading products.. "))]),i[2]||(i[2]=x("td",null,null,-1))])),(w(!0),C(Ce,null,an(n.value||[],a=>(w(),C("tr",{key:a.id},[x("td",null,[x("div",null,[a.iconUrl?(w(),C("img",{key:0,src:a.iconUrl,alt:""},null,8,u1)):(w(),C("div",c1)),x("span",null,J(a.name),1)])]),a.maxActivations&&a.maxActivations>0?(w(),ke(_(mf),{key:0,as:"td"},{default:we(()=>[z(_(vf),{class:"moonbase:button","data-variant":"secondary"},{default:we(()=>[i[4]||(i[4]=x("span",{class:"moonbase:sr-only"},"View activations",-1)),Te(" "+J(a.currentActivations)+" / "+J(a.maxActivations),1)]),_:2},1024),z(Ma,{name:"moonbase:scale"},{default:we(()=>[z(_(gf),null,{default:we(()=>[z(r1,{"product-id":a.id},null,8,["product-id"])]),_:2},1024)]),_:2},1024)]),_:2},1024)):o.value?(w(),C("td",d1)):fe("",!0),r.value?(w(),C("td",f1,[a.currentVersion!=null?(w(),C("div",p1,[a.downloads?(w(),ke(G_,{key:0,downloads:a.downloads},null,8,["downloads"])):fe("",!0)])):fe("",!0)])):fe("",!0)]))),128))])]))}}),m1={class:"moonbase:redeem"},v1=["data-visible"],g1={key:1,class:"moonbase:redeem-voucher"},y1={key:0},b1={key:1},_1={class:"moonbase:redeem-voucher-products"},w1=["src"],E1={key:1,class:"moonbase:image-placeholder"},O1={key:0},N1={class:"moonbase:redeem-voucher-bundle"},x1=["src"],S1={key:1,class:"moonbase:image-placeholder"},k1={key:0},C1={class:"moonbase:redeem-voucher-bundle-products"},T1={class:"shrink-0"},P1=["src"],$1={key:1,class:"moonbase:image-placeholder"},D1=he({__name:"Redeem",setup(e){const{redeem:t}=Rg(),n=R(!1),r=R(null),o=R(null),s=R("");async function i(){n.value=!0,o.value=null;try{r.value=await t(s.value)}catch(a){throw o.value=a,a}n.value=!1}return(a,l)=>(w(),C("div",m1,[z(Ma,{mode:"out-in",name:"moonbase:slide-left"},{default:we(()=>[r.value?(w(),C("div",g1,[x("h3",null,[l[1]||(l[1]=Te(" You got: ")),x("strong",null,J(r.value.name),1)]),r.value.description?(w(),C("h4",y1,J(r.value.description),1)):fe("",!0),x("h4",null,[l[2]||(l[2]=Te(" Code: ")),x("strong",null,J(r.value.code),1)]),r.value.redeemsProducts.length>0?(w(),C("div",b1,[l[3]||(l[3]=x("span",null," Contains: ",-1)),x("div",_1,[(w(!0),C(Ce,null,an(r.value.redeemsProducts,({value:u,quantity:c})=>(w(),C("div",{key:u.id,class:"moonbase:redeem-voucher-product"},[x("div",null,[u.iconUrl?(w(),C("img",{key:0,src:u.iconUrl,alt:""},null,8,w1)):(w(),C("div",E1))]),x("div",null,[x("p",null,[Te(J(u.name)+" ",1),c!==1?(w(),C("span",O1,"x "+J(c),1)):fe("",!0)]),x("p",null,J(u.tagline),1)])]))),128)),(w(!0),C(Ce,null,an(r.value.redeemsBundles,({value:u,quantity:c})=>(w(),C("div",{key:u.id},[x("div",N1,[x("div",null,[u.iconUrl?(w(),C("img",{key:0,src:u.iconUrl,alt:""},null,8,x1)):(w(),C("div",S1))]),x("div",null,[x("p",null,[Te(J(u.name)+" ",1),c!==1?(w(),C("span",k1,"x "+J(c),1)):fe("",!0)]),x("p",null,J(u.tagline),1)])]),x("div",C1,[(w(!0),C(Ce,null,an(u.products,d=>(w(),C("div",{key:d.id,class:"moonbase:redeem-voucher-product"},[x("div",T1,[d.iconUrl?(w(),C("img",{key:0,src:d.iconUrl,alt:""},null,8,P1)):(w(),C("div",$1))]),x("div",null,[x("p",null,J(d.name),1),x("p",null,J(d.tagline),1)])]))),128))])]))),128))])])):fe("",!0)])):(w(),ke(Jn,{key:0,handler:i},{default:we(()=>{var u;return[z(Et,{modelValue:s.value,"onUpdate:modelValue":l[0]||(l[0]=c=>s.value=c),label:"Voucher code",name:"code",required:""},null,8,["modelValue"]),z(Yn,{label:"Redeem",success:"Redeem",error:"Error"}),x("span",{class:"moonbase:error","data-visible":!!o.value||void 0},J((u=o.value)==null?void 0:u.message),9,v1)]}),_:1}))]),_:1})]))}}),I1={class:"moonbase:customer"},A1=he({__name:"Customer",props:{open:{type:Boolean}},setup(e){const t=je();function n(s){switch(s){case ue.ViewAccount:return 0;case ue.ViewProducts:return 1;case ue.RedeemVoucher:return 2}return 0}const r=R(n(t.intent));ze(()=>t.intent,s=>{r.value=n(s)});function o(s){r.value=s}return(s,i)=>(w(),ke(bi,{open:s.open,onClose:i[0]||(i[0]=a=>_(t).reset())},{default:we(()=>[x("div",I1,[z(_(kb),{"selected-index":r.value,onChange:o},{default:we(()=>[z(_(Cb),null,{default:we(()=>[z(_(sl),null,{default:we(()=>i[1]||(i[1]=[Te("Account")])),_:1}),z(_(sl),null,{default:we(()=>i[2]||(i[2]=[Te(" Products ")])),_:1}),z(_(sl),null,{default:we(()=>i[3]||(i[3]=[Te("Redeem")])),_:1})]),_:1}),z(_(Tb),null,{default:we(()=>[z(_(il),null,{default:we(()=>[z($_)]),_:1}),z(_(il),null,{default:we(()=>[z(h1)]),_:1}),z(_(il),null,{default:we(()=>[z(D1)]),_:1})]),_:1})]),_:1},8,["selected-index"])])]),_:1},8,["open"]))}}),V1={class:"moonbase:auto-activate"},R1={key:0,class:"moonbase:loader"},j1={key:1,class:"moonbase:loader"},M1={key:2,class:"moonbase:loader"},L1={key:3},U1={key:0,class:"moonbase:auto-activate-product"},F1=["src"],B1={key:1,class:"moonbase:image-placeholder"},H1={key:1,class:"moonbase:loader"},Z1={key:2,class:"moonbase:loader"},q1={key:3,class:"moonbase:loader"},W1={key:4,class:"moonbase:auto-activate-content"},z1={key:0},K1={key:1},G1={class:"moonbase:auto-activate-cta"},J1=["href"],Y1={key:2,class:"moonbase:auto-activate-trial"},X1={class:"moonbase:auto-activate-cta"},Q1=he({__name:"AutoActivate",setup(e){const t=je(),{user:n,loaded:r}=wt(),o=t.getParameter("token"),{activationRequest:s,loading:i,fulfilling:a,completing:l,error:u,fulfillLicense:c,fulfillTrial:d,cancel:f}=Vg(o);ze(s,N=>{var O;!a.value&&!l.value&&(N==null?void 0:N.status)===en.Requested&&((O=N==null?void 0:N.licenseEligibility)!=null&&O.eligible)&&c()});function m(){f(),t.show(Ne.Customer,ue.ViewProducts)}function E(){t.enqueue(Ne.Activation,ue.ActivateProduct,t.parameters??void 0),t.show(Ne.Authentication,ue.SignIn)}return(N,O)=>{var I,j,$,W;return w(),C("div",V1,[_(i)||!_(r)?(w(),C("div",R1,[z(Mt)])):_(u)?(w(),C("div",j1,J(_(u)),1)):_(s)?(w(),C("div",L1,[_(s).product?(w(),C("div",U1,[_(s).product.iconUrl?(w(),C("img",{key:0,src:_(s).product.iconUrl,alt:""},null,8,F1)):(w(),C("div",B1)),x("div",null,[x("h2",null,J(_(s).product.name),1),x("h3",null,J(_(s).product.tagline),1)])])):fe("",!0),((I=_(s))==null?void 0:I.status)===_(en).Cancelled?(w(),C("div",H1,O[2]||(O[2]=[x("h3",null," Uh oh ",-1),x("p",null," This activation request was cancelled, open your app to try again. ",-1)]))):_(a)||_(l)?(w(),C("div",Z1,[z(Mt),x("p",null,"Activating "+J(_(s).product.name)+"...",1)])):((j=_(s))==null?void 0:j.status)===_(en).Completed?(w(),C("div",q1,O[3]||(O[3]=[x("h3",null," Done! ",-1),x("p",null," Your product is activated. ",-1)]))):(w(),C("div",W1,[_(n)?($=_(n).ownedProducts)!=null&&$.includes(_(s).product.id)?(w(),C("div",K1,[O[5]||(O[5]=x("p",null," You don't have enough free seats on your licenses to activate this device. Either free up a seat or purchase additional licenses. ",-1)),x("span",G1,[x("button",{role:"button",class:"moonbase:button",onClick:O[0]||(O[0]=y=>m())}," Licenses "),_(s).product&&_(s).product.website?(w(),C("a",{key:0,href:_(s).product.website,class:"moonbase:button"}," Purchase ",8,J1)):fe("",!0)])])):fe("",!0):(w(),C("div",z1,[O[4]||(O[4]=Te(" Please sign in to use a license ")),x("span",{class:"moonbase:auto-activate-cta"},[x("button",{role:"button",class:"moonbase:button",onClick:E}," Sign in ")])])),(W=_(s).trialEligibility)!=null&&W.eligible?(w(),C("div",Y1,[Te(" You are eligible for a "+J(_(s).trialEligibility.numberOfDaysPerProduct)+" day trial ",1),_(s).trialEligibility.existing?(w(),C(Ce,{key:0},[Te(" of which you have "+J(_(s).trialEligibility.numberOfDaysRemaining)+" days remaining ",1)],64)):fe("",!0),O[6]||(O[6]=Te(". ")),x("span",X1,[x("button",{role:"button",class:"moonbase:button",onClick:O[1]||(O[1]=y=>_(d)())}," Start trial ")])])):fe("",!0)]))])):(w(),C("div",M1," Could not find activation request "))])}}}),ew={class:"moonbase:activation"},tw=he({__name:"Activation",props:{open:{type:Boolean}},setup(e){const t=je();return(n,r)=>(w(),ke(bi,{open:n.open,onClose:r[0]||(r[0]=o=>_(t).reset())},{default:we(()=>[x("div",ew,[z(_(mi),{as:"h3"},{default:we(()=>r[1]||(r[1]=[Te(" Activate product ")])),_:1}),n.open&&_(t).intent===_(ue).ActivateProduct?(w(),ke(Q1,{key:0})):fe("",!0)])]),_:1},8,["open"]))}});function nw(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}`}const rw={class:"moonbase:download-product"},ow={key:0,class:"moonbase:loader"},sw={key:1,class:"moonbase:loader"},iw={key:2,class:"moonbase:loader"},aw={key:3},lw={class:"moonbase:download-product-product"},uw=["src"],cw={key:1,class:"moonbase:image-placeholder"},dw={key:0},fw=["data-open"],pw={key:0,class:"moonbase:download-product-content"},hw={key:1,class:"moonbase:download-product-content"},mw={key:2,class:"moonbase:download-product-content"},vw=["data-open"],gw={key:1,role:"list"},yw={class:"moonbase:download-product-download-name"},bw=["onClick"],_w={class:"moonbase:download-product-download-description"},ww={key:1,fill:"none",viewBox:"0 0 24 24","stroke-width":"1.5",stroke:"currentColor"},Ew={key:2,class:"moonbase:loader"},Ow=he({__name:"DownloadProduct",setup(e){const t=je(),{user:n,loaded:r}=wt(),{getProduct:o,downloadProduct:s}=ti(),i={[Qt.Universal]:()=>Of,[Qt.Windows]:()=>Nf,[Qt.Linux]:()=>xf,[Qt.Mac]:()=>Sf},a=R(null),l=R([]),u=R(null),c=R(!0),d=R(!1),f=Y(()=>t.getParameter("key")),m=Y(()=>{var O,I;return(I=(O=a.value)==null?void 0:O.downloads)==null?void 0:I.filter(j=>!f.value||j.key===f.value)});Re(async()=>{const O=t.getParameter("product_id"),I=t.getParameter("version");if(!O){u.value="Link is broken";return}try{a.value=await o(O,I||void 0)}catch(j){u.value=j.message}c.value=!1});function E(){t.enqueue(Ne.Download,ue.DownloadProduct,t.parameters??void 0),t.show(Ne.Authentication,ue.SignIn)}async function N(O){l.value.push(O.key),await s(O),l.value=l.value.filter(I=>I!==O.key)}return(O,I)=>{var j,$,W,y,M;return w(),C("div",rw,[c.value||!_(r)?(w(),C("div",ow,[z(Mt)])):u.value?(w(),C("div",sw,J(u.value),1)):a.value?(w(),C("div",aw,[x("div",lw,[a.value.iconUrl?(w(),C("img",{key:0,src:a.value.iconUrl,alt:""},null,8,uw)):(w(),C("div",cw)),x("div",null,[x("h2",null,[Te(J(a.value.name)+" ",1),x("span",null,"v"+J(a.value.version||a.value.currentVersion),1),a.value.prerelease?(w(),C("span",dw," (pre-release)")):fe("",!0)]),x("h3",null,J(a.value.tagline),1)]),a.value.releaseDescription&&(!a.value.downloadsNeedsUser||_(n))&&(!a.value.downloadsNeedsOwnership||($=(j=_(n))==null?void 0:j.ownedProducts)!=null&&$.includes(a.value.id))?(w(),C("button",{key:2,"data-open":d.value||void 0,onClick:I[0]||(I[0]=P=>d.value=!d.value)},I[1]||(I[1]=[x("svg",{xmlns:"http://www.w3.org/2000/svg",fill:"none",viewBox:"0 0 24 24","stroke-width":"1.5",stroke:"currentColor"},[x("path",{"stroke-linecap":"round","stroke-linejoin":"round",d:"m5.25 4.5 7.5 7.5-7.5 7.5m6-15 7.5 7.5-7.5 7.5"})],-1),x("span",null," Details ",-1)]),8,fw)):fe("",!0)]),a.value.downloadsNeedsUser&&!_(n)?(w(),C("div",pw,[I[2]||(I[2]=Te(" Please sign in to download product ")),x("span",{class:"moonbase:download-product-cta"},[x("button",{role:"button",class:"moonbase:button",onClick:E}," Sign in ")])])):a.value.downloadsNeedsOwnership&&!((y=(W=_(n))==null?void 0:W.ownedProducts)!=null&&y.includes(a.value.id))?(w(),C("div",hw," This product requires ownership to download ")):(w(),C("div",mw,[a.value.releaseDescription?(w(),C("div",{key:0,class:"moonbase:download-product-release-description","data-open":d.value||void 0},[x("div",null,[x("h3",null," v"+J(a.value.version||a.value.currentVersion)+" Release Notes ",1),x("p",null,J(a.value.releaseDescription),1)])],8,vw)):fe("",!0),(M=a.value)!=null&&M.downloads&&a.value.downloads.length>0?(w(),C("ul",gw,[(w(!0),C(Ce,null,an(m.value,P=>(w(),C("li",{key:P.key},[x("div",null,[x("p",yw,[x("button",{onClick:re=>N(P)},[I[3]||(I[3]=x("span",{class:"moonbase:download-product-clicker"},null,-1)),Te(" "+J(P.name),1)],8,bw)]),x("p",_w,[(w(),ke(ha(i[P.platform]()),{"aria-hidden":"true"})),Te(" "+J(P.platform)+" ",1),I[4]||(I[4]=x("span",null," |",-1)),Te(" "+J(_(nw)(P.size)),1)])]),x("div",null,[l.value.includes(P.key)?(w(),ke(Mt,{key:0})):(w(),C("svg",ww,I[5]||(I[5]=[x("path",{"stroke-linecap":"round","stroke-linejoin":"round",d:"m8.25 4.5 7.5 7.5-7.5 7.5"},null,-1)])))])]))),128))])):(w(),C("div",Ew," No downloadable files found "))]))])):(w(),C("div",iw," Could not find product "))])}}}),Nw={class:"moonbase:download"},xw=he({__name:"Download",props:{open:{type:Boolean}},setup(e){const t=je();return(n,r)=>(w(),ke(bi,{open:n.open,onClose:r[0]||(r[0]=o=>_(t).reset())},{default:we(()=>[x("div",Nw,[z(_(mi),{as:"h3"},{default:we(()=>r[1]||(r[1]=[Te(" Download product ")])),_:1}),n.open&&_(t).intent===_(ue).DownloadProduct?(w(),ke(Ow,{key:0})):fe("",!0)])]),_:1},8,["open"]))}});function Sw(){const e=R(null),t=[/^user\.name$/,/^user\.email$/,/^cart\.item_count$/,/^product\.[a-z\-]+\.name$/,/^product\.[a-z\-]+\.price$/,/^product\.[a-z\-]+\.original_price$/,/^bundle\.[a-z\-]+\.name$/,/^bundle\.[a-z\-]+\.price$/,/^bundle\.[a-z\-]+\.original_price$/],n=R({}),r=Y(()=>n.value.user||[]),o=Y(()=>n.value.cart||[]),s=Y(()=>n.value.product||[]),i=Y(()=>n.value.bundle||[]),a=[/^user$/,/^cart.has_items$/,/^product\.[a-z\-]+(\.has_discount)?$/,/^bundle\.[a-z\-]+(\.has_discount)?$/],l=R({}),u=Y(()=>l.value.user||[]),c=Y(()=>l.value.cart||[]),d=Y(()=>l.value.product||[]),f=Y(()=>l.value.bundle||[]),m=wt(),{currency:E,items:N}=ni(),O=Ag(),I=Ig();ze([r,u,m.user],([j,$,W])=>{if(j){for(const y of j)if(y.textContent&&!y.dataset.moonbaseOriginal&&(y.dataset.moonbaseOriginal=y.textContent),W)switch(y.dataset.moonbaseRender){case"user.name":y.textContent=W.name;break;case"user.email":y.textContent=W.email;break}else y.dataset.moonbaseOriginal?y.textContent=y.dataset.moonbaseOriginal:y.textContent="";for(const y of $)y.dataset.moonbaseOriginalHidden||(y.dataset.moonbaseOriginalHidden=y.hidden?"true":"false"),W?y.hidden=y.dataset.moonbaseIf==="!user":y.hidden=y.dataset.moonbaseIf==="user"}},{immediate:!0}),ze([o,c,N],([j,$,W])=>{if(j){for(const y of j)switch(y.textContent&&!y.dataset.moonbaseOriginal&&(y.dataset.moonbaseOriginal=y.textContent),y.dataset.moonbaseRender){case"cart.item_count":y.textContent=W.reduce((M,P)=>M+P.quantity,0).toString();break}for(const y of $){if(!y.dataset.moonbaseIf)return;const M=y.dataset.moonbaseIf.split("."),P=M[1];let re=!1;switch(P){case"has_items":re=W.length>0;break}M[0].startsWith("!")&&(re=!re),y.dataset.moonbaseOriginalHidden||(y.dataset.moonbaseOriginalHidden=y.hidden?"true":"false"),re?y.hidden=!1:y.hidden=!0}}},{immediate:!0}),ze([s,d,O,E],([j,$,W,y])=>{var M,P,re;if(j){for(const S of j){const A=(M=S.dataset.moonbaseRender)==null?void 0:M.split(".")[1],D=(P=S.dataset.moonbaseRender)==null?void 0:P.split(".")[2],k=W.find(L=>L.id===A);if(S.textContent&&!S.dataset.moonbaseOriginal&&(S.dataset.moonbaseOriginal=S.textContent),k&&k.defaultVariation)switch(D){case"name":S.textContent=k.name;break;case"price":S.textContent=Dt(k.defaultVariation.price[y],y);break;case"original_price":S.textContent=Dt(k.defaultVariation.originalPrice[y],y);break}else S.dataset.moonbaseOriginal?S.textContent=S.dataset.moonbaseOriginal:S.textContent=""}for(const S of $){if(!S.dataset.moonbaseIf)return;const A=S.dataset.moonbaseIf.split("."),D=A.length===2?"product":A[2],k=A[1],L=W.find(h=>h.id===k);let ne=!1;switch(D){case"product":ne=!!L;break;case"has_discount":ne=!!((re=L==null?void 0:L.defaultVariation)!=null&&re.hasDiscount);break}A[0].startsWith("!")&&(ne=!ne),S.dataset.moonbaseOriginalHidden||(S.dataset.moonbaseOriginalHidden=S.hidden?"true":"false"),ne?S.hidden=!1:S.hidden=!0}}},{immediate:!0}),ze([i,f,I,E],([j,$,W,y])=>{var M,P,re;if(j){for(const S of j){const A=(M=S.dataset.moonbaseRender)==null?void 0:M.split(".")[1],D=(P=S.dataset.moonbaseRender)==null?void 0:P.split(".")[2],k=W.find(L=>L.id===A);if(S.textContent&&!S.dataset.moonbaseOriginal&&(S.dataset.moonbaseOriginal=S.textContent),k&&k.defaultVariation)switch(D){case"name":S.textContent=k.name;break;case"price":S.textContent=Dt(k.defaultVariation.price[y],y);break;case"original_price":S.textContent=Dt(k.defaultVariation.originalPrice[y],y);break}else S.dataset.moonbaseOriginal?S.textContent=S.dataset.moonbaseOriginal:S.textContent=""}for(const S of $){if(!S.dataset.moonbaseIf)return;const A=S.dataset.moonbaseIf.split("."),D=A.length===2?"bundle":A[2],k=A[1],L=W.find(h=>h.id===k);let ne=!1;switch(D){case"bundle":ne=!!L;break;case"has_discount":ne=!!((re=L==null?void 0:L.defaultVariation)!=null&&re.hasDiscount);break}A[0].startsWith("!")&&(ne=!ne),S.dataset.moonbaseOriginalHidden||(S.dataset.moonbaseOriginalHidden=S.hidden?"true":"false"),ne?S.hidden=!1:S.hidden=!0}}},{immediate:!0}),Re(()=>{var M;e.value=new MutationObserver((P,re)=>{var S,A;for(const D of P)if(D.type==="childList"){for(const k of D.addedNodes){const L=k;if(L.dataset&&L.dataset.moonbaseRender){const ne=L.dataset.moonbaseRender;if(!ne||!t.some(h=>h.test(ne)))console.warn(`Element has an unknown Moonbase target (${ne})`,L);else if(ne){const h=ne.split(".")[0];n.value[h]=n.value[h]||[],n.value[h].push(L)}}if(L.dataset&&L.dataset.moonbaseIf){const ne=(S=L.dataset.moonbaseIf)==null?void 0:S.replace(/^!/,"");if(!ne||!a.some(h=>h.test(ne)))console.warn(`Element has an unknown Moonbase target (${ne})`,L);else if(ne){const h=ne.split(".")[0];l.value[h]=l.value[h]||[],l.value[h].push(L)}}}for(const k of D.removedNodes){const L=k;if(L.dataset&&L.dataset.moonbaseRender){const ne=L.dataset.moonbaseRender;if(!ne||!t.some(h=>h.test(ne)))console.warn(`Element has an unknown Moonbase target (${ne})`,L);else if(ne){const h=ne.split(".")[0];n.value[h]&&(n.value[h]=n.value[h].filter(V=>V!==L))}}if(L.dataset&&L.dataset.moonbaseIf){const ne=(A=L.dataset.moonbaseIf)==null?void 0:A.replace(/^!/,"");if(!ne||!a.some(h=>h.test(ne)))console.warn(`Element has an unknown Moonbase target (${ne})`,L);else if(ne){const h=ne.split(".")[0];l.value[h]&&(l.value[h]=l.value[h].filter(V=>V!==L))}}}}else if(D.type==="attributes"&&D.attributeName){const k=D.target.getAttribute(D.attributeName);fl(`The ${D.attributeName} attribute was modified from ${D.oldValue} to ${k}.`);const L=D.target;if(D.attributeName==="data-moonbase-render"){const ne=D.oldValue;if(ne){const h=ne.split(".")[0];n.value[h]&&(n.value[h]=n.value[h].filter(V=>V!==L))}if(!k||!t.some(h=>h.test(k)))k&&console.warn(`Element has an unknown Moonbase target (${k})`,L),L.dataset.moonbaseOriginal&&(L.textContent=L.dataset.moonbaseOriginal);else if(k){const h=k==null?void 0:k.split(".")[0];n.value[h]=n.value[h]||[],n.value[h].includes(L)||n.value[h].push(L)}}if(D.attributeName==="data-moonbase-if"){const ne=D.oldValue;if(ne){const h=ne.split(".")[0];l.value[h]&&(l.value[h]=l.value[h].filter(V=>V!==L))}if(!k||!a.some(h=>h.test(k)))k&&console.warn(`Element has an unknown Moonbase target (${k})`,L),L.dataset.moonbaseOriginalHidden==="true"&&(L.hidden=!0);else if(k){const h=k==null?void 0:k.split(".")[0];l.value[h]=l.value[h]||[],l.value[h].includes(L)||l.value[h].push(L)}}}else fl(`A ${D.type} mutation took place.`)}),e.value.observe(document.body,{subtree:!0,childList:!0,attributes:!0,attributeOldValue:!0,attributeFilter:["data-moonbase-if","data-moonbase-render"]});const j={},$=document.querySelectorAll("[data-moonbase-render]");for(const P of $){const re=P.dataset.moonbaseRender;if(!re||!t.some(S=>S.test(re)))console.warn(`Element has an unknown Moonbase target (${re})`,P);else if(re){const S=re.split(".")[0];j[S]=j[S]||[],j[S].push(P)}}n.value=j;const W={},y=document.querySelectorAll("[data-moonbase-if]");for(const P of y){const re=(M=P.dataset.moonbaseIf)==null?void 0:M.replace(/^!/,"");if(!re||!a.some(S=>S.test(re)))console.warn(`Element has an unknown Moonbase target (${re})`,P);else if(re){const S=re.split(".")[0];W[S]=W[S]||[],W[S].push(P)}}l.value=W}),dt(()=>e.value&&e.value.disconnect())}const kw=he({__name:"App",setup(e){const t=Se(Nr),n=je();return ze(()=>[n.active,n.intent],([r,o])=>{}),Sw(),(r,o)=>{var s;return w(),C(Ce,null,[(s=_(t))!=null&&s.toolbar.enabled?(w(),ke(gy,{key:0})):fe("",!0),z(S_,{open:_(n).active===_(Ne).Cart},null,8,["open"]),z(Fb,{open:_(n).active===_(Ne).Authentication},null,8,["open"]),z(tw,{open:_(n).active===_(Ne).Activation},null,8,["open"]),z(xw,{open:_(n).active===_(Ne).Download},null,8,["open"]),z(A1,{open:_(n).active===_(Ne).Customer},null,8,["open"])],64)}}});function _i(e){return e&&typeof e=="object"&&!Array.isArray(e)&&!(e instanceof HTMLElement)}function pl(e,...t){if(t.length===0)return e;const n=t.shift();if(!n)return e;if(_i(e)&&_i(n)){for(const r in e)if(Object.prototype.hasOwnProperty.call(n,r)){const o=n[r];_i(o)&&_i(e[r])?e[r]=pl(e[r],o):o!==void 0&&(e[r]=o)}}return pl(e,...t)}class Cw{constructor(){Tr(this,"initialized",!1);Tr(this,"pinia");Tr(this,"storefront");Tr(this,"options")}async setup(t,n){if(typeof window>"u")throw console.error("Moonbase setup must be done client-side"),new Error("Moonbase setup must be done client-side");if(document.getElementById("moonbase")){console.warn("Moonbase has already been initialized!");return}this.options=pl(py,n??{}),fl("Merged options:",this.options);const r=document.createElement("div");if(r.id="moonbase",r.classList.add("moonbase"),(this.options.target??document.body).append(r),this.storefront=jg(t),this.pinia=ly(),gg(kw).use(this.storefront).use(this.pinia).provide(Nr,this.options).mount("#moonbase"),this.initialized=!0,window&&window.location){const l=new URLSearchParams(window.location.search),u=l.get("mb_intent");if(u&&Object.values(ue).includes(u)){const c=Object.fromEntries([...l.entries()].filter(([f])=>f.startsWith("mb_")).map(([f,m])=>[f.substring(3),m]));if(u===ue.Checkout&&c.complete)return;this[u](c);for(const f of Object.keys(c))l.delete(`mb_${f}`);const d=l.toString();window.history.replaceState(null,"",window.location.href.split("?")[0]+(d?`?${d}`:""))}}const i=je(this.pinia),a=wt(this.storefront);this.storefront.onCheckoutClosed(l=>{l===ue.ViewProducts&&(a.user?i.show(Ne.Customer,ue.ViewProducts):i.show(Ne.Cart,ue.ViewCart))})}sign_in(t){if(!this.initialized)throw new Error("Moonbase has not been set up yet");je(this.pinia).show(Ne.Authentication,ue.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.auth.signUp.enabled))throw new Error("Sign ups are not enabled");je(this.pinia).show(Ne.Authentication,ue.SignUp,t)}forgot_password(t){if(!this.initialized)throw new Error("Moonbase has not been set up yet");je(this.pinia).show(Ne.Authentication,ue.ForgotPassword,t)}reset_password(t){if(!this.initialized)throw new Error("Moonbase has not been set up yet");je(this.pinia).show(Ne.Authentication,ue.ResetPassword,t)}confirm_account(t){if(!this.initialized)throw new Error("Moonbase has not been set up yet");je(this.pinia).show(Ne.Authentication,ue.ConfirmAccount,t)}confirm_email(){}confirm_email_change(t){if(!this.initialized)throw new Error("Moonbase has not been set up yet");const n=je(this.pinia);wt(this.storefront).user.value?n.show(Ne.Authentication,ue.ConfirmEmailChange,t):(n.show(Ne.Authentication,ue.SignIn),n.enqueue(Ne.Authentication,ue.ConfirmEmailChange,t))}view_account(){if(!this.initialized)throw new Error("Moonbase has not been set up yet");const t=je(this.pinia);wt(this.storefront).user.value?t.show(Ne.Customer,ue.ViewAccount):(t.show(Ne.Authentication,ue.SignIn),t.enqueue(Ne.Customer,ue.ViewAccount))}view_products(){if(!this.initialized)throw new Error("Moonbase has not been set up yet");je(this.pinia).show(Ne.Cart,ue.ViewCart)}redeem_voucher(t){if(!this.initialized)throw new Error("Moonbase has not been set up yet");je(this.pinia).show(Ne.Cart,ue.ViewCart,t)}download_product(t){if(!this.initialized)throw new Error("Moonbase has not been set up yet");je(this.pinia).show(Ne.Download,ue.DownloadProduct,t)}activate_product(t){if(!this.initialized)throw new Error("Moonbase has not been set up yet");if(!(t!=null&&t.token))throw new Error("You need to provide a token when activating a product");je(this.pinia).show(Ne.Activation,ue.ActivateProduct,t)}view_cart(){if(!this.initialized)throw new Error("Moonbase has not been set up yet");je(this.pinia).show(Ne.Cart,ue.ViewCart)}async add_to_cart(t){var o,s,i,a;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=ni(this.storefront);if(t!=null&&t.product_id){const l=vd(t.product_id,this.storefront);if(l.value)n.addToCart(l.value,(o=l.value.variations)==null?void 0:o.find(u=>u.id===t.variation_id));else{await this.storefront.loadedStorefrontPromise;const u=vd(t.product_id,this.storefront);if(u.value)n.addToCart(u.value,(s=u.value.variations)==null?void 0:s.find(c=>c.id===t.variation_id));else throw new Error(`Product '${t.product_id}' not found`)}}if(t!=null&&t.bundle_id){const l=md(t.bundle_id,this.storefront);if(l.value)n.addToCart(l.value,(i=l.value.variations)==null?void 0:i.find(u=>u.id===t.variation_id));else{await this.storefront.loadedStorefrontPromise;const u=md(t.bundle_id,this.storefront);if(u.value)n.addToCart(u.value,(a=u.value.variations)==null?void 0:a.find(c=>c.id===t.variation_id));else throw new Error(`Bundle '${t.bundle_id}' not found`)}}je(this.pinia).show(Ne.Cart,ue.AddToCart)}checkout(t){var r;if(!this.initialized)throw new Error("Moonbase has not been set up yet");if(t!=null&&t.complete)return;ni(this.storefront).checkout({redirect:((r=this.options)==null?void 0:r.checkout.redirect)||!1,returnUrl:`${window.location.pathname}?mb_intent=view_products`})}close_checkout(){var t;if(!this.initialized)throw new Error("Moonbase has not been set up yet");(t=this.storefront)==null||t.closeCheckout()}}const kf=new Cw;globalThis&&(globalThis.Moonbase?console.warn("Multiple instances of Moonbase detected, only one will be initialized"):globalThis.Moonbase=kf),kt.MoonbaseIntent=ue,kt.default=kf,Object.defineProperties(kt,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}})});
24
+ `));const f=Fd(c.props??{},i,l),m=qt(c,f,!0);for(const E in f)E.startsWith("on")&&(m.props||(m.props={}),m.props[E]=f[E]);return m}return Array.isArray(a)&&a.length===1?a[0]:a}return Ue(s,Object.assign({},i,l),{default:()=>a})}function Ud(e){return e.flatMap(t=>t.type===Ce?Ud(t.children):[t])}function Fd(...e){if(e.length===0)return{};if(e.length===1)return e[0];const t={},n={};for(const r of e)for(const o in r)o.startsWith("on")&&typeof r[o]=="function"?(n[o]??(n[o]=[]),n[o].push(r[o])):t[o]=r[o];if(t.disabled||t["aria-disabled"])return Object.assign(t,Object.fromEntries(Object.keys(n).map(r=>[r,void 0])));for(const r in n)Object.assign(t,{[r](o,...s){const i=n[r];for(const a of i){if(o instanceof Event&&o.defaultPrevented)return;a(o,...s)}}});return t}function Ya(e,t=[]){const n=Object.assign({},e);for(const r of t)r in n&&delete n[r];return n}function Yy(e){return e==null?!1:typeof e.type=="string"||typeof e.type=="object"||typeof e.type=="function"}var er=(e=>(e[e.None=1]="None",e[e.Focusable=2]="Focusable",e[e.Hidden=4]="Hidden",e))(er||{});let tr=he({name:"Hidden",props:{as:{type:[Object,String],default:"div"},features:{type:Number,default:1}},setup(e,{slots:t,attrs:n}){return()=>{let{features:r,...o}=e,s={"aria-hidden":(r&2)===2?!0:o["aria-hidden"]??void 0,hidden:(r&4)===4?!0:void 0,style:{position:"fixed",top:1,left:1,width:1,height:0,padding:0,margin:-1,overflow:"hidden",clip:"rect(0, 0, 0, 0)",whiteSpace:"nowrap",borderWidth:"0",...(r&4)===4&&(r&2)!==2&&{display:"none"}}};return rt({ourProps:s,theirProps:o,slot:{},attrs:n,slots:t,name:"Hidden"})}}});function Xy(e){function t(){document.readyState!=="loading"&&(e(),document.removeEventListener("DOMContentLoaded",t))}typeof window<"u"&&typeof document<"u"&&(document.addEventListener("DOMContentLoaded",t),t())}function X(e){if(e==null||e.value==null)return null;let t=e.value.$el??e.value;return t instanceof Node?t:null}function kn(e){if(Ko.isServer)return null;if(e instanceof Node)return e.ownerDocument;if(e&&Object.prototype.hasOwnProperty.call(e,"value")){const t=X(e);if(t)return t.ownerDocument}return document}const ci=["[contentEditable=true]","[tabindex]","a[href]","area[href]","button:not([disabled])","iframe","input:not([disabled])","select:not([disabled])","textarea:not([disabled])"].map(e=>`${e}:not([tabindex='-1'])`).join(",");var We=(e=>(e[e.First=1]="First",e[e.Previous=2]="Previous",e[e.Next=4]="Next",e[e.Last=8]="Last",e[e.WrapAround=16]="WrapAround",e[e.NoScroll=32]="NoScroll",e))(We||{}),Cn=(e=>(e[e.Error=0]="Error",e[e.Overflow=1]="Overflow",e[e.Success=2]="Success",e[e.Underflow=3]="Underflow",e))(Cn||{});function di(e=document.body){return e==null?[]:Array.from(e.querySelectorAll(ci)).sort((t,n)=>Math.sign((t.tabIndex||Number.MAX_SAFE_INTEGER)-(n.tabIndex||Number.MAX_SAFE_INTEGER)))}var Xa=(e=>(e[e.Strict=0]="Strict",e[e.Loose=1]="Loose",e))(Xa||{});function Bd(e,t=0){var n;return e===((n=kn(e))==null?void 0:n.body)?!1:nt(t,{0(){return e.matches(ci)},1(){let r=e;for(;r!==null;){if(r.matches(ci))return!0;r=r.parentElement}return!1}})}typeof window<"u"&&typeof document<"u"&&(document.addEventListener("keydown",e=>{e.metaKey||e.altKey||e.ctrlKey||(document.documentElement.dataset.moonbaseFocusVisible="")},!0),document.addEventListener("click",e=>{e.detail===1?delete document.documentElement.dataset.moonbaseFocusVisible:e.detail===0&&(document.documentElement.dataset.moonbaseFocusVisible="")},!0));function xr(e){e==null||e.focus({preventScroll:!0})}const Qy=["textarea","input"].join(",");function eb(e){var t;return((t=e==null?void 0:e.matches)==null?void 0:t.call(e,Qy))??!1}function Yr(e,t=n=>n){return e.slice().sort((n,r)=>{const o=t(n),s=t(r);if(o===null||s===null)return 0;const i=o.compareDocumentPosition(s);return i&Node.DOCUMENT_POSITION_FOLLOWING?-1:i&Node.DOCUMENT_POSITION_PRECEDING?1:0})}function at(e,t,{sorted:n=!0,relativeTo:r=null,skipElements:o=[]}={}){const s=(Array.isArray(e)?e.length>0?e[0].ownerDocument:document:e==null?void 0:e.ownerDocument)??document;let i=Array.isArray(e)?n?Yr(e):e:di(e);o.length>0&&i.length>1&&(i=i.filter(m=>!o.includes(m))),r=r??s.activeElement;const a=(()=>{if(t&5)return 1;if(t&10)return-1;throw new Error("Missing Focus.First, Focus.Previous, Focus.Next or Focus.Last")})(),l=(()=>{if(t&1)return 0;if(t&2)return Math.max(0,i.indexOf(r))-1;if(t&4)return Math.max(0,i.indexOf(r))+1;if(t&8)return i.length-1;throw new Error("Missing Focus.First, Focus.Previous, Focus.Next or Focus.Last")})(),u=t&32?{preventScroll:!0}:{};let c=0;const d=i.length;let f;do{if(c>=d||c+d<=0)return 0;let m=l+c;if(t&16)m=(m+d)%d;else{if(m<0)return 3;if(m>=d)return 1}f=i[m],f==null||f.focus(u),c+=a}while(f!==s.activeElement);return t&6&&eb(f)&&f.select(),2}let Sr=[];Xy(()=>{function e(t){if(!(t.target instanceof HTMLElement)||t.target===document.body||Sr[0]===t.target)return;let n=t.target;n=n.closest(ci),Sr.unshift(n??t.target),Sr=Sr.filter(r=>r!=null&&r.isConnected),Sr.splice(10)}window.addEventListener("click",e,{capture:!0}),window.addEventListener("mousedown",e,{capture:!0}),window.addEventListener("focus",e,{capture:!0}),document.body.addEventListener("click",e,{capture:!0}),document.body.addEventListener("mousedown",e,{capture:!0}),document.body.addEventListener("focus",e,{capture:!0})});function fi(e){typeof queueMicrotask=="function"?queueMicrotask(e):Promise.resolve().then(e).catch(t=>setTimeout(()=>{throw t}))}function Hd(e){if(!e)return new Set;if(typeof e=="function")return new Set(e());const t=new Set;for(const n of e.value){const r=X(n);r instanceof HTMLElement&&t.add(r)}return t}var Zd=(e=>(e[e.None=1]="None",e[e.InitialFocus=2]="InitialFocus",e[e.TabLock=4]="TabLock",e[e.FocusLock=8]="FocusLock",e[e.RestoreFocus=16]="RestoreFocus",e[e.All=30]="All",e))(Zd||{});const Go=Object.assign(he({name:"FocusTrap",props:{as:{type:[Object,String],default:"div"},initialFocus:{type:Object,default:null},features:{type:Number,default:30},containers:{type:[Object,Function],default:R(new Set)}},inheritAttrs:!1,setup(e,{attrs:t,slots:n,expose:r}){const o=R(null);r({el:o,$el:o});const s=Y(()=>kn(o)),i=R(!1);Re(()=>i.value=!0),dt(()=>i.value=!1),nb({ownerDocument:s},Y(()=>i.value&&!!(e.features&16)));const a=rb({ownerDocument:s,container:o,initialFocus:Y(()=>e.initialFocus)},Y(()=>i.value&&!!(e.features&2)));ob({ownerDocument:s,container:o,containers:e.containers,previousActiveElement:a},Y(()=>i.value&&!!(e.features&8)));const l=Ja();function u(m){const E=X(o);if(!E)return;(O=>O())(()=>{nt(l.value,{[$t.Forwards]:()=>{at(E,We.First,{skipElements:[m.relatedTarget]})},[$t.Backwards]:()=>{at(E,We.Last,{skipElements:[m.relatedTarget]})}})})}const c=R(!1);function d(m){m.key==="Tab"&&(c.value=!0,requestAnimationFrame(()=>{c.value=!1}))}function f(m){if(!i.value)return;const E=Hd(e.containers);X(o)instanceof HTMLElement&&E.add(X(o));const N=m.relatedTarget;N instanceof HTMLElement&&N.dataset.moonbaseFocusGuard!=="true"&&(qd(E,N)||(c.value?at(X(o),nt(l.value,{[$t.Forwards]:()=>We.Next,[$t.Backwards]:()=>We.Previous})|We.WrapAround,{relativeTo:m.target}):m.target instanceof HTMLElement&&xr(m.target)))}return()=>{const m={},E={ref:o,onKeydown:d,onFocusout:f},{features:N,initialFocus:O,containers:I,...j}=e;return Ue(Ce,[!!(N&4)&&Ue(tr,{as:"button",type:"button","data-moonbase-focus-guard":!0,onFocus:u,features:er.Focusable}),rt({ourProps:E,theirProps:{...t,...j},slot:m,attrs:t,slots:n,name:"FocusTrap"}),!!(N&4)&&Ue(tr,{as:"button",type:"button","data-moonbase-focus-guard":!0,onFocus:u,features:er.Focusable})])}}}),{features:Zd});function tb(e){const t=R(Sr.slice());return ze([e],([n],[r])=>{r===!0&&n===!1?fi(()=>{t.value.splice(0)}):r===!1&&n===!0&&(t.value=Sr.slice())},{flush:"post"}),()=>t.value.find(n=>n!=null&&n.isConnected)??null}function nb({ownerDocument:e},t){const n=tb(t);Re(()=>{pt(()=>{var r,o;t.value||((r=e.value)==null?void 0:r.activeElement)===((o=e.value)==null?void 0:o.body)&&xr(n())},{flush:"post"})}),dt(()=>{t.value&&xr(n())})}function rb({ownerDocument:e,container:t,initialFocus:n},r){const o=R(null),s=R(!1);return Re(()=>s.value=!0),dt(()=>s.value=!1),Re(()=>{ze([t,n,r],(i,a)=>{if(i.every((u,c)=>(a==null?void 0:a[c])===u)||!r.value)return;const l=X(t);l&&fi(()=>{var d,f;if(!s.value)return;const u=X(n),c=(d=e.value)==null?void 0:d.activeElement;if(u){if(u===c){o.value=c;return}}else if(l.contains(c)){o.value=c;return}u?xr(u):at(l,We.First|We.NoScroll)===Cn.Error&&console.warn("There are no focusable elements inside the <FocusTrap />"),o.value=(f=e.value)==null?void 0:f.activeElement})},{immediate:!0,flush:"post"})}),o}function ob({ownerDocument:e,container:t,containers:n,previousActiveElement:r},o){var s;Ga((s=e.value)==null?void 0:s.defaultView,"focus",i=>{if(!o.value)return;const a=Hd(n);X(t)instanceof HTMLElement&&a.add(X(t));const l=r.value;if(!l)return;const u=i.target;u&&u instanceof HTMLElement?qd(a,u)?(r.value=u,xr(u)):(i.preventDefault(),i.stopPropagation(),xr(l)):xr(r.value)},!0)}function qd(e,t){for(const n of e)if(n.contains(t))return!0;return!1}function sb(e){const t=Bh(e.getSnapshot());return dt(e.subscribe(()=>{t.value=e.getSnapshot()})),t}function Jo(){const e=[],t={addEventListener(n,r,o,s){return n.addEventListener(r,o,s),t.add(()=>n.removeEventListener(r,o,s))},requestAnimationFrame(...n){const r=requestAnimationFrame(...n);t.add(()=>cancelAnimationFrame(r))},nextFrame(...n){t.requestAnimationFrame(()=>{t.requestAnimationFrame(...n)})},setTimeout(...n){const r=setTimeout(...n);t.add(()=>clearTimeout(r))},microTask(...n){const r={current:!0};return fi(()=>{r.current&&n[0]()}),t.add(()=>{r.current=!1})},style(n,r,o){const s=n.style.getPropertyValue(r);return Object.assign(n.style,{[r]:o}),this.add(()=>{Object.assign(n.style,{[r]:s})})},group(n){const r=Jo();return n(r),this.add(()=>r.dispose())},add(n){return e.push(n),()=>{const r=e.indexOf(n);if(r>=0)for(const o of e.splice(r,1))o()}},dispose(){for(const n of e.splice(0))n()}};return t}function ib(e,t){let n=e(),r=new Set;return{getSnapshot(){return n},subscribe(o){return r.add(o),()=>r.delete(o)},dispatch(o,...s){let i=t[o].call(n,...s);i&&(n=i,r.forEach(a=>a()))}}}function ab(){let e;return{before({doc:t}){const n=t.documentElement,r=t.defaultView??window;e=Math.max(0,r.innerWidth-n.clientWidth)},after({doc:t,d:n}){const r=t.documentElement,o=Math.max(0,r.clientWidth-r.offsetWidth),s=Math.max(0,e-o);n.style(r,"paddingRight",`${s}px`)}}}function Wd(){return/iPhone/gi.test(window.navigator.platform)||/Mac/gi.test(window.navigator.platform)&&window.navigator.maxTouchPoints>0}function lb(){return/Android/gi.test(window.navigator.userAgent)}function ub(){return Wd()||lb()}function cb(){return Wd()?{before({doc:e,d:t,meta:n}){function r(o){return n.containers.flatMap(s=>s()).some(s=>s.contains(o))}t.microTask(()=>{if(window.getComputedStyle(e.documentElement).scrollBehavior!=="auto"){const i=Jo();i.style(e.documentElement,"scrollBehavior","auto"),t.add(()=>t.microTask(()=>i.dispose()))}const o=window.scrollY??window.pageYOffset;let s=null;t.addEventListener(e,"click",i=>{if(i.target instanceof HTMLElement)try{const a=i.target.closest("a");if(!a)return;const{hash:l}=new URL(a.href),u=e.querySelector(l);u&&!r(u)&&(s=u)}catch{}},!0),t.addEventListener(e,"touchstart",i=>{if(i.target instanceof HTMLElement)if(r(i.target)){let a=i.target;for(;a.parentElement&&r(a.parentElement);)a=a.parentElement;t.style(a,"overscrollBehavior","contain")}else t.style(i.target,"touchAction","none")}),t.addEventListener(e,"touchmove",i=>{if(i.target instanceof HTMLElement){if(i.target.tagName==="INPUT")return;if(r(i.target)){let a=i.target;for(;a.parentElement&&a.dataset.moonbasePortal!==""&&!(a.scrollHeight>a.clientHeight||a.scrollWidth>a.clientWidth);)a=a.parentElement;a.dataset.moonbasePortal===""&&i.preventDefault()}else i.preventDefault()}},{passive:!1}),t.add(()=>{const i=window.scrollY??window.pageYOffset;o!==i&&window.scrollTo(0,o),s&&s.isConnected&&(s.scrollIntoView({block:"nearest"}),s=null)})})}}:{}}function db(){return{before({doc:e,d:t}){t.style(e.documentElement,"overflow","hidden")}}}function fb(e){const t={};for(const n of e)Object.assign(t,n(t));return t}const kr=ib(()=>new Map,{PUSH(e,t){const n=this.get(e)??{doc:e,count:0,d:Jo(),meta:new Set};return n.count++,n.meta.add(t),this.set(e,n),this},POP(e,t){const n=this.get(e);return n&&(n.count--,n.meta.delete(t)),this},SCROLL_PREVENT({doc:e,d:t,meta:n}){const r={doc:e,d:t,meta:fb(n)},o=[cb(),ab(),db()];o.forEach(({before:s})=>s==null?void 0:s(r)),o.forEach(({after:s})=>s==null?void 0:s(r))},SCROLL_ALLOW({d:e}){e.dispose()},TEARDOWN({doc:e}){this.delete(e)}});kr.subscribe(()=>{const e=kr.getSnapshot(),t=new Map;for(const[n]of e)t.set(n,n.documentElement.style.overflow);for(const n of e.values()){const r=t.get(n.doc)==="hidden",o=n.count!==0;(o&&!r||!o&&r)&&kr.dispatch(n.count>0?"SCROLL_PREVENT":"SCROLL_ALLOW",n),n.count===0&&kr.dispatch("TEARDOWN",n)}});function pb(e,t,n){const r=sb(kr),o=Y(()=>{const s=e.value?r.value.get(e.value):void 0;return s?s.count>0:!1});return ze([e,t],([s,i],[a],l)=>{if(!s||!i)return;kr.dispatch("PUSH",s,n);let u=!1;l(()=>{u||(kr.dispatch("POP",a??s,n),u=!0)})},{immediate:!0}),o}let hb=0;function mb(){return++hb}function Lt(){return mb()}const Qa=new Map,Yo=new Map;function zd(e,t=R(!0)){pt(n=>{if(!t.value)return;const r=X(e);if(!r)return;n(()=>{if(!r)return;const s=Yo.get(r)??1;if(s===1?Yo.delete(r):Yo.set(r,s-1),s!==1)return;const i=Qa.get(r);i&&(i["aria-hidden"]===null?r.removeAttribute("aria-hidden"):r.setAttribute("aria-hidden",i["aria-hidden"]),r.inert=i.inert,Qa.delete(r))});const o=Yo.get(r)??0;Yo.set(r,o+1),o===0&&(Qa.set(r,{"aria-hidden":r.getAttribute("aria-hidden"),inert:r.inert}),r.setAttribute("aria-hidden","true"),r.inert=!0)})}function Xo(e,t,n,r){Ko.isServer||pt(o=>{e.value&&(document.addEventListener(t,n,r),o(()=>document.removeEventListener(t,n,r)))})}const Kd=30;function Gd(e,t,n=Y(()=>!0)){function r(i,a){if(i.defaultPrevented)return;const l=a(i);if(l===null||!l.getRootNode().contains(l))return;const u=function c(d){return typeof d=="function"?c(d()):Array.isArray(d)||d instanceof Set?d:[d]}(e);for(const c of u){if(c===null)continue;const d=c instanceof HTMLElement?c:X(c);if(d!=null&&d.contains(l)||i.composed&&i.composedPath().includes(d))return}return!Bd(l,Xa.Loose)&&l.tabIndex!==-1&&i.preventDefault(),t(i,l)}const o=R(null);Xo(n,"pointerdown",i=>{var a,l;o.value=((l=(a=i.composedPath)==null?void 0:a.call(i))==null?void 0:l[0])||i.target},!0),Xo(n,"mousedown",i=>{var a,l;o.value=((l=(a=i.composedPath)==null?void 0:a.call(i))==null?void 0:l[0])||i.target},!0),Xo(n,"click",i=>{ub()||o.value&&(r(i,()=>o.value),o.value=null)},!0);const s={x:0,y:0};Xo(n,"touchstart",i=>{s.x=i.touches[0].clientX,s.y=i.touches[0].clientY},!0),Xo(n,"touchend",i=>{const a={x:i.changedTouches[0].clientX,y:i.changedTouches[0].clientY};if(!(Math.abs(a.x-s.x)>=Kd||Math.abs(a.y-s.y)>=Kd))return r(i,()=>i.target instanceof HTMLElement?i.target:null)},!0),Ld(n,"blur",i=>r(i,()=>window.document.activeElement instanceof HTMLIFrameElement?window.document.activeElement:null),!0)}function Jd({defaultContainers:e=[],portals:t,mainTreeNodeRef:n}={}){const r=R(null),o=kn(r);function s(){var a,l;const i=[];for(const u of e)u!==null&&(u instanceof HTMLElement?i.push(u):"value"in u&&u.value instanceof HTMLElement&&i.push(u.value));if(t!=null&&t.value)for(const u of t.value)i.push(u);for(const u of(o==null?void 0:o.querySelectorAll("html > *, body > *"))??[])u!==document.body&&u!==document.head&&u instanceof HTMLElement&&u.id!=="moonbase"&&(u.contains(X(r))||u.contains((l=(a=X(r))==null?void 0:a.getRootNode())==null?void 0:l.host)||i.some(c=>u.contains(c))||i.push(u));return i}return{resolveContainers:s,contains(i){return s().some(a=>a.contains(i))},mainTreeNodeRef:r,MainTreeNode(){return n!=null?null:Ue(tr,{features:er.Hidden,ref:r})}}}let Yd=Symbol("Context");var lt=(e=>(e[e.Open=1]="Open",e[e.Closed=2]="Closed",e[e.Closing=4]="Closing",e[e.Opening=8]="Opening",e))(lt||{});function vb(){return pi()!==null}function pi(){return Se(Yd,null)}function Xd(e){ft(Yd,e)}const Qd=Symbol("ForcePortalRootContext");function gb(){return Se(Qd,!1)}const ef=he({name:"ForcePortalRoot",props:{as:{type:[Object,String],default:"template"},force:{type:Boolean,default:!1}},setup(e,{slots:t,attrs:n}){return ft(Qd,e.force),()=>{const{force:r,...o}=e;return rt({theirProps:o,ourProps:{},slot:{},slots:t,attrs:n,name:"ForcePortalRoot"})}}});let tf=Symbol("StackContext");var el=(e=>(e[e.Add=0]="Add",e[e.Remove=1]="Remove",e))(el||{});function yb(){return Se(tf,()=>{})}function bb({type:e,enabled:t,element:n,onUpdate:r}){let o=yb();function s(...i){r==null||r(...i),o(...i)}Re(()=>{ze(t,(i,a)=>{i?s(0,e,n):a===!0&&s(1,e,n)},{immediate:!0,flush:"sync"})}),dt(()=>{t.value&&s(1,e,n)}),ft(tf,s)}var ot=(e=>(e.Space=" ",e.Enter="Enter",e.Escape="Escape",e.Backspace="Backspace",e.Delete="Delete",e.ArrowLeft="ArrowLeft",e.ArrowUp="ArrowUp",e.ArrowRight="ArrowRight",e.ArrowDown="ArrowDown",e.Home="Home",e.End="End",e.PageUp="PageUp",e.PageDown="PageDown",e.Tab="Tab",e))(ot||{});let _b=Symbol("DescriptionContext");function wb({slot:e=R({}),name:t="Description",props:n={}}={}){let r=R([]);function o(s){return r.value.push(s),()=>{let i=r.value.indexOf(s);i!==-1&&r.value.splice(i,1)}}return ft(_b,{register:o,slot:e,name:t,props:n}),Y(()=>r.value.length>0?r.value.join(" "):void 0)}function nf(e){const t=kn(e);if(!t){if(e===null)return null;throw new Error(`[Moonbase]: Cannot find ownerDocument for contextElement: ${e}`)}const n=t.getElementById("moonbase");if(n)return n;throw new Error("[Moonbase]: Cannot find existing root element")}const tl=Symbol("PortalParentContext"),rf=Symbol("PortalGroupContext"),Eb=he({name:"Portal",props:{as:{type:[Object,String],default:"div"}},setup(e,{slots:t,attrs:n}){const r=R(null),o=gb(),s=Se(rf,null),i=R(o===!0||s==null?nf(r.value):s.resolveTarget()),a=R(!1);Re(()=>{a.value=!0}),pt(()=>{o||s!=null&&(i.value=s.resolveTarget())});const l=Se(tl,null);let u=!1;const c=Ks();return ze(r,()=>{if(u||!l)return;const d=X(r);d&&(dt(l.register(d),c),u=!0)}),()=>{if(!a.value||i.value===null)return null;const d={ref:r,"data-moonbase-portal":""};return Ue(_m,{to:i.value},rt({ourProps:d,theirProps:e,slot:{},attrs:n,slots:t,name:"Portal"}))}}});function of(){const e=Se(tl,null),t=R([]);function n(s){return t.value.push(s),e&&e.register(s),()=>r(s)}function r(s){const i=t.value.indexOf(s);i!==-1&&t.value.splice(i,1),e&&e.unregister(s)}const o={register:n,unregister:r,portals:t};return[t,he({name:"PortalWrapper",setup(s,{slots:i}){return ft(tl,o),()=>{var a;return(a=i.default)==null?void 0:a.call(i)}}})]}const Ob=he({name:"PortalGroup",props:{as:{type:[Object,String],default:"template"},target:{type:Object,default:null}},setup(e,{attrs:t,slots:n}){const r=xo({resolveTarget(){return e.target}});return ft(rf,r),()=>{const{target:o,...s}=e;return rt({theirProps:s,ourProps:{},slot:{},attrs:t,slots:n,name:"PortalGroup"})}}}),nl=Symbol("DialogContext");function rl(e){const t=Se(nl,null);if(t===null)throw new Error(`<${e} /> is missing a parent <Dialog /> component.`);return t}const hi="DC8F892D-2EBD-447C-A4C8-A03058436FF4",sf=he({name:"Dialog",inheritAttrs:!1,props:{as:{type:[Object,String],default:"div"},static:{type:Boolean,default:!1},unmount:{type:Boolean,default:!0},open:{type:[Boolean,String],default:hi},initialFocus:{type:Object,default:null},id:{type:String,default:()=>`moonbase-dialog-${Lt()}`},role:{type:String,default:"dialog"},makeInert:{type:Boolean,default:!0},lockScroll:{type:Boolean,default:!0}},emits:{close:e=>!0},setup(e,{emit:t,attrs:n,slots:r,expose:o}){var ve;const s=R(!1);Re(()=>{s.value=!0});let i=!1;const a=Y(()=>e.role==="dialog"||e.role==="alertdialog"?e.role:(i||(i=!0,console.warn(`Invalid role [${a}] passed to <Dialog />. Only \`dialog\` and and \`alertdialog\` are supported. Using \`dialog\` instead.`)),"dialog")),l=R(0),u=pi(),c=Y(()=>e.open===hi&&u!==null?(u.value&lt.Open)===lt.Open:e.open),d=R(null),f=Y(()=>kn(d));if(o({el:d,$el:d}),!(e.open!==hi||u!==null))throw new Error("You forgot to provide an `open` prop to the `Dialog`.");if(typeof c.value!="boolean")throw new TypeError(`You provided an \`open\` prop to the \`Dialog\`, but the value is not a boolean. Received: ${c.value===hi?void 0:e.open}`);const E=Y(()=>s.value&&c.value?0:1),N=Y(()=>E.value===0),O=R(null),I={titleId:O,panelRef:R(null),dialogState:E,setTitleId(ae){O.value!==ae&&(O.value=ae)},close(){t("close",!1)}},j=Y(()=>l.value>1),$=Se(nl,null)!==null,[W,y]=of(),{resolveContainers:M,mainTreeNodeRef:P,MainTreeNode:re}=Jd({portals:W,defaultContainers:[Y(()=>I.panelRef.value??d.value)]}),S=Y(()=>j.value?"parent":"leaf"),A=Y(()=>u!==null?(u.value&lt.Closing)===lt.Closing:!1),D=Y(()=>!e.makeInert||$||A.value?!1:N.value),k=Y(()=>{var ae;return Array.from(((ae=f.value)==null?void 0:ae.querySelectorAll("body > *"))??[]).find(Fe=>Fe.id==="moonbase"?!1:Fe.contains(X(P))&&Fe instanceof HTMLElement)??null});zd(k,D);const L=Y(()=>j.value?!0:N.value),ne=Y(()=>{var ae;return Array.from(((ae=f.value)==null?void 0:ae.querySelectorAll("[data-moonbase-portal]"))??[]).find(Fe=>Fe.contains(X(P))&&Fe instanceof HTMLElement)??null});zd(ne,L),bb({type:"Dialog",enabled:Y(()=>E.value===0),element:d,onUpdate:(ae,Fe)=>{if(Fe==="Dialog")return nt(ae,{[el.Add]:()=>l.value+=1,[el.Remove]:()=>l.value-=1})}});const h=wb({name:"DialogDescription",slot:Y(()=>({open:c.value}))});ft(nl,I);const V=Y(()=>!(!N.value||j.value));Gd(M,(ae,Fe)=>{ae.preventDefault(),I.close(),To(()=>Fe==null?void 0:Fe.focus())},V);const ee=Y(()=>!(j.value||E.value!==0));Ga((ve=f.value)==null?void 0:ve.defaultView,"keydown",ae=>{ee.value&&(ae.defaultPrevented||ae.key===ot.Escape&&(ae.preventDefault(),ae.stopPropagation(),I.close()))});const ie=Y(()=>!(!e.lockScroll||A.value||E.value!==0||$));return pb(f,ie,ae=>({containers:[...ae.containers??[],M]})),pt(ae=>{if(E.value!==0)return;const Fe=X(d);if(!Fe)return;const mt=new ResizeObserver(Be=>{for(const St of Be){const nr=St.target.getBoundingClientRect();nr.x===0&&nr.y===0&&nr.width===0&&nr.height===0&&I.close()}});mt.observe(Fe),ae(()=>mt.disconnect())}),()=>{const{id:ae,open:Fe,initialFocus:mt,...Be}=e,St={...n,ref:d,id:ae,role:a.value,"aria-modal":E.value===0?!0:void 0,"aria-labelledby":O.value,"aria-describedby":h.value},nr={open:E.value===0};return Ue(ef,{force:!0},()=>[Ue(Eb,()=>Ue(Ob,{target:d.value},()=>Ue(ef,{force:!1},()=>Ue(Go,{initialFocus:mt,containers:M,features:N.value?nt(S.value,{parent:Go.features.RestoreFocus,leaf:Go.features.All&~Go.features.FocusLock}):Go.features.None},()=>Ue(y,{},()=>rt({ourProps:St,theirProps:{...Be,...n},slot:nr,attrs:n,slots:r,visible:E.value===0,features:Xn.RenderStrategy|Xn.Static,name:"Dialog"})))))),Ue(re)])}}}),af=he({name:"DialogOverlay",props:{as:{type:[Object,String],default:"div"},id:{type:String,default:()=>`moonbase-dialog-overlay-${Lt()}`}},setup(e,{attrs:t,slots:n}){const r=rl("DialogOverlay");function o(s){s.target===s.currentTarget&&(s.preventDefault(),s.stopPropagation(),r.close())}return()=>{const{id:s,...i}=e;return rt({ourProps:{id:s,"aria-hidden":!0,onClick:o},theirProps:i,slot:{open:r.dialogState.value===0},attrs:t,slots:n,name:"DialogOverlay"})}}}),lf=he({name:"DialogPanel",props:{as:{type:[Object,String],default:"div"},id:{type:String,default:()=>`moonbase-dialog-panel-${Lt()}`}},setup(e,{attrs:t,slots:n,expose:r}){const o=rl("DialogPanel");r({el:o.panelRef,$el:o.panelRef});function s(i){i.stopPropagation()}return()=>{const{id:i,...a}=e,l={id:i,ref:o.panelRef,onClick:s};return rt({ourProps:l,theirProps:a,slot:{open:o.dialogState.value===0},attrs:t,slots:n,name:"DialogPanel"})}}}),mi=he({name:"DialogTitle",props:{as:{type:[Object,String],default:"h2"},id:{type:String,default:()=>`moonbase-dialog-title-${Lt()}`}},setup(e,{attrs:t,slots:n}){const r=rl("DialogTitle");return Re(()=>{r.setTitleId(e.id),dt(()=>r.setTitleId(null))}),()=>{const{id:o,...s}=e;return rt({ourProps:{id:o},theirProps:s,slot:{open:r.dialogState.value===0},attrs:t,slots:n,name:"DialogTitle"})}}});function uf(e,t){if(e)return e;const n=t??"button";if(typeof n=="string"&&n.toLowerCase()==="button")return"button"}function cf(e,t){const n=R(uf(e.value.type,e.value.as));return Re(()=>{n.value=uf(e.value.type,e.value.as)}),pt(()=>{var r;n.value||X(t)&&X(t)instanceof HTMLButtonElement&&!((r=X(t))!=null&&r.hasAttribute("type"))&&(n.value="button")}),n}const df=Symbol("PopoverContext");function ff(e){const t=Se(df,null);if(t===null)throw new Error(`<${e} /> is missing a parent <Popover /> component.`);return t}const Nb=Symbol("PopoverGroupContext");function pf(){return Se(Nb,null)}const hf=Symbol("PopoverPanelContext");function xb(){return Se(hf,null)}const mf=he({name:"Popover",inheritAttrs:!1,props:{as:{type:[Object,String],default:"div"}},setup(e,{slots:t,attrs:n,expose:r}){var W;const o=R(null);r({el:o,$el:o});const s=R(1),i=R(null),a=R(null),l=R(null),u=R(null),c=Y(()=>kn(o)),d=Y(()=>{var D,k;if(!X(i)||!X(u))return!1;for(const L of document.querySelectorAll("body > *"))if(Number(L==null?void 0:L.contains(X(i)))^Number(L==null?void 0:L.contains(X(u))))return!0;const y=di(),M=y.indexOf(X(i)),P=(M+y.length-1)%y.length,re=(M+1)%y.length,S=y[P],A=y[re];return!((D=X(u))!=null&&D.contains(S))&&!((k=X(u))!=null&&k.contains(A))}),f={popoverState:s,buttonId:R(null),panelId:R(null),panel:u,button:i,isPortalled:d,beforePanelSentinel:a,afterPanelSentinel:l,togglePopover(){s.value=nt(s.value,{0:1,1:0})},closePopover(){s.value!==1&&(s.value=1)},close(y){f.closePopover();const M=y?y instanceof HTMLElement?y:y.value instanceof HTMLElement?X(y):X(f.button):X(f.button);M==null||M.focus()}};ft(df,f),Xd(Y(()=>nt(s.value,{0:lt.Open,1:lt.Closed})));const m={buttonId:f.buttonId,panelId:f.panelId,close(){f.closePopover()}},E=pf(),N=E==null?void 0:E.registerPopover,[O,I]=of(),j=Jd({mainTreeNodeRef:E==null?void 0:E.mainTreeNodeRef,portals:O,defaultContainers:[i,u]});function $(){var y,M,P;return(E==null?void 0:E.isFocusWithinPopoverGroup())??(((y=c.value)==null?void 0:y.activeElement)&&(((M=X(i))==null?void 0:M.contains(c.value.activeElement))||((P=X(u))==null?void 0:P.contains(c.value.activeElement))))}return pt(()=>N==null?void 0:N(m)),Ga((W=c.value)==null?void 0:W.defaultView,"focus",y=>{var M,P;y.target!==window&&y.target instanceof HTMLElement&&s.value===0&&($()||i&&u&&(j.contains(y.target)||(M=X(f.beforePanelSentinel))!=null&&M.contains(y.target)||(P=X(f.afterPanelSentinel))!=null&&P.contains(y.target)||f.closePopover()))},!0),Gd(j.resolveContainers,(y,M)=>{var P;f.closePopover(),Bd(M,Xa.Loose)||(y.preventDefault(),(P=X(i))==null||P.focus())},Y(()=>s.value===0)),()=>{const y={open:s.value===0,close:f.close};return Ue(Ce,[Ue(I,{},()=>rt({theirProps:{...e,...n},ourProps:{ref:o},slot:y,slots:t,attrs:n,name:"Popover"})),Ue(j.MainTreeNode)])}}}),vf=he({name:"PopoverButton",props:{as:{type:[Object,String],default:"button"},disabled:{type:[Boolean],default:!1},id:{type:String,default:()=>`moonbase-popover-button-${Lt()}`}},inheritAttrs:!1,setup(e,{attrs:t,slots:n,expose:r}){const o=ff("PopoverButton"),s=Y(()=>kn(o.button));r({el:o.button,$el:o.button}),Re(()=>{o.buttonId.value=e.id}),dt(()=>{o.buttonId.value=null});const i=pf(),a=i==null?void 0:i.closeOthers,l=xb(),u=Y(()=>l===null?!1:l.value===o.panelId.value),c=R(null),d=`moonbase-focus-sentinel-${Lt()}`;u.value||pt(()=>{o.button.value=X(c)});const f=cf(Y(()=>({as:e.as,type:t.type})),c);function m($){var W,y,M,P,re;if(u.value){if(o.popoverState.value===1)return;switch($.key){case ot.Space:case ot.Enter:$.preventDefault(),(y=(W=$.target).click)==null||y.call(W),o.closePopover(),(M=X(o.button))==null||M.focus();break}}else switch($.key){case ot.Space:case ot.Enter:$.preventDefault(),$.stopPropagation(),o.popoverState.value===1&&(a==null||a(o.buttonId.value)),o.togglePopover();break;case ot.Escape:if(o.popoverState.value!==0)return a==null?void 0:a(o.buttonId.value);if(!X(o.button)||(P=s.value)!=null&&P.activeElement&&!((re=X(o.button))!=null&&re.contains(s.value.activeElement)))return;$.preventDefault(),$.stopPropagation(),o.closePopover();break}}function E($){u.value||$.key===ot.Space&&$.preventDefault()}function N($){var W,y;e.disabled||(u.value?(o.closePopover(),(W=X(o.button))==null||W.focus()):($.preventDefault(),$.stopPropagation(),o.popoverState.value===1&&(a==null||a(o.buttonId.value)),o.togglePopover(),(y=X(o.button))==null||y.focus()))}function O($){$.preventDefault(),$.stopPropagation()}const I=Ja();function j(){const $=X(o.panel);if(!$)return;function W(){nt(I.value,{[$t.Forwards]:()=>at($,We.First),[$t.Backwards]:()=>at($,We.Last)})===Cn.Error&&at(di().filter(M=>M.dataset.moonbaseFocusGuard!=="true"),nt(I.value,{[$t.Forwards]:We.Next,[$t.Backwards]:We.Previous}),{relativeTo:X(o.button)})}W()}return()=>{const $=o.popoverState.value===0,W={open:$},{id:y,...M}=e,P=u.value?{ref:c,type:f.value,onKeydown:m,onClick:N}:{ref:c,id:y,type:f.value,"aria-expanded":o.popoverState.value===0,"aria-controls":X(o.panel)?o.panelId.value:void 0,disabled:e.disabled?!0:void 0,onKeydown:m,onKeyup:E,onClick:N,onMousedown:O};return Ue(Ce,[rt({ourProps:P,theirProps:{...t,...M},slot:W,attrs:t,slots:n,name:"PopoverButton"}),$&&!u.value&&o.isPortalled.value&&Ue(tr,{id:d,features:er.Focusable,"data-moonbase-focus-guard":!0,as:"button",type:"button",onFocus:j})])}}}),gf=he({name:"PopoverPanel",props:{as:{type:[Object,String],default:"div"},static:{type:Boolean,default:!1},unmount:{type:Boolean,default:!0},focus:{type:Boolean,default:!1},id:{type:String,default:()=>`moonbase-popover-panel-${Lt()}`}},inheritAttrs:!1,setup(e,{attrs:t,slots:n,expose:r}){const{focus:o}=e,s=ff("PopoverPanel"),i=Y(()=>kn(s.panel)),a=`moonbase-focus-sentinel-before-${Lt()}`,l=`moonbase-focus-sentinel-after-${Lt()}`;r({el:s.panel,$el:s.panel}),Re(()=>{s.panelId.value=e.id}),dt(()=>{s.panelId.value=null}),ft(hf,s.panelId),pt(()=>{var I,j;if(!o||s.popoverState.value!==0||!s.panel)return;const O=(I=i.value)==null?void 0:I.activeElement;(j=X(s.panel))!=null&&j.contains(O)||at(X(s.panel),We.First)});const u=pi(),c=Y(()=>u!==null?(u.value&lt.Open)===lt.Open:s.popoverState.value===0);function d(O){var I,j;switch(O.key){case ot.Escape:if(s.popoverState.value!==0||!X(s.panel)||i.value&&!((I=X(s.panel))!=null&&I.contains(i.value.activeElement)))return;O.preventDefault(),O.stopPropagation(),s.closePopover(),(j=X(s.button))==null||j.focus();break}}function f(O){var j,$,W,y,M;const I=O.relatedTarget;I&&X(s.panel)&&((j=X(s.panel))!=null&&j.contains(I)||(s.closePopover(),((W=($=X(s.beforePanelSentinel))==null?void 0:$.contains)!=null&&W.call($,I)||(M=(y=X(s.afterPanelSentinel))==null?void 0:y.contains)!=null&&M.call(y,I))&&I.focus({preventScroll:!0})))}const m=Ja();function E(){const O=X(s.panel);if(!O)return;function I(){nt(m.value,{[$t.Forwards]:()=>{var $;at(O,We.First)===Cn.Error&&(($=X(s.afterPanelSentinel))==null||$.focus())},[$t.Backwards]:()=>{var j;(j=X(s.button))==null||j.focus({preventScroll:!0})}})}I()}function N(){const O=X(s.panel);if(!O)return;function I(){nt(m.value,{[$t.Forwards]:()=>{const j=X(s.button),$=X(s.panel);if(!j)return;const W=di(),y=W.indexOf(j),M=W.slice(0,y+1),re=[...W.slice(y+1),...M];for(const S of re.slice())if(S.dataset.moonbaseFocusGuard==="true"||$!=null&&$.contains(S)){const A=re.indexOf(S);A!==-1&&re.splice(A,1)}at(re,We.First,{sorted:!1})},[$t.Backwards]:()=>{var $;at(O,We.Previous)===Cn.Error&&(($=X(s.button))==null||$.focus())}})}I()}return()=>{const O={open:s.popoverState.value===0,close:s.close},{id:I,focus:j,...$}=e,W={ref:s.panel,id:I,onKeydown:d,onFocusout:o&&s.popoverState.value===0?f:void 0,tabIndex:-1};return rt({ourProps:W,theirProps:{...t,...$},attrs:t,slot:O,slots:{...n,default:(...y)=>{var M;return[Ue(Ce,[c.value&&s.isPortalled.value&&Ue(tr,{id:a,ref:s.beforePanelSentinel,features:er.Focusable,"data-moonbase-focus-guard":!0,as:"button",type:"button",onFocus:E}),(M=n.default)==null?void 0:M.call(n,...y),c.value&&s.isPortalled.value&&Ue(tr,{id:l,ref:s.afterPanelSentinel,features:er.Focusable,"data-moonbase-focus-guard":!0,as:"button",type:"button",onFocus:N})])]}},features:Xn.RenderStrategy|Xn.Static,visible:c.value,name:"PopoverPanel"})}}});let Sb=he({props:{onFocus:{type:Function,required:!0}},setup(e){let t=R(!0);return()=>t.value?Ue(tr,{as:"button",type:"button",features:er.Focusable,onFocus(n){n.preventDefault();let r,o=50;function s(){var i;if(o--<=0){r&&cancelAnimationFrame(r);return}if((i=e.onFocus)!=null&&i.call(e)){t.value=!1,cancelAnimationFrame(r);return}r=requestAnimationFrame(s)}r=requestAnimationFrame(s)}}):null}});const yf=Symbol("TabsContext");function vi(e){const t=Se(yf,null);if(t===null)throw new Error(`<${e} /> is missing a parent <TabGroup /> component.`);return t}const ol=Symbol("TabsSSRContext"),kb=he({name:"TabGroup",emits:{change:e=>!0},props:{as:{type:[Object,String],default:"template"},selectedIndex:{type:[Number],default:null},defaultIndex:{type:[Number],default:0},vertical:{type:[Boolean],default:!1},manual:{type:[Boolean],default:!1}},inheritAttrs:!1,setup(e,{slots:t,attrs:n,emit:r}){const o=R(e.selectedIndex??e.defaultIndex),s=R([]),i=R([]),a=Y(()=>e.selectedIndex!==null),l=Y(()=>a.value?e.selectedIndex:o.value),u={selectedIndex:Y(()=>o.value??e.defaultIndex??null),orientation:Y(()=>e.vertical?"vertical":"horizontal"),activation:Y(()=>e.manual?"manual":"auto"),tabs:s,panels:i,setSelectedIndex(E){l.value!==E&&r("change",E),a.value||c(E)},registerTab(E){if(s.value.includes(E))return;const N=s.value[o.value];if(s.value.push(E),s.value=Yr(s.value,X),!a.value){const O=s.value.indexOf(N)??o.value;O!==-1&&(o.value=O)}},unregisterTab(E){const N=s.value.indexOf(E);N!==-1&&s.value.splice(N,1)},registerPanel(E){i.value.includes(E)||(i.value.push(E),i.value=Yr(i.value,X))},unregisterPanel(E){const N=i.value.indexOf(E);N!==-1&&i.value.splice(N,1)}};function c(E){const N=Yr(u.tabs.value,X),O=Yr(u.panels.value,X),I=N.filter(j=>{var $;return!(($=X(j))!=null&&$.hasAttribute("disabled"))});if(E<0||E>N.length-1){const j=nt(o.value===null?0:Math.sign(E-o.value),{[-1]:()=>1,0:()=>nt(Math.sign(E),{[-1]:()=>0,0:()=>0,1:()=>1}),1:()=>0}),$=nt(j,{0:()=>N.indexOf(I[0]),1:()=>N.indexOf(I[I.length-1])});$!==-1&&(o.value=$),u.tabs.value=N,u.panels.value=O}else{const j=N.slice(0,E),W=[...N.slice(E),...j].find(M=>I.includes(M));if(!W)return;let y=N.indexOf(W)??u.selectedIndex.value;y===-1&&(y=u.selectedIndex.value),o.value=y,u.tabs.value=N,u.panels.value=O}}ft(yf,u);const d=R({tabs:[],panels:[]}),f=R(!1);Re(()=>{f.value=!0}),ft(ol,Y(()=>f.value?null:d.value));const m=Y(()=>e.selectedIndex);return Re(()=>{ze([m],()=>c(e.selectedIndex??e.defaultIndex),{immediate:!0})}),pt(()=>{if(!a.value||l.value==null||u.tabs.value.length<=0)return;const E=Yr(u.tabs.value,X);E.some((O,I)=>X(u.tabs.value[I])!==X(O))&&u.setSelectedIndex(E.findIndex(O=>X(O)===X(u.tabs.value[l.value])))}),()=>{const E={selectedIndex:o.value};return Ue(Ce,[s.value.length<=0&&Ue(Sb,{onFocus:()=>{for(const N of s.value){const O=X(N);if((O==null?void 0:O.tabIndex)===0)return O.focus(),!0}return!1}}),rt({theirProps:{...n,...Ya(e,["selectedIndex","defaultIndex","manual","vertical","onChange"])},ourProps:{},slot:E,slots:t,attrs:n,name:"TabGroup"})])}}}),Cb=he({name:"TabList",props:{as:{type:[Object,String],default:"div"}},setup(e,{attrs:t,slots:n}){const r=vi("TabList");return()=>{const o={selectedIndex:r.selectedIndex.value},s={role:"tablist","aria-orientation":r.orientation.value};return rt({ourProps:s,theirProps:e,slot:o,attrs:t,slots:n,name:"TabList"})}}}),sl=he({name:"Tab",props:{as:{type:[Object,String],default:"button"},disabled:{type:[Boolean],default:!1},id:{type:String,default:()=>`moonbase-tabs-tab-${Lt()}`}},setup(e,{attrs:t,slots:n,expose:r}){const o=vi("Tab"),s=R(null);r({el:s,$el:s}),Re(()=>o.registerTab(s)),dt(()=>o.unregisterTab(s));const i=Se(ol),a=Y(()=>{if(i.value){const O=i.value.tabs.indexOf(e.id);return O===-1?i.value.tabs.push(e.id)-1:O}return-1}),l=Y(()=>{const O=o.tabs.value.indexOf(s);return O===-1?a.value:O}),u=Y(()=>l.value===o.selectedIndex.value);function c(O){var j;const I=O();if(I===Cn.Success&&o.activation.value==="auto"){const $=(j=kn(s))==null?void 0:j.activeElement,W=o.tabs.value.findIndex(y=>X(y)===$);W!==-1&&o.setSelectedIndex(W)}return I}function d(O){const I=o.tabs.value.map($=>X($)).filter(Boolean);if(O.key===ot.Space||O.key===ot.Enter){O.preventDefault(),O.stopPropagation(),o.setSelectedIndex(l.value);return}switch(O.key){case ot.Home:case ot.PageUp:return O.preventDefault(),O.stopPropagation(),c(()=>at(I,We.First));case ot.End:case ot.PageDown:return O.preventDefault(),O.stopPropagation(),c(()=>at(I,We.Last))}if(c(()=>nt(o.orientation.value,{vertical(){return O.key===ot.ArrowUp?at(I,We.Previous|We.WrapAround):O.key===ot.ArrowDown?at(I,We.Next|We.WrapAround):Cn.Error},horizontal(){return O.key===ot.ArrowLeft?at(I,We.Previous|We.WrapAround):O.key===ot.ArrowRight?at(I,We.Next|We.WrapAround):Cn.Error}}))===Cn.Success)return O.preventDefault()}const f=R(!1);function m(){var O;f.value||(f.value=!0,!e.disabled&&((O=X(s))==null||O.focus({preventScroll:!0}),o.setSelectedIndex(l.value),fi(()=>{f.value=!1})))}function E(O){O.preventDefault()}const N=cf(Y(()=>({as:e.as,type:t.type})),s);return()=>{var W;const O={selected:u.value,disabled:e.disabled??!1},{id:I,...j}=e,$={ref:s,onKeydown:d,onMousedown:E,onClick:m,id:I,role:"tab",type:N.value,"aria-controls":(W=X(o.panels.value[l.value]))==null?void 0:W.id,"aria-selected":u.value,tabIndex:u.value?0:-1,disabled:e.disabled?!0:void 0};return rt({ourProps:$,theirProps:j,slot:O,attrs:t,slots:n,name:"Tab"})}}}),Tb=he({name:"TabPanels",props:{as:{type:[Object,String],default:"div"}},setup(e,{slots:t,attrs:n}){const r=vi("TabPanels");return()=>{const o={selectedIndex:r.selectedIndex.value};return rt({theirProps:e,ourProps:{},slot:o,attrs:n,slots:t,name:"TabPanels"})}}}),il=he({name:"TabPanel",props:{as:{type:[Object,String],default:"div"},static:{type:Boolean,default:!1},unmount:{type:Boolean,default:!0},id:{type:String,default:()=>`moonbase-tabs-panel-${Lt()}`},tabIndex:{type:Number,default:0}},setup(e,{attrs:t,slots:n,expose:r}){const o=vi("TabPanel"),s=R(null);r({el:s,$el:s}),Re(()=>o.registerPanel(s)),dt(()=>o.unregisterPanel(s));const i=Se(ol),a=Y(()=>{if(i.value){const c=i.value.panels.indexOf(e.id);return c===-1?i.value.panels.push(e.id)-1:c}return-1}),l=Y(()=>{const c=o.panels.value.indexOf(s);return c===-1?a.value:c}),u=Y(()=>l.value===o.selectedIndex.value);return()=>{var N;const c={selected:u.value},{id:d,tabIndex:f,...m}=e,E={ref:s,id:d,role:"tabpanel","aria-labelledby":(N=X(o.tabs.value[l.value]))==null?void 0:N.id,tabIndex:u.value?f:-1};return!u.value&&e.unmount&&!e.static?Ue(tr,{as:"span","aria-hidden":!0,...E}):rt({ourProps:E,theirProps:m,slot:c,attrs:t,slots:n,features:Xn.Static|Xn.RenderStrategy,visible:u.value,name:"TabPanel"})}}});function Pb(e){let t={called:!1};return(...n)=>{if(!t.called)return t.called=!0,e(...n)}}function al(e,...t){e&&t.length>0&&!e.dataset.transition?e.dataset.transition=t.join(" "):e&&t.length>0&&e.dataset.transition&&(e.dataset.transition=[...e.dataset.transition.split(" "),...t].join(" "))}function gi(e,...t){e&&t.length>0&&e.dataset.transition&&(e.dataset.transition=e.dataset.transition.split(" ").filter(n=>!t.includes(n)).join(" "))}var ll=(e=>(e.Finished="finished",e.Cancelled="cancelled",e))(ll||{});function $b(e,t){const n=Jo();if(!e)return n.dispose;const{transitionDuration:r,transitionDelay:o}=getComputedStyle(e),[s,i]=[r,o].map(a=>{const[l=0]=a.split(",").filter(Boolean).map(u=>u.includes("ms")?Number.parseFloat(u):Number.parseFloat(u)*1e3).sort((u,c)=>c-u);return l});return s!==0?n.setTimeout(()=>t("finished"),s+i):t("finished"),n.add(()=>t("cancelled")),n.dispose}function bf(e,t,n,r,o,s){const i=Jo(),a=s!==void 0?Pb(s):()=>{};return gi(e,...o),al(e,...t,...n),i.nextFrame(()=>{gi(e,...n),al(e,...r),i.add($b(e,l=>(gi(e,...r,...t),al(e,...o),a(l))))}),i.add(()=>gi(e,...t,...n,...r,...o)),i.add(()=>a("cancelled")),i.dispose}function Cr(e=""){return e.split(/\s+/).filter(t=>t.length>1)}const ul=Symbol("TransitionContext");function Db(){return Se(ul,null)!==null}function Ib(){const e=Se(ul,null);if(e===null)throw new Error("A <TransitionChild /> is used but it is missing a parent <TransitionRoot />.");return e}const cl=Symbol("NestingContext");function Ab(){const e=Se(cl,null);if(e===null)throw new Error("A <TransitionChild /> is used but it is missing a parent <TransitionRoot />.");return e}function yi(e){return"children"in e?yi(e.children):e.value.filter(({state:t})=>t==="visible").length>0}function _f(e){const t=R([]),n=R(!1);Re(()=>n.value=!0),dt(()=>n.value=!1);function r(s,i=Qn.Hidden){const a=t.value.findIndex(({id:l})=>l===s);a!==-1&&(nt(i,{[Qn.Unmount](){t.value.splice(a,1)},[Qn.Hidden](){t.value[a].state="hidden"}}),!yi(t)&&n.value&&(e==null||e()))}function o(s){const i=t.value.find(({id:a})=>a===s);return i?i.state!=="visible"&&(i.state="visible"):t.value.push({id:s,state:"visible"}),()=>r(s,Qn.Unmount)}return{children:t,register:o,unregister:r}}const wf=Xn.RenderStrategy,Qo=he({props:{as:{type:[Object,String],default:"div"},show:{type:[Boolean],default:null},unmount:{type:[Boolean],default:!0},appear:{type:[Boolean],default:!1},enter:{type:[String],default:"enter"},enterFrom:{type:[String],default:"enter-from"},enterTo:{type:[String],default:"enter-to"},entered:{type:[String],default:"entered"},leave:{type:[String],default:"leave"},leaveFrom:{type:[String],default:"leave-from"},leaveTo:{type:[String],default:"leave-to"}},emits:{beforeEnter:()=>!0,afterEnter:()=>!0,beforeLeave:()=>!0,afterLeave:()=>!0},setup(e,{emit:t,attrs:n,slots:r,expose:o}){const s=R(0);function i(){s.value|=lt.Opening,t("beforeEnter")}function a(){s.value&=~lt.Opening,t("afterEnter")}function l(){s.value|=lt.Closing,t("beforeLeave")}function u(){s.value&=~lt.Closing,t("afterLeave")}if(!Db()&&vb())return()=>Ue(dl,{...e,onBeforeEnter:i,onAfterEnter:a,onBeforeLeave:l,onAfterLeave:u},r);const c=R(null),d=Y(()=>e.unmount?Qn.Unmount:Qn.Hidden);o({el:c,$el:c});const{show:f,appear:m}=Ib(),{register:E,unregister:N}=Ab(),O=R(f.value?"visible":"hidden"),I={value:!0},j=Lt(),$={value:!1},W=_f(()=>{!$.value&&O.value!=="hidden"&&(O.value="hidden",N(j),u())});Re(()=>{const L=E(j);dt(L)}),pt(()=>{if(d.value===Qn.Hidden&&j){if(f.value&&O.value!=="visible"){O.value="visible";return}nt(O.value,{hidden:()=>N(j),visible:()=>E(j)})}});const y=Cr(e.enter),M=Cr(e.enterFrom),P=Cr(e.enterTo),re=Cr(e.entered),S=Cr(e.leave),A=Cr(e.leaveFrom),D=Cr(e.leaveTo);Re(()=>{pt(()=>{if(O.value==="visible"){const L=X(c);if(L instanceof Comment&&L.data==="")throw new Error("Did you forget to passthrough the `ref` to the actual DOM node?")}})});function k(L){const ne=I.value&&!m.value,h=X(c);!h||!(h instanceof HTMLElement)||ne||($.value=!0,f.value&&i(),f.value||l(),L(f.value?bf(h,y,M,P,re,V=>{$.value=!1,V===ll.Finished&&a()}):bf(h,S,A,D,re,V=>{$.value=!1,V===ll.Finished&&(yi(W)||(O.value="hidden",N(j),u()))})))}return Re(()=>{ze([f],(L,ne,h)=>{k(h),I.value=!1},{immediate:!0})}),ft(cl,W),Xd(Y(()=>nt(O.value,{visible:lt.Open,hidden:lt.Closed})|s.value)),()=>{const{appear:L,show:ne,enter:h,enterFrom:V,enterTo:ee,entered:ie,leave:ve,leaveFrom:ae,leaveTo:Fe,...mt}=e,Be={ref:c},St={...mt,...m.value&&f.value&&Ko.isServer?{class:_s([n.class,mt.class,...y,...M])}:{}};return rt({theirProps:St,ourProps:Be,slot:{},slots:r,attrs:n,features:wf,visible:O.value==="visible",name:"TransitionChild"})}}}),Vb=Qo,dl=he({inheritAttrs:!1,props:{as:{type:[Object,String],default:"div"},show:{type:[Boolean],default:null},unmount:{type:[Boolean],default:!0},appear:{type:[Boolean],default:!1},enter:{type:[String],default:""},enterFrom:{type:[String],default:""},enterTo:{type:[String],default:""},entered:{type:[String],default:""},leave:{type:[String],default:""},leaveFrom:{type:[String],default:""},leaveTo:{type:[String],default:""}},emits:{beforeEnter:()=>!0,afterEnter:()=>!0,beforeLeave:()=>!0,afterLeave:()=>!0},setup(e,{emit:t,attrs:n,slots:r}){const o=pi(),s=Y(()=>e.show===null&&o!==null?(o.value&lt.Open)===lt.Open:e.show);pt(()=>{if(![!0,!1].includes(s.value))throw new Error('A <Transition /> is used but it is missing a `:show="true | false"` prop.')});const i=R(s.value?"visible":"hidden"),a=_f(()=>{i.value="hidden"}),l=R(!0),u={show:s,appear:Y(()=>e.appear||!l.value)};return Re(()=>{pt(()=>{l.value=!1,s.value?i.value="visible":yi(a)||(i.value="hidden")})}),ft(cl,a),ft(ul,u),()=>{const c=Ya(e,["show","appear","unmount","onBeforeEnter","onBeforeLeave","onAfterEnter","onAfterLeave"]),d={unmount:e.unmount};return rt({ourProps:{...d,as:"template"},theirProps:{},slot:{},slots:{...r,default:()=>[Ue(Vb,{onBeforeEnter:()=>t("beforeEnter"),onAfterEnter:()=>t("afterEnter"),onBeforeLeave:()=>t("beforeLeave"),onAfterLeave:()=>t("afterLeave"),...n,...d,...c},r.default)]},attrs:{},features:wf,visible:i.value==="visible",name:"Transition"})}}}),Rb=["data-contain"],bi=he({__name:"Modal",props:{open:{type:Boolean}},emits:["close"],setup(e){const t=Se(Nr);return(n,r)=>(w(),ke(_(dl),{as:"template",show:n.open},{default:we(()=>{var o,s,i;return[z(_(sf),{as:"div",class:"moonbase:modal","data-contain":!!((o=_(t))!=null&&o.target)||void 0,"make-inert":!((s=_(t))!=null&&s.target),"lock-scroll":!((i=_(t))!=null&&i.target),onClose:r[0]||(r[0]=a=>n.$emit("close"))},{default:we(()=>{var a;return[x("div",{class:"moonbase:modal-container","data-contain":!!((a=_(t))!=null&&a.target)||void 0},[z(_(Qo),{as:"template"},{default:we(()=>{var l;return[z(_(af),{class:"moonbase:modal-overlay","data-contain":!!((l=_(t))!=null&&l.target)||void 0},null,8,["data-contain"])]}),_:1}),z(_(Qo),{as:"template"},{default:we(()=>[z(_(lf),{class:"moonbase:modal-content"},{default:we(()=>[ma(n.$slots,"default")]),_:3})]),_:3})],8,Rb)]}),_:3},8,["data-contain","make-inert","lock-scroll"])]}),_:3},8,["show"]))}}),jb=["data-visible"],Mb=he({__name:"SignIn",emits:["signedIn"],setup(e,{emit:t}){const n=t,r=je(),o=wt(),s=Se(Nr),i=R(r.getParameter("email")??""),a=R(""),l=R(null);async function u(){l.value=null;try{const c=await o.signIn(i.value,a.value);Kt(1500).then(()=>n("signedIn",c))}catch(c){throw c instanceof Vn?l.value="User not found":l.value=c.message,c}}return(c,d)=>(w(),ke(Jn,{handler:u,class:"moonbase:sign-in"},{default:we(()=>{var f;return[z(Et,{modelValue:i.value,"onUpdate:modelValue":d[0]||(d[0]=m=>i.value=m),label:"Email address",name:"email",type:"email",placeholder:"Email address",autocomplete:"email",required:""},null,8,["modelValue"]),z(Et,{modelValue:a.value,"onUpdate:modelValue":d[1]||(d[1]=m=>a.value=m),label:"Password",name:"password",type:"password",placeholder:"Password",autocomplete:"current-password",required:""},null,8,["modelValue"]),z(Yn,{success:"Signed in",label:"Sign in",error:"Error"}),x("span",{class:"moonbase:error","data-visible":!!l.value||void 0},J(l.value),9,jb),(f=_(s))!=null&&f.auth.signUp.enabled?(w(),C("button",{key:0,type:"button",onClick:d[2]||(d[2]=m=>_(r).show(_(Ne).Authentication,_(ue).SignUp,{email:i.value}))}," Create account ")):fe("",!0),x("button",{type:"button",onClick:d[3]||(d[3]=m=>_(r).show(_(Ne).Authentication,_(ue).ForgotPassword,{email:i.value}))}," Forgot password ")]}),_:1}))}});function fl(...e){}const Lb={class:"moonbase:authentication"},Ub={key:0,class:"moonbase:loader"},Fb=he({__name:"Authentication",props:{open:{type:Boolean}},setup(e){const t=je(),{loaded:n}=wt(),r=Y(()=>{switch(t.intent){case ue.SignIn:return"Sign in";case ue.SignUp:return"Sign up";case ue.ConfirmAccount:return"Confirm account";case ue.ConfirmEmailChange:return"Confirm email change";case ue.ForgotPassword:return"Forgot password";case ue.ResetPassword:return"Reset password"}return"Authentication"}),o=Y(()=>{if(t.intent===ue.SignIn&&t.next){const[i,a,l]=t.next;if(i===Ne.Authentication&&a===ue.ConfirmEmailChange)return"to confirm email"}return null});function s(){t.reset()}return(i,a)=>(w(),ke(bi,{open:i.open,onClose:s},{default:we(()=>[x("div",Lb,[z(_(mi),{as:"h3"},{default:we(()=>[Te(J(r.value)+" "+J(o.value),1)]),_:1}),_(n)?_(t).intent===_(ue).SignIn?(w(),ke(Mb,{key:1,onSignedIn:a[0]||(a[0]=l=>_(t).dequeue())})):_(t).intent===_(ue).SignUp?(w(),ke(jy,{key:2,onSignedUp:a[1]||(a[1]=l=>_(t).show(_(Ne).Customer,_(ue).ViewAccount))})):_(t).intent===_(ue).ConfirmAccount?(w(),ke(Fy,{key:3,onConfirmedAccount:a[2]||(a[2]=l=>_(t).show(_(Ne).Customer,_(ue).ViewAccount))})):_(t).intent===_(ue).ConfirmEmailChange?(w(),ke(Gy,{key:4})):_(t).intent===_(ue).ForgotPassword?(w(),ke(Hy,{key:5})):_(t).intent===_(ue).ResetPassword?(w(),ke(qy,{key:6,onPasswordReset:a[3]||(a[3]=l=>_(t).show(_(Ne).Customer,_(ue).ViewAccount))})):fe("",!0):(w(),C("div",Ub,[z(Mt)]))])]),_:1},8,["open"]))}});function Dt(e,t){return new Intl.NumberFormat(void 0,{style:"currency",currency:t,currencyDisplay:"narrowSymbol",maximumFractionDigits:2,minimumFractionDigits:2}).format(e)}const Bb={class:"moonbase:product-cart-item"},Hb=["src"],Zb={key:1,class:"moonbase:image-placeholder"},qb={class:"moonbase:product-cart-item-content"},Wb={key:0,class:"moonbase:cart-item-discount"},zb={class:"font-semibold"},Kb={key:0,class:"ml-0.5"},Gb={key:2,class:"moonbase:product-cart-item-total"},Jb={key:0,class:"moonbase:discount"},Yb={key:1},Xb=he({__name:"ProductCartItem",props:{lineItem:{},currency:{}},setup(e){return(t,n)=>{var r,o,s;return w(),C("div",Bb,[(r=t.lineItem.product)!=null&&r.iconUrl?(w(),C("img",{key:0,src:t.lineItem.product.iconUrl,alt:""},null,8,Hb)):(w(),C("div",Zb)),x("div",qb,[x("h3",null,J((o=t.lineItem.product)==null?void 0:o.name),1),x("p",null,J((s=t.lineItem.product)==null?void 0:s.tagline),1),t.lineItem.appliedDiscount?(w(),C("p",Wb,[n[0]||(n[0]=Te(" Discount applied: ")),x("span",zb,J(t.lineItem.appliedDiscount.name),1),t.lineItem.appliedDiscount.total?(w(),C("span",Kb," (-"+J(_(Dt)(t.lineItem.appliedDiscount.total[t.currency],t.currency))+") ",1)):fe("",!0)])):fe("",!0),x("p",null,J(t.lineItem.quantity)+" in cart",1)]),t.lineItem.variation?(w(),C("div",Gb,[t.lineItem.variation.hasDiscount?(w(),C("span",Jb,J(_(Dt)(t.lineItem.variation.originalPrice[t.currency],t.currency)),1)):fe("",!0),t.lineItem.quantity!==1?(w(),C("span",Yb,J(t.lineItem.quantity)+" x "+J(_(Dt)(t.lineItem.variation.price[t.currency],t.currency)),1)):fe("",!0),Te(" "+J(_(Dt)(t.lineItem.variation.price[t.currency]*t.lineItem.quantity,t.currency)),1)])):fe("",!0)])}}}),Qb={class:"moonbase:bundle-cart-item"},e_=["src"],t_={key:1,class:"moonbase:image-placeholder"},n_={class:"moonbase:bundle-cart-item-content"},r_={key:0,class:"moonbase:cart-item-discount"},o_={class:"font-semibold"},s_={key:0,class:"ml-0.5"},i_={class:"moonbase:bundle-cart-item-summary"},a_=["data-open"],l_={key:2,class:"moonbase:product-cart-item-total"},u_={key:0,class:"moonbase:discount"},c_={key:1},d_=["src"],f_={key:1,class:"moonbase:image-placeholder"},p_=["data-included"],h_={key:0,fill:"none",viewBox:"0 0 24 24","stroke-width":"1.5",stroke:"currentColor"},m_={key:0,class:"truncate italic"},v_={key:1,class:"truncate"},g_=he({__name:"BundleCartItem",props:{lineItem:{},currency:{}},setup(e){const t=R(!1),n=R(null);return ze(t,r=>{n.value&&(n.value.style.height=r?`${n.value.scrollHeight}px`:"0px")}),(r,o)=>{var s,i,a,l,u,c,d;return w(),C("div",null,[x("div",Qb,[(s=r.lineItem.bundle)!=null&&s.iconUrl?(w(),C("img",{key:0,src:r.lineItem.bundle.iconUrl,alt:""},null,8,e_)):(w(),C("div",t_)),x("div",n_,[x("h3",null,J((i=r.lineItem.bundle)==null?void 0:i.name),1),x("p",null,J((a=r.lineItem.bundle)==null?void 0:a.tagline),1),r.lineItem.appliedDiscount?(w(),C("p",r_,[o[1]||(o[1]=Te(" Discount applied: ")),x("span",o_,J(r.lineItem.appliedDiscount.name),1),r.lineItem.appliedDiscount.total?(w(),C("span",s_," (-"+J(_(Dt)(r.lineItem.appliedDiscount.total[r.currency],r.currency))+") ",1)):fe("",!0)])):fe("",!0),x("div",i_,[x("span",null,J(r.lineItem.quantity)+" in cart",1),r.lineItem.bundle?(w(),C("button",{key:0,onClick:o[0]||(o[0]=f=>t.value=!t.value)},[x("span",null,[Te(" Including "+J((l=r.lineItem.bundle)==null?void 0:l.products.filter(f=>f.included).length)+" ",1),(u=r.lineItem.bundle)!=null&&u.products.some(f=>!f.included)?(w(),C(Ce,{key:0},[Te("of "+J((c=r.lineItem.bundle)==null?void 0:c.products.length),1)],64)):fe("",!0),o[2]||(o[2]=Te(" products "))]),(w(),C("svg",{"data-open":t.value||void 0,fill:"none",viewBox:"0 0 24 24","stroke-width":"1.5",stroke:"currentColor"},o[3]||(o[3]=[x("path",{"stroke-linecap":"round","stroke-linejoin":"round",d:"m19.5 8.25-7.5 7.5-7.5-7.5"},null,-1)]),8,a_))])):fe("",!0)])]),r.lineItem.variation?(w(),C("div",l_,[r.lineItem.variation.hasDiscount?(w(),C("span",u_,J(_(Dt)(r.lineItem.variation.originalPrice[r.currency],r.currency)),1)):fe("",!0),r.lineItem.quantity!==1?(w(),C("span",c_,J(r.lineItem.quantity)+" x "+J(_(Dt)(r.lineItem.variation.price[r.currency],r.currency)),1)):fe("",!0),Te(" "+J(_(Dt)(r.lineItem.variation.price[r.currency]*r.lineItem.quantity,r.currency)),1)])):fe("",!0)]),x("div",{ref_key:"productListRef",ref:n,class:"moonbase:bundle-cart-item-product-list",style:{height:"0px"}},[(w(!0),C(Ce,null,an(((d=r.lineItem.bundle)==null?void 0:d.products)||[],f=>(w(),C("div",{key:f.id},[f!=null&&f.iconUrl?(w(),C("img",{key:0,src:f.iconUrl,alt:""},null,8,d_)):(w(),C("div",f_)),x("div",null,[x("h3",{"data-included":f.included||void 0},[f.included?(w(),C("svg",h_,o[4]||(o[4]=[x("path",{"stroke-linecap":"round","stroke-linejoin":"round",d:"m4.5 12.75 6 6 9-13.5"},null,-1)]))):fe("",!0),Te(" "+J(f==null?void 0:f.name),1)],8,p_),f.included?f!=null&&f.tagline?(w(),C("p",v_,J(f.tagline),1)):fe("",!0):(w(),C("p",m_," You already own this "))])]))),128))],512)])}}}),y_=["data-contain"],b_=he({__name:"CartModal",props:{open:{type:Boolean}},emits:["close"],setup(e){const t=Se(Nr);return(n,r)=>(w(),ke(_(dl),{as:"template",show:n.open},{default:we(()=>{var o,s,i;return[z(_(sf),{as:"div",class:"moonbase:cart-modal","data-contain":!!((o=_(t))!=null&&o.target)||void 0,"make-inert":!((s=_(t))!=null&&s.target),"lock-scroll":!((i=_(t))!=null&&i.target),onClose:r[0]||(r[0]=a=>n.$emit("close"))},{default:we(()=>{var a;return[x("div",{class:"moonbase:cart-modal-container","data-contain":!!((a=_(t))!=null&&a.target)||void 0},[z(_(Qo),{as:"template"},{default:we(()=>{var l;return[z(_(af),{class:"moonbase:cart-modal-overlay","data-contain":!!((l=_(t))!=null&&l.target)||void 0},null,8,["data-contain"])]}),_:1}),z(_(Qo),{as:"template"},{default:we(()=>{var l;return[z(_(lf),{class:"moonbase:cart-modal-content","data-contain":!!((l=_(t))!=null&&l.target)||void 0},{default:we(()=>[ma(n.$slots,"default")]),_:3},8,["data-contain"])]}),_:3})],8,y_)]}),_:3},8,["data-contain","make-inert","lock-scroll"])]}),_:3},8,["show"]))}}),__=["disabled","data-success","data-error","data-working","data-variant"],w_=["data-visible"],Ef=he({__name:"MoonButton",props:{handler:{type:Function},label:{},success:{},error:{},variant:{},noReset:{type:Boolean}},setup(e){const t=e,n=R(!1),r=R(!1),o=R(!1),s=Y(()=>r.value?t.success??t.label:o.value?t.error:t.label);async function i(){try{const a=t.handler();if(a instanceof Promise){if(n.value=!0,await a,n.value=!1,!t.success)return;r.value=!0,await Kt(2500),t.noReset||(r.value=!1)}}catch{n.value=!1,o.value=!0,await Kt(2500),o.value=!1}}return(a,l)=>(w(),C("button",{class:"moonbase:button",type:"button",disabled:r.value||o.value||n.value,"data-success":r.value&&a.success||void 0,"data-error":o.value||void 0,"data-working":n.value||void 0,"data-variant":a.variant,onClick:i},[x("div",{"data-visible":n.value||void 0,"aria-hidden":"true"},[n.value?(w(),ke(Mt,{key:0})):fe("",!0)],8,w_),Te(" "+J(s.value),1)],8,__))}}),E_={class:"moonbase:cart"},O_={key:0,role:"list",class:"moonbase:cart-items"},N_={key:1,class:"moonbase:cart-empty"},x_={key:2,class:"moonbase:cart-total"},S_=he({__name:"Cart",props:{open:{type:Boolean}},setup(e){const t=je(),{items:n,total:r,currency:o,checkout:s}=ni(),i=Se(Nr);async function a(){if(!await s({redirect:(i==null?void 0:i.checkout.redirect)??!1,returnUrl:`${window.location.pathname}?mb_intent=view_products`}))throw new Error("Cancelled checkout")}return(l,u)=>(w(),ke(b_,{open:l.open,onClose:u[0]||(u[0]=c=>_(t).reset())},{default:we(()=>[x("div",E_,[z(_(mi),{as:"h3"},{default:we(()=>u[1]||(u[1]=[Te(" Cart ")])),_:1}),_(n).length>0?(w(),C("ul",O_,[(w(!0),C(Ce,null,an(_(n),c=>(w(),C("li",{key:c.id},[c.type==="Product"?(w(),ke(Xb,{key:0,"line-item":c,currency:_(o)},null,8,["line-item","currency"])):c.type==="Bundle"?(w(),ke(g_,{key:1,"line-item":c,currency:_(o)},null,8,["line-item","currency"])):fe("",!0)]))),128))])):(w(),C("div",N_," Your cart is empty! ")),_(n).length>0?(w(),C("div",x_,[u[2]||(u[2]=x("label",null," Total ",-1)),x("span",null,J(_(Dt)(_(r).amount,_(r).currency)),1),u[3]||(u[3]=x("p",null," Sales tax to be calculated at checkout ",-1))])):fe("",!0),_(n).length>0?(w(),ke(Ef,{key:3,handler:a,label:"Checkout",error:"Cancelled"})):fe("",!0)])]),_:1},8,["open"]))}}),k_={class:"moonbase:account"},C_={key:0,class:"moonbase:error"},T_={key:1,class:"moonbase:notification"},P_={key:0,class:"moonbase:error"},$_=he({__name:"Account",setup(e){var j,$,W;const t=je(),{user:n,update:r,setPassword:o,signOut:s}=wt(),i=R(((j=n.value)==null?void 0:j.name)??""),a=R((($=n.value)==null?void 0:$.email)??""),l=R(((W=n.value)==null?void 0:W.communicationPreferences)??{newsletterOptIn:!1}),u=R(null),c=R(!1),d=R(""),f=R(""),m=R(null),E=R(!1);async function N(){u.value=null,c.value=!1;try{(await r(i.value,a.value,void 0,l.value)).needsEmailConfirmationToken&&(c.value=!0)}catch(y){throw u.value=y,y}}async function O(){m.value=null;try{await o(d.value,f.value),d.value="",f.value=""}catch(y){throw m.value=y,y}}async function I(){E.value=!0,await s(),t.reset()}return(y,M)=>(w(),C("div",k_,[z(Jn,{handler:N},{default:we(()=>[z(Et,{modelValue:i.value,"onUpdate:modelValue":M[0]||(M[0]=P=>i.value=P),label:"Full name",name:"name",autocomplete:"name",required:""},null,8,["modelValue"]),z(Et,{modelValue:a.value,"onUpdate:modelValue":M[1]||(M[1]=P=>a.value=P),label:"Email address",name:"email",type:"email",autocomplete:"email",required:""},null,8,["modelValue"]),z(Md,{modelValue:l.value.newsletterOptIn,"onUpdate:modelValue":M[2]||(M[2]=P=>l.value.newsletterOptIn=P),label:"Newsletter subscription",name:"newsletter-opt-in",hint:"Receive updates and offers by email"},null,8,["modelValue"]),z(Yn,{label:"Save",error:"Error",success:"Saved"}),u.value?(w(),C("p",C_,J(u.value.message),1)):c.value?(w(),C("p",T_," You need to confirm your new email address, please check your inbox ")):fe("",!0)]),_:1}),z(Jn,{handler:O},{default:we(()=>[z(Et,{modelValue:d.value,"onUpdate:modelValue":M[3]||(M[3]=P=>d.value=P),label:"Current password",name:"old-password",type:"password",autocomplete:"current-password",required:""},null,8,["modelValue"]),z(Et,{modelValue:f.value,"onUpdate:modelValue":M[4]||(M[4]=P=>f.value=P),label:"New password",name:"new-password",type:"password",autocomplete:"new-password",required:""},null,8,["modelValue"]),z(Yn,{label:"Save",error:"Error",success:"Saved"}),m.value?(w(),C("p",P_,J(m.value.message),1)):fe("",!0)]),_:1}),z(Ef,{label:"Log out",success:"Logged out",error:"Error",variant:"secondary",handler:I})]))}}),D_={},I_={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 512 512"};function A_(e,t){return w(),C("svg",I_,t[0]||(t[0]=[x("path",{d:"M320 336h76c55 0 100-21.21 100-75.6s-53-73.47-96-75.6C391.11 99.74 329 48 256 48c-69 0-113.44 45.79-128 91.2-60 5.7-112 35.88-112 98.4S70 336 136 336h56M192 400.1l64 63.9 64-63.9M256 224v224.03",fill:"none",stroke:"currentColor","stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"32"},null,-1)]))}const Of=Jr(D_,[["render",A_]]),V_={},R_={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 512 512"};function j_(e,t){return w(),C("svg",R_,t[0]||(t[0]=[x("path",{d:"M480 265H232v179l248 36V265zM216 265H32v150l184 26.7V265zM480 32L232 67.4V249h248V32zM216 69.7L32 96v153h184V69.7z",fill:"currentColor"},null,-1)]))}const Nf=Jr(V_,[["render",j_]]),M_={},L_={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 512 512"};function U_(e,t){return w(),C("svg",L_,t[0]||(t[0]=[x("path",{d:"M443.66 405.05c-1.46-.79-2.85-1.54-4-2.2-6.47-3.83-13-10.52-11.85-17.83 2.42-15.94 2.89-23.47-.49-28.79a15.61 15.61 0 0 0-7.67-6.2v-.06c1.41-2.56 2.26-5.66 2.83-10.12 1.44-11-5-44-13.7-70.7-8.08-24.68-29.24-50-44.7-68.56l-3.61-4.34c-23.88-28.93-24.34-38.19-26.55-82.67-.32-6.47-.69-13.8-1.17-22C329.87 41.43 304 16 256 16c-25.2 0-44.62 7.15-57.72 21.26C187.79 48.55 182 64 182 80.78c0 29.52 2 53 2.15 54.29 1.4 35.7 1 41.22-8.31 57.55-2.23 3.93-8.38 10.87-14.89 18.21-8.48 9.57-18.09 20.41-23.36 29.22-3.77 6.31-5.88 12.63-8.11 19.33-3.4 10.21-7.26 21.78-18.15 36.57-12.57 17.07-15.52 29.61-11 47.45-4.94 6.45-4.83 14.37-4.75 20.23a25.84 25.84 0 0 1-.3 6.09c-2.29 7.59-12.42 9.4-22 10.18-1.58.12-3.1.21-4.55.29-7.26.39-13.53.74-17.13 6.3-3.47 5.36-1.12 13.8 2.14 25.48.72 2.58 1.46 5.25 2.19 8.06 1.83 7-.16 10.48-2.68 14.84-2.44 4.21-5.21 9-5.21 17.55 0 14.67 20 18 43.05 21.94 7.36 1.24 15 2.53 22.63 4.24a225.58 225.58 0 0 1 34.08 10.68c9.72 3.73 17.4 6.68 26.43 6.68 16.18 0 28.25-9.77 39.92-19.21l2.15-1.75c5.53-4.49 21.5-4 34.34-3.64 3.46.1 6.73.2 9.65.2h6.22c13.48-.08 31.94-.18 42.23 2.5 3.75 1 6.2 3.72 9.29 7.19 5.87 6.56 13.17 14.75 33.39 14.75 19.39 0 29.55-8.71 41.32-18.8 7.16-6.13 14.56-12.48 25.07-17.86 3.92-2 7.62-3.87 11.08-5.61 22.64-11.38 35.11-17.65 35.11-27.82 0-9.91-12.24-16.5-20.34-20.86zM211.11 88.38a13.91 13.91 0 0 1 12.47 9c1.95 5.55 1.81 10.42.21 12.94 0 0-.22-1-.36-1.44a14.85 14.85 0 0 0-6.44-8.59 11.35 11.35 0 0 0-8.94-1.47c-4.26 1.13-8.41 5-8.91 18.79-5.16-10.47-2.31-18 .92-23 2.31-3.73 7.47-6.33 11.05-6.23zm-17.5 375C192 479.24 175.2 479 170.09 478.59c-9.81-.82-21.66-4.69-33.13-8.43-4.52-1.47-9.19-3-13.73-4.34-13.2-3.89-30.12-6.74-43.72-9-3.22-.55-6.27-1.06-9.05-1.55s-4.61-1.27-5.2-2.3c-1-1.65.38-5.25 1.93-9.41C69.27 438 72.11 430.34 72 421c0-3.91-1.47-8.3-2.84-12.56-1.62-5-3.28-10.17-1.93-12.62 1.23-2.23 6.75-2.49 11.6-2.49h2.26c3.55 0 6.62.06 8.75-.53 6.51-1.81 14.86-6.92 17.81-13.88.9-2.17 1.37-6.94 2-14 .37-4.12.74-8.37 1.22-10.58a3.55 3.55 0 0 1 2.11-2.55c1.65-.77 6.78-1.91 18.63 4.08 11.18 5.65 22.88 25.84 34.2 45.37 3.56 6.14 6.92 11.94 10.3 17.36 14.04 22.54 18.83 31.6 17.5 44.8zm128.84-31.56a68.74 68.74 0 0 1-4.55 10.9.58.58 0 0 1-1.08-.42 56.61 56.61 0 0 0 2.11-18.43c-.25-4.73-.4-7.59-2.66-8.51s-4.26.83-9.45 5.54c-1.1 1-2.36 2.14-3.78 3.4-10.8 9.47-26.88 20.68-55.61 23.37-16.84 1.59-27.59-4.63-30.92-8.14a2.16 2.16 0 0 0-3.07-.08 2.23 2.23 0 0 0-.51 2.29c2.12 6.84 1.2 12.26-.49 16.19-.95 2.2-1.85 2.05-2-.34-.25-4.64-1-9.88-3-14.19-3.11-6.94-7-14.34-8.89-17.88v-.05c3.24-1.49 8.86-4.83 11.37-10.88s4.48-18-9.82-31.74c-6.28-6.05-22.1-17.16-36.06-27-10.9-7.65-22.17-15.56-23.65-17.51-4.49-5.89-6.37-9.3-6.94-19.65.07-2.3.13-4.59.19-6.89l.27-2.49a.58.58 0 0 1 1.15 0 63.07 63.07 0 0 0 2 9.72c1.08 3.73 2.4 7.58 3.62 9.18 3.19 4.22 7.56 7.39 11.67 8.49a5.48 5.48 0 0 0 5-.72c2.93-2.33 2.65-7.6 2.19-16.34-.47-9-1.11-21.34 1.85-34.55 5.62-25 10.91-32.51 17.61-42 .86-1.22 1.75-2.47 2.65-3.79 1.44-2.08 3-4.1 4.67-6.23 7.47-9.61 15.93-20.49 13.92-40.95-.51-5.19-.76-8.83-.86-11.39a1 1 0 0 1 1.88-.59l.49.77 1.21 2c4.86 8 13.64 22.57 25.1 22.57a13.62 13.62 0 0 0 2.36-.21c23.39-3.93 51.9-30.25 52.17-30.51 3.12-3 2.84-6.14 1.64-7.91a5.18 5.18 0 0 0-6.45-1.72c-3.29 1.4-7.14 3.15-11.22 5-13.82 6.27-37 16.75-42.25 14.34a23.11 23.11 0 0 1-6.32-5.13 1 1 0 0 1 1.14-1.65c5.59 2.29 9.55 1.45 14.2-.08l1-.34c9.37-3.09 14.2-4.77 30.76-12.08a97.55 97.55 0 0 1 16.26-5.93c4-1 6.42-1.63 7.71-4.34a6.65 6.65 0 0 0-.5-7.13c-1.53-1.87-4.07-2.57-7-1.9-3.22.75-4.7 3-6.41 4.49-2.4 2.05-5 4.16-17.19 8.65-27 10-34.58 10.61-45.21 3.43-9.84-6.69-15.15-13.23-15.15-16 0-2.13 5.45-5.7 8.71-7.84 1.33-.87 2.59-1.69 3.62-2.46 4.34-3.22 13-11.39 13.38-11.73 5.4-5.41 17.91-2.18 25 2.58a2.23 2.23 0 0 0 1.72.41 2.14 2.14 0 0 0 1.68-2.58c-4.2-17.46-.13-27.34 4-32.55a22.58 22.58 0 0 1 17.48-8.48c12.81 0 21.76 10 21.76 24.42 0 11-2.82 16.79-5.48 20.3a1.73 1.73 0 0 1-2.58.18 1.78 1.78 0 0 1-.24-2.2A24.61 24.61 0 0 0 290 114a16.58 16.58 0 0 0-16.84-16.67c-3.94 0-13.48 1.5-16.77 15.44a29.81 29.81 0 0 0-.34 11.07l.08.71c.9 7.38 15.3 12.51 27.23 15.51 11.36 2.85 13 6.22 8.84 19.63s3.11 26.23 5.7 29.57a78.3 78.3 0 0 1 8.31 12.47 93.8 93.8 0 0 1 6.62 16.48c2.17 6.79 4.05 12.65 10.63 21.22 11.07 14.4 17.66 48.64 15 78-.21 2.41-.53 4.29-.77 5.67-.43 2.53-.72 4.2.66 5.38s3.16.7 7.26-.63l3.43-1.09a109.33 109.33 0 0 1 12.58-2.8 2.15 2.15 0 0 0 1.59-1.16c3.43-6.91 3.85-15.22 4-22.47q0-1.31.06-2.79c.19-7.77.45-18.93-2.95-32a1 1 0 0 1 1.93-.64 93 93 0 0 1 6.66 25.55c2.55 22.58-1.9 32.09-1.94 32.17a1.61 1.61 0 0 0 .95 2.25 17.12 17.12 0 0 1 6.95 4.67c1.46 1.66.93 2.4-1.14 1.62a36.26 36.26 0 0 0-12.77-2.29c-10.4 0-18.09 4.95-21.51 9.19-3.19 3.94-3.7 7.67-3.83 11.27l-.06.05c-7.48-.75-12.94 1.21-17.47 6.21l-.08.09c-6.26 7.75-4 24.63-1.29 38.48 1.28 6.45 5.59 25.52 1.73 37.68zm96.1 10.07c-15.71 6.71-25.43 14.51-34 21.39-5.65 4.53-11 8.81-17.28 12.14-10.12 5.34-24.91 6.53-33.27-7.7-2.37-4-.71-9.86 1.58-17.95 3.05-10.75 7.23-25.46 3.71-44.65-.94-5.12-1.77-9.51-2.49-13.31C334 377 332.9 371.43 334 367c.63-2.45 3.43-3 5.87-3a20.83 20.83 0 0 1 2.63.19 29.51 29.51 0 0 0 7 12.1c5.7 5.86 13.63 8.83 23.56 8.85 2.1.17 25.94 1.55 36.54-22.4 1.46.18 3.65.7 4.3 2.3 1.28 3.19-.27 8.91-1.52 13.5-.9 3.31-1.68 6.16-1.63 8.37.31 16 11 22.78 25.83 32.16 1.79 1.13 3.66 2.31 5.55 3.54S445 425 445 426c-.52 4.79-20 13.16-26.45 15.91z",fill:"currentColor"},null,-1)]))}const xf=Jr(M_,[["render",U_]]),F_={},B_={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 512 512"};function H_(e,t){return w(),C("svg",B_,t[0]||(t[0]=[x("path",{d:"M349.13 136.86c-40.32 0-57.36 19.24-85.44 19.24-28.79 0-50.75-19.1-85.69-19.1-34.2 0-70.67 20.88-93.83 56.45-32.52 50.16-27 144.63 25.67 225.11 18.84 28.81 44 61.12 77 61.47h.6c28.68 0 37.2-18.78 76.67-19h.6c38.88 0 46.68 18.89 75.24 18.89h.6c33-.35 59.51-36.15 78.35-64.85 13.56-20.64 18.6-31 29-54.35-76.19-28.92-88.43-136.93-13.08-178.34-23-28.8-55.32-45.48-85.79-45.48z",fill:"currentColor"},null,-1),x("path",{d:"M340.25 32c-24 1.63-52 16.91-68.4 36.86-14.88 18.08-27.12 44.9-22.32 70.91h1.92c25.56 0 51.72-15.39 67-35.11 14.72-18.77 25.88-45.37 21.8-72.66z",fill:"currentColor"},null,-1)]))}const Sf=Jr(F_,[["render",H_]]),Z_={class:"moonbase:product-downloads"},q_=["data-last","onClick"],W_={class:"moonbase:sr-only"},z_={class:"moonbase:sr-only"},K_=["onClick"],G_=he({__name:"ProductDownloads",props:{downloads:{}},setup(e){const t=e,n={[Qt.Universal]:()=>Of,[Qt.Windows]:()=>Nf,[Qt.Linux]:()=>xf,[Qt.Mac]:()=>Sf},{downloadProduct:r}=ti(),o=Y(()=>t.downloads.reduce((s,i)=>({...s,[i.platform]:(s[i.platform]||[]).concat({...i,icon:n[i.platform]})}),{}));return(s,i)=>(w(),C("span",Z_,[(w(!0),C(Ce,null,an(o.value,(a,l,u)=>(w(),C(Ce,{key:l},[a.length===1?(w(),C("button",{key:0,type:"button",role:"button","data-last":u===Object.keys(o.value).length-1||void 0,onClick:c=>_(r)(a[0])},[x("span",W_,J(l.toString()),1),(w(),ke(ha(a[0].icon()),{class:"h-5 w-5 text-white","aria-hidden":"true"}))],8,q_)):(w(),ke(_(mf),{key:1,as:"div","data-last":u===Object.keys(o.value).length-1||void 0,class:"moonbase:product-downloads-group"},{default:we(()=>[z(_(vf),null,{default:we(()=>[x("span",z_,J(l.toString()),1),(w(),ke(ha(a[0].icon()),{"aria-hidden":"true"})),i[0]||(i[0]=x("svg",{fill:"none",viewBox:"0 0 24 24","stroke-width":"1.5",stroke:"currentColor","aria-hidden":"true"},[x("path",{"stroke-linecap":"round","stroke-linejoin":"round",d:"m19.5 8.25-7.5 7.5-7.5-7.5"})],-1))]),_:2},1024),z(Ma,{name:"moonbase:scale"},{default:we(()=>[z(_(gf),{class:"moonbase:product-downloads-list"},{default:we(()=>[(w(!0),C(Ce,null,an(a,c=>(w(),C("button",{key:c.key,type:"button",role:"button",onClick:d=>_(r)(c)},[x("span",null,J(c.name),1)],8,K_))),128))]),_:2},1024)]),_:2},1024)]),_:2},1032,["data-last"]))],64))),128))]))}}),J_={class:"moonbase:product-activations"},Y_={key:0,scope:"col"},X_={key:0},Q_={colspan:"3"},e1={key:1},t1={key:0},n1=["onClick"],r1=he({__name:"ProductActivations",props:{productId:{}},emits:["revoked"],setup(e,{emit:t}){const n=e,r=t,{getProductActivations:o,revokeActivation:s}=ti(),i=R(null);Re(async()=>{let u=await o(n.productId);for(i.value=u.items.map(c=>({...c,revoking:!1}));u.hasMore&&u.next;)u=await o(n.productId,u.next),i.value.push(...u.items.map(c=>({...c,revoking:!1})))});const a=Y(()=>i.value&&i.value.some(u=>u.activationMethod===Ai.Online));async function l(u){u.revoking=!0,await s(u),r("revoked",u),i.value&&i.value.splice(i.value.indexOf(u),1)}return(u,c)=>(w(),C("table",J_,[x("thead",null,[x("tr",null,[c[1]||(c[1]=x("th",{scope:"col"}," Device ",-1)),c[2]||(c[2]=x("th",{scope:"col"}," Activation Method ",-1)),c[3]||(c[3]=x("th",{scope:"col"}," Last Online ",-1)),a.value?(w(),C("th",Y_,c[0]||(c[0]=[x("span",{class:"sr-only"},"Actions",-1)]))):fe("",!0)])]),x("tbody",null,[i.value?i.value.length===0?(w(),C("tr",e1,c[6]||(c[6]=[x("td",{colspan:"3"}," No activations found ",-1)]))):fe("",!0):(w(),C("tr",X_,[x("td",Q_,[z(Mt),c[4]||(c[4]=Te(" Loading activations.. "))]),c[5]||(c[5]=x("td",null,null,-1))])),(w(!0),C(Ce,null,an(i.value,d=>{var f;return w(),C("tr",{key:d.id},[x("td",null,J(d.name),1),x("td",null,J(d.activationMethod),1),x("td",null,J((f=d.lastValidatedAt)==null?void 0:f.toLocaleDateString()),1),a.value?(w(),C("td",t1,[x("button",{class:"text-red-400 flex whitespace-nowrap items-center",onClick:m=>l(d)},[d.revoking?(w(),ke(Mt,{key:0})):fe("",!0),c[7]||(c[7]=Te(" Revoke "))],8,n1)])):fe("",!0)])}),128))])]))}}),o1={class:"moonbase:products"},s1={key:0,scope:"col"},i1={key:1,scope:"col"},a1={key:0},l1={key:1},u1=["src"],c1={key:1,class:"moonbase:image-placeholder"},d1={key:1},f1={key:2},p1={key:0},h1=he({__name:"Products",setup(e){const{getProducts:t}=ti(),n=R(null);Re(async()=>{let s=await t();for(n.value=s.items;s.hasMore&&s.next;)s=await t(s.next),n.value.push(...s.items)});const r=Y(()=>n.value&&n.value.some(s=>s.downloads)),o=Y(()=>n.value&&n.value.some(s=>s.maxActivations&&s.maxActivations>0));return(s,i)=>(w(),C("table",o1,[x("thead",null,[x("tr",null,[i[0]||(i[0]=x("th",{scope:"col"}," Product ",-1)),o.value?(w(),C("th",s1," Activations ")):fe("",!0),r.value?(w(),C("th",i1," Downloads ")):fe("",!0)])]),x("tbody",null,[n.value?n.value.length===0?(w(),C("tr",l1,i[3]||(i[3]=[x("td",{colspan:"3"}," No products found ",-1)]))):fe("",!0):(w(),C("tr",a1,[x("td",null,[z(Mt),i[1]||(i[1]=Te(" Loading products.. "))]),i[2]||(i[2]=x("td",null,null,-1))])),(w(!0),C(Ce,null,an(n.value||[],a=>(w(),C("tr",{key:a.id},[x("td",null,[x("div",null,[a.iconUrl?(w(),C("img",{key:0,src:a.iconUrl,alt:""},null,8,u1)):(w(),C("div",c1)),x("span",null,J(a.name),1)])]),a.maxActivations&&a.maxActivations>0?(w(),ke(_(mf),{key:0,as:"td"},{default:we(()=>[z(_(vf),{class:"moonbase:button","data-variant":"secondary"},{default:we(()=>[i[4]||(i[4]=x("span",{class:"moonbase:sr-only"},"View activations",-1)),Te(" "+J(a.currentActivations)+" / "+J(a.maxActivations),1)]),_:2},1024),z(Ma,{name:"moonbase:scale"},{default:we(()=>[z(_(gf),null,{default:we(()=>[z(r1,{"product-id":a.id},null,8,["product-id"])]),_:2},1024)]),_:2},1024)]),_:2},1024)):o.value?(w(),C("td",d1)):fe("",!0),r.value?(w(),C("td",f1,[a.currentVersion!=null?(w(),C("div",p1,[a.downloads?(w(),ke(G_,{key:0,downloads:a.downloads},null,8,["downloads"])):fe("",!0)])):fe("",!0)])):fe("",!0)]))),128))])]))}}),m1={class:"moonbase:redeem"},v1=["data-visible"],g1={key:1,class:"moonbase:redeem-voucher"},y1={key:0},b1={key:1},_1={class:"moonbase:redeem-voucher-products"},w1=["src"],E1={key:1,class:"moonbase:image-placeholder"},O1={key:0},N1={class:"moonbase:redeem-voucher-bundle"},x1=["src"],S1={key:1,class:"moonbase:image-placeholder"},k1={key:0},C1={class:"moonbase:redeem-voucher-bundle-products"},T1={class:"shrink-0"},P1=["src"],$1={key:1,class:"moonbase:image-placeholder"},D1=he({__name:"Redeem",setup(e){const{redeem:t}=Rg(),n=R(!1),r=R(null),o=R(null),s=R("");async function i(){n.value=!0,o.value=null;try{r.value=await t(s.value)}catch(a){throw o.value=a,a}n.value=!1}return(a,l)=>(w(),C("div",m1,[z(Ma,{mode:"out-in",name:"moonbase:slide-left"},{default:we(()=>[r.value?(w(),C("div",g1,[x("h3",null,[l[1]||(l[1]=Te(" You got: ")),x("strong",null,J(r.value.name),1)]),r.value.description?(w(),C("h4",y1,J(r.value.description),1)):fe("",!0),x("h4",null,[l[2]||(l[2]=Te(" Code: ")),x("strong",null,J(r.value.code),1)]),r.value.redeemsProducts.length>0?(w(),C("div",b1,[l[3]||(l[3]=x("span",null," Contains: ",-1)),x("div",_1,[(w(!0),C(Ce,null,an(r.value.redeemsProducts,({value:u,quantity:c})=>(w(),C("div",{key:u.id,class:"moonbase:redeem-voucher-product"},[x("div",null,[u.iconUrl?(w(),C("img",{key:0,src:u.iconUrl,alt:""},null,8,w1)):(w(),C("div",E1))]),x("div",null,[x("p",null,[Te(J(u.name)+" ",1),c!==1?(w(),C("span",O1,"x "+J(c),1)):fe("",!0)]),x("p",null,J(u.tagline),1)])]))),128)),(w(!0),C(Ce,null,an(r.value.redeemsBundles,({value:u,quantity:c})=>(w(),C("div",{key:u.id},[x("div",N1,[x("div",null,[u.iconUrl?(w(),C("img",{key:0,src:u.iconUrl,alt:""},null,8,x1)):(w(),C("div",S1))]),x("div",null,[x("p",null,[Te(J(u.name)+" ",1),c!==1?(w(),C("span",k1,"x "+J(c),1)):fe("",!0)]),x("p",null,J(u.tagline),1)])]),x("div",C1,[(w(!0),C(Ce,null,an(u.products,d=>(w(),C("div",{key:d.id,class:"moonbase:redeem-voucher-product"},[x("div",T1,[d.iconUrl?(w(),C("img",{key:0,src:d.iconUrl,alt:""},null,8,P1)):(w(),C("div",$1))]),x("div",null,[x("p",null,J(d.name),1),x("p",null,J(d.tagline),1)])]))),128))])]))),128))])])):fe("",!0)])):(w(),ke(Jn,{key:0,handler:i},{default:we(()=>{var u;return[z(Et,{modelValue:s.value,"onUpdate:modelValue":l[0]||(l[0]=c=>s.value=c),label:"Voucher code",name:"code",required:""},null,8,["modelValue"]),z(Yn,{label:"Redeem",success:"Redeem",error:"Error"}),x("span",{class:"moonbase:error","data-visible":!!o.value||void 0},J((u=o.value)==null?void 0:u.message),9,v1)]}),_:1}))]),_:1})]))}}),I1={class:"moonbase:customer"},A1=he({__name:"Customer",props:{open:{type:Boolean}},setup(e){const t=je();function n(s){switch(s){case ue.ViewAccount:return 0;case ue.ViewProducts:return 1;case ue.RedeemVoucher:return 2}return 0}const r=R(n(t.intent));ze(()=>t.intent,s=>{r.value=n(s)});function o(s){r.value=s}return(s,i)=>(w(),ke(bi,{open:s.open,onClose:i[0]||(i[0]=a=>_(t).reset())},{default:we(()=>[x("div",I1,[z(_(kb),{"selected-index":r.value,onChange:o},{default:we(()=>[z(_(Cb),null,{default:we(()=>[z(_(sl),null,{default:we(()=>i[1]||(i[1]=[Te("Account")])),_:1}),z(_(sl),null,{default:we(()=>i[2]||(i[2]=[Te(" Products ")])),_:1}),z(_(sl),null,{default:we(()=>i[3]||(i[3]=[Te("Redeem")])),_:1})]),_:1}),z(_(Tb),null,{default:we(()=>[z(_(il),null,{default:we(()=>[z($_)]),_:1}),z(_(il),null,{default:we(()=>[z(h1)]),_:1}),z(_(il),null,{default:we(()=>[z(D1)]),_:1})]),_:1})]),_:1},8,["selected-index"])])]),_:1},8,["open"]))}}),V1={class:"moonbase:auto-activate"},R1={key:0,class:"moonbase:loader"},j1={key:1,class:"moonbase:loader"},M1={key:2,class:"moonbase:loader"},L1={key:3},U1={key:0,class:"moonbase:auto-activate-product"},F1=["src"],B1={key:1,class:"moonbase:image-placeholder"},H1={key:1,class:"moonbase:loader"},Z1={key:2,class:"moonbase:loader"},q1={key:3,class:"moonbase:loader"},W1={key:4,class:"moonbase:auto-activate-content"},z1={key:0},K1={key:1},G1={class:"moonbase:auto-activate-cta"},J1=["href"],Y1={key:2,class:"moonbase:auto-activate-trial"},X1={class:"moonbase:auto-activate-cta"},Q1=he({__name:"AutoActivate",setup(e){const t=je(),{user:n,loaded:r}=wt(),o=t.getParameter("token"),{activationRequest:s,loading:i,fulfilling:a,completing:l,error:u,fulfillLicense:c,fulfillTrial:d,cancel:f}=Vg(o);ze(s,N=>{var O;!a.value&&!l.value&&(N==null?void 0:N.status)===en.Requested&&((O=N==null?void 0:N.licenseEligibility)!=null&&O.eligible)&&c()});function m(){f(),t.show(Ne.Customer,ue.ViewProducts)}function E(){t.enqueue(Ne.Activation,ue.ActivateProduct,t.parameters??void 0),t.show(Ne.Authentication,ue.SignIn)}return(N,O)=>{var I,j,$,W;return w(),C("div",V1,[_(i)||!_(r)?(w(),C("div",R1,[z(Mt)])):_(u)?(w(),C("div",j1,J(_(u)),1)):_(s)?(w(),C("div",L1,[_(s).product?(w(),C("div",U1,[_(s).product.iconUrl?(w(),C("img",{key:0,src:_(s).product.iconUrl,alt:""},null,8,F1)):(w(),C("div",B1)),x("div",null,[x("h2",null,J(_(s).product.name),1),x("h3",null,J(_(s).product.tagline),1)])])):fe("",!0),((I=_(s))==null?void 0:I.status)===_(en).Cancelled?(w(),C("div",H1,O[2]||(O[2]=[x("h3",null," Uh oh ",-1),x("p",null," This activation request was cancelled, open your app to try again. ",-1)]))):_(a)||_(l)?(w(),C("div",Z1,[z(Mt),x("p",null,"Activating "+J(_(s).product.name)+"...",1)])):((j=_(s))==null?void 0:j.status)===_(en).Completed?(w(),C("div",q1,O[3]||(O[3]=[x("h3",null," Done! ",-1),x("p",null," Your product is activated. ",-1)]))):(w(),C("div",W1,[_(n)?($=_(n).ownedProducts)!=null&&$.includes(_(s).product.id)?(w(),C("div",K1,[O[5]||(O[5]=x("p",null," You don't have enough free seats on your licenses to activate this device. Either free up a seat or purchase additional licenses. ",-1)),x("span",G1,[x("button",{role:"button",class:"moonbase:button",onClick:O[0]||(O[0]=y=>m())}," Licenses "),_(s).product&&_(s).product.website?(w(),C("a",{key:0,href:_(s).product.website,class:"moonbase:button"}," Purchase ",8,J1)):fe("",!0)])])):fe("",!0):(w(),C("div",z1,[O[4]||(O[4]=Te(" Please sign in to use a license ")),x("span",{class:"moonbase:auto-activate-cta"},[x("button",{role:"button",class:"moonbase:button",onClick:E}," Sign in ")])])),(W=_(s).trialEligibility)!=null&&W.eligible?(w(),C("div",Y1,[Te(" You are eligible for a "+J(_(s).trialEligibility.numberOfDaysPerProduct)+" day trial ",1),_(s).trialEligibility.existing?(w(),C(Ce,{key:0},[Te(" of which you have "+J(_(s).trialEligibility.numberOfDaysRemaining)+" days remaining ",1)],64)):fe("",!0),O[6]||(O[6]=Te(". ")),x("span",X1,[x("button",{role:"button",class:"moonbase:button",onClick:O[1]||(O[1]=y=>_(d)())}," Start trial ")])])):fe("",!0)]))])):(w(),C("div",M1," Could not find activation request "))])}}}),ew={class:"moonbase:activation"},tw=he({__name:"Activation",props:{open:{type:Boolean}},setup(e){const t=je();return(n,r)=>(w(),ke(bi,{open:n.open,onClose:r[0]||(r[0]=o=>_(t).reset())},{default:we(()=>[x("div",ew,[z(_(mi),{as:"h3"},{default:we(()=>r[1]||(r[1]=[Te(" Activate product ")])),_:1}),n.open&&_(t).intent===_(ue).ActivateProduct?(w(),ke(Q1,{key:0})):fe("",!0)])]),_:1},8,["open"]))}});function nw(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}`}const rw={class:"moonbase:download-product"},ow={key:0,class:"moonbase:loader"},sw={key:1,class:"moonbase:loader"},iw={key:2,class:"moonbase:loader"},aw={key:3},lw={class:"moonbase:download-product-product"},uw=["src"],cw={key:1,class:"moonbase:image-placeholder"},dw={key:0},fw=["data-open"],pw={key:0,class:"moonbase:download-product-content"},hw={key:1,class:"moonbase:download-product-content"},mw={key:2,class:"moonbase:download-product-content"},vw=["data-open"],gw={key:1,role:"list"},yw={class:"moonbase:download-product-download-name"},bw=["onClick"],_w={class:"moonbase:download-product-download-description"},ww={key:1,fill:"none",viewBox:"0 0 24 24","stroke-width":"1.5",stroke:"currentColor"},Ew={key:2,class:"moonbase:loader"},Ow=he({__name:"DownloadProduct",setup(e){const t=je(),{user:n,loaded:r}=wt(),{getProduct:o,downloadProduct:s}=ti(),i={[Qt.Universal]:()=>Of,[Qt.Windows]:()=>Nf,[Qt.Linux]:()=>xf,[Qt.Mac]:()=>Sf},a=R(null),l=R([]),u=R(null),c=R(!0),d=R(!1),f=Y(()=>t.getParameter("key")),m=Y(()=>{var O,I;return(I=(O=a.value)==null?void 0:O.downloads)==null?void 0:I.filter(j=>!f.value||j.key===f.value)});Re(async()=>{const O=t.getParameter("product_id"),I=t.getParameter("version");if(!O){u.value="Link is broken";return}try{a.value=await o(O,I||void 0)}catch(j){u.value=j.message}c.value=!1});function E(){t.enqueue(Ne.Download,ue.DownloadProduct,t.parameters??void 0),t.show(Ne.Authentication,ue.SignIn)}async function N(O){l.value.push(O.key),await s(O),l.value=l.value.filter(I=>I!==O.key)}return(O,I)=>{var j,$,W,y,M;return w(),C("div",rw,[c.value||!_(r)?(w(),C("div",ow,[z(Mt)])):u.value?(w(),C("div",sw,J(u.value),1)):a.value?(w(),C("div",aw,[x("div",lw,[a.value.iconUrl?(w(),C("img",{key:0,src:a.value.iconUrl,alt:""},null,8,uw)):(w(),C("div",cw)),x("div",null,[x("h2",null,[Te(J(a.value.name)+" ",1),x("span",null,"v"+J(a.value.version||a.value.currentVersion),1),a.value.prerelease?(w(),C("span",dw," (pre-release)")):fe("",!0)]),x("h3",null,J(a.value.tagline),1)]),a.value.releaseDescription&&(!a.value.downloadsNeedsUser||_(n))&&(!a.value.downloadsNeedsOwnership||($=(j=_(n))==null?void 0:j.ownedProducts)!=null&&$.includes(a.value.id))?(w(),C("button",{key:2,"data-open":d.value||void 0,onClick:I[0]||(I[0]=P=>d.value=!d.value)},I[1]||(I[1]=[x("svg",{xmlns:"http://www.w3.org/2000/svg",fill:"none",viewBox:"0 0 24 24","stroke-width":"1.5",stroke:"currentColor"},[x("path",{"stroke-linecap":"round","stroke-linejoin":"round",d:"m5.25 4.5 7.5 7.5-7.5 7.5m6-15 7.5 7.5-7.5 7.5"})],-1),x("span",null," Details ",-1)]),8,fw)):fe("",!0)]),a.value.downloadsNeedsUser&&!_(n)?(w(),C("div",pw,[I[2]||(I[2]=Te(" Please sign in to download product ")),x("span",{class:"moonbase:download-product-cta"},[x("button",{role:"button",class:"moonbase:button",onClick:E}," Sign in ")])])):a.value.downloadsNeedsOwnership&&!((y=(W=_(n))==null?void 0:W.ownedProducts)!=null&&y.includes(a.value.id))?(w(),C("div",hw," This product requires ownership to download ")):(w(),C("div",mw,[a.value.releaseDescription?(w(),C("div",{key:0,class:"moonbase:download-product-release-description","data-open":d.value||void 0},[x("div",null,[x("h3",null," v"+J(a.value.version||a.value.currentVersion)+" Release Notes ",1),x("p",null,J(a.value.releaseDescription),1)])],8,vw)):fe("",!0),(M=a.value)!=null&&M.downloads&&a.value.downloads.length>0?(w(),C("ul",gw,[(w(!0),C(Ce,null,an(m.value,P=>(w(),C("li",{key:P.key},[x("div",null,[x("p",yw,[x("button",{onClick:re=>N(P)},[I[3]||(I[3]=x("span",{class:"moonbase:download-product-clicker"},null,-1)),Te(" "+J(P.name),1)],8,bw)]),x("p",_w,[(w(),ke(ha(i[P.platform]()),{"aria-hidden":"true"})),Te(" "+J(P.platform)+" ",1),I[4]||(I[4]=x("span",null," |",-1)),Te(" "+J(_(nw)(P.size)),1)])]),x("div",null,[l.value.includes(P.key)?(w(),ke(Mt,{key:0})):(w(),C("svg",ww,I[5]||(I[5]=[x("path",{"stroke-linecap":"round","stroke-linejoin":"round",d:"m8.25 4.5 7.5 7.5-7.5 7.5"},null,-1)])))])]))),128))])):(w(),C("div",Ew," No downloadable files found "))]))])):(w(),C("div",iw," Could not find product "))])}}}),Nw={class:"moonbase:download"},xw=he({__name:"Download",props:{open:{type:Boolean}},setup(e){const t=je();return(n,r)=>(w(),ke(bi,{open:n.open,onClose:r[0]||(r[0]=o=>_(t).reset())},{default:we(()=>[x("div",Nw,[z(_(mi),{as:"h3"},{default:we(()=>r[1]||(r[1]=[Te(" Download product ")])),_:1}),n.open&&_(t).intent===_(ue).DownloadProduct?(w(),ke(Ow,{key:0})):fe("",!0)])]),_:1},8,["open"]))}});function Sw(){const e=R(null),t=[/^user\.name$/,/^user\.email$/,/^cart\.item_count$/,/^product\.[a-z\-]+\.name$/,/^product\.[a-z\-]+\.price$/,/^product\.[a-z\-]+\.original_price$/,/^bundle\.[a-z\-]+\.name$/,/^bundle\.[a-z\-]+\.price$/,/^bundle\.[a-z\-]+\.original_price$/],n=R({}),r=Y(()=>n.value.user||[]),o=Y(()=>n.value.cart||[]),s=Y(()=>n.value.product||[]),i=Y(()=>n.value.bundle||[]),a=[/^user$/,/^cart.has_items$/,/^product\.[a-z\-]+(\.has_discount)?$/,/^bundle\.[a-z\-]+(\.has_discount)?$/],l=R({}),u=Y(()=>l.value.user||[]),c=Y(()=>l.value.cart||[]),d=Y(()=>l.value.product||[]),f=Y(()=>l.value.bundle||[]),m=wt(),{currency:E,items:N}=ni(),O=Ag(),I=Ig();ze([r,u,m.user],([j,$,W])=>{if(j){for(const y of j)if(y.textContent&&!y.dataset.moonbaseOriginal&&(y.dataset.moonbaseOriginal=y.textContent),W)switch(y.dataset.moonbaseRender){case"user.name":y.textContent=W.name;break;case"user.email":y.textContent=W.email;break}else y.dataset.moonbaseOriginal?y.textContent=y.dataset.moonbaseOriginal:y.textContent="";for(const y of $)y.dataset.moonbaseOriginalHidden||(y.dataset.moonbaseOriginalHidden=y.hidden?"true":"false"),W?y.hidden=y.dataset.moonbaseIf==="!user":y.hidden=y.dataset.moonbaseIf==="user"}},{immediate:!0}),ze([o,c,N],([j,$,W])=>{if(j){for(const y of j)switch(y.textContent&&!y.dataset.moonbaseOriginal&&(y.dataset.moonbaseOriginal=y.textContent),y.dataset.moonbaseRender){case"cart.item_count":y.textContent=W.reduce((M,P)=>M+P.quantity,0).toString();break}for(const y of $){if(!y.dataset.moonbaseIf)return;const M=y.dataset.moonbaseIf.split("."),P=M[1];let re=!1;switch(P){case"has_items":re=W.length>0;break}M[0].startsWith("!")&&(re=!re),y.dataset.moonbaseOriginalHidden||(y.dataset.moonbaseOriginalHidden=y.hidden?"true":"false"),re?y.hidden=!1:y.hidden=!0}}},{immediate:!0}),ze([s,d,O,E],([j,$,W,y])=>{var M,P,re;if(j){for(const S of j){const A=(M=S.dataset.moonbaseRender)==null?void 0:M.split(".")[1],D=(P=S.dataset.moonbaseRender)==null?void 0:P.split(".")[2],k=W.find(L=>L.id===A);if(S.textContent&&!S.dataset.moonbaseOriginal&&(S.dataset.moonbaseOriginal=S.textContent),k&&k.defaultVariation)switch(D){case"name":S.textContent=k.name;break;case"price":S.textContent=Dt(k.defaultVariation.price[y],y);break;case"original_price":S.textContent=Dt(k.defaultVariation.originalPrice[y],y);break}else S.dataset.moonbaseOriginal?S.textContent=S.dataset.moonbaseOriginal:S.textContent=""}for(const S of $){if(!S.dataset.moonbaseIf)return;const A=S.dataset.moonbaseIf.split("."),D=A.length===2?"product":A[2],k=A[1],L=W.find(h=>h.id===k);let ne=!1;switch(D){case"product":ne=!!L;break;case"has_discount":ne=!!((re=L==null?void 0:L.defaultVariation)!=null&&re.hasDiscount);break}A[0].startsWith("!")&&(ne=!ne),S.dataset.moonbaseOriginalHidden||(S.dataset.moonbaseOriginalHidden=S.hidden?"true":"false"),ne?S.hidden=!1:S.hidden=!0}}},{immediate:!0}),ze([i,f,I,E],([j,$,W,y])=>{var M,P,re;if(j){for(const S of j){const A=(M=S.dataset.moonbaseRender)==null?void 0:M.split(".")[1],D=(P=S.dataset.moonbaseRender)==null?void 0:P.split(".")[2],k=W.find(L=>L.id===A);if(S.textContent&&!S.dataset.moonbaseOriginal&&(S.dataset.moonbaseOriginal=S.textContent),k&&k.defaultVariation)switch(D){case"name":S.textContent=k.name;break;case"price":S.textContent=Dt(k.defaultVariation.price[y],y);break;case"original_price":S.textContent=Dt(k.defaultVariation.originalPrice[y],y);break}else S.dataset.moonbaseOriginal?S.textContent=S.dataset.moonbaseOriginal:S.textContent=""}for(const S of $){if(!S.dataset.moonbaseIf)return;const A=S.dataset.moonbaseIf.split("."),D=A.length===2?"bundle":A[2],k=A[1],L=W.find(h=>h.id===k);let ne=!1;switch(D){case"bundle":ne=!!L;break;case"has_discount":ne=!!((re=L==null?void 0:L.defaultVariation)!=null&&re.hasDiscount);break}A[0].startsWith("!")&&(ne=!ne),S.dataset.moonbaseOriginalHidden||(S.dataset.moonbaseOriginalHidden=S.hidden?"true":"false"),ne?S.hidden=!1:S.hidden=!0}}},{immediate:!0}),Re(()=>{var M;e.value=new MutationObserver((P,re)=>{var S,A;for(const D of P)if(D.type==="childList"){for(const k of D.addedNodes){const L=k;if(L.dataset&&L.dataset.moonbaseRender){const ne=L.dataset.moonbaseRender;if(!ne||!t.some(h=>h.test(ne)))console.warn(`Element has an unknown Moonbase target (${ne})`,L);else if(ne){const h=ne.split(".")[0];n.value[h]=n.value[h]||[],n.value[h].push(L)}}if(L.dataset&&L.dataset.moonbaseIf){const ne=(S=L.dataset.moonbaseIf)==null?void 0:S.replace(/^!/,"");if(!ne||!a.some(h=>h.test(ne)))console.warn(`Element has an unknown Moonbase target (${ne})`,L);else if(ne){const h=ne.split(".")[0];l.value[h]=l.value[h]||[],l.value[h].push(L)}}}for(const k of D.removedNodes){const L=k;if(L.dataset&&L.dataset.moonbaseRender){const ne=L.dataset.moonbaseRender;if(!ne||!t.some(h=>h.test(ne)))console.warn(`Element has an unknown Moonbase target (${ne})`,L);else if(ne){const h=ne.split(".")[0];n.value[h]&&(n.value[h]=n.value[h].filter(V=>V!==L))}}if(L.dataset&&L.dataset.moonbaseIf){const ne=(A=L.dataset.moonbaseIf)==null?void 0:A.replace(/^!/,"");if(!ne||!a.some(h=>h.test(ne)))console.warn(`Element has an unknown Moonbase target (${ne})`,L);else if(ne){const h=ne.split(".")[0];l.value[h]&&(l.value[h]=l.value[h].filter(V=>V!==L))}}}}else if(D.type==="attributes"&&D.attributeName){const k=D.target.getAttribute(D.attributeName);fl(`The ${D.attributeName} attribute was modified from ${D.oldValue} to ${k}.`);const L=D.target;if(D.attributeName==="data-moonbase-render"){const ne=D.oldValue;if(ne){const h=ne.split(".")[0];n.value[h]&&(n.value[h]=n.value[h].filter(V=>V!==L))}if(!k||!t.some(h=>h.test(k)))k&&console.warn(`Element has an unknown Moonbase target (${k})`,L),L.dataset.moonbaseOriginal&&(L.textContent=L.dataset.moonbaseOriginal);else if(k){const h=k==null?void 0:k.split(".")[0];n.value[h]=n.value[h]||[],n.value[h].includes(L)||n.value[h].push(L)}}if(D.attributeName==="data-moonbase-if"){const ne=D.oldValue;if(ne){const h=ne.split(".")[0];l.value[h]&&(l.value[h]=l.value[h].filter(V=>V!==L))}if(!k||!a.some(h=>h.test(k)))k&&console.warn(`Element has an unknown Moonbase target (${k})`,L),L.dataset.moonbaseOriginalHidden==="true"&&(L.hidden=!0);else if(k){const h=k==null?void 0:k.split(".")[0];l.value[h]=l.value[h]||[],l.value[h].includes(L)||l.value[h].push(L)}}}else fl(`A ${D.type} mutation took place.`)}),e.value.observe(document.body,{subtree:!0,childList:!0,attributes:!0,attributeOldValue:!0,attributeFilter:["data-moonbase-if","data-moonbase-render"]});const j={},$=document.querySelectorAll("[data-moonbase-render]");for(const P of $){const re=P.dataset.moonbaseRender;if(!re||!t.some(S=>S.test(re)))console.warn(`Element has an unknown Moonbase target (${re})`,P);else if(re){const S=re.split(".")[0];j[S]=j[S]||[],j[S].push(P)}}n.value=j;const W={},y=document.querySelectorAll("[data-moonbase-if]");for(const P of y){const re=(M=P.dataset.moonbaseIf)==null?void 0:M.replace(/^!/,"");if(!re||!a.some(S=>S.test(re)))console.warn(`Element has an unknown Moonbase target (${re})`,P);else if(re){const S=re.split(".")[0];W[S]=W[S]||[],W[S].push(P)}}l.value=W}),dt(()=>e.value&&e.value.disconnect())}const kw=he({__name:"App",setup(e){const t=Se(Nr),n=je();return ze(()=>[n.active,n.intent],([r,o])=>{}),Sw(),(r,o)=>{var s;return w(),C(Ce,null,[(s=_(t))!=null&&s.toolbar.enabled?(w(),ke(gy,{key:0})):fe("",!0),z(S_,{open:_(n).active===_(Ne).Cart},null,8,["open"]),z(Fb,{open:_(n).active===_(Ne).Authentication},null,8,["open"]),z(tw,{open:_(n).active===_(Ne).Activation},null,8,["open"]),z(xw,{open:_(n).active===_(Ne).Download},null,8,["open"]),z(A1,{open:_(n).active===_(Ne).Customer},null,8,["open"])],64)}}});function _i(e){return e&&typeof e=="object"&&!Array.isArray(e)&&!(e instanceof HTMLElement)}function pl(e,...t){if(t.length===0)return e;const n=t.shift();if(!n)return e;if(_i(e)&&_i(n)){for(const r in e)if(Object.prototype.hasOwnProperty.call(n,r)){const o=n[r];_i(o)&&_i(e[r])?e[r]=pl(e[r],o):o!==void 0&&(e[r]=o)}}return pl(e,...t)}class Cw{constructor(){Tr(this,"initialized",!1);Tr(this,"pinia");Tr(this,"storefront");Tr(this,"options")}async setup(t,n){if(typeof window>"u")throw console.error("Moonbase setup must be done client-side"),new Error("Moonbase setup must be done client-side");if(document.getElementById("moonbase")){console.warn("Moonbase has already been initialized!");return}this.options=pl(py,n??{}),fl("Merged options:",this.options);const r=document.createElement("div");if(r.id="moonbase",r.classList.add("moonbase"),(this.options.target??document.body).append(r),this.storefront=jg(t),this.pinia=ly(),gg(kw).use(this.storefront).use(this.pinia).provide(Nr,this.options).mount("#moonbase"),this.initialized=!0,window&&window.location){const l=new URLSearchParams(window.location.search),u=l.get("mb_intent");if(u&&Object.values(ue).includes(u)){const c=Object.fromEntries([...l.entries()].filter(([f])=>f.startsWith("mb_")).map(([f,m])=>[f.substring(3),m]));if(u===ue.Checkout&&c.complete)return;this[u](c);for(const f of Object.keys(c))l.delete(`mb_${f}`);const d=l.toString();window.history.replaceState(null,"",window.location.href.split("?")[0]+(d?`?${d}`:""))}}const i=je(this.pinia),a=wt(this.storefront);this.storefront.onCheckoutClosed(l=>{l===ue.ViewProducts&&(a.user?i.show(Ne.Customer,ue.ViewProducts):i.show(Ne.Cart,ue.ViewCart))})}sign_in(t){if(!this.initialized)throw new Error("Moonbase has not been set up yet");je(this.pinia).show(Ne.Authentication,ue.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.auth.signUp.enabled))throw new Error("Sign ups are not enabled");je(this.pinia).show(Ne.Authentication,ue.SignUp,t)}forgot_password(t){if(!this.initialized)throw new Error("Moonbase has not been set up yet");je(this.pinia).show(Ne.Authentication,ue.ForgotPassword,t)}reset_password(t){if(!this.initialized)throw new Error("Moonbase has not been set up yet");je(this.pinia).show(Ne.Authentication,ue.ResetPassword,t)}confirm_account(t){if(!this.initialized)throw new Error("Moonbase has not been set up yet");je(this.pinia).show(Ne.Authentication,ue.ConfirmAccount,t)}confirm_email(){}confirm_email_change(t){if(!this.initialized)throw new Error("Moonbase has not been set up yet");const n=je(this.pinia);wt(this.storefront).user.value?n.show(Ne.Authentication,ue.ConfirmEmailChange,t):(n.show(Ne.Authentication,ue.SignIn),n.enqueue(Ne.Authentication,ue.ConfirmEmailChange,t))}view_account(){if(!this.initialized)throw new Error("Moonbase has not been set up yet");const t=je(this.pinia);wt(this.storefront).user.value?t.show(Ne.Customer,ue.ViewAccount):(t.show(Ne.Authentication,ue.SignIn),t.enqueue(Ne.Customer,ue.ViewAccount))}view_products(){if(!this.initialized)throw new Error("Moonbase has not been set up yet");je(this.pinia).show(Ne.Cart,ue.ViewCart)}redeem_voucher(t){if(!this.initialized)throw new Error("Moonbase has not been set up yet");je(this.pinia).show(Ne.Cart,ue.ViewCart,t)}download_product(t){if(!this.initialized)throw new Error("Moonbase has not been set up yet");je(this.pinia).show(Ne.Download,ue.DownloadProduct,t)}activate_product(t){if(!this.initialized)throw new Error("Moonbase has not been set up yet");if(!(t!=null&&t.token))throw new Error("You need to provide a token when activating a product");je(this.pinia).show(Ne.Activation,ue.ActivateProduct,t)}view_cart(){if(!this.initialized)throw new Error("Moonbase has not been set up yet");je(this.pinia).show(Ne.Cart,ue.ViewCart)}async add_to_cart(t){var o,s,i,a;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=ni(this.storefront);if(t!=null&&t.product_id){const l=vd(t.product_id,this.storefront);if(l.value)n.addToCart(l.value,(o=l.value.variations)==null?void 0:o.find(u=>u.id===t.variation_id));else{await this.storefront.loadedStorefrontPromise;const u=vd(t.product_id,this.storefront);if(u.value)n.addToCart(u.value,(s=u.value.variations)==null?void 0:s.find(c=>c.id===t.variation_id));else throw new Error(`Product '${t.product_id}' not found`)}}if(t!=null&&t.bundle_id){const l=md(t.bundle_id,this.storefront);if(l.value)n.addToCart(l.value,(i=l.value.variations)==null?void 0:i.find(u=>u.id===t.variation_id));else{await this.storefront.loadedStorefrontPromise;const u=md(t.bundle_id,this.storefront);if(u.value)n.addToCart(u.value,(a=u.value.variations)==null?void 0:a.find(c=>c.id===t.variation_id));else throw new Error(`Bundle '${t.bundle_id}' not found`)}}je(this.pinia).show(Ne.Cart,ue.AddToCart)}checkout(t){var r;if(!this.initialized)throw new Error("Moonbase has not been set up yet");if(t!=null&&t.complete)return;ni(this.storefront).checkout({redirect:((r=this.options)==null?void 0:r.checkout.redirect)||!1,returnUrl:`${window.location.pathname}?mb_intent=view_products`})}close_checkout(){var t;if(!this.initialized)throw new Error("Moonbase has not been set up yet");(t=this.storefront)==null||t.closeCheckout()}}const kf=new Cw;globalThis&&(globalThis.Moonbase?console.warn("Multiple instances of Moonbase detected, only one will be initialized"):globalThis.Moonbase=kf),kt.MoonbaseIntent=ue,kt.default=kf,Object.defineProperties(kt,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}})});
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@moonbase.sh/storefront",
3
3
  "type": "module",
4
- "version": "0.2.77",
4
+ "version": "0.2.78",
5
5
  "description": "Package to let you embed Moonbase.sh into your storefront as a payment and delivery provider",
6
6
  "author": "Tobias Lønnerød Madsen <m@dsen.tv>",
7
7
  "license": "MIT",
@@ -21,7 +21,7 @@
21
21
  "dependencies": {
22
22
  "pinia": "^2.1.7",
23
23
  "vue": "^3.5.3",
24
- "@moonbase.sh/vue": "0.2.77"
24
+ "@moonbase.sh/vue": "0.2.78"
25
25
  },
26
26
  "devDependencies": {
27
27
  "@types/node": "^18.19.50",