@builder.io/sdk-vue 2.0.8 → 2.0.13

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.
Files changed (136) hide show
  1. package/lib/browser/block-styles-03Qg_nl9.js +76 -0
  2. package/lib/browser/block-styles-NluRxFx2.cjs +1 -0
  3. package/lib/browser/{block-wrapper-H_K5XgNp.js → block-wrapper-7wDwU1ik.js} +3 -3
  4. package/lib/browser/{block-wrapper-vI9rE_qz.cjs → block-wrapper-ianIz_MG.cjs} +1 -1
  5. package/lib/browser/blocks/accordion/accordion.vue.d.ts +6 -6
  6. package/lib/browser/blocks/button/button.vue.d.ts +3 -3
  7. package/lib/browser/blocks/columns/columns.vue.d.ts +9 -9
  8. package/lib/browser/blocks/form/form/form.vue.d.ts +9 -9
  9. package/lib/browser/blocks/form/input/input.vue.d.ts +3 -3
  10. package/lib/browser/blocks/form/select/select.vue.d.ts +3 -3
  11. package/lib/browser/blocks/image/image.vue.d.ts +3 -3
  12. package/lib/browser/blocks/img/img.vue.d.ts +3 -3
  13. package/lib/browser/blocks/section/section.vue.d.ts +3 -3
  14. package/lib/browser/blocks/slot/slot.vue.d.ts +5 -2
  15. package/lib/browser/blocks/symbol/symbol.vue.d.ts +9 -9
  16. package/lib/browser/blocks/tabs/tabs.vue.d.ts +3 -3
  17. package/lib/browser/blocks/video/video.vue.d.ts +6 -6
  18. package/lib/browser/{component-ref-k4s0KRD5.cjs → component-ref-MlfJPaLv.cjs} +1 -1
  19. package/lib/browser/{component-ref-ULmI7Z-4.js → component-ref-yQ6WDHbR.js} +2 -2
  20. package/lib/browser/components/block/block.helpers.d.ts +1 -2
  21. package/lib/browser/components/block/block.vue.d.ts +10 -5
  22. package/lib/browser/components/block/components/block-styles.vue.d.ts +1 -1
  23. package/lib/browser/components/block/components/component-ref/component-ref.vue.d.ts +6 -6
  24. package/lib/browser/components/block/components/repeated-block.vue.d.ts +3 -3
  25. package/lib/browser/components/blocks/blocks.vue.d.ts +3 -3
  26. package/lib/browser/components/content/components/enable-editor.vue.d.ts +12 -12
  27. package/lib/browser/components/content/content.vue.d.ts +18 -18
  28. package/lib/browser/components/content-variants/content-variants.vue.d.ts +12 -12
  29. package/lib/browser/components/inlined-styles.vue.d.ts +3 -3
  30. package/lib/browser/constants/sdk-version.d.ts +1 -1
  31. package/lib/browser/functions/evaluate/node-runtime/init.d.ts +1 -0
  32. package/lib/browser/functions/get-processed-block.d.ts +1 -0
  33. package/lib/browser/functions/register-component.d.ts +1 -1
  34. package/lib/browser/{get-block-properties-JqBN5X7_.cjs → get-block-properties-Cj0ih41l.cjs} +1 -1
  35. package/lib/browser/{get-block-properties-IjhCV9z_.js → get-block-properties-ROTqTJZ3.js} +6 -6
  36. package/lib/browser/{index-wQ1FWMHJ.js → index-3j8dJ25f.js} +1419 -1368
  37. package/lib/browser/index-sPD8fzSJ.cjs +166 -0
  38. package/lib/browser/index.cjs +1 -1
  39. package/lib/browser/index.mjs +3 -3
  40. package/lib/browser/{repeated-block-UKWYkgKG.cjs → repeated-block-BBHHbrlK.cjs} +1 -1
  41. package/lib/browser/{repeated-block-Aa1yIQkp.js → repeated-block-_EQDFqYb.js} +2 -2
  42. package/lib/browser/style.css +1 -1
  43. package/lib/edge/block-styles-TkeDyfA0.cjs +1 -0
  44. package/lib/edge/block-styles-mSowNIFi.js +75 -0
  45. package/lib/{node/block-wrapper-QqrLFWp0.cjs → edge/block-wrapper-BxeE3u_2.cjs} +1 -1
  46. package/lib/edge/{block-wrapper-M3goYBkP.js → block-wrapper-EnFwFXwA.js} +3 -3
  47. package/lib/edge/blocks/accordion/accordion.vue.d.ts +6 -6
  48. package/lib/edge/blocks/button/button.vue.d.ts +3 -3
  49. package/lib/edge/blocks/columns/columns.vue.d.ts +9 -9
  50. package/lib/edge/blocks/form/form/form.vue.d.ts +9 -9
  51. package/lib/edge/blocks/form/input/input.vue.d.ts +3 -3
  52. package/lib/edge/blocks/form/select/select.vue.d.ts +3 -3
  53. package/lib/edge/blocks/image/image.vue.d.ts +3 -3
  54. package/lib/edge/blocks/img/img.vue.d.ts +3 -3
  55. package/lib/edge/blocks/section/section.vue.d.ts +3 -3
  56. package/lib/edge/blocks/slot/slot.vue.d.ts +5 -2
  57. package/lib/edge/blocks/symbol/symbol.vue.d.ts +9 -9
  58. package/lib/edge/blocks/tabs/tabs.vue.d.ts +3 -3
  59. package/lib/edge/blocks/video/video.vue.d.ts +6 -6
  60. package/lib/{node/component-ref-NW-UB2pJ.cjs → edge/component-ref-XzuZ1Hfj.cjs} +1 -1
  61. package/lib/{node/component-ref-hI62zIZA.js → edge/component-ref-t51XeINm.js} +2 -2
  62. package/lib/edge/components/block/block.helpers.d.ts +1 -2
  63. package/lib/edge/components/block/block.vue.d.ts +10 -5
  64. package/lib/edge/components/block/components/block-styles.vue.d.ts +1 -1
  65. package/lib/edge/components/block/components/component-ref/component-ref.vue.d.ts +6 -6
  66. package/lib/edge/components/block/components/repeated-block.vue.d.ts +3 -3
  67. package/lib/edge/components/blocks/blocks.vue.d.ts +3 -3
  68. package/lib/edge/components/content/components/enable-editor.vue.d.ts +12 -12
  69. package/lib/edge/components/content/content.vue.d.ts +18 -18
  70. package/lib/edge/components/content-variants/content-variants.vue.d.ts +12 -12
  71. package/lib/edge/components/inlined-styles.vue.d.ts +3 -3
  72. package/lib/edge/constants/sdk-version.d.ts +1 -1
  73. package/lib/edge/functions/evaluate/node-runtime/init.d.ts +1 -0
  74. package/lib/edge/functions/get-processed-block.d.ts +1 -0
  75. package/lib/edge/functions/register-component.d.ts +1 -1
  76. package/lib/edge/{get-block-properties-zzQ9xBK7.js → get-block-properties-Hs6W4UwL.js} +4 -4
  77. package/lib/edge/{get-block-properties-N40WxPwN.cjs → get-block-properties-MnsKwX8B.cjs} +1 -1
  78. package/lib/edge/{index-yARC0VI1.js → index-C-mI6Ai4.js} +1809 -1758
  79. package/lib/edge/index-u68L80fc.cjs +186 -0
  80. package/lib/edge/index.cjs +1 -1
  81. package/lib/edge/index.mjs +4 -4
  82. package/lib/edge/{repeated-block-IdOOvFG5.js → repeated-block-P7xKkVOb.js} +13 -13
  83. package/lib/edge/{repeated-block-q6gyu9cH.cjs → repeated-block-cXD1rb5T.cjs} +1 -1
  84. package/lib/edge/style.css +1 -1
  85. package/lib/node/block-styles-TC7FEjXP.js +75 -0
  86. package/lib/node/block-styles-aVTlrIHc.cjs +1 -0
  87. package/lib/{edge/block-wrapper-P5w2jQ_u.cjs → node/block-wrapper-8DA9SdPk.cjs} +1 -1
  88. package/lib/node/{block-wrapper-4h3CaVrk.js → block-wrapper-wULOB3JK.js} +3 -3
  89. package/lib/node/blocks/accordion/accordion.vue.d.ts +6 -6
  90. package/lib/node/blocks/button/button.vue.d.ts +3 -3
  91. package/lib/node/blocks/columns/columns.vue.d.ts +9 -9
  92. package/lib/node/blocks/form/form/form.vue.d.ts +9 -9
  93. package/lib/node/blocks/form/input/input.vue.d.ts +3 -3
  94. package/lib/node/blocks/form/select/select.vue.d.ts +3 -3
  95. package/lib/node/blocks/image/image.vue.d.ts +3 -3
  96. package/lib/node/blocks/img/img.vue.d.ts +3 -3
  97. package/lib/node/blocks/section/section.vue.d.ts +3 -3
  98. package/lib/node/blocks/slot/slot.vue.d.ts +5 -2
  99. package/lib/node/blocks/symbol/symbol.vue.d.ts +9 -9
  100. package/lib/node/blocks/tabs/tabs.vue.d.ts +3 -3
  101. package/lib/node/blocks/video/video.vue.d.ts +6 -6
  102. package/lib/{edge/component-ref-ZtKc8UMX.js → node/component-ref-Tn-Aa9EG.js} +2 -2
  103. package/lib/{edge/component-ref-EPsyn_2c.cjs → node/component-ref-cw1D-ZyS.cjs} +1 -1
  104. package/lib/node/components/block/block.helpers.d.ts +1 -2
  105. package/lib/node/components/block/block.vue.d.ts +10 -5
  106. package/lib/node/components/block/components/block-styles.vue.d.ts +1 -1
  107. package/lib/node/components/block/components/component-ref/component-ref.vue.d.ts +6 -6
  108. package/lib/node/components/block/components/repeated-block.vue.d.ts +3 -3
  109. package/lib/node/components/blocks/blocks.vue.d.ts +3 -3
  110. package/lib/node/components/content/components/enable-editor.vue.d.ts +12 -12
  111. package/lib/node/components/content/content.vue.d.ts +18 -18
  112. package/lib/node/components/content-variants/content-variants.vue.d.ts +12 -12
  113. package/lib/node/components/inlined-styles.vue.d.ts +3 -3
  114. package/lib/node/constants/sdk-version.d.ts +1 -1
  115. package/lib/node/functions/evaluate/node-runtime/init.d.ts +1 -0
  116. package/lib/node/functions/get-processed-block.d.ts +1 -0
  117. package/lib/node/functions/register-component.d.ts +1 -1
  118. package/lib/node/{get-block-properties-W3cxXL5S.cjs → get-block-properties-coIi16X2.cjs} +1 -1
  119. package/lib/node/{get-block-properties-ctA1IgxF.js → get-block-properties-lLVZb91I.js} +4 -4
  120. package/lib/node/index-ZUbIvJ0s.cjs +213 -0
  121. package/lib/node/{index-xdY2kzl8.js → index-eZTeDA6U.js} +3608 -3557
  122. package/lib/node/index.cjs +1 -1
  123. package/lib/node/index.mjs +4 -4
  124. package/lib/node/{repeated-block-T2ld1sa9.cjs → repeated-block-49B-IJEV.cjs} +1 -1
  125. package/lib/node/{repeated-block-ndxvinZD.js → repeated-block-_TZDsWlq.js} +13 -13
  126. package/lib/node/style.css +1 -1
  127. package/package.json +3 -3
  128. package/lib/browser/block-styles-UWiLqSPk.js +0 -90
  129. package/lib/browser/block-styles-mtiWQW_J.cjs +0 -1
  130. package/lib/browser/index-TIoYRvmr.cjs +0 -166
  131. package/lib/edge/block-styles-4MJqQlwZ.cjs +0 -1
  132. package/lib/edge/block-styles-P44kj2Ws.js +0 -89
  133. package/lib/edge/index-hw9mu6mD.cjs +0 -186
  134. package/lib/node/block-styles-HZaZpVMf.cjs +0 -1
  135. package/lib/node/block-styles-brJAybxf.js +0 -89
  136. package/lib/node/index-HPinODNY.cjs +0 -213
