diff --git a/docs/next.config.ts b/docs/next.config.ts index e90ec8085a7a44..7f03ab86464032 100644 --- a/docs/next.config.ts +++ b/docs/next.config.ts @@ -265,6 +265,9 @@ export default withDocsInfra({ // falls back to the pnpm symlink (→ `packages/mui-material/build/`), which // is empty unless the package has been built. transpilePackages: [ + // ESM-only, and its CJS `@algolia/autocomplete-core` dependency breaks + // named-export interop when Next externalizes it for SSR. + '@docsearch/react', '@mui/x-charts', '@mui/x-data-grid', '@mui/x-data-grid-pro', diff --git a/packages-internal/core-docs/src/AppLayout/components/AppSearch.tsx b/packages-internal/core-docs/src/AppLayout/components/AppSearch.tsx index 2efa9851bc33f9..45a80ebd3f100f 100644 --- a/packages-internal/core-docs/src/AppLayout/components/AppSearch.tsx +++ b/packages-internal/core-docs/src/AppLayout/components/AppSearch.tsx @@ -221,7 +221,7 @@ export interface AppSearchProps { export function AppSearch(props: AppSearchProps) { useLazyCSS( - 'https://cdn.jsdelivr.net/npm/@docsearch/css@4.7.0/dist/style.min.css', + 'https://cdn.jsdelivr.net/npm/@docsearch/css@5.0.1/dist/style.min.css', '#app-search', { layer: 'docsearch' }, ); @@ -260,8 +260,8 @@ export function AppSearch(props: AppSearchProps) { setInitialQuery(undefined); }, [setIsOpen, setInitialQuery]); - // v4's useDocSearchKeyboardEvents no longer opens the modal when the user types on the - // focused search button (onInput/searchButtonRef are deprecated no-ops), so restore it here. + // useDocSearchKeyboardEvents no longer opens the modal when the user types on the focused + // search button (onInput/searchButtonRef are deprecated no-ops), so restore it here. const handleSearchButtonKeyDown = React.useCallback( (event: React.KeyboardEvent) => { if (/^[a-zA-Z0-9]$/.test(event.key) && !event.metaKey && !event.ctrlKey && !event.altKey) { @@ -306,8 +306,8 @@ export function AppSearch(props: AppSearchProps) { }; // Host the start screen inside the dropdown so recent searches and the product links share - // one fixed-height scroll container (as in v3) instead of stacking and growing the modal. - // v4 only renders the dropdown when it has content, so fall back to the modal. + // one fixed-height scroll container instead of stacking and growing the modal. + // DocSearch only renders the dropdown when it has content, so fall back to the modal. const setup = () => { const parent = document.querySelector('.DocSearch-Dropdown') ?? @@ -369,29 +369,34 @@ export function AppSearch(props: AppSearchProps) { initialQuery={initialQuery} appId="TZGZ85B9TB" apiKey="8177dfb3e2be72b241ffb8c5abafa899" - indexName={process.env.SEARCH_INDEX!} - searchParameters={{ - facetFilters: ['version:master', facetFilterLanguage], - filters, - optionalFilters, - attributesToRetrieve: [ - // Copied from https://github.com/algolia/docsearch/blob/ce0c865cd8767e961ce3088b3155fc982d4c2e2e/packages/docsearch-react/src/DocSearchModal.tsx#L231 - 'hierarchy.lvl0', - 'hierarchy.lvl1', - 'hierarchy.lvl2', - 'hierarchy.lvl3', - 'hierarchy.lvl4', - 'hierarchy.lvl5', - 'content', - 'type', - 'url', - // Extra - 'productId', - 'productCategoryId', - ], - analyticsTags: [facetFilterLanguage, `product:${pageContext.productId}`], - hitsPerPage: 40, - }} + indices={[ + { + name: process.env.SEARCH_INDEX!, + searchParameters: { + facetFilters: ['version:master', facetFilterLanguage], + filters, + optionalFilters, + attributesToRetrieve: [ + // Copied from https://github.com/algolia/docsearch/blob/c82dad7f39b381bcd8bf279bda1e9360c80151a6/packages/docsearch-react/src/utils/createDocSearchSources.ts + 'hierarchy.lvl0', + 'hierarchy.lvl1', + 'hierarchy.lvl2', + 'hierarchy.lvl3', + 'hierarchy.lvl4', + 'hierarchy.lvl5', + 'hierarchy.lvl6', + 'content', + 'type', + 'url', + // Extra + 'productId', + 'productCategoryId', + ], + analyticsTags: [facetFilterLanguage, `product:${pageContext.productId}`], + hitsPerPage: 40, + }, + }, + ]} placeholder={`${t('algoliaSearch')}`} transformItems={(items) => { return items.map((item) => { @@ -415,8 +420,6 @@ export function AppSearch(props: AppSearchProps) { hitComponent={DocSearchHit} initialScrollY={typeof window !== 'undefined' ? window.scrollY : 0} onClose={onClose} - // MUI docs don't use the Ask AI feature. - onAskAiToggle={noop} navigator={keyboardNavigator} />, document.body, @@ -431,7 +434,7 @@ export function AppSearch(props: AppSearchProps) { '--docsearch-highlight-color': (theme.vars || theme).palette.primary[600], '--docsearch-text-color': (theme.vars || theme).palette.text.primary, '--docsearch-muted-color': (theme.vars || theme).palette.grey[600], - // Keep the v4 muted icons/text (hit icon, no-results text, idle magnifier, screen + // Keep the muted icons/text (hit icon, no-results text, idle magnifier, screen // icons) on MUI's muted grey instead of Algolia's default purple-grey. '--docsearch-secondary-text-color': 'var(--docsearch-muted-color)', '--docsearch-icon-color': 'var(--docsearch-muted-color)', @@ -444,9 +447,12 @@ export function AppSearch(props: AppSearchProps) { '--docsearch-searchbox-focus-background': 'unset', '--docsearch-footer-background': 'unset', '--docsearch-modal-background': (theme.vars || theme).palette.background.paper, + // v5 forces a system font stack on the modal. Keep the docs typeface: the + // different metrics also push the hit title underline past its overflow clip. + '--docsearch-font-family': 'inherit', '--docsearch-hit-height': '52px', - // Height left for the scrollable area between the search bar and the footer. v4 - // dropped the search box from its own budget, which makes the modal overshoot + // Height left for the scrollable area between the search bar and the footer. + // DocSearch drops the search box from its own budget, which makes the modal overshoot // --docsearch-modal-height; subtract it again so the modal stays 600px. '--muidocs-docsearch-content-max-height': 'calc(var(--docsearch-modal-height) - var(--docsearch-searchbox-height) - var(--docsearch-spacing) - var(--docsearch-footer-height))', @@ -547,10 +553,10 @@ export function AppSearch(props: AppSearchProps) { padding: theme.spacing(0.5, 1), }, '& .DocSearch-Form': { - // v4 form defaults to 12px 16px; drop the right padding so the "esc" chip sits - // near the edge (v3 rendered the close button outside the form). + // The form defaults to 12px 16px; drop the right padding so the "esc" chip sits + // near the edge. padding: theme.spacing(1.5, 0, 1.5, 1.5), - // v4 adds a form border-bottom; remove it as the divider lives on the search bar. + // Remove the form border-bottom as the divider lives on the search bar. borderBottom: 'none', '& .DocSearch-Clear': { display: 'none', @@ -569,7 +575,7 @@ export function AppSearch(props: AppSearchProps) { visibility: 'hidden', }, }, - // v4 adds a vertical divider before the close button; match the search bar borders. + // Match the vertical divider before the close button to the search bar borders. '& .DocSearch-Divider': { borderColor: (theme.vars || theme).palette.grey[200], }, @@ -585,7 +591,7 @@ export function AppSearch(props: AppSearchProps) { backgroundColor: (theme.vars || theme).palette.grey[50], border: '1px solid', borderColor: (theme.vars || theme).palette.grey[200], - // v4's close button renders an X icon; hide it so only the "esc" chip shows. + // The close button renders an X icon; hide it so only the "esc" chip shows. '& svg': { display: 'none', }, @@ -598,7 +604,7 @@ export function AppSearch(props: AppSearchProps) { }, }, '& .DocSearch-Dropdown': { - // v4 fixes the dropdown to 60dvh; make it fit its content instead so recent + // DocSearch fixes the dropdown to 60dvh; make it fit its content instead so recent // searches stay compact and don't leave a gap above the product links. height: 'auto', maxHeight: 'var(--muidocs-docsearch-content-max-height)', @@ -613,12 +619,17 @@ export function AppSearch(props: AppSearchProps) { marginTop: theme.spacing(1), }, }, - // The v4 screen icon (no-results / empty state) hardcodes an inline stroke="#5a5e9a" + // The screen icon (no-results / empty state) hardcodes an inline stroke="#5a5e9a" // that no variable can reach; recolor it to the MUI muted grey. '& .DocSearch-Screen-Icon svg': { stroke: 'var(--docsearch-muted-color)', }, '& .DocSearch-Dropdown-Container': { + // DocSearch indents the hit lists by 1em, which pushes the result cards out of line + // with the section headings above them. + '& .DocSearch-Hits-padded': { + paddingInlineStart: 0, + }, '& .DocSearch-Hits:first-of-type': { '& .DocSearch-Hit-source': { paddingTop: theme.spacing(2.5), @@ -665,17 +676,25 @@ export function AppSearch(props: AppSearchProps) { fontSize: theme.typography.pxToRem(14), fontWeight: theme.typography.fontWeightMedium, color: (theme.vars || theme).palette.text.primary, - // Algolia sets text-overflow on the flex container, where it can never apply, so long - // snippets get clipped mid-word. Truncate on the items instead. + // DocSearch wraps the title and the path below 768px; keep them on one line so the + // rows stay the compact fixed-height cards the docs design expects. + whiteSpace: 'nowrap', overflow: 'hidden', textOverflow: 'ellipsis', }, '& .DocSearch-Hit-path': { fontSize: theme.typography.pxToRem(12), color: (theme.vars || theme).palette.text.secondary, + whiteSpace: 'nowrap', overflow: 'hidden', textOverflow: 'ellipsis', }, + // DocSearch underlines matched text 0.3em below the baseline, which at the 14px + // hit title falls outside the overflow clip above and disappears at some zoom + // levels. Pull it closer; the 12px path has room either way. + '& .DocSearch-Hit mark': { + textUnderlineOffset: '0.14em', + }, '& .DocSearch-Hit-icon': { '> svg': { height: '16px', @@ -691,9 +710,9 @@ export function AppSearch(props: AppSearchProps) { backgroundColor: (theme.vars || theme).palette.primary[50], borderColor: (theme.vars || theme).palette.primary[300], }, - // v4 tints the selected icon/action/mark with the muted --docsearch-highlight-color; - // restore the brighter active color, and extend it to the tree connector so it matches - // the icon instead of staying grey. + // DocSearch tints the selected icon/action/mark with the muted + // --docsearch-highlight-color; restore the brighter active color, and extend it to the + // tree connector so it matches the icon instead of staying grey. '& .DocSearch-Hit[aria-selected="true"] .DocSearch-Hit-icon, & .DocSearch-Hit[aria-selected="true"] .DocSearch-Hit-action, & .DocSearch-Hit[aria-selected="true"] .DocSearch-Hit-Tree, & .DocSearch-Hit[aria-selected="true"] mark': { color: 'var(--docsearch-hit-active-color)', diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 8ef1faffbe97ee..c445523bd1efe2 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -10,8 +10,8 @@ catalogs: specifier: ^1.7.0 version: 1.7.0 '@docsearch/react': - specifier: ^4.7.0 - version: 4.7.0 + specifier: ^5.0.1 + version: 5.0.1 '@emotion/cache': specifier: ^11.14.0 version: 11.14.0 @@ -238,7 +238,7 @@ importers: version: 8.2.1(@types/node@20.19.43)(esbuild@0.28.2)(jiti@2.7.0)(terser@5.50.0)(tsx@4.23.12)(yaml@2.9.0) vitest: specifier: ^4.1.0 - version: 4.1.10(@types/node@20.19.43)(@vitest/browser-playwright@4.1.10)(@vitest/coverage-v8@4.1.10)(happy-dom@20.11.2)(jsdom@30.0.1)(vite@8.2.1(@types/node@20.19.43)(esbuild@0.28.2)(jiti@2.7.0)(terser@5.50.0)(tsx@4.23.12)(yaml@2.9.0)) + version: 4.1.10(@opentelemetry/api@1.9.0)(@types/node@20.19.43)(@vitest/browser-playwright@4.1.10)(@vitest/coverage-v8@4.1.10)(happy-dom@20.11.2)(jsdom@30.0.1)(vite@8.2.1(@types/node@20.19.43)(esbuild@0.28.2)(jiti@2.7.0)(terser@5.50.0)(tsx@4.23.12)(yaml@2.9.0)) vitest-fail-on-console: specifier: 0.10.1 version: 0.10.1(@vitest/utils@4.1.10)(vite@8.2.1(@types/node@20.19.43)(esbuild@0.28.2)(jiti@2.7.0)(terser@5.50.0)(tsx@4.23.12)(yaml@2.9.0))(vitest@4.1.10) @@ -259,7 +259,7 @@ importers: version: 1.7.0(@types/react@19.2.18)(react-dom@19.2.8(react@19.2.8))(react@19.2.8) '@docsearch/react': specifier: catalog:docs - version: 4.7.0(@algolia/client-search@5.56.0)(@types/react@19.2.18)(algoliasearch@5.56.0)(react-dom@19.2.8(react@19.2.8))(react@19.2.8)(search-insights@2.17.3) + version: 5.0.1(@algolia/client-search@5.56.0)(@types/react@19.2.18)(react-dom@19.2.8(react@19.2.8))(react@19.2.8)(search-insights@2.17.3) '@emotion/cache': specifier: catalog:docs version: 11.14.0 @@ -409,7 +409,7 @@ importers: version: 5.3.7(@mui/material@packages+mui-material+build)(@types/react@19.2.18)(react@19.2.8) next: specifier: 16.3.1 - version: 16.3.1(@babel/core@7.29.7(supports-color@11.0.0))(@playwright/test@1.62.1)(@types/node@20.19.43)(babel-plugin-macros@3.1.0)(babel-plugin-react-compiler@1.0.0)(react-dom@19.2.8(react@19.2.8))(react@19.2.8) + version: 16.3.1(@babel/core@7.29.7(supports-color@11.0.0))(@opentelemetry/api@1.9.0)(@playwright/test@1.62.1)(@types/node@20.19.43)(babel-plugin-macros@3.1.0)(babel-plugin-react-compiler@1.0.0)(react-dom@19.2.8(react@19.2.8))(react@19.2.8) notistack: specifier: 3.0.2 version: 3.0.2(react-dom@19.2.8(react@19.2.8))(react@19.2.8) @@ -683,7 +683,7 @@ importers: version: 1.7.0(@types/react@19.2.18)(react-dom@19.2.8(react@19.2.8))(react@19.2.8) '@docsearch/react': specifier: catalog:docs - version: 4.7.0(@algolia/client-search@5.56.0)(@types/react@19.2.18)(algoliasearch@5.56.0)(react-dom@19.2.8(react@19.2.8))(react@19.2.8)(search-insights@2.17.3) + version: 5.0.1(@algolia/client-search@5.56.0)(@types/react@19.2.18)(react-dom@19.2.8(react@19.2.8))(react@19.2.8)(search-insights@2.17.3) '@emotion/cache': specifier: catalog:docs version: 11.14.0 @@ -698,7 +698,7 @@ importers: version: link:../markdown '@mui/material-nextjs': specifier: ^5.0.0 || ^6.0.0 || ^7.0.0 || ^9.0.0 || ^9.0.0-alpha || ^9.0.0-beta - version: 9.3.0(@emotion/cache@11.14.0)(@emotion/react@11.14.0(@types/react@19.2.18)(react@19.2.8)(supports-color@11.0.0))(@emotion/server@11.11.0(@emotion/css@11.13.5(supports-color@11.0.0)))(@types/react@19.2.18)(next@16.3.1(@babel/core@7.29.7(supports-color@11.0.0))(@playwright/test@1.62.1)(@types/node@20.19.43)(babel-plugin-macros@3.1.0)(babel-plugin-react-compiler@1.0.0)(react-dom@19.2.8(react@19.2.8))(react@19.2.8))(react@19.2.8) + version: 9.3.0(@emotion/cache@11.14.0)(@emotion/react@11.14.0(@types/react@19.2.18)(react@19.2.8)(supports-color@11.0.0))(@emotion/server@11.11.0(@emotion/css@11.13.5(supports-color@11.0.0)))(@types/react@19.2.18)(next@16.3.1(@babel/core@7.29.7(supports-color@11.0.0))(@opentelemetry/api@1.9.0)(@playwright/test@1.62.1)(@types/node@20.19.43)(babel-plugin-macros@3.1.0)(babel-plugin-react-compiler@1.0.0)(react-dom@19.2.8(react@19.2.8))(react@19.2.8))(react@19.2.8) '@mui/stylis-plugin-rtl': specifier: ^5.0.0 || ^6.0.0 || ^7.0.0 || ^9.0.0 || ^9.0.0-alpha || ^9.0.0-beta version: 9.3.0(stylis@4.2.0) @@ -783,7 +783,7 @@ importers: version: 19.2.4(@types/react@19.2.18) next: specifier: 16.3.1 - version: 16.3.1(@babel/core@7.29.7(supports-color@11.0.0))(@playwright/test@1.62.1)(@types/node@20.19.43)(babel-plugin-macros@3.1.0)(babel-plugin-react-compiler@1.0.0)(react-dom@19.2.8(react@19.2.8))(react@19.2.8) + version: 16.3.1(@babel/core@7.29.7(supports-color@11.0.0))(@opentelemetry/api@1.9.0)(@playwright/test@1.62.1)(@types/node@20.19.43)(babel-plugin-macros@3.1.0)(babel-plugin-react-compiler@1.0.0)(react-dom@19.2.8(react@19.2.8))(react@19.2.8) publishDirectory: build packages-internal/docs-utils: @@ -1150,7 +1150,7 @@ importers: version: 19.2.18 next: specifier: 16.3.1 - version: 16.3.1(@babel/core@7.29.7(supports-color@11.0.0))(@playwright/test@1.62.1)(@types/node@20.19.43)(babel-plugin-macros@3.1.0)(babel-plugin-react-compiler@1.0.0)(react-dom@19.2.8(react@19.2.8))(react@19.2.8) + version: 16.3.1(@babel/core@7.29.7(supports-color@11.0.0))(@opentelemetry/api@1.9.0)(@playwright/test@1.62.1)(@types/node@20.19.43)(babel-plugin-macros@3.1.0)(babel-plugin-react-compiler@1.0.0)(react-dom@19.2.8(react@19.2.8))(react@19.2.8) react: specifier: 19.2.8 version: 19.2.8 @@ -1547,6 +1547,32 @@ importers: packages: + '@ai-sdk/gateway@2.0.134': + resolution: {integrity: sha512-n+dVco86tzsoQ5Lq8YI62ALsNQw37P5jJa/1NuzCtezfZCzH1UfgDWE3EZ0U1U3rqHlHFWV1N8D3QD5KBY9myg==} + engines: {node: '>=18'} + peerDependencies: + zod: ^3.25.76 || ^4.1.8 + + '@ai-sdk/provider-utils@3.0.32': + resolution: {integrity: sha512-izgUo50kamJMwoYCXoFwVccuJeyYp0y1+twf0FfpEz7kdQBloZLZbgLYUOUpannLWrV7xYSJR48BQJIQFbFiAQ==} + engines: {node: '>=18'} + peerDependencies: + zod: ^3.25.76 || ^4.1.8 + + '@ai-sdk/provider@2.0.3': + resolution: {integrity: sha512-h88OPkavHTiN9tMn2l5awAznGB0lXzjcLhgR1/rvjB2zlLprsNxbM2tt6OJsHUxduLC3klq0/eqaSf6fX5XVww==} + engines: {node: '>=18'} + + '@ai-sdk/react@2.0.240': + resolution: {integrity: sha512-jUrJECM6+PAiWsBqYeTfMr4mk82ms+5jH6o+j5NkCvrk1+dyTG2SMQVCJ3ICglfKZqgTEGnMU8dVIP7qHy6nhA==} + engines: {node: '>=18'} + peerDependencies: + react: ^18 || ~19.0.1 || ~19.1.2 || ^19.2.1 + zod: ^3.25.76 || ^4.1.8 + peerDependenciesMeta: + zod: + optional: true + '@algolia/abtesting@1.22.0': resolution: {integrity: sha512-BFR6zNowNKcY7Ou7TaJc9QWexES4YKPbmf/OTFofpdsdhz4x6q0lbxp3duO0EHnyrN7rE4ba/TSXuY+BDGu4+g==} engines: {node: '>= 14.0.0'} @@ -2400,8 +2426,8 @@ packages: resolution: {integrity: sha512-4B4OijXeVNOPZlYA2oEwWOTkzyltLao+xbotHQeqN++Rv27Y6s818+n2Qkp8q+Fxhn0t/5lA5X1Mxktud8eayQ==} engines: {node: '>=14.17.0'} - '@docsearch/core@4.7.0': - resolution: {integrity: sha512-p/9xVKmPDj3FPvMfPf5naVO3Ej8SCbcUugGvx1+8GgkuBNbqxqN2Irx3WLBv8VY0jH7XpRwKWdlmjXLZsmTLsg==} + '@docsearch/core@5.0.1': + resolution: {integrity: sha512-2iQ8m9eqGhiSvxt+CotLLqCNxE36K3ks0ALXiirTdr09HKBzt2RKi+m9bMA911rXxWO2NCq9Ug8LJxCCB3XmNQ==} peerDependencies: '@types/react': '>= 16.8.0 < 20.0.0' react: '>= 16.8.0 < 20.0.0' @@ -2414,11 +2440,11 @@ packages: react-dom: optional: true - '@docsearch/css@4.7.0': - resolution: {integrity: sha512-Sk5xkdRFeE7PeWjG9l4AfTwdvMfr9wHiwNNCpHXT4v4SNyNMKdHGvEILc31BgaVFGDDNbv5u/a73tofRiwbEZw==} + '@docsearch/css@5.0.1': + resolution: {integrity: sha512-q1HdKMkROnZIIN+/eSa2f6qtIn9VcBtXelVMScFuWTWPQwIMBt0evl/TJku0HsssMJkuT6jKzY6Yfet/RMG2Tg==} - '@docsearch/react@4.7.0': - resolution: {integrity: sha512-x6oedjJ8O8/pIDBsMo5Orca3/6cQCz616/CwthVe68l43mqnj2lrJ9kFQITBqy8hMsS3nWeBWFoVO5dJ1DCFKA==} + '@docsearch/react@5.0.1': + resolution: {integrity: sha512-0gP+NZxQDNltW72LQiqTjmKMf0lffOY7UJndll8js9zhRvgfucs7iGaBJyQdP/wZL+4jeUskjyWspjSO1KbVbg==} peerDependencies: '@types/react': '>= 16.8.0 < 20.0.0' react: '>= 16.8.0 < 20.0.0' @@ -2755,6 +2781,10 @@ packages: '@fast-csv/parse@5.0.7': resolution: {integrity: sha512-MeuDeQj0DVmIGWky8STaKtvj232Gpq8kjrOGplHJ99Os7OO5CetVfXvUGqX/3GHYFOUsz6FK8isWtDY2XTFNWw==} + '@fastify/busboy@2.1.1': + resolution: {integrity: sha512-vBZP4NlzfOlerQTnba4aqZoMhE/a9HY7HRqoOPaETQcSQuWEIyZMHGfVu6w9wGtGK5fED5qRs2DteVCjOH60sA==} + engines: {node: '>=14'} + '@fingerprintjs/fingerprintjs@3.4.2': resolution: {integrity: sha512-3Ncze6JsJpB7BpYhqIgvBpfvEX1jsEKrad5hQBpyRQxtoAp6hx3+R46zqfsuQG4D9egQZ+xftQ0u4LPFMB7Wmg==} @@ -4383,6 +4413,10 @@ packages: '@octokit/types@17.0.0': resolution: {integrity: sha512-ByP1v7YL5SMveFPP7+sj0/ZuWCOOg/Chs4NafOMpq6WNIM/hdGY0S7C0TCGDBWu1aGmOxmUIhMx3cO+IdwYZ1Q==} + '@opentelemetry/api@1.9.0': + resolution: {integrity: sha512-3giAOQvZiH5F9bMlMiv8+GSPMeqg0dbaeo58/0SlA9sxSqZhnUtxzX9/2FzyhS9sWQf5S0GJE0AKBrFqjpeYcg==} + engines: {node: '>=8.0.0'} + '@oxc-project/types@0.144.0': resolution: {integrity: sha512-nuhZIOLuI6TFQ32I/WnUx+SCPY7SdSKwgnFHydAuoS1+Z4BRcaP+RRJmGzl9lw+0OFF7UmaESf7KQRXaNLHypg==} @@ -5293,6 +5327,10 @@ packages: cpu: [x64] os: [win32] + '@vercel/oidc@3.1.0': + resolution: {integrity: sha512-Fw28YZpRnA3cAHHDlkt7xQHiJ0fcL+NRcIqsocZQUSmbzeIKRpwttJjik5ZGanXP+vlA4SbTg+AbA3bP363l+w==} + engines: {node: '>= 20'} + '@vitejs/plugin-react@6.0.5': resolution: {integrity: sha512-BOVzne/NL162sMdResB25mUv+vWMF5NoAjNf09TeGlE7ZpszZWSD3winycicLJw72yeVsoCn/2kOhEuCvEShMA==} engines: {node: ^20.19.0 || >=22.12.0} @@ -5486,6 +5524,12 @@ packages: resolution: {integrity: sha512-4I7Td01quW/RpocfNayFdFVk1qSuoh0E7JrbRJ16nH01HhKFQ88INq9Sd+nd72zqRySlr9BmDA8xlEJ6vJMrYA==} engines: {node: '>=8'} + ai@5.0.237: + resolution: {integrity: sha512-vhUJTINUVbmXA4djxDPeYXSmAkzF/dkixHzdCvaCyD+mDsWLemvokt+KWmfkdDwv4Htt2iCScFuB23lP30XALg==} + engines: {node: '>=18'} + peerDependencies: + zod: ^3.25.76 || ^4.1.8 + ajv-formats@2.1.1: resolution: {integrity: sha512-Wx0Kx52hxE7C18hkMEggYlEifqWZtYaRgouJor+WMdPnQyEK13vgEWyVNup7SoeeoLMsr4kf5h6dOW11I15MUA==} peerDependencies: @@ -6877,6 +6921,10 @@ packages: resolution: {integrity: sha512-mQw+2fkQbALzQ7V0MY0IqdnXNOeTtP4r0lN9z7AAawCXgqea7bDii20AYrIBrFd/Hx0M2Ocz6S111CaFkUcb0Q==} engines: {node: '>=0.8.x'} + eventsource-parser@3.1.1: + resolution: {integrity: sha512-EKN1vKAMcZ8MlYMpaNuxN6R9yakzH6uajHcHVTqWJzvu5pWw9DyhbP35HH8MVBQ+dZjAfDxk+A8NiR9KWaXiyQ==} + engines: {node: '>=18.0.0'} + execa@1.0.0: resolution: {integrity: sha512-adbxcyWV46qiHyvSp50TKt05tB4tK3HcmF7/nxfAdhnox83seTDbwnaqKO4sXRy7roHAIFqJP/Rw/AuEbX61LA==} engines: {node: '>=6'} @@ -7918,6 +7966,9 @@ packages: json-schema-traverse@1.0.0: resolution: {integrity: sha512-NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug==} + json-schema@0.4.0: + resolution: {integrity: sha512-es94M3nTIfsEPisRafak+HDLfHXnKBhV3vU5eqPcS3flIWqcxJWgXHXiey3YrpaNsanY5ei1VoYEbOzijuq9BA==} + json-stable-stringify-without-jsonify@1.0.1: resolution: {integrity: sha512-Bdboy+l7tA3OGW6FjyFHWkP5LuByj1Tk33Ljyq0axyzdk9//JSi2u3fP1QSmd1KNwq6VOKYGlAu87CisVir6Pw==} @@ -8364,6 +8415,11 @@ packages: peerDependencies: marked: '>=1 <16' + marked@16.4.2: + resolution: {integrity: sha512-TI3V8YYWvkVf3KJe1dRkpnjs68JUPyEa5vjKrp1XEEJUAOaQc+Qj+L1qWbPd0SJuAdQkFU0h73sXXqwDYxsiDA==} + engines: {node: '>= 20'} + hasBin: true + marked@18.0.10: resolution: {integrity: sha512-FJeH4bRpYoXiggcgriCGItKCSv3xkngJc4QCZ/rkQCogU3VYaLxYJoZl8Nw/b4+x7iij/pd+09mZ6A1dXzpL0A==} engines: {node: '>= 20'} @@ -10428,6 +10484,11 @@ packages: engines: {node: '>=16'} hasBin: true + swr@2.5.1: + resolution: {integrity: sha512-BRw55e8r0B7SpDN20CAzoQAHl7y1yP7/Zt7oqUjMv0vSt2u2Xnkm88Ws+VypbV9BXHQVuSuyVq7zMjO16wSExw==} + peerDependencies: + react: ^16.11.0 || ^17.0.0 || ^18.0.0 || ^19.0.0 + symbol-tree@3.2.4: resolution: {integrity: sha512-9QNk5KwDF+Bvz+PyObkmSYjI5ksVUYtjW7AU22r2NKcfLJcXp96hkDWU3+XndOsUb+AQ9QhfzfCT2O+CNWT5Tw==} @@ -10473,6 +10534,10 @@ packages: thenify@3.3.1: resolution: {integrity: sha512-RVZSIV5IG10Hk3enotrhvz0T9em6cyHBLkH/YAZuKqd8hRkKhSfCGIcP2KUY0EPxndzANBmNllzWPwak+bheSw==} + throttleit@2.1.0: + resolution: {integrity: sha512-nt6AMGKW1p/70DF/hGBdJB57B8Tspmbp5gfJ8ilhLnt7kkr2ye7hzD6NVG8GGErk2HWF34igrL2CXmNIkzKqKw==} + engines: {node: '>=18'} + through2@0.4.2: resolution: {integrity: sha512-45Llu+EwHKtAZYTPPVn3XZHBgakWMN3rokhEv5hu596XP+cNgplMg+Gj+1nmAvj+L0K7+N49zBKx5rah5u0QIQ==} @@ -10671,6 +10736,10 @@ packages: undici-types@6.21.0: resolution: {integrity: sha512-iwDZqg0QAGrg9Rav5H4n0M64c3mkR59cJ6wQp+7C4nI0gsmExaedaYLNO44eT4AtBBwjbTiGPMlt2Md0T9H9JQ==} + undici@5.29.0: + resolution: {integrity: sha512-raqeBD6NQK4SkWhQzeYKd1KmIG6dllBOTt55Rmkt4HtI9mwdWtJljnrXjAFUBLTSN67HWrOIZ3EPF4kjUw80Bg==} + engines: {node: '>=14.0'} + undici@6.28.0: resolution: {integrity: sha512-LIY910g9TI13YS95lrMFrs8Rm/u/irgHeTWoKCoteeJ04CUJ92eEfj0rVn+7VKMPBpUPiUoBKfhNyLI23EE/KA==} engines: {node: '>=18.17'} @@ -11218,6 +11287,35 @@ packages: snapshots: + '@ai-sdk/gateway@2.0.134(zod@4.4.3)': + dependencies: + '@ai-sdk/provider': 2.0.3 + '@ai-sdk/provider-utils': 3.0.32(zod@4.4.3) + '@vercel/oidc': 3.1.0 + zod: 4.4.3 + + '@ai-sdk/provider-utils@3.0.32(zod@4.4.3)': + dependencies: + '@ai-sdk/provider': 2.0.3 + '@standard-schema/spec': 1.1.0 + eventsource-parser: 3.1.1 + undici: 5.29.0 + zod: 4.4.3 + + '@ai-sdk/provider@2.0.3': + dependencies: + json-schema: 0.4.0 + + '@ai-sdk/react@2.0.240(react@19.2.8)(zod@4.4.3)': + dependencies: + '@ai-sdk/provider-utils': 3.0.32(zod@4.4.3) + ai: 5.0.237(zod@4.4.3) + react: 19.2.8 + swr: 2.5.1(react@19.2.8) + throttleit: 2.1.0 + optionalDependencies: + zod: 4.4.3 + '@algolia/abtesting@1.22.0': dependencies: '@algolia/client-common': 5.56.0 @@ -12308,19 +12406,25 @@ snapshots: '@discoveryjs/json-ext@0.6.3': {} - '@docsearch/core@4.7.0(@types/react@19.2.18)(react-dom@19.2.8(react@19.2.8))(react@19.2.8)': + '@docsearch/core@5.0.1(@types/react@19.2.18)(react-dom@19.2.8(react@19.2.8))(react@19.2.8)': optionalDependencies: '@types/react': 19.2.18 react: 19.2.8 react-dom: 19.2.8(react@19.2.8) - '@docsearch/css@4.7.0': {} + '@docsearch/css@5.0.1': {} - '@docsearch/react@4.7.0(@algolia/client-search@5.56.0)(@types/react@19.2.18)(algoliasearch@5.56.0)(react-dom@19.2.8(react@19.2.8))(react@19.2.8)(search-insights@2.17.3)': + '@docsearch/react@5.0.1(@algolia/client-search@5.56.0)(@types/react@19.2.18)(react-dom@19.2.8(react@19.2.8))(react@19.2.8)(search-insights@2.17.3)': dependencies: + '@ai-sdk/react': 2.0.240(react@19.2.8)(zod@4.4.3) '@algolia/autocomplete-core': 1.19.2(@algolia/client-search@5.56.0)(algoliasearch@5.56.0)(search-insights@2.17.3) - '@docsearch/core': 4.7.0(@types/react@19.2.18)(react-dom@19.2.8(react@19.2.8))(react@19.2.8) - '@docsearch/css': 4.7.0 + '@base-ui/react': 1.7.0(@types/react@19.2.18)(react-dom@19.2.8(react@19.2.8))(react@19.2.8) + '@docsearch/core': 5.0.1(@types/react@19.2.18)(react-dom@19.2.8(react@19.2.8))(react@19.2.8) + '@docsearch/css': 5.0.1 + ai: 5.0.237(zod@4.4.3) + algoliasearch: 5.56.0 + marked: 16.4.2 + zod: 4.4.3 optionalDependencies: '@types/react': 19.2.18 react: 19.2.8 @@ -12328,7 +12432,8 @@ snapshots: search-insights: 2.17.3 transitivePeerDependencies: - '@algolia/client-search' - - algoliasearch + - '@date-fns/tz' + - date-fns '@emnapi/core@1.10.0': dependencies: @@ -12609,6 +12714,8 @@ snapshots: lodash.groupby: 4.6.0 lodash.uniq: 4.5.0 + '@fastify/busboy@2.1.1': {} + '@fingerprintjs/fingerprintjs@3.4.2': dependencies: tslib: 2.8.1 @@ -13241,11 +13348,11 @@ snapshots: - vite - vitest - '@mui/material-nextjs@9.3.0(@emotion/cache@11.14.0)(@emotion/react@11.14.0(@types/react@19.2.18)(react@19.2.8)(supports-color@11.0.0))(@emotion/server@11.11.0(@emotion/css@11.13.5(supports-color@11.0.0)))(@types/react@19.2.18)(next@16.3.1(@babel/core@7.29.7(supports-color@11.0.0))(@playwright/test@1.62.1)(@types/node@20.19.43)(babel-plugin-macros@3.1.0)(babel-plugin-react-compiler@1.0.0)(react-dom@19.2.8(react@19.2.8))(react@19.2.8))(react@19.2.8)': + '@mui/material-nextjs@9.3.0(@emotion/cache@11.14.0)(@emotion/react@11.14.0(@types/react@19.2.18)(react@19.2.8)(supports-color@11.0.0))(@emotion/server@11.11.0(@emotion/css@11.13.5(supports-color@11.0.0)))(@types/react@19.2.18)(next@16.3.1(@babel/core@7.29.7(supports-color@11.0.0))(@opentelemetry/api@1.9.0)(@playwright/test@1.62.1)(@types/node@20.19.43)(babel-plugin-macros@3.1.0)(babel-plugin-react-compiler@1.0.0)(react-dom@19.2.8(react@19.2.8))(react@19.2.8))(react@19.2.8)': dependencies: '@babel/runtime': 7.29.7 '@emotion/react': 11.14.0(@types/react@19.2.18)(react@19.2.8)(supports-color@11.0.0) - next: 16.3.1(@babel/core@7.29.7(supports-color@11.0.0))(@playwright/test@1.62.1)(@types/node@20.19.43)(babel-plugin-macros@3.1.0)(babel-plugin-react-compiler@1.0.0)(react-dom@19.2.8(react@19.2.8))(react@19.2.8) + next: 16.3.1(@babel/core@7.29.7(supports-color@11.0.0))(@opentelemetry/api@1.9.0)(@playwright/test@1.62.1)(@types/node@20.19.43)(babel-plugin-macros@3.1.0)(babel-plugin-react-compiler@1.0.0)(react-dom@19.2.8(react@19.2.8))(react@19.2.8) react: 19.2.8 optionalDependencies: '@emotion/cache': 11.14.0 @@ -14333,6 +14440,8 @@ snapshots: dependencies: '@octokit/openapi-types': 28.0.0 + '@opentelemetry/api@1.9.0': {} + '@oxc-project/types@0.144.0': {} '@pigment-css/react@0.0.31(@types/react@19.2.18)(react-dom@19.2.8(react@19.2.8))(react@19.2.8)(supports-color@11.0.0)(typescript@6.0.3)': @@ -15187,6 +15296,8 @@ snapshots: '@unrs/resolver-binding-win32-x64-msvc@1.12.2': optional: true + '@vercel/oidc@3.1.0': {} + '@vitejs/plugin-react@6.0.5(babel-plugin-react-compiler@1.0.0)(vite@8.2.1(@types/node@20.19.43)(esbuild@0.28.2)(jiti@2.7.0)(terser@5.50.0)(tsx@4.23.12)(yaml@2.9.0))': dependencies: '@rolldown/pluginutils': 1.0.1 @@ -15200,7 +15311,7 @@ snapshots: '@vitest/mocker': 4.1.10(vite@8.2.1(@types/node@20.19.43)(esbuild@0.28.2)(jiti@2.7.0)(terser@5.50.0)(tsx@4.23.12)(yaml@2.9.0)) playwright: 1.62.1 tinyrainbow: 3.1.1 - vitest: 4.1.10(@types/node@20.19.43)(@vitest/browser-playwright@4.1.10)(@vitest/coverage-v8@4.1.10)(happy-dom@20.11.2)(jsdom@30.0.1)(vite@8.2.1(@types/node@20.19.43)(esbuild@0.28.2)(jiti@2.7.0)(terser@5.50.0)(tsx@4.23.12)(yaml@2.9.0)) + vitest: 4.1.10(@opentelemetry/api@1.9.0)(@types/node@20.19.43)(@vitest/browser-playwright@4.1.10)(@vitest/coverage-v8@4.1.10)(happy-dom@20.11.2)(jsdom@30.0.1)(vite@8.2.1(@types/node@20.19.43)(esbuild@0.28.2)(jiti@2.7.0)(terser@5.50.0)(tsx@4.23.12)(yaml@2.9.0)) transitivePeerDependencies: - bufferutil - msw @@ -15216,7 +15327,7 @@ snapshots: pngjs: 7.0.0 sirv: 3.0.2 tinyrainbow: 3.1.1 - vitest: 4.1.10(@types/node@20.19.43)(@vitest/browser-playwright@4.1.10)(@vitest/coverage-v8@4.1.10)(happy-dom@20.11.2)(jsdom@30.0.1)(vite@8.2.1(@types/node@20.19.43)(esbuild@0.28.2)(jiti@2.7.0)(terser@5.50.0)(tsx@4.23.12)(yaml@2.9.0)) + vitest: 4.1.10(@opentelemetry/api@1.9.0)(@types/node@20.19.43)(@vitest/browser-playwright@4.1.10)(@vitest/coverage-v8@4.1.10)(happy-dom@20.11.2)(jsdom@30.0.1)(vite@8.2.1(@types/node@20.19.43)(esbuild@0.28.2)(jiti@2.7.0)(terser@5.50.0)(tsx@4.23.12)(yaml@2.9.0)) ws: 8.21.3 transitivePeerDependencies: - bufferutil @@ -15236,7 +15347,7 @@ snapshots: obug: 2.1.4 std-env: 4.2.0 tinyrainbow: 3.1.1 - vitest: 4.1.10(@types/node@20.19.43)(@vitest/browser-playwright@4.1.10)(@vitest/coverage-v8@4.1.10)(happy-dom@20.11.2)(jsdom@30.0.1)(vite@8.2.1(@types/node@20.19.43)(esbuild@0.28.2)(jiti@2.7.0)(terser@5.50.0)(tsx@4.23.12)(yaml@2.9.0)) + vitest: 4.1.10(@opentelemetry/api@1.9.0)(@types/node@20.19.43)(@vitest/browser-playwright@4.1.10)(@vitest/coverage-v8@4.1.10)(happy-dom@20.11.2)(jsdom@30.0.1)(vite@8.2.1(@types/node@20.19.43)(esbuild@0.28.2)(jiti@2.7.0)(terser@5.50.0)(tsx@4.23.12)(yaml@2.9.0)) optionalDependencies: '@vitest/browser': 4.1.10(vite@8.2.1(@types/node@20.19.43)(esbuild@0.28.2)(jiti@2.7.0)(terser@5.50.0)(tsx@4.23.12)(yaml@2.9.0))(vitest@4.1.10) @@ -15248,7 +15359,7 @@ snapshots: optionalDependencies: '@typescript-eslint/eslint-plugin': 8.67.0(@typescript-eslint/parser@8.67.0(eslint@10.8.1(jiti@2.7.0)(supports-color@11.0.0))(supports-color@11.0.0)(typescript@6.0.3))(eslint@10.8.1(jiti@2.7.0)(supports-color@11.0.0))(supports-color@11.0.0)(typescript@6.0.3) typescript: 6.0.3 - vitest: 4.1.10(@types/node@20.19.43)(@vitest/browser-playwright@4.1.10)(@vitest/coverage-v8@4.1.10)(happy-dom@20.11.2)(jsdom@30.0.1)(vite@8.2.1(@types/node@20.19.43)(esbuild@0.28.2)(jiti@2.7.0)(terser@5.50.0)(tsx@4.23.12)(yaml@2.9.0)) + vitest: 4.1.10(@opentelemetry/api@1.9.0)(@types/node@20.19.43)(@vitest/browser-playwright@4.1.10)(@vitest/coverage-v8@4.1.10)(happy-dom@20.11.2)(jsdom@30.0.1)(vite@8.2.1(@types/node@20.19.43)(esbuild@0.28.2)(jiti@2.7.0)(terser@5.50.0)(tsx@4.23.12)(yaml@2.9.0)) transitivePeerDependencies: - supports-color @@ -15453,6 +15564,14 @@ snapshots: clean-stack: 2.2.0 indent-string: 4.0.0 + ai@5.0.237(zod@4.4.3): + dependencies: + '@ai-sdk/gateway': 2.0.134(zod@4.4.3) + '@ai-sdk/provider': 2.0.3 + '@ai-sdk/provider-utils': 3.0.32(zod@4.4.3) + '@opentelemetry/api': 1.9.0 + zod: 4.4.3 + ajv-formats@2.1.1(ajv@8.20.0): optionalDependencies: ajv: 8.20.0 @@ -17080,6 +17199,8 @@ snapshots: events@3.3.0: {} + eventsource-parser@3.1.1: {} + execa@1.0.0: dependencies: cross-spawn: 6.0.6 @@ -17715,7 +17836,7 @@ snapshots: semver: 7.8.5 optionalDependencies: '@vitest/expect': 4.1.10 - vitest: 4.1.10(@types/node@20.19.43)(@vitest/browser-playwright@4.1.10)(@vitest/coverage-v8@4.1.10)(happy-dom@20.11.2)(jsdom@30.0.1)(vite@8.2.1(@types/node@20.19.43)(esbuild@0.28.2)(jiti@2.7.0)(terser@5.50.0)(tsx@4.23.12)(yaml@2.9.0)) + vitest: 4.1.10(@opentelemetry/api@1.9.0)(@types/node@20.19.43)(@vitest/browser-playwright@4.1.10)(@vitest/coverage-v8@4.1.10)(happy-dom@20.11.2)(jsdom@30.0.1)(vite@8.2.1(@types/node@20.19.43)(esbuild@0.28.2)(jiti@2.7.0)(terser@5.50.0)(tsx@4.23.12)(yaml@2.9.0)) html-void-elements@3.0.0: {} @@ -18202,6 +18323,8 @@ snapshots: json-schema-traverse@1.0.0: {} + json-schema@0.4.0: {} + json-stable-stringify-without-jsonify@1.0.1: {} json-stringify-nice@1.1.4: {} @@ -18697,6 +18820,8 @@ snapshots: node-emoji: 2.2.0 supports-hyperlinks: 3.2.0 + marked@16.4.2: {} + marked@18.0.10: {} marked@9.1.6: {} @@ -19338,7 +19463,7 @@ snapshots: neo-async@2.6.2: {} - next@16.3.1(@babel/core@7.29.7(supports-color@11.0.0))(@playwright/test@1.62.1)(@types/node@20.19.43)(babel-plugin-macros@3.1.0)(babel-plugin-react-compiler@1.0.0)(react-dom@19.2.8(react@19.2.8))(react@19.2.8): + next@16.3.1(@babel/core@7.29.7(supports-color@11.0.0))(@opentelemetry/api@1.9.0)(@playwright/test@1.62.1)(@types/node@20.19.43)(babel-plugin-macros@3.1.0)(babel-plugin-react-compiler@1.0.0)(react-dom@19.2.8(react@19.2.8))(react@19.2.8): dependencies: '@next/env': 16.3.1 '@swc/helpers': 0.5.23 @@ -19357,6 +19482,7 @@ snapshots: '@next/swc-linux-x64-musl': 16.3.1 '@next/swc-win32-arm64-msvc': 16.3.1 '@next/swc-win32-x64-msvc': 16.3.1 + '@opentelemetry/api': 1.9.0 '@playwright/test': 1.62.1 babel-plugin-react-compiler: 1.0.0 sharp: 0.35.3(@types/node@20.19.43) @@ -21569,6 +21695,12 @@ snapshots: picocolors: 1.1.1 sax: 1.6.1 + swr@2.5.1(react@19.2.8): + dependencies: + dequal: 2.0.3 + react: 19.2.8 + use-sync-external-store: 1.6.0(react@19.2.8) + symbol-tree@3.2.4: {} synckit@0.11.13: @@ -21622,6 +21754,8 @@ snapshots: dependencies: any-promise: 1.3.0 + throttleit@2.1.0: {} + through2@0.4.2: dependencies: readable-stream: 1.0.34 @@ -21810,6 +21944,10 @@ snapshots: undici-types@6.21.0: {} + undici@5.29.0: + dependencies: + '@fastify/busboy': 2.1.1 + undici@6.28.0: {} undici@7.29.0: {} @@ -22070,9 +22208,9 @@ snapshots: '@vitest/utils': 4.1.10 chalk: 5.6.2 vite: 8.2.1(@types/node@20.19.43)(esbuild@0.28.2)(jiti@2.7.0)(terser@5.50.0)(tsx@4.23.12)(yaml@2.9.0) - vitest: 4.1.10(@types/node@20.19.43)(@vitest/browser-playwright@4.1.10)(@vitest/coverage-v8@4.1.10)(happy-dom@20.11.2)(jsdom@30.0.1)(vite@8.2.1(@types/node@20.19.43)(esbuild@0.28.2)(jiti@2.7.0)(terser@5.50.0)(tsx@4.23.12)(yaml@2.9.0)) + vitest: 4.1.10(@opentelemetry/api@1.9.0)(@types/node@20.19.43)(@vitest/browser-playwright@4.1.10)(@vitest/coverage-v8@4.1.10)(happy-dom@20.11.2)(jsdom@30.0.1)(vite@8.2.1(@types/node@20.19.43)(esbuild@0.28.2)(jiti@2.7.0)(terser@5.50.0)(tsx@4.23.12)(yaml@2.9.0)) - vitest@4.1.10(@types/node@20.19.43)(@vitest/browser-playwright@4.1.10)(@vitest/coverage-v8@4.1.10)(happy-dom@20.11.2)(jsdom@30.0.1)(vite@8.2.1(@types/node@20.19.43)(esbuild@0.28.2)(jiti@2.7.0)(terser@5.50.0)(tsx@4.23.12)(yaml@2.9.0)): + vitest@4.1.10(@opentelemetry/api@1.9.0)(@types/node@20.19.43)(@vitest/browser-playwright@4.1.10)(@vitest/coverage-v8@4.1.10)(happy-dom@20.11.2)(jsdom@30.0.1)(vite@8.2.1(@types/node@20.19.43)(esbuild@0.28.2)(jiti@2.7.0)(terser@5.50.0)(tsx@4.23.12)(yaml@2.9.0)): dependencies: '@vitest/expect': 4.1.10 '@vitest/mocker': 4.1.10(vite@8.2.1(@types/node@20.19.43)(esbuild@0.28.2)(jiti@2.7.0)(terser@5.50.0)(tsx@4.23.12)(yaml@2.9.0)) @@ -22095,6 +22233,7 @@ snapshots: vite: 8.2.1(@types/node@20.19.43)(esbuild@0.28.2)(jiti@2.7.0)(terser@5.50.0)(tsx@4.23.12)(yaml@2.9.0) why-is-node-running: 2.3.0 optionalDependencies: + '@opentelemetry/api': 1.9.0 '@types/node': 20.19.43 '@vitest/browser-playwright': 4.1.10(playwright@1.62.1)(vite@8.2.1(@types/node@20.19.43)(esbuild@0.28.2)(jiti@2.7.0)(terser@5.50.0)(tsx@4.23.12)(yaml@2.9.0))(vitest@4.1.10) '@vitest/coverage-v8': 4.1.10(@vitest/browser@4.1.10)(vitest@4.1.10) diff --git a/pnpm-workspace.yaml b/pnpm-workspace.yaml index 24558faf559537..01cf5a14f16673 100644 --- a/pnpm-workspace.yaml +++ b/pnpm-workspace.yaml @@ -36,7 +36,7 @@ catalogs: docs: stylis: '4.2.0' '@base-ui/react': '^1.7.0' - '@docsearch/react': '^4.7.0' + '@docsearch/react': '^5.0.1' '@emotion/cache': '^11.14.0' '@emotion/react': '^11.14.0' '@emotion/server': '^11.11.0'