@blocknote/core 0.23.4 → 0.23.6
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/blocknote.js +107 -99
- package/dist/blocknote.js.map +1 -1
- package/dist/blocknote.umd.cjs +6 -6
- package/dist/blocknote.umd.cjs.map +1 -1
- package/dist/style.css +1 -1
- package/dist/tsconfig.tsbuildinfo +1 -1
- package/dist/webpack-stats.json +1 -1
- package/package.json +3 -3
- package/src/api/clipboard/toClipboard/copyExtension.ts +37 -2
- package/src/blocks/TableBlockContent/TableBlockContent.ts +2 -1
- package/src/editor/editor.css +11 -51
- package/src/extensions/Collaboration/createCollaborationExtensions.ts +11 -6
- package/src/extensions/SideMenu/dragging.ts +2 -5
package/dist/webpack-stats.json
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"builtAt":1739267731074,"assets":[{"name":"blocknote.umd.cjs","size":254601},{"name":"blocknote.umd.cjs.map","size":931254}],"chunks":[{"id":"a1ee98a","entry":true,"initial":true,"files":["blocknote.umd.cjs"],"names":["index"]}],"modules":[{"name":"./src/i18n/locales/ar.ts","size":6919,"chunks":["a1ee98a"]},{"name":"./src/i18n/locales/de.ts","size":7549,"chunks":["a1ee98a"]},{"name":"./src/i18n/locales/en.ts","size":6990,"chunks":["a1ee98a"]},{"name":"./src/i18n/locales/es.ts","size":7421,"chunks":["a1ee98a"]},{"name":"./src/i18n/locales/fr.ts","size":8147,"chunks":["a1ee98a"]},{"name":"./src/i18n/locales/hr.ts","size":7328,"chunks":["a1ee98a"]},{"name":"./src/i18n/locales/is.ts","size":7210,"chunks":["a1ee98a"]},{"name":"./src/i18n/locales/it.ts","size":7338,"chunks":["a1ee98a"]},{"name":"./src/i18n/locales/ja.ts","size":6639,"chunks":["a1ee98a"]},{"name":"./src/i18n/locales/ko.ts","size":6437,"chunks":["a1ee98a"]},{"name":"./src/i18n/locales/nl.ts","size":7426,"chunks":["a1ee98a"]},{"name":"./src/i18n/locales/pl.ts","size":7129,"chunks":["a1ee98a"]},{"name":"./src/i18n/locales/pt.ts","size":7349,"chunks":["a1ee98a"]},{"name":"./src/i18n/locales/ru.ts","size":8013,"chunks":["a1ee98a"]},{"name":"./src/i18n/locales/uk.ts","size":7519,"chunks":["a1ee98a"]},{"name":"./src/i18n/locales/vi.ts","size":7264,"chunks":["a1ee98a"]},{"name":"./src/i18n/locales/zh.ts","size":6381,"chunks":["a1ee98a"]},{"name":"./src/i18n/locales/index.ts","size":0,"chunks":["a1ee98a"]},{"name":"./src/util/typescript.ts","size":331,"chunks":["a1ee98a"]},{"name":"./src/extensions/UniqueID/UniqueID.ts","size":8887,"chunks":["a1ee98a"]},{"name":"./src/schema/inlineContent/types.ts","size":302,"chunks":["a1ee98a"]},{"name":"./src/api/nodeConversions/blockToNode.ts","size":6071,"chunks":["a1ee98a"]},{"name":"./src/api/exporters/html/util/serializeBlocksExternalHTML.ts","size":5122,"chunks":["a1ee98a"]},{"name":"./src/api/exporters/html/externalHTMLExporter.ts","size":886,"chunks":["a1ee98a"]},{"name":"./src/api/exporters/html/util/serializeBlocksInternalHTML.ts","size":3264,"chunks":["a1ee98a"]},{"name":"./src/api/exporters/html/internalHTMLSerializer.ts","size":288,"chunks":["a1ee98a"]},{"name":"./src/api/getBlockInfoFromPos.ts","size":3648,"chunks":["a1ee98a"]},{"name":"./src/api/nodeUtil.ts","size":490,"chunks":["a1ee98a"]},{"name":"./src/util/browser.ts","size":536,"chunks":["a1ee98a"]},{"name":"./src/blocks/defaultBlockHelpers.ts","size":1755,"chunks":["a1ee98a"]},{"name":"./src/blocks/defaultProps.ts","size":269,"chunks":["a1ee98a"]},{"name":"./src/util/string.ts","size":299,"chunks":["a1ee98a"]},{"name":"./src/schema/blocks/internal.ts","size":4130,"chunks":["a1ee98a"]},{"name":"./src/schema/blocks/createSpec.ts","size":3609,"chunks":["a1ee98a"]},{"name":"./src/api/nodeConversions/nodeToBlock.ts","size":7706,"chunks":["a1ee98a"]},{"name":"./src/schema/inlineContent/internal.ts","size":1398,"chunks":["a1ee98a"]},{"name":"./src/schema/inlineContent/createSpec.ts","size":2739,"chunks":["a1ee98a"]},{"name":"./src/schema/styles/internal.ts","size":1162,"chunks":["a1ee98a"]},{"name":"./src/schema/styles/createSpec.ts","size":1263,"chunks":["a1ee98a"]},{"name":"./src/blocks/FileBlockContent/helpers/parse/parseFigureElement.ts","size":342,"chunks":["a1ee98a"]},{"name":"./src/blocks/FileBlockContent/helpers/render/createAddFileButton.ts","size":1725,"chunks":["a1ee98a"]},{"name":"./src/blocks/FileBlockContent/helpers/render/createFileNameWithIcon.ts","size":753,"chunks":["a1ee98a"]},{"name":"./src/blocks/FileBlockContent/helpers/render/createFileBlockWrapper.ts","size":1428,"chunks":["a1ee98a"]},{"name":"./src/blocks/FileBlockContent/helpers/toExternalHTML/createFigureWithCaption.ts","size":307,"chunks":["a1ee98a"]},{"name":"./src/blocks/FileBlockContent/helpers/toExternalHTML/createLinkWithCaption.ts","size":294,"chunks":["a1ee98a"]},{"name":"./src/blocks/AudioBlockContent/parseAudioElement.ts","size":108,"chunks":["a1ee98a"]},{"name":"./src/blocks/AudioBlockContent/AudioBlockContent.ts","size":3155,"chunks":["a1ee98a"]},{"name":"./src/blocks/CodeBlockContent/defaultSupportedLanguages.ts","size":1707,"chunks":["a1ee98a"]},{"name":"./src/blocks/CodeBlockContent/CodeBlockContent.ts","size":9104,"chunks":["a1ee98a"]},{"name":"./src/blocks/PageBreakBlockContent/PageBreakBlockContent.ts","size":854,"chunks":["a1ee98a"]},{"name":"./src/extensions/BackgroundColor/BackgroundColorMark.ts","size":946,"chunks":["a1ee98a"]},{"name":"./src/extensions/TextColor/TextColorMark.ts","size":866,"chunks":["a1ee98a"]},{"name":"./src/blocks/FileBlockContent/helpers/parse/parseEmbedElement.ts","size":108,"chunks":["a1ee98a"]},{"name":"./src/blocks/FileBlockContent/FileBlockContent.ts","size":1460,"chunks":["a1ee98a"]},{"name":"./src/api/blockManipulation/commands/updateBlock/updateBlock.ts","size":4725,"chunks":["a1ee98a"]},{"name":"./src/blocks/HeadingBlockContent/HeadingBlockContent.ts","size":3418,"chunks":["a1ee98a"]},{"name":"./src/blocks/FileBlockContent/helpers/render/createResizableFileBlockWrapper.ts","size":4637,"chunks":["a1ee98a"]},{"name":"./src/blocks/ImageBlockContent/parseImageElement.ts","size":175,"chunks":["a1ee98a"]},{"name":"./src/blocks/ImageBlockContent/ImageBlockContent.ts","size":3243,"chunks":["a1ee98a"]},{"name":"./src/api/blockManipulation/commands/splitBlock/splitBlock.ts","size":868,"chunks":["a1ee98a"]},{"name":"./src/blocks/ListItemBlockContent/ListItemKeyboardShortcuts.ts","size":1429,"chunks":["a1ee98a"]},{"name":"./src/blocks/ListItemBlockContent/BulletListItemBlockContent/BulletListItemBlockContent.ts","size":3415,"chunks":["a1ee98a"]},{"name":"./src/blocks/ListItemBlockContent/CheckListItemBlockContent/CheckListItemBlockContent.ts","size":7148,"chunks":["a1ee98a"]},{"name":"./src/blocks/ListItemBlockContent/NumberedListItemBlockContent/NumberedListIndexingPlugin.ts","size":2207,"chunks":["a1ee98a"]},{"name":"./src/blocks/ListItemBlockContent/NumberedListItemBlockContent/NumberedListItemBlockContent.ts","size":4427,"chunks":["a1ee98a"]},{"name":"./src/blocks/ParagraphBlockContent/ParagraphBlockContent.ts","size":1434,"chunks":["a1ee98a"]},{"name":"./src/blocks/TableBlockContent/TableExtension.ts","size":2275,"chunks":["a1ee98a"]},{"name":"./src/blocks/TableBlockContent/TableBlockContent.ts","size":4223,"chunks":["a1ee98a"]},{"name":"./src/blocks/VideoBlockContent/parseVideoElement.ts","size":175,"chunks":["a1ee98a"]},{"name":"./src/blocks/VideoBlockContent/VideoBlockContent.ts","size":3162,"chunks":["a1ee98a"]},{"name":"./src/blocks/defaultBlocks.ts","size":1147,"chunks":["a1ee98a"]},{"name":"./src/blocks/defaultBlockTypeGuards.ts","size":1580,"chunks":["a1ee98a"]},{"name":"./src/extensions/SuggestionMenu/getDefaultSlashMenuItems.ts","size":6735,"chunks":["a1ee98a"]},{"name":"./src/editor/BlockNoteSchema.ts","size":1044,"chunks":["a1ee98a"]},{"name":"./src/blocks/PageBreakBlockContent/schema.ts","size":350,"chunks":["a1ee98a"]},{"name":"./src/blocks/PageBreakBlockContent/getPageBreakSlashMenuItems.ts","size":534,"chunks":["a1ee98a"]},{"name":"./src/blocks/FileBlockContent/uploadToTmpFilesDotOrg_DEV_ONLY.ts","size":316,"chunks":["a1ee98a"]},{"name":"./src/api/blockManipulation/commands/insertBlocks/insertBlocks.ts","size":1141,"chunks":["a1ee98a"]},{"name":"./src/api/blockManipulation/commands/moveBlocks/moveBlocks.ts","size":5693,"chunks":["a1ee98a"]},{"name":"./src/api/blockManipulation/commands/nestBlock/nestBlock.ts","size":2324,"chunks":["a1ee98a"]},{"name":"./src/api/blockManipulation/commands/replaceBlocks/replaceBlocks.ts","size":2533,"chunks":["a1ee98a"]},{"name":"./src/api/blockManipulation/commands/removeBlocks/removeBlocks.ts","size":123,"chunks":["a1ee98a"]},{"name":"./src/api/blockManipulation/getBlock/getBlock.ts","size":2452,"chunks":["a1ee98a"]},{"name":"./src/api/blockManipulation/insertContentAt.ts","size":1120,"chunks":["a1ee98a"]},{"name":"./src/api/blockManipulation/selections/selection.ts","size":4698,"chunks":["a1ee98a"]},{"name":"./src/api/blockManipulation/selections/textCursorPosition/textCursorPosition.ts","size":2880,"chunks":["a1ee98a"]},{"name":"./src/util/esmDependencies.ts","size":820,"chunks":["a1ee98a"]},{"name":"./src/api/exporters/markdown/removeUnderlinesRehypePlugin.ts","size":752,"chunks":["a1ee98a"]},{"name":"./src/api/exporters/markdown/util/addSpacesToCheckboxesRehypePlugin.ts","size":969,"chunks":["a1ee98a"]},{"name":"./src/api/exporters/markdown/markdownExporter.ts","size":837,"chunks":["a1ee98a"]},{"name":"./src/api/parsers/html/util/nestedLists.ts","size":2174,"chunks":["a1ee98a"]},{"name":"./src/api/parsers/html/parseHTML.ts","size":503,"chunks":["a1ee98a"]},{"name":"./src/api/parsers/markdown/parseMarkdown.ts","size":1097,"chunks":["a1ee98a"]},{"name":"./src/api/clipboard/fromClipboard/acceptedMIMETypes.ts","size":115,"chunks":["a1ee98a"]},{"name":"./src/api/clipboard/fromClipboard/handleFileInsertion.ts","size":3576,"chunks":["a1ee98a"]},{"name":"./src/api/clipboard/fromClipboard/fileDropExtension.ts","size":884,"chunks":["a1ee98a"]},{"name":"./src/api/clipboard/fromClipboard/handleVSCodePaste.ts","size":661,"chunks":["a1ee98a"]},{"name":"./src/api/clipboard/fromClipboard/pasteExtension.ts","size":1552,"chunks":["a1ee98a"]},{"name":"./src/api/nodeConversions/fragmentToBlocks.ts","size":859,"chunks":["a1ee98a"]},{"name":"./src/api/clipboard/toClipboard/copyExtension.ts","size":4666,"chunks":["a1ee98a"]},{"name":"./src/extensions/BackgroundColor/BackgroundColorExtension.ts","size":791,"chunks":["a1ee98a"]},{"name":"./src/util/EventEmitter.ts","size":744,"chunks":["a1ee98a"]},{"name":"./src/extensions/FilePanel/FilePanelPlugin.ts","size":3584,"chunks":["a1ee98a"]},{"name":"./src/extensions/FormattingToolbar/FormattingToolbarPlugin.ts","size":5240,"chunks":["a1ee98a"]},{"name":"./src/api/blockManipulation/commands/mergeBlocks/mergeBlocks.ts","size":3228,"chunks":["a1ee98a"]},{"name":"./src/extensions/KeyboardShortcuts/KeyboardShortcutsExtension.ts","size":14774,"chunks":["a1ee98a"]},{"name":"./src/extensions/LinkToolbar/LinkToolbarPlugin.ts","size":7557,"chunks":["a1ee98a"]},{"name":"./src/extensions/LinkToolbar/protocols.ts","size":172,"chunks":["a1ee98a"]},{"name":"./src/extensions/NodeSelectionKeyboard/NodeSelectionKeyboardPlugin.ts","size":1195,"chunks":["a1ee98a"]},{"name":"./src/extensions/Placeholder/PlaceholderPlugin.ts","size":3316,"chunks":["a1ee98a"]},{"name":"./src/extensions/PreviousBlockType/PreviousBlockTypePlugin.ts","size":4802,"chunks":["a1ee98a"]},{"name":"./src/extensions/getDraggableBlockFromElement.ts","size":404,"chunks":["a1ee98a"]},{"name":"./src/extensions/SideMenu/MultipleNodeSelection.ts","size":1616,"chunks":["a1ee98a"]},{"name":"./src/extensions/SideMenu/dragging.ts","size":4521,"chunks":["a1ee98a"]},{"name":"./src/extensions/SideMenu/SideMenuPlugin.ts","size":13634,"chunks":["a1ee98a"]},{"name":"./src/extensions/SuggestionMenu/SuggestionPlugin.ts","size":8034,"chunks":["a1ee98a"]},{"name":"./src/extensions/TableHandles/TableHandlesPlugin.ts","size":19364,"chunks":["a1ee98a"]},{"name":"./src/extensions/TextAlignment/TextAlignmentExtension.ts","size":928,"chunks":["a1ee98a"]},{"name":"./src/extensions/TextColor/TextColorExtension.ts","size":725,"chunks":["a1ee98a"]},{"name":"./src/extensions/TrailingNode/TrailingNodeExtension.ts","size":1563,"chunks":["a1ee98a"]},{"name":"./src/pm-nodes/BlockContainer.ts","size":2038,"chunks":["a1ee98a"]},{"name":"./src/pm-nodes/BlockGroup.ts","size":1102,"chunks":["a1ee98a"]},{"name":"./src/pm-nodes/Doc.ts","size":90,"chunks":["a1ee98a"]},{"name":"./src/extensions/Collaboration/createCollaborationExtensions.ts","size":3460,"chunks":["a1ee98a"]},{"name":"./src/editor/BlockNoteExtensions.ts","size":4367,"chunks":["a1ee98a"]},{"name":"./src/editor/transformPasted.ts","size":2604,"chunks":["a1ee98a"]},{"name":"./src/editor/BlockNoteTipTapEditor.ts","size":3599,"chunks":["a1ee98a"]},{"name":"./src/style.css","size":0,"chunks":["a1ee98a"]},{"name":"./src/editor/BlockNoteEditor.ts","size":26432,"chunks":["a1ee98a"]},{"name":"./src/editor/defaultColors.ts","size":1193,"chunks":["a1ee98a"]},{"name":"./src/exporter/Exporter.ts","size":1075,"chunks":["a1ee98a"]},{"name":"./src/exporter/mapping.ts","size":197,"chunks":["a1ee98a"]},{"name":"./src/extensions/SuggestionMenu/getDefaultEmojiPickerItems.ts","size":700,"chunks":["a1ee98a"]},{"name":"./src/util/combineByGroup.ts","size":550,"chunks":["a1ee98a"]},{"name":"./src/api/testUtil/partialBlockTestUtil.ts","size":3149,"chunks":["a1ee98a"]},{"name":"./src/index.ts","size":0,"chunks":["a1ee98a"]}]}
|
|
1
|
+
{"builtAt":1739391549221,"assets":[{"name":"blocknote.umd.cjs","size":254671},{"name":"blocknote.umd.cjs.map","size":933004}],"chunks":[{"id":"a1ee98a","entry":true,"initial":true,"files":["blocknote.umd.cjs"],"names":["index"]}],"modules":[{"name":"./src/i18n/locales/ar.ts","size":6919,"chunks":["a1ee98a"]},{"name":"./src/i18n/locales/de.ts","size":7549,"chunks":["a1ee98a"]},{"name":"./src/i18n/locales/en.ts","size":6990,"chunks":["a1ee98a"]},{"name":"./src/i18n/locales/es.ts","size":7421,"chunks":["a1ee98a"]},{"name":"./src/i18n/locales/fr.ts","size":8147,"chunks":["a1ee98a"]},{"name":"./src/i18n/locales/hr.ts","size":7328,"chunks":["a1ee98a"]},{"name":"./src/i18n/locales/is.ts","size":7210,"chunks":["a1ee98a"]},{"name":"./src/i18n/locales/it.ts","size":7338,"chunks":["a1ee98a"]},{"name":"./src/i18n/locales/ja.ts","size":6639,"chunks":["a1ee98a"]},{"name":"./src/i18n/locales/ko.ts","size":6437,"chunks":["a1ee98a"]},{"name":"./src/i18n/locales/nl.ts","size":7426,"chunks":["a1ee98a"]},{"name":"./src/i18n/locales/pl.ts","size":7129,"chunks":["a1ee98a"]},{"name":"./src/i18n/locales/pt.ts","size":7349,"chunks":["a1ee98a"]},{"name":"./src/i18n/locales/ru.ts","size":8013,"chunks":["a1ee98a"]},{"name":"./src/i18n/locales/uk.ts","size":7519,"chunks":["a1ee98a"]},{"name":"./src/i18n/locales/vi.ts","size":7264,"chunks":["a1ee98a"]},{"name":"./src/i18n/locales/zh.ts","size":6381,"chunks":["a1ee98a"]},{"name":"./src/i18n/locales/index.ts","size":0,"chunks":["a1ee98a"]},{"name":"./src/util/typescript.ts","size":331,"chunks":["a1ee98a"]},{"name":"./src/extensions/UniqueID/UniqueID.ts","size":8887,"chunks":["a1ee98a"]},{"name":"./src/schema/inlineContent/types.ts","size":302,"chunks":["a1ee98a"]},{"name":"./src/api/nodeConversions/blockToNode.ts","size":6071,"chunks":["a1ee98a"]},{"name":"./src/api/exporters/html/util/serializeBlocksExternalHTML.ts","size":5122,"chunks":["a1ee98a"]},{"name":"./src/api/exporters/html/externalHTMLExporter.ts","size":886,"chunks":["a1ee98a"]},{"name":"./src/api/exporters/html/util/serializeBlocksInternalHTML.ts","size":3264,"chunks":["a1ee98a"]},{"name":"./src/api/exporters/html/internalHTMLSerializer.ts","size":288,"chunks":["a1ee98a"]},{"name":"./src/api/getBlockInfoFromPos.ts","size":3648,"chunks":["a1ee98a"]},{"name":"./src/api/nodeUtil.ts","size":490,"chunks":["a1ee98a"]},{"name":"./src/util/browser.ts","size":536,"chunks":["a1ee98a"]},{"name":"./src/blocks/defaultBlockHelpers.ts","size":1755,"chunks":["a1ee98a"]},{"name":"./src/blocks/defaultProps.ts","size":269,"chunks":["a1ee98a"]},{"name":"./src/util/string.ts","size":299,"chunks":["a1ee98a"]},{"name":"./src/schema/blocks/internal.ts","size":4130,"chunks":["a1ee98a"]},{"name":"./src/schema/blocks/createSpec.ts","size":3609,"chunks":["a1ee98a"]},{"name":"./src/api/nodeConversions/nodeToBlock.ts","size":7706,"chunks":["a1ee98a"]},{"name":"./src/schema/inlineContent/internal.ts","size":1398,"chunks":["a1ee98a"]},{"name":"./src/schema/inlineContent/createSpec.ts","size":2739,"chunks":["a1ee98a"]},{"name":"./src/schema/styles/internal.ts","size":1162,"chunks":["a1ee98a"]},{"name":"./src/schema/styles/createSpec.ts","size":1263,"chunks":["a1ee98a"]},{"name":"./src/blocks/FileBlockContent/helpers/parse/parseFigureElement.ts","size":342,"chunks":["a1ee98a"]},{"name":"./src/blocks/FileBlockContent/helpers/render/createAddFileButton.ts","size":1725,"chunks":["a1ee98a"]},{"name":"./src/blocks/FileBlockContent/helpers/render/createFileNameWithIcon.ts","size":753,"chunks":["a1ee98a"]},{"name":"./src/blocks/FileBlockContent/helpers/render/createFileBlockWrapper.ts","size":1428,"chunks":["a1ee98a"]},{"name":"./src/blocks/FileBlockContent/helpers/toExternalHTML/createFigureWithCaption.ts","size":307,"chunks":["a1ee98a"]},{"name":"./src/blocks/FileBlockContent/helpers/toExternalHTML/createLinkWithCaption.ts","size":294,"chunks":["a1ee98a"]},{"name":"./src/blocks/AudioBlockContent/parseAudioElement.ts","size":108,"chunks":["a1ee98a"]},{"name":"./src/blocks/AudioBlockContent/AudioBlockContent.ts","size":3155,"chunks":["a1ee98a"]},{"name":"./src/blocks/CodeBlockContent/defaultSupportedLanguages.ts","size":1707,"chunks":["a1ee98a"]},{"name":"./src/blocks/CodeBlockContent/CodeBlockContent.ts","size":9104,"chunks":["a1ee98a"]},{"name":"./src/blocks/PageBreakBlockContent/PageBreakBlockContent.ts","size":854,"chunks":["a1ee98a"]},{"name":"./src/extensions/BackgroundColor/BackgroundColorMark.ts","size":946,"chunks":["a1ee98a"]},{"name":"./src/extensions/TextColor/TextColorMark.ts","size":866,"chunks":["a1ee98a"]},{"name":"./src/blocks/FileBlockContent/helpers/parse/parseEmbedElement.ts","size":108,"chunks":["a1ee98a"]},{"name":"./src/blocks/FileBlockContent/FileBlockContent.ts","size":1460,"chunks":["a1ee98a"]},{"name":"./src/api/blockManipulation/commands/updateBlock/updateBlock.ts","size":4725,"chunks":["a1ee98a"]},{"name":"./src/blocks/HeadingBlockContent/HeadingBlockContent.ts","size":3418,"chunks":["a1ee98a"]},{"name":"./src/blocks/FileBlockContent/helpers/render/createResizableFileBlockWrapper.ts","size":4637,"chunks":["a1ee98a"]},{"name":"./src/blocks/ImageBlockContent/parseImageElement.ts","size":175,"chunks":["a1ee98a"]},{"name":"./src/blocks/ImageBlockContent/ImageBlockContent.ts","size":3243,"chunks":["a1ee98a"]},{"name":"./src/api/blockManipulation/commands/splitBlock/splitBlock.ts","size":868,"chunks":["a1ee98a"]},{"name":"./src/blocks/ListItemBlockContent/ListItemKeyboardShortcuts.ts","size":1429,"chunks":["a1ee98a"]},{"name":"./src/blocks/ListItemBlockContent/BulletListItemBlockContent/BulletListItemBlockContent.ts","size":3415,"chunks":["a1ee98a"]},{"name":"./src/blocks/ListItemBlockContent/CheckListItemBlockContent/CheckListItemBlockContent.ts","size":7148,"chunks":["a1ee98a"]},{"name":"./src/blocks/ListItemBlockContent/NumberedListItemBlockContent/NumberedListIndexingPlugin.ts","size":2207,"chunks":["a1ee98a"]},{"name":"./src/blocks/ListItemBlockContent/NumberedListItemBlockContent/NumberedListItemBlockContent.ts","size":4427,"chunks":["a1ee98a"]},{"name":"./src/blocks/ParagraphBlockContent/ParagraphBlockContent.ts","size":1434,"chunks":["a1ee98a"]},{"name":"./src/blocks/TableBlockContent/TableExtension.ts","size":2275,"chunks":["a1ee98a"]},{"name":"./src/blocks/TableBlockContent/TableBlockContent.ts","size":4223,"chunks":["a1ee98a"]},{"name":"./src/blocks/VideoBlockContent/parseVideoElement.ts","size":175,"chunks":["a1ee98a"]},{"name":"./src/blocks/VideoBlockContent/VideoBlockContent.ts","size":3162,"chunks":["a1ee98a"]},{"name":"./src/blocks/defaultBlocks.ts","size":1147,"chunks":["a1ee98a"]},{"name":"./src/blocks/defaultBlockTypeGuards.ts","size":1580,"chunks":["a1ee98a"]},{"name":"./src/extensions/SuggestionMenu/getDefaultSlashMenuItems.ts","size":6735,"chunks":["a1ee98a"]},{"name":"./src/editor/BlockNoteSchema.ts","size":1044,"chunks":["a1ee98a"]},{"name":"./src/blocks/PageBreakBlockContent/schema.ts","size":350,"chunks":["a1ee98a"]},{"name":"./src/blocks/PageBreakBlockContent/getPageBreakSlashMenuItems.ts","size":534,"chunks":["a1ee98a"]},{"name":"./src/blocks/FileBlockContent/uploadToTmpFilesDotOrg_DEV_ONLY.ts","size":316,"chunks":["a1ee98a"]},{"name":"./src/api/blockManipulation/commands/insertBlocks/insertBlocks.ts","size":1141,"chunks":["a1ee98a"]},{"name":"./src/api/blockManipulation/commands/moveBlocks/moveBlocks.ts","size":5693,"chunks":["a1ee98a"]},{"name":"./src/api/blockManipulation/commands/nestBlock/nestBlock.ts","size":2324,"chunks":["a1ee98a"]},{"name":"./src/api/blockManipulation/commands/replaceBlocks/replaceBlocks.ts","size":2533,"chunks":["a1ee98a"]},{"name":"./src/api/blockManipulation/commands/removeBlocks/removeBlocks.ts","size":123,"chunks":["a1ee98a"]},{"name":"./src/api/blockManipulation/getBlock/getBlock.ts","size":2452,"chunks":["a1ee98a"]},{"name":"./src/api/blockManipulation/insertContentAt.ts","size":1120,"chunks":["a1ee98a"]},{"name":"./src/api/blockManipulation/selections/selection.ts","size":4698,"chunks":["a1ee98a"]},{"name":"./src/api/blockManipulation/selections/textCursorPosition/textCursorPosition.ts","size":2880,"chunks":["a1ee98a"]},{"name":"./src/util/esmDependencies.ts","size":820,"chunks":["a1ee98a"]},{"name":"./src/api/exporters/markdown/removeUnderlinesRehypePlugin.ts","size":752,"chunks":["a1ee98a"]},{"name":"./src/api/exporters/markdown/util/addSpacesToCheckboxesRehypePlugin.ts","size":969,"chunks":["a1ee98a"]},{"name":"./src/api/exporters/markdown/markdownExporter.ts","size":837,"chunks":["a1ee98a"]},{"name":"./src/api/parsers/html/util/nestedLists.ts","size":2174,"chunks":["a1ee98a"]},{"name":"./src/api/parsers/html/parseHTML.ts","size":503,"chunks":["a1ee98a"]},{"name":"./src/api/parsers/markdown/parseMarkdown.ts","size":1097,"chunks":["a1ee98a"]},{"name":"./src/api/clipboard/fromClipboard/acceptedMIMETypes.ts","size":115,"chunks":["a1ee98a"]},{"name":"./src/api/clipboard/fromClipboard/handleFileInsertion.ts","size":3576,"chunks":["a1ee98a"]},{"name":"./src/api/clipboard/fromClipboard/fileDropExtension.ts","size":884,"chunks":["a1ee98a"]},{"name":"./src/api/clipboard/fromClipboard/handleVSCodePaste.ts","size":661,"chunks":["a1ee98a"]},{"name":"./src/api/clipboard/fromClipboard/pasteExtension.ts","size":1552,"chunks":["a1ee98a"]},{"name":"./src/api/nodeConversions/fragmentToBlocks.ts","size":859,"chunks":["a1ee98a"]},{"name":"./src/api/clipboard/toClipboard/copyExtension.ts","size":5228,"chunks":["a1ee98a"]},{"name":"./src/extensions/BackgroundColor/BackgroundColorExtension.ts","size":791,"chunks":["a1ee98a"]},{"name":"./src/util/EventEmitter.ts","size":744,"chunks":["a1ee98a"]},{"name":"./src/extensions/FilePanel/FilePanelPlugin.ts","size":3584,"chunks":["a1ee98a"]},{"name":"./src/extensions/FormattingToolbar/FormattingToolbarPlugin.ts","size":5240,"chunks":["a1ee98a"]},{"name":"./src/api/blockManipulation/commands/mergeBlocks/mergeBlocks.ts","size":3228,"chunks":["a1ee98a"]},{"name":"./src/extensions/KeyboardShortcuts/KeyboardShortcutsExtension.ts","size":14774,"chunks":["a1ee98a"]},{"name":"./src/extensions/LinkToolbar/LinkToolbarPlugin.ts","size":7557,"chunks":["a1ee98a"]},{"name":"./src/extensions/LinkToolbar/protocols.ts","size":172,"chunks":["a1ee98a"]},{"name":"./src/extensions/NodeSelectionKeyboard/NodeSelectionKeyboardPlugin.ts","size":1195,"chunks":["a1ee98a"]},{"name":"./src/extensions/Placeholder/PlaceholderPlugin.ts","size":3334,"chunks":["a1ee98a"]},{"name":"./src/extensions/PreviousBlockType/PreviousBlockTypePlugin.ts","size":4820,"chunks":["a1ee98a"]},{"name":"./src/extensions/getDraggableBlockFromElement.ts","size":404,"chunks":["a1ee98a"]},{"name":"./src/extensions/SideMenu/MultipleNodeSelection.ts","size":1616,"chunks":["a1ee98a"]},{"name":"./src/extensions/SideMenu/dragging.ts","size":4482,"chunks":["a1ee98a"]},{"name":"./src/extensions/SideMenu/SideMenuPlugin.ts","size":13634,"chunks":["a1ee98a"]},{"name":"./src/extensions/SuggestionMenu/SuggestionPlugin.ts","size":8070,"chunks":["a1ee98a"]},{"name":"./src/extensions/TableHandles/TableHandlesPlugin.ts","size":19400,"chunks":["a1ee98a"]},{"name":"./src/extensions/TextAlignment/TextAlignmentExtension.ts","size":928,"chunks":["a1ee98a"]},{"name":"./src/extensions/TextColor/TextColorExtension.ts","size":725,"chunks":["a1ee98a"]},{"name":"./src/extensions/TrailingNode/TrailingNodeExtension.ts","size":1563,"chunks":["a1ee98a"]},{"name":"./src/pm-nodes/BlockContainer.ts","size":2038,"chunks":["a1ee98a"]},{"name":"./src/pm-nodes/BlockGroup.ts","size":1102,"chunks":["a1ee98a"]},{"name":"./src/pm-nodes/Doc.ts","size":90,"chunks":["a1ee98a"]},{"name":"./src/extensions/Collaboration/createCollaborationExtensions.ts","size":3728,"chunks":["a1ee98a"]},{"name":"./src/editor/BlockNoteExtensions.ts","size":4367,"chunks":["a1ee98a"]},{"name":"./src/editor/transformPasted.ts","size":2604,"chunks":["a1ee98a"]},{"name":"./src/editor/BlockNoteTipTapEditor.ts","size":3608,"chunks":["a1ee98a"]},{"name":"./src/style.css","size":0,"chunks":["a1ee98a"]},{"name":"./src/editor/BlockNoteEditor.ts","size":26432,"chunks":["a1ee98a"]},{"name":"./src/editor/defaultColors.ts","size":1193,"chunks":["a1ee98a"]},{"name":"./src/exporter/Exporter.ts","size":1075,"chunks":["a1ee98a"]},{"name":"./src/exporter/mapping.ts","size":197,"chunks":["a1ee98a"]},{"name":"./src/extensions/SuggestionMenu/getDefaultEmojiPickerItems.ts","size":700,"chunks":["a1ee98a"]},{"name":"./src/util/combineByGroup.ts","size":550,"chunks":["a1ee98a"]},{"name":"./src/api/testUtil/partialBlockTestUtil.ts","size":3149,"chunks":["a1ee98a"]},{"name":"./src/index.ts","size":0,"chunks":["a1ee98a"]}]}
|
package/package.json
CHANGED
|
@@ -6,7 +6,7 @@
|
|
|
6
6
|
"*.css"
|
|
7
7
|
],
|
|
8
8
|
"license": "MPL-2.0",
|
|
9
|
-
"version": "0.23.
|
|
9
|
+
"version": "0.23.6",
|
|
10
10
|
"files": [
|
|
11
11
|
"dist",
|
|
12
12
|
"types",
|
|
@@ -85,7 +85,7 @@
|
|
|
85
85
|
"prosemirror-state": "^1.4.3",
|
|
86
86
|
"prosemirror-tables": "^1.6.1",
|
|
87
87
|
"prosemirror-transform": "^1.10.2",
|
|
88
|
-
"prosemirror-view": "^1.
|
|
88
|
+
"prosemirror-view": "^1.38.0",
|
|
89
89
|
"rehype-format": "^5.0.0",
|
|
90
90
|
"rehype-parse": "^8.0.4",
|
|
91
91
|
"rehype-remark": "^9.1.2",
|
|
@@ -124,5 +124,5 @@
|
|
|
124
124
|
"access": "public",
|
|
125
125
|
"registry": "https://registry.npmjs.org/"
|
|
126
126
|
},
|
|
127
|
-
"gitHead": "
|
|
127
|
+
"gitHead": "4a168cbf5c85ff2683f3e8ea49df4a5544625218"
|
|
128
128
|
}
|
|
@@ -129,8 +129,7 @@ export function selectedFragmentToHTML<
|
|
|
129
129
|
}
|
|
130
130
|
|
|
131
131
|
// Uses default ProseMirror clipboard serialization.
|
|
132
|
-
const clipboardHTML: string =
|
|
133
|
-
view,
|
|
132
|
+
const clipboardHTML: string = view.serializeForClipboard(
|
|
134
133
|
view.state.selection.content()
|
|
135
134
|
).dom.innerHTML;
|
|
136
135
|
|
|
@@ -147,6 +146,34 @@ export function selectedFragmentToHTML<
|
|
|
147
146
|
return { clipboardHTML, externalHTML, markdown };
|
|
148
147
|
}
|
|
149
148
|
|
|
149
|
+
const checkIfSelectionInNonEditableBlock = () => {
|
|
150
|
+
// Let browser handle event if selection is empty (nothing
|
|
151
|
+
// happens).
|
|
152
|
+
const selection = window.getSelection();
|
|
153
|
+
if (!selection || selection.isCollapsed) {
|
|
154
|
+
return true;
|
|
155
|
+
}
|
|
156
|
+
|
|
157
|
+
// Let browser handle event if it's within a non-editable
|
|
158
|
+
// "island". This means it's in selectable content within a
|
|
159
|
+
// non-editable block. We only need to check one node as it's
|
|
160
|
+
// not possible for the browser selection to start in an
|
|
161
|
+
// editable block and end in a non-editable one.
|
|
162
|
+
let node = selection.focusNode;
|
|
163
|
+
while (node) {
|
|
164
|
+
if (
|
|
165
|
+
node instanceof HTMLElement &&
|
|
166
|
+
node.getAttribute("contenteditable") === "false"
|
|
167
|
+
) {
|
|
168
|
+
return true;
|
|
169
|
+
}
|
|
170
|
+
|
|
171
|
+
node = node.parentElement;
|
|
172
|
+
}
|
|
173
|
+
|
|
174
|
+
return false;
|
|
175
|
+
};
|
|
176
|
+
|
|
150
177
|
const copyToClipboard = <
|
|
151
178
|
BSchema extends BlockSchema,
|
|
152
179
|
I extends InlineContentSchema,
|
|
@@ -187,11 +214,19 @@ export const createCopyToClipboardExtension = <
|
|
|
187
214
|
props: {
|
|
188
215
|
handleDOMEvents: {
|
|
189
216
|
copy(view, event) {
|
|
217
|
+
if (checkIfSelectionInNonEditableBlock()) {
|
|
218
|
+
return true;
|
|
219
|
+
}
|
|
220
|
+
|
|
190
221
|
copyToClipboard(editor, view, event);
|
|
191
222
|
// Prevent default PM handler to be called
|
|
192
223
|
return true;
|
|
193
224
|
},
|
|
194
225
|
cut(view, event) {
|
|
226
|
+
if (checkIfSelectionInNonEditableBlock()) {
|
|
227
|
+
return true;
|
|
228
|
+
}
|
|
229
|
+
|
|
195
230
|
copyToClipboard(editor, view, event);
|
|
196
231
|
if (view.editable) {
|
|
197
232
|
view.dispatch(view.state.tr.deleteSelection());
|
|
@@ -5,6 +5,7 @@ import { TableRow } from "@tiptap/extension-table-row";
|
|
|
5
5
|
import { Node as PMNode } from "prosemirror-model";
|
|
6
6
|
import { TableView } from "prosemirror-tables";
|
|
7
7
|
|
|
8
|
+
import { NodeView } from "prosemirror-view";
|
|
8
9
|
import {
|
|
9
10
|
createBlockSpecFromStronglyTypedTiptapNode,
|
|
10
11
|
createStronglyTypedTiptapNode,
|
|
@@ -101,7 +102,7 @@ export const TableBlockContent = createStronglyTypedTiptapNode({
|
|
|
101
102
|
return new BlockNoteTableView(node, EMPTY_CELL_WIDTH, {
|
|
102
103
|
...(this.options.domAttributes?.blockContent || {}),
|
|
103
104
|
...HTMLAttributes,
|
|
104
|
-
});
|
|
105
|
+
}) as NodeView;
|
|
105
106
|
};
|
|
106
107
|
},
|
|
107
108
|
});
|
package/src/editor/editor.css
CHANGED
|
@@ -77,66 +77,26 @@ Tippy popups that are appended to document.body directly
|
|
|
77
77
|
opacity: 0.001;
|
|
78
78
|
}
|
|
79
79
|
|
|
80
|
-
|
|
81
|
-
Here be dragons!
|
|
82
|
-
|
|
83
|
-
The collaboration cursor caret needs to:
|
|
84
|
-
- exist in the dom as a non-zero width element, so that when hovering over it, the label can display
|
|
85
|
-
- yet, effectively not take up space in the dom, so that it doesn't cause wrapping or otherwise effect layout of the page
|
|
86
|
-
|
|
87
|
-
To achieve this, it took quite a bit of fiddling to figure out how to do this.
|
|
88
|
-
|
|
89
|
-
The caret is a span which has a before and after pseudo element.
|
|
90
|
-
The before element is what actually takes up space in the dom, and is colored via a border.
|
|
91
|
-
The color is actually set by reading the current color from the `.collaboration-cursor__caret` element. Allowing for dynamic coloring from JS.
|
|
92
|
-
|
|
93
|
-
There are a number of browser specific quirks with these hacks:
|
|
94
|
-
- Firefox differs from Chrome & Safari in that it will split a word that is wrapping if not displayed as inline-block (whereas the others need display: inline)
|
|
95
|
-
- Safari differs from Chrome & Firefox in that it needs the pseudo element to be position: relative to display a pseudo-element element with a negative margin
|
|
96
|
-
|
|
97
|
-
The word-joiner char (\u2060) is used to make sure the caret doesn't wrap around the text.
|
|
98
|
-
|
|
99
|
-
Therefore if modifying this code, please test in all major browsers to ensure that the caret is rendered correctly in all browsers.
|
|
100
|
-
**/
|
|
101
|
-
|
|
102
|
-
/* Give a remote user a caret */
|
|
103
|
-
.collaboration-cursor__caret {
|
|
104
|
-
position: relative;
|
|
105
|
-
word-break: normal;
|
|
106
|
-
white-space: nowrap !important;
|
|
107
|
-
}
|
|
108
|
-
|
|
109
|
-
/* Allow the caret to be colored & hovered over */
|
|
110
|
-
.collaboration-cursor__caret::before {
|
|
111
|
-
/* Use currentColor to grab the color from the caret in set by JS */
|
|
112
|
-
border-left: 2px solid currentColor;
|
|
113
|
-
/* Make the cursor not actually take up the 2px of space within the element */
|
|
114
|
-
margin-left: -2px;
|
|
115
|
-
/* Fixes Safari's rendering of negative margin elements */
|
|
80
|
+
.collaboration-cursor__base {
|
|
116
81
|
position: relative;
|
|
117
82
|
}
|
|
118
83
|
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
/* Add a word-joiner (\u2060) char to each side of the caret */
|
|
127
|
-
.collaboration-cursor__caret::after,
|
|
128
|
-
.collaboration-cursor__caret::before {
|
|
129
|
-
content: "";
|
|
84
|
+
.collaboration-cursor__caret {
|
|
85
|
+
position: absolute;
|
|
86
|
+
width: 2px;
|
|
87
|
+
top: 1px;
|
|
88
|
+
bottom: -2px;
|
|
89
|
+
left: -1px;
|
|
130
90
|
}
|
|
131
91
|
|
|
132
|
-
/* Render the username above the caret */
|
|
133
92
|
.collaboration-cursor__label {
|
|
93
|
+
pointer-events: none;
|
|
134
94
|
border-radius: 0 1.5px 1.5px 0;
|
|
135
95
|
font-size: 12px;
|
|
136
96
|
font-style: normal;
|
|
137
97
|
font-weight: 600;
|
|
138
98
|
line-height: normal;
|
|
139
|
-
left:
|
|
99
|
+
left: 0;
|
|
140
100
|
overflow: hidden;
|
|
141
101
|
position: absolute;
|
|
142
102
|
white-space: nowrap;
|
|
@@ -150,13 +110,13 @@ Therefore if modifying this code, please test in all major browsers to ensure th
|
|
|
150
110
|
transition: all 0.2s;
|
|
151
111
|
}
|
|
152
112
|
|
|
153
|
-
.collaboration-
|
|
113
|
+
.collaboration-cursor__base[data-active] .collaboration-cursor__label {
|
|
154
114
|
color: #0d0d0d;
|
|
155
115
|
max-height: 1.1rem;
|
|
156
116
|
max-width: 20rem;
|
|
157
117
|
padding: 0.1rem 0.3rem;
|
|
158
118
|
top: -17px;
|
|
159
|
-
left:
|
|
119
|
+
left: 0;
|
|
160
120
|
border-radius: 3px 3px 3px 0;
|
|
161
121
|
|
|
162
122
|
transition: all 0.2s;
|
|
@@ -65,11 +65,12 @@ export const createCollaborationExtensions = (collaboration: {
|
|
|
65
65
|
const renderCursor = (user: { name: string; color: string }) => {
|
|
66
66
|
const cursorElement = document.createElement("span");
|
|
67
67
|
|
|
68
|
-
cursorElement.classList.add("collaboration-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
68
|
+
cursorElement.classList.add("collaboration-cursor__base");
|
|
69
|
+
|
|
70
|
+
const caretElement = document.createElement("span");
|
|
71
|
+
caretElement.setAttribute("contentedEditable", "false");
|
|
72
|
+
caretElement.classList.add("collaboration-cursor__caret");
|
|
73
|
+
caretElement.setAttribute("style", `background-color: ${user.color}`);
|
|
73
74
|
|
|
74
75
|
const labelElement = document.createElement("span");
|
|
75
76
|
|
|
@@ -77,7 +78,11 @@ export const createCollaborationExtensions = (collaboration: {
|
|
|
77
78
|
labelElement.setAttribute("style", `background-color: ${user.color}`);
|
|
78
79
|
labelElement.insertBefore(document.createTextNode(user.name), null);
|
|
79
80
|
|
|
80
|
-
|
|
81
|
+
caretElement.insertBefore(labelElement, null);
|
|
82
|
+
|
|
83
|
+
cursorElement.insertBefore(document.createTextNode("\u2060"), null); // Non-breaking space
|
|
84
|
+
cursorElement.insertBefore(caretElement, null);
|
|
85
|
+
cursorElement.insertBefore(document.createTextNode("\u2060"), null); // Non-breaking space
|
|
81
86
|
|
|
82
87
|
return cursorElement;
|
|
83
88
|
};
|
|
@@ -1,6 +1,5 @@
|
|
|
1
1
|
import { Node } from "prosemirror-model";
|
|
2
2
|
import { NodeSelection, Selection } from "prosemirror-state";
|
|
3
|
-
import * as pmView from "prosemirror-view";
|
|
4
3
|
import { EditorView } from "prosemirror-view";
|
|
5
4
|
|
|
6
5
|
import { createExternalHTMLExporter } from "../../api/exporters/html/externalHTMLExporter.js";
|
|
@@ -184,10 +183,8 @@ export function dragStart<
|
|
|
184
183
|
const selectedSlice = view.state.selection.content();
|
|
185
184
|
const schema = editor.pmSchema;
|
|
186
185
|
|
|
187
|
-
const clipboardHTML =
|
|
188
|
-
view
|
|
189
|
-
selectedSlice
|
|
190
|
-
).dom.innerHTML;
|
|
186
|
+
const clipboardHTML =
|
|
187
|
+
view.serializeForClipboard(selectedSlice).dom.innerHTML;
|
|
191
188
|
|
|
192
189
|
const externalHTMLExporter = createExternalHTMLExporter(schema, editor);
|
|
193
190
|
|