1import{I as h,C as M,N as w,av as O,aa as p,O as m,H as b,Z as c,aw as B,$,Q as v,_ as k,D as L,ac as P,J as U,K as j,g as F,e as T,b as N,M as R,a as o,r as V,a2 as H}from"./DHXW3oa3.js";import{u as D}from"./CnkicXuJ.js";import{L as G}from"./CbO8S-c_.js";import{L as q}from"./DxLnNVa6.js";import{a as x}from"./T9cLCoFx.js";import{b as z,a as J}from"./Lu117aIz.js";import{M as K}from"./D4ap_VML.js";import"./CxLvnfQm.js";import"./CO9aMGig.js";const Q=h({__name:"Input",props:{shows:{default:()=>["number","expired","securityCode","isMainCard"]},inputs:{default:()=>({})},errors:{default:()=>({})},processing:{type:Boolean,default:!1}},emits:["update:inputs","submit"],setup(i,{emit:s}){const r=s,d=e=>{r("update:inputs",e)},g=e=>{r("submit",e)};return(e,l)=>(M(),w(O,{class:p(e.$style.container),onSubmit:g},{default:m(({processing:f,valid:y})=>[b("article",{class:p(e.$style.article)},[b("section",{class:p(e.$style.section)},[b("div",{class:p(e.$style.group)},[c(z),c(x,null,{default:m(()=>[c(J,{shows:i.shows,inputs:i.inputs,errors:i.errors,"onUpdate:inputs":d},null,8,["shows","inputs","errors"])]),_:1})],2)],2)],2),b("article",{class:p(e.$style.button)},[c(B,{design:y?"black":"disabled",processing:i.processing||f},{default:m(()=>[$(v(e.$t("common.register")),1)]),_:1},8,["design","processing"])],2)]),_:1},8,["class"]))}}),Z="af9b5e2fdc",W="ce45541aee",X="_3d39a5476b",Y="_33018abbaa",ee="c8263c9022",se="ced06ad2b6",te={container:Z,article:W,section:X,group:Y,logo:ee,button:se},re={$style:te},oe=Object.assign(k(Q,[["__cssModules",re]]),{__name:"OrganismMyPageCreditCardFormInput"}),ae=h({__name:"Add",props:{shows:{default:()=>{}},inputs:{default:()=>{}},errors:{default:()=>{}},processing:{default:()=>{}}},emits:["update:inputs","submit"],setup(i,{emit:s}){const r=s,d=e=>{r("update:inputs",e)},g=e=>{r("submit",e)};return(e,l)=>(M(),L("article",{class:p(e.$style.container)},[c(P,{class:p(e.$style.title),as:"h2"},{default:m(()=>[$(v(e.$t("mypage.card.title.add")),1)]),_:1},8,["class"]),c(oe,{shows:i.shows,inputs:i.inputs,errors:i.errors,processing:i.processing,"onUpdate:inputs":d,onSubmit:g},null,8,["shows","inputs","errors","processing"])],2))}}),ne="c140494ea8",ie="_95c5a1c5dd",le={container:ne,title:ie},ce={$style:le},de=Object.assign(k(ae,[["__cssModules",ce]]),{__name:"TemplateMyPageCardAdd"}),Ce=h({__name:"add",setup(i){const s=V({shows:[],processing:!0,inputs:{},errors:{},loading:!0,errorModal:{open:!1}}),r=t=>{s.value={...o(s),...t}},d=U(),g=j(),e=F(),l=T(),f=D();N({title:d.t("mypage.card.title.add"),meta:[{name:"robots",content:"noindex, nofollow"}]});const y=()=>{g.go(-1)},_=t=>{r({inputs:t})},E=async()=>{var t,n;try{r({processing:!0,errors:{},errorModal:{open:!1}});const a=await f.token({cardno:o(s).inputs.number??"",expire:o(s).inputs.expired??"",securitycode:o(s).inputs.securityCode??"",tokennumber:1});if(Number(a.resultCode)===0){const u=(Array.isArray((t=a.tokenObject)==null?void 0:t.token)?a.tokenObject.token:[((n=a.tokenObject)==null?void 0:n.token)??""]).at(0)??"";await l.POST("/members/me/credit-cards",{body:{"application/json":{token:u,is_main_card:o(s).inputs.isMainCard??!1}}}),await H(e.resolve("/mypage/card/completed"))}else{const u=f.getGmoErrorMessage(a);r(u?{errorModal:{open:!0,title:d.t("error.occurred"),message:u}}:{errors:{number:[d.t("mypage.card.invalidCreditcard")]}})}}catch(a){C(a)}finally{r({processing:!1})}},C=t=>{const n=l.getResponseError(t);n?l.isResponseValidationError(n)?r({errors:n.options.detail.reduce((a,{target:u,error:A})=>({...a,[u]:[...a[u]??[],A]}),{})}):r({errorModal:{open:!0,title:l.getErrorTitle(n),message:l.getErrorMessage(n)}}):l.handleError(t)},S=()=>{r({errorModal:{...o(s).errorModal,open:!1}})},I=async()=>{const[{count:t}]=await l.GET("/members/me/credit-cards",{query:{offset:0,limit:1}});return t>0};return R(async()=>{try{r({loading:!0,processing:!0}),f.append();const t=["number","expired","securityCode"];await I()&&t.push("isMainCard"),r({shows:t}),r({loading:!1,processing:!1})}catch(t){C(t)}}),(t,n)=>(M(),w(G,{loading:o(s.value).loading},{default:m(()=>[c(q,{title:t.$t("mypage.card.title.list"),left:{label:t.$t("common.back")},onClickLeft:y},{default:m(()=>[c(de,{shows:o(s.value).shows,inputs:o(s.value).inputs,errors:o(s.value).errors,processing:o(s.value).processing,"onUpdate:inputs":_,onSubmit:E},null,8,["shows","inputs","errors","processing"])]),_:1}
1,8,["title","left"]),c(K,{open:o(s.value).errorModal.open,title:o(s.value).errorModal.title,message:o(s.value).errorModal.message,"onUpdate:open":n[0]||(n[0]=a=>a?void 0:S())},null,8,["open","title","message"])]),_:1},8,["loading"]))}});export{Ce 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.