@builder.io/sdk-vue
Version:
Builder.io SDK for Vue
33 lines (30 loc) • 107 kB
JavaScript
"use strict";const o=require("vue"),d=require("./should-force-browser-runtime-in-node-1vTKsoso.cjs"),it=new Set(["area","base","br","col","embed","hr","img","input","keygen","link","meta","param","source","track","wbr"]),st=e=>typeof e=="string"&&it.has(e.toLowerCase());function C(e={},t,n){const r={};for(const i in e){if(!e[i]||n&&!i.startsWith(t))continue;const s=n?i.replace(t,""):i;r[s]=e[i]}return r}const at=o.defineComponent({name:"dynamic-renderer",props:["TagName","attributes","actionAttributes"],data(){return{isEmptyElement:st}}}),g=(e,t)=>{const n=e.__vccOpts||e;for(const[r,i]of t)n[r]=i;return n};function lt(e,t,n,r,i,s){return e.isEmptyElement(e.TagName)?(o.openBlock(),o.createBlock(o.resolveDynamicComponent(e.TagName),o.mergeProps({key:1},e.attributes,o.toHandlers(e.actionAttributes)),null,16)):(o.openBlock(),o.createElementBlock(o.Fragment,{key:0},[typeof e.TagName=="string"?(o.openBlock(),o.createBlock(o.resolveDynamicComponent(e.TagName),o.mergeProps({key:0},e.attributes,o.toHandlers(e.actionAttributes)),{default:o.withCtx(()=>[o.renderSlot(e.$slots,"default")]),_:3},16)):(o.openBlock(),o.createBlock(o.resolveDynamicComponent(e.TagName),o.mergeProps({key:1},e.attributes,o.toHandlers(e.actionAttributes)),{default:o.withCtx(()=>[o.renderSlot(e.$slots,"default")]),_:3},16))],64))}const J=g(at,[["render",lt]]),ct=Object.freeze(Object.defineProperty({__proto__:null,default:J},Symbol.toStringTag,{value:"Module"})),E=()=>{switch(d.TARGET){case"react":case"reactNative":case"rsc":return"className";case"svelte":case"vue":case"solid":case"qwik":case"angular":return"class"}},dt=o.defineComponent({name:"builder-button",components:{DynamicRenderer:J},props:["attributes","link","openLinkInNewTab","builderLinkComponent","text"],data(){return{filterAttrs:C}},methods:{attrs(){return{...C(this.attributes,"v-on:",!1),[E()]:`${this.link?"":"builder-button"} ${this.attributes[E()]||""}`,...this.link?{href:this.link,target:this.openLinkInNewTab?"_blank":void 0,role:"link"}:{role:"button"}}}}});function pt(e,t,n,r,i,s){const a=o.resolveComponent("DynamicRenderer");return o.openBlock(),o.createBlock(a,{attributes:e.attrs(),TagName:e.link?e.builderLinkComponent||"a":"button",actionAttributes:e.filterAttrs(e.attributes,"v-on:",!0)},{default:o.withCtx(()=>[o.createTextVNode(o.toDisplayString(e.text),1)]),_:1},8,["attributes","TagName","actionAttributes"])}const pe=g(dt,[["render",pt]]),ut=Symbol(),x={Builder:{content:null,context:{},localState:void 0,rootSetState(){},rootState:{},apiKey:null,apiVersion:void 0,componentInfos:{},inheritedStyles:{},BlocksWrapper:"div",BlocksWrapperProps:{},nonce:"",model:""},key:ut},mt=Symbol(),ue={Components:{registeredComponents:{}},key:mt};function ht(e){var t;return{...(t=e.component)==null?void 0:t.options,...e.options}}function ft(e,...t){const n=Object.assign({},e);for(const r of t)delete n[r];return n}const me=(e,t,n)=>{const r=String.prototype.split.call(t,/[,[\].]+?/).filter(Boolean).reduce((i,s)=>i!=null?i[s]:i,e);return r===void 0||r===e?n:r},gt=({code:e,builder:t,context:n,event:r,localState:i,rootSetState:s,rootState:a})=>{const c=d.getFunctionArguments({builder:t,context:n,event:r,state:d.flattenState({rootState:a,localState:i,rootSetState:s})});return new Function(...c.map(([l])=>l),e)(...c.map(([,l])=>l))},bt=e=>d.isBrowser()||d.shouldForceBrowserRuntimeInNode({shouldLogWarning:!0})?gt(e):d.runInNode(e),yt=/^(return )?(\s*)?state(?<getPath>(\.\w+)+)(\s*);?$/,kt=/(\s)*var(\s)+_virtual_index(\s)*=(\s)*state(?<getPath>(\.\w+)+)(\s*);?(\s)*return(\s)*_virtual_index(\s)*/,Ct=e=>{var t,n,r,i,s,a;return((r=(n=(t=yt.exec(e.trim()))==null?void 0:t.groups)==null?void 0:n.getPath)==null?void 0:r.slice(1))||((a=(s=(i=kt.exec(e.trim()))==null?void 0:i.groups)==null?void 0:s.getPath)==null?void 0:a.slice(1))};function B({code:e,context:t,localState:n,rootState:r,rootSetState:i,event:s,isExpression:a=!0}){if(e.trim()==="")return;const c=Ct(e.trim());if(c)return me({...r,...n},c);const l={code:d.parseCode(e,{isExpression:a}),builder:d.getBuilderGlobals(),context:t,event:s,rootSetState:i,rootState:r,localState:n};try{return bt(l)}catch(u){d.logger.error("Failed code evaluation: "+u.message,{code:e});return}}function A(e,t,n=null,r=null,i=new WeakSet){if(e==null||typeof e!="object"){t(e,s=>{n!==null&&r!==null&&(n[r]=s)});return}i.has(e)||(i.add(e),Array.isArray(e)?e.forEach((s,a)=>{t(s,l=>{e[a]=l}),A(s,t,e,a,i)}):Object.entries(e).forEach(([s,a])=>{t(a,l=>{e[s]=l}),A(a,t,e,s,i)}))}function he(e){return e&&typeof e=="object"&&e["@type"]==="@builder.io/core:LocalizedValue"}function vt(e){if(!e||!Object.getOwnPropertyNames(e).length)return!1;let t=!1;return A(e,n=>{if(he(n)){t=!0;return}}),t}function St(e,t){return!e||!Object.getOwnPropertyNames(e).length?{}:(A(e,(n,r)=>{he(n)&&r(n[t]??void 0)}),e)}function Tt(e,t){var n,r;return(n=e.component)!=null&&n.options&&vt((r=e.component)==null?void 0:r.options)&&(t||console.warn("[Builder.io] In order to use localized fields in Builder, you must pass a locale prop to the BuilderComponent or to options object while fetching the content to resolve localized fields. Learn more: https://www.builder.io/c/docs/localization-inline#targeting-and-inline-localization"),e.component.options=St(e.component.options,t??"Default")),e}function K(e){if(e===null||typeof e!="object")return e;if(Array.isArray(e))return e.map(n=>K(n));if(e["@type"]==="@builder.io/sdk:Element")return e;const t={};for(const n in e)n!=="meta"&&Object.prototype.hasOwnProperty.call(e,n)&&(t[n]=K(e[n]));return t}const Bt=["svelte","vue","angular","qwik","solid"].includes(d.TARGET),wt=e=>{if(Bt){const t=d.fastClone(e);return{...t,properties:{...t.properties},actions:{...t.actions}}}else{const t=K(ft(e,"children","meta"));return{...t,properties:{...t.properties},actions:{...t.actions},children:e.children,meta:e.meta}}},It=({block:e,context:t,localState:n,rootState:r,rootSetState:i})=>{if(!e.bindings)return e;const s=wt(e);for(const a in e.bindings){const c=e.bindings[a],l=B({code:c,localState:n,rootState:r,rootSetState:i,context:t});d.set(s,a,l)}return s};function Et({block:e,context:t,shouldEvaluateBindings:n,localState:r,rootState:i,rootSetState:s}){let a=Tt(e,i.locale);return a=a,n?It({block:a,localState:r,rootState:i,rootSetState:s,context:t}):a}function Y(e){const t=e||(d.isBrowser()?window.location.search:void 0);return t?d.getSearchString(t).indexOf("builder.preview=")!==-1:!1}const fe=e=>({type:"builder.registerComponent",data:N(e)}),$t=e=>{const t=e.toString().trim(),n=/^[a-zA-Z0-9_]+\s*=>/i.test(t);return`return (${!t.startsWith("function")&&!t.startsWith("async")&&!t.startsWith("(")&&!n?"function ":""}${t}).apply(this, arguments)`};function N(e){return JSON.parse(JSON.stringify(e,(t,n)=>typeof n=="function"?$t(n):n))}const ne={};function ge(e,t){e==="plugin"&&(t=N(t));let n=ne[e];if(n||(n=ne[e]=[]),n.push(t),d.isBrowser()){const r={type:"builder.register",data:{type:e,info:t}};try{parent.postMessage(r,"*"),parent!==window&&window.postMessage(r,"*")}catch(i){console.debug("Could not postmessage",i)}}}const oe={};function Rt(e){if(d.isBrowser()){Object.assign(oe,e);const t={type:"builder.settingsChange",data:oe};parent.postMessage(t,"*")}}const re="builder.",Pt="options.",X=e=>{if(!e)return{};const t=d.normalizeSearchParams(e),n={};return Object.keys(t).forEach(r=>{if(r.startsWith(re)){const i=r.replace(re,"").replace(Pt,"");n[i]=t[r]}}),n},Vt=()=>{if(!d.isBrowser())return{};const e=new URLSearchParams(window.location.search);return X(e)},be="3.0.1",ye=()=>({"X-Builder-SDK":d.TARGET,"X-Builder-SDK-GEN":"2","X-Builder-SDK-Version":be}),xt=e=>{if(e==="localhost"||e==="127.0.0.1")return e;const t=e.split(".");return t.length>2?t.slice(1).join("."):e},ke=({name:e,canTrack:t})=>{var n;try{return t?(n=document.cookie.split("; ").find(r=>r.startsWith(`${e}=`)))==null?void 0:n.split("=")[1]:void 0}catch(r){d.logger.warn("[COOKIE] GET error: ",(r==null?void 0:r.message)||r);return}},Ce=async e=>ke(e),At=e=>e.map(([t,n])=>n?`${t}=${n}`:t).filter(d.checkIsDefined).join("; "),Nt=[["secure",""],["SameSite","None"]],Wt=({name:e,value:t,expires:n})=>{const i=(d.isBrowser()?location.protocol==="https:":!0)?Nt:[[]],s=n?[["expires",n.toUTCString()]]:[[]],a=[[e,t],...s,["path","/"],["domain",xt(window.location.hostname)],...i];return At(a)},ve=async({name:e,value:t,expires:n,canTrack:r})=>{try{if(!r)return;const i=Wt({name:e,value:t,expires:n});document.cookie=i}catch(i){d.logger.warn("[COOKIE] SET error: ",(i==null?void 0:i.message)||i)}};function Ft(){return"xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx".replace(/[xy]/g,function(e){const t=Math.random()*16|0;return(e=="x"?t:t&3|8).toString(16)})}function Se(){return Ft().replace(/-/g,"")}const Te="builderSessionId",Dt=async({canTrack:e})=>{if(!e)return;const t=await Ce({name:Te,canTrack:e});if(d.checkIsDefined(t))return t;{const n=Lt();return Ot({id:n,canTrack:e}),n}},Lt=()=>Se(),Ot=({id:e,canTrack:t})=>ve({name:Te,value:e,canTrack:t}),Be=()=>d.isBrowser()&&typeof localStorage<"u"?localStorage:void 0,Ut=({key:e,canTrack:t})=>{var n;try{return t?(n=Be())==null?void 0:n.getItem(e):void 0}catch(r){console.debug("[LocalStorage] GET error: ",r);return}},Ht=({key:e,canTrack:t,value:n})=>{var r;try{t&&((r=Be())==null||r.setItem(e,n))}catch(i){console.debug("[LocalStorage] SET error: ",i)}},we="builderVisitorId",Mt=({canTrack:e})=>{if(!e)return;const t=Ut({key:we,canTrack:e});if(d.checkIsDefined(t))return t;{const n=jt();return zt({id:n,canTrack:e}),n}},jt=()=>Se(),zt=({id:e,canTrack:t})=>Ht({key:we,value:e,canTrack:t});function Q(e){var t;typeof process<"u"&&((t=process.env)!=null&&t.DEBUG)&&String(process.env.DEBUG)=="true"&&d.logger.log(e)}const Kt=async({canTrack:e})=>{if(!e)return{visitorId:void 0,sessionId:void 0};const t=await Dt({canTrack:e}),n=Mt({canTrack:e});return{sessionId:t,visitorId:n}},qt=async({type:e,canTrack:t,apiKey:n,metadata:r,...i})=>({type:e,data:{...i,metadata:{url:location.href,...r},...await Kt({canTrack:t}),userAttributes:d.getUserAttributes(),ownerId:n}});async function q({apiHost:e,...t}){if(!t.apiKey){d.logger.error("Missing API key for track call. Please provide your API key.");return}if(!t.canTrack||d.isEditing()||!(d.isBrowser()||d.TARGET==="reactNative"))return;const r=`${e||"https://cdn.builder.io"}/api/v1/track`;return Q(r),fetch(r,{method:"POST",body:JSON.stringify({events:[await qt(t)]}),headers:{"content-type":"application/json",...ye()},mode:"cors"}).catch(i=>{console.error("Failed to track: ",i)})}const Gt=e=>q({...e,canTrack:!0}),Jt=["*.beta.builder.io","beta.builder.io","builder.io","localhost","qa.builder.io"];function Ie(e,t){if(!t.origin.startsWith("http")&&!t.origin.startsWith("https"))return!1;const n=new URL(t.origin),r=n.hostname;return(e||Jt).findIndex(i=>i.startsWith("*.")?r.endsWith(i.slice(1)):i===r)>-1}const Yt=()=>{ge("insertMenu",{name:"_default",default:!0,items:[{name:"Box"},{name:"Text"},{name:"Image"},{name:"Columns"},{name:"Core:Section"},{name:"Core:Button"},{name:"Embed"},{name:"Custom Code"}]})};let ie=!1;const Ee=(e={})=>{var t,n;ie||(ie=!0,d.isBrowser()&&((t=window.parent)==null||t.postMessage({type:"builder.sdkInfo",data:{target:d.TARGET,version:be,supportsPatchUpdates:!1,supportsAddBlockScoping:!0,supportsCustomBreakpoints:!0}},"*"),(n=window.parent)==null||n.postMessage({type:"builder.updateContent",data:{options:e}},"*"),window.addEventListener("message",r=>{var s,a;if(!Ie(e.trustedHosts,r))return;const{data:i}=r;if(i!=null&&i.type)switch(i.type){case"builder.evaluate":{const c=i.data.text,l=i.data.arguments||[],u=i.data.id,m=new Function(c);let h,p=null;try{h=m.apply(null,l)}catch(f){p=f}p?(s=window.parent)==null||s.postMessage({type:"builder.evaluateError",data:{id:u,error:p.message}},"*"):h&&typeof h.then=="function"?h.then(f=>{var b;(b=window.parent)==null||b.postMessage({type:"builder.evaluateResult",data:{id:u,result:f}},"*")}).catch(console.error):(a=window.parent)==null||a.postMessage({type:"builder.evaluateResult",data:{result:h,id:u}},"*");break}}})))},$e=({model:e,trustedHosts:t,callbacks:n})=>r=>{if(!Ie(t,r))return;const{data:i}=r;if(i)switch(i.type){case"builder.configureSdk":{n.configureSdk(i.data);break}case"builder.triggerAnimation":{n.animation(i.data);break}case"builder.contentUpdate":{const s=i.data,a=s.key||s.alias||s.entry||s.modelName,c=s.data;a===e&&n.contentUpdate(c);break}}},Xt=(e,t,n)=>{if(!d.isBrowser)return d.logger.warn("`subscribeToEditor` only works in the browser. It currently seems to be running on the server."),()=>{};Ee();const r=$e({callbacks:{contentUpdate:t,animation:()=>{},configureSdk:()=>{}},model:e,trustedHosts:n==null?void 0:n.trustedHosts});return window.addEventListener("message",r),()=>{window.removeEventListener("message",r)}},Qt="builder.tests",Z=e=>`${Qt}.${e}`,Zt=({contentId:e})=>Ce({name:Z(e),canTrack:!0}),_t=({contentId:e})=>ke({name:Z(e),canTrack:!0}),en=({contentId:e,value:t})=>ve({name:Z(e),value:t,canTrack:!0}),Re=e=>d.checkIsDefined(e.id)&&d.checkIsDefined(e.variations)&&Object.keys(e.variations).length>0,tn=({id:e,variations:t})=>{var i;let n=0;const r=Math.random();for(const s in t){const a=(i=t[s])==null?void 0:i.testRatio;if(n+=a,r<n)return s}return e},Pe=e=>{const t=tn(e);return en({contentId:e.id,value:t}).catch(n=>{d.logger.error("could not store A/B test variation: ",n)}),t},Ve=({item:e,testGroupId:t})=>{const n=e.variations[t];return t===e.id||!n?{testVariationId:e.id,testVariationName:"Default"}:{data:n.data,testVariationId:n.id,testVariationName:n.name||(n.id===e.id?"Default":"")}},nn=({item:e,canTrack:t})=>{if(!t)return e;if(!e)return;if(!Re(e))return e;const n=_t({contentId:e.id})||Pe({variations:e.variations,id:e.id}),r=Ve({item:e,testGroupId:n});return{...e,...r}},on=async({item:e,canTrack:t})=>{if(!t||!Re(e))return e;const r=await Zt({contentId:e.id})||Pe({variations:e.variations,id:e.id}),i=Ve({item:e,testGroupId:r});return{...e,...i}},$=e=>d.checkIsDefined(e)?e:!0;function rn(){return typeof globalThis<"u"?globalThis:typeof window<"u"?window:typeof global<"u"?global:typeof self<"u"?self:globalThis}function sn(){const e=rn().fetch;if(typeof e>"u")throw console.warn(`Builder SDK could not find a global fetch function. Make sure you have a polyfill for fetch in your project.
For more information, read https://github.com/BuilderIO/this-package-uses-fetch`),new Error("Builder SDK could not find a global `fetch` function");return e}const an=sn();function G(e,t=null,n="."){return Object.keys(e).reduce((r,i)=>{const s=e[i],a=[t,i].filter(Boolean).join(n);return[typeof s=="object",s!==null,!(Array.isArray(s)&&s.length===0)].every(Boolean)?{...r,...G(s,a,n)}:{...r,[a]:s}},{})}function xe(e,t,n={}){for(const r in e){const i=e[r],s=t?t+"."+r:r;i&&typeof i=="object"&&!Array.isArray(i)&&!Object.keys(i).find(a=>a.startsWith("$"))?xe(i,s,n):n[s]=i}return n}const ln="v3",se=e=>typeof e=="number"&&!isNaN(e)&&e>=0,_=e=>{const{limit:t=30,userAttributes:n,query:r,model:i,apiKey:s,enrich:a,locale:c,apiVersion:l=ln,fields:u,omit:m,offset:h,cacheSeconds:p,staleCacheSeconds:f,sort:b,includeUnpublished:y,apiHost:S}=e;if(!s)throw new Error("Missing API key");if(!["v3"].includes(l))throw new Error(`Invalid apiVersion: expected 'v3', received '${l}'`);const nt=t!==1,ot=S||"https://cdn.builder.io",k=new URL(`${ot}/api/${l}/content/${i}`);k.searchParams.set("apiKey",s),k.searchParams.set("limit",String(t)),k.searchParams.set("noTraverse",String(nt)),k.searchParams.set("includeRefs",String(!0));const O=c||(n==null?void 0:n.locale);let P=n;if(O&&(k.searchParams.set("locale",O),P={locale:O,...P}),a&&k.searchParams.set("enrich",String(a)),k.searchParams.set("omit",m||"meta.componentsUsed"),u&&k.searchParams.set("fields",u),Number.isFinite(h)&&h>-1&&k.searchParams.set("offset",String(Math.floor(h))),typeof y=="boolean"&&k.searchParams.set("includeUnpublished",String(y)),p&&se(p)&&k.searchParams.set("cacheSeconds",String(p)),f&&se(f)&&k.searchParams.set("staleCacheSeconds",String(f)),b){const v=G({sort:b});for(const w in v)k.searchParams.set(w,JSON.stringify(v[w]))}const rt={...Vt(),...d.normalizeSearchParams(e.options||{})},te=G(rt);for(const v in te)k.searchParams.set(v,String(te[v]));if(P&&k.searchParams.set("userAttributes",JSON.stringify(P)),r){const v=xe({query:r});for(const w in v)k.searchParams.set(w,JSON.stringify(v[w]))}return k},cn=e=>"results"in e;async function W(e){const t=await Ne({...e,limit:1});return t&&t[0]||null}const dn=async e=>{var a;const t=_(e),n=e.fetch??an,r={...e.fetchOptions,headers:{...(a=e.fetchOptions)==null?void 0:a.headers,...ye()}};return await(await n(t.href,r)).json()},Ae=async(e,t,n=_(e))=>{const r=$(e.canTrack);if(n.search.includes("preview="),!r||!(d.isBrowser()||d.TARGET==="reactNative"))return t.results;try{const i=[];for(const s of t.results)i.push(await on({item:s,canTrack:r}));t.results=i}catch(i){d.logger.error("Could not process A/B tests. ",i)}return t.results};async function Ne(e){const t=_(e),n=await dn(e);if(!cn(n))throw d.logger.error("Error fetching data. ",{url:t,content:n,options:e}),n;return Ae(e,n)}const pn=async e=>{var r,i,s;const t=e.path||((r=e.url)==null?void 0:r.pathname)||((i=e.userAttributes)==null?void 0:i.urlPath),n={...e,apiKey:e.apiKey,model:e.model||"page",userAttributes:{...e.userAttributes,...t?{urlPath:t}:{}},options:X(e.searchParams||((s=e.url)==null?void 0:s.searchParams)||e.options)};return{apiKey:n.apiKey,model:n.model,content:await W(n)}},F=e=>e?e.replace(/([a-z0-9]|(?=[A-Z]))([A-Z])/g,"$1-$2").toLowerCase():"";function un(e,t,n={}){let r,i,s,a=null,c=0;const l=function(){c=n.leading===!1?0:Date.now(),a=null,s=e.apply(r,i),a||(r=i=null)};return function(){const u=Date.now();!c&&n.leading===!1&&(c=u);const m=t-(u-c);return r=this,i=arguments,m<=0||m>t?(a&&(clearTimeout(a),a=null),c=u,s=e.apply(r,i),a||(r=i=null)):!a&&n.trailing!==!1&&(a=setTimeout(l,m)),s}}function I(e,...t){const n=Object(e);for(let r=1;r<arguments.length;r++){const i=arguments[r];if(i!=null)for(const s in i)Object.prototype.hasOwnProperty.call(i,s)&&(n[s]=i[s])}return n}function mn(e){for(const t of e)switch(t.trigger){case"pageLoad":De(t);break;case"scrollInView":fn(t);break}}function We(e){console.warn(`Cannot animate element: element with ID ${e} not found!`)}function Fe(e,t){const n=hn(e),r=getComputedStyle(t),i=e.steps[0].styles,s=e.steps[e.steps.length-1].styles,a=[i,s];for(const c of a)for(const l of n)l in c||(c[l]=r[l])}function hn(e){const t=[];for(const n of e.steps)for(const r in n.styles)t.indexOf(r)===-1&&t.push(r);return t}function De(e){const t=Array.prototype.slice.call(document.getElementsByClassName(e.elementId||e.id||""));if(!t.length){We(e.elementId||e.id||"");return}Array.from(t).forEach(n=>{Fe(e,n),n.style.transition="none",n.style.transitionDelay="0",I(n.style,e.steps[0].styles),setTimeout(()=>{n.style.transition=`all ${e.duration}s ${F(e.easing)}`,e.delay&&(n.style.transitionDelay=e.delay+"s"),I(n.style,e.steps[1].styles),setTimeout(()=>{n.style.transition="",n.style.transitionDelay=""},(e.delay||0)*1e3+e.duration*1e3+100)})})}function fn(e){const t=Array.prototype.slice.call(document.getElementsByClassName(e.elementId||e.id||""));if(!t.length){We(e.elementId||e.id||"");return}Array.from(t).forEach(n=>{Fe(e,n);let r=!1,i=!1;function s(){!r&&c(n)?(r=!0,i=!0,setTimeout(()=>{I(n.style,e.steps[1].styles),e.repeat||document.removeEventListener("scroll",a),setTimeout(()=>{i=!1,e.repeat||(n.style.transition="",n.style.transitionDelay="")},(e.duration+(e.delay||0))*1e3+100)})):e.repeat&&r&&!i&&!c(n)&&(r=!1,I(n.style,e.steps[0].styles))}const a=un(s,200,{leading:!1});function c(m){const h=m.getBoundingClientRect(),p=window.innerHeight,b=(e.thresholdPercent||0)/100*p;return h.bottom>b&&h.top<p-b}const l=e.steps[0].styles;function u(){I(n.style,l)}u(),setTimeout(()=>{n.style.transition=`all ${e.duration}s ${F(e.easing)}`,e.delay&&(n.style.transitionDelay=e.delay+"s")}),document.addEventListener("scroll",a,{capture:!0,passive:!0}),s()})}const Le=e=>Object.entries(e).map(([n,r])=>{if(typeof r=="string")return`${F(n)}: ${r};`}).filter(d.checkIsDefined),gn=e=>Le(e).join(`
`),bn=({mediaQuery:e,className:t,styles:n})=>{const r=`.${t} {
${gn(n)}
}`;return e?`${e} {
${r}
}`:r};function yn({style:e}){return e}const kn=({block:e,context:t})=>Oe(yn({style:e.style||{},context:t,block:e}));function Oe(e){switch(d.TARGET){case"svelte":case"vue":case"solid":case"angular":return Le(e).join(" ");case"qwik":case"reactNative":case"react":case"rsc":return e}}const Ue=(e,t)=>e?t?e.models&&e.models.length>0&&!e.models.includes(t):!1:!0,Cn=({block:e,registeredComponents:t,model:n})=>{var s;const r=(s=e.component)==null?void 0:s.name;if(!r)return null;const i=t[r];if(!i||Ue(i,n)){console.warn(`
Could not find a registered component named "${r}".
If you registered it, is the file that registered it imported by the file that needs to render it?`);return}else return i},vn=({block:e,context:t})=>{const{repeat:n,...r}=e;if(!(n!=null&&n.collection))return;const i=B({code:n.collection,localState:t.localState,rootState:t.rootState,rootSetState:t.rootSetState,context:t.context});if(!Array.isArray(i))return;const s=n.collection.split(".").pop(),a=n.itemName||(s?s+"Item":"item");return i.map((l,u)=>({context:{...t,localState:{...t.localState,$index:u,$item:l,[a]:l,[`$${a}Index`]:u}},block:r}))},Sn=(e,t)=>{var n;return(n=e==null?void 0:e.shouldReceiveBuilderProps)!=null&&n.builderLinkComponent?{builderLinkComponent:t}:{}},Tn=(e,t,n)=>{var r;return(r=e==null?void 0:e.shouldReceiveBuilderProps)!=null&&r.builderComponents?{builderComponents:Object.fromEntries(Object.entries(t).filter(([s,a])=>!Ue(a,n)))}:{}},Bn=(e,t)=>{var n;return(n=e==null?void 0:e.shouldReceiveBuilderProps)!=null&&n.builderBlock?{builderBlock:t}:{}},wn=(e,t)=>{var n;return(n=e==null?void 0:e.shouldReceiveBuilderProps)!=null&&n.builderContext?{builderContext:t}:{}},In=()=>Promise.resolve().then(()=>Hn).then(e=>e.default).catch(e=>{throw console.error("Error while attempting to dynamically import component DynamicDiv at ../dynamic-div.vue",e),e}),En=()=>Promise.resolve().then(()=>require("./block-styles-m8QMKLNf.cjs")).then(e=>e.default).catch(e=>{throw console.error("Error while attempting to dynamically import component BlockStyles at ./components/block-styles.vue",e),e}),$n=()=>Promise.resolve().then(()=>require("./block-wrapper-nmivaReB.cjs")).then(e=>e.default).catch(e=>{throw console.error("Error while attempting to dynamically import component BlockWrapper at ./components/block-wrapper.vue",e),e}),Rn=()=>Promise.resolve().then(()=>require("./component-ref-G822HD6s.cjs")).then(e=>e.default).catch(e=>{throw console.error("Error while attempting to dynamically import component ComponentRef at ./components/component-ref/component-ref.vue",e),e}),Pn=()=>Promise.resolve().then(()=>require("./repeated-block-WDR29-D_.cjs")).then(e=>e.default).catch(e=>{throw console.error("Error while attempting to dynamically import component RepeatedBlock at ./components/repeated-block.vue",e),e}),Vn=o.defineComponent({name:"block",components:{BlockStyles:o.defineAsyncComponent(En),RepeatedBlock:o.defineAsyncComponent(Pn),ComponentRef:o.defineAsyncComponent(Rn),BlockWrapper:o.defineAsyncComponent($n),DynamicDiv:o.defineAsyncComponent(In)},props:["block","context","registeredComponents","linkComponent"],data(){return{_processedBlock:{value:null,update:!1}}},mounted(){const e=this.processedBlock.id,t=this.processedBlock.animations;t&&e&&mn(t.map(n=>({...n,elementId:e})))},updated(){},computed:{repeatItem(){return vn({block:this.block,context:this.context})},processedBlock(){var t;return(t=this.block.repeat)!=null&&t.collection?this.block:Et({block:this.block,localState:this.context.localState,rootState:this.context.rootState,rootSetState:this.context.rootSetState,context:this.context.context,shouldEvaluateBindings:!0})},blockComponent(){return Cn({block:this.processedBlock,registeredComponents:this.registeredComponents,model:this.context.model})},Tag(){var t;return this.block.tagName==="a"||((t=this.processedBlock.properties)==null?void 0:t.href)||this.processedBlock.href?this.linkComponent||"a":this.block.tagName||"div"},canShowBlock(){var n,r;if((n=this.block.repeat)!=null&&n.collection)return!!((r=this.repeatItem)!=null&&r.length);const e="hide"in this.processedBlock?this.processedBlock.hide:!1;return("show"in this.processedBlock?this.processedBlock.show:!0)&&!e},childrenWithoutParentComponent(){var t;return!((t=this.blockComponent)!=null&&t.component)&&!this.repeatItem?this.processedBlock.children??[]:[]},componentRefProps(){var e,t,n;return{blockChildren:this.processedBlock.children??[],componentRef:(e=this.blockComponent)==null?void 0:e.component,componentOptions:{...ht(this.processedBlock),...Bn(this.blockComponent,this.processedBlock),...wn(this.blockComponent,this.context),...Sn(this.blockComponent,this.linkComponent),...Tn(this.blockComponent,this.registeredComponents,this.context.model)},context:this.context,linkComponent:this.linkComponent,registeredComponents:this.registeredComponents,builderBlock:this.processedBlock,includeBlockProps:((t=this.blockComponent)==null?void 0:t.noWrap)===!0,isInteractive:!((n=this.blockComponent)!=null&&n.isRSC&&d.TARGET==="rsc")}}}});function xn(e,t,n,r,i,s){var h;const a=o.resolveComponent("BlockStyles"),c=o.resolveComponent("ComponentRef"),l=o.resolveComponent("Block",!0),u=o.resolveComponent("BlockWrapper"),m=o.resolveComponent("RepeatedBlock");return e.canShowBlock?(o.openBlock(),o.createElementBlock(o.Fragment,{key:0},[o.createVNode(a,{block:e.processedBlock,context:e.context},null,8,["block","context"]),(h=e.blockComponent)!=null&&h.noWrap?(o.openBlock(),o.createElementBlock(o.Fragment,{key:1},[e.repeatItem?(o.openBlock(!0),o.createElementBlock(o.Fragment,{key:1},o.renderList(e.repeatItem,(p,f)=>(o.openBlock(),o.createBlock(m,{key:f,repeatContext:p.context,block:p.block,registeredComponents:e.registeredComponents,linkComponent:e.linkComponent},null,8,["repeatContext","block","registeredComponents","linkComponent"]))),128)):(o.openBlock(),o.createBlock(c,{key:0,componentRef:e.componentRefProps.componentRef,componentOptions:e.componentRefProps.componentOptions,blockChildren:e.componentRefProps.blockChildren,context:e.componentRefProps.context,registeredComponents:e.componentRefProps.registeredComponents,linkComponent:e.componentRefProps.linkComponent,builderBlock:e.componentRefProps.builderBlock,includeBlockProps:e.componentRefProps.includeBlockProps,isInteractive:e.componentRefProps.isInteractive},null,8,["componentRef","componentOptions","blockChildren","context","registeredComponents","linkComponent","builderBlock","includeBlockProps","isInteractive"]))],64)):(o.openBlock(),o.createElementBlock(o.Fragment,{key:0},[e.repeatItem?(o.openBlock(!0),o.createElementBlock(o.Fragment,{key:1},o.renderList(e.repeatItem,(p,f)=>(o.openBlock(),o.createBlock(m,{key:f,repeatContext:p.context,block:p.block,registeredComponents:e.registeredComponents,linkComponent:e.linkComponent},null,8,["repeatContext","block","registeredComponents","linkComponent"]))),128)):(o.openBlock(),o.createBlock(u,{key:0,Wrapper:e.Tag,block:e.processedBlock,context:e.context},{default:o.withCtx(()=>[o.createVNode(c,{componentRef:e.componentRefProps.componentRef,componentOptions:e.componentRefProps.componentOptions,blockChildren:e.componentRefProps.blockChildren,context:e.componentRefProps.context,registeredComponents:e.componentRefProps.registeredComponents,linkComponent:e.componentRefProps.linkComponent,builderBlock:e.componentRefProps.builderBlock,includeBlockProps:e.componentRefProps.includeBlockProps,isInteractive:e.componentRefProps.isInteractive},null,8,["componentRef","componentOptions","blockChildren","context","registeredComponents","linkComponent","builderBlock","includeBlockProps","isInteractive"]),(o.openBlock(!0),o.createElementBlock(o.Fragment,null,o.renderList(e.childrenWithoutParentComponent,(p,f)=>(o.openBlock(),o.createBlock(l,{key:p.id,block:p,registeredComponents:e.registeredComponents,linkComponent:e.linkComponent,context:e.context},null,8,["block","registeredComponents","linkComponent","context"]))),128))]),_:1},8,["Wrapper","block","context"]))],64))],64)):o.createCommentVNode("",!0)}const D=g(Vn,[["render",xn]]),An=Object.freeze(Object.defineProperty({__proto__:null,default:D},Symbol.toStringTag,{value:"Module"})),Nn=o.defineComponent({name:"builder-blocks-wrapper",props:["blocks","classNameProp","path","parent","styleProp","BlocksWrapperProps","BlocksWrapper"],mounted(){},computed:{className(){var e;return["builder-blocks",(e=this.blocks)!=null&&e.length?"":"no-blocks",this.classNameProp].filter(Boolean).join(" ")},dataPath(){if(!this.path)return;const e="component.options.";return this.path.startsWith(e)?this.path:`${e}${this.path||""}`}},methods:{onClick(){var e,t;d.isEditing()&&!((e=this.blocks)!=null&&e.length)&&((t=window.parent)==null||t.postMessage({type:"builder.clickEmptyBlocks",data:{parentElementId:this.parent,dataPath:this.dataPath}},"*"))},onMouseEnter(){var e,t;d.isEditing()&&!((e=this.blocks)!=null&&e.length)&&((t=window.parent)==null||t.postMessage({type:"builder.hoverEmptyBlocks",data:{parentElementId:this.parent,dataPath:this.dataPath}},"*"))}}});function Wn(e,t,n,r,i,s){return o.openBlock(),o.createBlock(o.resolveDynamicComponent(e.BlocksWrapper),o.mergeProps({ref:"blocksWrapperRef",class:e.className+" component-1k2igrjdg3x","builder-path":e.dataPath,"builder-parent-id":e.parent,style:e.styleProp,onClick:a=>e.onClick(),onMouseEnter:a=>e.onMouseEnter(),onKeyPress:a=>e.onClick()},{...e.BlocksWrapperProps}),{default:o.withCtx(()=>[o.renderSlot(e.$slots,"default",{},void 0,!0)]),_:3},16,["class","builder-path","builder-parent-id","style","onClick","onMouseEnter","onKeyPress"])}const Fn=g(Nn,[["render",Wn],["__scopeId","data-v-ba2bc5c0"]]),Dn=o.defineComponent({name:"builder-blocks",components:{BlocksWrapper:Fn,Block:D},props:["blocks","parent","path","styleProp","className","context","linkComponent","registeredComponents"],inject:{builderContext:x.key,componentsContext:ue.key}});function Ln(e,t,n,r,i,s){var l,u,m,h;const a=o.resolveComponent("Block"),c=o.resolveComponent("BlocksWrapper");return o.openBlock(),o.createBlock(c,{blocks:e.blocks,parent:e.parent,path:e.path,styleProp:e.styleProp,classNameProp:e.className,BlocksWrapper:((l=e.context)==null?void 0:l.BlocksWrapper)||((u=e.builderContext)==null?void 0:u.BlocksWrapper),BlocksWrapperProps:((m=e.context)==null?void 0:m.BlocksWrapperProps)||((h=e.builderContext)==null?void 0:h.BlocksWrapperProps)},{default:o.withCtx(()=>[e.blocks?(o.openBlock(!0),o.createElementBlock(o.Fragment,{key:0},o.renderList(e.blocks,(p,f)=>{var b;return o.openBlock(),o.createBlock(a,{key:p.id,block:p,linkComponent:e.linkComponent,context:e.context||e.builderContext,registeredComponents:e.registeredComponents||((b=e.componentsContext)==null?void 0:b.registeredComponents)},null,8,["block","linkComponent","context","registeredComponents"])}),128)):o.createCommentVNode("",!0)]),_:1},8,["blocks","parent","path","styleProp","classNameProp","BlocksWrapper","BlocksWrapperProps"])}const T=g(Dn,[["render",Ln]]),On=o.defineComponent({name:"dynamic-div",props:[]});function Un(e,t,n,r,i,s){return o.openBlock(),o.createElementBlock("div",null,[o.renderSlot(e.$slots,"default")])}const R=g(On,[["render",Un]]),Hn=Object.freeze(Object.defineProperty({__proto__:null,default:R},Symbol.toStringTag,{value:"Module"})),L=o.defineComponent({render(){return o.h("style",{innerHTML:this.styles,"data-id":this.id,nonce:this.nonce})},name:"inlined-styles",props:["styles","id","nonce"]}),He={small:{min:320,default:321,max:640},medium:{min:641,default:642,max:991},large:{min:990,default:991,max:1200}},Mn=(e,t=He)=>`@media (max-width: ${t[e].max}px)`,Me=({small:e,medium:t})=>{const n=d.fastClone(He);if(!e||!t)return n;const r=Math.floor(e/2);n.small={max:e,min:r,default:r+1};const i=n.small.max+1;n.medium={max:t,min:i,default:i+1};const s=n.medium.max+1;return n.large={max:2e3,min:s,default:s+1},n},jn=e=>`builder-columns ${e}-breakpoints`,zn=o.defineComponent({name:"builder-columns",components:{InlinedStyles:L,DynamicRenderer:J,Blocks:T,DynamicDiv:R},props:["space","columns","stackColumnsAt","builderLinkComponent","reverseColumnsWhenStacked","builderContext","builderBlock","builderComponents"],data(){return{TARGET:d.TARGET,getColumnsClass:jn}},computed:{gutterSize(){return typeof this.space=="number"?this.space||0:20},cols(){return this.columns||[]},stackAt(){return this.stackColumnsAt||"tablet"},flexDir(){return this.stackColumnsAt==="never"?"row":this.reverseColumnsWhenStacked?"column-reverse":"column"}},methods:{getTagName(e){return e.link?this.builderLinkComponent||"a":"div"},getWidth(e){var t;return((t=this.cols[e])==null?void 0:t.width)||100/this.cols.length},getColumnCssWidth(e){const t=this.getWidth(e),n=this.gutterSize*(this.cols.length-1)*(t/100);return`calc(${t}% - ${n}px)`},getTabletStyle({stackedStyle:e,desktopStyle:t}){return this.stackAt==="tablet"?e:t},getMobileStyle({stackedStyle:e,desktopStyle:t}){return this.stackAt==="never"?t:e},columnsCssVars(){return{"--flex-dir":this.flexDir,"--flex-dir-tablet":this.getTabletStyle({stackedStyle:this.flexDir,desktopStyle:"row"})}},columnCssVars(e){const t=e===0?0:this.gutterSize,n=this.getColumnCssWidth(e),r=`${t}px`,i="100%",s=0;return{...{display:"flex",flexDirection:"column",alignItems:"stretch"},width:n,["margin-left"]:r,"--column-width-mobile":this.getMobileStyle({stackedStyle:i,desktopStyle:n}),"--column-margin-left-mobile":this.getMobileStyle({stackedStyle:s,desktopStyle:r}),"--column-width-tablet":this.getTabletStyle({stackedStyle:i,desktopStyle:n}),"--column-margin-left-tablet":this.getTabletStyle({stackedStyle:s,desktopStyle:r})}},getWidthForBreakpointSize(e){var n,r;return Me(((r=(n=this.builderContext.content)==null?void 0:n.meta)==null?void 0:r.breakpoints)||{})[e].max},columnsStyles(){const e=`.${this.builderBlock.id}-breakpoints > .builder-column`;return`
@media (max-width: ${this.getWidthForBreakpointSize("medium")}px) {
.${this.builderBlock.id}-breakpoints {
flex-direction: var(--flex-dir-tablet);
align-items: stretch;
}
${e} {
width: var(--column-width-tablet) !important;
margin-left: var(--column-margin-left-tablet) !important;
}
}
@media (max-width: ${this.getWidthForBreakpointSize("small")}px) {
.${this.builderBlock.id}-breakpoints {
flex-direction: var(--flex-dir);
align-items: stretch;
}
${e} {
width: var(--column-width-mobile) !important;
margin-left: var(--column-margin-left-mobile) !important;
}
},
`},getAttributes(e,t){return{...e.link?{href:e.link}:{},[E()]:"builder-column",style:Oe(this.columnCssVars(t))}}}});function Kn(e,t,n,r,i,s){var u;const a=o.resolveComponent("InlinedStyles"),c=o.resolveComponent("Blocks"),l=o.resolveComponent("DynamicRenderer");return o.openBlock(),o.createElementBlock("div",o.mergeProps({class:e.getColumnsClass((u=e.builderBlock)==null?void 0:u.id)+" div-4wbls88y960",style:e.columnsCssVars()},{}),[e.TARGET!=="reactNative"?(o.openBlock(),o.createBlock(a,{key:0,id:"builderio-columns",styles:e.columnsStyles(),nonce:e.builderContext.nonce},null,8,["styles","nonce"])):o.createCommentVNode("",!0),(o.openBlock(!0),o.createElementBlock(o.Fragment,null,o.renderList(e.columns,(m,h)=>(o.openBlock(),o.createBlock(l,{key:h,TagName:e.getTagName(m),actionAttributes:{},attributes:e.getAttributes(m,h)},{default:o.withCtx(()=>[o.createVNode(c,{path:`columns.${h}.blocks`,parent:e.builderBlock.id,styleProp:{flexGrow:"1"},context:e.builderContext,registeredComponents:e.builderComponents,linkComponent:e.builderLinkComponent,blocks:m.blocks},null,8,["path","parent","context","registeredComponents","linkComponent","blocks"])]),_:2},1032,["TagName","attributes"]))),128))],16)}const je=g(zn,[["render",Kn],["__scopeId","data-v-3354f136"]]),qn=o.defineComponent({name:"builder-fragment-component",props:[]});function Gn(e,t,n,r,i,s){return o.openBlock(),o.createElementBlock("span",null,[o.renderSlot(e.$slots,"default")])}const ze=g(qn,[["render",Gn]]);function ae(e){return e.replace(/http(s)?:/,"")}function Jn(e="",t,n){const r=new RegExp("([?&])"+t+"=.*?(&|$)","i"),i=e.indexOf("?")!==-1?"&":"?";return e.match(r)?e.replace(r,"$1"+t+"="+encodeURIComponent(n)+"$2"):e+i+t+"="+encodeURIComponent(n)}function Yn(e,t){if(!e||!(e!=null&&e.match(/cdn\.shopify\.com/))||!t)return e;if(t==="master")return ae(e);const n=e.match(/(_\d+x(\d+)?)?(\.(jpg|jpeg|gif|png|bmp|bitmap|tiff|tif)(\?v=\d+)?)/i);if(n){const r=e.split(n[0]),i=n[3],s=t.match("x")?t:`${t}x`;return ae(`${r[0]}_${s}${i}`)}return null}function U(e){if(!e)return e;const t=[100,200,400,800,1200,1600,2e3];if(e.match(/builder\.io/)){let n=e;const r=Number(e.split("?width=")[1]);return isNaN(r)||(n=`${n} ${r}w`),t.filter(i=>i!==r).map(i=>`${Jn(e,"width",i)} ${i}w`).concat([n]).join(", ")}return e.match(/cdn\.shopify\.com/)?t.map(n=>[Yn(e,`${n}x${n}`),n]).filter(([n])=>!!n).map(([n,r])=>`${n} ${r}w`).concat([e]).join(", "):e}const Xn=o.defineComponent({name:"builder-image",props:["image","src","srcset","noWebp","aspectRatio","highPriority","altText","backgroundPosition","backgroundSize","className","sizes","builderBlock","fitContent"],mounted(){},computed:{srcSetToUse(){var n;const t=this.image||this.src;if(!t||!(typeof t=="string"&&(t.match(/builder\.io/)||t.match(/cdn\.shopify\.com/))))return this.srcset;if(!this.noWebp){if(this.srcset&&((n=this.image)!=null&&n.includes("builder.io/api/v1/image"))){if(!this.srcset.includes(this.image.split("?")[0]))return console.debug("Removed given srcset"),U(t)}else if(this.image&&!this.srcset)return U(t);return U(t)}},webpSrcSet(){var e;return(e=this.srcSetToUse)!=null&&e.match(/builder\.io/)&&!this.noWebp?this.srcSetToUse.replace(/\?/g,"?format=webp&"):""},aspectRatioCss(){const e={position:"absolute",height:"100%",width:"100%",left:"0px",top:"0px"};return this.aspectRatio?e:void 0}}}),Qn=["srcset"],Zn=["loading","fetchpriority","alt","role","src","srcset","sizes"],_n={key:2,class:"div-29wpyomtntv-2"};function eo(e,t,n,r,i,s){var a,c,l,u,m,h;return o.openBlock(),o.createElementBlock(o.Fragment,null,[o.createElementVNode("picture",null,[e.webpSrcSet?(o.openBlock(),o.createElementBlock("source",{key:0,type:"image/webp",srcset:e.webpSrcSet},null,8,Qn)):o.createCommentVNode("",!0),o.createElementVNode("img",{loading:e.highPriority?"eager":"lazy",fetchpriority:e.highPriority?"high":"auto",alt:e.altText,role:e.altText?void 0:"presentation",style:o.normalizeStyle({objectPosition:e.backgroundPosition||"center",objectFit:e.backgroundSize||"cover",...e.aspectRatioCss}),class:o.normalizeClass("builder-image"+(e.className?" "+e.className:"")+" img-29wpyomtntv"),src:e.image,srcset:e.srcSetToUse,sizes:e.sizes},null,14,Zn)]),e.aspectRatio&&!((c=(a=e.builderBlock)==null?void 0:a.children)!=null&&c.length&&e.fitContent)?(o.openBlock(),o.createElementBlock("div",{key:0,class:"builder-image-sizer div-29wpyomtntv",style:o.normalizeStyle({paddingTop:e.aspectRatio*100+"%"})},null,4)):o.createCommentVNode("",!0),(u=(l=e.builderBlock)==null?void 0:l.children)!=null&&u.length&&e.fitContent?o.renderSlot(e.$slots,"default",{key:1},void 0,!0):o.createCommentVNode("",!0),!e.fitContent&&((h=(m=e.builderBlock)==null?void 0:m.children)!=null&&h.length)?(o.openBlock(),o.createElementBlock("div",_n,[o.renderSlot(e.$slots,"default",{},void 0,!0)])):o.createCommentVNode("",!0)],64)}const Ke=g(Xn,[["render",eo],["__scopeId","data-v-a3766aaf"]]),to=o.defineComponent({name:"builder-section-component",props:["attributes","maxWidth"],data(){return{filterAttrs:C}}});function no(e,t,n,r,i,s){return o.openBlock(),o.createElementBlock("section",o.mergeProps({style:{width:"100%",alignSelf:"stretch",flexGrow:1,boxSizing:"border-box",maxWidth:e.maxWidth||1200,display:"flex",flexDirection:"column",alignItems:"stretch",marginLeft:"auto",marginRight:"auto"}},e.filterAttrs(e.attributes,"v-on:",!1),o.toHandlers(e.filterAttrs(e.attributes,"v-on:",!0),!0)),[o.renderSlot(e.$slots,"default")],16)}const qe=g(to,[["render",no]]),H={"@type":"@builder.io/sdk:Element",layerName:"Accordion item title",responsiveStyles:{large:{marginTop:"10px",position:"relative",display:"flex",alignItems:"stretch",flexDirection:"column",paddingBottom:"10px"}},children:[{"@type":"@builder.io/sdk:Element",responsiveStyles:{large:{textAlign:"left",display:"flex",flexDirection:"column"}},component:{name:"Text",options:{text:"I am an accordion title. Click me!"}}}]},M={"@type":"@builder.io/sdk:Element",layerName:"Accordion item detail",responsiveStyles:{large:{position:"relative",display:"flex",alignItems:"stretch",flexDirection:"column",marginTop:"10px",paddingBottom:"10px"}},children:[{"@type":"@builder.io/sdk:Element",responsiveStyles:{large:{paddingTop:"50px",textAlign:"left",display:"flex",flexDirection:"column",paddingBottom:"50px"}},component:{name:"Text",options:{text:"I am an accordion detail, hello!"}}}]},oo={name:"Builder:Accordion",canHaveChildren:!0,image:"https://cdn.builder.io/api/v1/image/assets%2FagZ9n5CUKRfbL9t6CaJOyVSK4Es2%2Ffab6c1fd3fe542408cbdec078bca7f35",defaultStyles:{display:"flex",flexDirection:"column",alignItems:"stretch"},inputs:[{name:"items",type:"list",broadcast:!0,subFields:[{name:"title",type:"uiBlocks",hideFromUI:!0,defaultValue:[H]},{name:"detail",type:"uiBlocks",hideFromUI:!0,defaultValue:[M]}],defaultValue:[{title:[H],detail:[M]},{title:[H],detail:[M]}],showIf:e=>!e.get("useChildrenForItems")},{name:"oneAtATime",helperText:"Only allow opening one at a time (collapse all others when new item openned)",type:"boolean",defaultValue:!1},{name:"grid",helperText:"Display as a grid",type:"boolean",defaultValue:!1},{name:"gridRowWidth",helperText:"Display as a grid",type:"string",showIf:e=>e.get("grid"),defaultValue:"25%"},{name:"useChildrenForItems",type:"boolean",helperText:"Use child elements for each slide, instead of the array. Useful for dynamically repeating items",advanced:!0,defaultValue:!1,onChange:e=>{e.get("useChildrenForItems")===!0&&e.set("items",[])}}],shouldReceiveBuilderProps:{builderBlock:!0,builderContext:!0,builderComponents:!0,builderLinkComponent:!0}},ro=e=>e.toString(),io=o.defineComponent({name:"builder-accordion",components:{Blocks:T},props:["grid","oneAtATime","items","gridRowWidth","builderBlock","builderContext","builderComponents","builderLinkComponent"],data(){return{open:[],convertOrderNumberToString:ro}},computed:{onlyOneAtATime(){return!!(this.grid||this.oneAtATime)},accordionStyles(){return{display:"flex",alignItems:"stretch",flexDirection:"column",...this.grid&&{flexDirection:"row",alignItems:"flex-start",flexWrap:"wrap"}}},accordionTitleStyles(){const t={...{display:"flex",flexDirection:"column"},alignItems:"stretch",cursor:"pointer"};return Object.fromEntries(Object.entries(t).filter(([n,r])=>r!==void 0))},openGridItemOrder(){let e=null;if(this.grid&&this.open.length&&document){const n=this.open[0];let i=document.querySelector(`.builder-accordion-title[data-index="${n}"]`);if(e=n,i){let s=i.getBoundingClientRect();for(;i=i&&i.nextElementSibling;)if(i){if(i.classList.contains("builder-accordion-detail"))continue;const a=i.getBoundingClientRect();if(a.left>s.left){const c=parseInt(i.getAttribute("data-index")||"",10);isNaN(c)||(s=a,e=c)}else break}}}return typeof e=="number"&&(e=e+1),e},accordionDetailStyles(){const e={order:typeof this.openGridItemOrder=="number"?this.openGridItemOrder:void 0,...this.grid&&{width:"100%"}};return Object.fromEntries(Object.entries(e).filter(([t,n])=>n!==void 0))}},methods:{getAccordionTitleClassName(e){return`builder-accordion-title builder-accordion-title-${this.open.includes(e)?"open":"closed"}`},getAccordionDetailClassName(e){return`builder-accordion-detail builder-accordion-detail-${this.open.includes(e)?"open":"closed"}`},onClick(e){this.open.includes(e)?this.open=this.onlyOneAtATime?[]:this.open.filter(t=>t!==e):this.open=this.onlyOneAtATime?[e]:this.open.concat(e)}}}),so=["data-index","onClick"];function ao(e,t,n,r,i,s){const a=o.resolveComponent("Blocks");return o.openBlock(),o.createElementBlock("div",{class:"builder-accordion",style:o.normalizeStyle(e.accordionStyles)},[(o.openBlock(!0),o.createElementBlock(o.Fragment,null,o.renderList(e.items,(c,l)=>(o.openBlock(),o.createElementBlock(o.Fragment,{key:l},[o.createElementVNode("div",{class:o.normalizeClass(e.getAccordionTitleClassName(l)),style:o.normalizeStyle({...e.accordionTitleStyles,...e.grid&&{width:e.gridRowWidth,order:e.openGridItemOrder!==null?e.convertOrderNumberToString(l):e.convertOrderNumberToString(l+1)}}),"data-index":l,onClick:u=>e.onClick(l)},[o.createVNode(a,{blocks:c.title,path:`items.${l}.title`,parent:e.builderBlock.id,context:e.builderContext,registeredComponents:e.builderComponents,linkComponent:e.builderLinkComponent},null,8,["blocks","path","parent","context","registeredComponents","linkComponent"])],14,so),e.open.includes(l)?(o.openBlock(),o.createElementBlock("div",{key:0,class:o.normalizeClass(e.getAccordionDetailClassName(l)),style:o.normalizeStyle(e.accordionDetailStyles)},[o.createVNode(a,{blocks:c.detail,path:`items.${l}.detail`,parent:e.builderBlock.id,context:e.builderContext,registeredComponents:e.builderComponents,linkComponent:e.builderLinkComponent},null,8,["blocks","path","parent","context","registeredComponents","linkComponent"])],6)):o.createCommentVNode("",!0)],64))),128))],4)}const lo=g(io,[["render",ao]]),co={name:"Core:Button",image:"https://cdn.builder.io/api/v1/image/assets%2FIsxPKMo2gPRRKeakUztj1D6uqed2%2F81a15681c3e74df09677dfc57a615b13",defaultStyles:{appearance:"none",paddingTop:"15px",paddingBottom:"15px",paddingLeft:"25px",paddingRight:"25px",backgroundColor:"#000000",color:"white",borderRadius:"4px",textAlign:"center",cursor:"pointer"},inputs:[{name:"text",type:"text",defaultValue:"Click me!",bubble:!0},{name:"link",type:"url",bubble:!0},{name:"openLinkInNewTab",type:"boolean",defaultValue:!1,friendlyName:"Open link in new tab"}],static:!0,noWrap:!0,shouldReceiveBuilderProps:{builderLinkComponent:!0}},po={name:"Columns",isRSC:!0,inputs:[{name:"columns",type:"array",broadcast:!0,subFields:[{name:"blocks",type:"array",hideFromUI:!0,defaultValue:[{"@type":"@builder.io/sdk:Element",responsiveStyles:{large:{display:"flex",flexDirection:"column",alignItems:"stretch",flexShrink:"0",position:"relative",marginTop:"30px",textAlign:"center",lineHeight:"normal",height:"auto",minHeight:"20px",minWidth:"20px",overflow:"hidden"}},component:{name:"Image",options:{image:"https://builder.io/api/v1/image/assets%2Fpwgjf0RoYWbdnJSbpBAjXNRMe9F2%2Ffb27a7c790324294af8be1c35fe30f4d",backgroundPosition:"center",backgroundSize:"cover",aspectRatio:.7004048582995948}}},{"@type":"@builder.io/sdk:Element",responsiveStyles:{large:{display:"flex",flexDirection:"column",alignItems:"stretch",flexShrink:"0",position:"relative",marginTop:"30px",textAlign:"center",lineHeight:"normal",height:"auto"}},component:{name:"Text",options:{text:"<p>Enter some text...</p>"}}}]},{name:"width",type:"number",hideFromUI:!0,helperText:"Width %, e.g. set to 50 to fill half of the space"},{name:"link",type:"url",helperText:"Optionally set a url that clicking this column will link to"}],defaultValue:[{blocks:[{"@type":"@builder.io/sdk:Element",responsiveStyles:{large:{display:"flex",flexDirection:"column",alignItems:"stretch",flexShrink:"0",position:"relative",marginTop:"30px",textAlign:"center",lineHeight:"normal",height:"auto",minHeight:"20px",minWidth:"20px",overflow:"hidden"}},component:{name:"Image",options:{image:"https://builder.io/api/v1/image/assets%2Fpwgjf0RoYWbdnJSbpBAjXNRMe9F2%2Ffb27a7c790324294af8be1c35fe30f4d",backgroundPosition:"center",backgroundSize:"cover",aspectRatio:.7004048582995948}}},{"@type":"@builder.io/sdk:Element",responsiveStyles:{large:{display:"flex",flexDirection:"column",alignItems:"stretch",flexShrink:"0",position:"relative",marginTop:"30px",textAlign:"center",lineHeight:"normal",height:"auto"}},component:{name:"Text",options:{text:"<p>Enter some text...</p>"}}}]},{blocks:[{"@type":"@builder.io/sdk:Element",responsiveStyles:{large:{display:"flex",flexDirection:"column",alignItems:"stretch",flexShrink:"0",position:"relative",marginTop:"30px",textAlign:"center",lineHeight:"normal",height:"auto",minHeight:"20px",minWidth:"20px",overflow:"hidden"}},component:{name:"Image",options:{image:"https://builder.io/api/v1/image/assets%2Fpwgjf0RoYWbdnJSbpBAjXNRMe9F2%2Ffb27a7c790324294af8be1c35fe30f4d",backgroundPosition:"center",backgroundSize:"cover",aspectRatio:.7004048582995948}}},{"@type":"@builder.io/sdk:Element",responsiveStyles:{large:{display:"flex",flexDirection:"column",alignItems:"stretch",flexShrink:"0",position:"relative",marginTop:"30px",textAlign:"center",lineHeight:"normal",height:"auto"}},component:{name:"Text",options:{text:"<p>Enter some text...</p>"}}}]}],onChange:e=>{function t(){n.forEach(r=>{r.delete("width")})}const n=e.get("columns");Array.isArray(n)&&n.find(i=>i.get("width"))&&(n.find(s=>!s.get("width"))||n.reduce((c,l)=>c+l.get("width"),0)!==100)&&t()}},{name:"space",type:"number",defaultValue:20,helperText:"Size of gap between columns",advanced:!0},{name:"stackColumnsAt",type:"string",defaultValue:"tablet",helperText:"Convert horizontal columns to vertical at what device size",enum:["tablet","mobile","never"],advanced:!0},{name:"reverseColumnsWhenStacked",type:"boolean",defaultValue:!1,helperText:"When stacking columns for mobile devices, reverse the ordering",advanced:!0}],shouldReceiveBuilderProps:{builderBlock:!0,builderContext:!0,builderComponents:!0,builderLinkComponent:!0}},uo={name:"Fragment",static:!0,hidden:!0,canHaveChildren:!0,noWrap:!0},ee=["jpeg","jpg","png","svg","webp","gif","jfif","pjpeg","pjp","apng","avif","tif","tiff","heif","bmp","eps","raw","cr2","nef","orf","sr2","psd","heic","dib","ai"],mo=["mp4","webm","mkv","flv","vo