diff --git a/package-lock.json b/package-lock.json index fcae58e..f8e13a4 100644 --- a/package-lock.json +++ b/package-lock.json @@ -2098,9 +2098,9 @@ } }, "node_modules/hono": { - "version": "4.12.18", - "resolved": "https://registry.npmjs.org/hono/-/hono-4.12.18.tgz", - "integrity": "sha512-RWzP96k/yv0PQfyXnWjs6zot20TqfpfsNXhOnev8d1InAxubW93L11/oNUc3tQqn2G0bSdAOBpX+2uDFHV7kdQ==", + "version": "4.12.27", + "resolved": "https://registry.npmjs.org/hono/-/hono-4.12.27.tgz", + "integrity": "sha512-1yrb/+w6HWQJrUCLkJ2IF5jNIPvvFkblV5RNOYl6bV+OA6p9GLcMpHFFGTosSvHvcAUibuUukRqhlYI4z32C7Q==", "license": "MIT", "engines": { "node": ">=16.9.0" @@ -3363,9 +3363,9 @@ "license": "ISC" }, "node_modules/ws": { - "version": "8.20.1", - "resolved": "https://registry.npmjs.org/ws/-/ws-8.20.1.tgz", - "integrity": "sha512-It4dO0K5v//JtTXuPkfEOaI3uUN87iYPnqo/ZzqCoG3g8uhA66QUMs/SrM0YK7/NAu+r4LMh/9dq2A7k+rHs+w==", + "version": "8.21.0", + "resolved": "https://registry.npmjs.org/ws/-/ws-8.21.0.tgz", + "integrity": "sha512-Vsp28b7DRcimFQvrqu2Wek3z1iYxDCWqHYB8Qsnk/S4RfaCQzPGPyBNuVjJV3cd6UiKtUtp6sNM77gWvzcCH+g==", "license": "MIT", "engines": { "node": ">=10.0.0" diff --git a/web/src/components/markdown-artifact-editor.tsx b/web/src/components/markdown-artifact-editor.tsx index cbc197b..ff13546 100644 --- a/web/src/components/markdown-artifact-editor.tsx +++ b/web/src/components/markdown-artifact-editor.tsx @@ -1,4 +1,6 @@ import { useCallback, useEffect, useRef, useState } from "react" +import { FullScreenIcon, MinimizeScreenIcon } from "@hugeicons/core-free-icons" +import { HugeiconsIcon } from "@hugeicons/react" import { CrepeMarkdownEditor } from "@/components/crepe-markdown-editor" import type { @@ -6,6 +8,8 @@ import type { MarkdownCommandFile, MarkdownCommandUser, } from "@/components/crepe-markdown-editor" +import { Button } from "@/components/ui/button" +import { cn } from "@/lib/utils" import { sanitizeMarkdownLinks } from "@/lib/markdown-safety" export type MarkdownEditorMode = "rich" | "source" @@ -177,6 +181,7 @@ function LoadedMarkdownArtifactEditor({ const metadata = parseFrontmatter(content) const editorRef = useRef(null) const [mode, setMode] = useState("rich") + const [wideEditor, setWideEditor] = useState(false) const [savedFullContent, setSavedFullContent] = useState(initialFullContent) const [draftFullContent, setDraftFullContent] = useState(initialFullContent) const [savedBody, setSavedBody] = useState(initialBody) @@ -308,18 +313,33 @@ function LoadedMarkdownArtifactEditor({ return (
-
-
- {path || title} - {metadata.creator ? {metadata.creator} : null} - {metadata.created ? ( - {formatMetaDate(metadata.created)} - ) : null} +
+
+
+ {path || title} + {metadata.creator ? {metadata.creator} : null} + {metadata.created ? ( + {formatMetaDate(metadata.created)} + ) : null} +
+
{mode === "source" ? ( -
+