diff --git a/.eslintrc.js b/.eslintrc.js
index 4d7a1a86..36715012 100644
--- a/.eslintrc.js
+++ b/.eslintrc.js
@@ -63,6 +63,8 @@ module.exports = {
'@typescript-eslint/no-unused-vars': ['error'],
'no-use-before-define': 'off',
'@typescript-eslint/no-use-before-define': ['error'],
+ 'no-dupe-class-members': 'off',
+ '@typescript-eslint/no-dupe-class-members': ['error'],
'@typescript-eslint/no-explicit-any': 'off',
'@typescript-eslint/no-empty-interface': 'off',
'@typescript-eslint/explicit-module-boundary-type': 'off',
diff --git a/docs/gridsome.config.js b/docs/gridsome.config.js
index 0e7d1212..daf72265 100644
--- a/docs/gridsome.config.js
+++ b/docs/gridsome.config.js
@@ -1,4 +1,5 @@
const path = require('path')
+const visit = require('unist-util-visit')
function addStyleResource(rule) {
rule.use('style-resource')
@@ -10,6 +11,28 @@ function addStyleResource(rule) {
})
}
+function tableWrapper() {
+ return async tree => {
+ visit(
+ tree,
+ 'table',
+ (node, index, parent) => {
+ if (node.type === 'table' && parent.type === 'root') {
+ const original = { ...node }
+
+ node.type = 'div'
+ node.children = [original]
+ node.data = {
+ hProperties: {
+ class: 'table-wrapper',
+ },
+ }
+ }
+ },
+ )
+ }
+}
+
module.exports = {
siteName: 'tiptap',
titleTemplate: '%s | tiptap',
@@ -26,6 +49,7 @@ module.exports = {
'@gridsome/remark-prismjs',
'remark-container',
'remark-toc',
+ tableWrapper,
],
remark: {
autolinkHeadings: {
diff --git a/docs/package.json b/docs/package.json
index ee92a579..12148378 100644
--- a/docs/package.json
+++ b/docs/package.json
@@ -10,11 +10,11 @@
"@gridsome/remark-prismjs": "^0.5.0",
"@gridsome/source-filesystem": "^0.6.2",
"@gridsome/transformer-json": "^0.2.1",
- "@gridsome/vue-remark": "^0.2.5",
+ "@gridsome/vue-remark": "^0.2.6",
"@mvasilkov/outdent": "^1.0.4",
- "collect.js": "^4.28.5",
+ "collect.js": "^4.28.6",
"globby": "^11.0.0",
- "gridsome": "0.7.22",
+ "gridsome": "0.7.23",
"gridsome-plugin-simple-analytics": "^1.1.0",
"portal-vue": "^2.1.7",
"raw-loader": "^4.0.2",
@@ -22,18 +22,17 @@
"react-dom": "^17.0.1",
"remark-container": "^0.1.2",
"remark-toc": "^7.0.0",
- "typescript": "^4.0.5",
"vue-github-button": "^1.1.2",
- "vue-live": "^1.15.1",
+ "vue-live": "^1.16.0",
"y-indexeddb": "^9.0.5",
"y-webrtc": "^10.1.6",
- "y-websocket": "^1.3.6",
- "yjs": "^13.4.4"
+ "y-websocket": "^1.3.7",
+ "yjs": "^13.4.5"
},
"devDependencies": {
- "@babel/plugin-proposal-optional-chaining": "^7.11.0",
- "@babel/preset-env": "^7.11.5",
- "@babel/preset-react": "^7.10.4",
+ "@babel/plugin-proposal-optional-chaining": "^7.12.7",
+ "@babel/preset-env": "^7.12.7",
+ "@babel/preset-react": "^7.12.7",
"html-loader": "^1.3.2",
"node-sass": "^5.0.0",
"sass-loader": "^10.0.3",
diff --git a/docs/src/components/Demo/index.vue b/docs/src/components/Demo/index.vue
index ce7aaf05..9681aa62 100644
--- a/docs/src/components/Demo/index.vue
+++ b/docs/src/components/Demo/index.vue
@@ -100,6 +100,10 @@ export default {
},
githubUrl() {
+ if (process.env.NODE_ENV === 'development') {
+ return `vscode://file${this.cwd}/src/demos/${this.name}/${this.files[0].name}`
+ }
+
return `https://github.com/ueberdosis/tiptap-next/tree/main/docs/src/demos/${this.name}`
},
},
diff --git a/docs/src/demos/Examples/Basic/index.vue b/docs/src/demos/Examples/Basic/index.vue
index b01c20a7..75de6f55 100644
--- a/docs/src/demos/Examples/Basic/index.vue
+++ b/docs/src/demos/Examples/Basic/index.vue
@@ -13,7 +13,7 @@
-