0.1.11 ai修复与全屏

This commit is contained in:
liaibo
2026-01-10 10:35:21 +08:00
parent e74219c802
commit 0bcdc3e730
55 changed files with 6597 additions and 174 deletions
@@ -0,0 +1,47 @@
"use client";
import { useMemo } from "react";
import { useParams, useRouter } from "next/navigation";
import type { BlockNoteEditor } from "@blocknote/core";
import type { CustomBlockSchema } from "@/components/editor/schema";
import { MindmapBlockView, defaultMindmapData } from "@/components/editor/blocks/MindmapBlock";
const editorStub = {
updateBlock: () => {
/* 独立全屏页中跳过 BlockNote 持久化(思维导图数据由自身 API 管理) */
},
} as unknown as BlockNoteEditor<CustomBlockSchema>;
export default function MindmapFullscreenPage({
}: Record<string, never>) {
const router = useRouter();
const params = useParams<{ docId?: string; mindmapId?: string }>();
const docId = params?.docId ?? "";
const mindmapId = params?.mindmapId ?? "";
const stubBlock = useMemo(
() =>
({
id: mindmapId,
type: "mindmap",
props: {
docId,
data: defaultMindmapData,
},
content: [],
children: [],
}) as any,
[docId, mindmapId],
);
return (
<div className="fixed inset-0 bg-white">
<MindmapBlockView
block={stubBlock}
editor={editorStub}
fullscreen
onExitFullscreen={() => router.push(`/documents/${docId}`)}
/>
</div>
);
}