@builder.io/sdk-solid 4.0.6 → 4.0.7

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.
@@ -1,5 +1,5 @@
1
1
  import { delegateEvents, createComponent, spread, mergeProps, insert, effect, setAttribute, className, style, template, use, Dynamic, memo } from 'solid-js/web';
2
- import { createContext, useContext, Show, For, createMemo, createSignal, onMount, createEffect, on } from 'solid-js';
2
+ import { createContext, useContext, Show, For, createMemo, onMount, createSignal, createEffect, on } from 'solid-js';
3
3
 
4
4
  // src/blocks/button/button.tsx
5
5
 
@@ -936,6 +936,9 @@ var provideBuilderContext = (block, context) => {
936
936
  };
937
937
  return {};
938
938
  };
939
+ var generateKey = (index) => {
940
+ return index.toString();
941
+ };
939
942
 
940
943
  // src/constants/device-sizes.ts
941
944
  var SIZES = {
@@ -1230,9 +1233,12 @@ function InteractiveElement(props) {
1230
1233
  })
1231
1234
  } : {};
1232
1235
  });
1236
+ const targetWrapperProps = createMemo(() => {
1237
+ return props.wrapperProps;
1238
+ });
1233
1239
  return createComponent(Show, {
1234
1240
  get fallback() {
1235
- return createComponent(Dynamic, mergeProps(() => props.wrapperProps, {
1241
+ return createComponent(Dynamic, mergeProps(targetWrapperProps, {
1236
1242
  get attributes() {
1237
1243
  return attributes();
1238
1244
  },
@@ -1362,6 +1368,11 @@ function ComponentRef(props) {
1362
1368
  var component_ref_default = ComponentRef;
1363
1369
  function RepeatedBlock(props) {
1364
1370
  const [store, setStore] = createSignal(props.repeatContext);
1371
+ const onUpdateFn_0_props_repeatContext = createMemo(() => props.repeatContext);
1372
+ function onUpdateFn_0() {
1373
+ setStore(props.repeatContext);
1374
+ }
1375
+ createEffect(on(() => [onUpdateFn_0_props_repeatContext()], onUpdateFn_0));
1365
1376
  return createComponent(builder_context_default.Provider, {
1366
1377
  get value() {
1367
1378
  return store();
@@ -1488,7 +1499,9 @@ function Block(props) {
1488
1499
  children: (data, _index) => {
1489
1500
  const index = _index();
1490
1501
  return createComponent(repeated_block_default, {
1491
- key: index,
1502
+ get key() {
1503
+ return generateKey(index);
1504
+ },
1492
1505
  get repeatContext() {
1493
1506
  return data.context;
1494
1507
  },
@@ -1554,7 +1567,9 @@ function Block(props) {
1554
1567
  children: (data, _index) => {
1555
1568
  const index = _index();
1556
1569
  return createComponent(repeated_block_default, {
1557
- key: index,
1570
+ get key() {
1571
+ return generateKey(index);
1572
+ },
1558
1573
  get repeatContext() {
1559
1574
  return data.context;
1560
1575
  },
@@ -2050,16 +2065,16 @@ function getSrcSet(url) {
2050
2065
  // src/blocks/image/image.tsx
2051
2066
  var _tmpl$5 = /* @__PURE__ */ template(`<source type=image/webp>`);
2052
2067
  var _tmpl$23 = /* @__PURE__ */ template(`<picture><img>`);
2053
- var _tmpl$32 = /* @__PURE__ */ template(`<div class="builder-image-sizer div-040e729e">`);
2054
- var _tmpl$42 = /* @__PURE__ */ template(`<div class=div-040e729e-2>`);
2055
- var _tmpl$52 = /* @__PURE__ */ template(`<style>.img-040e729e {
2068
+ var _tmpl$32 = /* @__PURE__ */ template(`<div class="builder-image-sizer div-5f381e78">`);
2069
+ var _tmpl$42 = /* @__PURE__ */ template(`<div class=div-5f381e78-2>`);
2070
+ var _tmpl$52 = /* @__PURE__ */ template(`<style>.img-5f381e78 {
2056
2071
  opacity: 1;
2057
2072
  transition: opacity 0.2s ease-in-out;
2058
- }.div-040e729e {
2073
+ }.div-5f381e78 {
2059
2074
  width: 100%;
2060
2075
  pointer-events: none;
2061
2076
  font-size: 0;
2062
- }.div-040e729e-2 {
2077
+ }.div-5f381e78-2 {
2063
2078
  display: flex;
2064
2079
  flex-direction: column;
2065
2080
  align-items: stretch;
@@ -2109,6 +2124,8 @@ function Image(props) {
2109
2124
  const out = props.aspectRatio ? aspectRatioStyles : void 0;
2110
2125
  return out;
2111
2126
  });
2127
+ onMount(() => {
2128
+ });
2112
2129
  return [[(() => {
2113
2130
  const _el$ = _tmpl$23(), _el$3 = _el$.firstChild;
2114
2131
  insert(_el$, createComponent(Show, {
@@ -2122,7 +2139,7 @@ function Image(props) {
2122
2139
  }
2123
2140
  }), _el$3);
2124
2141
  effect((_p$) => {
2125
- const _v$ = "builder-image" + (props.className ? " " + props.className : "") + " img-040e729e", _v$2 = props.highPriority ? "eager" : "lazy", _v$3 = props.highPriority ? "high" : "auto", _v$4 = props.altText, _v$5 = props.title, _v$6 = props.altText ? void 0 : "presentation", _v$7 = {
2142
+ const _v$ = "builder-image" + (props.className ? " " + props.className : "") + " img-5f381e78", _v$2 = props.highPriority ? "eager" : "lazy", _v$3 = props.highPriority ? "high" : "auto", _v$4 = props.altText, _v$5 = props.title, _v$6 = props.altText ? void 0 : "presentation", _v$7 = {
2126
2143
  "object-position": props.backgroundPosition || "center",
2127
2144
  "object-fit": props.backgroundSize || "cover",
2128
2145
  ...aspectRatioCss()
@@ -3958,10 +3975,10 @@ delegateEvents(["click"]);
3958
3975
 
3959
3976
  // src/blocks/text/component-info.ts
3960
3977
  var componentInfo11 = {
3961
- shouldReceiveBuilderProps: {
3962
- builderBlock: TARGET === "reactNative" ? true : false,
3978
+ shouldReceiveBuilderProps: TARGET === "reactNative" ? {
3979
+ builderBlock: true,
3963
3980
  builderContext: true
3964
- },
3981
+ } : {},
3965
3982
  name: "Text",
3966
3983
  static: true,
3967
3984
  isRSC: true,
@@ -5359,7 +5376,7 @@ function getPreviewContent(_searchParams) {
5359
5376
  }
5360
5377
 
5361
5378
  // src/constants/sdk-version.ts
5362
- var SDK_VERSION = "4.0.6";
5379
+ var SDK_VERSION = "4.0.7";
5363
5380
 
5364
5381
  // src/helpers/sdk-headers.ts
5365
5382
  var getSdkHeaders = () => ({
@@ -929,6 +929,9 @@ var provideBuilderContext = (block, context) => {
929
929
  };
930
930
  return {};
931
931
  };
932
+ var generateKey = (index) => {
933
+ return index.toString();
934
+ };
932
935
 
933
936
  // src/components/block/components/block-styles.tsx
934
937
  import { Show as Show2, createMemo } from "solid-js";
@@ -1236,9 +1239,12 @@ function InteractiveElement(props) {
1236
1239
  })
1237
1240
  } : {};
1238
1241
  });
1242
+ const targetWrapperProps = createMemo2(() => {
1243
+ return props.wrapperProps;
1244
+ });
1239
1245
  return <><Show3
1240
1246
  fallback={<Dynamic2
1241
- {...props.wrapperProps}
1247
+ {...targetWrapperProps()}
1242
1248
  attributes={attributes()}
1243
1249
  component={props.Wrapper}
1244
1250
  >{props.children}</Dynamic2>}
@@ -1334,9 +1340,16 @@ function ComponentRef(props) {
1334
1340
  var Component_ref_default = ComponentRef;
1335
1341
 
1336
1342
  // src/components/block/components/repeated-block.tsx
1337
- import { createSignal as createSignal4 } from "solid-js";
1343
+ import { on as on2, createEffect as createEffect2, createMemo as createMemo4, createSignal as createSignal4 } from "solid-js";
1338
1344
  function RepeatedBlock(props) {
1339
1345
  const [store, setStore] = createSignal4(props.repeatContext);
1346
+ const onUpdateFn_0_props_repeatContext = createMemo4(
1347
+ () => props.repeatContext
1348
+ );
1349
+ function onUpdateFn_0() {
1350
+ setStore(props.repeatContext);
1351
+ }
1352
+ createEffect2(on2(() => [onUpdateFn_0_props_repeatContext()], onUpdateFn_0));
1340
1353
  return <><builder_context_default.Provider value={store()}><Block_default
1341
1354
  block={props.block}
1342
1355
  context={store()}
@@ -1441,7 +1454,7 @@ function Block(props) {
1441
1454
  fallback={<For2 each={repeatItem()}>{(data, _index) => {
1442
1455
  const index = _index();
1443
1456
  return <Repeated_block_default
1444
- key={index}
1457
+ key={generateKey(index)}
1445
1458
  repeatContext={data.context}
1446
1459
  block={data.block}
1447
1460
  registeredComponents={props.registeredComponents}
@@ -1465,7 +1478,7 @@ function Block(props) {
1465
1478
  fallback={<For2 each={repeatItem()}>{(data, _index) => {
1466
1479
  const index = _index();
1467
1480
  return <Repeated_block_default
1468
- key={index}
1481
+ key={generateKey(index)}
1469
1482
  repeatContext={data.context}
1470
1483
  block={data.block}
1471
1484
  registeredComponents={props.registeredComponents}
@@ -1505,7 +1518,7 @@ function Block(props) {
1505
1518
  var Block_default = Block;
1506
1519
 
1507
1520
  // src/components/blocks/blocks-wrapper.tsx
1508
- import { onMount as onMount3, on as on3, createEffect as createEffect3, createMemo as createMemo6, createSignal as createSignal6 } from "solid-js";
1521
+ import { onMount as onMount3, on as on4, createEffect as createEffect4, createMemo as createMemo6, createSignal as createSignal6 } from "solid-js";
1509
1522
  import { Dynamic as Dynamic4 } from "solid-js/web";
1510
1523
  function BlocksWrapper(props) {
1511
1524
  const [shouldUpdate, setShouldUpdate] = createSignal6(false);
@@ -1558,7 +1571,7 @@ function BlocksWrapper(props) {
1558
1571
  const onUpdateFn_0_props_blocks = createMemo6(() => props.blocks);
1559
1572
  function onUpdateFn_0() {
1560
1573
  }
1561
- createEffect3(on3(() => [onUpdateFn_0_props_blocks()], onUpdateFn_0));
1574
+ createEffect4(on4(() => [onUpdateFn_0_props_blocks()], onUpdateFn_0));
1562
1575
  return <>
1563
1576
  <Dynamic4
1564
1577
  class={className() + " dynamic-023c60f2"}
@@ -1783,7 +1796,7 @@ function FragmentComponent(props) {
1783
1796
  var fragment_default = FragmentComponent;
1784
1797
 
1785
1798
  // src/blocks/image/image.tsx
1786
- import { Show as Show8, createMemo as createMemo8 } from "solid-js";
1799
+ import { Show as Show8, onMount as onMount4, createMemo as createMemo8 } from "solid-js";
1787
1800
 
1788
1801
  // src/blocks/image/image.helpers.ts
1789
1802
  function removeProtocol(path) {
@@ -1873,12 +1886,14 @@ function Image(props) {
1873
1886
  const out = props.aspectRatio ? aspectRatioStyles : void 0;
1874
1887
  return out;
1875
1888
  });
1889
+ onMount4(() => {
1890
+ });
1876
1891
  return <>
1877
1892
  <>
1878
1893
  <picture>
1879
1894
  <Show8 when={webpSrcSet()}><source type="image/webp" srcset={webpSrcSet()} /></Show8>
1880
1895
  <img
1881
- class={"builder-image" + (props.className ? " " + props.className : "") + " img-040e729e"}
1896
+ class={"builder-image" + (props.className ? " " + props.className : "") + " img-5f381e78"}
1882
1897
  loading={props.highPriority ? "eager" : "lazy"}
1883
1898
  fetchpriority={props.highPriority ? "high" : "auto"}
1884
1899
  alt={props.altText}
@@ -1897,22 +1912,22 @@ function Image(props) {
1897
1912
  <Show8
1898
1913
  when={props.aspectRatio && !(props.builderBlock?.children?.length && props.fitContent)}
1899
1914
  ><div
1900
- class="builder-image-sizer div-040e729e"
1915
+ class="builder-image-sizer div-5f381e78"
1901
1916
  style={{
1902
1917
  "padding-top": props.aspectRatio * 100 + "%"
1903
1918
  }}
1904
1919
  /></Show8>
1905
1920
  <Show8 when={props.builderBlock?.children?.length && props.fitContent}>{props.children}</Show8>
1906
- <Show8 when={!props.fitContent && props.builderBlock?.children?.length}><div class="div-040e729e-2">{props.children}</div></Show8>
1921
+ <Show8 when={!props.fitContent && props.builderBlock?.children?.length}><div class="div-5f381e78-2">{props.children}</div></Show8>
1907
1922
  </>
1908
- <style>{`.img-040e729e {
1923
+ <style>{`.img-5f381e78 {
1909
1924
  opacity: 1;
1910
1925
  transition: opacity 0.2s ease-in-out;
1911
- }.div-040e729e {
1926
+ }.div-5f381e78 {
1912
1927
  width: 100%;
1913
1928
  pointer-events: none;
1914
1929
  font-size: 0;
1915
- }.div-040e729e-2 {
1930
+ }.div-5f381e78-2 {
1916
1931
  display: flex;
1917
1932
  flex-direction: column;
1918
1933
  align-items: stretch;
@@ -1948,10 +1963,10 @@ function SectionComponent(props) {
1948
1963
  var section_default = SectionComponent;
1949
1964
 
1950
1965
  // src/blocks/symbol/symbol.tsx
1951
- import { onMount as onMount9, on as on7, createEffect as createEffect7, createMemo as createMemo20, createSignal as createSignal20 } from "solid-js";
1966
+ import { onMount as onMount10, on as on8, createEffect as createEffect8, createMemo as createMemo20, createSignal as createSignal20 } from "solid-js";
1952
1967
 
1953
1968
  // src/components/content-variants/content-variants.tsx
1954
- import { Show as Show16, For as For9, onMount as onMount8, createSignal as createSignal19, createMemo as createMemo19 } from "solid-js";
1969
+ import { Show as Show16, For as For9, onMount as onMount9, createSignal as createSignal19, createMemo as createMemo19 } from "solid-js";
1955
1970
 
1956
1971
  // src/helpers/url.ts
1957
1972
  var getTopLevelDomain = (host) => {
@@ -2933,7 +2948,7 @@ var componentInfo6 = {
2933
2948
  };
2934
2949
 
2935
2950
  // src/blocks/personalization-container/personalization-container.tsx
2936
- import { Show as Show10, For as For6, onMount as onMount4, createSignal as createSignal10, createMemo as createMemo10 } from "solid-js";
2951
+ import { Show as Show10, For as For6, onMount as onMount5, createSignal as createSignal10, createMemo as createMemo10 } from "solid-js";
2937
2952
 
2938
2953
  // src/components/inlined-script.tsx
2939
2954
  function InlinedScript(props) {
@@ -3198,7 +3213,7 @@ function PersonalizationContainer(props) {
3198
3213
  ).join("");
3199
3214
  });
3200
3215
  let rootRef;
3201
- onMount4(() => {
3216
+ onMount5(() => {
3202
3217
  setIsHydrated(true);
3203
3218
  const unsub = userAttributesService.subscribeOnUserAttributesChange(
3204
3219
  (attrs) => {
@@ -3600,10 +3615,10 @@ var tabs_default = Tabs;
3600
3615
 
3601
3616
  // src/blocks/text/component-info.ts
3602
3617
  var componentInfo11 = {
3603
- shouldReceiveBuilderProps: {
3604
- builderBlock: TARGET === "reactNative" ? true : false,
3618
+ shouldReceiveBuilderProps: TARGET === "reactNative" ? {
3619
+ builderBlock: true,
3605
3620
  builderContext: true
3606
- },
3621
+ } : {},
3607
3622
  name: "Text",
3608
3623
  static: true,
3609
3624
  isRSC: true,
@@ -3661,7 +3676,7 @@ var componentInfo12 = {
3661
3676
  };
3662
3677
 
3663
3678
  // src/blocks/custom-code/custom-code.tsx
3664
- import { onMount as onMount5, on as on4, createEffect as createEffect4, createMemo as createMemo12, createSignal as createSignal12 } from "solid-js";
3679
+ import { onMount as onMount6, on as on5, createEffect as createEffect5, createMemo as createMemo12, createSignal as createSignal12 } from "solid-js";
3665
3680
  function CustomCode(props) {
3666
3681
  const [scriptsInserted, setScriptsInserted] = createSignal12([]);
3667
3682
  const [scriptsRun, setScriptsRun] = createSignal12([]);
@@ -3702,7 +3717,7 @@ function CustomCode(props) {
3702
3717
  }
3703
3718
  }
3704
3719
  let elementRef;
3705
- onMount5(() => {
3720
+ onMount6(() => {
3706
3721
  runScripts();
3707
3722
  });
3708
3723
  const onUpdateFn_0_props_code = createMemo12(() => props.code);
@@ -3711,7 +3726,7 @@ function CustomCode(props) {
3711
3726
  runScripts();
3712
3727
  }
3713
3728
  }
3714
- createEffect4(on4(() => [onUpdateFn_0_props_code()], onUpdateFn_0));
3729
+ createEffect5(on5(() => [onUpdateFn_0_props_code()], onUpdateFn_0));
3715
3730
  return <><div
3716
3731
  class={"builder-custom-code" + (props.replaceNodes ? " replace-nodes" : "")}
3717
3732
  ref={elementRef}
@@ -3739,7 +3754,7 @@ var componentInfo13 = {
3739
3754
  };
3740
3755
 
3741
3756
  // src/blocks/embed/embed.tsx
3742
- import { on as on5, createEffect as createEffect5, createMemo as createMemo13, createSignal as createSignal13 } from "solid-js";
3757
+ import { on as on6, createEffect as createEffect6, createMemo as createMemo13, createSignal as createSignal13 } from "solid-js";
3743
3758
 
3744
3759
  // src/blocks/embed/helpers.ts
3745
3760
  var SCRIPT_MIME_TYPES = ["text/javascript", "application/javascript", "application/ecmascript"];
@@ -3781,8 +3796,8 @@ function Embed(props) {
3781
3796
  findAndRunScripts();
3782
3797
  }
3783
3798
  }
3784
- createEffect5(
3785
- on5(() => [onUpdateFn_0_elem(), onUpdateFn_0_ranInitFn__()], onUpdateFn_0)
3799
+ createEffect6(
3800
+ on6(() => [onUpdateFn_0_elem(), onUpdateFn_0_ranInitFn__()], onUpdateFn_0)
3786
3801
  );
3787
3802
  return <><div class="builder-embed" ref={elem} innerHTML={props.content} /></>;
3788
3803
  }
@@ -4614,7 +4629,7 @@ var componentInfo20 = {
4614
4629
  };
4615
4630
 
4616
4631
  // src/blocks/video/video.tsx
4617
- import { Show as Show13, onMount as onMount6, createSignal as createSignal15, createMemo as createMemo15 } from "solid-js";
4632
+ import { Show as Show13, onMount as onMount7, createSignal as createSignal15, createMemo as createMemo15 } from "solid-js";
4618
4633
  function Video(props) {
4619
4634
  const [lazyVideoObserver, setLazyVideoObserver] = createSignal15(void 0);
4620
4635
  const videoProps = createMemo15(() => {
@@ -4642,7 +4657,7 @@ function Video(props) {
4642
4657
  };
4643
4658
  });
4644
4659
  let videoRef;
4645
- onMount6(() => {
4660
+ onMount7(() => {
4646
4661
  if (props.lazyLoad) {
4647
4662
  const oberver = new IntersectionObserver(function(entries) {
4648
4663
  entries.forEach(function(entry) {
@@ -4873,9 +4888,9 @@ var getUpdateVariantVisibilityScript = ({
4873
4888
  // src/components/content/components/enable-editor.tsx
4874
4889
  import {
4875
4890
  Show as Show14,
4876
- onMount as onMount7,
4877
- on as on6,
4878
- createEffect as createEffect6,
4891
+ onMount as onMount8,
4892
+ on as on7,
4893
+ createEffect as createEffect7,
4879
4894
  createMemo as createMemo16,
4880
4895
  createSignal as createSignal16
4881
4896
  } from "solid-js";
@@ -4887,7 +4902,7 @@ function getPreviewContent(_searchParams) {
4887
4902
  }
4888
4903
 
4889
4904
  // src/constants/sdk-version.ts
4890
- var SDK_VERSION = "4.0.6";
4905
+ var SDK_VERSION = "4.0.7";
4891
4906
 
4892
4907
  // src/helpers/sdk-headers.ts
4893
4908
  var getSdkHeaders = () => ({
@@ -5898,7 +5913,7 @@ function EnableEditor(props) {
5898
5913
  let elementRef;
5899
5914
  runHttpRequests();
5900
5915
  emitStateUpdate();
5901
- onMount7(() => {
5916
+ onMount8(() => {
5902
5917
  if (isBrowser()) {
5903
5918
  if (isEditing() && !props.isNestedRender) {
5904
5919
  window.addEventListener("message", processMessage);
@@ -5979,15 +5994,15 @@ function EnableEditor(props) {
5979
5994
  mergeNewContent(props.content);
5980
5995
  }
5981
5996
  }
5982
- createEffect6(on6(() => [onUpdateFn_0_props_content()], onUpdateFn_0));
5997
+ createEffect7(on7(() => [onUpdateFn_0_props_content()], onUpdateFn_0));
5983
5998
  const onUpdateFn_1_props_builderContextSignal_rootState = createMemo16(
5984
5999
  () => props.builderContextSignal.rootState
5985
6000
  );
5986
6001
  function onUpdateFn_1() {
5987
6002
  emitStateUpdate();
5988
6003
  }
5989
- createEffect6(
5990
- on6(
6004
+ createEffect7(
6005
+ on7(
5991
6006
  () => [onUpdateFn_1_props_builderContextSignal_rootState()],
5992
6007
  onUpdateFn_1
5993
6008
  )
@@ -5998,7 +6013,7 @@ function EnableEditor(props) {
5998
6013
  mergeNewRootState(props.data);
5999
6014
  }
6000
6015
  }
6001
- createEffect6(on6(() => [onUpdateFn_2_props_data()], onUpdateFn_2));
6016
+ createEffect7(on7(() => [onUpdateFn_2_props_data()], onUpdateFn_2));
6002
6017
  const onUpdateFn_3_props_locale = createMemo16(() => props.locale);
6003
6018
  function onUpdateFn_3() {
6004
6019
  if (props.locale) {
@@ -6007,7 +6022,7 @@ function EnableEditor(props) {
6007
6022
  });
6008
6023
  }
6009
6024
  }
6010
- createEffect6(on6(() => [onUpdateFn_3_props_locale()], onUpdateFn_3));
6025
+ createEffect7(on7(() => [onUpdateFn_3_props_locale()], onUpdateFn_3));
6011
6026
  return <><builder_context_default.Provider value={props.builderContextSignal}><Show14
6012
6027
  when={props.builderContextSignal.content || needsElementRefDivForEditing()}
6013
6028
  ><Dynamic5
@@ -6249,7 +6264,7 @@ function ContentVariants(props) {
6249
6264
  canTrack: getDefaultCanTrack(props.canTrack)
6250
6265
  });
6251
6266
  });
6252
- onMount8(() => {
6267
+ onMount9(() => {
6253
6268
  setShouldRenderVariants(false);
6254
6269
  });
6255
6270
  return <><>
@@ -6379,13 +6394,13 @@ function Symbol(props) {
6379
6394
  }
6380
6395
  });
6381
6396
  }
6382
- onMount9(() => {
6397
+ onMount10(() => {
6383
6398
  });
6384
6399
  const onUpdateFn_0_props_symbol = createMemo20(() => props.symbol);
6385
6400
  function onUpdateFn_0() {
6386
6401
  setContent();
6387
6402
  }
6388
- createEffect7(on7(() => [onUpdateFn_0_props_symbol()], onUpdateFn_0));
6403
+ createEffect8(on8(() => [onUpdateFn_0_props_symbol()], onUpdateFn_0));
6389
6404
  return <><div class={className()} {...{}} {...props.attributes} {...{}}><Content_variants_default
6390
6405
  nonce={props.builderContext.nonce}
6391
6406
  isNestedRender={true}
@@ -1,5 +1,5 @@
1
1
  import { delegateEvents, createComponent, spread, mergeProps, insert, effect, setAttribute, className, style, template, use, Dynamic, memo } from 'solid-js/web';
2
- import { createContext, useContext, Show, For, createMemo, createSignal, onMount, createEffect, on } from 'solid-js';
2
+ import { createContext, useContext, Show, For, createMemo, onMount, createSignal, createEffect, on } from 'solid-js';
3
3
 
4
4
  // src/blocks/button/button.tsx
5
5
 
@@ -927,6 +927,9 @@ var provideBuilderContext = (block, context) => {
927
927
  };
928
928
  return {};
929
929
  };
930
+ var generateKey = (index) => {
931
+ return index.toString();
932
+ };
930
933
 
931
934
  // src/constants/device-sizes.ts
932
935
  var SIZES = {
@@ -1221,9 +1224,12 @@ function InteractiveElement(props) {
1221
1224
  })
1222
1225
  } : {};
1223
1226
  });
1227
+ const targetWrapperProps = createMemo(() => {
1228
+ return props.wrapperProps;
1229
+ });
1224
1230
  return createComponent(Show, {
1225
1231
  get fallback() {
1226
- return createComponent(Dynamic, mergeProps(() => props.wrapperProps, {
1232
+ return createComponent(Dynamic, mergeProps(targetWrapperProps, {
1227
1233
  get attributes() {
1228
1234
  return attributes();
1229
1235
  },
@@ -1353,6 +1359,11 @@ function ComponentRef(props) {
1353
1359
  var component_ref_default = ComponentRef;
1354
1360
  function RepeatedBlock(props) {
1355
1361
  const [store, setStore] = createSignal(props.repeatContext);
1362
+ const onUpdateFn_0_props_repeatContext = createMemo(() => props.repeatContext);
1363
+ function onUpdateFn_0() {
1364
+ setStore(props.repeatContext);
1365
+ }
1366
+ createEffect(on(() => [onUpdateFn_0_props_repeatContext()], onUpdateFn_0));
1356
1367
  return createComponent(builder_context_default.Provider, {
1357
1368
  get value() {
1358
1369
  return store();
@@ -1479,7 +1490,9 @@ function Block(props) {
1479
1490
  children: (data, _index) => {
1480
1491
  const index = _index();
1481
1492
  return createComponent(repeated_block_default, {
1482
- key: index,
1493
+ get key() {
1494
+ return generateKey(index);
1495
+ },
1483
1496
  get repeatContext() {
1484
1497
  return data.context;
1485
1498
  },
@@ -1545,7 +1558,9 @@ function Block(props) {
1545
1558
  children: (data, _index) => {
1546
1559
  const index = _index();
1547
1560
  return createComponent(repeated_block_default, {
1548
- key: index,
1561
+ get key() {
1562
+ return generateKey(index);
1563
+ },
1549
1564
  get repeatContext() {
1550
1565
  return data.context;
1551
1566
  },
@@ -2041,16 +2056,16 @@ function getSrcSet(url) {
2041
2056
  // src/blocks/image/image.tsx
2042
2057
  var _tmpl$5 = /* @__PURE__ */ template(`<source type=image/webp>`);
2043
2058
  var _tmpl$23 = /* @__PURE__ */ template(`<picture><img>`);
2044
- var _tmpl$32 = /* @__PURE__ */ template(`<div class="builder-image-sizer div-040e729e">`);
2045
- var _tmpl$42 = /* @__PURE__ */ template(`<div class=div-040e729e-2>`);
2046
- var _tmpl$52 = /* @__PURE__ */ template(`<style>.img-040e729e {
2059
+ var _tmpl$32 = /* @__PURE__ */ template(`<div class="builder-image-sizer div-5f381e78">`);
2060
+ var _tmpl$42 = /* @__PURE__ */ template(`<div class=div-5f381e78-2>`);
2061
+ var _tmpl$52 = /* @__PURE__ */ template(`<style>.img-5f381e78 {
2047
2062
  opacity: 1;
2048
2063
  transition: opacity 0.2s ease-in-out;
2049
- }.div-040e729e {
2064
+ }.div-5f381e78 {
2050
2065
  width: 100%;
2051
2066
  pointer-events: none;
2052
2067
  font-size: 0;
2053
- }.div-040e729e-2 {
2068
+ }.div-5f381e78-2 {
2054
2069
  display: flex;
2055
2070
  flex-direction: column;
2056
2071
  align-items: stretch;
@@ -2099,6 +2114,8 @@ function Image(props) {
2099
2114
  const out = props.aspectRatio ? aspectRatioStyles : void 0;
2100
2115
  return out;
2101
2116
  });
2117
+ onMount(() => {
2118
+ });
2102
2119
  return [[(() => {
2103
2120
  const _el$ = _tmpl$23(), _el$3 = _el$.firstChild;
2104
2121
  insert(_el$, createComponent(Show, {
@@ -2112,7 +2129,7 @@ function Image(props) {
2112
2129
  }
2113
2130
  }), _el$3);
2114
2131
  effect((_p$) => {
2115
- const _v$ = "builder-image" + (props.className ? " " + props.className : "") + " img-040e729e", _v$2 = props.highPriority ? "eager" : "lazy", _v$3 = props.highPriority ? "high" : "auto", _v$4 = props.altText, _v$5 = props.title, _v$6 = props.altText ? void 0 : "presentation", _v$7 = {
2132
+ const _v$ = "builder-image" + (props.className ? " " + props.className : "") + " img-5f381e78", _v$2 = props.highPriority ? "eager" : "lazy", _v$3 = props.highPriority ? "high" : "auto", _v$4 = props.altText, _v$5 = props.title, _v$6 = props.altText ? void 0 : "presentation", _v$7 = {
2116
2133
  "object-position": props.backgroundPosition || "center",
2117
2134
  "object-fit": props.backgroundSize || "cover",
2118
2135
  ...aspectRatioCss()
@@ -3947,10 +3964,10 @@ delegateEvents(["click"]);
3947
3964
 
3948
3965
  // src/blocks/text/component-info.ts
3949
3966
  var componentInfo11 = {
3950
- shouldReceiveBuilderProps: {
3951
- builderBlock: TARGET === "reactNative" ? true : false,
3967
+ shouldReceiveBuilderProps: TARGET === "reactNative" ? {
3968
+ builderBlock: true,
3952
3969
  builderContext: true
3953
- },
3970
+ } : {},
3954
3971
  name: "Text",
3955
3972
  static: true,
3956
3973
  isRSC: true,
@@ -5347,7 +5364,7 @@ function getPreviewContent(_searchParams) {
5347
5364
  }
5348
5365
 
5349
5366
  // src/constants/sdk-version.ts
5350
- var SDK_VERSION = "4.0.6";
5367
+ var SDK_VERSION = "4.0.7";
5351
5368
 
5352
5369
  // src/helpers/sdk-headers.ts
5353
5370
  var getSdkHeaders = () => ({