Skip to content

Commit

Permalink
Use combineSlice, create keystore slice.
Browse files Browse the repository at this point in the history
  • Loading branch information
chmac committed Nov 21, 2024
1 parent 689b492 commit 48c36ed
Show file tree
Hide file tree
Showing 5 changed files with 37 additions and 28 deletions.
2 changes: 0 additions & 2 deletions nr-app/src/redux/slices/events.slice.ts
Original file line number Diff line number Diff line change
Expand Up @@ -125,8 +125,6 @@ export const eventsSlice = createSlice({
},
});

export default eventsSlice.reducer;

export const { addEvent, setAllEventsWithMetadata } = eventsSlice.actions;

export const eventsSelectors = eventsAdapter.getSelectors(
Expand Down
26 changes: 26 additions & 0 deletions nr-app/src/redux/slices/keystore.slice.ts
Original file line number Diff line number Diff line change
@@ -0,0 +1,26 @@
import { createSlice, PayloadAction } from "@reduxjs/toolkit";
import { nip19 } from "nostr-tools";

type KeystoreState = {
hasPrivateKeyInSecureStorage: boolean;
publicKeyNpub?: `npub${string}`;
publicKeyHex?: string;
};

const initialState: KeystoreState = {
hasPrivateKeyInSecureStorage: false,
};

const keystoreSlice = createSlice({
name: "keystore",
initialState,
reducers: {
setPublicKeyHex: (state, action: PayloadAction<string>) => {
state.hasPrivateKeyInSecureStorage = true;
state.publicKeyHex = action.payload;
state.publicKeyNpub = nip19.npubEncode(action.payload);
},
},
});

export const { setPublicKeyHex } = keystoreSlice.actions;
4 changes: 1 addition & 3 deletions nr-app/src/redux/slices/map.slice.ts
Original file line number Diff line number Diff line change
Expand Up @@ -23,7 +23,7 @@ const initialState: MapState = {
},
};

const mapSlice = createSlice({
export const mapSlice = createSlice({
name: SLICE_NAME,
initialState,
reducers: {
Expand Down Expand Up @@ -61,8 +61,6 @@ const mapSlice = createSlice({
},
});

export default mapSlice.reducer;

export const {
setMapSubscriptionIsUpdating,
enableLayer,
Expand Down
4 changes: 1 addition & 3 deletions nr-app/src/redux/slices/relays.slice.ts
Original file line number Diff line number Diff line change
Expand Up @@ -41,7 +41,7 @@ const initialState: RelaysState = {
subscriptions: {},
};

const relaysSlice = createSlice({
export const relaysSlice = createSlice({
name: SLICE_NAME,
initialState,
reducers: {
Expand Down Expand Up @@ -108,8 +108,6 @@ const relaysSlice = createSlice({
},
});

export default relaysSlice.reducer;

export const {
setRelays,
setRelayConnected,
Expand Down
29 changes: 9 additions & 20 deletions nr-app/src/redux/store.ts
Original file line number Diff line number Diff line change
@@ -1,21 +1,12 @@
import { configureStore, StoreEnhancer } from "@reduxjs/toolkit";
import { combineSlices, configureStore, StoreEnhancer } from "@reduxjs/toolkit";
import createSagaMiddleware from "redux-saga";

import rootSaga from "./sagas/root.saga";
import {
SLICE_NAME as eventsName,
default as eventsReducer,
} from "./slices/events.slice";
import {
SLICE_NAME as mapName,
default as mapReducer,
} from "./slices/map.slice";
import {
SLICE_NAME as relayName,
default as relayReducer,
} from "./slices/relays.slice";
import devtoolsEnhancer from "redux-devtools-expo-dev-plugin";
import { Platform } from "react-native";
import devtoolsEnhancer from "redux-devtools-expo-dev-plugin";
import rootSaga from "./sagas/root.saga";
import { eventsSlice } from "./slices/events.slice";
import { mapSlice } from "./slices/map.slice";
import { relaysSlice } from "./slices/relays.slice";

const sagaMiddleware = createSagaMiddleware();

Expand All @@ -24,12 +15,10 @@ const devToolsEnhancerOrNot: StoreEnhancer[] = isOnDevice
? [devtoolsEnhancer()]
: [];

const reducer = combineSlices(eventsSlice, mapSlice, relaysSlice);

export const store = configureStore({
reducer: {
[eventsName]: eventsReducer,
[mapName]: mapReducer,
[relayName]: relayReducer,
},
reducer,
middleware: (getDefaultMiddleware) =>
getDefaultMiddleware().concat(sagaMiddleware),
devTools: !isOnDevice,
Expand Down

0 comments on commit 48c36ed

Please sign in to comment.