import{_ as ee}from"./CMSField.195e7e97.js";import{k as O,m as w,C as te,D as N,E as le,G as oe,H as j,r as K,h as I,o as g,c as p,e as c,I as ne,B as b,J as V,K as M,L as A,F as q,f as Y,t as v,x as Z,w as S,M as se,N as ae,O as T,P as re,d as F,Q as G,R as J,g as n,S as ie,T as D,U as de,V as ce,u as ue,l as me,W as fe,X as ge}from"./entry.0497f6fc.js";import{_ as pe}from"./arrow.d05b80a6.js";import"./_...all_.8346ae92.js";const he={props:{text:{},clickOnly:{}},setup(e){let o=0;const t=w(!1),l=te(e).clickOnly,s=N({}),i=w(null),f=w(null),d=N({left:"-8px",right:"-8px",top:"calc(100% + 8px)",bottom:"calc(100% + 8px)"});le(()=>{document.documentElement.clientWidth<768&&(l.value=!0),window.addEventListener("scroll",_)}),oe(()=>{window.removeEventListener("scroll",_)});const _=()=>{t.value&&(o=0,t.value=!1)},x=r=>{l.value&&r==="click"&&(t.value=!t.value),!l.value&&r==="hover"&&(t.value=!0),o=0},a=r=>{(r==="click"||!l.value&&r==="hover")&&(t.value=!1),o=200},h=()=>{const r=$(i.value);for(const u in r)r[u]?s[u]=d[u]:s[u]="auto";document.documentElement.clientWidth>768?(s.top==="auto"&&(s.bottom="calc(100% + 8px)"),s.left==="auto"&&(s.right="-8px")):s.top=`${y()}px`},$=r=>{const u=r.getBoundingClientRect(),m={};return m.top=u.top<0,m.left=u.left<0,m.bottom=u.bottom>(window.innerHeight||document.documentElement.clientHeight),m.right=u.right>(window.innerWidth||document.documentElement.clientWidth),m.any=m.top||m.left||m.bottom||m.right,m},y=()=>{const r=f.value.getBoundingClientRect(),u=window.pageYOffset||document.documentElement.scrollTop||document.body.scrollTop,m=document.documentElement.clientTop||document.body.clientTop||0;return Math.round(r.top+u-m-window.pageYOffset)};return j(t,()=>setTimeout(h,o)),{isOpen:t,isClickOnly:l,style:s,tooltipText:i,tooltipIcon:f,show:x,close:a}}},_e={class:"formField__TooltipIcon",ref:"tooltipIcon"},ye=["innerHTML"];function ve(e,o,t,l,s,i){const f=K("click-outside");return I((g(),p("div",{class:M(["formField__Tooltip",{isClickOnly:l.isClickOnly,isOpen:l.isOpen,isArrowOnBottom:l.style.top!=="auto"}]),onClick:o[0]||(o[0]=A(d=>l.show("click"),["prevent"])),onMouseenter:o[1]||(o[1]=A(d=>l.show("hover"),["prevent"])),onMouseleave:o[2]||(o[2]=A(d=>l.close("hover"),["prevent"]))},[c("span",_e,"i",512),t.text!==void 0||e.$slots.default?(g(),p("div",{key:0,class:"formField__TooltipText",ref:"tooltipText",style:ne(l.style)},[t.text?(g(),p("div",{key:0,innerHTML:t.text},null,8,ye)):b("",!0),V(e.$slots,"default")],4)):b("",!0)],34)),[[f,()=>l.close("click")]])}const be=O(he,[["render",ve]]),xe={props:{forID:{type:String},label:{type:String},tooltip:{type:[String,Boolean]},hasTooltip:{type:Boolean,default:!1},tooltipClickOnly:{type:Boolean,default:!1}}},$e=["for"];function ke(e,o,t,l,s,i){var d,_;const f=be;return t.label!==void 0||t.tooltip!==void 0?(g(),p("label",{key:0,class:"form__Label",for:t.forID},[t.label!==void 0?(g(),p(q,{key:0},[Y(v(t.label),1)],64)):b("",!0),t.hasTooltip||(_=(d=e.$parent)==null?void 0:d.$slots)!=null&&_.tooltip?(g(),Z(f,{key:1,text:t.tooltip,"click-only":t.tooltipClickOnly},{default:S(()=>[V(e.$slots,"default")]),_:3},8,["text","click-only"])):b("",!0)],8,$e)):b("",!0)}const Q=O(xe,[["render",ke]]),Fe={props:{error:{type:[Array,String]},className:{type:String}}},we={key:0,class:"form__Errors"},Ee=["textContent"],Te=["textContent"];function Ve(e,o,t,l,s,i){return t.error?(g(),p("ul",we,[(g(!0),p(q,null,se(Array.isArray(t.error)?t.error:[t.error],f=>(g(),p("li",{class:M(["form__Error",t.className]),textContent:v(f)},null,10,Ee))),256))])):(g(),p("div",{key:1,textContent:v(t.error)},null,8,Te))}const B=O(Fe,[["render",Ve]]);function X(e){let o,t=e[0],l=1;for(;l<e.length;){const s=e[l],i=e[l+1];if(l+=2,(s==="optionalAccess"||s==="optionalCall")&&t==null)return;s==="access"||s==="optionalAccess"?(o=t,t=i(t)):(s==="call"||s==="optionalCall")&&(t=i((...f)=>t.call(o,...f)),o=void 0)}return t}const H=()=>({modelValue:{},id:{type:[String,Number]},name:{type:[String,Number]},label:{type:String},errors:{type:[Array,String]},info:{type:String},inline:{type:Boolean,default:!1},tooltip:{type:[String,Boolean],default:!1},tooltipClickOnly:{type:Boolean,default:!1},validate:{type:Object},disabled:{type:Boolean,default:!1},required:{type:Boolean,default:!1}}),R=(e,o)=>{let t=null;const l=e.id||w(ae(10)),s=w([]),i=w(!1),f=T(()=>({forID:l.value,label:e.label,tooltip:e.tooltip,hasTooltip:h.value,tooltipClickOnly:e.tooltipClickOnly})),d=T(()=>e.disabled!==!1),_=T(()=>e.required!==!1),x=T(()=>X([y,"access",m=>m.value,"optionalAccess",m=>m.length])>0),a=T(()=>e.inline!==!1),h=T(()=>e.tooltip!==!1&&e.tooltip!==""||re().tooltip!==void 0),$=T(()=>![null,void 0].includes(r.value)&&(r.value.toString().length>0||r.value.toString()!=="")),y=T(()=>{const m=s.value?[...s.value]:[];if(e.errors){const C=Array.isArray(e.errors)?e.errors:[e.errors];m.unshift(...C)}return m}),r=T({get(){return e.modelValue},set(m){o("update:modelValue",m)}});function u(m){i.value=m}return j(r,()=>{e.validate&&(clearTimeout(t),t=setTimeout(()=>{Ce(e.validate,e.modelValue,{...e,errorList:s,fieldValue:r})},500))}),{uniqueID:l,fieldValue:r,isError:x,isInline:a,isDisabled:d,isRequired:_,hasValue:$,hasFocus:i,hasTooltip:h,mergedErrors:y,formLabelProps:f,setFocus:u}},k=(e,o)=>{if(e!==void 0)return typeof e=="string"?e:e[o]},P={required(e,o){return{isError:[void 0,null].includes(e)||e.length===0||e==="",message:k(o.message,"required")||"Ovo polje je obavezno"}},number(e,o,t){if(o.strict)e=parseInt(e.toString().replace(/[^\d]/g,"")),t.fieldValue.value=isNaN(e)?"":e;else return{isError:!/^\d*$/.test(e.toString()),message:k(o.message,"number")||"Must be a number"}},phone(e,o,t){if(o.strict)t.fieldValue.value=e.replace(/[^\+\d]/g,"");else return{isError:!/[^\+\d]*$/.test(e),message:k(o.message,"phone")||"Must be a phone number"}},decimal(e,o,t){return o.strict&&(t.fieldValue.value=e.toString().replace(/[^\d|\.]/g,""),t.fieldValue.value.split(".").length-1>1&&(t.fieldValue.value=e.slice(0,-1))),{isError:!/^(?!(0\d))\d+\.\d+$/.test(e),message:k(o.message,"decimal")||"Must be a decimal number"}},email(e,o){return{isError:!/^(([^<>()[\]\\.,;:\s@\"]+(\.[^<>()[\]\\.,;:\s@\"]+)*)|(\".+\"))@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\])|(([a-zA-Z\-0-9]+\.)+[a-zA-Z]{2,}))$/.test(e),message:k(o.message,"email")||"Molimo unesite ispravnu e-mail adresu"}},minlength(e,o,t){let l=parseInt(o.minlength||t.minlength);return e=Array.isArray(e)?e:e.toString(),{isError:e.length<l,message:k(o.message,"minlength")||`Min length is ${l}`}},maxlength(e,o,t){let l=parseInt(o.maxlength||t.maxlength);if(e=Array.isArray(e)?e:e.toString(),o.strict)t.fieldValue.value=t.fieldValue.value.slice(0,l);else return{isError:e.length>l,message:k(o.message,"maxlength")||`Max length is ${l}`}},min(e,o,t){let l=parseInt(o.min||t.min);return{isError:e<l,message:k(o.message,"min")||`Number must be larger than ${l} or equal`}},max(e,o,t){let l=parseInt(o.max||t.max);return{isError:e>l,message:k(o.message,"max")||`Number must be larger than ${l} or equal`}},pattern(e,o){let t="";for(let l of o.pattern)/^((?![`~!@#$%^&*()_|+\-=?;:'",.<>\{\}\[\]\\\/]).)*$/.test(l)?t+=".":t+="\\"+l;return{isError:!new RegExp(t+"$").test(e),message:k(o.message,"pattern")||`Pattern must be ${o.pattern}`}},date(e,o){let t=e.split(o.delimiter),l=o.pattern.split(o.delimiter),s=t[l.findIndex(d=>d.toLowerCase().includes("d"))],i=t[l.findIndex(d=>d.toLowerCase().includes("m"))],f=t[l.findIndex(d=>d.toLowerCase().includes("y"))];return{isError:[s,i,f].some(d=>d===void 0||d.length===0)||!Date.parse(`${i}-${s}-${f}`),message:k(o.message,"date")||"Date is not valid"}}},Ce=(e,o,t)=>{const l=[];typeof e.type=="string"&&(e.type=[e.type]);for(let s of e.type)if(typeof s=="string"){const i=P[s](o,e,t);i&&i.isError&&l.push(P[s](o,e,t))}else{const i=!Object.values(s)[0](o),f=Object.keys(s)[0];i&&e.message&&e.message[f]&&l.push({isError:i,message:e.message[f]})}l.length>0?t.errorList.value=l.map(s=>s.message):X([t,"optionalAccess",s=>s.errorList,"optionalAccess",s=>s.value,"optionalAccess",s=>s.length])>0&&(t.errorList.value=void 0)},Le={class:"textField__Wrapper"},Se={key:0,class:"textField__Prepend"},Ie=["id","name","type","disabled","required","min","max","minlength","maxlength","placeholder"],Me={key:1,class:"textField__Append"},De=["innerHTML"],Ae={__name:"TextField",props:{...H(),placeholder:{type:[String,Number]},type:{type:String,default:"text"},minlength:{type:[String,Number]},maxlength:{type:[String,Number]},min:{type:[String,Number]},max:{type:[String,Number]}},emits:["update:modelValue"],setup(e,{emit:o}){const t=e,{isError:l,isDisabled:s,isRequired:i,isInline:f,hasValue:d,fieldValue:_,mergedErrors:x,uniqueID:a,formLabelProps:h,hasFocus:$,setFocus:y}=R(t,o);return(r,u)=>{const m=Q,C=B;return g(),p("div",{class:M(["formField textField",{hasFocus:n($),hasValue:n(d),isError:n(l),isDisabled:n(s),isInline:n(f)}])},[V(r.$slots,"default"),c("div",Le,[F(m,G(J(n(h))),{default:S(()=>[V(r.$slots,"tooltip")]),_:3},16),r.$slots.prepend?(g(),p("div",Se,[V(r.$slots,"prepend")])):b("",!0),I(c("input",{id:n(a),name:r.name,type:e.type,disabled:n(s),required:n(i),min:e.min,max:e.max,minlength:e.minlength,maxlength:e.maxlength,placeholder:e.placeholder,onFocus:u[0]||(u[0]=E=>n(y)(!0)),onBlur:u[1]||(u[1]=E=>n(y)(!1)),"onUpdate:modelValue":u[2]||(u[2]=E=>D(_)?_.value=E:null)},null,40,Ie),[[ie,n(_)]]),r.$slots.append?(g(),p("div",Me,[V(r.$slots,"append")])):b("",!0)]),F(C,{error:n(x),className:"textField__Error"},null,8,["error"]),r.info?(g(),p("span",{key:0,class:"textField__Info form__Info",innerHTML:r.info},null,8,De)):b("",!0)],2)}}},Ne=["innerHTML"],Oe={class:"textareaField__Wrapper"},qe=["id","name","disabled","required","placeholder","rows","maxlength","tabindex"],Be=["textContent"],He={__name:"TextareaField",props:{...H(),placeholder:{type:[String,Number]},maxlength:{type:Number},rows:{default:1}},emits:["update:modelValue"],setup(e,{emit:o}){const t=e,{isError:l,isInline:s,isDisabled:i,isRequired:f,fieldValue:d,mergedErrors:_,uniqueID:x,hasValue:a,formLabelProps:h,hasFocus:$,setFocus:y}=R(t,o);return(r,u)=>{const m=Q,C=B;return g(),p("div",{class:M(["formField textareaField",{hasFocus:n($),hasValue:n(a),isError:n(l),isDisabled:n(i),isInline:n(s)}])},[V(r.$slots,"default"),r.info?(g(),p("span",{key:0,class:"textareaField__Info form__Info",innerHTML:r.info},null,8,Ne)):b("",!0),c("div",Oe,[F(m,G(J(n(h))),{default:S(()=>[V(r.$slots,"tooltip")]),_:3},16),I(c("textarea",{id:n(x),name:r.name,disabled:n(i),required:n(f),placeholder:e.placeholder,rows:e.rows,maxlength:e.maxlength,tabindex:n(i)?-1:0,onFocus:u[0]||(u[0]=E=>n(y)(!0)),onBlur:u[1]||(u[1]=E=>n(y)(!1)),"onUpdate:modelValue":u[2]||(u[2]=E=>D(d)?d.value=E:null)},null,40,qe),[[de,n(d)]]),e.maxlength?(g(),p("span",{key:0,textContent:v(`${n(d).length} / ${e.maxlength}`)},null,8,Be)):b("",!0)]),F(C,{error:n(_),className:"textareaField__Error"},null,8,["error"])],2)}}},Re={class:"checkboxField__Wrapper"},We=["id","name","value","disabled","required"],Ue=["for","tabindex"],ze=["for"],Pe={__name:"CheckboxField",props:{...H(),value:{},tabindex:{type:[Number,String]},toggle:{type:Boolean,default:!1},dark:{type:Boolean,default:!1}},emits:["update:modelValue"],setup(e,{emit:o}){const t=e,{mergedErrors:l,fieldValue:s,isDisabled:i,isRequired:f,isError:d,uniqueID:_}=R(t,o),x=a=>{[0,13,32].includes(a.keyCode)&&i.value===!1&&(a.preventDefault(),a.target.parentNode.querySelector('[type="checkbox"]').click())};return(a,h)=>{const $=B;return g(),p("div",{class:M(["formField checkboxField",{"checkboxField--Toggle":e.toggle,isDark:e.dark,isError:n(d),isDisabled:n(i)}])},[c("div",Re,[I(c("input",{id:n(_),name:a.name,value:e.value,disabled:n(i),required:n(f),type:"checkbox",tabindex:"-1","onUpdate:modelValue":h[0]||(h[0]=y=>D(s)?s.value=y:null)},null,8,We),[[ce,n(s)]]),c("label",{class:"checkboxField__Box",for:n(_),tabindex:!n(i)&&e.tabindex===void 0?0:-1,onKeydown:x},null,40,Ue),c("div",null,[c("label",{for:n(_),class:"checkboxField__Label form__Label"},[V(a.$slots,"default",{},()=>[Y(v(a.label),1)])],8,ze),F($,{error:n(l),className:"checkboxField__Error"},null,8,["error"])])])],2)}}},je=""+globalThis.__publicAssetsURL("resources/images/girl-plane.png"),Ke=""+globalThis.__publicAssetsURL("resources/images/propeller.svg"),Ye=""+globalThis.__publicAssetsURL("resources/images/icons/mail.svg"),Ze={class:"contact"},Ge={class:"contact__Header container"},Je=["textContent"],Qe=["innerHTML"],Xe=c("div",{class:"contact__HeaderImage"},[c("img",{"data-not-lazy":"",src:je,alt:"girl",class:"girl",width:"620",height:"490"}),c("img",{"data-not-lazy":"",src:Ke,alt:"propeller",class:"propeller",width:"113",height:"113"})],-1),et={class:"contact__Information container"},tt={"data-src":Ye,alt:"Maro World",width:"70",height:"70"},lt={key:0,class:"contact__MailMessageDisplay"},ot={key:1,class:"contact__MailMessageDisplay"},nt={href:"https://www.valamar.com/en/privacy-policy",target:"_blank",rel:"noopener noreferrer"},st=["disabled"],ct={__name:"MaroContactUs",props:["page"],setup(e){const o=w(null),{lang:t}=ue(),l=N({full_name:"",email:"",message:""}),s=w({}),i=w(!1),f=w(!1),d=w(!1);function _(){const a=document.querySelector("textarea");a.value!==""?a.style.height=`${a.scrollHeight}px`:a.style.height="62px"}async function x(){try{await ge("maro-world/contact-form/",{method:"POST",body:{full_name:l.full_name,email:l.email,message:l.message}}),i.value=!0;for(let a of Object.keys(l))l[a]="";window.dataLayer=window.dataLayer||[],dataLayer.push({event:"gtmt.formSubmit",trackingData:{formName:"Contact us form",pageType:"maro world contact us",siteLanguage:t.value}})}catch(a){a.response.status===400?s.value=a.response._data:f.value=!0}}return(a,h)=>{var W,U,z;const $=ee,y=Ae,r=He,u=me("i18n-t"),m=Pe,C=pe,E=K("lazy-load");return g(),p("div",Ze,[c("div",Ge,[c("div",null,[c("h1",{textContent:v(e.page.title)},null,8,Je),e.page.lead?(g(),p("div",{key:0,innerHTML:("cleanWagtailRichText"in a?a.cleanWagtailRichText:n(fe))(e.page.lead)},null,8,Qe)):b("",!0)]),Xe]),c("div",et,[c("div",null,[e.page.content?(g(),Z($,{key:0,data:e.page.content},null,8,["data"])):b("",!0)]),c("div",null,[c("div",{class:"contact__Mail",ref_key:"contactForm",ref:o},[I(c("img",tt,null,512),[[E]]),n(f)?(g(),p("div",lt,[c("p",null,v(a.$t("contact.error")),1),c("span",null,v(a.$t("contact.maroWorld")),1)])):n(i)?(g(),p("div",ot,[c("p",null,v(a.$t("contact.success")),1),c("span",null,v(a.$t("contact.maroWorld")),1)])):(g(),p(q,{key:2},[c("p",null,v(a.$t("contact.instruction")),1),F(y,{ref:"nameField",modelValue:n(l).full_name,"onUpdate:modelValue":h[0]||(h[0]=L=>n(l).full_name=L),label:a.$t("contact.nameLabel"),errors:n(s).full_name?a.$t(`formErrors.${(W=n(s).full_name[0])==null?void 0:W.code}`):""},null,8,["modelValue","label","errors"]),F(y,{modelValue:n(l).email,"onUpdate:modelValue":h[1]||(h[1]=L=>n(l).email=L),label:a.$t("contact.emailLabel"),errors:n(s).email?a.$t(`formErrors.${(U=n(s).email[0])==null?void 0:U.code}`):""},null,8,["modelValue","label","errors"]),F(r,{modelValue:n(l).message,"onUpdate:modelValue":h[2]||(h[2]=L=>n(l).message=L),rows:"1",label:a.$t("contact.messageLabel"),onInput:_,errors:n(s).message?a.$t(`formErrors.${(z=n(s).message[0])==null?void 0:z.code}`):""},null,8,["modelValue","label","errors"]),F(m,{modelValue:n(d),"onUpdate:modelValue":h[3]||(h[3]=L=>D(d)?d.value=L:null)},{default:S(()=>[F(u,{tag:"span",keypath:"contact.privacyCheckbox",scope:"global"},{link:S(()=>[c("a",nt,v(a.$t("contact.privacyCheckboxLink")),1)]),_:1})]),_:1},8,["modelValue"]),c("button",{type:"button",class:"button--WithIcon button--White blueLight",onClick:x,disabled:!n(d)||!n(l).full_name.length||!n(l).email.length,"aria-label":"submit form button"},[c("span",null,v(a.$t("contact.sendButton")),1),c("div",null,[F(C)])],8,st)],64))],512)])])])}}};export{ct as default};
