This repository has been archived on 2025-09-03. You can view files and clone it. You cannot open issues or pull requests or push a commit.
Files
Netflix-Clone/src/store/slices/documentarySlice.ts
2022-11-26 16:25:35 -05:00

34 lines
832 B
TypeScript

import { createSlice, createAsyncThunk } from '@reduxjs/toolkit'
import axios from '../../axios-movies'
import { RootState } from '../index'
import { IMovieDetails } from './movieDetailsSlice'
const initialState: { data: IMovieDetails[] } = {
data: [],
}
export const getDocumentariesAsync = createAsyncThunk<
any,
void,
{ state: RootState }
>('documentary/getDocumentaries', async () => {
const response = await axios.get(
`/discover/movie?api_key=${process.env.API_KEY}&with_genres=99`
)
return response.data.results
})
const documentarySlice = createSlice({
name: 'actionMovie',
initialState,
reducers: {},
extraReducers: (builder) => {
builder.addCase(getDocumentariesAsync.fulfilled, (state, { payload }) => {
state.data = payload
})
},
})
export default documentarySlice.reducer