@builder.io/sdk-vue 0.1.1 → 0.1.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/package.json +1 -1
- package/packages/_vue2/dist/block-styles.426683e4.cjs +1 -0
- package/packages/_vue2/dist/{block-styles.41c88ebb.js → block-styles.d52d65f7.js} +6 -4
- package/packages/{_vue3/dist/get-processed-block.6a1b1b3d.cjs → _vue2/dist/get-processed-block.25e77989.cjs} +1 -1
- package/packages/{_vue3/dist/get-processed-block.b14f89d8.js → _vue2/dist/get-processed-block.b1e9044b.js} +1 -1
- package/packages/_vue2/dist/{index.c72e7c74.js → index.3403bf5e.js} +579 -473
- package/packages/_vue2/dist/index.57d3bafb.cjs +30 -0
- package/packages/_vue2/dist/render-block.5069cc94.js +249 -0
- package/packages/_vue2/dist/render-block.93fcfc84.cjs +3 -0
- package/packages/_vue2/dist/{render-component.1561ae1b.js → render-component.5e59a26d.js} +3 -3
- package/packages/_vue2/dist/{render-component.e5dac3a3.cjs → render-component.697eb0f0.cjs} +1 -1
- package/packages/_vue2/dist/{render-inlined-styles.e8e46149.js → render-inlined-styles.c4ede85b.js} +4 -2
- package/packages/_vue2/dist/render-inlined-styles.d6107d6b.cjs +1 -0
- package/packages/_vue2/dist/render-repeated-block.82ac5fdf.cjs +1 -0
- package/packages/_vue2/dist/render-repeated-block.88a83bb3.js +41 -0
- package/packages/_vue2/dist/{render-styles.571858fa.js → render-styles.78a78d13.js} +2 -2
- package/packages/_vue2/dist/{render-styles.29424659.cjs → render-styles.95a1cf8d.cjs} +1 -1
- package/packages/_vue2/dist/sdk.cjs +1 -1
- package/packages/_vue2/dist/sdk.js +3 -3
- package/packages/_vue2/dist/src/blocks/columns/columns.vue.d.ts +35 -175
- package/packages/_vue2/dist/src/blocks/custom-code/custom-code.vue.d.ts +1 -1
- package/packages/_vue2/dist/src/blocks/embed/embed.vue.d.ts +5 -2
- package/packages/_vue2/dist/src/blocks/img/img.vue.d.ts +1 -1
- package/packages/_vue2/dist/src/blocks/symbol/symbol.vue.d.ts +65 -192
- package/packages/_vue2/dist/src/components/render-block/block-styles.vue.d.ts +2 -2
- package/packages/_vue2/dist/src/components/render-block/render-block.helpers.d.ts +11 -0
- package/packages/_vue2/dist/src/components/render-block/render-block.vue.d.ts +30 -170
- package/packages/_vue2/dist/src/components/render-block/render-component.vue.d.ts +7 -57
- package/packages/_vue2/dist/src/components/render-block/render-repeated-block.vue.d.ts +28 -168
- package/packages/_vue2/dist/src/components/render-blocks.vue.d.ts +33 -173
- package/packages/_vue2/dist/src/components/render-content/components/render-styles.vue.d.ts +1 -1
- package/packages/_vue2/dist/src/components/render-content/render-content.vue.d.ts +59 -189
- package/packages/_vue2/dist/src/components/render-inlined-styles.vue.d.ts +1 -1
- package/packages/_vue2/dist/src/context/builder.context.d.ts +11 -1
- package/packages/_vue2/dist/src/functions/track/helpers.d.ts +5 -0
- package/packages/{_vue3/dist/src/functions/track.d.ts → _vue2/dist/src/functions/track/index.d.ts} +5 -10
- package/packages/_vue2/dist/src/functions/track/interaction.d.ts +13 -0
- package/packages/_vue2/dist/src/helpers/ab-tests.d.ts +1 -1
- package/packages/_vue2/dist/src/helpers/cookie.d.ts +1 -1
- package/packages/_vue2/dist/src/helpers/localStorage.d.ts +2 -1
- package/packages/_vue2/dist/src/helpers/sessionId.d.ts +2 -2
- package/packages/_vue2/dist/src/index.d.ts +1 -1
- package/packages/_vue2/dist/style.css +1 -1
- package/packages/_vue3/dist/{block-styles.fee20f95.js → block-styles.b1836f48.js} +19 -17
- package/packages/_vue3/dist/block-styles.b81e8e00.cjs +1 -0
- package/packages/{_vue2/dist/get-processed-block.7744e4bc.cjs → _vue3/dist/get-processed-block.7681705a.cjs} +1 -1
- package/packages/{_vue2/dist/get-processed-block.e326a312.js → _vue3/dist/get-processed-block.aed48c68.js} +1 -1
- package/packages/_vue3/dist/index.0bf7b9df.cjs +30 -0
- package/packages/_vue3/dist/{index.7a69508d.js → index.dfbf4ad8.js} +537 -432
- package/packages/_vue3/dist/render-block.7d6c9594.cjs +3 -0
- package/packages/_vue3/dist/render-block.bd00521b.js +258 -0
- package/packages/_vue3/dist/{render-component.66d935aa.cjs → render-component.7b0412f1.cjs} +1 -1
- package/packages/_vue3/dist/{render-component.12bec717.js → render-component.98c61732.js} +3 -3
- package/packages/_vue3/dist/{render-inlined-styles.87ca82f0.js → render-inlined-styles.dc458558.js} +9 -7
- package/packages/_vue3/dist/render-inlined-styles.fb31ff26.cjs +1 -0
- package/packages/_vue3/dist/render-repeated-block.c0e57489.js +36 -0
- package/packages/_vue3/dist/render-repeated-block.dc67945a.cjs +1 -0
- package/packages/_vue3/dist/{render-styles.2274749d.cjs → render-styles.c2fe7073.cjs} +1 -1
- package/packages/_vue3/dist/{render-styles.e9da8e6c.js → render-styles.c739f8f5.js} +2 -2
- package/packages/_vue3/dist/sdk.cjs +1 -1
- package/packages/_vue3/dist/sdk.js +6 -6
- package/packages/_vue3/dist/src/blocks/columns/columns.vue.d.ts +5 -5
- package/packages/_vue3/dist/src/blocks/custom-code/custom-code.vue.d.ts +1 -1
- package/packages/_vue3/dist/src/blocks/embed/embed.vue.d.ts +5 -2
- package/packages/_vue3/dist/src/blocks/img/img.vue.d.ts +1 -1
- package/packages/_vue3/dist/src/blocks/symbol/symbol.vue.d.ts +35 -22
- package/packages/_vue3/dist/src/components/render-block/block-styles.vue.d.ts +2 -2
- package/packages/_vue3/dist/src/components/render-block/render-block.helpers.d.ts +11 -0
- package/packages/_vue3/dist/src/components/render-block/render-component.vue.d.ts +1 -31
- package/packages/_vue3/dist/src/components/render-block/render-repeated-block.vue.d.ts +8 -1
- package/packages/_vue3/dist/src/components/render-blocks.vue.d.ts +3 -3
- package/packages/_vue3/dist/src/components/render-content/components/render-styles.vue.d.ts +1 -1
- package/packages/_vue3/dist/src/components/render-content/render-content.vue.d.ts +29 -19
- package/packages/_vue3/dist/src/components/render-inlined-styles.vue.d.ts +1 -1
- package/packages/_vue3/dist/src/context/builder.context.d.ts +11 -1
- package/packages/_vue3/dist/src/functions/track/helpers.d.ts +5 -0
- package/packages/{_vue2/dist/src/functions/track.d.ts → _vue3/dist/src/functions/track/index.d.ts} +5 -10
- package/packages/_vue3/dist/src/functions/track/interaction.d.ts +13 -0
- package/packages/_vue3/dist/src/helpers/ab-tests.d.ts +1 -1
- package/packages/_vue3/dist/src/helpers/cookie.d.ts +1 -1
- package/packages/_vue3/dist/src/helpers/localStorage.d.ts +2 -1
- package/packages/_vue3/dist/src/helpers/sessionId.d.ts +2 -2
- package/packages/_vue3/dist/src/index.d.ts +1 -1
- package/packages/_vue3/dist/style.css +1 -1
- package/packages/_vue2/dist/block-styles.57bb90ae.cjs +0 -1
- package/packages/_vue2/dist/index.edd725b5.cjs +0 -30
- package/packages/_vue2/dist/render-block.55447f79.js +0 -251
- package/packages/_vue2/dist/render-block.fed38662.cjs +0 -3
- package/packages/_vue2/dist/render-component-with-context.6996f337.cjs +0 -1
- package/packages/_vue2/dist/render-component-with-context.e7fa8487.js +0 -53
- package/packages/_vue2/dist/render-inlined-styles.0be888b3.cjs +0 -1
- package/packages/_vue2/dist/render-repeated-block.e916911e.js +0 -53
- package/packages/_vue2/dist/render-repeated-block.f6ac2dc0.cjs +0 -1
- package/packages/_vue2/dist/src/components/render-block/render-component-with-context.vue.d.ts +0 -114
- package/packages/_vue3/dist/block-styles.6b0bbe3d.cjs +0 -1
- package/packages/_vue3/dist/index.a102bdda.cjs +0 -30
- package/packages/_vue3/dist/render-block.4a0e514b.cjs +0 -3
- package/packages/_vue3/dist/render-block.9cdf5af8.js +0 -262
- package/packages/_vue3/dist/render-component-with-context.7d2eb137.js +0 -50
- package/packages/_vue3/dist/render-component-with-context.a37b552e.cjs +0 -1
- package/packages/_vue3/dist/render-inlined-styles.540df9a2.cjs +0 -1
- package/packages/_vue3/dist/render-repeated-block.0360d32e.js +0 -48
- package/packages/_vue3/dist/render-repeated-block.8da78c07.cjs +0 -1
- package/packages/_vue3/dist/src/components/render-block/render-component-with-context.vue.d.ts +0 -48
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
"use strict";const r=require("vue"),k="vue3";function h(){return typeof window<"u"&&typeof document<"u"}const j={};function L(e,n){let t=j[e];if(t||(t=j[e]=[]),t.push(n),h()){const o={type:"builder.register",data:{type:e,info:n}};try{parent.postMessage(o,"*"),parent!==window&&window.postMessage(o,"*")}catch(i){console.debug("Could not postmessage",i)}}}const ge=()=>{L("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 A=!1;const be=(e={})=>{var n,t;A||(A=!0,h()&&((n=window.parent)==null||n.postMessage({type:"builder.sdkInfo",data:{target:k,supportsPatchUpdates:!1,supportsAddBlockScoping:!0,supportsCustomBreakpoints:!0}},"*"),(t=window.parent)==null||t.postMessage({type:"builder.updateContent",data:{options:e}},"*"),window.addEventListener("message",({data:o})=>{var i,s;if(!!(o!=null&&o.type))switch(o.type){case"builder.evaluate":{const a=o.data.text,l=o.data.arguments||[],c=o.data.id,d=new Function(a);let u,m=null;try{u=d.apply(null,l)}catch(p){m=p}m?(i=window.parent)==null||i.postMessage({type:"builder.evaluateError",data:{id:c,error:m.message}},"*"):u&&typeof u.then=="function"?u.then(p=>{var b;(b=window.parent)==null||b.postMessage({type:"builder.evaluateResult",data:{id:c,result:p}},"*")}).catch(console.error):(s=window.parent)==null||s.postMessage({type:"builder.evaluateResult",data:{result:u,id:c}},"*");break}}})))},x=e=>JSON.parse(JSON.stringify(e)),W={small:{min:320,default:321,max:640},medium:{min:641,default:642,max:991},large:{min:990,default:991,max:1200}},ye=(e,n=W)=>`@media (max-width: ${n[e].max}px)`,M=({small:e,medium:n})=>{const t=x(W);if(!e||!n)return t;const o=Math.floor(e/2);t.small={max:e,min:o,default:o+1};const i=t.small.max+1;t.medium={max:n,min:i,default:i+1};const s=t.medium.max+1;return t.large={max:2e3,min:s,default:s+1},t},ke=e=>e.replace(/([a-z0-9]|(?=[A-Z]))([A-Z])/g,"$1-$2").toLowerCase(),y=e=>e!=null,z=e=>Object.entries(e).map(([t,o])=>{if(typeof o=="string")return`${ke(t)}: ${o};`}).filter(y),v=e=>z(e).join(`
|
|
2
|
+
`),ve=({mediaQuery:e,className:n,styles:t})=>{const o=`.${n} {
|
|
3
|
+
${v(t)}
|
|
4
|
+
}`;return e?`${e} {
|
|
5
|
+
${o}
|
|
6
|
+
}`:o},xe=()=>Promise.resolve().then(()=>he).then(e=>e.default).catch(e=>{throw console.error("Error while attempting to dynamically import component RenderBlocks at ../../components/render-blocks.vue",e),e}),Ce=()=>Promise.resolve().then(()=>require("./render-inlined-styles.fb31ff26.cjs")).then(e=>e.default).catch(e=>{throw console.error("Error while attempting to dynamically import component RenderInlinedStyles at ../../components/render-inlined-styles.vue",e),e}),Se={name:"builder-columns",components:{RenderInlinedStyles:r.defineAsyncComponent(Ce),RenderBlocks:r.defineAsyncComponent(xe)},props:["space","columns","stackColumnsAt","reverseColumnsWhenStacked","customBreakpoints","builderBlock"],data(){return{TARGET:k}},computed:{columnsCssVars(){const e=this.stackColumnsAt==="never"?"inherit":this.reverseColumnsWhenStacked?"column-reverse":"column";return{"--flex-dir":e,"--flex-dir-tablet":this.maybeApplyForTablet(e)}},columnCssVars(){const e="100%",n="0";return{"--column-width":e,"--column-margin-left":n,"--column-width-tablet":this.maybeApplyForTablet(e),"--column-margin-left-tablet":this.maybeApplyForTablet(n)}},columnStyleObjects(){return{columns:{small:{flexDirection:"var(--flex-dir)",alignItems:"stretch"},medium:{flexDirection:"var(--flex-dir-tablet)",alignItems:"stretch"}},column:{small:{width:"var(--column-width) !important",marginLeft:"var(--column-margin-left) !important"},medium:{width:"var(--column-width-tablet) !important",marginLeft:"var(--column-margin-left-tablet) !important"}}}},columnsStyles(){return`
|
|
7
|
+
@media (max-width: ${this.getWidthForBreakpointSize("medium")}px) {
|
|
8
|
+
.${this.builderBlock.id}-breakpoints {
|
|
9
|
+
${v(this.columnStyleObjects.columns.medium)}
|
|
10
|
+
}
|
|
11
|
+
|
|
12
|
+
.${this.builderBlock.id}-breakpoints > .builder-column {
|
|
13
|
+
${v(this.columnStyleObjects.column.medium)}
|
|
14
|
+
}
|
|
15
|
+
}
|
|
16
|
+
|
|
17
|
+
@media (max-width: ${this.getWidthForBreakpointSize("small")}px) {
|
|
18
|
+
.${this.builderBlock.id}-breakpoints {
|
|
19
|
+
${v(this.columnStyleObjects.columns.small)}
|
|
20
|
+
}
|
|
21
|
+
|
|
22
|
+
.${this.builderBlock.id}-breakpoints > .builder-column {
|
|
23
|
+
${v(this.columnStyleObjects.column.small)}
|
|
24
|
+
}
|
|
25
|
+
},
|
|
26
|
+
`},reactNativeColumnsStyles(){return this.columnStyleObjects.columns.small},reactNativeColumnStyles(){return this.columnStyleObjects.column.small}},methods:{getGutterSize(){return typeof this.space=="number"?this.space||0:20},getColumns(){return this.columns||[]},getWidth(e){var t;const n=this.getColumns();return((t=n[e])==null?void 0:t.width)||100/n.length},getColumnCssWidth(e){const n=this.getColumns(),o=this.getGutterSize()*(n.length-1)/n.length;return`calc(${this.getWidth(e)}% - ${o}px)`},maybeApplyForTablet(e){return(this.stackColumnsAt||"tablet")==="tablet"?e:"inherit"},getWidthForBreakpointSize(e){return M(this.customBreakpoints||{})[e].max},_classStringToObject(e){const n={};if(typeof e!="string")return n;const t=e.trim().split(/\s+/);for(const o of t)n[o]=!0;return n}}};const f=(e,n)=>{const t=e.__vccOpts||e;for(const[o,i]of n)t[o]=i;return t};function _e(e,n,t,o,i,s){const a=r.resolveComponent("render-inlined-styles"),l=r.resolveComponent("render-blocks");return r.openBlock(),r.createElementBlock("div",{class:r.normalizeClass(s._classStringToObject(`builder-columns ${t.builderBlock.id}-breakpoints div-256wrwn33ry`)),style:r.normalizeStyle({...i.TARGET==="reactNative"?s.reactNativeColumnsStyles:{},...s.columnsCssVars})},[i.TARGET!=="reactNative"?(r.openBlock(),r.createBlock(a,{key:0,styles:s.columnsStyles},null,8,["styles"])):r.createCommentVNode("",!0),(r.openBlock(!0),r.createElementBlock(r.Fragment,null,r.renderList(t.columns,(c,d)=>(r.openBlock(),r.createElementBlock("div",{key:d,class:"builder-column div-256wrwn33ry-2",style:r.normalizeStyle({width:s.getColumnCssWidth(d),marginLeft:`${d===0?0:s.getGutterSize()}px`,...i.TARGET==="reactNative"?s.reactNativeColumnStyles:{},...s.columnCssVars})},[r.createVNode(l,{blocks:c.blocks,path:`component.options.columns.${d}.blocks`,parent:t.builderBlock.id,styleProp:{flexGrow:"1"}},null,8,["blocks","path","parent"])],4))),128))],6)}const K=f(Se,[["render",_e],["__scopeId","data-v-cdd596ee"]]);function F(e){return e.replace(/http(s)?:/,"")}function we(e="",n,t){const o=new RegExp("([?&])"+n+"=.*?(&|$)","i"),i=e.indexOf("?")!==-1?"&":"?";return e.match(o)?e.replace(o,"$1"+n+"="+encodeURIComponent(t)+"$2"):e+i+n+"="+encodeURIComponent(t)}function Ie(e,n){if(!e||!(e!=null&&e.match(/cdn\.shopify\.com/))||!n)return e;if(n==="master")return F(e);const t=e.match(/(_\d+x(\d+)?)?(\.(jpg|jpeg|gif|png|bmp|bitmap|tiff|tif)(\?v=\d+)?)/i);if(t){const o=e.split(t[0]),i=t[3],s=n.match("x")?n:`${n}x`;return F(`${o[0]}_${s}${i}`)}return null}function _(e){if(!e)return e;const n=[100,200,400,800,1200,1600,2e3];if(e.match(/builder\.io/)){let t=e;const o=Number(e.split("?width=")[1]);return isNaN(o)||(t=`${t} ${o}w`),n.filter(i=>i!==o).map(i=>`${we(e,"width",i)} ${i}w`).concat([t]).join(", ")}return e.match(/cdn\.shopify\.com/)?n.map(t=>[Ie(e,`${t}x${t}`),t]).filter(([t])=>!!t).map(([t,o])=>`${t} ${o}w`).concat([e]).join(", "):e}const Te={name:"builder-image",props:["image","src","srcset","noWebp","aspectRatio","altText","backgroundPosition","backgroundSize","className","sizes","builderBlock","fitContent"],computed:{srcSetToUse(){var t;const n=this.image||this.src;if(!n||!(n.match(/builder\.io/)||n.match(/cdn\.shopify\.com/)))return this.srcset;if(this.srcset&&((t=this.image)==null?void 0:t.includes("builder.io/api/v1/image"))){if(!this.srcset.includes(this.image.split("?")[0]))return console.debug("Removed given srcset"),_(n)}else if(this.image&&!this.srcset)return _(n);return _(n)},webpSrcSet(){var e;return((e=this.srcSetToUse)==null?void 0: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}},methods:{_classStringToObject(e){const n={};if(typeof e!="string")return n;const t=e.trim().split(/\s+/);for(const o of t)n[o]=!0;return n}}};const Re=["srcset"],Be=["alt","role","src","srcset","sizes"],Ee={key:2,class:"div-kd7f8ex7am-2"};function Pe(e,n,t,o,i,s){var a,l,c,d;return r.openBlock(),r.createElementBlock(r.Fragment,null,[r.createElementVNode("picture",null,[s.webpSrcSet?(r.openBlock(),r.createElementBlock("source",{key:0,type:"image/webp",srcset:s.webpSrcSet},null,8,Re)):r.createCommentVNode("",!0),r.createElementVNode("img",{loading:"lazy",alt:t.altText,role:t.altText?"presentation":void 0,style:r.normalizeStyle({objectPosition:t.backgroundPosition||"center",objectFit:t.backgroundSize||"cover",...s.aspectRatioCss}),class:r.normalizeClass(s._classStringToObject("builder-image"+(t.className?" "+t.className:"")+" img-kd7f8ex7am")),src:t.image,srcset:s.srcSetToUse,sizes:t.sizes},null,14,Be)]),t.aspectRatio&&!(((l=(a=t.builderBlock)==null?void 0:a.children)==null?void 0:l.length)&&t.fitContent)?(r.openBlock(),r.createElementBlock("div",{key:0,class:"builder-image-sizer div-kd7f8ex7am",style:r.normalizeStyle({paddingTop:t.aspectRatio*100+"%"})},null,4)):r.createCommentVNode("",!0),((d=(c=t.builderBlock)==null?void 0:c.children)==null?void 0:d.length)&&t.fitContent?r.renderSlot(e.$slots,"default",{key:1},void 0,!0):r.createCommentVNode("",!0),!t.fitContent&&e.children?(r.openBlock(),r.createElementBlock("div",Ee,[r.renderSlot(e.$slots,"default",{},void 0,!0)])):r.createCommentVNode("",!0)],64)}const H=f(Te,[["render",Pe],["__scopeId","data-v-7ef88ea3"]]),je={name:"builder-text",props:["text"]},Ae=["innerHTML"];function Fe(e,n,t,o,i,s){return r.openBlock(),r.createElementBlock("span",{class:"builder-text",innerHTML:t.text},null,8,Ae)}const D=f(je,[["render",Fe]]),Oe={name:"builder-video",props:["autoPlay","muted","controls","loop","playsInline","attributes","fit","position","video","posterImage"],computed:{videoProps(){return{...this.autoPlay===!0?{autoPlay:!0}:{},...this.muted===!0?{muted:!0}:{},...this.controls===!0?{controls:!0}:{},...this.loop===!0?{loop:!0}:{},...this.playsInline===!0?{playsInline:!0}:{}}},spreadProps(){return{...this.attributes,...this.videoProps}}}},Ve=["src","poster"];function Ue(e,n,t,o,i,s){var a;return r.openBlock(),r.createElementBlock("video",r.mergeProps({style:{width:"100%",height:"100%",...(a=t.attributes)==null?void 0:a.style,objectFit:t.fit,objectPosition:t.position,borderRadius:1},src:t.video||"no-src",poster:t.posterImage},s.spreadProps),null,16,Ve)}const q=f(Oe,[["render",Ue]]),$e=Symbol(),C={Builder:{content:null,context:{},state:{},apiKey:null,registeredComponents:{},inheritedStyles:{}},key:$e};function Ne(){return typeof globalThis<"u"?globalThis:typeof window<"u"?window:typeof global<"u"?global:typeof self<"u"?self:globalThis}function Le(){const e=Ne().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.
|
|
27
|
+
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 G=Le(),We=e=>{if(e==="localhost"||e==="127.0.0.1")return e;const n=e.split(".");return n.length>2?n.slice(1).join("."):e},J=async({name:e,canTrack:n})=>{var t;try{return n?(t=document.cookie.split("; ").find(o=>o.startsWith(`${e}=`)))==null?void 0:t.split("=")[1]:void 0}catch(o){console.debug("[COOKIE] GET error: ",o);return}},Me=e=>e.map(([n,t])=>t?`${n}=${t}`:n).filter(y).join("; "),ze=[["secure",""],["SameSite","None"]],Ke=({name:e,value:n,expires:t})=>{const i=(h()?location.protocol==="https:":!0)?ze:[[]],s=t?[["expires",t.toUTCString()]]:[[]],a=[[e,n],...s,["path","/"],["domain",We(window.location.hostname)],...i];return Me(a)},X=async({name:e,value:n,expires:t,canTrack:o})=>{try{if(!o)return;const i=Ke({name:e,value:n,expires:t});document.cookie=i}catch(i){console.warn("[COOKIE] SET error: ",i)}},He="builderio.variations",Y=e=>`${He}.${e}`,De=({contentId:e,canTrack:n})=>J({name:Y(e),canTrack:n}),qe=({contentId:e,canTrack:n,value:t})=>X({name:Y(e),value:t,canTrack:n}),Ge=e=>y(e.id)&&y(e.variations)&&Object.keys(e.variations).length>0,Je=({id:e,variations:n})=>{var i;let t=0;const o=Math.random();for(const s in n)if(t+=(i=n[s])==null?void 0:i.testRatio,o<t)return s;return e},O=({item:e,testGroupId:n})=>{const t=e.variations[n];return n===e.id||!t?{testVariationId:e.id,testVariationName:"Default"}:{data:t.data,testVariationId:t.id,testVariationName:t.name||(t.id===e.id?"Default":"")}},Xe=async({item:e,canTrack:n})=>{const t=await De({canTrack:n,contentId:e.id}),o=t?O({item:e,testGroupId:t}):void 0;if(o)return o;{const i=Je({variations:e.variations,id:e.id});return qe({contentId:e.id,value:i,canTrack:n}).catch(s=>{console.error("could not store A/B test variation: ",s)}),O({item:e,testGroupId:i})}},Ye=async({item:e,canTrack:n})=>{if(!Ge(e))return;const t=await Xe({item:e,canTrack:n});Object.assign(e,t)};function w(e,n=null,t="."){return Object.keys(e).reduce((o,i)=>{const s=e[i],a=[n,i].filter(Boolean).join(t);return[typeof s=="object",s!==null,!(Array.isArray(s)&&s.length===0)].every(Boolean)?{...o,...w(s,a,t)}:{...o,[a]:s}},{})}const V="builder.",Qe="options.",Q=e=>{const n={};return e.forEach((t,o)=>{n[o]=t}),n},Z=e=>{if(!e)return{};const n=R(e),t={};return Object.keys(n).forEach(o=>{if(o.startsWith(V)){const i=o.replace(V,"").replace(Qe,"");t[i]=n[o]}}),t},ee=()=>{if(!h())return{};const e=new URLSearchParams(window.location.search);return Z(e)},R=e=>e instanceof URLSearchParams?Q(e):e,Ze=e=>{const{limit:n=30,userAttributes:t,query:o,noTraverse:i=!1,model:s,apiKey:a,includeRefs:l=!0,locale:c}=e;if(!a)throw new Error("Missing API key");const d=new URL(`https://cdn.builder.io/api/v2/content/${s}?apiKey=${a}&limit=${n}&noTraverse=${i}&includeRefs=${l}${c?`&locale=${c}`:""}`),u={...ee(),...R(e.options||{})},m=w(u);for(const p in m)d.searchParams.set(p,String(m[p]));if(t&&d.searchParams.set("userAttributes",JSON.stringify(t)),o){const p=w({query:o});for(const b in p)d.searchParams.set(b,JSON.stringify(p[b]))}return d};async function B(e){return(await te({...e,limit:1})).results[0]||null}async function te(e){const n=Ze(e),o=await(await G(n.href)).json(),i=e.canTrack!==!1;if(i&&Array.isArray(o.results))for(const s of o.results)await Ye({item:s,canTrack:i});return o}const et=()=>Promise.resolve().then(()=>un).then(e=>e.default).catch(e=>{throw console.error("Error while attempting to dynamically import component RenderContent at ../../components/render-content/render-content.vue",e),e}),tt={name:"builder-symbol",components:{RenderContent:r.defineAsyncComponent(et)},props:["attributes","symbol","dynamic"],data(){return{fetchedContent:null}},inject:{builderContext:C.key},watch:{onUpdateHook0:{handler(){var n;const e=this.symbol;e&&!e.content&&!this.fetchedContent&&e.model&&((n=this.builderContext)==null?void 0:n.apiKey)&&B({model:e.model,apiKey:this.builderContext.apiKey,query:{id:e.entry}}).then(t=>{this.fetchedContent=t})},immediate:!0}},computed:{className(){var e,n;return[...Object.keys(this.attributes.class),"builder-symbol",(e=this.symbol)!=null&&e.inline?"builder-inline-symbol":void 0,((n=this.symbol)==null?void 0:n.dynamic)||this.dynamic?"builder-dynamic-symbol":void 0].filter(Boolean).join(" ")},contentToUse(){var e;return((e=this.symbol)==null?void 0:e.content)||this.fetchedContent},onUpdateHook0(){return{0:this.symbol,1:this.fetchedContent}}},methods:{_classStringToObject(e){const n={};if(typeof e!="string")return n;const t=e.trim().split(/\s+/);for(const o of t)n[o]=!0;return n}}},nt=["dataSet"];function ot(e,n,t,o,i,s){var l,c,d,u,m;const a=r.resolveComponent("render-content");return r.openBlock(),r.createElementBlock("div",r.mergeProps({dataSet:{class:s.className},class:s._classStringToObject(s.className)},t.attributes),[r.createVNode(a,{apiKey:s.builderContext.apiKey,context:s.builderContext.context,customComponents:Object.values(s.builderContext.registeredComponents),data:{...(l=t.symbol)==null?void 0:l.data,...s.builderContext.state,...(u=(d=(c=t.symbol)==null?void 0:c.content)==null?void 0:d.data)==null?void 0:u.state},model:(m=t.symbol)==null?void 0:m.model,content:s.contentToUse},null,8,["apiKey","context","customComponents","data","model","content"])],16,nt)}const ne=f(tt,[["render",ot]]),rt={name:"builder-button",props:["attributes","text","link","openLinkInNewTab"]};const st=["href","target"];function it(e,n,t,o,i,s){return t.link?(r.openBlock(),r.createElementBlock("a",r.mergeProps({key:0,role:"button",href:t.link,target:t.openLinkInNewTab?"_blank":void 0},t.attributes),r.toDisplayString(t.text),17,st)):(r.openBlock(),r.createElementBlock("button",r.mergeProps({key:1,class:"button-7jvpanrlkn"},t.attributes),r.toDisplayString(t.text),17))}const oe=f(rt,[["render",it],["__scopeId","data-v-2f0d6ac2"]]),at={name:"builder-section-component",props:["attributes","maxWidth"]};function ct(e,n,t,o,i,s){return r.openBlock(),r.createElementBlock("section",r.mergeProps({style:{width:"100%",alignSelf:"stretch",flexGrow:"1",boxSizing:"border-box",maxWidth:`${t.maxWidth&&typeof t.maxWidth=="number"?t.maxWidth:1200}px`,display:"flex",flexDirection:"column",alignItems:"stretch",marginLeft:"auto",marginRight:"auto"}},t.attributes),[r.renderSlot(e.$slots,"default")],16)}const re=f(at,[["render",ct]]),lt={name:"builder-fragment-component",props:[]};function dt(e,n,t,o,i,s){return r.openBlock(),r.createElementBlock("span",null,[r.renderSlot(e.$slots,"default")])}const se=f(lt,[["render",dt]]),ut={name:"Core:Button",builtIn:!0,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},S=e=>{const n=e.toString().trim();return`return (${!n.startsWith("function")&&!n.startsWith("(")?"function ":""}${n}).apply(this, arguments)`},mt={name:"Columns",builtIn:!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:S(e=>{function n(){t.forEach(o=>{o.delete("width")})}const t=e.get("columns");Array.isArray(t)&&!!t.find(i=>i.get("width"))&&(!!t.find(s=>!s.get("width"))||t.reduce((l,c)=>l+c.get("width"),0)!==100)&&n()})},{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}]},pt={name:"Fragment",static:!0,hidden:!0,builtIn:!0,canHaveChildren:!0,noWrap:!0},ht={name:"Image",static:!0,builtIn:!0,image:"https://firebasestorage.googleapis.com/v0/b/builder-3b0a2.appspot.com/o/images%2Fbaseline-insert_photo-24px.svg?alt=media&token=4e5d0ef4-f5e8-4e57-b3a9-38d63a9b9dc4",defaultStyles:{position:"relative",minHeight:"20px",minWidth:"20px",overflow:"hidden"},canHaveChildren:!0,inputs:[{name:"image",type:"file",bubble:!0,allowedFileTypes:["jpeg","jpg","png","svg"],required:!0,defaultValue:"https://cdn.builder.io/api/v1/image/assets%2Fpwgjf0RoYWbdnJSbpBAjXNRMe9F2%2Ffb27a7c790324294af8be1c35fe30f4d",onChange:S(e=>{e.delete("srcset"),e.delete("noWebp");function t(a,l=6e4){return new Promise((c,d)=>{const u=document.createElement("img");let m=!1;u.onload=()=>{m=!0,c(u)},u.addEventListener("error",p=>{console.warn("Image load failed",p.error),d(p.error)}),u.src=a,setTimeout(()=>{m||d(new Error("Image load timed out"))},l)})}function o(a){return Math.round(a*1e3)/1e3}const i=e.get("image"),s=e.get("aspectRatio");if(fetch(i).then(a=>a.blob()).then(a=>{a.type.includes("svg")&&e.set("noWebp",!0)}),i&&(!s||s===.7041))return t(i).then(a=>{const l=e.get("aspectRatio");e.get("image")===i&&(!l||l===.7041)&&a.width&&a.height&&(e.set("aspectRatio",o(a.height/a.width)),e.set("height",a.height),e.set("width",a.width))})})},{name:"backgroundSize",type:"text",defaultValue:"cover",enum:[{label:"contain",value:"contain",helperText:"The image should never get cropped"},{label:"cover",value:"cover",helperText:"The image should fill it's box, cropping when needed"}]},{name:"backgroundPosition",type:"text",defaultValue:"center",enum:["center","top","left","right","bottom","top left","top right","bottom left","bottom right"]},{name:"altText",type:"string",helperText:"Text to display when the user has images off"},{name:"height",type:"number",hideFromUI:!0},{name:"width",type:"number",hideFromUI:!0},{name:"sizes",type:"string",hideFromUI:!0},{name:"srcset",type:"string",hideFromUI:!0},{name:"lazy",type:"boolean",defaultValue:!0,hideFromUI:!0},{name:"fitContent",type:"boolean",helperText:"When child blocks are provided, fit to them instead of using the image's aspect ratio",defaultValue:!0},{name:"aspectRatio",type:"number",helperText:"This is the ratio of height/width, e.g. set to 1.5 for a 300px wide and 200px tall photo. Set to 0 to not force the image to maintain it's aspect ratio",advanced:!0,defaultValue:.7041}]},ft={name:"Core:Section",static:!0,builtIn:!0,image:"https://cdn.builder.io/api/v1/image/assets%2FIsxPKMo2gPRRKeakUztj1D6uqed2%2F682efef23ace49afac61748dd305c70a",inputs:[{name:"maxWidth",type:"number",defaultValue:1200},{name:"lazyLoad",type:"boolean",defaultValue:!1,advanced:!0,description:"Only render this section when in view"}],defaultStyles:{paddingLeft:"20px",paddingRight:"20px",paddingTop:"50px",paddingBottom:"50px",marginTop:"0px",width:"100vw",marginLeft:"calc(50% - 50vw)"},canHaveChildren:!0,defaultChildren:[{"@type":"@builder.io/sdk:Element",responsiveStyles:{large:{textAlign:"center"}},component:{name:"Text",options:{text:"<p><b>I am a section! My content keeps from getting too wide, so that it's easy to read even on big screens.</b></p><p>Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur</p>"}}}]},gt={name:"Symbol",noWrap:!0,static:!0,builtIn:!0,inputs:[{name:"symbol",type:"uiSymbol"},{name:"dataOnly",helperText:"Make this a data symbol that doesn't display any UI",type:"boolean",defaultValue:!1,advanced:!0,hideFromUI:!0},{name:"inheritState",helperText:"Inherit the parent component state and data",type:"boolean",defaultValue:!1,advanced:!0},{name:"renderToLiquid",helperText:"Render this symbols contents to liquid. Turn off to fetch with javascript and use custom targeting",type:"boolean",defaultValue:!1,advanced:!0,hideFromUI:!0},{name:"useChildren",hideFromUI:!0,type:"boolean"}]},bt={name:"Text",static:!0,builtIn:!0,image:"https://firebasestorage.googleapis.com/v0/b/builder-3b0a2.appspot.com/o/images%2Fbaseline-text_fields-24px%20(1).svg?alt=media&token=12177b73-0ee3-42ca-98c6-0dd003de1929",inputs:[{name:"text",type:"html",required:!0,autoFocus:!0,bubble:!0,defaultValue:"Enter some text..."}],defaultStyles:{lineHeight:"normal",height:"auto",textAlign:"center"}},yt={name:"Video",canHaveChildren:!0,builtIn:!0,defaultStyles:{minHeight:"20px",minWidth:"20px"},image:"https://firebasestorage.googleapis.com/v0/b/builder-3b0a2.appspot.com/o/images%2Fbaseline-videocam-24px%20(1).svg?alt=media&token=49a84e4a-b20e-4977-a650-047f986874bb",inputs:[{name:"video",type:"file",allowedFileTypes:["mp4"],bubble:!0,defaultValue:"https://firebasestorage.googleapis.com/v0/b/builder-3b0a2.appspot.com/o/assets%2FKQlEmWDxA0coC3PK6UvkrjwkIGI2%2F28cb070609f546cdbe5efa20e931aa4b?alt=media&token=912e9551-7a7c-4dfb-86b6-3da1537d1a7f",required:!0},{name:"posterImage",type:"file",allowedFileTypes:["jpeg","png"],helperText:"Image to show before the video plays"},{name:"autoPlay",type:"boolean",defaultValue:!0},{name:"controls",type:"boolean",defaultValue:!1},{name:"muted",type:"boolean",defaultValue:!0},{name:"loop",type:"boolean",defaultValue:!0},{name:"playsInline",type:"boolean",defaultValue:!0},{name:"fit",type:"text",defaultValue:"cover",enum:["contain","cover","fill","auto"]},{name:"fitContent",type:"boolean",helperText:"When child blocks are provided, fit to them instead of using the aspect ratio",defaultValue:!0,advanced:!0},{name:"position",type:"text",defaultValue:"center",enum:["center","top","left","right","bottom","top left","top right","bottom left","bottom right"]},{name:"height",type:"number",advanced:!0},{name:"width",type:"number",advanced:!0},{name:"aspectRatio",type:"number",advanced:!0,defaultValue:.7004048582995948},{name:"lazyLoad",type:"boolean",helperText:'Load this video "lazily" - as in only when a user scrolls near the video. Recommended for optmized performance and bandwidth consumption',defaultValue:!0,advanced:!0}]},kt={name:"Embed",static:!0,builtIn:!0,inputs:[{name:"url",type:"url",required:!0,defaultValue:"",helperText:"e.g. enter a youtube url, google map, etc",onChange:S(e=>{const n=e.get("url");if(n)return e.set("content","Loading..."),fetch(`https://iframe.ly/api/iframely?url=${n}&api_key=ae0e60e78201a3f2b0de4b`).then(o=>o.json()).then(o=>{e.get("url")===n&&(o.html?e.set("content",o.html):e.set("content","Invalid url, please try another"))}).catch(o=>{e.set("content","There was an error embedding this URL, please try again or another URL")});e.delete("content")})},{name:"content",type:"html",defaultValue:'<div style="padding: 20px; text-align: center">(Choose an embed URL)<div>',hideFromUI:!0}]},vt=["text/javascript","application/javascript","application/ecmascript"],xt=e=>vt.includes(e.type),Ct={name:"builder-embed",props:["content"],data(){return{scriptsInserted:[],scriptsRun:[],ranInitFn:!1}},watch:{onUpdateHook0:{handler(){this.$refs.elem&&!this.ranInitFn&&(this.ranInitFn=!0,this.findAndRunScripts())},immediate:!0}},computed:{onUpdateHook0(){return{0:this.$refs.elem,1:this.ranInitFn}}},methods:{findAndRunScripts(){if(!this.$refs.elem||!this.$refs.elem.getElementsByTagName)return;const e=this.$refs.elem.getElementsByTagName("script");for(let n=0;n<e.length;n++){const t=e[n];if(t.src&&!this.scriptsInserted.includes(t.src)){this.scriptsInserted.push(t.src);const o=document.createElement("script");o.async=!0,o.src=t.src,document.head.appendChild(o)}else if(xt(t)&&!this.scriptsRun.includes(t.innerText))try{this.scriptsRun.push(t.innerText),new Function(t.innerText)()}catch(o){console.warn("`Embed`: Error running script:",o)}}}}},St=["innerHTML"];function _t(e,n,t,o,i,s){return r.openBlock(),r.createElementBlock("div",{class:"builder-embed",ref:"elem",innerHTML:t.content},null,8,St)}const wt=f(Ct,[["render",_t]]);function It(){return h()&&window.self!==window.top}function g(){return It()&&window.location.search.indexOf("builder.frameEditing=")!==-1}const Tt={name:"builder-img-component",props:["backgroundSize","backgroundPosition","imgSrc","altText","image","attributes"],data(){return{isEditing:g}}},Rt=["alt","src"];function Bt(e,n,t,o,i,s){return r.openBlock(),r.createElementBlock("img",r.mergeProps({style:{objectFit:t.backgroundSize||"cover",objectPosition:t.backgroundPosition||"center"},key:i.isEditing()&&t.imgSrc||"default-key",alt:t.altText,src:t.imgSrc||t.image},t.attributes),null,16,Rt)}const Et=f(Tt,[["render",Bt]]),Pt={name:"Raw:Img",hideFromInsertMenu:!0,builtIn:!0,image:"https://firebasestorage.googleapis.com/v0/b/builder-3b0a2.appspot.com/o/images%2Fbaseline-insert_photo-24px.svg?alt=media&token=4e5d0ef4-f5e8-4e57-b3a9-38d63a9b9dc4",inputs:[{name:"image",bubble:!0,type:"file",allowedFileTypes:["jpeg","jpg","png","svg"],required:!0}],noWrap:!0,static:!0},jt={name:"builder-custom-code",props:["replaceNodes","code"],data(){return{scriptsInserted:[],scriptsRun:[]}},mounted(){this.findAndRunScripts()},methods:{findAndRunScripts(){if(this.$refs.elem&&this.$refs.elem.getElementsByTagName&&typeof window<"u"){const e=this.$refs.elem.getElementsByTagName("script");for(let n=0;n<e.length;n++){const t=e[n];if(t.src){if(this.scriptsInserted.includes(t.src))continue;this.scriptsInserted.push(t.src);const o=document.createElement("script");o.async=!0,o.src=t.src,document.head.appendChild(o)}else if(!t.type||["text/javascript","application/javascript","application/ecmascript"].includes(t.type)){if(this.scriptsRun.includes(t.innerText))continue;try{this.scriptsRun.push(t.innerText),new Function(t.innerText)()}catch(o){console.warn("`CustomCode`: Error running script:",o)}}}}},_classStringToObject(e){const n={};if(typeof e!="string")return n;const t=e.trim().split(/\s+/);for(const o of t)n[o]=!0;return n}}},At=["innerHTML"];function Ft(e,n,t,o,i,s){return r.openBlock(),r.createElementBlock("div",{ref:"elem",class:r.normalizeClass(s._classStringToObject("builder-custom-code"+(t.replaceNodes?" replace-nodes":""))),innerHTML:t.code},null,10,At)}const Ot=f(jt,[["render",Ft]]),Vt={name:"Custom Code",static:!0,builtIn:!0,requiredPermissions:["editCode"],inputs:[{name:"code",type:"html",required:!0,defaultValue:"<p>Hello there, I am custom HTML code!</p>",code:!0},{name:"replaceNodes",type:"boolean",helperText:"Preserve server rendered dom nodes",advanced:!0},{name:"scriptsClientOnly",type:"boolean",defaultValue:!1,helperText:"Only print and run scripts on the client. Important when scripts influence DOM that could be replaced when client loads",advanced:!0}]},Ut=()=>[{component:K,...mt},{component:H,...ht},{component:Et,...Pt},{component:D,...bt},{component:q,...yt},{component:ne,...gt},{component:oe,...ut},{component:re,...ft},{component:se,...pt},{component:wt,...kt},{component:Ot,...Vt}];function I({code:e,context:n,state:t,event:o,isExpression:i=!0}){if(e===""){console.warn("Skipping evaluation of empty code block.");return}const s={isEditing:g(),isBrowser:h(),isServer:!h()},l=i&&!(e.includes(";")||e.includes(" return ")||e.trim().startsWith("return "))?`return (${e});`:e;try{return new Function("builder","Builder","state","context","event",l)(s,s,t,n,o)}catch(c){console.warn(`Builder custom code error:
|
|
28
|
+
While Evaluating:
|
|
29
|
+
`,l,`
|
|
30
|
+
`,c)}}function ie(){return!h()||g()?!1:Boolean(location.search.indexOf("builder.preview=")!==-1)}const E=[];function $t(e,n){return E.push({component:e,...n}),console.warn("registerComponent is deprecated. Use the `customComponents` prop in RenderContent instead to provide your custom components to the builder SDK."),e}const ae=({component:e,...n})=>({type:"builder.registerComponent",data:Lt(n)}),Nt=e=>typeof e=="function"?S(e):x(e),Lt=({inputs:e,...n})=>({...x(n),inputs:e==null?void 0:e.map(t=>Object.entries(t).reduce((o,[i,s])=>({...o,[i]:Nt(s)}),{}))});function Wt(){return"xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx".replace(/[xy]/g,function(e){const n=Math.random()*16|0;return(e=="x"?n:n&3|8).toString(16)})}function ce(){return Wt().replace(/-/g,"")}const le="builderSessionId",Mt=async({canTrack:e})=>{if(!e)return;const n=await J({name:le,canTrack:e});if(y(n))return n;{const t=zt();return Kt({id:t,canTrack:e}),t}},zt=()=>ce(),Kt=({id:e,canTrack:n})=>X({name:le,value:e,canTrack:n}),de=()=>h()&&typeof localStorage<"u"?localStorage:void 0,Ht=({key:e,canTrack:n})=>{var t;try{return n?(t=de())==null?void 0:t.getItem(e):void 0}catch(o){console.debug("[LocalStorage] GET error: ",o);return}},Dt=({key:e,canTrack:n,value:t})=>{var o;try{n&&((o=de())==null||o.setItem(e,t))}catch(i){console.debug("[LocalStorage] SET error: ",i)}},ue="builderVisitorId",qt=({canTrack:e})=>{if(!e)return;const n=Ht({key:ue,canTrack:e});if(y(n))return n;{const t=Gt();return Jt({id:t,canTrack:e}),t}},Gt=()=>ce(),Jt=({id:e,canTrack:n})=>Dt({key:ue,value:e,canTrack:n}),Xt=()=>{if(h()){const e=new URL(location.href);return e.pathname===""&&(e.pathname="/"),e}else return console.warn("Cannot get location for tracking in non-browser environment"),null},Yt=()=>typeof navigator=="object"&&navigator.userAgent||"",Qt=()=>{const e=Yt(),n={Android(){return e.match(/Android/i)},BlackBerry(){return e.match(/BlackBerry/i)},iOS(){return e.match(/iPhone|iPod/i)},Opera(){return e.match(/Opera Mini/i)},Windows(){return e.match(/IEMobile/i)||e.match(/WPDesktop/i)},any(){return n.Android()||n.BlackBerry()||n.iOS()||n.Opera()||n.Windows()||k==="reactNative"}},t=e.match(/Tablet|iPad/i),o=Xt();return{urlPath:o==null?void 0:o.pathname,host:(o==null?void 0:o.host)||(o==null?void 0:o.hostname),device:t?"tablet":n.any()?"mobile":"desktop"}},Zt=async({canTrack:e})=>{if(!e)return{visitorId:void 0,sessionId:void 0};const n=await Mt({canTrack:e}),t=qt({canTrack:e});return{sessionId:n,visitorId:t}},en=async({type:e,canTrack:n,apiKey:t,metadata:o,...i})=>({type:e,data:{...i,metadata:{url:location.href,...o},...await Zt({canTrack:n}),userAttributes:Qt(),ownerId:t}});async function T(e){if(!e.apiKey){console.error("[Builder.io]: Missing API key for track call. Please provide your API key.");return}if(!!e.canTrack&&!g()&&!!(h()||k==="reactNative"))return fetch("https://builder.io/api/v1/track",{method:"POST",body:JSON.stringify({events:[await en(e)]}),headers:{"content-type":"application/json"},mode:"cors"}).catch(n=>{console.error("Failed to track: ",n)})}const tn=e=>T({...e,canTrack:!0});function U(e){return Math.round(e*1e3)/1e3}const nn=(e,n,t=!0)=>{if(!(e instanceof HTMLElement))return null;let o=t?e:e.parentElement;do{if(!o)return null;if(n(o))return o}while(o=o.parentElement);return null},on=e=>nn(e,n=>{const t=n.getAttribute("builder-id")||n.id;return Boolean((t==null?void 0:t.indexOf("builder-"))===0)}),$=({event:e,target:n})=>{const t=n.getBoundingClientRect(),o=e.clientX-t.left,i=e.clientY-t.top,s=U(o/t.width),a=U(i/t.height);return{x:s,y:a}},rn=e=>{const n=e.target,t=n&&on(n),o=(t==null?void 0:t.getAttribute("builder-id"))||(t==null?void 0:t.id);return{targetBuilderElement:o||void 0,metadata:{targetOffset:n?$({event:e,target:n}):void 0,builderTargetOffset:t?$({event:e,target:t}):void 0,builderElementIndex:t&&o?[].slice.call(document.getElementsByClassName(o)).indexOf(t):void 0}}},sn=()=>Promise.resolve().then(()=>he).then(e=>e.default).catch(e=>{throw console.error("Error while attempting to dynamically import component RenderBlocks at ../render-blocks.vue",e),e}),an=()=>Promise.resolve().then(()=>require("./render-styles.c2fe7073.cjs")).then(e=>e.default).catch(e=>{throw console.error("Error while attempting to dynamically import component RenderContentStyles at ./components/render-styles.vue",e),e}),cn={name:"render-content",components:{RenderContentStyles:r.defineAsyncComponent(an),RenderBlocks:r.defineAsyncComponent(sn)},props:["content","data","canTrack","locale","context","customComponents","model","apiKey","includeRefs"],data(){return{forceReRenderCount:0,overrideContent:null,update:0,useBreakpoints:null,canTrackToUse:y(this.canTrack)?this.canTrack:!0,overrideState:{},contextContext:this.context||{},allRegisteredComponents:[...Ut(),...E,...this.customComponents||[]].reduce((e,n)=>({...e,[n.name]:n}),{}),httpReqsData:{},clicked:!1}},provide(){const e=this;return{[C.key]:{content:e.useContent,state:e.contentState,context:e.contextContext,apiKey:e.apiKey,registeredComponents:e.allRegisteredComponents}}},mounted(){var e,n;if(this.apiKey||console.error("[Builder.io]: No API key provided to `RenderContent` component. This can cause issues. Please provide an API key using the `apiKey` prop."),h()){if(g()&&(this.forceReRenderCount=this.forceReRenderCount+1,ge(),be({...this.locale?{locale:this.locale}:{},...this.includeRefs?{includeRefs:this.includeRefs}:{}}),Object.values(this.allRegisteredComponents).forEach(t=>{var i;const o=ae(t);(i=window.parent)==null||i.postMessage(o,"*")}),window.addEventListener("message",this.processMessage),window.addEventListener("builder:component:stateChangeListenerActivated",this.emitStateUpdate)),this.useContent){const t=(e=this.useContent)==null?void 0:e.testVariationId,o=(n=this.useContent)==null?void 0:n.id;T({type:"impression",canTrack:this.canTrackToUse,contentId:o,apiKey:this.apiKey,variationId:t!==o?t:void 0})}if(ie()){const t=new URL(location.href).searchParams,o=t.get("builder.preview"),i=t.get("apiKey")||t.get("builder.space");o===this.model&&i===this.apiKey&&B({model:this.model,apiKey:this.apiKey}).then(s=>{s&&(this.overrideContent=s)})}this.evaluateJsCode(),this.runHttpRequests(),this.emitStateUpdate()}},watch:{onUpdateHook0:{handler(){this.evaluateJsCode()},immediate:!0},onUpdateHook1:{handler(){this.runHttpRequests()},immediate:!0},onUpdateHook2:{handler(){this.emitStateUpdate()},immediate:!0}},unmounted(){h()&&(window.removeEventListener("message",this.processMessage),window.removeEventListener("builder:component:stateChangeListenerActivated",this.emitStateUpdate))},computed:{useContent(){var e,n,t,o,i,s,a,l;if(!(!this.content&&!this.overrideContent))return{...this.content,...this.overrideContent,data:{...(e=this.content)==null?void 0:e.data,...this.data,...(n=this.overrideContent)==null?void 0:n.data},meta:{...(t=this.content)==null?void 0:t.meta,...(o=this.overrideContent)==null?void 0:o.meta,breakpoints:this.useBreakpoints||((s=(i=this.overrideContent)==null?void 0:i.meta)==null?void 0:s.breakpoints)||((l=(a=this.content)==null?void 0:a.meta)==null?void 0:l.breakpoints)}}},contentState(){var e,n;return{...(n=(e=this.content)==null?void 0:e.data)==null?void 0:n.state,...this.data,...this.locale?{locale:this.locale}:{},...this.overrideState}},shouldRenderContentStyles(){var e,n,t,o,i;return Boolean((((n=(e=this.useContent)==null?void 0:e.data)==null?void 0:n.cssCode)||((i=(o=(t=this.useContent)==null?void 0:t.data)==null?void 0:o.customFonts)==null?void 0:i.length))&&k!=="reactNative")},onUpdateHook0(){var e,n;return{0:(n=(e=this.useContent)==null?void 0:e.data)==null?void 0:n.jsCode,1:this.contentState}},onUpdateHook1(){var e,n;return{0:(n=(e=this.useContent)==null?void 0:e.data)==null?void 0:n.httpRequests}},onUpdateHook2(){return{0:this.contentState}}},methods:{processMessage(e){var t;const{data:n}=e;if(n)switch(n.type){case"builder.configureSdk":{const o=n.data,{breakpoints:i,contentId:s}=o;if(!s||s!==((t=this.useContent)==null?void 0:t.id))return;this.useBreakpoints=i,this.forceReRenderCount=this.forceReRenderCount+1;break}case"builder.contentUpdate":{const o=n.data,i=o.key||o.alias||o.entry||o.modelName,s=o.data;i===this.model&&(this.overrideContent=s,this.forceReRenderCount=this.forceReRenderCount+1);break}}},evaluateJsCode(){var n,t;const e=(t=(n=this.useContent)==null?void 0:n.data)==null?void 0:t.jsCode;e&&I({code:e,context:this.contextContext,state:this.contentState})},onClick(e){var n,t;if(this.useContent){const o=(n=this.useContent)==null?void 0:n.testVariationId,i=(t=this.useContent)==null?void 0:t.id;T({type:"click",canTrack:this.canTrackToUse,contentId:i,apiKey:this.apiKey,variationId:o!==i?o:void 0,...rn(e),unique:!this.clicked})}this.clicked||(this.clicked=!0)},evalExpression(e){return e.replace(/{{([^}]+)}}/g,(n,t)=>I({code:t,context:this.contextContext,state:this.contentState}))},handleRequest({url:e,key:n}){G(e).then(t=>t.json()).then(t=>{const o={...this.overrideState,[n]:t};this.overrideState=o}).catch(t=>{console.log("error fetching dynamic data",e,t)})},runHttpRequests(){var n,t,o;const e=(o=(t=(n=this.useContent)==null?void 0:n.data)==null?void 0:t.httpRequests)!=null?o:{};Object.entries(e).forEach(([i,s])=>{if(s&&(!this.httpReqsData[i]||g())){const a=this.evalExpression(s);this.handleRequest({url:a,key:i})}})},emitStateUpdate(){g()&&window.dispatchEvent(new CustomEvent("builder:component:stateChange",{detail:{state:this.contentState,ref:{name:this.model}}}))}}},ln=["builder-content-id","builder-model"];function dn(e,n,t,o,i,s){var c,d,u,m,p,b,P;const a=r.resolveComponent("render-content-styles"),l=r.resolveComponent("render-blocks");return s.useContent?(r.openBlock(),r.createElementBlock("div",{key:0,ref:"elementRef",onClick:n[0]||(n[0]=fe=>s.onClick(fe)),"builder-content-id":(c=s.useContent)==null?void 0:c.id,"builder-model":t.model},[s.shouldRenderContentStyles?(r.openBlock(),r.createBlock(a,{key:0,cssCode:(u=(d=s.useContent)==null?void 0:d.data)==null?void 0:u.cssCode,customFonts:(p=(m=s.useContent)==null?void 0:m.data)==null?void 0:p.customFonts},null,8,["cssCode","customFonts"])):r.createCommentVNode("",!0),(r.openBlock(),r.createBlock(l,{blocks:(P=(b=s.useContent)==null?void 0:b.data)==null?void 0:P.blocks,key:i.forceReRenderCount},null,8,["blocks"]))],8,ln)):r.createCommentVNode("",!0)}const me=f(cn,[["render",dn]]),un=Object.freeze(Object.defineProperty({__proto__:null,default:me},Symbol.toStringTag,{value:"Module"})),mn=()=>Promise.resolve().then(()=>require("./block-styles.b81e8e00.cjs")).then(e=>e.default).catch(e=>{throw console.error("Error while attempting to dynamically import component BlockStyles at ./render-block/block-styles.vue",e),e}),pn=()=>Promise.resolve().then(()=>require("./render-block.7d6c9594.cjs")).then(e=>e.default).catch(e=>{throw console.error("Error while attempting to dynamically import component RenderBlock at ./render-block/render-block.vue",e),e}),hn={name:"render-blocks",components:{RenderBlock:r.defineAsyncComponent(pn),BlockStyles:r.defineAsyncComponent(mn)},props:["blocks","parent","path","styleProp"],inject:{builderContext:C.key},computed:{className(){var e;return"builder-blocks"+((e=this.blocks)!=null&&e.length?"":" no-blocks")}},methods:{onClick(){var e,n;g()&&!((e=this.blocks)!=null&&e.length)&&((n=window.parent)==null||n.postMessage({type:"builder.clickEmptyBlocks",data:{parentElementId:this.parent,dataPath:this.path}},"*"))},onMouseEnter(){var e,n;g()&&!((e=this.blocks)!=null&&e.length)&&((n=window.parent)==null||n.postMessage({type:"builder.hoverEmptyBlocks",data:{parentElementId:this.parent,dataPath:this.path}},"*"))},_classStringToObject(e){const n={};if(typeof e!="string")return n;const t=e.trim().split(/\s+/);for(const o of t)n[o]=!0;return n}}};const fn=["builder-path","builder-parent-id","dataSet"];function gn(e,n,t,o,i,s){const a=r.resolveComponent("render-block"),l=r.resolveComponent("block-styles");return r.openBlock(),r.createElementBlock("div",{class:r.normalizeClass(s._classStringToObject(s.className+" div-2oa2wtipkzk")),"builder-path":t.path,"builder-parent-id":t.parent,dataSet:{class:s.className},style:r.normalizeStyle(t.styleProp),onClick:n[0]||(n[0]=c=>s.onClick()),onMouseenter:n[1]||(n[1]=c=>s.onMouseEnter())},[t.blocks?(r.openBlock(!0),r.createElementBlock(r.Fragment,{key:0},r.renderList(t.blocks,(c,d)=>(r.openBlock(),r.createBlock(a,{key:"render-block-"+c.id,block:c,context:s.builderContext},null,8,["block","context"]))),128)):r.createCommentVNode("",!0),t.blocks?(r.openBlock(!0),r.createElementBlock(r.Fragment,{key:1},r.renderList(t.blocks,(c,d)=>(r.openBlock(),r.createBlock(l,{key:"block-style-"+c.id,block:c,context:s.builderContext},null,8,["block","context"]))),128)):r.createCommentVNode("",!0)],46,fn)}const pe=f(hn,[["render",gn],["__scopeId","data-v-0924b77d"]]),he=Object.freeze(Object.defineProperty({__proto__:null,default:pe},Symbol.toStringTag,{value:"Module"})),N={};function bn(e){if(h()){Object.assign(N,e);const n={type:"builder.settingsChange",data:N};parent.postMessage(n,"*")}}exports.BuilderContext=C;exports.Button=oe;exports.Columns=K;exports.Fragment=se;exports.Image=H;exports.Section=re;exports.Symbol=ne;exports.TARGET=k;exports.Text=D;exports.Video=q;exports._export_sfc=f;exports.components=E;exports.convertSearchParamsToQueryObject=Q;exports.convertStyleMapToCSSArray=z;exports.createCssClass=ve;exports.createRegisterComponentMessage=ae;exports.evaluate=I;exports.fastClone=x;exports.getAllContent=te;exports.getBuilderSearchParams=Z;exports.getBuilderSearchParamsFromWindow=ee;exports.getContent=B;exports.getMaxWidthQueryForSize=ye;exports.getSizesForBreakpoints=M;exports.isEditing=g;exports.isPreviewing=ie;exports.normalizeSearchParams=R;exports.register=L;exports.registerComponent=$t;exports.renderBlocks=pe;exports.renderContent=me;exports.setEditorSettings=bn;exports.track=tn;
|