Spaces:
Build error
Build error
File size: 1,663 Bytes
b59aa07 |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 |
import { createSlice, PayloadAction } from "@reduxjs/toolkit";
import { Provider } from "#/types/settings";
import { GitRepository } from "#/types/git";
type SliceState = {
files: string[]; // base64 encoded images
initialPrompt: string | null;
selectedRepository: GitRepository | null;
selectedRepositoryProvider: Provider | null;
replayJson: string | null;
};
const initialState: SliceState = {
files: [],
initialPrompt: null,
selectedRepository: null,
selectedRepositoryProvider: null,
replayJson: null,
};
export const selectedFilesSlice = createSlice({
name: "initialQuery",
initialState,
reducers: {
addFile(state, action: PayloadAction<string>) {
state.files.push(action.payload);
},
removeFile(state, action: PayloadAction<number>) {
state.files.splice(action.payload, 1);
},
clearFiles(state) {
state.files = [];
},
setInitialPrompt(state, action: PayloadAction<string>) {
state.initialPrompt = action.payload;
},
clearInitialPrompt(state) {
state.initialPrompt = null;
},
setSelectedRepository(state, action: PayloadAction<GitRepository | null>) {
state.selectedRepository = action.payload;
},
clearSelectedRepository(state) {
state.selectedRepository = null;
},
setReplayJson(state, action: PayloadAction<string | null>) {
state.replayJson = action.payload;
},
},
});
export const {
addFile,
removeFile,
clearFiles,
setInitialPrompt,
clearInitialPrompt,
setSelectedRepository,
clearSelectedRepository,
setReplayJson,
} = selectedFilesSlice.actions;
export default selectedFilesSlice.reducer;
|