@builder.io/sdk-solid 2.0.25 → 2.0.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.
- package/dist/index.d.ts +8 -0
- package/lib/browser/dev.js +41 -13
- package/lib/browser/dev.jsx +33 -17
- package/lib/browser/index.js +41 -13
- package/lib/browser/index.jsx +33 -17
- package/lib/edge/dev.js +41 -13
- package/lib/edge/dev.jsx +33 -17
- package/lib/edge/index.js +41 -13
- package/lib/edge/index.jsx +33 -17
- package/lib/node/dev.js +44 -17
- package/lib/node/dev.jsx +36 -21
- package/lib/node/index.js +44 -17
- package/lib/node/index.jsx +36 -21
- package/package.json +1 -1
package/dist/index.d.ts
CHANGED
|
@@ -686,6 +686,10 @@ interface ContentVariantsPrps extends ExtraFrameworkProps {
|
|
|
686
686
|
* Your API Key: needed to enable visual editing, and to dynamically fetch symbols (required).
|
|
687
687
|
*/
|
|
688
688
|
apiKey: string;
|
|
689
|
+
/**
|
|
690
|
+
* Sets the host of Builder API calls. (Defaults to global `https://cdn.builder.io`)
|
|
691
|
+
*/
|
|
692
|
+
apiHost?: string;
|
|
689
693
|
apiVersion?: ApiVersion;
|
|
690
694
|
/**
|
|
691
695
|
* An array of custom components to register (optional).
|
|
@@ -1012,6 +1016,10 @@ interface GetContentOptions {
|
|
|
1012
1016
|
* Optional fetch options to be passed as the second argument to the `fetch` function.
|
|
1013
1017
|
*/
|
|
1014
1018
|
fetchOptions?: object;
|
|
1019
|
+
/**
|
|
1020
|
+
* Sets the host of Builder API calls. (Defaults to global `https://cdn.builder.io`)
|
|
1021
|
+
*/
|
|
1022
|
+
apiHost?: string;
|
|
1015
1023
|
}
|
|
1016
1024
|
|
|
1017
1025
|
type GetBuilderPropsOptions = (Omit<GetContentOptions, 'model'> & {
|
package/lib/browser/dev.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { delegateEvents, createComponent, spread, mergeProps, insert, effect, setAttribute, className, style, template, Dynamic, memo, use } from 'solid-js/web';
|
|
2
|
-
import { createContext, useContext, Show, For,
|
|
2
|
+
import { createContext, useContext, Show, For, createMemo, onMount, createSignal, createEffect, on } from 'solid-js';
|
|
3
3
|
|
|
4
4
|
// src/blocks/button/button.tsx
|
|
5
5
|
|
|
@@ -1656,15 +1656,20 @@ var getColumnsClass = (id) => {
|
|
|
1656
1656
|
|
|
1657
1657
|
// src/blocks/columns/columns.tsx
|
|
1658
1658
|
var _tmpl$3 = /* @__PURE__ */ template(`<div>`);
|
|
1659
|
-
var _tmpl$22 = /* @__PURE__ */ template(`<style>.div-
|
|
1659
|
+
var _tmpl$22 = /* @__PURE__ */ template(`<style>.div-a1dad3b8 {
|
|
1660
1660
|
display: flex;
|
|
1661
1661
|
line-height: normal;
|
|
1662
1662
|
}`);
|
|
1663
1663
|
function Columns(props) {
|
|
1664
|
-
const
|
|
1665
|
-
|
|
1666
|
-
|
|
1667
|
-
const
|
|
1664
|
+
const gutterSize = createMemo(() => {
|
|
1665
|
+
return typeof props.space === "number" ? props.space || 0 : 20;
|
|
1666
|
+
});
|
|
1667
|
+
const cols = createMemo(() => {
|
|
1668
|
+
return props.columns || [];
|
|
1669
|
+
});
|
|
1670
|
+
const stackAt = createMemo(() => {
|
|
1671
|
+
return props.stackColumnsAt || "tablet";
|
|
1672
|
+
});
|
|
1668
1673
|
function getTagName(column) {
|
|
1669
1674
|
return column.link ? props.builderLinkComponent || "a" : "div";
|
|
1670
1675
|
}
|
|
@@ -1688,6 +1693,9 @@ function Columns(props) {
|
|
|
1688
1693
|
}) {
|
|
1689
1694
|
return stackAt() === "never" ? desktopStyle : stackedStyle;
|
|
1690
1695
|
}
|
|
1696
|
+
const flexDir = createMemo(() => {
|
|
1697
|
+
return props.stackColumnsAt === "never" ? "row" : props.reverseColumnsWhenStacked ? "column-reverse" : "column";
|
|
1698
|
+
});
|
|
1691
1699
|
function columnsCssVars() {
|
|
1692
1700
|
return {
|
|
1693
1701
|
"--flex-dir": flexDir(),
|
|
@@ -1777,7 +1785,7 @@ function Columns(props) {
|
|
|
1777
1785
|
const _el$ = _tmpl$3();
|
|
1778
1786
|
spread(_el$, mergeProps({
|
|
1779
1787
|
get ["class"]() {
|
|
1780
|
-
return getColumnsClass(props.builderBlock?.id) + " div-
|
|
1788
|
+
return getColumnsClass(props.builderBlock?.id) + " div-a1dad3b8";
|
|
1781
1789
|
},
|
|
1782
1790
|
get style() {
|
|
1783
1791
|
return columnsCssVars();
|
|
@@ -4766,7 +4774,7 @@ function getPreviewContent(_searchParams) {
|
|
|
4766
4774
|
}
|
|
4767
4775
|
|
|
4768
4776
|
// src/constants/sdk-version.ts
|
|
4769
|
-
var SDK_VERSION = "2.0.
|
|
4777
|
+
var SDK_VERSION = "2.0.28";
|
|
4770
4778
|
|
|
4771
4779
|
// src/helpers/sdk-headers.ts
|
|
4772
4780
|
var getSdkHeaders = () => ({
|
|
@@ -4878,7 +4886,8 @@ var generateContentUrl = (options) => {
|
|
|
4878
4886
|
cacheSeconds,
|
|
4879
4887
|
staleCacheSeconds,
|
|
4880
4888
|
sort,
|
|
4881
|
-
includeUnpublished
|
|
4889
|
+
includeUnpublished,
|
|
4890
|
+
apiHost
|
|
4882
4891
|
} = options;
|
|
4883
4892
|
if (!apiKey) {
|
|
4884
4893
|
throw new Error("Missing API key");
|
|
@@ -4887,7 +4896,8 @@ var generateContentUrl = (options) => {
|
|
|
4887
4896
|
throw new Error(`Invalid apiVersion: expected 'v3', received '${apiVersion}'`);
|
|
4888
4897
|
}
|
|
4889
4898
|
const noTraverse = limit !== 1;
|
|
4890
|
-
const
|
|
4899
|
+
const baseUrl = apiHost || "https://cdn.builder.io";
|
|
4900
|
+
const url = new URL(`${baseUrl}/api/${apiVersion}/content/${model}`);
|
|
4891
4901
|
url.searchParams.set("apiKey", apiKey);
|
|
4892
4902
|
url.searchParams.set("limit", String(limit));
|
|
4893
4903
|
url.searchParams.set("noTraverse", String(noTraverse));
|
|
@@ -5175,7 +5185,10 @@ var createEvent = async ({
|
|
|
5175
5185
|
ownerId: apiKey
|
|
5176
5186
|
}
|
|
5177
5187
|
});
|
|
5178
|
-
async function _track(
|
|
5188
|
+
async function _track({
|
|
5189
|
+
apiHost,
|
|
5190
|
+
...eventProps
|
|
5191
|
+
}) {
|
|
5179
5192
|
if (!eventProps.apiKey) {
|
|
5180
5193
|
logger.error("Missing API key for track call. Please provide your API key.");
|
|
5181
5194
|
return;
|
|
@@ -5189,7 +5202,8 @@ async function _track(eventProps) {
|
|
|
5189
5202
|
if (!(isBrowser() || TARGET === "reactNative")) {
|
|
5190
5203
|
return;
|
|
5191
5204
|
}
|
|
5192
|
-
|
|
5205
|
+
const baseUrl = apiHost || "https://cdn.builder.io";
|
|
5206
|
+
return fetch(`${baseUrl}/api/v1/track`, {
|
|
5193
5207
|
method: "POST",
|
|
5194
5208
|
body: JSON.stringify({
|
|
5195
5209
|
events: [await createEvent(eventProps)]
|
|
@@ -5633,6 +5647,7 @@ function EnableEditor(props) {
|
|
|
5633
5647
|
const variationId = props.builderContextSignal.content?.testVariationId;
|
|
5634
5648
|
const contentId = props.builderContextSignal.content?.id;
|
|
5635
5649
|
_track({
|
|
5650
|
+
apiHost: props.apiHost,
|
|
5636
5651
|
type: "click",
|
|
5637
5652
|
canTrack: getDefaultCanTrack(props.canTrack),
|
|
5638
5653
|
contentId,
|
|
@@ -5692,7 +5707,7 @@ function EnableEditor(props) {
|
|
|
5692
5707
|
emitStateUpdate();
|
|
5693
5708
|
onMount(() => {
|
|
5694
5709
|
if (isBrowser()) {
|
|
5695
|
-
if (isEditing()) {
|
|
5710
|
+
if (isEditing() && !props.isNestedRender) {
|
|
5696
5711
|
window.addEventListener("message", processMessage);
|
|
5697
5712
|
registerInsertMenu();
|
|
5698
5713
|
setupBrowserForEditing({
|
|
@@ -5718,6 +5733,7 @@ function EnableEditor(props) {
|
|
|
5718
5733
|
const contentId = props.builderContextSignal.content?.id;
|
|
5719
5734
|
const apiKeyProp = props.apiKey;
|
|
5720
5735
|
_track({
|
|
5736
|
+
apiHost: props.apiHost,
|
|
5721
5737
|
type: "impression",
|
|
5722
5738
|
canTrack: true,
|
|
5723
5739
|
contentId,
|
|
@@ -5966,6 +5982,9 @@ function ContentComponent(props) {
|
|
|
5966
5982
|
},
|
|
5967
5983
|
get children() {
|
|
5968
5984
|
return createComponent(enable_editor_default, mergeProps({
|
|
5985
|
+
get apiHost() {
|
|
5986
|
+
return props.apiHost;
|
|
5987
|
+
},
|
|
5969
5988
|
get nonce() {
|
|
5970
5989
|
return props.nonce;
|
|
5971
5990
|
},
|
|
@@ -6007,6 +6026,9 @@ function ContentComponent(props) {
|
|
|
6007
6026
|
},
|
|
6008
6027
|
get trustedHosts() {
|
|
6009
6028
|
return props.trustedHosts;
|
|
6029
|
+
},
|
|
6030
|
+
get isNestedRender() {
|
|
6031
|
+
return props.isNestedRender;
|
|
6010
6032
|
}
|
|
6011
6033
|
}, {
|
|
6012
6034
|
setBuilderContextSignal
|
|
@@ -6139,6 +6161,9 @@ function ContentVariants(props) {
|
|
|
6139
6161
|
children: (variant, _index) => {
|
|
6140
6162
|
_index();
|
|
6141
6163
|
return createComponent(content_default, mergeProps({
|
|
6164
|
+
get apiHost() {
|
|
6165
|
+
return props.apiHost;
|
|
6166
|
+
},
|
|
6142
6167
|
get isNestedRender() {
|
|
6143
6168
|
return props.isNestedRender;
|
|
6144
6169
|
},
|
|
@@ -6203,6 +6228,9 @@ function ContentVariants(props) {
|
|
|
6203
6228
|
})];
|
|
6204
6229
|
}
|
|
6205
6230
|
}), createComponent(content_default, mergeProps({
|
|
6231
|
+
get apiHost() {
|
|
6232
|
+
return props.apiHost;
|
|
6233
|
+
},
|
|
6206
6234
|
get nonce() {
|
|
6207
6235
|
return props.nonce;
|
|
6208
6236
|
},
|
package/lib/browser/dev.jsx
CHANGED
|
@@ -75,7 +75,7 @@ function Button(props) {
|
|
|
75
75
|
var button_default = Button;
|
|
76
76
|
|
|
77
77
|
// src/blocks/columns/columns.tsx
|
|
78
|
-
import { Show as Show7, For as For4,
|
|
78
|
+
import { Show as Show7, For as For4, createMemo as createMemo7 } from "solid-js";
|
|
79
79
|
|
|
80
80
|
// src/components/blocks/blocks.tsx
|
|
81
81
|
import { useContext, Show as Show6, For as For3 } from "solid-js";
|
|
@@ -1449,14 +1449,15 @@ var getColumnsClass = (id) => {
|
|
|
1449
1449
|
|
|
1450
1450
|
// src/blocks/columns/columns.tsx
|
|
1451
1451
|
function Columns(props) {
|
|
1452
|
-
const
|
|
1453
|
-
typeof props.space === "number" ? props.space || 0 : 20
|
|
1454
|
-
);
|
|
1455
|
-
const
|
|
1456
|
-
|
|
1457
|
-
|
|
1458
|
-
|
|
1459
|
-
|
|
1452
|
+
const gutterSize = createMemo7(() => {
|
|
1453
|
+
return typeof props.space === "number" ? props.space || 0 : 20;
|
|
1454
|
+
});
|
|
1455
|
+
const cols = createMemo7(() => {
|
|
1456
|
+
return props.columns || [];
|
|
1457
|
+
});
|
|
1458
|
+
const stackAt = createMemo7(() => {
|
|
1459
|
+
return props.stackColumnsAt || "tablet";
|
|
1460
|
+
});
|
|
1460
1461
|
function getTagName(column) {
|
|
1461
1462
|
return column.link ? props.builderLinkComponent || "a" : "div";
|
|
1462
1463
|
}
|
|
@@ -1480,6 +1481,9 @@ function Columns(props) {
|
|
|
1480
1481
|
}) {
|
|
1481
1482
|
return stackAt() === "never" ? desktopStyle : stackedStyle;
|
|
1482
1483
|
}
|
|
1484
|
+
const flexDir = createMemo7(() => {
|
|
1485
|
+
return props.stackColumnsAt === "never" ? "row" : props.reverseColumnsWhenStacked ? "column-reverse" : "column";
|
|
1486
|
+
});
|
|
1483
1487
|
function columnsCssVars() {
|
|
1484
1488
|
return {
|
|
1485
1489
|
"--flex-dir": flexDir(),
|
|
@@ -1569,7 +1573,7 @@ function Columns(props) {
|
|
|
1569
1573
|
}
|
|
1570
1574
|
return <>
|
|
1571
1575
|
<div
|
|
1572
|
-
class={getColumnsClass(props.builderBlock?.id) + " div-
|
|
1576
|
+
class={getColumnsClass(props.builderBlock?.id) + " div-a1dad3b8"}
|
|
1573
1577
|
style={columnsCssVars()}
|
|
1574
1578
|
{...{}}
|
|
1575
1579
|
>
|
|
@@ -1598,7 +1602,7 @@ function Columns(props) {
|
|
|
1598
1602
|
/></Dynamic_renderer_default>;
|
|
1599
1603
|
}}</For4>
|
|
1600
1604
|
</div>
|
|
1601
|
-
<style>{`.div-
|
|
1605
|
+
<style>{`.div-a1dad3b8 {
|
|
1602
1606
|
display: flex;
|
|
1603
1607
|
line-height: normal;
|
|
1604
1608
|
}`}</style>
|
|
@@ -4254,7 +4258,7 @@ function getPreviewContent(_searchParams) {
|
|
|
4254
4258
|
}
|
|
4255
4259
|
|
|
4256
4260
|
// src/constants/sdk-version.ts
|
|
4257
|
-
var SDK_VERSION = "2.0.
|
|
4261
|
+
var SDK_VERSION = "2.0.28";
|
|
4258
4262
|
|
|
4259
4263
|
// src/helpers/sdk-headers.ts
|
|
4260
4264
|
var getSdkHeaders = () => ({
|
|
@@ -4366,7 +4370,8 @@ var generateContentUrl = (options) => {
|
|
|
4366
4370
|
cacheSeconds,
|
|
4367
4371
|
staleCacheSeconds,
|
|
4368
4372
|
sort,
|
|
4369
|
-
includeUnpublished
|
|
4373
|
+
includeUnpublished,
|
|
4374
|
+
apiHost
|
|
4370
4375
|
} = options;
|
|
4371
4376
|
if (!apiKey) {
|
|
4372
4377
|
throw new Error("Missing API key");
|
|
@@ -4375,7 +4380,8 @@ var generateContentUrl = (options) => {
|
|
|
4375
4380
|
throw new Error(`Invalid apiVersion: expected 'v3', received '${apiVersion}'`);
|
|
4376
4381
|
}
|
|
4377
4382
|
const noTraverse = limit !== 1;
|
|
4378
|
-
const
|
|
4383
|
+
const baseUrl = apiHost || "https://cdn.builder.io";
|
|
4384
|
+
const url = new URL(`${baseUrl}/api/${apiVersion}/content/${model}`);
|
|
4379
4385
|
url.searchParams.set("apiKey", apiKey);
|
|
4380
4386
|
url.searchParams.set("limit", String(limit));
|
|
4381
4387
|
url.searchParams.set("noTraverse", String(noTraverse));
|
|
@@ -4663,7 +4669,10 @@ var createEvent = async ({
|
|
|
4663
4669
|
ownerId: apiKey
|
|
4664
4670
|
}
|
|
4665
4671
|
});
|
|
4666
|
-
async function _track(
|
|
4672
|
+
async function _track({
|
|
4673
|
+
apiHost,
|
|
4674
|
+
...eventProps
|
|
4675
|
+
}) {
|
|
4667
4676
|
if (!eventProps.apiKey) {
|
|
4668
4677
|
logger.error("Missing API key for track call. Please provide your API key.");
|
|
4669
4678
|
return;
|
|
@@ -4677,7 +4686,8 @@ async function _track(eventProps) {
|
|
|
4677
4686
|
if (!(isBrowser() || TARGET === "reactNative")) {
|
|
4678
4687
|
return;
|
|
4679
4688
|
}
|
|
4680
|
-
|
|
4689
|
+
const baseUrl = apiHost || "https://cdn.builder.io";
|
|
4690
|
+
return fetch(`${baseUrl}/api/v1/track`, {
|
|
4681
4691
|
method: "POST",
|
|
4682
4692
|
body: JSON.stringify({
|
|
4683
4693
|
events: [await createEvent(eventProps)]
|
|
@@ -5120,6 +5130,7 @@ function EnableEditor(props) {
|
|
|
5120
5130
|
const variationId = props.builderContextSignal.content?.testVariationId;
|
|
5121
5131
|
const contentId = props.builderContextSignal.content?.id;
|
|
5122
5132
|
_track({
|
|
5133
|
+
apiHost: props.apiHost,
|
|
5123
5134
|
type: "click",
|
|
5124
5135
|
canTrack: getDefaultCanTrack(props.canTrack),
|
|
5125
5136
|
contentId,
|
|
@@ -5189,7 +5200,7 @@ function EnableEditor(props) {
|
|
|
5189
5200
|
emitStateUpdate();
|
|
5190
5201
|
onMount6(() => {
|
|
5191
5202
|
if (isBrowser()) {
|
|
5192
|
-
if (isEditing()) {
|
|
5203
|
+
if (isEditing() && !props.isNestedRender) {
|
|
5193
5204
|
window.addEventListener("message", processMessage);
|
|
5194
5205
|
registerInsertMenu();
|
|
5195
5206
|
setupBrowserForEditing({
|
|
@@ -5220,6 +5231,7 @@ function EnableEditor(props) {
|
|
|
5220
5231
|
const contentId = props.builderContextSignal.content?.id;
|
|
5221
5232
|
const apiKeyProp = props.apiKey;
|
|
5222
5233
|
_track({
|
|
5234
|
+
apiHost: props.apiHost,
|
|
5223
5235
|
type: "impression",
|
|
5224
5236
|
canTrack: true,
|
|
5225
5237
|
contentId,
|
|
@@ -5459,6 +5471,7 @@ function ContentComponent(props) {
|
|
|
5459
5471
|
registeredComponents: registeredComponents()
|
|
5460
5472
|
}}
|
|
5461
5473
|
><Enable_editor_default
|
|
5474
|
+
apiHost={props.apiHost}
|
|
5462
5475
|
nonce={props.nonce}
|
|
5463
5476
|
content={props.content}
|
|
5464
5477
|
data={props.data}
|
|
@@ -5473,6 +5486,7 @@ function ContentComponent(props) {
|
|
|
5473
5486
|
contentWrapper={props.contentWrapper}
|
|
5474
5487
|
contentWrapperProps={props.contentWrapperProps}
|
|
5475
5488
|
trustedHosts={props.trustedHosts}
|
|
5489
|
+
isNestedRender={props.isNestedRender}
|
|
5476
5490
|
{...{
|
|
5477
5491
|
setBuilderContextSignal
|
|
5478
5492
|
}}
|
|
@@ -5551,6 +5565,7 @@ function ContentVariants(props) {
|
|
|
5551
5565
|
<For9 each={getVariants(props.content)}>{(variant, _index) => {
|
|
5552
5566
|
const index = _index();
|
|
5553
5567
|
return <Content_default
|
|
5568
|
+
apiHost={props.apiHost}
|
|
5554
5569
|
isNestedRender={props.isNestedRender}
|
|
5555
5570
|
key={variant.testVariationId}
|
|
5556
5571
|
nonce={props.nonce}
|
|
@@ -5577,6 +5592,7 @@ function ContentVariants(props) {
|
|
|
5577
5592
|
}}</For9>
|
|
5578
5593
|
</Show15>
|
|
5579
5594
|
<Content_default
|
|
5595
|
+
apiHost={props.apiHost}
|
|
5580
5596
|
nonce={props.nonce}
|
|
5581
5597
|
isNestedRender={props.isNestedRender}
|
|
5582
5598
|
{...{}}
|
package/lib/browser/index.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { delegateEvents, createComponent, spread, mergeProps, insert, effect, setAttribute, className, style, template, Dynamic, memo, use } from 'solid-js/web';
|
|
2
|
-
import { createContext, useContext, Show, For,
|
|
2
|
+
import { createContext, useContext, Show, For, createMemo, onMount, createSignal, createEffect, on } from 'solid-js';
|
|
3
3
|
|
|
4
4
|
// src/blocks/button/button.tsx
|
|
5
5
|
|
|
@@ -1650,15 +1650,20 @@ var getColumnsClass = (id) => {
|
|
|
1650
1650
|
|
|
1651
1651
|
// src/blocks/columns/columns.tsx
|
|
1652
1652
|
var _tmpl$3 = /* @__PURE__ */ template(`<div>`);
|
|
1653
|
-
var _tmpl$22 = /* @__PURE__ */ template(`<style>.div-
|
|
1653
|
+
var _tmpl$22 = /* @__PURE__ */ template(`<style>.div-a1dad3b8 {
|
|
1654
1654
|
display: flex;
|
|
1655
1655
|
line-height: normal;
|
|
1656
1656
|
}`);
|
|
1657
1657
|
function Columns(props) {
|
|
1658
|
-
const
|
|
1659
|
-
|
|
1660
|
-
|
|
1661
|
-
const
|
|
1658
|
+
const gutterSize = createMemo(() => {
|
|
1659
|
+
return typeof props.space === "number" ? props.space || 0 : 20;
|
|
1660
|
+
});
|
|
1661
|
+
const cols = createMemo(() => {
|
|
1662
|
+
return props.columns || [];
|
|
1663
|
+
});
|
|
1664
|
+
const stackAt = createMemo(() => {
|
|
1665
|
+
return props.stackColumnsAt || "tablet";
|
|
1666
|
+
});
|
|
1662
1667
|
function getTagName(column) {
|
|
1663
1668
|
return column.link ? props.builderLinkComponent || "a" : "div";
|
|
1664
1669
|
}
|
|
@@ -1682,6 +1687,9 @@ function Columns(props) {
|
|
|
1682
1687
|
}) {
|
|
1683
1688
|
return stackAt() === "never" ? desktopStyle : stackedStyle;
|
|
1684
1689
|
}
|
|
1690
|
+
const flexDir = createMemo(() => {
|
|
1691
|
+
return props.stackColumnsAt === "never" ? "row" : props.reverseColumnsWhenStacked ? "column-reverse" : "column";
|
|
1692
|
+
});
|
|
1685
1693
|
function columnsCssVars() {
|
|
1686
1694
|
return {
|
|
1687
1695
|
"--flex-dir": flexDir(),
|
|
@@ -1771,7 +1779,7 @@ function Columns(props) {
|
|
|
1771
1779
|
const _el$ = _tmpl$3();
|
|
1772
1780
|
spread(_el$, mergeProps({
|
|
1773
1781
|
get ["class"]() {
|
|
1774
|
-
return getColumnsClass(props.builderBlock?.id) + " div-
|
|
1782
|
+
return getColumnsClass(props.builderBlock?.id) + " div-a1dad3b8";
|
|
1775
1783
|
},
|
|
1776
1784
|
get style() {
|
|
1777
1785
|
return columnsCssVars();
|
|
@@ -4756,7 +4764,7 @@ function getPreviewContent(_searchParams) {
|
|
|
4756
4764
|
}
|
|
4757
4765
|
|
|
4758
4766
|
// src/constants/sdk-version.ts
|
|
4759
|
-
var SDK_VERSION = "2.0.
|
|
4767
|
+
var SDK_VERSION = "2.0.28";
|
|
4760
4768
|
|
|
4761
4769
|
// src/helpers/sdk-headers.ts
|
|
4762
4770
|
var getSdkHeaders = () => ({
|
|
@@ -4866,7 +4874,8 @@ var generateContentUrl = (options) => {
|
|
|
4866
4874
|
cacheSeconds,
|
|
4867
4875
|
staleCacheSeconds,
|
|
4868
4876
|
sort,
|
|
4869
|
-
includeUnpublished
|
|
4877
|
+
includeUnpublished,
|
|
4878
|
+
apiHost
|
|
4870
4879
|
} = options;
|
|
4871
4880
|
if (!apiKey) {
|
|
4872
4881
|
throw new Error("Missing API key");
|
|
@@ -4875,7 +4884,8 @@ var generateContentUrl = (options) => {
|
|
|
4875
4884
|
throw new Error(`Invalid apiVersion: expected 'v3', received '${apiVersion}'`);
|
|
4876
4885
|
}
|
|
4877
4886
|
const noTraverse = limit !== 1;
|
|
4878
|
-
const
|
|
4887
|
+
const baseUrl = apiHost || "https://cdn.builder.io";
|
|
4888
|
+
const url = new URL(`${baseUrl}/api/${apiVersion}/content/${model}`);
|
|
4879
4889
|
url.searchParams.set("apiKey", apiKey);
|
|
4880
4890
|
url.searchParams.set("limit", String(limit));
|
|
4881
4891
|
url.searchParams.set("noTraverse", String(noTraverse));
|
|
@@ -5161,7 +5171,10 @@ var createEvent = async ({
|
|
|
5161
5171
|
ownerId: apiKey
|
|
5162
5172
|
}
|
|
5163
5173
|
});
|
|
5164
|
-
async function _track(
|
|
5174
|
+
async function _track({
|
|
5175
|
+
apiHost,
|
|
5176
|
+
...eventProps
|
|
5177
|
+
}) {
|
|
5165
5178
|
if (!eventProps.apiKey) {
|
|
5166
5179
|
logger.error("Missing API key for track call. Please provide your API key.");
|
|
5167
5180
|
return;
|
|
@@ -5175,7 +5188,8 @@ async function _track(eventProps) {
|
|
|
5175
5188
|
if (!(isBrowser() || TARGET === "reactNative")) {
|
|
5176
5189
|
return;
|
|
5177
5190
|
}
|
|
5178
|
-
|
|
5191
|
+
const baseUrl = apiHost || "https://cdn.builder.io";
|
|
5192
|
+
return fetch(`${baseUrl}/api/v1/track`, {
|
|
5179
5193
|
method: "POST",
|
|
5180
5194
|
body: JSON.stringify({
|
|
5181
5195
|
events: [await createEvent(eventProps)]
|
|
@@ -5617,6 +5631,7 @@ function EnableEditor(props) {
|
|
|
5617
5631
|
const variationId = props.builderContextSignal.content?.testVariationId;
|
|
5618
5632
|
const contentId = props.builderContextSignal.content?.id;
|
|
5619
5633
|
_track({
|
|
5634
|
+
apiHost: props.apiHost,
|
|
5620
5635
|
type: "click",
|
|
5621
5636
|
canTrack: getDefaultCanTrack(props.canTrack),
|
|
5622
5637
|
contentId,
|
|
@@ -5675,7 +5690,7 @@ function EnableEditor(props) {
|
|
|
5675
5690
|
emitStateUpdate();
|
|
5676
5691
|
onMount(() => {
|
|
5677
5692
|
if (isBrowser()) {
|
|
5678
|
-
if (isEditing()) {
|
|
5693
|
+
if (isEditing() && !props.isNestedRender) {
|
|
5679
5694
|
window.addEventListener("message", processMessage);
|
|
5680
5695
|
registerInsertMenu();
|
|
5681
5696
|
setupBrowserForEditing({
|
|
@@ -5701,6 +5716,7 @@ function EnableEditor(props) {
|
|
|
5701
5716
|
const contentId = props.builderContextSignal.content?.id;
|
|
5702
5717
|
const apiKeyProp = props.apiKey;
|
|
5703
5718
|
_track({
|
|
5719
|
+
apiHost: props.apiHost,
|
|
5704
5720
|
type: "impression",
|
|
5705
5721
|
canTrack: true,
|
|
5706
5722
|
contentId,
|
|
@@ -5949,6 +5965,9 @@ function ContentComponent(props) {
|
|
|
5949
5965
|
},
|
|
5950
5966
|
get children() {
|
|
5951
5967
|
return createComponent(enable_editor_default, mergeProps({
|
|
5968
|
+
get apiHost() {
|
|
5969
|
+
return props.apiHost;
|
|
5970
|
+
},
|
|
5952
5971
|
get nonce() {
|
|
5953
5972
|
return props.nonce;
|
|
5954
5973
|
},
|
|
@@ -5990,6 +6009,9 @@ function ContentComponent(props) {
|
|
|
5990
6009
|
},
|
|
5991
6010
|
get trustedHosts() {
|
|
5992
6011
|
return props.trustedHosts;
|
|
6012
|
+
},
|
|
6013
|
+
get isNestedRender() {
|
|
6014
|
+
return props.isNestedRender;
|
|
5993
6015
|
}
|
|
5994
6016
|
}, {
|
|
5995
6017
|
setBuilderContextSignal
|
|
@@ -6122,6 +6144,9 @@ function ContentVariants(props) {
|
|
|
6122
6144
|
children: (variant, _index) => {
|
|
6123
6145
|
_index();
|
|
6124
6146
|
return createComponent(content_default, mergeProps({
|
|
6147
|
+
get apiHost() {
|
|
6148
|
+
return props.apiHost;
|
|
6149
|
+
},
|
|
6125
6150
|
get isNestedRender() {
|
|
6126
6151
|
return props.isNestedRender;
|
|
6127
6152
|
},
|
|
@@ -6186,6 +6211,9 @@ function ContentVariants(props) {
|
|
|
6186
6211
|
})];
|
|
6187
6212
|
}
|
|
6188
6213
|
}), createComponent(content_default, mergeProps({
|
|
6214
|
+
get apiHost() {
|
|
6215
|
+
return props.apiHost;
|
|
6216
|
+
},
|
|
6189
6217
|
get nonce() {
|
|
6190
6218
|
return props.nonce;
|
|
6191
6219
|
},
|
package/lib/browser/index.jsx
CHANGED
|
@@ -75,7 +75,7 @@ function Button(props) {
|
|
|
75
75
|
var button_default = Button;
|
|
76
76
|
|
|
77
77
|
// src/blocks/columns/columns.tsx
|
|
78
|
-
import { Show as Show7, For as For4,
|
|
78
|
+
import { Show as Show7, For as For4, createMemo as createMemo7 } from "solid-js";
|
|
79
79
|
|
|
80
80
|
// src/components/blocks/blocks.tsx
|
|
81
81
|
import { useContext, Show as Show6, For as For3 } from "solid-js";
|
|
@@ -1443,14 +1443,15 @@ var getColumnsClass = (id) => {
|
|
|
1443
1443
|
|
|
1444
1444
|
// src/blocks/columns/columns.tsx
|
|
1445
1445
|
function Columns(props) {
|
|
1446
|
-
const
|
|
1447
|
-
typeof props.space === "number" ? props.space || 0 : 20
|
|
1448
|
-
);
|
|
1449
|
-
const
|
|
1450
|
-
|
|
1451
|
-
|
|
1452
|
-
|
|
1453
|
-
|
|
1446
|
+
const gutterSize = createMemo7(() => {
|
|
1447
|
+
return typeof props.space === "number" ? props.space || 0 : 20;
|
|
1448
|
+
});
|
|
1449
|
+
const cols = createMemo7(() => {
|
|
1450
|
+
return props.columns || [];
|
|
1451
|
+
});
|
|
1452
|
+
const stackAt = createMemo7(() => {
|
|
1453
|
+
return props.stackColumnsAt || "tablet";
|
|
1454
|
+
});
|
|
1454
1455
|
function getTagName(column) {
|
|
1455
1456
|
return column.link ? props.builderLinkComponent || "a" : "div";
|
|
1456
1457
|
}
|
|
@@ -1474,6 +1475,9 @@ function Columns(props) {
|
|
|
1474
1475
|
}) {
|
|
1475
1476
|
return stackAt() === "never" ? desktopStyle : stackedStyle;
|
|
1476
1477
|
}
|
|
1478
|
+
const flexDir = createMemo7(() => {
|
|
1479
|
+
return props.stackColumnsAt === "never" ? "row" : props.reverseColumnsWhenStacked ? "column-reverse" : "column";
|
|
1480
|
+
});
|
|
1477
1481
|
function columnsCssVars() {
|
|
1478
1482
|
return {
|
|
1479
1483
|
"--flex-dir": flexDir(),
|
|
@@ -1563,7 +1567,7 @@ function Columns(props) {
|
|
|
1563
1567
|
}
|
|
1564
1568
|
return <>
|
|
1565
1569
|
<div
|
|
1566
|
-
class={getColumnsClass(props.builderBlock?.id) + " div-
|
|
1570
|
+
class={getColumnsClass(props.builderBlock?.id) + " div-a1dad3b8"}
|
|
1567
1571
|
style={columnsCssVars()}
|
|
1568
1572
|
{...{}}
|
|
1569
1573
|
>
|
|
@@ -1592,7 +1596,7 @@ function Columns(props) {
|
|
|
1592
1596
|
/></Dynamic_renderer_default>;
|
|
1593
1597
|
}}</For4>
|
|
1594
1598
|
</div>
|
|
1595
|
-
<style>{`.div-
|
|
1599
|
+
<style>{`.div-a1dad3b8 {
|
|
1596
1600
|
display: flex;
|
|
1597
1601
|
line-height: normal;
|
|
1598
1602
|
}`}</style>
|
|
@@ -4244,7 +4248,7 @@ function getPreviewContent(_searchParams) {
|
|
|
4244
4248
|
}
|
|
4245
4249
|
|
|
4246
4250
|
// src/constants/sdk-version.ts
|
|
4247
|
-
var SDK_VERSION = "2.0.
|
|
4251
|
+
var SDK_VERSION = "2.0.28";
|
|
4248
4252
|
|
|
4249
4253
|
// src/helpers/sdk-headers.ts
|
|
4250
4254
|
var getSdkHeaders = () => ({
|
|
@@ -4354,7 +4358,8 @@ var generateContentUrl = (options) => {
|
|
|
4354
4358
|
cacheSeconds,
|
|
4355
4359
|
staleCacheSeconds,
|
|
4356
4360
|
sort,
|
|
4357
|
-
includeUnpublished
|
|
4361
|
+
includeUnpublished,
|
|
4362
|
+
apiHost
|
|
4358
4363
|
} = options;
|
|
4359
4364
|
if (!apiKey) {
|
|
4360
4365
|
throw new Error("Missing API key");
|
|
@@ -4363,7 +4368,8 @@ var generateContentUrl = (options) => {
|
|
|
4363
4368
|
throw new Error(`Invalid apiVersion: expected 'v3', received '${apiVersion}'`);
|
|
4364
4369
|
}
|
|
4365
4370
|
const noTraverse = limit !== 1;
|
|
4366
|
-
const
|
|
4371
|
+
const baseUrl = apiHost || "https://cdn.builder.io";
|
|
4372
|
+
const url = new URL(`${baseUrl}/api/${apiVersion}/content/${model}`);
|
|
4367
4373
|
url.searchParams.set("apiKey", apiKey);
|
|
4368
4374
|
url.searchParams.set("limit", String(limit));
|
|
4369
4375
|
url.searchParams.set("noTraverse", String(noTraverse));
|
|
@@ -4649,7 +4655,10 @@ var createEvent = async ({
|
|
|
4649
4655
|
ownerId: apiKey
|
|
4650
4656
|
}
|
|
4651
4657
|
});
|
|
4652
|
-
async function _track(
|
|
4658
|
+
async function _track({
|
|
4659
|
+
apiHost,
|
|
4660
|
+
...eventProps
|
|
4661
|
+
}) {
|
|
4653
4662
|
if (!eventProps.apiKey) {
|
|
4654
4663
|
logger.error("Missing API key for track call. Please provide your API key.");
|
|
4655
4664
|
return;
|
|
@@ -4663,7 +4672,8 @@ async function _track(eventProps) {
|
|
|
4663
4672
|
if (!(isBrowser() || TARGET === "reactNative")) {
|
|
4664
4673
|
return;
|
|
4665
4674
|
}
|
|
4666
|
-
|
|
4675
|
+
const baseUrl = apiHost || "https://cdn.builder.io";
|
|
4676
|
+
return fetch(`${baseUrl}/api/v1/track`, {
|
|
4667
4677
|
method: "POST",
|
|
4668
4678
|
body: JSON.stringify({
|
|
4669
4679
|
events: [await createEvent(eventProps)]
|
|
@@ -5104,6 +5114,7 @@ function EnableEditor(props) {
|
|
|
5104
5114
|
const variationId = props.builderContextSignal.content?.testVariationId;
|
|
5105
5115
|
const contentId = props.builderContextSignal.content?.id;
|
|
5106
5116
|
_track({
|
|
5117
|
+
apiHost: props.apiHost,
|
|
5107
5118
|
type: "click",
|
|
5108
5119
|
canTrack: getDefaultCanTrack(props.canTrack),
|
|
5109
5120
|
contentId,
|
|
@@ -5172,7 +5183,7 @@ function EnableEditor(props) {
|
|
|
5172
5183
|
emitStateUpdate();
|
|
5173
5184
|
onMount6(() => {
|
|
5174
5185
|
if (isBrowser()) {
|
|
5175
|
-
if (isEditing()) {
|
|
5186
|
+
if (isEditing() && !props.isNestedRender) {
|
|
5176
5187
|
window.addEventListener("message", processMessage);
|
|
5177
5188
|
registerInsertMenu();
|
|
5178
5189
|
setupBrowserForEditing({
|
|
@@ -5203,6 +5214,7 @@ function EnableEditor(props) {
|
|
|
5203
5214
|
const contentId = props.builderContextSignal.content?.id;
|
|
5204
5215
|
const apiKeyProp = props.apiKey;
|
|
5205
5216
|
_track({
|
|
5217
|
+
apiHost: props.apiHost,
|
|
5206
5218
|
type: "impression",
|
|
5207
5219
|
canTrack: true,
|
|
5208
5220
|
contentId,
|
|
@@ -5442,6 +5454,7 @@ function ContentComponent(props) {
|
|
|
5442
5454
|
registeredComponents: registeredComponents()
|
|
5443
5455
|
}}
|
|
5444
5456
|
><Enable_editor_default
|
|
5457
|
+
apiHost={props.apiHost}
|
|
5445
5458
|
nonce={props.nonce}
|
|
5446
5459
|
content={props.content}
|
|
5447
5460
|
data={props.data}
|
|
@@ -5456,6 +5469,7 @@ function ContentComponent(props) {
|
|
|
5456
5469
|
contentWrapper={props.contentWrapper}
|
|
5457
5470
|
contentWrapperProps={props.contentWrapperProps}
|
|
5458
5471
|
trustedHosts={props.trustedHosts}
|
|
5472
|
+
isNestedRender={props.isNestedRender}
|
|
5459
5473
|
{...{
|
|
5460
5474
|
setBuilderContextSignal
|
|
5461
5475
|
}}
|
|
@@ -5534,6 +5548,7 @@ function ContentVariants(props) {
|
|
|
5534
5548
|
<For9 each={getVariants(props.content)}>{(variant, _index) => {
|
|
5535
5549
|
const index = _index();
|
|
5536
5550
|
return <Content_default
|
|
5551
|
+
apiHost={props.apiHost}
|
|
5537
5552
|
isNestedRender={props.isNestedRender}
|
|
5538
5553
|
key={variant.testVariationId}
|
|
5539
5554
|
nonce={props.nonce}
|
|
@@ -5560,6 +5575,7 @@ function ContentVariants(props) {
|
|
|
5560
5575
|
}}</For9>
|
|
5561
5576
|
</Show15>
|
|
5562
5577
|
<Content_default
|
|
5578
|
+
apiHost={props.apiHost}
|
|
5563
5579
|
nonce={props.nonce}
|
|
5564
5580
|
isNestedRender={props.isNestedRender}
|
|
5565
5581
|
{...{}}
|