@builder.io/sdk-vue 0.1.10 → 0.1.12
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.a206dd50.js → block-styles.1fddeaa3.js} +3 -3
- package/packages/_vue2/dist/{block-styles.3b3ffdbf.cjs → block-styles.d2bf860b.cjs} +1 -1
- package/packages/{_vue3/dist/get-processed-block.956c12d9.cjs → _vue2/dist/get-processed-block.a5da75d9.cjs} +1 -1
- package/packages/{_vue3/dist/get-processed-block.c6dad91c.js → _vue2/dist/get-processed-block.b381a0f8.js} +1 -1
- package/packages/_vue2/dist/{index.e8dd60dc.js → index.02b9d9df.js} +214 -188
- package/packages/_vue2/dist/index.9cf67370.cjs +30 -0
- package/packages/_vue2/dist/{render-block.fd86fb8a.js → render-block.9b751cde.js} +5 -5
- package/packages/_vue2/dist/{render-block.065c34a7.cjs → render-block.b35b22c6.cjs} +2 -2
- package/packages/_vue2/dist/{render-component.f953c827.js → render-component.f245018a.js} +3 -3
- package/packages/_vue2/dist/{render-component.933ccff1.cjs → render-component.ffb3d2c6.cjs} +1 -1
- package/packages/_vue2/dist/{render-inlined-styles.fee45ae3.cjs → render-inlined-styles.25f2e4db.cjs} +1 -1
- package/packages/_vue2/dist/{render-inlined-styles.9195825e.js → render-inlined-styles.7a493822.js} +1 -1
- package/packages/_vue2/dist/{render-repeated-block.7f32ee89.cjs → render-repeated-block.870ca664.cjs} +1 -1
- package/packages/_vue2/dist/{render-repeated-block.9721be56.js → render-repeated-block.da052a0e.js} +2 -2
- package/packages/_vue2/dist/{render-styles.7f8fcf1c.cjs → render-styles.3f363471.cjs} +2 -2
- package/packages/_vue2/dist/{render-styles.c4b6de30.js → render-styles.a04e3469.js} +2 -2
- package/packages/_vue2/dist/sdk.cjs +1 -1
- package/packages/_vue2/dist/sdk.js +1 -1
- package/packages/_vue2/dist/src/blocks/symbol/symbol.vue.d.ts +11 -5
- package/packages/_vue2/dist/src/components/render-content/render-content.types.d.ts +2 -0
- package/packages/_vue2/dist/src/components/render-content/render-content.vue.d.ts +6 -0
- package/packages/_vue2/dist/src/context/builder.context.d.ts +1 -0
- package/packages/_vue2/dist/src/context/types.d.ts +2 -0
- package/packages/_vue2/dist/src/functions/get-content/types.d.ts +6 -0
- package/packages/_vue2/dist/src/types/api-version.d.ts +1 -0
- package/packages/_vue3/dist/{block-styles.6603a147.cjs → block-styles.031c9667.cjs} +1 -1
- package/packages/_vue3/dist/{block-styles.ccb131cb.js → block-styles.aabb6710.js} +3 -3
- package/packages/{_vue2/dist/get-processed-block.c3bfda4f.cjs → _vue3/dist/get-processed-block.2a2ed55d.cjs} +1 -1
- package/packages/{_vue2/dist/get-processed-block.34a63cf8.js → _vue3/dist/get-processed-block.bbef5e53.js} +1 -1
- package/packages/_vue3/dist/{index.a4af8d34.cjs → index.07006be4.cjs} +10 -10
- package/packages/_vue3/dist/{index.e6017963.js → index.10a2a72a.js} +250 -223
- package/packages/_vue3/dist/{render-block.7d476a41.cjs → render-block.6fa7a4e6.cjs} +2 -2
- package/packages/_vue3/dist/{render-block.433cd92c.js → render-block.ec594132.js} +5 -5
- package/packages/_vue3/dist/{render-component.54264dc4.js → render-component.009b30ef.js} +3 -3
- package/packages/_vue3/dist/{render-component.44ee48cd.cjs → render-component.65256ccd.cjs} +1 -1
- package/packages/_vue3/dist/{render-inlined-styles.4a982631.js → render-inlined-styles.b27ba505.js} +1 -1
- package/packages/_vue3/dist/{render-inlined-styles.9d6df3cd.cjs → render-inlined-styles.fd94a00d.cjs} +1 -1
- package/packages/_vue3/dist/{render-repeated-block.0ea95b83.cjs → render-repeated-block.aeaae10c.cjs} +1 -1
- package/packages/_vue3/dist/{render-repeated-block.87f57d29.js → render-repeated-block.e6298c37.js} +2 -2
- package/packages/_vue3/dist/{render-styles.04b3dbe6.js → render-styles.7efeec10.js} +2 -2
- package/packages/_vue3/dist/{render-styles.830f02aa.cjs → render-styles.a17481e5.cjs} +5 -5
- package/packages/_vue3/dist/sdk.cjs +1 -1
- package/packages/_vue3/dist/sdk.js +1 -1
- package/packages/_vue3/dist/src/blocks/symbol/symbol.vue.d.ts +11 -5
- package/packages/_vue3/dist/src/components/render-content/render-content.types.d.ts +2 -0
- package/packages/_vue3/dist/src/components/render-content/render-content.vue.d.ts +6 -0
- package/packages/_vue3/dist/src/context/builder.context.d.ts +1 -0
- package/packages/_vue3/dist/src/context/types.d.ts +2 -0
- package/packages/_vue3/dist/src/functions/get-content/types.d.ts +6 -0
- package/packages/_vue3/dist/src/types/api-version.d.ts +1 -0
- package/packages/_vue2/dist/index.ffa2cf17.cjs +0 -30
|
@@ -1,30 +1,30 @@
|
|
|
1
|
-
"use strict";const i=require("vue"),be={name:"builder-button",props:["attributes","text","link","openLinkInNewTab"],methods:{filterAttrs:function(n={},t){const o="v-on:";return Object.keys(n).filter(s=>{const r=s.startsWith(o);return t?r:!r}).reduce((s,r)=>({...s,[r.replace(o,"")]:n[r]}),{})}}};const
|
|
1
|
+
"use strict";const i=require("vue"),be={name:"builder-button",props:["attributes","text","link","openLinkInNewTab"],methods:{filterAttrs:function(n={},t){const o="v-on:";return Object.keys(n).filter(s=>{const r=s.startsWith(o);return t?r:!r}).reduce((s,r)=>({...s,[r.replace(o,"")]:n[r]}),{})}}};const p=(e,n)=>{const t=e.__vccOpts||e;for(const[o,s]of n)t[o]=s;return t},ye=["href","target"];function ve(e,n,t,o,s,r){return t.link?(i.openBlock(),i.createElementBlock("a",i.mergeProps({key:0,role:"button",href:t.link,target:t.openLinkInNewTab?"_blank":void 0},r.filterAttrs(t.attributes,!1),i.toHandlers(r.filterAttrs(t.attributes,!0),!0)),i.toDisplayString(t.text),17,ye)):(i.openBlock(),i.createElementBlock("button",i.mergeProps({key:1,class:"button-1yj9n7yt24z"},r.filterAttrs(t.attributes,!1),i.toHandlers(r.filterAttrs(t.attributes,!0),!0)),i.toDisplayString(t.text),17))}const M=p(be,[["render",ve],["__scopeId","data-v-28c9cee7"]]),S=e=>JSON.parse(JSON.stringify(e)),$={small:{min:320,default:321,max:640},medium:{min:641,default:642,max:991},large:{min:990,default:991,max:1200}},ke=(e,n=$)=>`@media (max-width: ${n[e].max}px)`,z=({small:e,medium:n})=>{const t=S($);if(!e||!n)return t;const o=Math.floor(e/2);t.small={max:e,min:o,default:o+1};const s=t.small.max+1;t.medium={max:n,min:s,default:s+1};const r=t.medium.max+1;return t.large={max:2e3,min:r,default:r+1},t},v="vue3",xe=e=>e.replace(/([a-z0-9]|(?=[A-Z]))([A-Z])/g,"$1-$2").toLowerCase(),y=e=>e!=null,H=e=>Object.entries(e).map(([t,o])=>{if(typeof o=="string")return`${xe(t)}: ${o};`}).filter(y),x=e=>H(e).join(`
|
|
2
2
|
`),Ce=({mediaQuery:e,className:n,styles:t})=>{const o=`.${n} {
|
|
3
|
-
${
|
|
3
|
+
${x(t)}
|
|
4
4
|
}`;return e?`${e} {
|
|
5
5
|
${o}
|
|
6
|
-
}`:o},Se=Symbol(),
|
|
6
|
+
}`:o},Se=Symbol(),C={Builder:{content:null,context:{},state:{},setState(){},apiKey:null,apiVersion:void 0,registeredComponents:{},inheritedStyles:{}},key:Se},_e=()=>Promise.resolve().then(()=>J).then(e=>e.default).catch(e=>{throw console.error("Error while attempting to dynamically import component RenderBlocks at ../../components/render-blocks.vue",e),e}),we=()=>Promise.resolve().then(()=>require("./render-inlined-styles.fd94a00d.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}),Ie={name:"builder-columns",components:{RenderInlinedStyles:i.defineAsyncComponent(we),RenderBlocks:i.defineAsyncComponent(_e)},props:["space","columns","stackColumnsAt","reverseColumnsWhenStacked","builderBlock"],data(){return{TARGET:v}},inject:{builderContext:C.key},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
7
|
@media (max-width: ${this.getWidthForBreakpointSize("medium")}px) {
|
|
8
8
|
.${this.builderBlock.id}-breakpoints {
|
|
9
|
-
${
|
|
9
|
+
${x(this.columnStyleObjects.columns.medium)}
|
|
10
10
|
}
|
|
11
11
|
|
|
12
12
|
.${this.builderBlock.id}-breakpoints > .builder-column {
|
|
13
|
-
${
|
|
13
|
+
${x(this.columnStyleObjects.column.medium)}
|
|
14
14
|
}
|
|
15
15
|
}
|
|
16
16
|
|
|
17
17
|
@media (max-width: ${this.getWidthForBreakpointSize("small")}px) {
|
|
18
18
|
.${this.builderBlock.id}-breakpoints {
|
|
19
|
-
${
|
|
19
|
+
${x(this.columnStyleObjects.columns.small)}
|
|
20
20
|
}
|
|
21
21
|
|
|
22
22
|
.${this.builderBlock.id}-breakpoints > .builder-column {
|
|
23
|
-
${
|
|
23
|
+
${x(this.columnStyleObjects.column.small)}
|
|
24
24
|
}
|
|
25
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){var t,o;return z(((o=(t=this.builderContext.content)==null?void 0:t.meta)==null?void 0:o.breakpoints)||{})[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}}};function Te(e,n,t,o,s,r){const a=i.resolveComponent("render-inlined-styles"),l=i.resolveComponent("render-blocks");return i.openBlock(),i.createElementBlock("div",{class:i.normalizeClass(r._classStringToObject(`builder-columns ${t.builderBlock.id}-breakpoints div-361b1o6wv2k`)),style:i.normalizeStyle({...s.TARGET==="reactNative"?r.reactNativeColumnsStyles:{},...r.columnsCssVars})},[s.TARGET!=="reactNative"?(i.openBlock(),i.createBlock(a,{key:0,styles:r.columnsStyles},null,8,["styles"])):i.createCommentVNode("",!0),(i.openBlock(!0),i.createElementBlock(i.Fragment,null,i.renderList(t.columns,(c,d)=>(i.openBlock(),i.createElementBlock("div",{key:d,class:"builder-column div-361b1o6wv2k-2",style:i.normalizeStyle({width:r.getColumnCssWidth(d),marginLeft:`${d===0?0:r.getGutterSize()}px`,...s.TARGET==="reactNative"?r.reactNativeColumnStyles:{},...r.columnCssVars})},[i.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(Ie,[["render",Te],["__scopeId","data-v-64d36a32"]]),Re={name:"builder-fragment-component",props:[]};function Be(e,n,t,o,s,r){return i.openBlock(),i.createElementBlock("span",null,[i.renderSlot(e.$slots,"default")])}const D=f(Re,[["render",Be]]);function P(e){return e.replace(/http(s)?:/,"")}function Ee(e="",n,t){const o=new RegExp("([?&])"+n+"=.*?(&|$)","i"),s=e.indexOf("?")!==-1?"&":"?";return e.match(o)?e.replace(o,"$1"+n+"="+encodeURIComponent(t)+"$2"):e+s+n+"="+encodeURIComponent(t)}function Ae(e,n){if(!e||!(e!=null&&e.match(/cdn\.shopify\.com/))||!n)return e;if(n==="master")return P(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]),s=t[3],r=n.match("x")?n:`${n}x`;return P(`${o[0]}_${r}${s}`)}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(s=>s!==o).map(s=>`${Ee(e,"width",s)} ${s}w`).concat([t]).join(", ")}return e.match(/cdn\.shopify\.com/)?n.map(t=>[Ae(e,`${t}x${t}`),t]).filter(([t])=>!!t).map(([t,o])=>`${t} ${o}w`).concat([e]).join(", "):e}const je={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 Pe=["srcset"],Fe=["alt","role","src","srcset","sizes"],Oe={key:2,class:"div-7jvpanrlkn-2"};function Ve(e,n,t,o,s,r){var a,l,c,d;return i.openBlock(),i.createElementBlock(i.Fragment,null,[i.createElementVNode("picture",null,[r.webpSrcSet?(i.openBlock(),i.createElementBlock("source",{key:0,type:"image/webp",srcset:r.webpSrcSet},null,8,Pe)):i.createCommentVNode("",!0),i.createElementVNode("img",{loading:"lazy",alt:t.altText,role:t.altText?"presentation":void 0,style:i.normalizeStyle({objectPosition:t.backgroundPosition||"center",objectFit:t.backgroundSize||"cover",...r.aspectRatioCss}),class:i.normalizeClass(r._classStringToObject("builder-image"+(t.className?" "+t.className:"")+" img-7jvpanrlkn")),src:t.image,srcset:r.srcSetToUse,sizes:t.sizes},null,14,Fe)]),t.aspectRatio&&!(((l=(a=t.builderBlock)==null?void 0:a.children)==null?void 0:l.length)&&t.fitContent)?(i.openBlock(),i.createElementBlock("div",{key:0,class:"builder-image-sizer div-7jvpanrlkn",style:i.normalizeStyle({paddingTop:t.aspectRatio*100+"%"})},null,4)):i.createCommentVNode("",!0),((d=(c=t.builderBlock)==null?void 0:c.children)==null?void 0:d.length)&&t.fitContent?i.renderSlot(e.$slots,"default",{key:1},void 0,!0):i.createCommentVNode("",!0),!t.fitContent&&e.children?(i.openBlock(),i.createElementBlock("div",Oe,[i.renderSlot(e.$slots,"default",{},void 0,!0)])):i.createCommentVNode("",!0)],64)}const q=f(je,[["render",Ve],["__scopeId","data-v-22833d9f"]]);function h(){return typeof window<"u"&&typeof document<"u"}function Ue(){return h()&&window.self!==window.top}function g(){return Ue()&&window.location.search.indexOf("builder.frameEditing=")!==-1}const Ne=()=>Promise.resolve().then(()=>require("./block-styles.6603a147.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}),Le=()=>Promise.resolve().then(()=>require("./render-block.7d476a41.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}),We={name:"render-blocks",components:{RenderBlock:i.defineAsyncComponent(Le),BlockStyles:i.defineAsyncComponent(Ne)},props:["blocks","parent","path","styleProp"],inject:{builderContext:x.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 Me=["builder-path","builder-parent-id","dataSet"];function $e(e,n,t,o,s,r){const a=i.resolveComponent("render-block"),l=i.resolveComponent("block-styles");return i.openBlock(),i.createElementBlock("div",{class:i.normalizeClass(r._classStringToObject(r.className+" div-7fq9d0i380")),"builder-path":t.path,"builder-parent-id":t.parent,dataSet:{class:r.className},style:i.normalizeStyle(t.styleProp),onClick:n[0]||(n[0]=c=>r.onClick()),onMouseenter:n[1]||(n[1]=c=>r.onMouseEnter())},[t.blocks?(i.openBlock(!0),i.createElementBlock(i.Fragment,{key:0},i.renderList(t.blocks,(c,d)=>(i.openBlock(),i.createBlock(a,{key:"render-block-"+c.id,block:c,context:r.builderContext},null,8,["block","context"]))),128)):i.createCommentVNode("",!0),t.blocks?(i.openBlock(!0),i.createElementBlock(i.Fragment,{key:1},i.renderList(t.blocks,(c,d)=>(i.openBlock(),i.createBlock(l,{key:"block-style-"+c.id,block:c,context:r.builderContext},null,8,["block","context"]))),128)):i.createCommentVNode("",!0)],46,Me)}const G=f(We,[["render",$e],["__scopeId","data-v-1112d180"]]),J=Object.freeze(Object.defineProperty({__proto__:null,default:G},Symbol.toStringTag,{value:"Module"})),ze={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},S=e=>{const n=e.toString().trim();return`return (${!n.startsWith("function")&&!n.startsWith("(")?"function ":""}${n}).apply(this, arguments)`},He={name:"Columns",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(s=>s.get("width"))&&(!!t.find(r=>!r.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}]},Ke={name:"Fragment",static:!0,hidden:!0,canHaveChildren:!0,noWrap:!0},De={name:"Image",static:!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%2FYJIGb4i01jvw0SRdL5Bt%2F72c80f114dc149019051b6852a9e3b7a",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 s=e.get("image"),r=e.get("aspectRatio");if(fetch(s).then(a=>a.blob()).then(a=>{a.type.includes("svg")&&e.set("noWebp",!0)}),s&&(!r||r===.7041))return t(s).then(a=>{const l=e.get("aspectRatio");e.get("image")===s&&(!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}]},qe={name:"Core:Section",static:!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>"}}}]},Ge={name:"builder-section-component",props:["maxWidth","attributes"],methods:{filterAttrs:function(n={},t){const o="v-on:";return Object.keys(n).filter(s=>{const r=s.startsWith(o);return t?r:!r}).reduce((s,r)=>({...s,[r.replace(o,"")]:n[r]}),{})}}};function Je(e,n,t,o,s,r){return i.openBlock(),i.createElementBlock("section",i.mergeProps({style:{width:"100%",alignSelf:"stretch",flexGrow:1,boxSizing:"border-box",maxWidth:t.maxWidth||1200,display:"flex",flexDirection:"column",alignItems:"stretch",marginLeft:"auto",marginRight:"auto"}},r.filterAttrs(t.attributes,!1),i.toHandlers(r.filterAttrs(t.attributes,!0),!0)),[i.renderSlot(e.$slots,"default")],16)}const Y=f(Ge,[["render",Je]]),Ye={name:"Symbol",noWrap:!0,static:!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"}]};function Xe(){return typeof globalThis<"u"?globalThis:typeof window<"u"?window:typeof global<"u"?global:typeof self<"u"?self:globalThis}function Qe(){const e=Xe().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 X=Qe(),Ze=e=>{if(e==="localhost"||e==="127.0.0.1")return e;const n=e.split(".");return n.length>2?n.slice(1).join("."):e},Q=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}},et=e=>e.map(([n,t])=>t?`${n}=${t}`:n).filter(y).join("; "),tt=[["secure",""],["SameSite","None"]],nt=({name:e,value:n,expires:t})=>{const s=(h()?location.protocol==="https:":!0)?tt:[[]],r=t?[["expires",t.toUTCString()]]:[[]],a=[[e,n],...r,["path","/"],["domain",Ze(window.location.hostname)],...s];return et(a)},Z=async({name:e,value:n,expires:t,canTrack:o})=>{try{if(!o)return;const s=nt({name:e,value:n,expires:t});document.cookie=s}catch(s){console.warn("[COOKIE] SET error: ",s)}},ot="builderio.variations",ee=e=>`${ot}.${e}`,rt=({contentId:e,canTrack:n})=>Q({name:ee(e),canTrack:n}),st=({contentId:e,canTrack:n,value:t})=>Z({name:ee(e),value:t,canTrack:n}),it=e=>y(e.id)&&y(e.variations)&&Object.keys(e.variations).length>0,at=({id:e,variations:n})=>{var s;let t=0;const o=Math.random();for(const r in n){const a=(s=n[r])==null?void 0:s.testRatio;if(t+=a,o<t)return r}return e},F=({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":"")}},ct=async({item:e,canTrack:n})=>{const t=await rt({canTrack:n,contentId:e.id}),o=t?F({item:e,testGroupId:t}):void 0;if(o)return o;{const s=at({variations:e.variations,id:e.id});return st({contentId:e.id,value:s,canTrack:n}).catch(r=>{console.error("could not store A/B test variation: ",r)}),F({item:e,testGroupId:s})}},lt=async({item:e,canTrack:n})=>{if(!it(e))return;const t=await ct({item:e,canTrack:n});Object.assign(e,t)};function w(e,n=null,t="."){return Object.keys(e).reduce((o,s)=>{const r=e[s],a=[n,s].filter(Boolean).join(t);return[typeof r=="object",r!==null,!(Array.isArray(r)&&r.length===0)].every(Boolean)?{...o,...w(r,a,t)}:{...o,[a]:r}},{})}const O="builder.",dt="options.",te=e=>{const n={};return e.forEach((t,o)=>{n[o]=t}),n},ne=e=>{if(!e)return{};const n=R(e),t={};return Object.keys(n).forEach(o=>{if(o.startsWith(O)){const s=o.replace(O,"").replace(dt,"");t[s]=n[o]}}),t},oe=()=>{if(!h())return{};const e=new URLSearchParams(window.location.search);return ne(e)},R=e=>e instanceof URLSearchParams?te(e):e,ut=e=>{const{limit:n=30,userAttributes:t,query:o,noTraverse:s=!1,model:r,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/${r}?apiKey=${a}&limit=${n}&noTraverse=${s}&includeRefs=${l}${c?`&locale=${c}`:""}`),u={...oe(),...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 re({...e,limit:1})).results[0]||null}async function re(e){const n=ut(e),o=await(await X(n.href)).json(),s=e.canTrack!==!1;if(s&&Array.isArray(o.results))for(const r of o.results)await lt({item:r,canTrack:s});return o}const mt=()=>Promise.resolve().then(()=>kn).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}),pt={name:"builder-symbol",components:{RenderContent:i.defineAsyncComponent(mt)},props:["attributes","symbol","dynamic"],data(){return{fetchedContent:null}},inject:{builderContext:x.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:{filterAttrs:function(n={},t){const o="v-on:";return Object.keys(n).filter(s=>{const r=s.startsWith(o);return t?r:!r}).reduce((s,r)=>({...s,[r.replace(o,"")]:n[r]}),{})},_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}}},ht=["dataSet"];function ft(e,n,t,o,s,r){var l,c,d,u,m;const a=i.resolveComponent("render-content");return i.openBlock(),i.createElementBlock("div",i.mergeProps({dataSet:{class:r.className},class:r._classStringToObject(r.className)},r.filterAttrs(t.attributes,!1),i.toHandlers(r.filterAttrs(t.attributes,!0),!0)),[i.createVNode(a,{apiKey:r.builderContext.apiKey,context:r.builderContext.context,customComponents:Object.values(r.builderContext.registeredComponents),data:{...(l=t.symbol)==null?void 0:l.data,...r.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:r.contentToUse},null,8,["apiKey","context","customComponents","data","model","content"])],16,ht)}const se=f(pt,[["render",ft]]),gt={name:"Text",static:!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"}},bt={name:"builder-text",props:["text"]},yt=["innerHTML"];function kt(e,n,t,o,s,r){return i.openBlock(),i.createElementBlock("span",{class:"builder-text",innerHTML:t.text,style:{outline:"none"}},null,8,yt)}const ie=f(bt,[["render",kt]]),vt={name:"Video",canHaveChildren:!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}]},xt={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}}}},Ct=["src","poster"];function St(e,n,t,o,s,r){var a;return i.openBlock(),i.createElementBlock("video",i.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},r.spreadProps),null,16,Ct)}const ae=f(xt,[["render",St]]),_t={name:"Embed",static:!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}]},wt=["text/javascript","application/javascript","application/ecmascript"],It=e=>wt.includes(e.type),Tt={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(It(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)}}}}},Rt=["innerHTML"];function Bt(e,n,t,o,s,r){return i.openBlock(),i.createElementBlock("div",{class:"builder-embed",ref:"elem",innerHTML:t.content},null,8,Rt)}const Et=f(Tt,[["render",Bt]]),At={name:"builder-img-component",props:["backgroundSize","backgroundPosition","imgSrc","altText","image","attributes"],data(){return{isEditing:g}},methods:{filterAttrs:function(n={},t){const o="v-on:";return Object.keys(n).filter(s=>{const r=s.startsWith(o);return t?r:!r}).reduce((s,r)=>({...s,[r.replace(o,"")]:n[r]}),{})}}},jt=["alt","src"];function Pt(e,n,t,o,s,r){return i.openBlock(),i.createElementBlock("img",i.mergeProps({style:{objectFit:t.backgroundSize||"cover",objectPosition:t.backgroundPosition||"center"},key:s.isEditing()&&t.imgSrc||"default-key",alt:t.altText,src:t.imgSrc||t.image},r.filterAttrs(t.attributes,!1),i.toHandlers(r.filterAttrs(t.attributes,!0),!0)),null,16,jt)}const Ft=f(At,[["render",Pt]]),Ot={name:"Raw:Img",hideFromInsertMenu:!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},Vt={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}}},Ut=["innerHTML"];function Nt(e,n,t,o,s,r){return i.openBlock(),i.createElementBlock("div",{ref:"elem",class:i.normalizeClass(r._classStringToObject("builder-custom-code"+(t.replaceNodes?" replace-nodes":""))),innerHTML:t.code},null,10,Ut)}const Lt=f(Vt,[["render",Nt]]),Wt={name:"Custom Code",static:!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}]},Mt=()=>[{component:M,...ze},{component:K,...He},{component:Lt,...Wt},{component:Et,..._t},{component:D,...Ke},{component:q,...De},{component:Ft,...Ot},{component:Y,...qe},{component:se,...Ye},{component:ie,...gt},{component:ae,...vt}];function I({code:e,context:n,state:t,event:o,isExpression:s=!0}){if(e===""){console.warn("Skipping evaluation of empty code block.");return}const r={isEditing:g(),isBrowser:h(),isServer:!h()},l=s&&!(e.includes(";")||e.includes(" return ")||e.trim().startsWith("return "))?`return (${e});`:e;try{return new Function("builder","Builder","state","context","event",l)(r,r,t,n,o)}catch(c){console.warn(`Builder custom code error:
|
|
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){var t,o;return z(((o=(t=this.builderContext.content)==null?void 0:t.meta)==null?void 0:o.breakpoints)||{})[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}}};function Te(e,n,t,o,s,r){const a=i.resolveComponent("render-inlined-styles"),l=i.resolveComponent("render-blocks");return i.openBlock(),i.createElementBlock("div",{class:i.normalizeClass(r._classStringToObject(`builder-columns ${t.builderBlock.id}-breakpoints div-361b1o6wv2k`)),style:i.normalizeStyle({...s.TARGET==="reactNative"?r.reactNativeColumnsStyles:{},...r.columnsCssVars})},[s.TARGET!=="reactNative"?(i.openBlock(),i.createBlock(a,{key:0,styles:r.columnsStyles},null,8,["styles"])):i.createCommentVNode("",!0),(i.openBlock(!0),i.createElementBlock(i.Fragment,null,i.renderList(t.columns,(c,d)=>(i.openBlock(),i.createElementBlock("div",{key:d,class:"builder-column div-361b1o6wv2k-2",style:i.normalizeStyle({width:r.getColumnCssWidth(d),marginLeft:`${d===0?0:r.getGutterSize()}px`,...s.TARGET==="reactNative"?r.reactNativeColumnStyles:{},...r.columnCssVars})},[i.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=p(Ie,[["render",Te],["__scopeId","data-v-64d36a32"]]),Re={name:"builder-fragment-component",props:[]};function Be(e,n,t,o,s,r){return i.openBlock(),i.createElementBlock("span",null,[i.renderSlot(e.$slots,"default")])}const D=p(Re,[["render",Be]]);function P(e){return e.replace(/http(s)?:/,"")}function Ee(e="",n,t){const o=new RegExp("([?&])"+n+"=.*?(&|$)","i"),s=e.indexOf("?")!==-1?"&":"?";return e.match(o)?e.replace(o,"$1"+n+"="+encodeURIComponent(t)+"$2"):e+s+n+"="+encodeURIComponent(t)}function Ae(e,n){if(!e||!(e!=null&&e.match(/cdn\.shopify\.com/))||!n)return e;if(n==="master")return P(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]),s=t[3],r=n.match("x")?n:`${n}x`;return P(`${o[0]}_${r}${s}`)}return null}function w(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(s=>s!==o).map(s=>`${Ee(e,"width",s)} ${s}w`).concat([t]).join(", ")}return e.match(/cdn\.shopify\.com/)?n.map(t=>[Ae(e,`${t}x${t}`),t]).filter(([t])=>!!t).map(([t,o])=>`${t} ${o}w`).concat([e]).join(", "):e}const je={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"),w(n)}else if(this.image&&!this.srcset)return w(n);return w(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 Pe=["srcset"],Ve=["alt","role","src","srcset","sizes"],Fe={key:2,class:"div-7jvpanrlkn-2"};function Oe(e,n,t,o,s,r){var a,l,c,d;return i.openBlock(),i.createElementBlock(i.Fragment,null,[i.createElementVNode("picture",null,[r.webpSrcSet?(i.openBlock(),i.createElementBlock("source",{key:0,type:"image/webp",srcset:r.webpSrcSet},null,8,Pe)):i.createCommentVNode("",!0),i.createElementVNode("img",{loading:"lazy",alt:t.altText,role:t.altText?"presentation":void 0,style:i.normalizeStyle({objectPosition:t.backgroundPosition||"center",objectFit:t.backgroundSize||"cover",...r.aspectRatioCss}),class:i.normalizeClass(r._classStringToObject("builder-image"+(t.className?" "+t.className:"")+" img-7jvpanrlkn")),src:t.image,srcset:r.srcSetToUse,sizes:t.sizes},null,14,Ve)]),t.aspectRatio&&!(((l=(a=t.builderBlock)==null?void 0:a.children)==null?void 0:l.length)&&t.fitContent)?(i.openBlock(),i.createElementBlock("div",{key:0,class:"builder-image-sizer div-7jvpanrlkn",style:i.normalizeStyle({paddingTop:t.aspectRatio*100+"%"})},null,4)):i.createCommentVNode("",!0),((d=(c=t.builderBlock)==null?void 0:c.children)==null?void 0:d.length)&&t.fitContent?i.renderSlot(e.$slots,"default",{key:1},void 0,!0):i.createCommentVNode("",!0),!t.fitContent&&e.children?(i.openBlock(),i.createElementBlock("div",Fe,[i.renderSlot(e.$slots,"default",{},void 0,!0)])):i.createCommentVNode("",!0)],64)}const q=p(je,[["render",Oe],["__scopeId","data-v-22833d9f"]]);function m(){return typeof window<"u"&&typeof document<"u"}function Ue(){return m()&&window.self!==window.top}function b(){return Ue()&&window.location.search.indexOf("builder.frameEditing=")!==-1}const Ne=()=>Promise.resolve().then(()=>require("./block-styles.031c9667.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}),Le=()=>Promise.resolve().then(()=>require("./render-block.6fa7a4e6.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}),We={name:"render-blocks",components:{RenderBlock:i.defineAsyncComponent(Le),BlockStyles:i.defineAsyncComponent(Ne)},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;b()&&!((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;b()&&!((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 Me=["builder-path","builder-parent-id","dataSet"];function $e(e,n,t,o,s,r){const a=i.resolveComponent("render-block"),l=i.resolveComponent("block-styles");return i.openBlock(),i.createElementBlock("div",{class:i.normalizeClass(r._classStringToObject(r.className+" div-7fq9d0i380")),"builder-path":t.path,"builder-parent-id":t.parent,dataSet:{class:r.className},style:i.normalizeStyle(t.styleProp),onClick:n[0]||(n[0]=c=>r.onClick()),onMouseenter:n[1]||(n[1]=c=>r.onMouseEnter())},[t.blocks?(i.openBlock(!0),i.createElementBlock(i.Fragment,{key:0},i.renderList(t.blocks,(c,d)=>(i.openBlock(),i.createBlock(a,{key:"render-block-"+c.id,block:c,context:r.builderContext},null,8,["block","context"]))),128)):i.createCommentVNode("",!0),t.blocks?(i.openBlock(!0),i.createElementBlock(i.Fragment,{key:1},i.renderList(t.blocks,(c,d)=>(i.openBlock(),i.createBlock(l,{key:"block-style-"+c.id,block:c,context:r.builderContext},null,8,["block","context"]))),128)):i.createCommentVNode("",!0)],46,Me)}const G=p(We,[["render",$e],["__scopeId","data-v-1112d180"]]),J=Object.freeze(Object.defineProperty({__proto__:null,default:G},Symbol.toStringTag,{value:"Module"})),ze={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},_=e=>{const n=e.toString().trim();return`return (${!n.startsWith("function")&&!n.startsWith("(")?"function ":""}${n}).apply(this, arguments)`},He={name:"Columns",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 n(){t.forEach(o=>{o.delete("width")})}const t=e.get("columns");Array.isArray(t)&&!!t.find(s=>s.get("width"))&&(!!t.find(r=>!r.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}]},Ke={name:"Fragment",static:!0,hidden:!0,canHaveChildren:!0,noWrap:!0},De={name:"Image",static:!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%2FYJIGb4i01jvw0SRdL5Bt%2F72c80f114dc149019051b6852a9e3b7a",onChange:_(e=>{e.delete("srcset"),e.delete("noWebp");function t(a,l=6e4){return new Promise((c,d)=>{const u=document.createElement("img");let f=!1;u.onload=()=>{f=!0,c(u)},u.addEventListener("error",h=>{console.warn("Image load failed",h.error),d(h.error)}),u.src=a,setTimeout(()=>{f||d(new Error("Image load timed out"))},l)})}function o(a){return Math.round(a*1e3)/1e3}const s=e.get("image"),r=e.get("aspectRatio");if(fetch(s).then(a=>a.blob()).then(a=>{a.type.includes("svg")&&e.set("noWebp",!0)}),s&&(!r||r===.7041))return t(s).then(a=>{const l=e.get("aspectRatio");e.get("image")===s&&(!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}]},qe={name:"Core:Section",static:!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>"}}}]},Ge={name:"builder-section-component",props:["maxWidth","attributes"],methods:{filterAttrs:function(n={},t){const o="v-on:";return Object.keys(n).filter(s=>{const r=s.startsWith(o);return t?r:!r}).reduce((s,r)=>({...s,[r.replace(o,"")]:n[r]}),{})}}};function Je(e,n,t,o,s,r){return i.openBlock(),i.createElementBlock("section",i.mergeProps({style:{width:"100%",alignSelf:"stretch",flexGrow:1,boxSizing:"border-box",maxWidth:t.maxWidth||1200,display:"flex",flexDirection:"column",alignItems:"stretch",marginLeft:"auto",marginRight:"auto"}},r.filterAttrs(t.attributes,!1),i.toHandlers(r.filterAttrs(t.attributes,!0),!0)),[i.renderSlot(e.$slots,"default")],16)}const Y=p(Ge,[["render",Je]]),Ye={name:"Symbol",noWrap:!0,static:!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"}]};function Xe(){return typeof globalThis<"u"?globalThis:typeof window<"u"?window:typeof global<"u"?global:typeof self<"u"?self:globalThis}function Qe(){const e=Xe().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 X=Qe(),Ze=e=>{if(e==="localhost"||e==="127.0.0.1")return e;const n=e.split(".");return n.length>2?n.slice(1).join("."):e},Q=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}},et=e=>e.map(([n,t])=>t?`${n}=${t}`:n).filter(y).join("; "),tt=[["secure",""],["SameSite","None"]],nt=({name:e,value:n,expires:t})=>{const s=(m()?location.protocol==="https:":!0)?tt:[[]],r=t?[["expires",t.toUTCString()]]:[[]],a=[[e,n],...r,["path","/"],["domain",Ze(window.location.hostname)],...s];return et(a)},Z=async({name:e,value:n,expires:t,canTrack:o})=>{try{if(!o)return;const s=nt({name:e,value:n,expires:t});document.cookie=s}catch(s){console.warn("[COOKIE] SET error: ",s)}},ot="builderio.variations",ee=e=>`${ot}.${e}`,rt=({contentId:e,canTrack:n})=>Q({name:ee(e),canTrack:n}),st=({contentId:e,canTrack:n,value:t})=>Z({name:ee(e),value:t,canTrack:n}),it=e=>y(e.id)&&y(e.variations)&&Object.keys(e.variations).length>0,at=({id:e,variations:n})=>{var s;let t=0;const o=Math.random();for(const r in n){const a=(s=n[r])==null?void 0:s.testRatio;if(t+=a,o<t)return r}return e},V=({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":"")}},ct=async({item:e,canTrack:n})=>{const t=await rt({canTrack:n,contentId:e.id}),o=t?V({item:e,testGroupId:t}):void 0;if(o)return o;{const s=at({variations:e.variations,id:e.id});return st({contentId:e.id,value:s,canTrack:n}).catch(r=>{console.error("could not store A/B test variation: ",r)}),V({item:e,testGroupId:s})}},lt=async({item:e,canTrack:n})=>{if(!it(e))return;const t=await ct({item:e,canTrack:n});Object.assign(e,t)};function I(e,n=null,t="."){return Object.keys(e).reduce((o,s)=>{const r=e[s],a=[n,s].filter(Boolean).join(t);return[typeof r=="object",r!==null,!(Array.isArray(r)&&r.length===0)].every(Boolean)?{...o,...I(r,a,t)}:{...o,[a]:r}},{})}const F="builder.",dt="options.",te=e=>{const n={};return e.forEach((t,o)=>{n[o]=t}),n},ne=e=>{if(!e)return{};const n=B(e),t={};return Object.keys(n).forEach(o=>{if(o.startsWith(F)){const s=o.replace(F,"").replace(dt,"");t[s]=n[o]}}),t},oe=()=>{if(!m())return{};const e=new URLSearchParams(window.location.search);return ne(e)},B=e=>e instanceof URLSearchParams?te(e):e,ut=e=>{const{limit:n=30,userAttributes:t,query:o,noTraverse:s=!1,model:r,apiKey:a,includeRefs:l=!0,locale:c,apiVersion:d="v2"}=e;if(!a)throw new Error("Missing API key");if(!["v2","v3"].includes(d))throw new Error(`Invalid apiVersion: expected 'v2' or 'v3', received '${d}'`);const u=new URL(`https://cdn.builder.io/api/${d}/content/${r}?apiKey=${a}&limit=${n}&noTraverse=${s}&includeRefs=${l}${c?`&locale=${c}`:""}`),f={...oe(),...B(e.options||{})},h=I(f);for(const g in h)u.searchParams.set(g,String(h[g]));if(t&&u.searchParams.set("userAttributes",JSON.stringify(t)),o){const g=I({query:o});for(const k in g)u.searchParams.set(k,JSON.stringify(g[k]))}return u};async function E(e){return(await re({...e,limit:1})).results[0]||null}async function re(e){const n=ut(e),o=await(await X(n.href)).json(),s=e.canTrack!==!1;if(s&&Array.isArray(o.results))for(const r of o.results)await lt({item:r,canTrack:s});return o}const mt=()=>Promise.resolve().then(()=>vn).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}),pt={name:"builder-symbol",components:{RenderContent:i.defineAsyncComponent(mt)},props:["attributes","symbol","dynamic"],data(){var e,n,t;return{className:[...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:(t=this.symbol)==null?void 0:t.content}},inject:{builderContext:C.key},mounted(){this.fetchContent()},watch:{onUpdateHook0:{handler(){this.fetchContent()},immediate:!0}},computed:{onUpdateHook0(){return{0:this.symbol}}},methods:{fetchContent(){var e,n;!this.contentToUse&&((e=this.symbol)==null?void 0:e.model)&&((n=this.builderContext)==null?void 0:n.apiKey)&&E({model:this.symbol.model,apiKey:this.builderContext.apiKey,apiVersion:this.builderContext.apiVersion,query:{id:this.symbol.entry}}).then(t=>{t&&(this.contentToUse=t)}).catch(t=>{console.error("[Builder.io]: Could not fetch symbol content: ",t)})},filterAttrs:function(n={},t){const o="v-on:";return Object.keys(n).filter(s=>{const r=s.startsWith(o);return t?r:!r}).reduce((s,r)=>({...s,[r.replace(o,"")]:n[r]}),{})},_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}}},ht=["dataSet"];function ft(e,n,t,o,s,r){var l,c,d,u;const a=i.resolveComponent("render-content");return i.openBlock(),i.createElementBlock("div",i.mergeProps({dataSet:{class:s.className},class:r._classStringToObject(s.className)},r.filterAttrs(t.attributes,!1),i.toHandlers(r.filterAttrs(t.attributes,!0),!0)),[i.createVNode(a,{apiVersion:r.builderContext.apiVersion,apiKey:r.builderContext.apiKey,context:r.builderContext.context,customComponents:Object.values(r.builderContext.registeredComponents),data:{...(l=t.symbol)==null?void 0:l.data,...r.builderContext.state,...(d=(c=s.contentToUse)==null?void 0:c.data)==null?void 0:d.state},model:(u=t.symbol)==null?void 0:u.model,content:s.contentToUse},null,8,["apiVersion","apiKey","context","customComponents","data","model","content"])],16,ht)}const se=p(pt,[["render",ft]]),gt={name:"Text",static:!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"}},bt={name:"builder-text",props:["text"]},yt=["innerHTML"];function vt(e,n,t,o,s,r){return i.openBlock(),i.createElementBlock("span",{class:"builder-text",innerHTML:t.text,style:{outline:"none"}},null,8,yt)}const ie=p(bt,[["render",vt]]),kt={name:"Video",canHaveChildren:!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}]},xt={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}}}},Ct=["src","poster"];function St(e,n,t,o,s,r){var a;return i.openBlock(),i.createElementBlock("video",i.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},r.spreadProps),null,16,Ct)}const ae=p(xt,[["render",St]]),_t={name:"Embed",static:!0,inputs:[{name:"url",type:"url",required:!0,defaultValue:"",helperText:"e.g. enter a youtube url, google map, etc",onChange:_(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}]},wt=["text/javascript","application/javascript","application/ecmascript"],It=e=>wt.includes(e.type),Tt={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(It(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)}}}}},Rt=["innerHTML"];function Bt(e,n,t,o,s,r){return i.openBlock(),i.createElementBlock("div",{class:"builder-embed",ref:"elem",innerHTML:t.content},null,8,Rt)}const Et=p(Tt,[["render",Bt]]),At={name:"builder-img-component",props:["backgroundSize","backgroundPosition","imgSrc","altText","image","attributes"],data(){return{isEditing:b}},methods:{filterAttrs:function(n={},t){const o="v-on:";return Object.keys(n).filter(s=>{const r=s.startsWith(o);return t?r:!r}).reduce((s,r)=>({...s,[r.replace(o,"")]:n[r]}),{})}}},jt=["alt","src"];function Pt(e,n,t,o,s,r){return i.openBlock(),i.createElementBlock("img",i.mergeProps({style:{objectFit:t.backgroundSize||"cover",objectPosition:t.backgroundPosition||"center"},key:s.isEditing()&&t.imgSrc||"default-key",alt:t.altText,src:t.imgSrc||t.image},r.filterAttrs(t.attributes,!1),i.toHandlers(r.filterAttrs(t.attributes,!0),!0)),null,16,jt)}const Vt=p(At,[["render",Pt]]),Ft={name:"Raw:Img",hideFromInsertMenu:!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},Ot={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}}},Ut=["innerHTML"];function Nt(e,n,t,o,s,r){return i.openBlock(),i.createElementBlock("div",{ref:"elem",class:i.normalizeClass(r._classStringToObject("builder-custom-code"+(t.replaceNodes?" replace-nodes":""))),innerHTML:t.code},null,10,Ut)}const Lt=p(Ot,[["render",Nt]]),Wt={name:"Custom Code",static:!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}]},Mt=()=>[{component:M,...ze},{component:K,...He},{component:Lt,...Wt},{component:Et,..._t},{component:D,...Ke},{component:q,...De},{component:Vt,...Ft},{component:Y,...qe},{component:se,...Ye},{component:ie,...gt},{component:ae,...kt}];function T({code:e,context:n,state:t,event:o,isExpression:s=!0}){if(e===""){console.warn("Skipping evaluation of empty code block.");return}const r={isEditing:b(),isBrowser:m(),isServer:!m()},l=s&&!(e.includes(";")||e.includes(" return ")||e.trim().startsWith("return "))?`return (${e});`:e;try{return new Function("builder","Builder","state","context","event",l)(r,r,t,n,o)}catch(c){console.warn(`Builder custom code error:
|
|
28
28
|
While Evaluating:
|
|
29
29
|
`,l,`
|
|
30
|
-
`,c)}}function ce(){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 le=({component:e,...n})=>({type:"builder.registerComponent",data:Ht(n)}),zt=e=>typeof e=="function"?S(e):C(e),Ht=({inputs:e,...n})=>({...C(n),inputs:e==null?void 0:e.map(t=>Object.entries(t).reduce((o,[s,r])=>({...o,[s]:zt(r)}),{}))});function Kt(){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 de(){return Kt().replace(/-/g,"")}const ue="builderSessionId",Dt=async({canTrack:e})=>{if(!e)return;const n=await Q({name:ue,canTrack:e});if(y(n))return n;{const t=qt();return Gt({id:t,canTrack:e}),t}},qt=()=>de(),Gt=({id:e,canTrack:n})=>Z({name:ue,value:e,canTrack:n}),me=()=>h()&&typeof localStorage<"u"?localStorage:void 0,Jt=({key:e,canTrack:n})=>{var t;try{return n?(t=me())==null?void 0:t.getItem(e):void 0}catch(o){console.debug("[LocalStorage] GET error: ",o);return}},Yt=({key:e,canTrack:n,value:t})=>{var o;try{n&&((o=me())==null||o.setItem(e,t))}catch(s){console.debug("[LocalStorage] SET error: ",s)}},pe="builderVisitorId",Xt=({canTrack:e})=>{if(!e)return;const n=Jt({key:pe,canTrack:e});if(y(n))return n;{const t=Qt();return Zt({id:t,canTrack:e}),t}},Qt=()=>de(),Zt=({id:e,canTrack:n})=>Yt({key:pe,value:e,canTrack:n}),en=()=>{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},tn=()=>typeof navigator=="object"&&navigator.userAgent||"",nn=()=>{const e=tn(),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=en();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"}},on=async({canTrack:e})=>{if(!e)return{visitorId:void 0,sessionId:void 0};const n=await Dt({canTrack:e}),t=Xt({canTrack:e});return{sessionId:n,visitorId:t}},rn=async({type:e,canTrack:n,apiKey:t,metadata:o,...s})=>({type:e,data:{...s,metadata:{url:location.href,...o},...await on({canTrack:n}),userAttributes:nn(),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 rn(e)]}),headers:{"content-type":"application/json"},mode:"cors"}).catch(n=>{console.error("Failed to track: ",n)})}const sn=e=>T({...e,canTrack:!0}),V={};function he(e,n){let t=V[e];if(t||(t=V[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(s){console.debug("Could not postmessage",s)}}}const an=()=>{he("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 U=!1;const cn=(e={})=>{var n,t;U||(U=!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 s,r;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?(s=window.parent)==null||s.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):(r=window.parent)==null||r.postMessage({type:"builder.evaluateResult",data:{result:u,id:c}},"*");break}}})))};function N(e){return Math.round(e*1e3)/1e3}const ln=(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},dn=e=>ln(e,n=>{const t=n.getAttribute("builder-id")||n.id;return Boolean((t==null?void 0:t.indexOf("builder-"))===0)}),L=({event:e,target:n})=>{const t=n.getBoundingClientRect(),o=e.clientX-t.left,s=e.clientY-t.top,r=N(o/t.width),a=N(s/t.height);return{x:r,y:a}},un=e=>{const n=e.target,t=n&&dn(n),o=(t==null?void 0:t.getAttribute("builder-id"))||(t==null?void 0:t.id);return{targetBuilderElement:o||void 0,metadata:{targetOffset:n?L({event:e,target:n}):void 0,builderTargetOffset:t?L({event:e,target:t}):void 0,builderElementIndex:t&&o?[].slice.call(document.getElementsByClassName(o)).indexOf(t):void 0}}},mn=({content:e,data:n,locale:t})=>{var r,a,l;const o={};(a=(r=e==null?void 0:e.data)==null?void 0:r.inputs)==null||a.forEach(c=>{var d;c.name&&c.defaultValue!==void 0&&((d=e==null?void 0:e.data)==null?void 0:d.state)&&e.data.state[c.name]===void 0&&(o[c.name]=c.defaultValue)});const s={...(l=e==null?void 0:e.data)==null?void 0:l.state,...n,...t?{locale:t}:{}};return{...o,...s}},pn=({content:e,data:n})=>e?{...e,data:{...e==null?void 0:e.data,...n},meta:e==null?void 0:e.meta}:void 0,hn=()=>Promise.resolve().then(()=>J).then(e=>e.default).catch(e=>{throw console.error("Error while attempting to dynamically import component RenderBlocks at ../render-blocks.vue",e),e}),fn=()=>Promise.resolve().then(()=>require("./render-styles.830f02aa.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}),gn={name:"render-content",components:{RenderContentStyles:i.defineAsyncComponent(fn),RenderBlocks:i.defineAsyncComponent(hn)},props:["content","data","canTrack","locale","customComponents","model","context","apiKey","includeRefs"],data(){return{forceReRenderCount:0,overrideContent:null,useContent:pn({content:this.content,data:this.data}),update:0,canTrackToUse:y(this.canTrack)?this.canTrack:!0,contentState:mn({content:this.content,data:this.data,locale:this.locale}),allRegisteredComponents:[...Mt(),...E,...this.customComponents||[]].reduce((e,n)=>({...e,[n.name]:n}),{}),httpReqsData:{},clicked:!1,TARGET:k}},provide(){const e=this;return{[x.key]:{content:e.useContent,state:e.contentState,setState:e.setContextState,context:e.context||{},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,an(),cn({...this.locale?{locale:this.locale}:{},...this.includeRefs?{includeRefs:this.includeRefs}:{}}),Object.values(this.allRegisteredComponents).forEach(t=>{var s;const o=le(t);(s=window.parent)==null||s.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(ce()){const t=new URL(location.href).searchParams,o=t.get("builder.preview"),s=t.get("apiKey")||t.get("builder.space");o===this.model&&s===this.apiKey&&B({model:this.model,apiKey:this.apiKey}).then(r=>{r&&this.mergeNewContent(r)})}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:{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:{mergeNewContent(e){var n,t,o,s,r;this.useContent={...this.useContent,...e,data:{...(n=this.useContent)==null?void 0:n.data,...e==null?void 0:e.data},meta:{...(t=this.useContent)==null?void 0:t.meta,...e==null?void 0:e.meta,breakpoints:((o=e==null?void 0:e.meta)==null?void 0:o.breakpoints)||((r=(s=this.useContent)==null?void 0:s.meta)==null?void 0:r.breakpoints)}}},setBreakpoints(e){var n;this.useContent={...this.useContent,meta:{...(n=this.useContent)==null?void 0:n.meta,breakpoints:e}}},setContextState(e){this.contentState=e},processMessage(e){var t;const{data:n}=e;if(n)switch(n.type){case"builder.configureSdk":{const o=n.data,{breakpoints:s,contentId:r}=o;if(!r||r!==((t=this.useContent)==null?void 0:t.id))return;s&&this.setBreakpoints(s),this.forceReRenderCount=this.forceReRenderCount+1;break}case"builder.contentUpdate":{const o=n.data,s=o.key||o.alias||o.entry||o.modelName,r=o.data;s===this.model&&(this.mergeNewContent(r),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.context||{},state:this.contentState})},onClick(e){var n,t;if(this.useContent){const o=(n=this.useContent)==null?void 0:n.testVariationId,s=(t=this.useContent)==null?void 0:t.id;T({type:"click",canTrack:this.canTrackToUse,contentId:s,apiKey:this.apiKey,variationId:o!==s?o:void 0,...un(e),unique:!this.clicked})}this.clicked||(this.clicked=!0)},evalExpression(e){return e.replace(/{{([^}]+)}}/g,(n,t)=>I({code:t,context:this.context||{},state:this.contentState}))},handleRequest({url:e,key:n}){X(e).then(t=>t.json()).then(t=>{const o={...this.contentState,[n]:t};this.setContextState(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(([s,r])=>{if(r&&(!this.httpReqsData[s]||g())){const a=this.evalExpression(r);this.handleRequest({url:a,key:s})}})},emitStateUpdate(){g()&&window.dispatchEvent(new CustomEvent("builder:component:stateChange",{detail:{state:this.contentState,ref:{name:this.model}}}))}}},bn=["builder-content-id","builder-model"];function yn(e,n,t,o,s,r){var c,d,u,m,p,b,A,j;const a=i.resolveComponent("render-content-styles"),l=i.resolveComponent("render-blocks");return s.useContent?(i.openBlock(),i.createElementBlock("div",{key:0,ref:"elementRef",onClick:n[0]||(n[0]=ge=>r.onClick(ge)),"builder-content-id":(c=s.useContent)==null?void 0:c.id,"builder-model":t.model},[s.TARGET!=="reactNative"?(i.openBlock(),i.createBlock(a,{key:0,contentId:(d=s.useContent)==null?void 0:d.id,cssCode:(m=(u=s.useContent)==null?void 0:u.data)==null?void 0:m.cssCode,customFonts:(b=(p=s.useContent)==null?void 0:p.data)==null?void 0:b.customFonts},null,8,["contentId","cssCode","customFonts"])):i.createCommentVNode("",!0),(i.openBlock(),i.createBlock(l,{blocks:(j=(A=s.useContent)==null?void 0:A.data)==null?void 0:j.blocks,key:s.forceReRenderCount},null,8,["blocks"]))],8,bn)):i.createCommentVNode("",!0)}const fe=f(gn,[["render",yn]]),kn=Object.freeze(Object.defineProperty({__proto__:null,default:fe},Symbol.toStringTag,{value:"Module"})),W={};function vn(e){if(h()){Object.assign(W,e);const n={type:"builder.settingsChange",data:W};parent.postMessage(n,"*")}}exports.BuilderContext=x;exports.Button=M;exports.Columns=K;exports.Fragment=D;exports.Image=q;exports.Section=Y;exports.Symbol=se;exports.TARGET=k;exports.Text=ie;exports.Video=ae;exports._export_sfc=f;exports.checkIsDefined=y;exports.components=E;exports.convertSearchParamsToQueryObject=te;exports.convertStyleMapToCSSArray=H;exports.createCssClass=Ce;exports.createRegisterComponentMessage=le;exports.evaluate=I;exports.fastClone=C;exports.getAllContent=re;exports.getBuilderSearchParams=ne;exports.getBuilderSearchParamsFromWindow=oe;exports.getContent=B;exports.getMaxWidthQueryForSize=ve;exports.getSizesForBreakpoints=z;exports.isEditing=g;exports.isPreviewing=ce;exports.normalizeSearchParams=R;exports.register=he;exports.registerComponent=$t;exports.renderBlocks=G;exports.renderContent=fe;exports.setEditorSettings=vn;exports.track=sn;
|
|
30
|
+
`,c)}}function ce(){return!m()||b()?!1:Boolean(location.search.indexOf("builder.preview=")!==-1)}const A=[];function $t(e,n){return A.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 le=({component:e,...n})=>({type:"builder.registerComponent",data:Ht(n)}),zt=e=>typeof e=="function"?_(e):S(e),Ht=({inputs:e,...n})=>({...S(n),inputs:e==null?void 0:e.map(t=>Object.entries(t).reduce((o,[s,r])=>({...o,[s]:zt(r)}),{}))});function Kt(){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 de(){return Kt().replace(/-/g,"")}const ue="builderSessionId",Dt=async({canTrack:e})=>{if(!e)return;const n=await Q({name:ue,canTrack:e});if(y(n))return n;{const t=qt();return Gt({id:t,canTrack:e}),t}},qt=()=>de(),Gt=({id:e,canTrack:n})=>Z({name:ue,value:e,canTrack:n}),me=()=>m()&&typeof localStorage<"u"?localStorage:void 0,Jt=({key:e,canTrack:n})=>{var t;try{return n?(t=me())==null?void 0:t.getItem(e):void 0}catch(o){console.debug("[LocalStorage] GET error: ",o);return}},Yt=({key:e,canTrack:n,value:t})=>{var o;try{n&&((o=me())==null||o.setItem(e,t))}catch(s){console.debug("[LocalStorage] SET error: ",s)}},pe="builderVisitorId",Xt=({canTrack:e})=>{if(!e)return;const n=Jt({key:pe,canTrack:e});if(y(n))return n;{const t=Qt();return Zt({id:t,canTrack:e}),t}},Qt=()=>de(),Zt=({id:e,canTrack:n})=>Yt({key:pe,value:e,canTrack:n}),en=()=>{if(m()){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},tn=()=>typeof navigator=="object"&&navigator.userAgent||"",nn=()=>{const e=tn(),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()||v==="reactNative"}},t=e.match(/Tablet|iPad/i),o=en();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"}},on=async({canTrack:e})=>{if(!e)return{visitorId:void 0,sessionId:void 0};const n=await Dt({canTrack:e}),t=Xt({canTrack:e});return{sessionId:n,visitorId:t}},rn=async({type:e,canTrack:n,apiKey:t,metadata:o,...s})=>({type:e,data:{...s,metadata:{url:location.href,...o},...await on({canTrack:n}),userAttributes:nn(),ownerId:t}});async function R(e){if(!e.apiKey){console.error("[Builder.io]: Missing API key for track call. Please provide your API key.");return}if(!!e.canTrack&&!b()&&!!(m()||v==="reactNative"))return fetch("https://builder.io/api/v1/track",{method:"POST",body:JSON.stringify({events:[await rn(e)]}),headers:{"content-type":"application/json"},mode:"cors"}).catch(n=>{console.error("Failed to track: ",n)})}const sn=e=>R({...e,canTrack:!0}),O={};function he(e,n){let t=O[e];if(t||(t=O[e]=[]),t.push(n),m()){const o={type:"builder.register",data:{type:e,info:n}};try{parent.postMessage(o,"*"),parent!==window&&window.postMessage(o,"*")}catch(s){console.debug("Could not postmessage",s)}}}const an=()=>{he("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 U=!1;const cn=(e={})=>{var n,t;U||(U=!0,m()&&((n=window.parent)==null||n.postMessage({type:"builder.sdkInfo",data:{target:v,supportsPatchUpdates:!1,supportsAddBlockScoping:!0,supportsCustomBreakpoints:!0}},"*"),(t=window.parent)==null||t.postMessage({type:"builder.updateContent",data:{options:e}},"*"),window.addEventListener("message",({data:o})=>{var s,r;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,f=null;try{u=d.apply(null,l)}catch(h){f=h}f?(s=window.parent)==null||s.postMessage({type:"builder.evaluateError",data:{id:c,error:f.message}},"*"):u&&typeof u.then=="function"?u.then(h=>{var g;(g=window.parent)==null||g.postMessage({type:"builder.evaluateResult",data:{id:c,result:h}},"*")}).catch(console.error):(r=window.parent)==null||r.postMessage({type:"builder.evaluateResult",data:{result:u,id:c}},"*");break}}})))};function N(e){return Math.round(e*1e3)/1e3}const ln=(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},dn=e=>ln(e,n=>{const t=n.getAttribute("builder-id")||n.id;return Boolean((t==null?void 0:t.indexOf("builder-"))===0)}),L=({event:e,target:n})=>{const t=n.getBoundingClientRect(),o=e.clientX-t.left,s=e.clientY-t.top,r=N(o/t.width),a=N(s/t.height);return{x:r,y:a}},un=e=>{const n=e.target,t=n&&dn(n),o=(t==null?void 0:t.getAttribute("builder-id"))||(t==null?void 0:t.id);return{targetBuilderElement:o||void 0,metadata:{targetOffset:n?L({event:e,target:n}):void 0,builderTargetOffset:t?L({event:e,target:t}):void 0,builderElementIndex:t&&o?[].slice.call(document.getElementsByClassName(o)).indexOf(t):void 0}}},mn=({content:e,data:n,locale:t})=>{var r,a,l;const o={};(a=(r=e==null?void 0:e.data)==null?void 0:r.inputs)==null||a.forEach(c=>{var d;c.name&&c.defaultValue!==void 0&&((d=e==null?void 0:e.data)==null?void 0:d.state)&&e.data.state[c.name]===void 0&&(o[c.name]=c.defaultValue)});const s={...(l=e==null?void 0:e.data)==null?void 0:l.state,...n,...t?{locale:t}:{}};return{...o,...s}},pn=({content:e,data:n})=>e?{...e,data:{...e==null?void 0:e.data,...n},meta:e==null?void 0:e.meta}:void 0,hn=()=>Promise.resolve().then(()=>J).then(e=>e.default).catch(e=>{throw console.error("Error while attempting to dynamically import component RenderBlocks at ../render-blocks.vue",e),e}),fn=()=>Promise.resolve().then(()=>require("./render-styles.a17481e5.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}),gn={name:"render-content",components:{RenderContentStyles:i.defineAsyncComponent(fn),RenderBlocks:i.defineAsyncComponent(hn)},props:["content","data","canTrack","locale","customComponents","model","context","apiKey","includeRefs","apiVersion"],data(){return{forceReRenderCount:0,overrideContent:null,useContent:pn({content:this.content,data:this.data}),update:0,canTrackToUse:y(this.canTrack)?this.canTrack:!0,contentState:mn({content:this.content,data:this.data,locale:this.locale}),allRegisteredComponents:[...Mt(),...A,...this.customComponents||[]].reduce((e,n)=>({...e,[n.name]:n}),{}),httpReqsData:{},clicked:!1,TARGET:v}},provide(){const e=this;return{[C.key]:{content:e.useContent,state:e.contentState,setState:e.setContextState,context:e.context||{},apiKey:e.apiKey,apiVersion:e.apiVersion,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."),m()){if(b()&&(this.forceReRenderCount=this.forceReRenderCount+1,an(),cn({...this.locale?{locale:this.locale}:{},...this.includeRefs?{includeRefs:this.includeRefs}:{}}),Object.values(this.allRegisteredComponents).forEach(t=>{var s;const o=le(t);(s=window.parent)==null||s.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;R({type:"impression",canTrack:this.canTrackToUse,contentId:o,apiKey:this.apiKey,variationId:t!==o?t:void 0})}if(ce()){const t=new URL(location.href).searchParams,o=t.get("builder.preview"),s=t.get("apiKey")||t.get("builder.space");o===this.model&&s===this.apiKey&&E({model:this.model,apiKey:this.apiKey,apiVersion:this.apiVersion}).then(r=>{r&&this.mergeNewContent(r)})}this.evaluateJsCode(),this.runHttpRequests(),this.emitStateUpdate()}},watch:{onUpdateHook0:{handler(){this.content&&this.mergeNewContent(this.content)},immediate:!0},onUpdateHook1:{handler(){this.evaluateJsCode()},immediate:!0},onUpdateHook2:{handler(){this.runHttpRequests()},immediate:!0},onUpdateHook3:{handler(){this.emitStateUpdate()},immediate:!0}},unmounted(){m()&&(window.removeEventListener("message",this.processMessage),window.removeEventListener("builder:component:stateChangeListenerActivated",this.emitStateUpdate))},computed:{onUpdateHook0(){return{0:this.content}},onUpdateHook1(){var e,n;return{0:(n=(e=this.useContent)==null?void 0:e.data)==null?void 0:n.jsCode,1:this.contentState}},onUpdateHook2(){var e,n;return{0:(n=(e=this.useContent)==null?void 0:e.data)==null?void 0:n.httpRequests}},onUpdateHook3(){return{0:this.contentState}}},methods:{mergeNewContent(e){var n,t,o,s,r;this.useContent={...this.useContent,...e,data:{...(n=this.useContent)==null?void 0:n.data,...e==null?void 0:e.data},meta:{...(t=this.useContent)==null?void 0:t.meta,...e==null?void 0:e.meta,breakpoints:((o=e==null?void 0:e.meta)==null?void 0:o.breakpoints)||((r=(s=this.useContent)==null?void 0:s.meta)==null?void 0:r.breakpoints)}}},setBreakpoints(e){var n;this.useContent={...this.useContent,meta:{...(n=this.useContent)==null?void 0:n.meta,breakpoints:e}}},setContextState(e){this.contentState=e},processMessage(e){var t;const{data:n}=e;if(n)switch(n.type){case"builder.configureSdk":{const o=n.data,{breakpoints:s,contentId:r}=o;if(!r||r!==((t=this.useContent)==null?void 0:t.id))return;s&&this.setBreakpoints(s),this.forceReRenderCount=this.forceReRenderCount+1;break}case"builder.contentUpdate":{const o=n.data,s=o.key||o.alias||o.entry||o.modelName,r=o.data;s===this.model&&(this.mergeNewContent(r),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&&T({code:e,context:this.context||{},state:this.contentState})},onClick(e){var n,t;if(this.useContent){const o=(n=this.useContent)==null?void 0:n.testVariationId,s=(t=this.useContent)==null?void 0:t.id;R({type:"click",canTrack:this.canTrackToUse,contentId:s,apiKey:this.apiKey,variationId:o!==s?o:void 0,...un(e),unique:!this.clicked})}this.clicked||(this.clicked=!0)},evalExpression(e){return e.replace(/{{([^}]+)}}/g,(n,t)=>T({code:t,context:this.context||{},state:this.contentState}))},handleRequest({url:e,key:n}){X(e).then(t=>t.json()).then(t=>{const o={...this.contentState,[n]:t};this.setContextState(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(([s,r])=>{if(r&&(!this.httpReqsData[s]||b())){const a=this.evalExpression(r);this.handleRequest({url:a,key:s})}})},emitStateUpdate(){b()&&window.dispatchEvent(new CustomEvent("builder:component:stateChange",{detail:{state:this.contentState,ref:{name:this.model}}}))}}},bn=["builder-content-id","builder-model"];function yn(e,n,t,o,s,r){var c,d,u,f,h,g,k,j;const a=i.resolveComponent("render-content-styles"),l=i.resolveComponent("render-blocks");return s.useContent?(i.openBlock(),i.createElementBlock("div",{key:0,ref:"elementRef",onClick:n[0]||(n[0]=ge=>r.onClick(ge)),"builder-content-id":(c=s.useContent)==null?void 0:c.id,"builder-model":t.model},[s.TARGET!=="reactNative"?(i.openBlock(),i.createBlock(a,{key:0,contentId:(d=s.useContent)==null?void 0:d.id,cssCode:(f=(u=s.useContent)==null?void 0:u.data)==null?void 0:f.cssCode,customFonts:(g=(h=s.useContent)==null?void 0:h.data)==null?void 0:g.customFonts},null,8,["contentId","cssCode","customFonts"])):i.createCommentVNode("",!0),(i.openBlock(),i.createBlock(l,{blocks:(j=(k=s.useContent)==null?void 0:k.data)==null?void 0:j.blocks,key:s.forceReRenderCount},null,8,["blocks"]))],8,bn)):i.createCommentVNode("",!0)}const fe=p(gn,[["render",yn]]),vn=Object.freeze(Object.defineProperty({__proto__:null,default:fe},Symbol.toStringTag,{value:"Module"})),W={};function kn(e){if(m()){Object.assign(W,e);const n={type:"builder.settingsChange",data:W};parent.postMessage(n,"*")}}exports.BuilderContext=C;exports.Button=M;exports.Columns=K;exports.Fragment=D;exports.Image=q;exports.Section=Y;exports.Symbol=se;exports.TARGET=v;exports.Text=ie;exports.Video=ae;exports._export_sfc=p;exports.checkIsDefined=y;exports.components=A;exports.convertSearchParamsToQueryObject=te;exports.convertStyleMapToCSSArray=H;exports.createCssClass=Ce;exports.createRegisterComponentMessage=le;exports.evaluate=T;exports.fastClone=S;exports.getAllContent=re;exports.getBuilderSearchParams=ne;exports.getBuilderSearchParamsFromWindow=oe;exports.getContent=E;exports.getMaxWidthQueryForSize=ke;exports.getSizesForBreakpoints=z;exports.isEditing=b;exports.isPreviewing=ce;exports.normalizeSearchParams=B;exports.register=he;exports.registerComponent=$t;exports.renderBlocks=G;exports.renderContent=fe;exports.setEditorSettings=kn;exports.track=sn;
|