Compare commits

...
Author SHA1 Message Date
hanzo-dev 9455afcfd0 design: converge chat tokens to canonical black-monochrome + Geist Sans 2026-07-08 17:03:24 -07:00
Hanzo Dev 3f4a38fb23 chore(chat): bump @hanzo/ui-shadcn 5.7.3 -> 5.7.4 (genesis-canonical chain IDs)
Picks up the corrected network set (testnet 36962, devnet 36964, local
1337). vite build green.
2026-07-08 09:10:51 -07:00
Hanzo Dev 2f57e15e95 feat(chat): shared NetworkSwitcher + WalletMenu in the HanzoHeader
Puts hanzo.chat on the ONE hanzo.network standard (same model as the
hanzo CLI, console, desktop, app): @hanzo/ui/network + @hanzo/ui/wallet
via the npm alias @hanzo/ui -> @hanzo/ui-shadcn@^5.7.3 (the 5.x line
continued under its post-v8-rename name; existing imports untouched).

- Nav/NetworkWallet: the surface adapter — injected EIP-1193 wallet
  (non-custodial, zero key material) pinned to the selected network env
  (mainnet 36963 / testnet 36964 / devnet 36965 / local / custom).
- Mounted via the HanzoHeader headerRight slot; dark-scoped to match the
  monochrome bar.
- tailwind: scan the shared components in node_modules; add the missing
  popover/destructive tokens (fallback to background/foreground vars).

