diff --git a/src/components/Markdowns/MarkdownEditor.js b/src/components/Markdowns/MarkdownEditor.js index 1385e66..13613b8 100644 --- a/src/components/Markdowns/MarkdownEditor.js +++ b/src/components/Markdowns/MarkdownEditor.js @@ -13,23 +13,23 @@ const MarkdownEditor = () => { const { id } = useParams(); const [title, setTitle] = useState(""); const [content, setContent] = useState(""); + const [shortcut, setShortcut] = useState(""); const [pathId, setPathId] = useState(1); const {data: markdown, isLoading, error} = useMarkdown(id); const saveMarkdown = useSaveMarkdown(); - - useEffect(() => { if(markdown){ setTitle(markdown.title); setContent(markdown.content); + setShortcut(markdown.shortcut); setPathId(markdown.path_id); } }, [markdown]); const handleSave = () => { saveMarkdown.mutate( - {id, data: {title, content, path_id: pathId}}, + {id, data: {title, content, path_id: pathId, shortcut}}, { onSuccess: () => { navigate("/"); @@ -56,10 +56,8 @@ const MarkdownEditor = () => {

{id ? "Edit Markdown" : "Create Markdown"}

- {/* Editor Column */}
- {/* Title Field */}
@@ -73,7 +71,18 @@ const MarkdownEditor = () => {
- {/* PathManager Field */} +
+ +
+ setShortcut(e.target.value)} + /> +
+
{ />
- {/* Content Field */}
@@ -96,7 +104,6 @@ const MarkdownEditor = () => {
- {/* Save Button */}
- {/* Preview Column */}

Preview

diff --git a/src/components/Markdowns/MarkdownView.js b/src/components/Markdowns/MarkdownView.js index 5c11db8..ce8ca7a 100644 --- a/src/components/Markdowns/MarkdownView.js +++ b/src/components/Markdowns/MarkdownView.js @@ -8,12 +8,18 @@ import { Prism as SyntaxHighlighter } from "react-syntax-highlighter"; import { okaidia } from "react-syntax-highlighter/dist/esm/styles/prism"; import "katex/dist/katex.min.css"; import "./MarkdownView.css"; +import {useLinks} from "../../utils/markdown-queries"; const MarkdownView = ({ content, height="auto" }) => { + const {data: links, isLoading} = useLinks(); + + if (isLoading) + return

Loading...

+ const definitions = "\n\n" + links.join("\n"); return (
{ enabled: !!keyword, } ); -}; \ No newline at end of file +}; + + +export const useLinks = () => { + const config = useConfig(); + return useQuery(["links"], () => fetch_(`${config.BACKEND_HOST}/api/markdown/links`)); +} \ No newline at end of file