1import{_ as e,j as t,u as a,k as s,b as i,a6 as r,c as n,ah as c,r as u,e as o,g as l,q as p,t as d,x as v,z as b,m as y,n as m,F as _,a8 as f,f as g,v as h,y as w,b2 as k,A as D,h as S,O as x,i as I,b1 as T,bp as U,s as C,a3 as M,w as j,o as A,a4 as O,bo as L,bq as Y,b3 as B}from"./index-Ce7SucYs.js";/* empty css */const P={key:0,class:"productImg"},F=["src"],q={class:"productName"},E={key:0,style:{color:"green"}},N={key:1,class:"productDescription"},z={class:"productPrice"},W={class:"price"},G={class:"interval"},H={class:"productActions"},V={key:0},$={key:1},J={key:0},K={key:1},Q={key:0},R={key:1},X={key:2,class:"productFeatures"},Z={class:"featureItem mb-2"},ee=e({__name:"product",props:{image:{type:String,default:""},name:{type:String,default:""},description:{type:String,default:""},priceData:{type:Object,default:()=>{}},features:{type:Array,default:()=>[]},metadata:{type:Object,default:()=>{}},reserveDescriptionSpace:{type:Boolean,default:!1},reserveImageSpace:{type:Boolean,default:!1},currentSubscription:{type:Boolean,default:!1},customerId:{type:String},type:{type:String},subscriptionData:{type:Object,default:()=>{}},noSubscription:{type:Boolean,default:!0},accountUsedTrial:{type:Boolean}},emits:["updateSubscriptionsList","getUpdatedSubscription"],setup(e,{emit:M}){const j=t(),A=a(),O=s(),L=i(),Y=M,B=e,ee={usd:"$"},te=r(!1),ae=n(()=>ee[B.priceData.currency]),se=n(()=>B.priceData.amountInCents/100),ie=n(()=>{let e=B.priceData.reccuringIntervalCount,t=B.priceData.reccuringInterval;return e>1?"".concat(e," ").concat(t,"s"):t}),re=n(()=>{var e;return(null==(e=B.subscriptionData)?void 0:e.current_period_end)?c(1e3*B.subscriptionData.current_period_end).format("MMM D, YYYY H:mm"):""});function ne(){te.value=!0,k(B.subscriptionData.id,{cancel_at_period_end:!1}).then(e=>{ce(e),te.value=!1,D({group:"notifyMessages",type:"success",title:"Action was successful",text:"Now you stay on current plan.",duration:8e3})})}function ce(e){A.setVenueSubscription(e)}function ue(){let e="trialing"===B.subscriptionData.status?"immediately":"at ".concat(re.value);S(oe,"Are you really want to cancel subscription? If so, your current subscription will end ".concat(e,"."),"warning","Unsubscribe")}function oe(){te.value=!0,"trialing"===B.subscriptionData.status?T(B.subscriptionData.id).then(e=>{var t,a;"venue_subscription"!==(null==(a=null==(t=B.subscriptionData)?void 0:t.metadata)?void 0:a.type)&&"venue_subscription"!==B.type||(A.subscription={}),Y("getUpdatedSubscription",e),Y("updateSubscriptionsList"),te.value=!1,D({group:"notifyMessages",type:"success",title:"Action was successful",text:"Now you unsubscribed from trial period.",duration:8e3})}):k(B.subscriptionData.id,{cancel_at_period_end:!0}).then(e=>{var t,a;"venue_subscription"!==(null==(a=null==(t=B.subscriptionData)?void 0:t.metadata)?void 0:a.type)&&"venue_subscription"!==B.type||ce(e),Y("getUpdatedSubscription",e),Y("updateSubscriptionsList"),te.value=!1,e.cancel_at_period_end&&D({group:"notifyMessages",type:"success",title:"Action was successful",text:"Your current subscription will end at ".concat(re.value),duration:8e3})})}function le(){const e="https://axethrowing.org"+L.fullPath;I(B.customerId,e).then(({url:e})=>{window.location.replace(e)}).catch(e=>{D({group:"notifyMessages",type:"error",title:"Error",text:e.response.data||"Something went wrong",duration:4e3})})}async function pe(){var e,t;if(te.value=!0,B.customerId){const a=await x(B.customerId).then(e=>e),s=["draft","open"];if([...a].some(e=>s.includes(e.status))){const a="You have outstanding invoices. These will be processed and paid once your subscription is successfully completed. ".concat("venue_subscription"===(null==(t=null==(e=B.subscriptionData)?void 0:e.metadata)?void 0:t.type)||"venue_subscription"===B.type?"Afterward, you will only be charged once every 3 months for your subscription.":"");S(de,a,"info","Ok",!0),te.value=!1}else de()}else de()}function de(){var e,t;"player_subscription"===(null==(t=null==(e=B.subscriptionData)?void 0:e.metadata)?void 0:t.type)||"player_subscription"===B.type?function(){let e=+B.metadata.trial&&!B.accountUsedTrial?+B.metadata.trial:null;e&&O.champsForFlex.includes(j.user.code)&&(e=90);U(B.priceData.priceId,j.user[".key"],"https://axethrowing.org"+L.fullPath,j.user.customer,null,null,e).then(e=>{window.location.replace(e.data.url)}).catch(e=>{console.log(e.response.data),D({group:"notifyMessages",type:"error",title:"Error",text:e.response.data,duration:4e3})})}():function(){let e=+B.metadata.trial&&!B.accountUsedTrial?+B.metadata.trial:null;C(A.venue.locationSlug,A.venue.customer,B.priceData.priceId,e,+B.metadata.available_players,"https://axethrowing.org"+L.fullPath).then(e=>{window.location.replace(e.data.url)}).catch(e=>{console.log(e.response.data),D({group:"notifyMessages",type:"error",title:"Error",text:e.response.data,duration:4e3})})}()}return(t,a)=>{var s;const i=u("v-progress-circular"),r=u("v-icon");return l(),o("div",{class:w(["productWrapper",{active:e.currentSubscription}])}
1,[e.reserveImageSpace?(l(),o("div",P,[e.image?(l(),o("img",{key:0,src:e.image,alt:""},null,8,F)):p("",!0)])):p("",!0),d("h3",q,[v(b(e.name)+" ",1),e.currentSubscription?(l(),o("span",E,"(active)")):p("",!0)]),e.reserveDescriptionSpace?(l(),o("div",N,b(e.description),1)):p("",!0),d("section",z,[d("div",W,b(ae.value)+b(se.value),1),d("div",G,[a[0]||(a[0]=v("per ",-1)),a[1]||(a[1]=d("br",null,null,-1)),v(b(ie.value),1)])]),d("div",H,[e.currentSubscription&&e.subscriptionData.cancel_at_period_end?(l(),y(f,{key:0,variant:"flat",width:"100%",class:"mx-0",onClick:ne,disabled:te.value},{default:m(()=>[te.value?(l(),y(i,{key:0,indeterminate:"",color:"white"})):(l(),o(_,{key:1},[v(" stay on current plan ")],64))]),_:1},8,["disabled"])):e.currentSubscription?(l(),y(f,{key:1,variant:"flat",width:"100%",class:"mx-0",onClick:ue,disabled:e.currentSubscription&&e.subscriptionData.cancel_at_period_end||te.value},{default:m(()=>[te.value?(l(),y(i,{key:0,indeterminate:"",color:"white"})):(l(),o(_,{key:1},[e.subscriptionData.cancel_at_period_end?(l(),o("span",$,"current plan")):(l(),o("span",V," unsubscribe "))],64))]),_:1},8,["disabled"])):Object.keys(e.subscriptionData||{}).length&&["active","trialing"].includes(null==(s=e.subscriptionData)?void 0:s.status)?(l(),y(f,{key:3,variant:"flat",width:"100%",class:"mx-0",onClick:le},{default:m(()=>[...a[2]||(a[2]=[v("select",-1)])]),_:1})):(l(),o(_,{key:2},[e.metadata.trial?(l(),y(f,{key:0,disabled:null===e.accountUsedTrial,variant:"flat",width:"100%",class:"mx-0",onClick:pe},{default:m(()=>[te.value?(l(),y(i,{key:0,indeterminate:"",color:"white"})):(l(),o(_,{key:1},[!1===e.accountUsedTrial?(l(),o("span",J,"use trial")):(l(),o("span",K,"subscribe"))],64))]),_:1},8,["disabled"])):(l(),y(f,{key:1,variant:"flat",width:"100%",class:"mx-0",onClick:pe,disabled:te.value},{default:m(()=>[te.value?(l(),o("span",Q,[g(i,{indeterminate:"",color:"white"})])):(l(),o("span",R,"Subscribe "))]),_:1},8,["disabled"]))],64))]),e.features.length?(l(),o("div",X,[a[4]||(a[4]=d("p",{class:"mb-2"},"This includes:",-1)),d("ul",null,[(l(!0),o(_,null,h(e.features,e=>(l(),o("li",Z,[g(r,{size:"small",class:"checkIcon mr-3",color:"grey"},{default:m(()=>[...a[3]||(a[3]=[v("mdi-check-circle",-1)])]),_:1}),v(b(e.name),1)]))),256))])])):p("",!0)],2)}}},[["__scopeId","data-v-723b545d"]]),te={class:"productsWrapper"},ae=e({__name:"products",props:{subscriptionType:{type:String,required:!0}},setup(e){const s=a(),i=t(),c=e,u=M({});let p=M([]),d=r(null);const v=n(()=>p.value.some(e=>e.description)),b=n(()=>p.value.some(e=>e.images.length)),m=n(()=>"player_subscription"===c.subscriptionType?u.value:s.subscription),f=n(()=>({player_subscription:i.user,venue_subscription:s.venue})),g=n(()=>f.value[c.subscriptionType]);j(()=>g.value,e=>{Object.keys(e).length&&!e.customer&&(d.value=!1)},{immediate:!0});const w=n(()=>g.value.customer);function k(){w.value&&Y(w.value).then(e=>{const t="player_subscription"===c.subscriptionType?e=>e.trial_end&&"player_subscription"===e.metadata.type:e=>e.trial_end&&"player_subscription"!==e.metadata.type;d.value=e.data.some(t)})}function D(e){u.value={id:e.id,plan:e.plan,status:e.status,metadata:e.metadata,customer:e.customer,cancel_at_period_end:e.cancel_at_period_end,current_period_end:e.current_period_end,trial_end:e.trial_end}}j(()=>w.value,e=>{e&&k()});const S=n(()=>i.user);return j(()=>S.value,e=>{var t;e.subscription&&"player_subscription"===c.subscriptionType&&(t=e.subscription,B(t).then(e=>{D(e)}))},{immediate:!0}),A(()=>{!async function(){let e="player_subscription"===c.subscriptionType?c.subscriptionType:void 0;const t=await L(e);p.value=t.sort((e,t)=>e.priceData.amountInCents-t.priceData.amountInCents)}(),k()}),(t,a)=>(l(),o("div",te,[(l(!0),o(_,null,h(O(p),t=>{var a,s,i,r;return l(),y(ee,{image:t.images&&t.images[0],name:t.name,description:t.description,"price-data":t.priceData,features:t.features,metadata:t.metadata,"reserve-description-space":v.value,"reserve-image-space":b.value,"customer-id":w.value,subscriptionData:m.value,type:e.subscriptionType,"current-subscription":t.id===(null==(s=null==(a=m.value)?void 0:a.plan)?void 0:s.product)&&t.id.toLowerCase()===m.value.plan.product.toLowerCase()&&(null==(i=m.value)?void 0:i.status)&&["active","trialing"].includes(null==(r=m.value)?void 0:r.status),accountUsedTrial:O(d),onUpdateSubscriptionsList:k,onGetUpdatedSubscription:D},null,8,["image","name","description","price-data","features","metadata","reserve-description-space","reserve-image-space","customer-id","subscriptionData","type","current-subscription","accountUsedTrial"])}),256))]))}}
1,[["__scopeId","data-v-de38f1da"]]);export{ae as P};
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.