@builder.io/sdk-vue 0.3.2-0 → 0.4.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (110) hide show
  1. package/package.json +1 -1
  2. package/packages/_vue2/dist/block-styles.18ca317b.cjs +1 -0
  3. package/packages/_vue2/dist/{block-styles.22c50e60.js → block-styles.69ca115c.js} +11 -10
  4. package/packages/_vue2/dist/css.24c082d4.cjs +6 -0
  5. package/packages/_vue2/dist/css.ce776b44.js +75 -0
  6. package/packages/_vue2/dist/evaluate.8238dbc9.js +63 -0
  7. package/packages/_vue2/dist/evaluate.cff086ca.cjs +4 -0
  8. package/packages/_vue2/dist/index.c16f4cca.cjs +32 -0
  9. package/packages/_vue2/dist/index.e2db82e0.js +1372 -0
  10. package/packages/_vue2/dist/{render-block.11a66585.js → render-block.0f23cd7e.js} +22 -21
  11. package/packages/_vue2/dist/render-block.954cc390.cjs +3 -0
  12. package/packages/_vue2/dist/{render-component.dc53dbd0.js → render-component.74280c04.js} +3 -3
  13. package/packages/_vue2/dist/render-component.e8047ef5.cjs +1 -0
  14. package/packages/_vue2/dist/render-content.672eabd9.js +1359 -0
  15. package/packages/_vue2/dist/render-content.702f0387.cjs +1 -0
  16. package/packages/_vue2/dist/render-inlined-styles.2c0cf85b.cjs +1 -0
  17. package/packages/_vue2/dist/render-inlined-styles.ac06208e.js +23 -0
  18. package/packages/_vue2/dist/{render-repeated-block.1cb6b42e.cjs → render-repeated-block.5740965b.cjs} +1 -1
  19. package/packages/_vue2/dist/{render-repeated-block.7b83bd13.js → render-repeated-block.c40e7c25.js} +2 -2
  20. package/packages/_vue2/dist/{render-styles.37cf66d9.js → render-styles.af4e2d5a.js} +3 -3
  21. package/packages/_vue2/dist/{render-styles.fe76b092.cjs → render-styles.e6e62ba1.cjs} +6 -6
  22. package/packages/_vue2/dist/sdk.cjs +1 -1
  23. package/packages/_vue2/dist/sdk.js +19 -23
  24. package/packages/_vue2/dist/src/blocks/button/button.vue.d.ts +1 -1
  25. package/packages/_vue2/dist/src/blocks/columns/columns.vue.d.ts +1 -1
  26. package/packages/_vue2/dist/src/blocks/custom-code/custom-code.vue.d.ts +1 -1
  27. package/packages/_vue2/dist/src/blocks/image/image.vue.d.ts +1 -1
  28. package/packages/_vue2/dist/src/blocks/symbol/symbol.vue.d.ts +1 -1
  29. package/packages/_vue2/dist/src/components/render-blocks.vue.d.ts +1 -1
  30. package/packages/_vue2/dist/src/components/render-content/render-content.types.d.ts +9 -2
  31. package/packages/_vue2/dist/src/components/render-content/render-content.vue.d.ts +2 -0
  32. package/packages/_vue2/dist/src/components/render-content-variants/helpers.d.ts +17 -0
  33. package/packages/_vue2/dist/src/components/render-content-variants/render-content-variants.vue.d.ts +29 -0
  34. package/packages/_vue2/dist/src/components/render-inlined-styles.vue.d.ts +4 -6
  35. package/packages/_vue2/dist/src/constants/sdk-version.d.ts +1 -1
  36. package/packages/_vue2/dist/src/functions/get-builder-search-params/index.d.ts +6 -0
  37. package/packages/_vue2/dist/src/functions/get-content/index.d.ts +7 -2
  38. package/packages/_vue2/dist/src/helpers/ab-tests.d.ts +8 -7
  39. package/packages/_vue2/dist/src/helpers/canTrack.d.ts +1 -0
  40. package/packages/_vue2/dist/src/helpers/cookie.d.ts +7 -3
  41. package/packages/_vue2/dist/src/helpers/logger.d.ts +1 -0
  42. package/packages/_vue2/dist/src/index-helpers/blocks-exports.d.ts +1 -1
  43. package/packages/_vue2/dist/src/index.d.ts +9 -7
  44. package/packages/_vue2/dist/src/types/builder-content.d.ts +1 -3
  45. package/packages/_vue2/dist/src/types/targets.d.ts +3 -0
  46. package/packages/_vue2/dist/style.css +1 -1
  47. package/packages/_vue3/dist/{block-styles.c0e7bfbe.js → block-styles.7969d695.js} +10 -9
  48. package/packages/_vue3/dist/block-styles.e3f09eb7.cjs +1 -0
  49. package/packages/_vue3/dist/css.5cacc3c3.cjs +6 -0
  50. package/packages/_vue3/dist/css.7fe37cb4.js +75 -0
  51. package/packages/_vue3/dist/evaluate.975fa4d3.js +63 -0
  52. package/packages/_vue3/dist/evaluate.9a614eea.cjs +4 -0
  53. package/packages/_vue3/dist/index.3f716812.cjs +32 -0
  54. package/packages/_vue3/dist/index.cdd37dcf.js +1393 -0
  55. package/packages/_vue3/dist/{render-block.d0ed34b4.js → render-block.348e561a.js} +16 -15
  56. package/packages/_vue3/dist/render-block.d1c4ccaa.cjs +3 -0
  57. package/packages/_vue3/dist/{render-component.77f33093.cjs → render-component.788543b4.cjs} +1 -1
  58. package/packages/_vue3/dist/{render-component.268e7bd8.js → render-component.9bd5c435.js} +3 -3
  59. package/packages/_vue3/dist/render-content.0423df8b.js +1355 -0
  60. package/packages/_vue3/dist/render-content.17e9b187.cjs +1 -0
  61. package/packages/_vue3/dist/render-inlined-styles.49a121f8.js +16 -0
  62. package/packages/_vue3/dist/render-inlined-styles.528fb5cd.cjs +1 -0
  63. package/packages/_vue3/dist/{render-repeated-block.0d46ab69.cjs → render-repeated-block.04301799.cjs} +1 -1
  64. package/packages/_vue3/dist/{render-repeated-block.b1101852.js → render-repeated-block.35a0d813.js} +2 -2
  65. package/packages/_vue3/dist/{render-styles.7f31b369.js → render-styles.3411b577.js} +3 -3
  66. package/packages/_vue3/dist/{render-styles.5073866f.cjs → render-styles.b4509dd3.cjs} +3 -3
  67. package/packages/_vue3/dist/sdk.cjs +1 -1
  68. package/packages/_vue3/dist/sdk.js +20 -24
  69. package/packages/_vue3/dist/src/blocks/button/button.vue.d.ts +1 -1
  70. package/packages/_vue3/dist/src/blocks/columns/columns.vue.d.ts +1 -1
  71. package/packages/_vue3/dist/src/blocks/custom-code/custom-code.vue.d.ts +1 -1
  72. package/packages/_vue3/dist/src/blocks/image/image.vue.d.ts +1 -1
  73. package/packages/_vue3/dist/src/blocks/symbol/symbol.vue.d.ts +1 -1
  74. package/packages/_vue3/dist/src/components/render-blocks.vue.d.ts +1 -1
  75. package/packages/_vue3/dist/src/components/render-content/render-content.types.d.ts +9 -2
  76. package/packages/_vue3/dist/src/components/render-content/render-content.vue.d.ts +17 -3
  77. package/packages/_vue3/dist/src/components/render-content-variants/helpers.d.ts +17 -0
  78. package/packages/_vue3/dist/src/components/render-content-variants/render-content-variants.vue.d.ts +29 -0
  79. package/packages/_vue3/dist/src/components/render-inlined-styles.vue.d.ts +4 -6
  80. package/packages/_vue3/dist/src/constants/sdk-version.d.ts +1 -1
  81. package/packages/_vue3/dist/src/functions/get-builder-search-params/index.d.ts +6 -0
  82. package/packages/_vue3/dist/src/functions/get-content/index.d.ts +7 -2
  83. package/packages/_vue3/dist/src/helpers/ab-tests.d.ts +8 -7
  84. package/packages/_vue3/dist/src/helpers/canTrack.d.ts +1 -0
  85. package/packages/_vue3/dist/src/helpers/cookie.d.ts +7 -3
  86. package/packages/_vue3/dist/src/helpers/logger.d.ts +1 -0
  87. package/packages/_vue3/dist/src/index-helpers/blocks-exports.d.ts +1 -1
  88. package/packages/_vue3/dist/src/index.d.ts +9 -7
  89. package/packages/_vue3/dist/src/types/builder-content.d.ts +1 -3
  90. package/packages/_vue3/dist/src/types/targets.d.ts +3 -0
  91. package/packages/_vue3/dist/style.css +1 -1
  92. package/packages/_vue2/dist/block-styles.82ffdfab.cjs +0 -1
  93. package/packages/_vue2/dist/css.d1f35fa9.js +0 -74
  94. package/packages/_vue2/dist/css.d67364ee.cjs +0 -6
  95. package/packages/_vue2/dist/index.1955e2ac.js +0 -2586
  96. package/packages/_vue2/dist/index.2eccdb53.cjs +0 -29
  97. package/packages/_vue2/dist/render-block.742f7d9b.cjs +0 -3
  98. package/packages/_vue2/dist/render-component.8f5204ca.cjs +0 -1
  99. package/packages/_vue2/dist/render-inlined-styles.1887b766.cjs +0 -1
  100. package/packages/_vue2/dist/render-inlined-styles.955770d4.js +0 -34
  101. package/packages/_vue2/dist/src/functions/get-content/ab-testing.d.ts +0 -5
  102. package/packages/_vue3/dist/block-styles.18a1a0e6.cjs +0 -1
  103. package/packages/_vue3/dist/css.7a6108f3.cjs +0 -6
  104. package/packages/_vue3/dist/css.ee7d0ab8.js +0 -74
  105. package/packages/_vue3/dist/index.c3536d81.js +0 -2574
  106. package/packages/_vue3/dist/index.e7a22b43.cjs +0 -29
  107. package/packages/_vue3/dist/render-block.bcafe494.cjs +0 -3
  108. package/packages/_vue3/dist/render-inlined-styles.5aa04bb8.js +0 -32
  109. package/packages/_vue3/dist/render-inlined-styles.86c0a89d.cjs +0 -1
  110. package/packages/_vue3/dist/src/functions/get-content/ab-testing.d.ts +0 -5
