feat: projects redux storage and select

This commit is contained in:
2025-07-30 17:44:30 +04:00
parent b8d431ae99
commit cb168b6415
10 changed files with 226 additions and 2 deletions

View File

@ -0,0 +1,29 @@
import { createSlice, PayloadAction } from "@reduxjs/toolkit";
import { ProjectSchema } from "@/types/ProjectSchema";
interface ProjectsState {
projects: ProjectSchema[];
selectedProject: ProjectSchema | null;
}
const initialState: ProjectsState = {
projects: [],
selectedProject: null,
};
export const projectsSlice = createSlice({
name: "projects",
initialState,
reducers: {
setProjects: (state, action: PayloadAction<ProjectSchema[]>) => {
state.projects = action.payload;
},
selectProject: (state, action: PayloadAction<ProjectSchema>) => {
state.selectedProject = action.payload;
},
},
});
export const { setProjects, selectProject } = projectsSlice.actions;
export default projectsSlice.reducer;