PageSourceSearch

https://static.upgarage.com/_nuxt/BkBrFhME.js

js upgarage.com collected 2026-10-02 03:28:05 UTC 17,352 bytes, 2 lines download raw bytes

1import{d as N,r as c,c as i,a,e as p,bY as me,w as $,b as O,m as s,h as e,az as pe,y as ve,c4 as ge,p as j,j as H,_ as z,o as ie,G as W,f as S,z as ee,F as U,i as T,n as B,C as ce,l as R,t as V,c5 as he,c6 as fe,u as re,M as X,I as ye,c7 as ke,q as $e,v as D,s as be,N as de,x as we,c8 as Ce,O as Ie,aO as Me,S as xe,bN as Se,L as Fe}from"./CBb99Q15.js";import{m as Ae,M as Be}from"./WwlTL4R4.js";import{_ as Ee}from"./Be83MXPs.js";import{_ as Re,M as ae}from"./DKAEu1N2.js";import{M as le}from"./HJwVSgq5.js";import{a as K}from"./CWu2b5id.js";import{b as Ue}from"./Jd6aBPtE.js";import{h as Ve}from"./CbGaPIAM.js";import"./BDr1m4Qv.js";const Ne=t=>(j("data-v-2862dd11"),t=t(),H(),t),ze={class:"full-screen","data-testid":"full-screen"},Le={key:0,class:"full-screen__container"},Oe={class:"full-screen__header"},Te=Ne(()=>e("img",{src:ge},null,-1)),Pe=[Te],De={class:"full-screen__body"},je=N({__name:"full_screen",setup(t,{expose:f}){const r=c(null),d=c(0),n=()=>(d.value=window.scrollY,document.body.style.setProperty("top",`${window.scrollY*-1}px`),new Promise(o=>{r.value=o})),l=o=>{document.body.style.setProperty("top",""),document.body.scrollTo(0,d.value),r.value&&(r.value(o),r.value=null)};return f({open:n,close:l}),(o,_)=>(a(),i("div",ze,[p(me,{appear:"",name:"full-screen__effect-"},{default:$(()=>[s(r)?(a(),i("div",Le,[e("header",Oe,[e("div",{class:"full-screen__close",onClick:_[0]||(_[0]=pe(u=>l(!1),["stop"]))},Pe)]),e("div",De,[ve(o.$slots,"default",{},void 0,!0)])])):O("",!0)]),_:3})]))}}),Z=z(je,[["__scopeId","data-v-2862dd11"]]),He={class:"crop"},Ye=N({__name:"crop",props:{imageFile:{default:null}},emits:["crop","error"],setup(t,{emit:f}){const r=t,d=c(null),n=c(""),l=f;ie(async()=>{await _()});const o=()=>{d.value.getCroppedCanvas().toBlob(v=>{l("crop",v)})},_=()=>{if(r.imageFile)return new Promise(u=>{const v=new FileReader;v.onload=E=>{var x,F;n.value=(x=E.target)==null?void 0:x.result,d.value.replace((F=E.target)==null?void 0:F.result),u()},v.onerror=()=>{l("error")},v.readAsDataURL(r.imageFile)})};return(u,v)=>(a(),i("div",He,[p(s(Re),{ref_key:"cropper",ref:d,src:s(n),guides:!0,"drag-mode":"move",background:!0,"aspect-ratio":2/1,"initial-aspect-ratio":2/1,zoomable:!1,movable:!1,"auto-crop-area":1,"view-mode":1,alt:"image"},null,8,["src"]),p(W,{class:"crop__button",type:"rect-primary",onClick:o},{default:$(()=>[S(" 切り取り ")]),_:1})]))}}),We=z(Ye,[["__scopeId","data-v-df09cf1f"]]),Ge={class:"upload"},qe={class:"upload__images images"},Je=["data-testid","onClick"],Qe=["src","data-testid","onClick"],Ke=["src"],Xe={key:0,class:"images__inputer",for:"file","data-testid":"image-inputer"},Ze=N({__name:"image_uploader",props:{maxImageCount:{default:5}},emits:["updateImage"],setup(t,{emit:f}){const r=t,d=c(null),n=c(null),l=c(null),o=c(null),_=c([]),u=c(null),v=c([]),E=f,x=ee(()=>_.value.length<r.maxImageCount),F=m=>URL.createObjectURL(m.file),P=async m=>{v.value=[];const k=m.target.files[0];if(Y(k),v.value.length>0){B().alert(v.value[0]);return}const L=await g(k);L&&(_.value.push({id:"",url:"",file:L,fileName:k.name}),E("updateImage",_.value.filter(M=>M.file).map(M=>A(M.file,M.fileName)))),n.value&&(n.value.value="")},Y=m=>{m.type.match("image.*")||v.value.push("指定されたファイルは画像ファイルではありません。"),m.size>10*1024*1024&&v.value.push("指定されたファイルのファイルサイズが大きすぎます。")},g=async m=>{u.value=m;const k=await o.value.open();return k?k.size<=5*1024*1024?k:await y(k):null},h=c(null),y=m=>new Promise(k=>{h.value=new Image,h.value.onload=()=>{const J=h.value.width,se=h.value.height,te=J*.5,oe=se*.5,Q=d.value;Q.width=te,Q.height=oe;const ne=Q.getContext("2d");ne.drawImage(h.value,0,0,J,se,0,0,te,oe),ne.canvas.toBlob(_e=>{const ue=new File([_e],m.name,{type:m.type,lastModified:Date.now()});k(ue)},m.type,1)};const L=new FileReader;L.onload=M=>{h.value.src=M.target.result},L.readAsDataURL(m)}),A=(m,k)=>new File([m],k,{type:m.type}),b=async m=>{await B().confirm("画像を削除しますか?")&&(_.value.splice(m,1),E("updateImage",_.value.filter(k=>k.file).map(k=>A(k.file,k.fileName))))},C=async m=>{await l.value[m].open()},w=m=>{o.value.close(m)},I=()=>{B().alert("画像の切り取りに失敗しました。")};return(m,k)=>(a(),i("div",Ge,[e("div",qe,[(a(!0),i(U,null,T(s(_),(L,M)=>(a(),i("div",{key:M,class:"images__list-item","data-testid":"image-list-item"},[e("div",{class:"images__delete","data-testid":`image-delete-button-${M}`,onClick:J=>b(M)}," ー ",8,Je),e("img",{src:F(L),class:"images__image","data-testid":`image-${M}`,onClick:J=>C(M)},null,8,Qe),p(Z,{ref_for:!0,ref_key:"imageScreens",ref:l,class:"image__preview"},{default:$(()=>[e("img",{src:F(L),class:"images__image"},null,8,Ke)]),_:2},1536)]))),128)),s(x)?(a(),i("label",Xe,[e("input",{id:"file",ref_key:"inputElm",ref:n,t
1ype:"file",accept:"image/*",class:"images__input",onChange:P},null,544)])):O("",!0)]),e("canvas",{ref_key:"resizeCanvas",ref:d,class:"upload__canvas"},null,512),p(Z,{ref_key:"cropScreen",ref:o},{default:$(()=>[p(We,{"image-file":s(u),onCrop:w,onError:I},null,8,["image-file"])]),_:1},512)]))}}),ea=z(Ze,[["__scopeId","data-v-4aea8b4d"]]),aa=t=>(j("data-v-c383d020"),t=t(),H(),t),sa={class:"image-upload__message","data-testid":"image-upload-message"},ta=aa(()=>e("br",null,null,-1)),oa=N({__name:"mypage_index_cover_image_upload_screen",setup(t,{expose:f}){const{updateCoverImage:r}=ce(),d=c(null),n=c(null),l=c(!1),o=async()=>{l.value=!1,n.value=null,await d.value.open()},_=v=>{n.value=v[0]},u=async()=>{if(!n.value){B().alert("画像が選択されていません。");return}if(l.value=!0,!await r(n.value)){await B().alert("画像のアップロードに失敗しました。"),l.value=!1;return}l.value=!1,n.value=null,d.value.close(!0)};return f({open:o}),(v,E)=>(a(),R(Z,{ref_key:"screen",ref:d,title:"カード背景を設定",class:"image-upload"},{default:$(()=>[e("p",sa,[s(n)?(a(),i(U,{key:1},[S(" カードの背景に設定します ")],64)):(a(),i(U,{key:0},[S(" お好きな写真を"),ta,S("カードの背景に設定できます ")],64))]),p(ea,{"max-image-count":1,onUpdateImage:_}),p(W,{type:"rect-primary",class:"image-upload__button",disabled:!s(n)||s(l),"data-testid":"image-upload-button",onClick:u},{default:$(()=>[S(" 決定 ")]),_:1},8,["disabled"])]),_:1},512))}}),na=z(oa,[["__scopeId","data-v-c383d020"]]),G=t=>(j("data-v-2fdb45bf"),t=t(),H(),t),la={class:"mypage-membership"},ia={class:"mypage-membership__slide"},ca=["src"],ra={key:1,"data-testid":"default-cover-image",class:"mypage-membership__default-cover-image"},da=G(()=>e("div",{class:"mypage-membership__black-filter"},null,-1)),_a=G(()=>e("img",{src:he,alt:"写真変更"},null,-1)),ua=G(()=>e("img",{src:fe,alt:"写真削除"},null,-1)),ma=G(()=>e("p",{class:"mypage-membership__memhead global-device global-device--only-tablet-mobile"}," 会員証 ",-1)),pa={class:"mypage-membership__bar-code global-device global-device--only-tablet-mobile"},va={class:"mypage-membership__dl"},ga=G(()=>e("dt",{class:"mypage-membership__id"}," 会員ID: ",-1)),ha={class:"mypage-membership__dd2","data-testid":"member-number"},fa=N({__name:"mypage_index_membership",setup(t){const{userProfile:f,deleteCoverImage:r}=ce(),d=ee(()=>{var _,u;return(u=(_=f.value)==null?void 0:_.image)==null?void 0:u.url}),n=c(null),l=()=>{n.value.open()},o=async()=>{if(!d.value){B().alert("カバー画像が設定されていません。");return}if(!await B().confirm("カバー画像を削除しますか?"))return;await r()||B().alert("カバー画像の削除に失敗しました。")};return(_,u)=>(a(),i("div",la,[e("div",ia,[s(d)?(a(),i("img",{key:0,src:s(d),"data-testid":"cover-image"},null,8,ca)):(a(),i("div",ra)),da,p(W,{type:"icon",class:"mypage-membership__photo-update","data-testid":"change-cover-image-button",onClick:l},{default:$(()=>[_a]),_:1}),p(W,{type:"icon",class:"mypage-membership__photo-delete","data-testid":"delete-cover-image-button",onClick:o},{default:$(()=>[ua]),_:1})]),ma,e("div",pa,[p(Ee,{value:s(f).kikanMemberNumber},null,8,["value"])]),e("dl",va,[ga,e("dd",ha,V(s(f).kikanMemberNumber),1)]),p(na,{ref_key:"imageUploadScreen",ref:n},null,512)]))}}),ya=z(fa,[["__scopeId","data-v-2fdb45bf"]]),ka=t=>(j("data-v-514a3acd"),t=t(),H(),t),$a=ka(()=>e("div",{class:"heading"}," 愛車登録 ",-1)),ba={class:"maker-list-heading"},wa={class:"maker-list","data-testid":"maker-list"},Ca={key:0,class:"maker-list__loading"},Ia=["data-testid","onClick"],Ma={class:"maker-list-item__image-box"},xa=["src","alt"],Sa={class:"maker-list-item__name"},Fa={class:"model-list"},Aa={key:0,class:"model-list__loading"},Ba=["data-testid","onClick"],Ea=N({__name:"mypage_index_owned_vehicle_registration_modal",setup(t,{expose:f}){const{$accountApi:r}=re(),d=c(null),n=c("car"),l=c([]),o=c([]),_=async g=>{d.value.open(),n.value=g;const{data:h}=await r()[g==="car"?"getCarMakers":"getBikeMakers"]();if(h){const y="makers"in h?h.makers:h.bikeMakers;l.value=y.domestic,o.value=y.oversea}else K("メーカー一覧の取得に失敗しました。")},u=c(void 0),v=c(null),E=async g=>{u.value=g,await x()},x=async g=>{v.value=null;const{data:h}=await r()[n.value==="car"?"getCarModels":"getBikeModels"](u.value.id,g);h?v.value="models"in h?h.models:h.searchBikeModels:K("車種検索でエラーが発生しました。")},F=()=>{u.value=void 0}
1,P=async g=>{var A,b,C,w;if(!await B().confirm(`${u.value.name} ${g.name}を登録しますか?`))return;let h,y;if(n.value==="car"){const{data:I,errors:m}=await r().registerOwnedCar(u.value.id,g.id);h=(b=(A=I==null?void 0:I.createOwnedCar)==null?void 0:A.ownedCar)==null?void 0:b.id,y=m}else{const{data:I,errors:m}=await r().registerOwnedBike(g.id);h=(w=(C=I==null?void 0:I.createOwnedBike)==null?void 0:C.ownedBike)==null?void 0:w.id,y=m}if(y){y.some(I=>ke(I.message))?B().alert("登録台数が上限(20件)に達しています。追加するには、登録済みの車両をいずれか削除してください。"):K("愛車の登録に失敗しました。");return}await B().alert(`${u.value.name} ${g.name}を登録しました!
2次の画面で画像と詳細情報を設定してください。`),$e(`/mypage/owned-vehicle/${h}/`)},Y=()=>{l.value=[],o.value=[],u.value=void 0,v.value=[]};return f({open:_}),(g,h)=>(a(),R(X,{ref_key:"modal",ref:d,onClose:Y},{default:$(()=>[$a,s(u)?(a(),i(U,{key:1},[e("div",{class:"back-link","data-testid":"back-link",onClick:F},V(s(u).name),1),p(ye,{type:"text",inputmode:"search",label:"車種名で絞り込む","data-testid":"model-search-input",onChange:x,onSubmit:x}),e("div",Fa,[s(v)===null?(a(),i("div",Aa," 取得中... ")):O("",!0),(a(!0),i(U,null,T(s(v),y=>(a(),i("div",{key:y.id,class:"model-list__item","data-testid":`model-${y.id}`,onClick:A=>P(y)},V(y.name),9,Ba))),128))])],64)):(a(!0),i(U,{key:0},T([s(l),s(o)],(y,A)=>(a(),i("div",{key:A,class:"maker-list-wrapper"},[e("div",ba,V(`${A===0?"国内":"海外"}メーカー(ブランド)`),1),e("div",wa,[y.length===0?(a(),i("div",Ca," 取得中... ")):(a(!0),i(U,{key:1},T(y,b=>(a(),i("div",{key:b.id,class:"maker-list-item","data-testid":`maker-${b.id}`,onClick:C=>E(b)},[e("div",Ma,[e("img",{src:b.image,alt:b.name,class:"maker-list-item__image"},null,8,xa)]),e("p",Sa,V(b.name),1)],8,Ia))),128))])]))),128))]),_:1},512))}}),Ra=z(Ea,[["__scopeId","data-v-514a3acd"]]),Ua=t=>(j("data-v-fbc8026d"),t=t(),H(),t),Va={class:"mypage-owned-vehicles"},Na=Ua(()=>e("p",{class:"mypage-owned-vehicles__message"}," メンテナンス時期を通知したりカスタム履歴も残せます! ",-1)),za={class:"mypage-owned-vehicles__carlineup"},La={class:"mypage-owned-vehicles__cars"},Oa=["src"],Ta={key:1,class:"mypage-owned-vehicles__no-image"},Pa={class:"mypage-owned-vehicles__favtxt"},Da={class:"mypage-owned-vehicles__maker"},ja={class:"mypage-owned-vehicles__model"},Ha={class:"mypage-owned-vehicles__buttons"},Ya=N({__name:"mypage_index_owned_vehicles",props:{vehicles:{}},setup(t){const{vehicles:f}=t,r=c(null),d=n=>{r.value.open(n)};return(n,l)=>(a(),i("div",Va,[p(ae,{title:"愛車一覧"}),Na,e("div",za,[(a(!0),i(U,null,T(n.vehicles,(o,_)=>(a(),R(D,{key:_,class:"mypage-owned-vehicles__anchor","data-testid":"owned-vehicles",href:`/mypage/owned-vehicle/${o.id}/`},{default:$(()=>[e("div",La,[o.image?(a(),i("img",{key:0,class:"mypage-owned-vehicles__image",src:o.image},null,8,Oa)):(a(),i("div",Ta)),e("div",Pa,[e("p",Da,V(o.maker.name),1),e("p",ja,V(o.model.name),1)])])]),_:2},1032,["href"]))),128))]),e("div",Ha,[p(le,{type:"add",text:"クルマを登録",class:"mypage-owned-vehicles__button",width:"140px","data-testid":"owned-car-registration-button",onClick:l[0]||(l[0]=o=>d("car"))}),p(le,{type:"add",text:"バイクを登録",class:"mypage-owned-vehicles__button",width:"140px","data-testid":"owned-bike-registration-button",onClick:l[1]||(l[1]=o=>d("bike"))})]),p(Ra,{ref_key:"modal",ref:r},null,512)]))}}),Wa=z(Ya,[["__scopeId","data-v-fbc8026d"]]),Ga={class:"mypage-coupon"},qa={class:"mypage-coupon__banners"},Ja=["src"],Qa={key:1,class:"mypage-coupon__no-image"},Ka=N({__name:"mypage_index_coupon",props:{coupons:{}},setup(t){const f=t,{coupons:r}=be(f);return(d,n)=>(a(),i("div",Ga,[p(ae,{title:"クーポン",href:"/mypage/coupon/",type:"more",text:"もっと見る"}),e("div",qa,[(a(!0),i(U,null,T(s(r),(l,o)=>(a(),R(D,{key:o,class:"mypage-coupon__anchor",href:`/mypage/coupon/${l.id}/`,"data-testid":"coupon"},{default:$(()=>[l.banner_image&&l.banner_image.url?(a(),i("img",{key:0,src:l.banner_image.url,class:"mypage-coupon__image"},null,8,Ja)):(a(),i("div",Qa))]),_:2},1032,["href"]))),128))])]))}}),Xa=z(Ka,[["__scopeId","data-v-aeaa0f47"]]),Za={class:"mypage-account-settings"},es={class:"mypage-account-settings__list"},as=N({__name:"mypage_index_account_settings",setup(t){const{t:f,locale:r}=de(),d=c([]);
2return Ae.navItems.forEach(n=>{n.head==="myAccount"&&(d.value=n.anchorItems.filter(l=>l.availableLocales.includes(r.value)))}),(n,l)=>(a(),i("div",Za,[p(ae,{title:s(f)("mypage.myAccount")},null,8,["title"]),e("ul",es,[(a(!0),i(U,null,T(s(d),(o,_)=>(a(),i("li",{key:_,class:"mypage-account-settings__item"},[p(D,{class:we(["mypage-account-settings__anchor",{"global-device global-device--only-tablet-mobile":o.display==="onlyMobile"}]),href:s(Ce)(o,s(r))},{default:$(()=>[S(V(s(f)(`mypage.${o.title}`)),1)]),_:2},1032,["class","href"])]))),128))])]))}}),ss=z(as,[["__scopeId","data-v-ecf31d03"]]),q=t=>(j("data-v-379da4a5"),t=t(),H(),t),ts={class:"mypage"},os={key:0},ns={class:"mypage__link link"},ls=q(()=>e("span",{class:"material-symbols-outlined"},"history",-1)),is=q(()=>e("span",{class:"material-symbols-outlined"},"favorite",-1)),cs=q(()=>e("span",{class:"material-symbols-outlined"},"favorite",-1)),rs=q(()=>e("span",{class:"material-symbols-outlined"},"event_available",-1)),ds=q(()=>e("span",{class:"material-symbols-outlined"},"confirmation_number",-1)),_s={class:"error-modal__head"},us={class:"mypage__menu-modal"},ms=3,ps=N({__name:"index",setup(t){const{t:f,locale:r}=de(),{$accountApi:d,$errorHandler:n}=re(),l=Ie(),o=c([]),_=c(null),u=c(!1),v=c(null),E=c(""),x=c(null),F=c(""),P=c(null),Y=f("mypage.mypage");Ve.set({title:Y,useShortSiteTitle:!0,isEn:r.value==="en"}),Ue.set([{name:"mypage",translation:!0,path:"/mypage/"}]),ie(async()=>{await Promise.all([h(),y()]),!(g.value&&!_.value)&&(u.value=!0,l.hash==="#owned-vehicles"&&(await Me(),xe.scrollToAnchor(P.value.$el)))});const g=ee(()=>r.value==="ja"),h=async()=>{if(!g.value)return;const{data:C,errors:w}=await d().getOwnedVehicles();if(w){n().handleGraphQlErrors(w);return}o.value=Se(C.ownedVehicles.nodes)},y=async()=>{if(!g.value)return;const{data:C,error:w}=await d().getCoupons({limit:ms});w.value!=null?n().handleRestApiError(w.value.statusCode):C&&(_.value=C.resources)},A=()=>{v.value.close(!1)},b=(C="")=>{F.value=C,F.value?x.value.open():x.value.close(!1)};return(C,w)=>(a(),i("div",ts,[s(u)?(a(),i("div",os,[s(g)?(a(),R(ya,{key:0})):O("",!0),e("div",ns,[e("div",{class:"link__item","data-testid":"history",onClick:w[0]||(w[0]=I=>b("history"))},[ls,S(" "+V(s(f)("mypage.history")),1)]),s(g)?(a(),i("div",{key:0,class:"link__item","data-testid":"favorite-ja",onClick:w[1]||(w[1]=I=>b("favorite"))},[is,S(" お気に入り ")])):(a(),R(D,{key:1,href:"/en/mypage/favorite-item/",class:"link__item","data-testid":"favorite-en"},{default:$(()=>[cs,S(" Wishlist ")]),_:1})),s(g)?(a(),R(D,{key:2,href:"/mypage/reservation/",class:"link__item","data-testid":"reservations"},{default:$(()=>[rs,S(" 予約 ")]),_:1})):O("",!0),s(g)?(a(),R(D,{key:3,href:"/mypage/coupon/",class:"link__item","data-testid":"coupon"},{default:$(()=>[ds,S(" クーポン ")]),_:1})):O("",!0)]),s(g)?(a(),R(Wa,{key:1,id:"owned-vehicles",ref_key:"ownedVehiclesComponent",ref:P,vehicles:s(o)},null,8,["vehicles"])):O("",!0),s(g)?(a(),R(Xa,{key:2,coupons:s(_)},null,8,["coupons"])):O("",!0),p(ss)])):O("",!0),p(X,{ref_key:"errorModal",ref:v,class:"error-modal"},{default:$(()=>[e("div",_s,[e("p",null,V(s(E)),1)]),p(W,{type:"rect-primary",class:"error-modal__button",onClick:A},{default:$(()=>[S(" 閉じる ")]),_:1})]),_:1},512),e("div",us,[p(X,{ref_key:"menuModal",ref:x,onClose:b},{default:$(()=>[p(Be,{"menu-type":s(F)},null,8,["menu-type"])]),_:1},512)]),p(Fe,{loading:!s(u)},null,8,["loading"])]))}}),Cs=z(ps,[["__scopeId","data-v-379da4a5"]]);export{Cs 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.