This commit is contained in:
2022-12-18 14:51:47 +00:00
parent 968ea78077
commit e6ef1a5bc9
35 changed files with 10237 additions and 0 deletions

38
src/state/Login.js Normal file
View File

@ -0,0 +1,38 @@
import { createSlice } from '@reduxjs/toolkit'
const PrivateKeyItem = "secret";
const RelayList = "relays";
const DefaultRelays = JSON.stringify([
"wss://nostr.v0l.io",
"wss://nostr-pub.wellorder.net",
"wss://nostr.zebedee.cloud",
"wss://relay.damus.io",
"wss://nostr.rocks",
"wss://nostr.rocks"
]);
const LoginSlice = createSlice({
name: "Login",
initialState: {
/**
* Current user private key
*/
privateKey: window.localStorage.getItem(PrivateKeyItem),
/**
* Configured relays for this user
*/
relays: JSON.parse(window.localStorage.getItem(RelayList) || DefaultRelays)
},
reducers: {
setPrivateKey: (state, action) => {
state.privateKey = action.payload;
},
logout: (state) => {
state.privateKey = null;
}
}
});
export const { setPrivateKey, logout } = LoginSlice.actions;
export const reducer = LoginSlice.reducer;