From 9e76c50f090fa2a7b521186c194250562e316fd2 Mon Sep 17 00:00:00 2001 From: anovazzi1 Date: Mon, 24 Apr 2023 18:31:03 -0300 Subject: [PATCH] bug found migrate template code to types context --- src/frontend/src/contexts/index.tsx | 17 +++++++--------- src/frontend/src/contexts/tabsContext.tsx | 6 +++--- .../src/contexts/templatesContext.tsx | 20 ------------------- src/frontend/src/contexts/typesContext.tsx | 5 +++++ .../extraSidebarComponent/index.tsx | 3 +-- src/frontend/src/types/typesContext/index.ts | 5 ++++- 6 files changed, 20 insertions(+), 36 deletions(-) delete mode 100644 src/frontend/src/contexts/templatesContext.tsx diff --git a/src/frontend/src/contexts/index.tsx b/src/frontend/src/contexts/index.tsx index d2ad1f06f..bef4298e9 100644 --- a/src/frontend/src/contexts/index.tsx +++ b/src/frontend/src/contexts/index.tsx @@ -5,24 +5,21 @@ import { LocationProvider } from "./locationContext"; import PopUpProvider from "./popUpContext"; import { TabsProvider } from "./tabsContext"; import { TypesProvider } from "./typesContext"; -import { TemplatesProvider } from "./templatesContext"; export default function ContextWrapper({ children }: { children: ReactNode }) { //element to wrap all context return ( <> - - - + + + - - {children} - + {children} - - - + + + ); diff --git a/src/frontend/src/contexts/tabsContext.tsx b/src/frontend/src/contexts/tabsContext.tsx index f07b8ee95..2823f6044 100644 --- a/src/frontend/src/contexts/tabsContext.tsx +++ b/src/frontend/src/contexts/tabsContext.tsx @@ -3,7 +3,7 @@ import { FlowType } from "../types/flow"; import { LangFlowState, TabsContextType } from "../types/tabs"; import { normalCaseToSnakeCase } from "../utils"; import { alertContext } from "./alertContext"; -import { TemplatesContext } from "./templatesContext"; +import { typesContext } from "./typesContext"; const TabsContextInitialValue: TabsContextType = { save:()=>{}, @@ -31,7 +31,7 @@ export function TabsProvider({ children }: { children: ReactNode }) { const [flows, setFlows] = useState>([]); const [id, setId] = useState(0); const [lockChat, setLockChat] = useState(false); - const {templates} = useContext(TemplatesContext) + const {templates} = useContext(typesContext ) const newNodeId = useRef(0); function incrementNodeId() { @@ -56,7 +56,7 @@ export function TabsProvider({ children }: { children: ReactNode }) { useEffect(() => { //get tabs locally saved let cookie = window.localStorage.getItem("tabsData"); - if (cookie && Object.keys(templates).length>0) { + if (cookie) { console.log(templates) console.log(Object.keys(templates).length) let cookieObject:LangFlowState = JSON.parse(cookie); diff --git a/src/frontend/src/contexts/templatesContext.tsx b/src/frontend/src/contexts/templatesContext.tsx deleted file mode 100644 index 44e8a3463..000000000 --- a/src/frontend/src/contexts/templatesContext.tsx +++ /dev/null @@ -1,20 +0,0 @@ -import { createContext, ReactNode, useState } from "react"; -import { TemplateContextType } from "../types/templatesContext"; -//context to share types adn functions from nodes to flow - -const initialValue: TemplateContextType = { - templates: {}, - setTemplates: () => {}, -}; - -export const TemplatesContext = - createContext(initialValue); - -export function TemplatesProvider({ children }: { children: ReactNode }) { - const [templates, setTemplates] = useState({}); - return ( - - {children} - - ); -} diff --git a/src/frontend/src/contexts/typesContext.tsx b/src/frontend/src/contexts/typesContext.tsx index d20012a84..d4f00e632 100644 --- a/src/frontend/src/contexts/typesContext.tsx +++ b/src/frontend/src/contexts/typesContext.tsx @@ -10,6 +10,8 @@ const initialValue:typesContextType = { deleteNode: () => {}, types: {}, setTypes: () => {}, + templates: {}, + setTemplates: () => {}, }; export const typesContext = createContext(initialValue); @@ -17,6 +19,7 @@ export const typesContext = createContext(initialValue); export function TypesProvider({ children }:{children:ReactNode}) { const [types, setTypes] = useState({}); const [reactFlowInstance, setReactFlowInstance] = useState(null); + const [templates, setTemplates] = useState({}); function deleteNode(idx:string) { reactFlowInstance.setNodes( reactFlowInstance.getNodes().filter((n:Node) => n.id !== idx) @@ -31,6 +34,8 @@ export function TypesProvider({ children }:{children:ReactNode}) { reactFlowInstance, setReactFlowInstance, deleteNode, + setTemplates, + templates }} > {children} diff --git a/src/frontend/src/pages/FlowPage/components/extraSidebarComponent/index.tsx b/src/frontend/src/pages/FlowPage/components/extraSidebarComponent/index.tsx index 5130a5ee2..f89c2abd6 100644 --- a/src/frontend/src/pages/FlowPage/components/extraSidebarComponent/index.tsx +++ b/src/frontend/src/pages/FlowPage/components/extraSidebarComponent/index.tsx @@ -9,12 +9,11 @@ import { APIKindType, APIObjectType, } from "../../../../types/api"; -import { TemplatesContext } from "../../../../contexts/templatesContext"; export default function ExtraSidebar() { const [data, setData] = useState({}); const { setTypes } = useContext(typesContext); - const { setTemplates } = useContext(TemplatesContext); + const { setTemplates } = useContext(typesContext); useEffect(() => { async function getTypes(): Promise { diff --git a/src/frontend/src/types/typesContext/index.ts b/src/frontend/src/types/typesContext/index.ts index e943dafe3..cd0939cce 100644 --- a/src/frontend/src/types/typesContext/index.ts +++ b/src/frontend/src/types/typesContext/index.ts @@ -1,6 +1,7 @@ import { ReactFlowInstance } from "reactflow"; -const types:{[char: string]: string}={} +const types:{[char: string]: string}={}; +const template:{[char: string]: string}={} export type typesContextType = { reactFlowInstance: ReactFlowInstance|null; @@ -8,4 +9,6 @@ export type typesContextType = { deleteNode: (idx: string) => void; types: typeof types; setTypes: (newState: {}) => void; + templates: typeof template; + setTemplates: (newState: {}) => void; }; \ No newline at end of file