diff --git a/src/frontend/src/components/headerComponent/components/menuBar/index.tsx b/src/frontend/src/components/headerComponent/components/menuBar/index.tsx
index 735d9176b..85aa39947 100644
--- a/src/frontend/src/components/headerComponent/components/menuBar/index.tsx
+++ b/src/frontend/src/components/headerComponent/components/menuBar/index.tsx
@@ -12,6 +12,8 @@ import {
ChevronLeft,
Undo,
Redo,
+ Settings,
+ Settings2,
} from "lucide-react";
import {
DropdownMenu,
@@ -33,8 +35,9 @@ import { alertContext } from "../../../../contexts/alertContext";
import { updateFlowInDatabase } from "../../../../controllers/API";
import { Link } from "react-router-dom";
import { undoRedoContext } from "../../../../contexts/undoRedoContext";
+import FlowSettingsModal from "../../../../modals/flowSettingsModal";
-export const MenuBar = ({ setRename, rename, flows, tabId }) => {
+export const MenuBar = ({flows, tabId }) => {
const { updateFlow, setTabId, addFlow } = useContext(TabsContext);
const { setErrorData } = useContext(alertContext);
const { openPopUp } = useContext(PopUpContext);
@@ -65,7 +68,8 @@ export const MenuBar = ({ setRename, rename, flows, tabId }) => {
- {
if (value !== "") {
@@ -76,20 +80,21 @@ export const MenuBar = ({ setRename, rename, flows, tabId }) => {
}}
rename={rename}
setRename={setRename}
- />
+ /> */}
-
+
+ {current_flow.name}
Edit
{
- setRename(true);
+ openPopUp()
}}
>
-
- Rename
+
+ Settings
{
diff --git a/src/frontend/src/components/headerComponent/index.tsx b/src/frontend/src/components/headerComponent/index.tsx
index 2caef7b0a..58cad8e64 100644
--- a/src/frontend/src/components/headerComponent/index.tsx
+++ b/src/frontend/src/components/headerComponent/index.tsx
@@ -18,7 +18,6 @@ export default function Header() {
const { id } = useParams();
const AlertWidth = 384;
const { dark, setDark } = useContext(darkContext);
- const [rename, setRename] = useState(false);
const { notificationCenter, setNotificationCenter, setErrorData } =
useContext(alertContext);
const location = useLocation();
@@ -30,8 +29,6 @@ export default function Header() {
{flows.findIndex((f) => tabId === f.id) !== -1 && tabId !== "" && (
@@ -39,16 +36,26 @@ export default function Header() {
-
+
-
+
diff --git a/src/frontend/src/constants.tsx b/src/frontend/src/constants.tsx
index 82d256c6e..18b34618f 100644
--- a/src/frontend/src/constants.tsx
+++ b/src/frontend/src/constants.tsx
@@ -6,6 +6,12 @@
*/
export const EXPORT_DIALOG_SUBTITLE = "Export your models.";
+/**
+ * The base text for subtitle of Flow Settings (Menubar)
+ * @constant
+ */
+export const SETTINGS_DIALOG_SUBTITLE = "Edit details about your project.";
+
/**
* The base text for subtitle of Code Dialog (Toolbar)
* @constant
diff --git a/src/frontend/src/modals/flowSettingsModal/index.tsx b/src/frontend/src/modals/flowSettingsModal/index.tsx
new file mode 100644
index 000000000..64c2a67f7
--- /dev/null
+++ b/src/frontend/src/modals/flowSettingsModal/index.tsx
@@ -0,0 +1,109 @@
+import {
+ XMarkIcon,
+ ArrowDownTrayIcon,
+ DocumentDuplicateIcon,
+ ComputerDesktopIcon,
+} from "@heroicons/react/24/outline";
+import { Fragment, useContext, useRef, useState } from "react";
+import { alertContext } from "../../contexts/alertContext";
+import { PopUpContext } from "../../contexts/popUpContext";
+import { TabsContext } from "../../contexts/tabsContext";
+import {
+ Dialog,
+ DialogContent,
+ DialogDescription,
+ DialogFooter,
+ DialogHeader,
+ DialogTitle,
+ DialogTrigger,
+} from "../../components/ui/dialog";
+import { Button } from "../../components/ui/button";
+import { Label } from "@radix-ui/react-label";
+import { Checkbox } from "../../components/ui/checkbox";
+import { Textarea } from "../../components/ui/textarea";
+import { Input } from "../../components/ui/input";
+import { SETTINGS_DIALOG_SUBTITLE } from "../../constants";
+
+export default function FlowSettingsModal() {
+ const [open, setOpen] = useState(true);
+ const { closePopUp } = useContext(PopUpContext);
+ const {setErrorData} = useContext(alertContext);
+ const ref = useRef();
+ const { flows, tabId, updateFlow,} = useContext(TabsContext);
+ function setModalOpen(x: boolean) {
+ setOpen(x);
+ if (x === false) {
+ setTimeout(() => {
+ closePopUp();
+ }, 300);
+ }
+ }
+ const [name, setName] = useState(flows.find((f) => f.id === tabId).name);
+ const [description, setDescription] = useState(flows.find((f) => f.id === tabId).description);
+ return (
+
+ );
+}