(frontend) add @blocknote/code-block

To reduce the bundles size, the highlight syntax
library is not included in blocknote core anymore.
We need to add a separate dependency in order
to have the code block syntax highlight feature.
This commit is contained in:
Anthony LC
2025-04-29 17:34:25 +02:00
parent 7f2a21cdc9
commit c32fdb67ac
3 changed files with 99 additions and 1 deletions

View File

@@ -16,6 +16,7 @@
},
"dependencies": {
"@ag-media/react-pdf-table": "2.0.2",
"@blocknote/code-block": "0.29.1",
"@blocknote/core": "0.29.1",
"@blocknote/mantine": "0.29.1",
"@blocknote/react": "0.29.1",

View File

@@ -1,3 +1,4 @@
import { codeBlock } from '@blocknote/code-block';
import {
BlockNoteSchema,
defaultBlockSpecs,
@@ -61,6 +62,7 @@ export const BlockNoteEditor = ({ doc, provider }: BlockNoteEditorProps) => {
const editor = useCreateBlockNote(
{
codeBlock,
collaboration: {
provider,
fragment: provider.document.getXmlFragment('document-store'),

View File

@@ -1004,6 +1004,19 @@
resolved "https://registry.yarnpkg.com/@bcoe/v8-coverage/-/v8-coverage-0.2.3.tgz#75a2e8b51cb758a7553d6804a5932d7aace75c39"
integrity sha512-0hYQ8SB4Db5zvZB4axdMHGwEaQjkZzFjQiN9LVYvIFB2nSUHW9tYpxWriPrWDASIxiaXax83REcLxuSdnGPZtw==
"@blocknote/code-block@0.29.1":
version "0.29.1"
resolved "https://registry.yarnpkg.com/@blocknote/code-block/-/code-block-0.29.1.tgz#c27ebdee0663180bc165208f1af67fe23855066c"
integrity sha512-oKUK+gpNtbSWPTIP/ZeqsXifZeOY3UAw43QcU3ZVOncMXVetUe5E5WE2Z2iBYox1NevZFBIOv7pJIPwUQYBSlg==
dependencies:
"@blocknote/core" "0.29.1"
"@shikijs/core" "^3.2.1"
"@shikijs/engine-javascript" "^3.2.1"
"@shikijs/langs" "^3.2.1"
"@shikijs/langs-precompiled" "^3.2.1"
"@shikijs/themes" "^3.2.1"
"@shikijs/types" "^3.2.1"
"@blocknote/core@0.29.1":
version "0.29.1"
resolved "https://registry.yarnpkg.com/@blocknote/core/-/core-0.29.1.tgz#df5e972f966812d9047cef2c0f564f8aa52cd396"
@@ -4633,6 +4646,47 @@
unplugin "1.0.1"
uuid "^9.0.0"
"@shikijs/core@^3.2.1":
version "3.3.0"
resolved "https://registry.yarnpkg.com/@shikijs/core/-/core-3.3.0.tgz#8840dcf59acc860f67412769c56c1f03d6735662"
integrity sha512-CovkFL2WVaHk6PCrwv6ctlmD4SS1qtIfN8yEyDXDYWh4ONvomdM9MaFw20qHuqJOcb8/xrkqoWQRJ//X10phOQ==
dependencies:
"@shikijs/types" "3.3.0"
"@shikijs/vscode-textmate" "^10.0.2"
"@types/hast" "^3.0.4"
hast-util-to-html "^9.0.5"
"@shikijs/engine-javascript@^3.2.1":
version "3.3.0"
resolved "https://registry.yarnpkg.com/@shikijs/engine-javascript/-/engine-javascript-3.3.0.tgz#af7646fdb25160115658abc703c0ed4d8dbfdb41"
integrity sha512-XlhnFGv0glq7pfsoN0KyBCz9FJU678LZdQ2LqlIdAj6JKsg5xpYKay3DkazXWExp3DTJJK9rMOuGzU2911pg7Q==
dependencies:
"@shikijs/types" "3.3.0"
"@shikijs/vscode-textmate" "^10.0.2"
oniguruma-to-es "^4.2.0"
"@shikijs/langs-precompiled@^3.2.1":
version "3.3.0"
resolved "https://registry.yarnpkg.com/@shikijs/langs-precompiled/-/langs-precompiled-3.3.0.tgz#99dc470f39eff48be7f2577ef0d77383834e78d0"
integrity sha512-2qsvPdopTt15OPzvDGYCl7gy08F7JN+EKLbo7DmhO/QchkYy2W4EltMpYKBz1KHP4136z3+Wt9QP9+2Rxfq7Yg==
dependencies:
"@shikijs/types" "3.3.0"
oniguruma-to-es "^4.2.0"
"@shikijs/langs@^3.2.1":
version "3.3.0"
resolved "https://registry.yarnpkg.com/@shikijs/langs/-/langs-3.3.0.tgz#016b8360b4d220064a701c6bab0925898dc70a76"
integrity sha512-zt6Kf/7XpBQKSI9eqku+arLkAcDQ3NHJO6zFjiChI8w0Oz6Jjjay7pToottjQGjSDCFk++R85643WbyINcuL+g==
dependencies:
"@shikijs/types" "3.3.0"
"@shikijs/themes@^3.2.1":
version "3.3.0"
resolved "https://registry.yarnpkg.com/@shikijs/themes/-/themes-3.3.0.tgz#200213a37c7e80d39f9814c38291c360c4c42cf1"
integrity sha512-tXeCvLXBnqq34B0YZUEaAD1lD4lmN6TOHAhnHacj4Owh7Ptb/rf5XCDeROZt2rEOk5yuka3OOW2zLqClV7/SOg==
dependencies:
"@shikijs/types" "3.3.0"
"@shikijs/types@3.2.1":
version "3.2.1"
resolved "https://registry.yarnpkg.com/@shikijs/types/-/types-3.2.1.tgz#8d289ad95d62833d7f9af536c073312d7afe8182"
@@ -4641,6 +4695,14 @@
"@shikijs/vscode-textmate" "^10.0.2"
"@types/hast" "^3.0.4"
"@shikijs/types@3.3.0", "@shikijs/types@^3.2.1":
version "3.3.0"
resolved "https://registry.yarnpkg.com/@shikijs/types/-/types-3.3.0.tgz#2787aac662ef0cf286abc0ab65595eab67c27c0f"
integrity sha512-KPCGnHG6k06QG/2pnYGbFtFvpVJmC3uIpXrAiPrawETifujPBv0Se2oUxm5qYgjCvGJS9InKvjytOdN+bGuX+Q==
dependencies:
"@shikijs/vscode-textmate" "^10.0.2"
"@types/hast" "^3.0.4"
"@shikijs/vscode-textmate@^10.0.2":
version "10.0.2"
resolved "https://registry.yarnpkg.com/@shikijs/vscode-textmate/-/vscode-textmate-10.0.2.tgz#a90ab31d0cc1dfb54c66a69e515bf624fa7b2224"
@@ -8693,7 +8755,7 @@ hast-util-phrasing@^3.0.0:
hast-util-is-body-ok-link "^3.0.0"
hast-util-is-element "^3.0.0"
hast-util-to-html@^9.0.0:
hast-util-to-html@^9.0.0, hast-util-to-html@^9.0.5:
version "9.0.5"
resolved "https://registry.yarnpkg.com/hast-util-to-html/-/hast-util-to-html-9.0.5.tgz#ccc673a55bb8e85775b08ac28380f72d47167005"
integrity sha512-OguPdidb+fbHQSU4Q4ZiLKnzWo8Wwsf5bZfbvu7//a9oTYoqD/fWpe96NuHkoS9h0ccGOTe0C4NGXdtS0iObOw==
@@ -11119,6 +11181,20 @@ onetime@^5.1.2:
dependencies:
mimic-fn "^2.1.0"
oniguruma-parser@^0.12.0:
version "0.12.0"
resolved "https://registry.yarnpkg.com/oniguruma-parser/-/oniguruma-parser-0.12.0.tgz#cfe3eaa769b9ed9e7a2f2901a7df9e06ff159b63"
integrity sha512-fD9o5ebCmEAA9dLysajdQvuKzLL7cj+w7DQjuO3Cb6IwafENfx6iL+RGkmyW82pVRsvgzixsWinHvgxTMJvdIA==
oniguruma-to-es@^4.2.0:
version "4.3.1"
resolved "https://registry.yarnpkg.com/oniguruma-to-es/-/oniguruma-to-es-4.3.1.tgz#40ceba461ad95c9242e3e8bee797d253cbee6a0c"
integrity sha512-VtX1kepWO+7HG7IWV5v72JhiqofK7XsiHmtgnvurnNOTdIvE5mrdWYtsOrQyrXCv1L2Ckm08hywp+MFO7rC4Ug==
dependencies:
oniguruma-parser "^0.12.0"
regex "^6.0.1"
regex-recursion "^6.0.2"
optionator@^0.9.3:
version "0.9.4"
resolved "https://registry.yarnpkg.com/optionator/-/optionator-0.9.4.tgz#7ea1c1a5d91d764fb282139c88fe11e182a3a734"
@@ -12411,6 +12487,25 @@ regenerator-transform@^0.15.2:
dependencies:
"@babel/runtime" "^7.8.4"
regex-recursion@^6.0.2:
version "6.0.2"
resolved "https://registry.yarnpkg.com/regex-recursion/-/regex-recursion-6.0.2.tgz#a0b1977a74c87f073377b938dbedfab2ea582b33"
integrity sha512-0YCaSCq2VRIebiaUviZNs0cBz1kg5kVS2UKUfNIx8YVs1cN3AV7NTctO5FOKBA+UT2BPJIWZauYHPqJODG50cg==
dependencies:
regex-utilities "^2.3.0"
regex-utilities@^2.3.0:
version "2.3.0"
resolved "https://registry.yarnpkg.com/regex-utilities/-/regex-utilities-2.3.0.tgz#87163512a15dce2908cf079c8960d5158ff43280"
integrity sha512-8VhliFJAWRaUiVvREIiW2NXXTmHs4vMNnSzuJVhscgmGav3g9VDxLrQndI3dZZVVdp0ZO/5v0xmX516/7M9cng==
regex@^6.0.1:
version "6.0.1"
resolved "https://registry.yarnpkg.com/regex/-/regex-6.0.1.tgz#282fa4435d0c700b09c0eb0982b602e05ab6a34f"
integrity sha512-uorlqlzAKjKQZ5P+kTJr3eeJGSVroLKoHmquUj4zHWuR+hEyNqlXsSKlYYF5F4NI6nl7tWCs0apKJ0lmfsXAPA==
dependencies:
regex-utilities "^2.3.0"
regexp.prototype.flags@^1.5.3:
version "1.5.4"
resolved "https://registry.yarnpkg.com/regexp.prototype.flags/-/regexp.prototype.flags-1.5.4.tgz#1ad6c62d44a259007e55b3970e00f746efbcaa19"