summaryrefslogtreecommitdiff
path: root/extension/react-app/src/redux/slices/serverStateReducer.ts
diff options
context:
space:
mode:
authorNate Sesti <33237525+sestinj@users.noreply.github.com>2023-08-06 22:54:51 -0700
committerGitHub <noreply@github.com>2023-08-06 22:54:51 -0700
commit74005855304412f0401e29c83c166e99a8ab0944 (patch)
tree4e8ddb61fd52068e839ca4ccab268e013405d545 /extension/react-app/src/redux/slices/serverStateReducer.ts
parenta0d3f29ee237484c66b0efe243c79d902f2da993 (diff)
parent8ada89b0f66f9e746394ee64591359537fe0c7f0 (diff)
downloadsncontinue-74005855304412f0401e29c83c166e99a8ab0944.tar.gz
sncontinue-74005855304412f0401e29c83c166e99a8ab0944.tar.bz2
sncontinue-74005855304412f0401e29c83c166e99a8ab0944.zip
Merge pull request #351 from continuedev/history
Session History
Diffstat (limited to 'extension/react-app/src/redux/slices/serverStateReducer.ts')
-rw-r--r--extension/react-app/src/redux/slices/serverStateReducer.ts53
1 files changed, 53 insertions, 0 deletions
diff --git a/extension/react-app/src/redux/slices/serverStateReducer.ts b/extension/react-app/src/redux/slices/serverStateReducer.ts
new file mode 100644
index 00000000..4d9dc326
--- /dev/null
+++ b/extension/react-app/src/redux/slices/serverStateReducer.ts
@@ -0,0 +1,53 @@
+import { createSlice } from "@reduxjs/toolkit";
+import { FullState } from "../../../../schema/FullState";
+
+const initialState: FullState = {
+ history: {
+ timeline: [
+ {
+ step: {
+ name: "Welcome to Continue",
+ hide: false,
+ description: `- Highlight code section and ask a question or give instructions
+ - Use \`cmd+m\` (Mac) / \`ctrl+m\` (Windows) to open Continue
+ - Use \`/help\` to ask questions about how to use Continue`,
+ system_message: null,
+ chat_context: [],
+ manage_own_chat_context: false,
+ message: "",
+ },
+ depth: 0,
+ deleted: false,
+ active: false,
+ },
+ ],
+ current_index: 3,
+ } as any,
+ user_input_queue: [],
+ active: false,
+ slash_commands: [],
+ adding_highlighted_code: false,
+ selected_context_items: [],
+};
+
+export const serverStateSlice = createSlice({
+ name: "serverState",
+ initialState,
+ reducers: {
+ setServerState: (state, action) => {
+ return {
+ ...action.payload,
+ selected_context_items: action.payload.selected_context_items || [],
+ user_input_queue: action.payload.user_input_queue || [],
+ slash_commands: action.payload.slash_commands || [],
+ };
+ },
+ temporarilySetUserInputQueue: (state, action) => {
+ state.user_input_queue = action.payload;
+ },
+ },
+});
+
+export const { setServerState, temporarilySetUserInputQueue } =
+ serverStateSlice.actions;
+export default serverStateSlice.reducer;