diff --git a/.eslintignore b/.eslintignore index 29f70af6b0d..e061d4c1b47 100644 --- a/.eslintignore +++ b/.eslintignore @@ -16,3 +16,6 @@ build .generated .github + +.coverage +.tsup diff --git a/docs/data/toolpad/core/all-components/all-components.md b/docs/data/toolpad/core/all-components/all-components.md index 287ebabff60..238a1d667e4 100644 --- a/docs/data/toolpad/core/all-components/all-components.md +++ b/docs/data/toolpad/core/all-components/all-components.md @@ -3,5 +3,7 @@

This page contains an index to the components included in Toolpad Core.

- [App Provider](/toolpad/core/react-app-provider/) +- [Account](/toolpad/core/react-account/) - [Dashboard Layout](/toolpad/core/react-dashboard-layout/) - [Data Grid](/toolpad/core/react-data-grid/) +- [Sign In Page](/toolpad/core/react-sign-in-page/) diff --git a/docs/data/toolpad/core/components/account/AccountCustom.js b/docs/data/toolpad/core/components/account/AccountCustom.js new file mode 100644 index 00000000000..8a31175e1b2 --- /dev/null +++ b/docs/data/toolpad/core/components/account/AccountCustom.js @@ -0,0 +1,47 @@ +import * as React from 'react'; +import { Account, AuthenticationContext, SessionContext } from '@toolpad/core'; + +export default function AccountCustom() { + const [session, setSession] = React.useState(null); + const authentication = React.useMemo(() => { + return { + signIn: () => { + setSession({ + user: { + name: 'Bharat Kashyap', + email: 'bharatkashyap@outlook.com', + image: 'https://avatars.githubusercontent.com/u/19550456', + }, + }); + }, + signOut: () => { + setSession(null); + }, + }; + }, []); + + return ( + // preview-start + + + + + + // preview-end + ); +} diff --git a/docs/data/toolpad/core/components/account/AccountCustom.tsx b/docs/data/toolpad/core/components/account/AccountCustom.tsx new file mode 100644 index 00000000000..0f59b4cf7c9 --- /dev/null +++ b/docs/data/toolpad/core/components/account/AccountCustom.tsx @@ -0,0 +1,52 @@ +import * as React from 'react'; +import { + Account, + AuthenticationContext, + SessionContext, + Session, +} from '@toolpad/core'; + +export default function AccountCustom() { + const [session, setSession] = React.useState(null); + const authentication = React.useMemo(() => { + return { + signIn: () => { + setSession({ + user: { + name: 'Bharat Kashyap', + email: 'bharatkashyap@outlook.com', + image: 'https://avatars.githubusercontent.com/u/19550456', + }, + }); + }, + signOut: () => { + setSession(null); + }, + }; + }, []); + + return ( + // preview-start + + + + + + // preview-end + ); +} diff --git a/docs/data/toolpad/core/components/account/AccountCustom.tsx.preview b/docs/data/toolpad/core/components/account/AccountCustom.tsx.preview new file mode 100644 index 00000000000..c5d5f4550b2 --- /dev/null +++ b/docs/data/toolpad/core/components/account/AccountCustom.tsx.preview @@ -0,0 +1,20 @@ + + + + + \ No newline at end of file diff --git a/docs/data/toolpad/core/components/account/AccountDemo.js b/docs/data/toolpad/core/components/account/AccountDemo.js new file mode 100644 index 00000000000..cdab8b6603d --- /dev/null +++ b/docs/data/toolpad/core/components/account/AccountDemo.js @@ -0,0 +1,30 @@ +import * as React from 'react'; +import { Account, AuthenticationContext, SessionContext } from '@toolpad/core'; + +export default function AccountDemo() { + const [session, setSession] = React.useState(null); + const authentication = React.useMemo(() => { + return { + signIn: () => { + setSession({ + user: { + name: 'Bharat Kashyap', + email: 'bharatkashyap@outlook.com', + image: 'https://avatars.githubusercontent.com/u/19550456', + }, + }); + }, + signOut: () => { + setSession(null); + }, + }; + }, []); + + return ( + + + + + + ); +} diff --git a/docs/data/toolpad/core/components/account/AccountDemo.tsx b/docs/data/toolpad/core/components/account/AccountDemo.tsx new file mode 100644 index 00000000000..fe964215d99 --- /dev/null +++ b/docs/data/toolpad/core/components/account/AccountDemo.tsx @@ -0,0 +1,35 @@ +import * as React from 'react'; +import { + Account, + AuthenticationContext, + SessionContext, + Session, +} from '@toolpad/core'; + +export default function AccountDemo() { + const [session, setSession] = React.useState(null); + const authentication = React.useMemo(() => { + return { + signIn: () => { + setSession({ + user: { + name: 'Bharat Kashyap', + email: 'bharatkashyap@outlook.com', + image: 'https://avatars.githubusercontent.com/u/19550456', + }, + }); + }, + signOut: () => { + setSession(null); + }, + }; + }, []); + + return ( + + + + + + ); +} diff --git a/docs/data/toolpad/core/components/account/AccountDemo.tsx.preview b/docs/data/toolpad/core/components/account/AccountDemo.tsx.preview new file mode 100644 index 00000000000..b0489ce20ca --- /dev/null +++ b/docs/data/toolpad/core/components/account/AccountDemo.tsx.preview @@ -0,0 +1,5 @@ + + + + + \ No newline at end of file diff --git a/docs/data/toolpad/core/components/account/AccountWithDashboard.js b/docs/data/toolpad/core/components/account/AccountWithDashboard.js new file mode 100644 index 00000000000..9490c00de3e --- /dev/null +++ b/docs/data/toolpad/core/components/account/AccountWithDashboard.js @@ -0,0 +1,37 @@ +import * as React from 'react'; +import Box from '@mui/material/Box'; +import { AppProvider, DashboardLayout } from '@toolpad/core'; + +export default function AccountWithDashboard() { + const [session, setSession] = React.useState({ + user: { + name: 'Bharat Kashyap', + email: 'bharatkashyap@outlook.com', + image: 'https://avatars.githubusercontent.com/u/19550456', + }, + }); + const authentication = React.useMemo(() => { + return { + signIn: () => { + setSession({ + user: { + name: 'Bharat Kashyap', + email: 'bharatkashyap@outlook.com', + image: 'https://avatars.githubusercontent.com/u/19550456', + }, + }); + }, + signOut: () => { + setSession(null); + }, + }; + }, []); + + return ( + + + Dashboard content + + + ); +} diff --git a/docs/data/toolpad/core/components/account/AccountWithDashboard.tsx b/docs/data/toolpad/core/components/account/AccountWithDashboard.tsx new file mode 100644 index 00000000000..f63a6721688 --- /dev/null +++ b/docs/data/toolpad/core/components/account/AccountWithDashboard.tsx @@ -0,0 +1,37 @@ +import * as React from 'react'; +import Box from '@mui/material/Box'; +import { Session, AppProvider, DashboardLayout } from '@toolpad/core'; + +export default function AccountWithDashboard() { + const [session, setSession] = React.useState({ + user: { + name: 'Bharat Kashyap', + email: 'bharatkashyap@outlook.com', + image: 'https://avatars.githubusercontent.com/u/19550456', + }, + }); + const authentication = React.useMemo(() => { + return { + signIn: () => { + setSession({ + user: { + name: 'Bharat Kashyap', + email: 'bharatkashyap@outlook.com', + image: 'https://avatars.githubusercontent.com/u/19550456', + }, + }); + }, + signOut: () => { + setSession(null); + }, + }; + }, []); + + return ( + + + Dashboard content + + + ); +} diff --git a/docs/data/toolpad/core/components/account/AccountWithDashboard.tsx.preview b/docs/data/toolpad/core/components/account/AccountWithDashboard.tsx.preview new file mode 100644 index 00000000000..32238be7a1b --- /dev/null +++ b/docs/data/toolpad/core/components/account/AccountWithDashboard.tsx.preview @@ -0,0 +1,3 @@ + + Dashboard content + \ No newline at end of file diff --git a/docs/data/toolpad/core/components/account/account.md b/docs/data/toolpad/core/components/account/account.md new file mode 100644 index 00000000000..331f4134a1f --- /dev/null +++ b/docs/data/toolpad/core/components/account/account.md @@ -0,0 +1,29 @@ +--- +productId: toolpad-core +title: Account +components: Account +--- + +# Account + +

A component that renders an account management dropdown for your application.

+ +The `Account` component is a quick and easy way to display an account management menu for authenticated users. It is deeply integrated with the `SignInPage` and `DashboardLayout` components, meaning that it automatically appears in the top navigation bar inside `DashboardLayout` once your users have signed in through the `SignInPage`. + +## States + +When signed out, the component renders as an inline sign in button within the dashboard layout. If a `session` object is present, the component is rendered as a dropdown containing the user's account details as well as an option to sign out. + +{{"demo": "AccountDemo.js", "bg": "gradient" }} + +## Customization + +### Components + +`Account` can take different labels for the sign in and sign out buttons through the `signInLabel` and `signOutLabel` props. Deeper changes can be made by passing in `slotProps` to the underlying components. + +{{"demo": "AccountCustom.js", "bg": "gradient" }} + +### 🚧 Composition + +The `Account` component allows adding your own menu options, including deeply nested options. This is in progress. diff --git a/docs/data/toolpad/core/components/dashboard-layout/dashboard-layout.md b/docs/data/toolpad/core/components/dashboard-layout/dashboard-layout.md index 097f03b3fef..9cce0b53cd1 100644 --- a/docs/data/toolpad/core/components/dashboard-layout/dashboard-layout.md +++ b/docs/data/toolpad/core/components/dashboard-layout/dashboard-layout.md @@ -1,7 +1,7 @@ --- productId: toolpad-core title: Dashboard Layout -components: AppProvider, DashboardLayout +components: AppProvider, DashboardLayout, Account --- # Dashboard Layout @@ -81,3 +81,13 @@ Nested navigation structures can be placed in the sidebar as items with the form Navigation links have an optional `action` prop that can be used to render any content on the right-side of the respective list item, such as badges with numbers, or buttons to toggle a popover menu. {{"demo": "DashboardLayoutNavigationActions.js", "height": 400, "iframe": true}} + +## Account + +The `DashboardLayout` comes integrated with the [``](/toolpad/core/react-account/) component. It renders as an account management menu when a user is signed in – a `session` object is present – and a button when not. + +:::warning +The use of an `iframe` may cause some spacing issues in the following demo. +::: + +{{"demo": "../account/AccountWithDashboard.js", "iframe": true, "height": 320 }} diff --git a/docs/data/toolpad/core/components/index.md b/docs/data/toolpad/core/components/index.md deleted file mode 100644 index 413dcb65b20..00000000000 --- a/docs/data/toolpad/core/components/index.md +++ /dev/null @@ -1,5 +0,0 @@ -# Components Index - -

This page contains an index to the component pages that come with Toolpad Core.

- -- [Dashboard Layout](/toolpad/core/components/dashboard-layout/) diff --git a/docs/data/toolpad/core/components/page-container/ActionsPageContainer.js b/docs/data/toolpad/core/components/page-container/ActionsPageContainer.js index bd038582dc5..6ebd86217b7 100644 --- a/docs/data/toolpad/core/components/page-container/ActionsPageContainer.js +++ b/docs/data/toolpad/core/components/page-container/ActionsPageContainer.js @@ -1,5 +1,5 @@ import * as React from 'react'; -import { useDemoRouter } from '@toolpad/core/internals/demo'; +import { useDemoRouter } from '@toolpad/core/internals'; import { PageContainer, PageContainerToolbar } from '@toolpad/core/PageContainer'; import { AppProvider } from '@toolpad/core/AppProvider'; import { LocalizationProvider } from '@mui/x-date-pickers-pro/LocalizationProvider'; diff --git a/docs/data/toolpad/core/components/page-container/ActionsPageContainer.tsx b/docs/data/toolpad/core/components/page-container/ActionsPageContainer.tsx index bcc66b0a839..563fb6ce4ae 100644 --- a/docs/data/toolpad/core/components/page-container/ActionsPageContainer.tsx +++ b/docs/data/toolpad/core/components/page-container/ActionsPageContainer.tsx @@ -1,5 +1,5 @@ import * as React from 'react'; -import { useDemoRouter } from '@toolpad/core/internals/demo'; +import { useDemoRouter } from '@toolpad/core/internals'; import { PageContainer, PageContainerToolbar } from '@toolpad/core/PageContainer'; import { AppProvider } from '@toolpad/core/AppProvider'; import { LocalizationProvider } from '@mui/x-date-pickers-pro/LocalizationProvider'; diff --git a/docs/data/toolpad/core/components/page-container/BasicPageContainer.js b/docs/data/toolpad/core/components/page-container/BasicPageContainer.js index 64ce4a613e4..a0104f331e5 100644 --- a/docs/data/toolpad/core/components/page-container/BasicPageContainer.js +++ b/docs/data/toolpad/core/components/page-container/BasicPageContainer.js @@ -1,7 +1,7 @@ import * as React from 'react'; import { PageContainer } from '@toolpad/core/PageContainer'; import { AppProvider } from '@toolpad/core/AppProvider'; -import { useDemoRouter } from '@toolpad/core/internals/demo'; +import { useDemoRouter } from '@toolpad/core/internals'; import { Paper, useTheme } from '@mui/material'; const NAVIGATION = [ diff --git a/docs/data/toolpad/core/components/page-container/BasicPageContainer.tsx b/docs/data/toolpad/core/components/page-container/BasicPageContainer.tsx index 64ce4a613e4..a0104f331e5 100644 --- a/docs/data/toolpad/core/components/page-container/BasicPageContainer.tsx +++ b/docs/data/toolpad/core/components/page-container/BasicPageContainer.tsx @@ -1,7 +1,7 @@ import * as React from 'react'; import { PageContainer } from '@toolpad/core/PageContainer'; import { AppProvider } from '@toolpad/core/AppProvider'; -import { useDemoRouter } from '@toolpad/core/internals/demo'; +import { useDemoRouter } from '@toolpad/core/internals'; import { Paper, useTheme } from '@mui/material'; const NAVIGATION = [ diff --git a/docs/data/toolpad/core/components/page-container/PageContent.js b/docs/data/toolpad/core/components/page-container/PageContent.js index 808c4242497..5a500556015 100644 --- a/docs/data/toolpad/core/components/page-container/PageContent.js +++ b/docs/data/toolpad/core/components/page-container/PageContent.js @@ -2,7 +2,7 @@ import * as React from 'react'; import Card from '@mui/material/Card'; import CardContent from '@mui/material/CardContent'; import Typography from '@mui/material/Typography'; -import Grid from '@mui/material/Unstable_Grid2'; +import Grid from '@mui/material/Grid2'; export default function PageContent() { return ( diff --git a/docs/data/toolpad/core/components/page-container/PageContent.tsx b/docs/data/toolpad/core/components/page-container/PageContent.tsx index 808c4242497..5a500556015 100644 --- a/docs/data/toolpad/core/components/page-container/PageContent.tsx +++ b/docs/data/toolpad/core/components/page-container/PageContent.tsx @@ -2,7 +2,7 @@ import * as React from 'react'; import Card from '@mui/material/Card'; import CardContent from '@mui/material/CardContent'; import Typography from '@mui/material/Typography'; -import Grid from '@mui/material/Unstable_Grid2'; +import Grid from '@mui/material/Grid2'; export default function PageContent() { return ( diff --git a/docs/data/toolpad/core/components/page-container/TitleBreadcrumbsPageContainer.js b/docs/data/toolpad/core/components/page-container/TitleBreadcrumbsPageContainer.js index 823139b1ad9..16b3ebbea05 100644 --- a/docs/data/toolpad/core/components/page-container/TitleBreadcrumbsPageContainer.js +++ b/docs/data/toolpad/core/components/page-container/TitleBreadcrumbsPageContainer.js @@ -1,7 +1,7 @@ import * as React from 'react'; import { PageContainer } from '@toolpad/core/PageContainer'; import { AppProvider } from '@toolpad/core/AppProvider'; -import { useDemoRouter } from '@toolpad/core/internals/demo'; +import { useDemoRouter } from '@toolpad/core/internals'; import { Paper, useTheme } from '@mui/material'; const NAVIGATION = [ diff --git a/docs/data/toolpad/core/components/page-container/TitleBreadcrumbsPageContainer.tsx b/docs/data/toolpad/core/components/page-container/TitleBreadcrumbsPageContainer.tsx index 823139b1ad9..16b3ebbea05 100644 --- a/docs/data/toolpad/core/components/page-container/TitleBreadcrumbsPageContainer.tsx +++ b/docs/data/toolpad/core/components/page-container/TitleBreadcrumbsPageContainer.tsx @@ -1,7 +1,7 @@ import * as React from 'react'; import { PageContainer } from '@toolpad/core/PageContainer'; import { AppProvider } from '@toolpad/core/AppProvider'; -import { useDemoRouter } from '@toolpad/core/internals/demo'; +import { useDemoRouter } from '@toolpad/core/internals'; import { Paper, useTheme } from '@mui/material'; const NAVIGATION = [ diff --git a/docs/data/toolpad/core/components/sign-in-page/AuthJsSignInApp.js b/docs/data/toolpad/core/components/sign-in-page/AuthJsSignInApp.js new file mode 100644 index 00000000000..6115d98479f --- /dev/null +++ b/docs/data/toolpad/core/components/sign-in-page/AuthJsSignInApp.js @@ -0,0 +1,46 @@ +/* eslint-disable import/no-unresolved */ + +import * as React from 'react'; +import { AuthError } from 'next-auth'; + +import { SignInPage } from '@toolpad/core/SignInPage'; +import { providerMap, signIn } from './auth'; + +export default function AuthJsSignInApp() { + return ( + { + 'use server'; + try { + return await signIn(provider.id, { + ...(formData && { + email: formData.get('email'), + password: formData.get('password'), + }), + redirectTo: callbackUrl ?? '/', + }); + } catch (error) { + if (error instanceof Error && error.message === 'NEXT_REDIRECT') { + throw error; + } + // Handle Auth.js errors + if (error instanceof AuthError) { + return { + error: + error.type === 'CredentialsSignin' + ? 'Invalid credentials.' + : 'An error with Auth.js occurred.', + type: error.type, + }; + } + // An error boundary must exist to handle unknown errors + return { + error: 'Something went wrong.', + type: 'UnknownError', + }; + } + }} + /> + ); +} diff --git a/docs/data/toolpad/core/components/sign-in-page/AuthJsSignInApp.tsx b/docs/data/toolpad/core/components/sign-in-page/AuthJsSignInApp.tsx new file mode 100644 index 00000000000..752dd11f531 --- /dev/null +++ b/docs/data/toolpad/core/components/sign-in-page/AuthJsSignInApp.tsx @@ -0,0 +1,50 @@ +/* eslint-disable import/no-unresolved */ + +import * as React from 'react'; +import { AuthError } from 'next-auth'; +import type { AuthProvider } from '@toolpad/core'; +import { SignInPage } from '@toolpad/core/SignInPage'; +import { providerMap, signIn } from './auth'; + +export default function AuthJsSignInApp() { + return ( + { + 'use server'; + try { + return await signIn(provider.id, { + ...(formData && { + email: formData.get('email'), + password: formData.get('password'), + }), + redirectTo: callbackUrl ?? '/', + }); + } catch (error) { + if (error instanceof Error && error.message === 'NEXT_REDIRECT') { + throw error; + } + // Handle Auth.js errors + if (error instanceof AuthError) { + return { + error: + error.type === 'CredentialsSignin' + ? 'Invalid credentials.' + : 'An error with Auth.js occurred.', + type: error.type, + }; + } + // An error boundary must exist to handle unknown errors + return { + error: 'Something went wrong.', + type: 'UnknownError', + }; + } + }} + /> + ); +} diff --git a/docs/data/toolpad/core/components/sign-in-page/BrandingSignInPage.js b/docs/data/toolpad/core/components/sign-in-page/BrandingSignInPage.js new file mode 100644 index 00000000000..a3c4307327b --- /dev/null +++ b/docs/data/toolpad/core/components/sign-in-page/BrandingSignInPage.js @@ -0,0 +1,55 @@ +import * as React from 'react'; +import { AppProvider, SignInPage } from '@toolpad/core'; +import { createTheme } from '@mui/material/styles'; +import { useColorSchemeShim } from 'docs/src/modules/components/ThemeContext'; +import { getDesignTokens } from './brandingTheme'; + +const providers = [ + { id: 'github', name: 'GitHub' }, + { id: 'google', name: 'Google' }, + { id: 'credentials', name: 'Email and Password' }, +]; + +// preview-start +const BRANDING = { + logo: ( + MUI logo + ), + title: 'MUI', +}; +// preview-end + +const signIn = async (provider) => { + const promise = new Promise((resolve) => { + setTimeout(() => { + console.log(`Sign in with ${provider.id}`); + resolve(); + }, 500); + }); + return promise; +}; + +export default function BrandingSignInPage() { + const { mode, systemMode } = useColorSchemeShim(); + const calculatedMode = (mode === 'system' ? systemMode : mode) ?? 'light'; + const brandingDesignTokens = getDesignTokens(calculatedMode); + const THEME = createTheme({ + ...brandingDesignTokens, + palette: { + ...brandingDesignTokens.palette, + mode: calculatedMode, + }, + }); + + return ( + // preview-start + + + + // preview-end + ); +} diff --git a/docs/data/toolpad/core/components/sign-in-page/BrandingSignInPage.tsx b/docs/data/toolpad/core/components/sign-in-page/BrandingSignInPage.tsx new file mode 100644 index 00000000000..23ba97e0e02 --- /dev/null +++ b/docs/data/toolpad/core/components/sign-in-page/BrandingSignInPage.tsx @@ -0,0 +1,54 @@ +import * as React from 'react'; +import { AuthProvider, AppProvider, SignInPage } from '@toolpad/core'; +import { createTheme } from '@mui/material/styles'; +import { useColorSchemeShim } from 'docs/src/modules/components/ThemeContext'; +import { getDesignTokens } from './brandingTheme'; + +const providers = [ + { id: 'github', name: 'GitHub' }, + { id: 'google', name: 'Google' }, + { id: 'credentials', name: 'Email and Password' }, +]; +// preview-start +const BRANDING = { + logo: ( + MUI logo + ), + title: 'MUI', +}; +// preview-end + +const signIn: (provider: AuthProvider) => void = async (provider) => { + const promise = new Promise((resolve) => { + setTimeout(() => { + console.log(`Sign in with ${provider.id}`); + resolve(); + }, 500); + }); + return promise; +}; + +export default function BrandingSignInPage() { + const { mode, systemMode } = useColorSchemeShim(); + const calculatedMode = (mode === 'system' ? systemMode : mode) ?? 'light'; + const brandingDesignTokens = getDesignTokens(calculatedMode); + const THEME = createTheme({ + ...brandingDesignTokens, + palette: { + ...brandingDesignTokens.palette, + mode: calculatedMode, + }, + }); + + return ( + // preview-start + + + + // preview-end + ); +} diff --git a/docs/data/toolpad/core/components/sign-in-page/BrandingSignInPage.tsx.preview b/docs/data/toolpad/core/components/sign-in-page/BrandingSignInPage.tsx.preview new file mode 100644 index 00000000000..e4142f33849 --- /dev/null +++ b/docs/data/toolpad/core/components/sign-in-page/BrandingSignInPage.tsx.preview @@ -0,0 +1,16 @@ +const BRANDING = { + logo: ( + MUI logo + ), + title: 'MUI', +}; + +// ... + + + + \ No newline at end of file diff --git a/docs/data/toolpad/core/components/sign-in-page/CredentialsSignInPage.js b/docs/data/toolpad/core/components/sign-in-page/CredentialsSignInPage.js new file mode 100644 index 00000000000..e28a37544c4 --- /dev/null +++ b/docs/data/toolpad/core/components/sign-in-page/CredentialsSignInPage.js @@ -0,0 +1,28 @@ +import * as React from 'react'; +import { AppProvider, SignInPage } from '@toolpad/core'; + +// preview-start +const providers = [{ id: 'credentials', name: 'Email and Password' }]; +// preview-end + +const signIn = async (provider, formData) => { + const promise = new Promise((resolve) => { + setTimeout(() => { + alert( + `Signing in with "${provider.name}" and credentials: ${formData.get('email')}, ${formData.get('password')}`, + ); + resolve(); + }, 300); + }); + return promise; +}; + +export default function CredentialsSignInPage() { + return ( + // preview-start + + + + // preview-end + ); +} diff --git a/docs/data/toolpad/core/components/sign-in-page/CredentialsSignInPage.tsx b/docs/data/toolpad/core/components/sign-in-page/CredentialsSignInPage.tsx new file mode 100644 index 00000000000..5139cfb2585 --- /dev/null +++ b/docs/data/toolpad/core/components/sign-in-page/CredentialsSignInPage.tsx @@ -0,0 +1,31 @@ +import * as React from 'react'; +import { AuthProvider, AppProvider, SignInPage } from '@toolpad/core'; + +// preview-start +const providers = [{ id: 'credentials', name: 'Email and Password' }]; +// preview-end + +const signIn: (provider: AuthProvider, formData: FormData) => void = async ( + provider, + formData, +) => { + const promise = new Promise((resolve) => { + setTimeout(() => { + alert( + `Signing in with "${provider.name}" and credentials: ${formData.get('email')}, ${formData.get('password')}`, + ); + resolve(); + }, 300); + }); + return promise; +}; + +export default function CredentialsSignInPage() { + return ( + // preview-start + + + + // preview-end + ); +} diff --git a/docs/data/toolpad/core/components/sign-in-page/CredentialsSignInPage.tsx.preview b/docs/data/toolpad/core/components/sign-in-page/CredentialsSignInPage.tsx.preview new file mode 100644 index 00000000000..0953c84aa37 --- /dev/null +++ b/docs/data/toolpad/core/components/sign-in-page/CredentialsSignInPage.tsx.preview @@ -0,0 +1,7 @@ +const providers = [{ id: 'credentials', name: 'Email and Password' }]; + +// ... + + + + \ No newline at end of file diff --git a/docs/data/toolpad/core/components/sign-in-page/NotificationsSignInPageError.js b/docs/data/toolpad/core/components/sign-in-page/NotificationsSignInPageError.js new file mode 100644 index 00000000000..9cc831112db --- /dev/null +++ b/docs/data/toolpad/core/components/sign-in-page/NotificationsSignInPageError.js @@ -0,0 +1,33 @@ +import * as React from 'react'; +import { AppProvider, SignInPage } from '@toolpad/core'; + +const providers = [{ id: 'credentials', name: 'Email and password' }]; + +const signIn = async (provider, formData) => { + const promise = new Promise((resolve) => { + setTimeout(() => { + const email = formData?.get('email'); + const password = formData?.get('password'); + alert( + `Signing in with "${provider.name}" and credentials: ${email}, ${password}`, + ); + // preview-start + resolve({ + type: 'CredentialsSignin', + error: 'Invalid credentials.', + }); + // preview-end + }, 300); + }); + return promise; +}; + +export default function NotificationsSignInPageError() { + return ( + // preview-start + + + + // preview-end + ); +} diff --git a/docs/data/toolpad/core/components/sign-in-page/NotificationsSignInPageError.tsx b/docs/data/toolpad/core/components/sign-in-page/NotificationsSignInPageError.tsx new file mode 100644 index 00000000000..22a135494b0 --- /dev/null +++ b/docs/data/toolpad/core/components/sign-in-page/NotificationsSignInPageError.tsx @@ -0,0 +1,36 @@ +import * as React from 'react'; +import { AuthProvider, AuthResponse, AppProvider, SignInPage } from '@toolpad/core'; + +const providers = [{ id: 'credentials', name: 'Email and password' }]; + +const signIn: ( + provider: AuthProvider, + formData?: FormData, +) => Promise | void = async (provider, formData) => { + const promise = new Promise((resolve) => { + setTimeout(() => { + const email = formData?.get('email'); + const password = formData?.get('password'); + alert( + `Signing in with "${provider.name}" and credentials: ${email}, ${password}`, + ); + // preview-start + resolve({ + type: 'CredentialsSignin', + error: 'Invalid credentials.', + }); + // preview-end + }, 300); + }); + return promise; +}; + +export default function NotificationsSignInPageError() { + return ( + // preview-start + + + + // preview-end + ); +} diff --git a/docs/data/toolpad/core/components/sign-in-page/NotificationsSignInPageError.tsx.preview b/docs/data/toolpad/core/components/sign-in-page/NotificationsSignInPageError.tsx.preview new file mode 100644 index 00000000000..6aafc3f6752 --- /dev/null +++ b/docs/data/toolpad/core/components/sign-in-page/NotificationsSignInPageError.tsx.preview @@ -0,0 +1,10 @@ +resolve({ + type: 'CredentialsSignin', + error: 'Invalid credentials.', +}); + +// ... + + + + \ No newline at end of file diff --git a/docs/data/toolpad/core/components/sign-in-page/OAuthSignInPage.js b/docs/data/toolpad/core/components/sign-in-page/OAuthSignInPage.js new file mode 100644 index 00000000000..deffe90a7c4 --- /dev/null +++ b/docs/data/toolpad/core/components/sign-in-page/OAuthSignInPage.js @@ -0,0 +1,31 @@ +import * as React from 'react'; +import { AppProvider, SignInPage } from '@toolpad/core'; + +// preview-start +const providers = [ + { id: 'github', name: 'GitHub' }, + { id: 'google', name: 'Google' }, + { id: 'facebook', name: 'Facebook' }, +]; + +// preview-end + +const signIn = async (provider) => { + const promise = new Promise((resolve) => { + setTimeout(() => { + console.log(`Sign in with ${provider.id}`); + resolve(); + }, 500); + }); + return promise; +}; + +export default function OAuthSignInPage() { + return ( + // preview-start + + + + // preview-end + ); +} diff --git a/docs/data/toolpad/core/components/sign-in-page/OAuthSignInPage.tsx b/docs/data/toolpad/core/components/sign-in-page/OAuthSignInPage.tsx new file mode 100644 index 00000000000..64539f77820 --- /dev/null +++ b/docs/data/toolpad/core/components/sign-in-page/OAuthSignInPage.tsx @@ -0,0 +1,30 @@ +import * as React from 'react'; +import { AuthProvider, AppProvider, SignInPage } from '@toolpad/core'; + +// preview-start +const providers = [ + { id: 'github', name: 'GitHub' }, + { id: 'google', name: 'Google' }, + { id: 'facebook', name: 'Facebook' }, +]; +// preview-end + +const signIn: (provider: AuthProvider) => void = async (provider) => { + const promise = new Promise((resolve) => { + setTimeout(() => { + console.log(`Sign in with ${provider.id}`); + resolve(); + }, 500); + }); + return promise; +}; + +export default function OAuthSignInPage() { + return ( + // preview-start + + + + // preview-end + ); +} diff --git a/docs/data/toolpad/core/components/sign-in-page/OAuthSignInPage.tsx.preview b/docs/data/toolpad/core/components/sign-in-page/OAuthSignInPage.tsx.preview new file mode 100644 index 00000000000..f235c162e7f --- /dev/null +++ b/docs/data/toolpad/core/components/sign-in-page/OAuthSignInPage.tsx.preview @@ -0,0 +1,11 @@ +const providers = [ + { id: 'github', name: 'GitHub' }, + { id: 'google', name: 'Google' }, + { id: 'facebook', name: 'Facebook' }, +]; + +// ... + + + + \ No newline at end of file diff --git a/docs/data/toolpad/core/components/sign-in-page/SlotPropsSignIn.js b/docs/data/toolpad/core/components/sign-in-page/SlotPropsSignIn.js new file mode 100644 index 00000000000..f5c6548d1f6 --- /dev/null +++ b/docs/data/toolpad/core/components/sign-in-page/SlotPropsSignIn.js @@ -0,0 +1,24 @@ +import * as React from 'react'; +import { AppProvider, SignInPage } from '@toolpad/core'; + +const providers = [{ id: 'credentials', name: 'Email and Password' }]; + +export default function SlotPropsSignIn() { + return ( + + + alert( + `Signing in with "${provider.name}" and credentials: ${formData.get('email')}, ${formData.get('password')}`, + ) + } + slotProps={{ + emailField: { variant: 'standard' }, + passwordField: { variant: 'standard' }, + submitButton: { variant: 'outlined' }, + }} + providers={providers} + /> + + ); +} diff --git a/docs/data/toolpad/core/components/sign-in-page/SlotPropsSignIn.tsx b/docs/data/toolpad/core/components/sign-in-page/SlotPropsSignIn.tsx new file mode 100644 index 00000000000..f5c6548d1f6 --- /dev/null +++ b/docs/data/toolpad/core/components/sign-in-page/SlotPropsSignIn.tsx @@ -0,0 +1,24 @@ +import * as React from 'react'; +import { AppProvider, SignInPage } from '@toolpad/core'; + +const providers = [{ id: 'credentials', name: 'Email and Password' }]; + +export default function SlotPropsSignIn() { + return ( + + + alert( + `Signing in with "${provider.name}" and credentials: ${formData.get('email')}, ${formData.get('password')}`, + ) + } + slotProps={{ + emailField: { variant: 'standard' }, + passwordField: { variant: 'standard' }, + submitButton: { variant: 'outlined' }, + }} + providers={providers} + /> + + ); +} diff --git a/docs/data/toolpad/core/components/sign-in-page/SlotPropsSignIn.tsx.preview b/docs/data/toolpad/core/components/sign-in-page/SlotPropsSignIn.tsx.preview new file mode 100644 index 00000000000..3d71e76fe4f --- /dev/null +++ b/docs/data/toolpad/core/components/sign-in-page/SlotPropsSignIn.tsx.preview @@ -0,0 +1,13 @@ + + alert( + `Signing in with "${provider.name}" and credentials: ${formData.get('email')}, ${formData.get('password')}`, + ) + } + slotProps={{ + emailField: { variant: 'standard' }, + passwordField: { variant: 'standard' }, + submitButton: { variant: 'outlined' }, + }} + providers={providers} +/> \ No newline at end of file diff --git a/docs/data/toolpad/core/components/sign-in-page/auth.js b/docs/data/toolpad/core/components/sign-in-page/auth.js new file mode 100644 index 00000000000..a5d9143825f --- /dev/null +++ b/docs/data/toolpad/core/components/sign-in-page/auth.js @@ -0,0 +1,38 @@ +/* eslint-disable import/no-unresolved */ +import NextAuth from 'next-auth'; +import GitHub from 'next-auth/providers/github'; + +const providers = [ + GitHub({ + clientId: process.env.AUTH_GITHUB_ID, + clientSecret: process.env.AUTH_GITHUB_SECRET, + }), +]; + +export const providerMap = providers.map((provider) => { + if (typeof provider === 'function') { + const providerData = provider(); + return { id: providerData.id, name: providerData.name }; + } + return { id: provider.id, name: provider.name }; +}); + +export const { handlers, auth, signIn, signOut } = NextAuth({ + providers, + secret: process.env.AUTH_SECRET, + pages: { + signIn: '/auth/signin', + }, + callbacks: { + authorized({ auth: session, request: { nextUrl } }) { + const isLoggedIn = !!session?.user; + const isPublicPage = nextUrl.pathname.startsWith('/public'); + + if (isPublicPage || isLoggedIn) { + return true; + } + + return false; // Redirect unauthenticated users to login page + }, + }, +}); diff --git a/docs/data/toolpad/core/components/sign-in-page/auth.ts b/docs/data/toolpad/core/components/sign-in-page/auth.ts new file mode 100644 index 00000000000..0a451bf19ff --- /dev/null +++ b/docs/data/toolpad/core/components/sign-in-page/auth.ts @@ -0,0 +1,39 @@ +/* eslint-disable import/no-unresolved */ +import NextAuth from 'next-auth'; +import GitHub from 'next-auth/providers/github'; +import type { Provider } from 'next-auth/providers'; + +const providers: Provider[] = [ + GitHub({ + clientId: process.env.AUTH_GITHUB_ID, + clientSecret: process.env.AUTH_GITHUB_SECRET, + }), +]; + +export const providerMap = providers.map((provider) => { + if (typeof provider === 'function') { + const providerData = provider(); + return { id: providerData.id, name: providerData.name }; + } + return { id: provider.id, name: provider.name }; +}); + +export const { handlers, auth, signIn, signOut } = NextAuth({ + providers, + secret: process.env.AUTH_SECRET, + pages: { + signIn: '/auth/signin', + }, + callbacks: { + authorized({ auth: session, request: { nextUrl } }) { + const isLoggedIn = !!session?.user; + const isPublicPage = nextUrl.pathname.startsWith('/public'); + + if (isPublicPage || isLoggedIn) { + return true; + } + + return false; // Redirect unauthenticated users to login page + }, + }, +}); diff --git a/docs/data/toolpad/core/components/sign-in-page/brandingTheme.js b/docs/data/toolpad/core/components/sign-in-page/brandingTheme.js new file mode 100644 index 00000000000..3c4e67a9552 --- /dev/null +++ b/docs/data/toolpad/core/components/sign-in-page/brandingTheme.js @@ -0,0 +1,242 @@ +import { createTheme, alpha } from '@mui/material/styles'; + +const defaultTheme = createTheme(); + +const blue = { + 50: '#F0F7FF', + 100: '#C2E0FF', + 200: '#99CCF3', + 300: '#66B2FF', + 400: '#3399FF', + main: '#007FFF', + 500: '#007FFF', + 600: '#0072E5', // vs blueDark 900: WCAG 4.6 AAA (large), APCA 36 Not for reading text + 700: '#0059B2', + 800: '#004C99', + 900: '#003A75', +}; +const blueDark = { + 50: '#E2EDF8', + 100: '#CEE0F3', + 200: '#91B9E3', + 300: '#5090D3', + main: '#5090D3', + 400: '#265D97', + 500: '#1E4976', + 600: '#173A5E', + 700: '#132F4C', // contrast 13.64:1 + 800: '#001E3C', + 900: '#0A1929', +}; +const grey = { + 50: '#F3F6F9', + 100: '#E7EBF0', + 200: '#E0E3E7', + 300: '#CDD2D7', // vs blueDark 900: WCAG 11.6 AAA, APCA 78 Best for text + 400: '#B2BAC2', // vs blueDark 900: WCAG 9 AAA, APCA 63.3 Ok for text + 500: '#A0AAB4', // vs blueDark 900: WCAG 7.5 AAA, APCA 54.3 Only for large text + 600: '#6F7E8C', // vs white bg: WCAG 4.1 AA, APCA 68.7 Ok for text + 700: '#3E5060', // vs white bg: WCAG 8.3 AAA, APCA 88.7 Best for text + 800: '#2D3843', // vs white bg: WCAG 11.9 AAA, APCA 97.3 Best for text + 900: '#1A2027', +}; + +const systemFont = [ + '-apple-system', + 'BlinkMacSystemFont', + '"Segoe UI"', + 'Roboto', + '"Helvetica Neue"', + 'Arial', + 'sans-serif', + '"Apple Color Emoji"', + '"Segoe UI Emoji"', + '"Segoe UI Symbol"', +]; + +export const getDesignTokens = (mode) => ({ + palette: { + primary: { + ...blue, + ...(mode === 'dark' && { + main: blue[400], + }), + }, + divider: mode === 'dark' ? alpha(blue[100], 0.08) : grey[100], + primaryDark: blueDark, + mode, + ...(mode === 'dark' && { + background: { + default: blueDark[800], + paper: blueDark[900], + }, + }), + common: { + black: '#1D1D1D', + }, + text: { + ...(mode === 'light' && { + primary: grey[900], + secondary: grey[700], + }), + ...(mode === 'dark' && { + primary: '#fff', + secondary: grey[400], + }), + }, + grey: { + ...(mode === 'light' && { + main: grey[100], + contrastText: grey[600], + }), + ...(mode === 'dark' && { + main: blueDark[700], + contrastText: grey[600], + }), + }, + error: { + 50: '#FFF0F1', + 100: '#FFDBDE', + 200: '#FFBDC2', + 300: '#FF99A2', + 400: '#FF7A86', + 500: '#FF505F', + main: '#EB0014', // contrast 4.63:1 + 600: '#EB0014', + 700: '#C70011', + 800: '#94000D', + 900: '#570007', + }, + success: { + 50: '#E9FBF0', + 100: '#C6F6D9', + 200: '#9AEFBC', + 300: '#6AE79C', + 400: '#3EE07F', + 500: '#21CC66', + 600: '#1DB45A', + ...(mode === 'light' && { + main: '#1AA251', // contrast 3.31:1 + }), + ...(mode === 'dark' && { + main: '#1DB45A', // contrast 6.17:1 (blueDark.800) + }), + 700: '#1AA251', + 800: '#178D46', + 900: '#0F5C2E', + }, + warning: { + 50: '#FFF9EB', + 100: '#FFF3C1', + 200: '#FFECA1', + 300: '#FFDC48', // vs blueDark900: WCAG 10.4 AAA, APCA 72 Ok for text + 400: '#F4C000', // vs blueDark900: WCAG 6.4 AA normal, APCA 48 Only large text + 500: '#DEA500', // vs blueDark900: WCAG 8 AAA normal, APCA 58 Only large text + main: '#DEA500', + 600: '#D18E00', // vs blueDark900: WCAG 6.4 AA normal, APCA 48 Only large text + 700: '#AB6800', // vs white bg: WCAG 4.4 AA large, APCA 71 Ok for text + 800: '#8C5800', // vs white bg: WCAG 5.9 AAA large, APCA 80 Best for text + 900: '#5A3600', // vs white bg: WCAG 10.7 AAA, APCA 95 Best for text + }, + action: { + ...(mode === 'dark' && { + hoverOpacity: 0.08, + active: grey[700], + disabled: grey[200], + }), + ...(mode === 'light' && { + hoverOpacity: 0.04, + active: grey[700], + disabled: alpha(grey[700], 0.3), + }), + }, + }, + shape: { + borderRadius: 10, + }, + spacing: 10, + typography: { + fontFamily: ['"IBM Plex Sans"', ...systemFont].join(','), + fontFamilyCode: [ + 'Consolas', + 'Menlo', + 'Monaco', + 'Andale Mono', + 'Ubuntu Mono', + 'monospace', + ].join(','), + fontFamilyTagline: ['"PlusJakartaSans-ExtraBold"', ...systemFont].join(','), + fontFamilySystem: systemFont.join(','), + fontWeightSemiBold: 600, + fontWeightExtraBold: 800, + h1: { + fontFamily: ['"PlusJakartaSans-ExtraBold"', ...systemFont].join(','), + fontSize: 'clamp(2.625rem, 1.2857rem + 3.5714vw, 4rem)', + fontWeight: 800, + lineHeight: 78 / 70, + ...(mode === 'light' && { + color: blueDark[900], + }), + }, + h2: { + fontFamily: ['"PlusJakartaSans-ExtraBold"', ...systemFont].join(','), + fontSize: 'clamp(1.5rem, 0.9643rem + 1.4286vw, 2.25rem)', + fontWeight: 800, + lineHeight: 44 / 36, + color: mode === 'dark' ? grey[100] : blueDark[700], + }, + h3: { + fontFamily: ['"PlusJakartaSans-Bold"', ...systemFont].join(','), + fontSize: defaultTheme.typography.pxToRem(36), + lineHeight: 44 / 36, + letterSpacing: 0.2, + }, + h4: { + fontFamily: ['"PlusJakartaSans-Bold"', ...systemFont].join(','), + fontSize: defaultTheme.typography.pxToRem(28), + lineHeight: 42 / 28, + letterSpacing: 0.2, + }, + h5: { + fontFamily: ['"PlusJakartaSans-Bold"', ...systemFont].join(','), + fontSize: defaultTheme.typography.pxToRem(24), + lineHeight: 36 / 24, + letterSpacing: 0.1, + color: mode === 'dark' ? blue[300] : blue.main, + }, + h6: { + fontSize: defaultTheme.typography.pxToRem(20), + lineHeight: 30 / 20, + }, + button: { + textTransform: 'initial', + fontWeight: 700, + letterSpacing: 0, + }, + subtitle1: { + fontSize: defaultTheme.typography.pxToRem(18), + lineHeight: 24 / 18, + letterSpacing: 0, + fontWeight: 500, + }, + body1: { + fontSize: defaultTheme.typography.pxToRem(16), // 16px + lineHeight: 24 / 16, + letterSpacing: 0, + }, + body2: { + fontSize: defaultTheme.typography.pxToRem(14), // 14px + lineHeight: 21 / 14, + letterSpacing: 0, + }, + caption: { + fontSize: defaultTheme.typography.pxToRem(12), // 12px + lineHeight: 18 / 12, + letterSpacing: 0, + fontWeight: 700, + }, + allVariants: { + scrollMarginTop: 'calc(var(--MuiDocs-header-height) + 32px)', + }, + }, +}); diff --git a/docs/data/toolpad/core/components/sign-in-page/brandingTheme.ts b/docs/data/toolpad/core/components/sign-in-page/brandingTheme.ts new file mode 100644 index 00000000000..4fffbe86298 --- /dev/null +++ b/docs/data/toolpad/core/components/sign-in-page/brandingTheme.ts @@ -0,0 +1,243 @@ +import { createTheme, ThemeOptions, alpha } from '@mui/material/styles'; + +const defaultTheme = createTheme(); + +const blue = { + 50: '#F0F7FF', + 100: '#C2E0FF', + 200: '#99CCF3', + 300: '#66B2FF', + 400: '#3399FF', + main: '#007FFF', + 500: '#007FFF', + 600: '#0072E5', // vs blueDark 900: WCAG 4.6 AAA (large), APCA 36 Not for reading text + 700: '#0059B2', + 800: '#004C99', + 900: '#003A75', +}; +const blueDark = { + 50: '#E2EDF8', + 100: '#CEE0F3', + 200: '#91B9E3', + 300: '#5090D3', + main: '#5090D3', + 400: '#265D97', + 500: '#1E4976', + 600: '#173A5E', + 700: '#132F4C', // contrast 13.64:1 + 800: '#001E3C', + 900: '#0A1929', +}; +const grey = { + 50: '#F3F6F9', + 100: '#E7EBF0', + 200: '#E0E3E7', + 300: '#CDD2D7', // vs blueDark 900: WCAG 11.6 AAA, APCA 78 Best for text + 400: '#B2BAC2', // vs blueDark 900: WCAG 9 AAA, APCA 63.3 Ok for text + 500: '#A0AAB4', // vs blueDark 900: WCAG 7.5 AAA, APCA 54.3 Only for large text + 600: '#6F7E8C', // vs white bg: WCAG 4.1 AA, APCA 68.7 Ok for text + 700: '#3E5060', // vs white bg: WCAG 8.3 AAA, APCA 88.7 Best for text + 800: '#2D3843', // vs white bg: WCAG 11.9 AAA, APCA 97.3 Best for text + 900: '#1A2027', +}; + +const systemFont = [ + '-apple-system', + 'BlinkMacSystemFont', + '"Segoe UI"', + 'Roboto', + '"Helvetica Neue"', + 'Arial', + 'sans-serif', + '"Apple Color Emoji"', + '"Segoe UI Emoji"', + '"Segoe UI Symbol"', +]; + +export const getDesignTokens = (mode: 'light' | 'dark') => + ({ + palette: { + primary: { + ...blue, + ...(mode === 'dark' && { + main: blue[400], + }), + }, + divider: mode === 'dark' ? alpha(blue[100], 0.08) : grey[100], + primaryDark: blueDark, + mode, + ...(mode === 'dark' && { + background: { + default: blueDark[800], + paper: blueDark[900], + }, + }), + common: { + black: '#1D1D1D', + }, + text: { + ...(mode === 'light' && { + primary: grey[900], + secondary: grey[700], + }), + ...(mode === 'dark' && { + primary: '#fff', + secondary: grey[400], + }), + }, + grey: { + ...(mode === 'light' && { + main: grey[100], + contrastText: grey[600], + }), + ...(mode === 'dark' && { + main: blueDark[700], + contrastText: grey[600], + }), + }, + error: { + 50: '#FFF0F1', + 100: '#FFDBDE', + 200: '#FFBDC2', + 300: '#FF99A2', + 400: '#FF7A86', + 500: '#FF505F', + main: '#EB0014', // contrast 4.63:1 + 600: '#EB0014', + 700: '#C70011', + 800: '#94000D', + 900: '#570007', + }, + success: { + 50: '#E9FBF0', + 100: '#C6F6D9', + 200: '#9AEFBC', + 300: '#6AE79C', + 400: '#3EE07F', + 500: '#21CC66', + 600: '#1DB45A', + ...(mode === 'light' && { + main: '#1AA251', // contrast 3.31:1 + }), + ...(mode === 'dark' && { + main: '#1DB45A', // contrast 6.17:1 (blueDark.800) + }), + 700: '#1AA251', + 800: '#178D46', + 900: '#0F5C2E', + }, + warning: { + 50: '#FFF9EB', + 100: '#FFF3C1', + 200: '#FFECA1', + 300: '#FFDC48', // vs blueDark900: WCAG 10.4 AAA, APCA 72 Ok for text + 400: '#F4C000', // vs blueDark900: WCAG 6.4 AA normal, APCA 48 Only large text + 500: '#DEA500', // vs blueDark900: WCAG 8 AAA normal, APCA 58 Only large text + main: '#DEA500', + 600: '#D18E00', // vs blueDark900: WCAG 6.4 AA normal, APCA 48 Only large text + 700: '#AB6800', // vs white bg: WCAG 4.4 AA large, APCA 71 Ok for text + 800: '#8C5800', // vs white bg: WCAG 5.9 AAA large, APCA 80 Best for text + 900: '#5A3600', // vs white bg: WCAG 10.7 AAA, APCA 95 Best for text + }, + action: { + ...(mode === 'dark' && { + hoverOpacity: 0.08, + active: grey[700], + disabled: grey[200], + }), + ...(mode === 'light' && { + hoverOpacity: 0.04, + active: grey[700], + disabled: alpha(grey[700], 0.3), + }), + }, + }, + shape: { + borderRadius: 10, + }, + spacing: 10, + typography: { + fontFamily: ['"IBM Plex Sans"', ...systemFont].join(','), + fontFamilyCode: [ + 'Consolas', + 'Menlo', + 'Monaco', + 'Andale Mono', + 'Ubuntu Mono', + 'monospace', + ].join(','), + fontFamilyTagline: ['"PlusJakartaSans-ExtraBold"', ...systemFont].join(','), + fontFamilySystem: systemFont.join(','), + fontWeightSemiBold: 600, + fontWeightExtraBold: 800, + h1: { + fontFamily: ['"PlusJakartaSans-ExtraBold"', ...systemFont].join(','), + fontSize: 'clamp(2.625rem, 1.2857rem + 3.5714vw, 4rem)', + fontWeight: 800, + lineHeight: 78 / 70, + ...(mode === 'light' && { + color: blueDark[900], + }), + }, + h2: { + fontFamily: ['"PlusJakartaSans-ExtraBold"', ...systemFont].join(','), + fontSize: 'clamp(1.5rem, 0.9643rem + 1.4286vw, 2.25rem)', + fontWeight: 800, + lineHeight: 44 / 36, + color: mode === 'dark' ? grey[100] : blueDark[700], + }, + h3: { + fontFamily: ['"PlusJakartaSans-Bold"', ...systemFont].join(','), + fontSize: defaultTheme.typography.pxToRem(36), + lineHeight: 44 / 36, + letterSpacing: 0.2, + }, + h4: { + fontFamily: ['"PlusJakartaSans-Bold"', ...systemFont].join(','), + fontSize: defaultTheme.typography.pxToRem(28), + lineHeight: 42 / 28, + letterSpacing: 0.2, + }, + h5: { + fontFamily: ['"PlusJakartaSans-Bold"', ...systemFont].join(','), + fontSize: defaultTheme.typography.pxToRem(24), + lineHeight: 36 / 24, + letterSpacing: 0.1, + color: mode === 'dark' ? blue[300] : blue.main, + }, + h6: { + fontSize: defaultTheme.typography.pxToRem(20), + lineHeight: 30 / 20, + }, + button: { + textTransform: 'initial', + fontWeight: 700, + letterSpacing: 0, + }, + subtitle1: { + fontSize: defaultTheme.typography.pxToRem(18), + lineHeight: 24 / 18, + letterSpacing: 0, + fontWeight: 500, + }, + body1: { + fontSize: defaultTheme.typography.pxToRem(16), // 16px + lineHeight: 24 / 16, + letterSpacing: 0, + }, + body2: { + fontSize: defaultTheme.typography.pxToRem(14), // 14px + lineHeight: 21 / 14, + letterSpacing: 0, + }, + caption: { + fontSize: defaultTheme.typography.pxToRem(12), // 12px + lineHeight: 18 / 12, + letterSpacing: 0, + fontWeight: 700, + }, + allVariants: { + scrollMarginTop: 'calc(var(--MuiDocs-header-height) + 32px)', + }, + }, + }) as ThemeOptions; diff --git a/docs/data/toolpad/core/components/sign-in-page/sign-in-page.md b/docs/data/toolpad/core/components/sign-in-page/sign-in-page.md new file mode 100644 index 00000000000..382691b45b1 --- /dev/null +++ b/docs/data/toolpad/core/components/sign-in-page/sign-in-page.md @@ -0,0 +1,157 @@ +--- +productId: toolpad-core +title: Sign In Page +components: SignInPage, Account, NotificationsProvider +--- + +# Sign In Page + +

A customizable sign in UI component that abstracts away the pain needed to wire together a secure authentication page for your application.

+ +The `SignInPage` component is a quick way to generate a ready-to-use authentication page with multiple OAuth providers, or a credentials form. + +## OAuth + +The `SignInPage` component can be set up with an OAuth provider by passing in a list of providers in the `providers` prop, along with a `signIn` function that accepts the `provider` as a parameter. + +{{"demo": "OAuthSignInPage.js", "iframe": true}} + +## Credentials + +:::warning +It is recommended to use the OAuth provider for more robust maintenance, support, and security. +::: + +To render a username password form, pass in a provider with `credentials` as the `id` property. The `signIn` function accepts a `formData` parameter in this case. + +{{"demo": "CredentialsSignInPage.js", "iframe": true, "height": 500}} + +### Alerts + +The `signIn` prop takes a function which can either return `void` or a `Promise` which resolves with an `AuthResponse` object of the form: + +```ts +interface AuthResponse { + error?: string; + type?: string; +} +``` + +This renders an alert with the `error` string as the message. + +{{"demo": "NotificationsSignInPageError.js", "iframe": true, "height": 600}} + +## Usage with authentication libraries + +### Auth.js + +#### Next.js App Directory and GitHub + +The component is composable with any authentication library you might want to use. The following is a `SignInPage` with [Auth.js](https://authjs.dev/) using GitHub, Next.js App router and server actions. + +{{"component": "modules/components/DocsImage.tsx", "src": "/static/toolpad/docs/core/auth-next.png", "alt": "Auth.js & Next.js with Toolpad Core sign in page", "caption": "Auth.js & Next.js app router with Toolpad Core Sign In page", "zoom": true, "indent": 1 }} + +#### Setting up + +If you're using the default [Next.js app directory example](https://github.com/mui/mui-toolpad/tree/master/examples/core-auth-nextjs/), Auth.js is already installed. Otherwise, follow the [installation instructions](https://authjs.dev/getting-started/installation). + +##### GitHub configuration + +To get the required credentials, create an application in the GitHub developer settings. Read this [guide on Auth.js](https://authjs.dev/guides/configuring-github#adding-environment-variables) on how to obtain those. + +##### Server Configuration + +The `SignInPage` component can slot in as a custom sign in page inside Auth.js: + +```ts title="./auth.ts" +// ... +export const { handlers, auth, signIn, signOut } = NextAuth({ + providers, + secret: process.env.AUTH_SECRET, + pages: { + signIn: '/auth/signin', // you can customize this based on your requirement + }, +// ... +``` + +You can then have a fully built GitHub sign in page appear at `/auth/signin` by adding `SignInPage` to `page.tsx`: + +```tsx title="./app/auth/signin/page.tsx" +// ... +import * as React from 'react'; +import type { AuthProvider } from '@toolpad/core'; +import { SignInPage } from '@toolpad/core/SignInPage'; +import { AuthError } from 'next-auth'; +import { providerMap, signIn } from '../../../auth'; + +export default function SignIn() { + return ( + { + 'use server'; + try { + return await signIn(provider.id, { + ...(formData && { + email: formData.get('email'), + password: formData.get('password'), + }), + redirectTo: callbackUrl ?? '/', + }); + } catch (error) { + if (error instanceof Error && error.message === 'NEXT_REDIRECT') { + throw error; + } + if (error instanceof AuthError) { + return { + error: + error.type === 'CredentialsSignin' + ? 'Invalid credentials.' + : 'An error with Auth.js occurred.', + type: error.type, + }; + } + return { + error: 'Something went wrong.', + type: 'UnknownError', + }; + } + }} + /> + ); +} +``` + +:::info +If you're using the default [Next.js app directory example](https://github.com/mui/mui-toolpad/tree/master/examples/core-auth-nextjs/), all of this is already configured for you. Otherwise, follow the [custom sign in page instructions](https://authjs.dev/guides/pages/signin). +::: + +## Customization + +### Theme and Branding + +Through the `branding` and `theme` props in the [AppProvider](https://mui.com/toolpad/core/react-app-provider/), the `SignInPage` can be customized to match your own styles. + +{{"demo": "BrandingSignInPage.js", "iframe": true, "height": 700 }} + +### Components + +`SignInPage` can be customized by passing in `slotProps` to the underlying components of the credentials form. + +{{"demo": "SlotPropsSignIn.js", "iframe": true, "height": 540 }} + +#### 🚧 Composition + +To enable deep customization beyond what is possible with custom props, the `SignInPage` component allows bringing your own custom granular components, such as inputs and buttons. This is in progress. + +### 🚧 Layouts + +The `SignInPage` component has versions with different layouts for authentication - one column, two column and others such. The APIs of these components are identical. This is in progress. + +## 🚧 Other authentication Flows + +The `SignInPage` will be accompanied by other components to allow users to sign up, verify emails and reset passwords. This is in progress. diff --git a/docs/data/toolpad/core/introduction/TutorialDefault.js b/docs/data/toolpad/core/introduction/TutorialDefault.js index 24e07c47e45..b0e6950f478 100644 --- a/docs/data/toolpad/core/introduction/TutorialDefault.js +++ b/docs/data/toolpad/core/introduction/TutorialDefault.js @@ -5,7 +5,7 @@ import DashboardIcon from '@mui/icons-material/Dashboard'; import { AppProvider } from '@toolpad/core/AppProvider'; import { DashboardLayout } from '@toolpad/core/DashboardLayout'; import { PageContainer } from '@toolpad/core/PageContainer'; -import { useDemoRouter } from '@toolpad/core/internals/demo'; +import { useDemoRouter } from '@toolpad/core/internals'; const NAVIGATION = [ { diff --git a/docs/data/toolpad/core/introduction/TutorialDefault.tsx b/docs/data/toolpad/core/introduction/TutorialDefault.tsx index 671c1574944..9daf14ebb06 100644 --- a/docs/data/toolpad/core/introduction/TutorialDefault.tsx +++ b/docs/data/toolpad/core/introduction/TutorialDefault.tsx @@ -4,7 +4,7 @@ import DashboardIcon from '@mui/icons-material/Dashboard'; import { AppProvider, Navigation } from '@toolpad/core/AppProvider'; import { DashboardLayout } from '@toolpad/core/DashboardLayout'; import { PageContainer } from '@toolpad/core/PageContainer'; -import { useDemoRouter } from '@toolpad/core/internals/demo'; +import { useDemoRouter } from '@toolpad/core/internals'; const NAVIGATION: Navigation = [ { diff --git a/docs/data/toolpad/core/introduction/TutorialPages.js b/docs/data/toolpad/core/introduction/TutorialPages.js index 632c8c489b1..784835b5489 100644 --- a/docs/data/toolpad/core/introduction/TutorialPages.js +++ b/docs/data/toolpad/core/introduction/TutorialPages.js @@ -5,7 +5,7 @@ import DashboardIcon from '@mui/icons-material/Dashboard'; import TimelineIcon from '@mui/icons-material/Timeline'; import { AppProvider } from '@toolpad/core/AppProvider'; import { DashboardLayout } from '@toolpad/core/DashboardLayout'; -import { useDemoRouter } from '@toolpad/core/internals/demo'; +import { useDemoRouter } from '@toolpad/core/internals'; import { PageContainer } from '@toolpad/core/PageContainer'; import { Typography } from '@mui/material'; diff --git a/docs/data/toolpad/core/introduction/TutorialPages.tsx b/docs/data/toolpad/core/introduction/TutorialPages.tsx index ab1e1daa7f8..0139be7afd7 100644 --- a/docs/data/toolpad/core/introduction/TutorialPages.tsx +++ b/docs/data/toolpad/core/introduction/TutorialPages.tsx @@ -4,7 +4,7 @@ import DashboardIcon from '@mui/icons-material/Dashboard'; import TimelineIcon from '@mui/icons-material/Timeline'; import { AppProvider, Navigation } from '@toolpad/core/AppProvider'; import { DashboardLayout } from '@toolpad/core/DashboardLayout'; -import { useDemoRouter } from '@toolpad/core/internals/demo'; +import { useDemoRouter } from '@toolpad/core/internals'; import { PageContainer } from '@toolpad/core/PageContainer'; import { Typography } from '@mui/material'; diff --git a/docs/data/toolpad/core/pages.ts b/docs/data/toolpad/core/pages.ts index c09a175f764..7be75b13ab1 100644 --- a/docs/data/toolpad/core/pages.ts +++ b/docs/data/toolpad/core/pages.ts @@ -65,6 +65,14 @@ const pages: MuiPage[] = [ pathname: '/toolpad/core/react-page-container', title: 'Page Container', }, + { + pathname: '/toolpad/core/react-sign-in-page', + title: 'Sign In Page', + }, + { + pathname: '/toolpad/core/react-account', + title: 'Account', + }, ], }, { diff --git a/docs/data/toolpad/core/pagesApi.js b/docs/data/toolpad/core/pagesApi.js index ada34884ebe..346ba5b4a23 100644 --- a/docs/data/toolpad/core/pagesApi.js +++ b/docs/data/toolpad/core/pagesApi.js @@ -1,8 +1,10 @@ module.exports = [ + { pathname: '/toolpad/core/api/account' }, { pathname: '/toolpad/core/api/app-provider' }, { pathname: '/toolpad/core/api/dashboard-layout' }, { pathname: '/toolpad/core/api/dialogs-provider' }, { pathname: '/toolpad/core/api/notifications-provider' }, { pathname: '/toolpad/core/api/page-container' }, { pathname: '/toolpad/core/api/page-container-toolbar' }, + { pathname: '/toolpad/core/api/sign-in-page' }, ]; diff --git a/docs/package.json b/docs/package.json index 45831f35505..d0f860b6a6b 100644 --- a/docs/package.json +++ b/docs/package.json @@ -17,7 +17,7 @@ }, "dependencies": { "@babel/plugin-transform-object-assign": "7.24.7", - "@babel/runtime-corejs2": "7.24.8", + "@babel/runtime-corejs2": "7.25.0", "@date-io/date-fns-jalali": "3.0.0", "@docsearch/react": "3.6.0", "@emotion/cache": "11.13.1", @@ -35,9 +35,9 @@ "@mui/styles": "next", "@mui/system": "next", "@mui/utils": "next", - "@mui/x-date-pickers": "7.11.1", - "@mui/x-date-pickers-pro": "7.11.1", - "@mui/x-license": "7.11.1", + "@mui/x-date-pickers": "7.12.0", + "@mui/x-date-pickers-pro": "7.12.0", + "@mui/x-license": "7.12.0", "@toolpad/core": "workspace:*", "@toolpad/studio": "workspace:*", "@trendmicro/react-interpolate": "0.5.5", @@ -92,8 +92,8 @@ "zod": "3.23.8" }, "devDependencies": { - "@babel/core": "7.24.9", - "@babel/plugin-transform-react-constant-elements": "7.24.7", + "@babel/core": "7.25.2", + "@babel/plugin-transform-react-constant-elements": "7.25.1", "@babel/preset-typescript": "7.24.7", "@types/babel__core": "^7.20.5", "@types/doctrine": "0.0.9", diff --git a/docs/pages/toolpad/core/api/account.js b/docs/pages/toolpad/core/api/account.js new file mode 100644 index 00000000000..9571e0c36b0 --- /dev/null +++ b/docs/pages/toolpad/core/api/account.js @@ -0,0 +1,23 @@ +import * as React from 'react'; +import ApiPage from 'docs/src/modules/components/ApiPage'; +import mapApiPageTranslations from 'docs/src/modules/utils/mapApiPageTranslations'; +import jsonPageContent from './account.json'; + +export default function Page(props) { + const { descriptions, pageContent } = props; + return ; +} + +Page.getInitialProps = () => { + const req = require.context( + 'docs-toolpad/translations/api-docs/account', + false, + /\.\/account.*.json$/, + ); + const descriptions = mapApiPageTranslations(req); + + return { + descriptions, + pageContent: jsonPageContent, + }; +}; diff --git a/docs/pages/toolpad/core/api/account.json b/docs/pages/toolpad/core/api/account.json new file mode 100644 index 00000000000..82dc61ebcef --- /dev/null +++ b/docs/pages/toolpad/core/api/account.json @@ -0,0 +1,26 @@ +{ + "props": { + "signInLabel": { "type": { "name": "string" }, "default": "'Sign In'" }, + "signOutLabel": { "type": { "name": "string" }, "default": "'Sign Out'" }, + "slotProps": { + "type": { + "name": "shape", + "description": "{ avatar?: object, iconButton?: object, signInButton?: object, signOutButton?: object }" + }, + "default": "{}" + } + }, + "name": "Account", + "imports": [ + "import { Account } from '@toolpad/core/Account';", + "import { Account } from '@toolpad/core';" + ], + "classes": [], + "spread": true, + "themeDefaultProps": false, + "muiName": "Account", + "filename": "/packages/toolpad-core/src/Account/Account.tsx", + "inheritance": null, + "demos": "", + "cssComponent": false +} diff --git a/docs/pages/toolpad/core/api/app-provider.json b/docs/pages/toolpad/core/api/app-provider.json index 595160c0bc3..d31ffddff5d 100644 --- a/docs/pages/toolpad/core/api/app-provider.json +++ b/docs/pages/toolpad/core/api/app-provider.json @@ -1,6 +1,10 @@ { "props": { "children": { "type": { "name": "node" }, "required": true }, + "authentication": { + "type": { "name": "shape", "description": "{ signIn: func, signOut: func }" }, + "default": "null" + }, "branding": { "type": { "name": "shape", "description": "{ logo?: node, title?: string }" }, "default": "null" @@ -19,13 +23,20 @@ }, "default": "null" }, + "session": { + "type": { + "name": "shape", + "description": "{ user?: { email?: string, id?: string, image?: string, name?: string } }" + }, + "default": "null" + }, "theme": { "type": { "name": "object" }, "default": "extendTheme()" }, "window": { "type": { "name": "object" }, "default": "window" } }, "name": "AppProvider", "imports": [ - "import { AppProvider } from '@toolpad-core/AppProvider';\nimport { AppProvider } from '@toolpad-core/nextjs/AppProvider'; // Next.js", - "import { AppProvider } from '@toolpad-core';\nimport { AppProvider } from '@toolpad-core/nextjs'; // Next.js" + "import { AppProvider } from '@toolpad/core/AppProvider';\nimport { AppProvider } from '@toolpad/core/nextjs/AppProvider'; // Next.js", + "import { AppProvider } from '@toolpad/core';\nimport { AppProvider } from '@toolpad/core/nextjs'; // Next.js" ], "classes": [], "spread": true, diff --git a/docs/pages/toolpad/core/api/dashboard-layout.json b/docs/pages/toolpad/core/api/dashboard-layout.json index af4c4e66fda..87b9dec9b3b 100644 --- a/docs/pages/toolpad/core/api/dashboard-layout.json +++ b/docs/pages/toolpad/core/api/dashboard-layout.json @@ -2,8 +2,8 @@ "props": { "children": { "type": { "name": "node" }, "required": true } }, "name": "DashboardLayout", "imports": [ - "import { DashboardLayout } from '@toolpad-core/DashboardLayout';", - "import { DashboardLayout } from '@toolpad-core';" + "import { DashboardLayout } from '@toolpad/core/DashboardLayout';", + "import { DashboardLayout } from '@toolpad/core';" ], "classes": [], "spread": true, diff --git a/docs/pages/toolpad/core/api/dialogs-provider.json b/docs/pages/toolpad/core/api/dialogs-provider.json index 2310fc48fe5..630a5d1726f 100644 --- a/docs/pages/toolpad/core/api/dialogs-provider.json +++ b/docs/pages/toolpad/core/api/dialogs-provider.json @@ -1,7 +1,7 @@ { "props": {}, "name": "DialogsProvider", - "imports": ["import { DialogsProvider } from '@toolpad-core/useDialogs';"], + "imports": ["import { DialogsProvider } from '@toolpad/core/useDialogs';"], "classes": [], "spread": true, "themeDefaultProps": false, diff --git a/docs/pages/toolpad/core/api/notifications-provider.json b/docs/pages/toolpad/core/api/notifications-provider.json index 29c1fdff962..127c9c01e8b 100644 --- a/docs/pages/toolpad/core/api/notifications-provider.json +++ b/docs/pages/toolpad/core/api/notifications-provider.json @@ -1,7 +1,7 @@ { "props": {}, "name": "NotificationsProvider", - "imports": ["import { NotificationsProvider } from '@toolpad-core/useNotifications';"], + "imports": ["import { NotificationsProvider } from '@toolpad/core/useNotifications';"], "slots": [ { "name": "snackbar", @@ -16,6 +16,6 @@ "muiName": "NotificationsProvider", "filename": "/packages/toolpad-core/src/useNotifications/NotificationsProvider.tsx", "inheritance": null, - "demos": "", + "demos": "", "cssComponent": false } diff --git a/docs/pages/toolpad/core/api/page-container-toolbar.json b/docs/pages/toolpad/core/api/page-container-toolbar.json index fce831943e9..4d789399e61 100644 --- a/docs/pages/toolpad/core/api/page-container-toolbar.json +++ b/docs/pages/toolpad/core/api/page-container-toolbar.json @@ -1,7 +1,7 @@ { "props": {}, "name": "PageContainerToolbar", - "imports": ["import { PageContainerToolbar } from '@toolpad-core/PageContainer';"], + "imports": ["import { PageContainerToolbar } from '@toolpad/core/PageContainer';"], "classes": [], "spread": true, "themeDefaultProps": false, diff --git a/docs/pages/toolpad/core/api/page-container.json b/docs/pages/toolpad/core/api/page-container.json index 63cbe300d3a..82219960b02 100644 --- a/docs/pages/toolpad/core/api/page-container.json +++ b/docs/pages/toolpad/core/api/page-container.json @@ -2,8 +2,8 @@ "props": {}, "name": "PageContainer", "imports": [ - "import { PageContainer } from '@toolpad-core/PageContainer';", - "import { PageContainer } from '@toolpad-core';" + "import { PageContainer } from '@toolpad/core/PageContainer';", + "import { PageContainer } from '@toolpad/core';" ], "slots": [ { diff --git a/docs/pages/toolpad/core/api/sign-in-page.js b/docs/pages/toolpad/core/api/sign-in-page.js new file mode 100644 index 00000000000..03b69214011 --- /dev/null +++ b/docs/pages/toolpad/core/api/sign-in-page.js @@ -0,0 +1,23 @@ +import * as React from 'react'; +import ApiPage from 'docs/src/modules/components/ApiPage'; +import mapApiPageTranslations from 'docs/src/modules/utils/mapApiPageTranslations'; +import jsonPageContent from './sign-in-page.json'; + +export default function Page(props) { + const { descriptions, pageContent } = props; + return ; +} + +Page.getInitialProps = () => { + const req = require.context( + 'docs-toolpad/translations/api-docs/sign-in-page', + false, + /\.\/sign-in-page.*.json$/, + ); + const descriptions = mapApiPageTranslations(req); + + return { + descriptions, + pageContent: jsonPageContent, + }; +}; diff --git a/docs/pages/toolpad/core/api/sign-in-page.json b/docs/pages/toolpad/core/api/sign-in-page.json new file mode 100644 index 00000000000..54dbfb38e69 --- /dev/null +++ b/docs/pages/toolpad/core/api/sign-in-page.json @@ -0,0 +1,36 @@ +{ + "props": { + "providers": { + "type": { "name": "arrayOf", "description": "Array<{ id: string, name: string }>" }, + "default": "[]" + }, + "signIn": { + "type": { "name": "func" }, + "default": "undefined", + "signature": { + "type": "function(provider: AuthProvider, formData: FormData, callbackUrl: string) => void | Promise", + "describedArgs": ["provider", "formData", "callbackUrl"] + } + }, + "slotProps": { + "type": { + "name": "shape", + "description": "{ emailField?: object, passwordField?: object, submitButton?: object }" + }, + "default": "{}" + } + }, + "name": "SignInPage", + "imports": [ + "import { SignInPage } from '@toolpad/core/SignInPage';", + "import { SignInPage } from '@toolpad/core';" + ], + "classes": [], + "spread": true, + "themeDefaultProps": false, + "muiName": "SignInPage", + "filename": "/packages/toolpad-core/src/SignInPage/SignInPage.tsx", + "inheritance": null, + "demos": "", + "cssComponent": false +} diff --git a/docs/pages/toolpad/core/react-account/index.js b/docs/pages/toolpad/core/react-account/index.js new file mode 100644 index 00000000000..78c3ae2a458 --- /dev/null +++ b/docs/pages/toolpad/core/react-account/index.js @@ -0,0 +1,7 @@ +import * as React from 'react'; +import MarkdownDocs from 'docs/src/modules/components/MarkdownDocs'; +import * as pageProps from '../../../../data/toolpad/core/components/account/account.md?muiMarkdown'; + +export default function Page() { + return ; +} diff --git a/docs/pages/toolpad/core/react-sign-in-page/index.js b/docs/pages/toolpad/core/react-sign-in-page/index.js new file mode 100644 index 00000000000..8c196df45e9 --- /dev/null +++ b/docs/pages/toolpad/core/react-sign-in-page/index.js @@ -0,0 +1,12 @@ +import * as React from 'react'; +import MarkdownDocs from 'docs/src/modules/components/MarkdownDocs'; +import { DocsContext } from '@toolpad/core/internal'; +import * as pageProps from '../../../../data/toolpad/core/components/sign-in-page/sign-in-page.md?muiMarkdown'; + +export default function Page() { + return ( + + + + ); +} diff --git a/docs/public/static/toolpad/docs/core/auth-next.png b/docs/public/static/toolpad/docs/core/auth-next.png new file mode 100644 index 00000000000..57238099e1b Binary files /dev/null and b/docs/public/static/toolpad/docs/core/auth-next.png differ diff --git a/docs/public/static/toolpad/docs/core/sign-in-1.png b/docs/public/static/toolpad/docs/core/sign-in-1.png new file mode 100644 index 00000000000..69b5d8301fe Binary files /dev/null and b/docs/public/static/toolpad/docs/core/sign-in-1.png differ diff --git a/docs/public/static/toolpad/marketing/admin-app.png b/docs/public/static/toolpad/marketing/admin-app.png new file mode 100644 index 00000000000..b41cf2a4a32 Binary files /dev/null and b/docs/public/static/toolpad/marketing/admin-app.png differ diff --git a/docs/src/components/landing-core/BuiltWith.js b/docs/src/components/landing-core/BuiltWith.js index 5f3b5caa823..02c54c6540c 100644 --- a/docs/src/components/landing-core/BuiltWith.js +++ b/docs/src/components/landing-core/BuiltWith.js @@ -1,6 +1,6 @@ import * as React from 'react'; import Typography from '@mui/material/Typography'; -import Grid from '@mui/material/Grid'; +import Grid from '@mui/material/Grid2'; import GradientText from 'docs/src/components/typography/GradientText'; import Section from 'docs/src/layouts/Section'; import SectionHeadline from 'docs/src/components/typography/SectionHeadline'; @@ -11,7 +11,7 @@ const content = [ icon: React, title: 'React', description: - 'Toolpad is a code-centric approach to admin apps. Entire app is accessible and customizable through React code.', + 'Toolpad is a code-centric approach to admin apps. The entire app is accessible and customizable through React code.', }, { icon: ( @@ -27,13 +27,13 @@ const content = [ ), title: 'Next.js', description: - 'Next.js sets the industry standard for modern React applications. Building over it, is a leverage that makes Toolpad efficient.', + 'Next.js sets the industry standard for modern React applications. Building over it is a leverage that makes Toolpad efficient.', }, { icon: MUI, title: 'MUI', description: - 'The tight integration with MUI ensures you get all the latest features from our list of MaterialUI components.', + 'A tight integration with MUI ensures you get all the latest features from our list of Material UI components.', }, ]; @@ -51,7 +51,7 @@ export default function BuiltWith() { /> {content.map(({ icon, title, description }) => ( - + ))} diff --git a/docs/src/components/landing-core/Examples.js b/docs/src/components/landing-core/Examples.js index 4828201b025..14cec0ffbd9 100644 --- a/docs/src/components/landing-core/Examples.js +++ b/docs/src/components/landing-core/Examples.js @@ -10,7 +10,7 @@ import DashboardRoundedIcon from '@mui/icons-material/DashboardRounded'; import AutoAwesomeRoundedIcon from '@mui/icons-material/AutoAwesomeRounded'; import SectionHeadline from 'docs/src/components/typography/SectionHeadline'; import GradientText from 'docs/src/components/typography/GradientText'; -import Grid from '@mui/material/Unstable_Grid2'; +import Grid from '@mui/material/Grid2'; const ImageContainer = styled(Link)(({ theme }) => [ { @@ -105,13 +105,9 @@ export default function Examples() { } /> - + - + } diff --git a/docs/src/components/landing-core/Features.js b/docs/src/components/landing-core/Features.js index a4341f880b2..bbf0a0d8884 100644 --- a/docs/src/components/landing-core/Features.js +++ b/docs/src/components/landing-core/Features.js @@ -1,11 +1,12 @@ import * as React from 'react'; -import Grid from '@mui/material/Unstable_Grid2'; +import Grid from '@mui/material/Grid2'; import Typography from '@mui/material/Typography'; import Section from 'docs/src/layouts/Section'; import SectionHeadline from 'docs/src/components/typography/SectionHeadline'; import GradientText from 'docs/src/components/typography/GradientText'; import ToolpadFeaturesSwitcher from './ToolpadFeaturesSwitcher'; import ToolpadDialogDemo from './ToolpadDialogDemo'; +import ToolpadAuthDemo from './ToolpadAuthDemo'; import ToolpadDashboardLayout from './ToolpadDashboardLayout'; import ToolpadNotificationDemo from './ToolpadNotificationDemo'; import ToolpadPageContainerDemo from './ToolpadPageContainerDemo'; @@ -33,10 +34,10 @@ export default function ToolpadComponents() { > {tab === 'navigation' && } - {tab === 'auth' &&
To Do
} + {tab === 'auth' && } + {tab === 'page' && } {tab === 'dialogs' && } {tab === 'notifications' && } - {tab === 'page' && }
diff --git a/docs/src/components/landing-core/Hero.js b/docs/src/components/landing-core/Hero.js index 67333b8c835..b4bf19608c4 100644 --- a/docs/src/components/landing-core/Hero.js +++ b/docs/src/components/landing-core/Hero.js @@ -57,9 +57,9 @@ export default function Hero() { color="text.secondary" sx={{ maxWidth: 620, mb: 3, textWrap: 'balance', textAlign: 'center' }} > - From the creators of MUI, Toolpad offers the components needed for your next admin panel - and internal tools project. Bootstrap from scratch in our CLI with well chosen defaults, - or drop Toolpad into your existing Next.js or Vite* project. + Toolpad offers the components needed for your next admin portal or internal tool. + Bootstrap from scratch in our CLI with well chosen defaults, or drop Toolpad into your + existing Next.js or Vite* project. {}; + +const code = ` + +const providers = [ + { id: 'github', name: 'GitHub' }, + { id: 'google', name: 'Google' }, + { id: 'facebook', name: 'Facebook' }, +]; + +const signIn = async (provider) => { + try { + await signIn(provider.id); + } catch (error) { + // Handle errors + } +}; + +export default function OAuthSignInPage() { + return ( + + + + ); +} + +`; + +const providers = [ + { id: 'github', name: 'GitHub' }, + { id: 'google', name: 'Google' }, + { id: 'facebook', name: 'Facebook' }, +]; + +const signIn: (provider: AuthProvider) => void = async (provider) => { + const promise = new Promise((resolve) => { + setTimeout(() => { + // eslint-disable-next-line no-console + console.log(`Sign in with ${provider.id}`); + resolve(); + }, 500); + }); + return promise; +}; + +function OAuthSignInPage() { + return ( + + + + ); +} + +export default function ToolpadDashboardLayout() { + return ( + + + ({ + p: 2, + display: 'flex', + alignItems: 'center', + maxWidth: '100%', + mx: 'auto', + bgcolor: '#FFF', + borderRadius: '8px', + ...theme.applyDarkStyles({ + bgcolor: 'primaryDark.900', + }), + })} + > + + + + + + + + + + ); +} diff --git a/docs/src/components/landing-core/ToolpadDashboardLayout.tsx b/docs/src/components/landing-core/ToolpadDashboardLayout.tsx index 20bb4eb3468..9d3b77a215e 100644 --- a/docs/src/components/landing-core/ToolpadDashboardLayout.tsx +++ b/docs/src/components/landing-core/ToolpadDashboardLayout.tsx @@ -12,7 +12,7 @@ import { AppProvider, Router } from '@toolpad/core/AppProvider'; import { DashboardLayout } from '@toolpad/core/DashboardLayout'; import { PageContainer, type Navigation } from '@toolpad/core'; import DemoSandbox from 'docs/src/modules/components/DemoSandbox'; -import Grid from '@mui/material/Unstable_Grid2'; +import Grid from '@mui/material/Grid2'; import { styled } from '@mui/material'; import Frame from '../../modules/components/Frame'; @@ -218,7 +218,7 @@ export default function ToolpadDashboardLayout() { iframe name="DashboardLayout" onResetDemoClick={NOOP} - productId="joy-ui" + productId="toolpad-core" usesCssVarsTheme > diff --git a/docs/src/components/landing-core/ToolpadDialogDemo.tsx b/docs/src/components/landing-core/ToolpadDialogDemo.tsx index 112b21a69b4..07b8a89f5d6 100644 --- a/docs/src/components/landing-core/ToolpadDialogDemo.tsx +++ b/docs/src/components/landing-core/ToolpadDialogDemo.tsx @@ -54,7 +54,7 @@ function MyCustomDialog({ open, onClose }: DialogProps) { function DemoContent() { const dialogs = useDialogs(); return ( -
+
+ ); + } + + return ( + + + + + + + + + + {session.user.name} + {session.user.email} + + + + + + + + + + ); +} + +Account.propTypes /* remove-proptypes */ = { + // ┌────────────────────────────── Warning ──────────────────────────────┐ + // │ These PropTypes are generated from the TypeScript type definitions. │ + // │ To update them, edit the TypeScript types and run `pnpm proptypes`. │ + // └─────────────────────────────────────────────────────────────────────┘ + /** + * The label for the sign in button. + * @default 'Sign In' + */ + signInLabel: PropTypes.string, + /** + * The label for the sign out button. + * @default 'Sign Out' + */ + signOutLabel: PropTypes.string, + /** + * Props to pass to the constituent components in the Account component. + * @default {} + * @example { signInButton: { color: 'primary' }, signOutButton: { color: 'secondary' } } + */ + slotProps: PropTypes.shape({ + avatar: PropTypes.object, + iconButton: PropTypes.object, + signInButton: PropTypes.object, + signOutButton: PropTypes.object, + }), +} as any; + +export { Account }; diff --git a/packages/toolpad-core/src/Account/SessionAvatar.tsx b/packages/toolpad-core/src/Account/SessionAvatar.tsx new file mode 100644 index 00000000000..ae8d31c3e00 --- /dev/null +++ b/packages/toolpad-core/src/Account/SessionAvatar.tsx @@ -0,0 +1,21 @@ +import * as React from 'react'; +import Avatar, { AvatarProps } from '@mui/material/Avatar'; +import { Session } from '../AppProvider/AppProvider'; + +/** + * @ignore - internal component. + */ + +export interface SessionAvatarProps extends AvatarProps { + session: Session; +} + +export function SessionAvatar({ session, ...props }: SessionAvatarProps) { + return ( + + ); +} diff --git a/packages/toolpad-core/src/Account/index.ts b/packages/toolpad-core/src/Account/index.ts new file mode 100644 index 00000000000..4c71833ffeb --- /dev/null +++ b/packages/toolpad-core/src/Account/index.ts @@ -0,0 +1 @@ +export * from './Account'; diff --git a/packages/toolpad-core/src/AppProvider/AppProvider.tsx b/packages/toolpad-core/src/AppProvider/AppProvider.tsx index d901d41e9ae..8a0322e4bc0 100644 --- a/packages/toolpad-core/src/AppProvider/AppProvider.tsx +++ b/packages/toolpad-core/src/AppProvider/AppProvider.tsx @@ -56,6 +56,24 @@ export type NavigationItem = NavigationPageItem | NavigationSubheaderItem | Navi export type Navigation = NavigationItem[]; +export interface Session { + user?: { + id?: string | null; + name?: string | null; + image?: string | null; + email?: string | null; + }; +} + +export interface Authentication { + signIn: () => void; + signOut: () => void; +} + +export const SessionContext = React.createContext(null); + +export const AuthenticationContext = React.createContext(null); + export interface AppProviderProps { /** * The content of the app provider. @@ -81,6 +99,16 @@ export interface AppProviderProps { * @default null */ router?: Router; + /** + * Session info about the current user. + * @default null + */ + session?: Session | null; + /** + * Authentication methods. + * @default null + */ + authentication?: Authentication | null; /** * The window where the application is rendered. * This is needed when rendering the app inside an iframe, for example. @@ -107,24 +135,30 @@ function AppProvider(props: AppProviderProps) { branding = null, navigation = [], router = null, + authentication = null, + session = null, window: appWindow, } = props; return ( - - - - - - - {children} - - - - - - + + + + + + + + + {children} + + + + + + + + ); } @@ -134,6 +168,14 @@ AppProvider.propTypes /* remove-proptypes */ = { // │ These PropTypes are generated from the TypeScript type definitions. │ // │ To update them, edit the TypeScript types and run `pnpm proptypes`. │ // └─────────────────────────────────────────────────────────────────────┘ + /** + * Authentication methods. + * @default null + */ + authentication: PropTypes.shape({ + signIn: PropTypes.func.isRequired, + signOut: PropTypes.func.isRequired, + }), /** * Branding options for the app. * @default null @@ -189,6 +231,18 @@ AppProvider.propTypes /* remove-proptypes */ = { pathname: PropTypes.string.isRequired, searchParams: PropTypes.instanceOf(URLSearchParams), }), + /** + * Session info about the current user. + * @default null + */ + session: PropTypes.shape({ + user: PropTypes.shape({ + email: PropTypes.string, + id: PropTypes.string, + image: PropTypes.string, + name: PropTypes.string, + }), + }), /** * [Theme or themes](https://mui.com/toolpad/core/react-app-provider/#theming) to be used by the app in light/dark mode. A [CSS variables theme](https://mui.com/material-ui/experimental-api/css-theme-variables/overview/) is recommended. * @default extendTheme() diff --git a/packages/toolpad-core/src/AppProvider/AppThemeProvider.tsx b/packages/toolpad-core/src/AppProvider/AppThemeProvider.tsx index 093497678a3..cdf576841e5 100644 --- a/packages/toolpad-core/src/AppProvider/AppThemeProvider.tsx +++ b/packages/toolpad-core/src/AppProvider/AppThemeProvider.tsx @@ -46,8 +46,8 @@ function StandardThemeProvider(props: StandardThemeProviderProps) { const dualAwareTheme = React.useMemo( () => isDualTheme - ? theme[paletteMode === 'dark' ? 'dark' : 'light'] ?? - theme[paletteMode === 'dark' ? 'light' : 'dark'] + ? (theme[paletteMode === 'dark' ? 'dark' : 'light'] ?? + theme[paletteMode === 'dark' ? 'light' : 'dark']) : theme, [isDualTheme, paletteMode, theme], ); diff --git a/packages/toolpad-core/src/DashboardLayout/DashboardLayout.tsx b/packages/toolpad-core/src/DashboardLayout/DashboardLayout.tsx index 194b8431468..5de5c76791d 100644 --- a/packages/toolpad-core/src/DashboardLayout/DashboardLayout.tsx +++ b/packages/toolpad-core/src/DashboardLayout/DashboardLayout.tsx @@ -26,6 +26,7 @@ import ExpandMoreIcon from '@mui/icons-material/ExpandMore'; import MenuIcon from '@mui/icons-material/Menu'; import MenuOpenIcon from '@mui/icons-material/MenuOpen'; import useSsr from '@toolpad/utils/hooks/useSsr'; +import { Account } from '../Account'; import { Link } from '../shared/Link'; import { BrandingContext, @@ -105,6 +106,7 @@ function ThemeSwitcher() { sx={{ color: (theme.vars ?? theme).palette.primary.dark, padding: 1, + marginRight: 1, }} > {theme.getColorSchemeSelector ? ( @@ -390,6 +392,7 @@ function DashboardLayout(props: DashboardLayoutProps) { + + +/** + * @vitest-environment jsdom + */ + +import * as React from 'react'; +import { describe, test, expect, vi } from 'vitest'; +import { render, screen } from '@testing-library/react'; +import userEvent from '@testing-library/user-event'; +import describeConformance from '@toolpad/utils/describeConformance'; +import { SignInPage } from './SignInPage'; + +describe('SignInPage', () => { + describeConformance(, () => ({ + skip: ['themeDefaultProps'], + })); + + test('renders oauth button', async () => { + const signIn = vi.fn(); + render(); + + const signInButton = screen.getByRole('button', { name: 'Sign in with GitHub' }); + + await userEvent.click(signInButton); + + expect(signIn).toHaveBeenCalled(); + expect(signIn.mock.calls[0][0]).toHaveProperty('id', 'github'); + }); + + test('renders credentials provider', async () => { + const signIn = vi.fn(); + render(); + + const emailField = screen.getByRole('textbox', { name: 'Email Address' }); + const passwordField = screen.getByLabelText(/Password/); + const signInButton = screen.getByRole('button', { name: 'Sign in' }); + + await userEvent.type(emailField, 'john@example.com'); + await userEvent.type(passwordField, 'thepassword'); + await userEvent.click(signInButton); + + expect(signIn).toHaveBeenCalled(); + expect(signIn.mock.calls[0][0]).toHaveProperty('id', 'credentials'); + expect(signIn.mock.calls[0][1].get('email')).toBe('john@example.com'); + expect(signIn.mock.calls[0][1].get('password')).toBe('thepassword'); + }); +}); diff --git a/packages/toolpad-core/src/SignInPage/SignInPage.tsx b/packages/toolpad-core/src/SignInPage/SignInPage.tsx new file mode 100644 index 00000000000..04c04f2d020 --- /dev/null +++ b/packages/toolpad-core/src/SignInPage/SignInPage.tsx @@ -0,0 +1,356 @@ +'use client'; + +import * as React from 'react'; +import PropTypes from 'prop-types'; +import Avatar from '@mui/material/Avatar'; +import Alert from '@mui/material/Alert'; +import Box from '@mui/material/Box'; +import Checkbox from '@mui/material/Checkbox'; +import Container from '@mui/material/Container'; +import Divider from '@mui/material/Divider'; +import FormControlLabel from '@mui/material/FormControlLabel'; +import TextField, { TextFieldProps } from '@mui/material/TextField'; +import Typography from '@mui/material/Typography'; +import LoadingButton, { LoadingButtonProps } from '@mui/lab/LoadingButton'; +import LockOutlinedIcon from '@mui/icons-material/LockOutlined'; +import GitHubIcon from '@mui/icons-material/GitHub'; +import PasswordIcon from '@mui/icons-material/Password'; +import FacebookIcon from '@mui/icons-material/Facebook'; +import Stack from '@mui/material/Stack'; +import { BrandingContext, DocsContext } from '../shared/context'; + +const IconProviderMap = new Map([ + ['github', ], + ['credentials', ], + [ + 'google', + // colored google icon + + + + + + + , + ], + ['facebook', ], +]); + +export interface AuthProvider { + /** + * The unique identifier of the authentication provider. + * @default '' + * @example 'google' + * @example 'github' + */ + id: string; + /** + * The name of the authentication provider. + * @default '' + * @example 'Google' + * @example 'GitHub' + */ + name: string; +} + +export interface AuthResponse { + /** + * The error message if the sign-in failed. + * @default '' + */ + error?: string; + /** + * The type of error that occurred. + * @default '' + */ + type?: string; +} + +export interface SignInPageProps { + /** + * The list of authentication providers to display. + * @default [] + */ + providers?: AuthProvider[]; + /** + * Callback fired when a user signs in. + * @param {AuthProvider} provider The authentication provider. + * @param {FormData} formData The form data if the provider id is 'credentials'.\ + * @param {string} callbackUrl The URL to redirect to after signing in. + * @returns {void|Promise} + * @default undefined + */ + signIn?: ( + provider: AuthProvider, + formData?: any, + callbackUrl?: string, + ) => void | Promise; + /** + * Props to pass to the constituent components in the credentials form + * @default {} + * @example { email: { autoFocus: false } } + * @example { password: { variant: 'outlined' } } + * @example { email: { autoFocus: false }, password: { variant: 'outlined' } } + */ + slotProps?: { + emailField?: TextFieldProps; + passwordField?: TextFieldProps; + submitButton?: LoadingButtonProps; + }; +} + +/** + * + * Demos: + * + * - [Sign In Page](https://mui.com/toolpad/core/react-sign-in-page/) + * + * API: + * + * - [SignInPage API](https://mui.com/toolpad/core/api/sign-in-page) + */ +function SignInPage(props: SignInPageProps) { + const { providers, signIn, slotProps } = props; + const branding = React.useContext(BrandingContext); + const docs = React.useContext(DocsContext); + const credentialsProvider = providers?.find((provider) => provider.id === 'credentials'); + const [{ loading, providerId, error }, setFormStatus] = React.useState<{ + loading: boolean; + providerId: string; + error?: string; + }>({ + providerId: '', + loading: false, + error: '', + }); + + const callbackUrl = + typeof window !== 'undefined' + ? (new URLSearchParams(window.location.search).get('callbackUrl') ?? '/') + : '/'; + + const singleProvider = React.useMemo(() => providers?.length === 1, [providers]); + + return ( + + + {branding?.logo ?? ( + + + + )} + + + Sign in {branding?.title ? `to ${branding.title}` : null} + + + Welcome user, please sign in to continue + + + + {error && providerId !== 'credentials' ? {error} : null} + {Object.values(providers ?? {}).map((provider) => { + if (provider.id === 'credentials') { + return null; + } + return ( +
{ + event.preventDefault(); + setFormStatus({ error: '', providerId: provider.id, loading: true }); + const oauthResponse = await signIn?.(provider, undefined, callbackUrl); + setFormStatus((prev) => ({ + ...prev, + loading: false, + error: oauthResponse?.error, + })); + }} + > + + Sign in with {provider.name} + +
+ ); + })} +
+ + {credentialsProvider ? ( + + {singleProvider ? null : or} + {error && providerId === 'credentials' ? ( + + {error} + + ) : null} + { + setFormStatus({ + error: '', + providerId: credentialsProvider.id, + loading: true, + }); + event.preventDefault(); + const formData = new FormData(event.currentTarget); + const credentialsResponse = await signIn?.( + credentialsProvider, + formData, + callbackUrl, + ); + setFormStatus((prev) => ({ + ...prev, + loading: false, + error: credentialsResponse?.error, + })); + }} + > + + + } + label="Remember me" + slotProps={{ typography: { color: 'textSecondary' } }} + /> + + Sign in + + + + ) : null} +
+
+
+ ); +} + +SignInPage.propTypes /* remove-proptypes */ = { + // ┌────────────────────────────── Warning ──────────────────────────────┐ + // │ These PropTypes are generated from the TypeScript type definitions. │ + // │ To update them, edit the TypeScript types and run `pnpm proptypes`. │ + // └─────────────────────────────────────────────────────────────────────┘ + /** + * The list of authentication providers to display. + * @default [] + */ + providers: PropTypes.arrayOf( + PropTypes.shape({ + id: PropTypes.string.isRequired, + name: PropTypes.string.isRequired, + }), + ), + /** + * Callback fired when a user signs in. + * @param {AuthProvider} provider The authentication provider. + * @param {FormData} formData The form data if the provider id is 'credentials'.\ + * @param {string} callbackUrl The URL to redirect to after signing in. + * @returns {void|Promise} + * @default undefined + */ + signIn: PropTypes.func, + /** + * Props to pass to the constituent components in the credentials form + * @default {} + * @example { email: { autoFocus: false } } + * @example { password: { variant: 'outlined' } } + * @example { email: { autoFocus: false }, password: { variant: 'outlined' } } + */ + slotProps: PropTypes.shape({ + emailField: PropTypes.object, + passwordField: PropTypes.object, + submitButton: PropTypes.object, + }), +} as any; + +export { SignInPage }; diff --git a/packages/toolpad-core/src/SignInPage/index.ts b/packages/toolpad-core/src/SignInPage/index.ts new file mode 100644 index 00000000000..aa485859b44 --- /dev/null +++ b/packages/toolpad-core/src/SignInPage/index.ts @@ -0,0 +1 @@ +export * from './SignInPage'; diff --git a/packages/toolpad-core/src/index.ts b/packages/toolpad-core/src/index.ts index 4134752e384..c8ff0dade87 100644 --- a/packages/toolpad-core/src/index.ts +++ b/packages/toolpad-core/src/index.ts @@ -2,6 +2,10 @@ export * from './AppProvider'; export * from './DashboardLayout'; +export * from './SignInPage'; + +export * from './Account'; + export * from './PageContainer'; export * from './useDialogs'; diff --git a/packages/toolpad-core/src/internal/index.ts b/packages/toolpad-core/src/internal/index.ts new file mode 100644 index 00000000000..b898bcbd5ac --- /dev/null +++ b/packages/toolpad-core/src/internal/index.ts @@ -0,0 +1,3 @@ +import { DocsContext as Docs } from '../shared/context'; + +export const DocsContext = Docs; diff --git a/packages/toolpad-core/src/internals/index.tsx b/packages/toolpad-core/src/internals/index.tsx new file mode 100644 index 00000000000..689b5cbca95 --- /dev/null +++ b/packages/toolpad-core/src/internals/index.tsx @@ -0,0 +1 @@ +export * from './demo'; diff --git a/packages/toolpad-core/src/shared/context.ts b/packages/toolpad-core/src/shared/context.ts index 0b3a25323c3..ea351b29113 100644 --- a/packages/toolpad-core/src/shared/context.ts +++ b/packages/toolpad-core/src/shared/context.ts @@ -19,3 +19,5 @@ export const PaletteModeContext = React.createContext<{ export const RouterContext = React.createContext(null); export const WindowContext = React.createContext(undefined); + +export const DocsContext = React.createContext(false); diff --git a/packages/toolpad-core/src/shared/navigation.tsx b/packages/toolpad-core/src/shared/navigation.tsx index 5ba20be5df0..071f6a4c13f 100644 --- a/packages/toolpad-core/src/shared/navigation.tsx +++ b/packages/toolpad-core/src/shared/navigation.tsx @@ -6,7 +6,7 @@ export const isPageItem = (item: NavigationItem): item is NavigationPageItem => getItemKind(item) === 'page'; export const getItemTitle = (item: NavigationPageItem | NavigationSubheaderItem) => { - return isPageItem(item) ? item.title ?? item.segment : item.title; + return isPageItem(item) ? (item.title ?? item.segment) : item.title; }; export function hasSelectedNavigationChildren( diff --git a/packages/toolpad-core/src/useNotifications/NotificationsProvider.tsx b/packages/toolpad-core/src/useNotifications/NotificationsProvider.tsx index 5eef825b99d..610fac3e123 100644 --- a/packages/toolpad-core/src/useNotifications/NotificationsProvider.tsx +++ b/packages/toolpad-core/src/useNotifications/NotificationsProvider.tsx @@ -149,6 +149,7 @@ let nextId = 1; * * Demos: * + * - [Sign In Page](https://mui.com/toolpad/core/react-sign-in-page/) * - [Notifications](https://mui.com/toolpad/core/react-use-notifications/) * * API: diff --git a/packages/toolpad-core/vitest.config.mts b/packages/toolpad-core/vitest.config.mts index a9c1a3f1f6f..268ae711948 100644 --- a/packages/toolpad-core/vitest.config.mts +++ b/packages/toolpad-core/vitest.config.mts @@ -2,7 +2,7 @@ import { defineConfig } from 'vitest/config'; export default defineConfig({ test: { - setupFiles: ['../../test/setupVitest.ts'], + setupFiles: ['../../test/setupVitest.ts', '@testing-library/jest-dom/vitest'], browser: { enabled: false, // enabled through CLI name: 'chromium', diff --git a/packages/toolpad-studio-components/package.json b/packages/toolpad-studio-components/package.json index ad292f0d79b..80b9a761f74 100644 --- a/packages/toolpad-studio-components/package.json +++ b/packages/toolpad-studio-components/package.json @@ -43,18 +43,18 @@ "@mui/icons-material": "5.16.4", "@mui/lab": "5.0.0-alpha.172", "@mui/material": "5.16.4", - "@mui/x-charts": "7.11.1", - "@mui/x-data-grid-premium": "7.11.1", - "@mui/x-date-pickers": "7.11.1", - "@mui/x-license": "7.11.1", - "@tanstack/react-query": "5.51.15", + "@mui/x-charts": "7.12.0", + "@mui/x-data-grid-premium": "7.12.0", + "@mui/x-date-pickers": "7.12.0", + "@mui/x-license": "7.12.0", + "@tanstack/react-query": "5.51.21", "@toolpad/studio-runtime": "workspace:*", "@toolpad/utils": "workspace:*", "dayjs": "1.11.12", "invariant": "2.2.4", "markdown-to-jsx": "7.4.7", "react-error-boundary": "4.0.13", - "react-hook-form": "7.52.1" + "react-hook-form": "7.52.2" }, "devDependencies": { "@types/invariant": "2.2.37", diff --git a/packages/toolpad-studio-runtime/package.json b/packages/toolpad-studio-runtime/package.json index 40ca7c1135a..6e73bc4722b 100644 --- a/packages/toolpad-studio-runtime/package.json +++ b/packages/toolpad-studio-runtime/package.json @@ -44,7 +44,7 @@ "dependencies": { "@auth/core": "0.31.0", "@mui/material": "5.16.4", - "@tanstack/react-query": "5.51.15", + "@tanstack/react-query": "5.51.21", "@toolpad/utils": "workspace:*", "@types/json-schema": "7.0.15", "@webcontainer/env": "1.1.1", diff --git a/packages/toolpad-studio/package.json b/packages/toolpad-studio/package.json index a2bc277f54e..e8aed922cb7 100644 --- a/packages/toolpad-studio/package.json +++ b/packages/toolpad-studio/package.json @@ -69,20 +69,20 @@ "@mui/system": "5.16.4", "@mui/types": "7.2.15", "@mui/utils": "5.16.4", - "@mui/x-charts": "7.11.1", - "@mui/x-data-grid": "7.11.1", - "@mui/x-data-grid-premium": "7.11.1", - "@mui/x-date-pickers": "7.11.1", - "@mui/x-date-pickers-pro": "7.11.1", - "@mui/x-tree-view": "7.11.1", - "@tanstack/react-query": "5.51.15", - "@tanstack/react-query-devtools": "5.51.15", + "@mui/x-charts": "7.12.0", + "@mui/x-data-grid": "7.12.0", + "@mui/x-data-grid-premium": "7.12.0", + "@mui/x-date-pickers": "7.12.0", + "@mui/x-date-pickers-pro": "7.12.0", + "@mui/x-tree-view": "7.12.0", + "@tanstack/react-query": "5.51.21", + "@tanstack/react-query-devtools": "5.51.21", "@toolpad/studio-components": "workspace:*", "@toolpad/studio-runtime": "workspace:*", "@toolpad/utils": "workspace:*", "@types/cors": "2.8.17", "@types/json-schema": "7.0.15", - "@types/node": "20.14.12", + "@types/node": "20.14.14", "@types/react-dev-utils": "9.0.15", "@vitejs/plugin-react": "4.3.1", "@webcontainer/env": "1.1.1", @@ -97,7 +97,7 @@ "csstype": "3.1.3", "dayjs": "1.11.12", "dotenv": "16.4.5", - "esbuild": "0.21.5", + "esbuild": "0.23.0", "execa": "9.3.0", "express": "4.19.2", "find-up": "7.0.0", @@ -129,7 +129,7 @@ "react-dev-utils": "12.0.1", "react-dom": "18.3.1", "react-error-boundary": "4.0.13", - "react-hook-form": "7.52.1", + "react-hook-form": "7.52.2", "react-inspector": "6.0.2", "react-is": "18.3.1", "react-resizable-panels": "2.0.22", @@ -146,7 +146,7 @@ "yaml-diff-patch": "2.0.0", "yargs": "17.7.2", "zod": "3.23.8", - "zod-validation-error": "3.3.0" + "zod-validation-error": "3.3.1" }, "devDependencies": { "@types/babel__code-frame": "7.0.6", @@ -166,15 +166,15 @@ "@types/semver": "7.5.8", "@types/serialize-javascript": "5.0.4", "@types/whatwg-url": "11.0.5", - "@types/ws": "8.5.11", + "@types/ws": "8.5.12", "@types/yargs": "17.0.32", - "ajv": "8.16.0", + "ajv": "8.17.1", "eslint": "8.57.0", "eslint-config-prettier": "9.1.0", "eslint-plugin-import": "2.29.1", "formidable": "3.5.1", "react-transition-group": "4.4.5", - "webpack": "5.92.1" + "webpack": "5.93.0" }, "typings": "./index.d.ts", "publishConfig": { diff --git a/packages/toolpad-studio/src/components/TabPanel.tsx b/packages/toolpad-studio/src/components/TabPanel.tsx index e8381b4b563..9aba2cca9a5 100644 --- a/packages/toolpad-studio/src/components/TabPanel.tsx +++ b/packages/toolpad-studio/src/components/TabPanel.tsx @@ -1,15 +1,14 @@ -import * as React from 'react'; -import { TabPanel as MuiTabPanel, TabPanelProps as MuiTabPanelProps } from '@mui/lab'; +import { TabPanel as MuiTabPanel } from '@mui/lab'; +import { styled } from '@mui/material'; -export interface TabPanelProps extends MuiTabPanelProps { - // TODO: Propose feature request in core: disableGutters for TabPanel +const TabPanel = styled(MuiTabPanel, { + shouldForwardProp: (prop) => prop !== 'disableGutters', +})<{ disableGutters?: boolean; -} - -const TabPanel = React.forwardRef( - ({ disableGutters, sx, ...props }, ref) => ( - - ), -); +}>(({ disableGutters }) => ({ + ...(disableGutters && { + padding: 0, + }), +})); export default TabPanel; diff --git a/packages/toolpad-studio/src/runtime/ToolpadApp.tsx b/packages/toolpad-studio/src/runtime/ToolpadApp.tsx index 76a902aa423..363ffcc1ce3 100644 --- a/packages/toolpad-studio/src/runtime/ToolpadApp.tsx +++ b/packages/toolpad-studio/src/runtime/ToolpadApp.tsx @@ -1232,7 +1232,7 @@ const PageRoot = React.forwardRef(function PageRo ref, ) { const containerMaxWidth = - maxWidth === 'none' ? false : maxWidth ?? appDom.DEFAULT_CONTAINER_WIDTH; + maxWidth === 'none' ? false : (maxWidth ?? appDom.DEFAULT_CONTAINER_WIDTH); return ( diff --git a/packages/toolpad-studio/src/toolpad/AppEditor/AppAuthorizationEditor.tsx b/packages/toolpad-studio/src/toolpad/AppEditor/AppAuthorizationEditor.tsx index d35f3a637ab..0bc12b61d80 100644 --- a/packages/toolpad-studio/src/toolpad/AppEditor/AppAuthorizationEditor.tsx +++ b/packages/toolpad-studio/src/toolpad/AppEditor/AppAuthorizationEditor.tsx @@ -562,9 +562,9 @@ export function AppRoleMappingsEditor({ const authentication = appNode.attributes.authentication; const roleMappings = activeAuthProvider - ? authentication?.providers?.find( + ? (authentication?.providers?.find( (providerConfig) => providerConfig.provider === activeAuthProvider, - )?.roles ?? [] + )?.roles ?? []) : []; const existingRows = diff --git a/packages/toolpad-studio/src/toolpad/AppEditor/GlobalScopeExplorer.tsx b/packages/toolpad-studio/src/toolpad/AppEditor/GlobalScopeExplorer.tsx index 6c8a8de187e..cc26fd6f582 100644 --- a/packages/toolpad-studio/src/toolpad/AppEditor/GlobalScopeExplorer.tsx +++ b/packages/toolpad-studio/src/toolpad/AppEditor/GlobalScopeExplorer.tsx @@ -1,8 +1,13 @@ -import { Typography, Divider, Box, SxProps } from '@mui/material'; +import { Typography, Divider, Box, SxProps, styled } from '@mui/material'; import { ScopeMeta, ScopeMetaField } from '@toolpad/studio-runtime'; import * as React from 'react'; import ObjectInspector from '../../components/ObjectInspector'; +const ExplorerRoot = styled('div')({ + display: 'flex', + flexDirection: 'column', +}); + export interface GlobalScopeExplorerProps { value: Record; meta: ScopeMeta; @@ -68,7 +73,7 @@ export default function GlobalScopeExplorer({ meta, value, sx }: GlobalScopeExpl const structure = React.useMemo(() => groupScopeMeta(value, meta), [meta, value]); return ( - + Scope @@ -97,6 +102,6 @@ export default function GlobalScopeExplorer({ meta, value, sx }: GlobalScopeExpl })}
- + ); } diff --git a/packages/toolpad-studio/src/toolpad/AppEditor/PageEditor/BindableEditor.tsx b/packages/toolpad-studio/src/toolpad/AppEditor/PageEditor/BindableEditor.tsx index 554d9cfb643..007ebc820fb 100644 --- a/packages/toolpad-studio/src/toolpad/AppEditor/PageEditor/BindableEditor.tsx +++ b/packages/toolpad-studio/src/toolpad/AppEditor/PageEditor/BindableEditor.tsx @@ -4,6 +4,7 @@ import { inputBaseClasses, formLabelClasses, typographyClasses, + styled, } from '@mui/material'; import * as React from 'react'; import { @@ -17,10 +18,20 @@ import { import { WithControlledProp } from '@toolpad/utils/types'; import { getBindingType } from '../../../runtime/bindings'; import { getDefaultControl, usePropControlsContext } from '../../propertyControls'; - // eslint-disable-next-line import/no-cycle import { BindingEditor } from '../BindingEditor'; +const EditorRoot = styled(Stack)({ + display: 'flex', + flexDirection: 'row', + alignItems: 'center', + justifyContent: 'space-between', + + [`& .${inputBaseClasses.root}`]: { fontSize: 12 }, + [`& .${formLabelClasses.root}`]: { fontSize: 12 }, + [`& .${typographyClasses.root}`]: { fontSize: 12 }, +}); + export interface RenderControlParams extends WithControlledProp { label: string; propType: PropValueType; @@ -91,17 +102,7 @@ export default function BindableEditor({ const hasBinding = value && valueBindingType !== 'const'; return ( - + {renderControl({ label, @@ -125,6 +126,6 @@ export default function BindableEditor({ declaredEnvKeys={declaredEnvKeys} /> - + ); } diff --git a/packages/toolpad-studio/src/toolpad/AppEditor/PageEditor/ComponentCatalog/ComponentCatalogItem.tsx b/packages/toolpad-studio/src/toolpad/AppEditor/PageEditor/ComponentCatalog/ComponentCatalogItem.tsx index f6e4e04ed6e..7fbbafa2f9e 100644 --- a/packages/toolpad-studio/src/toolpad/AppEditor/PageEditor/ComponentCatalog/ComponentCatalogItem.tsx +++ b/packages/toolpad-studio/src/toolpad/AppEditor/PageEditor/ComponentCatalog/ComponentCatalogItem.tsx @@ -1,5 +1,5 @@ import * as React from 'react'; -import { ButtonBase, SxProps, Box } from '@mui/material'; +import { ButtonBase, Box, styled } from '@mui/material'; import SmartButtonIcon from '@mui/icons-material/SmartButton'; import ImageIcon from '@mui/icons-material/Image'; import GridOnIcon from '@mui/icons-material/GridOn'; @@ -36,55 +36,68 @@ import TextFormatIcon from '@mui/icons-material/TextFormat'; import SpaceBarIcon from '@mui/icons-material/SpaceBar'; import PieChartIcon from '@mui/icons-material/PieChart'; -const iconMap = new Map>([ - ['Password', PasswordIcon], - ['Autocomplete', ManageSearchIcon], - ['Text', NotesIcon], - ['Link', LinkIcon], - ['Markdown', TextFormatIcon], - ['Button', SmartButtonIcon], - ['Image', ImageIcon], - ['DataGrid', GridOnIcon], - ['TextField', Crop75Icon], - ['Select', ArrowDropDownCircleIcon], - ['List', ListIcon], - ['Paper', LayersIcon], - ['Form', DnsIcon], - ['Card', ContactPageIcon], - ['Tabs', TabIcon], - ['Slider', TuneIcon], - ['Switch', ToggleOnIcon], - ['Radio', RadioButtonCheckedIcon], - ['DatePicker', DateRangeIcon], - ['FilePicker', UploadFileIcon], - ['Checkbox', CheckBoxIcon], - ['CodeComponent', DashboardCustomizeSharpIcon], - ['CreateNew', AddIcon], - ['Tabs', TabIcon], - ['Container', AutoAwesomeMosaicIcon], - ['Chart', InsightsIcon], - ['Map', PlaceIcon], - ['Drawer', ViewSidebarIcon], - ['Pie Chart', PieChartIcon], - ['Icon', MoodIcon], - ['Html', HtmlIcon], - ['PageRow', TableRowsIcon], - ['PageColumn', ViewColumnIcon], - ['Metric', TagIcon], - ['Spacer', SpaceBarIcon], -]); +const iconMap = new Map( + ( + [ + ['Password', PasswordIcon], + ['Autocomplete', ManageSearchIcon], + ['Text', NotesIcon], + ['Link', LinkIcon], + ['Markdown', TextFormatIcon], + ['Button', SmartButtonIcon], + ['Image', ImageIcon], + ['DataGrid', GridOnIcon], + ['TextField', Crop75Icon], + ['Select', ArrowDropDownCircleIcon], + ['List', ListIcon], + ['Paper', LayersIcon], + ['Form', DnsIcon], + ['Card', ContactPageIcon], + ['Tabs', TabIcon], + ['Slider', TuneIcon], + ['Switch', ToggleOnIcon], + ['Radio', RadioButtonCheckedIcon], + ['DatePicker', DateRangeIcon], + ['FilePicker', UploadFileIcon], + ['Checkbox', CheckBoxIcon], + ['CodeComponent', DashboardCustomizeSharpIcon], + ['CreateNew', AddIcon], + ['Tabs', TabIcon], + ['Container', AutoAwesomeMosaicIcon], + ['Chart', InsightsIcon], + ['Map', PlaceIcon], + ['Drawer', ViewSidebarIcon], + ['Pie Chart', PieChartIcon], + ['Icon', MoodIcon], + ['Html', HtmlIcon], + ['PageRow', TableRowsIcon], + ['PageColumn', ViewColumnIcon], + ['Metric', TagIcon], + ['Spacer', SpaceBarIcon], + ] satisfies [string, React.ComponentType][] + ).map(([id, Icon]) => { + const StyledIcon: React.ComponentType = styled(Icon, { + shouldForwardProp: (prop) => prop !== 'kind', + })<{ + kind?: ComponentItemKind; + }>(({ kind }) => ({ + fontSize: 24, + opacity: kind === 'future' ? 0.75 : 1, + })); + return [id, StyledIcon]; + }), +); type ComponentItemKind = 'future' | 'builtIn' | 'create' | 'custom'; -interface ComponentIconProps { +interface ComponentIconProps extends SvgIconProps { id: string; kind?: ComponentItemKind; - sx?: SxProps; } -export function ComponentIcon({ id: componentId, kind, sx }: ComponentIconProps) { +export function ComponentIcon({ id: componentId, kind, ...props }: ComponentIconProps) { const Icon = iconMap.get(kind === 'custom' ? 'CodeComponent' : componentId); - return Icon ? : null; + return Icon ? : null; } interface ComponentCatalogItemProps { diff --git a/packages/toolpad-studio/src/toolpad/AppEditor/PageEditor/ErrorAlert.tsx b/packages/toolpad-studio/src/toolpad/AppEditor/PageEditor/ErrorAlert.tsx index 9f4950aed63..5b50ae87586 100644 --- a/packages/toolpad-studio/src/toolpad/AppEditor/PageEditor/ErrorAlert.tsx +++ b/packages/toolpad-studio/src/toolpad/AppEditor/PageEditor/ErrorAlert.tsx @@ -1,10 +1,14 @@ import * as React from 'react'; -import { Alert, AlertTitle, IconButton, Collapse, Box, SxProps } from '@mui/material'; +import { Alert, AlertTitle, IconButton, Collapse, Box, SxProps, styled } from '@mui/material'; import ExpandLessIcon from '@mui/icons-material/ExpandLess'; import ExpandMoreIcon from '@mui/icons-material/ExpandMore'; import { indent } from '@toolpad/utils/strings'; import Pre from '../../../components/Pre'; +const AlertRoot = styled(Alert)({ + position: 'relative', +}); + export interface ErrorAlertProps { error: unknown; sx?: SxProps; @@ -37,7 +41,7 @@ export default function ErrorAlert({ error, sx }: ErrorAlertProps) { const toggleExpanded = React.useCallback(() => setExpanded((actual) => !actual), []); return ( - + {stack ? ( ) : null} - + ); } diff --git a/packages/toolpad-studio/src/toolpad/AppEditor/UpgradeNotification.tsx b/packages/toolpad-studio/src/toolpad/AppEditor/UpgradeNotification.tsx index d932b577c04..a33fc094368 100644 --- a/packages/toolpad-studio/src/toolpad/AppEditor/UpgradeNotification.tsx +++ b/packages/toolpad-studio/src/toolpad/AppEditor/UpgradeNotification.tsx @@ -3,10 +3,16 @@ import Alert, { AlertColor } from '@mui/material/Alert'; import Button from '@mui/material/Button'; import Chip from '@mui/material/Chip'; import Tooltip from '@mui/material/Tooltip'; -import { SxProps } from '@mui/material'; +import { styled, SxProps } from '@mui/material'; import OpenInNewIcon from '@mui/icons-material/OpenInNew'; import { UPGRADE_URL } from '../../constants'; +const AlertRoot = styled(Alert)({ + '.MuiAlert-action': { + paddingTop: 0, + }, +}); + export interface UpgradeAlertProps { sx?: SxProps; type?: AlertColor; @@ -16,9 +22,9 @@ export interface UpgradeAlertProps { export function UpgradeAlert({ sx, type, action, message }: UpgradeAlertProps) { return ( - {message} - + ); } diff --git a/packages/toolpad-studio/src/toolpad/propertyControls/ColorScale.tsx b/packages/toolpad-studio/src/toolpad/propertyControls/ColorScale.tsx index f2f4bf4fff3..17334b2c5ca 100644 --- a/packages/toolpad-studio/src/toolpad/propertyControls/ColorScale.tsx +++ b/packages/toolpad-studio/src/toolpad/propertyControls/ColorScale.tsx @@ -11,6 +11,7 @@ import { Input, ListItemProps, Typography, + styled, } from '@mui/material'; import AddIcon from '@mui/icons-material/Add'; import DeleteIcon from '@mui/icons-material/Delete'; @@ -19,6 +20,10 @@ import PropertyControl from '../../components/PropertyControl'; import { ColorPickerIconButton } from '../../components/ColorPicker'; import FlexFill from '../../components/FlexFill'; +const ListItemRoot = styled(ListItem)({ + gap: 1, +}); + const EMPTY_STOPS: ColorScaleStop[] = []; interface ColorScaleListItemProps extends Omit { @@ -32,12 +37,11 @@ function ColorScaleListItem({ valueLabel, value, onChange, - sx, onDelete, ...props }: ColorScaleListItemProps) { return ( - + {valueLabel ? ( {valueLabel} ) : ( @@ -66,7 +70,7 @@ function ColorScaleListItem({ > - + ); } diff --git a/packages/toolpad-studio/src/toolpad/propertyControls/ToggleButtons.tsx b/packages/toolpad-studio/src/toolpad/propertyControls/ToggleButtons.tsx index ef6ca3b6c32..76c1d476b69 100644 --- a/packages/toolpad-studio/src/toolpad/propertyControls/ToggleButtons.tsx +++ b/packages/toolpad-studio/src/toolpad/propertyControls/ToggleButtons.tsx @@ -18,7 +18,7 @@ const PropControlToggleButtonGroup = styled(ToggleButtonGroup)({ }); function SelectPropEditor({ label, propType, value, onChange, disabled }: EditorProps) { - const items = propType.type === 'string' ? propType.enum ?? [] : []; + const items = propType.type === 'string' ? (propType.enum ?? []) : []; const handleChange = React.useCallback( (event: React.MouseEvent, newValue: string) => { onChange(newValue || undefined); @@ -27,7 +27,7 @@ function SelectPropEditor({ label, propType, value, onChange, disabled }: Editor ); const enumLabels: Record = - propType.type === 'string' ? propType.enumLabels ?? {} : {}; + propType.type === 'string' ? (propType.enumLabels ?? {}) : {}; return ( diff --git a/packages/toolpad-studio/src/toolpad/propertyControls/select.tsx b/packages/toolpad-studio/src/toolpad/propertyControls/select.tsx index d47ce6ff6e4..0f9c822ef3d 100644 --- a/packages/toolpad-studio/src/toolpad/propertyControls/select.tsx +++ b/packages/toolpad-studio/src/toolpad/propertyControls/select.tsx @@ -4,7 +4,7 @@ import type { EditorProps } from '../../types'; import PropertyControl from '../../components/PropertyControl'; function SelectPropEditor({ label, propType, value, onChange, disabled }: EditorProps) { - const items = propType.type === 'string' ? propType.enum ?? [] : []; + const items = propType.type === 'string' ? (propType.enum ?? []) : []; const handleChange = React.useCallback( (event: React.ChangeEvent) => { onChange(event.target.value || undefined); @@ -13,7 +13,7 @@ function SelectPropEditor({ label, propType, value, onChange, disabled }: Editor ); const enumLabels: Record = - propType.type === 'string' ? propType.enumLabels ?? {} : {}; + propType.type === 'string' ? (propType.enumLabels ?? {}) : {}; return ( diff --git a/packages/toolpad-studio/src/toolpadDataSources/local/client.tsx b/packages/toolpad-studio/src/toolpadDataSources/local/client.tsx index 6395a590698..b9b2bc5a225 100644 --- a/packages/toolpad-studio/src/toolpadDataSources/local/client.tsx +++ b/packages/toolpad-studio/src/toolpadDataSources/local/client.tsx @@ -7,7 +7,7 @@ import { TabContext, TabList } from '@mui/lab'; import { useBrowserJsRuntime } from '@toolpad/studio-runtime/jsBrowserRuntime'; import { errorFrom } from '@toolpad/utils/errors'; import { useQuery } from '@tanstack/react-query'; -import Grid2 from '@mui/material/Unstable_Grid2'; +import Grid from '@mui/material/Unstable_Grid2'; import TabPanel from '../../components/TabPanel'; import { ClientDataSource, QueryEditorProps } from '../../types'; import { LocalPrivateApi, LocalQuery, LocalConnectionParams } from './types'; @@ -340,7 +340,7 @@ function QueryEditor({ - + {Object.entries(parameterDefs).map(([name, definiton]) => { const Control = getDefaultControl(propTypeControls, definiton, liveBindings); return Control ? ( @@ -370,7 +370,7 @@ function QueryEditor({ /> ) : null; })} - + diff --git a/packages/toolpad-studio/src/toolpadDataSources/rest/BodyEditor.tsx b/packages/toolpad-studio/src/toolpadDataSources/rest/BodyEditor.tsx index 16d2f05d065..4ec5aa08b87 100644 --- a/packages/toolpad-studio/src/toolpadDataSources/rest/BodyEditor.tsx +++ b/packages/toolpad-studio/src/toolpadDataSources/rest/BodyEditor.tsx @@ -28,6 +28,10 @@ import TabPanel from '../../components/TabPanel'; import ParametersEditor from '../../toolpad/AppEditor/PageEditor/ParametersEditor'; import { HTTP_NO_BODY } from './shared'; +const BodyEditorRoot = styled('div')({ + position: 'relative', +}); + interface ContentTypeSpec { alias: string; language: string; @@ -269,7 +273,7 @@ export default function BodyEditor({ ); return ( - + ) : null} - + ); } diff --git a/packages/toolpad-studio/src/toolpadDataSources/rest/client.tsx b/packages/toolpad-studio/src/toolpadDataSources/rest/client.tsx index 44cff36f105..190252ab1b9 100644 --- a/packages/toolpad-studio/src/toolpadDataSources/rest/client.tsx +++ b/packages/toolpad-studio/src/toolpadDataSources/rest/client.tsx @@ -286,7 +286,7 @@ function QueryEditor({ const isBrowserSide = input.attributes.query.browser; const connectionParams = isBrowserSide ? null : rawConnectionParams; - const baseUrl = isBrowserSide ? null : connectionParams?.baseUrl ?? null; + const baseUrl = isBrowserSide ? null : (connectionParams?.baseUrl ?? null); const urlValue: BindableAttrValue = input.attributes.query.url ?? ''; diff --git a/packages/toolpad-utils/package.json b/packages/toolpad-utils/package.json index 09eedbd73ae..55315162aef 100644 --- a/packages/toolpad-utils/package.json +++ b/packages/toolpad-utils/package.json @@ -61,7 +61,7 @@ "prettier": "3.3.3", "react-is": "18.3.1", "title": "3.5.3", - "vitest": "2.0.4", + "vitest": "2.0.5", "yaml": "2.4.5", "yaml-diff-patch": "2.0.0" }, diff --git a/playground/nextjs-pages/next-env.d.ts b/playground/nextjs-pages/next-env.d.ts index 4f11a03dc6c..fd36f9494e2 100644 --- a/playground/nextjs-pages/next-env.d.ts +++ b/playground/nextjs-pages/next-env.d.ts @@ -1,5 +1,6 @@ /// /// +/// // NOTE: This file should not be edited // see https://nextjs.org/docs/basic-features/typescript for more information. diff --git a/playground/nextjs-pages/package.json b/playground/nextjs-pages/package.json index c57b6fa00ee..2325c25580c 100644 --- a/playground/nextjs-pages/package.json +++ b/playground/nextjs-pages/package.json @@ -12,10 +12,11 @@ "@mui/icons-material": "5.16.4", "@mui/material": "5.16.4", "@mui/material-nextjs": "5.16.4", + "next-auth": "beta", "@toolpad/core": "workspace:*", "@types/react": "18.3.3", "@types/react-dom": "18.3.0", - "eslint-config-next": "14.2.4", + "eslint-config-next": "14.2.5", "next": "14.2.5", "react": "18.3.1", "react-dom": "18.3.1" diff --git a/playground/nextjs-pages/src/app/api/auth/[...nextauth]/route.ts b/playground/nextjs-pages/src/app/api/auth/[...nextauth]/route.ts new file mode 100644 index 00000000000..ca225652075 --- /dev/null +++ b/playground/nextjs-pages/src/app/api/auth/[...nextauth]/route.ts @@ -0,0 +1,3 @@ +import { handlers } from '../../../../auth'; + +export const { GET, POST } = handlers; diff --git a/playground/nextjs-pages/src/auth.ts b/playground/nextjs-pages/src/auth.ts new file mode 100644 index 00000000000..ea2d24096a6 --- /dev/null +++ b/playground/nextjs-pages/src/auth.ts @@ -0,0 +1,56 @@ +import NextAuth from 'next-auth'; +import GitHub from 'next-auth/providers/github'; +import Credentials from 'next-auth/providers/credentials'; +import type { Provider } from 'next-auth/providers'; + +const providers: Provider[] = [ + GitHub({ + clientId: process.env.AUTH_GITHUB_ID, + clientSecret: process.env.AUTH_GITHUB_SECRET, + }), + Credentials({ + credentials: { + email: { label: 'Email Address', type: 'email' }, + password: { label: 'Password', type: 'password' }, + }, + authorize(c) { + if (c.password !== 'password') { + return null; + } + return { + id: 'test', + name: 'Test User', + email: c.email, + }; + }, + }), +]; + +export const providerMap = providers.map((provider) => { + if (typeof provider === 'function') { + const providerData = provider(); + return { id: providerData.id, name: providerData.name }; + } + return { id: provider.id, name: provider.name }; +}); + +export const { handlers, auth } = NextAuth({ + providers, + secret: process.env.AUTH_SECRET, + pages: { + signIn: '/auth/signin', + signOut: '/auth/signout', + }, + callbacks: { + authorized({ auth: session, request: { nextUrl } }) { + const isLoggedIn = !!session?.user; + const isPublicPage = nextUrl.pathname.startsWith('/public'); + + if (isPublicPage || isLoggedIn) { + return true; + } + + return false; // Redirect unauthenticated users to login page + }, + }, +}); diff --git a/playground/nextjs-pages/src/middleware.ts b/playground/nextjs-pages/src/middleware.ts new file mode 100644 index 00000000000..02c48f4db60 --- /dev/null +++ b/playground/nextjs-pages/src/middleware.ts @@ -0,0 +1,6 @@ +export { auth as middleware } from './auth'; + +export const config = { + // https://nextjs.org/docs/app/building-your-application/routing/middleware#matcher + matcher: ['/((?!api|_next/static|_next/image|.*\\.png$).*)'], +}; diff --git a/playground/nextjs-pages/src/pages/_app.tsx b/playground/nextjs-pages/src/pages/_app.tsx index 854810bfda6..89ca3684acc 100644 --- a/playground/nextjs-pages/src/pages/_app.tsx +++ b/playground/nextjs-pages/src/pages/_app.tsx @@ -1,3 +1,4 @@ +import * as React from 'react'; import { AppProvider } from '@toolpad/core/nextjs'; import { DashboardLayout } from '@toolpad/core/DashboardLayout'; import Head from 'next/head'; @@ -5,12 +6,14 @@ import { AppCacheProvider } from '@mui/material-nextjs/v14-pagesRouter'; import DashboardIcon from '@mui/icons-material/Dashboard'; import ShoppingCartIcon from '@mui/icons-material/ShoppingCart'; import type { NextPage } from 'next'; - import type { AppProps } from 'next/app'; import type { Navigation } from '@toolpad/core'; +import { SessionProvider, signIn, signOut, useSession } from 'next-auth/react'; +import LinearProgress from '@mui/material/LinearProgress'; export type NextPageWithLayout

= NextPage & { getLayout?: (page: React.ReactElement) => React.ReactNode; + requireAuth?: boolean; }; type AppPropsWithLayout = AppProps & { @@ -33,21 +36,66 @@ const NAVIGATION: Navigation = [ }, ]; +const BRANDING = { + title: 'My Toolpad Core App', +}; + +const AUTHENTICATION = { + signIn, + signOut, +}; + function getDefaultLayout(page: React.ReactElement) { return {page}; } -export default function App(props: AppPropsWithLayout) { - const { Component, pageProps } = props; +function RequireAuth({ children }: { children: React.ReactNode }) { + const { status } = useSession(); - const getLayout = Component.getLayout ?? getDefaultLayout; + if (status === 'loading') { + return ; + } + return children; +} + +function AppLayout({ children }: { children: React.ReactNode }) { + const { data: session } = useSession(); return ( - + - {getLayout()} + + {children} + + + ); +} + +export default function App(props: AppPropsWithLayout) { + const { + Component, + pageProps: { session, ...pageProps }, + } = props; + + const getLayout = Component.getLayout ?? getDefaultLayout; + const requireAuth = Component.requireAuth ?? true; + + let pageContent = getLayout(); + if (requireAuth) { + pageContent = {pageContent}; + } + pageContent = {pageContent}; + + return ( + + {pageContent} ); } diff --git a/playground/nextjs-pages/src/pages/auth/signin.tsx b/playground/nextjs-pages/src/pages/auth/signin.tsx new file mode 100644 index 00000000000..5898af28075 --- /dev/null +++ b/playground/nextjs-pages/src/pages/auth/signin.tsx @@ -0,0 +1,81 @@ +import * as React from 'react'; +import type { GetServerSidePropsContext, InferGetServerSidePropsType } from 'next'; +import { SignInPage } from '@toolpad/core/SignInPage'; +import { signIn } from 'next-auth/react'; +import { useRouter } from 'next/router'; +import { auth, providerMap } from '../../auth'; + +export default function SignIn({ + providers, +}: InferGetServerSidePropsType) { + const router = useRouter(); + return ( + { + try { + const signInResponse = await signIn( + provider.id, + formData + ? { + email: formData.get('email') as string, + password: formData.get('password') as string, + redirect: false, + } + : { callbackUrl: callbackUrl ?? '/' }, + ); + if (signInResponse && signInResponse.error) { + // Workaround for "Configuration" being returned as an error + // in case of invalid credentials when using credentials provider + // https://github.com/nextauthjs/next-auth/issues/11190 + if (signInResponse.error === 'Configuration' && provider.id === 'credentials') { + return { + error: 'Invalid credentials.', + type: 'CredentialsSignin', + }; + } + return { + error: signInResponse.error, + type: 'AuthError', + }; + } + // If the sign in was successful, + // manually redirect to the callback URL + // since the `redirect: false` option was used + // to be able to display error messages on the same page without a full page reload + if (provider.id === 'credentials') { + router.push(callbackUrl ?? '/'); + } + return {}; + } catch (error) { + // An error boundary must exist to handle unknown errors + return { + error: 'Something went wrong.', + type: 'UnknownError', + }; + } + }} + /> + ); +} + +SignIn.getLayout = (page: React.ReactNode) => page; + +SignIn.requireAuth = false; + +export async function getServerSideProps(context: GetServerSidePropsContext) { + const session = await auth(context); + + // If the user is already logged in, redirect. + // Note: Make sure not to redirect to the same page + // To avoid an infinite loop! + if (session) { + return { redirect: { destination: '/' } }; + } + + return { + props: { + providers: providerMap, + }, + }; +} diff --git a/playground/nextjs-pages/tsconfig.json b/playground/nextjs-pages/tsconfig.json index a263842bf38..bb5584ed1a4 100644 --- a/playground/nextjs-pages/tsconfig.json +++ b/playground/nextjs-pages/tsconfig.json @@ -11,8 +11,13 @@ "resolveJsonModule": true, "isolatedModules": true, "jsx": "preserve", - "incremental": true + "incremental": true, + "plugins": [ + { + "name": "next" + } + ] }, - "include": ["next-env.d.ts", "**/*.ts", "**/*.tsx"], + "include": ["next-env.d.ts", "**/*.ts", "**/*.tsx", ".next/types/**/*.ts"], "exclude": ["node_modules"] } diff --git a/playground/nextjs/.gitignore b/playground/nextjs/.gitignore new file mode 100644 index 00000000000..68c5d18f00d --- /dev/null +++ b/playground/nextjs/.gitignore @@ -0,0 +1,5 @@ +node_modules/ +/test-results/ +/playwright-report/ +/blob-report/ +/playwright/.cache/ diff --git a/playground/nextjs/package.json b/playground/nextjs/package.json index 4820e657027..c810313af96 100644 --- a/playground/nextjs/package.json +++ b/playground/nextjs/package.json @@ -10,13 +10,16 @@ "@emotion/react": "11.13.0", "@emotion/styled": "11.13.0", "@mui/icons-material": "5.16.4", + "@mui/lab": "5.0.0-alpha.170", "@mui/material": "5.16.4", "@mui/material-nextjs": "5.16.4", "@toolpad/core": "workspace:*", + "@types/node": "20.14.14", "@types/react": "18.3.3", "@types/react-dom": "18.3.0", - "eslint-config-next": "14.2.4", + "eslint-config-next": "14.2.5", "next": "14.2.5", + "next-auth": "beta", "react": "18.3.1", "react-dom": "18.3.1" } diff --git a/playground/nextjs/src/app/(dashboard)/page.tsx b/playground/nextjs/src/app/(dashboard)/page.tsx index 3e404ef074a..2200d6af95d 100644 --- a/playground/nextjs/src/app/(dashboard)/page.tsx +++ b/playground/nextjs/src/app/(dashboard)/page.tsx @@ -1,8 +1,11 @@ import * as React from 'react'; import Typography from '@mui/material/Typography'; import Box from '@mui/material/Box'; +import { auth } from '../../auth'; + +export default async function HomePage() { + const session = await auth(); -export default function HomePage() { return ( - Welcome to Toolpad! + Welcome to Toolpad, {session?.user?.name || 'User'}! ); } diff --git a/playground/nextjs/src/app/api/auth/[...nextauth]/route.ts b/playground/nextjs/src/app/api/auth/[...nextauth]/route.ts new file mode 100644 index 00000000000..ca225652075 --- /dev/null +++ b/playground/nextjs/src/app/api/auth/[...nextauth]/route.ts @@ -0,0 +1,3 @@ +import { handlers } from '../../../../auth'; + +export const { GET, POST } = handlers; diff --git a/playground/nextjs/src/app/auth/signin/page.tsx b/playground/nextjs/src/app/auth/signin/page.tsx new file mode 100644 index 00000000000..697e94ca73c --- /dev/null +++ b/playground/nextjs/src/app/auth/signin/page.tsx @@ -0,0 +1,47 @@ +import * as React from 'react'; +import type { AuthProvider } from '@toolpad/core'; +import { SignInPage } from '@toolpad/core/SignInPage'; +import { AuthError } from 'next-auth'; +import { providerMap, signIn } from '../../../auth'; + +export default function SignIn() { + return ( + { + 'use server'; + try { + return await signIn(provider.id, { + ...(formData && { email: formData.get('email'), password: formData.get('password') }), + redirectTo: callbackUrl ?? '/', + }); + } catch (error) { + // The desired flow for successful sign in in all cases + // and unsuccessful sign in for OAuth providers will cause a `redirect`, + // and `redirect` is a throwing function, so we need to re-throw + // to allow the redirect to happen + // Source: https://github.com/vercel/next.js/issues/49298#issuecomment-1542055642 + // Detect a `NEXT_REDIRECT` error and re-throw it + if (error instanceof Error && error.message === 'NEXT_REDIRECT') { + throw error; + } + // Handle Auth.js errors + if (error instanceof AuthError) { + return { + error: + error.type === 'CredentialsSignin' + ? 'Invalid credentials.' + : 'An error with Auth.js occurred.', + type: error.type, + }; + } + // An error boundary must exist to handle unknown errors + return { + error: 'Something went wrong.', + type: 'UnknownError', + }; + } + }} + /> + ); +} diff --git a/playground/nextjs/src/app/layout.tsx b/playground/nextjs/src/app/layout.tsx index 59483821c00..f1b7fc6c796 100644 --- a/playground/nextjs/src/app/layout.tsx +++ b/playground/nextjs/src/app/layout.tsx @@ -4,6 +4,8 @@ import { AppRouterCacheProvider } from '@mui/material-nextjs/v14-appRouter'; import DashboardIcon from '@mui/icons-material/Dashboard'; import ShoppingCartIcon from '@mui/icons-material/ShoppingCart'; import type { Navigation } from '@toolpad/core'; +import { SessionProvider, signIn, signOut } from 'next-auth/react'; +import { auth } from '../auth'; const NAVIGATION: Navigation = [ { @@ -22,13 +24,33 @@ const NAVIGATION: Navigation = [ }, ]; -export default function RootLayout(props: { children: React.ReactNode }) { +const BRANDING = { + title: 'My Toolpad Core App', +}; + +const AUTHENTICATION = { + signIn, + signOut, +}; + +export default async function RootLayout(props: { children: React.ReactNode }) { + const session = await auth(); + return ( - - {props.children} - + + + + {props.children} + + + ); diff --git a/playground/nextjs/src/app/public/layout.tsx b/playground/nextjs/src/app/public/layout.tsx new file mode 100644 index 00000000000..94ecc97609f --- /dev/null +++ b/playground/nextjs/src/app/public/layout.tsx @@ -0,0 +1,6 @@ +import * as React from 'react'; +import { DashboardLayout } from '@toolpad/core/DashboardLayout'; + +export default async function DashboardPagesLayout(props: { children: React.ReactNode }) { + return {props.children}; +} diff --git a/playground/nextjs/src/app/public/page.tsx b/playground/nextjs/src/app/public/page.tsx new file mode 100644 index 00000000000..800d6b2d3f2 --- /dev/null +++ b/playground/nextjs/src/app/public/page.tsx @@ -0,0 +1,21 @@ +import * as React from 'react'; +import Typography from '@mui/material/Typography'; +import Box from '@mui/material/Box'; + +export default async function HomePage() { + return ( + + + Public page + + + ); +} diff --git a/playground/nextjs/src/auth.ts b/playground/nextjs/src/auth.ts new file mode 100644 index 00000000000..8d879974213 --- /dev/null +++ b/playground/nextjs/src/auth.ts @@ -0,0 +1,55 @@ +import NextAuth from 'next-auth'; +import GitHub from 'next-auth/providers/github'; +import Credentials from 'next-auth/providers/credentials'; +import type { Provider } from 'next-auth/providers'; + +const providers: Provider[] = [ + GitHub({ + clientId: process.env.AUTH_GITHUB_ID, + clientSecret: process.env.AUTH_GITHUB_SECRET, + }), + Credentials({ + credentials: { + email: { label: 'Email Address', type: 'email' }, + password: { label: 'Password', type: 'password' }, + }, + authorize(c) { + if (c.password !== 'password') { + return null; + } + return { + id: 'test', + name: 'Test User', + email: c.email, + }; + }, + }), +]; + +export const providerMap = providers.map((provider) => { + if (typeof provider === 'function') { + const providerData = provider(); + return { id: providerData.id, name: providerData.name }; + } + return { id: provider.id, name: provider.name }; +}); + +export const { handlers, auth, signIn, signOut } = NextAuth({ + providers, + secret: process.env.AUTH_SECRET, + pages: { + signIn: '/auth/signin', + }, + callbacks: { + authorized({ auth: session, request: { nextUrl } }) { + const isLoggedIn = !!session?.user; + const isPublicPage = nextUrl.pathname.startsWith('/public'); + + if (isPublicPage || isLoggedIn) { + return true; + } + + return false; // Redirect unauthenticated users to login page + }, + }, +}); diff --git a/playground/nextjs/src/middleware.ts b/playground/nextjs/src/middleware.ts new file mode 100644 index 00000000000..02c48f4db60 --- /dev/null +++ b/playground/nextjs/src/middleware.ts @@ -0,0 +1,6 @@ +export { auth as middleware } from './auth'; + +export const config = { + // https://nextjs.org/docs/app/building-your-application/routing/middleware#matcher + matcher: ['/((?!api|_next/static|_next/image|.*\\.png$).*)'], +}; diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 00841d4a535..2914cd39d54 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -15,8 +15,8 @@ importers: specifier: 4.17.7 version: 4.17.7 '@vitest/browser': - specifier: 2.0.4 - version: 2.0.4(playwright@1.45.3)(typescript@5.5.3)(vitest@2.0.4) + specifier: 2.0.5 + version: 2.0.5(playwright@1.45.3)(typescript@5.5.4)(vitest@2.0.5) archiver: specifier: 7.0.1 version: 7.0.1 @@ -28,7 +28,7 @@ importers: version: 7.4.2 eslint-import-resolver-exports: specifier: 1.0.0-beta.5 - version: 1.0.0-beta.5(eslint-plugin-import@2.29.1(@typescript-eslint/parser@7.14.1(eslint@8.57.0)(typescript@5.5.3))(eslint-import-resolver-webpack@0.13.8)(eslint@8.57.0))(eslint@8.57.0) + version: 1.0.0-beta.5(eslint-plugin-import@2.29.1(@typescript-eslint/parser@7.18.0(eslint@8.57.0)(typescript@5.5.4))(eslint-import-resolver-webpack@0.13.8)(eslint@8.57.0))(eslint@8.57.0) invariant: specifier: 2.2.4 version: 2.2.4 @@ -43,13 +43,13 @@ importers: version: 7.6.3 tsup: specifier: 8.1.0 - version: 8.1.0(postcss@8.4.39)(typescript@5.5.3) + version: 8.1.0(postcss@8.4.39)(typescript@5.5.4) tsx: - specifier: 4.16.2 - version: 4.16.2 + specifier: 4.16.5 + version: 4.16.5 vitest: - specifier: 2.0.4 - version: 2.0.4(@types/node@20.14.12)(@vitest/browser@2.0.4)(jsdom@24.1.0)(terser@5.31.1) + specifier: 2.0.5 + version: 2.0.5(@types/node@20.14.14)(@vitest/browser@2.0.5)(jsdom@24.1.1)(terser@5.31.1) yargs: specifier: 17.7.2 version: 17.7.2 @@ -57,36 +57,36 @@ importers: specifier: 3.23.8 version: 3.23.8 zod-to-json-schema: - specifier: 3.23.1 - version: 3.23.1(zod@3.23.8) + specifier: 3.23.2 + version: 3.23.2(zod@3.23.8) devDependencies: '@argos-ci/core': - specifier: 2.3.0 - version: 2.3.0 + specifier: 2.4.1 + version: 2.4.1 '@babel/cli': specifier: 7.24.8 - version: 7.24.8(@babel/core@7.24.9) + version: 7.24.8(@babel/core@7.25.2) '@babel/core': - specifier: 7.24.9 - version: 7.24.9 + specifier: 7.25.2 + version: 7.25.2 '@babel/node': - specifier: 7.24.8 - version: 7.24.8(@babel/core@7.24.9) + specifier: 7.25.0 + version: 7.25.0(@babel/core@7.25.2) '@babel/plugin-transform-react-constant-elements': - specifier: 7.24.7 - version: 7.24.7(@babel/core@7.24.9) + specifier: 7.25.1 + version: 7.25.1(@babel/core@7.25.2) '@babel/plugin-transform-runtime': specifier: 7.24.7 - version: 7.24.7(@babel/core@7.24.9) + version: 7.24.7(@babel/core@7.25.2) '@babel/preset-env': - specifier: 7.24.8 - version: 7.24.8(@babel/core@7.24.9) + specifier: 7.25.3 + version: 7.25.3(@babel/core@7.25.2) '@babel/preset-react': specifier: 7.24.7 - version: 7.24.7(@babel/core@7.24.9) + version: 7.24.7(@babel/core@7.25.2) '@babel/preset-typescript': specifier: 7.24.7 - version: 7.24.7(@babel/core@7.24.9) + version: 7.24.7(@babel/core@7.25.2) '@mui/internal-docs-utils': specifier: 1.0.8 version: 1.0.8 @@ -97,11 +97,11 @@ importers: specifier: 1.0.13 version: 1.0.13 '@mui/monorepo': - specifier: github:mui/material-ui#d69604d3feb1dd1dd9b9bf3398c08237e77dafa6 - version: https://codeload.github.com/mui/material-ui/tar.gz/d69604d3feb1dd1dd9b9bf3398c08237e77dafa6(encoding@0.1.13) + specifier: github:mui/material-ui#85a3b55d22570881db6ac1b99181ef79c18fc58d + version: https://codeload.github.com/mui/material-ui/tar.gz/85a3b55d22570881db6ac1b99181ef79c18fc58d(encoding@0.1.13) '@mui/x-charts': - specifier: 7.11.1 - version: 7.11.1(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@emotion/styled@11.13.0(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(react@18.3.1))(@mui/material@6.0.0-beta.3(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@emotion/styled@11.13.0(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + specifier: 7.12.0 + version: 7.12.0(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@emotion/styled@11.13.0(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(react@18.3.1))(@mui/material@6.0.0-beta.4(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@emotion/styled@11.13.0(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) '@next/eslint-plugin-next': specifier: 14.2.5 version: 14.2.5 @@ -109,8 +109,8 @@ importers: specifier: 1.45.3 version: 1.45.3 '@testing-library/jest-dom': - specifier: ^6.4.6 - version: 6.4.6(vitest@2.0.4(@types/node@20.14.12)(@vitest/browser@2.0.4)(jsdom@24.1.0)(terser@5.31.1)) + specifier: ^6.4.8 + version: 6.4.8 '@testing-library/react': specifier: 16.0.0 version: 16.0.0(@testing-library/dom@10.4.0)(@types/react-dom@18.3.0)(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) @@ -130,20 +130,20 @@ importers: specifier: 2.2.37 version: 2.2.37 '@types/node': - specifier: 20.14.12 - version: 20.14.12 + specifier: 20.14.14 + version: 20.14.14 '@types/yargs': specifier: 17.0.32 version: 17.0.32 '@typescript-eslint/eslint-plugin': - specifier: 7.14.1 - version: 7.14.1(@typescript-eslint/parser@7.14.1(eslint@8.57.0)(typescript@5.5.3))(eslint@8.57.0)(typescript@5.5.3) + specifier: 7.18.0 + version: 7.18.0(@typescript-eslint/parser@7.18.0(eslint@8.57.0)(typescript@5.5.4))(eslint@8.57.0)(typescript@5.5.4) '@typescript-eslint/parser': - specifier: 7.14.1 - version: 7.14.1(eslint@8.57.0)(typescript@5.5.3) + specifier: 7.18.0 + version: 7.18.0(eslint@8.57.0)(typescript@5.5.4) '@vitest/coverage-v8': - specifier: 2.0.4 - version: 2.0.4(vitest@2.0.4(@types/node@20.14.12)(@vitest/browser@2.0.4)(jsdom@24.1.0)(terser@5.31.1)) + specifier: 2.0.5 + version: 2.0.5(vitest@2.0.5(@types/node@20.14.14)(@vitest/browser@2.0.5)(jsdom@24.1.1)(terser@5.31.1)) babel-plugin-react-remove-properties: specifier: 0.3.0 version: 0.3.0 @@ -161,22 +161,22 @@ 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@7.14.1(eslint@8.57.0)(typescript@5.5.3))(eslint-import-resolver-webpack@0.13.8)(eslint@8.57.0))(eslint-plugin-jsx-a11y@6.9.0(eslint@8.57.0))(eslint-plugin-react-hooks@4.6.2(eslint@8.57.0))(eslint-plugin-react@7.34.3(eslint@8.57.0))(eslint@8.57.0) + version: 19.0.4(eslint-plugin-import@2.29.1(@typescript-eslint/parser@7.18.0(eslint@8.57.0)(typescript@5.5.4))(eslint-import-resolver-webpack@0.13.8)(eslint@8.57.0))(eslint-plugin-jsx-a11y@6.9.0(eslint@8.57.0))(eslint-plugin-react-hooks@4.6.2(eslint@8.57.0))(eslint-plugin-react@7.35.0(eslint@8.57.0))(eslint@8.57.0) eslint-config-airbnb-typescript: specifier: 18.0.0 - version: 18.0.0(@typescript-eslint/eslint-plugin@7.14.1(@typescript-eslint/parser@7.14.1(eslint@8.57.0)(typescript@5.5.3))(eslint@8.57.0)(typescript@5.5.3))(@typescript-eslint/parser@7.14.1(eslint@8.57.0)(typescript@5.5.3))(eslint-plugin-import@2.29.1(@typescript-eslint/parser@7.14.1(eslint@8.57.0)(typescript@5.5.3))(eslint-import-resolver-webpack@0.13.8)(eslint@8.57.0))(eslint@8.57.0) + version: 18.0.0(@typescript-eslint/eslint-plugin@7.18.0(@typescript-eslint/parser@7.18.0(eslint@8.57.0)(typescript@5.5.4))(eslint@8.57.0)(typescript@5.5.4))(@typescript-eslint/parser@7.18.0(eslint@8.57.0)(typescript@5.5.4))(eslint-plugin-import@2.29.1(@typescript-eslint/parser@7.18.0(eslint@8.57.0)(typescript@5.5.4))(eslint-import-resolver-webpack@0.13.8)(eslint@8.57.0))(eslint@8.57.0) eslint-config-prettier: specifier: 9.1.0 version: 9.1.0(eslint@8.57.0) eslint-import-resolver-webpack: specifier: 0.13.8 - version: 0.13.8(eslint-plugin-import@2.29.1)(webpack@5.92.1(esbuild@0.21.5)) + version: 0.13.8(eslint-plugin-import@2.29.1)(webpack@5.93.0(esbuild@0.21.5)) eslint-plugin-filenames: specifier: 1.3.2 version: 1.3.2(eslint@8.57.0) eslint-plugin-import: specifier: 2.29.1 - version: 2.29.1(@typescript-eslint/parser@7.14.1(eslint@8.57.0)(typescript@5.5.3))(eslint-import-resolver-webpack@0.13.8)(eslint@8.57.0) + version: 2.29.1(@typescript-eslint/parser@7.18.0(eslint@8.57.0)(typescript@5.5.4))(eslint-import-resolver-webpack@0.13.8)(eslint@8.57.0) eslint-plugin-jsx-a11y: specifier: 6.9.0 version: 6.9.0(eslint@8.57.0) @@ -184,11 +184,11 @@ importers: specifier: workspace:* version: link:packages/eslint-plugin-material-ui eslint-plugin-mocha: - specifier: 10.4.3 - version: 10.4.3(eslint@8.57.0) + specifier: 10.5.0 + version: 10.5.0(eslint@8.57.0) eslint-plugin-react: - specifier: 7.34.3 - version: 7.34.3(eslint@8.57.0) + specifier: 7.35.0 + version: 7.35.0(eslint@8.57.0) eslint-plugin-react-compiler: specifier: latest version: 0.0.0-experimental-9ed098e-20240725(eslint@8.57.0) @@ -197,10 +197,10 @@ importers: version: 4.6.2(eslint@8.57.0) eslint-plugin-testing-library: specifier: ^6.2.2 - version: 6.2.2(eslint@8.57.0)(typescript@5.5.3) + version: 6.2.2(eslint@8.57.0)(typescript@5.5.4) eslint-plugin-typescript-enum: specifier: 2.1.0 - version: 2.1.0(eslint@8.57.0)(typescript@5.5.3) + version: 2.1.0(eslint@8.57.0)(typescript@5.5.4) execa: specifier: 9.3.0 version: 9.3.0 @@ -217,20 +217,20 @@ importers: specifier: 14.0.2 version: 14.0.2 jsdom: - specifier: 24.1.0 - version: 24.1.0 + specifier: 24.1.1 + version: 24.1.1 lerna: - specifier: 8.1.6 - version: 8.1.6(babel-plugin-macros@3.1.0)(encoding@0.1.13) + specifier: 8.1.7 + version: 8.1.7(babel-plugin-macros@3.1.0)(encoding@0.1.13) markdownlint-cli2: specifier: 0.13.0 version: 0.13.0 prettier: - specifier: 3.3.2 - version: 3.3.2 + specifier: 3.3.3 + version: 3.3.3 pretty-quick: specifier: 4.0.0 - version: 4.0.0(prettier@3.3.2) + version: 4.0.0(prettier@3.3.3) react-docgen: specifier: 5.4.3 version: 5.4.3 @@ -244,29 +244,29 @@ importers: specifier: 13.0.0 version: 13.0.0 rimraf: - specifier: 5.0.8 - version: 5.0.8 + specifier: 5.0.10 + version: 5.0.10 typescript: - specifier: 5.5.3 - version: 5.5.3 + specifier: 5.5.4 + version: 5.5.4 unist-util-visit: specifier: 2.0.3 version: 2.0.3 vitest-dom: specifier: 0.1.1 - version: 0.1.1(vitest@2.0.4(@types/node@20.14.12)(@vitest/browser@2.0.4)(jsdom@24.1.0)(terser@5.31.1)) + version: 0.1.1(vitest@2.0.5(@types/node@20.14.14)(@vitest/browser@2.0.5)(jsdom@24.1.1)(terser@5.31.1)) vitest-fail-on-console: specifier: 0.7.0 - version: 0.7.0(vite@5.3.5(@types/node@20.14.12)(terser@5.31.1))(vitest@2.0.4(@types/node@20.14.12)(@vitest/browser@2.0.4)(jsdom@24.1.0)(terser@5.31.1)) + version: 0.7.0(vite@5.3.5(@types/node@20.14.14)(terser@5.31.1))(vitest@2.0.5(@types/node@20.14.14)(@vitest/browser@2.0.5)(jsdom@24.1.1)(terser@5.31.1)) docs: dependencies: '@babel/plugin-transform-object-assign': specifier: 7.24.7 - version: 7.24.7(@babel/core@7.24.9) + version: 7.24.7(@babel/core@7.25.2) '@babel/runtime-corejs2': - specifier: 7.24.8 - version: 7.24.8 + specifier: 7.25.0 + version: 7.25.0 '@date-io/date-fns-jalali': specifier: 3.0.0 version: 3.0.0(date-fns-jalali@2.29.3-0) @@ -290,10 +290,10 @@ importers: version: 5.0.0-beta.40(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) '@mui/docs': specifier: next - version: 6.0.0-beta.3(5oajvorg5gjywoyagbfdqjz7vu) + version: 6.0.0-beta.4(663ct36pfwwwwq4g3ctfmmp24e) '@mui/icons-material': specifier: next - version: 6.0.0-beta.3(@mui/material@6.0.0-beta.3(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@emotion/styled@11.13.0(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(@types/react@18.3.3)(react@18.3.1) + version: 6.0.0-beta.4(@mui/material@6.0.0-beta.4(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@emotion/styled@11.13.0(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(@types/react@18.3.3)(react@18.3.1) '@mui/internal-markdown': specifier: ^1.0.1 version: 1.0.8 @@ -302,31 +302,31 @@ importers: version: 5.0.0-beta.46(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@emotion/styled@11.13.0(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) '@mui/lab': specifier: next - version: 6.0.0-beta.3(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@emotion/styled@11.13.0(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(react@18.3.1))(@mui/material@6.0.0-beta.3(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@emotion/styled@11.13.0(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + version: 6.0.0-beta.4(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@emotion/styled@11.13.0(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(react@18.3.1))(@mui/material@6.0.0-beta.4(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@emotion/styled@11.13.0(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) '@mui/material': specifier: next - version: 6.0.0-beta.3(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@emotion/styled@11.13.0(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + version: 6.0.0-beta.4(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@emotion/styled@11.13.0(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) '@mui/material-nextjs': specifier: next - version: 6.0.0-beta.3(@emotion/cache@11.13.1)(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@emotion/server@11.11.0)(@types/react@18.3.3)(next@14.2.5(@babel/core@7.24.9)(@opentelemetry/api@1.9.0)(@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) + version: 6.0.0-beta.4(@emotion/cache@11.13.1)(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@emotion/server@11.11.0)(@types/react@18.3.3)(next@14.2.5(@babel/core@7.25.2)(@opentelemetry/api@1.9.0)(@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) '@mui/styles': specifier: next - version: 6.0.0-beta.3(@types/react@18.3.3)(react@18.3.1) + version: 6.0.0-beta.4(@types/react@18.3.3)(react@18.3.1) '@mui/system': specifier: next - version: 6.0.0-beta.3(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@emotion/styled@11.13.0(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(react@18.3.1) + version: 6.0.0-beta.4(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@emotion/styled@11.13.0(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(react@18.3.1) '@mui/utils': specifier: next - version: 6.0.0-beta.3(@types/react@18.3.3)(react@18.3.1) + version: 6.0.0-beta.4(@types/react@18.3.3)(react@18.3.1) '@mui/x-date-pickers': - specifier: 7.11.1 - version: 7.11.1(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@emotion/styled@11.13.0(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(react@18.3.1))(@mui/material@6.0.0-beta.3(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@emotion/styled@11.13.0(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(@types/react@18.3.3)(date-fns-jalali@2.29.3-0)(date-fns@2.30.0)(dayjs@1.11.11)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + specifier: 7.12.0 + version: 7.12.0(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@emotion/styled@11.13.0(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(react@18.3.1))(@mui/material@6.0.0-beta.4(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@emotion/styled@11.13.0(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(@types/react@18.3.3)(date-fns-jalali@2.29.3-0)(date-fns@2.30.0)(dayjs@1.11.11)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) '@mui/x-date-pickers-pro': - specifier: 7.11.1 - version: 7.11.1(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@emotion/styled@11.13.0(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(react@18.3.1))(@mui/material@6.0.0-beta.3(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@emotion/styled@11.13.0(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(@types/react@18.3.3)(date-fns-jalali@2.29.3-0)(date-fns@2.30.0)(dayjs@1.11.11)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + specifier: 7.12.0 + version: 7.12.0(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@emotion/styled@11.13.0(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(react@18.3.1))(@mui/material@6.0.0-beta.4(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@emotion/styled@11.13.0(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(@types/react@18.3.3)(date-fns-jalali@2.29.3-0)(date-fns@2.30.0)(dayjs@1.11.11)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) '@mui/x-license': - specifier: 7.11.1 - version: 7.11.1(@types/react@18.3.3)(react@18.3.1) + specifier: 7.12.0 + version: 7.12.0(@types/react@18.3.3)(react@18.3.1) '@toolpad/core': specifier: workspace:* version: link:../packages/toolpad-core @@ -416,7 +416,7 @@ importers: version: 7.4.7(react@18.3.1) next: specifier: ^14.2.5 - version: 14.2.5(@babel/core@7.24.9)(@opentelemetry/api@1.9.0)(@playwright/test@1.45.3)(babel-plugin-macros@3.1.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + version: 14.2.5(@babel/core@7.25.2)(@opentelemetry/api@1.9.0)(@playwright/test@1.45.3)(babel-plugin-macros@3.1.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) nprogress: specifier: 0.2.0 version: 0.2.0 @@ -485,14 +485,14 @@ importers: version: 3.23.8 devDependencies: '@babel/core': - specifier: 7.24.9 - version: 7.24.9 + specifier: 7.25.2 + version: 7.25.2 '@babel/plugin-transform-react-constant-elements': - specifier: 7.24.7 - version: 7.24.7(@babel/core@7.24.9) + specifier: 7.25.1 + version: 7.25.1(@babel/core@7.25.2) '@babel/preset-typescript': specifier: 7.24.7 - version: 7.24.7(@babel/core@7.24.9) + version: 7.24.7(@babel/core@7.25.2) '@types/babel__core': specifier: ^7.20.5 version: 7.20.5 @@ -533,8 +533,8 @@ importers: packages/create-toolpad-app: dependencies: '@inquirer/prompts': - specifier: ^5.3.2 - version: 5.3.2 + specifier: ^5.3.6 + version: 5.3.6 '@toolpad/utils': specifier: workspace:* version: link:../toolpad-utils @@ -564,8 +564,8 @@ importers: specifier: 2.2.37 version: 2.2.37 '@types/node': - specifier: 20.14.12 - version: 20.14.12 + specifier: 20.14.14 + version: 20.14.14 '@types/semver': specifier: 7.5.8 version: 7.5.8 @@ -589,8 +589,8 @@ importers: specifier: 8.56.11 version: 8.56.11 '@typescript-eslint/parser': - specifier: 7.14.1 - version: 7.14.1(eslint@8.57.0)(typescript@5.5.4) + specifier: 7.18.0 + version: 7.18.0(eslint@8.57.0)(typescript@5.5.4) packages/toolpad-core: dependencies: @@ -641,14 +641,14 @@ importers: specifier: ^17.0.3 version: 17.0.3 '@vitest/browser': - specifier: 2.0.4 - version: 2.0.4(playwright@1.45.3)(typescript@5.5.4)(vitest@2.0.4) + specifier: 2.0.5 + version: 2.0.5(playwright@1.45.3)(typescript@5.5.4)(vitest@2.0.5) next: specifier: ^14.2.5 - version: 14.2.5(@babel/core@7.24.9)(@opentelemetry/api@1.9.0)(@playwright/test@1.45.3)(babel-plugin-macros@3.1.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + version: 14.2.5(@babel/core@7.25.2)(@opentelemetry/api@1.9.0)(@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-router-mock: specifier: ^0.9.13 - version: 0.9.13(next@14.2.5(@babel/core@7.24.9)(@opentelemetry/api@1.9.0)(@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) + version: 0.9.13(next@14.2.5(@babel/core@7.25.2)(@opentelemetry/api@1.9.0)(@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) playwright: specifier: ^1.45.3 version: 1.45.3 @@ -656,8 +656,8 @@ importers: specifier: ^18.0.0 version: 18.0.0 vitest: - specifier: 2.0.4 - version: 2.0.4(@types/node@20.14.12)(@vitest/browser@2.0.4)(jsdom@24.1.0)(terser@5.31.1) + specifier: 2.0.5 + version: 2.0.5(@types/node@22.1.0)(@vitest/browser@2.0.5)(jsdom@24.1.1)(terser@5.31.1) packages/toolpad-studio: dependencies: @@ -701,29 +701,29 @@ importers: specifier: 5.16.4 version: 5.16.4(@types/react@18.3.3)(react@18.3.1) '@mui/x-charts': - specifier: 7.11.1 - version: 7.11.1(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@emotion/styled@11.13.0(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(react@18.3.1))(@mui/material@5.16.4(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@emotion/styled@11.13.0(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + specifier: 7.12.0 + version: 7.12.0(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@emotion/styled@11.13.0(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(react@18.3.1))(@mui/material@5.16.4(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@emotion/styled@11.13.0(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) '@mui/x-data-grid': - specifier: 7.11.1 - version: 7.11.1(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@emotion/styled@11.13.0(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(react@18.3.1))(@mui/material@5.16.4(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@emotion/styled@11.13.0(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + specifier: 7.12.0 + version: 7.12.0(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@emotion/styled@11.13.0(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(react@18.3.1))(@mui/material@5.16.4(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@emotion/styled@11.13.0(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) '@mui/x-data-grid-premium': - specifier: 7.11.1 - version: 7.11.1(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@emotion/styled@11.13.0(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(react@18.3.1))(@mui/material@5.16.4(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@emotion/styled@11.13.0(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + specifier: 7.12.0 + version: 7.12.0(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@emotion/styled@11.13.0(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(react@18.3.1))(@mui/material@5.16.4(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@emotion/styled@11.13.0(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) '@mui/x-date-pickers': - specifier: 7.11.1 - version: 7.11.1(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@emotion/styled@11.13.0(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(react@18.3.1))(@mui/material@5.16.4(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@emotion/styled@11.13.0(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(@types/react@18.3.3)(date-fns@2.30.0)(dayjs@1.11.12)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + specifier: 7.12.0 + version: 7.12.0(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@emotion/styled@11.13.0(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(react@18.3.1))(@mui/material@5.16.4(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@emotion/styled@11.13.0(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(@types/react@18.3.3)(date-fns@2.30.0)(dayjs@1.11.12)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) '@mui/x-date-pickers-pro': - specifier: 7.11.1 - version: 7.11.1(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@emotion/styled@11.13.0(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(react@18.3.1))(@mui/material@5.16.4(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@emotion/styled@11.13.0(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(@types/react@18.3.3)(date-fns@2.30.0)(dayjs@1.11.12)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + specifier: 7.12.0 + version: 7.12.0(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@emotion/styled@11.13.0(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(react@18.3.1))(@mui/material@5.16.4(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@emotion/styled@11.13.0(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(@types/react@18.3.3)(date-fns@2.30.0)(dayjs@1.11.12)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) '@mui/x-tree-view': - specifier: 7.11.1 - version: 7.11.1(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@emotion/styled@11.13.0(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(react@18.3.1))(@mui/material@5.16.4(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@emotion/styled@11.13.0(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + specifier: 7.12.0 + version: 7.12.0(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@emotion/styled@11.13.0(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(react@18.3.1))(@mui/material@5.16.4(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@emotion/styled@11.13.0(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) '@tanstack/react-query': - specifier: 5.51.15 - version: 5.51.15(react@18.3.1) + specifier: 5.51.21 + version: 5.51.21(react@18.3.1) '@tanstack/react-query-devtools': - specifier: 5.51.15 - version: 5.51.15(@tanstack/react-query@5.51.15(react@18.3.1))(react@18.3.1) + specifier: 5.51.21 + version: 5.51.21(@tanstack/react-query@5.51.21(react@18.3.1))(react@18.3.1) '@toolpad/studio-components': specifier: workspace:* version: link:../toolpad-studio-components @@ -740,14 +740,14 @@ importers: specifier: 7.0.15 version: 7.0.15 '@types/node': - specifier: 20.14.12 - version: 20.14.12 + specifier: 20.14.14 + version: 20.14.14 '@types/react-dev-utils': specifier: 9.0.15 version: 9.0.15 '@vitejs/plugin-react': specifier: 4.3.1 - version: 4.3.1(vite@5.3.5(@types/node@20.14.12)(terser@5.31.1)) + version: 4.3.1(vite@5.3.5(@types/node@20.14.14)(terser@5.31.1)) '@webcontainer/env': specifier: 1.1.1 version: 1.1.1 @@ -785,8 +785,8 @@ importers: specifier: 16.4.5 version: 16.4.5 esbuild: - specifier: 0.21.5 - version: 0.21.5 + specifier: 0.23.0 + version: 0.23.0 execa: specifier: 9.3.0 version: 9.3.0 @@ -873,7 +873,7 @@ importers: version: 18.3.1 react-dev-utils: specifier: 12.0.1 - version: 12.0.1(eslint@8.57.0)(typescript@5.5.4)(webpack@5.92.1(esbuild@0.21.5)) + version: 12.0.1(eslint@8.57.0)(typescript@5.5.4)(webpack@5.93.0(esbuild@0.23.0)) react-dom: specifier: 18.3.1 version: 18.3.1(react@18.3.1) @@ -881,8 +881,8 @@ importers: specifier: 4.0.13 version: 4.0.13(react@18.3.1) react-hook-form: - specifier: 7.52.1 - version: 7.52.1(react@18.3.1) + specifier: 7.52.2 + version: 7.52.2(react@18.3.1) react-inspector: specifier: 6.0.2 version: 6.0.2(react@18.3.1) @@ -909,7 +909,7 @@ importers: version: 5.5.4 vite: specifier: 5.3.5 - version: 5.3.5(@types/node@20.14.12)(terser@5.31.1) + version: 5.3.5(@types/node@20.14.14)(terser@5.31.1) vm-browserify: specifier: 1.1.2 version: 1.1.2 @@ -932,8 +932,8 @@ importers: specifier: 3.23.8 version: 3.23.8 zod-validation-error: - specifier: 3.3.0 - version: 3.3.0(zod@3.23.8) + specifier: 3.3.1 + version: 3.3.1(zod@3.23.8) devDependencies: '@types/babel__code-frame': specifier: 7.0.6 @@ -987,14 +987,14 @@ importers: specifier: 11.0.5 version: 11.0.5 '@types/ws': - specifier: 8.5.11 - version: 8.5.11 + specifier: 8.5.12 + version: 8.5.12 '@types/yargs': specifier: 17.0.32 version: 17.0.32 ajv: - specifier: 8.16.0 - version: 8.16.0 + specifier: 8.17.1 + version: 8.17.1 eslint: specifier: 8.57.0 version: 8.57.0 @@ -1003,7 +1003,7 @@ importers: version: 9.1.0(eslint@8.57.0) eslint-plugin-import: specifier: 2.29.1 - version: 2.29.1(@typescript-eslint/parser@7.14.1(eslint@8.57.0)(typescript@5.5.3))(eslint-import-resolver-webpack@0.13.8)(eslint@8.57.0) + version: 2.29.1(@typescript-eslint/parser@7.18.0(eslint@8.57.0)(typescript@5.5.4))(eslint-import-resolver-webpack@0.13.8)(eslint@8.57.0) formidable: specifier: 3.5.1 version: 3.5.1 @@ -1011,8 +1011,8 @@ importers: specifier: 4.4.5 version: 4.4.5(react-dom@18.3.1(react@18.3.1))(react@18.3.1) webpack: - specifier: 5.92.1 - version: 5.92.1(esbuild@0.21.5) + specifier: 5.93.0 + version: 5.93.0(esbuild@0.23.0) packages/toolpad-studio-components: dependencies: @@ -1026,20 +1026,20 @@ importers: specifier: 5.16.4 version: 5.16.4(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@emotion/styled@11.13.0(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) '@mui/x-charts': - specifier: 7.11.1 - version: 7.11.1(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@emotion/styled@11.13.0(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(react@18.3.1))(@mui/material@5.16.4(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@emotion/styled@11.13.0(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + specifier: 7.12.0 + version: 7.12.0(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@emotion/styled@11.13.0(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(react@18.3.1))(@mui/material@5.16.4(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@emotion/styled@11.13.0(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) '@mui/x-data-grid-premium': - specifier: 7.11.1 - version: 7.11.1(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@emotion/styled@11.13.0(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(react@18.3.1))(@mui/material@5.16.4(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@emotion/styled@11.13.0(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + specifier: 7.12.0 + version: 7.12.0(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@emotion/styled@11.13.0(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(react@18.3.1))(@mui/material@5.16.4(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@emotion/styled@11.13.0(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) '@mui/x-date-pickers': - specifier: 7.11.1 - version: 7.11.1(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@emotion/styled@11.13.0(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(react@18.3.1))(@mui/material@5.16.4(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@emotion/styled@11.13.0(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(@types/react@18.3.3)(date-fns@2.30.0)(dayjs@1.11.12)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + specifier: 7.12.0 + version: 7.12.0(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@emotion/styled@11.13.0(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(react@18.3.1))(@mui/material@5.16.4(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@emotion/styled@11.13.0(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(@types/react@18.3.3)(date-fns@2.30.0)(dayjs@1.11.12)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) '@mui/x-license': - specifier: 7.11.1 - version: 7.11.1(@types/react@18.3.3)(react@18.3.1) + specifier: 7.12.0 + version: 7.12.0(@types/react@18.3.3)(react@18.3.1) '@tanstack/react-query': - specifier: 5.51.15 - version: 5.51.15(react@18.3.1) + specifier: 5.51.21 + version: 5.51.21(react@18.3.1) '@toolpad/studio-runtime': specifier: workspace:* version: link:../toolpad-studio-runtime @@ -1059,8 +1059,8 @@ importers: specifier: 4.0.13 version: 4.0.13(react@18.3.1) react-hook-form: - specifier: 7.52.1 - version: 7.52.1(react@18.3.1) + specifier: 7.52.2 + version: 7.52.2(react@18.3.1) devDependencies: '@types/invariant': specifier: 2.2.37 @@ -1081,8 +1081,8 @@ importers: specifier: 5.16.4 version: 5.16.4(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@emotion/styled@11.13.0(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) '@tanstack/react-query': - specifier: 5.51.15 - version: 5.51.15(react@18.3.1) + specifier: 5.51.21 + version: 5.51.21(react@18.3.1) '@toolpad/utils': specifier: workspace:* version: link:../toolpad-utils @@ -1151,8 +1151,8 @@ importers: specifier: 3.5.3 version: 3.5.3 vitest: - specifier: 2.0.4 - version: 2.0.4(@types/node@20.14.12)(@vitest/browser@2.0.4)(jsdom@24.1.0)(terser@5.31.1) + specifier: 2.0.5 + version: 2.0.5(@types/node@22.1.0)(@vitest/browser@2.0.5)(jsdom@24.1.1)(terser@5.31.1) yaml: specifier: 2.4.5 version: 2.4.5 @@ -1187,15 +1187,21 @@ importers: '@mui/icons-material': specifier: 5.16.4 version: 5.16.4(@mui/material@5.16.4(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@emotion/styled@11.13.0(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(@types/react@18.3.3)(react@18.3.1) + '@mui/lab': + specifier: 5.0.0-alpha.170 + version: 5.0.0-alpha.170(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@emotion/styled@11.13.0(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(react@18.3.1))(@mui/material@5.16.4(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@emotion/styled@11.13.0(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) '@mui/material': specifier: 5.16.4 version: 5.16.4(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@emotion/styled@11.13.0(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) '@mui/material-nextjs': specifier: 5.16.4 - version: 5.16.4(@emotion/cache@11.13.1)(@emotion/server@11.11.0)(@mui/material@5.16.4(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@emotion/styled@11.13.0(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(@types/react@18.3.3)(next@14.2.5(@babel/core@7.24.9)(@opentelemetry/api@1.9.0)(@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) + version: 5.16.4(@emotion/cache@11.13.1)(@emotion/server@11.11.0)(@mui/material@5.16.4(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@emotion/styled@11.13.0(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(@types/react@18.3.3)(next@14.2.5(@babel/core@7.25.2)(@opentelemetry/api@1.9.0)(@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) '@toolpad/core': specifier: workspace:* version: link:../../packages/toolpad-core + '@types/node': + specifier: 20.14.14 + version: 20.14.14 '@types/react': specifier: 18.3.3 version: 18.3.3 @@ -1203,11 +1209,14 @@ importers: specifier: 18.3.0 version: 18.3.0 eslint-config-next: - specifier: 14.2.4 - version: 14.2.4(eslint-import-resolver-webpack@0.13.8(eslint-plugin-import@2.29.1)(webpack@5.92.1(esbuild@0.21.5)))(eslint@8.57.0)(typescript@5.5.4) + specifier: 14.2.5 + version: 14.2.5(eslint-import-resolver-webpack@0.13.8(eslint-plugin-import@2.29.1)(webpack@5.93.0(esbuild@0.21.5)))(eslint@8.57.0)(typescript@5.5.4) next: specifier: 14.2.5 - version: 14.2.5(@babel/core@7.24.9)(@opentelemetry/api@1.9.0)(@playwright/test@1.45.3)(babel-plugin-macros@3.1.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + version: 14.2.5(@babel/core@7.25.2)(@opentelemetry/api@1.9.0)(@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: beta + version: 5.0.0-beta.20(next@14.2.5(@babel/core@7.25.2)(@opentelemetry/api@1.9.0)(@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) react: specifier: 18.3.1 version: 18.3.1 @@ -1231,7 +1240,7 @@ importers: version: 5.16.4(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@emotion/styled@11.13.0(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) '@mui/material-nextjs': specifier: 5.16.4 - version: 5.16.4(@emotion/cache@11.13.1)(@emotion/server@11.11.0)(@mui/material@5.16.4(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@emotion/styled@11.13.0(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(@types/react@18.3.3)(next@14.2.5(@babel/core@7.24.9)(@opentelemetry/api@1.9.0)(@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) + version: 5.16.4(@emotion/cache@11.13.1)(@emotion/server@11.11.0)(@mui/material@5.16.4(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@emotion/styled@11.13.0(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(@types/react@18.3.3)(next@14.2.5(@babel/core@7.25.2)(@opentelemetry/api@1.9.0)(@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) '@toolpad/core': specifier: workspace:* version: link:../../packages/toolpad-core @@ -1242,11 +1251,14 @@ importers: specifier: 18.3.0 version: 18.3.0 eslint-config-next: - specifier: 14.2.4 - version: 14.2.4(eslint-import-resolver-webpack@0.13.8(eslint-plugin-import@2.29.1)(webpack@5.92.1(esbuild@0.21.5)))(eslint@8.57.0)(typescript@5.5.4) + specifier: 14.2.5 + version: 14.2.5(eslint-import-resolver-webpack@0.13.8(eslint-plugin-import@2.29.1)(webpack@5.93.0(esbuild@0.21.5)))(eslint@8.57.0)(typescript@5.5.4) next: specifier: 14.2.5 - version: 14.2.5(@babel/core@7.24.9)(@opentelemetry/api@1.9.0)(@playwright/test@1.45.3)(babel-plugin-macros@3.1.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + version: 14.2.5(@babel/core@7.25.2)(@opentelemetry/api@1.9.0)(@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: beta + version: 5.0.0-beta.20(next@14.2.5(@babel/core@7.25.2)(@opentelemetry/api@1.9.0)(@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) react: specifier: 18.3.1 version: 18.3.1 @@ -1361,12 +1373,12 @@ packages: resolution: {integrity: sha512-30iZtAPgz+LTIYoeivqYo853f02jBYSd5uGnGpkFV0M3xOt9aN73erkgYAmZU43x4VfqcnLxW9Kpg3R5LC4YYw==} engines: {node: '>=6.0.0'} - '@argos-ci/core@2.3.0': - resolution: {integrity: sha512-0mHncBeOD7GFYfGZYUEcDgLyzsvPyxK/L1MROfAurFeWcw89ODG24JEdPsECtZBSCZMmMcK8XqeJIJkZsnDGZA==} + '@argos-ci/core@2.4.1': + resolution: {integrity: sha512-Sl+5Zq4LBZF+CDB0eXGdTOLv3E9bubO2tfpDncQku5/s/N+2Ptn0JAw/Vc3EdJAtMWj1G8uy+6cvtV+eaVNnFg==} engines: {node: '>=18.0.0'} - '@argos-ci/util@2.0.0': - resolution: {integrity: sha512-wnsNQOjcNfxOi8cHWSv8+GhzUeIitDJgjhuSNR9zrfHB0Y3nDVI57S/mHRo+EMAaWwghfbrxW1ypRCXVseN0GA==} + '@argos-ci/util@2.1.0': + resolution: {integrity: sha512-/78zJjZJCh3i7Eh3/lo7ybXK2pzXFGUNHbK3SgJNKNbFiBDllNRfy+x0kccjvN2gCCDz877jnFOlSoZZuMK56A==} engines: {node: '>=18.0.0'} '@auth/core@0.31.0': @@ -1383,6 +1395,20 @@ packages: nodemailer: optional: true + '@auth/core@0.34.2': + resolution: {integrity: sha512-KywHKRgLiF3l7PLyL73fjLSIBe1YNcA6sMeew4yMP6cfCWGXZrkkXd32AjRi1hlJ9nvovUBGZHvbn+LijO6ZeQ==} + peerDependencies: + '@simplewebauthn/browser': ^9.0.1 + '@simplewebauthn/server': ^9.0.2 + nodemailer: ^6.8.0 + peerDependenciesMeta: + '@simplewebauthn/browser': + optional: true + '@simplewebauthn/server': + optional: true + nodemailer: + optional: true + '@babel/cli@7.24.8': resolution: {integrity: sha512-isdp+G6DpRyKc+3Gqxy2rjzgF7Zj9K0mzLNnxz+E/fgeag8qT3vVulX4gY9dGO1q0y+0lUv6V3a+uhUzMzrwXg==} engines: {node: '>=6.9.0'} @@ -1394,16 +1420,16 @@ packages: resolution: {integrity: sha512-BcYH1CVJBO9tvyIZ2jVeXgSIMvGZ2FDRvDdOIVQyuklNKSsx+eppDEBq/g47Ayw+RqNFE+URvOShmf+f/qwAlA==} engines: {node: '>=6.9.0'} - '@babel/compat-data@7.24.8': - resolution: {integrity: sha512-c4IM7OTg6k1Q+AJ153e2mc2QVTezTwnb4VzquwcyiEzGnW0Kedv4do/TrkU98qPeC5LNiMt/QXwIjzYXLBpyZg==} + '@babel/compat-data@7.25.2': + resolution: {integrity: sha512-bYcppcpKBvX4znYaPEeFau03bp89ShqNMLs+rmdptMw+heSZh9+z84d2YG+K7cYLbWwzdjtDoW/uqZmPjulClQ==} engines: {node: '>=6.9.0'} - '@babel/core@7.24.9': - resolution: {integrity: sha512-5e3FI4Q3M3Pbr21+5xJwCv6ZT6KmGkI0vw3Tozy5ODAQFTIWe37iT8Cr7Ice2Ntb+M3iSKCEWMB1MBgKrW3whg==} + '@babel/core@7.25.2': + resolution: {integrity: sha512-BBt3opiCOxUr9euZ5/ro/Xv8/V7yJ5bjYMqG/C1YAo8MIKAnumZalCN+msbci3Pigy4lIQfPUpfMM27HMGaYEA==} engines: {node: '>=6.9.0'} - '@babel/generator@7.24.10': - resolution: {integrity: sha512-o9HBZL1G2129luEUlG1hB4N/nlYNWHnpwlND9eOMclRqqu1YDy2sSYVCFUZwl8I1Gxh+QSRrP2vD7EpUmFVXxg==} + '@babel/generator@7.25.0': + resolution: {integrity: sha512-3LEEcj3PVW8pW2R1SR1M89g/qrYk/m/mB/tLqn7dn4sbBUQyTqnlod+II2U4dqiGtUmkcnAmkMDralTFZttRiw==} engines: {node: '>=6.9.0'} '@babel/helper-annotate-as-pure@7.24.7': @@ -1414,8 +1440,8 @@ packages: resolution: {integrity: sha512-xZeCVVdwb4MsDBkkyZ64tReWYrLRHlMN72vP7Bdm3OUOuyFZExhsHUUnuWnm2/XOlAJzR0LfPpB56WXZn0X/lA==} engines: {node: '>=6.9.0'} - '@babel/helper-compilation-targets@7.24.8': - resolution: {integrity: sha512-oU+UoqCHdp+nWVDkpldqIQL/i/bvAv53tRqLG/s+cOXxe66zOYLU7ar/Xs3LdmBihrUMEUhwu6dMZwbNOYDwvw==} + '@babel/helper-compilation-targets@7.25.2': + resolution: {integrity: sha512-U2U5LsSaZ7TAt3cfaymQ8WHh0pxvdHoEk6HVpaexxixjyEquMh0L0YNJNM6CTGKMXV1iksi0iZkGw4AcFkPaaw==} engines: {node: '>=6.9.0'} '@babel/helper-create-class-features-plugin@7.24.7': @@ -1424,8 +1450,8 @@ packages: peerDependencies: '@babel/core': ^7.0.0 - '@babel/helper-create-regexp-features-plugin@7.24.7': - resolution: {integrity: sha512-03TCmXy2FtXJEZfbXDTSqq1fRJArk7lX9DOFC/47VthYcxyIOx+eXQmdo6DOQvrbpIix+KfXwvuXdFDZHxt+rA==} + '@babel/helper-create-regexp-features-plugin@7.25.2': + resolution: {integrity: sha512-+wqVGP+DFmqwFD3EH6TMTfUNeqDehV3E/dl+Sd54eaXqm17tEUNbEIn4sVivVowbvUpOtIGxdo3GoXyDH9N/9g==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0 @@ -1443,20 +1469,16 @@ packages: resolution: {integrity: sha512-FyoJTsj/PEUWu1/TYRiXTIHc8lbw+TDYkZuoE43opPS5TrI7MyONBE1oNvfguEXAD9yhQRrVBnXdXzSLQl9XnA==} engines: {node: '>=6.9.0'} - '@babel/helper-hoist-variables@7.24.7': - resolution: {integrity: sha512-MJJwhkoGy5c4ehfoRyrJ/owKeMl19U54h27YYftT0o2teQ3FJ3nQUf/I3LlJsX4l3qlw7WRXUmiyajvHXoTubQ==} - engines: {node: '>=6.9.0'} - - '@babel/helper-member-expression-to-functions@7.24.7': - resolution: {integrity: sha512-LGeMaf5JN4hAT471eJdBs/GK1DoYIJ5GCtZN/EsL6KUiiDZOvO/eKE11AMZJa2zP4zk4qe9V2O/hxAmkRc8p6w==} + '@babel/helper-member-expression-to-functions@7.24.8': + resolution: {integrity: sha512-LABppdt+Lp/RlBxqrh4qgf1oEH/WxdzQNDJIu5gC/W1GyvPVrOBiItmmM8wan2fm4oYqFuFfkXmlGpLQhPY8CA==} engines: {node: '>=6.9.0'} '@babel/helper-module-imports@7.24.7': resolution: {integrity: sha512-8AyH3C+74cgCVVXow/myrynrAGv+nTVg5vKu2nZph9x7RcRwzmh0VFallJuFTZ9mx6u4eSdXZfcOzSqTUm0HCA==} engines: {node: '>=6.9.0'} - '@babel/helper-module-transforms@7.24.9': - resolution: {integrity: sha512-oYbh+rtFKj/HwBQkFlUzvcybzklmVdVV3UU+mN7n2t/q3yGHbuVdNxyFvSBO1tfvjyArpHNcWMAzsSPdyI46hw==} + '@babel/helper-module-transforms@7.25.2': + resolution: {integrity: sha512-BjyRAbix6j/wv83ftcVJmBt72QtHI56C7JXZoG2xATiLpmoC7dpd8WnkikExHDVPpi/3qCmO6WY1EaXOluiecQ==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0 @@ -1469,14 +1491,14 @@ packages: resolution: {integrity: sha512-FFWx5142D8h2Mgr/iPVGH5G7w6jDn4jUSpZTyDnQO0Yn7Ks2Kuz6Pci8H6MPCoUJegd/UZQ3tAvfLCxQSnWWwg==} engines: {node: '>=6.9.0'} - '@babel/helper-remap-async-to-generator@7.24.7': - resolution: {integrity: sha512-9pKLcTlZ92hNZMQfGCHImUpDOlAgkkpqalWEeftW5FBya75k8Li2ilerxkM/uBEj01iBZXcCIB/bwvDYgWyibA==} + '@babel/helper-remap-async-to-generator@7.25.0': + resolution: {integrity: sha512-NhavI2eWEIz/H9dbrG0TuOicDhNexze43i5z7lEqwYm0WEZVTwnPpA0EafUTP7+6/W79HWIP2cTe3Z5NiSTVpw==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0 - '@babel/helper-replace-supers@7.24.7': - resolution: {integrity: sha512-qTAxxBM81VEyoAY0TtLrx1oAEJc09ZK67Q9ljQToqCnA+55eNwCORaxlKyu+rNfX86o8OXRUSNUnrtsAZXM9sg==} + '@babel/helper-replace-supers@7.25.0': + resolution: {integrity: sha512-q688zIvQVYtZu+i2PsdIu/uWGRpfxzr5WESsfpShfZECkO+d2o+WROWezCi/Q6kJ0tfPa5+pUGUlfx2HhrA3Bg==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0 @@ -1505,38 +1527,44 @@ packages: resolution: {integrity: sha512-xb8t9tD1MHLungh/AIoWYN+gVHaB9kwlu8gffXGSt3FFEIT7RjS+xWbc2vUD1UTZdIpKj/ab3rdqJ7ufngyi2Q==} engines: {node: '>=6.9.0'} - '@babel/helper-wrap-function@7.24.7': - resolution: {integrity: sha512-N9JIYk3TD+1vq/wn77YnJOqMtfWhNewNE+DJV4puD2X7Ew9J4JvrzrFDfTfyv5EgEXVy9/Wt8QiOErzEmv5Ifw==} + '@babel/helper-wrap-function@7.25.0': + resolution: {integrity: sha512-s6Q1ebqutSiZnEjaofc/UKDyC4SbzV5n5SrA2Gq8UawLycr3i04f1dX4OzoQVnexm6aOCh37SQNYlJ/8Ku+PMQ==} engines: {node: '>=6.9.0'} - '@babel/helpers@7.24.8': - resolution: {integrity: sha512-gV2265Nkcz7weJJfvDoAEVzC1e2OTDpkGbEsebse8koXUJUXPsCMi7sRo/+SPMuMZ9MtUPnGwITTnQnU5YjyaQ==} + '@babel/helpers@7.25.0': + resolution: {integrity: sha512-MjgLZ42aCm0oGjJj8CtSM3DB8NOOf8h2l7DCTePJs29u+v7yO/RBX9nShlKMgFnRks/Q4tBAe7Hxnov9VkGwLw==} engines: {node: '>=6.9.0'} '@babel/highlight@7.24.7': resolution: {integrity: sha512-EStJpq4OuY8xYfhGVXngigBJRWxftKX9ksiGDnmlY3o7B/V7KIAc9X4oiK87uPJSc/vs5L869bem5fhZa8caZw==} engines: {node: '>=6.9.0'} - '@babel/node@7.24.8': - resolution: {integrity: sha512-4JgQZJOVDrMCe2OwP7g4nBEvv0kbTkWYVvkEhFdq8JdEhsy9J5E5ChibbIchTrntKB62lx2I7fVTdM+Se7KVFg==} + '@babel/node@7.25.0': + resolution: {integrity: sha512-fgdlIcf1vLeZ6gUHcl799Wbk6no5tnkGi6t1gpAb1a97ZB+KCRp8Sgb7acGTjnFhOzqzcsbJ4+wzewqb6JM0tA==} engines: {node: '>=6.9.0'} hasBin: true peerDependencies: '@babel/core': ^7.0.0-0 - '@babel/parser@7.24.8': - resolution: {integrity: sha512-WzfbgXOkGzZiXXCqk43kKwZjzwx4oulxZi3nq2TYL9mOjQv6kYwul9mz6ID36njuL7Xkp6nJEfok848Zj10j/w==} + '@babel/parser@7.25.3': + resolution: {integrity: sha512-iLTJKDbJ4hMvFPgQwwsVoxtHyWpKKPBrxkANrSYewDPaPpT5py5yeVkgPIJ7XYXhndxJpaA3PyALSXQ7u8e/Dw==} engines: {node: '>=6.0.0'} hasBin: true - '@babel/plugin-bugfix-firefox-class-in-computed-class-key@7.24.7': - resolution: {integrity: sha512-TiT1ss81W80eQsN+722OaeQMY/G4yTb4G9JrqeiDADs3N8lbPMGldWi9x8tyqCW5NLx1Jh2AvkE6r6QvEltMMQ==} + '@babel/plugin-bugfix-firefox-class-in-computed-class-key@7.25.3': + resolution: {integrity: sha512-wUrcsxZg6rqBXG05HG1FPYgsP6EvwF4WpBbxIpWIIYnH8wG0gzx3yZY3dtEHas4sTAOGkbTsc9EGPxwff8lRoA==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0 - '@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression@7.24.7': - resolution: {integrity: sha512-unaQgZ/iRu/By6tsjMZzpeBZjChYfLYry6HrEXPoz3KmfF0sVBQ1l8zKMQ4xRGLWVsjuvB8nQfjNP/DcfEOCsg==} + '@babel/plugin-bugfix-safari-class-field-initializer-scope@7.25.0': + resolution: {integrity: sha512-Bm4bH2qsX880b/3ziJ8KD711LT7z4u8CFudmjqle65AZj/HNUFhEf90dqYv6O86buWvSBmeQDjv0Tn2aF/bIBA==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0 + + '@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression@7.25.0': + resolution: {integrity: sha512-lXwdNZtTmeVOOFtwM/WDe7yg1PL8sYhRk/XH0FzbR2HDQ0xC+EnQ/JHeoMYSavtU115tnUk0q9CDyq8si+LMAA==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0 @@ -1547,8 +1575,8 @@ packages: peerDependencies: '@babel/core': ^7.13.0 - '@babel/plugin-bugfix-v8-static-class-fields-redefine-readonly@7.24.7': - resolution: {integrity: sha512-utA4HuR6F4Vvcr+o4DnjL8fCOlgRFGbeeBEGNg3ZTrLFw6VWG5XmUrvcQ0FjIYMU2ST4XcR2Wsp7t9qOAPnxMg==} + '@babel/plugin-bugfix-v8-static-class-fields-redefine-readonly@7.25.0': + resolution: {integrity: sha512-tggFrk1AIShG/RUQbEwt2Tr/E+ObkfwrPjR6BjbRvsx24+PSjK8zrq0GWPNCjo8qpRx4DuJzlcvWJqlm+0h3kw==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0 @@ -1680,8 +1708,8 @@ packages: peerDependencies: '@babel/core': ^7.0.0-0 - '@babel/plugin-transform-async-generator-functions@7.24.7': - resolution: {integrity: sha512-o+iF77e3u7ZS4AoAuJvapz9Fm001PuD2V3Lp6OSE4FYQke+cSewYtnek+THqGRWyQloRCyvWL1OkyfNEl9vr/g==} + '@babel/plugin-transform-async-generator-functions@7.25.0': + resolution: {integrity: sha512-uaIi2FdqzjpAMvVqvB51S42oC2JEVgh0LDsGfZVDysWE8LrJtQC2jvKmOqEYThKyB7bDEb7BP1GYWDm7tABA0Q==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 @@ -1698,8 +1726,8 @@ packages: peerDependencies: '@babel/core': ^7.0.0-0 - '@babel/plugin-transform-block-scoping@7.24.7': - resolution: {integrity: sha512-Nd5CvgMbWc+oWzBsuaMcbwjJWAcp5qzrbg69SZdHSP7AMY0AbWFqFO0WTFCA1jxhMCwodRwvRec8k0QUbZk7RQ==} + '@babel/plugin-transform-block-scoping@7.25.0': + resolution: {integrity: sha512-yBQjYoOjXlFv9nlXb3f1casSHOZkWr29NX+zChVanLg5Nc157CrbEX9D7hxxtTpuFy7Q0YzmmWfJxzvps4kXrQ==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 @@ -1716,8 +1744,8 @@ packages: peerDependencies: '@babel/core': ^7.12.0 - '@babel/plugin-transform-classes@7.24.8': - resolution: {integrity: sha512-VXy91c47uujj758ud9wx+OMgheXm4qJfyhj1P18YvlrQkNOSrwsteHk+EFS3OMGfhMhpZa0A+81eE7G4QC+3CA==} + '@babel/plugin-transform-classes@7.25.0': + resolution: {integrity: sha512-xyi6qjr/fYU304fiRwFbekzkqVJZ6A7hOjWZd+89FVcBqPV3S9Wuozz82xdpLspckeaafntbzglaW4pqpzvtSw==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 @@ -1746,6 +1774,12 @@ packages: peerDependencies: '@babel/core': ^7.0.0-0 + '@babel/plugin-transform-duplicate-named-capturing-groups-regex@7.25.0': + resolution: {integrity: sha512-YLpb4LlYSc3sCUa35un84poXoraOiQucUTTu8X1j18JV+gNa8E0nyUf/CjZ171IRGr4jEguF+vzJU66QZhn29g==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0 + '@babel/plugin-transform-dynamic-import@7.24.7': resolution: {integrity: sha512-sc3X26PhZQDb3JhORmakcbvkeInvxz+A8oda99lj7J60QRuPZvNAk9wQlTBS1ZynelDrDmTU4pw1tyc5d5ZMUg==} engines: {node: '>=6.9.0'} @@ -1770,8 +1804,8 @@ packages: peerDependencies: '@babel/core': ^7.0.0-0 - '@babel/plugin-transform-function-name@7.24.7': - resolution: {integrity: sha512-U9FcnA821YoILngSmYkW6FjyQe2TyZD5pHt4EVIhmcTkrJw/3KqcrRSxuOo5tFZJi7TE19iDyI1u+weTI7bn2w==} + '@babel/plugin-transform-function-name@7.25.1': + resolution: {integrity: sha512-TVVJVdW9RKMNgJJlLtHsKDTydjZAbwIsn6ySBPQaEAUU5+gVvlJt/9nRmqVbsV/IBanRjzWoaAQKLoamWVOUuA==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 @@ -1782,8 +1816,8 @@ packages: peerDependencies: '@babel/core': ^7.0.0-0 - '@babel/plugin-transform-literals@7.24.7': - resolution: {integrity: sha512-vcwCbb4HDH+hWi8Pqenwnjy+UiklO4Kt1vfspcQYFhJdpthSnW8XvWGyDZWKNVrVbVViI/S7K9PDJZiUmP2fYQ==} + '@babel/plugin-transform-literals@7.25.2': + resolution: {integrity: sha512-HQI+HcTbm9ur3Z2DkO+jgESMAMcYLuN/A7NRw9juzxAezN9AvqvUTnpKP/9kkYANz6u7dFlAyOu44ejuGySlfw==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 @@ -1812,8 +1846,8 @@ packages: peerDependencies: '@babel/core': ^7.0.0-0 - '@babel/plugin-transform-modules-systemjs@7.24.7': - resolution: {integrity: sha512-GYQE0tW7YoaN13qFh3O1NCY4MPkUiAH3fiF7UcV/I3ajmDKEdG3l+UOcbAm4zUE3gnvUU+Eni7XrVKo9eO9auw==} + '@babel/plugin-transform-modules-systemjs@7.25.0': + resolution: {integrity: sha512-YPJfjQPDXxyQWg/0+jHKj1llnY5f/R6a0p/vP4lPymxLu7Lvl4k2WMitqi08yxwQcCVUUdG9LCUj4TNEgAp3Jw==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 @@ -1902,8 +1936,8 @@ packages: peerDependencies: '@babel/core': ^7.0.0-0 - '@babel/plugin-transform-react-constant-elements@7.24.7': - resolution: {integrity: sha512-7LidzZfUXyfZ8/buRW6qIIHBY8wAZ1OrY9c/wTr8YhZ6vMPo+Uc/CVFLYY1spZrEQlD4w5u8wjqk5NQ3OVqQKA==} + '@babel/plugin-transform-react-constant-elements@7.25.1': + resolution: {integrity: sha512-SLV/giH/V4SmloZ6Dt40HjTGTAIkxn33TVIHxNGNvo8ezMhrxBkzisj4op1KZYPIOHFLqhv60OHvX+YRu4xbmQ==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 @@ -2022,8 +2056,8 @@ packages: peerDependencies: '@babel/core': ^7.0.0 - '@babel/preset-env@7.24.8': - resolution: {integrity: sha512-vObvMZB6hNWuDxhSaEPTKCwcqkAIuDtE+bQGn4XMXne1DSLzFVY8Vmj1bm+mUQXYNN8NmaQEO+r8MMbzPr1jBQ==} + '@babel/preset-env@7.25.3': + resolution: {integrity: sha512-QsYW7UeAaXvLPX9tdVliMJE7MD7M6MLYVTovRTIwhoYQVFHR1rM4wO8wqAezYi3/BpSD+NzVCZ69R6smWiIi8g==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 @@ -2054,27 +2088,27 @@ packages: '@babel/regjsgen@0.8.0': resolution: {integrity: sha512-x/rqGMdzj+fWZvCOYForTghzbtqPDZ5gPwaoNGHdgDfF2QA/XZbCBp4Moo5scrkAMPhB7z26XM/AaHuIJdgauA==} - '@babel/runtime-corejs2@7.24.8': - resolution: {integrity: sha512-vGYjT6h/MNSJ74UXgcgmoRNrMiSwMCgSy/HXMM0jTQJ811YfpBxvxidMPRdJnTaUjDpqwWI2XC6bkz0vnWpjfQ==} + '@babel/runtime-corejs2@7.25.0': + resolution: {integrity: sha512-aoYVE3tm+vgAoezmXFWmVcp+NlSdsUqQMPL7c6zRxq8KDHCf570pamC7005Q/UkSlTuoL6oeE16zIw/9J3YFyw==} engines: {node: '>=6.9.0'} '@babel/runtime@7.0.0': resolution: {integrity: sha512-7hGhzlcmg01CvH1EHdSPVXYX1aJ8KCEyz6I9xYIi/asDtzBPMyMhVibhM/K6g/5qnKBwjZtp10bNZIEFTRW1MA==} - '@babel/runtime@7.24.8': - resolution: {integrity: sha512-5F7SDGs1T72ZczbRwbGO9lQi0NLjQxzl6i4lJxLxfW9U5UluCSyEJeniWvnhl3/euNiqQVbo8zruhsDfid0esA==} + '@babel/runtime@7.25.0': + resolution: {integrity: sha512-7dRy4DwXwtzBrPbZflqxnvfxLF8kdZXPkhymtDeFoFqE6ldzjQFgYTtYIFARcLEYDrqfBfYcZt1WqFxRoyC9Rw==} engines: {node: '>=6.9.0'} - '@babel/template@7.24.7': - resolution: {integrity: sha512-jYqfPrU9JTF0PmPy1tLYHW4Mp4KlgxJD9l2nP9fD6yT/ICi554DmrWBAEYpIelzjHf1msDP3PxJIRt/nFNfBig==} + '@babel/template@7.25.0': + resolution: {integrity: sha512-aOOgh1/5XzKvg1jvVz7AVrx2piJ2XBi227DHmbY6y+bM9H2FlN+IfecYu4Xl0cNiiVejlsCri89LUsbj8vJD9Q==} engines: {node: '>=6.9.0'} - '@babel/traverse@7.24.8': - resolution: {integrity: sha512-t0P1xxAPzEDcEPmjprAQq19NWum4K0EQPjMwZQZbHt+GiZqvjCHjj755Weq1YRPVzBI+3zSfvScfpnuIecVFJQ==} + '@babel/traverse@7.25.3': + resolution: {integrity: sha512-HefgyP1x754oGCsKmV5reSmtV7IXj/kpaE1XYY+D9G5PvKKoFfSbiS4M77MdjuwlZKDIKFCffq9rPU+H/s3ZdQ==} engines: {node: '>=6.9.0'} - '@babel/types@7.24.9': - resolution: {integrity: sha512-xm8XrMKz0IlUdocVbYJe0Z9xEgidU7msskG8BbhnTPK/HZ2z/7FP7ykqPgrUH+C+r414mNfNWam1f2vqOjqjYQ==} + '@babel/types@7.25.2': + resolution: {integrity: sha512-YTnYtra7W9e6/oAZEHj0bJehPRUlLH9/fbpT5LfB0NhQXyALCRkRs3zH9v07IYhkgpqX6Z78FnuccZr/l4Fs4Q==} engines: {node: '>=6.9.0'} '@bcoe/v8-coverage@0.2.3': @@ -2086,6 +2120,9 @@ packages: '@bundled-es-modules/statuses@1.0.1': resolution: {integrity: sha512-yn7BklA5acgcBr+7w064fGV+SGIFySjCKpqjcWgBAIfrAkY+4GQTJJHQMeT3V/sgz23VTEVV8TtOmkvJAhFVfg==} + '@bundled-es-modules/tough-cookie@0.1.6': + resolution: {integrity: sha512-dvMHbL464C0zI+Yqxbz6kZ5TOEp7GLW+pry/RWndAR8MJQAXZ2rPmIs8tziTZjeIyhSNZgZbCePtfSbdWqStJw==} + '@date-io/core@3.0.0': resolution: {integrity: sha512-S3j+IAQVBYNkQzchVVhX40eBkGDreBpScy9RXwTS5j2+k07+62pMVPisQ44Gq76Rqy5AOG/EZXCwBpY/jbemvA==} @@ -2201,138 +2238,282 @@ packages: cpu: [ppc64] os: [aix] + '@esbuild/aix-ppc64@0.23.0': + resolution: {integrity: sha512-3sG8Zwa5fMcA9bgqB8AfWPQ+HFke6uD3h1s3RIwUNK8EG7a4buxvuFTs3j1IMs2NXAk9F30C/FF4vxRgQCcmoQ==} + engines: {node: '>=18'} + cpu: [ppc64] + os: [aix] + '@esbuild/android-arm64@0.21.5': resolution: {integrity: sha512-c0uX9VAUBQ7dTDCjq+wdyGLowMdtR/GoC2U5IYk/7D1H1JYC0qseD7+11iMP2mRLN9RcCMRcjC4YMclCzGwS/A==} engines: {node: '>=12'} cpu: [arm64] os: [android] + '@esbuild/android-arm64@0.23.0': + resolution: {integrity: sha512-EuHFUYkAVfU4qBdyivULuu03FhJO4IJN9PGuABGrFy4vUuzk91P2d+npxHcFdpUnfYKy0PuV+n6bKIpHOB3prQ==} + engines: {node: '>=18'} + cpu: [arm64] + os: [android] + '@esbuild/android-arm@0.21.5': resolution: {integrity: sha512-vCPvzSjpPHEi1siZdlvAlsPxXl7WbOVUBBAowWug4rJHb68Ox8KualB+1ocNvT5fjv6wpkX6o/iEpbDrf68zcg==} engines: {node: '>=12'} cpu: [arm] os: [android] + '@esbuild/android-arm@0.23.0': + resolution: {integrity: sha512-+KuOHTKKyIKgEEqKbGTK8W7mPp+hKinbMBeEnNzjJGyFcWsfrXjSTNluJHCY1RqhxFurdD8uNXQDei7qDlR6+g==} + engines: {node: '>=18'} + cpu: [arm] + os: [android] + '@esbuild/android-x64@0.21.5': resolution: {integrity: sha512-D7aPRUUNHRBwHxzxRvp856rjUHRFW1SdQATKXH2hqA0kAZb1hKmi02OpYRacl0TxIGz/ZmXWlbZgjwWYaCakTA==} engines: {node: '>=12'} cpu: [x64] os: [android] + '@esbuild/android-x64@0.23.0': + resolution: {integrity: sha512-WRrmKidLoKDl56LsbBMhzTTBxrsVwTKdNbKDalbEZr0tcsBgCLbEtoNthOW6PX942YiYq8HzEnb4yWQMLQuipQ==} + engines: {node: '>=18'} + cpu: [x64] + os: [android] + '@esbuild/darwin-arm64@0.21.5': resolution: {integrity: sha512-DwqXqZyuk5AiWWf3UfLiRDJ5EDd49zg6O9wclZ7kUMv2WRFr4HKjXp/5t8JZ11QbQfUS6/cRCKGwYhtNAY88kQ==} engines: {node: '>=12'} cpu: [arm64] os: [darwin] + '@esbuild/darwin-arm64@0.23.0': + resolution: {integrity: sha512-YLntie/IdS31H54Ogdn+v50NuoWF5BDkEUFpiOChVa9UnKpftgwzZRrI4J132ETIi+D8n6xh9IviFV3eXdxfow==} + engines: {node: '>=18'} + cpu: [arm64] + os: [darwin] + '@esbuild/darwin-x64@0.21.5': resolution: {integrity: sha512-se/JjF8NlmKVG4kNIuyWMV/22ZaerB+qaSi5MdrXtd6R08kvs2qCN4C09miupktDitvh8jRFflwGFBQcxZRjbw==} engines: {node: '>=12'} cpu: [x64] os: [darwin] + '@esbuild/darwin-x64@0.23.0': + resolution: {integrity: sha512-IMQ6eme4AfznElesHUPDZ+teuGwoRmVuuixu7sv92ZkdQcPbsNHzutd+rAfaBKo8YK3IrBEi9SLLKWJdEvJniQ==} + engines: {node: '>=18'} + cpu: [x64] + os: [darwin] + '@esbuild/freebsd-arm64@0.21.5': resolution: {integrity: sha512-5JcRxxRDUJLX8JXp/wcBCy3pENnCgBR9bN6JsY4OmhfUtIHe3ZW0mawA7+RDAcMLrMIZaf03NlQiX9DGyB8h4g==} engines: {node: '>=12'} cpu: [arm64] os: [freebsd] + '@esbuild/freebsd-arm64@0.23.0': + resolution: {integrity: sha512-0muYWCng5vqaxobq6LB3YNtevDFSAZGlgtLoAc81PjUfiFz36n4KMpwhtAd4he8ToSI3TGyuhyx5xmiWNYZFyw==} + engines: {node: '>=18'} + cpu: [arm64] + os: [freebsd] + '@esbuild/freebsd-x64@0.21.5': resolution: {integrity: sha512-J95kNBj1zkbMXtHVH29bBriQygMXqoVQOQYA+ISs0/2l3T9/kj42ow2mpqerRBxDJnmkUDCaQT/dfNXWX/ZZCQ==} engines: {node: '>=12'} cpu: [x64] os: [freebsd] + '@esbuild/freebsd-x64@0.23.0': + resolution: {integrity: sha512-XKDVu8IsD0/q3foBzsXGt/KjD/yTKBCIwOHE1XwiXmrRwrX6Hbnd5Eqn/WvDekddK21tfszBSrE/WMaZh+1buQ==} + engines: {node: '>=18'} + cpu: [x64] + os: [freebsd] + '@esbuild/linux-arm64@0.21.5': resolution: {integrity: sha512-ibKvmyYzKsBeX8d8I7MH/TMfWDXBF3db4qM6sy+7re0YXya+K1cem3on9XgdT2EQGMu4hQyZhan7TeQ8XkGp4Q==} engines: {node: '>=12'} cpu: [arm64] os: [linux] + '@esbuild/linux-arm64@0.23.0': + resolution: {integrity: sha512-j1t5iG8jE7BhonbsEg5d9qOYcVZv/Rv6tghaXM/Ug9xahM0nX/H2gfu6X6z11QRTMT6+aywOMA8TDkhPo8aCGw==} + engines: {node: '>=18'} + cpu: [arm64] + os: [linux] + '@esbuild/linux-arm@0.21.5': resolution: {integrity: sha512-bPb5AHZtbeNGjCKVZ9UGqGwo8EUu4cLq68E95A53KlxAPRmUyYv2D6F0uUI65XisGOL1hBP5mTronbgo+0bFcA==} engines: {node: '>=12'} cpu: [arm] os: [linux] + '@esbuild/linux-arm@0.23.0': + resolution: {integrity: sha512-SEELSTEtOFu5LPykzA395Mc+54RMg1EUgXP+iw2SJ72+ooMwVsgfuwXo5Fn0wXNgWZsTVHwY2cg4Vi/bOD88qw==} + engines: {node: '>=18'} + cpu: [arm] + os: [linux] + '@esbuild/linux-ia32@0.21.5': resolution: {integrity: sha512-YvjXDqLRqPDl2dvRODYmmhz4rPeVKYvppfGYKSNGdyZkA01046pLWyRKKI3ax8fbJoK5QbxblURkwK/MWY18Tg==} engines: {node: '>=12'} cpu: [ia32] os: [linux] + '@esbuild/linux-ia32@0.23.0': + resolution: {integrity: sha512-P7O5Tkh2NbgIm2R6x1zGJJsnacDzTFcRWZyTTMgFdVit6E98LTxO+v8LCCLWRvPrjdzXHx9FEOA8oAZPyApWUA==} + engines: {node: '>=18'} + cpu: [ia32] + os: [linux] + '@esbuild/linux-loong64@0.21.5': resolution: {integrity: sha512-uHf1BmMG8qEvzdrzAqg2SIG/02+4/DHB6a9Kbya0XDvwDEKCoC8ZRWI5JJvNdUjtciBGFQ5PuBlpEOXQj+JQSg==} engines: {node: '>=12'} cpu: [loong64] os: [linux] + '@esbuild/linux-loong64@0.23.0': + resolution: {integrity: sha512-InQwepswq6urikQiIC/kkx412fqUZudBO4SYKu0N+tGhXRWUqAx+Q+341tFV6QdBifpjYgUndV1hhMq3WeJi7A==} + engines: {node: '>=18'} + cpu: [loong64] + os: [linux] + '@esbuild/linux-mips64el@0.21.5': resolution: {integrity: sha512-IajOmO+KJK23bj52dFSNCMsz1QP1DqM6cwLUv3W1QwyxkyIWecfafnI555fvSGqEKwjMXVLokcV5ygHW5b3Jbg==} engines: {node: '>=12'} cpu: [mips64el] os: [linux] + '@esbuild/linux-mips64el@0.23.0': + resolution: {integrity: sha512-J9rflLtqdYrxHv2FqXE2i1ELgNjT+JFURt/uDMoPQLcjWQA5wDKgQA4t/dTqGa88ZVECKaD0TctwsUfHbVoi4w==} + engines: {node: '>=18'} + cpu: [mips64el] + os: [linux] + '@esbuild/linux-ppc64@0.21.5': resolution: {integrity: sha512-1hHV/Z4OEfMwpLO8rp7CvlhBDnjsC3CttJXIhBi+5Aj5r+MBvy4egg7wCbe//hSsT+RvDAG7s81tAvpL2XAE4w==} engines: {node: '>=12'} cpu: [ppc64] os: [linux] + '@esbuild/linux-ppc64@0.23.0': + resolution: {integrity: sha512-cShCXtEOVc5GxU0fM+dsFD10qZ5UpcQ8AM22bYj0u/yaAykWnqXJDpd77ublcX6vdDsWLuweeuSNZk4yUxZwtw==} + engines: {node: '>=18'} + cpu: [ppc64] + os: [linux] + '@esbuild/linux-riscv64@0.21.5': resolution: {integrity: sha512-2HdXDMd9GMgTGrPWnJzP2ALSokE/0O5HhTUvWIbD3YdjME8JwvSCnNGBnTThKGEB91OZhzrJ4qIIxk/SBmyDDA==} engines: {node: '>=12'} cpu: [riscv64] os: [linux] + '@esbuild/linux-riscv64@0.23.0': + resolution: {integrity: sha512-HEtaN7Y5UB4tZPeQmgz/UhzoEyYftbMXrBCUjINGjh3uil+rB/QzzpMshz3cNUxqXN7Vr93zzVtpIDL99t9aRw==} + engines: {node: '>=18'} + cpu: [riscv64] + os: [linux] + '@esbuild/linux-s390x@0.21.5': resolution: {integrity: sha512-zus5sxzqBJD3eXxwvjN1yQkRepANgxE9lgOW2qLnmr8ikMTphkjgXu1HR01K4FJg8h1kEEDAqDcZQtbrRnB41A==} engines: {node: '>=12'} cpu: [s390x] os: [linux] + '@esbuild/linux-s390x@0.23.0': + resolution: {integrity: sha512-WDi3+NVAuyjg/Wxi+o5KPqRbZY0QhI9TjrEEm+8dmpY9Xir8+HE/HNx2JoLckhKbFopW0RdO2D72w8trZOV+Wg==} + engines: {node: '>=18'} + cpu: [s390x] + os: [linux] + '@esbuild/linux-x64@0.21.5': resolution: {integrity: sha512-1rYdTpyv03iycF1+BhzrzQJCdOuAOtaqHTWJZCWvijKD2N5Xu0TtVC8/+1faWqcP9iBCWOmjmhoH94dH82BxPQ==} engines: {node: '>=12'} cpu: [x64] os: [linux] + '@esbuild/linux-x64@0.23.0': + resolution: {integrity: sha512-a3pMQhUEJkITgAw6e0bWA+F+vFtCciMjW/LPtoj99MhVt+Mfb6bbL9hu2wmTZgNd994qTAEw+U/r6k3qHWWaOQ==} + engines: {node: '>=18'} + cpu: [x64] + os: [linux] + '@esbuild/netbsd-x64@0.21.5': resolution: {integrity: sha512-Woi2MXzXjMULccIwMnLciyZH4nCIMpWQAs049KEeMvOcNADVxo0UBIQPfSmxB3CWKedngg7sWZdLvLczpe0tLg==} engines: {node: '>=12'} cpu: [x64] os: [netbsd] + '@esbuild/netbsd-x64@0.23.0': + resolution: {integrity: sha512-cRK+YDem7lFTs2Q5nEv/HHc4LnrfBCbH5+JHu6wm2eP+d8OZNoSMYgPZJq78vqQ9g+9+nMuIsAO7skzphRXHyw==} + engines: {node: '>=18'} + cpu: [x64] + os: [netbsd] + + '@esbuild/openbsd-arm64@0.23.0': + resolution: {integrity: sha512-suXjq53gERueVWu0OKxzWqk7NxiUWSUlrxoZK7usiF50C6ipColGR5qie2496iKGYNLhDZkPxBI3erbnYkU0rQ==} + engines: {node: '>=18'} + cpu: [arm64] + os: [openbsd] + '@esbuild/openbsd-x64@0.21.5': resolution: {integrity: sha512-HLNNw99xsvx12lFBUwoT8EVCsSvRNDVxNpjZ7bPn947b8gJPzeHWyNVhFsaerc0n3TsbOINvRP2byTZ5LKezow==} engines: {node: '>=12'} cpu: [x64] os: [openbsd] + '@esbuild/openbsd-x64@0.23.0': + resolution: {integrity: sha512-6p3nHpby0DM/v15IFKMjAaayFhqnXV52aEmv1whZHX56pdkK+MEaLoQWj+H42ssFarP1PcomVhbsR4pkz09qBg==} + engines: {node: '>=18'} + cpu: [x64] + os: [openbsd] + '@esbuild/sunos-x64@0.21.5': resolution: {integrity: sha512-6+gjmFpfy0BHU5Tpptkuh8+uw3mnrvgs+dSPQXQOv3ekbordwnzTVEb4qnIvQcYXq6gzkyTnoZ9dZG+D4garKg==} engines: {node: '>=12'} cpu: [x64] os: [sunos] + '@esbuild/sunos-x64@0.23.0': + resolution: {integrity: sha512-BFelBGfrBwk6LVrmFzCq1u1dZbG4zy/Kp93w2+y83Q5UGYF1d8sCzeLI9NXjKyujjBBniQa8R8PzLFAUrSM9OA==} + engines: {node: '>=18'} + cpu: [x64] + os: [sunos] + '@esbuild/win32-arm64@0.21.5': resolution: {integrity: sha512-Z0gOTd75VvXqyq7nsl93zwahcTROgqvuAcYDUr+vOv8uHhNSKROyU961kgtCD1e95IqPKSQKH7tBTslnS3tA8A==} engines: {node: '>=12'} cpu: [arm64] os: [win32] + '@esbuild/win32-arm64@0.23.0': + resolution: {integrity: sha512-lY6AC8p4Cnb7xYHuIxQ6iYPe6MfO2CC43XXKo9nBXDb35krYt7KGhQnOkRGar5psxYkircpCqfbNDB4uJbS2jQ==} + engines: {node: '>=18'} + cpu: [arm64] + os: [win32] + '@esbuild/win32-ia32@0.21.5': resolution: {integrity: sha512-SWXFF1CL2RVNMaVs+BBClwtfZSvDgtL//G/smwAc5oVK/UPu2Gu9tIaRgFmYFFKrmg3SyAjSrElf0TiJ1v8fYA==} engines: {node: '>=12'} cpu: [ia32] os: [win32] + '@esbuild/win32-ia32@0.23.0': + resolution: {integrity: sha512-7L1bHlOTcO4ByvI7OXVI5pNN6HSu6pUQq9yodga8izeuB1KcT2UkHaH6118QJwopExPn0rMHIseCTx1CRo/uNA==} + engines: {node: '>=18'} + cpu: [ia32] + os: [win32] + '@esbuild/win32-x64@0.21.5': resolution: {integrity: sha512-tQd/1efJuzPC6rCFwEvLtci/xNFcTZknmXs98FYDfGE4wP9ClFV98nyKrzJKVPMhdDnjzLhdUyMX4PsQAPjwIw==} engines: {node: '>=12'} cpu: [x64] os: [win32] + '@esbuild/win32-x64@0.23.0': + resolution: {integrity: sha512-Arm+WgUFLUATuoxCJcahGuk6Yj9Pzxd6l11Zb/2aAuv5kWWvvfhLFo2fni4uSK5vzlUdCGZ/BdV5tH8klj8p8g==} + engines: {node: '>=18'} + cpu: [x64] + os: [win32] + '@eslint-community/eslint-utils@4.4.0': resolution: {integrity: sha512-1/sA4dwrzBAyeUoQ6oxahHKmrZvsnLCg4RfxW3ZFGGmQkSNQPFNLV9CUEFQP1x9EYXHTo5p6xdhZM1Ne9p/AfA==} engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} @@ -2514,56 +2695,56 @@ packages: cpu: [x64] os: [win32] - '@inquirer/checkbox@2.4.2': - resolution: {integrity: sha512-iZRNbTlSB9xXt/+jdMFViBdxw1ILWu3365rzfM5OLwAyOScbDFFGSH7LEUwoq1uOIo48ymOEwYSqP5y8hQMlmA==} + '@inquirer/checkbox@2.4.5': + resolution: {integrity: sha512-+YlCyS6JBWeZugIvReh/YL5HJcowlklz5RykQuYKQfgWQeCJh5Us0nWcRddvIVkjmYa0I/8bwWioSLu850J8sA==} engines: {node: '>=18'} - '@inquirer/confirm@3.1.17': - resolution: {integrity: sha512-qCpt/AABzPynz8tr69VDvhcjwmzAryipWXtW8Vi6m651da4H/d0Bdn55LkxXD7Rp2gfgxvxzTdb66AhIA8gzBA==} + '@inquirer/confirm@3.1.20': + resolution: {integrity: sha512-UvG5Plh0MfCqUvZB8RKzBBEWB/EeMzO59Awy/Jg4NgeSjIPqhPaQFnnmxiyWUTwZh4uENB7wCklEFUwckioXWg==} engines: {node: '>=18'} - '@inquirer/core@9.0.5': - resolution: {integrity: sha512-QWG41I7vn62O9stYKg/juKXt1PEbr/4ZZCPb4KgXDQGwgA9M5NBTQ7FnOvT1ridbxkm/wTxLCNraUs7y47pIRQ==} + '@inquirer/core@9.0.8': + resolution: {integrity: sha512-ttnI/BGlP9SxjbQnv1nssv7dPAwiR82KmjJZx2SxSZyi2mGbaEvh4jg0I4yU/4mVQf7QvCVGGr/hGuJFEYhwnw==} engines: {node: '>=18'} - '@inquirer/editor@2.1.17': - resolution: {integrity: sha512-hwx3VpFQzOY2hFWnY+XPsUGCIUVQ5kYxH6+CExv/RbMiAoN3zXtzj8DyrWBOHami0vBrrnPS8CTq3uQWc7N2BA==} + '@inquirer/editor@2.1.20': + resolution: {integrity: sha512-vtIN9NwXldX8SWbPt5biJhnTpHJCzF5nSymcv4hcOxiCrOpXmgOvFYGpAY729KODF+5e1OLqPbJ8ApiwPu/peQ==} engines: {node: '>=18'} - '@inquirer/expand@2.1.17': - resolution: {integrity: sha512-s4V/dC+GeE5s97xoTtZSmC440uNKePKqZgzqEf0XM63ciilnXAtKGvoAWOePFdlK+oGTz0d8bhbPKwpKGvRYfg==} + '@inquirer/expand@2.1.20': + resolution: {integrity: sha512-ruUTCUGKhe6TvDM3/gKjX9v7D5cWbiuawFE6aF/cFmNO79R/zMjrFFVoueDM8FRw8yXqnREb0jFkYF1LUxnDNA==} engines: {node: '>=18'} '@inquirer/figures@1.0.5': resolution: {integrity: sha512-79hP/VWdZ2UVc9bFGJnoQ/lQMpL74mGgzSYX1xUqCVk7/v73vJCMw1VuyWN1jGkZ9B3z7THAbySqGbCNefcjfA==} engines: {node: '>=18'} - '@inquirer/input@2.2.4': - resolution: {integrity: sha512-wvYnDITPQn+ltktj/O9kQjPxOvpmwcpxLWh8brAyD+jlEbihxtrx9cZdZcxqaCVQj3caw4eZa2Uq5xELo4yXkA==} + '@inquirer/input@2.2.7': + resolution: {integrity: sha512-QFk31Gq4Wr+Ve9ilMiFGGrSjGZQBilV0cgTN1zubD98Bx65fsNrh8++Biy/9mjNKRaqHFbZBw5baAcQvOmW8OQ==} engines: {node: '>=18'} - '@inquirer/number@1.0.5': - resolution: {integrity: sha512-+H6TJPU2AJEcoF6nVTWssxS7gnhxWvf6CkILAdfq/yGm/htBKNDrvYLYaJvi1Be/aXQoKID9FaP94bUCjOvJNQ==} + '@inquirer/number@1.0.8': + resolution: {integrity: sha512-GamytM0a3fLh8xjgWbGb/DmDA1SmW6sc6ZyfiiWL1my2NAkV6mrTEKMOA4LSK2gB43uf8vcOS7Hp/LeVjIqLwg==} engines: {node: '>=18'} - '@inquirer/password@2.1.17': - resolution: {integrity: sha512-/u6DM/fDHXoBWyA+9aRhghkeo5smE7wO9k4E2UoJbgiRCkt3JjBEuBqLOJNrz8E16M0ez4UM1vd5cXrmICHW+A==} + '@inquirer/password@2.1.20': + resolution: {integrity: sha512-il2TG7xDlfiLE3cnOCxfDfrwvsiSmXjVd26hvf4tdzHvdisgLiEjbN6mi51/TnlSQ+2Qc69+9jIq3ws93nhS2w==} engines: {node: '>=18'} - '@inquirer/prompts@5.3.2': - resolution: {integrity: sha512-8Jv+6rbY98ilFAZMYYfetu6XGXF/ZU44i5Z6Jx4t0xmwDh/AihdBV/FgetzDDZZMv5AMW1MT35LI0FiS55LoXw==} + '@inquirer/prompts@5.3.6': + resolution: {integrity: sha512-go5DXxasCIZvztWapYPUSFXg7GceDSQPM1ew3MahFF7degA5kfIVe5kB4KAlARXt83fApyEczvE1H4bh0HLObA==} engines: {node: '>=18'} - '@inquirer/rawlist@2.1.17': - resolution: {integrity: sha512-RFrw34xU5aVlMA3ZJCaeKGxYjhu3j4i46O2GMmaRRGeLObCRM1yOKQOsRclSTzjd4A7+M5QleR2iuW/68J9Kwg==} + '@inquirer/rawlist@2.2.2': + resolution: {integrity: sha512-U4OsvqjdLB6nmf5ZDshPYMq0b+qd6JWxTrvRTiMfwUY6cFxkR9YWKarLXFhndf7tawQ8f3DwU9P9wryDc2ESSA==} engines: {node: '>=18'} - '@inquirer/search@1.0.2': - resolution: {integrity: sha512-E/JD3MeJwJeNilOnRDmHGnlUksyVqrTQEUNqkRpioj8J0sVxW7+pFRHBM2coFsiCpvI4XKRRhWsai5VP8rrfrQ==} + '@inquirer/search@1.0.5': + resolution: {integrity: sha512-25nyVAbO0NwFZTXP/cW++W1QGHlHY+hmsehMM1sPKvp4wYcxMQcm6xNCor0bU2Pv/L33IkPV/NV9SuJyFC85EQ==} engines: {node: '>=18'} - '@inquirer/select@2.4.2': - resolution: {integrity: sha512-r78JlgShqRxyAtBDeBHSDtfrOhSQwm2ecWGGaxe7kD9JwgL3UN563G1ncVRYdsWD7/tigflcskfipVeoDLhLJg==} + '@inquirer/select@2.4.5': + resolution: {integrity: sha512-DbCthH3l7vrrK+Ewll3bgzxC3dzMle8xkWYta4if31p9NOmFNhZKhSfdYMjaOtGFBCUEwo4D5LMgN6sPKgUWIw==} engines: {node: '>=18'} '@inquirer/type@1.5.1': @@ -2610,14 +2791,10 @@ packages: '@jridgewell/trace-mapping@0.3.25': resolution: {integrity: sha512-vNk6aEwybGtawWmy/PzwnGDOjCkLWSD2wqvjGGAgOAwCGWySYXfYoxt00IJkTF+8Lb57DwOb3Aa0o9CApepiYQ==} - '@lerna/create@8.1.6': - resolution: {integrity: sha512-z7CjDSWFKS6cqydxP2XDrnmp1MYavSk2sU70ku1uo/38SZvFeUlEAkV6evxc2QJOqWQFsGKOO26zX2DBnQ45YQ==} + '@lerna/create@8.1.7': + resolution: {integrity: sha512-ch81CgU5pBNOiUCQx44F/ZtN4DxxJjUQtuytYRBFWJSHAJ+XPJtiC/yQ9zjr1I1yaUlmNYYblkopoOyziOdJ1w==} engines: {node: '>=18.0.0'} - '@mswjs/cookies@1.1.1': - resolution: {integrity: sha512-W68qOHEjx1iD+4VjQudlx26CPIoxmIAtK4ZCexU0/UJBG6jYhcuyzKJx+Iw8uhBIGd9eba64XgWVgo20it1qwA==} - engines: {node: '>=18'} - '@mswjs/interceptors@0.29.1': resolution: {integrity: sha512-3rDakgJZ77+RiQUuSK69t1F0m8BQKA8Vh5DCS5V0DWvNY67zob2JhhQrhCO0AKLGINTRSFd1tBaHcJTkhefoSw==} engines: {node: '>=18'} @@ -2661,8 +2838,8 @@ packages: '@mui/core-downloads-tracker@6.0.0-dev.240424162023-9968b4889d': resolution: {integrity: sha512-doh3M3U7HUGSBIWGe1yvesSbfDguMRjP0N09ogWSBM2hovXAlgULhMgcRTepAZLLwfRxFII0bCohq6B9NqoKuw==} - '@mui/docs@6.0.0-beta.3': - resolution: {integrity: sha512-QnA7sTuOxUMFyD+aehKpc/rgEma3lFl0rFlkwGTeuDkKnUgtvbL0IzQPG6ZnjRDMGKrF/JPghETrRLx+SQM9Dw==} + '@mui/docs@6.0.0-beta.4': + resolution: {integrity: sha512-zQ/0CPWRmNBDYwLE10FrBm4wnLUCm5200ZsyqFowcHr2Utajmlsby4BIkhjlZ7/XurQr2SW67bA+VIWT+GKvDQ==} engines: {node: '>=14.0.0'} peerDependencies: '@mui/base': '*' @@ -2671,6 +2848,7 @@ packages: '@mui/system': ^5.0.0 '@types/react': ^17.0.0 || ^18.0.0 chai: ^4.4.1 + csstype: ^3.1.3 next: ^13.5.1 || ^14 react: ^17.0.0 || ^18.0.0 peerDependenciesMeta: @@ -2699,11 +2877,11 @@ packages: '@types/react': optional: true - '@mui/icons-material@6.0.0-beta.3': - resolution: {integrity: sha512-tsEqy19BJLb4H17u4yrplDRK2h5nc/PJrD5jlrq/EjX3NAJjCCcWyXPvHFO3GQMVcnnMVYlqzTP4pUsWAAMPng==} + '@mui/icons-material@6.0.0-beta.4': + resolution: {integrity: sha512-04lX8JqiKEZYUO2PZSksWt6bvecCmSkBolk6XiCIjjnCX95sGUdhoGFrnIwldBwEyn5N1/M4zUeBPkn09CrFrQ==} engines: {node: '>=14.0.0'} peerDependencies: - '@mui/material': 6.0.0-beta.3 + '@mui/material': 6.0.0-beta.4 '@types/react': ^17.0.0 || ^18.0.0 react: ^17.0.0 || ^18.0.0 peerDependenciesMeta: @@ -2736,6 +2914,24 @@ packages: '@types/react': optional: true + '@mui/lab@5.0.0-alpha.170': + resolution: {integrity: sha512-0bDVECGmrNjd3+bLdcLiwYZ0O4HP5j5WSQm5DV6iA/Z9kr8O6AnvZ1bv9ImQbbX7Gj3pX4o43EKwCutj3EQxQg==} + engines: {node: '>=12.0.0'} + peerDependencies: + '@emotion/react': ^11.5.0 + '@emotion/styled': ^11.3.0 + '@mui/material': '>=5.15.0' + '@types/react': ^17.0.0 || ^18.0.0 + react: ^17.0.0 || ^18.0.0 + react-dom: ^17.0.0 || ^18.0.0 + peerDependenciesMeta: + '@emotion/react': + optional: true + '@emotion/styled': + optional: true + '@types/react': + optional: true + '@mui/lab@5.0.0-alpha.172': resolution: {integrity: sha512-stpa3WTsDE1HamFR4eeS6Bhxalm+u9FhzzNph/PrDMdWSRBHlJs2mqvZ6FEoO22O7MOCwNMqbXTkvEwsyEf0ew==} engines: {node: '>=12.0.0'} @@ -2754,14 +2950,14 @@ packages: '@types/react': optional: true - '@mui/lab@6.0.0-beta.3': - resolution: {integrity: sha512-PHnYfWl2H6ADz+MXiNNC9DMehsHPc063Y2+1mgBEJ8Konmxd8pG7EXNmSS/BNEJFI5q6V7r3H20kajdnTt4qLQ==} + '@mui/lab@6.0.0-beta.4': + resolution: {integrity: sha512-bBkWE5U/M/kBllilcvs3V2RySSz0/q3s4BxagD/5bvqz1v1VyASBRyY0bovV/oNAGN1fBKAsevxb0hklNnClvQ==} engines: {node: '>=14.0.0'} peerDependencies: '@emotion/react': ^11.5.0 '@emotion/styled': ^11.3.0 - '@mui/material': ^6.0.0-beta.3 - '@mui/material-pigment-css': ^6.0.0-beta.3 + '@mui/material': ^6.0.0-beta.4 + '@mui/material-pigment-css': ^6.0.0-beta.4 '@types/react': ^17.0.0 || ^18.0.0 react: ^17.0.0 || ^18.0.0 react-dom: ^17.0.0 || ^18.0.0 @@ -2793,8 +2989,8 @@ packages: '@types/react': optional: true - '@mui/material-nextjs@6.0.0-beta.3': - resolution: {integrity: sha512-05B3OUXFuUhc51oE8/jhDY7ffv8UQqOndQ6SPMzBRl15DCzmcqvKXdP6zj1fGkTc+HVjlIRwx4oJ6M/hm7XsQA==} + '@mui/material-nextjs@6.0.0-beta.4': + resolution: {integrity: sha512-GSI/tX32T5iYtqjpbt0AbSMWvRX0yLdyCIYt8AB5HOHNYXlP7kDd+9INhReTbjdg8ZJqWeH87mxzKQ3/gbStGg==} engines: {node: '>=14.0.0'} peerDependencies: '@emotion/cache': ^11.11.0 @@ -2848,13 +3044,13 @@ packages: '@types/react': optional: true - '@mui/material@6.0.0-beta.3': - resolution: {integrity: sha512-hZFv7lXHCn23fh6fe6/zjo0YSaw3TZ8RxGOagu8UfR5vyIdQQd57V1kk85Gl1W8Of5wcFilzkEjO7UAIIEoEGg==} + '@mui/material@6.0.0-beta.4': + resolution: {integrity: sha512-TqETyQcwH6+3MdsZbTyJK8y41j//xeWKG9kvH4CEGeYDXConBc4TFS/2t+lf1w051Vd74/GiyGaDqlSX1Fn3dQ==} engines: {node: '>=12.0.0'} peerDependencies: '@emotion/react': ^11.5.0 '@emotion/styled': ^11.3.0 - '@mui/material-pigment-css': ^6.0.0-beta.3 + '@mui/material-pigment-css': ^6.0.0-beta.4 '@types/react': ^17.0.0 || ^18.0.0 react: ^17.0.0 || ^18.0.0 react-dom: ^17.0.0 || ^18.0.0 @@ -2868,9 +3064,9 @@ packages: '@types/react': optional: true - '@mui/monorepo@https://codeload.github.com/mui/material-ui/tar.gz/d69604d3feb1dd1dd9b9bf3398c08237e77dafa6': - resolution: {tarball: https://codeload.github.com/mui/material-ui/tar.gz/d69604d3feb1dd1dd9b9bf3398c08237e77dafa6} - version: 6.0.0-beta.3 + '@mui/monorepo@https://codeload.github.com/mui/material-ui/tar.gz/85a3b55d22570881db6ac1b99181ef79c18fc58d': + resolution: {tarball: https://codeload.github.com/mui/material-ui/tar.gz/85a3b55d22570881db6ac1b99181ef79c18fc58d} + version: 6.0.0-beta.4 engines: {pnpm: 9.5.0} '@mui/private-theming@5.16.5': @@ -2903,8 +3099,8 @@ packages: '@types/react': optional: true - '@mui/private-theming@6.0.0-beta.3': - resolution: {integrity: sha512-b/SAMp21qj2jaOYjfM4EF9lOzu8AFsmAPmVMq8YM23+JAu+y88xTXihH/m5mbnIpsP/pM4+fCeZ79tWNTZUEyg==} + '@mui/private-theming@6.0.0-beta.4': + resolution: {integrity: sha512-mHt4NH6KD1dOc/Y9yG5xkVtKRTmo2khLiJrbgfU1BLTKD++jAoadnZihQvEubQQzw0+dcBP/5mI9Gv5udTSdiA==} engines: {node: '>=14.0.0'} peerDependencies: '@types/react': ^17.0.0 || ^18.0.0 @@ -2952,8 +3148,8 @@ packages: '@emotion/styled': optional: true - '@mui/styled-engine@6.0.0-beta.3': - resolution: {integrity: sha512-Lul9pmAvZ37pe2SPqbh+aJCdS8Pg5CJJsiHGGRaga+b2c+8GIu1nn/J78R2lr5ES8aLFT9onMK2HOcFgu0VLGA==} + '@mui/styled-engine@6.0.0-beta.4': + resolution: {integrity: sha512-L3twZGfmRk+qkkDZY+c8yWkYdRI0cGs5kyquqVUg1z4KZbFP/hDd2uDTpT/oZ0vJdPbwF9+INPexzkQG1KzlQg==} engines: {node: '>=14.0.0'} peerDependencies: '@emotion/react': ^11.4.1 @@ -2965,8 +3161,8 @@ packages: '@emotion/styled': optional: true - '@mui/styles@6.0.0-beta.3': - resolution: {integrity: sha512-QbekBkcqfDHY7W4HhZXWEwxqBmouPYJOUrCG/E74zPaMClqPbfzET9C801mHqzg8dGf42IBYqIUL/30g9t8FEQ==} + '@mui/styles@6.0.0-beta.4': + resolution: {integrity: sha512-YNN7jqgRZJFXkuVP4bjCGgt/thAOaBTPLZkEzonDdoKfU4N85yEEy/GFpwZUNTlVN5akfg9wpFWeMKxyFe8DEg==} engines: {node: '>=14.0.0'} peerDependencies: '@types/react': ^17.0.0 || ^18.0.0 @@ -3039,8 +3235,8 @@ packages: '@types/react': optional: true - '@mui/system@6.0.0-beta.3': - resolution: {integrity: sha512-0JHz/td+VYh+am/J1CrExM+tNA9rrqqNa4nGNwAJPPM12D1p7QusdVfaaWZhhcslKoInR5V/ncrwj4KaBHoAow==} + '@mui/system@6.0.0-beta.4': + resolution: {integrity: sha512-0tKYCXOIQILKTkU6m6gjIQ3f9gU1qBa7vZFkTiyi2t3BTGRgOHduNaddQrAZYrTYGEBypaoOeCfllmtEW+dVmQ==} engines: {node: '>=14.0.0'} peerDependencies: '@emotion/react': ^11.5.0 @@ -3113,8 +3309,21 @@ packages: '@types/react': optional: true - '@mui/x-charts@7.11.1': - resolution: {integrity: sha512-csD2wEgC6fjOAdnhyw6AN5xDxhXQ2C3NvwGQyAN9LpwuJ71COOhPOmfs06i8xR5d+tt82QCw29xeSPFf49iKaw==} + '@mui/utils@6.0.0-beta.4': + resolution: {integrity: sha512-tJsYnoUh0d9JeEcz70jbF9S2uLviBDgu1FNWJUDvuz31a/ClaJsGY0sodHPhamvob3XrPjzdQX2xSZ91m9Jzag==} + engines: {node: '>=12.0.0'} + peerDependencies: + '@types/react': ^17.0.0 || ^18.0.0 + react: ^17.0.0 || ^18.0.0 + peerDependenciesMeta: + '@types/react': + optional: true + + '@mui/x-charts-vendor@7.12.0': + resolution: {integrity: sha512-05J1o0T3/7iNd0I4LnXLjGwxybzJN8hF2qr/n8XduJYWxYIXRbGsD/Y0nVnHh/EjIGe3aHqCYbt1Ob9E/RQUtQ==} + + '@mui/x-charts@7.12.0': + resolution: {integrity: sha512-N0Q83vXinNsdVJ4l8f1WcPdbsSxO7iOIvwn6URW/iCvDx6ZxZOxw2AKAerM5l2lPr9N3G8dYWMz5aG3DrVpNjg==} engines: {node: '>=14.0.0'} peerDependencies: '@emotion/react': ^11.9.0 @@ -3128,32 +3337,32 @@ packages: '@emotion/styled': optional: true - '@mui/x-data-grid-premium@7.11.1': - resolution: {integrity: sha512-SHm1pEaokxX58GSwv8f41Sfnh1eZFSntnP9WZyWuhbCHUYxMAfxpm33pmDIidjw/Ksx4smhNSpKnRYVv66xtTg==} + '@mui/x-data-grid-premium@7.12.0': + resolution: {integrity: sha512-XcsfoDZIN8J8l3vlH7zynnYxZULfRB7gEHHqcWboBH2psbmp0PFUi7GIsGZuRVGOQ9SeYHvSg/OHIza1CFY7rg==} engines: {node: '>=14.0.0'} peerDependencies: '@mui/material': ^5.15.14 react: ^17.0.0 || ^18.0.0 react-dom: ^17.0.0 || ^18.0.0 - '@mui/x-data-grid-pro@7.11.1': - resolution: {integrity: sha512-laVV7qjZJKkP3Kfzx8YBPvPqf+I7okTo85Ztnse/XNZlJLVvQ1L9HG7/1HLHcqaBeG1fG5oOtfLgZ1PU5cAfpw==} + '@mui/x-data-grid-pro@7.12.0': + resolution: {integrity: sha512-BgPK/lgFn8Zhg5jbHAkmsqG3FxLu2CQKu7q/8Q55AskkF9GNVj0GXbv0Ql1Kfu2GonmmffpOdbTw9i4VwzX+OQ==} engines: {node: '>=14.0.0'} peerDependencies: '@mui/material': ^5.15.14 react: ^17.0.0 || ^18.0.0 react-dom: ^17.0.0 || ^18.0.0 - '@mui/x-data-grid@7.11.1': - resolution: {integrity: sha512-7D8fK4NZolU4vGIhKrI8FSFp6CwlpUwBXr944GsKjOTzvC1yASkqD6b2VAYPvvpb94BzqQsvePHT3if/JZylKA==} + '@mui/x-data-grid@7.12.0': + resolution: {integrity: sha512-5cS/v0PFMfm2na6iC77eeM/63m+gu4YYQcFycvGY6i5qm6ZywHzdcyXxx13FENKPclY1p9i19f4t4iuYW2F9Eg==} engines: {node: '>=14.0.0'} peerDependencies: '@mui/material': ^5.15.14 react: ^17.0.0 || ^18.0.0 react-dom: ^17.0.0 || ^18.0.0 - '@mui/x-date-pickers-pro@7.11.1': - resolution: {integrity: sha512-8M3CZfbF2v9axizxotmNnUHGiIcVKkD/XFzXoJopz+YSV+CMNn1O/0HVQmv9wLEeSjx88nIaFp6pOckY6YnCQg==} + '@mui/x-date-pickers-pro@7.12.0': + resolution: {integrity: sha512-fKffbVKUJh8ySKRjW7ha+UUL4d826eOibJJfJPXN5s5MVzRtYQnOFKkMFPubi9RkHVFW2rRvoI0TW8PxJ4Pc7Q==} engines: {node: '>=14.0.0'} peerDependencies: '@emotion/react': ^11.9.0 @@ -3188,8 +3397,8 @@ packages: moment-jalaali: optional: true - '@mui/x-date-pickers@7.11.1': - resolution: {integrity: sha512-CflouzTNSv0YeOA8iiYpJMtqGlwGC8LI9EE9egDGhatR9Mn5geRDTXsm0rRG/4pMOfaRxyJc6Yzr/axBhEXM7w==} + '@mui/x-date-pickers@7.12.0': + resolution: {integrity: sha512-WU5C7QNfSpJ9cP8vl2sY7q35NW+0TUMgEy+sl98fcPhLckq3cgV1wnVxoZnQZ3BxVQAtx+7ag/MpefU03vJcVw==} engines: {node: '>=14.0.0'} peerDependencies: '@emotion/react': ^11.9.0 @@ -3224,20 +3433,20 @@ packages: moment-jalaali: optional: true - '@mui/x-internals@7.11.1': - resolution: {integrity: sha512-CN9HmtcyJ6/1fd8by5h1/R8WmFN4xyk6XYvYG9++oAaSF1ttX16oiE5vB+gGafl7St0epCWWjvOzl21h29k6WQ==} + '@mui/x-internals@7.12.0': + resolution: {integrity: sha512-zgu/JqSXBflSvtzfFN8lNi5Wxw79czBv6V/crOrXqCCOzxAIsrcup2FZlwvXlzetm3otS7o/Tzfo/O5dE68NkA==} engines: {node: '>=14.0.0'} peerDependencies: react: ^17.0.0 || ^18.0.0 - '@mui/x-license@7.11.1': - resolution: {integrity: sha512-cjNp7Zb/MEjCYSrC35Lqf7fg8y10WblB8dhwOSIF8d4WwyW84+T0wCvAz0wc1mxy4DireV8A8h5fb0iaF8fMOA==} + '@mui/x-license@7.12.0': + resolution: {integrity: sha512-XoVWCp23u335EtdF1hEjU8/9+iOmn4acn6aLaVCye3FCoVxbmQAWwUN7mhxMQmvOPn3vQAo3AQdHm02LS0/3Pw==} engines: {node: '>=14.0.0'} peerDependencies: react: ^17.0.0 || ^18.0.0 - '@mui/x-tree-view@7.11.1': - resolution: {integrity: sha512-BiQnx/bGnEFjPge10v9X1QTJVRvv5aAH2Q35YV8XX2iuONQO2fpam/jALyQuX9xY7LV6zoHG48oISV4VPpWo7g==} + '@mui/x-tree-view@7.12.0': + resolution: {integrity: sha512-zuj0//1k7Ku8hmKpnzy5zCqZRK8ocDChhD3nCFwEc9jndb0PnDqHMBPSrsZgFnmBiFdLt6bMtTY96d37pxp5Yg==} engines: {node: '>=14.0.0'} peerDependencies: '@emotion/react': ^11.9.0 @@ -3261,9 +3470,6 @@ packages: '@next/env@14.2.5': resolution: {integrity: sha512-/zZGkrTOsraVfYjGP8uM0p6r0BDT6xWpkjdVbcz66PJVSpwXX3yNiRycxAuDfBKGWBrZBXRuK/YVlkNgxHGwmA==} - '@next/eslint-plugin-next@14.2.4': - resolution: {integrity: sha512-svSFxW9f3xDaZA3idQmlFw7SusOuWTpDTAeBlO3AEPDltrraV+lqs7mAc6A27YdnpQVVIA3sODqUAAHdWhVWsA==} - '@next/eslint-plugin-next@14.2.5': resolution: {integrity: sha512-LY3btOpPh+OTIpviNojDpUdIbHW9j0JBYBjsIp8IxtDFfYFyORvw3yNq6N231FVqQA7n7lwaf7xHbVJlA1ED7g==} @@ -3569,29 +3775,29 @@ packages: '@popperjs/core@2.11.8': resolution: {integrity: sha512-P1st0aksCrn9sGZhp8GMYwBnQsbvAWsZAX44oXNNvLHGqAOcoVxmjZiohstwQ7SqKnbR47akdNi+uleWD8+g6A==} - '@react-spring/animated@9.7.3': - resolution: {integrity: sha512-5CWeNJt9pNgyvuSzQH+uy2pvTg8Y4/OisoscZIR8/ZNLIOI+CatFBhGZpDGTF/OzdNFsAoGk3wiUYTwoJ0YIvw==} + '@react-spring/animated@9.7.4': + resolution: {integrity: sha512-7As+8Pty2QlemJ9O5ecsuPKjmO0NKvmVkRR1n6mEotFgWar8FKuQt2xgxz3RTgxcccghpx1YdS1FCdElQNexmQ==} peerDependencies: react: ^16.8.0 || ^17.0.0 || ^18.0.0 - '@react-spring/core@9.7.3': - resolution: {integrity: sha512-IqFdPVf3ZOC1Cx7+M0cXf4odNLxDC+n7IN3MDcVCTIOSBfqEcBebSv+vlY5AhM0zw05PDbjKrNmBpzv/AqpjnQ==} + '@react-spring/core@9.7.4': + resolution: {integrity: sha512-GzjA44niEJBFUe9jN3zubRDDDP2E4tBlhNlSIkTChiNf9p4ZQlgXBg50qbXfSXHQPHak/ExYxwhipKVsQ/sUTw==} peerDependencies: react: ^16.8.0 || ^17.0.0 || ^18.0.0 - '@react-spring/rafz@9.7.3': - resolution: {integrity: sha512-9vzW1zJPcC4nS3aCV+GgcsK/WLaB520Iyvm55ARHfM5AuyBqycjvh1wbmWmgCyJuX4VPoWigzemq1CaaeRSHhQ==} + '@react-spring/rafz@9.7.4': + resolution: {integrity: sha512-mqDI6rW0Ca8IdryOMiXRhMtVGiEGLIO89vIOyFQXRIwwIMX30HLya24g9z4olDvFyeDW3+kibiKwtZnA4xhldA==} - '@react-spring/shared@9.7.3': - resolution: {integrity: sha512-NEopD+9S5xYyQ0pGtioacLhL2luflh6HACSSDUZOwLHoxA5eku1UPuqcJqjwSD6luKjjLfiLOspxo43FUHKKSA==} + '@react-spring/shared@9.7.4': + resolution: {integrity: sha512-bEPI7cQp94dOtCFSEYpxvLxj0+xQfB5r9Ru1h8OMycsIq7zFZon1G0sHrBLaLQIWeMCllc4tVDYRTLIRv70C8w==} peerDependencies: react: ^16.8.0 || ^17.0.0 || ^18.0.0 - '@react-spring/types@9.7.3': - resolution: {integrity: sha512-Kpx/fQ/ZFX31OtlqVEFfgaD1ACzul4NksrvIgYfIFq9JpDHFwQkMVZ10tbo0FU/grje4rcL4EIrjekl3kYwgWw==} + '@react-spring/types@9.7.4': + resolution: {integrity: sha512-iQVztO09ZVfsletMiY+DpT/JRiBntdsdJ4uqk3UJFhrhS8mIC9ZOZbmfGSRs/kdbNPQkVyzucceDicQ/3Mlj9g==} - '@react-spring/web@9.7.3': - resolution: {integrity: sha512-BXt6BpS9aJL/QdVqEIX9YoUy8CE6TJrU0mNCqSoxdXlIeNcEBWOfIyE6B14ENNsyQKS3wOWkiJfco0tCr/9tUg==} + '@react-spring/web@9.7.4': + resolution: {integrity: sha512-UMvCZp7I5HCVIleSa4BwbNxynqvj+mJjG2m20VO2yPoi2pnCYANy58flvz9v/YcXTAvsmL655FV3pm5fbr6akA==} peerDependencies: react: ^16.8.0 || ^17.0.0 || ^18.0.0 react-dom: ^16.8.0 || ^17.0.0 || ^18.0.0 @@ -3770,20 +3976,20 @@ packages: '@swc/helpers@0.5.5': resolution: {integrity: sha512-KGYxvIOXcceOAbEk4bi/dVLEK9z8sZ0uBB3Il5b1rhfClSpcX0yfRO0KmTkqR2cnQDymwLB+25ZyMzICg/cm/A==} - '@tanstack/query-core@5.51.15': - resolution: {integrity: sha512-xyobHDJ0yhPE3+UkSQ2/4X1fLSg7ICJI5J1JyU9yf7F3deQfEwSImCDrB1WSRrauJkMtXW7YIEcC0oA6ZZWt5A==} + '@tanstack/query-core@5.51.21': + resolution: {integrity: sha512-POQxm42IUp6n89kKWF4IZi18v3fxQWFRolvBA6phNVmA8psdfB1MvDnGacCJdS+EOX12w/CyHM62z//rHmYmvw==} - '@tanstack/query-devtools@5.51.15': - resolution: {integrity: sha512-1oSCl+PsCa/aBCGVM2ZdcQLuQ0QYmKXJJB264twEMVM1M0n5CI40trtywORPF+wLGuZNIZzkKL7j/98mOLAIag==} + '@tanstack/query-devtools@5.51.16': + resolution: {integrity: sha512-ajwuq4WnkNCMj/Hy3KR8d3RtZ6PSKc1dD2vs2T408MdjgKzQ3klVoL6zDgVO7X+5jlb5zfgcO3thh4ojPhfIaw==} - '@tanstack/react-query-devtools@5.51.15': - resolution: {integrity: sha512-bvGvJoncjZ3irEofoFevptj5BPkDpQrp2+dZhtFqPUZXRT6MAKPmOqtSmZPfacLR5jQLpqw/7d3Zxr173z7WDA==} + '@tanstack/react-query-devtools@5.51.21': + resolution: {integrity: sha512-mi5ef8dvsS48GsG6/8M60O2EgrzPK1kNPngOcHBTlIUrB5dGkxP9fuHf05GQRxtSp5W5GlyeUpzOmtkKNpf9dQ==} peerDependencies: - '@tanstack/react-query': ^5.51.15 + '@tanstack/react-query': ^5.51.21 react: ^18 || ^19 - '@tanstack/react-query@5.51.15': - resolution: {integrity: sha512-UgFg23SrdIYrmfTSxAUn9g+J64VQy11pb9/EefoY/u2+zWuNMeqEOnvpJhf52XQy0yztQoyM9p6x8PFyTNaxXg==} + '@tanstack/react-query@5.51.21': + resolution: {integrity: sha512-Q/V81x3sAYgCsxjwOkfLXfrmoG+FmDhLeHH5okC/Bp8Aaw2c33lbEo/mMcMnkxUPVtB2FLpzHT0tq3c+OlZEbw==} peerDependencies: react: ^18.0.0 @@ -3791,26 +3997,9 @@ packages: resolution: {integrity: sha512-pemlzrSESWbdAloYml3bAJMEfNh1Z7EduzqPKprCH5S341frlpYnUEW0H72dLxa6IsYr+mPno20GiSm+h9dEdQ==} engines: {node: '>=18'} - '@testing-library/jest-dom@6.4.6': - resolution: {integrity: sha512-8qpnGVincVDLEcQXWaHOf6zmlbwTKc6Us6PPu4CRnPXCzo2OGBS5cwgMMOWdxDpEz1mkbvXHpEy99M5Yvt682w==} + '@testing-library/jest-dom@6.4.8': + resolution: {integrity: sha512-JD0G+Zc38f5MBHA4NgxQMR5XtO5Jx9g86jqturNTt2WUfRmLDIY7iKkWHDCCTiDuFMre6nxAD5wHw9W5kI4rGw==} engines: {node: '>=14', npm: '>=6', yarn: '>=1'} - peerDependencies: - '@jest/globals': '>= 28' - '@types/bun': latest - '@types/jest': '>= 28' - jest: '>= 28' - vitest: '>= 0.32' - peerDependenciesMeta: - '@jest/globals': - optional: true - '@types/bun': - optional: true - '@types/jest': - optional: true - jest: - optional: true - vitest: - optional: true '@testing-library/react@16.0.0': resolution: {integrity: sha512-guuxUKRWQ+FgNX0h0NS0FIq3Q3uLtWVpBzcLOggmfMoUpgBnzBzvLLd4fbm6yS8ydJd94cIfY4yP9qUQjM2KwQ==} @@ -3894,6 +4083,9 @@ packages: '@types/d3-color@3.1.3': resolution: {integrity: sha512-iO90scth9WAbmgv7ogoq57O9YpKmFBbmoEoCHDB2xMBY0+/KVrqAaCDyCE16dUspeOvIxFFRI+0sEtqDqy2b4A==} + '@types/d3-delaunay@6.0.4': + resolution: {integrity: sha512-ZMaSKu4THYCU6sV64Lhg6qjf1orxBthaC161plr5KuPHo3CNm8DTHiLw/5Eq2b6TsNP0W0iJrUOFscY6Q450Hw==} + '@types/d3-ease@3.0.2': resolution: {integrity: sha512-NcV1JjO5oDzoK26oMzbILE6HW7uVXOHLQvHshBUW4UMdZGfiY6v5BeQwh9a9tCzv+CeefZQHJt5SRgK154RtiA==} @@ -4023,8 +4215,11 @@ packages: '@types/node@14.18.63': resolution: {integrity: sha512-fAtCfv4jJg+ExtXhvCkCqUKZ+4ok/JQk01qDKhL5BDDoS3AxKXhV5/MAVUZyQnSEd2GT92fkgZl0pz0Q0AzcIQ==} - '@types/node@20.14.12': - resolution: {integrity: sha512-r7wNXakLeSsGT0H1AU863vS2wa5wBOK4bWMjZz2wj+8nBx+m5PeIn0k8AloSLpRuiwdRQZwarZqHE4FNArPuJQ==} + '@types/node@20.14.14': + resolution: {integrity: sha512-d64f00982fS9YoOgJkAMolK7MN8Iq3TDdVjchbYHdEmjth/DHowx82GnoA+tVUAN+7vxfYUgAzi+JXbKNd2SDQ==} + + '@types/node@22.1.0': + resolution: {integrity: sha512-AOmuRF0R2/5j1knA3c6G3HOk523Ga+l+ZXltX8SF1+5oqcXijjfTd8fY3XRZqSihEu9XhtQnKYLmkFaoxgsJHw==} '@types/normalize-package-data@2.4.4': resolution: {integrity: sha512-37i+OaWTh9qeK4LSHPsyRC7NahnGotNuZvjLSgcPzblpHB3rrCJxAOgI5gCdKm7coonsaX1Of0ILiTcnZjbfxA==} @@ -4122,6 +4317,9 @@ packages: '@types/title@3.4.3': resolution: {integrity: sha512-mjupLOb4kwUuoUFokkacy/VMRVBH2qtqZ5AX7K7iha6+iKIkX80n/Y4EoNVEVRmer8dYJU/ry+fppUaDFVQh7Q==} + '@types/tough-cookie@4.0.5': + resolution: {integrity: sha512-/Ad8+nIOV7Rl++6f1BdKxFSMgmoqEoYbHRpPcx3JEfv8VRsQe9Z4mCXeJBzxs7mbHY/XOZZuXlRNfhpVPbs6ZA==} + '@types/tsscmp@1.0.2': resolution: {integrity: sha512-cy7BRSU8GYYgxjcx0Py+8lo5MthuDhlyu076KUcYzVNXL23luYgRHkMG2fIFEc6neckeh/ntP82mw+U4QjZq+g==} @@ -4152,8 +4350,8 @@ packages: '@types/ws@7.4.7': resolution: {integrity: sha512-JQbbmxZTZehdc2iszGKs5oC3NFnjeay7mtAWrdt7qNtAVK0g19muApzAy4bm9byz79xa2ZnO/BOBC2R8RC5Lww==} - '@types/ws@8.5.11': - resolution: {integrity: sha512-4+q7P5h3SpJxaBft0Dzpbr6lmMaqh0Jr2tbhJZ/luAwvD7ohSCniYkwz/pLxuT2h0EOa6QADgJj1Ko+TzRfZ+w==} + '@types/ws@8.5.12': + resolution: {integrity: sha512-3tPRkv1EtkDpzlgyKyI8pGsGZAGPEaXeu0DOj5DI25Ja91bdAYddYHbADRYVrZMRbfW+1l5YwXVDKohDJNQxkQ==} '@types/yargs-parser@21.0.3': resolution: {integrity: sha512-I4q9QU9MQv4oEOz4tAHJtNz1cwuLxn2F3xcc2iV5WdqLPpUnj30aUuxt1mAxYTG+oe8CZMV/+6rU4S4gRDzqtQ==} @@ -4161,8 +4359,8 @@ packages: '@types/yargs@17.0.32': resolution: {integrity: sha512-xQ67Yc/laOG5uMfX/093MRlGGCIBzZMarVa+gfNKJxWAIgykYpVGkBdbqEzGDDfCrVUj6Hiff4mTZ5BA6TmAog==} - '@typescript-eslint/eslint-plugin@7.14.1': - resolution: {integrity: sha512-aAJd6bIf2vvQRjUG3ZkNXkmBpN+J7Wd0mfQiiVCJMu9Z5GcZZdcc0j8XwN/BM97Fl7e3SkTXODSk4VehUv7CGw==} + '@typescript-eslint/eslint-plugin@7.18.0': + resolution: {integrity: sha512-94EQTWZ40mzBc42ATNIBimBEDltSJ9RQHCC8vc/PDbxi4k8dVwUAv4o98dk50M1zB+JGFxp43FP7f8+FP8R6Sw==} engines: {node: ^18.18.0 || >=20.0.0} peerDependencies: '@typescript-eslint/parser': ^7.0.0 @@ -4178,8 +4376,8 @@ packages: peerDependencies: eslint: ^6.0.0 || ^7.0.0 || ^8.0.0 - '@typescript-eslint/parser@7.14.1': - resolution: {integrity: sha512-8lKUOebNLcR0D7RvlcloOacTOWzOqemWEWkKSVpMZVF/XVcwjPR+3MD08QzbW9TCGJ+DwIc6zUSGZ9vd8cO1IA==} + '@typescript-eslint/parser@7.18.0': + resolution: {integrity: sha512-4Z+L8I2OqhZV8qA132M4wNL30ypZGYOQVBfMgxDH/K5UX0PNqTu1c6za9ST5r9+tavvHiTWmBnKzpCJ/GlVFtg==} engines: {node: ^18.18.0 || >=20.0.0} peerDependencies: eslint: ^8.56.0 @@ -4202,16 +4400,16 @@ packages: resolution: {integrity: sha512-VXuvVvZeQCQb5Zgf4HAxc04q5j+WrNAtNh9OwCsCgpKqESMTu3tF/jhZ3xG6T4NZwWl65Bg8KuS2uEvhSfLl0w==} engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} - '@typescript-eslint/scope-manager@7.14.1': - resolution: {integrity: sha512-gPrFSsoYcsffYXTOZ+hT7fyJr95rdVe4kGVX1ps/dJ+DfmlnjFN/GcMxXcVkeHDKqsq6uAcVaQaIi3cFffmAbA==} + '@typescript-eslint/scope-manager@7.18.0': + resolution: {integrity: sha512-jjhdIE/FPF2B7Z1uzc6i3oWKbGcHb87Qw7AWj6jmEqNOfDFbJWtjt/XfwCpvNkpGWlcJaog5vTR+VV8+w9JflA==} engines: {node: ^18.18.0 || >=20.0.0} '@typescript-eslint/scope-manager@7.2.0': resolution: {integrity: sha512-Qh976RbQM/fYtjx9hs4XkayYujB/aPwglw2choHmf3zBjB4qOywWSdt9+KLRdHubGcoSwBnXUH2sR3hkyaERRg==} engines: {node: ^16.0.0 || >=18.0.0} - '@typescript-eslint/type-utils@7.14.1': - resolution: {integrity: sha512-/MzmgNd3nnbDbOi3LfasXWWe292+iuo+umJ0bCCMCPc1jLO/z2BQmWUUUXvXLbrQey/JgzdF/OV+I5bzEGwJkQ==} + '@typescript-eslint/type-utils@7.18.0': + resolution: {integrity: sha512-XL0FJXuCLaDuX2sYqZUUSOJ2sG5/i1AAze+axqmLnSkNEVMVYLF+cbwlB2w8D1tinFuSikHmFta+P+HOofrLeA==} engines: {node: ^18.18.0 || >=20.0.0} peerDependencies: eslint: ^8.56.0 @@ -4224,8 +4422,8 @@ packages: resolution: {integrity: sha512-87NVngcbVXUahrRTqIK27gD2t5Cu1yuCXxbLcFtCzZGlfyVWWh8mLHkoxzjsB6DDNnvdL+fW8MiwPEJyGJQDgQ==} engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} - '@typescript-eslint/types@7.14.1': - resolution: {integrity: sha512-mL7zNEOQybo5R3AavY+Am7KLv8BorIv7HCYS5rKoNZKQD9tsfGUpO4KdAn3sSUvTiS4PQkr2+K0KJbxj8H9NDg==} + '@typescript-eslint/types@7.18.0': + resolution: {integrity: sha512-iZqi+Ds1y4EDYUtlOOC+aUmxnE9xS/yCigkjA7XpTKV6nCBd3Hp/PRGGmdwnfkV2ThMyYldP1wRpm/id99spTQ==} engines: {node: ^18.18.0 || >=20.0.0} '@typescript-eslint/types@7.2.0': @@ -4241,8 +4439,8 @@ packages: typescript: optional: true - '@typescript-eslint/typescript-estree@7.14.1': - resolution: {integrity: sha512-k5d0VuxViE2ulIO6FbxxSZaxqDVUyMbXcidC8rHvii0I56XZPv8cq+EhMns+d/EVIL41sMXqRbK3D10Oza1bbA==} + '@typescript-eslint/typescript-estree@7.18.0': + resolution: {integrity: sha512-aP1v/BSPnnyhMHts8cf1qQ6Q1IFwwRvAQGRvBFkWlo3/lH29OXA3Pts+c10nxRxIBrDnoMqzhgdwVe5f2D6OzA==} engines: {node: ^18.18.0 || >=20.0.0} peerDependencies: typescript: '*' @@ -4265,8 +4463,8 @@ packages: peerDependencies: eslint: ^6.0.0 || ^7.0.0 || ^8.0.0 - '@typescript-eslint/utils@7.14.1': - resolution: {integrity: sha512-CMmVVELns3nak3cpJhZosDkm63n+DwBlDX8g0k4QUa9BMnF+lH2lr3d130M1Zt1xxmB3LLk3NV7KQCq86ZBBhQ==} + '@typescript-eslint/utils@7.18.0': + resolution: {integrity: sha512-kK0/rNa2j74XuHVcoCZxdFBMF+aq/vH83CXAOHieC+2Gis4mF8jJXT5eAfyD3K0sAxtPuwxaIOIOvhwzVDt/kw==} engines: {node: ^18.18.0 || >=20.0.0} peerDependencies: eslint: ^8.56.0 @@ -4275,8 +4473,8 @@ packages: resolution: {integrity: sha512-07ny+LHRzQXepkGg6w0mFY41fVUNBrL2Roj/++7V1txKugfjm/Ci/qSND03r2RhlJhJYMcTn9AhhSSqQp0Ysyw==} engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} - '@typescript-eslint/visitor-keys@7.14.1': - resolution: {integrity: sha512-Crb+F75U1JAEtBeQGxSKwI60hZmmzaqA3z9sYsVm8X7W5cwLEm5bRe0/uXS6+MR/y8CVpKSR/ontIAIEPFcEkA==} + '@typescript-eslint/visitor-keys@7.18.0': + resolution: {integrity: sha512-cDF0/Gf81QpY3xYyJKDV14Zwdmid5+uuENhjH2EqFaF0ni+yAyq/LzMaIJdhNJXZI7uLzwIlA+V7oWoyn6Curg==} engines: {node: ^18.18.0 || >=20.0.0} '@typescript-eslint/visitor-keys@7.2.0': @@ -4292,12 +4490,12 @@ packages: peerDependencies: vite: ^4.2.0 || ^5.0.0 - '@vitest/browser@2.0.4': - resolution: {integrity: sha512-QsIkbqPqHsXvgxjCjjgKjuWKmrC0VJgpaDkuEmOy5gTnErhhifWIfp3HpH92K7cscfaIao+RlKv5f8nUMgjfmA==} + '@vitest/browser@2.0.5': + resolution: {integrity: sha512-VbOYtu/6R3d7ASZREcrJmRY/sQuRFO9wMVsEDqfYbWiJRh2fDNi8CL1Csn7Ux31pOcPmmM5QvzFCMpiojvVh8g==} peerDependencies: playwright: '*' safaridriver: '*' - vitest: 2.0.4 + vitest: 2.0.5 webdriverio: '*' peerDependenciesMeta: playwright: @@ -4307,28 +4505,28 @@ packages: webdriverio: optional: true - '@vitest/coverage-v8@2.0.4': - resolution: {integrity: sha512-i4lx/Wpg5zF1h2op7j0wdwuEQxaL/YTwwQaKuKMHYj7MMh8c7I4W7PNfOptZBCSBZI0z1qwn64o0pM/pA8Tz1g==} + '@vitest/coverage-v8@2.0.5': + resolution: {integrity: sha512-qeFcySCg5FLO2bHHSa0tAZAOnAUbp4L6/A5JDuj9+bt53JREl8hpLjLHEWF0e/gWc8INVpJaqA7+Ene2rclpZg==} peerDependencies: - vitest: 2.0.4 + vitest: 2.0.5 - '@vitest/expect@2.0.4': - resolution: {integrity: sha512-39jr5EguIoanChvBqe34I8m1hJFI4+jxvdOpD7gslZrVQBKhh8H9eD7J/LJX4zakrw23W+dITQTDqdt43xVcJw==} + '@vitest/expect@2.0.5': + resolution: {integrity: sha512-yHZtwuP7JZivj65Gxoi8upUN2OzHTi3zVfjwdpu2WrvCZPLwsJ2Ey5ILIPccoW23dd/zQBlJ4/dhi7DWNyXCpA==} - '@vitest/pretty-format@2.0.4': - resolution: {integrity: sha512-RYZl31STbNGqf4l2eQM1nvKPXE0NhC6Eq0suTTePc4mtMQ1Fn8qZmjV4emZdEdG2NOWGKSCrHZjmTqDCDoeFBw==} + '@vitest/pretty-format@2.0.5': + resolution: {integrity: sha512-h8k+1oWHfwTkyTkb9egzwNMfJAEx4veaPSnMeKbVSjp4euqGSbQlm5+6VHwTr7u4FJslVVsUG5nopCaAYdOmSQ==} - '@vitest/runner@2.0.4': - resolution: {integrity: sha512-Gk+9Su/2H2zNfNdeJR124gZckd5st4YoSuhF1Rebi37qTXKnqYyFCd9KP4vl2cQHbtuVKjfEKrNJxHHCW8thbQ==} + '@vitest/runner@2.0.5': + resolution: {integrity: sha512-TfRfZa6Bkk9ky4tW0z20WKXFEwwvWhRY+84CnSEtq4+3ZvDlJyY32oNTJtM7AW9ihW90tX/1Q78cb6FjoAs+ig==} - '@vitest/snapshot@2.0.4': - resolution: {integrity: sha512-or6Mzoz/pD7xTvuJMFYEtso1vJo1S5u6zBTinfl+7smGUhqybn6VjzCDMhmTyVOFWwkCMuNjmNNxnyXPgKDoPw==} + '@vitest/snapshot@2.0.5': + resolution: {integrity: sha512-SgCPUeDFLaM0mIUHfaArq8fD2WbaXG/zVXjRupthYfYGzc8ztbFbu6dUNOblBG7XLMR1kEhS/DNnfCZ2IhdDew==} - '@vitest/spy@2.0.4': - resolution: {integrity: sha512-uTXU56TNoYrTohb+6CseP8IqNwlNdtPwEO0AWl+5j7NelS6x0xZZtP0bDWaLvOfUbaYwhhWp1guzXUxkC7mW7Q==} + '@vitest/spy@2.0.5': + resolution: {integrity: sha512-c/jdthAhvJdpfVuaexSrnawxZz6pywlTPe84LUB2m/4t3rl2fTo9NFGBG4oWgaD+FTgDDV8hJ/nibT7IfH3JfA==} - '@vitest/utils@2.0.4': - resolution: {integrity: sha512-Zc75QuuoJhOBnlo99ZVUkJIuq4Oj0zAkrQ2VzCqNCx6wAwViHEh5Fnp4fiJTE9rA+sAoXRf00Z9xGgfEzV6fzQ==} + '@vitest/utils@2.0.5': + resolution: {integrity: sha512-d8HKbqIcya+GR67mkZbrzhS5kKhtp8dQLcmRZLGTscGVg7yImT82cIrhtn2L8+VujWcy6KZweApgNmPsTAO/UQ==} '@webassemblyjs/ast@1.12.1': resolution: {integrity: sha512-EKfMUOPRRUTy5UII4qJDGPpqfwjOmZ5jeGFwid9mnoqIFK+e0vqoi1qH56JpmZSzEL53jKnNzScdmftJyG5xWg==} @@ -4457,8 +4655,8 @@ packages: ajv@6.12.6: resolution: {integrity: sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==} - ajv@8.16.0: - resolution: {integrity: sha512-F0twR8U1ZU67JIEtekUcLkXkoO5mMMmgGD8sK/xUFzJ805jxHQl92hImFAqqXMyMYjSPOyUPAwHYhB72g5sTXw==} + ajv@8.17.1: + resolution: {integrity: sha512-B/gBuNg5SiMTrPkC+A2+cW0RszwxYmn6VYxB/inlBStS5nx6xHIt/ehKRhIMhqusl7a8LjQoZnjCs5vhwxOQ1g==} algoliasearch@4.24.0: resolution: {integrity: sha512-bf0QV/9jVejssFBmz2HQLxUadxk574t4iwjCKp5E7NBzwKkrDEhKPISIIjAU/p6K5qDx3qoeh4+26zWN1jmw3g==} @@ -4599,9 +4797,6 @@ packages: resolution: {integrity: sha512-mzmiUCVwtiD4lgxYP8g7IYy8El8p2CSMePvIbTS7gchKir/L1fgJrk0yDKmAX6mnRQFKNADYIk8nNlTris5H1Q==} engines: {node: '>= 0.4'} - array.prototype.toreversed@1.1.2: - resolution: {integrity: sha512-wwDCoT4Ck4Cz7sLtgUmzR5UV3YF5mFHUlbChCzZBQZ+0m2cl/DH3tKgvphv1nKgFsJ48oCSg6p91q2Vm0I/ZMA==} - array.prototype.tosorted@1.1.4: resolution: {integrity: sha512-p6Fx8B7b7ZhL/gmUsAy0D15WhvDccw3mnGNbZpi3pmeJdxtWsj2jEaI4Y6oo3XiHfzuSgPwKc04MYt6KgvC/wA==} engines: {node: '>= 0.4'} @@ -5655,6 +5850,11 @@ packages: engines: {node: '>=12'} hasBin: true + esbuild@0.23.0: + resolution: {integrity: sha512-1lvV17H2bMYda/WaFb2jLPeHU3zml2k4/yagNMG8Q/YtfMjCwEUZa2eXXMgZTVSL5q1n4H7sQ0X6CdJDqqeCFA==} + engines: {node: '>=18'} + hasBin: true + escalade@3.1.2: resolution: {integrity: sha512-ErCHMCae19vR8vQGe50xIsVomy19rg6gFu3+r3jkEO46suLMWBksvVyoGgQV+jOfl84ZSOSlmv6Gxa89PmTGmA==} engines: {node: '>=6'} @@ -5698,8 +5898,8 @@ packages: eslint-plugin-react: ^7.28.0 eslint-plugin-react-hooks: ^4.3.0 - eslint-config-next@14.2.4: - resolution: {integrity: sha512-Qr0wMgG9m6m4uYy2jrYJmyuNlYZzPRQq5Kvb9IDlYwn+7yq6W6sfMNFgb+9guM1KYwuIo6TIaiFhZJ6SnQ/Efw==} + eslint-config-next@14.2.5: + resolution: {integrity: sha512-zogs9zlOiZ7ka+wgUnmcM0KBEDjo4Jis7kxN1jvC0N4wynQ2MIx/KBkg4mVF63J5EK4W0QMCn7xO3vNisjaAoA==} peerDependencies: eslint: ^7.23.0 || ^8.0.0 typescript: '>=3.3.1' @@ -5778,8 +5978,8 @@ packages: peerDependencies: eslint: ^3 || ^4 || ^5 || ^6 || ^7 || ^8 - eslint-plugin-mocha@10.4.3: - resolution: {integrity: sha512-emc4TVjq5Ht0/upR+psftuz6IBG5q279p+1dSRDeHf+NS9aaerBi3lXKo1SEzwC29hFIW21gO89CEWSvRsi8IQ==} + eslint-plugin-mocha@10.5.0: + resolution: {integrity: sha512-F2ALmQVPT1GoP27O1JTZGrV9Pqg8k79OeIuvw63UxMtQKREZtmkK1NFgkZQ2TW7L2JSSFKHFPTtHu5z8R9QNRw==} engines: {node: '>=14.0.0'} peerDependencies: eslint: '>=7.0.0' @@ -5796,11 +5996,11 @@ packages: peerDependencies: eslint: ^3.0.0 || ^4.0.0 || ^5.0.0 || ^6.0.0 || ^7.0.0 || ^8.0.0-0 - eslint-plugin-react@7.34.3: - resolution: {integrity: sha512-aoW4MV891jkUulwDApQbPYTVZmeuSyFrudpbTAQuj5Fv8VL+o6df2xIGpw8B0hPjAaih1/Fb0om9grCdyFYemA==} + eslint-plugin-react@7.35.0: + resolution: {integrity: sha512-v501SSMOWv8gerHkk+IIQBkcGRGrO2nfybfj5pLxuJNFTPxxA3PSryhXTK+9pNbtkggheDdsC0E9Q8CuPk6JKA==} engines: {node: '>=4'} peerDependencies: - eslint: ^3 || ^4 || ^5 || ^6 || ^7 || ^8 + eslint: ^3 || ^4 || ^5 || ^6 || ^7 || ^8 || ^9.7 eslint-plugin-testing-library@6.2.2: resolution: {integrity: sha512-1E94YOTUDnOjSLyvOwmbVDzQi/WkKm3WVrMXu6SmBr6DN95xTGZmI6HJ/eOkSXh/DlheRsxaPsJvZByDBhWLVQ==} @@ -5963,6 +6163,9 @@ packages: fast-levenshtein@2.0.6: resolution: {integrity: sha512-DCXu6Ifhqcks7TZKY3Hxp3y6qphY5SJZmrWMDrKcERSOXWQdMhU9Ig/PYrzyw/ul9jOIyh0N4M0tbC5hodg8dw==} + fast-uri@3.0.1: + resolution: {integrity: sha512-MWipKbbYiYI0UC7cl8m/i/IWTqfC8YXsqjzybjddLsFjStroQzsHXkc73JutMvBiXmOvapk+axIl79ig5t55Bw==} + fastq@1.17.1: resolution: {integrity: sha512-sRVD3lWVIXWg6By68ZN7vho9a1pQcN/WBFaAAsDDFzlJjvoGx0P8z7V1t72grFJfJhu3YPZBuu25f7Kaw2jN1w==} @@ -6908,8 +7111,8 @@ packages: jsbn@1.1.0: resolution: {integrity: sha512-4bYVV3aAMtDTTu4+xsDYa6sy9GyJ69/amsu9sYF2zqjiEoZA5xJi3BrfX3uY+/IekIu7MwdObdbDWpoZdBv3/A==} - jsdom@24.1.0: - resolution: {integrity: sha512-6gpM7pRXCwIOKxX47cgOyvyQDN/Eh0f1MeKySBV2xGdKtqJBLj8P25eY3EVCWo2mglDDzozR2r2MW4T+JiNUZA==} + jsdom@24.1.1: + resolution: {integrity: sha512-5O1wWV99Jhq4DV7rCLIoZ/UIhyQeDR7wHVyZAHAshbrvZsLs+Xzz7gtwnlJTJDjleiTKh54F4dXrX70vJQTyJQ==} engines: {node: '>=18'} peerDependencies: canvas: ^2.11.2 @@ -7080,8 +7283,8 @@ packages: resolution: {integrity: sha512-b94GiNHQNy6JNTrt5w6zNyffMrNkXZb3KTkCZJb2V1xaEGCk093vkZ2jk3tpaeP33/OiXC+WvK9AxUebnf5nbw==} engines: {node: '>= 0.6.3'} - lerna@8.1.6: - resolution: {integrity: sha512-O3zSX/dmchMVy9m37DD1BCx7X68nS5lZFECjqG7Siiv3+KgqKXHnF4JQPJUDD/vG2qBQv5StpXCyqGxR0XJVAQ==} + lerna@8.1.7: + resolution: {integrity: sha512-v2kkBn8Vqtroo30Pr5/JQ9MygRhnCsoI1jSOf3DxWmcTbkpC5U7c6rGr+7NPK6QrxKbC0/Cj4kuIBMb/7f79sQ==} engines: {node: '>=18.0.0'} hasBin: true @@ -7563,8 +7766,8 @@ packages: ms@2.1.3: resolution: {integrity: sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==} - msw@2.3.1: - resolution: {integrity: sha512-ocgvBCLn/5l3jpl1lssIb3cniuACJLoOfZu01e3n5dbJrpA5PeeWn28jCLgQDNt6d7QT8tF2fYRzm9JoEHtiig==} + msw@2.3.5: + resolution: {integrity: sha512-+GUI4gX5YC5Bv33epBrD+BGdmDvBg2XGruiWnI3GbIbRmMMBeZ5gs3mJ51OWSGHgJKztZ8AtZeYMMNMVrje2/Q==} engines: {node: '>=18'} hasBin: true peerDependencies: @@ -7624,6 +7827,22 @@ packages: nested-error-stacks@2.1.1: resolution: {integrity: sha512-9iN1ka/9zmX1ZvLV9ewJYEk9h7RyRRtqdK0woXcqohu8EWIerfPUjYJPg0ULy0UqP7cslmdGc8xKDJcojlKiaw==} + next-auth@5.0.0-beta.20: + resolution: {integrity: sha512-+48SjV9k9AtUU3JbEIa4PXNjKIewfFjVGL7Xs2RKkuQ5QqegDNIQiIG8sLk6/qo7RTScQYIGKgeQ5IuQRtrTQg==} + peerDependencies: + '@simplewebauthn/browser': ^9.0.1 + '@simplewebauthn/server': ^9.0.2 + next: ^14.0.0-0 || ^15.0.0-0 + nodemailer: ^6.6.5 + react: ^18.2.0 || ^19.0.0-0 + peerDependenciesMeta: + '@simplewebauthn/browser': + optional: true + '@simplewebauthn/server': + optional: true + nodemailer: + optional: true + next-router-mock@0.9.13: resolution: {integrity: sha512-906n2RRaE6Y28PfYJbaz5XZeJ6Tw8Xz1S6E31GGwZ0sXB6/XjldD1/2azn1ZmBmRk5PQRkzjg+n+RHZe5xQzWA==} peerDependencies: @@ -7771,8 +7990,8 @@ packages: nprogress@0.2.0: resolution: {integrity: sha512-I19aIingLgR1fmhftnbWWO3dXc0hSxqHQHQb3H8m+K3TnEn/iSeTZZOyvKXWqQESMwuUVnatlCnZdLBZZt2VSA==} - nwsapi@2.2.10: - resolution: {integrity: sha512-QK0sRs7MKv0tKe1+5uZIQk/C8XGza4DAnztJG8iD+TpJIORARrCxczA738awHrZoHeTjSSoHqao2teO0dC/gFQ==} + nwsapi@2.2.12: + resolution: {integrity: sha512-qXDmcVlZV4XRtKFzddidpfVP4oMSGhga+xdMc25mv8kaLUHtgzCDhUxkrN8exkGdTlLNaXj7CV3GtON7zuGZ+w==} nx@19.3.2: resolution: {integrity: sha512-eKWs+ahkTKnq9EeWJCE4u8JLeq1cOHnq5DKoiisy2nwUg4KGy1odReegxUMLeEgNBcMI40EUtEJFiTMJSXZQeg==} @@ -7832,10 +8051,6 @@ packages: resolution: {integrity: sha512-+Lhy3TQTuzXI5hevh8sBGqbmurHbbIjAi0Z4S63nthVLmLxfbj4T54a4CfZrXIrt9iP4mVAPYMo/v99taj3wjQ==} engines: {node: '>= 0.4'} - object.hasown@1.1.4: - resolution: {integrity: sha512-FZ9LZt9/RHzGySlBARE3VF+gE26TxR38SdmqOqliuTnl9wrKulaQs+4dee1V+Io8VfxqzAfHu6YuRgUy8OHoTg==} - engines: {node: '>= 0.4'} - object.values@1.2.0: resolution: {integrity: sha512-yBYjY9QX2hnRmZHAjG/f13MzmBzxzYgQhFrke06TTyKY5zSTEqkOeukBzIdVA3j3ulu8Qa3MbVFShV7T2RmGtQ==} engines: {node: '>= 0.4'} @@ -8308,11 +8523,6 @@ packages: resolution: {integrity: sha512-vkcDPrRZo1QZLbn5RLGPpg/WmIQ65qoWWhcGKf/b5eplkkarX0m9z8ppCat4mlOqUsWpyNuYgO3VRyrYHSzX5g==} engines: {node: '>= 0.8.0'} - prettier@3.3.2: - resolution: {integrity: sha512-rAVeHYMcv8ATV5d508CFdn+8/pHPpXeIid1DdrPwXnaAdH7cqjVbpJaT5eq4yRAFU/lsbwYwSF/n5iNrdJHPQA==} - engines: {node: '>=14'} - hasBin: true - prettier@3.3.3: resolution: {integrity: sha512-i2tDNA0O5IrMO757lfrdQZCc2jPNDVntV0m/+4whiDfWaTKfMNgR7Qz0NAeGz/nRqF4m5/6CLzbP4/liHt12Ew==} engines: {node: '>=14'} @@ -8514,9 +8724,9 @@ packages: peerDependencies: react: ^16.8.0 || ^17 || ^18 || ^19 - react-hook-form@7.52.1: - resolution: {integrity: sha512-uNKIhaoICJ5KQALYZ4TOaOLElyM+xipord+Ha3crEFhTntdLvWZqVY49Wqd/0GiVCA/f9NjemLeiNPjG7Hpurg==} - engines: {node: '>=12.22.0'} + react-hook-form@7.52.2: + resolution: {integrity: sha512-pqfPEbERnxxiNMPd0bzmt1tuaPcVccywFDpyk2uV5xCIBphHV5T8SVnX9/o3kplPE1zzKt77+YIoq+EMwJp56A==} + engines: {node: '>=18.0.0'} peerDependencies: react: ^16.8.0 || ^17 || ^18 || ^19 @@ -8799,16 +9009,15 @@ packages: engines: {node: '>=14'} hasBin: true + rimraf@5.0.10: + resolution: {integrity: sha512-l0OE8wL34P4nJH/H2ffoaniAokM2qSmrtXHmlpvYr5AVVX8msAyW0l8NVJFDxlSK4u3Uh/f41cQheDVdnYijwQ==} + hasBin: true + rimraf@5.0.7: resolution: {integrity: sha512-nV6YcJo5wbLW77m+8KjH8aB/7/rxQy9SZ0HY5shnwULfS+9nmTtVXAJET5NdZmCzA4fPI/Hm1wo/Po/4mopOdg==} engines: {node: '>=14.18'} hasBin: true - rimraf@5.0.8: - resolution: {integrity: sha512-XSh0V2/yNhDEi8HwdIefD8MLgs4LQXPag/nEJWs3YUc3Upn+UHa1GyIkEg9xSSNt7HnkO5FjTvmcRzgf+8UZuw==} - engines: {node: '>=18'} - hasBin: true - robust-predicates@3.0.2: resolution: {integrity: sha512-IXgzBWvWQwE6PrDI05OvmXUIruQTcoMDzRsOd5CDvHCVLcLHMTSYvOK5Cm46kWqlV3yAbuSpBZdJ5oP5OUoStg==} @@ -9141,6 +9350,9 @@ packages: resolution: {integrity: sha512-1y15lz7otgfRTAVK5qbp3eHIga+w8j7+jIH+7HpUrOfnLVl6n0hbspi4EXf4tR+PNOpBjPstltemkx0SvViOCg==} 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.9: resolution: {integrity: sha512-klHuCNxiMZ8MlsOihJhJEBJAiMVqU3Z2nEXWfWnIqjN0gEFS9J9+IxKozWWtQGcgoa1WUZzLjKPTr4ZHNFTFxw==} engines: {node: '>= 0.4'} @@ -9514,8 +9726,8 @@ packages: peerDependencies: typescript: '>=2.8.0 || >= 3.2.0-dev || >= 3.3.0-dev || >= 3.4.0-dev || >= 3.5.0-dev || >= 3.6.0-dev || >= 3.6.0-beta || >= 3.7.0-dev || >= 3.7.0-beta' - tsx@4.16.2: - resolution: {integrity: sha512-C1uWweJDgdtX2x600HjaFaucXTilT7tgUZHbOE4+ypskZ1OP8CRCSDkCxG6Vya9EwaFIVagWwpaVAn5wzypaqQ==} + tsx@4.16.5: + resolution: {integrity: sha512-ArsiAQHEW2iGaqZ8fTA1nX0a+lN5mNTyuGRRO6OW3H/Yno1y9/t1f9YOI1Cfoqz63VAthn++ZYcbDP7jPflc+A==} engines: {node: '>=18.0.0'} hasBin: true @@ -9619,6 +9831,9 @@ packages: undici-types@5.26.5: resolution: {integrity: sha512-JlCMO+ehdEIKqlFxk6IfVoAUVmgz7cU7zD/h9XZ0qzeosSHmUJVOzSQvvYSYWXkFXC+IfLKSIffhv0sVZup6pA==} + undici-types@6.13.0: + resolution: {integrity: sha512-xtFJHudx8S2DSoujjMd1WeWvn7KKWFRESZTMeL1RptAYERu29D6jphMjjY+vn96jvN3kVPDNxU/E13VTaXj6jg==} + unicode-canonical-property-names-ecmascript@2.0.0: resolution: {integrity: sha512-yY5PpDlfVIU5+y/BSCxAJRBIS1Zc2dDG3Ujq+sR0U+JjUevW2JhocOF+soROYDSaAezOzOKuyyixhD6mBknSmQ==} engines: {node: '>=4'} @@ -9749,8 +9964,8 @@ packages: victory-vendor@36.9.2: resolution: {integrity: sha512-PnpQQMuxlwYdocC8fIJqVXvkeViHYzotI+NJrCuav0ZYFoq912ZHBk3mCeuj+5/VpodOjPe1z0Fk2ihgzlXqjQ==} - vite-node@2.0.4: - resolution: {integrity: sha512-ZpJVkxcakYtig5iakNeL7N3trufe3M6vGuzYAr4GsbCTwobDeyPJpE4cjDhhPluv8OvQCFzu2LWp6GkoKRITXA==} + vite-node@2.0.5: + resolution: {integrity: sha512-LdsW4pxj0Ot69FAoXZ1yTnA9bjGohr2yNBU7QKRxpz8ITSkhuDl6h3zS/tvgz4qrNjeRnvrWeXQ8ZF7Um4W00Q==} engines: {node: ^18.0.0 || >=20.0.0} hasBin: true @@ -9793,15 +10008,15 @@ packages: vite: '>=4.5.2' vitest: '>=0.26.2' - vitest@2.0.4: - resolution: {integrity: sha512-luNLDpfsnxw5QSW4bISPe6tkxVvv5wn2BBs/PuDRkhXZ319doZyLOBr1sjfB5yCEpTiU7xCAdViM8TNVGPwoog==} + vitest@2.0.5: + resolution: {integrity: sha512-8GUxONfauuIdeSl5f9GTgVEpg5BTOlplET4WEDaeY2QBiN8wSm68vxN/tb5z405OwppfoCavnwXafiaYBC/xOA==} engines: {node: ^18.0.0 || >=20.0.0} hasBin: true peerDependencies: '@edge-runtime/vm': '*' '@types/node': ^18.0.0 || >=20.0.0 - '@vitest/browser': 2.0.4 - '@vitest/ui': 2.0.4 + '@vitest/browser': 2.0.5 + '@vitest/ui': 2.0.5 happy-dom: '*' jsdom: '*' peerDependenciesMeta: @@ -9857,8 +10072,8 @@ packages: resolution: {integrity: sha512-/DyMEOrDgLKKIG0fmvtz+4dUX/3Ghozwgm6iPp8KRhvn+eQf9+Q7GWxVNMk3+uCPWfdXYC4ExGBckIXdFEfH1w==} engines: {node: '>=10.13.0'} - webpack@5.92.1: - resolution: {integrity: sha512-JECQ7IwJb+7fgUFBlrJzbyu3GEuNBcdqr1LD7IbSzwkSmIevTm8PF+wej3Oxuz/JFBUZ6O1o43zsPkwm1C4TmA==} + webpack@5.93.0: + resolution: {integrity: sha512-Y0m5oEY1LRuwly578VqluorkXbvXKh7U3rLoQCEO04M97ScRr44afGVkI0FQFsXzysk5OgFAxjZAb9rsGQVihA==} engines: {node: '>=10.13.0'} hasBin: true peerDependencies: @@ -10081,13 +10296,13 @@ packages: resolution: {integrity: sha512-zK7YHHz4ZXpW89AHXUPbQVGKI7uvkd3hzusTdotCg1UxyaVtg0zFJSTfW/Dq5f7OBBVnq6cZIaC8Ti4hb6dtCA==} engines: {node: '>= 14'} - zod-to-json-schema@3.23.1: - resolution: {integrity: sha512-oT9INvydob1XV0v1d2IadrR74rLtDInLvDFfAa1CG0Pmg/vxATk7I2gSelfj271mbzeM4Da0uuDQE/Nkj3DWNw==} + zod-to-json-schema@3.23.2: + resolution: {integrity: sha512-uSt90Gzc/tUfyNqxnjlfBs8W6WSGpNBv0rVsNxP/BVSMHMKGdthPYff4xtCHYloJGM0CFxFsb3NbC0eqPhfImw==} peerDependencies: zod: ^3.23.3 - zod-validation-error@3.3.0: - resolution: {integrity: sha512-Syib9oumw1NTqEv4LT0e6U83Td9aVRk9iTXPUQr1otyV1PuXQKOvOwhMNqZIq5hluzHP2pMgnOmHEo7kPdI2mw==} + zod-validation-error@3.3.1: + resolution: {integrity: sha512-uFzCZz7FQis256dqw4AhPQgD6f3pzNca/Zh62RNELavlumQB3nDIUFbF5JQfFLcMbO1s02Q7Xg/gpcOBlEnYZA==} engines: {node: '>=18.0.0'} peerDependencies: zod: ^3.18.0 @@ -10211,9 +10426,9 @@ snapshots: '@jridgewell/gen-mapping': 0.3.5 '@jridgewell/trace-mapping': 0.3.25 - '@argos-ci/core@2.3.0': + '@argos-ci/core@2.4.1': dependencies: - '@argos-ci/util': 2.0.0 + '@argos-ci/util': 2.1.0 axios: 1.7.2(debug@4.3.5) convict: 6.2.4 debug: 4.3.5 @@ -10223,7 +10438,7 @@ snapshots: transitivePeerDependencies: - supports-color - '@argos-ci/util@2.0.0': {} + '@argos-ci/util@2.1.0': {} '@auth/core@0.31.0': dependencies: @@ -10235,9 +10450,19 @@ snapshots: preact: 10.11.3 preact-render-to-string: 5.2.3(preact@10.11.3) - '@babel/cli@7.24.8(@babel/core@7.24.9)': + '@auth/core@0.34.2': + dependencies: + '@panva/hkdf': 1.2.0 + '@types/cookie': 0.6.0 + cookie: 0.6.0 + jose: 5.6.2 + oauth4webapi: 2.11.1 + preact: 10.11.3 + preact-render-to-string: 5.2.3(preact@10.11.3) + + '@babel/cli@7.24.8(@babel/core@7.25.2)': dependencies: - '@babel/core': 7.24.9 + '@babel/core': 7.25.2 '@jridgewell/trace-mapping': 0.3.25 commander: 6.2.1 convert-source-map: 2.0.0 @@ -10254,20 +10479,20 @@ snapshots: '@babel/highlight': 7.24.7 picocolors: 1.0.1 - '@babel/compat-data@7.24.8': {} + '@babel/compat-data@7.25.2': {} - '@babel/core@7.24.9': + '@babel/core@7.25.2': dependencies: '@ampproject/remapping': 2.3.0 '@babel/code-frame': 7.24.7 - '@babel/generator': 7.24.10 - '@babel/helper-compilation-targets': 7.24.8 - '@babel/helper-module-transforms': 7.24.9(@babel/core@7.24.9) - '@babel/helpers': 7.24.8 - '@babel/parser': 7.24.8 - '@babel/template': 7.24.7 - '@babel/traverse': 7.24.8 - '@babel/types': 7.24.9 + '@babel/generator': 7.25.0 + '@babel/helper-compilation-targets': 7.25.2 + '@babel/helper-module-transforms': 7.25.2(@babel/core@7.25.2) + '@babel/helpers': 7.25.0 + '@babel/parser': 7.25.3 + '@babel/template': 7.25.0 + '@babel/traverse': 7.25.3 + '@babel/types': 7.25.2 convert-source-map: 2.0.0 debug: 4.3.5 gensync: 1.0.0-beta.2 @@ -10276,58 +10501,58 @@ snapshots: transitivePeerDependencies: - supports-color - '@babel/generator@7.24.10': + '@babel/generator@7.25.0': dependencies: - '@babel/types': 7.24.9 + '@babel/types': 7.25.2 '@jridgewell/gen-mapping': 0.3.5 '@jridgewell/trace-mapping': 0.3.25 jsesc: 2.5.2 '@babel/helper-annotate-as-pure@7.24.7': dependencies: - '@babel/types': 7.24.9 + '@babel/types': 7.25.2 '@babel/helper-builder-binary-assignment-operator-visitor@7.24.7': dependencies: - '@babel/traverse': 7.24.8 - '@babel/types': 7.24.9 + '@babel/traverse': 7.25.3 + '@babel/types': 7.25.2 transitivePeerDependencies: - supports-color - '@babel/helper-compilation-targets@7.24.8': + '@babel/helper-compilation-targets@7.25.2': dependencies: - '@babel/compat-data': 7.24.8 + '@babel/compat-data': 7.25.2 '@babel/helper-validator-option': 7.24.8 browserslist: 4.23.1 lru-cache: 5.1.1 semver: 6.3.1 - '@babel/helper-create-class-features-plugin@7.24.7(@babel/core@7.24.9)': + '@babel/helper-create-class-features-plugin@7.24.7(@babel/core@7.25.2)': dependencies: - '@babel/core': 7.24.9 + '@babel/core': 7.25.2 '@babel/helper-annotate-as-pure': 7.24.7 '@babel/helper-environment-visitor': 7.24.7 '@babel/helper-function-name': 7.24.7 - '@babel/helper-member-expression-to-functions': 7.24.7 + '@babel/helper-member-expression-to-functions': 7.24.8 '@babel/helper-optimise-call-expression': 7.24.7 - '@babel/helper-replace-supers': 7.24.7(@babel/core@7.24.9) + '@babel/helper-replace-supers': 7.25.0(@babel/core@7.25.2) '@babel/helper-skip-transparent-expression-wrappers': 7.24.7 '@babel/helper-split-export-declaration': 7.24.7 semver: 6.3.1 transitivePeerDependencies: - supports-color - '@babel/helper-create-regexp-features-plugin@7.24.7(@babel/core@7.24.9)': + '@babel/helper-create-regexp-features-plugin@7.25.2(@babel/core@7.25.2)': dependencies: - '@babel/core': 7.24.9 + '@babel/core': 7.25.2 '@babel/helper-annotate-as-pure': 7.24.7 regexpu-core: 5.3.2 semver: 6.3.1 - '@babel/helper-define-polyfill-provider@0.6.2(@babel/core@7.24.9)': + '@babel/helper-define-polyfill-provider@0.6.2(@babel/core@7.25.2)': dependencies: - '@babel/core': 7.24.9 - '@babel/helper-compilation-targets': 7.24.8 + '@babel/core': 7.25.2 + '@babel/helper-compilation-targets': 7.25.2 '@babel/helper-plugin-utils': 7.24.8 debug: 4.3.5 lodash.debounce: 4.0.8 @@ -10337,83 +10562,78 @@ snapshots: '@babel/helper-environment-visitor@7.24.7': dependencies: - '@babel/types': 7.24.9 + '@babel/types': 7.25.2 '@babel/helper-function-name@7.24.7': dependencies: - '@babel/template': 7.24.7 - '@babel/types': 7.24.9 + '@babel/template': 7.25.0 + '@babel/types': 7.25.2 - '@babel/helper-hoist-variables@7.24.7': + '@babel/helper-member-expression-to-functions@7.24.8': dependencies: - '@babel/types': 7.24.9 - - '@babel/helper-member-expression-to-functions@7.24.7': - dependencies: - '@babel/traverse': 7.24.8 - '@babel/types': 7.24.9 + '@babel/traverse': 7.25.3 + '@babel/types': 7.25.2 transitivePeerDependencies: - supports-color '@babel/helper-module-imports@7.24.7': dependencies: - '@babel/traverse': 7.24.8 - '@babel/types': 7.24.9 + '@babel/traverse': 7.25.3 + '@babel/types': 7.25.2 transitivePeerDependencies: - supports-color - '@babel/helper-module-transforms@7.24.9(@babel/core@7.24.9)': + '@babel/helper-module-transforms@7.25.2(@babel/core@7.25.2)': dependencies: - '@babel/core': 7.24.9 - '@babel/helper-environment-visitor': 7.24.7 + '@babel/core': 7.25.2 '@babel/helper-module-imports': 7.24.7 '@babel/helper-simple-access': 7.24.7 - '@babel/helper-split-export-declaration': 7.24.7 '@babel/helper-validator-identifier': 7.24.7 + '@babel/traverse': 7.25.3 transitivePeerDependencies: - supports-color '@babel/helper-optimise-call-expression@7.24.7': dependencies: - '@babel/types': 7.24.9 + '@babel/types': 7.25.2 '@babel/helper-plugin-utils@7.24.8': {} - '@babel/helper-remap-async-to-generator@7.24.7(@babel/core@7.24.9)': + '@babel/helper-remap-async-to-generator@7.25.0(@babel/core@7.25.2)': dependencies: - '@babel/core': 7.24.9 + '@babel/core': 7.25.2 '@babel/helper-annotate-as-pure': 7.24.7 - '@babel/helper-environment-visitor': 7.24.7 - '@babel/helper-wrap-function': 7.24.7 + '@babel/helper-wrap-function': 7.25.0 + '@babel/traverse': 7.25.3 transitivePeerDependencies: - supports-color - '@babel/helper-replace-supers@7.24.7(@babel/core@7.24.9)': + '@babel/helper-replace-supers@7.25.0(@babel/core@7.25.2)': dependencies: - '@babel/core': 7.24.9 - '@babel/helper-environment-visitor': 7.24.7 - '@babel/helper-member-expression-to-functions': 7.24.7 + '@babel/core': 7.25.2 + '@babel/helper-member-expression-to-functions': 7.24.8 '@babel/helper-optimise-call-expression': 7.24.7 + '@babel/traverse': 7.25.3 transitivePeerDependencies: - supports-color '@babel/helper-simple-access@7.24.7': dependencies: - '@babel/traverse': 7.24.8 - '@babel/types': 7.24.9 + '@babel/traverse': 7.25.3 + '@babel/types': 7.25.2 transitivePeerDependencies: - supports-color '@babel/helper-skip-transparent-expression-wrappers@7.24.7': dependencies: - '@babel/traverse': 7.24.8 - '@babel/types': 7.24.9 + '@babel/traverse': 7.25.3 + '@babel/types': 7.25.2 transitivePeerDependencies: - supports-color '@babel/helper-split-export-declaration@7.24.7': dependencies: - '@babel/types': 7.24.9 + '@babel/types': 7.25.2 '@babel/helper-string-parser@7.24.8': {} @@ -10421,19 +10641,18 @@ snapshots: '@babel/helper-validator-option@7.24.8': {} - '@babel/helper-wrap-function@7.24.7': + '@babel/helper-wrap-function@7.25.0': dependencies: - '@babel/helper-function-name': 7.24.7 - '@babel/template': 7.24.7 - '@babel/traverse': 7.24.8 - '@babel/types': 7.24.9 + '@babel/template': 7.25.0 + '@babel/traverse': 7.25.3 + '@babel/types': 7.25.2 transitivePeerDependencies: - supports-color - '@babel/helpers@7.24.8': + '@babel/helpers@7.25.0': dependencies: - '@babel/template': 7.24.7 - '@babel/types': 7.24.9 + '@babel/template': 7.25.0 + '@babel/types': 7.25.2 '@babel/highlight@7.24.7': dependencies: @@ -10442,673 +10661,690 @@ snapshots: js-tokens: 4.0.0 picocolors: 1.0.1 - '@babel/node@7.24.8(@babel/core@7.24.9)': + '@babel/node@7.25.0(@babel/core@7.25.2)': dependencies: - '@babel/core': 7.24.9 - '@babel/register': 7.24.6(@babel/core@7.24.9) + '@babel/core': 7.25.2 + '@babel/register': 7.24.6(@babel/core@7.25.2) commander: 6.2.1 core-js: 3.37.1 node-environment-flags: 1.0.6 regenerator-runtime: 0.14.1 v8flags: 3.2.0 - '@babel/parser@7.24.8': + '@babel/parser@7.25.3': dependencies: - '@babel/types': 7.24.9 + '@babel/types': 7.25.2 - '@babel/plugin-bugfix-firefox-class-in-computed-class-key@7.24.7(@babel/core@7.24.9)': + '@babel/plugin-bugfix-firefox-class-in-computed-class-key@7.25.3(@babel/core@7.25.2)': dependencies: - '@babel/core': 7.24.9 - '@babel/helper-environment-visitor': 7.24.7 + '@babel/core': 7.25.2 + '@babel/helper-plugin-utils': 7.24.8 + '@babel/traverse': 7.25.3 + transitivePeerDependencies: + - supports-color + + '@babel/plugin-bugfix-safari-class-field-initializer-scope@7.25.0(@babel/core@7.25.2)': + dependencies: + '@babel/core': 7.25.2 '@babel/helper-plugin-utils': 7.24.8 - '@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression@7.24.7(@babel/core@7.24.9)': + '@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression@7.25.0(@babel/core@7.25.2)': dependencies: - '@babel/core': 7.24.9 + '@babel/core': 7.25.2 '@babel/helper-plugin-utils': 7.24.8 - '@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining@7.24.7(@babel/core@7.24.9)': + '@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining@7.24.7(@babel/core@7.25.2)': dependencies: - '@babel/core': 7.24.9 + '@babel/core': 7.25.2 '@babel/helper-plugin-utils': 7.24.8 '@babel/helper-skip-transparent-expression-wrappers': 7.24.7 - '@babel/plugin-transform-optional-chaining': 7.24.8(@babel/core@7.24.9) + '@babel/plugin-transform-optional-chaining': 7.24.8(@babel/core@7.25.2) transitivePeerDependencies: - supports-color - '@babel/plugin-bugfix-v8-static-class-fields-redefine-readonly@7.24.7(@babel/core@7.24.9)': + '@babel/plugin-bugfix-v8-static-class-fields-redefine-readonly@7.25.0(@babel/core@7.25.2)': dependencies: - '@babel/core': 7.24.9 - '@babel/helper-environment-visitor': 7.24.7 + '@babel/core': 7.25.2 '@babel/helper-plugin-utils': 7.24.8 + '@babel/traverse': 7.25.3 + transitivePeerDependencies: + - supports-color - '@babel/plugin-proposal-private-methods@7.18.6(@babel/core@7.24.9)': + '@babel/plugin-proposal-private-methods@7.18.6(@babel/core@7.25.2)': dependencies: - '@babel/core': 7.24.9 - '@babel/helper-create-class-features-plugin': 7.24.7(@babel/core@7.24.9) + '@babel/core': 7.25.2 + '@babel/helper-create-class-features-plugin': 7.24.7(@babel/core@7.25.2) '@babel/helper-plugin-utils': 7.24.8 transitivePeerDependencies: - supports-color - '@babel/plugin-proposal-private-property-in-object@7.21.0-placeholder-for-preset-env.2(@babel/core@7.24.9)': + '@babel/plugin-proposal-private-property-in-object@7.21.0-placeholder-for-preset-env.2(@babel/core@7.25.2)': dependencies: - '@babel/core': 7.24.9 + '@babel/core': 7.25.2 - '@babel/plugin-syntax-async-generators@7.8.4(@babel/core@7.24.9)': + '@babel/plugin-syntax-async-generators@7.8.4(@babel/core@7.25.2)': dependencies: - '@babel/core': 7.24.9 + '@babel/core': 7.25.2 '@babel/helper-plugin-utils': 7.24.8 - '@babel/plugin-syntax-class-properties@7.12.13(@babel/core@7.24.9)': + '@babel/plugin-syntax-class-properties@7.12.13(@babel/core@7.25.2)': dependencies: - '@babel/core': 7.24.9 + '@babel/core': 7.25.2 '@babel/helper-plugin-utils': 7.24.8 - '@babel/plugin-syntax-class-static-block@7.14.5(@babel/core@7.24.9)': + '@babel/plugin-syntax-class-static-block@7.14.5(@babel/core@7.25.2)': dependencies: - '@babel/core': 7.24.9 + '@babel/core': 7.25.2 '@babel/helper-plugin-utils': 7.24.8 - '@babel/plugin-syntax-dynamic-import@7.8.3(@babel/core@7.24.9)': + '@babel/plugin-syntax-dynamic-import@7.8.3(@babel/core@7.25.2)': dependencies: - '@babel/core': 7.24.9 + '@babel/core': 7.25.2 '@babel/helper-plugin-utils': 7.24.8 - '@babel/plugin-syntax-export-namespace-from@7.8.3(@babel/core@7.24.9)': + '@babel/plugin-syntax-export-namespace-from@7.8.3(@babel/core@7.25.2)': dependencies: - '@babel/core': 7.24.9 + '@babel/core': 7.25.2 '@babel/helper-plugin-utils': 7.24.8 - '@babel/plugin-syntax-import-assertions@7.24.7(@babel/core@7.24.9)': + '@babel/plugin-syntax-import-assertions@7.24.7(@babel/core@7.25.2)': dependencies: - '@babel/core': 7.24.9 + '@babel/core': 7.25.2 '@babel/helper-plugin-utils': 7.24.8 - '@babel/plugin-syntax-import-attributes@7.24.7(@babel/core@7.24.9)': + '@babel/plugin-syntax-import-attributes@7.24.7(@babel/core@7.25.2)': dependencies: - '@babel/core': 7.24.9 + '@babel/core': 7.25.2 '@babel/helper-plugin-utils': 7.24.8 - '@babel/plugin-syntax-import-meta@7.10.4(@babel/core@7.24.9)': + '@babel/plugin-syntax-import-meta@7.10.4(@babel/core@7.25.2)': dependencies: - '@babel/core': 7.24.9 + '@babel/core': 7.25.2 '@babel/helper-plugin-utils': 7.24.8 - '@babel/plugin-syntax-json-strings@7.8.3(@babel/core@7.24.9)': + '@babel/plugin-syntax-json-strings@7.8.3(@babel/core@7.25.2)': dependencies: - '@babel/core': 7.24.9 + '@babel/core': 7.25.2 '@babel/helper-plugin-utils': 7.24.8 - '@babel/plugin-syntax-jsx@7.24.7(@babel/core@7.24.9)': + '@babel/plugin-syntax-jsx@7.24.7(@babel/core@7.25.2)': dependencies: - '@babel/core': 7.24.9 + '@babel/core': 7.25.2 '@babel/helper-plugin-utils': 7.24.8 - '@babel/plugin-syntax-logical-assignment-operators@7.10.4(@babel/core@7.24.9)': + '@babel/plugin-syntax-logical-assignment-operators@7.10.4(@babel/core@7.25.2)': dependencies: - '@babel/core': 7.24.9 + '@babel/core': 7.25.2 '@babel/helper-plugin-utils': 7.24.8 - '@babel/plugin-syntax-nullish-coalescing-operator@7.8.3(@babel/core@7.24.9)': + '@babel/plugin-syntax-nullish-coalescing-operator@7.8.3(@babel/core@7.25.2)': dependencies: - '@babel/core': 7.24.9 + '@babel/core': 7.25.2 '@babel/helper-plugin-utils': 7.24.8 - '@babel/plugin-syntax-numeric-separator@7.10.4(@babel/core@7.24.9)': + '@babel/plugin-syntax-numeric-separator@7.10.4(@babel/core@7.25.2)': dependencies: - '@babel/core': 7.24.9 + '@babel/core': 7.25.2 '@babel/helper-plugin-utils': 7.24.8 - '@babel/plugin-syntax-object-rest-spread@7.8.3(@babel/core@7.24.9)': + '@babel/plugin-syntax-object-rest-spread@7.8.3(@babel/core@7.25.2)': dependencies: - '@babel/core': 7.24.9 + '@babel/core': 7.25.2 '@babel/helper-plugin-utils': 7.24.8 - '@babel/plugin-syntax-optional-catch-binding@7.8.3(@babel/core@7.24.9)': + '@babel/plugin-syntax-optional-catch-binding@7.8.3(@babel/core@7.25.2)': dependencies: - '@babel/core': 7.24.9 + '@babel/core': 7.25.2 '@babel/helper-plugin-utils': 7.24.8 - '@babel/plugin-syntax-optional-chaining@7.8.3(@babel/core@7.24.9)': + '@babel/plugin-syntax-optional-chaining@7.8.3(@babel/core@7.25.2)': dependencies: - '@babel/core': 7.24.9 + '@babel/core': 7.25.2 '@babel/helper-plugin-utils': 7.24.8 - '@babel/plugin-syntax-private-property-in-object@7.14.5(@babel/core@7.24.9)': + '@babel/plugin-syntax-private-property-in-object@7.14.5(@babel/core@7.25.2)': dependencies: - '@babel/core': 7.24.9 + '@babel/core': 7.25.2 '@babel/helper-plugin-utils': 7.24.8 - '@babel/plugin-syntax-top-level-await@7.14.5(@babel/core@7.24.9)': + '@babel/plugin-syntax-top-level-await@7.14.5(@babel/core@7.25.2)': dependencies: - '@babel/core': 7.24.9 + '@babel/core': 7.25.2 '@babel/helper-plugin-utils': 7.24.8 - '@babel/plugin-syntax-typescript@7.24.7(@babel/core@7.24.9)': + '@babel/plugin-syntax-typescript@7.24.7(@babel/core@7.25.2)': dependencies: - '@babel/core': 7.24.9 + '@babel/core': 7.25.2 '@babel/helper-plugin-utils': 7.24.8 - '@babel/plugin-syntax-unicode-sets-regex@7.18.6(@babel/core@7.24.9)': + '@babel/plugin-syntax-unicode-sets-regex@7.18.6(@babel/core@7.25.2)': dependencies: - '@babel/core': 7.24.9 - '@babel/helper-create-regexp-features-plugin': 7.24.7(@babel/core@7.24.9) + '@babel/core': 7.25.2 + '@babel/helper-create-regexp-features-plugin': 7.25.2(@babel/core@7.25.2) '@babel/helper-plugin-utils': 7.24.8 - '@babel/plugin-transform-arrow-functions@7.24.7(@babel/core@7.24.9)': + '@babel/plugin-transform-arrow-functions@7.24.7(@babel/core@7.25.2)': dependencies: - '@babel/core': 7.24.9 + '@babel/core': 7.25.2 '@babel/helper-plugin-utils': 7.24.8 - '@babel/plugin-transform-async-generator-functions@7.24.7(@babel/core@7.24.9)': + '@babel/plugin-transform-async-generator-functions@7.25.0(@babel/core@7.25.2)': dependencies: - '@babel/core': 7.24.9 - '@babel/helper-environment-visitor': 7.24.7 + '@babel/core': 7.25.2 '@babel/helper-plugin-utils': 7.24.8 - '@babel/helper-remap-async-to-generator': 7.24.7(@babel/core@7.24.9) - '@babel/plugin-syntax-async-generators': 7.8.4(@babel/core@7.24.9) + '@babel/helper-remap-async-to-generator': 7.25.0(@babel/core@7.25.2) + '@babel/plugin-syntax-async-generators': 7.8.4(@babel/core@7.25.2) + '@babel/traverse': 7.25.3 transitivePeerDependencies: - supports-color - '@babel/plugin-transform-async-to-generator@7.24.7(@babel/core@7.24.9)': + '@babel/plugin-transform-async-to-generator@7.24.7(@babel/core@7.25.2)': dependencies: - '@babel/core': 7.24.9 + '@babel/core': 7.25.2 '@babel/helper-module-imports': 7.24.7 '@babel/helper-plugin-utils': 7.24.8 - '@babel/helper-remap-async-to-generator': 7.24.7(@babel/core@7.24.9) + '@babel/helper-remap-async-to-generator': 7.25.0(@babel/core@7.25.2) transitivePeerDependencies: - supports-color - '@babel/plugin-transform-block-scoped-functions@7.24.7(@babel/core@7.24.9)': + '@babel/plugin-transform-block-scoped-functions@7.24.7(@babel/core@7.25.2)': dependencies: - '@babel/core': 7.24.9 + '@babel/core': 7.25.2 '@babel/helper-plugin-utils': 7.24.8 - '@babel/plugin-transform-block-scoping@7.24.7(@babel/core@7.24.9)': + '@babel/plugin-transform-block-scoping@7.25.0(@babel/core@7.25.2)': dependencies: - '@babel/core': 7.24.9 + '@babel/core': 7.25.2 '@babel/helper-plugin-utils': 7.24.8 - '@babel/plugin-transform-class-properties@7.24.7(@babel/core@7.24.9)': + '@babel/plugin-transform-class-properties@7.24.7(@babel/core@7.25.2)': dependencies: - '@babel/core': 7.24.9 - '@babel/helper-create-class-features-plugin': 7.24.7(@babel/core@7.24.9) + '@babel/core': 7.25.2 + '@babel/helper-create-class-features-plugin': 7.24.7(@babel/core@7.25.2) '@babel/helper-plugin-utils': 7.24.8 transitivePeerDependencies: - supports-color - '@babel/plugin-transform-class-static-block@7.24.7(@babel/core@7.24.9)': + '@babel/plugin-transform-class-static-block@7.24.7(@babel/core@7.25.2)': dependencies: - '@babel/core': 7.24.9 - '@babel/helper-create-class-features-plugin': 7.24.7(@babel/core@7.24.9) + '@babel/core': 7.25.2 + '@babel/helper-create-class-features-plugin': 7.24.7(@babel/core@7.25.2) '@babel/helper-plugin-utils': 7.24.8 - '@babel/plugin-syntax-class-static-block': 7.14.5(@babel/core@7.24.9) + '@babel/plugin-syntax-class-static-block': 7.14.5(@babel/core@7.25.2) transitivePeerDependencies: - supports-color - '@babel/plugin-transform-classes@7.24.8(@babel/core@7.24.9)': + '@babel/plugin-transform-classes@7.25.0(@babel/core@7.25.2)': dependencies: - '@babel/core': 7.24.9 + '@babel/core': 7.25.2 '@babel/helper-annotate-as-pure': 7.24.7 - '@babel/helper-compilation-targets': 7.24.8 - '@babel/helper-environment-visitor': 7.24.7 - '@babel/helper-function-name': 7.24.7 + '@babel/helper-compilation-targets': 7.25.2 '@babel/helper-plugin-utils': 7.24.8 - '@babel/helper-replace-supers': 7.24.7(@babel/core@7.24.9) - '@babel/helper-split-export-declaration': 7.24.7 + '@babel/helper-replace-supers': 7.25.0(@babel/core@7.25.2) + '@babel/traverse': 7.25.3 globals: 11.12.0 transitivePeerDependencies: - supports-color - '@babel/plugin-transform-computed-properties@7.24.7(@babel/core@7.24.9)': + '@babel/plugin-transform-computed-properties@7.24.7(@babel/core@7.25.2)': dependencies: - '@babel/core': 7.24.9 + '@babel/core': 7.25.2 '@babel/helper-plugin-utils': 7.24.8 - '@babel/template': 7.24.7 + '@babel/template': 7.25.0 - '@babel/plugin-transform-destructuring@7.24.8(@babel/core@7.24.9)': + '@babel/plugin-transform-destructuring@7.24.8(@babel/core@7.25.2)': dependencies: - '@babel/core': 7.24.9 + '@babel/core': 7.25.2 '@babel/helper-plugin-utils': 7.24.8 - '@babel/plugin-transform-dotall-regex@7.24.7(@babel/core@7.24.9)': + '@babel/plugin-transform-dotall-regex@7.24.7(@babel/core@7.25.2)': dependencies: - '@babel/core': 7.24.9 - '@babel/helper-create-regexp-features-plugin': 7.24.7(@babel/core@7.24.9) + '@babel/core': 7.25.2 + '@babel/helper-create-regexp-features-plugin': 7.25.2(@babel/core@7.25.2) '@babel/helper-plugin-utils': 7.24.8 - '@babel/plugin-transform-duplicate-keys@7.24.7(@babel/core@7.24.9)': + '@babel/plugin-transform-duplicate-keys@7.24.7(@babel/core@7.25.2)': dependencies: - '@babel/core': 7.24.9 + '@babel/core': 7.25.2 '@babel/helper-plugin-utils': 7.24.8 - '@babel/plugin-transform-dynamic-import@7.24.7(@babel/core@7.24.9)': + '@babel/plugin-transform-duplicate-named-capturing-groups-regex@7.25.0(@babel/core@7.25.2)': dependencies: - '@babel/core': 7.24.9 + '@babel/core': 7.25.2 + '@babel/helper-create-regexp-features-plugin': 7.25.2(@babel/core@7.25.2) '@babel/helper-plugin-utils': 7.24.8 - '@babel/plugin-syntax-dynamic-import': 7.8.3(@babel/core@7.24.9) - '@babel/plugin-transform-exponentiation-operator@7.24.7(@babel/core@7.24.9)': + '@babel/plugin-transform-dynamic-import@7.24.7(@babel/core@7.25.2)': dependencies: - '@babel/core': 7.24.9 + '@babel/core': 7.25.2 + '@babel/helper-plugin-utils': 7.24.8 + '@babel/plugin-syntax-dynamic-import': 7.8.3(@babel/core@7.25.2) + + '@babel/plugin-transform-exponentiation-operator@7.24.7(@babel/core@7.25.2)': + dependencies: + '@babel/core': 7.25.2 '@babel/helper-builder-binary-assignment-operator-visitor': 7.24.7 '@babel/helper-plugin-utils': 7.24.8 transitivePeerDependencies: - supports-color - '@babel/plugin-transform-export-namespace-from@7.24.7(@babel/core@7.24.9)': + '@babel/plugin-transform-export-namespace-from@7.24.7(@babel/core@7.25.2)': dependencies: - '@babel/core': 7.24.9 + '@babel/core': 7.25.2 '@babel/helper-plugin-utils': 7.24.8 - '@babel/plugin-syntax-export-namespace-from': 7.8.3(@babel/core@7.24.9) + '@babel/plugin-syntax-export-namespace-from': 7.8.3(@babel/core@7.25.2) - '@babel/plugin-transform-for-of@7.24.7(@babel/core@7.24.9)': + '@babel/plugin-transform-for-of@7.24.7(@babel/core@7.25.2)': dependencies: - '@babel/core': 7.24.9 + '@babel/core': 7.25.2 '@babel/helper-plugin-utils': 7.24.8 '@babel/helper-skip-transparent-expression-wrappers': 7.24.7 transitivePeerDependencies: - supports-color - '@babel/plugin-transform-function-name@7.24.7(@babel/core@7.24.9)': + '@babel/plugin-transform-function-name@7.25.1(@babel/core@7.25.2)': dependencies: - '@babel/core': 7.24.9 - '@babel/helper-compilation-targets': 7.24.8 - '@babel/helper-function-name': 7.24.7 + '@babel/core': 7.25.2 + '@babel/helper-compilation-targets': 7.25.2 '@babel/helper-plugin-utils': 7.24.8 + '@babel/traverse': 7.25.3 + transitivePeerDependencies: + - supports-color - '@babel/plugin-transform-json-strings@7.24.7(@babel/core@7.24.9)': + '@babel/plugin-transform-json-strings@7.24.7(@babel/core@7.25.2)': dependencies: - '@babel/core': 7.24.9 + '@babel/core': 7.25.2 '@babel/helper-plugin-utils': 7.24.8 - '@babel/plugin-syntax-json-strings': 7.8.3(@babel/core@7.24.9) + '@babel/plugin-syntax-json-strings': 7.8.3(@babel/core@7.25.2) - '@babel/plugin-transform-literals@7.24.7(@babel/core@7.24.9)': + '@babel/plugin-transform-literals@7.25.2(@babel/core@7.25.2)': dependencies: - '@babel/core': 7.24.9 + '@babel/core': 7.25.2 '@babel/helper-plugin-utils': 7.24.8 - '@babel/plugin-transform-logical-assignment-operators@7.24.7(@babel/core@7.24.9)': + '@babel/plugin-transform-logical-assignment-operators@7.24.7(@babel/core@7.25.2)': dependencies: - '@babel/core': 7.24.9 + '@babel/core': 7.25.2 '@babel/helper-plugin-utils': 7.24.8 - '@babel/plugin-syntax-logical-assignment-operators': 7.10.4(@babel/core@7.24.9) + '@babel/plugin-syntax-logical-assignment-operators': 7.10.4(@babel/core@7.25.2) - '@babel/plugin-transform-member-expression-literals@7.24.7(@babel/core@7.24.9)': + '@babel/plugin-transform-member-expression-literals@7.24.7(@babel/core@7.25.2)': dependencies: - '@babel/core': 7.24.9 + '@babel/core': 7.25.2 '@babel/helper-plugin-utils': 7.24.8 - '@babel/plugin-transform-modules-amd@7.24.7(@babel/core@7.24.9)': + '@babel/plugin-transform-modules-amd@7.24.7(@babel/core@7.25.2)': dependencies: - '@babel/core': 7.24.9 - '@babel/helper-module-transforms': 7.24.9(@babel/core@7.24.9) + '@babel/core': 7.25.2 + '@babel/helper-module-transforms': 7.25.2(@babel/core@7.25.2) '@babel/helper-plugin-utils': 7.24.8 transitivePeerDependencies: - supports-color - '@babel/plugin-transform-modules-commonjs@7.24.8(@babel/core@7.24.9)': + '@babel/plugin-transform-modules-commonjs@7.24.8(@babel/core@7.25.2)': dependencies: - '@babel/core': 7.24.9 - '@babel/helper-module-transforms': 7.24.9(@babel/core@7.24.9) + '@babel/core': 7.25.2 + '@babel/helper-module-transforms': 7.25.2(@babel/core@7.25.2) '@babel/helper-plugin-utils': 7.24.8 '@babel/helper-simple-access': 7.24.7 transitivePeerDependencies: - supports-color - '@babel/plugin-transform-modules-systemjs@7.24.7(@babel/core@7.24.9)': + '@babel/plugin-transform-modules-systemjs@7.25.0(@babel/core@7.25.2)': dependencies: - '@babel/core': 7.24.9 - '@babel/helper-hoist-variables': 7.24.7 - '@babel/helper-module-transforms': 7.24.9(@babel/core@7.24.9) + '@babel/core': 7.25.2 + '@babel/helper-module-transforms': 7.25.2(@babel/core@7.25.2) '@babel/helper-plugin-utils': 7.24.8 '@babel/helper-validator-identifier': 7.24.7 + '@babel/traverse': 7.25.3 transitivePeerDependencies: - supports-color - '@babel/plugin-transform-modules-umd@7.24.7(@babel/core@7.24.9)': + '@babel/plugin-transform-modules-umd@7.24.7(@babel/core@7.25.2)': dependencies: - '@babel/core': 7.24.9 - '@babel/helper-module-transforms': 7.24.9(@babel/core@7.24.9) + '@babel/core': 7.25.2 + '@babel/helper-module-transforms': 7.25.2(@babel/core@7.25.2) '@babel/helper-plugin-utils': 7.24.8 transitivePeerDependencies: - supports-color - '@babel/plugin-transform-named-capturing-groups-regex@7.24.7(@babel/core@7.24.9)': + '@babel/plugin-transform-named-capturing-groups-regex@7.24.7(@babel/core@7.25.2)': dependencies: - '@babel/core': 7.24.9 - '@babel/helper-create-regexp-features-plugin': 7.24.7(@babel/core@7.24.9) + '@babel/core': 7.25.2 + '@babel/helper-create-regexp-features-plugin': 7.25.2(@babel/core@7.25.2) '@babel/helper-plugin-utils': 7.24.8 - '@babel/plugin-transform-new-target@7.24.7(@babel/core@7.24.9)': + '@babel/plugin-transform-new-target@7.24.7(@babel/core@7.25.2)': dependencies: - '@babel/core': 7.24.9 + '@babel/core': 7.25.2 '@babel/helper-plugin-utils': 7.24.8 - '@babel/plugin-transform-nullish-coalescing-operator@7.24.7(@babel/core@7.24.9)': + '@babel/plugin-transform-nullish-coalescing-operator@7.24.7(@babel/core@7.25.2)': dependencies: - '@babel/core': 7.24.9 + '@babel/core': 7.25.2 '@babel/helper-plugin-utils': 7.24.8 - '@babel/plugin-syntax-nullish-coalescing-operator': 7.8.3(@babel/core@7.24.9) + '@babel/plugin-syntax-nullish-coalescing-operator': 7.8.3(@babel/core@7.25.2) - '@babel/plugin-transform-numeric-separator@7.24.7(@babel/core@7.24.9)': + '@babel/plugin-transform-numeric-separator@7.24.7(@babel/core@7.25.2)': dependencies: - '@babel/core': 7.24.9 + '@babel/core': 7.25.2 '@babel/helper-plugin-utils': 7.24.8 - '@babel/plugin-syntax-numeric-separator': 7.10.4(@babel/core@7.24.9) + '@babel/plugin-syntax-numeric-separator': 7.10.4(@babel/core@7.25.2) - '@babel/plugin-transform-object-assign@7.24.7(@babel/core@7.24.9)': + '@babel/plugin-transform-object-assign@7.24.7(@babel/core@7.25.2)': dependencies: - '@babel/core': 7.24.9 + '@babel/core': 7.25.2 '@babel/helper-plugin-utils': 7.24.8 - '@babel/plugin-transform-object-rest-spread@7.24.7(@babel/core@7.24.9)': + '@babel/plugin-transform-object-rest-spread@7.24.7(@babel/core@7.25.2)': dependencies: - '@babel/core': 7.24.9 - '@babel/helper-compilation-targets': 7.24.8 + '@babel/core': 7.25.2 + '@babel/helper-compilation-targets': 7.25.2 '@babel/helper-plugin-utils': 7.24.8 - '@babel/plugin-syntax-object-rest-spread': 7.8.3(@babel/core@7.24.9) - '@babel/plugin-transform-parameters': 7.24.7(@babel/core@7.24.9) + '@babel/plugin-syntax-object-rest-spread': 7.8.3(@babel/core@7.25.2) + '@babel/plugin-transform-parameters': 7.24.7(@babel/core@7.25.2) - '@babel/plugin-transform-object-super@7.24.7(@babel/core@7.24.9)': + '@babel/plugin-transform-object-super@7.24.7(@babel/core@7.25.2)': dependencies: - '@babel/core': 7.24.9 + '@babel/core': 7.25.2 '@babel/helper-plugin-utils': 7.24.8 - '@babel/helper-replace-supers': 7.24.7(@babel/core@7.24.9) + '@babel/helper-replace-supers': 7.25.0(@babel/core@7.25.2) transitivePeerDependencies: - supports-color - '@babel/plugin-transform-optional-catch-binding@7.24.7(@babel/core@7.24.9)': + '@babel/plugin-transform-optional-catch-binding@7.24.7(@babel/core@7.25.2)': dependencies: - '@babel/core': 7.24.9 + '@babel/core': 7.25.2 '@babel/helper-plugin-utils': 7.24.8 - '@babel/plugin-syntax-optional-catch-binding': 7.8.3(@babel/core@7.24.9) + '@babel/plugin-syntax-optional-catch-binding': 7.8.3(@babel/core@7.25.2) - '@babel/plugin-transform-optional-chaining@7.24.8(@babel/core@7.24.9)': + '@babel/plugin-transform-optional-chaining@7.24.8(@babel/core@7.25.2)': dependencies: - '@babel/core': 7.24.9 + '@babel/core': 7.25.2 '@babel/helper-plugin-utils': 7.24.8 '@babel/helper-skip-transparent-expression-wrappers': 7.24.7 - '@babel/plugin-syntax-optional-chaining': 7.8.3(@babel/core@7.24.9) + '@babel/plugin-syntax-optional-chaining': 7.8.3(@babel/core@7.25.2) transitivePeerDependencies: - supports-color - '@babel/plugin-transform-parameters@7.24.7(@babel/core@7.24.9)': + '@babel/plugin-transform-parameters@7.24.7(@babel/core@7.25.2)': dependencies: - '@babel/core': 7.24.9 + '@babel/core': 7.25.2 '@babel/helper-plugin-utils': 7.24.8 - '@babel/plugin-transform-private-methods@7.24.7(@babel/core@7.24.9)': + '@babel/plugin-transform-private-methods@7.24.7(@babel/core@7.25.2)': dependencies: - '@babel/core': 7.24.9 - '@babel/helper-create-class-features-plugin': 7.24.7(@babel/core@7.24.9) + '@babel/core': 7.25.2 + '@babel/helper-create-class-features-plugin': 7.24.7(@babel/core@7.25.2) '@babel/helper-plugin-utils': 7.24.8 transitivePeerDependencies: - supports-color - '@babel/plugin-transform-private-property-in-object@7.24.7(@babel/core@7.24.9)': + '@babel/plugin-transform-private-property-in-object@7.24.7(@babel/core@7.25.2)': dependencies: - '@babel/core': 7.24.9 + '@babel/core': 7.25.2 '@babel/helper-annotate-as-pure': 7.24.7 - '@babel/helper-create-class-features-plugin': 7.24.7(@babel/core@7.24.9) + '@babel/helper-create-class-features-plugin': 7.24.7(@babel/core@7.25.2) '@babel/helper-plugin-utils': 7.24.8 - '@babel/plugin-syntax-private-property-in-object': 7.14.5(@babel/core@7.24.9) + '@babel/plugin-syntax-private-property-in-object': 7.14.5(@babel/core@7.25.2) transitivePeerDependencies: - supports-color - '@babel/plugin-transform-property-literals@7.24.7(@babel/core@7.24.9)': + '@babel/plugin-transform-property-literals@7.24.7(@babel/core@7.25.2)': dependencies: - '@babel/core': 7.24.9 + '@babel/core': 7.25.2 '@babel/helper-plugin-utils': 7.24.8 - '@babel/plugin-transform-react-constant-elements@7.24.7(@babel/core@7.24.9)': + '@babel/plugin-transform-react-constant-elements@7.25.1(@babel/core@7.25.2)': dependencies: - '@babel/core': 7.24.9 + '@babel/core': 7.25.2 '@babel/helper-plugin-utils': 7.24.8 - '@babel/plugin-transform-react-display-name@7.24.7(@babel/core@7.24.9)': + '@babel/plugin-transform-react-display-name@7.24.7(@babel/core@7.25.2)': dependencies: - '@babel/core': 7.24.9 + '@babel/core': 7.25.2 '@babel/helper-plugin-utils': 7.24.8 - '@babel/plugin-transform-react-jsx-development@7.24.7(@babel/core@7.24.9)': + '@babel/plugin-transform-react-jsx-development@7.24.7(@babel/core@7.25.2)': dependencies: - '@babel/core': 7.24.9 - '@babel/plugin-transform-react-jsx': 7.24.7(@babel/core@7.24.9) + '@babel/core': 7.25.2 + '@babel/plugin-transform-react-jsx': 7.24.7(@babel/core@7.25.2) transitivePeerDependencies: - supports-color - '@babel/plugin-transform-react-jsx-self@7.24.7(@babel/core@7.24.9)': + '@babel/plugin-transform-react-jsx-self@7.24.7(@babel/core@7.25.2)': dependencies: - '@babel/core': 7.24.9 + '@babel/core': 7.25.2 '@babel/helper-plugin-utils': 7.24.8 - '@babel/plugin-transform-react-jsx-source@7.24.7(@babel/core@7.24.9)': + '@babel/plugin-transform-react-jsx-source@7.24.7(@babel/core@7.25.2)': dependencies: - '@babel/core': 7.24.9 + '@babel/core': 7.25.2 '@babel/helper-plugin-utils': 7.24.8 - '@babel/plugin-transform-react-jsx@7.24.7(@babel/core@7.24.9)': + '@babel/plugin-transform-react-jsx@7.24.7(@babel/core@7.25.2)': dependencies: - '@babel/core': 7.24.9 + '@babel/core': 7.25.2 '@babel/helper-annotate-as-pure': 7.24.7 '@babel/helper-module-imports': 7.24.7 '@babel/helper-plugin-utils': 7.24.8 - '@babel/plugin-syntax-jsx': 7.24.7(@babel/core@7.24.9) - '@babel/types': 7.24.9 + '@babel/plugin-syntax-jsx': 7.24.7(@babel/core@7.25.2) + '@babel/types': 7.25.2 transitivePeerDependencies: - supports-color - '@babel/plugin-transform-react-pure-annotations@7.24.7(@babel/core@7.24.9)': + '@babel/plugin-transform-react-pure-annotations@7.24.7(@babel/core@7.25.2)': dependencies: - '@babel/core': 7.24.9 + '@babel/core': 7.25.2 '@babel/helper-annotate-as-pure': 7.24.7 '@babel/helper-plugin-utils': 7.24.8 - '@babel/plugin-transform-regenerator@7.24.7(@babel/core@7.24.9)': + '@babel/plugin-transform-regenerator@7.24.7(@babel/core@7.25.2)': dependencies: - '@babel/core': 7.24.9 + '@babel/core': 7.25.2 '@babel/helper-plugin-utils': 7.24.8 regenerator-transform: 0.15.2 - '@babel/plugin-transform-reserved-words@7.24.7(@babel/core@7.24.9)': + '@babel/plugin-transform-reserved-words@7.24.7(@babel/core@7.25.2)': dependencies: - '@babel/core': 7.24.9 + '@babel/core': 7.25.2 '@babel/helper-plugin-utils': 7.24.8 - '@babel/plugin-transform-runtime@7.24.7(@babel/core@7.24.9)': + '@babel/plugin-transform-runtime@7.24.7(@babel/core@7.25.2)': dependencies: - '@babel/core': 7.24.9 + '@babel/core': 7.25.2 '@babel/helper-module-imports': 7.24.7 '@babel/helper-plugin-utils': 7.24.8 - babel-plugin-polyfill-corejs2: 0.4.11(@babel/core@7.24.9) - babel-plugin-polyfill-corejs3: 0.10.4(@babel/core@7.24.9) - babel-plugin-polyfill-regenerator: 0.6.2(@babel/core@7.24.9) + babel-plugin-polyfill-corejs2: 0.4.11(@babel/core@7.25.2) + babel-plugin-polyfill-corejs3: 0.10.4(@babel/core@7.25.2) + babel-plugin-polyfill-regenerator: 0.6.2(@babel/core@7.25.2) semver: 6.3.1 transitivePeerDependencies: - supports-color - '@babel/plugin-transform-shorthand-properties@7.24.7(@babel/core@7.24.9)': + '@babel/plugin-transform-shorthand-properties@7.24.7(@babel/core@7.25.2)': dependencies: - '@babel/core': 7.24.9 + '@babel/core': 7.25.2 '@babel/helper-plugin-utils': 7.24.8 - '@babel/plugin-transform-spread@7.24.7(@babel/core@7.24.9)': + '@babel/plugin-transform-spread@7.24.7(@babel/core@7.25.2)': dependencies: - '@babel/core': 7.24.9 + '@babel/core': 7.25.2 '@babel/helper-plugin-utils': 7.24.8 '@babel/helper-skip-transparent-expression-wrappers': 7.24.7 transitivePeerDependencies: - supports-color - '@babel/plugin-transform-sticky-regex@7.24.7(@babel/core@7.24.9)': + '@babel/plugin-transform-sticky-regex@7.24.7(@babel/core@7.25.2)': dependencies: - '@babel/core': 7.24.9 + '@babel/core': 7.25.2 '@babel/helper-plugin-utils': 7.24.8 - '@babel/plugin-transform-template-literals@7.24.7(@babel/core@7.24.9)': + '@babel/plugin-transform-template-literals@7.24.7(@babel/core@7.25.2)': dependencies: - '@babel/core': 7.24.9 + '@babel/core': 7.25.2 '@babel/helper-plugin-utils': 7.24.8 - '@babel/plugin-transform-typeof-symbol@7.24.8(@babel/core@7.24.9)': + '@babel/plugin-transform-typeof-symbol@7.24.8(@babel/core@7.25.2)': dependencies: - '@babel/core': 7.24.9 + '@babel/core': 7.25.2 '@babel/helper-plugin-utils': 7.24.8 - '@babel/plugin-transform-typescript@7.24.7(@babel/core@7.24.9)': + '@babel/plugin-transform-typescript@7.24.7(@babel/core@7.25.2)': dependencies: - '@babel/core': 7.24.9 + '@babel/core': 7.25.2 '@babel/helper-annotate-as-pure': 7.24.7 - '@babel/helper-create-class-features-plugin': 7.24.7(@babel/core@7.24.9) + '@babel/helper-create-class-features-plugin': 7.24.7(@babel/core@7.25.2) '@babel/helper-plugin-utils': 7.24.8 - '@babel/plugin-syntax-typescript': 7.24.7(@babel/core@7.24.9) + '@babel/plugin-syntax-typescript': 7.24.7(@babel/core@7.25.2) transitivePeerDependencies: - supports-color - '@babel/plugin-transform-unicode-escapes@7.24.7(@babel/core@7.24.9)': + '@babel/plugin-transform-unicode-escapes@7.24.7(@babel/core@7.25.2)': dependencies: - '@babel/core': 7.24.9 + '@babel/core': 7.25.2 '@babel/helper-plugin-utils': 7.24.8 - '@babel/plugin-transform-unicode-property-regex@7.24.7(@babel/core@7.24.9)': + '@babel/plugin-transform-unicode-property-regex@7.24.7(@babel/core@7.25.2)': dependencies: - '@babel/core': 7.24.9 - '@babel/helper-create-regexp-features-plugin': 7.24.7(@babel/core@7.24.9) + '@babel/core': 7.25.2 + '@babel/helper-create-regexp-features-plugin': 7.25.2(@babel/core@7.25.2) '@babel/helper-plugin-utils': 7.24.8 - '@babel/plugin-transform-unicode-regex@7.24.7(@babel/core@7.24.9)': + '@babel/plugin-transform-unicode-regex@7.24.7(@babel/core@7.25.2)': dependencies: - '@babel/core': 7.24.9 - '@babel/helper-create-regexp-features-plugin': 7.24.7(@babel/core@7.24.9) + '@babel/core': 7.25.2 + '@babel/helper-create-regexp-features-plugin': 7.25.2(@babel/core@7.25.2) '@babel/helper-plugin-utils': 7.24.8 - '@babel/plugin-transform-unicode-sets-regex@7.24.7(@babel/core@7.24.9)': + '@babel/plugin-transform-unicode-sets-regex@7.24.7(@babel/core@7.25.2)': dependencies: - '@babel/core': 7.24.9 - '@babel/helper-create-regexp-features-plugin': 7.24.7(@babel/core@7.24.9) + '@babel/core': 7.25.2 + '@babel/helper-create-regexp-features-plugin': 7.25.2(@babel/core@7.25.2) '@babel/helper-plugin-utils': 7.24.8 - '@babel/preset-env@7.24.8(@babel/core@7.24.9)': + '@babel/preset-env@7.25.3(@babel/core@7.25.2)': dependencies: - '@babel/compat-data': 7.24.8 - '@babel/core': 7.24.9 - '@babel/helper-compilation-targets': 7.24.8 + '@babel/compat-data': 7.25.2 + '@babel/core': 7.25.2 + '@babel/helper-compilation-targets': 7.25.2 '@babel/helper-plugin-utils': 7.24.8 '@babel/helper-validator-option': 7.24.8 - '@babel/plugin-bugfix-firefox-class-in-computed-class-key': 7.24.7(@babel/core@7.24.9) - '@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression': 7.24.7(@babel/core@7.24.9) - '@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining': 7.24.7(@babel/core@7.24.9) - '@babel/plugin-bugfix-v8-static-class-fields-redefine-readonly': 7.24.7(@babel/core@7.24.9) - '@babel/plugin-proposal-private-property-in-object': 7.21.0-placeholder-for-preset-env.2(@babel/core@7.24.9) - '@babel/plugin-syntax-async-generators': 7.8.4(@babel/core@7.24.9) - '@babel/plugin-syntax-class-properties': 7.12.13(@babel/core@7.24.9) - '@babel/plugin-syntax-class-static-block': 7.14.5(@babel/core@7.24.9) - '@babel/plugin-syntax-dynamic-import': 7.8.3(@babel/core@7.24.9) - '@babel/plugin-syntax-export-namespace-from': 7.8.3(@babel/core@7.24.9) - '@babel/plugin-syntax-import-assertions': 7.24.7(@babel/core@7.24.9) - '@babel/plugin-syntax-import-attributes': 7.24.7(@babel/core@7.24.9) - '@babel/plugin-syntax-import-meta': 7.10.4(@babel/core@7.24.9) - '@babel/plugin-syntax-json-strings': 7.8.3(@babel/core@7.24.9) - '@babel/plugin-syntax-logical-assignment-operators': 7.10.4(@babel/core@7.24.9) - '@babel/plugin-syntax-nullish-coalescing-operator': 7.8.3(@babel/core@7.24.9) - '@babel/plugin-syntax-numeric-separator': 7.10.4(@babel/core@7.24.9) - '@babel/plugin-syntax-object-rest-spread': 7.8.3(@babel/core@7.24.9) - '@babel/plugin-syntax-optional-catch-binding': 7.8.3(@babel/core@7.24.9) - '@babel/plugin-syntax-optional-chaining': 7.8.3(@babel/core@7.24.9) - '@babel/plugin-syntax-private-property-in-object': 7.14.5(@babel/core@7.24.9) - '@babel/plugin-syntax-top-level-await': 7.14.5(@babel/core@7.24.9) - '@babel/plugin-syntax-unicode-sets-regex': 7.18.6(@babel/core@7.24.9) - '@babel/plugin-transform-arrow-functions': 7.24.7(@babel/core@7.24.9) - '@babel/plugin-transform-async-generator-functions': 7.24.7(@babel/core@7.24.9) - '@babel/plugin-transform-async-to-generator': 7.24.7(@babel/core@7.24.9) - '@babel/plugin-transform-block-scoped-functions': 7.24.7(@babel/core@7.24.9) - '@babel/plugin-transform-block-scoping': 7.24.7(@babel/core@7.24.9) - '@babel/plugin-transform-class-properties': 7.24.7(@babel/core@7.24.9) - '@babel/plugin-transform-class-static-block': 7.24.7(@babel/core@7.24.9) - '@babel/plugin-transform-classes': 7.24.8(@babel/core@7.24.9) - '@babel/plugin-transform-computed-properties': 7.24.7(@babel/core@7.24.9) - '@babel/plugin-transform-destructuring': 7.24.8(@babel/core@7.24.9) - '@babel/plugin-transform-dotall-regex': 7.24.7(@babel/core@7.24.9) - '@babel/plugin-transform-duplicate-keys': 7.24.7(@babel/core@7.24.9) - '@babel/plugin-transform-dynamic-import': 7.24.7(@babel/core@7.24.9) - '@babel/plugin-transform-exponentiation-operator': 7.24.7(@babel/core@7.24.9) - '@babel/plugin-transform-export-namespace-from': 7.24.7(@babel/core@7.24.9) - '@babel/plugin-transform-for-of': 7.24.7(@babel/core@7.24.9) - '@babel/plugin-transform-function-name': 7.24.7(@babel/core@7.24.9) - '@babel/plugin-transform-json-strings': 7.24.7(@babel/core@7.24.9) - '@babel/plugin-transform-literals': 7.24.7(@babel/core@7.24.9) - '@babel/plugin-transform-logical-assignment-operators': 7.24.7(@babel/core@7.24.9) - '@babel/plugin-transform-member-expression-literals': 7.24.7(@babel/core@7.24.9) - '@babel/plugin-transform-modules-amd': 7.24.7(@babel/core@7.24.9) - '@babel/plugin-transform-modules-commonjs': 7.24.8(@babel/core@7.24.9) - '@babel/plugin-transform-modules-systemjs': 7.24.7(@babel/core@7.24.9) - '@babel/plugin-transform-modules-umd': 7.24.7(@babel/core@7.24.9) - '@babel/plugin-transform-named-capturing-groups-regex': 7.24.7(@babel/core@7.24.9) - '@babel/plugin-transform-new-target': 7.24.7(@babel/core@7.24.9) - '@babel/plugin-transform-nullish-coalescing-operator': 7.24.7(@babel/core@7.24.9) - '@babel/plugin-transform-numeric-separator': 7.24.7(@babel/core@7.24.9) - '@babel/plugin-transform-object-rest-spread': 7.24.7(@babel/core@7.24.9) - '@babel/plugin-transform-object-super': 7.24.7(@babel/core@7.24.9) - '@babel/plugin-transform-optional-catch-binding': 7.24.7(@babel/core@7.24.9) - '@babel/plugin-transform-optional-chaining': 7.24.8(@babel/core@7.24.9) - '@babel/plugin-transform-parameters': 7.24.7(@babel/core@7.24.9) - '@babel/plugin-transform-private-methods': 7.24.7(@babel/core@7.24.9) - '@babel/plugin-transform-private-property-in-object': 7.24.7(@babel/core@7.24.9) - '@babel/plugin-transform-property-literals': 7.24.7(@babel/core@7.24.9) - '@babel/plugin-transform-regenerator': 7.24.7(@babel/core@7.24.9) - '@babel/plugin-transform-reserved-words': 7.24.7(@babel/core@7.24.9) - '@babel/plugin-transform-shorthand-properties': 7.24.7(@babel/core@7.24.9) - '@babel/plugin-transform-spread': 7.24.7(@babel/core@7.24.9) - '@babel/plugin-transform-sticky-regex': 7.24.7(@babel/core@7.24.9) - '@babel/plugin-transform-template-literals': 7.24.7(@babel/core@7.24.9) - '@babel/plugin-transform-typeof-symbol': 7.24.8(@babel/core@7.24.9) - '@babel/plugin-transform-unicode-escapes': 7.24.7(@babel/core@7.24.9) - '@babel/plugin-transform-unicode-property-regex': 7.24.7(@babel/core@7.24.9) - '@babel/plugin-transform-unicode-regex': 7.24.7(@babel/core@7.24.9) - '@babel/plugin-transform-unicode-sets-regex': 7.24.7(@babel/core@7.24.9) - '@babel/preset-modules': 0.1.6-no-external-plugins(@babel/core@7.24.9) - babel-plugin-polyfill-corejs2: 0.4.11(@babel/core@7.24.9) - babel-plugin-polyfill-corejs3: 0.10.4(@babel/core@7.24.9) - babel-plugin-polyfill-regenerator: 0.6.2(@babel/core@7.24.9) + '@babel/plugin-bugfix-firefox-class-in-computed-class-key': 7.25.3(@babel/core@7.25.2) + '@babel/plugin-bugfix-safari-class-field-initializer-scope': 7.25.0(@babel/core@7.25.2) + '@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression': 7.25.0(@babel/core@7.25.2) + '@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining': 7.24.7(@babel/core@7.25.2) + '@babel/plugin-bugfix-v8-static-class-fields-redefine-readonly': 7.25.0(@babel/core@7.25.2) + '@babel/plugin-proposal-private-property-in-object': 7.21.0-placeholder-for-preset-env.2(@babel/core@7.25.2) + '@babel/plugin-syntax-async-generators': 7.8.4(@babel/core@7.25.2) + '@babel/plugin-syntax-class-properties': 7.12.13(@babel/core@7.25.2) + '@babel/plugin-syntax-class-static-block': 7.14.5(@babel/core@7.25.2) + '@babel/plugin-syntax-dynamic-import': 7.8.3(@babel/core@7.25.2) + '@babel/plugin-syntax-export-namespace-from': 7.8.3(@babel/core@7.25.2) + '@babel/plugin-syntax-import-assertions': 7.24.7(@babel/core@7.25.2) + '@babel/plugin-syntax-import-attributes': 7.24.7(@babel/core@7.25.2) + '@babel/plugin-syntax-import-meta': 7.10.4(@babel/core@7.25.2) + '@babel/plugin-syntax-json-strings': 7.8.3(@babel/core@7.25.2) + '@babel/plugin-syntax-logical-assignment-operators': 7.10.4(@babel/core@7.25.2) + '@babel/plugin-syntax-nullish-coalescing-operator': 7.8.3(@babel/core@7.25.2) + '@babel/plugin-syntax-numeric-separator': 7.10.4(@babel/core@7.25.2) + '@babel/plugin-syntax-object-rest-spread': 7.8.3(@babel/core@7.25.2) + '@babel/plugin-syntax-optional-catch-binding': 7.8.3(@babel/core@7.25.2) + '@babel/plugin-syntax-optional-chaining': 7.8.3(@babel/core@7.25.2) + '@babel/plugin-syntax-private-property-in-object': 7.14.5(@babel/core@7.25.2) + '@babel/plugin-syntax-top-level-await': 7.14.5(@babel/core@7.25.2) + '@babel/plugin-syntax-unicode-sets-regex': 7.18.6(@babel/core@7.25.2) + '@babel/plugin-transform-arrow-functions': 7.24.7(@babel/core@7.25.2) + '@babel/plugin-transform-async-generator-functions': 7.25.0(@babel/core@7.25.2) + '@babel/plugin-transform-async-to-generator': 7.24.7(@babel/core@7.25.2) + '@babel/plugin-transform-block-scoped-functions': 7.24.7(@babel/core@7.25.2) + '@babel/plugin-transform-block-scoping': 7.25.0(@babel/core@7.25.2) + '@babel/plugin-transform-class-properties': 7.24.7(@babel/core@7.25.2) + '@babel/plugin-transform-class-static-block': 7.24.7(@babel/core@7.25.2) + '@babel/plugin-transform-classes': 7.25.0(@babel/core@7.25.2) + '@babel/plugin-transform-computed-properties': 7.24.7(@babel/core@7.25.2) + '@babel/plugin-transform-destructuring': 7.24.8(@babel/core@7.25.2) + '@babel/plugin-transform-dotall-regex': 7.24.7(@babel/core@7.25.2) + '@babel/plugin-transform-duplicate-keys': 7.24.7(@babel/core@7.25.2) + '@babel/plugin-transform-duplicate-named-capturing-groups-regex': 7.25.0(@babel/core@7.25.2) + '@babel/plugin-transform-dynamic-import': 7.24.7(@babel/core@7.25.2) + '@babel/plugin-transform-exponentiation-operator': 7.24.7(@babel/core@7.25.2) + '@babel/plugin-transform-export-namespace-from': 7.24.7(@babel/core@7.25.2) + '@babel/plugin-transform-for-of': 7.24.7(@babel/core@7.25.2) + '@babel/plugin-transform-function-name': 7.25.1(@babel/core@7.25.2) + '@babel/plugin-transform-json-strings': 7.24.7(@babel/core@7.25.2) + '@babel/plugin-transform-literals': 7.25.2(@babel/core@7.25.2) + '@babel/plugin-transform-logical-assignment-operators': 7.24.7(@babel/core@7.25.2) + '@babel/plugin-transform-member-expression-literals': 7.24.7(@babel/core@7.25.2) + '@babel/plugin-transform-modules-amd': 7.24.7(@babel/core@7.25.2) + '@babel/plugin-transform-modules-commonjs': 7.24.8(@babel/core@7.25.2) + '@babel/plugin-transform-modules-systemjs': 7.25.0(@babel/core@7.25.2) + '@babel/plugin-transform-modules-umd': 7.24.7(@babel/core@7.25.2) + '@babel/plugin-transform-named-capturing-groups-regex': 7.24.7(@babel/core@7.25.2) + '@babel/plugin-transform-new-target': 7.24.7(@babel/core@7.25.2) + '@babel/plugin-transform-nullish-coalescing-operator': 7.24.7(@babel/core@7.25.2) + '@babel/plugin-transform-numeric-separator': 7.24.7(@babel/core@7.25.2) + '@babel/plugin-transform-object-rest-spread': 7.24.7(@babel/core@7.25.2) + '@babel/plugin-transform-object-super': 7.24.7(@babel/core@7.25.2) + '@babel/plugin-transform-optional-catch-binding': 7.24.7(@babel/core@7.25.2) + '@babel/plugin-transform-optional-chaining': 7.24.8(@babel/core@7.25.2) + '@babel/plugin-transform-parameters': 7.24.7(@babel/core@7.25.2) + '@babel/plugin-transform-private-methods': 7.24.7(@babel/core@7.25.2) + '@babel/plugin-transform-private-property-in-object': 7.24.7(@babel/core@7.25.2) + '@babel/plugin-transform-property-literals': 7.24.7(@babel/core@7.25.2) + '@babel/plugin-transform-regenerator': 7.24.7(@babel/core@7.25.2) + '@babel/plugin-transform-reserved-words': 7.24.7(@babel/core@7.25.2) + '@babel/plugin-transform-shorthand-properties': 7.24.7(@babel/core@7.25.2) + '@babel/plugin-transform-spread': 7.24.7(@babel/core@7.25.2) + '@babel/plugin-transform-sticky-regex': 7.24.7(@babel/core@7.25.2) + '@babel/plugin-transform-template-literals': 7.24.7(@babel/core@7.25.2) + '@babel/plugin-transform-typeof-symbol': 7.24.8(@babel/core@7.25.2) + '@babel/plugin-transform-unicode-escapes': 7.24.7(@babel/core@7.25.2) + '@babel/plugin-transform-unicode-property-regex': 7.24.7(@babel/core@7.25.2) + '@babel/plugin-transform-unicode-regex': 7.24.7(@babel/core@7.25.2) + '@babel/plugin-transform-unicode-sets-regex': 7.24.7(@babel/core@7.25.2) + '@babel/preset-modules': 0.1.6-no-external-plugins(@babel/core@7.25.2) + babel-plugin-polyfill-corejs2: 0.4.11(@babel/core@7.25.2) + babel-plugin-polyfill-corejs3: 0.10.4(@babel/core@7.25.2) + babel-plugin-polyfill-regenerator: 0.6.2(@babel/core@7.25.2) core-js-compat: 3.37.1 semver: 6.3.1 transitivePeerDependencies: - supports-color - '@babel/preset-modules@0.1.6-no-external-plugins(@babel/core@7.24.9)': + '@babel/preset-modules@0.1.6-no-external-plugins(@babel/core@7.25.2)': dependencies: - '@babel/core': 7.24.9 + '@babel/core': 7.25.2 '@babel/helper-plugin-utils': 7.24.8 - '@babel/types': 7.24.9 + '@babel/types': 7.25.2 esutils: 2.0.3 - '@babel/preset-react@7.24.7(@babel/core@7.24.9)': + '@babel/preset-react@7.24.7(@babel/core@7.25.2)': dependencies: - '@babel/core': 7.24.9 + '@babel/core': 7.25.2 '@babel/helper-plugin-utils': 7.24.8 '@babel/helper-validator-option': 7.24.8 - '@babel/plugin-transform-react-display-name': 7.24.7(@babel/core@7.24.9) - '@babel/plugin-transform-react-jsx': 7.24.7(@babel/core@7.24.9) - '@babel/plugin-transform-react-jsx-development': 7.24.7(@babel/core@7.24.9) - '@babel/plugin-transform-react-pure-annotations': 7.24.7(@babel/core@7.24.9) + '@babel/plugin-transform-react-display-name': 7.24.7(@babel/core@7.25.2) + '@babel/plugin-transform-react-jsx': 7.24.7(@babel/core@7.25.2) + '@babel/plugin-transform-react-jsx-development': 7.24.7(@babel/core@7.25.2) + '@babel/plugin-transform-react-pure-annotations': 7.24.7(@babel/core@7.25.2) transitivePeerDependencies: - supports-color - '@babel/preset-typescript@7.24.7(@babel/core@7.24.9)': + '@babel/preset-typescript@7.24.7(@babel/core@7.25.2)': dependencies: - '@babel/core': 7.24.9 + '@babel/core': 7.25.2 '@babel/helper-plugin-utils': 7.24.8 '@babel/helper-validator-option': 7.24.8 - '@babel/plugin-syntax-jsx': 7.24.7(@babel/core@7.24.9) - '@babel/plugin-transform-modules-commonjs': 7.24.8(@babel/core@7.24.9) - '@babel/plugin-transform-typescript': 7.24.7(@babel/core@7.24.9) + '@babel/plugin-syntax-jsx': 7.24.7(@babel/core@7.25.2) + '@babel/plugin-transform-modules-commonjs': 7.24.8(@babel/core@7.25.2) + '@babel/plugin-transform-typescript': 7.24.7(@babel/core@7.25.2) transitivePeerDependencies: - supports-color - '@babel/register@7.24.6(@babel/core@7.24.9)': + '@babel/register@7.24.6(@babel/core@7.25.2)': dependencies: - '@babel/core': 7.24.9 + '@babel/core': 7.25.2 clone-deep: 4.0.1 find-cache-dir: 2.1.0 make-dir: 2.1.0 @@ -11117,7 +11353,7 @@ snapshots: '@babel/regjsgen@0.8.0': {} - '@babel/runtime-corejs2@7.24.8': + '@babel/runtime-corejs2@7.25.0': dependencies: core-js: 2.6.12 regenerator-runtime: 0.14.1 @@ -11126,32 +11362,29 @@ snapshots: dependencies: regenerator-runtime: 0.12.1 - '@babel/runtime@7.24.8': + '@babel/runtime@7.25.0': dependencies: regenerator-runtime: 0.14.1 - '@babel/template@7.24.7': + '@babel/template@7.25.0': dependencies: '@babel/code-frame': 7.24.7 - '@babel/parser': 7.24.8 - '@babel/types': 7.24.9 + '@babel/parser': 7.25.3 + '@babel/types': 7.25.2 - '@babel/traverse@7.24.8': + '@babel/traverse@7.25.3': dependencies: '@babel/code-frame': 7.24.7 - '@babel/generator': 7.24.10 - '@babel/helper-environment-visitor': 7.24.7 - '@babel/helper-function-name': 7.24.7 - '@babel/helper-hoist-variables': 7.24.7 - '@babel/helper-split-export-declaration': 7.24.7 - '@babel/parser': 7.24.8 - '@babel/types': 7.24.9 + '@babel/generator': 7.25.0 + '@babel/parser': 7.25.3 + '@babel/template': 7.25.0 + '@babel/types': 7.25.2 debug: 4.3.5 globals: 11.12.0 transitivePeerDependencies: - supports-color - '@babel/types@7.24.9': + '@babel/types@7.25.2': dependencies: '@babel/helper-string-parser': 7.24.8 '@babel/helper-validator-identifier': 7.24.7 @@ -11167,6 +11400,11 @@ snapshots: dependencies: statuses: 2.0.1 + '@bundled-es-modules/tough-cookie@0.1.6': + dependencies: + '@types/tough-cookie': 4.0.5 + tough-cookie: 4.1.4 + '@date-io/core@3.0.0': {} '@date-io/date-fns-jalali@3.0.0(date-fns-jalali@2.29.3-0)': @@ -11201,7 +11439,7 @@ snapshots: '@emotion/babel-plugin@11.12.0': dependencies: '@babel/helper-module-imports': 7.24.7 - '@babel/runtime': 7.24.8 + '@babel/runtime': 7.25.0 '@emotion/hash': 0.9.2 '@emotion/memoize': 0.9.0 '@emotion/serialize': 1.3.0 @@ -11238,7 +11476,7 @@ snapshots: '@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1)': dependencies: - '@babel/runtime': 7.24.8 + '@babel/runtime': 7.25.0 '@emotion/babel-plugin': 11.12.0 '@emotion/cache': 11.13.1 '@emotion/serialize': 1.3.0 @@ -11271,7 +11509,7 @@ snapshots: '@emotion/styled@11.13.0(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(react@18.3.1)': dependencies: - '@babel/runtime': 7.24.8 + '@babel/runtime': 7.25.0 '@emotion/babel-plugin': 11.12.0 '@emotion/is-prop-valid': 1.3.0 '@emotion/react': 11.13.0(@types/react@18.3.3)(react@18.3.1) @@ -11299,72 +11537,144 @@ snapshots: '@esbuild/aix-ppc64@0.21.5': optional: true + '@esbuild/aix-ppc64@0.23.0': + optional: true + '@esbuild/android-arm64@0.21.5': optional: true + '@esbuild/android-arm64@0.23.0': + optional: true + '@esbuild/android-arm@0.21.5': optional: true - '@esbuild/android-x64@0.21.5': + '@esbuild/android-arm@0.23.0': optional: true - '@esbuild/darwin-arm64@0.21.5': + '@esbuild/android-x64@0.21.5': optional: true - '@esbuild/darwin-x64@0.21.5': + '@esbuild/android-x64@0.23.0': + optional: true + + '@esbuild/darwin-arm64@0.21.5': + optional: true + + '@esbuild/darwin-arm64@0.23.0': + optional: true + + '@esbuild/darwin-x64@0.21.5': + optional: true + + '@esbuild/darwin-x64@0.23.0': optional: true '@esbuild/freebsd-arm64@0.21.5': optional: true + '@esbuild/freebsd-arm64@0.23.0': + optional: true + '@esbuild/freebsd-x64@0.21.5': optional: true + '@esbuild/freebsd-x64@0.23.0': + optional: true + '@esbuild/linux-arm64@0.21.5': optional: true + '@esbuild/linux-arm64@0.23.0': + optional: true + '@esbuild/linux-arm@0.21.5': optional: true + '@esbuild/linux-arm@0.23.0': + optional: true + '@esbuild/linux-ia32@0.21.5': optional: true + '@esbuild/linux-ia32@0.23.0': + optional: true + '@esbuild/linux-loong64@0.21.5': optional: true + '@esbuild/linux-loong64@0.23.0': + optional: true + '@esbuild/linux-mips64el@0.21.5': optional: true + '@esbuild/linux-mips64el@0.23.0': + optional: true + '@esbuild/linux-ppc64@0.21.5': optional: true + '@esbuild/linux-ppc64@0.23.0': + optional: true + '@esbuild/linux-riscv64@0.21.5': optional: true + '@esbuild/linux-riscv64@0.23.0': + optional: true + '@esbuild/linux-s390x@0.21.5': optional: true + '@esbuild/linux-s390x@0.23.0': + optional: true + '@esbuild/linux-x64@0.21.5': optional: true + '@esbuild/linux-x64@0.23.0': + optional: true + '@esbuild/netbsd-x64@0.21.5': optional: true + '@esbuild/netbsd-x64@0.23.0': + optional: true + + '@esbuild/openbsd-arm64@0.23.0': + optional: true + '@esbuild/openbsd-x64@0.21.5': optional: true + '@esbuild/openbsd-x64@0.23.0': + optional: true + '@esbuild/sunos-x64@0.21.5': optional: true + '@esbuild/sunos-x64@0.23.0': + optional: true + '@esbuild/win32-arm64@0.21.5': optional: true + '@esbuild/win32-arm64@0.23.0': + optional: true + '@esbuild/win32-ia32@0.21.5': optional: true + '@esbuild/win32-ia32@0.23.0': + optional: true + '@esbuild/win32-x64@0.21.5': optional: true + '@esbuild/win32-x64@0.23.0': + optional: true + '@eslint-community/eslint-utils@4.4.0(eslint@8.57.0)': dependencies: eslint: 8.57.0 @@ -11534,25 +11844,25 @@ snapshots: '@img/sharp-win32-x64@0.33.4': optional: true - '@inquirer/checkbox@2.4.2': + '@inquirer/checkbox@2.4.5': dependencies: - '@inquirer/core': 9.0.5 + '@inquirer/core': 9.0.8 '@inquirer/figures': 1.0.5 '@inquirer/type': 1.5.1 ansi-escapes: 4.3.2 yoctocolors-cjs: 2.1.2 - '@inquirer/confirm@3.1.17': + '@inquirer/confirm@3.1.20': dependencies: - '@inquirer/core': 9.0.5 + '@inquirer/core': 9.0.8 '@inquirer/type': 1.5.1 - '@inquirer/core@9.0.5': + '@inquirer/core@9.0.8': dependencies: '@inquirer/figures': 1.0.5 '@inquirer/type': 1.5.1 '@types/mute-stream': 0.0.4 - '@types/node': 20.14.12 + '@types/node': 22.1.0 '@types/wrap-ansi': 3.0.0 ansi-escapes: 4.3.2 cli-spinners: 2.9.2 @@ -11563,65 +11873,65 @@ snapshots: wrap-ansi: 6.2.0 yoctocolors-cjs: 2.1.2 - '@inquirer/editor@2.1.17': + '@inquirer/editor@2.1.20': dependencies: - '@inquirer/core': 9.0.5 + '@inquirer/core': 9.0.8 '@inquirer/type': 1.5.1 external-editor: 3.1.0 - '@inquirer/expand@2.1.17': + '@inquirer/expand@2.1.20': dependencies: - '@inquirer/core': 9.0.5 + '@inquirer/core': 9.0.8 '@inquirer/type': 1.5.1 yoctocolors-cjs: 2.1.2 '@inquirer/figures@1.0.5': {} - '@inquirer/input@2.2.4': + '@inquirer/input@2.2.7': dependencies: - '@inquirer/core': 9.0.5 + '@inquirer/core': 9.0.8 '@inquirer/type': 1.5.1 - '@inquirer/number@1.0.5': + '@inquirer/number@1.0.8': dependencies: - '@inquirer/core': 9.0.5 + '@inquirer/core': 9.0.8 '@inquirer/type': 1.5.1 - '@inquirer/password@2.1.17': + '@inquirer/password@2.1.20': dependencies: - '@inquirer/core': 9.0.5 + '@inquirer/core': 9.0.8 '@inquirer/type': 1.5.1 ansi-escapes: 4.3.2 - '@inquirer/prompts@5.3.2': + '@inquirer/prompts@5.3.6': dependencies: - '@inquirer/checkbox': 2.4.2 - '@inquirer/confirm': 3.1.17 - '@inquirer/editor': 2.1.17 - '@inquirer/expand': 2.1.17 - '@inquirer/input': 2.2.4 - '@inquirer/number': 1.0.5 - '@inquirer/password': 2.1.17 - '@inquirer/rawlist': 2.1.17 - '@inquirer/search': 1.0.2 - '@inquirer/select': 2.4.2 + '@inquirer/checkbox': 2.4.5 + '@inquirer/confirm': 3.1.20 + '@inquirer/editor': 2.1.20 + '@inquirer/expand': 2.1.20 + '@inquirer/input': 2.2.7 + '@inquirer/number': 1.0.8 + '@inquirer/password': 2.1.20 + '@inquirer/rawlist': 2.2.2 + '@inquirer/search': 1.0.5 + '@inquirer/select': 2.4.5 - '@inquirer/rawlist@2.1.17': + '@inquirer/rawlist@2.2.2': dependencies: - '@inquirer/core': 9.0.5 + '@inquirer/core': 9.0.8 '@inquirer/type': 1.5.1 yoctocolors-cjs: 2.1.2 - '@inquirer/search@1.0.2': + '@inquirer/search@1.0.5': dependencies: - '@inquirer/core': 9.0.5 + '@inquirer/core': 9.0.8 '@inquirer/figures': 1.0.5 '@inquirer/type': 1.5.1 yoctocolors-cjs: 2.1.2 - '@inquirer/select@2.4.2': + '@inquirer/select@2.4.5': dependencies: - '@inquirer/core': 9.0.5 + '@inquirer/core': 9.0.8 '@inquirer/figures': 1.0.5 '@inquirer/type': 1.5.1 ansi-escapes: 4.3.2 @@ -11674,7 +11984,7 @@ snapshots: '@jridgewell/resolve-uri': 3.1.2 '@jridgewell/sourcemap-codec': 1.4.15 - '@lerna/create@8.1.6(babel-plugin-macros@3.1.0)(encoding@0.1.13)(typescript@5.5.4)': + '@lerna/create@8.1.7(babel-plugin-macros@3.1.0)(encoding@0.1.13)(typescript@5.5.4)': dependencies: '@npmcli/arborist': 7.5.3 '@npmcli/package-json': 5.2.0 @@ -11734,6 +12044,7 @@ snapshots: slash: 3.0.0 ssri: 10.0.6 string-width: 4.2.3 + strip-ansi: 6.0.1 strong-log-transformer: 2.1.0 tar: 6.2.1 temp-dir: 1.0.0 @@ -11756,8 +12067,6 @@ snapshots: - supports-color - typescript - '@mswjs/cookies@1.1.1': {} - '@mswjs/interceptors@0.29.1': dependencies: '@open-draft/deferred-promise': 2.2.0 @@ -11769,7 +12078,7 @@ snapshots: '@mui/base@5.0.0-beta.40(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': dependencies: - '@babel/runtime': 7.24.8 + '@babel/runtime': 7.25.0 '@floating-ui/react-dom': 2.1.1(react-dom@18.3.1(react@18.3.1))(react@18.3.1) '@mui/types': 7.2.15(@types/react@18.3.3) '@mui/utils': 5.16.4(@types/react@18.3.3)(react@18.3.1) @@ -11783,7 +12092,7 @@ snapshots: '@mui/base@5.0.0-beta.51(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': dependencies: - '@babel/runtime': 7.24.8 + '@babel/runtime': 7.25.0 '@floating-ui/react-dom': 2.1.1(react-dom@18.3.1(react@18.3.1))(react@18.3.1) '@mui/types': 7.2.15(@types/react@18.3.3) '@mui/utils': 6.0.0-alpha.13(@types/react@18.3.3)(react@18.3.1) @@ -11797,7 +12106,7 @@ snapshots: '@mui/base@5.0.0-beta.55(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': dependencies: - '@babel/runtime': 7.24.8 + '@babel/runtime': 7.25.0 '@floating-ui/react-dom': 2.1.1(react-dom@18.3.1(react@18.3.1))(react@18.3.1) '@mui/types': 7.2.15(@types/react@18.3.3) '@mui/utils': 6.0.0-beta.3(@types/react@18.3.3)(react@18.3.1) @@ -11813,18 +12122,19 @@ snapshots: '@mui/core-downloads-tracker@6.0.0-dev.240424162023-9968b4889d': {} - '@mui/docs@6.0.0-beta.3(5oajvorg5gjywoyagbfdqjz7vu)': + '@mui/docs@6.0.0-beta.4(663ct36pfwwwwq4g3ctfmmp24e)': dependencies: - '@babel/runtime': 7.24.8 + '@babel/runtime': 7.25.0 '@mui/base': 5.0.0-beta.40(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@mui/icons-material': 6.0.0-beta.3(@mui/material@6.0.0-beta.3(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@emotion/styled@11.13.0(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(@types/react@18.3.3)(react@18.3.1) + '@mui/icons-material': 6.0.0-beta.4(@mui/material@6.0.0-beta.4(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@emotion/styled@11.13.0(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(@types/react@18.3.3)(react@18.3.1) '@mui/internal-markdown': 1.0.8 - '@mui/material': 6.0.0-beta.3(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@emotion/styled@11.13.0(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@mui/system': 6.0.0-beta.3(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@emotion/styled@11.13.0(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(react@18.3.1) + '@mui/material': 6.0.0-beta.4(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@emotion/styled@11.13.0(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@mui/system': 6.0.0-beta.4(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@emotion/styled@11.13.0(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(react@18.3.1) chai: 5.1.1 clipboard-copy: 4.0.1 clsx: 2.1.1 - next: 14.2.5(@babel/core@7.24.9)(@opentelemetry/api@1.9.0)(@playwright/test@1.45.3)(babel-plugin-macros@3.1.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + csstype: 3.1.3 + next: 14.2.5(@babel/core@7.25.2)(@opentelemetry/api@1.9.0)(@playwright/test@1.45.3)(babel-plugin-macros@3.1.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) nprogress: 0.2.0 prop-types: 15.8.1 react: 18.3.1 @@ -11833,7 +12143,7 @@ snapshots: '@mui/icons-material@5.16.4(@mui/material@5.16.4(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@emotion/styled@11.13.0(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(@types/react@18.3.3)(react@18.3.1)': dependencies: - '@babel/runtime': 7.24.8 + '@babel/runtime': 7.25.0 '@mui/material': 5.16.4(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@emotion/styled@11.13.0(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) react: 18.3.1 optionalDependencies: @@ -11841,39 +12151,39 @@ snapshots: '@mui/icons-material@6.0.0-beta.2(@mui/material@6.0.0-beta.2(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@emotion/styled@11.13.0(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(@types/react@18.3.3)(react@18.3.1)': dependencies: - '@babel/runtime': 7.24.8 + '@babel/runtime': 7.25.0 '@mui/material': 6.0.0-beta.2(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@emotion/styled@11.13.0(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) react: 18.3.1 optionalDependencies: '@types/react': 18.3.3 - '@mui/icons-material@6.0.0-beta.3(@mui/material@6.0.0-beta.3(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@emotion/styled@11.13.0(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(@types/react@18.3.3)(react@18.3.1)': + '@mui/icons-material@6.0.0-beta.4(@mui/material@6.0.0-beta.4(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@emotion/styled@11.13.0(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(@types/react@18.3.3)(react@18.3.1)': dependencies: - '@babel/runtime': 7.24.8 - '@mui/material': 6.0.0-beta.3(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@emotion/styled@11.13.0(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@babel/runtime': 7.25.0 + '@mui/material': 6.0.0-beta.4(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@emotion/styled@11.13.0(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) react: 18.3.1 optionalDependencies: '@types/react': 18.3.3 '@mui/internal-docs-utils@1.0.8': dependencies: - rimraf: 5.0.8 + rimraf: 5.0.10 typescript: 5.5.4 '@mui/internal-markdown@1.0.8': dependencies: - '@babel/runtime': 7.24.8 + '@babel/runtime': 7.25.0 lodash: 4.17.21 marked: 13.0.2 prismjs: 1.29.0 '@mui/internal-scripts@1.0.13': dependencies: - '@babel/core': 7.24.9 - '@babel/plugin-syntax-class-properties': 7.12.13(@babel/core@7.24.9) - '@babel/plugin-syntax-jsx': 7.24.7(@babel/core@7.24.9) - '@babel/plugin-syntax-typescript': 7.24.7(@babel/core@7.24.9) - '@babel/types': 7.24.9 + '@babel/core': 7.25.2 + '@babel/plugin-syntax-class-properties': 7.12.13(@babel/core@7.25.2) + '@babel/plugin-syntax-jsx': 7.24.7(@babel/core@7.25.2) + '@babel/plugin-syntax-typescript': 7.24.7(@babel/core@7.25.2) + '@babel/types': 7.25.2 '@mui/internal-docs-utils': 1.0.8 doctrine: 3.0.0 lodash: 4.17.21 @@ -11884,7 +12194,7 @@ snapshots: '@mui/joy@5.0.0-beta.46(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@emotion/styled@11.13.0(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': dependencies: - '@babel/runtime': 7.24.8 + '@babel/runtime': 7.25.0 '@mui/base': 5.0.0-beta.51(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) '@mui/core-downloads-tracker': 6.0.0-dev.240424162023-9968b4889d '@mui/system': 6.0.0-alpha.13(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@emotion/styled@11.13.0(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(react@18.3.1) @@ -11899,9 +12209,26 @@ snapshots: '@emotion/styled': 11.13.0(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(react@18.3.1) '@types/react': 18.3.3 + '@mui/lab@5.0.0-alpha.170(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@emotion/styled@11.13.0(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(react@18.3.1))(@mui/material@5.16.4(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@emotion/styled@11.13.0(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': + dependencies: + '@babel/runtime': 7.25.0 + '@mui/base': 5.0.0-beta.40(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@mui/material': 5.16.4(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@emotion/styled@11.13.0(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@mui/system': 5.16.4(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@emotion/styled@11.13.0(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(react@18.3.1) + '@mui/types': 7.2.15(@types/react@18.3.3) + '@mui/utils': 5.16.4(@types/react@18.3.3)(react@18.3.1) + clsx: 2.1.1 + prop-types: 15.8.1 + react: 18.3.1 + react-dom: 18.3.1(react@18.3.1) + optionalDependencies: + '@emotion/react': 11.13.0(@types/react@18.3.3)(react@18.3.1) + '@emotion/styled': 11.13.0(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(react@18.3.1) + '@types/react': 18.3.3 + '@mui/lab@5.0.0-alpha.172(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@emotion/styled@11.13.0(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(react@18.3.1))(@mui/material@5.16.4(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@emotion/styled@11.13.0(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': dependencies: - '@babel/runtime': 7.24.8 + '@babel/runtime': 7.25.0 '@mui/base': 5.0.0-beta.40(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) '@mui/material': 5.16.4(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@emotion/styled@11.13.0(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) '@mui/system': 5.16.4(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@emotion/styled@11.13.0(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(react@18.3.1) @@ -11918,7 +12245,7 @@ snapshots: '@mui/lab@5.0.0-alpha.172(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@emotion/styled@11.13.0(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(react@18.3.1))(@mui/material@6.0.0-beta.2(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@emotion/styled@11.13.0(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': dependencies: - '@babel/runtime': 7.24.8 + '@babel/runtime': 7.25.0 '@mui/base': 5.0.0-beta.40(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) '@mui/material': 6.0.0-beta.2(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@emotion/styled@11.13.0(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) '@mui/system': 5.16.4(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@emotion/styled@11.13.0(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(react@18.3.1) @@ -11933,14 +12260,14 @@ snapshots: '@emotion/styled': 11.13.0(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(react@18.3.1) '@types/react': 18.3.3 - '@mui/lab@6.0.0-beta.3(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@emotion/styled@11.13.0(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(react@18.3.1))(@mui/material@6.0.0-beta.3(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@emotion/styled@11.13.0(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': + '@mui/lab@6.0.0-beta.4(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@emotion/styled@11.13.0(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(react@18.3.1))(@mui/material@6.0.0-beta.4(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@emotion/styled@11.13.0(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': dependencies: - '@babel/runtime': 7.24.8 + '@babel/runtime': 7.25.0 '@mui/base': 5.0.0-beta.55(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@mui/material': 6.0.0-beta.3(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@emotion/styled@11.13.0(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@mui/system': 6.0.0-beta.3(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@emotion/styled@11.13.0(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(react@18.3.1) + '@mui/material': 6.0.0-beta.4(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@emotion/styled@11.13.0(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@mui/system': 6.0.0-beta.4(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@emotion/styled@11.13.0(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(react@18.3.1) '@mui/types': 7.2.15(@types/react@18.3.3) - '@mui/utils': 6.0.0-beta.3(@types/react@18.3.3)(react@18.3.1) + '@mui/utils': 6.0.0-beta.4(@types/react@18.3.3)(react@18.3.1) clsx: 2.1.1 prop-types: 15.8.1 react: 18.3.1 @@ -11950,22 +12277,22 @@ snapshots: '@emotion/styled': 11.13.0(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(react@18.3.1) '@types/react': 18.3.3 - '@mui/material-nextjs@5.16.4(@emotion/cache@11.13.1)(@emotion/server@11.11.0)(@mui/material@5.16.4(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@emotion/styled@11.13.0(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(@types/react@18.3.3)(next@14.2.5(@babel/core@7.24.9)(@opentelemetry/api@1.9.0)(@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)': + '@mui/material-nextjs@5.16.4(@emotion/cache@11.13.1)(@emotion/server@11.11.0)(@mui/material@5.16.4(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@emotion/styled@11.13.0(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(@types/react@18.3.3)(next@14.2.5(@babel/core@7.25.2)(@opentelemetry/api@1.9.0)(@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)': dependencies: - '@babel/runtime': 7.24.8 + '@babel/runtime': 7.25.0 '@mui/material': 5.16.4(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@emotion/styled@11.13.0(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - next: 14.2.5(@babel/core@7.24.9)(@opentelemetry/api@1.9.0)(@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: 14.2.5(@babel/core@7.25.2)(@opentelemetry/api@1.9.0)(@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 optionalDependencies: '@emotion/cache': 11.13.1 '@emotion/server': 11.11.0 '@types/react': 18.3.3 - '@mui/material-nextjs@6.0.0-beta.3(@emotion/cache@11.13.1)(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@emotion/server@11.11.0)(@types/react@18.3.3)(next@14.2.5(@babel/core@7.24.9)(@opentelemetry/api@1.9.0)(@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)': + '@mui/material-nextjs@6.0.0-beta.4(@emotion/cache@11.13.1)(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@emotion/server@11.11.0)(@types/react@18.3.3)(next@14.2.5(@babel/core@7.25.2)(@opentelemetry/api@1.9.0)(@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)': dependencies: - '@babel/runtime': 7.24.8 + '@babel/runtime': 7.25.0 '@emotion/react': 11.13.0(@types/react@18.3.3)(react@18.3.1) - next: 14.2.5(@babel/core@7.24.9)(@opentelemetry/api@1.9.0)(@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: 14.2.5(@babel/core@7.25.2)(@opentelemetry/api@1.9.0)(@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 optionalDependencies: '@emotion/cache': 11.13.1 @@ -11974,7 +12301,7 @@ snapshots: '@mui/material@5.16.4(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@emotion/styled@11.13.0(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': dependencies: - '@babel/runtime': 7.24.8 + '@babel/runtime': 7.25.0 '@mui/core-downloads-tracker': 5.16.4 '@mui/system': 5.16.4(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@emotion/styled@11.13.0(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(react@18.3.1) '@mui/types': 7.2.15(@types/react@18.3.3) @@ -11995,7 +12322,7 @@ snapshots: '@mui/material@6.0.0-beta.2(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@emotion/styled@11.13.0(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': dependencies: - '@babel/runtime': 7.24.8 + '@babel/runtime': 7.25.0 '@mui/core-downloads-tracker': 6.0.0-dev.240424162023-9968b4889d '@mui/system': 6.0.0-beta.1(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@emotion/styled@11.13.0(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(react@18.3.1) '@mui/types': 7.2.15(@types/react@18.3.3) @@ -12014,13 +12341,13 @@ snapshots: '@emotion/styled': 11.13.0(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(react@18.3.1) '@types/react': 18.3.3 - '@mui/material@6.0.0-beta.3(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@emotion/styled@11.13.0(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': + '@mui/material@6.0.0-beta.4(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@emotion/styled@11.13.0(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': dependencies: - '@babel/runtime': 7.24.8 + '@babel/runtime': 7.25.0 '@mui/core-downloads-tracker': 6.0.0-dev.240424162023-9968b4889d - '@mui/system': 6.0.0-beta.3(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@emotion/styled@11.13.0(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(react@18.3.1) + '@mui/system': 6.0.0-beta.4(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@emotion/styled@11.13.0(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(react@18.3.1) '@mui/types': 7.2.15(@types/react@18.3.3) - '@mui/utils': 6.0.0-beta.3(@types/react@18.3.3)(react@18.3.1) + '@mui/utils': 6.0.0-beta.4(@types/react@18.3.3)(react@18.3.1) '@popperjs/core': 2.11.8 '@types/react-transition-group': 4.4.10 clsx: 2.1.1 @@ -12035,7 +12362,7 @@ snapshots: '@emotion/styled': 11.13.0(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(react@18.3.1) '@types/react': 18.3.3 - '@mui/monorepo@https://codeload.github.com/mui/material-ui/tar.gz/d69604d3feb1dd1dd9b9bf3398c08237e77dafa6(encoding@0.1.13)': + '@mui/monorepo@https://codeload.github.com/mui/material-ui/tar.gz/85a3b55d22570881db6ac1b99181ef79c18fc58d(encoding@0.1.13)': dependencies: '@googleapis/sheets': 8.0.0(encoding@0.1.13) '@netlify/functions': 2.8.1 @@ -12051,7 +12378,7 @@ snapshots: '@mui/private-theming@5.16.5(@types/react@18.3.3)(react@18.3.1)': dependencies: - '@babel/runtime': 7.24.8 + '@babel/runtime': 7.25.0 '@mui/utils': 5.16.5(@types/react@18.3.3)(react@18.3.1) prop-types: 15.8.1 react: 18.3.1 @@ -12060,7 +12387,7 @@ snapshots: '@mui/private-theming@6.0.0-alpha.13(@types/react@18.3.3)(react@18.3.1)': dependencies: - '@babel/runtime': 7.24.8 + '@babel/runtime': 7.25.0 '@mui/utils': 6.0.0-alpha.13(@types/react@18.3.3)(react@18.3.1) prop-types: 15.8.1 react: 18.3.1 @@ -12069,17 +12396,17 @@ snapshots: '@mui/private-theming@6.0.0-beta.1(@types/react@18.3.3)(react@18.3.1)': dependencies: - '@babel/runtime': 7.24.8 + '@babel/runtime': 7.25.0 '@mui/utils': 6.0.0-beta.1(@types/react@18.3.3)(react@18.3.1) prop-types: 15.8.1 react: 18.3.1 optionalDependencies: '@types/react': 18.3.3 - '@mui/private-theming@6.0.0-beta.3(@types/react@18.3.3)(react@18.3.1)': + '@mui/private-theming@6.0.0-beta.4(@types/react@18.3.3)(react@18.3.1)': dependencies: - '@babel/runtime': 7.24.8 - '@mui/utils': 6.0.0-beta.3(@types/react@18.3.3)(react@18.3.1) + '@babel/runtime': 7.25.0 + '@mui/utils': 6.0.0-beta.4(@types/react@18.3.3)(react@18.3.1) prop-types: 15.8.1 react: 18.3.1 optionalDependencies: @@ -12087,7 +12414,7 @@ snapshots: '@mui/styled-engine@5.16.4(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@emotion/styled@11.13.0(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(react@18.3.1))(react@18.3.1)': dependencies: - '@babel/runtime': 7.24.8 + '@babel/runtime': 7.25.0 '@emotion/cache': 11.13.1 csstype: 3.1.3 prop-types: 15.8.1 @@ -12098,7 +12425,7 @@ snapshots: '@mui/styled-engine@6.0.0-alpha.13(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@emotion/styled@11.13.0(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(react@18.3.1))(react@18.3.1)': dependencies: - '@babel/runtime': 7.24.8 + '@babel/runtime': 7.25.0 '@emotion/cache': 11.13.1 csstype: 3.1.3 prop-types: 15.8.1 @@ -12109,7 +12436,7 @@ snapshots: '@mui/styled-engine@6.0.0-beta.1(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@emotion/styled@11.13.0(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(react@18.3.1))(react@18.3.1)': dependencies: - '@babel/runtime': 7.24.8 + '@babel/runtime': 7.25.0 '@emotion/cache': 11.13.1 csstype: 3.1.3 prop-types: 15.8.1 @@ -12118,9 +12445,9 @@ snapshots: '@emotion/react': 11.13.0(@types/react@18.3.3)(react@18.3.1) '@emotion/styled': 11.13.0(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(react@18.3.1) - '@mui/styled-engine@6.0.0-beta.3(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@emotion/styled@11.13.0(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(react@18.3.1))(react@18.3.1)': + '@mui/styled-engine@6.0.0-beta.4(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@emotion/styled@11.13.0(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(react@18.3.1))(react@18.3.1)': dependencies: - '@babel/runtime': 7.24.8 + '@babel/runtime': 7.25.0 '@emotion/cache': 11.13.1 csstype: 3.1.3 prop-types: 15.8.1 @@ -12129,13 +12456,13 @@ snapshots: '@emotion/react': 11.13.0(@types/react@18.3.3)(react@18.3.1) '@emotion/styled': 11.13.0(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(react@18.3.1) - '@mui/styles@6.0.0-beta.3(@types/react@18.3.3)(react@18.3.1)': + '@mui/styles@6.0.0-beta.4(@types/react@18.3.3)(react@18.3.1)': dependencies: - '@babel/runtime': 7.24.8 + '@babel/runtime': 7.25.0 '@emotion/hash': 0.9.2 - '@mui/private-theming': 6.0.0-beta.3(@types/react@18.3.3)(react@18.3.1) + '@mui/private-theming': 6.0.0-beta.4(@types/react@18.3.3)(react@18.3.1) '@mui/types': 7.2.15(@types/react@18.3.3) - '@mui/utils': 6.0.0-beta.3(@types/react@18.3.3)(react@18.3.1) + '@mui/utils': 6.0.0-beta.4(@types/react@18.3.3)(react@18.3.1) clsx: 2.1.1 csstype: 3.1.3 hoist-non-react-statics: 3.3.2 @@ -12154,7 +12481,7 @@ snapshots: '@mui/system@5.16.4(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@emotion/styled@11.13.0(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(react@18.3.1)': dependencies: - '@babel/runtime': 7.24.8 + '@babel/runtime': 7.25.0 '@mui/private-theming': 5.16.5(@types/react@18.3.3)(react@18.3.1) '@mui/styled-engine': 5.16.4(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@emotion/styled@11.13.0(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(react@18.3.1))(react@18.3.1) '@mui/types': 7.2.15(@types/react@18.3.3) @@ -12170,7 +12497,7 @@ snapshots: '@mui/system@5.16.5(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@emotion/styled@11.13.0(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(react@18.3.1)': dependencies: - '@babel/runtime': 7.24.8 + '@babel/runtime': 7.25.0 '@mui/private-theming': 5.16.5(@types/react@18.3.3)(react@18.3.1) '@mui/styled-engine': 5.16.4(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@emotion/styled@11.13.0(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(react@18.3.1))(react@18.3.1) '@mui/types': 7.2.15(@types/react@18.3.3) @@ -12186,7 +12513,7 @@ snapshots: '@mui/system@6.0.0-alpha.13(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@emotion/styled@11.13.0(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(react@18.3.1)': dependencies: - '@babel/runtime': 7.24.8 + '@babel/runtime': 7.25.0 '@mui/private-theming': 6.0.0-alpha.13(@types/react@18.3.3)(react@18.3.1) '@mui/styled-engine': 6.0.0-alpha.13(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@emotion/styled@11.13.0(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(react@18.3.1))(react@18.3.1) '@mui/types': 7.2.15(@types/react@18.3.3) @@ -12202,7 +12529,7 @@ snapshots: '@mui/system@6.0.0-beta.1(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@emotion/styled@11.13.0(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(react@18.3.1)': dependencies: - '@babel/runtime': 7.24.8 + '@babel/runtime': 7.25.0 '@mui/private-theming': 6.0.0-beta.1(@types/react@18.3.3)(react@18.3.1) '@mui/styled-engine': 6.0.0-beta.1(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@emotion/styled@11.13.0(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(react@18.3.1))(react@18.3.1) '@mui/types': 7.2.15(@types/react@18.3.3) @@ -12216,13 +12543,13 @@ snapshots: '@emotion/styled': 11.13.0(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(react@18.3.1) '@types/react': 18.3.3 - '@mui/system@6.0.0-beta.3(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@emotion/styled@11.13.0(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(react@18.3.1)': + '@mui/system@6.0.0-beta.4(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@emotion/styled@11.13.0(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(react@18.3.1)': dependencies: - '@babel/runtime': 7.24.8 - '@mui/private-theming': 6.0.0-beta.3(@types/react@18.3.3)(react@18.3.1) - '@mui/styled-engine': 6.0.0-beta.3(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@emotion/styled@11.13.0(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(react@18.3.1))(react@18.3.1) + '@babel/runtime': 7.25.0 + '@mui/private-theming': 6.0.0-beta.4(@types/react@18.3.3)(react@18.3.1) + '@mui/styled-engine': 6.0.0-beta.4(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@emotion/styled@11.13.0(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(react@18.3.1))(react@18.3.1) '@mui/types': 7.2.15(@types/react@18.3.3) - '@mui/utils': 6.0.0-beta.3(@types/react@18.3.3)(react@18.3.1) + '@mui/utils': 6.0.0-beta.4(@types/react@18.3.3)(react@18.3.1) clsx: 2.1.1 csstype: 3.1.3 prop-types: 15.8.1 @@ -12238,7 +12565,7 @@ snapshots: '@mui/utils@5.16.4(@types/react@18.3.3)(react@18.3.1)': dependencies: - '@babel/runtime': 7.24.8 + '@babel/runtime': 7.25.0 '@types/prop-types': 15.7.12 clsx: 2.1.1 prop-types: 15.8.1 @@ -12249,7 +12576,7 @@ snapshots: '@mui/utils@5.16.5(@types/react@18.3.3)(react@18.3.1)': dependencies: - '@babel/runtime': 7.24.8 + '@babel/runtime': 7.25.0 '@mui/types': 7.2.15(@types/react@18.3.3) '@types/prop-types': 15.7.12 clsx: 2.1.1 @@ -12261,7 +12588,7 @@ snapshots: '@mui/utils@6.0.0-alpha.13(@types/react@18.3.3)(react@18.3.1)': dependencies: - '@babel/runtime': 7.24.8 + '@babel/runtime': 7.25.0 '@types/prop-types': 15.7.12 prop-types: 15.8.1 react: 18.3.1 @@ -12271,7 +12598,7 @@ snapshots: '@mui/utils@6.0.0-beta.1(@types/react@18.3.3)(react@18.3.1)': dependencies: - '@babel/runtime': 7.24.8 + '@babel/runtime': 7.25.0 '@types/prop-types': 15.7.12 clsx: 2.1.1 prop-types: 15.8.1 @@ -12282,7 +12609,7 @@ snapshots: '@mui/utils@6.0.0-beta.3(@types/react@18.3.3)(react@18.3.1)': dependencies: - '@babel/runtime': 7.24.8 + '@babel/runtime': 7.25.0 '@mui/types': 7.2.15(@types/react@18.3.3) '@types/prop-types': 15.7.12 clsx: 2.1.1 @@ -12292,21 +12619,46 @@ snapshots: optionalDependencies: '@types/react': 18.3.3 - '@mui/x-charts@7.11.1(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@emotion/styled@11.13.0(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(react@18.3.1))(@mui/material@5.16.4(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@emotion/styled@11.13.0(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': + '@mui/utils@6.0.0-beta.4(@types/react@18.3.3)(react@18.3.1)': dependencies: - '@babel/runtime': 7.24.8 - '@mui/base': 5.0.0-beta.40(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@mui/material': 5.16.4(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@emotion/styled@11.13.0(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@mui/system': 5.16.5(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@emotion/styled@11.13.0(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(react@18.3.1) - '@mui/utils': 5.16.5(@types/react@18.3.3)(react@18.3.1) - '@react-spring/rafz': 9.7.3 - '@react-spring/web': 9.7.3(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@babel/runtime': 7.25.0 + '@mui/types': 7.2.15(@types/react@18.3.3) + '@types/prop-types': 15.7.12 clsx: 2.1.1 + prop-types: 15.8.1 + react: 18.3.1 + react-is: 18.3.1 + optionalDependencies: + '@types/react': 18.3.3 + + '@mui/x-charts-vendor@7.12.0': + dependencies: + '@babel/runtime': 7.25.0 + '@types/d3-color': 3.1.3 + '@types/d3-delaunay': 6.0.4 + '@types/d3-interpolate': 3.0.4 + '@types/d3-scale': 4.0.8 + '@types/d3-shape': 3.1.6 + '@types/d3-time': 3.0.3 d3-color: 3.1.0 d3-delaunay: 6.0.4 d3-interpolate: 3.0.1 d3-scale: 4.0.2 d3-shape: 3.2.0 + d3-time: 3.1.0 + delaunator: 5.0.1 + robust-predicates: 3.0.2 + + '@mui/x-charts@7.12.0(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@emotion/styled@11.13.0(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(react@18.3.1))(@mui/material@5.16.4(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@emotion/styled@11.13.0(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': + dependencies: + '@babel/runtime': 7.25.0 + '@mui/material': 5.16.4(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@emotion/styled@11.13.0(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@mui/system': 5.16.5(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@emotion/styled@11.13.0(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(react@18.3.1) + '@mui/utils': 5.16.5(@types/react@18.3.3)(react@18.3.1) + '@mui/x-charts-vendor': 7.12.0 + '@react-spring/rafz': 9.7.4 + '@react-spring/web': 9.7.4(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + clsx: 2.1.1 prop-types: 15.8.1 react: 18.3.1 react-dom: 18.3.1(react@18.3.1) @@ -12316,21 +12668,16 @@ snapshots: transitivePeerDependencies: - '@types/react' - '@mui/x-charts@7.11.1(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@emotion/styled@11.13.0(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(react@18.3.1))(@mui/material@6.0.0-beta.3(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@emotion/styled@11.13.0(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': + '@mui/x-charts@7.12.0(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@emotion/styled@11.13.0(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(react@18.3.1))(@mui/material@6.0.0-beta.4(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@emotion/styled@11.13.0(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': dependencies: - '@babel/runtime': 7.24.8 - '@mui/base': 5.0.0-beta.40(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@mui/material': 6.0.0-beta.3(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@emotion/styled@11.13.0(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@babel/runtime': 7.25.0 + '@mui/material': 6.0.0-beta.4(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@emotion/styled@11.13.0(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) '@mui/system': 5.16.5(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@emotion/styled@11.13.0(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(react@18.3.1) '@mui/utils': 5.16.5(@types/react@18.3.3)(react@18.3.1) - '@react-spring/rafz': 9.7.3 - '@react-spring/web': 9.7.3(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@mui/x-charts-vendor': 7.12.0 + '@react-spring/rafz': 9.7.4 + '@react-spring/web': 9.7.4(react-dom@18.3.1(react@18.3.1))(react@18.3.1) clsx: 2.1.1 - d3-color: 3.1.0 - d3-delaunay: 6.0.4 - d3-interpolate: 3.0.1 - d3-scale: 4.0.2 - d3-shape: 3.2.0 prop-types: 15.8.1 react: 18.3.1 react-dom: 18.3.1(react@18.3.1) @@ -12340,16 +12687,16 @@ snapshots: transitivePeerDependencies: - '@types/react' - '@mui/x-data-grid-premium@7.11.1(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@emotion/styled@11.13.0(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(react@18.3.1))(@mui/material@5.16.4(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@emotion/styled@11.13.0(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': + '@mui/x-data-grid-premium@7.12.0(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@emotion/styled@11.13.0(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(react@18.3.1))(@mui/material@5.16.4(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@emotion/styled@11.13.0(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': dependencies: - '@babel/runtime': 7.24.8 + '@babel/runtime': 7.25.0 '@mui/material': 5.16.4(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@emotion/styled@11.13.0(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) '@mui/system': 5.16.5(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@emotion/styled@11.13.0(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(react@18.3.1) '@mui/utils': 5.16.5(@types/react@18.3.3)(react@18.3.1) - '@mui/x-data-grid': 7.11.1(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@emotion/styled@11.13.0(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(react@18.3.1))(@mui/material@5.16.4(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@emotion/styled@11.13.0(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@mui/x-data-grid-pro': 7.11.1(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@emotion/styled@11.13.0(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(react@18.3.1))(@mui/material@5.16.4(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@emotion/styled@11.13.0(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@mui/x-internals': 7.11.1(@types/react@18.3.3)(react@18.3.1) - '@mui/x-license': 7.11.1(@types/react@18.3.3)(react@18.3.1) + '@mui/x-data-grid': 7.12.0(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@emotion/styled@11.13.0(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(react@18.3.1))(@mui/material@5.16.4(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@emotion/styled@11.13.0(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@mui/x-data-grid-pro': 7.12.0(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@emotion/styled@11.13.0(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(react@18.3.1))(@mui/material@5.16.4(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@emotion/styled@11.13.0(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@mui/x-internals': 7.12.0(@types/react@18.3.3)(react@18.3.1) + '@mui/x-license': 7.12.0(@types/react@18.3.3)(react@18.3.1) '@types/format-util': 1.0.4 clsx: 2.1.1 exceljs: 4.4.0 @@ -12362,15 +12709,15 @@ snapshots: - '@emotion/styled' - '@types/react' - '@mui/x-data-grid-pro@7.11.1(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@emotion/styled@11.13.0(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(react@18.3.1))(@mui/material@5.16.4(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@emotion/styled@11.13.0(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': + '@mui/x-data-grid-pro@7.12.0(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@emotion/styled@11.13.0(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(react@18.3.1))(@mui/material@5.16.4(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@emotion/styled@11.13.0(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': dependencies: - '@babel/runtime': 7.24.8 + '@babel/runtime': 7.25.0 '@mui/material': 5.16.4(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@emotion/styled@11.13.0(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) '@mui/system': 5.16.5(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@emotion/styled@11.13.0(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(react@18.3.1) '@mui/utils': 5.16.5(@types/react@18.3.3)(react@18.3.1) - '@mui/x-data-grid': 7.11.1(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@emotion/styled@11.13.0(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(react@18.3.1))(@mui/material@5.16.4(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@emotion/styled@11.13.0(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@mui/x-internals': 7.11.1(@types/react@18.3.3)(react@18.3.1) - '@mui/x-license': 7.11.1(@types/react@18.3.3)(react@18.3.1) + '@mui/x-data-grid': 7.12.0(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@emotion/styled@11.13.0(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(react@18.3.1))(@mui/material@5.16.4(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@emotion/styled@11.13.0(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@mui/x-internals': 7.12.0(@types/react@18.3.3)(react@18.3.1) + '@mui/x-license': 7.12.0(@types/react@18.3.3)(react@18.3.1) '@types/format-util': 1.0.4 clsx: 2.1.1 prop-types: 15.8.1 @@ -12382,13 +12729,13 @@ snapshots: - '@emotion/styled' - '@types/react' - '@mui/x-data-grid@7.11.1(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@emotion/styled@11.13.0(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(react@18.3.1))(@mui/material@5.16.4(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@emotion/styled@11.13.0(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': + '@mui/x-data-grid@7.12.0(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@emotion/styled@11.13.0(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(react@18.3.1))(@mui/material@5.16.4(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@emotion/styled@11.13.0(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': dependencies: - '@babel/runtime': 7.24.8 + '@babel/runtime': 7.25.0 '@mui/material': 5.16.4(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@emotion/styled@11.13.0(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) '@mui/system': 5.16.5(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@emotion/styled@11.13.0(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(react@18.3.1) '@mui/utils': 5.16.5(@types/react@18.3.3)(react@18.3.1) - '@mui/x-internals': 7.11.1(@types/react@18.3.3)(react@18.3.1) + '@mui/x-internals': 7.12.0(@types/react@18.3.3)(react@18.3.1) clsx: 2.1.1 prop-types: 15.8.1 react: 18.3.1 @@ -12399,15 +12746,14 @@ snapshots: - '@emotion/styled' - '@types/react' - '@mui/x-date-pickers-pro@7.11.1(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@emotion/styled@11.13.0(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(react@18.3.1))(@mui/material@5.16.4(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@emotion/styled@11.13.0(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(@types/react@18.3.3)(date-fns@2.30.0)(dayjs@1.11.12)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': + '@mui/x-date-pickers-pro@7.12.0(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@emotion/styled@11.13.0(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(react@18.3.1))(@mui/material@5.16.4(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@emotion/styled@11.13.0(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(@types/react@18.3.3)(date-fns@2.30.0)(dayjs@1.11.12)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': dependencies: - '@babel/runtime': 7.24.8 - '@mui/base': 5.0.0-beta.40(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@babel/runtime': 7.25.0 '@mui/material': 5.16.4(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@emotion/styled@11.13.0(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) '@mui/system': 5.16.5(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@emotion/styled@11.13.0(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(react@18.3.1) '@mui/utils': 5.16.5(@types/react@18.3.3)(react@18.3.1) - '@mui/x-date-pickers': 7.11.1(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@emotion/styled@11.13.0(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(react@18.3.1))(@mui/material@5.16.4(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@emotion/styled@11.13.0(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(@types/react@18.3.3)(date-fns@2.30.0)(dayjs@1.11.12)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@mui/x-license': 7.11.1(@types/react@18.3.3)(react@18.3.1) + '@mui/x-date-pickers': 7.12.0(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@emotion/styled@11.13.0(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(react@18.3.1))(@mui/material@5.16.4(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@emotion/styled@11.13.0(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(@types/react@18.3.3)(date-fns@2.30.0)(dayjs@1.11.12)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@mui/x-license': 7.12.0(@types/react@18.3.3)(react@18.3.1) clsx: 2.1.1 prop-types: 15.8.1 react: 18.3.1 @@ -12421,15 +12767,14 @@ snapshots: transitivePeerDependencies: - '@types/react' - '@mui/x-date-pickers-pro@7.11.1(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@emotion/styled@11.13.0(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(react@18.3.1))(@mui/material@6.0.0-beta.3(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@emotion/styled@11.13.0(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(@types/react@18.3.3)(date-fns-jalali@2.29.3-0)(date-fns@2.30.0)(dayjs@1.11.11)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': + '@mui/x-date-pickers-pro@7.12.0(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@emotion/styled@11.13.0(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(react@18.3.1))(@mui/material@6.0.0-beta.4(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@emotion/styled@11.13.0(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(@types/react@18.3.3)(date-fns-jalali@2.29.3-0)(date-fns@2.30.0)(dayjs@1.11.11)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': dependencies: - '@babel/runtime': 7.24.8 - '@mui/base': 5.0.0-beta.40(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@mui/material': 6.0.0-beta.3(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@emotion/styled@11.13.0(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@babel/runtime': 7.25.0 + '@mui/material': 6.0.0-beta.4(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@emotion/styled@11.13.0(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) '@mui/system': 5.16.5(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@emotion/styled@11.13.0(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(react@18.3.1) '@mui/utils': 5.16.5(@types/react@18.3.3)(react@18.3.1) - '@mui/x-date-pickers': 7.11.1(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@emotion/styled@11.13.0(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(react@18.3.1))(@mui/material@6.0.0-beta.3(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@emotion/styled@11.13.0(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(@types/react@18.3.3)(date-fns-jalali@2.29.3-0)(date-fns@2.30.0)(dayjs@1.11.11)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@mui/x-license': 7.11.1(@types/react@18.3.3)(react@18.3.1) + '@mui/x-date-pickers': 7.12.0(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@emotion/styled@11.13.0(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(react@18.3.1))(@mui/material@6.0.0-beta.4(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@emotion/styled@11.13.0(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(@types/react@18.3.3)(date-fns-jalali@2.29.3-0)(date-fns@2.30.0)(dayjs@1.11.11)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@mui/x-license': 7.12.0(@types/react@18.3.3)(react@18.3.1) clsx: 2.1.1 prop-types: 15.8.1 react: 18.3.1 @@ -12444,10 +12789,9 @@ snapshots: transitivePeerDependencies: - '@types/react' - '@mui/x-date-pickers@7.11.1(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@emotion/styled@11.13.0(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(react@18.3.1))(@mui/material@5.16.4(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@emotion/styled@11.13.0(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(@types/react@18.3.3)(date-fns@2.30.0)(dayjs@1.11.12)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': + '@mui/x-date-pickers@7.12.0(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@emotion/styled@11.13.0(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(react@18.3.1))(@mui/material@5.16.4(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@emotion/styled@11.13.0(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(@types/react@18.3.3)(date-fns@2.30.0)(dayjs@1.11.12)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': dependencies: - '@babel/runtime': 7.24.8 - '@mui/base': 5.0.0-beta.40(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@babel/runtime': 7.25.0 '@mui/material': 5.16.4(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@emotion/styled@11.13.0(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) '@mui/system': 5.16.5(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@emotion/styled@11.13.0(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(react@18.3.1) '@mui/utils': 5.16.5(@types/react@18.3.3)(react@18.3.1) @@ -12465,11 +12809,10 @@ snapshots: transitivePeerDependencies: - '@types/react' - '@mui/x-date-pickers@7.11.1(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@emotion/styled@11.13.0(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(react@18.3.1))(@mui/material@6.0.0-beta.3(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@emotion/styled@11.13.0(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(@types/react@18.3.3)(date-fns-jalali@2.29.3-0)(date-fns@2.30.0)(dayjs@1.11.11)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': + '@mui/x-date-pickers@7.12.0(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@emotion/styled@11.13.0(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(react@18.3.1))(@mui/material@6.0.0-beta.4(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@emotion/styled@11.13.0(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(@types/react@18.3.3)(date-fns-jalali@2.29.3-0)(date-fns@2.30.0)(dayjs@1.11.11)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': dependencies: - '@babel/runtime': 7.24.8 - '@mui/base': 5.0.0-beta.40(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@mui/material': 6.0.0-beta.3(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@emotion/styled@11.13.0(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@babel/runtime': 7.25.0 + '@mui/material': 6.0.0-beta.4(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@emotion/styled@11.13.0(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) '@mui/system': 5.16.5(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@emotion/styled@11.13.0(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(react@18.3.1) '@mui/utils': 5.16.5(@types/react@18.3.3)(react@18.3.1) '@types/react-transition-group': 4.4.10 @@ -12487,32 +12830,31 @@ snapshots: transitivePeerDependencies: - '@types/react' - '@mui/x-internals@7.11.1(@types/react@18.3.3)(react@18.3.1)': + '@mui/x-internals@7.12.0(@types/react@18.3.3)(react@18.3.1)': dependencies: - '@babel/runtime': 7.24.8 + '@babel/runtime': 7.25.0 '@mui/utils': 5.16.5(@types/react@18.3.3)(react@18.3.1) react: 18.3.1 transitivePeerDependencies: - '@types/react' - '@mui/x-license@7.11.1(@types/react@18.3.3)(react@18.3.1)': + '@mui/x-license@7.12.0(@types/react@18.3.3)(react@18.3.1)': dependencies: - '@babel/runtime': 7.24.8 + '@babel/runtime': 7.25.0 '@mui/utils': 5.16.5(@types/react@18.3.3)(react@18.3.1) react: 18.3.1 transitivePeerDependencies: - '@types/react' - '@mui/x-tree-view@7.11.1(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@emotion/styled@11.13.0(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(react@18.3.1))(@mui/material@5.16.4(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@emotion/styled@11.13.0(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': + '@mui/x-tree-view@7.12.0(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@emotion/styled@11.13.0(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(react@18.3.1))(@mui/material@5.16.4(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@emotion/styled@11.13.0(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': dependencies: - '@babel/runtime': 7.24.8 + '@babel/runtime': 7.25.0 '@emotion/react': 11.13.0(@types/react@18.3.3)(react@18.3.1) '@emotion/styled': 11.13.0(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(react@18.3.1) - '@mui/base': 5.0.0-beta.40(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) '@mui/material': 5.16.4(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@emotion/styled@11.13.0(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) '@mui/system': 5.16.5(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@emotion/styled@11.13.0(@emotion/react@11.13.0(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(react@18.3.1))(@types/react@18.3.3)(react@18.3.1) '@mui/utils': 5.16.5(@types/react@18.3.3)(react@18.3.1) - '@mui/x-internals': 7.11.1(@types/react@18.3.3)(react@18.3.1) + '@mui/x-internals': 7.12.0(@types/react@18.3.3)(react@18.3.1) '@types/react-transition-group': 4.4.10 clsx: 2.1.1 prop-types: 15.8.1 @@ -12535,10 +12877,6 @@ snapshots: '@next/env@14.2.5': {} - '@next/eslint-plugin-next@14.2.4': - dependencies: - glob: 10.3.10 - '@next/eslint-plugin-next@14.2.5': dependencies: glob: 10.3.10 @@ -12892,34 +13230,35 @@ snapshots: '@popperjs/core@2.11.8': {} - '@react-spring/animated@9.7.3(react@18.3.1)': + '@react-spring/animated@9.7.4(react@18.3.1)': dependencies: - '@react-spring/shared': 9.7.3(react@18.3.1) - '@react-spring/types': 9.7.3 + '@react-spring/shared': 9.7.4(react@18.3.1) + '@react-spring/types': 9.7.4 react: 18.3.1 - '@react-spring/core@9.7.3(react@18.3.1)': + '@react-spring/core@9.7.4(react@18.3.1)': dependencies: - '@react-spring/animated': 9.7.3(react@18.3.1) - '@react-spring/shared': 9.7.3(react@18.3.1) - '@react-spring/types': 9.7.3 + '@react-spring/animated': 9.7.4(react@18.3.1) + '@react-spring/shared': 9.7.4(react@18.3.1) + '@react-spring/types': 9.7.4 react: 18.3.1 - '@react-spring/rafz@9.7.3': {} + '@react-spring/rafz@9.7.4': {} - '@react-spring/shared@9.7.3(react@18.3.1)': + '@react-spring/shared@9.7.4(react@18.3.1)': dependencies: - '@react-spring/types': 9.7.3 + '@react-spring/rafz': 9.7.4 + '@react-spring/types': 9.7.4 react: 18.3.1 - '@react-spring/types@9.7.3': {} + '@react-spring/types@9.7.4': {} - '@react-spring/web@9.7.3(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': + '@react-spring/web@9.7.4(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': dependencies: - '@react-spring/animated': 9.7.3(react@18.3.1) - '@react-spring/core': 9.7.3(react@18.3.1) - '@react-spring/shared': 9.7.3(react@18.3.1) - '@react-spring/types': 9.7.3 + '@react-spring/animated': 9.7.4(react@18.3.1) + '@react-spring/core': 9.7.4(react@18.3.1) + '@react-spring/shared': 9.7.4(react@18.3.1) + '@react-spring/types': 9.7.4 react: 18.3.1 react-dom: 18.3.1(react@18.3.1) @@ -13060,18 +13399,18 @@ snapshots: '@slack/logger@3.0.0': dependencies: - '@types/node': 20.14.12 + '@types/node': 20.14.14 '@slack/logger@4.0.0': dependencies: - '@types/node': 20.14.12 + '@types/node': 20.14.14 '@slack/oauth@2.6.2': dependencies: '@slack/logger': 3.0.0 '@slack/web-api': 6.12.0 '@types/jsonwebtoken': 8.5.9 - '@types/node': 20.14.12 + '@types/node': 20.14.14 jsonwebtoken: 9.0.2 lodash.isstring: 4.0.1 transitivePeerDependencies: @@ -13081,7 +13420,7 @@ snapshots: dependencies: '@slack/logger': 3.0.0 '@slack/web-api': 6.12.0 - '@types/node': 20.14.12 + '@types/node': 20.14.14 '@types/ws': 7.4.7 eventemitter3: 5.0.1 finity: 0.5.4 @@ -13098,7 +13437,7 @@ snapshots: '@slack/logger': 3.0.0 '@slack/types': 2.12.0 '@types/is-stream': 1.1.0 - '@types/node': 20.14.12 + '@types/node': 20.14.14 axios: 1.7.2(debug@4.3.5) eventemitter3: 3.1.2 form-data: 2.5.1 @@ -13116,25 +13455,25 @@ snapshots: '@swc/counter': 0.1.3 tslib: 2.6.3 - '@tanstack/query-core@5.51.15': {} + '@tanstack/query-core@5.51.21': {} - '@tanstack/query-devtools@5.51.15': {} + '@tanstack/query-devtools@5.51.16': {} - '@tanstack/react-query-devtools@5.51.15(@tanstack/react-query@5.51.15(react@18.3.1))(react@18.3.1)': + '@tanstack/react-query-devtools@5.51.21(@tanstack/react-query@5.51.21(react@18.3.1))(react@18.3.1)': dependencies: - '@tanstack/query-devtools': 5.51.15 - '@tanstack/react-query': 5.51.15(react@18.3.1) + '@tanstack/query-devtools': 5.51.16 + '@tanstack/react-query': 5.51.21(react@18.3.1) react: 18.3.1 - '@tanstack/react-query@5.51.15(react@18.3.1)': + '@tanstack/react-query@5.51.21(react@18.3.1)': dependencies: - '@tanstack/query-core': 5.51.15 + '@tanstack/query-core': 5.51.21 react: 18.3.1 '@testing-library/dom@10.4.0': dependencies: '@babel/code-frame': 7.24.7 - '@babel/runtime': 7.24.8 + '@babel/runtime': 7.25.0 '@types/aria-query': 5.0.4 aria-query: 5.3.0 chalk: 4.1.2 @@ -13142,22 +13481,20 @@ snapshots: lz-string: 1.5.0 pretty-format: 27.5.1 - '@testing-library/jest-dom@6.4.6(vitest@2.0.4(@types/node@20.14.12)(@vitest/browser@2.0.4)(jsdom@24.1.0)(terser@5.31.1))': + '@testing-library/jest-dom@6.4.8': dependencies: '@adobe/css-tools': 4.4.0 - '@babel/runtime': 7.24.8 + '@babel/runtime': 7.25.0 aria-query: 5.3.0 chalk: 3.0.0 css.escape: 1.5.1 dom-accessibility-api: 0.6.3 lodash: 4.17.21 redent: 3.0.0 - optionalDependencies: - vitest: 2.0.4(@types/node@20.14.12)(@vitest/browser@2.0.4)(jsdom@24.1.0)(terser@5.31.1) '@testing-library/react@16.0.0(@testing-library/dom@10.4.0)(@types/react-dom@18.3.0)(@types/react@18.3.3)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': dependencies: - '@babel/runtime': 7.24.8 + '@babel/runtime': 7.25.0 '@testing-library/dom': 10.4.0 react: 18.3.1 react-dom: 18.3.1(react@18.3.1) @@ -13192,33 +13529,33 @@ snapshots: '@types/babel__core@7.20.5': dependencies: - '@babel/parser': 7.24.8 - '@babel/types': 7.24.9 + '@babel/parser': 7.25.3 + '@babel/types': 7.25.2 '@types/babel__generator': 7.6.8 '@types/babel__template': 7.4.4 '@types/babel__traverse': 7.20.6 '@types/babel__generator@7.6.8': dependencies: - '@babel/types': 7.24.9 + '@babel/types': 7.25.2 '@types/babel__template@7.4.4': dependencies: - '@babel/parser': 7.24.8 - '@babel/types': 7.24.9 + '@babel/parser': 7.25.3 + '@babel/types': 7.25.2 '@types/babel__traverse@7.20.6': dependencies: - '@babel/types': 7.24.9 + '@babel/types': 7.25.2 '@types/body-parser@1.19.5': dependencies: '@types/connect': 3.4.38 - '@types/node': 20.14.12 + '@types/node': 20.14.14 '@types/clean-css@4.2.11': dependencies: - '@types/node': 20.14.12 + '@types/node': 20.14.14 source-map: 0.6.1 '@types/compression@1.7.5': @@ -13228,22 +13565,24 @@ snapshots: '@types/connect-history-api-fallback@1.5.4': dependencies: '@types/express-serve-static-core': 4.19.5 - '@types/node': 20.14.12 + '@types/node': 20.14.14 '@types/connect@3.4.38': dependencies: - '@types/node': 20.14.12 + '@types/node': 20.14.14 '@types/cookie@0.6.0': {} '@types/cors@2.8.17': dependencies: - '@types/node': 20.14.12 + '@types/node': 20.14.14 '@types/d3-array@3.2.1': {} '@types/d3-color@3.1.3': {} + '@types/d3-delaunay@6.0.4': {} + '@types/d3-ease@3.0.2': {} '@types/d3-interpolate@3.0.4': @@ -13280,7 +13619,7 @@ snapshots: '@types/express-serve-static-core@4.19.5': dependencies: - '@types/node': 20.14.12 + '@types/node': 20.14.14 '@types/qs': 6.9.15 '@types/range-parser': 1.2.7 '@types/send': 0.17.4 @@ -13296,17 +13635,17 @@ snapshots: '@types/formidable@3.4.5': dependencies: - '@types/node': 20.14.12 + '@types/node': 20.14.14 '@types/fs-extra@11.0.4': dependencies: '@types/jsonfile': 6.1.4 - '@types/node': 20.14.12 + '@types/node': 20.14.14 '@types/glob@8.1.0': dependencies: '@types/minimatch': 5.1.2 - '@types/node': 20.14.12 + '@types/node': 20.14.14 '@types/gtag.js@0.0.20': {} @@ -13330,7 +13669,7 @@ snapshots: '@types/http-proxy@1.17.14': dependencies: - '@types/node': 20.14.12 + '@types/node': 20.14.14 '@types/inquirer@9.0.7': dependencies: @@ -13341,7 +13680,7 @@ snapshots: '@types/is-stream@1.1.0': dependencies: - '@types/node': 20.14.12 + '@types/node': 20.14.14 '@types/istanbul-lib-coverage@2.0.6': {} @@ -13351,11 +13690,11 @@ snapshots: '@types/jsonfile@6.1.4': dependencies: - '@types/node': 20.14.12 + '@types/node': 20.14.14 '@types/jsonwebtoken@8.5.9': dependencies: - '@types/node': 20.14.12 + '@types/node': 20.14.14 '@types/lodash-es@4.17.12': dependencies: @@ -13379,26 +13718,30 @@ snapshots: '@types/mute-stream@0.0.4': dependencies: - '@types/node': 20.14.12 + '@types/node': 20.14.14 '@types/node-fetch@2.6.11': dependencies: - '@types/node': 20.14.12 + '@types/node': 20.14.14 form-data: 4.0.0 '@types/node@14.18.63': {} - '@types/node@20.14.12': + '@types/node@20.14.14': dependencies: undici-types: 5.26.5 + '@types/node@22.1.0': + dependencies: + undici-types: 6.13.0 + '@types/normalize-package-data@2.4.4': {} '@types/parse-json@4.0.2': {} '@types/pg@8.11.6': dependencies: - '@types/node': 20.14.12 + '@types/node': 20.14.14 pg-protocol: 1.6.1 pg-types: 4.0.2 @@ -13415,7 +13758,7 @@ snapshots: '@types/eslint': 8.56.11 '@types/express': 4.17.21 '@types/html-webpack-plugin': 3.2.9 - '@types/node': 20.14.12 + '@types/node': 20.14.14 '@types/webpack': 4.41.38 '@types/webpack-dev-server': 3.11.6 transitivePeerDependencies: @@ -13455,7 +13798,7 @@ snapshots: '@types/readdir-glob@1.1.5': dependencies: - '@types/node': 20.14.12 + '@types/node': 20.14.14 '@types/relateurl@0.2.33': {} @@ -13468,14 +13811,14 @@ snapshots: '@types/send@0.17.4': dependencies: '@types/mime': 1.3.5 - '@types/node': 20.14.12 + '@types/node': 20.14.14 '@types/serialize-javascript@5.0.4': {} '@types/serve-static@1.15.7': dependencies: '@types/http-errors': 2.0.4 - '@types/node': 20.14.12 + '@types/node': 20.14.14 '@types/send': 0.17.4 '@types/sinon@17.0.3': @@ -13494,15 +13837,17 @@ snapshots: '@types/tar@6.1.13': dependencies: - '@types/node': 20.14.12 + '@types/node': 20.14.14 minipass: 4.2.8 '@types/through@0.0.33': dependencies: - '@types/node': 20.14.12 + '@types/node': 20.14.14 '@types/title@3.4.3': {} + '@types/tough-cookie@4.0.5': {} + '@types/tsscmp@1.0.2': {} '@types/uglify-js@3.17.5': @@ -13525,13 +13870,13 @@ snapshots: '@types/webpack-sources@3.2.3': dependencies: - '@types/node': 20.14.12 + '@types/node': 20.14.14 '@types/source-list-map': 0.1.6 source-map: 0.7.4 '@types/webpack@4.41.38': dependencies: - '@types/node': 20.14.12 + '@types/node': 20.14.14 '@types/tapable': 1.0.12 '@types/uglify-js': 3.17.5 '@types/webpack-sources': 3.2.3 @@ -13546,11 +13891,11 @@ snapshots: '@types/ws@7.4.7': dependencies: - '@types/node': 20.14.12 + '@types/node': 20.14.14 - '@types/ws@8.5.11': + '@types/ws@8.5.12': dependencies: - '@types/node': 20.14.12 + '@types/node': 20.14.14 '@types/yargs-parser@21.0.3': {} @@ -13558,51 +13903,38 @@ snapshots: dependencies: '@types/yargs-parser': 21.0.3 - '@typescript-eslint/eslint-plugin@7.14.1(@typescript-eslint/parser@7.14.1(eslint@8.57.0)(typescript@5.5.3))(eslint@8.57.0)(typescript@5.5.3)': + '@typescript-eslint/eslint-plugin@7.18.0(@typescript-eslint/parser@7.18.0(eslint@8.57.0)(typescript@5.5.4))(eslint@8.57.0)(typescript@5.5.4)': dependencies: '@eslint-community/regexpp': 4.11.0 - '@typescript-eslint/parser': 7.14.1(eslint@8.57.0)(typescript@5.5.3) - '@typescript-eslint/scope-manager': 7.14.1 - '@typescript-eslint/type-utils': 7.14.1(eslint@8.57.0)(typescript@5.5.3) - '@typescript-eslint/utils': 7.14.1(eslint@8.57.0)(typescript@5.5.3) - '@typescript-eslint/visitor-keys': 7.14.1 + '@typescript-eslint/parser': 7.18.0(eslint@8.57.0)(typescript@5.5.4) + '@typescript-eslint/scope-manager': 7.18.0 + '@typescript-eslint/type-utils': 7.18.0(eslint@8.57.0)(typescript@5.5.4) + '@typescript-eslint/utils': 7.18.0(eslint@8.57.0)(typescript@5.5.4) + '@typescript-eslint/visitor-keys': 7.18.0 eslint: 8.57.0 graphemer: 1.4.0 ignore: 5.3.1 natural-compare: 1.4.0 - ts-api-utils: 1.3.0(typescript@5.5.3) + ts-api-utils: 1.3.0(typescript@5.5.4) optionalDependencies: - typescript: 5.5.3 + typescript: 5.5.4 transitivePeerDependencies: - supports-color - '@typescript-eslint/experimental-utils@5.62.0(eslint@8.57.0)(typescript@5.5.3)': + '@typescript-eslint/experimental-utils@5.62.0(eslint@8.57.0)(typescript@5.5.4)': dependencies: - '@typescript-eslint/utils': 5.62.0(eslint@8.57.0)(typescript@5.5.3) + '@typescript-eslint/utils': 5.62.0(eslint@8.57.0)(typescript@5.5.4) eslint: 8.57.0 transitivePeerDependencies: - supports-color - typescript - '@typescript-eslint/parser@7.14.1(eslint@8.57.0)(typescript@5.5.3)': + '@typescript-eslint/parser@7.18.0(eslint@8.57.0)(typescript@5.5.4)': dependencies: - '@typescript-eslint/scope-manager': 7.14.1 - '@typescript-eslint/types': 7.14.1 - '@typescript-eslint/typescript-estree': 7.14.1(typescript@5.5.3) - '@typescript-eslint/visitor-keys': 7.14.1 - debug: 4.3.5 - eslint: 8.57.0 - optionalDependencies: - typescript: 5.5.3 - transitivePeerDependencies: - - supports-color - - '@typescript-eslint/parser@7.14.1(eslint@8.57.0)(typescript@5.5.4)': - dependencies: - '@typescript-eslint/scope-manager': 7.14.1 - '@typescript-eslint/types': 7.14.1 - '@typescript-eslint/typescript-estree': 7.14.1(typescript@5.5.4) - '@typescript-eslint/visitor-keys': 7.14.1 + '@typescript-eslint/scope-manager': 7.18.0 + '@typescript-eslint/types': 7.18.0 + '@typescript-eslint/typescript-estree': 7.18.0(typescript@5.5.4) + '@typescript-eslint/visitor-keys': 7.18.0 debug: 4.3.5 eslint: 8.57.0 optionalDependencies: @@ -13628,35 +13960,35 @@ snapshots: '@typescript-eslint/types': 5.62.0 '@typescript-eslint/visitor-keys': 5.62.0 - '@typescript-eslint/scope-manager@7.14.1': + '@typescript-eslint/scope-manager@7.18.0': dependencies: - '@typescript-eslint/types': 7.14.1 - '@typescript-eslint/visitor-keys': 7.14.1 + '@typescript-eslint/types': 7.18.0 + '@typescript-eslint/visitor-keys': 7.18.0 '@typescript-eslint/scope-manager@7.2.0': dependencies: '@typescript-eslint/types': 7.2.0 '@typescript-eslint/visitor-keys': 7.2.0 - '@typescript-eslint/type-utils@7.14.1(eslint@8.57.0)(typescript@5.5.3)': + '@typescript-eslint/type-utils@7.18.0(eslint@8.57.0)(typescript@5.5.4)': dependencies: - '@typescript-eslint/typescript-estree': 7.14.1(typescript@5.5.3) - '@typescript-eslint/utils': 7.14.1(eslint@8.57.0)(typescript@5.5.3) + '@typescript-eslint/typescript-estree': 7.18.0(typescript@5.5.4) + '@typescript-eslint/utils': 7.18.0(eslint@8.57.0)(typescript@5.5.4) debug: 4.3.5 eslint: 8.57.0 - ts-api-utils: 1.3.0(typescript@5.5.3) + ts-api-utils: 1.3.0(typescript@5.5.4) optionalDependencies: - typescript: 5.5.3 + typescript: 5.5.4 transitivePeerDependencies: - supports-color '@typescript-eslint/types@5.62.0': {} - '@typescript-eslint/types@7.14.1': {} + '@typescript-eslint/types@7.18.0': {} '@typescript-eslint/types@7.2.0': {} - '@typescript-eslint/typescript-estree@5.62.0(typescript@5.5.3)': + '@typescript-eslint/typescript-estree@5.62.0(typescript@5.5.4)': dependencies: '@typescript-eslint/types': 5.62.0 '@typescript-eslint/visitor-keys': 5.62.0 @@ -13664,31 +13996,16 @@ snapshots: globby: 11.1.0 is-glob: 4.0.3 semver: 7.6.3 - tsutils: 3.21.0(typescript@5.5.3) + tsutils: 3.21.0(typescript@5.5.4) optionalDependencies: - typescript: 5.5.3 - transitivePeerDependencies: - - supports-color - - '@typescript-eslint/typescript-estree@7.14.1(typescript@5.5.3)': - dependencies: - '@typescript-eslint/types': 7.14.1 - '@typescript-eslint/visitor-keys': 7.14.1 - debug: 4.3.5 - globby: 11.1.0 - is-glob: 4.0.3 - minimatch: 9.0.5 - semver: 7.6.3 - ts-api-utils: 1.3.0(typescript@5.5.3) - optionalDependencies: - typescript: 5.5.3 + typescript: 5.5.4 transitivePeerDependencies: - supports-color - '@typescript-eslint/typescript-estree@7.14.1(typescript@5.5.4)': + '@typescript-eslint/typescript-estree@7.18.0(typescript@5.5.4)': dependencies: - '@typescript-eslint/types': 7.14.1 - '@typescript-eslint/visitor-keys': 7.14.1 + '@typescript-eslint/types': 7.18.0 + '@typescript-eslint/visitor-keys': 7.18.0 debug: 4.3.5 globby: 11.1.0 is-glob: 4.0.3 @@ -13715,14 +14032,14 @@ snapshots: transitivePeerDependencies: - supports-color - '@typescript-eslint/utils@5.62.0(eslint@8.57.0)(typescript@5.5.3)': + '@typescript-eslint/utils@5.62.0(eslint@8.57.0)(typescript@5.5.4)': dependencies: '@eslint-community/eslint-utils': 4.4.0(eslint@8.57.0) '@types/json-schema': 7.0.15 '@types/semver': 7.5.8 '@typescript-eslint/scope-manager': 5.62.0 '@typescript-eslint/types': 5.62.0 - '@typescript-eslint/typescript-estree': 5.62.0(typescript@5.5.3) + '@typescript-eslint/typescript-estree': 5.62.0(typescript@5.5.4) eslint: 8.57.0 eslint-scope: 5.1.1 semver: 7.6.3 @@ -13730,12 +14047,12 @@ snapshots: - supports-color - typescript - '@typescript-eslint/utils@7.14.1(eslint@8.57.0)(typescript@5.5.3)': + '@typescript-eslint/utils@7.18.0(eslint@8.57.0)(typescript@5.5.4)': dependencies: '@eslint-community/eslint-utils': 4.4.0(eslint@8.57.0) - '@typescript-eslint/scope-manager': 7.14.1 - '@typescript-eslint/types': 7.14.1 - '@typescript-eslint/typescript-estree': 7.14.1(typescript@5.5.3) + '@typescript-eslint/scope-manager': 7.18.0 + '@typescript-eslint/types': 7.18.0 + '@typescript-eslint/typescript-estree': 7.18.0(typescript@5.5.4) eslint: 8.57.0 transitivePeerDependencies: - supports-color @@ -13746,9 +14063,9 @@ snapshots: '@typescript-eslint/types': 5.62.0 eslint-visitor-keys: 3.4.3 - '@typescript-eslint/visitor-keys@7.14.1': + '@typescript-eslint/visitor-keys@7.18.0': dependencies: - '@typescript-eslint/types': 7.14.1 + '@typescript-eslint/types': 7.18.0 eslint-visitor-keys: 3.4.3 '@typescript-eslint/visitor-keys@7.2.0': @@ -13758,26 +14075,26 @@ snapshots: '@ungap/structured-clone@1.2.0': {} - '@vitejs/plugin-react@4.3.1(vite@5.3.5(@types/node@20.14.12)(terser@5.31.1))': + '@vitejs/plugin-react@4.3.1(vite@5.3.5(@types/node@20.14.14)(terser@5.31.1))': dependencies: - '@babel/core': 7.24.9 - '@babel/plugin-transform-react-jsx-self': 7.24.7(@babel/core@7.24.9) - '@babel/plugin-transform-react-jsx-source': 7.24.7(@babel/core@7.24.9) + '@babel/core': 7.25.2 + '@babel/plugin-transform-react-jsx-self': 7.24.7(@babel/core@7.25.2) + '@babel/plugin-transform-react-jsx-source': 7.24.7(@babel/core@7.25.2) '@types/babel__core': 7.20.5 react-refresh: 0.14.2 - vite: 5.3.5(@types/node@20.14.12)(terser@5.31.1) + vite: 5.3.5(@types/node@20.14.14)(terser@5.31.1) transitivePeerDependencies: - supports-color - '@vitest/browser@2.0.4(playwright@1.45.3)(typescript@5.5.3)(vitest@2.0.4)': + '@vitest/browser@2.0.5(playwright@1.45.3)(typescript@5.5.4)(vitest@2.0.5)': dependencies: '@testing-library/dom': 10.4.0 '@testing-library/user-event': 14.5.2(@testing-library/dom@10.4.0) - '@vitest/utils': 2.0.4 + '@vitest/utils': 2.0.5 magic-string: 0.30.10 - msw: 2.3.1(typescript@5.5.3) + msw: 2.3.5(typescript@5.5.4) sirv: 2.0.4 - vitest: 2.0.4(@types/node@20.14.12)(@vitest/browser@2.0.4)(jsdom@24.1.0)(terser@5.31.1) + vitest: 2.0.5(@types/node@22.1.0)(@vitest/browser@2.0.5)(jsdom@24.1.1)(terser@5.31.1) ws: 8.18.0 optionalDependencies: playwright: 1.45.3 @@ -13786,24 +14103,7 @@ snapshots: - typescript - utf-8-validate - '@vitest/browser@2.0.4(playwright@1.45.3)(typescript@5.5.4)(vitest@2.0.4)': - dependencies: - '@testing-library/dom': 10.4.0 - '@testing-library/user-event': 14.5.2(@testing-library/dom@10.4.0) - '@vitest/utils': 2.0.4 - magic-string: 0.30.10 - msw: 2.3.1(typescript@5.5.4) - sirv: 2.0.4 - vitest: 2.0.4(@types/node@20.14.12)(@vitest/browser@2.0.4)(jsdom@24.1.0)(terser@5.31.1) - ws: 8.18.0 - optionalDependencies: - playwright: 1.45.3 - transitivePeerDependencies: - - bufferutil - - typescript - - utf-8-validate - - '@vitest/coverage-v8@2.0.4(vitest@2.0.4(@types/node@20.14.12)(@vitest/browser@2.0.4)(jsdom@24.1.0)(terser@5.31.1))': + '@vitest/coverage-v8@2.0.5(vitest@2.0.5(@types/node@20.14.14)(@vitest/browser@2.0.5)(jsdom@24.1.1)(terser@5.31.1))': dependencies: '@ampproject/remapping': 2.3.0 '@bcoe/v8-coverage': 0.2.3 @@ -13817,39 +14117,39 @@ snapshots: std-env: 3.7.0 test-exclude: 7.0.1 tinyrainbow: 1.2.0 - vitest: 2.0.4(@types/node@20.14.12)(@vitest/browser@2.0.4)(jsdom@24.1.0)(terser@5.31.1) + vitest: 2.0.5(@types/node@20.14.14)(@vitest/browser@2.0.5)(jsdom@24.1.1)(terser@5.31.1) transitivePeerDependencies: - supports-color - '@vitest/expect@2.0.4': + '@vitest/expect@2.0.5': dependencies: - '@vitest/spy': 2.0.4 - '@vitest/utils': 2.0.4 + '@vitest/spy': 2.0.5 + '@vitest/utils': 2.0.5 chai: 5.1.1 tinyrainbow: 1.2.0 - '@vitest/pretty-format@2.0.4': + '@vitest/pretty-format@2.0.5': dependencies: tinyrainbow: 1.2.0 - '@vitest/runner@2.0.4': + '@vitest/runner@2.0.5': dependencies: - '@vitest/utils': 2.0.4 + '@vitest/utils': 2.0.5 pathe: 1.1.2 - '@vitest/snapshot@2.0.4': + '@vitest/snapshot@2.0.5': dependencies: - '@vitest/pretty-format': 2.0.4 + '@vitest/pretty-format': 2.0.5 magic-string: 0.30.10 pathe: 1.1.2 - '@vitest/spy@2.0.4': + '@vitest/spy@2.0.5': dependencies: tinyspy: 3.0.0 - '@vitest/utils@2.0.4': + '@vitest/utils@2.0.5': dependencies: - '@vitest/pretty-format': 2.0.4 + '@vitest/pretty-format': 2.0.5 estree-walker: 3.0.3 loupe: 3.1.1 tinyrainbow: 1.2.0 @@ -14008,12 +14308,12 @@ snapshots: json-schema-traverse: 0.4.1 uri-js: 4.4.1 - ajv@8.16.0: + ajv@8.17.1: dependencies: fast-deep-equal: 3.1.3 + fast-uri: 3.0.1 json-schema-traverse: 1.0.0 require-from-string: 2.0.2 - uri-js: 4.4.1 algoliasearch@4.24.0: dependencies: @@ -14223,13 +14523,6 @@ snapshots: es-object-atoms: 1.0.0 is-string: 1.0.7 - array.prototype.toreversed@1.1.2: - dependencies: - call-bind: 1.0.7 - define-properties: 1.2.1 - es-abstract: 1.23.3 - es-shim-unscopables: 1.0.2 - array.prototype.tosorted@1.1.4: dependencies: call-bind: 1.0.7 @@ -14309,7 +14602,7 @@ snapshots: babel-plugin-macros@3.1.0: dependencies: - '@babel/runtime': 7.24.8 + '@babel/runtime': 7.25.0 cosmiconfig: 7.1.0 resolve: 1.22.8 @@ -14323,40 +14616,40 @@ snapshots: babel-plugin-optimize-clsx@2.6.2: dependencies: - '@babel/generator': 7.24.10 - '@babel/template': 7.24.7 - '@babel/types': 7.24.9 + '@babel/generator': 7.25.0 + '@babel/template': 7.25.0 + '@babel/types': 7.25.2 find-cache-dir: 3.3.2 lodash: 4.17.21 object-hash: 2.2.0 - babel-plugin-polyfill-corejs2@0.4.11(@babel/core@7.24.9): + babel-plugin-polyfill-corejs2@0.4.11(@babel/core@7.25.2): dependencies: - '@babel/compat-data': 7.24.8 - '@babel/core': 7.24.9 - '@babel/helper-define-polyfill-provider': 0.6.2(@babel/core@7.24.9) + '@babel/compat-data': 7.25.2 + '@babel/core': 7.25.2 + '@babel/helper-define-polyfill-provider': 0.6.2(@babel/core@7.25.2) semver: 6.3.1 transitivePeerDependencies: - supports-color - babel-plugin-polyfill-corejs3@0.10.4(@babel/core@7.24.9): + babel-plugin-polyfill-corejs3@0.10.4(@babel/core@7.25.2): dependencies: - '@babel/core': 7.24.9 - '@babel/helper-define-polyfill-provider': 0.6.2(@babel/core@7.24.9) + '@babel/core': 7.25.2 + '@babel/helper-define-polyfill-provider': 0.6.2(@babel/core@7.25.2) core-js-compat: 3.37.1 transitivePeerDependencies: - supports-color - babel-plugin-polyfill-regenerator@0.6.2(@babel/core@7.24.9): + babel-plugin-polyfill-regenerator@0.6.2(@babel/core@7.25.2): dependencies: - '@babel/core': 7.24.9 - '@babel/helper-define-polyfill-provider': 0.6.2(@babel/core@7.24.9) + '@babel/core': 7.25.2 + '@babel/helper-define-polyfill-provider': 0.6.2(@babel/core@7.25.2) transitivePeerDependencies: - supports-color babel-plugin-preval@5.1.0: dependencies: - '@babel/runtime': 7.24.8 + '@babel/runtime': 7.25.0 '@types/babel__core': 7.20.5 babel-plugin-macros: 3.1.0 require-from-string: 2.0.2 @@ -14965,7 +15258,7 @@ snapshots: css-vendor@2.0.8: dependencies: - '@babel/runtime': 7.24.8 + '@babel/runtime': 7.25.0 is-in-browser: 1.1.3 css.escape@1.5.1: {} @@ -15053,7 +15346,7 @@ snapshots: date-fns@2.30.0: dependencies: - '@babel/runtime': 7.24.8 + '@babel/runtime': 7.25.0 dateformat@3.0.3: {} @@ -15191,7 +15484,7 @@ snapshots: dom-helpers@5.2.1: dependencies: - '@babel/runtime': 7.24.8 + '@babel/runtime': 7.25.0 csstype: 3.1.3 dot-prop@5.3.0: @@ -15425,6 +15718,33 @@ snapshots: '@esbuild/win32-ia32': 0.21.5 '@esbuild/win32-x64': 0.21.5 + esbuild@0.23.0: + optionalDependencies: + '@esbuild/aix-ppc64': 0.23.0 + '@esbuild/android-arm': 0.23.0 + '@esbuild/android-arm64': 0.23.0 + '@esbuild/android-x64': 0.23.0 + '@esbuild/darwin-arm64': 0.23.0 + '@esbuild/darwin-x64': 0.23.0 + '@esbuild/freebsd-arm64': 0.23.0 + '@esbuild/freebsd-x64': 0.23.0 + '@esbuild/linux-arm': 0.23.0 + '@esbuild/linux-arm64': 0.23.0 + '@esbuild/linux-ia32': 0.23.0 + '@esbuild/linux-loong64': 0.23.0 + '@esbuild/linux-mips64el': 0.23.0 + '@esbuild/linux-ppc64': 0.23.0 + '@esbuild/linux-riscv64': 0.23.0 + '@esbuild/linux-s390x': 0.23.0 + '@esbuild/linux-x64': 0.23.0 + '@esbuild/netbsd-x64': 0.23.0 + '@esbuild/openbsd-arm64': 0.23.0 + '@esbuild/openbsd-x64': 0.23.0 + '@esbuild/sunos-x64': 0.23.0 + '@esbuild/win32-arm64': 0.23.0 + '@esbuild/win32-ia32': 0.23.0 + '@esbuild/win32-x64': 0.23.0 + escalade@3.1.2: {} escape-html@1.0.3: {} @@ -15435,46 +15755,46 @@ snapshots: escape-string-regexp@5.0.0: {} - eslint-config-airbnb-base@15.0.0(eslint-plugin-import@2.29.1(@typescript-eslint/parser@7.14.1(eslint@8.57.0)(typescript@5.5.3))(eslint-import-resolver-webpack@0.13.8)(eslint@8.57.0))(eslint@8.57.0): + eslint-config-airbnb-base@15.0.0(eslint-plugin-import@2.29.1(@typescript-eslint/parser@7.18.0(eslint@8.57.0)(typescript@5.5.4))(eslint-import-resolver-webpack@0.13.8)(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@7.14.1(eslint@8.57.0)(typescript@5.5.3))(eslint-import-resolver-webpack@0.13.8)(eslint@8.57.0) + eslint-plugin-import: 2.29.1(@typescript-eslint/parser@7.18.0(eslint@8.57.0)(typescript@5.5.4))(eslint-import-resolver-webpack@0.13.8)(eslint@8.57.0) object.assign: 4.1.5 object.entries: 1.1.8 semver: 6.3.1 - eslint-config-airbnb-typescript@18.0.0(@typescript-eslint/eslint-plugin@7.14.1(@typescript-eslint/parser@7.14.1(eslint@8.57.0)(typescript@5.5.3))(eslint@8.57.0)(typescript@5.5.3))(@typescript-eslint/parser@7.14.1(eslint@8.57.0)(typescript@5.5.3))(eslint-plugin-import@2.29.1(@typescript-eslint/parser@7.14.1(eslint@8.57.0)(typescript@5.5.3))(eslint-import-resolver-webpack@0.13.8)(eslint@8.57.0))(eslint@8.57.0): + eslint-config-airbnb-typescript@18.0.0(@typescript-eslint/eslint-plugin@7.18.0(@typescript-eslint/parser@7.18.0(eslint@8.57.0)(typescript@5.5.4))(eslint@8.57.0)(typescript@5.5.4))(@typescript-eslint/parser@7.18.0(eslint@8.57.0)(typescript@5.5.4))(eslint-plugin-import@2.29.1(@typescript-eslint/parser@7.18.0(eslint@8.57.0)(typescript@5.5.4))(eslint-import-resolver-webpack@0.13.8)(eslint@8.57.0))(eslint@8.57.0): dependencies: - '@typescript-eslint/eslint-plugin': 7.14.1(@typescript-eslint/parser@7.14.1(eslint@8.57.0)(typescript@5.5.3))(eslint@8.57.0)(typescript@5.5.3) - '@typescript-eslint/parser': 7.14.1(eslint@8.57.0)(typescript@5.5.3) + '@typescript-eslint/eslint-plugin': 7.18.0(@typescript-eslint/parser@7.18.0(eslint@8.57.0)(typescript@5.5.4))(eslint@8.57.0)(typescript@5.5.4) + '@typescript-eslint/parser': 7.18.0(eslint@8.57.0)(typescript@5.5.4) eslint: 8.57.0 - eslint-config-airbnb-base: 15.0.0(eslint-plugin-import@2.29.1(@typescript-eslint/parser@7.14.1(eslint@8.57.0)(typescript@5.5.3))(eslint-import-resolver-webpack@0.13.8)(eslint@8.57.0))(eslint@8.57.0) + eslint-config-airbnb-base: 15.0.0(eslint-plugin-import@2.29.1(@typescript-eslint/parser@7.18.0(eslint@8.57.0)(typescript@5.5.4))(eslint-import-resolver-webpack@0.13.8)(eslint@8.57.0))(eslint@8.57.0) transitivePeerDependencies: - eslint-plugin-import - eslint-config-airbnb@19.0.4(eslint-plugin-import@2.29.1(@typescript-eslint/parser@7.14.1(eslint@8.57.0)(typescript@5.5.3))(eslint-import-resolver-webpack@0.13.8)(eslint@8.57.0))(eslint-plugin-jsx-a11y@6.9.0(eslint@8.57.0))(eslint-plugin-react-hooks@4.6.2(eslint@8.57.0))(eslint-plugin-react@7.34.3(eslint@8.57.0))(eslint@8.57.0): + eslint-config-airbnb@19.0.4(eslint-plugin-import@2.29.1(@typescript-eslint/parser@7.18.0(eslint@8.57.0)(typescript@5.5.4))(eslint-import-resolver-webpack@0.13.8)(eslint@8.57.0))(eslint-plugin-jsx-a11y@6.9.0(eslint@8.57.0))(eslint-plugin-react-hooks@4.6.2(eslint@8.57.0))(eslint-plugin-react@7.35.0(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@7.14.1(eslint@8.57.0)(typescript@5.5.3))(eslint-import-resolver-webpack@0.13.8)(eslint@8.57.0))(eslint@8.57.0) - eslint-plugin-import: 2.29.1(@typescript-eslint/parser@7.14.1(eslint@8.57.0)(typescript@5.5.3))(eslint-import-resolver-webpack@0.13.8)(eslint@8.57.0) + eslint-config-airbnb-base: 15.0.0(eslint-plugin-import@2.29.1(@typescript-eslint/parser@7.18.0(eslint@8.57.0)(typescript@5.5.4))(eslint-import-resolver-webpack@0.13.8)(eslint@8.57.0))(eslint@8.57.0) + eslint-plugin-import: 2.29.1(@typescript-eslint/parser@7.18.0(eslint@8.57.0)(typescript@5.5.4))(eslint-import-resolver-webpack@0.13.8)(eslint@8.57.0) eslint-plugin-jsx-a11y: 6.9.0(eslint@8.57.0) - eslint-plugin-react: 7.34.3(eslint@8.57.0) + eslint-plugin-react: 7.35.0(eslint@8.57.0) eslint-plugin-react-hooks: 4.6.2(eslint@8.57.0) object.assign: 4.1.5 object.entries: 1.1.8 - eslint-config-next@14.2.4(eslint-import-resolver-webpack@0.13.8(eslint-plugin-import@2.29.1)(webpack@5.92.1(esbuild@0.21.5)))(eslint@8.57.0)(typescript@5.5.4): + eslint-config-next@14.2.5(eslint-import-resolver-webpack@0.13.8(eslint-plugin-import@2.29.1)(webpack@5.93.0(esbuild@0.21.5)))(eslint@8.57.0)(typescript@5.5.4): dependencies: - '@next/eslint-plugin-next': 14.2.4 + '@next/eslint-plugin-next': 14.2.5 '@rushstack/eslint-patch': 1.10.3 '@typescript-eslint/parser': 7.2.0(eslint@8.57.0)(typescript@5.5.4) eslint: 8.57.0 eslint-import-resolver-node: 0.3.9 - eslint-import-resolver-typescript: 3.6.1(@typescript-eslint/parser@7.2.0(eslint@8.57.0)(typescript@5.5.4))(eslint-import-resolver-node@0.3.9)(eslint-import-resolver-webpack@0.13.8(eslint-plugin-import@2.29.1)(webpack@5.92.1(esbuild@0.21.5)))(eslint-plugin-import@2.29.1)(eslint@8.57.0) - eslint-plugin-import: 2.29.1(@typescript-eslint/parser@7.14.1(eslint@8.57.0)(typescript@5.5.3))(eslint-import-resolver-webpack@0.13.8)(eslint@8.57.0) + eslint-import-resolver-typescript: 3.6.1(@typescript-eslint/parser@7.2.0(eslint@8.57.0)(typescript@5.5.4))(eslint-import-resolver-node@0.3.9)(eslint-import-resolver-webpack@0.13.8(eslint-plugin-import@2.29.1)(webpack@5.93.0(esbuild@0.21.5)))(eslint-plugin-import@2.29.1)(eslint@8.57.0) + eslint-plugin-import: 2.29.1(@typescript-eslint/parser@7.18.0(eslint@8.57.0)(typescript@5.5.4))(eslint-import-resolver-webpack@0.13.8)(eslint@8.57.0) eslint-plugin-jsx-a11y: 6.9.0(eslint@8.57.0) - eslint-plugin-react: 7.34.3(eslint@8.57.0) + eslint-plugin-react: 7.35.0(eslint@8.57.0) eslint-plugin-react-hooks: 4.6.2(eslint@8.57.0) optionalDependencies: typescript: 5.5.4 @@ -15486,10 +15806,10 @@ snapshots: dependencies: eslint: 8.57.0 - eslint-import-resolver-exports@1.0.0-beta.5(eslint-plugin-import@2.29.1(@typescript-eslint/parser@7.14.1(eslint@8.57.0)(typescript@5.5.3))(eslint-import-resolver-webpack@0.13.8)(eslint@8.57.0))(eslint@8.57.0): + eslint-import-resolver-exports@1.0.0-beta.5(eslint-plugin-import@2.29.1(@typescript-eslint/parser@7.18.0(eslint@8.57.0)(typescript@5.5.4))(eslint-import-resolver-webpack@0.13.8)(eslint@8.57.0))(eslint@8.57.0): dependencies: eslint: 8.57.0 - eslint-plugin-import: 2.29.1(@typescript-eslint/parser@7.14.1(eslint@8.57.0)(typescript@5.5.3))(eslint-import-resolver-webpack@0.13.8)(eslint@8.57.0) + eslint-plugin-import: 2.29.1(@typescript-eslint/parser@7.18.0(eslint@8.57.0)(typescript@5.5.4))(eslint-import-resolver-webpack@0.13.8)(eslint@8.57.0) resolve.exports: 2.0.2 eslint-import-resolver-node@0.3.9: @@ -15500,13 +15820,13 @@ snapshots: transitivePeerDependencies: - supports-color - eslint-import-resolver-typescript@3.6.1(@typescript-eslint/parser@7.2.0(eslint@8.57.0)(typescript@5.5.4))(eslint-import-resolver-node@0.3.9)(eslint-import-resolver-webpack@0.13.8(eslint-plugin-import@2.29.1)(webpack@5.92.1(esbuild@0.21.5)))(eslint-plugin-import@2.29.1)(eslint@8.57.0): + eslint-import-resolver-typescript@3.6.1(@typescript-eslint/parser@7.2.0(eslint@8.57.0)(typescript@5.5.4))(eslint-import-resolver-node@0.3.9)(eslint-import-resolver-webpack@0.13.8(eslint-plugin-import@2.29.1)(webpack@5.93.0(esbuild@0.21.5)))(eslint-plugin-import@2.29.1)(eslint@8.57.0): dependencies: debug: 4.3.5 enhanced-resolve: 5.17.0 eslint: 8.57.0 - eslint-module-utils: 2.8.1(@typescript-eslint/parser@7.2.0(eslint@8.57.0)(typescript@5.5.4))(eslint-import-resolver-node@0.3.9)(eslint-import-resolver-typescript@3.6.1(@typescript-eslint/parser@7.2.0(eslint@8.57.0)(typescript@5.5.4))(eslint-import-resolver-node@0.3.9)(eslint-import-resolver-webpack@0.13.8(eslint-plugin-import@2.29.1)(webpack@5.92.1(esbuild@0.21.5)))(eslint-plugin-import@2.29.1)(eslint@8.57.0))(eslint-import-resolver-webpack@0.13.8(eslint-plugin-import@2.29.1)(webpack@5.92.1(esbuild@0.21.5)))(eslint@8.57.0) - eslint-plugin-import: 2.29.1(@typescript-eslint/parser@7.14.1(eslint@8.57.0)(typescript@5.5.3))(eslint-import-resolver-webpack@0.13.8)(eslint@8.57.0) + eslint-module-utils: 2.8.1(@typescript-eslint/parser@7.2.0(eslint@8.57.0)(typescript@5.5.4))(eslint-import-resolver-node@0.3.9)(eslint-import-resolver-typescript@3.6.1(@typescript-eslint/parser@7.2.0(eslint@8.57.0)(typescript@5.5.4))(eslint-import-resolver-node@0.3.9)(eslint-import-resolver-webpack@0.13.8(eslint-plugin-import@2.29.1)(webpack@5.93.0(esbuild@0.21.5)))(eslint-plugin-import@2.29.1)(eslint@8.57.0))(eslint-import-resolver-webpack@0.13.8(eslint-plugin-import@2.29.1)(webpack@5.93.0(esbuild@0.21.5)))(eslint@8.57.0) + eslint-plugin-import: 2.29.1(@typescript-eslint/parser@7.18.0(eslint@8.57.0)(typescript@5.5.4))(eslint-import-resolver-webpack@0.13.8)(eslint@8.57.0) fast-glob: 3.3.2 get-tsconfig: 4.7.5 is-core-module: 2.14.0 @@ -15517,12 +15837,12 @@ snapshots: - eslint-import-resolver-webpack - supports-color - eslint-import-resolver-webpack@0.13.8(eslint-plugin-import@2.29.1)(webpack@5.92.1(esbuild@0.21.5)): + eslint-import-resolver-webpack@0.13.8(eslint-plugin-import@2.29.1)(webpack@5.93.0(esbuild@0.21.5)): dependencies: array.prototype.find: 2.2.3 debug: 3.2.7 enhanced-resolve: 0.9.1 - eslint-plugin-import: 2.29.1(@typescript-eslint/parser@7.14.1(eslint@8.57.0)(typescript@5.5.3))(eslint-import-resolver-webpack@0.13.8)(eslint@8.57.0) + eslint-plugin-import: 2.29.1(@typescript-eslint/parser@7.18.0(eslint@8.57.0)(typescript@5.5.4))(eslint-import-resolver-webpack@0.13.8)(eslint@8.57.0) find-root: 1.1.0 hasown: 2.0.2 interpret: 1.4.0 @@ -15531,30 +15851,30 @@ snapshots: lodash: 4.17.21 resolve: 2.0.0-next.5 semver: 5.7.2 - webpack: 5.92.1(esbuild@0.21.5) + webpack: 5.93.0(esbuild@0.21.5) transitivePeerDependencies: - supports-color - eslint-module-utils@2.8.1(@typescript-eslint/parser@7.14.1(eslint@8.57.0)(typescript@5.5.3))(eslint-import-resolver-node@0.3.9)(eslint-import-resolver-webpack@0.13.8(eslint-plugin-import@2.29.1)(webpack@5.92.1(esbuild@0.21.5)))(eslint@8.57.0): + eslint-module-utils@2.8.1(@typescript-eslint/parser@7.18.0(eslint@8.57.0)(typescript@5.5.4))(eslint-import-resolver-node@0.3.9)(eslint-import-resolver-webpack@0.13.8(eslint-plugin-import@2.29.1)(webpack@5.93.0(esbuild@0.21.5)))(eslint@8.57.0): dependencies: debug: 3.2.7 optionalDependencies: - '@typescript-eslint/parser': 7.14.1(eslint@8.57.0)(typescript@5.5.3) + '@typescript-eslint/parser': 7.18.0(eslint@8.57.0)(typescript@5.5.4) eslint: 8.57.0 eslint-import-resolver-node: 0.3.9 - eslint-import-resolver-webpack: 0.13.8(eslint-plugin-import@2.29.1)(webpack@5.92.1(esbuild@0.21.5)) + eslint-import-resolver-webpack: 0.13.8(eslint-plugin-import@2.29.1)(webpack@5.93.0(esbuild@0.21.5)) transitivePeerDependencies: - supports-color - eslint-module-utils@2.8.1(@typescript-eslint/parser@7.2.0(eslint@8.57.0)(typescript@5.5.4))(eslint-import-resolver-node@0.3.9)(eslint-import-resolver-typescript@3.6.1(@typescript-eslint/parser@7.2.0(eslint@8.57.0)(typescript@5.5.4))(eslint-import-resolver-node@0.3.9)(eslint-import-resolver-webpack@0.13.8(eslint-plugin-import@2.29.1)(webpack@5.92.1(esbuild@0.21.5)))(eslint-plugin-import@2.29.1)(eslint@8.57.0))(eslint-import-resolver-webpack@0.13.8(eslint-plugin-import@2.29.1)(webpack@5.92.1(esbuild@0.21.5)))(eslint@8.57.0): + eslint-module-utils@2.8.1(@typescript-eslint/parser@7.2.0(eslint@8.57.0)(typescript@5.5.4))(eslint-import-resolver-node@0.3.9)(eslint-import-resolver-typescript@3.6.1(@typescript-eslint/parser@7.2.0(eslint@8.57.0)(typescript@5.5.4))(eslint-import-resolver-node@0.3.9)(eslint-import-resolver-webpack@0.13.8(eslint-plugin-import@2.29.1)(webpack@5.93.0(esbuild@0.21.5)))(eslint-plugin-import@2.29.1)(eslint@8.57.0))(eslint-import-resolver-webpack@0.13.8(eslint-plugin-import@2.29.1)(webpack@5.93.0(esbuild@0.21.5)))(eslint@8.57.0): dependencies: debug: 3.2.7 optionalDependencies: '@typescript-eslint/parser': 7.2.0(eslint@8.57.0)(typescript@5.5.4) eslint: 8.57.0 eslint-import-resolver-node: 0.3.9 - eslint-import-resolver-typescript: 3.6.1(@typescript-eslint/parser@7.2.0(eslint@8.57.0)(typescript@5.5.4))(eslint-import-resolver-node@0.3.9)(eslint-import-resolver-webpack@0.13.8(eslint-plugin-import@2.29.1)(webpack@5.92.1(esbuild@0.21.5)))(eslint-plugin-import@2.29.1)(eslint@8.57.0) - eslint-import-resolver-webpack: 0.13.8(eslint-plugin-import@2.29.1)(webpack@5.92.1(esbuild@0.21.5)) + eslint-import-resolver-typescript: 3.6.1(@typescript-eslint/parser@7.2.0(eslint@8.57.0)(typescript@5.5.4))(eslint-import-resolver-node@0.3.9)(eslint-import-resolver-webpack@0.13.8(eslint-plugin-import@2.29.1)(webpack@5.93.0(esbuild@0.21.5)))(eslint-plugin-import@2.29.1)(eslint@8.57.0) + eslint-import-resolver-webpack: 0.13.8(eslint-plugin-import@2.29.1)(webpack@5.93.0(esbuild@0.21.5)) transitivePeerDependencies: - supports-color @@ -15566,7 +15886,7 @@ snapshots: lodash.snakecase: 4.1.1 lodash.upperfirst: 4.3.1 - eslint-plugin-import@2.29.1(@typescript-eslint/parser@7.14.1(eslint@8.57.0)(typescript@5.5.3))(eslint-import-resolver-webpack@0.13.8)(eslint@8.57.0): + eslint-plugin-import@2.29.1(@typescript-eslint/parser@7.18.0(eslint@8.57.0)(typescript@5.5.4))(eslint-import-resolver-webpack@0.13.8)(eslint@8.57.0): dependencies: array-includes: 3.1.8 array.prototype.findlastindex: 1.2.5 @@ -15576,7 +15896,7 @@ snapshots: doctrine: 2.1.0 eslint: 8.57.0 eslint-import-resolver-node: 0.3.9 - eslint-module-utils: 2.8.1(@typescript-eslint/parser@7.14.1(eslint@8.57.0)(typescript@5.5.3))(eslint-import-resolver-node@0.3.9)(eslint-import-resolver-webpack@0.13.8(eslint-plugin-import@2.29.1)(webpack@5.92.1(esbuild@0.21.5)))(eslint@8.57.0) + eslint-module-utils: 2.8.1(@typescript-eslint/parser@7.18.0(eslint@8.57.0)(typescript@5.5.4))(eslint-import-resolver-node@0.3.9)(eslint-import-resolver-webpack@0.13.8(eslint-plugin-import@2.29.1)(webpack@5.93.0(esbuild@0.21.5)))(eslint@8.57.0) hasown: 2.0.2 is-core-module: 2.14.0 is-glob: 4.0.3 @@ -15587,7 +15907,7 @@ snapshots: semver: 6.3.1 tsconfig-paths: 3.15.0 optionalDependencies: - '@typescript-eslint/parser': 7.14.1(eslint@8.57.0)(typescript@5.5.3) + '@typescript-eslint/parser': 7.18.0(eslint@8.57.0)(typescript@5.5.4) transitivePeerDependencies: - eslint-import-resolver-typescript - eslint-import-resolver-webpack @@ -15613,7 +15933,7 @@ snapshots: safe-regex-test: 1.0.3 string.prototype.includes: 2.0.0 - eslint-plugin-mocha@10.4.3(eslint@8.57.0): + eslint-plugin-mocha@10.5.0(eslint@8.57.0): dependencies: eslint: 8.57.0 eslint-utils: 3.0.0(eslint@8.57.0) @@ -15622,13 +15942,13 @@ snapshots: eslint-plugin-react-compiler@0.0.0-experimental-9ed098e-20240725(eslint@8.57.0): dependencies: - '@babel/core': 7.24.9 - '@babel/parser': 7.24.8 - '@babel/plugin-proposal-private-methods': 7.18.6(@babel/core@7.24.9) + '@babel/core': 7.25.2 + '@babel/parser': 7.25.3 + '@babel/plugin-proposal-private-methods': 7.18.6(@babel/core@7.25.2) eslint: 8.57.0 hermes-parser: 0.20.1 zod: 3.23.8 - zod-validation-error: 3.3.0(zod@3.23.8) + zod-validation-error: 3.3.1(zod@3.23.8) transitivePeerDependencies: - supports-color @@ -15636,39 +15956,39 @@ snapshots: dependencies: eslint: 8.57.0 - eslint-plugin-react@7.34.3(eslint@8.57.0): + eslint-plugin-react@7.35.0(eslint@8.57.0): dependencies: array-includes: 3.1.8 array.prototype.findlast: 1.2.5 array.prototype.flatmap: 1.3.2 - array.prototype.toreversed: 1.1.2 array.prototype.tosorted: 1.1.4 doctrine: 2.1.0 es-iterator-helpers: 1.0.19 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.8 object.fromentries: 2.0.8 - object.hasown: 1.1.4 object.values: 1.2.0 prop-types: 15.8.1 resolve: 2.0.0-next.5 semver: 6.3.1 string.prototype.matchall: 4.0.11 + string.prototype.repeat: 1.0.0 - eslint-plugin-testing-library@6.2.2(eslint@8.57.0)(typescript@5.5.3): + eslint-plugin-testing-library@6.2.2(eslint@8.57.0)(typescript@5.5.4): dependencies: - '@typescript-eslint/utils': 5.62.0(eslint@8.57.0)(typescript@5.5.3) + '@typescript-eslint/utils': 5.62.0(eslint@8.57.0)(typescript@5.5.4) eslint: 8.57.0 transitivePeerDependencies: - supports-color - typescript - eslint-plugin-typescript-enum@2.1.0(eslint@8.57.0)(typescript@5.5.3): + eslint-plugin-typescript-enum@2.1.0(eslint@8.57.0)(typescript@5.5.4): dependencies: - '@typescript-eslint/experimental-utils': 5.62.0(eslint@8.57.0)(typescript@5.5.3) + '@typescript-eslint/experimental-utils': 5.62.0(eslint@8.57.0)(typescript@5.5.4) transitivePeerDependencies: - eslint - supports-color @@ -15758,8 +16078,8 @@ snapshots: estree-to-babel@3.2.1: dependencies: - '@babel/traverse': 7.24.8 - '@babel/types': 7.24.9 + '@babel/traverse': 7.25.3 + '@babel/types': 7.25.2 c8: 7.14.0 transitivePeerDependencies: - supports-color @@ -15936,6 +16256,8 @@ snapshots: fast-levenshtein@2.0.6: {} + fast-uri@3.0.1: {} + fastq@1.17.1: dependencies: reusify: 1.0.4 @@ -16049,7 +16371,7 @@ snapshots: cross-spawn: 7.0.3 signal-exit: 4.1.0 - fork-ts-checker-webpack-plugin@6.5.3(eslint@8.57.0)(typescript@5.5.4)(webpack@5.92.1(esbuild@0.21.5)): + fork-ts-checker-webpack-plugin@6.5.3(eslint@8.57.0)(typescript@5.5.4)(webpack@5.93.0(esbuild@0.23.0)): dependencies: '@babel/code-frame': 7.24.7 '@types/json-schema': 7.0.15 @@ -16065,7 +16387,7 @@ snapshots: semver: 7.6.3 tapable: 1.1.3 typescript: 5.5.4 - webpack: 5.92.1(esbuild@0.21.5) + webpack: 5.93.0(esbuild@0.23.0) optionalDependencies: eslint: 8.57.0 @@ -16917,7 +17239,7 @@ snapshots: jest-worker@27.5.1: dependencies: - '@types/node': 20.14.12 + '@types/node': 20.14.14 merge-stream: 2.0.0 supports-color: 8.1.1 @@ -16938,7 +17260,7 @@ snapshots: jsbn@1.1.0: {} - jsdom@24.1.0: + jsdom@24.1.1: dependencies: cssstyle: 4.0.1 data-urls: 5.0.0 @@ -16948,7 +17270,7 @@ snapshots: http-proxy-agent: 7.0.2 https-proxy-agent: 7.0.5 is-potential-custom-element-name: 1.0.1 - nwsapi: 2.2.10 + nwsapi: 2.2.12 parse5: 7.1.2 rrweb-cssom: 0.7.1 saxes: 6.0.0 @@ -16959,7 +17281,7 @@ snapshots: whatwg-encoding: 3.1.1 whatwg-mimetype: 4.0.0 whatwg-url: 14.0.0 - ws: 8.17.1 + ws: 8.18.0 xml-name-validator: 5.0.0 transitivePeerDependencies: - bufferutil @@ -17031,40 +17353,40 @@ snapshots: jss-plugin-camel-case@10.10.0: dependencies: - '@babel/runtime': 7.24.8 + '@babel/runtime': 7.25.0 hyphenate-style-name: 1.1.0 jss: 10.10.0 jss-plugin-default-unit@10.10.0: dependencies: - '@babel/runtime': 7.24.8 + '@babel/runtime': 7.25.0 jss: 10.10.0 jss-plugin-global@10.10.0: dependencies: - '@babel/runtime': 7.24.8 + '@babel/runtime': 7.25.0 jss: 10.10.0 jss-plugin-nested@10.10.0: dependencies: - '@babel/runtime': 7.24.8 + '@babel/runtime': 7.25.0 jss: 10.10.0 tiny-warning: 1.0.3 jss-plugin-props-sort@10.10.0: dependencies: - '@babel/runtime': 7.24.8 + '@babel/runtime': 7.25.0 jss: 10.10.0 jss-plugin-rule-value-function@10.10.0: dependencies: - '@babel/runtime': 7.24.8 + '@babel/runtime': 7.25.0 jss: 10.10.0 tiny-warning: 1.0.3 jss-plugin-vendor-prefixer@10.10.0: dependencies: - '@babel/runtime': 7.24.8 + '@babel/runtime': 7.25.0 css-vendor: 2.0.8 jss: 10.10.0 @@ -17075,7 +17397,7 @@ snapshots: jss@10.10.0: dependencies: - '@babel/runtime': 7.24.8 + '@babel/runtime': 7.25.0 csstype: 3.1.3 is-in-browser: 1.1.3 tiny-warning: 1.0.3 @@ -17150,9 +17472,9 @@ snapshots: dependencies: readable-stream: 2.3.8 - lerna@8.1.6(babel-plugin-macros@3.1.0)(encoding@0.1.13): + lerna@8.1.7(babel-plugin-macros@3.1.0)(encoding@0.1.13): dependencies: - '@lerna/create': 8.1.6(babel-plugin-macros@3.1.0)(encoding@0.1.13)(typescript@5.5.4) + '@lerna/create': 8.1.7(babel-plugin-macros@3.1.0)(encoding@0.1.13)(typescript@5.5.4) '@npmcli/arborist': 7.5.3 '@npmcli/package-json': 5.2.0 '@npmcli/run-script': 8.1.0 @@ -17219,6 +17541,7 @@ snapshots: slash: 3.0.0 ssri: 10.0.6 string-width: 4.2.3 + strip-ansi: 6.0.1 strong-log-transformer: 2.1.0 tar: 6.2.1 temp-dir: 1.0.0 @@ -17434,8 +17757,8 @@ snapshots: magicast@0.3.4: dependencies: - '@babel/parser': 7.24.8 - '@babel/types': 7.24.9 + '@babel/parser': 7.25.3 + '@babel/types': 7.25.2 source-map-js: 1.2.0 make-dir@2.1.0: @@ -17673,7 +17996,7 @@ snapshots: minizlib@3.0.1: dependencies: minipass: 7.1.2 - rimraf: 5.0.8 + rimraf: 5.0.10 mkdirp@0.5.6: dependencies: @@ -17697,34 +18020,12 @@ snapshots: ms@2.1.3: {} - msw@2.3.1(typescript@5.5.3): + msw@2.3.5(typescript@5.5.4): dependencies: '@bundled-es-modules/cookie': 2.0.0 '@bundled-es-modules/statuses': 1.0.1 - '@inquirer/confirm': 3.1.17 - '@mswjs/cookies': 1.1.1 - '@mswjs/interceptors': 0.29.1 - '@open-draft/until': 2.1.0 - '@types/cookie': 0.6.0 - '@types/statuses': 2.0.5 - chalk: 4.1.2 - graphql: 16.9.0 - headers-polyfill: 4.0.3 - is-node-process: 1.2.0 - outvariant: 1.4.2 - path-to-regexp: 6.2.2 - strict-event-emitter: 0.5.1 - type-fest: 4.20.1 - yargs: 17.7.2 - optionalDependencies: - typescript: 5.5.3 - - msw@2.3.1(typescript@5.5.4): - dependencies: - '@bundled-es-modules/cookie': 2.0.0 - '@bundled-es-modules/statuses': 1.0.1 - '@inquirer/confirm': 3.1.17 - '@mswjs/cookies': 1.1.1 + '@bundled-es-modules/tough-cookie': 0.1.6 + '@inquirer/confirm': 3.1.20 '@mswjs/interceptors': 0.29.1 '@open-draft/until': 2.1.0 '@types/cookie': 0.6.0 @@ -17794,12 +18095,18 @@ snapshots: nested-error-stacks@2.1.1: {} - next-router-mock@0.9.13(next@14.2.5(@babel/core@7.24.9)(@opentelemetry/api@1.9.0)(@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.20(next@14.2.5(@babel/core@7.25.2)(@opentelemetry/api@1.9.0)(@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): dependencies: - next: 14.2.5(@babel/core@7.24.9)(@opentelemetry/api@1.9.0)(@playwright/test@1.45.3)(babel-plugin-macros@3.1.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@auth/core': 0.34.2 + next: 14.2.5(@babel/core@7.25.2)(@opentelemetry/api@1.9.0)(@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@14.2.5(@babel/core@7.24.9)(@opentelemetry/api@1.9.0)(@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-router-mock@0.9.13(next@14.2.5(@babel/core@7.25.2)(@opentelemetry/api@1.9.0)(@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): + dependencies: + next: 14.2.5(@babel/core@7.25.2)(@opentelemetry/api@1.9.0)(@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@14.2.5(@babel/core@7.25.2)(@opentelemetry/api@1.9.0)(@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': 14.2.5 '@swc/helpers': 0.5.5 @@ -17809,7 +18116,7 @@ snapshots: postcss: 8.4.31 react: 18.3.1 react-dom: 18.3.1(react@18.3.1) - styled-jsx: 5.1.1(@babel/core@7.24.9)(babel-plugin-macros@3.1.0)(react@18.3.1) + styled-jsx: 5.1.1(@babel/core@7.25.2)(babel-plugin-macros@3.1.0)(react@18.3.1) optionalDependencies: '@next/swc-darwin-arm64': 14.2.5 '@next/swc-darwin-x64': 14.2.5 @@ -17976,7 +18283,7 @@ snapshots: nprogress@0.2.0: {} - nwsapi@2.2.10: {} + nwsapi@2.2.12: {} nx@19.3.2: dependencies: @@ -18081,12 +18388,6 @@ snapshots: define-properties: 1.2.1 es-abstract: 1.23.3 - object.hasown@1.1.4: - dependencies: - define-properties: 1.2.1 - es-abstract: 1.23.3 - es-object-atoms: 1.0.0 - object.values@1.2.0: dependencies: call-bind: 1.0.7 @@ -18542,8 +18843,6 @@ snapshots: prelude-ls@1.2.1: {} - prettier@3.3.2: {} - prettier@3.3.3: {} pretty-bytes@6.1.1: {} @@ -18566,7 +18865,7 @@ snapshots: dependencies: parse-ms: 4.0.0 - pretty-quick@4.0.0(prettier@3.3.2): + pretty-quick@4.0.0(prettier@3.3.3): dependencies: execa: 5.1.1 find-up: 5.0.0 @@ -18574,7 +18873,7 @@ snapshots: mri: 1.2.0 picocolors: 1.0.1 picomatch: 3.0.1 - prettier: 3.3.2 + prettier: 3.3.3 tslib: 2.6.3 prismjs@1.29.0: {} @@ -18685,7 +18984,7 @@ snapshots: minimist: 1.2.8 strip-json-comments: 2.0.1 - react-dev-utils@12.0.1(eslint@8.57.0)(typescript@5.5.4)(webpack@5.92.1(esbuild@0.21.5)): + react-dev-utils@12.0.1(eslint@8.57.0)(typescript@5.5.4)(webpack@5.93.0(esbuild@0.23.0)): dependencies: '@babel/code-frame': 7.24.7 address: 1.2.2 @@ -18696,7 +18995,7 @@ snapshots: escape-string-regexp: 4.0.0 filesize: 8.0.7 find-up: 5.0.0 - fork-ts-checker-webpack-plugin: 6.5.3(eslint@8.57.0)(typescript@5.5.4)(webpack@5.92.1(esbuild@0.21.5)) + fork-ts-checker-webpack-plugin: 6.5.3(eslint@8.57.0)(typescript@5.5.4)(webpack@5.93.0(esbuild@0.23.0)) global-modules: 2.0.0 globby: 11.1.0 gzip-size: 6.0.0 @@ -18711,7 +19010,7 @@ snapshots: shell-quote: 1.8.1 strip-ansi: 6.0.1 text-table: 0.2.0 - webpack: 5.92.1(esbuild@0.21.5) + webpack: 5.93.0(esbuild@0.23.0) optionalDependencies: typescript: 5.5.4 transitivePeerDependencies: @@ -18721,9 +19020,9 @@ snapshots: react-docgen@5.4.3: dependencies: - '@babel/core': 7.24.9 - '@babel/generator': 7.24.10 - '@babel/runtime': 7.24.8 + '@babel/core': 7.25.2 + '@babel/generator': 7.25.0 + '@babel/runtime': 7.25.0 ast-types: 0.14.2 commander: 2.20.3 doctrine: 3.0.0 @@ -18736,9 +19035,9 @@ snapshots: react-docgen@7.0.3: dependencies: - '@babel/core': 7.24.9 - '@babel/traverse': 7.24.8 - '@babel/types': 7.24.9 + '@babel/core': 7.25.2 + '@babel/traverse': 7.25.3 + '@babel/types': 7.25.2 '@types/babel__core': 7.20.5 '@types/babel__traverse': 7.20.6 '@types/doctrine': 0.0.9 @@ -18757,14 +19056,14 @@ snapshots: react-error-boundary@4.0.13(react@18.3.1): dependencies: - '@babel/runtime': 7.24.8 + '@babel/runtime': 7.25.0 react: 18.3.1 react-error-overlay@6.0.11: {} react-event-listener@0.6.6(react@18.3.1): dependencies: - '@babel/runtime': 7.24.8 + '@babel/runtime': 7.25.0 prop-types: 15.8.1 react: 18.3.1 warning: 4.0.3 @@ -18773,7 +19072,7 @@ snapshots: dependencies: react: 18.3.1 - react-hook-form@7.52.1(react@18.3.1): + react-hook-form@7.52.2(react@18.3.1): dependencies: react: 18.3.1 @@ -18852,7 +19151,7 @@ snapshots: react-transition-group@4.4.5(react-dom@18.3.1(react@18.3.1))(react@18.3.1): dependencies: - '@babel/runtime': 7.24.8 + '@babel/runtime': 7.25.0 dom-helpers: 5.2.1 loose-envify: 1.4.0 prop-types: 15.8.1 @@ -18998,7 +19297,7 @@ snapshots: regenerator-transform@0.15.2: dependencies: - '@babel/runtime': 7.24.8 + '@babel/runtime': 7.25.0 regexp.prototype.flags@1.5.2: dependencies: @@ -19103,11 +19402,11 @@ snapshots: dependencies: glob: 9.3.5 - rimraf@5.0.7: + rimraf@5.0.10: dependencies: glob: 10.4.5 - rimraf@5.0.8: + rimraf@5.0.7: dependencies: glob: 10.4.5 @@ -19141,7 +19440,7 @@ snapshots: rtl-css-js@1.16.1: dependencies: - '@babel/runtime': 7.24.8 + '@babel/runtime': 7.25.0 run-async@2.4.1: {} @@ -19517,6 +19816,11 @@ snapshots: es-abstract: 1.23.3 es-object-atoms: 1.0.0 + string.prototype.repeat@1.0.0: + dependencies: + define-properties: 1.2.1 + es-abstract: 1.23.3 + string.prototype.trim@1.2.9: dependencies: call-bind: 1.0.7 @@ -19610,12 +19914,12 @@ snapshots: stylis: 4.3.2 tslib: 2.6.2 - styled-jsx@5.1.1(@babel/core@7.24.9)(babel-plugin-macros@3.1.0)(react@18.3.1): + styled-jsx@5.1.1(@babel/core@7.25.2)(babel-plugin-macros@3.1.0)(react@18.3.1): dependencies: client-only: 0.0.1 react: 18.3.1 optionalDependencies: - '@babel/core': 7.24.9 + '@babel/core': 7.25.2 babel-plugin-macros: 3.1.0 stylis-plugin-rtl@2.1.1(stylis@4.3.2): @@ -19705,17 +20009,28 @@ snapshots: dependencies: ps-tree: 1.2.0 - terser-webpack-plugin@5.3.10(esbuild@0.21.5)(webpack@5.92.1(esbuild@0.21.5)): + terser-webpack-plugin@5.3.10(esbuild@0.21.5)(webpack@5.93.0(esbuild@0.21.5)): dependencies: '@jridgewell/trace-mapping': 0.3.25 jest-worker: 27.5.1 schema-utils: 3.3.0 serialize-javascript: 6.0.2 terser: 5.31.1 - webpack: 5.92.1(esbuild@0.21.5) + webpack: 5.93.0(esbuild@0.21.5) optionalDependencies: esbuild: 0.21.5 + terser-webpack-plugin@5.3.10(esbuild@0.23.0)(webpack@5.93.0(esbuild@0.23.0)): + dependencies: + '@jridgewell/trace-mapping': 0.3.25 + jest-worker: 27.5.1 + schema-utils: 3.3.0 + serialize-javascript: 6.0.2 + terser: 5.31.1 + webpack: 5.93.0(esbuild@0.23.0) + optionalDependencies: + esbuild: 0.23.0 + terser@5.31.1: dependencies: '@jridgewell/source-map': 0.3.6 @@ -19827,10 +20142,6 @@ snapshots: trough@1.0.5: {} - ts-api-utils@1.3.0(typescript@5.5.3): - dependencies: - typescript: 5.5.3 - ts-api-utils@1.3.0(typescript@5.5.4): dependencies: typescript: 5.5.4 @@ -19858,7 +20169,7 @@ snapshots: tsscmp@1.0.6: {} - tsup@8.1.0(postcss@8.4.39)(typescript@5.5.3): + tsup@8.1.0(postcss@8.4.39)(typescript@5.5.4): dependencies: bundle-require: 4.2.1(esbuild@0.21.5) cac: 6.7.14 @@ -19876,17 +20187,17 @@ snapshots: tree-kill: 1.2.2 optionalDependencies: postcss: 8.4.39 - typescript: 5.5.3 + typescript: 5.5.4 transitivePeerDependencies: - supports-color - ts-node - tsutils@3.21.0(typescript@5.5.3): + tsutils@3.21.0(typescript@5.5.4): dependencies: tslib: 1.14.1 - typescript: 5.5.3 + typescript: 5.5.4 - tsx@4.16.2: + tsx@4.16.5: dependencies: esbuild: 0.21.5 get-tsconfig: 4.7.5 @@ -19964,10 +20275,10 @@ snapshots: typescript-to-proptypes@2.2.1: dependencies: - '@babel/core': 7.24.9 - '@babel/plugin-syntax-class-properties': 7.12.13(@babel/core@7.24.9) - '@babel/plugin-syntax-jsx': 7.24.7(@babel/core@7.24.9) - '@babel/types': 7.24.9 + '@babel/core': 7.25.2 + '@babel/plugin-syntax-class-properties': 7.12.13(@babel/core@7.25.2) + '@babel/plugin-syntax-jsx': 7.24.7(@babel/core@7.25.2) + '@babel/types': 7.25.2 doctrine: 3.0.0 lodash: 4.17.21 tslib: 1.14.1 @@ -19996,6 +20307,8 @@ snapshots: undici-types@5.26.5: {} + undici-types@6.13.0: {} + unicode-canonical-property-names-ecmascript@2.0.0: {} unicode-match-property-ecmascript@2.0.0: @@ -20144,13 +20457,13 @@ snapshots: d3-time: 3.1.0 d3-timer: 3.0.1 - vite-node@2.0.4(@types/node@20.14.12)(terser@5.31.1): + vite-node@2.0.5(@types/node@20.14.14)(terser@5.31.1): dependencies: cac: 6.7.14 debug: 4.3.5 pathe: 1.1.2 tinyrainbow: 1.2.0 - vite: 5.3.5(@types/node@20.14.12)(terser@5.31.1) + vite: 5.3.5(@types/node@20.14.14)(terser@5.31.1) transitivePeerDependencies: - '@types/node' - less @@ -20161,17 +20474,44 @@ snapshots: - supports-color - terser - vite@5.3.5(@types/node@20.14.12)(terser@5.31.1): + vite-node@2.0.5(@types/node@22.1.0)(terser@5.31.1): + dependencies: + cac: 6.7.14 + debug: 4.3.5 + pathe: 1.1.2 + tinyrainbow: 1.2.0 + vite: 5.3.5(@types/node@22.1.0)(terser@5.31.1) + transitivePeerDependencies: + - '@types/node' + - less + - lightningcss + - sass + - stylus + - sugarss + - supports-color + - terser + + vite@5.3.5(@types/node@20.14.14)(terser@5.31.1): dependencies: esbuild: 0.21.5 postcss: 8.4.39 rollup: 4.18.0 optionalDependencies: - '@types/node': 20.14.12 + '@types/node': 20.14.14 fsevents: 2.3.3 terser: 5.31.1 - vitest-dom@0.1.1(vitest@2.0.4(@types/node@20.14.12)(@vitest/browser@2.0.4)(jsdom@24.1.0)(terser@5.31.1)): + vite@5.3.5(@types/node@22.1.0)(terser@5.31.1): + dependencies: + esbuild: 0.21.5 + postcss: 8.4.39 + rollup: 4.18.0 + optionalDependencies: + '@types/node': 22.1.0 + fsevents: 2.3.3 + terser: 5.31.1 + + vitest-dom@0.1.1(vitest@2.0.5(@types/node@20.14.14)(@vitest/browser@2.0.5)(jsdom@24.1.1)(terser@5.31.1)): dependencies: aria-query: 5.3.0 chalk: 5.3.0 @@ -20179,23 +20519,57 @@ snapshots: dom-accessibility-api: 0.6.3 lodash-es: 4.17.21 redent: 4.0.0 - vitest: 2.0.4(@types/node@20.14.12)(@vitest/browser@2.0.4)(jsdom@24.1.0)(terser@5.31.1) + vitest: 2.0.5(@types/node@20.14.14)(@vitest/browser@2.0.5)(jsdom@24.1.1)(terser@5.31.1) - vitest-fail-on-console@0.7.0(vite@5.3.5(@types/node@20.14.12)(terser@5.31.1))(vitest@2.0.4(@types/node@20.14.12)(@vitest/browser@2.0.4)(jsdom@24.1.0)(terser@5.31.1)): + vitest-fail-on-console@0.7.0(vite@5.3.5(@types/node@20.14.14)(terser@5.31.1))(vitest@2.0.5(@types/node@20.14.14)(@vitest/browser@2.0.5)(jsdom@24.1.1)(terser@5.31.1)): dependencies: chalk: 5.3.0 - vite: 5.3.5(@types/node@20.14.12)(terser@5.31.1) - vitest: 2.0.4(@types/node@20.14.12)(@vitest/browser@2.0.4)(jsdom@24.1.0)(terser@5.31.1) + vite: 5.3.5(@types/node@20.14.14)(terser@5.31.1) + vitest: 2.0.5(@types/node@20.14.14)(@vitest/browser@2.0.5)(jsdom@24.1.1)(terser@5.31.1) + + vitest@2.0.5(@types/node@20.14.14)(@vitest/browser@2.0.5)(jsdom@24.1.1)(terser@5.31.1): + dependencies: + '@ampproject/remapping': 2.3.0 + '@vitest/expect': 2.0.5 + '@vitest/pretty-format': 2.0.5 + '@vitest/runner': 2.0.5 + '@vitest/snapshot': 2.0.5 + '@vitest/spy': 2.0.5 + '@vitest/utils': 2.0.5 + chai: 5.1.1 + debug: 4.3.5 + execa: 8.0.1 + magic-string: 0.30.10 + pathe: 1.1.2 + std-env: 3.7.0 + tinybench: 2.8.0 + tinypool: 1.0.0 + tinyrainbow: 1.2.0 + vite: 5.3.5(@types/node@20.14.14)(terser@5.31.1) + vite-node: 2.0.5(@types/node@20.14.14)(terser@5.31.1) + why-is-node-running: 2.3.0 + optionalDependencies: + '@types/node': 20.14.14 + '@vitest/browser': 2.0.5(playwright@1.45.3)(typescript@5.5.4)(vitest@2.0.5) + jsdom: 24.1.1 + transitivePeerDependencies: + - less + - lightningcss + - sass + - stylus + - sugarss + - supports-color + - terser - vitest@2.0.4(@types/node@20.14.12)(@vitest/browser@2.0.4)(jsdom@24.1.0)(terser@5.31.1): + vitest@2.0.5(@types/node@22.1.0)(@vitest/browser@2.0.5)(jsdom@24.1.1)(terser@5.31.1): dependencies: '@ampproject/remapping': 2.3.0 - '@vitest/expect': 2.0.4 - '@vitest/pretty-format': 2.0.4 - '@vitest/runner': 2.0.4 - '@vitest/snapshot': 2.0.4 - '@vitest/spy': 2.0.4 - '@vitest/utils': 2.0.4 + '@vitest/expect': 2.0.5 + '@vitest/pretty-format': 2.0.5 + '@vitest/runner': 2.0.5 + '@vitest/snapshot': 2.0.5 + '@vitest/spy': 2.0.5 + '@vitest/utils': 2.0.5 chai: 5.1.1 debug: 4.3.5 execa: 8.0.1 @@ -20205,13 +20579,13 @@ snapshots: tinybench: 2.8.0 tinypool: 1.0.0 tinyrainbow: 1.2.0 - vite: 5.3.5(@types/node@20.14.12)(terser@5.31.1) - vite-node: 2.0.4(@types/node@20.14.12)(terser@5.31.1) + vite: 5.3.5(@types/node@22.1.0)(terser@5.31.1) + vite-node: 2.0.5(@types/node@22.1.0)(terser@5.31.1) why-is-node-running: 2.3.0 optionalDependencies: - '@types/node': 20.14.12 - '@vitest/browser': 2.0.4(playwright@1.45.3)(typescript@5.5.4)(vitest@2.0.4) - jsdom: 24.1.0 + '@types/node': 22.1.0 + '@vitest/browser': 2.0.5(playwright@1.45.3)(typescript@5.5.4)(vitest@2.0.5) + jsdom: 24.1.1 transitivePeerDependencies: - less - lightningcss @@ -20268,7 +20642,38 @@ snapshots: webpack-sources@3.2.3: {} - webpack@5.92.1(esbuild@0.21.5): + webpack@5.93.0(esbuild@0.21.5): + dependencies: + '@types/eslint-scope': 3.7.7 + '@types/estree': 1.0.5 + '@webassemblyjs/ast': 1.12.1 + '@webassemblyjs/wasm-edit': 1.12.1 + '@webassemblyjs/wasm-parser': 1.12.1 + acorn: 8.12.0 + acorn-import-attributes: 1.9.5(acorn@8.12.0) + browserslist: 4.23.1 + chrome-trace-event: 1.0.4 + enhanced-resolve: 5.17.0 + es-module-lexer: 1.5.4 + eslint-scope: 5.1.1 + events: 3.3.0 + glob-to-regexp: 0.4.1 + graceful-fs: 4.2.11 + json-parse-even-better-errors: 2.3.1 + loader-runner: 4.3.0 + mime-types: 2.1.35 + neo-async: 2.6.2 + schema-utils: 3.3.0 + tapable: 2.2.1 + terser-webpack-plugin: 5.3.10(esbuild@0.21.5)(webpack@5.93.0(esbuild@0.21.5)) + watchpack: 2.4.1 + webpack-sources: 3.2.3 + transitivePeerDependencies: + - '@swc/core' + - esbuild + - uglify-js + + webpack@5.93.0(esbuild@0.23.0): dependencies: '@types/eslint-scope': 3.7.7 '@types/estree': 1.0.5 @@ -20291,7 +20696,7 @@ snapshots: neo-async: 2.6.2 schema-utils: 3.3.0 tapable: 2.2.1 - terser-webpack-plugin: 5.3.10(esbuild@0.21.5)(webpack@5.92.1(esbuild@0.21.5)) + terser-webpack-plugin: 5.3.10(esbuild@0.23.0)(webpack@5.93.0(esbuild@0.23.0)) watchpack: 2.4.1 webpack-sources: 3.2.3 transitivePeerDependencies: @@ -20510,11 +20915,11 @@ snapshots: compress-commons: 6.0.2 readable-stream: 4.5.2 - zod-to-json-schema@3.23.1(zod@3.23.8): + zod-to-json-schema@3.23.2(zod@3.23.8): dependencies: zod: 3.23.8 - zod-validation-error@3.3.0(zod@3.23.8): + zod-validation-error@3.3.1(zod@3.23.8): dependencies: zod: 3.23.8 diff --git a/renovate.json b/renovate.json index ac860766f91..c717f7d1960 100644 --- a/renovate.json +++ b/renovate.json @@ -53,9 +53,9 @@ "matchPackagePatterns": ["^stylis-"] }, { - "groupName": "Vite", - "matchPackageNames": ["vite"], - "matchPackagePatterns": ["^@vitejs/"] + "groupName": "Vitest", + "matchPackageNames": ["vitest"], + "matchPackagePatterns": ["^@vitest/"] }, { "groupName": "Next.js", diff --git a/scripts/docs/buildCoreApiDocs/config/getComponentImports.ts b/scripts/docs/buildCoreApiDocs/config/getComponentImports.ts index 6b9ec088a98..d04c743dde0 100644 --- a/scripts/docs/buildCoreApiDocs/config/getComponentImports.ts +++ b/scripts/docs/buildCoreApiDocs/config/getComponentImports.ts @@ -24,16 +24,16 @@ export function getComponentImports(name: string, filename: string) { const hasNextJsVersion = fs.existsSync(`${nextjsRelativePath}/${name}.tsx`); return [ - `import { ${name} } from '@toolpad-core/${name}';${ + `import { ${name} } from '@toolpad/core/${name}';${ hasNextJsVersion - ? `\nimport { ${name} } from '@toolpad-core/nextjs/${name}'; // Next.js` + ? `\nimport { ${name} } from '@toolpad/core/nextjs/${name}'; // Next.js` : '' }`, - `import { ${name} } from '@toolpad-core';${ - hasNextJsVersion ? `\nimport { ${name} } from '@toolpad-core/nextjs'; // Next.js` : '' + `import { ${name} } from '@toolpad/core';${ + hasNextJsVersion ? `\nimport { ${name} } from '@toolpad/core/nextjs'; // Next.js` : '' }`, ]; } - return [`import { ${name} } from '@toolpad-core/${componentDirectory}';`]; + return [`import { ${name} } from '@toolpad/core/${componentDirectory}';`]; }