diff --git a/app/renderer/src/main/src/components/MilkdownEditor/CodeBlock/CodeBlock.tsx b/app/renderer/src/main/src/components/MilkdownEditor/CodeBlock/CodeBlock.tsx index 03132cb0c1..6e2f34d625 100644 --- a/app/renderer/src/main/src/components/MilkdownEditor/CodeBlock/CodeBlock.tsx +++ b/app/renderer/src/main/src/components/MilkdownEditor/CodeBlock/CodeBlock.tsx @@ -4,8 +4,6 @@ import {useNodeViewContext} from "@prosemirror-adapter/react" import {useInViewport, useMemoizedFn} from "ahooks" import React, {useState, useEffect, useRef} from "react" import {TextSelection} from "@milkdown/kit/prose/state" -import {useInstance} from "@milkdown/react" -import {paragraphSchema} from "@milkdown/kit/preset/commonmark" export const CustomCodeComponent: React.FC = () => { const {node, view, getPos} = useNodeViewContext() diff --git a/app/renderer/src/main/src/components/MilkdownEditor/CustomFile/CustomFile.module.scss b/app/renderer/src/main/src/components/MilkdownEditor/CustomFile/CustomFile.module.scss index b5478057aa..7facbbe83c 100644 --- a/app/renderer/src/main/src/components/MilkdownEditor/CustomFile/CustomFile.module.scss +++ b/app/renderer/src/main/src/components/MilkdownEditor/CustomFile/CustomFile.module.scss @@ -12,6 +12,7 @@ $fileDivHeight: 64px; user-select: none; position: relative; cursor: pointer; + margin-bottom: 20px; .file-custom-content { display: flex; align-items: center; diff --git a/app/renderer/src/main/src/components/MilkdownEditor/CustomFile/CustomFile.tsx b/app/renderer/src/main/src/components/MilkdownEditor/CustomFile/CustomFile.tsx index 1f985ecccd..9f107ec307 100644 --- a/app/renderer/src/main/src/components/MilkdownEditor/CustomFile/CustomFile.tsx +++ b/app/renderer/src/main/src/components/MilkdownEditor/CustomFile/CustomFile.tsx @@ -36,7 +36,6 @@ import {getHttpFileLinkInfo, getLocalFileLinkInfo} from "./utils" import {setClipboardText} from "@/utils/clipboard" import {getFileNameByUrl} from "../utils/trackDeletePlugin" import {httpDeleteOSSResource} from "@/apiUtils/http" -import {useInstance} from "@milkdown/react" import {useStore} from "@/store" import {YakitSpin} from "@/components/yakitUI/YakitSpin/YakitSpin" @@ -279,6 +278,7 @@ export const CustomFile: React.FC = (props) => { return ( <>
({ })) export const fileCustomSchema = $nodeSchema(fileCustomId, (ctx) => ({ - inline: true, - group: "inline", + group: "block", content: "", atom: true, draggable: false, @@ -32,14 +31,20 @@ export const fileCustomSchema = $nodeSchema(fileCustomId, (ctx) => ({ // 将节点转为 DOM 结构,动态设置样式 toDOM: (node) => { - // console.log("toDOM", node) - return ["div", 0] + const attrs = { + ...ctx.get(fileCustomAttr.key)(node), + "data-file-id": node.attrs.fileId, + "data-path": node.attrs.path, + "data-notepad-hash": node.attrs.notepadHash, + "data-upload-user-id": node.attrs.uploadUserId + } + return ["div", {...attrs}] }, parseMarkdown: { match: (node) => { const {type, name} = node - return type === "textDirective" && name === "file" + return type === "containerDirective" && name === "file" }, runner: (state, node, type) => { if (type.name === fileCustomId) { @@ -53,14 +58,12 @@ export const fileCustomSchema = $nodeSchema(fileCustomId, (ctx) => ({ toMarkdown: { match: (node) => { - // console.log("toMarkdown-match", node) return node.type.name === fileCustomId }, runner: (state, node) => { - // console.log("toMarkdown-runner", node) if (node.attrs.fileId) { state - .openNode("textDirective", undefined, { + .openNode("containerDirective", undefined, { name: "file", attributes: { fileId: node.attrs.fileId,