@builder.io/sdk-solid 2.0.1 → 2.0.2

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.
@@ -1808,16 +1808,16 @@ function getSrcSet(url) {
1808
1808
  // src/blocks/image/image.tsx
1809
1809
  var _tmpl$5 = /* @__PURE__ */ template(`<source type=image/webp>`);
1810
1810
  var _tmpl$23 = /* @__PURE__ */ template(`<picture><img>`);
1811
- var _tmpl$32 = /* @__PURE__ */ template(`<div class="builder-image-sizer div-54b38751">`);
1812
- var _tmpl$42 = /* @__PURE__ */ template(`<div class=div-54b38751-2>`);
1813
- var _tmpl$52 = /* @__PURE__ */ template(`<style>.img-54b38751 {
1811
+ var _tmpl$32 = /* @__PURE__ */ template(`<div class="builder-image-sizer div-e3b1053e">`);
1812
+ var _tmpl$42 = /* @__PURE__ */ template(`<div class=div-e3b1053e-2>`);
1813
+ var _tmpl$52 = /* @__PURE__ */ template(`<style>.img-e3b1053e {
1814
1814
  opacity: 1;
1815
1815
  transition: opacity 0.2s ease-in-out;
1816
- }.div-54b38751 {
1816
+ }.div-e3b1053e {
1817
1817
  width: 100%;
1818
1818
  pointer-events: none;
1819
1819
  font-size: 0;
1820
- }.div-54b38751-2 {
1820
+ }.div-e3b1053e-2 {
1821
1821
  display: flex;
1822
1822
  flex-direction: column;
1823
1823
  align-items: stretch;
@@ -1836,6 +1836,9 @@ function Image(props) {
1836
1836
  !(url.match(/builder\.io/) || url.match(/cdn\.shopify\.com/))) {
1837
1837
  return props.srcset;
1838
1838
  }
1839
+ if (props.noWebp) {
1840
+ return void 0;
1841
+ }
1839
1842
  if (props.srcset && props.image?.includes("builder.io/api/v1/image")) {
1840
1843
  if (!props.srcset.includes(props.image.split("?")[0])) {
1841
1844
  console.debug("Removed given srcset");
@@ -1877,7 +1880,7 @@ function Image(props) {
1877
1880
  }
1878
1881
  }), _el$3);
1879
1882
  effect((_p$) => {
1880
- const _v$ = "builder-image" + (props.className ? " " + props.className : "") + " img-54b38751", _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 = {
1883
+ const _v$ = "builder-image" + (props.className ? " " + props.className : "") + " img-e3b1053e", _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 = {
1881
1884
  "object-position": props.backgroundPosition || "center",
1882
1885
  "object-fit": props.backgroundSize || "cover",
1883
1886
  ...aspectRatioCss()
@@ -5148,7 +5151,7 @@ function isFromTrustedHost(trustedHosts, e) {
5148
5151
  }
5149
5152
 
5150
5153
  // src/constants/sdk-version.ts
5151
- var SDK_VERSION = "2.0.1";
5154
+ var SDK_VERSION = "2.0.2";
5152
5155
 
5153
5156
  // src/functions/register.ts
5154
5157
  var registry = {};
@@ -5783,7 +5786,15 @@ function ContentComponent(props) {
5783
5786
  // eslint-disable-next-line @typescript-eslint/no-non-null-assertion, @typescript-eslint/no-non-null-asserted-optional-chain
5784
5787
  contentId: props.content?.id
5785
5788
  }));
5786
- const [registeredComponents, setRegisteredComponents] = createSignal([...getDefaultRegisteredComponents(), ...props.customComponents || []].reduce((acc, {
5789
+ const [registeredComponents, setRegisteredComponents] = createSignal([...getDefaultRegisteredComponents(), ...props.customComponents?.filter(({
5790
+ models
5791
+ }) => {
5792
+ if (!models?.length)
5793
+ return true;
5794
+ if (!props.model)
5795
+ return true;
5796
+ return models.includes(props.model);
5797
+ }) || []].reduce((acc, {
5787
5798
  component,
5788
5799
  ...info
5789
5800
  }) => ({
@@ -5809,7 +5820,15 @@ function ContentComponent(props) {
5809
5820
  canTrack: props.canTrack,
5810
5821
  apiKey: props.apiKey,
5811
5822
  apiVersion: props.apiVersion,
5812
- componentInfos: [...getDefaultRegisteredComponents(), ...props.customComponents || []].reduce((acc, {
5823
+ componentInfos: [...getDefaultRegisteredComponents(), ...props.customComponents?.filter(({
5824
+ models
5825
+ }) => {
5826
+ if (!models?.length)
5827
+ return true;
5828
+ if (!props.model)
5829
+ return true;
5830
+ return models.includes(props.model);
5831
+ }) || []].reduce((acc, {
5813
5832
  component: _,
5814
5833
  ...info
5815
5834
  }) => ({
@@ -1605,6 +1605,9 @@ function Image(props) {
1605
1605
  !(url.match(/builder\.io/) || url.match(/cdn\.shopify\.com/))) {
1606
1606
  return props.srcset;
1607
1607
  }
1608
+ if (props.noWebp) {
1609
+ return void 0;
1610
+ }
1608
1611
  if (props.srcset && props.image?.includes("builder.io/api/v1/image")) {
1609
1612
  if (!props.srcset.includes(props.image.split("?")[0])) {
1610
1613
  console.debug("Removed given srcset");
@@ -1638,7 +1641,7 @@ function Image(props) {
1638
1641
  <picture>
1639
1642
  <Show7 when={webpSrcSet()}><source type="image/webp" srcset={webpSrcSet()} /></Show7>
1640
1643
  <img
1641
- class={"builder-image" + (props.className ? " " + props.className : "") + " img-54b38751"}
1644
+ class={"builder-image" + (props.className ? " " + props.className : "") + " img-e3b1053e"}
1642
1645
  loading={props.highPriority ? "eager" : "lazy"}
1643
1646
  fetchpriority={props.highPriority ? "high" : "auto"}
1644
1647
  alt={props.altText}
@@ -1656,22 +1659,22 @@ function Image(props) {
1656
1659
  <Show7
1657
1660
  when={props.aspectRatio && !(props.builderBlock?.children?.length && props.fitContent)}
1658
1661
  ><div
1659
- class="builder-image-sizer div-54b38751"
1662
+ class="builder-image-sizer div-e3b1053e"
1660
1663
  style={{
1661
1664
  "padding-top": props.aspectRatio * 100 + "%"
1662
1665
  }}
1663
1666
  /></Show7>
1664
1667
  <Show7 when={props.builderBlock?.children?.length && props.fitContent}>{props.children}</Show7>
1665
- <Show7 when={!props.fitContent && props.builderBlock?.children?.length}><div class="div-54b38751-2">{props.children}</div></Show7>
1668
+ <Show7 when={!props.fitContent && props.builderBlock?.children?.length}><div class="div-e3b1053e-2">{props.children}</div></Show7>
1666
1669
  </>
1667
- <style>{`.img-54b38751 {
1670
+ <style>{`.img-e3b1053e {
1668
1671
  opacity: 1;
1669
1672
  transition: opacity 0.2s ease-in-out;
1670
- }.div-54b38751 {
1673
+ }.div-e3b1053e {
1671
1674
  width: 100%;
1672
1675
  pointer-events: none;
1673
1676
  font-size: 0;
1674
- }.div-54b38751-2 {
1677
+ }.div-e3b1053e-2 {
1675
1678
  display: flex;
1676
1679
  flex-direction: column;
1677
1680
  align-items: stretch;
@@ -1707,16 +1710,10 @@ function SectionComponent(props) {
1707
1710
  var section_default = SectionComponent;
1708
1711
 
1709
1712
  // src/blocks/symbol/symbol.tsx
1710
- import { onMount as onMount5, on as on4, createEffect as createEffect4, createMemo as createMemo19, createSignal as createSignal19 } from "solid-js";
1713
+ import { onMount as onMount5, on as on3, createEffect as createEffect3, createMemo as createMemo19, createSignal as createSignal19 } from "solid-js";
1711
1714
 
1712
1715
  // src/components/content-variants/content-variants.tsx
1713
- import {
1714
- Show as Show14,
1715
- For as For9,
1716
- onMount as onMount4,
1717
- createMemo as createMemo18,
1718
- createSignal as createSignal18
1719
- } from "solid-js";
1716
+ import { Show as Show14, For as For9, onMount as onMount4, createSignal as createSignal18, createMemo as createMemo18 } from "solid-js";
1720
1717
 
1721
1718
  // src/helpers/url.ts
1722
1719
  var getTopLevelDomain = (host) => {
@@ -4667,7 +4664,7 @@ function isFromTrustedHost(trustedHosts, e) {
4667
4664
  }
4668
4665
 
4669
4666
  // src/constants/sdk-version.ts
4670
- var SDK_VERSION = "2.0.1";
4667
+ var SDK_VERSION = "2.0.2";
4671
4668
 
4672
4669
  // src/functions/register.ts
4673
4670
  var registry = {};
@@ -5321,7 +5318,13 @@ function ContentComponent(props) {
5321
5318
  const [registeredComponents, setRegisteredComponents] = createSignal17(
5322
5319
  [
5323
5320
  ...getDefaultRegisteredComponents(),
5324
- ...props.customComponents || []
5321
+ ...props.customComponents?.filter(({ models }) => {
5322
+ if (!models?.length)
5323
+ return true;
5324
+ if (!props.model)
5325
+ return true;
5326
+ return models.includes(props.model);
5327
+ }) || []
5325
5328
  ].reduce(
5326
5329
  (acc, { component, ...info }) => ({
5327
5330
  ...acc,
@@ -5351,7 +5354,13 @@ function ContentComponent(props) {
5351
5354
  apiVersion: props.apiVersion,
5352
5355
  componentInfos: [
5353
5356
  ...getDefaultRegisteredComponents(),
5354
- ...props.customComponents || []
5357
+ ...props.customComponents?.filter(({ models }) => {
5358
+ if (!models?.length)
5359
+ return true;
5360
+ if (!props.model)
5361
+ return true;
5362
+ return models.includes(props.model);
5363
+ }) || []
5355
5364
  ].reduce(
5356
5365
  (acc, { component: _, ...info }) => ({
5357
5366
  ...acc,
@@ -5577,7 +5586,7 @@ function Symbol(props) {
5577
5586
  function onUpdateFn_0() {
5578
5587
  setContent();
5579
5588
  }
5580
- createEffect4(on4(() => [onUpdateFn_0_props_symbol()], onUpdateFn_0));
5589
+ createEffect3(on3(() => [onUpdateFn_0_props_symbol()], onUpdateFn_0));
5581
5590
  return <><div class={className()} {...{}} {...props.attributes} {...{}}><Content_variants_default
5582
5591
  nonce={props.builderContext.nonce}
5583
5592
  isNestedRender={true}
@@ -1802,16 +1802,16 @@ function getSrcSet(url) {
1802
1802
  // src/blocks/image/image.tsx
1803
1803
  var _tmpl$5 = /* @__PURE__ */ template(`<source type=image/webp>`);
1804
1804
  var _tmpl$23 = /* @__PURE__ */ template(`<picture><img>`);
1805
- var _tmpl$32 = /* @__PURE__ */ template(`<div class="builder-image-sizer div-54b38751">`);
1806
- var _tmpl$42 = /* @__PURE__ */ template(`<div class=div-54b38751-2>`);
1807
- var _tmpl$52 = /* @__PURE__ */ template(`<style>.img-54b38751 {
1805
+ var _tmpl$32 = /* @__PURE__ */ template(`<div class="builder-image-sizer div-e3b1053e">`);
1806
+ var _tmpl$42 = /* @__PURE__ */ template(`<div class=div-e3b1053e-2>`);
1807
+ var _tmpl$52 = /* @__PURE__ */ template(`<style>.img-e3b1053e {
1808
1808
  opacity: 1;
1809
1809
  transition: opacity 0.2s ease-in-out;
1810
- }.div-54b38751 {
1810
+ }.div-e3b1053e {
1811
1811
  width: 100%;
1812
1812
  pointer-events: none;
1813
1813
  font-size: 0;
1814
- }.div-54b38751-2 {
1814
+ }.div-e3b1053e-2 {
1815
1815
  display: flex;
1816
1816
  flex-direction: column;
1817
1817
  align-items: stretch;
@@ -1830,6 +1830,9 @@ function Image(props) {
1830
1830
  !(url.match(/builder\.io/) || url.match(/cdn\.shopify\.com/))) {
1831
1831
  return props.srcset;
1832
1832
  }
1833
+ if (props.noWebp) {
1834
+ return void 0;
1835
+ }
1833
1836
  if (props.srcset && props.image?.includes("builder.io/api/v1/image")) {
1834
1837
  if (!props.srcset.includes(props.image.split("?")[0])) {
1835
1838
  return getSrcSet(url);
@@ -1870,7 +1873,7 @@ function Image(props) {
1870
1873
  }
1871
1874
  }), _el$3);
1872
1875
  effect((_p$) => {
1873
- const _v$ = "builder-image" + (props.className ? " " + props.className : "") + " img-54b38751", _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 = {
1876
+ const _v$ = "builder-image" + (props.className ? " " + props.className : "") + " img-e3b1053e", _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 = {
1874
1877
  "object-position": props.backgroundPosition || "center",
1875
1878
  "object-fit": props.backgroundSize || "cover",
1876
1879
  ...aspectRatioCss()
@@ -5133,7 +5136,7 @@ function isFromTrustedHost(trustedHosts, e) {
5133
5136
  }
5134
5137
 
5135
5138
  // src/constants/sdk-version.ts
5136
- var SDK_VERSION = "2.0.1";
5139
+ var SDK_VERSION = "2.0.2";
5137
5140
 
5138
5141
  // src/functions/register.ts
5139
5142
  var registry = {};
@@ -5766,7 +5769,15 @@ function ContentComponent(props) {
5766
5769
  // eslint-disable-next-line @typescript-eslint/no-non-null-assertion, @typescript-eslint/no-non-null-asserted-optional-chain
5767
5770
  contentId: props.content?.id
5768
5771
  }));
5769
- const [registeredComponents, setRegisteredComponents] = createSignal([...getDefaultRegisteredComponents(), ...props.customComponents || []].reduce((acc, {
5772
+ const [registeredComponents, setRegisteredComponents] = createSignal([...getDefaultRegisteredComponents(), ...props.customComponents?.filter(({
5773
+ models
5774
+ }) => {
5775
+ if (!models?.length)
5776
+ return true;
5777
+ if (!props.model)
5778
+ return true;
5779
+ return models.includes(props.model);
5780
+ }) || []].reduce((acc, {
5770
5781
  component,
5771
5782
  ...info
5772
5783
  }) => ({
@@ -5792,7 +5803,15 @@ function ContentComponent(props) {
5792
5803
  canTrack: props.canTrack,
5793
5804
  apiKey: props.apiKey,
5794
5805
  apiVersion: props.apiVersion,
5795
- componentInfos: [...getDefaultRegisteredComponents(), ...props.customComponents || []].reduce((acc, {
5806
+ componentInfos: [...getDefaultRegisteredComponents(), ...props.customComponents?.filter(({
5807
+ models
5808
+ }) => {
5809
+ if (!models?.length)
5810
+ return true;
5811
+ if (!props.model)
5812
+ return true;
5813
+ return models.includes(props.model);
5814
+ }) || []].reduce((acc, {
5796
5815
  component: _,
5797
5816
  ...info
5798
5817
  }) => ({
@@ -1599,6 +1599,9 @@ function Image(props) {
1599
1599
  !(url.match(/builder\.io/) || url.match(/cdn\.shopify\.com/))) {
1600
1600
  return props.srcset;
1601
1601
  }
1602
+ if (props.noWebp) {
1603
+ return void 0;
1604
+ }
1602
1605
  if (props.srcset && props.image?.includes("builder.io/api/v1/image")) {
1603
1606
  if (!props.srcset.includes(props.image.split("?")[0])) {
1604
1607
  return getSrcSet(url);
@@ -1631,7 +1634,7 @@ function Image(props) {
1631
1634
  <picture>
1632
1635
  <Show7 when={webpSrcSet()}><source type="image/webp" srcset={webpSrcSet()} /></Show7>
1633
1636
  <img
1634
- class={"builder-image" + (props.className ? " " + props.className : "") + " img-54b38751"}
1637
+ class={"builder-image" + (props.className ? " " + props.className : "") + " img-e3b1053e"}
1635
1638
  loading={props.highPriority ? "eager" : "lazy"}
1636
1639
  fetchpriority={props.highPriority ? "high" : "auto"}
1637
1640
  alt={props.altText}
@@ -1649,22 +1652,22 @@ function Image(props) {
1649
1652
  <Show7
1650
1653
  when={props.aspectRatio && !(props.builderBlock?.children?.length && props.fitContent)}
1651
1654
  ><div
1652
- class="builder-image-sizer div-54b38751"
1655
+ class="builder-image-sizer div-e3b1053e"
1653
1656
  style={{
1654
1657
  "padding-top": props.aspectRatio * 100 + "%"
1655
1658
  }}
1656
1659
  /></Show7>
1657
1660
  <Show7 when={props.builderBlock?.children?.length && props.fitContent}>{props.children}</Show7>
1658
- <Show7 when={!props.fitContent && props.builderBlock?.children?.length}><div class="div-54b38751-2">{props.children}</div></Show7>
1661
+ <Show7 when={!props.fitContent && props.builderBlock?.children?.length}><div class="div-e3b1053e-2">{props.children}</div></Show7>
1659
1662
  </>
1660
- <style>{`.img-54b38751 {
1663
+ <style>{`.img-e3b1053e {
1661
1664
  opacity: 1;
1662
1665
  transition: opacity 0.2s ease-in-out;
1663
- }.div-54b38751 {
1666
+ }.div-e3b1053e {
1664
1667
  width: 100%;
1665
1668
  pointer-events: none;
1666
1669
  font-size: 0;
1667
- }.div-54b38751-2 {
1670
+ }.div-e3b1053e-2 {
1668
1671
  display: flex;
1669
1672
  flex-direction: column;
1670
1673
  align-items: stretch;
@@ -1700,16 +1703,10 @@ function SectionComponent(props) {
1700
1703
  var section_default = SectionComponent;
1701
1704
 
1702
1705
  // src/blocks/symbol/symbol.tsx
1703
- import { onMount as onMount5, on as on4, createEffect as createEffect4, createMemo as createMemo19, createSignal as createSignal19 } from "solid-js";
1706
+ import { onMount as onMount5, on as on3, createEffect as createEffect3, createMemo as createMemo19, createSignal as createSignal19 } from "solid-js";
1704
1707
 
1705
1708
  // src/components/content-variants/content-variants.tsx
1706
- import {
1707
- Show as Show14,
1708
- For as For9,
1709
- onMount as onMount4,
1710
- createMemo as createMemo18,
1711
- createSignal as createSignal18
1712
- } from "solid-js";
1709
+ import { Show as Show14, For as For9, onMount as onMount4, createSignal as createSignal18, createMemo as createMemo18 } from "solid-js";
1713
1710
 
1714
1711
  // src/helpers/url.ts
1715
1712
  var getTopLevelDomain = (host) => {
@@ -4652,7 +4649,7 @@ function isFromTrustedHost(trustedHosts, e) {
4652
4649
  }
4653
4650
 
4654
4651
  // src/constants/sdk-version.ts
4655
- var SDK_VERSION = "2.0.1";
4652
+ var SDK_VERSION = "2.0.2";
4656
4653
 
4657
4654
  // src/functions/register.ts
4658
4655
  var registry = {};
@@ -5304,7 +5301,13 @@ function ContentComponent(props) {
5304
5301
  const [registeredComponents, setRegisteredComponents] = createSignal17(
5305
5302
  [
5306
5303
  ...getDefaultRegisteredComponents(),
5307
- ...props.customComponents || []
5304
+ ...props.customComponents?.filter(({ models }) => {
5305
+ if (!models?.length)
5306
+ return true;
5307
+ if (!props.model)
5308
+ return true;
5309
+ return models.includes(props.model);
5310
+ }) || []
5308
5311
  ].reduce(
5309
5312
  (acc, { component, ...info }) => ({
5310
5313
  ...acc,
@@ -5334,7 +5337,13 @@ function ContentComponent(props) {
5334
5337
  apiVersion: props.apiVersion,
5335
5338
  componentInfos: [
5336
5339
  ...getDefaultRegisteredComponents(),
5337
- ...props.customComponents || []
5340
+ ...props.customComponents?.filter(({ models }) => {
5341
+ if (!models?.length)
5342
+ return true;
5343
+ if (!props.model)
5344
+ return true;
5345
+ return models.includes(props.model);
5346
+ }) || []
5338
5347
  ].reduce(
5339
5348
  (acc, { component: _, ...info }) => ({
5340
5349
  ...acc,
@@ -5560,7 +5569,7 @@ function Symbol(props) {
5560
5569
  function onUpdateFn_0() {
5561
5570
  setContent();
5562
5571
  }
5563
- createEffect4(on4(() => [onUpdateFn_0_props_symbol()], onUpdateFn_0));
5572
+ createEffect3(on3(() => [onUpdateFn_0_props_symbol()], onUpdateFn_0));
5564
5573
  return <><div class={className()} {...{}} {...props.attributes} {...{}}><Content_variants_default
5565
5574
  nonce={props.builderContext.nonce}
5566
5575
  isNestedRender={true}
package/lib/edge/dev.js CHANGED
@@ -4954,16 +4954,16 @@ function getSrcSet(url) {
4954
4954
  // src/blocks/image/image.tsx
4955
4955
  var _tmpl$5 = /* @__PURE__ */ template(`<source type=image/webp>`);
4956
4956
  var _tmpl$23 = /* @__PURE__ */ template(`<picture><img>`);
4957
- var _tmpl$32 = /* @__PURE__ */ template(`<div class="builder-image-sizer div-54b38751">`);
4958
- var _tmpl$42 = /* @__PURE__ */ template(`<div class=div-54b38751-2>`);
4959
- var _tmpl$52 = /* @__PURE__ */ template(`<style>.img-54b38751 {
4957
+ var _tmpl$32 = /* @__PURE__ */ template(`<div class="builder-image-sizer div-e3b1053e">`);
4958
+ var _tmpl$42 = /* @__PURE__ */ template(`<div class=div-e3b1053e-2>`);
4959
+ var _tmpl$52 = /* @__PURE__ */ template(`<style>.img-e3b1053e {
4960
4960
  opacity: 1;
4961
4961
  transition: opacity 0.2s ease-in-out;
4962
- }.div-54b38751 {
4962
+ }.div-e3b1053e {
4963
4963
  width: 100%;
4964
4964
  pointer-events: none;
4965
4965
  font-size: 0;
4966
- }.div-54b38751-2 {
4966
+ }.div-e3b1053e-2 {
4967
4967
  display: flex;
4968
4968
  flex-direction: column;
4969
4969
  align-items: stretch;
@@ -4982,6 +4982,9 @@ function Image(props) {
4982
4982
  !(url.match(/builder\.io/) || url.match(/cdn\.shopify\.com/))) {
4983
4983
  return props.srcset;
4984
4984
  }
4985
+ if (props.noWebp) {
4986
+ return void 0;
4987
+ }
4985
4988
  if (props.srcset && props.image?.includes("builder.io/api/v1/image")) {
4986
4989
  if (!props.srcset.includes(props.image.split("?")[0])) {
4987
4990
  console.debug("Removed given srcset");
@@ -5023,7 +5026,7 @@ function Image(props) {
5023
5026
  }
5024
5027
  }), _el$3);
5025
5028
  effect((_p$) => {
5026
- const _v$ = "builder-image" + (props.className ? " " + props.className : "") + " img-54b38751", _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 = {
5029
+ const _v$ = "builder-image" + (props.className ? " " + props.className : "") + " img-e3b1053e", _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 = {
5027
5030
  "object-position": props.backgroundPosition || "center",
5028
5031
  "object-fit": props.backgroundSize || "cover",
5029
5032
  ...aspectRatioCss()
@@ -8294,7 +8297,7 @@ function isFromTrustedHost(trustedHosts, e) {
8294
8297
  }
8295
8298
 
8296
8299
  // src/constants/sdk-version.ts
8297
- var SDK_VERSION = "2.0.1";
8300
+ var SDK_VERSION = "2.0.2";
8298
8301
 
8299
8302
  // src/functions/register.ts
8300
8303
  var registry = {};
@@ -8929,7 +8932,15 @@ function ContentComponent(props) {
8929
8932
  // eslint-disable-next-line @typescript-eslint/no-non-null-assertion, @typescript-eslint/no-non-null-asserted-optional-chain
8930
8933
  contentId: props.content?.id
8931
8934
  }));
8932
- const [registeredComponents, setRegisteredComponents] = createSignal([...getDefaultRegisteredComponents(), ...props.customComponents || []].reduce((acc, {
8935
+ const [registeredComponents, setRegisteredComponents] = createSignal([...getDefaultRegisteredComponents(), ...props.customComponents?.filter(({
8936
+ models
8937
+ }) => {
8938
+ if (!models?.length)
8939
+ return true;
8940
+ if (!props.model)
8941
+ return true;
8942
+ return models.includes(props.model);
8943
+ }) || []].reduce((acc, {
8933
8944
  component,
8934
8945
  ...info
8935
8946
  }) => ({
@@ -8955,7 +8966,15 @@ function ContentComponent(props) {
8955
8966
  canTrack: props.canTrack,
8956
8967
  apiKey: props.apiKey,
8957
8968
  apiVersion: props.apiVersion,
8958
- componentInfos: [...getDefaultRegisteredComponents(), ...props.customComponents || []].reduce((acc, {
8969
+ componentInfos: [...getDefaultRegisteredComponents(), ...props.customComponents?.filter(({
8970
+ models
8971
+ }) => {
8972
+ if (!models?.length)
8973
+ return true;
8974
+ if (!props.model)
8975
+ return true;
8976
+ return models.includes(props.model);
8977
+ }) || []].reduce((acc, {
8959
8978
  component: _,
8960
8979
  ...info
8961
8980
  }) => ({
package/lib/edge/dev.jsx CHANGED
@@ -4753,6 +4753,9 @@ function Image(props) {
4753
4753
  !(url.match(/builder\.io/) || url.match(/cdn\.shopify\.com/))) {
4754
4754
  return props.srcset;
4755
4755
  }
4756
+ if (props.noWebp) {
4757
+ return void 0;
4758
+ }
4756
4759
  if (props.srcset && props.image?.includes("builder.io/api/v1/image")) {
4757
4760
  if (!props.srcset.includes(props.image.split("?")[0])) {
4758
4761
  console.debug("Removed given srcset");
@@ -4786,7 +4789,7 @@ function Image(props) {
4786
4789
  <picture>
4787
4790
  <Show7 when={webpSrcSet()}><source type="image/webp" srcset={webpSrcSet()} /></Show7>
4788
4791
  <img
4789
- class={"builder-image" + (props.className ? " " + props.className : "") + " img-54b38751"}
4792
+ class={"builder-image" + (props.className ? " " + props.className : "") + " img-e3b1053e"}
4790
4793
  loading={props.highPriority ? "eager" : "lazy"}
4791
4794
  fetchpriority={props.highPriority ? "high" : "auto"}
4792
4795
  alt={props.altText}
@@ -4804,22 +4807,22 @@ function Image(props) {
4804
4807
  <Show7
4805
4808
  when={props.aspectRatio && !(props.builderBlock?.children?.length && props.fitContent)}
4806
4809
  ><div
4807
- class="builder-image-sizer div-54b38751"
4810
+ class="builder-image-sizer div-e3b1053e"
4808
4811
  style={{
4809
4812
  "padding-top": props.aspectRatio * 100 + "%"
4810
4813
  }}
4811
4814
  /></Show7>
4812
4815
  <Show7 when={props.builderBlock?.children?.length && props.fitContent}>{props.children}</Show7>
4813
- <Show7 when={!props.fitContent && props.builderBlock?.children?.length}><div class="div-54b38751-2">{props.children}</div></Show7>
4816
+ <Show7 when={!props.fitContent && props.builderBlock?.children?.length}><div class="div-e3b1053e-2">{props.children}</div></Show7>
4814
4817
  </>
4815
- <style>{`.img-54b38751 {
4818
+ <style>{`.img-e3b1053e {
4816
4819
  opacity: 1;
4817
4820
  transition: opacity 0.2s ease-in-out;
4818
- }.div-54b38751 {
4821
+ }.div-e3b1053e {
4819
4822
  width: 100%;
4820
4823
  pointer-events: none;
4821
4824
  font-size: 0;
4822
- }.div-54b38751-2 {
4825
+ }.div-e3b1053e-2 {
4823
4826
  display: flex;
4824
4827
  flex-direction: column;
4825
4828
  align-items: stretch;
@@ -4855,16 +4858,10 @@ function SectionComponent(props) {
4855
4858
  var section_default = SectionComponent;
4856
4859
 
4857
4860
  // src/blocks/symbol/symbol.tsx
4858
- import { onMount as onMount5, on as on4, createEffect as createEffect4, createMemo as createMemo19, createSignal as createSignal19 } from "solid-js";
4861
+ import { onMount as onMount5, on as on3, createEffect as createEffect3, createMemo as createMemo19, createSignal as createSignal19 } from "solid-js";
4859
4862
 
4860
4863
  // src/components/content-variants/content-variants.tsx
4861
- import {
4862
- Show as Show14,
4863
- For as For9,
4864
- onMount as onMount4,
4865
- createMemo as createMemo18,
4866
- createSignal as createSignal18
4867
- } from "solid-js";
4864
+ import { Show as Show14, For as For9, onMount as onMount4, createSignal as createSignal18, createMemo as createMemo18 } from "solid-js";
4868
4865
 
4869
4866
  // src/helpers/url.ts
4870
4867
  var getTopLevelDomain = (host) => {
@@ -7815,7 +7812,7 @@ function isFromTrustedHost(trustedHosts, e) {
7815
7812
  }
7816
7813
 
7817
7814
  // src/constants/sdk-version.ts
7818
- var SDK_VERSION = "2.0.1";
7815
+ var SDK_VERSION = "2.0.2";
7819
7816
 
7820
7817
  // src/functions/register.ts
7821
7818
  var registry = {};
@@ -8469,7 +8466,13 @@ function ContentComponent(props) {
8469
8466
  const [registeredComponents, setRegisteredComponents] = createSignal17(
8470
8467
  [
8471
8468
  ...getDefaultRegisteredComponents(),
8472
- ...props.customComponents || []
8469
+ ...props.customComponents?.filter(({ models }) => {
8470
+ if (!models?.length)
8471
+ return true;
8472
+ if (!props.model)
8473
+ return true;
8474
+ return models.includes(props.model);
8475
+ }) || []
8473
8476
  ].reduce(
8474
8477
  (acc, { component, ...info }) => ({
8475
8478
  ...acc,
@@ -8499,7 +8502,13 @@ function ContentComponent(props) {
8499
8502
  apiVersion: props.apiVersion,
8500
8503
  componentInfos: [
8501
8504
  ...getDefaultRegisteredComponents(),
8502
- ...props.customComponents || []
8505
+ ...props.customComponents?.filter(({ models }) => {
8506
+ if (!models?.length)
8507
+ return true;
8508
+ if (!props.model)
8509
+ return true;
8510
+ return models.includes(props.model);
8511
+ }) || []
8503
8512
  ].reduce(
8504
8513
  (acc, { component: _, ...info }) => ({
8505
8514
  ...acc,
@@ -8725,7 +8734,7 @@ function Symbol2(props) {
8725
8734
  function onUpdateFn_0() {
8726
8735
  setContent();
8727
8736
  }
8728
- createEffect4(on4(() => [onUpdateFn_0_props_symbol()], onUpdateFn_0));
8737
+ createEffect3(on3(() => [onUpdateFn_0_props_symbol()], onUpdateFn_0));
8729
8738
  return <><div class={className()} {...{}} {...props.attributes} {...{}}><Content_variants_default
8730
8739
  nonce={props.builderContext.nonce}
8731
8740
  isNestedRender={true}
package/lib/edge/index.js CHANGED
@@ -4948,16 +4948,16 @@ function getSrcSet(url) {
4948
4948
  // src/blocks/image/image.tsx
4949
4949
  var _tmpl$5 = /* @__PURE__ */ template(`<source type=image/webp>`);
4950
4950
  var _tmpl$23 = /* @__PURE__ */ template(`<picture><img>`);
4951
- var _tmpl$32 = /* @__PURE__ */ template(`<div class="builder-image-sizer div-54b38751">`);
4952
- var _tmpl$42 = /* @__PURE__ */ template(`<div class=div-54b38751-2>`);
4953
- var _tmpl$52 = /* @__PURE__ */ template(`<style>.img-54b38751 {
4951
+ var _tmpl$32 = /* @__PURE__ */ template(`<div class="builder-image-sizer div-e3b1053e">`);
4952
+ var _tmpl$42 = /* @__PURE__ */ template(`<div class=div-e3b1053e-2>`);
4953
+ var _tmpl$52 = /* @__PURE__ */ template(`<style>.img-e3b1053e {
4954
4954
  opacity: 1;
4955
4955
  transition: opacity 0.2s ease-in-out;
4956
- }.div-54b38751 {
4956
+ }.div-e3b1053e {
4957
4957
  width: 100%;
4958
4958
  pointer-events: none;
4959
4959
  font-size: 0;
4960
- }.div-54b38751-2 {
4960
+ }.div-e3b1053e-2 {
4961
4961
  display: flex;
4962
4962
  flex-direction: column;
4963
4963
  align-items: stretch;
@@ -4976,6 +4976,9 @@ function Image(props) {
4976
4976
  !(url.match(/builder\.io/) || url.match(/cdn\.shopify\.com/))) {
4977
4977
  return props.srcset;
4978
4978
  }
4979
+ if (props.noWebp) {
4980
+ return void 0;
4981
+ }
4979
4982
  if (props.srcset && props.image?.includes("builder.io/api/v1/image")) {
4980
4983
  if (!props.srcset.includes(props.image.split("?")[0])) {
4981
4984
  return getSrcSet(url);
@@ -5016,7 +5019,7 @@ function Image(props) {
5016
5019
  }
5017
5020
  }), _el$3);
5018
5021
  effect((_p$) => {
5019
- const _v$ = "builder-image" + (props.className ? " " + props.className : "") + " img-54b38751", _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 = {
5022
+ const _v$ = "builder-image" + (props.className ? " " + props.className : "") + " img-e3b1053e", _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 = {
5020
5023
  "object-position": props.backgroundPosition || "center",
5021
5024
  "object-fit": props.backgroundSize || "cover",
5022
5025
  ...aspectRatioCss()
@@ -8279,7 +8282,7 @@ function isFromTrustedHost(trustedHosts, e) {
8279
8282
  }
8280
8283
 
8281
8284
  // src/constants/sdk-version.ts
8282
- var SDK_VERSION = "2.0.1";
8285
+ var SDK_VERSION = "2.0.2";
8283
8286
 
8284
8287
  // src/functions/register.ts
8285
8288
  var registry = {};
@@ -8912,7 +8915,15 @@ function ContentComponent(props) {
8912
8915
  // eslint-disable-next-line @typescript-eslint/no-non-null-assertion, @typescript-eslint/no-non-null-asserted-optional-chain
8913
8916
  contentId: props.content?.id
8914
8917
  }));
8915
- const [registeredComponents, setRegisteredComponents] = createSignal([...getDefaultRegisteredComponents(), ...props.customComponents || []].reduce((acc, {
8918
+ const [registeredComponents, setRegisteredComponents] = createSignal([...getDefaultRegisteredComponents(), ...props.customComponents?.filter(({
8919
+ models
8920
+ }) => {
8921
+ if (!models?.length)
8922
+ return true;
8923
+ if (!props.model)
8924
+ return true;
8925
+ return models.includes(props.model);
8926
+ }) || []].reduce((acc, {
8916
8927
  component,
8917
8928
  ...info
8918
8929
  }) => ({
@@ -8938,7 +8949,15 @@ function ContentComponent(props) {
8938
8949
  canTrack: props.canTrack,
8939
8950
  apiKey: props.apiKey,
8940
8951
  apiVersion: props.apiVersion,
8941
- componentInfos: [...getDefaultRegisteredComponents(), ...props.customComponents || []].reduce((acc, {
8952
+ componentInfos: [...getDefaultRegisteredComponents(), ...props.customComponents?.filter(({
8953
+ models
8954
+ }) => {
8955
+ if (!models?.length)
8956
+ return true;
8957
+ if (!props.model)
8958
+ return true;
8959
+ return models.includes(props.model);
8960
+ }) || []].reduce((acc, {
8942
8961
  component: _,
8943
8962
  ...info
8944
8963
  }) => ({
@@ -4747,6 +4747,9 @@ function Image(props) {
4747
4747
  !(url.match(/builder\.io/) || url.match(/cdn\.shopify\.com/))) {
4748
4748
  return props.srcset;
4749
4749
  }
4750
+ if (props.noWebp) {
4751
+ return void 0;
4752
+ }
4750
4753
  if (props.srcset && props.image?.includes("builder.io/api/v1/image")) {
4751
4754
  if (!props.srcset.includes(props.image.split("?")[0])) {
4752
4755
  return getSrcSet(url);
@@ -4779,7 +4782,7 @@ function Image(props) {
4779
4782
  <picture>
4780
4783
  <Show7 when={webpSrcSet()}><source type="image/webp" srcset={webpSrcSet()} /></Show7>
4781
4784
  <img
4782
- class={"builder-image" + (props.className ? " " + props.className : "") + " img-54b38751"}
4785
+ class={"builder-image" + (props.className ? " " + props.className : "") + " img-e3b1053e"}
4783
4786
  loading={props.highPriority ? "eager" : "lazy"}
4784
4787
  fetchpriority={props.highPriority ? "high" : "auto"}
4785
4788
  alt={props.altText}
@@ -4797,22 +4800,22 @@ function Image(props) {
4797
4800
  <Show7
4798
4801
  when={props.aspectRatio && !(props.builderBlock?.children?.length && props.fitContent)}
4799
4802
  ><div
4800
- class="builder-image-sizer div-54b38751"
4803
+ class="builder-image-sizer div-e3b1053e"
4801
4804
  style={{
4802
4805
  "padding-top": props.aspectRatio * 100 + "%"
4803
4806
  }}
4804
4807
  /></Show7>
4805
4808
  <Show7 when={props.builderBlock?.children?.length && props.fitContent}>{props.children}</Show7>
4806
- <Show7 when={!props.fitContent && props.builderBlock?.children?.length}><div class="div-54b38751-2">{props.children}</div></Show7>
4809
+ <Show7 when={!props.fitContent && props.builderBlock?.children?.length}><div class="div-e3b1053e-2">{props.children}</div></Show7>
4807
4810
  </>
4808
- <style>{`.img-54b38751 {
4811
+ <style>{`.img-e3b1053e {
4809
4812
  opacity: 1;
4810
4813
  transition: opacity 0.2s ease-in-out;
4811
- }.div-54b38751 {
4814
+ }.div-e3b1053e {
4812
4815
  width: 100%;
4813
4816
  pointer-events: none;
4814
4817
  font-size: 0;
4815
- }.div-54b38751-2 {
4818
+ }.div-e3b1053e-2 {
4816
4819
  display: flex;
4817
4820
  flex-direction: column;
4818
4821
  align-items: stretch;
@@ -4848,16 +4851,10 @@ function SectionComponent(props) {
4848
4851
  var section_default = SectionComponent;
4849
4852
 
4850
4853
  // src/blocks/symbol/symbol.tsx
4851
- import { onMount as onMount5, on as on4, createEffect as createEffect4, createMemo as createMemo19, createSignal as createSignal19 } from "solid-js";
4854
+ import { onMount as onMount5, on as on3, createEffect as createEffect3, createMemo as createMemo19, createSignal as createSignal19 } from "solid-js";
4852
4855
 
4853
4856
  // src/components/content-variants/content-variants.tsx
4854
- import {
4855
- Show as Show14,
4856
- For as For9,
4857
- onMount as onMount4,
4858
- createMemo as createMemo18,
4859
- createSignal as createSignal18
4860
- } from "solid-js";
4857
+ import { Show as Show14, For as For9, onMount as onMount4, createSignal as createSignal18, createMemo as createMemo18 } from "solid-js";
4861
4858
 
4862
4859
  // src/helpers/url.ts
4863
4860
  var getTopLevelDomain = (host) => {
@@ -7800,7 +7797,7 @@ function isFromTrustedHost(trustedHosts, e) {
7800
7797
  }
7801
7798
 
7802
7799
  // src/constants/sdk-version.ts
7803
- var SDK_VERSION = "2.0.1";
7800
+ var SDK_VERSION = "2.0.2";
7804
7801
 
7805
7802
  // src/functions/register.ts
7806
7803
  var registry = {};
@@ -8452,7 +8449,13 @@ function ContentComponent(props) {
8452
8449
  const [registeredComponents, setRegisteredComponents] = createSignal17(
8453
8450
  [
8454
8451
  ...getDefaultRegisteredComponents(),
8455
- ...props.customComponents || []
8452
+ ...props.customComponents?.filter(({ models }) => {
8453
+ if (!models?.length)
8454
+ return true;
8455
+ if (!props.model)
8456
+ return true;
8457
+ return models.includes(props.model);
8458
+ }) || []
8456
8459
  ].reduce(
8457
8460
  (acc, { component, ...info }) => ({
8458
8461
  ...acc,
@@ -8482,7 +8485,13 @@ function ContentComponent(props) {
8482
8485
  apiVersion: props.apiVersion,
8483
8486
  componentInfos: [
8484
8487
  ...getDefaultRegisteredComponents(),
8485
- ...props.customComponents || []
8488
+ ...props.customComponents?.filter(({ models }) => {
8489
+ if (!models?.length)
8490
+ return true;
8491
+ if (!props.model)
8492
+ return true;
8493
+ return models.includes(props.model);
8494
+ }) || []
8486
8495
  ].reduce(
8487
8496
  (acc, { component: _, ...info }) => ({
8488
8497
  ...acc,
@@ -8708,7 +8717,7 @@ function Symbol2(props) {
8708
8717
  function onUpdateFn_0() {
8709
8718
  setContent();
8710
8719
  }
8711
- createEffect4(on4(() => [onUpdateFn_0_props_symbol()], onUpdateFn_0));
8720
+ createEffect3(on3(() => [onUpdateFn_0_props_symbol()], onUpdateFn_0));
8712
8721
  return <><div class={className()} {...{}} {...props.attributes} {...{}}><Content_variants_default
8713
8722
  nonce={props.builderContext.nonce}
8714
8723
  isNestedRender={true}
package/lib/node/dev.js CHANGED
@@ -1978,16 +1978,16 @@ function getSrcSet(url) {
1978
1978
  // src/blocks/image/image.tsx
1979
1979
  var _tmpl$5 = /* @__PURE__ */ template(`<source type=image/webp>`);
1980
1980
  var _tmpl$23 = /* @__PURE__ */ template(`<picture><img>`);
1981
- var _tmpl$32 = /* @__PURE__ */ template(`<div class="builder-image-sizer div-54b38751">`);
1982
- var _tmpl$42 = /* @__PURE__ */ template(`<div class=div-54b38751-2>`);
1983
- var _tmpl$52 = /* @__PURE__ */ template(`<style>.img-54b38751 {
1981
+ var _tmpl$32 = /* @__PURE__ */ template(`<div class="builder-image-sizer div-e3b1053e">`);
1982
+ var _tmpl$42 = /* @__PURE__ */ template(`<div class=div-e3b1053e-2>`);
1983
+ var _tmpl$52 = /* @__PURE__ */ template(`<style>.img-e3b1053e {
1984
1984
  opacity: 1;
1985
1985
  transition: opacity 0.2s ease-in-out;
1986
- }.div-54b38751 {
1986
+ }.div-e3b1053e {
1987
1987
  width: 100%;
1988
1988
  pointer-events: none;
1989
1989
  font-size: 0;
1990
- }.div-54b38751-2 {
1990
+ }.div-e3b1053e-2 {
1991
1991
  display: flex;
1992
1992
  flex-direction: column;
1993
1993
  align-items: stretch;
@@ -2006,6 +2006,9 @@ function Image(props) {
2006
2006
  !(url.match(/builder\.io/) || url.match(/cdn\.shopify\.com/))) {
2007
2007
  return props.srcset;
2008
2008
  }
2009
+ if (props.noWebp) {
2010
+ return void 0;
2011
+ }
2009
2012
  if (props.srcset && props.image?.includes("builder.io/api/v1/image")) {
2010
2013
  if (!props.srcset.includes(props.image.split("?")[0])) {
2011
2014
  console.debug("Removed given srcset");
@@ -2047,7 +2050,7 @@ function Image(props) {
2047
2050
  }
2048
2051
  }), _el$3);
2049
2052
  effect((_p$) => {
2050
- const _v$ = "builder-image" + (props.className ? " " + props.className : "") + " img-54b38751", _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 = {
2053
+ const _v$ = "builder-image" + (props.className ? " " + props.className : "") + " img-e3b1053e", _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 = {
2051
2054
  "object-position": props.backgroundPosition || "center",
2052
2055
  "object-fit": props.backgroundSize || "cover",
2053
2056
  ...aspectRatioCss()
@@ -5318,7 +5321,7 @@ function isFromTrustedHost(trustedHosts, e) {
5318
5321
  }
5319
5322
 
5320
5323
  // src/constants/sdk-version.ts
5321
- var SDK_VERSION = "2.0.1";
5324
+ var SDK_VERSION = "2.0.2";
5322
5325
 
5323
5326
  // src/functions/register.ts
5324
5327
  var registry = {};
@@ -5953,7 +5956,15 @@ function ContentComponent(props) {
5953
5956
  // eslint-disable-next-line @typescript-eslint/no-non-null-assertion, @typescript-eslint/no-non-null-asserted-optional-chain
5954
5957
  contentId: props.content?.id
5955
5958
  }));
5956
- const [registeredComponents, setRegisteredComponents] = createSignal([...getDefaultRegisteredComponents(), ...props.customComponents || []].reduce((acc, {
5959
+ const [registeredComponents, setRegisteredComponents] = createSignal([...getDefaultRegisteredComponents(), ...props.customComponents?.filter(({
5960
+ models
5961
+ }) => {
5962
+ if (!models?.length)
5963
+ return true;
5964
+ if (!props.model)
5965
+ return true;
5966
+ return models.includes(props.model);
5967
+ }) || []].reduce((acc, {
5957
5968
  component,
5958
5969
  ...info
5959
5970
  }) => ({
@@ -5979,7 +5990,15 @@ function ContentComponent(props) {
5979
5990
  canTrack: props.canTrack,
5980
5991
  apiKey: props.apiKey,
5981
5992
  apiVersion: props.apiVersion,
5982
- componentInfos: [...getDefaultRegisteredComponents(), ...props.customComponents || []].reduce((acc, {
5993
+ componentInfos: [...getDefaultRegisteredComponents(), ...props.customComponents?.filter(({
5994
+ models
5995
+ }) => {
5996
+ if (!models?.length)
5997
+ return true;
5998
+ if (!props.model)
5999
+ return true;
6000
+ return models.includes(props.model);
6001
+ }) || []].reduce((acc, {
5983
6002
  component: _,
5984
6003
  ...info
5985
6004
  }) => ({
package/lib/node/dev.jsx CHANGED
@@ -1777,6 +1777,9 @@ function Image(props) {
1777
1777
  !(url.match(/builder\.io/) || url.match(/cdn\.shopify\.com/))) {
1778
1778
  return props.srcset;
1779
1779
  }
1780
+ if (props.noWebp) {
1781
+ return void 0;
1782
+ }
1780
1783
  if (props.srcset && props.image?.includes("builder.io/api/v1/image")) {
1781
1784
  if (!props.srcset.includes(props.image.split("?")[0])) {
1782
1785
  console.debug("Removed given srcset");
@@ -1810,7 +1813,7 @@ function Image(props) {
1810
1813
  <picture>
1811
1814
  <Show7 when={webpSrcSet()}><source type="image/webp" srcset={webpSrcSet()} /></Show7>
1812
1815
  <img
1813
- class={"builder-image" + (props.className ? " " + props.className : "") + " img-54b38751"}
1816
+ class={"builder-image" + (props.className ? " " + props.className : "") + " img-e3b1053e"}
1814
1817
  loading={props.highPriority ? "eager" : "lazy"}
1815
1818
  fetchpriority={props.highPriority ? "high" : "auto"}
1816
1819
  alt={props.altText}
@@ -1828,22 +1831,22 @@ function Image(props) {
1828
1831
  <Show7
1829
1832
  when={props.aspectRatio && !(props.builderBlock?.children?.length && props.fitContent)}
1830
1833
  ><div
1831
- class="builder-image-sizer div-54b38751"
1834
+ class="builder-image-sizer div-e3b1053e"
1832
1835
  style={{
1833
1836
  "padding-top": props.aspectRatio * 100 + "%"
1834
1837
  }}
1835
1838
  /></Show7>
1836
1839
  <Show7 when={props.builderBlock?.children?.length && props.fitContent}>{props.children}</Show7>
1837
- <Show7 when={!props.fitContent && props.builderBlock?.children?.length}><div class="div-54b38751-2">{props.children}</div></Show7>
1840
+ <Show7 when={!props.fitContent && props.builderBlock?.children?.length}><div class="div-e3b1053e-2">{props.children}</div></Show7>
1838
1841
  </>
1839
- <style>{`.img-54b38751 {
1842
+ <style>{`.img-e3b1053e {
1840
1843
  opacity: 1;
1841
1844
  transition: opacity 0.2s ease-in-out;
1842
- }.div-54b38751 {
1845
+ }.div-e3b1053e {
1843
1846
  width: 100%;
1844
1847
  pointer-events: none;
1845
1848
  font-size: 0;
1846
- }.div-54b38751-2 {
1849
+ }.div-e3b1053e-2 {
1847
1850
  display: flex;
1848
1851
  flex-direction: column;
1849
1852
  align-items: stretch;
@@ -1879,16 +1882,10 @@ function SectionComponent(props) {
1879
1882
  var section_default = SectionComponent;
1880
1883
 
1881
1884
  // src/blocks/symbol/symbol.tsx
1882
- import { onMount as onMount5, on as on4, createEffect as createEffect4, createMemo as createMemo19, createSignal as createSignal19 } from "solid-js";
1885
+ import { onMount as onMount5, on as on3, createEffect as createEffect3, createMemo as createMemo19, createSignal as createSignal19 } from "solid-js";
1883
1886
 
1884
1887
  // src/components/content-variants/content-variants.tsx
1885
- import {
1886
- Show as Show14,
1887
- For as For9,
1888
- onMount as onMount4,
1889
- createMemo as createMemo18,
1890
- createSignal as createSignal18
1891
- } from "solid-js";
1888
+ import { Show as Show14, For as For9, onMount as onMount4, createSignal as createSignal18, createMemo as createMemo18 } from "solid-js";
1892
1889
 
1893
1890
  // src/helpers/url.ts
1894
1891
  var getTopLevelDomain = (host) => {
@@ -4839,7 +4836,7 @@ function isFromTrustedHost(trustedHosts, e) {
4839
4836
  }
4840
4837
 
4841
4838
  // src/constants/sdk-version.ts
4842
- var SDK_VERSION = "2.0.1";
4839
+ var SDK_VERSION = "2.0.2";
4843
4840
 
4844
4841
  // src/functions/register.ts
4845
4842
  var registry = {};
@@ -5493,7 +5490,13 @@ function ContentComponent(props) {
5493
5490
  const [registeredComponents, setRegisteredComponents] = createSignal17(
5494
5491
  [
5495
5492
  ...getDefaultRegisteredComponents(),
5496
- ...props.customComponents || []
5493
+ ...props.customComponents?.filter(({ models }) => {
5494
+ if (!models?.length)
5495
+ return true;
5496
+ if (!props.model)
5497
+ return true;
5498
+ return models.includes(props.model);
5499
+ }) || []
5497
5500
  ].reduce(
5498
5501
  (acc, { component, ...info }) => ({
5499
5502
  ...acc,
@@ -5523,7 +5526,13 @@ function ContentComponent(props) {
5523
5526
  apiVersion: props.apiVersion,
5524
5527
  componentInfos: [
5525
5528
  ...getDefaultRegisteredComponents(),
5526
- ...props.customComponents || []
5529
+ ...props.customComponents?.filter(({ models }) => {
5530
+ if (!models?.length)
5531
+ return true;
5532
+ if (!props.model)
5533
+ return true;
5534
+ return models.includes(props.model);
5535
+ }) || []
5527
5536
  ].reduce(
5528
5537
  (acc, { component: _, ...info }) => ({
5529
5538
  ...acc,
@@ -5749,7 +5758,7 @@ function Symbol(props) {
5749
5758
  function onUpdateFn_0() {
5750
5759
  setContent();
5751
5760
  }
5752
- createEffect4(on4(() => [onUpdateFn_0_props_symbol()], onUpdateFn_0));
5761
+ createEffect3(on3(() => [onUpdateFn_0_props_symbol()], onUpdateFn_0));
5753
5762
  return <><div class={className()} {...{}} {...props.attributes} {...{}}><Content_variants_default
5754
5763
  nonce={props.builderContext.nonce}
5755
5764
  isNestedRender={true}
package/lib/node/index.js CHANGED
@@ -1972,16 +1972,16 @@ function getSrcSet(url) {
1972
1972
  // src/blocks/image/image.tsx
1973
1973
  var _tmpl$5 = /* @__PURE__ */ template(`<source type=image/webp>`);
1974
1974
  var _tmpl$23 = /* @__PURE__ */ template(`<picture><img>`);
1975
- var _tmpl$32 = /* @__PURE__ */ template(`<div class="builder-image-sizer div-54b38751">`);
1976
- var _tmpl$42 = /* @__PURE__ */ template(`<div class=div-54b38751-2>`);
1977
- var _tmpl$52 = /* @__PURE__ */ template(`<style>.img-54b38751 {
1975
+ var _tmpl$32 = /* @__PURE__ */ template(`<div class="builder-image-sizer div-e3b1053e">`);
1976
+ var _tmpl$42 = /* @__PURE__ */ template(`<div class=div-e3b1053e-2>`);
1977
+ var _tmpl$52 = /* @__PURE__ */ template(`<style>.img-e3b1053e {
1978
1978
  opacity: 1;
1979
1979
  transition: opacity 0.2s ease-in-out;
1980
- }.div-54b38751 {
1980
+ }.div-e3b1053e {
1981
1981
  width: 100%;
1982
1982
  pointer-events: none;
1983
1983
  font-size: 0;
1984
- }.div-54b38751-2 {
1984
+ }.div-e3b1053e-2 {
1985
1985
  display: flex;
1986
1986
  flex-direction: column;
1987
1987
  align-items: stretch;
@@ -2000,6 +2000,9 @@ function Image(props) {
2000
2000
  !(url.match(/builder\.io/) || url.match(/cdn\.shopify\.com/))) {
2001
2001
  return props.srcset;
2002
2002
  }
2003
+ if (props.noWebp) {
2004
+ return void 0;
2005
+ }
2003
2006
  if (props.srcset && props.image?.includes("builder.io/api/v1/image")) {
2004
2007
  if (!props.srcset.includes(props.image.split("?")[0])) {
2005
2008
  return getSrcSet(url);
@@ -2040,7 +2043,7 @@ function Image(props) {
2040
2043
  }
2041
2044
  }), _el$3);
2042
2045
  effect((_p$) => {
2043
- const _v$ = "builder-image" + (props.className ? " " + props.className : "") + " img-54b38751", _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 = {
2046
+ const _v$ = "builder-image" + (props.className ? " " + props.className : "") + " img-e3b1053e", _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 = {
2044
2047
  "object-position": props.backgroundPosition || "center",
2045
2048
  "object-fit": props.backgroundSize || "cover",
2046
2049
  ...aspectRatioCss()
@@ -5303,7 +5306,7 @@ function isFromTrustedHost(trustedHosts, e) {
5303
5306
  }
5304
5307
 
5305
5308
  // src/constants/sdk-version.ts
5306
- var SDK_VERSION = "2.0.1";
5309
+ var SDK_VERSION = "2.0.2";
5307
5310
 
5308
5311
  // src/functions/register.ts
5309
5312
  var registry = {};
@@ -5936,7 +5939,15 @@ function ContentComponent(props) {
5936
5939
  // eslint-disable-next-line @typescript-eslint/no-non-null-assertion, @typescript-eslint/no-non-null-asserted-optional-chain
5937
5940
  contentId: props.content?.id
5938
5941
  }));
5939
- const [registeredComponents, setRegisteredComponents] = createSignal([...getDefaultRegisteredComponents(), ...props.customComponents || []].reduce((acc, {
5942
+ const [registeredComponents, setRegisteredComponents] = createSignal([...getDefaultRegisteredComponents(), ...props.customComponents?.filter(({
5943
+ models
5944
+ }) => {
5945
+ if (!models?.length)
5946
+ return true;
5947
+ if (!props.model)
5948
+ return true;
5949
+ return models.includes(props.model);
5950
+ }) || []].reduce((acc, {
5940
5951
  component,
5941
5952
  ...info
5942
5953
  }) => ({
@@ -5962,7 +5973,15 @@ function ContentComponent(props) {
5962
5973
  canTrack: props.canTrack,
5963
5974
  apiKey: props.apiKey,
5964
5975
  apiVersion: props.apiVersion,
5965
- componentInfos: [...getDefaultRegisteredComponents(), ...props.customComponents || []].reduce((acc, {
5976
+ componentInfos: [...getDefaultRegisteredComponents(), ...props.customComponents?.filter(({
5977
+ models
5978
+ }) => {
5979
+ if (!models?.length)
5980
+ return true;
5981
+ if (!props.model)
5982
+ return true;
5983
+ return models.includes(props.model);
5984
+ }) || []].reduce((acc, {
5966
5985
  component: _,
5967
5986
  ...info
5968
5987
  }) => ({
@@ -1771,6 +1771,9 @@ function Image(props) {
1771
1771
  !(url.match(/builder\.io/) || url.match(/cdn\.shopify\.com/))) {
1772
1772
  return props.srcset;
1773
1773
  }
1774
+ if (props.noWebp) {
1775
+ return void 0;
1776
+ }
1774
1777
  if (props.srcset && props.image?.includes("builder.io/api/v1/image")) {
1775
1778
  if (!props.srcset.includes(props.image.split("?")[0])) {
1776
1779
  return getSrcSet(url);
@@ -1803,7 +1806,7 @@ function Image(props) {
1803
1806
  <picture>
1804
1807
  <Show7 when={webpSrcSet()}><source type="image/webp" srcset={webpSrcSet()} /></Show7>
1805
1808
  <img
1806
- class={"builder-image" + (props.className ? " " + props.className : "") + " img-54b38751"}
1809
+ class={"builder-image" + (props.className ? " " + props.className : "") + " img-e3b1053e"}
1807
1810
  loading={props.highPriority ? "eager" : "lazy"}
1808
1811
  fetchpriority={props.highPriority ? "high" : "auto"}
1809
1812
  alt={props.altText}
@@ -1821,22 +1824,22 @@ function Image(props) {
1821
1824
  <Show7
1822
1825
  when={props.aspectRatio && !(props.builderBlock?.children?.length && props.fitContent)}
1823
1826
  ><div
1824
- class="builder-image-sizer div-54b38751"
1827
+ class="builder-image-sizer div-e3b1053e"
1825
1828
  style={{
1826
1829
  "padding-top": props.aspectRatio * 100 + "%"
1827
1830
  }}
1828
1831
  /></Show7>
1829
1832
  <Show7 when={props.builderBlock?.children?.length && props.fitContent}>{props.children}</Show7>
1830
- <Show7 when={!props.fitContent && props.builderBlock?.children?.length}><div class="div-54b38751-2">{props.children}</div></Show7>
1833
+ <Show7 when={!props.fitContent && props.builderBlock?.children?.length}><div class="div-e3b1053e-2">{props.children}</div></Show7>
1831
1834
  </>
1832
- <style>{`.img-54b38751 {
1835
+ <style>{`.img-e3b1053e {
1833
1836
  opacity: 1;
1834
1837
  transition: opacity 0.2s ease-in-out;
1835
- }.div-54b38751 {
1838
+ }.div-e3b1053e {
1836
1839
  width: 100%;
1837
1840
  pointer-events: none;
1838
1841
  font-size: 0;
1839
- }.div-54b38751-2 {
1842
+ }.div-e3b1053e-2 {
1840
1843
  display: flex;
1841
1844
  flex-direction: column;
1842
1845
  align-items: stretch;
@@ -1872,16 +1875,10 @@ function SectionComponent(props) {
1872
1875
  var section_default = SectionComponent;
1873
1876
 
1874
1877
  // src/blocks/symbol/symbol.tsx
1875
- import { onMount as onMount5, on as on4, createEffect as createEffect4, createMemo as createMemo19, createSignal as createSignal19 } from "solid-js";
1878
+ import { onMount as onMount5, on as on3, createEffect as createEffect3, createMemo as createMemo19, createSignal as createSignal19 } from "solid-js";
1876
1879
 
1877
1880
  // src/components/content-variants/content-variants.tsx
1878
- import {
1879
- Show as Show14,
1880
- For as For9,
1881
- onMount as onMount4,
1882
- createMemo as createMemo18,
1883
- createSignal as createSignal18
1884
- } from "solid-js";
1881
+ import { Show as Show14, For as For9, onMount as onMount4, createSignal as createSignal18, createMemo as createMemo18 } from "solid-js";
1885
1882
 
1886
1883
  // src/helpers/url.ts
1887
1884
  var getTopLevelDomain = (host) => {
@@ -4824,7 +4821,7 @@ function isFromTrustedHost(trustedHosts, e) {
4824
4821
  }
4825
4822
 
4826
4823
  // src/constants/sdk-version.ts
4827
- var SDK_VERSION = "2.0.1";
4824
+ var SDK_VERSION = "2.0.2";
4828
4825
 
4829
4826
  // src/functions/register.ts
4830
4827
  var registry = {};
@@ -5476,7 +5473,13 @@ function ContentComponent(props) {
5476
5473
  const [registeredComponents, setRegisteredComponents] = createSignal17(
5477
5474
  [
5478
5475
  ...getDefaultRegisteredComponents(),
5479
- ...props.customComponents || []
5476
+ ...props.customComponents?.filter(({ models }) => {
5477
+ if (!models?.length)
5478
+ return true;
5479
+ if (!props.model)
5480
+ return true;
5481
+ return models.includes(props.model);
5482
+ }) || []
5480
5483
  ].reduce(
5481
5484
  (acc, { component, ...info }) => ({
5482
5485
  ...acc,
@@ -5506,7 +5509,13 @@ function ContentComponent(props) {
5506
5509
  apiVersion: props.apiVersion,
5507
5510
  componentInfos: [
5508
5511
  ...getDefaultRegisteredComponents(),
5509
- ...props.customComponents || []
5512
+ ...props.customComponents?.filter(({ models }) => {
5513
+ if (!models?.length)
5514
+ return true;
5515
+ if (!props.model)
5516
+ return true;
5517
+ return models.includes(props.model);
5518
+ }) || []
5510
5519
  ].reduce(
5511
5520
  (acc, { component: _, ...info }) => ({
5512
5521
  ...acc,
@@ -5732,7 +5741,7 @@ function Symbol(props) {
5732
5741
  function onUpdateFn_0() {
5733
5742
  setContent();
5734
5743
  }
5735
- createEffect4(on4(() => [onUpdateFn_0_props_symbol()], onUpdateFn_0));
5744
+ createEffect3(on3(() => [onUpdateFn_0_props_symbol()], onUpdateFn_0));
5736
5745
  return <><div class={className()} {...{}} {...props.attributes} {...{}}><Content_variants_default
5737
5746
  nonce={props.builderContext.nonce}
5738
5747
  isNestedRender={true}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@builder.io/sdk-solid",
3
- "version": "2.0.1",
3
+ "version": "2.0.2",
4
4
  "description": "",
5
5
  "files": [
6
6
  "dist",