@builder.io/sdk-react-nextjs 0.17.0 → 0.17.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 (113) hide show
  1. package/lib/browser/blocks/image/component-info.cjs +1 -1
  2. package/lib/browser/blocks/image/component-info.mjs +4 -3
  3. package/lib/browser/blocks/image/image.cjs +4 -4
  4. package/lib/browser/blocks/image/image.mjs +20 -20
  5. package/lib/browser/blocks/img/component-info.cjs +1 -1
  6. package/lib/browser/blocks/img/component-info.mjs +4 -3
  7. package/lib/browser/blocks/video/component-info.cjs +1 -1
  8. package/lib/browser/blocks/video/component-info.mjs +5 -4
  9. package/lib/browser/components/block/block.cjs +1 -1
  10. package/lib/browser/components/block/block.helpers.cjs +3 -3
  11. package/lib/browser/components/block/block.helpers.mjs +57 -54
  12. package/lib/browser/components/block/block.mjs +28 -26
  13. package/lib/browser/components/content/components/enable-editor.cjs +1 -1
  14. package/lib/browser/components/content/components/enable-editor.helpers.cjs +1 -0
  15. package/lib/browser/components/content/components/enable-editor.helpers.mjs +8 -0
  16. package/lib/browser/components/content/components/enable-editor.mjs +139 -133
  17. package/lib/browser/components/content/content.cjs +1 -1
  18. package/lib/browser/components/content/content.mjs +57 -56
  19. package/lib/browser/constants/file-types.cjs +1 -0
  20. package/lib/browser/constants/file-types.mjs +5 -0
  21. package/lib/browser/constants/sdk-version.cjs +1 -1
  22. package/lib/browser/constants/sdk-version.mjs +1 -1
  23. package/lib/browser/context/builder.context.cjs +1 -1
  24. package/lib/browser/context/builder.context.mjs +2 -1
  25. package/lib/browser/functions/extract-localized-values.cjs +1 -0
  26. package/lib/browser/functions/extract-localized-values.mjs +28 -0
  27. package/lib/browser/functions/get-processed-block.cjs +1 -1
  28. package/lib/browser/functions/get-processed-block.mjs +46 -45
  29. package/lib/browser/functions/register-component.cjs +1 -1
  30. package/lib/browser/functions/register-component.mjs +7 -7
  31. package/lib/browser/functions/traverse.cjs +1 -0
  32. package/lib/browser/functions/traverse.mjs +20 -0
  33. package/lib/edge/blocks/image/component-info.cjs +1 -1
  34. package/lib/edge/blocks/image/component-info.mjs +4 -3
  35. package/lib/edge/blocks/image/image.cjs +4 -4
  36. package/lib/edge/blocks/image/image.mjs +20 -20
  37. package/lib/edge/blocks/img/component-info.cjs +1 -1
  38. package/lib/edge/blocks/img/component-info.mjs +4 -3
  39. package/lib/edge/blocks/video/component-info.cjs +1 -1
  40. package/lib/edge/blocks/video/component-info.mjs +5 -4
  41. package/lib/edge/components/block/block.cjs +1 -1
  42. package/lib/edge/components/block/block.helpers.cjs +3 -3
  43. package/lib/edge/components/block/block.helpers.mjs +57 -54
  44. package/lib/edge/components/block/block.mjs +28 -26
  45. package/lib/edge/components/content/components/enable-editor.cjs +1 -1
  46. package/lib/edge/components/content/components/enable-editor.helpers.cjs +1 -0
  47. package/lib/edge/components/content/components/enable-editor.helpers.mjs +8 -0
  48. package/lib/edge/components/content/components/enable-editor.mjs +139 -133
  49. package/lib/edge/components/content/content.cjs +1 -1
  50. package/lib/edge/components/content/content.mjs +57 -56
  51. package/lib/edge/constants/file-types.cjs +1 -0
  52. package/lib/edge/constants/file-types.mjs +5 -0
  53. package/lib/edge/constants/sdk-version.cjs +1 -1
  54. package/lib/edge/constants/sdk-version.mjs +1 -1
  55. package/lib/edge/context/builder.context.cjs +1 -1
  56. package/lib/edge/context/builder.context.mjs +2 -1
  57. package/lib/edge/functions/extract-localized-values.cjs +1 -0
  58. package/lib/edge/functions/extract-localized-values.mjs +28 -0
  59. package/lib/edge/functions/get-processed-block.cjs +1 -1
  60. package/lib/edge/functions/get-processed-block.mjs +46 -45
  61. package/lib/edge/functions/register-component.cjs +1 -1
  62. package/lib/edge/functions/register-component.mjs +7 -7
  63. package/lib/edge/functions/traverse.cjs +1 -0
  64. package/lib/edge/functions/traverse.mjs +20 -0
  65. package/lib/node/blocks/image/component-info.cjs +1 -1
  66. package/lib/node/blocks/image/component-info.mjs +4 -3
  67. package/lib/node/blocks/image/image.cjs +4 -4
  68. package/lib/node/blocks/image/image.mjs +20 -20
  69. package/lib/node/blocks/img/component-info.cjs +1 -1
  70. package/lib/node/blocks/img/component-info.mjs +4 -3
  71. package/lib/node/blocks/video/component-info.cjs +1 -1
  72. package/lib/node/blocks/video/component-info.mjs +5 -4
  73. package/lib/node/components/block/block.cjs +1 -1
  74. package/lib/node/components/block/block.helpers.cjs +3 -3
  75. package/lib/node/components/block/block.helpers.mjs +57 -54
  76. package/lib/node/components/block/block.mjs +28 -26
  77. package/lib/node/components/content/components/enable-editor.cjs +1 -1
  78. package/lib/node/components/content/components/enable-editor.helpers.cjs +1 -0
  79. package/lib/node/components/content/components/enable-editor.helpers.mjs +8 -0
  80. package/lib/node/components/content/components/enable-editor.mjs +139 -133
  81. package/lib/node/components/content/content.cjs +1 -1
  82. package/lib/node/components/content/content.mjs +57 -56
  83. package/lib/node/constants/file-types.cjs +1 -0
  84. package/lib/node/constants/file-types.mjs +5 -0
  85. package/lib/node/constants/sdk-version.cjs +1 -1
  86. package/lib/node/constants/sdk-version.mjs +1 -1
  87. package/lib/node/context/builder.context.cjs +1 -1
  88. package/lib/node/context/builder.context.mjs +2 -1
  89. package/lib/node/functions/extract-localized-values.cjs +1 -0
  90. package/lib/node/functions/extract-localized-values.mjs +28 -0
  91. package/lib/node/functions/get-processed-block.cjs +1 -1
  92. package/lib/node/functions/get-processed-block.mjs +46 -45
  93. package/lib/node/functions/register-component.cjs +1 -1
  94. package/lib/node/functions/register-component.mjs +7 -7
  95. package/lib/node/functions/traverse.cjs +1 -0
  96. package/lib/node/functions/traverse.mjs +20 -0
  97. package/package.json +1 -1
  98. package/types/cjs/components/block/block.helpers.d.ts +6 -3
  99. package/types/cjs/components/content/components/enable-editor.helpers.d.ts +11 -0
  100. package/types/cjs/constants/file-types.d.ts +2 -0
  101. package/types/cjs/constants/sdk-version.d.ts +1 -1
  102. package/types/cjs/context/types.d.ts +1 -0
  103. package/types/cjs/functions/extract-localized-values.d.ts +2 -0
  104. package/types/cjs/functions/traverse.d.ts +34 -0
  105. package/types/cjs/types/components.d.ts +3 -0
  106. package/types/esm/components/block/block.helpers.d.ts +6 -3
  107. package/types/esm/components/content/components/enable-editor.helpers.d.ts +11 -0
  108. package/types/esm/constants/file-types.d.ts +2 -0
  109. package/types/esm/constants/sdk-version.d.ts +1 -1
  110. package/types/esm/context/types.d.ts +1 -0
  111. package/types/esm/functions/extract-localized-values.d.ts +2 -0
  112. package/types/esm/functions/traverse.d.ts +34 -0
  113. package/types/esm/types/components.d.ts +3 -0
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const p={name:"Image",static:!0,image:"https://firebasestorage.googleapis.com/v0/b/builder-3b0a2.appspot.com/o/images%2Fbaseline-insert_photo-24px.svg?alt=media&token=4e5d0ef4-f5e8-4e57-b3a9-38d63a9b9dc4",defaultStyles:{position:"relative",minHeight:"20px",minWidth:"20px",overflow:"hidden"},canHaveChildren:!0,inputs:[{name:"image",type:"file",bubble:!0,allowedFileTypes:["jpeg","jpg","png","svg","webp"],required:!0,defaultValue:"https://cdn.builder.io/api/v1/image/assets%2FYJIGb4i01jvw0SRdL5Bt%2F72c80f114dc149019051b6852a9e3b7a",onChange:t=>{t.delete("srcset"),t.delete("noWebp");function s(e,o=6e4){return new Promise((u,n)=>{const i=document.createElement("img");let l=!1;i.onload=()=>{l=!0,u(i)},i.addEventListener("error",d=>{console.warn("Image load failed",d.error),n(d.error)}),i.src=e,setTimeout(()=>{l||n(new Error("Image load timed out"))},o)})}function h(e){return Math.round(e*1e3)/1e3}const a=t.get("image"),r=t.get("aspectRatio");if(fetch(a).then(e=>e.blob()).then(e=>{e.type.includes("svg")&&t.set("noWebp",!0)}),a&&(!r||r===.7041))return s(a).then(e=>{const o=t.get("aspectRatio");t.get("image")===a&&(!o||o===.7041)&&e.width&&e.height&&(t.set("aspectRatio",h(e.height/e.width)),t.set("height",e.height),t.set("width",e.width))})}},{name:"backgroundSize",type:"text",defaultValue:"cover",enum:[{label:"contain",value:"contain",helperText:"The image should never get cropped"},{label:"cover",value:"cover",helperText:"The image should fill it's box, cropping when needed"}]},{name:"backgroundPosition",type:"text",defaultValue:"center",enum:["center","top","left","right","bottom","top left","top right","bottom left","bottom right"]},{name:"altText",type:"string",helperText:"Text to display when the user has images off"},{name:"height",type:"number",hideFromUI:!0},{name:"width",type:"number",hideFromUI:!0},{name:"sizes",type:"string",hideFromUI:!0},{name:"srcset",type:"string",hideFromUI:!0},{name:"lazy",type:"boolean",defaultValue:!0,hideFromUI:!0},{name:"fitContent",type:"boolean",helperText:"When child blocks are provided, fit to them instead of using the image's aspect ratio",defaultValue:!0},{name:"highPriority",type:"boolean",advanced:!0,helperText:"Mark this image as high priority compared to other images on the page. This prevents lazy loading of the image and tells the browser to load this image before others on the page."},{name:"aspectRatio",type:"number",helperText:"This is the ratio of height/width, e.g. set to 1.5 for a 300px wide and 200px tall photo. Set to 0 to not force the image to maintain it's aspect ratio",advanced:!0,defaultValue:.7041}],shouldReceiveBuilderProps:{builderBlock:!0}};exports.componentInfo=p;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const m=require("../../constants/file-types.cjs"),p={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:m.IMAGE_FILE_TYPES,required:!0,defaultValue:"https://cdn.builder.io/api/v1/image/assets%2FYJIGb4i01jvw0SRdL5Bt%2F72c80f114dc149019051b6852a9e3b7a",onChange:t=>{t.delete("srcset"),t.delete("noWebp");function s(e,o=6e4){return new Promise((u,n)=>{const i=document.createElement("img");let l=!1;i.onload=()=>{l=!0,u(i)},i.addEventListener("error",d=>{console.warn("Image load failed",d.error),n(d.error)}),i.src=e,setTimeout(()=>{l||n(new Error("Image load timed out"))},o)})}function h(e){return Math.round(e*1e3)/1e3}const a=t.get("image"),r=t.get("aspectRatio");if(fetch(a).then(e=>e.blob()).then(e=>{e.type.includes("svg")&&t.set("noWebp",!0)}),a&&(!r||r===.7041))return s(a).then(e=>{const o=t.get("aspectRatio");t.get("image")===a&&(!o||o===.7041)&&e.width&&e.height&&(t.set("aspectRatio",h(e.height/e.width)),t.set("height",e.height),t.set("width",e.width))})}},{name:"backgroundSize",type:"text",defaultValue:"cover",enum:[{label:"contain",value:"contain",helperText:"The image should never get cropped"},{label:"cover",value:"cover",helperText:"The image should fill it's box, cropping when needed"}]},{name:"backgroundPosition",type:"text",defaultValue:"center",enum:["center","top","left","right","bottom","top left","top right","bottom left","bottom right"]},{name:"altText",type:"string",helperText:"Text to display when the user has images off"},{name:"height",type:"number",hideFromUI:!0},{name:"width",type:"number",hideFromUI:!0},{name:"sizes",type:"string",hideFromUI:!0},{name:"srcset",type:"string",hideFromUI:!0},{name:"lazy",type:"boolean",defaultValue:!0,hideFromUI:!0},{name:"fitContent",type:"boolean",helperText:"When child blocks are provided, fit to them instead of using the image's aspect ratio",defaultValue:!0},{name:"highPriority",type:"boolean",advanced:!0,helperText:"Mark this image as high priority compared to other images on the page. This prevents lazy loading of the image and tells the browser to load this image before others on the page."},{name:"aspectRatio",type:"number",helperText:"This is the ratio of height/width, e.g. set to 1.5 for a 300px wide and 200px tall photo. Set to 0 to not force the image to maintain it's aspect ratio",advanced:!0,defaultValue:.7041}],shouldReceiveBuilderProps:{builderBlock:!0}};exports.componentInfo=p;
@@ -1,4 +1,5 @@
1
- const m = {
1
+ import { IMAGE_FILE_TYPES as m } from "../../constants/file-types.mjs";
2
+ const g = {
2
3
  name: "Image",
3
4
  static: !0,
4
5
  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",
@@ -13,7 +14,7 @@ const m = {
13
14
  name: "image",
14
15
  type: "file",
15
16
  bubble: !0,
16
- allowedFileTypes: ["jpeg", "jpg", "png", "svg", "webp"],
17
+ allowedFileTypes: m,
17
18
  required: !0,
18
19
  defaultValue: "https://cdn.builder.io/api/v1/image/assets%2FYJIGb4i01jvw0SRdL5Bt%2F72c80f114dc149019051b6852a9e3b7a",
19
20
  onChange: (t) => {
@@ -108,5 +109,5 @@ const m = {
108
109
  }
109
110
  };
110
111
  export {
111
- m as componentInfo
112
+ g as componentInfo
112
113
  };
@@ -1,11 +1,11 @@
1
- "use client";"use strict";const t=require("react/jsx-runtime"),b=require("react"),c=require("./image.helpers.cjs");function f(e){var s,r,u,o,d,g;function n(){var h;const i=e.image||e.src;if(!i||!(i.match(/builder\.io/)||i.match(/cdn\.shopify\.com/)))return e.srcset;if(!e.noWebp){if(e.srcset&&((h=e.image)!=null&&h.includes("builder.io/api/v1/image"))){if(!e.srcset.includes(e.image.split("?")[0]))return console.debug("Removed given srcset"),c.getSrcSet(i)}else if(e.image&&!e.srcset)return c.getSrcSet(i);return c.getSrcSet(i)}}function l(){var a;return(a=n==null?void 0:n())!=null&&a.match(/builder\.io/)&&!e.noWebp?n().replace(/\?/g,"?format=webp&"):""}function m(){const a={position:"absolute",height:"100%",width:"100%",left:"0px",top:"0px"};return e.aspectRatio?a:void 0}return b.useEffect(()=>{},[]),t.jsxs(t.Fragment,{children:[t.jsxs(t.Fragment,{children:[t.jsxs("picture",{children:[l()?t.jsx("source",{type:"image/webp",srcSet:l()}):null,t.jsx("img",{loading:e.highPriority?"eager":"lazy",fetchPriority:e.highPriority?"high":"auto",alt:e.altText,role:e.altText?void 0:"presentation",style:{objectPosition:e.backgroundPosition||"center",objectFit:e.backgroundSize||"cover",...m()},className:"builder-image"+(e.className?" "+e.className:"")+" img-7a292ab8",src:e.image,srcSet:n(),sizes:e.sizes})]}),e.aspectRatio&&!((r=(s=e.builderBlock)==null?void 0:s.children)!=null&&r.length&&e.fitContent)?t.jsx("div",{className:"builder-image-sizer div-7a292ab8",style:{paddingTop:e.aspectRatio*100+"%"}}):null,(o=(u=e.builderBlock)==null?void 0:u.children)!=null&&o.length&&e.fitContent?t.jsx(t.Fragment,{children:e.children}):null,!e.fitContent&&((g=(d=e.builderBlock)==null?void 0:d.children)!=null&&g.length)?t.jsx("div",{className:"div-7a292ab8-2",children:e.children}):null]}),t.jsx("style",{children:`.img-7a292ab8 {
1
+ "use client";"use strict";const t=require("react/jsx-runtime"),m=require("react"),l=require("./image.helpers.cjs");function b(e){var s,r,u,o,d,g;function n(){var f;const i=e.image||e.src;if(!i||!(typeof i=="string"&&(i.match(/builder\.io/)||i.match(/cdn\.shopify\.com/))))return e.srcset;if(!e.noWebp){if(e.srcset&&((f=e.image)!=null&&f.includes("builder.io/api/v1/image"))){if(!e.srcset.includes(e.image.split("?")[0]))return console.debug("Removed given srcset"),l.getSrcSet(i)}else if(e.image&&!e.srcset)return l.getSrcSet(i);return l.getSrcSet(i)}}function a(){var c;return(c=n==null?void 0:n())!=null&&c.match(/builder\.io/)&&!e.noWebp?n().replace(/\?/g,"?format=webp&"):""}function h(){const c={position:"absolute",height:"100%",width:"100%",left:"0px",top:"0px"};return e.aspectRatio?c:void 0}return m.useEffect(()=>{},[]),t.jsxs(t.Fragment,{children:[t.jsxs(t.Fragment,{children:[t.jsxs("picture",{children:[a()?t.jsx("source",{type:"image/webp",srcSet:a()}):null,t.jsx("img",{loading:e.highPriority?"eager":"lazy",fetchPriority:e.highPriority?"high":"auto",alt:e.altText,role:e.altText?void 0:"presentation",style:{objectPosition:e.backgroundPosition||"center",objectFit:e.backgroundSize||"cover",...h()},className:"builder-image"+(e.className?" "+e.className:"")+" img-c071ff08",src:e.image,srcSet:n(),sizes:e.sizes})]}),e.aspectRatio&&!((r=(s=e.builderBlock)==null?void 0:s.children)!=null&&r.length&&e.fitContent)?t.jsx("div",{className:"builder-image-sizer div-c071ff08",style:{paddingTop:e.aspectRatio*100+"%"}}):null,(o=(u=e.builderBlock)==null?void 0:u.children)!=null&&o.length&&e.fitContent?t.jsx(t.Fragment,{children:e.children}):null,!e.fitContent&&((g=(d=e.builderBlock)==null?void 0:d.children)!=null&&g.length)?t.jsx("div",{className:"div-c071ff08-2",children:e.children}):null]}),t.jsx("style",{children:`.img-c071ff08 {
2
2
  opacity: 1;
3
3
  transition: opacity 0.2s ease-in-out;
4
- }.div-7a292ab8 {
4
+ }.div-c071ff08 {
5
5
  width: 100%;
6
6
  pointer-events: none;
7
7
  font-size: 0;
8
- }.div-7a292ab8-2 {
8
+ }.div-c071ff08-2 {
9
9
  display: flex;
10
10
  flex-direction: column;
11
11
  align-items: stretch;
@@ -14,4 +14,4 @@
14
14
  left: 0;
15
15
  width: 100%;
16
16
  height: 100%;
17
- }`})]})}module.exports=f;
17
+ }`})]})}module.exports=b;
@@ -1,18 +1,18 @@
1
1
  "use client";
2
- import { jsxs as c, Fragment as l, jsx as t } from "react/jsx-runtime";
2
+ import { jsxs as l, Fragment as a, jsx as t } from "react/jsx-runtime";
3
3
  import { useEffect as v } from "react";
4
4
  import { getSrcSet as o } from "./image.helpers.mjs";
5
5
  function w(e) {
6
- var d, u, s, m, g, h;
6
+ var d, s, u, f, g, m;
7
7
  function n() {
8
- var f;
8
+ var h;
9
9
  const i = e.image || e.src;
10
10
  if (!i || // We can auto add srcset for cdn.builder.io and shopify
11
11
  // images, otherwise you can supply this prop manually
12
- !(i.match(/builder\.io/) || i.match(/cdn\.shopify\.com/)))
12
+ !(typeof i == "string" && (i.match(/builder\.io/) || i.match(/cdn\.shopify\.com/))))
13
13
  return e.srcset;
14
14
  if (!e.noWebp) {
15
- if (e.srcset && ((f = e.image) != null && f.includes("builder.io/api/v1/image"))) {
15
+ if (e.srcset && ((h = e.image) != null && h.includes("builder.io/api/v1/image"))) {
16
16
  if (!e.srcset.includes(e.image.split("?")[0]))
17
17
  return console.debug("Removed given srcset"), o(i);
18
18
  } else if (e.image && !e.srcset)
@@ -21,23 +21,23 @@ function w(e) {
21
21
  }
22
22
  }
23
23
  function r() {
24
- var a;
25
- return (a = n == null ? void 0 : n()) != null && a.match(/builder\.io/) && !e.noWebp ? n().replace(/\?/g, "?format=webp&") : "";
24
+ var c;
25
+ return (c = n == null ? void 0 : n()) != null && c.match(/builder\.io/) && !e.noWebp ? n().replace(/\?/g, "?format=webp&") : "";
26
26
  }
27
27
  function b() {
28
- const a = {
28
+ const c = {
29
29
  position: "absolute",
30
30
  height: "100%",
31
31
  width: "100%",
32
32
  left: "0px",
33
33
  top: "0px"
34
34
  };
35
- return e.aspectRatio ? a : void 0;
35
+ return e.aspectRatio ? c : void 0;
36
36
  }
37
37
  return v(() => {
38
- }, []), /* @__PURE__ */ c(l, { children: [
39
- /* @__PURE__ */ c(l, { children: [
40
- /* @__PURE__ */ c("picture", { children: [
38
+ }, []), /* @__PURE__ */ l(a, { children: [
39
+ /* @__PURE__ */ l(a, { children: [
40
+ /* @__PURE__ */ l("picture", { children: [
41
41
  r() ? /* @__PURE__ */ t("source", { type: "image/webp", srcSet: r() }) : null,
42
42
  /* @__PURE__ */ t(
43
43
  "img",
@@ -51,33 +51,33 @@ function w(e) {
51
51
  objectFit: e.backgroundSize || "cover",
52
52
  ...b()
53
53
  },
54
- className: "builder-image" + (e.className ? " " + e.className : "") + " img-7a292ab8",
54
+ className: "builder-image" + (e.className ? " " + e.className : "") + " img-c071ff08",
55
55
  src: e.image,
56
56
  srcSet: n(),
57
57
  sizes: e.sizes
58
58
  }
59
59
  )
60
60
  ] }),
61
- e.aspectRatio && !((u = (d = e.builderBlock) == null ? void 0 : d.children) != null && u.length && e.fitContent) ? /* @__PURE__ */ t(
61
+ e.aspectRatio && !((s = (d = e.builderBlock) == null ? void 0 : d.children) != null && s.length && e.fitContent) ? /* @__PURE__ */ t(
62
62
  "div",
63
63
  {
64
- className: "builder-image-sizer div-7a292ab8",
64
+ className: "builder-image-sizer div-c071ff08",
65
65
  style: {
66
66
  paddingTop: e.aspectRatio * 100 + "%"
67
67
  }
68
68
  }
69
69
  ) : null,
70
- (m = (s = e.builderBlock) == null ? void 0 : s.children) != null && m.length && e.fitContent ? /* @__PURE__ */ t(l, { children: e.children }) : null,
71
- !e.fitContent && ((h = (g = e.builderBlock) == null ? void 0 : g.children) != null && h.length) ? /* @__PURE__ */ t("div", { className: "div-7a292ab8-2", children: e.children }) : null
70
+ (f = (u = e.builderBlock) == null ? void 0 : u.children) != null && f.length && e.fitContent ? /* @__PURE__ */ t(a, { children: e.children }) : null,
71
+ !e.fitContent && ((m = (g = e.builderBlock) == null ? void 0 : g.children) != null && m.length) ? /* @__PURE__ */ t("div", { className: "div-c071ff08-2", children: e.children }) : null
72
72
  ] }),
73
- /* @__PURE__ */ t("style", { children: `.img-7a292ab8 {
73
+ /* @__PURE__ */ t("style", { children: `.img-c071ff08 {
74
74
  opacity: 1;
75
75
  transition: opacity 0.2s ease-in-out;
76
- }.div-7a292ab8 {
76
+ }.div-c071ff08 {
77
77
  width: 100%;
78
78
  pointer-events: none;
79
79
  font-size: 0;
80
- }.div-7a292ab8-2 {
80
+ }.div-c071ff08-2 {
81
81
  display: flex;
82
82
  flex-direction: column;
83
83
  align-items: stretch;
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e={name:"Raw:Img",hideFromInsertMenu:!0,image:"https://firebasestorage.googleapis.com/v0/b/builder-3b0a2.appspot.com/o/images%2Fbaseline-insert_photo-24px.svg?alt=media&token=4e5d0ef4-f5e8-4e57-b3a9-38d63a9b9dc4",inputs:[{name:"image",bubble:!0,type:"file",allowedFileTypes:["jpeg","jpg","png","svg","gif","webp"],required:!0}],noWrap:!0,static:!0};exports.componentInfo=e;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("../../constants/file-types.cjs"),t={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:e.IMAGE_FILE_TYPES,required:!0}],noWrap:!0,static:!0};exports.componentInfo=t;
@@ -1,4 +1,5 @@
1
- const e = {
1
+ import { IMAGE_FILE_TYPES as e } from "../../constants/file-types.mjs";
2
+ const o = {
2
3
  // friendlyName?
3
4
  name: "Raw:Img",
4
5
  hideFromInsertMenu: !0,
@@ -7,12 +8,12 @@ const e = {
7
8
  name: "image",
8
9
  bubble: !0,
9
10
  type: "file",
10
- allowedFileTypes: ["jpeg", "jpg", "png", "svg", "gif", "webp"],
11
+ allowedFileTypes: e,
11
12
  required: !0
12
13
  }],
13
14
  noWrap: !0,
14
15
  static: !0
15
16
  };
16
17
  export {
17
- e as componentInfo
18
+ o as componentInfo
18
19
  };
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e={name:"Video",canHaveChildren:!0,defaultStyles:{minHeight:"20px",minWidth:"20px"},image:"https://firebasestorage.googleapis.com/v0/b/builder-3b0a2.appspot.com/o/images%2Fbaseline-videocam-24px%20(1).svg?alt=media&token=49a84e4a-b20e-4977-a650-047f986874bb",inputs:[{name:"video",type:"file",allowedFileTypes:["mp4"],bubble:!0,defaultValue:"https://cdn.builder.io/o/assets%2FYJIGb4i01jvw0SRdL5Bt%2Fd27731a526464deba0016216f5f9e570%2Fcompressed?apiKey=YJIGb4i01jvw0SRdL5Bt&token=d27731a526464deba0016216f5f9e570&alt=media&optimized=true",required:!0},{name:"posterImage",type:"file",allowedFileTypes:["jpeg","png"],helperText:"Image to show before the video plays"},{name:"autoPlay",type:"boolean",defaultValue:!0},{name:"controls",type:"boolean",defaultValue:!1},{name:"muted",type:"boolean",defaultValue:!0},{name:"loop",type:"boolean",defaultValue:!0},{name:"playsInline",type:"boolean",defaultValue:!0},{name:"fit",type:"text",defaultValue:"cover",enum:["contain","cover","fill","auto"]},{name:"preload",type:"text",defaultValue:"metadata",enum:["auto","metadata","none"]},{name:"fitContent",type:"boolean",helperText:"When child blocks are provided, fit to them instead of using the aspect ratio",defaultValue:!0,advanced:!0},{name:"position",type:"text",defaultValue:"center",enum:["center","top","left","right","bottom","top left","top right","bottom left","bottom right"]},{name:"height",type:"number",advanced:!0},{name:"width",type:"number",advanced:!0},{name:"aspectRatio",type:"number",advanced:!0,defaultValue:.7004048582995948},{name:"lazyLoad",type:"boolean",helperText:'Load this video "lazily" - as in only when a user scrolls near the video. Recommended for optmized performance and bandwidth consumption',defaultValue:!0,advanced:!0}],shouldReceiveBuilderProps:{builderBlock:!0}};exports.componentInfo=e;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("../../constants/file-types.cjs"),t={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:e.VIDEO_FILE_TYPES,bubble:!0,defaultValue:"https://cdn.builder.io/o/assets%2FYJIGb4i01jvw0SRdL5Bt%2Fd27731a526464deba0016216f5f9e570%2Fcompressed?apiKey=YJIGb4i01jvw0SRdL5Bt&token=d27731a526464deba0016216f5f9e570&alt=media&optimized=true",required:!0},{name:"posterImage",type:"file",allowedFileTypes:e.IMAGE_FILE_TYPES,helperText:"Image to show before the video plays"},{name:"autoPlay",type:"boolean",defaultValue:!0},{name:"controls",type:"boolean",defaultValue:!1},{name:"muted",type:"boolean",defaultValue:!0},{name:"loop",type:"boolean",defaultValue:!0},{name:"playsInline",type:"boolean",defaultValue:!0},{name:"fit",type:"text",defaultValue:"cover",enum:["contain","cover","fill","auto"]},{name:"preload",type:"text",defaultValue:"metadata",enum:["auto","metadata","none"]},{name:"fitContent",type:"boolean",helperText:"When child blocks are provided, fit to them instead of using the aspect ratio",defaultValue:!0,advanced:!0},{name:"position",type:"text",defaultValue:"center",enum:["center","top","left","right","bottom","top left","top right","bottom left","bottom right"]},{name:"height",type:"number",advanced:!0},{name:"width",type:"number",advanced:!0},{name:"aspectRatio",type:"number",advanced:!0,defaultValue:.7004048582995948},{name:"lazyLoad",type:"boolean",helperText:'Load this video "lazily" - as in only when a user scrolls near the video. Recommended for optmized performance and bandwidth consumption',defaultValue:!0,advanced:!0}],shouldReceiveBuilderProps:{builderBlock:!0}};exports.componentInfo=t;
@@ -1,4 +1,5 @@
1
- const e = {
1
+ import { VIDEO_FILE_TYPES as e, IMAGE_FILE_TYPES as t } from "../../constants/file-types.mjs";
2
+ const o = {
2
3
  name: "Video",
3
4
  canHaveChildren: !0,
4
5
  defaultStyles: {
@@ -9,14 +10,14 @@ const e = {
9
10
  inputs: [{
10
11
  name: "video",
11
12
  type: "file",
12
- allowedFileTypes: ["mp4"],
13
+ allowedFileTypes: e,
13
14
  bubble: !0,
14
15
  defaultValue: "https://cdn.builder.io/o/assets%2FYJIGb4i01jvw0SRdL5Bt%2Fd27731a526464deba0016216f5f9e570%2Fcompressed?apiKey=YJIGb4i01jvw0SRdL5Bt&token=d27731a526464deba0016216f5f9e570&alt=media&optimized=true",
15
16
  required: !0
16
17
  }, {
17
18
  name: "posterImage",
18
19
  type: "file",
19
- allowedFileTypes: ["jpeg", "png"],
20
+ allowedFileTypes: t,
20
21
  helperText: "Image to show before the video plays"
21
22
  }, {
22
23
  name: "autoPlay",
@@ -84,5 +85,5 @@ const e = {
84
85
  }
85
86
  };
86
87
  export {
87
- e as componentInfo
88
+ o as componentInfo
88
89
  };
@@ -1 +1 @@
1
- "use strict";const t=require("react/jsx-runtime"),R=require("../../constants/target.cjs"),S=require("../../functions/get-block-component-options.cjs"),j=require("../../functions/get-processed-block.cjs"),P=require("../../functions/is-previewing.cjs");require("../../functions/get-fetch.cjs");const u=require("./block.helpers.cjs"),q=require("./components/block-styles.cjs"),O=require("./components/block-wrapper.cjs"),h=require("./components/component-ref/component-ref.cjs"),g=require("./components/repeated-block.cjs");function b(e){var a,C,p,x;const d=function(){return u.getRepeatItemData({block:e.block,context:e.context})},k={value:null,update:!1},c=function(){var i;if(k.value&&!k.update&&!P.isPreviewing())return k.value;const r=(i=e.block.repeat)!=null&&i.collection?e.block:j.getProcessedBlock({block:e.block,localState:e.context.localState,rootState:e.context.rootState,rootSetState:e.context.rootSetState,context:e.context.context,shouldEvaluateBindings:!0});return k.value=r,k.update=!1,r},l=function(){return u.getComponent({block:c(),registeredComponents:e.registeredComponents})},f=function(){var i;return e.block.tagName==="a"||((i=c().properties)==null?void 0:i.href)||c().href?e.linkComponent||"a":e.block.tagName||"div"},B=function(){var s,m;if((s=e.block.repeat)!=null&&s.collection)return!!((m=d())!=null&&m.length);const r="hide"in c()?c().hide:!1;return("show"in c()?c().show:!0)&&!r},v=function(){var i,s;return!((i=l())!=null&&i.component)&&!d()?(s=c().children)!=null?s:[]:[]},n=function(){var r,i,s,m;return{blockChildren:(r=c().children)!=null?r:[],componentRef:(i=l())==null?void 0:i.component,componentOptions:{...S.getBlockComponentOptions(c()),...u.provideBuilderBlock(l(),c()),...u.provideBuilderContext(l(),e.context),...u.provideLinkComponent(l(),e.linkComponent),...u.provideRegisteredComponents(l(),e.registeredComponents)},context:e.context,linkComponent:e.linkComponent,registeredComponents:e.registeredComponents,builderBlock:c(),includeBlockProps:((s=l())==null?void 0:s.noWrap)===!0,isInteractive:!((m=l())!=null&&m.isRSC&&R.TARGET==="rsc")}};return t.jsx(t.Fragment,{children:B()?t.jsxs(t.Fragment,{children:[t.jsx(q,{block:c(),context:e.context}),(a=l())!=null&&a.noWrap?d()?t.jsx(t.Fragment,{children:(x=d())==null?void 0:x.map((o,r)=>t.jsx(g,{repeatContext:o.context,block:o.block,registeredComponents:e.registeredComponents,linkComponent:e.linkComponent},r))}):t.jsx(h,{componentRef:n().componentRef,componentOptions:n().componentOptions,blockChildren:n().blockChildren,context:n().context,registeredComponents:n().registeredComponents,linkComponent:n().linkComponent,builderBlock:n().builderBlock,includeBlockProps:n().includeBlockProps,isInteractive:n().isInteractive}):t.jsx(t.Fragment,{children:d()?t.jsx(t.Fragment,{children:(p=d())==null?void 0:p.map((o,r)=>t.jsx(g,{repeatContext:o.context,block:o.block,registeredComponents:e.registeredComponents,linkComponent:e.linkComponent},r))}):t.jsxs(O,{Wrapper:f(),block:c(),context:e.context,children:[t.jsx(h,{componentRef:n().componentRef,componentOptions:n().componentOptions,blockChildren:n().blockChildren,context:n().context,registeredComponents:n().registeredComponents,linkComponent:n().linkComponent,builderBlock:n().builderBlock,includeBlockProps:n().includeBlockProps,isInteractive:n().isInteractive}),(C=v())==null?void 0:C.map(o=>t.jsx(b,{block:o,registeredComponents:e.registeredComponents,linkComponent:e.linkComponent,context:e.context},o.id))]})})]}):null})}module.exports=b;
1
+ "use strict";const t=require("react/jsx-runtime"),R=require("../../constants/target.cjs"),S=require("../../functions/get-block-component-options.cjs"),j=require("../../functions/get-processed-block.cjs"),P=require("../../functions/is-previewing.cjs");require("../../functions/get-fetch.cjs");const u=require("./block.helpers.cjs"),q=require("./components/block-styles.cjs"),O=require("./components/block-wrapper.cjs"),p=require("./components/component-ref/component-ref.cjs"),g=require("./components/repeated-block.cjs");function b(e){var a,C,x,h;const d=function(){return u.getRepeatItemData({block:e.block,context:e.context})},m={value:null,update:!1},c=function(){var i;if(m.value&&!m.update&&!P.isPreviewing())return m.value;const r=(i=e.block.repeat)!=null&&i.collection?e.block:j.getProcessedBlock({block:e.block,localState:e.context.localState,rootState:e.context.rootState,rootSetState:e.context.rootSetState,context:e.context.context,shouldEvaluateBindings:!0});return m.value=r,m.update=!1,r},l=function(){return u.getComponent({block:c(),registeredComponents:e.registeredComponents,model:e.context.model})},f=function(){var i;return e.block.tagName==="a"||((i=c().properties)==null?void 0:i.href)||c().href?e.linkComponent||"a":e.block.tagName||"div"},B=function(){var s,k;if((s=e.block.repeat)!=null&&s.collection)return!!((k=d())!=null&&k.length);const r="hide"in c()?c().hide:!1;return("show"in c()?c().show:!0)&&!r},v=function(){var i,s;return!((i=l())!=null&&i.component)&&!d()?(s=c().children)!=null?s:[]:[]},n=function(){var r,i,s,k;return{blockChildren:(r=c().children)!=null?r:[],componentRef:(i=l())==null?void 0:i.component,componentOptions:{...S.getBlockComponentOptions(c()),...u.provideBuilderBlock(l(),c()),...u.provideBuilderContext(l(),e.context),...u.provideLinkComponent(l(),e.linkComponent),...u.provideRegisteredComponents(l(),e.registeredComponents,e.context.model)},context:e.context,linkComponent:e.linkComponent,registeredComponents:e.registeredComponents,builderBlock:c(),includeBlockProps:((s=l())==null?void 0:s.noWrap)===!0,isInteractive:!((k=l())!=null&&k.isRSC&&R.TARGET==="rsc")}};return t.jsx(t.Fragment,{children:B()?t.jsxs(t.Fragment,{children:[t.jsx(q,{block:c(),context:e.context}),(a=l())!=null&&a.noWrap?d()?t.jsx(t.Fragment,{children:(h=d())==null?void 0:h.map((o,r)=>t.jsx(g,{repeatContext:o.context,block:o.block,registeredComponents:e.registeredComponents,linkComponent:e.linkComponent},r))}):t.jsx(p,{componentRef:n().componentRef,componentOptions:n().componentOptions,blockChildren:n().blockChildren,context:n().context,registeredComponents:n().registeredComponents,linkComponent:n().linkComponent,builderBlock:n().builderBlock,includeBlockProps:n().includeBlockProps,isInteractive:n().isInteractive}):t.jsx(t.Fragment,{children:d()?t.jsx(t.Fragment,{children:(x=d())==null?void 0:x.map((o,r)=>t.jsx(g,{repeatContext:o.context,block:o.block,registeredComponents:e.registeredComponents,linkComponent:e.linkComponent},r))}):t.jsxs(O,{Wrapper:f(),block:c(),context:e.context,children:[t.jsx(p,{componentRef:n().componentRef,componentOptions:n().componentOptions,blockChildren:n().blockChildren,context:n().context,registeredComponents:n().registeredComponents,linkComponent:n().linkComponent,builderBlock:n().builderBlock,includeBlockProps:n().includeBlockProps,isInteractive:n().isInteractive}),(C=v())==null?void 0:C.map(o=>t.jsx(b,{block:o,registeredComponents:e.registeredComponents,linkComponent:e.linkComponent,context:e.context},o.id))]})})]}):null})}module.exports=b;
@@ -1,3 +1,3 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const s=require("../../functions/evaluate/evaluate.cjs"),l=({block:t,registeredComponents:r})=>{var o;const e=(o=t.component)==null?void 0:o.name;if(!e)return null;const n=r[e];if(n)return n;console.warn(`
2
- Could not find a registered component named "${e}".
3
- If you registered it, is the file that registered it imported by the file that needs to render it?`)},p=({block:t,context:r})=>{const{repeat:e,...n}=t;if(!(e!=null&&e.collection))return;const o=s.evaluate({code:e.collection,localState:r.localState,rootState:r.rootState,rootSetState:r.rootSetState,context:r.context});if(!Array.isArray(o))return;const i=e.collection.split(".").pop(),d=e.itemName||(i?i+"Item":"item");return o.map((u,a)=>({context:{...r,localState:{...r.localState,$index:a,$item:u,[d]:u,[`$${d}Index`]:a}},block:n}))},m=(t,r)=>{var e;return(e=t==null?void 0:t.shouldReceiveBuilderProps)!=null&&e.builderLinkComponent?{builderLinkComponent:r}:{}},c=(t,r)=>{var e;return(e=t==null?void 0:t.shouldReceiveBuilderProps)!=null&&e.builderComponents?{builderComponents:r}:{}},v=(t,r)=>{var e;return(e=t==null?void 0:t.shouldReceiveBuilderProps)!=null&&e.builderBlock?{builderBlock:r}:{}},C=(t,r)=>{var e;return(e=t==null?void 0:t.shouldReceiveBuilderProps)!=null&&e.builderContext?{builderContext:r}:{}};exports.getComponent=l;exports.getRepeatItemData=p;exports.provideBuilderBlock=v;exports.provideBuilderContext=C;exports.provideLinkComponent=m;exports.provideRegisteredComponents=c;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const a=require("../../functions/evaluate/evaluate.cjs"),l=(e,t)=>e?t?e.models&&e.models.length>0&&!e.models.includes(t):!1:!0,p=({block:e,registeredComponents:t,model:r})=>{var i;const o=(i=e.component)==null?void 0:i.name;if(!o)return null;const n=t[o];if(!n||l(n,r)){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?`);return}else return n},m=({block:e,context:t})=>{const{repeat:r,...o}=e;if(!(r!=null&&r.collection))return;const n=a.evaluate({code:r.collection,localState:t.localState,rootState:t.rootState,rootSetState:t.rootSetState,context:t.context});if(!Array.isArray(n))return;const i=r.collection.split(".").pop(),s=r.itemName||(i?i+"Item":"item");return n.map((d,u)=>({context:{...t,localState:{...t.localState,$index:u,$item:d,[s]:d,[`$${s}Index`]:u}},block:o}))},c=(e,t)=>{var r;return(r=e==null?void 0:e.shouldReceiveBuilderProps)!=null&&r.builderLinkComponent?{builderLinkComponent:t}:{}},f=(e,t,r)=>{var o;return(o=e==null?void 0:e.shouldReceiveBuilderProps)!=null&&o.builderComponents?{builderComponents:Object.fromEntries(Object.entries(t).filter(([i,s])=>!l(s,r)))}:{}},v=(e,t)=>{var r;return(r=e==null?void 0:e.shouldReceiveBuilderProps)!=null&&r.builderBlock?{builderBlock:t}:{}},C=(e,t)=>{var r;return(r=e==null?void 0:e.shouldReceiveBuilderProps)!=null&&r.builderContext?{builderContext:t}:{}};exports.getComponent=p;exports.getRepeatItemData=m;exports.provideBuilderBlock=v;exports.provideBuilderContext=C;exports.provideLinkComponent=c;exports.provideRegisteredComponents=f;
@@ -1,77 +1,80 @@
1
1
  import { evaluate as a } from "../../functions/evaluate/evaluate.mjs";
2
- const m = ({
3
- block: t,
4
- registeredComponents: r
2
+ const l = (e, t) => e ? t ? e.models && e.models.length > 0 && !e.models.includes(t) : !1 : !0, c = ({
3
+ block: e,
4
+ registeredComponents: t,
5
+ model: r
5
6
  }) => {
6
- var o;
7
- const e = (o = t.component) == null ? void 0 : o.name;
8
- if (!e)
7
+ var i;
8
+ const o = (i = e.component) == null ? void 0 : i.name;
9
+ if (!o)
9
10
  return null;
10
- const n = r[e];
11
- if (n)
12
- return n;
13
- console.warn(`
14
- Could not find a registered component named "${e}".
11
+ const n = t[o];
12
+ if (!n || l(n, r)) {
13
+ console.warn(`
14
+ Could not find a registered component named "${o}".
15
15
  If you registered it, is the file that registered it imported by the file that needs to render it?`);
16
- }, c = ({
17
- block: t,
18
- context: r
16
+ return;
17
+ } else
18
+ return n;
19
+ }, f = ({
20
+ block: e,
21
+ context: t
19
22
  }) => {
20
23
  const {
21
- repeat: e,
22
- ...n
23
- } = t;
24
- if (!(e != null && e.collection))
24
+ repeat: r,
25
+ ...o
26
+ } = e;
27
+ if (!(r != null && r.collection))
25
28
  return;
26
- const o = a({
27
- code: e.collection,
28
- localState: r.localState,
29
- rootState: r.rootState,
30
- rootSetState: r.rootSetState,
31
- context: r.context
29
+ const n = a({
30
+ code: r.collection,
31
+ localState: t.localState,
32
+ rootState: t.rootState,
33
+ rootSetState: t.rootSetState,
34
+ context: t.context
32
35
  });
33
- if (!Array.isArray(o))
36
+ if (!Array.isArray(n))
34
37
  return;
35
- const i = e.collection.split(".").pop(), d = e.itemName || (i ? i + "Item" : "item");
36
- return o.map((s, u) => ({
38
+ const i = r.collection.split(".").pop(), s = r.itemName || (i ? i + "Item" : "item");
39
+ return n.map((d, u) => ({
37
40
  context: {
38
- ...r,
41
+ ...t,
39
42
  localState: {
40
- ...r.localState,
43
+ ...t.localState,
41
44
  $index: u,
42
- $item: s,
43
- [d]: s,
44
- [`$${d}Index`]: u
45
+ $item: d,
46
+ [s]: d,
47
+ [`$${s}Index`]: u
45
48
  }
46
49
  },
47
- block: n
50
+ block: o
48
51
  }));
49
- }, f = (t, r) => {
50
- var e;
51
- return (e = t == null ? void 0 : t.shouldReceiveBuilderProps) != null && e.builderLinkComponent ? {
52
- builderLinkComponent: r
52
+ }, C = (e, t) => {
53
+ var r;
54
+ return (r = e == null ? void 0 : e.shouldReceiveBuilderProps) != null && r.builderLinkComponent ? {
55
+ builderLinkComponent: t
53
56
  } : {};
54
- }, v = (t, r) => {
55
- var e;
56
- return (e = t == null ? void 0 : t.shouldReceiveBuilderProps) != null && e.builderComponents ? {
57
- builderComponents: r
57
+ }, v = (e, t, r) => {
58
+ var o;
59
+ return (o = e == null ? void 0 : e.shouldReceiveBuilderProps) != null && o.builderComponents ? {
60
+ builderComponents: Object.fromEntries(Object.entries(t).filter(([i, s]) => !l(s, r)))
58
61
  } : {};
59
- }, C = (t, r) => {
60
- var e;
61
- return (e = t == null ? void 0 : t.shouldReceiveBuilderProps) != null && e.builderBlock ? {
62
- builderBlock: r
62
+ }, h = (e, t) => {
63
+ var r;
64
+ return (r = e == null ? void 0 : e.shouldReceiveBuilderProps) != null && r.builderBlock ? {
65
+ builderBlock: t
63
66
  } : {};
64
- }, S = (t, r) => {
65
- var e;
66
- return (e = t == null ? void 0 : t.shouldReceiveBuilderProps) != null && e.builderContext ? {
67
- builderContext: r
67
+ }, R = (e, t) => {
68
+ var r;
69
+ return (r = e == null ? void 0 : e.shouldReceiveBuilderProps) != null && r.builderContext ? {
70
+ builderContext: t
68
71
  } : {};
69
72
  };
70
73
  export {
71
- m as getComponent,
72
- c as getRepeatItemData,
73
- C as provideBuilderBlock,
74
- S as provideBuilderContext,
75
- f as provideLinkComponent,
74
+ c as getComponent,
75
+ f as getRepeatItemData,
76
+ h as provideBuilderBlock,
77
+ R as provideBuilderContext,
78
+ C as provideLinkComponent,
76
79
  v as provideRegisteredComponents
77
80
  };
@@ -1,4 +1,4 @@
1
- import { jsx as r, Fragment as u, jsxs as h } from "react/jsx-runtime";
1
+ import { jsx as l, Fragment as u, jsxs as h } from "react/jsx-runtime";
2
2
  import { TARGET as v } from "../../constants/target.mjs";
3
3
  import { getBlockComponentOptions as S } from "../../functions/get-block-component-options.mjs";
4
4
  import { getProcessedBlock as P } from "../../functions/get-processed-block.mjs";
@@ -7,10 +7,10 @@ import "../../functions/get-fetch.mjs";
7
7
  import { getRepeatItemData as O, getComponent as w, provideBuilderBlock as W, provideBuilderContext as T, provideLinkComponent as L, provideRegisteredComponents as U } from "./block.helpers.mjs";
8
8
  import j from "./components/block-styles.mjs";
9
9
  import E from "./components/block-wrapper.mjs";
10
- import b from "./components/component-ref/component-ref.mjs";
11
- import x from "./components/repeated-block.mjs";
10
+ import x from "./components/component-ref/component-ref.mjs";
11
+ import b from "./components/repeated-block.mjs";
12
12
  function N(e) {
13
- var a, p, C, f;
13
+ var a, C, p, f;
14
14
  const d = function() {
15
15
  return O({
16
16
  block: e.block,
@@ -32,10 +32,11 @@ function N(e) {
32
32
  shouldEvaluateBindings: !0
33
33
  });
34
34
  return s.value = c, s.update = !1, c;
35
- }, l = function() {
35
+ }, r = function() {
36
36
  return w({
37
37
  block: t(),
38
- registeredComponents: e.registeredComponents
38
+ registeredComponents: e.registeredComponents,
39
+ model: e.context.model
39
40
  });
40
41
  }, g = function() {
41
42
  var i;
@@ -48,34 +49,35 @@ function N(e) {
48
49
  return ("show" in t() ? t().show : !0) && !c;
49
50
  }, R = function() {
50
51
  var i, m;
51
- return !((i = l()) != null && i.component) && !d() ? (m = t().children) != null ? m : [] : [];
52
+ return !((i = r()) != null && i.component) && !d() ? (m = t().children) != null ? m : [] : [];
52
53
  }, o = function() {
53
54
  var c, i, m, k;
54
55
  return {
55
56
  blockChildren: (c = t().children) != null ? c : [],
56
- componentRef: (i = l()) == null ? void 0 : i.component,
57
+ componentRef: (i = r()) == null ? void 0 : i.component,
57
58
  componentOptions: {
58
59
  ...S(t()),
59
- ...W(l(), t()),
60
- ...T(l(), e.context),
61
- ...L(l(), e.linkComponent),
60
+ ...W(r(), t()),
61
+ ...T(r(), e.context),
62
+ ...L(r(), e.linkComponent),
62
63
  ...U(
63
- l(),
64
- e.registeredComponents
64
+ r(),
65
+ e.registeredComponents,
66
+ e.context.model
65
67
  )
66
68
  },
67
69
  context: e.context,
68
70
  linkComponent: e.linkComponent,
69
71
  registeredComponents: e.registeredComponents,
70
72
  builderBlock: t(),
71
- includeBlockProps: ((m = l()) == null ? void 0 : m.noWrap) === !0,
72
- isInteractive: !((k = l()) != null && k.isRSC && v === "rsc")
73
+ includeBlockProps: ((m = r()) == null ? void 0 : m.noWrap) === !0,
74
+ isInteractive: !((k = r()) != null && k.isRSC && v === "rsc")
73
75
  };
74
76
  };
75
- return /* @__PURE__ */ r(u, { children: B() ? /* @__PURE__ */ h(u, { children: [
76
- /* @__PURE__ */ r(j, { block: t(), context: e.context }),
77
- (a = l()) != null && a.noWrap ? d() ? /* @__PURE__ */ r(u, { children: (f = d()) == null ? void 0 : f.map((n, c) => /* @__PURE__ */ r(
78
- x,
77
+ return /* @__PURE__ */ l(u, { children: B() ? /* @__PURE__ */ h(u, { children: [
78
+ /* @__PURE__ */ l(j, { block: t(), context: e.context }),
79
+ (a = r()) != null && a.noWrap ? d() ? /* @__PURE__ */ l(u, { children: (f = d()) == null ? void 0 : f.map((n, c) => /* @__PURE__ */ l(
80
+ b,
79
81
  {
80
82
  repeatContext: n.context,
81
83
  block: n.block,
@@ -83,8 +85,8 @@ function N(e) {
83
85
  linkComponent: e.linkComponent
84
86
  },
85
87
  c
86
- )) }) : /* @__PURE__ */ r(
87
- b,
88
+ )) }) : /* @__PURE__ */ l(
89
+ x,
88
90
  {
89
91
  componentRef: o().componentRef,
90
92
  componentOptions: o().componentOptions,
@@ -96,8 +98,8 @@ function N(e) {
96
98
  includeBlockProps: o().includeBlockProps,
97
99
  isInteractive: o().isInteractive
98
100
  }
99
- ) : /* @__PURE__ */ r(u, { children: d() ? /* @__PURE__ */ r(u, { children: (C = d()) == null ? void 0 : C.map((n, c) => /* @__PURE__ */ r(
100
- x,
101
+ ) : /* @__PURE__ */ l(u, { children: d() ? /* @__PURE__ */ l(u, { children: (p = d()) == null ? void 0 : p.map((n, c) => /* @__PURE__ */ l(
102
+ b,
101
103
  {
102
104
  repeatContext: n.context,
103
105
  block: n.block,
@@ -112,8 +114,8 @@ function N(e) {
112
114
  block: t(),
113
115
  context: e.context,
114
116
  children: [
115
- /* @__PURE__ */ r(
116
- b,
117
+ /* @__PURE__ */ l(
118
+ x,
117
119
  {
118
120
  componentRef: o().componentRef,
119
121
  componentOptions: o().componentOptions,
@@ -126,7 +128,7 @@ function N(e) {
126
128
  isInteractive: o().isInteractive
127
129
  }
128
130
  ),
129
- (p = R()) == null ? void 0 : p.map((n) => /* @__PURE__ */ r(
131
+ (C = R()) == null ? void 0 : C.map((n) => /* @__PURE__ */ l(
130
132
  N,
131
133
  {
132
134
  block: n,
@@ -1 +1 @@
1
- "use client";"use strict";const k=require("react/jsx-runtime"),o=require("react"),N=require("../../../context/builder.context.cjs"),W=require("../../../functions/evaluate/evaluate.cjs"),A=require("../../../functions/fast-clone.cjs"),B=require("../../../functions/get-content/index.cjs"),R=require("../../../functions/is-browser.cjs"),g=require("../../../functions/is-editing.cjs"),D=require("../../../functions/is-previewing.cjs"),F=require("../../../functions/log-fetch.cjs"),U=require("../../../functions/register-component.cjs"),P=require("../../../functions/track/index.cjs"),O=require("../../../functions/track/interaction.cjs"),y=require("../../../helpers/canTrack.cjs"),$=require("../../../helpers/preview-lru-cache/set.cjs"),z=require("../../../helpers/subscribe-to-editor.cjs"),H=require("../../../scripts/init-editing.cjs"),G=require("../../block/animator.cjs"),J=require("./styles.helpers.cjs"),Q=require("next/navigation");function X(e){var q,w,I;const s=o.useRef(null);function f(n){var r,i;const t={...e.builderContextSignal.rootState,...n};e.builderContextSignal.rootSetState?(i=(r=e.builderContextSignal).rootSetState)==null||i.call(r,t):e.builderContextSignal.rootState=t}function b(n){var r,i,a,c,l;const t={...e.builderContextSignal.content,...n,data:{...(r=e.builderContextSignal.content)==null?void 0:r.data,...n==null?void 0:n.data},meta:{...(i=e.builderContextSignal.content)==null?void 0:i.meta,...n==null?void 0:n.meta,breakpoints:((a=n==null?void 0:n.meta)==null?void 0:a.breakpoints)||((l=(c=e.builderContextSignal.content)==null?void 0:c.meta)==null?void 0:l.breakpoints)}};$.postPreviewContent({value:t,key:t.id}).then(()=>{V.refresh()})}function L(){return e.showContent?{}:{hidden:!0,"aria-hidden":!0}}const[K,Y]=o.useState(()=>e.contentWrapper||"div");function S(n){return z.createEditorListener({model:e.model,trustedHosts:e.trustedHosts,callbacks:{configureSdk:t=>{var a;const{breakpoints:r,contentId:i}=t;!i||i!==((a=e.builderContextSignal.content)==null?void 0:a.id)||r&&b({meta:{breakpoints:r}})},animation:t=>{G.triggerAnimation(t)},contentUpdate:t=>{b(t)}}})(n)}const[v,Z]=o.useState(()=>({})),[m,p]=o.useState(()=>({})),[h,T]=o.useState(()=>!1);function _(n){var t,r;if(e.builderContextSignal.content){const i=(t=e.builderContextSignal.content)==null?void 0:t.testVariationId,a=(r=e.builderContextSignal.content)==null?void 0:r.id;P._track({apiHost:e.apiHost,type:"click",canTrack:y.getDefaultCanTrack(e.canTrack),contentId:a,apiKey:e.apiKey,variationId:i!==a?i:void 0,...O.getInteractionPropertiesForEvent(n),unique:!h})}h||T(!0)}function j(){var t,r,i;const n=(i=(r=(t=e.builderContextSignal.content)==null?void 0:t.data)==null?void 0:r.httpRequests)!=null?i:{};Object.entries(n).forEach(([a,c])=>{if(!c||m[a]||v[a]&&!g.isEditing())return;m[a]=!0;const l=c.replace(/{{([^}]+)}}/g,(d,M)=>String(W.evaluate({code:M,context:e.context||{},localState:void 0,rootState:e.builderContextSignal.rootState,rootSetState:e.builderContextSignal.rootSetState})));F.logFetch(l),fetch(l).then(d=>d.json()).then(d=>{f({[a]:d}),v[a]=!0}).catch(d=>{console.error("error fetching dynamic data",c,d)}).finally(()=>{m[a]=!1})})}function u(){g.isEditing()&&window.dispatchEvent(new CustomEvent("builder:component:stateChange",{detail:{state:A.fastClone(e.builderContextSignal.rootState),ref:{name:e.model}}}))}function E(n){window.addEventListener("message",S),H.registerInsertMenu(),H.setupBrowserForEditing({...e.locale?{locale:e.locale}:{},...e.enrich?{enrich:e.enrich}:{},...e.trustedHosts?{trustedHosts:e.trustedHosts}:{}}),Object.values(e.builderContextSignal.componentInfos).forEach(t=>{var i;const r=U.createRegisterComponentMessage(t);(i=window.parent)==null||i.postMessage(r,"*")}),window.addEventListener("builder:component:stateChangeListenerActivated",u)}function x(n){const t=new URL(location.href).searchParams,r=t.get("builder.preview"),i=t.get(`builder.overrides.${r}`),a=t.get("apiKey")||t.get("builder.space");r===e.model&&a===e.apiKey&&(!e.content||i===e.content.id)&&B.fetchOneEntry({model:e.model,apiKey:e.apiKey,apiVersion:e.builderContextSignal.apiVersion}).then(c=>{c&&b(c)})}const V=Q.useRouter(),C=o.useRef(!1);return C.current||(j(),u(),C.current=!0),o.useEffect(()=>{var n;return(n=s.current)==null||n.addEventListener("initeditingbldr",E),()=>{var t;return(t=s.current)==null?void 0:t.removeEventListener("initeditingbldr",E)}},[]),o.useEffect(()=>{var n;return(n=s.current)==null||n.addEventListener("initpreviewingbldr",x),()=>{var t;return(t=s.current)==null?void 0:t.removeEventListener("initpreviewingbldr",x)}},[]),o.useEffect(()=>{var n,t;if(R.isBrowser()){if(g.isEditing()&&!e.isNestedRender&&s.current&&s.current.dispatchEvent(new CustomEvent("initeditingbldr")),e.builderContextSignal.content&&y.getDefaultCanTrack(e.canTrack)){const i=(n=e.builderContextSignal.content)==null?void 0:n.testVariationId,a=(t=e.builderContextSignal.content)==null?void 0:t.id,c=e.apiKey;P._track({apiHost:e.apiHost,type:"impression",canTrack:!0,contentId:a,apiKey:c,variationId:i!==a?i:void 0})}D.isPreviewing()&&g.isEditing()}},[]),o.useEffect(()=>{},[e.content]),o.useEffect(()=>{u()},[e.builderContextSignal.rootState]),o.useEffect(()=>{e.data&&f(e.data)},[e.data]),o.useEffect(()=>{e.locale&&f({locale:e.locale})},[e.locale]),o.useEffect(()=>()=>{R.isBrowser()&&(window.removeEventListener("message",S),window.removeEventListener("builder:component:stateChangeListenerActivated",u))},[]),k.jsx(N.Provider,{value:e.builderContextSignal,children:e.builderContextSignal.content?k.jsx(K,{ref:s,onClick:n=>_(n),"builder-content-id":(q=e.builderContextSignal.content)==null?void 0:q.id,"builder-model":e.model,className:J.getWrapperClassName(((w=e.content)==null?void 0:w.testVariationId)||((I=e.content)==null?void 0:I.id)),...L(),...e.contentWrapperProps,children:e.children}):null})}module.exports=X;
1
+ "use client";"use strict";const R=require("react/jsx-runtime"),o=require("react"),M=require("../../../context/builder.context.cjs"),N=require("../../../functions/evaluate/evaluate.cjs"),W=require("../../../functions/fast-clone.cjs"),A=require("../../../functions/get-content/index.cjs"),k=require("../../../functions/is-browser.cjs"),g=require("../../../functions/is-editing.cjs"),B=require("../../../functions/is-previewing.cjs"),U=require("../../../functions/log-fetch.cjs"),O=require("../../../functions/register-component.cjs"),P=require("../../../functions/track/index.cjs"),$=require("../../../functions/track/interaction.cjs"),y=require("../../../helpers/canTrack.cjs"),z=require("../../../helpers/preview-lru-cache/set.cjs"),G=require("../../../helpers/subscribe-to-editor.cjs"),H=require("../../../scripts/init-editing.cjs"),J=require("../../block/animator.cjs"),L=require("./enable-editor.helpers.cjs"),Q=require("./styles.helpers.cjs"),X=require("next/navigation");function Y(e){var q,w,I;const d=o.useRef(null);function f(n){var r,i;const t={...e.builderContextSignal.rootState,...n};e.builderContextSignal.rootSetState?(i=(r=e.builderContextSignal).rootSetState)==null||i.call(r,t):e.builderContextSignal.rootState=t}function m(n){var r,i,a,c,s;const t={...e.builderContextSignal.content,...n,data:{...(r=e.builderContextSignal.content)==null?void 0:r.data,...n==null?void 0:n.data},meta:{...(i=e.builderContextSignal.content)==null?void 0:i.meta,...n==null?void 0:n.meta,breakpoints:((a=n==null?void 0:n.meta)==null?void 0:a.breakpoints)||((s=(c=e.builderContextSignal.content)==null?void 0:c.meta)==null?void 0:s.breakpoints)}};z.postPreviewContent({value:t,key:t.id}).then(()=>{F.refresh()})}function K(){return e.showContent?{}:{hidden:!0,"aria-hidden":!0}}const[T,Z]=o.useState(()=>e.contentWrapper||"div");function v(n){return G.createEditorListener({model:e.model,trustedHosts:e.trustedHosts,callbacks:{configureSdk:t=>{var a;const{breakpoints:r,contentId:i}=t;!i||i!==((a=e.builderContextSignal.content)==null?void 0:a.id)||r&&m({meta:{breakpoints:r}})},animation:t=>{J.triggerAnimation(t)},contentUpdate:t=>{m(t)}}})(n)}const[S,p]=o.useState(()=>({})),[b,ee]=o.useState(()=>({})),[h,_]=o.useState(()=>!1);function j(n){var t,r;if(e.builderContextSignal.content){const i=(t=e.builderContextSignal.content)==null?void 0:t.testVariationId,a=(r=e.builderContextSignal.content)==null?void 0:r.id;P._track({apiHost:e.apiHost,type:"click",canTrack:y.getDefaultCanTrack(e.canTrack),contentId:a,apiKey:e.apiKey,variationId:i!==a?i:void 0,...$.getInteractionPropertiesForEvent(n),unique:!h})}h||_(!0)}function D(){var t,r,i;const n=(i=(r=(t=e.builderContextSignal.content)==null?void 0:t.data)==null?void 0:r.httpRequests)!=null?i:{};Object.entries(n).forEach(([a,c])=>{if(!c||b[a]||S[a]&&!g.isEditing())return;b[a]=!0;const s=c.replace(/{{([^}]+)}}/g,(l,V)=>String(N.evaluate({code:V,context:e.context||{},localState:void 0,rootState:e.builderContextSignal.rootState,rootSetState:e.builderContextSignal.rootSetState})));U.logFetch(s),fetch(s).then(l=>l.json()).then(l=>{f({[a]:l}),S[a]=!0}).catch(l=>{console.error("error fetching dynamic data",c,l)}).finally(()=>{b[a]=!1})})}function u(){g.isEditing()&&window.dispatchEvent(new CustomEvent("builder:component:stateChange",{detail:{state:W.fastClone(e.builderContextSignal.rootState),ref:{name:e.model}}}))}function E(n){window.addEventListener("message",v),H.registerInsertMenu(),H.setupBrowserForEditing({...e.locale?{locale:e.locale}:{},...e.enrich?{enrich:e.enrich}:{},...e.trustedHosts?{trustedHosts:e.trustedHosts}:{}}),Object.values(e.builderContextSignal.componentInfos).forEach(t=>{var r,i;if(!e.model||!((r=t.models)!=null&&r.length)||t.models.includes(e.model)){const a=O.createRegisterComponentMessage(t);(i=window.parent)==null||i.postMessage(a,"*")}}),window.addEventListener("builder:component:stateChangeListenerActivated",u)}function x(n){const t=new URL(location.href).searchParams,r=t.get("builder.preview"),i=t.get(`builder.overrides.${r}`),a=t.get("apiKey")||t.get("builder.space");r===e.model&&a===e.apiKey&&(!e.content||i===e.content.id)&&A.fetchOneEntry({model:e.model,apiKey:e.apiKey,apiVersion:e.builderContextSignal.apiVersion}).then(c=>{c&&m(c)})}const F=X.useRouter(),C=o.useRef(!1);return C.current||(D(),u(),C.current=!0),o.useEffect(()=>{var n;return(n=d.current)==null||n.addEventListener("initeditingbldr",E),()=>{var t;return(t=d.current)==null?void 0:t.removeEventListener("initeditingbldr",E)}},[]),o.useEffect(()=>{var n;return(n=d.current)==null||n.addEventListener("initpreviewingbldr",x),()=>{var t;return(t=d.current)==null?void 0:t.removeEventListener("initpreviewingbldr",x)}},[]),o.useEffect(()=>{var n,t;if(k.isBrowser()){if(g.isEditing()&&!e.isNestedRender&&d.current&&d.current.dispatchEvent(new CustomEvent("initeditingbldr")),e.builderContextSignal.content&&y.getDefaultCanTrack(e.canTrack)){const i=(n=e.builderContextSignal.content)==null?void 0:n.testVariationId,a=(t=e.builderContextSignal.content)==null?void 0:t.id,c=e.apiKey;P._track({apiHost:e.apiHost,type:"impression",canTrack:!0,contentId:a,apiKey:c,variationId:i!==a?i:void 0})}B.isPreviewing()&&g.isEditing()}},[]),o.useEffect(()=>{},[e.content]),o.useEffect(()=>{u()},[e.builderContextSignal.rootState]),o.useEffect(()=>{e.data&&f(e.data)},[e.data]),o.useEffect(()=>{e.locale&&f({locale:e.locale})},[e.locale]),o.useEffect(()=>()=>{k.isBrowser()&&(window.removeEventListener("message",v),window.removeEventListener("builder:component:stateChangeListenerActivated",u))},[]),R.jsx(M.Provider,{value:e.builderContextSignal,children:e.builderContextSignal.content||L.needsElementRefDivForEditing()?R.jsx(T,{ref:d,onClick:n=>j(n),"builder-content-id":(q=e.builderContextSignal.content)==null?void 0:q.id,"builder-model":e.model,className:Q.getWrapperClassName(((w=e.content)==null?void 0:w.testVariationId)||((I=e.content)==null?void 0:I.id)),style:{display:!e.builderContextSignal.content&&L.needsElementRefDivForEditing()?"none":void 0},...K(),...e.contentWrapperProps,children:e.children}):null})}module.exports=Y;
@@ -0,0 +1 @@
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const i=require("../../../constants/target.cjs"),t=require("../../../functions/is-editing.cjs"),n=require("../../../functions/is-previewing.cjs"),e=["svelte","qwik","vue"],r=()=>e.includes(i.TARGET)&&(t.isEditing()||n.isPreviewing());exports.SDKS_USING_ELEMENT_REF_APPROACH=e;exports.needsElementRefDivForEditing=r;
@@ -0,0 +1,8 @@
1
+ import { TARGET as i } from "../../../constants/target.mjs";
2
+ import { isEditing as e } from "../../../functions/is-editing.mjs";
3
+ import { isPreviewing as r } from "../../../functions/is-previewing.mjs";
4
+ const t = ["svelte", "qwik", "vue"], m = () => t.includes(i) && (e() || r());
5
+ export {
6
+ t as SDKS_USING_ELEMENT_REF_APPROACH,
7
+ m as needsElementRefDivForEditing
8
+ };