@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,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
+ };