w-aura/src/store/token.ts
Денис Катаев 3c381c9ab9 Questionnaire
2024-01-16 23:32:02 +00:00

25 lines
663 B
TypeScript
Executable File

import { createSlice, createSelector } from '@reduxjs/toolkit'
import type { PayloadAction } from '@reduxjs/toolkit'
import type { AuthToken } from '../api'
const initialState: AuthToken = ''
const authTokenSlice = createSlice({
name: 'token',
initialState,
reducers: {
update(state, action: PayloadAction<AuthToken>) {
state = action.payload
return state
},
},
extraReducers: (builder) => builder.addCase('reset', () => initialState)
})
export const { actions } = authTokenSlice
export const selectToken = createSelector(
(state: { token: AuthToken }) => state.token,
(token) => token
)
export default authTokenSlice.reducer