@builder.io/sdk-react 0.0.6-0 → 0.1.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.
- package/package.json +4 -3
- package/packages/_rsc/src/components/render-content/render-content.js +2 -1
- package/packages/_rsc/src/helpers/cookie.js +4 -2
- package/packages/_rsc/src/helpers/localStorage.js +1 -0
- package/packages/_rsc/src/helpers/sessionId.js +4 -1
- package/packages/_rsc/src/helpers/url.js +3 -0
- package/packages/_rsc/src/helpers/url.test.js +6 -0
- package/packages/_rsc/src/helpers/visitorId.js +1 -0
- package/src/components/render-content/render-content.jsx +2 -1
- package/src/helpers/cookie.js +4 -2
- package/src/helpers/localStorage.js +1 -0
- package/src/helpers/sessionId.js +4 -1
- package/src/helpers/url.js +3 -0
- package/src/helpers/url.test.js +6 -0
- package/src/helpers/visitorId.js +1 -0
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@builder.io/sdk-react",
|
|
3
3
|
"description": "Builder.io SDK for React",
|
|
4
|
-
"version": "0.
|
|
4
|
+
"version": "0.1.2",
|
|
5
5
|
"main": "src/index.js",
|
|
6
6
|
"type": "module",
|
|
7
7
|
"exports": {
|
|
@@ -16,8 +16,9 @@
|
|
|
16
16
|
},
|
|
17
17
|
"scripts": {
|
|
18
18
|
"build": "echo 'no need to build react SDK'",
|
|
19
|
-
"release:patch": "npm version patch
|
|
20
|
-
"release:
|
|
19
|
+
"release:patch": "yarn run build && npm version patch && npm publish",
|
|
20
|
+
"release:minor": "yarn run build && npm version minor && npm publish",
|
|
21
|
+
"release:dev": "yarn run build && npm version prerelease && npm publish --tag dev"
|
|
21
22
|
},
|
|
22
23
|
"peerDependencies": {
|
|
23
24
|
"react": "^18.2.0"
|
|
@@ -29,6 +29,7 @@ import {
|
|
|
29
29
|
import { _track } from "../../functions/track.js";
|
|
30
30
|
import RenderBlocks from "../render-blocks.js";
|
|
31
31
|
import RenderContentStyles from "./components/render-styles.js";
|
|
32
|
+
import { checkIsDefined } from "../../helpers/nullable.js";
|
|
32
33
|
function RenderContent(props) {
|
|
33
34
|
var _a, _b, _c, _d, _e, _f, _g;
|
|
34
35
|
const _context = __spreadValues({}, props["_context"]);
|
|
@@ -51,7 +52,7 @@ function RenderContent(props) {
|
|
|
51
52
|
update: 0,
|
|
52
53
|
useBreakpoints: null,
|
|
53
54
|
get canTrackToUse() {
|
|
54
|
-
return props.canTrack
|
|
55
|
+
return checkIsDefined(props.canTrack) ? props.canTrack : true;
|
|
55
56
|
},
|
|
56
57
|
overrideState: {},
|
|
57
58
|
get contentState() {
|
|
@@ -19,6 +19,7 @@ var __async = (__this, __arguments, generator) => {
|
|
|
19
19
|
});
|
|
20
20
|
};
|
|
21
21
|
import { isBrowser } from "../functions/is-browser.js";
|
|
22
|
+
import { checkIsDefined } from "./nullable.js";
|
|
22
23
|
import { getTopLevelDomain } from "./url.js";
|
|
23
24
|
const getCookie = (_0) => __async(void 0, [_0], function* ({
|
|
24
25
|
name,
|
|
@@ -32,9 +33,10 @@ const getCookie = (_0) => __async(void 0, [_0], function* ({
|
|
|
32
33
|
return (_a = document.cookie.split("; ").find((row) => row.startsWith(`${name}=`))) == null ? void 0 : _a.split("=")[1];
|
|
33
34
|
} catch (err) {
|
|
34
35
|
console.debug("[COOKIE] GET error: ", err);
|
|
36
|
+
return void 0;
|
|
35
37
|
}
|
|
36
38
|
});
|
|
37
|
-
const stringifyCookie = (cookie) => cookie.map(([key, value]) => value ? `${key}=${value}` : key).join("; ");
|
|
39
|
+
const stringifyCookie = (cookie) => cookie.map(([key, value]) => value ? `${key}=${value}` : key).filter(checkIsDefined).join("; ");
|
|
38
40
|
const SECURE_CONFIG = [
|
|
39
41
|
["secure", ""],
|
|
40
42
|
["SameSite", "None"]
|
|
@@ -65,7 +67,7 @@ const setCookie = (_0) => __async(void 0, [_0], function* ({
|
|
|
65
67
|
}) {
|
|
66
68
|
try {
|
|
67
69
|
if (!canTrack) {
|
|
68
|
-
return
|
|
70
|
+
return;
|
|
69
71
|
}
|
|
70
72
|
const cookie = createCookieString({ name, value, expires });
|
|
71
73
|
document.cookie = cookie;
|
|
@@ -22,7 +22,9 @@ import { getCookie, setCookie } from "./cookie.js";
|
|
|
22
22
|
import { checkIsDefined } from "./nullable.js";
|
|
23
23
|
import { uuid } from "./uuid.js";
|
|
24
24
|
const SESSION_LOCAL_STORAGE_KEY = "builderSessionId";
|
|
25
|
-
const getSessionId = (_0) => __async(void 0, [_0], function* ({
|
|
25
|
+
const getSessionId = (_0) => __async(void 0, [_0], function* ({
|
|
26
|
+
canTrack
|
|
27
|
+
}) {
|
|
26
28
|
if (!canTrack) {
|
|
27
29
|
return void 0;
|
|
28
30
|
}
|
|
@@ -35,6 +37,7 @@ const getSessionId = (_0) => __async(void 0, [_0], function* ({ canTrack }) {
|
|
|
35
37
|
} else {
|
|
36
38
|
const newSessionId = createSessionId();
|
|
37
39
|
setSessionId({ id: newSessionId, canTrack });
|
|
40
|
+
return newSessionId;
|
|
38
41
|
}
|
|
39
42
|
});
|
|
40
43
|
const createSessionId = () => uuid();
|
|
@@ -12,4 +12,10 @@ describe("getTopLevelDomain", () => {
|
|
|
12
12
|
const output = getTopLevelDomain("www.example.co.uk");
|
|
13
13
|
expect(output).toBe("example.co.uk");
|
|
14
14
|
});
|
|
15
|
+
test("handles localhost", () => {
|
|
16
|
+
const output = getTopLevelDomain("localhost");
|
|
17
|
+
expect(output).toBe("localhost");
|
|
18
|
+
const output2 = getTopLevelDomain("127.0.0.1");
|
|
19
|
+
expect(output2).toBe("127.0.0.1");
|
|
20
|
+
});
|
|
15
21
|
});
|
|
@@ -39,6 +39,7 @@ import {
|
|
|
39
39
|
registerInsertMenu,
|
|
40
40
|
setupBrowserForEditing
|
|
41
41
|
} from "../../scripts/init-editing.js";
|
|
42
|
+
import { checkIsDefined } from "../../helpers/nullable.js";
|
|
42
43
|
function RenderContent(props) {
|
|
43
44
|
var _a, _b, _c, _d, _e, _f, _g, _h, _i, _j, _k;
|
|
44
45
|
const elementRef = useRef(null);
|
|
@@ -60,7 +61,7 @@ function RenderContent(props) {
|
|
|
60
61
|
const [update, setUpdate] = useState(() => 0);
|
|
61
62
|
const [useBreakpoints, setUseBreakpoints] = useState(() => null);
|
|
62
63
|
function canTrackToUse() {
|
|
63
|
-
return props.canTrack
|
|
64
|
+
return checkIsDefined(props.canTrack) ? props.canTrack : true;
|
|
64
65
|
}
|
|
65
66
|
const [overrideState, setOverrideState] = useState(() => ({}));
|
|
66
67
|
function contentState() {
|
package/src/helpers/cookie.js
CHANGED
|
@@ -19,6 +19,7 @@ var __async = (__this, __arguments, generator) => {
|
|
|
19
19
|
});
|
|
20
20
|
};
|
|
21
21
|
import { isBrowser } from "../functions/is-browser.js";
|
|
22
|
+
import { checkIsDefined } from "./nullable.js";
|
|
22
23
|
import { getTopLevelDomain } from "./url.js";
|
|
23
24
|
const getCookie = (_0) => __async(void 0, [_0], function* ({
|
|
24
25
|
name,
|
|
@@ -32,9 +33,10 @@ const getCookie = (_0) => __async(void 0, [_0], function* ({
|
|
|
32
33
|
return (_a = document.cookie.split("; ").find((row) => row.startsWith(`${name}=`))) == null ? void 0 : _a.split("=")[1];
|
|
33
34
|
} catch (err) {
|
|
34
35
|
console.debug("[COOKIE] GET error: ", err);
|
|
36
|
+
return void 0;
|
|
35
37
|
}
|
|
36
38
|
});
|
|
37
|
-
const stringifyCookie = (cookie) => cookie.map(([key, value]) => value ? `${key}=${value}` : key).join("; ");
|
|
39
|
+
const stringifyCookie = (cookie) => cookie.map(([key, value]) => value ? `${key}=${value}` : key).filter(checkIsDefined).join("; ");
|
|
38
40
|
const SECURE_CONFIG = [
|
|
39
41
|
["secure", ""],
|
|
40
42
|
["SameSite", "None"]
|
|
@@ -65,7 +67,7 @@ const setCookie = (_0) => __async(void 0, [_0], function* ({
|
|
|
65
67
|
}) {
|
|
66
68
|
try {
|
|
67
69
|
if (!canTrack) {
|
|
68
|
-
return
|
|
70
|
+
return;
|
|
69
71
|
}
|
|
70
72
|
const cookie = createCookieString({ name, value, expires });
|
|
71
73
|
document.cookie = cookie;
|
package/src/helpers/sessionId.js
CHANGED
|
@@ -22,7 +22,9 @@ import { getCookie, setCookie } from "./cookie.js";
|
|
|
22
22
|
import { checkIsDefined } from "./nullable.js";
|
|
23
23
|
import { uuid } from "./uuid.js";
|
|
24
24
|
const SESSION_LOCAL_STORAGE_KEY = "builderSessionId";
|
|
25
|
-
const getSessionId = (_0) => __async(void 0, [_0], function* ({
|
|
25
|
+
const getSessionId = (_0) => __async(void 0, [_0], function* ({
|
|
26
|
+
canTrack
|
|
27
|
+
}) {
|
|
26
28
|
if (!canTrack) {
|
|
27
29
|
return void 0;
|
|
28
30
|
}
|
|
@@ -35,6 +37,7 @@ const getSessionId = (_0) => __async(void 0, [_0], function* ({ canTrack }) {
|
|
|
35
37
|
} else {
|
|
36
38
|
const newSessionId = createSessionId();
|
|
37
39
|
setSessionId({ id: newSessionId, canTrack });
|
|
40
|
+
return newSessionId;
|
|
38
41
|
}
|
|
39
42
|
});
|
|
40
43
|
const createSessionId = () => uuid();
|
package/src/helpers/url.js
CHANGED
package/src/helpers/url.test.js
CHANGED
|
@@ -12,4 +12,10 @@ describe("getTopLevelDomain", () => {
|
|
|
12
12
|
const output = getTopLevelDomain("www.example.co.uk");
|
|
13
13
|
expect(output).toBe("example.co.uk");
|
|
14
14
|
});
|
|
15
|
+
test("handles localhost", () => {
|
|
16
|
+
const output = getTopLevelDomain("localhost");
|
|
17
|
+
expect(output).toBe("localhost");
|
|
18
|
+
const output2 = getTopLevelDomain("127.0.0.1");
|
|
19
|
+
expect(output2).toBe("127.0.0.1");
|
|
20
|
+
});
|
|
15
21
|
});
|