Skip to content

Commit 8689771

Browse files
authored
Merge pull request #99 from open-rpc/fix/brave-embed
fix: brave embed
2 parents 4dd1d16 + 7a27921 commit 8689771

File tree

2 files changed

+35
-1
lines changed

2 files changed

+35
-1
lines changed

src/containers/App.tsx

+13-1
Original file line numberDiff line numberDiff line change
@@ -6,9 +6,21 @@ import useDarkMode from "use-dark-mode";
66
import Inspector from "./Inspector";
77
import useQueryParams from "../hooks/useQueryParams";
88
import * as monaco from "monaco-editor";
9+
import localStorageMock from "../helpers/localStorageMock";
10+
11+
let localStorageEnabled = true;
12+
try {
13+
window.localStorage.setItem("xyz-test", "true");
14+
} catch (e) {
15+
localStorageEnabled = false;
16+
console.error(e);
17+
}
18+
19+
// mock storageProvider for when localStorage is not available via chrome/brave settings
20+
const darkModeOptions = localStorageEnabled ? undefined : localStorageMock;
921

1022
const App: React.FC = () => {
11-
const darkMode = useDarkMode();
23+
const darkMode = useDarkMode(undefined, darkModeOptions);
1224
const [query] = useQueryParams();
1325
const theme = darkMode.value ? darkTheme : lightTheme;
1426
useEffect(() => {

src/helpers/localStorageMock.ts

+22
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,22 @@
1+
export default {
2+
storageProvider: {
3+
localStorage: {
4+
length: 0,
5+
clear() {
6+
//
7+
},
8+
getItem() {
9+
return "";
10+
},
11+
key() {
12+
return "";
13+
},
14+
removeItem() {
15+
//
16+
},
17+
setItem() {
18+
//
19+
},
20+
},
21+
},
22+
}

0 commit comments

Comments
 (0)