diff --git a/src/stories/node/OpenApiNode.tsx b/src/stories/node/OpenApiNode.tsx index 4a34e4e0b..94509837a 100644 --- a/src/stories/node/OpenApiNode.tsx +++ b/src/stories/node/OpenApiNode.tsx @@ -1,7 +1,7 @@ import { Box, Divider, Paper, Stack, Tooltip, Typography } from "@mui/material"; import { motion } from "framer-motion"; import { map } from "lodash-es"; -import { useMemo, useRef, useState } from "react"; +import { useCallback, useMemo, useRef, useState } from "react"; import { schema } from "./schema"; export interface OpenApiNodeProps { @@ -143,6 +143,101 @@ const Params = ({ meth, collapsed }: any) => { ); }; +const NodeName = ({ meth }: any) => { + const [editMode, setEditMode] = useState(false); + + const handleKeydown = useCallback((e: any) => { + if (e.keyCode === 27 || e.keyCode === 13) { + setEditMode(false); + } + }, []); + + if (editMode) { + return ( + { + setEditMode(false); + }} + sx={{ + border: 1, + borderColor: "primary.main", + borderRadius: 2, + outline: "none", + px: 1, + height: 28, + // width: 136, + textAlign: "center", + }} + /> + ); + } else { + return ( + + { + setEditMode(true); + }} + sx={{ whiteSpace: "nowrap" }} + > + {meth.summary} + + + ); + } +}; + +const NodeHeader = ({ meth, collapsed, setCollapsed }: any) => { + return ( + setCollapsed(!collapsed)}> + + + + +
e.stopPropagation()}> + +
+ + + +
+
+ ); +}; + const OpenApiNode: React.FC = ({ path = "/", method = "GET", @@ -159,57 +254,11 @@ const OpenApiNode: React.FC = ({ return ( - setCollapsed(!collapsed)} - > - - - - - - - {meth.summary} - - - - - - - +