@builder.io/sdk-vue 0.0.2-0 → 0.0.2-1
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 +4 -4
- package/packages/_vue2/dist/block-styles.4b780e2e.js +56 -0
- package/packages/_vue2/dist/block-styles.d7caff48.cjs +10 -0
- package/packages/_vue2/dist/get-processed-block.1b0392ce.js +57 -0
- package/packages/_vue2/dist/get-processed-block.a69f90d1.cjs +1 -0
- package/packages/_vue2/dist/index.35b10c2f.js +2081 -0
- package/packages/_vue2/dist/index.e881a81c.cjs +4 -0
- package/packages/_vue2/dist/render-block.3112f40b.js +237 -0
- package/packages/_vue2/dist/render-block.37a4bbe9.cjs +3 -0
- package/packages/_vue2/dist/render-component.3c148966.cjs +1 -0
- package/packages/_vue2/dist/render-component.7c5a2af0.js +38 -0
- package/packages/_vue2/dist/render-inlined-styles.c3478295.cjs +1 -0
- package/packages/_vue2/dist/render-inlined-styles.f67a4c7d.js +31 -0
- package/packages/_vue2/dist/render-repeated-block.006af118.js +50 -0
- package/packages/_vue2/dist/render-repeated-block.ea4adce6.cjs +1 -0
- package/packages/_vue2/dist/render-styles.90704267.js +70 -0
- package/packages/_vue2/dist/render-styles.e6d20f13.cjs +17 -0
- package/packages/_vue2/dist/sdk.cjs +1 -0
- package/packages/_vue2/dist/sdk.js +27 -0
- package/packages/_vue2/dist/style.css +1 -0
- package/packages/_vue3/dist/block-styles.13caf8d7.js +53 -0
- package/packages/_vue3/dist/block-styles.8cb7f734.cjs +10 -0
- package/packages/_vue3/dist/get-processed-block.15d39b53.cjs +1 -0
- package/packages/_vue3/dist/get-processed-block.bebdc794.js +57 -0
- package/packages/_vue3/dist/index.f58628dd.cjs +4 -0
- package/packages/_vue3/dist/index.fa54ce28.js +2054 -0
- package/packages/_vue3/dist/render-block.23c16bfb.cjs +3 -0
- package/packages/_vue3/dist/render-block.9c550b26.js +253 -0
- package/packages/_vue3/dist/render-component.9668419b.js +43 -0
- package/packages/_vue3/dist/render-component.c2e224cc.cjs +1 -0
- package/packages/_vue3/dist/render-inlined-styles.08569ffb.js +30 -0
- package/packages/_vue3/dist/render-inlined-styles.32f5f3bc.cjs +1 -0
- package/packages/_vue3/dist/render-repeated-block.73309b84.js +45 -0
- package/packages/_vue3/dist/render-repeated-block.8c10514d.cjs +1 -0
- package/packages/_vue3/dist/render-styles.22ddc0bf.cjs +17 -0
- package/packages/_vue3/dist/render-styles.63eb2def.js +64 -0
- package/packages/_vue3/dist/sdk.cjs +1 -0
- package/packages/_vue3/dist/sdk.js +28 -0
- package/packages/_vue3/dist/style.css +1 -0
|
@@ -0,0 +1,53 @@
|
|
|
1
|
+
import { defineAsyncComponent as i, resolveComponent as a, openBlock as d, createBlock as m, createCommentVNode as p } from "vue";
|
|
2
|
+
import { g as u, a as r } from "./get-processed-block.bebdc794.js";
|
|
3
|
+
import { T as $, _ as y } from "./index.fa54ce28.js";
|
|
4
|
+
const k = (e) => e.replace(/([a-z0-9]|(?=[A-Z]))([A-Z])/g, "$1-$2").toLowerCase(), n = (e) => Object.entries(e).map(([o, t]) => {
|
|
5
|
+
if (typeof t == "string")
|
|
6
|
+
return `${k(o)}: ${t};`;
|
|
7
|
+
}).join(`
|
|
8
|
+
`), h = () => import("./render-inlined-styles.08569ffb.js").then((e) => e.default).catch((e) => {
|
|
9
|
+
throw console.error(
|
|
10
|
+
"Error while attempting to dynamically import component RenderInlinedStyles at ../render-inlined-styles.vue",
|
|
11
|
+
e
|
|
12
|
+
), e;
|
|
13
|
+
}), f = {
|
|
14
|
+
name: "block-styles",
|
|
15
|
+
components: {
|
|
16
|
+
"render-inlined-styles": i(h)
|
|
17
|
+
},
|
|
18
|
+
props: ["block", "context"],
|
|
19
|
+
data: () => ({ TARGET: $ }),
|
|
20
|
+
computed: {
|
|
21
|
+
useBlock() {
|
|
22
|
+
return u({
|
|
23
|
+
block: this.block,
|
|
24
|
+
state: this.context.state,
|
|
25
|
+
context: this.context.context,
|
|
26
|
+
shouldEvaluateBindings: !0
|
|
27
|
+
});
|
|
28
|
+
},
|
|
29
|
+
css() {
|
|
30
|
+
const e = this.useBlock.responsiveStyles, s = e == null ? void 0 : e.large, o = e == null ? void 0 : e.medium, t = e == null ? void 0 : e.small;
|
|
31
|
+
return `
|
|
32
|
+
${s ? `.${this.useBlock.id} {${n(s)}}` : ""}
|
|
33
|
+
${o ? `${r("medium")} {
|
|
34
|
+
.${this.useBlock.id} {${n(o)}}
|
|
35
|
+
}` : ""}
|
|
36
|
+
${t ? `${r("small")} {
|
|
37
|
+
.${this.useBlock.id} {${n(t)}}
|
|
38
|
+
}` : ""}
|
|
39
|
+
}`;
|
|
40
|
+
}
|
|
41
|
+
}
|
|
42
|
+
};
|
|
43
|
+
function T(e, s, o, t, S, c) {
|
|
44
|
+
const l = a("render-inlined-styles");
|
|
45
|
+
return e.TARGET === "vue2" || e.TARGET === "vue3" || e.TARGET === "svelte" || e.TARGET === "qwik" ? (d(), m(l, {
|
|
46
|
+
key: 0,
|
|
47
|
+
styles: c.css
|
|
48
|
+
}, null, 8, ["styles"])) : p("", !0);
|
|
49
|
+
}
|
|
50
|
+
const b = /* @__PURE__ */ y(f, [["render", T]]);
|
|
51
|
+
export {
|
|
52
|
+
b as default
|
|
53
|
+
};
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const n=require("vue"),r=require("./get-processed-block.15d39b53.cjs"),l=require("./index.f58628dd.cjs"),a=e=>e.replace(/([a-z0-9]|(?=[A-Z]))([A-Z])/g,"$1-$2").toLowerCase(),c=e=>Object.entries(e).map(([s,t])=>{if(typeof t=="string")return`${a(s)}: ${t};`}).join(`
|
|
2
|
+
`),u=()=>Promise.resolve().then(()=>require("./render-inlined-styles.32f5f3bc.cjs")).then(e=>e.default).catch(e=>{throw console.error("Error while attempting to dynamically import component RenderInlinedStyles at ../render-inlined-styles.vue",e),e}),m={name:"block-styles",components:{"render-inlined-styles":n.defineAsyncComponent(u)},props:["block","context"],data:()=>({TARGET:l.TARGET}),computed:{useBlock(){return r.getProcessedBlock({block:this.block,state:this.context.state,context:this.context.context,shouldEvaluateBindings:!0})},css(){const e=this.useBlock.responsiveStyles,o=e==null?void 0:e.large,s=e==null?void 0:e.medium,t=e==null?void 0:e.small;return`
|
|
3
|
+
${o?`.${this.useBlock.id} {${c(o)}}`:""}
|
|
4
|
+
${s?`${r.getMaxWidthQueryForSize("medium")} {
|
|
5
|
+
.${this.useBlock.id} {${c(s)}}
|
|
6
|
+
}`:""}
|
|
7
|
+
${t?`${r.getMaxWidthQueryForSize("small")} {
|
|
8
|
+
.${this.useBlock.id} {${c(t)}}
|
|
9
|
+
}`:""}
|
|
10
|
+
}`}}};function p(e,o,s,t,$,i){const d=n.resolveComponent("render-inlined-styles");return e.TARGET==="vue2"||e.TARGET==="vue3"||e.TARGET==="svelte"||e.TARGET==="qwik"?(n.openBlock(),n.createBlock(d,{key:0,styles:i.css},null,8,["styles"])):n.createCommentVNode("",!0)}const y=l._export_sfc(m,[["render",p]]);exports.default=y;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";const d=require("./index.f58628dd.cjs"),o={small:{min:320,default:321,max:640},medium:{min:641,default:642,max:991},large:{min:990,default:991,max:1200}},c=e=>`@media (max-width: ${o[e].max}px)`,u=(e,r,s)=>{if(Object(e)!==e)return e;const t=Array.isArray(r)?r:r.toString().match(/[^.[\]]+/g);return t.slice(0,-1).reduce((n,i,a)=>Object(n[i])===n[i]?n[i]:n[i]=Math.abs(Number(t[a+1]))>>0===+t[a+1]?[]:{},e)[t[t.length-1]]=s,e};const m=({block:e,context:r,state:s})=>{if(!e.bindings)return e;const t={...e,properties:{...e.properties},actions:{...e.actions}};for(const n in e.bindings){const i=e.bindings[n],a=d.evaluate({code:i,state:s,context:r});u(t,n,a)}return t};function g({block:e,context:r,shouldEvaluateBindings:s,state:t}){const n=e;return s?m({block:n,state:t,context:r}):n}exports.getMaxWidthQueryForSize=c;exports.getProcessedBlock=g;
|
|
@@ -0,0 +1,57 @@
|
|
|
1
|
+
import { e as o } from "./index.fa54ce28.js";
|
|
2
|
+
const u = {
|
|
3
|
+
small: {
|
|
4
|
+
min: 320,
|
|
5
|
+
default: 321,
|
|
6
|
+
max: 640
|
|
7
|
+
},
|
|
8
|
+
medium: {
|
|
9
|
+
min: 641,
|
|
10
|
+
default: 642,
|
|
11
|
+
max: 991
|
|
12
|
+
},
|
|
13
|
+
large: {
|
|
14
|
+
min: 990,
|
|
15
|
+
default: 991,
|
|
16
|
+
max: 1200
|
|
17
|
+
}
|
|
18
|
+
}, f = (e) => `@media (max-width: ${u[e].max}px)`, m = (e, r, s) => {
|
|
19
|
+
if (Object(e) !== e)
|
|
20
|
+
return e;
|
|
21
|
+
const t = Array.isArray(r) ? r : r.toString().match(/[^.[\]]+/g);
|
|
22
|
+
return t.slice(0, -1).reduce(
|
|
23
|
+
(n, i, a) => Object(n[i]) === n[i] ? n[i] : n[i] = Math.abs(Number(t[a + 1])) >> 0 === +t[a + 1] ? [] : {},
|
|
24
|
+
e
|
|
25
|
+
)[t[t.length - 1]] = s, e;
|
|
26
|
+
};
|
|
27
|
+
const c = ({
|
|
28
|
+
block: e,
|
|
29
|
+
context: r,
|
|
30
|
+
state: s
|
|
31
|
+
}) => {
|
|
32
|
+
if (!e.bindings)
|
|
33
|
+
return e;
|
|
34
|
+
const t = {
|
|
35
|
+
...e,
|
|
36
|
+
properties: { ...e.properties },
|
|
37
|
+
actions: { ...e.actions }
|
|
38
|
+
};
|
|
39
|
+
for (const n in e.bindings) {
|
|
40
|
+
const i = e.bindings[n], a = o({ code: i, state: s, context: r });
|
|
41
|
+
m(t, n, a);
|
|
42
|
+
}
|
|
43
|
+
return t;
|
|
44
|
+
};
|
|
45
|
+
function g({
|
|
46
|
+
block: e,
|
|
47
|
+
context: r,
|
|
48
|
+
shouldEvaluateBindings: s,
|
|
49
|
+
state: t
|
|
50
|
+
}) {
|
|
51
|
+
const n = e;
|
|
52
|
+
return s ? c({ block: n, state: t, context: r }) : n;
|
|
53
|
+
}
|
|
54
|
+
export {
|
|
55
|
+
f as a,
|
|
56
|
+
g
|
|
57
|
+
};
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
"use strict";const r=require("vue");function de(e){if(e&&e.__esModule)return e;const n=Object.create(null,{[Symbol.toStringTag]:{value:"Module"}});if(e){for(const t in e)if(t!=="default"){const o=Object.getOwnPropertyDescriptor(e,t);Object.defineProperty(n,t,o.get?o:{enumerable:!0,get:()=>e[t]})}}return n.default=e,Object.freeze(n)}const y="reactNative";function h(){return typeof window<"u"&&typeof document<"u"}const E={};function A(e,n){let t=E[e];if(t||(t=E[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(a){console.debug("Could not postmessage",a)}}}const ue=()=>{A("insertMenu",{name:"_default",default:!0,items:[{name:"Box"},{name:"Text"},{name:"Image"},{name:"Columns"}]})},me=()=>{var e;h()&&((e=window.parent)==null||e.postMessage({type:"builder.sdkInfo",data:{target:y,supportsPatchUpdates:!1}},"*"),window.addEventListener("message",({data:n})=>{var t,o;if(n)switch(n.type){case"builder.evaluate":{const a=n.data.text,s=n.data.arguments||[],i=n.data.id,l=new Function(a);let c,d=null;try{c=l.apply(null,s)}catch(u){d=u}d?(t=window.parent)==null||t.postMessage({type:"builder.evaluateError",data:{id:i,error:d.message}},"*"):c&&typeof c.then=="function"?c.then(u=>{var m;(m=window.parent)==null||m.postMessage({type:"builder.evaluateResult",data:{id:i,result:u}},"*")}).catch(console.error):(o=window.parent)==null||o.postMessage({type:"builder.evaluateResult",data:{result:c,id:i}},"*");break}}}))};function C(e){return e}function pe(e){return e}const he=()=>Promise.resolve().then(()=>ce).then(e=>e.default).catch(e=>{throw console.error("Error while attempting to dynamically import component RenderBlocks at ../../components/render-blocks.vue",e),e}),fe={name:"builder-columns",components:{"render-blocks":r.defineAsyncComponent(he)},props:["space","columns","stackColumnsAt","reverseColumnsWhenStacked","builderBlock"],data:()=>({markMutable:C}),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)}}},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"}}};const p=(e,n)=>{const t=e.__vccOpts||e;for(const[o,a]of n)t[o]=a;return t};function ge(e,n,t,o,a,s){const i=r.resolveComponent("render-blocks");return r.openBlock(),r.createElementBlock("div",{class:"builder-columns div-7fq9d0i380",style:r.normalizeStyle(s.columnsCssVars)},[(r.openBlock(!0),r.createElementBlock(r.Fragment,null,r.renderList(t.columns,(l,c)=>(r.openBlock(),r.createElementBlock("div",{key:c,class:"builder-column div-7fq9d0i380-2",style:r.normalizeStyle({width:s.getColumnCssWidth(c),marginLeft:`${c===0?0:s.getGutterSize()}px`,...s.columnCssVars})},[r.createVNode(i,{blocks:e.markMutable(l.blocks),path:`component.options.columns.${c}.blocks`,parent:t.builderBlock.id},null,8,["blocks","path","parent"])],4))),128))],4)}const U=p(fe,[["render",ge],["__scopeId","data-v-6b734aa0"]]);function B(e){return e.replace(/http(s)?:/,"")}function be(e="",n,t){const o=new RegExp("([?&])"+n+"=.*?(&|$)","i"),a=e.indexOf("?")!==-1?"&":"?";return e.match(o)?e.replace(o,"$1"+n+"="+encodeURIComponent(t)+"$2"):e+a+n+"="+encodeURIComponent(t)}function ye(e,n){if(!e||!(e!=null&&e.match(/cdn\.shopify\.com/))||!n)return e;if(n==="master")return B(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]),a=t[3],s=n.match("x")?n:`${n}x`;return B(`${o[0]}_${s}${a}`)}return null}function v(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(a=>a!==o).map(a=>`${be(e,"width",a)} ${a}w`).concat([t]).join(", ")}return e.match(/cdn\.shopify\.com/)?n.map(t=>[ye(e,`${t}x${t}`),t]).filter(([t])=>!!t).map(([t,o])=>`${t} ${o}w`).concat([e]).join(", "):e}const ve={name:"builder-image",props:["image","src","srcset","noWebp","altText","backgroundSize","className","sizes","aspectRatio","fitContent","builderBlock"],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"),v(n)}else if(this.image&&!this.srcset)return v(n);return v(n)},webpSrcSet(){var e;return((e=this.srcSetToUse)==null?void 0:e.match(/builder\.io/))&&!this.noWebp?this.srcSetToUse.replace(/\?/g,"?format=webp&"):""}},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 ke={class:"div-2btisl9m7v3"},xe=["srcset"],Ce=["alt","role","src","srcset","sizes"],_e=["srcset"],Se={key:2,class:"div-2btisl9m7v3-3"};function we(e,n,t,o,a,s){var i,l,c,d;return r.openBlock(),r.createElementBlock("div",ke,[r.createElementVNode("picture",null,[s.webpSrcSet?(r.openBlock(),r.createElementBlock("source",{key:0,type:"image/webp",srcset:s.webpSrcSet},null,8,xe)):r.createCommentVNode("",!0),r.createElementVNode("img",{loading:"lazy",alt:t.altText,role:t.altText?"presentation":void 0,style:r.normalizeStyle({objectPosition:t.backgroundSize||"center",objectFit:t.backgroundSize||"cover"}),class:r.normalizeClass(s._classStringToObject("builder-image"+(t.className?" "+t.className:"")+" img-2btisl9m7v3")),src:t.image,srcset:s.srcSetToUse,sizes:t.sizes},null,14,Ce),r.createElementVNode("source",{srcset:s.srcSetToUse},null,8,_e)]),t.aspectRatio&&!(t.fitContent&&((l=(i=t.builderBlock)==null?void 0:i.children)==null?void 0:l.length))?(r.openBlock(),r.createElementBlock("div",{key:0,class:"builder-image-sizer div-2btisl9m7v3-2",style:r.normalizeStyle({paddingTop:t.aspectRatio*100+"%"})},null,4)):r.createCommentVNode("",!0),((d=(c=t.builderBlock)==null?void 0:c.children)==null?void 0:d.length)&&t.fitContent?r.renderSlot(e.$slots,"default",{key:1},void 0,!0):r.createCommentVNode("",!0),t.fitContent?r.createCommentVNode("",!0):(r.openBlock(),r.createElementBlock("div",Se,[r.renderSlot(e.$slots,"default",{},void 0,!0)]))])}const O=p(ve,[["render",we],["__scopeId","data-v-865f9b2c"]]),Ie={name:"builder-text",props:["text"]},Te=["innerHTML"];function Re(e,n,t,o,a,s){return r.openBlock(),r.createElementBlock("span",{class:"builder-text",innerHTML:t.text},null,8,Te)}const $=p(Ie,[["render",Re]]),Ee={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}:{}}}}},Be=["src","poster"];function Fe(e,n,t,o,a,s){var i;return r.openBlock(),r.createElementBlock("video",r.mergeProps(s.videoProps,{style:{width:"100%",height:"100%",...(i=t.attributes)==null?void 0:i.style,objectFit:t.fit,objectPosition:t.position,borderRadius:1},src:t.video||"no-src",poster:t.posterImage}),null,16,Be)}const N=p(Ee,[["render",Fe]]);function k(e,n=null,t="."){return Object.keys(e).reduce((o,a)=>{const s=e[a],i=[n,a].filter(Boolean).join(t);return[typeof s=="object",s!==null,!(Array.isArray(s)&&s.length===0)].every(Boolean)?{...o,...k(s,i,t)}:{...o,[i]:s}},{})}const F="builder.",W=e=>{const n={};return e.forEach((t,o)=>{n[o]=t}),n},L=e=>{if(!e)return{};const n=_(e),t={};return Object.keys(n).forEach(o=>{if(o.startsWith(F)){const a=o.replace(F,"");t[a]=n[o]}}),t},M=()=>{if(!h())return{};const e=new URLSearchParams(window.location.search);return L(e)},_=e=>e instanceof URLSearchParams?W(e):e;function je(){return typeof globalThis<"u"?globalThis:typeof window<"u"?window:typeof global<"u"?global:typeof self<"u"?self:null}async function z(){const e=je().fetch;if(typeof e>"u"&&typeof global<"u"){const n=Promise.resolve().then(()=>de(require("node-fetch"))).then(t=>t.default);return n.default||n}return e.default||e}const Ve=e=>{const n=e.split(".");return n.length>2?n.slice(1).join("."):e},H=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)}},Pe=e=>e.map(([n,t])=>t?`${n}=${t}`:n).join("; "),Ae=[["secure",""],["SameSite","None"]],Ue=({name:e,value:n,expires:t})=>{const a=(h()?location.protocol==="https:":!0)?Ae:[[]],s=t?[["expires",t.toUTCString()]]:[[]],i=[[e,n],...s,["path","/"],["domain",Ve(window.location.hostname)],...a];return Pe(i)},q=async({name:e,value:n,expires:t,canTrack:o})=>{try{if(!o)return;const a=Ue({name:e,value:n,expires:t});document.cookie=a}catch(a){console.warn("[COOKIE] SET error: ",a)}},Oe="builderio.variations",D=e=>`${Oe}.${e}`,$e=({contentId:e,canTrack:n})=>H({name:D(e),canTrack:n}),Ne=({contentId:e,canTrack:n,value:t})=>q({name:D(e),value:t,canTrack:n}),b=e=>e!=null,We=e=>b(e.id)&&b(e.variations)&&Object.keys(e.variations).length>0,Le=({id:e,variations:n})=>{var a;let t=0;const o=Math.random();for(const s in n)if(t+=(a=n[s])==null?void 0:a.testRatio,o<t)return s;return e},j=({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":"")}},Me=async({item:e,canTrack:n})=>{const t=await $e({canTrack:n,contentId:e.id}),o=t?j({item:e,testGroupId:t}):void 0;if(o)return o;{const a=Le({variations:e.variations,id:e.id});return Ne({contentId:e.id,value:a,canTrack:n}).catch(s=>{console.error("could not store A/B test variation: ",s)}),j({item:e,testGroupId:a})}},ze=async({item:e,canTrack:n})=>{if(!We(e))return;const t=await Me({item:e,canTrack:n});Object.assign(e,t)};async function S(e){return(await G({...e,limit:1})).results[0]||null}const K=e=>{const{limit:n=30,userAttributes:t,query:o,noTraverse:a=!1,model:s,apiKey:i}=e,l=new URL(`https://cdn.builder.io/api/v2/content/${s}?apiKey=${i}&limit=${n}&noTraverse=${a}`),c={...M(),..._(e.options||{})},d=k(c);for(const u in d)l.searchParams.set(u,String(d[u]));if(t&&l.searchParams.set("userAttributes",JSON.stringify(t)),o){const u=k({query:o});for(const m in u)l.searchParams.set(m,JSON.stringify(u[m]))}return l};async function G(e){const n=K(e),o=await(await z())(n.href).then(s=>s.json()),a=e.canTrack!==!1;if(a)for(const s of o.results)await ze({item:s,canTrack:a});return o}const He=()=>Promise.resolve().then(()=>Gt).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}),qe={name:"builder-symbol",components:{"render-content":r.defineAsyncComponent(He)},props:["symbol","attributes"],data:()=>({className:"builder-symbol",content:null,markMutable:C}),inject:{builderContext:"BuilderContext"},mounted(){var e;this.content=(e=this.symbol)==null?void 0:e.content},watch:{onUpdateHook0(){const e=this.symbol;e&&!e.content&&!this.content&&e.model&&S({model:e.model,apiKey:this.builderContext.apiKey,query:{id:e.entry}}).then(n=>{this.content=n})}},computed:{onUpdateHook0(){return{0:this.symbol,1:this.content}}},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}}},De=["dataSet"];function Ke(e,n,t,o,a,s){var l,c,d,u,m;const i=r.resolveComponent("render-content");return r.openBlock(),r.createElementBlock("div",r.mergeProps(t.attributes,{dataSet:{class:e.className},class:s._classStringToObject(e.className)}),[r.createVNode(i,{apiKey:s.builderContext.apiKey,context:s.builderContext.context,customComponents:e.markMutable(Object.values(s.builderContext.registeredComponents)),data:e.markMutable({...(l=t.symbol)==null?void 0:l.data,...s.builderContext.state,...(u=(d=(c=t.symbol)==null?void 0:c.content)==null?void 0:d.data)==null?void 0:u.state}),model:(m=t.symbol)==null?void 0:m.model,content:e.markMutable(e.content)},null,8,["apiKey","context","customComponents","data","model","content"])],16,De)}const J=p(qe,[["render",Ke]]),Ge={name:"builder-button",props:["attributes","text","link","openLinkInNewTab"]};const Je=["href","target"];function Ye(e,n,t,o,a,s){return t.link?(r.openBlock(),r.createElementBlock("a",r.mergeProps({key:0},t.attributes,{role:"button",href:t.link,target:t.openLinkInNewTab?"_blank":void 0}),r.toDisplayString(t.text),17,Je)):(r.openBlock(),r.createElementBlock("button",r.mergeProps({key:1},t.attributes,{class:"button-2oa2wtipkzk"}),r.toDisplayString(t.text),17))}const Y=p(Ge,[["render",Ye],["__scopeId","data-v-3cb049f3"]]),Xe={name:"builder-section-component",props:["attributes","maxWidth"]};function Qe(e,n,t,o,a,s){return r.openBlock(),r.createElementBlock("section",r.mergeProps(t.attributes,{style:t.maxWidth&&typeof t.maxWidth=="number"?{maxWidth:t.maxWidth}:void 0}),[r.renderSlot(e.$slots,"default")],16)}const X=p(Xe,[["render",Qe]]),Ze={name:"builder-fragment-component",props:[]};function et(e,n,t,o,a,s){return r.openBlock(),r.createElementBlock("span",null,[r.renderSlot(e.$slots,"default")])}const Q=p(Ze,[["render",et]]),tt={name:"Core:Button",builtIn:!0,image:"https://cdn.builder.io/api/v1/image/assets%2FIsxPKMo2gPRRKeakUztj1D6uqed2%2F81a15681c3e74df09677dfc57a615b13",defaultStyles:{appearance:"none",paddingTop:"15px",paddingBottom:"15px",paddingLeft:"25px",paddingRight:"25px",backgroundColor:"#000000",color:"white",borderRadius:"4px",textAlign:"center",cursor:"pointer"},inputs:[{name:"text",type:"text",defaultValue:"Click me!",bubble:!0},{name:"link",type:"url",bubble:!0},{name:"openLinkInNewTab",type:"boolean",defaultValue:!1,friendlyName:"Open link in new tab"}],static:!0,noWrap:!0};function w(e){return e.__qwik_serializable__=!0,e}const nt={name:"Columns",builtIn:!0,inputs:[{name:"columns",type:"array",broadcast:!0,subFields:[{name:"blocks",type:"array",hideFromUI:!0,defaultValue:[{"@type":"@builder.io/sdk:Element",responsiveStyles:{large:{display:"flex",flexDirection:"column",alignItems:"stretch",flexShrink:"0",position:"relative",marginTop:"30px",textAlign:"center",lineHeight:"normal",height:"auto",minHeight:"20px",minWidth:"20px",overflow:"hidden"}},component:{name:"Image",options:{image:"https://builder.io/api/v1/image/assets%2Fpwgjf0RoYWbdnJSbpBAjXNRMe9F2%2Ffb27a7c790324294af8be1c35fe30f4d",backgroundPosition:"center",backgroundSize:"cover",aspectRatio:.7004048582995948}}},{"@type":"@builder.io/sdk:Element",responsiveStyles:{large:{display:"flex",flexDirection:"column",alignItems:"stretch",flexShrink:"0",position:"relative",marginTop:"30px",textAlign:"center",lineHeight:"normal",height:"auto"}},component:{name:"Text",options:{text:"<p>Enter some text...</p>"}}}]},{name:"width",type:"number",hideFromUI:!0,helperText:"Width %, e.g. set to 50 to fill half of the space"},{name:"link",type:"url",helperText:"Optionally set a url that clicking this column will link to"}],defaultValue:[{blocks:[{"@type":"@builder.io/sdk:Element",responsiveStyles:{large:{display:"flex",flexDirection:"column",alignItems:"stretch",flexShrink:"0",position:"relative",marginTop:"30px",textAlign:"center",lineHeight:"normal",height:"auto",minHeight:"20px",minWidth:"20px",overflow:"hidden"}},component:{name:"Image",options:{image:"https://builder.io/api/v1/image/assets%2Fpwgjf0RoYWbdnJSbpBAjXNRMe9F2%2Ffb27a7c790324294af8be1c35fe30f4d",backgroundPosition:"center",backgroundSize:"cover",aspectRatio:.7004048582995948}}},{"@type":"@builder.io/sdk:Element",responsiveStyles:{large:{display:"flex",flexDirection:"column",alignItems:"stretch",flexShrink:"0",position:"relative",marginTop:"30px",textAlign:"center",lineHeight:"normal",height:"auto"}},component:{name:"Text",options:{text:"<p>Enter some text...</p>"}}}]},{blocks:[{"@type":"@builder.io/sdk:Element",responsiveStyles:{large:{display:"flex",flexDirection:"column",alignItems:"stretch",flexShrink:"0",position:"relative",marginTop:"30px",textAlign:"center",lineHeight:"normal",height:"auto",minHeight:"20px",minWidth:"20px",overflow:"hidden"}},component:{name:"Image",options:{image:"https://builder.io/api/v1/image/assets%2Fpwgjf0RoYWbdnJSbpBAjXNRMe9F2%2Ffb27a7c790324294af8be1c35fe30f4d",backgroundPosition:"center",backgroundSize:"cover",aspectRatio:.7004048582995948}}},{"@type":"@builder.io/sdk:Element",responsiveStyles:{large:{display:"flex",flexDirection:"column",alignItems:"stretch",flexShrink:"0",position:"relative",marginTop:"30px",textAlign:"center",lineHeight:"normal",height:"auto"}},component:{name:"Text",options:{text:"<p>Enter some text...</p>"}}}]}],onChange:w(e=>{function n(){t.forEach(o=>{o.delete("width")})}const t=e.get("columns");Array.isArray(t)&&!!t.find(a=>a.get("width"))&&(!!t.find(s=>!s.get("width"))||t.reduce((l,c)=>l+c.get("width"),0)!==100)&&n()})},{name:"space",type:"number",defaultValue:20,helperText:"Size of gap between columns",advanced:!0},{name:"stackColumnsAt",type:"string",defaultValue:"tablet",helperText:"Convert horizontal columns to vertical at what device size",enum:["tablet","mobile","never"],advanced:!0},{name:"reverseColumnsWhenStacked",type:"boolean",defaultValue:!1,helperText:"When stacking columns for mobile devices, reverse the ordering",advanced:!0}]},ot={name:"Fragment",static:!0,hidden:!0,builtIn:!0,canHaveChildren:!0,noWrap:!0},rt={name:"Image",static:!0,builtIn:!0,image:"https://firebasestorage.googleapis.com/v0/b/builder-3b0a2.appspot.com/o/images%2Fbaseline-insert_photo-24px.svg?alt=media&token=4e5d0ef4-f5e8-4e57-b3a9-38d63a9b9dc4",defaultStyles:{position:"relative",minHeight:"20px",minWidth:"20px",overflow:"hidden"},canHaveChildren:!0,inputs:[{name:"image",type:"file",bubble:!0,allowedFileTypes:["jpeg","jpg","png","svg"],required:!0,defaultValue:"https://cdn.builder.io/api/v1/image/assets%2Fpwgjf0RoYWbdnJSbpBAjXNRMe9F2%2Ffb27a7c790324294af8be1c35fe30f4d",onChange:w(e=>{e.delete("srcset"),e.delete("noWebp");function t(i,l=6e4){return new Promise((c,d)=>{const u=document.createElement("img");let m=!1;u.onload=()=>{m=!0,c(u)},u.addEventListener("error",g=>{console.warn("Image load failed",g.error),d(g.error)}),u.src=i,setTimeout(()=>{m||d(new Error("Image load timed out"))},l)})}function o(i){return Math.round(i*1e3)/1e3}const a=e.get("image"),s=e.get("aspectRatio");if(fetch(a).then(i=>i.blob()).then(i=>{i.type.includes("svg")&&e.set("noWebp",!0)}),a&&(!s||s===.7041))return t(a).then(i=>{const l=e.get("aspectRatio");e.get("image")===a&&(!l||l===.7041)&&i.width&&i.height&&(e.set("aspectRatio",o(i.height/i.width)),e.set("height",i.height),e.set("width",i.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}]},st={name:"Core:Section",static:!0,builtIn:!0,image:"https://cdn.builder.io/api/v1/image/assets%2FIsxPKMo2gPRRKeakUztj1D6uqed2%2F682efef23ace49afac61748dd305c70a",inputs:[{name:"maxWidth",type:"number",defaultValue:1200},{name:"lazyLoad",type:"boolean",defaultValue:!1,advanced:!0,description:"Only render this section when in view"}],defaultStyles:{paddingLeft:"20px",paddingRight:"20px",paddingTop:"50px",paddingBottom:"50px",marginTop:"0px",width:"100vw",marginLeft:"calc(50% - 50vw)"},canHaveChildren:!0,defaultChildren:[{"@type":"@builder.io/sdk:Element",responsiveStyles:{large:{textAlign:"center"}},component:{name:"Text",options:{text:"<p><b>I am a section! My content keeps from getting too wide, so that it's easy to read even on big screens.</b></p><p>Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur</p>"}}}]},at={name:"Symbol",noWrap:!0,static:!0,builtIn:!0,inputs:[{name:"symbol",type:"uiSymbol"},{name:"dataOnly",helperText:"Make this a data symbol that doesn't display any UI",type:"boolean",defaultValue:!1,advanced:!0,hideFromUI:!0},{name:"inheritState",helperText:"Inherit the parent component state and data",type:"boolean",defaultValue:!1,advanced:!0},{name:"renderToLiquid",helperText:"Render this symbols contents to liquid. Turn off to fetch with javascript and use custom targeting",type:"boolean",defaultValue:!1,advanced:!0,hideFromUI:!0},{name:"useChildren",hideFromUI:!0,type:"boolean"}]},it={name:"Text",static:!0,builtIn:!0,image:"https://firebasestorage.googleapis.com/v0/b/builder-3b0a2.appspot.com/o/images%2Fbaseline-text_fields-24px%20(1).svg?alt=media&token=12177b73-0ee3-42ca-98c6-0dd003de1929",inputs:[{name:"text",type:"html",required:!0,autoFocus:!0,bubble:!0,defaultValue:"Enter some text..."}],defaultStyles:{lineHeight:"normal",height:"auto",textAlign:"center"}},ct={name:"Video",canHaveChildren:!0,builtIn:!0,defaultStyles:{minHeight:"20px",minWidth:"20px"},image:"https://firebasestorage.googleapis.com/v0/b/builder-3b0a2.appspot.com/o/images%2Fbaseline-videocam-24px%20(1).svg?alt=media&token=49a84e4a-b20e-4977-a650-047f986874bb",inputs:[{name:"video",type:"file",allowedFileTypes:["mp4"],bubble:!0,defaultValue:"https://firebasestorage.googleapis.com/v0/b/builder-3b0a2.appspot.com/o/assets%2FKQlEmWDxA0coC3PK6UvkrjwkIGI2%2F28cb070609f546cdbe5efa20e931aa4b?alt=media&token=912e9551-7a7c-4dfb-86b6-3da1537d1a7f",required:!0},{name:"posterImage",type:"file",allowedFileTypes:["jpeg","png"],helperText:"Image to show before the video plays"},{name:"autoPlay",type:"boolean",defaultValue:!0},{name:"controls",type:"boolean",defaultValue:!1},{name:"muted",type:"boolean",defaultValue:!0},{name:"loop",type:"boolean",defaultValue:!0},{name:"playsInline",type:"boolean",defaultValue:!0},{name:"fit",type:"text",defaultValue:"cover",enum:["contain","cover","fill","auto"]},{name:"fitContent",type:"boolean",helperText:"When child blocks are provided, fit to them instead of using the aspect ratio",defaultValue:!0,advanced:!0},{name:"position",type:"text",defaultValue:"center",enum:["center","top","left","right","bottom","top left","top right","bottom left","bottom right"]},{name:"height",type:"number",advanced:!0},{name:"width",type:"number",advanced:!0},{name:"aspectRatio",type:"number",advanced:!0,defaultValue:.7004048582995948},{name:"lazyLoad",type:"boolean",helperText:'Load this video "lazily" - as in only when a user scrolls near the video. Recommended for optmized performance and bandwidth consumption',defaultValue:!0,advanced:!0}]},lt={name:"Embed",static:!0,builtIn:!0,inputs:[{name:"url",type:"url",required:!0,defaultValue:"",helperText:"e.g. enter a youtube url, google map, etc",onChange:w(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}]},dt=["text/javascript","application/javascript","application/ecmascript"],ut=e=>dt.includes(e.type),mt={name:"builder-embed",props:["content"],data:()=>({scriptsInserted:[],scriptsRun:[],ranInitFn:!1}),watch:{onUpdateHook0(){this.$refs.elem&&!this.ranInitFn&&(this.ranInitFn=!0,this.findAndRunScripts())}},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(ut(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)}}}}},pt=["innerHTML"];function ht(e,n,t,o,a,s){return r.openBlock(),r.createElementBlock("div",{class:"builder-embed",ref:"elem",innerHTML:t.content},null,8,pt)}const ft=p(mt,[["render",ht]]);function gt(){return h()&&window.self!==window.top}function f(){return gt()&&window.location.search.indexOf("builder.frameEditing=")!==-1}const bt={name:"builder-img-component",props:["backgroundSize","backgroundPosition","imgSrc","altText","image","attributes"],data:()=>({isEditing:f})},yt=["alt","src"];function vt(e,n,t,o,a,s){return r.openBlock(),r.createElementBlock("img",r.mergeProps(t.attributes,{style:{objectFit:t.backgroundSize||"cover",objectPosition:t.backgroundPosition||"center"},key:e.isEditing()&&t.imgSrc||"default-key",alt:t.altText,src:t.imgSrc||t.image}),null,16,yt)}const kt=p(bt,[["render",vt]]),xt={name:"Raw:Img",hideFromInsertMenu:!0,builtIn:!0,image:"https://firebasestorage.googleapis.com/v0/b/builder-3b0a2.appspot.com/o/images%2Fbaseline-insert_photo-24px.svg?alt=media&token=4e5d0ef4-f5e8-4e57-b3a9-38d63a9b9dc4",inputs:[{name:"image",bubble:!0,type:"file",allowedFileTypes:["jpeg","jpg","png","svg"],required:!0}],noWrap:!0,static:!0},Ct={name:"builder-custom-code",props:["replaceNodes","code"],data:()=>({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}}},_t=["innerHTML"];function St(e,n,t,o,a,s){return r.openBlock(),r.createElementBlock("div",{ref:"elem",class:r.normalizeClass(s._classStringToObject("builder-custom-code"+(t.replaceNodes?" replace-nodes":""))),innerHTML:t.code},null,10,_t)}const wt=p(Ct,[["render",St]]),It={name:"Custom Code",static:!0,builtIn:!0,requiredPermissions:["editCode"],inputs:[{name:"code",type:"html",required:!0,defaultValue:"<p>Hello there, I am custom HTML code!</p>",code:!0},{name:"replaceNodes",type:"boolean",helperText:"Preserve server rendered dom nodes",advanced:!0},{name:"scriptsClientOnly",type:"boolean",defaultValue:!1,helperText:"Only print and run scripts on the client. Important when scripts influence DOM that could be replaced when client loads",advanced:!0}]},Tt=()=>[{component:U,...nt},{component:O,...rt},{component:kt,...xt},{component:$,...it},{component:N,...ct},{component:J,...at},{component:Y,...tt},{component:X,...st},{component:Q,...ot},{component:ft,...lt},{component:wt,...It}];function x({code:e,context:n,state:t,event:o}){if(e===""){console.warn("Skipping evaluation of empty code block.");return}const a={isEditing:f(),isBrowser:h(),isServer:!h()},i=!(e.includes(";")||e.includes(" return ")||e.trim().startsWith("return "))?`return (${e});`:e;try{return new Function("builder","Builder","state","context","event",i)(a,a,t,n,o)}catch(l){console.warn(`Builder custom code error:
|
|
2
|
+
While Evaluating:
|
|
3
|
+
`,i,`
|
|
4
|
+
`,l.message||l)}}function Z(){return!h()||f()?!1:Boolean(location.search.indexOf("builder.preview=")!==-1)}const I=[];function Rt(e,n){return I.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 ee=({component:e,...n})=>({type:"builder.registerComponent",data:Ft(n)}),te=e=>JSON.parse(JSON.stringify(e)),Et=e=>typeof e=="function"?Bt(e):te(e),Bt=e=>{const n=e.toString().trim();return`return (${!n.startsWith("function")&&!n.startsWith("(")?"function ":""}${n}).apply(this, arguments)`},Ft=({inputs:e,...n})=>({...te(n),inputs:e==null?void 0:e.map(t=>Object.entries(t).reduce((o,[a,s])=>({...o,[a]:Et(s)}),{}))});function jt(){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 ne(){return jt().replace(/-/g,"")}const oe="builderSessionId",Vt=async({canTrack:e})=>{if(!e)return;const n=await H({name:oe,canTrack:e});if(b(n))return n;{const t=Pt();At({id:t,canTrack:e})}},Pt=()=>ne(),At=({id:e,canTrack:n})=>q({name:oe,value:e,canTrack:n}),re=()=>h()&&typeof localStorage<"u"?localStorage:void 0,Ut=({key:e,canTrack:n})=>{var t;try{return n?(t=re())==null?void 0:t.getItem(e):void 0}catch(o){console.debug("[LocalStorage] GET error: ",o)}},Ot=({key:e,canTrack:n,value:t})=>{var o;try{n&&((o=re())==null||o.setItem(e,t))}catch(a){console.debug("[LocalStorage] SET error: ",a)}},se="builderVisitorId",$t=({canTrack:e})=>{if(!e)return;const n=Ut({key:se,canTrack:e});if(b(n))return n;{const t=Nt();Wt({id:t,canTrack:e})}},Nt=()=>ne(),Wt=({id:e,canTrack:n})=>Ot({key:se,value:e,canTrack:n}),Lt=async({canTrack:e})=>{if(!e)return{visitorId:void 0,sessionId:void 0};const n=await Vt({canTrack:e}),t=$t({canTrack:e});return{sessionId:n,visitorId:t}},Mt=async({type:e,canTrack:n,orgId:t,contentId:o,...a})=>({type:e,data:{...a,...await Lt({canTrack:n}),ownerId:t,contentId:o}});async function V(e){if(!!e.canTrack&&!f()&&!!(h()||y==="reactNative"))return fetch("https://builder.io/api/v1/track",{method:"POST",body:JSON.stringify({events:[await Mt(e)]}),headers:{"content-type":"application/json"},mode:"cors"}).catch(n=>{console.error("Failed to track: ",n)})}const zt=()=>Promise.resolve().then(()=>ce).then(e=>e.default).catch(e=>{throw console.error("Error while attempting to dynamically import component RenderBlocks at ../render-blocks.vue",e),e}),Ht=()=>Promise.resolve().then(()=>require("./render-styles.22ddc0bf.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}),qt={name:"render-content",components:{"render-content-styles":r.defineAsyncComponent(Ht),"render-blocks":r.defineAsyncComponent(zt)},props:["content","data","canTrack","context","customComponents","model","apiKey"],data:()=>({forceReRenderCount:0,overrideContent:null,update:0,overrideState:{},markMutable:C}),provide(){const e=this;return{BuilderContext:{get content(){return e.useContent},get state(){return e.contentState},get context(){return e.contextContext},get apiKey(){return e.apiKey},get registeredComponents(){return e.allRegisteredComponents}}}},mounted(){var e;if(h()){if(f()&&(this.forceReRenderCount=this.forceReRenderCount+1,ue(),me(),Object.values(this.allRegisteredComponents).forEach(n=>{var o;const t=ee(n);(o=window.parent)==null||o.postMessage(t,"*")}),window.addEventListener("message",this.processMessage),window.addEventListener("builder:component:stateChangeListenerActivated",this.emitStateUpdate)),this.useContent&&V({type:"impression",canTrack:this.canTrackToUse,contentId:(e=this.useContent)==null?void 0:e.id,orgId:this.apiKey}),Z()){const n=new URL(location.href).searchParams;if(this.model&&n.get("builder.preview")===this.model){const t=n.get("apiKey")||n.get("builder.space");t&&S({model:this.model,apiKey:t}).then(o=>{o&&(this.overrideContent=o)})}}this.evaluateJsCode(),this.runHttpRequests(),this.emitStateUpdate()}},watch:{onUpdateHook0(){this.evaluateJsCode()},onUpdateHook1(){this.runHttpRequests()},onUpdateHook2(){this.emitStateUpdate()}},unmounted(){h()&&(window.removeEventListener("message",this.processMessage),window.removeEventListener("builder:component:stateChangeListenerActivated",this.emitStateUpdate))},computed:{useContent(){var n,t;return!this.content&&!this.overrideContent?void 0:{...this.content,...this.overrideContent,data:{...(n=this.content)==null?void 0:n.data,...this.data,...(t=this.overrideContent)==null?void 0:t.data}}},canTrackToUse(){return this.canTrack||!0},contentState(){var e,n;return{...(n=(e=this.content)==null?void 0:e.data)==null?void 0:n.state,...this.data,...this.overrideState}},contextContext(){return this.context||{}},allRegisteredComponents(){return[...Tt(),...I,...this.customComponents||[]].reduce((t,o)=>({...t,[o.name]:o}),{})},httpReqsData(){return{}},shouldRenderContentStyles(){var e,n,t,o,a;return Boolean((((n=(e=this.useContent)==null?void 0:e.data)==null?void 0:n.cssCode)||((a=(o=(t=this.useContent)==null?void 0:t.data)==null?void 0:o.customFonts)==null?void 0:a.length))&&y!=="reactNative")},onUpdateHook0(){var e,n;return{0:(n=(e=this.useContent)==null?void 0:e.data)==null?void 0:n.jsCode}},onUpdateHook1(){var e,n;return{0:(n=(e=this.useContent)==null?void 0:e.data)==null?void 0:n.httpRequests}},onUpdateHook2(){return{0:this.contentState}}},methods:{processMessage(e){const{data:n}=e;if(n)switch(n.type){case"builder.contentUpdate":{const t=n.data,o=t.key||t.alias||t.entry||t.modelName,a=t.data;o===this.model&&(this.overrideContent=a,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&&x({code:e,context:this.contextContext,state:this.contentState})},onClick(e){var n;this.useContent&&V({type:"click",canTrack:this.canTrackToUse,contentId:(n=this.useContent)==null?void 0:n.id,orgId:this.apiKey})},evalExpression(e){return e.replace(/{{([^}]+)}}/g,(n,t)=>x({code:t,context:this.contextContext,state:this.contentState}))},handleRequest({url:e,key:n}){z().then(t=>t(e)).then(t=>t.json()).then(t=>{const o={...this.overrideState,[n]:t};this.overrideState=o}).catch(t=>{console.log("error fetching dynamic data",e,t)})},runHttpRequests(){var n,t,o;const e=(o=(t=(n=this.useContent)==null?void 0:n.data)==null?void 0:t.httpRequests)!=null?o:{};Object.entries(e).forEach(([a,s])=>{if(s&&(!this.httpReqsData[a]||f())){const i=this.evalExpression(s);this.handleRequest({url:i,key:a})}})},emitStateUpdate(){f()&&window.dispatchEvent(new CustomEvent("builder:component:stateChange",{detail:{state:this.contentState,ref:{name:this.model}}}))}}},Dt=["builder-content-id"];function Kt(e,n,t,o,a,s){var c,d,u,m,g,T,R;const i=r.resolveComponent("render-content-styles"),l=r.resolveComponent("render-blocks");return s.useContent?(r.openBlock(),r.createElementBlock("div",{key:0,ref:"elementRef",onClick:n[0]||(n[0]=le=>s.onClick(le)),"builder-content-id":(c=s.useContent)==null?void 0:c.id},[s.shouldRenderContentStyles?(r.openBlock(),r.createBlock(i,{key:0,cssCode:(u=(d=s.useContent)==null?void 0:d.data)==null?void 0:u.cssCode,customFonts:(g=(m=s.useContent)==null?void 0:m.data)==null?void 0:g.customFonts},null,8,["cssCode","customFonts"])):r.createCommentVNode("",!0),(r.openBlock(),r.createBlock(l,{blocks:e.markMutable((R=(T=s.useContent)==null?void 0:T.data)==null?void 0:R.blocks),key:e.forceReRenderCount},null,8,["blocks"]))],8,Dt)):r.createCommentVNode("",!0)}const ae=p(qt,[["render",Kt]]),Gt=Object.freeze(Object.defineProperty({__proto__:null,default:ae},Symbol.toStringTag,{value:"Module"})),Jt=()=>Promise.resolve().then(()=>require("./block-styles.8cb7f734.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}),Yt=()=>Promise.resolve().then(()=>require("./render-block.23c16bfb.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}),Xt={name:"render-blocks",components:{"render-block":r.defineAsyncComponent(Yt),"block-styles":r.defineAsyncComponent(Jt)},props:["blocks","parent","path"],inject:{builderContext:"BuilderContext"},computed:{className(){var e;return"builder-blocks"+((e=this.blocks)!=null&&e.length?"":" no-blocks")}},methods:{onClick(){var e,n;f()&&!((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;f()&&!((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 Qt=["builder-path","builder-parent-id","dataSet"];function Zt(e,n,t,o,a,s){const i=r.resolveComponent("render-block"),l=r.resolveComponent("block-styles");return r.openBlock(),r.createElementBlock("div",{class:r.normalizeClass(s._classStringToObject(s.className+" div-3q96myty4lk")),"builder-path":t.path,"builder-parent-id":t.parent,dataSet:{class:s.className},onClick:n[0]||(n[0]=c=>s.onClick()),onMouseenter:n[1]||(n[1]=c=>s.onMouseEnter())},[t.blocks?(r.openBlock(!0),r.createElementBlock(r.Fragment,{key:0},r.renderList(t.blocks,(c,d)=>(r.openBlock(),r.createBlock(i,{key:"render-block-"+c.id,block:c,context:s.builderContext},null,8,["block","context"]))),128)):r.createCommentVNode("",!0),t.blocks?(r.openBlock(!0),r.createElementBlock(r.Fragment,{key:1},r.renderList(t.blocks,(c,d)=>(r.openBlock(),r.createBlock(l,{key:"block-style-"+c.id,block:c,context:s.builderContext},null,8,["block","context"]))),128)):r.createCommentVNode("",!0)],42,Qt)}const ie=p(Xt,[["render",Zt],["__scopeId","data-v-53f55c54"]]),ce=Object.freeze(Object.defineProperty({__proto__:null,default:ie},Symbol.toStringTag,{value:"Module"})),P={};function en(e){if(h()){Object.assign(P,e);const n={type:"builder.settingsChange",data:P};parent.postMessage(n,"*")}}exports.Button=Y;exports.Columns=U;exports.Fragment=Q;exports.Image=O;exports.Section=X;exports.Symbol=J;exports.TARGET=y;exports.Text=$;exports.Video=N;exports._export_sfc=p;exports.components=I;exports.convertSearchParamsToQueryObject=W;exports.createRegisterComponentMessage=ee;exports.evaluate=x;exports.generateContentUrl=K;exports.getAllContent=G;exports.getBuilderSearchParams=L;exports.getBuilderSearchParamsFromWindow=M;exports.getContent=S;exports.isEditing=f;exports.isPreviewing=Z;exports.markPropsMutable=pe;exports.normalizeSearchParams=_;exports.register=A;exports.registerComponent=Rt;exports.renderBlocks=ie;exports.renderContent=ae;exports.setEditorSettings=en;
|