@@ -0,0 +1,213 @@
1
+ "use strict";var I=Object.defineProperty;var E=(e,t,n)=>t in e?I(e,t,{enumerable:!0,configurable:!0,writable:!0,value:n}):e[t]=n;var C=(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 i=n?r.replace(t,""):r;o[i]=e[r]}return o}const _sfc_main$t=vue.defineComponent({name:"dynamic-renderer",props:["TagName","attributes","actionAttributes"],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$r(e,t,n,o,r,i){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$t,[["render",_sfc_render$r]]),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":case"angular":return"class"}},_sfc_main$s=vue.defineComponent({name:"builder-button",components:{DynamicRenderer},props:["attributes","link","openLinkInNewTab","builderLinkComponent","text"],data(){return{filterAttrs}},methods:{attrs(){return{...filterAttrs(this.attributes,"v-on:",!1),[getClassPropName()]:`${this.link?"":"builder-button"} ${this.attributes[getClassPropName()]||""}`,...this.link?{href:this.link,target:this.openLinkInNewTab?"_blank":void 0,role:"link"}:{role:"button"}}}}});function _sfc_render$q(e,t,n,o,r,i){const s=vue.resolveComponent("DynamicRenderer");return vue.openBlock(),vue.createBlock(s,{attributes:e.attrs(),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$s,[["render",_sfc_render$q]]),key$1=Symbol(),BuilderContext={Builder:{content:null,context:{},localState:void 0,rootSetState(){},rootState:{},apiKey:null,apiVersion:void 0,componentInfos:{},inheritedStyles:{},BlocksWrapper:"div",BlocksWrapperProps:{},nonce:""},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}}function omit(e,...t){const n=Object.assign({},e);for(const o of t)delete n[o];return n}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:i,rootState:s})=>{const l=getFunctionArguments({builder:t,context:n,event:o,state:flattenState({rootState:s,localState:r,rootSetState:i})});return new Function(...l.map(([a])=>a),e)(...l.map(([,a])=>a))};function flattenState({rootState:e,localState:t,rootSetState:n}){return new Proxy(e,{get:(o,r)=>{if(t&&r in t)return t[r];const i=o[r];return typeof i=="object"&&i!==null?flattenState({rootState:i,localState:void 0,rootSetState:n?s=>{o[r]=s,n(o)}:void 0}):i},set:(o,r,i)=>{if(t&&r in t)throw new Error("Writing to local state is not allowed as it is read-only.");return o[r]=i,n==null||n(o),!0}})}const SDK_NAME_FOR_TARGET=(()=>{switch(TARGET){case"rsc":return"react-nextjs";case"reactNative":return"react-native";default:return TARGET}})(),SDK_NAME=`@builder.io/sdk-${SDK_NAME_FOR_TARGET}`,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,i,s)=>Object(r[i])===r[i]?r[i]:r[i]=Math.abs(Number(o[s+1]))>>0===+o[s+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-ZUbIvJ0s.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
+ var refToProxy = (obj) => {
3
+ if (typeof obj !== 'object' || obj === null) {
4
+ return obj;
5
+ }
6
+ return new Proxy({}, {
7
+ get(target, key) {
8
+ if (key === 'copySync') {
9
+ return () => obj.copySync();
10
+ }
11
+ const val = obj.getSync(key);
12
+ if (typeof val?.getSync === 'function') {
13
+ return refToProxy(val);
14
+ }
15
+ return val;
16
+ },
17
+ set(target, key, value) {
18
+ const v = typeof value === 'object' ? new ${INJECTED_IVM_GLOBAL}.Reference(value) : value;
19
+ obj.setSync(key, v);
20
+ ${BUILDER_SET_STATE_NAME}(key, value)
21
+ },
22
+ deleteProperty(target, key) {
23
+ obj.deleteSync(key);
24
+ }
25
+ })
26
+ }
27
+ `,processCode=({code:e,args:t})=>{const n=t.map(([o])=>`var ${o} = refToProxy(${getSyncValName(o)}); `).join("");return`
28
+ ${REF_TO_PROXY_FN}
29
+ ${n}
30
+ function theFunction() {
31
+ ${e}
32
+ }
33
+
34
+ const output = theFunction()
35
+
36
+ if (typeof output === 'object' && output !== null) {
37
+ return JSON.stringify(output.copySync ? output.copySync() : output);
38
+ } else {
39
+ return output;
40
+ }
41
+ `};let IVM_INSTANCE=null,IVM_CONTEXT=null;const SHOULD_MENTION_INITIALIZE_SCRIPT=SDK_NAME==="@builder.io/sdk-react-nextjs"||SDK_NAME==="@builder.io/sdk-react"||SDK_NAME==="@builder.io/sdk-qwik",getIvm=()=>{try{const t=safeDynamicRequire("isolated-vm");if(t)return t}catch(t){logger.error("isolated-vm import error.",t)}const e=`${MSG_PREFIX}could not import \`isolated-vm\` module for safe script execution on a Node server.
42
+
43
+ SOLUTION: In a server-only execution path within your application, do one of the following:
44
+
45
+ ${SHOULD_MENTION_INITIALIZE_SCRIPT?`- import and call \`initializeNodeRuntime()\` from "${SDK_NAME}/node/init".`:""}
46
+ - add the following import: \`await import('isolated-vm')\`.
47
+
48
+ For more information, visit https://builder.io/c/docs/integration-tips#enabling-data-bindings-in-node-environments`;throw new Error(e)};function setIsolateContext(e={memoryLimit:128}){const t=getIvm(),o=new t.Isolate(e).createContextSync(),r=o.global;return r.setSync("global",r.derefInto()),r.setSync("log",function(...i){console.log(...i)}),r.setSync(INJECTED_IVM_GLOBAL,t),IVM_CONTEXT=o,o}const getIsolateContext=()=>IVM_CONTEXT||setIsolateContext(),runInNode=({code:e,builder:t,context:n,event:o,localState:r,rootSetState:i,rootState:s})=>{const l=getIvm(),a=fastClone({...s,...r}),u=getFunctionArguments({builder:t,context:n,event:o,state:a}),p=getIsolateContext(),c=p.global;c.setSync(BUILDER_SET_STATE_NAME,function(m,g){set(s,m,g),i==null||i(s)}),u.forEach(([m,g])=>{const y=typeof g=="object"?new l.Reference(m==="builder"?{...g,getUserAttributes:()=>g.getUserAttributes()}:g):null;c.setSync(getSyncValName(m),y)});const d=processCode({code:e,args:u}),f=p.evalClosureSync(d);try{return JSON.parse(f)}catch{return f}},checkIsDefined=e=>e!=null;function isNodeRuntime(){var e;return typeof process<"u"&&checkIsDefined((e=process==null?void 0:process.versions)==null?void 0:e.node)}const shouldForceBrowserRuntimeInNode=()=>{var o;if(!isNodeRuntime())return!1;const e=process.arch==="arm64",t=process.version.startsWith("v20"),n=(o=process.env.NODE_OPTIONS)==null?void 0:o.includes("--no-node-snapshot");return e&&t&&!n?(logger.log("Skipping usage of `isolated-vm` to avoid crashes in Node v20 on an arm64 machine.\n If you would like to use the `isolated-vm` package on this machine, please provide the `NODE_OPTIONS=--no-node-snapshot` config to your Node process.\n See https://github.com/BuilderIO/builder/blob/main/packages/sdks/README.md#node-v20--m1-macs-apple-silicon-support for more information.\n "),!0):!1},chooseBrowserOrServerEval=e=>isBrowser()||shouldForceBrowserRuntimeInNode()?runInBrowser(e):runInNode(e),DISABLE_CACHE=!0,b=class b{static getCacheKey(t){return JSON.stringify({...t,event:t.event?Math.random():void 0})}static getCachedValue(t){return b.cache.get(t)}static setCachedValue(t,n){b.cache.size>20&&b.cache.delete(b.cache.keys().next().value),b.cache.set(t,{value:n})}};C(b,"cacheLimit",20),C(b,"cache",new Map);let EvalCache=b;function evaluate({code:e,context:t,localState:n,rootState:o,rootSetState:r,event:i,isExpression:s=!0,enableCache:l}){if(e==="")return;const a={code:parseCode(e,{isExpression:s}),builder:getBuilderGlobals(),context:t,event:i,rootSetState:r,rootState:o,localState:n};if(l&&!DISABLE_CACHE){const u=EvalCache.getCacheKey(a),p=EvalCache.getCachedValue(u);if(p)return p.value}try{const u=chooseBrowserOrServerEval(a);if(l){const p=EvalCache.getCacheKey(a);EvalCache.setCachedValue(p,u)}return u}catch(u){logger.error("Failed code evaluation: "+u.message,{code:e});return}}function transformBlock(e){return e}function deepCloneWithConditions(e){if(e===null||typeof e!="object")return e;if(Array.isArray(e))return e.map(n=>deepCloneWithConditions(n));if(e["@type"]==="@builder.io/sdk:Element")return e;const t={};for(const n in e)n!=="meta"&&Object.prototype.hasOwnProperty.call(e,n)&&(t[n]=deepCloneWithConditions(e[n]));return t}const IS_SDK_WITHOUT_CACHED_PROCESSED_BLOCK=["svelte","vue","angular","qwik","solid"].includes(TARGET),getCopy=e=>{if(IS_SDK_WITHOUT_CACHED_PROCESSED_BLOCK){const t=fastClone(e);return{...t,properties:{...t.properties},actions:{...t.actions}}}else{const t=deepCloneWithConditions(omit(e,"children","meta"));return{...t,properties:{...t.properties},actions:{...t.actions},children:e.children,meta:e.meta}}},evaluateBindings=({block:e,context:t,localState:n,rootState:o,rootSetState:r})=>{if(!e.bindings)return e;const i=getCopy(e);for(const s in e.bindings){const l=e.bindings[s],a=evaluate({code:l,localState:n,rootState:o,rootSetState:r,context:t,enableCache:!0});set(i,s,a)}return i};function getProcessedBlock({block:e,context:t,shouldEvaluateBindings:n,localState:o,rootState:r,rootSetState:i}){const s=e;return n?evaluateBindings({block:s,localState:o,rootState:r,rootSetState:i,context:t}):s}function isPreviewing(e){const t=e||(isBrowser()?window.location.search:void 0);return t?getSearchString(t).indexOf("builder.preview=")!==-1:!1}const createRegisterComponentMessage=e=>({type:"builder.registerComponent",data:serializeIncludingFunctions(e)}),serializeFn=e=>{const t=e.toString().trim();return`return (${!t.startsWith("function")&&!t.startsWith("(")?"function ":""}${t}).apply(this, arguments)`};function serializeIncludingFunctions(e){return JSON.parse(JSON.stringify(e,(t,n)=>typeof n=="function"?serializeFn(n):n))}const registry={};function register(e,t){e==="plugin"&&(t=serializeIncludingFunctions(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 settings={};function setEditorSettings(e){if(isBrowser()){Object.assign(settings,e);const t={type:"builder.settingsChange",data:settings};parent.postMessage(t,"*")}}const 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)},getTopLevelDomain=e=>{if(e==="localhost"||e==="127.0.0.1")return e;const t=e.split(".");return t.length>2?t.slice(1).join("."):e},getCookieSync=({name:e,canTrack:t})=>{var n;try{return t?(n=document.cookie.split("; ").find(o=>o.startsWith(`${e}=`)))==null?void 0:n.split("=")[1]:void 0}catch(o){logger.warn("[COOKIE] GET error: ",(o==null?void 0:o.message)||o);return}},getCookie=async e=>getCookieSync(e),stringifyCookie=e=>e.map(([t,n])=>n?`${t}=${n}`:t).filter(checkIsDefined).join("; "),SECURE_CONFIG=[["secure",""],["SameSite","None"]],createCookieString=({name:e,value:t,expires:n})=>{const r=(isBrowser()?location.protocol==="https:":!0)?SECURE_CONFIG:[[]],i=n?[["expires",n.toUTCString()]]:[[]],s=[[e,t],...i,["path","/"],["domain",getTopLevelDomain(window.location.hostname)],...r];return stringifyCookie(s)},setCookie=async({name:e,value:t,expires:n,canTrack:o})=>{try{if(!o)return;const r=createCookieString({name:e,value:t,expires:n});document.cookie=r}catch(r){logger.warn("[COOKIE] SET error: ",(r==null?void 0:r.message)||r)}};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}),DEFAULT_TRUSTED_HOSTS=["*.beta.builder.io","beta.builder.io","builder.io","localhost","qa.builder.io"];function isFromTrustedHost(e,t){if(!t.origin.startsWith("http")&&!t.origin.startsWith("https"))return!1;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="2.0.13",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 i,s;if(!isFromTrustedHost(e.trustedHosts,o))return;const{data:r}=o;if(r!=null&&r.type)switch(r.type){case"builder.evaluate":{const l=r.data.text,a=r.data.arguments||[],u=r.data.id,p=new Function(l);let c,d=null;try{c=p.apply(null,a)}catch(f){d=f}d?(i=window.parent)==null||i.postMessage({type:"builder.evaluateError",data:{id:u,error:d.message}},"*"):c&&typeof c.then=="function"?c.then(f=>{var m;(m=window.parent)==null||m.postMessage({type:"builder.evaluateResult",data:{id:u,result:f}},"*")}).catch(console.error):(s=window.parent)==null||s.postMessage({type:"builder.evaluateResult",data:{result:c,id:u}},"*");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 i=r.data,s=i.key||i.alias||i.entry||i.modelName,l=i.data;s===e&&n.contentUpdate(l);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)}},BUILDER_STORE_PREFIX="builder.tests",getContentTestKey=e=>`${BUILDER_STORE_PREFIX}.${e}`,getContentVariationCookie=({contentId:e})=>getCookie({name:getContentTestKey(e),canTrack:!0}),getContentVariationCookieSync=({contentId:e})=>getCookieSync({name:getContentTestKey(e),canTrack:!0}),setContentVariationCookie=({contentId:e,value:t})=>setCookie({name:getContentTestKey(e),value:t,canTrack:!0}),checkIsBuilderContentWithVariations=e=>checkIsDefined(e.id)&&checkIsDefined(e.variations)&&Object.keys(e.variations).length>0,getRandomVariationId=({id:e,variations:t})=>{var r;let n=0;const o=Math.random();for(const i in t){const s=(r=t[i])==null?void 0:r.testRatio;if(n+=s,o<n)return i}return e},getAndSetVariantId=e=>{const t=getRandomVariationId(e);return setContentVariationCookie({contentId:e.id,value:t}).catch(n=>{logger.error("could not store A/B test variation: ",n)}),t},getTestFields=({item:e,testGroupId:t})=>{const n=e.variations[t];return t===e.id||!n?{testVariationId:e.id,testVariationName:"Default"}:{data:n.data,testVariationId:n.id,testVariationName:n.name||(n.id===e.id?"Default":"")}},handleABTestingSync=({item:e,canTrack:t})=>{if(!t)return e;if(!e)return;if(!checkIsBuilderContentWithVariations(e))return e;const n=getContentVariationCookieSync({contentId:e.id})||getAndSetVariantId({variations:e.variations,id:e.id}),o=getTestFields({item:e,testGroupId:n});return{...e,...o}},handleABTesting=async({item:e,canTrack:t})=>{if(!t||!checkIsBuilderContentWithVariations(e))return e;const o=await getContentVariationCookie({contentId:e.id})||getAndSetVariantId({variations:e.variations,id:e.id}),r=getTestFields({item:e,testGroupId:o});return{...e,...r}},getDefaultCanTrack=e=>checkIsDefined(e)?e:!0;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.
49
+ 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 i=e[r],s=[t,r].filter(Boolean).join(n);return[typeof i=="object",i!==null,!(Array.isArray(i)&&i.length===0)].every(Boolean)?{...o,...flatten(i,s,n)}:{...o,[s]:i}},{})}function flattenMongoQuery(e,t,n={}){for(const o in e){const r=e[o],i=t?t+"."+o:o;r&&typeof r=="object"&&!Array.isArray(r)&&!Object.keys(r).find(s=>s.startsWith("$"))?flattenMongoQuery(r,i,n):n[i]=r}return n}const DEFAULT_API_VERSION="v3",isPositiveNumber=e=>typeof e=="number"&&!isNaN(e)&&e>=0,generateContentUrl=e=>{const{limit:t=30,userAttributes:n,query:o,model:r,apiKey:i,enrich:s,locale:l,apiVersion:a=DEFAULT_API_VERSION,fields:u,omit:p,offset:c,cacheSeconds:d,staleCacheSeconds:f,sort:m,includeUnpublished:g}=e;if(!i)throw new Error("Missing API key");if(!["v3"].includes(a))throw new Error(`Invalid apiVersion: expected 'v3', received '${a}'`);const y=t!==1,h=new URL(`https://cdn.builder.io/api/${a}/content/${r}`);if(h.searchParams.set("apiKey",i),h.searchParams.set("limit",String(t)),h.searchParams.set("noTraverse",String(y)),h.searchParams.set("includeRefs",String(!0)),l&&h.searchParams.set("locale",l),s&&h.searchParams.set("enrich",String(s)),h.searchParams.set("omit",p||"meta.componentsUsed"),u&&h.searchParams.set("fields",u),Number.isFinite(c)&&c>-1&&h.searchParams.set("offset",String(Math.floor(c))),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 T={...getBuilderSearchParamsFromWindow(),...normalizeSearchParams(e.options||{})},S=flatten(T);for(const v in S)h.searchParams.set(v,String(S[v]));if(n&&h.searchParams.set("userAttributes",JSON.stringify(n)),o){const v=flattenMongoQuery({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 i of t.results)r.push(await handleABTesting({item:i,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}}const fetchBuilderProps=async e=>{var o,r,i;const t=e.path||((o=e.url)==null?void 0:o.pathname)||((r=e.userAttributes)==null?void 0:r.urlPath),n={...e,apiKey:e.apiKey,model:e.model||"page",userAttributes:{...e.userAttributes,...t?{urlPath:t}:{}},options:getBuilderSearchParams(e.searchParams||((i=e.url)==null?void 0:i.searchParams)||e.options)};return{apiKey:n.apiKey,model:n.model,content:await fetchOneEntry(n)}},camelToKebabCase=e=>e?e.replace(/([a-z0-9]|(?=[A-Z]))([A-Z])/g,"$1-$2").toLowerCase():"";function throttle(e,t,n={}){let o,r,i,s=null,l=0;const a=function(){l=n.leading===!1?0:Date.now(),s=null,i=e.apply(o,r),s||(o=r=null)};return function(){const u=Date.now();!l&&n.leading===!1&&(l=u);const p=t-(u-l);return o=this,r=arguments,p<=0||p>t?(s&&(clearTimeout(s),s=null),l=u,i=e.apply(o,r),s||(o=r=null)):!s&&n.trailing!==!1&&(s=setTimeout(a,p)),i}}function assign(e,...t){const n=Object(e);for(let o=1;o<arguments.length;o++){const r=arguments[o];if(r!=null)for(const i in r)Object.prototype.hasOwnProperty.call(r,i)&&(n[i]=r[i])}return n}function bindAnimations(e){for(const t of e)switch(t.trigger){case"pageLoad":triggerAnimation(t);break;case"scrollInView":bindScrollInViewAnimation(t);break}}function warnElementNotPresent(e){console.warn(`Cannot animate element: element with ID ${e} not found!`)}function augmentAnimation(e,t){const n=getAllStylesUsed(e),o=getComputedStyle(t),r=e.steps[0].styles,i=e.steps[e.steps.length-1].styles,s=[r,i];for(const l of s)for(const a of n)a in l||(l[a]=o[a])}function getAllStylesUsed(e){const t=[];for(const n of e.steps)for(const o in n.styles)t.indexOf(o)===-1&&t.push(o);return t}function triggerAnimation(e){const t=Array.prototype.slice.call(document.getElementsByClassName(e.elementId||e.id||""));if(!t.length){warnElementNotPresent(e.elementId||e.id||"");return}Array.from(t).forEach(n=>{augmentAnimation(e,n),n.style.transition="none",n.style.transitionDelay="0",assign(n.style,e.steps[0].styles),setTimeout(()=>{n.style.transition=`all ${e.duration}s ${camelToKebabCase(e.easing)}`,e.delay&&(n.style.transitionDelay=e.delay+"s"),assign(n.style,e.steps[1].styles),setTimeout(()=>{n.style.transition="",n.style.transitionDelay=""},(e.delay||0)*1e3+e.duration*1e3+100)})})}function bindScrollInViewAnimation(e){const t=Array.prototype.slice.call(document.getElementsByClassName(e.elementId||e.id||""));if(!t.length){warnElementNotPresent(e.elementId||e.id||"");return}Array.from(t).forEach(n=>{augmentAnimation(e,n);let o=!1,r=!1;function i(){!o&&l(n)?(o=!0,r=!0,setTimeout(()=>{assign(n.style,e.steps[1].styles),e.repeat||document.removeEventListener("scroll",s),setTimeout(()=>{r=!1,e.repeat||(n.style.transition="",n.style.transitionDelay="")},(e.duration+(e.delay||0))*1e3+100)})):e.repeat&&o&&!r&&!l(n)&&(o=!1,assign(n.style,e.steps[0].styles))}const s=throttle(i,200,{leading:!1});function l(p){const c=p.getBoundingClientRect(),d=window.innerHeight,m=(e.thresholdPercent||0)/100*d;return c.bottom>m&&c.top<d-m}const a=e.steps[0].styles;function u(){assign(n.style,a)}u(),setTimeout(()=>{n.style.transition=`all ${e.duration}s ${camelToKebabCase(e.easing)}`,e.delay&&(n.style.transitionDelay=e.delay+"s")}),document.addEventListener("scroll",s,{capture:!0,passive:!0}),i()})}const convertStyleMapToCSSArray=e=>Object.entries(e).map(([n,o])=>{if(typeof o=="string")return`${camelToKebabCase(n)}: ${o};`}).filter(checkIsDefined),convertStyleMapToCSS=e=>convertStyleMapToCSSArray(e).join(`
50
+ `),createCssClass=({mediaQuery:e,className:t,styles:n})=>{const o=`.${t} {
51
+ ${convertStyleMapToCSS(n)}
52
+ }`;return e?`${e} {
53
+ ${o}
54
+ }`: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":case"angular":return convertStyleMapToCSSArray(e).join(" ");case"qwik":case"reactNative":case"react":case"rsc":return e}}const getComponent=({block:e,registeredComponents:t})=>{var r;const n=(r=e.component)==null?void 0:r.name;if(!n)return null;const o=t[n];if(o)return o;console.warn(`
55
+ Could not find a registered component named "${n}".
56
+ 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 i=n.collection.split(".").pop(),s=n.itemName||(i?i+"Item":"item");return r.map((a,u)=>({context:{...t,localState:{...t.localState,$index:u,$item:a,[s]:a,[`$${s}Index`]:u}},block:o}))},provideLinkComponent=(e,t)=>{var n;return(n=e==null?void 0:e.shouldReceiveBuilderProps)!=null&&n.builderLinkComponent?{builderLinkComponent:t}:{}},provideRegisteredComponents=(e,t)=>{var n;return(n=e==null?void 0:e.shouldReceiveBuilderProps)!=null&&n.builderComponents?{builderComponents:t}:{}},provideBuilderBlock=(e,t)=>{var n;return(n=e==null?void 0:e.shouldReceiveBuilderProps)!=null&&n.builderBlock?{builderBlock:t}:{}},provideBuilderContext=(e,t)=>{var n;return(n=e==null?void 0:e.shouldReceiveBuilderProps)!=null&&n.builderContext?{builderContext:t}:{}},DynamicDiv$1=()=>Promise.resolve().then(()=>dynamicDiv).then(e=>e.default).catch(e=>{throw console.error("Error while attempting to dynamically import component DynamicDiv at ../dynamic-div.vue",e),e}),BlockStyles=()=>Promise.resolve().then(()=>require("./block-styles-aVTlrIHc.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-8DA9SdPk.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-cw1D-ZyS.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-49B-IJEV.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$r=vue.defineComponent({name:"block",components:{BlockStyles:vue.defineAsyncComponent(BlockStyles),RepeatedBlock:vue.defineAsyncComponent(RepeatedBlock),ComponentRef:vue.defineAsyncComponent(ComponentRef),BlockWrapper:vue.defineAsyncComponent(BlockWrapper),DynamicDiv:vue.defineAsyncComponent(DynamicDiv$1)},props:["block","context","registeredComponents","linkComponent"],data(){return{_processedBlock:{value:null,update:!1}}},mounted(){const e=this.processedBlock.id,t=this.processedBlock.animations;t&&e&&bindAnimations(t.map(n=>({...n,elementId:e})))},updated(){},computed:{repeatItem(){return getRepeatItemData({block:this.block,context:this.context})},processedBlock(){var t;return(t=this.block.repeat)!=null&&t.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})},blockComponent(){return getComponent({block:this.processedBlock,registeredComponents:this.registeredComponents})},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;return{blockChildren:this.processedBlock.children??[],componentRef:(e=this.blockComponent)==null?void 0:e.component,componentOptions:{...getBlockComponentOptions(this.processedBlock),...provideBuilderBlock(this.blockComponent,this.processedBlock),...provideBuilderContext(this.blockComponent,this.context),...provideLinkComponent(this.blockComponent,this.linkComponent),...provideRegisteredComponents(this.blockComponent,this.registeredComponents)},context:this.context,linkComponent:this.linkComponent,registeredComponents:this.registeredComponents,builderBlock:this.processedBlock,includeBlockProps:((t=this.blockComponent)==null?void 0:t.noWrap)===!0,isInteractive:!((n=this.blockComponent)!=null&&n.isRSC&&TARGET==="rsc")}}}});function _sfc_render$p(e,t,n,o,r,i){var c;const s=vue.resolveComponent("BlockStyles"),l=vue.resolveComponent("ComponentRef"),a=vue.resolveComponent("Block",!0),u=vue.resolveComponent("BlockWrapper"),p=vue.resolveComponent("RepeatedBlock");return e.canShowBlock?(vue.openBlock(),vue.createElementBlock(vue.Fragment,{key:0},[vue.createVNode(s,{block:e.processedBlock,context:e.context},null,8,["block","context"]),(c=e.blockComponent)!=null&&c.noWrap?(vue.openBlock(),vue.createElementBlock(vue.Fragment,{key:1},[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(l,{key:0,componentRef:e.componentRefProps.componentRef,componentOptions:e.componentRefProps.componentOptions,blockChildren:e.componentRefProps.blockChildren,context:e.componentRefProps.context,registeredComponents:e.componentRefProps.registeredComponents,linkComponent:e.componentRefProps.linkComponent,builderBlock:e.componentRefProps.builderBlock,includeBlockProps:e.componentRefProps.includeBlockProps,isInteractive:e.componentRefProps.isInteractive},null,8,["componentRef","componentOptions","blockChildren","context","registeredComponents","linkComponent","builderBlock","includeBlockProps","isInteractive"]))],64)):(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(u,{key:0,Wrapper:e.Tag,block:e.processedBlock,context:e.context},{default:vue.withCtx(()=>[vue.createVNode(l,{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(a,{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"]))],64))],64)):vue.createCommentVNode("",!0)}const Block=_export_sfc(_sfc_main$r,[["render",_sfc_render$p]]),block=Object.freeze(Object.defineProperty({__proto__:null,default:Block},Symbol.toStringTag,{value:"Module"})),_sfc_main$q=vue.defineComponent({name:"builder-blocks-wrapper",props:["blocks","parent","path","styleProp","BlocksWrapperProps","BlocksWrapper"],mounted(){},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$o(e,t,n,o,r,i){return vue.openBlock(),vue.createBlock(vue.resolveDynamicComponent(e.BlocksWrapper),vue.mergeProps({ref:"blocksWrapperRef",class:e.className+" component-178o76acnws","builder-path":e.path,"builder-parent-id":e.parent,style:e.styleProp,onClick:s=>e.onClick(),onMouseEnter:s=>e.onMouseEnter(),onKeyPress:s=>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$q,[["render",_sfc_render$o],["__scopeId","data-v-824f09a8"]]),_sfc_main$p=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$n(e,t,n,o,r,i){var a,u;const s=vue.resolveComponent("Block"),l=vue.resolveComponent("BlocksWrapper");return vue.openBlock(),vue.createBlock(l,{blocks:e.blocks,parent:e.parent,path:e.path,styleProp:e.styleProp,BlocksWrapper:((a=e.context)==null?void 0:a.BlocksWrapper)||e.builderContext.BlocksWrapper,BlocksWrapperProps:((u=e.context)==null?void 0:u.BlocksWrapperProps)||e.builderContext.BlocksWrapperProps},{default:vue.withCtx(()=>[e.blocks?(vue.openBlock(!0),vue.createElementBlock(vue.Fragment,{key:0},vue.renderList(e.blocks,(p,c)=>(vue.openBlock(),vue.createBlock(s,{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$p,[["render",_sfc_render$n]]),_sfc_main$o=vue.defineComponent({name:"dynamic-div",props:[]});function _sfc_render$m(e,t,n,o,r,i){return vue.openBlock(),vue.createElementBlock("div",null,[vue.renderSlot(e.$slots,"default")])}const DynamicDiv=_export_sfc(_sfc_main$o,[["render",_sfc_render$m]]),dynamicDiv=Object.freeze(Object.defineProperty({__proto__:null,default:DynamicDiv},Symbol.toStringTag,{value:"Module"})),_sfc_main$n=vue.defineComponent({render(){return vue.h("style",{innerHTML:this.styles,"data-id":this.id,nonce:this.nonce})},name:"inlined-styles",props:["styles","id","nonce"]}),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 i=n.medium.max+1;return n.large={max:2e3,min:i,default:i+1},n},getColumnsClass=e=>`builder-columns ${e}-breakpoints`,_sfc_main$m=vue.defineComponent({name:"builder-columns",components:{InlinedStyles:_sfc_main$n,DynamicRenderer,Blocks,DynamicDiv},props:["space","columns","stackColumnsAt","builderLinkComponent","reverseColumnsWhenStacked","builderContext","builderBlock","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,getColumnsClass}},methods:{getTagName(e){return e.link?this.builderLinkComponent||"a":"div"},getWidth(e){var t;return((t=this.cols[e])==null?void 0:t.width)||100/this.cols.length},getColumnCssWidth(e){const t=this.getWidth(e),n=this.gutterSize*(this.cols.length-1)*(t/100);return`calc(${t}% - ${n}px)`},getTabletStyle({stackedStyle:e,desktopStyle:t}){return this.stackAt==="tablet"?e:t},getMobileStyle({stackedStyle:e,desktopStyle:t}){return this.stackAt==="never"?t:e},columnsCssVars(){return{"--flex-dir":this.flexDir,"--flex-dir-tablet":this.getTabletStyle({stackedStyle:this.flexDir,desktopStyle:"row"})}},columnCssVars(e){const t=e===0?0:this.gutterSize,n=this.getColumnCssWidth(e),o=`${t}px`,r="100%",i=0;return{...{display:"flex",flexDirection:"column",alignItems:"stretch"},width:n,["margin-left"]:o,"--column-width-mobile":this.getMobileStyle({stackedStyle:r,desktopStyle:n}),"--column-margin-left-mobile":this.getMobileStyle({stackedStyle:i,desktopStyle:o}),"--column-width-tablet":this.getTabletStyle({stackedStyle:r,desktopStyle:n}),"--column-margin-left-tablet":this.getTabletStyle({stackedStyle:i,desktopStyle:o})}},getWidthForBreakpointSize(e){var n,o;return getSizesForBreakpoints(((o=(n=this.builderContext.content)==null?void 0:n.meta)==null?void 0:o.breakpoints)||{})[e].max},columnsStyles(){const e=`.${this.builderBlock.id}-breakpoints > .builder-column`;return`
57
+ @media (max-width: ${this.getWidthForBreakpointSize("medium")}px) {
58
+ .${this.builderBlock.id}-breakpoints {
59
+ flex-direction: var(--flex-dir-tablet);
60
+ align-items: stretch;
61
+ }
62
+
63
+ ${e} {
64
+ width: var(--column-width-tablet) !important;
65
+ margin-left: var(--column-margin-left-tablet) !important;
66
+ }
67
+ }
68
+
69
+ @media (max-width: ${this.getWidthForBreakpointSize("small")}px) {
70
+ .${this.builderBlock.id}-breakpoints {
71
+ flex-direction: var(--flex-dir);
72
+ align-items: stretch;
73
+ }
74
+
75
+ ${e} {
76
+ width: var(--column-width-mobile) !important;
77
+ margin-left: var(--column-margin-left-mobile) !important;
78
+ }
79
+ },
80
+ `},getAttributes(e,t){return{...e.link?{href:e.link}:{},[getClassPropName()]:"builder-column",style:mapStyleObjToStrIfNeeded(this.columnCssVars(t))}}}});function _sfc_render$l(e,t,n,o,r,i){var u;const s=vue.resolveComponent("InlinedStyles"),l=vue.resolveComponent("Blocks"),a=vue.resolveComponent("DynamicRenderer");return vue.openBlock(),vue.createElementBlock("div",vue.mergeProps({class:e.getColumnsClass((u=e.builderBlock)==null?void 0:u.id)+" div-2brhoa1k8gd",style:e.columnsCssVars()},{}),[e.TARGET!=="reactNative"?(vue.openBlock(),vue.createBlock(s,{key:0,id:"builderio-columns",styles:e.columnsStyles(),nonce:e.builderContext.nonce},null,8,["styles","nonce"])):vue.createCommentVNode("",!0),(vue.openBlock(!0),vue.createElementBlock(vue.Fragment,null,vue.renderList(e.columns,(p,c)=>(vue.openBlock(),vue.createBlock(a,{key:c,TagName:e.getTagName(p),actionAttributes:{},attributes:e.getAttributes(p,c)},{default:vue.withCtx(()=>[vue.createVNode(l,{path:`component.options.columns.${c}.blocks`,parent:e.builderBlock.id,styleProp:{flexGrow:"1"},context:e.builderContext,registeredComponents:e.builderComponents,linkComponent:e.builderLinkComponent,blocks:p.blocks},null,8,["path","parent","context","registeredComponents","linkComponent","blocks"])]),_:2},1032,["TagName","attributes"]))),128))],16)}const Columns=_export_sfc(_sfc_main$m,[["render",_sfc_render$l],["__scopeId","data-v-52366f16"]]),_sfc_main$l=vue.defineComponent({name:"builder-fragment-component",props:[]});function _sfc_render$k(e,t,n,o,r,i){return vue.openBlock(),vue.createElementBlock("span",null,[vue.renderSlot(e.$slots,"default")])}const Fragment=_export_sfc(_sfc_main$l,[["render",_sfc_render$k]]);function removeProtocol(e){return e.replace(/http(s)?:/,"")}function updateQueryParam(e="",t,n){const o=new RegExp("([?&])"+t+"=.*?(&|$)","i"),r=e.indexOf("?")!==-1?"&":"?";return e.match(o)?e.replace(o,"$1"+t+"="+encodeURIComponent(n)+"$2"):e+r+t+"="+encodeURIComponent(n)}function getShopifyImageUrl(e,t){if(!e||!(e!=null&&e.match(/cdn\.shopify\.com/))||!t)return e;if(t==="master")return removeProtocol(e);const n=e.match(/(_\d+x(\d+)?)?(\.(jpg|jpeg|gif|png|bmp|bitmap|tiff|tif)(\?v=\d+)?)/i);if(n){const o=e.split(n[0]),r=n[3],i=t.match("x")?t:`${t}x`;return removeProtocol(`${o[0]}_${i}${r}`)}return null}function getSrcSet(e){if(!e)return e;const t=[100,200,400,800,1200,1600,2e3];if(e.match(/builder\.io/)){let n=e;const o=Number(e.split("?width=")[1]);return isNaN(o)||(n=`${n} ${o}w`),t.filter(r=>r!==o).map(r=>`${updateQueryParam(e,"width",r)} ${r}w`).concat([n]).join(", ")}return e.match(/cdn\.shopify\.com/)?t.map(n=>[getShopifyImageUrl(e,`${n}x${n}`),n]).filter(([n])=>!!n).map(([n,o])=>`${n} ${o}w`).concat([e]).join(", "):e}const _sfc_main$k=vue.defineComponent({name:"builder-image",props:["image","src","srcset","noWebp","aspectRatio","highPriority","altText","backgroundPosition","backgroundSize","className","sizes","builderBlock","fitContent"],mounted(){},computed:{srcSetToUse(){var n;const t=this.image||this.src;if(!t||!(t.match(/builder\.io/)||t.match(/cdn\.shopify\.com/)))return this.srcset;if(!this.noWebp){if(this.srcset&&((n=this.image)!=null&&n.includes("builder.io/api/v1/image"))){if(!this.srcset.includes(this.image.split("?")[0]))return console.debug("Removed given srcset"),getSrcSet(t)}else if(this.image&&!this.srcset)return getSrcSet(t);return getSrcSet(t)}},webpSrcSet(){var e;return(e=this.srcSetToUse)!=null&&e.match(/builder\.io/)&&!this.noWebp?this.srcSetToUse.replace(/\?/g,"?format=webp&"):""},aspectRatioCss(){const e={position:"absolute",height:"100%",width:"100%",left:"0px",top:"0px"};return this.aspectRatio?e:void 0}}}),_hoisted_1$b=["srcset"],_hoisted_2$4=["loading","fetchpriority","alt","role","src","srcset","sizes"],_hoisted_3$1={key:2,class:"div-1pl23ac79ld-2"};function _sfc_render$j(e,t,n,o,r,i){var s,l,a,u,p,c;return vue.openBlock(),vue.createElementBlock(vue.Fragment,null,[vue.createElementVNode("picture",null,[e.webpSrcSet?(vue.openBlock(),vue.createElementBlock("source",{key:0,type:"image/webp",srcset:e.webpSrcSet},null,8,_hoisted_1$b)):vue.createCommentVNode("",!0),vue.createElementVNode("img",{loading:e.highPriority?"eager":"lazy",fetchpriority:e.highPriority?"high":"auto",alt:e.altText,role:e.altText?void 0:"presentation",style:vue.normalizeStyle({objectPosition:e.backgroundPosition||"center",objectFit:e.backgroundSize||"cover",...e.aspectRatioCss}),class:vue.normalizeClass("builder-image"+(e.className?" "+e.className:"")+" img-1pl23ac79ld"),src:e.image,srcset:e.srcSetToUse,sizes:e.sizes},null,14,_hoisted_2$4)]),e.aspectRatio&&!((l=(s=e.builderBlock)==null?void 0:s.children)!=null&&l.length&&e.fitContent)?(vue.openBlock(),vue.createElementBlock("div",{key:0,class:"builder-image-sizer div-1pl23ac79ld",style:vue.normalizeStyle({paddingTop:e.aspectRatio*100+"%"})},null,4)):vue.createCommentVNode("",!0),(u=(a=e.builderBlock)==null?void 0:a.children)!=null&&u.length&&e.fitContent?vue.renderSlot(e.$slots,"default",{key:1},void 0,!0):vue.createCommentVNode("",!0),!e.fitContent&&((c=(p=e.builderBlock)==null?void 0:p.children)!=null&&c.length)?(vue.openBlock(),vue.createElementBlock("div",_hoisted_3$1,[vue.renderSlot(e.$slots,"default",{},void 0,!0)])):vue.createCommentVNode("",!0)],64)}const Image=_export_sfc(_sfc_main$k,[["render",_sfc_render$j],["__scopeId","data-v-b1147753"]]),_sfc_main$j=vue.defineComponent({name:"builder-section-component",props:["attributes","maxWidth"],data(){return{filterAttrs}}});function _sfc_render$i(e,t,n,o,r,i){return vue.openBlock(),vue.createElementBlock("section",vue.mergeProps({style:{width:"100%",alignSelf:"stretch",flexGrow:1,boxSizing:"border-box",maxWidth:e.maxWidth||1200,display:"flex",flexDirection:"column",alignItems:"stretch",marginLeft:"auto",marginRight:"auto"}},e.filterAttrs(e.attributes,"v-on:",!1),vue.toHandlers(e.filterAttrs(e.attributes,"v-on:",!0),!0)),[vue.renderSlot(e.$slots,"default")],16)}const Section=_export_sfc(_sfc_main$j,[["render",_sfc_render$i]]),defaultTitle={"@type":"@builder.io/sdk:Element",layerName:"Accordion item title",responsiveStyles:{large:{marginTop:"10px",position:"relative",display:"flex",alignItems:"stretch",flexDirection:"column",paddingBottom:"10px"}},children:[{"@type":"@builder.io/sdk:Element",responsiveStyles:{large:{textAlign:"left",display:"flex",flexDirection:"column"}},component:{name:"Text",options:{text:"I am an accordion title. Click me!"}}}]},defaultDetail={"@type":"@builder.io/sdk:Element",layerName:"Accordion item detail",responsiveStyles:{large:{position:"relative",display:"flex",alignItems:"stretch",flexDirection:"column",marginTop:"10px",paddingBottom:"10px"}},children:[{"@type":"@builder.io/sdk:Element",responsiveStyles:{large:{paddingTop:"50px",textAlign:"left",display:"flex",flexDirection:"column",paddingBottom:"50px"}},component:{name:"Text",options:{text:"I am an accordion detail, hello!"}}}]},componentInfo$i={name:"Builder:Accordion",canHaveChildren:!0,image:"https://cdn.builder.io/api/v1/image/assets%2FagZ9n5CUKRfbL9t6CaJOyVSK4Es2%2Ffab6c1fd3fe542408cbdec078bca7f35",defaultStyles:{display:"flex",flexDirection:"column",alignItems:"stretch"},inputs:[{name:"items",type:"list",broadcast:!0,subFields:[{name:"title",type:"uiBlocks",hideFromUI:!0,defaultValue:[defaultTitle]},{name:"detail",type:"uiBlocks",hideFromUI:!0,defaultValue:[defaultDetail]}],defaultValue:[{title:[defaultTitle],detail:[defaultDetail]},{title:[defaultTitle],detail:[defaultDetail]}],showIf:e=>!e.get("useChildrenForItems")},{name:"oneAtATime",helperText:"Only allow opening one at a time (collapse all others when new item openned)",type:"boolean",defaultValue:!1},{name:"grid",helperText:"Display as a grid",type:"boolean",defaultValue:!1},{name:"gridRowWidth",helperText:"Display as a grid",type:"string",showIf:e=>e.get("grid"),defaultValue:"25%"},{name:"useChildrenForItems",type:"boolean",helperText:"Use child elements for each slide, instead of the array. Useful for dynamically repeating items",advanced:!0,defaultValue:!1,onChange:e=>{e.get("useChildrenForItems")===!0&&e.set("items",[])}}],shouldReceiveBuilderProps:{builderBlock:!0,builderContext:!0,builderComponents:!0,builderLinkComponent:!0}},convertOrderNumberToString=e=>e.toString(),_sfc_main$i=vue.defineComponent({name:"builder-accordion",components:{Blocks},props:["grid","oneAtATime","items","gridRowWidth","builderBlock","builderContext","builderComponents","builderLinkComponent"],data(){return{open:[],convertOrderNumberToString}},computed:{onlyOneAtATime(){return!!(this.grid||this.oneAtATime)},accordionStyles(){return{display:"flex",alignItems:"stretch",flexDirection:"column",...this.grid&&{flexDirection:"row",alignItems:"flex-start",flexWrap:"wrap"}}},accordionTitleStyles(){const t={...{display:"flex",flexDirection:"column"},alignItems:"stretch",cursor:"pointer"};return Object.fromEntries(Object.entries(t).filter(([n,o])=>o!==void 0))},openGridItemOrder(){let e=null;if(this.grid&&this.open.length&&document){const n=this.open[0];let r=document.querySelector(`.builder-accordion-title[data-index="${n}"]`);if(e=n,r){let i=r.getBoundingClientRect();for(;r=r&&r.nextElementSibling;)if(r){if(r.classList.contains("builder-accordion-detail"))continue;const s=r.getBoundingClientRect();if(s.left>i.left){const l=parseInt(r.getAttribute("data-index")||"",10);isNaN(l)||(i=s,e=l)}else break}}}return typeof e=="number"&&(e=e+1),e},accordionDetailStyles(){const e={order:typeof this.openGridItemOrder=="number"?this.openGridItemOrder:void 0,...this.grid&&{width:"100%"}};return Object.fromEntries(Object.entries(e).filter(([t,n])=>n!==void 0))}},methods:{getAccordionTitleClassName(e){return`builder-accordion-title builder-accordion-title-${this.open.includes(e)?"open":"closed"}`},getAccordionDetailClassName(e){return`builder-accordion-detail builder-accordion-detail-${this.open.includes(e)?"open":"closed"}`},onClick(e){this.open.includes(e)?this.open=this.onlyOneAtATime?[]:this.open.filter(t=>t!==e):this.open=this.onlyOneAtATime?[e]:this.open.concat(e)}}}),_hoisted_1$a=["data-index","onClick"];function _sfc_render$h(e,t,n,o,r,i){const s=vue.resolveComponent("Blocks");return vue.openBlock(),vue.createElementBlock("div",{class:"builder-accordion",style:vue.normalizeStyle(e.accordionStyles)},[(vue.openBlock(!0),vue.createElementBlock(vue.Fragment,null,vue.renderList(e.items,(l,a)=>(vue.openBlock(),vue.createElementBlock(vue.Fragment,{key:a},[vue.createElementVNode("div",{class:vue.normalizeClass(e.getAccordionTitleClassName(a)),style:vue.normalizeStyle({...e.accordionTitleStyles,width:e.grid?e.gridRowWidth:void 0,order:e.openGridItemOrder!==null?e.convertOrderNumberToString(a):e.convertOrderNumberToString(a+1)}),"data-index":a,onClick:u=>e.onClick(a)},[vue.createVNode(s,{blocks:l.title,path:`items.${a}.title`,parent:e.builderBlock.id,context:e.builderContext,registeredComponents:e.builderComponents,linkComponent:e.builderLinkComponent},null,8,["blocks","path","parent","context","registeredComponents","linkComponent"])],14,_hoisted_1$a),e.open.includes(a)?(vue.openBlock(),vue.createElementBlock("div",{key:0,class:vue.normalizeClass(e.getAccordionDetailClassName(a)),style:vue.normalizeStyle(e.accordionDetailStyles)},[vue.createVNode(s,{blocks:l.detail,path:`items.${a}.detail`,parent:e.builderBlock.id,context:e.builderContext,registeredComponents:e.builderComponents,linkComponent:e.builderLinkComponent},null,8,["blocks","path","parent","context","registeredComponents","linkComponent"])],6)):vue.createCommentVNode("",!0)],64))),128))],4)}const Accordion=_export_sfc(_sfc_main$i,[["render",_sfc_render$h]]),componentInfo$h={name:"Core:Button",image:"https://cdn.builder.io/api/v1/image/assets%2FIsxPKMo2gPRRKeakUztj1D6uqed2%2F81a15681c3e74df09677dfc57a615b13",defaultStyles:{appearance:"none",paddingTop:"15px",paddingBottom:"15px",paddingLeft:"25px",paddingRight:"25px",backgroundColor:"#000000",color:"white",borderRadius:"4px",textAlign:"center",cursor:"pointer"},inputs:[{name:"text",type:"text",defaultValue:"Click me!",bubble:!0},{name:"link",type:"url",bubble:!0},{name:"openLinkInNewTab",type:"boolean",defaultValue:!1,friendlyName:"Open link in new tab"}],static:!0,noWrap:!0,shouldReceiveBuilderProps:{builderLinkComponent:!0}},componentInfo$g={name:"Columns",isRSC:!0,inputs:[{name:"columns",type:"array",broadcast:!0,subFields:[{name:"blocks",type:"array",hideFromUI:!0,defaultValue:[{"@type":"@builder.io/sdk:Element",responsiveStyles:{large:{display:"flex",flexDirection:"column",alignItems:"stretch",flexShrink:"0",position:"relative",marginTop:"30px",textAlign:"center",lineHeight:"normal",height:"auto",minHeight:"20px",minWidth:"20px",overflow:"hidden"}},component:{name:"Image",options:{image:"https://builder.io/api/v1/image/assets%2Fpwgjf0RoYWbdnJSbpBAjXNRMe9F2%2Ffb27a7c790324294af8be1c35fe30f4d",backgroundPosition:"center",backgroundSize:"cover",aspectRatio:.7004048582995948}}},{"@type":"@builder.io/sdk:Element",responsiveStyles:{large:{display:"flex",flexDirection:"column",alignItems:"stretch",flexShrink:"0",position:"relative",marginTop:"30px",textAlign:"center",lineHeight:"normal",height:"auto"}},component:{name:"Text",options:{text:"<p>Enter some text...</p>"}}}]},{name:"width",type:"number",hideFromUI:!0,helperText:"Width %, e.g. set to 50 to fill half of the space"},{name:"link",type:"url",helperText:"Optionally set a url that clicking this column will link to"}],defaultValue:[{blocks:[{"@type":"@builder.io/sdk:Element",responsiveStyles:{large:{display:"flex",flexDirection:"column",alignItems:"stretch",flexShrink:"0",position:"relative",marginTop:"30px",textAlign:"center",lineHeight:"normal",height:"auto",minHeight:"20px",minWidth:"20px",overflow:"hidden"}},component:{name:"Image",options:{image:"https://builder.io/api/v1/image/assets%2Fpwgjf0RoYWbdnJSbpBAjXNRMe9F2%2Ffb27a7c790324294af8be1c35fe30f4d",backgroundPosition:"center",backgroundSize:"cover",aspectRatio:.7004048582995948}}},{"@type":"@builder.io/sdk:Element",responsiveStyles:{large:{display:"flex",flexDirection:"column",alignItems:"stretch",flexShrink:"0",position:"relative",marginTop:"30px",textAlign:"center",lineHeight:"normal",height:"auto"}},component:{name:"Text",options:{text:"<p>Enter some text...</p>"}}}]},{blocks:[{"@type":"@builder.io/sdk:Element",responsiveStyles:{large:{display:"flex",flexDirection:"column",alignItems:"stretch",flexShrink:"0",position:"relative",marginTop:"30px",textAlign:"center",lineHeight:"normal",height:"auto",minHeight:"20px",minWidth:"20px",overflow:"hidden"}},component:{name:"Image",options:{image:"https://builder.io/api/v1/image/assets%2Fpwgjf0RoYWbdnJSbpBAjXNRMe9F2%2Ffb27a7c790324294af8be1c35fe30f4d",backgroundPosition:"center",backgroundSize:"cover",aspectRatio:.7004048582995948}}},{"@type":"@builder.io/sdk:Element",responsiveStyles:{large:{display:"flex",flexDirection:"column",alignItems:"stretch",flexShrink:"0",position:"relative",marginTop:"30px",textAlign:"center",lineHeight:"normal",height:"auto"}},component:{name:"Text",options:{text:"<p>Enter some text...</p>"}}}]}],onChange:e=>{function t(){n.forEach(o=>{o.delete("width")})}const n=e.get("columns");Array.isArray(n)&&n.find(r=>r.get("width"))&&(n.find(i=>!i.get("width"))||n.reduce((l,a)=>l+a.get("width"),0)!==100)&&t()}},{name:"space",type:"number",defaultValue:20,helperText:"Size of gap between columns",advanced:!0},{name:"stackColumnsAt",type:"string",defaultValue:"tablet",helperText:"Convert horizontal columns to vertical at what device size",enum:["tablet","mobile","never"],advanced:!0},{name:"reverseColumnsWhenStacked",type:"boolean",defaultValue:!1,helperText:"When stacking columns for mobile devices, reverse the ordering",advanced:!0}],shouldReceiveBuilderProps:{builderBlock:!0,builderContext:!0,builderComponents:!0,builderLinkComponent:!0}},componentInfo$f={name:"Fragment",static:!0,hidden:!0,canHaveChildren:!0,noWrap:!0},componentInfo$e={name:"Image",static:!0,image:"https://firebasestorage.googleapis.com/v0/b/builder-3b0a2.appspot.com/o/images%2Fbaseline-insert_photo-24px.svg?alt=media&token=4e5d0ef4-f5e8-4e57-b3a9-38d63a9b9dc4",defaultStyles:{position:"relative",minHeight:"20px",minWidth:"20px",overflow:"hidden"},canHaveChildren:!0,inputs:[{name:"image",type:"file",bubble:!0,allowedFileTypes:["jpeg","jpg","png","svg","webp"],required:!0,defaultValue:"https://cdn.builder.io/api/v1/image/assets%2FYJIGb4i01jvw0SRdL5Bt%2F72c80f114dc149019051b6852a9e3b7a",onChange:e=>{e.delete("srcset"),e.delete("noWebp");function n(s,l=6e4){return new Promise((a,u)=>{const p=document.createElement("img");let c=!1;p.onload=()=>{c=!0,a(p)},p.addEventListener("error",d=>{console.warn("Image load failed",d.error),u(d.error)}),p.src=s,setTimeout(()=>{c||u(new Error("Image load timed out"))},l)})}function o(s){return Math.round(s*1e3)/1e3}const r=e.get("image"),i=e.get("aspectRatio");if(fetch(r).then(s=>s.blob()).then(s=>{s.type.includes("svg")&&e.set("noWebp",!0)}),r&&(!i||i===.7041))return n(r).then(s=>{const l=e.get("aspectRatio");e.get("image")===r&&(!l||l===.7041)&&s.width&&s.height&&(e.set("aspectRatio",o(s.height/s.width)),e.set("height",s.height),e.set("width",s.width))})}},{name:"backgroundSize",type:"text",defaultValue:"cover",enum:[{label:"contain",value:"contain",helperText:"The image should never get cropped"},{label:"cover",value:"cover",helperText:"The image should fill it's box, cropping when needed"}]},{name:"backgroundPosition",type:"text",defaultValue:"center",enum:["center","top","left","right","bottom","top left","top right","bottom left","bottom right"]},{name:"altText",type:"string",helperText:"Text to display when the user has images off"},{name:"height",type:"number",hideFromUI:!0},{name:"width",type:"number",hideFromUI:!0},{name:"sizes",type:"string",hideFromUI:!0},{name:"srcset",type:"string",hideFromUI:!0},{name:"lazy",type:"boolean",defaultValue:!0,hideFromUI:!0},{name:"fitContent",type:"boolean",helperText:"When child blocks are provided, fit to them instead of using the image's aspect ratio",defaultValue:!0},{name:"highPriority",type:"boolean",advanced:!0,helperText:"Mark this image as high priority compared to other images on the page. This prevents lazy loading of the image and tells the browser to load this image before others on the page."},{name:"aspectRatio",type:"number",helperText:"This is the ratio of height/width, e.g. set to 1.5 for a 300px wide and 200px tall photo. Set to 0 to not force the image to maintain it's aspect ratio",advanced:!0,defaultValue:.7041}],shouldReceiveBuilderProps:{builderBlock:!0}},componentInfo$d={name:"Core:Section",static:!0,image:"https://cdn.builder.io/api/v1/image/assets%2FIsxPKMo2gPRRKeakUztj1D6uqed2%2F682efef23ace49afac61748dd305c70a",inputs:[{name:"maxWidth",type:"number",defaultValue:1200},{name:"lazyLoad",type:"boolean",defaultValue:!1,advanced:!0,description:"Only render this section when in view"}],defaultStyles:{paddingLeft:"20px",paddingRight:"20px",paddingTop:"50px",paddingBottom:"50px",marginTop:"0px",width:"100vw",marginLeft:"calc(50% - 50vw)"},canHaveChildren:!0,defaultChildren:[{"@type":"@builder.io/sdk:Element",responsiveStyles:{large:{textAlign:"center"}},component:{name:"Text",options:{text:"<p><b>I am a section! My content keeps from getting too wide, so that it's easy to read even on big screens.</b></p><p>Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur</p>"}}}]},componentInfo$c={name:"Slot",isRSC:!0,description:"Allow child blocks to be inserted into this content when used as a Symbol",docsLink:"https://www.builder.io/c/docs/symbols-with-blocks",image:"https://cdn.builder.io/api/v1/image/assets%2FYJIGb4i01jvw0SRdL5Bt%2F3aad6de36eae43b59b52c85190fdef56",inputs:[{name:"name",type:"string",required:!0,defaultValue:"children"}],shouldReceiveBuilderProps:{builderContext:!0,builderComponents:!0}},_sfc_main$h=vue.defineComponent({name:"builder-slot",components:{Blocks},props:["builderContext","name","builderComponents"]});function _sfc_render$g(e,t,n,o,r,i){var l,a,u;const s=vue.resolveComponent("Blocks");return vue.openBlock(),vue.createElementBlock("div",vue.mergeProps({style:{pointerEvents:"auto"}},!((l=e.builderContext.context)!=null&&l.symbolId)&&{"builder-slot":e.name}),[vue.createVNode(s,{parent:(a=e.builderContext.context)==null?void 0:a.symbolId,path:`symbol.data.${e.name}`,context:e.builderContext,registeredComponents:e.builderComponents,blocks:(u=e.builderContext.rootState)==null?void 0:u[e.name]},null,8,["parent","path","context","registeredComponents","blocks"])],16)}const Slot=_export_sfc(_sfc_main$h,[["render",_sfc_render$g]]),componentInfo$b={name:"Symbol",noWrap:!0,static:!0,isRSC:!0,inputs:[{name:"symbol",type:"uiSymbol"},{name:"dataOnly",helperText:"Make this a data symbol that doesn't display any UI",type:"boolean",defaultValue:!1,advanced:!0,hideFromUI:!0},{name:"inheritState",helperText:"Inherit the parent component state and data",type:"boolean",defaultValue:!1,advanced:!0},{name:"renderToLiquid",helperText:"Render this symbols contents to liquid. Turn off to fetch with javascript and use custom targeting",type:"boolean",defaultValue:!1,advanced:!0,hideFromUI:!0},{name:"useChildren",hideFromUI:!0,type:"boolean"}],shouldReceiveBuilderProps:{builderBlock:!0,builderContext:!0,builderComponents:!0,builderLinkComponent:!0}},defaultTab={"@type":"@builder.io/sdk:Element",responsiveStyles:{large:{paddingLeft:"20px",paddingRight:"20px",paddingTop:"10px",paddingBottom:"10px",minWidth:"100px",textAlign:"center",display:"flex",flexDirection:"column",cursor:"pointer",userSelect:"none"}},component:{name:"Text",options:{text:"New tab"}}},defaultElement={"@type":"@builder.io/sdk:Element",responsiveStyles:{large:{height:"200px",display:"flex",marginTop:"20px",flexDirection:"column"}},component:{name:"Text",options:{text:"New tab content "}}},componentInfo$a={name:"Builder: Tabs",inputs:[{name:"tabs",type:"list",broadcast:!0,subFields:[{name:"label",type:"uiBlocks",hideFromUI:!0,defaultValue:[defaultTab]},{name:"content",type:"uiBlocks",hideFromUI:!0,defaultValue:[defaultElement]}],defaultValue:[{label:[{...defaultTab,component:{name:"Text",options:{text:"Tab 1"}}}],content:[{...defaultElement,component:{name:"Text",options:{text:"Tab 1 content"}}}]},{label:[{...defaultTab,component:{name:"Text",options:{text:"Tab 2"}}}],content:[{...defaultElement,component:{name:"Text",options:{text:"Tab 2 content"}}}]}]},{name:"activeTabStyle",type:"uiStyle",helperText:"CSS styles for the active tab",defaultValue:{backgroundColor:"rgba(0, 0, 0, 0.1)"}},{name:"defaultActiveTab",type:"number",helperText:'Default tab to open to. Set to "1" for the first tab, "2" for the second, or choose "0" for none',defaultValue:1,advanced:!0},{name:"collapsible",type:"boolean",helperText:"If on, clicking an open tab closes it so no tabs are active",defaultValue:!1,advanced:!0},{name:"tabHeaderLayout",type:"enum",helperText:"Change the layout of the tab headers (uses justify-content)",defaultValue:"flex-start",enum:[{label:"Center",value:"center"},{label:"Space between",value:"space-between"},{label:"Space around",value:"space-around"},{label:"Left",value:"flex-start"},{label:"Right",value:"flex-end"}]}],shouldReceiveBuilderProps:{builderBlock:!0,builderContext:!0,builderComponents:!0,builderLinkComponent:!0}},_sfc_main$g=vue.defineComponent({name:"builder-tabs",components:{Blocks},props:["defaultActiveTab","tabs","collapsible","tabHeaderLayout","activeTabStyle","builderBlock","builderContext","builderComponents","builderLinkComponent"],data(){return{activeTab:this.defaultActiveTab?this.defaultActiveTab-1:0}},methods:{activeTabContent(e){return this.tabs&&this.tabs[e].content},onClick(e){e===this.activeTab&&this.collapsible?this.activeTab=-1:this.activeTab=e}}}),_hoisted_1$9=["onClick"],_hoisted_2$3={key:0};function _sfc_render$f(e,t,n,o,r,i){const s=vue.resolveComponent("Blocks");return vue.openBlock(),vue.createElementBlock("div",null,[vue.createElementVNode("div",{class:"builder-tabs-wrap",style:vue.normalizeStyle({display:"flex",flexDirection:"row",justifyContent:e.tabHeaderLayout||"flex-start",overflow:"auto"})},[(vue.openBlock(!0),vue.createElementBlock(vue.Fragment,null,vue.renderList(e.tabs,(l,a)=>(vue.openBlock(),vue.createElementBlock("span",{key:a,class:vue.normalizeClass(`builder-tab-wrap ${e.activeTab===a?"builder-tab-active":""}`),style:vue.normalizeStyle({...e.activeTab===a?e.activeTabStyle:{}}),onClick:u=>e.onClick(a)},[vue.createVNode(s,{parent:e.builderBlock.id,path:`component.options.tabs.${a}.label`,blocks:l.label,context:e.builderContext,registeredComponents:e.builderComponents,linkComponent:e.builderLinkComponent},null,8,["parent","path","blocks","context","registeredComponents","linkComponent"])],14,_hoisted_1$9))),128))],4),e.activeTabContent(e.activeTab)?(vue.openBlock(),vue.createElementBlock("div",_hoisted_2$3,[vue.createVNode(s,{parent:e.builderBlock.id,path:`component.options.tabs.${e.activeTab}.content`,blocks:e.activeTabContent(e.activeTab),context:e.builderContext,registeredComponents:e.builderComponents,linkComponent:e.builderLinkComponent},null,8,["parent","path","blocks","context","registeredComponents","linkComponent"])])):vue.createCommentVNode("",!0)])}const Tabs=_export_sfc(_sfc_main$g,[["render",_sfc_render$f]]),componentInfo$9={shouldReceiveBuilderProps:{builderBlock:!1,builderContext:!0},name:"Text",static:!0,isRSC:!0,image:"https://firebasestorage.googleapis.com/v0/b/builder-3b0a2.appspot.com/o/images%2Fbaseline-text_fields-24px%20(1).svg?alt=media&token=12177b73-0ee3-42ca-98c6-0dd003de1929",inputs:[{name:"text",type:"html",required:!0,autoFocus:!0,bubble:!0,defaultValue:"Enter some text..."}],defaultStyles:{lineHeight:"normal",height:"auto",textAlign:"center"}},_sfc_main$f=vue.defineComponent({name:"builder-text",props:["builderContext","text"],computed:{processedText(){var i;const e=this.builderContext,{context:t,localState:n,rootState:o,rootSetState:r}=e;return String(((i=this.text)==null?void 0:i.toString())||"").replace(/{{([^}]+)}}/g,(s,l)=>evaluate({code:l,context:t,localState:n,rootState:o,rootSetState:r,enableCache:!1}))}}}),_hoisted_1$8=["innerHTML"];function _sfc_render$e(e,t,n,o,r,i){return vue.openBlock(),vue.createElementBlock("div",{class:"builder-text",innerHTML:e.processedText,style:{outline:"none"}},null,8,_hoisted_1$8)}const Text=_export_sfc(_sfc_main$f,[["render",_sfc_render$e]]),componentInfo$8={name:"Custom Code",static:!0,requiredPermissions:["editCode"],inputs:[{name:"code",type:"html",required:!0,defaultValue:"<p>Hello there, I am custom HTML code!</p>",code:!0},{name:"replaceNodes",type:"boolean",helperText:"Preserve server rendered dom nodes",advanced:!0},{name:"scriptsClientOnly",type:"boolean",defaultValue:!1,helperText:"Only print and run scripts on the client. Important when scripts influence DOM that could be replaced when client loads",advanced:!0}]},_sfc_main$e=vue.defineComponent({name:"builder-custom-code",props:["replaceNodes","code"],data(){return{scriptsInserted:[],scriptsRun:[]}},mounted(){var t;if(!((t=this.$refs.elementRef)!=null&&t.getElementsByTagName)||typeof window>"u")return;const e=this.$refs.elementRef.getElementsByTagName("script");for(let n=0;n<e.length;n++){const o=e[n];if(o.src){if(this.scriptsInserted.includes(o.src))continue;this.scriptsInserted.push(o.src);const r=document.createElement("script");r.async=!0,r.src=o.src,document.head.appendChild(r)}else if(!o.type||["text/javascript","application/javascript","application/ecmascript"].includes(o.type)){if(this.scriptsRun.includes(o.innerText))continue;try{this.scriptsRun.push(o.innerText),new Function(o.innerText)()}catch(r){console.warn("`CustomCode`: Error running script:",r)}}}}}),_hoisted_1$7=["innerHTML"];function _sfc_render$d(e,t,n,o,r,i){return vue.openBlock(),vue.createElementBlock("div",{ref:"elementRef",class:vue.normalizeClass("builder-custom-code"+(e.replaceNodes?" replace-nodes":"")),innerHTML:e.code},null,10,_hoisted_1$7)}const customCode=_export_sfc(_sfc_main$e,[["render",_sfc_render$d]]),componentInfo$7={name:"Embed",static:!0,inputs:[{name:"url",type:"url",required:!0,defaultValue:"",helperText:"e.g. enter a youtube url, google map, etc"},{name:"content",type:"html",defaultValue:'<div style="padding: 20px; text-align: center">(Choose an embed URL)<div>',hideFromUI:!0}]},SCRIPT_MIME_TYPES=["text/javascript","application/javascript","application/ecmascript"],isJsScript=e=>SCRIPT_MIME_TYPES.includes(e.type),_sfc_main$d=vue.defineComponent({name:"builder-embed",props:["content"],data(){return{scriptsInserted:[],scriptsRun:[],ranInitFn:!1}},watch:{onUpdateHook0:{handler(){this.$refs.elem&&!this.ranInitFn&&(this.ranInitFn=!0,this.findAndRunScripts())},immediate:!0}},computed:{onUpdateHook0(){return{0:this.$refs.elem,1:this.ranInitFn}}},methods:{findAndRunScripts(){if(!this.$refs.elem||!this.$refs.elem.getElementsByTagName)return;const e=this.$refs.elem.getElementsByTagName("script");for(let t=0;t<e.length;t++){const n=e[t];if(n.src&&!this.scriptsInserted.includes(n.src)){this.scriptsInserted.push(n.src);const o=document.createElement("script");o.async=!0,o.src=n.src,document.head.appendChild(o)}else if(isJsScript(n)&&!this.scriptsRun.includes(n.innerText))try{this.scriptsRun.push(n.innerText),new Function(n.innerText)()}catch(o){console.warn("`Embed`: Error running script:",o)}}}}}),_hoisted_1$6=["innerHTML"];function _sfc_render$c(e,t,n,o,r,i){return vue.openBlock(),vue.createElementBlock("div",{class:"builder-embed",ref:"elem",innerHTML:e.content},null,8,_hoisted_1$6)}const embed=_export_sfc(_sfc_main$d,[["render",_sfc_render$c]]),componentInfo$6={name:"Form:Form",defaults:{responsiveStyles:{large:{marginTop:"15px",paddingBottom:"15px"}}},image:"https://cdn.builder.io/api/v1/image/assets%2FIsxPKMo2gPRRKeakUztj1D6uqed2%2Fef36d2a846134910b64b88e6d18c5ca5",inputs:[{name:"sendSubmissionsTo",type:"string",enum:[{label:"Send to email",value:"email",helperText:"Send form submissions to the email address of your choosing"},{label:"Custom",value:"custom",helperText:"Handle where the form requests go manually with a little code, e.g. to your own custom backend"}],defaultValue:"email"},{name:"sendSubmissionsToEmail",type:"string",required:!0,defaultValue:"your@email.com",showIf:'options.get("sendSubmissionsTo") === "email"'},{name:"sendWithJs",type:"boolean",helperText:"Set to false to use basic html form action",defaultValue:!0,showIf:'options.get("sendSubmissionsTo") === "custom"'},{name:"name",type:"string",defaultValue:"My form"},{name:"action",type:"string",helperText:"URL to send the form data to",showIf:'options.get("sendSubmissionsTo") === "custom"'},{name:"contentType",type:"string",defaultValue:"application/json",advanced:!0,enum:["application/json","multipart/form-data","application/x-www-form-urlencoded"],showIf:'options.get("sendSubmissionsTo") === "custom" && options.get("sendWithJs") === true'},{name:"method",type:"string",showIf:'options.get("sendSubmissionsTo") === "custom"',defaultValue:"POST",advanced:!0},{name:"previewState",type:"string",enum:["unsubmitted","sending","success","error"],defaultValue:"unsubmitted",helperText:'Choose a state to edit, e.g. choose "success" to show what users see on success and edit the message',showIf:'options.get("sendSubmissionsTo") !== "zapier" && options.get("sendWithJs") === true'},{name:"successUrl",type:"url",helperText:"Optional URL to redirect the user to on form submission success",showIf:'options.get("sendSubmissionsTo") !== "zapier" && options.get("sendWithJs") === true'},{name:"resetFormOnSubmit",type:"boolean",showIf:"options.get('sendSubmissionsTo') === 'custom' && options.get('sendWithJs') === true",advanced:!0},{name:"successMessage",type:"uiBlocks",hideFromUI:!0,defaultValue:[{"@type":"@builder.io/sdk:Element",responsiveStyles:{large:{marginTop:"10px"}},component:{name:"Text",options:{text:"<span>Thanks!</span>"}}}]},{name:"validate",type:"boolean",defaultValue:!0,advanced:!0},{name:"errorMessagePath",type:"text",advanced:!0,helperText:'Path to where to get the error message from in a JSON response to display to the user, e.g. "error.message" for a response like { "error": { "message": "this username is taken" }}'},{name:"errorMessage",type:"uiBlocks",hideFromUI:!0,defaultValue:[{"@type":"@builder.io/sdk:Element",responsiveStyles:{large:{marginTop:"10px"}},bindings:{"component.options.text":"state.formErrorMessage || block.component.options.text"},component:{name:"Text",options:{text:"<span>Form submission error :( Please check your answers and try again</span>"}}}]},{name:"sendingMessage",type:"uiBlocks",hideFromUI:!0,defaultValue:[{"@type":"@builder.io/sdk:Element",responsiveStyles:{large:{marginTop:"10px"}},component:{name:"Text",options:{text:"<span>Sending...</span>"}}}]},{name:"customHeaders",type:"map",valueType:{type:"string"},advanced:!0,showIf:'options.get("sendSubmissionsTo") === "custom" && options.get("sendWithJs") === true'}],noWrap:!0,canHaveChildren:!0,defaultChildren:[{"@type":"@builder.io/sdk:Element",responsiveStyles:{large:{marginTop:"10px"}},component:{name:"Text",options:{text:"<span>Enter your name</span>"}}},{"@type":"@builder.io/sdk:Element",responsiveStyles:{large:{marginTop:"10px"}},component:{name:"Form:Input",options:{name:"name",placeholder:"Jane Doe"}}},{"@type":"@builder.io/sdk:Element",responsiveStyles:{large:{marginTop:"10px"}},component:{name:"Text",options:{text:"<span>Enter your email</span>"}}},{"@type":"@builder.io/sdk:Element",responsiveStyles:{large:{marginTop:"10px"}},component:{name:"Form:Input",options:{name:"email",placeholder:"jane@doe.com"}}},{"@type":"@builder.io/sdk:Element",responsiveStyles:{large:{marginTop:"10px"}},component:{name:"Form:SubmitButton",options:{text:"Submit"}}}],shouldReceiveBuilderProps:{builderBlock:!0,builderContext:!0,builderComponents:!0,builderLinkComponent:!0}},validEnvList=["production","qa","test","development","dev","cdn-qa","cloud","fast","cdn2","cdn-prod"],getEnv=()=>{const e=process.env.NODE_ENV||"production";return validEnvList.includes(e)?e:"production"},get=(e,t,n)=>{const o=String.prototype.split.call(t,/[,[\].]+?/).filter(Boolean).reduce((r,i)=>r!=null?r[i]:r,e);return o===void 0||o===e?n:o},_sfc_main$c=vue.defineComponent({name:"builder-form-component",components:{Block,Blocks},props:["builderContext","previewState","sendWithJs","sendSubmissionsTo","action","customHeaders","contentType","sendSubmissionsToEmail","name","method","errorMessagePath","resetFormOnSubmit","successUrl","validate","attributes","builderBlock","builderComponents","builderLinkComponent","errorMessage","sendingMessage","successMessage"],data(){return{formState:"unsubmitted",responseData:null,formErrorMessage:"",filterAttrs}},methods:{mergeNewRootState(e){var n,o;const t={...this.builderContext.rootState,...e};this.builderContext.rootSetState?(o=(n=this.builderContext).rootSetState)==null||o.call(n,t):this.builderContext.rootState=t},submissionState(){return isEditing()&&this.previewState||this.formState},onSubmit(e){var n;const t=this.sendWithJs||this.sendSubmissionsTo==="email";if(this.sendSubmissionsTo==="zapier")e.preventDefault();else if(t){if(!(this.action||this.sendSubmissionsTo==="email")){e.preventDefault();return}e.preventDefault();const o=e.currentTarget||e.target,r=this.customHeaders||{};let i;const s=new FormData(o),l=Array.from(o.querySelectorAll("input,select,textarea")).filter(c=>!!c.name).map(c=>{let d;const f=c.name;if(c instanceof HTMLInputElement)if(c.type==="radio"){if(c.checked)return d=c.name,{key:f,value:d}}else if(c.type==="checkbox")d=c.checked;else if(c.type==="number"||c.type==="range"){const m=c.valueAsNumber;isNaN(m)||(d=m)}else c.type==="file"?d=c.files:d=c.value;else d=c.value;return{key:f,value:d}});let a=this.contentType;if(this.sendSubmissionsTo==="email"&&(a="multipart/form-data"),Array.from(l).forEach(({value:c})=>{(c instanceof File||Array.isArray(c)&&c[0]instanceof File||c instanceof FileList)&&(a="multipart/form-data")}),a!=="application/json")i=s;else{const c={};Array.from(l).forEach(({value:d,key:f})=>{set(c,f,d)}),i=JSON.stringify(c)}a&&a!=="multipart/form-data"&&(t&&((n=this.action)!=null&&n.includes("zapier.com"))||(r["content-type"]=a));const u=new CustomEvent("presubmit",{detail:{body:i}});if(this.$refs.formRef&&(this.$refs.formRef.dispatchEvent(u),u.defaultPrevented))return;this.formState="sending";const p=`${getEnv()==="dev"?"http://localhost:5000":"https://builder.io"}/api/v1/form-submit?apiKey=${this.builderContext.apiKey}&to=${btoa(this.sendSubmissionsToEmail||"")}&name=${encodeURIComponent(this.name||"")}`;fetch(this.sendSubmissionsTo==="email"?p:this.action,{body:i,headers:r,method:this.method||"post"}).then(async c=>{let d;const f=c.headers.get("content-type");if(f&&f.indexOf("application/json")!==-1?d=await c.json():d=await c.text(),!c.ok&&this.errorMessagePath){let m=get(d,this.errorMessagePath);m&&(typeof m!="string"&&(m=JSON.stringify(m)),this.formErrorMessage=m,this.mergeNewRootState({formErrorMessage:m}))}if(this.responseData=d,this.formState=c.ok?"success":"error",c.ok){const m=new CustomEvent("submit:success",{detail:{res:c,body:d}});if(this.$refs.formRef){if(this.$refs.formRef.dispatchEvent(m),m.defaultPrevented)return;this.resetFormOnSubmit!==!1&&this.$refs.formRef.reset()}if(this.successUrl)if(this.$refs.formRef){const g=new CustomEvent("route",{detail:{url:this.successUrl}});this.$refs.formRef.dispatchEvent(g),g.defaultPrevented||(location.href=this.successUrl)}else location.href=this.successUrl}},c=>{const d=new CustomEvent("submit:error",{detail:{error:c}});this.$refs.formRef&&(this.$refs.formRef.dispatchEvent(d),d.defaultPrevented)||(this.responseData=c,this.formState="error")})}}}}),_hoisted_1$5=["validate","action","method","name"],_hoisted_2$2={key:3,class:"builder-form-error-text pre-3i4ezorcfhi"};function _sfc_render$b(e,t,n,o,r,i){var a;const s=vue.resolveComponent("Block"),l=vue.resolveComponent("Blocks");return vue.openBlock(),vue.createElementBlock("form",vue.mergeProps({validate:e.validate,ref:"formRef",action:!e.sendWithJs&&e.action,method:e.method,name:e.name,onSubmit:t[0]||(t[0]=u=>e.onSubmit(u))},{...e.filterAttrs(e.attributes,"v-on:",!1)},vue.toHandlers(e.filterAttrs(e.attributes,"v-on:",!0),!0)),[e.builderBlock&&e.builderBlock.children?(vue.openBlock(!0),vue.createElementBlock(vue.Fragment,{key:0},vue.renderList((a=e.builderBlock)==null?void 0:a.children,(u,p)=>(vue.openBlock(),vue.createBlock(s,{key:`form-block-${e.idx}`,block:u,context:e.builderContext,registeredComponents:e.builderComponents,linkComponent:e.builderLinkComponent},null,8,["block","context","registeredComponents","linkComponent"]))),128)):vue.createCommentVNode("",!0),e.submissionState()==="error"?(vue.openBlock(),vue.createBlock(l,{key:1,path:"errorMessage",blocks:e.errorMessage,context:e.builderContext},null,8,["blocks","context"])):vue.createCommentVNode("",!0),e.submissionState()==="sending"?(vue.openBlock(),vue.createBlock(l,{key:2,path:"sendingMessage",blocks:e.sendingMessage,context:e.builderContext},null,8,["blocks","context"])):vue.createCommentVNode("",!0),e.submissionState()==="error"&&e.responseData?(vue.openBlock(),vue.createElementBlock("pre",_hoisted_2$2,vue.toDisplayString(JSON.stringify(e.responseData,null,2)),1)):vue.createCommentVNode("",!0),e.submissionState()==="success"?(vue.openBlock(),vue.createBlock(l,{key:4,path:"successMessage",blocks:e.successMessage,context:e.builderContext},null,8,["blocks","context"])):vue.createCommentVNode("",!0)],16,_hoisted_1$5)}const Form=_export_sfc(_sfc_main$c,[["render",_sfc_render$b],["__scopeId","data-v-489330f7"]]),componentInfo$5={name:"Form:Input",image:"https://cdn.builder.io/api/v1/image/assets%2FIsxPKMo2gPRRKeakUztj1D6uqed2%2Fad6f37889d9e40bbbbc72cdb5875d6ca",inputs:[{name:"type",type:"text",enum:["text","number","email","url","checkbox","radio","range","date","datetime-local","search","tel","time","file","month","week","password","color","hidden"],defaultValue:"text"},{name:"name",type:"string",required:!0,helperText:'Every input in a form needs a unique name describing what it takes, e.g. "email"'},{name:"placeholder",type:"string",defaultValue:"Hello there",helperText:"Text to display when there is no value"},{name:"defaultValue",type:"string"},{name:"value",type:"string",advanced:!0},{name:"required",type:"boolean",helperText:"Is this input required to be filled out to submit a form",defaultValue:!1}],noWrap:!0,static:!0,defaultStyles:{paddingTop:"10px",paddingBottom:"10px",paddingLeft:"10px",paddingRight:"10px",borderRadius:"3px",borderWidth:"1px",borderStyle:"solid",borderColor:"#ccc"}},_sfc_main$b=vue.defineComponent({name:"builder-form-input-component",props:["attributes","defaultValue","placeholder","type","name","value","required"],data(){return{isEditing,filterAttrs}}}),_hoisted_1$4=["placeholder","type","name","value","defaultValue","required"];function _sfc_render$a(e,t,n,o,r,i){return vue.openBlock(),vue.createElementBlock("input",vue.mergeProps({key:e.isEditing()&&e.defaultValue?e.defaultValue:"default-key",placeholder:e.placeholder,type:e.type,name:e.name,value:e.value,defaultValue:e.defaultValue,required:e.required},e.filterAttrs(e.attributes,"v-on:",!1),vue.toHandlers(e.filterAttrs(e.attributes,"v-on:",!0),!0)),null,16,_hoisted_1$4)}const FormInput=_export_sfc(_sfc_main$b,[["render",_sfc_render$a]]),componentInfo$4={name:"Form:Select",image:"https://cdn.builder.io/api/v1/image/assets%2FIsxPKMo2gPRRKeakUztj1D6uqed2%2F83acca093fb24aaf94dee136e9a4b045",defaultStyles:{alignSelf:"flex-start"},inputs:[{name:"options",type:"list",required:!0,subFields:[{name:"value",type:"text",required:!0},{name:"name",type:"text"}],defaultValue:[{value:"option 1"},{value:"option 2"}]},{name:"name",type:"string",required:!0,helperText:'Every select in a form needs a unique name describing what it gets, e.g. "email"'},{name:"defaultValue",type:"string"},{name:"value",type:"string",advanced:!0},{name:"required",type:"boolean",defaultValue:!1}],static:!0,noWrap:!0},_sfc_main$a=vue.defineComponent({name:"builder-select-component",props:["attributes","value","defaultValue","name","required","options"],data(){return{isEditing,filterAttrs}}}),_hoisted_1$3=["value","defaultValue","name","required"],_hoisted_2$1=["value"];function _sfc_render$9(e,t,n,o,r,i){return vue.openBlock(),vue.createElementBlock("select",vue.mergeProps({value:e.value,key:e.isEditing()&&e.defaultValue?e.defaultValue:"default-key",defaultValue:e.defaultValue,name:e.name,required:e.required},e.filterAttrs(e.attributes,"v-on:",!1),vue.toHandlers(e.filterAttrs(e.attributes,"v-on:",!0),!0)),[(vue.openBlock(!0),vue.createElementBlock(vue.Fragment,null,vue.renderList(e.options,(s,l)=>(vue.openBlock(),vue.createElementBlock("option",{key:`${s.name}-${l}`,value:s.value},vue.toDisplayString(s.name||s.value),9,_hoisted_2$1))),128))],16,_hoisted_1$3)}const FormSelect=_export_sfc(_sfc_main$a,[["render",_sfc_render$9]]),componentInfo$3={name:"Form:SubmitButton",image:"https://cdn.builder.io/api/v1/image/assets%2FIsxPKMo2gPRRKeakUztj1D6uqed2%2Fdf2820ffed1f4349a94c40b3221f5b98",defaultStyles:{appearance:"none",paddingTop:"15px",paddingBottom:"15px",paddingLeft:"25px",paddingRight:"25px",backgroundColor:"#3898EC",color:"white",borderRadius:"4px",cursor:"pointer"},inputs:[{name:"text",type:"text",defaultValue:"Click me"}],static:!0,noWrap:!0},_sfc_main$9=vue.defineComponent({name:"builder-submit-button",props:["attributes","text"],data(){return{filterAttrs}}});function _sfc_render$8(e,t,n,o,r,i){return vue.openBlock(),vue.createElementBlock("button",vue.mergeProps({type:"submit"},e.filterAttrs(e.attributes,"v-on:",!1),vue.toHandlers(e.filterAttrs(e.attributes,"v-on:",!0),!0)),vue.toDisplayString(e.text),17)}const FormSubmitButton=_export_sfc(_sfc_main$9,[["render",_sfc_render$8]]),componentInfo$2={name:"Form:TextArea",image:"https://cdn.builder.io/api/v1/image/assets%2FIsxPKMo2gPRRKeakUztj1D6uqed2%2Ff74a2f3de58c4c3e939204e5b6b8f6c3",inputs:[{advanced:!0,name:"value",type:"string"},{name:"name",type:"string",required:!0,helperText:'Every input in a form needs a unique name describing what it gets, e.g. "email"'},{name:"defaultValue",type:"string"},{name:"placeholder",type:"string",defaultValue:"Hello there"},{name:"required",type:"boolean",defaultValue:!1}],defaultStyles:{paddingTop:"10px",paddingBottom:"10px",paddingLeft:"10px",paddingRight:"10px",borderRadius:"3px",borderWidth:"1px",borderStyle:"solid",borderColor:"#ccc"},static:!0,noWrap:!0},_sfc_main$8=vue.defineComponent({name:"builder-textarea",props:["attributes","placeholder","name","value","defaultValue","required"],data(){return{filterAttrs}}}),_hoisted_1$2=["placeholder","name","value","defaultValue","required"];function _sfc_render$7(e,t,n,o,r,i){return vue.openBlock(),vue.createElementBlock("textarea",vue.mergeProps({placeholder:e.placeholder,name:e.name,value:e.value,defaultValue:e.defaultValue,required:e.required},e.filterAttrs(e.attributes,"v-on:",!1),vue.toHandlers(e.filterAttrs(e.attributes,"v-on:",!0),!0)),null,16,_hoisted_1$2)}const Textarea=_export_sfc(_sfc_main$8,[["render",_sfc_render$7]]),componentInfo$1={name:"Raw:Img",hideFromInsertMenu:!0,image:"https://firebasestorage.googleapis.com/v0/b/builder-3b0a2.appspot.com/o/images%2Fbaseline-insert_photo-24px.svg?alt=media&token=4e5d0ef4-f5e8-4e57-b3a9-38d63a9b9dc4",inputs:[{name:"image",bubble:!0,type:"file",allowedFileTypes:["jpeg","jpg","png","svg","gif","webp"],required:!0}],noWrap:!0,static:!0},_sfc_main$7=vue.defineComponent({name:"builder-img-component",props:["backgroundSize","backgroundPosition","imgSrc","altText","image","attributes"],data(){return{isEditing,filterAttrs}}}),_hoisted_1$1=["alt","src"];function _sfc_render$6(e,t,n,o,r,i){return vue.openBlock(),vue.createElementBlock("img",vue.mergeProps({style:{objectFit:e.backgroundSize||"cover",objectPosition:e.backgroundPosition||"center"},key:e.isEditing()&&e.imgSrc||"default-key",alt:e.altText,src:e.imgSrc||e.image},e.filterAttrs(e.attributes,"v-on:",!1),vue.toHandlers(e.filterAttrs(e.attributes,"v-on:",!0),!0)),null,16,_hoisted_1$1)}const Img=_export_sfc(_sfc_main$7,[["render",_sfc_render$6]]),componentInfo={name:"Video",canHaveChildren:!0,defaultStyles:{minHeight:"20px",minWidth:"20px"},image:"https://firebasestorage.googleapis.com/v0/b/builder-3b0a2.appspot.com/o/images%2Fbaseline-videocam-24px%20(1).svg?alt=media&token=49a84e4a-b20e-4977-a650-047f986874bb",inputs:[{name:"video",type:"file",allowedFileTypes:["mp4"],bubble:!0,defaultValue:"https://cdn.builder.io/o/assets%2FYJIGb4i01jvw0SRdL5Bt%2Fd27731a526464deba0016216f5f9e570%2Fcompressed?apiKey=YJIGb4i01jvw0SRdL5Bt&token=d27731a526464deba0016216f5f9e570&alt=media&optimized=true",required:!0},{name:"posterImage",type:"file",allowedFileTypes:["jpeg","png"],helperText:"Image to show before the video plays"},{name:"autoPlay",type:"boolean",defaultValue:!0},{name:"controls",type:"boolean",defaultValue:!1},{name:"muted",type:"boolean",defaultValue:!0},{name:"loop",type:"boolean",defaultValue:!0},{name:"playsInline",type:"boolean",defaultValue:!0},{name:"fit",type:"text",defaultValue:"cover",enum:["contain","cover","fill","auto"]},{name:"preload",type:"text",defaultValue:"metadata",enum:["auto","metadata","none"]},{name:"fitContent",type:"boolean",helperText:"When child blocks are provided, fit to them instead of using the aspect ratio",defaultValue:!0,advanced:!0},{name:"position",type:"text",defaultValue:"center",enum:["center","top","left","right","bottom","top left","top right","bottom left","bottom right"]},{name:"height",type:"number",advanced:!0},{name:"width",type:"number",advanced:!0},{name:"aspectRatio",type:"number",advanced:!0,defaultValue:.7004048582995948},{name:"lazyLoad",type:"boolean",helperText:'Load this video "lazily" - as in only when a user scrolls near the video. Recommended for optmized performance and bandwidth consumption',defaultValue:!0,advanced:!0}],shouldReceiveBuilderProps:{builderBlock:!0}},_sfc_main$6=vue.defineComponent({name:"builder-video",props:["autoPlay","muted","controls","loop","playsInline","preload","attributes","fit","position","aspectRatio","video","posterImage","lazyLoad","fitContent","builderBlock"],computed:{videoProps(){return{...this.autoPlay===!0?{autoPlay:!0}:{},...this.muted===!0?{muted:!0}:{},...this.controls===!0?{controls:!0}:{},...this.loop===!0?{loop:!0}:{},...this.playsInline===!0?{playsInline:!0}:{}}},spreadProps(){return{...this.videoProps}}}}),_hoisted_1={style:{position:"relative"}},_hoisted_2=["preload","src","poster"],_hoisted_3=["src"],_hoisted_4={key:1,style:{display:"flex",flexDirection:"column",alignItems:"stretch"}},_hoisted_5={key:2,style:{pointerEvents:"none",display:"flex",flexDirection:"column",alignItems:"stretch",position:"absolute",top:"0",left:"0",width:"100%",height:"100%"}};function _sfc_render$5(e,t,n,o,r,i){var s,l,a,u,p,c,d;return vue.openBlock(),vue.createElementBlock("div",_hoisted_1,[vue.createElementVNode("video",vue.mergeProps({class:"builder-video",preload:e.preload||"metadata",style:{width:"100%",height:"100%",...(s=e.attributes)==null?void 0:s.style,objectFit:e.fit,objectPosition:e.position,zIndex:2,borderRadius:"1px",...e.aspectRatio?{position:"absolute"}:null},src:e.video||"no-src",poster:e.posterImage},e.spreadProps),[e.lazyLoad?vue.createCommentVNode("",!0):(vue.openBlock(),vue.createElementBlock("source",{key:0,type:"video/mp4",src:e.video},null,8,_hoisted_3))],16,_hoisted_2),e.aspectRatio&&!(e.fitContent&&((a=(l=e.builderBlock)==null?void 0:l.children)!=null&&a.length))?(vue.openBlock(),vue.createElementBlock("div",{key:0,style:vue.normalizeStyle({width:"100%",paddingTop:e.aspectRatio*100+"%",pointerEvents:"none",fontSize:"0px"})},null,4)):vue.createCommentVNode("",!0),(p=(u=e.builderBlock)==null?void 0:u.children)!=null&&p.length&&e.fitContent?(vue.openBlock(),vue.createElementBlock("div",_hoisted_4,[vue.renderSlot(e.$slots,"default")])):vue.createCommentVNode("",!0),(d=(c=e.builderBlock)==null?void 0:c.children)!=null&&d.length&&!e.fitContent?(vue.openBlock(),vue.createElementBlock("div",_hoisted_5,[vue.renderSlot(e.$slots,"default")])):vue.createCommentVNode("",!0)])}const Video=_export_sfc(_sfc_main$6,[["render",_sfc_render$5]]),getExtraComponents=()=>[{component:customCode,...componentInfo$8},{component:embed,...componentInfo$7},{component:Form,...componentInfo$6},{component:FormInput,...componentInfo$5},{component:FormSubmitButton,...componentInfo$3},{component:FormSelect,...componentInfo$4},{component:Textarea,...componentInfo$2},{component:Img,...componentInfo$1},{component:Video,...componentInfo}],getDefaultRegisteredComponents=()=>[{component:Button,...componentInfo$h},{component:Columns,...componentInfo$g},{component:Fragment,...componentInfo$f},{component:Image,...componentInfo$e},{component:Section,...componentInfo$d},{component:Slot,...componentInfo$c},{component:Symbol$1,...componentInfo$b},{component:Text,...componentInfo$9},{component:Tabs,...componentInfo$a},{component:Accordion,...componentInfo$i},...getExtraComponents()],UPDATE_COOKIES_AND_STYLES_SCRIPT=`function updateCookiesAndStyles(contentId, variants, isHydrationTarget) {
81
+ function getAndSetVariantId() {
82
+ function setCookie(name, value, days) {
83
+ let expires = '';
84
+ if (days) {
85
+ const date = new Date();
86
+ date.setTime(date.getTime() + days * 24 * 60 * 60 * 1000);
87
+ expires = '; expires=' + date.toUTCString();
88
+ }
89
+ document.cookie = name + '=' + (value || '') + expires + '; path=/' + '; Secure; SameSite=None';
90
+ }
91
+ function getCookie(name) {
92
+ const nameEQ = name + '=';
93
+ const ca = document.cookie.split(';');
94
+ for (let i = 0; i < ca.length; i++) {
95
+ let c = ca[i];
96
+ while (c.charAt(0) === ' ') c = c.substring(1, c.length);
97
+ if (c.indexOf(nameEQ) === 0) return c.substring(nameEQ.length, c.length);
98
+ }
99
+ return null;
100
+ }
101
+ const cookieName = \`builder.tests.\${contentId}\`;
102
+ const variantInCookie = getCookie(cookieName);
103
+ const availableIDs = variants.map(vr => vr.id).concat(contentId);
104
+ if (variantInCookie && availableIDs.includes(variantInCookie)) {
105
+ return variantInCookie;
106
+ }
107
+ let n = 0;
108
+ const random = Math.random();
109
+ for (let i = 0; i < variants.length; i++) {
110
+ const variant = variants[i];
111
+ const testRatio = variant.testRatio;
112
+ n += testRatio;
113
+ if (random < n) {
114
+ setCookie(cookieName, variant.id);
115
+ return variant.id;
116
+ }
117
+ }
118
+ setCookie(cookieName, contentId);
119
+ return contentId;
120
+ }
121
+ const winningVariantId = getAndSetVariantId();
122
+ const styleEl = document.currentScript?.previousElementSibling;
123
+ if (isHydrationTarget) {
124
+ styleEl.remove();
125
+ const thisScriptEl = document.currentScript;
126
+ thisScriptEl?.remove();
127
+ } else {
128
+ const newStyleStr = variants.concat({
129
+ id: contentId
130
+ }).filter(variant => variant.id !== winningVariantId).map(value => {
131
+ return \`.variant-\${value.id} { display: none; }
132
+ \`;
133
+ }).join('');
134
+ styleEl.innerHTML = newStyleStr;
135
+ }
136
+ }`,UPDATE_VARIANT_VISIBILITY_SCRIPT=`function updateVariantVisibility(variantContentId, defaultContentId, isHydrationTarget) {
137
+ if (!navigator.cookieEnabled) {
138
+ return;
139
+ }
140
+ function getCookie(name) {
141
+ const nameEQ = name + '=';
142
+ const ca = document.cookie.split(';');
143
+ for (let i = 0; i < ca.length; i++) {
144
+ let c = ca[i];
145
+ while (c.charAt(0) === ' ') c = c.substring(1, c.length);
146
+ if (c.indexOf(nameEQ) === 0) return c.substring(nameEQ.length, c.length);
147
+ }
148
+ return null;
149
+ }
150
+ const cookieName = \`builder.tests.\${defaultContentId}\`;
151
+ const winningVariant = getCookie(cookieName);
152
+ const parentDiv = document.currentScript?.parentElement;
153
+ const isDefaultContent = variantContentId === defaultContentId;
154
+ const isWinningVariant = winningVariant === variantContentId;
155
+ if (isWinningVariant && !isDefaultContent) {
156
+ parentDiv?.removeAttribute('hidden');
157
+ parentDiv?.removeAttribute('aria-hidden');
158
+ } else if (!isWinningVariant && isDefaultContent) {
159
+ parentDiv?.setAttribute('hidden', 'true');
160
+ parentDiv?.setAttribute('aria-hidden', 'true');
161
+ }
162
+ if (isHydrationTarget) {
163
+ if (!isWinningVariant) {
164
+ parentDiv?.remove();
165
+ }
166
+ const thisScriptEl = document.currentScript;
167
+ thisScriptEl?.remove();
168
+ }
169
+ return;
170
+ }`,UPDATE_COOKIES_AND_STYLES_SCRIPT_NAME="builderIoAbTest",UPDATE_VARIANT_VISIBILITY_SCRIPT_FN_NAME="builderIoRenderContent",getVariants=e=>Object.values((e==null?void 0:e.variations)||{}).map(t=>({...t,testVariationId:t.id,id:e==null?void 0:e.id})),checkShouldRenderVariants=({canTrack:e,content:t})=>!(!(getVariants(t).length>0)||!e),getIsHydrationTarget=e=>e==="react"||e==="reactNative",isHydrationTarget=getIsHydrationTarget(TARGET),getInitVariantsFnsScriptString=()=>`
171
+ window.${UPDATE_COOKIES_AND_STYLES_SCRIPT_NAME} = ${UPDATE_COOKIES_AND_STYLES_SCRIPT}
172
+ window.${UPDATE_VARIANT_VISIBILITY_SCRIPT_FN_NAME} = ${UPDATE_VARIANT_VISIBILITY_SCRIPT}
173
+ `,getUpdateCookieAndStylesScript=(e,t)=>`
174
+ window.${UPDATE_COOKIES_AND_STYLES_SCRIPT_NAME}(
175
+ "${t}",${JSON.stringify(e)}, ${isHydrationTarget}
176
+ )`,getUpdateVariantVisibilityScript=({contentId:e,variationId:t})=>`window.${UPDATE_VARIANT_VISIBILITY_SCRIPT_FN_NAME}(
177
+ "${t}", "${e}", ${isHydrationTarget}
178
+ )`,_sfc_main$5=vue.defineComponent({render(){return vue.h("script",{innerHTML:this.scriptStr,"data-id":this.id,nonce:this.nonce})},name:"inlined-script",props:["scriptStr","id","nonce"]});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,i=round(o/n.width),s=round(r/n.height);return{x:i,y:s}},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}}},getCssFromFont=e=>{var i;const t=e.family+(e.kind&&!e.kind.includes("#")?", "+e.kind:""),n=t.split(",")[0],o=e.fileUrl??((i=e==null?void 0:e.files)==null?void 0:i.regular);let r="";if(o&&t&&n&&(r+=`
179
+ @font-face {
180
+ font-family: "${t}";
181
+ src: local("${n}"), url('${o}') format('woff2');
182
+ font-display: fallback;
183
+ font-weight: 400;
184
+ }
185
+ `.trim()),e.files)for(const s in e.files){if(!(String(Number(s))===s))continue;const a=e.files[s];a&&a!==o&&(r+=`
186
+ @font-face {
187
+ font-family: "${t}";
188
+ src: url('${a}') format('woff2');
189
+ font-display: fallback;
190
+ font-weight: ${s};
191
+ }
192
+ `.trim())}return r},getFontCss=({customFonts:e})=>{var t;return((t=e==null?void 0:e.map(n=>getCssFromFont(n)))==null?void 0:t.join(" "))||""},getCss=({cssCode:e,contentId:t})=>e?t?(e==null?void 0:e.replace(/&/g,`div[builder-content-id="${t}"]`))||"":e:"",DEFAULT_STYLES=`
193
+ .builder-button {
194
+ all: unset;
195
+ }
196
+
197
+ .builder-text > p:first-of-type, .builder-text > .builder-paragraph:first-of-type {
198
+ margin: 0;
199
+ }
200
+ .builder-text > p, .builder-text > .builder-paragraph {
201
+ color: inherit;
202
+ line-height: inherit;
203
+ letter-spacing: inherit;
204
+ font-weight: inherit;
205
+ font-size: inherit;
206
+ text-align: inherit;
207
+ font-family: inherit;
208
+ }
209
+ `,getDefaultStyles=e=>e?"":DEFAULT_STYLES,getWrapperClassName=e=>`variant-${e}`,_sfc_main$4=vue.defineComponent({name:"enable-editor",components:{DynamicDiv},props:["builderContextSignal","canTrack","apiKey","locale","enrich","trustedHosts","model","content","data","showContent","contentWrapper","context","contentWrapperProps"],data(){return{ContentWrapper:this.contentWrapper||"div",httpReqsData:{},httpReqsPending:{},clicked:!1,builderContext:BuilderContext,getWrapperClassName}},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 i=(n=this.builderContextSignal.content)==null?void 0:n.testVariationId,s=(o=this.builderContextSignal.content)==null?void 0:o.id,l=this.apiKey;_track({type:"impression",canTrack:!0,contentId:s,apiKey:l,variationId:i!==s?i:void 0})}isPreviewing()&&!isEditing()&&this.$refs.elementRef&&this.$refs.elementRef.dispatchEvent(new CustomEvent("initpreviewingbldr"))}})(),(()=>{this.apiKey||logger.error("No API key provided to `Content` 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:{showContentProps(){return this.showContent?{}:{hidden:!0,"aria-hidden":!0}},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,i,s;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)||((s=(i=this.builderContextSignal.content)==null?void 0:i.meta)==null?void 0:s.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)},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.httpReqsPending[o]||this.httpReqsData[o]&&!isEditing())return;this.httpReqsPending[o]=!0;const i=r.replace(/{{([^}]+)}}/g,(s,l)=>String(evaluate({code:l,context:this.context||{},localState:void 0,rootState:this.builderContextSignal.rootState,rootSetState:this.builderContextSignal.rootSetState,enableCache:!0})));fetch$1(i).then(s=>s.json()).then(s=>{this.mergeNewRootState({[o]:s}),this.httpReqsData[o]=!0}).catch(s=>{console.error("error fetching dynamic data",r,s)}).finally(()=>{this.httpReqsPending[o]=!1})})},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.overrides.${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(i=>{i&&this.mergeNewContent(i)})}}});function _sfc_render$4(e,t,n,o,r,i){var s,l,a;return e.builderContextSignal.content?(vue.openBlock(),vue.createBlock(vue.resolveDynamicComponent(e.ContentWrapper),vue.mergeProps({key:0,ref:"elementRef",onClick:u=>e.onClick(u),"builder-content-id":(s=e.builderContextSignal.content)==null?void 0:s.id,"builder-model":e.model,class:e.getWrapperClassName(((l=e.content)==null?void 0:l.testVariationId)||((a=e.content)==null?void 0:a.id)),onIniteditingbldr:u=>e.elementRef_onIniteditingbldr(u),onInitpreviewingbldr:u=>e.elementRef_onInitpreviewingbldr(u)},{...e.showContentProps,...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]]),_sfc_main$3=vue.defineComponent({name:"content-styles",components:{InlinedStyles:_sfc_main$n},props:["cssCode","contentId","customFonts","isNestedRender","nonce"],data(){return{injectedStyles:`
210
+ ${getCss({cssCode:this.cssCode,contentId:this.contentId})}
211
+ ${getFontCss({customFonts:this.customFonts})}
212
+ ${getDefaultStyles(this.isNestedRender)}
213
+ `.trim()}}});function _sfc_render$3(e,t,n,o,r,i){const s=vue.resolveComponent("InlinedStyles");return vue.openBlock(),vue.createBlock(s,{id:"builderio-content",styles:e.injectedStyles,nonce:e.nonce},null,8,["styles","nonce"])}const ContentStyles=_export_sfc(_sfc_main$3,[["render",_sfc_render$3]]),getRootStateInitialValue=({content:e,data:t,locale:n})=>{var i,s,l;const o={},r=((i=e==null?void 0:e.data)==null?void 0:i.state)||{};return(l=(s=e==null?void 0:e.data)==null?void 0:s.inputs)==null||l.forEach(a=>{a.name&&a.defaultValue!==void 0&&(o[a.name]=a.defaultValue)}),{...o,...r,...t,...n?{locale:n}:{}}},getContentInitialValue=({content:e,data:t})=>e?{...e,data:{...e==null?void 0:e.data,...t},meta:e==null?void 0:e.meta}:void 0,wrapComponentRef=vue.markRaw,_sfc_main$2=vue.defineComponent({name:"content-component",components:{EnableEditor,InlinedScript:_sfc_main$5,ContentStyles,Blocks,DynamicDiv},props:["content","customComponents","model","data","locale","context","canTrack","apiKey","apiVersion","blocksWrapper","blocksWrapperProps","nonce","enrich","showContent","contentWrapper","contentWrapperProps","trustedHosts","isSsrAbTest","isNestedRender","linkComponent"],data(){var e,t,n,o;return{scriptStr:getUpdateVariantVisibilityScript({variationId:(e=this.content)==null?void 0:e.testVariationId,contentId:(t=this.content)==null?void 0:t.id}),registeredComponents:[...getDefaultRegisteredComponents(),...((n=this.customComponents)==null?void 0:n.filter(({models:r})=>!(r!=null&&r.length)||!this.model?!0:r.includes(this.model)))||[]].reduce((r,{component:i,...s})=>({...r,[s.name]:{component:wrapComponentRef(i),...serializeIncludingFunctions(s)}}),{}),builderContextSignal:{content:getContentInitialValue({content:this.content,data:this.data}),localState:void 0,rootState:getRootStateInitialValue({content:this.content,data:this.data,locale:this.locale}),rootSetState:this.contentSetState,context:this.context||{},canTrack:this.canTrack,apiKey:this.apiKey,apiVersion:this.apiVersion,componentInfos:[...getDefaultRegisteredComponents(),...((o=this.customComponents)==null?void 0:o.filter(({models:r})=>!(r!=null&&r.length)||!this.model?!0:r.includes(this.model)))||[]].reduce((r,{component:i,...s})=>({...r,[s.name]:serializeIncludingFunctions(s)}),{}),inheritedStyles:{},BlocksWrapper:this.blocksWrapper||"div",BlocksWrapperProps:this.blocksWrapperProps||{},nonce:this.nonce||""},TARGET}},provide(){const e=this;return{[ComponentsContext.key]:{registeredComponents:e.registeredComponents}}},methods:{contentSetState(e){this.builderContextSignal.rootState=e}}});function _sfc_render$2(e,t,n,o,r,i){const s=vue.resolveComponent("InlinedScript"),l=vue.resolveComponent("ContentStyles"),a=vue.resolveComponent("Blocks"),u=vue.resolveComponent("EnableEditor");return vue.openBlock(),vue.createBlock(u,vue.mergeProps({nonce:e.nonce,content:e.content,data:e.data,model:e.model,context:e.context,apiKey:e.apiKey,canTrack:e.canTrack,locale:e.locale,enrich:e.enrich,showContent:e.showContent,builderContextSignal:e.builderContextSignal,contentWrapper:e.contentWrapper,contentWrapperProps:e.contentWrapperProps,trustedHosts:e.trustedHosts},{}),{default:vue.withCtx(()=>{var p,c,d,f,m,g,y;return[e.isSsrAbTest?(vue.openBlock(),vue.createBlock(s,{key:0,id:"builderio-variant-visibility",scriptStr:e.scriptStr,nonce:e.nonce||""},null,8,["scriptStr","nonce"])):vue.createCommentVNode("",!0),e.TARGET!=="reactNative"?(vue.openBlock(),vue.createBlock(l,{key:1,nonce:e.nonce||"",isNestedRender:e.isNestedRender,contentId:(p=e.builderContextSignal.content)==null?void 0:p.id,cssCode:(d=(c=e.builderContextSignal.content)==null?void 0:c.data)==null?void 0:d.cssCode,customFonts:(m=(f=e.builderContextSignal.content)==null?void 0:f.data)==null?void 0:m.customFonts},null,8,["nonce","isNestedRender","contentId","cssCode","customFonts"])):vue.createCommentVNode("",!0),vue.createVNode(a,{blocks:(y=(g=e.builderContextSignal.content)==null?void 0:g.data)==null?void 0:y.blocks,context:e.builderContextSignal,registeredComponents:e.registeredComponents,linkComponent:e.linkComponent},null,8,["blocks","context","registeredComponents","linkComponent"])]}),_:1},16,["nonce","content","data","model","context","apiKey","canTrack","locale","enrich","showContent","builderContextSignal","contentWrapper","contentWrapperProps","trustedHosts"])}const ContentComponent=_export_sfc(_sfc_main$2,[["render",_sfc_render$2]]),_sfc_main$1=vue.defineComponent({name:"content-variants",components:{InlinedScript:_sfc_main$5,InlinedStyles:_sfc_main$n,ContentComponent},props:["canTrack","content","isNestedRender","nonce","model","data","context","apiKey","apiVersion","customComponents","linkComponent","locale","enrich","blocksWrapper","blocksWrapperProps","contentWrapper","contentWrapperProps","trustedHosts"],data(){return{shouldRenderVariants:checkShouldRenderVariants({canTrack:getDefaultCanTrack(this.canTrack),content:this.content}),TARGET,getInitVariantsFnsScriptString,getVariants}},mounted(){},computed:{updateCookieAndStylesScriptStr(){var e;return getUpdateCookieAndStylesScript(getVariants(this.content).map(t=>({id:t.testVariationId,testRatio:t.testRatio})),((e=this.content)==null?void 0:e.id)||"")},hideVariantsStyleString(){return getVariants(this.content).map(e=>`.variant-${e.testVariationId} { display: none; } `).join("")},defaultContent(){var e;return this.shouldRenderVariants?{...this.content,testVariationId:(e=this.content)==null?void 0:e.id}:handleABTestingSync({item:this.content,canTrack:getDefaultCanTrack(this.canTrack)})}}});function _sfc_render$1(e,t,n,o,r,i){const s=vue.resolveComponent("InlinedScript"),l=vue.resolveComponent("InlinedStyles"),a=vue.resolveComponent("ContentComponent");return vue.openBlock(),vue.createElementBlock(vue.Fragment,null,[!e.isNestedRender&&e.TARGET!=="reactNative"?(vue.openBlock(),vue.createBlock(s,{key:0,id:"builderio-init-variants-fns",scriptStr:e.getInitVariantsFnsScriptString(),nonce:e.nonce||""},null,8,["scriptStr","nonce"])):vue.createCommentVNode("",!0),e.shouldRenderVariants?(vue.openBlock(),vue.createElementBlock(vue.Fragment,{key:1},[vue.createVNode(l,{id:"builderio-variants",styles:e.hideVariantsStyleString,nonce:e.nonce||""},null,8,["styles","nonce"]),vue.createVNode(s,{id:"builderio-variants-visibility",scriptStr:e.updateCookieAndStylesScriptStr,nonce:e.nonce||""},null,8,["scriptStr","nonce"]),(vue.openBlock(!0),vue.createElementBlock(vue.Fragment,null,vue.renderList(e.getVariants(e.content),(u,p)=>(vue.openBlock(),vue.createBlock(a,vue.mergeProps({key:u.testVariationId,isNestedRender:e.isNestedRender,nonce:e.nonce,content:u,showContent:!1,model:e.model,data:e.data,context:e.context,apiKey:e.apiKey,apiVersion:e.apiVersion,customComponents:e.customComponents,linkComponent:e.linkComponent,canTrack:e.canTrack,locale:e.locale,enrich:e.enrich,isSsrAbTest:e.shouldRenderVariants,blocksWrapper:e.blocksWrapper,blocksWrapperProps:e.blocksWrapperProps,contentWrapper:e.contentWrapper,contentWrapperProps:e.contentWrapperProps,trustedHosts:e.trustedHosts},{}),null,16,["isNestedRender","nonce","content","model","data","context","apiKey","apiVersion","customComponents","linkComponent","canTrack","locale","enrich","isSsrAbTest","blocksWrapper","blocksWrapperProps","contentWrapper","contentWrapperProps","trustedHosts"]))),128))],64)):vue.createCommentVNode("",!0),vue.createVNode(a,vue.mergeProps({nonce:e.nonce,isNestedRender:e.isNestedRender,content:e.defaultContent,showContent:!0,model:e.model,data:e.data,context:e.context,apiKey:e.apiKey,apiVersion:e.apiVersion,customComponents:e.customComponents,linkComponent:e.linkComponent,canTrack:e.canTrack,locale:e.locale,enrich:e.enrich,isSsrAbTest:e.shouldRenderVariants,blocksWrapper:e.blocksWrapper,blocksWrapperProps:e.blocksWrapperProps,contentWrapper:e.contentWrapper,contentWrapperProps:e.contentWrapperProps,trustedHosts:e.trustedHosts},{key:e.shouldRenderVariants.toString()}),null,16,["nonce","isNestedRender","content","model","data","context","apiKey","apiVersion","customComponents","linkComponent","canTrack","locale","enrich","isSsrAbTest","blocksWrapper","blocksWrapperProps","contentWrapper","contentWrapperProps","trustedHosts"])],64)}const ContentVariants=_export_sfc(_sfc_main$1,[["render",_sfc_render$1]]),fetchSymbolContent=async({builderContextValue:e,symbol:t})=>{if(t!=null&&t.model&&(e!=null&&e.apiKey))return fetchOneEntry({model:t.model,apiKey:e.apiKey,apiVersion:e.apiVersion,...(t==null?void 0:t.entry)&&{query:{id:t.entry}}}).catch(n=>{logger.error("Could not fetch symbol content: ",n)})},_sfc_main=vue.defineComponent({name:"builder-symbol",components:{ContentVariants,DynamicDiv},props:["symbol","attributes","dynamic","builderContext","builderBlock","builderComponents","builderLinkComponent"],data(){var e;return{contentToUse:(e=this.symbol)==null?void 0:e.content,filterAttrs}},mounted(){this.setContent()},watch:{onUpdateHook0:{handler(){this.setContent()},immediate:!0}},computed:{blocksWrapper(){return"div"},contentWrapper(){return"div"},className(){var e,t;return[this.attributes[getClassPropName()],"builder-symbol",(e=this.symbol)!=null&&e.inline?"builder-inline-symbol":void 0,(t=this.symbol)!=null&&t.dynamic||this.dynamic?"builder-dynamic-symbol":void 0].filter(Boolean).join(" ")},onUpdateHook0(){return{0:this.symbol}}},methods:{setContent(){this.contentToUse||fetchSymbolContent({symbol:this.symbol,builderContextValue:this.builderContext}).then(e=>{e&&(this.contentToUse=e)})}}});function _sfc_render(e,t,n,o,r,i){var l,a,u,p,c;const s=vue.resolveComponent("ContentVariants");return vue.openBlock(),vue.createElementBlock("div",vue.mergeProps({class:e.className},{...e.filterAttrs(e.attributes,"v-on:",!1)},vue.toHandlers(e.filterAttrs(e.attributes,"v-on:",!0),!0)),[vue.createVNode(s,{nonce:e.builderContext.nonce,isNestedRender:!0,apiVersion:e.builderContext.apiVersion,apiKey:e.builderContext.apiKey,context:{...e.builderContext.context,symbolId:(l=e.builderBlock)==null?void 0:l.id},customComponents:Object.values(e.builderComponents),data:{...(a=e.symbol)==null?void 0:a.data,...e.builderContext.localState,...(p=(u=e.contentToUse)==null?void 0:u.data)==null?void 0:p.state},canTrack:e.builderContext.canTrack,model:(c=e.symbol)==null?void 0:c.model,content:e.contentToUse,linkComponent:e.builderLinkComponent,blocksWrapper:e.blocksWrapper,contentWrapper:e.contentWrapper},null,8,["nonce","apiVersion","apiKey","context","customComponents","data","canTrack","model","content","linkComponent","blocksWrapper","contentWrapper"])],16)}const Symbol$1=_export_sfc(_sfc_main,[["render",_sfc_render]]);exports.Block=Block;exports.Blocks=Blocks;exports.BuilderContext=BuilderContext;exports.Button=Button;exports.Columns=Columns;exports.ContentVariants=ContentVariants;exports.Fragment=Fragment;exports.Image=Image;exports.Section=Section;exports.Symbol=Symbol$1;exports.TARGET=TARGET;exports.Text=Text;exports.Video=Video;exports._export_sfc=_export_sfc;exports._processContentResult=_processContentResult;exports._sfc_main=_sfc_main$n;exports.block=block;exports.camelToKebabCase=camelToKebabCase;exports.checkIsDefined=checkIsDefined;exports.createCssClass=createCssClass;exports.createRegisterComponentMessage=createRegisterComponentMessage;exports.dynamicRenderer=dynamicRenderer;exports.evaluate=evaluate;exports.fetchBuilderProps=fetchBuilderProps;exports.fetchEntries=fetchEntries;exports.fetchOneEntry=fetchOneEntry;exports.getBuilderSearchParams=getBuilderSearchParams;exports.getClassPropName=getClassPropName;exports.getMaxWidthQueryForSize=getMaxWidthQueryForSize;exports.getSizesForBreakpoints=getSizesForBreakpoints;exports.getStyle=getStyle;exports.isEditing=isEditing;exports.isPreviewing=isPreviewing;exports.register=register;exports.setEditorSettings=setEditorSettings;exports.subscribeToEditor=subscribeToEditor;exports.track=track;exports.wrapComponentRef=wrapComponentRef;