@builder.io/sdk-solid 4.0.3 → 4.0.5

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.
package/lib/node/dev.jsx CHANGED
@@ -1367,7 +1367,14 @@ function BlockWrapper(props) {
1367
1367
  var Block_wrapper_default = BlockWrapper;
1368
1368
 
1369
1369
  // src/components/block/components/component-ref/component-ref.tsx
1370
- import { Show as Show4, For, createSignal as createSignal3 } from "solid-js";
1370
+ import {
1371
+ Show as Show4,
1372
+ For,
1373
+ on,
1374
+ createEffect,
1375
+ createMemo as createMemo3,
1376
+ createSignal as createSignal3
1377
+ } from "solid-js";
1371
1378
  import { Dynamic as Dynamic3 } from "solid-js/web";
1372
1379
 
1373
1380
  // src/components/block/components/interactive-element.tsx
@@ -1451,9 +1458,27 @@ var getWrapperProps = ({
1451
1458
 
1452
1459
  // src/components/block/components/component-ref/component-ref.tsx
1453
1460
  function ComponentRef(props) {
1461
+ const [shouldUpdate, setShouldUpdate] = createSignal3(false);
1454
1462
  const [Wrapper, setWrapper] = createSignal3(
1455
1463
  props.isInteractive ? interactive_element_default : props.componentRef
1456
1464
  );
1465
+ const onUpdateFn_0_props_componentOptions = createMemo3(
1466
+ () => props.componentOptions
1467
+ );
1468
+ const onUpdateFn_0_props_blockChildren = createMemo3(
1469
+ () => props.blockChildren
1470
+ );
1471
+ function onUpdateFn_0() {
1472
+ }
1473
+ createEffect(
1474
+ on(
1475
+ () => [
1476
+ onUpdateFn_0_props_componentOptions(),
1477
+ onUpdateFn_0_props_blockChildren()
1478
+ ],
1479
+ onUpdateFn_0
1480
+ )
1481
+ );
1457
1482
  return <><Show4 when={props.componentRef}><Dynamic3
1458
1483
  {...getWrapperProps({
1459
1484
  componentOptions: props.componentOptions,
@@ -1651,9 +1676,10 @@ function Block(props) {
1651
1676
  var Block_default = Block;
1652
1677
 
1653
1678
  // src/components/blocks/blocks-wrapper.tsx
1654
- import { onMount as onMount3, createMemo as createMemo6 } from "solid-js";
1679
+ import { onMount as onMount3, on as on3, createEffect as createEffect3, createMemo as createMemo6, createSignal as createSignal6 } from "solid-js";
1655
1680
  import { Dynamic as Dynamic4 } from "solid-js/web";
1656
1681
  function BlocksWrapper(props) {
1682
+ const [shouldUpdate, setShouldUpdate] = createSignal6(false);
1657
1683
  const className = createMemo6(() => {
1658
1684
  return [
1659
1685
  "builder-blocks",
@@ -1700,9 +1726,13 @@ function BlocksWrapper(props) {
1700
1726
  let blocksWrapperRef;
1701
1727
  onMount3(() => {
1702
1728
  });
1729
+ const onUpdateFn_0_props_blocks = createMemo6(() => props.blocks);
1730
+ function onUpdateFn_0() {
1731
+ }
1732
+ createEffect3(on3(() => [onUpdateFn_0_props_blocks()], onUpdateFn_0));
1703
1733
  return <>
1704
1734
  <Dynamic4
1705
- class={className() + " dynamic-3d7ff108"}
1735
+ class={className() + " dynamic-023c60f2"}
1706
1736
  ref={blocksWrapperRef}
1707
1737
  builder-path={dataPath()}
1708
1738
  builder-parent-id={props.parent}
@@ -1714,7 +1744,7 @@ function BlocksWrapper(props) {
1714
1744
  {...props.BlocksWrapperProps}
1715
1745
  component={props.BlocksWrapper}
1716
1746
  >{props.children}</Dynamic4>
1717
- <style>{`.dynamic-3d7ff108 {
1747
+ <style>{`.dynamic-023c60f2 {
1718
1748
  display: flex;
1719
1749
  flex-direction: column;
1720
1750
  align-items: stretch;
@@ -1879,7 +1909,7 @@ function Columns(props) {
1879
1909
  }
1880
1910
  return <>
1881
1911
  <div
1882
- class={getColumnsClass(props.builderBlock?.id) + " div-6331dfc5"}
1912
+ class={getColumnsClass(props.builderBlock?.id) + " div-7612d942"}
1883
1913
  style={columnsCssVars()}
1884
1914
  {...{}}
1885
1915
  >
@@ -1908,9 +1938,10 @@ function Columns(props) {
1908
1938
  /></Dynamic_renderer_default>;
1909
1939
  }}</For4>
1910
1940
  </div>
1911
- <style>{`.div-6331dfc5 {
1941
+ <style>{`.div-7612d942 {
1912
1942
  display: flex;
1913
1943
  line-height: normal;
1944
+ height: 100%;
1914
1945
  }`}</style>
1915
1946
  </>;
1916
1947
  }
@@ -2018,10 +2049,11 @@ function Image(props) {
2018
2049
  <picture>
2019
2050
  <Show8 when={webpSrcSet()}><source type="image/webp" srcset={webpSrcSet()} /></Show8>
2020
2051
  <img
2021
- class={"builder-image" + (props.className ? " " + props.className : "") + " img-dc6700b4"}
2052
+ class={"builder-image" + (props.className ? " " + props.className : "") + " img-040e729e"}
2022
2053
  loading={props.highPriority ? "eager" : "lazy"}
2023
2054
  fetchpriority={props.highPriority ? "high" : "auto"}
2024
2055
  alt={props.altText}
2056
+ title={props.title}
2025
2057
  role={props.altText ? void 0 : "presentation"}
2026
2058
  style={{
2027
2059
  "object-position": props.backgroundPosition || "center",
@@ -2036,22 +2068,22 @@ function Image(props) {
2036
2068
  <Show8
2037
2069
  when={props.aspectRatio && !(props.builderBlock?.children?.length && props.fitContent)}
2038
2070
  ><div
2039
- class="builder-image-sizer div-dc6700b4"
2071
+ class="builder-image-sizer div-040e729e"
2040
2072
  style={{
2041
2073
  "padding-top": props.aspectRatio * 100 + "%"
2042
2074
  }}
2043
2075
  /></Show8>
2044
2076
  <Show8 when={props.builderBlock?.children?.length && props.fitContent}>{props.children}</Show8>
2045
- <Show8 when={!props.fitContent && props.builderBlock?.children?.length}><div class="div-dc6700b4-2">{props.children}</div></Show8>
2077
+ <Show8 when={!props.fitContent && props.builderBlock?.children?.length}><div class="div-040e729e-2">{props.children}</div></Show8>
2046
2078
  </>
2047
- <style>{`.img-dc6700b4 {
2079
+ <style>{`.img-040e729e {
2048
2080
  opacity: 1;
2049
2081
  transition: opacity 0.2s ease-in-out;
2050
- }.div-dc6700b4 {
2082
+ }.div-040e729e {
2051
2083
  width: 100%;
2052
2084
  pointer-events: none;
2053
2085
  font-size: 0;
2054
- }.div-dc6700b4-2 {
2086
+ }.div-040e729e-2 {
2055
2087
  display: flex;
2056
2088
  flex-direction: column;
2057
2089
  align-items: stretch;
@@ -2087,7 +2119,7 @@ function SectionComponent(props) {
2087
2119
  var section_default = SectionComponent;
2088
2120
 
2089
2121
  // src/blocks/symbol/symbol.tsx
2090
- import { onMount as onMount9, on as on5, createEffect as createEffect5, createMemo as createMemo20, createSignal as createSignal20 } from "solid-js";
2122
+ import { onMount as onMount9, on as on7, createEffect as createEffect7, createMemo as createMemo20, createSignal as createSignal20 } from "solid-js";
2091
2123
 
2092
2124
  // src/components/content-variants/content-variants.tsx
2093
2125
  import { Show as Show16, For as For9, onMount as onMount8, createSignal as createSignal19, createMemo as createMemo19 } from "solid-js";
@@ -2986,6 +3018,10 @@ var componentInfo5 = {
2986
3018
  name: "altText",
2987
3019
  type: "string",
2988
3020
  helperText: "Text to display when the user has images off"
3021
+ }, {
3022
+ name: "title",
3023
+ type: "string",
3024
+ helperText: "Text to display when hovering over the asset"
2989
3025
  }, {
2990
3026
  name: "height",
2991
3027
  type: "number",
@@ -3796,7 +3832,7 @@ var componentInfo12 = {
3796
3832
  };
3797
3833
 
3798
3834
  // src/blocks/custom-code/custom-code.tsx
3799
- import { onMount as onMount5, on as on2, createEffect as createEffect2, createMemo as createMemo12, createSignal as createSignal12 } from "solid-js";
3835
+ import { onMount as onMount5, on as on4, createEffect as createEffect4, createMemo as createMemo12, createSignal as createSignal12 } from "solid-js";
3800
3836
  function CustomCode(props) {
3801
3837
  const [scriptsInserted, setScriptsInserted] = createSignal12([]);
3802
3838
  const [scriptsRun, setScriptsRun] = createSignal12([]);
@@ -3846,7 +3882,7 @@ function CustomCode(props) {
3846
3882
  runScripts();
3847
3883
  }
3848
3884
  }
3849
- createEffect2(on2(() => [onUpdateFn_0_props_code()], onUpdateFn_0));
3885
+ createEffect4(on4(() => [onUpdateFn_0_props_code()], onUpdateFn_0));
3850
3886
  return <><div
3851
3887
  class={"builder-custom-code" + (props.replaceNodes ? " replace-nodes" : "")}
3852
3888
  ref={elementRef}
@@ -3874,7 +3910,7 @@ var componentInfo13 = {
3874
3910
  };
3875
3911
 
3876
3912
  // src/blocks/embed/embed.tsx
3877
- import { on as on3, createEffect as createEffect3, createMemo as createMemo13, createSignal as createSignal13 } from "solid-js";
3913
+ import { on as on5, createEffect as createEffect5, createMemo as createMemo13, createSignal as createSignal13 } from "solid-js";
3878
3914
 
3879
3915
  // src/blocks/embed/helpers.ts
3880
3916
  var SCRIPT_MIME_TYPES = ["text/javascript", "application/javascript", "application/ecmascript"];
@@ -3916,8 +3952,8 @@ function Embed(props) {
3916
3952
  findAndRunScripts();
3917
3953
  }
3918
3954
  }
3919
- createEffect3(
3920
- on3(() => [onUpdateFn_0_elem(), onUpdateFn_0_ranInitFn__()], onUpdateFn_0)
3955
+ createEffect5(
3956
+ on5(() => [onUpdateFn_0_elem(), onUpdateFn_0_ranInitFn__()], onUpdateFn_0)
3921
3957
  );
3922
3958
  return <><div class="builder-embed" ref={elem} innerHTML={props.content} /></>;
3923
3959
  }
@@ -5009,8 +5045,8 @@ var getUpdateVariantVisibilityScript = ({
5009
5045
  import {
5010
5046
  Show as Show14,
5011
5047
  onMount as onMount7,
5012
- on as on4,
5013
- createEffect as createEffect4,
5048
+ on as on6,
5049
+ createEffect as createEffect6,
5014
5050
  createMemo as createMemo16,
5015
5051
  createSignal as createSignal16
5016
5052
  } from "solid-js";
@@ -5022,7 +5058,7 @@ function getPreviewContent(_searchParams) {
5022
5058
  }
5023
5059
 
5024
5060
  // src/constants/sdk-version.ts
5025
- var SDK_VERSION = "4.0.3";
5061
+ var SDK_VERSION = "4.0.5";
5026
5062
 
5027
5063
  // src/helpers/sdk-headers.ts
5028
5064
  var getSdkHeaders = () => ({
@@ -6114,15 +6150,15 @@ function EnableEditor(props) {
6114
6150
  mergeNewContent(props.content);
6115
6151
  }
6116
6152
  }
6117
- createEffect4(on4(() => [onUpdateFn_0_props_content()], onUpdateFn_0));
6153
+ createEffect6(on6(() => [onUpdateFn_0_props_content()], onUpdateFn_0));
6118
6154
  const onUpdateFn_1_props_builderContextSignal_rootState = createMemo16(
6119
6155
  () => props.builderContextSignal.rootState
6120
6156
  );
6121
6157
  function onUpdateFn_1() {
6122
6158
  emitStateUpdate();
6123
6159
  }
6124
- createEffect4(
6125
- on4(
6160
+ createEffect6(
6161
+ on6(
6126
6162
  () => [onUpdateFn_1_props_builderContextSignal_rootState()],
6127
6163
  onUpdateFn_1
6128
6164
  )
@@ -6133,7 +6169,7 @@ function EnableEditor(props) {
6133
6169
  mergeNewRootState(props.data);
6134
6170
  }
6135
6171
  }
6136
- createEffect4(on4(() => [onUpdateFn_2_props_data()], onUpdateFn_2));
6172
+ createEffect6(on6(() => [onUpdateFn_2_props_data()], onUpdateFn_2));
6137
6173
  const onUpdateFn_3_props_locale = createMemo16(() => props.locale);
6138
6174
  function onUpdateFn_3() {
6139
6175
  if (props.locale) {
@@ -6142,7 +6178,7 @@ function EnableEditor(props) {
6142
6178
  });
6143
6179
  }
6144
6180
  }
6145
- createEffect4(on4(() => [onUpdateFn_3_props_locale()], onUpdateFn_3));
6181
+ createEffect6(on6(() => [onUpdateFn_3_props_locale()], onUpdateFn_3));
6146
6182
  return <><builder_context_default.Provider value={props.builderContextSignal}><Show14
6147
6183
  when={props.builderContextSignal.content || needsElementRefDivForEditing()}
6148
6184
  ><Dynamic5
@@ -6520,7 +6556,7 @@ function Symbol(props) {
6520
6556
  function onUpdateFn_0() {
6521
6557
  setContent();
6522
6558
  }
6523
- createEffect5(on5(() => [onUpdateFn_0_props_symbol()], onUpdateFn_0));
6559
+ createEffect7(on7(() => [onUpdateFn_0_props_symbol()], onUpdateFn_0));
6524
6560
  return <><div class={className()} {...{}} {...props.attributes} {...{}}><Content_variants_default
6525
6561
  nonce={props.builderContext.nonce}
6526
6562
  isNestedRender={true}
package/lib/node/index.js CHANGED
@@ -1465,7 +1465,13 @@ var getWrapperProps = ({
1465
1465
 
1466
1466
  // src/components/block/components/component-ref/component-ref.tsx
1467
1467
  function ComponentRef(props) {
1468
+ createSignal(false);
1468
1469
  const [Wrapper, setWrapper] = createSignal(props.isInteractive ? interactive_element_default : props.componentRef);
1470
+ const onUpdateFn_0_props_componentOptions = createMemo(() => props.componentOptions);
1471
+ const onUpdateFn_0_props_blockChildren = createMemo(() => props.blockChildren);
1472
+ function onUpdateFn_0() {
1473
+ }
1474
+ createEffect(on(() => [onUpdateFn_0_props_componentOptions(), onUpdateFn_0_props_blockChildren()], onUpdateFn_0));
1469
1475
  return createComponent(Show, {
1470
1476
  get when() {
1471
1477
  return props.componentRef;
@@ -1801,12 +1807,13 @@ function Block(props) {
1801
1807
  });
1802
1808
  }
1803
1809
  var block_default = Block;
1804
- var _tmpl$2 = /* @__PURE__ */ template(`<style>.dynamic-3d7ff108 {
1810
+ var _tmpl$2 = /* @__PURE__ */ template(`<style>.dynamic-023c60f2 {
1805
1811
  display: flex;
1806
1812
  flex-direction: column;
1807
1813
  align-items: stretch;
1808
1814
  }`);
1809
1815
  function BlocksWrapper(props) {
1816
+ createSignal(false);
1810
1817
  const className = createMemo(() => {
1811
1818
  return ["builder-blocks", !props.blocks?.length ? "no-blocks" : "", props.classNameProp].filter(Boolean).join(" ");
1812
1819
  });
@@ -1843,9 +1850,13 @@ function BlocksWrapper(props) {
1843
1850
  let blocksWrapperRef;
1844
1851
  onMount(() => {
1845
1852
  });
1853
+ const onUpdateFn_0_props_blocks = createMemo(() => props.blocks);
1854
+ function onUpdateFn_0() {
1855
+ }
1856
+ createEffect(on(() => [onUpdateFn_0_props_blocks()], onUpdateFn_0));
1846
1857
  return [createComponent(Dynamic, mergeProps({
1847
1858
  get ["class"]() {
1848
- return className() + " dynamic-3d7ff108";
1859
+ return className() + " dynamic-023c60f2";
1849
1860
  },
1850
1861
  ref(r$) {
1851
1862
  const _ref$ = blocksWrapperRef;
@@ -1944,9 +1955,10 @@ var getColumnsClass = (id) => {
1944
1955
 
1945
1956
  // src/blocks/columns/columns.tsx
1946
1957
  var _tmpl$3 = /* @__PURE__ */ template(`<div>`);
1947
- var _tmpl$22 = /* @__PURE__ */ template(`<style>.div-6331dfc5 {
1958
+ var _tmpl$22 = /* @__PURE__ */ template(`<style>.div-7612d942 {
1948
1959
  display: flex;
1949
1960
  line-height: normal;
1961
+ height: 100%;
1950
1962
  }`);
1951
1963
  function Columns(props) {
1952
1964
  const gutterSize = createMemo(() => {
@@ -2073,7 +2085,7 @@ function Columns(props) {
2073
2085
  const _el$ = _tmpl$3();
2074
2086
  spread(_el$, mergeProps({
2075
2087
  get ["class"]() {
2076
- return getColumnsClass(props.builderBlock?.id) + " div-6331dfc5";
2088
+ return getColumnsClass(props.builderBlock?.id) + " div-7612d942";
2077
2089
  },
2078
2090
  get style() {
2079
2091
  return columnsCssVars();
@@ -2198,16 +2210,16 @@ function getSrcSet(url) {
2198
2210
  // src/blocks/image/image.tsx
2199
2211
  var _tmpl$5 = /* @__PURE__ */ template(`<source type=image/webp>`);
2200
2212
  var _tmpl$23 = /* @__PURE__ */ template(`<picture><img>`);
2201
- var _tmpl$32 = /* @__PURE__ */ template(`<div class="builder-image-sizer div-dc6700b4">`);
2202
- var _tmpl$42 = /* @__PURE__ */ template(`<div class=div-dc6700b4-2>`);
2203
- var _tmpl$52 = /* @__PURE__ */ template(`<style>.img-dc6700b4 {
2213
+ var _tmpl$32 = /* @__PURE__ */ template(`<div class="builder-image-sizer div-040e729e">`);
2214
+ var _tmpl$42 = /* @__PURE__ */ template(`<div class=div-040e729e-2>`);
2215
+ var _tmpl$52 = /* @__PURE__ */ template(`<style>.img-040e729e {
2204
2216
  opacity: 1;
2205
2217
  transition: opacity 0.2s ease-in-out;
2206
- }.div-dc6700b4 {
2218
+ }.div-040e729e {
2207
2219
  width: 100%;
2208
2220
  pointer-events: none;
2209
2221
  font-size: 0;
2210
- }.div-dc6700b4-2 {
2222
+ }.div-040e729e-2 {
2211
2223
  display: flex;
2212
2224
  flex-direction: column;
2213
2225
  align-items: stretch;
@@ -2269,20 +2281,21 @@ function Image(props) {
2269
2281
  }
2270
2282
  }), _el$3);
2271
2283
  effect((_p$) => {
2272
- const _v$ = "builder-image" + (props.className ? " " + props.className : "") + " img-dc6700b4", _v$2 = props.highPriority ? "eager" : "lazy", _v$3 = props.highPriority ? "high" : "auto", _v$4 = props.altText, _v$5 = props.altText ? void 0 : "presentation", _v$6 = {
2284
+ 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 = {
2273
2285
  "object-position": props.backgroundPosition || "center",
2274
2286
  "object-fit": props.backgroundSize || "cover",
2275
2287
  ...aspectRatioCss()
2276
- }, _v$7 = props.image, _v$8 = srcSetToUse(), _v$9 = props.sizes;
2288
+ }, _v$8 = props.image, _v$9 = srcSetToUse(), _v$10 = props.sizes;
2277
2289
  _v$ !== _p$._v$ && className(_el$3, _p$._v$ = _v$);
2278
2290
  _v$2 !== _p$._v$2 && setAttribute(_el$3, "loading", _p$._v$2 = _v$2);
2279
2291
  _v$3 !== _p$._v$3 && setAttribute(_el$3, "fetchpriority", _p$._v$3 = _v$3);
2280
2292
  _v$4 !== _p$._v$4 && setAttribute(_el$3, "alt", _p$._v$4 = _v$4);
2281
- _v$5 !== _p$._v$5 && setAttribute(_el$3, "role", _p$._v$5 = _v$5);
2282
- _p$._v$6 = style(_el$3, _v$6, _p$._v$6);
2283
- _v$7 !== _p$._v$7 && setAttribute(_el$3, "src", _p$._v$7 = _v$7);
2284
- _v$8 !== _p$._v$8 && setAttribute(_el$3, "srcset", _p$._v$8 = _v$8);
2285
- _v$9 !== _p$._v$9 && setAttribute(_el$3, "sizes", _p$._v$9 = _v$9);
2293
+ _v$5 !== _p$._v$5 && setAttribute(_el$3, "title", _p$._v$5 = _v$5);
2294
+ _v$6 !== _p$._v$6 && setAttribute(_el$3, "role", _p$._v$6 = _v$6);
2295
+ _p$._v$7 = style(_el$3, _v$7, _p$._v$7);
2296
+ _v$8 !== _p$._v$8 && setAttribute(_el$3, "src", _p$._v$8 = _v$8);
2297
+ _v$9 !== _p$._v$9 && setAttribute(_el$3, "srcset", _p$._v$9 = _v$9);
2298
+ _v$10 !== _p$._v$10 && setAttribute(_el$3, "sizes", _p$._v$10 = _v$10);
2286
2299
  return _p$;
2287
2300
  }, {
2288
2301
  _v$: void 0,
@@ -2293,7 +2306,8 @@ function Image(props) {
2293
2306
  _v$6: void 0,
2294
2307
  _v$7: void 0,
2295
2308
  _v$8: void 0,
2296
- _v$9: void 0
2309
+ _v$9: void 0,
2310
+ _v$10: void 0
2297
2311
  });
2298
2312
  return _el$;
2299
2313
  })(), createComponent(Show, {
@@ -3276,6 +3290,10 @@ var componentInfo5 = {
3276
3290
  name: "altText",
3277
3291
  type: "string",
3278
3292
  helperText: "Text to display when the user has images off"
3293
+ }, {
3294
+ name: "title",
3295
+ type: "string",
3296
+ helperText: "Text to display when hovering over the asset"
3279
3297
  }, {
3280
3298
  name: "height",
3281
3299
  type: "number",
@@ -5498,7 +5516,7 @@ function getPreviewContent(_searchParams) {
5498
5516
  }
5499
5517
 
5500
5518
  // src/constants/sdk-version.ts
5501
- var SDK_VERSION = "4.0.3";
5519
+ var SDK_VERSION = "4.0.5";
5502
5520
 
5503
5521
  // src/helpers/sdk-headers.ts
5504
5522
  var getSdkHeaders = () => ({
@@ -1360,7 +1360,14 @@ function BlockWrapper(props) {
1360
1360
  var Block_wrapper_default = BlockWrapper;
1361
1361
 
1362
1362
  // src/components/block/components/component-ref/component-ref.tsx
1363
- import { Show as Show4, For, createSignal as createSignal3 } from "solid-js";
1363
+ import {
1364
+ Show as Show4,
1365
+ For,
1366
+ on,
1367
+ createEffect,
1368
+ createMemo as createMemo3,
1369
+ createSignal as createSignal3
1370
+ } from "solid-js";
1364
1371
  import { Dynamic as Dynamic3 } from "solid-js/web";
1365
1372
 
1366
1373
  // src/components/block/components/interactive-element.tsx
@@ -1444,9 +1451,27 @@ var getWrapperProps = ({
1444
1451
 
1445
1452
  // src/components/block/components/component-ref/component-ref.tsx
1446
1453
  function ComponentRef(props) {
1454
+ const [shouldUpdate, setShouldUpdate] = createSignal3(false);
1447
1455
  const [Wrapper, setWrapper] = createSignal3(
1448
1456
  props.isInteractive ? interactive_element_default : props.componentRef
1449
1457
  );
1458
+ const onUpdateFn_0_props_componentOptions = createMemo3(
1459
+ () => props.componentOptions
1460
+ );
1461
+ const onUpdateFn_0_props_blockChildren = createMemo3(
1462
+ () => props.blockChildren
1463
+ );
1464
+ function onUpdateFn_0() {
1465
+ }
1466
+ createEffect(
1467
+ on(
1468
+ () => [
1469
+ onUpdateFn_0_props_componentOptions(),
1470
+ onUpdateFn_0_props_blockChildren()
1471
+ ],
1472
+ onUpdateFn_0
1473
+ )
1474
+ );
1450
1475
  return <><Show4 when={props.componentRef}><Dynamic3
1451
1476
  {...getWrapperProps({
1452
1477
  componentOptions: props.componentOptions,
@@ -1644,9 +1669,10 @@ function Block(props) {
1644
1669
  var Block_default = Block;
1645
1670
 
1646
1671
  // src/components/blocks/blocks-wrapper.tsx
1647
- import { onMount as onMount3, createMemo as createMemo6 } from "solid-js";
1672
+ import { onMount as onMount3, on as on3, createEffect as createEffect3, createMemo as createMemo6, createSignal as createSignal6 } from "solid-js";
1648
1673
  import { Dynamic as Dynamic4 } from "solid-js/web";
1649
1674
  function BlocksWrapper(props) {
1675
+ const [shouldUpdate, setShouldUpdate] = createSignal6(false);
1650
1676
  const className = createMemo6(() => {
1651
1677
  return [
1652
1678
  "builder-blocks",
@@ -1693,9 +1719,13 @@ function BlocksWrapper(props) {
1693
1719
  let blocksWrapperRef;
1694
1720
  onMount3(() => {
1695
1721
  });
1722
+ const onUpdateFn_0_props_blocks = createMemo6(() => props.blocks);
1723
+ function onUpdateFn_0() {
1724
+ }
1725
+ createEffect3(on3(() => [onUpdateFn_0_props_blocks()], onUpdateFn_0));
1696
1726
  return <>
1697
1727
  <Dynamic4
1698
- class={className() + " dynamic-3d7ff108"}
1728
+ class={className() + " dynamic-023c60f2"}
1699
1729
  ref={blocksWrapperRef}
1700
1730
  builder-path={dataPath()}
1701
1731
  builder-parent-id={props.parent}
@@ -1707,7 +1737,7 @@ function BlocksWrapper(props) {
1707
1737
  {...props.BlocksWrapperProps}
1708
1738
  component={props.BlocksWrapper}
1709
1739
  >{props.children}</Dynamic4>
1710
- <style>{`.dynamic-3d7ff108 {
1740
+ <style>{`.dynamic-023c60f2 {
1711
1741
  display: flex;
1712
1742
  flex-direction: column;
1713
1743
  align-items: stretch;
@@ -1872,7 +1902,7 @@ function Columns(props) {
1872
1902
  }
1873
1903
  return <>
1874
1904
  <div
1875
- class={getColumnsClass(props.builderBlock?.id) + " div-6331dfc5"}
1905
+ class={getColumnsClass(props.builderBlock?.id) + " div-7612d942"}
1876
1906
  style={columnsCssVars()}
1877
1907
  {...{}}
1878
1908
  >
@@ -1901,9 +1931,10 @@ function Columns(props) {
1901
1931
  /></Dynamic_renderer_default>;
1902
1932
  }}</For4>
1903
1933
  </div>
1904
- <style>{`.div-6331dfc5 {
1934
+ <style>{`.div-7612d942 {
1905
1935
  display: flex;
1906
1936
  line-height: normal;
1937
+ height: 100%;
1907
1938
  }`}</style>
1908
1939
  </>;
1909
1940
  }
@@ -2010,10 +2041,11 @@ function Image(props) {
2010
2041
  <picture>
2011
2042
  <Show8 when={webpSrcSet()}><source type="image/webp" srcset={webpSrcSet()} /></Show8>
2012
2043
  <img
2013
- class={"builder-image" + (props.className ? " " + props.className : "") + " img-dc6700b4"}
2044
+ class={"builder-image" + (props.className ? " " + props.className : "") + " img-040e729e"}
2014
2045
  loading={props.highPriority ? "eager" : "lazy"}
2015
2046
  fetchpriority={props.highPriority ? "high" : "auto"}
2016
2047
  alt={props.altText}
2048
+ title={props.title}
2017
2049
  role={props.altText ? void 0 : "presentation"}
2018
2050
  style={{
2019
2051
  "object-position": props.backgroundPosition || "center",
@@ -2028,22 +2060,22 @@ function Image(props) {
2028
2060
  <Show8
2029
2061
  when={props.aspectRatio && !(props.builderBlock?.children?.length && props.fitContent)}
2030
2062
  ><div
2031
- class="builder-image-sizer div-dc6700b4"
2063
+ class="builder-image-sizer div-040e729e"
2032
2064
  style={{
2033
2065
  "padding-top": props.aspectRatio * 100 + "%"
2034
2066
  }}
2035
2067
  /></Show8>
2036
2068
  <Show8 when={props.builderBlock?.children?.length && props.fitContent}>{props.children}</Show8>
2037
- <Show8 when={!props.fitContent && props.builderBlock?.children?.length}><div class="div-dc6700b4-2">{props.children}</div></Show8>
2069
+ <Show8 when={!props.fitContent && props.builderBlock?.children?.length}><div class="div-040e729e-2">{props.children}</div></Show8>
2038
2070
  </>
2039
- <style>{`.img-dc6700b4 {
2071
+ <style>{`.img-040e729e {
2040
2072
  opacity: 1;
2041
2073
  transition: opacity 0.2s ease-in-out;
2042
- }.div-dc6700b4 {
2074
+ }.div-040e729e {
2043
2075
  width: 100%;
2044
2076
  pointer-events: none;
2045
2077
  font-size: 0;
2046
- }.div-dc6700b4-2 {
2078
+ }.div-040e729e-2 {
2047
2079
  display: flex;
2048
2080
  flex-direction: column;
2049
2081
  align-items: stretch;
@@ -2079,7 +2111,7 @@ function SectionComponent(props) {
2079
2111
  var section_default = SectionComponent;
2080
2112
 
2081
2113
  // src/blocks/symbol/symbol.tsx
2082
- import { onMount as onMount9, on as on5, createEffect as createEffect5, createMemo as createMemo20, createSignal as createSignal20 } from "solid-js";
2114
+ import { onMount as onMount9, on as on7, createEffect as createEffect7, createMemo as createMemo20, createSignal as createSignal20 } from "solid-js";
2083
2115
 
2084
2116
  // src/components/content-variants/content-variants.tsx
2085
2117
  import { Show as Show16, For as For9, onMount as onMount8, createSignal as createSignal19, createMemo as createMemo19 } from "solid-js";
@@ -2977,6 +3009,10 @@ var componentInfo5 = {
2977
3009
  name: "altText",
2978
3010
  type: "string",
2979
3011
  helperText: "Text to display when the user has images off"
3012
+ }, {
3013
+ name: "title",
3014
+ type: "string",
3015
+ helperText: "Text to display when hovering over the asset"
2980
3016
  }, {
2981
3017
  name: "height",
2982
3018
  type: "number",
@@ -3787,7 +3823,7 @@ var componentInfo12 = {
3787
3823
  };
3788
3824
 
3789
3825
  // src/blocks/custom-code/custom-code.tsx
3790
- import { onMount as onMount5, on as on2, createEffect as createEffect2, createMemo as createMemo12, createSignal as createSignal12 } from "solid-js";
3826
+ import { onMount as onMount5, on as on4, createEffect as createEffect4, createMemo as createMemo12, createSignal as createSignal12 } from "solid-js";
3791
3827
  function CustomCode(props) {
3792
3828
  const [scriptsInserted, setScriptsInserted] = createSignal12([]);
3793
3829
  const [scriptsRun, setScriptsRun] = createSignal12([]);
@@ -3837,7 +3873,7 @@ function CustomCode(props) {
3837
3873
  runScripts();
3838
3874
  }
3839
3875
  }
3840
- createEffect2(on2(() => [onUpdateFn_0_props_code()], onUpdateFn_0));
3876
+ createEffect4(on4(() => [onUpdateFn_0_props_code()], onUpdateFn_0));
3841
3877
  return <><div
3842
3878
  class={"builder-custom-code" + (props.replaceNodes ? " replace-nodes" : "")}
3843
3879
  ref={elementRef}
@@ -3865,7 +3901,7 @@ var componentInfo13 = {
3865
3901
  };
3866
3902
 
3867
3903
  // src/blocks/embed/embed.tsx
3868
- import { on as on3, createEffect as createEffect3, createMemo as createMemo13, createSignal as createSignal13 } from "solid-js";
3904
+ import { on as on5, createEffect as createEffect5, createMemo as createMemo13, createSignal as createSignal13 } from "solid-js";
3869
3905
 
3870
3906
  // src/blocks/embed/helpers.ts
3871
3907
  var SCRIPT_MIME_TYPES = ["text/javascript", "application/javascript", "application/ecmascript"];
@@ -3907,8 +3943,8 @@ function Embed(props) {
3907
3943
  findAndRunScripts();
3908
3944
  }
3909
3945
  }
3910
- createEffect3(
3911
- on3(() => [onUpdateFn_0_elem(), onUpdateFn_0_ranInitFn__()], onUpdateFn_0)
3946
+ createEffect5(
3947
+ on5(() => [onUpdateFn_0_elem(), onUpdateFn_0_ranInitFn__()], onUpdateFn_0)
3912
3948
  );
3913
3949
  return <><div class="builder-embed" ref={elem} innerHTML={props.content} /></>;
3914
3950
  }
@@ -4999,8 +5035,8 @@ var getUpdateVariantVisibilityScript = ({
4999
5035
  import {
5000
5036
  Show as Show14,
5001
5037
  onMount as onMount7,
5002
- on as on4,
5003
- createEffect as createEffect4,
5038
+ on as on6,
5039
+ createEffect as createEffect6,
5004
5040
  createMemo as createMemo16,
5005
5041
  createSignal as createSignal16
5006
5042
  } from "solid-js";
@@ -5012,7 +5048,7 @@ function getPreviewContent(_searchParams) {
5012
5048
  }
5013
5049
 
5014
5050
  // src/constants/sdk-version.ts
5015
- var SDK_VERSION = "4.0.3";
5051
+ var SDK_VERSION = "4.0.5";
5016
5052
 
5017
5053
  // src/helpers/sdk-headers.ts
5018
5054
  var getSdkHeaders = () => ({
@@ -6097,15 +6133,15 @@ function EnableEditor(props) {
6097
6133
  mergeNewContent(props.content);
6098
6134
  }
6099
6135
  }
6100
- createEffect4(on4(() => [onUpdateFn_0_props_content()], onUpdateFn_0));
6136
+ createEffect6(on6(() => [onUpdateFn_0_props_content()], onUpdateFn_0));
6101
6137
  const onUpdateFn_1_props_builderContextSignal_rootState = createMemo16(
6102
6138
  () => props.builderContextSignal.rootState
6103
6139
  );
6104
6140
  function onUpdateFn_1() {
6105
6141
  emitStateUpdate();
6106
6142
  }
6107
- createEffect4(
6108
- on4(
6143
+ createEffect6(
6144
+ on6(
6109
6145
  () => [onUpdateFn_1_props_builderContextSignal_rootState()],
6110
6146
  onUpdateFn_1
6111
6147
  )
@@ -6116,7 +6152,7 @@ function EnableEditor(props) {
6116
6152
  mergeNewRootState(props.data);
6117
6153
  }
6118
6154
  }
6119
- createEffect4(on4(() => [onUpdateFn_2_props_data()], onUpdateFn_2));
6155
+ createEffect6(on6(() => [onUpdateFn_2_props_data()], onUpdateFn_2));
6120
6156
  const onUpdateFn_3_props_locale = createMemo16(() => props.locale);
6121
6157
  function onUpdateFn_3() {
6122
6158
  if (props.locale) {
@@ -6125,7 +6161,7 @@ function EnableEditor(props) {
6125
6161
  });
6126
6162
  }
6127
6163
  }
6128
- createEffect4(on4(() => [onUpdateFn_3_props_locale()], onUpdateFn_3));
6164
+ createEffect6(on6(() => [onUpdateFn_3_props_locale()], onUpdateFn_3));
6129
6165
  return <><builder_context_default.Provider value={props.builderContextSignal}><Show14
6130
6166
  when={props.builderContextSignal.content || needsElementRefDivForEditing()}
6131
6167
  ><Dynamic5
@@ -6503,7 +6539,7 @@ function Symbol(props) {
6503
6539
  function onUpdateFn_0() {
6504
6540
  setContent();
6505
6541
  }
6506
- createEffect5(on5(() => [onUpdateFn_0_props_symbol()], onUpdateFn_0));
6542
+ createEffect7(on7(() => [onUpdateFn_0_props_symbol()], onUpdateFn_0));
6507
6543
  return <><div class={className()} {...{}} {...props.attributes} {...{}}><Content_variants_default
6508
6544
  nonce={props.builderContext.nonce}
6509
6545
  isNestedRender={true}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@builder.io/sdk-solid",
3
- "version": "4.0.3",
3
+ "version": "4.0.5",
4
4
  "description": "",
5
5
  "files": [
6
6
  "dist",