package/package.json CHANGED
@@ -4,7 +4,7 @@
4
4
  "workspaces": [
5
5
  "packages/*"
6
6
  ],
7
- "version": "0.3.2-0",
7
+ "version": "0.4.1",
8
8
  "main": "./packages/_vue2/dist/sdk.js",
9
9
  "module": "./packages/_vue2/dist/sdk.js",
10
10
  "type": "module",
@@ -0,0 +1 @@
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const h=require("vue"),s=require("./index.c16f4cca.cjs"),c=require("./css.24c082d4.cjs");require("./evaluate.cff086ca.cjs");const S=()=>Promise.resolve().then(()=>require("./render-inlined-styles.2c0cf85b.cjs")).then(e=>e.default).catch(e=>{throw console.error("Error while attempting to dynamically import component RenderInlinedStyles at ../render-inlined-styles.vue",e),e}),y=h.defineComponent({name:"block-styles",components:{RenderInlinedStyles:S},props:["block","context"],data(){return{TARGET:s.TARGET}},computed:{useBlock(){return c.getProcessedBlock({block:this.block,localState:this.context.localState,rootState:this.context.rootState,rootSetState:this.context.rootSetState,context:this.context.context,shouldEvaluateBindings:!0})},canShowBlock(){return s.checkIsDefined(this.useBlock.hide)?!this.useBlock.hide:s.checkIsDefined(this.useBlock.show)?this.useBlock.show:!0},css(){var a;const e=this.useBlock.responsiveStyles,t=this.context.content,o=s.getSizesForBreakpoints(((a=t==null?void 0:t.meta)==null?void 0:a.breakpoints)||{}),r=e==null?void 0:e.large,l=e==null?void 0:e.medium,i=e==null?void 0:e.small,n=this.useBlock.id;if(!n)return"";const u=r?c.createCssClass({className:n,styles:r}):"",d=l?c.createCssClass({className:n,styles:l,mediaQuery:s.getMaxWidthQueryForSize("medium",o)}):"",m=i?c.createCssClass({className:n,styles:i,mediaQuery:s.getMaxWidthQueryForSize("small",o)}):"";return[u,d,m].join(" ")}}});var f=function(){var t=this,o=t._self._c;return t._self._setupProxy,t.TARGET!=="reactNative"&&t.css&&t.canShowBlock?o("render-inlined-styles",{attrs:{styles:t.css}}):t._e()},k=[],p=s.normalizeComponent(y,f,k,!1,null,null,null,null);const _=p.exports;exports.default=_;
@@ -1,7 +1,8 @@
1
1
  import { defineComponent as p } from "vue";
