mirror of
https://github.com/ershisan99/it-incubator-todolist-ts-17-live-2024-08-17.git
synced 2026-02-04 12:35:13 +00:00
chore: add prettier and run it on all files
This commit is contained in:
@@ -1,57 +1,61 @@
|
||||
import {Dispatch} from 'redux'
|
||||
import {authAPI} from '../api/todolists-api'
|
||||
import {setIsLoggedInAC} from '../features/Login/auth-reducer'
|
||||
import { Dispatch } from 'redux'
|
||||
import { authAPI } from '../api/todolists-api'
|
||||
import { setIsLoggedInAC } from '../features/Login/auth-reducer'
|
||||
|
||||
const initialState: InitialStateType = {
|
||||
status: 'idle',
|
||||
error: null,
|
||||
isInitialized: false
|
||||
status: 'idle',
|
||||
error: null,
|
||||
isInitialized: false,
|
||||
}
|
||||
|
||||
export const appReducer = (state: InitialStateType = initialState, action: ActionsType): InitialStateType => {
|
||||
switch (action.type) {
|
||||
case 'APP/SET-STATUS':
|
||||
return {...state, status: action.status}
|
||||
case 'APP/SET-ERROR':
|
||||
return {...state, error: action.error}
|
||||
case 'APP/SET-IS-INITIALIED':
|
||||
return {...state, isInitialized: action.value}
|
||||
default:
|
||||
return {...state}
|
||||
}
|
||||
export const appReducer = (
|
||||
state: InitialStateType = initialState,
|
||||
action: ActionsType
|
||||
): InitialStateType => {
|
||||
switch (action.type) {
|
||||
case 'APP/SET-STATUS':
|
||||
return { ...state, status: action.status }
|
||||
case 'APP/SET-ERROR':
|
||||
return { ...state, error: action.error }
|
||||
case 'APP/SET-IS-INITIALIED':
|
||||
return { ...state, isInitialized: action.value }
|
||||
default:
|
||||
return { ...state }
|
||||
}
|
||||
}
|
||||
|
||||
export type RequestStatusType = 'idle' | 'loading' | 'succeeded' | 'failed'
|
||||
export type InitialStateType = {
|
||||
// происходит ли сейчас взаимодействие с сервером
|
||||
status: RequestStatusType
|
||||
// если ошибка какая-то глобальная произойдёт - мы запишем текст ошибки сюда
|
||||
error: string | null
|
||||
// true когда приложение проинициализировалось (проверили юзера, настройки получили и т.д.)
|
||||
isInitialized: boolean
|
||||
// происходит ли сейчас взаимодействие с сервером
|
||||
status: RequestStatusType
|
||||
// если ошибка какая-то глобальная произойдёт - мы запишем текст ошибки сюда
|
||||
error: string | null
|
||||
// true когда приложение проинициализировалось (проверили юзера, настройки получили и т.д.)
|
||||
isInitialized: boolean
|
||||
}
|
||||
|
||||
export const setAppErrorAC = (error: string | null) => ({type: 'APP/SET-ERROR', error} as const)
|
||||
export const setAppStatusAC = (status: RequestStatusType) => ({type: 'APP/SET-STATUS', status} as const)
|
||||
export const setAppInitializedAC = (value: boolean) => ({type: 'APP/SET-IS-INITIALIED', value} as const)
|
||||
export const setAppErrorAC = (error: string | null) =>
|
||||
({ type: 'APP/SET-ERROR', error }) as const
|
||||
export const setAppStatusAC = (status: RequestStatusType) =>
|
||||
({ type: 'APP/SET-STATUS', status }) as const
|
||||
export const setAppInitializedAC = (value: boolean) =>
|
||||
({ type: 'APP/SET-IS-INITIALIED', value }) as const
|
||||
|
||||
export const initializeAppTC = () => (dispatch: Dispatch) => {
|
||||
authAPI.me().then(res => {
|
||||
if (res.data.resultCode === 0) {
|
||||
dispatch(setIsLoggedInAC(true));
|
||||
} else {
|
||||
authAPI.me().then((res) => {
|
||||
if (res.data.resultCode === 0) {
|
||||
dispatch(setIsLoggedInAC(true))
|
||||
} else {
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
dispatch(setAppInitializedAC(true));
|
||||
})
|
||||
dispatch(setAppInitializedAC(true))
|
||||
})
|
||||
}
|
||||
|
||||
export type SetAppErrorActionType = ReturnType<typeof setAppErrorAC>
|
||||
export type SetAppStatusActionType = ReturnType<typeof setAppStatusAC>
|
||||
|
||||
|
||||
type ActionsType =
|
||||
| SetAppErrorActionType
|
||||
| SetAppStatusActionType
|
||||
| ReturnType<typeof setAppInitializedAC>
|
||||
| SetAppErrorActionType
|
||||
| SetAppStatusActionType
|
||||
| ReturnType<typeof setAppInitializedAC>
|
||||
|
||||
Reference in New Issue
Block a user