mirror of
https://github.com/GitbookIO/gitbook.git
synced 2026-11-08 04:33:12 +00:00
Compare commits
1 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
| fd35982552 |
@@ -0,0 +1,5 @@
|
||||
---
|
||||
"gitbook": patch
|
||||
---
|
||||
|
||||
Bump Next.js to 16.4.3, keeping the dev-mode OOM patch.
|
||||
@@ -0,0 +1,5 @@
|
||||
---
|
||||
"gitbook": patch
|
||||
---
|
||||
|
||||
Preconnect each asset origin once, skip same-origin icon URLs, and open the fonts preconnect in CORS mode so font requests can reuse it.
|
||||
@@ -0,0 +1,5 @@
|
||||
---
|
||||
"gitbook": patch
|
||||
---
|
||||
|
||||
Stop caching failed searches, so a rate-limited or failing search is retried on the next query instead of being served from cache for 15 minutes.
|
||||
@@ -0,0 +1,5 @@
|
||||
---
|
||||
"gitbook": patch
|
||||
---
|
||||
|
||||
Declare the Tailwind layer order in each component stylesheet, so a route whose first stylesheet is one of them still puts `base` before `components` and preflight does not strip their padding and borders.
|
||||
@@ -0,0 +1,5 @@
|
||||
---
|
||||
"gitbook": patch
|
||||
---
|
||||
|
||||
Forward the visitor's user agent on ask and Assistant calls so questions are classified by who asked.
|
||||
@@ -0,0 +1,5 @@
|
||||
---
|
||||
"gitbook": patch
|
||||
---
|
||||
|
||||
Load the inline expression runtime only on pages whose code blocks or text use expressions, so other pages ship less JavaScript.
|
||||
@@ -0,0 +1,5 @@
|
||||
---
|
||||
"@gitbook/react-contentkit": patch
|
||||
---
|
||||
|
||||
Load a webframe only once it is near the viewport. A page can hold hundreds of them inside collapsed expandables, and loading every one on mount held up the first paint.
|
||||
@@ -0,0 +1,5 @@
|
||||
---
|
||||
"gitbook": patch
|
||||
---
|
||||
|
||||
Pack the class lists that every block, heading anchor and table cell repeats into shared CSS classes, and carry a table cell's width once as a custom property instead of spelling it out as both width and min-width, so a large page carries far less markup.
|
||||
@@ -0,0 +1,5 @@
|
||||
---
|
||||
"gitbook": patch
|
||||
---
|
||||
|
||||
Split llms-full.txt into parts by size so large sites no longer fail with "content too large"
|
||||
@@ -0,0 +1,5 @@
|
||||
---
|
||||
"gitbook": patch
|
||||
---
|
||||
|
||||
Follow site and space redirects when the MCP getPage tool resolves a page URL.
|
||||
@@ -0,0 +1,5 @@
|
||||
---
|
||||
"gitbook": patch
|
||||
---
|
||||
|
||||
Fix the MCP `getPage` tool returning "Page not found" for the Markdown URL of a page (`<page>.md`).
|
||||
@@ -0,0 +1,5 @@
|
||||
---
|
||||
"gitbook": patch
|
||||
---
|
||||
|
||||
Add a search input to filter models by name on OpenAPI models pages.
|
||||
@@ -0,0 +1,5 @@
|
||||
---
|
||||
"gitbook": patch
|
||||
---
|
||||
|
||||
Let analytics tools like GA4 track outbound link clicks by using native link navigation.
|
||||
@@ -0,0 +1,5 @@
|
||||
---
|
||||
"gitbook": patch
|
||||
---
|
||||
|
||||
Set `Partitioned` on visitor cookies set inside an iframe so authenticated embeds work cross-site.
|
||||
@@ -0,0 +1,5 @@
|
||||
---
|
||||
"gitbook": patch
|
||||
---
|
||||
|
||||
Fix encoded or non-normalized links on proxied sites redirecting to the internal proxy path instead of the public URL.
|
||||
@@ -0,0 +1,5 @@
|
||||
---
|
||||
"gitbook": patch
|
||||
---
|
||||
|
||||
Support a secondary brand colour for secondary buttons and `$secondary` text, background, icon and tag colours. Sites without one render as before.
|
||||
@@ -0,0 +1,5 @@
|
||||
---
|
||||
"gitbook": patch
|
||||
---
|
||||
|
||||
Resolve the published content with the full URL in a single lookup and always send the visitor country.
|
||||
@@ -0,0 +1,5 @@
|
||||
---
|
||||
"gitbook": patch
|
||||
---
|
||||
|
||||
Resolve dark-mode image URLs in published Markdown.
|
||||
@@ -0,0 +1,5 @@
|
||||
---
|
||||
"gitbook": patch
|
||||
---
|
||||
|
||||
Keep lists, paragraphs and code blocks as HTML in Updates RSS feeds, instead of running all the text together
|
||||
@@ -0,0 +1,5 @@
|
||||
---
|
||||
"@gitbook/openapi-parser": patch
|
||||
---
|
||||
|
||||
Bump @scalar/openapi-parser to 0.29 so valid OpenAPI 3.2 documents no longer report false validation errors.
|
||||
@@ -0,0 +1,5 @@
|
||||
---
|
||||
"gitbook": patch
|
||||
---
|
||||
|
||||
Only apply a site preview customization override to the section or variant it was made for.
|
||||
@@ -0,0 +1,5 @@
|
||||
---
|
||||
"gitbook": patch
|
||||
---
|
||||
|
||||
Render soft line breaks in paragraphs that contain buttons.
|
||||
@@ -0,0 +1,5 @@
|
||||
---
|
||||
"gitbook": patch
|
||||
---
|
||||
|
||||
Fix visitors being logged out right after signing in on sites with a logout link in the header.
|
||||
@@ -0,0 +1,5 @@
|
||||
---
|
||||
"gitbook": patch
|
||||
---
|
||||
|
||||
Truncate long tab titles one by one and show the selected tab's full title, instead of hiding tabs behind a "…" menu
|
||||
@@ -161,4 +161,4 @@ GitBook wouldn't be possible without these projects:
|
||||
|
||||
## Legacy GitBook (Deprecated)
|
||||
|
||||
Our previous version of GitBook and it's CLI tool are now deprecated. You can still view the old repository and it's commits on this [branch](https://github.com/GitbookIO/gitbook/tree/legacy).
|
||||
Our previous version of GitBook and its CLI tool are now deprecated. You can still view the old repository and its commits on this [branch](https://github.com/GitbookIO/gitbook/tree/legacy).
|
||||
@@ -110,7 +110,7 @@
|
||||
},
|
||||
"packages/gitbook": {
|
||||
"name": "gitbook",
|
||||
"version": "0.28.1",
|
||||
"version": "0.28.0",
|
||||
"dependencies": {
|
||||
"@base-ui/react": "catalog:",
|
||||
"@cloudflare/workers-types": "^4.20251011.0",
|
||||
@@ -129,8 +129,8 @@
|
||||
"@gitbook/react-openapi": "workspace:*",
|
||||
"@mermaid-js/mermaid-zenuml": "^0.2.2",
|
||||
"@modelcontextprotocol/sdk": "1.17.5",
|
||||
"@opennextjs/aws": "4.1.15",
|
||||
"@opennextjs/cloudflare": "1.20.16",
|
||||
"@opennextjs/aws": "4.1.11",
|
||||
"@opennextjs/cloudflare": "1.20.12",
|
||||
"@panzoom/panzoom": "^4.6.1",
|
||||
"@sindresorhus/fnv1a": "^3.1.0",
|
||||
"@tailwindcss/container-queries": "^0.1.1",
|
||||
@@ -160,7 +160,7 @@
|
||||
"micromark-extension-gfm": "^3.0.0",
|
||||
"motion": "^12.23.24",
|
||||
"negotiator": "^1.0.0",
|
||||
"next": "^16.4.5",
|
||||
"next": "^16.4.3",
|
||||
"next-themes": "^0.4.6",
|
||||
"nuqs": "^2.2.3",
|
||||
"object-hash": "^3.0.0",
|
||||
@@ -249,7 +249,7 @@
|
||||
},
|
||||
"packages/openapi-parser": {
|
||||
"name": "@gitbook/openapi-parser",
|
||||
"version": "3.0.14",
|
||||
"version": "3.0.13",
|
||||
"dependencies": {
|
||||
"@scalar/json-magic": "^0.17.0",
|
||||
"@scalar/openapi-parser": "^0.29.19",
|
||||
@@ -266,7 +266,7 @@
|
||||
},
|
||||
"packages/react-contentkit": {
|
||||
"name": "@gitbook/react-contentkit",
|
||||
"version": "0.7.18",
|
||||
"version": "0.7.17",
|
||||
"dependencies": {
|
||||
"@gitbook/api": "catalog:",
|
||||
"@gitbook/icons": "workspace:*",
|
||||
@@ -309,7 +309,7 @@
|
||||
},
|
||||
"packages/react-openapi": {
|
||||
"name": "@gitbook/react-openapi",
|
||||
"version": "2.0.1",
|
||||
"version": "2.0.0",
|
||||
"dependencies": {
|
||||
"@base-ui/react": "catalog:",
|
||||
"@gitbook/expr": "workspace:*",
|
||||
@@ -342,8 +342,8 @@
|
||||
},
|
||||
"patchedDependencies": {
|
||||
"decode-named-character-reference@1.0.2": "patches/decode-named-character-reference@1.0.2.patch",
|
||||
"next@16.4.5": "patches/next@16.4.5.patch",
|
||||
"mermaid@11.16.1": "patches/mermaid@11.16.1.patch",
|
||||
"next@16.4.3": "patches/next@16.4.3.patch",
|
||||
},
|
||||
"overrides": {
|
||||
"@codemirror/state": "6.4.1",
|
||||
@@ -888,23 +888,23 @@
|
||||
|
||||
"@napi-rs/wasm-runtime": ["@napi-rs/wasm-runtime@1.0.6", "", { "dependencies": { "@emnapi/core": "^1.5.0", "@emnapi/runtime": "^1.5.0", "@tybys/wasm-util": "^0.10.1" } }, "sha512-DXj75ewm11LIWUk198QSKUTxjyRjsBwk09MuMk5DGK+GDUtyPhhEHOGP/Xwwj3DjQXXkivoBirmOnKrLfc0+9g=="],
|
||||
|
||||
"@next/env": ["@next/env@16.4.5", "", {}, "sha512-JwSPwpdkZL5VMl2jA/q+JI8MZdweAL3xmw5/tb9y/TLtmS0YXZnmYDzSihwk8xTj1OL+WM53gTqaj96yuLp6Xw=="],
|
||||
"@next/env": ["@next/env@16.4.3", "", {}, "sha512-a7tz1QCcWWkwC/rPJcPMJk/UNRu9CFhDd3OHYE5hddbJrs8BqRTalxI6GlKCWEGzRLHN+S/B7a4PAHCtm25aBQ=="],
|
||||
|
||||
"@next/swc-darwin-arm64": ["@next/swc-darwin-arm64@16.4.5", "", { "os": "darwin", "cpu": "arm64" }, "sha512-W5TniBzWKASbNNwHZ/S/f1MxQUXU/LdjklVMWA0Ujbfl7SZnUzFls45hO0i/sF7Bx1jJBWp7WWmoQajXtX/O8A=="],
|
||||
"@next/swc-darwin-arm64": ["@next/swc-darwin-arm64@16.4.3", "", { "os": "darwin", "cpu": "arm64" }, "sha512-4yq5EXBt+VDtAZwTyfijaFp5D2C5oz3Ikw5a2kiX2K9nw72vrZX2q5UuAlkPtUMO1tQz6JTKpaKWjS7OOefTDQ=="],
|
||||
|
||||
"@next/swc-darwin-x64": ["@next/swc-darwin-x64@16.4.5", "", { "os": "darwin", "cpu": "x64" }, "sha512-uWq4qkHapBDS1oFltWS4YxTb9pLHAtLNcpbuK6SmRsebLYZqpBML/j/C0op+50JYGTpZgVL/DWNt/6oWlamrrw=="],
|
||||
"@next/swc-darwin-x64": ["@next/swc-darwin-x64@16.4.3", "", { "os": "darwin", "cpu": "x64" }, "sha512-1Rvkn/LUhnEF8WxnRkOrqGhbwXui1bkWFxONKIbN+r7C+9KHDSZ+iUoj4CzymVMWUyZIyx9szcb9+kbKhD500A=="],
|
||||
|
||||
"@next/swc-linux-arm64-gnu": ["@next/swc-linux-arm64-gnu@16.4.5", "", { "os": "linux", "cpu": "arm64" }, "sha512-FdRcyOx5u5P51mlAqLB9EXdd8jZO5fsdHtk4BAQSkqOywCsbTNN/rmw+jO7pnmjNdAtu2AG46NzbCL2FPDrrgw=="],
|
||||
"@next/swc-linux-arm64-gnu": ["@next/swc-linux-arm64-gnu@16.4.3", "", { "os": "linux", "cpu": "arm64" }, "sha512-dCKpXErGg3abUM6t5JTJV/ottVBTStJB5lRJTbgdUdQaQ+jNHiK56Hsc0YAEg/rinSh42hYG3HWiYmEMdilnxg=="],
|
||||
|
||||
"@next/swc-linux-arm64-musl": ["@next/swc-linux-arm64-musl@16.4.5", "", { "os": "linux", "cpu": "arm64" }, "sha512-cyvmmgtRXR8aGVT86wi9Py53IlfyCx7P2fZxuAXAoTummDnhKtUyjrMeXfapqp4qgD+gT5RqyGD/VfA16jEK7Q=="],
|
||||
"@next/swc-linux-arm64-musl": ["@next/swc-linux-arm64-musl@16.4.3", "", { "os": "linux", "cpu": "arm64" }, "sha512-WwYbhWkhYBvBtib1K4W0kL8MW2snBD2A5b3SN4vPpqalZbZs5+bQ1yzAdepVoOqrFfEW3dmREy4Zs1MrWcrFbw=="],
|
||||
|
||||
"@next/swc-linux-x64-gnu": ["@next/swc-linux-x64-gnu@16.4.5", "", { "os": "linux", "cpu": "x64" }, "sha512-hPc+Fl+N22DAvqZHq559NmamXboOX5Lu8I5Wl0DezfrhTk1Zz21NQeYoZDmNI/NjTcrdsVxM72Fzn2lI+Q+vAw=="],
|
||||
"@next/swc-linux-x64-gnu": ["@next/swc-linux-x64-gnu@16.4.3", "", { "os": "linux", "cpu": "x64" }, "sha512-QymWvfUwDEC5/lpJOsxX5VAbyoR2D13+2Jsjz4be7gT4LPqEgdpkeLIR/HFfCLgKzoMhpJbp6I/JnogyNZHcaA=="],
|
||||
|
||||
"@next/swc-linux-x64-musl": ["@next/swc-linux-x64-musl@16.4.5", "", { "os": "linux", "cpu": "x64" }, "sha512-gbACYE8IP/jlprNTpiWXHb8N9CofOzpnEwH2SrIz1dUbiJf1FbDssDupCAPeP1Taxe8mgG20sGZamJI7KFOdZw=="],
|
||||
"@next/swc-linux-x64-musl": ["@next/swc-linux-x64-musl@16.4.3", "", { "os": "linux", "cpu": "x64" }, "sha512-Vmjd9D7DpA4Vv3cUlr82QWgJD/BQZmns801vtC5VWHg6jCIA4a5vMKpQnfrM2pyCrp2eV0ENdUg4PlN3bAc2Yw=="],
|
||||
|
||||
"@next/swc-win32-arm64-msvc": ["@next/swc-win32-arm64-msvc@16.4.5", "", { "os": "win32", "cpu": "arm64" }, "sha512-+8gj++ZMo8H20Xh2ijjNqyFk5LPLw0AC4Fs4Tq/G94rjjQXhOjN4jgSWsWKPFsyY26hfIeemJIwKtMxOsp5GBA=="],
|
||||
"@next/swc-win32-arm64-msvc": ["@next/swc-win32-arm64-msvc@16.4.3", "", { "os": "win32", "cpu": "arm64" }, "sha512-lG1pPdPLk7gTyGb00n5JIMLdBJgjb+UEhSdZvFbhUMg0DyC6z4B7RnpSKF9VCd4imkLObVbXOFA0kFCpw7yFow=="],
|
||||
|
||||
"@next/swc-win32-x64-msvc": ["@next/swc-win32-x64-msvc@16.4.5", "", { "os": "win32", "cpu": "x64" }, "sha512-qNZj66pYXnaWLiF9R9GUbfBdrCv7kC6TaZfIwB2KH5WPc/8pEM3nVOj8hpQhWJU8S94rlH5MPDcX15+RrgUhiw=="],
|
||||
"@next/swc-win32-x64-msvc": ["@next/swc-win32-x64-msvc@16.4.3", "", { "os": "win32", "cpu": "x64" }, "sha512-NmQC9RkJdnPXRaMxtkCzobB3teVjqF33oSOnwDfi+XYGWWYpt+xlGK3mtktSKLbdjwaWbJu2OkkMiRFGUUncKg=="],
|
||||
|
||||
"@node-minify/core": ["@node-minify/core@9.0.2", "", { "dependencies": { "@node-minify/utils": "9.0.1", "glob": "10.3.3", "mkdirp": "3.0.1" } }, "sha512-FNhv29Wom6wKrrFKaeAfmZqz7TX5A1E6P+bpd0VIc+DYWMLUIhAViS8riaZg3A1oD0s06s+5BG2Fg7RqMKiKHw=="],
|
||||
|
||||
@@ -934,9 +934,9 @@
|
||||
|
||||
"@octokit/types": ["@octokit/types@14.1.0", "", { "dependencies": { "@octokit/openapi-types": "^25.1.0" } }, "sha512-1y6DgTy8Jomcpu33N+p5w58l6xyt55Ar2I91RPiIA0xCJBXyUAhXCcmZaDWSANiha7R9a6qJJ2CRomGPZ6f46g=="],
|
||||
|
||||
"@opennextjs/aws": ["@opennextjs/aws@4.1.15", "", { "dependencies": { "@ast-grep/napi": "^0.45.3", "@aws-sdk/client-cloudfront": "3.984.0", "@aws-sdk/client-dynamodb": "3.984.0", "@aws-sdk/client-lambda": "3.984.0", "@aws-sdk/client-s3": "3.984.0", "@aws-sdk/client-sqs": "3.984.0", "@node-minify/core": "^9.0.2", "@node-minify/terser": "^9.0.1", "@tsconfig/node18": "^18.2.7", "aws4fetch": "^1.0.20", "chalk": "^5.6.2", "cookie": "^1.1.1", "esbuild": "0.28.2", "express": "^5.2.1", "path-to-regexp": "^6.3.0", "urlpattern-polyfill": "^10.1.0", "yaml": "^2.9.1" }, "peerDependencies": { "diff": "^9.0.0", "next": ">=15.5.29 <16 || >=16.4.5" }, "optionalPeers": ["diff"], "bin": { "open-next": "dist/index.js" } }, "sha512-ulv7rFEAeieD0d/zDMnw4IFPU+zY/atVUhn7ezgFqIurLB5oBYeHCUGlcGk3Pg7uMPeI03SNRjHW1+xL9EwMPw=="],
|
||||
"@opennextjs/aws": ["@opennextjs/aws@4.1.11", "", { "dependencies": { "@ast-grep/napi": "^0.45.3", "@aws-sdk/client-cloudfront": "3.984.0", "@aws-sdk/client-dynamodb": "3.984.0", "@aws-sdk/client-lambda": "3.984.0", "@aws-sdk/client-s3": "3.984.0", "@aws-sdk/client-sqs": "3.984.0", "@node-minify/core": "^9.0.2", "@node-minify/terser": "^9.0.1", "@tsconfig/node18": "^18.2.7", "aws4fetch": "^1.0.20", "chalk": "^5.6.2", "cookie": "^1.1.1", "esbuild": "0.28.2", "express": "^5.2.1", "path-to-regexp": "^6.3.0", "urlpattern-polyfill": "^10.1.0", "yaml": "^2.9.1" }, "peerDependencies": { "next": ">=15.5.28 <16 || >=16.4.1" }, "bin": { "open-next": "dist/index.js" } }, "sha512-cew0cUgGZF/Kr/C+Z1qvmAdKj4Va5cRho+aB6Ci/5ILd+QDdrR2LVaC/6Qm12KVF37vSLDK7lPDd/KdvvCoNEw=="],
|
||||
|
||||
"@opennextjs/cloudflare": ["@opennextjs/cloudflare@1.20.16", "", { "dependencies": { "@ast-grep/napi": "^0.45.3", "@dotenvx/dotenvx": "^2.33.0", "@opennextjs/aws": "4.1.15", "ci-info": "^4.2.0", "cloudflare": "^4.4.1", "comment-json": "^4.5.1", "enquirer": "^2.4.1", "glob": "^13.0.6", "ts-tqdm": "^0.8.6", "yargs": "^18.2.0" }, "peerDependencies": { "next": ">=15.5.29 <16 || >=16.4.5", "rclone.js": "^0.6.6", "wrangler": "^4.148.0" }, "optionalPeers": ["rclone.js"], "bin": { "opennextjs-cloudflare": "dist/cli/index.js" } }, "sha512-3c1Cwex5e2jXy4o4RZAusy8o9Uz4eowuPCjdVLYEZ/MnkAzN2jh9dOgsRjgu3wjigXuNe8rmPECmOTo+xKQHsw=="],
|
||||
"@opennextjs/cloudflare": ["@opennextjs/cloudflare@1.20.12", "", { "dependencies": { "@ast-grep/napi": "^0.45.3", "@dotenvx/dotenvx": "^2.33.0", "@opennextjs/aws": "4.1.11", "ci-info": "^4.2.0", "cloudflare": "^4.4.1", "comment-json": "^4.5.1", "enquirer": "^2.4.1", "glob": "^13.0.6", "ts-tqdm": "^0.8.6", "yargs": "^18.2.0" }, "peerDependencies": { "next": ">=15.5.28 <16 || >=16.4.1", "rclone.js": "^0.6.6", "wrangler": "^4.148.0" }, "optionalPeers": ["rclone.js"], "bin": { "opennextjs-cloudflare": "dist/cli/index.js" } }, "sha512-ZU1j7hMuOFaa0RHT/wrPXQKEEqzkkoc3fHaHy0Xrx4K0zZdSXGQbwbSHCnbjPRGXblCuWo+ur6UUkl0o9kVhrg=="],
|
||||
|
||||
"@opentelemetry/api": ["@opentelemetry/api@1.9.0", "", {}, "sha512-3giAOQvZiH5F9bMlMiv8+GSPMeqg0dbaeo58/0SlA9sxSqZhnUtxzX9/2FzyhS9sWQf5S0GJE0AKBrFqjpeYcg=="],
|
||||
|
||||
@@ -1020,43 +1020,43 @@
|
||||
|
||||
"@oxfmt/binding-win32-x64-msvc": ["@oxfmt/binding-win32-x64-msvc@0.62.0", "", { "os": "win32", "cpu": "x64" }, "sha512-dlI5SY7XYQCiCBafntWagCR6HcAJB/NpsLtdlPx8x08+Osz8Ok1HHz1GZuusegCe/VoJ6pAnF5a4pd5OZAq7qQ=="],
|
||||
|
||||
"@oxlint/binding-android-arm-eabi": ["@oxlint/binding-android-arm-eabi@1.92.0", "", { "os": "android", "cpu": "arm" }, "sha512-k3Sd4ixQfiOrybv1gT+AMI81HSdtAFsiCFx+xXxWdFkmKW2HNrSiOfwn20o5nl/ggwbzU1oNLDeU/fRPinTVZQ=="],
|
||||
"@oxlint/binding-android-arm-eabi": ["@oxlint/binding-android-arm-eabi@1.90.0", "", { "os": "android", "cpu": "arm" }, "sha512-sgfalb1HuxYjiAa4wESZ626z1FGusqNcXYHyB5oIOEprS2sbPg0UYEfo83uF1GNG70DIfZxHkXuE6KFrlSdn8Q=="],
|
||||
|
||||
"@oxlint/binding-android-arm64": ["@oxlint/binding-android-arm64@1.92.0", "", { "os": "android", "cpu": "arm64" }, "sha512-OZzgEuiTSG11QkBWdXEguiLOT6lL09KtfcC/BmvUQWBAjU5eVyBxIAsmWAXv8L85/eT6RE0GBEWTEFBAbYE74g=="],
|
||||
"@oxlint/binding-android-arm64": ["@oxlint/binding-android-arm64@1.90.0", "", { "os": "android", "cpu": "arm64" }, "sha512-RcKhz1ETMq+fazE9TKS2+5NIRGwigm/nW8egqF0LI+A8Yw2iW5r0E/C3XAPRiwIm/vcPiutIRIa6IQCIKhZsTQ=="],
|
||||
|
||||
"@oxlint/binding-darwin-arm64": ["@oxlint/binding-darwin-arm64@1.92.0", "", { "os": "darwin", "cpu": "arm64" }, "sha512-We6XS7tIqxgUoany6uyGjj7mNsh/mwf4Gt9gUzhxG65NKo2Ow9s6tDfrVuI0FVg8n3YmpW5PBx80qFxiLwAfsA=="],
|
||||
"@oxlint/binding-darwin-arm64": ["@oxlint/binding-darwin-arm64@1.90.0", "", { "os": "darwin", "cpu": "arm64" }, "sha512-PSrxMvP6mx+p1karZcUxLdy9lpaP+JWQPti4al9FgTaPhxE+pT/BjhGExloVVSWgZgIfOlLOjVyyq8BXlodhLQ=="],
|
||||
|
||||
"@oxlint/binding-darwin-x64": ["@oxlint/binding-darwin-x64@1.92.0", "", { "os": "darwin", "cpu": "x64" }, "sha512-jKJWijmi6AxAZcXXWA6R/NLVZHxoRTbIMnV8znsHzeiVfuEefYcyR8SJGfbBPmkG+kveLFRcBGw0fBrjLqtGmQ=="],
|
||||
"@oxlint/binding-darwin-x64": ["@oxlint/binding-darwin-x64@1.90.0", "", { "os": "darwin", "cpu": "x64" }, "sha512-OLbU9qsrV2Q8QxT2OEzOPdO8zCCpyI8qB+hDI8yr6RsYELtkf0FAZhJdfjM/RnLHKzt44HWwAPnk92vBtKofvw=="],
|
||||
|
||||
"@oxlint/binding-freebsd-x64": ["@oxlint/binding-freebsd-x64@1.92.0", "", { "os": "freebsd", "cpu": "x64" }, "sha512-wkw01wvJPM8/4jh+MV3cp11859VuBc94N2q5uOzcBgdGIRAqMCg1O0W/+xsZ1fsInvuUcv2Xo4nd1nzcKhi9kg=="],
|
||||
"@oxlint/binding-freebsd-x64": ["@oxlint/binding-freebsd-x64@1.90.0", "", { "os": "freebsd", "cpu": "x64" }, "sha512-fBA4pWyVDARmNucQqpyFuPC49xYf1r+sX7dxPL5fNPQrSMLum39Sn56tZ9JPleWC7FzLPwSQ7plYYfirYBHF8A=="],
|
||||
|
||||
"@oxlint/binding-linux-arm-gnueabihf": ["@oxlint/binding-linux-arm-gnueabihf@1.92.0", "", { "os": "linux", "cpu": "arm" }, "sha512-Elm6nW308MzmR8knvk0tPqQ4XE+PGKztjXv7kVZTRLkhBQZRXHUQoBLc4E30fiIuF6gkZO5f3EpJtQc4Ok/fXw=="],
|
||||
"@oxlint/binding-linux-arm-gnueabihf": ["@oxlint/binding-linux-arm-gnueabihf@1.90.0", "", { "os": "linux", "cpu": "arm" }, "sha512-zhxH78eP2nR6/pGdhBc7MIfjhhcgATeu8fkmkFJbuzfk6Cj0FzBxyEhL85yDqrCybjx+G2YDzZGsxIO9kvO4Iw=="],
|
||||
|
||||
"@oxlint/binding-linux-arm-musleabihf": ["@oxlint/binding-linux-arm-musleabihf@1.92.0", "", { "os": "linux", "cpu": "arm" }, "sha512-oylpBAoeogddjhTlSPsXrzGq/aeJsvaULz/hYXvWtGn/Wt8LPLC7gFhucCicbRnzEKsShrZxIA0KyHmtFNnijQ=="],
|
||||
"@oxlint/binding-linux-arm-musleabihf": ["@oxlint/binding-linux-arm-musleabihf@1.90.0", "", { "os": "linux", "cpu": "arm" }, "sha512-MvYmpHyJqUJjEvkZbJHdwfdL45cGn8EVBkYmoXFiaYFW9suoD3dbJl5mBdpy0DVgdjlyddmldbRtk3cCgETadQ=="],
|
||||
|
||||
"@oxlint/binding-linux-arm64-gnu": ["@oxlint/binding-linux-arm64-gnu@1.92.0", "", { "os": "linux", "cpu": "arm64" }, "sha512-/EWOI0wwY+74UGvC93TldpoNP8moIcidVUPbUSoX16/SEdF7ah209yxSQia4+9JdCRWYA3+yQMofXMgWKk/16Q=="],
|
||||
"@oxlint/binding-linux-arm64-gnu": ["@oxlint/binding-linux-arm64-gnu@1.90.0", "", { "os": "linux", "cpu": "arm64" }, "sha512-L13Sy+Kg0nZhwTsToniqjUFPA2TuM6962qCZ5Wp5KeB517Tw7ApdLTTtlb+bF86fcZZa2EtvCVvAJxk4Dya/MQ=="],
|
||||
|
||||
"@oxlint/binding-linux-arm64-musl": ["@oxlint/binding-linux-arm64-musl@1.92.0", "", { "os": "linux", "cpu": "arm64" }, "sha512-9Se7Zuazr104yc2PaluriJW2rqvtaN6FSi9MSjQgZGeYb6LKvEcJ586tpjek0l7hNQNoir8MID7OENPH6juN1w=="],
|
||||
"@oxlint/binding-linux-arm64-musl": ["@oxlint/binding-linux-arm64-musl@1.90.0", "", { "os": "linux", "cpu": "arm64" }, "sha512-wFDdZWGpzIPFdJFjSLWnKB0TGzFriTKUIrl04iMqMyM9BBIJTuerfCHYa0WpDSjr5x3lcW/CHLyacSt886WpGg=="],
|
||||
|
||||
"@oxlint/binding-linux-ppc64-gnu": ["@oxlint/binding-linux-ppc64-gnu@1.92.0", "", { "os": "linux", "cpu": "ppc64" }, "sha512-88IAchs204I/xxAbAo3NRyz1m/29tn8jUAPvc4tK4FzrT2PLwZertd93ANF6231vwbAhYiD5gl0cX8Po5xsjWQ=="],
|
||||
"@oxlint/binding-linux-ppc64-gnu": ["@oxlint/binding-linux-ppc64-gnu@1.90.0", "", { "os": "linux", "cpu": "ppc64" }, "sha512-FRywfn+MoKn8xpBSzgNwNVliSKRI2QXkxi/iF7o6FEQs8Bh8z2RpVTaFAcO3pchXjvB2eGNFIoLLQABIQ+u7VA=="],
|
||||
|
||||
"@oxlint/binding-linux-riscv64-gnu": ["@oxlint/binding-linux-riscv64-gnu@1.92.0", "", { "os": "linux", "cpu": "none" }, "sha512-KtFdVdkfvBGcsrmnbjYJ9/XTDABnaniiwnptAcAm0pkaR2zhZ3sr/Xy+N1Xbz1Yq5Jegu7SoeNv9caTP0b5OTA=="],
|
||||
"@oxlint/binding-linux-riscv64-gnu": ["@oxlint/binding-linux-riscv64-gnu@1.90.0", "", { "os": "linux", "cpu": "none" }, "sha512-IS2PaUgpc/qeLADTyhUNmdx3x4ijs9pjJdPKBYHaT+mAE7k3FsjnHPTjhpsak1b++h6CIPhv6WX9Z+y7Pw0voQ=="],
|
||||
|
||||
"@oxlint/binding-linux-riscv64-musl": ["@oxlint/binding-linux-riscv64-musl@1.92.0", "", { "os": "linux", "cpu": "none" }, "sha512-V43CO5FPgHtwHup4H5+dIdwzZX2FhREQGsSBZx8V1UyFEAul0Q13qviKqZfSMM6G41CGtCekVpJGGOxW5v1y8Q=="],
|
||||
"@oxlint/binding-linux-riscv64-musl": ["@oxlint/binding-linux-riscv64-musl@1.90.0", "", { "os": "linux", "cpu": "none" }, "sha512-s7JFKRkGS8O7i2ZVODfuO++NC7sH6HDqpMn8lYxw91w0SXJOxnAVjQ8utvmDwLMMT0jaSkuOKuUYJDGDtu4sHQ=="],
|
||||
|
||||
"@oxlint/binding-linux-s390x-gnu": ["@oxlint/binding-linux-s390x-gnu@1.92.0", "", { "os": "linux", "cpu": "s390x" }, "sha512-WooxeACzGH5q34olo7JgAk7XbVkTUNfwhR/TzmhwVs/y1p2R7ZWJo14hiyxiGcoYZR1iBnbBFHectADqb/KSog=="],
|
||||
"@oxlint/binding-linux-s390x-gnu": ["@oxlint/binding-linux-s390x-gnu@1.90.0", "", { "os": "linux", "cpu": "s390x" }, "sha512-b0GxrOQr5VONCkd7KLSqmP6b6nqZuTpuS8QPQHzltmqdXP5bY0Jl0CZ0QmlCTrS3ExaLYbioFYOARzNbYvcApQ=="],
|
||||
|
||||
"@oxlint/binding-linux-x64-gnu": ["@oxlint/binding-linux-x64-gnu@1.92.0", "", { "os": "linux", "cpu": "x64" }, "sha512-lW2pLF1oFvNN780YUCtDyoUm8oFzZGJNcOFe9RtLMX5v5+FcWfAQvHUMMPF8H8kJB0HAi3dFmWDWLa5VPuY9mw=="],
|
||||
"@oxlint/binding-linux-x64-gnu": ["@oxlint/binding-linux-x64-gnu@1.90.0", "", { "os": "linux", "cpu": "x64" }, "sha512-iaJeShJtgUp8rZbt9YUdTAGOpmX5KogCLba17Jp1tWdJ3F4M3D2g2TKUyI1FMTHxKH9NNHuQcuC2kZRg6IV7yQ=="],
|
||||
|
||||
"@oxlint/binding-linux-x64-musl": ["@oxlint/binding-linux-x64-musl@1.92.0", "", { "os": "linux", "cpu": "x64" }, "sha512-2BJAAB/eqPn7iD7mFVfs+1ZVUogAYOMCTaUgjAvbtNGg2ppCDE7gcv/9VSO6GCDybdFUqlcyeyjn9hRpl1ZHog=="],
|
||||
"@oxlint/binding-linux-x64-musl": ["@oxlint/binding-linux-x64-musl@1.90.0", "", { "os": "linux", "cpu": "x64" }, "sha512-/aZoXnL5WBLCXuzfHqvEFXcm4iwYmr/cYByHDTXzLFzJdE5DC7bm6phpWqHv6BeqpVgY9IpBAxGDv2WEkl5JCg=="],
|
||||
|
||||
"@oxlint/binding-openharmony-arm64": ["@oxlint/binding-openharmony-arm64@1.92.0", "", { "os": "none", "cpu": "arm64" }, "sha512-iLtjNqqa/2IV5qu/3rrkpVd42Ia3yeCn4fSZoEr+m5FoGHtZvAV6J6YuU3lewg5Rg5ORGvwhdgN+7gNzwkl7tA=="],
|
||||
"@oxlint/binding-openharmony-arm64": ["@oxlint/binding-openharmony-arm64@1.90.0", "", { "os": "none", "cpu": "arm64" }, "sha512-SMhk7ozwoxYDKfYqGZCQEfULOKDneF9uhaoIf2neoDLWvNtjY9yVeL7YHmE5L9WdKvMpWNwwZxhenxBu6AgfOg=="],
|
||||
|
||||
"@oxlint/binding-win32-arm64-msvc": ["@oxlint/binding-win32-arm64-msvc@1.92.0", "", { "os": "win32", "cpu": "arm64" }, "sha512-ryxiR3ZqB0OJzydMu+bVC3R7ZtoU7X1rI8sEgTBCCvQvgVwoCwqSFlfmhgiZ+9wZ4IdTsFeu9tdiF9KtRCbSHQ=="],
|
||||
"@oxlint/binding-win32-arm64-msvc": ["@oxlint/binding-win32-arm64-msvc@1.90.0", "", { "os": "win32", "cpu": "arm64" }, "sha512-KBvR3A9fO7fCi2vCP8ifWvlia7tGEQV9NaYh+IGwa/7Groy48Mt/UaYqMK9/zOtAWl20BUCf6RPqzJ32fRw33Q=="],
|
||||
|
||||
"@oxlint/binding-win32-ia32-msvc": ["@oxlint/binding-win32-ia32-msvc@1.92.0", "", { "os": "win32", "cpu": "ia32" }, "sha512-DaE9OChj4nsdEST32BP7saGu8WtjOinTy/eS88dZ0TvTfDV26ebRDhsI1rL9OKXfO+DgehzhAQMqdPr2jgfcFw=="],
|
||||
"@oxlint/binding-win32-ia32-msvc": ["@oxlint/binding-win32-ia32-msvc@1.90.0", "", { "os": "win32", "cpu": "ia32" }, "sha512-+x42rDHQGbTCuT3EzpWAzhP3NoVPE/cJsG4gnrakOSg0olV+GCdMpPU23Nvrl3zZMnXxFZdTtDv4D3SuaA5ZeQ=="],
|
||||
|
||||
"@oxlint/binding-win32-x64-msvc": ["@oxlint/binding-win32-x64-msvc@1.92.0", "", { "os": "win32", "cpu": "x64" }, "sha512-0AyhqX0ciFuEnHIL+B4PIMMX3s/IpGHNEbbUqwsNhSrzWUSlEOPw/q7qFnRsEJfiKedcqVfUE/aXYuSMtpiFyw=="],
|
||||
"@oxlint/binding-win32-x64-msvc": ["@oxlint/binding-win32-x64-msvc@1.90.0", "", { "os": "win32", "cpu": "x64" }, "sha512-30JiaFEBUB9peEOcvVM8ggo88SoN/IdSr9DW505JdBji/R6dM66gKEiG65hw6qcaF2f4mO0cEJ+RwRZprmun9g=="],
|
||||
|
||||
"@panzoom/panzoom": ["@panzoom/panzoom@4.6.1", "", {}, "sha512-ogf/KhHHjj+DYAvHfaf3TXMQ8OE36pJtKpabLlx1OmpjcgtpCvkUoCiNONA8kuVRPGJdLiqMf0n8LRFXj1OyuA=="],
|
||||
|
||||
@@ -2636,7 +2636,7 @@
|
||||
|
||||
"netmask": ["netmask@2.0.2", "", {}, "sha512-dBpDMdxv9Irdq66304OLfEmQ9tbNRFnFTuZiLo+bD+r332bBmMJ8GBLXklIXXgxd3+v9+KUnZaUR5PJMa75Gsg=="],
|
||||
|
||||
"next": ["next@16.4.5", "", { "dependencies": { "@next/env": "16.4.5", "@swc/helpers": "0.5.23", "baseline-browser-mapping": "^2.9.19", "caniuse-lite": "^1.0.30001579", "postcss": "8.5.23", "styled-jsx": "5.1.6" }, "optionalDependencies": { "@next/swc-darwin-arm64": "16.4.5", "@next/swc-darwin-x64": "16.4.5", "@next/swc-linux-arm64-gnu": "16.4.5", "@next/swc-linux-arm64-musl": "16.4.5", "@next/swc-linux-x64-gnu": "16.4.5", "@next/swc-linux-x64-musl": "16.4.5", "@next/swc-win32-arm64-msvc": "16.4.5", "@next/swc-win32-x64-msvc": "16.4.5", "sharp": "^0.35.5" }, "peerDependencies": { "@opentelemetry/api": "^1.1.0", "@playwright/test": "^1.51.1", "babel-plugin-react-compiler": "*", "react": "^18.2.0 || 19.0.0-rc-de68d2f4-20241204 || ^19.0.0", "react-dom": "^18.2.0 || 19.0.0-rc-de68d2f4-20241204 || ^19.0.0", "sass": "^1.3.0" }, "optionalPeers": ["@opentelemetry/api", "@playwright/test", "babel-plugin-react-compiler", "sass"], "bin": { "next": "dist/bin/next" } }, "sha512-rmdfsWosjTUO+6R0S3KokoIk6Kj0sWDRTe86tZHdqaWH/oXq/udX3/4xb+YQi7aWbyEFoglDU54kaifLCdXbBw=="],
|
||||
"next": ["next@16.4.3", "", { "dependencies": { "@next/env": "16.4.3", "@swc/helpers": "0.5.23", "baseline-browser-mapping": "^2.9.19", "caniuse-lite": "^1.0.30001579", "postcss": "8.5.23", "styled-jsx": "5.1.6" }, "optionalDependencies": { "@next/swc-darwin-arm64": "16.4.3", "@next/swc-darwin-x64": "16.4.3", "@next/swc-linux-arm64-gnu": "16.4.3", "@next/swc-linux-arm64-musl": "16.4.3", "@next/swc-linux-x64-gnu": "16.4.3", "@next/swc-linux-x64-musl": "16.4.3", "@next/swc-win32-arm64-msvc": "16.4.3", "@next/swc-win32-x64-msvc": "16.4.3", "sharp": "^0.35.5" }, "peerDependencies": { "@opentelemetry/api": "^1.1.0", "@playwright/test": "^1.51.1", "babel-plugin-react-compiler": "*", "react": "^18.2.0 || 19.0.0-rc-de68d2f4-20241204 || ^19.0.0", "react-dom": "^18.2.0 || 19.0.0-rc-de68d2f4-20241204 || ^19.0.0", "sass": "^1.3.0" }, "optionalPeers": ["@opentelemetry/api", "@playwright/test", "babel-plugin-react-compiler", "sass"], "bin": { "next": "dist/bin/next" } }, "sha512-OqxKTGi9u80FydydsMNYNjnuje9Au+kvHlt2GZ//ftdpDHm1dxKqAaENoOOTX5wKzn+9vaKUNIfZeyZUuLhCnA=="],
|
||||
|
||||
"next-themes": ["next-themes@0.4.6", "", { "peerDependencies": { "react": "^16.8 || ^17 || ^18 || ^19 || ^19.0.0-rc", "react-dom": "^16.8 || ^17 || ^18 || ^19 || ^19.0.0-rc" } }, "sha512-pZvgD5L0IEvX5/9GWyHMf3m8BKiVQwsCMHfoFosXtXBMnaS0ZnIJ9ST4b4NqLVKDEm8QBxoNNGNaBv2JNF6XNA=="],
|
||||
|
||||
@@ -2696,7 +2696,7 @@
|
||||
|
||||
"oxfmt": ["oxfmt@0.62.0", "", { "dependencies": { "tinypool": "2.1.0" }, "optionalDependencies": { "@oxfmt/binding-android-arm-eabi": "0.62.0", "@oxfmt/binding-android-arm64": "0.62.0", "@oxfmt/binding-darwin-arm64": "0.62.0", "@oxfmt/binding-darwin-x64": "0.62.0", "@oxfmt/binding-freebsd-x64": "0.62.0", "@oxfmt/binding-linux-arm-gnueabihf": "0.62.0", "@oxfmt/binding-linux-arm-musleabihf": "0.62.0", "@oxfmt/binding-linux-arm64-gnu": "0.62.0", "@oxfmt/binding-linux-arm64-musl": "0.62.0", "@oxfmt/binding-linux-ppc64-gnu": "0.62.0", "@oxfmt/binding-linux-riscv64-gnu": "0.62.0", "@oxfmt/binding-linux-riscv64-musl": "0.62.0", "@oxfmt/binding-linux-s390x-gnu": "0.62.0", "@oxfmt/binding-linux-x64-gnu": "0.62.0", "@oxfmt/binding-linux-x64-musl": "0.62.0", "@oxfmt/binding-openharmony-arm64": "0.62.0", "@oxfmt/binding-win32-arm64-msvc": "0.62.0", "@oxfmt/binding-win32-ia32-msvc": "0.62.0", "@oxfmt/binding-win32-x64-msvc": "0.62.0" }, "peerDependencies": { "svelte": "^5.0.0", "vite-plus": "*" }, "optionalPeers": ["svelte", "vite-plus"], "bin": { "oxfmt": "bin/oxfmt" } }, "sha512-vxgGHTmnDU9j4CX7dDBLzxgmHxfda/yPcgJkGCMUSCwRmz+euo/V08xXLNgXTeqAB9Fhf3Pe2nO1RNKLCVgphQ=="],
|
||||
|
||||
"oxlint": ["oxlint@1.92.0", "", { "optionalDependencies": { "@oxlint/binding-android-arm-eabi": "1.92.0", "@oxlint/binding-android-arm64": "1.92.0", "@oxlint/binding-darwin-arm64": "1.92.0", "@oxlint/binding-darwin-x64": "1.92.0", "@oxlint/binding-freebsd-x64": "1.92.0", "@oxlint/binding-linux-arm-gnueabihf": "1.92.0", "@oxlint/binding-linux-arm-musleabihf": "1.92.0", "@oxlint/binding-linux-arm64-gnu": "1.92.0", "@oxlint/binding-linux-arm64-musl": "1.92.0", "@oxlint/binding-linux-ppc64-gnu": "1.92.0", "@oxlint/binding-linux-riscv64-gnu": "1.92.0", "@oxlint/binding-linux-riscv64-musl": "1.92.0", "@oxlint/binding-linux-s390x-gnu": "1.92.0", "@oxlint/binding-linux-x64-gnu": "1.92.0", "@oxlint/binding-linux-x64-musl": "1.92.0", "@oxlint/binding-openharmony-arm64": "1.92.0", "@oxlint/binding-win32-arm64-msvc": "1.92.0", "@oxlint/binding-win32-ia32-msvc": "1.92.0", "@oxlint/binding-win32-x64-msvc": "1.92.0" }, "peerDependencies": { "oxlint-tsgolint": ">=7.0.2005", "vite-plus": "*" }, "optionalPeers": ["oxlint-tsgolint", "vite-plus"], "bin": { "oxlint": "bin/oxlint" } }, "sha512-y9iRiRwVjVFqzKNXZJ9bT/GYRdf+F9Gy+a1Yju2Aq3xqqa4FJYXHI8VrxlpzxKDvkYRohvJX42m/eH+qkQPOFw=="],
|
||||
"oxlint": ["oxlint@1.90.0", "", { "optionalDependencies": { "@oxlint/binding-android-arm-eabi": "1.90.0", "@oxlint/binding-android-arm64": "1.90.0", "@oxlint/binding-darwin-arm64": "1.90.0", "@oxlint/binding-darwin-x64": "1.90.0", "@oxlint/binding-freebsd-x64": "1.90.0", "@oxlint/binding-linux-arm-gnueabihf": "1.90.0", "@oxlint/binding-linux-arm-musleabihf": "1.90.0", "@oxlint/binding-linux-arm64-gnu": "1.90.0", "@oxlint/binding-linux-arm64-musl": "1.90.0", "@oxlint/binding-linux-ppc64-gnu": "1.90.0", "@oxlint/binding-linux-riscv64-gnu": "1.90.0", "@oxlint/binding-linux-riscv64-musl": "1.90.0", "@oxlint/binding-linux-s390x-gnu": "1.90.0", "@oxlint/binding-linux-x64-gnu": "1.90.0", "@oxlint/binding-linux-x64-musl": "1.90.0", "@oxlint/binding-openharmony-arm64": "1.90.0", "@oxlint/binding-win32-arm64-msvc": "1.90.0", "@oxlint/binding-win32-ia32-msvc": "1.90.0", "@oxlint/binding-win32-x64-msvc": "1.90.0" }, "peerDependencies": { "oxlint-tsgolint": ">=7.0.2005", "vite-plus": "*" }, "optionalPeers": ["oxlint-tsgolint", "vite-plus"], "bin": { "oxlint": "bin/oxlint" } }, "sha512-RkTN9EmgIUpLuhNoLhO3OliMGJlvb3Dk7XVjBZnfoMCHrVpuz5ESd97klfiyYeV7XfA2lNLnDCPMkUI+Qw5How=="],
|
||||
|
||||
"p-filter": ["p-filter@2.1.0", "", { "dependencies": { "p-map": "^2.0.0" } }, "sha512-ZBxxZ5sL2HghephhpGAQdoskxplTwr7ICaehZwLIlfL6acuVgZPm8yBNuRAFBGEqtD/hmUeq9eqLg2ys9Xr/yw=="],
|
||||
|
||||
|
||||
+3
-3
@@ -7,7 +7,7 @@
|
||||
"devDependencies": {
|
||||
"@changesets/cli": "^2.31.1",
|
||||
"oxfmt": "^0.62.0",
|
||||
"oxlint": "^1.92.0",
|
||||
"oxlint": "^1.90.0",
|
||||
"turbo": "^2.11.10",
|
||||
"vercel": "50.37.3"
|
||||
},
|
||||
@@ -67,7 +67,7 @@
|
||||
"patchedDependencies": {
|
||||
"decode-named-character-reference@1.0.2": "patches/decode-named-character-reference@1.0.2.patch",
|
||||
"@vercel/next@4.4.2": "patches/@vercel%2Fnext@4.4.2.patch",
|
||||
"mermaid@11.16.1": "patches/mermaid@11.16.1.patch",
|
||||
"next@16.4.5": "patches/next@16.4.5.patch"
|
||||
"next@16.4.3": "patches/next@16.4.3.patch",
|
||||
"mermaid@11.16.1": "patches/mermaid@11.16.1.patch"
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1,40 +1,5 @@
|
||||
# gitbook
|
||||
|
||||
## 0.28.1
|
||||
|
||||
### Patch Changes
|
||||
|
||||
- a023a71: Warn visitors not to share sensitive personal info in the Assistant context popover.
|
||||
- 7e096d5: Bump Next.js to 16.4.3, keeping the dev-mode OOM patch.
|
||||
- 198cafe: Bump Next.js to 16.4.5 and OpenNext (Cloudflare 1.20.16, AWS 4.1.15), keeping the dev-mode OOM patch.
|
||||
- f61578f: Preconnect each asset origin once, skip same-origin icon URLs, and open the fonts preconnect in CORS mode so font requests can reuse it.
|
||||
- 26ec43e: Stop caching failed searches, so a rate-limited or failing search is retried on the next query instead of being served from cache for 15 minutes.
|
||||
- 04f39f1: Declare the Tailwind layer order in each component stylesheet, so a route whose first stylesheet is one of them still puts `base` before `components` and preflight does not strip their padding and borders.
|
||||
- a512777: Forward the visitor's user agent on ask and Assistant calls so questions are classified by who asked.
|
||||
- 508f1bc: Load the inline expression runtime only on pages whose code blocks or text use expressions, so other pages ship less JavaScript.
|
||||
- 04f39f1: Pack the class lists that every block, heading anchor and table cell repeats into shared CSS classes, and carry a table cell's width once as a custom property instead of spelling it out as both width and min-width, so a large page carries far less markup.
|
||||
- bd431f1: Split llms-full.txt into parts by size so large sites no longer fail with "content too large"
|
||||
- a5d58bc: Follow site and space redirects when the MCP getPage tool resolves a page URL.
|
||||
- e6b8502: Fix the MCP `getPage` tool returning "Page not found" for the Markdown URL of a page (`<page>.md`).
|
||||
- e745c88: Add a search input to filter models by name on OpenAPI models pages.
|
||||
- 96c5683: Let analytics tools like GA4 track outbound link clicks by using native link navigation.
|
||||
- 347a1cc: Set `Partitioned` on visitor cookies set inside an iframe so authenticated embeds work cross-site.
|
||||
- 3837c48: Fix encoded or non-normalized links on proxied sites redirecting to the internal proxy path instead of the public URL.
|
||||
- ea01850: Support a secondary brand colour for secondary buttons and `$secondary` text, background, icon and tag colours. Sites without one render as before.
|
||||
- c00a7b3: Resolve the published content with the full URL in a single lookup and always send the visitor country.
|
||||
- 063e685: Resolve dark-mode image URLs in published Markdown.
|
||||
- 09a8310: Serve a disallow-all robots.txt instead of redirecting to sign-in on authenticated access sites.
|
||||
- b7b8ae6: Keep lists, paragraphs and code blocks as HTML in Updates RSS feeds, instead of running all the text together
|
||||
- 4a72ead: Only apply a site preview customization override to the section or variant it was made for.
|
||||
- 38f60f2: Render soft line breaks in paragraphs that contain buttons.
|
||||
- 1383a79: Fix visitors being logged out right after signing in on sites with a logout link in the header.
|
||||
- be658e1: Truncate long tab titles one by one and show the selected tab's full title, instead of hiding tabs behind a "…" menu
|
||||
- Updated dependencies [04f39f1]
|
||||
- Updated dependencies [4dfe630]
|
||||
- @gitbook/react-contentkit@0.7.18
|
||||
- @gitbook/openapi-parser@3.0.14
|
||||
- @gitbook/react-openapi@2.0.1
|
||||
|
||||
## 0.28.0
|
||||
|
||||
### Minor Changes
|
||||
|
||||
@@ -283,6 +283,11 @@ const testCases: TestsCase[] = [
|
||||
contentBaseURL: 'https://vimeo.com',
|
||||
tests: [{ name: 'Home', url: '/legal' }],
|
||||
},
|
||||
{
|
||||
name: 'help.aikido.dev',
|
||||
contentBaseURL: 'https://help.aikido.dev',
|
||||
tests: [{ name: 'Home', url: '/', run: waitForCookiesDialog }],
|
||||
},
|
||||
{
|
||||
name: 'doc.demarche.numerique.gouv.fr',
|
||||
contentBaseURL: 'https://doc.demarche.numerique.gouv.fr',
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
{
|
||||
"name": "gitbook",
|
||||
"version": "0.28.1",
|
||||
"version": "0.28.0",
|
||||
"private": true,
|
||||
"dependencies": {
|
||||
"@base-ui/react": "catalog:",
|
||||
@@ -20,8 +20,8 @@
|
||||
"@gitbook/react-openapi": "workspace:*",
|
||||
"@mermaid-js/mermaid-zenuml": "^0.2.2",
|
||||
"@modelcontextprotocol/sdk": "1.17.5",
|
||||
"@opennextjs/aws": "4.1.15",
|
||||
"@opennextjs/cloudflare": "1.20.16",
|
||||
"@opennextjs/aws": "4.1.11",
|
||||
"@opennextjs/cloudflare": "1.20.12",
|
||||
"@panzoom/panzoom": "^4.6.1",
|
||||
"@sindresorhus/fnv1a": "^3.1.0",
|
||||
"@tailwindcss/container-queries": "^0.1.1",
|
||||
@@ -51,7 +51,7 @@
|
||||
"micromark-extension-gfm": "^3.0.0",
|
||||
"motion": "^12.23.24",
|
||||
"negotiator": "^1.0.0",
|
||||
"next": "^16.4.5",
|
||||
"next": "^16.4.3",
|
||||
"next-themes": "^0.4.6",
|
||||
"nuqs": "^2.2.3",
|
||||
"object-hash": "^3.0.0",
|
||||
|
||||
@@ -146,10 +146,6 @@ export function AIChatInput(props: {
|
||||
<Icon icon="message-question" className="size-3.5 opacity-7" />
|
||||
{t(language, 'ai_chat_context_previous_messages')}
|
||||
</li>
|
||||
<li className="flex items-center gap-2">
|
||||
<Icon icon="lock" className="size-3.5 opacity-7" />
|
||||
{t(language, 'ai_chat_context_sensitive_info')}
|
||||
</li>
|
||||
</ul>
|
||||
<p>{t(language, 'ai_chat_context_disclaimer')}</p>
|
||||
</div>
|
||||
|
||||
@@ -137,7 +137,6 @@ export const ar: TranslationLanguage = {
|
||||
ai_chat_context_pages_youve_read: 'الصفحة التي أنت عليها الآن',
|
||||
ai_chat_context_info_provided_by_the_site: 'معلومات عنك يوفرها الموقع',
|
||||
ai_chat_context_previous_messages: 'الرسائل في محادثتك',
|
||||
ai_chat_context_sensitive_info: 'لا تشارك معلومات شخصية حساسة',
|
||||
ai_chat_context_disclaimer: 'قد تحتوي إجابات الذكاء الاصطناعي على أخطاء.',
|
||||
ai_chat_input_placeholder: 'اسأل أو ابحث أو اشرح...',
|
||||
ai_chat_queued_message: 'سيتم إرسال هذه الرسالة بعد أن ينتهي ${1}',
|
||||
|
||||
@@ -141,7 +141,6 @@ export const bg: TranslationLanguage = {
|
||||
ai_chat_context_pages_youve_read: 'Страницата, на която сте в момента',
|
||||
ai_chat_context_info_provided_by_the_site: 'Информация за вас, предоставена от сайта',
|
||||
ai_chat_context_previous_messages: 'Съобщения във вашия разговор',
|
||||
ai_chat_context_sensitive_info: 'Не споделяйте чувствителна лична информация',
|
||||
ai_chat_context_disclaimer: 'AI отговорите може да съдържат грешки.',
|
||||
ai_chat_input_placeholder: 'Попитайте, потърсете или обяснете...',
|
||||
ai_chat_queued_message: 'Това съобщение ще бъде изпратено, след като ${1} приключи',
|
||||
|
||||
@@ -139,7 +139,6 @@ export const cs: TranslationLanguage = {
|
||||
ai_chat_context_pages_youve_read: 'Stránka, na které se právě nacházíte',
|
||||
ai_chat_context_info_provided_by_the_site: 'Informace o vás poskytnuté webem',
|
||||
ai_chat_context_previous_messages: 'Zprávy ve vaší konverzaci',
|
||||
ai_chat_context_sensitive_info: 'Nesdílejte citlivé osobní údaje',
|
||||
ai_chat_context_disclaimer: 'Odpovědi AI mohou obsahovat chyby.',
|
||||
ai_chat_input_placeholder: 'Zeptejte se, hledejte nebo vysvětlete...',
|
||||
ai_chat_queued_message: 'Tato zpráva se odešle, až ${1} dokončí odpověď',
|
||||
|
||||
@@ -138,7 +138,6 @@ export const da: TranslationLanguage = {
|
||||
ai_chat_context_pages_youve_read: 'Siden du er på nu',
|
||||
ai_chat_context_info_provided_by_the_site: 'Oplysninger om dig fra webstedet',
|
||||
ai_chat_context_previous_messages: 'Beskeder i din samtale',
|
||||
ai_chat_context_sensitive_info: 'Del ikke følsomme personoplysninger',
|
||||
ai_chat_context_disclaimer: 'AI-svar kan indeholde fejl.',
|
||||
ai_chat_input_placeholder: 'Spørg, søg eller forklar...',
|
||||
ai_chat_queued_message: 'Denne besked sendes, når ${1} er færdig',
|
||||
|
||||
@@ -145,7 +145,6 @@ export const de: TranslationLanguage = {
|
||||
ai_chat_context_info_provided_by_the_site:
|
||||
'Von der Website bereitgestellte Informationen über Sie',
|
||||
ai_chat_context_previous_messages: 'Nachrichten in Ihrem Gespräch',
|
||||
ai_chat_context_sensitive_info: 'Teilen Sie keine sensiblen persönlichen Daten',
|
||||
ai_chat_context_disclaimer: 'KI-Antworten können Fehler enthalten.',
|
||||
ai_chat_input_placeholder: 'Fragen, suchen oder erklären...',
|
||||
ai_chat_queued_message: 'Diese Nachricht wird gesendet, sobald ${1} fertig ist',
|
||||
|
||||
@@ -143,7 +143,6 @@ export const el: TranslationLanguage = {
|
||||
ai_chat_context_info_provided_by_the_site:
|
||||
'Πληροφορίες για εσάς που παρέχονται από τον ιστότοπο',
|
||||
ai_chat_context_previous_messages: 'Μηνύματα στη συνομιλία σας',
|
||||
ai_chat_context_sensitive_info: 'Μην κοινοποιείτε ευαίσθητες προσωπικές πληροφορίες',
|
||||
ai_chat_context_disclaimer: 'Οι απαντήσεις AI μπορεί να περιέχουν λάθη.',
|
||||
ai_chat_input_placeholder: 'Ρωτήστε, αναζητήστε ή εξηγήστε...',
|
||||
ai_chat_queued_message: 'Αυτό το μήνυμα θα σταλεί μόλις ολοκληρώσει ${1}',
|
||||
|
||||
@@ -137,7 +137,6 @@ export const en = {
|
||||
ai_chat_context_pages_youve_read: "The page you're on now",
|
||||
ai_chat_context_info_provided_by_the_site: 'Info about you provided by the site',
|
||||
ai_chat_context_previous_messages: 'Messages in your conversation',
|
||||
ai_chat_context_sensitive_info: "Don't share sensitive personal info",
|
||||
ai_chat_context_disclaimer: 'AI responses may contain mistakes.',
|
||||
ai_chat_input_placeholder: 'Ask, search, or explain...',
|
||||
ai_chat_queued_message: 'This message will be sent after ${1} finishes',
|
||||
|
||||
@@ -143,7 +143,6 @@ export const es: TranslationLanguage = {
|
||||
ai_chat_context_pages_youve_read: 'La página en la que estás ahora',
|
||||
ai_chat_context_info_provided_by_the_site: 'Información sobre ti proporcionada por el sitio',
|
||||
ai_chat_context_previous_messages: 'Mensajes de tu conversación',
|
||||
ai_chat_context_sensitive_info: 'No compartas información personal confidencial',
|
||||
ai_chat_context_disclaimer: 'Las respuestas de IA pueden contener errores.',
|
||||
ai_chat_input_placeholder: 'Pregunta, busca o explica...',
|
||||
ai_chat_queued_message: 'Este mensaje se enviará cuando ${1} termine',
|
||||
|
||||
@@ -139,7 +139,6 @@ export const et: TranslationLanguage = {
|
||||
ai_chat_context_pages_youve_read: 'Leht, kus te praegu asute',
|
||||
ai_chat_context_info_provided_by_the_site: 'Saidi pakutud teave teie kohta',
|
||||
ai_chat_context_previous_messages: 'Teie vestluse sõnumid',
|
||||
ai_chat_context_sensitive_info: 'Ärge jagage tundlikku isikuteavet',
|
||||
ai_chat_context_disclaimer: 'AI vastused võivad sisaldada vigu.',
|
||||
ai_chat_input_placeholder: 'Küsige, otsige või selgitage...',
|
||||
ai_chat_queued_message: 'See sõnum saadetakse, kui ${1} on lõpetanud',
|
||||
|
||||
@@ -140,7 +140,6 @@ export const fi: TranslationLanguage = {
|
||||
ai_chat_context_pages_youve_read: 'Sivu, jolla olet nyt',
|
||||
ai_chat_context_info_provided_by_the_site: 'Sivuston tarjoamat tiedot sinusta',
|
||||
ai_chat_context_previous_messages: 'Viestit keskustelussasi',
|
||||
ai_chat_context_sensitive_info: 'Älä jaa arkaluonteisia henkilötietoja',
|
||||
ai_chat_context_disclaimer: 'AI-vastaukset voivat sisältää virheitä.',
|
||||
ai_chat_input_placeholder: 'Kysy, hae tai selitä...',
|
||||
ai_chat_queued_message: 'Tämä viesti lähetetään, kun ${1} on valmis',
|
||||
|
||||
@@ -139,7 +139,6 @@ export const fr: TranslationLanguage = {
|
||||
ai_chat_context_pages_youve_read: 'La page sur laquelle vous êtes actuellement',
|
||||
ai_chat_context_info_provided_by_the_site: 'Informations vous concernant fournies par le site',
|
||||
ai_chat_context_previous_messages: 'Messages de votre conversation',
|
||||
ai_chat_context_sensitive_info: 'Ne partagez pas d’informations personnelles sensibles',
|
||||
ai_chat_context_disclaimer: 'Les réponses générées peuvent contenir des erreurs.',
|
||||
ai_chat_input_placeholder: 'Demander, rechercher ou expliquer...',
|
||||
ai_chat_queued_message: 'Ce message sera envoyé une fois que ${1} aura terminé',
|
||||
|
||||
@@ -136,7 +136,6 @@ export const he: TranslationLanguage = {
|
||||
ai_chat_context_pages_youve_read: 'הדף שאתה נמצא בו כעת',
|
||||
ai_chat_context_info_provided_by_the_site: 'מידע עליך שסופק על ידי האתר',
|
||||
ai_chat_context_previous_messages: 'הודעות בשיחה שלך',
|
||||
ai_chat_context_sensitive_info: 'אל תשתפו מידע אישי רגיש',
|
||||
ai_chat_context_disclaimer: 'תשובות AI עשויות להכיל טעויות.',
|
||||
ai_chat_input_placeholder: 'שאל, חפש או הסבר...',
|
||||
ai_chat_queued_message: 'הודעה זו תישלח לאחר ש-${1} יסיים',
|
||||
|
||||
@@ -138,7 +138,6 @@ export const hi: TranslationLanguage = {
|
||||
ai_chat_context_pages_youve_read: 'वह पृष्ठ जिस पर आप अभी हैं',
|
||||
ai_chat_context_info_provided_by_the_site: 'साइट द्वारा प्रदान की गई आपके बारे में जानकारी',
|
||||
ai_chat_context_previous_messages: 'आपकी बातचीत के संदेश',
|
||||
ai_chat_context_sensitive_info: 'संवेदनशील व्यक्तिगत जानकारी साझा न करें',
|
||||
ai_chat_context_disclaimer: 'AI उत्तरों में गलतियां हो सकती हैं।',
|
||||
ai_chat_input_placeholder: 'पूछें, खोजें या समझाएं...',
|
||||
ai_chat_queued_message: 'यह संदेश ${1} के समाप्त होने के बाद भेजा जाएगा',
|
||||
|
||||
@@ -139,7 +139,6 @@ export const hr: TranslationLanguage = {
|
||||
ai_chat_context_pages_youve_read: 'Stranica na kojoj se trenutno nalazite',
|
||||
ai_chat_context_info_provided_by_the_site: 'Informacije o vama koje pruža web-mjesto',
|
||||
ai_chat_context_previous_messages: 'Poruke u vašem razgovoru',
|
||||
ai_chat_context_sensitive_info: 'Ne dijelite osjetljive osobne podatke',
|
||||
ai_chat_context_disclaimer: 'AI odgovori mogu sadržavati pogreške.',
|
||||
ai_chat_input_placeholder: 'Pitajte, pretražite ili objasnite...',
|
||||
ai_chat_queued_message: 'Ova poruka bit će poslana kada ${1} završi',
|
||||
|
||||
@@ -141,7 +141,6 @@ export const hu: TranslationLanguage = {
|
||||
ai_chat_context_info_provided_by_the_site:
|
||||
'Az Önről szóló, a webhely által megadott információk',
|
||||
ai_chat_context_previous_messages: 'Üzenetek a beszélgetésében',
|
||||
ai_chat_context_sensitive_info: 'Ne osszon meg érzékeny személyes adatokat',
|
||||
ai_chat_context_disclaimer: 'Az AI-válaszok hibákat tartalmazhatnak.',
|
||||
ai_chat_input_placeholder: 'Kérdezzen, keressen vagy magyarázzon...',
|
||||
ai_chat_queued_message: 'Ez az üzenet akkor lesz elküldve, amikor ${1} befejezi',
|
||||
|
||||
@@ -138,7 +138,6 @@ export const id: TranslationLanguage = {
|
||||
ai_chat_context_pages_youve_read: 'Halaman tempat Anda berada sekarang',
|
||||
ai_chat_context_info_provided_by_the_site: 'Info tentang Anda yang disediakan oleh situs',
|
||||
ai_chat_context_previous_messages: 'Pesan dalam percakapan Anda',
|
||||
ai_chat_context_sensitive_info: 'Jangan bagikan informasi pribadi yang sensitif',
|
||||
ai_chat_context_disclaimer: 'Jawaban AI dapat berisi kesalahan.',
|
||||
ai_chat_input_placeholder: 'Tanya, cari, atau jelaskan...',
|
||||
ai_chat_queued_message: 'Pesan ini akan dikirim setelah ${1} selesai',
|
||||
|
||||
@@ -142,7 +142,6 @@ export const it: TranslationLanguage = {
|
||||
ai_chat_context_pages_youve_read: 'La pagina su cui ti trovi ora',
|
||||
ai_chat_context_info_provided_by_the_site: 'Informazioni su di te fornite dal sito',
|
||||
ai_chat_context_previous_messages: 'Messaggi nella tua conversazione',
|
||||
ai_chat_context_sensitive_info: 'Non condividere informazioni personali sensibili',
|
||||
ai_chat_context_disclaimer: "Le risposte dell'IA possono contenere errori.",
|
||||
ai_chat_input_placeholder: 'Chiedi, cerca o spiega...',
|
||||
ai_chat_queued_message: 'Questo messaggio verrà inviato quando ${1} avrà finito',
|
||||
|
||||
@@ -139,7 +139,6 @@ export const ja: TranslationLanguage = {
|
||||
ai_chat_context_pages_youve_read: '現在表示中のページ',
|
||||
ai_chat_context_info_provided_by_the_site: 'サイトから提供されるあなたに関する情報',
|
||||
ai_chat_context_previous_messages: '会話内のメッセージ',
|
||||
ai_chat_context_sensitive_info: '機密性の高い個人情報は共有しないでください',
|
||||
ai_chat_context_disclaimer: 'AIの回答には誤りが含まれる場合があります。',
|
||||
ai_chat_input_placeholder: '質問、検索、または説明...',
|
||||
ai_chat_queued_message: '${1}の応答が完了したら、このメッセージが送信されます',
|
||||
|
||||
@@ -139,7 +139,6 @@ export const ko: TranslationLanguage = {
|
||||
ai_chat_context_pages_youve_read: '현재 보고 있는 페이지',
|
||||
ai_chat_context_info_provided_by_the_site: '사이트에서 제공하는 회원님에 대한 정보',
|
||||
ai_chat_context_previous_messages: '대화의 메시지',
|
||||
ai_chat_context_sensitive_info: '민감한 개인 정보를 공유하지 마세요',
|
||||
ai_chat_context_disclaimer: 'AI 응답에는 오류가 있을 수 있습니다.',
|
||||
ai_chat_input_placeholder: '질문, 검색 또는 설명...',
|
||||
ai_chat_queued_message: '${1}의 응답이 끝나면 이 메시지가 전송됩니다',
|
||||
|
||||
@@ -139,7 +139,6 @@ export const lt: TranslationLanguage = {
|
||||
ai_chat_context_pages_youve_read: 'Puslapis, kuriame šiuo metu esate',
|
||||
ai_chat_context_info_provided_by_the_site: 'Svetainės pateikta informacija apie jus',
|
||||
ai_chat_context_previous_messages: 'Pranešimai jūsų pokalbyje',
|
||||
ai_chat_context_sensitive_info: 'Nebendrinkite jautrios asmeninės informacijos',
|
||||
ai_chat_context_disclaimer: 'AI atsakymuose gali būti klaidų.',
|
||||
ai_chat_input_placeholder: 'Klauskite, ieškokite arba paaiškinkite...',
|
||||
ai_chat_queued_message: 'Ši žinutė bus išsiųsta, kai ${1} baigs',
|
||||
|
||||
@@ -138,7 +138,6 @@ export const lv: TranslationLanguage = {
|
||||
ai_chat_context_pages_youve_read: 'Lapa, kurā pašlaik atrodaties',
|
||||
ai_chat_context_info_provided_by_the_site: 'Vietnes sniegtā informācija par jums',
|
||||
ai_chat_context_previous_messages: 'Ziņojumi jūsų sarunā',
|
||||
ai_chat_context_sensitive_info: 'Nekopīgojiet sensitīvu personisko informāciju',
|
||||
ai_chat_context_disclaimer: 'AI atbildēs var būt kļūdas.',
|
||||
ai_chat_input_placeholder: 'Jautājiet, meklējiet vai skaidrojiet...',
|
||||
ai_chat_queued_message: 'Šī ziņa tiks nosūtīta, kad ${1} būs pabeidzis',
|
||||
|
||||
@@ -138,7 +138,6 @@ export const ms: TranslationLanguage = {
|
||||
ai_chat_context_pages_youve_read: 'Halaman yang anda berada sekarang',
|
||||
ai_chat_context_info_provided_by_the_site: 'Maklumat tentang anda yang disediakan oleh laman',
|
||||
ai_chat_context_previous_messages: 'Mesej dalam perbualan anda',
|
||||
ai_chat_context_sensitive_info: 'Jangan kongsi maklumat peribadi yang sensitif',
|
||||
ai_chat_context_disclaimer: 'Jawapan AI mungkin mengandungi kesilapan.',
|
||||
ai_chat_input_placeholder: 'Tanya, cari atau jelaskan...',
|
||||
ai_chat_queued_message: 'Mesej ini akan dihantar setelah ${1} selesai',
|
||||
|
||||
@@ -141,7 +141,6 @@ export const nl: TranslationLanguage = {
|
||||
ai_chat_context_pages_youve_read: 'De pagina waar je nu op bent',
|
||||
ai_chat_context_info_provided_by_the_site: 'Informatie over jou verstrekt door de site',
|
||||
ai_chat_context_previous_messages: 'Berichten in je gesprek',
|
||||
ai_chat_context_sensitive_info: 'Deel geen gevoelige persoonlijke gegevens',
|
||||
ai_chat_context_disclaimer: 'AI-antwoorden kunnen fouten bevatten.',
|
||||
ai_chat_input_placeholder: 'Vraag, zoek of leg uit...',
|
||||
ai_chat_queued_message: 'Dit bericht wordt verzonden zodra ${1} klaar is',
|
||||
|
||||
@@ -141,7 +141,6 @@ export const no: TranslationLanguage = {
|
||||
ai_chat_context_pages_youve_read: 'Siden du er på nå',
|
||||
ai_chat_context_info_provided_by_the_site: 'Informasjon om deg gitt av nettstedet',
|
||||
ai_chat_context_previous_messages: 'Meldinger i samtalen din',
|
||||
ai_chat_context_sensitive_info: 'Ikke del sensitive personopplysninger',
|
||||
ai_chat_context_disclaimer: 'AI-svar kan inneholde feil.',
|
||||
ai_chat_input_placeholder: 'Spør, søk eller forklar...',
|
||||
ai_chat_queued_message: 'Denne meldingen sendes når ${1} er ferdig',
|
||||
|
||||
@@ -140,7 +140,6 @@ export const pl: TranslationLanguage = {
|
||||
ai_chat_context_pages_youve_read: 'Strona, na której jesteś teraz',
|
||||
ai_chat_context_info_provided_by_the_site: 'Informacje o Tobie podane przez stronę',
|
||||
ai_chat_context_previous_messages: 'Wiadomości w Twojej rozmowie',
|
||||
ai_chat_context_sensitive_info: 'Nie udostępniaj poufnych danych osobowych',
|
||||
ai_chat_context_disclaimer: 'Odpowiedzi AI mogą zawierać błędy.',
|
||||
ai_chat_input_placeholder: 'Zapytaj, wyszukaj lub wyjaśnij...',
|
||||
ai_chat_queued_message: 'Ta wiadomość zostanie wysłana, gdy ${1} zakończy',
|
||||
|
||||
@@ -143,7 +143,6 @@ export const pt_br: TranslationLanguage = {
|
||||
ai_chat_context_pages_youve_read: 'A página em que você está agora',
|
||||
ai_chat_context_info_provided_by_the_site: 'Informações sobre você fornecidas pelo site',
|
||||
ai_chat_context_previous_messages: 'Mensagens na sua conversa',
|
||||
ai_chat_context_sensitive_info: 'Não compartilhe informações pessoais sensíveis',
|
||||
ai_chat_context_disclaimer: 'Respostas de IA podem conter erros.',
|
||||
ai_chat_input_placeholder: 'Pergunte, pesquise ou explique...',
|
||||
ai_chat_queued_message: 'Esta mensagem será enviada quando ${1} terminar',
|
||||
|
||||
@@ -140,7 +140,6 @@ export const pt: TranslationLanguage = {
|
||||
ai_chat_context_pages_youve_read: 'A página em que se encontra agora',
|
||||
ai_chat_context_info_provided_by_the_site: 'Informações sobre si fornecidas pelo site',
|
||||
ai_chat_context_previous_messages: 'Mensagens na sua conversa',
|
||||
ai_chat_context_sensitive_info: 'Não partilhe informações pessoais sensíveis',
|
||||
ai_chat_context_disclaimer: 'As respostas de IA podem conter erros.',
|
||||
ai_chat_input_placeholder: 'Pergunte, pesquise ou explique...',
|
||||
ai_chat_queued_message: 'Esta mensagem será enviada quando ${1} terminar',
|
||||
|
||||
@@ -142,7 +142,6 @@ export const ro: TranslationLanguage = {
|
||||
ai_chat_context_pages_youve_read: 'Pagina pe care te afli acum',
|
||||
ai_chat_context_info_provided_by_the_site: 'Informații despre tine furnizate de site',
|
||||
ai_chat_context_previous_messages: 'Mesaje din conversația ta',
|
||||
ai_chat_context_sensitive_info: 'Nu partajați informații personale sensibile',
|
||||
ai_chat_context_disclaimer: 'Răspunsurile AI pot conține greșeli.',
|
||||
ai_chat_input_placeholder: 'Întreabă, caută sau explică...',
|
||||
ai_chat_queued_message: 'Acest mesaj va fi trimis după ce ${1} termină',
|
||||
|
||||
@@ -142,7 +142,6 @@ export const ru: TranslationLanguage = {
|
||||
ai_chat_context_pages_youve_read: 'Страница, на которой вы сейчас находитесь',
|
||||
ai_chat_context_info_provided_by_the_site: 'Информация о вас, предоставленная сайтом',
|
||||
ai_chat_context_previous_messages: 'Сообщения в вашем разговоре',
|
||||
ai_chat_context_sensitive_info: 'Не передавайте конфиденциальную личную информацию',
|
||||
ai_chat_context_disclaimer: 'Ответы ИИ могут содержать ошибки.',
|
||||
ai_chat_input_placeholder: 'Спросите, найдите или объясните...',
|
||||
ai_chat_queued_message: 'Это сообщение будет отправлено, когда ${1} закончит',
|
||||
|
||||
@@ -141,7 +141,6 @@ export const sk: TranslationLanguage = {
|
||||
ai_chat_context_pages_youve_read: 'Stránka, na ktorej sa práve nachádzate',
|
||||
ai_chat_context_info_provided_by_the_site: 'Informácie o vás poskytnuté stránkou',
|
||||
ai_chat_context_previous_messages: 'Správy vo vašej konverzácii',
|
||||
ai_chat_context_sensitive_info: 'Nezdieľajte citlivé osobné údaje',
|
||||
ai_chat_context_disclaimer: 'Odpovede AI môžu obsahovať chyby.',
|
||||
ai_chat_input_placeholder: 'Pýtajte sa, hľadajte alebo vysvetľujte...',
|
||||
ai_chat_queued_message: 'Táto správa sa odošle, keď ${1} skončí',
|
||||
|
||||
@@ -140,7 +140,6 @@ export const sl: TranslationLanguage = {
|
||||
ai_chat_context_pages_youve_read: 'Stran, na kateri se trenutno nahajate',
|
||||
ai_chat_context_info_provided_by_the_site: 'Informacije o vas, ki jih zagotavlja spletno mesto',
|
||||
ai_chat_context_previous_messages: 'Sporočila v vašem pogovoru',
|
||||
ai_chat_context_sensitive_info: 'Ne delite občutljivih osebnih podatkov',
|
||||
ai_chat_context_disclaimer: 'Odgovori AI lahko vsebujejo napake.',
|
||||
ai_chat_input_placeholder: 'Vprašajte, iščite ali razložite...',
|
||||
ai_chat_queued_message: 'To sporočilo bo poslano, ko ${1} zaključi',
|
||||
|
||||
@@ -140,7 +140,6 @@ export const sv: TranslationLanguage = {
|
||||
ai_chat_context_pages_youve_read: 'Sidan du är på nu',
|
||||
ai_chat_context_info_provided_by_the_site: 'Information om dig från webbplatsen',
|
||||
ai_chat_context_previous_messages: 'Meddelanden i din konversation',
|
||||
ai_chat_context_sensitive_info: 'Dela inte känsliga personuppgifter',
|
||||
ai_chat_context_disclaimer: 'AI-svar kan innehålla fel.',
|
||||
ai_chat_input_placeholder: 'Fråga, sök eller förklara...',
|
||||
ai_chat_queued_message: 'Det här meddelandet skickas när ${1} är klar',
|
||||
|
||||
@@ -135,7 +135,6 @@ export const th: TranslationLanguage = {
|
||||
ai_chat_context_pages_youve_read: 'หน้าที่คุณอยู่ตอนนี้',
|
||||
ai_chat_context_info_provided_by_the_site: 'ข้อมูลเกี่ยวกับคุณที่เว็บไซต์ให้ไว้',
|
||||
ai_chat_context_previous_messages: 'ข้อความในการสนทนาของคุณ',
|
||||
ai_chat_context_sensitive_info: 'โปรดอย่าแชร์ข้อมูลส่วนบุคคลที่ละเอียดอ่อน',
|
||||
ai_chat_context_disclaimer: 'คำตอบจาก AI อาจมีข้อผิดพลาด',
|
||||
ai_chat_input_placeholder: 'ถาม ค้นหา หรืออธิบาย...',
|
||||
ai_chat_queued_message: 'ข้อความนี้จะถูกส่งหลังจากที่ ${1} เสร็จสิ้น',
|
||||
|
||||
@@ -138,7 +138,6 @@ export const tr: TranslationLanguage = {
|
||||
ai_chat_context_pages_youve_read: 'Şu anda bulunduğunuz sayfa',
|
||||
ai_chat_context_info_provided_by_the_site: 'Site tarafından sağlanan sizinle ilgili bilgiler',
|
||||
ai_chat_context_previous_messages: 'Konuşmanızdaki mesajlar',
|
||||
ai_chat_context_sensitive_info: 'Hassas kişisel bilgileri paylaşmayın',
|
||||
ai_chat_context_disclaimer: 'AI yanıtları hata içerebilir.',
|
||||
ai_chat_input_placeholder: 'Sor, ara veya açıkla...',
|
||||
ai_chat_queued_message: 'Bu mesaj, ${1} yanıtını tamamladıktan sonra gönderilecek',
|
||||
|
||||
@@ -138,7 +138,6 @@ export const uk: TranslationLanguage = {
|
||||
ai_chat_context_pages_youve_read: 'Сторінка, на якій ви зараз перебуваєте',
|
||||
ai_chat_context_info_provided_by_the_site: 'Інформація про вас, надана сайтом',
|
||||
ai_chat_context_previous_messages: 'Повідомлення у вашій розмові',
|
||||
ai_chat_context_sensitive_info: 'Не діліться конфіденційною особистою інформацією',
|
||||
ai_chat_context_disclaimer: 'Відповіді AI можуть містити помилки.',
|
||||
ai_chat_input_placeholder: 'Запитайте, знайдіть або поясніть...',
|
||||
ai_chat_queued_message: 'Це повідомлення буде надіслано, коли ${1} завершить',
|
||||
|
||||
@@ -138,7 +138,6 @@ export const vi: TranslationLanguage = {
|
||||
ai_chat_context_pages_youve_read: 'Trang bạn đang ở hiện tại',
|
||||
ai_chat_context_info_provided_by_the_site: 'Thông tin về bạn do trang web cung cấp',
|
||||
ai_chat_context_previous_messages: 'Tin nhắn trong cuộc trò chuyện của bạn',
|
||||
ai_chat_context_sensitive_info: 'Không chia sẻ thông tin cá nhân nhạy cảm',
|
||||
ai_chat_context_disclaimer: 'Câu trả lời AI có thể chứa lỗi.',
|
||||
ai_chat_input_placeholder: 'Hỏi, tìm kiếm hoặc giải thích...',
|
||||
ai_chat_queued_message: 'Tin nhắn này sẽ được gửi sau khi ${1} hoàn tất',
|
||||
|
||||
@@ -134,7 +134,6 @@ export const yue: TranslationLanguage = {
|
||||
ai_chat_context_pages_youve_read: '你而家喺嘅頁面',
|
||||
ai_chat_context_info_provided_by_the_site: '網站提供嘅關於你嘅資訊',
|
||||
ai_chat_context_previous_messages: '你對話入面嘅訊息',
|
||||
ai_chat_context_sensitive_info: '唔好分享敏感個人資料',
|
||||
ai_chat_context_disclaimer: 'AI 回答可能有錯。',
|
||||
ai_chat_input_placeholder: '發問、搜尋或說明...',
|
||||
ai_chat_queued_message: '呢個訊息會喺 ${1} 完成後發送',
|
||||
|
||||
@@ -134,7 +134,6 @@ export const zh_tw: TranslationLanguage = {
|
||||
ai_chat_context_pages_youve_read: '您目前所在的頁面',
|
||||
ai_chat_context_info_provided_by_the_site: '網站提供的關於您的資訊',
|
||||
ai_chat_context_previous_messages: '您對話中的訊息',
|
||||
ai_chat_context_sensitive_info: '請勿分享敏感個人資料',
|
||||
ai_chat_context_disclaimer: 'AI 回答可能包含錯誤。',
|
||||
ai_chat_input_placeholder: '提問、搜尋或說明...',
|
||||
ai_chat_queued_message: '這則訊息將在 ${1} 完成後傳送',
|
||||
|
||||
@@ -135,7 +135,6 @@ export const zh: TranslationLanguage = {
|
||||
ai_chat_context_pages_youve_read: '您当前所在的页面',
|
||||
ai_chat_context_info_provided_by_the_site: '网站提供的关于您的信息',
|
||||
ai_chat_context_previous_messages: '您对话中的消息',
|
||||
ai_chat_context_sensitive_info: '请勿分享敏感个人信息',
|
||||
ai_chat_context_disclaimer: '人工智能的回答可能包含错误。',
|
||||
ai_chat_input_placeholder: '询问、搜索或解释...',
|
||||
ai_chat_queued_message: '此消息将在 ${1} 完成后发送',
|
||||
|
||||
@@ -1,36 +0,0 @@
|
||||
import { describe, expect, it } from 'bun:test';
|
||||
|
||||
import {
|
||||
DISALLOW_ALL_ROBOTS_TXT_LINES,
|
||||
createRobotsTxtResponse,
|
||||
isRobotsTxtRequest,
|
||||
} from './robots';
|
||||
|
||||
describe('isRobotsTxtRequest', () => {
|
||||
it('matches robots.txt at the root of the host', () => {
|
||||
expect(isRobotsTxtRequest(new URL('https://docs.example.com/robots.txt'))).toBe(true);
|
||||
});
|
||||
|
||||
it('matches robots.txt under a site base path', () => {
|
||||
expect(isRobotsTxtRequest(new URL('https://example.com/docs/v2/robots.txt'))).toBe(true);
|
||||
});
|
||||
|
||||
it('ignores other paths', () => {
|
||||
expect(isRobotsTxtRequest(new URL('https://docs.example.com/'))).toBe(false);
|
||||
expect(isRobotsTxtRequest(new URL('https://docs.example.com/sitemap.xml'))).toBe(false);
|
||||
expect(isRobotsTxtRequest(new URL('https://docs.example.com/my-robots.txt'))).toBe(false);
|
||||
expect(isRobotsTxtRequest(new URL('https://docs.example.com/robots.txt/page'))).toBe(false);
|
||||
});
|
||||
});
|
||||
|
||||
describe('createRobotsTxtResponse', () => {
|
||||
it('serves a disallow-all robots.txt as plain text', async () => {
|
||||
const response = createRobotsTxtResponse(DISALLOW_ALL_ROBOTS_TXT_LINES);
|
||||
|
||||
expect(response.status).toBe(200);
|
||||
expect(response.headers.get('content-type')).toBe('text/plain');
|
||||
expect(await response.text()).toBe(
|
||||
'User-agent: *\nContent-Signal: ai-train=no, search=no, ai-input=no\nDisallow: /\n'
|
||||
);
|
||||
});
|
||||
});
|
||||
@@ -1,18 +0,0 @@
|
||||
import { NextResponse } from 'next/server';
|
||||
|
||||
export const DISALLOW_ALL_ROBOTS_TXT_LINES = [
|
||||
'User-agent: *',
|
||||
'Content-Signal: ai-train=no, search=no, ai-input=no',
|
||||
'Disallow: /',
|
||||
];
|
||||
|
||||
export function createRobotsTxtResponse(lines: string[]) {
|
||||
return new NextResponse(`${lines.join('\n')}\n`, {
|
||||
headers: { 'Content-Type': 'text/plain' },
|
||||
});
|
||||
}
|
||||
|
||||
// Matches under any base path, like the signed-in route: a sign-in redirect doesn't tell us the site's base path.
|
||||
export function isRobotsTxtRequest(siteRequestURL: URL) {
|
||||
return siteRequestURL.pathname.endsWith('/robots.txt');
|
||||
}
|
||||
@@ -55,11 +55,6 @@ import {
|
||||
parsePreviewCustomizationCookie,
|
||||
serializePreviewCustomizationCookie,
|
||||
} from '@/lib/preview';
|
||||
import {
|
||||
DISALLOW_ALL_ROBOTS_TXT_LINES,
|
||||
createRobotsTxtResponse,
|
||||
isRobotsTxtRequest,
|
||||
} from '@/lib/robots';
|
||||
import {
|
||||
type ResponseCookies,
|
||||
getPathScopedCookieName,
|
||||
@@ -279,12 +274,6 @@ async function serveSiteRoutes(requestURL: URL, request: NextRequest) {
|
||||
});
|
||||
}
|
||||
|
||||
// Crawlers can't sign in: redirecting them to the login page makes search engines
|
||||
// report a broken robots.txt and keep crawling, so tell them to stay away instead.
|
||||
if (siteURLData.target === 'external' && isRobotsTxtRequest(siteRequestURL)) {
|
||||
return createRobotsTxtResponse(DISALLOW_ALL_ROBOTS_TXT_LINES);
|
||||
}
|
||||
|
||||
// When it is a server action, we cannot just return a redirect response as it may cause CORS issues on redirect.
|
||||
// For these cases, we return a 303 response with an `X-Action-Redirect` header that the client can handle.
|
||||
// This is what server actions do when returning a redirect response.
|
||||
|
||||
@@ -1,7 +1,6 @@
|
||||
import { SiteVisibility } from '@gitbook/api';
|
||||
|
||||
import { type GitBookSiteContext, checkIsRootSiteContext } from '@/lib/context';
|
||||
import { DISALLOW_ALL_ROBOTS_TXT_LINES, createRobotsTxtResponse } from '@/lib/robots';
|
||||
import { isSiteIndexable } from '@/lib/seo';
|
||||
|
||||
/**
|
||||
@@ -50,8 +49,10 @@ export async function serveRobotsTxt(context: GitBookSiteContext) {
|
||||
'',
|
||||
])
|
||||
: []),
|
||||
...DISALLOW_ALL_ROBOTS_TXT_LINES,
|
||||
'User-agent: *',
|
||||
'Content-Signal: ai-train=no, search=no, ai-input=no',
|
||||
'Disallow: /',
|
||||
];
|
||||
|
||||
return createRobotsTxtResponse(lines);
|
||||
return new Response(`${lines.join('\n')}\n`, { headers: { 'Content-Type': 'text/plain' } });
|
||||
}
|
||||
|
||||
@@ -1,11 +1,5 @@
|
||||
# @gitbook/openapi-parser
|
||||
|
||||
## 3.0.14
|
||||
|
||||
### Patch Changes
|
||||
|
||||
- 4dfe630: Bump @scalar/openapi-parser to 0.29 so valid OpenAPI 3.2 documents no longer report false validation errors.
|
||||
|
||||
## 3.0.13
|
||||
|
||||
### Patch Changes
|
||||
|
||||
@@ -8,7 +8,7 @@
|
||||
"default": "./dist/index.js"
|
||||
}
|
||||
},
|
||||
"version": "3.0.14",
|
||||
"version": "3.0.13",
|
||||
"sideEffects": false,
|
||||
"dependencies": {
|
||||
"@scalar/json-magic": "^0.17.0",
|
||||
|
||||
@@ -1,11 +1,5 @@
|
||||
# @gitbook/react-contentkit
|
||||
|
||||
## 0.7.18
|
||||
|
||||
### Patch Changes
|
||||
|
||||
- 04f39f1: Load a webframe only once it is near the viewport. A page can hold hundreds of them inside collapsed expandables, and loading every one on mount held up the first paint.
|
||||
|
||||
## 0.7.17
|
||||
|
||||
### Patch Changes
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
{
|
||||
"name": "@gitbook/react-contentkit",
|
||||
"version": "0.7.18",
|
||||
"version": "0.7.17",
|
||||
"type": "module",
|
||||
"exports": {
|
||||
".": {
|
||||
|
||||
@@ -1,12 +1,5 @@
|
||||
# @gitbook/react-openapi
|
||||
|
||||
## 2.0.1
|
||||
|
||||
### Patch Changes
|
||||
|
||||
- Updated dependencies [4dfe630]
|
||||
- @gitbook/openapi-parser@3.0.14
|
||||
|
||||
## 2.0.0
|
||||
|
||||
### Major Changes
|
||||
|
||||
@@ -7,7 +7,7 @@
|
||||
"default": "./dist/index.js"
|
||||
}
|
||||
},
|
||||
"version": "2.0.1",
|
||||
"version": "2.0.0",
|
||||
"sideEffects": false,
|
||||
"dependencies": {
|
||||
"@base-ui/react": "catalog:",
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
diff --git a/dist/compiled/next-server/app-page.runtime.dev.js b/dist/compiled/next-server/app-page.runtime.dev.js
|
||||
index ee264ffef478ba5dbc51e83d3c4efc9b9fa84ab0..5774304e84f7d33362d4cb37a97a571783a9fa2a 100644
|
||||
index 8c24deba180e52b8732b0b98447a14a4c973a1d9..23647ebd4bcb763a383cc2b5a01c4bd9eba504fd 100644
|
||||
--- a/dist/compiled/next-server/app-page.runtime.dev.js
|
||||
+++ b/dist/compiled/next-server/app-page.runtime.dev.js
|
||||
@@ -1,5 +1,5 @@
|
||||
Reference in New Issue
Block a user