diff --git a/.github/CODEOWNERS b/.github/CODEOWNERS
index 1ec9ca022f..f1e5a56b48 100644
--- a/.github/CODEOWNERS
+++ b/.github/CODEOWNERS
@@ -22,5 +22,5 @@ package.json @immutable/passport
/packages/minting-backend @shineli1984
/packages/webhook @shineli1984
/packages/game-bridge @immutable/gamesdk
-/examples @immutable/devgrowth
+/examples @immutable/passport
**/package.json @immutable/passport
diff --git a/.syncpackrc b/.syncpackrc
index 19421a4016..690c02315d 100644
--- a/.syncpackrc
+++ b/.syncpackrc
@@ -13,6 +13,13 @@
"dependencyTypes": ["peer"],
"packages": ["@imtbl/auth-next-server", "@imtbl/auth-next-client", "@imtbl/sdk"],
"isIgnored": true
+ },
+ {
+ "label": "Allow Next.js version flexibility in auth-next devDependencies",
+ "dependencies": ["next"],
+ "dependencyTypes": ["dev"],
+ "packages": ["@imtbl/auth-next-server", "@imtbl/auth-next-client"],
+ "isIgnored": true
}
]
}
\ No newline at end of file
diff --git a/examples/passport/wallets-connect-with-nextjs/.env b/examples/passport/wallets-connect-with-nextjs/.env
index a0b975515f..3b4921917e 100644
--- a/examples/passport/wallets-connect-with-nextjs/.env
+++ b/examples/passport/wallets-connect-with-nextjs/.env
@@ -1,2 +1,5 @@
NEXT_PUBLIC_PUBLISHABLE_KEY="pk_imapik-test-5ss4GpFy-n@$$Ye3LSox"
-NEXT_PUBLIC_CLIENT_ID="K846H940Uxokhz1aDb034QwBclYnAH24"
\ No newline at end of file
+NEXT_PUBLIC_CLIENT_ID="K846H940Uxokhz1aDb034QwBclYnAH24"
+
+# Required for Auth-Next example (NextAuth.js)
+AUTH_SECRET="test-secret-key-for-development-minimum-32-characters-long-change-in-prod"
\ No newline at end of file
diff --git a/examples/passport/wallets-connect-with-nextjs/.env.example b/examples/passport/wallets-connect-with-nextjs/.env.example
index 1947cf61ec..64d1ea2761 100644
--- a/examples/passport/wallets-connect-with-nextjs/.env.example
+++ b/examples/passport/wallets-connect-with-nextjs/.env.example
@@ -1,2 +1,7 @@
NEXT_PUBLIC_PUBLISHABLE_KEY=
-NEXT_PUBLIC_CLIENT_ID=
\ No newline at end of file
+NEXT_PUBLIC_CLIENT_ID=
+
+# Required for Auth-Next example (NextAuth.js)
+# Generate with: openssl rand -base64 32
+# See: https://next-auth.js.org/configuration/options#nextauth_secret
+AUTH_SECRET=your-secret-key-min-32-characters-long-change-this
\ No newline at end of file
diff --git a/examples/passport/wallets-connect-with-nextjs/README.md b/examples/passport/wallets-connect-with-nextjs/README.md
index 1d568290df..905038ae98 100644
--- a/examples/passport/wallets-connect-with-nextjs/README.md
+++ b/examples/passport/wallets-connect-with-nextjs/README.md
@@ -10,7 +10,29 @@ pnpm dev
browse to `http://localhost:3000` to see the full list of examples.
+## Examples
+
+1. **Connect with EIP-1193** - Standard Ethereum provider
+2. **Connect with EtherJS** - Using ethers.js library
+3. **Connect with Wagmi** - Using wagmi library
+4. **🆕 Connect with Auth-Next (Default Auth)** - Zero-config auth with `@imtbl/auth-next-client` + `@imtbl/wallet`
+
## Required Environment Variables
+### For Passport SDK Examples (EIP-1193, EtherJS, Wagmi)
- NEXT_PUBLIC_PUBLISHABLE_KEY // replace with your publishable API key from Hub
-- NEXT_PUBLIC_CLIENT_ID // replace with your client ID from Hub
\ No newline at end of file
+- NEXT_PUBLIC_CLIENT_ID // replace with your client ID from Hub
+
+### For Auth-Next Example (Default Auth)
+- `AUTH_SECRET` - Required for NextAuth.js (min 32 characters). Generate one with:
+ `openssl rand -base64 32`, or see [NextAuth.js configuration](https://next-auth.js.org/configuration/options#nextauth_secret)
+- No other variables needed! ClientId and redirectUri are auto-detected.
+
+## Auth-Next Default Auth
+
+The `/connect-with-auth-next` route demonstrates:
+- Zero-config authentication using `@imtbl/auth-next-client` and `@imtbl/auth-next-server`
+- Integration with `@imtbl/wallet` using the `getUser` function from `useImmutableSession()`
+- Auto-detection of clientId (sandbox vs production based on hostname)
+- Auto-derivation of redirectUri (from `window.location.origin`)
+- Full wallet connection flow without manual configuration
\ No newline at end of file
diff --git a/examples/passport/wallets-connect-with-nextjs/app/api/auth/[...nextauth]/route.ts b/examples/passport/wallets-connect-with-nextjs/app/api/auth/[...nextauth]/route.ts
new file mode 100644
index 0000000000..b970e52532
--- /dev/null
+++ b/examples/passport/wallets-connect-with-nextjs/app/api/auth/[...nextauth]/route.ts
@@ -0,0 +1,3 @@
+import { handlers } from "@/lib/auth-next";
+
+export const { GET, POST } = handlers;
diff --git a/examples/passport/wallets-connect-with-nextjs/app/callback/page.tsx b/examples/passport/wallets-connect-with-nextjs/app/callback/page.tsx
new file mode 100644
index 0000000000..524938ef6f
--- /dev/null
+++ b/examples/passport/wallets-connect-with-nextjs/app/callback/page.tsx
@@ -0,0 +1,33 @@
+"use client";
+
+import {
+ CallbackPage,
+ DEFAULT_REDIRECT_URI_PATH,
+ DEFAULT_SANDBOX_CLIENT_ID,
+} from "@imtbl/auth-next-client";
+
+export default function AuthCallback() {
+ // Build redirectUri only when window exists to avoid prerender error
+ const config =
+ typeof window !== "undefined"
+ ? {
+ clientId: DEFAULT_SANDBOX_CLIENT_ID,
+ redirectUri: `${window.location.origin}${DEFAULT_REDIRECT_URI_PATH}`,
+ }
+ : null;
+
+ if (!config) {
+ return (
+
+
Processing authentication...
+
+ );
+ }
+
+ return (
+
+
Processing authentication...
+
+
+ );
+}
diff --git a/examples/passport/wallets-connect-with-nextjs/app/connect-with-auth-next/page.tsx b/examples/passport/wallets-connect-with-nextjs/app/connect-with-auth-next/page.tsx
new file mode 100644
index 0000000000..5d07bce4d0
--- /dev/null
+++ b/examples/passport/wallets-connect-with-nextjs/app/connect-with-auth-next/page.tsx
@@ -0,0 +1,160 @@
+'use client';
+
+import { Button, Heading, Body } from '@biom3/react';
+import { useImmutableSession, useLogin, useLogout } from '@imtbl/auth-next-client';
+import { connectWallet } from '@imtbl/wallet';
+import { useState } from 'react';
+import { SessionProvider } from 'next-auth/react';
+
+function ConnectWithAuthNextContent() {
+ const { isAuthenticated, session, getUser } = useImmutableSession();
+ const { loginWithPopup, isLoggingIn, error: loginError } = useLogin();
+ const { logout, isLoggingOut, error: logoutError } = useLogout();
+ const [walletAddress, setWalletAddress] = useState('');
+ const [walletError, setWalletError] = useState('');
+
+ const handleLogin = async () => {
+ try {
+ await loginWithPopup(); // Zero config!
+ } catch (err) {
+ console.error('Login failed:', err);
+ }
+ };
+
+ const handleLogout = async () => {
+ try {
+ await logout(); // Zero config!
+ } catch (err) {
+ console.error('Logout failed:', err);
+ }
+ };
+
+ const handleConnectWallet = async () => {
+ try {
+ setWalletError('');
+
+ // Connect wallet using getUser from useImmutableSession
+ const provider = await connectWallet({
+ getUser, // Uses default auth from NextAuth session!
+ });
+
+ // Get the wallet address
+ const accounts = await provider.request({
+ method: 'eth_requestAccounts'
+ }) as string[];
+
+ setWalletAddress(accounts[0]);
+ } catch (err) {
+ const errorMsg = err instanceof Error ? err.message : 'Failed to connect wallet';
+ setWalletError(errorMsg);
+ console.error('Wallet connection failed:', err);
+ }
+ };
+
+ return (
+
+
+ Connect Wallet with Auth-Next (Default Auth)
+
+
+
+ This example demonstrates using
@imtbl/auth-next-client and
@imtbl/wallet
+ together with zero-config default auth.
+
+
+
+
Status: {isAuthenticated ? '✅ Authenticated' : '❌ Not Authenticated'}
+ {session?.user?.email && (
+
+ Email: {session.user.email}
+
+ )}
+ {walletAddress && (
+
+ Wallet: {walletAddress}
+
+ )}
+
+
+ {!isAuthenticated ? (
+ <>
+
+ {isLoggingIn ? 'Signing in...' : '🔐 Sign In (Zero Config)'}
+
+ {loginError && (
+
+ Error: {loginError}
+
+ )}
+
+ Uses
loginWithPopup() with no configuration.
+ ClientId and redirectUri are auto-detected!
+
+ >
+ ) : (
+ <>
+
+ {walletAddress ? '✅ Wallet Connected' : '💼 Connect Wallet'}
+
+
+
+ {isLoggingOut ? 'Signing out...' : '🚪 Sign Out'}
+
+
+ {walletError && (
+
+ Wallet Error: {walletError}
+
+ )}
+ {logoutError && (
+
+ Logout Error: {logoutError}
+
+ )}
+
+
+
✅ Integration Test:
+
+ Auth via useImmutableSession()
+ Wallet via connectWallet({ getUser })
+ Zero configuration required!
+
+
+ >
+ )}
+
+ );
+}
+
+export default function ConnectWithAuthNext() {
+ return (
+
+
+
+ );
+}
diff --git a/examples/passport/wallets-connect-with-nextjs/app/page.tsx b/examples/passport/wallets-connect-with-nextjs/app/page.tsx
index 495318ba2c..786ee51c17 100644
--- a/examples/passport/wallets-connect-with-nextjs/app/page.tsx
+++ b/examples/passport/wallets-connect-with-nextjs/app/page.tsx
@@ -26,6 +26,12 @@ export default function Home() {
size="medium"
rc={ }>
Connect with Wagmi
-
+
+ }>
+ 🆕 Connect with Auth-Next (Default Auth)
+
>);
}
diff --git a/examples/passport/wallets-connect-with-nextjs/lib/auth-next.ts b/examples/passport/wallets-connect-with-nextjs/lib/auth-next.ts
new file mode 100644
index 0000000000..b5b466fb64
--- /dev/null
+++ b/examples/passport/wallets-connect-with-nextjs/lib/auth-next.ts
@@ -0,0 +1,11 @@
+import NextAuth from "next-auth";
+import { createAuthConfig } from "@imtbl/auth-next-server";
+
+/**
+ * Default auth configuration for testing.
+ * This uses zero-config setup to demonstrate default auth functionality.
+ */
+// Type assertion avoids monorepo conflict when next-auth resolves from different paths
+export const { handlers, auth, signIn, signOut } = NextAuth(
+ createAuthConfig() as Parameters[0],
+);
diff --git a/examples/passport/wallets-connect-with-nextjs/package.json b/examples/passport/wallets-connect-with-nextjs/package.json
index efa9960cea..6d35d00ce6 100644
--- a/examples/passport/wallets-connect-with-nextjs/package.json
+++ b/examples/passport/wallets-connect-with-nextjs/package.json
@@ -4,9 +4,13 @@
"dependencies": {
"@biom3/react": "^0.27.12",
"@imtbl/sdk": "workspace:*",
+ "@imtbl/auth-next-client": "workspace:*",
+ "@imtbl/auth-next-server": "workspace:*",
+ "@imtbl/wallet": "workspace:*",
"@tanstack/react-query": "^5.51.11",
"ethers": "^6.13.4",
- "next": "14.2.25",
+ "next": "15.2.6",
+ "next-auth": "^5.0.0-beta.30",
"react": "^18.2.0",
"react-dom": "^18.2.0",
"wagmi": "^2.11.3"
@@ -17,7 +21,7 @@
"@types/react": "^18.0.28",
"@types/react-dom": "^18.0.11",
"eslint": "^8",
- "eslint-config-next": "14.2.5",
+ "eslint-config-next": "15.2.6",
"postcss": "^8",
"tailwindcss": "^3.4.1",
"typescript": "^5.6.2"
diff --git a/examples/passport/wallets-connect-with-nextjs/tsconfig.json b/examples/passport/wallets-connect-with-nextjs/tsconfig.json
index e7ff90fd27..d81d4ee14e 100644
--- a/examples/passport/wallets-connect-with-nextjs/tsconfig.json
+++ b/examples/passport/wallets-connect-with-nextjs/tsconfig.json
@@ -1,6 +1,10 @@
{
"compilerOptions": {
- "lib": ["dom", "dom.iterable", "esnext"],
+ "lib": [
+ "dom",
+ "dom.iterable",
+ "esnext"
+ ],
"allowJs": true,
"skipLibCheck": true,
"strict": true,
@@ -18,9 +22,19 @@
}
],
"paths": {
- "@/*": ["./*"]
- }
+ "@/*": [
+ "./*"
+ ]
+ },
+ "target": "ES2017"
},
- "include": ["next-env.d.ts", "**/*.ts", "**/*.tsx", ".next/types/**/*.ts"],
- "exclude": ["node_modules"]
+ "include": [
+ "next-env.d.ts",
+ "**/*.ts",
+ "**/*.tsx",
+ ".next/types/**/*.ts"
+ ],
+ "exclude": [
+ "node_modules"
+ ]
}
diff --git a/packages/auth-next-client/README.md b/packages/auth-next-client/README.md
index d0a36be569..16274a030e 100644
--- a/packages/auth-next-client/README.md
+++ b/packages/auth-next-client/README.md
@@ -27,6 +27,10 @@ npm install @imtbl/auth-next-client @imtbl/auth-next-server next-auth@5
- `next` >= 14.0.0
- `next-auth` >= 5.0.0-beta.25
+### Next.js 14 Compatibility
+
+This package is compatible with both Next.js 14 and 15. It uses only standard APIs available in both versions (`next/navigation` for `useRouter`, `next-auth/react`). No Next.js 15-only APIs are used.
+
## Quick Start
### 1. Set Up Server-Side Auth
@@ -100,6 +104,42 @@ export default function Callback() {
}
```
+### Default Auth (Zero Config)
+
+When using `createAuthConfig()` with no args on the server, you can call login/logout with no config—sandbox clientId and redirectUri are used:
+
+```tsx
+// With default auth - no config needed
+function LoginButton() {
+ const { isAuthenticated } = useImmutableSession();
+ const { loginWithPopup, isLoggingIn, error } = useLogin();
+
+ if (isAuthenticated) return You are logged in!
;
+
+ return (
+ loginWithPopup()} disabled={isLoggingIn}>
+ {isLoggingIn ? "Signing in..." : "Sign In"}
+
+ );
+}
+```
+
+Or with custom config (pass full LoginConfig/LogoutConfig when overriding):
+
+```tsx
+// With custom config - pass complete config
+loginWithPopup({
+ clientId: process.env.NEXT_PUBLIC_IMMUTABLE_CLIENT_ID!,
+ redirectUri: `${window.location.origin}/callback`,
+});
+logout({
+ clientId: process.env.NEXT_PUBLIC_IMMUTABLE_CLIENT_ID!,
+ logoutRedirectUri: process.env.NEXT_PUBLIC_BASE_URL!,
+});
+```
+
+See the [wallets-connect-with-nextjs](../../examples/passport/wallets-connect-with-nextjs) example for a full integration with `@imtbl/wallet`.
+
### 5. Add Login Button
Use the `useLogin` hook for login flows with built-in state management:
diff --git a/packages/auth-next-client/package.json b/packages/auth-next-client/package.json
index d1bad50656..100b793813 100644
--- a/packages/auth-next-client/package.json
+++ b/packages/auth-next-client/package.json
@@ -40,7 +40,7 @@
"@imtbl/auth-next-server": "workspace:*"
},
"peerDependencies": {
- "next": "^15.0.0",
+ "next": "^14.0.0 || ^15.0.0",
"next-auth": "^5.0.0-beta.25",
"react": "^18.2.0 || ^19.0.0"
},
@@ -65,7 +65,7 @@
"@types/react": "^18.3.5",
"eslint": "^8.56.0",
"jest": "^29.7.0",
- "next": "^15.1.6",
+ "next": "^15.2.6",
"next-auth": "^5.0.0-beta.30",
"react": "^18.2.0",
"tsup": "^8.3.0",
diff --git a/packages/auth-next-client/src/constants.ts b/packages/auth-next-client/src/constants.ts
index 83a42e0522..c2d8c53f1d 100644
--- a/packages/auth-next-client/src/constants.ts
+++ b/packages/auth-next-client/src/constants.ts
@@ -1,45 +1,16 @@
/**
- * Shared constants for @imtbl/auth-next-client
+ * Client-side constants for @imtbl/auth-next-client.
+ * Defined locally to avoid importing from auth-next-server (which uses next/server).
+ * Values must stay in sync with auth-next-server constants.
*/
-/**
- * Default Immutable authentication domain
- */
export const DEFAULT_AUTH_DOMAIN = 'https://auth.immutable.com';
-
-/**
- * Default OAuth audience
- */
export const DEFAULT_AUDIENCE = 'platform_api';
-
-/**
- * Default OAuth scopes
- */
export const DEFAULT_SCOPE = 'openid profile email offline_access transact';
-
-/**
- * NextAuth credentials provider ID for Immutable
- */
export const IMMUTABLE_PROVIDER_ID = 'immutable';
-
-/**
- * Default NextAuth API base path
- */
export const DEFAULT_NEXTAUTH_BASE_PATH = '/api/auth';
-
-/**
- * Default token expiry in seconds (15 minutes)
- * Used as fallback when exp claim cannot be extracted from JWT
- */
-export const DEFAULT_TOKEN_EXPIRY_SECONDS = 900;
-
-/**
- * Default token expiry in milliseconds
- */
-export const DEFAULT_TOKEN_EXPIRY_MS = DEFAULT_TOKEN_EXPIRY_SECONDS * 1000;
-
-/**
- * Buffer time in milliseconds before token expiry to trigger refresh.
- * Matches TOKEN_EXPIRY_BUFFER_SECONDS (60s) in @imtbl/auth-next-server.
- */
-export const TOKEN_EXPIRY_BUFFER_MS = 60 * 1000;
+export const DEFAULT_SANDBOX_CLIENT_ID = 'mjtCL8mt06BtbxSkp2vbrYStKWnXVZfo';
+export const DEFAULT_REDIRECT_URI_PATH = '/callback';
+export const DEFAULT_LOGOUT_REDIRECT_URI_PATH = '/';
+export const DEFAULT_TOKEN_EXPIRY_MS = 900_000;
+export const TOKEN_EXPIRY_BUFFER_MS = 60_000;
diff --git a/packages/auth-next-client/src/defaultConfig.ts b/packages/auth-next-client/src/defaultConfig.ts
new file mode 100644
index 0000000000..bc8916f8a6
--- /dev/null
+++ b/packages/auth-next-client/src/defaultConfig.ts
@@ -0,0 +1,19 @@
+/**
+ * Sandbox default redirect URI for zero-config mode.
+ * Defined locally to avoid importing from auth-next-server (which uses next/server).
+ * OAuth requires an absolute URL; this runs in the browser when login is invoked.
+ *
+ * @internal
+ */
+
+import { DEFAULT_REDIRECT_URI_PATH } from './constants';
+
+export function deriveDefaultRedirectUri(): string {
+ if (typeof window === 'undefined') {
+ throw new Error(
+ '[auth-next-client] deriveDefaultRedirectUri requires window. '
+ + 'Login hooks run in the browser when the user triggers login.',
+ );
+ }
+ return `${window.location.origin}${DEFAULT_REDIRECT_URI_PATH}`;
+}
diff --git a/packages/auth-next-client/src/hooks.test.tsx b/packages/auth-next-client/src/hooks.test.tsx
index 957dfe7381..2d3f4420c7 100644
--- a/packages/auth-next-client/src/hooks.test.tsx
+++ b/packages/auth-next-client/src/hooks.test.tsx
@@ -23,6 +23,10 @@ jest.mock('@imtbl/auth', () => ({
logoutWithRedirect: jest.fn(),
}));
+jest.mock('./defaultConfig', () => ({
+ deriveDefaultRedirectUri: jest.fn(() => 'http://localhost:3000/callback'),
+}));
+
import { useImmutableSession } from './hooks';
// ---------------------------------------------------------------------------
diff --git a/packages/auth-next-client/src/hooks.tsx b/packages/auth-next-client/src/hooks.tsx
index 2aa038b79f..5677219f13 100644
--- a/packages/auth-next-client/src/hooks.tsx
+++ b/packages/auth-next-client/src/hooks.tsx
@@ -18,7 +18,16 @@ import {
loginWithRedirect as rawLoginWithRedirect,
logoutWithRedirect as rawLogoutWithRedirect,
} from '@imtbl/auth';
-import { IMMUTABLE_PROVIDER_ID, TOKEN_EXPIRY_BUFFER_MS } from './constants';
+import { deriveDefaultRedirectUri } from './defaultConfig';
+import {
+ IMMUTABLE_PROVIDER_ID,
+ TOKEN_EXPIRY_BUFFER_MS,
+ DEFAULT_SANDBOX_CLIENT_ID,
+ DEFAULT_LOGOUT_REDIRECT_URI_PATH,
+ DEFAULT_AUTH_DOMAIN,
+ DEFAULT_SCOPE,
+ DEFAULT_AUDIENCE,
+} from './constants';
import { storeIdToken, getStoredIdToken, clearStoredIdToken } from './idTokenStorage';
// ---------------------------------------------------------------------------
@@ -42,6 +51,37 @@ function deduplicatedUpdate(
return pendingRefresh;
}
+// ---------------------------------------------------------------------------
+// Sandbox defaults for zero-config (no config or full config - no merge)
+// ---------------------------------------------------------------------------
+
+function getSandboxLoginConfig(): LoginConfig {
+ const redirectUri = deriveDefaultRedirectUri();
+ return {
+ clientId: DEFAULT_SANDBOX_CLIENT_ID,
+ redirectUri,
+ popupRedirectUri: redirectUri,
+ scope: DEFAULT_SCOPE,
+ audience: DEFAULT_AUDIENCE,
+ authenticationDomain: DEFAULT_AUTH_DOMAIN,
+ };
+}
+
+function getSandboxLogoutConfig(): LogoutConfig {
+ if (typeof window === 'undefined') {
+ throw new Error(
+ '[auth-next-client] getSandboxLogoutConfig requires window. '
+ + 'Logout runs in the browser when the user triggers it.',
+ );
+ }
+ const logoutRedirectUri = window.location.origin + DEFAULT_LOGOUT_REDIRECT_URI_PATH;
+ return {
+ clientId: DEFAULT_SANDBOX_CLIENT_ID,
+ logoutRedirectUri,
+ authenticationDomain: DEFAULT_AUTH_DOMAIN,
+ };
+}
+
/**
* Internal session type with full token data (not exported).
* Used internally by the hook for token validation, refresh logic, and getUser/getAccessToken.
@@ -341,14 +381,17 @@ export function useImmutableSession(): UseImmutableSessionReturn {
/**
* Return type for useLogin hook
+ *
+ * Config is optional - when omitted, defaults are auto-derived (clientId, redirectUri, etc.).
+ * When provided, must be a complete LoginConfig.
*/
export interface UseLoginReturn {
/** Start login with popup flow */
- loginWithPopup: (config: LoginConfig, options?: StandaloneLoginOptions) => Promise;
+ loginWithPopup: (config?: LoginConfig, options?: StandaloneLoginOptions) => Promise;
/** Start login with embedded modal flow */
- loginWithEmbedded: (config: LoginConfig) => Promise;
+ loginWithEmbedded: (config?: LoginConfig) => Promise;
/** Start login with redirect flow (navigates away from page) */
- loginWithRedirect: (config: LoginConfig, options?: StandaloneLoginOptions) => Promise;
+ loginWithRedirect: (config?: LoginConfig, options?: StandaloneLoginOptions) => Promise;
/** Whether login is currently in progress */
isLoggingIn: boolean;
/** Error message from the last login attempt, or null if none */
@@ -356,39 +399,70 @@ export interface UseLoginReturn {
}
/**
- * Hook to handle Immutable authentication login flows.
+ * Hook to handle Immutable authentication login flows with automatic defaults.
*
* Provides login functions that:
* 1. Handle OAuth authentication via popup, embedded modal, or redirect
* 2. Automatically sign in to NextAuth after successful authentication
* 3. Track loading and error states
+ * 4. Auto-detect clientId and redirectUri if not provided (uses defaults)
*
- * Config is passed at call time to allow different configurations for different
- * login methods (e.g., different redirectUri vs popupRedirectUri).
+ * Config can be passed at call time or omitted to use sensible defaults:
+ * - `clientId`: Auto-detected based on environment (sandbox vs production)
+ * - `redirectUri`: Auto-derived from `window.location.origin + '/callback'`
+ * - `popupRedirectUri`: Auto-derived from `window.location.origin + '/callback'` (same as redirectUri)
+ * - `logoutRedirectUri`: Auto-derived from `window.location.origin`
+ * - `scope`: `'openid profile email offline_access transact'`
+ * - `audience`: `'platform_api'`
+ * - `authenticationDomain`: `'https://auth.immutable.com'`
*
* Must be used within a SessionProvider from next-auth/react.
*
- * @example
+ * @example Minimal usage (uses all defaults)
* ```tsx
* import { useLogin, useImmutableSession } from '@imtbl/auth-next-client';
*
- * const config = {
- * clientId: process.env.NEXT_PUBLIC_IMMUTABLE_CLIENT_ID!,
- * redirectUri: `${process.env.NEXT_PUBLIC_BASE_URL}/callback`,
- * popupRedirectUri: `${process.env.NEXT_PUBLIC_BASE_URL}/callback/popup`,
- * };
+ * function LoginButton() {
+ * const { isAuthenticated } = useImmutableSession();
+ * const { loginWithPopup, isLoggingIn, error } = useLogin();
+ *
+ * if (isAuthenticated) {
+ * return You are logged in!
;
+ * }
+ *
+ * return (
+ * <>
+ * loginWithPopup()} disabled={isLoggingIn}>
+ * {isLoggingIn ? 'Signing in...' : 'Sign In'}
+ *
+ * {error && {error}
}
+ * >
+ * );
+ * }
+ * ```
+ *
+ * @example With custom configuration
+ * ```tsx
+ * import { useLogin, useImmutableSession } from '@imtbl/auth-next-client';
*
* function LoginButton() {
* const { isAuthenticated } = useImmutableSession();
* const { loginWithPopup, isLoggingIn, error } = useLogin();
*
+ * const handleLogin = () => {
+ * loginWithPopup({
+ * clientId: process.env.NEXT_PUBLIC_IMMUTABLE_CLIENT_ID,
+ * redirectUri: `${window.location.origin}/callback`,
+ * });
+ * };
+ *
* if (isAuthenticated) {
* return You are logged in!
;
* }
*
* return (
* <>
- * loginWithPopup(config)} disabled={isLoggingIn}>
+ *
* {isLoggingIn ? 'Signing in...' : 'Sign In'}
*
* {error && {error}
}
@@ -434,16 +508,18 @@ export function useLogin(): UseLoginReturn {
/**
* Login with a popup window.
* Opens a popup for OAuth authentication, then signs in to NextAuth.
+ * Config is optional - defaults will be auto-derived if not provided.
*/
const loginWithPopup = useCallback(async (
- config: LoginConfig,
+ config?: LoginConfig,
options?: StandaloneLoginOptions,
): Promise => {
setIsLoggingIn(true);
setError(null);
try {
- const tokens = await rawLoginWithPopup(config, options);
+ const fullConfig = config ?? getSandboxLoginConfig();
+ const tokens = await rawLoginWithPopup(fullConfig, options);
await signInWithTokens(tokens);
} catch (err) {
const errorMessage = err instanceof Error ? err.message : 'Login failed';
@@ -457,13 +533,15 @@ export function useLogin(): UseLoginReturn {
/**
* Login with an embedded modal.
* Shows a modal for login method selection, then opens a popup for OAuth.
+ * Config is optional - defaults will be auto-derived if not provided.
*/
- const loginWithEmbedded = useCallback(async (config: LoginConfig): Promise => {
+ const loginWithEmbedded = useCallback(async (config?: LoginConfig): Promise => {
setIsLoggingIn(true);
setError(null);
try {
- const tokens = await rawLoginWithEmbedded(config);
+ const fullConfig = config ?? getSandboxLoginConfig();
+ const tokens = await rawLoginWithEmbedded(fullConfig);
await signInWithTokens(tokens);
} catch (err) {
const errorMessage = err instanceof Error ? err.message : 'Login failed';
@@ -479,16 +557,18 @@ export function useLogin(): UseLoginReturn {
* Redirects the page to OAuth authentication.
* After authentication, the user will be redirected to your callback page.
* Use the CallbackPage component to complete the flow.
+ * Config is optional - defaults will be auto-derived if not provided.
*/
const loginWithRedirect = useCallback(async (
- config: LoginConfig,
+ config?: LoginConfig,
options?: StandaloneLoginOptions,
): Promise => {
setIsLoggingIn(true);
setError(null);
try {
- await rawLoginWithRedirect(config, options);
+ const fullConfig = config ?? getSandboxLoginConfig();
+ await rawLoginWithRedirect(fullConfig, options);
// Note: The page will redirect, so this code may not run
} catch (err) {
const errorMessage = err instanceof Error ? err.message : 'Login failed';
@@ -518,9 +598,11 @@ export interface UseLogoutReturn {
* This ensures that when the user logs in again, they will be prompted to select
* an account instead of being automatically logged in with the previous account.
*
- * @param config - Logout configuration with clientId and optional redirectUri
+ * Config is optional - defaults will be auto-derived if not provided.
+ *
+ * @param config - Optional logout configuration with clientId and optional redirectUri
*/
- logout: (config: LogoutConfig) => Promise;
+ logout: (config?: LogoutConfig) => Promise;
/** Whether logout is currently in progress */
isLoggingOut: boolean;
/** Error message from the last logout attempt, or null if none */
@@ -538,16 +620,38 @@ export interface UseLogoutReturn {
* an account (for social logins like Google) instead of being automatically logged
* in with the previous account.
*
+ * Config is optional - defaults will be auto-derived if not provided:
+ * - `clientId`: Auto-detected based on environment (sandbox vs production)
+ * - `logoutRedirectUri`: Auto-derived from `window.location.origin`
+ *
* Must be used within a SessionProvider from next-auth/react.
*
- * @example
+ * @example Minimal usage (uses all defaults)
* ```tsx
* import { useLogout, useImmutableSession } from '@imtbl/auth-next-client';
*
- * const logoutConfig = {
- * clientId: process.env.NEXT_PUBLIC_IMMUTABLE_CLIENT_ID!,
- * logoutRedirectUri: process.env.NEXT_PUBLIC_BASE_URL!,
- * };
+ * function LogoutButton() {
+ * const { isAuthenticated } = useImmutableSession();
+ * const { logout, isLoggingOut, error } = useLogout();
+ *
+ * if (!isAuthenticated) {
+ * return null;
+ * }
+ *
+ * return (
+ * <>
+ * logout()} disabled={isLoggingOut}>
+ * {isLoggingOut ? 'Signing out...' : 'Sign Out'}
+ *
+ * {error && {error}
}
+ * >
+ * );
+ * }
+ * ```
+ *
+ * @example With custom configuration
+ * ```tsx
+ * import { useLogout, useImmutableSession } from '@imtbl/auth-next-client';
*
* function LogoutButton() {
* const { isAuthenticated } = useImmutableSession();
@@ -559,7 +663,13 @@ export interface UseLogoutReturn {
*
* return (
* <>
- * logout(logoutConfig)} disabled={isLoggingOut}>
+ * logout({
+ * clientId: process.env.NEXT_PUBLIC_IMMUTABLE_CLIENT_ID,
+ * logoutRedirectUri: `${window.location.origin}/custom-logout`,
+ * })}
+ * disabled={isLoggingOut}
+ * >
* {isLoggingOut ? 'Signing out...' : 'Sign Out'}
*
* {error && {error}
}
@@ -575,8 +685,9 @@ export function useLogout(): UseLogoutReturn {
/**
* Logout with federated logout.
* First clears the NextAuth session, then redirects to the auth domain's logout endpoint.
+ * Config is optional - defaults will be auto-derived if not provided.
*/
- const logout = useCallback(async (config: LogoutConfig): Promise => {
+ const logout = useCallback(async (config?: LogoutConfig): Promise => {
setIsLoggingOut(true);
setError(null);
@@ -588,10 +699,13 @@ export function useLogout(): UseLogoutReturn {
// We use redirect: false to handle the redirect ourselves for federated logout
await signOut({ redirect: false });
+ // Create full config with defaults
+ const fullConfig = config ?? getSandboxLogoutConfig();
+
// Redirect to the auth domain's logout endpoint using the standalone function
// This clears the upstream session (Auth0/Immutable) so that on next login,
// the user will be prompted to select an account instead of auto-logging in
- rawLogoutWithRedirect(config);
+ rawLogoutWithRedirect(fullConfig);
} catch (err) {
const errorMessage = err instanceof Error ? err.message : 'Logout failed';
setError(errorMessage);
diff --git a/packages/auth-next-client/src/index.ts b/packages/auth-next-client/src/index.ts
index c736255677..10e4da33b3 100644
--- a/packages/auth-next-client/src/index.ts
+++ b/packages/auth-next-client/src/index.ts
@@ -59,3 +59,15 @@ export type {
LogoutConfig,
} from '@imtbl/auth';
export { MarketingConsentStatus } from '@imtbl/auth';
+
+// Re-export constants and default config helpers for consumer convenience
+export {
+ DEFAULT_AUTH_DOMAIN,
+ DEFAULT_AUDIENCE,
+ DEFAULT_SCOPE,
+ IMMUTABLE_PROVIDER_ID,
+ DEFAULT_SANDBOX_CLIENT_ID,
+ DEFAULT_REDIRECT_URI_PATH,
+ DEFAULT_LOGOUT_REDIRECT_URI_PATH,
+} from './constants';
+export { deriveDefaultRedirectUri } from './defaultConfig';
diff --git a/packages/auth-next-server/README.md b/packages/auth-next-server/README.md
index 1a64b4a171..7b4e816c77 100644
--- a/packages/auth-next-server/README.md
+++ b/packages/auth-next-server/README.md
@@ -30,6 +30,16 @@ yarn add @imtbl/auth-next-server next-auth@5
- `next` >= 14.0.0
- `next-auth` >= 5.0.0-beta.25
+### Next.js 14 Compatibility
+
+This package is compatible with both Next.js 14 and 15. It uses only standard APIs available in both versions:
+
+- `next/server`: `NextRequest`, `NextResponse` (middleware)
+- `next/navigation`: `redirect` (Server Components)
+- NextAuth v5 with App Router
+
+No Next.js 15-only APIs are used (e.g. async `headers()`/`cookies()`, `unstable_after`).
+
## Quick Start
### 1. Create Auth Configuration
@@ -69,19 +79,55 @@ NEXT_PUBLIC_BASE_URL=http://localhost:3000
AUTH_SECRET=your-secret-key-min-32-characters
```
+## Default Auth (Zero Config)
+
+Policy: **provide nothing → full sandbox; provide config → provide everything.**
+
+With no configuration, `createAuthConfig()` uses sandbox defaults:
+- `clientId`: sandbox (public Immutable client ID)
+- `redirectUri`: from `window.location.origin + '/callback'` (path only on server)
+
+When providing config, pass `clientId` and `redirectUri` (and optionally `audience`, `scope`, `authenticationDomain`) to avoid conflicts.
+
+```typescript
+// lib/auth.ts
+import NextAuth from "next-auth";
+import { createAuthConfig } from "@imtbl/auth-next-server";
+
+// Zero config - only AUTH_SECRET required in .env
+export const { handlers, auth, signIn, signOut } = NextAuth(createAuthConfig());
+```
+
+With partial overrides:
+
+```typescript
+// With config - provide clientId and redirectUri
+export const { handlers, auth, signIn, signOut } = NextAuth(
+ createAuthConfig({
+ clientId: process.env.NEXT_PUBLIC_IMMUTABLE_CLIENT_ID!,
+ redirectUri: `${process.env.NEXT_PUBLIC_BASE_URL}/callback`,
+ }),
+);
+```
+
+> **Note:** Default auth uses public Immutable client IDs. For production apps, use your own client ID from Immutable Hub.
+
## Configuration
-### `createAuthConfig(config)`
+### `createAuthConfig(config?)`
-Creates an Auth.js v5 configuration object for Immutable authentication. You pass this to `NextAuth()` to create your auth instance.
+Creates an Auth.js v5 configuration object for Immutable authentication. Config is optional—when omitted, sensible defaults are used. Pass this to `NextAuth()` to create your auth instance.
```typescript
import NextAuth from "next-auth";
import { createAuthConfig } from "@imtbl/auth-next-server";
+// Zero config
+const { handlers, auth, signIn, signOut } = NextAuth(createAuthConfig());
+
+// Or with custom config
const { handlers, auth, signIn, signOut } = NextAuth(
createAuthConfig({
- // Required
clientId: "your-client-id",
redirectUri: "https://your-app.com/callback",
@@ -97,8 +143,8 @@ const { handlers, auth, signIn, signOut } = NextAuth(
| Option | Type | Required | Description |
| ---------------------- | -------- | -------- | ------------------------------------------------------------------------ |
-| `clientId` | `string` | Yes | Your Immutable application client ID |
-| `redirectUri` | `string` | Yes | OAuth redirect URI configured in Immutable Hub |
+| `clientId` | `string` | Yes* | Your Immutable application client ID (*required when config is provided) |
+| `redirectUri` | `string` | Yes* | OAuth redirect URI (*required when config is provided) |
| `audience` | `string` | No | OAuth audience (default: `"platform_api"`) |
| `scope` | `string` | No | OAuth scopes (default: `"openid profile email offline_access transact"`) |
| `authenticationDomain` | `string` | No | Auth domain (default: `"https://auth.immutable.com"`) |
diff --git a/packages/auth-next-server/package.json b/packages/auth-next-server/package.json
index 898009d481..80191905bc 100644
--- a/packages/auth-next-server/package.json
+++ b/packages/auth-next-server/package.json
@@ -36,7 +36,7 @@
"test": "jest --passWithNoTests"
},
"peerDependencies": {
- "next": "^15.0.0",
+ "next": "^14.0.0 || ^15.0.0",
"next-auth": "^5.0.0-beta.25"
},
"peerDependenciesMeta": {
@@ -54,7 +54,7 @@
"@types/node": "^22.10.7",
"eslint": "^8.56.0",
"jest": "^29.7.0",
- "next": "^15.1.6",
+ "next": "^15.2.6",
"next-auth": "^5.0.0-beta.30",
"tsup": "^8.3.0",
"typescript": "^5.6.2"
diff --git a/packages/auth-next-server/src/config.ts b/packages/auth-next-server/src/config.ts
index 877bcda08f..bed62fbb3e 100644
--- a/packages/auth-next-server/src/config.ts
+++ b/packages/auth-next-server/src/config.ts
@@ -8,6 +8,8 @@ import type { ImmutableAuthConfig, ImmutableTokenData, UserInfoResponse } from '
import { isTokenExpired, refreshAccessToken, extractZkEvmFromIdToken } from './refresh';
import {
DEFAULT_AUTH_DOMAIN,
+ DEFAULT_REDIRECT_URI_PATH,
+ DEFAULT_SANDBOX_CLIENT_ID,
IMMUTABLE_PROVIDER_ID,
DEFAULT_SESSION_MAX_AGE_SECONDS,
} from './constants';
@@ -55,24 +57,54 @@ async function validateTokens(
}
/**
- * Create Auth.js v5 configuration for Immutable authentication
+ * Resolve redirect URI for zero-config mode.
+ * Uses __NEXT_PRIVATE_ORIGIN when available (Next.js internal), otherwise path-only.
+ */
+function resolveDefaultRedirectUri(): string {
+ // eslint-disable-next-line no-underscore-dangle -- Next.js internal env var
+ const origin = process.env.__NEXT_PRIVATE_ORIGIN;
+ if (origin) {
+ return new URL(DEFAULT_REDIRECT_URI_PATH, origin).href;
+ }
+ return DEFAULT_REDIRECT_URI_PATH;
+}
+
+/**
+ * Create Auth.js v5 configuration for Immutable authentication.
+ *
+ * Policy: provide nothing → full sandbox config; provide config → provide everything.
+ * - Zero config: sandbox clientId, auto-derived redirectUri. No conflicts.
+ * - With config: clientId and redirectUri required. Pass full config to avoid conflicts.
+ *
+ * @param config - Optional. When omitted, uses sandbox defaults. When provided, clientId and redirectUri are required.
*
* @example
* ```typescript
- * // lib/auth.ts
+ * // Zero config - sandbox, only AUTH_SECRET required in .env
* import NextAuth from "next-auth";
* import { createAuthConfig } from "@imtbl/auth-next-server";
*
- * const config = {
+ * export const { handlers, auth, signIn, signOut } = NextAuth(createAuthConfig());
+ * ```
+ *
+ * @example
+ * ```typescript
+ * // With config - provide clientId and redirectUri (and optionally audience, scope, authenticationDomain)
+ * import NextAuth from "next-auth";
+ * import { createAuthConfig } from "@imtbl/auth-next-server";
+ *
+ * export const { handlers, auth, signIn, signOut } = NextAuth(createAuthConfig({
* clientId: process.env.NEXT_PUBLIC_IMMUTABLE_CLIENT_ID!,
* redirectUri: `${process.env.NEXT_PUBLIC_BASE_URL}/callback`,
- * };
- *
- * export const { handlers, auth, signIn, signOut } = NextAuth(createAuthConfig(config));
+ * }));
* ```
*/
-export function createAuthConfig(config: ImmutableAuthConfig): NextAuthConfig {
- const authDomain = config.authenticationDomain || DEFAULT_AUTH_DOMAIN;
+export function createAuthConfig(config?: ImmutableAuthConfig): NextAuthConfig {
+ const resolvedConfig: ImmutableAuthConfig = config ?? {
+ clientId: DEFAULT_SANDBOX_CLIENT_ID,
+ redirectUri: resolveDefaultRedirectUri(),
+ };
+ const authDomain = resolvedConfig.authenticationDomain || DEFAULT_AUTH_DOMAIN;
return {
// Custom jwt.encode: strip idToken from the cookie to reduce size and avoid
@@ -203,7 +235,7 @@ export function createAuthConfig(config: ImmutableAuthConfig): NextAuthConfig {
try {
const refreshed = await refreshAccessToken(
token.refreshToken as string,
- config.clientId,
+ resolvedConfig.clientId,
authDomain,
);
// Extract zkEvm claims from the refreshed idToken
@@ -218,7 +250,7 @@ export function createAuthConfig(config: ImmutableAuthConfig): NextAuthConfig {
error: undefined,
};
} catch (error) {
- // eslint-disable-next-line no-console
+ // eslint-disable-next-line no-console
console.error('[auth-next-server] Force refresh failed:', error);
return {
...token,
@@ -251,7 +283,7 @@ export function createAuthConfig(config: ImmutableAuthConfig): NextAuthConfig {
try {
const refreshed = await refreshAccessToken(
token.refreshToken as string,
- config.clientId,
+ resolvedConfig.clientId,
authDomain,
);
// Extract zkEvm claims from the refreshed idToken
@@ -266,7 +298,7 @@ export function createAuthConfig(config: ImmutableAuthConfig): NextAuthConfig {
error: undefined, // Clear any previous error
};
} catch (error) {
- // eslint-disable-next-line no-console
+ // eslint-disable-next-line no-console
console.error('[auth-next-server] Token refresh failed:', error);
return {
...token,
diff --git a/packages/auth-next-server/src/constants.ts b/packages/auth-next-server/src/constants.ts
index 48c8926f2b..7d5d78424c 100644
--- a/packages/auth-next-server/src/constants.ts
+++ b/packages/auth-next-server/src/constants.ts
@@ -44,8 +44,29 @@ export const DEFAULT_TOKEN_EXPIRY_MS = DEFAULT_TOKEN_EXPIRY_SECONDS * 1000;
*/
export const TOKEN_EXPIRY_BUFFER_SECONDS = 60;
+/**
+ * Buffer time in milliseconds before token expiry to trigger refresh.
+ * Used by auth-next-client for client-side refresh timing.
+ */
+export const TOKEN_EXPIRY_BUFFER_MS = TOKEN_EXPIRY_BUFFER_SECONDS * 1000;
+
/**
* Default session max age in seconds (365 days)
* This is how long the NextAuth session cookie will be valid
*/
export const DEFAULT_SESSION_MAX_AGE_SECONDS = 365 * 24 * 60 * 60;
+
+/**
+ * Sandbox client ID for auth-next zero-config.
+ */
+export const DEFAULT_SANDBOX_CLIENT_ID = 'mjtCL8mt06BtbxSkp2vbrYStKWnXVZfo';
+
+/**
+ * Default redirect URI path for sandbox zero-config.
+ */
+export const DEFAULT_REDIRECT_URI_PATH = '/callback';
+
+/**
+ * Default logout redirect URI path
+ */
+export const DEFAULT_LOGOUT_REDIRECT_URI_PATH = '/';
diff --git a/packages/auth-next-server/src/index.ts b/packages/auth-next-server/src/index.ts
index 0f83d99366..8b64f7b88d 100644
--- a/packages/auth-next-server/src/index.ts
+++ b/packages/auth-next-server/src/index.ts
@@ -45,6 +45,18 @@ export {
type RefreshedTokens,
type ZkEvmData,
} from './refresh';
+export {
+ DEFAULT_AUTH_DOMAIN,
+ DEFAULT_AUDIENCE,
+ DEFAULT_SCOPE,
+ IMMUTABLE_PROVIDER_ID,
+ DEFAULT_NEXTAUTH_BASE_PATH,
+ DEFAULT_SANDBOX_CLIENT_ID,
+ DEFAULT_REDIRECT_URI_PATH,
+ DEFAULT_LOGOUT_REDIRECT_URI_PATH,
+ DEFAULT_TOKEN_EXPIRY_MS,
+ TOKEN_EXPIRY_BUFFER_MS,
+} from './constants';
// ============================================================================
// Type exports
diff --git a/packages/passport/sdk-sample-app/app/api/auth/default/[...nextauth]/route.ts b/packages/passport/sdk-sample-app/app/api/auth/default/[...nextauth]/route.ts
new file mode 100644
index 0000000000..e23e7fe588
--- /dev/null
+++ b/packages/passport/sdk-sample-app/app/api/auth/default/[...nextauth]/route.ts
@@ -0,0 +1,3 @@
+import { defaultAuth } from "@/lib/immutable-auth.server";
+
+export const { GET, POST } = defaultAuth.handlers;
diff --git a/packages/passport/sdk-sample-app/src/components/zkevm/EthSendTransactionExamples/NFTApproval.tsx b/packages/passport/sdk-sample-app/src/components/zkevm/EthSendTransactionExamples/NFTApproval.tsx
index 9150338950..85af94d905 100644
--- a/packages/passport/sdk-sample-app/src/components/zkevm/EthSendTransactionExamples/NFTApproval.tsx
+++ b/packages/passport/sdk-sample-app/src/components/zkevm/EthSendTransactionExamples/NFTApproval.tsx
@@ -16,6 +16,7 @@ enum ApproveType {
const getErc721DefaultContractAddress = (environment: EnvironmentNames) => {
switch (environment) {
case EnvironmentNames.SANDBOX:
+ case EnvironmentNames.DEFAULT:
return '0xbe499b1eaa5c9992486be90ad3a3a4c15dcdfcda';
case EnvironmentNames.PRODUCTION:
return '0xb7d76448b0e887ce731e8d17c97ad605df412fb0';
diff --git a/packages/passport/sdk-sample-app/src/components/zkevm/EthSendTransactionExamples/NFTTransfer.tsx b/packages/passport/sdk-sample-app/src/components/zkevm/EthSendTransactionExamples/NFTTransfer.tsx
index f5eb4321b3..ee31170069 100644
--- a/packages/passport/sdk-sample-app/src/components/zkevm/EthSendTransactionExamples/NFTTransfer.tsx
+++ b/packages/passport/sdk-sample-app/src/components/zkevm/EthSendTransactionExamples/NFTTransfer.tsx
@@ -29,6 +29,7 @@ type NFTCandidate = BlockchainData.NFTWithBalance & {
const chainNameMapping = (environment: EnvironmentNames) => {
switch (environment) {
case EnvironmentNames.SANDBOX:
+ case EnvironmentNames.DEFAULT:
return 'imtbl-zkevm-testnet';
case EnvironmentNames.PRODUCTION:
return 'imtbl-zkevm-mainnet';
diff --git a/packages/passport/sdk-sample-app/src/components/zkevm/EthSendTransactionExamples/SpendingCapApproval.tsx b/packages/passport/sdk-sample-app/src/components/zkevm/EthSendTransactionExamples/SpendingCapApproval.tsx
index 442343e7d7..89d4dd6222 100644
--- a/packages/passport/sdk-sample-app/src/components/zkevm/EthSendTransactionExamples/SpendingCapApproval.tsx
+++ b/packages/passport/sdk-sample-app/src/components/zkevm/EthSendTransactionExamples/SpendingCapApproval.tsx
@@ -11,6 +11,7 @@ import { Interface } from 'ethers';
const getErc20DefaultContractAddress = (environment: EnvironmentNames) => {
switch (environment) {
case EnvironmentNames.SANDBOX:
+ case EnvironmentNames.DEFAULT:
return '0x7bbe61ba86dc1b128b7c6228a4834bf2c1394240';
case EnvironmentNames.PRODUCTION:
return '0x52a6c53869ce09a731cd772f245b97a4401d3348';
diff --git a/packages/passport/sdk-sample-app/src/components/zkevm/EthSendTransactionExamples/TransferERC20.tsx b/packages/passport/sdk-sample-app/src/components/zkevm/EthSendTransactionExamples/TransferERC20.tsx
index 98dbe591ce..06fbba088e 100644
--- a/packages/passport/sdk-sample-app/src/components/zkevm/EthSendTransactionExamples/TransferERC20.tsx
+++ b/packages/passport/sdk-sample-app/src/components/zkevm/EthSendTransactionExamples/TransferERC20.tsx
@@ -15,6 +15,7 @@ import { Interface } from 'ethers';
const getErc20DefaultContractAddress = (environment: EnvironmentNames) => {
switch (environment) {
case EnvironmentNames.SANDBOX:
+ case EnvironmentNames.DEFAULT:
return '0x7bbe61ba86dc1b128b7c6228a4834bf2c1394240';
case EnvironmentNames.PRODUCTION:
return '0x52a6c53869ce09a731cd772f245b97a4401d3348';
diff --git a/packages/passport/sdk-sample-app/src/components/zkevm/ZkEvmWorkflow.tsx b/packages/passport/sdk-sample-app/src/components/zkevm/ZkEvmWorkflow.tsx
index d634940abc..7d4695ae81 100644
--- a/packages/passport/sdk-sample-app/src/components/zkevm/ZkEvmWorkflow.tsx
+++ b/packages/passport/sdk-sample-app/src/components/zkevm/ZkEvmWorkflow.tsx
@@ -33,6 +33,7 @@ const getChainConfig = (environment: EnvironmentNames): ChainConfig[] | undefine
magicProviderId: 'd196052b-8175-4a45-ba13-838a715d370f',
}];
case EnvironmentNames.SANDBOX:
+ case EnvironmentNames.DEFAULT:
// Use testnet (default chain in wallet package)
return undefined;
case EnvironmentNames.PRODUCTION:
diff --git a/packages/passport/sdk-sample-app/src/context/ImmutableProvider.tsx b/packages/passport/sdk-sample-app/src/context/ImmutableProvider.tsx
index d909df01f0..cb7a5cfa36 100644
--- a/packages/passport/sdk-sample-app/src/context/ImmutableProvider.tsx
+++ b/packages/passport/sdk-sample-app/src/context/ImmutableProvider.tsx
@@ -37,7 +37,8 @@ const getSdkConfig = (environment: EnvironmentNames): ImxModuleConfiguration =>
baseConfig,
};
}
- case EnvironmentNames.SANDBOX: {
+ case EnvironmentNames.SANDBOX:
+ case EnvironmentNames.DEFAULT: {
const baseConfig = new ImmutableConfiguration({ environment: Environment.SANDBOX });
return {
baseConfig,
@@ -72,7 +73,8 @@ const getBlockchainDataConfig = (environment: EnvironmentNames): BlockchainDataM
baseConfig,
};
}
- case EnvironmentNames.SANDBOX: {
+ case EnvironmentNames.SANDBOX:
+ case EnvironmentNames.DEFAULT: {
const baseConfig = new ImmutableConfiguration({ environment: Environment.SANDBOX });
return { baseConfig };
}
@@ -114,7 +116,9 @@ const getPassportConfig = (environment: EnvironmentNames): PassportModuleConfigu
...sharedConfigurationValues,
};
}
- case EnvironmentNames.SANDBOX: {
+ case EnvironmentNames.SANDBOX:
+ case EnvironmentNames.DEFAULT: {
+ // DEFAULT uses sandbox client ID to match default auth
return {
baseConfig: new ImmutableConfiguration({
environment: Environment.SANDBOX,
@@ -163,7 +167,8 @@ const getOrderbookConfig = (environment: EnvironmentNames): ModuleConfiguration<
baseConfig,
};
}
- case EnvironmentNames.SANDBOX: {
+ case EnvironmentNames.SANDBOX:
+ case EnvironmentNames.DEFAULT: {
const baseConfig = new ImmutableConfiguration({ environment: Environment.SANDBOX });
return {
baseConfig,
@@ -253,6 +258,8 @@ export function ImmutableProvider({
return '/api/auth/dev';
case EnvironmentNames.PRODUCTION:
return '/api/auth/prod';
+ case EnvironmentNames.DEFAULT:
+ return '/api/auth/default';
default:
return '/api/auth/sandbox';
}
diff --git a/packages/passport/sdk-sample-app/src/lib/immutable-auth.server.ts b/packages/passport/sdk-sample-app/src/lib/immutable-auth.server.ts
index bec781b0db..d5cc6262c5 100644
--- a/packages/passport/sdk-sample-app/src/lib/immutable-auth.server.ts
+++ b/packages/passport/sdk-sample-app/src/lib/immutable-auth.server.ts
@@ -35,3 +35,11 @@ export const prodAuth = NextAuth({
...sharedAuthOptions,
basePath: "/api/auth/prod",
});
+
+// Default auth (zero config): uses createAuthConfig() with no args.
+// Always uses sandbox. Enables testing default auth with wallet and transactions.
+export const defaultAuth = NextAuth({
+ ...createAuthConfig(),
+ ...sharedAuthOptions,
+ basePath: "/api/auth/default",
+});
diff --git a/packages/passport/sdk-sample-app/src/lib/immutable-auth.ts b/packages/passport/sdk-sample-app/src/lib/immutable-auth.ts
index fd86a83a1e..3919cc3f3b 100644
--- a/packages/passport/sdk-sample-app/src/lib/immutable-auth.ts
+++ b/packages/passport/sdk-sample-app/src/lib/immutable-auth.ts
@@ -5,14 +5,16 @@
* For NextAuth instances (server-only), see ./immutable-auth.server.ts
*/
import type { ImmutableAuthConfig } from "@imtbl/auth-next-server";
+import { DEFAULT_SANDBOX_CLIENT_ID } from "@imtbl/auth-next-server";
import { EnvironmentNames } from "@/types";
import { BASE_PATH } from "@/config";
// Client IDs for each environment (same as ImmutableProvider)
-const CLIENT_IDS: Record = {
+const CLIENT_IDS: Partial> = {
[EnvironmentNames.PRODUCTION]: "PtQRK4iRJ8GkXjiz6xfImMAYhPhW0cYk",
[EnvironmentNames.SANDBOX]: "mjtCL8mt06BtbxSkp2vbrYStKWnXVZfo",
[EnvironmentNames.DEV]: "pCtSnHovRnPiQuBcFkXAnbCNqNVcDM3m",
+ // DEFAULT uses DEFAULT_SANDBOX_CLIENT_ID - not in this map
};
// Auth domains for each environment
@@ -20,6 +22,7 @@ const AUTH_DOMAINS: Record = {
[EnvironmentNames.PRODUCTION]: "https://auth.immutable.com",
[EnvironmentNames.SANDBOX]: "https://auth.immutable.com",
[EnvironmentNames.DEV]: "https://auth.dev.immutable.com",
+ [EnvironmentNames.DEFAULT]: "https://auth.immutable.com",
};
// Get auth config for a specific environment
@@ -27,7 +30,7 @@ export function getAuthConfig(environment: EnvironmentNames): ImmutableAuthConfi
const baseUrl = typeof window !== "undefined" ? window.location.origin : "http://localhost:3000";
return {
- clientId: CLIENT_IDS[environment],
+ clientId: environment === EnvironmentNames.DEFAULT ? DEFAULT_SANDBOX_CLIENT_ID : CLIENT_IDS[environment]!,
redirectUri: `${baseUrl}${BASE_PATH}/callback`,
audience: "platform_api",
scope: "openid profile email offline_access transact",
diff --git a/packages/passport/sdk-sample-app/src/pages/index.page.tsx b/packages/passport/sdk-sample-app/src/pages/index.page.tsx
index f5cb54ccf4..9dad13e353 100644
--- a/packages/passport/sdk-sample-app/src/pages/index.page.tsx
+++ b/packages/passport/sdk-sample-app/src/pages/index.page.tsx
@@ -1,4 +1,4 @@
-import React from 'react';
+import React, { useEffect, useState } from 'react';
import Head from 'next/head';
import { Container, Row } from 'react-bootstrap';
import { useImmutableSession } from '@imtbl/auth-next-client';
@@ -8,18 +8,42 @@ import Message from '@/components/Message';
import Environment from '@/components/Environment';
import { usePassportProvider } from '@/context/PassportProvider';
import { useStatusProvider } from '@/context/StatusProvider';
+import { useImmutableProvider } from '@/context/ImmutableProvider';
import { BASE_PATH } from '@/config';
import PassportMethods from '@/components/PassportMethods';
import ZkEvmWorkflow from '@/components/zkevm/ZkEvmWorkflow';
import AuthNextJS from '@/components/AuthNextJS';
+import { EnvironmentNames } from '@/types';
+/**
+ * Login flow visibility rules:
+ * - DEFAULT env: only Auth NextJS (SSR) makes sense; Passport Methods hidden
+ * - Logged in via SSR: Passport Methods hidden (mutually exclusive)
+ * - Logged in via Passport (imx/zkEvm): Auth NextJS hidden (mutually exclusive)
+ *
+ * Conditional rendering is deferred until after mount to avoid hydration mismatch:
+ * environment (localStorage), session, and providers differ between server and client.
+ */
export default function Home() {
+ const [hasMounted, setHasMounted] = useState(false);
const { isLoading } = useStatusProvider();
+ const { environment } = useImmutableProvider();
const {
imxProvider, zkEvmProvider, defaultWalletProvider,
} = usePassportProvider();
const { isAuthenticated: isAuthNextJSAuthenticated } = useImmutableSession();
+ useEffect(() => {
+ setHasMounted(true);
+ }, []);
+
+ const isDefaultEnv = environment === EnvironmentNames.DEFAULT;
+ const isPassportConnected = !!imxProvider || !!zkEvmProvider;
+
+ // Before mount: show both for consistent server/client HTML (avoids hydration mismatch)
+ const showAuthNextJS = !hasMounted || isDefaultEnv || !isPassportConnected;
+ const showPassportMethods = !hasMounted || (!isDefaultEnv && !isAuthNextJSAuthenticated);
+
return (
<>
@@ -36,12 +60,16 @@ export default function Home() {
|| !!defaultWalletProvider || isAuthNextJSAuthenticated}
/>
-
-
-
-
-
-
+ {showAuthNextJS && (
+
+
+
+ )}
+ {showPassportMethods && (
+
+
+
+ )}
diff --git a/packages/passport/sdk-sample-app/src/types/index.ts b/packages/passport/sdk-sample-app/src/types/index.ts
index f2d03659f3..5ee1d88a17 100644
--- a/packages/passport/sdk-sample-app/src/types/index.ts
+++ b/packages/passport/sdk-sample-app/src/types/index.ts
@@ -11,6 +11,8 @@ export enum EnvironmentNames {
DEV = 'dev',
SANDBOX = 'sandbox',
PRODUCTION = 'production',
+ /** Zero-config auth: uses createAuthConfig() with no args, always sandbox */
+ DEFAULT = 'default',
}
export type CardStackPropsType = PropsWithChildren<{
diff --git a/packages/wallet/src/connectWallet.test.ts b/packages/wallet/src/connectWallet.test.ts
index b4cc795dd2..6b8246e495 100644
--- a/packages/wallet/src/connectWallet.test.ts
+++ b/packages/wallet/src/connectWallet.test.ts
@@ -1,17 +1,21 @@
-jest.mock('@imtbl/auth', () => {
- const Auth = jest.fn().mockImplementation(() => ({
- getConfig: jest.fn().mockReturnValue({
- authenticationDomain: 'https://auth.immutable.com',
- passportDomain: 'https://passport.immutable.com',
- oidcConfiguration: {
- clientId: 'client',
- redirectUri: 'https://redirect',
- },
- }),
- getUser: jest.fn().mockResolvedValue({ profile: { sub: 'user' } }),
- getUserOrLogin: jest.fn().mockResolvedValue({ profile: { sub: 'user' }, accessToken: 'token' }),
- }));
+// Mock Auth with configurable behavior
+const mockAuthInstance = {
+ getConfig: jest.fn().mockReturnValue({
+ authenticationDomain: 'https://auth.immutable.com',
+ passportDomain: 'https://passport.immutable.com',
+ oidcConfiguration: {
+ clientId: 'client',
+ redirectUri: 'https://redirect',
+ },
+ }),
+ getUser: jest.fn().mockResolvedValue({ profile: { sub: 'user' } }),
+ getUserOrLogin: jest.fn().mockResolvedValue({ profile: { sub: 'user' }, accessToken: 'token' }),
+ loginCallback: jest.fn().mockResolvedValue(undefined),
+};
+
+const Auth = jest.fn().mockImplementation(() => mockAuthInstance);
+jest.mock('@imtbl/auth', () => {
const TypedEventEmitter = jest.fn().mockImplementation(() => ({
emit: jest.fn(),
on: jest.fn(),
@@ -70,26 +74,461 @@ const createGetUserMock = () => jest.fn().mockResolvedValue({
describe('connectWallet', () => {
beforeEach(() => {
jest.clearAllMocks();
+ Auth.mockClear();
+ mockAuthInstance.getUser.mockClear();
+ mockAuthInstance.getUserOrLogin.mockClear();
+ mockAuthInstance.loginCallback.mockClear();
});
- it('announces provider by default', async () => {
- const getUser = createGetUserMock();
+ describe('with external getUser (existing tests)', () => {
+ it('announces provider by default', async () => {
+ const getUser = createGetUserMock();
+
+ const provider = await connectWallet({ getUser, chains: [zkEvmChain] });
+
+ expect(ZkEvmProvider).toHaveBeenCalled();
+ expect(announceProvider).toHaveBeenCalledWith({
+ info: expect.any(Object),
+ provider,
+ });
+ });
+
+ it('does not announce provider when disabled', async () => {
+ const getUser = createGetUserMock();
+
+ await connectWallet({ getUser, chains: [zkEvmChain], announceProvider: false });
- const provider = await connectWallet({ getUser, chains: [zkEvmChain] });
+ expect(announceProvider).not.toHaveBeenCalled();
+ });
+
+ it('uses provided getUser when supplied', async () => {
+ const getUser = createGetUserMock();
- expect(ZkEvmProvider).toHaveBeenCalled();
- expect(announceProvider).toHaveBeenCalledWith({
- info: expect.any(Object),
- provider,
+ await connectWallet({ getUser, chains: [zkEvmChain] });
+
+ // Should NOT create internal Auth instance
+ expect(Auth).not.toHaveBeenCalled();
+ // Should use the provided getUser
+ expect(getUser).toHaveBeenCalled();
});
});
- it('does not announce provider when disabled', async () => {
- const getUser = createGetUserMock();
+ describe('default auth (no getUser provided)', () => {
+ describe('Auth instance creation', () => {
+ it('creates internal Auth instance when getUser is not provided', async () => {
+ await connectWallet({ chains: [zkEvmChain] });
+
+ expect(Auth).toHaveBeenCalledTimes(1);
+ expect(Auth).toHaveBeenCalledWith(
+ expect.objectContaining({
+ scope: 'openid profile email offline_access transact',
+ audience: 'platform_api',
+ authenticationDomain: 'https://auth.immutable.com',
+ }),
+ );
+ });
+
+ it('uses getUserOrLogin from internal Auth', async () => {
+ await connectWallet({ chains: [zkEvmChain] });
+
+ // Internal Auth's getUserOrLogin should be called during setup
+ expect(mockAuthInstance.getUserOrLogin).toHaveBeenCalled();
+ });
+
+ it('derives passportDomain from chain apiUrl', async () => {
+ const customChain = {
+ ...zkEvmChain,
+ apiUrl: 'https://api.custom.immutable.com',
+ };
+
+ await connectWallet({ chains: [customChain] });
+
+ expect(Auth).toHaveBeenCalledWith(
+ expect.objectContaining({
+ passportDomain: 'https://passport.custom.immutable.com',
+ }),
+ );
+ });
+
+ it('uses provided passportDomain if specified in chain config', async () => {
+ const customChain = {
+ ...zkEvmChain,
+ passportDomain: 'https://custom-passport.immutable.com',
+ };
+
+ await connectWallet({ chains: [customChain] });
- await connectWallet({ getUser, chains: [zkEvmChain], announceProvider: false });
+ expect(Auth).toHaveBeenCalledWith(
+ expect.objectContaining({
+ passportDomain: 'https://custom-passport.immutable.com',
+ }),
+ );
+ });
- expect(announceProvider).not.toHaveBeenCalled();
+ it('uses default redirect URI fallback', async () => {
+ await connectWallet({ chains: [zkEvmChain] });
+
+ expect(Auth).toHaveBeenCalledWith(
+ expect.objectContaining({
+ redirectUri: 'https://auth.immutable.com/im-logged-in',
+ popupRedirectUri: 'https://auth.immutable.com/im-logged-in',
+ logoutRedirectUri: 'https://auth.immutable.com/im-logged-in',
+ }),
+ );
+ });
+
+ it('passes popupOverlayOptions to Auth', async () => {
+ const popupOverlayOptions = {
+ disableGenericPopupOverlay: true,
+ disableBlockedPopupOverlay: false,
+ };
+
+ await connectWallet({ chains: [zkEvmChain], popupOverlayOptions });
+
+ expect(Auth).toHaveBeenCalledWith(
+ expect.objectContaining({
+ popupOverlayOptions,
+ }),
+ );
+ });
+
+ it('passes crossSdkBridgeEnabled to Auth', async () => {
+ await connectWallet({ chains: [zkEvmChain], crossSdkBridgeEnabled: true });
+
+ expect(Auth).toHaveBeenCalledWith(
+ expect.objectContaining({
+ crossSdkBridgeEnabled: true,
+ }),
+ );
+ });
+ });
+
+ describe('clientId auto-detection', () => {
+ it('uses sandbox client ID for testnet chain (chainId 13473)', async () => {
+ const testnetChain = {
+ ...zkEvmChain,
+ chainId: 13473,
+ apiUrl: 'https://api.sandbox.immutable.com',
+ };
+
+ await connectWallet({ chains: [testnetChain] });
+
+ expect(Auth).toHaveBeenCalledWith(
+ expect.objectContaining({
+ clientId: 'mjtCL8mt06BtbxSkp2vbrYStKWnXVZfo', // Sandbox client ID
+ }),
+ );
+ });
+
+ it('uses production client ID for mainnet chain (chainId 13371)', async () => {
+ const mainnetChain = {
+ chainId: 13371,
+ rpcUrl: 'https://rpc.immutable.com',
+ relayerUrl: 'https://relayer.immutable.com',
+ apiUrl: 'https://api.immutable.com',
+ name: 'Immutable zkEVM Mainnet',
+ };
+
+ await connectWallet({ chains: [mainnetChain] });
+
+ expect(Auth).toHaveBeenCalledWith(
+ expect.objectContaining({
+ clientId: 'PtQRK4iRJ8GkXjiz6xfImMAYhPhW0cYk', // Production client ID
+ }),
+ );
+ });
+
+ it('detects sandbox from apiUrl containing "sandbox"', async () => {
+ const sandboxChain = {
+ chainId: 99999, // unknown chainId
+ rpcUrl: 'https://rpc.custom.com',
+ relayerUrl: 'https://relayer.custom.com',
+ apiUrl: 'https://api.sandbox.custom.com', // "sandbox" in URL
+ name: 'Custom Sandbox Chain',
+ magicPublishableApiKey: 'pk_test_123',
+ magicProviderId: 'provider-123',
+ };
+
+ await connectWallet({ chains: [sandboxChain] });
+
+ expect(Auth).toHaveBeenCalledWith(
+ expect.objectContaining({
+ clientId: 'mjtCL8mt06BtbxSkp2vbrYStKWnXVZfo', // Sandbox client ID
+ }),
+ );
+ });
+
+ it('detects sandbox from apiUrl containing "testnet"', async () => {
+ const testnetChain = {
+ chainId: 99999,
+ rpcUrl: 'https://rpc.testnet.custom.com',
+ relayerUrl: 'https://relayer.testnet.custom.com',
+ apiUrl: 'https://api.testnet.custom.com', // "testnet" in URL
+ name: 'Custom Testnet Chain',
+ magicPublishableApiKey: 'pk_test_123',
+ magicProviderId: 'provider-123',
+ };
+
+ await connectWallet({ chains: [testnetChain] });
+
+ expect(Auth).toHaveBeenCalledWith(
+ expect.objectContaining({
+ clientId: 'mjtCL8mt06BtbxSkp2vbrYStKWnXVZfo', // Sandbox client ID
+ }),
+ );
+ });
+
+ it('uses provided clientId when explicitly set', async () => {
+ const customClientId = 'custom-client-id-123';
+
+ await connectWallet({ chains: [zkEvmChain], clientId: customClientId });
+
+ expect(Auth).toHaveBeenCalledWith(
+ expect.objectContaining({
+ clientId: customClientId,
+ }),
+ );
+ });
+
+ it('prefers provided clientId over auto-detected one', async () => {
+ const customClientId = 'custom-client-id-456';
+ const mainnetChain = {
+ chainId: 13371,
+ rpcUrl: 'https://rpc.immutable.com',
+ relayerUrl: 'https://relayer.immutable.com',
+ apiUrl: 'https://api.immutable.com',
+ name: 'Immutable zkEVM Mainnet',
+ };
+
+ await connectWallet({ chains: [mainnetChain], clientId: customClientId });
+
+ // Should use custom, not production client ID
+ expect(Auth).toHaveBeenCalledWith(
+ expect.objectContaining({
+ clientId: customClientId,
+ }),
+ );
+ });
+ });
+
+ describe('popup callback handling', () => {
+ it('sets up message listener for popup callback', async () => {
+ const addEventListenerSpy = jest.spyOn(window, 'addEventListener');
+
+ await connectWallet({ chains: [zkEvmChain] });
+
+ expect(addEventListenerSpy).toHaveBeenCalledWith('message', expect.any(Function));
+
+ addEventListenerSpy.mockRestore();
+ });
+
+ it('handles OAuth callback message with code and state', async () => {
+ let messageHandler: ((event: MessageEvent) => void) | null = null;
+ const addEventListenerSpy = jest.spyOn(window, 'addEventListener').mockImplementation((event, handler) => {
+ if (event === 'message') {
+ messageHandler = handler as (event: MessageEvent) => void;
+ }
+ });
+
+ const replaceStateSpy = jest.spyOn(window.history, 'replaceState').mockImplementation(() => {});
+
+ await connectWallet({ chains: [zkEvmChain] });
+
+ expect(messageHandler).not.toBeNull();
+
+ // Simulate popup callback message
+ const callbackMessage = {
+ data: {
+ code: 'auth-code-123',
+ state: 'state-456',
+ },
+ } as MessageEvent;
+
+ // Trigger the message event
+ const promise = messageHandler!(callbackMessage);
+
+ // Wait for async operations
+ await promise;
+ await Promise.resolve();
+
+ // Should call Auth.loginCallback
+ expect(mockAuthInstance.loginCallback).toHaveBeenCalled();
+
+ // Should update browser history with code/state
+ expect(replaceStateSpy).toHaveBeenCalledTimes(2);
+
+ addEventListenerSpy.mockRestore();
+ replaceStateSpy.mockRestore();
+ });
+
+ it('ignores messages without code and state', async () => {
+ let messageHandler: ((event: MessageEvent) => void) | null = null;
+ const addEventListenerSpy = jest.spyOn(window, 'addEventListener').mockImplementation((event, handler) => {
+ if (event === 'message') {
+ messageHandler = handler as (event: MessageEvent) => void;
+ }
+ });
+
+ await connectWallet({ chains: [zkEvmChain] });
+
+ // Simulate non-callback message
+ const regularMessage = {
+ data: {
+ someOtherData: 'value',
+ },
+ } as MessageEvent;
+
+ messageHandler!(regularMessage);
+
+ await Promise.resolve();
+
+ // Should NOT call Auth.loginCallback
+ expect(mockAuthInstance.loginCallback).not.toHaveBeenCalled();
+
+ addEventListenerSpy.mockRestore();
+ });
+
+ it('updates query string with code and state during callback', async () => {
+ let messageHandler: ((event: MessageEvent) => void) | null = null;
+ const addEventListenerSpy = jest.spyOn(window, 'addEventListener').mockImplementation((event, handler) => {
+ if (event === 'message') {
+ messageHandler = handler as (event: MessageEvent) => void;
+ }
+ });
+
+ const replaceStateSpy = jest.spyOn(window.history, 'replaceState').mockImplementation(() => {});
+
+ // Mock window.location.search
+ Object.defineProperty(window, 'location', {
+ value: { search: '?existing=param' },
+ writable: true,
+ });
+
+ await connectWallet({ chains: [zkEvmChain] });
+
+ const callbackMessage = {
+ data: {
+ code: 'test-code',
+ state: 'test-state',
+ },
+ } as MessageEvent;
+
+ const promise = messageHandler!(callbackMessage);
+ await promise;
+ await Promise.resolve();
+
+ // First call: add code and state
+ expect(replaceStateSpy).toHaveBeenNthCalledWith(
+ 1,
+ null,
+ '',
+ expect.stringContaining('code=test-code'),
+ );
+ expect(replaceStateSpy).toHaveBeenNthCalledWith(
+ 1,
+ null,
+ '',
+ expect.stringContaining('state=test-state'),
+ );
+
+ // Second call: remove code and state after callback
+ expect(replaceStateSpy).toHaveBeenNthCalledWith(
+ 2,
+ null,
+ '',
+ expect.not.stringContaining('code='),
+ );
+
+ addEventListenerSpy.mockRestore();
+ replaceStateSpy.mockRestore();
+ });
+ });
+
+ describe('provider creation with default auth', () => {
+ it('creates provider successfully without getUser', async () => {
+ const provider = await connectWallet({ chains: [zkEvmChain] });
+
+ expect(provider).toBeDefined();
+ expect(ZkEvmProvider).toHaveBeenCalled();
+ });
+
+ it('passes getUser function to ZkEvmProvider', async () => {
+ await connectWallet({ chains: [zkEvmChain] });
+
+ const zkEvmProviderCall = (ZkEvmProvider as jest.Mock).mock.calls[0][0];
+ expect(zkEvmProviderCall.getUser).toEqual(expect.any(Function));
+ });
+
+ it('passes clientId to ZkEvmProvider', async () => {
+ await connectWallet({ chains: [zkEvmChain] });
+
+ const zkEvmProviderCall = (ZkEvmProvider as jest.Mock).mock.calls[0][0];
+ expect(zkEvmProviderCall.clientId).toBe('mjtCL8mt06BtbxSkp2vbrYStKWnXVZfo');
+ });
+
+ it('works with custom chain configuration', async () => {
+ const customChain = {
+ chainId: 99999,
+ rpcUrl: 'https://rpc.custom.com',
+ relayerUrl: 'https://relayer.custom.com',
+ apiUrl: 'https://api.custom.com',
+ passportDomain: 'https://passport.custom.com',
+ name: 'Custom Chain',
+ magicPublishableApiKey: 'pk_test_custom',
+ magicProviderId: 'provider-custom',
+ };
+
+ const provider = await connectWallet({ chains: [customChain] });
+
+ expect(provider).toBeDefined();
+ expect(Auth).toHaveBeenCalledWith(
+ expect.objectContaining({
+ passportDomain: 'https://passport.custom.com',
+ }),
+ );
+ });
+ });
+
+ describe('error handling', () => {
+ it('handles auth failure gracefully', async () => {
+ mockAuthInstance.getUserOrLogin.mockRejectedValueOnce(new Error('Auth failed'));
+
+ const provider = await connectWallet({ chains: [zkEvmChain] });
+
+ // Should still create provider (user will be null)
+ expect(provider).toBeDefined();
+ expect(ZkEvmProvider).toHaveBeenCalledWith(
+ expect.objectContaining({
+ user: null,
+ }),
+ );
+ });
+
+ it('handles loginCallback failure gracefully', async () => {
+ let messageHandler: ((event: MessageEvent) => void) | null = null;
+ const addEventListenerSpy = jest.spyOn(window, 'addEventListener').mockImplementation((event, handler) => {
+ if (event === 'message') {
+ messageHandler = handler as (event: MessageEvent) => void;
+ }
+ });
+
+ mockAuthInstance.loginCallback.mockRejectedValueOnce(new Error('Callback failed'));
+
+ await connectWallet({ chains: [zkEvmChain] });
+
+ const callbackMessage = {
+ data: {
+ code: 'test-code',
+ state: 'test-state',
+ },
+ } as MessageEvent;
+
+ // Should not throw (error is handled internally)
+ await expect(messageHandler!(callbackMessage)).rejects.toThrow('Callback failed');
+
+ addEventListenerSpy.mockRestore();
+ });
+ });
});
describe('provider selection', () => {
diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml
index 77b7b2ebf8..a3d1babfe0 100644
--- a/pnpm-lock.yaml
+++ b/pnpm-lock.yaml
@@ -62,10 +62,10 @@ importers:
version: 8.57.0
eslint-config-airbnb:
specifier: ^19.0.4
- version: 19.0.4(eslint-plugin-import@2.29.1(@typescript-eslint/parser@5.62.0(eslint@8.57.0)(typescript@5.6.2))(eslint@8.57.0))(eslint-plugin-jsx-a11y@6.9.0(eslint@8.57.0))(eslint-plugin-react-hooks@5.0.0(eslint@8.57.0))(eslint-plugin-react@7.35.0(eslint@8.57.0))(eslint@8.57.0)
+ version: 19.0.4(eslint-plugin-import@2.32.0(@typescript-eslint/parser@5.62.0(eslint@8.57.0)(typescript@5.6.2))(eslint@8.57.0))(eslint-plugin-jsx-a11y@6.10.2(eslint@8.57.0))(eslint-plugin-react-hooks@5.0.0(eslint@8.57.0))(eslint-plugin-react@7.37.5(eslint@8.57.0))(eslint@8.57.0)
eslint-config-airbnb-typescript:
specifier: ^17.0.0
- version: 17.1.0(@typescript-eslint/eslint-plugin@5.62.0(@typescript-eslint/parser@5.62.0(eslint@8.57.0)(typescript@5.6.2))(eslint@8.57.0)(typescript@5.6.2))(@typescript-eslint/parser@5.62.0(eslint@8.57.0)(typescript@5.6.2))(eslint-plugin-import@2.29.1(@typescript-eslint/parser@5.62.0(eslint@8.57.0)(typescript@5.6.2))(eslint@8.57.0))(eslint@8.57.0)
+ version: 17.1.0(@typescript-eslint/eslint-plugin@5.62.0(@typescript-eslint/parser@5.62.0(eslint@8.57.0)(typescript@5.6.2))(eslint@8.57.0)(typescript@5.6.2))(@typescript-eslint/parser@5.62.0(eslint@8.57.0)(typescript@5.6.2))(eslint-plugin-import@2.32.0(@typescript-eslint/parser@5.62.0(eslint@8.57.0)(typescript@5.6.2))(eslint@8.57.0))(eslint@8.57.0)
eslint-plugin-react-refresh:
specifier: latest
version: 0.5.0(eslint@8.57.0)
@@ -138,7 +138,7 @@ importers:
version: 0.25.21(@emotion/react@11.11.3(@types/react@18.3.12)(react@18.3.1))(@rive-app/react-canvas-lite@4.9.0(react@18.3.1))(embla-carousel-react@8.1.5(react@18.3.1))(framer-motion@11.18.2(@emotion/is-prop-valid@0.8.8)(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)
'@imtbl/sdk':
specifier: latest
- version: 2.12.6(bufferutil@4.0.8)(hardhat@2.22.6(bufferutil@4.0.8)(ts-node@10.9.2(@swc/core@1.15.3(@swc/helpers@0.5.15))(@types/node@20.14.13)(typescript@5.6.2))(typescript@5.6.2)(utf-8-validate@5.0.10))(typescript@5.6.2)(utf-8-validate@5.0.10)
+ version: 2.12.6(bufferutil@4.0.8)(typescript@5.6.2)(utf-8-validate@5.0.10)
next:
specifier: 14.2.25
version: 14.2.25(@babel/core@7.26.10)(@playwright/test@1.45.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)
@@ -763,9 +763,18 @@ importers:
'@biom3/react':
specifier: ^0.27.12
version: 0.27.30(@emotion/react@11.11.3(@types/react@18.3.12)(react@18.3.1))(@rive-app/react-canvas-lite@4.9.0(react@18.3.1))(embla-carousel-react@8.1.5(react@18.3.1))(framer-motion@11.18.2(@emotion/is-prop-valid@0.8.8)(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)
+ '@imtbl/auth-next-client':
+ specifier: workspace:*
+ version: link:../../../packages/auth-next-client
+ '@imtbl/auth-next-server':
+ specifier: workspace:*
+ version: link:../../../packages/auth-next-server
'@imtbl/sdk':
specifier: workspace:*
version: link:../../../sdk
+ '@imtbl/wallet':
+ specifier: workspace:*
+ version: link:../../../packages/wallet
'@tanstack/react-query':
specifier: ^5.51.11
version: 5.51.15(react@18.3.1)
@@ -773,8 +782,11 @@ importers:
specifier: ^6.13.4
version: 6.13.5(bufferutil@4.0.8)(utf-8-validate@5.0.10)
next:
- specifier: 14.2.25
- version: 14.2.25(@babel/core@7.26.10)(@playwright/test@1.45.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)
+ specifier: 15.2.6
+ version: 15.2.6(@babel/core@7.26.10)(@playwright/test@1.45.3)(babel-plugin-macros@3.1.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)
+ next-auth:
+ specifier: ^5.0.0-beta.30
+ version: 5.0.0-beta.30(next@15.2.6(@babel/core@7.26.10)(@playwright/test@1.45.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(react@18.3.1)
react:
specifier: ^18.2.0
version: 18.3.1
@@ -801,8 +813,8 @@ importers:
specifier: ^8
version: 8.57.0
eslint-config-next:
- specifier: 14.2.5
- version: 14.2.5(eslint@8.57.0)(typescript@5.6.2)
+ specifier: 15.2.6
+ version: 15.2.6(eslint@8.57.0)(typescript@5.6.2)
postcss:
specifier: ^8
version: 8.4.49
@@ -1083,11 +1095,11 @@ importers:
specifier: ^29.7.0
version: 29.7.0(@types/node@22.19.7)(babel-plugin-macros@3.1.0)(node-notifier@8.0.2)(ts-node@10.9.2(@swc/core@1.15.3(@swc/helpers@0.5.15))(@types/node@22.19.7)(typescript@5.6.2))
next:
- specifier: ^15.1.6
- version: 15.5.10(@babel/core@7.26.10)(babel-plugin-macros@3.1.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)
+ specifier: ^15.2.6
+ version: 15.2.6(@babel/core@7.26.10)(@playwright/test@1.45.3)(babel-plugin-macros@3.1.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)
next-auth:
specifier: ^5.0.0-beta.30
- version: 5.0.0-beta.30(next@15.5.10(@babel/core@7.26.10)(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(react@18.3.1)
+ version: 5.0.0-beta.30(next@15.2.6(@babel/core@7.26.10)(@playwright/test@1.45.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(react@18.3.1)
react:
specifier: ^18.2.0
version: 18.3.1
@@ -1119,11 +1131,11 @@ importers:
specifier: ^29.7.0
version: 29.7.0(@types/node@22.19.7)(babel-plugin-macros@3.1.0)(node-notifier@8.0.2)(ts-node@10.9.2(@swc/core@1.15.3(@swc/helpers@0.5.15))(@types/node@22.19.7)(typescript@5.6.2))
next:
- specifier: ^15.1.6
- version: 15.5.10(@babel/core@7.26.10)(babel-plugin-macros@3.1.0)(react-dom@18.3.1(react@19.0.0-rc-66855b96-20241106))(react@19.0.0-rc-66855b96-20241106)
+ specifier: ^15.2.6
+ version: 15.2.6(@babel/core@7.26.10)(@playwright/test@1.45.3)(babel-plugin-macros@3.1.0)(react-dom@18.3.1(react@19.0.0-rc-66855b96-20241106))(react@19.0.0-rc-66855b96-20241106)
next-auth:
specifier: ^5.0.0-beta.30
- version: 5.0.0-beta.30(next@15.5.10(@babel/core@7.26.10)(babel-plugin-macros@3.1.0)(react-dom@18.3.1(react@19.0.0-rc-66855b96-20241106))(react@19.0.0-rc-66855b96-20241106))(react@19.0.0-rc-66855b96-20241106)
+ version: 5.0.0-beta.30(next@15.2.6(@babel/core@7.26.10)(@playwright/test@1.45.3)(babel-plugin-macros@3.1.0)(react-dom@18.3.1(react@19.0.0-rc-66855b96-20241106))(react@19.0.0-rc-66855b96-20241106))(react@19.0.0-rc-66855b96-20241106)
tsup:
specifier: ^8.3.0
version: 8.3.0(@swc/core@1.15.3(@swc/helpers@0.5.15))(jiti@1.21.0)(postcss@8.4.49)(typescript@5.6.2)(yaml@2.5.0)
@@ -1333,7 +1345,7 @@ importers:
version: 29.6.1(bufferutil@4.0.8)(utf-8-validate@5.0.10)
react-scripts:
specifier: 5.0.1
- version: 5.0.1(@babel/plugin-syntax-flow@7.24.7(@babel/core@7.26.10))(@babel/plugin-transform-react-jsx@7.25.9(@babel/core@7.26.10))(@swc/core@1.15.3(@swc/helpers@0.5.15))(@types/babel__core@7.20.5)(bufferutil@4.0.8)(esbuild@0.23.1)(eslint@9.16.0(jiti@1.21.0))(node-notifier@8.0.2)(react@18.3.1)(ts-node@10.9.2(@swc/core@1.15.3(@swc/helpers@0.5.15))(@types/node@22.19.7)(typescript@5.6.2))(type-fest@2.19.0)(typescript@5.6.2)(utf-8-validate@5.0.10)
+ version: 5.0.1(@babel/plugin-syntax-flow@7.24.7(@babel/core@7.26.9))(@babel/plugin-transform-react-jsx@7.25.9(@babel/core@7.26.9))(@swc/core@1.15.3(@swc/helpers@0.5.15))(@types/babel__core@7.20.5)(bufferutil@4.0.8)(esbuild@0.23.1)(eslint@9.16.0(jiti@1.21.0))(node-notifier@8.0.2)(react@18.3.1)(ts-node@10.9.2(@swc/core@1.15.3(@swc/helpers@0.5.15))(@types/node@22.19.7)(typescript@5.6.2))(type-fest@2.19.0)(typescript@5.6.2)(utf-8-validate@5.0.10)
typescript:
specifier: ^5.6.2
version: 5.6.2
@@ -1499,7 +1511,7 @@ importers:
version: 29.6.1(bufferutil@4.0.8)(utf-8-validate@5.0.10)
react-scripts:
specifier: 5.0.1
- version: 5.0.1(@babel/plugin-syntax-flow@7.24.7(@babel/core@7.26.9))(@babel/plugin-transform-react-jsx@7.25.9(@babel/core@7.26.9))(@swc/core@1.15.3(@swc/helpers@0.5.15))(@types/babel__core@7.20.5)(bufferutil@4.0.8)(esbuild@0.23.1)(eslint@8.57.0)(node-notifier@8.0.2)(react@18.3.1)(ts-node@10.9.2(@swc/core@1.15.3(@swc/helpers@0.5.15))(@types/node@22.19.7)(typescript@5.6.2))(type-fest@2.19.0)(typescript@5.6.2)(utf-8-validate@5.0.10)
+ version: 5.0.1(@babel/plugin-syntax-flow@7.24.7(@babel/core@7.26.10))(@babel/plugin-transform-react-jsx@7.25.9(@babel/core@7.26.10))(@swc/core@1.15.3(@swc/helpers@0.5.15))(@types/babel__core@7.20.5)(bufferutil@4.0.8)(esbuild@0.23.1)(eslint@8.57.0)(node-notifier@8.0.2)(react@18.3.1)(ts-node@10.9.2(@swc/core@1.15.3(@swc/helpers@0.5.15))(@types/node@22.19.7)(typescript@5.6.2))(type-fest@2.19.0)(typescript@5.6.2)(utf-8-validate@5.0.10)
rimraf:
specifier: ^6.0.1
version: 6.0.1
@@ -1511,7 +1523,7 @@ importers:
version: 0.13.0(rollup@4.28.0)
ts-jest:
specifier: ^29.1.0
- version: 29.2.5(@babel/core@7.26.9)(@jest/transform@29.7.0)(@jest/types@29.6.3)(babel-jest@29.7.0(@babel/core@7.26.9))(esbuild@0.23.1)(jest@29.7.0(@types/node@22.19.7)(babel-plugin-macros@3.1.0)(node-notifier@8.0.2)(ts-node@10.9.2(@swc/core@1.15.3(@swc/helpers@0.5.15))(@types/node@22.19.7)(typescript@5.6.2)))(typescript@5.6.2)
+ version: 29.2.5(@babel/core@7.26.10)(@jest/transform@29.7.0)(@jest/types@29.6.3)(babel-jest@29.7.0(@babel/core@7.26.10))(esbuild@0.23.1)(jest@29.7.0(@types/node@22.19.7)(babel-plugin-macros@3.1.0)(node-notifier@8.0.2)(ts-node@10.9.2(@swc/core@1.15.3(@swc/helpers@0.5.15))(@types/node@22.19.7)(typescript@5.6.2)))(typescript@5.6.2)
typescript:
specifier: ^5.6.2
version: 5.6.2
@@ -1902,7 +1914,7 @@ importers:
version: 6.13.5(bufferutil@4.0.8)(utf-8-validate@5.0.10)
next:
specifier: ^15.1.6
- version: 15.5.10(@babel/core@7.26.10)(babel-plugin-macros@3.1.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)
+ version: 15.5.10(@babel/core@7.26.10)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)
postcss:
specifier: 8.4.31
version: 8.4.31
@@ -1982,7 +1994,7 @@ importers:
version: 29.6.1(bufferutil@4.0.8)(utf-8-validate@5.0.10)
ts-jest:
specifier: ^29.1.0
- version: 29.2.5(@babel/core@7.26.10)(@jest/transform@29.7.0)(@jest/types@29.6.3)(babel-jest@29.7.0(@babel/core@7.26.10))(esbuild@0.23.1)(jest@29.7.0(@types/node@22.19.7)(babel-plugin-macros@3.1.0)(node-notifier@8.0.2)(ts-node@10.9.2(@swc/core@1.15.3(@swc/helpers@0.5.15))(@types/node@22.19.7)(typescript@5.6.2)))(typescript@5.6.2)
+ version: 29.2.5(@babel/core@7.26.10)(@jest/transform@29.7.0)(@jest/types@29.6.3)(babel-jest@29.7.0(@babel/core@7.26.10))(esbuild@0.23.1)(jest@29.7.0(@types/node@22.19.7)(babel-plugin-macros@3.1.0)(node-notifier@8.0.2))(typescript@5.6.2)
tsup:
specifier: ^8.3.0
version: 8.3.0(@swc/core@1.15.3(@swc/helpers@0.5.15))(jiti@1.21.0)(postcss@8.4.49)(typescript@5.6.2)(yaml@2.5.0)
@@ -2347,7 +2359,7 @@ importers:
version: 11.18.2(@emotion/is-prop-valid@0.8.8)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)
next:
specifier: ^15.1.6
- version: 15.5.10(@babel/core@7.26.10)(babel-plugin-macros@3.1.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)
+ version: 15.5.10(@babel/core@7.26.10)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)
next-auth:
specifier: ^5.0.0-beta.30
version: 5.0.0-beta.30(next@15.5.10(@babel/core@7.26.10)(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(react@18.3.1)
@@ -2713,7 +2725,7 @@ importers:
version: link:../packages/x-provider
next:
specifier: ^14.2.0 || ^15.0.0
- version: 15.5.10(@babel/core@7.26.10)(babel-plugin-macros@3.1.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)
+ version: 15.5.10(@babel/core@7.26.10)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)
next-auth:
specifier: ^5.0.0-beta.25
version: 5.0.0-beta.30(next@15.5.10(@babel/core@7.26.10)(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(react@18.3.1)
@@ -2935,6 +2947,10 @@ packages:
resolution: {integrity: sha512-RJlIHRueQgwWitWgF8OdFYGZX328Ax5BCemNGlqHfplnRT9ESi8JkFlvaVYbS+UubVY6dpv87Fs2u5M29iNFVQ==}
engines: {node: '>=6.9.0'}
+ '@babel/code-frame@7.29.0':
+ resolution: {integrity: sha512-9NhCeYjq9+3uxgdtp20LSiJXJvN0FeCtNGpJxuMFZ1Kv3cWUNb6DOhJwUvcVCzKGR66cw4njwM6hrJLqgOwbcw==}
+ engines: {node: '>=6.9.0'}
+
'@babel/compat-data@7.26.8':
resolution: {integrity: sha512-oH5UPLMWR3L2wEFLnFJ1TZXqHufiTKAiLfqw5zkhS4dKXLJ10yVztfil/twG8EDTA4F/tvVNw9nOl4ZMslB8rQ==}
engines: {node: '>=6.9.0'}
@@ -3047,6 +3063,10 @@ packages:
resolution: {integrity: sha512-Ed61U6XJc3CVRfkERJWDz4dJwKe7iLmmJsbOGu9wSloNSFttHV0I8g6UAgb7qnK5ly5bGLPd4oXZlxCdANBOWQ==}
engines: {node: '>=6.9.0'}
+ '@babel/helper-validator-identifier@7.28.5':
+ resolution: {integrity: sha512-qSs4ifwzKJSV39ucNjsvc6WVHs6b7S03sOh2OcHF9UHfVPqWWALUsNUVzhSBiItjRZoLHx7nIarVjqKVusUZ1Q==}
+ engines: {node: '>=6.9.0'}
+
'@babel/helper-validator-option@7.25.9':
resolution: {integrity: sha512-e/zv1co8pp55dNdEcCynfj9X7nyUKUXoUEwfXqaZt0omVOmDe9oOTdKStH4GmAw6zxMFs50ZayuMfHDKlO7Tfw==}
engines: {node: '>=6.9.0'}
@@ -4534,33 +4554,65 @@ packages:
resolution: {integrity: sha512-A5P/LfWGFSl6nsckYtjw9da+19jB8hkJ6ACTGcDfEJ0aE+l2n2El7dsVM7UVHZQ9s2lmYMWlrS21YLy2IR1LUw==}
engines: {node: '>=18'}
+ '@img/sharp-darwin-arm64@0.33.5':
+ resolution: {integrity: sha512-UT4p+iz/2H4twwAoLCqfA9UH5pI6DggwKEGuaPy7nCVQ8ZsiY5PIcrRvD1DzuY3qYL07NtIQcWnBSY/heikIFQ==}
+ engines: {node: ^18.17.0 || ^20.3.0 || >=21.0.0}
+ cpu: [arm64]
+ os: [darwin]
+
'@img/sharp-darwin-arm64@0.34.5':
resolution: {integrity: sha512-imtQ3WMJXbMY4fxb/Ndp6HBTNVtWCUI0WdobyheGf5+ad6xX8VIDO8u2xE4qc/fr08CKG/7dDseFtn6M6g/r3w==}
engines: {node: ^18.17.0 || ^20.3.0 || >=21.0.0}
cpu: [arm64]
os: [darwin]
+ '@img/sharp-darwin-x64@0.33.5':
+ resolution: {integrity: sha512-fyHac4jIc1ANYGRDxtiqelIbdWkIuQaI84Mv45KvGRRxSAa7o7d1ZKAOBaYbnepLC1WqxfpimdeWfvqqSGwR2Q==}
+ engines: {node: ^18.17.0 || ^20.3.0 || >=21.0.0}
+ cpu: [x64]
+ os: [darwin]
+
'@img/sharp-darwin-x64@0.34.5':
resolution: {integrity: sha512-YNEFAF/4KQ/PeW0N+r+aVVsoIY0/qxxikF2SWdp+NRkmMB7y9LBZAVqQ4yhGCm/H3H270OSykqmQMKLBhBJDEw==}
engines: {node: ^18.17.0 || ^20.3.0 || >=21.0.0}
cpu: [x64]
os: [darwin]
+ '@img/sharp-libvips-darwin-arm64@1.0.4':
+ resolution: {integrity: sha512-XblONe153h0O2zuFfTAbQYAX2JhYmDHeWikp1LM9Hul9gVPjFY427k6dFEcOL72O01QxQsWi761svJ/ev9xEDg==}
+ cpu: [arm64]
+ os: [darwin]
+
'@img/sharp-libvips-darwin-arm64@1.2.4':
resolution: {integrity: sha512-zqjjo7RatFfFoP0MkQ51jfuFZBnVE2pRiaydKJ1G/rHZvnsrHAOcQALIi9sA5co5xenQdTugCvtb1cuf78Vf4g==}
cpu: [arm64]
os: [darwin]
+ '@img/sharp-libvips-darwin-x64@1.0.4':
+ resolution: {integrity: sha512-xnGR8YuZYfJGmWPvmlunFaWJsb9T/AO2ykoP3Fz/0X5XV2aoYBPkX6xqCQvUTKKiLddarLaxpzNe+b1hjeWHAQ==}
+ cpu: [x64]
+ os: [darwin]
+
'@img/sharp-libvips-darwin-x64@1.2.4':
resolution: {integrity: sha512-1IOd5xfVhlGwX+zXv2N93k0yMONvUlANylbJw1eTah8K/Jtpi15KC+WSiaX/nBmbm2HxRM1gZ0nSdjSsrZbGKg==}
cpu: [x64]
os: [darwin]
+ '@img/sharp-libvips-linux-arm64@1.0.4':
+ resolution: {integrity: sha512-9B+taZ8DlyyqzZQnoeIvDVR/2F4EbMepXMc/NdVbkzsJbzkUjhXv/70GQJ7tdLA4YJgNP25zukcxpX2/SueNrA==}
+ cpu: [arm64]
+ os: [linux]
+
'@img/sharp-libvips-linux-arm64@1.2.4':
resolution: {integrity: sha512-excjX8DfsIcJ10x1Kzr4RcWe1edC9PquDRRPx3YVCvQv+U5p7Yin2s32ftzikXojb1PIFc/9Mt28/y+iRklkrw==}
cpu: [arm64]
os: [linux]
+ '@img/sharp-libvips-linux-arm@1.0.5':
+ resolution: {integrity: sha512-gvcC4ACAOPRNATg/ov8/MnbxFDJqf/pDePbBnuBDcjsI8PssmjoKMAz4LtLaVi+OnSb5FK/yIOamqDwGmXW32g==}
+ cpu: [arm]
+ os: [linux]
+
'@img/sharp-libvips-linux-arm@1.2.4':
resolution: {integrity: sha512-bFI7xcKFELdiNCVov8e44Ia4u2byA+l3XtsAj+Q8tfCwO6BQ8iDojYdvoPMqsKDkuoOo+X6HZA0s0q11ANMQ8A==}
cpu: [arm]
@@ -4576,32 +4628,64 @@ packages:
cpu: [riscv64]
os: [linux]
+ '@img/sharp-libvips-linux-s390x@1.0.4':
+ resolution: {integrity: sha512-u7Wz6ntiSSgGSGcjZ55im6uvTrOxSIS8/dgoVMoiGE9I6JAfU50yH5BoDlYA1tcuGS7g/QNtetJnxA6QEsCVTA==}
+ cpu: [s390x]
+ os: [linux]
+
'@img/sharp-libvips-linux-s390x@1.2.4':
resolution: {integrity: sha512-qmp9VrzgPgMoGZyPvrQHqk02uyjA0/QrTO26Tqk6l4ZV0MPWIW6LTkqOIov+J1yEu7MbFQaDpwdwJKhbJvuRxQ==}
cpu: [s390x]
os: [linux]
+ '@img/sharp-libvips-linux-x64@1.0.4':
+ resolution: {integrity: sha512-MmWmQ3iPFZr0Iev+BAgVMb3ZyC4KeFc3jFxnNbEPas60e1cIfevbtuyf9nDGIzOaW9PdnDciJm+wFFaTlj5xYw==}
+ cpu: [x64]
+ os: [linux]
+
'@img/sharp-libvips-linux-x64@1.2.4':
resolution: {integrity: sha512-tJxiiLsmHc9Ax1bz3oaOYBURTXGIRDODBqhveVHonrHJ9/+k89qbLl0bcJns+e4t4rvaNBxaEZsFtSfAdquPrw==}
cpu: [x64]
os: [linux]
+ '@img/sharp-libvips-linuxmusl-arm64@1.0.4':
+ resolution: {integrity: sha512-9Ti+BbTYDcsbp4wfYib8Ctm1ilkugkA/uscUn6UXK1ldpC1JjiXbLfFZtRlBhjPZ5o1NCLiDbg8fhUPKStHoTA==}
+ cpu: [arm64]
+ os: [linux]
+
'@img/sharp-libvips-linuxmusl-arm64@1.2.4':
resolution: {integrity: sha512-FVQHuwx1IIuNow9QAbYUzJ+En8KcVm9Lk5+uGUQJHaZmMECZmOlix9HnH7n1TRkXMS0pGxIJokIVB9SuqZGGXw==}
cpu: [arm64]
os: [linux]
+ '@img/sharp-libvips-linuxmusl-x64@1.0.4':
+ resolution: {integrity: sha512-viYN1KX9m+/hGkJtvYYp+CCLgnJXwiQB39damAO7WMdKWlIhmYTfHjwSbQeUK/20vY154mwezd9HflVFM1wVSw==}
+ cpu: [x64]
+ os: [linux]
+
'@img/sharp-libvips-linuxmusl-x64@1.2.4':
resolution: {integrity: sha512-+LpyBk7L44ZIXwz/VYfglaX/okxezESc6UxDSoyo2Ks6Jxc4Y7sGjpgU9s4PMgqgjj1gZCylTieNamqA1MF7Dg==}
cpu: [x64]
os: [linux]
+ '@img/sharp-linux-arm64@0.33.5':
+ resolution: {integrity: sha512-JMVv+AMRyGOHtO1RFBiJy/MBsgz0x4AWrT6QoEVVTyh1E39TrCUpTRI7mx9VksGX4awWASxqCYLCV4wBZHAYxA==}
+ engines: {node: ^18.17.0 || ^20.3.0 || >=21.0.0}
+ cpu: [arm64]
+ os: [linux]
+
'@img/sharp-linux-arm64@0.34.5':
resolution: {integrity: sha512-bKQzaJRY/bkPOXyKx5EVup7qkaojECG6NLYswgktOZjaXecSAeCWiZwwiFf3/Y+O1HrauiE3FVsGxFg8c24rZg==}
engines: {node: ^18.17.0 || ^20.3.0 || >=21.0.0}
cpu: [arm64]
os: [linux]
+ '@img/sharp-linux-arm@0.33.5':
+ resolution: {integrity: sha512-JTS1eldqZbJxjvKaAkxhZmBqPRGmxgu+qFKSInv8moZ2AmT5Yib3EQ1c6gp493HvrvV8QgdOXdyaIBrhvFhBMQ==}
+ engines: {node: ^18.17.0 || ^20.3.0 || >=21.0.0}
+ cpu: [arm]
+ os: [linux]
+
'@img/sharp-linux-arm@0.34.5':
resolution: {integrity: sha512-9dLqsvwtg1uuXBGZKsxem9595+ujv0sJ6Vi8wcTANSFpwV/GONat5eCkzQo/1O6zRIkh0m/8+5BjrRr7jDUSZw==}
engines: {node: ^18.17.0 || ^20.3.0 || >=21.0.0}
@@ -4620,30 +4704,59 @@ packages:
cpu: [riscv64]
os: [linux]
+ '@img/sharp-linux-s390x@0.33.5':
+ resolution: {integrity: sha512-y/5PCd+mP4CA/sPDKl2961b+C9d+vPAveS33s6Z3zfASk2j5upL6fXVPZi7ztePZ5CuH+1kW8JtvxgbuXHRa4Q==}
+ engines: {node: ^18.17.0 || ^20.3.0 || >=21.0.0}
+ cpu: [s390x]
+ os: [linux]
+
'@img/sharp-linux-s390x@0.34.5':
resolution: {integrity: sha512-nQtCk0PdKfho3eC5MrbQoigJ2gd1CgddUMkabUj+rBevs8tZ2cULOx46E7oyX+04WGfABgIwmMC0VqieTiR4jg==}
engines: {node: ^18.17.0 || ^20.3.0 || >=21.0.0}
cpu: [s390x]
os: [linux]
+ '@img/sharp-linux-x64@0.33.5':
+ resolution: {integrity: sha512-opC+Ok5pRNAzuvq1AG0ar+1owsu842/Ab+4qvU879ippJBHvyY5n2mxF1izXqkPYlGuP/M556uh53jRLJmzTWA==}
+ engines: {node: ^18.17.0 || ^20.3.0 || >=21.0.0}
+ cpu: [x64]
+ os: [linux]
+
'@img/sharp-linux-x64@0.34.5':
resolution: {integrity: sha512-MEzd8HPKxVxVenwAa+JRPwEC7QFjoPWuS5NZnBt6B3pu7EG2Ge0id1oLHZpPJdn3OQK+BQDiw9zStiHBTJQQQQ==}
engines: {node: ^18.17.0 || ^20.3.0 || >=21.0.0}
cpu: [x64]
os: [linux]
+ '@img/sharp-linuxmusl-arm64@0.33.5':
+ resolution: {integrity: sha512-XrHMZwGQGvJg2V/oRSUfSAfjfPxO+4DkiRh6p2AFjLQztWUuY/o8Mq0eMQVIY7HJ1CDQUJlxGGZRw1a5bqmd1g==}
+ engines: {node: ^18.17.0 || ^20.3.0 || >=21.0.0}
+ cpu: [arm64]
+ os: [linux]
+
'@img/sharp-linuxmusl-arm64@0.34.5':
resolution: {integrity: sha512-fprJR6GtRsMt6Kyfq44IsChVZeGN97gTD331weR1ex1c1rypDEABN6Tm2xa1wE6lYb5DdEnk03NZPqA7Id21yg==}
engines: {node: ^18.17.0 || ^20.3.0 || >=21.0.0}
cpu: [arm64]
os: [linux]
+ '@img/sharp-linuxmusl-x64@0.33.5':
+ resolution: {integrity: sha512-WT+d/cgqKkkKySYmqoZ8y3pxx7lx9vVejxW/W4DOFMYVSkErR+w7mf2u8m/y4+xHe7yY9DAXQMWQhpnMuFfScw==}
+ engines: {node: ^18.17.0 || ^20.3.0 || >=21.0.0}
+ cpu: [x64]
+ os: [linux]
+
'@img/sharp-linuxmusl-x64@0.34.5':
resolution: {integrity: sha512-Jg8wNT1MUzIvhBFxViqrEhWDGzqymo3sV7z7ZsaWbZNDLXRJZoRGrjulp60YYtV4wfY8VIKcWidjojlLcWrd8Q==}
engines: {node: ^18.17.0 || ^20.3.0 || >=21.0.0}
cpu: [x64]
os: [linux]
+ '@img/sharp-wasm32@0.33.5':
+ resolution: {integrity: sha512-ykUW4LVGaMcU9lu9thv85CbRMAwfeadCJHRsg2GmeRa/cJxsVY9Rbd57JcMxBkKHag5U/x7TSBpScF4U8ElVzg==}
+ engines: {node: ^18.17.0 || ^20.3.0 || >=21.0.0}
+ cpu: [wasm32]
+
'@img/sharp-wasm32@0.34.5':
resolution: {integrity: sha512-OdWTEiVkY2PHwqkbBI8frFxQQFekHaSSkUIJkwzclWZe64O1X4UlUjqqqLaPbUpMOQk6FBu/HtlGXNblIs0huw==}
engines: {node: ^18.17.0 || ^20.3.0 || >=21.0.0}
@@ -4655,12 +4768,24 @@ packages:
cpu: [arm64]
os: [win32]
+ '@img/sharp-win32-ia32@0.33.5':
+ resolution: {integrity: sha512-T36PblLaTwuVJ/zw/LaH0PdZkRz5rd3SmMHX8GSmR7vtNSP5Z6bQkExdSK7xGWyxLw4sUknBuugTelgw2faBbQ==}
+ engines: {node: ^18.17.0 || ^20.3.0 || >=21.0.0}
+ cpu: [ia32]
+ os: [win32]
+
'@img/sharp-win32-ia32@0.34.5':
resolution: {integrity: sha512-FV9m/7NmeCmSHDD5j4+4pNI8Cp3aW+JvLoXcTUo0IqyjSfAZJ8dIUmijx1qaJsIiU+Hosw6xM5KijAWRJCSgNg==}
engines: {node: ^18.17.0 || ^20.3.0 || >=21.0.0}
cpu: [ia32]
os: [win32]
+ '@img/sharp-win32-x64@0.33.5':
+ resolution: {integrity: sha512-MpY/o8/8kj+EcnxwvrP4aTJSWw/aZ7JIGR4aBeZkZw5B7/Jn+tY9/VNwtcoGmdT7GfggGIU4kygOMSbYnOrAbg==}
+ engines: {node: ^18.17.0 || ^20.3.0 || >=21.0.0}
+ cpu: [x64]
+ os: [win32]
+
'@img/sharp-win32-x64@0.34.5':
resolution: {integrity: sha512-+29YMsqY2/9eFEiW93eqWnuLcWcufowXewwSNIT6UwZdUUCrM3oFjMWH/Z6/TMmb4hlFenmfAVbpWeup2jryCw==}
engines: {node: ^18.17.0 || ^20.3.0 || >=21.0.0}
@@ -5244,6 +5369,9 @@ packages:
'@next/env@14.2.25':
resolution: {integrity: sha512-JnzQ2cExDeG7FxJwqAksZ3aqVJrHjFwZQAEJ9gQZSoEhIow7SNoKZzju/AwQ+PLIR4NY8V0rhcVozx/2izDO0w==}
+ '@next/env@15.2.6':
+ resolution: {integrity: sha512-kp1Mpm4K1IzSSJ5ZALfek0JBD2jBw9VGMXR/aT7ykcA2q/ieDARyBzg+e8J1TkeIb5AFj/YjtZdoajdy5uNy6w==}
+
'@next/env@15.5.10':
resolution: {integrity: sha512-plg+9A/KoZcTS26fe15LHg+QxReTazrIOoKKUC3Uz4leGGeNPgLHdevVraAAOX0snnUs3WkRx3eUQpj9mreG6A==}
@@ -5265,12 +5393,21 @@ packages:
'@next/eslint-plugin-next@14.2.7':
resolution: {integrity: sha512-+7xh142AdhZGjY9/L0iFo7mqRBMJHe+q+uOL+hto1Lfo9DeWCGcR6no4StlFbVSVcA6fQLKEX6y6qhMsSKbgNQ==}
+ '@next/eslint-plugin-next@15.2.6':
+ resolution: {integrity: sha512-DkQt+OUzNEABMQvupD+w4FsqkDAmA/otgtwhpExzbYZ4bHnUAHwhDD3PUV0maI1qyiGcoOJGG3qZ0IJyK6w+1A==}
+
'@next/swc-darwin-arm64@14.2.25':
resolution: {integrity: sha512-09clWInF1YRd6le00vt750s3m7SEYNehz9C4PUcSu3bAdCTpjIV4aTYQZ25Ehrr83VR1rZeqtKUPWSI7GfuKZQ==}
engines: {node: '>= 10'}
cpu: [arm64]
os: [darwin]
+ '@next/swc-darwin-arm64@15.2.5':
+ resolution: {integrity: sha512-4OimvVlFTbgzPdA0kh8A1ih6FN9pQkL4nPXGqemEYgk+e7eQhsst/p35siNNqA49eQA6bvKZ1ASsDtu9gtXuog==}
+ engines: {node: '>= 10'}
+ cpu: [arm64]
+ os: [darwin]
+
'@next/swc-darwin-arm64@15.5.7':
resolution: {integrity: sha512-IZwtxCEpI91HVU/rAUOOobWSZv4P2DeTtNaCdHqLcTJU4wdNXgAySvKa/qJCgR5m6KI8UsKDXtO2B31jcaw1Yw==}
engines: {node: '>= 10'}
@@ -5283,6 +5420,12 @@ packages:
cpu: [x64]
os: [darwin]
+ '@next/swc-darwin-x64@15.2.5':
+ resolution: {integrity: sha512-ohzRaE9YbGt1ctE0um+UGYIDkkOxHV44kEcHzLqQigoRLaiMtZzGrA11AJh2Lu0lv51XeiY1ZkUvkThjkVNBMA==}
+ engines: {node: '>= 10'}
+ cpu: [x64]
+ os: [darwin]
+
'@next/swc-darwin-x64@15.5.7':
resolution: {integrity: sha512-UP6CaDBcqaCBuiq/gfCEJw7sPEoX1aIjZHnBWN9v9qYHQdMKvCKcAVs4OX1vIjeE+tC5EIuwDTVIoXpUes29lg==}
engines: {node: '>= 10'}
@@ -5295,6 +5438,12 @@ packages:
cpu: [arm64]
os: [linux]
+ '@next/swc-linux-arm64-gnu@15.2.5':
+ resolution: {integrity: sha512-FMSdxSUt5bVXqqOoZCc/Seg4LQep9w/fXTazr/EkpXW2Eu4IFI9FD7zBDlID8TJIybmvKk7mhd9s+2XWxz4flA==}
+ engines: {node: '>= 10'}
+ cpu: [arm64]
+ os: [linux]
+
'@next/swc-linux-arm64-gnu@15.5.7':
resolution: {integrity: sha512-NCslw3GrNIw7OgmRBxHtdWFQYhexoUCq+0oS2ccjyYLtcn1SzGzeM54jpTFonIMUjNbHmpKpziXnpxhSWLcmBA==}
engines: {node: '>= 10'}
@@ -5307,6 +5456,12 @@ packages:
cpu: [arm64]
os: [linux]
+ '@next/swc-linux-arm64-musl@15.2.5':
+ resolution: {integrity: sha512-4ZNKmuEiW5hRKkGp2HWwZ+JrvK4DQLgf8YDaqtZyn7NYdl0cHfatvlnLFSWUayx9yFAUagIgRGRk8pFxS8Qniw==}
+ engines: {node: '>= 10'}
+ cpu: [arm64]
+ os: [linux]
+
'@next/swc-linux-arm64-musl@15.5.7':
resolution: {integrity: sha512-nfymt+SE5cvtTrG9u1wdoxBr9bVB7mtKTcj0ltRn6gkP/2Nu1zM5ei8rwP9qKQP0Y//umK+TtkKgNtfboBxRrw==}
engines: {node: '>= 10'}
@@ -5319,6 +5474,12 @@ packages:
cpu: [x64]
os: [linux]
+ '@next/swc-linux-x64-gnu@15.2.5':
+ resolution: {integrity: sha512-bE6lHQ9GXIf3gCDE53u2pTl99RPZW5V1GLHSRMJ5l/oB/MT+cohu9uwnCK7QUph2xIOu2a6+27kL0REa/kqwZw==}
+ engines: {node: '>= 10'}
+ cpu: [x64]
+ os: [linux]
+
'@next/swc-linux-x64-gnu@15.5.7':
resolution: {integrity: sha512-hvXcZvCaaEbCZcVzcY7E1uXN9xWZfFvkNHwbe/n4OkRhFWrs1J1QV+4U1BN06tXLdaS4DazEGXwgqnu/VMcmqw==}
engines: {node: '>= 10'}
@@ -5331,6 +5492,12 @@ packages:
cpu: [x64]
os: [linux]
+ '@next/swc-linux-x64-musl@15.2.5':
+ resolution: {integrity: sha512-y7EeQuSkQbTAkCEQnJXm1asRUuGSWAchGJ3c+Qtxh8LVjXleZast8Mn/rL7tZOm7o35QeIpIcid6ufG7EVTTcA==}
+ engines: {node: '>= 10'}
+ cpu: [x64]
+ os: [linux]
+
'@next/swc-linux-x64-musl@15.5.7':
resolution: {integrity: sha512-4IUO539b8FmF0odY6/SqANJdgwn1xs1GkPO5doZugwZ3ETF6JUdckk7RGmsfSf7ws8Qb2YB5It33mvNL/0acqA==}
engines: {node: '>= 10'}
@@ -5343,6 +5510,12 @@ packages:
cpu: [arm64]
os: [win32]
+ '@next/swc-win32-arm64-msvc@15.2.5':
+ resolution: {integrity: sha512-gQMz0yA8/dskZM2Xyiq2FRShxSrsJNha40Ob/M2n2+JGRrZ0JwTVjLdvtN6vCxuq4ByhOd4a9qEf60hApNR2gQ==}
+ engines: {node: '>= 10'}
+ cpu: [arm64]
+ os: [win32]
+
'@next/swc-win32-arm64-msvc@15.5.7':
resolution: {integrity: sha512-CpJVTkYI3ZajQkC5vajM7/ApKJUOlm6uP4BknM3XKvJ7VXAvCqSjSLmM0LKdYzn6nBJVSjdclx8nYJSa3xlTgQ==}
engines: {node: '>= 10'}
@@ -5361,6 +5534,12 @@ packages:
cpu: [x64]
os: [win32]
+ '@next/swc-win32-x64-msvc@15.2.5':
+ resolution: {integrity: sha512-tBDNVUcI7U03+3oMvJ11zrtVin5p0NctiuKmTGyaTIEAVj9Q77xukLXGXRnWxKRIIdFG4OTA2rUVGZDYOwgmAA==}
+ engines: {node: '>= 10'}
+ cpu: [x64]
+ os: [win32]
+
'@next/swc-win32-x64-msvc@15.5.7':
resolution: {integrity: sha512-gMzgBX164I6DN+9/PGA+9dQiwmTkE4TloBNx8Kv9UiGARsr9Nba7IpcBRA1iTV9vwlYnrE3Uy6I7Aj6qLjQuqw==}
engines: {node: '>= 10'}
@@ -6516,6 +6695,9 @@ packages:
cpu: [x64]
os: [win32]
+ '@rtsao/scc@1.1.0':
+ resolution: {integrity: sha512-zt6OdqaDoOnJ1ZYsCYGt9YmWzDXl4vQdKTyJev62gFhRGKdx7mcT54V9KIjg+d2wi9EXsPvAPKe7i7WjfVWB8g==}
+
'@rushstack/eslint-patch@1.10.4':
resolution: {integrity: sha512-WJgX9nzTqknM393q1QJDJmoW28kUfEnybeTfVNcNAPnIx210RXm2DiXiHzfNPJNIUUb1tJnz/l4QGtJ30PgWmA==}
@@ -8515,6 +8697,10 @@ packages:
aria-query@5.3.0:
resolution: {integrity: sha512-b0P0sZPKtyu8HkeRAfCq0IfURZK+SuwMjY1UXGBU27wpAiTwQAIlq56IbIO+ytk/JjS1fMR14ee5WBBfKi5J6A==}
+ aria-query@5.3.2:
+ resolution: {integrity: sha512-COROpnaoap1E2F000S62r6A60uHZnmlvomhfyT2DlTcrY1OrBKn2UhH7qn5wTC9zMvD0AY7csdPSNwKP+7WiQw==}
+ engines: {node: '>= 0.4'}
+
arr-diff@4.0.0:
resolution: {integrity: sha512-YVIQ82gZPGBebQV/a8dar4AitzCQs0jjXwMPZllpXMaGjXPYVUawSxQrRsjhjupyVxEvbHgUmIhKVlND+j02kA==}
engines: {node: '>=0.10.0'}
@@ -8539,6 +8725,10 @@ packages:
resolution: {integrity: sha512-ahC5W1xgou+KTXix4sAO8Ki12Q+jf4i0+tmk3sC+zgcynshkHxzpXdImBehiUYKKKDwvfFiJl1tZt6ewscS1Mg==}
engines: {node: '>= 0.4'}
+ array-buffer-byte-length@1.0.2:
+ resolution: {integrity: sha512-LHE+8BuR7RYGDKvnrmcuSq3tDcKv9OFEXQt/HpbZhY7V6h0zlUXutnAD82GiFx9rdieCMjkvtcsPqBwgUl1Iiw==}
+ engines: {node: '>= 0.4'}
+
array-flatten@1.1.1:
resolution: {integrity: sha512-PCVAQswWemu6UdxsDFFX/+gVeYqKAod3D3UVm91jHwynguOwAvYPhx8nNlM++NqRcK6CxxpUafjmhIdKiHibqg==}
@@ -8549,6 +8739,10 @@ packages:
resolution: {integrity: sha512-itaWrbYbqpGXkGhZPGUulwnhVf5Hpy1xiCFsGqyIGglbBxmG5vSjxQen3/WGOjPpNEv1RtBLKxbmVXm8HpJStQ==}
engines: {node: '>= 0.4'}
+ array-includes@3.1.9:
+ resolution: {integrity: sha512-FmeCCAenzH0KH381SPT5FZmiA/TmpndpcaShhfgEN9eCVjnFBqq3l1xrI42y8+PPLI6hypzou4GXw00WHmPBLQ==}
+ engines: {node: '>= 0.4'}
+
array-union@2.1.0:
resolution: {integrity: sha512-HGyxoOTYUyCM6stUe6EJgnd4EoewAI7zMdfqO+kGjnlZmBDz/cR5pf8r/cR4Wq60sL/p0IkcjUEEPwS3GFrIyw==}
engines: {node: '>=8'}
@@ -8569,14 +8763,26 @@ packages:
resolution: {integrity: sha512-zfETvRFA8o7EiNn++N5f/kaCw221hrpGsDmcpndVupkPzEc1Wuf3VgC0qby1BbHs7f5DVYjgtEU2LLh5bqeGfQ==}
engines: {node: '>= 0.4'}
+ array.prototype.findlastindex@1.2.6:
+ resolution: {integrity: sha512-F/TKATkzseUExPlfvmwQKGITM3DGTK+vkAsCZoDc5daVygbJBnjEUCbgkAvVFsgfXfX4YIqZ/27G3k3tdXrTxQ==}
+ engines: {node: '>= 0.4'}
+
array.prototype.flat@1.3.2:
resolution: {integrity: sha512-djYB+Zx2vLewY8RWlNCUdHjDXs2XOgm602S9E7P/UpHgfeHL00cRiIF+IN/G/aUJ7kGPb6yO/ErDI5V2s8iycA==}
engines: {node: '>= 0.4'}
+ array.prototype.flat@1.3.3:
+ resolution: {integrity: sha512-rwG/ja1neyLqCuGZ5YYrznA62D4mZXg0i1cIskIUKSiqF3Cje9/wXAls9B9s1Wa2fomMsIv8czB8jZcPmxCXFg==}
+ engines: {node: '>= 0.4'}
+
array.prototype.flatmap@1.3.2:
resolution: {integrity: sha512-Ewyx0c9PmpcsByhSW4r+9zDU7sGjFc86qf/kKtuSCRdhfbk0SNLLkaT5qvcHnRGgc5NP/ly/y+qkXkqONX54CQ==}
engines: {node: '>= 0.4'}
+ array.prototype.flatmap@1.3.3:
+ resolution: {integrity: sha512-Y7Wt51eKJSyi80hFrJCePGGNo5ktJCslFuboqJsbf57CCPcm5zztluPlc4/aD8sWsKvlwatezpV4U1efk8kpjg==}
+ engines: {node: '>= 0.4'}
+
array.prototype.reduce@1.0.5:
resolution: {integrity: sha512-kDdugMl7id9COE8R7MHF5jWk7Dqt/fs4Pv+JXoICnYwqpjjjbUurz6w5fT5IG6brLdJhv6/VoHB0H7oyIBXd+Q==}
engines: {node: '>= 0.4'}
@@ -8589,6 +8795,10 @@ packages:
resolution: {integrity: sha512-bMxMKAjg13EBSVscxTaYA4mRc5t1UAXa2kXiGTNfZ079HIWXEkKmkgFrh/nJqamaLSrXO5H4WFFkPEaLJWbs3A==}
engines: {node: '>= 0.4'}
+ arraybuffer.prototype.slice@1.0.4:
+ resolution: {integrity: sha512-BNoCY6SXXPQ7gF2opIP4GBE+Xw7U+pHMYKuzjgCN3GwiaIR09UUeKfheyIry77QtrCBlC0KK0q5/TER/tYh3PQ==}
+ engines: {node: '>= 0.4'}
+
asap@2.0.6:
resolution: {integrity: sha512-BSHWgDSAiKs50o2Re8ppvp3seVHXSRM44cdSsT9FfNEUUZLOGWVCsiWaRPWM1Znn+mqZ1OfVZ3z3DWEzSp7hRA==}
@@ -8678,6 +8888,10 @@ packages:
avvio@8.4.0:
resolution: {integrity: sha512-CDSwaxINFy59iNwhYnkvALBwZiTydGkOecZyPkqBpABYR1KqGEsET0VOOYDwtleZSUIdeY36DC2bSZ24CO1igA==}
+ axe-core@4.11.1:
+ resolution: {integrity: sha512-BASOg+YwO2C+346x3LZOeoovTIoTrRqEsqMa6fmfAV0P+U9mFr9NsyOEpiYvFjbc64NMrSswhV50WdXzdb/Z5A==}
+ engines: {node: '>=4'}
+
axe-core@4.9.1:
resolution: {integrity: sha512-QbUdXJVTpvUTHU7871ppZkdOLBeGUKBQWHkHrvN2V9IQWGMt61zf3B45BtzjxEJzYuj0JBjBZP/hmYS/R9pmAw==}
engines: {node: '>=4'}
@@ -8694,6 +8908,10 @@ packages:
axobject-query@3.1.1:
resolution: {integrity: sha512-goKlv8DZrK9hUh975fnHzhNIO4jUnFCfv/dszV5VwUGDFjI6vQ2VwoyjYjYNEbBE8AH87TduWP5uyDR1D+Iteg==}
+ axobject-query@4.1.0:
+ resolution: {integrity: sha512-qIj0G9wZbMGNLjLmg1PT6v2mE9AH2zlnADJD/2tC6E00hgmhUOfEB6greHPAfLRSufHqROIUTkw6E+M3lH0PTQ==}
+ engines: {node: '>= 0.4'}
+
b4a@1.6.6:
resolution: {integrity: sha512-5Tk1HLk6b6ctmjIkAcU/Ujv/1WqiDl0F0JdRCR80VsOcUlHcu7pWeWRlOqQLHfDEsVx9YH/aif5AG4ehoCtTmg==}
@@ -8963,6 +9181,10 @@ packages:
resolution: {integrity: sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==}
engines: {node: '>=8'}
+ braces@3.0.3:
+ resolution: {integrity: sha512-yQbXgO/OSZVD2IsiLlro+7Hf6Q18EJrKSEsdoMzKePKXct3gvD8oLcOQdIzGupr5Fj+EDe8gO/lxc1BzfMpxvA==}
+ engines: {node: '>=8'}
+
brorand@1.1.0:
resolution: {integrity: sha512-cKV8tMCEpQs4hK/ik71d6LrPOnpkpGBR0wzxqr68g2m/LB2GxVYQroAjMJZRVM1Y4BCjCKc3vAamxSzOY2RP+w==}
@@ -9095,10 +9317,22 @@ packages:
resolution: {integrity: sha512-v+p6ongsrp0yTGbJXjgxPow2+DL93DASP4kXCDKb8/bwRtt9OEF3whggkkDkGNzgcWy2XaF4a8nZglC7uElscg==}
engines: {node: '>=8'}
+ call-bind-apply-helpers@1.0.2:
+ resolution: {integrity: sha512-Sp1ablJ0ivDkSzjcaJdxEunN5/XvksFJ2sMBFfq6x0ryhQV/2b/KwFe21cMpmHtPOSij8K99/wSfoEuTObmuMQ==}
+ engines: {node: '>= 0.4'}
+
call-bind@1.0.7:
resolution: {integrity: sha512-GHTSNSYICQ7scH7sZ+M2rFopRoLh8t2bLSW6BbgrtLsahOIB5iyAVJf9GjWK3cYTDaMj4XdBpM1cA6pIS0Kv2w==}
engines: {node: '>= 0.4'}
+ call-bind@1.0.8:
+ resolution: {integrity: sha512-oKlSFMcMwpUg2ednkhQ454wfWiU/ul3CkJe/PEHcTKuiX6RpbehUiFMXu13HalGZxfUwCQzZG747YXBn1im9ww==}
+ engines: {node: '>= 0.4'}
+
+ call-bound@1.0.4:
+ resolution: {integrity: sha512-+ys997U96po4Kx/ABpBCqhA9EuxJaQWDQg7295H4hBphv3IZg0boBKuwYpt4YXp6MZ5AmZQnU/tyMTlRpaSejg==}
+ engines: {node: '>= 0.4'}
+
caller-callsite@2.0.0:
resolution: {integrity: sha512-JuG3qI4QOftFsZyOn1qq87fq5grLIyk1JYd5lJmdA+fG7aQ9pA/i3JIJGcO3q0MrRcHlOt1U+ZeHW8Dq9axALQ==}
engines: {node: '>=4'}
@@ -9136,9 +9370,6 @@ packages:
caniuse-lite@1.0.30001660:
resolution: {integrity: sha512-GacvNTTuATm26qC74pt+ad1fW15mlQ/zuTzzY1ZoIzECTP8HURDfF43kNxPgf7H1jmelCBQTTbBNxdSXOA7Bqg==}
- caniuse-lite@1.0.30001703:
- resolution: {integrity: sha512-kRlAGTRWgPsOj7oARC9m1okJEXdL/8fekFVcxA8Hl7GH4r/sN4OJn/i6Flde373T50KS7Y37oFbMwlE8+F42kQ==}
-
caniuse-lite@1.0.30001760:
resolution: {integrity: sha512-7AAMPcueWELt1p3mi13HR/LHH0TJLT11cnwDJEs3xA4+CK/PLKeO9Kl1oru24htkyUKtkGCvAx4ohB0Ttry8Dw==}
@@ -9381,10 +9612,17 @@ packages:
color-name@1.1.4:
resolution: {integrity: sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==}
+ color-string@1.9.1:
+ resolution: {integrity: sha512-shrVawQFojnZv6xM40anx4CkoDP+fZsw/ZerEMsW/pyzsRbElpsL/DBVW7q3ExxwusdNXI3lXpuhEZkzs8p5Eg==}
+
color-support@1.1.3:
resolution: {integrity: sha512-qiBjkpbMLO/HL68y+lh4q0/O1MZFj2RX6X/KmMa3+gJD3z+WwI1ZzDHysvqHGS3mP6mznPckpXmw1nI9cJjyRg==}
hasBin: true
+ color@4.2.3:
+ resolution: {integrity: sha512-1rXeuUUiGGrykh+CeBdu5Ie7OJwinCgQY0bc7GCRxy5xVHy+moaqkpL/jqQq0MtQOeYcrqEz4abc5f0KtU7W4A==}
+ engines: {node: '>=12.5.0'}
+
colord@2.9.3:
resolution: {integrity: sha512-jeC1axXpnb0/2nn/Y1LPuLdgXBLH7aDcHu4KEKfqw3CUhX7ZpfBSlPKyqXE6btIgEzfWtrX3/tyBCaCvXvMkOw==}
@@ -9834,14 +10072,26 @@ packages:
resolution: {integrity: sha512-0lht7OugA5x3iJLOWFhWK/5ehONdprk0ISXqVFn/NFrDu+cuc8iADFrGQz5BnRK7LLU3JmkbXSxaqX+/mXYtUA==}
engines: {node: '>= 0.4'}
+ data-view-buffer@1.0.2:
+ resolution: {integrity: sha512-EmKO5V3OLXh1rtK2wgXRansaK1/mtVdTUEiEI0W8RkvgT05kfxaH29PliLnpLP73yYO6142Q72QNa8Wx/A5CqQ==}
+ engines: {node: '>= 0.4'}
+
data-view-byte-length@1.0.1:
resolution: {integrity: sha512-4J7wRJD3ABAzr8wP+OcIcqq2dlUKp4DVflx++hs5h5ZKydWMI6/D/fAot+yh6g2tHh8fLFTvNOaVN357NvSrOQ==}
engines: {node: '>= 0.4'}
+ data-view-byte-length@1.0.2:
+ resolution: {integrity: sha512-tuhGbE6CfTM9+5ANGf+oQb72Ky/0+s3xKUpHvShfiz2RxMFgFPjsXuRLBVMtvMs15awe45SRb83D6wH4ew6wlQ==}
+ engines: {node: '>= 0.4'}
+
data-view-byte-offset@1.0.0:
resolution: {integrity: sha512-t/Ygsytq+R995EJ5PZlD4Cu56sWa8InXySaViRzw9apusqsOO2bQP+SbYzAhR0pFKoB+43lYy8rWban9JSuXnA==}
engines: {node: '>= 0.4'}
+ data-view-byte-offset@1.0.1:
+ resolution: {integrity: sha512-BS8PfmtDGnrgYdOonGZQdLZslWIeCGFP9tpan0hi1Co2Zr2NKADsvGYA8XxuG/4UWgJ6Cjtv+YJnB6MM69QGlQ==}
+ engines: {node: '>= 0.4'}
+
date-fns@2.30.0:
resolution: {integrity: sha512-fnULvOpxnC5/Vg3NCiWelDsLiUc9bRwAPs/+LfTLNvetFCtCTN+yQz15C/fs4AwX1R9K5GLtLfn8QW+dWisaAw==}
engines: {node: '>=0.11'}
@@ -10205,6 +10455,10 @@ packages:
resolution: {integrity: sha512-g/M9sqy3oHe477Ar4voQxWtaPIFw1jTdKZuomOjhCcBx9nHUNn0pu6NopuFFrTh/TRZIKEj+76vLWFu9BNKk+Q==}
engines: {node: '>=4'}
+ dunder-proto@1.0.1:
+ resolution: {integrity: sha512-KIN/nDJBQRcXw0MLVhZE9iQHmG68qAVIBg9CqmUYjmQIhgij9U5MFvrqkUL5FbtyyzZuOeOt0zdeRe4UY7ct+A==}
+ engines: {node: '>= 0.4'}
+
duplexer@0.1.2:
resolution: {integrity: sha512-jtD6YG370ZCIi/9GTaJKQxWTZD045+4R4hTk/x1UyoqadyJ9x9CgSi1RlVDQF8U2sxLLSnFkCaMihqljHIWgMg==}
@@ -10360,6 +10614,10 @@ packages:
resolution: {integrity: sha512-e+HfNH61Bj1X9/jLc5v1owaLYuHdeHHSQlkhCBiTK8rBvKaULl/beGMxwrMXjpYrv4pz22BlY570vVePA2ho4A==}
engines: {node: '>= 0.4'}
+ es-abstract@1.24.1:
+ resolution: {integrity: sha512-zHXBLhP+QehSSbsS9Pt23Gg964240DPd6QCf8WpkqEXxQ7fhdZzYsocOr5u7apWonsS5EjZDmTF+/slGMyasvw==}
+ engines: {node: '>= 0.4'}
+
es-array-method-boxes-properly@1.0.0:
resolution: {integrity: sha512-wd6JXUmyHmt8T5a2xreUwKcGPq6f1f+WwIJkijUqiGcJz1qqnZgP6XIK+QyIWU5lT7imeNxUll48bziG+TSYcA==}
@@ -10367,6 +10625,10 @@ packages:
resolution: {integrity: sha512-jxayLKShrEqqzJ0eumQbVhTYQM27CfT1T35+gCgDFoL82JLsXqTJ76zv6A0YLOgEnLUMvLzsDsGIrl8NFpT2gQ==}
engines: {node: '>= 0.4'}
+ es-define-property@1.0.1:
+ resolution: {integrity: sha512-e3nRfgfUZ4rNGL232gUgX06QNyyez04KdjFrF+LTRoOXmrOgFKDg4BCdsjW8EnT69eqdYGmRpJwiPVYNrCaW3g==}
+ engines: {node: '>= 0.4'}
+
es-errors@1.3.0:
resolution: {integrity: sha512-Zf5H2Kxt2xjTvbJvP2ZWLEICxA6j+hAmMzIlypy4xcBg1vKVnx89Wy0GbS+kf5cwCVFFzdCFh2XSCFNULS6csw==}
engines: {node: '>= 0.4'}
@@ -10378,6 +10640,10 @@ packages:
resolution: {integrity: sha512-zoMwbCcH5hwUkKJkT8kDIBZSz9I6mVG//+lDCinLCGov4+r7NIy0ld8o03M0cJxl2spVf6ESYVS6/gpIfq1FFw==}
engines: {node: '>= 0.4'}
+ es-iterator-helpers@1.2.2:
+ resolution: {integrity: sha512-BrUQ0cPTB/IwXj23HtwHjS9n7O4h9FX94b4xc5zlTHxeLgTAdzYUDyy6KdExAl9lbN5rtfe44xpjpmj9grxs5w==}
+ engines: {node: '>= 0.4'}
+
es-module-lexer@1.3.0:
resolution: {integrity: sha512-vZK7T0N2CBmBOixhmjdqx2gWVbFZ4DXZ/NyRMZVlJXPa7CyFS+/a4QQsDGDQy9ZfEzxFuNEsMLeQJnKP2p5/JA==}
@@ -10385,17 +10651,33 @@ packages:
resolution: {integrity: sha512-MZ4iQ6JwHOBQjahnjwaC1ZtIBH+2ohjamzAO3oaHcXYup7qxjF2fixyH+Q71voWHeOkI2q/TnJao/KfXYIZWbw==}
engines: {node: '>= 0.4'}
+ es-object-atoms@1.1.1:
+ resolution: {integrity: sha512-FGgH2h8zKNim9ljj7dankFPcICIK9Cp5bm+c2gQSYePhpaG5+esrLODihIorn+Pe6FGJzWhXQotPv73jTaldXA==}
+ engines: {node: '>= 0.4'}
+
es-set-tostringtag@2.0.3:
resolution: {integrity: sha512-3T8uNMC3OQTHkFUsFq8r/BwAXLHvU/9O9mE0fBc/MY5iq/8H7ncvO947LmYA6ldWw9Uh8Yhf25zu6n7nML5QWQ==}
engines: {node: '>= 0.4'}
+ es-set-tostringtag@2.1.0:
+ resolution: {integrity: sha512-j6vWzfrGVfyXxge+O0x5sh6cvxAog0a/4Rdd2K36zCMV5eJ+/+tOAngRO8cODMNWbVRdVlmGZQL2YS3yR8bIUA==}
+ engines: {node: '>= 0.4'}
+
es-shim-unscopables@1.0.2:
resolution: {integrity: sha512-J3yBRXCzDu4ULnQwxyToo/OjdMx6akgVC7K6few0a7F/0wLtmKKN7I73AH5T2836UuXRqN7Qg+IIUw/+YJksRw==}
+ es-shim-unscopables@1.1.0:
+ resolution: {integrity: sha512-d9T8ucsEhh8Bi1woXCf+TIKDIROLG5WCkxg8geBCbvk22kzwC5G2OnXVMO6FUsvQlgUUXQ2itephWDLqDzbeCw==}
+ engines: {node: '>= 0.4'}
+
es-to-primitive@1.2.1:
resolution: {integrity: sha512-QCOllgZJtaUo9miYBcLChTUaHNjJF3PYs1VidD7AwiEj1kYxKeQTctLAezAOH5ZKRH0g2IgPn6KwB4IT8iRpvA==}
engines: {node: '>= 0.4'}
+ es-to-primitive@1.3.0:
+ resolution: {integrity: sha512-w+5mJ3GuFL+NjVtJlvydShqE1eN3h3PbI7/5LAsYJP/2qtuMXjfL2LpHSRqo4b4eSF5K/DH1JXKUAHSB2UW50g==}
+ engines: {node: '>= 0.4'}
+
es6-object-assign@1.1.0:
resolution: {integrity: sha512-MEl9uirslVwqQU369iHNWZXsI8yaZYGg/D65aOgZkeyFJwHYSxilf7rQzXKI7DdDuBPrBXbfk3sl9hJhmd5AUw==}
@@ -10525,6 +10807,15 @@ packages:
typescript:
optional: true
+ eslint-config-next@15.2.6:
+ resolution: {integrity: sha512-NZHjg3/y3xIBHMaWu6ayuy0MPg4Udt6A/Y3kXr6E0kTc61MxT4A6jTbkOVNRAfVx5SgZTDu6COVqFpiBLBcRaw==}
+ peerDependencies:
+ eslint: ^7.23.0 || ^8.0.0 || ^9.0.0
+ typescript: '>=3.3.1'
+ peerDependenciesMeta:
+ typescript:
+ optional: true
+
eslint-config-react-app@7.0.1:
resolution: {integrity: sha512-K6rNzvkIeHaTd8m/QEh1Zko0KI7BACWkkneSs6s9cKZC/J27X3eZR6Upt1jkmZ/4FK+XUOPPxMEN7+lbUXfSlA==}
engines: {node: '>=14.0.0'}
@@ -10545,6 +10836,27 @@ packages:
eslint: '*'
eslint-plugin-import: '*'
+ eslint-module-utils@2.12.1:
+ resolution: {integrity: sha512-L8jSWTze7K2mTg0vos/RuLRS5soomksDPoJLXIslC7c8Wmut3bx7CPpJijDcBZtxQ5lrbUdM+s0OlNbz0DCDNw==}
+ engines: {node: '>=4'}
+ peerDependencies:
+ '@typescript-eslint/parser': '*'
+ eslint: '*'
+ eslint-import-resolver-node: '*'
+ eslint-import-resolver-typescript: '*'
+ eslint-import-resolver-webpack: '*'
+ peerDependenciesMeta:
+ '@typescript-eslint/parser':
+ optional: true
+ eslint:
+ optional: true
+ eslint-import-resolver-node:
+ optional: true
+ eslint-import-resolver-typescript:
+ optional: true
+ eslint-import-resolver-webpack:
+ optional: true
+
eslint-module-utils@2.8.1:
resolution: {integrity: sha512-rXDXR3h7cs7dy9RNpUlQf80nX31XWJEyGq1tRMo+6GsO5VmTe4UTwtmonAD4ZkAsrfMVDA2wlGJ3790Ys+D49Q==}
engines: {node: '>=4'}
@@ -10584,6 +10896,16 @@ packages:
'@typescript-eslint/parser':
optional: true
+ eslint-plugin-import@2.32.0:
+ resolution: {integrity: sha512-whOE1HFo/qJDyX4SnXzP4N6zOWn79WhnCUY/iDR0mPfQZO8wcYE4JClzI2oZrhBnnMUCBCHZhO6VQyoBU95mZA==}
+ engines: {node: '>=4'}
+ peerDependencies:
+ '@typescript-eslint/parser': '*'
+ eslint: ^2 || ^3 || ^4 || ^5 || ^6 || ^7.2.0 || ^8 || ^9
+ peerDependenciesMeta:
+ '@typescript-eslint/parser':
+ optional: true
+
eslint-plugin-jest@25.7.0:
resolution: {integrity: sha512-PWLUEXeeF7C9QGKqvdSbzLOiLTx+bno7/HC9eefePfEb257QFHg7ye3dh80AZVkaa/RQsBB1Q/ORQvg2X7F0NQ==}
engines: {node: ^12.13.0 || ^14.15.0 || >=16.0.0}
@@ -10597,6 +10919,12 @@ packages:
jest:
optional: true
+ eslint-plugin-jsx-a11y@6.10.2:
+ resolution: {integrity: sha512-scB3nz4WmG75pV8+3eRUQOHZlNSUhFNq37xnpgRkCCELU3XMvXAxLk1eqWWyE22Ki4Q01Fnsw9BA3cJHDPgn2Q==}
+ engines: {node: '>=4.0'}
+ peerDependencies:
+ eslint: ^3 || ^4 || ^5 || ^6 || ^7 || ^8 || ^9
+
eslint-plugin-jsx-a11y@6.9.0:
resolution: {integrity: sha512-nOFOCaJG2pYqORjK19lqPqxMO/JpvdCZdPtNdxY3kvom3jTvkAbOvQvD8wuD0G8BYR0IGAGYDlzqWJOh/ybn2g==}
engines: {node: '>=4.0'}
@@ -10638,6 +10966,12 @@ packages:
peerDependencies:
eslint: ^3 || ^4 || ^5 || ^6 || ^7 || ^8 || ^9.7
+ eslint-plugin-react@7.37.5:
+ resolution: {integrity: sha512-Qteup0SqU15kdocexFNAJMvCJEfa2xUKNV4CC1xsVMrIIqEy3SQ/rqyxCWNzfrd3/ldy6HMlD2e0JDVpDg2qIA==}
+ engines: {node: '>=4'}
+ peerDependencies:
+ eslint: ^3 || ^4 || ^5 || ^6 || ^7 || ^8 || ^9.7
+
eslint-plugin-testing-library@5.11.0:
resolution: {integrity: sha512-ELY7Gefo+61OfXKlQeXNIDVVLPcvKTeiQOoMZG9TeuWa7Ln4dUNRv8JdRWBQI9Mbb427XGlVB1aa1QPZxBJM8Q==}
engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0, npm: '>=6'}
@@ -10953,6 +11287,10 @@ packages:
resolution: {integrity: sha512-rYGMRwip6lUMvYD3BTScMwT1HtAs2d71SMv66Vrxs0IekGZEjhM0pcMfjQPnknBt2zeCwQMEupiN02ZP4DiT1Q==}
engines: {node: '>=8'}
+ fast-glob@3.3.1:
+ resolution: {integrity: sha512-kNFPyjhh5cKjrUltxs+wFx+ZkbRaxxmZ+X0ZU31SOsxCEtP9VPgtq2teZw1DebupL5GmDaNQ6yKMMVcM41iqDg==}
+ engines: {node: '>=8.6.0'}
+
fast-glob@3.3.2:
resolution: {integrity: sha512-oX2ruAFQwf/Orj8m737Y5adxDQO0LAB7/S5MnxCdTNDd4p6BsyIVsv9JQsATbTSq8KHRpLwIHbVlUNatxd+1Ow==}
engines: {node: '>=8.6.0'}
@@ -11059,6 +11397,10 @@ packages:
resolution: {integrity: sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==}
engines: {node: '>=8'}
+ fill-range@7.1.1:
+ resolution: {integrity: sha512-YsGpe3WHLK8ZYi4tWDg2Jy3ebRz2rXowDxnld4bkQB00cc/1Zw9AWnC0i9ztDJitivtQvaI9KaLyKrc+hBW0yg==}
+ engines: {node: '>=8'}
+
filter-obj@1.1.0:
resolution: {integrity: sha512-8rXg1ZnX7xzy2NGDVkBVaAy+lSlPNwad13BtgSlLuxfIslyt5Vg64U7tFcCt4WS1R0hvtnQybT/IyCkGZ3DpXQ==}
engines: {node: '>=0.10.0'}
@@ -11144,6 +11486,10 @@ packages:
for-each@0.3.3:
resolution: {integrity: sha512-jqYfLp7mo9vIyQf8ykW2v7A+2N4QjeCeI5+Dz9XraiO1ign81wjiH7Fb9vSOWvQfNtmSa4H2RoQTrrXivdUZmw==}
+ for-each@0.3.5:
+ resolution: {integrity: sha512-dKx12eRCVIzqCxFGplyFKJMPvLEWgmNtUrpTiJIR5u97zEhRG8ySrtboPHZXx7daLxQVrl643cTzbab2tkQjxg==}
+ engines: {node: '>= 0.4'}
+
for-in@1.0.2:
resolution: {integrity: sha512-7EwmXrOjyL+ChxMhmG5lnW9MPt1aIeZEwKhQzoBUdTV0N3zuwWDZYVJatDvZ2OyzPUvdIAZDsCetk3coyMfcnQ==}
engines: {node: '>=0.10.0'}
@@ -11287,6 +11633,10 @@ packages:
resolution: {integrity: sha512-Z5kx79swU5P27WEayXM1tBi5Ze/lbIyiNgU3qyXUOf9b2rgXYyF9Dy9Cx+IQv/Lc8WCG6L82zwUPpSS9hGehIg==}
engines: {node: '>= 0.4'}
+ function.prototype.name@1.1.8:
+ resolution: {integrity: sha512-e5iwyodOHhbMr/yNrc7fDYG4qlbIvI5gajyzPnb5TCwyhjApznQh1BMFou9b30SevY43gCJKXycoCBjMbsuW0Q==}
+ engines: {node: '>= 0.4'}
+
functions-have-names@1.2.3:
resolution: {integrity: sha512-xckBUXyTIqT97tq2x2AMb+g163b5JFysYk0x4qxNFwbfQkmNZoiRHb6sPzI9/QV33WeuvVYBUIiD4NzNIyqaRQ==}
@@ -11322,6 +11672,10 @@ packages:
resolution: {integrity: sha512-5uYhsJH8VJBTv7oslg4BznJYhDoRI6waYCxMmCdnTrcCrHA/fCFKoTFz2JKKE0HdDFUF7/oQuhzumXJK7paBRQ==}
engines: {node: '>= 0.4'}
+ get-intrinsic@1.3.0:
+ resolution: {integrity: sha512-9fSjSaos/fRIVIp+xSJlE6lfwhES7LNtKaCBIamHsjr2na1BiABJPo0mOjjz8GJDURarmCPGqaiVg5mfjb98CQ==}
+ engines: {node: '>= 0.4'}
+
get-own-enumerable-property-symbols@3.0.2:
resolution: {integrity: sha512-I0UBV/XOz1XkIJHEUDMZAbzCThU/H8DxmSfmdGcKPnVhu2VfFqr34jr9777IyaTYvxjedWhqVIilEDsCdP5G6g==}
@@ -11344,6 +11698,10 @@ packages:
resolution: {integrity: sha512-g/Q1aTSDOxFpchXC4i8ZWvxA1lnPqx/JHqcpIw0/LX9T8x/GBbi6YnlN5nhaKIFkT8oFsscUKgDJYxfwfS6QsQ==}
engines: {node: '>=8'}
+ get-proto@1.0.1:
+ resolution: {integrity: sha512-sTSfBjoXBp89JvIKIefqw7U2CCebsc74kiY6awiGogKtoSGbgjYE/G/+l9sF3MWFPNc9IcoOC4ODfKHfxFmp0g==}
+ engines: {node: '>= 0.4'}
+
get-stream@3.0.0:
resolution: {integrity: sha512-GlhdIUuVakc8SJ6kK0zAFbiGzRFzNnY4jUuEbV9UROo4Y+0Ny4fjvcZFVTeDA4odpFyOQzaw6hXukJSq/f28sQ==}
engines: {node: '>=4'}
@@ -11368,6 +11726,10 @@ packages:
resolution: {integrity: sha512-g0QYk1dZBxGwk+Ngc+ltRH2IBp2f7zBkBMBJZCDerh6EhlhSR6+9irMCuT/09zD6qkarHUSn529sK/yL4S27mg==}
engines: {node: '>= 0.4'}
+ get-symbol-description@1.1.0:
+ resolution: {integrity: sha512-w9UMqWwJxHNOvoNzSJ2oPF5wvYcvP7jUvYzhp67yEhTi17ZDBBC1z9pTdGuzjD+EFIqLSYRweZjqfiPzQ06Ebg==}
+ engines: {node: '>= 0.4'}
+
get-tsconfig@4.6.2:
resolution: {integrity: sha512-E5XrT4CbbXcXWy+1jChlZmrmCwd5KGx502kDCXJJ7y898TtWW9FwoG5HfOLVRKmlmDGkWN2HM9Ho+/Y8F0sJDg==}
@@ -11409,24 +11771,24 @@ packages:
glob@5.0.15:
resolution: {integrity: sha512-c9IPMazfRITpmAAKi22dK1VKxGDX9ehhqfABDriL/lzO92xcUKEJPQHrVA/2YHSNFB4iFlykVmWvwo48nr3OxA==}
- deprecated: Old versions of glob are not supported, and contain widely publicized security vulnerabilities, which have been fixed in the current version. Please update. Support for old versions may be purchased (at exorbitant rates) by contacting i@izs.me
+ deprecated: Glob versions prior to v9 are no longer supported
glob@7.1.7:
resolution: {integrity: sha512-OvD9ENzPLbegENnYP5UUfJIirTg4+XwMWGaQfQTY0JenxNvvIKP3U3/tAQSPIu/lHxXYSZmpXlUHeqAIdKzBLQ==}
- deprecated: Old versions of glob are not supported, and contain widely publicized security vulnerabilities, which have been fixed in the current version. Please update. Support for old versions may be purchased (at exorbitant rates) by contacting i@izs.me
+ deprecated: Glob versions prior to v9 are no longer supported
glob@7.2.0:
resolution: {integrity: sha512-lmLf6gtyrPq8tTjSmrO94wBeQbFR3HbLHbuyD69wuyQkImp2hWqMGB47OX65FBkPffO641IP9jWa1z4ivqG26Q==}
- deprecated: Old versions of glob are not supported, and contain widely publicized security vulnerabilities, which have been fixed in the current version. Please update. Support for old versions may be purchased (at exorbitant rates) by contacting i@izs.me
+ deprecated: Glob versions prior to v9 are no longer supported
glob@7.2.3:
resolution: {integrity: sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==}
- deprecated: Old versions of glob are not supported, and contain widely publicized security vulnerabilities, which have been fixed in the current version. Please update. Support for old versions may be purchased (at exorbitant rates) by contacting i@izs.me
+ deprecated: Glob versions prior to v9 are no longer supported
glob@8.1.0:
resolution: {integrity: sha512-r8hpEjiQEYlF2QU0df3dS+nxxSIreXQS1qRhMJM0Q5NDdR386C7jb7Hwwod8Fgiuex+k0GFjgft18yvxm5XoCQ==}
engines: {node: '>=12'}
- deprecated: Old versions of glob are not supported, and contain widely publicized security vulnerabilities, which have been fixed in the current version. Please update. Support for old versions may be purchased (at exorbitant rates) by contacting i@izs.me
+ deprecated: Glob versions prior to v9 are no longer supported
global-const@0.1.2:
resolution: {integrity: sha512-yb8pTRSbWcdjmKhRfdB1+s7oU9UXTPPcRwd0oPal0WHta7B/3roXz7yGLMU+KhgByoeX/1QOFKY8aCTETexKAg==}
@@ -11474,6 +11836,10 @@ packages:
gopd@1.0.1:
resolution: {integrity: sha512-d65bNlIadxvpb/A2abVdlqKqV563juRnZ1Wtk6s1sIR8uNsXR70xqIzVqxVf1eTqDunwT2MkczEeaezCKTZhwA==}
+ gopd@1.2.0:
+ resolution: {integrity: sha512-ZUKRh6/kUFoAiTAtTYPZJ3hw9wNxx+BIBOijnlG9PnrJsCcSjs1wyyD6vJpaYtgnzDrKYRSqf3OO6Rfa93xsRg==}
+ engines: {node: '>= 0.4'}
+
got@11.8.6:
resolution: {integrity: sha512-6tfZ91bOr7bOXnK7PRDCGBLa1H4U080YHNaAQ2KsMGlLEzRbk44nsZF2E1IeRc3vtJHPVbKCYgdFbaGO2ljd8g==}
engines: {node: '>=10.19.0'}
@@ -11553,10 +11919,18 @@ packages:
resolution: {integrity: sha512-SJ1amZAJUiZS+PhsVLf5tGydlaVB8EdFpaSO4gmiUKUOxk8qzn5AIy4ZeJUmh22znIdk/uMAUT2pl3FxzVUH+Q==}
engines: {node: '>= 0.4'}
+ has-proto@1.2.0:
+ resolution: {integrity: sha512-KIL7eQPfHQRC8+XluaIw7BHUwwqL19bQn4hzNgdr+1wXoU0KKj6rufu47lhY7KbJR2C6T6+PfyN0Ea7wkSS+qQ==}
+ engines: {node: '>= 0.4'}
+
has-symbols@1.0.3:
resolution: {integrity: sha512-l3LCuF6MgDNwTDKkdYGEihYjt5pRPbEg46rtlmnSPlUbgmB8LOIrKJbYYFBSbnPaJexMKtiPO8hmeRjRz2Td+A==}
engines: {node: '>= 0.4'}
+ has-symbols@1.1.0:
+ resolution: {integrity: sha512-1cDNdwJ2Jaohmb3sg4OmKaMBwuC48sYni5HUw2DvsC8LjGTLK9h+eb1X6RyuOHe4hT0ULCW68iomhjUoKUqlPQ==}
+ engines: {node: '>= 0.4'}
+
has-tostringtag@1.0.2:
resolution: {integrity: sha512-NqADB8VjPFLM2V0VvHUewwwsw0ZWBaIdgo+ieHtK3hasLz4qeCRjYcqfB6AQrBggRKppKF8L52/VqdVsO47Dlw==}
engines: {node: '>= 0.4'}
@@ -11865,6 +12239,10 @@ packages:
resolution: {integrity: sha512-NGnrKwXzSms2qUUih/ILZ5JBqNTSa1+ZmP6flaIp6KmSElgE9qdndzS3cqjrDovwFdmwsGsLdeFgB6suw+1e9g==}
engines: {node: '>= 0.4'}
+ internal-slot@1.1.0:
+ resolution: {integrity: sha512-4gd7VpWNQNB4UKKCFFVcp1AVv+FMOgs9NKzjHKusc8jTMhd5eL1NqQqOpE0KzMds804/yHlglp3uxgluOqAPLw==}
+ engines: {node: '>= 0.4'}
+
interpret@1.4.0:
resolution: {integrity: sha512-agE4QfB2Lkp9uICn7BAqoscw4SZP9kTE2hxiFI3jBPmXJfdqiahTbUuKGsMoN2GtqL9AxhYioAcVvgsb1HvRbA==}
engines: {node: '>= 0.10'}
@@ -11905,9 +12283,16 @@ packages:
resolution: {integrity: sha512-wcjaerHw0ydZwfhiKbXJWLDY8A7yV7KhjQOpb83hGgGfId/aQa4TOvwyzn2PuswW2gPCYEL/nEAiSVpdOj1lXw==}
engines: {node: '>= 0.4'}
+ is-array-buffer@3.0.5:
+ resolution: {integrity: sha512-DDfANUiiG2wC1qawP66qlTugJeL5HyzMpfr8lLK+jMQirGzNod0B12cFB/9q838Ru27sBwfw78/rdoU7RERz6A==}
+ engines: {node: '>= 0.4'}
+
is-arrayish@0.2.1:
resolution: {integrity: sha512-zz06S8t0ozoDXMG+ube26zeCTNXcKIPJZJi8hBrF4idCLms4CG9QtK7qBl1boi5ODzFpjswb5JPmHCbMpjaYzg==}
+ is-arrayish@0.3.4:
+ resolution: {integrity: sha512-m6UrgzFVUYawGBh1dUsWR5M2Clqic9RVXC/9f8ceNlv2IcO9j9J/z8UoCLPqtsPBFNzEpfR3xftohbfqDx8EQA==}
+
is-async-function@2.0.0:
resolution: {integrity: sha512-Y1JXKrfykRJGdlDwdKlLpLyMIiWqWvuSd17TvZk68PLAOGOoF4Xyav1z0Xhoi+gCYjZVeC5SI+hYFOfvXmGRCA==}
engines: {node: '>= 0.4'}
@@ -11915,6 +12300,10 @@ packages:
is-bigint@1.0.4:
resolution: {integrity: sha512-zB9CruMamjym81i2JZ3UMn54PKGsQzsJeo6xvN3HJJ4CAsQNB6iRutp2To77OfCNuoxspsIhzaPoO1zyCEhFOg==}
+ is-bigint@1.1.0:
+ resolution: {integrity: sha512-n4ZT37wG78iz03xPRKJrHTdZbe3IicyucEtdRsV5yglwc3GyUfbAfpSeD0FJ41NbUNSt5wbhqfp1fS+BgnvDFQ==}
+ engines: {node: '>= 0.4'}
+
is-binary-path@2.1.0:
resolution: {integrity: sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw==}
engines: {node: '>=8'}
@@ -11923,6 +12312,10 @@ packages:
resolution: {integrity: sha512-gDYaKHJmnj4aWxyj6YHyXVpdQawtVLHU5cb+eztPGczf6cjuTdwve5ZIEfgXqH4e57An1D1AKf8CZ3kYrQRqYA==}
engines: {node: '>= 0.4'}
+ is-boolean-object@1.2.2:
+ resolution: {integrity: sha512-wa56o2/ElJMYqjCjGkXri7it5FbebW5usLw/nPmCMs5DeZ7eziSYZhSmPRn0txqeW4LnAmQQU7FgqLpsEFKM4A==}
+ engines: {node: '>= 0.4'}
+
is-buffer@1.1.6:
resolution: {integrity: sha512-NcdALwpXkTm5Zvvbk7owOUSvVvBKDgKP5/ewfXEznmQFfs4ZRmanOeKBTjRVjka3QFoN6XJ+9F3USqfHqTaU5w==}
@@ -11938,6 +12331,10 @@ packages:
resolution: {integrity: sha512-Dd+Lb2/zvk9SKy1TGCt1wFJFo/MWBPMX5x7KcvLajWTGuomczdQX61PvY5yK6SVACwpoexWo81IfFyoKY2QnTA==}
engines: {node: '>= 0.4'}
+ is-core-module@2.16.1:
+ resolution: {integrity: sha512-UfoeMA6fIJ8wTYFEUjelnaGI67v6+N7qXJEvQuIGa99l4xsCruSYOVSQ0uPANn4dAzm8lkYPaKLrrijLq7x23w==}
+ engines: {node: '>= 0.4'}
+
is-data-descriptor@1.0.1:
resolution: {integrity: sha512-bc4NlCDiCr28U4aEsQ3Qs2491gVq4V8G7MQyws968ImqjKuYtTJXrl7Vq7jsN7Ly/C3xj5KWFrY7sHNeDkAzXw==}
engines: {node: '>= 0.4'}
@@ -11946,10 +12343,18 @@ packages:
resolution: {integrity: sha512-AHkaJrsUVW6wq6JS8y3JnM/GJF/9cf+k20+iDzlSaJrinEo5+7vRiteOSwBhHRiAyQATN1AmY4hwzxJKPmYf+w==}
engines: {node: '>= 0.4'}
+ is-data-view@1.0.2:
+ resolution: {integrity: sha512-RKtWF8pGmS87i2D6gqQu/l7EYRlVdfzemCJN/P3UOs//x1QE7mfhvzHIApBTRf7axvT6DMGwSwBXYCT0nfB9xw==}
+ engines: {node: '>= 0.4'}
+
is-date-object@1.0.5:
resolution: {integrity: sha512-9YQaSxsAiSwcvS33MBk3wTCVnWK+HhF8VZR2jRxehM16QcVOdHqPn4VPHmRK4lSr38n9JriurInLcP90xsYNfQ==}
engines: {node: '>= 0.4'}
+ is-date-object@1.1.0:
+ resolution: {integrity: sha512-PwwhEakHVKTdRNVOw+/Gyh0+MzlCl4R6qKvkhuvLtPMggI1WAHt9sOwZxQLSGpUaDnrdyDsomoRgNnCfKNSXXg==}
+ engines: {node: '>= 0.4'}
+
is-descriptor@0.1.7:
resolution: {integrity: sha512-C3grZTvObeN1xud4cRWl366OMXZTj0+HGyk4hvfpx4ZHt1Pb60ANSXqCK7pdOTeUQpRzECBSTphqvD7U+l22Eg==}
engines: {node: '>= 0.4'}
@@ -11987,6 +12392,10 @@ packages:
is-finalizationregistry@1.0.2:
resolution: {integrity: sha512-0by5vtUJs8iFQb5TYUHHPudOR+qXYIMKtiUzvLIZITZUjknFmziyBJuLhVRc+Ds0dREFlskDNJKYIdIzu/9pfw==}
+ is-finalizationregistry@1.1.1:
+ resolution: {integrity: sha512-1pC6N8qWJbWoPtEjgcL2xyhQOP491EQjeUo3qTKcmV8YSDDJrOepfG8pcC7h/QgnQHYSv0mJ3Z/ZWxmatVrysg==}
+ engines: {node: '>= 0.4'}
+
is-fullwidth-code-point@2.0.0:
resolution: {integrity: sha512-VHskAKYM8RfSFXwee5t5cbN5PZeq1Wrh6qd5bkyiXIf6UQcN6w/A0eXM9r6t8d+GYOh+o6ZhiEnb88LN/Y8m2w==}
engines: {node: '>=4'}
@@ -12034,6 +12443,10 @@ packages:
is-map@2.0.2:
resolution: {integrity: sha512-cOZFQQozTha1f4MxLFzlgKYPTyj26picdZTx82hbc/Xf4K/tZOOXSCkMvU4pKioRXGDLJRn0GM7Upe7kR721yg==}
+ is-map@2.0.3:
+ resolution: {integrity: sha512-1Qed0/Hr2m+YqxnM09CjA2d/i6YZNfF6R2oRAOj36eUdS6qIV/huPJNSEpKbupewFs+ZsJlxsjjPbc0/afW6Lw==}
+ engines: {node: '>= 0.4'}
+
is-module@1.0.0:
resolution: {integrity: sha512-51ypPSPCoTEIN9dy5Oy+h4pShgJmPCygKfyRCISBI+JoWT/2oJvK8QPxmwv7b/p239jXrm9M1mlQbyKJ5A152g==}
@@ -12052,6 +12465,10 @@ packages:
resolution: {integrity: sha512-k1U0IRzLMo7ZlYIfzRu23Oh6MiIFasgpb9X76eqfFZAqwH44UI4KTBvBYIZ1dSL9ZzChTB9ShHfLkR4pdW5krQ==}
engines: {node: '>= 0.4'}
+ is-number-object@1.1.1:
+ resolution: {integrity: sha512-lZhclumE1G6VYD8VHe35wFaIif+CTy5SJIi5+3y4psDgWu4wPDoBhF8NxUOinEc7pHgiTsT6MaBb92rKhhD+Xw==}
+ engines: {node: '>= 0.4'}
+
is-number@3.0.0:
resolution: {integrity: sha512-4cboCqIpliH+mAvFNegjZQ4kgKc3ZUhQVr3HvWbSh5q3WH2v82ct+T2Y1hdU5Gdtorx/cLifQjqCbL7bpznLTg==}
engines: {node: '>=0.10.0'}
@@ -12094,6 +12511,10 @@ packages:
resolution: {integrity: sha512-kvRdxDsxZjhzUX07ZnLydzS1TU/TJlTUHHY4YLL87e37oUA49DfkLqgy+VjFocowy29cKvcSiu+kIv728jTTVg==}
engines: {node: '>= 0.4'}
+ is-regex@1.2.1:
+ resolution: {integrity: sha512-MjYsKHO5O7mCsmRGxWcLWheFqN9DJ/2TmngvjKXihe6efViPqc274+Fx/4fYj/r03+ESvBdTXK0V6tA3rgez1g==}
+ engines: {node: '>= 0.4'}
+
is-regexp@1.0.0:
resolution: {integrity: sha512-7zjFAPO4/gwyQAAgRRmqeEeyIICSdmCqa3tsVHMdBzaXXRiqopZL4Cyghg/XulGWrtABTpbnYYzzIRffLkP4oA==}
engines: {node: '>=0.10.0'}
@@ -12105,10 +12526,18 @@ packages:
is-set@2.0.2:
resolution: {integrity: sha512-+2cnTEZeY5z/iXGbLhPrOAaK/Mau5k5eXq9j14CpRTftq0pAJu2MwVRSZhyZWBzx3o6X795Lz6Bpb6R0GKf37g==}
+ is-set@2.0.3:
+ resolution: {integrity: sha512-iPAjerrse27/ygGLxw+EBR9agv9Y6uLeYVJMu+QNCoouJ1/1ri0mGrcWpfCqFZuzzx3WjtwxG098X+n4OuRkPg==}
+ engines: {node: '>= 0.4'}
+
is-shared-array-buffer@1.0.3:
resolution: {integrity: sha512-nA2hv5XIhLR3uVzDDfCIknerhx8XUKnstuOERPNNIinXG7v9u+ohXF67vxm4TPTEPU6lm61ZkwP3c9PCB97rhg==}
engines: {node: '>= 0.4'}
+ is-shared-array-buffer@1.0.4:
+ resolution: {integrity: sha512-ISWac8drv4ZGfwKl5slpHG9OwPNty4jOWPRIhBpxOoD+hqITiwuipOQ2bNthAzwA3B4fIjO4Nln74N0S9byq8A==}
+ engines: {node: '>= 0.4'}
+
is-stream@1.1.0:
resolution: {integrity: sha512-uQPm8kcs47jx38atAcWTVxyltQYoPT68y9aWYdV6yWXSyW8mzSat0TL6CiWdZeCdF3KrAvpVtnHbTv4RN+rqdQ==}
engines: {node: '>=0.10.0'}
@@ -12125,14 +12554,26 @@ packages:
resolution: {integrity: sha512-tE2UXzivje6ofPW7l23cjDOMa09gb7xlAqG6jG5ej6uPV32TlWP3NKPigtaGeHNu9fohccRYvIiZMfOOnOYUtg==}
engines: {node: '>= 0.4'}
+ is-string@1.1.1:
+ resolution: {integrity: sha512-BtEeSsoaQjlSPBemMQIrY1MY0uM6vnS1g5fmufYOtnxLGUZM2178PKbhsk7Ffv58IX+ZtcvoGwccYsh0PglkAA==}
+ engines: {node: '>= 0.4'}
+
is-symbol@1.0.4:
resolution: {integrity: sha512-C/CPBqKWnvdcxqIARxyOh4v1UUEOCHpgDa0WYgpKDFMszcrPcffg5uhwSgPCLD2WWxmq6isisz87tzT01tuGhg==}
engines: {node: '>= 0.4'}
+ is-symbol@1.1.1:
+ resolution: {integrity: sha512-9gGx6GTtCQM73BgmHQXfDmLtfjjTUDSyoxTCbp5WtoixAhfgsDirWIcVQ/IHpvI5Vgd5i/J5F7B9cN/WlVbC/w==}
+ engines: {node: '>= 0.4'}
+
is-typed-array@1.1.13:
resolution: {integrity: sha512-uZ25/bUAlUY5fR4OKT4rZQEBrzQWYV9ZJYGGsUmEJ6thodVJ1HX64ePQ6Z0qPWP+m+Uq6e9UugrE38jeYsDSMw==}
engines: {node: '>= 0.4'}
+ is-typed-array@1.1.15:
+ resolution: {integrity: sha512-p3EcsicXjit7SaskXHs1hA91QxgTw46Fv6EFKKGS5DRFLD8yKnohjF3hxoju94b/OcMZoQukzpPpBE9uLVKzgQ==}
+ engines: {node: '>= 0.4'}
+
is-typedarray@1.0.0:
resolution: {integrity: sha512-cyA56iCMHAh5CdzjJIa4aohJyeO1YbwLi3Jc35MmRU6poroFjIGZzUzupGiRPOjgHg9TLu43xbpwXk523fMxKA==}
@@ -12151,12 +12592,24 @@ packages:
is-weakmap@2.0.1:
resolution: {integrity: sha512-NSBR4kH5oVj1Uwvv970ruUkCV7O1mzgVFO4/rev2cLRda9Tm9HrL70ZPut4rOHgY0FNrUu9BCbXA2sdQ+x0chA==}
+ is-weakmap@2.0.2:
+ resolution: {integrity: sha512-K5pXYOm9wqY1RgjpL3YTkF39tni1XajUIkawTLUo9EZEVUFga5gSQJF8nNS7ZwJQ02y+1YCNYcMh+HIf1ZqE+w==}
+ engines: {node: '>= 0.4'}
+
is-weakref@1.0.2:
resolution: {integrity: sha512-qctsuLZmIQ0+vSSMfoVvyFe2+GSEvnmZ2ezTup1SBse9+twCCeial6EEi3Nc2KFcf6+qz2FBPnjXsk8xhKSaPQ==}
+ is-weakref@1.1.1:
+ resolution: {integrity: sha512-6i9mGWSlqzNMEqpCp93KwRS1uUOodk2OJ6b+sq7ZPDSy2WuI5NFIxp/254TytR8ftefexkWn5xNiHUNpPOfSew==}
+ engines: {node: '>= 0.4'}
+
is-weakset@2.0.2:
resolution: {integrity: sha512-t2yVvttHkQktwnNNmBQ98AhENLdPUTDTE21uPqAQ0ARwQfGeQKRVS0NNurH7bTf7RrvcVn1OOge45CnBeHCSmg==}
+ is-weakset@2.0.4:
+ resolution: {integrity: sha512-mfcwb6IzQyOKTs84CQMrOwW4gQcaTOAWJ0zzJCl2WSPDrWk/OzDaImWFH3djXhb24g4eudZfLRozAvPGw4d9hQ==}
+ engines: {node: '>= 0.4'}
+
is-windows@1.0.2:
resolution: {integrity: sha512-eXK1UInq2bPmjyX6e3VHIzMLobc4J94i4AWn+Hpq3OU5KkrRC96OAcR3PRJ/pGu6m8TRnBHP9dkXQVsT/COVIA==}
engines: {node: '>=0.10.0'}
@@ -12255,6 +12708,10 @@ packages:
iterator.prototype@1.1.2:
resolution: {integrity: sha512-DR33HMMr8EzwuRL8Y9D3u2BMj8+RqSE850jfGu59kS7tbmPLzGkZmVSfyCFSDxuZiEY6Rzt3T2NA/qU+NwVj1w==}
+ iterator.prototype@1.1.5:
+ resolution: {integrity: sha512-H0dkQoCa3b2VEeKQBOxFph+JAbcrQdE7KC0UkqwpLmv2EC4P41QXP+rqo9wYodACiG5/WM5s9oDApTU8utwj9g==}
+ engines: {node: '>= 0.4'}
+
jackspeak@2.3.6:
resolution: {integrity: sha512-N3yCS/NegsOBokc8GAdM8UcmfsKiSS8cipheD/nivzr700H+nsMOxJjQnvwOcRYVuFkdH0wGUvW2WbXGmrZGbQ==}
engines: {node: '>=14'}
@@ -13232,6 +13689,10 @@ packages:
marky@1.2.5:
resolution: {integrity: sha512-q9JtQJKjpsVxCRVgQ+WapguSbKC3SQ5HEzFGPAJMStgh3QjCawp00UKv3MTTAArTmGmmPUvllHZoNbZ3gs0I+Q==}
+ math-intrinsics@1.1.0:
+ resolution: {integrity: sha512-/IXtbwEk5HTPyEwyKX6hGkYXxM9nbj64B+ilVJnC/R6B0pH5G4V3b0pVbL7DBj4tkhBAppbQUlf6F6Xl9LHu1g==}
+ engines: {node: '>= 0.4'}
+
md5.js@1.3.5:
resolution: {integrity: sha512-xitP+WxNPcTTOgnTJcrhM0xvdPepipPSf3I8EIpGKeFLjt3PlJLIDG3u8EX53ZIubkb+5U2+3rELYpEhHhzdkg==}
@@ -13352,6 +13813,10 @@ packages:
resolution: {integrity: sha512-DMy+ERcEW2q8Z2Po+WNXuw3c5YaUSFjAO5GsJqfEl7UjvtIuFKO6ZrKvcItdy98dwFI2N1tg3zNIdKaQT+aNdA==}
engines: {node: '>=8.6'}
+ micromatch@4.0.8:
+ resolution: {integrity: sha512-PXwfBhYu0hBCPw8Dn0E+WDYb7af3dSLVWKi3HGv84IdF4TyFoC0ysxFd0Goxw7nSv4T/PzEJQxsYsEiFCKo2BA==}
+ engines: {node: '>=8.6'}
+
miller-rabin@4.0.1:
resolution: {integrity: sha512-115fLhvZVqWwHPbClyntxEVfVDfl9DLLTuJvq3g2O/Oxi8AiNouAHvDSzHS0viUJc+V5vm3eq91Xwqn9dp4jRA==}
hasBin: true
@@ -13633,6 +14098,28 @@ packages:
sass:
optional: true
+ next@15.2.6:
+ resolution: {integrity: sha512-DIKFctUpZoCq5ok2ztVU+PqhWsbiqM9xNP7rHL2cAp29NQcmDp7Y6JnBBhHRbFt4bCsCZigj6uh+/Gwh2158Wg==}
+ engines: {node: ^18.18.0 || ^19.8.0 || >= 20.0.0}
+ deprecated: This version has a security vulnerability. Please upgrade to a patched version. See https://nextjs.org/blog/security-update-2025-12-11 for more details.
+ hasBin: true
+ peerDependencies:
+ '@opentelemetry/api': ^1.1.0
+ '@playwright/test': ^1.41.2
+ 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
+ peerDependenciesMeta:
+ '@opentelemetry/api':
+ optional: true
+ '@playwright/test':
+ optional: true
+ babel-plugin-react-compiler:
+ optional: true
+ sass:
+ optional: true
+
next@15.5.10:
resolution: {integrity: sha512-r0X65PNwyDDyOrWNKpQoZvOatw7BcsTPRKdwEqtc9cj3wv7mbBIk9tKed4klRaFXJdX0rugpuMTHslDrAU1bBg==}
engines: {node: ^18.18.0 || ^19.8.0 || >= 20.0.0}
@@ -13862,6 +14349,10 @@ packages:
object-inspect@1.13.1:
resolution: {integrity: sha512-5qoj1RUiKOMsCCNLV1CBiPYE10sziTsnmNxkAI/rZhiD63CF7IqdFGC/XzjWjpSgLf0LxXX3bDFIh0E18f6UhQ==}
+ object-inspect@1.13.4:
+ resolution: {integrity: sha512-W67iLl4J2EXEGTbfeHCffrjDfitvLANg0UlX3wFUUSTx92KXRFegMHUVgSqE+wvhAbi4WqjGg9czysTV2Epbew==}
+ engines: {node: '>= 0.4'}
+
object-is@1.1.5:
resolution: {integrity: sha512-3cyDsyHgtmi7I7DfSSI2LDp6SK2lwvtbg0p0R1e0RvTqF5ceGx+K2dfSjm1bKDMVCFEDAQvy+o8c6a7VujOddw==}
engines: {node: '>= 0.4'}
@@ -13878,10 +14369,18 @@ packages:
resolution: {integrity: sha512-byy+U7gp+FVwmyzKPYhW2h5l3crpmGsxl7X2s8y43IgxvG4g3QZ6CffDtsNQy1WsmZpQbO+ybo0AlW7TY6DcBQ==}
engines: {node: '>= 0.4'}
+ object.assign@4.1.7:
+ resolution: {integrity: sha512-nK28WOo+QIjBkDduTINE4JkF/UJJKyf2EJxvJKfblDpyg0Q+pkOHNTL0Qwy6NP6FhE/EnzV73BxxqcJaXY9anw==}
+ engines: {node: '>= 0.4'}
+
object.entries@1.1.8:
resolution: {integrity: sha512-cmopxi8VwRIAw/fkijJohSfpef5PdN0pMQJN6VC/ZKvn0LIknWD8KtgY6KlQdEc4tIjcQ3HxSMmnvtzIscdaYQ==}
engines: {node: '>= 0.4'}
+ object.entries@1.1.9:
+ resolution: {integrity: sha512-8u/hfXFRBD1O0hPUjioLhoWFHRmt6tKA4/vZPyckBr18l1KE9uHrFaFaUi8MDRTpi4uak2goyPTSNJLXX2k2Hw==}
+ engines: {node: '>= 0.4'}
+
object.fromentries@2.0.8:
resolution: {integrity: sha512-k6E21FzySsSK5a21KRADBd/NGneRegFO5pLHfdQLpRDETUNJueLXs3WCzyQ3tFRDYgbq3KHGXfTbi2bs8WQ6rQ==}
engines: {node: '>= 0.4'}
@@ -13902,6 +14401,10 @@ packages:
resolution: {integrity: sha512-yBYjY9QX2hnRmZHAjG/f13MzmBzxzYgQhFrke06TTyKY5zSTEqkOeukBzIdVA3j3ulu8Qa3MbVFShV7T2RmGtQ==}
engines: {node: '>= 0.4'}
+ object.values@1.2.1:
+ resolution: {integrity: sha512-gXah6aZrcUxjWg2zR2MwouP2eHlCBzdV4pygudehaKXSGW4v2AsRQUK+lwwXhii6KFZcunEnmSUoYp5CXibxtA==}
+ engines: {node: '>= 0.4'}
+
obliterator@2.0.4:
resolution: {integrity: sha512-lgHwxlxV1qIg1Eap7LgIeoBWIMFibOjbrYPIPJZcI1mmGAI2m3lNYpK12Y+GBdPQ0U1hRwSord7GIaawz962qQ==}
@@ -14008,6 +14511,10 @@ packages:
outvariant@1.4.0:
resolution: {integrity: sha512-AlWY719RF02ujitly7Kk/0QlV+pXGFDHrHf9O2OKqyqgBieaPOIeuSkL8sRK6j2WK+/ZAURq2kZsY0d8JapUiw==}
+ own-keys@1.0.1:
+ resolution: {integrity: sha512-qFOyK5PjiWZd+QQIh+1jhdb9LpxTF0qs7Pm8o5QHYZ0M3vKqSqzsZaEB6oWlxZ+q2sJBMI/Ktgd2N5ZwQoRHfg==}
+ engines: {node: '>= 0.4'}
+
ox@0.9.6:
resolution: {integrity: sha512-8SuCbHPvv2eZLYXrNmC0EC12rdzXQLdhnOMlHDW2wiCPLxBrOOJwX5L5E61by+UjTPOryqQiRSnjIKCI+GykKg==}
peerDependencies:
@@ -15294,6 +15801,10 @@ packages:
reflect-metadata@0.1.13:
resolution: {integrity: sha512-Ts1Y/anZELhSsjMcU605fU9RE4Oi3p5ORujwbIKXfWa+0Zxs510Qrmrce5/Jowq3cHSZSJqBjypxmHarc+vEWg==}
+ reflect.getprototypeof@1.0.10:
+ resolution: {integrity: sha512-00o4I+DVrefhv+nX0ulyi3biSHCPDe+yLv5o/p6d/UVlirijB8E16FtfwSAi4g3tcqrQ4lRAqQSoFEZJehYEcw==}
+ engines: {node: '>= 0.4'}
+
reflect.getprototypeof@1.0.6:
resolution: {integrity: sha512-fmfw4XgoDke3kdI6h4xcUz1dG8uaiv5q9gcEwLS4Pnth2kxT+GZ7YehS1JTMGBQmtV7Y4GFGbs2re2NqhdozUg==}
engines: {node: '>= 0.4'}
@@ -15325,6 +15836,10 @@ packages:
resolution: {integrity: sha512-NcDiDkTLuPR+++OCKB0nWafEmhg/Da8aUPLPMQbK+bxKKCm1/S5he+AqYa4PlMCVBalb4/yxIRub6qkEx5yJbw==}
engines: {node: '>= 0.4'}
+ regexp.prototype.flags@1.5.4:
+ resolution: {integrity: sha512-dYqgNSZbDwkaJ2ceRd9ojCGjBq+mOm9LmtXnAnEGyHhN/5R7iDW2TRw3h+o/jCFxus3P2LfWIIiwowAjANm7IA==}
+ engines: {node: '>= 0.4'}
+
regexpu-core@6.2.0:
resolution: {integrity: sha512-H66BPQMrv+V16t8xtmq+UC0CBpiTBA60V8ibS1QVReIp8T1z8hwFxqcGzm9K6lgsN7sB5edVH8a+ze6Fqm4weA==}
engines: {node: '>=4'}
@@ -15549,16 +16064,28 @@ packages:
resolution: {integrity: sha512-vj6RsCsWBCf19jIeHEfkRMw8DPiBb+DMXklQ/1SGDHOMlHdPUkZXFQ2YdplS23zESTijAcurb1aSgJA3AgMu1Q==}
engines: {node: '>=0.4'}
+ safe-array-concat@1.1.3:
+ resolution: {integrity: sha512-AURm5f0jYEOydBj7VQlVvDrjeFgthDdEF5H1dP+6mNpoXOMo1quQqJ4wvJDyRZ9+pO3kGWoOdmV08cSv2aJV6Q==}
+ engines: {node: '>=0.4'}
+
safe-buffer@5.1.2:
resolution: {integrity: sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==}
safe-buffer@5.2.1:
resolution: {integrity: sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==}
+ safe-push-apply@1.0.0:
+ resolution: {integrity: sha512-iKE9w/Z7xCzUMIZqdBsp6pEQvwuEebH4vdpjcDWnyzaI6yl6O9FHvVpmGelvEHNsoY6wGblkxR6Zty/h00WiSA==}
+ engines: {node: '>= 0.4'}
+
safe-regex-test@1.0.3:
resolution: {integrity: sha512-CdASjNJPvRa7roO6Ra/gLYBTzYzzPyyBXxIMdGW3USQLyjWEls2RgW5UBTXaQVp+OrpeCK3bLem8smtmheoRuw==}
engines: {node: '>= 0.4'}
+ safe-regex-test@1.1.0:
+ resolution: {integrity: sha512-x/+Cz4YrimQxQccJf5mKEbIa1NzeCRNI5Ecl/ekmlYaampdNLPalVyIcCZNNH3MvmqBugV5TMYZXv0ljslUlaw==}
+ engines: {node: '>= 0.4'}
+
safe-regex2@3.1.0:
resolution: {integrity: sha512-RAAZAGbap2kBfbVhvmnTFv73NWLMvDGOITFYTZBAaY8eR+Ir4ef7Up/e7amo+y1+AH+3PtLkrt9mvcTsG9LXug==}
@@ -15761,6 +16288,10 @@ packages:
resolution: {integrity: sha512-7PGFlmtwsEADb0WYyvCMa1t+yke6daIG4Wirafur5kcf+MhUnPms1UeR0CKQdTZD81yESwMHbtn+TR+dMviakQ==}
engines: {node: '>= 0.4'}
+ set-proto@1.0.0:
+ resolution: {integrity: sha512-RJRdvCo6IAnPdsvP/7m6bsQqNnn1FCBX5ZNtFL98MmFF/4xAIJTIg1YbHW5DC2W5SKZanrC6i4HsJqlajw/dZw==}
+ engines: {node: '>= 0.4'}
+
set-value@2.0.1:
resolution: {integrity: sha512-JxHc1weCN68wRY0fhCoXpyK55m/XPHafOmK4UWD7m2CI14GMcFypt4w/0+NV5f/ZMby2F6S2wwA7fgynh9gWSw==}
engines: {node: '>=0.10.0'}
@@ -15785,6 +16316,10 @@ packages:
resolution: {integrity: sha512-/6KqX+GVUdqPuPPd2LxDDxzX6CAbjJehAAOKlNpqqUpAqPM6HeL8f+o3a+JsyGjn2lv0WY8UsTgUJjU9Ok55NA==}
engines: {node: '>=8'}
+ sharp@0.33.5:
+ resolution: {integrity: sha512-haPVm1EkS9pgvHrQ/F3Xy+hgcuMV0Wm9vfIBSiwZ05k+xgb0PkBQpGsAA/oWdDobNaZTH5ppvHtzCFbnSEwHVw==}
+ engines: {node: ^18.17.0 || ^20.3.0 || >=21.0.0}
+
sharp@0.34.5:
resolution: {integrity: sha512-Ou9I5Ft9WNcCbXrU9cMgPBcCK8LiwLqcbywW3t4oDV37n1pzpuNLsYiAV8eODnjbtQlSDwZ2cUEeQz4E54Hltg==}
engines: {node: ^18.17.0 || ^20.3.0 || >=21.0.0}
@@ -15819,10 +16354,26 @@ packages:
shiki@1.12.1:
resolution: {integrity: sha512-nwmjbHKnOYYAe1aaQyEBHvQymJgfm86ZSS7fT8OaPRr4sbAcBNz7PbfAikMEFSDQ6se2j2zobkXvVKcBOm0ysg==}
+ side-channel-list@1.0.0:
+ resolution: {integrity: sha512-FCLHtRD/gnpCiCHEiJLOwdmFP+wzCmDEkc9y7NsYxeF4u7Btsn1ZuwgwJGxImImHicJArLP4R0yX4c2KCrMrTA==}
+ engines: {node: '>= 0.4'}
+
+ side-channel-map@1.0.1:
+ resolution: {integrity: sha512-VCjCNfgMsby3tTdo02nbjtM/ewra6jPHmpThenkTYh8pG9ucZ/1P8So4u4FGBek/BjpOVsDCMoLA/iuBKIFXRA==}
+ engines: {node: '>= 0.4'}
+
+ side-channel-weakmap@1.0.2:
+ resolution: {integrity: sha512-WPS/HvHQTYnHisLo9McqBHOJk2FkHO/tlpvldyrnem4aeQp4hai3gythswg6p01oSoTl58rcpiFAjF2br2Ak2A==}
+ engines: {node: '>= 0.4'}
+
side-channel@1.0.6:
resolution: {integrity: sha512-fDW/EZ6Q9RiO8eFG8Hj+7u/oW+XrPTIChwCOM2+th2A6OblDtYYIpve9m+KvI9Z4C9qSEXlaGR6bTEYHReuglA==}
engines: {node: '>= 0.4'}
+ side-channel@1.1.0:
+ resolution: {integrity: sha512-ZX99e6tRweoUXqR+VBrslhda51Nh5MTQwou5tnUDgbtyM0dBgmhEDtWGP/xbKn6hqfPRHujUNwz5fy/wbbhnpw==}
+ engines: {node: '>= 0.4'}
+
signal-exit@3.0.7:
resolution: {integrity: sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==}
@@ -15830,6 +16381,9 @@ packages:
resolution: {integrity: sha512-bzyZ1e88w9O1iNJbKnOlvYTrWPDl46O1bG0D3XInv+9tkPrxrN8jUUTiFlDkkmKWgn1M6CfIA13SuGqOa9Korw==}
engines: {node: '>=14'}
+ simple-swizzle@0.2.4:
+ resolution: {integrity: sha512-nAu1WFPQSMNr2Zn9PGSZK9AGn4t/y97lEm+MXTtUDwfP0ksAIX4nO+6ruD9Jwut4C49SB1Ws+fbXsm/yScWOHw==}
+
sisteransi@1.0.5:
resolution: {integrity: sha512-bLGGlR1QxBcynn2d5YmDX4MGjlZvy2MRBDRNHLJ8VI6l6+9FUiyTFNJ0IveOSP0bcXgVDPRcfGqA0pjaqUpfVg==}
@@ -16103,6 +16657,10 @@ packages:
resolution: {integrity: sha512-iCGQj+0l0HOdZ2AEeBADlsRC+vsnDsZsbdSiH1yNSjcfKM7fdpCMfqAL/dwF5BLiw/XhRft/Wax6zQbhq2BcjQ==}
engines: {node: '>= 0.4'}
+ stop-iteration-iterator@1.1.0:
+ resolution: {integrity: sha512-eLoXW/DHyl62zxY4SCaIgnRhuMr6ri4juEYARS8E6sCEqzKpOiE521Ucofdx+KnDZl5xmvGYaaKCk5FEOxJCoQ==}
+ engines: {node: '>= 0.4'}
+
stream-browserify@3.0.0:
resolution: {integrity: sha512-H73RAHsVBapbim0tU2JwwOiXUj+fikfiaoYAKHF3VJfA0pe2BCzkhAHBlLG6REzE+2WNZcxOXjK7lkso+9euLA==}
@@ -16173,13 +16731,25 @@ packages:
string.prototype.includes@2.0.0:
resolution: {integrity: sha512-E34CkBgyeqNDcrbU76cDjL5JLcVrtSdYq0MEh/B10r17pRP4ciHLwTgnuLV8Ay6cgEMLkcBkFCKyFZ43YldYzg==}
+ string.prototype.includes@2.0.1:
+ resolution: {integrity: sha512-o7+c9bW6zpAdJHTtujeePODAhkuicdAryFsfVKwA+wGw89wJ4GTY484WTucM9hLtDEOpOvI+aHnzqnC5lHp4Rg==}
+ engines: {node: '>= 0.4'}
+
string.prototype.matchall@4.0.11:
resolution: {integrity: sha512-NUdh0aDavY2og7IbBPenWqR9exH+E26Sv8e0/eTe1tltDGZL+GtBkDAnnyBtmekfK6/Dq3MkcGtzXFEd1LQrtg==}
engines: {node: '>= 0.4'}
+ string.prototype.matchall@4.0.12:
+ resolution: {integrity: sha512-6CC9uyBL+/48dYizRf7H7VAYCMCNTBeM78x/VTUe9bFEaxBepPJDa1Ow99LqI/1yF7kuy7Q3cQsYMrcjGUcskA==}
+ engines: {node: '>= 0.4'}
+
string.prototype.repeat@1.0.0:
resolution: {integrity: sha512-0u/TldDbKD8bFCQ/4f5+mNRrXwZ8hg2w7ZR8wa16e8z9XpePWl3eGEcUD0OXpEH/VJH/2G3gjUtR3ZOiBe2S/w==}
+ string.prototype.trim@1.2.10:
+ resolution: {integrity: sha512-Rs66F0P/1kedk5lyYyH9uBzuiI/kNRmwJAR9quK6VOtIpZ2G+hMZd+HQbbv25MgCA6gEffoMZYxlTod4WcdrKA==}
+ engines: {node: '>= 0.4'}
+
string.prototype.trim@1.2.9:
resolution: {integrity: sha512-klHuCNxiMZ8MlsOihJhJEBJAiMVqU3Z2nEXWfWnIqjN0gEFS9J9+IxKozWWtQGcgoa1WUZzLjKPTr4ZHNFTFxw==}
engines: {node: '>= 0.4'}
@@ -16187,6 +16757,10 @@ packages:
string.prototype.trimend@1.0.8:
resolution: {integrity: sha512-p73uL5VCHCO2BZZ6krwwQE3kCzM7NKmis8S//xEC6fQonchbum4eP6kR4DLEjQFO3Wnj3Fuo8NM0kOSjVdHjZQ==}
+ string.prototype.trimend@1.0.9:
+ resolution: {integrity: sha512-G7Ok5C6E/j4SGfyLCloXTrngQIQU3PWtXGst3yM7Bea9FRURf1S42ZHlZZtsNque2FN2PoUhfZXYLNWwEr4dLQ==}
+ engines: {node: '>= 0.4'}
+
string.prototype.trimstart@1.0.8:
resolution: {integrity: sha512-UXSH262CSZY1tfu3G3Secr6uGLCFVPMhIqHjlgCUtCCcgihYc/xKs9djMTMUOb2j1mVSeU8EU6NWc/iQKU6Gfg==}
engines: {node: '>= 0.4'}
@@ -16860,18 +17434,34 @@ packages:
resolution: {integrity: sha512-gEymJYKZtKXzzBzM4jqa9w6Q1Jjm7x2d+sh19AdsD4wqnMPDYyvwpsIc2Q/835kHuo3BEQ7CjelGhfTsoBb2MQ==}
engines: {node: '>= 0.4'}
+ typed-array-buffer@1.0.3:
+ resolution: {integrity: sha512-nAYYwfY3qnzX30IkA6AQZjVbtK6duGontcQm1WSG1MD94YLqK0515GNApXkoxKOWMusVssAHWLh9SeaoefYFGw==}
+ engines: {node: '>= 0.4'}
+
typed-array-byte-length@1.0.1:
resolution: {integrity: sha512-3iMJ9q0ao7WE9tWcaYKIptkNBuOIcZCCT0d4MRvuuH88fEoEH62IuQe0OtraD3ebQEoTRk8XCBoknUNc1Y67pw==}
engines: {node: '>= 0.4'}
+ typed-array-byte-length@1.0.3:
+ resolution: {integrity: sha512-BaXgOuIxz8n8pIq3e7Atg/7s+DpiYrxn4vdot3w9KbnBhcRQq6o3xemQdIfynqSeXeDrF32x+WvfzmOjPiY9lg==}
+ engines: {node: '>= 0.4'}
+
typed-array-byte-offset@1.0.2:
resolution: {integrity: sha512-Ous0vodHa56FviZucS2E63zkgtgrACj7omjwd/8lTEMEPFFyjfixMZ1ZXenpgCFBBt4EC1J2XsyVS2gkG0eTFA==}
engines: {node: '>= 0.4'}
+ typed-array-byte-offset@1.0.4:
+ resolution: {integrity: sha512-bTlAFB/FBYMcuX81gbL4OcpH5PmlFHqlCCpAl8AlEzMz5k53oNDvN8p1PNOWLEmI2x4orp3raOFB51tv9X+MFQ==}
+ engines: {node: '>= 0.4'}
+
typed-array-length@1.0.6:
resolution: {integrity: sha512-/OxDN6OtAk5KBpGb28T+HZc2M+ADtvRxXrKKbUwtsLgdoxgX13hyy7ek6bFRl5+aBs2yZzB0c4CnQfAtVypW/g==}
engines: {node: '>= 0.4'}
+ typed-array-length@1.0.7:
+ resolution: {integrity: sha512-3KS2b+kL7fsuk/eJZ7EQdnEmQoaho/r6KUef7hxvltNA5DR8NAUM+8wJMbJyZ4G9/7i3v5zPBIMN5aybAh2/Jg==}
+ engines: {node: '>= 0.4'}
+
typedarray-to-buffer@3.1.5:
resolution: {integrity: sha512-zdu8XMNEDepKKR+XYOXAVPtWui0ly0NtohUscw+UmaHiAWT8hrV1rr//H6V+0DvJ3OQ19S979M0laLfX8rm82Q==}
@@ -16933,6 +17523,10 @@ packages:
unbox-primitive@1.0.2:
resolution: {integrity: sha512-61pPlCD9h51VoreyJ0BReideM3MDKMKnh6+V9L08331ipq6Q8OFXZYiqP6n/tbHx4s5I9uRhcye6BrbkizkBDw==}
+ unbox-primitive@1.1.0:
+ resolution: {integrity: sha512-nWJ91DjeOkej/TA8pXQ3myruKpKEYgqvpw9lz4OPHj/NWFNluYrjbz9j01CJ8yKQd2g4jFoOkINCTW2I5LEEyw==}
+ engines: {node: '>= 0.4'}
+
uncontrollable@7.2.1:
resolution: {integrity: sha512-svtcfoTADIB0nT9nltgjujTi7BzVmwjZClOmskKu/E8FW9BXzg9os8OLr4f8Dlnk0rYWJIWr4wv9eKUXiQvQwQ==}
peerDependencies:
@@ -17440,13 +18034,25 @@ packages:
which-boxed-primitive@1.0.2:
resolution: {integrity: sha512-bwZdv0AKLpplFY2KZRX6TvyuN7ojjr7lwkg6ml0roIy9YeuSr7JS372qlNW18UQYzgYK9ziGcerWqZOmEn9VNg==}
+ which-boxed-primitive@1.1.1:
+ resolution: {integrity: sha512-TbX3mj8n0odCBFVlY8AxkqcHASw3L60jIuF8jFP78az3C2YhmGvqbHBpAjTRH2/xqYunrJ9g1jSyjCjpoWzIAA==}
+ engines: {node: '>= 0.4'}
+
which-builtin-type@1.1.3:
resolution: {integrity: sha512-YmjsSMDBYsM1CaFiayOVT06+KJeXf0o5M/CAd4o1lTadFAtacTUM49zoYxr/oroopFDfhvN6iEcBxUyc3gvKmw==}
engines: {node: '>= 0.4'}
+ which-builtin-type@1.2.1:
+ resolution: {integrity: sha512-6iBczoX+kDQ7a3+YJBnh3T+KZRxM/iYNPXicqk66/Qfm1b93iu+yOImkg0zHbj5LNOcNv1TEADiZ0xa34B4q6Q==}
+ engines: {node: '>= 0.4'}
+
which-collection@1.0.1:
resolution: {integrity: sha512-W8xeTUwaln8i3K/cY1nGXzdnVZlidBcagyNFtBdD5kxnb4TvGKR7FfSIS3mYpwWS1QUCutfKz8IY8RjftB0+1A==}
+ which-collection@1.0.2:
+ resolution: {integrity: sha512-K4jVyjnBdgvc86Y6BkaLZEN933SwYOuBFkdmBu9ZfkcAbdVbpITnDmjvZ/aQjRXQrv5EPkTnD1s39GiiqbngCw==}
+ engines: {node: '>= 0.4'}
+
which-module@2.0.1:
resolution: {integrity: sha512-iBdZ57RDvnOR9AGBhML2vFZf7h8vmBjhoaZqODJBFWHVtKkDmKuHai3cx5PgVMrX5YDNp27AofYbAwctSS+vhQ==}
@@ -17454,6 +18060,10 @@ packages:
resolution: {integrity: sha512-oV0jmFtUky6CXfkqehVvBP/LSWJ2sy4vWMioiENyJLePrBO/yKyV9OyJySfAKosh+RYkIl5zJCNZ8/4JncrpdA==}
engines: {node: '>= 0.4'}
+ which-typed-array@1.1.20:
+ resolution: {integrity: sha512-LYfpUkmqwl0h9A2HL09Mms427Q1RZWuOHsukfVcKRq9q95iQxdw0ix1JQrqbcDR9PH1QDwf5Qo8OZb5lksZ8Xg==}
+ engines: {node: '>= 0.4'}
+
which@1.3.1:
resolution: {integrity: sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ==}
hasBin: true
@@ -17870,6 +18480,12 @@ snapshots:
js-tokens: 4.0.0
picocolors: 1.1.1
+ '@babel/code-frame@7.29.0':
+ dependencies:
+ '@babel/helper-validator-identifier': 7.28.5
+ js-tokens: 4.0.0
+ picocolors: 1.1.1
+
'@babel/compat-data@7.26.8': {}
'@babel/core@7.26.10':
@@ -18123,6 +18739,8 @@ snapshots:
'@babel/helper-validator-identifier@7.25.9': {}
+ '@babel/helper-validator-identifier@7.28.5': {}
+
'@babel/helper-validator-option@7.25.9': {}
'@babel/helper-wrap-function@7.25.9':
@@ -19977,7 +20595,7 @@ snapshots:
'@emnapi/runtime@1.8.1':
dependencies:
- tslib: 2.7.0
+ tslib: 2.8.1
optional: true
'@emnapi/wasi-threads@1.0.1':
@@ -20622,25 +21240,47 @@ snapshots:
'@img/colour@1.0.0':
optional: true
+ '@img/sharp-darwin-arm64@0.33.5':
+ optionalDependencies:
+ '@img/sharp-libvips-darwin-arm64': 1.0.4
+ optional: true
+
'@img/sharp-darwin-arm64@0.34.5':
optionalDependencies:
'@img/sharp-libvips-darwin-arm64': 1.2.4
optional: true
+ '@img/sharp-darwin-x64@0.33.5':
+ optionalDependencies:
+ '@img/sharp-libvips-darwin-x64': 1.0.4
+ optional: true
+
'@img/sharp-darwin-x64@0.34.5':
optionalDependencies:
'@img/sharp-libvips-darwin-x64': 1.2.4
optional: true
+ '@img/sharp-libvips-darwin-arm64@1.0.4':
+ optional: true
+
'@img/sharp-libvips-darwin-arm64@1.2.4':
optional: true
+ '@img/sharp-libvips-darwin-x64@1.0.4':
+ optional: true
+
'@img/sharp-libvips-darwin-x64@1.2.4':
optional: true
+ '@img/sharp-libvips-linux-arm64@1.0.4':
+ optional: true
+
'@img/sharp-libvips-linux-arm64@1.2.4':
optional: true
+ '@img/sharp-libvips-linux-arm@1.0.5':
+ optional: true
+
'@img/sharp-libvips-linux-arm@1.2.4':
optional: true
@@ -20650,23 +21290,45 @@ snapshots:
'@img/sharp-libvips-linux-riscv64@1.2.4':
optional: true
+ '@img/sharp-libvips-linux-s390x@1.0.4':
+ optional: true
+
'@img/sharp-libvips-linux-s390x@1.2.4':
optional: true
+ '@img/sharp-libvips-linux-x64@1.0.4':
+ optional: true
+
'@img/sharp-libvips-linux-x64@1.2.4':
optional: true
+ '@img/sharp-libvips-linuxmusl-arm64@1.0.4':
+ optional: true
+
'@img/sharp-libvips-linuxmusl-arm64@1.2.4':
optional: true
+ '@img/sharp-libvips-linuxmusl-x64@1.0.4':
+ optional: true
+
'@img/sharp-libvips-linuxmusl-x64@1.2.4':
optional: true
+ '@img/sharp-linux-arm64@0.33.5':
+ optionalDependencies:
+ '@img/sharp-libvips-linux-arm64': 1.0.4
+ optional: true
+
'@img/sharp-linux-arm64@0.34.5':
optionalDependencies:
'@img/sharp-libvips-linux-arm64': 1.2.4
optional: true
+ '@img/sharp-linux-arm@0.33.5':
+ optionalDependencies:
+ '@img/sharp-libvips-linux-arm': 1.0.5
+ optional: true
+
'@img/sharp-linux-arm@0.34.5':
optionalDependencies:
'@img/sharp-libvips-linux-arm': 1.2.4
@@ -20682,26 +21344,51 @@ snapshots:
'@img/sharp-libvips-linux-riscv64': 1.2.4
optional: true
+ '@img/sharp-linux-s390x@0.33.5':
+ optionalDependencies:
+ '@img/sharp-libvips-linux-s390x': 1.0.4
+ optional: true
+
'@img/sharp-linux-s390x@0.34.5':
optionalDependencies:
'@img/sharp-libvips-linux-s390x': 1.2.4
optional: true
+ '@img/sharp-linux-x64@0.33.5':
+ optionalDependencies:
+ '@img/sharp-libvips-linux-x64': 1.0.4
+ optional: true
+
'@img/sharp-linux-x64@0.34.5':
optionalDependencies:
'@img/sharp-libvips-linux-x64': 1.2.4
optional: true
+ '@img/sharp-linuxmusl-arm64@0.33.5':
+ optionalDependencies:
+ '@img/sharp-libvips-linuxmusl-arm64': 1.0.4
+ optional: true
+
'@img/sharp-linuxmusl-arm64@0.34.5':
optionalDependencies:
'@img/sharp-libvips-linuxmusl-arm64': 1.2.4
optional: true
+ '@img/sharp-linuxmusl-x64@0.33.5':
+ optionalDependencies:
+ '@img/sharp-libvips-linuxmusl-x64': 1.0.4
+ optional: true
+
'@img/sharp-linuxmusl-x64@0.34.5':
optionalDependencies:
'@img/sharp-libvips-linuxmusl-x64': 1.2.4
optional: true
+ '@img/sharp-wasm32@0.33.5':
+ dependencies:
+ '@emnapi/runtime': 1.8.1
+ optional: true
+
'@img/sharp-wasm32@0.34.5':
dependencies:
'@emnapi/runtime': 1.8.1
@@ -20710,9 +21397,15 @@ snapshots:
'@img/sharp-win32-arm64@0.34.5':
optional: true
+ '@img/sharp-win32-ia32@0.33.5':
+ optional: true
+
'@img/sharp-win32-ia32@0.34.5':
optional: true
+ '@img/sharp-win32-x64@0.33.5':
+ optional: true
+
'@img/sharp-win32-x64@0.34.5':
optional: true
@@ -20745,12 +21438,12 @@ snapshots:
- supports-color
- utf-8-validate
- '@imtbl/checkout-sdk@2.12.6(bufferutil@4.0.8)(hardhat@2.22.6(bufferutil@4.0.8)(ts-node@10.9.2(@swc/core@1.15.3(@swc/helpers@0.5.15))(@types/node@20.14.13)(typescript@5.6.2))(typescript@5.6.2)(utf-8-validate@5.0.10))(typescript@5.6.2)(utf-8-validate@5.0.10)':
+ '@imtbl/checkout-sdk@2.12.6(bufferutil@4.0.8)(typescript@5.6.2)(utf-8-validate@5.0.10)':
dependencies:
'@imtbl/blockchain-data': 2.12.6
'@imtbl/bridge-sdk': 2.12.6(bufferutil@4.0.8)(utf-8-validate@5.0.10)
'@imtbl/config': 2.12.6
- '@imtbl/dex-sdk': 2.12.6(bufferutil@4.0.8)(hardhat@2.22.6(bufferutil@4.0.8)(ts-node@10.9.2(@swc/core@1.15.3(@swc/helpers@0.5.15))(@types/node@20.14.13)(typescript@5.6.2))(typescript@5.6.2)(utf-8-validate@5.0.10))(utf-8-validate@5.0.10)
+ '@imtbl/dex-sdk': 2.12.6(bufferutil@4.0.8)(utf-8-validate@5.0.10)
'@imtbl/generated-clients': 2.12.6
'@imtbl/metrics': 2.12.6
'@imtbl/orderbook': 2.12.6(bufferutil@4.0.8)(utf-8-validate@5.0.10)
@@ -20816,12 +21509,12 @@ snapshots:
- typescript
- utf-8-validate
- '@imtbl/dex-sdk@2.12.6(bufferutil@4.0.8)(hardhat@2.22.6(bufferutil@4.0.8)(ts-node@10.9.2(@swc/core@1.15.3(@swc/helpers@0.5.15))(@types/node@20.14.13)(typescript@5.6.2))(typescript@5.6.2)(utf-8-validate@5.0.10))(utf-8-validate@5.0.10)':
+ '@imtbl/dex-sdk@2.12.6(bufferutil@4.0.8)(utf-8-validate@5.0.10)':
dependencies:
'@imtbl/config': 2.12.6
'@uniswap/sdk-core': 3.2.3
- '@uniswap/swap-router-contracts': 1.3.1(hardhat@2.22.6(bufferutil@4.0.8)(ts-node@10.9.2(@swc/core@1.15.3(@swc/helpers@0.5.15))(@types/node@20.14.13)(typescript@5.6.2))(typescript@5.6.2)(utf-8-validate@5.0.10))
- '@uniswap/v3-sdk': 3.10.0(hardhat@2.22.6(bufferutil@4.0.8)(ts-node@10.9.2(@swc/core@1.15.3(@swc/helpers@0.5.15))(@types/node@20.14.13)(typescript@5.6.2))(typescript@5.6.2)(utf-8-validate@5.0.10))
+ '@uniswap/swap-router-contracts': 1.3.1(hardhat@2.22.6(bufferutil@4.0.8)(ts-node@10.9.2(@swc/core@1.15.3(@swc/helpers@0.5.15))(@types/node@22.19.7)(typescript@5.6.2))(typescript@5.6.2)(utf-8-validate@5.0.10))
+ '@uniswap/v3-sdk': 3.10.0(hardhat@2.22.6(bufferutil@4.0.8)(ts-node@10.9.2(@swc/core@1.15.3(@swc/helpers@0.5.15))(@types/node@22.19.7)(typescript@5.6.2))(typescript@5.6.2)(utf-8-validate@5.0.10))
ethers: 6.13.5(bufferutil@4.0.8)(utf-8-validate@5.0.10)
transitivePeerDependencies:
- bufferutil
@@ -20900,11 +21593,11 @@ snapshots:
- encoding
- supports-color
- '@imtbl/sdk@2.12.6(bufferutil@4.0.8)(hardhat@2.22.6(bufferutil@4.0.8)(ts-node@10.9.2(@swc/core@1.15.3(@swc/helpers@0.5.15))(@types/node@20.14.13)(typescript@5.6.2))(typescript@5.6.2)(utf-8-validate@5.0.10))(typescript@5.6.2)(utf-8-validate@5.0.10)':
+ '@imtbl/sdk@2.12.6(bufferutil@4.0.8)(typescript@5.6.2)(utf-8-validate@5.0.10)':
dependencies:
'@imtbl/auth': 2.12.6
'@imtbl/blockchain-data': 2.12.6
- '@imtbl/checkout-sdk': 2.12.6(bufferutil@4.0.8)(hardhat@2.22.6(bufferutil@4.0.8)(ts-node@10.9.2(@swc/core@1.15.3(@swc/helpers@0.5.15))(@types/node@20.14.13)(typescript@5.6.2))(typescript@5.6.2)(utf-8-validate@5.0.10))(typescript@5.6.2)(utf-8-validate@5.0.10)
+ '@imtbl/checkout-sdk': 2.12.6(bufferutil@4.0.8)(typescript@5.6.2)(utf-8-validate@5.0.10)
'@imtbl/config': 2.12.6
'@imtbl/minting-backend': 2.12.6
'@imtbl/orderbook': 2.12.6(bufferutil@4.0.8)(utf-8-validate@5.0.10)
@@ -21016,7 +21709,7 @@ snapshots:
'@jest/console@26.6.2':
dependencies:
'@jest/types': 26.6.2
- '@types/node': 20.14.13
+ '@types/node': 22.19.7
chalk: 4.1.2
jest-message-util: 26.6.2
jest-util: 26.6.2
@@ -21025,7 +21718,7 @@ snapshots:
'@jest/console@27.5.1':
dependencies:
'@jest/types': 27.5.1
- '@types/node': 20.14.13
+ '@types/node': 22.19.7
chalk: 4.1.2
jest-message-util: 27.5.1
jest-util: 27.5.1
@@ -21034,7 +21727,7 @@ snapshots:
'@jest/console@28.1.3':
dependencies:
'@jest/types': 28.1.3
- '@types/node': 20.14.13
+ '@types/node': 22.19.7
chalk: 4.1.2
jest-message-util: 28.1.3
jest-util: 28.1.3
@@ -21043,7 +21736,7 @@ snapshots:
'@jest/console@29.7.0':
dependencies:
'@jest/types': 29.6.3
- '@types/node': 20.14.13
+ '@types/node': 22.19.7
chalk: 4.1.2
jest-message-util: 29.7.0
jest-util: 29.7.0
@@ -21056,7 +21749,7 @@ snapshots:
'@jest/test-result': 26.6.2
'@jest/transform': 26.6.2
'@jest/types': 26.6.2
- '@types/node': 20.14.13
+ '@types/node': 22.19.7
ansi-escapes: 4.3.2
chalk: 4.1.2
exit: 0.1.2
@@ -21093,7 +21786,7 @@ snapshots:
'@jest/test-result': 27.5.1
'@jest/transform': 27.5.1
'@jest/types': 27.5.1
- '@types/node': 20.14.13
+ '@types/node': 22.19.7
ansi-escapes: 4.3.2
chalk: 4.1.2
emittery: 0.8.1
@@ -21132,14 +21825,14 @@ snapshots:
'@jest/test-result': 29.7.0
'@jest/transform': 29.7.0
'@jest/types': 29.6.3
- '@types/node': 20.14.13
+ '@types/node': 22.19.7
ansi-escapes: 4.3.2
chalk: 4.1.2
ci-info: 3.8.0
exit: 0.1.2
graceful-fs: 4.2.11
jest-changed-files: 29.7.0
- jest-config: 29.7.0(@types/node@20.14.13)(babel-plugin-macros@3.1.0)(ts-node@10.9.2(@swc/core@1.15.3(@swc/helpers@0.5.15))(@types/node@20.14.13)(typescript@5.6.2))
+ jest-config: 29.7.0(@types/node@22.19.7)(babel-plugin-macros@3.1.0)(ts-node@10.9.2(@swc/core@1.15.3(@swc/helpers@0.5.15))(@types/node@20.14.13)(typescript@5.6.2))
jest-haste-map: 29.7.0
jest-message-util: 29.7.0
jest-regex-util: 29.6.3
@@ -21169,14 +21862,14 @@ snapshots:
'@jest/test-result': 29.7.0
'@jest/transform': 29.7.0
'@jest/types': 29.6.3
- '@types/node': 20.14.13
+ '@types/node': 22.19.7
ansi-escapes: 4.3.2
chalk: 4.1.2
ci-info: 3.8.0
exit: 0.1.2
graceful-fs: 4.2.11
jest-changed-files: 29.7.0
- jest-config: 29.7.0(@types/node@20.14.13)(babel-plugin-macros@3.1.0)(ts-node@10.9.2(@swc/core@1.15.3(@swc/helpers@0.5.15))(@types/node@22.19.7)(typescript@5.6.2))
+ jest-config: 29.7.0(@types/node@22.19.7)(babel-plugin-macros@3.1.0)(ts-node@10.9.2(@swc/core@1.15.3(@swc/helpers@0.5.15))(@types/node@22.19.7)(typescript@5.6.2))
jest-haste-map: 29.7.0
jest-message-util: 29.7.0
jest-regex-util: 29.6.3
@@ -21207,21 +21900,21 @@ snapshots:
dependencies:
'@jest/fake-timers': 26.6.2
'@jest/types': 26.6.2
- '@types/node': 20.14.13
+ '@types/node': 22.19.7
jest-mock: 26.6.2
'@jest/environment@27.5.1':
dependencies:
'@jest/fake-timers': 27.5.1
'@jest/types': 27.5.1
- '@types/node': 20.14.13
+ '@types/node': 22.19.7
jest-mock: 27.5.1
'@jest/environment@29.7.0':
dependencies:
'@jest/fake-timers': 29.7.0
'@jest/types': 29.6.3
- '@types/node': 20.14.13
+ '@types/node': 22.19.7
jest-mock: 29.7.0
'@jest/expect-utils@29.7.0':
@@ -21239,7 +21932,7 @@ snapshots:
dependencies:
'@jest/types': 26.6.2
'@sinonjs/fake-timers': 6.0.1
- '@types/node': 20.14.13
+ '@types/node': 22.19.7
jest-message-util: 26.6.2
jest-mock: 26.6.2
jest-util: 26.6.2
@@ -21248,7 +21941,7 @@ snapshots:
dependencies:
'@jest/types': 27.5.1
'@sinonjs/fake-timers': 8.1.0
- '@types/node': 20.14.13
+ '@types/node': 22.19.7
jest-message-util: 27.5.1
jest-mock: 27.5.1
jest-util: 27.5.1
@@ -21257,7 +21950,7 @@ snapshots:
dependencies:
'@jest/types': 29.6.3
'@sinonjs/fake-timers': 10.3.0
- '@types/node': 20.14.13
+ '@types/node': 22.19.7
jest-message-util: 29.7.0
jest-mock: 29.7.0
jest-util: 29.7.0
@@ -21321,7 +22014,7 @@ snapshots:
'@jest/test-result': 27.5.1
'@jest/transform': 27.5.1
'@jest/types': 27.5.1
- '@types/node': 20.14.13
+ '@types/node': 22.19.7
chalk: 4.1.2
collect-v8-coverage: 1.0.2
exit: 0.1.2
@@ -21354,7 +22047,7 @@ snapshots:
'@jest/transform': 29.7.0
'@jest/types': 29.6.3
'@jridgewell/trace-mapping': 0.3.25
- '@types/node': 20.14.13
+ '@types/node': 22.19.7
chalk: 4.1.2
collect-v8-coverage: 1.0.2
exit: 0.1.2
@@ -21531,7 +22224,7 @@ snapshots:
dependencies:
'@types/istanbul-lib-coverage': 2.0.4
'@types/istanbul-reports': 3.0.1
- '@types/node': 20.14.13
+ '@types/node': 22.19.7
'@types/yargs': 15.0.19
chalk: 4.1.2
@@ -21539,7 +22232,7 @@ snapshots:
dependencies:
'@types/istanbul-lib-coverage': 2.0.4
'@types/istanbul-reports': 3.0.1
- '@types/node': 20.14.13
+ '@types/node': 22.19.7
'@types/yargs': 16.0.5
chalk: 4.1.2
@@ -21548,7 +22241,7 @@ snapshots:
'@jest/schemas': 28.1.3
'@types/istanbul-lib-coverage': 2.0.4
'@types/istanbul-reports': 3.0.1
- '@types/node': 20.14.13
+ '@types/node': 22.19.7
'@types/yargs': 17.0.24
chalk: 4.1.2
@@ -21557,7 +22250,7 @@ snapshots:
'@jest/schemas': 29.6.3
'@types/istanbul-lib-coverage': 2.0.4
'@types/istanbul-reports': 3.0.1
- '@types/node': 20.14.13
+ '@types/node': 22.19.7
'@types/yargs': 17.0.24
chalk: 4.1.2
@@ -21951,6 +22644,8 @@ snapshots:
'@next/env@14.2.25': {}
+ '@next/env@15.2.6': {}
+
'@next/env@15.5.10': {}
'@next/eslint-plugin-next@13.3.1':
@@ -21977,45 +22672,70 @@ snapshots:
dependencies:
glob: 10.3.10
+ '@next/eslint-plugin-next@15.2.6':
+ dependencies:
+ fast-glob: 3.3.1
+
'@next/swc-darwin-arm64@14.2.25':
optional: true
+ '@next/swc-darwin-arm64@15.2.5':
+ optional: true
+
'@next/swc-darwin-arm64@15.5.7':
optional: true
'@next/swc-darwin-x64@14.2.25':
optional: true
+ '@next/swc-darwin-x64@15.2.5':
+ optional: true
+
'@next/swc-darwin-x64@15.5.7':
optional: true
'@next/swc-linux-arm64-gnu@14.2.25':
optional: true
+ '@next/swc-linux-arm64-gnu@15.2.5':
+ optional: true
+
'@next/swc-linux-arm64-gnu@15.5.7':
optional: true
'@next/swc-linux-arm64-musl@14.2.25':
optional: true
+ '@next/swc-linux-arm64-musl@15.2.5':
+ optional: true
+
'@next/swc-linux-arm64-musl@15.5.7':
optional: true
'@next/swc-linux-x64-gnu@14.2.25':
optional: true
+ '@next/swc-linux-x64-gnu@15.2.5':
+ optional: true
+
'@next/swc-linux-x64-gnu@15.5.7':
optional: true
'@next/swc-linux-x64-musl@14.2.25':
optional: true
+ '@next/swc-linux-x64-musl@15.2.5':
+ optional: true
+
'@next/swc-linux-x64-musl@15.5.7':
optional: true
'@next/swc-win32-arm64-msvc@14.2.25':
optional: true
+ '@next/swc-win32-arm64-msvc@15.2.5':
+ optional: true
+
'@next/swc-win32-arm64-msvc@15.5.7':
optional: true
@@ -22025,6 +22745,9 @@ snapshots:
'@next/swc-win32-x64-msvc@14.2.25':
optional: true
+ '@next/swc-win32-x64-msvc@15.2.5':
+ optional: true
+
'@next/swc-win32-x64-msvc@15.5.7':
optional: true
@@ -23648,6 +24371,8 @@ snapshots:
'@rollup/rollup-win32-x64-msvc@4.28.0':
optional: true
+ '@rtsao/scc@1.1.0': {}
+
'@rushstack/eslint-patch@1.10.4': {}
'@safe-global/safe-apps-provider@0.18.3(bufferutil@4.0.8)(typescript@5.6.2)(utf-8-validate@5.0.10)':
@@ -24872,7 +25597,7 @@ snapshots:
'@swc/helpers@0.5.5':
dependencies:
'@swc/counter': 0.1.3
- tslib: 2.7.0
+ tslib: 2.8.1
'@swc/jest@0.2.36(@swc/core@1.15.3(@swc/helpers@0.5.15))':
dependencies:
@@ -24916,7 +25641,7 @@ snapshots:
'@testing-library/dom@10.4.0':
dependencies:
- '@babel/code-frame': 7.26.2
+ '@babel/code-frame': 7.29.0
'@babel/runtime': 7.25.0
'@types/aria-query': 5.0.1
aria-query: 5.3.0
@@ -25028,26 +25753,26 @@ snapshots:
'@types/bn.js@4.11.6':
dependencies:
- '@types/node': 20.14.13
+ '@types/node': 22.19.7
'@types/bn.js@5.1.6':
dependencies:
- '@types/node': 20.14.13
+ '@types/node': 22.19.7
'@types/body-parser@1.19.2':
dependencies:
'@types/connect': 3.4.35
- '@types/node': 20.14.13
+ '@types/node': 22.19.7
'@types/bonjour@3.5.10':
dependencies:
- '@types/node': 20.14.13
+ '@types/node': 22.19.7
'@types/cacheable-request@6.0.3':
dependencies:
'@types/http-cache-semantics': 4.0.4
'@types/keyv': 3.1.4
- '@types/node': 20.14.13
+ '@types/node': 22.19.7
'@types/responselike': 1.0.3
'@types/chai-as-promised@7.1.8':
@@ -25058,16 +25783,16 @@ snapshots:
'@types/concat-stream@1.6.1':
dependencies:
- '@types/node': 20.14.13
+ '@types/node': 22.19.7
'@types/connect-history-api-fallback@1.5.0':
dependencies:
'@types/express-serve-static-core': 4.17.35
- '@types/node': 20.14.13
+ '@types/node': 22.19.7
'@types/connect@3.4.35':
dependencies:
- '@types/node': 20.14.13
+ '@types/node': 22.19.7
'@types/cookie@0.4.1': {}
@@ -25077,13 +25802,13 @@ snapshots:
'@types/docker-modem@3.0.6':
dependencies:
- '@types/node': 20.14.13
+ '@types/node': 22.19.7
'@types/ssh2': 1.15.0
'@types/dockerode@3.3.29':
dependencies:
'@types/docker-modem': 3.0.6
- '@types/node': 20.14.13
+ '@types/node': 22.19.7
'@types/ssh2': 1.15.0
'@types/dom-screen-wake-lock@1.0.3': {}
@@ -25104,7 +25829,7 @@ snapshots:
'@types/express-serve-static-core@4.17.35':
dependencies:
- '@types/node': 20.14.13
+ '@types/node': 22.19.7
'@types/qs': 6.9.15
'@types/range-parser': 1.2.4
'@types/send': 0.17.1
@@ -25118,16 +25843,16 @@ snapshots:
'@types/form-data@0.0.33':
dependencies:
- '@types/node': 20.14.13
+ '@types/node': 22.19.7
'@types/glob@7.2.0':
dependencies:
'@types/minimatch': 5.1.2
- '@types/node': 20.14.13
+ '@types/node': 22.19.7
'@types/graceful-fs@4.1.6':
dependencies:
- '@types/node': 20.14.13
+ '@types/node': 22.19.7
'@types/hast@3.0.4':
dependencies:
@@ -25141,7 +25866,7 @@ snapshots:
'@types/http-proxy@1.17.11':
dependencies:
- '@types/node': 20.14.13
+ '@types/node': 22.19.7
'@types/istanbul-lib-coverage@2.0.4': {}
@@ -25177,7 +25902,7 @@ snapshots:
'@types/jsdom@20.0.1':
dependencies:
- '@types/node': 20.14.13
+ '@types/node': 22.19.7
'@types/tough-cookie': 4.0.2
parse5: 7.1.2
@@ -25189,7 +25914,7 @@ snapshots:
'@types/keyv@3.1.4':
dependencies:
- '@types/node': 20.14.13
+ '@types/node': 22.19.7
'@types/lodash.debounce@4.0.9':
dependencies:
@@ -25213,7 +25938,7 @@ snapshots:
'@types/node-forge@1.3.11':
dependencies:
- '@types/node': 20.14.13
+ '@types/node': 22.19.7
'@types/node@10.17.60': {}
@@ -25241,11 +25966,11 @@ snapshots:
'@types/pbkdf2@3.1.0':
dependencies:
- '@types/node': 20.14.13
+ '@types/node': 22.19.7
'@types/pg@8.11.6':
dependencies:
- '@types/node': 20.14.13
+ '@types/node': 22.19.7
pg-protocol: 1.6.1
pg-types: 4.0.2
@@ -25274,26 +25999,26 @@ snapshots:
'@types/resolve@1.17.1':
dependencies:
- '@types/node': 20.14.13
+ '@types/node': 22.19.7
'@types/resolve@1.20.2': {}
'@types/responselike@1.0.3':
dependencies:
- '@types/node': 20.14.13
+ '@types/node': 22.19.7
'@types/retry@0.12.0': {}
'@types/secp256k1@4.0.6':
dependencies:
- '@types/node': 20.14.13
+ '@types/node': 22.19.7
'@types/semver@7.5.8': {}
'@types/send@0.17.1':
dependencies:
'@types/mime': 1.3.2
- '@types/node': 20.14.13
+ '@types/node': 22.19.7
'@types/serve-index@1.9.1':
dependencies:
@@ -25303,25 +26028,25 @@ snapshots:
dependencies:
'@types/http-errors': 2.0.1
'@types/mime': 3.0.1
- '@types/node': 20.14.13
+ '@types/node': 22.19.7
'@types/set-cookie-parser@2.4.3':
dependencies:
- '@types/node': 20.14.13
+ '@types/node': 22.19.7
'@types/sns-validator@0.3.3': {}
'@types/sockjs@0.3.33':
dependencies:
- '@types/node': 20.14.13
+ '@types/node': 22.19.7
'@types/ssh2-streams@0.1.12':
dependencies:
- '@types/node': 20.14.13
+ '@types/node': 22.19.7
'@types/ssh2@0.5.52':
dependencies:
- '@types/node': 20.14.13
+ '@types/node': 22.19.7
'@types/ssh2-streams': 0.1.12
'@types/ssh2@1.15.0':
@@ -25352,7 +26077,7 @@ snapshots:
'@types/ws@8.5.5':
dependencies:
- '@types/node': 20.14.13
+ '@types/node': 22.19.7
'@types/yargs-parser@21.0.0': {}
@@ -25391,6 +26116,25 @@ snapshots:
transitivePeerDependencies:
- supports-color
+ '@typescript-eslint/eslint-plugin@5.62.0(@typescript-eslint/parser@5.62.0(eslint@8.57.0)(typescript@5.6.2))(eslint@9.16.0(jiti@1.21.0))(typescript@5.6.2)':
+ dependencies:
+ '@eslint-community/regexpp': 4.12.1
+ '@typescript-eslint/parser': 5.62.0(eslint@8.57.0)(typescript@5.6.2)
+ '@typescript-eslint/scope-manager': 5.62.0
+ '@typescript-eslint/type-utils': 5.62.0(eslint@9.16.0(jiti@1.21.0))(typescript@5.6.2)
+ '@typescript-eslint/utils': 5.62.0(eslint@9.16.0(jiti@1.21.0))(typescript@5.6.2)
+ debug: 4.3.7(supports-color@8.1.1)
+ eslint: 9.16.0(jiti@1.21.0)
+ graphemer: 1.4.0
+ ignore: 5.3.1
+ natural-compare-lite: 1.4.0
+ semver: 7.6.3
+ tsutils: 3.21.0(typescript@5.6.2)
+ optionalDependencies:
+ typescript: 5.6.2
+ transitivePeerDependencies:
+ - supports-color
+
'@typescript-eslint/eslint-plugin@5.62.0(@typescript-eslint/parser@5.62.0(eslint@9.16.0(jiti@1.21.0))(typescript@5.6.2))(eslint@9.16.0(jiti@1.21.0))(typescript@5.6.2)':
dependencies:
'@eslint-community/regexpp': 4.12.1
@@ -25552,17 +26296,6 @@ snapshots:
tiny-invariant: 1.3.1
toformat: 2.0.0
- '@uniswap/swap-router-contracts@1.3.1(hardhat@2.22.6(bufferutil@4.0.8)(ts-node@10.9.2(@swc/core@1.15.3(@swc/helpers@0.5.15))(@types/node@20.14.13)(typescript@5.6.2))(typescript@5.6.2)(utf-8-validate@5.0.10))':
- dependencies:
- '@openzeppelin/contracts': 3.4.2
- '@uniswap/v2-core': 1.0.1
- '@uniswap/v3-core': 1.0.0
- '@uniswap/v3-periphery': 1.4.4
- dotenv: 14.3.2
- hardhat-watcher: 2.5.0(hardhat@2.22.6(bufferutil@4.0.8)(ts-node@10.9.2(@swc/core@1.15.3(@swc/helpers@0.5.15))(@types/node@20.14.13)(typescript@5.6.2))(typescript@5.6.2)(utf-8-validate@5.0.10))
- transitivePeerDependencies:
- - hardhat
-
'@uniswap/swap-router-contracts@1.3.1(hardhat@2.22.6(bufferutil@4.0.8)(ts-node@10.9.2(@swc/core@1.15.3(@swc/helpers@0.5.15))(@types/node@22.19.7)(typescript@5.6.2))(typescript@5.6.2)(utf-8-validate@5.0.10))':
dependencies:
'@openzeppelin/contracts': 3.4.2
@@ -25594,19 +26327,6 @@ snapshots:
'@uniswap/v3-core': 1.0.0
base64-sol: 1.0.1
- '@uniswap/v3-sdk@3.10.0(hardhat@2.22.6(bufferutil@4.0.8)(ts-node@10.9.2(@swc/core@1.15.3(@swc/helpers@0.5.15))(@types/node@20.14.13)(typescript@5.6.2))(typescript@5.6.2)(utf-8-validate@5.0.10))':
- dependencies:
- '@ethersproject/abi': 5.7.0
- '@ethersproject/solidity': 5.7.0
- '@uniswap/sdk-core': 4.0.6
- '@uniswap/swap-router-contracts': 1.3.1(hardhat@2.22.6(bufferutil@4.0.8)(ts-node@10.9.2(@swc/core@1.15.3(@swc/helpers@0.5.15))(@types/node@20.14.13)(typescript@5.6.2))(typescript@5.6.2)(utf-8-validate@5.0.10))
- '@uniswap/v3-periphery': 1.4.3
- '@uniswap/v3-staker': 1.0.0
- tiny-invariant: 1.3.1
- tiny-warning: 1.0.3
- transitivePeerDependencies:
- - hardhat
-
'@uniswap/v3-sdk@3.10.0(hardhat@2.22.6(bufferutil@4.0.8)(ts-node@10.9.2(@swc/core@1.15.3(@swc/helpers@0.5.15))(@types/node@22.19.7)(typescript@5.6.2))(typescript@5.6.2)(utf-8-validate@5.0.10))':
dependencies:
'@ethersproject/abi': 5.7.0
@@ -26343,6 +27063,8 @@ snapshots:
dependencies:
dequal: 2.0.3
+ aria-query@5.3.2: {}
+
arr-diff@4.0.0: {}
arr-flatten@1.1.0: {}
@@ -26358,6 +27080,11 @@ snapshots:
call-bind: 1.0.7
is-array-buffer: 3.0.4
+ array-buffer-byte-length@1.0.2:
+ dependencies:
+ call-bound: 1.0.4
+ is-array-buffer: 3.0.5
+
array-flatten@1.1.1: {}
array-flatten@2.1.2: {}
@@ -26371,6 +27098,17 @@ snapshots:
get-intrinsic: 1.2.4
is-string: 1.0.7
+ array-includes@3.1.9:
+ dependencies:
+ call-bind: 1.0.8
+ call-bound: 1.0.4
+ define-properties: 1.2.1
+ es-abstract: 1.24.1
+ es-object-atoms: 1.1.1
+ get-intrinsic: 1.3.0
+ is-string: 1.1.1
+ math-intrinsics: 1.1.0
+
array-union@2.1.0: {}
array-uniq@1.0.3: {}
@@ -26395,6 +27133,16 @@ snapshots:
es-object-atoms: 1.0.0
es-shim-unscopables: 1.0.2
+ array.prototype.findlastindex@1.2.6:
+ dependencies:
+ call-bind: 1.0.8
+ call-bound: 1.0.4
+ define-properties: 1.2.1
+ es-abstract: 1.24.1
+ es-errors: 1.3.0
+ es-object-atoms: 1.1.1
+ es-shim-unscopables: 1.1.0
+
array.prototype.flat@1.3.2:
dependencies:
call-bind: 1.0.7
@@ -26402,6 +27150,13 @@ snapshots:
es-abstract: 1.23.3
es-shim-unscopables: 1.0.2
+ array.prototype.flat@1.3.3:
+ dependencies:
+ call-bind: 1.0.8
+ define-properties: 1.2.1
+ es-abstract: 1.24.1
+ es-shim-unscopables: 1.1.0
+
array.prototype.flatmap@1.3.2:
dependencies:
call-bind: 1.0.7
@@ -26409,6 +27164,13 @@ snapshots:
es-abstract: 1.23.3
es-shim-unscopables: 1.0.2
+ array.prototype.flatmap@1.3.3:
+ dependencies:
+ call-bind: 1.0.8
+ define-properties: 1.2.1
+ es-abstract: 1.24.1
+ es-shim-unscopables: 1.1.0
+
array.prototype.reduce@1.0.5:
dependencies:
call-bind: 1.0.7
@@ -26436,6 +27198,16 @@ snapshots:
is-array-buffer: 3.0.4
is-shared-array-buffer: 1.0.3
+ arraybuffer.prototype.slice@1.0.4:
+ dependencies:
+ array-buffer-byte-length: 1.0.2
+ call-bind: 1.0.8
+ define-properties: 1.2.1
+ es-abstract: 1.24.1
+ es-errors: 1.3.0
+ get-intrinsic: 1.3.0
+ is-array-buffer: 3.0.5
+
asap@2.0.6: {}
asn1.js@5.4.1:
@@ -26533,6 +27305,8 @@ snapshots:
'@fastify/error': 3.4.1
fastq: 1.17.1
+ axe-core@4.11.1: {}
+
axe-core@4.9.1: {}
axios@0.21.4:
@@ -26561,6 +27335,8 @@ snapshots:
dependencies:
deep-equal: 2.2.2
+ axobject-query@4.1.0: {}
+
b4a@1.6.6: {}
babel-core@7.0.0-bridge.0(@babel/core@7.26.10):
@@ -26622,20 +27398,6 @@ snapshots:
transitivePeerDependencies:
- supports-color
- babel-jest@29.7.0(@babel/core@7.26.9):
- dependencies:
- '@babel/core': 7.26.9
- '@jest/transform': 29.7.0
- '@types/babel__core': 7.20.5
- babel-plugin-istanbul: 6.1.1
- babel-preset-jest: 29.6.3(@babel/core@7.26.9)
- chalk: 4.1.2
- graceful-fs: 4.2.11
- slash: 3.0.0
- transitivePeerDependencies:
- - supports-color
- optional: true
-
babel-loader@8.3.0(@babel/core@7.26.9)(webpack@5.88.2(@swc/core@1.15.3(@swc/helpers@0.5.15))(esbuild@0.23.1)):
dependencies:
'@babel/core': 7.26.9
@@ -26828,13 +27590,6 @@ snapshots:
babel-plugin-jest-hoist: 29.6.3
babel-preset-current-node-syntax: 1.0.1(@babel/core@7.26.10)
- babel-preset-jest@29.6.3(@babel/core@7.26.9):
- dependencies:
- '@babel/core': 7.26.9
- babel-plugin-jest-hoist: 29.6.3
- babel-preset-current-node-syntax: 1.0.1(@babel/core@7.26.9)
- optional: true
-
babel-preset-react-app@10.0.1:
dependencies:
'@babel/core': 7.26.10
@@ -27040,6 +27795,10 @@ snapshots:
dependencies:
fill-range: 7.0.1
+ braces@3.0.3:
+ dependencies:
+ fill-range: 7.1.1
+
brorand@1.1.0: {}
browser-process-hrtime@1.0.0: {}
@@ -27215,6 +27974,11 @@ snapshots:
normalize-url: 6.1.0
responselike: 2.0.1
+ call-bind-apply-helpers@1.0.2:
+ dependencies:
+ es-errors: 1.3.0
+ function-bind: 1.1.2
+
call-bind@1.0.7:
dependencies:
es-define-property: 1.0.0
@@ -27223,6 +27987,18 @@ snapshots:
get-intrinsic: 1.2.4
set-function-length: 1.2.2
+ call-bind@1.0.8:
+ dependencies:
+ call-bind-apply-helpers: 1.0.2
+ es-define-property: 1.0.1
+ get-intrinsic: 1.3.0
+ set-function-length: 1.2.2
+
+ call-bound@1.0.4:
+ dependencies:
+ call-bind-apply-helpers: 1.0.2
+ get-intrinsic: 1.3.0
+
caller-callsite@2.0.0:
dependencies:
callsites: 2.0.0
@@ -27255,8 +28031,6 @@ snapshots:
caniuse-lite@1.0.30001660: {}
- caniuse-lite@1.0.30001703: {}
-
caniuse-lite@1.0.30001760: {}
capture-exit@2.0.0:
@@ -27511,8 +28285,20 @@ snapshots:
color-name@1.1.4: {}
+ color-string@1.9.1:
+ dependencies:
+ color-name: 1.1.4
+ simple-swizzle: 0.2.4
+ optional: true
+
color-support@1.1.3: {}
+ color@4.2.3:
+ dependencies:
+ color-convert: 2.0.1
+ color-string: 1.9.1
+ optional: true
+
colord@2.9.3: {}
colorette@1.4.0: {}
@@ -28040,18 +28826,36 @@ snapshots:
es-errors: 1.3.0
is-data-view: 1.0.1
+ data-view-buffer@1.0.2:
+ dependencies:
+ call-bound: 1.0.4
+ es-errors: 1.3.0
+ is-data-view: 1.0.2
+
data-view-byte-length@1.0.1:
dependencies:
call-bind: 1.0.7
es-errors: 1.3.0
is-data-view: 1.0.1
+ data-view-byte-length@1.0.2:
+ dependencies:
+ call-bound: 1.0.4
+ es-errors: 1.3.0
+ is-data-view: 1.0.2
+
data-view-byte-offset@1.0.0:
dependencies:
call-bind: 1.0.7
es-errors: 1.3.0
is-data-view: 1.0.1
+ data-view-byte-offset@1.0.1:
+ dependencies:
+ call-bound: 1.0.4
+ es-errors: 1.3.0
+ is-data-view: 1.0.2
+
date-fns@2.30.0:
dependencies:
'@babel/runtime': 7.25.0
@@ -28386,6 +29190,12 @@ snapshots:
dset@3.1.2: {}
+ dunder-proto@1.0.1:
+ dependencies:
+ call-bind-apply-helpers: 1.0.2
+ es-errors: 1.3.0
+ gopd: 1.2.0
+
duplexer@0.1.2: {}
duplexify@4.1.2:
@@ -28583,12 +29393,71 @@ snapshots:
unbox-primitive: 1.0.2
which-typed-array: 1.1.15
+ es-abstract@1.24.1:
+ dependencies:
+ array-buffer-byte-length: 1.0.2
+ arraybuffer.prototype.slice: 1.0.4
+ available-typed-arrays: 1.0.7
+ call-bind: 1.0.8
+ call-bound: 1.0.4
+ data-view-buffer: 1.0.2
+ data-view-byte-length: 1.0.2
+ data-view-byte-offset: 1.0.1
+ es-define-property: 1.0.1
+ es-errors: 1.3.0
+ es-object-atoms: 1.1.1
+ es-set-tostringtag: 2.1.0
+ es-to-primitive: 1.3.0
+ function.prototype.name: 1.1.8
+ get-intrinsic: 1.3.0
+ get-proto: 1.0.1
+ get-symbol-description: 1.1.0
+ globalthis: 1.0.4
+ gopd: 1.2.0
+ has-property-descriptors: 1.0.2
+ has-proto: 1.2.0
+ has-symbols: 1.1.0
+ hasown: 2.0.2
+ internal-slot: 1.1.0
+ is-array-buffer: 3.0.5
+ is-callable: 1.2.7
+ is-data-view: 1.0.2
+ is-negative-zero: 2.0.3
+ is-regex: 1.2.1
+ is-set: 2.0.3
+ is-shared-array-buffer: 1.0.4
+ is-string: 1.1.1
+ is-typed-array: 1.1.15
+ is-weakref: 1.1.1
+ math-intrinsics: 1.1.0
+ object-inspect: 1.13.4
+ object-keys: 1.1.1
+ object.assign: 4.1.7
+ own-keys: 1.0.1
+ regexp.prototype.flags: 1.5.4
+ safe-array-concat: 1.1.3
+ safe-push-apply: 1.0.0
+ safe-regex-test: 1.1.0
+ set-proto: 1.0.0
+ stop-iteration-iterator: 1.1.0
+ string.prototype.trim: 1.2.10
+ string.prototype.trimend: 1.0.9
+ string.prototype.trimstart: 1.0.8
+ typed-array-buffer: 1.0.3
+ typed-array-byte-length: 1.0.3
+ typed-array-byte-offset: 1.0.4
+ typed-array-length: 1.0.7
+ unbox-primitive: 1.1.0
+ which-typed-array: 1.1.20
+
es-array-method-boxes-properly@1.0.0: {}
es-define-property@1.0.0:
dependencies:
get-intrinsic: 1.2.4
+ es-define-property@1.0.1: {}
+
es-errors@1.3.0: {}
es-get-iterator@1.1.3:
@@ -28620,28 +29489,68 @@ snapshots:
iterator.prototype: 1.1.2
safe-array-concat: 1.1.2
+ es-iterator-helpers@1.2.2:
+ dependencies:
+ call-bind: 1.0.8
+ call-bound: 1.0.4
+ define-properties: 1.2.1
+ es-abstract: 1.24.1
+ es-errors: 1.3.0
+ es-set-tostringtag: 2.1.0
+ function-bind: 1.1.2
+ get-intrinsic: 1.3.0
+ globalthis: 1.0.4
+ gopd: 1.2.0
+ has-property-descriptors: 1.0.2
+ has-proto: 1.2.0
+ has-symbols: 1.1.0
+ internal-slot: 1.1.0
+ iterator.prototype: 1.1.5
+ safe-array-concat: 1.1.3
+
es-module-lexer@1.3.0: {}
es-object-atoms@1.0.0:
dependencies:
es-errors: 1.3.0
+ es-object-atoms@1.1.1:
+ dependencies:
+ es-errors: 1.3.0
+
es-set-tostringtag@2.0.3:
dependencies:
get-intrinsic: 1.2.4
has-tostringtag: 1.0.2
hasown: 2.0.2
+ es-set-tostringtag@2.1.0:
+ dependencies:
+ es-errors: 1.3.0
+ get-intrinsic: 1.3.0
+ has-tostringtag: 1.0.2
+ hasown: 2.0.2
+
es-shim-unscopables@1.0.2:
dependencies:
hasown: 2.0.2
+ es-shim-unscopables@1.1.0:
+ dependencies:
+ hasown: 2.0.2
+
es-to-primitive@1.2.1:
dependencies:
is-callable: 1.2.7
is-date-object: 1.0.5
is-symbol: 1.0.4
+ es-to-primitive@1.3.0:
+ dependencies:
+ is-callable: 1.2.7
+ is-date-object: 1.1.0
+ is-symbol: 1.1.1
+
es6-object-assign@1.1.0: {}
esbuild-plugin-replace@1.4.0:
@@ -28739,30 +29648,30 @@ snapshots:
optionalDependencies:
source-map: 0.6.1
- eslint-config-airbnb-base@15.0.0(eslint-plugin-import@2.29.1(@typescript-eslint/parser@5.62.0(eslint@8.57.0)(typescript@5.6.2))(eslint@8.57.0))(eslint@8.57.0):
+ eslint-config-airbnb-base@15.0.0(eslint-plugin-import@2.32.0(@typescript-eslint/parser@5.62.0(eslint@8.57.0)(typescript@5.6.2))(eslint@8.57.0))(eslint@8.57.0):
dependencies:
confusing-browser-globals: 1.0.11
eslint: 8.57.0
- eslint-plugin-import: 2.29.1(@typescript-eslint/parser@5.62.0(eslint@8.57.0)(typescript@5.6.2))(eslint-import-resolver-typescript@3.5.5)(eslint@8.57.0)
+ eslint-plugin-import: 2.32.0(@typescript-eslint/parser@5.62.0(eslint@8.57.0)(typescript@5.6.2))(eslint-import-resolver-typescript@3.5.5(@typescript-eslint/parser@5.62.0(eslint@8.57.0)(typescript@5.6.2))(eslint-import-resolver-node@0.3.9)(eslint-plugin-import@2.32.0(@typescript-eslint/parser@5.62.0(eslint@8.57.0)(typescript@5.6.2))(eslint@8.57.0))(eslint@8.57.0))(eslint@8.57.0)
object.assign: 4.1.5
object.entries: 1.1.8
semver: 6.3.1
- eslint-config-airbnb-typescript@17.1.0(@typescript-eslint/eslint-plugin@5.62.0(@typescript-eslint/parser@5.62.0(eslint@8.57.0)(typescript@5.6.2))(eslint@8.57.0)(typescript@5.6.2))(@typescript-eslint/parser@5.62.0(eslint@8.57.0)(typescript@5.6.2))(eslint-plugin-import@2.29.1(@typescript-eslint/parser@5.62.0(eslint@8.57.0)(typescript@5.6.2))(eslint@8.57.0))(eslint@8.57.0):
+ eslint-config-airbnb-typescript@17.1.0(@typescript-eslint/eslint-plugin@5.62.0(@typescript-eslint/parser@5.62.0(eslint@8.57.0)(typescript@5.6.2))(eslint@8.57.0)(typescript@5.6.2))(@typescript-eslint/parser@5.62.0(eslint@8.57.0)(typescript@5.6.2))(eslint-plugin-import@2.32.0(@typescript-eslint/parser@5.62.0(eslint@8.57.0)(typescript@5.6.2))(eslint@8.57.0))(eslint@8.57.0):
dependencies:
'@typescript-eslint/eslint-plugin': 5.62.0(@typescript-eslint/parser@5.62.0(eslint@8.57.0)(typescript@5.6.2))(eslint@8.57.0)(typescript@5.6.2)
'@typescript-eslint/parser': 5.62.0(eslint@8.57.0)(typescript@5.6.2)
eslint: 8.57.0
- eslint-config-airbnb-base: 15.0.0(eslint-plugin-import@2.29.1(@typescript-eslint/parser@5.62.0(eslint@8.57.0)(typescript@5.6.2))(eslint@8.57.0))(eslint@8.57.0)
- eslint-plugin-import: 2.29.1(@typescript-eslint/parser@5.62.0(eslint@8.57.0)(typescript@5.6.2))(eslint-import-resolver-typescript@3.5.5)(eslint@8.57.0)
+ eslint-config-airbnb-base: 15.0.0(eslint-plugin-import@2.32.0(@typescript-eslint/parser@5.62.0(eslint@8.57.0)(typescript@5.6.2))(eslint@8.57.0))(eslint@8.57.0)
+ eslint-plugin-import: 2.32.0(@typescript-eslint/parser@5.62.0(eslint@8.57.0)(typescript@5.6.2))(eslint-import-resolver-typescript@3.5.5(@typescript-eslint/parser@5.62.0(eslint@8.57.0)(typescript@5.6.2))(eslint-import-resolver-node@0.3.9)(eslint-plugin-import@2.32.0(@typescript-eslint/parser@5.62.0(eslint@8.57.0)(typescript@5.6.2))(eslint@8.57.0))(eslint@8.57.0))(eslint@8.57.0)
- eslint-config-airbnb@19.0.4(eslint-plugin-import@2.29.1(@typescript-eslint/parser@5.62.0(eslint@8.57.0)(typescript@5.6.2))(eslint@8.57.0))(eslint-plugin-jsx-a11y@6.9.0(eslint@8.57.0))(eslint-plugin-react-hooks@5.0.0(eslint@8.57.0))(eslint-plugin-react@7.35.0(eslint@8.57.0))(eslint@8.57.0):
+ eslint-config-airbnb@19.0.4(eslint-plugin-import@2.32.0(@typescript-eslint/parser@5.62.0(eslint@8.57.0)(typescript@5.6.2))(eslint@8.57.0))(eslint-plugin-jsx-a11y@6.10.2(eslint@8.57.0))(eslint-plugin-react-hooks@5.0.0(eslint@8.57.0))(eslint-plugin-react@7.37.5(eslint@8.57.0))(eslint@8.57.0):
dependencies:
eslint: 8.57.0
- eslint-config-airbnb-base: 15.0.0(eslint-plugin-import@2.29.1(@typescript-eslint/parser@5.62.0(eslint@8.57.0)(typescript@5.6.2))(eslint@8.57.0))(eslint@8.57.0)
- eslint-plugin-import: 2.29.1(@typescript-eslint/parser@5.62.0(eslint@8.57.0)(typescript@5.6.2))(eslint-import-resolver-typescript@3.5.5)(eslint@8.57.0)
- eslint-plugin-jsx-a11y: 6.9.0(eslint@8.57.0)
- eslint-plugin-react: 7.35.0(eslint@8.57.0)
+ eslint-config-airbnb-base: 15.0.0(eslint-plugin-import@2.32.0(@typescript-eslint/parser@5.62.0(eslint@8.57.0)(typescript@5.6.2))(eslint@8.57.0))(eslint@8.57.0)
+ eslint-plugin-import: 2.32.0(@typescript-eslint/parser@5.62.0(eslint@8.57.0)(typescript@5.6.2))(eslint-import-resolver-typescript@3.5.5(@typescript-eslint/parser@5.62.0(eslint@8.57.0)(typescript@5.6.2))(eslint-import-resolver-node@0.3.9)(eslint-plugin-import@2.32.0(@typescript-eslint/parser@5.62.0(eslint@8.57.0)(typescript@5.6.2))(eslint@8.57.0))(eslint@8.57.0))(eslint@8.57.0)
+ eslint-plugin-jsx-a11y: 6.10.2(eslint@8.57.0)
+ eslint-plugin-react: 7.37.5(eslint@8.57.0)
eslint-plugin-react-hooks: 5.0.0(eslint@8.57.0)
object.assign: 4.1.5
object.entries: 1.1.8
@@ -28774,8 +29683,8 @@ snapshots:
'@typescript-eslint/parser': 5.62.0(eslint@8.57.0)(typescript@5.6.2)
eslint: 8.57.0
eslint-import-resolver-node: 0.3.9
- eslint-import-resolver-typescript: 3.5.5(@typescript-eslint/parser@5.62.0(eslint@8.57.0)(typescript@5.6.2))(eslint-import-resolver-node@0.3.9)(eslint-plugin-import@2.29.1(@typescript-eslint/parser@5.62.0(eslint@8.57.0)(typescript@5.6.2))(eslint@8.57.0))(eslint@8.57.0)
- eslint-plugin-import: 2.29.1(@typescript-eslint/parser@5.62.0(eslint@8.57.0)(typescript@5.6.2))(eslint-import-resolver-typescript@3.5.5)(eslint@8.57.0)
+ eslint-import-resolver-typescript: 3.5.5(@typescript-eslint/parser@5.62.0(eslint@8.57.0)(typescript@5.6.2))(eslint-import-resolver-node@0.3.9)(eslint-plugin-import@2.29.1)(eslint@8.57.0)
+ eslint-plugin-import: 2.29.1(@typescript-eslint/parser@5.62.0(eslint@8.57.0)(typescript@5.6.2))(eslint-import-resolver-typescript@3.5.5(@typescript-eslint/parser@5.62.0(eslint@8.57.0)(typescript@5.6.2))(eslint-import-resolver-node@0.3.9)(eslint-plugin-import@2.29.1(@typescript-eslint/parser@5.62.0(eslint@8.57.0)(typescript@5.6.2))(eslint@8.57.0))(eslint@8.57.0))(eslint@8.57.0)
eslint-plugin-jsx-a11y: 6.9.0(eslint@8.57.0)
eslint-plugin-react: 7.35.0(eslint@8.57.0)
eslint-plugin-react-hooks: 4.6.0(eslint@8.57.0)
@@ -28794,7 +29703,7 @@ snapshots:
eslint: 8.57.0
eslint-import-resolver-node: 0.3.9
eslint-import-resolver-typescript: 3.5.5(@typescript-eslint/parser@5.62.0(eslint@8.57.0)(typescript@5.6.2))(eslint-import-resolver-node@0.3.9)(eslint-plugin-import@2.29.1(@typescript-eslint/parser@5.62.0(eslint@8.57.0)(typescript@5.6.2))(eslint@8.57.0))(eslint@8.57.0)
- eslint-plugin-import: 2.29.1(@typescript-eslint/parser@5.62.0(eslint@8.57.0)(typescript@5.6.2))(eslint-import-resolver-typescript@3.5.5)(eslint@8.57.0)
+ eslint-plugin-import: 2.29.1(@typescript-eslint/parser@5.62.0(eslint@8.57.0)(typescript@5.6.2))(eslint-import-resolver-typescript@3.5.5(@typescript-eslint/parser@5.62.0(eslint@8.57.0)(typescript@5.6.2))(eslint-import-resolver-node@0.3.9)(eslint-plugin-import@2.29.1(@typescript-eslint/parser@5.62.0(eslint@8.57.0)(typescript@5.6.2))(eslint@8.57.0))(eslint@8.57.0))(eslint@8.57.0)
eslint-plugin-jsx-a11y: 6.9.0(eslint@8.57.0)
eslint-plugin-react: 7.35.0(eslint@8.57.0)
eslint-plugin-react-hooks: 5.0.0-canary-7118f5dd7-20230705(eslint@8.57.0)
@@ -28813,7 +29722,7 @@ snapshots:
eslint: 8.57.0
eslint-import-resolver-node: 0.3.9
eslint-import-resolver-typescript: 3.5.5(@typescript-eslint/parser@5.62.0(eslint@8.57.0)(typescript@5.6.2))(eslint-import-resolver-node@0.3.9)(eslint-plugin-import@2.29.1(@typescript-eslint/parser@5.62.0(eslint@8.57.0)(typescript@5.6.2))(eslint@8.57.0))(eslint@8.57.0)
- eslint-plugin-import: 2.29.1(@typescript-eslint/parser@5.62.0(eslint@8.57.0)(typescript@5.6.2))(eslint-import-resolver-typescript@3.5.5)(eslint@8.57.0)
+ eslint-plugin-import: 2.29.1(@typescript-eslint/parser@5.62.0(eslint@8.57.0)(typescript@5.6.2))(eslint-import-resolver-typescript@3.5.5(@typescript-eslint/parser@5.62.0(eslint@8.57.0)(typescript@5.6.2))(eslint-import-resolver-node@0.3.9)(eslint-plugin-import@2.29.1(@typescript-eslint/parser@5.62.0(eslint@8.57.0)(typescript@5.6.2))(eslint@8.57.0))(eslint@8.57.0))(eslint@8.57.0)
eslint-plugin-jsx-a11y: 6.9.0(eslint@8.57.0)
eslint-plugin-react: 7.35.0(eslint@8.57.0)
eslint-plugin-react-hooks: 5.0.0-canary-7118f5dd7-20230705(eslint@8.57.0)
@@ -28830,8 +29739,8 @@ snapshots:
'@typescript-eslint/parser': 5.62.0(eslint@8.57.0)(typescript@5.6.2)
eslint: 8.57.0
eslint-import-resolver-node: 0.3.9
- eslint-import-resolver-typescript: 3.5.5(@typescript-eslint/parser@5.62.0(eslint@8.57.0)(typescript@5.6.2))(eslint-import-resolver-node@0.3.9)(eslint-plugin-import@2.29.1(@typescript-eslint/parser@5.62.0(eslint@8.57.0)(typescript@5.6.2))(eslint@8.57.0))(eslint@8.57.0)
- eslint-plugin-import: 2.29.1(@typescript-eslint/parser@5.62.0(eslint@8.57.0)(typescript@5.6.2))(eslint-import-resolver-typescript@3.5.5)(eslint@8.57.0)
+ eslint-import-resolver-typescript: 3.5.5(@typescript-eslint/parser@5.62.0(eslint@8.57.0)(typescript@5.6.2))(eslint-import-resolver-node@0.3.9)(eslint-plugin-import@2.29.1)(eslint@8.57.0)
+ eslint-plugin-import: 2.29.1(@typescript-eslint/parser@5.62.0(eslint@8.57.0)(typescript@5.6.2))(eslint-import-resolver-typescript@3.5.5(@typescript-eslint/parser@5.62.0(eslint@8.57.0)(typescript@5.6.2))(eslint-import-resolver-node@0.3.9)(eslint-plugin-import@2.29.1(@typescript-eslint/parser@5.62.0(eslint@8.57.0)(typescript@5.6.2))(eslint@8.57.0))(eslint@8.57.0))(eslint@8.57.0)
eslint-plugin-jsx-a11y: 6.9.0(eslint@8.57.0)
eslint-plugin-react: 7.35.0(eslint@8.57.0)
eslint-plugin-react-hooks: 5.0.0-canary-7118f5dd7-20230705(eslint@8.57.0)
@@ -28848,8 +29757,8 @@ snapshots:
'@typescript-eslint/parser': 5.62.0(eslint@8.57.0)(typescript@5.6.2)
eslint: 8.57.0
eslint-import-resolver-node: 0.3.9
- eslint-import-resolver-typescript: 3.5.5(@typescript-eslint/parser@5.62.0(eslint@8.57.0)(typescript@5.6.2))(eslint-import-resolver-node@0.3.9)(eslint-plugin-import@2.29.1(@typescript-eslint/parser@5.62.0(eslint@8.57.0)(typescript@5.6.2))(eslint@8.57.0))(eslint@8.57.0)
- eslint-plugin-import: 2.29.1(@typescript-eslint/parser@5.62.0(eslint@8.57.0)(typescript@5.6.2))(eslint-import-resolver-typescript@3.5.5)(eslint@8.57.0)
+ eslint-import-resolver-typescript: 3.5.5(@typescript-eslint/parser@5.62.0(eslint@8.57.0)(typescript@5.6.2))(eslint-import-resolver-node@0.3.9)(eslint-plugin-import@2.29.1)(eslint@8.57.0)
+ eslint-plugin-import: 2.29.1(@typescript-eslint/parser@5.62.0(eslint@8.57.0)(typescript@5.6.2))(eslint-import-resolver-typescript@3.5.5(@typescript-eslint/parser@5.62.0(eslint@8.57.0)(typescript@5.6.2))(eslint-import-resolver-node@0.3.9)(eslint-plugin-import@2.29.1(@typescript-eslint/parser@5.62.0(eslint@8.57.0)(typescript@5.6.2))(eslint@8.57.0))(eslint@8.57.0))(eslint@8.57.0)
eslint-plugin-jsx-a11y: 6.9.0(eslint@8.57.0)
eslint-plugin-react: 7.35.0(eslint@8.57.0)
eslint-plugin-react-hooks: 5.0.0-canary-7118f5dd7-20230705(eslint@8.57.0)
@@ -28859,21 +29768,67 @@ snapshots:
- eslint-import-resolver-webpack
- supports-color
+ eslint-config-next@15.2.6(eslint@8.57.0)(typescript@5.6.2):
+ dependencies:
+ '@next/eslint-plugin-next': 15.2.6
+ '@rushstack/eslint-patch': 1.10.4
+ '@typescript-eslint/eslint-plugin': 5.62.0(@typescript-eslint/parser@5.62.0(eslint@8.57.0)(typescript@5.6.2))(eslint@8.57.0)(typescript@5.6.2)
+ '@typescript-eslint/parser': 5.62.0(eslint@8.57.0)(typescript@5.6.2)
+ eslint: 8.57.0
+ eslint-import-resolver-node: 0.3.9
+ eslint-import-resolver-typescript: 3.5.5(@typescript-eslint/parser@5.62.0(eslint@8.57.0)(typescript@5.6.2))(eslint-import-resolver-node@0.3.9)(eslint-plugin-import@2.32.0(@typescript-eslint/parser@5.62.0(eslint@8.57.0)(typescript@5.6.2))(eslint@8.57.0))(eslint@8.57.0)
+ eslint-plugin-import: 2.32.0(@typescript-eslint/parser@5.62.0(eslint@8.57.0)(typescript@5.6.2))(eslint-import-resolver-typescript@3.5.5(@typescript-eslint/parser@5.62.0(eslint@8.57.0)(typescript@5.6.2))(eslint-import-resolver-node@0.3.9)(eslint-plugin-import@2.32.0(@typescript-eslint/parser@5.62.0(eslint@8.57.0)(typescript@5.6.2))(eslint@8.57.0))(eslint@8.57.0))(eslint@8.57.0)
+ eslint-plugin-jsx-a11y: 6.10.2(eslint@8.57.0)
+ eslint-plugin-react: 7.37.5(eslint@8.57.0)
+ eslint-plugin-react-hooks: 5.0.0(eslint@8.57.0)
+ optionalDependencies:
+ typescript: 5.6.2
+ transitivePeerDependencies:
+ - eslint-import-resolver-webpack
+ - supports-color
+
+ eslint-config-react-app@7.0.1(@babel/plugin-syntax-flow@7.24.7(@babel/core@7.26.10))(@babel/plugin-transform-react-jsx@7.25.9(@babel/core@7.26.10))(eslint@8.57.0)(jest@27.5.1(bufferutil@4.0.8)(node-notifier@8.0.2)(ts-node@10.9.2(@swc/core@1.15.3(@swc/helpers@0.5.15))(@types/node@22.19.7)(typescript@5.6.2))(utf-8-validate@5.0.10))(typescript@5.6.2):
+ dependencies:
+ '@babel/core': 7.26.10
+ '@babel/eslint-parser': 7.22.9(@babel/core@7.26.10)(eslint@8.57.0)
+ '@rushstack/eslint-patch': 1.10.4
+ '@typescript-eslint/eslint-plugin': 5.62.0(@typescript-eslint/parser@5.62.0(eslint@8.57.0)(typescript@5.6.2))(eslint@8.57.0)(typescript@5.6.2)
+ '@typescript-eslint/parser': 5.62.0(eslint@8.57.0)(typescript@5.6.2)
+ babel-preset-react-app: 10.0.1
+ confusing-browser-globals: 1.0.11
+ eslint: 8.57.0
+ eslint-plugin-flowtype: 8.0.3(@babel/plugin-syntax-flow@7.24.7(@babel/core@7.26.10))(@babel/plugin-transform-react-jsx@7.25.9(@babel/core@7.26.10))(eslint@8.57.0)
+ eslint-plugin-import: 2.32.0(@typescript-eslint/parser@5.62.0(eslint@8.57.0)(typescript@5.6.2))(eslint-import-resolver-typescript@3.5.5(@typescript-eslint/parser@5.62.0(eslint@8.57.0)(typescript@5.6.2))(eslint-import-resolver-node@0.3.9)(eslint-plugin-import@2.32.0(@typescript-eslint/parser@5.62.0(eslint@8.57.0)(typescript@5.6.2))(eslint@8.57.0))(eslint@8.57.0))(eslint@8.57.0)
+ eslint-plugin-jest: 25.7.0(@typescript-eslint/eslint-plugin@5.62.0(@typescript-eslint/parser@5.62.0(eslint@8.57.0)(typescript@5.6.2))(eslint@8.57.0)(typescript@5.6.2))(eslint@8.57.0)(jest@27.5.1(bufferutil@4.0.8)(node-notifier@8.0.2)(ts-node@10.9.2(@swc/core@1.15.3(@swc/helpers@0.5.15))(@types/node@22.19.7)(typescript@5.6.2))(utf-8-validate@5.0.10))(typescript@5.6.2)
+ eslint-plugin-jsx-a11y: 6.10.2(eslint@8.57.0)
+ eslint-plugin-react: 7.37.5(eslint@8.57.0)
+ eslint-plugin-react-hooks: 4.6.0(eslint@8.57.0)
+ eslint-plugin-testing-library: 5.11.0(eslint@8.57.0)(typescript@5.6.2)
+ optionalDependencies:
+ typescript: 5.6.2
+ transitivePeerDependencies:
+ - '@babel/plugin-syntax-flow'
+ - '@babel/plugin-transform-react-jsx'
+ - eslint-import-resolver-typescript
+ - eslint-import-resolver-webpack
+ - jest
+ - supports-color
+
eslint-config-react-app@7.0.1(@babel/plugin-syntax-flow@7.24.7(@babel/core@7.26.10))(@babel/plugin-transform-react-jsx@7.25.9(@babel/core@7.26.10))(eslint@9.16.0(jiti@1.21.0))(jest@27.5.1(bufferutil@4.0.8)(node-notifier@8.0.2)(ts-node@10.9.2(@swc/core@1.15.3(@swc/helpers@0.5.15))(@types/node@22.19.7)(typescript@5.6.2))(utf-8-validate@5.0.10))(typescript@5.6.2):
dependencies:
'@babel/core': 7.26.10
'@babel/eslint-parser': 7.22.9(@babel/core@7.26.10)(eslint@9.16.0(jiti@1.21.0))
'@rushstack/eslint-patch': 1.10.4
- '@typescript-eslint/eslint-plugin': 5.62.0(@typescript-eslint/parser@5.62.0(eslint@9.16.0(jiti@1.21.0))(typescript@5.6.2))(eslint@9.16.0(jiti@1.21.0))(typescript@5.6.2)
+ '@typescript-eslint/eslint-plugin': 5.62.0(@typescript-eslint/parser@5.62.0(eslint@8.57.0)(typescript@5.6.2))(eslint@9.16.0(jiti@1.21.0))(typescript@5.6.2)
'@typescript-eslint/parser': 5.62.0(eslint@9.16.0(jiti@1.21.0))(typescript@5.6.2)
babel-preset-react-app: 10.0.1
confusing-browser-globals: 1.0.11
eslint: 9.16.0(jiti@1.21.0)
eslint-plugin-flowtype: 8.0.3(@babel/plugin-syntax-flow@7.24.7(@babel/core@7.26.10))(@babel/plugin-transform-react-jsx@7.25.9(@babel/core@7.26.10))(eslint@9.16.0(jiti@1.21.0))
- eslint-plugin-import: 2.29.1(@typescript-eslint/parser@5.62.0(eslint@9.16.0(jiti@1.21.0))(typescript@5.6.2))(eslint@9.16.0(jiti@1.21.0))
+ eslint-plugin-import: 2.32.0(@typescript-eslint/parser@5.62.0(eslint@8.57.0)(typescript@5.6.2))(eslint@9.16.0(jiti@1.21.0))
eslint-plugin-jest: 25.7.0(@typescript-eslint/eslint-plugin@5.62.0(@typescript-eslint/parser@5.62.0(eslint@8.57.0)(typescript@5.6.2))(eslint@8.57.0)(typescript@5.6.2))(eslint@9.16.0(jiti@1.21.0))(jest@27.5.1(bufferutil@4.0.8)(node-notifier@8.0.2)(ts-node@10.9.2(@swc/core@1.15.3(@swc/helpers@0.5.15))(@types/node@22.19.7)(typescript@5.6.2))(utf-8-validate@5.0.10))(typescript@5.6.2)
- eslint-plugin-jsx-a11y: 6.9.0(eslint@9.16.0(jiti@1.21.0))
- eslint-plugin-react: 7.35.0(eslint@9.16.0(jiti@1.21.0))
+ eslint-plugin-jsx-a11y: 6.10.2(eslint@9.16.0(jiti@1.21.0))
+ eslint-plugin-react: 7.37.5(eslint@9.16.0(jiti@1.21.0))
eslint-plugin-react-hooks: 4.6.0(eslint@9.16.0(jiti@1.21.0))
eslint-plugin-testing-library: 5.11.0(eslint@9.16.0(jiti@1.21.0))(typescript@5.6.2)
optionalDependencies:
@@ -28886,23 +29841,23 @@ snapshots:
- jest
- supports-color
- eslint-config-react-app@7.0.1(@babel/plugin-syntax-flow@7.24.7(@babel/core@7.26.9))(@babel/plugin-transform-react-jsx@7.25.9(@babel/core@7.26.9))(eslint@8.57.0)(jest@27.5.1(bufferutil@4.0.8)(node-notifier@8.0.2)(ts-node@10.9.2(@swc/core@1.15.3(@swc/helpers@0.5.15))(@types/node@22.19.7)(typescript@5.6.2))(utf-8-validate@5.0.10))(typescript@5.6.2):
+ eslint-config-react-app@7.0.1(@babel/plugin-syntax-flow@7.24.7(@babel/core@7.26.9))(@babel/plugin-transform-react-jsx@7.25.9(@babel/core@7.26.9))(eslint@9.16.0(jiti@1.21.0))(jest@27.5.1(bufferutil@4.0.8)(node-notifier@8.0.2)(ts-node@10.9.2(@swc/core@1.15.3(@swc/helpers@0.5.15))(@types/node@22.19.7)(typescript@5.6.2))(utf-8-validate@5.0.10))(typescript@5.6.2):
dependencies:
'@babel/core': 7.26.10
- '@babel/eslint-parser': 7.22.9(@babel/core@7.26.10)(eslint@8.57.0)
+ '@babel/eslint-parser': 7.22.9(@babel/core@7.26.10)(eslint@9.16.0(jiti@1.21.0))
'@rushstack/eslint-patch': 1.10.4
- '@typescript-eslint/eslint-plugin': 5.62.0(@typescript-eslint/parser@5.62.0(eslint@8.57.0)(typescript@5.6.2))(eslint@8.57.0)(typescript@5.6.2)
- '@typescript-eslint/parser': 5.62.0(eslint@8.57.0)(typescript@5.6.2)
+ '@typescript-eslint/eslint-plugin': 5.62.0(@typescript-eslint/parser@5.62.0(eslint@9.16.0(jiti@1.21.0))(typescript@5.6.2))(eslint@9.16.0(jiti@1.21.0))(typescript@5.6.2)
+ '@typescript-eslint/parser': 5.62.0(eslint@9.16.0(jiti@1.21.0))(typescript@5.6.2)
babel-preset-react-app: 10.0.1
confusing-browser-globals: 1.0.11
- eslint: 8.57.0
- eslint-plugin-flowtype: 8.0.3(@babel/plugin-syntax-flow@7.24.7(@babel/core@7.26.9))(@babel/plugin-transform-react-jsx@7.25.9(@babel/core@7.26.9))(eslint@8.57.0)
- eslint-plugin-import: 2.29.1(@typescript-eslint/parser@5.62.0(eslint@8.57.0)(typescript@5.6.2))(eslint-import-resolver-typescript@3.5.5)(eslint@8.57.0)
- eslint-plugin-jest: 25.7.0(@typescript-eslint/eslint-plugin@5.62.0(@typescript-eslint/parser@5.62.0(eslint@8.57.0)(typescript@5.6.2))(eslint@8.57.0)(typescript@5.6.2))(eslint@8.57.0)(jest@27.5.1(bufferutil@4.0.8)(node-notifier@8.0.2)(ts-node@10.9.2(@swc/core@1.15.3(@swc/helpers@0.5.15))(@types/node@22.19.7)(typescript@5.6.2))(utf-8-validate@5.0.10))(typescript@5.6.2)
- eslint-plugin-jsx-a11y: 6.9.0(eslint@8.57.0)
- eslint-plugin-react: 7.35.0(eslint@8.57.0)
- eslint-plugin-react-hooks: 4.6.0(eslint@8.57.0)
- eslint-plugin-testing-library: 5.11.0(eslint@8.57.0)(typescript@5.6.2)
+ eslint: 9.16.0(jiti@1.21.0)
+ eslint-plugin-flowtype: 8.0.3(@babel/plugin-syntax-flow@7.24.7(@babel/core@7.26.9))(@babel/plugin-transform-react-jsx@7.25.9(@babel/core@7.26.9))(eslint@9.16.0(jiti@1.21.0))
+ eslint-plugin-import: 2.32.0(@typescript-eslint/parser@5.62.0(eslint@9.16.0(jiti@1.21.0))(typescript@5.6.2))(eslint@9.16.0(jiti@1.21.0))
+ eslint-plugin-jest: 25.7.0(@typescript-eslint/eslint-plugin@5.62.0(@typescript-eslint/parser@5.62.0(eslint@9.16.0(jiti@1.21.0))(typescript@5.6.2))(eslint@9.16.0(jiti@1.21.0))(typescript@5.6.2))(eslint@9.16.0(jiti@1.21.0))(jest@27.5.1(bufferutil@4.0.8)(node-notifier@8.0.2)(ts-node@10.9.2(@swc/core@1.15.3(@swc/helpers@0.5.15))(@types/node@22.19.7)(typescript@5.6.2))(utf-8-validate@5.0.10))(typescript@5.6.2)
+ eslint-plugin-jsx-a11y: 6.10.2(eslint@9.16.0(jiti@1.21.0))
+ eslint-plugin-react: 7.37.5(eslint@9.16.0(jiti@1.21.0))
+ eslint-plugin-react-hooks: 4.6.0(eslint@9.16.0(jiti@1.21.0))
+ eslint-plugin-testing-library: 5.11.0(eslint@9.16.0(jiti@1.21.0))(typescript@5.6.2)
optionalDependencies:
typescript: 5.6.2
transitivePeerDependencies:
@@ -28927,7 +29882,7 @@ snapshots:
enhanced-resolve: 5.15.0
eslint: 8.57.0
eslint-module-utils: 2.8.1(@typescript-eslint/parser@5.62.0(eslint@8.57.0)(typescript@5.6.2))(eslint-import-resolver-node@0.3.9)(eslint-import-resolver-typescript@3.5.5(@typescript-eslint/parser@5.62.0(eslint@8.57.0)(typescript@5.6.2))(eslint-import-resolver-node@0.3.9)(eslint-plugin-import@2.29.1(@typescript-eslint/parser@5.62.0(eslint@8.57.0)(typescript@5.6.2))(eslint@8.57.0))(eslint@8.57.0))(eslint@8.57.0)
- eslint-plugin-import: 2.29.1(@typescript-eslint/parser@5.62.0(eslint@8.57.0)(typescript@5.6.2))(eslint-import-resolver-typescript@3.5.5)(eslint@8.57.0)
+ eslint-plugin-import: 2.29.1(@typescript-eslint/parser@5.62.0(eslint@8.57.0)(typescript@5.6.2))(eslint-import-resolver-typescript@3.5.5(@typescript-eslint/parser@5.62.0(eslint@8.57.0)(typescript@5.6.2))(eslint-import-resolver-node@0.3.9)(eslint-plugin-import@2.29.1(@typescript-eslint/parser@5.62.0(eslint@8.57.0)(typescript@5.6.2))(eslint@8.57.0))(eslint@8.57.0))(eslint@8.57.0)
get-tsconfig: 4.6.2
globby: 13.2.2
is-core-module: 2.15.0
@@ -28939,18 +29894,64 @@ snapshots:
- eslint-import-resolver-webpack
- supports-color
- eslint-module-utils@2.8.1(@typescript-eslint/parser@5.62.0(eslint@8.57.0)(typescript@5.6.2))(eslint-import-resolver-node@0.3.9)(eslint-import-resolver-typescript@3.5.5(@typescript-eslint/parser@5.62.0(eslint@8.57.0)(typescript@5.6.2))(eslint-import-resolver-node@0.3.9)(eslint-plugin-import@2.29.1(@typescript-eslint/parser@5.62.0(eslint@8.57.0)(typescript@5.6.2))(eslint@8.57.0))(eslint@8.57.0))(eslint@8.57.0):
+ eslint-import-resolver-typescript@3.5.5(@typescript-eslint/parser@5.62.0(eslint@8.57.0)(typescript@5.6.2))(eslint-import-resolver-node@0.3.9)(eslint-plugin-import@2.29.1)(eslint@8.57.0):
+ dependencies:
+ debug: 4.3.7(supports-color@8.1.1)
+ enhanced-resolve: 5.15.0
+ eslint: 8.57.0
+ eslint-module-utils: 2.8.1(@typescript-eslint/parser@5.62.0(eslint@8.57.0)(typescript@5.6.2))(eslint-import-resolver-node@0.3.9)(eslint-import-resolver-typescript@3.5.5)(eslint@8.57.0)
+ eslint-plugin-import: 2.29.1(@typescript-eslint/parser@5.62.0(eslint@8.57.0)(typescript@5.6.2))(eslint-import-resolver-typescript@3.5.5(@typescript-eslint/parser@5.62.0(eslint@8.57.0)(typescript@5.6.2))(eslint-import-resolver-node@0.3.9)(eslint-plugin-import@2.29.1(@typescript-eslint/parser@5.62.0(eslint@8.57.0)(typescript@5.6.2))(eslint@8.57.0))(eslint@8.57.0))(eslint@8.57.0)
+ get-tsconfig: 4.6.2
+ globby: 13.2.2
+ is-core-module: 2.15.0
+ is-glob: 4.0.3
+ synckit: 0.8.5
+ transitivePeerDependencies:
+ - '@typescript-eslint/parser'
+ - eslint-import-resolver-node
+ - eslint-import-resolver-webpack
+ - supports-color
+
+ eslint-import-resolver-typescript@3.5.5(@typescript-eslint/parser@5.62.0(eslint@8.57.0)(typescript@5.6.2))(eslint-import-resolver-node@0.3.9)(eslint-plugin-import@2.32.0(@typescript-eslint/parser@5.62.0(eslint@8.57.0)(typescript@5.6.2))(eslint@8.57.0))(eslint@8.57.0):
+ dependencies:
+ debug: 4.3.7(supports-color@8.1.1)
+ enhanced-resolve: 5.15.0
+ eslint: 8.57.0
+ eslint-module-utils: 2.8.1(@typescript-eslint/parser@5.62.0(eslint@8.57.0)(typescript@5.6.2))(eslint-import-resolver-node@0.3.9)(eslint-import-resolver-typescript@3.5.5(@typescript-eslint/parser@5.62.0(eslint@8.57.0)(typescript@5.6.2))(eslint-import-resolver-node@0.3.9)(eslint-plugin-import@2.32.0(@typescript-eslint/parser@5.62.0(eslint@8.57.0)(typescript@5.6.2))(eslint@8.57.0))(eslint@8.57.0))(eslint@8.57.0)
+ eslint-plugin-import: 2.32.0(@typescript-eslint/parser@5.62.0(eslint@8.57.0)(typescript@5.6.2))(eslint-import-resolver-typescript@3.5.5(@typescript-eslint/parser@5.62.0(eslint@8.57.0)(typescript@5.6.2))(eslint-import-resolver-node@0.3.9)(eslint-plugin-import@2.32.0(@typescript-eslint/parser@5.62.0(eslint@8.57.0)(typescript@5.6.2))(eslint@8.57.0))(eslint@8.57.0))(eslint@8.57.0)
+ get-tsconfig: 4.6.2
+ globby: 13.2.2
+ is-core-module: 2.15.0
+ is-glob: 4.0.3
+ synckit: 0.8.5
+ transitivePeerDependencies:
+ - '@typescript-eslint/parser'
+ - eslint-import-resolver-node
+ - eslint-import-resolver-webpack
+ - supports-color
+
+ eslint-module-utils@2.12.1(@typescript-eslint/parser@5.62.0(eslint@8.57.0)(typescript@5.6.2))(eslint-import-resolver-node@0.3.9)(eslint-import-resolver-typescript@3.5.5(@typescript-eslint/parser@5.62.0(eslint@8.57.0)(typescript@5.6.2))(eslint-import-resolver-node@0.3.9)(eslint-plugin-import@2.32.0(@typescript-eslint/parser@5.62.0(eslint@8.57.0)(typescript@5.6.2))(eslint@8.57.0))(eslint@8.57.0))(eslint@8.57.0):
dependencies:
debug: 3.2.7
optionalDependencies:
'@typescript-eslint/parser': 5.62.0(eslint@8.57.0)(typescript@5.6.2)
eslint: 8.57.0
eslint-import-resolver-node: 0.3.9
- eslint-import-resolver-typescript: 3.5.5(@typescript-eslint/parser@5.62.0(eslint@8.57.0)(typescript@5.6.2))(eslint-import-resolver-node@0.3.9)(eslint-plugin-import@2.29.1(@typescript-eslint/parser@5.62.0(eslint@8.57.0)(typescript@5.6.2))(eslint@8.57.0))(eslint@8.57.0)
+ eslint-import-resolver-typescript: 3.5.5(@typescript-eslint/parser@5.62.0(eslint@8.57.0)(typescript@5.6.2))(eslint-import-resolver-node@0.3.9)(eslint-plugin-import@2.32.0(@typescript-eslint/parser@5.62.0(eslint@8.57.0)(typescript@5.6.2))(eslint@8.57.0))(eslint@8.57.0)
+ transitivePeerDependencies:
+ - supports-color
+
+ eslint-module-utils@2.12.1(@typescript-eslint/parser@5.62.0(eslint@8.57.0)(typescript@5.6.2))(eslint-import-resolver-node@0.3.9)(eslint@9.16.0(jiti@1.21.0)):
+ dependencies:
+ debug: 3.2.7
+ optionalDependencies:
+ '@typescript-eslint/parser': 5.62.0(eslint@8.57.0)(typescript@5.6.2)
+ eslint: 9.16.0(jiti@1.21.0)
+ eslint-import-resolver-node: 0.3.9
transitivePeerDependencies:
- supports-color
- eslint-module-utils@2.8.1(@typescript-eslint/parser@5.62.0(eslint@9.16.0(jiti@1.21.0))(typescript@5.6.2))(eslint-import-resolver-node@0.3.9)(eslint@9.16.0(jiti@1.21.0)):
+ eslint-module-utils@2.12.1(@typescript-eslint/parser@5.62.0(eslint@9.16.0(jiti@1.21.0))(typescript@5.6.2))(eslint-import-resolver-node@0.3.9)(eslint@9.16.0(jiti@1.21.0)):
dependencies:
debug: 3.2.7
optionalDependencies:
@@ -28960,6 +29961,47 @@ snapshots:
transitivePeerDependencies:
- supports-color
+ eslint-module-utils@2.8.1(@typescript-eslint/parser@5.62.0(eslint@8.57.0)(typescript@5.6.2))(eslint-import-resolver-node@0.3.9)(eslint-import-resolver-typescript@3.5.5(@typescript-eslint/parser@5.62.0(eslint@8.57.0)(typescript@5.6.2))(eslint-import-resolver-node@0.3.9)(eslint-plugin-import@2.29.1(@typescript-eslint/parser@5.62.0(eslint@8.57.0)(typescript@5.6.2))(eslint@8.57.0))(eslint@8.57.0))(eslint@8.57.0):
+ dependencies:
+ debug: 3.2.7
+ optionalDependencies:
+ '@typescript-eslint/parser': 5.62.0(eslint@8.57.0)(typescript@5.6.2)
+ eslint: 8.57.0
+ eslint-import-resolver-node: 0.3.9
+ eslint-import-resolver-typescript: 3.5.5(@typescript-eslint/parser@5.62.0(eslint@8.57.0)(typescript@5.6.2))(eslint-import-resolver-node@0.3.9)(eslint-plugin-import@2.29.1(@typescript-eslint/parser@5.62.0(eslint@8.57.0)(typescript@5.6.2))(eslint@8.57.0))(eslint@8.57.0)
+ transitivePeerDependencies:
+ - supports-color
+
+ eslint-module-utils@2.8.1(@typescript-eslint/parser@5.62.0(eslint@8.57.0)(typescript@5.6.2))(eslint-import-resolver-node@0.3.9)(eslint-import-resolver-typescript@3.5.5(@typescript-eslint/parser@5.62.0(eslint@8.57.0)(typescript@5.6.2))(eslint-import-resolver-node@0.3.9)(eslint-plugin-import@2.32.0(@typescript-eslint/parser@5.62.0(eslint@8.57.0)(typescript@5.6.2))(eslint@8.57.0))(eslint@8.57.0))(eslint@8.57.0):
+ dependencies:
+ debug: 3.2.7
+ optionalDependencies:
+ '@typescript-eslint/parser': 5.62.0(eslint@8.57.0)(typescript@5.6.2)
+ eslint: 8.57.0
+ eslint-import-resolver-node: 0.3.9
+ eslint-import-resolver-typescript: 3.5.5(@typescript-eslint/parser@5.62.0(eslint@8.57.0)(typescript@5.6.2))(eslint-import-resolver-node@0.3.9)(eslint-plugin-import@2.32.0(@typescript-eslint/parser@5.62.0(eslint@8.57.0)(typescript@5.6.2))(eslint@8.57.0))(eslint@8.57.0)
+ transitivePeerDependencies:
+ - supports-color
+
+ eslint-module-utils@2.8.1(@typescript-eslint/parser@5.62.0(eslint@8.57.0)(typescript@5.6.2))(eslint-import-resolver-node@0.3.9)(eslint-import-resolver-typescript@3.5.5)(eslint@8.57.0):
+ dependencies:
+ debug: 3.2.7
+ optionalDependencies:
+ '@typescript-eslint/parser': 5.62.0(eslint@8.57.0)(typescript@5.6.2)
+ eslint: 8.57.0
+ eslint-import-resolver-node: 0.3.9
+ eslint-import-resolver-typescript: 3.5.5(@typescript-eslint/parser@5.62.0(eslint@8.57.0)(typescript@5.6.2))(eslint-import-resolver-node@0.3.9)(eslint-plugin-import@2.29.1)(eslint@8.57.0)
+ transitivePeerDependencies:
+ - supports-color
+
+ eslint-plugin-flowtype@8.0.3(@babel/plugin-syntax-flow@7.24.7(@babel/core@7.26.10))(@babel/plugin-transform-react-jsx@7.25.9(@babel/core@7.26.10))(eslint@8.57.0):
+ dependencies:
+ '@babel/plugin-syntax-flow': 7.24.7(@babel/core@7.26.10)
+ '@babel/plugin-transform-react-jsx': 7.25.9(@babel/core@7.26.10)
+ eslint: 8.57.0
+ lodash: 4.17.21
+ string-natural-compare: 3.0.1
+
eslint-plugin-flowtype@8.0.3(@babel/plugin-syntax-flow@7.24.7(@babel/core@7.26.10))(@babel/plugin-transform-react-jsx@7.25.9(@babel/core@7.26.10))(eslint@9.16.0(jiti@1.21.0)):
dependencies:
'@babel/plugin-syntax-flow': 7.24.7(@babel/core@7.26.10)
@@ -28968,15 +30010,15 @@ snapshots:
lodash: 4.17.21
string-natural-compare: 3.0.1
- eslint-plugin-flowtype@8.0.3(@babel/plugin-syntax-flow@7.24.7(@babel/core@7.26.9))(@babel/plugin-transform-react-jsx@7.25.9(@babel/core@7.26.9))(eslint@8.57.0):
+ eslint-plugin-flowtype@8.0.3(@babel/plugin-syntax-flow@7.24.7(@babel/core@7.26.9))(@babel/plugin-transform-react-jsx@7.25.9(@babel/core@7.26.9))(eslint@9.16.0(jiti@1.21.0)):
dependencies:
'@babel/plugin-syntax-flow': 7.24.7(@babel/core@7.26.9)
'@babel/plugin-transform-react-jsx': 7.25.9(@babel/core@7.26.9)
- eslint: 8.57.0
+ eslint: 9.16.0(jiti@1.21.0)
lodash: 4.17.21
string-natural-compare: 3.0.1
- eslint-plugin-import@2.29.1(@typescript-eslint/parser@5.62.0(eslint@8.57.0)(typescript@5.6.2))(eslint-import-resolver-typescript@3.5.5)(eslint@8.57.0):
+ eslint-plugin-import@2.29.1(@typescript-eslint/parser@5.62.0(eslint@8.57.0)(typescript@5.6.2))(eslint-import-resolver-typescript@3.5.5(@typescript-eslint/parser@5.62.0(eslint@8.57.0)(typescript@5.6.2))(eslint-import-resolver-node@0.3.9)(eslint-plugin-import@2.29.1(@typescript-eslint/parser@5.62.0(eslint@8.57.0)(typescript@5.6.2))(eslint@8.57.0))(eslint@8.57.0))(eslint@8.57.0):
dependencies:
array-includes: 3.1.8
array.prototype.findlastindex: 1.2.5
@@ -29003,25 +30045,85 @@ snapshots:
- eslint-import-resolver-webpack
- supports-color
- eslint-plugin-import@2.29.1(@typescript-eslint/parser@5.62.0(eslint@9.16.0(jiti@1.21.0))(typescript@5.6.2))(eslint@9.16.0(jiti@1.21.0)):
+ eslint-plugin-import@2.32.0(@typescript-eslint/parser@5.62.0(eslint@8.57.0)(typescript@5.6.2))(eslint-import-resolver-typescript@3.5.5(@typescript-eslint/parser@5.62.0(eslint@8.57.0)(typescript@5.6.2))(eslint-import-resolver-node@0.3.9)(eslint-plugin-import@2.32.0(@typescript-eslint/parser@5.62.0(eslint@8.57.0)(typescript@5.6.2))(eslint@8.57.0))(eslint@8.57.0))(eslint@8.57.0):
dependencies:
- array-includes: 3.1.8
- array.prototype.findlastindex: 1.2.5
- array.prototype.flat: 1.3.2
- array.prototype.flatmap: 1.3.2
+ '@rtsao/scc': 1.1.0
+ array-includes: 3.1.9
+ array.prototype.findlastindex: 1.2.6
+ array.prototype.flat: 1.3.3
+ array.prototype.flatmap: 1.3.3
+ debug: 3.2.7
+ doctrine: 2.1.0
+ eslint: 8.57.0
+ eslint-import-resolver-node: 0.3.9
+ eslint-module-utils: 2.12.1(@typescript-eslint/parser@5.62.0(eslint@8.57.0)(typescript@5.6.2))(eslint-import-resolver-node@0.3.9)(eslint-import-resolver-typescript@3.5.5(@typescript-eslint/parser@5.62.0(eslint@8.57.0)(typescript@5.6.2))(eslint-import-resolver-node@0.3.9)(eslint-plugin-import@2.32.0(@typescript-eslint/parser@5.62.0(eslint@8.57.0)(typescript@5.6.2))(eslint@8.57.0))(eslint@8.57.0))(eslint@8.57.0)
+ hasown: 2.0.2
+ is-core-module: 2.16.1
+ is-glob: 4.0.3
+ minimatch: 3.1.2
+ object.fromentries: 2.0.8
+ object.groupby: 1.0.3
+ object.values: 1.2.1
+ semver: 6.3.1
+ string.prototype.trimend: 1.0.9
+ tsconfig-paths: 3.15.0
+ optionalDependencies:
+ '@typescript-eslint/parser': 5.62.0(eslint@8.57.0)(typescript@5.6.2)
+ transitivePeerDependencies:
+ - eslint-import-resolver-typescript
+ - eslint-import-resolver-webpack
+ - supports-color
+
+ eslint-plugin-import@2.32.0(@typescript-eslint/parser@5.62.0(eslint@8.57.0)(typescript@5.6.2))(eslint@9.16.0(jiti@1.21.0)):
+ dependencies:
+ '@rtsao/scc': 1.1.0
+ array-includes: 3.1.9
+ array.prototype.findlastindex: 1.2.6
+ array.prototype.flat: 1.3.3
+ array.prototype.flatmap: 1.3.3
debug: 3.2.7
doctrine: 2.1.0
eslint: 9.16.0(jiti@1.21.0)
eslint-import-resolver-node: 0.3.9
- eslint-module-utils: 2.8.1(@typescript-eslint/parser@5.62.0(eslint@9.16.0(jiti@1.21.0))(typescript@5.6.2))(eslint-import-resolver-node@0.3.9)(eslint@9.16.0(jiti@1.21.0))
+ eslint-module-utils: 2.12.1(@typescript-eslint/parser@5.62.0(eslint@8.57.0)(typescript@5.6.2))(eslint-import-resolver-node@0.3.9)(eslint@9.16.0(jiti@1.21.0))
hasown: 2.0.2
- is-core-module: 2.15.0
+ is-core-module: 2.16.1
is-glob: 4.0.3
minimatch: 3.1.2
object.fromentries: 2.0.8
object.groupby: 1.0.3
- object.values: 1.2.0
+ object.values: 1.2.1
semver: 6.3.1
+ string.prototype.trimend: 1.0.9
+ tsconfig-paths: 3.15.0
+ optionalDependencies:
+ '@typescript-eslint/parser': 5.62.0(eslint@8.57.0)(typescript@5.6.2)
+ transitivePeerDependencies:
+ - eslint-import-resolver-typescript
+ - eslint-import-resolver-webpack
+ - supports-color
+
+ eslint-plugin-import@2.32.0(@typescript-eslint/parser@5.62.0(eslint@9.16.0(jiti@1.21.0))(typescript@5.6.2))(eslint@9.16.0(jiti@1.21.0)):
+ dependencies:
+ '@rtsao/scc': 1.1.0
+ array-includes: 3.1.9
+ array.prototype.findlastindex: 1.2.6
+ array.prototype.flat: 1.3.3
+ array.prototype.flatmap: 1.3.3
+ debug: 3.2.7
+ doctrine: 2.1.0
+ eslint: 9.16.0(jiti@1.21.0)
+ eslint-import-resolver-node: 0.3.9
+ eslint-module-utils: 2.12.1(@typescript-eslint/parser@5.62.0(eslint@9.16.0(jiti@1.21.0))(typescript@5.6.2))(eslint-import-resolver-node@0.3.9)(eslint@9.16.0(jiti@1.21.0))
+ hasown: 2.0.2
+ is-core-module: 2.16.1
+ is-glob: 4.0.3
+ minimatch: 3.1.2
+ object.fromentries: 2.0.8
+ object.groupby: 1.0.3
+ object.values: 1.2.1
+ semver: 6.3.1
+ string.prototype.trimend: 1.0.9
tsconfig-paths: 3.15.0
optionalDependencies:
'@typescript-eslint/parser': 5.62.0(eslint@9.16.0(jiti@1.21.0))(typescript@5.6.2)
@@ -29052,27 +30154,56 @@ snapshots:
- supports-color
- typescript
- eslint-plugin-jsx-a11y@6.9.0(eslint@8.57.0):
+ eslint-plugin-jest@25.7.0(@typescript-eslint/eslint-plugin@5.62.0(@typescript-eslint/parser@5.62.0(eslint@9.16.0(jiti@1.21.0))(typescript@5.6.2))(eslint@9.16.0(jiti@1.21.0))(typescript@5.6.2))(eslint@9.16.0(jiti@1.21.0))(jest@27.5.1(bufferutil@4.0.8)(node-notifier@8.0.2)(ts-node@10.9.2(@swc/core@1.15.3(@swc/helpers@0.5.15))(@types/node@22.19.7)(typescript@5.6.2))(utf-8-validate@5.0.10))(typescript@5.6.2):
dependencies:
- aria-query: 5.1.3
- array-includes: 3.1.8
- array.prototype.flatmap: 1.3.2
+ '@typescript-eslint/experimental-utils': 5.62.0(eslint@9.16.0(jiti@1.21.0))(typescript@5.6.2)
+ eslint: 9.16.0(jiti@1.21.0)
+ optionalDependencies:
+ '@typescript-eslint/eslint-plugin': 5.62.0(@typescript-eslint/parser@5.62.0(eslint@9.16.0(jiti@1.21.0))(typescript@5.6.2))(eslint@9.16.0(jiti@1.21.0))(typescript@5.6.2)
+ jest: 27.5.1(bufferutil@4.0.8)(node-notifier@8.0.2)(ts-node@10.9.2(@swc/core@1.15.3(@swc/helpers@0.5.15))(@types/node@22.19.7)(typescript@5.6.2))(utf-8-validate@5.0.10)
+ transitivePeerDependencies:
+ - supports-color
+ - typescript
+
+ eslint-plugin-jsx-a11y@6.10.2(eslint@8.57.0):
+ dependencies:
+ aria-query: 5.3.2
+ array-includes: 3.1.9
+ array.prototype.flatmap: 1.3.3
ast-types-flow: 0.0.8
- axe-core: 4.9.1
- axobject-query: 3.1.1
+ axe-core: 4.11.1
+ axobject-query: 4.1.0
damerau-levenshtein: 1.0.8
emoji-regex: 9.2.2
- es-iterator-helpers: 1.0.19
eslint: 8.57.0
hasown: 2.0.2
jsx-ast-utils: 3.3.5
language-tags: 1.0.9
minimatch: 3.1.2
object.fromentries: 2.0.8
- safe-regex-test: 1.0.3
- string.prototype.includes: 2.0.0
+ safe-regex-test: 1.1.0
+ string.prototype.includes: 2.0.1
+
+ eslint-plugin-jsx-a11y@6.10.2(eslint@9.16.0(jiti@1.21.0)):
+ dependencies:
+ aria-query: 5.3.2
+ array-includes: 3.1.9
+ array.prototype.flatmap: 1.3.3
+ ast-types-flow: 0.0.8
+ axe-core: 4.11.1
+ axobject-query: 4.1.0
+ damerau-levenshtein: 1.0.8
+ emoji-regex: 9.2.2
+ eslint: 9.16.0(jiti@1.21.0)
+ hasown: 2.0.2
+ jsx-ast-utils: 3.3.5
+ language-tags: 1.0.9
+ minimatch: 3.1.2
+ object.fromentries: 2.0.8
+ safe-regex-test: 1.1.0
+ string.prototype.includes: 2.0.1
- eslint-plugin-jsx-a11y@6.9.0(eslint@9.16.0(jiti@1.21.0)):
+ eslint-plugin-jsx-a11y@6.9.0(eslint@8.57.0):
dependencies:
aria-query: 5.1.3
array-includes: 3.1.8
@@ -29083,7 +30214,7 @@ snapshots:
damerau-levenshtein: 1.0.8
emoji-regex: 9.2.2
es-iterator-helpers: 1.0.19
- eslint: 9.16.0(jiti@1.21.0)
+ eslint: 8.57.0
hasown: 2.0.2
jsx-ast-utils: 3.3.5
language-tags: 1.0.9
@@ -29141,26 +30272,48 @@ snapshots:
string.prototype.matchall: 4.0.11
string.prototype.repeat: 1.0.0
- eslint-plugin-react@7.35.0(eslint@9.16.0(jiti@1.21.0)):
+ eslint-plugin-react@7.37.5(eslint@8.57.0):
dependencies:
- array-includes: 3.1.8
+ array-includes: 3.1.9
array.prototype.findlast: 1.2.5
- array.prototype.flatmap: 1.3.2
+ array.prototype.flatmap: 1.3.3
array.prototype.tosorted: 1.1.4
doctrine: 2.1.0
- es-iterator-helpers: 1.0.19
+ es-iterator-helpers: 1.2.2
+ eslint: 8.57.0
+ estraverse: 5.3.0
+ hasown: 2.0.2
+ jsx-ast-utils: 3.3.5
+ minimatch: 3.1.2
+ object.entries: 1.1.9
+ object.fromentries: 2.0.8
+ object.values: 1.2.1
+ prop-types: 15.8.1
+ resolve: 2.0.0-next.5
+ semver: 6.3.1
+ string.prototype.matchall: 4.0.12
+ string.prototype.repeat: 1.0.0
+
+ eslint-plugin-react@7.37.5(eslint@9.16.0(jiti@1.21.0)):
+ dependencies:
+ array-includes: 3.1.9
+ array.prototype.findlast: 1.2.5
+ array.prototype.flatmap: 1.3.3
+ array.prototype.tosorted: 1.1.4
+ doctrine: 2.1.0
+ es-iterator-helpers: 1.2.2
eslint: 9.16.0(jiti@1.21.0)
estraverse: 5.3.0
hasown: 2.0.2
jsx-ast-utils: 3.3.5
minimatch: 3.1.2
- object.entries: 1.1.8
+ object.entries: 1.1.9
object.fromentries: 2.0.8
- object.values: 1.2.0
+ object.values: 1.2.1
prop-types: 15.8.1
resolve: 2.0.0-next.5
semver: 6.3.1
- string.prototype.matchall: 4.0.11
+ string.prototype.matchall: 4.0.12
string.prototype.repeat: 1.0.0
eslint-plugin-testing-library@5.11.0(eslint@8.57.0)(typescript@5.6.2):
@@ -29766,6 +30919,14 @@ snapshots:
merge2: 1.4.1
micromatch: 4.0.5
+ fast-glob@3.3.1:
+ dependencies:
+ '@nodelib/fs.stat': 2.0.5
+ '@nodelib/fs.walk': 1.2.8
+ glob-parent: 5.1.2
+ merge2: 1.4.1
+ micromatch: 4.0.8
+
fast-glob@3.3.2:
dependencies:
'@nodelib/fs.stat': 2.0.5
@@ -29909,6 +31070,10 @@ snapshots:
dependencies:
to-regex-range: 5.0.1
+ fill-range@7.1.1:
+ dependencies:
+ to-regex-range: 5.0.1
+
filter-obj@1.1.0: {}
finalhandler@1.1.2:
@@ -30007,6 +31172,10 @@ snapshots:
dependencies:
is-callable: 1.2.7
+ for-each@0.3.5:
+ dependencies:
+ is-callable: 1.2.7
+
for-in@1.0.2: {}
foreground-child@3.1.1:
@@ -30172,6 +31341,15 @@ snapshots:
es-abstract: 1.23.3
functions-have-names: 1.2.3
+ function.prototype.name@1.1.8:
+ dependencies:
+ call-bind: 1.0.8
+ call-bound: 1.0.4
+ define-properties: 1.2.1
+ functions-have-names: 1.2.3
+ hasown: 2.0.2
+ is-callable: 1.2.7
+
functions-have-names@1.2.3: {}
futoin-hkdf@1.5.3: {}
@@ -30210,6 +31388,19 @@ snapshots:
has-symbols: 1.0.3
hasown: 2.0.2
+ get-intrinsic@1.3.0:
+ dependencies:
+ call-bind-apply-helpers: 1.0.2
+ es-define-property: 1.0.1
+ es-errors: 1.3.0
+ es-object-atoms: 1.1.1
+ function-bind: 1.1.2
+ get-proto: 1.0.1
+ gopd: 1.2.0
+ has-symbols: 1.1.0
+ hasown: 2.0.2
+ math-intrinsics: 1.1.0
+
get-own-enumerable-property-symbols@3.0.2: {}
get-package-type@0.1.0: {}
@@ -30222,6 +31413,11 @@ snapshots:
get-port@5.1.1: {}
+ get-proto@1.0.1:
+ dependencies:
+ dunder-proto: 1.0.1
+ es-object-atoms: 1.1.1
+
get-stream@3.0.0: {}
get-stream@4.1.0:
@@ -30242,6 +31438,12 @@ snapshots:
es-errors: 1.3.0
get-intrinsic: 1.2.4
+ get-symbol-description@1.1.0:
+ dependencies:
+ call-bound: 1.0.4
+ es-errors: 1.3.0
+ get-intrinsic: 1.3.0
+
get-tsconfig@4.6.2:
dependencies:
resolve-pkg-maps: 1.0.0
@@ -30398,6 +31600,8 @@ snapshots:
dependencies:
get-intrinsic: 1.2.4
+ gopd@1.2.0: {}
+
got@11.8.6:
dependencies:
'@sindresorhus/is': 4.6.0
@@ -30460,11 +31664,6 @@ snapshots:
- debug
- utf-8-validate
- hardhat-watcher@2.5.0(hardhat@2.22.6(bufferutil@4.0.8)(ts-node@10.9.2(@swc/core@1.15.3(@swc/helpers@0.5.15))(@types/node@20.14.13)(typescript@5.6.2))(typescript@5.6.2)(utf-8-validate@5.0.10)):
- dependencies:
- chokidar: 3.6.0
- hardhat: 2.22.6(bufferutil@4.0.8)(ts-node@10.9.2(@swc/core@1.15.3(@swc/helpers@0.5.15))(@types/node@20.14.13)(typescript@5.6.2))(typescript@5.6.2)(utf-8-validate@5.0.10)
-
hardhat-watcher@2.5.0(hardhat@2.22.6(bufferutil@4.0.8)(ts-node@10.9.2(@swc/core@1.15.3(@swc/helpers@0.5.15))(@types/node@22.19.7)(typescript@5.6.2))(typescript@5.6.2)(utf-8-validate@5.0.10)):
dependencies:
chokidar: 3.6.0
@@ -30594,8 +31793,14 @@ snapshots:
has-proto@1.0.3: {}
+ has-proto@1.2.0:
+ dependencies:
+ dunder-proto: 1.0.1
+
has-symbols@1.0.3: {}
+ has-symbols@1.1.0: {}
+
has-tostringtag@1.0.2:
dependencies:
has-symbols: 1.0.3
@@ -30956,6 +32161,12 @@ snapshots:
hasown: 2.0.2
side-channel: 1.0.6
+ internal-slot@1.1.0:
+ dependencies:
+ es-errors: 1.3.0
+ hasown: 2.0.2
+ side-channel: 1.1.0
+
interpret@1.4.0: {}
invariant@2.2.4:
@@ -31002,8 +32213,17 @@ snapshots:
call-bind: 1.0.7
get-intrinsic: 1.2.4
+ is-array-buffer@3.0.5:
+ dependencies:
+ call-bind: 1.0.8
+ call-bound: 1.0.4
+ get-intrinsic: 1.3.0
+
is-arrayish@0.2.1: {}
+ is-arrayish@0.3.4:
+ optional: true
+
is-async-function@2.0.0:
dependencies:
has-tostringtag: 1.0.2
@@ -31012,6 +32232,10 @@ snapshots:
dependencies:
has-bigints: 1.0.2
+ is-bigint@1.1.0:
+ dependencies:
+ has-bigints: 1.0.2
+
is-binary-path@2.1.0:
dependencies:
binary-extensions: 2.2.0
@@ -31021,6 +32245,11 @@ snapshots:
call-bind: 1.0.7
has-tostringtag: 1.0.2
+ is-boolean-object@1.2.2:
+ dependencies:
+ call-bound: 1.0.4
+ has-tostringtag: 1.0.2
+
is-buffer@1.1.6: {}
is-callable@1.2.7: {}
@@ -31033,6 +32262,10 @@ snapshots:
dependencies:
hasown: 2.0.2
+ is-core-module@2.16.1:
+ dependencies:
+ hasown: 2.0.2
+
is-data-descriptor@1.0.1:
dependencies:
hasown: 2.0.2
@@ -31041,10 +32274,21 @@ snapshots:
dependencies:
is-typed-array: 1.1.13
+ is-data-view@1.0.2:
+ dependencies:
+ call-bound: 1.0.4
+ get-intrinsic: 1.3.0
+ is-typed-array: 1.1.15
+
is-date-object@1.0.5:
dependencies:
has-tostringtag: 1.0.2
+ is-date-object@1.1.0:
+ dependencies:
+ call-bound: 1.0.4
+ has-tostringtag: 1.0.2
+
is-descriptor@0.1.7:
dependencies:
is-accessor-descriptor: 1.0.1
@@ -31073,6 +32317,10 @@ snapshots:
dependencies:
call-bind: 1.0.7
+ is-finalizationregistry@1.1.1:
+ dependencies:
+ call-bound: 1.0.4
+
is-fullwidth-code-point@2.0.0: {}
is-fullwidth-code-point@3.0.0: {}
@@ -31103,6 +32351,8 @@ snapshots:
is-map@2.0.2: {}
+ is-map@2.0.3: {}
+
is-module@1.0.0: {}
is-nan@1.3.2:
@@ -31118,6 +32368,11 @@ snapshots:
dependencies:
has-tostringtag: 1.0.2
+ is-number-object@1.1.1:
+ dependencies:
+ call-bound: 1.0.4
+ has-tostringtag: 1.0.2
+
is-number@3.0.0:
dependencies:
kind-of: 3.2.2
@@ -31149,16 +32404,29 @@ snapshots:
call-bind: 1.0.7
has-tostringtag: 1.0.2
+ is-regex@1.2.1:
+ dependencies:
+ call-bound: 1.0.4
+ gopd: 1.2.0
+ has-tostringtag: 1.0.2
+ hasown: 2.0.2
+
is-regexp@1.0.0: {}
is-root@2.1.0: {}
is-set@2.0.2: {}
+ is-set@2.0.3: {}
+
is-shared-array-buffer@1.0.3:
dependencies:
call-bind: 1.0.7
+ is-shared-array-buffer@1.0.4:
+ dependencies:
+ call-bound: 1.0.4
+
is-stream@1.1.0: {}
is-stream@2.0.1: {}
@@ -31169,14 +32437,29 @@ snapshots:
dependencies:
has-tostringtag: 1.0.2
+ is-string@1.1.1:
+ dependencies:
+ call-bound: 1.0.4
+ has-tostringtag: 1.0.2
+
is-symbol@1.0.4:
dependencies:
has-symbols: 1.0.3
+ is-symbol@1.1.1:
+ dependencies:
+ call-bound: 1.0.4
+ has-symbols: 1.1.0
+ safe-regex-test: 1.1.0
+
is-typed-array@1.1.13:
dependencies:
which-typed-array: 1.1.15
+ is-typed-array@1.1.15:
+ dependencies:
+ which-typed-array: 1.1.20
+
is-typedarray@1.0.0: {}
is-unicode-supported@0.1.0: {}
@@ -31187,15 +32470,26 @@ snapshots:
is-weakmap@2.0.1: {}
+ is-weakmap@2.0.2: {}
+
is-weakref@1.0.2:
dependencies:
call-bind: 1.0.7
+ is-weakref@1.1.1:
+ dependencies:
+ call-bound: 1.0.4
+
is-weakset@2.0.2:
dependencies:
call-bind: 1.0.7
get-intrinsic: 1.2.4
+ is-weakset@2.0.4:
+ dependencies:
+ call-bound: 1.0.4
+ get-intrinsic: 1.3.0
+
is-windows@1.0.2: {}
is-wsl@1.1.0: {}
@@ -31307,6 +32601,15 @@ snapshots:
reflect.getprototypeof: 1.0.6
set-function-name: 2.0.2
+ iterator.prototype@1.1.5:
+ dependencies:
+ define-data-property: 1.1.4
+ es-object-atoms: 1.1.1
+ get-intrinsic: 1.3.0
+ get-proto: 1.0.1
+ has-symbols: 1.1.0
+ set-function-name: 2.0.2
+
jackspeak@2.3.6:
dependencies:
'@isaacs/cliui': 8.0.2
@@ -31361,7 +32664,7 @@ snapshots:
'@jest/environment': 27.5.1
'@jest/test-result': 27.5.1
'@jest/types': 27.5.1
- '@types/node': 20.14.13
+ '@types/node': 22.19.7
chalk: 4.1.2
co: 4.6.0
dedent: 0.7.0
@@ -31386,7 +32689,7 @@ snapshots:
'@jest/expect': 29.7.0
'@jest/test-result': 29.7.0
'@jest/types': 29.6.3
- '@types/node': 20.14.13
+ '@types/node': 22.19.7
chalk: 4.1.2
co: 4.6.0
dedent: 1.5.3(babel-plugin-macros@3.1.0)
@@ -31506,7 +32809,7 @@ snapshots:
jest-environment-jsdom: 26.6.2(bufferutil@4.0.8)(utf-8-validate@5.0.10)
jest-environment-node: 26.6.2
jest-get-type: 26.3.0
- jest-jasmine2: 26.6.3(bufferutil@4.0.8)(ts-node@10.9.2(@swc/core@1.15.3(@swc/helpers@0.5.15))(@types/node@20.14.13)(typescript@5.6.2))(utf-8-validate@5.0.10)
+ jest-jasmine2: 26.6.3
jest-regex-util: 26.0.0
jest-resolve: 26.6.2
jest-util: 26.6.2
@@ -31586,7 +32889,7 @@ snapshots:
- babel-plugin-macros
- supports-color
- jest-config@29.7.0(@types/node@20.14.13)(babel-plugin-macros@3.1.0)(ts-node@10.9.2(@swc/core@1.15.3(@swc/helpers@0.5.15))(@types/node@22.19.7)(typescript@5.6.2)):
+ jest-config@29.7.0(@types/node@22.19.7)(babel-plugin-macros@3.1.0)(ts-node@10.9.2(@swc/core@1.15.3(@swc/helpers@0.5.15))(@types/node@20.14.13)(typescript@5.6.2)):
dependencies:
'@babel/core': 7.26.10
'@jest/test-sequencer': 29.7.0
@@ -31611,8 +32914,8 @@ snapshots:
slash: 3.0.0
strip-json-comments: 3.1.1
optionalDependencies:
- '@types/node': 20.14.13
- ts-node: 10.9.2(@swc/core@1.15.3(@swc/helpers@0.5.15))(@types/node@22.19.7)(typescript@5.6.2)
+ '@types/node': 22.19.7
+ ts-node: 10.9.2(@swc/core@1.15.3(@swc/helpers@0.5.15))(@types/node@20.14.13)(typescript@5.6.2)
transitivePeerDependencies:
- babel-plugin-macros
- supports-color
@@ -31727,7 +33030,7 @@ snapshots:
'@jest/environment': 26.6.2
'@jest/fake-timers': 26.6.2
'@jest/types': 26.6.2
- '@types/node': 20.14.13
+ '@types/node': 22.19.7
jest-mock: 26.6.2
jest-util: 26.6.2
jsdom: 16.7.0(bufferutil@4.0.8)(utf-8-validate@5.0.10)
@@ -31742,7 +33045,7 @@ snapshots:
'@jest/environment': 27.5.1
'@jest/fake-timers': 27.5.1
'@jest/types': 27.5.1
- '@types/node': 20.14.13
+ '@types/node': 22.19.7
jest-mock: 27.5.1
jest-util: 27.5.1
jsdom: 16.7.0(bufferutil@4.0.8)(utf-8-validate@5.0.10)
@@ -31758,7 +33061,7 @@ snapshots:
'@jest/fake-timers': 29.7.0
'@jest/types': 29.6.3
'@types/jsdom': 20.0.1
- '@types/node': 20.14.13
+ '@types/node': 22.19.7
jest-mock: 29.7.0
jest-util: 29.7.0
jsdom: 20.0.3(bufferutil@4.0.8)(utf-8-validate@5.0.10)
@@ -31772,7 +33075,7 @@ snapshots:
'@jest/environment': 26.6.2
'@jest/fake-timers': 26.6.2
'@jest/types': 26.6.2
- '@types/node': 20.14.13
+ '@types/node': 22.19.7
jest-mock: 26.6.2
jest-util: 26.6.2
@@ -31781,7 +33084,7 @@ snapshots:
'@jest/environment': 27.5.1
'@jest/fake-timers': 27.5.1
'@jest/types': 27.5.1
- '@types/node': 20.14.13
+ '@types/node': 22.19.7
jest-mock: 27.5.1
jest-util: 27.5.1
@@ -31790,7 +33093,7 @@ snapshots:
'@jest/environment': 29.7.0
'@jest/fake-timers': 29.7.0
'@jest/types': 29.6.3
- '@types/node': 20.14.13
+ '@types/node': 22.19.7
jest-mock: 29.7.0
jest-util: 29.7.0
@@ -31804,7 +33107,7 @@ snapshots:
dependencies:
'@jest/types': 26.6.2
'@types/graceful-fs': 4.1.6
- '@types/node': 20.14.13
+ '@types/node': 22.19.7
anymatch: 3.1.3
fb-watchman: 2.0.2
graceful-fs: 4.2.11
@@ -31824,7 +33127,7 @@ snapshots:
dependencies:
'@jest/types': 27.5.1
'@types/graceful-fs': 4.1.6
- '@types/node': 20.14.13
+ '@types/node': 22.19.7
anymatch: 3.1.3
fb-watchman: 2.0.2
graceful-fs: 4.2.11
@@ -31841,7 +33144,7 @@ snapshots:
dependencies:
'@jest/types': 29.6.3
'@types/graceful-fs': 4.1.6
- '@types/node': 20.14.13
+ '@types/node': 22.19.7
anymatch: 3.1.3
fb-watchman: 2.0.2
graceful-fs: 4.2.11
@@ -31853,14 +33156,14 @@ snapshots:
optionalDependencies:
fsevents: 2.3.3
- jest-jasmine2@26.6.3(bufferutil@4.0.8)(ts-node@10.9.2(@swc/core@1.15.3(@swc/helpers@0.5.15))(@types/node@20.14.13)(typescript@5.6.2))(utf-8-validate@5.0.10):
+ jest-jasmine2@26.6.3:
dependencies:
'@babel/traverse': 7.27.0
'@jest/environment': 26.6.2
'@jest/source-map': 26.6.2
'@jest/test-result': 26.6.2
'@jest/types': 26.6.2
- '@types/node': 20.14.13
+ '@types/node': 22.19.7
chalk: 4.1.2
co: 4.6.0
expect: 26.6.2
@@ -31874,11 +33177,7 @@ snapshots:
pretty-format: 26.6.2
throat: 5.0.0
transitivePeerDependencies:
- - bufferutil
- - canvas
- supports-color
- - ts-node
- - utf-8-validate
jest-jasmine2@27.5.1:
dependencies:
@@ -31886,7 +33185,7 @@ snapshots:
'@jest/source-map': 27.5.1
'@jest/test-result': 27.5.1
'@jest/types': 27.5.1
- '@types/node': 20.14.13
+ '@types/node': 22.19.7
chalk: 4.1.2
co: 4.6.0
expect: 27.5.1
@@ -31989,17 +33288,17 @@ snapshots:
jest-mock@26.6.2:
dependencies:
'@jest/types': 26.6.2
- '@types/node': 20.14.13
+ '@types/node': 22.19.7
jest-mock@27.5.1:
dependencies:
'@jest/types': 27.5.1
- '@types/node': 20.14.13
+ '@types/node': 22.19.7
jest-mock@29.7.0:
dependencies:
'@jest/types': 29.6.3
- '@types/node': 20.14.13
+ '@types/node': 22.19.7
jest-util: 29.7.0
jest-pnp-resolver@1.2.3(jest-resolve@26.6.2):
@@ -32087,7 +33386,7 @@ snapshots:
'@jest/environment': 26.6.2
'@jest/test-result': 26.6.2
'@jest/types': 26.6.2
- '@types/node': 20.14.13
+ '@types/node': 22.19.7
chalk: 4.1.2
emittery: 0.7.2
exit: 0.1.2
@@ -32117,7 +33416,7 @@ snapshots:
'@jest/test-result': 27.5.1
'@jest/transform': 27.5.1
'@jest/types': 27.5.1
- '@types/node': 20.14.13
+ '@types/node': 22.19.7
chalk: 4.1.2
emittery: 0.8.1
graceful-fs: 4.2.11
@@ -32146,7 +33445,7 @@ snapshots:
'@jest/test-result': 29.7.0
'@jest/transform': 29.7.0
'@jest/types': 29.6.3
- '@types/node': 20.14.13
+ '@types/node': 22.19.7
chalk: 4.1.2
emittery: 0.13.1
graceful-fs: 4.2.11
@@ -32237,7 +33536,7 @@ snapshots:
'@jest/test-result': 29.7.0
'@jest/transform': 29.7.0
'@jest/types': 29.6.3
- '@types/node': 20.14.13
+ '@types/node': 22.19.7
chalk: 4.1.2
cjs-module-lexer: 1.2.3
collect-v8-coverage: 1.0.2
@@ -32257,12 +33556,12 @@ snapshots:
jest-serializer@26.6.2:
dependencies:
- '@types/node': 20.14.13
+ '@types/node': 22.19.7
graceful-fs: 4.2.11
jest-serializer@27.5.1:
dependencies:
- '@types/node': 20.14.13
+ '@types/node': 22.19.7
graceful-fs: 4.2.11
jest-snapshot@26.6.2:
@@ -32341,7 +33640,7 @@ snapshots:
jest-util@26.6.2:
dependencies:
'@jest/types': 26.6.2
- '@types/node': 20.14.13
+ '@types/node': 22.19.7
chalk: 4.1.2
graceful-fs: 4.2.11
is-ci: 2.0.0
@@ -32350,7 +33649,7 @@ snapshots:
jest-util@27.5.1:
dependencies:
'@jest/types': 27.5.1
- '@types/node': 20.14.13
+ '@types/node': 22.19.7
chalk: 4.1.2
ci-info: 3.8.0
graceful-fs: 4.2.11
@@ -32359,7 +33658,7 @@ snapshots:
jest-util@28.1.3:
dependencies:
'@jest/types': 28.1.3
- '@types/node': 20.14.13
+ '@types/node': 22.19.7
chalk: 4.1.2
ci-info: 3.8.0
graceful-fs: 4.2.11
@@ -32368,7 +33667,7 @@ snapshots:
jest-util@29.7.0:
dependencies:
'@jest/types': 29.6.3
- '@types/node': 20.14.13
+ '@types/node': 22.19.7
chalk: 4.1.2
ci-info: 3.8.0
graceful-fs: 4.2.11
@@ -32416,7 +33715,7 @@ snapshots:
dependencies:
'@jest/test-result': 26.6.2
'@jest/types': 26.6.2
- '@types/node': 20.14.13
+ '@types/node': 22.19.7
ansi-escapes: 4.3.2
chalk: 4.1.2
jest-util: 26.6.2
@@ -32426,7 +33725,7 @@ snapshots:
dependencies:
'@jest/test-result': 27.5.1
'@jest/types': 27.5.1
- '@types/node': 20.14.13
+ '@types/node': 22.19.7
ansi-escapes: 4.3.2
chalk: 4.1.2
jest-util: 27.5.1
@@ -32436,7 +33735,7 @@ snapshots:
dependencies:
'@jest/test-result': 28.1.3
'@jest/types': 28.1.3
- '@types/node': 20.14.13
+ '@types/node': 22.19.7
ansi-escapes: 4.3.2
chalk: 4.1.2
emittery: 0.10.2
@@ -32447,7 +33746,7 @@ snapshots:
dependencies:
'@jest/test-result': 29.7.0
'@jest/types': 29.6.3
- '@types/node': 20.14.13
+ '@types/node': 22.19.7
ansi-escapes: 4.3.2
chalk: 4.1.2
emittery: 0.13.1
@@ -32456,25 +33755,25 @@ snapshots:
jest-worker@26.6.2:
dependencies:
- '@types/node': 20.14.13
+ '@types/node': 22.19.7
merge-stream: 2.0.0
supports-color: 7.2.0
jest-worker@27.5.1:
dependencies:
- '@types/node': 20.14.13
+ '@types/node': 22.19.7
merge-stream: 2.0.0
supports-color: 8.1.1
jest-worker@28.1.3:
dependencies:
- '@types/node': 20.14.13
+ '@types/node': 22.19.7
merge-stream: 2.0.0
supports-color: 8.1.1
jest-worker@29.7.0:
dependencies:
- '@types/node': 20.14.13
+ '@types/node': 22.19.7
jest-util: 29.7.0
merge-stream: 2.0.0
supports-color: 8.1.1
@@ -32519,6 +33818,20 @@ snapshots:
- supports-color
- ts-node
+ jest@29.7.0(@types/node@22.19.7)(babel-plugin-macros@3.1.0)(node-notifier@8.0.2):
+ dependencies:
+ '@jest/core': 29.7.0(babel-plugin-macros@3.1.0)(node-notifier@8.0.2)(ts-node@10.9.2(@swc/core@1.15.3(@swc/helpers@0.5.15))(@types/node@22.19.7)(typescript@5.6.2))
+ '@jest/types': 29.6.3
+ import-local: 3.1.0
+ jest-cli: 29.7.0(@types/node@22.19.7)(babel-plugin-macros@3.1.0)(node-notifier@8.0.2)(ts-node@10.9.2(@swc/core@1.15.3(@swc/helpers@0.5.15))(@types/node@22.19.7)(typescript@5.6.2))
+ optionalDependencies:
+ node-notifier: 8.0.2
+ transitivePeerDependencies:
+ - '@types/node'
+ - babel-plugin-macros
+ - supports-color
+ - ts-node
+
jest@29.7.0(@types/node@22.19.7)(babel-plugin-macros@3.1.0)(node-notifier@8.0.2)(ts-node@10.9.2(@swc/core@1.15.3(@swc/helpers@0.5.15))(@types/node@22.19.7)(typescript@5.6.2)):
dependencies:
'@jest/core': 29.7.0(babel-plugin-macros@3.1.0)(node-notifier@8.0.2)(ts-node@10.9.2(@swc/core@1.15.3(@swc/helpers@0.5.15))(@types/node@22.19.7)(typescript@5.6.2))
@@ -32588,7 +33901,7 @@ snapshots:
chalk: 4.1.2
flow-parser: 0.246.0
graceful-fs: 4.2.11
- micromatch: 4.0.5
+ micromatch: 4.0.8
neo-async: 2.6.2
node-dir: 0.1.17
recast: 0.21.5
@@ -33154,6 +34467,8 @@ snapshots:
marky@1.2.5: {}
+ math-intrinsics@1.1.0: {}
+
md5.js@1.3.5:
dependencies:
hash-base: 3.1.0
@@ -33245,7 +34560,7 @@ snapshots:
graceful-fs: 4.2.11
invariant: 2.2.4
jest-worker: 29.7.0
- micromatch: 4.0.5
+ micromatch: 4.0.8
node-abort-controller: 3.1.1
nullthrows: 1.1.1
walker: 1.0.8
@@ -33327,7 +34642,7 @@ snapshots:
metro@0.80.12(bufferutil@4.0.8)(utf-8-validate@5.0.10):
dependencies:
- '@babel/code-frame': 7.26.2
+ '@babel/code-frame': 7.29.0
'@babel/core': 7.26.10
'@babel/generator': 7.27.0
'@babel/parser': 7.27.0
@@ -33399,6 +34714,11 @@ snapshots:
braces: 3.0.2
picomatch: 2.3.1
+ micromatch@4.0.8:
+ dependencies:
+ braces: 3.0.3
+ picomatch: 2.3.1
+
miller-rabin@4.0.1:
dependencies:
bn.js: 4.12.0
@@ -33670,16 +34990,22 @@ snapshots:
dependencies:
'@segment/isodate': 1.0.3
- next-auth@5.0.0-beta.30(next@15.5.10(@babel/core@7.26.10)(babel-plugin-macros@3.1.0)(react-dom@18.3.1(react@19.0.0-rc-66855b96-20241106))(react@19.0.0-rc-66855b96-20241106))(react@19.0.0-rc-66855b96-20241106):
+ next-auth@5.0.0-beta.30(next@15.2.6(@babel/core@7.26.10)(@playwright/test@1.45.3)(babel-plugin-macros@3.1.0)(react-dom@18.3.1(react@19.0.0-rc-66855b96-20241106))(react@19.0.0-rc-66855b96-20241106))(react@19.0.0-rc-66855b96-20241106):
dependencies:
'@auth/core': 0.41.0
- next: 15.5.10(@babel/core@7.26.10)(babel-plugin-macros@3.1.0)(react-dom@18.3.1(react@19.0.0-rc-66855b96-20241106))(react@19.0.0-rc-66855b96-20241106)
+ next: 15.2.6(@babel/core@7.26.10)(@playwright/test@1.45.3)(babel-plugin-macros@3.1.0)(react-dom@18.3.1(react@19.0.0-rc-66855b96-20241106))(react@19.0.0-rc-66855b96-20241106)
react: 19.0.0-rc-66855b96-20241106
+ next-auth@5.0.0-beta.30(next@15.2.6(@babel/core@7.26.10)(@playwright/test@1.45.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(react@18.3.1):
+ dependencies:
+ '@auth/core': 0.41.0
+ next: 15.2.6(@babel/core@7.26.10)(@playwright/test@1.45.3)(babel-plugin-macros@3.1.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)
+ react: 18.3.1
+
next-auth@5.0.0-beta.30(next@15.5.10(@babel/core@7.26.10)(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(react@18.3.1):
dependencies:
'@auth/core': 0.41.0
- next: 15.5.10(@babel/core@7.26.10)(babel-plugin-macros@3.1.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)
+ next: 15.5.10(@babel/core@7.26.10)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)
react: 18.3.1
next@14.2.25(@babel/core@7.26.10)(@playwright/test@1.45.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1):
@@ -33687,7 +35013,7 @@ snapshots:
'@next/env': 14.2.25
'@swc/helpers': 0.5.5
busboy: 1.6.0
- caniuse-lite: 1.0.30001703
+ caniuse-lite: 1.0.30001760
graceful-fs: 4.2.11
postcss: 8.4.31
react: 18.3.1
@@ -33708,38 +35034,67 @@ snapshots:
- '@babel/core'
- babel-plugin-macros
- next@15.5.10(@babel/core@7.26.10)(babel-plugin-macros@3.1.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1):
+ next@15.2.6(@babel/core@7.26.10)(@playwright/test@1.45.3)(babel-plugin-macros@3.1.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1):
dependencies:
- '@next/env': 15.5.10
+ '@next/env': 15.2.6
+ '@swc/counter': 0.1.3
'@swc/helpers': 0.5.15
+ busboy: 1.6.0
caniuse-lite: 1.0.30001760
postcss: 8.4.31
react: 18.3.1
react-dom: 18.3.1(react@18.3.1)
styled-jsx: 5.1.6(@babel/core@7.26.10)(babel-plugin-macros@3.1.0)(react@18.3.1)
optionalDependencies:
- '@next/swc-darwin-arm64': 15.5.7
- '@next/swc-darwin-x64': 15.5.7
- '@next/swc-linux-arm64-gnu': 15.5.7
- '@next/swc-linux-arm64-musl': 15.5.7
- '@next/swc-linux-x64-gnu': 15.5.7
- '@next/swc-linux-x64-musl': 15.5.7
- '@next/swc-win32-arm64-msvc': 15.5.7
- '@next/swc-win32-x64-msvc': 15.5.7
- sharp: 0.34.5
+ '@next/swc-darwin-arm64': 15.2.5
+ '@next/swc-darwin-x64': 15.2.5
+ '@next/swc-linux-arm64-gnu': 15.2.5
+ '@next/swc-linux-arm64-musl': 15.2.5
+ '@next/swc-linux-x64-gnu': 15.2.5
+ '@next/swc-linux-x64-musl': 15.2.5
+ '@next/swc-win32-arm64-msvc': 15.2.5
+ '@next/swc-win32-x64-msvc': 15.2.5
+ '@playwright/test': 1.45.3
+ sharp: 0.33.5
transitivePeerDependencies:
- '@babel/core'
- babel-plugin-macros
- next@15.5.10(@babel/core@7.26.10)(babel-plugin-macros@3.1.0)(react-dom@18.3.1(react@19.0.0-rc-66855b96-20241106))(react@19.0.0-rc-66855b96-20241106):
+ next@15.2.6(@babel/core@7.26.10)(@playwright/test@1.45.3)(babel-plugin-macros@3.1.0)(react-dom@18.3.1(react@19.0.0-rc-66855b96-20241106))(react@19.0.0-rc-66855b96-20241106):
dependencies:
- '@next/env': 15.5.10
+ '@next/env': 15.2.6
+ '@swc/counter': 0.1.3
'@swc/helpers': 0.5.15
+ busboy: 1.6.0
caniuse-lite: 1.0.30001760
postcss: 8.4.31
react: 19.0.0-rc-66855b96-20241106
react-dom: 18.3.1(react@19.0.0-rc-66855b96-20241106)
styled-jsx: 5.1.6(@babel/core@7.26.10)(babel-plugin-macros@3.1.0)(react@19.0.0-rc-66855b96-20241106)
+ optionalDependencies:
+ '@next/swc-darwin-arm64': 15.2.5
+ '@next/swc-darwin-x64': 15.2.5
+ '@next/swc-linux-arm64-gnu': 15.2.5
+ '@next/swc-linux-arm64-musl': 15.2.5
+ '@next/swc-linux-x64-gnu': 15.2.5
+ '@next/swc-linux-x64-musl': 15.2.5
+ '@next/swc-win32-arm64-msvc': 15.2.5
+ '@next/swc-win32-x64-msvc': 15.2.5
+ '@playwright/test': 1.45.3
+ sharp: 0.33.5
+ transitivePeerDependencies:
+ - '@babel/core'
+ - babel-plugin-macros
+
+ next@15.5.10(@babel/core@7.26.10)(react-dom@18.3.1(react@18.3.1))(react@18.3.1):
+ dependencies:
+ '@next/env': 15.5.10
+ '@swc/helpers': 0.5.15
+ caniuse-lite: 1.0.30001760
+ postcss: 8.4.31
+ react: 18.3.1
+ react-dom: 18.3.1(react@18.3.1)
+ styled-jsx: 5.1.6(@babel/core@7.26.10)(babel-plugin-macros@3.1.0)(react@18.3.1)
optionalDependencies:
'@next/swc-darwin-arm64': 15.5.7
'@next/swc-darwin-x64': 15.5.7
@@ -34031,6 +35386,8 @@ snapshots:
object-inspect@1.13.1: {}
+ object-inspect@1.13.4: {}
+
object-is@1.1.5:
dependencies:
call-bind: 1.0.7
@@ -34049,12 +35406,28 @@ snapshots:
has-symbols: 1.0.3
object-keys: 1.1.1
+ object.assign@4.1.7:
+ dependencies:
+ call-bind: 1.0.8
+ call-bound: 1.0.4
+ define-properties: 1.2.1
+ es-object-atoms: 1.1.1
+ has-symbols: 1.1.0
+ object-keys: 1.1.1
+
object.entries@1.1.8:
dependencies:
call-bind: 1.0.7
define-properties: 1.2.1
es-object-atoms: 1.0.0
+ object.entries@1.1.9:
+ dependencies:
+ call-bind: 1.0.8
+ call-bound: 1.0.4
+ define-properties: 1.2.1
+ es-object-atoms: 1.1.1
+
object.fromentries@2.0.8:
dependencies:
call-bind: 1.0.7
@@ -34086,6 +35459,13 @@ snapshots:
define-properties: 1.2.1
es-object-atoms: 1.0.0
+ object.values@1.2.1:
+ dependencies:
+ call-bind: 1.0.8
+ call-bound: 1.0.4
+ define-properties: 1.2.1
+ es-object-atoms: 1.1.1
+
obliterator@2.0.4: {}
obuf@1.1.2: {}
@@ -34219,6 +35599,12 @@ snapshots:
outvariant@1.4.0: {}
+ own-keys@1.0.1:
+ dependencies:
+ get-intrinsic: 1.3.0
+ object-keys: 1.1.1
+ safe-push-apply: 1.0.0
+
ox@0.9.6(typescript@5.6.2):
dependencies:
'@adraffy/ens-normalize': 1.11.1
@@ -35184,7 +36570,7 @@ snapshots:
'@protobufjs/pool': 1.1.0
'@protobufjs/utf8': 1.1.0
'@types/long': 4.0.2
- '@types/node': 20.14.13
+ '@types/node': 22.19.7
long: 4.0.0
protobufjs@7.4.0:
@@ -35199,7 +36585,7 @@ snapshots:
'@protobufjs/path': 1.1.2
'@protobufjs/pool': 1.1.0
'@protobufjs/utf8': 1.1.0
- '@types/node': 20.14.13
+ '@types/node': 22.19.7
long: 5.2.3
proxy-addr@2.0.7:
@@ -35538,6 +36924,92 @@ snapshots:
'@remix-run/router': 1.7.2
react: 18.3.1
+ react-scripts@5.0.1(@babel/plugin-syntax-flow@7.24.7(@babel/core@7.26.10))(@babel/plugin-transform-react-jsx@7.25.9(@babel/core@7.26.10))(@swc/core@1.15.3(@swc/helpers@0.5.15))(@types/babel__core@7.20.5)(bufferutil@4.0.8)(esbuild@0.23.1)(eslint@8.57.0)(node-notifier@8.0.2)(react@18.3.1)(ts-node@10.9.2(@swc/core@1.15.3(@swc/helpers@0.5.15))(@types/node@22.19.7)(typescript@5.6.2))(type-fest@2.19.0)(typescript@5.6.2)(utf-8-validate@5.0.10):
+ dependencies:
+ '@babel/core': 7.26.9
+ '@pmmmwh/react-refresh-webpack-plugin': 0.5.10(react-refresh@0.11.0)(type-fest@2.19.0)(webpack-dev-server@4.15.1(bufferutil@4.0.8)(utf-8-validate@5.0.10)(webpack@5.88.2(@swc/core@1.15.3(@swc/helpers@0.5.15))(esbuild@0.23.1)))(webpack@5.88.2(@swc/core@1.15.3(@swc/helpers@0.5.15))(esbuild@0.23.1))
+ '@svgr/webpack': 5.5.0
+ babel-jest: 27.5.1(@babel/core@7.26.9)
+ babel-loader: 8.3.0(@babel/core@7.26.9)(webpack@5.88.2(@swc/core@1.15.3(@swc/helpers@0.5.15))(esbuild@0.23.1))
+ babel-plugin-named-asset-import: 0.3.8(@babel/core@7.26.9)
+ babel-preset-react-app: 10.0.1
+ bfj: 7.0.2
+ browserslist: 4.23.3
+ camelcase: 6.3.0
+ case-sensitive-paths-webpack-plugin: 2.4.0
+ css-loader: 6.8.1(webpack@5.88.2(@swc/core@1.15.3(@swc/helpers@0.5.15))(esbuild@0.23.1))
+ css-minimizer-webpack-plugin: 3.4.1(esbuild@0.23.1)(webpack@5.88.2(@swc/core@1.15.3(@swc/helpers@0.5.15))(esbuild@0.23.1))
+ dotenv: 10.0.0
+ dotenv-expand: 5.1.0
+ eslint: 8.57.0
+ eslint-config-react-app: 7.0.1(@babel/plugin-syntax-flow@7.24.7(@babel/core@7.26.10))(@babel/plugin-transform-react-jsx@7.25.9(@babel/core@7.26.10))(eslint@8.57.0)(jest@27.5.1(bufferutil@4.0.8)(node-notifier@8.0.2)(ts-node@10.9.2(@swc/core@1.15.3(@swc/helpers@0.5.15))(@types/node@22.19.7)(typescript@5.6.2))(utf-8-validate@5.0.10))(typescript@5.6.2)
+ eslint-webpack-plugin: 3.2.0(eslint@8.57.0)(webpack@5.88.2(@swc/core@1.15.3(@swc/helpers@0.5.15))(esbuild@0.23.1))
+ file-loader: 6.2.0(webpack@5.88.2(@swc/core@1.15.3(@swc/helpers@0.5.15))(esbuild@0.23.1))
+ fs-extra: 10.1.0
+ html-webpack-plugin: 5.5.3(webpack@5.88.2(@swc/core@1.15.3(@swc/helpers@0.5.15))(esbuild@0.23.1))
+ identity-obj-proxy: 3.0.0
+ jest: 27.5.1(bufferutil@4.0.8)(node-notifier@8.0.2)(ts-node@10.9.2(@swc/core@1.15.3(@swc/helpers@0.5.15))(@types/node@22.19.7)(typescript@5.6.2))(utf-8-validate@5.0.10)
+ jest-resolve: 27.5.1
+ jest-watch-typeahead: 1.1.0(jest@27.5.1(bufferutil@4.0.8)(node-notifier@8.0.2)(ts-node@10.9.2(@swc/core@1.15.3(@swc/helpers@0.5.15))(@types/node@22.19.7)(typescript@5.6.2))(utf-8-validate@5.0.10))
+ mini-css-extract-plugin: 2.7.6(webpack@5.88.2(@swc/core@1.15.3(@swc/helpers@0.5.15))(esbuild@0.23.1))
+ postcss: 8.4.49
+ postcss-flexbugs-fixes: 5.0.2(postcss@8.4.49)
+ postcss-loader: 6.2.1(postcss@8.4.49)(webpack@5.88.2(@swc/core@1.15.3(@swc/helpers@0.5.15))(esbuild@0.23.1))
+ postcss-normalize: 10.0.1(browserslist@4.23.3)(postcss@8.4.49)
+ postcss-preset-env: 7.8.3(postcss@8.4.49)
+ prompts: 2.4.2
+ react: 18.3.1
+ react-app-polyfill: 3.0.0
+ react-dev-utils: 12.0.1(eslint@8.57.0)(typescript@5.6.2)(webpack@5.88.2(@swc/core@1.15.3(@swc/helpers@0.5.15))(esbuild@0.23.1))
+ react-refresh: 0.11.0
+ resolve: 1.22.8
+ resolve-url-loader: 4.0.0
+ sass-loader: 12.6.0(webpack@5.88.2(@swc/core@1.15.3(@swc/helpers@0.5.15))(esbuild@0.23.1))
+ semver: 7.6.3
+ source-map-loader: 3.0.2(webpack@5.88.2(@swc/core@1.15.3(@swc/helpers@0.5.15))(esbuild@0.23.1))
+ style-loader: 3.3.3(webpack@5.88.2(@swc/core@1.15.3(@swc/helpers@0.5.15))(esbuild@0.23.1))
+ tailwindcss: 3.4.7(ts-node@10.9.2(@swc/core@1.15.3(@swc/helpers@0.5.15))(@types/node@22.19.7)(typescript@5.6.2))
+ terser-webpack-plugin: 5.3.9(@swc/core@1.15.3(@swc/helpers@0.5.15))(esbuild@0.23.1)(webpack@5.88.2(@swc/core@1.15.3(@swc/helpers@0.5.15))(esbuild@0.23.1))
+ webpack: 5.88.2(@swc/core@1.15.3(@swc/helpers@0.5.15))(esbuild@0.23.1)
+ webpack-dev-server: 4.15.1(bufferutil@4.0.8)(utf-8-validate@5.0.10)(webpack@5.88.2(@swc/core@1.15.3(@swc/helpers@0.5.15))(esbuild@0.23.1))
+ webpack-manifest-plugin: 4.1.1(webpack@5.88.2(@swc/core@1.15.3(@swc/helpers@0.5.15))(esbuild@0.23.1))
+ workbox-webpack-plugin: 6.6.0(@types/babel__core@7.20.5)(webpack@5.88.2(@swc/core@1.15.3(@swc/helpers@0.5.15))(esbuild@0.23.1))
+ optionalDependencies:
+ fsevents: 2.3.3
+ typescript: 5.6.2
+ transitivePeerDependencies:
+ - '@babel/plugin-syntax-flow'
+ - '@babel/plugin-transform-react-jsx'
+ - '@parcel/css'
+ - '@swc/core'
+ - '@types/babel__core'
+ - '@types/webpack'
+ - bufferutil
+ - canvas
+ - clean-css
+ - csso
+ - debug
+ - esbuild
+ - eslint-import-resolver-typescript
+ - eslint-import-resolver-webpack
+ - fibers
+ - node-notifier
+ - node-sass
+ - rework
+ - rework-visit
+ - sass
+ - sass-embedded
+ - sockjs-client
+ - supports-color
+ - ts-node
+ - type-fest
+ - uglify-js
+ - utf-8-validate
+ - vue-template-compiler
+ - webpack-cli
+ - webpack-hot-middleware
+ - webpack-plugin-serve
+
react-scripts@5.0.1(@babel/plugin-syntax-flow@7.24.7(@babel/core@7.26.10))(@babel/plugin-transform-react-jsx@7.25.9(@babel/core@7.26.10))(@swc/core@1.15.3(@swc/helpers@0.5.15))(@types/babel__core@7.20.5)(bufferutil@4.0.8)(esbuild@0.23.1)(eslint@9.16.0(jiti@1.21.0))(node-notifier@8.0.2)(react@18.3.1)(ts-node@10.9.2(@swc/core@1.15.3(@swc/helpers@0.5.15))(@types/node@22.19.7)(typescript@5.6.2))(type-fest@2.19.0)(typescript@5.6.2)(utf-8-validate@5.0.10):
dependencies:
'@babel/core': 7.26.9
@@ -35624,7 +37096,7 @@ snapshots:
- webpack-hot-middleware
- webpack-plugin-serve
- react-scripts@5.0.1(@babel/plugin-syntax-flow@7.24.7(@babel/core@7.26.9))(@babel/plugin-transform-react-jsx@7.25.9(@babel/core@7.26.9))(@swc/core@1.15.3(@swc/helpers@0.5.15))(@types/babel__core@7.20.5)(bufferutil@4.0.8)(esbuild@0.23.1)(eslint@8.57.0)(node-notifier@8.0.2)(react@18.3.1)(ts-node@10.9.2(@swc/core@1.15.3(@swc/helpers@0.5.15))(@types/node@22.19.7)(typescript@5.6.2))(type-fest@2.19.0)(typescript@5.6.2)(utf-8-validate@5.0.10):
+ react-scripts@5.0.1(@babel/plugin-syntax-flow@7.24.7(@babel/core@7.26.9))(@babel/plugin-transform-react-jsx@7.25.9(@babel/core@7.26.9))(@swc/core@1.15.3(@swc/helpers@0.5.15))(@types/babel__core@7.20.5)(bufferutil@4.0.8)(esbuild@0.23.1)(eslint@9.16.0(jiti@1.21.0))(node-notifier@8.0.2)(react@18.3.1)(ts-node@10.9.2(@swc/core@1.15.3(@swc/helpers@0.5.15))(@types/node@22.19.7)(typescript@5.6.2))(type-fest@2.19.0)(typescript@5.6.2)(utf-8-validate@5.0.10):
dependencies:
'@babel/core': 7.26.9
'@pmmmwh/react-refresh-webpack-plugin': 0.5.10(react-refresh@0.11.0)(type-fest@2.19.0)(webpack-dev-server@4.15.1(bufferutil@4.0.8)(utf-8-validate@5.0.10)(webpack@5.88.2(@swc/core@1.15.3(@swc/helpers@0.5.15))(esbuild@0.23.1)))(webpack@5.88.2(@swc/core@1.15.3(@swc/helpers@0.5.15))(esbuild@0.23.1))
@@ -35641,9 +37113,9 @@ snapshots:
css-minimizer-webpack-plugin: 3.4.1(esbuild@0.23.1)(webpack@5.88.2(@swc/core@1.15.3(@swc/helpers@0.5.15))(esbuild@0.23.1))
dotenv: 10.0.0
dotenv-expand: 5.1.0
- eslint: 8.57.0
- eslint-config-react-app: 7.0.1(@babel/plugin-syntax-flow@7.24.7(@babel/core@7.26.9))(@babel/plugin-transform-react-jsx@7.25.9(@babel/core@7.26.9))(eslint@8.57.0)(jest@27.5.1(bufferutil@4.0.8)(node-notifier@8.0.2)(ts-node@10.9.2(@swc/core@1.15.3(@swc/helpers@0.5.15))(@types/node@22.19.7)(typescript@5.6.2))(utf-8-validate@5.0.10))(typescript@5.6.2)
- eslint-webpack-plugin: 3.2.0(eslint@8.57.0)(webpack@5.88.2(@swc/core@1.15.3(@swc/helpers@0.5.15))(esbuild@0.23.1))
+ eslint: 9.16.0(jiti@1.21.0)
+ eslint-config-react-app: 7.0.1(@babel/plugin-syntax-flow@7.24.7(@babel/core@7.26.9))(@babel/plugin-transform-react-jsx@7.25.9(@babel/core@7.26.9))(eslint@9.16.0(jiti@1.21.0))(jest@27.5.1(bufferutil@4.0.8)(node-notifier@8.0.2)(ts-node@10.9.2(@swc/core@1.15.3(@swc/helpers@0.5.15))(@types/node@22.19.7)(typescript@5.6.2))(utf-8-validate@5.0.10))(typescript@5.6.2)
+ eslint-webpack-plugin: 3.2.0(eslint@9.16.0(jiti@1.21.0))(webpack@5.88.2(@swc/core@1.15.3(@swc/helpers@0.5.15))(esbuild@0.23.1))
file-loader: 6.2.0(webpack@5.88.2(@swc/core@1.15.3(@swc/helpers@0.5.15))(esbuild@0.23.1))
fs-extra: 10.1.0
html-webpack-plugin: 5.5.3(webpack@5.88.2(@swc/core@1.15.3(@swc/helpers@0.5.15))(esbuild@0.23.1))
@@ -35660,7 +37132,7 @@ snapshots:
prompts: 2.4.2
react: 18.3.1
react-app-polyfill: 3.0.0
- react-dev-utils: 12.0.1(eslint@8.57.0)(typescript@5.6.2)(webpack@5.88.2(@swc/core@1.15.3(@swc/helpers@0.5.15))(esbuild@0.23.1))
+ react-dev-utils: 12.0.1(eslint@9.16.0(jiti@1.21.0))(typescript@5.6.2)(webpack@5.88.2(@swc/core@1.15.3(@swc/helpers@0.5.15))(esbuild@0.23.1))
react-refresh: 0.11.0
resolve: 1.22.8
resolve-url-loader: 4.0.0
@@ -35821,6 +37293,17 @@ snapshots:
reflect-metadata@0.1.13: {}
+ reflect.getprototypeof@1.0.10:
+ dependencies:
+ call-bind: 1.0.8
+ define-properties: 1.2.1
+ es-abstract: 1.24.1
+ es-errors: 1.3.0
+ es-object-atoms: 1.1.1
+ get-intrinsic: 1.3.0
+ get-proto: 1.0.1
+ which-builtin-type: 1.2.1
+
reflect.getprototypeof@1.0.6:
dependencies:
call-bind: 1.0.7
@@ -35859,6 +37342,15 @@ snapshots:
es-errors: 1.3.0
set-function-name: 2.0.2
+ regexp.prototype.flags@1.5.4:
+ dependencies:
+ call-bind: 1.0.8
+ define-properties: 1.2.1
+ es-errors: 1.3.0
+ get-proto: 1.0.1
+ gopd: 1.2.0
+ set-function-name: 2.0.2
+
regexpu-core@6.2.0:
dependencies:
regenerate: 1.4.2
@@ -36077,16 +37569,35 @@ snapshots:
has-symbols: 1.0.3
isarray: 2.0.5
+ safe-array-concat@1.1.3:
+ dependencies:
+ call-bind: 1.0.8
+ call-bound: 1.0.4
+ get-intrinsic: 1.3.0
+ has-symbols: 1.1.0
+ isarray: 2.0.5
+
safe-buffer@5.1.2: {}
safe-buffer@5.2.1: {}
+ safe-push-apply@1.0.0:
+ dependencies:
+ es-errors: 1.3.0
+ isarray: 2.0.5
+
safe-regex-test@1.0.3:
dependencies:
call-bind: 1.0.7
es-errors: 1.3.0
is-regex: 1.1.4
+ safe-regex-test@1.1.0:
+ dependencies:
+ call-bound: 1.0.4
+ es-errors: 1.3.0
+ is-regex: 1.2.1
+
safe-regex2@3.1.0:
dependencies:
ret: 0.4.3
@@ -36376,6 +37887,12 @@ snapshots:
functions-have-names: 1.2.3
has-property-descriptors: 1.0.2
+ set-proto@1.0.0:
+ dependencies:
+ dunder-proto: 1.0.1
+ es-errors: 1.3.0
+ es-object-atoms: 1.1.1
+
set-value@2.0.1:
dependencies:
extend-shallow: 2.0.1
@@ -36403,6 +37920,33 @@ snapshots:
dependencies:
kind-of: 6.0.3
+ sharp@0.33.5:
+ dependencies:
+ color: 4.2.3
+ detect-libc: 2.1.2
+ semver: 7.7.3
+ optionalDependencies:
+ '@img/sharp-darwin-arm64': 0.33.5
+ '@img/sharp-darwin-x64': 0.33.5
+ '@img/sharp-libvips-darwin-arm64': 1.0.4
+ '@img/sharp-libvips-darwin-x64': 1.0.4
+ '@img/sharp-libvips-linux-arm': 1.0.5
+ '@img/sharp-libvips-linux-arm64': 1.0.4
+ '@img/sharp-libvips-linux-s390x': 1.0.4
+ '@img/sharp-libvips-linux-x64': 1.0.4
+ '@img/sharp-libvips-linuxmusl-arm64': 1.0.4
+ '@img/sharp-libvips-linuxmusl-x64': 1.0.4
+ '@img/sharp-linux-arm': 0.33.5
+ '@img/sharp-linux-arm64': 0.33.5
+ '@img/sharp-linux-s390x': 0.33.5
+ '@img/sharp-linux-x64': 0.33.5
+ '@img/sharp-linuxmusl-arm64': 0.33.5
+ '@img/sharp-linuxmusl-x64': 0.33.5
+ '@img/sharp-wasm32': 0.33.5
+ '@img/sharp-win32-ia32': 0.33.5
+ '@img/sharp-win32-x64': 0.33.5
+ optional: true
+
sharp@0.34.5:
dependencies:
'@img/colour': 1.0.0
@@ -36463,6 +38007,26 @@ snapshots:
'@shikijs/core': 1.12.1
'@types/hast': 3.0.4
+ side-channel-list@1.0.0:
+ dependencies:
+ es-errors: 1.3.0
+ object-inspect: 1.13.4
+
+ side-channel-map@1.0.1:
+ dependencies:
+ call-bound: 1.0.4
+ es-errors: 1.3.0
+ get-intrinsic: 1.3.0
+ object-inspect: 1.13.4
+
+ side-channel-weakmap@1.0.2:
+ dependencies:
+ call-bound: 1.0.4
+ es-errors: 1.3.0
+ get-intrinsic: 1.3.0
+ object-inspect: 1.13.4
+ side-channel-map: 1.0.1
+
side-channel@1.0.6:
dependencies:
call-bind: 1.0.7
@@ -36470,10 +38034,23 @@ snapshots:
get-intrinsic: 1.2.4
object-inspect: 1.13.1
+ side-channel@1.1.0:
+ dependencies:
+ es-errors: 1.3.0
+ object-inspect: 1.13.4
+ side-channel-list: 1.0.0
+ side-channel-map: 1.0.1
+ side-channel-weakmap: 1.0.2
+
signal-exit@3.0.7: {}
signal-exit@4.1.0: {}
+ simple-swizzle@0.2.4:
+ dependencies:
+ is-arrayish: 0.3.4
+ optional: true
+
sisteransi@1.0.5: {}
siwe@3.0.0(ethers@6.13.5(bufferutil@4.0.8)(utf-8-validate@5.0.10)):
@@ -36806,6 +38383,11 @@ snapshots:
dependencies:
internal-slot: 1.0.7
+ stop-iteration-iterator@1.1.0:
+ dependencies:
+ es-errors: 1.3.0
+ internal-slot: 1.1.0
+
stream-browserify@3.0.0:
dependencies:
inherits: 2.0.4
@@ -36890,6 +38472,12 @@ snapshots:
define-properties: 1.2.1
es-abstract: 1.23.3
+ string.prototype.includes@2.0.1:
+ dependencies:
+ call-bind: 1.0.8
+ define-properties: 1.2.1
+ es-abstract: 1.24.1
+
string.prototype.matchall@4.0.11:
dependencies:
call-bind: 1.0.7
@@ -36905,11 +38493,37 @@ snapshots:
set-function-name: 2.0.2
side-channel: 1.0.6
+ string.prototype.matchall@4.0.12:
+ dependencies:
+ call-bind: 1.0.8
+ call-bound: 1.0.4
+ define-properties: 1.2.1
+ es-abstract: 1.24.1
+ es-errors: 1.3.0
+ es-object-atoms: 1.1.1
+ get-intrinsic: 1.3.0
+ gopd: 1.2.0
+ has-symbols: 1.1.0
+ internal-slot: 1.1.0
+ regexp.prototype.flags: 1.5.4
+ set-function-name: 2.0.2
+ side-channel: 1.1.0
+
string.prototype.repeat@1.0.0:
dependencies:
define-properties: 1.2.1
es-abstract: 1.23.3
+ string.prototype.trim@1.2.10:
+ dependencies:
+ call-bind: 1.0.8
+ call-bound: 1.0.4
+ define-data-property: 1.1.4
+ define-properties: 1.2.1
+ es-abstract: 1.24.1
+ es-object-atoms: 1.1.1
+ has-property-descriptors: 1.0.2
+
string.prototype.trim@1.2.9:
dependencies:
call-bind: 1.0.7
@@ -36923,6 +38537,13 @@ snapshots:
define-properties: 1.2.1
es-object-atoms: 1.0.0
+ string.prototype.trimend@1.0.9:
+ dependencies:
+ call-bind: 1.0.8
+ call-bound: 1.0.4
+ define-properties: 1.2.1
+ es-object-atoms: 1.1.1
+
string.prototype.trimstart@1.0.8:
dependencies:
call-bind: 1.0.7
@@ -37557,12 +39178,12 @@ snapshots:
babel-jest: 29.7.0(@babel/core@7.26.10)
esbuild: 0.23.1
- ts-jest@29.2.5(@babel/core@7.26.9)(@jest/transform@29.7.0)(@jest/types@29.6.3)(babel-jest@29.7.0(@babel/core@7.26.9))(esbuild@0.23.1)(jest@29.7.0(@types/node@22.19.7)(babel-plugin-macros@3.1.0)(node-notifier@8.0.2)(ts-node@10.9.2(@swc/core@1.15.3(@swc/helpers@0.5.15))(@types/node@22.19.7)(typescript@5.6.2)))(typescript@5.6.2):
+ ts-jest@29.2.5(@babel/core@7.26.10)(@jest/transform@29.7.0)(@jest/types@29.6.3)(babel-jest@29.7.0(@babel/core@7.26.10))(esbuild@0.23.1)(jest@29.7.0(@types/node@22.19.7)(babel-plugin-macros@3.1.0)(node-notifier@8.0.2))(typescript@5.6.2):
dependencies:
bs-logger: 0.2.6
ejs: 3.1.10
fast-json-stable-stringify: 2.1.0
- jest: 29.7.0(@types/node@22.19.7)(babel-plugin-macros@3.1.0)(node-notifier@8.0.2)(ts-node@10.9.2(@swc/core@1.15.3(@swc/helpers@0.5.15))(@types/node@22.19.7)(typescript@5.6.2))
+ jest: 29.7.0(@types/node@22.19.7)(babel-plugin-macros@3.1.0)(node-notifier@8.0.2)
jest-util: 29.7.0
json5: 2.2.3
lodash.memoize: 4.1.2
@@ -37571,10 +39192,10 @@ snapshots:
typescript: 5.6.2
yargs-parser: 21.1.1
optionalDependencies:
- '@babel/core': 7.26.9
+ '@babel/core': 7.26.10
'@jest/transform': 29.7.0
'@jest/types': 29.6.3
- babel-jest: 29.7.0(@babel/core@7.26.9)
+ babel-jest: 29.7.0(@babel/core@7.26.10)
esbuild: 0.23.1
ts-mockito@2.6.1:
@@ -37843,6 +39464,12 @@ snapshots:
es-errors: 1.3.0
is-typed-array: 1.1.13
+ typed-array-buffer@1.0.3:
+ dependencies:
+ call-bound: 1.0.4
+ es-errors: 1.3.0
+ is-typed-array: 1.1.15
+
typed-array-byte-length@1.0.1:
dependencies:
call-bind: 1.0.7
@@ -37851,6 +39478,14 @@ snapshots:
has-proto: 1.0.3
is-typed-array: 1.1.13
+ typed-array-byte-length@1.0.3:
+ dependencies:
+ call-bind: 1.0.8
+ for-each: 0.3.5
+ gopd: 1.2.0
+ has-proto: 1.2.0
+ is-typed-array: 1.1.15
+
typed-array-byte-offset@1.0.2:
dependencies:
available-typed-arrays: 1.0.7
@@ -37860,6 +39495,16 @@ snapshots:
has-proto: 1.0.3
is-typed-array: 1.1.13
+ typed-array-byte-offset@1.0.4:
+ dependencies:
+ available-typed-arrays: 1.0.7
+ call-bind: 1.0.8
+ for-each: 0.3.5
+ gopd: 1.2.0
+ has-proto: 1.2.0
+ is-typed-array: 1.1.15
+ reflect.getprototypeof: 1.0.10
+
typed-array-length@1.0.6:
dependencies:
call-bind: 1.0.7
@@ -37869,6 +39514,15 @@ snapshots:
is-typed-array: 1.1.13
possible-typed-array-names: 1.0.0
+ typed-array-length@1.0.7:
+ dependencies:
+ call-bind: 1.0.8
+ for-each: 0.3.5
+ gopd: 1.2.0
+ is-typed-array: 1.1.15
+ possible-typed-array-names: 1.0.0
+ reflect.getprototypeof: 1.0.10
+
typedarray-to-buffer@3.1.5:
dependencies:
is-typedarray: 1.0.0
@@ -37922,6 +39576,13 @@ snapshots:
has-symbols: 1.0.3
which-boxed-primitive: 1.0.2
+ unbox-primitive@1.1.0:
+ dependencies:
+ call-bound: 1.0.4
+ has-bigints: 1.0.2
+ has-symbols: 1.1.0
+ which-boxed-primitive: 1.1.1
+
uncontrollable@7.2.1(react@18.3.1):
dependencies:
'@babel/runtime': 7.25.0
@@ -38481,6 +40142,14 @@ snapshots:
is-string: 1.0.7
is-symbol: 1.0.4
+ which-boxed-primitive@1.1.1:
+ dependencies:
+ is-bigint: 1.1.0
+ is-boolean-object: 1.2.2
+ is-number-object: 1.1.1
+ is-string: 1.1.1
+ is-symbol: 1.1.1
+
which-builtin-type@1.1.3:
dependencies:
function.prototype.name: 1.1.6
@@ -38496,6 +40165,22 @@ snapshots:
which-collection: 1.0.1
which-typed-array: 1.1.15
+ which-builtin-type@1.2.1:
+ dependencies:
+ call-bound: 1.0.4
+ function.prototype.name: 1.1.8
+ has-tostringtag: 1.0.2
+ is-async-function: 2.0.0
+ is-date-object: 1.1.0
+ is-finalizationregistry: 1.1.1
+ is-generator-function: 1.0.10
+ is-regex: 1.2.1
+ is-weakref: 1.1.1
+ isarray: 2.0.5
+ which-boxed-primitive: 1.1.1
+ which-collection: 1.0.2
+ which-typed-array: 1.1.20
+
which-collection@1.0.1:
dependencies:
is-map: 2.0.2
@@ -38503,6 +40188,13 @@ snapshots:
is-weakmap: 2.0.1
is-weakset: 2.0.2
+ which-collection@1.0.2:
+ dependencies:
+ is-map: 2.0.3
+ is-set: 2.0.3
+ is-weakmap: 2.0.2
+ is-weakset: 2.0.4
+
which-module@2.0.1: {}
which-typed-array@1.1.15:
@@ -38513,6 +40205,16 @@ snapshots:
gopd: 1.0.1
has-tostringtag: 1.0.2
+ which-typed-array@1.1.20:
+ dependencies:
+ available-typed-arrays: 1.0.7
+ call-bind: 1.0.8
+ call-bound: 1.0.4
+ for-each: 0.3.5
+ get-proto: 1.0.1
+ gopd: 1.2.0
+ has-tostringtag: 1.0.2
+
which@1.3.1:
dependencies:
isexe: 2.0.0