Skip to content

Commit 8a76aec

Browse files
authored
Add experimental support for readonly graph (#174)
1 parent 1037e7a commit 8a76aec

File tree

4 files changed

+12
-0
lines changed

4 files changed

+12
-0
lines changed

lib/config.test.js

+3
Original file line numberDiff line numberDiff line change
@@ -10,6 +10,7 @@ describe("getConfig", () => {
1010
cookies: true,
1111
initPassport: true,
1212
consent: defaultConsent,
13+
readOnly: false,
1314
});
1415
});
1516

@@ -21,13 +22,15 @@ describe("getConfig", () => {
2122
cookies: false,
2223
initPassport: false,
2324
consent: { static: defaultConsent },
25+
readOnly: true,
2426
})
2527
).toEqual({
2628
host: "host",
2729
site: "site",
2830
cookies: false,
2931
initPassport: false,
3032
consent: defaultConsent,
33+
readOnly: true,
3134
});
3235
});
3336

lib/config.ts

+3
Original file line numberDiff line numberDiff line change
@@ -14,6 +14,7 @@ type InitConfig = {
1414
cookies?: boolean;
1515
initPassport?: boolean;
1616
consent?: InitConsent;
17+
readOnly?: boolean;
1718
};
1819

1920
type ResolvedConfig = Required<Omit<InitConfig, "consent">> & {
@@ -23,6 +24,7 @@ type ResolvedConfig = Required<Omit<InitConfig, "consent">> & {
2324
const DCN_DEFAULTS = {
2425
cookies: true,
2526
initPassport: true,
27+
readOnly: false,
2628
consent: {
2729
reg: null,
2830
deviceAccess: true,
@@ -39,6 +41,7 @@ function getConfig(init: InitConfig): ResolvedConfig {
3941
cookies: init.cookies ?? DCN_DEFAULTS.cookies,
4042
initPassport: init.initPassport ?? DCN_DEFAULTS.initPassport,
4143
consent: DCN_DEFAULTS.consent,
44+
readOnly: init.readOnly ?? DCN_DEFAULTS.readOnly,
4245
};
4346

4447
if (init.consent?.static) {

lib/core/network.ts

+4
Original file line numberDiff line numberDiff line change
@@ -24,6 +24,10 @@ function buildRequest(path: string, config: ResolvedConfig, init?: RequestInit):
2424
url.searchParams.set("gdpr", Number(config.consent.gdprApplies).toString());
2525
}
2626

27+
if (config.readOnly) {
28+
url.searchParams.set("ro", "true");
29+
}
30+
2731
if (cookies) {
2832
url.searchParams.set("cookies", "yes");
2933
} else {

lib/sdk.test.ts

+2
Original file line numberDiff line numberDiff line change
@@ -222,6 +222,7 @@ describe("behavior testing of", () => {
222222
site: "site",
223223
cookies: false,
224224
initPassport: false,
225+
readOnly: false,
225226
});
226227
await sdk["init"];
227228
expect(localStorage.setItem).toBeCalledTimes(0);
@@ -259,6 +260,7 @@ describe("behavior testing of", () => {
259260
site: "site",
260261
cookies: true,
261262
initPassport: true,
263+
readOnly: false,
262264
});
263265
await sdk["init"];
264266
expect(window.localStorage.setItem).toHaveBeenLastCalledWith(

0 commit comments

Comments
 (0)