PageSourceSearch

https://www.velux.ch/dist/velux-marketing/client/assets/AdvisoryPlanningForm-db790eb0.js

js velux.ch collected 2026-10-05 06:08:03 UTC 14,608 bytes, 1 lines download raw bytes

1import{f as n,D,E as ae,J as A,G as X,P as q,O as Ae,V as Ie,I as _e,w as ge,F as W,r as x,af as Le,a5 as ye,p as be,a7 as Ve,ad as Re,Z as $e,u as ve,by as Be,K as pe}from"./vendor-a0789617.js";import{g as o,h as Fe,s as Ge}from"./lodash-86ed0c75.js";import{e as se,V as Se,_ as we,S as Ue,k as He,l as je,m as Ke,u as ke,r as Ye,n as te,o as We,h as Te,a as Xe,d as qe,p as ze}from"./index-a0a0e1a1.js";import{f as Ee,a as B,b as xe,s as M,_ as Qe}from"./AdvisoryPlanningSection-711da482.js";import{_ as Je}from"./BaseModal-992a7ea0.js";import{_ as Ze}from"./AccordionList-68cfdfd3.js";import{u as Me,B as fe}from"./AdvisoryPlanningStore-b7e66e84.js";import{s as et}from"./useEncoding-54ae9046.js";import{g as tt}from"./getComponentId-400bbee2.js";import"./axios-bb6ee5b8.js";import"./vee-validate-daa3561c.js";import"./swiper-ade697ba.js";import"./vue3-lottie.es-a37e0f1c.js";import"./lottie-web-b8223fd3.js";import"./searchProviderConstants-1dc0cbda.js";import"./ApiLoaderIcon-683b30b5.js";import"./yup-69374111.js";import"./libphonenumber-js-6ce9d8b4.js";/*! @license Third-party license notices: /dist/velux-marketing/client/THIRD_PARTY_NOTICES.txt */const at={class:"max-w-[612px]"},st={key:0,class:"w-fit mx-auto"},ot={__name:"AdvisoryPlanningHeader",props:{title:{type:Object,default:()=>({})},subtitle:{type:Object,default:()=>({})},startButtonTitle:{type:Object,default:()=>({})}},emits:["moveToMain"],setup(p){const v=p,g=n(()=>o(v,"startButtonTitle.value","")),I=n(()=>g.value.length);return(E,f)=>(D(),ae("div",at,[A(se,{class:"text-48 leading-[57px] font-light mb-8 old_tablet:text-28 old_tablet:mb-7 old_tablet:leading-33 old_tablet:font-normal old_mobile:text-28 old_mobile:leading-[33px] old_mobile:mb-6 text-center",tag:"h3",field:p.title,"data-test-id":"advisory-header-title"},null,8,["field"]),A(se,{tag:"p",class:"text-20 leading-[26px] font-light mb-10 old_tablet:mb-7 old_tablet:text-18 old_tablet:leading-25 old_mobile:text-18 old_mobile:leading-[25px] old_mobile:mb-8 text-center",field:p.subtitle,"data-test-id":"advisory-header-subtitle"},null,8,["field"]),I.value?(D(),ae("div",st,[A(Se,{"icon-color":"black","background-color":"bg-old_velux-red-900","hover-background-color":"bg-old_velux-red-600",large:"","data-test-id":"advisory-header-button",class:"whitespace-nowrap",onClick:f[0]||(f[0]=Ie(S=>E.$emit("moveToMain"),["prevent"]))},{default:X(()=>[q("span",null,Ae(g.value),1)]),_:1})])):_e("",!0)]))}};const lt={class:"flex justify-center old_mobile:flex-col"},nt={class:"mt-10 max-w-[612px] old_mobile:max-w-full"},it={__name:"AdvisoryPlanningFooter",props:{footerText:{type:Object,default:()=>({})}},setup(p){return(v,g)=>(D(),ae("div",lt,[q("div",nt,[A(se,{class:"text-20 leading-[26px] font-light old_tablet:text-18 old_tablet:leading-[25px] text-old_velux-grey-700",tag:"p",field:p.footerText,"data-test-id":"footer-text"},null,8,["field"])])]))}},rt=we(it,[["__scopeId","data-v-d9d067f0"]]),dt={__name:"AdvisoryPlanningDialog",props:{isDialogOpened:{type:Boolean,default:!1},modalData:{type:Object,required:!0}},emits:["close-dialog"],setup(p,{emit:v}){const g=p,I=v,E=x(!1),f=n(()=>({value:o(g,"modalData.popupTitle","")})),S=n(()=>({value:o(g,"modalData.popupDescription","")})),P=n(()=>o(g,"modalData.preventClosing",!1)),C=()=>{E.value||I("close-dialog")};return ge(()=>g.isDialogOpened,()=>{E.value=g.isDialogOpened}),(h,y)=>(D(),W(Je,{modelValue:E.value,"onUpdate:modelValue":[y[0]||(y[0]=U=>E.value=U),C],"custom-classes":"text-center old_mobile:w-100 max-w-[90vw] old_xl:max-w-[50vw] py-[58px] old_sm:py-[108px] px-6 old_sm:px-[126px]","prevent-closing":P.value},{default:X(()=>[A(se,{tag:"h2",class:"text-24 old_sm:text-36 leading-120 mb-10 text-old_velux-black",field:f.value},null,8,["field"]),A(Ue,{class:"text-20 old_sm:text-24",field:S.value},null,8,["field"])]),_:1},8,["modelValue","prevent-closing"]))}},G={NO_IMAGE:10,IMAGE_FLOOR_COMMENT:20,IMAGE_COMMENT:30,IMAGE_NO_COMMENT:40,ALL_IMAGES:50},ut={COUNTRY_DROPDOWN:"dropdown_field_66dfe9ba-1d92-4e7b-95d1-2e4c12ad0fc6",MARKETING_CHECKBOX:"checkbox_field_ad52a2d7-a996-4599-9850-1665132b7738"},Ne=He.getConfiguration(),Ce={"X-Api-Id":Ne.imageServiceId,"X-Api-Key":Ne.imageServiceKey},De={"Content-type":"multipart/form-data",...Ce};
1function ct(p){const v=xe.eventIds.GENERATE_LEAD,g=xe.eventIds.FORM_SUBMIT,{getCookieByName:I}=We(),{currentRoute:E}=Le(),f=je(),{logErrorMessage:S}=Ke(),{trackEvent:P}=Te(),C=ke(),h=Me(),y=n(()=>h.sendToLearnUpon),U=n(()=>o(C,"sitecoreContext.language")||""),oe=n(()=>{let e=`${f.apiHost}/api/Velux/AdvisoryPlanningForm/SubmitForm`;const r=o(p,"fields.id","");if(!y.value){e+=`?datasourceId=${r}&language=${U.value}`;const u=C.getSiteName();u&&(e+=`&sitename=${u}`)}return e}),{setFormProcessingStatus:L}=h,_=x(!1),w=x(),b=x(ye()),z=n(()=>h.fileFormFieldNames),H=n(()=>h.relatedMultiselectFieldName),Q=n(()=>o(p,"fields.thankYouPage")||null),j=n(()=>{const e=o(C,"sitecoreContext.language","");return e==="en"?"en-EN":e}),J=n(()=>{const e=o(p,"fields.sections");return e&&e[0]?.steps?e.reduce((r,u)=>r=[...r,...u.steps],[]):o(p,"fields.steps",[])}),V=n(()=>J.value.reduce((e,r)=>e=[...e,...r.fields],[])),le=n(()=>!!V.value.find(e=>e.type===Ee.UPLOAD_IMAGES_FIELD)),ne=n(()=>{const e=V.value.find(r=>r.serverName===ut.MARKETING_CHECKBOX);return o(e,"internalName.value")}),K=n(()=>o(p,"fields.imagesServiceUrl")||""),N=x(null),k=(e,r)=>Object.keys(e).filter(u=>u.startsWith(r))||[],Z=({formFieldsData:e,meta:r})=>{if(!r.value.valid||_.value)return;const u=k(e,B.EMAIL),F=k(e,B.FIRST_NAME),d=k(e,B.LAST_NAME);u.length>0&&u.forEach(m=>{if(!e[m]?.trim()){const ce=m.match(/\d+$/)?.[0]||"",me=F.find($=>$.endsWith(ce))||B.FIRST_NAME,O=d.find($=>$.endsWith(ce))||B.LAST_NAME,R=e[me]?.replace(/ /g,"-")||"",Y=e[O]?.replace(/ /g,"-")||"";e[m]=`${R}.${Y}.${ye()}@velux.com`}});for(const m in e)h.isDropdownField(m)&&!e[m]?.value&&(e[m]="");_.value=!0;const{hs_cookie:i,br_cookie:c}=ie(),{filteredFormFieldsData:l,hiddenFields:s,imageFields:t}=ee(e);let a={...s,...l.formData,page_name:E.value.name};return a.send_to_learn_upon=y.value,y.value&&(a=Ye(a)),y.value||(a.as_terms_and_conditions=!0,a.url=window.location.href,a.hs_cookie=i,a.br_cookie=c,a.as_sc_id=b.value),{reqData:a,filteredFormFieldsData:l,imageFields:t}},ie=()=>{const e=I("hubspotutk")||"",r=I("__exponea_etc__")||"";return{hs_cookie:e,br_cookie:r}},ee=e=>{const r=[],u=V.value.filter(i=>!i.internalName?.value?.length),F=Object.keys(e).reduce((i,c)=>{const l=u.find(T=>o(T,"serverName")===c),s=V.value.find(T=>{const Oe=o(T,"internalName.value")||o(T,"serverName"),Pe=new RegExp(/_(\d+)$/);return Oe===c.replace(Pe,"")}),a=(T=>T?.countryData?T.countryData.hubspotCountryCode:T)(e[c]),m=z.value.includes(c);m&&Array.isArray(a)&&r.push({key:c,value:a||[]});const me=c.includes("@index@");if(l||m||me)return i;const O=o(s,"internalName.value")||c,R=o(s,"analyticsName.value")||c;i={formData:{...i.formData,[O]:a},analyticsData:{...i.analyticsData,[R]:a}};const Y=o(i.formData[O],"value.value",!1);if(Y)return i.formData[O]=Y,i.analyticsData[R]=Y,i;const $=o(i.formData[O],"Name",!1);return $&&(i.formData[O]=$,i.analyticsData[R]=o(i.analyticsData[R],"Name")),i},{}),d=J.value.reduce((i,c)=>(c.fields.filter(s=>s.type===Ee.HIDDEN_FIELD).forEach(s=>{const t=o(s,"internalName.value","key"),a=o(s,"value.value","value");if(!t.length){const m=o(s,"name");S({message:`hidden field ${m} hasn't mandatory property internalName`,componentName:"AdvisoryPlanningForm - hiddenField"});return}i[t]=a}),i),{});return{filteredFormFieldsData:F,hiddenFields:d,imageFields:r}},re=async(e,r)=>{const u=e.formData[ne.value];P(r,g,"Advisory Form",{isAllowEmptyValues:!0});const F=["firstname","lastname","phone","email","city","zip","address"],d={...e.analyticsData};for(const i in d)F.includes(i)&&(d[i]=await et(d[i].toString()));P(r,v,"Advisory Form",{additionalData:{lead_type:u?"SQL and MQL":"SQL",...d},isAllowEmptyValues:!0})},he=(e,r)=>{let u=G.NO_IMAGE;const F=["upload_floor","floor"],d=new FormData,i=r[B.EMAIL],c=e.map(({value:t})=>!!Fe(t)).filter(t=>t),l=e.find(({key:t,value:a})=>F.includes(t)&&!!Fe(a)),s=H.value.some(t=>r[t]?.length);switch(!0){case c.length===e.length:u=G.ALL_IMAGES;break;case(l&&s):u=G.IMAGE_FLOOR_COMMENT;break;case(c.length>0&&s):u=G.IMAGE_COMMENT;break;case c.length>0:u=G.IMAGE_NO_COMMENT;break;default:u=G.NO_IMAGE}return e.forEach((t,a)=>{d.append(`Categories[${a}].Name`,t.key),t.value.length&&t.value.forEach(m=>{d.append(`Categories[${a}].Files`,m)})}),i&&d.append("Emails",i),d.append("language",j.value),d.append("formid",b.value),{formData:d,hubspotImageCode:u}},de=async(e,r,u,F)=>{w.value=void 0,L(fe.Loading);try{let d={},i={};if(le.value){const{formData:s,hubspotImageCode:t}
1=he(F,e),{data:a}=await te(`${K.value}/api/forms/create`,s,De);N.value=a.id,d={as_form_link:o(p,"fields.form_link","").replace("#formid#",N.value).replace("#lang#",j.value),as_upload_key:a.password,as_steps:t}}else if(!y.value){const{data:s}=await te(`${K.value}/api/Forms/GenerateFormPassword`,null,Ce);i={as_upload_key:s}}const{data:c}=await te(oe.value,{...e,...d,...i});if(c==="AlreadyEnrolled"||c==="Error")throw new Error(c);h.isLearnUponForm?(h.hide(),h.resetLearnUponForm()):L(fe.Success),re(r,u);const l=o(Q,"value.value.href");l?window.open(l,"_self").focus():window.open(c.redirect_url,"_self").focus()}catch(d){L(fe.Error),_.value=!1,w.value=d.message,(d.message==="Error"||d.message==="AlreadyEnrolled")&&(w.value=d.message),N.value&&ue(),S({message:"Error during submitting form",componentName:"useFormProcessing"})}finally{_.value=!1,N.value=null}},ue=async()=>{try{await te(`${K.value}/api/forms/remove?formId=${N.value}`,{},De)}catch{S({message:"Error during removing image service form",componentName:"useFormProcessing"})}};return{manageFormData:Z,submitForm:de,errorCode:w}}const mt={LEARN_UPON_FORM:"LearnUpon Form"};const vt=["id","data-section-name"],pt={__name:"AdvisoryPlanningForm",props:{fields:{type:Object,required:!0},rendering:{type:Object,required:!0}},setup(p){const v=p,{manageFormData:g,submitForm:I,errorCode:E}=ct(v),f=Me(),{renderingIndex:S}=Xe(),P=n(()=>o(v,"rendering.uid")||""),C=xe.eventIds.FORM_VIEWED,{trackEvent:h}=Te(),{wrapper:y,isVisibleContent:U}=qe(0,!0),oe=ke(),L=x(null),_=x([]),w=x([]),b=x(null),z=x(!1),H=x(!1),Q=x(!1),j=n(()=>o(v,"fields.showHeader.value")||!1),J=n(()=>{const l=w.value[N.value]||{};return{fields:{page:{Title:l.headerTitle,"Intro Text":l.headerDescription},datasource:{"Image 1":l.headerImage1,"Image 2":l.headerImage2,"Anchor Text":l.headerAnchorText},anchor:"form-wrapper",isRichTextDescription:!0}
1,params:{"Background ColorValue":"#F6EBD8"}}}),V=n(()=>o(v,"fields.headerTitle")||{}),le=n(()=>o(v,"fields.headerSubtitle")||{}),ne=n(()=>o(v,"fields.headerStartButtonTitle")||{}),K=n(()=>f.submitFormData),N=n(()=>_.value.findIndex(({id:l})=>l===b.value)),k=({status:l})=>l===M.inactive,Z=n(()=>o(v,"fields.analyticParameters",[])),ie=n(()=>oe.getPlaceholderComponentData("AdvisoryPlanningForm")?.fields.template===mt.LEARN_UPON_FORM);f.isLearnUponForm=ie.value;const ee=()=>{L.value.scrollIntoView({block:"start",behavior:"smooth"})},re=()=>{H.value=!1,setTimeout(()=>{f.setDialogData({})},300)};(()=>{const l=o(v,"fields.sections",[]),s=structuredClone(Be(l)),t=o(v,"fields.steps",[]);t.length&&Ge(s,"[0].steps",t),_.value=s.map((a,m)=>(a.valid=!1,w.value.push(a.header),m?(a.status=M.inactive,a):(a.status=M.active,b.value=a.id,a)))})();const de=n(()=>o(v,"fields.searchProvider")||{}),ue=n(()=>o(v,"fields.footerText")||{}),e=n(()=>_.value.findIndex(({id:l})=>l===b.value)),r=n(()=>e.value+1===_.value.length),u=n(()=>o(v,"fields.nextSectionButtonTitle",{value:"Next"})),F=n(()=>f.showForm.value),d=l=>{_.value=_.value.map((s,t)=>{const a=N.value>t;switch(!0){case s.id===l:return s.status=M.active,b.value=s.id,ee(),s;case a:return s.status=M.completed,s;case s.status!==M.inactive:return s.status=M.completed,s;default:return s}})},i=(l,s)=>{s===M.completed&&d(l)};ge(U,l=>{!l||Q.value||(h(Z.value,C,"Advisory Form",{isAllowEmptyValues:!0}),Q.value=!0)}),ge(()=>f.dialogData,()=>{H.value=!!f.dialogData?.popupDescription}),be("searchProvider",de),be("errorCode",E);const c=async({meta:l})=>{if(!r.value){const m=_.value[e.value+1];j.value&&setTimeout(()=>y.value.scrollIntoView({block:"start",behavior:"auto"})),d(m.id);return}const{reqData:s,filteredFormFieldsData:t,imageFields:a}=g({formFieldsData:K.value,meta:l});z.value=!0,await I(s,t,Z.value,a),z.value=!1};return(l,s)=>Ve((D(),ae("div",{id:ve(tt)(p.rendering),ref_key:"wrapper",ref:y,"data-section-name":ve(S)(P.value).id,class:"py-25 old_mobile:py-15 px-10 old_mobile:px-4"},[j.value?(D(),W(ze,$e({key:0},J.value,{class:"mx-[-40px] old_mobile:mx-[-16px] mt-[-100px] old_mobile:mt-[-60px]"}),null,16)):(D(),W(ot,{key:1,class:"m-auto",title:V.value,subtitle:le.value,"active-section-index":N.value,headers:w.value,"start-button-title":ne.value,"data-test-id":"advisory-header",onMoveToMain:ee},null,8,["title","subtitle","active-section-index","headers","start-button-title"])),q("div",{id:"form-wrapper",ref_key:"main",ref:L,class:"pt-[120px]"},[A(Ze,{items:_.value,"active-item-id":b.value},{header:X(({accordionItem:t,open:a})=>[t.id!==b.value?(D(),W(Se,{key:0,"empty-styles":"",class:pe(["pl-1 old_tablet:pl-2 flex items-center gap-10 old_tablet:gap-9 old_mobile:gap-5 text-11 font-normal leading-[13px] tracking-[.06em] uppercase min-h-[40px] m-auto max-w-[1360px]",{"cursor-default text-old_velux-grey-350":k(t)&&!a,"text-old_velux-grey-500":!k(t)&&!a}]),onClick:Ie(m=>i(t.id,t.status),["prevent"])},{default:X(()=>[q("span",{class:pe(["h-[5px] w-[5px] rounded-full border",{"bg-old_velux-grey-350 border-old_velux-grey-350":k(t)&&!a,"bg-old_velux-grey-500 border-old_velux-grey-500":!k(t)&&!a}]),"data-test-id":"step-status"},null,2),q("span",null,Ae(t.title?.value),1)]),_:2},1032,["class","onClick"])):_e("",!0)]),body:X(({accordionItem:t})=>[t.id===b.value?(D(),W(Qe,{key:0,class:pe({"pt-3.5":t.id===b.value}),"section-title":t.title,"steps-data":t.steps,"next-button-title":u.value,"section-status":t.status,onFormHandler:c},null,8,["class","section-title","steps-data","next-button-title","section-status"])):_e("",!0)]),_:1},8,["items","active-item-id"])],512),A(rt,{class:"pl-[10px] mx-auto max-w-[1360px] old_tablet:max-w-full",sections:_.value,"footer-text":ue.value,"data-test-id":"advisory-footer"},null,8,["sections","footer-text"]),A(dt,{"is-dialog-opened":H.value,"modal-data":ve(f).dialogData,onCloseDialog:re},null,8,["is-dialog-opened","modal-data"])],8,vt)),[[Re,F.value]])}},Ct=we(pt,[["__scopeId","data-v-e6a8d92f"]]);export{Ct 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.