diff --git a/package-lock.json b/package-lock.json index 50a62235..2b4e97fa 100644 --- a/package-lock.json +++ b/package-lock.json @@ -6609,16 +6609,6 @@ "node": ">=14" } }, - "node_modules/@popperjs/core": { - "version": "2.11.8", - "resolved": "https://registry.npmjs.org/@popperjs/core/-/core-2.11.8.tgz", - "integrity": "sha512-P1st0aksCrn9sGZhp8GMYwBnQsbvAWsZAX44oXNNvLHGqAOcoVxmjZiohstwQ7SqKnbR47akdNi+uleWD8+g6A==", - "license": "MIT", - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/popperjs" - } - }, "node_modules/@radix-ui/number": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/@radix-ui/number/-/number-1.1.1.tgz", @@ -9444,343 +9434,50 @@ } }, "node_modules/@tiptap/core": { - "version": "2.24.1", - "resolved": "https://registry.npmjs.org/@tiptap/core/-/core-2.24.1.tgz", - "integrity": "sha512-B2OA4s7Gwci1uE6Do5Nl3M0wTxEige3WvMd3SlPNEH+aTuz0Yi6lav7OCS+BZTMwOja7n8OD7BfdML23ghxoxw==", + "version": "3.0.7", + "resolved": "https://registry.npmjs.org/@tiptap/core/-/core-3.0.7.tgz", + "integrity": "sha512-/NC0BbekWzi5sC+s7gRrGIv33cUfuiZUG5DWx8TNedA6b6aTFPHUe+2wKRPaPQ0pfGdOWU0nsOkboUJ9dAjl4g==", "license": "MIT", "funding": { "type": "github", "url": "https://github.com/sponsors/ueberdosis" }, "peerDependencies": { - "@tiptap/pm": "^2.7.0" + "@tiptap/pm": "^3.0.7" } }, - "node_modules/@tiptap/extension-blockquote": { - "version": "2.24.1", - "resolved": "https://registry.npmjs.org/@tiptap/extension-blockquote/-/extension-blockquote-2.24.1.tgz", - "integrity": "sha512-vgAth0xjqK+UJk2R84ry4rrTL7T2oFNv3vjvs/cMm5bOTVusgXsYCxRzttHcUyQ5Zd4JvTVA+u3SYB79ZItzPQ==", + "node_modules/@tiptap/extension-list": { + "version": "3.0.7", + "resolved": "https://registry.npmjs.org/@tiptap/extension-list/-/extension-list-3.0.7.tgz", + "integrity": "sha512-rwu5dXRO0YLyxndMHI17PoxK0x0ZaMZKRZflqOy8fSnXNwd3Tdy8/6a9tsmpgO38kOZEYuvMVaeB7J/+UeBVLg==", "license": "MIT", "funding": { "type": "github", "url": "https://github.com/sponsors/ueberdosis" }, "peerDependencies": { - "@tiptap/core": "^2.7.0" + "@tiptap/core": "^3.0.7", + "@tiptap/pm": "^3.0.7" } }, - "node_modules/@tiptap/extension-bold": { - "version": "2.24.1", - "resolved": "https://registry.npmjs.org/@tiptap/extension-bold/-/extension-bold-2.24.1.tgz", - "integrity": "sha512-aY45DdMvdrDOez3zxG954sVZQU8m/sw3LMjPGMIpDNcY+hldsDTGf57FxnaR/N2wmbWc4xGjfMjP5420D2Sc+g==", + "node_modules/@tiptap/extensions": { + "version": "3.0.7", + "resolved": "https://registry.npmjs.org/@tiptap/extensions/-/extensions-3.0.7.tgz", + "integrity": "sha512-GkXX5l7Q/543BKsC14j8M3qT+75ILb7138zy7cZoHm/s1ztV1XTknpEswBZIRZA9n6qq+Wd9g5qkbR879s6xhA==", "license": "MIT", "funding": { "type": "github", "url": "https://github.com/sponsors/ueberdosis" }, "peerDependencies": { - "@tiptap/core": "^2.7.0" - } - }, - "node_modules/@tiptap/extension-bubble-menu": { - "version": "2.24.1", - "resolved": "https://registry.npmjs.org/@tiptap/extension-bubble-menu/-/extension-bubble-menu-2.24.1.tgz", - "integrity": "sha512-Rf7vlE/HVZ351/qd+A8gAQDt0nYbCJ3WoCKOz9zAh0ME5I8kJJhO45LEOTQcjfdxjYepI47RaW6X217O4vFD+g==", - "license": "MIT", - "dependencies": { - "tippy.js": "^6.3.7" - }, - "funding": { - "type": "github", - "url": "https://github.com/sponsors/ueberdosis" - }, - "peerDependencies": { - "@tiptap/core": "^2.7.0", - "@tiptap/pm": "^2.7.0" - } - }, - "node_modules/@tiptap/extension-bullet-list": { - "version": "2.24.1", - "resolved": "https://registry.npmjs.org/@tiptap/extension-bullet-list/-/extension-bullet-list-2.24.1.tgz", - "integrity": "sha512-aLJCcMAZjwJVlF6U0gmiPVt/+QGl6NXDCuCOgU1dSEdu5voVoMtoKu9SyVg/HOKw6dfC8COemrLWyOuC1x1bEQ==", - "license": "MIT", - "funding": { - "type": "github", - "url": "https://github.com/sponsors/ueberdosis" - }, - "peerDependencies": { - "@tiptap/core": "^2.7.0" - } - }, - "node_modules/@tiptap/extension-code": { - "version": "2.24.1", - "resolved": "https://registry.npmjs.org/@tiptap/extension-code/-/extension-code-2.24.1.tgz", - "integrity": "sha512-yPfp5Wrs43aH1ah8aL3Ok+pAj1Dj+7aVZKthBL/ix8vzoWqlI+B7WlSYwNF1/8p4kwcwweTrpDgOI2DbMz7lOQ==", - "license": "MIT", - "funding": { - "type": "github", - "url": "https://github.com/sponsors/ueberdosis" - }, - "peerDependencies": { - "@tiptap/core": "^2.7.0" - } - }, - "node_modules/@tiptap/extension-code-block": { - "version": "2.14.0", - "resolved": "https://registry.npmjs.org/@tiptap/extension-code-block/-/extension-code-block-2.14.0.tgz", - "integrity": "sha512-LRYYZeh8U2XgfTsJ4houB9s9cVRt7PRfVa4MaCeOYKfowVOKQh67yV5oom8Azk9XrMPkPxDmMmdPAEPxeVYFvw==", - "license": "MIT", - "peer": true, - "funding": { - "type": "github", - "url": "https://github.com/sponsors/ueberdosis" - }, - "peerDependencies": { - "@tiptap/core": "^2.7.0", - "@tiptap/pm": "^2.7.0" - } - }, - "node_modules/@tiptap/extension-code-block-lowlight": { - "version": "2.24.1", - "resolved": "https://registry.npmjs.org/@tiptap/extension-code-block-lowlight/-/extension-code-block-lowlight-2.24.1.tgz", - "integrity": "sha512-q2rdLC1beHHxFma2wFOBSoRY4+Eo+GHygjuv+zfzoXqXiE4ygFgAM5PC2OroKzocA2j3UNDKdR0H6haw3OJuNQ==", - "license": "MIT", - "funding": { - "type": "github", - "url": "https://github.com/sponsors/ueberdosis" - }, - "peerDependencies": { - "@tiptap/core": "^2.7.0", - "@tiptap/extension-code-block": "^2.7.0", - "@tiptap/pm": "^2.7.0", - "highlight.js": "^11", - "lowlight": "^2 || ^3" - } - }, - "node_modules/@tiptap/extension-document": { - "version": "2.24.1", - "resolved": "https://registry.npmjs.org/@tiptap/extension-document/-/extension-document-2.24.1.tgz", - "integrity": "sha512-1uVdZi6TRJGTcTfsJkvFhfj0pZXbArvBJbGups+RgbsqsLdW95WZ9I2gPCkr5XJh5KcpgsEMVw0bl8Qz6t4TjA==", - "license": "MIT", - "funding": { - "type": "github", - "url": "https://github.com/sponsors/ueberdosis" - }, - "peerDependencies": { - "@tiptap/core": "^2.7.0" - } - }, - "node_modules/@tiptap/extension-dropcursor": { - "version": "2.24.1", - "resolved": "https://registry.npmjs.org/@tiptap/extension-dropcursor/-/extension-dropcursor-2.24.1.tgz", - "integrity": "sha512-cuNRy++c6dLXJwmXyjBF6c4Dt7pUuip+yI/Z15EWInMAfedQX1KFqH6RzjJsByYfxQ2APgteGTr21FAG5G59fQ==", - "license": "MIT", - "funding": { - "type": "github", - "url": "https://github.com/sponsors/ueberdosis" - }, - "peerDependencies": { - "@tiptap/core": "^2.7.0", - "@tiptap/pm": "^2.7.0" - } - }, - "node_modules/@tiptap/extension-floating-menu": { - "version": "2.24.1", - "resolved": "https://registry.npmjs.org/@tiptap/extension-floating-menu/-/extension-floating-menu-2.24.1.tgz", - "integrity": "sha512-3gI8H7Rafr9ctRkwYQypE9GCO8robOHWoOS/8BMGsHuc5J4q1K8uGXjKOORWoBoU3sREM5H/ZuYGwZZ3SG7ehQ==", - "license": "MIT", - "dependencies": { - "tippy.js": "^6.3.7" - }, - "funding": { - "type": "github", - "url": "https://github.com/sponsors/ueberdosis" - }, - "peerDependencies": { - "@tiptap/core": "^2.7.0", - "@tiptap/pm": "^2.7.0" - } - }, - "node_modules/@tiptap/extension-horizontal-rule": { - "version": "2.24.1", - "resolved": "https://registry.npmjs.org/@tiptap/extension-horizontal-rule/-/extension-horizontal-rule-2.24.1.tgz", - "integrity": "sha512-ayTmUh/nL0tYRYQ2EuATurrZ1coravrePGXmUGfNH8knbmbuIUImGQ/yXp2JcelMQnfchpWdA4En44yXFv87dQ==", - "license": "MIT", - "funding": { - "type": "github", - "url": "https://github.com/sponsors/ueberdosis" - }, - "peerDependencies": { - "@tiptap/core": "^2.7.0", - "@tiptap/pm": "^2.7.0" - } - }, - "node_modules/@tiptap/extension-italic": { - "version": "2.24.1", - "resolved": "https://registry.npmjs.org/@tiptap/extension-italic/-/extension-italic-2.24.1.tgz", - "integrity": "sha512-UyQBybjClMcZzc3rsHCId1Py3XLObTHEsv37HZvmboyZCUKDcYEpEaLtUnD2raO0Dz5zeMBa1arrhmbG4L48yw==", - "license": "MIT", - "funding": { - "type": "github", - "url": "https://github.com/sponsors/ueberdosis" - }, - "peerDependencies": { - "@tiptap/core": "^2.7.0" - } - }, - "node_modules/@tiptap/extension-link": { - "version": "2.24.1", - "resolved": "https://registry.npmjs.org/@tiptap/extension-link/-/extension-link-2.24.1.tgz", - "integrity": "sha512-0qrjq4YE4UO9x0yTD6LaQ8O427wTeC1uL9/Y0Dm58l3RsKT4oEe7D8mqIK4GXkt5GSbV5IBu2WIQdQjwjrPjiw==", - "license": "MIT", - "dependencies": { - "linkifyjs": "^4.2.0" - }, - "funding": { - "type": "github", - "url": "https://github.com/sponsors/ueberdosis" - }, - "peerDependencies": { - "@tiptap/core": "^2.7.0", - "@tiptap/pm": "^2.7.0" - } - }, - "node_modules/@tiptap/extension-list-item": { - "version": "2.24.1", - "resolved": "https://registry.npmjs.org/@tiptap/extension-list-item/-/extension-list-item-2.24.1.tgz", - "integrity": "sha512-73ogIvMXD/4qGh2FjOfHHZ81itlxCCVgjgJEMEggH8kef9ig6W/457RDun3Xup5i2KN/JmqCS8TIL3Pol0tFIQ==", - "license": "MIT", - "funding": { - "type": "github", - "url": "https://github.com/sponsors/ueberdosis" - }, - "peerDependencies": { - "@tiptap/core": "^2.7.0" - } - }, - "node_modules/@tiptap/extension-list-keymap": { - "version": "2.24.1", - "resolved": "https://registry.npmjs.org/@tiptap/extension-list-keymap/-/extension-list-keymap-2.24.1.tgz", - "integrity": "sha512-01FkSPE/4MMQ+BvtIwcd2ywOpMmGnjuC5DG5EddInlPhwzz536OIY2wcFb+lXzFrn8Ob3D5Bw3ZJdXffjkwI9w==", - "license": "MIT", - "funding": { - "type": "github", - "url": "https://github.com/sponsors/ueberdosis" - }, - "peerDependencies": { - "@tiptap/core": "^2.7.0" - } - }, - "node_modules/@tiptap/extension-ordered-list": { - "version": "2.24.1", - "resolved": "https://registry.npmjs.org/@tiptap/extension-ordered-list/-/extension-ordered-list-2.24.1.tgz", - "integrity": "sha512-Korp3ib/9su9Cx5vDWYzViF0Aowm/HdgAh8YmRmVT5VlDBDFMhtR6h+0NnrOBGvRcDjOA/Mb7snu2TMzK9bK8Q==", - "license": "MIT", - "funding": { - "type": "github", - "url": "https://github.com/sponsors/ueberdosis" - }, - "peerDependencies": { - "@tiptap/core": "^2.7.0" - } - }, - "node_modules/@tiptap/extension-paragraph": { - "version": "2.24.1", - "resolved": "https://registry.npmjs.org/@tiptap/extension-paragraph/-/extension-paragraph-2.24.1.tgz", - "integrity": "sha512-aMGuxCmH/T3QrdydxjG3/NMbRbpY07m6Un3YqT+3ZKt9EHrhb5dhre2rATf5Zt062q8ex4ehSdwbExkMrKsE/A==", - "license": "MIT", - "funding": { - "type": "github", - "url": "https://github.com/sponsors/ueberdosis" - }, - "peerDependencies": { - "@tiptap/core": "^2.7.0" - } - }, - "node_modules/@tiptap/extension-placeholder": { - "version": "2.24.1", - "resolved": "https://registry.npmjs.org/@tiptap/extension-placeholder/-/extension-placeholder-2.24.1.tgz", - "integrity": "sha512-oRUZGlwO9T/Q1wN7T2t71MHfRn9loRH1U6VySSffdZDgxUE7F338cigRv/7CLlW7gON9fltt0gu9b/pFplL59w==", - "license": "MIT", - "funding": { - "type": "github", - "url": "https://github.com/sponsors/ueberdosis" - }, - "peerDependencies": { - "@tiptap/core": "^2.7.0", - "@tiptap/pm": "^2.7.0" - } - }, - "node_modules/@tiptap/extension-strike": { - "version": "2.24.1", - "resolved": "https://registry.npmjs.org/@tiptap/extension-strike/-/extension-strike-2.24.1.tgz", - "integrity": "sha512-nlynf0Eb7B7e40SSnzzhYItPV46VM/9bgXNDfTVhkwdcmVao5fX79QTZVi8OwvWGciRo0AvQkVXy+iqiD62hSg==", - "license": "MIT", - "funding": { - "type": "github", - "url": "https://github.com/sponsors/ueberdosis" - }, - "peerDependencies": { - "@tiptap/core": "^2.7.0" - } - }, - "node_modules/@tiptap/extension-task-item": { - "version": "2.24.1", - "resolved": "https://registry.npmjs.org/@tiptap/extension-task-item/-/extension-task-item-2.24.1.tgz", - "integrity": "sha512-Gf91daRa85WFHVLK4UwEbHYPDJYK9JqDQx/wEQkH1jXa3SnngkSevLga4/55+JOHD2WNv5kSL9TpWoFICvQLcQ==", - "license": "MIT", - "funding": { - "type": "github", - "url": "https://github.com/sponsors/ueberdosis" - }, - "peerDependencies": { - "@tiptap/core": "^2.7.0", - "@tiptap/pm": "^2.7.0" - } - }, - "node_modules/@tiptap/extension-task-list": { - "version": "2.24.1", - "resolved": "https://registry.npmjs.org/@tiptap/extension-task-list/-/extension-task-list-2.24.1.tgz", - "integrity": "sha512-jCdTWVkYgDWnH5d8A9Fpj2AMnvPHWitfzqixx8DbeFE3RnjFboIHDu4BvyGXqBhhZ4yrBhcOmSzlF35OR1bqCw==", - "license": "MIT", - "funding": { - "type": "github", - "url": "https://github.com/sponsors/ueberdosis" - }, - "peerDependencies": { - "@tiptap/core": "^2.7.0" - } - }, - "node_modules/@tiptap/extension-text": { - "version": "2.24.1", - "resolved": "https://registry.npmjs.org/@tiptap/extension-text/-/extension-text-2.24.1.tgz", - "integrity": "sha512-8AybItb7eKlpBJbVcGLqT50W8K2ml84ZZPdK5HLWAbp605YZFMpqlKGHD3b9vbT87YTYxlPSGc8yhf0/FeeL7A==", - "license": "MIT", - "funding": { - "type": "github", - "url": "https://github.com/sponsors/ueberdosis" - }, - "peerDependencies": { - "@tiptap/core": "^2.7.0" - } - }, - "node_modules/@tiptap/extension-underline": { - "version": "2.24.1", - "resolved": "https://registry.npmjs.org/@tiptap/extension-underline/-/extension-underline-2.24.1.tgz", - "integrity": "sha512-9Jwnxaja/VGrSsa492OLQV3NybBGMMoY84P80/AwCcuKRpgrew6nU5jjEv1f3om+XS0OnmjfYBpmWdv1/t76tA==", - "license": "MIT", - "funding": { - "type": "github", - "url": "https://github.com/sponsors/ueberdosis" - }, - "peerDependencies": { - "@tiptap/core": "^2.7.0" + "@tiptap/core": "^3.0.7", + "@tiptap/pm": "^3.0.7" } }, "node_modules/@tiptap/pm": { - "version": "2.24.1", - "resolved": "https://registry.npmjs.org/@tiptap/pm/-/pm-2.24.1.tgz", - "integrity": "sha512-XXPAVEB/uZbJ4sIM2iQGv1p9rEvnzuaA4Z2oA3P5OZxYZ5Ic3ye2QtKqbDTaMKp2ReZZZ5jAvAkS3JBOXN6yUw==", + "version": "3.0.7", + "resolved": "https://registry.npmjs.org/@tiptap/pm/-/pm-3.0.7.tgz", + "integrity": "sha512-f8PnWjYqbMCxny8cyjbFNeIyeOYLECTa/7gj8DJr53Ns+P94b4kYIt/GkveR5KoOxsbmXi8Uc4mjcR1giQPaIQ==", "license": "MIT", "dependencies": { "prosemirror-changeset": "^2.3.0", @@ -9793,57 +9490,20 @@ "prosemirror-keymap": "^1.2.2", "prosemirror-markdown": "^1.13.1", "prosemirror-menu": "^1.2.4", - "prosemirror-model": "^1.23.0", + "prosemirror-model": "^1.24.1", "prosemirror-schema-basic": "^1.2.3", - "prosemirror-schema-list": "^1.4.1", + "prosemirror-schema-list": "^1.5.0", "prosemirror-state": "^1.4.3", "prosemirror-tables": "^1.6.4", "prosemirror-trailing-node": "^3.0.0", "prosemirror-transform": "^1.10.2", - "prosemirror-view": "^1.37.0" + "prosemirror-view": "^1.38.1" }, "funding": { "type": "github", "url": "https://github.com/sponsors/ueberdosis" } }, - "node_modules/@tiptap/react": { - "version": "2.24.1", - "resolved": "https://registry.npmjs.org/@tiptap/react/-/react-2.24.1.tgz", - "integrity": "sha512-Y3D8QjA9zpcNnI6pp5xHFiC967QUQv5MRJPNtvuOgFVEWgq08TpvxE+grQooyyngnDHA6zTMEZvlCqp5dqsyuA==", - "license": "MIT", - "dependencies": { - "@tiptap/extension-bubble-menu": "^2.24.1", - "@tiptap/extension-floating-menu": "^2.24.1", - "@types/use-sync-external-store": "^0.0.6", - "fast-deep-equal": "^3", - "use-sync-external-store": "^1" - }, - "funding": { - "type": "github", - "url": "https://github.com/sponsors/ueberdosis" - }, - "peerDependencies": { - "@tiptap/core": "^2.7.0", - "@tiptap/pm": "^2.7.0", - "react": "^17.0.0 || ^18.0.0 || ^19.0.0", - "react-dom": "^17.0.0 || ^18.0.0 || ^19.0.0" - } - }, - "node_modules/@tiptap/suggestion": { - "version": "2.24.1", - "resolved": "https://registry.npmjs.org/@tiptap/suggestion/-/suggestion-2.24.1.tgz", - "integrity": "sha512-L7urQxIt0dr6nrbrFek74cy7/p9VCODp+JooVc433iWSc7ud2OdBOShd9NnljM0l6OCu3qLm1oIz4T1Hy9/7xA==", - "license": "MIT", - "funding": { - "type": "github", - "url": "https://github.com/sponsors/ueberdosis" - }, - "peerDependencies": { - "@tiptap/core": "^2.7.0", - "@tiptap/pm": "^2.7.0" - } - }, "node_modules/@tokenizer/inflate": { "version": "0.2.7", "resolved": "https://registry.npmjs.org/@tokenizer/inflate/-/inflate-0.2.7.tgz", @@ -23201,15 +22861,6 @@ "node": ">=14.0.0" } }, - "node_modules/tippy.js": { - "version": "6.3.7", - "resolved": "https://registry.npmjs.org/tippy.js/-/tippy.js-6.3.7.tgz", - "integrity": "sha512-E1d3oP2emgJ9dRQZdf3Kkn0qJgI6ZLpyS5z6ZkY1DF3kaQaBsGZsndEpHwx+eC+tYM41HaSNvNtLx8tU57FzTQ==", - "license": "MIT", - "dependencies": { - "@popperjs/core": "^2.9.0" - } - }, "node_modules/tiptap-extension-auto-joiner": { "version": "0.1.3", "resolved": "https://registry.npmjs.org/tiptap-extension-auto-joiner/-/tiptap-extension-auto-joiner-0.1.3.tgz", @@ -25531,8 +25182,8 @@ "name": "@colanode/client", "version": "1.0.0", "dependencies": { - "@tiptap/core": "^2.24.1", - "@tiptap/pm": "^2.24.1", + "@tiptap/core": "^3.0.7", + "@tiptap/pm": "^3.0.7", "async-lock": "^1.4.1", "file-type": "^21.0.0", "isomorphic-ws": "^5.0.0", @@ -25595,30 +25246,24 @@ "@react-oauth/google": "^0.12.2", "@tanstack/react-query": "^5.81.5", "@tanstack/react-virtual": "^3.13.12", - "@tiptap/core": "^2.24.1", - "@tiptap/extension-blockquote": "^2.24.1", - "@tiptap/extension-bold": "^2.24.1", - "@tiptap/extension-bullet-list": "^2.24.1", - "@tiptap/extension-code": "^2.24.1", - "@tiptap/extension-code-block-lowlight": "^2.24.1", - "@tiptap/extension-document": "^2.24.1", - "@tiptap/extension-dropcursor": "^2.24.1", - "@tiptap/extension-horizontal-rule": "^2.24.1", - "@tiptap/extension-italic": "^2.24.1", - "@tiptap/extension-link": "^2.24.1", - "@tiptap/extension-list-item": "^2.24.1", - "@tiptap/extension-list-keymap": "^2.24.1", - "@tiptap/extension-ordered-list": "^2.24.1", - "@tiptap/extension-paragraph": "^2.24.1", - "@tiptap/extension-placeholder": "^2.24.1", - "@tiptap/extension-strike": "^2.24.1", - "@tiptap/extension-task-item": "^2.24.1", - "@tiptap/extension-task-list": "^2.24.1", - "@tiptap/extension-text": "^2.24.1", - "@tiptap/extension-underline": "^2.24.1", - "@tiptap/pm": "^2.24.1", - "@tiptap/react": "^2.24.1", - "@tiptap/suggestion": "^2.24.1", + "@tiptap/core": "^3.0.7", + "@tiptap/extension-blockquote": "^3.0.7", + "@tiptap/extension-bold": "^3.0.7", + "@tiptap/extension-code": "^3.0.7", + "@tiptap/extension-code-block-lowlight": "^3.0.7", + "@tiptap/extension-document": "^3.0.7", + "@tiptap/extension-horizontal-rule": "^3.0.7", + "@tiptap/extension-italic": "^3.0.7", + "@tiptap/extension-link": "^3.0.7", + "@tiptap/extension-list": "^3.0.7", + "@tiptap/extension-paragraph": "^3.0.7", + "@tiptap/extension-strike": "^3.0.7", + "@tiptap/extension-text": "^3.0.7", + "@tiptap/extension-underline": "^3.0.7", + "@tiptap/extensions": "^3.0.7", + "@tiptap/pm": "^3.0.7", + "@tiptap/react": "^3.0.7", + "@tiptap/suggestion": "^3.0.7", "class-variance-authority": "^0.7.1", "cmdk": "^1.1.1", "date-fns": "^4.1.0", @@ -25647,6 +25292,259 @@ "tw-animate-css": "^1.3.5" } }, + "packages/ui/node_modules/@tiptap/extension-blockquote": { + "version": "3.0.7", + "resolved": "https://registry.npmjs.org/@tiptap/extension-blockquote/-/extension-blockquote-3.0.7.tgz", + "integrity": "sha512-bYJ7r4hYcBZ7GI0LSV0Oxb9rmy/qb0idAf/osvflG2r1tf5CsiW5NYAqlOYAsIVA2OCwXELDlRGCgeKBQ26Kyw==", + "license": "MIT", + "funding": { + "type": "github", + "url": "https://github.com/sponsors/ueberdosis" + }, + "peerDependencies": { + "@tiptap/core": "^3.0.7" + } + }, + "packages/ui/node_modules/@tiptap/extension-bold": { + "version": "3.0.7", + "resolved": "https://registry.npmjs.org/@tiptap/extension-bold/-/extension-bold-3.0.7.tgz", + "integrity": "sha512-CQG07yvrIsScLe5NplAuCkVh0sd97Udv1clAGbqfzeV8YfzpV3M7J/Vb09pWyovx3SjDqfsZpkr3RemeKEPY9Q==", + "license": "MIT", + "funding": { + "type": "github", + "url": "https://github.com/sponsors/ueberdosis" + }, + "peerDependencies": { + "@tiptap/core": "^3.0.7" + } + }, + "packages/ui/node_modules/@tiptap/extension-bubble-menu": { + "version": "3.0.7", + "resolved": "https://registry.npmjs.org/@tiptap/extension-bubble-menu/-/extension-bubble-menu-3.0.7.tgz", + "integrity": "sha512-/oL5kgOHm1AJtyLC6v1+txk/RI9WvI4/gDQ6oWukmT7aQHIfqvCW0DN/ahmX9nxGFAIRlbrooVxLn5Y6/P0adQ==", + "license": "MIT", + "optional": true, + "dependencies": { + "@floating-ui/dom": "^1.0.0" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/ueberdosis" + }, + "peerDependencies": { + "@tiptap/core": "^3.0.7", + "@tiptap/pm": "^3.0.7" + } + }, + "packages/ui/node_modules/@tiptap/extension-code": { + "version": "3.0.7", + "resolved": "https://registry.npmjs.org/@tiptap/extension-code/-/extension-code-3.0.7.tgz", + "integrity": "sha512-6wdUqtXbnIuyKR7xteF2UCnsW2dLNtBKxWvAiOweA7L41HYvburh/tjbkffkNc5KP2XsKzdGbygpunwJMPj6+A==", + "license": "MIT", + "funding": { + "type": "github", + "url": "https://github.com/sponsors/ueberdosis" + }, + "peerDependencies": { + "@tiptap/core": "^3.0.7" + } + }, + "packages/ui/node_modules/@tiptap/extension-code-block": { + "version": "3.0.7", + "resolved": "https://registry.npmjs.org/@tiptap/extension-code-block/-/extension-code-block-3.0.7.tgz", + "integrity": "sha512-WifMv7N1G1Fnd2oZ+g80FjBpV/eI/fxHKCK3hw03l8LoWgeFaU/6LC93qTV6idkfia3YwiA6WnuyOqlI0FSZ9A==", + "license": "MIT", + "peer": true, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/ueberdosis" + }, + "peerDependencies": { + "@tiptap/core": "^3.0.7", + "@tiptap/pm": "^3.0.7" + } + }, + "packages/ui/node_modules/@tiptap/extension-code-block-lowlight": { + "version": "3.0.7", + "resolved": "https://registry.npmjs.org/@tiptap/extension-code-block-lowlight/-/extension-code-block-lowlight-3.0.7.tgz", + "integrity": "sha512-y1sHjzxpYqIKikdT5y5ajCOw4hDIPGjPpIBP7x7iw7jyt8a/w/bI8ozUk4epLBpgOvvAwmdIqi7eV7ORMvQaGQ==", + "license": "MIT", + "funding": { + "type": "github", + "url": "https://github.com/sponsors/ueberdosis" + }, + "peerDependencies": { + "@tiptap/core": "^3.0.7", + "@tiptap/extension-code-block": "^3.0.7", + "@tiptap/pm": "^3.0.7", + "highlight.js": "^11", + "lowlight": "^2 || ^3" + } + }, + "packages/ui/node_modules/@tiptap/extension-document": { + "version": "3.0.7", + "resolved": "https://registry.npmjs.org/@tiptap/extension-document/-/extension-document-3.0.7.tgz", + "integrity": "sha512-HJg1nPPZ9fv5oEMwpONeIfT0FjTrgNGuGAat/hgcBi/R2GUNir2/PM/3d6y8QtkR/EgkgcFakCc9azySXLmyUQ==", + "license": "MIT", + "funding": { + "type": "github", + "url": "https://github.com/sponsors/ueberdosis" + }, + "peerDependencies": { + "@tiptap/core": "^3.0.7" + } + }, + "packages/ui/node_modules/@tiptap/extension-floating-menu": { + "version": "3.0.7", + "resolved": "https://registry.npmjs.org/@tiptap/extension-floating-menu/-/extension-floating-menu-3.0.7.tgz", + "integrity": "sha512-JJv9pV8EwTcGe2w/1hMhjAhfmvoCh8ha3Rh/9soWfe8FfwRnQQC6ykqmYWuAx1HDoS+sNYPNUbyDxIwgnbIc+w==", + "license": "MIT", + "optional": true, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/ueberdosis" + }, + "peerDependencies": { + "@floating-ui/dom": "^1.0.0", + "@tiptap/core": "^3.0.7", + "@tiptap/pm": "^3.0.7" + } + }, + "packages/ui/node_modules/@tiptap/extension-horizontal-rule": { + "version": "3.0.7", + "resolved": "https://registry.npmjs.org/@tiptap/extension-horizontal-rule/-/extension-horizontal-rule-3.0.7.tgz", + "integrity": "sha512-m0r4tzfVX3r0ZD7uvDf/GAiVr7lJjYwhZHC+M+JMhYXVI6eB9OXXzhdOIsw9W5QcmhCBaqU+VuPKUusTn4TKLg==", + "license": "MIT", + "funding": { + "type": "github", + "url": "https://github.com/sponsors/ueberdosis" + }, + "peerDependencies": { + "@tiptap/core": "^3.0.7", + "@tiptap/pm": "^3.0.7" + } + }, + "packages/ui/node_modules/@tiptap/extension-italic": { + "version": "3.0.7", + "resolved": "https://registry.npmjs.org/@tiptap/extension-italic/-/extension-italic-3.0.7.tgz", + "integrity": "sha512-L05cehSOd7iZWI/igPb90TgQ6RKk2UuuYdatmXff3QUJpYPYct6abcrMb+CeFKJqE9vaXy46dCQkOuPW+bFwkA==", + "license": "MIT", + "funding": { + "type": "github", + "url": "https://github.com/sponsors/ueberdosis" + }, + "peerDependencies": { + "@tiptap/core": "^3.0.7" + } + }, + "packages/ui/node_modules/@tiptap/extension-link": { + "version": "3.0.7", + "resolved": "https://registry.npmjs.org/@tiptap/extension-link/-/extension-link-3.0.7.tgz", + "integrity": "sha512-e53MddBSVKpxxQ2JmHfyZQ2VBLwqlZxqwn0DQHFMXyCKTzpdUC0DOtkvrY7OVz6HA3yz29qR+qquQxIxcDPrfg==", + "license": "MIT", + "dependencies": { + "linkifyjs": "^4.2.0" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/ueberdosis" + }, + "peerDependencies": { + "@tiptap/core": "^3.0.7", + "@tiptap/pm": "^3.0.7" + } + }, + "packages/ui/node_modules/@tiptap/extension-paragraph": { + "version": "3.0.7", + "resolved": "https://registry.npmjs.org/@tiptap/extension-paragraph/-/extension-paragraph-3.0.7.tgz", + "integrity": "sha512-1lp+/CbYmm1ZnR6CNlreUIWCNQk0cBzLVgS5R8SKfVyYaXo11qQq6Yq8URLhpuge4yXkPGMhClwCLzJ9D9R+eg==", + "license": "MIT", + "funding": { + "type": "github", + "url": "https://github.com/sponsors/ueberdosis" + }, + "peerDependencies": { + "@tiptap/core": "^3.0.7" + } + }, + "packages/ui/node_modules/@tiptap/extension-strike": { + "version": "3.0.7", + "resolved": "https://registry.npmjs.org/@tiptap/extension-strike/-/extension-strike-3.0.7.tgz", + "integrity": "sha512-WUCd5CMgS6pg0ZGKXsaxVrnEvO/h6XUehebL0yggAsRKSoGERInR2iLfhU4p1f4zk0cD3ydNLJdqZu0H/MIABw==", + "license": "MIT", + "funding": { + "type": "github", + "url": "https://github.com/sponsors/ueberdosis" + }, + "peerDependencies": { + "@tiptap/core": "^3.0.7" + } + }, + "packages/ui/node_modules/@tiptap/extension-text": { + "version": "3.0.7", + "resolved": "https://registry.npmjs.org/@tiptap/extension-text/-/extension-text-3.0.7.tgz", + "integrity": "sha512-yf5dNcPLB5SbQ0cQq8qyjiMj9khx4Y4EJoyrDSAok/9zYM3ULqwTPkTSZ2eW6VX/grJeyBVleeBHk1PjJ7NiVw==", + "license": "MIT", + "funding": { + "type": "github", + "url": "https://github.com/sponsors/ueberdosis" + }, + "peerDependencies": { + "@tiptap/core": "^3.0.7" + } + }, + "packages/ui/node_modules/@tiptap/extension-underline": { + "version": "3.0.7", + "resolved": "https://registry.npmjs.org/@tiptap/extension-underline/-/extension-underline-3.0.7.tgz", + "integrity": "sha512-pw2v5kbkovaWaC1G2IxP7g94vmUMlRBzZlCnLEyfFxtGa9LVAsUFlFFWaYJEmq7ZPG/tblWCnFfEZuQqFVd8Sg==", + "license": "MIT", + "funding": { + "type": "github", + "url": "https://github.com/sponsors/ueberdosis" + }, + "peerDependencies": { + "@tiptap/core": "^3.0.7" + } + }, + "packages/ui/node_modules/@tiptap/react": { + "version": "3.0.7", + "resolved": "https://registry.npmjs.org/@tiptap/react/-/react-3.0.7.tgz", + "integrity": "sha512-d7uq4KHi52DsN4dRYY5p1ei+uaAq0h+xUUOW9JxPspe2/xM88ZmvKBZIYlqyWix0CGx7BRNmCDLcP6toOmW/MQ==", + "license": "MIT", + "dependencies": { + "@types/use-sync-external-store": "^0.0.6", + "fast-deep-equal": "^3.1.3", + "use-sync-external-store": "^1.4.0" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/ueberdosis" + }, + "optionalDependencies": { + "@tiptap/extension-bubble-menu": "^3.0.7", + "@tiptap/extension-floating-menu": "^3.0.7" + }, + "peerDependencies": { + "@tiptap/core": "^3.0.7", + "@tiptap/pm": "^3.0.7", + "react": "^17.0.0 || ^18.0.0 || ^19.0.0", + "react-dom": "^17.0.0 || ^18.0.0 || ^19.0.0" + } + }, + "packages/ui/node_modules/@tiptap/suggestion": { + "version": "3.0.7", + "resolved": "https://registry.npmjs.org/@tiptap/suggestion/-/suggestion-3.0.7.tgz", + "integrity": "sha512-HSMvzAejdvcnVaRZOhXJWAvQqaQs3UYDZaA0ZnzgiJ/sNSbtTyn9XVbX6MfVNYrbtBua4iKaXuJwp6CP0KdHQg==", + "license": "MIT", + "funding": { + "type": "github", + "url": "https://github.com/sponsors/ueberdosis" + }, + "peerDependencies": { + "@tiptap/core": "^3.0.7", + "@tiptap/pm": "^3.0.7" + } + }, "scripts": { "name": "@colanode/scripts", "version": "1.0.0", diff --git a/packages/client/package.json b/packages/client/package.json index c0fffb48..fe809b0d 100644 --- a/packages/client/package.json +++ b/packages/client/package.json @@ -24,8 +24,8 @@ "coverage": "vitest run --coverage " }, "dependencies": { - "@tiptap/core": "^2.24.1", - "@tiptap/pm": "^2.24.1", + "@tiptap/core": "^3.0.7", + "@tiptap/pm": "^3.0.7", "async-lock": "^1.4.1", "file-type": "^21.0.0", "isomorphic-ws": "^5.0.0", diff --git a/packages/ui/package.json b/packages/ui/package.json index c25fe0f2..5e4e0f7f 100644 --- a/packages/ui/package.json +++ b/packages/ui/package.json @@ -46,30 +46,24 @@ "@react-oauth/google": "^0.12.2", "@tanstack/react-query": "^5.81.5", "@tanstack/react-virtual": "^3.13.12", - "@tiptap/core": "^2.24.1", - "@tiptap/extension-blockquote": "^2.24.1", - "@tiptap/extension-bold": "^2.24.1", - "@tiptap/extension-bullet-list": "^2.24.1", - "@tiptap/extension-code": "^2.24.1", - "@tiptap/extension-code-block-lowlight": "^2.24.1", - "@tiptap/extension-document": "^2.24.1", - "@tiptap/extension-dropcursor": "^2.24.1", - "@tiptap/extension-horizontal-rule": "^2.24.1", - "@tiptap/extension-italic": "^2.24.1", - "@tiptap/extension-link": "^2.24.1", - "@tiptap/extension-list-item": "^2.24.1", - "@tiptap/extension-list-keymap": "^2.24.1", - "@tiptap/extension-ordered-list": "^2.24.1", - "@tiptap/extension-paragraph": "^2.24.1", - "@tiptap/extension-placeholder": "^2.24.1", - "@tiptap/extension-strike": "^2.24.1", - "@tiptap/extension-task-item": "^2.24.1", - "@tiptap/extension-task-list": "^2.24.1", - "@tiptap/extension-text": "^2.24.1", - "@tiptap/extension-underline": "^2.24.1", - "@tiptap/pm": "^2.24.1", - "@tiptap/react": "^2.24.1", - "@tiptap/suggestion": "^2.24.1", + "@tiptap/core": "^3.0.7", + "@tiptap/extension-blockquote": "^3.0.7", + "@tiptap/extension-bold": "^3.0.7", + "@tiptap/extension-code": "^3.0.7", + "@tiptap/extension-code-block-lowlight": "^3.0.7", + "@tiptap/extension-document": "^3.0.7", + "@tiptap/extension-horizontal-rule": "^3.0.7", + "@tiptap/extension-italic": "^3.0.7", + "@tiptap/extension-link": "^3.0.7", + "@tiptap/extension-list": "^3.0.7", + "@tiptap/extension-paragraph": "^3.0.7", + "@tiptap/extension-strike": "^3.0.7", + "@tiptap/extension-text": "^3.0.7", + "@tiptap/extension-underline": "^3.0.7", + "@tiptap/extensions": "^3.0.7", + "@tiptap/pm": "^3.0.7", + "@tiptap/react": "^3.0.7", + "@tiptap/suggestion": "^3.0.7", "class-variance-authority": "^0.7.1", "cmdk": "^1.1.1", "date-fns": "^4.1.0", diff --git a/packages/ui/src/editor/extensions/bullet-list.tsx b/packages/ui/src/editor/extensions/bullet-list.tsx index 209830b7..2dfaa9d4 100644 --- a/packages/ui/src/editor/extensions/bullet-list.tsx +++ b/packages/ui/src/editor/extensions/bullet-list.tsx @@ -1,4 +1,4 @@ -import { BulletList } from '@tiptap/extension-bullet-list'; +import { BulletList } from '@tiptap/extension-list'; import { defaultClasses } from '@colanode/ui/editor/classes'; diff --git a/packages/ui/src/editor/extensions/dropcursor.tsx b/packages/ui/src/editor/extensions/dropcursor.tsx index 0efec6a0..f509f0a2 100644 --- a/packages/ui/src/editor/extensions/dropcursor.tsx +++ b/packages/ui/src/editor/extensions/dropcursor.tsx @@ -1,4 +1,4 @@ -import { Dropcursor } from '@tiptap/extension-dropcursor'; +import { Dropcursor } from '@tiptap/extensions'; export const DropcursorExtension = Dropcursor.configure({ width: 5, diff --git a/packages/ui/src/editor/extensions/list-item.tsx b/packages/ui/src/editor/extensions/list-item.tsx index 8a51bb6c..7b882ac5 100644 --- a/packages/ui/src/editor/extensions/list-item.tsx +++ b/packages/ui/src/editor/extensions/list-item.tsx @@ -1,4 +1,4 @@ -import { ListItem } from '@tiptap/extension-list-item'; +import { ListItem } from '@tiptap/extension-list'; import { defaultClasses } from '@colanode/ui/editor/classes'; diff --git a/packages/ui/src/editor/extensions/list-keymap.tsx b/packages/ui/src/editor/extensions/list-keymap.tsx index 0ecf4d51..0c167e94 100644 --- a/packages/ui/src/editor/extensions/list-keymap.tsx +++ b/packages/ui/src/editor/extensions/list-keymap.tsx @@ -1,4 +1,4 @@ -import { ListKeymap } from '@tiptap/extension-list-keymap'; +import { ListKeymap } from '@tiptap/extension-list'; export const ListKeymapExtension = ListKeymap.configure({ listTypes: [ diff --git a/packages/ui/src/editor/extensions/mention.tsx b/packages/ui/src/editor/extensions/mention.tsx index a3d88640..198c50be 100644 --- a/packages/ui/src/editor/extensions/mention.tsx +++ b/packages/ui/src/editor/extensions/mention.tsx @@ -28,6 +28,14 @@ import { Avatar } from '@colanode/ui/components/avatars/avatar'; import { MentionNodeView } from '@colanode/ui/editor/views'; import { updateScrollView } from '@colanode/ui/lib/utils'; +declare module '@tiptap/core' { + interface Storage { + mention: { + isOpen: boolean; + }; + } +} + interface MentionOptions { context: EditorContext | null; } diff --git a/packages/ui/src/editor/extensions/ordered-list.tsx b/packages/ui/src/editor/extensions/ordered-list.tsx index 1315ad47..55c25847 100644 --- a/packages/ui/src/editor/extensions/ordered-list.tsx +++ b/packages/ui/src/editor/extensions/ordered-list.tsx @@ -1,4 +1,4 @@ -import { OrderedList } from '@tiptap/extension-ordered-list'; +import { OrderedList } from '@tiptap/extension-list'; import { defaultClasses } from '@colanode/ui/editor/classes'; diff --git a/packages/ui/src/editor/extensions/placeholder.tsx b/packages/ui/src/editor/extensions/placeholder.tsx index 5ba20e5a..762aefe8 100644 --- a/packages/ui/src/editor/extensions/placeholder.tsx +++ b/packages/ui/src/editor/extensions/placeholder.tsx @@ -1,4 +1,4 @@ -import { Placeholder, PlaceholderOptions } from '@tiptap/extension-placeholder'; +import { Placeholder, PlaceholderOptions } from '@tiptap/extensions'; interface PlaceholderProps extends PlaceholderOptions { message: string; diff --git a/packages/ui/src/editor/extensions/task-item.tsx b/packages/ui/src/editor/extensions/task-item.tsx index 1221b7ed..73d33e93 100644 --- a/packages/ui/src/editor/extensions/task-item.tsx +++ b/packages/ui/src/editor/extensions/task-item.tsx @@ -1,4 +1,4 @@ -import { TaskItem } from '@tiptap/extension-task-item'; +import { TaskItem } from '@tiptap/extension-list'; import { defaultClasses } from '@colanode/ui/editor/classes'; diff --git a/packages/ui/src/editor/extensions/task-list.tsx b/packages/ui/src/editor/extensions/task-list.tsx index 6324b98c..75a9f43a 100644 --- a/packages/ui/src/editor/extensions/task-list.tsx +++ b/packages/ui/src/editor/extensions/task-list.tsx @@ -1,4 +1,4 @@ -import { TaskList } from '@tiptap/extension-task-list'; +import { TaskList } from '@tiptap/extension-list'; import { defaultClasses } from '@colanode/ui/editor/classes'; diff --git a/packages/ui/src/editor/menus/toolbar-menu.tsx b/packages/ui/src/editor/menus/toolbar-menu.tsx index 5bbb83fa..756fe119 100644 --- a/packages/ui/src/editor/menus/toolbar-menu.tsx +++ b/packages/ui/src/editor/menus/toolbar-menu.tsx @@ -1,9 +1,5 @@ -import { - BubbleMenu, - type BubbleMenuProps, - Editor, - isNodeSelection, -} from '@tiptap/react'; +import { Editor, isNodeSelection } from '@tiptap/react'; +import { BubbleMenu, type BubbleMenuProps } from '@tiptap/react/menus'; import { Bold, Code, Italic, Strikethrough, Underline } from 'lucide-react'; import { useState } from 'react'; @@ -45,9 +41,11 @@ export const ToolbarMenu = (props: ToolbarMenuProps) => { return true; }, - tippyOptions: { - moveTransition: 'transform 0.15s ease-out', - onHidden: () => { + options: { + strategy: 'absolute', + placement: 'top', + offset: 8, + onHide: () => { setIsColorButtonOpen(false); setIsLinkButtonOpen(false); }, @@ -61,7 +59,7 @@ export const ToolbarMenu = (props: ToolbarMenuProps) => { return (