diff --git a/packages/client/src/tiptap/core/extensions/code-block.ts b/packages/client/src/tiptap/core/extensions/code-block.ts index 3c9fb68b..91d8b277 100644 --- a/packages/client/src/tiptap/core/extensions/code-block.ts +++ b/packages/client/src/tiptap/core/extensions/code-block.ts @@ -47,6 +47,7 @@ export const tildeInputRegex = /^~~~([a-z]+)?[\s\n]$/; export const BuiltInCodeBlock = Node.create({ name: 'codeBlock', + draggable: true, addOptions() { return { diff --git a/packages/client/src/tiptap/core/extensions/countdown.ts b/packages/client/src/tiptap/core/extensions/countdown.ts index 48f8e6fb..d591cfb3 100644 --- a/packages/client/src/tiptap/core/extensions/countdown.ts +++ b/packages/client/src/tiptap/core/extensions/countdown.ts @@ -18,6 +18,7 @@ export const Countdown = Node.create({ group: 'block', selectable: true, atom: true, + draggable: true, addOptions() { return { diff --git a/packages/client/src/tiptap/core/extensions/document-children.ts b/packages/client/src/tiptap/core/extensions/document-children.ts index f4aa420c..e0423efe 100644 --- a/packages/client/src/tiptap/core/extensions/document-children.ts +++ b/packages/client/src/tiptap/core/extensions/document-children.ts @@ -15,6 +15,7 @@ export const DocumentChildren = Node.create({ name: 'documentChildren', group: 'block', atom: true, + draggable: true, addOptions() { return { diff --git a/packages/client/src/tiptap/core/extensions/document-reference.ts b/packages/client/src/tiptap/core/extensions/document-reference.ts index 23f0fe6d..2f84914e 100644 --- a/packages/client/src/tiptap/core/extensions/document-reference.ts +++ b/packages/client/src/tiptap/core/extensions/document-reference.ts @@ -21,6 +21,7 @@ export const DocumentReference = Node.create({ name: 'documentReference', group: 'block', atom: true, + draggable: true, addAttributes() { return { diff --git a/packages/client/src/tiptap/core/extensions/flow.ts b/packages/client/src/tiptap/core/extensions/flow.ts index ac64c0a6..3f92923c 100644 --- a/packages/client/src/tiptap/core/extensions/flow.ts +++ b/packages/client/src/tiptap/core/extensions/flow.ts @@ -25,6 +25,7 @@ export const Flow = Node.create({ group: 'block', selectable: true, atom: true, + draggable: true, addAttributes() { return { diff --git a/packages/client/src/tiptap/core/extensions/iframe.ts b/packages/client/src/tiptap/core/extensions/iframe.ts index fddfef45..657bbcc6 100644 --- a/packages/client/src/tiptap/core/extensions/iframe.ts +++ b/packages/client/src/tiptap/core/extensions/iframe.ts @@ -27,6 +27,7 @@ export const Iframe = Node.create({ group: 'block', selectable: true, atom: true, + draggable: true, addOptions() { return { diff --git a/packages/client/src/tiptap/core/extensions/mind.ts b/packages/client/src/tiptap/core/extensions/mind.ts index 1607f99c..f4ecc2ac 100644 --- a/packages/client/src/tiptap/core/extensions/mind.ts +++ b/packages/client/src/tiptap/core/extensions/mind.ts @@ -35,6 +35,7 @@ export const Mind = Node.create({ group: 'block', selectable: true, atom: true, + draggable: true, inline: false, addAttributes() { diff --git a/packages/client/src/tiptap/core/extensions/paragraph.ts b/packages/client/src/tiptap/core/extensions/paragraph.ts index 8674999e..28e86137 100644 --- a/packages/client/src/tiptap/core/extensions/paragraph.ts +++ b/packages/client/src/tiptap/core/extensions/paragraph.ts @@ -1 +1,5 @@ -export { Paragraph } from '@tiptap/extension-paragraph'; +import TitapParagraph from '@tiptap/extension-paragraph'; + +export const Paragraph = TitapParagraph.extend({ + draggable: true, +}); diff --git a/packages/client/src/tiptap/core/styles/code.scss b/packages/client/src/tiptap/core/styles/code.scss index 830ba537..fa61149a 100644 --- a/packages/client/src/tiptap/core/styles/code.scss +++ b/packages/client/src/tiptap/core/styles/code.scss @@ -14,7 +14,6 @@ display: flex; min-width: 48px; margin: 0; - overflow-x: auto; line-height: 1.3; background-color: var(--semi-color-fill-0); counter-reset: line 0; @@ -24,7 +23,6 @@ max-height: 370px; padding: 0; margin: 8px; - overflow: auto; font-size: 0.875rem; line-height: 1.5rem; color: inherit; diff --git a/packages/client/src/tiptap/core/wrappers/attachment/index.tsx b/packages/client/src/tiptap/core/wrappers/attachment/index.tsx index 9346ef9f..50687a57 100644 --- a/packages/client/src/tiptap/core/wrappers/attachment/index.tsx +++ b/packages/client/src/tiptap/core/wrappers/attachment/index.tsx @@ -1,12 +1,12 @@ import { IconClose, IconDownload, IconPlayCircle } from '@douyinfe/semi-icons'; import { Button, Collapsible, Progress, Space, Spin, Toast, Typography } from '@douyinfe/semi-ui'; import { FILE_CHUNK_SIZE } from '@think/domains'; -import { NodeViewWrapper } from '@tiptap/react'; import cls from 'classnames'; import { Tooltip } from 'components/tooltip'; import { useToggle } from 'hooks/use-toggle'; import { useCallback, useEffect, useRef, useState } from 'react'; import { uploadFile } from 'services/file'; +import { DragableWrapper } from 'tiptap/core/wrappers/dragable'; import { download, extractFileExtension, extractFilename, normalizeFileSize } from 'tiptap/prose-utils'; import { getFileTypeIcon } from './file-icon'; @@ -154,5 +154,5 @@ export const AttachmentWrapper = ({ editor, node, updateAttributes }) => { } })(); - return {content}; + return {content}; }; diff --git a/packages/client/src/tiptap/core/wrappers/callout/index.tsx b/packages/client/src/tiptap/core/wrappers/callout/index.tsx index 684fc364..f9d03715 100644 --- a/packages/client/src/tiptap/core/wrappers/callout/index.tsx +++ b/packages/client/src/tiptap/core/wrappers/callout/index.tsx @@ -1,9 +1,10 @@ -import { NodeViewContent, NodeViewWrapper } from '@tiptap/react'; +import { NodeViewContent } from '@tiptap/react'; import cls from 'classnames'; import { EmojiPicker } from 'components/emoji-picker'; import { convertColorToRGBA } from 'helpers/color'; import { Theme, ThemeEnum } from 'hooks/use-theme'; import { useCallback, useMemo } from 'react'; +import { DragableWrapper } from 'tiptap/core/wrappers/dragable'; import styles from './index.module.scss'; @@ -25,7 +26,7 @@ export const CalloutWrapper = ({ editor, node, updateAttributes }) => { ); return ( - +
{ }} />
-
+ ); }; diff --git a/packages/client/src/tiptap/core/wrappers/code-block/index.tsx b/packages/client/src/tiptap/core/wrappers/code-block/index.tsx index a840c909..a1794fea 100644 --- a/packages/client/src/tiptap/core/wrappers/code-block/index.tsx +++ b/packages/client/src/tiptap/core/wrappers/code-block/index.tsx @@ -1,9 +1,10 @@ import { IconCopy } from '@douyinfe/semi-icons'; import { Button, Select, Tooltip } from '@douyinfe/semi-ui'; -import { NodeViewContent, NodeViewWrapper } from '@tiptap/react'; +import { NodeViewContent } from '@tiptap/react'; import cls from 'classnames'; import { copy } from 'helpers/copy'; import React, { useRef } from 'react'; +import { DragableWrapper } from 'tiptap/core/wrappers/dragable'; import styles from './index.module.scss'; @@ -13,7 +14,7 @@ export const CodeBlockWrapper = ({ editor, node: { attrs }, updateAttributes, ex const $container = useRef(); return ( - +