From 1bf3bd4294595f075e8652bd8ef3318bf72a93ee Mon Sep 17 00:00:00 2001 From: Brett Jephson Date: Tue, 13 Oct 2026 10:55:32 +0100 Subject: [PATCH] Bump API version (#4679) --- .changeset/bright-clubs-hunt.md | 5 +++++ bun.lock | 6 ++---- package.json | 2 +- packages/gitbook/src/lib/document.tsx | 8 ++++---- 4 files changed, 12 insertions(+), 9 deletions(-) create mode 100644 .changeset/bright-clubs-hunt.md diff --git a/.changeset/bright-clubs-hunt.md b/.changeset/bright-clubs-hunt.md new file mode 100644 index 000000000..d7bca73a5 --- /dev/null +++ b/.changeset/bright-clubs-hunt.md @@ -0,0 +1,5 @@ +--- +"gitbook": patch +--- + +Update API diff --git a/bun.lock b/bun.lock index 7b2ffc3b3..8221d4f3a 100644 --- a/bun.lock +++ b/bun.lock @@ -355,7 +355,7 @@ }, "catalog": { "@base-ui/react": "^1.7.0", - "@gitbook/api": "0.205.0", + "@gitbook/api": "0.206.0", "@scalar/api-client-react": "^1.3.46", "@tsconfig/node20": "^20.1.6", "@tsconfig/strictest": "^2.0.6", @@ -727,7 +727,7 @@ "@fortawesome/fontawesome-svg-core": ["@fortawesome/fontawesome-svg-core@7.2.0", "", { "dependencies": { "@fortawesome/fontawesome-common-types": "7.2.0" } }, "sha512-6639htZMjEkwskf3J+e6/iar+4cTNM9qhoWuRfj9F3eJD6r7iCzV1SWnQr2Mdv0QT0suuqU8BoJCZUyCtP9R4Q=="], - "@gitbook/api": ["@gitbook/api@0.205.0", "", { "dependencies": { "event-iterator": "^2.0.0", "eventsource-parser": "^3.0.0" } }, "sha512-jjkPAhPw6tja1N0ZPKqVsaV+opN8IS7yP1oZHHbcacZ477angPCo9YqiJJYWAl0tQ5OcKTuQbrsqhZSuwKM2Kw=="], + "@gitbook/api": ["@gitbook/api@0.206.0", "", { "dependencies": { "event-iterator": "^2.0.0", "eventsource-parser": "^3.0.0" } }, "sha512-ctgnDSQ26ZeZvdU/Zb1xxU97yMquKnhGiA0QblAIzKUmfi/3aYmWYHAwXwvEg0wtBrEtrjzme9pXgX/ACWnANA=="], "@gitbook/browser-types": ["@gitbook/browser-types@workspace:packages/browser-types"], @@ -2933,8 +2933,6 @@ "rolldown-plugin-dts": ["rolldown-plugin-dts@0.16.11", "", { "dependencies": { "@babel/generator": "^7.28.3", "@babel/parser": "^7.28.4", "@babel/types": "^7.28.4", "ast-kit": "^2.1.2", "birpc": "^2.6.1", "debug": "^4.4.3", "dts-resolver": "^2.1.2", "get-tsconfig": "^4.10.1", "magic-string": "^0.30.19" }, "peerDependencies": { "@ts-macro/tsc": "^0.3.6", "@typescript/native-preview": ">=7.0.0-dev.20250601.1", "rolldown": "^1.0.0-beta.9", "typescript": "^5.0.0", "vue-tsc": "~3.1.0" }, "optionalPeers": ["@ts-macro/tsc", "@typescript/native-preview", "typescript", "vue-tsc"] }, "sha512-9IQDaPvPqTx3RjG2eQCK5GYZITo203BxKunGI80AGYicu1ySFTUyugicAaTZWRzFWh9DSnzkgNeMNbDWBbSs0w=="], - "rollup": ["rollup@3.29.5", "", { "optionalDependencies": { "fsevents": "~2.3.2" }, "bin": { "rollup": "dist/bin/rollup" } }, "sha512-GVsDdsbJzzy4S/v3dqWPJ7EfvZJfCHiDqe80IyrF59LYuP+e6U1LJoUqeuqRbwAWoMNoXivMNeNAOf5E22VA1w=="], - "roughjs": ["roughjs@4.6.6", "", { "dependencies": { "hachure-fill": "^0.5.2", "path-data-parser": "^0.1.0", "points-on-curve": "^0.2.0", "points-on-path": "^0.2.1" } }, "sha512-ZUz/69+SYpFN/g/lUlo2FXcIjRkSu3nDarreVdGGndHEBJ6cXPdKguS8JGxwj5HA5xIbVKSmLgr5b3AWxtRfvQ=="], "router": ["router@2.0.0", "", { "dependencies": { "array-flatten": "3.0.0", "is-promise": "4.0.0", "methods": "~1.1.2", "parseurl": "~1.3.3", "path-to-regexp": "^8.0.0", "setprototypeof": "1.2.0", "utils-merge": "1.0.1" } }, "sha512-dIM5zVoG8xhC6rnSN8uoAgFARwTE7BQs8YwHEvK0VCmfxQXMaOuA1uiR1IPwsW7JyK5iTt7Od/TC9StasS2NPQ=="], diff --git a/package.json b/package.json index 8b6c98171..5e4dd90d3 100644 --- a/package.json +++ b/package.json @@ -48,7 +48,7 @@ "@tsconfig/strictest": "^2.0.6", "@tsconfig/node20": "^20.1.6", "@base-ui/react": "^1.7.0", - "@gitbook/api": "0.205.0", + "@gitbook/api": "0.206.0", "@scalar/api-client-react": "^1.3.46", "@types/react": "^19.0.0", "@types/react-dom": "^19.0.0", diff --git a/packages/gitbook/src/lib/document.tsx b/packages/gitbook/src/lib/document.tsx index 7ddc988d2..7b3c08f2e 100644 --- a/packages/gitbook/src/lib/document.tsx +++ b/packages/gitbook/src/lib/document.tsx @@ -91,7 +91,7 @@ export function hasMoreThan( if (traverse(child)) return true; } - if (child.object === 'block' && 'fragments' in child) { + if (child.object === 'block' && 'fragments' in child && child.fragments) { for (const fragment of child.fragments) { if (traverse(fragment)) return true; } @@ -159,7 +159,7 @@ export function getNodeFragmentByType( if (!('fragments' in node)) { return null; } - const fragment = node.fragments.find((child: any) => child.type === type); + const fragment = node.fragments?.find((child: any) => child.type === type); return fragment ?? null; } @@ -301,7 +301,7 @@ function findBlocks( } } - if (block.object === 'block' && 'fragments' in block) { + if (block.object === 'block' && 'fragments' in block && block.fragments) { for (const fragment of block.fragments) { const result = findBlocks(fragment, test); if (result.length > 0) { @@ -341,7 +341,7 @@ function findBlock( } } - if (block.object === 'block' && 'fragments' in block) { + if (block.object === 'block' && 'fragments' in block && block.fragments) { for (const fragment of block.fragments) { const result = findBlock(fragment, test); if (result) {