1import{_ as N}from"./UFXGtyZ_.js";import{_ as T}from"./CdaqHk6H.js";import{_ as $}from"./Bfhh8gto.js";import{u as F,w as G,e as _,U as w,f as C,hb as M,hv as k,h as B,aJ as D,aL as L,r as O,c as I,o as b,E as d,a as g,s as f,M as q,n as U,q as t,K as z,aO as H,a0 as j,y as J,X as K,a7 as W,aS as X,R as Y}from"./ceBh_ItQ.js";import{_ as Q,u as Z}from"./Cble8g9a.js";import{u as ss}from"./mzrtkAwe.js";import{u as ts}from"./DnvPDHzZ.js";import{u as es}from"./COHjjGHa.js";import"./D52irNf2.js";import"./Db_9y_nO.js";const as=async()=>{const c=ts(),{handleAsyncDataError:n}=C(),{data:a,error:r}=await F("mypage-unsubscribe",async()=>{const[e,o]=await Promise.all([c.getStripePlans(),c.getStripeSubscriptionsList()]);return{plans:e,subscriptions:o}},{server:!0,lazy:!1});G(r,e=>{e&&n(r)},{immediate:!0});const l=_(()=>a.value?.plans?.data?.plans||[]),u=_(()=>{const e=a.value?.subscriptions.data;return w(e)?[]:e.filter(o=>o.canCancel)});return{plans:l,subscriptions:u}},ns=M({subscriptionId:k().nullable()}),os={class:"flex w-full flex-col px-5 pb-15"},rs={class:"mx-auto mt-4 flex w-full max-w-[600px] flex-col"},is={class:"flex-center mt-5 w-full"},cs={key:1},ls=B({__name:"index",props:{plans:{},subscriptions:{}},emits:["complete"],setup(c,{emit:n}){const a=c,r=n,l=D(),{cancelStripeSubscription:u}=ss(),{handleError:e}=C(),{handleValidationError:o}=Z(),i=L({subscriptionId:null}),p=O(!1),E=_(()=>w(i.subscriptionId)||p.value),v=_(()=>a.subscriptions.map(m=>({value:m.subscriptionId,label:a.plans.find(s=>s.id===m.planId)?.name||""}))),y=_(()=>a.subscriptions.length>0),h=async m=>{try{const{subscriptionId:s}=m.data;if(w(s))return;p.value=!0;const x=await u({subscriptionId:s}),{success:S}=x;S&&l.add({title:H.STRIPE_SUBSCRIPTION_CANCEL_SUCCESS,color:"success"}),r("complete")}catch(s){e(s)}finally{p.value=!1}};return(m,s)=>{const x=N,S=T,P=$,A=z,R=Q;return b(),I("div",os,[d(x,null,{default:f(()=>s[1]||(s[1]=[q("ãã©ã³è§£ç´",-1)])),_:1,__:[1]}),g("div",rs,[t(y)?(b(),U(R,{key:0,schema:t(ns),state:t(i),onSubmit:h,onError:t(o),class:"flex w-full flex-col space-y-4"},{default:f(()=>[d(P,{name:"subscriptionId",label:"è§£ç´ãããµãã¹ã¯ãªãã·ã§ã³",required:"",class:"w-fit",ui:{label:"leading-[135%] after:leading-none"}},{default:f(()=>[d(S,{modelValue:t(i).subscriptionId,"onUpdate:modelValue":s[0]||(s[0]=V=>t(i).subscriptionId=V),items:t(v),orientation:"vertical",class:"mt-5",ui:{fieldset:"space-y-5 gap-0",item:"text-base leading-[130%]",base:"size-4",label:"font-normal"}},null,8,["modelValue","items"])]),_:1}),g("div",is,[d(A,{buttonStyle:"primary",type:"submit",disabled:t(E),label:"ãã©ã³ãè§£ç´ãã",class:"h-10 w-60"},null,8,["disabled"])])]),_:1},8,["schema","state","onError"])):(b(),I("div",cs,s[2]||(s[2]=[g("p",{class:"text-center text-sm text-gray-500"},"è§£ç´å¯è½ãªãµãã¹ã¯ãªãã·ã§ã³ãããã¾ãã",-1)])))])])}}}),Ss=B({__name:"index",async setup(c){let n,a;const r=j(),l=J(),{plans:u,subscriptions:e}=([n,a]=K(()=>as()),n=await n,a(),n),o=es(u),i=()=>{l.push({name:Y.MYPAGE})},{generateBreadcrumbPaths:p}=X();return(E,v)=>{const y=ls,h=W;return b(),U(h,{breadcrumbPaths:t(p)({route:t(r)}),showGeneralSideBar:!1,bgColor:"bg-gray-50 md:bg-transparent"},{default:f(()=>[d(y,{plans:t(o),subscriptions:t(e),onComplete:i},null,8,["plans","subscriptions"])]),_:1},8,["breadcrumbPaths"])}}});export{Ss as default};
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.