chore(client): update component library to v5 (#64279)

This commit is contained in:
Sem Bauke
2025-12-11 05:02:18 +01:00
committed by GitHub
parent dbc5dd4f4a
commit 43781bf6e1
20 changed files with 89 additions and 59 deletions
@@ -869,6 +869,8 @@
},
"misc": {
"coming-soon": "Coming Soon",
"note": "Note",
"caution": "Caution",
"offline": "You appear to be offline, your progress may not be saved",
"server-offline": "The server could not be reached and your progress may not be saved. Please contact <0>support</0> if this message persists",
"unsubscribed": "You have successfully been unsubscribed",
+1 -1
View File
@@ -52,7 +52,7 @@
"@fortawesome/free-solid-svg-icons": "6.7.1",
"@fortawesome/react-fontawesome": "0.2.2",
"@freecodecamp/loop-protect": "3.0.0",
"@freecodecamp/ui": "4.3.0",
"@freecodecamp/ui": "5.0.0",
"@gatsbyjs/reach-router": "1.3.9",
"@growthbook/growthbook-react": "1.6.0",
"@headlessui/react": "1.7.19",
@@ -1,5 +1,5 @@
import React from 'react';
import { Trans } from 'react-i18next';
import { Trans, useTranslation } from 'react-i18next';
import { Callout } from '@freecodecamp/ui';
import { Link } from '../helpers';
@@ -7,8 +7,9 @@ import { Link } from '../helpers';
import './index.css';
const ArchivedWarning = () => {
const { t } = useTranslation();
return (
<Callout variant='info'>
<Callout variant='note' label={t('misc.note')}>
<p className='text-center archived-warning'>
<Trans i18nKey='learn.archive.content-not-updated'>
<strong>placeholder</strong>
@@ -239,7 +239,7 @@ function DailyCodingChallengeCalendar({
<Container>
<Row>
<Col md={8} mdOffset={2} sm={10} smOffset={1} xs={12}>
<Callout variant='info'>
<Callout variant='note' label={t('misc.note')}>
{t('daily-coding-challenges.release-note')}
</Callout>
@@ -6,7 +6,7 @@ import { useFeature } from '@growthbook/growthbook-react';
const Down = () => {
const { t } = useTranslation();
return (
<Callout variant='danger'>
<Callout variant='caution' label={t('misc.caution')}>
<p>
<Trans i18nKey='intro:misc-text.course-maintenance'>
<a
@@ -27,7 +27,7 @@ const Down = () => {
const Disabled = () => {
const { t } = useTranslation();
return (
<Callout variant='danger'>
<Callout variant='caution' label={t('misc.caution')}>
<p>
<Trans i18nKey='intro:misc-text.course-disabled'>
<a
@@ -16,7 +16,7 @@ export function OnaNote({ superBlock }: OnaNoteProps): JSX.Element | null {
const { t } = useTranslation();
return onaNoteFeature.superblocks.includes(superBlock) ? (
<Callout variant='info'>
<Callout variant='note' label={t('misc.note')}>
<p>
<Link
external={true}
+4 -2
View File
@@ -38,7 +38,9 @@ interface MessageProps {
const UserMessage = ({ t }: Pick<MessageProps, 't'>) => {
return (
<FullWidthRow>
<Callout variant='info'>{t('profile.you-change-privacy')}</Callout>
<Callout variant='note' label={t('misc.note')}>
{t('profile.you-change-privacy')}
</Callout>
<Spacer size='xl' />
</FullWidthRow>
);
@@ -69,7 +71,7 @@ const VisitorMessage = ({
}: Omit<MessageProps, 'isSessionUser'>) => {
return (
<FullWidthRow>
<Callout variant='info'>
<Callout variant='note' label={t('misc.note')}>
{t('profile.username-change-privacy', { username })}
</Callout>
<Spacer size='m' />
+2 -1
View File
@@ -169,7 +169,8 @@ function EmailSettings({
<FullWidthRow>
<HelpBlock>
<Callout
variant='info'
variant='note'
label={t('misc.note')}
className='text-center'
data-playwright-test-label='email-verification-alert'
>
@@ -41,7 +41,7 @@ export function SolutionDisplayWidget({
</Button>
);
const ShowProjectAndGithubLinkForCertification = (
<Dropdown id={`dropdown-for-${id}-${randomIdSuffix}`}>
<Dropdown block={true} id={`dropdown-for-${id}-${randomIdSuffix}`}>
<Dropdown.Toggle>
{viewText}{' '}
<span className='sr-only'>
@@ -106,7 +106,7 @@ export function SolutionDisplayWidget({
);
const ShowMultifileProjectSolution = (
<div>
<Dropdown id={`dropdown-for-${id}-${randomIdSuffix}`}>
<Dropdown block={true} id={`dropdown-for-${id}-${randomIdSuffix}`}>
<Dropdown.Toggle>
{viewText}{' '}
<span className='sr-only'>
@@ -127,7 +127,7 @@ export function SolutionDisplayWidget({
const ShowProjectAndGithubLinks = (
<div>
<Dropdown id={`dropdown-for-${id}-${randomIdSuffix}`}>
<Dropdown block={true} id={`dropdown-for-${id}-${randomIdSuffix}`}>
<Dropdown.Toggle>
{viewText}{' '}
<span className='sr-only'>
@@ -148,8 +148,9 @@ interface CodespacesContinueAlertProps {
}
function CodespacesContinueAlert({ title }: CodespacesContinueAlertProps) {
const { t } = useTranslation();
return (
<Callout variant='info'>
<Callout variant='note' label={t('misc.note')}>
<Trans values={{ title }} i18nKey='learn.codespaces.continue-project'>
<a
href='https://github.com/freeCodeCamp/rdb-alpha'
@@ -183,7 +184,7 @@ function CodespacesLogoutAlert({
const { t } = useTranslation();
return (
<Callout variant='danger'>
<Callout variant='caution' label={t('misc.caution')}>
{t('learn.codespaces.logout-warning', { course })}
</Callout>
);
@@ -10,7 +10,7 @@ function RdbLocalLogoutAlert({ title }: RdbLocalLogoutAlertProps): JSX.Element {
const { t } = useTranslation();
return (
<Callout variant='danger'>
<Callout variant='caution' label={t('misc.caution')}>
{t('learn.local.logout-warning', { course: title })}
</Callout>
);
@@ -1,5 +1,5 @@
import React from 'react';
import { Trans } from 'react-i18next';
import { Trans, useTranslation } from 'react-i18next';
import { Callout, Spacer } from '@freecodecamp/ui';
interface RdbOnaContinueAlertProps {
@@ -9,8 +9,9 @@ interface RdbOnaContinueAlertProps {
function RdbOnaContinueAlert({
course
}: RdbOnaContinueAlertProps): JSX.Element {
const { t } = useTranslation();
return (
<Callout variant='info'>
<Callout variant='note' label={t('misc.note')}>
<Trans values={{ course }} i18nKey='learn.ona.continue-project'>
<a href='https://app.ona.com' rel='noopener noreferrer' target='_blank'>
placeholder
@@ -10,7 +10,7 @@ function RdbOnaLogoutAlert({ course }: RdbOnaLogoutAlertProps): JSX.Element {
const { t } = useTranslation();
return (
<Callout variant='danger'>
<Callout variant='caution' label={t('misc.caution')}>
{t('learn.ona.logout-warning', { course })}
</Callout>
);
@@ -95,7 +95,7 @@ function ToolPanel({
)}
</Button>
<Spacer size='xxs' />
<Dropdown dropup>
<Dropdown block={true} dropup>
<Dropdown.Toggle
id={'get-help-dropdown'}
data-playwright-test-label='get-help-dropdown'
@@ -276,7 +276,11 @@ function ShowExamDownload({
missingPrerequisites={missingPrerequisites}
/>
) : (
<Callout className='exam-qualified' variant='info'>
<Callout
className='exam-qualified'
variant='note'
label={t('misc.note')}
>
<p>{t('learn.exam.qualified')}</p>
</Callout>
))}
@@ -310,7 +314,7 @@ function ShowExamDownload({
)}
</div>
<Spacer size='xs' />
<Dropdown dropup>
<Dropdown block={true} dropup>
<Dropdown.Toggle>{t('exam.download-details')}</Dropdown.Toggle>
<Dropdown.Menu>
{downloadLinks
@@ -36,7 +36,7 @@ function MissingPrerequisites({
});
return (
<Callout variant='danger'>
<Callout variant='caution' label={t('misc.caution')}>
<p>{t('learn.exam.not-qualified')}</p>
<Spacer size='xs' />
<ul>
@@ -496,7 +496,7 @@ function ShowExam(props: ShowExamProps) {
<Spacer size='m' />
{qualifiedForExam ? (
<Callout variant='info'>
<Callout variant='note' label={t('misc.note')}>
<p>{t('learn.exam.qualified')}</p>
</Callout>
) : !prerequisitesComplete ? (
@@ -22,7 +22,7 @@ function LegacyLinks({ superBlock }: LegacyLinksProps): JSX.Element {
<>
<CodeAllyDown />
{clientLocale != 'english' && (
<Callout variant='info'>
<Callout variant='note' label={t('misc.note')}>
<p>{t('intro:misc-text.english-only')}</p>
</Callout>
)}
@@ -30,7 +30,7 @@ function LegacyLinks({ superBlock }: LegacyLinksProps): JSX.Element {
);
} else if (isExamCert(superBlock) && clientLocale != 'english') {
return (
<Callout variant='info'>
<Callout variant='note' label={t('misc.note')}>
<p>{t('intro:misc-text.exam-english-only')}</p>
</Callout>
);
@@ -43,7 +43,11 @@ export const ConditionalDonationAlert = ({
if (!isDonating && betaCertifications.includes(superBlock))
return (
<Callout variant='info' className='annual-donation-alert'>
<Callout
variant='note'
label={t('misc.note')}
className='annual-donation-alert'
>
<p>{t('donate.beta-certification')}</p>
<hr />
<p className='btn-container'>
@@ -62,7 +66,11 @@ export const ConditionalDonationAlert = ({
if (!isDonating && unfinishedCertifications.includes(superBlock))
return (
<Callout variant='info' className='annual-donation-alert'>
<Callout
variant='note'
label={t('misc.note')}
className='annual-donation-alert'
>
<p>
<Trans i18nKey='donate.consider-donating-2'>
<Link className='inline' to='/donate'>
@@ -162,7 +170,9 @@ function SuperBlockIntro({
{superBlockNoteText && (
<>
<Spacer size='m' />
<Callout variant='info'>{superBlockNoteText}</Callout>
<Callout variant='note' label={t('misc.note')}>
{superBlockNoteText}
</Callout>
</>
)}
</>
+38 -30
View File
@@ -286,8 +286,8 @@ importers:
specifier: 3.0.0
version: 3.0.0
'@freecodecamp/ui':
specifier: 4.3.0
version: 4.3.0(@types/react-dom@17.0.19)(@types/react@17.0.83)(react-dom@17.0.2(react@17.0.2))(react@17.0.2)
specifier: 5.0.0
version: 5.0.0(@types/react-dom@17.0.19)(@types/react@17.0.83)(react-dom@17.0.2(react@17.0.2))(react@17.0.2)
'@gatsbyjs/reach-router':
specifier: 1.3.9
version: 1.3.9(react-dom@17.0.2(react@17.0.2))(react@17.0.2)
@@ -708,7 +708,7 @@ importers:
version: 4.0.2
'@typescript/vfs-1.6.1':
specifier: npm:@typescript/vfs@1.6.1
version: '@typescript/vfs@1.6.1(typescript@5.7.3)'
version: '@typescript/vfs@1.6.1(typescript@5.9.3)'
'@vitest/ui':
specifier: ^3.2.4
version: 3.2.4(vitest@3.2.4)
@@ -747,7 +747,7 @@ importers:
version: 0.5.2
puppeteer:
specifier: 22.12.1
version: 22.12.1(typescript@5.7.3)
version: 22.12.1(typescript@5.9.3)
sirv:
specifier: ^3.0.2
version: 3.0.2
@@ -759,7 +759,7 @@ importers:
version: typescript@5.9.2
vitest:
specifier: ^3.2.4
version: 3.2.4(@types/debug@4.1.12)(@types/node@20.12.8)(@vitest/ui@3.2.4)(jiti@2.6.1)(jsdom@16.7.0)(msw@2.8.7(@types/node@20.12.8)(typescript@5.7.3))(terser@5.28.1)(tsx@4.19.1)(yaml@2.8.1)
version: 3.2.4(@types/debug@4.1.12)(@types/node@20.12.8)(@vitest/ui@3.2.4)(jiti@2.6.1)(jsdom@16.7.0)(msw@2.8.7(@types/node@20.12.8)(typescript@5.9.3))(terser@5.28.1)(tsx@4.19.1)(yaml@2.8.1)
e2e:
devDependencies:
@@ -3081,8 +3081,8 @@ packages:
'@freecodecamp/loop-protect@3.0.0':
resolution: {integrity: sha512-5zIULL5pm7Ylkk2dPq1f/4KJTAV5KQZEAFQg/qFj0t18EBSNO3fjn3HdfE1sPocXhXom3DVvZO3Rl2sqifMFYQ==}
'@freecodecamp/ui@4.3.0':
resolution: {integrity: sha512-I+5O3a49EtaYafUAyA1S3RzMFefDr9usI6MxTuwE0+L3DE4lOq1hEXt3dBkRUHb3QcbzSjvMB2S3CbA+vlOgOQ==}
'@freecodecamp/ui@5.0.0':
resolution: {integrity: sha512-+d3MneLi0ZtYqZ00w87Z/O9sq8E88W6PL6iHGZmYKRLsvNGGgyMgNIGgp31EbkttnoFO9Y9iz45OsexRI3LmSQ==}
engines: {node: '>=22', pnpm: '>=10'}
peerDependencies:
react: ^16.14.0 || ^17.0.0 || ^18.0.0
@@ -17152,7 +17152,7 @@ snapshots:
'@freecodecamp/loop-protect@3.0.0': {}
'@freecodecamp/ui@4.3.0(@types/react-dom@17.0.19)(@types/react@17.0.83)(react-dom@17.0.2(react@17.0.2))(react@17.0.2)':
'@freecodecamp/ui@5.0.0(@types/react-dom@17.0.19)(@types/react@17.0.83)(react-dom@17.0.2(react@17.0.2))(react@17.0.2)':
dependencies:
'@fortawesome/fontawesome-svg-core': 6.7.2
'@fortawesome/free-solid-svg-icons': 6.7.2
@@ -19478,7 +19478,7 @@ snapshots:
'@types/yoga-layout@1.9.2': {}
'@typescript-eslint/eslint-plugin@4.33.0(@typescript-eslint/parser@4.33.0(eslint@7.32.0)(typescript@5.2.2))(eslint@9.39.1(jiti@2.6.1))(typescript@5.2.2)':
'@typescript-eslint/eslint-plugin@4.33.0(@typescript-eslint/parser@4.33.0(eslint@9.39.1(jiti@2.6.1))(typescript@5.2.2))(eslint@9.39.1(jiti@2.6.1))(typescript@5.2.2)':
dependencies:
'@typescript-eslint/experimental-utils': 4.33.0(eslint@9.39.1(jiti@2.6.1))(typescript@5.2.2)
'@typescript-eslint/parser': 4.33.0(eslint@9.39.1(jiti@2.6.1))(typescript@5.2.2)
@@ -19639,13 +19639,6 @@ snapshots:
'@typescript-eslint/types': 8.47.0
eslint-visitor-keys: 4.2.1
'@typescript/vfs@1.6.1(typescript@5.7.3)':
dependencies:
debug: 4.3.4(supports-color@8.1.1)
typescript: 5.7.3
transitivePeerDependencies:
- supports-color
'@typescript/vfs@1.6.1(typescript@5.9.2)':
dependencies:
debug: 4.3.4(supports-color@8.1.1)
@@ -19653,6 +19646,13 @@ snapshots:
transitivePeerDependencies:
- supports-color
'@typescript/vfs@1.6.1(typescript@5.9.3)':
dependencies:
debug: 4.3.4(supports-color@8.1.1)
typescript: 5.9.3
transitivePeerDependencies:
- supports-color
'@uiw/react-codemirror@3.2.10(@babel/runtime@7.27.3)(codemirror@5.65.16)(react-dom@17.0.2(react@17.0.2))(react@17.0.2)':
dependencies:
'@babel/runtime': 7.27.3
@@ -19803,7 +19803,7 @@ snapshots:
sirv: 3.0.2
tinyglobby: 0.2.14
tinyrainbow: 2.0.0
vitest: 3.2.4(@types/debug@4.1.12)(@types/node@20.12.8)(@vitest/ui@3.2.4)(jiti@2.6.1)(jsdom@26.1.0)(msw@2.8.7(@types/node@20.12.8)(typescript@5.2.2))(terser@5.28.1)(tsx@4.19.1)(yaml@2.8.1)
vitest: 3.2.4(@types/debug@4.1.12)(@types/node@20.12.8)(@vitest/ui@3.2.4)(jiti@2.6.1)(jsdom@26.1.0)(msw@2.8.7(@types/node@20.12.8)(typescript@5.9.3))(terser@5.28.1)(tsx@4.19.1)(yaml@2.8.1)
'@vitest/utils@3.2.4':
dependencies:
@@ -21426,6 +21426,15 @@ snapshots:
optionalDependencies:
typescript: 5.9.2
cosmiconfig@9.0.0(typescript@5.9.3):
dependencies:
env-paths: 2.2.1
import-fresh: 3.3.0
js-yaml: 4.1.0
parse-json: 5.2.0
optionalDependencies:
typescript: 5.9.3
create-ecdh@4.0.4:
dependencies:
bn.js: 4.12.0
@@ -22397,13 +22406,13 @@ snapshots:
eslint-config-react-app@6.0.0(@typescript-eslint/eslint-plugin@4.33.0(@typescript-eslint/parser@4.33.0(eslint@7.32.0)(typescript@5.2.2))(eslint@7.32.0)(typescript@5.2.2))(@typescript-eslint/parser@4.33.0(eslint@7.32.0)(typescript@5.2.2))(babel-eslint@10.1.0(eslint@9.39.1(jiti@2.6.1)))(eslint-plugin-flowtype@5.10.0(eslint@7.32.0))(eslint-plugin-import@2.31.0(@typescript-eslint/parser@4.33.0(eslint@7.32.0)(typescript@5.2.2))(eslint@7.32.0))(eslint-plugin-jsx-a11y@6.10.2(eslint@7.32.0))(eslint-plugin-react-hooks@4.6.0(eslint@7.32.0))(eslint-plugin-react@7.37.4(eslint@7.32.0))(eslint@7.32.0)(typescript@5.2.2):
dependencies:
'@typescript-eslint/eslint-plugin': 4.33.0(@typescript-eslint/parser@4.33.0(eslint@7.32.0)(typescript@5.2.2))(eslint@9.39.1(jiti@2.6.1))(typescript@5.2.2)
'@typescript-eslint/eslint-plugin': 4.33.0(@typescript-eslint/parser@4.33.0(eslint@9.39.1(jiti@2.6.1))(typescript@5.2.2))(eslint@9.39.1(jiti@2.6.1))(typescript@5.2.2)
'@typescript-eslint/parser': 4.33.0(eslint@9.39.1(jiti@2.6.1))(typescript@5.2.2)
babel-eslint: 10.1.0(eslint@9.39.1(jiti@2.6.1))
confusing-browser-globals: 1.0.11
eslint: 7.32.0
eslint-plugin-flowtype: 5.10.0(eslint@7.32.0)
eslint-plugin-import: 2.31.0(@typescript-eslint/parser@4.33.0(eslint@7.32.0)(typescript@5.2.2))(eslint@9.39.1(jiti@2.6.1))
eslint-plugin-import: 2.31.0(@typescript-eslint/parser@4.33.0(eslint@9.39.1(jiti@2.6.1))(typescript@5.2.2))(eslint@9.39.1(jiti@2.6.1))
eslint-plugin-jsx-a11y: 6.10.2(eslint@9.39.1(jiti@2.6.1))
eslint-plugin-react: 7.37.4(eslint@9.39.1(jiti@2.6.1))
eslint-plugin-react-hooks: 4.6.0(eslint@9.39.1(jiti@2.6.1))
@@ -22433,7 +22442,7 @@ snapshots:
transitivePeerDependencies:
- supports-color
eslint-module-utils@2.12.0(@typescript-eslint/parser@4.33.0(eslint@7.32.0)(typescript@5.2.2))(eslint-import-resolver-node@0.3.9)(eslint@9.39.1(jiti@2.6.1)):
eslint-module-utils@2.12.0(@typescript-eslint/parser@4.33.0(eslint@9.39.1(jiti@2.6.1))(typescript@5.2.2))(eslint-import-resolver-node@0.3.9)(eslint@9.39.1(jiti@2.6.1)):
dependencies:
debug: 3.2.7
optionalDependencies:
@@ -22487,7 +22496,7 @@ snapshots:
- typescript
- utf-8-validate
eslint-plugin-import@2.31.0(@typescript-eslint/parser@4.33.0(eslint@7.32.0)(typescript@5.2.2))(eslint@9.39.1(jiti@2.6.1)):
eslint-plugin-import@2.31.0(@typescript-eslint/parser@4.33.0(eslint@9.39.1(jiti@2.6.1))(typescript@5.2.2))(eslint@9.39.1(jiti@2.6.1)):
dependencies:
'@rtsao/scc': 1.1.0
array-includes: 3.1.8
@@ -22498,7 +22507,7 @@ snapshots:
doctrine: 2.1.0
eslint: 9.39.1(jiti@2.6.1)
eslint-import-resolver-node: 0.3.9
eslint-module-utils: 2.12.0(@typescript-eslint/parser@4.33.0(eslint@7.32.0)(typescript@5.2.2))(eslint-import-resolver-node@0.3.9)(eslint@9.39.1(jiti@2.6.1))
eslint-module-utils: 2.12.0(@typescript-eslint/parser@4.33.0(eslint@9.39.1(jiti@2.6.1))(typescript@5.2.2))(eslint-import-resolver-node@0.3.9)(eslint@9.39.1(jiti@2.6.1))
hasown: 2.0.2
is-core-module: 2.16.1
is-glob: 4.0.3
@@ -23684,7 +23693,7 @@ snapshots:
'@nodelib/fs.walk': 1.2.8
'@pmmmwh/react-refresh-webpack-plugin': 0.4.3(react-refresh@0.9.0)(webpack@5.90.3)
'@types/http-proxy': 1.17.12
'@typescript-eslint/eslint-plugin': 4.33.0(@typescript-eslint/parser@4.33.0(eslint@7.32.0)(typescript@5.2.2))(eslint@9.39.1(jiti@2.6.1))(typescript@5.2.2)
'@typescript-eslint/eslint-plugin': 4.33.0(@typescript-eslint/parser@4.33.0(eslint@9.39.1(jiti@2.6.1))(typescript@5.2.2))(eslint@9.39.1(jiti@2.6.1))(typescript@5.2.2)
'@typescript-eslint/parser': 4.33.0(eslint@9.39.1(jiti@2.6.1))(typescript@5.2.2)
'@vercel/webpack-asset-relocator-loader': 1.7.3
address: 1.1.2
@@ -23723,7 +23732,7 @@ snapshots:
eslint-config-react-app: 6.0.0(@typescript-eslint/eslint-plugin@4.33.0(@typescript-eslint/parser@4.33.0(eslint@7.32.0)(typescript@5.2.2))(eslint@7.32.0)(typescript@5.2.2))(@typescript-eslint/parser@4.33.0(eslint@7.32.0)(typescript@5.2.2))(babel-eslint@10.1.0(eslint@9.39.1(jiti@2.6.1)))(eslint-plugin-flowtype@5.10.0(eslint@7.32.0))(eslint-plugin-import@2.31.0(@typescript-eslint/parser@4.33.0(eslint@7.32.0)(typescript@5.2.2))(eslint@7.32.0))(eslint-plugin-jsx-a11y@6.10.2(eslint@7.32.0))(eslint-plugin-react-hooks@4.6.0(eslint@7.32.0))(eslint-plugin-react@7.37.4(eslint@7.32.0))(eslint@7.32.0)(typescript@5.2.2)
eslint-plugin-flowtype: 5.10.0(eslint@7.32.0)
eslint-plugin-graphql: 4.0.0(@types/node@20.12.8)(graphql@15.8.0)(typescript@5.2.2)
eslint-plugin-import: 2.31.0(@typescript-eslint/parser@4.33.0(eslint@7.32.0)(typescript@5.2.2))(eslint@9.39.1(jiti@2.6.1))
eslint-plugin-import: 2.31.0(@typescript-eslint/parser@4.33.0(eslint@9.39.1(jiti@2.6.1))(typescript@5.2.2))(eslint@9.39.1(jiti@2.6.1))
eslint-plugin-jsx-a11y: 6.10.2(eslint@9.39.1(jiti@2.6.1))
eslint-plugin-react: 7.37.4(eslint@9.39.1(jiti@2.6.1))
eslint-plugin-react-hooks: 4.6.0(eslint@9.39.1(jiti@2.6.1))
@@ -27634,10 +27643,10 @@ snapshots:
- supports-color
- utf-8-validate
puppeteer@22.12.1(typescript@5.7.3):
puppeteer@22.12.1(typescript@5.9.3):
dependencies:
'@puppeteer/browsers': 2.2.3
cosmiconfig: 9.0.0(typescript@5.7.3)
cosmiconfig: 9.0.0(typescript@5.9.3)
devtools-protocol: 0.0.1299070
puppeteer-core: 22.12.1
transitivePeerDependencies:
@@ -29849,8 +29858,7 @@ snapshots:
typescript@5.9.2: {}
typescript@5.9.3:
optional: true
typescript@5.9.3: {}
uc.micro@2.0.0: {}
@@ -30339,11 +30347,11 @@ snapshots:
- debug
- typescript
vitest@3.2.4(@types/debug@4.1.12)(@types/node@20.12.8)(@vitest/ui@3.2.4)(jiti@2.6.1)(jsdom@16.7.0)(msw@2.8.7(@types/node@20.12.8)(typescript@5.7.3))(terser@5.28.1)(tsx@4.19.1)(yaml@2.8.1):
vitest@3.2.4(@types/debug@4.1.12)(@types/node@20.12.8)(@vitest/ui@3.2.4)(jiti@2.6.1)(jsdom@16.7.0)(msw@2.8.7(@types/node@20.12.8)(typescript@5.9.3))(terser@5.28.1)(tsx@4.19.1)(yaml@2.8.1):
dependencies:
'@types/chai': 5.2.2
'@vitest/expect': 3.2.4
'@vitest/mocker': 3.2.4(msw@2.8.7(@types/node@20.12.8)(typescript@5.7.3))(vite@7.1.3(@types/node@20.12.8)(jiti@2.6.1)(terser@5.28.1)(tsx@4.19.1)(yaml@2.8.1))
'@vitest/mocker': 3.2.4(msw@2.8.7(@types/node@20.12.8)(typescript@5.9.3))(vite@7.1.3(@types/node@20.12.8)(jiti@2.6.1)(terser@5.28.1)(tsx@4.19.1)(yaml@2.8.1))
'@vitest/pretty-format': 3.2.4
'@vitest/runner': 3.2.4
'@vitest/snapshot': 3.2.4