diff --git a/docs/src/demos/Examples/InteractiveNodeViews/Component.vue b/docs/src/demos/Examples/InteractiveNodeViews/Component.vue index 41a2d903..b1793b8c 100644 --- a/docs/src/demos/Examples/InteractiveNodeViews/Component.vue +++ b/docs/src/demos/Examples/InteractiveNodeViews/Component.vue @@ -30,9 +30,9 @@ export default { } - diff --git a/docs/src/demos/Experiments/Commands/index.vue b/docs/src/demos/Experiments/Commands/index.vue index 20469d3f..45edc971 100644 --- a/docs/src/demos/Experiments/Commands/index.vue +++ b/docs/src/demos/Experiments/Commands/index.vue @@ -130,17 +130,19 @@ export default { } - diff --git a/docs/src/demos/Experiments/Details/index.vue b/docs/src/demos/Experiments/Details/index.vue index b460448a..faf9d37f 100644 --- a/docs/src/demos/Experiments/Details/index.vue +++ b/docs/src/demos/Experiments/Details/index.vue @@ -63,34 +63,36 @@ export default { } - diff --git a/docs/src/demos/Experiments/MultipleEditors/index.vue b/docs/src/demos/Experiments/MultipleEditors/index.vue index 9e28af90..1f7350b2 100644 --- a/docs/src/demos/Experiments/MultipleEditors/index.vue +++ b/docs/src/demos/Experiments/MultipleEditors/index.vue @@ -143,67 +143,69 @@ export default { } - diff --git a/docs/src/demos/Experiments/Placeholder/index.vue b/docs/src/demos/Experiments/Placeholder/index.vue index fd22ca84..c87895e1 100644 --- a/docs/src/demos/Experiments/Placeholder/index.vue +++ b/docs/src/demos/Experiments/Placeholder/index.vue @@ -37,20 +37,22 @@ export default { } - diff --git a/docs/src/demos/Guide/GettingStarted/VModel/index.vue b/docs/src/demos/Guide/GettingStarted/VModel/index.vue index a39b7fa0..82c202ca 100644 --- a/docs/src/demos/Guide/GettingStarted/VModel/index.vue +++ b/docs/src/demos/Guide/GettingStarted/VModel/index.vue @@ -25,38 +25,40 @@ export default { } - diff --git a/docs/src/demos/Guide/NodeViews/JavaScript/index.vue b/docs/src/demos/Guide/NodeViews/JavaScript/index.vue index e2474ee1..53b723be 100644 --- a/docs/src/demos/Guide/NodeViews/JavaScript/index.vue +++ b/docs/src/demos/Guide/NodeViews/JavaScript/index.vue @@ -42,7 +42,7 @@ export default { } - diff --git a/docs/src/demos/Guide/NodeViews/ReactComponent/Component.jsx b/docs/src/demos/Guide/NodeViews/ReactComponent/Component.jsx new file mode 100644 index 00000000..efe0d9b1 --- /dev/null +++ b/docs/src/demos/Guide/NodeViews/ReactComponent/Component.jsx @@ -0,0 +1,22 @@ +import React from 'react' +import { NodeViewWrapper } from '@tiptap/react' + +export default props => { + const increase = () => { + props.updateAttributes({ + count: props.node.attrs.count + 1, + }) + } + + return ( + + React Component + +
+ +
+
+ ) +} diff --git a/docs/src/demos/Guide/NodeViews/ReactComponent/Extension.js b/docs/src/demos/Guide/NodeViews/ReactComponent/Extension.js new file mode 100644 index 00000000..36d61318 --- /dev/null +++ b/docs/src/demos/Guide/NodeViews/ReactComponent/Extension.js @@ -0,0 +1,35 @@ +import { Node, mergeAttributes } from '@tiptap/core' +import { ReactNodeViewRenderer } from '@tiptap/react' +import Component from './Component.jsx' + +export default Node.create({ + name: 'reactComponent', + + group: 'block', + + atom: true, + + addAttributes() { + return { + count: { + default: 0, + }, + } + }, + + parseHTML() { + return [ + { + tag: 'react-component', + }, + ] + }, + + renderHTML({ HTMLAttributes }) { + return ['react-component', mergeAttributes(HTMLAttributes)] + }, + + addNodeView() { + return ReactNodeViewRenderer(Component) + }, +}) diff --git a/docs/src/demos/Guide/NodeViews/ReactComponent/index.jsx b/docs/src/demos/Guide/NodeViews/ReactComponent/index.jsx new file mode 100644 index 00000000..69c15fd6 --- /dev/null +++ b/docs/src/demos/Guide/NodeViews/ReactComponent/index.jsx @@ -0,0 +1,27 @@ +import React from 'react' +import { useEditor, EditorContent } from '@tiptap/react' +import { defaultExtensions } from '@tiptap/starter-kit' +import ReactComponent from './Extension.js' +import './styles.scss' + +export default () => { + const editor = useEditor({ + extensions: [ + ...defaultExtensions(), + ReactComponent, + ], + content: ` +

+ This is still the text editor you’re used to, but enriched with node views. +

+ +

+ Did you see that? That’s a React component. We are really living in the future. +

+ `, + }) + + return ( + + ) +} diff --git a/docs/src/demos/Guide/NodeViews/ReactComponent/styles.scss b/docs/src/demos/Guide/NodeViews/ReactComponent/styles.scss new file mode 100644 index 00000000..971b652e --- /dev/null +++ b/docs/src/demos/Guide/NodeViews/ReactComponent/styles.scss @@ -0,0 +1,32 @@ +/* Basic editor styles */ +.ProseMirror { + > * + * { + margin-top: 0.75em; + } +} + +.react-component { + border: 3px solid #0D0D0D; + border-radius: 0.5rem; + margin: 1rem 0; + position: relative; + + .label { + margin-left: 1rem; + background-color: #0D0D0D; + font-size: 0.6rem; + letter-spacing: 1px; + font-weight: bold; + text-transform: uppercase; + color: #fff; + position: absolute; + top: 0; + padding: 0.25rem 0.75rem; + border-radius: 0 0 0.5rem 0.5rem; + } + + .content { + margin-top: 1.5rem; + padding: 1rem; + } +} diff --git a/docs/src/demos/Guide/NodeViews/ReactComponentContent/Component.jsx b/docs/src/demos/Guide/NodeViews/ReactComponentContent/Component.jsx new file mode 100644 index 00000000..5865a14e --- /dev/null +++ b/docs/src/demos/Guide/NodeViews/ReactComponentContent/Component.jsx @@ -0,0 +1,12 @@ +import React from 'react' +import { NodeViewWrapper, NodeViewContent } from '@tiptap/react' + +export default () => { + return ( + + React Component + + + + ) +} diff --git a/docs/src/demos/Guide/NodeViews/ReactComponentContent/Extension.js b/docs/src/demos/Guide/NodeViews/ReactComponentContent/Extension.js new file mode 100644 index 00000000..5fe2618a --- /dev/null +++ b/docs/src/demos/Guide/NodeViews/ReactComponentContent/Extension.js @@ -0,0 +1,35 @@ +import { Node, mergeAttributes } from '@tiptap/core' +import { ReactNodeViewRenderer } from '@tiptap/react' +import Component from './Component.jsx' + +export default Node.create({ + name: 'reactComponent', + + group: 'block', + + content: 'inline*', + + addAttributes() { + return { + count: { + default: 0, + }, + } + }, + + parseHTML() { + return [ + { + tag: 'react-component', + }, + ] + }, + + renderHTML({ HTMLAttributes }) { + return ['react-component', mergeAttributes(HTMLAttributes)] + }, + + addNodeView() { + return ReactNodeViewRenderer(Component) + }, +}) diff --git a/docs/src/demos/Guide/NodeViews/ReactComponentContent/index.jsx b/docs/src/demos/Guide/NodeViews/ReactComponentContent/index.jsx new file mode 100644 index 00000000..141e4deb --- /dev/null +++ b/docs/src/demos/Guide/NodeViews/ReactComponentContent/index.jsx @@ -0,0 +1,29 @@ +import React from 'react' +import { useEditor, EditorContent } from '@tiptap/react' +import { defaultExtensions } from '@tiptap/starter-kit' +import ReactComponent from './Extension.js' +import './styles.scss' + +export default () => { + const editor = useEditor({ + extensions: [ + ...defaultExtensions(), + ReactComponent, + ], + content: ` +

+ This is still the text editor you’re used to, but enriched with node views. +

+ +

This is editable.

+
+

+ Did you see that? That’s a React component. We are really living in the future. +

+ `, + }) + + return ( + + ) +} diff --git a/docs/src/demos/Guide/NodeViews/ReactComponentContent/styles.scss b/docs/src/demos/Guide/NodeViews/ReactComponentContent/styles.scss new file mode 100644 index 00000000..277092de --- /dev/null +++ b/docs/src/demos/Guide/NodeViews/ReactComponentContent/styles.scss @@ -0,0 +1,35 @@ +/* Basic editor styles */ +.ProseMirror { + > * + * { + margin-top: 0.75em; + } +} + +.react-component-with-content { + border: 3px solid #0D0D0D; + border-radius: 0.5rem; + margin: 1rem 0; + position: relative; + + .label { + margin-left: 1rem; + background-color: #0D0D0D; + font-size: 0.6rem; + letter-spacing: 1px; + font-weight: bold; + text-transform: uppercase; + color: #fff; + position: absolute; + top: 0; + padding: 0.25rem 0.75rem; + border-radius: 0 0 0.5rem 0.5rem; + } + + .content { + margin: 2.5rem 1rem 1rem; + padding: 0.5rem; + border: 2px dashed #0D0D0D20; + border-radius: 0.5rem; + } +} + diff --git a/docs/src/demos/Guide/NodeViews/VueComponent/Component.vue b/docs/src/demos/Guide/NodeViews/VueComponent/Component.vue index 41a2d903..b1793b8c 100644 --- a/docs/src/demos/Guide/NodeViews/VueComponent/Component.vue +++ b/docs/src/demos/Guide/NodeViews/VueComponent/Component.vue @@ -30,9 +30,9 @@ export default { } - diff --git a/docs/src/demos/Guide/NodeViews/VueComponentContent/index.js b/docs/src/demos/Guide/NodeViews/VueComponentContent/Extension.js similarity index 100% rename from docs/src/demos/Guide/NodeViews/VueComponentContent/index.js rename to docs/src/demos/Guide/NodeViews/VueComponentContent/Extension.js diff --git a/docs/src/demos/Guide/NodeViews/VueComponentContent/index.vue b/docs/src/demos/Guide/NodeViews/VueComponentContent/index.vue index 50929663..f9bc8186 100644 --- a/docs/src/demos/Guide/NodeViews/VueComponentContent/index.vue +++ b/docs/src/demos/Guide/NodeViews/VueComponentContent/index.vue @@ -5,7 +5,7 @@ - diff --git a/docs/src/docPages/guide/configuration.md b/docs/src/docPages/guide/configuration.md index 1c43fd9b..281dfff6 100644 --- a/docs/src/docPages/guide/configuration.md +++ b/docs/src/docPages/guide/configuration.md @@ -100,7 +100,7 @@ import { Editor, defaultExtensions } from '@tiptap/starter-kit' new Editor({ extensions: defaultExtensions({ heading: { - levels: [1, 2, 3] + levels: [1, 2, 3], }, }), }) @@ -128,7 +128,7 @@ import { Editor, defaultExtensions } from '@tiptap/starter-kit' new Editor({ extensions: [ ...defaultExtensions().filter(extension => extension.config.name !== 'history'), - ] + ], }) ``` diff --git a/docs/src/docPages/guide/node-views/react.md b/docs/src/docPages/guide/node-views/react.md index 61898d46..f4e5c7e2 100644 --- a/docs/src/docPages/guide/node-views/react.md +++ b/docs/src/docPages/guide/node-views/react.md @@ -4,3 +4,7 @@ ## Introduction TODO + + + + diff --git a/package.json b/package.json index 6b77a275..714097ed 100644 --- a/package.json +++ b/package.json @@ -20,7 +20,7 @@ "build:ci": "yarn clean:packages && for dir in packages/*; do package=${dir#'packages/'}; rollup -c --ci --scope @tiptap/$package || exit 1; done", "build:packages": "yarn clean:packages && lerna changed | while read package; do rollup -c --scope $package || exit 1; done", "build:allpackages": "yarn clean:packages && for dir in packages/*; do package=${dir#'packages/'}; rollup -c --scope @tiptap/$package || exit 1; done", - "release": "yarn lint && yarn test && yarn build:packages && lerna publish", + "release": "yarn build:packages && lerna publish", "clean:packages": "rm -rf ./packages/*/dist", "reset": "yarn clean:packages && rm -rf ./**/.cache && rm -rf ./**/node_modules && rm -rf ./yarn.lock && yarn install" }, @@ -37,10 +37,10 @@ "@rollup/plugin-babel": "^5.3.0", "@rollup/plugin-commonjs": "^17.0.0", "@rollup/plugin-node-resolve": "^11.2.0", - "@typescript-eslint/eslint-plugin": "^4.15.2", - "@typescript-eslint/parser": "^4.15.2", - "cypress": "^6.5.0", - "eslint": "^7.20.0", + "@typescript-eslint/eslint-plugin": "^4.18.0", + "@typescript-eslint/parser": "^4.18.0", + "cypress": "^6.7.1", + "eslint": "^7.22.0", "eslint-config-airbnb-base": "^14.2.0", "eslint-plugin-cypress": "^2.11.2", "eslint-plugin-html": "^6.1.0", @@ -48,7 +48,7 @@ "eslint-plugin-vue": "^7.6.0", "lerna": "^3.22.1", "minimist": "^1.2.5", - "rollup": "^2.40.0", + "rollup": "^2.41.4", "rollup-plugin-auto-external": "^2.0.0", "rollup-plugin-sourcemaps": "^0.6.3", "rollup-plugin-terser": "^7.0.2", diff --git a/packages/core/CHANGELOG.md b/packages/core/CHANGELOG.md index 8e2ace54..01b286fb 100644 --- a/packages/core/CHANGELOG.md +++ b/packages/core/CHANGELOG.md @@ -3,6 +3,22 @@ All notable changes to this project will be documented in this file. See [Conventional Commits](https://conventionalcommits.org) for commit guidelines. +# [2.0.0-beta.5](https://github.com/ueberdosis/tiptap-next/compare/@tiptap/core@2.0.0-beta.4...@tiptap/core@2.0.0-beta.5) (2021-03-18) + +**Note:** Version bump only for package @tiptap/core + + + + + +# [2.0.0-beta.4](https://github.com/ueberdosis/tiptap-next/compare/@tiptap/core@2.0.0-beta.3...@tiptap/core@2.0.0-beta.4) (2021-03-18) + +**Note:** Version bump only for package @tiptap/core + + + + + # [2.0.0-beta.3](https://github.com/ueberdosis/tiptap-next/compare/@tiptap/core@2.0.0-beta.2...@tiptap/core@2.0.0-beta.3) (2021-03-16) **Note:** Version bump only for package @tiptap/core diff --git a/packages/core/package.json b/packages/core/package.json index ef245c48..1c6abd9d 100644 --- a/packages/core/package.json +++ b/packages/core/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/core", "description": "headless rich text editor", - "version": "2.0.0-beta.3", + "version": "2.0.0-beta.5", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", @@ -39,6 +39,6 @@ "prosemirror-schema-list": "^1.1.4", "prosemirror-state": "^1.3.4", "prosemirror-transform": "^1.2.12", - "prosemirror-view": "^1.17.8" + "prosemirror-view": "^1.18.1" } } diff --git a/packages/core/src/NodeView.ts b/packages/core/src/NodeView.ts index 9ec74b52..d0308685 100644 --- a/packages/core/src/NodeView.ts +++ b/packages/core/src/NodeView.ts @@ -88,11 +88,18 @@ export class NodeView impleme const target = (event.target as HTMLElement) const isInElement = this.dom.contains(target) && !this.contentDOM?.contains(target) - // ignore all events from child nodes + // any event from child nodes should be handled by ProseMirror if (!isInElement) { return false } + const isInput = ['INPUT', 'BUTTON', 'SELECT', 'TEXTAREA'].includes(target.tagName) + + // any input event within node views should be ignored by ProseMirror + if (isInput) { + return true + } + const { isEditable } = this.editor const { isDragging } = this const isDraggable = !!this.node.type.spec.draggable @@ -123,9 +130,14 @@ export class NodeView impleme if (isValidDragHandle) { this.isDragging = true + document.addEventListener('dragend', () => { this.isDragging = false }, { once: true }) + + document.addEventListener('mouseup', () => { + this.isDragging = false + }, { once: true }) } } diff --git a/packages/core/src/pasteRules/markPasteRule.ts b/packages/core/src/pasteRules/markPasteRule.ts index 74bdbe98..361d464d 100644 --- a/packages/core/src/pasteRules/markPasteRule.ts +++ b/packages/core/src/pasteRules/markPasteRule.ts @@ -16,7 +16,7 @@ export default function (regexp: RegExp, type: MarkType, getAttrs?: (match: any) const outerMatch = Math.max(match.length - 2, 0) const innerMatch = Math.max(match.length - 1, 0) - if (parent.type.allowsMarkType(type)) { + if (parent?.type.allowsMarkType(type)) { const start = match.index const matchStart = start + match[0].indexOf(match[outerMatch]) const matchEnd = matchStart + match[outerMatch].length diff --git a/packages/extension-focus/CHANGELOG.md b/packages/extension-focus/CHANGELOG.md index 6e655c91..3b67e469 100644 --- a/packages/extension-focus/CHANGELOG.md +++ b/packages/extension-focus/CHANGELOG.md @@ -3,6 +3,14 @@ All notable changes to this project will be documented in this file. See [Conventional Commits](https://conventionalcommits.org) for commit guidelines. +# [2.0.0-beta.2](https://github.com/ueberdosis/tiptap-next/compare/@tiptap/extension-focus@2.0.0-beta.1...@tiptap/extension-focus@2.0.0-beta.2) (2021-03-18) + +**Note:** Version bump only for package @tiptap/extension-focus + + + + + # [2.0.0-beta.1](https://github.com/ueberdosis/tiptap-next/compare/@tiptap/extension-focus@2.0.0-alpha.12...@tiptap/extension-focus@2.0.0-beta.1) (2021-03-05) **Note:** Version bump only for package @tiptap/extension-focus diff --git a/packages/extension-focus/package.json b/packages/extension-focus/package.json index 757f2db4..6dadeb24 100644 --- a/packages/extension-focus/package.json +++ b/packages/extension-focus/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-focus", "description": "focus extension for tiptap", - "version": "2.0.0-beta.1", + "version": "2.0.0-beta.2", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", @@ -26,6 +26,6 @@ }, "dependencies": { "prosemirror-state": "^1.3.4", - "prosemirror-view": "^1.17.8" + "prosemirror-view": "^1.18.1" } } diff --git a/packages/extension-mention/CHANGELOG.md b/packages/extension-mention/CHANGELOG.md index cf7bb918..dc6b59b0 100644 --- a/packages/extension-mention/CHANGELOG.md +++ b/packages/extension-mention/CHANGELOG.md @@ -3,6 +3,22 @@ All notable changes to this project will be documented in this file. See [Conventional Commits](https://conventionalcommits.org) for commit guidelines. +# [2.0.0-beta.5](https://github.com/ueberdosis/tiptap-next/compare/@tiptap/extension-mention@2.0.0-beta.4...@tiptap/extension-mention@2.0.0-beta.5) (2021-03-18) + +**Note:** Version bump only for package @tiptap/extension-mention + + + + + +# [2.0.0-beta.4](https://github.com/ueberdosis/tiptap-next/compare/@tiptap/extension-mention@2.0.0-beta.3...@tiptap/extension-mention@2.0.0-beta.4) (2021-03-18) + +**Note:** Version bump only for package @tiptap/extension-mention + + + + + # [2.0.0-beta.3](https://github.com/ueberdosis/tiptap-next/compare/@tiptap/extension-mention@2.0.0-beta.2...@tiptap/extension-mention@2.0.0-beta.3) (2021-03-16) **Note:** Version bump only for package @tiptap/extension-mention diff --git a/packages/extension-mention/package.json b/packages/extension-mention/package.json index f64d2f28..d97eafc9 100644 --- a/packages/extension-mention/package.json +++ b/packages/extension-mention/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-mention", "description": "mention extension for tiptap", - "version": "2.0.0-beta.3", + "version": "2.0.0-beta.5", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", @@ -25,6 +25,6 @@ "@tiptap/core": "^2.0.0-beta.1" }, "dependencies": { - "@tiptap/suggestion": "^2.0.0-beta.3" + "@tiptap/suggestion": "^2.0.0-beta.5" } } diff --git a/packages/extension-table/CHANGELOG.md b/packages/extension-table/CHANGELOG.md index c761e3ca..5691c055 100644 --- a/packages/extension-table/CHANGELOG.md +++ b/packages/extension-table/CHANGELOG.md @@ -3,6 +3,14 @@ All notable changes to this project will be documented in this file. See [Conventional Commits](https://conventionalcommits.org) for commit guidelines. +# [2.0.0-beta.2](https://github.com/ueberdosis/tiptap-next/compare/@tiptap/extension-table@2.0.0-beta.1...@tiptap/extension-table@2.0.0-beta.2) (2021-03-18) + +**Note:** Version bump only for package @tiptap/extension-table + + + + + # [2.0.0-beta.1](https://github.com/ueberdosis/tiptap-next/compare/@tiptap/extension-table@2.0.0-alpha.12...@tiptap/extension-table@2.0.0-beta.1) (2021-03-05) **Note:** Version bump only for package @tiptap/extension-table diff --git a/packages/extension-table/package.json b/packages/extension-table/package.json index 4f661537..5976cfe5 100644 --- a/packages/extension-table/package.json +++ b/packages/extension-table/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/extension-table", "description": "table extension for tiptap", - "version": "2.0.0-beta.1", + "version": "2.0.0-beta.2", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", @@ -26,6 +26,6 @@ }, "dependencies": { "prosemirror-tables": "^1.1.1", - "prosemirror-view": "^1.17.8" + "prosemirror-view": "^1.18.1" } } diff --git a/packages/html/CHANGELOG.md b/packages/html/CHANGELOG.md index 9964e85a..156c7e5b 100644 --- a/packages/html/CHANGELOG.md +++ b/packages/html/CHANGELOG.md @@ -3,6 +3,22 @@ All notable changes to this project will be documented in this file. See [Conventional Commits](https://conventionalcommits.org) for commit guidelines. +# [2.0.0-beta.5](https://github.com/ueberdosis/tiptap-next/compare/@tiptap/html@2.0.0-beta.4...@tiptap/html@2.0.0-beta.5) (2021-03-18) + +**Note:** Version bump only for package @tiptap/html + + + + + +# [2.0.0-beta.4](https://github.com/ueberdosis/tiptap-next/compare/@tiptap/html@2.0.0-beta.3...@tiptap/html@2.0.0-beta.4) (2021-03-18) + +**Note:** Version bump only for package @tiptap/html + + + + + # [2.0.0-beta.3](https://github.com/ueberdosis/tiptap-next/compare/@tiptap/html@2.0.0-beta.2...@tiptap/html@2.0.0-beta.3) (2021-03-16) **Note:** Version bump only for package @tiptap/html diff --git a/packages/html/package.json b/packages/html/package.json index f9a5689d..c2b05e1b 100644 --- a/packages/html/package.json +++ b/packages/html/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/html", "description": "utility package to render tiptap JSON as HTML", - "version": "2.0.0-beta.3", + "version": "2.0.0-beta.5", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", @@ -22,7 +22,7 @@ "dist" ], "dependencies": { - "@tiptap/core": "^2.0.0-beta.3", + "@tiptap/core": "^2.0.0-beta.5", "hostic-dom": "^0.8.6", "prosemirror-model": "^1.13.3" } diff --git a/packages/react/CHANGELOG.md b/packages/react/CHANGELOG.md index 80e884ee..456b64e6 100644 --- a/packages/react/CHANGELOG.md +++ b/packages/react/CHANGELOG.md @@ -3,6 +3,14 @@ All notable changes to this project will be documented in this file. See [Conventional Commits](https://conventionalcommits.org) for commit guidelines. +# [2.0.0-beta.4](https://github.com/ueberdosis/tiptap-next/compare/@tiptap/react@2.0.0-beta.3...@tiptap/react@2.0.0-beta.4) (2021-03-18) + +**Note:** Version bump only for package @tiptap/react + + + + + # [2.0.0-beta.3](https://github.com/ueberdosis/tiptap-next/compare/@tiptap/react@2.0.0-beta.2...@tiptap/react@2.0.0-beta.3) (2021-03-16) **Note:** Version bump only for package @tiptap/react diff --git a/packages/react/package.json b/packages/react/package.json index 142a7030..05a8e617 100644 --- a/packages/react/package.json +++ b/packages/react/package.json @@ -1,7 +1,7 @@ { "name": "@tiptap/react", "description": "React components for tiptap", - "version": "2.0.0-beta.3", + "version": "2.0.0-beta.4", "homepage": "https://tiptap.dev", "keywords": [ "tiptap", @@ -27,7 +27,7 @@ "react-dom": "^17.0.1" }, "dependencies": { - "prosemirror-view": "^1.17.8" + "prosemirror-view": "^1.18.1" }, "devDependencies": { "@types/react-dom": "^17.0.1" diff --git a/packages/react/src/NodeViewContent.tsx b/packages/react/src/NodeViewContent.tsx index fbc64d8a..6d2a429a 100644 --- a/packages/react/src/NodeViewContent.tsx +++ b/packages/react/src/NodeViewContent.tsx @@ -2,7 +2,8 @@ import React from 'react' import { useReactNodeView } from './useReactNodeView' export interface NodeViewContentProps { - as: React.ElementType + className?: string, + as: React.ElementType, } export const NodeViewContent: React.FC = props => { @@ -11,6 +12,7 @@ export const NodeViewContent: React.FC = props => { return ( = props => { @@ -11,6 +12,7 @@ export const NodeViewWrapper: React.FC = props => { return (