@builder.io/sdk-vue 1.0.14 → 1.0.15
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/lib/browser/{block-styles-FdmS__fC.cjs → block-styles-JdWTcagf.cjs} +1 -1
- package/lib/browser/{block-styles-z7sGkBTw.js → block-styles-T4pQN2_K.js} +1 -1
- package/lib/browser/{block-wrapper-R9MDSksK.cjs → block-wrapper-BS6H_HBW.cjs} +1 -1
- package/lib/browser/{block-wrapper-OUFH1h7n.js → block-wrapper-kApw6sWf.js} +3 -3
- package/lib/browser/{component-ref-cnl1wJ7V.cjs → component-ref-J4lTvF63.cjs} +1 -1
- package/lib/browser/{component-ref-LhEgM7QI.js → component-ref-T_Bt-NXH.js} +2 -2
- package/lib/browser/constants/sdk-version.d.ts +1 -1
- package/lib/browser/{get-block-properties-8me_ULV1.js → get-block-properties-7bc31nNM.js} +1 -1
- package/lib/browser/{get-block-properties-MB_CAVzA.cjs → get-block-properties-WeCTcMri.cjs} +1 -1
- package/lib/browser/{index-lxlrEO9W.js → index-4mbHsvBx.js} +6 -6
- package/lib/browser/{index-ad1QjFMU.cjs → index-Knuxd6qK.cjs} +4 -4
- package/lib/browser/index.cjs +1 -1
- package/lib/browser/index.js +1 -1
- package/lib/browser/{repeated-block-LUwQWzPp.cjs → repeated-block--q5yqvlb.cjs} +1 -1
- package/lib/browser/{repeated-block-5r2RNm5K.js → repeated-block-yWT-i8YN.js} +2 -2
- package/lib/edge/{block-styles-Xju5355Z.cjs → block-styles-FE8XgE6h.cjs} +1 -1
- package/lib/{node/block-styles-XgGq-J65.js → edge/block-styles-LQO3VHOr.js} +1 -1
- package/lib/{node/block-wrapper-sv0gfrKF.cjs → edge/block-wrapper-0vi32HUX.cjs} +1 -1
- package/lib/edge/{block-wrapper-y2793ZN5.js → block-wrapper-LGqW1WHl.js} +3 -3
- package/lib/edge/{component-ref-znPa_yPg.js → component-ref-Wpu3G6M3.js} +2 -2
- package/lib/{node/component-ref-rsCbGdca.cjs → edge/component-ref-dIn3f0RM.cjs} +1 -1
- package/lib/edge/constants/sdk-version.d.ts +1 -1
- package/lib/edge/{get-block-properties-wnBoh6NI.cjs → get-block-properties-KmHAHG48.cjs} +1 -1
- package/lib/{node/get-block-properties-jJY9Yegb.js → edge/get-block-properties-nQPKKZHn.js} +1 -1
- package/lib/edge/{index-17AnhyKn.cjs → index-8bjS2-PR.cjs} +10 -10
- package/lib/edge/{index-xBtUJWIQ.js → index-mgx2v7lM.js} +6 -6
- package/lib/edge/index.cjs +1 -1
- package/lib/edge/index.js +1 -1
- package/lib/edge/{repeated-block-7K33zRnk.cjs → repeated-block-VTXsyh8q.cjs} +1 -1
- package/lib/edge/{repeated-block-e19DbJ9g.js → repeated-block-zDw-Utg9.js} +2 -2
- package/lib/node/{block-styles-YqghwSbU.cjs → block-styles-f5d_sXFZ.cjs} +1 -1
- package/lib/{edge/block-styles-B3awvzyT.js → node/block-styles-rh7tEoHf.js} +1 -1
- package/lib/node/{block-wrapper-I1JmYM5e.js → block-wrapper-MpN3sYhf.js} +3 -3
- package/lib/{edge/block-wrapper-xCm3uEEu.cjs → node/block-wrapper-cEkh_JGR.cjs} +1 -1
- package/lib/{edge/component-ref-wcbtAeIh.cjs → node/component-ref-4MMqYT0r.cjs} +1 -1
- package/lib/node/{component-ref--eSEr7Gt.js → component-ref-GxIWocaf.js} +2 -2
- package/lib/node/constants/sdk-version.d.ts +1 -1
- package/lib/node/{get-block-properties-FOFsIVzD.cjs → get-block-properties-B5QLQJm5.cjs} +1 -1
- package/lib/{edge/get-block-properties-abyvkMNc.js → node/get-block-properties-T27zvZZR.js} +1 -1
- package/lib/node/{index-5GO07feh.cjs → index-Oh0XoTAq.cjs} +3 -3
- package/lib/node/{index-IFSblmpH.js → index-tdTNLVlt.js} +6 -6
- package/lib/node/index.cjs +1 -1
- package/lib/node/index.js +1 -1
- package/lib/node/{repeated-block-buhSqMYu.cjs → repeated-block-8a9KznE-.cjs} +1 -1
- package/lib/node/{repeated-block-lNY93wED.js → repeated-block-XpohtcNq.js} +2 -2
- package/package.json +1 -1
- package/lib/browser/functions/get-content/types.d.ts +0 -131
- package/lib/edge/functions/get-content/types.d.ts +0 -131
- package/lib/node/functions/get-content/types.d.ts +0 -131
|
@@ -3063,22 +3063,22 @@ const Ti = ({
|
|
|
3063
3063
|
},
|
|
3064
3064
|
block: r
|
|
3065
3065
|
}));
|
|
3066
|
-
}, Ri = () => import("./block-styles-
|
|
3066
|
+
}, Ri = () => import("./block-styles-LQO3VHOr.js").then((e) => e.default).catch((e) => {
|
|
3067
3067
|
throw console.error(
|
|
3068
3068
|
"Error while attempting to dynamically import component BlockStyles at ./components/block-styles.vue",
|
|
3069
3069
|
e
|
|
3070
3070
|
), e;
|
|
3071
|
-
}), Ai = () => import("./block-wrapper-
|
|
3071
|
+
}), Ai = () => import("./block-wrapper-LGqW1WHl.js").then((e) => e.default).catch((e) => {
|
|
3072
3072
|
throw console.error(
|
|
3073
3073
|
"Error while attempting to dynamically import component BlockWrapper at ./components/block-wrapper.vue",
|
|
3074
3074
|
e
|
|
3075
3075
|
), e;
|
|
3076
|
-
}), $i = () => import("./component-ref-
|
|
3076
|
+
}), $i = () => import("./component-ref-Wpu3G6M3.js").then((e) => e.default).catch((e) => {
|
|
3077
3077
|
throw console.error(
|
|
3078
3078
|
"Error while attempting to dynamically import component ComponentRef at ./components/component-ref/component-ref.vue",
|
|
3079
3079
|
e
|
|
3080
3080
|
), e;
|
|
3081
|
-
}), Pi = () => import("./repeated-block-
|
|
3081
|
+
}), Pi = () => import("./repeated-block-zDw-Utg9.js").then((e) => e.default).catch((e) => {
|
|
3082
3082
|
throw console.error(
|
|
3083
3083
|
"Error while attempting to dynamically import component RepeatedBlock at ./components/repeated-block.vue",
|
|
3084
3084
|
e
|
|
@@ -5567,7 +5567,7 @@ async function Vn(e) {
|
|
|
5567
5567
|
}
|
|
5568
5568
|
const La = async (e) => {
|
|
5569
5569
|
const t = Bn(e);
|
|
5570
|
-
return await (await ro(t.href)).json();
|
|
5570
|
+
return await (await (e.fetch ?? ro)(t.href, e.fetchOptions)).json();
|
|
5571
5571
|
}, Ha = async (e, t, n = Bn(e)) => {
|
|
5572
5572
|
const r = ht(e.canTrack);
|
|
5573
5573
|
if (n.search.includes("preview="), !r || !(X() || de === "reactNative"))
|
|
@@ -5792,7 +5792,7 @@ function uo(e, t) {
|
|
|
5792
5792
|
const n = new URL(t.origin), r = n.hostname;
|
|
5793
5793
|
return (e || sl).findIndex((o) => o.startsWith("*.") ? r.endsWith(o.slice(1)) : o === r) > -1;
|
|
5794
5794
|
}
|
|
5795
|
-
const al = "1.0.
|
|
5795
|
+
const al = "1.0.15", Tr = {};
|
|
5796
5796
|
function ll(e, t) {
|
|
5797
5797
|
let n = Tr[e];
|
|
5798
5798
|
if (n || (n = Tr[e] = []), n.push(t), X()) {
|
package/lib/edge/index.cjs
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("./index-
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("./index-8bjS2-PR.cjs");exports.Blocks=e.Blocks;exports.Button=e.Button;exports.Columns=e.Columns;exports.Content=e.ContentVariants;exports.Fragment=e.Fragment;exports.Image=e.Image;exports.Section=e.Section;exports.Symbol=e.Symbol;exports.Text=e.Text;exports.Video=e.Video;exports._processContentResult=e._processContentResult;exports.createRegisterComponentMessage=e.createRegisterComponentMessage;exports.fetchBuilderProps=e.fetchBuilderProps;exports.fetchEntries=e.fetchEntries;exports.fetchOneEntry=e.fetchOneEntry;exports.getBuilderSearchParams=e.getBuilderSearchParams;exports.isEditing=e.isEditing;exports.isPreviewing=e.isPreviewing;exports.register=e.register;exports.setEditorSettings=e.setEditorSettings;exports.subscribeToEditor=e.subscribeToEditor;exports.track=e.track;
|
package/lib/edge/index.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { n as a, k as t, C as r, o, F as i, I as n, S as c, l as g, m, V as l, z as u, r as d, y as p, A as C, D as E, u as S, p as f, q as h, s as B, t as b, x as k, v as x } from "./index-
|
|
1
|
+
import { n as a, k as t, C as r, o, F as i, I as n, S as c, l as g, m, V as l, z as u, r as d, y as p, A as C, D as E, u as S, p as f, q as h, s as B, t as b, x as k, v as x } from "./index-mgx2v7lM.js";
|
|
2
2
|
export {
|
|
3
3
|
a as Blocks,
|
|
4
4
|
t as Button,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const o=require("vue"),t=require("./index-
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const o=require("vue"),t=require("./index-8bjS2-PR.cjs"),r=()=>Promise.resolve().then(()=>require("./index-8bjS2-PR.cjs")).then(e=>e.block).then(e=>e.default).catch(e=>{throw console.error("Error while attempting to dynamically import component Block at ../block.vue",e),e}),c=o.defineComponent({name:"repeated-block",components:{Block:o.defineAsyncComponent(r)},props:["repeatContext","block","registeredComponents","linkComponent"],data(){return{store:this.repeatContext}},provide(){const e=this;return{[t.BuilderContext.key]:e.store}}});function s(e,i,p,a,m,d){const n=o.resolveComponent("block");return o.openBlock(),o.createBlock(n,{block:e.block,context:e.store,registeredComponents:e.registeredComponents,linkComponent:e.linkComponent},null,8,["block","context","registeredComponents","linkComponent"])}const l=t._export_sfc(c,[["render",s]]);exports.default=l;
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { defineComponent as t, defineAsyncComponent as n, resolveComponent as r, openBlock as c, createBlock as p } from "vue";
|
|
2
|
-
import { j as s, e as l } from "./index-
|
|
3
|
-
const i = () => import("./index-
|
|
2
|
+
import { j as s, e as l } from "./index-mgx2v7lM.js";
|
|
3
|
+
const i = () => import("./index-mgx2v7lM.js").then((e) => e.G).then((e) => e.default).catch((e) => {
|
|
4
4
|
throw console.error(
|
|
5
5
|
"Error while attempting to dynamically import component Block at ../block.vue",
|
|
6
6
|
e
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const o=require("vue"),t=require("./index-
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const o=require("vue"),t=require("./index-Oh0XoTAq.cjs"),h=o.defineComponent({name:"block-styles",components:{InlinedStyles:t._sfc_main},props:["block","context"],data(){return{TARGET:t.TARGET}},computed:{canShowBlock(){const e=t.getProcessedBlock({block:this.block,localState:this.context.localState,rootState:this.context.rootState,rootSetState:this.context.rootSetState,context:this.context.context,shouldEvaluateBindings:!0});return t.checkIsDefined(e.hide)?!e.hide:t.checkIsDefined(e.show)?e.show:!0},css(){var d;const e=t.getProcessedBlock({block:this.block,localState:this.context.localState,rootState:this.context.rootState,rootSetState:this.context.rootSetState,context:this.context.context,shouldEvaluateBindings:!0}),s=e.responsiveStyles,n=this.context.content,r=t.getSizesForBreakpoints(((d=n==null?void 0:n.meta)==null?void 0:d.breakpoints)||{}),a=s==null?void 0:s.large,i=s==null?void 0:s.medium,c=s==null?void 0:s.small,l=e.id;if(!l)return"";const u=a?t.createCssClass({className:l,styles:a}):"",S=i?t.createCssClass({className:l,styles:i,mediaQuery:t.getMaxWidthQueryForSize("medium",r)}):"",m=c?t.createCssClass({className:l,styles:c,mediaQuery:t.getMaxWidthQueryForSize("small",r)}):"";return[u,S,m].join(" ")}}});function k(e,s,n,r,a,i){const c=o.resolveComponent("inlined-styles");return e.TARGET!=="reactNative"&&e.css&&e.canShowBlock?(o.openBlock(),o.createBlock(c,{key:0,styles:e.css},null,8,["styles"])):o.createCommentVNode("",!0)}const p=t._export_sfc(h,[["render",k]]);exports.default=p;
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { defineComponent as k, resolveComponent as y, openBlock as x, createBlock as f, createCommentVNode as B } from "vue";
|
|
2
|
-
import { _, T as b, g as d, c as m, a as g, b as r, d as S, e as C } from "./index-
|
|
2
|
+
import { _, T as b, g as d, c as m, a as g, b as r, d as S, e as C } from "./index-tdTNLVlt.js";
|
|
3
3
|
const v = k({
|
|
4
4
|
name: "block-styles",
|
|
5
5
|
components: { InlinedStyles: _ },
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { defineComponent as o, defineAsyncComponent as r, resolveComponent as n, openBlock as a, createBlock as c, withCtx as i, renderSlot as p } from "vue";
|
|
2
|
-
import { g as s, a as l } from "./get-block-properties-
|
|
3
|
-
import { e as m } from "./index-
|
|
4
|
-
const d = () => import("./index-
|
|
2
|
+
import { g as s, a as l } from "./get-block-properties-T27zvZZR.js";
|
|
3
|
+
import { e as m } from "./index-tdTNLVlt.js";
|
|
4
|
+
const d = () => import("./index-tdTNLVlt.js").then((e) => e.E).then((e) => e.default).catch((e) => {
|
|
5
5
|
throw console.error(
|
|
6
6
|
"Error while attempting to dynamically import component DynamicRenderer at ../../dynamic-renderer/dynamic-renderer.vue",
|
|
7
7
|
e
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const t=require("vue"),o=require("./get-block-properties-
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const t=require("vue"),o=require("./get-block-properties-B5QLQJm5.cjs"),n=require("./index-Oh0XoTAq.cjs"),c=()=>Promise.resolve().then(()=>require("./index-Oh0XoTAq.cjs")).then(e=>e.dynamicRenderer).then(e=>e.default).catch(e=>{throw console.error("Error while attempting to dynamically import component DynamicRenderer at ../../dynamic-renderer/dynamic-renderer.vue",e),e}),a=t.defineComponent({name:"block-wrapper",components:{DynamicRenderer:t.defineAsyncComponent(c)},props:["Wrapper","block","context"],data(){return{getBlockActions:o.getBlockActions,getBlockProperties:o.getBlockProperties}}});function i(e,l,p,d,m,u){const r=t.resolveComponent("dynamic-renderer");return t.openBlock(),t.createBlock(r,{TagName:e.Wrapper,attributes:e.getBlockProperties({block:e.block,context:e.context}),actionAttributes:e.getBlockActions({block:e.block,rootState:e.context.rootState,rootSetState:e.context.rootSetState,localState:e.context.localState,context:e.context.context,stripPrefix:!0})},{default:t.withCtx(()=>[t.renderSlot(e.$slots,"default")]),_:3},8,["TagName","attributes","actionAttributes"])}const s=n._export_sfc(a,[["render",i]]);exports.default=s;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const o=require("vue"),p=require("./index-
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const o=require("vue"),p=require("./index-Oh0XoTAq.cjs"),a=require("./get-block-properties-B5QLQJm5.cjs"),u=o.defineComponent({name:"interactive-element",props:["wrapperProps","includeBlockProps","block","context","Wrapper"],data(){return{getBlockActions:a.getBlockActions,getBlockProperties:a.getBlockProperties}}});function d(e,t,c,l,n,s){return o.openBlock(),o.createBlock(o.resolveDynamicComponent(e.Wrapper),o.mergeProps({attributes:e.includeBlockProps?{...e.getBlockProperties({block:e.block,context:e.context}),...e.getBlockActions({block:e.block,rootState:e.context.rootState,rootSetState:e.context.rootSetState,localState:e.context.localState,context:e.context.context})}:{}},e.wrapperProps),{default:o.withCtx(()=>[o.renderSlot(e.$slots,"default")]),_:3},16,["attributes"])}const k=p._export_sfc(u,[["render",d]]),B=({componentOptions:e,builderBlock:t,context:c,componentRef:l,includeBlockProps:n,isInteractive:s,contextValue:i})=>{const r={...e,...n?{attributes:a.getBlockProperties({block:t,context:i})}:{}};return s?{Wrapper:l,block:t,context:c,wrapperProps:e,includeBlockProps:n}:r},f=o.defineComponent({name:"component-ref",components:{Block:p.Block,InteractiveElement:k},props:["isInteractive","componentRef","componentOptions","builderBlock","context","linkComponent","includeBlockProps","blockChildren","registeredComponents"],data(){return{Wrapper:this.isInteractive?p.wrapComponentRef(k):this.componentRef,getWrapperProps:B}}});function b(e,t,c,l,n,s){const i=o.resolveComponent("block");return e.componentRef?(o.openBlock(),o.createBlock(o.resolveDynamicComponent(e.Wrapper),o.normalizeProps(o.mergeProps({key:0},e.getWrapperProps({componentOptions:e.componentOptions,builderBlock:e.builderBlock,context:e.context,componentRef:e.componentRef,linkComponent:e.linkComponent,includeBlockProps:e.includeBlockProps,isInteractive:e.isInteractive,contextValue:e.context}))),{default:o.withCtx(()=>[(o.openBlock(!0),o.createElementBlock(o.Fragment,null,o.renderList(e.blockChildren,(r,m)=>(o.openBlock(),o.createBlock(i,{key:r.id,block:r,context:e.context,registeredComponents:e.registeredComponents,linkComponent:e.linkComponent},null,8,["block","context","registeredComponents","linkComponent"]))),128))]),_:1},16)):o.createCommentVNode("",!0)}const C=p._export_sfc(f,[["render",b]]);exports.default=C;
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { defineComponent as m, openBlock as r, createBlock as l, resolveDynamicComponent as k, mergeProps as d, withCtx as u, renderSlot as P, resolveComponent as B, normalizeProps as g, createElementBlock as $, Fragment as v, renderList as S, createCommentVNode as W } from "vue";
|
|
2
|
-
import { e as f, B as h, w } from "./index-
|
|
3
|
-
import { g as R, a as b } from "./get-block-properties-
|
|
2
|
+
import { e as f, B as h, w } from "./index-tdTNLVlt.js";
|
|
3
|
+
import { g as R, a as b } from "./get-block-properties-T27zvZZR.js";
|
|
4
4
|
const I = m({
|
|
5
5
|
name: "interactive-element",
|
|
6
6
|
props: ["wrapperProps", "includeBlockProps", "block", "context", "Wrapper"],
|
|
@@ -1 +1 @@
|
|
|
1
|
-
export declare const SDK_VERSION = "1.0.
|
|
1
|
+
export declare const SDK_VERSION = "1.0.15";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";const a=require("./index-
|
|
1
|
+
"use strict";const a=require("./index-Oh0XoTAq.cjs"),c=e=>`v-on:${e.toLowerCase()}`,i=(e,t)=>r=>a.evaluate({code:e,context:t.context,localState:t.localState,rootState:t.rootState,rootSetState:t.rootSetState,event:r,isExpression:!1,enableCache:!0});function l(e){const t={},r=e.block.actions??{};for(const o in r){if(!r.hasOwnProperty(o))continue;const s=r[o];let n=c(o);if(e.stripPrefix)switch(a.TARGET){case"vue":n=n.replace("v-on:","");break;case"svelte":n=n.replace("on:","");break}t[n]=i(s,e)}return t}function u({properties:e}){return e}const f=e=>({href:e.href});function p({block:e,context:t}){var o;const r={...f(e),...e.properties,"builder-id":e.id,style:a.getStyle({block:e,context:t}),[a.getClassPropName()]:[e.id,"builder-block",e.class,(o=e.properties)==null?void 0:o.class].filter(Boolean).join(" ")};return u({properties:r,context:t,block:e})}exports.getBlockActions=l;exports.getBlockProperties=p;
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
"use strict";var T=Object.defineProperty;var E=(e,t,n)=>t in e?T(e,t,{enumerable:!0,configurable:!0,writable:!0,value:n}):e[t]=n;var S=(e,t,n)=>(E(e,typeof t!="symbol"?t+"":t,n),n);const vue=require("vue"),node_module=require("node:module");var _documentCurrentScript=typeof document<"u"?document.currentScript:null;const EMPTY_HTML_ELEMENTS=new Set(["area","base","br","col","embed","hr","img","input","keygen","link","meta","param","source","track","wbr"]),isEmptyElement=e=>typeof e=="string"&&EMPTY_HTML_ELEMENTS.has(e.toLowerCase());function filterAttrs(e={},t,n){const o={};for(const r in e){if(!e[r]||n&&!r.startsWith(t))continue;const s=n?r.replace(t,""):r;o[s]=e[r]}return o}const _sfc_main$p=vue.defineComponent({name:"dynamic-renderer",props:["attributes","actionAttributes","TagName"],data(){return{isEmptyElement}}}),_export_sfc=(e,t)=>{const n=e.__vccOpts||e;for(const[o,r]of t)n[o]=r;return n};function _sfc_render$n(e,t,n,o,r,s){return e.isEmptyElement(e.TagName)?(vue.openBlock(),vue.createBlock(vue.resolveDynamicComponent(e.TagName),vue.mergeProps({key:1},e.attributes,vue.toHandlers(e.actionAttributes)),null,16)):(vue.openBlock(),vue.createElementBlock(vue.Fragment,{key:0},[typeof e.TagName=="string"?(vue.openBlock(),vue.createBlock(vue.resolveDynamicComponent(e.TagName),vue.mergeProps({key:0},e.attributes,vue.toHandlers(e.actionAttributes)),{default:vue.withCtx(()=>[vue.renderSlot(e.$slots,"default")]),_:3},16)):(vue.openBlock(),vue.createBlock(vue.resolveDynamicComponent(e.TagName),vue.mergeProps({key:1},e.attributes,vue.toHandlers(e.actionAttributes)),{default:vue.withCtx(()=>[vue.renderSlot(e.$slots,"default")]),_:3},16))],64))}const DynamicRenderer=_export_sfc(_sfc_main$p,[["render",_sfc_render$n]]),dynamicRenderer=Object.freeze(Object.defineProperty({__proto__:null,default:DynamicRenderer},Symbol.toStringTag,{value:"Module"})),TARGET="vue",getClassPropName=()=>{switch(TARGET){case"react":case"reactNative":case"rsc":return"className";case"svelte":case"vue":case"solid":case"qwik":return"class"}},_sfc_main$o=vue.defineComponent({name:"builder-button",components:{DynamicRenderer},props:["attributes","link","openLinkInNewTab","builderLinkComponent","text"],data(){return{getClassPropName,filterAttrs}}});function _sfc_render$m(e,t,n,o,r,s){const i=vue.resolveComponent("dynamic-renderer");return vue.openBlock(),vue.createBlock(i,{attributes:{...e.filterAttrs(e.attributes,"v-on:",!1),[e.getClassPropName()]:`${e.link?"":"builder-button"} ${e.attributes[e.getClassPropName()]||""}`,...e.link?{href:e.link,target:e.openLinkInNewTab?"_blank":void 0,role:"link"}:{role:"button"}},TagName:e.link?e.builderLinkComponent||"a":"button",actionAttributes:e.filterAttrs(e.attributes,"v-on:",!0)},{default:vue.withCtx(()=>[vue.createTextVNode(vue.toDisplayString(e.text),1)]),_:1},8,["attributes","TagName","actionAttributes"])}const Button=_export_sfc(_sfc_main$o,[["render",_sfc_render$m]]),key$1=Symbol(),BuilderContext={Builder:{content:null,context:{},localState:void 0,rootSetState(){},rootState:{},apiKey:null,apiVersion:void 0,componentInfos:{},inheritedStyles:{},BlocksWrapper:"div",BlocksWrapperProps:{}},key:key$1},key=Symbol(),ComponentsContext={Components:{registeredComponents:{}},key};function getBlockComponentOptions(e){var t;return{...(t=e.component)==null?void 0:t.options,...e.options,builderBlock:e}}const MSG_PREFIX="[Builder.io]: ",logger={log:(...e)=>console.log(MSG_PREFIX,...e),error:(...e)=>console.error(MSG_PREFIX,...e),warn:(...e)=>console.warn(MSG_PREFIX,...e),debug:(...e)=>console.debug(MSG_PREFIX,...e)};function isBrowser(){return typeof window<"u"&&typeof document<"u"}const convertSearchParamsToQueryObject=e=>{const t={};return e.forEach((n,o)=>{t[o]=n}),t},normalizeSearchParams=e=>e instanceof URLSearchParams?convertSearchParamsToQueryObject(e):e,getSearchString=e=>typeof e=="string"?e:e instanceof URLSearchParams?e.toString():new URLSearchParams(e).toString();function isIframe(){return isBrowser()&&window.self!==window.top}function isEditing(e){return isIframe()&&getSearchString(e||window.location.search).indexOf("builder.frameEditing=")!==-1}const getLocation=()=>{if(isBrowser()){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},getUserAgent=()=>typeof navigator=="object"&&navigator.userAgent||"",getUserAttributes=()=>{const e=getUserAgent(),t={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 t.Android()||t.BlackBerry()||t.iOS()||t.Opera()||t.Windows()||TARGET==="reactNative"}},n=e.match(/Tablet|iPad/i),o=getLocation();return{urlPath:o==null?void 0:o.pathname,host:(o==null?void 0:o.host)||(o==null?void 0:o.hostname),device:n?"tablet":t.any()?"mobile":"desktop"}},getFunctionArguments=({builder:e,context:t,event:n,state:o})=>Object.entries({state:o,Builder:e,builder:e,context:t,event:n}),getBuilderGlobals=()=>({isEditing:isEditing(),isBrowser:isBrowser(),isServer:!isBrowser(),getUserAttributes:()=>getUserAttributes()}),parseCode=(e,{isExpression:t=!0})=>t&&!(e.includes(";")||e.includes(" return ")||e.trim().startsWith("return "))?`return (${e});`:e,runInBrowser=({code:e,builder:t,context:n,event:o,localState:r,rootSetState:s,rootState:i})=>{const a=getFunctionArguments({builder:t,context:n,event:o,state:flattenState({rootState:i,localState:r,rootSetState:s})});return new Function(...a.map(([l])=>l),e)(...a.map(([,l])=>l))};function flattenState({rootState:e,localState:t,rootSetState:n}){return new Proxy(e,{get:(o,r)=>{if(t&&r in t)return t[r];const s=o[r];return typeof s=="object"&&s!==null?flattenState({rootState:s,localState:void 0,rootSetState:n?i=>{o[r]=i,n(o)}:void 0}):s},set:(o,r,s)=>{if(t&&r in t)throw new Error("Writing to local state is not allowed as it is read-only.");return o[r]=s,n==null||n(o),!0}})}const fastClone=e=>JSON.parse(JSON.stringify(e)),set=(e,t,n)=>{if(Object(e)!==e)return e;const o=Array.isArray(t)?t:t.toString().match(/[^.[\]]+/g);return o.slice(0,-1).reduce((r,s,i)=>Object(r[s])===r[s]?r[s]:r[s]=Math.abs(Number(o[i+1]))>>0===+o[i+1]?[]:{},e)[o[o.length-1]]=n,e},noop=()=>{};let safeDynamicRequire=noop;try{safeDynamicRequire=node_module.createRequire(typeof document>"u"?require("url").pathToFileURL(__filename).href:_documentCurrentScript&&_documentCurrentScript.src||new URL("index-
|
|
1
|
+
"use strict";var T=Object.defineProperty;var E=(e,t,n)=>t in e?T(e,t,{enumerable:!0,configurable:!0,writable:!0,value:n}):e[t]=n;var S=(e,t,n)=>(E(e,typeof t!="symbol"?t+"":t,n),n);const vue=require("vue"),node_module=require("node:module");var _documentCurrentScript=typeof document<"u"?document.currentScript:null;const EMPTY_HTML_ELEMENTS=new Set(["area","base","br","col","embed","hr","img","input","keygen","link","meta","param","source","track","wbr"]),isEmptyElement=e=>typeof e=="string"&&EMPTY_HTML_ELEMENTS.has(e.toLowerCase());function filterAttrs(e={},t,n){const o={};for(const r in e){if(!e[r]||n&&!r.startsWith(t))continue;const s=n?r.replace(t,""):r;o[s]=e[r]}return o}const _sfc_main$p=vue.defineComponent({name:"dynamic-renderer",props:["attributes","actionAttributes","TagName"],data(){return{isEmptyElement}}}),_export_sfc=(e,t)=>{const n=e.__vccOpts||e;for(const[o,r]of t)n[o]=r;return n};function _sfc_render$n(e,t,n,o,r,s){return e.isEmptyElement(e.TagName)?(vue.openBlock(),vue.createBlock(vue.resolveDynamicComponent(e.TagName),vue.mergeProps({key:1},e.attributes,vue.toHandlers(e.actionAttributes)),null,16)):(vue.openBlock(),vue.createElementBlock(vue.Fragment,{key:0},[typeof e.TagName=="string"?(vue.openBlock(),vue.createBlock(vue.resolveDynamicComponent(e.TagName),vue.mergeProps({key:0},e.attributes,vue.toHandlers(e.actionAttributes)),{default:vue.withCtx(()=>[vue.renderSlot(e.$slots,"default")]),_:3},16)):(vue.openBlock(),vue.createBlock(vue.resolveDynamicComponent(e.TagName),vue.mergeProps({key:1},e.attributes,vue.toHandlers(e.actionAttributes)),{default:vue.withCtx(()=>[vue.renderSlot(e.$slots,"default")]),_:3},16))],64))}const DynamicRenderer=_export_sfc(_sfc_main$p,[["render",_sfc_render$n]]),dynamicRenderer=Object.freeze(Object.defineProperty({__proto__:null,default:DynamicRenderer},Symbol.toStringTag,{value:"Module"})),TARGET="vue",getClassPropName=()=>{switch(TARGET){case"react":case"reactNative":case"rsc":return"className";case"svelte":case"vue":case"solid":case"qwik":return"class"}},_sfc_main$o=vue.defineComponent({name:"builder-button",components:{DynamicRenderer},props:["attributes","link","openLinkInNewTab","builderLinkComponent","text"],data(){return{getClassPropName,filterAttrs}}});function _sfc_render$m(e,t,n,o,r,s){const i=vue.resolveComponent("dynamic-renderer");return vue.openBlock(),vue.createBlock(i,{attributes:{...e.filterAttrs(e.attributes,"v-on:",!1),[e.getClassPropName()]:`${e.link?"":"builder-button"} ${e.attributes[e.getClassPropName()]||""}`,...e.link?{href:e.link,target:e.openLinkInNewTab?"_blank":void 0,role:"link"}:{role:"button"}},TagName:e.link?e.builderLinkComponent||"a":"button",actionAttributes:e.filterAttrs(e.attributes,"v-on:",!0)},{default:vue.withCtx(()=>[vue.createTextVNode(vue.toDisplayString(e.text),1)]),_:1},8,["attributes","TagName","actionAttributes"])}const Button=_export_sfc(_sfc_main$o,[["render",_sfc_render$m]]),key$1=Symbol(),BuilderContext={Builder:{content:null,context:{},localState:void 0,rootSetState(){},rootState:{},apiKey:null,apiVersion:void 0,componentInfos:{},inheritedStyles:{},BlocksWrapper:"div",BlocksWrapperProps:{}},key:key$1},key=Symbol(),ComponentsContext={Components:{registeredComponents:{}},key};function getBlockComponentOptions(e){var t;return{...(t=e.component)==null?void 0:t.options,...e.options,builderBlock:e}}const MSG_PREFIX="[Builder.io]: ",logger={log:(...e)=>console.log(MSG_PREFIX,...e),error:(...e)=>console.error(MSG_PREFIX,...e),warn:(...e)=>console.warn(MSG_PREFIX,...e),debug:(...e)=>console.debug(MSG_PREFIX,...e)};function isBrowser(){return typeof window<"u"&&typeof document<"u"}const convertSearchParamsToQueryObject=e=>{const t={};return e.forEach((n,o)=>{t[o]=n}),t},normalizeSearchParams=e=>e instanceof URLSearchParams?convertSearchParamsToQueryObject(e):e,getSearchString=e=>typeof e=="string"?e:e instanceof URLSearchParams?e.toString():new URLSearchParams(e).toString();function isIframe(){return isBrowser()&&window.self!==window.top}function isEditing(e){return isIframe()&&getSearchString(e||window.location.search).indexOf("builder.frameEditing=")!==-1}const getLocation=()=>{if(isBrowser()){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},getUserAgent=()=>typeof navigator=="object"&&navigator.userAgent||"",getUserAttributes=()=>{const e=getUserAgent(),t={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 t.Android()||t.BlackBerry()||t.iOS()||t.Opera()||t.Windows()||TARGET==="reactNative"}},n=e.match(/Tablet|iPad/i),o=getLocation();return{urlPath:o==null?void 0:o.pathname,host:(o==null?void 0:o.host)||(o==null?void 0:o.hostname),device:n?"tablet":t.any()?"mobile":"desktop"}},getFunctionArguments=({builder:e,context:t,event:n,state:o})=>Object.entries({state:o,Builder:e,builder:e,context:t,event:n}),getBuilderGlobals=()=>({isEditing:isEditing(),isBrowser:isBrowser(),isServer:!isBrowser(),getUserAttributes:()=>getUserAttributes()}),parseCode=(e,{isExpression:t=!0})=>t&&!(e.includes(";")||e.includes(" return ")||e.trim().startsWith("return "))?`return (${e});`:e,runInBrowser=({code:e,builder:t,context:n,event:o,localState:r,rootSetState:s,rootState:i})=>{const a=getFunctionArguments({builder:t,context:n,event:o,state:flattenState({rootState:i,localState:r,rootSetState:s})});return new Function(...a.map(([l])=>l),e)(...a.map(([,l])=>l))};function flattenState({rootState:e,localState:t,rootSetState:n}){return new Proxy(e,{get:(o,r)=>{if(t&&r in t)return t[r];const s=o[r];return typeof s=="object"&&s!==null?flattenState({rootState:s,localState:void 0,rootSetState:n?i=>{o[r]=i,n(o)}:void 0}):s},set:(o,r,s)=>{if(t&&r in t)throw new Error("Writing to local state is not allowed as it is read-only.");return o[r]=s,n==null||n(o),!0}})}const fastClone=e=>JSON.parse(JSON.stringify(e)),set=(e,t,n)=>{if(Object(e)!==e)return e;const o=Array.isArray(t)?t:t.toString().match(/[^.[\]]+/g);return o.slice(0,-1).reduce((r,s,i)=>Object(r[s])===r[s]?r[s]:r[s]=Math.abs(Number(o[i+1]))>>0===+o[i+1]?[]:{},e)[o[o.length-1]]=n,e},noop=()=>{};let safeDynamicRequire=noop;try{safeDynamicRequire=node_module.createRequire(typeof document>"u"?require("url").pathToFileURL(__filename).href:_documentCurrentScript&&_documentCurrentScript.src||new URL("index-Oh0XoTAq.cjs",document.baseURI).href)}catch(error){try{safeDynamicRequire=eval("require")}catch(e){}}const getSyncValName=e=>`bldr_${e}_sync`,BUILDER_SET_STATE_NAME="BUILDER_SET_STATE",INJECTED_IVM_GLOBAL="BUILDER_IVM",REF_TO_PROXY_FN=`
|
|
2
2
|
var refToProxy = (obj) => {
|
|
3
3
|
if (typeof obj !== 'object' || obj === null) {
|
|
4
4
|
return obj;
|
|
@@ -45,7 +45,7 @@ output;
|
|
|
45
45
|
${o}
|
|
46
46
|
}`:o};function transformStyleProperty({style:e}){return e}const getStyle=({block:e,context:t})=>mapStyleObjToStrIfNeeded(transformStyleProperty({style:e.style||{},context:t,block:e}));function mapStyleObjToStrIfNeeded(e){switch(TARGET){case"svelte":case"vue":case"solid":return convertStyleMapToCSSArray(e).join(" ");case"qwik":case"reactNative":case"react":case"rsc":return e}}const getComponent=({block:e,context:t,registeredComponents:n})=>{var s;const o=(s=getProcessedBlock({block:e,localState:t.localState,rootState:t.rootState,rootSetState:t.rootSetState,context:t.context,shouldEvaluateBindings:!1}).component)==null?void 0:s.name;if(!o)return null;const r=n[o];if(r)return r;console.warn(`
|
|
47
47
|
Could not find a registered component named "${o}".
|
|
48
|
-
If you registered it, is the file that registered it imported by the file that needs to render it?`)},getRepeatItemData=({block:e,context:t})=>{const{repeat:n,...o}=e;if(!(n!=null&&n.collection))return;const r=evaluate({code:n.collection,localState:t.localState,rootState:t.rootState,rootSetState:t.rootSetState,context:t.context,enableCache:!0});if(!Array.isArray(r))return;const s=n.collection.split(".").pop(),i=n.itemName||(s?s+"Item":"item");return r.map((l,c)=>({context:{...t,localState:{...t.localState,$index:c,$item:l,[i]:l,[`$${i}Index`]:c}},block:o}))},BlockStyles=()=>Promise.resolve().then(()=>require("./block-styles-YqghwSbU.cjs")).then(e=>e.default).catch(e=>{throw console.error("Error while attempting to dynamically import component BlockStyles at ./components/block-styles.vue",e),e}),BlockWrapper=()=>Promise.resolve().then(()=>require("./block-wrapper-sv0gfrKF.cjs")).then(e=>e.default).catch(e=>{throw console.error("Error while attempting to dynamically import component BlockWrapper at ./components/block-wrapper.vue",e),e}),ComponentRef=()=>Promise.resolve().then(()=>require("./component-ref-rsCbGdca.cjs")).then(e=>e.default).catch(e=>{throw console.error("Error while attempting to dynamically import component ComponentRef at ./components/component-ref/component-ref.vue",e),e}),RepeatedBlock=()=>Promise.resolve().then(()=>require("./repeated-block-buhSqMYu.cjs")).then(e=>e.default).catch(e=>{throw console.error("Error while attempting to dynamically import component RepeatedBlock at ./components/repeated-block.vue",e),e}),_sfc_main$n=vue.defineComponent({name:"block",components:{BlockStyles:vue.defineAsyncComponent(BlockStyles),ComponentRef:vue.defineAsyncComponent(ComponentRef),RepeatedBlock:vue.defineAsyncComponent(RepeatedBlock),BlockWrapper:vue.defineAsyncComponent(BlockWrapper)},props:["block","context","registeredComponents","linkComponent"],mounted(){const e=this.processedBlock.id,t=this.processedBlock.animations;t&&e&&bindAnimations(t.filter(n=>n.trigger!=="hover").map(n=>({...n,elementId:e})))},computed:{blockComponent(){return getComponent({block:this.block,context:this.context,registeredComponents:this.registeredComponents})},repeatItem(){return getRepeatItemData({block:this.block,context:this.context})},processedBlock(){var e;return(e=this.block.repeat)!=null&&e.collection?this.block:getProcessedBlock({block:this.block,localState:this.context.localState,rootState:this.context.rootState,rootSetState:this.context.rootSetState,context:this.context.context,shouldEvaluateBindings:!0})},Tag(){var t;return this.block.tagName==="a"||((t=this.processedBlock.properties)==null?void 0:t.href)||this.processedBlock.href?this.linkComponent||"a":this.block.tagName||"div"},canShowBlock(){var n,o;if((n=this.block.repeat)!=null&&n.collection)return!!((o=this.repeatItem)!=null&&o.length);const e="hide"in this.processedBlock?this.processedBlock.hide:!1;return("show"in this.processedBlock?this.processedBlock.show:!0)&&!e},childrenWithoutParentComponent(){var t;return!((t=this.blockComponent)!=null&&t.component)&&!this.repeatItem?this.processedBlock.children??[]:[]},componentRefProps(){var e,t,n,o,r,s,i,a,l,c;return{blockChildren:this.processedBlock.children??[],componentRef:(e=this.blockComponent)==null?void 0:e.component,componentOptions:{...getBlockComponentOptions(this.processedBlock),builderContext:this.context,...((t=this.blockComponent)==null?void 0:t.name)==="Core:Button"||((n=this.blockComponent)==null?void 0:n.name)==="Symbol"||((o=this.blockComponent)==null?void 0:o.name)==="Columns"||((r=this.blockComponent)==null?void 0:r.name)==="Form:Form"?{builderLinkComponent:this.linkComponent}:{},...((s=this.blockComponent)==null?void 0:s.name)==="Symbol"||((i=this.blockComponent)==null?void 0:i.name)==="Columns"||((a=this.blockComponent)==null?void 0:a.name)==="Form:Form"?{builderComponents:this.registeredComponents}:{}},context:this.context,linkComponent:this.linkComponent,registeredComponents:this.registeredComponents,builderBlock:this.processedBlock,includeBlockProps:((l=this.blockComponent)==null?void 0:l.noWrap)===!0,isInteractive:!((c=this.blockComponent)!=null&&c.isRSC)}}}});function _sfc_render$l(e,t,n,o,r,s){var u;const i=vue.resolveComponent("block-styles"),a=vue.resolveComponent("component-ref"),l=vue.resolveComponent("block",!0),c=vue.resolveComponent("block-wrapper"),p=vue.resolveComponent("repeated-block");return e.canShowBlock?(vue.openBlock(),vue.createElementBlock(vue.Fragment,{key:0},[vue.createVNode(i,{block:e.block,context:e.context},null,8,["block","context"]),(u=e.blockComponent)!=null&&u.noWrap?(vue.openBlock(),vue.createBlock(a,{key:1,componentRef:e.componentRefProps.componentRef,componentOptions:e.componentRefProps.componentOptions,blockChildren:e.componentRefProps.blockChildren,context:e.componentRefProps.context,registeredComponents:e.componentRefProps.registeredComponents,linkComponent:e.componentRefProps.linkComponent,builderBlock:e.componentRefProps.builderBlock,includeBlockProps:e.componentRefProps.includeBlockProps,isInteractive:e.componentRefProps.isInteractive},null,8,["componentRef","componentOptions","blockChildren","context","registeredComponents","linkComponent","builderBlock","includeBlockProps","isInteractive"])):(vue.openBlock(),vue.createElementBlock(vue.Fragment,{key:0},[e.repeatItem?(vue.openBlock(!0),vue.createElementBlock(vue.Fragment,{key:1},vue.renderList(e.repeatItem,(d,f)=>(vue.openBlock(),vue.createBlock(p,{key:f,repeatContext:d.context,block:d.block,registeredComponents:e.registeredComponents,linkComponent:e.linkComponent},null,8,["repeatContext","block","registeredComponents","linkComponent"]))),128)):(vue.openBlock(),vue.createBlock(c,{key:0,Wrapper:e.Tag,block:e.processedBlock,context:e.context,linkComponent:e.linkComponent},{default:vue.withCtx(()=>[vue.createVNode(a,{componentRef:e.componentRefProps.componentRef,componentOptions:e.componentRefProps.componentOptions,blockChildren:e.componentRefProps.blockChildren,context:e.componentRefProps.context,registeredComponents:e.componentRefProps.registeredComponents,linkComponent:e.componentRefProps.linkComponent,builderBlock:e.componentRefProps.builderBlock,includeBlockProps:e.componentRefProps.includeBlockProps,isInteractive:e.componentRefProps.isInteractive},null,8,["componentRef","componentOptions","blockChildren","context","registeredComponents","linkComponent","builderBlock","includeBlockProps","isInteractive"]),(vue.openBlock(!0),vue.createElementBlock(vue.Fragment,null,vue.renderList(e.childrenWithoutParentComponent,(d,f)=>(vue.openBlock(),vue.createBlock(l,{key:d.id,block:d,registeredComponents:e.registeredComponents,linkComponent:e.linkComponent,context:e.context},null,8,["block","registeredComponents","linkComponent","context"]))),128))]),_:1},8,["Wrapper","block","context","linkComponent"]))],64))],64)):vue.createCommentVNode("",!0)}const Block=_export_sfc(_sfc_main$n,[["render",_sfc_render$l]]),block=Object.freeze(Object.defineProperty({__proto__:null,default:Block},Symbol.toStringTag,{value:"Module"})),_sfc_main$m=vue.defineComponent({name:"builder-blocks-wrapper",props:["BlocksWrapper","blocks","parent","path","styleProp","BlocksWrapperProps"],computed:{className(){var e;return"builder-blocks"+((e=this.blocks)!=null&&e.length?"":" no-blocks")}},methods:{onClick(){var e,t;isEditing()&&!((e=this.blocks)!=null&&e.length)&&((t=window.parent)==null||t.postMessage({type:"builder.clickEmptyBlocks",data:{parentElementId:this.parent,dataPath:this.path}},"*"))},onMouseEnter(){var e,t;isEditing()&&!((e=this.blocks)!=null&&e.length)&&((t=window.parent)==null||t.postMessage({type:"builder.hoverEmptyBlocks",data:{parentElementId:this.parent,dataPath:this.path}},"*"))}}});function _sfc_render$k(e,t,n,o,r,s){return vue.openBlock(),vue.createBlock(vue.resolveDynamicComponent(e.BlocksWrapper),vue.mergeProps({class:e.className+" component-1o2kztlxdt6","builder-path":e.path,"builder-parent-id":e.parent,style:e.styleProp,onClick:i=>e.onClick(),onMouseEnter:i=>e.onMouseEnter(),onKeyPress:i=>e.onClick()},{...e.BlocksWrapperProps}),{default:vue.withCtx(()=>[vue.renderSlot(e.$slots,"default",{},void 0,!0)]),_:3},16,["class","builder-path","builder-parent-id","style","onClick","onMouseEnter","onKeyPress"])}const BlocksWrapper=_export_sfc(_sfc_main$m,[["render",_sfc_render$k],["__scopeId","data-v-b8add99a"]]),_sfc_main$l=vue.defineComponent({name:"builder-blocks",components:{BlocksWrapper,Block},props:["blocks","parent","path","styleProp","context","linkComponent","registeredComponents"],inject:{builderContext:BuilderContext.key,componentsContext:ComponentsContext.key}});function _sfc_render$j(e,t,n,o,r,s){var l,c;const i=vue.resolveComponent("block"),a=vue.resolveComponent("blocks-wrapper");return vue.openBlock(),vue.createBlock(a,{blocks:e.blocks,parent:e.parent,path:e.path,styleProp:e.styleProp,BlocksWrapper:((l=e.context)==null?void 0:l.BlocksWrapper)||e.builderContext.BlocksWrapper,BlocksWrapperProps:((c=e.context)==null?void 0:c.BlocksWrapperProps)||e.builderContext.BlocksWrapperProps},{default:vue.withCtx(()=>[e.blocks?(vue.openBlock(!0),vue.createElementBlock(vue.Fragment,{key:0},vue.renderList(e.blocks,(p,u)=>(vue.openBlock(),vue.createBlock(i,{key:p.id,block:p,linkComponent:e.linkComponent,context:e.context||e.builderContext,registeredComponents:e.registeredComponents||e.componentsContext.registeredComponents},null,8,["block","linkComponent","context","registeredComponents"]))),128)):vue.createCommentVNode("",!0)]),_:1},8,["blocks","parent","path","styleProp","BlocksWrapper","BlocksWrapperProps"])}const Blocks=_export_sfc(_sfc_main$l,[["render",_sfc_render$j]]),_sfc_main$k=vue.defineComponent({render(){return vue.h("style",{id:this.id,innerHTML:this.styles})},name:"inlined-styles",props:["styles","id"]}),SIZES={small:{min:320,default:321,max:640},medium:{min:641,default:642,max:991},large:{min:990,default:991,max:1200}},getMaxWidthQueryForSize=(e,t=SIZES)=>`@media (max-width: ${t[e].max}px)`,getSizesForBreakpoints=({small:e,medium:t})=>{const n=fastClone(SIZES);if(!e||!t)return n;const o=Math.floor(e/2);n.small={max:e,min:o,default:o+1};const r=n.small.max+1;n.medium={max:t,min:r,default:r+1};const s=n.medium.max+1;return n.large={max:2e3,min:s,default:s+1},n},_sfc_main$j=vue.defineComponent({name:"builder-columns",components:{InlinedStyles:_sfc_main$k,DynamicRenderer,Blocks},props:["space","columns","stackColumnsAt","reverseColumnsWhenStacked","builderContext","builderBlock","builderLinkComponent","builderComponents"],data(){return{gutterSize:typeof this.space=="number"?this.space||0:20,cols:this.columns||[],stackAt:this.stackColumnsAt||"tablet",flexDir:this.stackColumnsAt==="never"?"row":this.reverseColumnsWhenStacked?"column-reverse":"column",TARGET,getClassPropName,mapStyleObjToStrIfNeeded}},computed:{columnsCssVars(){return{"--flex-dir":this.flexDir,"--flex-dir-tablet":this.getTabletStyle({stackedStyle:this.flexDir,desktopStyle:"row"})}},columnsStyles(){return`
|
|
48
|
+
If you registered it, is the file that registered it imported by the file that needs to render it?`)},getRepeatItemData=({block:e,context:t})=>{const{repeat:n,...o}=e;if(!(n!=null&&n.collection))return;const r=evaluate({code:n.collection,localState:t.localState,rootState:t.rootState,rootSetState:t.rootSetState,context:t.context,enableCache:!0});if(!Array.isArray(r))return;const s=n.collection.split(".").pop(),i=n.itemName||(s?s+"Item":"item");return r.map((l,c)=>({context:{...t,localState:{...t.localState,$index:c,$item:l,[i]:l,[`$${i}Index`]:c}},block:o}))},BlockStyles=()=>Promise.resolve().then(()=>require("./block-styles-f5d_sXFZ.cjs")).then(e=>e.default).catch(e=>{throw console.error("Error while attempting to dynamically import component BlockStyles at ./components/block-styles.vue",e),e}),BlockWrapper=()=>Promise.resolve().then(()=>require("./block-wrapper-cEkh_JGR.cjs")).then(e=>e.default).catch(e=>{throw console.error("Error while attempting to dynamically import component BlockWrapper at ./components/block-wrapper.vue",e),e}),ComponentRef=()=>Promise.resolve().then(()=>require("./component-ref-4MMqYT0r.cjs")).then(e=>e.default).catch(e=>{throw console.error("Error while attempting to dynamically import component ComponentRef at ./components/component-ref/component-ref.vue",e),e}),RepeatedBlock=()=>Promise.resolve().then(()=>require("./repeated-block-8a9KznE-.cjs")).then(e=>e.default).catch(e=>{throw console.error("Error while attempting to dynamically import component RepeatedBlock at ./components/repeated-block.vue",e),e}),_sfc_main$n=vue.defineComponent({name:"block",components:{BlockStyles:vue.defineAsyncComponent(BlockStyles),ComponentRef:vue.defineAsyncComponent(ComponentRef),RepeatedBlock:vue.defineAsyncComponent(RepeatedBlock),BlockWrapper:vue.defineAsyncComponent(BlockWrapper)},props:["block","context","registeredComponents","linkComponent"],mounted(){const e=this.processedBlock.id,t=this.processedBlock.animations;t&&e&&bindAnimations(t.filter(n=>n.trigger!=="hover").map(n=>({...n,elementId:e})))},computed:{blockComponent(){return getComponent({block:this.block,context:this.context,registeredComponents:this.registeredComponents})},repeatItem(){return getRepeatItemData({block:this.block,context:this.context})},processedBlock(){var e;return(e=this.block.repeat)!=null&&e.collection?this.block:getProcessedBlock({block:this.block,localState:this.context.localState,rootState:this.context.rootState,rootSetState:this.context.rootSetState,context:this.context.context,shouldEvaluateBindings:!0})},Tag(){var t;return this.block.tagName==="a"||((t=this.processedBlock.properties)==null?void 0:t.href)||this.processedBlock.href?this.linkComponent||"a":this.block.tagName||"div"},canShowBlock(){var n,o;if((n=this.block.repeat)!=null&&n.collection)return!!((o=this.repeatItem)!=null&&o.length);const e="hide"in this.processedBlock?this.processedBlock.hide:!1;return("show"in this.processedBlock?this.processedBlock.show:!0)&&!e},childrenWithoutParentComponent(){var t;return!((t=this.blockComponent)!=null&&t.component)&&!this.repeatItem?this.processedBlock.children??[]:[]},componentRefProps(){var e,t,n,o,r,s,i,a,l,c;return{blockChildren:this.processedBlock.children??[],componentRef:(e=this.blockComponent)==null?void 0:e.component,componentOptions:{...getBlockComponentOptions(this.processedBlock),builderContext:this.context,...((t=this.blockComponent)==null?void 0:t.name)==="Core:Button"||((n=this.blockComponent)==null?void 0:n.name)==="Symbol"||((o=this.blockComponent)==null?void 0:o.name)==="Columns"||((r=this.blockComponent)==null?void 0:r.name)==="Form:Form"?{builderLinkComponent:this.linkComponent}:{},...((s=this.blockComponent)==null?void 0:s.name)==="Symbol"||((i=this.blockComponent)==null?void 0:i.name)==="Columns"||((a=this.blockComponent)==null?void 0:a.name)==="Form:Form"?{builderComponents:this.registeredComponents}:{}},context:this.context,linkComponent:this.linkComponent,registeredComponents:this.registeredComponents,builderBlock:this.processedBlock,includeBlockProps:((l=this.blockComponent)==null?void 0:l.noWrap)===!0,isInteractive:!((c=this.blockComponent)!=null&&c.isRSC)}}}});function _sfc_render$l(e,t,n,o,r,s){var u;const i=vue.resolveComponent("block-styles"),a=vue.resolveComponent("component-ref"),l=vue.resolveComponent("block",!0),c=vue.resolveComponent("block-wrapper"),p=vue.resolveComponent("repeated-block");return e.canShowBlock?(vue.openBlock(),vue.createElementBlock(vue.Fragment,{key:0},[vue.createVNode(i,{block:e.block,context:e.context},null,8,["block","context"]),(u=e.blockComponent)!=null&&u.noWrap?(vue.openBlock(),vue.createBlock(a,{key:1,componentRef:e.componentRefProps.componentRef,componentOptions:e.componentRefProps.componentOptions,blockChildren:e.componentRefProps.blockChildren,context:e.componentRefProps.context,registeredComponents:e.componentRefProps.registeredComponents,linkComponent:e.componentRefProps.linkComponent,builderBlock:e.componentRefProps.builderBlock,includeBlockProps:e.componentRefProps.includeBlockProps,isInteractive:e.componentRefProps.isInteractive},null,8,["componentRef","componentOptions","blockChildren","context","registeredComponents","linkComponent","builderBlock","includeBlockProps","isInteractive"])):(vue.openBlock(),vue.createElementBlock(vue.Fragment,{key:0},[e.repeatItem?(vue.openBlock(!0),vue.createElementBlock(vue.Fragment,{key:1},vue.renderList(e.repeatItem,(d,f)=>(vue.openBlock(),vue.createBlock(p,{key:f,repeatContext:d.context,block:d.block,registeredComponents:e.registeredComponents,linkComponent:e.linkComponent},null,8,["repeatContext","block","registeredComponents","linkComponent"]))),128)):(vue.openBlock(),vue.createBlock(c,{key:0,Wrapper:e.Tag,block:e.processedBlock,context:e.context,linkComponent:e.linkComponent},{default:vue.withCtx(()=>[vue.createVNode(a,{componentRef:e.componentRefProps.componentRef,componentOptions:e.componentRefProps.componentOptions,blockChildren:e.componentRefProps.blockChildren,context:e.componentRefProps.context,registeredComponents:e.componentRefProps.registeredComponents,linkComponent:e.componentRefProps.linkComponent,builderBlock:e.componentRefProps.builderBlock,includeBlockProps:e.componentRefProps.includeBlockProps,isInteractive:e.componentRefProps.isInteractive},null,8,["componentRef","componentOptions","blockChildren","context","registeredComponents","linkComponent","builderBlock","includeBlockProps","isInteractive"]),(vue.openBlock(!0),vue.createElementBlock(vue.Fragment,null,vue.renderList(e.childrenWithoutParentComponent,(d,f)=>(vue.openBlock(),vue.createBlock(l,{key:d.id,block:d,registeredComponents:e.registeredComponents,linkComponent:e.linkComponent,context:e.context},null,8,["block","registeredComponents","linkComponent","context"]))),128))]),_:1},8,["Wrapper","block","context","linkComponent"]))],64))],64)):vue.createCommentVNode("",!0)}const Block=_export_sfc(_sfc_main$n,[["render",_sfc_render$l]]),block=Object.freeze(Object.defineProperty({__proto__:null,default:Block},Symbol.toStringTag,{value:"Module"})),_sfc_main$m=vue.defineComponent({name:"builder-blocks-wrapper",props:["BlocksWrapper","blocks","parent","path","styleProp","BlocksWrapperProps"],computed:{className(){var e;return"builder-blocks"+((e=this.blocks)!=null&&e.length?"":" no-blocks")}},methods:{onClick(){var e,t;isEditing()&&!((e=this.blocks)!=null&&e.length)&&((t=window.parent)==null||t.postMessage({type:"builder.clickEmptyBlocks",data:{parentElementId:this.parent,dataPath:this.path}},"*"))},onMouseEnter(){var e,t;isEditing()&&!((e=this.blocks)!=null&&e.length)&&((t=window.parent)==null||t.postMessage({type:"builder.hoverEmptyBlocks",data:{parentElementId:this.parent,dataPath:this.path}},"*"))}}});function _sfc_render$k(e,t,n,o,r,s){return vue.openBlock(),vue.createBlock(vue.resolveDynamicComponent(e.BlocksWrapper),vue.mergeProps({class:e.className+" component-1o2kztlxdt6","builder-path":e.path,"builder-parent-id":e.parent,style:e.styleProp,onClick:i=>e.onClick(),onMouseEnter:i=>e.onMouseEnter(),onKeyPress:i=>e.onClick()},{...e.BlocksWrapperProps}),{default:vue.withCtx(()=>[vue.renderSlot(e.$slots,"default",{},void 0,!0)]),_:3},16,["class","builder-path","builder-parent-id","style","onClick","onMouseEnter","onKeyPress"])}const BlocksWrapper=_export_sfc(_sfc_main$m,[["render",_sfc_render$k],["__scopeId","data-v-b8add99a"]]),_sfc_main$l=vue.defineComponent({name:"builder-blocks",components:{BlocksWrapper,Block},props:["blocks","parent","path","styleProp","context","linkComponent","registeredComponents"],inject:{builderContext:BuilderContext.key,componentsContext:ComponentsContext.key}});function _sfc_render$j(e,t,n,o,r,s){var l,c;const i=vue.resolveComponent("block"),a=vue.resolveComponent("blocks-wrapper");return vue.openBlock(),vue.createBlock(a,{blocks:e.blocks,parent:e.parent,path:e.path,styleProp:e.styleProp,BlocksWrapper:((l=e.context)==null?void 0:l.BlocksWrapper)||e.builderContext.BlocksWrapper,BlocksWrapperProps:((c=e.context)==null?void 0:c.BlocksWrapperProps)||e.builderContext.BlocksWrapperProps},{default:vue.withCtx(()=>[e.blocks?(vue.openBlock(!0),vue.createElementBlock(vue.Fragment,{key:0},vue.renderList(e.blocks,(p,u)=>(vue.openBlock(),vue.createBlock(i,{key:p.id,block:p,linkComponent:e.linkComponent,context:e.context||e.builderContext,registeredComponents:e.registeredComponents||e.componentsContext.registeredComponents},null,8,["block","linkComponent","context","registeredComponents"]))),128)):vue.createCommentVNode("",!0)]),_:1},8,["blocks","parent","path","styleProp","BlocksWrapper","BlocksWrapperProps"])}const Blocks=_export_sfc(_sfc_main$l,[["render",_sfc_render$j]]),_sfc_main$k=vue.defineComponent({render(){return vue.h("style",{id:this.id,innerHTML:this.styles})},name:"inlined-styles",props:["styles","id"]}),SIZES={small:{min:320,default:321,max:640},medium:{min:641,default:642,max:991},large:{min:990,default:991,max:1200}},getMaxWidthQueryForSize=(e,t=SIZES)=>`@media (max-width: ${t[e].max}px)`,getSizesForBreakpoints=({small:e,medium:t})=>{const n=fastClone(SIZES);if(!e||!t)return n;const o=Math.floor(e/2);n.small={max:e,min:o,default:o+1};const r=n.small.max+1;n.medium={max:t,min:r,default:r+1};const s=n.medium.max+1;return n.large={max:2e3,min:s,default:s+1},n},_sfc_main$j=vue.defineComponent({name:"builder-columns",components:{InlinedStyles:_sfc_main$k,DynamicRenderer,Blocks},props:["space","columns","stackColumnsAt","reverseColumnsWhenStacked","builderContext","builderBlock","builderLinkComponent","builderComponents"],data(){return{gutterSize:typeof this.space=="number"?this.space||0:20,cols:this.columns||[],stackAt:this.stackColumnsAt||"tablet",flexDir:this.stackColumnsAt==="never"?"row":this.reverseColumnsWhenStacked?"column-reverse":"column",TARGET,getClassPropName,mapStyleObjToStrIfNeeded}},computed:{columnsCssVars(){return{"--flex-dir":this.flexDir,"--flex-dir-tablet":this.getTabletStyle({stackedStyle:this.flexDir,desktopStyle:"row"})}},columnsStyles(){return`
|
|
49
49
|
@media (max-width: ${this.getWidthForBreakpointSize("medium")}px) {
|
|
50
50
|
.${this.builderBlock.id}-breakpoints {
|
|
51
51
|
flex-direction: var(--flex-dir-tablet);
|
|
@@ -168,7 +168,7 @@ output;
|
|
|
168
168
|
)`,getUpdateVariantVisibilityScript=({contentId:e,variationId:t})=>`window.${UPDATE_VARIANT_VISIBILITY_SCRIPT_FN_NAME}(
|
|
169
169
|
"${t}", "${e}", ${isHydrationTarget}
|
|
170
170
|
)`,_sfc_main$5=vue.defineComponent({render(){return vue.h("script",{id:this.id,innerHTML:this.scriptStr})},name:"inlined-script",props:["scriptStr","id"]});function getGlobalThis(){return typeof globalThis<"u"?globalThis:typeof window<"u"?window:typeof global<"u"?global:typeof self<"u"?self:globalThis}function getFetch(){const e=getGlobalThis().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.
|
|
171
|
-
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 fetch$1=getFetch();function flatten(e,t=null,n="."){return Object.keys(e).reduce((o,r)=>{const s=e[r],i=[t,r].filter(Boolean).join(n);return[typeof s=="object",s!==null,!(Array.isArray(s)&&s.length===0)].every(Boolean)?{...o,...flatten(s,i,n)}:{...o,[i]:s}},{})}const DEFAULT_API_VERSION="v3",BUILDER_SEARCHPARAMS_PREFIX="builder.",BUILDER_OPTIONS_PREFIX="options.",getBuilderSearchParams=e=>{if(!e)return{};const t=normalizeSearchParams(e),n={};return Object.keys(t).forEach(o=>{if(o.startsWith(BUILDER_SEARCHPARAMS_PREFIX)){const r=o.replace(BUILDER_SEARCHPARAMS_PREFIX,"").replace(BUILDER_OPTIONS_PREFIX,"");n[r]=t[o]}}),n},getBuilderSearchParamsFromWindow=()=>{if(!isBrowser())return{};const e=new URLSearchParams(window.location.search);return getBuilderSearchParams(e)},isPositiveNumber=e=>typeof e=="number"&&!isNaN(e)&&e>=0,generateContentUrl=e=>{const{limit:t=30,userAttributes:n,query:o,model:r,apiKey:s,enrich:i,locale:a,apiVersion:l=DEFAULT_API_VERSION,fields:c,omit:p,offset:u,cacheSeconds:d,staleCacheSeconds:f,sort:m,includeUnpublished:g}=e;if(!s)throw new Error("Missing API key");if(!["v3"].includes(l))throw new Error(`Invalid apiVersion: expected 'v3', received '${l}'`);const y=t!==1,h=new URL(`https://cdn.builder.io/api/${l}/content/${r}`);if(h.searchParams.set("apiKey",s),h.searchParams.set("limit",String(t)),h.searchParams.set("noTraverse",String(y)),h.searchParams.set("includeRefs",String(!0)),a&&h.searchParams.set("locale",a),i&&h.searchParams.set("enrich",String(i)),h.searchParams.set("omit",p||"meta.componentsUsed"),c&&h.searchParams.set("fields",c),Number.isFinite(u)&&u>-1&&h.searchParams.set("offset",String(Math.floor(u))),typeof g=="boolean"&&h.searchParams.set("includeUnpublished",String(g)),d&&isPositiveNumber(d)&&h.searchParams.set("cacheSeconds",String(d)),f&&isPositiveNumber(f)&&h.searchParams.set("staleCacheSeconds",String(f)),m){const v=flatten({sort:m});for(const k in v)h.searchParams.set(k,JSON.stringify(v[k]))}const I={...getBuilderSearchParamsFromWindow(),...normalizeSearchParams(e.options||{})},C=flatten(I);for(const v in C)h.searchParams.set(v,String(C[v]));if(n&&h.searchParams.set("userAttributes",JSON.stringify(n)),o){const v=flatten({query:o});for(const k in v)h.searchParams.set(k,JSON.stringify(v[k]))}return h},checkContentHasResults=e=>"results"in e;async function fetchOneEntry(e){const t=await fetchEntries({...e,limit:1});return t&&t[0]||null}const _fetchContent=async e=>{const t=generateContentUrl(e);return await(await fetch$1(t.href)).json()},_processContentResult=async(e,t,n=generateContentUrl(e))=>{const o=getDefaultCanTrack(e.canTrack);if(n.search.includes("preview="),!o||!(isBrowser()||TARGET==="reactNative"))return t.results;try{const r=[];for(const s of t.results)r.push(await handleABTesting({item:s,canTrack:o}));t.results=r}catch(r){logger.error("Could not process A/B tests. ",r)}return t.results};async function fetchEntries(e){try{const t=generateContentUrl(e),n=await _fetchContent(e);return checkContentHasResults(n)?_processContentResult(e,n):(logger.error("Error fetching data. ",{url:t,content:n,options:e}),null)}catch(t){return logger.error("Error fetching data. ",t),null}}function isPreviewing(e){if(!isBrowser())return!1;const t=getSearchString(e||window.location.search);return isEditing(t)?!1:t.indexOf("builder.preview=")!==-1}function uuidv4(){return"xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx".replace(/[xy]/g,function(e){const t=Math.random()*16|0;return(e=="x"?t:t&3|8).toString(16)})}function uuid(){return uuidv4().replace(/-/g,"")}const SESSION_LOCAL_STORAGE_KEY="builderSessionId",getSessionId=async({canTrack:e})=>{if(!e)return;const t=await getCookie({name:SESSION_LOCAL_STORAGE_KEY,canTrack:e});if(checkIsDefined(t))return t;{const n=createSessionId();return setSessionId({id:n,canTrack:e}),n}},createSessionId=()=>uuid(),setSessionId=({id:e,canTrack:t})=>setCookie({name:SESSION_LOCAL_STORAGE_KEY,value:e,canTrack:t}),getLocalStorage=()=>isBrowser()&&typeof localStorage<"u"?localStorage:void 0,getLocalStorageItem=({key:e,canTrack:t})=>{var n;try{return t?(n=getLocalStorage())==null?void 0:n.getItem(e):void 0}catch(o){console.debug("[LocalStorage] GET error: ",o);return}},setLocalStorageItem=({key:e,canTrack:t,value:n})=>{var o;try{t&&((o=getLocalStorage())==null||o.setItem(e,n))}catch(r){console.debug("[LocalStorage] SET error: ",r)}},VISITOR_LOCAL_STORAGE_KEY="builderVisitorId",getVisitorId=({canTrack:e})=>{if(!e)return;const t=getLocalStorageItem({key:VISITOR_LOCAL_STORAGE_KEY,canTrack:e});if(checkIsDefined(t))return t;{const n=createVisitorId();return setVisitorId({id:n,canTrack:e}),n}},createVisitorId=()=>uuid(),setVisitorId=({id:e,canTrack:t})=>setLocalStorageItem({key:VISITOR_LOCAL_STORAGE_KEY,value:e,canTrack:t}),getTrackingEventData=async({canTrack:e})=>{if(!e)return{visitorId:void 0,sessionId:void 0};const t=await getSessionId({canTrack:e}),n=getVisitorId({canTrack:e});return{sessionId:t,visitorId:n}},createEvent=async({type:e,canTrack:t,apiKey:n,metadata:o,...r})=>({type:e,data:{...r,metadata:{url:location.href,...o},...await getTrackingEventData({canTrack:t}),userAttributes:getUserAttributes(),ownerId:n}});async function _track(e){if(!e.apiKey){logger.error("Missing API key for track call. Please provide your API key.");return}if(e.canTrack&&!isEditing()&&(isBrowser()||TARGET==="reactNative"))return fetch("https://cdn.builder.io/api/v1/track",{method:"POST",body:JSON.stringify({events:[await createEvent(e)]}),headers:{"content-type":"application/json"},mode:"cors"}).catch(t=>{console.error("Failed to track: ",t)})}const track=e=>_track({...e,canTrack:!0});function round(e){return Math.round(e*1e3)/1e3}const findParentElement=(e,t,n=!0)=>{if(!(e instanceof HTMLElement))return null;let o=n?e:e.parentElement;do{if(!o)return null;if(t(o))return o}while(o=o.parentElement);return null},findBuilderParent=e=>findParentElement(e,t=>{const n=t.getAttribute("builder-id")||t.id;return(n==null?void 0:n.indexOf("builder-"))===0}),computeOffset=({event:e,target:t})=>{const n=t.getBoundingClientRect(),o=e.clientX-n.left,r=e.clientY-n.top,s=round(o/n.width),i=round(r/n.height);return{x:s,y:i}},getInteractionPropertiesForEvent=e=>{const t=e.target,n=t&&findBuilderParent(t),o=(n==null?void 0:n.getAttribute("builder-id"))||(n==null?void 0:n.id);return{targetBuilderElement:o||void 0,metadata:{targetOffset:t?computeOffset({event:e,target:t}):void 0,builderTargetOffset:n?computeOffset({event:e,target:n}):void 0,builderElementIndex:n&&o?[].slice.call(document.getElementsByClassName(o)).indexOf(n):void 0}}},DEFAULT_TRUSTED_HOSTS=["*.beta.builder.io","beta.builder.io","builder.io","localhost","qa.builder.io"];function isFromTrustedHost(e,t){const n=new URL(t.origin),o=n.hostname;return(e||DEFAULT_TRUSTED_HOSTS).findIndex(r=>r.startsWith("*.")?o.endsWith(r.slice(1)):r===o)>-1}const SDK_VERSION="1.0.14",registry={};function register(e,t){let n=registry[e];if(n||(n=registry[e]=[]),n.push(t),isBrowser()){const o={type:"builder.register",data:{type:e,info:t}};try{parent.postMessage(o,"*"),parent!==window&&window.postMessage(o,"*")}catch(r){console.debug("Could not postmessage",r)}}}const registerInsertMenu=()=>{register("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 isSetupForEditing=!1;const setupBrowserForEditing=(e={})=>{var t,n;isSetupForEditing||(isSetupForEditing=!0,isBrowser()&&((t=window.parent)==null||t.postMessage({type:"builder.sdkInfo",data:{target:TARGET,version:SDK_VERSION,supportsPatchUpdates:!1,supportsAddBlockScoping:!0,supportsCustomBreakpoints:!0}},"*"),(n=window.parent)==null||n.postMessage({type:"builder.updateContent",data:{options:e}},"*"),window.addEventListener("message",o=>{var s,i;if(!isFromTrustedHost(e.trustedHosts,o))return;const{data:r}=o;if(r!=null&&r.type)switch(r.type){case"builder.evaluate":{const a=r.data.text,l=r.data.arguments||[],c=r.data.id,p=new Function(a);let u,d=null;try{u=p.apply(null,l)}catch(f){d=f}d?(s=window.parent)==null||s.postMessage({type:"builder.evaluateError",data:{id:c,error:d.message}},"*"):u&&typeof u.then=="function"?u.then(f=>{var m;(m=window.parent)==null||m.postMessage({type:"builder.evaluateResult",data:{id:c,result:f}},"*")}).catch(console.error):(i=window.parent)==null||i.postMessage({type:"builder.evaluateResult",data:{result:u,id:c}},"*");break}}})))},createEditorListener=({model:e,trustedHosts:t,callbacks:n})=>o=>{if(!isFromTrustedHost(t,o))return;const{data:r}=o;if(r)switch(r.type){case"builder.configureSdk":{n.configureSdk(r.data);break}case"builder.triggerAnimation":{n.animation(r.data);break}case"builder.contentUpdate":{const s=r.data,i=s.key||s.alias||s.entry||s.modelName,a=s.data;i===e&&n.contentUpdate(a);break}}},subscribeToEditor=(e,t,n)=>{if(!isBrowser)return logger.warn("`subscribeToEditor` only works in the browser. It currently seems to be running on the server."),()=>{};setupBrowserForEditing();const o=createEditorListener({callbacks:{contentUpdate:t,animation:()=>{},configureSdk:()=>{}},model:e,trustedHosts:n==null?void 0:n.trustedHosts});return window.addEventListener("message",o),()=>{window.removeEventListener("message",o)}},_sfc_main$4=vue.defineComponent({name:"enable-editor",props:["builderContextSignal","contentWrapper","model","trustedHosts","context","canTrack","apiKey","locale","enrich","content","showContent","contentWrapperProps","data"],data(){return{ContentWrapper:this.contentWrapper||"div",httpReqsData:{},clicked:!1,builderContext:BuilderContext}},provide(){const e=this;return{[BuilderContext.key]:e.builderContextSignal}},mounted(){(()=>{var n,o;if(isBrowser()){if(isEditing()&&this.$refs.elementRef&&this.$refs.elementRef.dispatchEvent(new CustomEvent("initeditingbldr")),this.builderContextSignal.content&&getDefaultCanTrack(this.canTrack)){const s=(n=this.builderContextSignal.content)==null?void 0:n.testVariationId,i=(o=this.builderContextSignal.content)==null?void 0:o.id,a=this.apiKey;_track({type:"impression",canTrack:!0,contentId:i,apiKey:a,variationId:s!==i?s:void 0})}isPreviewing()&&this.$refs.elementRef&&this.$refs.elementRef.dispatchEvent(new CustomEvent("initpreviewingbldr"))}})(),(()=>{this.apiKey||logger.error("No API key provided to `RenderContent` component. This can cause issues. Please provide an API key using the `apiKey` prop."),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},onUpdateHook4:{handler(){this.data&&this.mergeNewRootState(this.data)},immediate:!0},onUpdateHook5:{handler(){this.locale&&this.mergeNewRootState({locale:this.locale})},immediate:!0}},unmounted(){isBrowser()&&(window.removeEventListener("message",this.processMessage),window.removeEventListener("builder:component:stateChangeListenerActivated",this.emitStateUpdate))},computed:{onUpdateHook0(){return{0:this.content}},onUpdateHook1(){var e,t;return{0:(t=(e=this.builderContextSignal.content)==null?void 0:e.data)==null?void 0:t.jsCode}},onUpdateHook2(){var e,t;return{0:(t=(e=this.builderContextSignal.content)==null?void 0:e.data)==null?void 0:t.httpRequests}},onUpdateHook3(){return{0:this.builderContextSignal.rootState}},onUpdateHook4(){return{0:this.data}},onUpdateHook5(){return{0:this.locale}}},methods:{mergeNewRootState(e){var n,o;const t={...this.builderContextSignal.rootState,...e};this.builderContextSignal.rootSetState?(o=(n=this.builderContextSignal).rootSetState)==null||o.call(n,t):this.builderContextSignal.rootState=t},mergeNewContent(e){var n,o,r,s,i;const t={...this.builderContextSignal.content,...e,data:{...(n=this.builderContextSignal.content)==null?void 0:n.data,...e==null?void 0:e.data},meta:{...(o=this.builderContextSignal.content)==null?void 0:o.meta,...e==null?void 0:e.meta,breakpoints:((r=e==null?void 0:e.meta)==null?void 0:r.breakpoints)||((i=(s=this.builderContextSignal.content)==null?void 0:s.meta)==null?void 0:i.breakpoints)}};this.builderContextSignal.content=t},processMessage(e){return createEditorListener({model:this.model,trustedHosts:this.trustedHosts,callbacks:{configureSdk:t=>{var r;const{breakpoints:n,contentId:o}=t;!o||o!==((r=this.builderContextSignal.content)==null?void 0:r.id)||n&&this.mergeNewContent({meta:{breakpoints:n}})},animation:t=>{triggerAnimation(t)},contentUpdate:t=>{this.mergeNewContent(t)}}})(e)},evaluateJsCode(){var t,n;const e=(n=(t=this.builderContextSignal.content)==null?void 0:t.data)==null?void 0:n.jsCode;e&&evaluate({code:e,context:this.context||{},localState:void 0,rootState:this.builderContextSignal.rootState,rootSetState:this.builderContextSignal.rootSetState,enableCache:!1})},onClick(e){var t,n;if(this.builderContextSignal.content){const o=(t=this.builderContextSignal.content)==null?void 0:t.testVariationId,r=(n=this.builderContextSignal.content)==null?void 0:n.id;_track({type:"click",canTrack:getDefaultCanTrack(this.canTrack),contentId:r,apiKey:this.apiKey,variationId:o!==r?o:void 0,...getInteractionPropertiesForEvent(e),unique:!this.clicked})}this.clicked||(this.clicked=!0)},evalExpression(e){return e.replace(/{{([^}]+)}}/g,(t,n)=>String(evaluate({code:n,context:this.context||{},localState:void 0,rootState:this.builderContextSignal.rootState,rootSetState:this.builderContextSignal.rootSetState,enableCache:!0})))},handleRequest({url:e,key:t}){fetch$1(e).then(n=>n.json()).then(n=>{var r,s;const o={...this.builderContextSignal.rootState,[t]:n};(s=(r=this.builderContextSignal).rootSetState)==null||s.call(r,o),this.httpReqsData[t]=!0}).catch(n=>{console.error("error fetching dynamic data",e,n)})},runHttpRequests(){var t,n;const e=((n=(t=this.builderContextSignal.content)==null?void 0:t.data)==null?void 0:n.httpRequests)??{};Object.entries(e).forEach(([o,r])=>{if(r&&(!this.httpReqsData[o]||isEditing())){const s=this.evalExpression(r);this.handleRequest({url:s,key:o})}})},emitStateUpdate(){isEditing()&&window.dispatchEvent(new CustomEvent("builder:component:stateChange",{detail:{state:fastClone(this.builderContextSignal.rootState),ref:{name:this.model}}}))},elementRef_onIniteditingbldr(e){window.addEventListener("message",this.processMessage),registerInsertMenu(),setupBrowserForEditing({...this.locale?{locale:this.locale}:{},...this.enrich?{enrich:this.enrich}:{},...this.trustedHosts?{trustedHosts:this.trustedHosts}:{}}),Object.values(this.builderContextSignal.componentInfos).forEach(t=>{var o;const n=createRegisterComponentMessage(t);(o=window.parent)==null||o.postMessage(n,"*")}),window.addEventListener("builder:component:stateChangeListenerActivated",this.emitStateUpdate)},elementRef_onInitpreviewingbldr(e){const t=new URL(location.href).searchParams,n=t.get("builder.preview"),o=t.get(`builder.preview.${n}`),r=t.get("apiKey")||t.get("builder.space");n===this.model&&r===this.apiKey&&(!this.content||o===this.content.id)&&fetchOneEntry({model:this.model,apiKey:this.apiKey,apiVersion:this.builderContextSignal.apiVersion}).then(s=>{s&&this.mergeNewContent(s)})}}});function _sfc_render$4(e,t,n,o,r,s){var i,a,l;return e.builderContextSignal.content?(vue.openBlock(),vue.createBlock(vue.resolveDynamicComponent(e.ContentWrapper),vue.mergeProps({key:0,ref:"elementRef",onClick:c=>e.onClick(c),"builder-content-id":(i=e.builderContextSignal.content)==null?void 0:i.id,"builder-model":e.model,class:`variant-${((a=e.content)==null?void 0:a.testVariationId)||((l=e.content)==null?void 0:l.id)}`,onIniteditingbldr:c=>e.elementRef_onIniteditingbldr(c),onInitpreviewingbldr:c=>e.elementRef_onInitpreviewingbldr(c)},{...e.showContent?{}:{hidden:!0,"aria-hidden":!0},...e.contentWrapperProps}),{default:vue.withCtx(()=>[vue.renderSlot(e.$slots,"default")]),_:3},16,["onClick","builder-content-id","builder-model","class","onIniteditingbldr","onInitpreviewingbldr"])):vue.createCommentVNode("",!0)}const EnableEditor=_export_sfc(_sfc_main$4,[["render",_sfc_render$4]]),getCssFromFont=e=>{var s;const t=e.family+(e.kind&&!e.kind.includes("#")?", "+e.kind:""),n=t.split(",")[0],o=e.fileUrl??((s=e==null?void 0:e.files)==null?void 0:s.regular);let r="";if(o&&t&&n&&(r+=`
|
|
171
|
+
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 fetch$1=getFetch();function flatten(e,t=null,n="."){return Object.keys(e).reduce((o,r)=>{const s=e[r],i=[t,r].filter(Boolean).join(n);return[typeof s=="object",s!==null,!(Array.isArray(s)&&s.length===0)].every(Boolean)?{...o,...flatten(s,i,n)}:{...o,[i]:s}},{})}const DEFAULT_API_VERSION="v3",BUILDER_SEARCHPARAMS_PREFIX="builder.",BUILDER_OPTIONS_PREFIX="options.",getBuilderSearchParams=e=>{if(!e)return{};const t=normalizeSearchParams(e),n={};return Object.keys(t).forEach(o=>{if(o.startsWith(BUILDER_SEARCHPARAMS_PREFIX)){const r=o.replace(BUILDER_SEARCHPARAMS_PREFIX,"").replace(BUILDER_OPTIONS_PREFIX,"");n[r]=t[o]}}),n},getBuilderSearchParamsFromWindow=()=>{if(!isBrowser())return{};const e=new URLSearchParams(window.location.search);return getBuilderSearchParams(e)},isPositiveNumber=e=>typeof e=="number"&&!isNaN(e)&&e>=0,generateContentUrl=e=>{const{limit:t=30,userAttributes:n,query:o,model:r,apiKey:s,enrich:i,locale:a,apiVersion:l=DEFAULT_API_VERSION,fields:c,omit:p,offset:u,cacheSeconds:d,staleCacheSeconds:f,sort:m,includeUnpublished:g}=e;if(!s)throw new Error("Missing API key");if(!["v3"].includes(l))throw new Error(`Invalid apiVersion: expected 'v3', received '${l}'`);const y=t!==1,h=new URL(`https://cdn.builder.io/api/${l}/content/${r}`);if(h.searchParams.set("apiKey",s),h.searchParams.set("limit",String(t)),h.searchParams.set("noTraverse",String(y)),h.searchParams.set("includeRefs",String(!0)),a&&h.searchParams.set("locale",a),i&&h.searchParams.set("enrich",String(i)),h.searchParams.set("omit",p||"meta.componentsUsed"),c&&h.searchParams.set("fields",c),Number.isFinite(u)&&u>-1&&h.searchParams.set("offset",String(Math.floor(u))),typeof g=="boolean"&&h.searchParams.set("includeUnpublished",String(g)),d&&isPositiveNumber(d)&&h.searchParams.set("cacheSeconds",String(d)),f&&isPositiveNumber(f)&&h.searchParams.set("staleCacheSeconds",String(f)),m){const v=flatten({sort:m});for(const k in v)h.searchParams.set(k,JSON.stringify(v[k]))}const I={...getBuilderSearchParamsFromWindow(),...normalizeSearchParams(e.options||{})},C=flatten(I);for(const v in C)h.searchParams.set(v,String(C[v]));if(n&&h.searchParams.set("userAttributes",JSON.stringify(n)),o){const v=flatten({query:o});for(const k in v)h.searchParams.set(k,JSON.stringify(v[k]))}return h},checkContentHasResults=e=>"results"in e;async function fetchOneEntry(e){const t=await fetchEntries({...e,limit:1});return t&&t[0]||null}const _fetchContent=async e=>{const t=generateContentUrl(e);return await(await(e.fetch??fetch$1)(t.href,e.fetchOptions)).json()},_processContentResult=async(e,t,n=generateContentUrl(e))=>{const o=getDefaultCanTrack(e.canTrack);if(n.search.includes("preview="),!o||!(isBrowser()||TARGET==="reactNative"))return t.results;try{const r=[];for(const s of t.results)r.push(await handleABTesting({item:s,canTrack:o}));t.results=r}catch(r){logger.error("Could not process A/B tests. ",r)}return t.results};async function fetchEntries(e){try{const t=generateContentUrl(e),n=await _fetchContent(e);return checkContentHasResults(n)?_processContentResult(e,n):(logger.error("Error fetching data. ",{url:t,content:n,options:e}),null)}catch(t){return logger.error("Error fetching data. ",t),null}}function isPreviewing(e){if(!isBrowser())return!1;const t=getSearchString(e||window.location.search);return isEditing(t)?!1:t.indexOf("builder.preview=")!==-1}function uuidv4(){return"xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx".replace(/[xy]/g,function(e){const t=Math.random()*16|0;return(e=="x"?t:t&3|8).toString(16)})}function uuid(){return uuidv4().replace(/-/g,"")}const SESSION_LOCAL_STORAGE_KEY="builderSessionId",getSessionId=async({canTrack:e})=>{if(!e)return;const t=await getCookie({name:SESSION_LOCAL_STORAGE_KEY,canTrack:e});if(checkIsDefined(t))return t;{const n=createSessionId();return setSessionId({id:n,canTrack:e}),n}},createSessionId=()=>uuid(),setSessionId=({id:e,canTrack:t})=>setCookie({name:SESSION_LOCAL_STORAGE_KEY,value:e,canTrack:t}),getLocalStorage=()=>isBrowser()&&typeof localStorage<"u"?localStorage:void 0,getLocalStorageItem=({key:e,canTrack:t})=>{var n;try{return t?(n=getLocalStorage())==null?void 0:n.getItem(e):void 0}catch(o){console.debug("[LocalStorage] GET error: ",o);return}},setLocalStorageItem=({key:e,canTrack:t,value:n})=>{var o;try{t&&((o=getLocalStorage())==null||o.setItem(e,n))}catch(r){console.debug("[LocalStorage] SET error: ",r)}},VISITOR_LOCAL_STORAGE_KEY="builderVisitorId",getVisitorId=({canTrack:e})=>{if(!e)return;const t=getLocalStorageItem({key:VISITOR_LOCAL_STORAGE_KEY,canTrack:e});if(checkIsDefined(t))return t;{const n=createVisitorId();return setVisitorId({id:n,canTrack:e}),n}},createVisitorId=()=>uuid(),setVisitorId=({id:e,canTrack:t})=>setLocalStorageItem({key:VISITOR_LOCAL_STORAGE_KEY,value:e,canTrack:t}),getTrackingEventData=async({canTrack:e})=>{if(!e)return{visitorId:void 0,sessionId:void 0};const t=await getSessionId({canTrack:e}),n=getVisitorId({canTrack:e});return{sessionId:t,visitorId:n}},createEvent=async({type:e,canTrack:t,apiKey:n,metadata:o,...r})=>({type:e,data:{...r,metadata:{url:location.href,...o},...await getTrackingEventData({canTrack:t}),userAttributes:getUserAttributes(),ownerId:n}});async function _track(e){if(!e.apiKey){logger.error("Missing API key for track call. Please provide your API key.");return}if(e.canTrack&&!isEditing()&&(isBrowser()||TARGET==="reactNative"))return fetch("https://cdn.builder.io/api/v1/track",{method:"POST",body:JSON.stringify({events:[await createEvent(e)]}),headers:{"content-type":"application/json"},mode:"cors"}).catch(t=>{console.error("Failed to track: ",t)})}const track=e=>_track({...e,canTrack:!0});function round(e){return Math.round(e*1e3)/1e3}const findParentElement=(e,t,n=!0)=>{if(!(e instanceof HTMLElement))return null;let o=n?e:e.parentElement;do{if(!o)return null;if(t(o))return o}while(o=o.parentElement);return null},findBuilderParent=e=>findParentElement(e,t=>{const n=t.getAttribute("builder-id")||t.id;return(n==null?void 0:n.indexOf("builder-"))===0}),computeOffset=({event:e,target:t})=>{const n=t.getBoundingClientRect(),o=e.clientX-n.left,r=e.clientY-n.top,s=round(o/n.width),i=round(r/n.height);return{x:s,y:i}},getInteractionPropertiesForEvent=e=>{const t=e.target,n=t&&findBuilderParent(t),o=(n==null?void 0:n.getAttribute("builder-id"))||(n==null?void 0:n.id);return{targetBuilderElement:o||void 0,metadata:{targetOffset:t?computeOffset({event:e,target:t}):void 0,builderTargetOffset:n?computeOffset({event:e,target:n}):void 0,builderElementIndex:n&&o?[].slice.call(document.getElementsByClassName(o)).indexOf(n):void 0}}},DEFAULT_TRUSTED_HOSTS=["*.beta.builder.io","beta.builder.io","builder.io","localhost","qa.builder.io"];function isFromTrustedHost(e,t){const n=new URL(t.origin),o=n.hostname;return(e||DEFAULT_TRUSTED_HOSTS).findIndex(r=>r.startsWith("*.")?o.endsWith(r.slice(1)):r===o)>-1}const SDK_VERSION="1.0.15",registry={};function register(e,t){let n=registry[e];if(n||(n=registry[e]=[]),n.push(t),isBrowser()){const o={type:"builder.register",data:{type:e,info:t}};try{parent.postMessage(o,"*"),parent!==window&&window.postMessage(o,"*")}catch(r){console.debug("Could not postmessage",r)}}}const registerInsertMenu=()=>{register("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 isSetupForEditing=!1;const setupBrowserForEditing=(e={})=>{var t,n;isSetupForEditing||(isSetupForEditing=!0,isBrowser()&&((t=window.parent)==null||t.postMessage({type:"builder.sdkInfo",data:{target:TARGET,version:SDK_VERSION,supportsPatchUpdates:!1,supportsAddBlockScoping:!0,supportsCustomBreakpoints:!0}},"*"),(n=window.parent)==null||n.postMessage({type:"builder.updateContent",data:{options:e}},"*"),window.addEventListener("message",o=>{var s,i;if(!isFromTrustedHost(e.trustedHosts,o))return;const{data:r}=o;if(r!=null&&r.type)switch(r.type){case"builder.evaluate":{const a=r.data.text,l=r.data.arguments||[],c=r.data.id,p=new Function(a);let u,d=null;try{u=p.apply(null,l)}catch(f){d=f}d?(s=window.parent)==null||s.postMessage({type:"builder.evaluateError",data:{id:c,error:d.message}},"*"):u&&typeof u.then=="function"?u.then(f=>{var m;(m=window.parent)==null||m.postMessage({type:"builder.evaluateResult",data:{id:c,result:f}},"*")}).catch(console.error):(i=window.parent)==null||i.postMessage({type:"builder.evaluateResult",data:{result:u,id:c}},"*");break}}})))},createEditorListener=({model:e,trustedHosts:t,callbacks:n})=>o=>{if(!isFromTrustedHost(t,o))return;const{data:r}=o;if(r)switch(r.type){case"builder.configureSdk":{n.configureSdk(r.data);break}case"builder.triggerAnimation":{n.animation(r.data);break}case"builder.contentUpdate":{const s=r.data,i=s.key||s.alias||s.entry||s.modelName,a=s.data;i===e&&n.contentUpdate(a);break}}},subscribeToEditor=(e,t,n)=>{if(!isBrowser)return logger.warn("`subscribeToEditor` only works in the browser. It currently seems to be running on the server."),()=>{};setupBrowserForEditing();const o=createEditorListener({callbacks:{contentUpdate:t,animation:()=>{},configureSdk:()=>{}},model:e,trustedHosts:n==null?void 0:n.trustedHosts});return window.addEventListener("message",o),()=>{window.removeEventListener("message",o)}},_sfc_main$4=vue.defineComponent({name:"enable-editor",props:["builderContextSignal","contentWrapper","model","trustedHosts","context","canTrack","apiKey","locale","enrich","content","showContent","contentWrapperProps","data"],data(){return{ContentWrapper:this.contentWrapper||"div",httpReqsData:{},clicked:!1,builderContext:BuilderContext}},provide(){const e=this;return{[BuilderContext.key]:e.builderContextSignal}},mounted(){(()=>{var n,o;if(isBrowser()){if(isEditing()&&this.$refs.elementRef&&this.$refs.elementRef.dispatchEvent(new CustomEvent("initeditingbldr")),this.builderContextSignal.content&&getDefaultCanTrack(this.canTrack)){const s=(n=this.builderContextSignal.content)==null?void 0:n.testVariationId,i=(o=this.builderContextSignal.content)==null?void 0:o.id,a=this.apiKey;_track({type:"impression",canTrack:!0,contentId:i,apiKey:a,variationId:s!==i?s:void 0})}isPreviewing()&&this.$refs.elementRef&&this.$refs.elementRef.dispatchEvent(new CustomEvent("initpreviewingbldr"))}})(),(()=>{this.apiKey||logger.error("No API key provided to `RenderContent` component. This can cause issues. Please provide an API key using the `apiKey` prop."),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},onUpdateHook4:{handler(){this.data&&this.mergeNewRootState(this.data)},immediate:!0},onUpdateHook5:{handler(){this.locale&&this.mergeNewRootState({locale:this.locale})},immediate:!0}},unmounted(){isBrowser()&&(window.removeEventListener("message",this.processMessage),window.removeEventListener("builder:component:stateChangeListenerActivated",this.emitStateUpdate))},computed:{onUpdateHook0(){return{0:this.content}},onUpdateHook1(){var e,t;return{0:(t=(e=this.builderContextSignal.content)==null?void 0:e.data)==null?void 0:t.jsCode}},onUpdateHook2(){var e,t;return{0:(t=(e=this.builderContextSignal.content)==null?void 0:e.data)==null?void 0:t.httpRequests}},onUpdateHook3(){return{0:this.builderContextSignal.rootState}},onUpdateHook4(){return{0:this.data}},onUpdateHook5(){return{0:this.locale}}},methods:{mergeNewRootState(e){var n,o;const t={...this.builderContextSignal.rootState,...e};this.builderContextSignal.rootSetState?(o=(n=this.builderContextSignal).rootSetState)==null||o.call(n,t):this.builderContextSignal.rootState=t},mergeNewContent(e){var n,o,r,s,i;const t={...this.builderContextSignal.content,...e,data:{...(n=this.builderContextSignal.content)==null?void 0:n.data,...e==null?void 0:e.data},meta:{...(o=this.builderContextSignal.content)==null?void 0:o.meta,...e==null?void 0:e.meta,breakpoints:((r=e==null?void 0:e.meta)==null?void 0:r.breakpoints)||((i=(s=this.builderContextSignal.content)==null?void 0:s.meta)==null?void 0:i.breakpoints)}};this.builderContextSignal.content=t},processMessage(e){return createEditorListener({model:this.model,trustedHosts:this.trustedHosts,callbacks:{configureSdk:t=>{var r;const{breakpoints:n,contentId:o}=t;!o||o!==((r=this.builderContextSignal.content)==null?void 0:r.id)||n&&this.mergeNewContent({meta:{breakpoints:n}})},animation:t=>{triggerAnimation(t)},contentUpdate:t=>{this.mergeNewContent(t)}}})(e)},evaluateJsCode(){var t,n;const e=(n=(t=this.builderContextSignal.content)==null?void 0:t.data)==null?void 0:n.jsCode;e&&evaluate({code:e,context:this.context||{},localState:void 0,rootState:this.builderContextSignal.rootState,rootSetState:this.builderContextSignal.rootSetState,enableCache:!1})},onClick(e){var t,n;if(this.builderContextSignal.content){const o=(t=this.builderContextSignal.content)==null?void 0:t.testVariationId,r=(n=this.builderContextSignal.content)==null?void 0:n.id;_track({type:"click",canTrack:getDefaultCanTrack(this.canTrack),contentId:r,apiKey:this.apiKey,variationId:o!==r?o:void 0,...getInteractionPropertiesForEvent(e),unique:!this.clicked})}this.clicked||(this.clicked=!0)},evalExpression(e){return e.replace(/{{([^}]+)}}/g,(t,n)=>String(evaluate({code:n,context:this.context||{},localState:void 0,rootState:this.builderContextSignal.rootState,rootSetState:this.builderContextSignal.rootSetState,enableCache:!0})))},handleRequest({url:e,key:t}){fetch$1(e).then(n=>n.json()).then(n=>{var r,s;const o={...this.builderContextSignal.rootState,[t]:n};(s=(r=this.builderContextSignal).rootSetState)==null||s.call(r,o),this.httpReqsData[t]=!0}).catch(n=>{console.error("error fetching dynamic data",e,n)})},runHttpRequests(){var t,n;const e=((n=(t=this.builderContextSignal.content)==null?void 0:t.data)==null?void 0:n.httpRequests)??{};Object.entries(e).forEach(([o,r])=>{if(r&&(!this.httpReqsData[o]||isEditing())){const s=this.evalExpression(r);this.handleRequest({url:s,key:o})}})},emitStateUpdate(){isEditing()&&window.dispatchEvent(new CustomEvent("builder:component:stateChange",{detail:{state:fastClone(this.builderContextSignal.rootState),ref:{name:this.model}}}))},elementRef_onIniteditingbldr(e){window.addEventListener("message",this.processMessage),registerInsertMenu(),setupBrowserForEditing({...this.locale?{locale:this.locale}:{},...this.enrich?{enrich:this.enrich}:{},...this.trustedHosts?{trustedHosts:this.trustedHosts}:{}}),Object.values(this.builderContextSignal.componentInfos).forEach(t=>{var o;const n=createRegisterComponentMessage(t);(o=window.parent)==null||o.postMessage(n,"*")}),window.addEventListener("builder:component:stateChangeListenerActivated",this.emitStateUpdate)},elementRef_onInitpreviewingbldr(e){const t=new URL(location.href).searchParams,n=t.get("builder.preview"),o=t.get(`builder.preview.${n}`),r=t.get("apiKey")||t.get("builder.space");n===this.model&&r===this.apiKey&&(!this.content||o===this.content.id)&&fetchOneEntry({model:this.model,apiKey:this.apiKey,apiVersion:this.builderContextSignal.apiVersion}).then(s=>{s&&this.mergeNewContent(s)})}}});function _sfc_render$4(e,t,n,o,r,s){var i,a,l;return e.builderContextSignal.content?(vue.openBlock(),vue.createBlock(vue.resolveDynamicComponent(e.ContentWrapper),vue.mergeProps({key:0,ref:"elementRef",onClick:c=>e.onClick(c),"builder-content-id":(i=e.builderContextSignal.content)==null?void 0:i.id,"builder-model":e.model,class:`variant-${((a=e.content)==null?void 0:a.testVariationId)||((l=e.content)==null?void 0:l.id)}`,onIniteditingbldr:c=>e.elementRef_onIniteditingbldr(c),onInitpreviewingbldr:c=>e.elementRef_onInitpreviewingbldr(c)},{...e.showContent?{}:{hidden:!0,"aria-hidden":!0},...e.contentWrapperProps}),{default:vue.withCtx(()=>[vue.renderSlot(e.$slots,"default")]),_:3},16,["onClick","builder-content-id","builder-model","class","onIniteditingbldr","onInitpreviewingbldr"])):vue.createCommentVNode("",!0)}const EnableEditor=_export_sfc(_sfc_main$4,[["render",_sfc_render$4]]),getCssFromFont=e=>{var s;const t=e.family+(e.kind&&!e.kind.includes("#")?", "+e.kind:""),n=t.split(",")[0],o=e.fileUrl??((s=e==null?void 0:e.files)==null?void 0:s.regular);let r="";if(o&&t&&n&&(r+=`
|
|
172
172
|
@font-face {
|
|
173
173
|
font-family: "${t}";
|
|
174
174
|
src: local("${n}"), url('${o}') format('woff2');
|
|
@@ -696,22 +696,22 @@ const getComponent = ({
|
|
|
696
696
|
},
|
|
697
697
|
block: o
|
|
698
698
|
}));
|
|
699
|
-
}, BlockStyles = () => import("./block-styles-
|
|
699
|
+
}, BlockStyles = () => import("./block-styles-rh7tEoHf.js").then((e) => e.default).catch((e) => {
|
|
700
700
|
throw console.error(
|
|
701
701
|
"Error while attempting to dynamically import component BlockStyles at ./components/block-styles.vue",
|
|
702
702
|
e
|
|
703
703
|
), e;
|
|
704
|
-
}), BlockWrapper = () => import("./block-wrapper-
|
|
704
|
+
}), BlockWrapper = () => import("./block-wrapper-MpN3sYhf.js").then((e) => e.default).catch((e) => {
|
|
705
705
|
throw console.error(
|
|
706
706
|
"Error while attempting to dynamically import component BlockWrapper at ./components/block-wrapper.vue",
|
|
707
707
|
e
|
|
708
708
|
), e;
|
|
709
|
-
}), ComponentRef = () => import("./component-ref
|
|
709
|
+
}), ComponentRef = () => import("./component-ref-GxIWocaf.js").then((e) => e.default).catch((e) => {
|
|
710
710
|
throw console.error(
|
|
711
711
|
"Error while attempting to dynamically import component ComponentRef at ./components/component-ref/component-ref.vue",
|
|
712
712
|
e
|
|
713
713
|
), e;
|
|
714
|
-
}), RepeatedBlock = () => import("./repeated-block-
|
|
714
|
+
}), RepeatedBlock = () => import("./repeated-block-XpohtcNq.js").then((e) => e.default).catch((e) => {
|
|
715
715
|
throw console.error(
|
|
716
716
|
"Error while attempting to dynamically import component RepeatedBlock at ./components/repeated-block.vue",
|
|
717
717
|
e
|
|
@@ -3200,7 +3200,7 @@ async function fetchOneEntry(e) {
|
|
|
3200
3200
|
}
|
|
3201
3201
|
const _fetchContent = async (e) => {
|
|
3202
3202
|
const t = generateContentUrl(e);
|
|
3203
|
-
return await (await fetch$1(t.href)).json();
|
|
3203
|
+
return await (await (e.fetch ?? fetch$1)(t.href, e.fetchOptions)).json();
|
|
3204
3204
|
}, _processContentResult = async (e, t, n = generateContentUrl(e)) => {
|
|
3205
3205
|
const o = getDefaultCanTrack(e.canTrack);
|
|
3206
3206
|
if (n.search.includes("preview="), !o || !(isBrowser() || TARGET === "reactNative"))
|
|
@@ -3425,7 +3425,7 @@ function isFromTrustedHost(e, t) {
|
|
|
3425
3425
|
const n = new URL(t.origin), o = n.hostname;
|
|
3426
3426
|
return (e || DEFAULT_TRUSTED_HOSTS).findIndex((r) => r.startsWith("*.") ? o.endsWith(r.slice(1)) : r === o) > -1;
|
|
3427
3427
|
}
|
|
3428
|
-
const SDK_VERSION = "1.0.
|
|
3428
|
+
const SDK_VERSION = "1.0.15", registry = {};
|
|
3429
3429
|
function register(e, t) {
|
|
3430
3430
|
let n = registry[e];
|
|
3431
3431
|
if (n || (n = registry[e] = []), n.push(t), isBrowser()) {
|
package/lib/node/index.cjs
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("./index-
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("./index-Oh0XoTAq.cjs");exports.Blocks=e.Blocks;exports.Button=e.Button;exports.Columns=e.Columns;exports.Content=e.ContentVariants;exports.Fragment=e.Fragment;exports.Image=e.Image;exports.Section=e.Section;exports.Symbol=e.Symbol;exports.Text=e.Text;exports.Video=e.Video;exports._processContentResult=e._processContentResult;exports.createRegisterComponentMessage=e.createRegisterComponentMessage;exports.fetchBuilderProps=e.fetchBuilderProps;exports.fetchEntries=e.fetchEntries;exports.fetchOneEntry=e.fetchOneEntry;exports.getBuilderSearchParams=e.getBuilderSearchParams;exports.isEditing=e.isEditing;exports.isPreviewing=e.isPreviewing;exports.register=e.register;exports.setEditorSettings=e.setEditorSettings;exports.subscribeToEditor=e.subscribeToEditor;exports.track=e.track;
|
package/lib/node/index.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { n as a, k as t, C as r, o, F as i, I as n, S as c, l as g, m, V as l, z as u, r as d, y as p, A as C, D as E, u as S, p as f, q as h, s as B, t as b, x as k, v as x } from "./index-
|
|
1
|
+
import { n as a, k as t, C as r, o, F as i, I as n, S as c, l as g, m, V as l, z as u, r as d, y as p, A as C, D as E, u as S, p as f, q as h, s as B, t as b, x as k, v as x } from "./index-tdTNLVlt.js";
|
|
2
2
|
export {
|
|
3
3
|
a as Blocks,
|
|
4
4
|
t as Button,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const o=require("vue"),t=require("./index-
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const o=require("vue"),t=require("./index-Oh0XoTAq.cjs"),r=()=>Promise.resolve().then(()=>require("./index-Oh0XoTAq.cjs")).then(e=>e.block).then(e=>e.default).catch(e=>{throw console.error("Error while attempting to dynamically import component Block at ../block.vue",e),e}),c=o.defineComponent({name:"repeated-block",components:{Block:o.defineAsyncComponent(r)},props:["repeatContext","block","registeredComponents","linkComponent"],data(){return{store:this.repeatContext}},provide(){const e=this;return{[t.BuilderContext.key]:e.store}}});function s(e,i,p,a,m,d){const n=o.resolveComponent("block");return o.openBlock(),o.createBlock(n,{block:e.block,context:e.store,registeredComponents:e.registeredComponents,linkComponent:e.linkComponent},null,8,["block","context","registeredComponents","linkComponent"])}const l=t._export_sfc(c,[["render",s]]);exports.default=l;
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { defineComponent as t, defineAsyncComponent as n, resolveComponent as r, openBlock as c, createBlock as p } from "vue";
|
|
2
|
-
import { j as s, e as l } from "./index-
|
|
3
|
-
const i = () => import("./index-
|
|
2
|
+
import { j as s, e as l } from "./index-tdTNLVlt.js";
|
|
3
|
+
const i = () => import("./index-tdTNLVlt.js").then((e) => e.G).then((e) => e.default).catch((e) => {
|
|
4
4
|
throw console.error(
|
|
5
5
|
"Error while attempting to dynamically import component Block at ../block.vue",
|
|
6
6
|
e
|
package/package.json
CHANGED
|
@@ -1,131 +0,0 @@
|
|
|
1
|
-
export interface GetContentOptions {
|
|
2
|
-
/** The model to get content for (required) */
|
|
3
|
-
model: string;
|
|
4
|
-
/** Your public API key (required) */
|
|
5
|
-
apiKey: string;
|
|
6
|
-
/** Number of items to fetch. Default is 1 */
|
|
7
|
-
limit?: number;
|
|
8
|
-
/**
|
|
9
|
-
* Use to specify an offset for pagination of results. The default is 0.
|
|
10
|
-
*/
|
|
11
|
-
offset?: number;
|
|
12
|
-
/**
|
|
13
|
-
* User attribute key value pairs to be used for targeting
|
|
14
|
-
* https://www.builder.io/c/docs/custom-targeting-attributes
|
|
15
|
-
*
|
|
16
|
-
* e.g.
|
|
17
|
-
* ```js
|
|
18
|
-
* userAttributes: {
|
|
19
|
-
* urlPath: '/',
|
|
20
|
-
* returnVisitor: true,
|
|
21
|
-
* device: 'mobile'
|
|
22
|
-
* }
|
|
23
|
-
* ```
|
|
24
|
-
*/
|
|
25
|
-
userAttributes?: (Record<string, any> & {
|
|
26
|
-
urlPath?: string;
|
|
27
|
-
}) | null;
|
|
28
|
-
/**
|
|
29
|
-
* Mongodb style query of your data. E.g.:
|
|
30
|
-
*
|
|
31
|
-
* ```js
|
|
32
|
-
* query: {
|
|
33
|
-
* id: 'abc123',
|
|
34
|
-
* data: {
|
|
35
|
-
* myCustomField: { $gt: 20 },
|
|
36
|
-
* }
|
|
37
|
-
* }
|
|
38
|
-
* ```
|
|
39
|
-
*
|
|
40
|
-
* See more info on MongoDB's query operators and format.
|
|
41
|
-
*
|
|
42
|
-
* @see {@link https://docs.mongodb.com/manual/reference/operator/query/}
|
|
43
|
-
*/
|
|
44
|
-
query?: Record<string, any>;
|
|
45
|
-
/**
|
|
46
|
-
* Any other API options.
|
|
47
|
-
* Accepts both a key/value object or a `URLSearchParams` instance
|
|
48
|
-
* */
|
|
49
|
-
options?: Record<string, any> | URLSearchParams;
|
|
50
|
-
/**
|
|
51
|
-
* If set to `false`, it will not use cookies to target content. Therefore, A/B Testing will be disabled and
|
|
52
|
-
* only the default variation will be returned to every user.
|
|
53
|
-
*
|
|
54
|
-
* Defaults to `true`.
|
|
55
|
-
*/
|
|
56
|
-
canTrack?: boolean;
|
|
57
|
-
/**
|
|
58
|
-
* Include multilevel references in the response.
|
|
59
|
-
*/
|
|
60
|
-
enrich?: boolean;
|
|
61
|
-
/**
|
|
62
|
-
* If provided, the API will auto-resolve localized objects to the value of this `locale` key.
|
|
63
|
-
*/
|
|
64
|
-
locale?: string;
|
|
65
|
-
/**
|
|
66
|
-
* If provided, sets the Builder API version used to fetch content.
|
|
67
|
-
*
|
|
68
|
-
* Currently, the only available API version is `v3`.
|
|
69
|
-
*/
|
|
70
|
-
apiVersion?: 'v3';
|
|
71
|
-
/**
|
|
72
|
-
* Only include these fields.
|
|
73
|
-
* Note: 'omit' takes precedence over 'fields'
|
|
74
|
-
*
|
|
75
|
-
* @example
|
|
76
|
-
* ```
|
|
77
|
-
* fields: 'id, name, data.customField'
|
|
78
|
-
* ```
|
|
79
|
-
*/
|
|
80
|
-
fields?: string;
|
|
81
|
-
/**
|
|
82
|
-
* Omit only these fields.
|
|
83
|
-
* Note: 'omit' takes precedence over 'fields'
|
|
84
|
-
*
|
|
85
|
-
* @example
|
|
86
|
-
* ```
|
|
87
|
-
* omit: 'data.bigField,data.blocks'
|
|
88
|
-
* ```
|
|
89
|
-
*/
|
|
90
|
-
omit?: string;
|
|
91
|
-
/**
|
|
92
|
-
* Seconds to cache content. Sets the max-age of the cache-control header
|
|
93
|
-
* response header.
|
|
94
|
-
*
|
|
95
|
-
* Use a higher value for better performance, lower for content that will change more frequently
|
|
96
|
-
*
|
|
97
|
-
* @see {@link https://www.builder.io/c/docs/query-api#__next:~:text=%26includeRefs%3Dtrue-,cacheSeconds,-No}
|
|
98
|
-
*/
|
|
99
|
-
cacheSeconds?: number;
|
|
100
|
-
/**
|
|
101
|
-
* Builder.io uses stale-while-revalidate caching at the CDN level. This means we always serve
|
|
102
|
-
* from edge cache and update caches in the background for maximum possible performance. This also
|
|
103
|
-
* means that the more frequently content is requested, the more fresh it will be. The longest we
|
|
104
|
-
* will ever hold something in stale cache is 1 day by default, and you can set this to be shorter
|
|
105
|
-
* yourself as well. We suggest keeping this high unless you have content that must change rapidly
|
|
106
|
-
* and gets very little traffic.
|
|
107
|
-
*
|
|
108
|
-
* @see {@link https://www.fastly.com/blog/prevent-application-network-instability-serve-stale-content}
|
|
109
|
-
*/
|
|
110
|
-
staleCacheSeconds?: number;
|
|
111
|
-
/**
|
|
112
|
-
* Property to order results by.
|
|
113
|
-
* Use 1 for ascending and -1 for descending.
|
|
114
|
-
*
|
|
115
|
-
* The key is what you're sorting on, so the following example sorts by createdDate
|
|
116
|
-
* and because the value is 1, the sort is ascending.
|
|
117
|
-
*
|
|
118
|
-
* @example
|
|
119
|
-
* ```
|
|
120
|
-
* createdDate: 1
|
|
121
|
-
* ```
|
|
122
|
-
*/
|
|
123
|
-
sort?: {
|
|
124
|
-
[key: string]: 1 | -1;
|
|
125
|
-
};
|
|
126
|
-
/**
|
|
127
|
-
* Include content entries in a response that are still in
|
|
128
|
-
* draft mode and un-archived. Default is false.
|
|
129
|
-
*/
|
|
130
|
-
includeUnpublished?: boolean;
|
|
131
|
-
}
|