vite build green; tsc baseline unchanged (1014 pre-existing errors on
clean main, zero added — upstream CI gates vite build only).
2026-07-08 09:01:25 -07:00
6 changed files with 75 additions and 139 deletions
+1 -1
View File
@@ -29,7 +29,7 @@
},
"homepage": "https://hanzo.ai/chat",
"dependencies": {
"@hanzo/ui": "^5.3.41",
"@hanzo/ui": "npm:@hanzo/ui-shadcn@^5.7.4",
"@ariakit/react": "^0.4.15",
"@ariakit/react-core": "^0.4.17",
"@codesandbox/sandpack-react": "^2.19.10",
@@ -4,6 +4,7 @@
*/
import React, { useCallback } from 'react';
import { useAuthContext } from '~/hooks';
import NetworkWallet from './NetworkWallet';
// Use require() to bypass Vite CJS static analysis for @hanzo/ui
// eslint-disable-next-line @typescript-eslint/no-var-requires
@@ -30,6 +31,7 @@ export default function ChatHanzoHeader() {
<HanzoHeaderComponent
currentApp="Chat"
currentAppId="chat"
headerRight={<NetworkWallet />}
user={
user
? {
@@ -0,0 +1,23 @@
/**
* Chat's network + wallet cluster — the shared @hanzo/ui pair over the
* web custody model (injected EIP-1193, non-custodial). ONE adapter
* instance for the surface; selection persists in the shared network
* store so every consumer of `getNetwork()` follows the switcher.
*
* Wrapped in `dark` because the HanzoHeader bar is always monochrome
* dark, independent of the app theme.
*/
import React from 'react';
import { NetworkSwitcher } from '@hanzo/ui/network';
import { injectedEvmAdapter, WalletMenu } from '@hanzo/ui/wallet';
const walletAdapter = injectedEvmAdapter();
export default function NetworkWallet() {
return (
<div className="dark mr-1 hidden items-center gap-1.5 md:flex">
<NetworkSwitcher />
<WalletMenu adapter={walletAdapter} />
</div>
);
}
+6 -6
View File
@@ -135,15 +135,15 @@ html {
--text-primary: var(--gray-100);
--text-secondary: var(--gray-300);
--text-secondary-alt: var(--gray-400);
--text-tertiary: var(--gray-500);
--text-tertiary: #666;
--text-warning: var(--gray-400);
--text-destructive: var(--red-600);
--header-primary: var(--gray-850);
--header-hover: var(--gray-800);
--header-button-hover: var(--gray-800);
--surface-active: var(--gray-700);
--surface-active: #161616;
--surface-active-alt: var(--gray-800);
--surface-hover: var(--gray-800);
--surface-hover: #101010;
--surface-hover-alt: var(--gray-800);
--surface-primary: var(--gray-975);
--surface-primary-alt: var(--gray-925);
@@ -167,8 +167,8 @@ html {
/* Hanzo dark palette — true-black OLED */
--background: 0 0% 0%;
--foreground: 0 0% 95%;
--card: 0 0% 3%;
--foreground: 0 0% 93%;
--card: 0 0% 4%;
--card-foreground: 0 0% 95%;
--primary: 0 0% 95%;
--primary-foreground: 0 0% 9%;
@@ -180,7 +180,7 @@ html {
--accent-foreground: 0 0% 95%;
--destructive: 0 72% 51%;
--destructive-foreground: 0 0% 100%;
--border: 0 0% 11%;
--border: 0 0% 12%;
--input: 0 0% 11%;
--ring: 0 0% 56%;
--chart-1: 0 0% 50%;
+11 -1
View File
@@ -24,12 +24,15 @@ module.exports = {
'./src/**/*.{js,jsx,ts,tsx}',
// Include component library files
'../packages/client/src/**/*.{js,jsx,ts,tsx}',
// Shared @hanzo/ui components (network switcher / wallet menu)
'./node_modules/@hanzo/ui/dist/network/**/*.{js,mjs}',
'./node_modules/@hanzo/ui/dist/wallet/**/*.{js,mjs}',
],
// darkMode: 'class',
darkMode: ['class'],
theme: {
fontFamily: {
sans: ['Basel', 'ui-sans-serif', 'system-ui', 'sans-serif'],
sans: ['Geist', 'ui-sans-serif', 'system-ui', 'sans-serif'],
mono: ['Geist Mono', 'ui-monospace', 'monospace'],
},
// fontFamily: {
@@ -165,6 +168,13 @@ module.exports = {
DEFAULT: 'hsl(var(--muted))',
foreground: 'hsl(var(--muted-foreground))',
},
popover: {
DEFAULT: 'hsl(var(--popover, var(--background)))',
foreground: 'hsl(var(--popover-foreground, var(--foreground)))',
},
destructive: {
DEFAULT: 'var(--text-destructive)',
},
accent: {
DEFAULT: 'hsl(var(--accent))',
foreground: 'hsl(var(--accent-foreground))',
+32 -131
View File
@@ -70,7 +70,7 @@ importers:
version: 2.32.0(@typescript-eslint/parser@8.57.1(eslint@9.39.4(jiti@1.21.7))(typescript@5.9.3))(eslint-import-resolver-typescript@3.10.1)(eslint@9.39.4(jiti@1.21.7))
eslint-plugin-jest:
specifier: ^29.1.0
version: 29.15.0(@typescript-eslint/eslint-plugin@8.57.1(@typescript-eslint/parser@8.57.1(eslint@9.39.4(jiti@1.21.7))(typescript@5.9.3))(eslint@9.39.4(jiti@1.21.7))(typescript@5.9.3))(eslint@9.39.4(jiti@1.21.7))(jest@30.3.0)(typescript@5.9.3)
version: 29.15.0(@typescript-eslint/eslint-plugin@8.57.1(@typescript-eslint/parser@8.57.1(eslint@9.39.4(jiti@1.21.7))(typescript@5.9.3))(eslint@9.39.4(jiti@1.21.7))(typescript@5.9.3))(eslint@9.39.4(jiti@1.21.7))(jest@30.3.0(@types/node@25.5.0)(ts-node@10.9.2(@types/node@25.5.0)(typescript@5.9.3)))(typescript@5.9.3)
eslint-plugin-jsx-a11y:
specifier: ^6.10.2
version: 6.10.2(eslint@9.39.4(jiti@1.21.7))
@@ -94,7 +94,7 @@ importers:
version: 9.1.7
jest:
specifier: ^30.2.0
version: 30.3.0
version: 30.3.0(@types/node@25.5.0)(ts-node@10.9.2(@types/node@25.5.0)(typescript@5.9.3))
lint-staged:
specifier: ^15.4.3
version: 15.5.2
@@ -347,7 +347,7 @@ importers:
devDependencies:
jest:
specifier: ^30.2.0
version: 30.3.0
version: 30.3.0(@types/node@20.19.37)(ts-node@10.9.2(@types/node@20.19.37)(typescript@5.9.3))
mongodb-memory-server:
specifier: ^10.1.4
version: 10.4.3
@@ -379,8 +379,8 @@ importers:
specifier: ^0.13.1
version: 0.13.1(react@18.3.1)
'@hanzo/ui':
specifier: ^5.3.41
version: 5.5.1(@hookform/resolvers@3.10.0(react-hook-form@7.71.2(react@18.3.1)))(@modelcontextprotocol/sdk@1.22.0(@cfworker/json-schema@4.1.1))(@tanstack/react-query@4.43.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(@tanstack/react-table@8.21.3(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(@types/react-dom@18.3.7(@types/react@18.3.28))(@types/react@18.3.28)(date-fns@3.6.0)(embla-carousel@8.6.0)(framer-motion@11.18.2(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(lucide-react@0.394.0(react@18.3.1))(mermaid@11.13.0)(mobx@6.15.0)(next-themes@0.4.6(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(next@15.5.12(@babel/core@7.29.0)(@opentelemetry/api@1.9.0)(@playwright/test@1.58.2)(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(react-dom@18.3.1(react@18.3.1))(react-hook-form@7.71.2(react@18.3.1))(react-resizable-panels@3.0.6(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(react@18.3.1)(tailwindcss@3.4.19(yaml@2.8.3))(validator@13.15.26)
specifier: npm:@hanzo/ui-shadcn@^5.7.4
version: '@hanzo/ui-shadcn@5.7.4(@hookform/resolvers@3.10.0(react-hook-form@7.71.2(react@18.3.1)))(@modelcontextprotocol/sdk@1.22.0(@cfworker/json-schema@4.1.1))(@tanstack/react-query@4.43.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(@tanstack/react-table@8.21.3(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(@types/react-dom@18.3.7(@types/react@18.3.28))(@types/react@18.3.28)(date-fns@3.6.0)(embla-carousel@8.6.0)(framer-motion@11.18.2(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(lucide-react@0.394.0(react@18.3.1))(mermaid@11.13.0)(mobx@6.15.0)(next-themes@0.4.6(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(next@15.5.12(@babel/core@7.29.0)(@opentelemetry/api@1.9.0)(@playwright/test@1.58.2)(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(react-dom@18.3.1(react@18.3.1))(react-hook-form@7.71.2(react@18.3.1))(react-resizable-panels@3.0.6(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(react@18.3.1)(tailwindcss@3.4.19(yaml@2.8.3))(validator@13.15.26)'
'@headlessui/react':
specifier: ^2.1.2
version: 2.2.9(react-dom@18.3.1(react@18.3.1))(react@18.3.1)
@@ -693,7 +693,7 @@ importers:
version: 1.0.3
eslint-plugin-jest:
specifier: ^29.1.0
version: 29.15.0(@typescript-eslint/eslint-plugin@8.57.1(@typescript-eslint/parser@8.57.1(eslint@9.39.4(jiti@1.21.7))(typescript@5.9.3))(eslint@9.39.4(jiti@1.21.7))(typescript@5.9.3))(eslint@9.39.4(jiti@1.21.7))(jest@30.3.0(@types/node@20.19.37))(typescript@5.9.3)
version: 29.15.0(@typescript-eslint/eslint-plugin@8.57.1(@typescript-eslint/parser@8.57.1(eslint@9.39.4(jiti@1.21.7))(typescript@5.9.3))(eslint@9.39.4(jiti@1.21.7))(typescript@5.9.3))(eslint@9.39.4(jiti@1.21.7))(jest@30.3.0(@types/node@20.19.37)(ts-node@10.9.2(@types/node@20.19.37)(typescript@5.9.3)))(typescript@5.9.3)
fs-extra:
specifier: ^11.3.2
version: 11.3.4
@@ -702,7 +702,7 @@ importers:
version: 3.0.0
jest:
specifier: ^30.2.0
version: 30.3.0(@types/node@20.19.37)
version: 30.3.0(@types/node@20.19.37)(ts-node@10.9.2(@types/node@20.19.37)(typescript@5.9.3))
jest-canvas-mock:
specifier: ^2.5.2
version: 2.5.2
@@ -1215,7 +1215,7 @@ importers:
version: 2.4.4
jest:
specifier: ^30.2.0
version: 30.3.0(@types/node@20.19.37)
version: 30.3.0(@types/node@20.19.37)(ts-node@10.9.2(@types/node@20.19.37)(typescript@5.9.3))
jest-junit:
specifier: ^16.0.0
version: 16.0.0
@@ -3718,8 +3718,8 @@ packages:
react:
optional: true
'@hanzo/ui@5.5.1':
resolution: {integrity: sha512-r52J5OvjcFHqDYbr8Kr3K3j6sAnHb8tWkU261Xrk5pCC4Xhm1YZHdfTAQo9AO+izDKcMvsZKYxJ/p3jUwLS+qA==}
'@hanzo/ui-shadcn@5.7.4':
resolution: {integrity: sha512-MFGPp+GYzaBUyd79F2mrk40SDLTFgUBEoPiSFVuJjekOVr5bJvUVNIWdoNtrl5ITL86N2ruiCNRhKGmEJyHFQA==}
hasBin: true
peerDependencies:
'@dnd-kit/core': ^6.0.0
@@ -3746,7 +3746,7 @@ packages:
react-dom: ^18.0.0 || ^19.0.0
react-hook-form: ^7.0.0
react-qrcode-logo: ^2.0.0
react-resizable-panels: ^3.0.0 || ^4.0.0
react-resizable-panels: ^3.0.0
recharts: ^2.0.0
sql.js: ^1.0.0
styled-components: ^6.0.0
@@ -4499,10 +4499,10 @@ packages:
cpu: [x64]
os: [win32]
'@next/third-parties@15.5.14':
resolution: {integrity: sha512-fNCcA9zYZ/i4zxW0CdtINLvc+AhVJLXJhwobtEe+kOkaeNA+Hpw5SYLmRp/s9cqFm32sjebeP+ma8L8IwC22Ow==}
'@next/third-parties@16.2.10':
resolution: {integrity: sha512-H3yxCMLziM1JKXnjQv83WBH2cp1fB1vMxpC1/bBTpvvaesBEuRuprpzq5RI32atis0VhUZflgdpJdGNZIGpQaQ==}
peerDependencies:
next: ^13.0.0 || ^14.0.0 || ^15.0.0
next: ^13.0.0 || ^14.0.0 || ^15.0.0 || ^16.0.0-beta.0
react: ^18.2.0 || 19.0.0-rc-de68d2f4-20241204 || ^19.0.0
'@noble/hashes@1.8.0':
@@ -7729,14 +7729,14 @@ packages:
comma-separated-tokens@2.0.3:
resolution: {integrity: sha512-Fu4hJdvzeylCfQPp9SGWidpzrMs7tTrlu6Vb8XGaRGck8QSNZJJp538Wrb60Lax4fPwR64ViY468OIUTbRlGZg==}
commander@12.1.0:
resolution: {integrity: sha512-Vw8qHK3bZM9y/P10u3Vib8o/DdkvA2OtPtZvD871QKjy74Wj1WSKFILMPRPSdUSx5RFK1arlJzEtA4PkFgnbuA==}
engines: {node: '>=18'}
commander@13.1.0:
resolution: {integrity: sha512-/rFeCpNJQbhSZjGVwO9RFV3xPqbnERS8MmIQzCtD/zl6gpJuV/bMLuN92oG3F7d8oDEHHRrujSXNUr8fpjntKw==}
engines: {node: '>=18'}
commander@14.0.3:
resolution: {integrity: sha512-H+y0Jo/T1RZ9qPP4Eh1pkcQcLRglraJaSLoyOtHxu6AapkjWVCy2Sit1QQ4x3Dng8qDlSsZEet7g5Pq06MvTgw==}
engines: {node: '>=20'}
commander@2.20.3:
resolution: {integrity: sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ==}
@@ -12023,8 +12023,8 @@ packages:
typescript:
optional: true
react-intersection-observer@9.16.0:
resolution: {integrity: sha512-w9nJSEp+DrW9KmQmeWHQyfaP6b03v+TdXynaoA964Wxt7mdR3An11z4NNCQgL4gKSK7y1ver2Fq+JKH6CWEzUA==}
react-intersection-observer@10.0.3:
resolution: {integrity: sha512-luICLMbs0zxTO/70Zy7K5jOXkABPEVSAF8T3FdZUlctsrIaPLmx8TZe2SSA+CY2HGWfz2INyNTnp82pxNNsShA==}
peerDependencies:
react: ^17.0.0 || ^18.0.0 || ^19.0.0
react-dom: ^17.0.0 || ^18.0.0 || ^19.0.0
@@ -17366,10 +17366,10 @@ snapshots:
optionalDependencies:
react: 18.3.1
'@hanzo/ui@5.5.1(@hookform/resolvers@3.10.0(react-hook-form@7.71.2(react@18.3.1)))(@modelcontextprotocol/sdk@1.22.0(@cfworker/json-schema@4.1.1))(@tanstack/react-query@4.43.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(@tanstack/react-table@8.21.3(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(@types/react-dom@18.3.7(@types/react@18.3.28))(@types/react@18.3.28)(date-fns@3.6.0)(embla-carousel@8.6.0)(framer-motion@11.18.2(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(lucide-react@0.394.0(react@18.3.1))(mermaid@11.13.0)(mobx@6.15.0)(next-themes@0.4.6(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(next@15.5.12(@babel/core@7.29.0)(@opentelemetry/api@1.9.0)(@playwright/test@1.58.2)(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(react-dom@18.3.1(react@18.3.1))(react-hook-form@7.71.2(react@18.3.1))(react-resizable-panels@3.0.6(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(react@18.3.1)(tailwindcss@3.4.19(yaml@2.8.3))(validator@13.15.26)':
'@hanzo/ui-shadcn@5.7.4(@hookform/resolvers@3.10.0(react-hook-form@7.71.2(react@18.3.1)))(@modelcontextprotocol/sdk@1.22.0(@cfworker/json-schema@4.1.1))(@tanstack/react-query@4.43.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(@tanstack/react-table@8.21.3(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(@types/react-dom@18.3.7(@types/react@18.3.28))(@types/react@18.3.28)(date-fns@3.6.0)(embla-carousel@8.6.0)(framer-motion@11.18.2(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(lucide-react@0.394.0(react@18.3.1))(mermaid@11.13.0)(mobx@6.15.0)(next-themes@0.4.6(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(next@15.5.12(@babel/core@7.29.0)(@opentelemetry/api@1.9.0)(@playwright/test@1.58.2)(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(react-dom@18.3.1(react@18.3.1))(react-hook-form@7.71.2(react@18.3.1))(react-resizable-panels@3.0.6(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(react@18.3.1)(tailwindcss@3.4.19(yaml@2.8.3))(validator@13.15.26)':
dependencies:
'@hookform/resolvers': 3.10.0(react-hook-form@7.71.2(react@18.3.1))
'@next/third-parties': 15.5.14(next@15.5.12(@babel/core@7.29.0)(@opentelemetry/api@1.9.0)(@playwright/test@1.58.2)(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(react@18.3.1)
'@next/third-parties': 16.2.10(next@15.5.12(@babel/core@7.29.0)(@opentelemetry/api@1.9.0)(@playwright/test@1.58.2)(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(react@18.3.1)
'@radix-ui/react-accordion': 1.2.12(@types/react-dom@18.3.7(@types/react@18.3.28))(@types/react@18.3.28)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)
'@radix-ui/react-alert-dialog': 1.1.15(@types/react-dom@18.3.7(@types/react@18.3.28))(@types/react@18.3.28)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)
'@radix-ui/react-aspect-ratio': 1.1.8(@types/react-dom@18.3.7(@types/react@18.3.28))(@types/react@18.3.28)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)
@@ -17404,7 +17404,7 @@ snapshots:
class-variance-authority: 0.7.1
clsx: 2.1.1
cmdk: 1.1.1(@types/react-dom@18.3.7(@types/react@18.3.28))(@types/react@18.3.28)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)
commander: 12.1.0
commander: 14.0.3
embla-carousel-react: 8.6.0(react@18.3.1)
input-otp: 1.4.2(react-dom@18.3.1(react@18.3.1))(react@18.3.1)
little-date: 1.2.1
@@ -17418,7 +17418,7 @@ snapshots:
postcss-selector-parser: 7.1.1
react: 18.3.1
react-dom: 18.3.1(react@18.3.1)
react-intersection-observer: 9.16.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1)
react-intersection-observer: 10.0.3(react-dom@18.3.1(react@18.3.1))(react@18.3.1)
sonner: 2.0.7(react-dom@18.3.1(react@18.3.1))(react@18.3.1)
svg-pan-zoom: 3.6.2
tailwind-merge: 3.5.0
@@ -17682,41 +17682,6 @@ snapshots:
jest-util: 30.3.0
slash: 3.0.0
'@jest/core@30.3.0':
dependencies:
'@jest/console': 30.3.0
'@jest/pattern': 30.0.1
'@jest/reporters': 30.3.0
'@jest/test-result': 30.3.0
'@jest/transform': 30.3.0
'@jest/types': 30.3.0
'@types/node': 20.19.37
ansi-escapes: 4.3.2
chalk: 4.1.2
ci-info: 4.4.0
exit-x: 0.2.2
graceful-fs: 4.2.11
jest-changed-files: 30.3.0
jest-config: 30.3.0(@types/node@20.19.37)(ts-node@10.9.2(@types/node@20.19.37)(typescript@5.9.3))
jest-haste-map: 30.3.0
jest-message-util: 30.3.0
jest-regex-util: 30.0.1
jest-resolve: 30.3.0
jest-resolve-dependencies: 30.3.0
jest-runner: 30.3.0
jest-runtime: 30.3.0
jest-snapshot: 30.3.0
jest-util: 30.3.0
jest-validate: 30.3.0
jest-watcher: 30.3.0
pretty-format: 30.3.0
slash: 3.0.0
transitivePeerDependencies:
- babel-plugin-macros
- esbuild-register
- supports-color
- ts-node
'@jest/core@30.3.0(ts-node@10.9.2(@types/node@20.19.37)(typescript@5.9.3))':
dependencies:
'@jest/console': 30.3.0
@@ -18513,7 +18478,7 @@ snapshots:
'@next/swc-win32-x64-msvc@15.5.12':
optional: true
'@next/third-parties@15.5.14(next@15.5.12(@babel/core@7.29.0)(@opentelemetry/api@1.9.0)(@playwright/test@1.58.2)(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(react@18.3.1)':
'@next/third-parties@16.2.10(next@15.5.12(@babel/core@7.29.0)(@opentelemetry/api@1.9.0)(@playwright/test@1.58.2)(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(react@18.3.1)':
dependencies:
next: 15.5.12(@babel/core@7.29.0)(@opentelemetry/api@1.9.0)(@playwright/test@1.58.2)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)
react: 18.3.1
@@ -22293,10 +22258,10 @@ snapshots:
comma-separated-tokens@2.0.3: {}
commander@12.1.0: {}
commander@13.1.0: {}
commander@14.0.3: {}
commander@2.20.3: {}
commander@4.1.1: {}
@@ -23336,24 +23301,24 @@ snapshots:
- eslint-import-resolver-webpack
- supports-color
eslint-plugin-jest@29.15.0(@typescript-eslint/eslint-plugin@8.57.1(@typescript-eslint/parser@8.57.1(eslint@9.39.4(jiti@1.21.7))(typescript@5.9.3))(eslint@9.39.4(jiti@1.21.7))(typescript@5.9.3))(eslint@9.39.4(jiti@1.21.7))(jest@30.3.0(@types/node@20.19.37))(typescript@5.9.3):
eslint-plugin-jest@29.15.0(@typescript-eslint/eslint-plugin@8.57.1(@typescript-eslint/parser@8.57.1(eslint@9.39.4(jiti@1.21.7))(typescript@5.9.3))(eslint@9.39.4(jiti@1.21.7))(typescript@5.9.3))(eslint@9.39.4(jiti@1.21.7))(jest@30.3.0(@types/node@20.19.37)(ts-node@10.9.2(@types/node@20.19.37)(typescript@5.9.3)))(typescript@5.9.3):
dependencies:
'@typescript-eslint/utils': 8.57.1(eslint@9.39.4(jiti@1.21.7))(typescript@5.9.3)
eslint: 9.39.4(jiti@1.21.7)
optionalDependencies:
'@typescript-eslint/eslint-plugin': 8.57.1(@typescript-eslint/parser@8.57.1(eslint@9.39.4(jiti@1.21.7))(typescript@5.9.3))(eslint@9.39.4(jiti@1.21.7))(typescript@5.9.3)
jest: 30.3.0(@types/node@20.19.37)
jest: 30.3.0(@types/node@20.19.37)(ts-node@10.9.2(@types/node@20.19.37)(typescript@5.9.3))
typescript: 5.9.3
transitivePeerDependencies:
- supports-color
eslint-plugin-jest@29.15.0(@typescript-eslint/eslint-plugin@8.57.1(@typescript-eslint/parser@8.57.1(eslint@9.39.4(jiti@1.21.7))(typescript@5.9.3))(eslint@9.39.4(jiti@1.21.7))(typescript@5.9.3))(eslint@9.39.4(jiti@1.21.7))(jest@30.3.0)(typescript@5.9.3):
eslint-plugin-jest@29.15.0(@typescript-eslint/eslint-plugin@8.57.1(@typescript-eslint/parser@8.57.1(eslint@9.39.4(jiti@1.21.7))(typescript@5.9.3))(eslint@9.39.4(jiti@1.21.7))(typescript@5.9.3))(eslint@9.39.4(jiti@1.21.7))(jest@30.3.0(@types/node@25.5.0)(ts-node@10.9.2(@types/node@25.5.0)(typescript@5.9.3)))(typescript@5.9.3):
dependencies:
'@typescript-eslint/utils': 8.57.1(eslint@9.39.4(jiti@1.21.7))(typescript@5.9.3)
eslint: 9.39.4(jiti@1.21.7)
optionalDependencies:
'@typescript-eslint/eslint-plugin': 8.57.1(@typescript-eslint/parser@8.57.1(eslint@9.39.4(jiti@1.21.7))(typescript@5.9.3))(eslint@9.39.4(jiti@1.21.7))(typescript@5.9.3)
jest: 30.3.0
jest: 30.3.0(@types/node@25.5.0)(ts-node@10.9.2(@types/node@25.5.0)(typescript@5.9.3))
typescript: 5.9.3
transitivePeerDependencies:
- supports-color
@@ -24771,44 +24736,6 @@ snapshots:
- babel-plugin-macros
- supports-color
jest-cli@30.3.0:
dependencies:
'@jest/core': 30.3.0
'@jest/test-result': 30.3.0
'@jest/types': 30.3.0
chalk: 4.1.2
exit-x: 0.2.2
import-local: 3.2.0
jest-config: 30.3.0(@types/node@25.5.0)(ts-node@10.9.2(@types/node@25.5.0)(typescript@5.9.3))
jest-util: 30.3.0
jest-validate: 30.3.0
yargs: 17.7.2
transitivePeerDependencies:
- '@types/node'
- babel-plugin-macros
- esbuild-register
- supports-color
- ts-node
jest-cli@30.3.0(@types/node@20.19.37):
dependencies:
'@jest/core': 30.3.0
'@jest/test-result': 30.3.0
'@jest/types': 30.3.0
chalk: 4.1.2
exit-x: 0.2.2
import-local: 3.2.0
jest-config: 30.3.0(@types/node@20.19.37)(ts-node@10.9.2(@types/node@20.19.37)(typescript@5.9.3))
jest-util: 30.3.0
jest-validate: 30.3.0
yargs: 17.7.2
transitivePeerDependencies:
- '@types/node'
- babel-plugin-macros
- esbuild-register
- supports-color
- ts-node
jest-cli@30.3.0(@types/node@20.19.37)(ts-node@10.9.2(@types/node@20.19.37)(typescript@5.9.3)):
dependencies:
'@jest/core': 30.3.0(ts-node@10.9.2(@types/node@20.19.37)(typescript@5.9.3))
@@ -25237,32 +25164,6 @@ snapshots:
merge-stream: 2.0.0
supports-color: 8.1.1
jest@30.3.0:
dependencies:
'@jest/core': 30.3.0
'@jest/types': 30.3.0
import-local: 3.2.0
jest-cli: 30.3.0
transitivePeerDependencies:
- '@types/node'
- babel-plugin-macros
- esbuild-register
- supports-color
- ts-node
jest@30.3.0(@types/node@20.19.37):
dependencies:
'@jest/core': 30.3.0
'@jest/types': 30.3.0
import-local: 3.2.0
jest-cli: 30.3.0(@types/node@20.19.37)
transitivePeerDependencies:
- '@types/node'
- babel-plugin-macros
- esbuild-register
- supports-color
- ts-node
jest@30.3.0(@types/node@20.19.37)(ts-node@10.9.2(@types/node@20.19.37)(typescript@5.9.3)):
dependencies:
'@jest/core': 30.3.0(ts-node@10.9.2(@types/node@20.19.37)(typescript@5.9.3))
@@ -27675,7 +27576,7 @@ snapshots:
react-dom: 18.3.1(react@18.3.1)
typescript: 5.9.3
react-intersection-observer@9.16.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1):
react-intersection-observer@10.0.3(react-dom@18.3.1(react@18.3.1))(react@18.3.1):
dependencies:
react: 18.3.1
optionalDependencies: