@builder.io/sdk-vue 0.1.15 → 0.2.0

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 (69) hide show
  1. package/package.json +1 -1
  2. package/packages/_vue2/dist/{block-styles.63856bc4.js → block-styles.97de2652.js} +3 -3
  3. package/packages/_vue2/dist/{block-styles.64f7ab0b.cjs → block-styles.ef03a37e.cjs} +1 -1
  4. package/packages/_vue2/dist/{css.58be3b1a.js → css.4d4e03cf.js} +1 -1
  5. package/packages/{_vue3/dist/css.0e8cdb1f.cjs → _vue2/dist/css.75f390cc.cjs} +2 -2
  6. package/packages/_vue2/dist/{index.2ec605d6.js → index.346656f6.js} +202 -174
  7. package/packages/_vue2/dist/{index.d36a8d30.cjs → index.c72abf65.cjs} +4 -4
  8. package/packages/_vue2/dist/{render-block.9c575fe4.js → render-block.1c1312ce.js} +8 -7
  9. package/packages/_vue2/dist/{render-block.27d74903.cjs → render-block.2880ad6e.cjs} +2 -2
  10. package/packages/_vue2/dist/{render-component.eb68da75.cjs → render-component.4ed8b740.cjs} +1 -1
  11. package/packages/_vue2/dist/{render-component.f02e22b8.js → render-component.de99974e.js} +3 -3
  12. package/packages/_vue2/dist/{render-inlined-styles.aae44017.js → render-inlined-styles.1c2c5bf9.js} +1 -1
  13. package/packages/_vue2/dist/{render-inlined-styles.6d7b4bcd.cjs → render-inlined-styles.3797e28a.cjs} +1 -1
  14. package/packages/_vue2/dist/{render-repeated-block.15c3e138.js → render-repeated-block.d7d1e175.js} +2 -2
  15. package/packages/_vue2/dist/{render-repeated-block.50a69f24.cjs → render-repeated-block.dc48228e.cjs} +1 -1
  16. package/packages/_vue2/dist/{render-styles.ae738d07.cjs → render-styles.23d118f3.cjs} +3 -3
  17. package/packages/_vue2/dist/{render-styles.168164da.js → render-styles.a61feef4.js} +2 -2
  18. package/packages/_vue2/dist/sdk.cjs +1 -1
  19. package/packages/_vue2/dist/sdk.js +1 -1
  20. package/packages/_vue2/dist/src/blocks/button/button.vue.d.ts +1 -0
  21. package/packages/_vue2/dist/src/blocks/columns/columns.vue.d.ts +13 -11
  22. package/packages/_vue2/dist/src/blocks/symbol/symbol.vue.d.ts +9 -9
  23. package/packages/_vue2/dist/src/components/render-block/block-styles.vue.d.ts +2 -2
  24. package/packages/_vue2/dist/src/components/render-block/render-block.vue.d.ts +2 -2
  25. package/packages/_vue2/dist/src/components/render-block/render-component.vue.d.ts +2 -2
  26. package/packages/_vue2/dist/src/components/render-blocks.vue.d.ts +1 -1
  27. package/packages/_vue2/dist/src/components/render-content/render-content.vue.d.ts +10 -9
  28. package/packages/_vue2/dist/src/context/types.d.ts +1 -1
  29. package/packages/_vue2/dist/src/functions/get-content/index.d.ts +5 -5
  30. package/packages/_vue2/dist/src/functions/get-content/types.d.ts +1 -1
  31. package/packages/_vue2/dist/src/types/api-version.d.ts +1 -0
  32. package/packages/_vue2/dist/style.css +1 -1
  33. package/packages/_vue3/dist/{block-styles.d483335e.cjs → block-styles.32155e57.cjs} +1 -1
  34. package/packages/_vue3/dist/{block-styles.6a927af3.js → block-styles.40e4c9b5.js} +3 -3
  35. package/packages/_vue3/dist/{css.33422e4d.js → css.77c76358.js} +1 -1
  36. package/packages/{_vue2/dist/css.ae8c605c.cjs → _vue3/dist/css.785b2126.cjs} +2 -2
  37. package/packages/_vue3/dist/{index.0f89dc70.js → index.4931a4d1.js} +195 -167
  38. package/packages/_vue3/dist/index.9fb3a7e0.cjs +29 -0
  39. package/packages/_vue3/dist/{render-block.b58d92f6.js → render-block.6fa26228.js} +68 -46
  40. package/packages/_vue3/dist/render-block.cfb6d51a.cjs +3 -0
  41. package/packages/_vue3/dist/render-component.2721bc0c.cjs +1 -0
  42. package/packages/_vue3/dist/render-component.44d63ad3.js +26 -0
  43. package/packages/_vue3/dist/{render-inlined-styles.d509e95b.cjs → render-inlined-styles.b1441d2d.cjs} +1 -1
  44. package/packages/_vue3/dist/{render-inlined-styles.4a3bac4e.js → render-inlined-styles.dccd4787.js} +1 -1
  45. package/packages/_vue3/dist/render-repeated-block.1360a469.cjs +1 -0
  46. package/packages/_vue3/dist/{render-repeated-block.56e41ffd.js → render-repeated-block.e5d7da62.js} +4 -4
  47. package/packages/_vue3/dist/{render-styles.a82e2999.js → render-styles.850fddb0.js} +2 -2
  48. package/packages/_vue3/dist/{render-styles.ca6a6289.cjs → render-styles.e1959d28.cjs} +5 -5
  49. package/packages/_vue3/dist/sdk.cjs +1 -1
  50. package/packages/_vue3/dist/sdk.js +1 -1
  51. package/packages/_vue3/dist/src/blocks/button/button.vue.d.ts +1 -0
  52. package/packages/_vue3/dist/src/blocks/columns/columns.vue.d.ts +13 -11
  53. package/packages/_vue3/dist/src/blocks/image/image.vue.d.ts +1 -1
  54. package/packages/_vue3/dist/src/blocks/symbol/symbol.vue.d.ts +18 -9
  55. package/packages/_vue3/dist/src/components/render-block/block-styles.vue.d.ts +2 -2
  56. package/packages/_vue3/dist/src/components/render-block/render-block.vue.d.ts +2 -2
  57. package/packages/_vue3/dist/src/components/render-block/render-component.vue.d.ts +2 -2
  58. package/packages/_vue3/dist/src/components/render-blocks.vue.d.ts +1 -1
  59. package/packages/_vue3/dist/src/components/render-content/render-content.vue.d.ts +10 -9
  60. package/packages/_vue3/dist/src/context/types.d.ts +1 -1
  61. package/packages/_vue3/dist/src/functions/get-content/index.d.ts +5 -5
  62. package/packages/_vue3/dist/src/functions/get-content/types.d.ts +1 -1
  63. package/packages/_vue3/dist/src/types/api-version.d.ts +1 -0
  64. package/packages/_vue3/dist/style.css +1 -1
  65. package/packages/_vue3/dist/index.461c31d1.cjs +0 -29
  66. package/packages/_vue3/dist/render-block.25c9ee7e.cjs +0 -3
  67. package/packages/_vue3/dist/render-component.34e84d86.js +0 -42
  68. package/packages/_vue3/dist/render-component.741e326a.cjs +0 -1
  69. package/packages/_vue3/dist/render-repeated-block.ea827f2f.cjs +0 -1
