@builder.io/sdk-qwik 0.14.26 → 0.14.28

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.
@@ -92,11 +92,7 @@ function getBlockComponentOptions(block) {
92
92
  var _a;
93
93
  return {
94
94
  ...(_a = block.component) == null ? void 0 : _a.options,
95
- ...block.options,
96
- /**
97
- * Our built-in components frequently make use of the block, so we provide all of it under `builderBlock`
98
- */
99
- builderBlock: block
95
+ ...block.options
100
96
  };
101
97
  }
102
98
  const MSG_PREFIX = "[Builder.io]: ";
@@ -630,24 +626,53 @@ const getRepeatItemData = ({ block, context }) => {
630
626
  }));
631
627
  return repeatArray;
632
628
  };
633
- const shouldPassLinkComponent = (block) => {
634
- return block && (block.isRSC || [
629
+ const provideLinkComponent = (block, linkComponent) => {
630
+ return block && (block.isRSC && TARGET === "rsc" || [
635
631
  "Core:Button",
636
632
  "Symbol",
637
633
  "Columns",
638
634
  "Form:Form",
639
635
  "Builder: Tabs",
640
636
  "Builder:Accordion"
641
- ].includes(block.name));
637
+ ].includes(block.name)) ? {
638
+ builderLinkComponent: linkComponent
639
+ } : {};
642
640
  };
643
- const shouldPassRegisteredComponents = (block) => {
644
- return block && (block.isRSC || [
641
+ const provideRegisteredComponents = (block, registeredComponents) => {
642
+ return block && (block.isRSC && TARGET === "rsc" || [
645
643
  "Symbol",
646
644
  "Columns",
647
645
  "Form:Form",
648
646
  "Builder: Tabs",
649
647
  "Builder:Accordion"
650
- ].includes(block.name));
648
+ ].includes(block.name)) ? {
649
+ builderComponents: registeredComponents
650
+ } : {};
651
+ };
652
+ const provideBuilderBlock = (block, builderBlock) => {
653
+ return block && (block.isRSC && TARGET === "rsc" || TARGET === "reactNative" || [
654
+ "Builder:Accordion",
655
+ "Columns",
656
+ "Form:Form",
657
+ "Builder: Tabs",
658
+ "Symbol",
659
+ "Image",
660
+ "Video"
661
+ ].includes(block.name)) ? {
662
+ builderBlock
663
+ } : {};
664
+ };
665
+ const provideBuilderContext = (block, context) => {
666
+ return block && (block.isRSC && TARGET === "rsc" || [
667
+ "Builder:Accordion",
668
+ "Columns",
669
+ "Form:Form",
670
+ "Builder: Tabs",
671
+ "Symbol",
672
+ "Slot"
673
+ ].includes(block.name)) ? {
674
+ builderContext: context
675
+ } : {};
651
676
  };
652
677
  const SIZES = {
653
678
  small: {
@@ -1105,13 +1130,10 @@ const Block = /* @__PURE__ */ qwik.componentQrl(/* @__PURE__ */ qwik.inlinedQrl(
1105
1130
  componentRef: (_a2 = blockComponent2.value) == null ? void 0 : _a2.component,
1106
1131
  componentOptions: {
1107
1132
  ...getBlockComponentOptions(processedBlock2.value),
1108
- builderContext: props2.context,
1109
- ...shouldPassLinkComponent(blockComponent2.value) ? {
1110
- builderLinkComponent: props2.linkComponent
1111
- } : {},
1112
- ...shouldPassRegisteredComponents(blockComponent2.value) ? {
1113
- builderComponents: props2.registeredComponents
1114
- } : {}
1133
+ ...provideBuilderBlock(blockComponent2.value, processedBlock2.value),
1134
+ ...provideBuilderContext(blockComponent2.value, props2.context),
1135
+ ...provideLinkComponent(blockComponent2.value, props2.linkComponent),
1136
+ ...provideRegisteredComponents(blockComponent2.value, props2.registeredComponents)
1115
1137
  },
1116
1138
  context: props2.context,
1117
1139
  linkComponent: props2.linkComponent,
@@ -1166,9 +1188,6 @@ const Block = /* @__PURE__ */ qwik.componentQrl(/* @__PURE__ */ qwik.inlinedQrl(
1166
1188
  get context() {
1167
1189
  return props.context;
1168
1190
  },
1169
- get linkComponent() {
1170
- return props.linkComponent;
1171
- },
1172
1191
  children: [
1173
1192
  /* @__PURE__ */ qwik._jsxC(ComponentRef, {
1174
1193
  get componentRef() {
@@ -1263,10 +1282,7 @@ const Block = /* @__PURE__ */ qwik.componentQrl(/* @__PURE__ */ qwik.inlinedQrl(
1263
1282
  ], "p0.value"),
1264
1283
  context: qwik._fnSignal((p0) => p0.context, [
1265
1284
  props
1266
- ], "p0.context"),
1267
- linkComponent: qwik._fnSignal((p0) => p0.linkComponent, [
1268
- props
1269
- ], "p0.linkComponent")
1285
+ ], "p0.context")
1270
1286
  }
1271
1287
  }, 1, "jN_2") : (repeatItem.value || []).map((data, index) => {
1272
1288
  return /* @__PURE__ */ qwik._jsxC(RepeatedBlock, {
@@ -1834,7 +1850,12 @@ const Image = /* @__PURE__ */ qwik.componentQrl(/* @__PURE__ */ qwik.inlinedQrl(
1834
1850
  class: qwik._fnSignal((p0) => "builder-image" + (p0.className ? " " + p0.className : "") + " img-Image", [
1835
1851
  props
1836
1852
  ], '"builder-image"+(p0.className?" "+p0.className:"")+" img-Image"'),
1837
- loading: "lazy",
1853
+ fetchPriority: qwik._fnSignal((p0) => p0.highPriority ? "high" : "auto", [
1854
+ props
1855
+ ], 'p0.highPriority?"high":"auto"'),
1856
+ loading: qwik._fnSignal((p0) => p0.highPriority ? "eager" : "lazy", [
1857
+ props
1858
+ ], 'p0.highPriority?"eager":"lazy"'),
1838
1859
  role: qwik._fnSignal((p0) => p0.altText ? void 0 : "presentation", [
1839
1860
  props
1840
1861
  ], 'p0.altText?undefined:"presentation"'),
@@ -2869,6 +2890,12 @@ const componentInfo$d = {
2869
2890
  helperText: "When child blocks are provided, fit to them instead of using the image's aspect ratio",
2870
2891
  defaultValue: true
2871
2892
  },
2893
+ {
2894
+ name: "highPriority",
2895
+ type: "boolean",
2896
+ advanced: true,
2897
+ helperText: "Mark this image as high priority compared to other images on the page. This prevents lazy loading of the image and tells the browser to load this image before others on the page."
2898
+ },
2872
2899
  {
2873
2900
  name: "aspectRatio",
2874
2901
  type: "number",
@@ -5069,10 +5096,12 @@ const DEFAULT_TRUSTED_HOSTS = [
5069
5096
  "qa.builder.io"
5070
5097
  ];
5071
5098
  function isFromTrustedHost(trustedHosts, e) {
5099
+ if (!e.origin.startsWith("http") && !e.origin.startsWith("https"))
5100
+ return false;
5072
5101
  const url = new URL(e.origin), hostname = url.hostname;
5073
5102
  return (trustedHosts || DEFAULT_TRUSTED_HOSTS).findIndex((trustedHost) => trustedHost.startsWith("*.") ? hostname.endsWith(trustedHost.slice(1)) : trustedHost === hostname) > -1;
5074
5103
  }
5075
- const SDK_VERSION = "0.14.26";
5104
+ const SDK_VERSION = "0.14.28";
5076
5105
  const registry = {};
5077
5106
  function register(type, info) {
5078
5107
  let typeList = registry[type];
@@ -5841,9 +5870,6 @@ const ContentComponent = /* @__PURE__ */ qwik.componentQrl(/* @__PURE__ */ qwik.
5841
5870
  get contentWrapperProps() {
5842
5871
  return props.contentWrapperProps;
5843
5872
  },
5844
- get linkComponent() {
5845
- return props.linkComponent;
5846
- },
5847
5873
  get trustedHosts() {
5848
5874
  return props.trustedHosts;
5849
5875
  },
@@ -5961,9 +5987,6 @@ const ContentComponent = /* @__PURE__ */ qwik.componentQrl(/* @__PURE__ */ qwik.
5961
5987
  enrich: qwik._fnSignal((p0) => p0.enrich, [
5962
5988
  props
5963
5989
  ], "p0.enrich"),
5964
- linkComponent: qwik._fnSignal((p0) => p0.linkComponent, [
5965
- props
5966
- ], "p0.linkComponent"),
5967
5990
  locale: qwik._fnSignal((p0) => p0.locale, [
5968
5991
  props
5969
5992
  ], "p0.locale"),
@@ -90,11 +90,7 @@ function getBlockComponentOptions(block) {
90
90
  var _a;
91
91
  return {
92
92
  ...(_a = block.component) == null ? void 0 : _a.options,
93
- ...block.options,
94
- /**
95
- * Our built-in components frequently make use of the block, so we provide all of it under `builderBlock`
96
- */
97
- builderBlock: block
93
+ ...block.options
98
94
  };
99
95
  }
100
96
  const MSG_PREFIX = "[Builder.io]: ";
@@ -628,24 +624,53 @@ const getRepeatItemData = ({ block, context }) => {
628
624
  }));
629
625
  return repeatArray;
630
626
  };
631
- const shouldPassLinkComponent = (block) => {
632
- return block && (block.isRSC || [
627
+ const provideLinkComponent = (block, linkComponent) => {
628
+ return block && (block.isRSC && TARGET === "rsc" || [
633
629
  "Core:Button",
634
630
  "Symbol",
635
631
  "Columns",
636
632
  "Form:Form",
637
633
  "Builder: Tabs",
638
634
  "Builder:Accordion"
639
- ].includes(block.name));
635
+ ].includes(block.name)) ? {
636
+ builderLinkComponent: linkComponent
637
+ } : {};
640
638
  };
641
- const shouldPassRegisteredComponents = (block) => {
642
- return block && (block.isRSC || [
639
+ const provideRegisteredComponents = (block, registeredComponents) => {
640
+ return block && (block.isRSC && TARGET === "rsc" || [
643
641
  "Symbol",
644
642
  "Columns",
645
643
  "Form:Form",
646
644
  "Builder: Tabs",
647
645
  "Builder:Accordion"
648
- ].includes(block.name));
646
+ ].includes(block.name)) ? {
647
+ builderComponents: registeredComponents
648
+ } : {};
649
+ };
650
+ const provideBuilderBlock = (block, builderBlock) => {
651
+ return block && (block.isRSC && TARGET === "rsc" || TARGET === "reactNative" || [
652
+ "Builder:Accordion",
653
+ "Columns",
654
+ "Form:Form",
655
+ "Builder: Tabs",
656
+ "Symbol",
657
+ "Image",
658
+ "Video"
659
+ ].includes(block.name)) ? {
660
+ builderBlock
661
+ } : {};
662
+ };
663
+ const provideBuilderContext = (block, context) => {
664
+ return block && (block.isRSC && TARGET === "rsc" || [
665
+ "Builder:Accordion",
666
+ "Columns",
667
+ "Form:Form",
668
+ "Builder: Tabs",
669
+ "Symbol",
670
+ "Slot"
671
+ ].includes(block.name)) ? {
672
+ builderContext: context
673
+ } : {};
649
674
  };
650
675
  const SIZES = {
651
676
  small: {
@@ -1103,13 +1128,10 @@ const Block = /* @__PURE__ */ componentQrl(/* @__PURE__ */ inlinedQrl((props) =>
1103
1128
  componentRef: (_a2 = blockComponent2.value) == null ? void 0 : _a2.component,
1104
1129
  componentOptions: {
1105
1130
  ...getBlockComponentOptions(processedBlock2.value),
1106
- builderContext: props2.context,
1107
- ...shouldPassLinkComponent(blockComponent2.value) ? {
1108
- builderLinkComponent: props2.linkComponent
1109
- } : {},
1110
- ...shouldPassRegisteredComponents(blockComponent2.value) ? {
1111
- builderComponents: props2.registeredComponents
1112
- } : {}
1131
+ ...provideBuilderBlock(blockComponent2.value, processedBlock2.value),
1132
+ ...provideBuilderContext(blockComponent2.value, props2.context),
1133
+ ...provideLinkComponent(blockComponent2.value, props2.linkComponent),
1134
+ ...provideRegisteredComponents(blockComponent2.value, props2.registeredComponents)
1113
1135
  },
1114
1136
  context: props2.context,
1115
1137
  linkComponent: props2.linkComponent,
@@ -1164,9 +1186,6 @@ const Block = /* @__PURE__ */ componentQrl(/* @__PURE__ */ inlinedQrl((props) =>
1164
1186
  get context() {
1165
1187
  return props.context;
1166
1188
  },
1167
- get linkComponent() {
1168
- return props.linkComponent;
1169
- },
1170
1189
  children: [
1171
1190
  /* @__PURE__ */ _jsxC(ComponentRef, {
1172
1191
  get componentRef() {
@@ -1261,10 +1280,7 @@ const Block = /* @__PURE__ */ componentQrl(/* @__PURE__ */ inlinedQrl((props) =>
1261
1280
  ], "p0.value"),
1262
1281
  context: _fnSignal((p0) => p0.context, [
1263
1282
  props
1264
- ], "p0.context"),
1265
- linkComponent: _fnSignal((p0) => p0.linkComponent, [
1266
- props
1267
- ], "p0.linkComponent")
1283
+ ], "p0.context")
1268
1284
  }
1269
1285
  }, 1, "jN_2") : (repeatItem.value || []).map((data, index) => {
1270
1286
  return /* @__PURE__ */ _jsxC(RepeatedBlock, {
@@ -1832,7 +1848,12 @@ const Image = /* @__PURE__ */ componentQrl(/* @__PURE__ */ inlinedQrl((props) =>
1832
1848
  class: _fnSignal((p0) => "builder-image" + (p0.className ? " " + p0.className : "") + " img-Image", [
1833
1849
  props
1834
1850
  ], '"builder-image"+(p0.className?" "+p0.className:"")+" img-Image"'),
1835
- loading: "lazy",
1851
+ fetchPriority: _fnSignal((p0) => p0.highPriority ? "high" : "auto", [
1852
+ props
1853
+ ], 'p0.highPriority?"high":"auto"'),
1854
+ loading: _fnSignal((p0) => p0.highPriority ? "eager" : "lazy", [
1855
+ props
1856
+ ], 'p0.highPriority?"eager":"lazy"'),
1836
1857
  role: _fnSignal((p0) => p0.altText ? void 0 : "presentation", [
1837
1858
  props
1838
1859
  ], 'p0.altText?undefined:"presentation"'),
@@ -2867,6 +2888,12 @@ const componentInfo$d = {
2867
2888
  helperText: "When child blocks are provided, fit to them instead of using the image's aspect ratio",
2868
2889
  defaultValue: true
2869
2890
  },
2891
+ {
2892
+ name: "highPriority",
2893
+ type: "boolean",
2894
+ advanced: true,
2895
+ helperText: "Mark this image as high priority compared to other images on the page. This prevents lazy loading of the image and tells the browser to load this image before others on the page."
2896
+ },
2870
2897
  {
2871
2898
  name: "aspectRatio",
2872
2899
  type: "number",
@@ -5067,10 +5094,12 @@ const DEFAULT_TRUSTED_HOSTS = [
5067
5094
  "qa.builder.io"
5068
5095
  ];
5069
5096
  function isFromTrustedHost(trustedHosts, e) {
5097
+ if (!e.origin.startsWith("http") && !e.origin.startsWith("https"))
5098
+ return false;
5070
5099
  const url = new URL(e.origin), hostname = url.hostname;
5071
5100
  return (trustedHosts || DEFAULT_TRUSTED_HOSTS).findIndex((trustedHost) => trustedHost.startsWith("*.") ? hostname.endsWith(trustedHost.slice(1)) : trustedHost === hostname) > -1;
5072
5101
  }
5073
- const SDK_VERSION = "0.14.26";
5102
+ const SDK_VERSION = "0.14.28";
5074
5103
  const registry = {};
5075
5104
  function register(type, info) {
5076
5105
  let typeList = registry[type];
@@ -5839,9 +5868,6 @@ const ContentComponent = /* @__PURE__ */ componentQrl(/* @__PURE__ */ inlinedQrl
5839
5868
  get contentWrapperProps() {
5840
5869
  return props.contentWrapperProps;
5841
5870
  },
5842
- get linkComponent() {
5843
- return props.linkComponent;
5844
- },
5845
5871
  get trustedHosts() {
5846
5872
  return props.trustedHosts;
5847
5873
  },
@@ -5959,9 +5985,6 @@ const ContentComponent = /* @__PURE__ */ componentQrl(/* @__PURE__ */ inlinedQrl
5959
5985
  enrich: _fnSignal((p0) => p0.enrich, [
5960
5986
  props
5961
5987
  ], "p0.enrich"),
5962
- linkComponent: _fnSignal((p0) => p0.linkComponent, [
5963
- props
5964
- ], "p0.linkComponent"),
5965
5988
  locale: _fnSignal((p0) => p0.locale, [
5966
5989
  props
5967
5990
  ], "p0.locale"),
@@ -92,11 +92,7 @@ function getBlockComponentOptions(block) {
92
92
  var _a;
93
93
  return {
94
94
  ...(_a = block.component) == null ? void 0 : _a.options,
95
- ...block.options,
96
- /**
97
- * Our built-in components frequently make use of the block, so we provide all of it under `builderBlock`
98
- */
99
- builderBlock: block
95
+ ...block.options
100
96
  };
101
97
  }
102
98
  const MSG_PREFIX = "[Builder.io]: ";
@@ -3462,17 +3458,10 @@ theFunction();
3462
3458
  });
3463
3459
  interpreter.setProperty(globalObject, "setRootState", interpreter.createNativeFunction(setRootState));
3464
3460
  };
3465
- try {
3466
- const myInterpreter = new t(transformed, initFunc);
3467
- myInterpreter.run();
3468
- const output = myInterpreter.pseudoToNative(myInterpreter.value);
3469
- return output;
3470
- } catch (e) {
3471
- logger.warn("Custom code error in edge runtime. NOTE: your code must be ES5 JavaScript.", {
3472
- e
3473
- });
3474
- return;
3475
- }
3461
+ const myInterpreter = new t(transformed, initFunc);
3462
+ myInterpreter.run();
3463
+ const output = myInterpreter.pseudoToNative(myInterpreter.value);
3464
+ return output;
3476
3465
  };
3477
3466
  const checkIsDefined = (maybeT) => maybeT !== null && maybeT !== void 0;
3478
3467
  function isNodeRuntime() {
@@ -3861,24 +3850,53 @@ const getRepeatItemData = ({ block, context }) => {
3861
3850
  }));
3862
3851
  return repeatArray;
3863
3852
  };
3864
- const shouldPassLinkComponent = (block) => {
3865
- return block && (block.isRSC || [
3853
+ const provideLinkComponent = (block, linkComponent) => {
3854
+ return block && (block.isRSC && TARGET === "rsc" || [
3866
3855
  "Core:Button",
3867
3856
  "Symbol",
3868
3857
  "Columns",
3869
3858
  "Form:Form",
3870
3859
  "Builder: Tabs",
3871
3860
  "Builder:Accordion"
3872
- ].includes(block.name));
3861
+ ].includes(block.name)) ? {
3862
+ builderLinkComponent: linkComponent
3863
+ } : {};
3873
3864
  };
3874
- const shouldPassRegisteredComponents = (block) => {
3875
- return block && (block.isRSC || [
3865
+ const provideRegisteredComponents = (block, registeredComponents) => {
3866
+ return block && (block.isRSC && TARGET === "rsc" || [
3876
3867
  "Symbol",
3877
3868
  "Columns",
3878
3869
  "Form:Form",
3879
3870
  "Builder: Tabs",
3880
3871
  "Builder:Accordion"
3881
- ].includes(block.name));
3872
+ ].includes(block.name)) ? {
3873
+ builderComponents: registeredComponents
3874
+ } : {};
3875
+ };
3876
+ const provideBuilderBlock = (block, builderBlock) => {
3877
+ return block && (block.isRSC && TARGET === "rsc" || TARGET === "reactNative" || [
3878
+ "Builder:Accordion",
3879
+ "Columns",
3880
+ "Form:Form",
3881
+ "Builder: Tabs",
3882
+ "Symbol",
3883
+ "Image",
3884
+ "Video"
3885
+ ].includes(block.name)) ? {
3886
+ builderBlock
3887
+ } : {};
3888
+ };
3889
+ const provideBuilderContext = (block, context) => {
3890
+ return block && (block.isRSC && TARGET === "rsc" || [
3891
+ "Builder:Accordion",
3892
+ "Columns",
3893
+ "Form:Form",
3894
+ "Builder: Tabs",
3895
+ "Symbol",
3896
+ "Slot"
3897
+ ].includes(block.name)) ? {
3898
+ builderContext: context
3899
+ } : {};
3882
3900
  };
3883
3901
  const SIZES = {
3884
3902
  small: {
@@ -4336,13 +4354,10 @@ const Block = /* @__PURE__ */ qwik.componentQrl(/* @__PURE__ */ qwik.inlinedQrl(
4336
4354
  componentRef: (_a2 = blockComponent2.value) == null ? void 0 : _a2.component,
4337
4355
  componentOptions: {
4338
4356
  ...getBlockComponentOptions(processedBlock2.value),
4339
- builderContext: props2.context,
4340
- ...shouldPassLinkComponent(blockComponent2.value) ? {
4341
- builderLinkComponent: props2.linkComponent
4342
- } : {},
4343
- ...shouldPassRegisteredComponents(blockComponent2.value) ? {
4344
- builderComponents: props2.registeredComponents
4345
- } : {}
4357
+ ...provideBuilderBlock(blockComponent2.value, processedBlock2.value),
4358
+ ...provideBuilderContext(blockComponent2.value, props2.context),
4359
+ ...provideLinkComponent(blockComponent2.value, props2.linkComponent),
4360
+ ...provideRegisteredComponents(blockComponent2.value, props2.registeredComponents)
4346
4361
  },
4347
4362
  context: props2.context,
4348
4363
  linkComponent: props2.linkComponent,
@@ -4397,9 +4412,6 @@ const Block = /* @__PURE__ */ qwik.componentQrl(/* @__PURE__ */ qwik.inlinedQrl(
4397
4412
  get context() {
4398
4413
  return props.context;
4399
4414
  },
4400
- get linkComponent() {
4401
- return props.linkComponent;
4402
- },
4403
4415
  children: [
4404
4416
  /* @__PURE__ */ qwik._jsxC(ComponentRef, {
4405
4417
  get componentRef() {
@@ -4494,10 +4506,7 @@ const Block = /* @__PURE__ */ qwik.componentQrl(/* @__PURE__ */ qwik.inlinedQrl(
4494
4506
  ], "p0.value"),
4495
4507
  context: qwik._fnSignal((p0) => p0.context, [
4496
4508
  props
4497
- ], "p0.context"),
4498
- linkComponent: qwik._fnSignal((p0) => p0.linkComponent, [
4499
- props
4500
- ], "p0.linkComponent")
4509
+ ], "p0.context")
4501
4510
  }
4502
4511
  }, 1, "jN_2") : (repeatItem.value || []).map((data, index) => {
4503
4512
  return /* @__PURE__ */ qwik._jsxC(RepeatedBlock, {
@@ -5065,7 +5074,12 @@ const Image = /* @__PURE__ */ qwik.componentQrl(/* @__PURE__ */ qwik.inlinedQrl(
5065
5074
  class: qwik._fnSignal((p0) => "builder-image" + (p0.className ? " " + p0.className : "") + " img-Image", [
5066
5075
  props
5067
5076
  ], '"builder-image"+(p0.className?" "+p0.className:"")+" img-Image"'),
5068
- loading: "lazy",
5077
+ fetchPriority: qwik._fnSignal((p0) => p0.highPriority ? "high" : "auto", [
5078
+ props
5079
+ ], 'p0.highPriority?"high":"auto"'),
5080
+ loading: qwik._fnSignal((p0) => p0.highPriority ? "eager" : "lazy", [
5081
+ props
5082
+ ], 'p0.highPriority?"eager":"lazy"'),
5069
5083
  role: qwik._fnSignal((p0) => p0.altText ? void 0 : "presentation", [
5070
5084
  props
5071
5085
  ], 'p0.altText?undefined:"presentation"'),
@@ -6100,6 +6114,12 @@ const componentInfo$d = {
6100
6114
  helperText: "When child blocks are provided, fit to them instead of using the image's aspect ratio",
6101
6115
  defaultValue: true
6102
6116
  },
6117
+ {
6118
+ name: "highPriority",
6119
+ type: "boolean",
6120
+ advanced: true,
6121
+ helperText: "Mark this image as high priority compared to other images on the page. This prevents lazy loading of the image and tells the browser to load this image before others on the page."
6122
+ },
6103
6123
  {
6104
6124
  name: "aspectRatio",
6105
6125
  type: "number",
@@ -8300,10 +8320,12 @@ const DEFAULT_TRUSTED_HOSTS = [
8300
8320
  "qa.builder.io"
8301
8321
  ];
8302
8322
  function isFromTrustedHost(trustedHosts, e) {
8323
+ if (!e.origin.startsWith("http") && !e.origin.startsWith("https"))
8324
+ return false;
8303
8325
  const url = new URL(e.origin), hostname = url.hostname;
8304
8326
  return (trustedHosts || DEFAULT_TRUSTED_HOSTS).findIndex((trustedHost) => trustedHost.startsWith("*.") ? hostname.endsWith(trustedHost.slice(1)) : trustedHost === hostname) > -1;
8305
8327
  }
8306
- const SDK_VERSION = "0.14.26";
8328
+ const SDK_VERSION = "0.14.28";
8307
8329
  const registry = {};
8308
8330
  function register(type, info) {
8309
8331
  let typeList = registry[type];
@@ -9072,9 +9094,6 @@ const ContentComponent = /* @__PURE__ */ qwik.componentQrl(/* @__PURE__ */ qwik.
9072
9094
  get contentWrapperProps() {
9073
9095
  return props.contentWrapperProps;
9074
9096
  },
9075
- get linkComponent() {
9076
- return props.linkComponent;
9077
- },
9078
9097
  get trustedHosts() {
9079
9098
  return props.trustedHosts;
9080
9099
  },
@@ -9192,9 +9211,6 @@ const ContentComponent = /* @__PURE__ */ qwik.componentQrl(/* @__PURE__ */ qwik.
9192
9211
  enrich: qwik._fnSignal((p0) => p0.enrich, [
9193
9212
  props
9194
9213
  ], "p0.enrich"),
9195
- linkComponent: qwik._fnSignal((p0) => p0.linkComponent, [
9196
- props
9197
- ], "p0.linkComponent"),
9198
9214
  locale: qwik._fnSignal((p0) => p0.locale, [
9199
9215
  props
9200
9216
  ], "p0.locale"),
@@ -90,11 +90,7 @@ function getBlockComponentOptions(block) {
90
90
  var _a;
91
91
  return {
92
92
  ...(_a = block.component) == null ? void 0 : _a.options,
93
- ...block.options,
94
- /**
95
- * Our built-in components frequently make use of the block, so we provide all of it under `builderBlock`
96
- */
97
- builderBlock: block
93
+ ...block.options
98
94
  };
99
95
  }
100
96
  const MSG_PREFIX = "[Builder.io]: ";
@@ -3460,17 +3456,10 @@ theFunction();
3460
3456
  });
3461
3457
  interpreter.setProperty(globalObject, "setRootState", interpreter.createNativeFunction(setRootState));
3462
3458
  };
3463
- try {
3464
- const myInterpreter = new t(transformed, initFunc);
3465
- myInterpreter.run();
3466
- const output = myInterpreter.pseudoToNative(myInterpreter.value);
3467
- return output;
3468
- } catch (e) {
3469
- logger.warn("Custom code error in edge runtime. NOTE: your code must be ES5 JavaScript.", {
3470
- e
3471
- });
3472
- return;
3473
- }
3459
+ const myInterpreter = new t(transformed, initFunc);
3460
+ myInterpreter.run();
3461
+ const output = myInterpreter.pseudoToNative(myInterpreter.value);
3462
+ return output;
3474
3463
  };
3475
3464
  const checkIsDefined = (maybeT) => maybeT !== null && maybeT !== void 0;
3476
3465
  function isNodeRuntime() {
@@ -3859,24 +3848,53 @@ const getRepeatItemData = ({ block, context }) => {
3859
3848
  }));
3860
3849
  return repeatArray;
3861
3850
  };
3862
- const shouldPassLinkComponent = (block) => {
3863
- return block && (block.isRSC || [
3851
+ const provideLinkComponent = (block, linkComponent) => {
3852
+ return block && (block.isRSC && TARGET === "rsc" || [
3864
3853
  "Core:Button",
3865
3854
  "Symbol",
3866
3855
  "Columns",
3867
3856
  "Form:Form",
3868
3857
  "Builder: Tabs",
3869
3858
  "Builder:Accordion"
3870
- ].includes(block.name));
3859
+ ].includes(block.name)) ? {
3860
+ builderLinkComponent: linkComponent
3861
+ } : {};
3871
3862
  };
3872
- const shouldPassRegisteredComponents = (block) => {
3873
- return block && (block.isRSC || [
3863
+ const provideRegisteredComponents = (block, registeredComponents) => {
3864
+ return block && (block.isRSC && TARGET === "rsc" || [
3874
3865
  "Symbol",
3875
3866
  "Columns",
3876
3867
  "Form:Form",
3877
3868
  "Builder: Tabs",
3878
3869
  "Builder:Accordion"
3879
- ].includes(block.name));
3870
+ ].includes(block.name)) ? {
3871
+ builderComponents: registeredComponents
3872
+ } : {};
3873
+ };
3874
+ const provideBuilderBlock = (block, builderBlock) => {
3875
+ return block && (block.isRSC && TARGET === "rsc" || TARGET === "reactNative" || [
3876
+ "Builder:Accordion",
3877
+ "Columns",
3878
+ "Form:Form",
3879
+ "Builder: Tabs",
3880
+ "Symbol",
3881
+ "Image",
3882
+ "Video"
3883
+ ].includes(block.name)) ? {
3884
+ builderBlock
3885
+ } : {};
3886
+ };
3887
+ const provideBuilderContext = (block, context) => {
3888
+ return block && (block.isRSC && TARGET === "rsc" || [
3889
+ "Builder:Accordion",
3890
+ "Columns",
3891
+ "Form:Form",
3892
+ "Builder: Tabs",
3893
+ "Symbol",
3894
+ "Slot"
3895
+ ].includes(block.name)) ? {
3896
+ builderContext: context
3897
+ } : {};
3880
3898
  };
3881
3899
  const SIZES = {
3882
3900
  small: {
@@ -4334,13 +4352,10 @@ const Block = /* @__PURE__ */ componentQrl(/* @__PURE__ */ inlinedQrl((props) =>
4334
4352
  componentRef: (_a2 = blockComponent2.value) == null ? void 0 : _a2.component,
4335
4353
  componentOptions: {
4336
4354
  ...getBlockComponentOptions(processedBlock2.value),
4337
- builderContext: props2.context,
4338
- ...shouldPassLinkComponent(blockComponent2.value) ? {
4339
- builderLinkComponent: props2.linkComponent
4340
- } : {},
4341
- ...shouldPassRegisteredComponents(blockComponent2.value) ? {
4342
- builderComponents: props2.registeredComponents
4343
- } : {}
4355
+ ...provideBuilderBlock(blockComponent2.value, processedBlock2.value),
4356
+ ...provideBuilderContext(blockComponent2.value, props2.context),
4357
+ ...provideLinkComponent(blockComponent2.value, props2.linkComponent),
4358
+ ...provideRegisteredComponents(blockComponent2.value, props2.registeredComponents)
4344
4359
  },
4345
4360
  context: props2.context,
4346
4361
  linkComponent: props2.linkComponent,
@@ -4395,9 +4410,6 @@ const Block = /* @__PURE__ */ componentQrl(/* @__PURE__ */ inlinedQrl((props) =>
4395
4410
  get context() {
4396
4411
  return props.context;
4397
4412
  },
4398
- get linkComponent() {
4399
- return props.linkComponent;
4400
- },
4401
4413
  children: [
4402
4414
  /* @__PURE__ */ _jsxC(ComponentRef, {
4403
4415
  get componentRef() {
@@ -4492,10 +4504,7 @@ const Block = /* @__PURE__ */ componentQrl(/* @__PURE__ */ inlinedQrl((props) =>
4492
4504
  ], "p0.value"),
4493
4505
  context: _fnSignal((p0) => p0.context, [
4494
4506
  props
4495
- ], "p0.context"),
4496
- linkComponent: _fnSignal((p0) => p0.linkComponent, [
4497
- props
4498
- ], "p0.linkComponent")
4507
+ ], "p0.context")
4499
4508
  }
4500
4509
  }, 1, "jN_2") : (repeatItem.value || []).map((data, index) => {
4501
4510
  return /* @__PURE__ */ _jsxC(RepeatedBlock, {
@@ -5063,7 +5072,12 @@ const Image = /* @__PURE__ */ componentQrl(/* @__PURE__ */ inlinedQrl((props) =>
5063
5072
  class: _fnSignal((p0) => "builder-image" + (p0.className ? " " + p0.className : "") + " img-Image", [
5064
5073
  props
5065
5074
  ], '"builder-image"+(p0.className?" "+p0.className:"")+" img-Image"'),
5066
- loading: "lazy",
5075
+ fetchPriority: _fnSignal((p0) => p0.highPriority ? "high" : "auto", [
5076
+ props
5077
+ ], 'p0.highPriority?"high":"auto"'),
5078
+ loading: _fnSignal((p0) => p0.highPriority ? "eager" : "lazy", [
5079
+ props
5080
+ ], 'p0.highPriority?"eager":"lazy"'),
5067
5081
  role: _fnSignal((p0) => p0.altText ? void 0 : "presentation", [
5068
5082
  props
5069
5083
  ], 'p0.altText?undefined:"presentation"'),
@@ -6098,6 +6112,12 @@ const componentInfo$d = {
6098
6112
  helperText: "When child blocks are provided, fit to them instead of using the image's aspect ratio",
6099
6113
  defaultValue: true
6100
6114
  },
6115
+ {
6116
+ name: "highPriority",
6117
+ type: "boolean",
6118
+ advanced: true,
6119
+ helperText: "Mark this image as high priority compared to other images on the page. This prevents lazy loading of the image and tells the browser to load this image before others on the page."
6120
+ },
6101
6121
  {
6102
6122
  name: "aspectRatio",
6103
6123
  type: "number",
@@ -8298,10 +8318,12 @@ const DEFAULT_TRUSTED_HOSTS = [
8298
8318
  "qa.builder.io"
8299
8319
  ];
8300
8320
  function isFromTrustedHost(trustedHosts, e) {
8321
+ if (!e.origin.startsWith("http") && !e.origin.startsWith("https"))
8322
+ return false;
8301
8323
  const url = new URL(e.origin), hostname = url.hostname;
8302
8324
  return (trustedHosts || DEFAULT_TRUSTED_HOSTS).findIndex((trustedHost) => trustedHost.startsWith("*.") ? hostname.endsWith(trustedHost.slice(1)) : trustedHost === hostname) > -1;
8303
8325
  }
8304
- const SDK_VERSION = "0.14.26";
8326
+ const SDK_VERSION = "0.14.28";
8305
8327
  const registry = {};
8306
8328
  function register(type, info) {
8307
8329
  let typeList = registry[type];
@@ -9070,9 +9092,6 @@ const ContentComponent = /* @__PURE__ */ componentQrl(/* @__PURE__ */ inlinedQrl
9070
9092
  get contentWrapperProps() {
9071
9093
  return props.contentWrapperProps;
9072
9094
  },
9073
- get linkComponent() {
9074
- return props.linkComponent;
9075
- },
9076
9095
  get trustedHosts() {
9077
9096
  return props.trustedHosts;
9078
9097
  },
@@ -9190,9 +9209,6 @@ const ContentComponent = /* @__PURE__ */ componentQrl(/* @__PURE__ */ inlinedQrl
9190
9209
  enrich: _fnSignal((p0) => p0.enrich, [
9191
9210
  props
9192
9211
  ], "p0.enrich"),
9193
- linkComponent: _fnSignal((p0) => p0.linkComponent, [
9194
- props
9195
- ], "p0.linkComponent"),
9196
9212
  locale: _fnSignal((p0) => p0.locale, [
9197
9213
  props
9198
9214
  ], "p0.locale"),
@@ -94,11 +94,7 @@ function getBlockComponentOptions(block) {
94
94
  var _a;
95
95
  return {
96
96
  ...(_a = block.component) == null ? void 0 : _a.options,
97
- ...block.options,
98
- /**
99
- * Our built-in components frequently make use of the block, so we provide all of it under `builderBlock`
100
- */
101
- builderBlock: block
97
+ ...block.options
102
98
  };
103
99
  }
104
100
  const MSG_PREFIX = "[Builder.io]: ";
@@ -762,24 +758,53 @@ const getRepeatItemData = ({ block, context }) => {
762
758
  }));
763
759
  return repeatArray;
764
760
  };
765
- const shouldPassLinkComponent = (block) => {
766
- return block && (block.isRSC || [
761
+ const provideLinkComponent = (block, linkComponent) => {
762
+ return block && (block.isRSC && TARGET === "rsc" || [
767
763
  "Core:Button",
768
764
  "Symbol",
769
765
  "Columns",
770
766
  "Form:Form",
771
767
  "Builder: Tabs",
772
768
  "Builder:Accordion"
773
- ].includes(block.name));
769
+ ].includes(block.name)) ? {
770
+ builderLinkComponent: linkComponent
771
+ } : {};
774
772
  };
775
- const shouldPassRegisteredComponents = (block) => {
776
- return block && (block.isRSC || [
773
+ const provideRegisteredComponents = (block, registeredComponents) => {
774
+ return block && (block.isRSC && TARGET === "rsc" || [
777
775
  "Symbol",
778
776
  "Columns",
779
777
  "Form:Form",
780
778
  "Builder: Tabs",
781
779
  "Builder:Accordion"
782
- ].includes(block.name));
780
+ ].includes(block.name)) ? {
781
+ builderComponents: registeredComponents
782
+ } : {};
783
+ };
784
+ const provideBuilderBlock = (block, builderBlock) => {
785
+ return block && (block.isRSC && TARGET === "rsc" || TARGET === "reactNative" || [
786
+ "Builder:Accordion",
787
+ "Columns",
788
+ "Form:Form",
789
+ "Builder: Tabs",
790
+ "Symbol",
791
+ "Image",
792
+ "Video"
793
+ ].includes(block.name)) ? {
794
+ builderBlock
795
+ } : {};
796
+ };
797
+ const provideBuilderContext = (block, context) => {
798
+ return block && (block.isRSC && TARGET === "rsc" || [
799
+ "Builder:Accordion",
800
+ "Columns",
801
+ "Form:Form",
802
+ "Builder: Tabs",
803
+ "Symbol",
804
+ "Slot"
805
+ ].includes(block.name)) ? {
806
+ builderContext: context
807
+ } : {};
783
808
  };
784
809
  const SIZES = {
785
810
  small: {
@@ -1237,13 +1262,10 @@ const Block = /* @__PURE__ */ qwik.componentQrl(/* @__PURE__ */ qwik.inlinedQrl(
1237
1262
  componentRef: (_a2 = blockComponent2.value) == null ? void 0 : _a2.component,
1238
1263
  componentOptions: {
1239
1264
  ...getBlockComponentOptions(processedBlock2.value),
1240
- builderContext: props2.context,
1241
- ...shouldPassLinkComponent(blockComponent2.value) ? {
1242
- builderLinkComponent: props2.linkComponent
1243
- } : {},
1244
- ...shouldPassRegisteredComponents(blockComponent2.value) ? {
1245
- builderComponents: props2.registeredComponents
1246
- } : {}
1265
+ ...provideBuilderBlock(blockComponent2.value, processedBlock2.value),
1266
+ ...provideBuilderContext(blockComponent2.value, props2.context),
1267
+ ...provideLinkComponent(blockComponent2.value, props2.linkComponent),
1268
+ ...provideRegisteredComponents(blockComponent2.value, props2.registeredComponents)
1247
1269
  },
1248
1270
  context: props2.context,
1249
1271
  linkComponent: props2.linkComponent,
@@ -1298,9 +1320,6 @@ const Block = /* @__PURE__ */ qwik.componentQrl(/* @__PURE__ */ qwik.inlinedQrl(
1298
1320
  get context() {
1299
1321
  return props.context;
1300
1322
  },
1301
- get linkComponent() {
1302
- return props.linkComponent;
1303
- },
1304
1323
  children: [
1305
1324
  /* @__PURE__ */ qwik._jsxC(ComponentRef, {
1306
1325
  get componentRef() {
@@ -1395,10 +1414,7 @@ const Block = /* @__PURE__ */ qwik.componentQrl(/* @__PURE__ */ qwik.inlinedQrl(
1395
1414
  ], "p0.value"),
1396
1415
  context: qwik._fnSignal((p0) => p0.context, [
1397
1416
  props
1398
- ], "p0.context"),
1399
- linkComponent: qwik._fnSignal((p0) => p0.linkComponent, [
1400
- props
1401
- ], "p0.linkComponent")
1417
+ ], "p0.context")
1402
1418
  }
1403
1419
  }, 1, "jN_2") : (repeatItem.value || []).map((data, index) => {
1404
1420
  return /* @__PURE__ */ qwik._jsxC(RepeatedBlock, {
@@ -1966,7 +1982,12 @@ const Image = /* @__PURE__ */ qwik.componentQrl(/* @__PURE__ */ qwik.inlinedQrl(
1966
1982
  class: qwik._fnSignal((p0) => "builder-image" + (p0.className ? " " + p0.className : "") + " img-Image", [
1967
1983
  props
1968
1984
  ], '"builder-image"+(p0.className?" "+p0.className:"")+" img-Image"'),
1969
- loading: "lazy",
1985
+ fetchPriority: qwik._fnSignal((p0) => p0.highPriority ? "high" : "auto", [
1986
+ props
1987
+ ], 'p0.highPriority?"high":"auto"'),
1988
+ loading: qwik._fnSignal((p0) => p0.highPriority ? "eager" : "lazy", [
1989
+ props
1990
+ ], 'p0.highPriority?"eager":"lazy"'),
1970
1991
  role: qwik._fnSignal((p0) => p0.altText ? void 0 : "presentation", [
1971
1992
  props
1972
1993
  ], 'p0.altText?undefined:"presentation"'),
@@ -3001,6 +3022,12 @@ const componentInfo$d = {
3001
3022
  helperText: "When child blocks are provided, fit to them instead of using the image's aspect ratio",
3002
3023
  defaultValue: true
3003
3024
  },
3025
+ {
3026
+ name: "highPriority",
3027
+ type: "boolean",
3028
+ advanced: true,
3029
+ helperText: "Mark this image as high priority compared to other images on the page. This prevents lazy loading of the image and tells the browser to load this image before others on the page."
3030
+ },
3004
3031
  {
3005
3032
  name: "aspectRatio",
3006
3033
  type: "number",
@@ -5201,10 +5228,12 @@ const DEFAULT_TRUSTED_HOSTS = [
5201
5228
  "qa.builder.io"
5202
5229
  ];
5203
5230
  function isFromTrustedHost(trustedHosts, e) {
5231
+ if (!e.origin.startsWith("http") && !e.origin.startsWith("https"))
5232
+ return false;
5204
5233
  const url = new URL(e.origin), hostname = url.hostname;
5205
5234
  return (trustedHosts || DEFAULT_TRUSTED_HOSTS).findIndex((trustedHost) => trustedHost.startsWith("*.") ? hostname.endsWith(trustedHost.slice(1)) : trustedHost === hostname) > -1;
5206
5235
  }
5207
- const SDK_VERSION = "0.14.26";
5236
+ const SDK_VERSION = "0.14.28";
5208
5237
  const registry = {};
5209
5238
  function register(type, info) {
5210
5239
  let typeList = registry[type];
@@ -5973,9 +6002,6 @@ const ContentComponent = /* @__PURE__ */ qwik.componentQrl(/* @__PURE__ */ qwik.
5973
6002
  get contentWrapperProps() {
5974
6003
  return props.contentWrapperProps;
5975
6004
  },
5976
- get linkComponent() {
5977
- return props.linkComponent;
5978
- },
5979
6005
  get trustedHosts() {
5980
6006
  return props.trustedHosts;
5981
6007
  },
@@ -6093,9 +6119,6 @@ const ContentComponent = /* @__PURE__ */ qwik.componentQrl(/* @__PURE__ */ qwik.
6093
6119
  enrich: qwik._fnSignal((p0) => p0.enrich, [
6094
6120
  props
6095
6121
  ], "p0.enrich"),
6096
- linkComponent: qwik._fnSignal((p0) => p0.linkComponent, [
6097
- props
6098
- ], "p0.linkComponent"),
6099
6122
  locale: qwik._fnSignal((p0) => p0.locale, [
6100
6123
  props
6101
6124
  ], "p0.locale"),
@@ -92,11 +92,7 @@ function getBlockComponentOptions(block) {
92
92
  var _a;
93
93
  return {
94
94
  ...(_a = block.component) == null ? void 0 : _a.options,
95
- ...block.options,
96
- /**
97
- * Our built-in components frequently make use of the block, so we provide all of it under `builderBlock`
98
- */
99
- builderBlock: block
95
+ ...block.options
100
96
  };
101
97
  }
102
98
  const MSG_PREFIX = "[Builder.io]: ";
@@ -760,24 +756,53 @@ const getRepeatItemData = ({ block, context }) => {
760
756
  }));
761
757
  return repeatArray;
762
758
  };
763
- const shouldPassLinkComponent = (block) => {
764
- return block && (block.isRSC || [
759
+ const provideLinkComponent = (block, linkComponent) => {
760
+ return block && (block.isRSC && TARGET === "rsc" || [
765
761
  "Core:Button",
766
762
  "Symbol",
767
763
  "Columns",
768
764
  "Form:Form",
769
765
  "Builder: Tabs",
770
766
  "Builder:Accordion"
771
- ].includes(block.name));
767
+ ].includes(block.name)) ? {
768
+ builderLinkComponent: linkComponent
769
+ } : {};
772
770
  };
773
- const shouldPassRegisteredComponents = (block) => {
774
- return block && (block.isRSC || [
771
+ const provideRegisteredComponents = (block, registeredComponents) => {
772
+ return block && (block.isRSC && TARGET === "rsc" || [
775
773
  "Symbol",
776
774
  "Columns",
777
775
  "Form:Form",
778
776
  "Builder: Tabs",
779
777
  "Builder:Accordion"
780
- ].includes(block.name));
778
+ ].includes(block.name)) ? {
779
+ builderComponents: registeredComponents
780
+ } : {};
781
+ };
782
+ const provideBuilderBlock = (block, builderBlock) => {
783
+ return block && (block.isRSC && TARGET === "rsc" || TARGET === "reactNative" || [
784
+ "Builder:Accordion",
785
+ "Columns",
786
+ "Form:Form",
787
+ "Builder: Tabs",
788
+ "Symbol",
789
+ "Image",
790
+ "Video"
791
+ ].includes(block.name)) ? {
792
+ builderBlock
793
+ } : {};
794
+ };
795
+ const provideBuilderContext = (block, context) => {
796
+ return block && (block.isRSC && TARGET === "rsc" || [
797
+ "Builder:Accordion",
798
+ "Columns",
799
+ "Form:Form",
800
+ "Builder: Tabs",
801
+ "Symbol",
802
+ "Slot"
803
+ ].includes(block.name)) ? {
804
+ builderContext: context
805
+ } : {};
781
806
  };
782
807
  const SIZES = {
783
808
  small: {
@@ -1235,13 +1260,10 @@ const Block = /* @__PURE__ */ componentQrl(/* @__PURE__ */ inlinedQrl((props) =>
1235
1260
  componentRef: (_a2 = blockComponent2.value) == null ? void 0 : _a2.component,
1236
1261
  componentOptions: {
1237
1262
  ...getBlockComponentOptions(processedBlock2.value),
1238
- builderContext: props2.context,
1239
- ...shouldPassLinkComponent(blockComponent2.value) ? {
1240
- builderLinkComponent: props2.linkComponent
1241
- } : {},
1242
- ...shouldPassRegisteredComponents(blockComponent2.value) ? {
1243
- builderComponents: props2.registeredComponents
1244
- } : {}
1263
+ ...provideBuilderBlock(blockComponent2.value, processedBlock2.value),
1264
+ ...provideBuilderContext(blockComponent2.value, props2.context),
1265
+ ...provideLinkComponent(blockComponent2.value, props2.linkComponent),
1266
+ ...provideRegisteredComponents(blockComponent2.value, props2.registeredComponents)
1245
1267
  },
1246
1268
  context: props2.context,
1247
1269
  linkComponent: props2.linkComponent,
@@ -1296,9 +1318,6 @@ const Block = /* @__PURE__ */ componentQrl(/* @__PURE__ */ inlinedQrl((props) =>
1296
1318
  get context() {
1297
1319
  return props.context;
1298
1320
  },
1299
- get linkComponent() {
1300
- return props.linkComponent;
1301
- },
1302
1321
  children: [
1303
1322
  /* @__PURE__ */ _jsxC(ComponentRef, {
1304
1323
  get componentRef() {
@@ -1393,10 +1412,7 @@ const Block = /* @__PURE__ */ componentQrl(/* @__PURE__ */ inlinedQrl((props) =>
1393
1412
  ], "p0.value"),
1394
1413
  context: _fnSignal((p0) => p0.context, [
1395
1414
  props
1396
- ], "p0.context"),
1397
- linkComponent: _fnSignal((p0) => p0.linkComponent, [
1398
- props
1399
- ], "p0.linkComponent")
1415
+ ], "p0.context")
1400
1416
  }
1401
1417
  }, 1, "jN_2") : (repeatItem.value || []).map((data, index) => {
1402
1418
  return /* @__PURE__ */ _jsxC(RepeatedBlock, {
@@ -1964,7 +1980,12 @@ const Image = /* @__PURE__ */ componentQrl(/* @__PURE__ */ inlinedQrl((props) =>
1964
1980
  class: _fnSignal((p0) => "builder-image" + (p0.className ? " " + p0.className : "") + " img-Image", [
1965
1981
  props
1966
1982
  ], '"builder-image"+(p0.className?" "+p0.className:"")+" img-Image"'),
1967
- loading: "lazy",
1983
+ fetchPriority: _fnSignal((p0) => p0.highPriority ? "high" : "auto", [
1984
+ props
1985
+ ], 'p0.highPriority?"high":"auto"'),
1986
+ loading: _fnSignal((p0) => p0.highPriority ? "eager" : "lazy", [
1987
+ props
1988
+ ], 'p0.highPriority?"eager":"lazy"'),
1968
1989
  role: _fnSignal((p0) => p0.altText ? void 0 : "presentation", [
1969
1990
  props
1970
1991
  ], 'p0.altText?undefined:"presentation"'),
@@ -2999,6 +3020,12 @@ const componentInfo$d = {
2999
3020
  helperText: "When child blocks are provided, fit to them instead of using the image's aspect ratio",
3000
3021
  defaultValue: true
3001
3022
  },
3023
+ {
3024
+ name: "highPriority",
3025
+ type: "boolean",
3026
+ advanced: true,
3027
+ helperText: "Mark this image as high priority compared to other images on the page. This prevents lazy loading of the image and tells the browser to load this image before others on the page."
3028
+ },
3002
3029
  {
3003
3030
  name: "aspectRatio",
3004
3031
  type: "number",
@@ -5199,10 +5226,12 @@ const DEFAULT_TRUSTED_HOSTS = [
5199
5226
  "qa.builder.io"
5200
5227
  ];
5201
5228
  function isFromTrustedHost(trustedHosts, e) {
5229
+ if (!e.origin.startsWith("http") && !e.origin.startsWith("https"))
5230
+ return false;
5202
5231
  const url = new URL(e.origin), hostname = url.hostname;
5203
5232
  return (trustedHosts || DEFAULT_TRUSTED_HOSTS).findIndex((trustedHost) => trustedHost.startsWith("*.") ? hostname.endsWith(trustedHost.slice(1)) : trustedHost === hostname) > -1;
5204
5233
  }
5205
- const SDK_VERSION = "0.14.26";
5234
+ const SDK_VERSION = "0.14.28";
5206
5235
  const registry = {};
5207
5236
  function register(type, info) {
5208
5237
  let typeList = registry[type];
@@ -5971,9 +6000,6 @@ const ContentComponent = /* @__PURE__ */ componentQrl(/* @__PURE__ */ inlinedQrl
5971
6000
  get contentWrapperProps() {
5972
6001
  return props.contentWrapperProps;
5973
6002
  },
5974
- get linkComponent() {
5975
- return props.linkComponent;
5976
- },
5977
6003
  get trustedHosts() {
5978
6004
  return props.trustedHosts;
5979
6005
  },
@@ -6091,9 +6117,6 @@ const ContentComponent = /* @__PURE__ */ componentQrl(/* @__PURE__ */ inlinedQrl
6091
6117
  enrich: _fnSignal((p0) => p0.enrich, [
6092
6118
  props
6093
6119
  ], "p0.enrich"),
6094
- linkComponent: _fnSignal((p0) => p0.linkComponent, [
6095
- props
6096
- ], "p0.linkComponent"),
6097
6120
  locale: _fnSignal((p0) => p0.locale, [
6098
6121
  props
6099
6122
  ], "p0.locale"),
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@builder.io/sdk-qwik",
3
- "version": "0.14.26",
3
+ "version": "0.14.28",
4
4
  "homepage": "https://github.com/BuilderIO/builder/tree/main/packages/sdks/output/qwik",
5
5
  "repository": {
6
6
  "type": "git",
@@ -114,7 +114,7 @@
114
114
  "@types/node": "latest",
115
115
  "nx": "16.10.0",
116
116
  "nx-cloud": "16.5.2",
117
- "typescript": "^5.1.6",
117
+ "typescript": "5.5.2",
118
118
  "vite": "^4.3.2"
119
119
  },
120
120
  "peerDependencies": {
@@ -1,5 +1,6 @@
1
1
  import type { BuilderBlock } from '../../types/builder-block';
2
2
  export interface ImageProps {
3
+ highPriority?: boolean;
3
4
  className?: string;
4
5
  image: string;
5
6
  sizes?: string;
@@ -14,5 +14,23 @@ export declare const getInheritedStyles: ({ block, context }: {
14
14
  block: BuilderBlock;
15
15
  context: BuilderContextInterface;
16
16
  }) => Partial<CSSStyleDeclaration>;
17
- export declare const shouldPassLinkComponent: (block: RegisteredComponent | null | undefined) => boolean | null | undefined;
18
- export declare const shouldPassRegisteredComponents: (block: RegisteredComponent | null | undefined) => boolean | null | undefined;
17
+ export declare const provideLinkComponent: (block: RegisteredComponent | null | undefined, linkComponent: any) => {
18
+ builderLinkComponent: any;
19
+ } | {
20
+ builderLinkComponent?: undefined;
21
+ };
22
+ export declare const provideRegisteredComponents: (block: RegisteredComponent | null | undefined, registeredComponents: RegisteredComponents) => {
23
+ builderComponents: RegisteredComponents;
24
+ } | {
25
+ builderComponents?: undefined;
26
+ };
27
+ export declare const provideBuilderBlock: (block: RegisteredComponent | null | undefined, builderBlock: BuilderBlock) => {
28
+ builderBlock: BuilderBlock;
29
+ } | {
30
+ builderBlock?: undefined;
31
+ };
32
+ export declare const provideBuilderContext: (block: RegisteredComponent | null | undefined, context: BuilderContextInterface) => {
33
+ builderContext: BuilderContextInterface;
34
+ } | {
35
+ builderContext?: undefined;
36
+ };
@@ -4,7 +4,6 @@ type BlockWrapperProps = {
4
4
  Wrapper: string;
5
5
  block: BuilderBlock;
6
6
  context: BuilderContextInterface;
7
- linkComponent: any;
8
7
  children?: any;
9
8
  };
10
9
  /**
@@ -19,7 +19,7 @@ export interface ComponentProps {
19
19
  includeBlockProps: boolean;
20
20
  isInteractive: boolean | undefined;
21
21
  }
22
- export declare const getWrapperProps: ({ componentOptions, builderBlock, context, componentRef, includeBlockProps, isInteractive, contextValue }: Omit<ComponentProps, "registeredComponents" | "blockChildren"> & {
22
+ export declare const getWrapperProps: ({ componentOptions, builderBlock, context, componentRef, includeBlockProps, isInteractive, contextValue }: Omit<ComponentProps, "blockChildren" | "registeredComponents"> & {
23
23
  contextValue: BuilderContextInterface;
24
24
  }) => InteractiveElementProps | {
25
25
  attributes?: {
@@ -2,7 +2,7 @@ import { BuilderContextInterface } from "../../../context/types";
2
2
  import { BuilderContent } from "../../../types/builder-content";
3
3
  import { Dictionary } from "../../../types/typescript";
4
4
  import { ContentProps } from "../content.types";
5
- type BuilderEditorProps = Omit<ContentProps, "customComponents" | "apiVersion" | "isSsrAbTest" | "blocksWrapper" | "blocksWrapperProps" | "isNestedRender"> & {
5
+ type BuilderEditorProps = Omit<ContentProps, "customComponents" | "apiVersion" | "isSsrAbTest" | "blocksWrapper" | "blocksWrapperProps" | "isNestedRender" | "linkComponent"> & {
6
6
  builderContextSignal: BuilderContextInterface;
7
7
  setBuilderContextSignal?: (signal: any) => any;
8
8
  children?: any;
@@ -7,11 +7,11 @@ export interface CustomFont {
7
7
  };
8
8
  }
9
9
  export declare const getFontCss: ({ customFonts }: {
10
- customFonts?: CustomFont[] | undefined;
10
+ customFonts?: CustomFont[];
11
11
  }) => string;
12
12
  export declare const getCss: ({ cssCode, contentId }: {
13
- cssCode?: string | undefined;
14
- contentId?: string | undefined;
13
+ cssCode?: string;
14
+ contentId?: string;
15
15
  }) => string;
16
16
  export declare const getDefaultStyles: (isNested: boolean | undefined) => "" | "\n.builder-button {\n all: unset;\n}\n\n.builder-text > p:first-of-type, .builder-text > .builder-paragraph:first-of-type {\n margin: 0;\n}\n.builder-text > p, .builder-text > .builder-paragraph {\n color: inherit;\n line-height: inherit;\n letter-spacing: inherit;\n font-weight: inherit;\n font-size: inherit;\n text-align: inherit;\n font-family: inherit;\n}\n";
17
17
  export declare const getWrapperClassName: (variationId?: string) => string;
@@ -1,7 +1,7 @@
1
1
  import type { BuilderContent } from '../../types/builder-content';
2
2
  import type { Nullable } from '../../types/typescript';
3
3
  import type { ContentProps } from './content.types';
4
- export declare const getRootStateInitialValue: ({ content, data, locale }: Pick<ContentProps, 'content' | 'data' | 'locale'>) => {
4
+ export declare const getRootStateInitialValue: ({ content, data, locale }: Pick<ContentProps, "content" | "data" | "locale">) => {
5
5
  locale?: string | undefined;
6
6
  };
7
- export declare const getContentInitialValue: ({ content, data }: Pick<ContentProps, 'content' | 'data'>) => Nullable<BuilderContent>;
7
+ export declare const getContentInitialValue: ({ content, data }: Pick<ContentProps, "content" | "data">) => Nullable<BuilderContent>;
@@ -4,25 +4,25 @@ export declare const getVariants: (content: Nullable<BuilderContent>) => {
4
4
  testVariationId: string | undefined;
5
5
  id: string | undefined;
6
6
  data?: {
7
- [key: string]: any;
8
- title?: string | undefined;
9
- blocks?: import("../..").BuilderBlock[] | undefined;
10
- inputs?: import("../../types/input").Input[] | undefined;
7
+ title?: string;
8
+ blocks?: import("../..").BuilderBlock[];
9
+ inputs?: import("../../types/input").Input[];
11
10
  state?: {
12
11
  [key: string]: any;
13
- } | undefined;
14
- jsCode?: string | undefined;
15
- tsCode?: string | undefined;
12
+ };
13
+ jsCode?: string;
14
+ tsCode?: string;
16
15
  httpRequests?: {
17
16
  [key: string]: string;
18
- } | undefined;
19
- } | undefined;
20
- name?: string | undefined;
21
- testRatio?: number | undefined;
22
- meta?: {
17
+ };
23
18
  [key: string]: any;
19
+ };
20
+ name?: string;
21
+ testRatio?: number;
22
+ meta?: {
24
23
  breakpoints?: import("../../types/typescript").Nullable<import("../../types/builder-content").Breakpoints>;
25
- } | undefined;
24
+ [key: string]: any;
25
+ };
26
26
  }[];
27
27
  export declare const checkShouldRenderVariants: ({ canTrack, content }: {
28
28
  canTrack: Nullable<boolean>;
@@ -1 +1 @@
1
- export declare const SDK_VERSION = "0.14.26";
1
+ export declare const SDK_VERSION = "0.14.28";
@@ -1,2 +1,4 @@
1
+ type Target = import('../types/targets').Target;
1
2
  /** This file should be overriden for each framework. Ideally this would be implemented in Mitosis. */
2
- export declare const TARGET: import("../types/targets").Target;
3
+ export declare const TARGET: Target;
4
+ export {};
@@ -5,6 +5,6 @@ export type Patch = {
5
5
  };
6
6
  export declare const applyPatchWithMinimalMutationChain: <T extends object>(obj: T, patch: {
7
7
  path: string;
8
- op: 'add' | 'remove' | 'replace';
8
+ op: "add" | "remove" | "replace";
9
9
  value: any;
10
10
  }, preserveRoot?: boolean) => T;
@@ -18,8 +18,8 @@ export type ExecutorArgs = Pick<BuilderContextInterface, 'localState' | 'context
18
18
  };
19
19
  export type Executor = (args: ExecutorArgs) => any;
20
20
  export type FunctionArguments = ReturnType<typeof getFunctionArguments>;
21
- export declare const getFunctionArguments: ({ builder, context, event, state }: Pick<ExecutorArgs, "context" | "builder" | "event"> & {
21
+ export declare const getFunctionArguments: ({ builder, context, event, state }: Pick<ExecutorArgs, "builder" | "context" | "event"> & {
22
22
  state: BuilderRenderState;
23
23
  }) => [string, Event | BuilderRenderState | import("../../context/types").BuilderRenderContext | BuilderGlobals | undefined][];
24
24
  export declare const getBuilderGlobals: () => BuilderGlobals;
25
- export declare const parseCode: (code: string, { isExpression }: Pick<EvaluatorArgs, 'isExpression'>) => string;
25
+ export declare const parseCode: (code: string, { isExpression }: Pick<EvaluatorArgs, "isExpression">) => string;
@@ -1,4 +1,3 @@
1
- /// <reference types="node" />
2
1
  type Global = typeof global | typeof window | typeof self | typeof globalThis;
3
2
  export declare function getGlobalThis(): Global;
4
3
  export {};
@@ -14,6 +14,6 @@ export declare const getCookie: (args: GetCookieArgs) => Promise<string | undefi
14
14
  export declare const setCookie: ({ name, value, expires, canTrack }: {
15
15
  name: string;
16
16
  value: string;
17
- expires?: Date | undefined;
17
+ expires?: Date;
18
18
  } & CanTrack) => Promise<void>;
19
19
  export {};
@@ -1,7 +1,7 @@
1
1
  export declare const convertStyleMapToCSSArray: (style: Partial<CSSStyleDeclaration>) => string[];
2
2
  export declare const convertStyleMapToCSS: (style: Partial<CSSStyleDeclaration>) => string;
3
3
  export declare const createCssClass: ({ mediaQuery, className, styles }: {
4
- mediaQuery?: string | undefined;
4
+ mediaQuery?: string;
5
5
  className: string;
6
6
  styles: Partial<CSSStyleDeclaration>;
7
7
  }) => string;