2
- import { T as S, c as i, g as k, a as m, n as y } from "./index.1955e2ac.js";
3
- import { g as f, c as n } from "./css.d1f35fa9.js";
4
- const _ = () => import("./render-inlined-styles.955770d4.js").then((t) => t.default).catch((t) => {
2
+ import { T as S, c as i, g as k, a as m, n as y } from "./index.e2db82e0.js";
3
+ import { g as f, c as n } from "./css.ce776b44.js";
4
+ import "./evaluate.8238dbc9.js";
5
+ const _ = () => import("./render-inlined-styles.ac06208e.js").then((t) => t.default).catch((t) => {
5
6
  throw console.error(
6
7
  "Error while attempting to dynamically import component RenderInlinedStyles at ../render-inlined-styles.vue",
7
8
  t
@@ -31,15 +32,15 @@ const _ = () => import("./render-inlined-styles.955770d4.js").then((t) => t.defa
31
32
  var a;
32
33
  const t = this.useBlock.responsiveStyles, e = this.context.content, s = k(
33
34
  ((a = e == null ? void 0 : e.meta) == null ? void 0 : a.breakpoints) || {}
34
- ), l = t == null ? void 0 : t.large, r = t == null ? void 0 : t.medium, c = t == null ? void 0 : t.small, o = this.useBlock.id;
35
+ ), r = t == null ? void 0 : t.large, l = t == null ? void 0 : t.medium, c = t == null ? void 0 : t.small, o = this.useBlock.id;
35
36
  if (!o)
36
37
  return "";
37
- const u = l ? n({
38
+ const u = r ? n({
38
39
  className: o,
39
- styles: l
40
- }) : "", d = r ? n({
40
+ styles: r
41
+ }) : "", d = l ? n({
41
42
  className: o,
42
- styles: r,
43
+ styles: l,
43
44
  mediaQuery: m(
44
45
  "medium",
45
46
  s
@@ -69,7 +70,7 @@ var x = function() {
69
70
  null,
70
71
  null
71
72
  );
72
- const R = v.exports;
73
+ const T = v.exports;
73
74
  export {
74
- R as default
75
+ T as default
75
76
  };
@@ -0,0 +1,6 @@
1
+ "use strict";const d=require("./evaluate.cff086ca.cjs"),a=require("./index.c16f4cca.cjs"),p=(e,t,n)=>{if(Object(e)!==e)return e;const s=Array.isArray(t)?t:t.toString().match(/[^.[\]]+/g);return s.slice(0,-1).reduce((c,r,o)=>Object(c[r])===c[r]?c[r]:c[r]=Math.abs(Number(s[o+1]))>>0===+s[o+1]?[]:{},e)[s[s.length-1]]=n,e};const g=({block:e,context:t,localState:n,rootState:s,rootSetState:c})=>{if(!e.bindings)return e;const r=a.fastClone(e),o={...r,properties:{...r.properties},actions:{...r.actions}};for(const i in e.bindings){const l=e.bindings[i],f=d.evaluate({code:l,localState:n,rootState:s,rootSetState:c,context:t});p(o,i,f)}return o};function C({block:e,context:t,shouldEvaluateBindings:n,localState:s,rootState:c,rootSetState:r}){const o=e;return n?g({block:o,localState:s,rootState:c,rootSetState:r,context:t}):o}const S=e=>e.replace(/([a-z0-9]|(?=[A-Z]))([A-Z])/g,"$1-$2").toLowerCase(),u=e=>Object.entries(e).map(([n,s])=>{if(typeof s=="string")return`${S(n)}: ${s};`}).filter(a.checkIsDefined),v=e=>u(e).join(`
2
+ `),y=({mediaQuery:e,className:t,styles:n})=>{const s=`.${t} {
3
+ ${v(n)}
4
+ }`;return e?`${e} {
5
+ ${s}
6
+ }`:s};exports.convertStyleMapToCSSArray=u;exports.createCssClass=y;exports.getProcessedBlock=C;
@@ -0,0 +1,75 @@
1
+ import { e as u } from "./evaluate.8238dbc9.js";
2
+ import { f as p, c as l } from "./index.e2db82e0.js";
3
+ const g = (e, t, n) => {
4
+ if (Object(e) !== e)
5
+ return e;
6
+ const s = Array.isArray(t) ? t : t.toString().match(/[^.[\]]+/g);
7
+ return s.slice(0, -1).reduce(
8
+ (o, r, c) => Object(o[r]) === o[r] ? o[r] : o[r] = Math.abs(Number(s[c + 1])) >> 0 === +s[c + 1] ? [] : {},
9
+ e
10
+ )[s[s.length - 1]] = n, e;
11
+ };
12
+ const d = ({
13
+ block: e,
14
+ context: t,
15
+ localState: n,
16
+ rootState: s,
17
+ rootSetState: o
18
+ }) => {
19
+ if (!e.bindings)
20
+ return e;
21
+ const r = p(e), c = {
22
+ ...r,
23
+ properties: { ...r.properties },
24
+ actions: { ...r.actions }
25
+ };
26
+ for (const i in e.bindings) {
27
+ const a = e.bindings[i], f = u({
28
+ code: a,
29
+ localState: n,
30
+ rootState: s,
31
+ rootSetState: o,
32
+ context: t
33
+ });
34
+ g(c, i, f);
35
+ }
36
+ return c;
37
+ };
38
+ function v({
39
+ block: e,
40
+ context: t,
41
+ shouldEvaluateBindings: n,
42
+ localState: s,
43
+ rootState: o,
44
+ rootSetState: r
45
+ }) {
46
+ const c = e;
47
+ return n ? d({
48
+ block: c,
49
+ localState: s,
50
+ rootState: o,
51
+ rootSetState: r,
52
+ context: t
53
+ }) : c;
54
+ }
55
+ const m = (e) => e.replace(/([a-z0-9]|(?=[A-Z]))([A-Z])/g, "$1-$2").toLowerCase(), C = (e) => Object.entries(e).map(([n, s]) => {
56
+ if (typeof s == "string")
57
+ return `${m(n)}: ${s};`;
58
+ }).filter(l), $ = (e) => C(e).join(`
59
+ `), A = ({
60
+ mediaQuery: e,
61
+ className: t,
62
+ styles: n
63
+ }) => {
64
+ const s = `.${t} {
65
+ ${$(n)}
66
+ }`;
67
+ return e ? `${e} {
68
+ ${s}
69
+ }` : s;
70
+ };
71
+ export {
72
+ C as a,
73
+ A as c,
74
+ v as g
75
+ };
@@ -0,0 +1,63 @@
1
+ import { i as d, b as w } from "./index.e2db82e0.js";
2
+ function h({
3
+ code: n,
4
+ context: r,
5
+ localState: e,
6
+ rootState: s,
7
+ rootSetState: i,
8
+ event: u,
9
+ isExpression: c = !0
10
+ }) {
11
+ if (n === "") {
12
+ console.warn("Skipping evaluation of empty code block.");
13
+ return;
14
+ }
15
+ const t = {
16
+ isEditing: d(),
17
+ isBrowser: w(),
18
+ isServer: !w()
19
+ }, l = c && !(n.includes(";") || n.includes(" return ") || n.trim().startsWith("return ")) ? `return (${n});` : n;
20
+ try {
21
+ return new Function(
22
+ "builder",
23
+ "Builder",
24
+ "state",
25
+ "context",
26
+ "event",
27
+ l
28
+ )(
29
+ t,
30
+ t,
31
+ o(s, e, i),
32
+ r,
33
+ u
34
+ );
35
+ } catch (f) {
36
+ console.warn(
37
+ `Builder custom code error:
38
+ While Evaluating:
39
+ `,
40
+ l,
41
+ `
42
+ `,
43
+ f
44
+ );
45
+ }
46
+ }
47
+ function o(n, r, e) {
48
+ if (n === r)
49
+ throw new Error("rootState === localState");
50
+ return new Proxy(n, {
51
+ get: (s, i) => r && i in r ? r[i] : n[i],
52
+ set: (s, i, u) => {
53
+ if (r && i in r)
54
+ throw new Error(
55
+ "Writing to local state is not allowed as it is read-only."
56
+ );
57
+ return n[i] = u, e == null || e(n), !0;
58
+ }
59
+ });
60
+ }
61
+ export {
62
+ h as e
63
+ };
@@ -0,0 +1,4 @@
1
+ "use strict";const t=require("./index.c16f4cca.cjs");function f({code:n,context:r,localState:i,rootState:s,rootSetState:e,event:u,isExpression:w=!0}){if(n===""){console.warn("Skipping evaluation of empty code block.");return}const c={isEditing:t.isEditing(),isBrowser:t.isBrowser(),isServer:!t.isBrowser()},l=w&&!(n.includes(";")||n.includes(" return ")||n.trim().startsWith("return "))?`return (${n});`:n;try{return new Function("builder","Builder","state","context","event",l)(c,c,o(s,i,e),r,u)}catch(d){console.warn(`Builder custom code error:
2
+ While Evaluating:
3
+ `,l,`
4
+ `,d)}}function o(n,r,i){if(n===r)throw new Error("rootState === localState");return new Proxy(n,{get:(s,e)=>r&&e in r?r[e]:n[e],set:(s,e,u)=>{if(r&&e in r)throw new Error("Writing to local state is not allowed as it is read-only.");return n[e]=u,i==null||i(n),!0}})}exports.evaluate=f;
@@ -0,0 +1,32 @@
1
+ "use strict";const y=require("vue"),dt=y.defineComponent({name:"builder-button",props:["attributes","text","link","openLinkInNewTab"],methods:{filterAttrs:function(t={},n){const r="v-on:";return Object.keys(t).filter(o=>{if(!t[o])return!1;const s=o.startsWith(r);return n?s:!s}).reduce((o,s)=>({...o,[s.replace(r,"")]:t[s]}),{})},_classStringToObject(e){const t={};if(typeof e!="string")return t;const n=e.trim().split(/\s+/);for(const r of n)t[r]=!0;return t}}});function b(e,t,n,r,o,s,i,u){var a=typeof e=="function"?e.options:e;t&&(a.render=t,a.staticRenderFns=n,a._compiled=!0),r&&(a.functional=!0),s&&(a._scopeId="data-v-"+s);var c;if(i?(c=function(l){l=l||this.$vnode&&this.$vnode.ssrContext||this.parent&&this.parent.$vnode&&this.parent.$vnode.ssrContext,!l&&typeof __VUE_SSR_CONTEXT__<"u"&&(l=__VUE_SSR_CONTEXT__),o&&o.call(this,l),l&&l._registeredComponents&&l._registeredComponents.add(i)},a._ssrRegister=c):o&&(c=u?function(){o.call(this,(a.functional?this.parent:this).$root.$options.shadowRoot)}:o),c)if(a.functional){a._injectStyles=c;var _=a.render;a.render=function(m,d){return c.call(d),_(m,d)}}else{var f=a.beforeCreate;a.beforeCreate=f?[].concat(f,c):[c]}return{exports:e,options:a}}var ft=function(){var t=this,n=t._self._c;return t._self._setupProxy,t.link?n("a",t._g(t._b({attrs:{role:"button",href:t.link,target:t.openLinkInNewTab?"_blank":void 0}},"a",t.filterAttrs(t.attributes,!1),!1),t.filterAttrs(t.attributes,!0)),[t._v(" "+t._s(t.text)+" ")]):n("button",t._g(t._b({class:t._classStringToObject(t.attributes.class+" button-2fnk003dqad")},"button",t.filterAttrs(t.attributes,!1),!1),t.filterAttrs(t.attributes,!0)),[t._v(" "+t._s(t.text)+" ")])},mt=[],pt=b(dt,ft,mt,!1,null,"7e3d619b",null,null);const ht=pt.exports,R=e=>JSON.parse(JSON.stringify(e)),M={small:{min:320,default:321,max:640},medium:{min:641,default:642,max:991},large:{min:990,default:991,max:1200}},bt=(e,t=M)=>`@media (max-width: ${t[e].max}px)`,U=({small:e,medium:t})=>{const n=R(M);if(!e||!t)return n;const r=Math.floor(e/2);n.small={max:e,min:r,default:r+1};const o=n.small.max+1;n.medium={max:t,min:o,default:o+1};const s=n.medium.max+1;return n.large={max:2e3,min:s,default:s+1},n},C="vue2",_t=Symbol(),I={Builder:{content:null,context:{},localState:void 0,rootSetState(){},rootState:{},apiKey:null,apiVersion:void 0,registeredComponents:{},inheritedStyles:{}},key:_t},gt=()=>Promise.resolve().then(()=>L).then(e=>e.default).catch(e=>{throw console.error("Error while attempting to dynamically import component RenderBlocks at ../../components/render-blocks.vue",e),e}),yt=()=>Promise.resolve().then(()=>require("./render-inlined-styles.2c0cf85b.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}),vt=y.defineComponent({name:"builder-columns",components:{RenderInlinedStyles:yt,RenderBlocks:gt},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:C}},inject:{builderContext:I.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 t;return((t=this.cols[e])==null?void 0:t.width)||100/this.cols.length},getColumnCssWidth(e){const t=this.gutterSize*(this.cols.length-1)/this.cols.length;return`calc(${this.getWidth(e)}% - ${t}px)`},getTabletStyle({stackedStyle:e,desktopStyle:t}){return this.stackAt==="tablet"?e:t},getMobileStyle({stackedStyle:e,desktopStyle:t}){return this.stackAt==="never"?t:e},columnCssVars(e){const t=e===0?0:this.gutterSize,n=this.getColumnCssWidth(e),r=`${t}px`,o="100%",s=0;return{width:n,"margin-left":r,"--column-width-mobile":this.getMobileStyle({stackedStyle:o,desktopStyle:n}),"--column-margin-left-mobile":this.getMobileStyle({stackedStyle:s,desktopStyle:r}),"--column-width-tablet":this.getTabletStyle({stackedStyle:o,desktopStyle:n}),"--column-margin-left-tablet":this.getTabletStyle({stackedStyle:s,desktopStyle:r})}},getWidthForBreakpointSize(e){var n,r;return U(((r=(n=this.builderContext.content)==null?void 0:n.meta)==null?void 0:r.breakpoints)||{})[e].max},_classStringToObject(e){const t={};if(typeof e!="string")return t;const n=e.trim().split(/\s+/);for(const r of n)t[r]=!0;return t}}});var St=function(){var t=this,n=t._self._c;return t._self._setupProxy,n("div",{class:t._classStringToObject(`builder-columns ${t.builderBlock.id}-breakpoints div-t9spj7joih`),style:t.columnsCssVars,attrs:{dataSet:{"builder-block-name":"builder-columns"}}},[t.TARGET!=="reactNative"?[n("render-inlined-styles",{attrs:{styles:t.columnsStyles}})]:t._e(),t._l(t.columns,function(r,o){return n("div",{key:o,staticClass:"builder-column div-t9spj7joih-2",style:t.columnCssVars(o),attrs:{dataSet:{"builder-block-name":"builder-column"}}},[n("render-blocks",{attrs:{blocks:r.blocks,path:`component.options.columns.${o}.blocks`,parent:t.builderBlock.id,styleProp:{flexGrow:"1"}}})],1)})],2)},kt=[],xt=b(vt,St,kt,!1,null,"ea80c645",null,null);const Ct=xt.exports,wt=y.defineComponent({name:"builder-fragment-component",props:[]});var $t=function(){var t=this,n=t._self._c;return t._self._setupProxy,n("span",[t._t("default")],2)},Tt=[],Rt=b(wt,$t,Tt,!1,null,null,null,null);const It=Rt.exports;function O(e){return e.replace(/http(s)?:/,"")}function Et(e="",t,n){const r=new RegExp("([?&])"+t+"=.*?(&|$)","i"),o=e.indexOf("?")!==-1?"&":"?";return e.match(r)?e.replace(r,"$1"+t+"="+encodeURIComponent(n)+"$2"):e+o+t+"="+encodeURIComponent(n)}function Pt(e,t){if(!e||!(e!=null&&e.match(/cdn\.shopify\.com/))||!t)return e;if(t==="master")return O(e);const n=e.match(/(_\d+x(\d+)?)?(\.(jpg|jpeg|gif|png|bmp|bitmap|tiff|tif)(\?v=\d+)?)/i);if(n){const r=e.split(n[0]),o=n[3],s=t.match("x")?t:`${t}x`;return O(`${r[0]}_${s}${o}`)}return null}function E(e){if(!e)return e;const t=[100,200,400,800,1200,1600,2e3];if(e.match(/builder\.io/)){let n=e;const r=Number(e.split("?width=")[1]);return isNaN(r)||(n=`${n} ${r}w`),t.filter(o=>o!==r).map(o=>`${Et(e,"width",o)} ${o}w`).concat([n]).join(", ")}return e.match(/cdn\.shopify\.com/)?t.map(n=>[Pt(e,`${n}x${n}`),n]).filter(([n])=>!!n).map(([n,r])=>`${n} ${r}w`).concat([e]).join(", "):e}const At=y.defineComponent({name:"builder-image",props:["image","src","srcset","noWebp","aspectRatio","altText","backgroundPosition","backgroundSize","className","sizes","builderBlock","fitContent"],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.srcset&&((n=this.image)==null?void 0:n.includes("builder.io/api/v1/image"))){if(!this.srcset.includes(this.image.split("?")[0]))return console.debug("Removed given srcset"),E(t)}else if(this.image&&!this.srcset)return E(t);return E(t)},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 t={};if(typeof e!="string")return t;const n=e.trim().split(/\s+/);for(const r of n)t[r]=!0;return t}}});var Ot=function(){var r,o,s,i;var t=this,n=t._self._c;return t._self._setupProxy,n("div",[n("picture",[t.webpSrcSet?[n("source",{attrs:{type:"image/webp",srcset:t.webpSrcSet}})]:t._e(),n("img",{class:t._classStringToObject("builder-image"+(t.className?" "+t.className:"")+" img-1pl23ac79ld"),style:{objectPosition:t.backgroundPosition||"center",objectFit:t.backgroundSize||"cover",...t.aspectRatioCss},attrs:{loading:"lazy",alt:t.altText,role:t.altText?"presentation":void 0,src:t.image,srcset:t.srcSetToUse,sizes:t.sizes}})],2),t.aspectRatio&&!(((o=(r=t.builderBlock)==null?void 0:r.children)==null?void 0:o.length)&&t.fitContent)?[n("div",{staticClass:"builder-image-sizer div-1pl23ac79ld",style:{paddingTop:t.aspectRatio*100+"%"}})]:t._e(),((i=(s=t.builderBlock)==null?void 0:s.children)==null?void 0:i.length)&&t.fitContent?[t._t("default")]:t._e(),!t.fitContent&&t.children?[n("div",{staticClass:"div-1pl23ac79ld-2"},[t._t("default")],2)]:t._e()],2)},Vt=[],Bt=b(At,Ot,Vt,!1,null,"7eca4996",null,null);const jt=Bt.exports;function p(){return typeof window<"u"&&typeof document<"u"}function Nt(){return p()&&window.self!==window.top}function x(){return Nt()&&window.location.search.indexOf("builder.frameEditing=")!==-1}const Ft=()=>Promise.resolve().then(()=>require("./block-styles.18ca317b.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}),Mt=()=>Promise.resolve().then(()=>require("./render-block.954cc390.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}),Ut=y.defineComponent({name:"render-blocks",components:{RenderBlock:Mt,BlockStyles:Ft},props:["blocks","parent","path","styleProp"],inject:{builderContext:I.key},computed:{className(){var e;return"builder-blocks"+((e=this.blocks)!=null&&e.length?"":" no-blocks")}},methods:{onClick(){var e,t;x()&&!((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;x()&&!((e=this.blocks)!=null&&e.length)&&((t=window.parent)==null||t.postMessage({type:"builder.hoverEmptyBlocks",data:{parentElementId:this.parent,dataPath:this.path}},"*"))},_classStringToObject(e){const t={};if(typeof e!="string")return t;const n=e.trim().split(/\s+/);for(const r of n)t[r]=!0;return t}}});var Wt=function(){var t=this,n=t._self._c;return t._self._setupProxy,n("div",{class:t._classStringToObject(t.className+" div-21azgz5avex"),style:t.styleProp,attrs:{"builder-path":t.path,"builder-parent-id":t.parent,dataSet:{class:t.className}},on:{click:function(r){return t.onClick()},mouseenter:function(r){return t.onMouseEnter()}}},[t.blocks?t._l(t.blocks,function(r,o){return n("render-block",{key:"render-block-"+r.id,attrs:{block:r,context:t.builderContext}})}):t._e(),t.blocks?t._l(t.blocks,function(r,o){return n("block-styles",{key:"block-style-"+r.id,attrs:{block:r,context:t.builderContext}})}):t._e()],2)},Lt=[],zt=b(Ut,Wt,Lt,!1,null,"23bbd49b",null,null);const W=zt.exports,L=Object.freeze(Object.defineProperty({__proto__:null,default:W},Symbol.toStringTag,{value:"Module"})),Kt=y.defineComponent({name:"builder-section-component",props:["maxWidth","attributes"],methods:{filterAttrs:function(t={},n){const r="v-on:";return Object.keys(t).filter(o=>{if(!t[o])return!1;const s=o.startsWith(r);return n?s:!s}).reduce((o,s)=>({...o,[s.replace(r,"")]:t[s]}),{})}}});var Gt=function(){var t=this,n=t._self._c;return t._self._setupProxy,n("section",t._g(t._b({style:{width:"100%",alignSelf:"stretch",flexGrow:1,boxSizing:"border-box",maxWidth:t.maxWidth||1200,display:"flex",flexDirection:"column",alignItems:"stretch",marginLeft:"auto",marginRight:"auto"}},"section",t.filterAttrs(t.attributes,!1),!1),t.filterAttrs(t.attributes,!0)),[t._t("default")],2)},qt=[],Dt=b(Kt,Gt,qt,!1,null,null,null,null);const Ht=Dt.exports,w="[Builder.io]: ",v={log:(...e)=>console.log(w,...e),error:(...e)=>console.error(w,...e),warn:(...e)=>console.warn(w,...e),debug:(...e)=>console.debug(w,...e)},S=e=>e!=null,Jt=e=>{if(e==="localhost"||e==="127.0.0.1")return e;const t=e.split(".");return t.length>2?t.slice(1).join("."):e},z=({name:e,canTrack:t})=>{var n;try{return t?(n=document.cookie.split("; ").find(r=>r.startsWith(`${e}=`)))==null?void 0:n.split("=")[1]:void 0}catch(r){v.warn("[COOKIE] GET error: ",(r==null?void 0:r.message)||r);return}},K=async e=>z(e),Qt=e=>e.map(([t,n])=>n?`${t}=${n}`:t).filter(S).join("; "),Xt=[["secure",""],["SameSite","None"]],Yt=({name:e,value:t,expires:n})=>{const o=(p()?location.protocol==="https:":!0)?Xt:[[]],s=n?[["expires",n.toUTCString()]]:[[]],i=[[e,t],...s,["path","/"],["domain",Jt(window.location.hostname)],...o];return Qt(i)},G=async({name:e,value:t,expires:n,canTrack:r})=>{try{if(!r)return;const o=Yt({name:e,value:t,expires:n});document.cookie=o}catch(o){v.warn("[COOKIE] SET error: ",(o==null?void 0:o.message)||o)}},Zt="builder.tests",A=e=>`${Zt}.${e}`,te=({contentId:e})=>K({name:A(e),canTrack:!0}),ee=({contentId:e})=>z({name:A(e),canTrack:!0}),ne=({contentId:e,value:t})=>G({name:A(e),value:t,canTrack:!0}),q=e=>S(e.id)&&S(e.variations)&&Object.keys(e.variations).length>0,re=({id:e,variations:t})=>{var o;let n=0;const r=Math.random();for(const s in t){const i=(o=t[s])==null?void 0:o.testRatio;if(n+=i,r<n)return s}return e},D=e=>{const t=re(e);return ne({contentId:e.id,value:t}).catch(n=>{v.error("could not store A/B test variation: ",n)}),t},H=({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":"")}},oe=({item:e,canTrack:t})=>{if(!t)return e;if(!e)return;if(!q(e))return e;const n=ee({contentId:e.id})||D({variations:e.variations,id:e.id}),r=H({item:e,testGroupId:n});return{...e,...r}},se=async({item:e,canTrack:t})=>{if(!t||!q(e))return e;const r=await te({contentId:e.id})||D({variations:e.variations,id:e.id}),o=H({item:e,testGroupId:r});return{...e,...o}},$=e=>S(e)?e:!0;function ie(){return typeof globalThis<"u"?globalThis:typeof window<"u"?window:typeof global<"u"?global:typeof self<"u"?self:globalThis}function ae(){const e=ie().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=ae();function P(e,t=null,n="."){return Object.keys(e).reduce((r,o)=>{const s=e[o],i=[t,o].filter(Boolean).join(n);return[typeof s=="object",s!==null,!(Array.isArray(s)&&s.length===0)].every(Boolean)?{...r,...P(s,i,n)}:{...r,[i]:s}},{})}const V="builder.",ce="options.",le=e=>{const t={};return e.forEach((n,r)=>{t[r]=n}),t},Q=e=>{if(!e)return{};const t=X(e),n={};return Object.keys(t).forEach(r=>{if(r.startsWith(V)){const o=r.replace(V,"").replace(ce,"");n[o]=t[r]}}),n},ue=()=>{if(!p())return{};const e=new URLSearchParams(window.location.search);return Q(e)},X=e=>e instanceof URLSearchParams?le(e):e,de="v3",Y=e=>{const{limit:t=30,userAttributes:n,query:r,noTraverse:o=!1,model:s,apiKey:i,includeRefs:u=!0,enrich:a,locale:c,apiVersion:_=de}=e;if(!i)throw new Error("Missing API key");if(!["v2","v3"].includes(_))throw new Error(`Invalid apiVersion: expected 'v2' or 'v3', received '${_}'`);const f=new URL(`https://cdn.builder.io/api/${_}/content/${s}?apiKey=${i}&limit=${t}&noTraverse=${o}&includeRefs=${u}${c?`&locale=${c}`:""}${a?`&enrich=${a}`:""}`),l={...ue(),...X(e.options||{})},m=P(l);for(const d in m)f.searchParams.set(d,String(m[d]));if(n&&f.searchParams.set("userAttributes",JSON.stringify(n)),r){const d=P({query:r});for(const g in d)f.searchParams.set(g,JSON.stringify(d[g]))}return f},Z=e=>"results"in e;async function tt(e){const t=await nt({...e,limit:1});return t&&Z(t)&&t.results[0]||null}const fe=async e=>{const t=Y(e);return await(await J(t.href)).json()},et=async(e,t)=>{const n=$(e.canTrack);if(!n||!(p()||C==="reactNative"))return t;try{const r=[];for(const o of t.results)r.push(await se({item:o,canTrack:n}));t.results=r}catch(r){v.error("Could not process A/B tests. ",r)}return t};async function nt(e){try{const t=Y(e),n=await fe(e);return Z(n)?et(e,n):(v.error("Error fetching data. ",{url:t,content:n,options:e}),n)}catch(t){return v.error("Error fetching data. ",t),null}}const me=()=>Promise.resolve().then(()=>require("./render-content.702f0387.cjs")).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}),pe=y.defineComponent({name:"builder-symbol",components:{RenderContent:me},props:["attributes","symbol","dynamic"],data(){var e,t,n;return{className:[...Object.keys(this.attributes.class),"builder-symbol",(e=this.symbol)!=null&&e.inline?"builder-inline-symbol":void 0,((t=this.symbol)==null?void 0:t.dynamic)||this.dynamic?"builder-dynamic-symbol":void 0].filter(Boolean).join(" "),contentToUse:(n=this.symbol)==null?void 0:n.content}},inject:{builderContext:I.key},mounted(){this.fetchContent()},watch:{onUpdateHook0:{handler(){this.fetchContent()},immediate:!0}},computed:{onUpdateHook0(){return{0:this.symbol}}},methods:{fetchContent(){var e,t;!this.contentToUse&&((e=this.symbol)==null?void 0:e.model)&&((t=this.builderContext)==null?void 0:t.apiKey)&&tt({model:this.symbol.model,apiKey:this.builderContext.apiKey,apiVersion:this.builderContext.apiVersion,query:{id:this.symbol.entry}}).then(n=>{n&&(this.contentToUse=n)}).catch(n=>{v.error("Could not fetch symbol content: ",n)})},filterAttrs:function(t={},n){const r="v-on:";return Object.keys(t).filter(o=>{if(!t[o])return!1;const s=o.startsWith(r);return n?s:!s}).reduce((o,s)=>({...o,[s.replace(r,"")]:t[s]}),{})},_classStringToObject(e){const t={};if(typeof e!="string")return t;const n=e.trim().split(/\s+/);for(const r of n)t[r]=!0;return t}}});var he=function(){var r,o,s,i;var t=this,n=t._self._c;return t._self._setupProxy,n("div",t._g(t._b({class:t._classStringToObject(t.className),attrs:{dataSet:{class:t.className}}},"div",t.filterAttrs(t.attributes,!1),!1),t.filterAttrs(t.attributes,!0)),[n("render-content",{attrs:{apiVersion:t.builderContext.apiVersion,apiKey:t.builderContext.apiKey,context:t.builderContext.context,customComponents:Object.values(t.builderContext.registeredComponents),data:{...(r=t.symbol)==null?void 0:r.data,...t.builderContext.localState,...(s=(o=t.contentToUse)==null?void 0:o.data)==null?void 0:s.state},model:(i=t.symbol)==null?void 0:i.model,content:t.contentToUse}})],1)},be=[],_e=b(pe,he,be,!1,null,null,null,null);const ge=_e.exports,ye=y.defineComponent({name:"builder-text",props:["text"]});var ve=function(){var t=this,n=t._self._c;return t._self._setupProxy,n("span",{staticClass:"builder-text",style:{outline:"none"},domProps:{innerHTML:t._s(t.text)}})},Se=[],ke=b(ye,ve,Se,!1,null,null,null,null);const xe=ke.exports,Ce=y.defineComponent({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}}}});var we=function(){var r;var t=this,n=t._self._c;return t._self._setupProxy,n("video",t._b({style:{width:"100%",height:"100%",...(r=t.attributes)==null?void 0:r.style,objectFit:t.fit,objectPosition:t.position,borderRadius:1},attrs:{src:t.video||"no-src",poster:t.posterImage}},"video",t.spreadProps,!1))},$e=[],Te=b(Ce,we,$e,!1,null,null,null,null);const Re=Te.exports,T=e=>Object.values((e==null?void 0:e.variations)||{}),B=({canTrack:e,content:t})=>!(!(T(t).length>0)||!e||p());function Ie(e,t,n){function r(){function i(m,d,g){let k="";if(g){const h=new Date;h.setTime(h.getTime()+g*24*60*60*1e3),k="; expires="+h.toUTCString()}document.cookie=m+"="+(d||"")+k+"; path=/; Secure; SameSite=None"}function u(m){const d=m+"=",g=document.cookie.split(";");for(let k=0;k<g.length;k++){let h=g[k];for(;h.charAt(0)===" ";)h=h.substring(1,h.length);if(h.indexOf(d)===0)return h.substring(d.length,h.length)}return null}const a=`builder.tests.${e}`,c=u(a),_=t.map(m=>m.id).concat(e);if(c&&_.includes(c))return c;let f=0;const l=Math.random();for(let m=0;m<t.length;m++){const d=t[m],g=d.testRatio;if(f+=g,l<f)return i(a,d.id),d.id}return i(a,e),e}const o=r(),s=document.getElementById(`variants-styles-${e}`);if(n){s.remove();const i=document.getElementById(`variants-script-${e}`);i==null||i.remove()}else{const i=t.concat({id:e}).filter(u=>u.id!==o).map(u=>`.variant-${u.id} { display: none; }
27
+ `).join("");s.innerHTML=i}}function Ee(e,t,n){if(!navigator.cookieEnabled)return;function r(a){const c=a+"=",_=document.cookie.split(";");for(let f=0;f<_.length;f++){let l=_[f];for(;l.charAt(0)===" ";)l=l.substring(1,l.length);if(l.indexOf(c)===0)return l.substring(c.length,l.length)}return null}const o=`builder.tests.${t}`,s=r(o),i=document.querySelector(`[builder-content-id="${e}"]`),u=e===t;if(s===e){if(u)return;i==null||i.removeAttribute("hidden"),i==null||i.removeAttribute("aria-hidden")}else{u&&(n?i==null||i.remove():(i==null||i.setAttribute("hidden","true"),i==null||i.setAttribute("aria-hidden","true")));return}}const rt=e=>e==="react"||e==="reactNative"||e==="vue3"||e==="vue2",j="bldrAbTest",ot="bldrCntntScrpt",Pe=(e,t)=>{const n=Ie.toString().replace(/\s+/g," "),r=Ee.toString().replace(/\s+/g," ");return`
28
+ const ${j} = ${n}
29
+ const ${ot} = ${r}
30
+ ${j}("${t}", ${JSON.stringify(e)}, ${rt})
31
+ `},Ae=({parentContentId:e,contentId:t})=>`
32
+ ${ot}("${t}", "${e}", ${rt})`,Oe=()=>Promise.resolve().then(()=>require("./render-content.702f0387.cjs")).then(e=>e.default).catch(e=>{throw console.error("Error while attempting to dynamically import component RenderContent at ../render-content/render-content.vue",e),e}),Ve=()=>Promise.resolve().then(()=>require("./render-inlined-styles.2c0cf85b.cjs")).then(e=>e.default).catch(e=>{throw console.error("Error while attempting to dynamically import component RenderInlinedStyles at ../render-inlined-styles.vue",e),e}),Be=y.defineComponent({name:"render-content-variants",components:{RenderInlinedStyles:Ve,RenderContent:Oe},props:["content","canTrack","apiKey","apiVersion","customComponents","model"],data(){var e;return{variantScriptStr:Pe(T(this.content).map(t=>({id:t.id,testRatio:t.testRatio})),((e=this.content)==null?void 0:e.id)||""),shouldRenderVariants:B({canTrack:$(this.canTrack),content:this.content}),hideVariantsStyleString:T(this.content).map(t=>`.variant-${t.id} { display: none; } `).join(""),contentToRender:B({canTrack:$(this.canTrack),content:this.content})?this.content:oe({item:this.content,canTrack:$(this.canTrack)}),getVariants:T}}});var je=function(){var r,o,s,i;var t=this,n=t._self._c;return t._self._setupProxy,n("div",[t.shouldRenderVariants?[n("render-inlined-styles",{attrs:{id:`variants-styles-${(r=t.content)==null?void 0:r.id}`,styles:t.hideVariantsStyleString}}),n("script",{tag:"component",attrs:{id:`variants-script-${(o=t.content)==null?void 0:o.id}`},domProps:{innerHTML:t._s(t.variantScriptStr)}}),t._l(t.getVariants(t.content),function(u,a){var c;return n("render-content",{key:u.id,attrs:{content:u,apiKey:t.apiKey,apiVersion:t.apiVersion,canTrack:t.canTrack,customComponents:t.customComponents,hideContent:!0,parentContentId:(c=t.content)==null?void 0:c.id,isSsrAbTest:t.shouldRenderVariants}})})]:t._e(),n("render-content",{attrs:{model:t.model,content:t.contentToRender,apiKey:t.apiKey,apiVersion:t.apiVersion,canTrack:t.canTrack,customComponents:t.customComponents,classNameProp:`variant-${(s=t.content)==null?void 0:s.id}`,parentContentId:(i=t.content)==null?void 0:i.id,isSsrAbTest:t.shouldRenderVariants}})],2)},Ne=[],Fe=b(Be,je,Ne,!1,null,null,null,null);const Me=Fe.exports;function Ue(){return!p()||x()?!1:Boolean(location.search.indexOf("builder.preview=")!==-1)}const st=e=>{const t=e.toString().trim();return`return (${!t.startsWith("function")&&!t.startsWith("(")?"function ":""}${t}).apply(this, arguments)`},We=[],Le=({component:e,...t})=>({type:"builder.registerComponent",data:Ke(t)}),ze=e=>typeof e=="function"?st(e):R(e),Ke=({inputs:e,...t})=>({...R(t),inputs:e==null?void 0:e.map(n=>Object.entries(n).reduce((r,[o,s])=>({...r,[o]:ze(s)}),{}))}),N={};function Ge(e,t){let n=N[e];if(n||(n=N[e]=[]),n.push(t),p()){const r={type:"builder.register",data:{type:e,info:t}};try{parent.postMessage(r,"*"),parent!==window&&window.postMessage(r,"*")}catch(o){console.debug("Could not postmessage",o)}}}const F={};function qe(e){if(p()){Object.assign(F,e);const t={type:"builder.settingsChange",data:F};parent.postMessage(t,"*")}}function De(){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 it(){return De().replace(/-/g,"")}const at="builderSessionId",He=async({canTrack:e})=>{if(!e)return;const t=await K({name:at,canTrack:e});if(S(t))return t;{const n=Je();return Qe({id:n,canTrack:e}),n}},Je=()=>it(),Qe=({id:e,canTrack:t})=>G({name:at,value:e,canTrack:t}),ct=()=>p()&&typeof localStorage<"u"?localStorage:void 0,Xe=({key:e,canTrack:t})=>{var n;try{return t?(n=ct())==null?void 0:n.getItem(e):void 0}catch(r){console.debug("[LocalStorage] GET error: ",r);return}},Ye=({key:e,canTrack:t,value:n})=>{var r;try{t&&((r=ct())==null||r.setItem(e,n))}catch(o){console.debug("[LocalStorage] SET error: ",o)}},lt="builderVisitorId",Ze=({canTrack:e})=>{if(!e)return;const t=Xe({key:lt,canTrack:e});if(S(t))return t;{const n=tn();return en({id:n,canTrack:e}),n}},tn=()=>it(),en=({id:e,canTrack:t})=>Ye({key:lt,value:e,canTrack:t}),nn=()=>{if(p()){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},rn=()=>typeof navigator=="object"&&navigator.userAgent||"",on=()=>{const e=rn(),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()||C==="reactNative"}},n=e.match(/Tablet|iPad/i),r=nn();return{urlPath:r==null?void 0:r.pathname,host:(r==null?void 0:r.host)||(r==null?void 0:r.hostname),device:n?"tablet":t.any()?"mobile":"desktop"}},sn=async({canTrack:e})=>{if(!e)return{visitorId:void 0,sessionId:void 0};const t=await He({canTrack:e}),n=Ze({canTrack:e});return{sessionId:t,visitorId:n}},an=async({type:e,canTrack:t,apiKey:n,metadata:r,...o})=>({type:e,data:{...o,metadata:{url:location.href,...r},...await sn({canTrack:t}),userAttributes:on(),ownerId:n}});async function ut(e){if(!e.apiKey){v.error("Missing API key for track call. Please provide your API key.");return}if(!!e.canTrack&&!x()&&!!(p()||C==="reactNative"))return fetch("https://builder.io/api/v1/track",{method:"POST",body:JSON.stringify({events:[await an(e)]}),headers:{"content-type":"application/json"},mode:"cors"}).catch(t=>{console.error("Failed to track: ",t)})}const cn=e=>ut({...e,canTrack:!0});exports.BuilderContext=I;exports.Button=ht;exports.Columns=Ct;exports.Fragment=It;exports.Image=jt;exports.Section=Ht;exports.Symbol=ge;exports.TARGET=C;exports.Text=xe;exports.Video=Re;exports._track=ut;exports.checkIsDefined=S;exports.components=We;exports.createRegisterComponentMessage=Le;exports.fastClone=R;exports.fetch=J;exports.getAllContent=nt;exports.getBuilderSearchParams=Q;exports.getContent=tt;exports.getMaxWidthQueryForSize=bt;exports.getRenderContentScriptString=Ae;exports.getSizesForBreakpoints=U;exports.isBrowser=p;exports.isEditing=x;exports.isPreviewing=Ue;exports.logger=v;exports.normalizeComponent=b;exports.processContentResult=et;exports.register=Ge;exports.renderBlocks=W;exports.renderBlocks$1=L;exports.renderContentVariants=Me;exports.serializeFn=st;exports.setEditorSettings=qe;exports.track=cn;