@@ -1,4 +1,3 @@
1
- import type { BuilderBlock } from "../../types/builder-block.js";
2
1
  export interface ImageProps {
3
2
  className?: string;
4
3
  image: string;
@@ -17,6 +16,7 @@ export interface ImageProps {
17
16
  noWebp?: boolean;
18
17
  src?: string;
19
18
  }
19
+ import { BuilderBlock } from "../../types/builder-block.js";
20
20
  declare const _sfc_main: {
21
21
  name: string;
22
22
  props: string[];
@@ -1,5 +1,3 @@
1
- import type { BuilderContent } from "../../types/builder-content.js";
2
- import type { BuilderBlock } from "../../types/builder-block.js";
3
1
  export interface SymbolInfo {
4
2
  model?: string;
5
3
  entry?: string;
@@ -16,6 +14,8 @@ export interface SymbolProps {
16
14
  attributes?: any;
17
15
  inheritState?: boolean;
18
16
  }
17
+ import { BuilderContent } from "../../types/builder-content.js";
18
+ import { BuilderBlock } from "../../types/builder-block.js";
19
19
  declare const _sfc_main: {
20
20
  name: string;
21
21
  components: {
@@ -80,6 +80,15 @@ declare const _sfc_main: {
80
80
  methods: {
81
81
  onClick(): void;
82
82
  onMouseEnter(): void;
83
+ /**
84
+ * If:
85
+ * - we have a symbol prop
86
+ * - yet it does not have any content
87
+ * - and we have not already stored content from before
88
+ * - and it has a model name
89
+ *
90
+ * then we want to re-fetch the symbol content.
91
+ */
83
92
  _classStringToObject(str: any): {};
84
93
  };
85
94
  };
@@ -137,16 +146,16 @@ declare const _sfc_main: {
137
146
  onUpdateHook3(): any;
138
147
  };
139
148
  methods: {
140
- mergeNewContent(newContent: any): void;
141
- setBreakpoints(breakpoints: any): void;
142
- setContextState(newState: any): void;
143
- processMessage(event: any): void;
149
+ mergeNewContent(newContent: BuilderContent): void;
150
+ setBreakpoints(breakpoints: import("../../types/builder-content.js").Breakpoints): void;
151
+ setContextState(newState: import("../../context/types.js").BuilderRenderState): void;
152
+ processMessage(event: MessageEvent<any>): void;
144
153
  evaluateJsCode(): void;
145
154
  onClick(event: any): void;
146
- evalExpression(expression: any): any;
155
+ evalExpression(expression: string): string;
147
156
  handleRequest({ url, key }: {
148
- url: any;
149
- key: any;
157
+ key: string;
158
+ url: string;
150
159
  }): void;
151
160
  runHttpRequests(): void;
152
161
  emitStateUpdate(): void;
@@ -1,9 +1,9 @@
1
- import type { BuilderContextInterface } from "../../context/types.js";
2
- import type { BuilderBlock } from "../../types/builder-block.js";
3
1
  export type BlockStylesProps = {
4
2
  block: BuilderBlock;
5
3
  context: BuilderContextInterface;
6
4
  };
5
+ import { BuilderContextInterface } from "../../context/types.js";
6
+ import { BuilderBlock } from "../../types/builder-block.js";
7
7
  declare const _sfc_main: {
8
8
  name: string;
9
9
  components: {
@@ -1,8 +1,8 @@
1
- import type { BuilderContextInterface } from "../../context/types.js";
2
- import type { BuilderBlock } from "../../types/builder-block.js";
3
1
  export type RenderBlockProps = {
4
2
  block: BuilderBlock;
5
3
  context: BuilderContextInterface;
6
4
  };
5
+ import { BuilderContextInterface } from "../../context/types.js";
6
+ import { BuilderBlock } from "../../types/builder-block.js";
7
7
  declare const _sfc_main: any;
8
8
  export default _sfc_main;
@@ -1,5 +1,3 @@
1
- import type { BuilderBlock } from "../../types/builder-block.js";
2
- import type { BuilderContextInterface } from "../../context/types.js";
3
1
  type ComponentOptions = {
4
2
  [index: string]: any;
5
3
  attributes?: {
@@ -12,5 +10,7 @@ export interface RenderComponentProps {
12
10
  blockChildren: BuilderBlock[];
13
11
  context: BuilderContextInterface;
14
12
  }
13
+ import { BuilderBlock } from "../../types/builder-block.js";
14
+ import { BuilderContextInterface } from "../../context/types.js";
15
15
  declare const _sfc_main: any;
16
16
  export default _sfc_main;
@@ -1,10 +1,10 @@
1
- import type { BuilderBlock } from "../types/builder-block.js";
2
1
  export type RenderBlockProps = {
3
2
  blocks?: BuilderBlock[];
4
3
  parent?: string;
5
4
  path?: string;
6
5
  styleProp?: Record<string, any>;
7
6
  };
7
+ import { BuilderBlock } from "../types/builder-block.js";
8
8
  declare const _sfc_main: {
9
9
  name: string;
10
10
  components: {
@@ -1,5 +1,6 @@
1
- import type { BuilderContent } from "../../types/builder-content.js";
2
- import type { Nullable } from "../../types/typescript.js";
1
+ import { BuilderRenderState } from "../../context/types.js";
2
+ import { Breakpoints, BuilderContent } from "../../types/builder-content.js";
3
+ import { Nullable } from "../../types/typescript.js";
3
4
  declare const _sfc_main: {
4
5
  name: string;
5
6
  components: {
@@ -118,16 +119,16 @@ declare const _sfc_main: {
118
119
  onUpdateHook3(): any;
119
120
  };
120
121
  methods: {
121
- mergeNewContent(newContent: any): void;
122
- setBreakpoints(breakpoints: any): void;
123
- setContextState(newState: any): void;
124
- processMessage(event: any): void;
122
+ mergeNewContent(newContent: BuilderContent): void;
123
+ setBreakpoints(breakpoints: Breakpoints): void;
124
+ setContextState(newState: BuilderRenderState): void;
125
+ processMessage(event: MessageEvent): void;
125
126
  evaluateJsCode(): void;
126
127
  onClick(event: any): void;
127
- evalExpression(expression: any): any;
128
+ evalExpression(expression: string): string;
128
129
  handleRequest({ url, key }: {
129
- url: any;
130
- key: any;
130
+ key: string;
131
+ url: string;
131
132
  }): void;
132
133
  runHttpRequests(): void;
133
134
  emitStateUpdate(): void;
@@ -14,7 +14,7 @@ export interface BuilderContextInterface {
14
14
  state: BuilderRenderState;
15
15
  setState?: (state: BuilderRenderState) => void;
16
16
  apiKey: string | null;
17
- apiVersion?: ApiVersion;
17
+ apiVersion: ApiVersion | undefined;
18
18
  registeredComponents: RegisteredComponents;
19
19
  inheritedStyles: Record<string, unknown>;
20
20
  }
@@ -1,11 +1,11 @@
1
1
  import type { BuilderContent } from '../../types/builder-content.js';
2
2
  import type { GetContentOptions } from './types.js';
3
3
  export declare function getContent(options: GetContentOptions): Promise<BuilderContent | null>;
4
- /**
5
- * TO-DO: Handle error responses.
6
- */
7
- interface ContentResponse {
4
+ type ContentResponse = {
8
5
  results: BuilderContent[];
9
- }
6
+ } | {
7
+ status: number;
8
+ message: string;
9
+ };
10
10
  export declare function getAllContent(options: GetContentOptions): Promise<ContentResponse>;
11
11
  export {};
@@ -39,7 +39,7 @@ export interface GetContentOptions {
39
39
  /**
40
40
  * If provided, sets the Builder API version used to fetch content.
41
41
  *
42
- * Defaults to `v2`.
42
+ * Defaults to `v3`.
43
43
  */
44
44
  apiVersion?: 'v2' | 'v3';
45
45
  }
@@ -1 +1,2 @@
1
1
  export type ApiVersion = 'v2' | 'v3';
2
+ export declare const DEFAULT_API_VERSION: ApiVersion;
@@ -1 +1 @@
1
- .button-1yj9n7yt24z[data-v-28c9cee7]{all:unset}.div-361b1o6wv2k[data-v-3ecef188]{display:flex;line-height:normal}.div-361b1o6wv2k-2[data-v-3ecef188]{display:flex;flex-direction:column;align-items:stretch}.img-7jvpanrlkn[data-v-22833d9f]{opacity:1;transition:opacity .2s ease-in-out}.div-7jvpanrlkn[data-v-22833d9f]{width:100%;pointer-events:none;font-size:0}.div-7jvpanrlkn-2[data-v-22833d9f]{display:flex;flex-direction:column;align-items:stretch;position:absolute;top:0;left:0;width:100%;height:100%}.div-7fq9d0i380[data-v-1112d180]{display:flex;flex-direction:column;align-items:stretch}
1
+ .button-1yj9n7yt24z[data-v-498ca04d]{all:unset}.div-361b1o6wv2k[data-v-61331a26]{display:flex;line-height:normal}.div-361b1o6wv2k-2[data-v-61331a26]{display:flex;flex-direction:column;align-items:stretch}.img-7jvpanrlkn[data-v-5b6b00d7]{opacity:1;transition:opacity .2s ease-in-out}.div-7jvpanrlkn[data-v-5b6b00d7]{width:100%;pointer-events:none;font-size:0}.div-7jvpanrlkn-2[data-v-5b6b00d7]{display:flex;flex-direction:column;align-items:stretch;position:absolute;top:0;left:0;width:100%;height:100%}.div-4o9pb21oca6[data-v-67dd3ed2]{display:flex;flex-direction:column;align-items:stretch}
@@ -1,29 +0,0 @@
1
- "use strict";const s=require("vue"),fe={name:"builder-button",props:["attributes","text","link","openLinkInNewTab"],methods:{filterAttrs:function(n={},t){const o="v-on:";return Object.keys(n).filter(i=>{const r=i.startsWith(o);return t?r:!r}).reduce((i,r)=>({...i,[r.replace(o,"")]:n[r]}),{})}}};const p=(e,n)=>{const t=e.__vccOpts||e;for(const[o,i]of n)t[o]=i;return t},ge=["href","target"];function be(e,n,t,o,i,r){return t.link?(s.openBlock(),s.createElementBlock("a",s.mergeProps({key:0,role:"button",href:t.link,target:t.openLinkInNewTab?"_blank":void 0},r.filterAttrs(t.attributes,!1),s.toHandlers(r.filterAttrs(t.attributes,!0),!0)),s.toDisplayString(t.text),17,ge)):(s.openBlock(),s.createElementBlock("button",s.mergeProps({key:1,class:"button-1yj9n7yt24z"},r.filterAttrs(t.attributes,!1),s.toHandlers(r.filterAttrs(t.attributes,!0),!0)),s.toDisplayString(t.text),17))}const M=p(fe,[["render",be],["__scopeId","data-v-28c9cee7"]]),S=e=>JSON.parse(JSON.stringify(e)),L={small:{min:320,default:321,max:640},medium:{min:641,default:642,max:991},large:{min:990,default:991,max:1200}},ye=(e,n=L)=>`@media (max-width: ${n[e].max}px)`,$=({small:e,medium:n})=>{const t=S(L);if(!e||!n)return t;const o=Math.floor(e/2);t.small={max:e,min:o,default:o+1};const i=t.small.max+1;t.medium={max:n,min:i,default:i+1};const r=t.medium.max+1;return t.large={max:2e3,min:r,default:r+1},t},k="vue3",ke=Symbol(),x={Builder:{content:null,context:{},state:{},setState(){},apiKey:null,apiVersion:void 0,registeredComponents:{},inheritedStyles:{}},key:ke},ve=()=>Promise.resolve().then(()=>q).then(e=>e.default).catch(e=>{throw console.error("Error while attempting to dynamically import component RenderBlocks at ../../components/render-blocks.vue",e),e}),xe=()=>Promise.resolve().then(()=>require("./render-inlined-styles.d509e95b.cjs")).then(e=>e.default).catch(e=>{throw console.error("Error while attempting to dynamically import component RenderInlinedStyles at ../../components/render-inlined-styles.vue",e),e}),Se={name:"builder-columns",components:{RenderInlinedStyles:s.defineAsyncComponent(xe),RenderBlocks:s.defineAsyncComponent(ve)},props:["space","columns","stackColumnsAt","reverseColumnsWhenStacked","builderBlock"],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:k}},inject:{builderContext:x.key},computed:{columnsCssVars(){return{"--flex-dir":this.flexDir,"--flex-dir-tablet":this.getTabletStyle({stackedStyle:this.flexDir,desktopStyle:"row"})}},columnsStyles(){return`
2
- @media (max-width: ${this.getWidthForBreakpointSize("medium")}px) {
3
- .${this.builderBlock.id}-breakpoints {
4
- flex-direction: var(--flex-dir-tablet);
5
- align-items: stretch;
6
- }
7
-
8
- .${this.builderBlock.id}-breakpoints > .builder-column {
9
- width: var(--column-width-tablet) !important;
10
- margin-left: var(--column-margin-left-tablet) !important;
11
- }
12
- }
13
-
14
- @media (max-width: ${this.getWidthForBreakpointSize("small")}px) {
15
- .${this.builderBlock.id}-breakpoints {
16
- flex-direction: var(--flex-dir);
17
- align-items: stretch;
18
- }
19
-
20
- .${this.builderBlock.id}-breakpoints > .builder-column {
21
- width: var(--column-width-mobile) !important;
22
- margin-left: var(--column-margin-left-mobile) !important;
23
- }
24
- },
25
- `}},methods:{getWidth(e){var n;return((n=this.cols[e])==null?void 0:n.width)||100/this.cols.length},getColumnCssWidth(e){const n=this.gutterSize*(this.cols.length-1)/this.cols.length;return`calc(${this.getWidth(e)}% - ${n}px)`},getTabletStyle({stackedStyle:e,desktopStyle:n}){return this.stackAt==="tablet"?e:n},getMobileStyle({stackedStyle:e,desktopStyle:n}){return this.stackAt==="never"?n:e},columnCssVars(e){e===0||this.gutterSize;const n=this.getColumnCssWidth(e),t=`${this.gutterSize}px`,o="100%",i=0;return{width:n,"margin-left":t,"--column-width-mobile":this.getMobileStyle({stackedStyle:o,desktopStyle:n}),"--column-margin-left-mobile":this.getMobileStyle({stackedStyle:i,desktopStyle:t}),"--column-width-tablet":this.getTabletStyle({stackedStyle:o,desktopStyle:n}),"--column-margin-left-tablet":this.getTabletStyle({stackedStyle:i,desktopStyle:t})}},getWidthForBreakpointSize(e){var t,o;return $(((o=(t=this.builderContext.content)==null?void 0:t.meta)==null?void 0:o.breakpoints)||{})[e].max},_classStringToObject(e){const n={};if(typeof e!="string")return n;const t=e.trim().split(/\s+/);for(const o of t)n[o]=!0;return n}}};function Ce(e,n,t,o,i,r){const a=s.resolveComponent("render-inlined-styles"),l=s.resolveComponent("render-blocks");return s.openBlock(),s.createElementBlock("div",{class:s.normalizeClass(r._classStringToObject(`builder-columns ${t.builderBlock.id}-breakpoints div-361b1o6wv2k`)),style:s.normalizeStyle(r.columnsCssVars),dataSet:{"builder-block-name":"builder-columns"}},[i.TARGET!=="reactNative"?(s.openBlock(),s.createBlock(a,{key:0,styles:r.columnsStyles},null,8,["styles"])):s.createCommentVNode("",!0),(s.openBlock(!0),s.createElementBlock(s.Fragment,null,s.renderList(t.columns,(c,d)=>(s.openBlock(),s.createElementBlock("div",{key:d,class:"builder-column div-361b1o6wv2k-2",style:s.normalizeStyle(r.columnCssVars(d)),dataSet:{"builder-block-name":"builder-column"}},[s.createVNode(l,{blocks:c.blocks,path:`component.options.columns.${d}.blocks`,parent:t.builderBlock.id,styleProp:{flexGrow:"1"}},null,8,["blocks","path","parent"])],4))),128))],6)}const z=p(Se,[["render",Ce],["__scopeId","data-v-3ecef188"]]),_e={name:"builder-fragment-component",props:[]};function we(e,n,t,o,i,r){return s.openBlock(),s.createElementBlock("span",null,[s.renderSlot(e.$slots,"default")])}const H=p(_e,[["render",we]]);function P(e){return e.replace(/http(s)?:/,"")}function Ie(e="",n,t){const o=new RegExp("([?&])"+n+"=.*?(&|$)","i"),i=e.indexOf("?")!==-1?"&":"?";return e.match(o)?e.replace(o,"$1"+n+"="+encodeURIComponent(t)+"$2"):e+i+n+"="+encodeURIComponent(t)}function Te(e,n){if(!e||!(e!=null&&e.match(/cdn\.shopify\.com/))||!n)return e;if(n==="master")return P(e);const t=e.match(/(_\d+x(\d+)?)?(\.(jpg|jpeg|gif|png|bmp|bitmap|tiff|tif)(\?v=\d+)?)/i);if(t){const o=e.split(t[0]),i=t[3],r=n.match("x")?n:`${n}x`;return P(`${o[0]}_${r}${i}`)}return null}function _(e){if(!e)return e;const n=[100,200,400,800,1200,1600,2e3];if(e.match(/builder\.io/)){let t=e;const o=Number(e.split("?width=")[1]);return isNaN(o)||(t=`${t} ${o}w`),n.filter(i=>i!==o).map(i=>`${Ie(e,"width",i)} ${i}w`).concat([t]).join(", ")}return e.match(/cdn\.shopify\.com/)?n.map(t=>[Te(e,`${t}x${t}`),t]).filter(([t])=>!!t).map(([t,o])=>`${t} ${o}w`).concat([e]).join(", "):e}const Re={name:"builder-image",props:["image","src","srcset","noWebp","aspectRatio","altText","backgroundPosition","backgroundSize","className","sizes","builderBlock","fitContent"],computed:{srcSetToUse(){var t;const n=this.image||this.src;if(!n||!(n.match(/builder\.io/)||n.match(/cdn\.shopify\.com/)))return this.srcset;if(this.srcset&&((t=this.image)==null?void 0:t.includes("builder.io/api/v1/image"))){if(!this.srcset.includes(this.image.split("?")[0]))return console.debug("Removed given srcset"),_(n)}else if(this.image&&!this.srcset)return _(n);return _(n)},webpSrcSet(){var e;return((e=this.srcSetToUse)==null?void 0:e.match(/builder\.io/))&&!this.noWebp?this.srcSetToUse.replace(/\?/g,"?format=webp&"):""},aspectRatioCss(){const e={position:"absolute",height:"100%",width:"100%",left:"0px",top:"0px"};return this.aspectRatio?e:void 0}},methods:{_classStringToObject(e){const n={};if(typeof e!="string")return n;const t=e.trim().split(/\s+/);for(const o of t)n[o]=!0;return n}}};const Be=["srcset"],Ee=["alt","role","src","srcset","sizes"],Ae={key:2,class:"div-7jvpanrlkn-2"};function Pe(e,n,t,o,i,r){var a,l,c,d;return s.openBlock(),s.createElementBlock(s.Fragment,null,[s.createElementVNode("picture",null,[r.webpSrcSet?(s.openBlock(),s.createElementBlock("source",{key:0,type:"image/webp",srcset:r.webpSrcSet},null,8,Be)):s.createCommentVNode("",!0),s.createElementVNode("img",{loading:"lazy",alt:t.altText,role:t.altText?"presentation":void 0,style:s.normalizeStyle({objectPosition:t.backgroundPosition||"center",objectFit:t.backgroundSize||"cover",...r.aspectRatioCss}),class:s.normalizeClass(r._classStringToObject("builder-image"+(t.className?" "+t.className:"")+" img-7jvpanrlkn")),src:t.image,srcset:r.srcSetToUse,sizes:t.sizes},null,14,Ee)]),t.aspectRatio&&!(((l=(a=t.builderBlock)==null?void 0:a.children)==null?void 0:l.length)&&t.fitContent)?(s.openBlock(),s.createElementBlock("div",{key:0,class:"builder-image-sizer div-7jvpanrlkn",style:s.normalizeStyle({paddingTop:t.aspectRatio*100+"%"})},null,4)):s.createCommentVNode("",!0),((d=(c=t.builderBlock)==null?void 0:c.children)==null?void 0:d.length)&&t.fitContent?s.renderSlot(e.$slots,"default",{key:1},void 0,!0):s.createCommentVNode("",!0),!t.fitContent&&e.children?(s.openBlock(),s.createElementBlock("div",Ae,[s.renderSlot(e.$slots,"default",{},void 0,!0)])):s.createCommentVNode("",!0)],64)}const K=p(Re,[["render",Pe],["__scopeId","data-v-22833d9f"]]);function m(){return typeof window<"u"&&typeof document<"u"}function Ve(){return m()&&window.self!==window.top}function b(){return Ve()&&window.location.search.indexOf("builder.frameEditing=")!==-1}const je=()=>Promise.resolve().then(()=>require("./block-styles.d483335e.cjs")).then(e=>e.default).catch(e=>{throw console.error("Error while attempting to dynamically import component BlockStyles at ./render-block/block-styles.vue",e),e}),Fe=()=>Promise.resolve().then(()=>require("./render-block.25c9ee7e.cjs")).then(e=>e.default).catch(e=>{throw console.error("Error while attempting to dynamically import component RenderBlock at ./render-block/render-block.vue",e),e}),Oe={name:"render-blocks",components:{RenderBlock:s.defineAsyncComponent(Fe),BlockStyles:s.defineAsyncComponent(je)},props:["blocks","parent","path","styleProp"],inject:{builderContext:x.key},computed:{className(){var e;return"builder-blocks"+((e=this.blocks)!=null&&e.length?"":" no-blocks")}},methods:{onClick(){var e,n;b()&&!((e=this.blocks)!=null&&e.length)&&((n=window.parent)==null||n.postMessage({type:"builder.clickEmptyBlocks",data:{parentElementId:this.parent,dataPath:this.path}},"*"))},onMouseEnter(){var e,n;b()&&!((e=this.blocks)!=null&&e.length)&&((n=window.parent)==null||n.postMessage({type:"builder.hoverEmptyBlocks",data:{parentElementId:this.parent,dataPath:this.path}},"*"))},_classStringToObject(e){const n={};if(typeof e!="string")return n;const t=e.trim().split(/\s+/);for(const o of t)n[o]=!0;return n}}};const Ue=["builder-path","builder-parent-id","dataSet"];function Ne(e,n,t,o,i,r){const a=s.resolveComponent("render-block"),l=s.resolveComponent("block-styles");return s.openBlock(),s.createElementBlock("div",{class:s.normalizeClass(r._classStringToObject(r.className+" div-7fq9d0i380")),"builder-path":t.path,"builder-parent-id":t.parent,dataSet:{class:r.className},style:s.normalizeStyle(t.styleProp),onClick:n[0]||(n[0]=c=>r.onClick()),onMouseenter:n[1]||(n[1]=c=>r.onMouseEnter())},[t.blocks?(s.openBlock(!0),s.createElementBlock(s.Fragment,{key:0},s.renderList(t.blocks,(c,d)=>(s.openBlock(),s.createBlock(a,{key:"render-block-"+c.id,block:c,context:r.builderContext},null,8,["block","context"]))),128)):s.createCommentVNode("",!0),t.blocks?(s.openBlock(!0),s.createElementBlock(s.Fragment,{key:1},s.renderList(t.blocks,(c,d)=>(s.openBlock(),s.createBlock(l,{key:"block-style-"+c.id,block:c,context:r.builderContext},null,8,["block","context"]))),128)):s.createCommentVNode("",!0)],46,Ue)}const D=p(Oe,[["render",Ne],["__scopeId","data-v-1112d180"]]),q=Object.freeze(Object.defineProperty({__proto__:null,default:D},Symbol.toStringTag,{value:"Module"})),We={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},C=e=>{const n=e.toString().trim();return`return (${!n.startsWith("function")&&!n.startsWith("(")?"function ":""}${n}).apply(this, arguments)`},Me={name:"Columns",inputs:[{name:"columns",type:"array",broadcast:!0,subFields:[{name:"blocks",type:"array",hideFromUI:!0,defaultValue:[{"@type":"@builder.io/sdk:Element",responsiveStyles:{large:{display:"flex",flexDirection:"column",alignItems:"stretch",flexShrink:"0",position:"relative",marginTop:"30px",textAlign:"center",lineHeight:"normal",height:"auto",minHeight:"20px",minWidth:"20px",overflow:"hidden"}},component:{name:"Image",options:{image:"https://builder.io/api/v1/image/assets%2Fpwgjf0RoYWbdnJSbpBAjXNRMe9F2%2Ffb27a7c790324294af8be1c35fe30f4d",backgroundPosition:"center",backgroundSize:"cover",aspectRatio:.7004048582995948}}},{"@type":"@builder.io/sdk:Element",responsiveStyles:{large:{display:"flex",flexDirection:"column",alignItems:"stretch",flexShrink:"0",position:"relative",marginTop:"30px",textAlign:"center",lineHeight:"normal",height:"auto"}},component:{name:"Text",options:{text:"<p>Enter some text...</p>"}}}]},{name:"width",type:"number",hideFromUI:!0,helperText:"Width %, e.g. set to 50 to fill half of the space"},{name:"link",type:"url",helperText:"Optionally set a url that clicking this column will link to"}],defaultValue:[{blocks:[{"@type":"@builder.io/sdk:Element",responsiveStyles:{large:{display:"flex",flexDirection:"column",alignItems:"stretch",flexShrink:"0",position:"relative",marginTop:"30px",textAlign:"center",lineHeight:"normal",height:"auto",minHeight:"20px",minWidth:"20px",overflow:"hidden"}},component:{name:"Image",options:{image:"https://builder.io/api/v1/image/assets%2Fpwgjf0RoYWbdnJSbpBAjXNRMe9F2%2Ffb27a7c790324294af8be1c35fe30f4d",backgroundPosition:"center",backgroundSize:"cover",aspectRatio:.7004048582995948}}},{"@type":"@builder.io/sdk:Element",responsiveStyles:{large:{display:"flex",flexDirection:"column",alignItems:"stretch",flexShrink:"0",position:"relative",marginTop:"30px",textAlign:"center",lineHeight:"normal",height:"auto"}},component:{name:"Text",options:{text:"<p>Enter some text...</p>"}}}]},{blocks:[{"@type":"@builder.io/sdk:Element",responsiveStyles:{large:{display:"flex",flexDirection:"column",alignItems:"stretch",flexShrink:"0",position:"relative",marginTop:"30px",textAlign:"center",lineHeight:"normal",height:"auto",minHeight:"20px",minWidth:"20px",overflow:"hidden"}},component:{name:"Image",options:{image:"https://builder.io/api/v1/image/assets%2Fpwgjf0RoYWbdnJSbpBAjXNRMe9F2%2Ffb27a7c790324294af8be1c35fe30f4d",backgroundPosition:"center",backgroundSize:"cover",aspectRatio:.7004048582995948}}},{"@type":"@builder.io/sdk:Element",responsiveStyles:{large:{display:"flex",flexDirection:"column",alignItems:"stretch",flexShrink:"0",position:"relative",marginTop:"30px",textAlign:"center",lineHeight:"normal",height:"auto"}},component:{name:"Text",options:{text:"<p>Enter some text...</p>"}}}]}],onChange:C(e=>{function n(){t.forEach(o=>{o.delete("width")})}const t=e.get("columns");Array.isArray(t)&&!!t.find(i=>i.get("width"))&&(!!t.find(r=>!r.get("width"))||t.reduce((l,c)=>l+c.get("width"),0)!==100)&&n()})},{name:"space",type:"number",defaultValue:20,helperText:"Size of gap between columns",advanced:!0},{name:"stackColumnsAt",type:"string",defaultValue:"tablet",helperText:"Convert horizontal columns to vertical at what device size",enum:["tablet","mobile","never"],advanced:!0},{name:"reverseColumnsWhenStacked",type:"boolean",defaultValue:!1,helperText:"When stacking columns for mobile devices, reverse the ordering",advanced:!0}]},Le={name:"Fragment",static:!0,hidden:!0,canHaveChildren:!0,noWrap:!0},$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"],required:!0,defaultValue:"https://cdn.builder.io/api/v1/image/assets%2FYJIGb4i01jvw0SRdL5Bt%2F72c80f114dc149019051b6852a9e3b7a",onChange:C(e=>{e.delete("srcset"),e.delete("noWebp");function t(a,l=6e4){return new Promise((c,d)=>{const u=document.createElement("img");let f=!1;u.onload=()=>{f=!0,c(u)},u.addEventListener("error",h=>{console.warn("Image load failed",h.error),d(h.error)}),u.src=a,setTimeout(()=>{f||d(new Error("Image load timed out"))},l)})}function o(a){return Math.round(a*1e3)/1e3}const i=e.get("image"),r=e.get("aspectRatio");if(fetch(i).then(a=>a.blob()).then(a=>{a.type.includes("svg")&&e.set("noWebp",!0)}),i&&(!r||r===.7041))return t(i).then(a=>{const l=e.get("aspectRatio");e.get("image")===i&&(!l||l===.7041)&&a.width&&a.height&&(e.set("aspectRatio",o(a.height/a.width)),e.set("height",a.height),e.set("width",a.width))})})},{name:"backgroundSize",type:"text",defaultValue:"cover",enum:[{label:"contain",value:"contain",helperText:"The image should never get cropped"},{label:"cover",value:"cover",helperText:"The image should fill it's box, cropping when needed"}]},{name:"backgroundPosition",type:"text",defaultValue:"center",enum:["center","top","left","right","bottom","top left","top right","bottom left","bottom right"]},{name:"altText",type:"string",helperText:"Text to display when the user has images off"},{name:"height",type:"number",hideFromUI:!0},{name:"width",type:"number",hideFromUI:!0},{name:"sizes",type:"string",hideFromUI:!0},{name:"srcset",type:"string",hideFromUI:!0},{name:"lazy",type:"boolean",defaultValue:!0,hideFromUI:!0},{name:"fitContent",type:"boolean",helperText:"When child blocks are provided, fit to them instead of using the image's aspect ratio",defaultValue:!0},{name:"aspectRatio",type:"number",helperText:"This is the ratio of height/width, e.g. set to 1.5 for a 300px wide and 200px tall photo. Set to 0 to not force the image to maintain it's aspect ratio",advanced:!0,defaultValue:.7041}]},ze={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>"}}}]},He={name:"builder-section-component",props:["maxWidth","attributes"],methods:{filterAttrs:function(n={},t){const o="v-on:";return Object.keys(n).filter(i=>{const r=i.startsWith(o);return t?r:!r}).reduce((i,r)=>({...i,[r.replace(o,"")]:n[r]}),{})}}};function Ke(e,n,t,o,i,r){return s.openBlock(),s.createElementBlock("section",s.mergeProps({style:{width:"100%",alignSelf:"stretch",flexGrow:1,boxSizing:"border-box",maxWidth:t.maxWidth||1200,display:"flex",flexDirection:"column",alignItems:"stretch",marginLeft:"auto",marginRight:"auto"}},r.filterAttrs(t.attributes,!1),s.toHandlers(r.filterAttrs(t.attributes,!0),!0)),[s.renderSlot(e.$slots,"default")],16)}const G=p(He,[["render",Ke]]),De={name:"Symbol",noWrap:!0,static:!0,inputs:[{name:"symbol",type:"uiSymbol"},{name:"dataOnly",helperText:"Make this a data symbol that doesn't display any UI",type:"boolean",defaultValue:!1,advanced:!0,hideFromUI:!0},{name:"inheritState",helperText:"Inherit the parent component state and data",type:"boolean",defaultValue:!1,advanced:!0},{name:"renderToLiquid",helperText:"Render this symbols contents to liquid. Turn off to fetch with javascript and use custom targeting",type:"boolean",defaultValue:!1,advanced:!0,hideFromUI:!0},{name:"useChildren",hideFromUI:!0,type:"boolean"}]};function qe(){return typeof globalThis<"u"?globalThis:typeof window<"u"?window:typeof global<"u"?global:typeof self<"u"?self:globalThis}function Ge(){const e=qe().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.
26
- 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 J=Ge(),y=e=>e!=null,Je=e=>{if(e==="localhost"||e==="127.0.0.1")return e;const n=e.split(".");return n.length>2?n.slice(1).join("."):e},Y=async({name:e,canTrack:n})=>{var t;try{return n?(t=document.cookie.split("; ").find(o=>o.startsWith(`${e}=`)))==null?void 0:t.split("=")[1]:void 0}catch(o){console.debug("[COOKIE] GET error: ",o);return}},Ye=e=>e.map(([n,t])=>t?`${n}=${t}`:n).filter(y).join("; "),Xe=[["secure",""],["SameSite","None"]],Qe=({name:e,value:n,expires:t})=>{const i=(m()?location.protocol==="https:":!0)?Xe:[[]],r=t?[["expires",t.toUTCString()]]:[[]],a=[[e,n],...r,["path","/"],["domain",Je(window.location.hostname)],...i];return Ye(a)},X=async({name:e,value:n,expires:t,canTrack:o})=>{try{if(!o)return;const i=Qe({name:e,value:n,expires:t});document.cookie=i}catch(i){console.warn("[COOKIE] SET error: ",i)}},Ze="builderio.variations",Q=e=>`${Ze}.${e}`,et=({contentId:e,canTrack:n})=>Y({name:Q(e),canTrack:n}),tt=({contentId:e,canTrack:n,value:t})=>X({name:Q(e),value:t,canTrack:n}),nt=e=>y(e.id)&&y(e.variations)&&Object.keys(e.variations).length>0,ot=({id:e,variations:n})=>{var i;let t=0;const o=Math.random();for(const r in n){const a=(i=n[r])==null?void 0:i.testRatio;if(t+=a,o<t)return r}return e},V=({item:e,testGroupId:n})=>{const t=e.variations[n];return n===e.id||!t?{testVariationId:e.id,testVariationName:"Default"}:{data:t.data,testVariationId:t.id,testVariationName:t.name||(t.id===e.id?"Default":"")}},rt=async({item:e,canTrack:n})=>{const t=await et({canTrack:n,contentId:e.id}),o=t?V({item:e,testGroupId:t}):void 0;if(o)return o;{const i=ot({variations:e.variations,id:e.id});return tt({contentId:e.id,value:i,canTrack:n}).catch(r=>{console.error("could not store A/B test variation: ",r)}),V({item:e,testGroupId:i})}},it=async({item:e,canTrack:n})=>{if(!nt(e))return;const t=await rt({item:e,canTrack:n});Object.assign(e,t)};function w(e,n=null,t="."){return Object.keys(e).reduce((o,i)=>{const r=e[i],a=[n,i].filter(Boolean).join(t);return[typeof r=="object",r!==null,!(Array.isArray(r)&&r.length===0)].every(Boolean)?{...o,...w(r,a,t)}:{...o,[a]:r}},{})}const j="builder.",st="options.",Z=e=>{const n={};return e.forEach((t,o)=>{n[o]=t}),n},ee=e=>{if(!e)return{};const n=R(e),t={};return Object.keys(n).forEach(o=>{if(o.startsWith(j)){const i=o.replace(j,"").replace(st,"");t[i]=n[o]}}),t},te=()=>{if(!m())return{};const e=new URLSearchParams(window.location.search);return ee(e)},R=e=>e instanceof URLSearchParams?Z(e):e,at=e=>{const{limit:n=30,userAttributes:t,query:o,noTraverse:i=!1,model:r,apiKey:a,includeRefs:l=!0,locale:c,apiVersion:d="v2"}=e;if(!a)throw new Error("Missing API key");if(!["v2","v3"].includes(d))throw new Error(`Invalid apiVersion: expected 'v2' or 'v3', received '${d}'`);const u=new URL(`https://cdn.builder.io/api/${d}/content/${r}?apiKey=${a}&limit=${n}&noTraverse=${i}&includeRefs=${l}${c?`&locale=${c}`:""}`),f={...te(),...R(e.options||{})},h=w(f);for(const g in h)u.searchParams.set(g,String(h[g]));if(t&&u.searchParams.set("userAttributes",JSON.stringify(t)),o){const g=w({query:o});for(const v in g)u.searchParams.set(v,JSON.stringify(g[v]))}return u};async function B(e){return(await ne({...e,limit:1})).results[0]||null}async function ne(e){const n=at(e),o=await(await J(n.href)).json(),i=e.canTrack!==!1;if(i&&Array.isArray(o.results))for(const r of o.results)await it({item:r,canTrack:i});return o}const ct=()=>Promise.resolve().then(()=>fn).then(e=>e.default).catch(e=>{throw console.error("Error while attempting to dynamically import component RenderContent at ../../components/render-content/render-content.vue",e),e}),lt={name:"builder-symbol",components:{RenderContent:s.defineAsyncComponent(ct)},props:["attributes","symbol","dynamic"],data(){var e,n,t;return{className:[...Object.keys(this.attributes.class),"builder-symbol",(e=this.symbol)!=null&&e.inline?"builder-inline-symbol":void 0,((n=this.symbol)==null?void 0:n.dynamic)||this.dynamic?"builder-dynamic-symbol":void 0].filter(Boolean).join(" "),contentToUse:(t=this.symbol)==null?void 0:t.content}},inject:{builderContext:x.key},mounted(){this.fetchContent()},watch:{onUpdateHook0:{handler(){this.fetchContent()},immediate:!0}},computed:{onUpdateHook0(){return{0:this.symbol}}},methods:{fetchContent(){var e,n;!this.contentToUse&&((e=this.symbol)==null?void 0:e.model)&&((n=this.builderContext)==null?void 0:n.apiKey)&&B({model:this.symbol.model,apiKey:this.builderContext.apiKey,apiVersion:this.builderContext.apiVersion,query:{id:this.symbol.entry}}).then(t=>{t&&(this.contentToUse=t)}).catch(t=>{console.error("[Builder.io]: Could not fetch symbol content: ",t)})},filterAttrs:function(n={},t){const o="v-on:";return Object.keys(n).filter(i=>{const r=i.startsWith(o);return t?r:!r}).reduce((i,r)=>({...i,[r.replace(o,"")]:n[r]}),{})},_classStringToObject(e){const n={};if(typeof e!="string")return n;const t=e.trim().split(/\s+/);for(const o of t)n[o]=!0;return n}}},dt=["dataSet"];function ut(e,n,t,o,i,r){var l,c,d,u;const a=s.resolveComponent("render-content");return s.openBlock(),s.createElementBlock("div",s.mergeProps({dataSet:{class:i.className},class:r._classStringToObject(i.className)},r.filterAttrs(t.attributes,!1),s.toHandlers(r.filterAttrs(t.attributes,!0),!0)),[s.createVNode(a,{apiVersion:r.builderContext.apiVersion,apiKey:r.builderContext.apiKey,context:r.builderContext.context,customComponents:Object.values(r.builderContext.registeredComponents),data:{...(l=t.symbol)==null?void 0:l.data,...r.builderContext.state,...(d=(c=i.contentToUse)==null?void 0:c.data)==null?void 0:d.state},model:(u=t.symbol)==null?void 0:u.model,content:i.contentToUse},null,8,["apiVersion","apiKey","context","customComponents","data","model","content"])],16,dt)}const oe=p(lt,[["render",ut]]),mt={name:"Text",static:!0,image:"https://firebasestorage.googleapis.com/v0/b/builder-3b0a2.appspot.com/o/images%2Fbaseline-text_fields-24px%20(1).svg?alt=media&token=12177b73-0ee3-42ca-98c6-0dd003de1929",inputs:[{name:"text",type:"html",required:!0,autoFocus:!0,bubble:!0,defaultValue:"Enter some text..."}],defaultStyles:{lineHeight:"normal",height:"auto",textAlign:"center"}},pt={name:"builder-text",props:["text"]},ht=["innerHTML"];function ft(e,n,t,o,i,r){return s.openBlock(),s.createElementBlock("span",{class:"builder-text",innerHTML:t.text,style:{outline:"none"}},null,8,ht)}const re=p(pt,[["render",ft]]),gt={name:"Video",canHaveChildren:!0,defaultStyles:{minHeight:"20px",minWidth:"20px"},image:"https://firebasestorage.googleapis.com/v0/b/builder-3b0a2.appspot.com/o/images%2Fbaseline-videocam-24px%20(1).svg?alt=media&token=49a84e4a-b20e-4977-a650-047f986874bb",inputs:[{name:"video",type:"file",allowedFileTypes:["mp4"],bubble:!0,defaultValue:"https://firebasestorage.googleapis.com/v0/b/builder-3b0a2.appspot.com/o/assets%2FKQlEmWDxA0coC3PK6UvkrjwkIGI2%2F28cb070609f546cdbe5efa20e931aa4b?alt=media&token=912e9551-7a7c-4dfb-86b6-3da1537d1a7f",required:!0},{name:"posterImage",type:"file",allowedFileTypes:["jpeg","png"],helperText:"Image to show before the video plays"},{name:"autoPlay",type:"boolean",defaultValue:!0},{name:"controls",type:"boolean",defaultValue:!1},{name:"muted",type:"boolean",defaultValue:!0},{name:"loop",type:"boolean",defaultValue:!0},{name:"playsInline",type:"boolean",defaultValue:!0},{name:"fit",type:"text",defaultValue:"cover",enum:["contain","cover","fill","auto"]},{name:"fitContent",type:"boolean",helperText:"When child blocks are provided, fit to them instead of using the aspect ratio",defaultValue:!0,advanced:!0},{name:"position",type:"text",defaultValue:"center",enum:["center","top","left","right","bottom","top left","top right","bottom left","bottom right"]},{name:"height",type:"number",advanced:!0},{name:"width",type:"number",advanced:!0},{name:"aspectRatio",type:"number",advanced:!0,defaultValue:.7004048582995948},{name:"lazyLoad",type:"boolean",helperText:'Load this video "lazily" - as in only when a user scrolls near the video. Recommended for optmized performance and bandwidth consumption',defaultValue:!0,advanced:!0}]},bt={name:"builder-video",props:["autoPlay","muted","controls","loop","playsInline","attributes","fit","position","video","posterImage"],computed:{videoProps(){return{...this.autoPlay===!0?{autoPlay:!0}:{},...this.muted===!0?{muted:!0}:{},...this.controls===!0?{controls:!0}:{},...this.loop===!0?{loop:!0}:{},...this.playsInline===!0?{playsInline:!0}:{}}},spreadProps(){return{...this.attributes,...this.videoProps}}}},yt=["src","poster"];function kt(e,n,t,o,i,r){var a;return s.openBlock(),s.createElementBlock("video",s.mergeProps({style:{width:"100%",height:"100%",...(a=t.attributes)==null?void 0:a.style,objectFit:t.fit,objectPosition:t.position,borderRadius:1},src:t.video||"no-src",poster:t.posterImage},r.spreadProps),null,16,yt)}const ie=p(bt,[["render",kt]]),vt={name:"Embed",static:!0,inputs:[{name:"url",type:"url",required:!0,defaultValue:"",helperText:"e.g. enter a youtube url, google map, etc",onChange:C(e=>{const n=e.get("url");if(n)return e.set("content","Loading..."),fetch(`https://iframe.ly/api/iframely?url=${n}&api_key=ae0e60e78201a3f2b0de4b`).then(o=>o.json()).then(o=>{e.get("url")===n&&(o.html?e.set("content",o.html):e.set("content","Invalid url, please try another"))}).catch(o=>{e.set("content","There was an error embedding this URL, please try again or another URL")});e.delete("content")})},{name:"content",type:"html",defaultValue:'<div style="padding: 20px; text-align: center">(Choose an embed URL)<div>',hideFromUI:!0}]},xt=["text/javascript","application/javascript","application/ecmascript"],St=e=>xt.includes(e.type),Ct={name:"builder-embed",props:["content"],data(){return{scriptsInserted:[],scriptsRun:[],ranInitFn:!1}},watch:{onUpdateHook0:{handler(){this.$refs.elem&&!this.ranInitFn&&(this.ranInitFn=!0,this.findAndRunScripts())},immediate:!0}},computed:{onUpdateHook0(){return{0:this.$refs.elem,1:this.ranInitFn}}},methods:{findAndRunScripts(){if(!this.$refs.elem||!this.$refs.elem.getElementsByTagName)return;const e=this.$refs.elem.getElementsByTagName("script");for(let n=0;n<e.length;n++){const t=e[n];if(t.src&&!this.scriptsInserted.includes(t.src)){this.scriptsInserted.push(t.src);const o=document.createElement("script");o.async=!0,o.src=t.src,document.head.appendChild(o)}else if(St(t)&&!this.scriptsRun.includes(t.innerText))try{this.scriptsRun.push(t.innerText),new Function(t.innerText)()}catch(o){console.warn("`Embed`: Error running script:",o)}}}}},_t=["innerHTML"];function wt(e,n,t,o,i,r){return s.openBlock(),s.createElementBlock("div",{class:"builder-embed",ref:"elem",innerHTML:t.content},null,8,_t)}const It=p(Ct,[["render",wt]]),Tt={name:"builder-img-component",props:["backgroundSize","backgroundPosition","imgSrc","altText","image","attributes"],data(){return{isEditing:b}},methods:{filterAttrs:function(n={},t){const o="v-on:";return Object.keys(n).filter(i=>{const r=i.startsWith(o);return t?r:!r}).reduce((i,r)=>({...i,[r.replace(o,"")]:n[r]}),{})}}},Rt=["alt","src"];function Bt(e,n,t,o,i,r){return s.openBlock(),s.createElementBlock("img",s.mergeProps({style:{objectFit:t.backgroundSize||"cover",objectPosition:t.backgroundPosition||"center"},key:i.isEditing()&&t.imgSrc||"default-key",alt:t.altText,src:t.imgSrc||t.image},r.filterAttrs(t.attributes,!1),s.toHandlers(r.filterAttrs(t.attributes,!0),!0)),null,16,Rt)}const Et=p(Tt,[["render",Bt]]),At={name:"Raw:Img",hideFromInsertMenu:!0,image:"https://firebasestorage.googleapis.com/v0/b/builder-3b0a2.appspot.com/o/images%2Fbaseline-insert_photo-24px.svg?alt=media&token=4e5d0ef4-f5e8-4e57-b3a9-38d63a9b9dc4",inputs:[{name:"image",bubble:!0,type:"file",allowedFileTypes:["jpeg","jpg","png","svg"],required:!0}],noWrap:!0,static:!0},Pt={name:"builder-custom-code",props:["replaceNodes","code"],data(){return{scriptsInserted:[],scriptsRun:[]}},mounted(){this.findAndRunScripts()},methods:{findAndRunScripts(){if(this.$refs.elem&&this.$refs.elem.getElementsByTagName&&typeof window<"u"){const e=this.$refs.elem.getElementsByTagName("script");for(let n=0;n<e.length;n++){const t=e[n];if(t.src){if(this.scriptsInserted.includes(t.src))continue;this.scriptsInserted.push(t.src);const o=document.createElement("script");o.async=!0,o.src=t.src,document.head.appendChild(o)}else if(!t.type||["text/javascript","application/javascript","application/ecmascript"].includes(t.type)){if(this.scriptsRun.includes(t.innerText))continue;try{this.scriptsRun.push(t.innerText),new Function(t.innerText)()}catch(o){console.warn("`CustomCode`: Error running script:",o)}}}}},_classStringToObject(e){const n={};if(typeof e!="string")return n;const t=e.trim().split(/\s+/);for(const o of t)n[o]=!0;return n}}},Vt=["innerHTML"];function jt(e,n,t,o,i,r){return s.openBlock(),s.createElementBlock("div",{ref:"elem",class:s.normalizeClass(r._classStringToObject("builder-custom-code"+(t.replaceNodes?" replace-nodes":""))),innerHTML:t.code},null,10,Vt)}const Ft=p(Pt,[["render",jt]]),Ot={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}]},Ut=()=>[{component:M,...We},{component:z,...Me},{component:Ft,...Ot},{component:It,...vt},{component:H,...Le},{component:K,...$e},{component:Et,...At},{component:G,...ze},{component:oe,...De},{component:re,...mt},{component:ie,...gt}];function I({code:e,context:n,state:t,event:o,isExpression:i=!0}){if(e===""){console.warn("Skipping evaluation of empty code block.");return}const r={isEditing:b(),isBrowser:m(),isServer:!m()},l=i&&!(e.includes(";")||e.includes(" return ")||e.trim().startsWith("return "))?`return (${e});`:e;try{return new Function("builder","Builder","state","context","event",l)(r,r,t,n,o)}catch(c){console.warn(`Builder custom code error:
27
- While Evaluating:
28
- `,l,`
29
- `,c)}}function se(){return!m()||b()?!1:Boolean(location.search.indexOf("builder.preview=")!==-1)}const E=[];function Nt(e,n){return E.push({component:e,...n}),console.warn("registerComponent is deprecated. Use the `customComponents` prop in RenderContent instead to provide your custom components to the builder SDK."),e}const ae=({component:e,...n})=>({type:"builder.registerComponent",data:Mt(n)}),Wt=e=>typeof e=="function"?C(e):S(e),Mt=({inputs:e,...n})=>({...S(n),inputs:e==null?void 0:e.map(t=>Object.entries(t).reduce((o,[i,r])=>({...o,[i]:Wt(r)}),{}))});function Lt(){return"xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx".replace(/[xy]/g,function(e){const n=Math.random()*16|0;return(e=="x"?n:n&3|8).toString(16)})}function ce(){return Lt().replace(/-/g,"")}const le="builderSessionId",$t=async({canTrack:e})=>{if(!e)return;const n=await Y({name:le,canTrack:e});if(y(n))return n;{const t=zt();return Ht({id:t,canTrack:e}),t}},zt=()=>ce(),Ht=({id:e,canTrack:n})=>X({name:le,value:e,canTrack:n}),de=()=>m()&&typeof localStorage<"u"?localStorage:void 0,Kt=({key:e,canTrack:n})=>{var t;try{return n?(t=de())==null?void 0:t.getItem(e):void 0}catch(o){console.debug("[LocalStorage] GET error: ",o);return}},Dt=({key:e,canTrack:n,value:t})=>{var o;try{n&&((o=de())==null||o.setItem(e,t))}catch(i){console.debug("[LocalStorage] SET error: ",i)}},ue="builderVisitorId",qt=({canTrack:e})=>{if(!e)return;const n=Kt({key:ue,canTrack:e});if(y(n))return n;{const t=Gt();return Jt({id:t,canTrack:e}),t}},Gt=()=>ce(),Jt=({id:e,canTrack:n})=>Dt({key:ue,value:e,canTrack:n}),Yt=()=>{if(m()){const e=new URL(location.href);return e.pathname===""&&(e.pathname="/"),e}else return console.warn("Cannot get location for tracking in non-browser environment"),null},Xt=()=>typeof navigator=="object"&&navigator.userAgent||"",Qt=()=>{const e=Xt(),n={Android(){return e.match(/Android/i)},BlackBerry(){return e.match(/BlackBerry/i)},iOS(){return e.match(/iPhone|iPod/i)},Opera(){return e.match(/Opera Mini/i)},Windows(){return e.match(/IEMobile/i)||e.match(/WPDesktop/i)},any(){return n.Android()||n.BlackBerry()||n.iOS()||n.Opera()||n.Windows()||k==="reactNative"}},t=e.match(/Tablet|iPad/i),o=Yt();return{urlPath:o==null?void 0:o.pathname,host:(o==null?void 0:o.host)||(o==null?void 0:o.hostname),device:t?"tablet":n.any()?"mobile":"desktop"}},Zt=async({canTrack:e})=>{if(!e)return{visitorId:void 0,sessionId:void 0};const n=await $t({canTrack:e}),t=qt({canTrack:e});return{sessionId:n,visitorId:t}},en=async({type:e,canTrack:n,apiKey:t,metadata:o,...i})=>({type:e,data:{...i,metadata:{url:location.href,...o},...await Zt({canTrack:n}),userAttributes:Qt(),ownerId:t}});async function T(e){if(!e.apiKey){console.error("[Builder.io]: Missing API key for track call. Please provide your API key.");return}if(!!e.canTrack&&!b()&&!!(m()||k==="reactNative"))return fetch("https://builder.io/api/v1/track",{method:"POST",body:JSON.stringify({events:[await en(e)]}),headers:{"content-type":"application/json"},mode:"cors"}).catch(n=>{console.error("Failed to track: ",n)})}const tn=e=>T({...e,canTrack:!0}),F={};function me(e,n){let t=F[e];if(t||(t=F[e]=[]),t.push(n),m()){const o={type:"builder.register",data:{type:e,info:n}};try{parent.postMessage(o,"*"),parent!==window&&window.postMessage(o,"*")}catch(i){console.debug("Could not postmessage",i)}}}const nn=()=>{me("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 O=!1;const on=(e={})=>{var n,t;O||(O=!0,m()&&((n=window.parent)==null||n.postMessage({type:"builder.sdkInfo",data:{target:k,supportsPatchUpdates:!1,supportsAddBlockScoping:!0,supportsCustomBreakpoints:!0}},"*"),(t=window.parent)==null||t.postMessage({type:"builder.updateContent",data:{options:e}},"*"),window.addEventListener("message",({data:o})=>{var i,r;if(!!(o!=null&&o.type))switch(o.type){case"builder.evaluate":{const a=o.data.text,l=o.data.arguments||[],c=o.data.id,d=new Function(a);let u,f=null;try{u=d.apply(null,l)}catch(h){f=h}f?(i=window.parent)==null||i.postMessage({type:"builder.evaluateError",data:{id:c,error:f.message}},"*"):u&&typeof u.then=="function"?u.then(h=>{var g;(g=window.parent)==null||g.postMessage({type:"builder.evaluateResult",data:{id:c,result:h}},"*")}).catch(console.error):(r=window.parent)==null||r.postMessage({type:"builder.evaluateResult",data:{result:u,id:c}},"*");break}}})))};function U(e){return Math.round(e*1e3)/1e3}const rn=(e,n,t=!0)=>{if(!(e instanceof HTMLElement))return null;let o=t?e:e.parentElement;do{if(!o)return null;if(n(o))return o}while(o=o.parentElement);return null},sn=e=>rn(e,n=>{const t=n.getAttribute("builder-id")||n.id;return Boolean((t==null?void 0:t.indexOf("builder-"))===0)}),N=({event:e,target:n})=>{const t=n.getBoundingClientRect(),o=e.clientX-t.left,i=e.clientY-t.top,r=U(o/t.width),a=U(i/t.height);return{x:r,y:a}},an=e=>{const n=e.target,t=n&&sn(n),o=(t==null?void 0:t.getAttribute("builder-id"))||(t==null?void 0:t.id);return{targetBuilderElement:o||void 0,metadata:{targetOffset:n?N({event:e,target:n}):void 0,builderTargetOffset:t?N({event:e,target:t}):void 0,builderElementIndex:t&&o?[].slice.call(document.getElementsByClassName(o)).indexOf(t):void 0}}},cn=({content:e,data:n,locale:t})=>{var r,a,l;const o={};(a=(r=e==null?void 0:e.data)==null?void 0:r.inputs)==null||a.forEach(c=>{var d;c.name&&c.defaultValue!==void 0&&((d=e==null?void 0:e.data)==null?void 0:d.state)&&e.data.state[c.name]===void 0&&(o[c.name]=c.defaultValue)});const i={...(l=e==null?void 0:e.data)==null?void 0:l.state,...n,...t?{locale:t}:{}};return{...o,...i}},ln=({content:e,data:n})=>e?{...e,data:{...e==null?void 0:e.data,...n},meta:e==null?void 0:e.meta}:void 0,dn=()=>Promise.resolve().then(()=>q).then(e=>e.default).catch(e=>{throw console.error("Error while attempting to dynamically import component RenderBlocks at ../render-blocks.vue",e),e}),un=()=>Promise.resolve().then(()=>require("./render-styles.ca6a6289.cjs")).then(e=>e.default).catch(e=>{throw console.error("Error while attempting to dynamically import component RenderContentStyles at ./components/render-styles.vue",e),e}),mn={name:"render-content",components:{RenderContentStyles:s.defineAsyncComponent(un),RenderBlocks:s.defineAsyncComponent(dn)},props:["content","data","canTrack","locale","customComponents","model","context","apiKey","includeRefs","apiVersion"],data(){return{forceReRenderCount:0,overrideContent:null,useContent:ln({content:this.content,data:this.data}),update:0,canTrackToUse:y(this.canTrack)?this.canTrack:!0,contentState:cn({content:this.content,data:this.data,locale:this.locale}),allRegisteredComponents:[...Ut(),...E,...this.customComponents||[]].reduce((e,n)=>({...e,[n.name]:n}),{}),httpReqsData:{},clicked:!1,TARGET:k}},provide(){const e=this;return{[x.key]:{content:e.useContent,state:e.contentState,setState:e.setContextState,context:e.context||{},apiKey:e.apiKey,apiVersion:e.apiVersion,registeredComponents:e.allRegisteredComponents}}},mounted(){var e,n;if(this.apiKey||console.error("[Builder.io]: No API key provided to `RenderContent` component. This can cause issues. Please provide an API key using the `apiKey` prop."),m()){if(b()&&(this.forceReRenderCount=this.forceReRenderCount+1,nn(),on({...this.locale?{locale:this.locale}:{},...this.includeRefs?{includeRefs:this.includeRefs}:{}}),Object.values(this.allRegisteredComponents).forEach(t=>{var i;const o=ae(t);(i=window.parent)==null||i.postMessage(o,"*")}),window.addEventListener("message",this.processMessage),window.addEventListener("builder:component:stateChangeListenerActivated",this.emitStateUpdate)),this.useContent){const t=(e=this.useContent)==null?void 0:e.testVariationId,o=(n=this.useContent)==null?void 0:n.id;T({type:"impression",canTrack:this.canTrackToUse,contentId:o,apiKey:this.apiKey,variationId:t!==o?t:void 0})}if(se()){const t=new URL(location.href).searchParams,o=t.get("builder.preview"),i=t.get("apiKey")||t.get("builder.space");o===this.model&&i===this.apiKey&&B({model:this.model,apiKey:this.apiKey,apiVersion:this.apiVersion}).then(r=>{r&&this.mergeNewContent(r)})}this.evaluateJsCode(),this.runHttpRequests(),this.emitStateUpdate()}},watch:{onUpdateHook0:{handler(){this.content&&this.mergeNewContent(this.content)},immediate:!0},onUpdateHook1:{handler(){this.evaluateJsCode()},immediate:!0},onUpdateHook2:{handler(){this.runHttpRequests()},immediate:!0},onUpdateHook3:{handler(){this.emitStateUpdate()},immediate:!0}},unmounted(){m()&&(window.removeEventListener("message",this.processMessage),window.removeEventListener("builder:component:stateChangeListenerActivated",this.emitStateUpdate))},computed:{onUpdateHook0(){return{0:this.content}},onUpdateHook1(){var e,n;return{0:(n=(e=this.useContent)==null?void 0:e.data)==null?void 0:n.jsCode,1:this.contentState}},onUpdateHook2(){var e,n;return{0:(n=(e=this.useContent)==null?void 0:e.data)==null?void 0:n.httpRequests}},onUpdateHook3(){return{0:this.contentState}}},methods:{mergeNewContent(e){var n,t,o,i,r;this.useContent={...this.useContent,...e,data:{...(n=this.useContent)==null?void 0:n.data,...e==null?void 0:e.data},meta:{...(t=this.useContent)==null?void 0:t.meta,...e==null?void 0:e.meta,breakpoints:((o=e==null?void 0:e.meta)==null?void 0:o.breakpoints)||((r=(i=this.useContent)==null?void 0:i.meta)==null?void 0:r.breakpoints)}}},setBreakpoints(e){var n;this.useContent={...this.useContent,meta:{...(n=this.useContent)==null?void 0:n.meta,breakpoints:e}}},setContextState(e){this.contentState=e},processMessage(e){var t;const{data:n}=e;if(n)switch(n.type){case"builder.configureSdk":{const o=n.data,{breakpoints:i,contentId:r}=o;if(!r||r!==((t=this.useContent)==null?void 0:t.id))return;i&&this.setBreakpoints(i),this.forceReRenderCount=this.forceReRenderCount+1;break}case"builder.contentUpdate":{const o=n.data,i=o.key||o.alias||o.entry||o.modelName,r=o.data;i===this.model&&(this.mergeNewContent(r),this.forceReRenderCount=this.forceReRenderCount+1);break}}},evaluateJsCode(){var n,t;const e=(t=(n=this.useContent)==null?void 0:n.data)==null?void 0:t.jsCode;e&&I({code:e,context:this.context||{},state:this.contentState})},onClick(e){var n,t;if(this.useContent){const o=(n=this.useContent)==null?void 0:n.testVariationId,i=(t=this.useContent)==null?void 0:t.id;T({type:"click",canTrack:this.canTrackToUse,contentId:i,apiKey:this.apiKey,variationId:o!==i?o:void 0,...an(e),unique:!this.clicked})}this.clicked||(this.clicked=!0)},evalExpression(e){return e.replace(/{{([^}]+)}}/g,(n,t)=>I({code:t,context:this.context||{},state:this.contentState}))},handleRequest({url:e,key:n}){J(e).then(t=>t.json()).then(t=>{const o={...this.contentState,[n]:t};this.setContextState(o)}).catch(t=>{console.log("error fetching dynamic data",e,t)})},runHttpRequests(){var n,t,o;const e=(o=(t=(n=this.useContent)==null?void 0:n.data)==null?void 0:t.httpRequests)!=null?o:{};Object.entries(e).forEach(([i,r])=>{if(r&&(!this.httpReqsData[i]||b())){const a=this.evalExpression(r);this.handleRequest({url:a,key:i})}})},emitStateUpdate(){b()&&window.dispatchEvent(new CustomEvent("builder:component:stateChange",{detail:{state:this.contentState,ref:{name:this.model}}}))}}},pn=["builder-content-id","builder-model"];function hn(e,n,t,o,i,r){var c,d,u,f,h,g,v,A;const a=s.resolveComponent("render-content-styles"),l=s.resolveComponent("render-blocks");return i.useContent?(s.openBlock(),s.createElementBlock("div",{key:0,ref:"elementRef",onClick:n[0]||(n[0]=he=>r.onClick(he)),"builder-content-id":(c=i.useContent)==null?void 0:c.id,"builder-model":t.model},[i.TARGET!=="reactNative"?(s.openBlock(),s.createBlock(a,{key:0,contentId:(d=i.useContent)==null?void 0:d.id,cssCode:(f=(u=i.useContent)==null?void 0:u.data)==null?void 0:f.cssCode,customFonts:(g=(h=i.useContent)==null?void 0:h.data)==null?void 0:g.customFonts},null,8,["contentId","cssCode","customFonts"])):s.createCommentVNode("",!0),(s.openBlock(),s.createBlock(l,{blocks:(A=(v=i.useContent)==null?void 0:v.data)==null?void 0:A.blocks,key:i.forceReRenderCount},null,8,["blocks"]))],8,pn)):s.createCommentVNode("",!0)}const pe=p(mn,[["render",hn]]),fn=Object.freeze(Object.defineProperty({__proto__:null,default:pe},Symbol.toStringTag,{value:"Module"})),W={};function gn(e){if(m()){Object.assign(W,e);const n={type:"builder.settingsChange",data:W};parent.postMessage(n,"*")}}exports.BuilderContext=x;exports.Button=M;exports.Columns=z;exports.Fragment=H;exports.Image=K;exports.Section=G;exports.Symbol=oe;exports.TARGET=k;exports.Text=re;exports.Video=ie;exports._export_sfc=p;exports.checkIsDefined=y;exports.components=E;exports.convertSearchParamsToQueryObject=Z;exports.createRegisterComponentMessage=ae;exports.evaluate=I;exports.fastClone=S;exports.getAllContent=ne;exports.getBuilderSearchParams=ee;exports.getBuilderSearchParamsFromWindow=te;exports.getContent=B;exports.getMaxWidthQueryForSize=ye;exports.getSizesForBreakpoints=$;exports.isEditing=b;exports.isPreviewing=se;exports.normalizeSearchParams=R;exports.register=me;exports.registerComponent=Nt;exports.renderBlocks=D;exports.renderContent=pe;exports.setEditorSettings=gn;exports.track=tn;
@@ -1,3 +0,0 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const t=require("vue"),i=require("./index.461c31d1.cjs"),k=require("./css.0e8cdb1f.cjs"),y=e=>`v-on:${e.toLowerCase()}`,f=(e,n)=>o=>i.evaluate({code:e,context:n.context,state:n.state,event:o,isExpression:!1});function x(e){var s;const n={},o=(s=e.block.actions)!=null?s:{};for(const c in o){if(!o.hasOwnProperty(c))continue;const r=o[c];n[y(c)]=f(r,e)}return n}function B(e){var n;return{...(n=e.component)==null?void 0:n.options,...e.options,builderBlock:e}}function b(e){const n={};if(typeof e!="string")return n;const o=e.trim().split(/\\s+/);for(const s of o)n[s]=!0;return n}function g(e){return e.class=b(e.class),e}function C(e){var o;const n={...e.properties,"builder-id":e.id,style:v(e.style),class:[e.id,"builder-block",e.class,(o=e.properties)==null?void 0:o.class].filter(Boolean).join(" ")};return g(n)}function v(e){if(!!e)switch(i.TARGET){case"svelte":case"vue2":case"vue3":case"solid":return k.convertStyleMapToCSSArray(e).join(" ");case"qwik":case"reactNative":case"react":return e}}function P(e){return e.tagName||"div"}const E=["area","base","br","col","embed","hr","img","input","keygen","link","meta","param","source","track","wbr"],_=e=>typeof e=="string"&&E.includes(e.toLowerCase()),S=({block:e,context:n})=>{var c;const o=(c=k.getProcessedBlock({block:e,state:n.state,context:n.context,shouldEvaluateBindings:!1}).component)==null?void 0:c.name;if(!o)return null;const s=n.registeredComponents[o];if(s)return s;console.warn(`
2
- Could not find a registered component named "${o}".
3
- If you registered it, is the file that registered it imported by the file that needs to render it?`)},w=({block:e,context:n})=>{const{repeat:o,...s}=e;if(!(o!=null&&o.collection))return;const c=i.evaluate({code:o.collection,state:n.state,context:n.context});if(!Array.isArray(c))return;const r=o.collection.split(".").pop(),a=o.itemName||(r?r+"Item":"item");return c.map((u,m)=>({context:{...n,state:{...n.state,$index:m,$item:u,[a]:u,[`$${a}Index`]:m}},block:s}))},R=()=>Promise.resolve().then(()=>require("./block-styles.d483335e.cjs")).then(e=>e.default).catch(e=>{throw console.error("Error while attempting to dynamically import component BlockStyles at ./block-styles.vue",e),e}),A=()=>Promise.resolve().then(()=>require("./render-repeated-block.ea827f2f.cjs")).then(e=>e.default).catch(e=>{throw console.error("Error while attempting to dynamically import component RenderRepeatedBlock at ./render-repeated-block.vue",e),e}),I=()=>Promise.resolve().then(()=>require("./render-component.741e326a.cjs")).then(e=>e.default).catch(e=>{throw console.error("Error while attempting to dynamically import component RenderComponent at ./render-component.vue",e),e}),N={name:"render-block",components:{RenderComponent:t.defineAsyncComponent(I),RenderRepeatedBlock:t.defineAsyncComponent(A),BlockStyles:t.defineAsyncComponent(R)},props:["block","context"],data(){return{component:S({block:this.block,context:this.context}),repeatItemData:w({block:this.block,context:this.context}),isEmptyHtmlElement:_}},computed:{tag(){return P(this.useBlock)},useBlock(){return this.repeatItemData?this.block:k.getProcessedBlock({block:this.block,state:this.context.state,context:this.context.context,shouldEvaluateBindings:!0})},canShowBlock(){return i.checkIsDefined(this.useBlock.hide)?!this.useBlock.hide:i.checkIsDefined(this.useBlock.show)?this.useBlock.show:!0},proxyState(){return typeof Proxy>"u"?(console.error("no Proxy available in this environment, cannot proxy state."),this.context.state):new Proxy(this.context.state,{set:(n,o,s)=>{var c,r;return n[o]=s,(r=(c=this.context).setState)==null||r.call(c,n),!0}})},actions(){return x({block:this.useBlock,state:this.proxyState,context:this.context.context})},attributes(){return{...C(this.useBlock)}},renderComponentProps(){var e,n,o;return{blockChildren:(e=this.useBlock.children)!=null?e:[],componentRef:(n=this.component)==null?void 0:n.component,componentOptions:{...B(this.useBlock),...(o=this.component)!=null&&o.noWrap?{attributes:{...this.attributes,...this.actions}}:{}},context:this.childrenContext}},childrenWithoutParentComponent(){var n,o;return!((n=this.component)!=null&&n.component)&&!this.repeatItemData?(o=this.useBlock.children)!=null?o:[]:[]},childrenContext(){const e=()=>({});return{apiKey:this.context.apiKey,state:this.context.state,content:this.context.content,context:this.context.context,setState:this.context.setState,registeredComponents:this.context.registeredComponents,inheritedStyles:e()}}},methods:{stripVOn:function(n={}){return Object.keys(n).reduce((o,s)=>({...o,[s.replace("v-on:","")]:n[s]}),{})}}};function O(e,n,o,s,c,r){var h;const a=t.resolveComponent("render-repeated-block"),p=t.resolveComponent("render-component"),u=t.resolveComponent("render-block",!0),m=t.resolveComponent("block-styles");return r.canShowBlock?(t.openBlock(),t.createElementBlock(t.Fragment,{key:0},[(h=c.component)!=null&&h.noWrap?(t.openBlock(),t.createBlock(p,t.normalizeProps(t.mergeProps({key:1},r.renderComponentProps)),null,16)):(t.openBlock(),t.createElementBlock(t.Fragment,{key:0},[c.isEmptyHtmlElement(r.tag)?(t.openBlock(),t.createBlock(t.resolveDynamicComponent(r.tag),t.mergeProps({key:0},r.attributes,t.toHandlers(r.stripVOn(r.actions))),null,16)):t.createCommentVNode("",!0),!c.isEmptyHtmlElement(r.tag)&&c.repeatItemData?(t.openBlock(!0),t.createElementBlock(t.Fragment,{key:1},t.renderList(c.repeatItemData,(l,d)=>(t.openBlock(),t.createBlock(a,{key:d,repeatContext:l.context,block:l.block},null,8,["repeatContext","block"]))),128)):t.createCommentVNode("",!0),!c.isEmptyHtmlElement(r.tag)&&!c.repeatItemData?(t.openBlock(),t.createBlock(t.resolveDynamicComponent(r.tag),t.mergeProps({key:2},r.attributes,t.toHandlers(r.stripVOn(r.actions))),{default:t.withCtx(()=>[t.createVNode(p,t.normalizeProps(t.guardReactiveProps(r.renderComponentProps)),null,16),(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(r.childrenWithoutParentComponent,(l,d)=>(t.openBlock(),t.createBlock(u,{key:"render-block-"+l.id,block:l,context:r.childrenContext},null,8,["block","context"]))),128)),(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(r.childrenWithoutParentComponent,(l,d)=>(t.openBlock(),t.createBlock(m,{key:"block-style-"+l.id,block:l,context:r.childrenContext},null,8,["block","context"]))),128))]),_:1},16)):t.createCommentVNode("",!0)],64))],64)):t.createCommentVNode("",!0)}const j=i._export_sfc(N,[["render",O]]);exports.default=j;
@@ -1,42 +0,0 @@
1
- import { defineAsyncComponent as r, resolveComponent as l, openBlock as n, createBlock as c, resolveDynamicComponent as p, normalizeProps as u, mergeProps as y, withCtx as _, createElementBlock as m, Fragment as s, renderList as a, createCommentVNode as b } from "vue";
2
- import { _ as f } from "./index.0f89dc70.js";
3
- const x = () => import("./block-styles.6a927af3.js").then((e) => e.default).catch((e) => {
4
- throw console.error(
5
- "Error while attempting to dynamically import component BlockStyles at ./block-styles.vue",
6
- e
7
- ), e;
8
- }), h = () => import("./render-block.b58d92f6.js").then((e) => e.default).catch((e) => {
9
- throw console.error(
10
- "Error while attempting to dynamically import component RenderBlock at ./render-block.vue",
11
- e
12
- ), e;
13
- }), B = {
14
- name: "render-component",
15
- components: {
16
- RenderBlock: r(h),
17
- BlockStyles: r(x)
18
- },
19
- props: ["componentRef", "componentOptions", "blockChildren", "context"]
20
- };
21
- function C(e, R, o, w, g, v) {
22
- const i = l("render-block"), k = l("block-styles");
23
- return o.componentRef ? (n(), c(p(o.componentRef), u(y({ key: 0 }, o.componentOptions)), {
24
- default: _(() => [
25
- (n(!0), m(s, null, a(o.blockChildren, (t, d) => (n(), c(i, {
26
- key: "render-block-" + t.id,
27
- block: t,
28
- context: o.context
29
- }, null, 8, ["block", "context"]))), 128)),
30
- (n(!0), m(s, null, a(o.blockChildren, (t, d) => (n(), c(k, {
31
- key: "block-style-" + t.id,
32
- block: t,
33
- context: o.context
34
- }, null, 8, ["block", "context"]))), 128))
35
- ]),
36
- _: 1
37
- }, 16)) : b("", !0);
38
- }
39
- const O = /* @__PURE__ */ f(B, [["render", C]]);
40
- export {
41
- O as default
42
- };
@@ -1 +0,0 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("vue"),s=require("./index.461c31d1.cjs"),m=()=>Promise.resolve().then(()=>require("./block-styles.d483335e.cjs")).then(o=>o.default).catch(o=>{throw console.error("Error while attempting to dynamically import component BlockStyles at ./block-styles.vue",o),o}),i=()=>Promise.resolve().then(()=>require("./render-block.25c9ee7e.cjs")).then(o=>o.default).catch(o=>{throw console.error("Error while attempting to dynamically import component RenderBlock at ./render-block.vue",o),o}),k={name:"render-component",components:{RenderBlock:e.defineAsyncComponent(i),BlockStyles:e.defineAsyncComponent(m)},props:["componentRef","componentOptions","blockChildren","context"]};function d(o,u,n,p,y,b){const c=e.resolveComponent("render-block"),r=e.resolveComponent("block-styles");return n.componentRef?(e.openBlock(),e.createBlock(e.resolveDynamicComponent(n.componentRef),e.normalizeProps(e.mergeProps({key:0},n.componentOptions)),{default:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(n.blockChildren,(t,l)=>(e.openBlock(),e.createBlock(c,{key:"render-block-"+t.id,block:t,context:n.context},null,8,["block","context"]))),128)),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(n.blockChildren,(t,l)=>(e.openBlock(),e.createBlock(r,{key:"block-style-"+t.id,block:t,context:n.context},null,8,["block","context"]))),128))]),_:1},16)):e.createCommentVNode("",!0)}const a=s._export_sfc(k,[["render",d]]);exports.default=a;
@@ -1 +0,0 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const t=require("vue"),o=require("./index.461c31d1.cjs"),c=()=>Promise.resolve().then(()=>require("./render-block.25c9ee7e.cjs")).then(e=>e.default).catch(e=>{throw console.error("Error while attempting to dynamically import component RenderBlock at ./render-block.vue",e),e}),s={name:"render-repeated-block",components:{RenderBlock:t.defineAsyncComponent(c)},props:["block","repeatContext"],provide(){const e=this;return{[o.BuilderContext.key]:{content:e.repeatContext.content,state:e.repeatContext.state,setState:e.repeatContext.setState,context:e.repeatContext.context,apiKey:e.repeatContext.apiKey,registeredComponents:e.repeatContext.registeredComponents,inheritedStyles:e.repeatContext.inheritedStyles}}}};function a(e,d,n,i,p,x){const r=t.resolveComponent("render-block");return t.openBlock(),t.createBlock(r,{block:n.block,context:n.repeatContext},null,8,["block","context"])}const l=o._export_sfc(s,[["render",a]]);exports.default=l;