1import oe from"./Du9UN61w.js";import{_ as ee}from"./CUio1qhl.js";import{c as S,o as h,d as a,Z as le,t as b,$ as X,u as G,a0 as se,e as te,g as e,h as f,v as re,j as R,O as z,y as ue,r as v,G as ie,p as D,w as j,f as E,N as de,P as ce,F as Z,Q as H,q as me,a1 as _e,n as pe,l as fe,a as be,B as ve,z as he,X as J,W as C,a2 as xe,a3 as ye}from"./K1b_ijTh.js";import{g as ge}from"./D3CM0kaY.js";import{_ as Ve}from"./CeIJJ296.js";import{_ as we}from"./C3iq2-mQ.js";const $e=["id"],Fe={class:"text-neutral-900 text-xl font-medium"},ke={__name:"ReturnFormSection",props:{id:{type:String,required:!0},title:{type:String,required:!0}},setup(x){return(g,t)=>(h(),S("section",{id:x.id,class:"flex flex-col gap-4"},[a("h3",Fe,b(x.title),1),le(g.$slots,"default")],8,$e))}},qe={class:"relative"},Ce={class:"flex flex-col gap-4 border border-neutral-200 rounded-md p-4"},Re={class:"flex items-center justify-between w-full gap-4"},Se=["aria-label","disabled"],Te={class:"flex gap-4"},Ae={__name:"ReturnLine",props:X({label:{type:String,required:!0},name:{type:String,required:!0},removeDisabled:{type:Boolean,default:!1}},{modelValue:{type:Object,default:()=>({product_name:"",quantity:""})},modelModifiers:{}}),emits:X(["remove"],["update:modelValue"]),setup(x,{emit:g}){const{t}=G(),n=se(x,"modelValue"),L=g,N=c=>{if(c===""||c==null)return c;const _=Number(c);if(!Number.isFinite(_))return 1;const o=Math.trunc(_);return o<1?1:o},F=R({get:()=>n.value.quantity,set:c=>{n.value.quantity=N(c)}}),P=()=>{n.value.quantity=N(n.value.quantity)},k=R(()=>!!n.value.quantity||!!n.value.product_name);return(c,_)=>{const o=re,m=ee;return h(),S("div",qe,[a("div",Ce,[a("div",Re,[te(b(x.label)+" ",1),a("button",{type:"button",class:"inline-flex h-full p-3 border border-neutral-200 rounded-md items-center justify-center text-neutral-500 transition hover:text-neutral-700 disabled:opacity-40 disabled:pointer-events-none disabled:hover:text-neutral-500","aria-label":e(t)("returns.Remove_product"),disabled:x.removeDisabled,onClick:_[0]||(_[0]=V=>L("remove"))},[f(o,{name:"tabler:trash",class:"h-5 w-5"})],8,Se)]),a("div",Te,[f(m,{type:"text",name:`${x.name}_product_name`,label:e(t)("returns.Product_name_label"),placeholder:e(t)("returns.Product_name_template"),modelValue:n.value.product_name,"onUpdate:modelValue":_[1]||(_[1]=V=>n.value.product_name=V),"wrapper-class":"w-full",validation:e(k)?"required":""},null,8,["name","label","placeholder","modelValue","validation"]),f(m,{type:"number",number:"integer",name:`${x.name}_quantity`,label:e(t)("returns.Quantity"),placeholder:e(t)("returns.Quantity_template"),"wrapper-class":"w-[25%] shrink-0",step:"1",modelValue:e(F),"onUpdate:modelValue":_[2]||(_[2]=V=>z(F)?F.value=V:null),onBlur:P,validation:e(k)?"required":""},null,8,["name","label","placeholder","modelValue","validation"])])])])}}},Ne={class:"flex flex-col gap-10"},Pe={class:"text-neutral-700 text-sm mb-4"},Ie={class:"term-checkbox cursor-pointer",for:"return-cash-order"},Le={class:"text-neutral-700 text-sm"},Be={class:"text-neutral-700 text-sm mb-4"},Me={class:"text-neutral-700 text-sm mb-4"},Oe={class:"flex flex-col gap-4"},De={key:0,class:"text-red-500 text-xs"},Y="*",Ee={__name:"ReturnForm",props:{accountNumberMaxLength:{type:Number,default:64},raiseValidation:{type:Boolean,default:!1}},setup(x,{expose:g}){const{t}=G(),n=Y.repeat(4),L=({value:l})=>!String(l??"").includes(Y),N=x,{raiseValidation:F}=ue(N),P=v(1),k=()=>({id:P.value++,product_name:"",quantity:""}
1),c=v(null),_=ge().classes,o=v([k()]),m=v(!1),V=l=>t("returns.Product_n",{n:l+1}),w=l=>!!(l.product_name?.trim()||l.quantity?.trim()),p=R(()=>o.value.some(w)),T=R(()=>c.value?.node?.context?.state?.valid===!0&&p.value),U=()=>{o.value.push(k())},A=l=>{if(o.value.length<=1)return;const i=o.value.findIndex(d=>d.id===l);i!==-1&&o.value.splice(i,1)},B=()=>{const l=c.value?.node?.value||{},i=o.value.filter(w).map(({product_name:d,quantity:$})=>({product_name:d.trim(),quantity:parseInt($,10)}));return{...l,account_number:m.value?l.account_number:"",lines:i}},K=()=>{if(!(c.value?.node?.context?.state?.valid===!0)){document.getElementById("return-order-data")?.scrollIntoView({behavior:"smooth",block:"start"});return}p.value||document.getElementById("return-products")?.scrollIntoView({behavior:"smooth",block:"start"})},I=l=>{const i=l.clipboardData.getData("text");if(i.length<=n.length)return;const d=l.target,$=n+i.slice(n.length);c.value?.node?.at("account_number")?.input($),pe(()=>{d.focus(),d.setSelectionRange(0,n.length)})},M=()=>{};return g({isValid:T,getFormData:B,scrollToFirstInvalidSection:K}),(l,i)=>{const d=ee,$=ke,Q=Ae,r=re,s=ie("FormKit");return h(),D(s,{type:"form",ref_key:"form",ref:c,config:{classes:e(_)},"submit-attrs":{inputClass:"hidden"},id:"returnForm","incomplete-message":!1,onSubmit:M,onKeydown:i[2]||(i[2]=_e(H(()=>{},["prevent"]),["enter"]))},{default:j(()=>[a("div",Ne,[f($,{id:"return-order-data",title:e(t)("returns.Order_data")},{default:j(()=>[a("p",Pe,b(e(t)("returns.Order_data_hint")),1),f(d,{type:"text",name:"first_name",placeholder:e(t)("returns.First_name_template"),label:e(t)("returns.First_name"),validation:"required"},null,8,["placeholder","label"]),f(d,{type:"text",name:"last_name",placeholder:e(t)("returns.Last_name_template"),label:e(t)("returns.Last_name"),validation:"required"},null,8,["placeholder","label"]),f(d,{type:"email",name:"order_email",placeholder:e(t)("returns.Order_email_template"),label:e(t)("returns.Order_email"),validation:"required|*email"},null,8,["placeholder","label"]),f(d,{type:"number",name:"order_number",placeholder:e(t)("returns.Order_number_template"),label:e(t)("returns.Order_number"),step:"1",validation:"required"},null,8,["placeholder","label"]),a("label",Ie,[de(a("input",{id:"return-cash-order",type:"checkbox","onUpdate:modelValue":i[0]||(i[0]=u=>z(m)?m.value=u:null)},null,512),[[ce,e(m)]]),a("span",null,b(e(t)("returns.Cash_on_delivery_order")),1)]),e(m)?(h(),S(Z,{key:0},[a("p",Le,b(e(t)("returns.Account_number_hint")),1),f(d,{type:"text",name:"account_number",label:e(t)("returns.Account_number"),maxLength:x.accountNumberMaxLength,"validation-rules":{accountNumberManualPrefix:L},validation:e(m)?"required|accountNumberManualPrefix":"accountNumberManualPrefix","validation-messages":{accountNumberManualPrefix:e(t)("returns.Account_number_manual_prefix",{count:e(n).length})},"validation-visibility":e(F)?"live":"blur",onPaste:i[1]||(i[1]=H(u=>I(u),["prevent"]))},null,8,["label","maxLength","validation-rules","validation","validation-messages","validation-visibility"])],64)):E("",!0)]),_:1},8,["title"]),f($,{id:"return-contact-data",title:e(t)("returns.Contact_data")},{default:j(()=>[a("p",Be,b(e(t)("returns.Contact_data_hint")),1),f(d,{type:"email",name:"contact_email",placeholder:e(t)("returns.Contact_email_template"),label:e(t)("returns.Contact_email"),validation:"required|*email"},null,8,["placeholder","label"])]),_:1},8,["title"]),f($,{id:"return-products",title:e(t)("returns.Products_to_return")},{default:j(()=>[a("p",Me,b(e(t)("returns.Products_to_return_hint")),1),a("div",Oe,[(h(!0),S(Z,null,me(e(o),(u,y)=>(h(),D(Q,{key:u.id,modelValue:e(o)[y],"onUpdate:modelValue":O=>e(o)[y]=O,name:`return_line_${u.id}`,label:V(y),"remove-disabled":e(o).length<=1,onRemove:O=>A(u.id)},null,8,["modelValue","onUpdate:modelValue","name","label","remove-disabled","onRemove"]))),128)),e(F)&&!e(p)?(h(),S("p",De,b(e(t)("returns.Products_required")),1)):E("",!0),a("button",{type:"button",class:"inline-flex w-fit items-center gap-2 rounded-md border border-neutral-200 px-4 py-2 text-sm text-neutral-700 transition hover:border-neutral-300 hover:text-neutral-900",onClick:U},[f(r,{name:"tabler:plus",class:"h-5 w-5"}),te(" "+b(e(t)("returns.Add_product")),1)])])]),_:1},8,["title"])])]),_:1},8,["config"])}}},Ue={key:1,class:"container max-w-2xl py-6 lg:py-10 mb-20"},Ke={class:"flex flex-col gap-10 rounded-content-box"},je={class:"flex flex-col gap-4"},ze={class:"text-neutral-900 text-2xl font-medium font-['Albert_Sans'] leading-8"},Qe={class:"text-neutral-700 font-normal font-['Albert_Sans'] leading-6"}
1,He={id:"termsForm",class:"flex flex-col gap-4"},Ge={key:0,class:"text-neutral-900 text-xl font-medium"},We={class:"flex flex-col items-start gap-1 my-4 mx-auto w-min"},Xe=["disabled","aria-disabled"],nt={__name:"return",async setup(x){let g,t;const{t:n,te:L}=G(),N=r=>{const s=`returns.${r[0].toUpperCase()}${r.slice(1)}`;return L(s)?n(s):r},F=(r,s)=>{const u=Array.isArray(s)?s[0]:s;return typeof u!="string"?null:`${N(r)}: ${u}`},P=()=>{document.getElementById("termsForm")?.scrollIntoView({behavior:"smooth",block:"center"})},{data:k,pending:c}=([g,t]=fe(()=>J("/return/terms/")),g=await g,t(),g),_=v(0),o=v(null),m=v([]),V=v(!1),w=v(!1),p=v(null),T=v(!1),U=v(null),A=v(!1),B=R(()=>!!p.value&&p.value!=="waiting"),K=R(()=>o.value?.isValid),I=R(()=>(k.value?.length??0)>0),M=R(()=>K.value&&(!I.value||V.value)),l=()=>{const r=o.value?.getFormData();return r?{first_name:r.first_name,last_name:r.last_name,order_email:r.order_email,contact_email:r.contact_email,order_number:parseInt(r.order_number,10),account_number:r.account_number,lines:r.lines,terms_of_conditions:m.value}:null},i=async()=>{const r=l();if(!r){C("error",[{text:n("returns.Form_not_valid")}]);return}const{data:s,error:u}=await J("/return/",{method:"POST",body:r},{cache:!1});if(u.value){if(u.value?.statusCode===503)C("error",[{text:n("toast.Return_form_temporarily_unavailable")}]);else if(u.value?.statusCode===429)C("error",[{text:n("toast.Too_many_requests")}]);else{const y=u.value.data??{};if((y?.error_code!=null?y:y?.data)?.error_code==5||"terms_of_conditions"in y)C("error",[{text:n("toast.Terms_required")}]),w.value=!0,P();else{const q=Object.entries(y).map(([ne,ae])=>F(ne,ae)).filter(Boolean);C("error",[{text:q.length?q.join(". "):n("toast.Error_occurred_during_submission")}])}}w.value=!0;return}return s},d=()=>{p.value="waiting",T.value=!1,U.value?.reset()},$=async()=>{if(!A.value){if(!M.value){Q();return}if(!B.value){C("error",[{text:n("global.Authorization_captcha_error")}]);return}A.value=!0,T.value=!1;try{const{data:r}=await xe("/_turnstile/validate",{method:"POST",body:{token:p.value}},"$Ka06SbFtrE");if(!r.value?.success){C("error",[{text:n("global.Authorization_captcha_error")}]),T.value=!0,A.value=!1;return}await i()&&(C("success",[{text:n("returns.Return_submitted")}]),_.value+=1,window.scrollTo({top:0,behavior:"smooth"}),w.value=!1,m.value=[],d())}finally{A.value=!1}}},Q=()=>{if(w.value=!0,!K.value){ye("returnForm"),o.value?.scrollToFirstInvalidSection?.();return}I.value&&!V.value&&P()};return be({title:n("returns.Title")}),ve(p,()=>{p.value!==""&&p.value!=="waiting"&&(T.value=!1)}),(r,s)=>{const u=oe,y=Ee,O=Ve,W=we;return e(c)?(h(),D(u,{key:0})):(h(),S("div",Ue,[a("div",Ke,[a("section",je,[a("h1",ze,b(r.$t("returns.Title")),1),a("p",Qe,b(r.$t("returns.Instructions")),1)]),(h(),D(y,{key:e(_),ref_key:"returnForm",ref:o,"raise-validation":e(w)},null,8,["raise-validation"])),a("section",He,[e(I)?(h(),S("h3",Ge,b(r.$t("returns.Consents")),1)):E("",!0),e(I)?(h(),D(O,{key:1,modelValue:e(m),"onUpdate:modelValue":s[0]||(s[0]=q=>z(m)?m.value=q:null),terms:e(k),raiseValidation:e(w),onAllRequiredChecked:s[1]||(s[1]=q=>V.value=q),class:"w-full rounded-content-box-narrow"},null,8,["modelValue","terms","raiseValidation"])):E("",!0),a("div",We,[f(W,{ref_key:"turnstile",ref:U,modelValue:e(p),"onUpdate:modelValue":s[2]||(s[2]=q=>z(p)?p.value=q:null),options:{theme:"light"}},null,8,["modelValue"]),e(T)?(h(),S("button",{key:0,type:"button",class:"underline text-sm hover:bg-neutral-200 text-neutral-500",onClick:d},b(r.$t("global.Try_again")),1)):E("",!0)]),a("button",{id:"return-submit-button",type:"button",disabled:e(A),"aria-disabled":!e(M)||!e(B)||void 0,class:he(["cta is-primary flex w-full h-[45px] tracking-wide items-center justify-center rounded-md border border-transparent py-4 px-6 text-sm font-medium transition",e(M)&&e(B)?"opacity-100":"opacity-50 hover:cursor-pointer"]),onClick:H($,["prevent"])},b(r.$t("returns.Submit")),11,Xe)])])]))}}};export{nt 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.