Skip to content

Commit 3d037e8

Browse files
authored
Switch to localStorage (#1782)
1 parent 809009c commit 3d037e8

File tree

5 files changed

+30
-22
lines changed

5 files changed

+30
-22
lines changed

.changeset/slow-peaches-vanish.md

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
---
2+
"@onflow/fcl": minor
3+
---
4+
5+
Use localStorage as default & export LOCAL_STORAGE/SESSION_STORAGE as helpers for fcl.storage.default configuration key

packages/fcl/src/fcl.js

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,10 @@
1-
export * from './shared-exports';
1+
export * from "./shared-exports"
22

33
import {getMutate} from "./exec/mutate"
44
export const mutate = getMutate({platform: "web"})
55

66
import {getCurrentUser} from "./current-user"
7-
const currentUser = getCurrentUser({platform:"web"})
7+
const currentUser = getCurrentUser({platform: "web"})
88

99
export {currentUser}
1010

@@ -19,6 +19,8 @@ export const logIn = (opts = {}) => currentUser().authenticate(opts)
1919

2020
export const authz = currentUser().authorization
2121

22+
export {LOCAL_STORAGE, SESSION_STORAGE} from "./utils/web"
23+
2224
import {config} from "@onflow/config"
2325
import {getDefaultConfig, coreStrategies} from "./utils/web"
2426
import {initServiceRegistry} from "./current-user/exec-service/plugins"
Lines changed: 2 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -1,21 +1,8 @@
1-
const isServerSide = () => typeof window === "undefined"
2-
3-
const getSessionStorage = () => {
4-
try {
5-
const SESSION_STORAGE = {
6-
can: !isServerSide(),
7-
get: async key => JSON.parse(sessionStorage.getItem(key)),
8-
put: async (key, value) => sessionStorage.setItem(key, JSON.stringify(value)),
9-
}
10-
return SESSION_STORAGE
11-
} catch (error) {
12-
return null
13-
}
14-
}
1+
import {LOCAL_STORAGE} from "./storage"
152

163
export const getDefaultConfig = () => {
174
return {
185
"discovery.wallet.method.default": "IFRAME/RPC",
19-
"fcl.storage.default": getSessionStorage(),
6+
"fcl.storage.default": LOCAL_STORAGE,
207
}
218
}
Lines changed: 6 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,6 @@
1-
export {renderFrame} from './render-frame'
2-
export {renderPop} from './render-pop'
3-
export {renderTab} from './render-tab'
4-
export {getDefaultConfig} from './default-config'
5-
export {coreStrategies} from './coreStrategies'
1+
export {renderFrame} from "./render-frame"
2+
export {renderPop} from "./render-pop"
3+
export {renderTab} from "./render-tab"
4+
export {getDefaultConfig} from "./default-config"
5+
export {coreStrategies} from "./coreStrategies"
6+
export {LOCAL_STORAGE, SESSION_STORAGE} from "./storage"
Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,13 @@
1+
const isServerSide = () => typeof window === "undefined"
2+
3+
export const SESSION_STORAGE = {
4+
can: !isServerSide(),
5+
get: async key => JSON.parse(sessionStorage.getItem(key)),
6+
put: async (key, value) => sessionStorage.setItem(key, JSON.stringify(value)),
7+
}
8+
9+
export const LOCAL_STORAGE = {
10+
can: !isServerSide(),
11+
get: async key => JSON.parse(localStorage.getItem(key)),
12+
put: async (key, value) => localStorage.setItem(key, JSON.stringify(value)),
13+
}

0 commit comments

Comments
 (0)